@rocicorp/zero 0.4.2024103000 → 0.5.2024110200

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 (537) hide show
  1. package/out/{chunk-4UHYW2B5.js → chunk-INJ4WJHS.js} +111 -99
  2. package/out/chunk-INJ4WJHS.js.map +7 -0
  3. package/out/{chunk-RCVGGCMG.js → chunk-YCMA66NH.js} +2 -2
  4. package/out/{chunk-RCVGGCMG.js.map → chunk-YCMA66NH.js.map} +2 -2
  5. package/out/internal.js +1 -1
  6. package/out/react.js.map +2 -2
  7. package/out/shared/src/iterables.d.ts.map +1 -1
  8. package/out/shared/src/iterables.js +0 -5
  9. package/out/shared/src/iterables.js.map +1 -1
  10. package/out/shared/src/valita.d.ts +7 -0
  11. package/out/shared/src/valita.d.ts.map +1 -1
  12. package/out/shared/src/valita.js +28 -0
  13. package/out/shared/src/valita.js.map +1 -1
  14. package/out/solid.js +2 -2
  15. package/out/solid.js.map +2 -2
  16. package/out/zero-advanced/src/mod.d.ts +7 -7
  17. package/out/zero-advanced/src/mod.d.ts.map +1 -1
  18. package/out/zero-cache/src/config/config-query.d.ts +6 -6
  19. package/out/zero-cache/src/config/config-query.d.ts.map +1 -1
  20. package/out/zero-cache/src/config/config-query.js +1 -1
  21. package/out/zero-cache/src/config/config-query.js.map +1 -1
  22. package/out/zero-cache/src/config/define-config.d.ts +3 -3
  23. package/out/zero-cache/src/config/define-config.d.ts.map +1 -1
  24. package/out/zero-cache/src/config/define-config.js +1 -0
  25. package/out/zero-cache/src/config/define-config.js.map +1 -1
  26. package/out/zero-cache/src/config/refs.js +1 -1
  27. package/out/zero-cache/src/config/refs.js.map +1 -1
  28. package/out/zero-cache/src/config/zero-config.d.ts +38 -38
  29. package/out/zero-cache/src/db/statements.d.ts +1 -1
  30. package/out/zero-cache/src/services/mutagen/write-authorizer.js +2 -2
  31. package/out/zero-cache/src/services/mutagen/write-authorizer.js.map +1 -1
  32. package/out/zero-cache/src/services/replicator/incremental-sync.js +1 -1
  33. package/out/zero-cache/src/services/view-syncer/database-storage.d.ts +1 -1
  34. package/out/zero-cache/src/services/view-syncer/database-storage.d.ts.map +1 -1
  35. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js +1 -1
  36. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js.map +1 -1
  37. package/out/zero-cache/src/services/view-syncer/schema/types.d.ts +5 -5
  38. package/out/zero-cache/src/types/lite.d.ts +1 -1
  39. package/out/zero-cache/src/types/lite.d.ts.map +1 -1
  40. package/out/zero-cache/src/types/lite.js +4 -0
  41. package/out/zero-cache/src/types/lite.js.map +1 -1
  42. package/out/zero-client/src/client/context.d.ts +4 -4
  43. package/out/zero-client/src/client/context.d.ts.map +1 -1
  44. package/out/zero-client/src/client/crud.d.ts +4 -4
  45. package/out/zero-client/src/client/crud.d.ts.map +1 -1
  46. package/out/zero-client/src/client/keys.d.ts +1 -1
  47. package/out/zero-client/src/client/keys.d.ts.map +1 -1
  48. package/out/zero-client/src/client/normalized-schema.d.ts +2 -2
  49. package/out/zero-client/src/client/normalized-schema.d.ts.map +1 -1
  50. package/out/zero-client/src/client/normalized-schema.js +1 -1
  51. package/out/zero-client/src/client/normalized-schema.js.map +1 -1
  52. package/out/zero-client/src/client/options.d.ts +1 -1
  53. package/out/zero-client/src/client/options.d.ts.map +1 -1
  54. package/out/zero-client/src/client/query-manager.d.ts +1 -1
  55. package/out/zero-client/src/client/query-manager.d.ts.map +1 -1
  56. package/out/zero-client/src/client/zero.d.ts +2 -9
  57. package/out/zero-client/src/client/zero.d.ts.map +1 -1
  58. package/out/zero-client/src/mod.d.ts +6 -7
  59. package/out/zero-client/src/mod.d.ts.map +1 -1
  60. package/out/zero-protocol/src/ast.d.ts +2 -2
  61. package/out/zero-protocol/src/ast.d.ts.map +1 -1
  62. package/out/zero-protocol/src/ast.js +2 -1
  63. package/out/zero-protocol/src/ast.js.map +1 -1
  64. package/out/zero-protocol/src/change-desired-queries.d.ts +2 -2
  65. package/out/zero-protocol/src/connect.d.ts +2 -2
  66. package/out/zero-protocol/src/data.d.ts +2 -2
  67. package/out/zero-protocol/src/data.d.ts.map +1 -1
  68. package/out/zero-protocol/src/data.js +2 -1
  69. package/out/zero-protocol/src/data.js.map +1 -1
  70. package/out/zero-protocol/src/down.d.ts +3 -3
  71. package/out/zero-protocol/src/poke.d.ts +6 -6
  72. package/out/zero-protocol/src/push.d.ts +21 -21
  73. package/out/zero-protocol/src/queries-patch.d.ts +3 -3
  74. package/out/zero-protocol/src/row-patch.d.ts +2 -2
  75. package/out/zero-protocol/src/up.d.ts +5 -5
  76. package/out/zero-react/src/use-query.d.ts +2 -1
  77. package/out/zero-react/src/use-query.d.ts.map +1 -1
  78. package/out/zero-react/src/use-zero.d.ts +2 -1
  79. package/out/zero-react/src/use-zero.d.ts.map +1 -1
  80. package/out/zero-schema/src/mod.d.ts +4 -0
  81. package/out/zero-schema/src/mod.d.ts.map +1 -0
  82. package/out/zero-schema/src/mod.js +4 -0
  83. package/out/zero-schema/src/mod.js.map +1 -0
  84. package/out/{zql/src/zql/query → zero-schema/src}/normalize-table-schema.d.ts +2 -3
  85. package/out/zero-schema/src/normalize-table-schema.d.ts.map +1 -0
  86. package/out/{zql/src/zql/query → zero-schema/src}/normalize-table-schema.js +3 -3
  87. package/out/zero-schema/src/normalize-table-schema.js.map +1 -0
  88. package/out/zero-schema/src/schema.d.ts +9 -0
  89. package/out/zero-schema/src/schema.d.ts.map +1 -0
  90. package/out/zero-schema/src/schema.js +4 -0
  91. package/out/zero-schema/src/schema.js.map +1 -0
  92. package/out/{zql/src/zql/query/schema.d.ts → zero-schema/src/table-schema.d.ts} +39 -3
  93. package/out/zero-schema/src/table-schema.d.ts.map +1 -0
  94. package/out/{zql/src/zql/query/schema.js → zero-schema/src/table-schema.js} +1 -1
  95. package/out/zero-schema/src/table-schema.js.map +1 -0
  96. package/out/zero-solid/src/create-zero.d.ts +2 -1
  97. package/out/zero-solid/src/create-zero.d.ts.map +1 -1
  98. package/out/zero.js +2 -6
  99. package/out/zql/src/{zql/builder → builder}/builder.d.ts +4 -4
  100. package/out/zql/src/builder/builder.d.ts.map +1 -0
  101. package/out/zql/src/{zql/builder → builder}/builder.js +7 -3
  102. package/out/zql/src/builder/builder.js.map +1 -0
  103. package/out/zql/src/builder/error.d.ts.map +1 -0
  104. package/out/zql/src/builder/error.js.map +1 -0
  105. package/out/zql/src/{zql/builder → builder}/filter.d.ts +2 -2
  106. package/out/zql/src/builder/filter.d.ts.map +1 -0
  107. package/out/zql/src/{zql/builder → builder}/filter.js +1 -1
  108. package/out/zql/src/builder/filter.js.map +1 -0
  109. package/out/zql/src/builder/like.d.ts.map +1 -0
  110. package/out/zql/src/{zql/builder → builder}/like.js +1 -1
  111. package/out/zql/src/builder/like.js.map +1 -0
  112. package/out/zql/src/ivm/array-view.d.ts.map +1 -0
  113. package/out/zql/src/{zql/ivm → ivm}/array-view.js +1 -1
  114. package/out/zql/src/ivm/array-view.js.map +1 -0
  115. package/out/zql/src/{zql/ivm → ivm}/change.d.ts +1 -1
  116. package/out/zql/src/ivm/change.d.ts.map +1 -0
  117. package/out/zql/src/ivm/change.js.map +1 -0
  118. package/out/zql/src/{zql/ivm → ivm}/data.d.ts +2 -2
  119. package/out/zql/src/ivm/data.d.ts.map +1 -0
  120. package/out/zql/src/{zql/ivm → ivm}/data.js +1 -1
  121. package/out/zql/src/ivm/data.js.map +1 -0
  122. package/out/zql/src/{zql/ivm → ivm}/fan-in.d.ts +6 -4
  123. package/out/zql/src/ivm/fan-in.d.ts.map +1 -0
  124. package/out/zql/src/{zql/ivm → ivm}/fan-in.js +11 -11
  125. package/out/zql/src/ivm/fan-in.js.map +1 -0
  126. package/out/zql/src/{zql/ivm → ivm}/fan-out.d.ts +3 -3
  127. package/out/zql/src/ivm/fan-out.d.ts.map +1 -0
  128. package/out/zql/src/{zql/ivm → ivm}/fan-out.js +7 -5
  129. package/out/zql/src/ivm/fan-out.js.map +1 -0
  130. package/out/zql/src/{zql/ivm → ivm}/filter.d.ts +4 -5
  131. package/out/zql/src/ivm/filter.d.ts.map +1 -0
  132. package/out/zql/src/{zql/ivm → ivm}/filter.js +9 -6
  133. package/out/zql/src/ivm/filter.js.map +1 -0
  134. package/out/zql/src/{zql/ivm → ivm}/join.d.ts +2 -2
  135. package/out/zql/src/ivm/join.d.ts.map +1 -0
  136. package/out/zql/src/{zql/ivm → ivm}/join.js +2 -2
  137. package/out/zql/src/ivm/join.js.map +1 -0
  138. package/out/zql/src/ivm/lookahead-iterator.d.ts.map +1 -0
  139. package/out/zql/src/ivm/lookahead-iterator.js.map +1 -0
  140. package/out/zql/src/{zql/ivm → ivm}/maybe-split-and-push-edit-change.d.ts +1 -1
  141. package/out/zql/src/ivm/maybe-split-and-push-edit-change.d.ts.map +1 -0
  142. package/out/zql/src/ivm/maybe-split-and-push-edit-change.js.map +1 -0
  143. package/out/zql/src/{zql/ivm → ivm}/memory-source.d.ts +6 -6
  144. package/out/zql/src/ivm/memory-source.d.ts.map +1 -0
  145. package/out/zql/src/{zql/ivm → ivm}/memory-source.js +12 -17
  146. package/out/zql/src/ivm/memory-source.js.map +1 -0
  147. package/out/zql/src/{zql/ivm → ivm}/memory-storage.d.ts +1 -1
  148. package/out/zql/src/ivm/memory-storage.d.ts.map +1 -0
  149. package/out/zql/src/{zql/ivm → ivm}/operator.d.ts +5 -5
  150. package/out/zql/src/ivm/operator.d.ts.map +1 -0
  151. package/out/zql/src/ivm/operator.js.map +1 -0
  152. package/out/zql/src/ivm/schema.d.ts +15 -0
  153. package/out/zql/src/ivm/schema.d.ts.map +1 -0
  154. package/out/zql/src/ivm/schema.js +2 -0
  155. package/out/zql/src/ivm/schema.js.map +1 -0
  156. package/out/zql/src/{zql/ivm → ivm}/skip.d.ts +3 -3
  157. package/out/zql/src/ivm/skip.d.ts.map +1 -0
  158. package/out/zql/src/{zql/ivm → ivm}/skip.js +1 -1
  159. package/out/zql/src/ivm/skip.js.map +1 -0
  160. package/out/zql/src/{zql/ivm → ivm}/source.d.ts +2 -2
  161. package/out/zql/src/ivm/source.d.ts.map +1 -0
  162. package/out/zql/src/ivm/source.js.map +1 -0
  163. package/out/zql/src/ivm/stream.d.ts.map +1 -0
  164. package/out/zql/src/ivm/stream.js.map +1 -0
  165. package/out/zql/src/{zql/ivm → ivm}/take.d.ts +2 -2
  166. package/out/zql/src/ivm/take.d.ts.map +1 -0
  167. package/out/zql/src/{zql/ivm → ivm}/take.js +2 -2
  168. package/out/zql/src/ivm/take.js.map +1 -0
  169. package/out/zql/src/ivm/view-apply-change.d.ts +5 -0
  170. package/out/zql/src/ivm/view-apply-change.d.ts.map +1 -0
  171. package/out/zql/src/{zql/ivm → ivm}/view-apply-change.js +2 -2
  172. package/out/zql/src/ivm/view-apply-change.js.map +1 -0
  173. package/out/zql/src/{zql/ivm → ivm}/view.d.ts +2 -2
  174. package/out/zql/src/ivm/view.d.ts.map +1 -0
  175. package/out/zql/src/{zql/ivm → ivm}/view.js.map +1 -1
  176. package/out/zql/src/query/auth-query.d.ts +20 -0
  177. package/out/zql/src/query/auth-query.d.ts.map +1 -0
  178. package/out/zql/src/query/auth-query.js +26 -0
  179. package/out/zql/src/query/auth-query.js.map +1 -0
  180. package/out/zql/src/query/escape-like.d.ts.map +1 -0
  181. package/out/zql/src/query/expression.d.ts +24 -0
  182. package/out/zql/src/query/expression.d.ts.map +1 -0
  183. package/out/zql/src/{zql/query → query}/expression.js +7 -1
  184. package/out/zql/src/query/expression.js.map +1 -0
  185. package/out/zql/src/{zql/query → query}/query-impl.d.ts +5 -5
  186. package/out/zql/src/query/query-impl.d.ts.map +1 -0
  187. package/out/zql/src/{zql/query → query}/query-impl.js +6 -4
  188. package/out/zql/src/query/query-impl.js.map +1 -0
  189. package/out/zql/src/{zql/query → query}/query-internal.d.ts +1 -1
  190. package/out/zql/src/query/query-internal.d.ts.map +1 -0
  191. package/out/zql/src/query/query-internal.js.map +1 -0
  192. package/out/zql/src/{zql/query → query}/query.d.ts +11 -26
  193. package/out/zql/src/query/query.d.ts.map +1 -0
  194. package/out/zql/src/query/query.js.map +1 -0
  195. package/out/zql/src/{zql/query → query}/typed-view.d.ts +1 -1
  196. package/out/zql/src/query/typed-view.d.ts.map +1 -0
  197. package/out/zql/src/query/typed-view.js.map +1 -0
  198. package/out/zqlite/src/db.d.ts +1 -1
  199. package/out/zqlite/src/db.js +1 -1
  200. package/out/zqlite/src/table-source.d.ts +14 -2
  201. package/out/zqlite/src/table-source.d.ts.map +1 -1
  202. package/out/zqlite/src/table-source.js +81 -40
  203. package/out/zqlite/src/table-source.js.map +1 -1
  204. package/package.json +11 -2
  205. package/out/chunk-4UHYW2B5.js.map +0 -7
  206. package/out/replicache/src/async-iterable-to-array.js +0 -8
  207. package/out/replicache/src/async-iterable-to-array.js.map +0 -1
  208. package/out/replicache/src/bg-interval.js +0 -38
  209. package/out/replicache/src/bg-interval.js.map +0 -1
  210. package/out/replicache/src/binary-search.js +0 -31
  211. package/out/replicache/src/binary-search.js.map +0 -1
  212. package/out/replicache/src/broadcast-channel.js +0 -29
  213. package/out/replicache/src/broadcast-channel.js.map +0 -1
  214. package/out/replicache/src/btree/diff.js +0 -6
  215. package/out/replicache/src/btree/diff.js.map +0 -1
  216. package/out/replicache/src/btree/node.js +0 -392
  217. package/out/replicache/src/btree/node.js.map +0 -1
  218. package/out/replicache/src/btree/read.js +0 -227
  219. package/out/replicache/src/btree/read.js.map +0 -1
  220. package/out/replicache/src/btree/splice.js +0 -79
  221. package/out/replicache/src/btree/splice.js.map +0 -1
  222. package/out/replicache/src/btree/write.js +0 -154
  223. package/out/replicache/src/btree/write.js.map +0 -1
  224. package/out/replicache/src/call-default-fetch.js +0 -37
  225. package/out/replicache/src/call-default-fetch.js.map +0 -1
  226. package/out/replicache/src/config.js +0 -13
  227. package/out/replicache/src/config.js.map +0 -1
  228. package/out/replicache/src/connection-loop-delegates.js +0 -30
  229. package/out/replicache/src/connection-loop-delegates.js.map +0 -1
  230. package/out/replicache/src/connection-loop.js +0 -268
  231. package/out/replicache/src/connection-loop.js.map +0 -1
  232. package/out/replicache/src/cookies.js +0 -41
  233. package/out/replicache/src/cookies.js.map +0 -1
  234. package/out/replicache/src/dag/chunk.js +0 -60
  235. package/out/replicache/src/dag/chunk.js.map +0 -1
  236. package/out/replicache/src/dag/gc.js +0 -126
  237. package/out/replicache/src/dag/gc.js.map +0 -1
  238. package/out/replicache/src/dag/key-type-enum.js +0 -6
  239. package/out/replicache/src/dag/key-type-enum.js.map +0 -1
  240. package/out/replicache/src/dag/key.js +0 -54
  241. package/out/replicache/src/dag/key.js.map +0 -1
  242. package/out/replicache/src/dag/lazy-store.js +0 -532
  243. package/out/replicache/src/dag/lazy-store.js.map +0 -1
  244. package/out/replicache/src/dag/store-impl.js +0 -175
  245. package/out/replicache/src/dag/store-impl.js.map +0 -1
  246. package/out/replicache/src/dag/store.js +0 -22
  247. package/out/replicache/src/dag/store.js.map +0 -1
  248. package/out/replicache/src/dag/visitor.js +0 -22
  249. package/out/replicache/src/dag/visitor.js.map +0 -1
  250. package/out/replicache/src/db/commit.js +0 -443
  251. package/out/replicache/src/db/commit.js.map +0 -1
  252. package/out/replicache/src/db/index-operation-enum.js +0 -4
  253. package/out/replicache/src/db/index-operation-enum.js.map +0 -1
  254. package/out/replicache/src/db/index.js +0 -170
  255. package/out/replicache/src/db/index.js.map +0 -1
  256. package/out/replicache/src/db/meta-type-enum.js +0 -7
  257. package/out/replicache/src/db/meta-type-enum.js.map +0 -1
  258. package/out/replicache/src/db/read.js +0 -59
  259. package/out/replicache/src/db/read.js.map +0 -1
  260. package/out/replicache/src/db/rebase.js +0 -56
  261. package/out/replicache/src/db/rebase.js.map +0 -1
  262. package/out/replicache/src/db/scan.js +0 -2
  263. package/out/replicache/src/db/scan.js.map +0 -1
  264. package/out/replicache/src/db/write.js +0 -260
  265. package/out/replicache/src/db/write.js.map +0 -1
  266. package/out/replicache/src/error-responses.js +0 -30
  267. package/out/replicache/src/error-responses.js.map +0 -1
  268. package/out/replicache/src/filter-async-iterable.js +0 -15
  269. package/out/replicache/src/filter-async-iterable.js.map +0 -1
  270. package/out/replicache/src/format-version-enum.js +0 -9
  271. package/out/replicache/src/format-version-enum.js.map +0 -1
  272. package/out/replicache/src/format-version.js +0 -8
  273. package/out/replicache/src/format-version.js.map +0 -1
  274. package/out/replicache/src/frozen-json.js +0 -151
  275. package/out/replicache/src/frozen-json.js.map +0 -1
  276. package/out/replicache/src/get-default-puller.js +0 -74
  277. package/out/replicache/src/get-default-puller.js.map +0 -1
  278. package/out/replicache/src/get-default-pusher.js +0 -36
  279. package/out/replicache/src/get-default-pusher.js.map +0 -1
  280. package/out/replicache/src/hash.js +0 -73
  281. package/out/replicache/src/hash.js.map +0 -1
  282. package/out/replicache/src/http-request-info.js +0 -7
  283. package/out/replicache/src/http-request-info.js.map +0 -1
  284. package/out/replicache/src/impl.js +0 -2
  285. package/out/replicache/src/impl.js.map +0 -1
  286. package/out/replicache/src/index-defs.js +0 -28
  287. package/out/replicache/src/index-defs.js.map +0 -1
  288. package/out/replicache/src/invoke-kind-enum.js +0 -4
  289. package/out/replicache/src/invoke-kind-enum.js.map +0 -1
  290. package/out/replicache/src/iterable-union.js +0 -5
  291. package/out/replicache/src/iterable-union.js.map +0 -1
  292. package/out/replicache/src/kv/idb-store-with-mem-fallback.js +0 -93
  293. package/out/replicache/src/kv/idb-store-with-mem-fallback.js.map +0 -1
  294. package/out/replicache/src/kv/idb-store.js +0 -179
  295. package/out/replicache/src/kv/idb-store.js.map +0 -1
  296. package/out/replicache/src/kv/mem-store.js +0 -61
  297. package/out/replicache/src/kv/mem-store.js.map +0 -1
  298. package/out/replicache/src/kv/read-impl.js +0 -23
  299. package/out/replicache/src/kv/read-impl.js.map +0 -1
  300. package/out/replicache/src/kv/store.js +0 -2
  301. package/out/replicache/src/kv/store.js.map +0 -1
  302. package/out/replicache/src/kv/write-impl-base.js +0 -48
  303. package/out/replicache/src/kv/write-impl-base.js.map +0 -1
  304. package/out/replicache/src/kv/write-impl.js +0 -25
  305. package/out/replicache/src/kv/write-impl.js.map +0 -1
  306. package/out/replicache/src/lazy.js +0 -10
  307. package/out/replicache/src/lazy.js.map +0 -1
  308. package/out/replicache/src/log-options.js +0 -13
  309. package/out/replicache/src/log-options.js.map +0 -1
  310. package/out/replicache/src/merge-async-iterables.js +0 -61
  311. package/out/replicache/src/merge-async-iterables.js.map +0 -1
  312. package/out/replicache/src/mod.js +0 -14
  313. package/out/replicache/src/mod.js.map +0 -1
  314. package/out/replicache/src/mutation-recovery.js +0 -439
  315. package/out/replicache/src/mutation-recovery.js.map +0 -1
  316. package/out/replicache/src/new-client-channel.js +0 -77
  317. package/out/replicache/src/new-client-channel.js.map +0 -1
  318. package/out/replicache/src/on-persist-channel.js +0 -33
  319. package/out/replicache/src/on-persist-channel.js.map +0 -1
  320. package/out/replicache/src/patch-operation.js +0 -37
  321. package/out/replicache/src/patch-operation.js.map +0 -1
  322. package/out/replicache/src/pending-mutations.js +0 -18
  323. package/out/replicache/src/pending-mutations.js.map +0 -1
  324. package/out/replicache/src/persist/client-gc.js +0 -38
  325. package/out/replicache/src/persist/client-gc.js.map +0 -1
  326. package/out/replicache/src/persist/client-group-gc.js +0 -38
  327. package/out/replicache/src/persist/client-group-gc.js.map +0 -1
  328. package/out/replicache/src/persist/client-groups.js +0 -180
  329. package/out/replicache/src/persist/client-groups.js.map +0 -1
  330. package/out/replicache/src/persist/clients.js +0 -390
  331. package/out/replicache/src/persist/clients.js.map +0 -1
  332. package/out/replicache/src/persist/collect-idb-databases.js +0 -174
  333. package/out/replicache/src/persist/collect-idb-databases.js.map +0 -1
  334. package/out/replicache/src/persist/gather-mem-only-visitor.js +0 -25
  335. package/out/replicache/src/persist/gather-mem-only-visitor.js.map +0 -1
  336. package/out/replicache/src/persist/gather-not-cached-visitor.js +0 -35
  337. package/out/replicache/src/persist/gather-not-cached-visitor.js.map +0 -1
  338. package/out/replicache/src/persist/heartbeat.js +0 -37
  339. package/out/replicache/src/persist/heartbeat.js.map +0 -1
  340. package/out/replicache/src/persist/idb-databases-store-db-name.js +0 -18
  341. package/out/replicache/src/persist/idb-databases-store-db-name.js.map +0 -1
  342. package/out/replicache/src/persist/idb-databases-store.js +0 -90
  343. package/out/replicache/src/persist/idb-databases-store.js.map +0 -1
  344. package/out/replicache/src/persist/make-client-id.js +0 -13
  345. package/out/replicache/src/persist/make-client-id.js.map +0 -1
  346. package/out/replicache/src/persist/persist.js +0 -132
  347. package/out/replicache/src/persist/persist.js.map +0 -1
  348. package/out/replicache/src/persist/refresh.js +0 -147
  349. package/out/replicache/src/persist/refresh.js.map +0 -1
  350. package/out/replicache/src/process-scheduler.js +0 -93
  351. package/out/replicache/src/process-scheduler.js.map +0 -1
  352. package/out/replicache/src/puller.js +0 -2
  353. package/out/replicache/src/puller.js.map +0 -1
  354. package/out/replicache/src/pusher.js +0 -32
  355. package/out/replicache/src/pusher.js.map +0 -1
  356. package/out/replicache/src/replicache-impl.js +0 -1007
  357. package/out/replicache/src/replicache-impl.js.map +0 -1
  358. package/out/replicache/src/replicache-options.js +0 -2
  359. package/out/replicache/src/replicache-options.js.map +0 -1
  360. package/out/replicache/src/replicache.js +0 -387
  361. package/out/replicache/src/replicache.js.map +0 -1
  362. package/out/replicache/src/request-idle.js +0 -15
  363. package/out/replicache/src/request-idle.js.map +0 -1
  364. package/out/replicache/src/scan-iterator.js +0 -202
  365. package/out/replicache/src/scan-iterator.js.map +0 -1
  366. package/out/replicache/src/scan-options.js +0 -45
  367. package/out/replicache/src/scan-options.js.map +0 -1
  368. package/out/replicache/src/set-interval-with-signal.js +0 -7
  369. package/out/replicache/src/set-interval-with-signal.js.map +0 -1
  370. package/out/replicache/src/size-of-value.js +0 -77
  371. package/out/replicache/src/size-of-value.js.map +0 -1
  372. package/out/replicache/src/subscriptions.js +0 -357
  373. package/out/replicache/src/subscriptions.js.map +0 -1
  374. package/out/replicache/src/sync/diff.js +0 -75
  375. package/out/replicache/src/sync/diff.js.map +0 -1
  376. package/out/replicache/src/sync/handle-pull-response-result-type-enum.js +0 -5
  377. package/out/replicache/src/sync/handle-pull-response-result-type-enum.js.map +0 -1
  378. package/out/replicache/src/sync/ids.js +0 -4
  379. package/out/replicache/src/sync/ids.js.map +0 -1
  380. package/out/replicache/src/sync/patch.js +0 -41
  381. package/out/replicache/src/sync/patch.js.map +0 -1
  382. package/out/replicache/src/sync/pull-error.js +0 -16
  383. package/out/replicache/src/sync/pull-error.js.map +0 -1
  384. package/out/replicache/src/sync/pull.js +0 -375
  385. package/out/replicache/src/sync/pull.js.map +0 -1
  386. package/out/replicache/src/sync/push.js +0 -141
  387. package/out/replicache/src/sync/push.js.map +0 -1
  388. package/out/replicache/src/sync/request-id.js +0 -31
  389. package/out/replicache/src/sync/request-id.js.map +0 -1
  390. package/out/replicache/src/sync/sync-head-name.js +0 -2
  391. package/out/replicache/src/sync/sync-head-name.js.map +0 -1
  392. package/out/replicache/src/test-license-key.js +0 -3
  393. package/out/replicache/src/test-license-key.js.map +0 -1
  394. package/out/replicache/src/to-error.js +0 -7
  395. package/out/replicache/src/to-error.js.map +0 -1
  396. package/out/replicache/src/transaction-closed-error.js +0 -17
  397. package/out/replicache/src/transaction-closed-error.js.map +0 -1
  398. package/out/replicache/src/transactions.js +0 -144
  399. package/out/replicache/src/transactions.js.map +0 -1
  400. package/out/replicache/src/types.js +0 -2
  401. package/out/replicache/src/types.js.map +0 -1
  402. package/out/replicache/src/version.js +0 -6
  403. package/out/replicache/src/version.js.map +0 -1
  404. package/out/replicache/src/with-transactions.js +0 -28
  405. package/out/replicache/src/with-transactions.js.map +0 -1
  406. package/out/shared/src/browser-env.js +0 -14
  407. package/out/shared/src/browser-env.js.map +0 -1
  408. package/out/shared/src/document-visible.js +0 -76
  409. package/out/shared/src/document-visible.js.map +0 -1
  410. package/out/shared/src/navigator.js +0 -3
  411. package/out/shared/src/navigator.js.map +0 -1
  412. package/out/shared/src/random-uint64.js +0 -8
  413. package/out/shared/src/random-uint64.js.map +0 -1
  414. package/out/shared/src/types.js +0 -2
  415. package/out/shared/src/types.js.map +0 -1
  416. package/out/zero-client/src/client/context.js +0 -113
  417. package/out/zero-client/src/client/context.js.map +0 -1
  418. package/out/zero-client/src/client/crud.js +0 -181
  419. package/out/zero-client/src/client/crud.js.map +0 -1
  420. package/out/zero-client/src/client/enable-analytics.js +0 -21
  421. package/out/zero-client/src/client/enable-analytics.js.map +0 -1
  422. package/out/zero-client/src/client/http-string.js +0 -14
  423. package/out/zero-client/src/client/http-string.js.map +0 -1
  424. package/out/zero-client/src/client/keys.js +0 -32
  425. package/out/zero-client/src/client/keys.js.map +0 -1
  426. package/out/zero-client/src/client/log-options.js +0 -57
  427. package/out/zero-client/src/client/log-options.js.map +0 -1
  428. package/out/zero-client/src/client/metrics.js +0 -268
  429. package/out/zero-client/src/client/metrics.js.map +0 -1
  430. package/out/zero-client/src/client/options.js +0 -2
  431. package/out/zero-client/src/client/options.js.map +0 -1
  432. package/out/zero-client/src/client/query-manager.js +0 -146
  433. package/out/zero-client/src/client/query-manager.js.map +0 -1
  434. package/out/zero-client/src/client/reload-error-handler.js +0 -23
  435. package/out/zero-client/src/client/reload-error-handler.js.map +0 -1
  436. package/out/zero-client/src/client/replicache-types.js +0 -2
  437. package/out/zero-client/src/client/replicache-types.js.map +0 -1
  438. package/out/zero-client/src/client/server-error.js +0 -22
  439. package/out/zero-client/src/client/server-error.js.map +0 -1
  440. package/out/zero-client/src/client/server-option.js +0 -37
  441. package/out/zero-client/src/client/server-option.js.map +0 -1
  442. package/out/zero-client/src/client/version.js +0 -6
  443. package/out/zero-client/src/client/version.js.map +0 -1
  444. package/out/zero-client/src/client/zero-poke-handler.js +0 -240
  445. package/out/zero-client/src/client/zero-poke-handler.js.map +0 -1
  446. package/out/zero-client/src/client/zero.js +0 -1233
  447. package/out/zero-client/src/client/zero.js.map +0 -1
  448. package/out/zero-client/src/mod.js +0 -7
  449. package/out/zero-client/src/mod.js.map +0 -1
  450. package/out/zero-client/src/util/nanoid.js +0 -34
  451. package/out/zero-client/src/util/nanoid.js.map +0 -1
  452. package/out/zero-client/src/util/socket.js +0 -4
  453. package/out/zero-client/src/util/socket.js.map +0 -1
  454. package/out/zql/src/zql/builder/builder.d.ts.map +0 -1
  455. package/out/zql/src/zql/builder/builder.js.map +0 -1
  456. package/out/zql/src/zql/builder/error.d.ts.map +0 -1
  457. package/out/zql/src/zql/builder/error.js.map +0 -1
  458. package/out/zql/src/zql/builder/filter.d.ts.map +0 -1
  459. package/out/zql/src/zql/builder/filter.js.map +0 -1
  460. package/out/zql/src/zql/builder/like.d.ts.map +0 -1
  461. package/out/zql/src/zql/builder/like.js.map +0 -1
  462. package/out/zql/src/zql/ivm/array-view.d.ts.map +0 -1
  463. package/out/zql/src/zql/ivm/array-view.js.map +0 -1
  464. package/out/zql/src/zql/ivm/change.d.ts.map +0 -1
  465. package/out/zql/src/zql/ivm/change.js.map +0 -1
  466. package/out/zql/src/zql/ivm/data.d.ts.map +0 -1
  467. package/out/zql/src/zql/ivm/data.js.map +0 -1
  468. package/out/zql/src/zql/ivm/fan-in.d.ts.map +0 -1
  469. package/out/zql/src/zql/ivm/fan-in.js.map +0 -1
  470. package/out/zql/src/zql/ivm/fan-out.d.ts.map +0 -1
  471. package/out/zql/src/zql/ivm/fan-out.js.map +0 -1
  472. package/out/zql/src/zql/ivm/filter.d.ts.map +0 -1
  473. package/out/zql/src/zql/ivm/filter.js.map +0 -1
  474. package/out/zql/src/zql/ivm/join.d.ts.map +0 -1
  475. package/out/zql/src/zql/ivm/join.js.map +0 -1
  476. package/out/zql/src/zql/ivm/lookahead-iterator.d.ts.map +0 -1
  477. package/out/zql/src/zql/ivm/lookahead-iterator.js.map +0 -1
  478. package/out/zql/src/zql/ivm/maybe-split-and-push-edit-change.d.ts.map +0 -1
  479. package/out/zql/src/zql/ivm/maybe-split-and-push-edit-change.js.map +0 -1
  480. package/out/zql/src/zql/ivm/memory-source.d.ts.map +0 -1
  481. package/out/zql/src/zql/ivm/memory-source.js.map +0 -1
  482. package/out/zql/src/zql/ivm/memory-storage.d.ts.map +0 -1
  483. package/out/zql/src/zql/ivm/memory-storage.js +0 -33
  484. package/out/zql/src/zql/ivm/memory-storage.js.map +0 -1
  485. package/out/zql/src/zql/ivm/operator.d.ts.map +0 -1
  486. package/out/zql/src/zql/ivm/operator.js.map +0 -1
  487. package/out/zql/src/zql/ivm/schema.d.ts +0 -29
  488. package/out/zql/src/zql/ivm/schema.d.ts.map +0 -1
  489. package/out/zql/src/zql/ivm/schema.js +0 -3
  490. package/out/zql/src/zql/ivm/schema.js.map +0 -1
  491. package/out/zql/src/zql/ivm/skip.d.ts.map +0 -1
  492. package/out/zql/src/zql/ivm/skip.js.map +0 -1
  493. package/out/zql/src/zql/ivm/source.d.ts.map +0 -1
  494. package/out/zql/src/zql/ivm/source.js.map +0 -1
  495. package/out/zql/src/zql/ivm/stream.d.ts.map +0 -1
  496. package/out/zql/src/zql/ivm/stream.js.map +0 -1
  497. package/out/zql/src/zql/ivm/take.d.ts.map +0 -1
  498. package/out/zql/src/zql/ivm/take.js.map +0 -1
  499. package/out/zql/src/zql/ivm/view-apply-change.d.ts +0 -5
  500. package/out/zql/src/zql/ivm/view-apply-change.d.ts.map +0 -1
  501. package/out/zql/src/zql/ivm/view-apply-change.js.map +0 -1
  502. package/out/zql/src/zql/ivm/view.d.ts.map +0 -1
  503. package/out/zql/src/zql/query/escape-like.d.ts.map +0 -1
  504. package/out/zql/src/zql/query/escape-like.js +0 -4
  505. package/out/zql/src/zql/query/escape-like.js.map +0 -1
  506. package/out/zql/src/zql/query/expression.d.ts +0 -25
  507. package/out/zql/src/zql/query/expression.d.ts.map +0 -1
  508. package/out/zql/src/zql/query/expression.js.map +0 -1
  509. package/out/zql/src/zql/query/normalize-table-schema.d.ts.map +0 -1
  510. package/out/zql/src/zql/query/normalize-table-schema.js.map +0 -1
  511. package/out/zql/src/zql/query/query-impl.d.ts.map +0 -1
  512. package/out/zql/src/zql/query/query-impl.js.map +0 -1
  513. package/out/zql/src/zql/query/query-internal.d.ts.map +0 -1
  514. package/out/zql/src/zql/query/query-internal.js.map +0 -1
  515. package/out/zql/src/zql/query/query.d.ts.map +0 -1
  516. package/out/zql/src/zql/query/query.js.map +0 -1
  517. package/out/zql/src/zql/query/schema.d.ts.map +0 -1
  518. package/out/zql/src/zql/query/schema.js.map +0 -1
  519. package/out/zql/src/zql/query/typed-view.d.ts.map +0 -1
  520. package/out/zql/src/zql/query/typed-view.js.map +0 -1
  521. /package/out/zql/src/{zql/builder → builder}/error.d.ts +0 -0
  522. /package/out/zql/src/{zql/builder → builder}/error.js +0 -0
  523. /package/out/zql/src/{zql/builder → builder}/like.d.ts +0 -0
  524. /package/out/zql/src/{zql/ivm → ivm}/array-view.d.ts +0 -0
  525. /package/out/zql/src/{zql/ivm → ivm}/change.js +0 -0
  526. /package/out/zql/src/{zql/ivm → ivm}/lookahead-iterator.d.ts +0 -0
  527. /package/out/zql/src/{zql/ivm → ivm}/lookahead-iterator.js +0 -0
  528. /package/out/zql/src/{zql/ivm → ivm}/maybe-split-and-push-edit-change.js +0 -0
  529. /package/out/zql/src/{zql/ivm → ivm}/operator.js +0 -0
  530. /package/out/zql/src/{zql/ivm → ivm}/source.js +0 -0
  531. /package/out/zql/src/{zql/ivm → ivm}/stream.d.ts +0 -0
  532. /package/out/zql/src/{zql/ivm → ivm}/stream.js +0 -0
  533. /package/out/zql/src/{zql/ivm → ivm}/view.js +0 -0
  534. /package/out/zql/src/{zql/query → query}/escape-like.d.ts +0 -0
  535. /package/out/zql/src/{zql/query → query}/query-internal.js +0 -0
  536. /package/out/zql/src/{zql/query → query}/query.js +0 -0
  537. /package/out/zql/src/{zql/query → query}/typed-view.js +0 -0
