@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.
- package/README.md +28 -3
- package/out/_virtual/_@oxc-project_runtime@0.130.0/helpers/usingCtx.js +57 -0
- package/out/_virtual/__vite-optional-peer-dep_pg-native_pg.js +13 -0
- package/out/_virtual/__vite-optional-peer-dep_pg-native_pg.js.map +1 -0
- package/out/_virtual/_rolldown/runtime.js +12 -1
- package/out/node_modules/.pnpm/@opentelemetry_semantic-conventions@1.41.1/node_modules/@opentelemetry/semantic-conventions/build/esm/stable_attributes.js +12 -0
- package/out/node_modules/.pnpm/@opentelemetry_semantic-conventions@1.41.1/node_modules/@opentelemetry/semantic-conventions/build/esm/stable_attributes.js.map +1 -0
- package/out/node_modules/.pnpm/pg-cloudflare@1.3.0/node_modules/pg-cloudflare/dist/empty.js +11 -0
- package/out/node_modules/.pnpm/pg-cloudflare@1.3.0/node_modules/pg-cloudflare/dist/empty.js.map +1 -0
- package/out/node_modules/.pnpm/pg-connection-string@2.12.0/node_modules/pg-connection-string/index.js +130 -0
- package/out/node_modules/.pnpm/pg-connection-string@2.12.0/node_modules/pg-connection-string/index.js.map +1 -0
- package/out/node_modules/.pnpm/pg-int8@1.0.1/node_modules/pg-int8/index.js +62 -0
- package/out/node_modules/.pnpm/pg-int8@1.0.1/node_modules/pg-int8/index.js.map +1 -0
- package/out/node_modules/.pnpm/pg-pool@3.13.0_pg@8.20.0/node_modules/pg-pool/index.js +353 -0
- package/out/node_modules/.pnpm/pg-pool@3.13.0_pg@8.20.0/node_modules/pg-pool/index.js.map +1 -0
- package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/buffer-reader.js +60 -0
- package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/buffer-reader.js.map +1 -0
- package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/buffer-writer.js +81 -0
- package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/buffer-writer.js.map +1 -0
- package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/index.js +35 -0
- package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/index.js.map +1 -0
- package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/messages.js +167 -0
- package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/messages.js.map +1 -0
- package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/parser.js +288 -0
- package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/parser.js.map +1 -0
- package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/serializer.js +177 -0
- package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/serializer.js.map +1 -0
- package/out/node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/index.js +46 -0
- package/out/node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/index.js.map +1 -0
- package/out/node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/lib/arrayParser.js +16 -0
- package/out/node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/lib/arrayParser.js.map +1 -0
- package/out/node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/lib/binaryParsers.js +165 -0
- package/out/node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/lib/binaryParsers.js.map +1 -0
- package/out/node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/lib/builtins.js +81 -0
- package/out/node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/lib/builtins.js.map +1 -0
- package/out/node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/lib/textParsers.js +167 -0
- package/out/node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/lib/textParsers.js.map +1 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/esm/index.js +19 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/esm/index.js.map +1 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/client.js +508 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/client.js.map +1 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/connection-parameters.js +104 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/connection-parameters.js.map +1 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/connection.js +160 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/connection.js.map +1 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/crypto/cert-signatures.js +97 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/crypto/cert-signatures.js.map +1 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/crypto/sasl.js +131 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/crypto/sasl.js.map +1 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/crypto/utils-legacy.js +39 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/crypto/utils-legacy.js.map +1 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/crypto/utils-webcrypto.js +89 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/crypto/utils-webcrypto.js.map +1 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/crypto/utils.js +13 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/crypto/utils.js.map +1 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/defaults.js +46 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/defaults.js.map +1 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/index.js +71 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/index.js.map +1 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/native/client.js +226 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/native/client.js.map +1 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/native/index.js +11 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/native/index.js.map +1 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/native/query.js +117 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/native/query.js.map +1 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/query.js +151 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/query.js.map +1 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/result.js +76 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/result.js.map +1 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/stream.js +73 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/stream.js.map +1 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/type-overrides.js +35 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/type-overrides.js.map +1 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/utils.js +118 -0
- package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/utils.js.map +1 -0
- package/out/node_modules/.pnpm/pgpass@1.0.5/node_modules/pgpass/lib/helper.js +147 -0
- package/out/node_modules/.pnpm/pgpass@1.0.5/node_modules/pgpass/lib/helper.js.map +1 -0
- package/out/node_modules/.pnpm/pgpass@1.0.5/node_modules/pgpass/lib/index.js +21 -0
- package/out/node_modules/.pnpm/pgpass@1.0.5/node_modules/pgpass/lib/index.js.map +1 -0
- package/out/node_modules/.pnpm/postgres-array@2.0.0/node_modules/postgres-array/index.js +84 -0
- package/out/node_modules/.pnpm/postgres-array@2.0.0/node_modules/postgres-array/index.js.map +1 -0
- package/out/node_modules/.pnpm/postgres-bytea@1.0.1/node_modules/postgres-bytea/index.js +28 -0
- package/out/node_modules/.pnpm/postgres-bytea@1.0.1/node_modules/postgres-bytea/index.js.map +1 -0
- package/out/node_modules/.pnpm/postgres-date@1.0.7/node_modules/postgres-date/index.js +65 -0
- package/out/node_modules/.pnpm/postgres-date@1.0.7/node_modules/postgres-date/index.js.map +1 -0
- package/out/node_modules/.pnpm/postgres-interval@1.2.0/node_modules/postgres-interval/index.js +107 -0
- package/out/node_modules/.pnpm/postgres-interval@1.2.0/node_modules/postgres-interval/index.js.map +1 -0
- package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react-jsx-runtime.development.js +696 -0
- package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react-jsx-runtime.development.js.map +1 -0
- package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react-jsx-runtime.production.min.js +44 -0
- package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react-jsx-runtime.production.min.js.map +1 -0
- package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react.development.js +1585 -0
- package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react.development.js.map +1 -0
- package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react.production.min.js +329 -0
- package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react.production.min.js.map +1 -0
- package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/index.js +13 -0
- package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/index.js.map +1 -0
- package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/jsx-runtime.js +13 -0
- package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/jsx-runtime.js.map +1 -0
- package/out/node_modules/.pnpm/solid-js@1.9.13/node_modules/solid-js/dist/server.js +131 -0
- package/out/node_modules/.pnpm/solid-js@1.9.13/node_modules/solid-js/dist/server.js.map +1 -0
- package/out/node_modules/.pnpm/solid-js@1.9.13/node_modules/solid-js/store/dist/server.js +96 -0
- package/out/node_modules/.pnpm/solid-js@1.9.13/node_modules/solid-js/store/dist/server.js.map +1 -0
- package/out/node_modules/.pnpm/split2@4.2.0/node_modules/split2/index.js +95 -0
- package/out/node_modules/.pnpm/split2@4.2.0/node_modules/split2/index.js.map +1 -0
- package/out/node_modules/.pnpm/xtend@4.0.2/node_modules/xtend/mutable.js +18 -0
- package/out/node_modules/.pnpm/xtend@4.0.2/node_modules/xtend/mutable.js.map +1 -0
- package/out/packages/analyze-query/src/analyze-cli.js +288 -0
- package/out/packages/analyze-query/src/analyze-cli.js.map +1 -0
- package/out/packages/analyze-query/src/bin-analyze.js +282 -0
- package/out/packages/analyze-query/src/bin-analyze.js.map +1 -0
- package/out/packages/analyze-query/src/bin-transform.js.map +1 -0
- package/out/packages/ast-to-zql/src/ast-to-zql.js.map +1 -0
- package/out/packages/ast-to-zql/src/bin.js.map +1 -0
- package/out/packages/ast-to-zql/src/format.js.map +1 -0
- package/out/packages/datadog/src/datadog-log-sink.js.map +1 -0
- package/out/packages/otel/src/enabled.js.map +1 -0
- package/out/packages/otel/src/log-options.js.map +1 -0
- package/out/packages/otel/src/maybe-time.js.map +1 -0
- package/out/packages/otel/src/span.js.map +1 -0
- package/out/packages/otel/src/version.js.map +1 -0
- package/out/packages/replicache/src/async-iterable-to-array.js.map +1 -0
- package/out/packages/replicache/src/bg-interval.js.map +1 -0
- package/out/packages/replicache/src/btree/diff.js.map +1 -0
- package/out/packages/replicache/src/btree/node.js.map +1 -0
- package/out/packages/replicache/src/btree/read.js.map +1 -0
- package/out/packages/replicache/src/btree/splice.js.map +1 -0
- package/out/packages/replicache/src/btree/write.js +191 -0
- package/out/packages/replicache/src/btree/write.js.map +1 -0
- package/out/packages/replicache/src/call-default-fetch.js.map +1 -0
- package/out/packages/replicache/src/connection-loop-delegates.js.map +1 -0
- package/out/packages/replicache/src/connection-loop.js.map +1 -0
- package/out/packages/replicache/src/cookies.js.map +1 -0
- package/out/packages/replicache/src/dag/chunk.js.map +1 -0
- package/out/packages/replicache/src/dag/gc.js.map +1 -0
- package/out/packages/replicache/src/dag/key.js.map +1 -0
- package/out/packages/replicache/src/dag/lazy-store.js.map +1 -0
- package/out/packages/replicache/src/dag/store-impl.js +157 -0
- package/out/packages/replicache/src/dag/store-impl.js.map +1 -0
- package/out/packages/replicache/src/dag/store.js.map +1 -0
- package/out/packages/replicache/src/dag/visitor.js.map +1 -0
- package/out/packages/replicache/src/db/commit.js.map +1 -0
- package/out/packages/replicache/src/db/index.js.map +1 -0
- package/out/packages/replicache/src/db/read.js.map +1 -0
- package/out/packages/replicache/src/db/rebase.js.map +1 -0
- package/out/packages/replicache/src/db/write.js.map +1 -0
- package/out/packages/replicache/src/deleted-clients.js.map +1 -0
- package/out/packages/replicache/src/error-responses.js.map +1 -0
- package/out/packages/replicache/src/frozen-json.js.map +1 -0
- package/out/packages/replicache/src/get-default-puller.js.map +1 -0
- package/out/packages/replicache/src/get-default-pusher.js.map +1 -0
- package/out/packages/replicache/src/get-kv-store-provider.js.map +1 -0
- package/out/packages/replicache/src/hash.js.map +1 -0
- package/out/packages/replicache/src/http-request-info.js.map +1 -0
- package/out/packages/replicache/src/index-defs.js.map +1 -0
- package/out/packages/replicache/src/kv/expo-sqlite/store.js +57 -0
- package/out/packages/replicache/src/kv/expo-sqlite/store.js.map +1 -0
- package/out/packages/replicache/src/kv/idb-store-with-mem-fallback.js.map +1 -0
- package/out/packages/replicache/src/kv/idb-store.js.map +1 -0
- package/out/packages/replicache/src/kv/mem-store.js.map +1 -0
- package/out/packages/replicache/src/kv/op-sqlite/store.js +63 -0
- package/out/packages/replicache/src/kv/op-sqlite/store.js.map +1 -0
- package/out/packages/replicache/src/kv/op-sqlite/types.js.map +1 -0
- package/out/packages/replicache/src/kv/read-impl.js.map +1 -0
- package/out/packages/replicache/src/kv/sqlite-store.js +301 -0
- package/out/packages/replicache/src/kv/sqlite-store.js.map +1 -0
- package/out/packages/replicache/src/kv/throw-if-closed.js +23 -0
- package/out/packages/replicache/src/kv/throw-if-closed.js.map +1 -0
- package/out/packages/replicache/src/kv/write-impl-base.js.map +1 -0
- package/out/packages/replicache/src/kv/write-impl.js.map +1 -0
- package/out/packages/replicache/src/lazy.js.map +1 -0
- package/out/packages/replicache/src/log-options.js.map +1 -0
- package/out/packages/replicache/src/make-idb-name.js.map +1 -0
- package/out/packages/replicache/src/new-client-channel.js.map +1 -0
- package/out/packages/replicache/src/on-persist-channel.js.map +1 -0
- package/out/packages/replicache/src/patch-operation.js.map +1 -0
- package/out/packages/replicache/src/pending-mutations.js.map +1 -0
- package/out/packages/replicache/src/persist/client-gc.js.map +1 -0
- package/out/packages/replicache/src/persist/client-group-gc.js.map +1 -0
- package/out/packages/replicache/src/persist/client-groups.js +150 -0
- package/out/packages/replicache/src/persist/client-groups.js.map +1 -0
- package/out/packages/replicache/src/persist/clients.js +289 -0
- package/out/packages/replicache/src/persist/clients.js.map +1 -0
- package/out/packages/replicache/src/persist/collect-idb-databases.js.map +1 -0
- package/out/packages/replicache/src/persist/gather-mem-only-visitor.js.map +1 -0
- package/out/packages/replicache/src/persist/gather-not-cached-visitor.js.map +1 -0
- package/out/packages/replicache/src/persist/heartbeat.js.map +1 -0
- package/out/packages/replicache/src/persist/idb-databases-store-db-name.js.map +1 -0
- package/out/packages/replicache/src/persist/idb-databases-store.js.map +1 -0
- package/out/packages/replicache/src/persist/make-client-id.js.map +1 -0
- package/out/packages/replicache/src/persist/persist.js +124 -0
- package/out/packages/replicache/src/persist/persist.js.map +1 -0
- package/out/packages/replicache/src/persist/refresh.js.map +1 -0
- package/out/packages/replicache/src/process-scheduler.js.map +1 -0
- package/out/packages/replicache/src/pusher.js.map +1 -0
- package/out/packages/replicache/src/replicache-impl.js.map +1 -0
- package/out/packages/replicache/src/report-error.js.map +1 -0
- package/out/packages/replicache/src/request-idle.js.map +1 -0
- package/out/packages/replicache/src/scan-iterator.js.map +1 -0
- package/out/packages/replicache/src/scan-options.js.map +1 -0
- package/out/packages/replicache/src/set-interval-with-signal.js.map +1 -0
- package/out/packages/replicache/src/subscriptions.js.map +1 -0
- package/out/packages/replicache/src/sync/diff.js.map +1 -0
- package/out/packages/replicache/src/sync/ids.js.map +1 -0
- package/out/packages/replicache/src/sync/patch.js.map +1 -0
- package/out/packages/replicache/src/sync/pull-error.js.map +1 -0
- package/out/packages/replicache/src/sync/pull.js +169 -0
- package/out/packages/replicache/src/sync/pull.js.map +1 -0
- package/out/packages/replicache/src/sync/push.js.map +1 -0
- package/out/packages/replicache/src/sync/request-id.js.map +1 -0
- package/out/packages/replicache/src/sync/sync-head-name.js.map +1 -0
- package/out/packages/replicache/src/to-error.js.map +1 -0
- package/out/packages/replicache/src/transaction-closed-error.js.map +1 -0
- package/out/packages/replicache/src/transactions.js.map +1 -0
- package/out/packages/replicache/src/version.js.map +1 -0
- package/out/packages/replicache/src/with-transactions.js.map +1 -0
- package/out/packages/shared/src/abort-error.js.map +1 -0
- package/out/packages/shared/src/arrays.js.map +1 -0
- package/out/packages/shared/src/asserts.js.map +1 -0
- package/out/packages/shared/src/bigint-json.js.map +1 -0
- package/out/packages/shared/src/binary-search.js.map +1 -0
- package/out/packages/shared/src/broadcast-channel.js.map +1 -0
- package/out/packages/shared/src/browser-env.js.map +1 -0
- package/out/packages/shared/src/btree-set.js.map +1 -0
- package/out/packages/shared/src/cache.js.map +1 -0
- package/out/packages/shared/src/centroid.js.map +1 -0
- package/out/packages/shared/src/config.js.map +1 -0
- package/out/packages/shared/src/custom-key-map.js.map +1 -0
- package/out/packages/shared/src/custom-key-set.js.map +1 -0
- package/out/packages/shared/src/deep-clone.js.map +1 -0
- package/out/packages/shared/src/deep-merge.js.map +1 -0
- package/out/packages/shared/src/document-visible.js.map +1 -0
- package/out/packages/shared/src/dotenv.js.map +1 -0
- package/out/packages/shared/src/error.js.map +1 -0
- package/out/packages/shared/src/has-own.js.map +1 -0
- package/out/packages/shared/src/hash.js.map +1 -0
- package/out/packages/shared/src/iterables.js.map +1 -0
- package/out/packages/shared/src/json-schema.js.map +1 -0
- package/out/packages/shared/src/json.js.map +1 -0
- package/out/packages/shared/src/logging-test-utils.js.map +1 -0
- package/out/packages/shared/src/logging.js.map +1 -0
- package/out/packages/shared/src/map.js +39 -0
- package/out/packages/shared/src/map.js.map +1 -0
- package/out/packages/shared/src/must.js.map +1 -0
- package/out/packages/shared/src/navigator.js.map +1 -0
- package/out/packages/shared/src/object-traversal.js.map +1 -0
- package/out/packages/shared/src/objects.js.map +1 -0
- package/out/packages/shared/src/options.js.map +1 -0
- package/out/packages/shared/src/parse-big-int.js.map +1 -0
- package/out/packages/shared/src/promise-race.js.map +1 -0
- package/out/packages/shared/src/queue.js +120 -0
- package/out/packages/shared/src/queue.js.map +1 -0
- package/out/packages/shared/src/rand.js.map +1 -0
- package/out/packages/shared/src/random-uint64.js.map +1 -0
- package/out/packages/shared/src/random-values.js.map +1 -0
- package/out/packages/shared/src/record-proxy.js.map +1 -0
- package/out/packages/shared/src/resolved-promises.js.map +1 -0
- package/out/packages/shared/src/ring-buffer.js +109 -0
- package/out/packages/shared/src/ring-buffer.js.map +1 -0
- package/out/packages/shared/src/sentinels.js.map +1 -0
- package/out/packages/shared/src/set-utils.js.map +1 -0
- package/out/packages/shared/src/size-of-value.js.map +1 -0
- package/out/packages/shared/src/sleep.js.map +1 -0
- package/out/packages/shared/src/sorted-entries.js.map +1 -0
- package/out/packages/shared/src/string-compare.js.map +1 -0
- package/out/packages/shared/src/subscribable.js.map +1 -0
- package/out/packages/shared/src/tdigest-schema.js.map +1 -0
- package/out/packages/shared/src/tdigest.js.map +1 -0
- package/out/packages/shared/src/valita.js +172 -0
- package/out/packages/shared/src/valita.js.map +1 -0
- package/out/packages/z2s/src/compiler.js.map +1 -0
- package/out/packages/z2s/src/sql.js.map +1 -0
- package/out/packages/zero/package.js +205 -0
- package/out/packages/zero/package.js.map +1 -0
- package/out/packages/zero-cache/src/auth/auth.js.map +1 -0
- package/out/packages/zero-cache/src/auth/jwt.js.map +1 -0
- package/out/packages/zero-cache/src/auth/load-permissions.js.map +1 -0
- package/out/packages/zero-cache/src/auth/read-authorizer.js.map +1 -0
- package/out/packages/zero-cache/src/auth/write-authorizer.js.map +1 -0
- package/out/packages/zero-cache/src/config/network.js.map +1 -0
- package/out/packages/zero-cache/src/config/normalize.js.map +1 -0
- package/out/packages/zero-cache/src/config/server-context.js.map +1 -0
- package/out/packages/zero-cache/src/config/zero-config.js +921 -0
- package/out/packages/zero-cache/src/config/zero-config.js.map +1 -0
- package/out/packages/zero-cache/src/custom/fetch.js.map +1 -0
- package/out/packages/zero-cache/src/custom-queries/transform-query.js.map +1 -0
- package/out/packages/zero-cache/src/db/create.js.map +1 -0
- package/out/packages/zero-cache/src/db/delete-lite-db.js.map +1 -0
- package/out/packages/zero-cache/src/db/lite-tables.js.map +1 -0
- package/out/packages/zero-cache/src/db/migration-lite.js +166 -0
- package/out/packages/zero-cache/src/db/migration-lite.js.map +1 -0
- package/out/packages/zero-cache/src/db/migration.js +139 -0
- package/out/packages/zero-cache/src/db/migration.js.map +1 -0
- package/out/packages/zero-cache/src/db/mode-enum.js.map +1 -0
- package/out/packages/zero-cache/src/db/pg-copy-binary.js.map +1 -0
- package/out/packages/zero-cache/src/db/pg-copy.js.map +1 -0
- package/out/packages/zero-cache/src/db/pg-to-lite.js.map +1 -0
- package/out/packages/zero-cache/src/db/pg-type-parser.js.map +1 -0
- package/out/packages/zero-cache/src/db/run-transaction.js.map +1 -0
- package/out/packages/zero-cache/src/db/specs.js.map +1 -0
- package/out/packages/zero-cache/src/db/statements.js.map +1 -0
- package/out/packages/zero-cache/src/db/transaction-pool.js.map +1 -0
- package/out/packages/zero-cache/src/db/warmup.js.map +1 -0
- package/out/packages/zero-cache/src/observability/events.js.map +1 -0
- package/out/packages/zero-cache/src/observability/metrics.js.map +1 -0
- package/out/packages/zero-cache/src/scripts/decommission.js.map +1 -0
- package/out/packages/zero-cache/src/scripts/deploy-permissions.js.map +1 -0
- package/out/packages/zero-cache/src/scripts/permissions.js.map +1 -0
- package/out/packages/zero-cache/src/server/anonymous-otel-start.js +306 -0
- package/out/packages/zero-cache/src/server/anonymous-otel-start.js.map +1 -0
- package/out/packages/zero-cache/src/server/inspector-delegate.js.map +1 -0
- package/out/packages/zero-cache/src/server/logging.js.map +1 -0
- package/out/packages/zero-cache/src/server/otel-diag-logger.js.map +1 -0
- package/out/packages/zero-cache/src/server/otel-log-sink.js.map +1 -0
- package/out/packages/zero-cache/src/server/otel-start.js +53 -0
- package/out/packages/zero-cache/src/server/otel-start.js.map +1 -0
- package/out/packages/zero-cache/src/server/priority-op.js.map +1 -0
- package/out/packages/zero-cache/src/server/runner/main.js +11 -0
- package/out/packages/zero-cache/src/server/runner/main.js.map +1 -0
- package/out/packages/zero-cache/src/server/runner/run-worker.js.map +1 -0
- package/out/packages/zero-cache/src/server/runner/runtime.js.map +1 -0
- package/out/packages/zero-cache/src/server/runner/zero-dispatcher.js.map +1 -0
- package/out/packages/zero-cache/src/server/worker-dispatcher.js.map +1 -0
- package/out/packages/zero-cache/src/server/worker-urls.js.map +1 -0
- package/out/packages/zero-cache/src/services/analyze.js +72 -0
- package/out/packages/zero-cache/src/services/analyze.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-source/common/backfill-manager.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-source/common/change-stream-multiplexer.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-source/common/replica-schema.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-source/custom/change-source.js +176 -0
- package/out/packages/zero-cache/src/services/change-source/custom/change-source.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-source/pg/backfill-metadata.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-source/pg/backfill-stream.js +197 -0
- package/out/packages/zero-cache/src/services/change-source/pg/backfill-stream.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-source/pg/change-source.js +929 -0
- package/out/packages/zero-cache/src/services/change-source/pg/change-source.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-source/pg/decommission.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-source/pg/initial-sync.js +553 -0
- package/out/packages/zero-cache/src/services/change-source/pg/initial-sync.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-source/pg/logical-replication/binary-reader.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-source/pg/logical-replication/pgoutput-parser.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-source/pg/logical-replication/stream.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-source/pg/lsn.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-source/pg/replication-slots.js +162 -0
- package/out/packages/zero-cache/src/services/change-source/pg/replication-slots.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-source/pg/schema/ddl.js +334 -0
- package/out/packages/zero-cache/src/services/change-source/pg/schema/ddl.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-source/pg/schema/init.js +155 -0
- package/out/packages/zero-cache/src/services/change-source/pg/schema/init.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-source/pg/schema/published.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-source/pg/schema/shard.js +330 -0
- package/out/packages/zero-cache/src/services/change-source/pg/schema/shard.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-source/pg/schema/validation.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-source/protocol/current/control.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-source/protocol/current/data.js +194 -0
- package/out/packages/zero-cache/src/services/change-source/protocol/current/data.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-source/protocol/current/downstream.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-source/protocol/current/json.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-source/protocol/current/path.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-source/protocol/current/status.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-source/protocol/current/upstream.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-source/protocol/current.js +56 -0
- package/out/packages/zero-cache/src/services/change-source/protocol/current.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-streamer/backup-monitor.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-streamer/broadcast.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-streamer/change-streamer-http.js +158 -0
- package/out/packages/zero-cache/src/services/change-streamer/change-streamer-http.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-streamer/change-streamer-service.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-streamer/change-streamer.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-streamer/forwarder.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-streamer/replica-monitor.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-streamer/schema/init.js +70 -0
- package/out/packages/zero-cache/src/services/change-streamer/schema/init.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-streamer/schema/tables.js +191 -0
- package/out/packages/zero-cache/src/services/change-streamer/schema/tables.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-streamer/snapshot.js +42 -0
- package/out/packages/zero-cache/src/services/change-streamer/snapshot.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-streamer/storer.js.map +1 -0
- package/out/packages/zero-cache/src/services/change-streamer/subscriber.js.map +1 -0
- package/out/packages/zero-cache/src/services/heapz.js.map +1 -0
- package/out/packages/zero-cache/src/services/http-service.js.map +1 -0
- package/out/packages/zero-cache/src/services/life-cycle.js +200 -0
- package/out/packages/zero-cache/src/services/life-cycle.js.map +1 -0
- package/out/packages/zero-cache/src/services/limiter/sliding-window-limiter.js.map +1 -0
- package/out/packages/zero-cache/src/services/litestream/commands.js.map +1 -0
- package/out/packages/zero-cache/src/services/mutagen/error.js.map +1 -0
- package/out/packages/zero-cache/src/services/mutagen/mutagen.js.map +1 -0
- package/out/packages/zero-cache/src/services/mutagen/pusher.js.map +1 -0
- package/out/packages/zero-cache/src/services/replicator/change-processor.js.map +1 -0
- package/out/packages/zero-cache/src/services/replicator/incremental-sync.js.map +1 -0
- package/out/packages/zero-cache/src/services/replicator/notifier.js.map +1 -0
- package/out/packages/zero-cache/src/services/replicator/replication-status.js.map +1 -0
- package/out/packages/zero-cache/src/services/replicator/replicator.js.map +1 -0
- package/out/packages/zero-cache/src/services/replicator/reporter/recorder.js.map +1 -0
- package/out/packages/zero-cache/src/services/replicator/reporter/report-schema.js.map +1 -0
- package/out/packages/zero-cache/src/services/replicator/schema/change-log.js.map +1 -0
- package/out/packages/zero-cache/src/services/replicator/schema/column-metadata.js.map +1 -0
- package/out/packages/zero-cache/src/services/replicator/schema/constants.js.map +1 -0
- package/out/packages/zero-cache/src/services/replicator/schema/replication-state.js.map +1 -0
- package/out/packages/zero-cache/src/services/replicator/schema/table-metadata.js.map +1 -0
- package/out/packages/zero-cache/src/services/replicator/write-worker-client.js.map +1 -0
- package/out/packages/zero-cache/src/services/replicator/write-worker.js.map +1 -0
- package/out/packages/zero-cache/src/services/run-ast.js +88 -0
- package/out/packages/zero-cache/src/services/run-ast.js.map +1 -0
- package/out/packages/zero-cache/src/services/runner.js.map +1 -0
- package/out/packages/zero-cache/src/services/running-state.js +139 -0
- package/out/packages/zero-cache/src/services/running-state.js.map +1 -0
- package/out/packages/zero-cache/src/services/shadow-sync/shadow-sync-service.js +57 -0
- package/out/packages/zero-cache/src/services/shadow-sync/shadow-sync-service.js.map +1 -0
- package/out/packages/zero-cache/src/services/statz.js.map +1 -0
- package/out/packages/zero-cache/src/services/view-syncer/active-users-gauge.js.map +1 -0
- package/out/packages/zero-cache/src/services/view-syncer/client-handler.js +270 -0
- package/out/packages/zero-cache/src/services/view-syncer/client-handler.js.map +1 -0
- package/out/packages/zero-cache/src/services/view-syncer/client-schema.js.map +1 -0
- package/out/packages/zero-cache/src/services/view-syncer/connection-context-manager.js.map +1 -0
- package/out/packages/zero-cache/src/services/view-syncer/cvr-purger.js +110 -0
- package/out/packages/zero-cache/src/services/view-syncer/cvr-purger.js.map +1 -0
- package/out/packages/zero-cache/src/services/view-syncer/cvr-store.js.map +1 -0
- package/out/packages/zero-cache/src/services/view-syncer/cvr.js.map +1 -0
- package/out/packages/zero-cache/src/services/view-syncer/drain-coordinator.js.map +1 -0
- package/out/packages/zero-cache/src/services/view-syncer/inspect-handler.js +102 -0
- package/out/packages/zero-cache/src/services/view-syncer/inspect-handler.js.map +1 -0
- package/out/packages/zero-cache/src/services/view-syncer/pipeline-driver.js +628 -0
- package/out/packages/zero-cache/src/services/view-syncer/pipeline-driver.js.map +1 -0
- package/out/packages/zero-cache/src/services/view-syncer/row-record-cache.js.map +1 -0
- package/out/packages/zero-cache/src/services/view-syncer/row-set-signature.js.map +1 -0
- package/out/packages/zero-cache/src/services/view-syncer/schema/cvr.js.map +1 -0
- package/out/packages/zero-cache/src/services/view-syncer/schema/init.js +142 -0
- package/out/packages/zero-cache/src/services/view-syncer/schema/init.js.map +1 -0
- package/out/packages/zero-cache/src/services/view-syncer/schema/types.js +278 -0
- package/out/packages/zero-cache/src/services/view-syncer/schema/types.js.map +1 -0
- package/out/packages/zero-cache/src/services/view-syncer/snapshotter.js.map +1 -0
- package/out/packages/zero-cache/src/services/view-syncer/tracer.js.map +1 -0
- package/out/packages/zero-cache/src/services/view-syncer/ttl-clock.js.map +1 -0
- package/out/packages/zero-cache/src/services/view-syncer/view-syncer.js +1245 -0
- package/out/packages/zero-cache/src/services/view-syncer/view-syncer.js.map +1 -0
- package/out/packages/zero-cache/src/types/configuration-error.js +11 -0
- package/out/packages/zero-cache/src/types/configuration-error.js.map +1 -0
- package/out/packages/zero-cache/src/types/error-with-level.js.map +1 -0
- package/out/packages/zero-cache/src/types/http.js.map +1 -0
- package/out/packages/zero-cache/src/types/lexi-version.js.map +1 -0
- package/out/packages/zero-cache/src/types/lite.js.map +1 -0
- package/out/packages/zero-cache/src/types/names.js.map +1 -0
- package/out/packages/zero-cache/src/types/pg-data-type.js.map +1 -0
- package/out/packages/zero-cache/src/types/pg-types.js.map +1 -0
- package/out/packages/zero-cache/src/types/pg-versions.js.map +1 -0
- package/out/packages/zero-cache/src/types/pg.js +222 -0
- package/out/packages/zero-cache/src/types/pg.js.map +1 -0
- package/out/packages/zero-cache/src/types/processes.js.map +1 -0
- package/out/packages/zero-cache/src/types/profiler.js.map +1 -0
- package/out/packages/zero-cache/src/types/row-key.js.map +1 -0
- package/out/packages/zero-cache/src/types/shards.js.map +1 -0
- package/out/packages/zero-cache/src/types/sql.js.map +1 -0
- package/out/packages/zero-cache/src/types/state-version.js.map +1 -0
- package/out/packages/zero-cache/src/types/streams.js.map +1 -0
- package/out/packages/zero-cache/src/types/strings.js.map +1 -0
- package/out/packages/zero-cache/src/types/subscription.js.map +1 -0
- package/out/packages/zero-cache/src/types/timeout.js.map +1 -0
- package/out/packages/zero-cache/src/types/url-params.js.map +1 -0
- package/out/packages/zero-cache/src/types/websocket-handoff.js.map +1 -0
- package/out/packages/zero-cache/src/types/ws.js.map +1 -0
- package/out/packages/zero-cache/src/workers/connect-params.js.map +1 -0
- package/out/packages/zero-cache/src/workers/connection.js +229 -0
- package/out/packages/zero-cache/src/workers/connection.js.map +1 -0
- package/out/packages/zero-cache/src/workers/mutator.js.map +1 -0
- package/out/packages/zero-cache/src/workers/replicator.js.map +1 -0
- package/out/packages/zero-cache/src/workers/syncer-ws-message-handler.js.map +1 -0
- package/out/packages/zero-cache/src/workers/syncer.js.map +1 -0
- package/out/packages/zero-client/src/client/active-clients-manager.js.map +1 -0
- package/out/packages/zero-client/src/client/client-error-kind-enum.js.map +1 -0
- package/out/packages/zero-client/src/client/connection-manager.js +296 -0
- package/out/packages/zero-client/src/client/connection-manager.js.map +1 -0
- package/out/packages/zero-client/src/client/connection-status-enum.js +20 -0
- package/out/packages/zero-client/src/client/connection-status-enum.js.map +1 -0
- package/out/packages/zero-client/src/client/connection.js.map +1 -0
- package/out/packages/zero-client/src/client/context.js.map +1 -0
- package/out/packages/zero-client/src/client/crud-impl.js +61 -0
- package/out/packages/zero-client/src/client/crud-impl.js.map +1 -0
- package/out/packages/zero-client/src/client/crud.js.map +1 -0
- package/out/packages/zero-client/src/client/custom.js +64 -0
- package/out/packages/zero-client/src/client/custom.js.map +1 -0
- package/out/packages/zero-client/src/client/delete-clients-manager.js.map +1 -0
- package/out/packages/zero-client/src/client/enable-analytics.js.map +1 -0
- package/out/packages/zero-client/src/client/error.js.map +1 -0
- package/out/packages/zero-client/src/client/http-string.js.map +1 -0
- package/out/packages/zero-client/src/client/inspector/client-group.js.map +1 -0
- package/out/packages/zero-client/src/client/inspector/client.js.map +1 -0
- package/out/packages/zero-client/src/client/inspector/html-dialog-prompt.js.map +1 -0
- package/out/packages/zero-client/src/client/inspector/inspector.js.map +1 -0
- package/out/packages/zero-client/src/client/inspector/lazy-inspector.js.map +1 -0
- package/out/packages/zero-client/src/client/inspector/query.js.map +1 -0
- package/out/packages/zero-client/src/client/ivm-branch.js.map +1 -0
- package/out/packages/zero-client/src/client/keys.js.map +1 -0
- package/out/packages/zero-client/src/client/log-options.js.map +1 -0
- package/out/packages/zero-client/src/client/make-mutate-property.js.map +1 -0
- package/out/packages/zero-client/src/client/make-replicache-mutators.js.map +1 -0
- package/out/packages/zero-client/src/client/metric-name-enum.js.map +1 -0
- package/out/packages/zero-client/src/client/metrics.js.map +1 -0
- package/out/packages/zero-client/src/client/mutation-tracker.js.map +1 -0
- package/out/packages/zero-client/src/client/mutator-proxy.js.map +1 -0
- package/out/packages/zero-client/src/client/options.js.map +1 -0
- package/out/packages/zero-client/src/client/query-manager.js.map +1 -0
- package/out/packages/zero-client/src/client/reload-error-handler.js.map +1 -0
- package/out/packages/zero-client/src/client/server-option.js.map +1 -0
- package/out/packages/zero-client/src/client/update-needed-reason-type-enum.js +27 -0
- package/out/packages/zero-client/src/client/update-needed-reason-type-enum.js.map +1 -0
- package/out/packages/zero-client/src/client/version.js +9 -0
- package/out/packages/zero-client/src/client/version.js.map +1 -0
- package/out/packages/zero-client/src/client/zero-poke-handler.js.map +1 -0
- package/out/packages/zero-client/src/client/zero-rep.js.map +1 -0
- package/out/packages/zero-client/src/client/zero.js +1469 -0
- package/out/packages/zero-client/src/client/zero.js.map +1 -0
- package/out/packages/zero-client/src/util/nanoid.js.map +1 -0
- package/out/packages/zero-protocol/src/analyze-query-result.js +123 -0
- package/out/packages/zero-protocol/src/analyze-query-result.js.map +1 -0
- package/out/packages/zero-protocol/src/application-error.js.map +1 -0
- package/out/packages/zero-protocol/src/ast.js.map +1 -0
- package/out/packages/zero-protocol/src/change-desired-queries.js +13 -0
- package/out/packages/zero-protocol/src/change-desired-queries.js.map +1 -0
- package/out/packages/zero-protocol/src/client-schema.js.map +1 -0
- package/out/packages/zero-protocol/src/close-connection.js.map +1 -0
- package/out/packages/zero-protocol/src/connect.js +54 -0
- package/out/packages/zero-protocol/src/connect.js.map +1 -0
- package/out/packages/zero-protocol/src/custom-queries.js.map +1 -0
- package/out/packages/zero-protocol/src/data.js.map +1 -0
- package/out/packages/zero-protocol/src/delete-clients.js.map +1 -0
- package/out/packages/zero-protocol/src/down.js.map +1 -0
- package/out/packages/zero-protocol/src/error-kind-enum.js.map +1 -0
- package/out/packages/zero-protocol/src/error-origin-enum.js.map +1 -0
- package/out/packages/zero-protocol/src/error-reason-enum.js.map +1 -0
- package/out/packages/zero-protocol/src/error.js +91 -0
- package/out/packages/zero-protocol/src/error.js.map +1 -0
- package/out/packages/zero-protocol/src/inspect-down.js.map +1 -0
- package/out/packages/zero-protocol/src/inspect-up.js +35 -0
- package/out/packages/zero-protocol/src/inspect-up.js.map +1 -0
- package/out/packages/zero-protocol/src/mutate-server.js.map +1 -0
- package/out/packages/zero-protocol/src/mutation-id.js.map +1 -0
- package/out/packages/zero-protocol/src/mutation-type-enum.js.map +1 -0
- package/out/packages/zero-protocol/src/mutation.js.map +1 -0
- package/out/packages/zero-protocol/src/mutations-patch.js.map +1 -0
- package/out/packages/zero-protocol/src/ping.js.map +1 -0
- package/out/packages/zero-protocol/src/poke.js +63 -0
- package/out/packages/zero-protocol/src/poke.js.map +1 -0
- package/out/packages/zero-protocol/src/pong.js.map +1 -0
- package/out/packages/zero-protocol/src/primary-key.js.map +1 -0
- package/out/packages/zero-protocol/src/protocol-version.js.map +1 -0
- package/out/packages/zero-protocol/src/pull.js.map +1 -0
- package/out/packages/zero-protocol/src/push.js +76 -0
- package/out/packages/zero-protocol/src/push.js.map +1 -0
- package/out/packages/zero-protocol/src/queries-patch.js.map +1 -0
- package/out/packages/zero-protocol/src/query-hash.js.map +1 -0
- package/out/packages/zero-protocol/src/query-server.js.map +1 -0
- package/out/packages/zero-protocol/src/row-patch.js.map +1 -0
- package/out/packages/zero-protocol/src/up.js.map +1 -0
- package/out/packages/zero-protocol/src/update-auth.js.map +1 -0
- package/out/packages/zero-protocol/src/version.js.map +1 -0
- package/out/packages/zero-react/src/use-connection-state.js +19 -0
- package/out/packages/zero-react/src/use-connection-state.js.map +1 -0
- package/out/packages/zero-react/src/use-query.js +301 -0
- package/out/packages/zero-react/src/use-query.js.map +1 -0
- package/out/packages/zero-react/src/use-zero-online.js +22 -0
- package/out/packages/zero-react/src/use-zero-online.js.map +1 -0
- package/out/packages/zero-react/src/zero-provider.js +90 -0
- package/out/packages/zero-react/src/zero-provider.js.map +1 -0
- package/out/packages/zero-schema/src/builder/relationship-builder.js.map +1 -0
- package/out/packages/zero-schema/src/builder/schema-builder.js.map +1 -0
- package/out/packages/zero-schema/src/builder/table-builder.js.map +1 -0
- package/out/packages/zero-schema/src/compiled-permissions.js.map +1 -0
- package/out/packages/zero-schema/src/name-mapper.js.map +1 -0
- package/out/packages/zero-schema/src/permissions.js.map +1 -0
- package/out/packages/zero-schema/src/schema-config.js.map +1 -0
- package/out/packages/zero-server/src/adapters/drizzle.js.map +1 -0
- package/out/packages/zero-server/src/adapters/kysely.js.map +1 -0
- package/out/packages/zero-server/src/adapters/pg.js +83 -0
- package/out/packages/zero-server/src/adapters/pg.js.map +1 -0
- package/out/packages/zero-server/src/adapters/postgresjs.js.map +1 -0
- package/out/packages/zero-server/src/adapters/prisma.js.map +1 -0
- package/out/packages/zero-server/src/custom.js +215 -0
- package/out/packages/zero-server/src/custom.js.map +1 -0
- package/out/packages/zero-server/src/logging.js.map +1 -0
- package/out/packages/zero-server/src/pg-query-executor.js.map +1 -0
- package/out/packages/zero-server/src/process-mutations.js.map +1 -0
- package/out/packages/zero-server/src/push-processor.js.map +1 -0
- package/out/packages/zero-server/src/queries/process-queries.js.map +1 -0
- package/out/packages/zero-server/src/schema.js.map +1 -0
- package/out/packages/zero-server/src/zql-database.js.map +1 -0
- package/out/packages/zero-solid/src/solid-view.js +145 -0
- package/out/packages/zero-solid/src/solid-view.js.map +1 -0
- package/out/packages/zero-solid/src/use-connection-state.js +21 -0
- package/out/packages/zero-solid/src/use-connection-state.js.map +1 -0
- package/out/packages/zero-solid/src/use-query.js +64 -0
- package/out/packages/zero-solid/src/use-query.js.map +1 -0
- package/out/packages/zero-solid/src/use-zero-online.js +21 -0
- package/out/packages/zero-solid/src/use-zero-online.js.map +1 -0
- package/out/packages/zero-solid/src/use-zero.js +93 -0
- package/out/packages/zero-solid/src/use-zero.js.map +1 -0
- package/out/packages/zero-types/src/format.js.map +1 -0
- package/out/packages/zero-types/src/name-mapper.js.map +1 -0
- package/out/packages/zql/src/builder/builder.js +381 -0
- package/out/packages/zql/src/builder/builder.js.map +1 -0
- package/out/packages/zql/src/builder/debug-delegate.js +81 -0
- package/out/packages/zql/src/builder/debug-delegate.js.map +1 -0
- package/out/packages/zql/src/builder/filter.js.map +1 -0
- package/out/packages/zql/src/builder/like.js.map +1 -0
- package/out/packages/zql/src/error.js.map +1 -0
- package/out/packages/zql/src/ivm/array-view.js.map +1 -0
- package/out/packages/zql/src/ivm/cap.js.map +1 -0
- package/out/packages/zql/src/ivm/change.js.map +1 -0
- package/out/packages/zql/src/ivm/constraint.js +82 -0
- package/out/packages/zql/src/ivm/constraint.js.map +1 -0
- package/out/packages/zql/src/ivm/data.js.map +1 -0
- package/out/packages/zql/src/ivm/exists.js.map +1 -0
- package/out/packages/zql/src/ivm/fan-in.js.map +1 -0
- package/out/packages/zql/src/ivm/fan-out.js.map +1 -0
- package/out/packages/zql/src/ivm/filter-operators.js.map +1 -0
- package/out/packages/zql/src/ivm/filter-push.js.map +1 -0
- package/out/packages/zql/src/ivm/filter.js.map +1 -0
- package/out/packages/zql/src/ivm/flipped-join.js +307 -0
- package/out/packages/zql/src/ivm/flipped-join.js.map +1 -0
- package/out/packages/zql/src/ivm/join-utils.js.map +1 -0
- package/out/packages/zql/src/ivm/join.js.map +1 -0
- package/out/packages/zql/src/ivm/maybe-split-and-push-edit-change.js.map +1 -0
- package/out/packages/zql/src/ivm/memory-source.js.map +1 -0
- package/out/packages/zql/src/ivm/memory-storage.js.map +1 -0
- package/out/packages/zql/src/ivm/operator.js.map +1 -0
- package/out/packages/zql/src/ivm/push-accumulated.js.map +1 -0
- package/out/packages/zql/src/ivm/skip-yields.js.map +1 -0
- package/out/packages/zql/src/ivm/skip.js.map +1 -0
- package/out/packages/zql/src/ivm/source.js.map +1 -0
- package/out/packages/zql/src/ivm/stream.js.map +1 -0
- package/out/packages/zql/src/ivm/take.js.map +1 -0
- package/out/packages/zql/src/ivm/union-fan-in.js +165 -0
- package/out/packages/zql/src/ivm/union-fan-in.js.map +1 -0
- package/out/packages/zql/src/ivm/union-fan-out.js.map +1 -0
- package/out/packages/zql/src/ivm/view-apply-change.js.map +1 -0
- package/out/packages/zql/src/mutate/crud.js.map +1 -0
- package/out/packages/zql/src/mutate/custom.js.map +1 -0
- package/out/packages/zql/src/mutate/mutator-registry.js.map +1 -0
- package/out/packages/zql/src/mutate/mutator.js.map +1 -0
- package/out/packages/zql/src/planner/planner-builder.js.map +1 -0
- package/out/packages/zql/src/planner/planner-connection.js.map +1 -0
- package/out/packages/zql/src/planner/planner-constraint.js.map +1 -0
- package/out/packages/zql/src/planner/planner-debug.js.map +1 -0
- package/out/packages/zql/src/planner/planner-fan-in.js.map +1 -0
- package/out/packages/zql/src/planner/planner-fan-out.js.map +1 -0
- package/out/packages/zql/src/planner/planner-graph.js.map +1 -0
- package/out/packages/zql/src/planner/planner-join.js +262 -0
- package/out/packages/zql/src/planner/planner-join.js.map +1 -0
- package/out/packages/zql/src/planner/planner-node.js.map +1 -0
- package/out/packages/zql/src/planner/planner-source.js.map +1 -0
- package/out/packages/zql/src/planner/planner-terminus.js.map +1 -0
- package/out/packages/zql/src/query/complete-ordering.js.map +1 -0
- package/out/packages/zql/src/query/create-builder.js.map +1 -0
- package/out/packages/zql/src/query/error.js.map +1 -0
- package/out/packages/zql/src/query/escape-like.js.map +1 -0
- package/out/packages/zql/src/query/expression.js.map +1 -0
- package/out/packages/zql/src/query/measure-push-operator.js.map +1 -0
- package/out/packages/zql/src/query/metrics-delegate.js.map +1 -0
- package/out/packages/zql/src/query/named.js.map +1 -0
- package/out/packages/zql/src/query/query-delegate-base.js.map +1 -0
- package/out/packages/zql/src/query/query-impl.js +290 -0
- package/out/packages/zql/src/query/query-impl.js.map +1 -0
- package/out/packages/zql/src/query/query-internals.js.map +1 -0
- package/out/packages/zql/src/query/query-registry.js.map +1 -0
- package/out/packages/zql/src/query/runnable-query-impl.js.map +1 -0
- package/out/packages/zql/src/query/static-query.js.map +1 -0
- package/out/packages/zql/src/query/ttl.js.map +1 -0
- package/out/packages/zql/src/query/validate-input.js.map +1 -0
- package/out/packages/zqlite/src/database-storage.js.map +1 -0
- package/out/packages/zqlite/src/db.js.map +1 -0
- package/out/packages/zqlite/src/explain-queries.js.map +1 -0
- package/out/packages/zqlite/src/internal/sql-inline.js.map +1 -0
- package/out/packages/zqlite/src/internal/sql.js.map +1 -0
- package/out/packages/zqlite/src/internal/statement-cache.js.map +1 -0
- package/out/packages/zqlite/src/query-builder.js.map +1 -0
- package/out/packages/zqlite/src/query-delegate.js.map +1 -0
- package/out/packages/zqlite/src/resolve-scalar-subqueries.js.map +1 -0
- package/out/packages/zqlite/src/sqlite-cost-model.js.map +1 -0
- package/out/packages/zqlite/src/sqlite-stat-fanout.js.map +1 -0
- package/out/packages/zqlite/src/table-source.js +313 -0
- package/out/packages/zqlite/src/table-source.js.map +1 -0
- package/out/replicache/src/dag/store-impl.d.ts.map +1 -1
- package/out/replicache/src/kv/expo-sqlite/store.d.ts +1 -1
- package/out/replicache/src/kv/expo-sqlite/store.d.ts.map +1 -1
- package/out/replicache/src/kv/op-sqlite/store.d.ts.map +1 -1
- package/out/replicache/src/kv/sqlite-store.d.ts +6 -6
- package/out/replicache/src/kv/sqlite-store.d.ts.map +1 -1
- package/out/replicache/src/kv/throw-if-closed.d.ts +1 -0
- package/out/replicache/src/kv/throw-if-closed.d.ts.map +1 -1
- package/out/replicache/src/persist/persist.d.ts.map +1 -1
- package/out/replicache/src/sync/pull.d.ts.map +1 -1
- package/out/shared/src/map.d.ts +6 -0
- package/out/shared/src/map.d.ts.map +1 -0
- package/out/shared/src/queue.d.ts.map +1 -1
- package/out/shared/src/ring-buffer.d.ts +32 -0
- package/out/shared/src/ring-buffer.d.ts.map +1 -0
- package/out/zero/src/adapters/drizzle.js +1 -1
- package/out/zero/src/adapters/kysely.js +1 -1
- package/out/zero/src/adapters/pg.js +1 -1
- package/out/zero/src/adapters/postgresjs.js +1 -1
- package/out/zero/src/adapters/prisma.js +1 -1
- package/out/zero/src/analyze-query.js +1 -1
- package/out/zero/src/analyze.js +1 -1
- package/out/zero/src/ast-to-zql.js +1 -1
- package/out/zero/src/bindings.js +11 -11
- package/out/zero/src/build-schema.js.map +1 -1
- package/out/zero/src/change-protocol/v0.js +2 -2
- package/out/zero/src/cli.js +1 -1
- package/out/zero/src/deploy-permissions.js +1 -1
- package/out/zero/src/expo-sqlite.js +2 -2
- package/out/zero/src/op-sqlite.js +2 -2
- package/out/zero/src/pg.js +9 -9
- package/out/zero/src/react-native.js +2 -2
- package/out/zero/src/react.js +5 -5
- package/out/zero/src/server.js +8 -8
- package/out/zero/src/solid.js +5 -5
- package/out/zero/src/sqlite.js +2 -2
- package/out/zero/src/transform-query.js +1 -1
- package/out/zero/src/zero-cache-dev.js +6 -6
- package/out/zero/src/zero-cache-dev.js.map +1 -1
- package/out/zero/src/zero-out.js +5 -5
- package/out/zero/src/zero-out.js.map +1 -1
- package/out/zero/src/zero.js +22 -22
- package/out/zero/src/zqlite.js +5 -5
- package/out/zero-cache/src/server/change-streamer.d.ts.map +1 -1
- package/out/zero-cache/src/server/change-streamer.js +38 -32
- package/out/zero-cache/src/server/change-streamer.js.map +1 -1
- package/out/zero-cache/src/server/main.d.ts.map +1 -1
- package/out/zero-cache/src/server/main.js +15 -13
- package/out/zero-cache/src/server/main.js.map +1 -1
- package/out/zero-cache/src/server/mutator.js +12 -10
- package/out/zero-cache/src/server/mutator.js.map +1 -1
- package/out/zero-cache/src/server/reaper.d.ts.map +1 -1
- package/out/zero-cache/src/server/reaper.js +18 -16
- package/out/zero-cache/src/server/reaper.js.map +1 -1
- package/out/zero-cache/src/server/replicator.d.ts.map +1 -1
- package/out/zero-cache/src/server/replicator.js +20 -18
- package/out/zero-cache/src/server/replicator.js.map +1 -1
- package/out/zero-cache/src/server/runner/main.d.ts.map +1 -1
- package/out/zero-cache/src/server/shadow-syncer.js +16 -13
- package/out/zero-cache/src/server/shadow-syncer.js.map +1 -1
- package/out/zero-cache/src/server/syncer.d.ts.map +1 -1
- package/out/zero-cache/src/server/syncer.js +36 -34
- package/out/zero-cache/src/server/syncer.js.map +1 -1
- package/out/zero-cache/src/server/write-worker.js +1 -1
- package/out/zero-cache/src/services/analyze.d.ts.map +1 -1
- package/out/zero-cache/src/services/change-source/pg/change-source.d.ts.map +1 -1
- package/out/zero-cache/src/services/change-source/pg/initial-sync.d.ts +8 -2
- package/out/zero-cache/src/services/change-source/pg/initial-sync.d.ts.map +1 -1
- package/out/zero-cache/src/services/change-source/pg/replication-slots.d.ts +1 -1
- package/out/zero-cache/src/services/change-source/pg/replication-slots.d.ts.map +1 -1
- package/out/zero-cache/src/services/change-source/pg/schema/init.d.ts.map +1 -1
- package/out/zero-cache/src/services/change-streamer/schema/tables.d.ts.map +1 -1
- package/out/zero-cache/src/services/life-cycle.d.ts +1 -1
- package/out/zero-cache/src/services/life-cycle.d.ts.map +1 -1
- package/out/zero-cache/src/services/run-ast.d.ts.map +1 -1
- package/out/zero-cache/src/services/running-state.d.ts.map +1 -1
- package/out/zero-cache/src/services/view-syncer/cvr-purger.d.ts.map +1 -1
- package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts.map +1 -1
- package/out/zero-cache/src/types/configuration-error.d.ts +4 -0
- package/out/zero-cache/src/types/configuration-error.d.ts.map +1 -0
- package/out/zero-cache/src/types/pg.d.ts +2 -0
- package/out/zero-cache/src/types/pg.d.ts.map +1 -1
- package/out/zero-client/src/client/zero.d.ts.map +1 -1
- package/out/zql/src/builder/builder.d.ts.map +1 -1
- package/out/zql/src/builder/debug-delegate.d.ts +5 -0
- package/out/zql/src/builder/debug-delegate.d.ts.map +1 -1
- package/out/zql/src/ivm/flipped-join.d.ts +4 -8
- package/out/zql/src/ivm/flipped-join.d.ts.map +1 -1
- package/out/zql/src/ivm/operator.d.ts +1 -1
- package/out/zql/src/ivm/schema.d.ts +0 -8
- package/out/zql/src/ivm/schema.d.ts.map +1 -1
- package/out/zql/src/ivm/union-fan-in.d.ts.map +1 -1
- package/out/zql/src/mutate/mutator.d.ts +12 -3
- package/out/zql/src/mutate/mutator.d.ts.map +1 -1
- package/out/zql/src/planner/planner-join.d.ts.map +1 -1
- package/out/zql/src/query/query-registry.d.ts +10 -3
- package/out/zql/src/query/query-registry.d.ts.map +1 -1
- package/out/zqlite/src/table-source.d.ts.map +1 -1
- package/package.json +23 -23
- package/out/_virtual/_@oxc-project_runtime@0.122.0/helpers/usingCtx.js +0 -57
- package/out/analyze-query/src/analyze-cli.js +0 -288
- package/out/analyze-query/src/analyze-cli.js.map +0 -1
- package/out/analyze-query/src/bin-analyze.js +0 -277
- package/out/analyze-query/src/bin-analyze.js.map +0 -1
- package/out/analyze-query/src/bin-transform.js.map +0 -1
- package/out/ast-to-zql/src/ast-to-zql.js.map +0 -1
- package/out/ast-to-zql/src/bin.js.map +0 -1
- package/out/ast-to-zql/src/format.js.map +0 -1
- package/out/datadog/src/datadog-log-sink.js.map +0 -1
- package/out/otel/src/enabled.js.map +0 -1
- package/out/otel/src/log-options.js.map +0 -1
- package/out/otel/src/maybe-time.js.map +0 -1
- package/out/otel/src/span.js.map +0 -1
- package/out/otel/src/version.js.map +0 -1
- package/out/replicache/src/async-iterable-to-array.js.map +0 -1
- package/out/replicache/src/bg-interval.js.map +0 -1
- package/out/replicache/src/btree/diff.js.map +0 -1
- package/out/replicache/src/btree/node.js.map +0 -1
- package/out/replicache/src/btree/read.js.map +0 -1
- package/out/replicache/src/btree/splice.js.map +0 -1
- package/out/replicache/src/btree/write.js +0 -188
- package/out/replicache/src/btree/write.js.map +0 -1
- package/out/replicache/src/call-default-fetch.js.map +0 -1
- package/out/replicache/src/connection-loop-delegates.js.map +0 -1
- package/out/replicache/src/connection-loop.js.map +0 -1
- package/out/replicache/src/cookies.js.map +0 -1
- package/out/replicache/src/dag/chunk.js.map +0 -1
- package/out/replicache/src/dag/gc.js.map +0 -1
- package/out/replicache/src/dag/key.js.map +0 -1
- package/out/replicache/src/dag/lazy-store.js.map +0 -1
- package/out/replicache/src/dag/store-impl.js +0 -152
- package/out/replicache/src/dag/store-impl.js.map +0 -1
- package/out/replicache/src/dag/store.js.map +0 -1
- package/out/replicache/src/dag/visitor.js.map +0 -1
- package/out/replicache/src/db/commit.js.map +0 -1
- package/out/replicache/src/db/index.js.map +0 -1
- package/out/replicache/src/db/read.js.map +0 -1
- package/out/replicache/src/db/rebase.js.map +0 -1
- package/out/replicache/src/db/write.js.map +0 -1
- package/out/replicache/src/deleted-clients.js.map +0 -1
- package/out/replicache/src/error-responses.js.map +0 -1
- package/out/replicache/src/frozen-json.js.map +0 -1
- package/out/replicache/src/get-default-puller.js.map +0 -1
- package/out/replicache/src/get-default-pusher.js.map +0 -1
- package/out/replicache/src/get-kv-store-provider.js.map +0 -1
- package/out/replicache/src/hash.js.map +0 -1
- package/out/replicache/src/http-request-info.js.map +0 -1
- package/out/replicache/src/index-defs.js.map +0 -1
- package/out/replicache/src/kv/expo-sqlite/store.js +0 -58
- package/out/replicache/src/kv/expo-sqlite/store.js.map +0 -1
- package/out/replicache/src/kv/idb-store-with-mem-fallback.js.map +0 -1
- package/out/replicache/src/kv/idb-store.js.map +0 -1
- package/out/replicache/src/kv/mem-store.js.map +0 -1
- package/out/replicache/src/kv/op-sqlite/store.js +0 -63
- package/out/replicache/src/kv/op-sqlite/store.js.map +0 -1
- package/out/replicache/src/kv/op-sqlite/types.js.map +0 -1
- package/out/replicache/src/kv/read-impl.js.map +0 -1
- package/out/replicache/src/kv/sqlite-store.js +0 -216
- package/out/replicache/src/kv/sqlite-store.js.map +0 -1
- package/out/replicache/src/kv/throw-if-closed.js +0 -26
- package/out/replicache/src/kv/throw-if-closed.js.map +0 -1
- package/out/replicache/src/kv/write-impl-base.js.map +0 -1
- package/out/replicache/src/kv/write-impl.js.map +0 -1
- package/out/replicache/src/lazy.js.map +0 -1
- package/out/replicache/src/log-options.js.map +0 -1
- package/out/replicache/src/make-idb-name.js.map +0 -1
- package/out/replicache/src/new-client-channel.js.map +0 -1
- package/out/replicache/src/on-persist-channel.js.map +0 -1
- package/out/replicache/src/patch-operation.js.map +0 -1
- package/out/replicache/src/pending-mutations.js.map +0 -1
- package/out/replicache/src/persist/client-gc.js.map +0 -1
- package/out/replicache/src/persist/client-group-gc.js.map +0 -1
- package/out/replicache/src/persist/client-groups.js +0 -110
- package/out/replicache/src/persist/client-groups.js.map +0 -1
- package/out/replicache/src/persist/clients.js +0 -261
- package/out/replicache/src/persist/clients.js.map +0 -1
- package/out/replicache/src/persist/collect-idb-databases.js.map +0 -1
- package/out/replicache/src/persist/gather-mem-only-visitor.js.map +0 -1
- package/out/replicache/src/persist/gather-not-cached-visitor.js.map +0 -1
- package/out/replicache/src/persist/heartbeat.js.map +0 -1
- package/out/replicache/src/persist/idb-databases-store-db-name.js.map +0 -1
- package/out/replicache/src/persist/idb-databases-store.js.map +0 -1
- package/out/replicache/src/persist/make-client-id.js.map +0 -1
- package/out/replicache/src/persist/persist.js +0 -122
- package/out/replicache/src/persist/persist.js.map +0 -1
- package/out/replicache/src/persist/refresh.js.map +0 -1
- package/out/replicache/src/process-scheduler.js.map +0 -1
- package/out/replicache/src/pusher.js.map +0 -1
- package/out/replicache/src/replicache-impl.js.map +0 -1
- package/out/replicache/src/report-error.js.map +0 -1
- package/out/replicache/src/request-idle.js.map +0 -1
- package/out/replicache/src/scan-iterator.js.map +0 -1
- package/out/replicache/src/scan-options.js.map +0 -1
- package/out/replicache/src/set-interval-with-signal.js.map +0 -1
- package/out/replicache/src/subscriptions.js.map +0 -1
- package/out/replicache/src/sync/diff.js.map +0 -1
- package/out/replicache/src/sync/ids.js.map +0 -1
- package/out/replicache/src/sync/patch.js.map +0 -1
- package/out/replicache/src/sync/pull-error.js.map +0 -1
- package/out/replicache/src/sync/pull.js +0 -166
- package/out/replicache/src/sync/pull.js.map +0 -1
- package/out/replicache/src/sync/push.js.map +0 -1
- package/out/replicache/src/sync/request-id.js.map +0 -1
- package/out/replicache/src/sync/sync-head-name.js.map +0 -1
- package/out/replicache/src/to-error.js.map +0 -1
- package/out/replicache/src/transaction-closed-error.js.map +0 -1
- package/out/replicache/src/transactions.js.map +0 -1
- package/out/replicache/src/version.js.map +0 -1
- package/out/replicache/src/with-transactions.js.map +0 -1
- package/out/shared/src/abort-error.js.map +0 -1
- package/out/shared/src/arrays.js.map +0 -1
- package/out/shared/src/asserts.js.map +0 -1
- package/out/shared/src/bigint-json.js.map +0 -1
- package/out/shared/src/binary-search.js.map +0 -1
- package/out/shared/src/broadcast-channel.js.map +0 -1
- package/out/shared/src/browser-env.js.map +0 -1
- package/out/shared/src/btree-set.js.map +0 -1
- package/out/shared/src/cache.js.map +0 -1
- package/out/shared/src/centroid.js.map +0 -1
- package/out/shared/src/config.js.map +0 -1
- package/out/shared/src/custom-key-map.js.map +0 -1
- package/out/shared/src/custom-key-set.js.map +0 -1
- package/out/shared/src/deep-clone.js.map +0 -1
- package/out/shared/src/deep-merge.js.map +0 -1
- package/out/shared/src/document-visible.js.map +0 -1
- package/out/shared/src/dotenv.js.map +0 -1
- package/out/shared/src/error.js.map +0 -1
- package/out/shared/src/has-own.js.map +0 -1
- package/out/shared/src/hash.js.map +0 -1
- package/out/shared/src/iterables.js.map +0 -1
- package/out/shared/src/json-schema.js.map +0 -1
- package/out/shared/src/json.js.map +0 -1
- package/out/shared/src/logging-test-utils.js.map +0 -1
- package/out/shared/src/logging.js.map +0 -1
- package/out/shared/src/must.js.map +0 -1
- package/out/shared/src/navigator.js.map +0 -1
- package/out/shared/src/object-traversal.js.map +0 -1
- package/out/shared/src/objects.js.map +0 -1
- package/out/shared/src/options.js.map +0 -1
- package/out/shared/src/parse-big-int.js.map +0 -1
- package/out/shared/src/promise-race.js.map +0 -1
- package/out/shared/src/queue.js +0 -126
- package/out/shared/src/queue.js.map +0 -1
- package/out/shared/src/rand.js.map +0 -1
- package/out/shared/src/random-uint64.js.map +0 -1
- package/out/shared/src/random-values.js.map +0 -1
- package/out/shared/src/record-proxy.js.map +0 -1
- package/out/shared/src/resolved-promises.js.map +0 -1
- package/out/shared/src/sentinels.js.map +0 -1
- package/out/shared/src/set-utils.js.map +0 -1
- package/out/shared/src/size-of-value.js.map +0 -1
- package/out/shared/src/sleep.js.map +0 -1
- package/out/shared/src/sorted-entries.js.map +0 -1
- package/out/shared/src/string-compare.js.map +0 -1
- package/out/shared/src/subscribable.js.map +0 -1
- package/out/shared/src/tdigest-schema.js.map +0 -1
- package/out/shared/src/tdigest.js.map +0 -1
- package/out/shared/src/valita.js +0 -172
- package/out/shared/src/valita.js.map +0 -1
- package/out/z2s/src/compiler.js.map +0 -1
- package/out/z2s/src/sql.js.map +0 -1
- package/out/zero/package.js +0 -205
- package/out/zero/package.js.map +0 -1
- package/out/zero-cache/src/auth/auth.js.map +0 -1
- package/out/zero-cache/src/auth/jwt.js.map +0 -1
- package/out/zero-cache/src/auth/load-permissions.js.map +0 -1
- package/out/zero-cache/src/auth/read-authorizer.js.map +0 -1
- package/out/zero-cache/src/auth/write-authorizer.js.map +0 -1
- package/out/zero-cache/src/config/network.js.map +0 -1
- package/out/zero-cache/src/config/normalize.js.map +0 -1
- package/out/zero-cache/src/config/server-context.js.map +0 -1
- package/out/zero-cache/src/config/zero-config.js +0 -916
- package/out/zero-cache/src/config/zero-config.js.map +0 -1
- package/out/zero-cache/src/custom/fetch.js.map +0 -1
- package/out/zero-cache/src/custom-queries/transform-query.js.map +0 -1
- package/out/zero-cache/src/db/create.js.map +0 -1
- package/out/zero-cache/src/db/delete-lite-db.js.map +0 -1
- package/out/zero-cache/src/db/lite-tables.js.map +0 -1
- package/out/zero-cache/src/db/migration-lite.js +0 -147
- package/out/zero-cache/src/db/migration-lite.js.map +0 -1
- package/out/zero-cache/src/db/migration.js +0 -120
- package/out/zero-cache/src/db/migration.js.map +0 -1
- package/out/zero-cache/src/db/mode-enum.js.map +0 -1
- package/out/zero-cache/src/db/pg-copy-binary.js.map +0 -1
- package/out/zero-cache/src/db/pg-copy.js.map +0 -1
- package/out/zero-cache/src/db/pg-to-lite.js.map +0 -1
- package/out/zero-cache/src/db/pg-type-parser.js.map +0 -1
- package/out/zero-cache/src/db/run-transaction.js.map +0 -1
- package/out/zero-cache/src/db/specs.js.map +0 -1
- package/out/zero-cache/src/db/statements.js.map +0 -1
- package/out/zero-cache/src/db/transaction-pool.js.map +0 -1
- package/out/zero-cache/src/db/warmup.js.map +0 -1
- package/out/zero-cache/src/observability/events.js.map +0 -1
- package/out/zero-cache/src/observability/metrics.js.map +0 -1
- package/out/zero-cache/src/scripts/decommission.js.map +0 -1
- package/out/zero-cache/src/scripts/deploy-permissions.js.map +0 -1
- package/out/zero-cache/src/scripts/permissions.js.map +0 -1
- package/out/zero-cache/src/server/anonymous-otel-start.js +0 -305
- package/out/zero-cache/src/server/anonymous-otel-start.js.map +0 -1
- package/out/zero-cache/src/server/inspector-delegate.js.map +0 -1
- package/out/zero-cache/src/server/logging.js.map +0 -1
- package/out/zero-cache/src/server/otel-diag-logger.js.map +0 -1
- package/out/zero-cache/src/server/otel-log-sink.js.map +0 -1
- package/out/zero-cache/src/server/otel-start.js +0 -53
- package/out/zero-cache/src/server/otel-start.js.map +0 -1
- package/out/zero-cache/src/server/priority-op.js.map +0 -1
- package/out/zero-cache/src/server/runner/main.js +0 -10
- package/out/zero-cache/src/server/runner/main.js.map +0 -1
- package/out/zero-cache/src/server/runner/run-worker.js.map +0 -1
- package/out/zero-cache/src/server/runner/runtime.js.map +0 -1
- package/out/zero-cache/src/server/runner/zero-dispatcher.js.map +0 -1
- package/out/zero-cache/src/server/worker-dispatcher.js.map +0 -1
- package/out/zero-cache/src/server/worker-urls.js.map +0 -1
- package/out/zero-cache/src/services/analyze.js +0 -69
- package/out/zero-cache/src/services/analyze.js.map +0 -1
- package/out/zero-cache/src/services/change-source/common/backfill-manager.js.map +0 -1
- package/out/zero-cache/src/services/change-source/common/change-stream-multiplexer.js.map +0 -1
- package/out/zero-cache/src/services/change-source/common/replica-schema.js.map +0 -1
- package/out/zero-cache/src/services/change-source/custom/change-source.js +0 -176
- package/out/zero-cache/src/services/change-source/custom/change-source.js.map +0 -1
- package/out/zero-cache/src/services/change-source/pg/backfill-metadata.js.map +0 -1
- package/out/zero-cache/src/services/change-source/pg/backfill-stream.js +0 -197
- package/out/zero-cache/src/services/change-source/pg/backfill-stream.js.map +0 -1
- package/out/zero-cache/src/services/change-source/pg/change-source.js +0 -920
- package/out/zero-cache/src/services/change-source/pg/change-source.js.map +0 -1
- package/out/zero-cache/src/services/change-source/pg/decommission.js.map +0 -1
- package/out/zero-cache/src/services/change-source/pg/initial-sync.js +0 -545
- package/out/zero-cache/src/services/change-source/pg/initial-sync.js.map +0 -1
- package/out/zero-cache/src/services/change-source/pg/logical-replication/binary-reader.js.map +0 -1
- package/out/zero-cache/src/services/change-source/pg/logical-replication/pgoutput-parser.js.map +0 -1
- package/out/zero-cache/src/services/change-source/pg/logical-replication/stream.js.map +0 -1
- package/out/zero-cache/src/services/change-source/pg/lsn.js.map +0 -1
- package/out/zero-cache/src/services/change-source/pg/replication-slots.js +0 -162
- package/out/zero-cache/src/services/change-source/pg/replication-slots.js.map +0 -1
- package/out/zero-cache/src/services/change-source/pg/schema/ddl.js +0 -334
- package/out/zero-cache/src/services/change-source/pg/schema/ddl.js.map +0 -1
- package/out/zero-cache/src/services/change-source/pg/schema/init.js +0 -155
- package/out/zero-cache/src/services/change-source/pg/schema/init.js.map +0 -1
- package/out/zero-cache/src/services/change-source/pg/schema/published.js.map +0 -1
- package/out/zero-cache/src/services/change-source/pg/schema/shard.js +0 -330
- package/out/zero-cache/src/services/change-source/pg/schema/shard.js.map +0 -1
- package/out/zero-cache/src/services/change-source/pg/schema/validation.js.map +0 -1
- package/out/zero-cache/src/services/change-source/protocol/current/control.js.map +0 -1
- package/out/zero-cache/src/services/change-source/protocol/current/data.js +0 -192
- package/out/zero-cache/src/services/change-source/protocol/current/data.js.map +0 -1
- package/out/zero-cache/src/services/change-source/protocol/current/downstream.js.map +0 -1
- package/out/zero-cache/src/services/change-source/protocol/current/json.js.map +0 -1
- package/out/zero-cache/src/services/change-source/protocol/current/path.js.map +0 -1
- package/out/zero-cache/src/services/change-source/protocol/current/status.js.map +0 -1
- package/out/zero-cache/src/services/change-source/protocol/current/upstream.js.map +0 -1
- package/out/zero-cache/src/services/change-source/protocol/current.js +0 -56
- package/out/zero-cache/src/services/change-source/protocol/current.js.map +0 -1
- package/out/zero-cache/src/services/change-streamer/backup-monitor.js.map +0 -1
- package/out/zero-cache/src/services/change-streamer/broadcast.js.map +0 -1
- package/out/zero-cache/src/services/change-streamer/change-streamer-http.js +0 -158
- package/out/zero-cache/src/services/change-streamer/change-streamer-http.js.map +0 -1
- package/out/zero-cache/src/services/change-streamer/change-streamer-service.js.map +0 -1
- package/out/zero-cache/src/services/change-streamer/change-streamer.js.map +0 -1
- package/out/zero-cache/src/services/change-streamer/forwarder.js.map +0 -1
- package/out/zero-cache/src/services/change-streamer/replica-monitor.js.map +0 -1
- package/out/zero-cache/src/services/change-streamer/schema/init.js +0 -74
- package/out/zero-cache/src/services/change-streamer/schema/init.js.map +0 -1
- package/out/zero-cache/src/services/change-streamer/schema/tables.js +0 -191
- package/out/zero-cache/src/services/change-streamer/schema/tables.js.map +0 -1
- package/out/zero-cache/src/services/change-streamer/snapshot.js +0 -27
- package/out/zero-cache/src/services/change-streamer/snapshot.js.map +0 -1
- package/out/zero-cache/src/services/change-streamer/storer.js.map +0 -1
- package/out/zero-cache/src/services/change-streamer/subscriber.js.map +0 -1
- package/out/zero-cache/src/services/heapz.js.map +0 -1
- package/out/zero-cache/src/services/http-service.js.map +0 -1
- package/out/zero-cache/src/services/life-cycle.js +0 -195
- package/out/zero-cache/src/services/life-cycle.js.map +0 -1
- package/out/zero-cache/src/services/limiter/sliding-window-limiter.js.map +0 -1
- package/out/zero-cache/src/services/litestream/commands.js.map +0 -1
- package/out/zero-cache/src/services/mutagen/error.js.map +0 -1
- package/out/zero-cache/src/services/mutagen/mutagen.js.map +0 -1
- package/out/zero-cache/src/services/mutagen/pusher.js.map +0 -1
- package/out/zero-cache/src/services/replicator/change-processor.js.map +0 -1
- package/out/zero-cache/src/services/replicator/incremental-sync.js.map +0 -1
- package/out/zero-cache/src/services/replicator/notifier.js.map +0 -1
- package/out/zero-cache/src/services/replicator/replication-status.js.map +0 -1
- package/out/zero-cache/src/services/replicator/replicator.js.map +0 -1
- package/out/zero-cache/src/services/replicator/reporter/recorder.js.map +0 -1
- package/out/zero-cache/src/services/replicator/reporter/report-schema.js.map +0 -1
- package/out/zero-cache/src/services/replicator/schema/change-log.js.map +0 -1
- package/out/zero-cache/src/services/replicator/schema/column-metadata.js.map +0 -1
- package/out/zero-cache/src/services/replicator/schema/constants.js.map +0 -1
- package/out/zero-cache/src/services/replicator/schema/replication-state.js.map +0 -1
- package/out/zero-cache/src/services/replicator/schema/table-metadata.js.map +0 -1
- package/out/zero-cache/src/services/replicator/write-worker-client.js.map +0 -1
- package/out/zero-cache/src/services/replicator/write-worker.js.map +0 -1
- package/out/zero-cache/src/services/run-ast.js +0 -87
- package/out/zero-cache/src/services/run-ast.js.map +0 -1
- package/out/zero-cache/src/services/runner.js.map +0 -1
- package/out/zero-cache/src/services/running-state.js +0 -136
- package/out/zero-cache/src/services/running-state.js.map +0 -1
- package/out/zero-cache/src/services/shadow-sync/shadow-sync-service.js +0 -50
- package/out/zero-cache/src/services/shadow-sync/shadow-sync-service.js.map +0 -1
- package/out/zero-cache/src/services/statz.js.map +0 -1
- package/out/zero-cache/src/services/view-syncer/active-users-gauge.js.map +0 -1
- package/out/zero-cache/src/services/view-syncer/client-handler.js +0 -270
- package/out/zero-cache/src/services/view-syncer/client-handler.js.map +0 -1
- package/out/zero-cache/src/services/view-syncer/client-schema.js.map +0 -1
- package/out/zero-cache/src/services/view-syncer/connection-context-manager.js.map +0 -1
- package/out/zero-cache/src/services/view-syncer/cvr-purger.js +0 -109
- package/out/zero-cache/src/services/view-syncer/cvr-purger.js.map +0 -1
- package/out/zero-cache/src/services/view-syncer/cvr-store.js.map +0 -1
- package/out/zero-cache/src/services/view-syncer/cvr.js.map +0 -1
- package/out/zero-cache/src/services/view-syncer/drain-coordinator.js.map +0 -1
- package/out/zero-cache/src/services/view-syncer/inspect-handler.js +0 -102
- package/out/zero-cache/src/services/view-syncer/inspect-handler.js.map +0 -1
- package/out/zero-cache/src/services/view-syncer/pipeline-driver.js +0 -628
- package/out/zero-cache/src/services/view-syncer/pipeline-driver.js.map +0 -1
- package/out/zero-cache/src/services/view-syncer/row-record-cache.js.map +0 -1
- package/out/zero-cache/src/services/view-syncer/row-set-signature.js.map +0 -1
- package/out/zero-cache/src/services/view-syncer/schema/cvr.js.map +0 -1
- package/out/zero-cache/src/services/view-syncer/schema/init.js +0 -158
- package/out/zero-cache/src/services/view-syncer/schema/init.js.map +0 -1
- package/out/zero-cache/src/services/view-syncer/schema/types.js +0 -176
- package/out/zero-cache/src/services/view-syncer/schema/types.js.map +0 -1
- package/out/zero-cache/src/services/view-syncer/snapshotter.js.map +0 -1
- package/out/zero-cache/src/services/view-syncer/tracer.js.map +0 -1
- package/out/zero-cache/src/services/view-syncer/ttl-clock.js.map +0 -1
- package/out/zero-cache/src/services/view-syncer/view-syncer.js +0 -1235
- package/out/zero-cache/src/services/view-syncer/view-syncer.js.map +0 -1
- package/out/zero-cache/src/types/error-with-level.js.map +0 -1
- package/out/zero-cache/src/types/http.js.map +0 -1
- package/out/zero-cache/src/types/lexi-version.js.map +0 -1
- package/out/zero-cache/src/types/lite.js.map +0 -1
- package/out/zero-cache/src/types/names.js.map +0 -1
- package/out/zero-cache/src/types/pg-data-type.js.map +0 -1
- package/out/zero-cache/src/types/pg-types.js.map +0 -1
- package/out/zero-cache/src/types/pg-versions.js.map +0 -1
- package/out/zero-cache/src/types/pg.js +0 -189
- package/out/zero-cache/src/types/pg.js.map +0 -1
- package/out/zero-cache/src/types/processes.js.map +0 -1
- package/out/zero-cache/src/types/profiler.js.map +0 -1
- package/out/zero-cache/src/types/row-key.js.map +0 -1
- package/out/zero-cache/src/types/shards.js.map +0 -1
- package/out/zero-cache/src/types/sql.js.map +0 -1
- package/out/zero-cache/src/types/state-version.js.map +0 -1
- package/out/zero-cache/src/types/streams.js.map +0 -1
- package/out/zero-cache/src/types/strings.js.map +0 -1
- package/out/zero-cache/src/types/subscription.js.map +0 -1
- package/out/zero-cache/src/types/timeout.js.map +0 -1
- package/out/zero-cache/src/types/url-params.js.map +0 -1
- package/out/zero-cache/src/types/websocket-handoff.js.map +0 -1
- package/out/zero-cache/src/types/ws.js.map +0 -1
- package/out/zero-cache/src/workers/connect-params.js.map +0 -1
- package/out/zero-cache/src/workers/connection.js +0 -229
- package/out/zero-cache/src/workers/connection.js.map +0 -1
- package/out/zero-cache/src/workers/mutator.js.map +0 -1
- package/out/zero-cache/src/workers/replicator.js.map +0 -1
- package/out/zero-cache/src/workers/syncer-ws-message-handler.js.map +0 -1
- package/out/zero-cache/src/workers/syncer.js.map +0 -1
- package/out/zero-client/src/client/active-clients-manager.js.map +0 -1
- package/out/zero-client/src/client/client-error-kind-enum.js.map +0 -1
- package/out/zero-client/src/client/connection-manager.js +0 -295
- package/out/zero-client/src/client/connection-manager.js.map +0 -1
- package/out/zero-client/src/client/connection-status-enum.js +0 -20
- package/out/zero-client/src/client/connection-status-enum.js.map +0 -1
- package/out/zero-client/src/client/connection.js.map +0 -1
- package/out/zero-client/src/client/context.js.map +0 -1
- package/out/zero-client/src/client/crud-impl.js +0 -61
- package/out/zero-client/src/client/crud-impl.js.map +0 -1
- package/out/zero-client/src/client/crud.js.map +0 -1
- package/out/zero-client/src/client/custom.js +0 -63
- package/out/zero-client/src/client/custom.js.map +0 -1
- package/out/zero-client/src/client/delete-clients-manager.js.map +0 -1
- package/out/zero-client/src/client/enable-analytics.js.map +0 -1
- package/out/zero-client/src/client/error.js.map +0 -1
- package/out/zero-client/src/client/http-string.js.map +0 -1
- package/out/zero-client/src/client/inspector/client-group.js.map +0 -1
- package/out/zero-client/src/client/inspector/client.js.map +0 -1
- package/out/zero-client/src/client/inspector/html-dialog-prompt.js.map +0 -1
- package/out/zero-client/src/client/inspector/inspector.js.map +0 -1
- package/out/zero-client/src/client/inspector/lazy-inspector.js.map +0 -1
- package/out/zero-client/src/client/inspector/query.js.map +0 -1
- package/out/zero-client/src/client/ivm-branch.js.map +0 -1
- package/out/zero-client/src/client/keys.js.map +0 -1
- package/out/zero-client/src/client/log-options.js.map +0 -1
- package/out/zero-client/src/client/make-mutate-property.js.map +0 -1
- package/out/zero-client/src/client/make-replicache-mutators.js.map +0 -1
- package/out/zero-client/src/client/metric-name-enum.js.map +0 -1
- package/out/zero-client/src/client/metrics.js.map +0 -1
- package/out/zero-client/src/client/mutation-tracker.js.map +0 -1
- package/out/zero-client/src/client/mutator-proxy.js.map +0 -1
- package/out/zero-client/src/client/options.js.map +0 -1
- package/out/zero-client/src/client/query-manager.js.map +0 -1
- package/out/zero-client/src/client/reload-error-handler.js.map +0 -1
- package/out/zero-client/src/client/server-option.js.map +0 -1
- package/out/zero-client/src/client/update-needed-reason-type-enum.js +0 -27
- package/out/zero-client/src/client/update-needed-reason-type-enum.js.map +0 -1
- package/out/zero-client/src/client/version.js +0 -9
- package/out/zero-client/src/client/version.js.map +0 -1
- package/out/zero-client/src/client/zero-poke-handler.js.map +0 -1
- package/out/zero-client/src/client/zero-rep.js.map +0 -1
- package/out/zero-client/src/client/zero.js +0 -1443
- package/out/zero-client/src/client/zero.js.map +0 -1
- package/out/zero-client/src/util/nanoid.js.map +0 -1
- package/out/zero-client/src/util/socket.d.ts +0 -3
- package/out/zero-client/src/util/socket.d.ts.map +0 -1
- package/out/zero-client/src/util/socket.js +0 -8
- package/out/zero-client/src/util/socket.js.map +0 -1
- package/out/zero-protocol/src/analyze-query-result.js +0 -120
- package/out/zero-protocol/src/analyze-query-result.js.map +0 -1
- package/out/zero-protocol/src/application-error.js.map +0 -1
- package/out/zero-protocol/src/ast.js.map +0 -1
- package/out/zero-protocol/src/change-desired-queries.js +0 -12
- package/out/zero-protocol/src/change-desired-queries.js.map +0 -1
- package/out/zero-protocol/src/client-schema.js.map +0 -1
- package/out/zero-protocol/src/close-connection.js.map +0 -1
- package/out/zero-protocol/src/connect.js +0 -47
- package/out/zero-protocol/src/connect.js.map +0 -1
- package/out/zero-protocol/src/custom-queries.js.map +0 -1
- package/out/zero-protocol/src/data.js.map +0 -1
- package/out/zero-protocol/src/delete-clients.js.map +0 -1
- package/out/zero-protocol/src/down.js.map +0 -1
- package/out/zero-protocol/src/error-kind-enum.js.map +0 -1
- package/out/zero-protocol/src/error-origin-enum.js.map +0 -1
- package/out/zero-protocol/src/error-reason-enum.js.map +0 -1
- package/out/zero-protocol/src/error.js +0 -84
- package/out/zero-protocol/src/error.js.map +0 -1
- package/out/zero-protocol/src/inspect-down.js.map +0 -1
- package/out/zero-protocol/src/inspect-up.js +0 -34
- package/out/zero-protocol/src/inspect-up.js.map +0 -1
- package/out/zero-protocol/src/mutate-server.js.map +0 -1
- package/out/zero-protocol/src/mutation-id.js.map +0 -1
- package/out/zero-protocol/src/mutation-type-enum.js.map +0 -1
- package/out/zero-protocol/src/mutation.js.map +0 -1
- package/out/zero-protocol/src/mutations-patch.js.map +0 -1
- package/out/zero-protocol/src/ping.js.map +0 -1
- package/out/zero-protocol/src/poke.js +0 -59
- package/out/zero-protocol/src/poke.js.map +0 -1
- package/out/zero-protocol/src/pong.js.map +0 -1
- package/out/zero-protocol/src/primary-key.js.map +0 -1
- package/out/zero-protocol/src/protocol-version.js.map +0 -1
- package/out/zero-protocol/src/pull.js.map +0 -1
- package/out/zero-protocol/src/push.js +0 -60
- package/out/zero-protocol/src/push.js.map +0 -1
- package/out/zero-protocol/src/queries-patch.js.map +0 -1
- package/out/zero-protocol/src/query-hash.js.map +0 -1
- package/out/zero-protocol/src/query-server.js.map +0 -1
- package/out/zero-protocol/src/row-patch.js.map +0 -1
- package/out/zero-protocol/src/up.js.map +0 -1
- package/out/zero-protocol/src/update-auth.js.map +0 -1
- package/out/zero-protocol/src/version.js.map +0 -1
- package/out/zero-react/src/use-connection-state.js +0 -17
- package/out/zero-react/src/use-connection-state.js.map +0 -1
- package/out/zero-react/src/use-query.js +0 -299
- package/out/zero-react/src/use-query.js.map +0 -1
- package/out/zero-react/src/use-zero-online.js +0 -20
- package/out/zero-react/src/use-zero-online.js.map +0 -1
- package/out/zero-react/src/zero-provider.js +0 -87
- package/out/zero-react/src/zero-provider.js.map +0 -1
- package/out/zero-schema/src/builder/relationship-builder.js.map +0 -1
- package/out/zero-schema/src/builder/schema-builder.js.map +0 -1
- package/out/zero-schema/src/builder/table-builder.js.map +0 -1
- package/out/zero-schema/src/compiled-permissions.js.map +0 -1
- package/out/zero-schema/src/name-mapper.js.map +0 -1
- package/out/zero-schema/src/permissions.js.map +0 -1
- package/out/zero-schema/src/schema-config.js.map +0 -1
- package/out/zero-server/src/adapters/drizzle.js.map +0 -1
- package/out/zero-server/src/adapters/kysely.js.map +0 -1
- package/out/zero-server/src/adapters/pg.js +0 -83
- package/out/zero-server/src/adapters/pg.js.map +0 -1
- package/out/zero-server/src/adapters/postgresjs.js.map +0 -1
- package/out/zero-server/src/adapters/prisma.js.map +0 -1
- package/out/zero-server/src/custom.js +0 -214
- package/out/zero-server/src/custom.js.map +0 -1
- package/out/zero-server/src/logging.js.map +0 -1
- package/out/zero-server/src/pg-query-executor.js.map +0 -1
- package/out/zero-server/src/process-mutations.js.map +0 -1
- package/out/zero-server/src/push-processor.js.map +0 -1
- package/out/zero-server/src/queries/process-queries.js.map +0 -1
- package/out/zero-server/src/schema.js.map +0 -1
- package/out/zero-server/src/zql-database.js.map +0 -1
- package/out/zero-solid/src/solid-view.js +0 -145
- package/out/zero-solid/src/solid-view.js.map +0 -1
- package/out/zero-solid/src/use-connection-state.js +0 -21
- package/out/zero-solid/src/use-connection-state.js.map +0 -1
- package/out/zero-solid/src/use-query.js +0 -64
- package/out/zero-solid/src/use-query.js.map +0 -1
- package/out/zero-solid/src/use-zero-online.js +0 -21
- package/out/zero-solid/src/use-zero-online.js.map +0 -1
- package/out/zero-solid/src/use-zero.js +0 -93
- package/out/zero-solid/src/use-zero.js.map +0 -1
- package/out/zero-types/src/format.js.map +0 -1
- package/out/zero-types/src/name-mapper.js.map +0 -1
- package/out/zql/src/builder/builder.js +0 -380
- package/out/zql/src/builder/builder.js.map +0 -1
- package/out/zql/src/builder/debug-delegate.js +0 -72
- package/out/zql/src/builder/debug-delegate.js.map +0 -1
- package/out/zql/src/builder/filter.js.map +0 -1
- package/out/zql/src/builder/like.js.map +0 -1
- package/out/zql/src/error.js.map +0 -1
- package/out/zql/src/ivm/array-view.js.map +0 -1
- package/out/zql/src/ivm/cap.js.map +0 -1
- package/out/zql/src/ivm/change.js.map +0 -1
- package/out/zql/src/ivm/constraint.js +0 -82
- package/out/zql/src/ivm/constraint.js.map +0 -1
- package/out/zql/src/ivm/data.js.map +0 -1
- package/out/zql/src/ivm/exists.js.map +0 -1
- package/out/zql/src/ivm/fan-in.js.map +0 -1
- package/out/zql/src/ivm/fan-out.js.map +0 -1
- package/out/zql/src/ivm/filter-operators.js.map +0 -1
- package/out/zql/src/ivm/filter-push.js.map +0 -1
- package/out/zql/src/ivm/filter.js.map +0 -1
- package/out/zql/src/ivm/flipped-join.js +0 -311
- package/out/zql/src/ivm/flipped-join.js.map +0 -1
- package/out/zql/src/ivm/join-utils.js.map +0 -1
- package/out/zql/src/ivm/join.js.map +0 -1
- package/out/zql/src/ivm/maybe-split-and-push-edit-change.js.map +0 -1
- package/out/zql/src/ivm/memory-source.js.map +0 -1
- package/out/zql/src/ivm/memory-storage.js.map +0 -1
- package/out/zql/src/ivm/operator.js.map +0 -1
- package/out/zql/src/ivm/push-accumulated.js.map +0 -1
- package/out/zql/src/ivm/skip-yields.js.map +0 -1
- package/out/zql/src/ivm/skip.js.map +0 -1
- package/out/zql/src/ivm/source.js.map +0 -1
- package/out/zql/src/ivm/stream.js.map +0 -1
- package/out/zql/src/ivm/take.js.map +0 -1
- package/out/zql/src/ivm/union-fan-in.js +0 -163
- package/out/zql/src/ivm/union-fan-in.js.map +0 -1
- package/out/zql/src/ivm/union-fan-out.js.map +0 -1
- package/out/zql/src/ivm/view-apply-change.js.map +0 -1
- package/out/zql/src/mutate/crud.js.map +0 -1
- package/out/zql/src/mutate/custom.js.map +0 -1
- package/out/zql/src/mutate/mutator-registry.js.map +0 -1
- package/out/zql/src/mutate/mutator.js.map +0 -1
- package/out/zql/src/planner/planner-builder.js.map +0 -1
- package/out/zql/src/planner/planner-connection.js.map +0 -1
- package/out/zql/src/planner/planner-constraint.js.map +0 -1
- package/out/zql/src/planner/planner-debug.js.map +0 -1
- package/out/zql/src/planner/planner-fan-in.js.map +0 -1
- package/out/zql/src/planner/planner-fan-out.js.map +0 -1
- package/out/zql/src/planner/planner-graph.js.map +0 -1
- package/out/zql/src/planner/planner-join.js +0 -261
- package/out/zql/src/planner/planner-join.js.map +0 -1
- package/out/zql/src/planner/planner-node.js.map +0 -1
- package/out/zql/src/planner/planner-source.js.map +0 -1
- package/out/zql/src/planner/planner-terminus.js.map +0 -1
- package/out/zql/src/query/complete-ordering.js.map +0 -1
- package/out/zql/src/query/create-builder.js.map +0 -1
- package/out/zql/src/query/error.js.map +0 -1
- package/out/zql/src/query/escape-like.js.map +0 -1
- package/out/zql/src/query/expression.js.map +0 -1
- package/out/zql/src/query/measure-push-operator.js.map +0 -1
- package/out/zql/src/query/metrics-delegate.js.map +0 -1
- package/out/zql/src/query/named.js.map +0 -1
- package/out/zql/src/query/query-delegate-base.js.map +0 -1
- package/out/zql/src/query/query-impl.js +0 -290
- package/out/zql/src/query/query-impl.js.map +0 -1
- package/out/zql/src/query/query-internals.js.map +0 -1
- package/out/zql/src/query/query-registry.js.map +0 -1
- package/out/zql/src/query/runnable-query-impl.js.map +0 -1
- package/out/zql/src/query/static-query.js.map +0 -1
- package/out/zql/src/query/ttl.js.map +0 -1
- package/out/zql/src/query/validate-input.js.map +0 -1
- package/out/zqlite/src/database-storage.js.map +0 -1
- package/out/zqlite/src/db.js.map +0 -1
- package/out/zqlite/src/explain-queries.js.map +0 -1
- package/out/zqlite/src/internal/sql-inline.js.map +0 -1
- package/out/zqlite/src/internal/sql.js.map +0 -1
- package/out/zqlite/src/internal/statement-cache.js.map +0 -1
- package/out/zqlite/src/query-builder.js.map +0 -1
- package/out/zqlite/src/query-delegate.js.map +0 -1
- package/out/zqlite/src/resolve-scalar-subqueries.js.map +0 -1
- package/out/zqlite/src/sqlite-cost-model.js.map +0 -1
- package/out/zqlite/src/sqlite-stat-fanout.js.map +0 -1
- package/out/zqlite/src/table-source.js +0 -313
- package/out/zqlite/src/table-source.js.map +0 -1
- /package/out/{analyze-query → packages/analyze-query}/src/bin-transform.js +0 -0
- /package/out/{ast-to-zql → packages/ast-to-zql}/src/ast-to-zql.js +0 -0
- /package/out/{ast-to-zql → packages/ast-to-zql}/src/bin.js +0 -0
- /package/out/{ast-to-zql → packages/ast-to-zql}/src/format.js +0 -0
- /package/out/{datadog → packages/datadog}/src/datadog-log-sink.js +0 -0
- /package/out/{otel → packages/otel}/src/enabled.js +0 -0
- /package/out/{otel → packages/otel}/src/log-options.js +0 -0
- /package/out/{otel → packages/otel}/src/maybe-time.js +0 -0
- /package/out/{otel → packages/otel}/src/span.js +0 -0
- /package/out/{otel → packages/otel}/src/version.js +0 -0
- /package/out/{replicache → packages/replicache}/src/async-iterable-to-array.js +0 -0
- /package/out/{replicache → packages/replicache}/src/bg-interval.js +0 -0
- /package/out/{replicache → packages/replicache}/src/btree/diff.js +0 -0
- /package/out/{replicache → packages/replicache}/src/btree/node.js +0 -0
- /package/out/{replicache → packages/replicache}/src/btree/read.js +0 -0
- /package/out/{replicache → packages/replicache}/src/btree/splice.js +0 -0
- /package/out/{replicache → packages/replicache}/src/call-default-fetch.js +0 -0
- /package/out/{replicache → packages/replicache}/src/config.js +0 -0
- /package/out/{replicache → packages/replicache}/src/connection-loop-delegates.js +0 -0
- /package/out/{replicache → packages/replicache}/src/connection-loop.js +0 -0
- /package/out/{replicache → packages/replicache}/src/cookies.js +0 -0
- /package/out/{replicache → packages/replicache}/src/dag/chunk.js +0 -0
- /package/out/{replicache → packages/replicache}/src/dag/gc.js +0 -0
- /package/out/{replicache → packages/replicache}/src/dag/key.js +0 -0
- /package/out/{replicache → packages/replicache}/src/dag/lazy-store.js +0 -0
- /package/out/{replicache → packages/replicache}/src/dag/store.js +0 -0
- /package/out/{replicache → packages/replicache}/src/dag/visitor.js +0 -0
- /package/out/{replicache → packages/replicache}/src/db/commit.js +0 -0
- /package/out/{replicache → packages/replicache}/src/db/index.js +0 -0
- /package/out/{replicache → packages/replicache}/src/db/read.js +0 -0
- /package/out/{replicache → packages/replicache}/src/db/rebase.js +0 -0
- /package/out/{replicache → packages/replicache}/src/db/write.js +0 -0
- /package/out/{replicache → packages/replicache}/src/deleted-clients.js +0 -0
- /package/out/{replicache → packages/replicache}/src/error-responses.js +0 -0
- /package/out/{replicache → packages/replicache}/src/expo-sqlite.js +0 -0
- /package/out/{replicache → packages/replicache}/src/frozen-json.js +0 -0
- /package/out/{replicache → packages/replicache}/src/get-default-puller.js +0 -0
- /package/out/{replicache → packages/replicache}/src/get-default-pusher.js +0 -0
- /package/out/{replicache → packages/replicache}/src/get-kv-store-provider.js +0 -0
- /package/out/{replicache → packages/replicache}/src/hash.js +0 -0
- /package/out/{replicache → packages/replicache}/src/http-request-info.js +0 -0
- /package/out/{replicache → packages/replicache}/src/impl.js +0 -0
- /package/out/{replicache → packages/replicache}/src/index-defs.js +0 -0
- /package/out/{replicache → packages/replicache}/src/kv/idb-store-with-mem-fallback.js +0 -0
- /package/out/{replicache → packages/replicache}/src/kv/idb-store.js +0 -0
- /package/out/{replicache → packages/replicache}/src/kv/mem-store.js +0 -0
- /package/out/{replicache → packages/replicache}/src/kv/op-sqlite/types.js +0 -0
- /package/out/{replicache → packages/replicache}/src/kv/read-impl.js +0 -0
- /package/out/{replicache → packages/replicache}/src/kv/write-impl-base.js +0 -0
- /package/out/{replicache → packages/replicache}/src/kv/write-impl.js +0 -0
- /package/out/{replicache → packages/replicache}/src/lazy.js +0 -0
- /package/out/{replicache → packages/replicache}/src/log-options.js +0 -0
- /package/out/{replicache → packages/replicache}/src/make-idb-name.js +0 -0
- /package/out/{replicache → packages/replicache}/src/mutation-recovery.js +0 -0
- /package/out/{replicache → packages/replicache}/src/new-client-channel.js +0 -0
- /package/out/{replicache → packages/replicache}/src/on-persist-channel.js +0 -0
- /package/out/{replicache → packages/replicache}/src/op-sqlite.js +0 -0
- /package/out/{replicache → packages/replicache}/src/patch-operation.js +0 -0
- /package/out/{replicache → packages/replicache}/src/pending-mutations.js +0 -0
- /package/out/{replicache → packages/replicache}/src/persist/client-gc.js +0 -0
- /package/out/{replicache → packages/replicache}/src/persist/client-group-gc.js +0 -0
- /package/out/{replicache → packages/replicache}/src/persist/collect-idb-databases.js +0 -0
- /package/out/{replicache → packages/replicache}/src/persist/gather-mem-only-visitor.js +0 -0
- /package/out/{replicache → packages/replicache}/src/persist/gather-not-cached-visitor.js +0 -0
- /package/out/{replicache → packages/replicache}/src/persist/heartbeat.js +0 -0
- /package/out/{replicache → packages/replicache}/src/persist/idb-databases-store-db-name.js +0 -0
- /package/out/{replicache → packages/replicache}/src/persist/idb-databases-store.js +0 -0
- /package/out/{replicache → packages/replicache}/src/persist/make-client-id.js +0 -0
- /package/out/{replicache → packages/replicache}/src/persist/refresh.js +0 -0
- /package/out/{replicache → packages/replicache}/src/process-scheduler.js +0 -0
- /package/out/{replicache → packages/replicache}/src/pusher.js +0 -0
- /package/out/{replicache → packages/replicache}/src/replicache-impl.js +0 -0
- /package/out/{replicache → packages/replicache}/src/report-error.js +0 -0
- /package/out/{replicache → packages/replicache}/src/request-idle.js +0 -0
- /package/out/{replicache → packages/replicache}/src/scan-iterator.js +0 -0
- /package/out/{replicache → packages/replicache}/src/scan-options.js +0 -0
- /package/out/{replicache → packages/replicache}/src/set-interval-with-signal.js +0 -0
- /package/out/{replicache → packages/replicache}/src/sqlite.js +0 -0
- /package/out/{replicache → packages/replicache}/src/subscriptions.js +0 -0
- /package/out/{replicache → packages/replicache}/src/sync/diff.js +0 -0
- /package/out/{replicache → packages/replicache}/src/sync/ids.js +0 -0
- /package/out/{replicache → packages/replicache}/src/sync/patch.js +0 -0
- /package/out/{replicache → packages/replicache}/src/sync/pull-error.js +0 -0
- /package/out/{replicache → packages/replicache}/src/sync/push.js +0 -0
- /package/out/{replicache → packages/replicache}/src/sync/request-id.js +0 -0
- /package/out/{replicache → packages/replicache}/src/sync/sync-head-name.js +0 -0
- /package/out/{replicache → packages/replicache}/src/to-error.js +0 -0
- /package/out/{replicache → packages/replicache}/src/transaction-closed-error.js +0 -0
- /package/out/{replicache → packages/replicache}/src/transactions.js +0 -0
- /package/out/{replicache → packages/replicache}/src/version.js +0 -0
- /package/out/{replicache → packages/replicache}/src/with-transactions.js +0 -0
- /package/out/{shared → packages/shared}/src/abort-error.js +0 -0
- /package/out/{shared → packages/shared}/src/arrays.js +0 -0
- /package/out/{shared → packages/shared}/src/asserts.js +0 -0
- /package/out/{shared → packages/shared}/src/bigint-json.js +0 -0
- /package/out/{shared → packages/shared}/src/binary-search.js +0 -0
- /package/out/{shared → packages/shared}/src/broadcast-channel.js +0 -0
- /package/out/{shared → packages/shared}/src/browser-env.js +0 -0
- /package/out/{shared → packages/shared}/src/btree-set.js +0 -0
- /package/out/{shared → packages/shared}/src/cache.js +0 -0
- /package/out/{shared → packages/shared}/src/centroid.js +0 -0
- /package/out/{shared → packages/shared}/src/config.js +0 -0
- /package/out/{shared → packages/shared}/src/custom-key-map.js +0 -0
- /package/out/{shared → packages/shared}/src/custom-key-set.js +0 -0
- /package/out/{shared → packages/shared}/src/deep-clone.js +0 -0
- /package/out/{shared → packages/shared}/src/deep-merge.js +0 -0
- /package/out/{shared → packages/shared}/src/document-visible.js +0 -0
- /package/out/{shared → packages/shared}/src/dotenv.js +0 -0
- /package/out/{shared → packages/shared}/src/error.js +0 -0
- /package/out/{shared → packages/shared}/src/has-own.js +0 -0
- /package/out/{shared → packages/shared}/src/hash.js +0 -0
- /package/out/{shared → packages/shared}/src/iterables.js +0 -0
- /package/out/{shared → packages/shared}/src/json-schema.js +0 -0
- /package/out/{shared → packages/shared}/src/json.js +0 -0
- /package/out/{shared → packages/shared}/src/logging-test-utils.js +0 -0
- /package/out/{shared → packages/shared}/src/logging.js +0 -0
- /package/out/{shared → packages/shared}/src/must.js +0 -0
- /package/out/{shared → packages/shared}/src/navigator.js +0 -0
- /package/out/{shared → packages/shared}/src/object-traversal.js +0 -0
- /package/out/{shared → packages/shared}/src/objects.js +0 -0
- /package/out/{shared → packages/shared}/src/options.js +0 -0
- /package/out/{shared → packages/shared}/src/parse-big-int.js +0 -0
- /package/out/{shared → packages/shared}/src/promise-race.js +0 -0
- /package/out/{shared → packages/shared}/src/rand.js +0 -0
- /package/out/{shared → packages/shared}/src/random-uint64.js +0 -0
- /package/out/{shared → packages/shared}/src/random-values.js +0 -0
- /package/out/{shared → packages/shared}/src/record-proxy.js +0 -0
- /package/out/{shared → packages/shared}/src/resolved-promises.js +0 -0
- /package/out/{shared → packages/shared}/src/sentinels.js +0 -0
- /package/out/{shared → packages/shared}/src/set-utils.js +0 -0
- /package/out/{shared → packages/shared}/src/size-of-value.js +0 -0
- /package/out/{shared → packages/shared}/src/sleep.js +0 -0
- /package/out/{shared → packages/shared}/src/sorted-entries.js +0 -0
- /package/out/{shared → packages/shared}/src/string-compare.js +0 -0
- /package/out/{shared → packages/shared}/src/subscribable.js +0 -0
- /package/out/{shared → packages/shared}/src/tdigest-schema.js +0 -0
- /package/out/{shared → packages/shared}/src/tdigest.js +0 -0
- /package/out/{z2s → packages/z2s}/src/compiler.js +0 -0
- /package/out/{z2s → packages/z2s}/src/sql.js +0 -0
- /package/out/{zero → packages/zero}/src/server/runner/main.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/auth/auth.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/auth/jwt.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/auth/load-permissions.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/auth/read-authorizer.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/auth/write-authorizer.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/config/network.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/config/normalize.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/config/server-context.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/custom/fetch.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/custom-queries/transform-query.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/db/create.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/db/delete-lite-db.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/db/lite-tables.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/db/mode-enum.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/db/pg-copy-binary.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/db/pg-copy.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/db/pg-to-lite.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/db/pg-type-parser.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/db/run-transaction.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/db/specs.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/db/statements.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/db/transaction-pool.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/db/warmup.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/observability/events.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/observability/metrics.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/scripts/decommission.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/scripts/deploy-permissions.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/scripts/permissions.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/server/inspector-delegate.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/server/logging.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/server/otel-diag-logger.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/server/otel-log-sink.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/server/priority-op.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/server/runner/run-worker.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/server/runner/runtime.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/server/runner/zero-dispatcher.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/server/worker-dispatcher.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/server/worker-urls.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/common/backfill-manager.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/common/change-stream-multiplexer.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/common/replica-schema.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/pg/backfill-metadata.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/pg/decommission.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/pg/logical-replication/binary-reader.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/pg/logical-replication/pgoutput-parser.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/pg/logical-replication/stream.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/pg/lsn.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/pg/schema/published.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/pg/schema/validation.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/protocol/current/control.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/protocol/current/downstream.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/protocol/current/json.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/protocol/current/path.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/protocol/current/status.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/protocol/current/upstream.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/change-source/protocol/mod.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/change-streamer/backup-monitor.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/change-streamer/broadcast.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/change-streamer/change-streamer-service.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/change-streamer/change-streamer.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/change-streamer/forwarder.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/change-streamer/replica-monitor.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/change-streamer/storer.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/change-streamer/subscriber.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/heapz.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/http-service.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/limiter/sliding-window-limiter.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/litestream/commands.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/mutagen/error.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/mutagen/mutagen.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/mutagen/pusher.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/replicator/change-processor.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/replicator/incremental-sync.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/replicator/notifier.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/replicator/replication-status.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/replicator/replicator.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/replicator/reporter/recorder.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/replicator/reporter/report-schema.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/replicator/schema/change-log.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/replicator/schema/column-metadata.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/replicator/schema/constants.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/replicator/schema/replication-state.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/replicator/schema/table-metadata.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/replicator/write-worker-client.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/replicator/write-worker.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/runner.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/statz.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/view-syncer/active-users-gauge.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/view-syncer/client-schema.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/view-syncer/connection-context-manager.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/view-syncer/cvr-store.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/view-syncer/cvr.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/view-syncer/drain-coordinator.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/view-syncer/row-record-cache.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/view-syncer/row-set-signature.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/view-syncer/schema/cvr.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/view-syncer/snapshotter.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/view-syncer/tracer.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/services/view-syncer/ttl-clock.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/types/error-with-level.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/types/http.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/types/lexi-version.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/types/lite.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/types/names.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/types/pg-data-type.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/types/pg-types.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/types/pg-versions.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/types/processes.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/types/profiler.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/types/row-key.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/types/shards.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/types/sql.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/types/state-version.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/types/streams.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/types/strings.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/types/subscription.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/types/timeout.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/types/url-params.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/types/websocket-handoff.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/types/ws.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/workers/connect-params.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/workers/mutator.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/workers/replicator.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/workers/syncer-ws-message-handler.js +0 -0
- /package/out/{zero-cache → packages/zero-cache}/src/workers/syncer.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/active-clients-manager.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/bindings.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/client-error-kind-enum.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/connection.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/context.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/crud.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/delete-clients-manager.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/enable-analytics.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/error.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/http-string.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/inspector/client-group.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/inspector/client.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/inspector/html-dialog-prompt.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/inspector/inspector.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/inspector/lazy-inspector.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/inspector/query.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/ivm-branch.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/keys.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/log-options.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/make-mutate-property.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/make-replicache-mutators.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/metric-name-enum.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/metrics.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/mutation-tracker.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/mutator-proxy.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/options.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/query-manager.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/reload-error-handler.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/server-option.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/zero-poke-handler.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/client/zero-rep.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/mod.js +0 -0
- /package/out/{zero-client → packages/zero-client}/src/util/nanoid.js +0 -0
- /package/out/{zero-pg → packages/zero-pg}/src/mod.js +0 -0
- /package/out/{zero-protocol → packages/zero-protocol}/src/application-error.js +0 -0
- /package/out/{zero-protocol → packages/zero-protocol}/src/ast.js +0 -0
- /package/out/{zero-protocol → packages/zero-protocol}/src/client-schema.js +0 -0
- /package/out/{zero-protocol → packages/zero-protocol}/src/close-connection.js +0 -0
- /package/out/{zero-protocol → packages/zero-protocol}/src/custom-queries.js +0 -0
- /package/out/{zero-protocol → packages/zero-protocol}/src/data.js +0 -0
- /package/out/{zero-protocol → packages/zero-protocol}/src/delete-clients.js +0 -0
- /package/out/{zero-protocol → packages/zero-protocol}/src/down.js +0 -0
- /package/out/{zero-protocol → packages/zero-protocol}/src/error-kind-enum.js +0 -0
- /package/out/{zero-protocol → packages/zero-protocol}/src/error-origin-enum.js +0 -0
- /package/out/{zero-protocol → packages/zero-protocol}/src/error-reason-enum.js +0 -0
- /package/out/{zero-protocol → packages/zero-protocol}/src/inspect-down.js +0 -0
- /package/out/{zero-protocol → packages/zero-protocol}/src/mutate-server.js +0 -0
- /package/out/{zero-protocol → packages/zero-protocol}/src/mutation-id.js +0 -0
- /package/out/{zero-protocol → packages/zero-protocol}/src/mutation-type-enum.js +0 -0
- /package/out/{zero-protocol → packages/zero-protocol}/src/mutation.js +0 -0
- /package/out/{zero-protocol → packages/zero-protocol}/src/mutations-patch.js +0 -0
- /package/out/{zero-protocol → packages/zero-protocol}/src/ping.js +0 -0
- /package/out/{zero-protocol → packages/zero-protocol}/src/pong.js +0 -0
- /package/out/{zero-protocol → packages/zero-protocol}/src/primary-key.js +0 -0
- /package/out/{zero-protocol → packages/zero-protocol}/src/protocol-version.js +0 -0
- /package/out/{zero-protocol → packages/zero-protocol}/src/pull.js +0 -0
- /package/out/{zero-protocol → packages/zero-protocol}/src/queries-patch.js +0 -0
- /package/out/{zero-protocol → packages/zero-protocol}/src/query-hash.js +0 -0
- /package/out/{zero-protocol → packages/zero-protocol}/src/query-server.js +0 -0
- /package/out/{zero-protocol → packages/zero-protocol}/src/row-patch.js +0 -0
- /package/out/{zero-protocol → packages/zero-protocol}/src/up.js +0 -0
- /package/out/{zero-protocol → packages/zero-protocol}/src/update-auth.js +0 -0
- /package/out/{zero-protocol → packages/zero-protocol}/src/version.js +0 -0
- /package/out/{zero-react → packages/zero-react}/src/bindings.js +0 -0
- /package/out/{zero-react → packages/zero-react}/src/mod.js +0 -0
- /package/out/{zero-react → packages/zero-react}/src/zero.js +0 -0
- /package/out/{zero-schema → packages/zero-schema}/src/builder/relationship-builder.js +0 -0
- /package/out/{zero-schema → packages/zero-schema}/src/builder/schema-builder.js +0 -0
- /package/out/{zero-schema → packages/zero-schema}/src/builder/table-builder.js +0 -0
- /package/out/{zero-schema → packages/zero-schema}/src/compiled-permissions.js +0 -0
- /package/out/{zero-schema → packages/zero-schema}/src/name-mapper.js +0 -0
- /package/out/{zero-schema → packages/zero-schema}/src/permissions.js +0 -0
- /package/out/{zero-schema → packages/zero-schema}/src/schema-config.js +0 -0
- /package/out/{zero-server → packages/zero-server}/src/adapters/drizzle.js +0 -0
- /package/out/{zero-server → packages/zero-server}/src/adapters/kysely.js +0 -0
- /package/out/{zero-server → packages/zero-server}/src/adapters/postgresjs.js +0 -0
- /package/out/{zero-server → packages/zero-server}/src/adapters/prisma.js +0 -0
- /package/out/{zero-server → packages/zero-server}/src/logging.js +0 -0
- /package/out/{zero-server → packages/zero-server}/src/mod.js +0 -0
- /package/out/{zero-server → packages/zero-server}/src/pg-query-executor.js +0 -0
- /package/out/{zero-server → packages/zero-server}/src/process-mutations.js +0 -0
- /package/out/{zero-server → packages/zero-server}/src/push-processor.js +0 -0
- /package/out/{zero-server → packages/zero-server}/src/queries/process-queries.js +0 -0
- /package/out/{zero-server → packages/zero-server}/src/schema.js +0 -0
- /package/out/{zero-server → packages/zero-server}/src/zql-database.js +0 -0
- /package/out/{zero-solid → packages/zero-solid}/src/bindings.js +0 -0
- /package/out/{zero-solid → packages/zero-solid}/src/mod.js +0 -0
- /package/out/{zero-solid → packages/zero-solid}/src/zero.js +0 -0
- /package/out/{zero-types → packages/zero-types}/src/format.js +0 -0
- /package/out/{zero-types → packages/zero-types}/src/name-mapper.js +0 -0
- /package/out/{zql → packages/zql}/src/builder/filter.js +0 -0
- /package/out/{zql → packages/zql}/src/builder/like.js +0 -0
- /package/out/{zql → packages/zql}/src/error.js +0 -0
- /package/out/{zql → packages/zql}/src/ivm/array-view.js +0 -0
- /package/out/{zql → packages/zql}/src/ivm/cap.js +0 -0
- /package/out/{zql → packages/zql}/src/ivm/change.js +0 -0
- /package/out/{zql → packages/zql}/src/ivm/data.js +0 -0
- /package/out/{zql → packages/zql}/src/ivm/exists.js +0 -0
- /package/out/{zql → packages/zql}/src/ivm/fan-in.js +0 -0
- /package/out/{zql → packages/zql}/src/ivm/fan-out.js +0 -0
- /package/out/{zql → packages/zql}/src/ivm/filter-operators.js +0 -0
- /package/out/{zql → packages/zql}/src/ivm/filter-push.js +0 -0
- /package/out/{zql → packages/zql}/src/ivm/filter.js +0 -0
- /package/out/{zql → packages/zql}/src/ivm/join-utils.js +0 -0
- /package/out/{zql → packages/zql}/src/ivm/join.js +0 -0
- /package/out/{zql → packages/zql}/src/ivm/maybe-split-and-push-edit-change.js +0 -0
- /package/out/{zql → packages/zql}/src/ivm/memory-source.js +0 -0
- /package/out/{zql → packages/zql}/src/ivm/memory-storage.js +0 -0
- /package/out/{zql → packages/zql}/src/ivm/operator.js +0 -0
- /package/out/{zql → packages/zql}/src/ivm/push-accumulated.js +0 -0
- /package/out/{zql → packages/zql}/src/ivm/skip-yields.js +0 -0
- /package/out/{zql → packages/zql}/src/ivm/skip.js +0 -0
- /package/out/{zql → packages/zql}/src/ivm/source.js +0 -0
- /package/out/{zql → packages/zql}/src/ivm/stream.js +0 -0
- /package/out/{zql → packages/zql}/src/ivm/take.js +0 -0
- /package/out/{zql → packages/zql}/src/ivm/union-fan-out.js +0 -0
- /package/out/{zql → packages/zql}/src/ivm/view-apply-change.js +0 -0
- /package/out/{zql → packages/zql}/src/mutate/crud.js +0 -0
- /package/out/{zql → packages/zql}/src/mutate/custom.js +0 -0
- /package/out/{zql → packages/zql}/src/mutate/mutator-registry.js +0 -0
- /package/out/{zql → packages/zql}/src/mutate/mutator.js +0 -0
- /package/out/{zql → packages/zql}/src/planner/planner-builder.js +0 -0
- /package/out/{zql → packages/zql}/src/planner/planner-connection.js +0 -0
- /package/out/{zql → packages/zql}/src/planner/planner-constraint.js +0 -0
- /package/out/{zql → packages/zql}/src/planner/planner-debug.js +0 -0
- /package/out/{zql → packages/zql}/src/planner/planner-fan-in.js +0 -0
- /package/out/{zql → packages/zql}/src/planner/planner-fan-out.js +0 -0
- /package/out/{zql → packages/zql}/src/planner/planner-graph.js +0 -0
- /package/out/{zql → packages/zql}/src/planner/planner-node.js +0 -0
- /package/out/{zql → packages/zql}/src/planner/planner-source.js +0 -0
- /package/out/{zql → packages/zql}/src/planner/planner-terminus.js +0 -0
- /package/out/{zql → packages/zql}/src/query/complete-ordering.js +0 -0
- /package/out/{zql → packages/zql}/src/query/create-builder.js +0 -0
- /package/out/{zql → packages/zql}/src/query/error.js +0 -0
- /package/out/{zql → packages/zql}/src/query/escape-like.js +0 -0
- /package/out/{zql → packages/zql}/src/query/expression.js +0 -0
- /package/out/{zql → packages/zql}/src/query/measure-push-operator.js +0 -0
- /package/out/{zql → packages/zql}/src/query/metrics-delegate.js +0 -0
- /package/out/{zql → packages/zql}/src/query/named.js +0 -0
- /package/out/{zql → packages/zql}/src/query/query-delegate-base.js +0 -0
- /package/out/{zql → packages/zql}/src/query/query-internals.js +0 -0
- /package/out/{zql → packages/zql}/src/query/query-registry.js +0 -0
- /package/out/{zql → packages/zql}/src/query/query.js +0 -0
- /package/out/{zql → packages/zql}/src/query/runnable-query-impl.js +0 -0
- /package/out/{zql → packages/zql}/src/query/static-query.js +0 -0
- /package/out/{zql → packages/zql}/src/query/ttl.js +0 -0
- /package/out/{zql → packages/zql}/src/query/validate-input.js +0 -0
- /package/out/{zqlite → packages/zqlite}/src/database-storage.js +0 -0
- /package/out/{zqlite → packages/zqlite}/src/db.js +0 -0
- /package/out/{zqlite → packages/zqlite}/src/explain-queries.js +0 -0
- /package/out/{zqlite → packages/zqlite}/src/internal/sql-inline.js +0 -0
- /package/out/{zqlite → packages/zqlite}/src/internal/sql.js +0 -0
- /package/out/{zqlite → packages/zqlite}/src/internal/statement-cache.js +0 -0
- /package/out/{zqlite → packages/zqlite}/src/mod.js +0 -0
- /package/out/{zqlite → packages/zqlite}/src/query-builder.js +0 -0
- /package/out/{zqlite → packages/zqlite}/src/query-delegate.js +0 -0
- /package/out/{zqlite → packages/zqlite}/src/resolve-scalar-subqueries.js +0 -0
- /package/out/{zqlite → packages/zqlite}/src/sqlite-cost-model.js +0 -0
- /package/out/{zqlite → packages/zqlite}/src/sqlite-stat-fanout.js +0 -0
|
@@ -1,288 +0,0 @@
|
|
|
1
|
-
import { valita_exports } from "../../shared/src/valita.js";
|
|
2
|
-
import { createBuilder } from "../../zql/src/query/create-builder.js";
|
|
3
|
-
import { Zero } from "../../zero-client/src/client/zero.js";
|
|
4
|
-
import "../../shared/src/dotenv.js";
|
|
5
|
-
import { logLevel, logOptions } from "../../otel/src/log-options.js";
|
|
6
|
-
import { colorConsole } from "../../shared/src/logging.js";
|
|
7
|
-
import { parseOptions } from "../../shared/src/options.js";
|
|
8
|
-
import { ZERO_ENV_VAR_PREFIX } from "../../zero-cache/src/config/zero-config.js";
|
|
9
|
-
import { Console } from "node:console";
|
|
10
|
-
import { styleText } from "node:util";
|
|
11
|
-
import { WebSocket as WebSocket$1 } from "ws";
|
|
12
|
-
//#region ../analyze-query/src/analyze-cli.ts
|
|
13
|
-
var options = {
|
|
14
|
-
zeroCacheURL: {
|
|
15
|
-
type: valita_exports.string().optional(),
|
|
16
|
-
desc: ["URL of the remote zero-cache to analyze against.", "Accepts http(s):// or ws(s):// (ws(s) is the transport actually used)."]
|
|
17
|
-
},
|
|
18
|
-
adminPassword: {
|
|
19
|
-
type: valita_exports.string().optional(),
|
|
20
|
-
desc: ["Admin password for zero-cache.", "Required when the server is configured with one; ignored in dev mode."]
|
|
21
|
-
},
|
|
22
|
-
authToken: {
|
|
23
|
-
type: valita_exports.string().optional(),
|
|
24
|
-
desc: ["Raw JWT forwarded to zero-cache.", "Used server-side to fill permission variables for the query."]
|
|
25
|
-
},
|
|
26
|
-
cookie: {
|
|
27
|
-
type: valita_exports.string().optional(),
|
|
28
|
-
desc: [
|
|
29
|
-
"Cookie header value sent on the WebSocket upgrade request,",
|
|
30
|
-
"e.g. `session=abc; foo=bar`. Use this when zero-cache is behind",
|
|
31
|
-
"a proxy that resolves auth via cookies. Merged with --headers-json",
|
|
32
|
-
"(--cookie wins on conflict)."
|
|
33
|
-
]
|
|
34
|
-
},
|
|
35
|
-
headersJson: {
|
|
36
|
-
type: valita_exports.string().optional(),
|
|
37
|
-
desc: [
|
|
38
|
-
"JSON object of arbitrary headers to send on the WebSocket upgrade",
|
|
39
|
-
"request, e.g. `{\"x-api-key\":\"...\"}`. Escape hatch for exotic auth",
|
|
40
|
-
"schemes; prefer --auth-token or --cookie when possible."
|
|
41
|
-
]
|
|
42
|
-
},
|
|
43
|
-
userId: {
|
|
44
|
-
type: valita_exports.string().optional(),
|
|
45
|
-
desc: ["Optional userID to report to zero-cache.", "Has no functional effect on analysis; defaults to \"analyze-cli\"."]
|
|
46
|
-
},
|
|
47
|
-
ast: {
|
|
48
|
-
type: valita_exports.string().optional(),
|
|
49
|
-
desc: ["JSON-encoded AST. Exactly one of --ast / --query / --query-name is required.", "The AST is sent to the server verbatim — provide it in server (post-mapping) form."]
|
|
50
|
-
},
|
|
51
|
-
query: {
|
|
52
|
-
type: valita_exports.string().optional(),
|
|
53
|
-
desc: ["ZQL query in chain form, e.g. `issue.related(\"comments\").limit(10)`.", "Evaluated against the schema you pass to runAnalyzeCLI."]
|
|
54
|
-
},
|
|
55
|
-
queryName: {
|
|
56
|
-
type: valita_exports.string().optional(),
|
|
57
|
-
desc: ["Name of a server-registered custom (named) query.", "The server resolves the name + args via its registered query handler."]
|
|
58
|
-
},
|
|
59
|
-
queryArgs: {
|
|
60
|
-
type: valita_exports.string().optional(),
|
|
61
|
-
desc: ["JSON-encoded array of arguments for --query-name. Defaults to `[]`."]
|
|
62
|
-
},
|
|
63
|
-
outputVendedRows: {
|
|
64
|
-
type: valita_exports.boolean().default(false),
|
|
65
|
-
desc: ["Include the rows read from the replica to execute the query.", "Each row appears once per read."]
|
|
66
|
-
},
|
|
67
|
-
outputSyncedRows: {
|
|
68
|
-
type: valita_exports.boolean().default(false),
|
|
69
|
-
desc: ["Include the rows that would be synced to the client."]
|
|
70
|
-
},
|
|
71
|
-
log: {
|
|
72
|
-
...logOptions,
|
|
73
|
-
level: logLevel.default("error")
|
|
74
|
-
}
|
|
75
|
-
};
|
|
76
|
-
var stderrConsole = new Console({
|
|
77
|
-
stdout: process.stderr,
|
|
78
|
-
stderr: process.stderr
|
|
79
|
-
});
|
|
80
|
-
var stderrLogSink = { log(level, context, ...args) {
|
|
81
|
-
const ctx = context ? Object.entries(context).map(([k, v]) => v === void 0 ? k : `${k}=${v}`) : [];
|
|
82
|
-
stderrConsole[level](...ctx, ...args);
|
|
83
|
-
} };
|
|
84
|
-
/**
|
|
85
|
-
* Entry point for a user's `cli.ts`. Parses argv, connects to a remote
|
|
86
|
-
* zero-cache by standing up an in-process Zero client (in-memory storage,
|
|
87
|
-
* no subscriptions), calls the inspector's `analyze-query` RPC, and
|
|
88
|
-
* renders the result. Intended to be called as:
|
|
89
|
-
*
|
|
90
|
-
* ```ts
|
|
91
|
-
* import {schema} from './schema.ts';
|
|
92
|
-
* import {runAnalyzeCLI} from '@rocicorp/zero/analyze';
|
|
93
|
-
* await runAnalyzeCLI({schema});
|
|
94
|
-
* ```
|
|
95
|
-
*
|
|
96
|
-
* Exits the process with code 1 on error.
|
|
97
|
-
*/
|
|
98
|
-
async function runAnalyzeCLI(opts) {
|
|
99
|
-
const config = parseOptions(options, {
|
|
100
|
-
argv: (opts.argv ?? process.argv.slice(2)).map((s) => s.replaceAll("\n", " ")),
|
|
101
|
-
envNamePrefix: ZERO_ENV_VAR_PREFIX,
|
|
102
|
-
description: [{
|
|
103
|
-
header: "analyze-query (remote)",
|
|
104
|
-
content: `Analyze a ZQL query against a remote zero-cache.
|
|
105
|
-
|
|
106
|
-
Connects to zero-cache's inspector protocol and reports the server-observed
|
|
107
|
-
row scans, SQLite query plans, and timings.`
|
|
108
|
-
}, {
|
|
109
|
-
header: "Examples",
|
|
110
|
-
content: ` tsx cli.ts --zero-cache-url=https://zero.example.com \\
|
|
111
|
-
--admin-password="$ZERO_ADMIN_PASSWORD" \\
|
|
112
|
-
--query='issue.related("comments").limit(10)'
|
|
113
|
-
|
|
114
|
-
tsx cli.ts --zero-cache-url=http://localhost:4848 \\
|
|
115
|
-
--ast='\\{"table": "issue", "limit": 5\\}'
|
|
116
|
-
|
|
117
|
-
tsx cli.ts --zero-cache-url=http://localhost:4848 \\
|
|
118
|
-
--query-name=issueList --query-args='[]'`
|
|
119
|
-
}]
|
|
120
|
-
});
|
|
121
|
-
if (!config.zeroCacheURL) {
|
|
122
|
-
colorConsole.error("--zero-cache-url is required. See --help for usage.");
|
|
123
|
-
process.exit(1);
|
|
124
|
-
}
|
|
125
|
-
const plan = buildQueryPlan(config);
|
|
126
|
-
const handshakeHeaders = resolveHandshakeHeaders(config);
|
|
127
|
-
if (Object.keys(handshakeHeaders).length > 0) installWebSocketHeaderShim(handshakeHeaders);
|
|
128
|
-
globalThis.TESTING ??= false;
|
|
129
|
-
const z = new Zero({
|
|
130
|
-
schema: opts.schema,
|
|
131
|
-
server: config.zeroCacheURL,
|
|
132
|
-
auth: config.authToken,
|
|
133
|
-
userID: config.userId ?? "analyze-cli",
|
|
134
|
-
kvStore: "mem",
|
|
135
|
-
logLevel: config.log.level,
|
|
136
|
-
logSink: stderrLogSink
|
|
137
|
-
});
|
|
138
|
-
let result;
|
|
139
|
-
try {
|
|
140
|
-
if (!await z.inspector.authenticate(config.adminPassword ?? "")) throw new Error("admin password rejected (or --admin-password is required)");
|
|
141
|
-
const rpcOptions = {
|
|
142
|
-
vendedRows: config.outputVendedRows,
|
|
143
|
-
syncedRows: config.outputSyncedRows
|
|
144
|
-
};
|
|
145
|
-
if (plan.kind === "ast") result = await z.inspector.analyzeServerAST(plan.ast, rpcOptions);
|
|
146
|
-
else if (plan.kind === "named") result = await z.inspector.analyzeNamedQuery(plan.name, plan.args, rpcOptions);
|
|
147
|
-
else {
|
|
148
|
-
const built = buildZqlQuery(plan.text, createBuilder(opts.schema));
|
|
149
|
-
result = await z.inspector.analyzeQuery(built, rpcOptions);
|
|
150
|
-
}
|
|
151
|
-
} catch (e) {
|
|
152
|
-
colorConsole.error(e instanceof Error ? e.message : String(e));
|
|
153
|
-
await z.close().catch(() => {});
|
|
154
|
-
process.exit(1);
|
|
155
|
-
}
|
|
156
|
-
renderResult(result, {
|
|
157
|
-
outputSyncedRows: config.outputSyncedRows,
|
|
158
|
-
outputVendedRows: config.outputVendedRows
|
|
159
|
-
});
|
|
160
|
-
await z.close();
|
|
161
|
-
}
|
|
162
|
-
function buildQueryPlan(config) {
|
|
163
|
-
const selectors = [
|
|
164
|
-
config.ast !== void 0 && "ast",
|
|
165
|
-
config.query !== void 0 && "query",
|
|
166
|
-
config.queryName !== void 0 && "queryName"
|
|
167
|
-
].filter(Boolean);
|
|
168
|
-
if (selectors.length === 0) {
|
|
169
|
-
colorConsole.error("Exactly one of --ast / --query / --query-name is required.");
|
|
170
|
-
process.exit(1);
|
|
171
|
-
}
|
|
172
|
-
if (selectors.length > 1) {
|
|
173
|
-
colorConsole.error(`Only one of --ast / --query / --query-name may be provided; got: ${selectors.join(", ")}`);
|
|
174
|
-
process.exit(1);
|
|
175
|
-
}
|
|
176
|
-
if (config.ast !== void 0) return {
|
|
177
|
-
kind: "ast",
|
|
178
|
-
ast: JSON.parse(config.ast)
|
|
179
|
-
};
|
|
180
|
-
if (config.query !== void 0) return {
|
|
181
|
-
kind: "zql",
|
|
182
|
-
text: config.query
|
|
183
|
-
};
|
|
184
|
-
const args = config.queryArgs ? JSON.parse(config.queryArgs) : [];
|
|
185
|
-
return {
|
|
186
|
-
kind: "named",
|
|
187
|
-
name: config.queryName,
|
|
188
|
-
args
|
|
189
|
-
};
|
|
190
|
-
}
|
|
191
|
-
function buildZqlQuery(queryString, builder) {
|
|
192
|
-
return new Function("builder", `return builder.${queryString};`)(builder);
|
|
193
|
-
}
|
|
194
|
-
function resolveHandshakeHeaders(config) {
|
|
195
|
-
const headers = {};
|
|
196
|
-
if (config.headersJson !== void 0) {
|
|
197
|
-
let parsed;
|
|
198
|
-
try {
|
|
199
|
-
parsed = JSON.parse(config.headersJson);
|
|
200
|
-
} catch (e) {
|
|
201
|
-
colorConsole.error(`--headers-json is not valid JSON: ${e instanceof Error ? e.message : String(e)}`);
|
|
202
|
-
process.exit(1);
|
|
203
|
-
}
|
|
204
|
-
if (parsed === null || typeof parsed !== "object" || Array.isArray(parsed)) {
|
|
205
|
-
colorConsole.error("--headers-json must be a JSON object.");
|
|
206
|
-
process.exit(1);
|
|
207
|
-
}
|
|
208
|
-
for (const [k, val] of Object.entries(parsed)) {
|
|
209
|
-
if (typeof val !== "string") {
|
|
210
|
-
colorConsole.error(`--headers-json values must be strings; got ${typeof val} for "${k}".`);
|
|
211
|
-
process.exit(1);
|
|
212
|
-
}
|
|
213
|
-
headers[k] = val;
|
|
214
|
-
}
|
|
215
|
-
}
|
|
216
|
-
if (config.cookie !== void 0) headers.cookie = config.cookie;
|
|
217
|
-
return headers;
|
|
218
|
-
}
|
|
219
|
-
function installWebSocketHeaderShim(headers) {
|
|
220
|
-
class HeaderInjectingWebSocket extends WebSocket$1 {
|
|
221
|
-
constructor(url, protocols) {
|
|
222
|
-
super(url, protocols, { headers });
|
|
223
|
-
}
|
|
224
|
-
}
|
|
225
|
-
globalThis.WebSocket = HeaderInjectingWebSocket;
|
|
226
|
-
}
|
|
227
|
-
function renderResult(result, opts) {
|
|
228
|
-
if (opts.outputSyncedRows) {
|
|
229
|
-
colorConsole.log(styleText(["blue", "bold"], "=== Synced Rows: ===\n"));
|
|
230
|
-
for (const [table, rows] of Object.entries(result.syncedRows ?? {})) colorConsole.log(styleText("bold", table + ":"), rows);
|
|
231
|
-
}
|
|
232
|
-
colorConsole.log(styleText(["blue", "bold"], "=== Query Stats: ===\n"));
|
|
233
|
-
colorConsole.log(styleText("bold", "total synced rows:"), result.syncedRowCount);
|
|
234
|
-
const readRowCountsByQuery = result.readRowCountsByQuery ?? {};
|
|
235
|
-
let totalRowsRead = 0;
|
|
236
|
-
for (const table of Object.keys(readRowCountsByQuery).sort()) {
|
|
237
|
-
const counts = readRowCountsByQuery[table];
|
|
238
|
-
for (const n of Object.values(counts)) totalRowsRead += n;
|
|
239
|
-
colorConsole.log(styleText("bold", `${table} vended:`), counts);
|
|
240
|
-
}
|
|
241
|
-
colorConsole.log(styleText("bold", "Rows Read (into JS):"), colorRowsConsidered(totalRowsRead));
|
|
242
|
-
const duration = result.elapsed ?? result.end - result.start;
|
|
243
|
-
colorConsole.log(styleText("bold", "time:"), colorTime(duration), "ms");
|
|
244
|
-
if (opts.outputVendedRows) {
|
|
245
|
-
colorConsole.log(styleText(["blue", "bold"], "=== JS Row Scan Values: ===\n"));
|
|
246
|
-
for (const [table, rows] of Object.entries(result.readRows ?? {})) colorConsole.log(styleText("bold", `${table}:`), rows);
|
|
247
|
-
}
|
|
248
|
-
colorConsole.log(styleText(["blue", "bold"], "\n=== Rows Scanned (by SQLite): ===\n"));
|
|
249
|
-
const dbScansByQuery = result.dbScansByQuery ?? {};
|
|
250
|
-
let totalNVisit = 0;
|
|
251
|
-
for (const [table, queries] of Object.entries(dbScansByQuery)) {
|
|
252
|
-
colorConsole.log(styleText("bold", `${table}:`), queries);
|
|
253
|
-
for (const count of Object.values(queries)) totalNVisit += count;
|
|
254
|
-
}
|
|
255
|
-
colorConsole.log(styleText("bold", "total rows scanned:"), colorRowsConsidered(totalNVisit));
|
|
256
|
-
colorConsole.log(styleText(["blue", "bold"], "\n\n=== Query Plans: ===\n"));
|
|
257
|
-
const plans = result.sqlitePlans ?? {};
|
|
258
|
-
for (const [query, plan] of Object.entries(plans)) {
|
|
259
|
-
colorConsole.log(styleText("bold", "query"), query);
|
|
260
|
-
colorConsole.log(plan.map((row, i) => colorPlanRow(row, i)).join("\n"));
|
|
261
|
-
colorConsole.log("\n");
|
|
262
|
-
}
|
|
263
|
-
if (result.warnings.length > 0) {
|
|
264
|
-
colorConsole.log(styleText(["yellow", "bold"], "=== Warnings: ===\n"));
|
|
265
|
-
for (const w of result.warnings) colorConsole.log(styleText("yellow", w));
|
|
266
|
-
}
|
|
267
|
-
}
|
|
268
|
-
function colorTime(duration) {
|
|
269
|
-
if (duration < 100) return styleText("green", duration.toFixed(2) + "ms");
|
|
270
|
-
else if (duration < 1e3) return styleText("yellow", duration.toFixed(2) + "ms");
|
|
271
|
-
return styleText("red", duration.toFixed(2) + "ms");
|
|
272
|
-
}
|
|
273
|
-
function colorRowsConsidered(n) {
|
|
274
|
-
if (n < 1e3) return styleText("green", n.toString());
|
|
275
|
-
else if (n < 1e4) return styleText("yellow", n.toString());
|
|
276
|
-
return styleText("red", n.toString());
|
|
277
|
-
}
|
|
278
|
-
function colorPlanRow(row, i) {
|
|
279
|
-
if (row.includes("SCAN")) {
|
|
280
|
-
if (i === 0) return styleText("yellow", row);
|
|
281
|
-
return styleText("red", row);
|
|
282
|
-
}
|
|
283
|
-
return styleText("green", row);
|
|
284
|
-
}
|
|
285
|
-
//#endregion
|
|
286
|
-
export { runAnalyzeCLI };
|
|
287
|
-
|
|
288
|
-
//# sourceMappingURL=analyze-cli.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"analyze-cli.js","names":[],"sources":["../../../../analyze-query/src/analyze-cli.ts"],"sourcesContent":["import '../../shared/src/dotenv.ts';\n\nimport {Console} from 'node:console';\nimport {styleText} from 'node:util';\nimport type {LogSink} from '@rocicorp/logger';\nimport {WebSocket as NodeWebSocket} from 'ws';\nimport {logLevel, logOptions} from '../../otel/src/log-options.ts';\nimport {colorConsole} from '../../shared/src/logging.ts';\nimport {parseOptions} from '../../shared/src/options.ts';\nimport * as v from '../../shared/src/valita.ts';\nimport {ZERO_ENV_VAR_PREFIX} from '../../zero-cache/src/config/zero-config.ts';\nimport {Zero} from '../../zero-client/src/client/zero.ts';\nimport type {AnalyzeQueryResult} from '../../zero-protocol/src/analyze-query-result.ts';\nimport type {AST} from '../../zero-protocol/src/ast.ts';\nimport type {Schema} from '../../zero-types/src/schema.ts';\nimport {createBuilder} from '../../zql/src/query/create-builder.ts';\nimport type {AnyQuery} from '../../zql/src/query/query.ts';\nimport type {SchemaQuery} from '../../zql/src/query/schema-query.ts';\n\nexport type AnalyzeCLIOptions = {\n schema: Schema;\n /** Defaults to `process.argv.slice(2)`. */\n argv?: readonly string[] | undefined;\n};\n\nconst options = {\n zeroCacheURL: {\n type: v.string().optional(),\n desc: [\n 'URL of the remote zero-cache to analyze against.',\n 'Accepts http(s):// or ws(s):// (ws(s) is the transport actually used).',\n ],\n },\n adminPassword: {\n type: v.string().optional(),\n desc: [\n 'Admin password for zero-cache.',\n 'Required when the server is configured with one; ignored in dev mode.',\n ],\n },\n authToken: {\n type: v.string().optional(),\n desc: [\n 'Raw JWT forwarded to zero-cache.',\n 'Used server-side to fill permission variables for the query.',\n ],\n },\n cookie: {\n type: v.string().optional(),\n desc: [\n 'Cookie header value sent on the WebSocket upgrade request,',\n 'e.g. `session=abc; foo=bar`. Use this when zero-cache is behind',\n 'a proxy that resolves auth via cookies. Merged with --headers-json',\n '(--cookie wins on conflict).',\n ],\n },\n headersJson: {\n type: v.string().optional(),\n desc: [\n 'JSON object of arbitrary headers to send on the WebSocket upgrade',\n 'request, e.g. `{\"x-api-key\":\"...\"}`. Escape hatch for exotic auth',\n 'schemes; prefer --auth-token or --cookie when possible.',\n ],\n },\n userId: {\n type: v.string().optional(),\n desc: [\n 'Optional userID to report to zero-cache.',\n 'Has no functional effect on analysis; defaults to \"analyze-cli\".',\n ],\n },\n ast: {\n type: v.string().optional(),\n desc: [\n 'JSON-encoded AST. Exactly one of --ast / --query / --query-name is required.',\n 'The AST is sent to the server verbatim — provide it in server (post-mapping) form.',\n ],\n },\n query: {\n type: v.string().optional(),\n desc: [\n 'ZQL query in chain form, e.g. `issue.related(\"comments\").limit(10)`.',\n 'Evaluated against the schema you pass to runAnalyzeCLI.',\n ],\n },\n queryName: {\n type: v.string().optional(),\n desc: [\n 'Name of a server-registered custom (named) query.',\n 'The server resolves the name + args via its registered query handler.',\n ],\n },\n queryArgs: {\n type: v.string().optional(),\n desc: [\n 'JSON-encoded array of arguments for --query-name. Defaults to `[]`.',\n ],\n },\n outputVendedRows: {\n type: v.boolean().default(false),\n desc: [\n 'Include the rows read from the replica to execute the query.',\n 'Each row appears once per read.',\n ],\n },\n outputSyncedRows: {\n type: v.boolean().default(false),\n desc: ['Include the rows that would be synced to the client.'],\n },\n log: {\n ...logOptions,\n level: logLevel.default('error'),\n },\n};\n\ntype QueryPlan =\n | {kind: 'ast'; ast: AST}\n | {kind: 'zql'; text: string}\n | {kind: 'named'; name: string; args: ReadonlyArray<unknown>};\n\n// Route all Zero client log output to stderr so stdout contains only the\n// analyze result. Shell redirection (`2>/dev/null`) can then cleanly silence\n// logs without affecting output.\nconst stderrConsole = new Console({\n stdout: process.stderr,\n stderr: process.stderr,\n});\nconst stderrLogSink: LogSink = {\n log(level, context, ...args) {\n const ctx = context\n ? Object.entries(context).map(([k, v]) =>\n v === undefined ? k : `${k}=${v}`,\n )\n : [];\n stderrConsole[level](...ctx, ...args);\n },\n};\n\n/**\n * Entry point for a user's `cli.ts`. Parses argv, connects to a remote\n * zero-cache by standing up an in-process Zero client (in-memory storage,\n * no subscriptions), calls the inspector's `analyze-query` RPC, and\n * renders the result. Intended to be called as:\n *\n * ```ts\n * import {schema} from './schema.ts';\n * import {runAnalyzeCLI} from '@rocicorp/zero/analyze';\n * await runAnalyzeCLI({schema});\n * ```\n *\n * Exits the process with code 1 on error.\n */\nexport async function runAnalyzeCLI(opts: AnalyzeCLIOptions): Promise<void> {\n const argv = (opts.argv ?? process.argv.slice(2)).map(s =>\n s.replaceAll('\\n', ' '),\n );\n\n const config = parseOptions(options, {\n argv,\n envNamePrefix: ZERO_ENV_VAR_PREFIX,\n description: [\n {\n header: 'analyze-query (remote)',\n content: `Analyze a ZQL query against a remote zero-cache.\n\n Connects to zero-cache's inspector protocol and reports the server-observed\n row scans, SQLite query plans, and timings.`,\n },\n {\n header: 'Examples',\n content: ` tsx cli.ts --zero-cache-url=https://zero.example.com \\\\\n --admin-password=\"$ZERO_ADMIN_PASSWORD\" \\\\\n --query='issue.related(\"comments\").limit(10)'\n\n tsx cli.ts --zero-cache-url=http://localhost:4848 \\\\\n --ast='\\\\{\"table\": \"issue\", \"limit\": 5\\\\}'\n\n tsx cli.ts --zero-cache-url=http://localhost:4848 \\\\\n --query-name=issueList --query-args='[]'`,\n },\n ],\n });\n\n if (!config.zeroCacheURL) {\n colorConsole.error('--zero-cache-url is required. See --help for usage.');\n process.exit(1);\n }\n\n const plan = buildQueryPlan(config);\n\n const handshakeHeaders = resolveHandshakeHeaders(config);\n if (Object.keys(handshakeHeaders).length > 0) {\n installWebSocketHeaderShim(handshakeHeaders);\n }\n\n // zero-client and replicache reference a build-time `TESTING` global that\n // bundlers replace with a boolean literal; under tsx there's no replacement,\n // so provide a runtime default.\n (globalThis as {TESTING?: boolean}).TESTING ??= false;\n\n const z = new Zero({\n schema: opts.schema,\n server: config.zeroCacheURL,\n auth: config.authToken,\n userID: config.userId ?? 'analyze-cli',\n kvStore: 'mem',\n logLevel: config.log.level,\n logSink: stderrLogSink,\n });\n\n let result: AnalyzeQueryResult;\n try {\n const authOk = await z.inspector.authenticate(config.adminPassword ?? '');\n if (!authOk) {\n throw new Error(\n 'admin password rejected (or --admin-password is required)',\n );\n }\n\n const rpcOptions = {\n vendedRows: config.outputVendedRows,\n syncedRows: config.outputSyncedRows,\n };\n\n if (plan.kind === 'ast') {\n result = await z.inspector.analyzeServerAST(plan.ast, rpcOptions);\n } else if (plan.kind === 'named') {\n result = await z.inspector.analyzeNamedQuery(\n plan.name,\n plan.args as ReadonlyArray<never>,\n rpcOptions,\n );\n } else {\n const built = buildZqlQuery(plan.text, createBuilder(opts.schema));\n result = await z.inspector.analyzeQuery(built, rpcOptions);\n }\n } catch (e) {\n colorConsole.error(e instanceof Error ? e.message : String(e));\n await z.close().catch(() => {});\n process.exit(1);\n }\n\n renderResult(result, {\n outputSyncedRows: config.outputSyncedRows,\n outputVendedRows: config.outputVendedRows,\n });\n\n await z.close();\n}\n\nfunction buildQueryPlan(config: {\n ast?: string | undefined;\n query?: string | undefined;\n queryName?: string | undefined;\n queryArgs?: string | undefined;\n}): QueryPlan {\n const selectors = [\n config.ast !== undefined && 'ast',\n config.query !== undefined && 'query',\n config.queryName !== undefined && 'queryName',\n ].filter(Boolean) as string[];\n\n if (selectors.length === 0) {\n colorConsole.error(\n 'Exactly one of --ast / --query / --query-name is required.',\n );\n process.exit(1);\n }\n if (selectors.length > 1) {\n colorConsole.error(\n `Only one of --ast / --query / --query-name may be provided; got: ${selectors.join(', ')}`,\n );\n process.exit(1);\n }\n\n if (config.ast !== undefined) {\n return {kind: 'ast', ast: JSON.parse(config.ast) as AST};\n }\n if (config.query !== undefined) {\n return {kind: 'zql', text: config.query};\n }\n const args = config.queryArgs\n ? (JSON.parse(config.queryArgs) as ReadonlyArray<unknown>)\n : [];\n return {kind: 'named', name: config.queryName as string, args};\n}\n\nfunction buildZqlQuery(\n queryString: string,\n builder: SchemaQuery<Schema>,\n): AnyQuery {\n const f = new Function('builder', `return builder.${queryString};`);\n return f(builder) as AnyQuery;\n}\n\nfunction resolveHandshakeHeaders(config: {\n cookie?: string | undefined;\n headersJson?: string | undefined;\n}): Record<string, string> {\n const headers: Record<string, string> = {};\n if (config.headersJson !== undefined) {\n let parsed: unknown;\n try {\n parsed = JSON.parse(config.headersJson);\n } catch (e) {\n colorConsole.error(\n `--headers-json is not valid JSON: ${e instanceof Error ? e.message : String(e)}`,\n );\n process.exit(1);\n }\n if (\n parsed === null ||\n typeof parsed !== 'object' ||\n Array.isArray(parsed)\n ) {\n colorConsole.error('--headers-json must be a JSON object.');\n process.exit(1);\n }\n for (const [k, val] of Object.entries(parsed)) {\n if (typeof val !== 'string') {\n colorConsole.error(\n `--headers-json values must be strings; got ${typeof val} for \"${k}\".`,\n );\n process.exit(1);\n }\n headers[k] = val;\n }\n }\n if (config.cookie !== undefined) {\n headers.cookie = config.cookie;\n }\n return headers;\n}\n\nfunction installWebSocketHeaderShim(headers: Record<string, string>): void {\n class HeaderInjectingWebSocket extends NodeWebSocket {\n constructor(url: string | URL, protocols?: string | string[]) {\n super(url, protocols, {headers});\n }\n }\n (globalThis as {WebSocket?: unknown}).WebSocket = HeaderInjectingWebSocket;\n}\n\nfunction renderResult(\n result: AnalyzeQueryResult,\n opts: {outputSyncedRows: boolean; outputVendedRows: boolean},\n) {\n if (opts.outputSyncedRows) {\n colorConsole.log(styleText(['blue', 'bold'], '=== Synced Rows: ===\\n'));\n for (const [table, rows] of Object.entries(result.syncedRows ?? {})) {\n colorConsole.log(styleText('bold', table + ':'), rows);\n }\n }\n\n colorConsole.log(styleText(['blue', 'bold'], '=== Query Stats: ===\\n'));\n colorConsole.log(\n styleText('bold', 'total synced rows:'),\n result.syncedRowCount,\n );\n\n const readRowCountsByQuery = result.readRowCountsByQuery ?? {};\n let totalRowsRead = 0;\n for (const table of Object.keys(readRowCountsByQuery).sort()) {\n const counts = readRowCountsByQuery[table];\n for (const n of Object.values(counts)) {\n totalRowsRead += n;\n }\n colorConsole.log(styleText('bold', `${table} vended:`), counts);\n }\n colorConsole.log(\n styleText('bold', 'Rows Read (into JS):'),\n colorRowsConsidered(totalRowsRead),\n );\n const duration = result.elapsed ?? result.end - result.start;\n colorConsole.log(styleText('bold', 'time:'), colorTime(duration), 'ms');\n\n if (opts.outputVendedRows) {\n colorConsole.log(\n styleText(['blue', 'bold'], '=== JS Row Scan Values: ===\\n'),\n );\n for (const [table, rows] of Object.entries(result.readRows ?? {})) {\n colorConsole.log(styleText('bold', `${table}:`), rows);\n }\n }\n\n colorConsole.log(\n styleText(['blue', 'bold'], '\\n=== Rows Scanned (by SQLite): ===\\n'),\n );\n const dbScansByQuery = result.dbScansByQuery ?? {};\n let totalNVisit = 0;\n for (const [table, queries] of Object.entries(dbScansByQuery)) {\n colorConsole.log(styleText('bold', `${table}:`), queries);\n for (const count of Object.values(queries)) {\n totalNVisit += count;\n }\n }\n colorConsole.log(\n styleText('bold', 'total rows scanned:'),\n colorRowsConsidered(totalNVisit),\n );\n\n colorConsole.log(styleText(['blue', 'bold'], '\\n\\n=== Query Plans: ===\\n'));\n const plans = result.sqlitePlans ?? {};\n for (const [query, plan] of Object.entries(plans)) {\n colorConsole.log(styleText('bold', 'query'), query);\n colorConsole.log(plan.map((row, i) => colorPlanRow(row, i)).join('\\n'));\n colorConsole.log('\\n');\n }\n\n if (result.warnings.length > 0) {\n colorConsole.log(styleText(['yellow', 'bold'], '=== Warnings: ===\\n'));\n for (const w of result.warnings) {\n colorConsole.log(styleText('yellow', w));\n }\n }\n}\n\nfunction colorTime(duration: number) {\n if (duration < 100) {\n return styleText('green', duration.toFixed(2) + 'ms');\n } else if (duration < 1000) {\n return styleText('yellow', duration.toFixed(2) + 'ms');\n }\n return styleText('red', duration.toFixed(2) + 'ms');\n}\n\nfunction colorRowsConsidered(n: number) {\n if (n < 1000) {\n return styleText('green', n.toString());\n } else if (n < 10000) {\n return styleText('yellow', n.toString());\n }\n return styleText('red', n.toString());\n}\n\nfunction colorPlanRow(row: string, i: number) {\n if (row.includes('SCAN')) {\n if (i === 0) {\n return styleText('yellow', row);\n }\n return styleText('red', row);\n }\n return styleText('green', row);\n}\n"],"mappings":"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"}
|
|
@@ -1,277 +0,0 @@
|
|
|
1
|
-
import { valita_exports } from "../../shared/src/valita.js";
|
|
2
|
-
import { must } from "../../shared/src/must.js";
|
|
3
|
-
import "../../zero-protocol/src/ast.js";
|
|
4
|
-
import { clientSchemaFrom } from "../../zero-schema/src/builder/schema-builder.js";
|
|
5
|
-
import { asQueryInternals } from "../../zql/src/query/query-internals.js";
|
|
6
|
-
import { newQuery } from "../../zql/src/query/query-impl.js";
|
|
7
|
-
import { clientToServer } from "../../zero-schema/src/name-mapper.js";
|
|
8
|
-
import "../../zql/src/query/query.js";
|
|
9
|
-
import { QueryDelegateBase } from "../../zql/src/query/query-delegate-base.js";
|
|
10
|
-
import "../../shared/src/dotenv.js";
|
|
11
|
-
import { logLevel, logOptions } from "../../otel/src/log-options.js";
|
|
12
|
-
import { colorConsole, createLogContext } from "../../shared/src/logging.js";
|
|
13
|
-
import { parseOptions } from "../../shared/src/options.js";
|
|
14
|
-
import { Debug, runtimeDebugFlags } from "../../zql/src/builder/debug-delegate.js";
|
|
15
|
-
import { getShardID, upstreamSchema } from "../../zero-cache/src/types/shards.js";
|
|
16
|
-
import { ZERO_ENV_VAR_PREFIX, appOptions, shardOptions, zeroOptions } from "../../zero-cache/src/config/zero-config.js";
|
|
17
|
-
import { Database } from "../../zqlite/src/db.js";
|
|
18
|
-
import { TableSource } from "../../zqlite/src/table-source.js";
|
|
19
|
-
import { astToZQL } from "../../ast-to-zql/src/ast-to-zql.js";
|
|
20
|
-
import { formatOutput } from "../../ast-to-zql/src/format.js";
|
|
21
|
-
import { computeZqlSpecs, mustGetTableSpec } from "../../zero-cache/src/db/lite-tables.js";
|
|
22
|
-
import { deployPermissionsOptions, loadSchemaAndPermissions } from "../../zero-cache/src/scripts/permissions.js";
|
|
23
|
-
import { runAst } from "../../zero-cache/src/services/run-ast.js";
|
|
24
|
-
import { pgClient } from "../../zero-cache/src/types/pg.js";
|
|
25
|
-
import { explainQueries } from "../../zqlite/src/explain-queries.js";
|
|
26
|
-
import { styleText } from "node:util";
|
|
27
|
-
import fs from "node:fs";
|
|
28
|
-
//#region ../analyze-query/src/bin-analyze.ts
|
|
29
|
-
var cfg = parseOptions({
|
|
30
|
-
schema: deployPermissionsOptions.schema,
|
|
31
|
-
replicaFile: {
|
|
32
|
-
...zeroOptions.replica.file,
|
|
33
|
-
desc: ["File path to the SQLite replica to test queries against."]
|
|
34
|
-
},
|
|
35
|
-
ast: {
|
|
36
|
-
type: valita_exports.string().optional(),
|
|
37
|
-
desc: ["AST for the query to be analyzed. Only one of ast/query/hash should be provided."]
|
|
38
|
-
},
|
|
39
|
-
query: {
|
|
40
|
-
type: valita_exports.string().optional(),
|
|
41
|
-
desc: ["Query to be analyzed in the form of: table.where(...).related(...).etc. ", "Only one of ast/query/hash should be provided."]
|
|
42
|
-
},
|
|
43
|
-
hash: {
|
|
44
|
-
type: valita_exports.string().optional(),
|
|
45
|
-
desc: [
|
|
46
|
-
"Hash of the query to be analyzed. This is used to look up the query in the database. ",
|
|
47
|
-
"Only one of ast/query/hash should be provided.",
|
|
48
|
-
"You should run this script from the directory containing your .env file to reduce the amount of",
|
|
49
|
-
"configuration required. The .env file should contain the connection URL to the CVR database."
|
|
50
|
-
]
|
|
51
|
-
},
|
|
52
|
-
applyPermissions: {
|
|
53
|
-
type: valita_exports.boolean().default(false),
|
|
54
|
-
desc: ["Whether to apply permissions (from your schema file) to the provided query."]
|
|
55
|
-
},
|
|
56
|
-
authData: {
|
|
57
|
-
type: valita_exports.string().optional(),
|
|
58
|
-
desc: ["JSON encoded payload of the auth data.", "This will be used to fill permission variables if the \"applyPermissions\" option is set"]
|
|
59
|
-
},
|
|
60
|
-
outputVendedRows: {
|
|
61
|
-
type: valita_exports.boolean().default(false),
|
|
62
|
-
desc: ["Whether to output the rows which were read from the replica in order to execute the analyzed query. ", "If the same row is read more than once it will be logged once for each time it was read."]
|
|
63
|
-
},
|
|
64
|
-
outputSyncedRows: {
|
|
65
|
-
type: valita_exports.boolean().default(false),
|
|
66
|
-
desc: ["Whether to output the rows which would be synced to the client for the analyzed query."]
|
|
67
|
-
},
|
|
68
|
-
cvr: { db: {
|
|
69
|
-
type: valita_exports.string().optional(),
|
|
70
|
-
desc: ["Connection URL to the CVR database. If using --hash, either this or --upstream-db", "must be specified."]
|
|
71
|
-
} },
|
|
72
|
-
upstream: {
|
|
73
|
-
db: {
|
|
74
|
-
desc: [`Connection URL to the "upstream" authoritative postgres database. If using --hash, `, "either this or --cvr-db must be specified."],
|
|
75
|
-
type: valita_exports.string().optional()
|
|
76
|
-
},
|
|
77
|
-
type: zeroOptions.upstream.type
|
|
78
|
-
},
|
|
79
|
-
app: appOptions,
|
|
80
|
-
shard: shardOptions,
|
|
81
|
-
log: {
|
|
82
|
-
...logOptions,
|
|
83
|
-
level: logLevel.default("error")
|
|
84
|
-
}
|
|
85
|
-
}, {
|
|
86
|
-
argv: process.argv.slice(2).map((s) => s.replaceAll("\n", " ")),
|
|
87
|
-
envNamePrefix: ZERO_ENV_VAR_PREFIX,
|
|
88
|
-
description: [{
|
|
89
|
-
header: "analyze-query",
|
|
90
|
-
content: `Analyze a ZQL query and show information about how it runs against a SQLite replica.
|
|
91
|
-
|
|
92
|
-
analyze-query uses the same environment variables and flags as zero-cache-dev. If run from your development environment, it will pick up your ZERO_REPLICA_FILE, ZERO_SCHEMA_PATH, and other env vars automatically.
|
|
93
|
-
|
|
94
|
-
If run in another environment (e.g., production) you will have to specify these flags. In particular, you must have a copy of the appropriate Zero schema file to give to the --schema-path flag.`
|
|
95
|
-
}, {
|
|
96
|
-
header: "Examples",
|
|
97
|
-
content: `# In development
|
|
98
|
-
npx analyze-query --query='issue.related("comments").limit(10)'
|
|
99
|
-
npx analyze-query --ast='\\{"table": "artist","limit": 10\\}'
|
|
100
|
-
npx analyze-query --hash=1234567890
|
|
101
|
-
|
|
102
|
-
# In production
|
|
103
|
-
# First copy schema.ts to your production environment, then run:
|
|
104
|
-
npx analyze-query \\
|
|
105
|
-
--schema-path='./schema.ts' \\
|
|
106
|
-
--replica-file='/path/to/replica.db' \\
|
|
107
|
-
--query='issue.related("comments").limit(10)'
|
|
108
|
-
|
|
109
|
-
npx analyze-query \\
|
|
110
|
-
--schema-path='./schema.ts' \\
|
|
111
|
-
--replica-file='/path/to/replica.db' \\
|
|
112
|
-
--ast='\\{"table": "artist","limit": 10\\}'
|
|
113
|
-
|
|
114
|
-
# cvr-db is required when using the hash option.
|
|
115
|
-
# It is typically the same as your upstream db.
|
|
116
|
-
npx analyze-query \\
|
|
117
|
-
--schema-path='./schema.ts' \\
|
|
118
|
-
--replica-file='/path/to/replica.db' \\
|
|
119
|
-
--cvr-db='postgres://user:pass@host:port/db' \\
|
|
120
|
-
--hash=1234567890
|
|
121
|
-
`
|
|
122
|
-
}]
|
|
123
|
-
});
|
|
124
|
-
var config = {
|
|
125
|
-
...cfg,
|
|
126
|
-
cvr: {
|
|
127
|
-
...cfg.cvr,
|
|
128
|
-
db: cfg.cvr.db ?? cfg.upstream.db
|
|
129
|
-
}
|
|
130
|
-
};
|
|
131
|
-
runtimeDebugFlags.trackRowCountsVended = true;
|
|
132
|
-
runtimeDebugFlags.trackRowsVended = config.outputVendedRows;
|
|
133
|
-
var lc = createLogContext({ log: config.log });
|
|
134
|
-
colorConsole.warn("DEPRECATED: `analyze-query` is deprecated. Please migrate to a project-specific analyze command built with `runAnalyzeCLI` from `@rocicorp/zero/analyze`.");
|
|
135
|
-
if (!fs.existsSync(config.replicaFile)) {
|
|
136
|
-
colorConsole.error(`Replica file ${config.replicaFile} does not exist`);
|
|
137
|
-
process.exit(1);
|
|
138
|
-
}
|
|
139
|
-
var db = new Database(lc, config.replicaFile);
|
|
140
|
-
var { schema, permissions } = await loadSchemaAndPermissions(config.schema.path);
|
|
141
|
-
var clientSchema = clientSchemaFrom(schema).clientSchema;
|
|
142
|
-
var sources = /* @__PURE__ */ new Map();
|
|
143
|
-
var clientToServerMapper = clientToServer(schema.tables);
|
|
144
|
-
var debug = new Debug();
|
|
145
|
-
var tableSpecs = computeZqlSpecs(lc, db, { includeBackfillingColumns: false });
|
|
146
|
-
var AnalyzeQueryDelegate = class extends QueryDelegateBase {
|
|
147
|
-
debug = debug;
|
|
148
|
-
defaultQueryComplete = true;
|
|
149
|
-
getSource(serverTableName) {
|
|
150
|
-
let source = sources.get(serverTableName);
|
|
151
|
-
if (source) return source;
|
|
152
|
-
const tableSpec = mustGetTableSpec(tableSpecs, serverTableName);
|
|
153
|
-
const { primaryKey } = tableSpec.tableSpec;
|
|
154
|
-
source = new TableSource(lc, config.log, db, serverTableName, tableSpec.zqlSpec, primaryKey);
|
|
155
|
-
sources.set(serverTableName, source);
|
|
156
|
-
return source;
|
|
157
|
-
}
|
|
158
|
-
};
|
|
159
|
-
var host = new AnalyzeQueryDelegate();
|
|
160
|
-
var result;
|
|
161
|
-
if (config.ast) result = await runAst(lc, clientSchema, JSON.parse(config.ast), true, {
|
|
162
|
-
applyPermissions: config.applyPermissions,
|
|
163
|
-
auth: config.authData ? {
|
|
164
|
-
type: "jwt",
|
|
165
|
-
raw: "",
|
|
166
|
-
decoded: JSON.parse(config.authData)
|
|
167
|
-
} : void 0,
|
|
168
|
-
clientToServerMapper,
|
|
169
|
-
permissions,
|
|
170
|
-
syncedRows: config.outputSyncedRows,
|
|
171
|
-
db,
|
|
172
|
-
tableSpecs,
|
|
173
|
-
host
|
|
174
|
-
}, async () => {});
|
|
175
|
-
else if (config.query) result = await runQuery(config.query);
|
|
176
|
-
else if (config.hash) result = await runHash(config.hash);
|
|
177
|
-
else {
|
|
178
|
-
colorConsole.error("No query or AST or hash provided");
|
|
179
|
-
process.exit(1);
|
|
180
|
-
}
|
|
181
|
-
function runQuery(queryString) {
|
|
182
|
-
const z = { query: Object.fromEntries(Object.entries(schema.tables).map(([name]) => [name, newQuery(schema, name)])) };
|
|
183
|
-
const ast = asQueryInternals(new Function("z", `return z.query.${queryString};`)(z)).ast;
|
|
184
|
-
return runAst(lc, clientSchema, ast, false, {
|
|
185
|
-
applyPermissions: config.applyPermissions,
|
|
186
|
-
auth: config.authData ? {
|
|
187
|
-
type: "jwt",
|
|
188
|
-
raw: "",
|
|
189
|
-
decoded: JSON.parse(config.authData)
|
|
190
|
-
} : void 0,
|
|
191
|
-
clientToServerMapper,
|
|
192
|
-
permissions,
|
|
193
|
-
syncedRows: config.outputSyncedRows,
|
|
194
|
-
db,
|
|
195
|
-
tableSpecs,
|
|
196
|
-
host
|
|
197
|
-
}, async () => {});
|
|
198
|
-
}
|
|
199
|
-
async function runHash(hash) {
|
|
200
|
-
const cvrDB = pgClient(lc, must(config.cvr.db, "CVR DB must be provided when using the hash option"), "analyze-query-hash-cvr");
|
|
201
|
-
const rows = await cvrDB`select "clientAST", "internal" from ${cvrDB(upstreamSchema(getShardID(config)) + "/cvr")}."queries" where "queryHash" = ${must(hash)} limit 1;`;
|
|
202
|
-
await cvrDB.end();
|
|
203
|
-
colorConsole.log("ZQL from Hash:");
|
|
204
|
-
const ast = rows[0].clientAST;
|
|
205
|
-
colorConsole.log(await formatOutput(ast.table + astToZQL(ast)));
|
|
206
|
-
return runAst(lc, clientSchema, ast, true, {
|
|
207
|
-
applyPermissions: config.applyPermissions,
|
|
208
|
-
auth: config.authData ? {
|
|
209
|
-
type: "jwt",
|
|
210
|
-
raw: "",
|
|
211
|
-
decoded: JSON.parse(config.authData)
|
|
212
|
-
} : void 0,
|
|
213
|
-
clientToServerMapper,
|
|
214
|
-
permissions,
|
|
215
|
-
syncedRows: config.outputSyncedRows,
|
|
216
|
-
db,
|
|
217
|
-
tableSpecs,
|
|
218
|
-
host
|
|
219
|
-
}, async () => {});
|
|
220
|
-
}
|
|
221
|
-
if (config.outputSyncedRows) {
|
|
222
|
-
colorConsole.log(styleText(["blue", "bold"], "=== Synced Rows: ===\n"));
|
|
223
|
-
for (const [table, rows] of Object.entries(result.syncedRows ?? {})) colorConsole.log(styleText("bold", table + ":"), rows);
|
|
224
|
-
}
|
|
225
|
-
colorConsole.log(styleText(["blue", "bold"], "=== Query Stats: ===\n"));
|
|
226
|
-
colorConsole.log(styleText("bold", "total synced rows:"), result.syncedRowCount);
|
|
227
|
-
showStats();
|
|
228
|
-
if (config.outputVendedRows) {
|
|
229
|
-
colorConsole.log(styleText(["blue", "bold"], "=== JS Row Scan Values: ===\n"));
|
|
230
|
-
for (const source of sources.values()) colorConsole.log(styleText("bold", `${source.tableSchema.name}:`), debug.getVendedRows()?.[source.tableSchema.name] ?? {});
|
|
231
|
-
}
|
|
232
|
-
colorConsole.log(styleText(["blue", "bold"], "\n=== Rows Scanned (by SQLite): ===\n"));
|
|
233
|
-
var nvisitCounts = debug.getNVisitCounts();
|
|
234
|
-
var totalNVisit = 0;
|
|
235
|
-
for (const [table, queries] of Object.entries(nvisitCounts)) {
|
|
236
|
-
colorConsole.log(styleText("bold", `${table}:`), queries);
|
|
237
|
-
for (const count of Object.values(queries)) totalNVisit += count;
|
|
238
|
-
}
|
|
239
|
-
colorConsole.log(styleText("bold", "total rows scanned:"), colorRowsConsidered(totalNVisit));
|
|
240
|
-
colorConsole.log(styleText(["blue", "bold"], "\n\n=== Query Plans: ===\n"));
|
|
241
|
-
var plans = explainQueries(debug.getVendedRowCounts() ?? {}, db);
|
|
242
|
-
for (const [query, plan] of Object.entries(plans)) {
|
|
243
|
-
colorConsole.log(styleText("bold", "query"), query);
|
|
244
|
-
colorConsole.log(plan.map((row, i) => colorPlanRow(row, i)).join("\n"));
|
|
245
|
-
colorConsole.log("\n");
|
|
246
|
-
}
|
|
247
|
-
function showStats() {
|
|
248
|
-
let totalRowsConsidered = 0;
|
|
249
|
-
for (const source of sources.values()) {
|
|
250
|
-
const values = Object.values(debug.getVendedRowCounts()?.[source.tableSchema.name] ?? {});
|
|
251
|
-
for (const v of values) totalRowsConsidered += v;
|
|
252
|
-
colorConsole.log(styleText("bold", source.tableSchema.name + " vended:"), debug.getVendedRowCounts()?.[source.tableSchema.name] ?? {});
|
|
253
|
-
}
|
|
254
|
-
colorConsole.log(styleText("bold", "Rows Read (into JS):"), colorRowsConsidered(totalRowsConsidered));
|
|
255
|
-
colorConsole.log(styleText("bold", "time:"), colorTime(result.end - result.start), "ms");
|
|
256
|
-
}
|
|
257
|
-
function colorTime(duration) {
|
|
258
|
-
if (duration < 100) return styleText("green", duration.toFixed(2) + "ms");
|
|
259
|
-
else if (duration < 1e3) return styleText("yellow", duration.toFixed(2) + "ms");
|
|
260
|
-
return styleText("red", duration.toFixed(2) + "ms");
|
|
261
|
-
}
|
|
262
|
-
function colorRowsConsidered(n) {
|
|
263
|
-
if (n < 1e3) return styleText("green", n.toString());
|
|
264
|
-
else if (n < 1e4) return styleText("yellow", n.toString());
|
|
265
|
-
return styleText("red", n.toString());
|
|
266
|
-
}
|
|
267
|
-
function colorPlanRow(row, i) {
|
|
268
|
-
if (row.includes("SCAN")) {
|
|
269
|
-
if (i === 0) return styleText("yellow", row);
|
|
270
|
-
return styleText("red", row);
|
|
271
|
-
}
|
|
272
|
-
return styleText("green", row);
|
|
273
|
-
}
|
|
274
|
-
//#endregion
|
|
275
|
-
export {};
|
|
276
|
-
|
|
277
|
-
//# sourceMappingURL=bin-analyze.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bin-analyze.js","names":[],"sources":["../../../../analyze-query/src/bin-analyze.ts"],"sourcesContent":["import '../../shared/src/dotenv.ts';\n\nimport fs from 'node:fs';\nimport {styleText} from 'node:util';\nimport {astToZQL} from '../../ast-to-zql/src/ast-to-zql.ts';\nimport {formatOutput} from '../../ast-to-zql/src/format.ts';\nimport {logLevel, logOptions} from '../../otel/src/log-options.ts';\nimport {colorConsole, createLogContext} from '../../shared/src/logging.ts';\nimport {must} from '../../shared/src/must.ts';\nimport {parseOptions} from '../../shared/src/options.ts';\nimport * as v from '../../shared/src/valita.ts';\nimport {\n appOptions,\n shardOptions,\n ZERO_ENV_VAR_PREFIX,\n zeroOptions,\n} from '../../zero-cache/src/config/zero-config.ts';\nimport {\n computeZqlSpecs,\n mustGetTableSpec,\n} from '../../zero-cache/src/db/lite-tables.ts';\nimport {\n deployPermissionsOptions,\n loadSchemaAndPermissions,\n} from '../../zero-cache/src/scripts/permissions.ts';\nimport {runAst} from '../../zero-cache/src/services/run-ast.ts';\nimport {pgClient} from '../../zero-cache/src/types/pg.ts';\nimport {getShardID, upstreamSchema} from '../../zero-cache/src/types/shards.ts';\nimport type {AnalyzeQueryResult} from '../../zero-protocol/src/analyze-query-result.ts';\nimport {type AST} from '../../zero-protocol/src/ast.ts';\nimport {clientSchemaFrom} from '../../zero-schema/src/builder/schema-builder.ts';\nimport {clientToServer} from '../../zero-schema/src/name-mapper.ts';\nimport type {Schema} from '../../zero-types/src/schema.ts';\nimport {\n Debug,\n runtimeDebugFlags,\n} from '../../zql/src/builder/debug-delegate.ts';\nimport type {Source} from '../../zql/src/ivm/source.ts';\nimport {QueryDelegateBase} from '../../zql/src/query/query-delegate-base.ts';\nimport {newQuery} from '../../zql/src/query/query-impl.ts';\nimport {asQueryInternals} from '../../zql/src/query/query-internals.ts';\nimport {type PullRow, type Query} from '../../zql/src/query/query.ts';\nimport {Database} from '../../zqlite/src/db.ts';\nimport {explainQueries} from '../../zqlite/src/explain-queries.ts';\nimport {TableSource} from '../../zqlite/src/table-source.ts';\n\nconst options = {\n schema: deployPermissionsOptions.schema,\n replicaFile: {\n ...zeroOptions.replica.file,\n desc: ['File path to the SQLite replica to test queries against.'],\n },\n ast: {\n type: v.string().optional(),\n desc: [\n 'AST for the query to be analyzed. Only one of ast/query/hash should be provided.',\n ],\n },\n query: {\n type: v.string().optional(),\n desc: [\n 'Query to be analyzed in the form of: table.where(...).related(...).etc. ',\n 'Only one of ast/query/hash should be provided.',\n ],\n },\n hash: {\n type: v.string().optional(),\n desc: [\n 'Hash of the query to be analyzed. This is used to look up the query in the database. ',\n 'Only one of ast/query/hash should be provided.',\n 'You should run this script from the directory containing your .env file to reduce the amount of',\n 'configuration required. The .env file should contain the connection URL to the CVR database.',\n ],\n },\n applyPermissions: {\n type: v.boolean().default(false),\n desc: [\n 'Whether to apply permissions (from your schema file) to the provided query.',\n ],\n },\n authData: {\n type: v.string().optional(),\n desc: [\n 'JSON encoded payload of the auth data.',\n 'This will be used to fill permission variables if the \"applyPermissions\" option is set',\n ],\n },\n outputVendedRows: {\n type: v.boolean().default(false),\n desc: [\n 'Whether to output the rows which were read from the replica in order to execute the analyzed query. ',\n 'If the same row is read more than once it will be logged once for each time it was read.',\n ],\n },\n outputSyncedRows: {\n type: v.boolean().default(false),\n desc: [\n 'Whether to output the rows which would be synced to the client for the analyzed query.',\n ],\n },\n cvr: {\n db: {\n type: v.string().optional(),\n desc: [\n 'Connection URL to the CVR database. If using --hash, either this or --upstream-db',\n 'must be specified.',\n ],\n },\n },\n upstream: {\n db: {\n desc: [\n `Connection URL to the \"upstream\" authoritative postgres database. If using --hash, `,\n 'either this or --cvr-db must be specified.',\n ],\n type: v.string().optional(),\n },\n type: zeroOptions.upstream.type,\n },\n app: appOptions,\n shard: shardOptions,\n log: {\n ...logOptions,\n level: logLevel.default('error'),\n },\n};\n\nconst cfg = parseOptions(options, {\n argv: process.argv.slice(2).map(s => s.replaceAll('\\n', ' ')),\n envNamePrefix: ZERO_ENV_VAR_PREFIX,\n description: [\n {\n header: 'analyze-query',\n content: `Analyze a ZQL query and show information about how it runs against a SQLite replica.\n\n analyze-query uses the same environment variables and flags as zero-cache-dev. If run from your development environment, it will pick up your ZERO_REPLICA_FILE, ZERO_SCHEMA_PATH, and other env vars automatically.\n\n If run in another environment (e.g., production) you will have to specify these flags. In particular, you must have a copy of the appropriate Zero schema file to give to the --schema-path flag.`,\n },\n {\n header: 'Examples',\n content: `# In development\n npx analyze-query --query='issue.related(\"comments\").limit(10)'\n npx analyze-query --ast='\\\\{\"table\": \"artist\",\"limit\": 10\\\\}'\n npx analyze-query --hash=1234567890\n\n # In production\n # First copy schema.ts to your production environment, then run:\n npx analyze-query \\\\\n --schema-path='./schema.ts' \\\\\n --replica-file='/path/to/replica.db' \\\\\n --query='issue.related(\"comments\").limit(10)'\n\n npx analyze-query \\\\\n --schema-path='./schema.ts' \\\\\n --replica-file='/path/to/replica.db' \\\\\n --ast='\\\\{\"table\": \"artist\",\"limit\": 10\\\\}'\n\n # cvr-db is required when using the hash option.\n # It is typically the same as your upstream db.\n npx analyze-query \\\\\n --schema-path='./schema.ts' \\\\\n --replica-file='/path/to/replica.db' \\\\\n --cvr-db='postgres://user:pass@host:port/db' \\\\\n --hash=1234567890\n `,\n },\n ],\n});\nconst config = {\n ...cfg,\n cvr: {\n ...cfg.cvr,\n db: cfg.cvr.db ?? cfg.upstream.db,\n },\n};\n\nruntimeDebugFlags.trackRowCountsVended = true;\nruntimeDebugFlags.trackRowsVended = config.outputVendedRows;\n\nconst lc = createLogContext({\n log: config.log,\n});\n\ncolorConsole.warn(\n 'DEPRECATED: `analyze-query` is deprecated. Please migrate to a project-specific analyze command built with `runAnalyzeCLI` from `@rocicorp/zero/analyze`.',\n);\n\nif (!fs.existsSync(config.replicaFile)) {\n colorConsole.error(`Replica file ${config.replicaFile} does not exist`);\n process.exit(1);\n}\nconst db = new Database(lc, config.replicaFile);\n\nconst {schema, permissions} = await loadSchemaAndPermissions(\n config.schema.path,\n);\nconst clientSchema = clientSchemaFrom(schema).clientSchema;\n\nconst sources = new Map<string, TableSource>();\nconst clientToServerMapper = clientToServer(schema.tables);\nconst debug = new Debug();\nconst tableSpecs = computeZqlSpecs(lc, db, {includeBackfillingColumns: false});\n\nclass AnalyzeQueryDelegate extends QueryDelegateBase {\n readonly debug = debug;\n readonly defaultQueryComplete = true;\n\n getSource(serverTableName: string): Source | undefined {\n let source = sources.get(serverTableName);\n if (source) {\n return source;\n }\n const tableSpec = mustGetTableSpec(tableSpecs, serverTableName);\n const {primaryKey} = tableSpec.tableSpec;\n\n source = new TableSource(\n lc,\n config.log,\n db,\n serverTableName,\n tableSpec.zqlSpec,\n primaryKey,\n );\n\n sources.set(serverTableName, source);\n return source;\n }\n}\n\nconst host = new AnalyzeQueryDelegate();\n\nlet result: AnalyzeQueryResult;\n\nif (config.ast) {\n result = await runAst(\n lc,\n clientSchema,\n JSON.parse(config.ast),\n true,\n {\n applyPermissions: config.applyPermissions,\n auth: config.authData\n ? {type: 'jwt' as const, raw: '', decoded: JSON.parse(config.authData)}\n : undefined,\n clientToServerMapper,\n permissions,\n syncedRows: config.outputSyncedRows,\n db,\n tableSpecs,\n host,\n },\n async () => {},\n );\n} else if (config.query) {\n result = await runQuery(config.query);\n} else if (config.hash) {\n result = await runHash(config.hash);\n} else {\n colorConsole.error('No query or AST or hash provided');\n process.exit(1);\n}\n\nfunction runQuery(queryString: string): Promise<AnalyzeQueryResult> {\n const z = {\n query: Object.fromEntries(\n Object.entries(schema.tables).map(([name]) => [\n name,\n newQuery(schema, name),\n ]),\n ),\n };\n\n const f = new Function('z', `return z.query.${queryString};`);\n const q: Query<string, Schema, PullRow<string, Schema>> = f(z);\n\n const ast = asQueryInternals(q).ast;\n return runAst(\n lc,\n clientSchema,\n ast,\n false,\n {\n applyPermissions: config.applyPermissions,\n auth: config.authData\n ? {type: 'jwt' as const, raw: '', decoded: JSON.parse(config.authData)}\n : undefined,\n clientToServerMapper,\n permissions,\n syncedRows: config.outputSyncedRows,\n db,\n tableSpecs,\n host,\n },\n async () => {},\n );\n}\n\nasync function runHash(hash: string) {\n const cvrDB = pgClient(\n lc,\n must(config.cvr.db, 'CVR DB must be provided when using the hash option'),\n 'analyze-query-hash-cvr',\n );\n\n const rows = await cvrDB`select \"clientAST\", \"internal\" from ${cvrDB(\n upstreamSchema(getShardID(config)) + '/cvr',\n )}.\"queries\" where \"queryHash\" = ${must(hash)} limit 1;`;\n await cvrDB.end();\n\n colorConsole.log('ZQL from Hash:');\n const ast = rows[0].clientAST as AST;\n colorConsole.log(await formatOutput(ast.table + astToZQL(ast)));\n\n return runAst(\n lc,\n clientSchema,\n ast,\n true,\n {\n applyPermissions: config.applyPermissions,\n auth: config.authData\n ? {type: 'jwt' as const, raw: '', decoded: JSON.parse(config.authData)}\n : undefined,\n clientToServerMapper,\n permissions,\n syncedRows: config.outputSyncedRows,\n db,\n tableSpecs,\n host,\n },\n async () => {},\n );\n}\n\nif (config.outputSyncedRows) {\n colorConsole.log(styleText(['blue', 'bold'], '=== Synced Rows: ===\\n'));\n for (const [table, rows] of Object.entries(result.syncedRows ?? {})) {\n colorConsole.log(styleText('bold', table + ':'), rows);\n }\n}\n\ncolorConsole.log(styleText(['blue', 'bold'], '=== Query Stats: ===\\n'));\ncolorConsole.log(\n styleText('bold', 'total synced rows:'),\n result.syncedRowCount,\n);\nshowStats();\nif (config.outputVendedRows) {\n colorConsole.log(\n styleText(['blue', 'bold'], '=== JS Row Scan Values: ===\\n'),\n );\n for (const source of sources.values()) {\n colorConsole.log(\n styleText('bold', `${source.tableSchema.name}:`),\n debug.getVendedRows()?.[source.tableSchema.name] ?? {},\n );\n }\n}\n\ncolorConsole.log(\n styleText(['blue', 'bold'], '\\n=== Rows Scanned (by SQLite): ===\\n'),\n);\nconst nvisitCounts = debug.getNVisitCounts();\nlet totalNVisit = 0;\nfor (const [table, queries] of Object.entries(nvisitCounts)) {\n colorConsole.log(styleText('bold', `${table}:`), queries);\n for (const count of Object.values(queries)) {\n totalNVisit += count;\n }\n}\ncolorConsole.log(\n styleText('bold', 'total rows scanned:'),\n colorRowsConsidered(totalNVisit),\n);\n\ncolorConsole.log(styleText(['blue', 'bold'], '\\n\\n=== Query Plans: ===\\n'));\nconst plans = explainQueries(debug.getVendedRowCounts() ?? {}, db);\nfor (const [query, plan] of Object.entries(plans)) {\n colorConsole.log(styleText('bold', 'query'), query);\n colorConsole.log(plan.map((row, i) => colorPlanRow(row, i)).join('\\n'));\n colorConsole.log('\\n');\n}\n\nfunction showStats() {\n let totalRowsConsidered = 0;\n for (const source of sources.values()) {\n const values = Object.values(\n debug.getVendedRowCounts()?.[source.tableSchema.name] ?? {},\n );\n for (const v of values) {\n totalRowsConsidered += v;\n }\n colorConsole.log(\n styleText('bold', source.tableSchema.name + ' vended:'),\n debug.getVendedRowCounts()?.[source.tableSchema.name] ?? {},\n );\n }\n\n colorConsole.log(\n styleText('bold', 'Rows Read (into JS):'),\n colorRowsConsidered(totalRowsConsidered),\n );\n colorConsole.log(\n styleText('bold', 'time:'),\n colorTime(result.end - result.start),\n 'ms',\n );\n}\n\nfunction colorTime(duration: number) {\n if (duration < 100) {\n return styleText('green', duration.toFixed(2) + 'ms');\n } else if (duration < 1000) {\n return styleText('yellow', duration.toFixed(2) + 'ms');\n }\n return styleText('red', duration.toFixed(2) + 'ms');\n}\n\nfunction colorRowsConsidered(n: number) {\n if (n < 1000) {\n return styleText('green', n.toString());\n } else if (n < 10000) {\n return styleText('yellow', n.toString());\n }\n return styleText('red', n.toString());\n}\n\nfunction colorPlanRow(row: string, i: number) {\n if (row.includes('SCAN')) {\n if (i === 0) {\n return styleText('yellow', row);\n }\n return styleText('red', row);\n }\n return styleText('green', row);\n}\n"],"mappings":"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"}
|