@rocicorp/zero 0.2.2024101101 → 0.3.2024102500

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 (632) hide show
  1. package/out/react.js +91 -39
  2. package/out/react.js.map +2 -2
  3. package/out/replicache/src/async-iterable-to-array.js +8 -0
  4. package/out/replicache/src/async-iterable-to-array.js.map +1 -0
  5. package/out/replicache/src/bg-interval.js +38 -0
  6. package/out/replicache/src/bg-interval.js.map +1 -0
  7. package/out/replicache/src/binary-search.js +31 -0
  8. package/out/replicache/src/binary-search.js.map +1 -0
  9. package/out/replicache/src/broadcast-channel.js +29 -0
  10. package/out/replicache/src/broadcast-channel.js.map +1 -0
  11. package/out/replicache/src/btree/diff.js +6 -0
  12. package/out/replicache/src/btree/diff.js.map +1 -0
  13. package/out/replicache/src/btree/node.js +392 -0
  14. package/out/replicache/src/btree/node.js.map +1 -0
  15. package/out/replicache/src/btree/read.js +227 -0
  16. package/out/replicache/src/btree/read.js.map +1 -0
  17. package/out/replicache/src/btree/splice.js +79 -0
  18. package/out/replicache/src/btree/splice.js.map +1 -0
  19. package/out/replicache/src/btree/write.js +154 -0
  20. package/out/replicache/src/btree/write.js.map +1 -0
  21. package/out/replicache/src/call-default-fetch.js +37 -0
  22. package/out/replicache/src/call-default-fetch.js.map +1 -0
  23. package/out/replicache/src/config.js +13 -0
  24. package/out/replicache/src/config.js.map +1 -0
  25. package/out/replicache/src/connection-loop-delegates.js +30 -0
  26. package/out/replicache/src/connection-loop-delegates.js.map +1 -0
  27. package/out/replicache/src/connection-loop.js +268 -0
  28. package/out/replicache/src/connection-loop.js.map +1 -0
  29. package/out/replicache/src/cookies.js +41 -0
  30. package/out/replicache/src/cookies.js.map +1 -0
  31. package/out/replicache/src/dag/chunk.js +60 -0
  32. package/out/replicache/src/dag/chunk.js.map +1 -0
  33. package/out/replicache/src/dag/gc.js +126 -0
  34. package/out/replicache/src/dag/gc.js.map +1 -0
  35. package/out/replicache/src/dag/key-type-enum.js +6 -0
  36. package/out/replicache/src/dag/key-type-enum.js.map +1 -0
  37. package/out/replicache/src/dag/key.js +54 -0
  38. package/out/replicache/src/dag/key.js.map +1 -0
  39. package/out/replicache/src/dag/lazy-store.js +532 -0
  40. package/out/replicache/src/dag/lazy-store.js.map +1 -0
  41. package/out/replicache/src/dag/store-impl.js +175 -0
  42. package/out/replicache/src/dag/store-impl.js.map +1 -0
  43. package/out/replicache/src/dag/store.js +22 -0
  44. package/out/replicache/src/dag/store.js.map +1 -0
  45. package/out/replicache/src/dag/visitor.js +22 -0
  46. package/out/replicache/src/dag/visitor.js.map +1 -0
  47. package/out/replicache/src/db/commit.js +443 -0
  48. package/out/replicache/src/db/commit.js.map +1 -0
  49. package/out/replicache/src/db/index-operation-enum.js +4 -0
  50. package/out/replicache/src/db/index-operation-enum.js.map +1 -0
  51. package/out/replicache/src/db/index.js +170 -0
  52. package/out/replicache/src/db/index.js.map +1 -0
  53. package/out/replicache/src/db/meta-type-enum.js +7 -0
  54. package/out/replicache/src/db/meta-type-enum.js.map +1 -0
  55. package/out/replicache/src/db/read.js +59 -0
  56. package/out/replicache/src/db/read.js.map +1 -0
  57. package/out/replicache/src/db/rebase.js +56 -0
  58. package/out/replicache/src/db/rebase.js.map +1 -0
  59. package/out/replicache/src/db/scan.js +2 -0
  60. package/out/replicache/src/db/scan.js.map +1 -0
  61. package/out/replicache/src/db/write.js +260 -0
  62. package/out/replicache/src/db/write.js.map +1 -0
  63. package/out/replicache/src/error-responses.js +30 -0
  64. package/out/replicache/src/error-responses.js.map +1 -0
  65. package/out/replicache/src/filter-async-iterable.js +15 -0
  66. package/out/replicache/src/filter-async-iterable.js.map +1 -0
  67. package/out/replicache/src/format-version-enum.js +9 -0
  68. package/out/replicache/src/format-version-enum.js.map +1 -0
  69. package/out/replicache/src/format-version.js +8 -0
  70. package/out/replicache/src/format-version.js.map +1 -0
  71. package/out/replicache/src/frozen-json.js +151 -0
  72. package/out/replicache/src/frozen-json.js.map +1 -0
  73. package/out/replicache/src/get-default-puller.js +74 -0
  74. package/out/replicache/src/get-default-puller.js.map +1 -0
  75. package/out/replicache/src/get-default-pusher.js +36 -0
  76. package/out/replicache/src/get-default-pusher.js.map +1 -0
  77. package/out/replicache/src/hash.js +73 -0
  78. package/out/replicache/src/hash.js.map +1 -0
  79. package/out/replicache/src/http-request-info.js +7 -0
  80. package/out/replicache/src/http-request-info.js.map +1 -0
  81. package/out/replicache/src/impl.js +2 -0
  82. package/out/replicache/src/impl.js.map +1 -0
  83. package/out/replicache/src/index-defs.js +28 -0
  84. package/out/replicache/src/index-defs.js.map +1 -0
  85. package/out/replicache/src/invoke-kind-enum.js +4 -0
  86. package/out/replicache/src/invoke-kind-enum.js.map +1 -0
  87. package/out/replicache/src/iterable-union.js +5 -0
  88. package/out/replicache/src/iterable-union.js.map +1 -0
  89. package/out/replicache/src/kv/idb-store-with-mem-fallback.js +93 -0
  90. package/out/replicache/src/kv/idb-store-with-mem-fallback.js.map +1 -0
  91. package/out/replicache/src/kv/idb-store.js +179 -0
  92. package/out/replicache/src/kv/idb-store.js.map +1 -0
  93. package/out/replicache/src/kv/mem-store.js +61 -0
  94. package/out/replicache/src/kv/mem-store.js.map +1 -0
  95. package/out/replicache/src/kv/read-impl.js +23 -0
  96. package/out/replicache/src/kv/read-impl.js.map +1 -0
  97. package/out/replicache/src/kv/store.js +2 -0
  98. package/out/replicache/src/kv/store.js.map +1 -0
  99. package/out/replicache/src/kv/write-impl-base.js +48 -0
  100. package/out/replicache/src/kv/write-impl-base.js.map +1 -0
  101. package/out/replicache/src/kv/write-impl.js +25 -0
  102. package/out/replicache/src/kv/write-impl.js.map +1 -0
  103. package/out/replicache/src/lazy.js +10 -0
  104. package/out/replicache/src/lazy.js.map +1 -0
  105. package/out/replicache/src/log-options.js +13 -0
  106. package/out/replicache/src/log-options.js.map +1 -0
  107. package/out/replicache/src/merge-async-iterables.js +61 -0
  108. package/out/replicache/src/merge-async-iterables.js.map +1 -0
  109. package/out/replicache/src/mod.js +14 -0
  110. package/out/replicache/src/mod.js.map +1 -0
  111. package/out/replicache/src/mutation-recovery.js +439 -0
  112. package/out/replicache/src/mutation-recovery.js.map +1 -0
  113. package/out/replicache/src/new-client-channel.js +77 -0
  114. package/out/replicache/src/new-client-channel.js.map +1 -0
  115. package/out/replicache/src/on-persist-channel.js +33 -0
  116. package/out/replicache/src/on-persist-channel.js.map +1 -0
  117. package/out/replicache/src/patch-operation.js +37 -0
  118. package/out/replicache/src/patch-operation.js.map +1 -0
  119. package/out/replicache/src/pending-mutations.js +18 -0
  120. package/out/replicache/src/pending-mutations.js.map +1 -0
  121. package/out/replicache/src/persist/client-gc.js +38 -0
  122. package/out/replicache/src/persist/client-gc.js.map +1 -0
  123. package/out/replicache/src/persist/client-group-gc.js +38 -0
  124. package/out/replicache/src/persist/client-group-gc.js.map +1 -0
  125. package/out/replicache/src/persist/client-groups.js +180 -0
  126. package/out/replicache/src/persist/client-groups.js.map +1 -0
  127. package/out/replicache/src/persist/clients.js +390 -0
  128. package/out/replicache/src/persist/clients.js.map +1 -0
  129. package/out/replicache/src/persist/collect-idb-databases.js +174 -0
  130. package/out/replicache/src/persist/collect-idb-databases.js.map +1 -0
  131. package/out/replicache/src/persist/gather-mem-only-visitor.js +25 -0
  132. package/out/replicache/src/persist/gather-mem-only-visitor.js.map +1 -0
  133. package/out/replicache/src/persist/gather-not-cached-visitor.js +35 -0
  134. package/out/replicache/src/persist/gather-not-cached-visitor.js.map +1 -0
  135. package/out/replicache/src/persist/heartbeat.js +37 -0
  136. package/out/replicache/src/persist/heartbeat.js.map +1 -0
  137. package/out/replicache/src/persist/idb-databases-store-db-name.js +18 -0
  138. package/out/replicache/src/persist/idb-databases-store-db-name.js.map +1 -0
  139. package/out/replicache/src/persist/idb-databases-store.js +90 -0
  140. package/out/replicache/src/persist/idb-databases-store.js.map +1 -0
  141. package/out/replicache/src/persist/make-client-id.js +13 -0
  142. package/out/replicache/src/persist/make-client-id.js.map +1 -0
  143. package/out/replicache/src/persist/persist.js +132 -0
  144. package/out/replicache/src/persist/persist.js.map +1 -0
  145. package/out/replicache/src/persist/refresh.js +147 -0
  146. package/out/replicache/src/persist/refresh.js.map +1 -0
  147. package/out/replicache/src/process-scheduler.js +93 -0
  148. package/out/replicache/src/process-scheduler.js.map +1 -0
  149. package/out/replicache/src/puller.js +2 -0
  150. package/out/replicache/src/puller.js.map +1 -0
  151. package/out/replicache/src/pusher.js +32 -0
  152. package/out/replicache/src/pusher.js.map +1 -0
  153. package/out/replicache/src/replicache-impl.js +1007 -0
  154. package/out/replicache/src/replicache-impl.js.map +1 -0
  155. package/out/replicache/src/replicache-options.js +2 -0
  156. package/out/replicache/src/replicache-options.js.map +1 -0
  157. package/out/replicache/src/replicache.js +387 -0
  158. package/out/replicache/src/replicache.js.map +1 -0
  159. package/out/replicache/src/request-idle.js +15 -0
  160. package/out/replicache/src/request-idle.js.map +1 -0
  161. package/out/replicache/src/scan-iterator.js +202 -0
  162. package/out/replicache/src/scan-iterator.js.map +1 -0
  163. package/out/replicache/src/scan-options.js +45 -0
  164. package/out/replicache/src/scan-options.js.map +1 -0
  165. package/out/replicache/src/set-interval-with-signal.js +7 -0
  166. package/out/replicache/src/set-interval-with-signal.js.map +1 -0
  167. package/out/replicache/src/size-of-value.js +77 -0
  168. package/out/replicache/src/size-of-value.js.map +1 -0
  169. package/out/replicache/src/subscriptions.js +357 -0
  170. package/out/replicache/src/subscriptions.js.map +1 -0
  171. package/out/replicache/src/sync/diff.js +75 -0
  172. package/out/replicache/src/sync/diff.js.map +1 -0
  173. package/out/replicache/src/sync/handle-pull-response-result-type-enum.js +5 -0
  174. package/out/replicache/src/sync/handle-pull-response-result-type-enum.js.map +1 -0
  175. package/out/replicache/src/sync/ids.js +4 -0
  176. package/out/replicache/src/sync/ids.js.map +1 -0
  177. package/out/replicache/src/sync/patch.js +41 -0
  178. package/out/replicache/src/sync/patch.js.map +1 -0
  179. package/out/replicache/src/sync/pull-error.js +16 -0
  180. package/out/replicache/src/sync/pull-error.js.map +1 -0
  181. package/out/replicache/src/sync/pull.js +375 -0
  182. package/out/replicache/src/sync/pull.js.map +1 -0
  183. package/out/replicache/src/sync/push.js +141 -0
  184. package/out/replicache/src/sync/push.js.map +1 -0
  185. package/out/replicache/src/sync/request-id.js +31 -0
  186. package/out/replicache/src/sync/request-id.js.map +1 -0
  187. package/out/replicache/src/sync/sync-head-name.js +2 -0
  188. package/out/replicache/src/sync/sync-head-name.js.map +1 -0
  189. package/out/replicache/src/test-license-key.js +3 -0
  190. package/out/replicache/src/test-license-key.js.map +1 -0
  191. package/out/replicache/src/to-error.js +7 -0
  192. package/out/replicache/src/to-error.js.map +1 -0
  193. package/out/replicache/src/transaction-closed-error.js +17 -0
  194. package/out/replicache/src/transaction-closed-error.js.map +1 -0
  195. package/out/replicache/src/transactions.js +144 -0
  196. package/out/replicache/src/transactions.js.map +1 -0
  197. package/out/replicache/src/types.js +2 -0
  198. package/out/replicache/src/types.js.map +1 -0
  199. package/out/replicache/src/version.js +5 -0
  200. package/out/replicache/src/version.js.map +1 -0
  201. package/out/replicache/src/with-transactions.js +28 -0
  202. package/out/replicache/src/with-transactions.js.map +1 -0
  203. package/out/shared/src/browser-env.js +14 -0
  204. package/out/shared/src/browser-env.js.map +1 -0
  205. package/out/shared/src/document-visible.js +76 -0
  206. package/out/shared/src/document-visible.js.map +1 -0
  207. package/out/shared/src/immutable.js +2 -0
  208. package/out/shared/src/immutable.js.map +1 -0
  209. package/out/shared/src/iterables.d.ts +2 -2
  210. package/out/shared/src/iterables.d.ts.map +1 -1
  211. package/out/shared/src/iterables.js +40 -0
  212. package/out/shared/src/iterables.js.map +1 -0
  213. package/out/shared/src/navigator.js +3 -0
  214. package/out/shared/src/navigator.js.map +1 -0
  215. package/out/shared/src/random-uint64.js +8 -0
  216. package/out/shared/src/random-uint64.js.map +1 -0
  217. package/out/shared/src/random-values.d.ts +1 -0
  218. package/out/shared/src/random-values.d.ts.map +1 -1
  219. package/out/shared/src/random-values.js +22 -0
  220. package/out/shared/src/random-values.js.map +1 -0
  221. package/out/shared/src/set-utils.d.ts +1 -1
  222. package/out/shared/src/set-utils.d.ts.map +1 -1
  223. package/out/shared/src/set-utils.js +6 -4
  224. package/out/shared/src/set-utils.js.map +1 -1
  225. package/out/shared/src/sorted-entries.d.ts +2 -0
  226. package/out/shared/src/sorted-entries.d.ts.map +1 -0
  227. package/out/shared/src/sorted-entries.js +6 -0
  228. package/out/shared/src/sorted-entries.js.map +1 -0
  229. package/out/shared/src/types.js +2 -0
  230. package/out/shared/src/types.js.map +1 -0
  231. package/out/shared/src/valita.d.ts +1 -1
  232. package/out/shared/src/valita.d.ts.map +1 -1
  233. package/out/shared/src/valita.js.map +1 -1
  234. package/out/shared/src/writable.d.ts +4 -0
  235. package/out/shared/src/writable.d.ts.map +1 -0
  236. package/out/shared/src/writable.js +2 -0
  237. package/out/shared/src/writable.js.map +1 -0
  238. package/out/zero/src/config.d.ts +2 -0
  239. package/out/zero/src/config.d.ts.map +1 -0
  240. package/out/zero/src/config.js +2 -0
  241. package/out/zero/src/config.js.map +1 -0
  242. package/out/zero-cache/src/config/config-query.d.ts +18 -0
  243. package/out/zero-cache/src/config/config-query.d.ts.map +1 -0
  244. package/out/zero-cache/src/config/config-query.js +19 -0
  245. package/out/zero-cache/src/config/config-query.js.map +1 -0
  246. package/out/zero-cache/src/config/define-config.d.ts +43 -0
  247. package/out/zero-cache/src/config/define-config.d.ts.map +1 -0
  248. package/out/zero-cache/src/config/define-config.js +120 -0
  249. package/out/zero-cache/src/config/define-config.js.map +1 -0
  250. package/out/zero-cache/src/config/refs.d.ts +3 -0
  251. package/out/zero-cache/src/config/refs.d.ts.map +1 -0
  252. package/out/zero-cache/src/config/refs.js +14 -0
  253. package/out/zero-cache/src/config/refs.js.map +1 -0
  254. package/out/zero-cache/src/config/zero-config.d.ts +126 -686
  255. package/out/zero-cache/src/config/zero-config.d.ts.map +1 -1
  256. package/out/zero-cache/src/config/zero-config.js +43 -161
  257. package/out/zero-cache/src/config/zero-config.js.map +1 -1
  258. package/out/zero-cache/src/db/create.d.ts +8 -0
  259. package/out/zero-cache/src/db/create.d.ts.map +1 -0
  260. package/out/zero-cache/src/db/create.js +39 -0
  261. package/out/zero-cache/src/db/create.js.map +1 -0
  262. package/out/zero-cache/src/db/lite-tables.d.ts +3 -3
  263. package/out/zero-cache/src/db/lite-tables.d.ts.map +1 -1
  264. package/out/zero-cache/src/db/lite-tables.js +29 -20
  265. package/out/zero-cache/src/db/lite-tables.js.map +1 -1
  266. package/out/zero-cache/src/db/migration-lite.d.ts +60 -20
  267. package/out/zero-cache/src/db/migration-lite.d.ts.map +1 -1
  268. package/out/zero-cache/src/db/migration-lite.js +89 -69
  269. package/out/zero-cache/src/db/migration-lite.js.map +1 -1
  270. package/out/zero-cache/src/db/migration.d.ts +61 -20
  271. package/out/zero-cache/src/db/migration.d.ts.map +1 -1
  272. package/out/zero-cache/src/db/migration.js +92 -75
  273. package/out/zero-cache/src/db/migration.js.map +1 -1
  274. package/out/zero-cache/src/db/pg-to-lite.d.ts +11 -0
  275. package/out/zero-cache/src/db/pg-to-lite.d.ts.map +1 -0
  276. package/out/zero-cache/src/{services/change-streamer/pg/schema/lite.js → db/pg-to-lite.js} +27 -15
  277. package/out/zero-cache/src/db/pg-to-lite.js.map +1 -0
  278. package/out/zero-cache/src/db/specs.d.ts +73 -0
  279. package/out/zero-cache/src/db/specs.d.ts.map +1 -0
  280. package/out/zero-cache/src/db/specs.js +30 -0
  281. package/out/zero-cache/src/db/specs.js.map +1 -0
  282. package/out/zero-cache/src/db/statements.d.ts +1 -1
  283. package/out/zero-cache/src/db/statements.d.ts.map +1 -1
  284. package/out/zero-cache/src/server/life-cycle.d.ts.map +1 -1
  285. package/out/zero-cache/src/server/life-cycle.js +9 -5
  286. package/out/zero-cache/src/server/life-cycle.js.map +1 -1
  287. package/out/zero-cache/src/server/main.js +3 -3
  288. package/out/zero-cache/src/server/main.js.map +1 -1
  289. package/out/zero-cache/src/server/syncer.d.ts.map +1 -1
  290. package/out/zero-cache/src/server/syncer.js +2 -1
  291. package/out/zero-cache/src/server/syncer.js.map +1 -1
  292. package/out/zero-cache/src/services/change-streamer/change-streamer-http.d.ts +1 -1
  293. package/out/zero-cache/src/services/change-streamer/change-streamer-http.d.ts.map +1 -1
  294. package/out/zero-cache/src/services/change-streamer/change-streamer-http.js +1 -4
  295. package/out/zero-cache/src/services/change-streamer/change-streamer-http.js.map +1 -1
  296. package/out/zero-cache/src/services/change-streamer/change-streamer.d.ts +455 -13
  297. package/out/zero-cache/src/services/change-streamer/change-streamer.d.ts.map +1 -1
  298. package/out/zero-cache/src/services/change-streamer/change-streamer.js +16 -0
  299. package/out/zero-cache/src/services/change-streamer/change-streamer.js.map +1 -1
  300. package/out/zero-cache/src/services/change-streamer/pg/change-source.d.ts.map +1 -1
  301. package/out/zero-cache/src/services/change-streamer/pg/change-source.js +313 -88
  302. package/out/zero-cache/src/services/change-streamer/pg/change-source.js.map +1 -1
  303. package/out/zero-cache/src/services/change-streamer/pg/initial-sync.d.ts.map +1 -1
  304. package/out/zero-cache/src/services/change-streamer/pg/initial-sync.js +13 -54
  305. package/out/zero-cache/src/services/change-streamer/pg/initial-sync.js.map +1 -1
  306. package/out/zero-cache/src/services/change-streamer/pg/schema/ddl.d.ts +239 -59
  307. package/out/zero-cache/src/services/change-streamer/pg/schema/ddl.d.ts.map +1 -1
  308. package/out/zero-cache/src/services/change-streamer/pg/schema/ddl.js +291 -183
  309. package/out/zero-cache/src/services/change-streamer/pg/schema/ddl.js.map +1 -1
  310. package/out/zero-cache/src/services/change-streamer/pg/schema/init.d.ts +5 -0
  311. package/out/zero-cache/src/services/change-streamer/pg/schema/init.d.ts.map +1 -0
  312. package/out/zero-cache/src/services/change-streamer/pg/schema/init.js +18 -0
  313. package/out/zero-cache/src/services/change-streamer/pg/schema/init.js.map +1 -0
  314. package/out/zero-cache/src/services/change-streamer/pg/schema/published.d.ts +4 -4
  315. package/out/zero-cache/src/services/change-streamer/pg/schema/published.d.ts.map +1 -1
  316. package/out/zero-cache/src/services/change-streamer/pg/schema/published.js +14 -19
  317. package/out/zero-cache/src/services/change-streamer/pg/schema/published.js.map +1 -1
  318. package/out/zero-cache/src/services/change-streamer/pg/schema/shard.d.ts +17 -0
  319. package/out/zero-cache/src/services/change-streamer/pg/schema/shard.d.ts.map +1 -0
  320. package/out/zero-cache/src/services/change-streamer/pg/schema/shard.js +150 -0
  321. package/out/zero-cache/src/services/change-streamer/pg/schema/shard.js.map +1 -0
  322. package/out/zero-cache/src/services/change-streamer/pg/sync-schema.d.ts.map +1 -1
  323. package/out/zero-cache/src/services/change-streamer/pg/sync-schema.js +11 -5
  324. package/out/zero-cache/src/services/change-streamer/pg/sync-schema.js.map +1 -1
  325. package/out/zero-cache/src/services/change-streamer/schema/change.d.ts +325 -26
  326. package/out/zero-cache/src/services/change-streamer/schema/change.d.ts.map +1 -1
  327. package/out/zero-cache/src/services/change-streamer/schema/change.js +84 -1
  328. package/out/zero-cache/src/services/change-streamer/schema/change.js.map +1 -1
  329. package/out/zero-cache/src/services/change-streamer/schema/init.d.ts +2 -2
  330. package/out/zero-cache/src/services/change-streamer/schema/init.d.ts.map +1 -1
  331. package/out/zero-cache/src/services/change-streamer/schema/init.js +13 -5
  332. package/out/zero-cache/src/services/change-streamer/schema/init.js.map +1 -1
  333. package/out/zero-cache/src/services/change-streamer/schema/tables.js +6 -6
  334. package/out/zero-cache/src/services/change-streamer/storer.js +4 -4
  335. package/out/zero-cache/src/services/dispatcher/connect-params.d.ts +1 -0
  336. package/out/zero-cache/src/services/dispatcher/connect-params.d.ts.map +1 -1
  337. package/out/zero-cache/src/services/dispatcher/connect-params.js +5 -2
  338. package/out/zero-cache/src/services/dispatcher/connect-params.js.map +1 -1
  339. package/out/zero-cache/src/services/mutagen/mutagen.d.ts.map +1 -1
  340. package/out/zero-cache/src/services/mutagen/mutagen.js +21 -22
  341. package/out/zero-cache/src/services/mutagen/mutagen.js.map +1 -1
  342. package/out/zero-cache/src/services/mutagen/write-authorizer.d.ts.map +1 -1
  343. package/out/zero-cache/src/services/mutagen/write-authorizer.js +18 -9
  344. package/out/zero-cache/src/services/mutagen/write-authorizer.js.map +1 -1
  345. package/out/zero-cache/src/services/replicator/incremental-sync.d.ts.map +1 -1
  346. package/out/zero-cache/src/services/replicator/incremental-sync.js +131 -16
  347. package/out/zero-cache/src/services/replicator/incremental-sync.js.map +1 -1
  348. package/out/zero-cache/src/services/replicator/schema/change-log.d.ts +20 -3
  349. package/out/zero-cache/src/services/replicator/schema/change-log.d.ts.map +1 -1
  350. package/out/zero-cache/src/services/replicator/schema/change-log.js +46 -14
  351. package/out/zero-cache/src/services/replicator/schema/change-log.js.map +1 -1
  352. package/out/zero-cache/src/services/replicator/schema/replication-state.d.ts +1 -1
  353. package/out/zero-cache/src/services/replicator/schema/replication-state.d.ts.map +1 -1
  354. package/out/zero-cache/src/services/replicator/schema/replication-state.js +9 -9
  355. package/out/zero-cache/src/services/replicator/schema/replication-state.js.map +1 -1
  356. package/out/zero-cache/src/services/view-syncer/client-handler.d.ts +4 -3
  357. package/out/zero-cache/src/services/view-syncer/client-handler.d.ts.map +1 -1
  358. package/out/zero-cache/src/services/view-syncer/client-handler.js +27 -21
  359. package/out/zero-cache/src/services/view-syncer/client-handler.js.map +1 -1
  360. package/out/zero-cache/src/services/view-syncer/cvr-store.d.ts +6 -4
  361. package/out/zero-cache/src/services/view-syncer/cvr-store.d.ts.map +1 -1
  362. package/out/zero-cache/src/services/view-syncer/cvr-store.js +63 -18
  363. package/out/zero-cache/src/services/view-syncer/cvr-store.js.map +1 -1
  364. package/out/zero-cache/src/services/view-syncer/cvr.d.ts +11 -8
  365. package/out/zero-cache/src/services/view-syncer/cvr.d.ts.map +1 -1
  366. package/out/zero-cache/src/services/view-syncer/cvr.js +22 -13
  367. package/out/zero-cache/src/services/view-syncer/cvr.js.map +1 -1
  368. package/out/zero-cache/src/services/view-syncer/database-storage.js +1 -1
  369. package/out/zero-cache/src/services/view-syncer/database-storage.js.map +1 -1
  370. package/out/zero-cache/src/services/view-syncer/drain-coordinator.d.ts +31 -0
  371. package/out/zero-cache/src/services/view-syncer/drain-coordinator.d.ts.map +1 -0
  372. package/out/zero-cache/src/services/view-syncer/drain-coordinator.js +53 -0
  373. package/out/zero-cache/src/services/view-syncer/drain-coordinator.js.map +1 -0
  374. package/out/zero-cache/src/services/view-syncer/pipeline-driver.d.ts +13 -5
  375. package/out/zero-cache/src/services/view-syncer/pipeline-driver.d.ts.map +1 -1
  376. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js +27 -0
  377. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js.map +1 -1
  378. package/out/zero-cache/src/services/view-syncer/schema/cvr.d.ts +2 -1
  379. package/out/zero-cache/src/services/view-syncer/schema/cvr.d.ts.map +1 -1
  380. package/out/zero-cache/src/services/view-syncer/schema/cvr.js +5 -4
  381. package/out/zero-cache/src/services/view-syncer/schema/cvr.js.map +1 -1
  382. package/out/zero-cache/src/services/view-syncer/schema/init.d.ts +4 -0
  383. package/out/zero-cache/src/services/view-syncer/schema/init.d.ts.map +1 -0
  384. package/out/zero-cache/src/services/view-syncer/schema/init.js +16 -0
  385. package/out/zero-cache/src/services/view-syncer/schema/init.js.map +1 -0
  386. package/out/zero-cache/src/services/view-syncer/schema/types.d.ts +8 -216
  387. package/out/zero-cache/src/services/view-syncer/schema/types.d.ts.map +1 -1
  388. package/out/zero-cache/src/services/view-syncer/schema/types.js +2 -4
  389. package/out/zero-cache/src/services/view-syncer/schema/types.js.map +1 -1
  390. package/out/zero-cache/src/services/view-syncer/snapshotter.d.ts +12 -4
  391. package/out/zero-cache/src/services/view-syncer/snapshotter.d.ts.map +1 -1
  392. package/out/zero-cache/src/services/view-syncer/snapshotter.js +59 -49
  393. package/out/zero-cache/src/services/view-syncer/snapshotter.js.map +1 -1
  394. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts +3 -4
  395. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts.map +1 -1
  396. package/out/zero-cache/src/services/view-syncer/view-syncer.js +105 -44
  397. package/out/zero-cache/src/services/view-syncer/view-syncer.js.map +1 -1
  398. package/out/zero-cache/src/types/lite.d.ts.map +1 -1
  399. package/out/zero-cache/src/types/lite.js +8 -9
  400. package/out/zero-cache/src/types/lite.js.map +1 -1
  401. package/out/zero-cache/src/types/pg.d.ts +10 -4
  402. package/out/zero-cache/src/types/pg.d.ts.map +1 -1
  403. package/out/zero-cache/src/types/pg.js +37 -15
  404. package/out/zero-cache/src/types/pg.js.map +1 -1
  405. package/out/zero-cache/src/workers/connection.d.ts +4 -2
  406. package/out/zero-cache/src/workers/connection.d.ts.map +1 -1
  407. package/out/zero-cache/src/workers/connection.js +21 -2
  408. package/out/zero-cache/src/workers/connection.js.map +1 -1
  409. package/out/zero-cache/src/workers/syncer.d.ts +2 -1
  410. package/out/zero-cache/src/workers/syncer.d.ts.map +1 -1
  411. package/out/zero-cache/src/workers/syncer.js +20 -9
  412. package/out/zero-cache/src/workers/syncer.js.map +1 -1
  413. package/out/zero-client/src/client/context.d.ts +1 -1
  414. package/out/zero-client/src/client/context.d.ts.map +1 -1
  415. package/out/zero-client/src/client/context.js +99 -0
  416. package/out/zero-client/src/client/context.js.map +1 -0
  417. package/out/zero-client/src/client/crud.d.ts +8 -10
  418. package/out/zero-client/src/client/crud.d.ts.map +1 -1
  419. package/out/zero-client/src/client/crud.js +181 -0
  420. package/out/zero-client/src/client/crud.js.map +1 -0
  421. package/out/zero-client/src/client/enable-analytics.js +21 -0
  422. package/out/zero-client/src/client/enable-analytics.js.map +1 -0
  423. package/out/zero-client/src/client/http-string.js +14 -0
  424. package/out/zero-client/src/client/http-string.js.map +1 -0
  425. package/out/zero-client/src/client/keys.d.ts +3 -2
  426. package/out/zero-client/src/client/keys.d.ts.map +1 -1
  427. package/out/zero-client/src/client/keys.js +32 -0
  428. package/out/zero-client/src/client/keys.js.map +1 -0
  429. package/out/zero-client/src/client/log-options.js +57 -0
  430. package/out/zero-client/src/client/log-options.js.map +1 -0
  431. package/out/zero-client/src/client/metrics.js +268 -0
  432. package/out/zero-client/src/client/metrics.js.map +1 -0
  433. package/out/zero-client/src/client/normalized-schema.d.ts +17 -0
  434. package/out/zero-client/src/client/normalized-schema.d.ts.map +1 -0
  435. package/out/zero-client/src/client/normalized-schema.js +31 -0
  436. package/out/zero-client/src/client/normalized-schema.js.map +1 -0
  437. package/out/zero-client/src/client/options.js +2 -0
  438. package/out/zero-client/src/client/options.js.map +1 -0
  439. package/out/zero-client/src/client/query-manager.d.ts +18 -3
  440. package/out/zero-client/src/client/query-manager.d.ts.map +1 -1
  441. package/out/zero-client/src/client/query-manager.js +149 -0
  442. package/out/zero-client/src/client/query-manager.js.map +1 -0
  443. package/out/zero-client/src/client/reload-error-handler.js +23 -0
  444. package/out/zero-client/src/client/reload-error-handler.js.map +1 -0
  445. package/out/zero-client/src/client/replicache-types.js +2 -0
  446. package/out/zero-client/src/client/replicache-types.js.map +1 -0
  447. package/out/zero-client/src/client/server-error.js +22 -0
  448. package/out/zero-client/src/client/server-error.js.map +1 -0
  449. package/out/zero-client/src/client/server-option.js +37 -0
  450. package/out/zero-client/src/client/server-option.js.map +1 -0
  451. package/out/zero-client/src/client/version.js +5 -0
  452. package/out/zero-client/src/client/version.js.map +1 -0
  453. package/out/zero-client/src/client/zero-poke-handler.d.ts +3 -3
  454. package/out/zero-client/src/client/zero-poke-handler.d.ts.map +1 -1
  455. package/out/zero-client/src/client/zero-poke-handler.js +240 -0
  456. package/out/zero-client/src/client/zero-poke-handler.js.map +1 -0
  457. package/out/zero-client/src/client/zero.d.ts +3 -2
  458. package/out/zero-client/src/client/zero.d.ts.map +1 -1
  459. package/out/zero-client/src/client/zero.js +1212 -0
  460. package/out/zero-client/src/client/zero.js.map +1 -0
  461. package/out/zero-client/src/mod.d.ts +1 -0
  462. package/out/zero-client/src/mod.d.ts.map +1 -1
  463. package/out/zero-client/src/mod.js +5 -0
  464. package/out/zero-client/src/mod.js.map +1 -0
  465. package/out/zero-client/src/util/nanoid.js +34 -0
  466. package/out/zero-client/src/util/nanoid.js.map +1 -0
  467. package/out/zero-client/src/util/socket.js +4 -0
  468. package/out/zero-client/src/util/socket.js.map +1 -0
  469. package/out/zero-protocol/src/ast.d.ts +87 -1
  470. package/out/zero-protocol/src/ast.d.ts.map +1 -1
  471. package/out/zero-protocol/src/ast.js +53 -0
  472. package/out/zero-protocol/src/ast.js.map +1 -1
  473. package/out/zero-protocol/src/change-desired-queries.d.ts +6 -6
  474. package/out/zero-protocol/src/change-desired-queries.d.ts.map +1 -1
  475. package/out/zero-protocol/src/clients-patch.d.ts +1 -1
  476. package/out/zero-protocol/src/connect.d.ts +15 -8
  477. package/out/zero-protocol/src/connect.d.ts.map +1 -1
  478. package/out/zero-protocol/src/connect.js +21 -0
  479. package/out/zero-protocol/src/connect.js.map +1 -1
  480. package/out/zero-protocol/src/data.d.ts +36 -0
  481. package/out/zero-protocol/src/data.d.ts.map +1 -0
  482. package/out/zero-protocol/src/data.js +4 -0
  483. package/out/zero-protocol/src/data.js.map +1 -0
  484. package/out/zero-protocol/src/delete-clients.d.ts +4 -4
  485. package/out/zero-protocol/src/delete-clients.d.ts.map +1 -1
  486. package/out/zero-protocol/src/down.d.ts +18 -16
  487. package/out/zero-protocol/src/down.d.ts.map +1 -1
  488. package/out/zero-protocol/src/down.js +2 -1
  489. package/out/zero-protocol/src/down.js.map +1 -1
  490. package/out/zero-protocol/src/mod.d.ts +1 -2
  491. package/out/zero-protocol/src/mod.d.ts.map +1 -1
  492. package/out/zero-protocol/src/mod.js +2 -2
  493. package/out/zero-protocol/src/mod.js.map +1 -1
  494. package/out/zero-protocol/src/ping.d.ts +1 -1
  495. package/out/zero-protocol/src/ping.d.ts.map +1 -1
  496. package/out/zero-protocol/src/poke.d.ts +26 -26
  497. package/out/zero-protocol/src/poke.d.ts.map +1 -1
  498. package/out/zero-protocol/src/poke.js +8 -5
  499. package/out/zero-protocol/src/poke.js.map +1 -1
  500. package/out/zero-protocol/src/pong.d.ts +1 -1
  501. package/out/zero-protocol/src/pong.d.ts.map +1 -1
  502. package/out/zero-protocol/src/primary-key.d.ts +2 -3
  503. package/out/zero-protocol/src/primary-key.d.ts.map +1 -1
  504. package/out/zero-protocol/src/primary-key.js +1 -3
  505. package/out/zero-protocol/src/primary-key.js.map +1 -1
  506. package/out/zero-protocol/src/pull.d.ts +4 -4
  507. package/out/zero-protocol/src/pull.d.ts.map +1 -1
  508. package/out/zero-protocol/src/push.d.ts +105 -98
  509. package/out/zero-protocol/src/push.d.ts.map +1 -1
  510. package/out/zero-protocol/src/push.js +17 -13
  511. package/out/zero-protocol/src/push.js.map +1 -1
  512. package/out/zero-protocol/src/queries-patch.d.ts +4 -4
  513. package/out/zero-protocol/src/row-patch.d.ts +38 -0
  514. package/out/zero-protocol/src/row-patch.d.ts.map +1 -0
  515. package/out/zero-protocol/src/{entities-patch.js → row-patch.js} +10 -11
  516. package/out/zero-protocol/src/row-patch.js.map +1 -0
  517. package/out/zero-protocol/src/up.d.ts +28 -27
  518. package/out/zero-protocol/src/up.d.ts.map +1 -1
  519. package/out/zero-protocol/src/warm.d.ts +10 -0
  520. package/out/zero-protocol/src/warm.d.ts.map +1 -0
  521. package/out/zero-protocol/src/warm.js +6 -0
  522. package/out/zero-protocol/src/warm.js.map +1 -0
  523. package/out/zero-react/src/use-query.d.ts.map +1 -1
  524. package/out/zero.js +522 -217
  525. package/out/zero.js.map +4 -4
  526. package/out/zql/src/zql/builder/builder.d.ts +3 -4
  527. package/out/zql/src/zql/builder/builder.d.ts.map +1 -1
  528. package/out/zql/src/zql/builder/builder.js +1 -2
  529. package/out/zql/src/zql/builder/builder.js.map +1 -1
  530. package/out/zql/src/zql/builder/filter.d.ts +2 -2
  531. package/out/zql/src/zql/builder/filter.d.ts.map +1 -1
  532. package/out/zql/src/zql/builder/filter.js.map +1 -1
  533. package/out/zql/src/zql/ivm/array-view.d.ts +5 -12
  534. package/out/zql/src/zql/ivm/array-view.d.ts.map +1 -1
  535. package/out/zql/src/zql/ivm/array-view.js +226 -0
  536. package/out/zql/src/zql/ivm/array-view.js.map +1 -0
  537. package/out/zql/src/zql/ivm/change.d.ts +2 -1
  538. package/out/zql/src/zql/ivm/change.d.ts.map +1 -1
  539. package/out/zql/src/zql/ivm/data.d.ts +2 -33
  540. package/out/zql/src/zql/ivm/data.d.ts.map +1 -1
  541. package/out/zql/src/zql/ivm/data.js.map +1 -1
  542. package/out/zql/src/zql/ivm/filter.d.ts +2 -1
  543. package/out/zql/src/zql/ivm/filter.d.ts.map +1 -1
  544. package/out/zql/src/zql/ivm/filter.js.map +1 -1
  545. package/out/zql/src/zql/ivm/join.d.ts +1 -1
  546. package/out/zql/src/zql/ivm/join.d.ts.map +1 -1
  547. package/out/zql/src/zql/ivm/join.js +68 -24
  548. package/out/zql/src/zql/ivm/join.js.map +1 -1
  549. package/out/zql/src/zql/ivm/maybe-split-and-push-edit-change.d.ts +1 -1
  550. package/out/zql/src/zql/ivm/maybe-split-and-push-edit-change.d.ts.map +1 -1
  551. package/out/zql/src/zql/ivm/memory-source.d.ts +8 -6
  552. package/out/zql/src/zql/ivm/memory-source.d.ts.map +1 -1
  553. package/out/zql/src/zql/ivm/memory-source.js +2 -0
  554. package/out/zql/src/zql/ivm/memory-source.js.map +1 -1
  555. package/out/zql/src/zql/ivm/memory-storage.js +33 -0
  556. package/out/zql/src/zql/ivm/memory-storage.js.map +1 -0
  557. package/out/zql/src/zql/ivm/operator.d.ts +2 -1
  558. package/out/zql/src/zql/ivm/operator.d.ts.map +1 -1
  559. package/out/zql/src/zql/ivm/schema.d.ts +3 -3
  560. package/out/zql/src/zql/ivm/schema.d.ts.map +1 -1
  561. package/out/zql/src/zql/ivm/schema.js.map +1 -1
  562. package/out/zql/src/zql/ivm/skip.d.ts +2 -1
  563. package/out/zql/src/zql/ivm/skip.d.ts.map +1 -1
  564. package/out/zql/src/zql/ivm/skip.js.map +1 -1
  565. package/out/zql/src/zql/ivm/source.d.ts +2 -2
  566. package/out/zql/src/zql/ivm/source.d.ts.map +1 -1
  567. package/out/zql/src/zql/ivm/take.d.ts.map +1 -1
  568. package/out/zql/src/zql/ivm/take.js.map +1 -1
  569. package/out/zql/src/zql/query/like.d.ts +2 -0
  570. package/out/zql/src/zql/query/like.d.ts.map +1 -0
  571. package/out/zql/src/zql/query/like.js +18 -0
  572. package/out/zql/src/zql/query/like.js.map +1 -0
  573. package/out/zql/src/zql/query/normalize-table-schema.d.ts +48 -0
  574. package/out/zql/src/zql/query/normalize-table-schema.d.ts.map +1 -0
  575. package/out/zql/src/zql/query/normalize-table-schema.js +116 -0
  576. package/out/zql/src/zql/query/normalize-table-schema.js.map +1 -0
  577. package/out/zql/src/zql/query/query-impl.d.ts +6 -5
  578. package/out/zql/src/zql/query/query-impl.d.ts.map +1 -1
  579. package/out/zql/src/zql/query/query-impl.js +263 -0
  580. package/out/zql/src/zql/query/query-impl.js.map +1 -0
  581. package/out/zql/src/zql/query/query.d.ts +1 -1
  582. package/out/zql/src/zql/query/query.d.ts.map +1 -1
  583. package/out/zql/src/zql/query/query.js +3 -0
  584. package/out/zql/src/zql/query/query.js.map +1 -0
  585. package/out/zql/src/zql/query/schema.d.ts +13 -4
  586. package/out/zql/src/zql/query/schema.d.ts.map +1 -1
  587. package/out/zql/src/zql/query/schema.js +7 -0
  588. package/out/zql/src/zql/query/schema.js.map +1 -0
  589. package/out/zql/src/zql/query/typed-view.d.ts +5 -2
  590. package/out/zql/src/zql/query/typed-view.d.ts.map +1 -1
  591. package/out/zql/src/zql/query/typed-view.js +2 -0
  592. package/out/zql/src/zql/query/typed-view.js.map +1 -0
  593. package/out/zqlite/src/db.d.ts +1 -1
  594. package/out/zqlite/src/db.d.ts.map +1 -1
  595. package/out/zqlite/src/db.js +1 -1
  596. package/out/zqlite/src/db.js.map +1 -1
  597. package/out/zqlite/src/table-source.d.ts +2 -2
  598. package/out/zqlite/src/table-source.d.ts.map +1 -1
  599. package/out/zqlite/src/table-source.js.map +1 -1
  600. package/package.json +10 -8
  601. package/deps/sqlite3/sqlite3.c +0 -260574
  602. package/deps/sqlite3/sqlite3.h +0 -13572
  603. package/deps/sqlite3/sqlite3ext.h +0 -719
  604. package/out/zero-cache/src/services/change-streamer/pg/schema/create.d.ts +0 -6
  605. package/out/zero-cache/src/services/change-streamer/pg/schema/create.d.ts.map +0 -1
  606. package/out/zero-cache/src/services/change-streamer/pg/schema/create.js +0 -29
  607. package/out/zero-cache/src/services/change-streamer/pg/schema/create.js.map +0 -1
  608. package/out/zero-cache/src/services/change-streamer/pg/schema/lite.d.ts +0 -6
  609. package/out/zero-cache/src/services/change-streamer/pg/schema/lite.d.ts.map +0 -1
  610. package/out/zero-cache/src/services/change-streamer/pg/schema/lite.js.map +0 -1
  611. package/out/zero-cache/src/services/change-streamer/pg/schema/zero.d.ts +0 -11
  612. package/out/zero-cache/src/services/change-streamer/pg/schema/zero.d.ts.map +0 -1
  613. package/out/zero-cache/src/services/change-streamer/pg/schema/zero.js +0 -86
  614. package/out/zero-cache/src/services/change-streamer/pg/schema/zero.js.map +0 -1
  615. package/out/zero-cache/src/services/view-syncer/schema/pg-migrations.d.ts +0 -4
  616. package/out/zero-cache/src/services/view-syncer/schema/pg-migrations.d.ts.map +0 -1
  617. package/out/zero-cache/src/services/view-syncer/schema/pg-migrations.js +0 -12
  618. package/out/zero-cache/src/services/view-syncer/schema/pg-migrations.js.map +0 -1
  619. package/out/zero-cache/src/types/specs.d.ts +0 -29
  620. package/out/zero-cache/src/types/specs.d.ts.map +0 -1
  621. package/out/zero-cache/src/types/specs.js +0 -2
  622. package/out/zero-cache/src/types/specs.js.map +0 -1
  623. package/out/zero-client/src/client/make-id-from-primary-key.d.ts +0 -5
  624. package/out/zero-client/src/client/make-id-from-primary-key.d.ts.map +0 -1
  625. package/out/zero-protocol/src/entities-patch.d.ts +0 -66
  626. package/out/zero-protocol/src/entities-patch.d.ts.map +0 -1
  627. package/out/zero-protocol/src/entities-patch.js.map +0 -1
  628. package/out/zql/src/zql/ast/ast.d.ts +0 -84
  629. package/out/zql/src/zql/ast/ast.d.ts.map +0 -1
  630. package/out/zql/src/zql/ast/ast.js +0 -54
  631. package/out/zql/src/zql/ast/ast.js.map +0 -1
  632. package/tool/install-sqlite3.js +0 -37
