@rocicorp/zero 1.6.0-canary.0 → 1.6.0-canary.10

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 (1777) hide show
  1. package/README.md +28 -3
  2. package/out/_virtual/_@oxc-project_runtime@0.130.0/helpers/usingCtx.js +57 -0
  3. package/out/_virtual/__vite-optional-peer-dep_pg-native_pg.js +13 -0
  4. package/out/_virtual/__vite-optional-peer-dep_pg-native_pg.js.map +1 -0
  5. package/out/_virtual/_rolldown/runtime.js +12 -1
  6. package/out/node_modules/.pnpm/@opentelemetry_semantic-conventions@1.41.1/node_modules/@opentelemetry/semantic-conventions/build/esm/stable_attributes.js +12 -0
  7. package/out/node_modules/.pnpm/@opentelemetry_semantic-conventions@1.41.1/node_modules/@opentelemetry/semantic-conventions/build/esm/stable_attributes.js.map +1 -0
  8. package/out/node_modules/.pnpm/pg-cloudflare@1.3.0/node_modules/pg-cloudflare/dist/empty.js +11 -0
  9. package/out/node_modules/.pnpm/pg-cloudflare@1.3.0/node_modules/pg-cloudflare/dist/empty.js.map +1 -0
  10. package/out/node_modules/.pnpm/pg-connection-string@2.12.0/node_modules/pg-connection-string/index.js +130 -0
  11. package/out/node_modules/.pnpm/pg-connection-string@2.12.0/node_modules/pg-connection-string/index.js.map +1 -0
  12. package/out/node_modules/.pnpm/pg-int8@1.0.1/node_modules/pg-int8/index.js +62 -0
  13. package/out/node_modules/.pnpm/pg-int8@1.0.1/node_modules/pg-int8/index.js.map +1 -0
  14. package/out/node_modules/.pnpm/pg-pool@3.13.0_pg@8.20.0/node_modules/pg-pool/index.js +353 -0
  15. package/out/node_modules/.pnpm/pg-pool@3.13.0_pg@8.20.0/node_modules/pg-pool/index.js.map +1 -0
  16. package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/buffer-reader.js +60 -0
  17. package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/buffer-reader.js.map +1 -0
  18. package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/buffer-writer.js +81 -0
  19. package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/buffer-writer.js.map +1 -0
  20. package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/index.js +35 -0
  21. package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/index.js.map +1 -0
  22. package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/messages.js +167 -0
  23. package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/messages.js.map +1 -0
  24. package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/parser.js +288 -0
  25. package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/parser.js.map +1 -0
  26. package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/serializer.js +177 -0
  27. package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/serializer.js.map +1 -0
  28. package/out/node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/index.js +46 -0
  29. package/out/node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/index.js.map +1 -0
  30. package/out/node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/lib/arrayParser.js +16 -0
  31. package/out/node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/lib/arrayParser.js.map +1 -0
  32. package/out/node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/lib/binaryParsers.js +165 -0
  33. package/out/node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/lib/binaryParsers.js.map +1 -0
  34. package/out/node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/lib/builtins.js +81 -0
  35. package/out/node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/lib/builtins.js.map +1 -0
  36. package/out/node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/lib/textParsers.js +167 -0
  37. package/out/node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/lib/textParsers.js.map +1 -0
  38. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/esm/index.js +19 -0
  39. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/esm/index.js.map +1 -0
  40. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/client.js +508 -0
  41. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/client.js.map +1 -0
  42. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/connection-parameters.js +104 -0
  43. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/connection-parameters.js.map +1 -0
  44. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/connection.js +160 -0
  45. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/connection.js.map +1 -0
  46. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/crypto/cert-signatures.js +97 -0
  47. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/crypto/cert-signatures.js.map +1 -0
  48. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/crypto/sasl.js +131 -0
  49. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/crypto/sasl.js.map +1 -0
  50. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/crypto/utils-legacy.js +39 -0
  51. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/crypto/utils-legacy.js.map +1 -0
  52. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/crypto/utils-webcrypto.js +89 -0
  53. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/crypto/utils-webcrypto.js.map +1 -0
  54. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/crypto/utils.js +13 -0
  55. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/crypto/utils.js.map +1 -0
  56. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/defaults.js +46 -0
  57. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/defaults.js.map +1 -0
  58. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/index.js +71 -0
  59. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/index.js.map +1 -0
  60. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/native/client.js +226 -0
  61. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/native/client.js.map +1 -0
  62. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/native/index.js +11 -0
  63. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/native/index.js.map +1 -0
  64. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/native/query.js +117 -0
  65. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/native/query.js.map +1 -0
  66. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/query.js +151 -0
  67. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/query.js.map +1 -0
  68. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/result.js +76 -0
  69. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/result.js.map +1 -0
  70. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/stream.js +73 -0
  71. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/stream.js.map +1 -0
  72. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/type-overrides.js +35 -0
  73. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/type-overrides.js.map +1 -0
  74. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/utils.js +118 -0
  75. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/utils.js.map +1 -0
  76. package/out/node_modules/.pnpm/pgpass@1.0.5/node_modules/pgpass/lib/helper.js +147 -0
  77. package/out/node_modules/.pnpm/pgpass@1.0.5/node_modules/pgpass/lib/helper.js.map +1 -0
  78. package/out/node_modules/.pnpm/pgpass@1.0.5/node_modules/pgpass/lib/index.js +21 -0
  79. package/out/node_modules/.pnpm/pgpass@1.0.5/node_modules/pgpass/lib/index.js.map +1 -0
  80. package/out/node_modules/.pnpm/postgres-array@2.0.0/node_modules/postgres-array/index.js +84 -0
  81. package/out/node_modules/.pnpm/postgres-array@2.0.0/node_modules/postgres-array/index.js.map +1 -0
  82. package/out/node_modules/.pnpm/postgres-bytea@1.0.1/node_modules/postgres-bytea/index.js +28 -0
  83. package/out/node_modules/.pnpm/postgres-bytea@1.0.1/node_modules/postgres-bytea/index.js.map +1 -0
  84. package/out/node_modules/.pnpm/postgres-date@1.0.7/node_modules/postgres-date/index.js +65 -0
  85. package/out/node_modules/.pnpm/postgres-date@1.0.7/node_modules/postgres-date/index.js.map +1 -0
  86. package/out/node_modules/.pnpm/postgres-interval@1.2.0/node_modules/postgres-interval/index.js +107 -0
  87. package/out/node_modules/.pnpm/postgres-interval@1.2.0/node_modules/postgres-interval/index.js.map +1 -0
  88. package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react-jsx-runtime.development.js +696 -0
  89. package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react-jsx-runtime.development.js.map +1 -0
  90. package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react-jsx-runtime.production.min.js +44 -0
  91. package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react-jsx-runtime.production.min.js.map +1 -0
  92. package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react.development.js +1585 -0
  93. package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react.development.js.map +1 -0
  94. package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react.production.min.js +329 -0
  95. package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react.production.min.js.map +1 -0
  96. package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/index.js +13 -0
  97. package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/index.js.map +1 -0
  98. package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/jsx-runtime.js +13 -0
  99. package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/jsx-runtime.js.map +1 -0
  100. package/out/node_modules/.pnpm/solid-js@1.9.13/node_modules/solid-js/dist/server.js +131 -0
  101. package/out/node_modules/.pnpm/solid-js@1.9.13/node_modules/solid-js/dist/server.js.map +1 -0
  102. package/out/node_modules/.pnpm/solid-js@1.9.13/node_modules/solid-js/store/dist/server.js +96 -0
  103. package/out/node_modules/.pnpm/solid-js@1.9.13/node_modules/solid-js/store/dist/server.js.map +1 -0
  104. package/out/node_modules/.pnpm/split2@4.2.0/node_modules/split2/index.js +95 -0
  105. package/out/node_modules/.pnpm/split2@4.2.0/node_modules/split2/index.js.map +1 -0
  106. package/out/node_modules/.pnpm/xtend@4.0.2/node_modules/xtend/mutable.js +18 -0
  107. package/out/node_modules/.pnpm/xtend@4.0.2/node_modules/xtend/mutable.js.map +1 -0
  108. package/out/packages/analyze-query/src/analyze-cli.js +288 -0
  109. package/out/packages/analyze-query/src/analyze-cli.js.map +1 -0
  110. package/out/packages/analyze-query/src/bin-analyze.js +282 -0
  111. package/out/packages/analyze-query/src/bin-analyze.js.map +1 -0
  112. package/out/packages/analyze-query/src/bin-transform.js.map +1 -0
  113. package/out/packages/ast-to-zql/src/ast-to-zql.js.map +1 -0
  114. package/out/packages/ast-to-zql/src/bin.js.map +1 -0
  115. package/out/packages/ast-to-zql/src/format.js.map +1 -0
  116. package/out/packages/datadog/src/datadog-log-sink.js.map +1 -0
  117. package/out/packages/otel/src/enabled.js.map +1 -0
  118. package/out/packages/otel/src/log-options.js.map +1 -0
  119. package/out/packages/otel/src/maybe-time.js.map +1 -0
  120. package/out/packages/otel/src/span.js.map +1 -0
  121. package/out/packages/otel/src/version.js.map +1 -0
  122. package/out/packages/replicache/src/async-iterable-to-array.js.map +1 -0
  123. package/out/packages/replicache/src/bg-interval.js.map +1 -0
  124. package/out/packages/replicache/src/btree/diff.js.map +1 -0
  125. package/out/packages/replicache/src/btree/node.js.map +1 -0
  126. package/out/packages/replicache/src/btree/read.js.map +1 -0
  127. package/out/packages/replicache/src/btree/splice.js.map +1 -0
  128. package/out/packages/replicache/src/btree/write.js +191 -0
  129. package/out/packages/replicache/src/btree/write.js.map +1 -0
  130. package/out/packages/replicache/src/call-default-fetch.js.map +1 -0
  131. package/out/packages/replicache/src/connection-loop-delegates.js.map +1 -0
  132. package/out/packages/replicache/src/connection-loop.js.map +1 -0
  133. package/out/packages/replicache/src/cookies.js.map +1 -0
  134. package/out/packages/replicache/src/dag/chunk.js.map +1 -0
  135. package/out/packages/replicache/src/dag/gc.js.map +1 -0
  136. package/out/packages/replicache/src/dag/key.js.map +1 -0
  137. package/out/packages/replicache/src/dag/lazy-store.js.map +1 -0
  138. package/out/packages/replicache/src/dag/store-impl.js +157 -0
  139. package/out/packages/replicache/src/dag/store-impl.js.map +1 -0
  140. package/out/packages/replicache/src/dag/store.js.map +1 -0
  141. package/out/packages/replicache/src/dag/visitor.js.map +1 -0
  142. package/out/packages/replicache/src/db/commit.js.map +1 -0
  143. package/out/packages/replicache/src/db/index.js.map +1 -0
  144. package/out/packages/replicache/src/db/read.js.map +1 -0
  145. package/out/packages/replicache/src/db/rebase.js.map +1 -0
  146. package/out/packages/replicache/src/db/write.js.map +1 -0
  147. package/out/packages/replicache/src/deleted-clients.js.map +1 -0
  148. package/out/packages/replicache/src/error-responses.js.map +1 -0
  149. package/out/packages/replicache/src/frozen-json.js.map +1 -0
  150. package/out/packages/replicache/src/get-default-puller.js.map +1 -0
  151. package/out/packages/replicache/src/get-default-pusher.js.map +1 -0
  152. package/out/packages/replicache/src/get-kv-store-provider.js.map +1 -0
  153. package/out/packages/replicache/src/hash.js.map +1 -0
  154. package/out/packages/replicache/src/http-request-info.js.map +1 -0
  155. package/out/packages/replicache/src/index-defs.js.map +1 -0
  156. package/out/packages/replicache/src/kv/expo-sqlite/store.js +57 -0
  157. package/out/packages/replicache/src/kv/expo-sqlite/store.js.map +1 -0
  158. package/out/packages/replicache/src/kv/idb-store-with-mem-fallback.js.map +1 -0
  159. package/out/packages/replicache/src/kv/idb-store.js.map +1 -0
  160. package/out/packages/replicache/src/kv/mem-store.js.map +1 -0
  161. package/out/packages/replicache/src/kv/op-sqlite/store.js +63 -0
  162. package/out/packages/replicache/src/kv/op-sqlite/store.js.map +1 -0
  163. package/out/packages/replicache/src/kv/op-sqlite/types.js.map +1 -0
  164. package/out/packages/replicache/src/kv/read-impl.js.map +1 -0
  165. package/out/packages/replicache/src/kv/sqlite-store.js +301 -0
  166. package/out/packages/replicache/src/kv/sqlite-store.js.map +1 -0
  167. package/out/packages/replicache/src/kv/throw-if-closed.js +23 -0
  168. package/out/packages/replicache/src/kv/throw-if-closed.js.map +1 -0
  169. package/out/packages/replicache/src/kv/write-impl-base.js.map +1 -0
  170. package/out/packages/replicache/src/kv/write-impl.js.map +1 -0
  171. package/out/packages/replicache/src/lazy.js.map +1 -0
  172. package/out/packages/replicache/src/log-options.js.map +1 -0
  173. package/out/packages/replicache/src/make-idb-name.js.map +1 -0
  174. package/out/packages/replicache/src/new-client-channel.js.map +1 -0
  175. package/out/packages/replicache/src/on-persist-channel.js.map +1 -0
  176. package/out/packages/replicache/src/patch-operation.js.map +1 -0
  177. package/out/packages/replicache/src/pending-mutations.js.map +1 -0
  178. package/out/packages/replicache/src/persist/client-gc.js.map +1 -0
  179. package/out/packages/replicache/src/persist/client-group-gc.js.map +1 -0
  180. package/out/packages/replicache/src/persist/client-groups.js +150 -0
  181. package/out/packages/replicache/src/persist/client-groups.js.map +1 -0
  182. package/out/packages/replicache/src/persist/clients.js +289 -0
  183. package/out/packages/replicache/src/persist/clients.js.map +1 -0
  184. package/out/packages/replicache/src/persist/collect-idb-databases.js.map +1 -0
  185. package/out/packages/replicache/src/persist/gather-mem-only-visitor.js.map +1 -0
  186. package/out/packages/replicache/src/persist/gather-not-cached-visitor.js.map +1 -0
  187. package/out/packages/replicache/src/persist/heartbeat.js.map +1 -0
  188. package/out/packages/replicache/src/persist/idb-databases-store-db-name.js.map +1 -0
  189. package/out/packages/replicache/src/persist/idb-databases-store.js.map +1 -0
  190. package/out/packages/replicache/src/persist/make-client-id.js.map +1 -0
  191. package/out/packages/replicache/src/persist/persist.js +124 -0
  192. package/out/packages/replicache/src/persist/persist.js.map +1 -0
  193. package/out/packages/replicache/src/persist/refresh.js.map +1 -0
  194. package/out/packages/replicache/src/process-scheduler.js.map +1 -0
  195. package/out/packages/replicache/src/pusher.js.map +1 -0
  196. package/out/packages/replicache/src/replicache-impl.js.map +1 -0
  197. package/out/packages/replicache/src/report-error.js.map +1 -0
  198. package/out/packages/replicache/src/request-idle.js.map +1 -0
  199. package/out/packages/replicache/src/scan-iterator.js.map +1 -0
  200. package/out/packages/replicache/src/scan-options.js.map +1 -0
  201. package/out/packages/replicache/src/set-interval-with-signal.js.map +1 -0
  202. package/out/packages/replicache/src/subscriptions.js.map +1 -0
  203. package/out/packages/replicache/src/sync/diff.js.map +1 -0
  204. package/out/packages/replicache/src/sync/ids.js.map +1 -0
  205. package/out/packages/replicache/src/sync/patch.js.map +1 -0
  206. package/out/packages/replicache/src/sync/pull-error.js.map +1 -0
  207. package/out/packages/replicache/src/sync/pull.js +169 -0
  208. package/out/packages/replicache/src/sync/pull.js.map +1 -0
  209. package/out/packages/replicache/src/sync/push.js.map +1 -0
  210. package/out/packages/replicache/src/sync/request-id.js.map +1 -0
  211. package/out/packages/replicache/src/sync/sync-head-name.js.map +1 -0
  212. package/out/packages/replicache/src/to-error.js.map +1 -0
  213. package/out/packages/replicache/src/transaction-closed-error.js.map +1 -0
  214. package/out/packages/replicache/src/transactions.js.map +1 -0
  215. package/out/packages/replicache/src/version.js.map +1 -0
  216. package/out/packages/replicache/src/with-transactions.js.map +1 -0
  217. package/out/packages/shared/src/abort-error.js.map +1 -0
  218. package/out/packages/shared/src/arrays.js.map +1 -0
  219. package/out/packages/shared/src/asserts.js.map +1 -0
  220. package/out/packages/shared/src/bigint-json.js.map +1 -0
  221. package/out/packages/shared/src/binary-search.js.map +1 -0
  222. package/out/packages/shared/src/broadcast-channel.js.map +1 -0
  223. package/out/packages/shared/src/browser-env.js.map +1 -0
  224. package/out/packages/shared/src/btree-set.js.map +1 -0
  225. package/out/packages/shared/src/cache.js.map +1 -0
  226. package/out/packages/shared/src/centroid.js.map +1 -0
  227. package/out/packages/shared/src/config.js.map +1 -0
  228. package/out/packages/shared/src/custom-key-map.js.map +1 -0
  229. package/out/packages/shared/src/custom-key-set.js.map +1 -0
  230. package/out/packages/shared/src/deep-clone.js.map +1 -0
  231. package/out/packages/shared/src/deep-merge.js.map +1 -0
  232. package/out/packages/shared/src/document-visible.js.map +1 -0
  233. package/out/packages/shared/src/dotenv.js.map +1 -0
  234. package/out/packages/shared/src/error.js.map +1 -0
  235. package/out/packages/shared/src/has-own.js.map +1 -0
  236. package/out/packages/shared/src/hash.js.map +1 -0
  237. package/out/packages/shared/src/iterables.js.map +1 -0
  238. package/out/packages/shared/src/json-schema.js.map +1 -0
  239. package/out/packages/shared/src/json.js.map +1 -0
  240. package/out/packages/shared/src/logging-test-utils.js.map +1 -0
  241. package/out/packages/shared/src/logging.js.map +1 -0
  242. package/out/packages/shared/src/map.js +39 -0
  243. package/out/packages/shared/src/map.js.map +1 -0
  244. package/out/packages/shared/src/must.js.map +1 -0
  245. package/out/packages/shared/src/navigator.js.map +1 -0
  246. package/out/packages/shared/src/object-traversal.js.map +1 -0
  247. package/out/packages/shared/src/objects.js.map +1 -0
  248. package/out/packages/shared/src/options.js.map +1 -0
  249. package/out/packages/shared/src/parse-big-int.js.map +1 -0
  250. package/out/packages/shared/src/promise-race.js.map +1 -0
  251. package/out/packages/shared/src/queue.js +120 -0
  252. package/out/packages/shared/src/queue.js.map +1 -0
  253. package/out/packages/shared/src/rand.js.map +1 -0
  254. package/out/packages/shared/src/random-uint64.js.map +1 -0
  255. package/out/packages/shared/src/random-values.js.map +1 -0
  256. package/out/packages/shared/src/record-proxy.js.map +1 -0
  257. package/out/packages/shared/src/resolved-promises.js.map +1 -0
  258. package/out/packages/shared/src/ring-buffer.js +109 -0
  259. package/out/packages/shared/src/ring-buffer.js.map +1 -0
  260. package/out/packages/shared/src/sentinels.js.map +1 -0
  261. package/out/packages/shared/src/set-utils.js.map +1 -0
  262. package/out/packages/shared/src/size-of-value.js.map +1 -0
  263. package/out/packages/shared/src/sleep.js.map +1 -0
  264. package/out/packages/shared/src/sorted-entries.js.map +1 -0
  265. package/out/packages/shared/src/string-compare.js.map +1 -0
  266. package/out/packages/shared/src/subscribable.js.map +1 -0
  267. package/out/packages/shared/src/tdigest-schema.js.map +1 -0
  268. package/out/packages/shared/src/tdigest.js.map +1 -0
  269. package/out/packages/shared/src/valita.js +172 -0
  270. package/out/packages/shared/src/valita.js.map +1 -0
  271. package/out/packages/z2s/src/compiler.js.map +1 -0
  272. package/out/packages/z2s/src/sql.js.map +1 -0
  273. package/out/packages/zero/package.js +205 -0
  274. package/out/packages/zero/package.js.map +1 -0
  275. package/out/packages/zero-cache/src/auth/auth.js.map +1 -0
  276. package/out/packages/zero-cache/src/auth/jwt.js.map +1 -0
  277. package/out/packages/zero-cache/src/auth/load-permissions.js.map +1 -0
  278. package/out/packages/zero-cache/src/auth/read-authorizer.js.map +1 -0
  279. package/out/packages/zero-cache/src/auth/write-authorizer.js.map +1 -0
  280. package/out/packages/zero-cache/src/config/network.js.map +1 -0
  281. package/out/packages/zero-cache/src/config/normalize.js.map +1 -0
  282. package/out/packages/zero-cache/src/config/server-context.js.map +1 -0
  283. package/out/packages/zero-cache/src/config/zero-config.js +921 -0
  284. package/out/packages/zero-cache/src/config/zero-config.js.map +1 -0
  285. package/out/packages/zero-cache/src/custom/fetch.js.map +1 -0
  286. package/out/packages/zero-cache/src/custom-queries/transform-query.js.map +1 -0
  287. package/out/packages/zero-cache/src/db/create.js.map +1 -0
  288. package/out/packages/zero-cache/src/db/delete-lite-db.js.map +1 -0
  289. package/out/packages/zero-cache/src/db/lite-tables.js.map +1 -0
  290. package/out/packages/zero-cache/src/db/migration-lite.js +166 -0
  291. package/out/packages/zero-cache/src/db/migration-lite.js.map +1 -0
  292. package/out/packages/zero-cache/src/db/migration.js +139 -0
  293. package/out/packages/zero-cache/src/db/migration.js.map +1 -0
  294. package/out/packages/zero-cache/src/db/mode-enum.js.map +1 -0
  295. package/out/packages/zero-cache/src/db/pg-copy-binary.js.map +1 -0
  296. package/out/packages/zero-cache/src/db/pg-copy.js.map +1 -0
  297. package/out/packages/zero-cache/src/db/pg-to-lite.js.map +1 -0
  298. package/out/packages/zero-cache/src/db/pg-type-parser.js.map +1 -0
  299. package/out/packages/zero-cache/src/db/run-transaction.js.map +1 -0
  300. package/out/packages/zero-cache/src/db/specs.js.map +1 -0
  301. package/out/packages/zero-cache/src/db/statements.js.map +1 -0
  302. package/out/packages/zero-cache/src/db/transaction-pool.js.map +1 -0
  303. package/out/packages/zero-cache/src/db/warmup.js.map +1 -0
  304. package/out/packages/zero-cache/src/observability/events.js.map +1 -0
  305. package/out/packages/zero-cache/src/observability/metrics.js.map +1 -0
  306. package/out/packages/zero-cache/src/scripts/decommission.js.map +1 -0
  307. package/out/packages/zero-cache/src/scripts/deploy-permissions.js.map +1 -0
  308. package/out/packages/zero-cache/src/scripts/permissions.js.map +1 -0
  309. package/out/packages/zero-cache/src/server/anonymous-otel-start.js +306 -0
  310. package/out/packages/zero-cache/src/server/anonymous-otel-start.js.map +1 -0
  311. package/out/packages/zero-cache/src/server/inspector-delegate.js.map +1 -0
  312. package/out/packages/zero-cache/src/server/logging.js.map +1 -0
  313. package/out/packages/zero-cache/src/server/otel-diag-logger.js.map +1 -0
  314. package/out/packages/zero-cache/src/server/otel-log-sink.js.map +1 -0
  315. package/out/packages/zero-cache/src/server/otel-start.js +53 -0
  316. package/out/packages/zero-cache/src/server/otel-start.js.map +1 -0
  317. package/out/packages/zero-cache/src/server/priority-op.js.map +1 -0
  318. package/out/packages/zero-cache/src/server/runner/main.js +11 -0
  319. package/out/packages/zero-cache/src/server/runner/main.js.map +1 -0
  320. package/out/packages/zero-cache/src/server/runner/run-worker.js.map +1 -0
  321. package/out/packages/zero-cache/src/server/runner/runtime.js.map +1 -0
  322. package/out/packages/zero-cache/src/server/runner/zero-dispatcher.js.map +1 -0
  323. package/out/packages/zero-cache/src/server/worker-dispatcher.js.map +1 -0
  324. package/out/packages/zero-cache/src/server/worker-urls.js.map +1 -0
  325. package/out/packages/zero-cache/src/services/analyze.js +72 -0
  326. package/out/packages/zero-cache/src/services/analyze.js.map +1 -0
  327. package/out/packages/zero-cache/src/services/change-source/common/backfill-manager.js.map +1 -0
  328. package/out/packages/zero-cache/src/services/change-source/common/change-stream-multiplexer.js.map +1 -0
  329. package/out/packages/zero-cache/src/services/change-source/common/replica-schema.js.map +1 -0
  330. package/out/packages/zero-cache/src/services/change-source/custom/change-source.js +176 -0
  331. package/out/packages/zero-cache/src/services/change-source/custom/change-source.js.map +1 -0
  332. package/out/packages/zero-cache/src/services/change-source/pg/backfill-metadata.js.map +1 -0
  333. package/out/packages/zero-cache/src/services/change-source/pg/backfill-stream.js +197 -0
  334. package/out/packages/zero-cache/src/services/change-source/pg/backfill-stream.js.map +1 -0
  335. package/out/packages/zero-cache/src/services/change-source/pg/change-source.js +929 -0
  336. package/out/packages/zero-cache/src/services/change-source/pg/change-source.js.map +1 -0
  337. package/out/packages/zero-cache/src/services/change-source/pg/decommission.js.map +1 -0
  338. package/out/packages/zero-cache/src/services/change-source/pg/initial-sync.js +553 -0
  339. package/out/packages/zero-cache/src/services/change-source/pg/initial-sync.js.map +1 -0
  340. package/out/packages/zero-cache/src/services/change-source/pg/logical-replication/binary-reader.js.map +1 -0
  341. package/out/packages/zero-cache/src/services/change-source/pg/logical-replication/pgoutput-parser.js.map +1 -0
  342. package/out/packages/zero-cache/src/services/change-source/pg/logical-replication/stream.js.map +1 -0
  343. package/out/packages/zero-cache/src/services/change-source/pg/lsn.js.map +1 -0
  344. package/out/packages/zero-cache/src/services/change-source/pg/replication-slots.js +162 -0
  345. package/out/packages/zero-cache/src/services/change-source/pg/replication-slots.js.map +1 -0
  346. package/out/packages/zero-cache/src/services/change-source/pg/schema/ddl.js +334 -0
  347. package/out/packages/zero-cache/src/services/change-source/pg/schema/ddl.js.map +1 -0
  348. package/out/packages/zero-cache/src/services/change-source/pg/schema/init.js +155 -0
  349. package/out/packages/zero-cache/src/services/change-source/pg/schema/init.js.map +1 -0
  350. package/out/packages/zero-cache/src/services/change-source/pg/schema/published.js.map +1 -0
  351. package/out/packages/zero-cache/src/services/change-source/pg/schema/shard.js +330 -0
  352. package/out/packages/zero-cache/src/services/change-source/pg/schema/shard.js.map +1 -0
  353. package/out/packages/zero-cache/src/services/change-source/pg/schema/validation.js.map +1 -0
  354. package/out/packages/zero-cache/src/services/change-source/protocol/current/control.js.map +1 -0
  355. package/out/packages/zero-cache/src/services/change-source/protocol/current/data.js +194 -0
  356. package/out/packages/zero-cache/src/services/change-source/protocol/current/data.js.map +1 -0
  357. package/out/packages/zero-cache/src/services/change-source/protocol/current/downstream.js.map +1 -0
  358. package/out/packages/zero-cache/src/services/change-source/protocol/current/json.js.map +1 -0
  359. package/out/packages/zero-cache/src/services/change-source/protocol/current/path.js.map +1 -0
  360. package/out/packages/zero-cache/src/services/change-source/protocol/current/status.js.map +1 -0
  361. package/out/packages/zero-cache/src/services/change-source/protocol/current/upstream.js.map +1 -0
  362. package/out/packages/zero-cache/src/services/change-source/protocol/current.js +56 -0
  363. package/out/packages/zero-cache/src/services/change-source/protocol/current.js.map +1 -0
  364. package/out/packages/zero-cache/src/services/change-streamer/backup-monitor.js.map +1 -0
  365. package/out/packages/zero-cache/src/services/change-streamer/broadcast.js.map +1 -0
  366. package/out/packages/zero-cache/src/services/change-streamer/change-streamer-http.js +158 -0
  367. package/out/packages/zero-cache/src/services/change-streamer/change-streamer-http.js.map +1 -0
  368. package/out/packages/zero-cache/src/services/change-streamer/change-streamer-service.js.map +1 -0
  369. package/out/packages/zero-cache/src/services/change-streamer/change-streamer.js.map +1 -0
  370. package/out/packages/zero-cache/src/services/change-streamer/forwarder.js.map +1 -0
  371. package/out/packages/zero-cache/src/services/change-streamer/replica-monitor.js.map +1 -0
  372. package/out/packages/zero-cache/src/services/change-streamer/schema/init.js +70 -0
  373. package/out/packages/zero-cache/src/services/change-streamer/schema/init.js.map +1 -0
  374. package/out/packages/zero-cache/src/services/change-streamer/schema/tables.js +191 -0
  375. package/out/packages/zero-cache/src/services/change-streamer/schema/tables.js.map +1 -0
  376. package/out/packages/zero-cache/src/services/change-streamer/snapshot.js +42 -0
  377. package/out/packages/zero-cache/src/services/change-streamer/snapshot.js.map +1 -0
  378. package/out/packages/zero-cache/src/services/change-streamer/storer.js.map +1 -0
  379. package/out/packages/zero-cache/src/services/change-streamer/subscriber.js.map +1 -0
  380. package/out/packages/zero-cache/src/services/heapz.js.map +1 -0
  381. package/out/packages/zero-cache/src/services/http-service.js.map +1 -0
  382. package/out/packages/zero-cache/src/services/life-cycle.js +200 -0
  383. package/out/packages/zero-cache/src/services/life-cycle.js.map +1 -0
  384. package/out/packages/zero-cache/src/services/limiter/sliding-window-limiter.js.map +1 -0
  385. package/out/packages/zero-cache/src/services/litestream/commands.js.map +1 -0
  386. package/out/packages/zero-cache/src/services/mutagen/error.js.map +1 -0
  387. package/out/packages/zero-cache/src/services/mutagen/mutagen.js.map +1 -0
  388. package/out/packages/zero-cache/src/services/mutagen/pusher.js.map +1 -0
  389. package/out/packages/zero-cache/src/services/replicator/change-processor.js.map +1 -0
  390. package/out/packages/zero-cache/src/services/replicator/incremental-sync.js.map +1 -0
  391. package/out/packages/zero-cache/src/services/replicator/notifier.js.map +1 -0
  392. package/out/packages/zero-cache/src/services/replicator/replication-status.js.map +1 -0
  393. package/out/packages/zero-cache/src/services/replicator/replicator.js.map +1 -0
  394. package/out/packages/zero-cache/src/services/replicator/reporter/recorder.js.map +1 -0
  395. package/out/packages/zero-cache/src/services/replicator/reporter/report-schema.js.map +1 -0
  396. package/out/packages/zero-cache/src/services/replicator/schema/change-log.js.map +1 -0
  397. package/out/packages/zero-cache/src/services/replicator/schema/column-metadata.js.map +1 -0
  398. package/out/packages/zero-cache/src/services/replicator/schema/constants.js.map +1 -0
  399. package/out/packages/zero-cache/src/services/replicator/schema/replication-state.js.map +1 -0
  400. package/out/packages/zero-cache/src/services/replicator/schema/table-metadata.js.map +1 -0
  401. package/out/packages/zero-cache/src/services/replicator/write-worker-client.js.map +1 -0
  402. package/out/packages/zero-cache/src/services/replicator/write-worker.js.map +1 -0
  403. package/out/packages/zero-cache/src/services/run-ast.js +88 -0
  404. package/out/packages/zero-cache/src/services/run-ast.js.map +1 -0
  405. package/out/packages/zero-cache/src/services/runner.js.map +1 -0
  406. package/out/packages/zero-cache/src/services/running-state.js +139 -0
  407. package/out/packages/zero-cache/src/services/running-state.js.map +1 -0
  408. package/out/packages/zero-cache/src/services/shadow-sync/shadow-sync-service.js +57 -0
  409. package/out/packages/zero-cache/src/services/shadow-sync/shadow-sync-service.js.map +1 -0
  410. package/out/packages/zero-cache/src/services/statz.js.map +1 -0
  411. package/out/packages/zero-cache/src/services/view-syncer/active-users-gauge.js.map +1 -0
  412. package/out/packages/zero-cache/src/services/view-syncer/client-handler.js +270 -0
  413. package/out/packages/zero-cache/src/services/view-syncer/client-handler.js.map +1 -0
  414. package/out/packages/zero-cache/src/services/view-syncer/client-schema.js.map +1 -0
  415. package/out/packages/zero-cache/src/services/view-syncer/connection-context-manager.js.map +1 -0
  416. package/out/packages/zero-cache/src/services/view-syncer/cvr-purger.js +110 -0
  417. package/out/packages/zero-cache/src/services/view-syncer/cvr-purger.js.map +1 -0
  418. package/out/packages/zero-cache/src/services/view-syncer/cvr-store.js.map +1 -0
  419. package/out/packages/zero-cache/src/services/view-syncer/cvr.js.map +1 -0
  420. package/out/packages/zero-cache/src/services/view-syncer/drain-coordinator.js.map +1 -0
  421. package/out/packages/zero-cache/src/services/view-syncer/inspect-handler.js +102 -0
  422. package/out/packages/zero-cache/src/services/view-syncer/inspect-handler.js.map +1 -0
  423. package/out/packages/zero-cache/src/services/view-syncer/pipeline-driver.js +628 -0
  424. package/out/packages/zero-cache/src/services/view-syncer/pipeline-driver.js.map +1 -0
  425. package/out/packages/zero-cache/src/services/view-syncer/row-record-cache.js.map +1 -0
  426. package/out/packages/zero-cache/src/services/view-syncer/row-set-signature.js.map +1 -0
  427. package/out/packages/zero-cache/src/services/view-syncer/schema/cvr.js.map +1 -0
  428. package/out/packages/zero-cache/src/services/view-syncer/schema/init.js +142 -0
  429. package/out/packages/zero-cache/src/services/view-syncer/schema/init.js.map +1 -0
  430. package/out/packages/zero-cache/src/services/view-syncer/schema/types.js +278 -0
  431. package/out/packages/zero-cache/src/services/view-syncer/schema/types.js.map +1 -0
  432. package/out/packages/zero-cache/src/services/view-syncer/snapshotter.js.map +1 -0
  433. package/out/packages/zero-cache/src/services/view-syncer/tracer.js.map +1 -0
  434. package/out/packages/zero-cache/src/services/view-syncer/ttl-clock.js.map +1 -0
  435. package/out/packages/zero-cache/src/services/view-syncer/view-syncer.js +1245 -0
  436. package/out/packages/zero-cache/src/services/view-syncer/view-syncer.js.map +1 -0
  437. package/out/packages/zero-cache/src/types/configuration-error.js +11 -0
  438. package/out/packages/zero-cache/src/types/configuration-error.js.map +1 -0
  439. package/out/packages/zero-cache/src/types/error-with-level.js.map +1 -0
  440. package/out/packages/zero-cache/src/types/http.js.map +1 -0
  441. package/out/packages/zero-cache/src/types/lexi-version.js.map +1 -0
  442. package/out/packages/zero-cache/src/types/lite.js.map +1 -0
  443. package/out/packages/zero-cache/src/types/names.js.map +1 -0
  444. package/out/packages/zero-cache/src/types/pg-data-type.js.map +1 -0
  445. package/out/packages/zero-cache/src/types/pg-types.js.map +1 -0
  446. package/out/packages/zero-cache/src/types/pg-versions.js.map +1 -0
  447. package/out/packages/zero-cache/src/types/pg.js +222 -0
  448. package/out/packages/zero-cache/src/types/pg.js.map +1 -0
  449. package/out/packages/zero-cache/src/types/processes.js.map +1 -0
  450. package/out/packages/zero-cache/src/types/profiler.js.map +1 -0
  451. package/out/packages/zero-cache/src/types/row-key.js.map +1 -0
  452. package/out/packages/zero-cache/src/types/shards.js.map +1 -0
  453. package/out/packages/zero-cache/src/types/sql.js.map +1 -0
  454. package/out/packages/zero-cache/src/types/state-version.js.map +1 -0
  455. package/out/packages/zero-cache/src/types/streams.js.map +1 -0
  456. package/out/packages/zero-cache/src/types/strings.js.map +1 -0
  457. package/out/packages/zero-cache/src/types/subscription.js.map +1 -0
  458. package/out/packages/zero-cache/src/types/timeout.js.map +1 -0
  459. package/out/packages/zero-cache/src/types/url-params.js.map +1 -0
  460. package/out/packages/zero-cache/src/types/websocket-handoff.js.map +1 -0
  461. package/out/packages/zero-cache/src/types/ws.js.map +1 -0
  462. package/out/packages/zero-cache/src/workers/connect-params.js.map +1 -0
  463. package/out/packages/zero-cache/src/workers/connection.js +229 -0
  464. package/out/packages/zero-cache/src/workers/connection.js.map +1 -0
  465. package/out/packages/zero-cache/src/workers/mutator.js.map +1 -0
  466. package/out/packages/zero-cache/src/workers/replicator.js.map +1 -0
  467. package/out/packages/zero-cache/src/workers/syncer-ws-message-handler.js.map +1 -0
  468. package/out/packages/zero-cache/src/workers/syncer.js.map +1 -0
  469. package/out/packages/zero-client/src/client/active-clients-manager.js.map +1 -0
  470. package/out/packages/zero-client/src/client/client-error-kind-enum.js.map +1 -0
  471. package/out/packages/zero-client/src/client/connection-manager.js +296 -0
  472. package/out/packages/zero-client/src/client/connection-manager.js.map +1 -0
  473. package/out/packages/zero-client/src/client/connection-status-enum.js +20 -0
  474. package/out/packages/zero-client/src/client/connection-status-enum.js.map +1 -0
  475. package/out/packages/zero-client/src/client/connection.js.map +1 -0
  476. package/out/packages/zero-client/src/client/context.js.map +1 -0
  477. package/out/packages/zero-client/src/client/crud-impl.js +61 -0
  478. package/out/packages/zero-client/src/client/crud-impl.js.map +1 -0
  479. package/out/packages/zero-client/src/client/crud.js.map +1 -0
  480. package/out/packages/zero-client/src/client/custom.js +64 -0
  481. package/out/packages/zero-client/src/client/custom.js.map +1 -0
  482. package/out/packages/zero-client/src/client/delete-clients-manager.js.map +1 -0
  483. package/out/packages/zero-client/src/client/enable-analytics.js.map +1 -0
  484. package/out/packages/zero-client/src/client/error.js.map +1 -0
  485. package/out/packages/zero-client/src/client/http-string.js.map +1 -0
  486. package/out/packages/zero-client/src/client/inspector/client-group.js.map +1 -0
  487. package/out/packages/zero-client/src/client/inspector/client.js.map +1 -0
  488. package/out/packages/zero-client/src/client/inspector/html-dialog-prompt.js.map +1 -0
  489. package/out/packages/zero-client/src/client/inspector/inspector.js.map +1 -0
  490. package/out/packages/zero-client/src/client/inspector/lazy-inspector.js.map +1 -0
  491. package/out/packages/zero-client/src/client/inspector/query.js.map +1 -0
  492. package/out/packages/zero-client/src/client/ivm-branch.js.map +1 -0
  493. package/out/packages/zero-client/src/client/keys.js.map +1 -0
  494. package/out/packages/zero-client/src/client/log-options.js.map +1 -0
  495. package/out/packages/zero-client/src/client/make-mutate-property.js.map +1 -0
  496. package/out/packages/zero-client/src/client/make-replicache-mutators.js.map +1 -0
  497. package/out/packages/zero-client/src/client/metric-name-enum.js.map +1 -0
  498. package/out/packages/zero-client/src/client/metrics.js.map +1 -0
  499. package/out/packages/zero-client/src/client/mutation-tracker.js.map +1 -0
  500. package/out/packages/zero-client/src/client/mutator-proxy.js.map +1 -0
  501. package/out/packages/zero-client/src/client/options.js.map +1 -0
  502. package/out/packages/zero-client/src/client/query-manager.js.map +1 -0
  503. package/out/packages/zero-client/src/client/reload-error-handler.js.map +1 -0
  504. package/out/packages/zero-client/src/client/server-option.js.map +1 -0
  505. package/out/packages/zero-client/src/client/update-needed-reason-type-enum.js +27 -0
  506. package/out/packages/zero-client/src/client/update-needed-reason-type-enum.js.map +1 -0
  507. package/out/packages/zero-client/src/client/version.js +9 -0
  508. package/out/packages/zero-client/src/client/version.js.map +1 -0
  509. package/out/packages/zero-client/src/client/zero-poke-handler.js.map +1 -0
  510. package/out/packages/zero-client/src/client/zero-rep.js.map +1 -0
  511. package/out/packages/zero-client/src/client/zero.js +1469 -0
  512. package/out/packages/zero-client/src/client/zero.js.map +1 -0
  513. package/out/packages/zero-client/src/util/nanoid.js.map +1 -0
  514. package/out/packages/zero-protocol/src/analyze-query-result.js +123 -0
  515. package/out/packages/zero-protocol/src/analyze-query-result.js.map +1 -0
  516. package/out/packages/zero-protocol/src/application-error.js.map +1 -0
  517. package/out/packages/zero-protocol/src/ast.js.map +1 -0
  518. package/out/packages/zero-protocol/src/change-desired-queries.js +13 -0
  519. package/out/packages/zero-protocol/src/change-desired-queries.js.map +1 -0
  520. package/out/packages/zero-protocol/src/client-schema.js.map +1 -0
  521. package/out/packages/zero-protocol/src/close-connection.js.map +1 -0
  522. package/out/packages/zero-protocol/src/connect.js +54 -0
  523. package/out/packages/zero-protocol/src/connect.js.map +1 -0
  524. package/out/packages/zero-protocol/src/custom-queries.js.map +1 -0
  525. package/out/packages/zero-protocol/src/data.js.map +1 -0
  526. package/out/packages/zero-protocol/src/delete-clients.js.map +1 -0
  527. package/out/packages/zero-protocol/src/down.js.map +1 -0
  528. package/out/packages/zero-protocol/src/error-kind-enum.js.map +1 -0
  529. package/out/packages/zero-protocol/src/error-origin-enum.js.map +1 -0
  530. package/out/packages/zero-protocol/src/error-reason-enum.js.map +1 -0
  531. package/out/packages/zero-protocol/src/error.js +91 -0
  532. package/out/packages/zero-protocol/src/error.js.map +1 -0
  533. package/out/packages/zero-protocol/src/inspect-down.js.map +1 -0
  534. package/out/packages/zero-protocol/src/inspect-up.js +35 -0
  535. package/out/packages/zero-protocol/src/inspect-up.js.map +1 -0
  536. package/out/packages/zero-protocol/src/mutate-server.js.map +1 -0
  537. package/out/packages/zero-protocol/src/mutation-id.js.map +1 -0
  538. package/out/packages/zero-protocol/src/mutation-type-enum.js.map +1 -0
  539. package/out/packages/zero-protocol/src/mutation.js.map +1 -0
  540. package/out/packages/zero-protocol/src/mutations-patch.js.map +1 -0
  541. package/out/packages/zero-protocol/src/ping.js.map +1 -0
  542. package/out/packages/zero-protocol/src/poke.js +63 -0
  543. package/out/packages/zero-protocol/src/poke.js.map +1 -0
  544. package/out/packages/zero-protocol/src/pong.js.map +1 -0
  545. package/out/packages/zero-protocol/src/primary-key.js.map +1 -0
  546. package/out/packages/zero-protocol/src/protocol-version.js.map +1 -0
  547. package/out/packages/zero-protocol/src/pull.js.map +1 -0
  548. package/out/packages/zero-protocol/src/push.js +76 -0
  549. package/out/packages/zero-protocol/src/push.js.map +1 -0
  550. package/out/packages/zero-protocol/src/queries-patch.js.map +1 -0
  551. package/out/packages/zero-protocol/src/query-hash.js.map +1 -0
  552. package/out/packages/zero-protocol/src/query-server.js.map +1 -0
  553. package/out/packages/zero-protocol/src/row-patch.js.map +1 -0
  554. package/out/packages/zero-protocol/src/up.js.map +1 -0
  555. package/out/packages/zero-protocol/src/update-auth.js.map +1 -0
  556. package/out/packages/zero-protocol/src/version.js.map +1 -0
  557. package/out/packages/zero-react/src/use-connection-state.js +19 -0
  558. package/out/packages/zero-react/src/use-connection-state.js.map +1 -0
  559. package/out/packages/zero-react/src/use-query.js +301 -0
  560. package/out/packages/zero-react/src/use-query.js.map +1 -0
  561. package/out/packages/zero-react/src/use-zero-online.js +22 -0
  562. package/out/packages/zero-react/src/use-zero-online.js.map +1 -0
  563. package/out/packages/zero-react/src/zero-provider.js +90 -0
  564. package/out/packages/zero-react/src/zero-provider.js.map +1 -0
  565. package/out/packages/zero-schema/src/builder/relationship-builder.js.map +1 -0
  566. package/out/packages/zero-schema/src/builder/schema-builder.js.map +1 -0
  567. package/out/packages/zero-schema/src/builder/table-builder.js.map +1 -0
  568. package/out/packages/zero-schema/src/compiled-permissions.js.map +1 -0
  569. package/out/packages/zero-schema/src/name-mapper.js.map +1 -0
  570. package/out/packages/zero-schema/src/permissions.js.map +1 -0
  571. package/out/packages/zero-schema/src/schema-config.js.map +1 -0
  572. package/out/packages/zero-server/src/adapters/drizzle.js.map +1 -0
  573. package/out/packages/zero-server/src/adapters/kysely.js.map +1 -0
  574. package/out/packages/zero-server/src/adapters/pg.js +83 -0
  575. package/out/packages/zero-server/src/adapters/pg.js.map +1 -0
  576. package/out/packages/zero-server/src/adapters/postgresjs.js.map +1 -0
  577. package/out/packages/zero-server/src/adapters/prisma.js.map +1 -0
  578. package/out/packages/zero-server/src/custom.js +215 -0
  579. package/out/packages/zero-server/src/custom.js.map +1 -0
  580. package/out/packages/zero-server/src/logging.js.map +1 -0
  581. package/out/packages/zero-server/src/pg-query-executor.js.map +1 -0
  582. package/out/packages/zero-server/src/process-mutations.js.map +1 -0
  583. package/out/packages/zero-server/src/push-processor.js.map +1 -0
  584. package/out/packages/zero-server/src/queries/process-queries.js.map +1 -0
  585. package/out/packages/zero-server/src/schema.js.map +1 -0
  586. package/out/packages/zero-server/src/zql-database.js.map +1 -0
  587. package/out/packages/zero-solid/src/solid-view.js +145 -0
  588. package/out/packages/zero-solid/src/solid-view.js.map +1 -0
  589. package/out/packages/zero-solid/src/use-connection-state.js +21 -0
  590. package/out/packages/zero-solid/src/use-connection-state.js.map +1 -0
  591. package/out/packages/zero-solid/src/use-query.js +64 -0
  592. package/out/packages/zero-solid/src/use-query.js.map +1 -0
  593. package/out/packages/zero-solid/src/use-zero-online.js +21 -0
  594. package/out/packages/zero-solid/src/use-zero-online.js.map +1 -0
  595. package/out/packages/zero-solid/src/use-zero.js +93 -0
  596. package/out/packages/zero-solid/src/use-zero.js.map +1 -0
  597. package/out/packages/zero-types/src/format.js.map +1 -0
  598. package/out/packages/zero-types/src/name-mapper.js.map +1 -0
  599. package/out/packages/zql/src/builder/builder.js +381 -0
  600. package/out/packages/zql/src/builder/builder.js.map +1 -0
  601. package/out/packages/zql/src/builder/debug-delegate.js +81 -0
  602. package/out/packages/zql/src/builder/debug-delegate.js.map +1 -0
  603. package/out/packages/zql/src/builder/filter.js.map +1 -0
  604. package/out/packages/zql/src/builder/like.js.map +1 -0
  605. package/out/packages/zql/src/error.js.map +1 -0
  606. package/out/packages/zql/src/ivm/array-view.js.map +1 -0
  607. package/out/packages/zql/src/ivm/cap.js.map +1 -0
  608. package/out/packages/zql/src/ivm/change.js.map +1 -0
  609. package/out/packages/zql/src/ivm/constraint.js +82 -0
  610. package/out/packages/zql/src/ivm/constraint.js.map +1 -0
  611. package/out/packages/zql/src/ivm/data.js.map +1 -0
  612. package/out/packages/zql/src/ivm/exists.js.map +1 -0
  613. package/out/packages/zql/src/ivm/fan-in.js.map +1 -0
  614. package/out/packages/zql/src/ivm/fan-out.js.map +1 -0
  615. package/out/packages/zql/src/ivm/filter-operators.js.map +1 -0
  616. package/out/packages/zql/src/ivm/filter-push.js.map +1 -0
  617. package/out/packages/zql/src/ivm/filter.js.map +1 -0
  618. package/out/packages/zql/src/ivm/flipped-join.js +307 -0
  619. package/out/packages/zql/src/ivm/flipped-join.js.map +1 -0
  620. package/out/packages/zql/src/ivm/join-utils.js.map +1 -0
  621. package/out/packages/zql/src/ivm/join.js.map +1 -0
  622. package/out/packages/zql/src/ivm/maybe-split-and-push-edit-change.js.map +1 -0
  623. package/out/packages/zql/src/ivm/memory-source.js.map +1 -0
  624. package/out/packages/zql/src/ivm/memory-storage.js.map +1 -0
  625. package/out/packages/zql/src/ivm/operator.js.map +1 -0
  626. package/out/packages/zql/src/ivm/push-accumulated.js.map +1 -0
  627. package/out/packages/zql/src/ivm/skip-yields.js.map +1 -0
  628. package/out/packages/zql/src/ivm/skip.js.map +1 -0
  629. package/out/packages/zql/src/ivm/source.js.map +1 -0
  630. package/out/packages/zql/src/ivm/stream.js.map +1 -0
  631. package/out/packages/zql/src/ivm/take.js.map +1 -0
  632. package/out/packages/zql/src/ivm/union-fan-in.js +165 -0
  633. package/out/packages/zql/src/ivm/union-fan-in.js.map +1 -0
  634. package/out/packages/zql/src/ivm/union-fan-out.js.map +1 -0
  635. package/out/packages/zql/src/ivm/view-apply-change.js.map +1 -0
  636. package/out/packages/zql/src/mutate/crud.js.map +1 -0
  637. package/out/packages/zql/src/mutate/custom.js.map +1 -0
  638. package/out/packages/zql/src/mutate/mutator-registry.js.map +1 -0
  639. package/out/packages/zql/src/mutate/mutator.js.map +1 -0
  640. package/out/packages/zql/src/planner/planner-builder.js.map +1 -0
  641. package/out/packages/zql/src/planner/planner-connection.js.map +1 -0
  642. package/out/packages/zql/src/planner/planner-constraint.js.map +1 -0
  643. package/out/packages/zql/src/planner/planner-debug.js.map +1 -0
  644. package/out/packages/zql/src/planner/planner-fan-in.js.map +1 -0
  645. package/out/packages/zql/src/planner/planner-fan-out.js.map +1 -0
  646. package/out/packages/zql/src/planner/planner-graph.js.map +1 -0
  647. package/out/packages/zql/src/planner/planner-join.js +262 -0
  648. package/out/packages/zql/src/planner/planner-join.js.map +1 -0
  649. package/out/packages/zql/src/planner/planner-node.js.map +1 -0
  650. package/out/packages/zql/src/planner/planner-source.js.map +1 -0
  651. package/out/packages/zql/src/planner/planner-terminus.js.map +1 -0
  652. package/out/packages/zql/src/query/complete-ordering.js.map +1 -0
  653. package/out/packages/zql/src/query/create-builder.js.map +1 -0
  654. package/out/packages/zql/src/query/error.js.map +1 -0
  655. package/out/packages/zql/src/query/escape-like.js.map +1 -0
  656. package/out/packages/zql/src/query/expression.js.map +1 -0
  657. package/out/packages/zql/src/query/measure-push-operator.js.map +1 -0
  658. package/out/packages/zql/src/query/metrics-delegate.js.map +1 -0
  659. package/out/packages/zql/src/query/named.js.map +1 -0
  660. package/out/packages/zql/src/query/query-delegate-base.js.map +1 -0
  661. package/out/packages/zql/src/query/query-impl.js +290 -0
  662. package/out/packages/zql/src/query/query-impl.js.map +1 -0
  663. package/out/packages/zql/src/query/query-internals.js.map +1 -0
  664. package/out/packages/zql/src/query/query-registry.js.map +1 -0
  665. package/out/packages/zql/src/query/runnable-query-impl.js.map +1 -0
  666. package/out/packages/zql/src/query/static-query.js.map +1 -0
  667. package/out/packages/zql/src/query/ttl.js.map +1 -0
  668. package/out/packages/zql/src/query/validate-input.js.map +1 -0
  669. package/out/packages/zqlite/src/database-storage.js.map +1 -0
  670. package/out/packages/zqlite/src/db.js.map +1 -0
  671. package/out/packages/zqlite/src/explain-queries.js.map +1 -0
  672. package/out/packages/zqlite/src/internal/sql-inline.js.map +1 -0
  673. package/out/packages/zqlite/src/internal/sql.js.map +1 -0
  674. package/out/packages/zqlite/src/internal/statement-cache.js.map +1 -0
  675. package/out/packages/zqlite/src/query-builder.js.map +1 -0
  676. package/out/packages/zqlite/src/query-delegate.js.map +1 -0
  677. package/out/packages/zqlite/src/resolve-scalar-subqueries.js.map +1 -0
  678. package/out/packages/zqlite/src/sqlite-cost-model.js.map +1 -0
  679. package/out/packages/zqlite/src/sqlite-stat-fanout.js.map +1 -0
  680. package/out/packages/zqlite/src/table-source.js +313 -0
  681. package/out/packages/zqlite/src/table-source.js.map +1 -0
  682. package/out/replicache/src/dag/store-impl.d.ts.map +1 -1
  683. package/out/replicache/src/kv/expo-sqlite/store.d.ts +1 -1
  684. package/out/replicache/src/kv/expo-sqlite/store.d.ts.map +1 -1
  685. package/out/replicache/src/kv/op-sqlite/store.d.ts.map +1 -1
  686. package/out/replicache/src/kv/sqlite-store.d.ts +6 -6
  687. package/out/replicache/src/kv/sqlite-store.d.ts.map +1 -1
  688. package/out/replicache/src/kv/throw-if-closed.d.ts +1 -0
  689. package/out/replicache/src/kv/throw-if-closed.d.ts.map +1 -1
  690. package/out/replicache/src/persist/persist.d.ts.map +1 -1
  691. package/out/replicache/src/sync/pull.d.ts.map +1 -1
  692. package/out/shared/src/map.d.ts +6 -0
  693. package/out/shared/src/map.d.ts.map +1 -0
  694. package/out/shared/src/queue.d.ts.map +1 -1
  695. package/out/shared/src/ring-buffer.d.ts +32 -0
  696. package/out/shared/src/ring-buffer.d.ts.map +1 -0
  697. package/out/zero/src/adapters/drizzle.js +1 -1
  698. package/out/zero/src/adapters/kysely.js +1 -1
  699. package/out/zero/src/adapters/pg.js +1 -1
  700. package/out/zero/src/adapters/postgresjs.js +1 -1
  701. package/out/zero/src/adapters/prisma.js +1 -1
  702. package/out/zero/src/analyze-query.js +1 -1
  703. package/out/zero/src/analyze.js +1 -1
  704. package/out/zero/src/ast-to-zql.js +1 -1
  705. package/out/zero/src/bindings.js +11 -11
  706. package/out/zero/src/build-schema.js.map +1 -1
  707. package/out/zero/src/change-protocol/v0.js +2 -2
  708. package/out/zero/src/cli.js +1 -1
  709. package/out/zero/src/deploy-permissions.js +1 -1
  710. package/out/zero/src/expo-sqlite.js +2 -2
  711. package/out/zero/src/op-sqlite.js +2 -2
  712. package/out/zero/src/pg.js +9 -9
  713. package/out/zero/src/react-native.js +2 -2
  714. package/out/zero/src/react.js +5 -5
  715. package/out/zero/src/server.js +8 -8
  716. package/out/zero/src/solid.js +5 -5
  717. package/out/zero/src/sqlite.js +2 -2
  718. package/out/zero/src/transform-query.js +1 -1
  719. package/out/zero/src/zero-cache-dev.js +6 -6
  720. package/out/zero/src/zero-cache-dev.js.map +1 -1
  721. package/out/zero/src/zero-out.js +5 -5
  722. package/out/zero/src/zero-out.js.map +1 -1
  723. package/out/zero/src/zero.js +22 -22
  724. package/out/zero/src/zqlite.js +5 -5
  725. package/out/zero-cache/src/server/change-streamer.d.ts.map +1 -1
  726. package/out/zero-cache/src/server/change-streamer.js +38 -32
  727. package/out/zero-cache/src/server/change-streamer.js.map +1 -1
  728. package/out/zero-cache/src/server/main.d.ts.map +1 -1
  729. package/out/zero-cache/src/server/main.js +15 -13
  730. package/out/zero-cache/src/server/main.js.map +1 -1
  731. package/out/zero-cache/src/server/mutator.js +12 -10
  732. package/out/zero-cache/src/server/mutator.js.map +1 -1
  733. package/out/zero-cache/src/server/reaper.d.ts.map +1 -1
  734. package/out/zero-cache/src/server/reaper.js +18 -16
  735. package/out/zero-cache/src/server/reaper.js.map +1 -1
  736. package/out/zero-cache/src/server/replicator.d.ts.map +1 -1
  737. package/out/zero-cache/src/server/replicator.js +20 -18
  738. package/out/zero-cache/src/server/replicator.js.map +1 -1
  739. package/out/zero-cache/src/server/runner/main.d.ts.map +1 -1
  740. package/out/zero-cache/src/server/shadow-syncer.js +16 -13
  741. package/out/zero-cache/src/server/shadow-syncer.js.map +1 -1
  742. package/out/zero-cache/src/server/syncer.d.ts.map +1 -1
  743. package/out/zero-cache/src/server/syncer.js +36 -34
  744. package/out/zero-cache/src/server/syncer.js.map +1 -1
  745. package/out/zero-cache/src/server/write-worker.js +1 -1
  746. package/out/zero-cache/src/services/analyze.d.ts.map +1 -1
  747. package/out/zero-cache/src/services/change-source/pg/change-source.d.ts.map +1 -1
  748. package/out/zero-cache/src/services/change-source/pg/initial-sync.d.ts +8 -2
  749. package/out/zero-cache/src/services/change-source/pg/initial-sync.d.ts.map +1 -1
  750. package/out/zero-cache/src/services/change-source/pg/replication-slots.d.ts +1 -1
  751. package/out/zero-cache/src/services/change-source/pg/replication-slots.d.ts.map +1 -1
  752. package/out/zero-cache/src/services/change-source/pg/schema/init.d.ts.map +1 -1
  753. package/out/zero-cache/src/services/change-streamer/schema/tables.d.ts.map +1 -1
  754. package/out/zero-cache/src/services/life-cycle.d.ts +1 -1
  755. package/out/zero-cache/src/services/life-cycle.d.ts.map +1 -1
  756. package/out/zero-cache/src/services/run-ast.d.ts.map +1 -1
  757. package/out/zero-cache/src/services/running-state.d.ts.map +1 -1
  758. package/out/zero-cache/src/services/view-syncer/cvr-purger.d.ts.map +1 -1
  759. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts.map +1 -1
  760. package/out/zero-cache/src/types/configuration-error.d.ts +4 -0
  761. package/out/zero-cache/src/types/configuration-error.d.ts.map +1 -0
  762. package/out/zero-cache/src/types/pg.d.ts +2 -0
  763. package/out/zero-cache/src/types/pg.d.ts.map +1 -1
  764. package/out/zero-client/src/client/zero.d.ts.map +1 -1
  765. package/out/zql/src/builder/builder.d.ts.map +1 -1
  766. package/out/zql/src/builder/debug-delegate.d.ts +5 -0
  767. package/out/zql/src/builder/debug-delegate.d.ts.map +1 -1
  768. package/out/zql/src/ivm/flipped-join.d.ts +4 -8
  769. package/out/zql/src/ivm/flipped-join.d.ts.map +1 -1
  770. package/out/zql/src/ivm/operator.d.ts +1 -1
  771. package/out/zql/src/ivm/schema.d.ts +0 -8
  772. package/out/zql/src/ivm/schema.d.ts.map +1 -1
  773. package/out/zql/src/ivm/union-fan-in.d.ts.map +1 -1
  774. package/out/zql/src/mutate/mutator.d.ts +12 -3
  775. package/out/zql/src/mutate/mutator.d.ts.map +1 -1
  776. package/out/zql/src/planner/planner-join.d.ts.map +1 -1
  777. package/out/zql/src/query/query-registry.d.ts +10 -3
  778. package/out/zql/src/query/query-registry.d.ts.map +1 -1
  779. package/out/zqlite/src/table-source.d.ts.map +1 -1
  780. package/package.json +23 -23
  781. package/out/_virtual/_@oxc-project_runtime@0.122.0/helpers/usingCtx.js +0 -57
  782. package/out/analyze-query/src/analyze-cli.js +0 -288
  783. package/out/analyze-query/src/analyze-cli.js.map +0 -1
  784. package/out/analyze-query/src/bin-analyze.js +0 -277
  785. package/out/analyze-query/src/bin-analyze.js.map +0 -1
  786. package/out/analyze-query/src/bin-transform.js.map +0 -1
  787. package/out/ast-to-zql/src/ast-to-zql.js.map +0 -1
  788. package/out/ast-to-zql/src/bin.js.map +0 -1
  789. package/out/ast-to-zql/src/format.js.map +0 -1
  790. package/out/datadog/src/datadog-log-sink.js.map +0 -1
  791. package/out/otel/src/enabled.js.map +0 -1
  792. package/out/otel/src/log-options.js.map +0 -1
  793. package/out/otel/src/maybe-time.js.map +0 -1
  794. package/out/otel/src/span.js.map +0 -1
  795. package/out/otel/src/version.js.map +0 -1
  796. package/out/replicache/src/async-iterable-to-array.js.map +0 -1
  797. package/out/replicache/src/bg-interval.js.map +0 -1
  798. package/out/replicache/src/btree/diff.js.map +0 -1
  799. package/out/replicache/src/btree/node.js.map +0 -1
  800. package/out/replicache/src/btree/read.js.map +0 -1
  801. package/out/replicache/src/btree/splice.js.map +0 -1
  802. package/out/replicache/src/btree/write.js +0 -188
  803. package/out/replicache/src/btree/write.js.map +0 -1
  804. package/out/replicache/src/call-default-fetch.js.map +0 -1
  805. package/out/replicache/src/connection-loop-delegates.js.map +0 -1
  806. package/out/replicache/src/connection-loop.js.map +0 -1
  807. package/out/replicache/src/cookies.js.map +0 -1
  808. package/out/replicache/src/dag/chunk.js.map +0 -1
  809. package/out/replicache/src/dag/gc.js.map +0 -1
  810. package/out/replicache/src/dag/key.js.map +0 -1
  811. package/out/replicache/src/dag/lazy-store.js.map +0 -1
  812. package/out/replicache/src/dag/store-impl.js +0 -152
  813. package/out/replicache/src/dag/store-impl.js.map +0 -1
  814. package/out/replicache/src/dag/store.js.map +0 -1
  815. package/out/replicache/src/dag/visitor.js.map +0 -1
  816. package/out/replicache/src/db/commit.js.map +0 -1
  817. package/out/replicache/src/db/index.js.map +0 -1
  818. package/out/replicache/src/db/read.js.map +0 -1
  819. package/out/replicache/src/db/rebase.js.map +0 -1
  820. package/out/replicache/src/db/write.js.map +0 -1
  821. package/out/replicache/src/deleted-clients.js.map +0 -1
  822. package/out/replicache/src/error-responses.js.map +0 -1
  823. package/out/replicache/src/frozen-json.js.map +0 -1
  824. package/out/replicache/src/get-default-puller.js.map +0 -1
  825. package/out/replicache/src/get-default-pusher.js.map +0 -1
  826. package/out/replicache/src/get-kv-store-provider.js.map +0 -1
  827. package/out/replicache/src/hash.js.map +0 -1
  828. package/out/replicache/src/http-request-info.js.map +0 -1
  829. package/out/replicache/src/index-defs.js.map +0 -1
  830. package/out/replicache/src/kv/expo-sqlite/store.js +0 -58
  831. package/out/replicache/src/kv/expo-sqlite/store.js.map +0 -1
  832. package/out/replicache/src/kv/idb-store-with-mem-fallback.js.map +0 -1
  833. package/out/replicache/src/kv/idb-store.js.map +0 -1
  834. package/out/replicache/src/kv/mem-store.js.map +0 -1
  835. package/out/replicache/src/kv/op-sqlite/store.js +0 -63
  836. package/out/replicache/src/kv/op-sqlite/store.js.map +0 -1
  837. package/out/replicache/src/kv/op-sqlite/types.js.map +0 -1
  838. package/out/replicache/src/kv/read-impl.js.map +0 -1
  839. package/out/replicache/src/kv/sqlite-store.js +0 -216
  840. package/out/replicache/src/kv/sqlite-store.js.map +0 -1
  841. package/out/replicache/src/kv/throw-if-closed.js +0 -26
  842. package/out/replicache/src/kv/throw-if-closed.js.map +0 -1
  843. package/out/replicache/src/kv/write-impl-base.js.map +0 -1
  844. package/out/replicache/src/kv/write-impl.js.map +0 -1
  845. package/out/replicache/src/lazy.js.map +0 -1
  846. package/out/replicache/src/log-options.js.map +0 -1
  847. package/out/replicache/src/make-idb-name.js.map +0 -1
  848. package/out/replicache/src/new-client-channel.js.map +0 -1
  849. package/out/replicache/src/on-persist-channel.js.map +0 -1
  850. package/out/replicache/src/patch-operation.js.map +0 -1
  851. package/out/replicache/src/pending-mutations.js.map +0 -1
  852. package/out/replicache/src/persist/client-gc.js.map +0 -1
  853. package/out/replicache/src/persist/client-group-gc.js.map +0 -1
  854. package/out/replicache/src/persist/client-groups.js +0 -110
  855. package/out/replicache/src/persist/client-groups.js.map +0 -1
  856. package/out/replicache/src/persist/clients.js +0 -261
  857. package/out/replicache/src/persist/clients.js.map +0 -1
  858. package/out/replicache/src/persist/collect-idb-databases.js.map +0 -1
  859. package/out/replicache/src/persist/gather-mem-only-visitor.js.map +0 -1
  860. package/out/replicache/src/persist/gather-not-cached-visitor.js.map +0 -1
  861. package/out/replicache/src/persist/heartbeat.js.map +0 -1
  862. package/out/replicache/src/persist/idb-databases-store-db-name.js.map +0 -1
  863. package/out/replicache/src/persist/idb-databases-store.js.map +0 -1
  864. package/out/replicache/src/persist/make-client-id.js.map +0 -1
  865. package/out/replicache/src/persist/persist.js +0 -122
  866. package/out/replicache/src/persist/persist.js.map +0 -1
  867. package/out/replicache/src/persist/refresh.js.map +0 -1
  868. package/out/replicache/src/process-scheduler.js.map +0 -1
  869. package/out/replicache/src/pusher.js.map +0 -1
  870. package/out/replicache/src/replicache-impl.js.map +0 -1
  871. package/out/replicache/src/report-error.js.map +0 -1
  872. package/out/replicache/src/request-idle.js.map +0 -1
  873. package/out/replicache/src/scan-iterator.js.map +0 -1
  874. package/out/replicache/src/scan-options.js.map +0 -1
  875. package/out/replicache/src/set-interval-with-signal.js.map +0 -1
  876. package/out/replicache/src/subscriptions.js.map +0 -1
  877. package/out/replicache/src/sync/diff.js.map +0 -1
  878. package/out/replicache/src/sync/ids.js.map +0 -1
  879. package/out/replicache/src/sync/patch.js.map +0 -1
  880. package/out/replicache/src/sync/pull-error.js.map +0 -1
  881. package/out/replicache/src/sync/pull.js +0 -166
  882. package/out/replicache/src/sync/pull.js.map +0 -1
  883. package/out/replicache/src/sync/push.js.map +0 -1
  884. package/out/replicache/src/sync/request-id.js.map +0 -1
  885. package/out/replicache/src/sync/sync-head-name.js.map +0 -1
  886. package/out/replicache/src/to-error.js.map +0 -1
  887. package/out/replicache/src/transaction-closed-error.js.map +0 -1
  888. package/out/replicache/src/transactions.js.map +0 -1
  889. package/out/replicache/src/version.js.map +0 -1
  890. package/out/replicache/src/with-transactions.js.map +0 -1
  891. package/out/shared/src/abort-error.js.map +0 -1
  892. package/out/shared/src/arrays.js.map +0 -1
  893. package/out/shared/src/asserts.js.map +0 -1
  894. package/out/shared/src/bigint-json.js.map +0 -1
  895. package/out/shared/src/binary-search.js.map +0 -1
  896. package/out/shared/src/broadcast-channel.js.map +0 -1
  897. package/out/shared/src/browser-env.js.map +0 -1
  898. package/out/shared/src/btree-set.js.map +0 -1
  899. package/out/shared/src/cache.js.map +0 -1
  900. package/out/shared/src/centroid.js.map +0 -1
  901. package/out/shared/src/config.js.map +0 -1
  902. package/out/shared/src/custom-key-map.js.map +0 -1
  903. package/out/shared/src/custom-key-set.js.map +0 -1
  904. package/out/shared/src/deep-clone.js.map +0 -1
  905. package/out/shared/src/deep-merge.js.map +0 -1
  906. package/out/shared/src/document-visible.js.map +0 -1
  907. package/out/shared/src/dotenv.js.map +0 -1
  908. package/out/shared/src/error.js.map +0 -1
  909. package/out/shared/src/has-own.js.map +0 -1
  910. package/out/shared/src/hash.js.map +0 -1
  911. package/out/shared/src/iterables.js.map +0 -1
  912. package/out/shared/src/json-schema.js.map +0 -1
  913. package/out/shared/src/json.js.map +0 -1
  914. package/out/shared/src/logging-test-utils.js.map +0 -1
  915. package/out/shared/src/logging.js.map +0 -1
  916. package/out/shared/src/must.js.map +0 -1
  917. package/out/shared/src/navigator.js.map +0 -1
  918. package/out/shared/src/object-traversal.js.map +0 -1
  919. package/out/shared/src/objects.js.map +0 -1
  920. package/out/shared/src/options.js.map +0 -1
  921. package/out/shared/src/parse-big-int.js.map +0 -1
  922. package/out/shared/src/promise-race.js.map +0 -1
  923. package/out/shared/src/queue.js +0 -126
  924. package/out/shared/src/queue.js.map +0 -1
  925. package/out/shared/src/rand.js.map +0 -1
  926. package/out/shared/src/random-uint64.js.map +0 -1
  927. package/out/shared/src/random-values.js.map +0 -1
  928. package/out/shared/src/record-proxy.js.map +0 -1
  929. package/out/shared/src/resolved-promises.js.map +0 -1
  930. package/out/shared/src/sentinels.js.map +0 -1
  931. package/out/shared/src/set-utils.js.map +0 -1
  932. package/out/shared/src/size-of-value.js.map +0 -1
  933. package/out/shared/src/sleep.js.map +0 -1
  934. package/out/shared/src/sorted-entries.js.map +0 -1
  935. package/out/shared/src/string-compare.js.map +0 -1
  936. package/out/shared/src/subscribable.js.map +0 -1
  937. package/out/shared/src/tdigest-schema.js.map +0 -1
  938. package/out/shared/src/tdigest.js.map +0 -1
  939. package/out/shared/src/valita.js +0 -172
  940. package/out/shared/src/valita.js.map +0 -1
  941. package/out/z2s/src/compiler.js.map +0 -1
  942. package/out/z2s/src/sql.js.map +0 -1
  943. package/out/zero/package.js +0 -205
  944. package/out/zero/package.js.map +0 -1
  945. package/out/zero-cache/src/auth/auth.js.map +0 -1
  946. package/out/zero-cache/src/auth/jwt.js.map +0 -1
  947. package/out/zero-cache/src/auth/load-permissions.js.map +0 -1
  948. package/out/zero-cache/src/auth/read-authorizer.js.map +0 -1
  949. package/out/zero-cache/src/auth/write-authorizer.js.map +0 -1
  950. package/out/zero-cache/src/config/network.js.map +0 -1
  951. package/out/zero-cache/src/config/normalize.js.map +0 -1
  952. package/out/zero-cache/src/config/server-context.js.map +0 -1
  953. package/out/zero-cache/src/config/zero-config.js +0 -916
  954. package/out/zero-cache/src/config/zero-config.js.map +0 -1
  955. package/out/zero-cache/src/custom/fetch.js.map +0 -1
  956. package/out/zero-cache/src/custom-queries/transform-query.js.map +0 -1
  957. package/out/zero-cache/src/db/create.js.map +0 -1
  958. package/out/zero-cache/src/db/delete-lite-db.js.map +0 -1
  959. package/out/zero-cache/src/db/lite-tables.js.map +0 -1
  960. package/out/zero-cache/src/db/migration-lite.js +0 -147
  961. package/out/zero-cache/src/db/migration-lite.js.map +0 -1
  962. package/out/zero-cache/src/db/migration.js +0 -120
  963. package/out/zero-cache/src/db/migration.js.map +0 -1
  964. package/out/zero-cache/src/db/mode-enum.js.map +0 -1
  965. package/out/zero-cache/src/db/pg-copy-binary.js.map +0 -1
  966. package/out/zero-cache/src/db/pg-copy.js.map +0 -1
  967. package/out/zero-cache/src/db/pg-to-lite.js.map +0 -1
  968. package/out/zero-cache/src/db/pg-type-parser.js.map +0 -1
  969. package/out/zero-cache/src/db/run-transaction.js.map +0 -1
  970. package/out/zero-cache/src/db/specs.js.map +0 -1
  971. package/out/zero-cache/src/db/statements.js.map +0 -1
  972. package/out/zero-cache/src/db/transaction-pool.js.map +0 -1
  973. package/out/zero-cache/src/db/warmup.js.map +0 -1
  974. package/out/zero-cache/src/observability/events.js.map +0 -1
  975. package/out/zero-cache/src/observability/metrics.js.map +0 -1
  976. package/out/zero-cache/src/scripts/decommission.js.map +0 -1
  977. package/out/zero-cache/src/scripts/deploy-permissions.js.map +0 -1
  978. package/out/zero-cache/src/scripts/permissions.js.map +0 -1
  979. package/out/zero-cache/src/server/anonymous-otel-start.js +0 -305
  980. package/out/zero-cache/src/server/anonymous-otel-start.js.map +0 -1
  981. package/out/zero-cache/src/server/inspector-delegate.js.map +0 -1
  982. package/out/zero-cache/src/server/logging.js.map +0 -1
  983. package/out/zero-cache/src/server/otel-diag-logger.js.map +0 -1
  984. package/out/zero-cache/src/server/otel-log-sink.js.map +0 -1
  985. package/out/zero-cache/src/server/otel-start.js +0 -53
  986. package/out/zero-cache/src/server/otel-start.js.map +0 -1
  987. package/out/zero-cache/src/server/priority-op.js.map +0 -1
  988. package/out/zero-cache/src/server/runner/main.js +0 -10
  989. package/out/zero-cache/src/server/runner/main.js.map +0 -1
  990. package/out/zero-cache/src/server/runner/run-worker.js.map +0 -1
  991. package/out/zero-cache/src/server/runner/runtime.js.map +0 -1
  992. package/out/zero-cache/src/server/runner/zero-dispatcher.js.map +0 -1
  993. package/out/zero-cache/src/server/worker-dispatcher.js.map +0 -1
  994. package/out/zero-cache/src/server/worker-urls.js.map +0 -1
  995. package/out/zero-cache/src/services/analyze.js +0 -69
  996. package/out/zero-cache/src/services/analyze.js.map +0 -1
  997. package/out/zero-cache/src/services/change-source/common/backfill-manager.js.map +0 -1
  998. package/out/zero-cache/src/services/change-source/common/change-stream-multiplexer.js.map +0 -1
  999. package/out/zero-cache/src/services/change-source/common/replica-schema.js.map +0 -1
  1000. package/out/zero-cache/src/services/change-source/custom/change-source.js +0 -176
  1001. package/out/zero-cache/src/services/change-source/custom/change-source.js.map +0 -1
  1002. package/out/zero-cache/src/services/change-source/pg/backfill-metadata.js.map +0 -1
  1003. package/out/zero-cache/src/services/change-source/pg/backfill-stream.js +0 -197
  1004. package/out/zero-cache/src/services/change-source/pg/backfill-stream.js.map +0 -1
  1005. package/out/zero-cache/src/services/change-source/pg/change-source.js +0 -920
  1006. package/out/zero-cache/src/services/change-source/pg/change-source.js.map +0 -1
  1007. package/out/zero-cache/src/services/change-source/pg/decommission.js.map +0 -1
  1008. package/out/zero-cache/src/services/change-source/pg/initial-sync.js +0 -545
  1009. package/out/zero-cache/src/services/change-source/pg/initial-sync.js.map +0 -1
  1010. package/out/zero-cache/src/services/change-source/pg/logical-replication/binary-reader.js.map +0 -1
  1011. package/out/zero-cache/src/services/change-source/pg/logical-replication/pgoutput-parser.js.map +0 -1
  1012. package/out/zero-cache/src/services/change-source/pg/logical-replication/stream.js.map +0 -1
  1013. package/out/zero-cache/src/services/change-source/pg/lsn.js.map +0 -1
  1014. package/out/zero-cache/src/services/change-source/pg/replication-slots.js +0 -162
  1015. package/out/zero-cache/src/services/change-source/pg/replication-slots.js.map +0 -1
  1016. package/out/zero-cache/src/services/change-source/pg/schema/ddl.js +0 -334
  1017. package/out/zero-cache/src/services/change-source/pg/schema/ddl.js.map +0 -1
  1018. package/out/zero-cache/src/services/change-source/pg/schema/init.js +0 -155
  1019. package/out/zero-cache/src/services/change-source/pg/schema/init.js.map +0 -1
  1020. package/out/zero-cache/src/services/change-source/pg/schema/published.js.map +0 -1
  1021. package/out/zero-cache/src/services/change-source/pg/schema/shard.js +0 -330
  1022. package/out/zero-cache/src/services/change-source/pg/schema/shard.js.map +0 -1
  1023. package/out/zero-cache/src/services/change-source/pg/schema/validation.js.map +0 -1
  1024. package/out/zero-cache/src/services/change-source/protocol/current/control.js.map +0 -1
  1025. package/out/zero-cache/src/services/change-source/protocol/current/data.js +0 -192
  1026. package/out/zero-cache/src/services/change-source/protocol/current/data.js.map +0 -1
  1027. package/out/zero-cache/src/services/change-source/protocol/current/downstream.js.map +0 -1
  1028. package/out/zero-cache/src/services/change-source/protocol/current/json.js.map +0 -1
  1029. package/out/zero-cache/src/services/change-source/protocol/current/path.js.map +0 -1
  1030. package/out/zero-cache/src/services/change-source/protocol/current/status.js.map +0 -1
  1031. package/out/zero-cache/src/services/change-source/protocol/current/upstream.js.map +0 -1
  1032. package/out/zero-cache/src/services/change-source/protocol/current.js +0 -56
  1033. package/out/zero-cache/src/services/change-source/protocol/current.js.map +0 -1
  1034. package/out/zero-cache/src/services/change-streamer/backup-monitor.js.map +0 -1
  1035. package/out/zero-cache/src/services/change-streamer/broadcast.js.map +0 -1
  1036. package/out/zero-cache/src/services/change-streamer/change-streamer-http.js +0 -158
  1037. package/out/zero-cache/src/services/change-streamer/change-streamer-http.js.map +0 -1
  1038. package/out/zero-cache/src/services/change-streamer/change-streamer-service.js.map +0 -1
  1039. package/out/zero-cache/src/services/change-streamer/change-streamer.js.map +0 -1
  1040. package/out/zero-cache/src/services/change-streamer/forwarder.js.map +0 -1
  1041. package/out/zero-cache/src/services/change-streamer/replica-monitor.js.map +0 -1
  1042. package/out/zero-cache/src/services/change-streamer/schema/init.js +0 -74
  1043. package/out/zero-cache/src/services/change-streamer/schema/init.js.map +0 -1
  1044. package/out/zero-cache/src/services/change-streamer/schema/tables.js +0 -191
  1045. package/out/zero-cache/src/services/change-streamer/schema/tables.js.map +0 -1
  1046. package/out/zero-cache/src/services/change-streamer/snapshot.js +0 -27
  1047. package/out/zero-cache/src/services/change-streamer/snapshot.js.map +0 -1
  1048. package/out/zero-cache/src/services/change-streamer/storer.js.map +0 -1
  1049. package/out/zero-cache/src/services/change-streamer/subscriber.js.map +0 -1
  1050. package/out/zero-cache/src/services/heapz.js.map +0 -1
  1051. package/out/zero-cache/src/services/http-service.js.map +0 -1
  1052. package/out/zero-cache/src/services/life-cycle.js +0 -195
  1053. package/out/zero-cache/src/services/life-cycle.js.map +0 -1
  1054. package/out/zero-cache/src/services/limiter/sliding-window-limiter.js.map +0 -1
  1055. package/out/zero-cache/src/services/litestream/commands.js.map +0 -1
  1056. package/out/zero-cache/src/services/mutagen/error.js.map +0 -1
  1057. package/out/zero-cache/src/services/mutagen/mutagen.js.map +0 -1
  1058. package/out/zero-cache/src/services/mutagen/pusher.js.map +0 -1
  1059. package/out/zero-cache/src/services/replicator/change-processor.js.map +0 -1
  1060. package/out/zero-cache/src/services/replicator/incremental-sync.js.map +0 -1
  1061. package/out/zero-cache/src/services/replicator/notifier.js.map +0 -1
  1062. package/out/zero-cache/src/services/replicator/replication-status.js.map +0 -1
  1063. package/out/zero-cache/src/services/replicator/replicator.js.map +0 -1
  1064. package/out/zero-cache/src/services/replicator/reporter/recorder.js.map +0 -1
  1065. package/out/zero-cache/src/services/replicator/reporter/report-schema.js.map +0 -1
  1066. package/out/zero-cache/src/services/replicator/schema/change-log.js.map +0 -1
  1067. package/out/zero-cache/src/services/replicator/schema/column-metadata.js.map +0 -1
  1068. package/out/zero-cache/src/services/replicator/schema/constants.js.map +0 -1
  1069. package/out/zero-cache/src/services/replicator/schema/replication-state.js.map +0 -1
  1070. package/out/zero-cache/src/services/replicator/schema/table-metadata.js.map +0 -1
  1071. package/out/zero-cache/src/services/replicator/write-worker-client.js.map +0 -1
  1072. package/out/zero-cache/src/services/replicator/write-worker.js.map +0 -1
  1073. package/out/zero-cache/src/services/run-ast.js +0 -87
  1074. package/out/zero-cache/src/services/run-ast.js.map +0 -1
  1075. package/out/zero-cache/src/services/runner.js.map +0 -1
  1076. package/out/zero-cache/src/services/running-state.js +0 -136
  1077. package/out/zero-cache/src/services/running-state.js.map +0 -1
  1078. package/out/zero-cache/src/services/shadow-sync/shadow-sync-service.js +0 -50
  1079. package/out/zero-cache/src/services/shadow-sync/shadow-sync-service.js.map +0 -1
  1080. package/out/zero-cache/src/services/statz.js.map +0 -1
  1081. package/out/zero-cache/src/services/view-syncer/active-users-gauge.js.map +0 -1
  1082. package/out/zero-cache/src/services/view-syncer/client-handler.js +0 -270
  1083. package/out/zero-cache/src/services/view-syncer/client-handler.js.map +0 -1
  1084. package/out/zero-cache/src/services/view-syncer/client-schema.js.map +0 -1
  1085. package/out/zero-cache/src/services/view-syncer/connection-context-manager.js.map +0 -1
  1086. package/out/zero-cache/src/services/view-syncer/cvr-purger.js +0 -109
  1087. package/out/zero-cache/src/services/view-syncer/cvr-purger.js.map +0 -1
  1088. package/out/zero-cache/src/services/view-syncer/cvr-store.js.map +0 -1
  1089. package/out/zero-cache/src/services/view-syncer/cvr.js.map +0 -1
  1090. package/out/zero-cache/src/services/view-syncer/drain-coordinator.js.map +0 -1
  1091. package/out/zero-cache/src/services/view-syncer/inspect-handler.js +0 -102
  1092. package/out/zero-cache/src/services/view-syncer/inspect-handler.js.map +0 -1
  1093. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js +0 -628
  1094. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js.map +0 -1
  1095. package/out/zero-cache/src/services/view-syncer/row-record-cache.js.map +0 -1
  1096. package/out/zero-cache/src/services/view-syncer/row-set-signature.js.map +0 -1
  1097. package/out/zero-cache/src/services/view-syncer/schema/cvr.js.map +0 -1
  1098. package/out/zero-cache/src/services/view-syncer/schema/init.js +0 -158
  1099. package/out/zero-cache/src/services/view-syncer/schema/init.js.map +0 -1
  1100. package/out/zero-cache/src/services/view-syncer/schema/types.js +0 -176
  1101. package/out/zero-cache/src/services/view-syncer/schema/types.js.map +0 -1
  1102. package/out/zero-cache/src/services/view-syncer/snapshotter.js.map +0 -1
  1103. package/out/zero-cache/src/services/view-syncer/tracer.js.map +0 -1
  1104. package/out/zero-cache/src/services/view-syncer/ttl-clock.js.map +0 -1
  1105. package/out/zero-cache/src/services/view-syncer/view-syncer.js +0 -1235
  1106. package/out/zero-cache/src/services/view-syncer/view-syncer.js.map +0 -1
  1107. package/out/zero-cache/src/types/error-with-level.js.map +0 -1
  1108. package/out/zero-cache/src/types/http.js.map +0 -1
  1109. package/out/zero-cache/src/types/lexi-version.js.map +0 -1
  1110. package/out/zero-cache/src/types/lite.js.map +0 -1
  1111. package/out/zero-cache/src/types/names.js.map +0 -1
  1112. package/out/zero-cache/src/types/pg-data-type.js.map +0 -1
  1113. package/out/zero-cache/src/types/pg-types.js.map +0 -1
  1114. package/out/zero-cache/src/types/pg-versions.js.map +0 -1
  1115. package/out/zero-cache/src/types/pg.js +0 -189
  1116. package/out/zero-cache/src/types/pg.js.map +0 -1
  1117. package/out/zero-cache/src/types/processes.js.map +0 -1
  1118. package/out/zero-cache/src/types/profiler.js.map +0 -1
  1119. package/out/zero-cache/src/types/row-key.js.map +0 -1
  1120. package/out/zero-cache/src/types/shards.js.map +0 -1
  1121. package/out/zero-cache/src/types/sql.js.map +0 -1
  1122. package/out/zero-cache/src/types/state-version.js.map +0 -1
  1123. package/out/zero-cache/src/types/streams.js.map +0 -1
  1124. package/out/zero-cache/src/types/strings.js.map +0 -1
  1125. package/out/zero-cache/src/types/subscription.js.map +0 -1
  1126. package/out/zero-cache/src/types/timeout.js.map +0 -1
  1127. package/out/zero-cache/src/types/url-params.js.map +0 -1
  1128. package/out/zero-cache/src/types/websocket-handoff.js.map +0 -1
  1129. package/out/zero-cache/src/types/ws.js.map +0 -1
  1130. package/out/zero-cache/src/workers/connect-params.js.map +0 -1
  1131. package/out/zero-cache/src/workers/connection.js +0 -229
  1132. package/out/zero-cache/src/workers/connection.js.map +0 -1
  1133. package/out/zero-cache/src/workers/mutator.js.map +0 -1
  1134. package/out/zero-cache/src/workers/replicator.js.map +0 -1
  1135. package/out/zero-cache/src/workers/syncer-ws-message-handler.js.map +0 -1
  1136. package/out/zero-cache/src/workers/syncer.js.map +0 -1
  1137. package/out/zero-client/src/client/active-clients-manager.js.map +0 -1
  1138. package/out/zero-client/src/client/client-error-kind-enum.js.map +0 -1
  1139. package/out/zero-client/src/client/connection-manager.js +0 -295
  1140. package/out/zero-client/src/client/connection-manager.js.map +0 -1
  1141. package/out/zero-client/src/client/connection-status-enum.js +0 -20
  1142. package/out/zero-client/src/client/connection-status-enum.js.map +0 -1
  1143. package/out/zero-client/src/client/connection.js.map +0 -1
  1144. package/out/zero-client/src/client/context.js.map +0 -1
  1145. package/out/zero-client/src/client/crud-impl.js +0 -61
  1146. package/out/zero-client/src/client/crud-impl.js.map +0 -1
  1147. package/out/zero-client/src/client/crud.js.map +0 -1
  1148. package/out/zero-client/src/client/custom.js +0 -63
  1149. package/out/zero-client/src/client/custom.js.map +0 -1
  1150. package/out/zero-client/src/client/delete-clients-manager.js.map +0 -1
  1151. package/out/zero-client/src/client/enable-analytics.js.map +0 -1
  1152. package/out/zero-client/src/client/error.js.map +0 -1
  1153. package/out/zero-client/src/client/http-string.js.map +0 -1
  1154. package/out/zero-client/src/client/inspector/client-group.js.map +0 -1
  1155. package/out/zero-client/src/client/inspector/client.js.map +0 -1
  1156. package/out/zero-client/src/client/inspector/html-dialog-prompt.js.map +0 -1
  1157. package/out/zero-client/src/client/inspector/inspector.js.map +0 -1
  1158. package/out/zero-client/src/client/inspector/lazy-inspector.js.map +0 -1
  1159. package/out/zero-client/src/client/inspector/query.js.map +0 -1
  1160. package/out/zero-client/src/client/ivm-branch.js.map +0 -1
  1161. package/out/zero-client/src/client/keys.js.map +0 -1
  1162. package/out/zero-client/src/client/log-options.js.map +0 -1
  1163. package/out/zero-client/src/client/make-mutate-property.js.map +0 -1
  1164. package/out/zero-client/src/client/make-replicache-mutators.js.map +0 -1
  1165. package/out/zero-client/src/client/metric-name-enum.js.map +0 -1
  1166. package/out/zero-client/src/client/metrics.js.map +0 -1
  1167. package/out/zero-client/src/client/mutation-tracker.js.map +0 -1
  1168. package/out/zero-client/src/client/mutator-proxy.js.map +0 -1
  1169. package/out/zero-client/src/client/options.js.map +0 -1
  1170. package/out/zero-client/src/client/query-manager.js.map +0 -1
  1171. package/out/zero-client/src/client/reload-error-handler.js.map +0 -1
  1172. package/out/zero-client/src/client/server-option.js.map +0 -1
  1173. package/out/zero-client/src/client/update-needed-reason-type-enum.js +0 -27
  1174. package/out/zero-client/src/client/update-needed-reason-type-enum.js.map +0 -1
  1175. package/out/zero-client/src/client/version.js +0 -9
  1176. package/out/zero-client/src/client/version.js.map +0 -1
  1177. package/out/zero-client/src/client/zero-poke-handler.js.map +0 -1
  1178. package/out/zero-client/src/client/zero-rep.js.map +0 -1
  1179. package/out/zero-client/src/client/zero.js +0 -1443
  1180. package/out/zero-client/src/client/zero.js.map +0 -1
  1181. package/out/zero-client/src/util/nanoid.js.map +0 -1
  1182. package/out/zero-client/src/util/socket.d.ts +0 -3
  1183. package/out/zero-client/src/util/socket.d.ts.map +0 -1
  1184. package/out/zero-client/src/util/socket.js +0 -8
  1185. package/out/zero-client/src/util/socket.js.map +0 -1
  1186. package/out/zero-protocol/src/analyze-query-result.js +0 -120
  1187. package/out/zero-protocol/src/analyze-query-result.js.map +0 -1
  1188. package/out/zero-protocol/src/application-error.js.map +0 -1
  1189. package/out/zero-protocol/src/ast.js.map +0 -1
  1190. package/out/zero-protocol/src/change-desired-queries.js +0 -12
  1191. package/out/zero-protocol/src/change-desired-queries.js.map +0 -1
  1192. package/out/zero-protocol/src/client-schema.js.map +0 -1
  1193. package/out/zero-protocol/src/close-connection.js.map +0 -1
  1194. package/out/zero-protocol/src/connect.js +0 -47
  1195. package/out/zero-protocol/src/connect.js.map +0 -1
  1196. package/out/zero-protocol/src/custom-queries.js.map +0 -1
  1197. package/out/zero-protocol/src/data.js.map +0 -1
  1198. package/out/zero-protocol/src/delete-clients.js.map +0 -1
  1199. package/out/zero-protocol/src/down.js.map +0 -1
  1200. package/out/zero-protocol/src/error-kind-enum.js.map +0 -1
  1201. package/out/zero-protocol/src/error-origin-enum.js.map +0 -1
  1202. package/out/zero-protocol/src/error-reason-enum.js.map +0 -1
  1203. package/out/zero-protocol/src/error.js +0 -84
  1204. package/out/zero-protocol/src/error.js.map +0 -1
  1205. package/out/zero-protocol/src/inspect-down.js.map +0 -1
  1206. package/out/zero-protocol/src/inspect-up.js +0 -34
  1207. package/out/zero-protocol/src/inspect-up.js.map +0 -1
  1208. package/out/zero-protocol/src/mutate-server.js.map +0 -1
  1209. package/out/zero-protocol/src/mutation-id.js.map +0 -1
  1210. package/out/zero-protocol/src/mutation-type-enum.js.map +0 -1
  1211. package/out/zero-protocol/src/mutation.js.map +0 -1
  1212. package/out/zero-protocol/src/mutations-patch.js.map +0 -1
  1213. package/out/zero-protocol/src/ping.js.map +0 -1
  1214. package/out/zero-protocol/src/poke.js +0 -59
  1215. package/out/zero-protocol/src/poke.js.map +0 -1
  1216. package/out/zero-protocol/src/pong.js.map +0 -1
  1217. package/out/zero-protocol/src/primary-key.js.map +0 -1
  1218. package/out/zero-protocol/src/protocol-version.js.map +0 -1
  1219. package/out/zero-protocol/src/pull.js.map +0 -1
  1220. package/out/zero-protocol/src/push.js +0 -60
  1221. package/out/zero-protocol/src/push.js.map +0 -1
  1222. package/out/zero-protocol/src/queries-patch.js.map +0 -1
  1223. package/out/zero-protocol/src/query-hash.js.map +0 -1
  1224. package/out/zero-protocol/src/query-server.js.map +0 -1
  1225. package/out/zero-protocol/src/row-patch.js.map +0 -1
  1226. package/out/zero-protocol/src/up.js.map +0 -1
  1227. package/out/zero-protocol/src/update-auth.js.map +0 -1
  1228. package/out/zero-protocol/src/version.js.map +0 -1
  1229. package/out/zero-react/src/use-connection-state.js +0 -17
  1230. package/out/zero-react/src/use-connection-state.js.map +0 -1
  1231. package/out/zero-react/src/use-query.js +0 -299
  1232. package/out/zero-react/src/use-query.js.map +0 -1
  1233. package/out/zero-react/src/use-zero-online.js +0 -20
  1234. package/out/zero-react/src/use-zero-online.js.map +0 -1
  1235. package/out/zero-react/src/zero-provider.js +0 -87
  1236. package/out/zero-react/src/zero-provider.js.map +0 -1
  1237. package/out/zero-schema/src/builder/relationship-builder.js.map +0 -1
  1238. package/out/zero-schema/src/builder/schema-builder.js.map +0 -1
  1239. package/out/zero-schema/src/builder/table-builder.js.map +0 -1
  1240. package/out/zero-schema/src/compiled-permissions.js.map +0 -1
  1241. package/out/zero-schema/src/name-mapper.js.map +0 -1
  1242. package/out/zero-schema/src/permissions.js.map +0 -1
  1243. package/out/zero-schema/src/schema-config.js.map +0 -1
  1244. package/out/zero-server/src/adapters/drizzle.js.map +0 -1
  1245. package/out/zero-server/src/adapters/kysely.js.map +0 -1
  1246. package/out/zero-server/src/adapters/pg.js +0 -83
  1247. package/out/zero-server/src/adapters/pg.js.map +0 -1
  1248. package/out/zero-server/src/adapters/postgresjs.js.map +0 -1
  1249. package/out/zero-server/src/adapters/prisma.js.map +0 -1
  1250. package/out/zero-server/src/custom.js +0 -214
  1251. package/out/zero-server/src/custom.js.map +0 -1
  1252. package/out/zero-server/src/logging.js.map +0 -1
  1253. package/out/zero-server/src/pg-query-executor.js.map +0 -1
  1254. package/out/zero-server/src/process-mutations.js.map +0 -1
  1255. package/out/zero-server/src/push-processor.js.map +0 -1
  1256. package/out/zero-server/src/queries/process-queries.js.map +0 -1
  1257. package/out/zero-server/src/schema.js.map +0 -1
  1258. package/out/zero-server/src/zql-database.js.map +0 -1
  1259. package/out/zero-solid/src/solid-view.js +0 -145
  1260. package/out/zero-solid/src/solid-view.js.map +0 -1
  1261. package/out/zero-solid/src/use-connection-state.js +0 -21
  1262. package/out/zero-solid/src/use-connection-state.js.map +0 -1
  1263. package/out/zero-solid/src/use-query.js +0 -64
  1264. package/out/zero-solid/src/use-query.js.map +0 -1
  1265. package/out/zero-solid/src/use-zero-online.js +0 -21
  1266. package/out/zero-solid/src/use-zero-online.js.map +0 -1
  1267. package/out/zero-solid/src/use-zero.js +0 -93
  1268. package/out/zero-solid/src/use-zero.js.map +0 -1
  1269. package/out/zero-types/src/format.js.map +0 -1
  1270. package/out/zero-types/src/name-mapper.js.map +0 -1
  1271. package/out/zql/src/builder/builder.js +0 -380
  1272. package/out/zql/src/builder/builder.js.map +0 -1
  1273. package/out/zql/src/builder/debug-delegate.js +0 -72
  1274. package/out/zql/src/builder/debug-delegate.js.map +0 -1
  1275. package/out/zql/src/builder/filter.js.map +0 -1
  1276. package/out/zql/src/builder/like.js.map +0 -1
  1277. package/out/zql/src/error.js.map +0 -1
  1278. package/out/zql/src/ivm/array-view.js.map +0 -1
  1279. package/out/zql/src/ivm/cap.js.map +0 -1
  1280. package/out/zql/src/ivm/change.js.map +0 -1
  1281. package/out/zql/src/ivm/constraint.js +0 -82
  1282. package/out/zql/src/ivm/constraint.js.map +0 -1
  1283. package/out/zql/src/ivm/data.js.map +0 -1
  1284. package/out/zql/src/ivm/exists.js.map +0 -1
  1285. package/out/zql/src/ivm/fan-in.js.map +0 -1
  1286. package/out/zql/src/ivm/fan-out.js.map +0 -1
  1287. package/out/zql/src/ivm/filter-operators.js.map +0 -1
  1288. package/out/zql/src/ivm/filter-push.js.map +0 -1
  1289. package/out/zql/src/ivm/filter.js.map +0 -1
  1290. package/out/zql/src/ivm/flipped-join.js +0 -311
  1291. package/out/zql/src/ivm/flipped-join.js.map +0 -1
  1292. package/out/zql/src/ivm/join-utils.js.map +0 -1
  1293. package/out/zql/src/ivm/join.js.map +0 -1
  1294. package/out/zql/src/ivm/maybe-split-and-push-edit-change.js.map +0 -1
  1295. package/out/zql/src/ivm/memory-source.js.map +0 -1
  1296. package/out/zql/src/ivm/memory-storage.js.map +0 -1
  1297. package/out/zql/src/ivm/operator.js.map +0 -1
  1298. package/out/zql/src/ivm/push-accumulated.js.map +0 -1
  1299. package/out/zql/src/ivm/skip-yields.js.map +0 -1
  1300. package/out/zql/src/ivm/skip.js.map +0 -1
  1301. package/out/zql/src/ivm/source.js.map +0 -1
  1302. package/out/zql/src/ivm/stream.js.map +0 -1
  1303. package/out/zql/src/ivm/take.js.map +0 -1
  1304. package/out/zql/src/ivm/union-fan-in.js +0 -163
  1305. package/out/zql/src/ivm/union-fan-in.js.map +0 -1
  1306. package/out/zql/src/ivm/union-fan-out.js.map +0 -1
  1307. package/out/zql/src/ivm/view-apply-change.js.map +0 -1
  1308. package/out/zql/src/mutate/crud.js.map +0 -1
  1309. package/out/zql/src/mutate/custom.js.map +0 -1
  1310. package/out/zql/src/mutate/mutator-registry.js.map +0 -1
  1311. package/out/zql/src/mutate/mutator.js.map +0 -1
  1312. package/out/zql/src/planner/planner-builder.js.map +0 -1
  1313. package/out/zql/src/planner/planner-connection.js.map +0 -1
  1314. package/out/zql/src/planner/planner-constraint.js.map +0 -1
  1315. package/out/zql/src/planner/planner-debug.js.map +0 -1
  1316. package/out/zql/src/planner/planner-fan-in.js.map +0 -1
  1317. package/out/zql/src/planner/planner-fan-out.js.map +0 -1
  1318. package/out/zql/src/planner/planner-graph.js.map +0 -1
  1319. package/out/zql/src/planner/planner-join.js +0 -261
  1320. package/out/zql/src/planner/planner-join.js.map +0 -1
  1321. package/out/zql/src/planner/planner-node.js.map +0 -1
  1322. package/out/zql/src/planner/planner-source.js.map +0 -1
  1323. package/out/zql/src/planner/planner-terminus.js.map +0 -1
  1324. package/out/zql/src/query/complete-ordering.js.map +0 -1
  1325. package/out/zql/src/query/create-builder.js.map +0 -1
  1326. package/out/zql/src/query/error.js.map +0 -1
  1327. package/out/zql/src/query/escape-like.js.map +0 -1
  1328. package/out/zql/src/query/expression.js.map +0 -1
  1329. package/out/zql/src/query/measure-push-operator.js.map +0 -1
  1330. package/out/zql/src/query/metrics-delegate.js.map +0 -1
  1331. package/out/zql/src/query/named.js.map +0 -1
  1332. package/out/zql/src/query/query-delegate-base.js.map +0 -1
  1333. package/out/zql/src/query/query-impl.js +0 -290
  1334. package/out/zql/src/query/query-impl.js.map +0 -1
  1335. package/out/zql/src/query/query-internals.js.map +0 -1
  1336. package/out/zql/src/query/query-registry.js.map +0 -1
  1337. package/out/zql/src/query/runnable-query-impl.js.map +0 -1
  1338. package/out/zql/src/query/static-query.js.map +0 -1
  1339. package/out/zql/src/query/ttl.js.map +0 -1
  1340. package/out/zql/src/query/validate-input.js.map +0 -1
  1341. package/out/zqlite/src/database-storage.js.map +0 -1
  1342. package/out/zqlite/src/db.js.map +0 -1
  1343. package/out/zqlite/src/explain-queries.js.map +0 -1
  1344. package/out/zqlite/src/internal/sql-inline.js.map +0 -1
  1345. package/out/zqlite/src/internal/sql.js.map +0 -1
  1346. package/out/zqlite/src/internal/statement-cache.js.map +0 -1
  1347. package/out/zqlite/src/query-builder.js.map +0 -1
  1348. package/out/zqlite/src/query-delegate.js.map +0 -1
  1349. package/out/zqlite/src/resolve-scalar-subqueries.js.map +0 -1
  1350. package/out/zqlite/src/sqlite-cost-model.js.map +0 -1
  1351. package/out/zqlite/src/sqlite-stat-fanout.js.map +0 -1
  1352. package/out/zqlite/src/table-source.js +0 -313
  1353. package/out/zqlite/src/table-source.js.map +0 -1
  1354. /package/out/{analyze-query → packages/analyze-query}/src/bin-transform.js +0 -0
  1355. /package/out/{ast-to-zql → packages/ast-to-zql}/src/ast-to-zql.js +0 -0
  1356. /package/out/{ast-to-zql → packages/ast-to-zql}/src/bin.js +0 -0
  1357. /package/out/{ast-to-zql → packages/ast-to-zql}/src/format.js +0 -0
  1358. /package/out/{datadog → packages/datadog}/src/datadog-log-sink.js +0 -0
  1359. /package/out/{otel → packages/otel}/src/enabled.js +0 -0
  1360. /package/out/{otel → packages/otel}/src/log-options.js +0 -0
  1361. /package/out/{otel → packages/otel}/src/maybe-time.js +0 -0
  1362. /package/out/{otel → packages/otel}/src/span.js +0 -0
  1363. /package/out/{otel → packages/otel}/src/version.js +0 -0
  1364. /package/out/{replicache → packages/replicache}/src/async-iterable-to-array.js +0 -0
  1365. /package/out/{replicache → packages/replicache}/src/bg-interval.js +0 -0
  1366. /package/out/{replicache → packages/replicache}/src/btree/diff.js +0 -0
  1367. /package/out/{replicache → packages/replicache}/src/btree/node.js +0 -0
  1368. /package/out/{replicache → packages/replicache}/src/btree/read.js +0 -0
  1369. /package/out/{replicache → packages/replicache}/src/btree/splice.js +0 -0
  1370. /package/out/{replicache → packages/replicache}/src/call-default-fetch.js +0 -0
  1371. /package/out/{replicache → packages/replicache}/src/config.js +0 -0
  1372. /package/out/{replicache → packages/replicache}/src/connection-loop-delegates.js +0 -0
  1373. /package/out/{replicache → packages/replicache}/src/connection-loop.js +0 -0
  1374. /package/out/{replicache → packages/replicache}/src/cookies.js +0 -0
  1375. /package/out/{replicache → packages/replicache}/src/dag/chunk.js +0 -0
  1376. /package/out/{replicache → packages/replicache}/src/dag/gc.js +0 -0
  1377. /package/out/{replicache → packages/replicache}/src/dag/key.js +0 -0
  1378. /package/out/{replicache → packages/replicache}/src/dag/lazy-store.js +0 -0
  1379. /package/out/{replicache → packages/replicache}/src/dag/store.js +0 -0
  1380. /package/out/{replicache → packages/replicache}/src/dag/visitor.js +0 -0
  1381. /package/out/{replicache → packages/replicache}/src/db/commit.js +0 -0
  1382. /package/out/{replicache → packages/replicache}/src/db/index.js +0 -0
  1383. /package/out/{replicache → packages/replicache}/src/db/read.js +0 -0
  1384. /package/out/{replicache → packages/replicache}/src/db/rebase.js +0 -0
  1385. /package/out/{replicache → packages/replicache}/src/db/write.js +0 -0
  1386. /package/out/{replicache → packages/replicache}/src/deleted-clients.js +0 -0
  1387. /package/out/{replicache → packages/replicache}/src/error-responses.js +0 -0
  1388. /package/out/{replicache → packages/replicache}/src/expo-sqlite.js +0 -0
  1389. /package/out/{replicache → packages/replicache}/src/frozen-json.js +0 -0
  1390. /package/out/{replicache → packages/replicache}/src/get-default-puller.js +0 -0
  1391. /package/out/{replicache → packages/replicache}/src/get-default-pusher.js +0 -0
  1392. /package/out/{replicache → packages/replicache}/src/get-kv-store-provider.js +0 -0
  1393. /package/out/{replicache → packages/replicache}/src/hash.js +0 -0
  1394. /package/out/{replicache → packages/replicache}/src/http-request-info.js +0 -0
  1395. /package/out/{replicache → packages/replicache}/src/impl.js +0 -0
  1396. /package/out/{replicache → packages/replicache}/src/index-defs.js +0 -0
  1397. /package/out/{replicache → packages/replicache}/src/kv/idb-store-with-mem-fallback.js +0 -0
  1398. /package/out/{replicache → packages/replicache}/src/kv/idb-store.js +0 -0
  1399. /package/out/{replicache → packages/replicache}/src/kv/mem-store.js +0 -0
  1400. /package/out/{replicache → packages/replicache}/src/kv/op-sqlite/types.js +0 -0
  1401. /package/out/{replicache → packages/replicache}/src/kv/read-impl.js +0 -0
  1402. /package/out/{replicache → packages/replicache}/src/kv/write-impl-base.js +0 -0
  1403. /package/out/{replicache → packages/replicache}/src/kv/write-impl.js +0 -0
  1404. /package/out/{replicache → packages/replicache}/src/lazy.js +0 -0
  1405. /package/out/{replicache → packages/replicache}/src/log-options.js +0 -0
  1406. /package/out/{replicache → packages/replicache}/src/make-idb-name.js +0 -0
  1407. /package/out/{replicache → packages/replicache}/src/mutation-recovery.js +0 -0
  1408. /package/out/{replicache → packages/replicache}/src/new-client-channel.js +0 -0
  1409. /package/out/{replicache → packages/replicache}/src/on-persist-channel.js +0 -0
  1410. /package/out/{replicache → packages/replicache}/src/op-sqlite.js +0 -0
  1411. /package/out/{replicache → packages/replicache}/src/patch-operation.js +0 -0
  1412. /package/out/{replicache → packages/replicache}/src/pending-mutations.js +0 -0
  1413. /package/out/{replicache → packages/replicache}/src/persist/client-gc.js +0 -0
  1414. /package/out/{replicache → packages/replicache}/src/persist/client-group-gc.js +0 -0
  1415. /package/out/{replicache → packages/replicache}/src/persist/collect-idb-databases.js +0 -0
  1416. /package/out/{replicache → packages/replicache}/src/persist/gather-mem-only-visitor.js +0 -0
  1417. /package/out/{replicache → packages/replicache}/src/persist/gather-not-cached-visitor.js +0 -0
  1418. /package/out/{replicache → packages/replicache}/src/persist/heartbeat.js +0 -0
  1419. /package/out/{replicache → packages/replicache}/src/persist/idb-databases-store-db-name.js +0 -0
  1420. /package/out/{replicache → packages/replicache}/src/persist/idb-databases-store.js +0 -0
  1421. /package/out/{replicache → packages/replicache}/src/persist/make-client-id.js +0 -0
  1422. /package/out/{replicache → packages/replicache}/src/persist/refresh.js +0 -0
  1423. /package/out/{replicache → packages/replicache}/src/process-scheduler.js +0 -0
  1424. /package/out/{replicache → packages/replicache}/src/pusher.js +0 -0
  1425. /package/out/{replicache → packages/replicache}/src/replicache-impl.js +0 -0
  1426. /package/out/{replicache → packages/replicache}/src/report-error.js +0 -0
  1427. /package/out/{replicache → packages/replicache}/src/request-idle.js +0 -0
  1428. /package/out/{replicache → packages/replicache}/src/scan-iterator.js +0 -0
  1429. /package/out/{replicache → packages/replicache}/src/scan-options.js +0 -0
  1430. /package/out/{replicache → packages/replicache}/src/set-interval-with-signal.js +0 -0
  1431. /package/out/{replicache → packages/replicache}/src/sqlite.js +0 -0
  1432. /package/out/{replicache → packages/replicache}/src/subscriptions.js +0 -0
  1433. /package/out/{replicache → packages/replicache}/src/sync/diff.js +0 -0
  1434. /package/out/{replicache → packages/replicache}/src/sync/ids.js +0 -0
  1435. /package/out/{replicache → packages/replicache}/src/sync/patch.js +0 -0
  1436. /package/out/{replicache → packages/replicache}/src/sync/pull-error.js +0 -0
  1437. /package/out/{replicache → packages/replicache}/src/sync/push.js +0 -0
  1438. /package/out/{replicache → packages/replicache}/src/sync/request-id.js +0 -0
  1439. /package/out/{replicache → packages/replicache}/src/sync/sync-head-name.js +0 -0
  1440. /package/out/{replicache → packages/replicache}/src/to-error.js +0 -0
  1441. /package/out/{replicache → packages/replicache}/src/transaction-closed-error.js +0 -0
  1442. /package/out/{replicache → packages/replicache}/src/transactions.js +0 -0
  1443. /package/out/{replicache → packages/replicache}/src/version.js +0 -0
  1444. /package/out/{replicache → packages/replicache}/src/with-transactions.js +0 -0
  1445. /package/out/{shared → packages/shared}/src/abort-error.js +0 -0
  1446. /package/out/{shared → packages/shared}/src/arrays.js +0 -0
  1447. /package/out/{shared → packages/shared}/src/asserts.js +0 -0
  1448. /package/out/{shared → packages/shared}/src/bigint-json.js +0 -0
  1449. /package/out/{shared → packages/shared}/src/binary-search.js +0 -0
  1450. /package/out/{shared → packages/shared}/src/broadcast-channel.js +0 -0
  1451. /package/out/{shared → packages/shared}/src/browser-env.js +0 -0
  1452. /package/out/{shared → packages/shared}/src/btree-set.js +0 -0
  1453. /package/out/{shared → packages/shared}/src/cache.js +0 -0
  1454. /package/out/{shared → packages/shared}/src/centroid.js +0 -0
  1455. /package/out/{shared → packages/shared}/src/config.js +0 -0
  1456. /package/out/{shared → packages/shared}/src/custom-key-map.js +0 -0
  1457. /package/out/{shared → packages/shared}/src/custom-key-set.js +0 -0
  1458. /package/out/{shared → packages/shared}/src/deep-clone.js +0 -0
  1459. /package/out/{shared → packages/shared}/src/deep-merge.js +0 -0
  1460. /package/out/{shared → packages/shared}/src/document-visible.js +0 -0
  1461. /package/out/{shared → packages/shared}/src/dotenv.js +0 -0
  1462. /package/out/{shared → packages/shared}/src/error.js +0 -0
  1463. /package/out/{shared → packages/shared}/src/has-own.js +0 -0
  1464. /package/out/{shared → packages/shared}/src/hash.js +0 -0
  1465. /package/out/{shared → packages/shared}/src/iterables.js +0 -0
  1466. /package/out/{shared → packages/shared}/src/json-schema.js +0 -0
  1467. /package/out/{shared → packages/shared}/src/json.js +0 -0
  1468. /package/out/{shared → packages/shared}/src/logging-test-utils.js +0 -0
  1469. /package/out/{shared → packages/shared}/src/logging.js +0 -0
  1470. /package/out/{shared → packages/shared}/src/must.js +0 -0
  1471. /package/out/{shared → packages/shared}/src/navigator.js +0 -0
  1472. /package/out/{shared → packages/shared}/src/object-traversal.js +0 -0
  1473. /package/out/{shared → packages/shared}/src/objects.js +0 -0
  1474. /package/out/{shared → packages/shared}/src/options.js +0 -0
  1475. /package/out/{shared → packages/shared}/src/parse-big-int.js +0 -0
  1476. /package/out/{shared → packages/shared}/src/promise-race.js +0 -0
  1477. /package/out/{shared → packages/shared}/src/rand.js +0 -0
  1478. /package/out/{shared → packages/shared}/src/random-uint64.js +0 -0
  1479. /package/out/{shared → packages/shared}/src/random-values.js +0 -0
  1480. /package/out/{shared → packages/shared}/src/record-proxy.js +0 -0
  1481. /package/out/{shared → packages/shared}/src/resolved-promises.js +0 -0
  1482. /package/out/{shared → packages/shared}/src/sentinels.js +0 -0
  1483. /package/out/{shared → packages/shared}/src/set-utils.js +0 -0
  1484. /package/out/{shared → packages/shared}/src/size-of-value.js +0 -0
  1485. /package/out/{shared → packages/shared}/src/sleep.js +0 -0
  1486. /package/out/{shared → packages/shared}/src/sorted-entries.js +0 -0
  1487. /package/out/{shared → packages/shared}/src/string-compare.js +0 -0
  1488. /package/out/{shared → packages/shared}/src/subscribable.js +0 -0
  1489. /package/out/{shared → packages/shared}/src/tdigest-schema.js +0 -0
  1490. /package/out/{shared → packages/shared}/src/tdigest.js +0 -0
  1491. /package/out/{z2s → packages/z2s}/src/compiler.js +0 -0
  1492. /package/out/{z2s → packages/z2s}/src/sql.js +0 -0
  1493. /package/out/{zero → packages/zero}/src/server/runner/main.js +0 -0
  1494. /package/out/{zero-cache → packages/zero-cache}/src/auth/auth.js +0 -0
  1495. /package/out/{zero-cache → packages/zero-cache}/src/auth/jwt.js +0 -0
  1496. /package/out/{zero-cache → packages/zero-cache}/src/auth/load-permissions.js +0 -0
  1497. /package/out/{zero-cache → packages/zero-cache}/src/auth/read-authorizer.js +0 -0
  1498. /package/out/{zero-cache → packages/zero-cache}/src/auth/write-authorizer.js +0 -0
  1499. /package/out/{zero-cache → packages/zero-cache}/src/config/network.js +0 -0
  1500. /package/out/{zero-cache → packages/zero-cache}/src/config/normalize.js +0 -0
  1501. /package/out/{zero-cache → packages/zero-cache}/src/config/server-context.js +0 -0
  1502. /package/out/{zero-cache → packages/zero-cache}/src/custom/fetch.js +0 -0
  1503. /package/out/{zero-cache → packages/zero-cache}/src/custom-queries/transform-query.js +0 -0
  1504. /package/out/{zero-cache → packages/zero-cache}/src/db/create.js +0 -0
  1505. /package/out/{zero-cache → packages/zero-cache}/src/db/delete-lite-db.js +0 -0
  1506. /package/out/{zero-cache → packages/zero-cache}/src/db/lite-tables.js +0 -0
  1507. /package/out/{zero-cache → packages/zero-cache}/src/db/mode-enum.js +0 -0
  1508. /package/out/{zero-cache → packages/zero-cache}/src/db/pg-copy-binary.js +0 -0
  1509. /package/out/{zero-cache → packages/zero-cache}/src/db/pg-copy.js +0 -0
  1510. /package/out/{zero-cache → packages/zero-cache}/src/db/pg-to-lite.js +0 -0
  1511. /package/out/{zero-cache → packages/zero-cache}/src/db/pg-type-parser.js +0 -0
  1512. /package/out/{zero-cache → packages/zero-cache}/src/db/run-transaction.js +0 -0
  1513. /package/out/{zero-cache → packages/zero-cache}/src/db/specs.js +0 -0
  1514. /package/out/{zero-cache → packages/zero-cache}/src/db/statements.js +0 -0
  1515. /package/out/{zero-cache → packages/zero-cache}/src/db/transaction-pool.js +0 -0
  1516. /package/out/{zero-cache → packages/zero-cache}/src/db/warmup.js +0 -0
  1517. /package/out/{zero-cache → packages/zero-cache}/src/observability/events.js +0 -0
  1518. /package/out/{zero-cache → packages/zero-cache}/src/observability/metrics.js +0 -0
  1519. /package/out/{zero-cache → packages/zero-cache}/src/scripts/decommission.js +0 -0
  1520. /package/out/{zero-cache → packages/zero-cache}/src/scripts/deploy-permissions.js +0 -0
  1521. /package/out/{zero-cache → packages/zero-cache}/src/scripts/permissions.js +0 -0
  1522. /package/out/{zero-cache → packages/zero-cache}/src/server/inspector-delegate.js +0 -0
  1523. /package/out/{zero-cache → packages/zero-cache}/src/server/logging.js +0 -0
  1524. /package/out/{zero-cache → packages/zero-cache}/src/server/otel-diag-logger.js +0 -0
  1525. /package/out/{zero-cache → packages/zero-cache}/src/server/otel-log-sink.js +0 -0
  1526. /package/out/{zero-cache → packages/zero-cache}/src/server/priority-op.js +0 -0
  1527. /package/out/{zero-cache → packages/zero-cache}/src/server/runner/run-worker.js +0 -0
  1528. /package/out/{zero-cache → packages/zero-cache}/src/server/runner/runtime.js +0 -0
  1529. /package/out/{zero-cache → packages/zero-cache}/src/server/runner/zero-dispatcher.js +0 -0
  1530. /package/out/{zero-cache → packages/zero-cache}/src/server/worker-dispatcher.js +0 -0
  1531. /package/out/{zero-cache → packages/zero-cache}/src/server/worker-urls.js +0 -0
  1532. /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/common/backfill-manager.js +0 -0
  1533. /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/common/change-stream-multiplexer.js +0 -0
  1534. /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/common/replica-schema.js +0 -0
  1535. /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/pg/backfill-metadata.js +0 -0
  1536. /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/pg/decommission.js +0 -0
  1537. /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/pg/logical-replication/binary-reader.js +0 -0
  1538. /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/pg/logical-replication/pgoutput-parser.js +0 -0
  1539. /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/pg/logical-replication/stream.js +0 -0
  1540. /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/pg/lsn.js +0 -0
  1541. /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/pg/schema/published.js +0 -0
  1542. /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/pg/schema/validation.js +0 -0
  1543. /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/protocol/current/control.js +0 -0
  1544. /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/protocol/current/downstream.js +0 -0
  1545. /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/protocol/current/json.js +0 -0
  1546. /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/protocol/current/path.js +0 -0
  1547. /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/protocol/current/status.js +0 -0
  1548. /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/protocol/current/upstream.js +0 -0
  1549. /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/protocol/mod.js +0 -0
  1550. /package/out/{zero-cache → packages/zero-cache}/src/services/change-streamer/backup-monitor.js +0 -0
  1551. /package/out/{zero-cache → packages/zero-cache}/src/services/change-streamer/broadcast.js +0 -0
  1552. /package/out/{zero-cache → packages/zero-cache}/src/services/change-streamer/change-streamer-service.js +0 -0
  1553. /package/out/{zero-cache → packages/zero-cache}/src/services/change-streamer/change-streamer.js +0 -0
  1554. /package/out/{zero-cache → packages/zero-cache}/src/services/change-streamer/forwarder.js +0 -0
  1555. /package/out/{zero-cache → packages/zero-cache}/src/services/change-streamer/replica-monitor.js +0 -0
  1556. /package/out/{zero-cache → packages/zero-cache}/src/services/change-streamer/storer.js +0 -0
  1557. /package/out/{zero-cache → packages/zero-cache}/src/services/change-streamer/subscriber.js +0 -0
  1558. /package/out/{zero-cache → packages/zero-cache}/src/services/heapz.js +0 -0
  1559. /package/out/{zero-cache → packages/zero-cache}/src/services/http-service.js +0 -0
  1560. /package/out/{zero-cache → packages/zero-cache}/src/services/limiter/sliding-window-limiter.js +0 -0
  1561. /package/out/{zero-cache → packages/zero-cache}/src/services/litestream/commands.js +0 -0
  1562. /package/out/{zero-cache → packages/zero-cache}/src/services/mutagen/error.js +0 -0
  1563. /package/out/{zero-cache → packages/zero-cache}/src/services/mutagen/mutagen.js +0 -0
  1564. /package/out/{zero-cache → packages/zero-cache}/src/services/mutagen/pusher.js +0 -0
  1565. /package/out/{zero-cache → packages/zero-cache}/src/services/replicator/change-processor.js +0 -0
  1566. /package/out/{zero-cache → packages/zero-cache}/src/services/replicator/incremental-sync.js +0 -0
  1567. /package/out/{zero-cache → packages/zero-cache}/src/services/replicator/notifier.js +0 -0
  1568. /package/out/{zero-cache → packages/zero-cache}/src/services/replicator/replication-status.js +0 -0
  1569. /package/out/{zero-cache → packages/zero-cache}/src/services/replicator/replicator.js +0 -0
  1570. /package/out/{zero-cache → packages/zero-cache}/src/services/replicator/reporter/recorder.js +0 -0
  1571. /package/out/{zero-cache → packages/zero-cache}/src/services/replicator/reporter/report-schema.js +0 -0
  1572. /package/out/{zero-cache → packages/zero-cache}/src/services/replicator/schema/change-log.js +0 -0
  1573. /package/out/{zero-cache → packages/zero-cache}/src/services/replicator/schema/column-metadata.js +0 -0
  1574. /package/out/{zero-cache → packages/zero-cache}/src/services/replicator/schema/constants.js +0 -0
  1575. /package/out/{zero-cache → packages/zero-cache}/src/services/replicator/schema/replication-state.js +0 -0
  1576. /package/out/{zero-cache → packages/zero-cache}/src/services/replicator/schema/table-metadata.js +0 -0
  1577. /package/out/{zero-cache → packages/zero-cache}/src/services/replicator/write-worker-client.js +0 -0
  1578. /package/out/{zero-cache → packages/zero-cache}/src/services/replicator/write-worker.js +0 -0
  1579. /package/out/{zero-cache → packages/zero-cache}/src/services/runner.js +0 -0
  1580. /package/out/{zero-cache → packages/zero-cache}/src/services/statz.js +0 -0
  1581. /package/out/{zero-cache → packages/zero-cache}/src/services/view-syncer/active-users-gauge.js +0 -0
  1582. /package/out/{zero-cache → packages/zero-cache}/src/services/view-syncer/client-schema.js +0 -0
  1583. /package/out/{zero-cache → packages/zero-cache}/src/services/view-syncer/connection-context-manager.js +0 -0
  1584. /package/out/{zero-cache → packages/zero-cache}/src/services/view-syncer/cvr-store.js +0 -0
  1585. /package/out/{zero-cache → packages/zero-cache}/src/services/view-syncer/cvr.js +0 -0
  1586. /package/out/{zero-cache → packages/zero-cache}/src/services/view-syncer/drain-coordinator.js +0 -0
  1587. /package/out/{zero-cache → packages/zero-cache}/src/services/view-syncer/row-record-cache.js +0 -0
  1588. /package/out/{zero-cache → packages/zero-cache}/src/services/view-syncer/row-set-signature.js +0 -0
  1589. /package/out/{zero-cache → packages/zero-cache}/src/services/view-syncer/schema/cvr.js +0 -0
  1590. /package/out/{zero-cache → packages/zero-cache}/src/services/view-syncer/snapshotter.js +0 -0
  1591. /package/out/{zero-cache → packages/zero-cache}/src/services/view-syncer/tracer.js +0 -0
  1592. /package/out/{zero-cache → packages/zero-cache}/src/services/view-syncer/ttl-clock.js +0 -0
  1593. /package/out/{zero-cache → packages/zero-cache}/src/types/error-with-level.js +0 -0
  1594. /package/out/{zero-cache → packages/zero-cache}/src/types/http.js +0 -0
  1595. /package/out/{zero-cache → packages/zero-cache}/src/types/lexi-version.js +0 -0
  1596. /package/out/{zero-cache → packages/zero-cache}/src/types/lite.js +0 -0
  1597. /package/out/{zero-cache → packages/zero-cache}/src/types/names.js +0 -0
  1598. /package/out/{zero-cache → packages/zero-cache}/src/types/pg-data-type.js +0 -0
  1599. /package/out/{zero-cache → packages/zero-cache}/src/types/pg-types.js +0 -0
  1600. /package/out/{zero-cache → packages/zero-cache}/src/types/pg-versions.js +0 -0
  1601. /package/out/{zero-cache → packages/zero-cache}/src/types/processes.js +0 -0
  1602. /package/out/{zero-cache → packages/zero-cache}/src/types/profiler.js +0 -0
  1603. /package/out/{zero-cache → packages/zero-cache}/src/types/row-key.js +0 -0
  1604. /package/out/{zero-cache → packages/zero-cache}/src/types/shards.js +0 -0
  1605. /package/out/{zero-cache → packages/zero-cache}/src/types/sql.js +0 -0
  1606. /package/out/{zero-cache → packages/zero-cache}/src/types/state-version.js +0 -0
  1607. /package/out/{zero-cache → packages/zero-cache}/src/types/streams.js +0 -0
  1608. /package/out/{zero-cache → packages/zero-cache}/src/types/strings.js +0 -0
  1609. /package/out/{zero-cache → packages/zero-cache}/src/types/subscription.js +0 -0
  1610. /package/out/{zero-cache → packages/zero-cache}/src/types/timeout.js +0 -0
  1611. /package/out/{zero-cache → packages/zero-cache}/src/types/url-params.js +0 -0
  1612. /package/out/{zero-cache → packages/zero-cache}/src/types/websocket-handoff.js +0 -0
  1613. /package/out/{zero-cache → packages/zero-cache}/src/types/ws.js +0 -0
  1614. /package/out/{zero-cache → packages/zero-cache}/src/workers/connect-params.js +0 -0
  1615. /package/out/{zero-cache → packages/zero-cache}/src/workers/mutator.js +0 -0
  1616. /package/out/{zero-cache → packages/zero-cache}/src/workers/replicator.js +0 -0
  1617. /package/out/{zero-cache → packages/zero-cache}/src/workers/syncer-ws-message-handler.js +0 -0
  1618. /package/out/{zero-cache → packages/zero-cache}/src/workers/syncer.js +0 -0
  1619. /package/out/{zero-client → packages/zero-client}/src/client/active-clients-manager.js +0 -0
  1620. /package/out/{zero-client → packages/zero-client}/src/client/bindings.js +0 -0
  1621. /package/out/{zero-client → packages/zero-client}/src/client/client-error-kind-enum.js +0 -0
  1622. /package/out/{zero-client → packages/zero-client}/src/client/connection.js +0 -0
  1623. /package/out/{zero-client → packages/zero-client}/src/client/context.js +0 -0
  1624. /package/out/{zero-client → packages/zero-client}/src/client/crud.js +0 -0
  1625. /package/out/{zero-client → packages/zero-client}/src/client/delete-clients-manager.js +0 -0
  1626. /package/out/{zero-client → packages/zero-client}/src/client/enable-analytics.js +0 -0
  1627. /package/out/{zero-client → packages/zero-client}/src/client/error.js +0 -0
  1628. /package/out/{zero-client → packages/zero-client}/src/client/http-string.js +0 -0
  1629. /package/out/{zero-client → packages/zero-client}/src/client/inspector/client-group.js +0 -0
  1630. /package/out/{zero-client → packages/zero-client}/src/client/inspector/client.js +0 -0
  1631. /package/out/{zero-client → packages/zero-client}/src/client/inspector/html-dialog-prompt.js +0 -0
  1632. /package/out/{zero-client → packages/zero-client}/src/client/inspector/inspector.js +0 -0
  1633. /package/out/{zero-client → packages/zero-client}/src/client/inspector/lazy-inspector.js +0 -0
  1634. /package/out/{zero-client → packages/zero-client}/src/client/inspector/query.js +0 -0
  1635. /package/out/{zero-client → packages/zero-client}/src/client/ivm-branch.js +0 -0
  1636. /package/out/{zero-client → packages/zero-client}/src/client/keys.js +0 -0
  1637. /package/out/{zero-client → packages/zero-client}/src/client/log-options.js +0 -0
  1638. /package/out/{zero-client → packages/zero-client}/src/client/make-mutate-property.js +0 -0
  1639. /package/out/{zero-client → packages/zero-client}/src/client/make-replicache-mutators.js +0 -0
  1640. /package/out/{zero-client → packages/zero-client}/src/client/metric-name-enum.js +0 -0
  1641. /package/out/{zero-client → packages/zero-client}/src/client/metrics.js +0 -0
  1642. /package/out/{zero-client → packages/zero-client}/src/client/mutation-tracker.js +0 -0
  1643. /package/out/{zero-client → packages/zero-client}/src/client/mutator-proxy.js +0 -0
  1644. /package/out/{zero-client → packages/zero-client}/src/client/options.js +0 -0
  1645. /package/out/{zero-client → packages/zero-client}/src/client/query-manager.js +0 -0
  1646. /package/out/{zero-client → packages/zero-client}/src/client/reload-error-handler.js +0 -0
  1647. /package/out/{zero-client → packages/zero-client}/src/client/server-option.js +0 -0
  1648. /package/out/{zero-client → packages/zero-client}/src/client/zero-poke-handler.js +0 -0
  1649. /package/out/{zero-client → packages/zero-client}/src/client/zero-rep.js +0 -0
  1650. /package/out/{zero-client → packages/zero-client}/src/mod.js +0 -0
  1651. /package/out/{zero-client → packages/zero-client}/src/util/nanoid.js +0 -0
  1652. /package/out/{zero-pg → packages/zero-pg}/src/mod.js +0 -0
  1653. /package/out/{zero-protocol → packages/zero-protocol}/src/application-error.js +0 -0
  1654. /package/out/{zero-protocol → packages/zero-protocol}/src/ast.js +0 -0
  1655. /package/out/{zero-protocol → packages/zero-protocol}/src/client-schema.js +0 -0
  1656. /package/out/{zero-protocol → packages/zero-protocol}/src/close-connection.js +0 -0
  1657. /package/out/{zero-protocol → packages/zero-protocol}/src/custom-queries.js +0 -0
  1658. /package/out/{zero-protocol → packages/zero-protocol}/src/data.js +0 -0
  1659. /package/out/{zero-protocol → packages/zero-protocol}/src/delete-clients.js +0 -0
  1660. /package/out/{zero-protocol → packages/zero-protocol}/src/down.js +0 -0
  1661. /package/out/{zero-protocol → packages/zero-protocol}/src/error-kind-enum.js +0 -0
  1662. /package/out/{zero-protocol → packages/zero-protocol}/src/error-origin-enum.js +0 -0
  1663. /package/out/{zero-protocol → packages/zero-protocol}/src/error-reason-enum.js +0 -0
  1664. /package/out/{zero-protocol → packages/zero-protocol}/src/inspect-down.js +0 -0
  1665. /package/out/{zero-protocol → packages/zero-protocol}/src/mutate-server.js +0 -0
  1666. /package/out/{zero-protocol → packages/zero-protocol}/src/mutation-id.js +0 -0
  1667. /package/out/{zero-protocol → packages/zero-protocol}/src/mutation-type-enum.js +0 -0
  1668. /package/out/{zero-protocol → packages/zero-protocol}/src/mutation.js +0 -0
  1669. /package/out/{zero-protocol → packages/zero-protocol}/src/mutations-patch.js +0 -0
  1670. /package/out/{zero-protocol → packages/zero-protocol}/src/ping.js +0 -0
  1671. /package/out/{zero-protocol → packages/zero-protocol}/src/pong.js +0 -0
  1672. /package/out/{zero-protocol → packages/zero-protocol}/src/primary-key.js +0 -0
  1673. /package/out/{zero-protocol → packages/zero-protocol}/src/protocol-version.js +0 -0
  1674. /package/out/{zero-protocol → packages/zero-protocol}/src/pull.js +0 -0
  1675. /package/out/{zero-protocol → packages/zero-protocol}/src/queries-patch.js +0 -0
  1676. /package/out/{zero-protocol → packages/zero-protocol}/src/query-hash.js +0 -0
  1677. /package/out/{zero-protocol → packages/zero-protocol}/src/query-server.js +0 -0
  1678. /package/out/{zero-protocol → packages/zero-protocol}/src/row-patch.js +0 -0
  1679. /package/out/{zero-protocol → packages/zero-protocol}/src/up.js +0 -0
  1680. /package/out/{zero-protocol → packages/zero-protocol}/src/update-auth.js +0 -0
  1681. /package/out/{zero-protocol → packages/zero-protocol}/src/version.js +0 -0
  1682. /package/out/{zero-react → packages/zero-react}/src/bindings.js +0 -0
  1683. /package/out/{zero-react → packages/zero-react}/src/mod.js +0 -0
  1684. /package/out/{zero-react → packages/zero-react}/src/zero.js +0 -0
  1685. /package/out/{zero-schema → packages/zero-schema}/src/builder/relationship-builder.js +0 -0
  1686. /package/out/{zero-schema → packages/zero-schema}/src/builder/schema-builder.js +0 -0
  1687. /package/out/{zero-schema → packages/zero-schema}/src/builder/table-builder.js +0 -0
  1688. /package/out/{zero-schema → packages/zero-schema}/src/compiled-permissions.js +0 -0
  1689. /package/out/{zero-schema → packages/zero-schema}/src/name-mapper.js +0 -0
  1690. /package/out/{zero-schema → packages/zero-schema}/src/permissions.js +0 -0
  1691. /package/out/{zero-schema → packages/zero-schema}/src/schema-config.js +0 -0
  1692. /package/out/{zero-server → packages/zero-server}/src/adapters/drizzle.js +0 -0
  1693. /package/out/{zero-server → packages/zero-server}/src/adapters/kysely.js +0 -0
  1694. /package/out/{zero-server → packages/zero-server}/src/adapters/postgresjs.js +0 -0
  1695. /package/out/{zero-server → packages/zero-server}/src/adapters/prisma.js +0 -0
  1696. /package/out/{zero-server → packages/zero-server}/src/logging.js +0 -0
  1697. /package/out/{zero-server → packages/zero-server}/src/mod.js +0 -0
  1698. /package/out/{zero-server → packages/zero-server}/src/pg-query-executor.js +0 -0
  1699. /package/out/{zero-server → packages/zero-server}/src/process-mutations.js +0 -0
  1700. /package/out/{zero-server → packages/zero-server}/src/push-processor.js +0 -0
  1701. /package/out/{zero-server → packages/zero-server}/src/queries/process-queries.js +0 -0
  1702. /package/out/{zero-server → packages/zero-server}/src/schema.js +0 -0
  1703. /package/out/{zero-server → packages/zero-server}/src/zql-database.js +0 -0
  1704. /package/out/{zero-solid → packages/zero-solid}/src/bindings.js +0 -0
  1705. /package/out/{zero-solid → packages/zero-solid}/src/mod.js +0 -0
  1706. /package/out/{zero-solid → packages/zero-solid}/src/zero.js +0 -0
  1707. /package/out/{zero-types → packages/zero-types}/src/format.js +0 -0
  1708. /package/out/{zero-types → packages/zero-types}/src/name-mapper.js +0 -0
  1709. /package/out/{zql → packages/zql}/src/builder/filter.js +0 -0
  1710. /package/out/{zql → packages/zql}/src/builder/like.js +0 -0
  1711. /package/out/{zql → packages/zql}/src/error.js +0 -0
  1712. /package/out/{zql → packages/zql}/src/ivm/array-view.js +0 -0
  1713. /package/out/{zql → packages/zql}/src/ivm/cap.js +0 -0
  1714. /package/out/{zql → packages/zql}/src/ivm/change.js +0 -0
  1715. /package/out/{zql → packages/zql}/src/ivm/data.js +0 -0
  1716. /package/out/{zql → packages/zql}/src/ivm/exists.js +0 -0
  1717. /package/out/{zql → packages/zql}/src/ivm/fan-in.js +0 -0
  1718. /package/out/{zql → packages/zql}/src/ivm/fan-out.js +0 -0
  1719. /package/out/{zql → packages/zql}/src/ivm/filter-operators.js +0 -0
  1720. /package/out/{zql → packages/zql}/src/ivm/filter-push.js +0 -0
  1721. /package/out/{zql → packages/zql}/src/ivm/filter.js +0 -0
  1722. /package/out/{zql → packages/zql}/src/ivm/join-utils.js +0 -0
  1723. /package/out/{zql → packages/zql}/src/ivm/join.js +0 -0
  1724. /package/out/{zql → packages/zql}/src/ivm/maybe-split-and-push-edit-change.js +0 -0
  1725. /package/out/{zql → packages/zql}/src/ivm/memory-source.js +0 -0
  1726. /package/out/{zql → packages/zql}/src/ivm/memory-storage.js +0 -0
  1727. /package/out/{zql → packages/zql}/src/ivm/operator.js +0 -0
  1728. /package/out/{zql → packages/zql}/src/ivm/push-accumulated.js +0 -0
  1729. /package/out/{zql → packages/zql}/src/ivm/skip-yields.js +0 -0
  1730. /package/out/{zql → packages/zql}/src/ivm/skip.js +0 -0
  1731. /package/out/{zql → packages/zql}/src/ivm/source.js +0 -0
  1732. /package/out/{zql → packages/zql}/src/ivm/stream.js +0 -0
  1733. /package/out/{zql → packages/zql}/src/ivm/take.js +0 -0
  1734. /package/out/{zql → packages/zql}/src/ivm/union-fan-out.js +0 -0
  1735. /package/out/{zql → packages/zql}/src/ivm/view-apply-change.js +0 -0
  1736. /package/out/{zql → packages/zql}/src/mutate/crud.js +0 -0
  1737. /package/out/{zql → packages/zql}/src/mutate/custom.js +0 -0
  1738. /package/out/{zql → packages/zql}/src/mutate/mutator-registry.js +0 -0
  1739. /package/out/{zql → packages/zql}/src/mutate/mutator.js +0 -0
  1740. /package/out/{zql → packages/zql}/src/planner/planner-builder.js +0 -0
  1741. /package/out/{zql → packages/zql}/src/planner/planner-connection.js +0 -0
  1742. /package/out/{zql → packages/zql}/src/planner/planner-constraint.js +0 -0
  1743. /package/out/{zql → packages/zql}/src/planner/planner-debug.js +0 -0
  1744. /package/out/{zql → packages/zql}/src/planner/planner-fan-in.js +0 -0
  1745. /package/out/{zql → packages/zql}/src/planner/planner-fan-out.js +0 -0
  1746. /package/out/{zql → packages/zql}/src/planner/planner-graph.js +0 -0
  1747. /package/out/{zql → packages/zql}/src/planner/planner-node.js +0 -0
  1748. /package/out/{zql → packages/zql}/src/planner/planner-source.js +0 -0
  1749. /package/out/{zql → packages/zql}/src/planner/planner-terminus.js +0 -0
  1750. /package/out/{zql → packages/zql}/src/query/complete-ordering.js +0 -0
  1751. /package/out/{zql → packages/zql}/src/query/create-builder.js +0 -0
  1752. /package/out/{zql → packages/zql}/src/query/error.js +0 -0
  1753. /package/out/{zql → packages/zql}/src/query/escape-like.js +0 -0
  1754. /package/out/{zql → packages/zql}/src/query/expression.js +0 -0
  1755. /package/out/{zql → packages/zql}/src/query/measure-push-operator.js +0 -0
  1756. /package/out/{zql → packages/zql}/src/query/metrics-delegate.js +0 -0
  1757. /package/out/{zql → packages/zql}/src/query/named.js +0 -0
  1758. /package/out/{zql → packages/zql}/src/query/query-delegate-base.js +0 -0
  1759. /package/out/{zql → packages/zql}/src/query/query-internals.js +0 -0
  1760. /package/out/{zql → packages/zql}/src/query/query-registry.js +0 -0
  1761. /package/out/{zql → packages/zql}/src/query/query.js +0 -0
  1762. /package/out/{zql → packages/zql}/src/query/runnable-query-impl.js +0 -0
  1763. /package/out/{zql → packages/zql}/src/query/static-query.js +0 -0
  1764. /package/out/{zql → packages/zql}/src/query/ttl.js +0 -0
  1765. /package/out/{zql → packages/zql}/src/query/validate-input.js +0 -0
  1766. /package/out/{zqlite → packages/zqlite}/src/database-storage.js +0 -0
  1767. /package/out/{zqlite → packages/zqlite}/src/db.js +0 -0
  1768. /package/out/{zqlite → packages/zqlite}/src/explain-queries.js +0 -0
  1769. /package/out/{zqlite → packages/zqlite}/src/internal/sql-inline.js +0 -0
  1770. /package/out/{zqlite → packages/zqlite}/src/internal/sql.js +0 -0
  1771. /package/out/{zqlite → packages/zqlite}/src/internal/statement-cache.js +0 -0
  1772. /package/out/{zqlite → packages/zqlite}/src/mod.js +0 -0
  1773. /package/out/{zqlite → packages/zqlite}/src/query-builder.js +0 -0
  1774. /package/out/{zqlite → packages/zqlite}/src/query-delegate.js +0 -0
  1775. /package/out/{zqlite → packages/zqlite}/src/resolve-scalar-subqueries.js +0 -0
  1776. /package/out/{zqlite → packages/zqlite}/src/sqlite-cost-model.js +0 -0
  1777. /package/out/{zqlite → packages/zqlite}/src/sqlite-stat-fanout.js +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logging.js","names":[],"sources":["../../../../../shared/src/logging.ts"],"sourcesContent":["import {pid} from 'node:process';\nimport {styleText} from 'node:util';\n/* oxlint-disable no-console */\nimport {\n type Context,\n LogContext,\n type LogLevel,\n type LogSink,\n} from '@rocicorp/logger';\nimport {stringify} from './bigint-json.ts';\n\nexport type LogConfig = {\n level: LogLevel;\n format: 'text' | 'json';\n};\n\nfunction style(color: 'gray' | 'yellow' | 'red', args: unknown[]) {\n return styleText(color, args.join(' '));\n}\n\nconst COLOR_DEBUG = 'gray';\nconst COLOR_WARN = 'yellow';\nconst COLOR_ERROR = 'red';\n\n/**\n * Returns an object for writing colorized output to a provided console.\n * Note this should only be used when console is a TTY (i.e., Node).\n */\nexport const colorConsole = {\n log: (...args: unknown[]) => {\n console.log(...args);\n },\n debug: (...args: unknown[]) => {\n console.debug(style(COLOR_DEBUG, args));\n },\n info: (...args: unknown[]) => {\n console.info(...args);\n },\n warn: (...args: unknown[]) => {\n console.warn(style(COLOR_WARN, args));\n },\n error: (...args: unknown[]) => {\n console.error(style(COLOR_ERROR, args));\n },\n};\n\nexport const consoleSink: LogSink = {\n log(level, context, ...args) {\n colorConsole[level](\n toLocalIsoString(),\n stringifyContext(context),\n ...args.map(stringifyValue),\n );\n },\n};\n\nfunction toLocalIsoString(date = new Date()) {\n const tzo = -date.getTimezoneOffset();\n const sign = tzo >= 0 ? '+' : '-';\n const pad = (n: number, len = 2) => String(Math.abs(n)).padStart(len, '0');\n\n return (\n date.getFullYear() +\n '-' +\n pad(date.getMonth() + 1) +\n '-' +\n pad(date.getDate()) +\n 'T' +\n pad(date.getHours()) +\n ':' +\n pad(date.getMinutes()) +\n ':' +\n pad(date.getSeconds()) +\n '.' +\n pad(date.getMilliseconds(), 3) +\n sign +\n pad(tzo / 60) +\n ':' +\n pad(tzo % 60)\n );\n}\n\nexport function getLogSink(config: LogConfig): LogSink {\n return config.format === 'json' ? consoleJsonLogSink : consoleSink;\n}\n\nexport function createLogContext(\n {log}: {log: LogConfig},\n context = {},\n sink = getLogSink(log),\n): LogContext {\n const ctx = {pid, ...context};\n const lc = new LogContext(log.level, ctx, sink);\n // Emit a blank line to absorb random ANSI control code garbage that\n // for some reason gets prepended to the first log line in CloudWatch.\n lc.info?.('');\n return lc;\n}\n\nconst consoleJsonLogSink: LogSink = {\n log(level: LogLevel, context: Context | undefined, ...args: unknown[]): void {\n // If the last arg is an object or an Error, combine those fields into the message.\n const lastObj = errorOrObject(args.at(-1));\n if (lastObj) {\n args.pop();\n }\n const message = args.length\n ? {\n message: args.map(stringifyValue).join(' '),\n }\n : undefined;\n\n console[level](\n stringify({\n level: level.toUpperCase(),\n ...context,\n ...lastObj,\n ...message,\n }),\n );\n },\n};\n\nexport function errorOrObject(v: unknown): object | undefined {\n if (v instanceof Error) {\n return toErrorLogObject(v);\n }\n if (v && typeof v === 'object') {\n return v;\n }\n return undefined;\n}\n\nfunction toErrorLogObject(v: Error) {\n return {\n ...v, // some properties of Error subclasses may be enumerable\n name: v.name,\n errorMsg: v.message,\n stack: v.stack,\n ...('cause' in v ? {cause: errorOrObject(v.cause)} : null),\n };\n}\n\nfunction stringifyContext(context: Context | undefined): unknown[] {\n const args = [];\n for (const [k, v] of Object.entries(context ?? {})) {\n const arg = v === undefined ? k : `${k}=${v}`;\n args.push(arg);\n }\n return args;\n}\n\nfunction stringifyValue(v: unknown) {\n if (typeof v === 'string') {\n return v;\n }\n if (v instanceof Error) {\n return stringify(toErrorLogObject(v));\n }\n return stringify(v);\n}\n"],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ //#region ../shared/src/map.ts
2
+ var nativeSupport = typeof Map.prototype.getOrInsert === "function";
3
+ /**
4
+ * Returns the value for {@link key} in {@link map}. If no mapping exists,
5
+ * inserts {@link defaultValue} and returns it.
6
+ *
7
+ * Mirrors the ES2026 `Map.prototype.getOrInsert` proposal.
8
+ */
9
+ function getOrInsertPolyfill(map, key, defaultValue) {
10
+ const existing = map.get(key);
11
+ if (existing !== void 0) return existing;
12
+ map.set(key, defaultValue);
13
+ return defaultValue;
14
+ }
15
+ /**
16
+ * Returns the value for {@link key} in {@link map}. If no mapping exists,
17
+ * calls {@link compute} with the key, inserts the result, and returns it.
18
+ *
19
+ * Mirrors the ES2026 `Map.prototype.getOrInsertComputed` proposal.
20
+ */
21
+ function getOrInsertComputedPolyfill(map, key, compute) {
22
+ const existing = map.get(key);
23
+ if (existing !== void 0) return existing;
24
+ const value = compute(key);
25
+ map.set(key, value);
26
+ return value;
27
+ }
28
+ function getOrInsertNative(map, key, defaultValue) {
29
+ return map.getOrInsert(key, defaultValue);
30
+ }
31
+ function getOrInsertComputedNative(map, key, compute) {
32
+ return map.getOrInsertComputed(key, compute);
33
+ }
34
+ var getOrInsert = nativeSupport ? getOrInsertNative : getOrInsertPolyfill;
35
+ var getOrInsertComputed = nativeSupport ? getOrInsertComputedNative : getOrInsertComputedPolyfill;
36
+ //#endregion
37
+ export { getOrInsert, getOrInsertComputed };
38
+
39
+ //# sourceMappingURL=map.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"map.js","names":[],"sources":["../../../../../shared/src/map.ts"],"sourcesContent":["const nativeSupport =\n typeof (Map.prototype as unknown as MapES2026<unknown, unknown>)\n .getOrInsert === 'function';\n\ninterface MapES2026<K, V> {\n getOrInsert(key: K, defaultValue: V): V;\n getOrInsertComputed(key: K, compute: (key: K) => V): V;\n}\n\n/**\n * Returns the value for {@link key} in {@link map}. If no mapping exists,\n * inserts {@link defaultValue} and returns it.\n *\n * Mirrors the ES2026 `Map.prototype.getOrInsert` proposal.\n */\nfunction getOrInsertPolyfill<K, V>(map: Map<K, V>, key: K, defaultValue: V): V {\n const existing = map.get(key);\n if (existing !== undefined) {\n return existing;\n }\n map.set(key, defaultValue);\n return defaultValue;\n}\n\n/**\n * Returns the value for {@link key} in {@link map}. If no mapping exists,\n * calls {@link compute} with the key, inserts the result, and returns it.\n *\n * Mirrors the ES2026 `Map.prototype.getOrInsertComputed` proposal.\n */\nfunction getOrInsertComputedPolyfill<K, V>(\n map: Map<K, V>,\n key: K,\n compute: (key: K) => V,\n): V {\n const existing = map.get(key);\n if (existing !== undefined) {\n return existing;\n }\n const value = compute(key);\n map.set(key, value);\n return value;\n}\n\nfunction getOrInsertNative<K, V>(map: Map<K, V>, key: K, defaultValue: V): V {\n return (map as unknown as MapES2026<K, V>).getOrInsert(key, defaultValue);\n}\n\nfunction getOrInsertComputedNative<K, V>(\n map: Map<K, V>,\n key: K,\n compute: (key: K) => V,\n): V {\n return (map as unknown as MapES2026<K, V>).getOrInsertComputed(key, compute);\n}\n\nexport const getOrInsert = nativeSupport\n ? getOrInsertNative\n : getOrInsertPolyfill;\n\nexport const getOrInsertComputed = nativeSupport\n ? getOrInsertComputedNative\n : getOrInsertComputedPolyfill;\n"],"mappings":";AAAA,IAAM,gBACJ,OAAQ,IAAI,UACT,gBAAgB;;;;;;;AAarB,SAAS,oBAA0B,KAAgB,KAAQ,cAAoB;CAC7E,MAAM,WAAW,IAAI,IAAI,GAAG;CAC5B,IAAI,aAAa,KAAA,GACf,OAAO;CAET,IAAI,IAAI,KAAK,YAAY;CACzB,OAAO;AACT;;;;;;;AAQA,SAAS,4BACP,KACA,KACA,SACG;CACH,MAAM,WAAW,IAAI,IAAI,GAAG;CAC5B,IAAI,aAAa,KAAA,GACf,OAAO;CAET,MAAM,QAAQ,QAAQ,GAAG;CACzB,IAAI,IAAI,KAAK,KAAK;CAClB,OAAO;AACT;AAEA,SAAS,kBAAwB,KAAgB,KAAQ,cAAoB;CAC3E,OAAQ,IAAmC,YAAY,KAAK,YAAY;AAC1E;AAEA,SAAS,0BACP,KACA,KACA,SACG;CACH,OAAQ,IAAmC,oBAAoB,KAAK,OAAO;AAC7E;AAEA,IAAa,cAAc,gBACvB,oBACA;AAEJ,IAAa,sBAAsB,gBAC/B,4BACA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"must.js","names":[],"sources":["../../../../../shared/src/must.ts"],"sourcesContent":["export function must<T>(v: T | undefined | null, msg?: string): T {\n // oxlint-disable-next-line eqeqeq\n if (v == null) {\n throw new Error(msg ?? `Unexpected ${v} value`);\n }\n return v;\n}\n"],"mappings":";AAAA,SAAgB,KAAQ,GAAyB,KAAiB;CAEhE,IAAI,KAAK,MACP,MAAM,IAAI,MAAM,OAAO,cAAc,EAAE,OAAO;CAEhD,OAAO;AACT"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"navigator.js","names":[],"sources":["../../../../../shared/src/navigator.ts"],"sourcesContent":["type Navigator = {\n onLine: boolean;\n userAgent: string;\n // add more as needed\n};\n\nconst localNavigator: Navigator | undefined =\n typeof navigator !== 'undefined' ? navigator : undefined;\n\nexport {localNavigator as navigator};\n"],"mappings":";AAMA,IAAM,iBACJ,OAAO,cAAc,cAAc,YAAY,KAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"object-traversal.js","names":[],"sources":["../../../../../shared/src/object-traversal.ts"],"sourcesContent":["type Split<\n S extends string,\n Sep extends string,\n> = S extends `${infer Head}${Sep}${infer Tail}`\n ? [Head, ...Split<Tail, Sep>]\n : S extends ''\n ? []\n : [S];\n\ntype GetAtPath<T, Parts extends readonly string[]> = Parts extends readonly [\n infer Head extends string,\n ...infer Tail extends readonly string[],\n]\n ? Head extends keyof T\n ? GetAtPath<T[Head], Tail>\n : undefined\n : T;\n\ntype ValueAtPath<Path extends string, T, Sep extends string> = GetAtPath<\n T,\n Split<Path, Sep>\n>;\n\nexport function getValueAtPath(obj: object, path: string, sep: RegExp): unknown;\nexport function getValueAtPath<\n const Path extends string,\n const T extends object,\n const Sep extends string,\n>(obj: T, path: Path, sep: Sep): ValueAtPath<Path, T, Sep>;\nexport function getValueAtPath(\n obj: object,\n path: string,\n sep: string | RegExp,\n): unknown {\n const parts = path.split(sep);\n let current: unknown = obj;\n for (const part of parts) {\n if (current && typeof current === 'object' && part in current) {\n current = (current as Record<string, unknown>)[part];\n } else {\n return undefined;\n }\n }\n return current;\n}\n\n/**\n * Recursively iterates over all leaf values in a nested object tree.\n * A value is considered a leaf if `isLeaf(value)` returns true,\n * or if it's not a plain object.\n *\n * @param obj - The object to iterate over\n * @param isLeaf - A function that returns true if a value should be yielded as a leaf\n */\nexport function* iterateLeaves<T>(\n obj: object,\n isLeaf: (value: unknown) => value is T,\n): Iterable<T> {\n for (const key of Object.keys(obj)) {\n const value = (obj as Record<string, unknown>)[key];\n if (isLeaf(value)) {\n yield value;\n } else if (value && typeof value === 'object') {\n yield* iterateLeaves(value, isLeaf);\n }\n }\n}\n"],"mappings":";AA6BA,SAAgB,eACd,KACA,MACA,KACS;CACT,MAAM,QAAQ,KAAK,MAAM,GAAG;CAC5B,IAAI,UAAmB;CACvB,KAAK,MAAM,QAAQ,OACjB,IAAI,WAAW,OAAO,YAAY,YAAY,QAAQ,SACpD,UAAW,QAAoC;MAE/C;CAGJ,OAAO;AACT;;;;;;;;;AAUA,UAAiB,cACf,KACA,QACa;CACb,KAAK,MAAM,OAAO,OAAO,KAAK,GAAG,GAAG;EAClC,MAAM,QAAS,IAAgC;EAC/C,IAAI,OAAO,KAAK,GACd,MAAM;OACD,IAAI,SAAS,OAAO,UAAU,UACnC,OAAO,cAAc,OAAO,MAAM;CAEtC;AACF"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"objects.js","names":[],"sources":["../../../../../shared/src/objects.ts"],"sourcesContent":["export function mapValues<T extends Record<string, unknown>, U>(\n input: T,\n mapper: (value: T[keyof T]) => U,\n): {[K in keyof T]: U} {\n return mapEntries(input, (k, v) => [k, mapper(v as T[keyof T])]) as {\n [K in keyof T]: U;\n };\n}\n\nexport function mapEntries<T, U>(\n input: Record<string, T>,\n mapper: (key: string, val: T) => [key: string, val: U],\n): Record<string, U> {\n // Direct assignment is faster than Object.fromEntries()\n // https://github.com/rocicorp/mono/pull/3927#issuecomment-2706059475\n const output: Record<string, U> = {};\n\n // In chrome Object.entries is faster than for-in (13x) or Object.keys (15x)\n // https://gist.github.com/arv/1b4e113724f6a14e2d4742bcc760d1fa\n for (const entry of Object.entries(input)) {\n const mapped = mapper(entry[0], entry[1]);\n output[mapped[0]] = mapped[1];\n }\n return output;\n}\n\nexport function mapAllEntries<T, U>(\n input: Record<string, T>,\n mapper: (entries: [key: string, val: T][]) => [key: string, val: U][],\n): Record<string, U> {\n // Direct assignment is faster than Object.fromEntries()\n // https://github.com/rocicorp/mono/pull/3927#issuecomment-2706059475\n const output: Record<string, U> = {};\n for (const mapped of mapper(Object.entries(input))) {\n output[mapped[0]] = mapped[1];\n }\n return output;\n}\n"],"mappings":";AAAA,SAAgB,UACd,OACA,QACqB;CACrB,OAAO,WAAW,QAAQ,GAAG,MAAM,CAAC,GAAG,OAAO,CAAe,CAAC,CAAC;AAGjE;AAEA,SAAgB,WACd,OACA,QACmB;CAGnB,MAAM,SAA4B,CAAC;CAInC,KAAK,MAAM,SAAS,OAAO,QAAQ,KAAK,GAAG;EACzC,MAAM,SAAS,OAAO,MAAM,IAAI,MAAM,EAAE;EACxC,OAAO,OAAO,MAAM,OAAO;CAC7B;CACA,OAAO;AACT;AAEA,SAAgB,cACd,OACA,QACmB;CAGnB,MAAM,SAA4B,CAAC;CACnC,KAAK,MAAM,UAAU,OAAO,OAAO,QAAQ,KAAK,CAAC,GAC/C,OAAO,OAAO,MAAM,OAAO;CAE7B,OAAO;AACT"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"options.js","names":[],"sources":["../../../../../shared/src/options.ts"],"sourcesContent":["import {stripVTControlCharacters as stripAnsi} from 'node:util';\nimport type {OptionalLogger} from '@rocicorp/logger';\nimport {template} from 'chalk-template';\nimport type {OptionDefinition} from 'command-line-args';\nimport commandLineArgs from 'command-line-args';\nimport commandLineUsage, {type Section} from 'command-line-usage';\nimport {createDefu} from 'defu';\nimport {toKebabCase, toSnakeCase} from 'kasi';\nimport {assert} from './asserts.ts';\nimport {must} from './must.ts';\nimport type {\n Config,\n Group,\n Option,\n Options,\n WrappedOptionType,\n} from './options-types.ts';\nimport * as v from './valita.ts';\n\nexport type {Config, Group, Option, Options, WrappedOptionType};\n\ntype Primitive = number | string | boolean;\ntype Value = Primitive | Array<Primitive>;\n\ntype RequiredOptionType =\n | v.Type<string>\n | v.Type<number>\n | v.Type<boolean>\n | v.Type<string[]>\n | v.Type<number[]>\n | v.Type<boolean[]>;\n\ntype OptionalOptionType =\n | v.Optional<string>\n | v.Optional<number>\n | v.Optional<boolean>\n | v.Optional<string[]>\n | v.Optional<number[]>\n | v.Optional<boolean[]>;\n\ntype OptionType = RequiredOptionType | OptionalOptionType;\n\n/**\n * Creates a defu instance that overrides arrays instead of merging them.\n */\nconst defu = createDefu((obj, key, value) => {\n if (!Array.isArray(value)) return;\n\n obj[key] = value;\n return true;\n});\n\n/**\n * Converts an Options instance into its corresponding {@link Config} schema.\n */\nfunction configSchema<T extends Options>(\n options: T,\n envNamePrefix: string,\n): v.Type<Config<T>> {\n function makeObjectType(options: Options | Group, group?: string) {\n return v.object(\n Object.fromEntries(\n Object.entries(options).map(\n ([name, value]): [string, OptionType | v.Type] => {\n const addErrorMessage = (t: OptionType) => {\n const {required} = getRequiredOrDefault(t);\n if (required) {\n // Adds an error message for required options that includes the\n // actual name of the option.\n const optionName = toSnakeCase(\n `${envNamePrefix}${group ? group + '_' : ''}${name}`,\n ).toUpperCase();\n return (t as v.Type<string>)\n .optional()\n .assert(\n val => val !== undefined,\n `Missing required option ${optionName}`,\n );\n }\n return t;\n };\n // OptionType\n if (v.instanceOfAbstractType(value)) {\n return [name, addErrorMessage(value)];\n }\n // WrappedOptionType\n const {type} = value;\n if (v.instanceOfAbstractType(type)) {\n return [name, addErrorMessage(type)];\n }\n // OptionGroup\n return [name, makeObjectType(value as Group, name)];\n },\n ),\n ),\n );\n }\n return makeObjectType(options) as v.Type<Config<T>>;\n}\n\n/**\n * Converts an Options instance into an \"env schema\", which is an object with\n * ENV names as its keys, mapped to optional or required string values\n * (corresponding to the optionality of the corresponding options).\n *\n * This is used as a format for encoding options for a multi-tenant version\n * of an app, with an envSchema for each tenant.\n */\nexport function envSchema<T extends Options>(options: T, envNamePrefix = '') {\n const fields: [string, v.Type<string> | v.Optional<string>][] = [];\n\n function addField(name: string, type: OptionType, group?: string) {\n const flag = group ? `${group}_${name}` : name;\n const env = toSnakeCase(`${envNamePrefix}${flag}`).toUpperCase();\n\n const {required} = getRequiredOrDefault(type);\n fields.push([env, required ? v.string() : v.string().optional()]);\n }\n\n function addFields(o: Options | Group, group?: string) {\n Object.entries(o).forEach(([name, value]) => {\n // OptionType\n if (v.instanceOfAbstractType(value)) {\n addField(name, value, group);\n return;\n }\n // WrappedOptionType\n const {type} = value;\n if (v.instanceOfAbstractType(type)) {\n addField(name, type, group);\n return;\n }\n // OptionGroup\n addFields(value as Group, name);\n });\n }\n\n addFields(options);\n\n return v.object(Object.fromEntries(fields));\n}\n\n// type TerminalType is not exported from badrap/valita\ntype TerminalType = Parameters<\n Parameters<v.Type<unknown>['toTerminals']>[0]\n>[0];\n\nfunction getRequiredOrDefault(type: OptionType) {\n const defaultResult = v.testOptional<Value>(undefined, type);\n return {\n required: !defaultResult.ok,\n defaultValue: defaultResult.ok ? defaultResult.value : undefined,\n };\n}\n\nexport type ParseOptions = {\n /** Defaults to process.argv.slice(2) */\n argv?: string[];\n\n envNamePrefix?: string;\n\n description?: {header: string; content: string}[];\n\n /** Defaults to `false` */\n allowUnknown?: boolean;\n\n /** Defaults to `false` */\n allowPartial?: boolean;\n\n /** Defaults to `process.env`. */\n env?: NodeJS.ProcessEnv;\n\n /** Defaults to `true`. */\n emitDeprecationWarnings?: boolean;\n\n /** Defaults to `true`. When false, excludes default values from both config and env return values. */\n includeDefaults?: boolean;\n\n /** Defaults to `console` */\n logger?: OptionalLogger;\n\n /** Defaults to `process.exit` */\n exit?: (code?: number | string | null) => never;\n};\n\nexport function parseOptions<T extends Options>(\n appOptions: T,\n opts: ParseOptions = {},\n): Config<T> {\n return parseOptionsAdvanced(appOptions, opts).config;\n}\n\nexport function parseOptionsAdvanced<T extends Options>(\n appOptions: T,\n opts: ParseOptions = {},\n): {config: Config<T>; env: Record<string, string>; unknown?: string[]} {\n const {\n argv = process.argv.slice(2),\n envNamePrefix = '',\n description = [],\n allowUnknown = false,\n allowPartial = false,\n env: processEnv = process.env,\n emitDeprecationWarnings = true,\n includeDefaults = true,\n logger = console,\n exit = process.exit,\n } = opts;\n // The main logic for converting a valita Type spec to an Option (i.e. flag) spec.\n function addOption(field: string, option: WrappedOptionType, group?: string) {\n const {type, desc = [], deprecated, alias, hidden} = option;\n\n // The group name is prepended to the flag name.\n const flag = group ? toKebabCase(`${group}-${field}`) : toKebabCase(field);\n\n const {required, defaultValue} = getRequiredOrDefault(type);\n let multiple = type.name === 'array';\n const literals = new Set<string>();\n const terminalTypes = new Set<string>();\n\n type.toTerminals(getTerminalTypes);\n\n function getTerminalTypes(t: TerminalType) {\n switch (t.name) {\n case 'undefined':\n case 'optional':\n break;\n case 'array': {\n multiple = true;\n t.prefix.forEach(t => t.toTerminals(getTerminalTypes));\n t.rest?.toTerminals(getTerminalTypes);\n t.suffix.forEach(t => t.toTerminals(getTerminalTypes));\n break;\n }\n case 'literal':\n literals.add(String(t.value));\n terminalTypes.add(typeof t.value);\n break;\n default:\n terminalTypes.add(t.name);\n break;\n }\n }\n const env = toSnakeCase(`${envNamePrefix}${flag}`).toUpperCase();\n if (terminalTypes.size > 1) {\n throw new TypeError(`${env} has mixed types ${[...terminalTypes]}`);\n }\n assert(terminalTypes.size === 1, 'Expected exactly one terminal type');\n const terminalType = [...terminalTypes][0];\n\n if (processEnv[env]) {\n if (multiple) {\n // Technically not water-tight; assumes values for the string[] flag don't contain commas.\n envArgv.push(`--${flag}`, ...processEnv[env].split(','));\n } else {\n envArgv.push(`--${flag}`, processEnv[env]);\n }\n }\n names.set(flag, {field, env});\n\n const spec = [\n (required\n ? '{italic required}'\n : defaultValue !== undefined\n ? `default: ${JSON.stringify(defaultValue)}`\n : 'optional') + '\\n',\n ];\n if (desc) {\n spec.push(...desc);\n }\n\n const typeLabel = [\n literals.size\n ? String(Array.from(literals, l => `{underline ${l}}`))\n : multiple\n ? `{underline ${terminalType}[]}`\n : `{underline ${terminalType}}`,\n ` ${env} env`,\n ];\n\n const opt = {\n name: flag,\n alias,\n type: valueParser(\n env,\n terminalType,\n logger,\n emitDeprecationWarnings ? deprecated : undefined,\n ),\n multiple,\n group,\n description: spec.join('\\n') + '\\n',\n typeLabel: typeLabel.join('\\n') + '\\n',\n hidden: hidden === undefined ? deprecated !== undefined : hidden,\n };\n optsWithoutDefaults.push(opt);\n optsWithDefaults.push({...opt, defaultValue});\n }\n\n const names = new Map<string, {field: string; env: string}>();\n const optsWithDefaults: DescribedOptionDefinition[] = [];\n const optsWithoutDefaults: DescribedOptionDefinition[] = [];\n const envArgv: string[] = [];\n\n try {\n for (const [name, val] of Object.entries(appOptions)) {\n const {type} = val as {type: unknown};\n if (v.instanceOfAbstractType(val)) {\n addOption(name, {type: val});\n } else if (v.instanceOfAbstractType(type)) {\n addOption(name, val as WrappedOptionType);\n } else {\n const group = name;\n for (const [name, option] of Object.entries(val as Group)) {\n const wrapped = v.instanceOfAbstractType(option)\n ? {type: option}\n : option;\n addOption(name, wrapped, group);\n }\n }\n }\n\n const [defaults, env1, unknown] = parseArgs(optsWithDefaults, argv, names);\n const [fromEnv, env2] = parseArgs(optsWithoutDefaults, envArgv, names);\n const [withoutDefaults, env3] = parseArgs(optsWithoutDefaults, argv, names);\n\n switch (unknown?.[0]) {\n case undefined:\n break;\n case '--help':\n case '-h':\n showUsage(optsWithDefaults, description, logger);\n exit(0);\n break;\n default:\n if (!allowUnknown) {\n logger.error?.('Invalid arguments:', unknown);\n showUsage(optsWithDefaults, description, logger);\n exit(0);\n }\n break;\n }\n\n const parsedArgs = includeDefaults\n ? defu(withoutDefaults, fromEnv, defaults)\n : defu(withoutDefaults, fromEnv);\n const env = includeDefaults\n ? {...env1, ...env2, ...env3}\n : {...env2, ...env3};\n\n let schema = configSchema(appOptions, envNamePrefix);\n if (allowPartial || !includeDefaults) {\n // TODO: Type configSchema() to return a v.ObjectType<...>\n schema = v.deepPartial(schema as v.ObjectType) as v.Type<Config<T>>;\n }\n return {\n config: v.parse(parsedArgs, schema),\n env,\n ...(unknown ? {unknown} : {}),\n };\n } catch (e) {\n logger.error?.(String(e));\n showUsage(optsWithDefaults, description, logger);\n throw e;\n }\n}\n\nfunction valueParser(\n optionName: string,\n typeName: string,\n logger: OptionalLogger,\n deprecated: string[] | undefined,\n) {\n return (input: string) => {\n if (deprecated) {\n logger.warn?.(\n template(\n `\\n${optionName} is deprecated:\\n` + deprecated.join('\\n') + '\\n',\n ),\n );\n }\n switch (typeName) {\n case 'string':\n return input;\n case 'boolean':\n return parseBoolean(optionName, input);\n case 'number': {\n const val = Number(input);\n if (Number.isNaN(val)) {\n throw new TypeError(`Invalid input for ${optionName}: \"${input}\"`);\n }\n return val;\n }\n default:\n // Should be impossible given the constraints of `Option`\n throw new TypeError(\n `${optionName} option has unsupported type ${typeName}`,\n );\n }\n };\n}\n\nfunction parseArgs(\n optionDefs: DescribedOptionDefinition[],\n argv: string[],\n names: Map<string, {field: string; env: string}>,\n) {\n function normalizeFlagValue(value: unknown) {\n // A --flag without value is parsed by commandLineArgs() to `null`,\n // but this is a common convention to set a boolean flag to true.\n return value === null ? true : value;\n }\n\n const {\n _all,\n _none: ungrouped,\n _unknown: unknown,\n ...config\n } = commandLineArgs(optionDefs, {\n argv,\n partial: true,\n });\n\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n const result: Record<string, any> = {};\n const envObj: Record<string, string> = {};\n\n function addFlag(flagName: string, value: unknown, group?: string) {\n const {field, env} = must(names.get(flagName));\n const normalized = normalizeFlagValue(value);\n if (group) {\n result[group][field] = normalized;\n } else {\n result[field] = normalized;\n }\n envObj[env] = String(normalized);\n }\n\n for (const [flagName, value] of Object.entries(ungrouped ?? {})) {\n addFlag(flagName, value);\n }\n\n // Then handle (potentially) grouped flags\n for (const [name, value] of Object.entries(config)) {\n if (typeof value !== 'object' || value === null || Array.isArray(value)) {\n addFlag(name, value); // Flag, not a group\n } else {\n const group = name;\n result[group] = {};\n for (const [flagName, flagValue] of Object.entries(value)) {\n addFlag(flagName, flagValue, group);\n }\n }\n }\n\n return [result, envObj, unknown] as const;\n}\n\nexport function flagToEnv(prefix: string, flag: string): string {\n return toSnakeCase(prefix + flag).toUpperCase();\n}\n\nexport function parseBoolean(optionName: string, input: string) {\n const bool = input.toLowerCase();\n if (['true', '1'].includes(bool)) {\n return true;\n } else if (['false', '0'].includes(bool)) {\n return false;\n }\n throw new TypeError(`Invalid input for ${optionName}: \"${input}\"`);\n}\n\nfunction showUsage(\n optionList: DescribedOptionDefinition[],\n description: {header: string; content: string}[] = [],\n logger: OptionalLogger = console,\n) {\n const hide: string[] = [];\n let leftWidth = 35;\n let rightWidth = 70;\n optionList.forEach(({name, typeLabel, description, hidden}) => {\n if (hidden) {\n hide.push(name);\n }\n const text = template(`${name} ${typeLabel ?? ''}`);\n const lines = stripAnsi(text).split('\\n');\n for (const l of lines) {\n leftWidth = Math.max(leftWidth, l.length + 2);\n }\n const desc = stripAnsi(template(description ?? '')).split('\\n');\n for (const l of desc) {\n rightWidth = Math.max(rightWidth, l.length + 2);\n }\n });\n\n const sections: Section[] = [\n {\n optionList,\n reverseNameOrder: true, // Display --flag-name before -alias\n hide,\n tableOptions: {\n columns: [\n {name: 'option', width: leftWidth},\n {name: 'description', width: rightWidth},\n ],\n noTrim: true,\n },\n },\n ];\n\n if (description) {\n sections.unshift(...description);\n }\n\n logger.info?.(commandLineUsage(sections));\n}\n\ntype DescribedOptionDefinition = OptionDefinition & {\n // Additional fields recognized by command-line-usage\n description?: string;\n typeLabel?: string | undefined;\n hidden?: boolean | undefined;\n};\n"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-big-int.js","names":[],"sources":["../../../../../shared/src/parse-big-int.ts"],"sourcesContent":["// Until there's BigInt.fromString(val, radix) ... https://github.com/tc39/proposal-number-fromstring\nexport function parseBigInt(val: string, radix: number): bigint {\n const base = BigInt(radix);\n let result = 0n;\n for (let i = 0; i < val.length; i++) {\n result *= base;\n result += BigInt(parseInt(val[i], radix));\n }\n return result;\n}\n"],"mappings":";AACA,SAAgB,YAAY,KAAa,OAAuB;CAC9D,MAAM,OAAO,OAAO,KAAK;CACzB,IAAI,SAAS;CACb,KAAK,IAAI,IAAI,GAAG,IAAI,IAAI,QAAQ,KAAK;EACnC,UAAU;EACV,UAAU,OAAO,SAAS,IAAI,IAAI,KAAK,CAAC;CAC1C;CACA,OAAO;AACT"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promise-race.js","names":[],"sources":["../../../../../shared/src/promise-race.ts"],"sourcesContent":["type PromiseRaceResult<T extends Record<string, PromiseLike<unknown>>> = {\n [K in Extract<keyof T, string>]: {\n key: K;\n status: 'fulfilled';\n result: Awaited<T[K]>;\n };\n}[Extract<keyof T, string>];\n\nconst NO_PROMISES_MESSAGE = 'No promises to race';\n\nconst wrapPromise = <K extends string, V>(\n key: K,\n promise: PromiseLike<V>,\n): Promise<{key: K; status: 'fulfilled'; result: V}> =>\n Promise.resolve(promise).then(result => ({\n key,\n status: 'fulfilled' as const,\n result,\n }));\n\n/**\n * Race a record of promises and resolve with the first resolved entry.\n *\n * @param promises Record of promises to race.\n * @returns Promise resolving to a discriminated union of key/result pairs.\n * @throws An error if the record is empty or if a promise is rejected.\n */\nexport async function promiseRace<\n T extends Record<string, PromiseLike<unknown>>,\n>(promises: T): Promise<PromiseRaceResult<T> & {}> {\n const keys = Object.keys(promises) as Array<Extract<keyof T, string>>;\n\n if (keys.length === 0) {\n throw new Error(NO_PROMISES_MESSAGE);\n }\n\n const wrapped = keys.map(key =>\n wrapPromise(key, promises[key] as PromiseLike<Awaited<T[typeof key]>>),\n );\n\n return await Promise.race(wrapped);\n}\n"],"mappings":";AAQA,IAAM,sBAAsB;AAE5B,IAAM,eACJ,KACA,YAEA,QAAQ,QAAQ,OAAO,EAAE,MAAK,YAAW;CACvC;CACA,QAAQ;CACR;AACF,EAAE;;;;;;;;AASJ,eAAsB,YAEpB,UAAiD;CACjD,MAAM,OAAO,OAAO,KAAK,QAAQ;CAEjC,IAAI,KAAK,WAAW,GAClB,MAAM,IAAI,MAAM,mBAAmB;CAGrC,MAAM,UAAU,KAAK,KAAI,QACvB,YAAY,KAAK,SAAS,IAA2C,CACvE;CAEA,OAAO,MAAM,QAAQ,KAAK,OAAO;AACnC"}
@@ -0,0 +1,120 @@
1
+ import { assert } from "./asserts.js";
2
+ import { RingBuffer } from "./ring-buffer.js";
3
+ import { resolver } from "@rocicorp/resolver";
4
+ //#region ../shared/src/queue.ts
5
+ /**
6
+ * A Queue allows the consumers to await (possibly future) values,
7
+ * and producers to await the consumption of their values.
8
+ */
9
+ var Queue = class {
10
+ #consumers = new RingBuffer();
11
+ #produced = new RingBuffer();
12
+ enqueue(value) {
13
+ const consumer = this.#consumers.shift();
14
+ if (consumer) {
15
+ consumer.resolver.resolve(value);
16
+ clearTimeout(consumer.timeoutID);
17
+ return;
18
+ }
19
+ this.#produced.push({ value });
20
+ }
21
+ enqueueRejection(reason) {
22
+ const consumer = this.#consumers.shift();
23
+ if (consumer) {
24
+ consumer.resolver.reject(reason);
25
+ clearTimeout(consumer.timeoutID);
26
+ return;
27
+ }
28
+ this.#produced.push({ rejection: reason });
29
+ }
30
+ /**
31
+ * Deletes all unconsumed entries matching the specified `value` based on identity equality.
32
+ * The consumed callback(s) are resolved as if the values were dequeued.
33
+ *
34
+ * Note: deletion of `undefined` values is not supported. This method will assert
35
+ * if `value` is undefined.
36
+ *
37
+ * @returns The number of entries deleted.
38
+ */
39
+ delete(value) {
40
+ assert(value !== void 0, "Queue delete value must not be undefined");
41
+ const items = this.#produced.drain();
42
+ let count = 0;
43
+ for (const p of items) if (p.value === value) count++;
44
+ else this.#produced.push(p);
45
+ return count;
46
+ }
47
+ /**
48
+ * @param timeoutValue An optional value to resolve if `timeoutMs` is reached.
49
+ * @param timeoutMs The milliseconds after which the `timeoutValue` is resolved
50
+ * if nothing is produced for the consumer.
51
+ * @returns A Promise that resolves to the next enqueued value.
52
+ */
53
+ dequeue(timeoutValue, timeoutMs = 0) {
54
+ const produced = this.#produced.shift();
55
+ if (produced) return produced.value ?? Promise.reject(produced.rejection);
56
+ const r = resolver();
57
+ const consumer = {
58
+ resolver: r,
59
+ timeoutID: void 0
60
+ };
61
+ consumer.timeoutID = timeoutValue === void 0 ? void 0 : setTimeout(() => {
62
+ if (this.#consumers.delete(consumer) > 0) consumer.resolver.resolve(timeoutValue);
63
+ }, timeoutMs);
64
+ this.#consumers.push(consumer);
65
+ return r.promise;
66
+ }
67
+ /**
68
+ * Drains the entire queue.
69
+ *
70
+ * Usage example:
71
+ * ```ts
72
+ * // A consumer that, when awoken, drains
73
+ * // all entries in the queue in order to
74
+ * // process them in a batch.
75
+ * for (;;) {
76
+ * const value = await queue.dequeue();
77
+ * const rest = queue.drain();
78
+ * }
79
+ * ```
80
+ */
81
+ drain() {
82
+ return this.#produced.drain().map((p) => p.value);
83
+ }
84
+ /**
85
+ * @returns The instantaneous number of outstanding values waiting to be
86
+ * dequeued. Note that if a value was enqueued while a consumer
87
+ * was waiting (with `await dequeue()`), the value is immediately
88
+ * handed to the consumer and the Queue's size remains 0.
89
+ */
90
+ size() {
91
+ return this.#produced.size;
92
+ }
93
+ asAsyncIterable(cleanup = NOOP) {
94
+ return { [Symbol.asyncIterator]: () => this.asAsyncIterator(cleanup) };
95
+ }
96
+ asAsyncIterator(cleanup = NOOP) {
97
+ return {
98
+ next: async () => {
99
+ try {
100
+ return { value: await this.dequeue() };
101
+ } catch (e) {
102
+ cleanup();
103
+ throw e;
104
+ }
105
+ },
106
+ return: (value) => {
107
+ cleanup();
108
+ return Promise.resolve({
109
+ value,
110
+ done: true
111
+ });
112
+ }
113
+ };
114
+ }
115
+ };
116
+ var NOOP = () => {};
117
+ //#endregion
118
+ export { Queue };
119
+
120
+ //# sourceMappingURL=queue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queue.js","names":["#consumers","#produced"],"sources":["../../../../../shared/src/queue.ts"],"sourcesContent":["import {resolver, type Resolver} from '@rocicorp/resolver';\nimport {assert} from './asserts.ts';\nimport {RingBuffer} from './ring-buffer.ts';\n\n/**\n * A Queue allows the consumers to await (possibly future) values,\n * and producers to await the consumption of their values.\n */\nexport class Queue<T> {\n // Consumers waiting for entries to be produced.\n readonly #consumers = new RingBuffer<Consumer<T>>();\n // Produced entries waiting to be consumed.\n readonly #produced = new RingBuffer<Produced<T>>();\n\n enqueue(value: T): void {\n const consumer = this.#consumers.shift();\n if (consumer) {\n consumer.resolver.resolve(value);\n clearTimeout(consumer.timeoutID);\n return;\n }\n this.#produced.push({value});\n }\n\n enqueueRejection(reason?: unknown): void {\n const consumer = this.#consumers.shift();\n if (consumer) {\n consumer.resolver.reject(reason);\n clearTimeout(consumer.timeoutID);\n return;\n }\n this.#produced.push({rejection: reason});\n }\n\n /**\n * Deletes all unconsumed entries matching the specified `value` based on identity equality.\n * The consumed callback(s) are resolved as if the values were dequeued.\n *\n * Note: deletion of `undefined` values is not supported. This method will assert\n * if `value` is undefined.\n *\n * @returns The number of entries deleted.\n */\n delete(value: T): number {\n assert(value !== undefined, 'Queue delete value must not be undefined');\n\n // Drain, filter, and re-push. This is O(n) but delete() is rare.\n const items = this.#produced.drain();\n let count = 0;\n for (const p of items) {\n if (p.value === value) {\n count++;\n } else {\n this.#produced.push(p);\n }\n }\n return count;\n }\n\n /**\n * @param timeoutValue An optional value to resolve if `timeoutMs` is reached.\n * @param timeoutMs The milliseconds after which the `timeoutValue` is resolved\n * if nothing is produced for the consumer.\n * @returns A Promise that resolves to the next enqueued value.\n */\n dequeue(timeoutValue?: T, timeoutMs: number = 0): Promise<T> | T {\n const produced = this.#produced.shift();\n if (produced) {\n return produced.value ?? Promise.reject(produced.rejection);\n }\n const r = resolver<T>();\n const consumer: Consumer<T> = {resolver: r, timeoutID: undefined};\n const timeoutID =\n timeoutValue === undefined\n ? undefined\n : setTimeout(() => {\n if (this.#consumers.delete(consumer) > 0) {\n consumer.resolver.resolve(timeoutValue);\n }\n }, timeoutMs);\n consumer.timeoutID = timeoutID;\n this.#consumers.push(consumer);\n return r.promise;\n }\n\n /**\n * Drains the entire queue.\n *\n * Usage example:\n * ```ts\n * // A consumer that, when awoken, drains\n * // all entries in the queue in order to\n * // process them in a batch.\n * for (;;) {\n * const value = await queue.dequeue();\n * const rest = queue.drain();\n * }\n * ```\n */\n drain(): (T | undefined)[] {\n return this.#produced.drain().map(p => p.value);\n }\n\n /**\n * @returns The instantaneous number of outstanding values waiting to be\n * dequeued. Note that if a value was enqueued while a consumer\n * was waiting (with `await dequeue()`), the value is immediately\n * handed to the consumer and the Queue's size remains 0.\n */\n size(): number {\n return this.#produced.size;\n }\n\n asAsyncIterable(cleanup = NOOP): AsyncIterable<T> {\n return {[Symbol.asyncIterator]: () => this.asAsyncIterator(cleanup)};\n }\n\n asAsyncIterator(cleanup = NOOP): AsyncIterator<T> {\n return {\n next: async () => {\n try {\n const value = await this.dequeue();\n return {value};\n } catch (e) {\n cleanup();\n throw e;\n }\n },\n return: value => {\n cleanup();\n return Promise.resolve({value, done: true});\n },\n };\n }\n}\n\nconst NOOP = () => {};\n\ntype Consumer<T> = {\n resolver: Resolver<T>;\n timeoutID: ReturnType<typeof setTimeout> | undefined;\n};\n\ntype Produced<T> =\n | {value: T; rejection?: undefined}\n | {value?: undefined; rejection: unknown};\n"],"mappings":";;;;;;;;AAQA,IAAa,QAAb,MAAsB;CAEpB,aAAsB,IAAI,WAAwB;CAElD,YAAqB,IAAI,WAAwB;CAEjD,QAAQ,OAAgB;EACtB,MAAM,WAAW,KAAKA,WAAW,MAAM;EACvC,IAAI,UAAU;GACZ,SAAS,SAAS,QAAQ,KAAK;GAC/B,aAAa,SAAS,SAAS;GAC/B;EACF;EACA,KAAKC,UAAU,KAAK,EAAC,MAAK,CAAC;CAC7B;CAEA,iBAAiB,QAAwB;EACvC,MAAM,WAAW,KAAKD,WAAW,MAAM;EACvC,IAAI,UAAU;GACZ,SAAS,SAAS,OAAO,MAAM;GAC/B,aAAa,SAAS,SAAS;GAC/B;EACF;EACA,KAAKC,UAAU,KAAK,EAAC,WAAW,OAAM,CAAC;CACzC;;;;;;;;;;CAWA,OAAO,OAAkB;EACvB,OAAO,UAAU,KAAA,GAAW,0CAA0C;EAGtE,MAAM,QAAQ,KAAKA,UAAU,MAAM;EACnC,IAAI,QAAQ;EACZ,KAAK,MAAM,KAAK,OACd,IAAI,EAAE,UAAU,OACd;OAEA,KAAKA,UAAU,KAAK,CAAC;EAGzB,OAAO;CACT;;;;;;;CAQA,QAAQ,cAAkB,YAAoB,GAAmB;EAC/D,MAAM,WAAW,KAAKA,UAAU,MAAM;EACtC,IAAI,UACF,OAAO,SAAS,SAAS,QAAQ,OAAO,SAAS,SAAS;EAE5D,MAAM,IAAI,SAAY;EACtB,MAAM,WAAwB;GAAC,UAAU;GAAG,WAAW,KAAA;EAAS;EAShE,SAAS,YAPP,iBAAiB,KAAA,IACb,KAAA,IACA,iBAAiB;GACf,IAAI,KAAKD,WAAW,OAAO,QAAQ,IAAI,GACrC,SAAS,SAAS,QAAQ,YAAY;EAE1C,GAAG,SAAS;EAElB,KAAKA,WAAW,KAAK,QAAQ;EAC7B,OAAO,EAAE;CACX;;;;;;;;;;;;;;;CAgBA,QAA2B;EACzB,OAAO,KAAKC,UAAU,MAAM,EAAE,KAAI,MAAK,EAAE,KAAK;CAChD;;;;;;;CAQA,OAAe;EACb,OAAO,KAAKA,UAAU;CACxB;CAEA,gBAAgB,UAAU,MAAwB;EAChD,OAAO,GAAE,OAAO,sBAAsB,KAAK,gBAAgB,OAAO,EAAC;CACrE;CAEA,gBAAgB,UAAU,MAAwB;EAChD,OAAO;GACL,MAAM,YAAY;IAChB,IAAI;KAEF,OAAO,EAAC,OAAA,MADY,KAAK,QAAQ,EACpB;IACf,SAAS,GAAG;KACV,QAAQ;KACR,MAAM;IACR;GACF;GACA,SAAQ,UAAS;IACf,QAAQ;IACR,OAAO,QAAQ,QAAQ;KAAC;KAAO,MAAM;IAAI,CAAC;GAC5C;EACF;CACF;AACF;AAEA,IAAM,aAAa,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rand.js","names":[],"sources":["../../../../../shared/src/rand.ts"],"sourcesContent":["/**\n * @param min Inclusive minimum of the result.\n * @param max Inclusive maximum of the result.\n * @returns A random integer in the (inclusive) range of [`min`, `max`].\n */\nexport function randInt(min: number, max: number) {\n min = Math.ceil(min);\n max = Math.floor(max);\n return Math.floor(Math.random() * (max - min + 1) + min);\n}\n"],"mappings":";;;;;;AAKA,SAAgB,QAAQ,KAAa,KAAa;CAChD,MAAM,KAAK,KAAK,GAAG;CACnB,MAAM,KAAK,MAAM,GAAG;CACpB,OAAO,KAAK,MAAM,KAAK,OAAO,KAAK,MAAM,MAAM,KAAK,GAAG;AACzD"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"random-uint64.js","names":[],"sources":["../../../../../shared/src/random-uint64.ts"],"sourcesContent":["export function randomUint64(): bigint {\n // Generate two random 32-bit unsigned integers using Math.random()\n const high = Math.floor(Math.random() * 0xffffffff); // High 32 bits\n const low = Math.floor(Math.random() * 0xffffffff); // Low 32 bits\n\n // Combine the high and low parts to form a 64-bit unsigned integer\n return (BigInt(high) << 32n) | BigInt(low);\n}\n"],"mappings":";AAAA,SAAgB,eAAuB;CAErC,MAAM,OAAO,KAAK,MAAM,KAAK,OAAO,IAAI,UAAU;CAClD,MAAM,MAAM,KAAK,MAAM,KAAK,OAAO,IAAI,UAAU;CAGjD,OAAQ,OAAO,IAAI,KAAK,MAAO,OAAO,GAAG;AAC3C"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"random-values.js","names":[],"sources":["../../../../../shared/src/random-values.ts"],"sourcesContent":["export function getNonCryptoRandomValues(array: Uint8Array) {\n if (array === null) {\n throw new TypeError('array cannot be null');\n }\n\n // Fill the array with random values\n for (let i = 0; i < array.length; i++) {\n array[i] = Math.floor(Math.random() * 256); // Random byte (0-255)\n }\n\n return array;\n}\n\nexport function randomCharacters(length: number) {\n let result = '';\n const characters =\n 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';\n const charactersLength = characters.length;\n let counter = 0;\n while (counter < length) {\n result += characters.charAt(Math.floor(Math.random() * charactersLength));\n counter += 1;\n }\n return result;\n}\n"],"mappings":";AAAA,SAAgB,yBAAyB,OAAmB;CAC1D,IAAI,UAAU,MACZ,MAAM,IAAI,UAAU,sBAAsB;CAI5C,KAAK,IAAI,IAAI,GAAG,IAAI,MAAM,QAAQ,KAChC,MAAM,KAAK,KAAK,MAAM,KAAK,OAAO,IAAI,GAAG;CAG3C,OAAO;AACT"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"record-proxy.js","names":["#toValue","#onMissing","#cache","#getOwnValue"],"sources":["../../../../../shared/src/record-proxy.ts"],"sourcesContent":["const missing = Symbol();\n\n/**\n * A proxy handler that lazily transforms and caches record values.\n *\n * When a property is accessed, the handler transforms the source value using\n * the provided `toValue` function and caches the result. Subsequent accesses\n * return the cached value without re-transforming.\n *\n * @template Source - The type of values in the source record\n * @template Dest - The type of transformed values\n */\nclass RecordProxyHandler<Source, Dest> implements ProxyHandler<\n Record<string, Source>\n> {\n readonly #toValue: (source: Source, prop: string) => Dest;\n readonly #onMissing: ((prop: string) => void) | undefined;\n readonly #cache: Map<string, Dest | typeof missing> = new Map();\n\n /**\n * @param toValue - Function to transform source values to destination values\n * @param onMissing - Optional function called when accessing a non-existent\n * property. Can throw an error if desired.\n */\n constructor(\n toValue: (source: Source, prop: string) => Dest,\n onMissing?: (prop: string) => void,\n ) {\n this.#toValue = toValue;\n this.#onMissing = onMissing;\n }\n\n #getOwnValue(\n target: Record<string, Source>,\n prop: string,\n ): Dest | typeof missing {\n const v = this.#cache.get(prop);\n if (v !== undefined) {\n return v;\n }\n\n if (Object.hasOwn(target, prop)) {\n const value = this.#toValue(target[prop], prop);\n this.#cache.set(prop, value);\n return value;\n }\n return missing;\n }\n\n get(target: Record<string, Source>, prop: string | symbol) {\n if (typeof prop !== 'string') {\n return undefined;\n }\n // Only transform own properties; return inherited properties as-is\n const ownValue = this.#getOwnValue(target, prop);\n if (ownValue !== missing) {\n return ownValue;\n }\n this.#onMissing?.(prop);\n\n // Inherited property - return without transformation\n return target[prop];\n }\n\n getOwnPropertyDescriptor(\n target: Record<string, Source>,\n p: string | symbol,\n ): PropertyDescriptor | undefined {\n if (typeof p !== 'string') {\n return undefined;\n }\n\n const value = this.#getOwnValue(target, p);\n if (value === missing) {\n return undefined;\n }\n const desc = Reflect.getOwnPropertyDescriptor(target, p);\n return {...desc, value};\n }\n}\n\n/**\n * Creates a proxy that lazily transforms and caches record values.\n *\n * @template Source - The type of values in the source record\n * @template Dest - The type of transformed values\n * @param target - The source record to proxy\n * @param toValue - Function to transform source values to destination values\n * @param onMissing - Optional function called when accessing a non-existent\n * property. Can throw an error if desired.\n * @returns A proxy that presents transformed values\n */\nexport function recordProxy<Source, Dest>(\n target: Record<string, Source>,\n toValue: (source: Source, prop: string) => Dest,\n onMissing?: (prop: string) => void,\n): Record<string, Dest> {\n return new Proxy(\n target,\n new RecordProxyHandler(toValue, onMissing),\n ) as unknown as Record<string, Dest>;\n}\n"],"mappings":";AAAA,IAAM,UAAU,OAAO;;;;;;;;;;;AAYvB,IAAM,qBAAN,MAEE;CACA;CACA;CACA,yBAAsD,IAAI,IAAI;;;;;;CAO9D,YACE,SACA,WACA;EACA,KAAKA,WAAW;EAChB,KAAKC,aAAa;CACpB;CAEA,aACE,QACA,MACuB;EACvB,MAAM,IAAI,KAAKC,OAAO,IAAI,IAAI;EAC9B,IAAI,MAAM,KAAA,GACR,OAAO;EAGT,IAAI,OAAO,OAAO,QAAQ,IAAI,GAAG;GAC/B,MAAM,QAAQ,KAAKF,SAAS,OAAO,OAAO,IAAI;GAC9C,KAAKE,OAAO,IAAI,MAAM,KAAK;GAC3B,OAAO;EACT;EACA,OAAO;CACT;CAEA,IAAI,QAAgC,MAAuB;EACzD,IAAI,OAAO,SAAS,UAClB;EAGF,MAAM,WAAW,KAAKC,aAAa,QAAQ,IAAI;EAC/C,IAAI,aAAa,SACf,OAAO;EAET,KAAKF,aAAa,IAAI;EAGtB,OAAO,OAAO;CAChB;CAEA,yBACE,QACA,GACgC;EAChC,IAAI,OAAO,MAAM,UACf;EAGF,MAAM,QAAQ,KAAKE,aAAa,QAAQ,CAAC;EACzC,IAAI,UAAU,SACZ;EAGF,OAAO;GAAC,GADK,QAAQ,yBAAyB,QAAQ,CAC3C;GAAM;EAAK;CACxB;AACF;;;;;;;;;;;;AAaA,SAAgB,YACd,QACA,SACA,WACsB;CACtB,OAAO,IAAI,MACT,QACA,IAAI,mBAAmB,SAAS,SAAS,CAC3C;AACF"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolved-promises.js","names":[],"sources":["../../../../../shared/src/resolved-promises.ts"],"sourcesContent":["export const promiseTrue = Promise.resolve(true as const);\nexport const promiseFalse = Promise.resolve(false as const);\nexport const promiseUndefined = Promise.resolve(undefined);\nexport const promiseVoid = Promise.resolve();\n\n/**\n * A promise that never resolves.\n */\nexport const promiseNever = new Promise<never>(() => {});\n"],"mappings":";AAAA,IAAa,cAAc,QAAQ,QAAQ,IAAa;AACxD,IAAa,eAAe,QAAQ,QAAQ,KAAc;AAC1B,QAAQ,QAAQ,KAAA,CAAS;AACzD,IAAa,cAAc,QAAQ,QAAQ;AAKf,IAAI,cAAqB,CAAC,CAAC"}
@@ -0,0 +1,109 @@
1
+ //#region ../shared/src/ring-buffer.ts
2
+ var DEFAULT_INITIAL_CAPACITY = 16;
3
+ var MIN_CAPACITY = 16;
4
+ /**
5
+ * A FIFO ring buffer backed by a circular array. Provides:
6
+ *
7
+ * - `push()` — O(1) amortized (O(n) on resize)
8
+ * - `shift()` — O(1)
9
+ * - `size` — O(1)
10
+ * - `drain()` — O(n)
11
+ *
12
+ * The buffer grows (doubles) when full and shrinks (halves) when
13
+ * utilization drops below 25%, bounded by {@link MIN_CAPACITY}.
14
+ */
15
+ var RingBuffer = class {
16
+ #buffer;
17
+ #head = 0;
18
+ #size = 0;
19
+ #capacity;
20
+ constructor(initialCapacity = DEFAULT_INITIAL_CAPACITY) {
21
+ this.#capacity = Math.max(MIN_CAPACITY, initialCapacity);
22
+ this.#buffer = Array.from({ length: initialCapacity });
23
+ }
24
+ get size() {
25
+ return this.#size;
26
+ }
27
+ push(value) {
28
+ if (this.#size === this.#capacity) this.#grow();
29
+ this.#buffer[(this.#head + this.#size) % this.#capacity] = value;
30
+ this.#size++;
31
+ }
32
+ /** Removes and returns the front element, or `undefined` if empty. */
33
+ shift() {
34
+ if (this.#size === 0) return;
35
+ const value = this.#buffer[this.#head];
36
+ this.#buffer[this.#head] = void 0;
37
+ this.#head = (this.#head + 1) % this.#capacity;
38
+ this.#size--;
39
+ if (this.#size > 0 && this.#size < this.#capacity >> 2 && this.#capacity > MIN_CAPACITY) this.#shrink();
40
+ return value;
41
+ }
42
+ /**
43
+ * Removes all elements matching `value` (by identity `===`).
44
+ *
45
+ * This is O(n) — suitable for rare operations like cancellation.
46
+ *
47
+ * @returns The number of elements removed.
48
+ */
49
+ delete(value) {
50
+ if (this.#size === 0) return 0;
51
+ const newBuffer = Array.from({ length: this.#capacity });
52
+ let newSize = 0;
53
+ let count = 0;
54
+ for (let i = 0; i < this.#size; i++) {
55
+ const item = this.#buffer[(this.#head + i) % this.#capacity];
56
+ if (item === value) count++;
57
+ else newBuffer[newSize++] = item;
58
+ }
59
+ this.#buffer = newBuffer;
60
+ this.#head = 0;
61
+ this.#size = newSize;
62
+ return count;
63
+ }
64
+ /**
65
+ * Removes and returns all elements in FIFO order, resetting the buffer.
66
+ */
67
+ drain() {
68
+ const result = Array.from({ length: this.#size });
69
+ for (let i = 0; i < this.#size; i++) result[i] = this.#buffer[(this.#head + i) % this.#capacity];
70
+ this.#head = 0;
71
+ this.#size = 0;
72
+ this.#buffer = Array.from({ length: this.#capacity });
73
+ return result;
74
+ }
75
+ /**
76
+ * Grows the buffer in place by doubling its length and relocating
77
+ * only the wrapped-around elements (those before #head) into the
78
+ * newly available space. No new array is allocated.
79
+ */
80
+ #grow() {
81
+ const oldLen = this.#buffer.length;
82
+ const newLen = oldLen * 2;
83
+ this.#buffer.length = newLen;
84
+ this.#capacity = newLen;
85
+ for (let i = 0; i < this.#head; i++) {
86
+ this.#buffer[oldLen + i] = this.#buffer[i];
87
+ this.#buffer[i] = void 0;
88
+ }
89
+ }
90
+ /**
91
+ * Shrinks the buffer in place by halving its length. Elements whose
92
+ * indices fall in the removed half are relocated into the lower half,
93
+ * then the array is truncated.
94
+ */
95
+ #shrink() {
96
+ const oldLen = this.#buffer.length;
97
+ const newLen = Math.max(MIN_CAPACITY, oldLen >> 1);
98
+ const left = Math.max(newLen, this.#head);
99
+ const right = Math.min(this.#head + this.#size, oldLen);
100
+ for (let i = left; i < right; i++) this.#buffer[i - newLen] = this.#buffer[i];
101
+ if (this.#head >= newLen) this.#head -= newLen;
102
+ this.#buffer.length = newLen;
103
+ this.#capacity = newLen;
104
+ }
105
+ };
106
+ //#endregion
107
+ export { RingBuffer };
108
+
109
+ //# sourceMappingURL=ring-buffer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ring-buffer.js","names":["#capacity","#buffer","#size","#grow","#head","#shrink"],"sources":["../../../../../shared/src/ring-buffer.ts"],"sourcesContent":["const DEFAULT_INITIAL_CAPACITY = 16;\nconst MIN_CAPACITY = 16;\n\n/**\n * A FIFO ring buffer backed by a circular array. Provides:\n *\n * - `push()` — O(1) amortized (O(n) on resize)\n * - `shift()` — O(1)\n * - `size` — O(1)\n * - `drain()` — O(n)\n *\n * The buffer grows (doubles) when full and shrinks (halves) when\n * utilization drops below 25%, bounded by {@link MIN_CAPACITY}.\n */\nexport class RingBuffer<T> {\n #buffer: (T | undefined)[];\n #head = 0;\n #size = 0;\n #capacity: number;\n\n constructor(initialCapacity = DEFAULT_INITIAL_CAPACITY) {\n this.#capacity = Math.max(MIN_CAPACITY, initialCapacity);\n this.#buffer = Array.from({length: initialCapacity});\n }\n\n get size(): number {\n return this.#size;\n }\n\n push(value: T): void {\n if (this.#size === this.#capacity) {\n this.#grow();\n }\n this.#buffer[(this.#head + this.#size) % this.#capacity] = value;\n this.#size++;\n }\n\n /** Removes and returns the front element, or `undefined` if empty. */\n shift(): T | undefined {\n if (this.#size === 0) {\n return undefined;\n }\n const value = this.#buffer[this.#head];\n this.#buffer[this.#head] = undefined; // allow GC of removed element\n this.#head = (this.#head + 1) % this.#capacity;\n this.#size--;\n\n // Shrink when utilization drops below 25%, keeping a minimum capacity.\n if (\n this.#size > 0 &&\n this.#size < this.#capacity >> 2 &&\n this.#capacity > MIN_CAPACITY\n ) {\n this.#shrink();\n }\n\n return value;\n }\n\n /**\n * Removes all elements matching `value` (by identity `===`).\n *\n * This is O(n) — suitable for rare operations like cancellation.\n *\n * @returns The number of elements removed.\n */\n delete(value: T): number {\n if (this.#size === 0) {\n return 0;\n }\n // Rebuild the buffer without matching elements.\n const newBuffer: (T | undefined)[] = Array.from({length: this.#capacity});\n let newSize = 0;\n let count = 0;\n for (let i = 0; i < this.#size; i++) {\n const item = this.#buffer[(this.#head + i) % this.#capacity];\n if (item === value) {\n count++;\n } else {\n newBuffer[newSize++] = item;\n }\n }\n this.#buffer = newBuffer;\n this.#head = 0;\n this.#size = newSize;\n return count;\n }\n\n /**\n * Removes and returns all elements in FIFO order, resetting the buffer.\n */\n drain(): T[] {\n const result = Array.from<T>({length: this.#size});\n for (let i = 0; i < this.#size; i++) {\n result[i] = this.#buffer[(this.#head + i) % this.#capacity] as T;\n }\n this.#head = 0;\n this.#size = 0;\n this.#buffer = Array.from({length: this.#capacity});\n return result;\n }\n\n /**\n * Grows the buffer in place by doubling its length and relocating\n * only the wrapped-around elements (those before #head) into the\n * newly available space. No new array is allocated.\n */\n #grow(): void {\n const oldLen = this.#buffer.length;\n const newLen = oldLen * 2;\n this.#buffer.length = newLen;\n this.#capacity = newLen;\n\n // Copy wrapped-around elements (indices 0..head-1) into the new space.\n for (let i = 0; i < this.#head; i++) {\n this.#buffer[oldLen + i] = this.#buffer[i];\n this.#buffer[i] = undefined; // ensure gc when the element is removed\n }\n }\n\n /**\n * Shrinks the buffer in place by halving its length. Elements whose\n * indices fall in the removed half are relocated into the lower half,\n * then the array is truncated.\n */\n #shrink(): void {\n const oldLen = this.#buffer.length;\n const newLen = Math.max(MIN_CAPACITY, oldLen >> 1);\n\n // Move elements that sit in the upper half down by newLen.\n const left = Math.max(newLen, this.#head);\n const right = Math.min(this.#head + this.#size, oldLen);\n for (let i = left; i < right; i++) {\n this.#buffer[i - newLen] = this.#buffer[i];\n }\n\n if (this.#head >= newLen) {\n this.#head -= newLen;\n }\n this.#buffer.length = newLen;\n this.#capacity = newLen;\n }\n}\n"],"mappings":";AAAA,IAAM,2BAA2B;AACjC,IAAM,eAAe;;;;;;;;;;;;AAarB,IAAa,aAAb,MAA2B;CACzB;CACA,QAAQ;CACR,QAAQ;CACR;CAEA,YAAY,kBAAkB,0BAA0B;EACtD,KAAKA,YAAY,KAAK,IAAI,cAAc,eAAe;EACvD,KAAKC,UAAU,MAAM,KAAK,EAAC,QAAQ,gBAAe,CAAC;CACrD;CAEA,IAAI,OAAe;EACjB,OAAO,KAAKC;CACd;CAEA,KAAK,OAAgB;EACnB,IAAI,KAAKA,UAAU,KAAKF,WACtB,KAAKG,MAAM;EAEb,KAAKF,SAAS,KAAKG,QAAQ,KAAKF,SAAS,KAAKF,aAAa;EAC3D,KAAKE;CACP;;CAGA,QAAuB;EACrB,IAAI,KAAKA,UAAU,GACjB;EAEF,MAAM,QAAQ,KAAKD,QAAQ,KAAKG;EAChC,KAAKH,QAAQ,KAAKG,SAAS,KAAA;EAC3B,KAAKA,SAAS,KAAKA,QAAQ,KAAK,KAAKJ;EACrC,KAAKE;EAGL,IACE,KAAKA,QAAQ,KACb,KAAKA,QAAQ,KAAKF,aAAa,KAC/B,KAAKA,YAAY,cAEjB,KAAKK,QAAQ;EAGf,OAAO;CACT;;;;;;;;CASA,OAAO,OAAkB;EACvB,IAAI,KAAKH,UAAU,GACjB,OAAO;EAGT,MAAM,YAA+B,MAAM,KAAK,EAAC,QAAQ,KAAKF,UAAS,CAAC;EACxE,IAAI,UAAU;EACd,IAAI,QAAQ;EACZ,KAAK,IAAI,IAAI,GAAG,IAAI,KAAKE,OAAO,KAAK;GACnC,MAAM,OAAO,KAAKD,SAAS,KAAKG,QAAQ,KAAK,KAAKJ;GAClD,IAAI,SAAS,OACX;QAEA,UAAU,aAAa;EAE3B;EACA,KAAKC,UAAU;EACf,KAAKG,QAAQ;EACb,KAAKF,QAAQ;EACb,OAAO;CACT;;;;CAKA,QAAa;EACX,MAAM,SAAS,MAAM,KAAQ,EAAC,QAAQ,KAAKA,MAAK,CAAC;EACjD,KAAK,IAAI,IAAI,GAAG,IAAI,KAAKA,OAAO,KAC9B,OAAO,KAAK,KAAKD,SAAS,KAAKG,QAAQ,KAAK,KAAKJ;EAEnD,KAAKI,QAAQ;EACb,KAAKF,QAAQ;EACb,KAAKD,UAAU,MAAM,KAAK,EAAC,QAAQ,KAAKD,UAAS,CAAC;EAClD,OAAO;CACT;;;;;;CAOA,QAAc;EACZ,MAAM,SAAS,KAAKC,QAAQ;EAC5B,MAAM,SAAS,SAAS;EACxB,KAAKA,QAAQ,SAAS;EACtB,KAAKD,YAAY;EAGjB,KAAK,IAAI,IAAI,GAAG,IAAI,KAAKI,OAAO,KAAK;GACnC,KAAKH,QAAQ,SAAS,KAAK,KAAKA,QAAQ;GACxC,KAAKA,QAAQ,KAAK,KAAA;EACpB;CACF;;;;;;CAOA,UAAgB;EACd,MAAM,SAAS,KAAKA,QAAQ;EAC5B,MAAM,SAAS,KAAK,IAAI,cAAc,UAAU,CAAC;EAGjD,MAAM,OAAO,KAAK,IAAI,QAAQ,KAAKG,KAAK;EACxC,MAAM,QAAQ,KAAK,IAAI,KAAKA,QAAQ,KAAKF,OAAO,MAAM;EACtD,KAAK,IAAI,IAAI,MAAM,IAAI,OAAO,KAC5B,KAAKD,QAAQ,IAAI,UAAU,KAAKA,QAAQ;EAG1C,IAAI,KAAKG,SAAS,QAChB,KAAKA,SAAS;EAEhB,KAAKH,QAAQ,SAAS;EACtB,KAAKD,YAAY;CACnB;AACF"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sentinels.js","names":[],"sources":["../../../../../shared/src/sentinels.ts"],"sourcesContent":["export function emptyFunction() {}\nexport const emptyObject = Object.freeze({});\nexport const emptyArray = Object.freeze([]);\nexport function identity<T>(x: T): T {\n return x;\n}\n"],"mappings":";AAAA,SAAgB,gBAAgB,CAAC;AACjC,IAAa,cAAc,OAAO,OAAO,CAAC,CAAC;AAC3C,IAAa,aAAa,OAAO,OAAO,CAAC,CAAC;AAC1C,SAAgB,SAAY,GAAS;CACnC,OAAO;AACT"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"set-utils.js","names":[],"sources":["../../../../../shared/src/set-utils.ts"],"sourcesContent":["// TODO: Change lib to pick up this type definition\n\ninterface ReadonlySetLike<T> {\n /**\n * Despite its name, returns an iterator of the values in the set-like.\n */\n keys(): Iterator<T>;\n /**\n * @returns a boolean indicating whether an element with the specified value exists in the set-like or not.\n */\n has(value: T): boolean;\n /**\n * @returns the number of (unique) elements in the set-like.\n */\n readonly size: number;\n}\n\nexport function equals<T>(\n a: ReadonlySetLike<T>,\n b: ReadonlySetLike<T>,\n): boolean {\n if (a.size !== b.size) {\n return false;\n }\n const iterator = a.keys();\n for (\n let {done, value} = iterator.next();\n !done;\n {done, value} = iterator.next()\n ) {\n if (!b.has(value)) {\n return false;\n }\n }\n return true;\n}\n\nexport function union<T>(...sets: ReadonlySetLike<T>[]): Set<T> {\n const result = new Set<T>();\n for (const set of sets) {\n const iterator = set.keys();\n for (\n let {done, value} = iterator.next();\n !done;\n {done, value} = iterator.next()\n ) {\n result.add(value);\n }\n }\n return result;\n}\n\nexport function intersection<T>(\n a: ReadonlySetLike<T>,\n b: ReadonlySetLike<T>,\n): Set<T> {\n const result = new Set<T>();\n if (a.size > b.size) {\n // Optimization: iterate over the smaller Set.\n const swap = a;\n a = b;\n b = swap;\n }\n const iterator = a.keys();\n for (\n let {done, value} = iterator.next();\n !done;\n {done, value} = iterator.next()\n ) {\n if (b.has(value)) {\n result.add(value);\n }\n }\n return result;\n}\n\n/**\n * Returns the elements in {@linkcode a} that are not in {@linkcode b}.\n */\nexport function difference<T>(\n a: ReadonlySetLike<T>,\n b: ReadonlySetLike<T>,\n): Set<T> {\n const result = new Set<T>();\n const iterator = a.keys();\n for (\n let {done, value} = iterator.next();\n !done;\n {done, value} = iterator.next()\n ) {\n if (!b.has(value)) {\n result.add(value);\n }\n }\n return result;\n}\n\nexport function symmetricDifferences<T>(\n a: ReadonlySetLike<T>,\n b: ReadonlySetLike<T>,\n): [onlyA: Set<T>, onlyB: Set<T>] {\n const onlyA = new Set<T>();\n const iteratorA = a.keys();\n for (\n let {done, value} = iteratorA.next();\n !done;\n {done, value} = iteratorA.next()\n ) {\n onlyA.add(value);\n }\n\n const onlyB = new Set<T>();\n const iteratorB = b.keys();\n for (\n let {done, value} = iteratorB.next();\n !done;\n {done, value} = iteratorB.next()\n ) {\n if (a.has(value)) {\n onlyA.delete(value);\n onlyB.delete(value);\n } else {\n onlyB.add(value);\n }\n }\n return [onlyA, onlyB];\n}\n"],"mappings":";AAiBA,SAAgB,OACd,GACA,GACS;CACT,IAAI,EAAE,SAAS,EAAE,MACf,OAAO;CAET,MAAM,WAAW,EAAE,KAAK;CACxB,KACE,IAAI,EAAC,MAAM,UAAS,SAAS,KAAK,GAClC,CAAC,MACD,CAAC,MAAM,SAAS,SAAS,KAAK,GAE9B,IAAI,CAAC,EAAE,IAAI,KAAK,GACd,OAAO;CAGX,OAAO;AACT;AAEA,SAAgB,MAAS,GAAG,MAAoC;CAC9D,MAAM,yBAAS,IAAI,IAAO;CAC1B,KAAK,MAAM,OAAO,MAAM;EACtB,MAAM,WAAW,IAAI,KAAK;EAC1B,KACE,IAAI,EAAC,MAAM,UAAS,SAAS,KAAK,GAClC,CAAC,MACD,CAAC,MAAM,SAAS,SAAS,KAAK,GAE9B,OAAO,IAAI,KAAK;CAEpB;CACA,OAAO;AACT;AAEA,SAAgB,aACd,GACA,GACQ;CACR,MAAM,yBAAS,IAAI,IAAO;CAC1B,IAAI,EAAE,OAAO,EAAE,MAAM;EAEnB,MAAM,OAAO;EACb,IAAI;EACJ,IAAI;CACN;CACA,MAAM,WAAW,EAAE,KAAK;CACxB,KACE,IAAI,EAAC,MAAM,UAAS,SAAS,KAAK,GAClC,CAAC,MACD,CAAC,MAAM,SAAS,SAAS,KAAK,GAE9B,IAAI,EAAE,IAAI,KAAK,GACb,OAAO,IAAI,KAAK;CAGpB,OAAO;AACT;;;;AAKA,SAAgB,WACd,GACA,GACQ;CACR,MAAM,yBAAS,IAAI,IAAO;CAC1B,MAAM,WAAW,EAAE,KAAK;CACxB,KACE,IAAI,EAAC,MAAM,UAAS,SAAS,KAAK,GAClC,CAAC,MACD,CAAC,MAAM,SAAS,SAAS,KAAK,GAE9B,IAAI,CAAC,EAAE,IAAI,KAAK,GACd,OAAO,IAAI,KAAK;CAGpB,OAAO;AACT;AAEA,SAAgB,qBACd,GACA,GACgC;CAChC,MAAM,wBAAQ,IAAI,IAAO;CACzB,MAAM,YAAY,EAAE,KAAK;CACzB,KACE,IAAI,EAAC,MAAM,UAAS,UAAU,KAAK,GACnC,CAAC,MACD,CAAC,MAAM,SAAS,UAAU,KAAK,GAE/B,MAAM,IAAI,KAAK;CAGjB,MAAM,wBAAQ,IAAI,IAAO;CACzB,MAAM,YAAY,EAAE,KAAK;CACzB,KACE,IAAI,EAAC,MAAM,UAAS,UAAU,KAAK,GACnC,CAAC,MACD,CAAC,MAAM,SAAS,UAAU,KAAK,GAE/B,IAAI,EAAE,IAAI,KAAK,GAAG;EAChB,MAAM,OAAO,KAAK;EAClB,MAAM,OAAO,KAAK;CACpB,OACE,MAAM,IAAI,KAAK;CAGnB,OAAO,CAAC,OAAO,KAAK;AACtB"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"size-of-value.js","names":[],"sources":["../../../../../shared/src/size-of-value.ts"],"sourcesContent":["import {hasOwn} from './has-own.ts';\nimport type {ReadonlyJSONObject} from './json.ts';\n\nconst SIZE_TAG = 1;\nconst SIZE_INT32 = 4;\nconst SIZE_SMI = 5;\nconst SIZE_DOUBLE = 8;\n\n/**\n * Gives a size of a value. The size is modelled after the size used by\n * Chromium/V8's structuredClone algorithm. It does not match exactly so the\n * size is just an approximation.\n * https://source.chromium.org/chromium/chromium/src/+/main:v8/src/objects/value-serializer.cc;l=102;drc=f0b6f7d12ea47ad7c08fb554f678c1e73801ca36;bpv=1;bpt=1\n * For example we follow JSC/Mozilla for ints and skip the varint encoding.\n *\n * Mozilla does things similarly. Main difference is that there is no varint\n * encoding and every value uses multiples of 64bits\n * https://searchfox.org/mozilla-central/source/js/src/vm/StructuredClone.cpp#94\n *\n * And JSC:\n * https://github.com/WebKit/WebKit/blob/main/Source/WebCore/bindings/js/SerializedScriptValue.cpp#L356\n * - Use 1 byte tag\n * - Numbers are either stored as Int32 or Float64\n */\nexport function getSizeOfValue(value: unknown): number {\n switch (typeof value) {\n case 'string':\n // Assumes all strings are one byte strings. V8 writes OneByteString and\n // TwoByteString. We could check the string but it would require iterating\n // over all the characters.\n return SIZE_TAG + SIZE_INT32 + value.length;\n case 'number':\n if (isSmi(value)) {\n if (value <= -(2 ** 30) || value >= 2 ** 30 - 1) {\n return SIZE_TAG + SIZE_SMI;\n }\n return SIZE_TAG + SIZE_INT32;\n }\n return SIZE_TAG + SIZE_DOUBLE;\n case 'boolean':\n return SIZE_TAG;\n case 'object':\n if (value === null) {\n return SIZE_TAG;\n }\n\n if (Array.isArray(value)) {\n let sum = 2 * SIZE_TAG + SIZE_INT32;\n for (const element of value) {\n sum += getSizeOfValue(element);\n }\n return sum;\n }\n\n {\n const val = value as ReadonlyJSONObject;\n let sum: number = 2 * SIZE_TAG + SIZE_INT32;\n for (const k in val) {\n if (hasOwn(val, k)) {\n // Skip undefined values. undefined values in an object gets\n // stripped if we round trip through JSON.stringif which is what we\n // use when syncing.\n const propertyValue = val[k];\n if (propertyValue !== undefined) {\n sum += getSizeOfValue(k) + getSizeOfValue(propertyValue);\n }\n }\n }\n return sum;\n }\n }\n\n throw new Error(`Invalid value. type: ${typeof value}, value: ${value}`);\n}\n\nfunction isSmi(value: number): boolean {\n return value === (value | 0);\n}\n\nconst entryFixed = 2 * SIZE_TAG + SIZE_INT32 + SIZE_TAG + SIZE_INT32;\n\nexport function getSizeOfEntry<K, V>(key: K, value: V): number {\n // Entries are stored as [key, value, sizeOfEntry]\n return entryFixed + getSizeOfValue(key) + getSizeOfValue(value);\n}\n"],"mappings":";;AAGA,IAAM,WAAW;AACjB,IAAM,aAAa;AACnB,IAAM,WAAW;AACjB,IAAM,cAAc;;;;;;;;;;;;;;;;;AAkBpB,SAAgB,eAAe,OAAwB;CACrD,QAAQ,OAAO,OAAf;EACE,KAAK,UAIH,OAAO,WAAW,aAAa,MAAM;EACvC,KAAK;GACH,IAAI,MAAM,KAAK,GAAG;IAChB,IAAI,SAAS,EAAE,KAAK,OAAO,SAAS,KAAK,KAAK,GAC5C,OAAO,WAAW;IAEpB,OAAO,WAAW;GACpB;GACA,OAAO,WAAW;EACpB,KAAK,WACH,OAAO;EACT,KAAK;GACH,IAAI,UAAU,MACZ,OAAO;GAGT,IAAI,MAAM,QAAQ,KAAK,GAAG;IACxB,IAAI,MAAM,IAAI,WAAW;IACzB,KAAK,MAAM,WAAW,OACpB,OAAO,eAAe,OAAO;IAE/B,OAAO;GACT;GAEA;IACE,MAAM,MAAM;IACZ,IAAI,MAAc,IAAI,WAAW;IACjC,KAAK,MAAM,KAAK,KACd,IAAI,OAAO,KAAK,CAAC,GAAG;KAIlB,MAAM,gBAAgB,IAAI;KAC1B,IAAI,kBAAkB,KAAA,GACpB,OAAO,eAAe,CAAC,IAAI,eAAe,aAAa;IAE3D;IAEF,OAAO;GACT;CACJ;CAEA,MAAM,IAAI,MAAM,wBAAwB,OAAO,MAAM,WAAW,OAAO;AACzE;AAEA,SAAS,MAAM,OAAwB;CACrC,OAAO,WAAW,QAAQ;AAC5B;AAEA,IAAM,aAAa,IAAI,WAAW,aAAa,WAAW;AAE1D,SAAgB,eAAqB,KAAQ,OAAkB;CAE7D,OAAO,aAAa,eAAe,GAAG,IAAI,eAAe,KAAK;AAChE"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sleep.js","names":[],"sources":["../../../../../shared/src/sleep.ts"],"sourcesContent":["import {resolver} from '@rocicorp/resolver';\nimport {AbortError} from './abort-error.ts';\n\nconst promiseVoid = Promise.resolve();\nconst promiseNever = new Promise<void>(() => undefined);\n\n/**\n * Creates a promise that resolves after `ms` milliseconds. Note that if you\n * pass in `0` no `setTimeout` is used and the promise resolves immediately. In\n * other words no macro task is used in that case.\n *\n * Pass in an AbortSignal to clear the timeout.\n */\nexport function sleep(ms: number, signal?: AbortSignal): Promise<void> {\n const newAbortError = () => new AbortError('Aborted');\n\n if (signal?.aborted) {\n return Promise.reject(newAbortError());\n }\n\n if (ms === 0) {\n return promiseVoid;\n }\n\n return new Promise((resolve, reject) => {\n let handleAbort: () => void;\n if (signal) {\n handleAbort = () => {\n clearTimeout(id);\n reject(newAbortError());\n };\n signal.addEventListener('abort', handleAbort, {once: true});\n }\n\n const id = setTimeout(() => {\n resolve();\n signal?.removeEventListener('abort', handleAbort);\n }, ms);\n });\n}\n\n/**\n * Returns a pair of promises. The first promise resolves after `ms` milliseconds\n * unless the AbortSignal is aborted. The second promise resolves when the AbortSignal\n * is aborted.\n */\nexport function sleepWithAbort(\n ms: number,\n signal: AbortSignal,\n): [ok: Promise<void>, aborted: Promise<void>] {\n if (ms === 0) {\n return [promiseVoid, promiseNever];\n }\n\n const {promise: abortedPromise, resolve: abortedResolve} = resolver<void>();\n\n const sleepPromise = new Promise<void>(resolve => {\n const handleAbort = () => {\n clearTimeout(id);\n abortedResolve();\n };\n\n const id = setTimeout(() => {\n resolve();\n signal.removeEventListener('abort', handleAbort);\n }, ms);\n\n signal.addEventListener('abort', handleAbort, {once: true});\n });\n\n return [sleepPromise, abortedPromise];\n}\n"],"mappings":";;;AAGA,IAAM,cAAc,QAAQ,QAAQ;AACpC,IAAM,eAAe,IAAI,cAAoB,KAAA,CAAS;;;;;;;;AAStD,SAAgB,MAAM,IAAY,QAAqC;CACrE,MAAM,sBAAsB,IAAI,WAAW,SAAS;CAEpD,IAAI,QAAQ,SACV,OAAO,QAAQ,OAAO,cAAc,CAAC;CAGvC,IAAI,OAAO,GACT,OAAO;CAGT,OAAO,IAAI,SAAS,SAAS,WAAW;EACtC,IAAI;EACJ,IAAI,QAAQ;GACV,oBAAoB;IAClB,aAAa,EAAE;IACf,OAAO,cAAc,CAAC;GACxB;GACA,OAAO,iBAAiB,SAAS,aAAa,EAAC,MAAM,KAAI,CAAC;EAC5D;EAEA,MAAM,KAAK,iBAAiB;GAC1B,QAAQ;GACR,QAAQ,oBAAoB,SAAS,WAAW;EAClD,GAAG,EAAE;CACP,CAAC;AACH;;;;;;AAOA,SAAgB,eACd,IACA,QAC6C;CAC7C,IAAI,OAAO,GACT,OAAO,CAAC,aAAa,YAAY;CAGnC,MAAM,EAAC,SAAS,gBAAgB,SAAS,mBAAkB,SAAe;CAgB1E,OAAO,CAAC,IAdiB,SAAc,YAAW;EAChD,MAAM,oBAAoB;GACxB,aAAa,EAAE;GACf,eAAe;EACjB;EAEA,MAAM,KAAK,iBAAiB;GAC1B,QAAQ;GACR,OAAO,oBAAoB,SAAS,WAAW;EACjD,GAAG,EAAE;EAEL,OAAO,iBAAiB,SAAS,aAAa,EAAC,MAAM,KAAI,CAAC;CAC5D,CAEQ,GAAc,cAAc;AACtC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sorted-entries.js","names":[],"sources":["../../../../../shared/src/sorted-entries.ts"],"sourcesContent":["import {stringCompare} from './string-compare.ts';\n\n// oxlint-disable-next-line @typescript-eslint/no-explicit-any\nexport function sortedEntries<T extends Record<string, any>>(\n object: T,\n): [keyof T & string, T[keyof T]][] {\n return Object.entries(object).sort((a, b) => stringCompare(a[0], b[0]));\n}\n"],"mappings":";;AAGA,SAAgB,cACd,QACkC;CAClC,OAAO,OAAO,QAAQ,MAAM,EAAE,MAAM,GAAG,MAAM,cAAc,EAAE,IAAI,EAAE,EAAE,CAAC;AACxE"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"string-compare.js","names":[],"sources":["../../../../../shared/src/string-compare.ts"],"sourcesContent":["export function stringCompare(a: string, b: string): number {\n if (a === b) {\n return 0;\n }\n if (a < b) {\n return -1;\n }\n return 1;\n}\n"],"mappings":";AAAA,SAAgB,cAAc,GAAW,GAAmB;CAC1D,IAAI,MAAM,GACR,OAAO;CAET,IAAI,IAAI,GACN,OAAO;CAET,OAAO;AACT"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subscribable.js","names":[],"sources":["../../../../../shared/src/subscribable.ts"],"sourcesContent":["export class Subscribable<\n TArgs,\n TListener extends (obj: TArgs) => unknown = (obj: TArgs) => unknown,\n> {\n protected _listeners = new Set<TListener>();\n\n /**\n * Subscribe to the subscribable.\n *\n * @param listener - The listener to subscribe to.\n * @returns A function to unsubscribe from the subscribable.\n */\n subscribe = (listener: TListener): (() => void) => {\n this._listeners.add(listener);\n\n return () => {\n this._listeners.delete(listener);\n };\n };\n\n /**\n * Notify all listeners.\n *\n * @param update - The update to notify listeners with.\n */\n notify = (update: TArgs): void => {\n this._listeners.forEach(listener => listener(update));\n };\n\n hasListeners = (): boolean => this._listeners.size > 0;\n\n /**\n * Unsubscribe all listeners.\n */\n cleanup = (): void => {\n this._listeners.clear();\n };\n}\n"],"mappings":";AAAA,IAAa,eAAb,MAGE;CACA,6BAAuB,IAAI,IAAe;;;;;;;CAQ1C,aAAa,aAAsC;EACjD,KAAK,WAAW,IAAI,QAAQ;EAE5B,aAAa;GACX,KAAK,WAAW,OAAO,QAAQ;EACjC;CACF;;;;;;CAOA,UAAU,WAAwB;EAChC,KAAK,WAAW,SAAQ,aAAY,SAAS,MAAM,CAAC;CACtD;CAEA,qBAA8B,KAAK,WAAW,OAAO;;;;CAKrD,gBAAsB;EACpB,KAAK,WAAW,MAAM;CACxB;AACF"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tdigest-schema.js","names":[],"sources":["../../../../../shared/src/tdigest-schema.ts"],"sourcesContent":["import * as v from './valita.ts';\n\n/**\n * Valita schema for TDigest JSON representation.\n * Matches the structure returned by TDigest.toJSON().\n */\n// oxlint-disable-next-line e18e/prefer-spread-syntax\nexport const tdigestSchema = v.tuple([v.number()]).concat(v.array(v.number()));\n\nexport type TDigestJSON = v.Infer<typeof tdigestSchema>;\n"],"mappings":";;;;;;AAOA,IAAa,gBAAgB,eAAE,MAAM,CAAC,eAAE,OAAO,CAAC,CAAC,EAAE,OAAO,eAAE,MAAM,eAAE,OAAO,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tdigest.js","names":["#maxProcessed","#maxUnprocessed","#processed","#unprocessed","#cumulative","#processedWeight","#unprocessedWeight","#min","#max","#process","#integratedQ","#integratedLocation","#updateCumulative"],"sources":["../../../../../shared/src/tdigest.ts"],"sourcesContent":["// Apache License 2.0\n// https://github.com/influxdata/tdigest\n\nimport {binarySearch} from './binary-search.ts';\nimport {Centroid, sortCentroidList, type CentroidList} from './centroid.ts';\nimport type {TDigestJSON} from './tdigest-schema.ts';\n\nexport interface ReadonlyTDigest {\n readonly count: () => number;\n readonly quantile: (q: number) => number;\n readonly cdf: (x: number) => number;\n}\n\n// TDigest is a data structure for accurate on-line accumulation of\n// rank-based statistics such as quantiles and trimmed means.\nexport class TDigest {\n readonly compression: number;\n\n #maxProcessed: number;\n #maxUnprocessed: number;\n #processed!: CentroidList;\n #unprocessed!: CentroidList;\n #cumulative!: number[];\n #processedWeight!: number;\n #unprocessedWeight!: number;\n #min!: number;\n #max!: number;\n\n constructor(compression: number = 1000) {\n this.compression = compression;\n this.#maxProcessed = processedSize(0, this.compression);\n this.#maxUnprocessed = unprocessedSize(0, this.compression);\n this.reset();\n }\n\n /**\n * fromJSON creates a TDigest from a JSON-serializable representation.\n * The data should be an object with compression and centroids array.\n */\n static fromJSON(data: Readonly<TDigestJSON>): TDigest {\n const digest = new TDigest(data[0]);\n if (data.length % 2 !== 1) {\n throw new Error('Invalid centroids array');\n }\n for (let i = 1; i < data.length; i += 2) {\n digest.add(data[i], data[i + 1]);\n }\n return digest;\n }\n\n reset(): void {\n this.#processed = [];\n this.#unprocessed = [];\n this.#cumulative = [];\n this.#processedWeight = 0;\n this.#unprocessedWeight = 0;\n this.#min = Number.MAX_VALUE;\n this.#max = -Number.MAX_VALUE;\n }\n\n add(mean: number, weight: number = 1) {\n this.addCentroid(new Centroid(mean, weight));\n }\n\n /** AddCentroidList can quickly add multiple centroids. */\n addCentroidList(centroidList: CentroidList) {\n for (const c of centroidList) {\n this.addCentroid(c);\n }\n }\n\n /**\n * AddCentroid adds a single centroid.\n * Weights which are not a number or are <= 0 are ignored, as are NaN means.\n */\n addCentroid(c: Centroid): void {\n if (\n Number.isNaN(c.mean) ||\n c.weight <= 0 ||\n Number.isNaN(c.weight) ||\n !Number.isFinite(c.weight)\n ) {\n return;\n }\n\n this.#unprocessed.push(new Centroid(c.mean, c.weight));\n this.#unprocessedWeight += c.weight;\n\n if (\n this.#processed.length > this.#maxProcessed ||\n this.#unprocessed.length > this.#maxUnprocessed\n ) {\n this.#process();\n }\n }\n\n /**\n * Merges the supplied digest into this digest. Functionally equivalent to\n * calling t.AddCentroidList(t2.Centroids(nil)), but avoids making an extra\n * copy of the CentroidList.\n **/\n merge(t2: TDigest) {\n t2.#process();\n this.addCentroidList(t2.#processed);\n }\n\n #process() {\n if (\n this.#unprocessed.length > 0 ||\n this.#processed.length > this.#maxProcessed\n ) {\n // Append all processed centroids to the unprocessed list and sort\n this.#unprocessed.push(...this.#processed);\n sortCentroidList(this.#unprocessed);\n\n // Reset processed list with first centroid\n this.#processed.length = 0;\n this.#processed.push(this.#unprocessed[0]);\n\n this.#processedWeight += this.#unprocessedWeight;\n this.#unprocessedWeight = 0;\n let soFar = this.#unprocessed[0].weight;\n let limit = this.#processedWeight * this.#integratedQ(1);\n for (let i = 1; i < this.#unprocessed.length; i++) {\n const centroid = this.#unprocessed[i];\n const projected = soFar + centroid.weight;\n if (projected <= limit) {\n soFar = projected;\n // oxlint-disable-next-line typescript/no-non-null-assertion\n this.#processed.at(-1)!.add(centroid);\n } else {\n const k1 = this.#integratedLocation(soFar / this.#processedWeight);\n limit = this.#processedWeight * this.#integratedQ(k1 + 1);\n soFar += centroid.weight;\n this.#processed.push(centroid);\n }\n }\n this.#min = Math.min(this.#min, this.#processed[0].mean);\n // oxlint-disable-next-line typescript/no-non-null-assertion\n this.#max = Math.max(this.#max, this.#processed.at(-1)!.mean);\n this.#unprocessed.length = 0;\n }\n }\n\n /**\n * Centroids returns a copy of processed centroids.\n * Useful when aggregating multiple t-digests.\n *\n * Centroids are appended to the passed CentroidList; if you're re-using a\n * buffer, be sure to pass cl[:0].\n */\n centroids(cl: CentroidList = []): CentroidList {\n this.#process();\n return [...cl, ...this.#processed];\n }\n\n count(): number {\n this.#process();\n\n // this.process always updates this.processedWeight to the total count of all\n // centroids, so we don't need to re-count here.\n return this.#processedWeight;\n }\n\n /**\n * toJSON returns a JSON-serializable representation of the digest.\n * This processes the digest and returns an object with compression and centroid data.\n */\n toJSON(): TDigestJSON {\n this.#process();\n const data: TDigestJSON = [this.compression];\n for (const centroid of this.#processed) {\n data.push(centroid.mean, centroid.weight);\n }\n return data;\n }\n\n #updateCumulative() {\n // Weight can only increase, so the final cumulative value will always be\n // either equal to, or less than, the total weight. If they are the same,\n // then nothing has changed since the last update.\n if (\n this.#cumulative.length > 0 &&\n this.#cumulative.at(-1) === this.#processedWeight\n ) {\n return;\n }\n const n = this.#processed.length + 1;\n if (this.#cumulative.length > n) {\n this.#cumulative.length = n;\n }\n\n let prev = 0;\n for (let i = 0; i < this.#processed.length; i++) {\n const centroid = this.#processed[i];\n const cur = centroid.weight;\n this.#cumulative[i] = prev + cur / 2;\n prev += cur;\n }\n this.#cumulative[this.#processed.length] = prev;\n }\n\n // Quantile returns the (approximate) quantile of\n // the distribution. Accepted values for q are between 0 and 1.\n // Returns NaN if Count is zero or bad inputs.\n quantile(q: number): number {\n this.#process();\n this.#updateCumulative();\n if (q < 0 || q > 1 || this.#processed.length === 0) {\n return NaN;\n }\n if (this.#processed.length === 1) {\n return this.#processed[0].mean;\n }\n const index = q * this.#processedWeight;\n if (index <= this.#processed[0].weight / 2) {\n return (\n this.#min +\n ((2 * index) / this.#processed[0].weight) *\n (this.#processed[0].mean - this.#min)\n );\n }\n\n const lower = binarySearch(\n this.#cumulative.length,\n (i: number) => -this.#cumulative[i] + index,\n );\n\n if (lower + 1 !== this.#cumulative.length) {\n const z1 = index - this.#cumulative[lower - 1];\n const z2 = this.#cumulative[lower] - index;\n return weightedAverage(\n this.#processed[lower - 1].mean,\n z2,\n this.#processed[lower].mean,\n z1,\n );\n }\n\n const z1 =\n index - this.#processedWeight - this.#processed[lower - 1].weight / 2;\n const z2 = this.#processed[lower - 1].weight / 2 - z1;\n // oxlint-disable-next-line typescript/no-non-null-assertion\n return weightedAverage(this.#processed.at(-1)!.mean, z1, this.#max, z2);\n }\n\n /**\n * CDF returns the cumulative distribution function for a given value x.\n */\n cdf(x: number): number {\n this.#process();\n this.#updateCumulative();\n switch (this.#processed.length) {\n case 0:\n return 0;\n case 1: {\n const width = this.#max - this.#min;\n if (x <= this.#min) {\n return 0;\n }\n if (x >= this.#max) {\n return 1;\n }\n if (x - this.#min <= width) {\n // min and max are too close together to do any viable interpolation\n return 0.5;\n }\n return (x - this.#min) / width;\n }\n }\n\n if (x <= this.#min) {\n return 0;\n }\n if (x >= this.#max) {\n return 1;\n }\n const m0 = this.#processed[0].mean;\n // Left Tail\n if (x <= m0) {\n if (m0 - this.#min > 0) {\n return (\n (((x - this.#min) / (m0 - this.#min)) * this.#processed[0].weight) /\n this.#processedWeight /\n 2\n );\n }\n return 0;\n }\n // Right Tail\n // oxlint-disable-next-line typescript/no-non-null-assertion\n const mn = this.#processed.at(-1)!.mean;\n if (x >= mn) {\n if (this.#max - mn > 0) {\n return (\n 1 -\n (((this.#max - x) / (this.#max - mn)) *\n // oxlint-disable-next-line typescript/no-non-null-assertion\n this.#processed.at(-1)!.weight) /\n this.#processedWeight /\n 2\n );\n }\n return 1;\n }\n\n const upper = binarySearch(\n this.#processed.length,\n // Treat equals as greater than, so we can use the upper index\n // This is equivalent to:\n // i => this.#processed[i].mean > x ? -1 : 1,\n i => x - this.#processed[i].mean || 1,\n );\n\n const z1 = x - this.#processed[upper - 1].mean;\n const z2 = this.#processed[upper].mean - x;\n return (\n weightedAverage(\n this.#cumulative[upper - 1],\n z2,\n this.#cumulative[upper],\n z1,\n ) / this.#processedWeight\n );\n }\n\n #integratedQ(k: number): number {\n return (\n (Math.sin(\n (Math.min(k, this.compression) * Math.PI) / this.compression -\n Math.PI / 2,\n ) +\n 1) /\n 2\n );\n }\n\n #integratedLocation(q: number): number {\n return (this.compression * (Math.asin(2 * q - 1) + Math.PI / 2)) / Math.PI;\n }\n}\n\n// Calculate number of bytes needed for a tdigest of size c,\n// where c is the compression value\nexport function byteSizeForCompression(comp: number): number {\n const c = comp | 0;\n // // A centroid is 2 float64s, so we need 16 bytes for each centroid\n // float_size := 8\n // centroid_size := 2 * float_size\n\n // // Unprocessed and processed can grow up to length c\n // unprocessed_size := centroid_size * c\n // processed_size := unprocessed_size\n\n // // the cumulative field can also be of length c, but each item is a single float64\n // cumulative_size := float_size * c // <- this could also be unprocessed_size / 2\n\n // return unprocessed_size + processed_size + cumulative_size\n\n // // or, more succinctly:\n // return float_size * c * 5\n\n // or even more succinctly\n return c * 40;\n}\n\nfunction weightedAverage(\n x1: number,\n w1: number,\n x2: number,\n w2: number,\n): number {\n if (x1 <= x2) {\n return weightedAverageSorted(x1, w1, x2, w2);\n }\n return weightedAverageSorted(x2, w2, x1, w1);\n}\n\nfunction weightedAverageSorted(\n x1: number,\n w1: number,\n x2: number,\n w2: number,\n): number {\n const x = (x1 * w1 + x2 * w2) / (w1 + w2);\n return Math.max(x1, Math.min(x, x2));\n}\n\nfunction processedSize(size: number, compression: number): number {\n if (size === 0) {\n return Math.ceil(compression) * 2;\n }\n return size;\n}\n\nfunction unprocessedSize(size: number, compression: number): number {\n if (size === 0) {\n return Math.ceil(compression) * 8;\n }\n return size;\n}\n"],"mappings":"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"}