@@ -1,21 +0,0 @@
1
- // https://www.oreilly.com/library/view/regular-expressions-cookbook/9780596802837/ch07s16.html
2
- const IPV4_ADDRESS_REGEX = /^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/;
3
- // This doesn't ensure a valid ipv6, but any ipv6 hostname will
4
- // match this regex, and no domain based hostnames will.
5
- const IPV6_ADDRESS_HOSTNAME_REGEX = /^\[[a-fA-F0-9:]*:[a-fA-F0-9:]*\]$/;
6
- export const IP_ADDRESS_HOSTNAME_REGEX = new RegExp(`(${IPV4_ADDRESS_REGEX.source}|${IPV6_ADDRESS_HOSTNAME_REGEX.source})`);
7
- export function shouldEnableAnalytics(server, enableAnalytics = true) {
8
- if (!enableAnalytics) {
9
- return false;
10
- }
11
- const serverURL = server === null ? null : new URL(server);
12
- const socketHostname = serverURL?.hostname;
13
- // If the hostname is undefined, localhost, or an ip address, then
14
- // this is most likely a test or local development, in which case we
15
- // do not want to enable analytics.
16
- return (server !== null &&
17
- socketHostname !== undefined &&
18
- socketHostname !== 'localhost' &&
19
- !IP_ADDRESS_HOSTNAME_REGEX.test(socketHostname));
20
- }
21
- //# sourceMappingURL=enable-analytics.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"enable-analytics.js","sourceRoot":"","sources":["../../../../../zero-client/src/client/enable-analytics.ts"],"names":[],"mappings":"AAAA,+FAA+F;AAC/F,MAAM,kBAAkB,GACtB,6FAA6F,CAAC;AAChG,+DAA+D;AAC/D,wDAAwD;AACxD,MAAM,2BAA2B,GAAG,mCAAmC,CAAC;AAExE,MAAM,CAAC,MAAM,yBAAyB,GAAG,IAAI,MAAM,CACjD,IAAI,kBAAkB,CAAC,MAAM,IAAI,2BAA2B,CAAC,MAAM,GAAG,CACvE,CAAC;AAEF,MAAM,UAAU,qBAAqB,CACnC,MAAqB,EACrB,eAAe,GAAG,IAAI;IAEtB,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3D,MAAM,cAAc,GAAG,SAAS,EAAE,QAAQ,CAAC;IAC3C,kEAAkE;IAClE,oEAAoE;IACpE,mCAAmC;IACnC,OAAO,CACL,MAAM,KAAK,IAAI;QACf,cAAc,KAAK,SAAS;QAC5B,cAAc,KAAK,WAAW;QAC9B,CAAC,yBAAyB,CAAC,IAAI,CAAC,cAAc,CAAC,CAChD,CAAC;AACJ,CAAC"}
@@ -1,14 +0,0 @@
1
- import { assert } from '../../../shared/src/asserts.js';
2
- export function toWSString(url) {
3
- return ('ws' + url.slice(4));
4
- }
5
- export function toHTTPString(url) {
6
- return ('http' + url.slice(2));
7
- }
8
- export function assertHTTPString(url) {
9
- assert(/^https?:\/\//.test(url));
10
- }
11
- export function assertWSString(url) {
12
- assert(/^wss?:\/\//.test(url));
13
- }
14
- //# sourceMappingURL=http-string.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"http-string.js","sourceRoot":"","sources":["../../../../../zero-client/src/client/http-string.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,gCAAgC,CAAC;AAMtD,MAAM,UAAU,UAAU,CAAC,GAAe;IACxC,OAAO,CAAC,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAa,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,GAAa;IACxC,OAAO,CAAC,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAe,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,GAAW;IAC1C,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,GAAW;IACxC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AACjC,CAAC"}
@@ -1,32 +0,0 @@
1
- import { h64WithReverse } from '../../../shared/src/h64-with-reverse.js';
2
- import * as v from '../../../shared/src/valita.js';
3
- import { primaryKeyValueSchema } from '../../../zero-protocol/src/primary-key.js';
4
- export const CLIENTS_KEY_PREFIX = 'c/';
5
- export const DESIRED_QUERIES_KEY_PREFIX = 'd/';
6
- export const GOT_QUERIES_KEY_PREFIX = 'g/';
7
- export const ENTITIES_KEY_PREFIX = 'e/';
8
- export function toClientsKey(clientID) {
9
- return CLIENTS_KEY_PREFIX + clientID;
10
- }
11
- export function toDesiredQueriesKey(clientID, hash) {
12
- return DESIRED_QUERIES_KEY_PREFIX + clientID + '/' + hash;
13
- }
14
- export function desiredQueriesPrefixForClient(clientID) {
15
- return DESIRED_QUERIES_KEY_PREFIX + clientID + '/';
16
- }
17
- export function toGotQueriesKey(hash) {
18
- return GOT_QUERIES_KEY_PREFIX + hash;
19
- }
20
- export function toPrimaryKeyString(tableName, primaryKey, value) {
21
- if (primaryKey.length === 1) {
22
- return (ENTITIES_KEY_PREFIX +
23
- tableName +
24
- '/' +
25
- v.parse(value[primaryKey[0]], primaryKeyValueSchema));
26
- }
27
- const values = primaryKey.map(k => v.parse(value[k], primaryKeyValueSchema));
28
- const str = JSON.stringify(values);
29
- const idSegment = h64WithReverse(str);
30
- return ENTITIES_KEY_PREFIX + tableName + '/' + idSegment;
31
- }
32
- //# sourceMappingURL=keys.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"keys.js","sourceRoot":"","sources":["../../../../../zero-client/src/client/keys.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,yCAAyC,CAAC;AACvE,OAAO,KAAK,CAAC,MAAM,+BAA+B,CAAC;AAEnD,OAAO,EAAC,qBAAqB,EAAC,MAAM,2CAA2C,CAAC;AAGhF,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,CAAC;AACvC,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAI,CAAC;AAC/C,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,CAAC;AAC3C,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,CAAC;AAExC,MAAM,UAAU,YAAY,CAAC,QAAgB;IAC3C,OAAO,kBAAkB,GAAG,QAAQ,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,QAAgB,EAAE,IAAY;IAChE,OAAO,0BAA0B,GAAG,QAAQ,GAAG,GAAG,GAAG,IAAI,CAAC;AAC5D,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,QAAgB;IAC5D,OAAO,0BAA0B,GAAG,QAAQ,GAAG,GAAG,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,OAAO,sBAAsB,GAAG,IAAI,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,SAAiB,EACjB,UAAgC,EAChC,KAAU;IAEV,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,CACL,mBAAmB;YACnB,SAAS;YACT,GAAG;YACH,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,qBAAqB,CAAC,CACrD,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,qBAAqB,CAAC,CAAC,CAAC;IAC7E,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAEnC,MAAM,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;IACtC,OAAO,mBAAmB,GAAG,SAAS,GAAG,GAAG,GAAG,SAAS,CAAC;AAC3D,CAAC"}
@@ -1,57 +0,0 @@
1
- import { TeeLogSink, consoleLogSink, } from '@rocicorp/logger';
2
- import { DatadogLogSink, } from '../../../datadog/src/mod.js';
3
- import { version } from './version.js';
4
- class LevelFilterLogSink {
5
- #wrappedLogSink;
6
- #level;
7
- constructor(wrappedLogSink, level) {
8
- this.#wrappedLogSink = wrappedLogSink;
9
- this.#level = level;
10
- }
11
- log(level, context, ...args) {
12
- if (this.#level === 'error' && level !== 'error') {
13
- return;
14
- }
15
- if (this.#level === 'info' && level === 'debug') {
16
- return;
17
- }
18
- this.#wrappedLogSink.log(level, context, ...args);
19
- }
20
- async flush() {
21
- await consoleLogSink.flush?.();
22
- }
23
- }
24
- const DATADOG_LOG_LEVEL = 'info';
25
- const ZERO_SASS_DOMAIN = '.reflect-server.net';
26
- export function createLogOptions(options, createDatadogLogSink = (options) => new DatadogLogSink(options)) {
27
- const { consoleLogLevel, server, enableAnalytics } = options;
28
- if (!enableAnalytics || server === null) {
29
- return {
30
- logLevel: consoleLogLevel,
31
- logSink: consoleLogSink,
32
- };
33
- }
34
- const serverURL = new URL(server);
35
- const socketHostname = serverURL.hostname;
36
- const datadogServiceLabel = socketHostname.endsWith(ZERO_SASS_DOMAIN)
37
- ? socketHostname
38
- .substring(0, socketHostname.length - ZERO_SASS_DOMAIN.length)
39
- .toLowerCase()
40
- : socketHostname;
41
- const baseURL = new URL('/api/logs/v0/log', server);
42
- const logLevel = consoleLogLevel === 'debug' ? 'debug' : 'info';
43
- const logSink = new TeeLogSink([
44
- new LevelFilterLogSink(consoleLogSink, consoleLogLevel),
45
- new LevelFilterLogSink(createDatadogLogSink({
46
- service: datadogServiceLabel,
47
- host: location.host,
48
- version,
49
- baseURL,
50
- }), DATADOG_LOG_LEVEL),
51
- ]);
52
- return {
53
- logLevel,
54
- logSink,
55
- };
56
- }
57
- //# sourceMappingURL=log-options.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"log-options.js","sourceRoot":"","sources":["../../../../../zero-client/src/client/log-options.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,cAAc,GAIf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,cAAc,GAEf,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAC,OAAO,EAAC,MAAM,cAAc,CAAC;AAErC,MAAM,kBAAkB;IACb,eAAe,CAAU;IACzB,MAAM,CAAW;IAE1B,YAAY,cAAuB,EAAE,KAAe;QAClD,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;QACtC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,CAAC;IAED,GAAG,CAAC,KAAe,EAAE,OAA4B,EAAE,GAAG,IAAe;QACnE,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;YACjD,OAAO;QACT,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;YAChD,OAAO;QACT,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,KAAK;QACT,MAAM,cAAc,CAAC,KAAK,EAAE,EAAE,CAAC;IACjC,CAAC;CACF;AAED,MAAM,iBAAiB,GAAG,MAAM,CAAC;AACjC,MAAM,gBAAgB,GAAG,qBAAqB,CAAC;AAO/C,MAAM,UAAU,gBAAgB,CAC9B,OAIC,EACD,uBAAoE,CAClE,OAA8B,EAC9B,EAAE,CAAC,IAAI,cAAc,CAAC,OAAO,CAAC;IAEhC,MAAM,EAAC,eAAe,EAAE,MAAM,EAAE,eAAe,EAAC,GAAG,OAAO,CAAC;IAE3D,IAAI,CAAC,eAAe,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACxC,OAAO;YACL,QAAQ,EAAE,eAAe;YACzB,OAAO,EAAE,cAAc;SACxB,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,cAAc,GAAG,SAAS,CAAC,QAAQ,CAAC;IAC1C,MAAM,mBAAmB,GAAG,cAAc,CAAC,QAAQ,CAAC,gBAAgB,CAAC;QACnE,CAAC,CAAC,cAAc;aACX,SAAS,CAAC,CAAC,EAAE,cAAc,CAAC,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC;aAC7D,WAAW,EAAE;QAClB,CAAC,CAAC,cAAc,CAAC;IACnB,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC;IACpD,MAAM,QAAQ,GAAG,eAAe,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;IAChE,MAAM,OAAO,GAAG,IAAI,UAAU,CAAC;QAC7B,IAAI,kBAAkB,CAAC,cAAc,EAAE,eAAe,CAAC;QACvD,IAAI,kBAAkB,CACpB,oBAAoB,CAAC;YACnB,OAAO,EAAE,mBAAmB;YAC5B,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,OAAO;YACP,OAAO;SACR,CAAC,EACF,iBAAiB,CAClB;KACF,CAAC,CAAC;IACH,OAAO;QACL,QAAQ;QACR,OAAO;KACR,CAAC;AACJ,CAAC"}
@@ -1,268 +0,0 @@
1
- export var MetricName;
2
- (function (MetricName) {
3
- MetricName["TimeToConnectMs"] = "time_to_connect_ms";
4
- MetricName["LastConnectError"] = "last_connect_error";
5
- MetricName["TimeToConnectMsV2"] = "time_to_connect_ms_v2";
6
- MetricName["LastConnectErrorV2"] = "last_connect_error_v2";
7
- MetricName["TotalTimeToConnectMs"] = "total_time_to_connect_ms";
8
- MetricName["NotConnected"] = "not_connected";
9
- })(MetricName || (MetricName = {}));
10
- // This value is used to indicate that the client's last connection attempt
11
- // failed. We don't make this -1 because we want to stack this never connected
12
- // state in a graph on top of actual connection times, so it should be greater
13
- // than any other value.
14
- export const DID_NOT_CONNECT_VALUE = 100 * 1000;
15
- export const REPORT_INTERVAL_MS = 5_000;
16
- export function getLastConnectErrorValue(reason) {
17
- if ('server' in reason) {
18
- return `server_${camelToSnake(reason.server)}`;
19
- }
20
- return `client_${camelToSnake(reason.client)}`;
21
- }
22
- // camelToSnake is used to convert a protocol ErrorKind into a suitable
23
- // metric name, eg AuthInvalidated => auth_invalidated. It converts
24
- // both PascalCase and camelCase to snake_case.
25
- function camelToSnake(s) {
26
- return s
27
- .split(/\.?(?=[A-Z])/)
28
- .join('_')
29
- .toLowerCase();
30
- }
31
- /**
32
- * MetricManager keeps track of the set of metrics in use and flushes them
33
- * to a format suitable for reporting.
34
- */
35
- export class MetricManager {
36
- #reportIntervalMs;
37
- #host;
38
- #reporter;
39
- #lc;
40
- #timerID;
41
- constructor(opts) {
42
- this.#reportIntervalMs = opts.reportIntervalMs;
43
- this.#host = opts.host;
44
- this.#reporter = opts.reporter;
45
- this.#lc = opts.lc;
46
- this.tags.push(`source:${opts.source}`);
47
- this.timeToConnectMs.set(DID_NOT_CONNECT_VALUE);
48
- this.#setNotConnectedReason('init');
49
- this.#timerID = setInterval(() => {
50
- void this.flush();
51
- }, this.#reportIntervalMs);
52
- }
53
- #metrics = [];
54
- // timeToConnectMs measures the time from the call to connect() to receiving
55
- // the 'connected' ws message. We record the DID_NOT_CONNECT_VALUE if the previous
56
- // connection attempt failed for any reason.
57
- //
58
- // We set the gauge using #connectStart as follows:
59
- // - #connectStart is undefined if we are disconnected or connected; it is
60
- // defined only in the Connecting state, as a number representing the timestamp
61
- // at which we started connecting.
62
- // - #connectStart is set to the current time when connect() is called.
63
- // - When we receive the 'connected' message we record the time to connect and
64
- // set #connectStart to undefined.
65
- // - If disconnect() is called with a defined #connectStart then we record
66
- // DID_NOT_CONNECT_VALUE and set #connectStart to undefined.
67
- //
68
- // TODO It's clear after playing with the connection code we should encapsulate
69
- // the ConnectionState along with its state transitions and possibly behavior.
70
- // In that world the metric gauge(s) and bookkeeping like #connectStart would
71
- // be encapsulated with the ConnectionState. This will probably happen as part
72
- // of https://github.com/rocicorp/reflect-server/issues/255.
73
- timeToConnectMs = this.#register(new Gauge(MetricName.TimeToConnectMs));
74
- // lastConnectError records the last error that occurred when connecting,
75
- // if any. It is cleared when connecting successfully or when reported, so this
76
- // state only gets reported if there was a failure during the reporting period and
77
- // we are still not connected.
78
- lastConnectError = this.#register(new State(MetricName.LastConnectError, true));
79
- // notConnected records the reason why the client is not currently connected.
80
- // It is cleared when the client successfully connects.
81
- #notConnected = this.#register(new State(MetricName.NotConnected));
82
- // The time from the call to connect() to receiving the 'connected' ws message
83
- // for the current connection. Cleared when the client is not connected.
84
- // TODO: Not actually currently cleared on disconnect untill there is a
85
- // connect error, or client reports disconnected and waiting for visible.
86
- // Should have a value iff _notConnected has no value.
87
- #timeToConnectMsV2 = this.#register(new Gauge(MetricName.TimeToConnectMsV2));
88
- // lastConnectErrorV2 records the last error that occurred when connecting,
89
- // if any. It is cleared when the client successfully connects or
90
- // stops trying to connect due to being hidden.
91
- // Should have a value iff notConnected state is NotConnectedReason.Error.
92
- #lastConnectErrorV2 = this.#register(new State(MetricName.LastConnectErrorV2));
93
- // The total time it took to connect across retries for the current
94
- // connection. Cleared when the client is not connected.
95
- // TODO: Not actually currently cleared on disconnect until there is a
96
- // connect error, or client reports disconnected and waiting for visible.
97
- // See Zero.#totalToConnectStart for details of how this total is computed.
98
- // Should have a value iff _notConnected has no value.
99
- #totalTimeToConnectMs = this.#register(new Gauge(MetricName.TotalTimeToConnectMs));
100
- #setNotConnectedReason(reason) {
101
- this.#notConnected.set(reason);
102
- }
103
- setConnected(timeToConnectMs, totalTimeToConnectMs) {
104
- this.#notConnected.clear();
105
- this.#lastConnectErrorV2.clear();
106
- this.#timeToConnectMsV2.set(timeToConnectMs);
107
- this.#totalTimeToConnectMs.set(totalTimeToConnectMs);
108
- }
109
- setDisconnectedWaitingForVisible() {
110
- this.#timeToConnectMsV2.clear();
111
- this.#totalTimeToConnectMs.clear();
112
- this.#lastConnectErrorV2.clear();
113
- let notConnectedReason;
114
- switch (this.#notConnected.get()) {
115
- case 'init':
116
- notConnectedReason = 'hidden_was_init';
117
- break;
118
- case 'error':
119
- notConnectedReason = 'hidden_was_error';
120
- break;
121
- default:
122
- notConnectedReason = 'hidden';
123
- break;
124
- }
125
- this.#setNotConnectedReason(notConnectedReason);
126
- }
127
- setConnectError(reason) {
128
- this.#timeToConnectMsV2.clear();
129
- this.#totalTimeToConnectMs.clear();
130
- this.#setNotConnectedReason('error');
131
- this.#lastConnectErrorV2.set(getLastConnectErrorValue(reason));
132
- }
133
- /**
134
- * Tags to include in all metrics.
135
- */
136
- tags = [];
137
- // Flushes all metrics to an array of time series (plural), one Series
138
- // per metric.
139
- async flush() {
140
- const lc = this.#lc;
141
- if (this.#timerID === null) {
142
- lc.error?.('MetricManager.flush() called but already stopped');
143
- return;
144
- }
145
- const allSeries = [];
146
- for (const metric of this.#metrics) {
147
- const series = metric.flush();
148
- if (series !== undefined) {
149
- allSeries.push({
150
- ...series,
151
- host: this.#host,
152
- tags: this.tags,
153
- });
154
- }
155
- }
156
- if (allSeries.length === 0) {
157
- lc?.debug?.('No metrics to report');
158
- return;
159
- }
160
- try {
161
- await this.#reporter(allSeries);
162
- }
163
- catch (e) {
164
- lc?.error?.(`Error reporting metrics: ${e}`);
165
- }
166
- }
167
- stop() {
168
- if (this.#timerID === null) {
169
- this.#lc.error?.('MetricManager.stop() called but already stopped');
170
- return;
171
- }
172
- clearInterval(this.#timerID);
173
- this.#timerID = null;
174
- }
175
- #register(metric) {
176
- this.#metrics.push(metric);
177
- return metric;
178
- }
179
- }
180
- function makePoint(ts, value) {
181
- return [ts, [value]];
182
- }
183
- /**
184
- * Gauge is a metric type that represents a single value that can go up and
185
- * down. It's typically used to track discrete values or counts eg the number
186
- * of active users, number of connections, cpu load, etc. A gauge retains
187
- * its value when flushed.
188
- *
189
- * We use a Gauge to sample at the client. If we are interested in tracking
190
- * a metric value *per client*, the client can note the latest value in
191
- * a Gauge metric. The metric is periodically reported via Reporter. On the
192
- * server, we graph the value of the metric rolled up over the periodic
193
- * reporting period, that is, counted over a span of time equal to the
194
- * reporting period. The result is ~one point per client per reporting
195
- * period.
196
- */
197
- export class Gauge {
198
- #name;
199
- #value = undefined;
200
- constructor(name) {
201
- this.#name = name;
202
- }
203
- set(value) {
204
- this.#value = value;
205
- }
206
- get() {
207
- return this.#value;
208
- }
209
- clear() {
210
- this.#value = undefined;
211
- }
212
- flush() {
213
- if (this.#value === undefined) {
214
- return undefined;
215
- }
216
- // Gauge reports the timestamp at flush time, not at the point the value was
217
- // recorded.
218
- const points = [makePoint(t(), this.#value)];
219
- return { metric: this.#name, points };
220
- }
221
- }
222
- function t() {
223
- return Math.round(Date.now() / 1000);
224
- }
225
- /**
226
- * State is a metric type that represents a specific state that the system is
227
- * in, for example the state of a connection which may be 'open' or 'closed'.
228
- * The state is given a name/prefix at construction time (eg 'connection') and
229
- * then can be set to a specific state (eg 'open'). The prefix is prepended to
230
- * the set state (eg, 'connection_open') and a value of 1 is reported.
231
- * Unset/cleared states are not reported.
232
- *
233
- * Example:
234
- * const s = new State('connection');
235
- * s.set('open');
236
- * s.flush(); // returns {metric: 'connection_open', points: [[now(), [1]]]}
237
- */
238
- export class State {
239
- #prefix;
240
- #clearOnFlush;
241
- #current = undefined;
242
- constructor(prefix, clearOnFlush = false) {
243
- this.#prefix = prefix;
244
- this.#clearOnFlush = clearOnFlush;
245
- }
246
- set(state) {
247
- this.#current = state;
248
- }
249
- get() {
250
- return this.#current;
251
- }
252
- clear() {
253
- this.#current = undefined;
254
- }
255
- flush() {
256
- if (this.#current === undefined) {
257
- return undefined;
258
- }
259
- const gauge = new Gauge([this.#prefix, this.#current].join('_'));
260
- gauge.set(1);
261
- const series = gauge.flush();
262
- if (this.#clearOnFlush) {
263
- this.clear();
264
- }
265
- return series;
266
- }
267
- }
268
- //# sourceMappingURL=metrics.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../../../../zero-client/src/client/metrics.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=options.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"options.js","sourceRoot":"","sources":["../../../../../zero-client/src/client/options.ts"],"names":[],"mappings":""}
@@ -1,146 +0,0 @@
1
- import { must } from '../../../shared/src/must.js';
2
- import { hashOfAST } from '../../../zero-protocol/src/ast-hash.js';
3
- import { normalizeAST } from '../../../zero-protocol/src/ast.js';
4
- import { desiredQueriesPrefixForClient, GOT_QUERIES_KEY_PREFIX } from './keys.js';
5
- /**
6
- * Tracks what queries the client is currently subscribed to on the server.
7
- * Sends `changeDesiredQueries` message to server when this changes.
8
- * Deduplicates requests so that we only listen to a given unique query once.
9
- */
10
- export class QueryManager {
11
- #clientID;
12
- #send;
13
- #queries = new Map();
14
- #gotQueries = new Set();
15
- constructor(clientID, send, experimentalWatch) {
16
- this.#clientID = clientID;
17
- this.#send = send;
18
- experimentalWatch(diff => {
19
- for (const diffOp of diff) {
20
- const queryHash = diffOp.key.substring(GOT_QUERIES_KEY_PREFIX.length);
21
- switch (diffOp.op) {
22
- case 'add':
23
- this.#gotQueries.add(queryHash);
24
- this.#fireGotCallbacks(queryHash, true);
25
- break;
26
- case 'del':
27
- this.#gotQueries.delete(queryHash);
28
- this.#fireGotCallbacks(queryHash, false);
29
- break;
30
- }
31
- }
32
- }, {
33
- prefix: GOT_QUERIES_KEY_PREFIX,
34
- initialValuesInFirstDiff: true,
35
- });
36
- }
37
- #fireGotCallbacks(queryHash, got) {
38
- const gotCallbacks = this.#queries.get(queryHash)?.gotCallbacks ?? [];
39
- for (const gotCallback of gotCallbacks) {
40
- gotCallback(got);
41
- }
42
- }
43
- /**
44
- * Get the queries that need to be registered with the server.
45
- *
46
- * An optional `lastPatch` can be provided. This is the last patch that was
47
- * sent to the server and may not yet have been acked. If `lastPatch` is provided,
48
- * this method will return a patch that does not include any events sent in `lastPatch`.
49
- *
50
- * This diffing of last patch and current patch is needed since we send
51
- * a set of queries to the server when we first connect inside of the `sec-protocol` as
52
- * the `initConnectionMessage`.
53
- *
54
- * While we're waiting for the `connected` response to come back from the server,
55
- * the client may have registered more queries. We need to diff the `initConnectionMessage`
56
- * queries with the current set of queries to understand what those were.
57
- */
58
- async getQueriesPatch(tx, lastPatch) {
59
- const existingQueryHashes = new Set();
60
- const prefix = desiredQueriesPrefixForClient(this.#clientID);
61
- for await (const key of tx.scan({ prefix }).keys()) {
62
- existingQueryHashes.add(key.substring(prefix.length, key.length));
63
- }
64
- const patch = new Map();
65
- for (const hash of existingQueryHashes) {
66
- if (!this.#queries.has(hash)) {
67
- patch.set(hash, { op: 'del', hash });
68
- }
69
- }
70
- for (const [hash, { normalized }] of this.#queries) {
71
- if (!existingQueryHashes.has(hash)) {
72
- patch.set(hash, { op: 'put', hash, ast: normalized });
73
- }
74
- }
75
- if (lastPatch) {
76
- // if there are any `puts` in `lastPatch` that are not in `patch` then we need to
77
- // send a `del` event in `patch`.
78
- for (const [hash, { op }] of lastPatch) {
79
- if (op === 'put' && !patch.has(hash)) {
80
- patch.set(hash, { op: 'del', hash });
81
- }
82
- }
83
- // Remove everything from `patch` that was already sent in `lastPatch`.
84
- for (const [hash, { op }] of patch) {
85
- const lastPatchOp = lastPatch.get(hash);
86
- if (lastPatchOp && lastPatchOp.op === op) {
87
- patch.delete(hash);
88
- }
89
- }
90
- }
91
- return patch;
92
- }
93
- add(ast, gotCallback) {
94
- const normalized = normalizeAST(ast);
95
- const astHash = hashOfAST(normalized);
96
- let entry = this.#queries.get(astHash);
97
- if (!entry) {
98
- entry = {
99
- normalized,
100
- count: 1,
101
- gotCallbacks: gotCallback === undefined ? [] : [gotCallback],
102
- };
103
- this.#queries.set(astHash, entry);
104
- this.#send([
105
- 'changeDesiredQueries',
106
- {
107
- desiredQueriesPatch: [{ op: 'put', hash: astHash, ast: normalized }],
108
- },
109
- ]);
110
- }
111
- else {
112
- ++entry.count;
113
- if (gotCallback) {
114
- entry.gotCallbacks.push(gotCallback);
115
- }
116
- }
117
- if (gotCallback) {
118
- queueMicrotask(() => {
119
- gotCallback(this.#gotQueries.has(astHash));
120
- });
121
- }
122
- let removed = false;
123
- return () => {
124
- if (removed) {
125
- return;
126
- }
127
- removed = true;
128
- this.#remove(astHash);
129
- };
130
- }
131
- #remove(astHash) {
132
- const entry = must(this.#queries.get(astHash));
133
- --entry.count;
134
- if (entry.count === 0) {
135
- this.#queries.delete(astHash);
136
- this.#send([
137
- 'changeDesiredQueries',
138
- {
139
- desiredQueriesPatch: [{ op: 'del', hash: astHash }],
140
- },
141
- ]);
142
- }
143
- return true;
144
- }
145
- }
146
- //# sourceMappingURL=query-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"query-manager.js","sourceRoot":"","sources":["../../../../../zero-client/src/client/query-manager.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,IAAI,EAAC,MAAM,6BAA6B,CAAC;AACjD,OAAO,EAAC,SAAS,EAAC,MAAM,wCAAwC,CAAC;AACjE,OAAO,EAAC,YAAY,EAAW,MAAM,mCAAmC,CAAC;AAOzE,OAAO,EAAC,6BAA6B,EAAE,sBAAsB,EAAC,MAAM,WAAW,CAAC;AAIhF;;;;GAIG;AACH,MAAM,OAAO,YAAY;IACd,SAAS,CAAW;IACpB,KAAK,CAAgD;IACrD,QAAQ,GAGb,IAAI,GAAG,EAAE,CAAC;IACL,WAAW,GAAgB,IAAI,GAAG,EAAE,CAAC;IAE9C,YACE,QAAkB,EAClB,IAAmD,EACnD,iBAA2E;QAE3E,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,iBAAiB,CACf,IAAI,CAAC,EAAE;YACL,KAAK,MAAM,MAAM,IAAI,IAAI,EAAE,CAAC;gBAC1B,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC;gBACtE,QAAQ,MAAM,CAAC,EAAE,EAAE,CAAC;oBAClB,KAAK,KAAK;wBACR,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;wBAChC,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;wBACxC,MAAM;oBACR,KAAK,KAAK;wBACR,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;wBACnC,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;wBACzC,MAAM;gBACV,CAAC;YACH,CAAC;QACH,CAAC,EACD;YACE,MAAM,EAAE,sBAAsB;YAC9B,wBAAwB,EAAE,IAAI;SAC/B,CACF,CAAC;IACJ,CAAC;IAED,iBAAiB,CAAC,SAAiB,EAAE,GAAY;QAC/C,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,YAAY,IAAI,EAAE,CAAC;QACtE,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;YACvC,WAAW,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,KAAK,CAAC,eAAe,CACnB,EAAmB,EACnB,SAAmD;QAEnD,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAU,CAAC;QAC9C,MAAM,MAAM,GAAG,6BAA6B,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC7D,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,EAAE,CAAC,IAAI,CAAC,EAAC,MAAM,EAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;YACjD,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;QACpE,CAAC;QACD,MAAM,KAAK,GAAgC,IAAI,GAAG,EAAE,CAAC;QACrD,KAAK,MAAM,IAAI,IAAI,mBAAmB,EAAE,CAAC;YACvC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC7B,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,EAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAC,CAAC,CAAC;YACrC,CAAC;QACH,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,EAAE,EAAC,UAAU,EAAC,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACjD,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,EAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,UAAU,EAAC,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;QAED,IAAI,SAAS,EAAE,CAAC;YACd,iFAAiF;YACjF,iCAAiC;YACjC,KAAK,MAAM,CAAC,IAAI,EAAE,EAAC,EAAE,EAAC,CAAC,IAAI,SAAS,EAAE,CAAC;gBACrC,IAAI,EAAE,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;oBACrC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,EAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAC,CAAC,CAAC;gBACrC,CAAC;YACH,CAAC;YACD,uEAAuE;YACvE,KAAK,MAAM,CAAC,IAAI,EAAE,EAAC,EAAE,EAAC,CAAC,IAAI,KAAK,EAAE,CAAC;gBACjC,MAAM,WAAW,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACxC,IAAI,WAAW,IAAI,WAAW,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC;oBACzC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACrB,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,GAAG,CAAC,GAAQ,EAAE,WAAqC;QACjD,MAAM,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;QACrC,MAAM,OAAO,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC;QACtC,IAAI,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACvC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,KAAK,GAAG;gBACN,UAAU;gBACV,KAAK,EAAE,CAAC;gBACR,YAAY,EAAE,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;aAC7D,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAElC,IAAI,CAAC,KAAK,CAAC;gBACT,sBAAsB;gBACtB;oBACE,mBAAmB,EAAE,CAAC,EAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,UAAU,EAAC,CAAC;iBACnE;aACF,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,EAAE,KAAK,CAAC,KAAK,CAAC;YACd,IAAI,WAAW,EAAE,CAAC;gBAChB,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;QAED,IAAI,WAAW,EAAE,CAAC;YAChB,cAAc,CAAC,GAAG,EAAE;gBAClB,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;YAC7C,CAAC,CAAC,CAAC;QACL,CAAC;QAED,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,OAAO,GAAG,EAAE;YACV,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAO;YACT,CAAC;YACD,OAAO,GAAG,IAAI,CAAC;YACf,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACxB,CAAC,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,OAAe;QACrB,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;QAC/C,EAAE,KAAK,CAAC,KAAK,CAAC;QACd,IAAI,KAAK,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;YACtB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC9B,IAAI,CAAC,KAAK,CAAC;gBACT,sBAAsB;gBACtB;oBACE,mBAAmB,EAAE,CAAC,EAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAC,CAAC;iBAClD;aACF,CAAC,CAAC;QACL,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
@@ -1,23 +0,0 @@
1
- export const RELOAD_REASON_STORAGE_KEY = '_zeroReloadReason';
2
- // TODO: This should get pushed down into Replicache and used for reloads we
3
- // do there.
4
- export function reloadWithReason(lc, reload, reason) {
5
- if (typeof localStorage === 'undefined') {
6
- lc.error?.('Zero reloaded the page.', reason);
7
- }
8
- else {
9
- localStorage[RELOAD_REASON_STORAGE_KEY] = reason;
10
- }
11
- reload();
12
- }
13
- export function reportReloadReason(lc) {
14
- if (typeof localStorage === 'undefined') {
15
- return;
16
- }
17
- const reason = localStorage[RELOAD_REASON_STORAGE_KEY];
18
- if (reason) {
19
- delete localStorage[RELOAD_REASON_STORAGE_KEY];
20
- lc.error?.('Zero reloaded the page.', reason);
21
- }
22
- }
23
- //# sourceMappingURL=reload-error-handler.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"reload-error-handler.js","sourceRoot":"","sources":["../../../../../zero-client/src/client/reload-error-handler.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,yBAAyB,GAAG,mBAAmB,CAAC;AAE7D,4EAA4E;AAC5E,YAAY;AACZ,MAAM,UAAU,gBAAgB,CAC9B,EAAc,EACd,MAAkB,EAClB,MAAc;IAEd,IAAI,OAAO,YAAY,KAAK,WAAW,EAAE,CAAC;QACxC,EAAE,CAAC,KAAK,EAAE,CAAC,yBAAyB,EAAE,MAAM,CAAC,CAAC;IAChD,CAAC;SAAM,CAAC;QACN,YAAY,CAAC,yBAAyB,CAAC,GAAG,MAAM,CAAC;IACnD,CAAC;IACD,MAAM,EAAE,CAAC;AACX,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,EAAc;IAC/C,IAAI,OAAO,YAAY,KAAK,WAAW,EAAE,CAAC;QACxC,OAAO;IACT,CAAC;IACD,MAAM,MAAM,GAAG,YAAY,CAAC,yBAAyB,CAAC,CAAC;IACvD,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,YAAY,CAAC,yBAAyB,CAAC,CAAC;QAC/C,EAAE,CAAC,KAAK,EAAE,CAAC,yBAAyB,EAAE,MAAM,CAAC,CAAC;IAChD,CAAC;AACH,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=replicache-types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"replicache-types.js","sourceRoot":"","sources":["../../../../../zero-client/src/client/replicache-types.ts"],"names":[],"mappings":""}
@@ -1,22 +0,0 @@
1
- import { ErrorKind } from '../../../zero-protocol/src/mod.js';
2
- /**
3
- * Represents an error sent by server as part of Zero protocol.
4
- */
5
- export class ServerError extends Error {
6
- kind;
7
- name = 'ServerError';
8
- constructor(kind, message) {
9
- super(kind + ': ' + message);
10
- this.kind = kind;
11
- }
12
- }
13
- export function isServerError(ex) {
14
- return ex instanceof ServerError;
15
- }
16
- export function isAuthError(ex) {
17
- return isServerError(ex) && isAuthErrorKind(ex.kind);
18
- }
19
- function isAuthErrorKind(kind) {
20
- return kind === ErrorKind.AuthInvalidated || kind === ErrorKind.Unauthorized;
21
- }
22
- //# sourceMappingURL=server-error.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"server-error.js","sourceRoot":"","sources":["../../../../../zero-client/src/client/server-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,mCAAmC,CAAC;AAE5D;;GAEG;AACH,MAAM,OAAO,WAA6C,SAAQ,KAAK;IAC5D,IAAI,CAAI;IACR,IAAI,GAAG,aAAa,CAAC;IAC9B,YAAY,IAAO,EAAE,OAAe;QAClC,KAAK,CAAC,IAAI,GAAG,IAAI,GAAG,OAAO,CAAC,CAAC;QAC7B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF;AAED,MAAM,UAAU,aAAa,CAAC,EAAW;IACvC,OAAO,EAAE,YAAY,WAAW,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,WAAW,CACzB,EAAW;IAIX,OAAO,aAAa,CAAC,EAAE,CAAC,IAAI,eAAe,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;AACvD,CAAC;AAED,SAAS,eAAe,CACtB,IAAe;IAEf,OAAO,IAAI,KAAK,SAAS,CAAC,eAAe,IAAI,IAAI,KAAK,SAAS,CAAC,YAAY,CAAC;AAC/E,CAAC"}