@@ -0,0 +1 @@
1
+ {"version":3,"file":"write.js","sourceRoot":"","sources":["../../../../../replicache/src/db/write.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ import { assert } from '../../shared/src/asserts.js';
2
+ function isError(obj, type) {
3
+ return (typeof obj === 'object' &&
4
+ obj !== null &&
5
+ obj.error === type);
6
+ }
7
+ export function isErrorResponse(obj) {
8
+ return typeof obj.error === 'string';
9
+ }
10
+ export function isClientStateNotFoundResponse(v) {
11
+ return isError(v, 'ClientStateNotFound');
12
+ }
13
+ export function isVersionNotSupportedResponse(v) {
14
+ if (!isError(v, 'VersionNotSupported')) {
15
+ return false;
16
+ }
17
+ const { versionType } = v;
18
+ switch (versionType) {
19
+ case undefined:
20
+ case 'pull':
21
+ case 'push':
22
+ case 'schema':
23
+ return true;
24
+ }
25
+ return false;
26
+ }
27
+ export function assertVersionNotSupportedResponse(v) {
28
+ assert(isVersionNotSupportedResponse(v));
29
+ }
30
+ //# sourceMappingURL=error-responses.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-responses.js","sourceRoot":"","sources":["../../../../replicache/src/error-responses.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,6BAA6B,CAAC;AAEnD,SAAS,OAAO,CAAC,GAAY,EAAE,IAAY;IACzC,OAAO,CACL,OAAO,GAAG,KAAK,QAAQ;QACvB,GAAG,KAAK,IAAI;QACX,GAAwB,CAAC,KAAK,KAAK,IAAI,CACzC,CAAC;AACJ,CAAC;AAID,MAAM,UAAU,eAAe,CAAC,GAAW;IACzC,OAAO,OAAQ,GAAwB,CAAC,KAAK,KAAK,QAAQ,CAAC;AAC7D,CAAC;AAWD,MAAM,UAAU,6BAA6B,CAC3C,CAAU;IAEV,OAAO,OAAO,CAAC,CAAC,EAAE,qBAAqB,CAAC,CAAC;AAC3C,CAAC;AAYD,MAAM,UAAU,6BAA6B,CAC3C,CAAU;IAEV,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,qBAAqB,CAAC,EAAE,CAAC;QACvC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,EAAC,WAAW,EAAC,GAAG,CAA4B,CAAC;IACnD,QAAQ,WAAW,EAAE,CAAC;QACpB,KAAK,SAAS,CAAC;QACf,KAAK,MAAM,CAAC;QACZ,KAAK,MAAM,CAAC;QACZ,KAAK,QAAQ;YACX,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,iCAAiC,CAC/C,CAAU;IAEV,MAAM,CAAC,6BAA6B,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3C,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Filters an async iterable.
3
+ *
4
+ * This utility function is provided because it is useful when using
5
+ * {@link makeScanResult}. It can be used to filter out tombstones (delete entries)
6
+ * for example.
7
+ */
8
+ export async function* filterAsyncIterable(iter, predicate) {
9
+ for await (const v of iter) {
10
+ if (predicate(v)) {
11
+ yield v;
12
+ }
13
+ }
14
+ }
15
+ //# sourceMappingURL=filter-async-iterable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter-async-iterable.js","sourceRoot":"","sources":["../../../../replicache/src/filter-async-iterable.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,mBAAmB,CACxC,IAAsB,EACtB,SAA4B;IAE5B,IAAI,KAAK,EAAE,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QAC3B,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;YACjB,MAAM,CAAC,CAAC;QACV,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -0,0 +1,9 @@
1
+ /* eslint-disable @typescript-eslint/naming-convention */
2
+ export const SDD = 4;
3
+ export const DD31 = 5;
4
+ // V6 added refreshHashes and persistHash to Client to fix ChunkNotFound errors
5
+ export const V6 = 6;
6
+ // V7 added sizeOfEntry to the BTree chunk data.
7
+ export const V7 = 7;
8
+ export const Latest = V7;
9
+ //# sourceMappingURL=format-version-enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"format-version-enum.js","sourceRoot":"","sources":["../../../../replicache/src/format-version-enum.ts"],"names":[],"mappings":"AAAA,yDAAyD;AAEzD,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;AACrB,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC;AACtB,+EAA+E;AAC/E,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AACpB,gDAAgD;AAChD,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AACpB,MAAM,CAAC,MAAM,MAAM,GAAG,EAAE,CAAC"}
@@ -0,0 +1,8 @@
1
+ import * as FormatVersion from './format-version-enum.js';
2
+ export function parseReplicacheFormatVersion(v) {
3
+ if (v !== (v | 0) || v < FormatVersion.SDD || v > FormatVersion.Latest) {
4
+ throw new Error(`Unsupported format version: ${v}`);
5
+ }
6
+ return v;
7
+ }
8
+ //# sourceMappingURL=format-version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"format-version.js","sourceRoot":"","sources":["../../../../replicache/src/format-version.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,0BAA0B,CAAC;AAE1D,MAAM,UAAU,4BAA4B,CAAC,CAAS;IACpD,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,GAAG,IAAI,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC;QACvE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,EAAE,CAAC,CAAC;IACtD,CAAC;IACD,OAAO,CAAuB,CAAC;AACjC,CAAC"}
@@ -0,0 +1,151 @@
1
+ import { throwInvalidType } from '../../shared/src/asserts.js';
2
+ import { skipAssertJSONValue } from '../../shared/src/config.js';
3
+ import { hasOwn } from '../../shared/src/has-own.js';
4
+ import { skipFreeze, skipFrozenAsserts } from './config.js';
5
+ /**
6
+ * We tag deep frozen objects in debug mode so that we do not have to deep
7
+ * freeze an object more than once.
8
+ */
9
+ const deepFrozenObjects = new WeakSet();
10
+ export function deepFreeze(v) {
11
+ if (skipFreeze) {
12
+ return v;
13
+ }
14
+ deepFreezeInternal(v, []);
15
+ return v;
16
+ }
17
+ function deepFreezeInternal(v, seen) {
18
+ switch (typeof v) {
19
+ case 'undefined':
20
+ throw new TypeError('Unexpected value undefined');
21
+ case 'boolean':
22
+ case 'number':
23
+ case 'string':
24
+ return;
25
+ case 'object': {
26
+ if (v === null) {
27
+ return;
28
+ }
29
+ if (deepFrozenObjects.has(v)) {
30
+ return;
31
+ }
32
+ deepFrozenObjects.add(v);
33
+ if (seen.includes(v)) {
34
+ throwInvalidType(v, 'Cyclic JSON object');
35
+ }
36
+ seen.push(v);
37
+ Object.freeze(v);
38
+ if (Array.isArray(v)) {
39
+ deepFreezeArray(v, seen);
40
+ }
41
+ else {
42
+ deepFreezeObject(v, seen);
43
+ }
44
+ seen.pop();
45
+ return;
46
+ }
47
+ default:
48
+ throwInvalidType(v, 'JSON value');
49
+ }
50
+ }
51
+ function deepFreezeArray(v, seen) {
52
+ for (const item of v) {
53
+ deepFreezeInternal(item, seen);
54
+ }
55
+ }
56
+ function deepFreezeObject(v, seen) {
57
+ for (const k in v) {
58
+ if (hasOwn(v, k)) {
59
+ const value = v[k];
60
+ if (value !== undefined) {
61
+ deepFreezeInternal(value, seen);
62
+ }
63
+ }
64
+ }
65
+ }
66
+ export function assertFrozenJSONValue(v) {
67
+ if (skipFrozenAsserts || skipAssertJSONValue) {
68
+ return;
69
+ }
70
+ switch (typeof v) {
71
+ case 'boolean':
72
+ case 'number':
73
+ case 'string':
74
+ return;
75
+ case 'object':
76
+ if (v === null) {
77
+ return;
78
+ }
79
+ if (isDeepFrozen(v, [])) {
80
+ return;
81
+ }
82
+ }
83
+ throwInvalidType(v, 'JSON value');
84
+ }
85
+ export function assertDeepFrozen(v) {
86
+ if (skipFrozenAsserts) {
87
+ return;
88
+ }
89
+ if (!isDeepFrozen(v, [])) {
90
+ throw new Error('Expected frozen object');
91
+ }
92
+ }
93
+ /**
94
+ * Recursive deep frozen check.
95
+ *
96
+ * It adds frozen objects to the {@link deepFrozenObjects} WeakSet so that we do
97
+ * not have to check the same object more than once.
98
+ */
99
+ export function isDeepFrozen(v, seen) {
100
+ switch (typeof v) {
101
+ case 'boolean':
102
+ case 'number':
103
+ case 'string':
104
+ return true;
105
+ case 'object':
106
+ if (v === null) {
107
+ return true;
108
+ }
109
+ if (deepFrozenObjects.has(v)) {
110
+ return true;
111
+ }
112
+ if (!Object.isFrozen(v)) {
113
+ return false;
114
+ }
115
+ if (seen.includes(v)) {
116
+ throwInvalidType(v, 'Cyclic JSON object');
117
+ }
118
+ seen.push(v);
119
+ if (Array.isArray(v)) {
120
+ for (const item of v) {
121
+ if (!isDeepFrozen(item, seen)) {
122
+ seen.pop();
123
+ return false;
124
+ }
125
+ }
126
+ }
127
+ else {
128
+ for (const k in v) {
129
+ if (hasOwn(v, k)) {
130
+ const value = v[k];
131
+ if (value !== undefined && !isDeepFrozen(value, seen)) {
132
+ seen.pop();
133
+ return false;
134
+ }
135
+ }
136
+ }
137
+ }
138
+ deepFrozenObjects.add(v);
139
+ seen.pop();
140
+ return true;
141
+ default:
142
+ throwInvalidType(v, 'JSON value');
143
+ }
144
+ }
145
+ export function deepFreezeAllowUndefined(v) {
146
+ if (v === undefined) {
147
+ return undefined;
148
+ }
149
+ return deepFreeze(v);
150
+ }
151
+ //# sourceMappingURL=frozen-json.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frozen-json.js","sourceRoot":"","sources":["../../../../replicache/src/frozen-json.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,gBAAgB,EAAC,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAC,mBAAmB,EAAC,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAC,MAAM,EAAC,MAAM,6BAA6B,CAAC;AAKnD,OAAO,EAAC,UAAU,EAAE,iBAAiB,EAAC,MAAM,aAAa,CAAC;AAwB1D;;;GAGG;AACH,MAAM,iBAAiB,GAAG,IAAI,OAAO,EAAU,CAAC;AAShD,MAAM,UAAU,UAAU,CAAC,CAAoB;IAC7C,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,CAAoB,CAAC;IAC9B,CAAC;IAED,kBAAkB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC1B,OAAO,CAAoB,CAAC;AAC9B,CAAC;AAED,SAAS,kBAAkB,CACzB,CAAgC,EAChC,IAAc;IAEd,QAAQ,OAAO,CAAC,EAAE,CAAC;QACjB,KAAK,WAAW;YACd,MAAM,IAAI,SAAS,CAAC,4BAA4B,CAAC,CAAC;QACpD,KAAK,SAAS,CAAC;QACf,KAAK,QAAQ,CAAC;QACd,KAAK,QAAQ;YACX,OAAO;QACT,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;gBACf,OAAO;YACT,CAAC;YAED,IAAI,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7B,OAAO;YACT,CAAC;YACD,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAEzB,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrB,gBAAgB,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;YAC5C,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAEb,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACjB,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrB,eAAe,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACN,gBAAgB,CAAC,CAAuB,EAAE,IAAI,CAAC,CAAC;YAClD,CAAC;YACD,IAAI,CAAC,GAAG,EAAE,CAAC;YACX,OAAO;QACT,CAAC;QAED;YACE,gBAAgB,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;IACtC,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CACtB,CAAmC,EACnC,IAAc;IAEd,KAAK,MAAM,IAAI,IAAI,CAAC,EAAE,CAAC;QACrB,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACjC,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,CAAqB,EAAE,IAAc;IAC7D,KAAK,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QAClB,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YACjB,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACnB,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,CAAU;IAEV,IAAI,iBAAiB,IAAI,mBAAmB,EAAE,CAAC;QAC7C,OAAO;IACT,CAAC;IAED,QAAQ,OAAO,CAAC,EAAE,CAAC;QACjB,KAAK,SAAS,CAAC;QACf,KAAK,QAAQ,CAAC;QACd,KAAK,QAAQ;YACX,OAAO;QACT,KAAK,QAAQ;YACX,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;gBACf,OAAO;YACT,CAAC;YAED,IAAI,YAAY,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;gBACxB,OAAO;YACT,CAAC;IACL,CAAC;IACD,gBAAgB,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAI,CAAI;IACtC,IAAI,iBAAiB,EAAE,CAAC;QACtB,OAAO;IACT,CAAC;IAED,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC5C,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,CAAU,EAAE,IAAc;IACrD,QAAQ,OAAO,CAAC,EAAE,CAAC;QACjB,KAAK,SAAS,CAAC;QACf,KAAK,QAAQ,CAAC;QACd,KAAK,QAAQ;YACX,OAAO,IAAI,CAAC;QACd,KAAK,QAAQ;YACX,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;gBACf,OAAO,IAAI,CAAC;YACd,CAAC;YAED,IAAI,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7B,OAAO,IAAI,CAAC;YACd,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxB,OAAO,KAAK,CAAC;YACf,CAAC;YAED,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrB,gBAAgB,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;YAC5C,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAEb,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrB,KAAK,MAAM,IAAI,IAAI,CAAC,EAAE,CAAC;oBACrB,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;wBAC9B,IAAI,CAAC,GAAG,EAAE,CAAC;wBACX,OAAO,KAAK,CAAC;oBACf,CAAC;gBACH,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,KAAK,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;oBAClB,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;wBACjB,MAAM,KAAK,GAAI,CAA6B,CAAC,CAAC,CAAC,CAAC;wBAChD,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC;4BACtD,IAAI,CAAC,GAAG,EAAE,CAAC;4BACX,OAAO,KAAK,CAAC;wBACf,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;YAED,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACzB,IAAI,CAAC,GAAG,EAAE,CAAC;YACX,OAAO,IAAI,CAAC;QAEd;YACE,gBAAgB,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;IACtC,CAAC;AACH,CAAC;AAID,MAAM,UAAU,wBAAwB,CAAC,CAAgB;IACvD,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;QACpB,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,UAAU,CAAC,CAAC,CAAM,CAAC;AAC5B,CAAC"}
@@ -0,0 +1,74 @@
1
+ import { assertNumber, assertObject, assertString, } from '../../shared/src/asserts.js';
2
+ import { assertJSONValue } from '../../shared/src/json.js';
3
+ import { callDefaultFetch } from './call-default-fetch.js';
4
+ import { assertCookie } from './cookies.js';
5
+ import { isClientStateNotFoundResponse, isVersionNotSupportedResponse, } from './error-responses.js';
6
+ import { assertHTTPRequestInfo } from './http-request-info.js';
7
+ import { assertPatchOperations } from './patch-operation.js';
8
+ /**
9
+ * This creates a default puller which uses HTTP POST to send the pull request.
10
+ */
11
+ export function getDefaultPuller(rep) {
12
+ async function puller(requestBody, requestID) {
13
+ const [response, httpRequestInfo] = await callDefaultFetch(rep.pullURL, rep.auth, requestID, requestBody);
14
+ if (!response) {
15
+ return { httpRequestInfo };
16
+ }
17
+ return {
18
+ response: await response.json(),
19
+ httpRequestInfo,
20
+ };
21
+ }
22
+ defaultPullers.add(puller);
23
+ return puller;
24
+ }
25
+ const defaultPullers = new WeakSet();
26
+ export function isDefaultPuller(puller) {
27
+ return defaultPullers.has(puller);
28
+ }
29
+ export function assertPullResponseV0(v) {
30
+ assertObject(v);
31
+ if (isClientStateNotFoundResponse(v) || isVersionNotSupportedResponse(v)) {
32
+ return;
33
+ }
34
+ const v2 = v;
35
+ if (v2.cookie !== undefined) {
36
+ assertJSONValue(v2.cookie);
37
+ }
38
+ assertNumber(v2.lastMutationID);
39
+ assertPatchOperations(v2.patch);
40
+ }
41
+ export function assertPullResponseV1(v) {
42
+ assertObject(v);
43
+ if (isClientStateNotFoundResponse(v) || isVersionNotSupportedResponse(v)) {
44
+ return;
45
+ }
46
+ const v2 = v;
47
+ if (v2.cookie !== undefined) {
48
+ assertCookie(v2.cookie);
49
+ }
50
+ assertLastMutationIDChanges(v2.lastMutationIDChanges);
51
+ assertPatchOperations(v2.patch);
52
+ }
53
+ function assertLastMutationIDChanges(lastMutationIDChanges) {
54
+ assertObject(lastMutationIDChanges);
55
+ for (const [key, value] of Object.entries(lastMutationIDChanges)) {
56
+ assertString(key);
57
+ assertNumber(value);
58
+ }
59
+ }
60
+ export function assertPullerResultV1(v) {
61
+ assertObject(v);
62
+ assertHTTPRequestInfo(v.httpRequestInfo);
63
+ if (v.response !== undefined) {
64
+ assertPullResponseV1(v.response);
65
+ }
66
+ }
67
+ export function assertPullerResultV0(v) {
68
+ assertObject(v);
69
+ assertHTTPRequestInfo(v.httpRequestInfo);
70
+ if (v.response !== undefined) {
71
+ assertPullResponseV0(v.response);
72
+ }
73
+ }
74
+ //# sourceMappingURL=get-default-puller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-default-puller.js","sourceRoot":"","sources":["../../../../replicache/src/get-default-puller.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ import { callDefaultFetch } from './call-default-fetch.js';
2
+ import { isClientStateNotFoundResponse, isVersionNotSupportedResponse, } from './error-responses.js';
3
+ /**
4
+ * This creates a default pusher which uses HTTP POST to send the push request.
5
+ */
6
+ export function getDefaultPusher(rep) {
7
+ async function pusher(requestBody, requestID) {
8
+ const [response, httpRequestInfo] = await callDefaultFetch(rep.pushURL, rep.auth, requestID, requestBody);
9
+ if (!response) {
10
+ return { httpRequestInfo };
11
+ }
12
+ const rv = {
13
+ httpRequestInfo,
14
+ };
15
+ let result;
16
+ try {
17
+ result = await response.json();
18
+ }
19
+ catch {
20
+ // Ignore JSON parse errors. It is valid to return a non-JSON response.
21
+ return rv;
22
+ }
23
+ if (isClientStateNotFoundResponse(result) ||
24
+ isVersionNotSupportedResponse(result)) {
25
+ rv.response = result;
26
+ }
27
+ return rv;
28
+ }
29
+ defaultPushers.add(pusher);
30
+ return pusher;
31
+ }
32
+ const defaultPushers = new WeakSet();
33
+ export function isDefaultPusher(pusher) {
34
+ return defaultPushers.has(pusher);
35
+ }
36
+ //# sourceMappingURL=get-default-pusher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-default-pusher.js","sourceRoot":"","sources":["../../../../replicache/src/get-default-pusher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,gBAAgB,EAAC,MAAM,yBAAyB,CAAC;AACzD,OAAO,EACL,6BAA6B,EAC7B,6BAA6B,GAC9B,MAAM,sBAAsB,CAAC;AAI9B;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,GAAoC;IACnE,KAAK,UAAU,MAAM,CACnB,WAAwB,EACxB,SAAiB;QAEjB,MAAM,CAAC,QAAQ,EAAE,eAAe,CAAC,GAAG,MAAM,gBAAgB,CACxD,GAAG,CAAC,OAAO,EACX,GAAG,CAAC,IAAI,EACR,SAAS,EACT,WAAW,CACZ,CAAC;QACF,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,EAAC,eAAe,EAAC,CAAC;QAC3B,CAAC;QAED,MAAM,EAAE,GAAiB;YACvB,eAAe;SAChB,CAAC;QAEF,IAAI,MAAM,CAAC;QACX,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACjC,CAAC;QAAC,MAAM,CAAC;YACP,uEAAuE;YACvE,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,IACE,6BAA6B,CAAC,MAAM,CAAC;YACrC,6BAA6B,CAAC,MAAM,CAAC,EACrC,CAAC;YACD,EAAE,CAAC,QAAQ,GAAG,MAAM,CAAC;QACvB,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,cAAc,GAAG,IAAI,OAAO,EAAE,CAAC;AAErC,MAAM,UAAU,eAAe,CAAC,MAAc;IAC5C,OAAO,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AACpC,CAAC"}
@@ -0,0 +1,73 @@
1
+ import { assert } from '../../shared/src/asserts.js';
2
+ import { randomUint64 } from '../../shared/src/random-uint64.js';
3
+ import * as valita from '../../shared/src/valita.js';
4
+ export const STRING_LENGTH = 22;
5
+ // We are no longer using hashes but due to legacy reason we still refer to
6
+ // them as hashes. We use UUID and counters instead.
7
+ const hashRe = /^[0-9a-v-]+$/;
8
+ export function parse(s) {
9
+ assertHash(s);
10
+ return s;
11
+ }
12
+ const emptyUUID = '0'.repeat(STRING_LENGTH);
13
+ export const emptyHash = emptyUUID;
14
+ /**
15
+ * Creates a function that generates random hashes.
16
+ */
17
+ export const newRandomHash = makeNewRandomHashFunctionInternal();
18
+ /**
19
+ * Creates a function that generates UUID hashes for tests.
20
+ */
21
+ export function makeNewFakeHashFunction(hashPrefix = 'fake') {
22
+ assert(/^[0-9a-v]{0,8}$/.test(hashPrefix), `Invalid hash prefix: ${hashPrefix}`);
23
+ let i = 0;
24
+ return () => {
25
+ const count = String(i++);
26
+ return (hashPrefix +
27
+ '0'.repeat(STRING_LENGTH - hashPrefix.length - count.length) +
28
+ count);
29
+ };
30
+ }
31
+ function toStringAndSlice(n, len) {
32
+ return n.toString(32).slice(-len).padStart(len, '0');
33
+ }
34
+ /**
35
+ * This creates an ID that looks like `<RANDOM><COUNTER>`. The random part is
36
+ * a random number encoded with base 32 and the length is 12 characters. The
37
+ * is 10 characters long and encoded as base 32. The total length is 22 characters.
38
+ *
39
+ * Do the math: https://devina.io/collision-calculator
40
+ */
41
+ function makeNewRandomHashFunctionInternal() {
42
+ let base = '';
43
+ let i = 0;
44
+ return () => {
45
+ if (!base) {
46
+ // This needs to be lazy because the cloudflare worker environment will
47
+ // throw an error if crypto.getRandomValues is used statically. Specifically:
48
+ // Error: Some functionality, such as asynchronous I/O, timeouts, and
49
+ // generating random values, can only be performed while handling a
50
+ // request.
51
+ base = toStringAndSlice(randomUint64(), 12);
52
+ }
53
+ const tail = toStringAndSlice(i++, 10);
54
+ return (base + tail);
55
+ };
56
+ }
57
+ /**
58
+ * Generates a fake hash useful for testing.
59
+ */
60
+ export function fakeHash(word) {
61
+ if (typeof word === 'number') {
62
+ word = String(word);
63
+ }
64
+ return ('fake' + '0'.repeat(STRING_LENGTH - 4 - word.length) + word);
65
+ }
66
+ export function isHash(value) {
67
+ return typeof value === 'string' && hashRe.test(value);
68
+ }
69
+ export function assertHash(value) {
70
+ valita.assert(value, hashSchema);
71
+ }
72
+ export const hashSchema = valita.string().assert(isHash, 'Invalid hash');
73
+ //# sourceMappingURL=hash.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hash.js","sourceRoot":"","sources":["../../../../replicache/src/hash.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,6BAA6B,CAAC;AACnD,OAAO,EAAC,YAAY,EAAC,MAAM,mCAAmC,CAAC;AAC/D,OAAO,KAAK,MAAM,MAAM,4BAA4B,CAAC;AAErD,MAAM,CAAC,MAAM,aAAa,GAAG,EAAE,CAAC;AAsBhC,2EAA2E;AAC3E,oDAAoD;AACpD,MAAM,MAAM,GAAG,cAAc,CAAC;AAE9B,MAAM,UAAU,KAAK,CAAC,CAAS;IAC7B,UAAU,CAAC,CAAC,CAAC,CAAC;IACd,OAAO,CAAC,CAAC;AACX,CAAC;AAED,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;AAC5C,MAAM,CAAC,MAAM,SAAS,GAAG,SAA4B,CAAC;AAEtD;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,iCAAiC,EAAE,CAAC;AAEjE;;GAEG;AACH,MAAM,UAAU,uBAAuB,CAAC,UAAU,GAAG,MAAM;IACzD,MAAM,CACJ,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,EAClC,wBAAwB,UAAU,EAAE,CACrC,CAAC;IACF,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,OAAO,GAAG,EAAE;QACV,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;QAC1B,OAAO,CAAC,UAAU;YAChB,GAAG,CAAC,MAAM,CAAC,aAAa,GAAG,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;YAC5D,KAAK,CAAS,CAAC;IACnB,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,CAAkB,EAAE,GAAW;IACvD,OAAO,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AACvD,CAAC;AAED;;;;;;GAMG;AACH,SAAS,iCAAiC;IACxC,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,IAAI,CAAC,GAAG,CAAC,CAAC;IAEV,OAAO,GAAG,EAAE;QACV,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,uEAAuE;YACvE,8EAA8E;YAC9E,qEAAqE;YACrE,mEAAmE;YACnE,WAAW;YACX,IAAI,GAAG,gBAAgB,CAAC,YAAY,EAAE,EAAE,EAAE,CAAC,CAAC;QAC9C,CAAC;QACD,MAAM,IAAI,GAAG,gBAAgB,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACvC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAS,CAAC;IAC/B,CAAC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,QAAQ,CAAC,IAAqB;IAC5C,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC7B,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IACD,OAAO,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,aAAa,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAS,CAAC;AAC/E,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,KAAc;IACnC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,KAAc;IACvC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;AACnC,CAAC;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { assertNumber, assertObject, assertString, } from '../../shared/src/asserts.js';
2
+ export function assertHTTPRequestInfo(v) {
3
+ assertObject(v);
4
+ assertNumber(v.httpStatusCode);
5
+ assertString(v.errorMessage);
6
+ }
7
+ //# sourceMappingURL=http-request-info.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http-request-info.js","sourceRoot":"","sources":["../../../../replicache/src/http-request-info.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,YAAY,GACb,MAAM,6BAA6B,CAAC;AAErC,MAAM,UAAU,qBAAqB,CACnC,CAAU;IAEV,YAAY,CAAC,CAAC,CAAC,CAAC;IAChB,YAAY,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;IAC/B,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;AAC/B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { ReplicacheImpl } from './replicache-impl.js';
2
+ //# sourceMappingURL=impl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"impl.js","sourceRoot":"","sources":["../../../../replicache/src/impl.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,cAAc,EAA6B,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,28 @@
1
+ import * as valita from '../../shared/src/valita.js';
2
+ export const indexDefinitionSchema = valita.readonlyObject({
3
+ prefix: valita.string().optional(),
4
+ jsonPointer: valita.string(),
5
+ allowEmpty: valita.boolean().optional(),
6
+ });
7
+ export const indexDefinitionsSchema = valita.readonlyRecord(indexDefinitionSchema);
8
+ export function indexDefinitionEqual(a, b) {
9
+ return (a.jsonPointer === b.jsonPointer &&
10
+ (a.allowEmpty ?? false) === (b.allowEmpty ?? false) &&
11
+ (a.prefix ?? '') === (b.prefix ?? ''));
12
+ }
13
+ export function indexDefinitionsEqual(a, b) {
14
+ if (Object.keys(a).length !== Object.keys(b).length) {
15
+ return false;
16
+ }
17
+ for (const [aKey, aValue] of Object.entries(a)) {
18
+ const bValue = b[aKey];
19
+ if (!bValue || !indexDefinitionEqual(aValue, bValue)) {
20
+ return false;
21
+ }
22
+ }
23
+ return true;
24
+ }
25
+ export function assertIndexDefinitions(value) {
26
+ valita.assert(value, indexDefinitionsSchema);
27
+ }
28
+ //# sourceMappingURL=index-defs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-defs.js","sourceRoot":"","sources":["../../../../replicache/src/index-defs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,4BAA4B,CAAC;AA2BrD,MAAM,CAAC,MAAM,qBAAqB,GAChC,MAAM,CAAC,cAAc,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE;IAC5B,UAAU,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CACxC,CAAC,CAAC;AAQL,MAAM,CAAC,MAAM,sBAAsB,GAAG,MAAM,CAAC,cAAc,CACzD,qBAAqB,CACtB,CAAC;AAEF,MAAM,UAAU,oBAAoB,CAClC,CAAkB,EAClB,CAAkB;IAElB,OAAO,CACL,CAAC,CAAC,WAAW,KAAK,CAAC,CAAC,WAAW;QAC/B,CAAC,CAAC,CAAC,UAAU,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,IAAI,KAAK,CAAC;QACnD,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CACtC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,CAAmB,EACnB,CAAmB;IAEnB,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;QACpD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/C,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;QACvB,IAAI,CAAC,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;YACrD,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,KAAc;IAEd,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,sBAAsB,CAAC,CAAC;AAC/C,CAAC"}
@@ -0,0 +1,4 @@
1
+ /* eslint-disable @typescript-eslint/naming-convention */
2
+ export const InitialRun = 0;
3
+ export const Regular = 1;
4
+ //# sourceMappingURL=invoke-kind-enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"invoke-kind-enum.js","sourceRoot":"","sources":["../../../../replicache/src/invoke-kind-enum.ts"],"names":[],"mappings":"AAAA,yDAAyD;AAEzD,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAC;AAC5B,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,CAAC"}
@@ -0,0 +1,5 @@
1
+ export function getIterator(it) {
2
+ return (it[Symbol.asyncIterator]?.() ||
3
+ it[Symbol.iterator]());
4
+ }
5
+ //# sourceMappingURL=iterable-union.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"iterable-union.js","sourceRoot":"","sources":["../../../../replicache/src/iterable-union.ts"],"names":[],"mappings":"AAIA,MAAM,UAAU,WAAW,CAAI,EAAoB;IACjD,OAAO,CACJ,EAAuB,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,EAAE;QACjD,EAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CACvC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,93 @@
1
+ import { navigator } from '../../../shared/src/navigator.js';
2
+ import { promiseVoid } from '../../../shared/src/resolved-promises.js';
3
+ import { IDBStore } from './idb-store.js';
4
+ import { MemStore, dropMemStore } from './mem-store.js';
5
+ /**
6
+ * This store uses an {@link IDBStore} by default. If the {@link IDBStore} fails
7
+ * to open the DB with an exception that matches
8
+ * {@link isFirefoxPrivateBrowsingError} we switch out the implementation to use
9
+ * a {@link MemStore} instead.
10
+ *
11
+ * The reason this is relatively complicated is that when {@link IDBStore} is
12
+ * created, it calls `openDatabase` synchronously, but that returns a `Promise`
13
+ * that will reject in the case of Firefox private browsing. We don't await this
14
+ * promise until we call `read` or `write` so we cannot do the switch until
15
+ * then.
16
+ */
17
+ export class IDBStoreWithMemFallback {
18
+ #lc;
19
+ #name;
20
+ #store;
21
+ constructor(lc, name) {
22
+ this.#lc = lc;
23
+ this.#name = name;
24
+ this.#store = new IDBStore(name);
25
+ }
26
+ read() {
27
+ return this.#withBrainTransplant(s => s.read());
28
+ }
29
+ write() {
30
+ return this.#withBrainTransplant(s => s.write());
31
+ }
32
+ async #withBrainTransplant(f) {
33
+ try {
34
+ return await f(this.#store);
35
+ }
36
+ catch (e) {
37
+ if (isFirefoxPrivateBrowsingError(e)) {
38
+ // It is possible that we end up with multiple pending read/write and
39
+ // they all reject. Make sure we only replace the implementation once.
40
+ if (this.#store instanceof IDBStore) {
41
+ this.#lc.info?.('Switching to MemStore because of Firefox private browsing error');
42
+ this.#store = new MemStore(this.#name);
43
+ }
44
+ return f(this.#store);
45
+ }
46
+ throw e;
47
+ }
48
+ }
49
+ close() {
50
+ return this.#store.close();
51
+ }
52
+ get closed() {
53
+ return this.#store.closed;
54
+ }
55
+ }
56
+ function isFirefoxPrivateBrowsingError(e) {
57
+ return (isFirefox() &&
58
+ e instanceof DOMException &&
59
+ e.name === 'InvalidStateError' &&
60
+ e.message ===
61
+ 'A mutation operation was attempted on a database that did not allow mutations.');
62
+ }
63
+ function isFirefox() {
64
+ return navigator?.userAgent.includes('Firefox') ?? false;
65
+ }
66
+ export function newIDBStoreWithMemFallback(lc, name) {
67
+ if (isFirefox()) {
68
+ return new IDBStoreWithMemFallback(lc, name);
69
+ }
70
+ return new IDBStore(name);
71
+ }
72
+ export function dropIDBStoreWithMemFallback(name) {
73
+ if (!isFirefox()) {
74
+ return dropIDBStore(name);
75
+ }
76
+ try {
77
+ return dropIDBStore(name);
78
+ }
79
+ catch (e) {
80
+ if (isFirefoxPrivateBrowsingError(e)) {
81
+ return dropMemStore(name);
82
+ }
83
+ }
84
+ return promiseVoid;
85
+ }
86
+ function dropIDBStore(name) {
87
+ return new Promise((resolve, reject) => {
88
+ const req = indexedDB.deleteDatabase(name);
89
+ req.onsuccess = () => resolve();
90
+ req.onerror = () => reject(req.error);
91
+ });
92
+ }
93
+ //# sourceMappingURL=idb-store-with-mem-fallback.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"idb-store-with-mem-fallback.js","sourceRoot":"","sources":["../../../../../replicache/src/kv/idb-store-with-mem-fallback.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,SAAS,EAAC,MAAM,kCAAkC,CAAC;AAC3D,OAAO,EAAC,WAAW,EAAC,MAAM,0CAA0C,CAAC;AACrE,OAAO,EAAC,QAAQ,EAAC,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAC,QAAQ,EAAE,YAAY,EAAC,MAAM,gBAAgB,CAAC;AAGtD;;;;;;;;;;;GAWG;AAEH,MAAM,OAAO,uBAAuB;IACzB,GAAG,CAAa;IAChB,KAAK,CAAS;IACvB,MAAM,CAAQ;IACd,YAAY,EAAc,EAAE,IAAY;QACtC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;QACd,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,MAAM,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAED,IAAI;QACF,OAAO,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAClD,CAAC;IAED,KAAK;QACH,OAAO,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,CAA+B;QAE/B,IAAI,CAAC;YACH,OAAO,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,6BAA6B,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrC,qEAAqE;gBACrE,sEAAsE;gBACtE,IAAI,IAAI,CAAC,MAAM,YAAY,QAAQ,EAAE,CAAC;oBACpC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CACb,iEAAiE,CAClE,CAAC;oBACF,IAAI,CAAC,MAAM,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACzC,CAAC;gBACD,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACxB,CAAC;YACD,MAAM,CAAC,CAAC;QACV,CAAC;IACH,CAAC;IAED,KAAK;QACH,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IAC7B,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IAC5B,CAAC;CACF;AAED,SAAS,6BAA6B,CAAC,CAAU;IAC/C,OAAO,CACL,SAAS,EAAE;QACX,CAAC,YAAY,YAAY;QACzB,CAAC,CAAC,IAAI,KAAK,mBAAmB;QAC9B,CAAC,CAAC,OAAO;YACP,gFAAgF,CACnF,CAAC;AACJ,CAAC;AAED,SAAS,SAAS;IAChB,OAAO,SAAS,EAAE,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC;AAC3D,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,EAAc,EACd,IAAY;IAEZ,IAAI,SAAS,EAAE,EAAE,CAAC;QAChB,OAAO,IAAI,uBAAuB,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,IAAY;IACtD,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;QACjB,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IACD,IAAI,CAAC;QACH,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,6BAA6B,CAAC,CAAC,CAAC,EAAE,CAAC;YACrC,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,SAAS,YAAY,CAAC,IAAY;IAChC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,GAAG,GAAG,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC3C,GAAG,CAAC,SAAS,GAAG,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;QAChC,GAAG,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;AACL,CAAC"}