@rocicorp/zero 0.5.2024103100 → 0.6.2024111600
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/out/{internal.js → advanced.js} +2 -2
- package/out/{chunk-TBA526RR.js → chunk-V5NTGJ4X.js} +1211 -624
- package/out/chunk-V5NTGJ4X.js.map +7 -0
- package/out/{chunk-RCVGGCMG.js → chunk-YCMA66NH.js} +2 -2
- package/out/{chunk-RCVGGCMG.js.map → chunk-YCMA66NH.js.map} +2 -2
- package/out/react.js.map +2 -2
- package/out/shared/src/browser-env.d.ts +17 -0
- package/out/shared/src/browser-env.d.ts.map +1 -1
- package/out/shared/src/expand.d.ts +7 -0
- package/out/shared/src/expand.d.ts.map +1 -0
- package/out/shared/src/valita.d.ts +7 -0
- package/out/shared/src/valita.d.ts.map +1 -1
- package/out/shared/src/valita.js +28 -0
- package/out/shared/src/valita.js.map +1 -1
- package/out/solid.js +5 -5
- package/out/solid.js.map +2 -2
- package/out/zero-advanced/src/mod.d.ts +7 -7
- package/out/zero-advanced/src/mod.d.ts.map +1 -1
- package/out/zero-cache/src/auth/load-authorization.d.ts +3 -0
- package/out/zero-cache/src/auth/load-authorization.d.ts.map +1 -0
- package/out/zero-cache/src/auth/load-authorization.js +21 -0
- package/out/zero-cache/src/auth/load-authorization.js.map +1 -0
- package/out/zero-cache/src/config/config.d.ts +112 -0
- package/out/zero-cache/src/config/config.d.ts.map +1 -0
- package/out/zero-cache/src/config/config.js +246 -0
- package/out/zero-cache/src/config/config.js.map +1 -0
- package/out/zero-cache/src/config/zero-config.d.ts +145 -964
- package/out/zero-cache/src/config/zero-config.d.ts.map +1 -1
- package/out/zero-cache/src/config/zero-config.js +242 -115
- package/out/zero-cache/src/config/zero-config.js.map +1 -1
- package/out/zero-cache/src/db/delete-lite-db.d.ts +2 -0
- package/out/zero-cache/src/db/delete-lite-db.d.ts.map +1 -0
- package/out/zero-cache/src/db/delete-lite-db.js +7 -0
- package/out/zero-cache/src/db/delete-lite-db.js.map +1 -0
- package/out/zero-cache/src/db/migration.d.ts +1 -0
- package/out/zero-cache/src/db/migration.d.ts.map +1 -1
- package/out/zero-cache/src/db/migration.js +17 -7
- package/out/zero-cache/src/db/migration.js.map +1 -1
- package/out/zero-cache/src/db/pg-to-lite.d.ts +1 -1
- package/out/zero-cache/src/db/pg-to-lite.d.ts.map +1 -1
- package/out/zero-cache/src/db/pg-to-lite.js +7 -3
- package/out/zero-cache/src/db/pg-to-lite.js.map +1 -1
- package/out/zero-cache/src/db/short-lived-client.d.ts +16 -0
- package/out/zero-cache/src/db/short-lived-client.d.ts.map +1 -0
- package/out/zero-cache/src/db/short-lived-client.js +50 -0
- package/out/zero-cache/src/db/short-lived-client.js.map +1 -0
- package/out/zero-cache/src/db/specs.d.ts +12 -3
- package/out/zero-cache/src/db/specs.d.ts.map +1 -1
- package/out/zero-cache/src/db/specs.js +6 -1
- package/out/zero-cache/src/db/specs.js.map +1 -1
- package/out/zero-cache/src/db/transaction-pool.d.ts +7 -2
- package/out/zero-cache/src/db/transaction-pool.d.ts.map +1 -1
- package/out/zero-cache/src/db/transaction-pool.js +42 -8
- package/out/zero-cache/src/db/transaction-pool.js.map +1 -1
- package/out/zero-cache/src/server/change-streamer.d.ts.map +1 -1
- package/out/zero-cache/src/server/change-streamer.js +34 -9
- package/out/zero-cache/src/server/change-streamer.js.map +1 -1
- package/out/zero-cache/src/server/life-cycle.d.ts +1 -1
- package/out/zero-cache/src/server/life-cycle.d.ts.map +1 -1
- package/out/zero-cache/src/server/life-cycle.js +2 -3
- package/out/zero-cache/src/server/life-cycle.js.map +1 -1
- package/out/zero-cache/src/server/logging.d.ts.map +1 -1
- package/out/zero-cache/src/server/logging.js +2 -15
- package/out/zero-cache/src/server/logging.js.map +1 -1
- package/out/zero-cache/src/server/main.js +28 -10
- package/out/zero-cache/src/server/main.js.map +1 -1
- package/out/zero-cache/src/server/replicator.d.ts.map +1 -1
- package/out/zero-cache/src/server/replicator.js +6 -5
- package/out/zero-cache/src/server/replicator.js.map +1 -1
- package/out/zero-cache/src/server/syncer.d.ts.map +1 -1
- package/out/zero-cache/src/server/syncer.js +16 -12
- package/out/zero-cache/src/server/syncer.js.map +1 -1
- package/out/zero-cache/src/services/change-streamer/change-streamer-http.d.ts +2 -3
- package/out/zero-cache/src/services/change-streamer/change-streamer-http.d.ts.map +1 -1
- package/out/zero-cache/src/services/change-streamer/change-streamer-http.js +2 -3
- package/out/zero-cache/src/services/change-streamer/change-streamer-http.js.map +1 -1
- package/out/zero-cache/src/services/change-streamer/change-streamer-service.d.ts +153 -2
- package/out/zero-cache/src/services/change-streamer/change-streamer-service.d.ts.map +1 -1
- package/out/zero-cache/src/services/change-streamer/change-streamer-service.js +136 -19
- package/out/zero-cache/src/services/change-streamer/change-streamer-service.js.map +1 -1
- package/out/zero-cache/src/services/change-streamer/change-streamer.d.ts +17 -9
- package/out/zero-cache/src/services/change-streamer/change-streamer.d.ts.map +1 -1
- package/out/zero-cache/src/services/change-streamer/change-streamer.js +4 -2
- package/out/zero-cache/src/services/change-streamer/change-streamer.js.map +1 -1
- package/out/zero-cache/src/services/change-streamer/forwarder.d.ts +1 -0
- package/out/zero-cache/src/services/change-streamer/forwarder.d.ts.map +1 -1
- package/out/zero-cache/src/services/change-streamer/forwarder.js +9 -2
- package/out/zero-cache/src/services/change-streamer/forwarder.js.map +1 -1
- package/out/zero-cache/src/services/change-streamer/pg/change-source.d.ts +10 -0
- package/out/zero-cache/src/services/change-streamer/pg/change-source.d.ts.map +1 -1
- package/out/zero-cache/src/services/change-streamer/pg/change-source.js +171 -24
- package/out/zero-cache/src/services/change-streamer/pg/change-source.js.map +1 -1
- package/out/zero-cache/src/services/change-streamer/pg/initial-sync.d.ts.map +1 -1
- package/out/zero-cache/src/services/change-streamer/pg/initial-sync.js +32 -18
- package/out/zero-cache/src/services/change-streamer/pg/initial-sync.js.map +1 -1
- package/out/zero-cache/src/services/change-streamer/pg/schema/ddl.d.ts +62 -39
- package/out/zero-cache/src/services/change-streamer/pg/schema/ddl.d.ts.map +1 -1
- package/out/zero-cache/src/services/change-streamer/pg/schema/ddl.js +8 -40
- package/out/zero-cache/src/services/change-streamer/pg/schema/ddl.js.map +1 -1
- package/out/zero-cache/src/services/change-streamer/pg/schema/init.d.ts +8 -0
- package/out/zero-cache/src/services/change-streamer/pg/schema/init.d.ts.map +1 -1
- package/out/zero-cache/src/services/change-streamer/pg/schema/init.js +41 -8
- package/out/zero-cache/src/services/change-streamer/pg/schema/init.js.map +1 -1
- package/out/zero-cache/src/services/change-streamer/pg/schema/published.d.ts +83 -13
- package/out/zero-cache/src/services/change-streamer/pg/schema/published.d.ts.map +1 -1
- package/out/zero-cache/src/services/change-streamer/pg/schema/published.js +15 -5
- package/out/zero-cache/src/services/change-streamer/pg/schema/published.js.map +1 -1
- package/out/zero-cache/src/services/change-streamer/pg/schema/shard.d.ts +39 -3
- package/out/zero-cache/src/services/change-streamer/pg/schema/shard.d.ts.map +1 -1
- package/out/zero-cache/src/services/change-streamer/pg/schema/shard.js +67 -36
- package/out/zero-cache/src/services/change-streamer/pg/schema/shard.js.map +1 -1
- package/out/zero-cache/src/services/change-streamer/pg/schema/validation.d.ts +8 -0
- package/out/zero-cache/src/services/change-streamer/pg/schema/validation.d.ts.map +1 -0
- package/out/zero-cache/src/services/change-streamer/pg/schema/validation.js +33 -0
- package/out/zero-cache/src/services/change-streamer/pg/schema/validation.js.map +1 -0
- package/out/zero-cache/src/services/change-streamer/schema/change.d.ts +5 -1
- package/out/zero-cache/src/services/change-streamer/schema/change.d.ts.map +1 -1
- package/out/zero-cache/src/services/change-streamer/schema/change.js +3 -0
- package/out/zero-cache/src/services/change-streamer/schema/change.js.map +1 -1
- package/out/zero-cache/src/services/change-streamer/schema/init.d.ts.map +1 -1
- package/out/zero-cache/src/services/change-streamer/schema/init.js +4 -6
- package/out/zero-cache/src/services/change-streamer/schema/init.js.map +1 -1
- package/out/zero-cache/src/services/change-streamer/schema/tables.d.ts +6 -1
- package/out/zero-cache/src/services/change-streamer/schema/tables.d.ts.map +1 -1
- package/out/zero-cache/src/services/change-streamer/schema/tables.js +19 -4
- package/out/zero-cache/src/services/change-streamer/schema/tables.js.map +1 -1
- package/out/zero-cache/src/services/change-streamer/storer.d.ts +29 -2
- package/out/zero-cache/src/services/change-streamer/storer.d.ts.map +1 -1
- package/out/zero-cache/src/services/change-streamer/storer.js +90 -8
- package/out/zero-cache/src/services/change-streamer/storer.js.map +1 -1
- package/out/zero-cache/src/services/change-streamer/subscriber.d.ts +1 -0
- package/out/zero-cache/src/services/change-streamer/subscriber.d.ts.map +1 -1
- package/out/zero-cache/src/services/change-streamer/subscriber.js +18 -3
- package/out/zero-cache/src/services/change-streamer/subscriber.js.map +1 -1
- package/out/zero-cache/src/services/dispatcher/dispatcher.d.ts +5 -3
- package/out/zero-cache/src/services/dispatcher/dispatcher.d.ts.map +1 -1
- package/out/zero-cache/src/services/dispatcher/dispatcher.js +20 -5
- package/out/zero-cache/src/services/dispatcher/dispatcher.js.map +1 -1
- package/out/zero-cache/src/services/mutagen/mutagen.d.ts +6 -5
- package/out/zero-cache/src/services/mutagen/mutagen.d.ts.map +1 -1
- package/out/zero-cache/src/services/mutagen/mutagen.js +26 -20
- package/out/zero-cache/src/services/mutagen/mutagen.js.map +1 -1
- package/out/zero-cache/src/services/mutagen/write-authorizer.d.ts +7 -6
- package/out/zero-cache/src/services/mutagen/write-authorizer.d.ts.map +1 -1
- package/out/zero-cache/src/services/mutagen/write-authorizer.js +12 -20
- package/out/zero-cache/src/services/mutagen/write-authorizer.js.map +1 -1
- package/out/zero-cache/src/services/replicator/incremental-sync.d.ts +1 -1
- package/out/zero-cache/src/services/replicator/incremental-sync.d.ts.map +1 -1
- package/out/zero-cache/src/services/replicator/incremental-sync.js +8 -8
- package/out/zero-cache/src/services/replicator/incremental-sync.js.map +1 -1
- package/out/zero-cache/src/services/replicator/schema/replication-state.d.ts.map +1 -1
- package/out/zero-cache/src/services/replicator/schema/replication-state.js +1 -10
- package/out/zero-cache/src/services/replicator/schema/replication-state.js.map +1 -1
- package/out/zero-cache/src/services/running-state.d.ts +6 -1
- package/out/zero-cache/src/services/running-state.d.ts.map +1 -1
- package/out/zero-cache/src/services/running-state.js +23 -5
- package/out/zero-cache/src/services/running-state.js.map +1 -1
- package/out/zero-cache/src/services/view-syncer/database-storage.d.ts +1 -1
- package/out/zero-cache/src/services/view-syncer/database-storage.d.ts.map +1 -1
- package/out/zero-cache/src/services/view-syncer/pipeline-driver.js +1 -1
- package/out/zero-cache/src/services/view-syncer/pipeline-driver.js.map +1 -1
- package/out/zero-cache/src/services/view-syncer/schema/types.d.ts +49 -29
- package/out/zero-cache/src/services/view-syncer/schema/types.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/services/view-syncer/view-syncer.js +2 -1
- package/out/zero-cache/src/services/view-syncer/view-syncer.js.map +1 -1
- package/out/zero-cache/src/types/lexi-version.d.ts +3 -2
- package/out/zero-cache/src/types/lexi-version.d.ts.map +1 -1
- package/out/zero-cache/src/types/lexi-version.js +8 -6
- package/out/zero-cache/src/types/lexi-version.js.map +1 -1
- package/out/zero-cache/src/types/lite.d.ts +1 -1
- package/out/zero-cache/src/types/lite.d.ts.map +1 -1
- package/out/zero-cache/src/types/lite.js +0 -1
- package/out/zero-cache/src/types/lite.js.map +1 -1
- package/out/zero-cache/src/types/processes.d.ts.map +1 -1
- package/out/zero-cache/src/types/processes.js +1 -0
- package/out/zero-cache/src/types/processes.js.map +1 -1
- package/out/zero-cache/src/workers/replicator.d.ts.map +1 -1
- package/out/zero-cache/src/workers/replicator.js +2 -4
- package/out/zero-cache/src/workers/replicator.js.map +1 -1
- package/out/zero-cache/src/workers/syncer.js +1 -1
- package/out/zero-cache/src/workers/syncer.js.map +1 -1
- package/out/zero-client/src/client/context.d.ts +4 -4
- package/out/zero-client/src/client/context.d.ts.map +1 -1
- package/out/zero-client/src/client/crud.d.ts +57 -26
- package/out/zero-client/src/client/crud.d.ts.map +1 -1
- package/out/zero-client/src/client/http-string.d.ts +1 -0
- package/out/zero-client/src/client/http-string.d.ts.map +1 -1
- package/out/zero-client/src/client/keys.d.ts +1 -1
- package/out/zero-client/src/client/keys.d.ts.map +1 -1
- package/out/zero-client/src/client/log-options.d.ts +2 -1
- package/out/zero-client/src/client/log-options.d.ts.map +1 -1
- package/out/zero-client/src/client/options.d.ts +9 -9
- package/out/zero-client/src/client/options.d.ts.map +1 -1
- package/out/zero-client/src/client/protocol-version.d.ts +2 -0
- package/out/zero-client/src/client/protocol-version.d.ts.map +1 -0
- package/out/zero-client/src/client/query-manager.d.ts +1 -1
- package/out/zero-client/src/client/query-manager.d.ts.map +1 -1
- package/out/zero-client/src/client/server-option.d.ts.map +1 -1
- package/out/zero-client/src/client/zero-poke-handler.d.ts +1 -1
- package/out/zero-client/src/client/zero-poke-handler.d.ts.map +1 -1
- package/out/zero-client/src/client/zero.d.ts +27 -22
- package/out/zero-client/src/client/zero.d.ts.map +1 -1
- package/out/zero-client/src/mod.d.ts +8 -7
- package/out/zero-client/src/mod.d.ts.map +1 -1
- package/out/zero-protocol/src/ast.d.ts +37 -21
- package/out/zero-protocol/src/ast.d.ts.map +1 -1
- package/out/zero-protocol/src/ast.js +21 -6
- package/out/zero-protocol/src/ast.js.map +1 -1
- package/out/zero-protocol/src/change-desired-queries.d.ts +16 -8
- package/out/zero-protocol/src/change-desired-queries.d.ts.map +1 -1
- package/out/zero-protocol/src/connect.d.ts +16 -8
- package/out/zero-protocol/src/connect.d.ts.map +1 -1
- package/out/zero-protocol/src/down.d.ts +16 -8
- package/out/zero-protocol/src/down.d.ts.map +1 -1
- package/out/zero-protocol/src/poke.d.ts +32 -16
- package/out/zero-protocol/src/poke.d.ts.map +1 -1
- package/out/zero-protocol/src/push.d.ts +18 -18
- package/out/zero-protocol/src/push.d.ts.map +1 -1
- package/out/zero-protocol/src/push.js +5 -5
- package/out/zero-protocol/src/push.js.map +1 -1
- package/out/zero-protocol/src/queries-patch.d.ts +24 -12
- package/out/zero-protocol/src/queries-patch.d.ts.map +1 -1
- package/out/zero-protocol/src/up.d.ts +18 -10
- package/out/zero-protocol/src/up.d.ts.map +1 -1
- package/out/zero-react/src/use-query.d.ts +2 -1
- package/out/zero-react/src/use-query.d.ts.map +1 -1
- package/out/zero-react/src/use-zero.d.ts +2 -1
- package/out/zero-react/src/use-zero.d.ts.map +1 -1
- package/out/zero-schema/src/authorization.d.ts +25 -0
- package/out/zero-schema/src/authorization.d.ts.map +1 -0
- package/out/zero-schema/src/compiled-authorization.d.ts +379 -0
- package/out/zero-schema/src/compiled-authorization.d.ts.map +1 -0
- package/out/zero-schema/src/compiled-authorization.js +15 -0
- package/out/zero-schema/src/compiled-authorization.js.map +1 -0
- package/out/zero-schema/src/mod.d.ts +5 -0
- package/out/zero-schema/src/mod.d.ts.map +1 -0
- package/out/{zql/src/zql/query → zero-schema/src}/normalize-table-schema.d.ts +2 -3
- package/out/zero-schema/src/normalize-table-schema.d.ts.map +1 -0
- package/out/{zero-client/src/client → zero-schema/src}/normalized-schema.d.ts +2 -2
- package/out/zero-schema/src/normalized-schema.d.ts.map +1 -0
- package/out/zero-schema/src/schema.d.ts +9 -0
- package/out/zero-schema/src/schema.d.ts.map +1 -0
- package/out/{zql/src/zql/query/schema.d.ts → zero-schema/src/table-schema.d.ts} +47 -3
- package/out/zero-schema/src/table-schema.d.ts.map +1 -0
- package/out/{zql/src/zql/query/schema.js → zero-schema/src/table-schema.js} +1 -1
- package/out/zero-schema/src/table-schema.js.map +1 -0
- package/out/zero-solid/src/create-zero.d.ts +2 -1
- package/out/zero-solid/src/create-zero.d.ts.map +1 -1
- package/out/zero.js +6 -14
- package/out/zql/src/{zql/builder → builder}/builder.d.ts +5 -5
- package/out/zql/src/builder/builder.d.ts.map +1 -0
- package/out/zql/src/{zql/builder → builder}/builder.js +81 -33
- package/out/zql/src/builder/builder.js.map +1 -0
- package/out/zql/src/builder/error.d.ts.map +1 -0
- package/out/zql/src/builder/error.js.map +1 -0
- package/out/zql/src/builder/filter.d.ts +7 -0
- package/out/zql/src/builder/filter.d.ts.map +1 -0
- package/out/zql/src/{zql/builder → builder}/filter.js +19 -1
- package/out/zql/src/builder/filter.js.map +1 -0
- package/out/zql/src/builder/like.d.ts +3 -0
- package/out/zql/src/builder/like.d.ts.map +1 -0
- package/out/zql/src/{zql/builder → builder}/like.js +1 -1
- package/out/zql/src/builder/like.js.map +1 -0
- package/out/zql/src/ivm/array-view.d.ts.map +1 -0
- package/out/zql/src/{zql/ivm → ivm}/change.d.ts +2 -1
- package/out/zql/src/ivm/change.d.ts.map +1 -0
- package/out/zql/src/ivm/change.js +5 -0
- package/out/zql/src/ivm/change.js.map +1 -0
- package/out/zql/src/{zql/ivm → ivm}/data.d.ts +2 -2
- package/out/zql/src/ivm/data.d.ts.map +1 -0
- package/out/zql/src/{zql/ivm → ivm}/data.js +1 -1
- package/out/zql/src/ivm/data.js.map +1 -0
- package/out/zql/src/ivm/exists.d.ts +18 -0
- package/out/zql/src/ivm/exists.d.ts.map +1 -0
- package/out/zql/src/ivm/exists.js +186 -0
- package/out/zql/src/ivm/exists.js.map +1 -0
- package/out/zql/src/{zql/ivm → ivm}/fan-in.d.ts +3 -3
- package/out/zql/src/ivm/fan-in.d.ts.map +1 -0
- package/out/zql/src/{zql/ivm → ivm}/fan-in.js +8 -11
- package/out/zql/src/ivm/fan-in.js.map +1 -0
- package/out/zql/src/{zql/ivm → ivm}/fan-out.d.ts +1 -1
- package/out/zql/src/ivm/fan-out.d.ts.map +1 -0
- package/out/zql/src/{zql/ivm → ivm}/fan-out.js +8 -7
- package/out/zql/src/ivm/fan-out.js.map +1 -0
- package/out/zql/src/{zql/ivm → ivm}/filter.d.ts +3 -3
- package/out/zql/src/ivm/filter.d.ts.map +1 -0
- package/out/zql/src/{zql/ivm → ivm}/filter.js +2 -2
- package/out/zql/src/ivm/filter.js.map +1 -0
- package/out/zql/src/{zql/ivm → ivm}/join.d.ts +2 -2
- package/out/zql/src/ivm/join.d.ts.map +1 -0
- package/out/zql/src/{zql/ivm → ivm}/join.js +2 -2
- package/out/zql/src/ivm/join.js.map +1 -0
- package/out/zql/src/ivm/lookahead-iterator.d.ts.map +1 -0
- package/out/zql/src/ivm/lookahead-iterator.js.map +1 -0
- package/out/zql/src/{zql/ivm → ivm}/maybe-split-and-push-edit-change.d.ts +1 -1
- package/out/zql/src/ivm/maybe-split-and-push-edit-change.d.ts.map +1 -0
- package/out/zql/src/ivm/maybe-split-and-push-edit-change.js.map +1 -0
- package/out/zql/src/{zql/ivm → ivm}/memory-source.d.ts +16 -12
- package/out/zql/src/ivm/memory-source.d.ts.map +1 -0
- package/out/zql/src/{zql/ivm → ivm}/memory-source.js +72 -92
- package/out/zql/src/ivm/memory-source.js.map +1 -0
- package/out/zql/src/{zql/ivm → ivm}/memory-storage.d.ts +1 -1
- package/out/zql/src/ivm/memory-storage.d.ts.map +1 -0
- package/out/zql/src/{zql/ivm → ivm}/operator.d.ts +5 -5
- package/out/zql/src/ivm/operator.d.ts.map +1 -0
- package/out/zql/src/ivm/operator.js.map +1 -0
- package/out/zql/src/ivm/schema.d.ts +15 -0
- package/out/zql/src/ivm/schema.d.ts.map +1 -0
- package/out/zql/src/ivm/schema.js +2 -0
- package/out/zql/src/ivm/schema.js.map +1 -0
- package/out/zql/src/{zql/ivm → ivm}/skip.d.ts +3 -3
- package/out/zql/src/ivm/skip.d.ts.map +1 -0
- package/out/zql/src/{zql/ivm → ivm}/skip.js +2 -2
- package/out/zql/src/ivm/skip.js.map +1 -0
- package/out/zql/src/{zql/ivm → ivm}/source.d.ts +2 -2
- package/out/zql/src/ivm/source.d.ts.map +1 -0
- package/out/zql/src/ivm/source.js.map +1 -0
- package/out/zql/src/ivm/stream.d.ts.map +1 -0
- package/out/zql/src/ivm/stream.js.map +1 -0
- package/out/zql/src/{zql/ivm → ivm}/take.d.ts +3 -3
- package/out/zql/src/ivm/take.d.ts.map +1 -0
- package/out/zql/src/{zql/ivm → ivm}/take.js +13 -9
- package/out/zql/src/ivm/take.js.map +1 -0
- package/out/zql/src/ivm/view-apply-change.d.ts +5 -0
- package/out/zql/src/ivm/view-apply-change.d.ts.map +1 -0
- package/out/zql/src/{zql/ivm → ivm}/view.d.ts +2 -2
- package/out/zql/src/ivm/view.d.ts.map +1 -0
- package/out/zql/src/query/auth-query.d.ts +24 -0
- package/out/zql/src/query/auth-query.d.ts.map +1 -0
- package/out/zql/src/query/dnf.d.ts +10 -0
- package/out/zql/src/query/dnf.d.ts.map +1 -0
- package/out/zql/src/query/escape-like.d.ts.map +1 -0
- package/out/zql/src/query/expression.d.ts +41 -0
- package/out/zql/src/query/expression.d.ts.map +1 -0
- package/out/zql/src/{zql/query → query}/query-impl.d.ts +9 -8
- package/out/zql/src/query/query-impl.d.ts.map +1 -0
- package/out/zql/src/{zql/query → query}/query-internal.d.ts +1 -1
- package/out/zql/src/query/query-internal.d.ts.map +1 -0
- package/out/zql/src/query/query.d.ts +98 -0
- package/out/zql/src/query/query.d.ts.map +1 -0
- package/out/zql/src/{zql/query → query}/typed-view.d.ts +1 -1
- package/out/zql/src/query/typed-view.d.ts.map +1 -0
- package/out/zqlite/src/db.d.ts.map +1 -1
- package/out/zqlite/src/db.js +19 -6
- package/out/zqlite/src/db.js.map +1 -1
- package/out/zqlite/src/table-source.d.ts +24 -3
- package/out/zqlite/src/table-source.d.ts.map +1 -1
- package/out/zqlite/src/table-source.js +117 -18
- package/out/zqlite/src/table-source.js.map +1 -1
- package/package.json +11 -6
- package/out/chunk-TBA526RR.js.map +0 -7
- package/out/datadog/src/datadog-log-sink.js +0 -231
- package/out/datadog/src/datadog-log-sink.js.map +0 -1
- package/out/datadog/src/mod.js +0 -2
- package/out/datadog/src/mod.js.map +0 -1
- package/out/replicache/src/async-iterable-to-array.js +0 -8
- package/out/replicache/src/async-iterable-to-array.js.map +0 -1
- package/out/replicache/src/bg-interval.js +0 -38
- package/out/replicache/src/bg-interval.js.map +0 -1
- package/out/replicache/src/binary-search.js +0 -31
- package/out/replicache/src/binary-search.js.map +0 -1
- package/out/replicache/src/broadcast-channel.js +0 -29
- package/out/replicache/src/broadcast-channel.js.map +0 -1
- package/out/replicache/src/btree/diff.js +0 -6
- package/out/replicache/src/btree/diff.js.map +0 -1
- package/out/replicache/src/btree/node.js +0 -392
- package/out/replicache/src/btree/node.js.map +0 -1
- package/out/replicache/src/btree/read.js +0 -227
- package/out/replicache/src/btree/read.js.map +0 -1
- package/out/replicache/src/btree/splice.js +0 -79
- package/out/replicache/src/btree/splice.js.map +0 -1
- package/out/replicache/src/btree/write.js +0 -154
- package/out/replicache/src/btree/write.js.map +0 -1
- package/out/replicache/src/call-default-fetch.js +0 -37
- package/out/replicache/src/call-default-fetch.js.map +0 -1
- package/out/replicache/src/config.js +0 -13
- package/out/replicache/src/config.js.map +0 -1
- package/out/replicache/src/connection-loop-delegates.js +0 -30
- package/out/replicache/src/connection-loop-delegates.js.map +0 -1
- package/out/replicache/src/connection-loop.js +0 -268
- package/out/replicache/src/connection-loop.js.map +0 -1
- package/out/replicache/src/cookies.js +0 -41
- package/out/replicache/src/cookies.js.map +0 -1
- package/out/replicache/src/dag/chunk.js +0 -60
- package/out/replicache/src/dag/chunk.js.map +0 -1
- package/out/replicache/src/dag/gc.js +0 -126
- package/out/replicache/src/dag/gc.js.map +0 -1
- package/out/replicache/src/dag/key-type-enum.js +0 -6
- package/out/replicache/src/dag/key-type-enum.js.map +0 -1
- package/out/replicache/src/dag/key.js +0 -54
- package/out/replicache/src/dag/key.js.map +0 -1
- package/out/replicache/src/dag/lazy-store.js +0 -532
- package/out/replicache/src/dag/lazy-store.js.map +0 -1
- package/out/replicache/src/dag/store-impl.js +0 -175
- package/out/replicache/src/dag/store-impl.js.map +0 -1
- package/out/replicache/src/dag/store.js +0 -22
- package/out/replicache/src/dag/store.js.map +0 -1
- package/out/replicache/src/dag/visitor.js +0 -22
- package/out/replicache/src/dag/visitor.js.map +0 -1
- package/out/replicache/src/db/commit.js +0 -443
- package/out/replicache/src/db/commit.js.map +0 -1
- package/out/replicache/src/db/index-operation-enum.js +0 -4
- package/out/replicache/src/db/index-operation-enum.js.map +0 -1
- package/out/replicache/src/db/index.js +0 -170
- package/out/replicache/src/db/index.js.map +0 -1
- package/out/replicache/src/db/meta-type-enum.js +0 -7
- package/out/replicache/src/db/meta-type-enum.js.map +0 -1
- package/out/replicache/src/db/read.js +0 -59
- package/out/replicache/src/db/read.js.map +0 -1
- package/out/replicache/src/db/rebase.js +0 -56
- package/out/replicache/src/db/rebase.js.map +0 -1
- package/out/replicache/src/db/scan.js +0 -2
- package/out/replicache/src/db/scan.js.map +0 -1
- package/out/replicache/src/db/write.js +0 -260
- package/out/replicache/src/db/write.js.map +0 -1
- package/out/replicache/src/error-responses.js +0 -30
- package/out/replicache/src/error-responses.js.map +0 -1
- package/out/replicache/src/filter-async-iterable.js +0 -15
- package/out/replicache/src/filter-async-iterable.js.map +0 -1
- package/out/replicache/src/format-version-enum.js +0 -9
- package/out/replicache/src/format-version-enum.js.map +0 -1
- package/out/replicache/src/format-version.js +0 -8
- package/out/replicache/src/format-version.js.map +0 -1
- package/out/replicache/src/frozen-json.js +0 -151
- package/out/replicache/src/frozen-json.js.map +0 -1
- package/out/replicache/src/get-default-puller.js +0 -74
- package/out/replicache/src/get-default-puller.js.map +0 -1
- package/out/replicache/src/get-default-pusher.js +0 -36
- package/out/replicache/src/get-default-pusher.js.map +0 -1
- package/out/replicache/src/hash.js +0 -73
- package/out/replicache/src/hash.js.map +0 -1
- package/out/replicache/src/http-request-info.js +0 -7
- package/out/replicache/src/http-request-info.js.map +0 -1
- package/out/replicache/src/impl.js +0 -2
- package/out/replicache/src/impl.js.map +0 -1
- package/out/replicache/src/index-defs.js +0 -28
- package/out/replicache/src/index-defs.js.map +0 -1
- package/out/replicache/src/invoke-kind-enum.js +0 -4
- package/out/replicache/src/invoke-kind-enum.js.map +0 -1
- package/out/replicache/src/iterable-union.js +0 -5
- package/out/replicache/src/iterable-union.js.map +0 -1
- package/out/replicache/src/kv/idb-store-with-mem-fallback.js +0 -93
- package/out/replicache/src/kv/idb-store-with-mem-fallback.js.map +0 -1
- package/out/replicache/src/kv/idb-store.js +0 -179
- package/out/replicache/src/kv/idb-store.js.map +0 -1
- package/out/replicache/src/kv/mem-store.js +0 -61
- package/out/replicache/src/kv/mem-store.js.map +0 -1
- package/out/replicache/src/kv/read-impl.js +0 -23
- package/out/replicache/src/kv/read-impl.js.map +0 -1
- package/out/replicache/src/kv/store.js +0 -2
- package/out/replicache/src/kv/store.js.map +0 -1
- package/out/replicache/src/kv/write-impl-base.js +0 -48
- package/out/replicache/src/kv/write-impl-base.js.map +0 -1
- package/out/replicache/src/kv/write-impl.js +0 -25
- package/out/replicache/src/kv/write-impl.js.map +0 -1
- package/out/replicache/src/lazy.js +0 -10
- package/out/replicache/src/lazy.js.map +0 -1
- package/out/replicache/src/log-options.js +0 -13
- package/out/replicache/src/log-options.js.map +0 -1
- package/out/replicache/src/merge-async-iterables.js +0 -61
- package/out/replicache/src/merge-async-iterables.js.map +0 -1
- package/out/replicache/src/mod.js +0 -14
- package/out/replicache/src/mod.js.map +0 -1
- package/out/replicache/src/mutation-recovery.js +0 -439
- package/out/replicache/src/mutation-recovery.js.map +0 -1
- package/out/replicache/src/new-client-channel.js +0 -77
- package/out/replicache/src/new-client-channel.js.map +0 -1
- package/out/replicache/src/on-persist-channel.js +0 -33
- package/out/replicache/src/on-persist-channel.js.map +0 -1
- package/out/replicache/src/patch-operation.js +0 -37
- package/out/replicache/src/patch-operation.js.map +0 -1
- package/out/replicache/src/pending-mutations.js +0 -18
- package/out/replicache/src/pending-mutations.js.map +0 -1
- package/out/replicache/src/persist/client-gc.js +0 -38
- package/out/replicache/src/persist/client-gc.js.map +0 -1
- package/out/replicache/src/persist/client-group-gc.js +0 -38
- package/out/replicache/src/persist/client-group-gc.js.map +0 -1
- package/out/replicache/src/persist/client-groups.js +0 -180
- package/out/replicache/src/persist/client-groups.js.map +0 -1
- package/out/replicache/src/persist/clients.js +0 -390
- package/out/replicache/src/persist/clients.js.map +0 -1
- package/out/replicache/src/persist/collect-idb-databases.js +0 -174
- package/out/replicache/src/persist/collect-idb-databases.js.map +0 -1
- package/out/replicache/src/persist/gather-mem-only-visitor.js +0 -25
- package/out/replicache/src/persist/gather-mem-only-visitor.js.map +0 -1
- package/out/replicache/src/persist/gather-not-cached-visitor.js +0 -35
- package/out/replicache/src/persist/gather-not-cached-visitor.js.map +0 -1
- package/out/replicache/src/persist/heartbeat.js +0 -37
- package/out/replicache/src/persist/heartbeat.js.map +0 -1
- package/out/replicache/src/persist/idb-databases-store-db-name.js +0 -18
- package/out/replicache/src/persist/idb-databases-store-db-name.js.map +0 -1
- package/out/replicache/src/persist/idb-databases-store.js +0 -90
- package/out/replicache/src/persist/idb-databases-store.js.map +0 -1
- package/out/replicache/src/persist/make-client-id.js +0 -13
- package/out/replicache/src/persist/make-client-id.js.map +0 -1
- package/out/replicache/src/persist/persist.js +0 -132
- package/out/replicache/src/persist/persist.js.map +0 -1
- package/out/replicache/src/persist/refresh.js +0 -147
- package/out/replicache/src/persist/refresh.js.map +0 -1
- package/out/replicache/src/process-scheduler.js +0 -93
- package/out/replicache/src/process-scheduler.js.map +0 -1
- package/out/replicache/src/puller.js +0 -2
- package/out/replicache/src/puller.js.map +0 -1
- package/out/replicache/src/pusher.js +0 -32
- package/out/replicache/src/pusher.js.map +0 -1
- package/out/replicache/src/replicache-impl.js +0 -1007
- package/out/replicache/src/replicache-impl.js.map +0 -1
- package/out/replicache/src/replicache-options.js +0 -2
- package/out/replicache/src/replicache-options.js.map +0 -1
- package/out/replicache/src/replicache.js +0 -387
- package/out/replicache/src/replicache.js.map +0 -1
- package/out/replicache/src/request-idle.js +0 -15
- package/out/replicache/src/request-idle.js.map +0 -1
- package/out/replicache/src/scan-iterator.js +0 -202
- package/out/replicache/src/scan-iterator.js.map +0 -1
- package/out/replicache/src/scan-options.js +0 -45
- package/out/replicache/src/scan-options.js.map +0 -1
- package/out/replicache/src/set-interval-with-signal.js +0 -7
- package/out/replicache/src/set-interval-with-signal.js.map +0 -1
- package/out/replicache/src/size-of-value.js +0 -77
- package/out/replicache/src/size-of-value.js.map +0 -1
- package/out/replicache/src/subscriptions.js +0 -357
- package/out/replicache/src/subscriptions.js.map +0 -1
- package/out/replicache/src/sync/diff.js +0 -75
- package/out/replicache/src/sync/diff.js.map +0 -1
- package/out/replicache/src/sync/handle-pull-response-result-type-enum.js +0 -5
- package/out/replicache/src/sync/handle-pull-response-result-type-enum.js.map +0 -1
- package/out/replicache/src/sync/ids.js +0 -4
- package/out/replicache/src/sync/ids.js.map +0 -1
- package/out/replicache/src/sync/patch.js +0 -41
- package/out/replicache/src/sync/patch.js.map +0 -1
- package/out/replicache/src/sync/pull-error.js +0 -16
- package/out/replicache/src/sync/pull-error.js.map +0 -1
- package/out/replicache/src/sync/pull.js +0 -375
- package/out/replicache/src/sync/pull.js.map +0 -1
- package/out/replicache/src/sync/push.js +0 -141
- package/out/replicache/src/sync/push.js.map +0 -1
- package/out/replicache/src/sync/request-id.js +0 -31
- package/out/replicache/src/sync/request-id.js.map +0 -1
- package/out/replicache/src/sync/sync-head-name.js +0 -2
- package/out/replicache/src/sync/sync-head-name.js.map +0 -1
- package/out/replicache/src/test-license-key.js +0 -3
- package/out/replicache/src/test-license-key.js.map +0 -1
- package/out/replicache/src/to-error.js +0 -7
- package/out/replicache/src/to-error.js.map +0 -1
- package/out/replicache/src/transaction-closed-error.js +0 -17
- package/out/replicache/src/transaction-closed-error.js.map +0 -1
- package/out/replicache/src/transactions.js +0 -144
- package/out/replicache/src/transactions.js.map +0 -1
- package/out/replicache/src/types.js +0 -2
- package/out/replicache/src/types.js.map +0 -1
- package/out/replicache/src/version.js +0 -6
- package/out/replicache/src/version.js.map +0 -1
- package/out/replicache/src/with-transactions.js +0 -28
- package/out/replicache/src/with-transactions.js.map +0 -1
- package/out/shared/src/browser-env.js +0 -14
- package/out/shared/src/browser-env.js.map +0 -1
- package/out/shared/src/document-visible.js +0 -76
- package/out/shared/src/document-visible.js.map +0 -1
- package/out/shared/src/immutable.js +0 -2
- package/out/shared/src/immutable.js.map +0 -1
- package/out/shared/src/navigator.js +0 -3
- package/out/shared/src/navigator.js.map +0 -1
- package/out/shared/src/random-uint64.js +0 -8
- package/out/shared/src/random-uint64.js.map +0 -1
- package/out/shared/src/sorted-entries.js +0 -6
- package/out/shared/src/sorted-entries.js.map +0 -1
- package/out/shared/src/types.js +0 -2
- package/out/shared/src/types.js.map +0 -1
- package/out/shared/src/writable.js +0 -2
- package/out/shared/src/writable.js.map +0 -1
- package/out/zero/src/config.d.ts +0 -2
- package/out/zero/src/config.d.ts.map +0 -1
- package/out/zero/src/config.js +0 -2
- package/out/zero/src/config.js.map +0 -1
- package/out/zero-cache/src/config/config-query.d.ts +0 -19
- package/out/zero-cache/src/config/config-query.d.ts.map +0 -1
- package/out/zero-cache/src/config/config-query.js +0 -22
- package/out/zero-cache/src/config/config-query.js.map +0 -1
- package/out/zero-cache/src/config/define-config.d.ts +0 -43
- package/out/zero-cache/src/config/define-config.d.ts.map +0 -1
- package/out/zero-cache/src/config/define-config.js +0 -120
- package/out/zero-cache/src/config/define-config.js.map +0 -1
- package/out/zero-cache/src/config/refs.d.ts +0 -3
- package/out/zero-cache/src/config/refs.d.ts.map +0 -1
- package/out/zero-cache/src/config/refs.js +0 -14
- package/out/zero-cache/src/config/refs.js.map +0 -1
- package/out/zero-client/src/client/context.js +0 -113
- package/out/zero-client/src/client/context.js.map +0 -1
- package/out/zero-client/src/client/crud.js +0 -181
- package/out/zero-client/src/client/crud.js.map +0 -1
- package/out/zero-client/src/client/enable-analytics.js +0 -21
- package/out/zero-client/src/client/enable-analytics.js.map +0 -1
- package/out/zero-client/src/client/http-string.js +0 -14
- package/out/zero-client/src/client/http-string.js.map +0 -1
- package/out/zero-client/src/client/keys.js +0 -32
- package/out/zero-client/src/client/keys.js.map +0 -1
- package/out/zero-client/src/client/log-options.js +0 -57
- package/out/zero-client/src/client/log-options.js.map +0 -1
- package/out/zero-client/src/client/metrics.js +0 -268
- package/out/zero-client/src/client/metrics.js.map +0 -1
- package/out/zero-client/src/client/normalized-schema.d.ts.map +0 -1
- package/out/zero-client/src/client/normalized-schema.js +0 -31
- package/out/zero-client/src/client/normalized-schema.js.map +0 -1
- package/out/zero-client/src/client/options.js +0 -2
- package/out/zero-client/src/client/options.js.map +0 -1
- package/out/zero-client/src/client/query-manager.js +0 -146
- package/out/zero-client/src/client/query-manager.js.map +0 -1
- package/out/zero-client/src/client/reload-error-handler.js +0 -23
- package/out/zero-client/src/client/reload-error-handler.js.map +0 -1
- package/out/zero-client/src/client/replicache-types.js +0 -2
- package/out/zero-client/src/client/replicache-types.js.map +0 -1
- package/out/zero-client/src/client/server-error.js +0 -22
- package/out/zero-client/src/client/server-error.js.map +0 -1
- package/out/zero-client/src/client/server-option.js +0 -37
- package/out/zero-client/src/client/server-option.js.map +0 -1
- package/out/zero-client/src/client/version.js +0 -6
- package/out/zero-client/src/client/version.js.map +0 -1
- package/out/zero-client/src/client/zero-poke-handler.js +0 -240
- package/out/zero-client/src/client/zero-poke-handler.js.map +0 -1
- package/out/zero-client/src/client/zero.js +0 -1233
- package/out/zero-client/src/client/zero.js.map +0 -1
- package/out/zero-client/src/mod.js +0 -7
- package/out/zero-client/src/mod.js.map +0 -1
- package/out/zero-client/src/util/nanoid.js +0 -34
- package/out/zero-client/src/util/nanoid.js.map +0 -1
- package/out/zero-client/src/util/socket.js +0 -4
- package/out/zero-client/src/util/socket.js.map +0 -1
- package/out/zero-protocol/src/ast-hash.js +0 -14
- package/out/zero-protocol/src/ast-hash.js.map +0 -1
- package/out/zql/src/zql/builder/builder.d.ts.map +0 -1
- package/out/zql/src/zql/builder/builder.js.map +0 -1
- package/out/zql/src/zql/builder/error.d.ts.map +0 -1
- package/out/zql/src/zql/builder/error.js.map +0 -1
- package/out/zql/src/zql/builder/filter.d.ts +0 -6
- package/out/zql/src/zql/builder/filter.d.ts.map +0 -1
- package/out/zql/src/zql/builder/filter.js.map +0 -1
- package/out/zql/src/zql/builder/like.d.ts +0 -3
- package/out/zql/src/zql/builder/like.d.ts.map +0 -1
- package/out/zql/src/zql/builder/like.js.map +0 -1
- package/out/zql/src/zql/ivm/array-view.d.ts.map +0 -1
- package/out/zql/src/zql/ivm/array-view.js +0 -70
- package/out/zql/src/zql/ivm/array-view.js.map +0 -1
- package/out/zql/src/zql/ivm/change.d.ts.map +0 -1
- package/out/zql/src/zql/ivm/change.js +0 -2
- package/out/zql/src/zql/ivm/change.js.map +0 -1
- package/out/zql/src/zql/ivm/data.d.ts.map +0 -1
- package/out/zql/src/zql/ivm/data.js.map +0 -1
- package/out/zql/src/zql/ivm/fan-in.d.ts.map +0 -1
- package/out/zql/src/zql/ivm/fan-in.js.map +0 -1
- package/out/zql/src/zql/ivm/fan-out.d.ts.map +0 -1
- package/out/zql/src/zql/ivm/fan-out.js.map +0 -1
- package/out/zql/src/zql/ivm/filter.d.ts.map +0 -1
- package/out/zql/src/zql/ivm/filter.js.map +0 -1
- package/out/zql/src/zql/ivm/join.d.ts.map +0 -1
- package/out/zql/src/zql/ivm/join.js.map +0 -1
- package/out/zql/src/zql/ivm/lookahead-iterator.d.ts.map +0 -1
- package/out/zql/src/zql/ivm/lookahead-iterator.js.map +0 -1
- package/out/zql/src/zql/ivm/maybe-split-and-push-edit-change.d.ts.map +0 -1
- package/out/zql/src/zql/ivm/maybe-split-and-push-edit-change.js.map +0 -1
- package/out/zql/src/zql/ivm/memory-source.d.ts.map +0 -1
- package/out/zql/src/zql/ivm/memory-source.js.map +0 -1
- package/out/zql/src/zql/ivm/memory-storage.d.ts.map +0 -1
- package/out/zql/src/zql/ivm/memory-storage.js +0 -33
- package/out/zql/src/zql/ivm/memory-storage.js.map +0 -1
- package/out/zql/src/zql/ivm/operator.d.ts.map +0 -1
- package/out/zql/src/zql/ivm/operator.js.map +0 -1
- package/out/zql/src/zql/ivm/schema.d.ts +0 -29
- package/out/zql/src/zql/ivm/schema.d.ts.map +0 -1
- package/out/zql/src/zql/ivm/schema.js +0 -3
- package/out/zql/src/zql/ivm/schema.js.map +0 -1
- package/out/zql/src/zql/ivm/skip.d.ts.map +0 -1
- package/out/zql/src/zql/ivm/skip.js.map +0 -1
- package/out/zql/src/zql/ivm/source.d.ts.map +0 -1
- package/out/zql/src/zql/ivm/source.js.map +0 -1
- package/out/zql/src/zql/ivm/stream.d.ts.map +0 -1
- package/out/zql/src/zql/ivm/stream.js.map +0 -1
- package/out/zql/src/zql/ivm/take.d.ts.map +0 -1
- package/out/zql/src/zql/ivm/take.js.map +0 -1
- package/out/zql/src/zql/ivm/view-apply-change.d.ts +0 -5
- package/out/zql/src/zql/ivm/view-apply-change.d.ts.map +0 -1
- package/out/zql/src/zql/ivm/view-apply-change.js +0 -156
- package/out/zql/src/zql/ivm/view-apply-change.js.map +0 -1
- package/out/zql/src/zql/ivm/view.d.ts.map +0 -1
- package/out/zql/src/zql/ivm/view.js +0 -2
- package/out/zql/src/zql/ivm/view.js.map +0 -1
- package/out/zql/src/zql/query/escape-like.d.ts.map +0 -1
- package/out/zql/src/zql/query/escape-like.js +0 -4
- package/out/zql/src/zql/query/escape-like.js.map +0 -1
- package/out/zql/src/zql/query/expression.d.ts +0 -25
- package/out/zql/src/zql/query/expression.d.ts.map +0 -1
- package/out/zql/src/zql/query/expression.js +0 -115
- package/out/zql/src/zql/query/expression.js.map +0 -1
- package/out/zql/src/zql/query/normalize-table-schema.d.ts.map +0 -1
- package/out/zql/src/zql/query/normalize-table-schema.js +0 -116
- package/out/zql/src/zql/query/normalize-table-schema.js.map +0 -1
- package/out/zql/src/zql/query/query-impl.d.ts.map +0 -1
- package/out/zql/src/zql/query/query-impl.js +0 -289
- package/out/zql/src/zql/query/query-impl.js.map +0 -1
- package/out/zql/src/zql/query/query-internal.d.ts.map +0 -1
- package/out/zql/src/zql/query/query-internal.js +0 -2
- package/out/zql/src/zql/query/query-internal.js.map +0 -1
- package/out/zql/src/zql/query/query.d.ts +0 -142
- package/out/zql/src/zql/query/query.d.ts.map +0 -1
- package/out/zql/src/zql/query/query.js +0 -3
- package/out/zql/src/zql/query/query.js.map +0 -1
- package/out/zql/src/zql/query/schema.d.ts.map +0 -1
- package/out/zql/src/zql/query/schema.js.map +0 -1
- package/out/zql/src/zql/query/typed-view.d.ts.map +0 -1
- package/out/zql/src/zql/query/typed-view.js +0 -2
- package/out/zql/src/zql/query/typed-view.js.map +0 -1
- /package/out/{internal.js.map → advanced.js.map} +0 -0
- /package/out/zql/src/{zql/builder → builder}/error.d.ts +0 -0
- /package/out/zql/src/{zql/builder → builder}/error.js +0 -0
- /package/out/zql/src/{zql/ivm → ivm}/array-view.d.ts +0 -0
- /package/out/zql/src/{zql/ivm → ivm}/lookahead-iterator.d.ts +0 -0
- /package/out/zql/src/{zql/ivm → ivm}/lookahead-iterator.js +0 -0
- /package/out/zql/src/{zql/ivm → ivm}/maybe-split-and-push-edit-change.js +0 -0
- /package/out/zql/src/{zql/ivm → ivm}/operator.js +0 -0
- /package/out/zql/src/{zql/ivm → ivm}/source.js +0 -0
- /package/out/zql/src/{zql/ivm → ivm}/stream.d.ts +0 -0
- /package/out/zql/src/{zql/ivm → ivm}/stream.js +0 -0
- /package/out/zql/src/{zql/query → query}/escape-like.d.ts +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { assert } from '
|
|
1
|
+
import { assert } from '../../../shared/src/asserts.js';
|
|
2
2
|
import { maybeSplitAndPushEditChange } from './maybe-split-and-push-edit-change.js';
|
|
3
3
|
/**
|
|
4
4
|
* Skip sets the start position for the pipeline. No rows before the bound will
|
|
@@ -13,7 +13,7 @@ export class Skip {
|
|
|
13
13
|
this.#input = input;
|
|
14
14
|
this.#bound = bound;
|
|
15
15
|
this.#comparator = input.getSchema().compareRows;
|
|
16
|
-
|
|
16
|
+
input.setOutput(this);
|
|
17
17
|
}
|
|
18
18
|
getSchema() {
|
|
19
19
|
return this.#input.getSchema();
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skip.js","sourceRoot":"","sources":["../../../../../zql/src/ivm/skip.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { Condition, Ordering } from '
|
|
2
|
-
import type { Row } from '
|
|
1
|
+
import type { Condition, Ordering } from '../../../zero-protocol/src/ast.js';
|
|
2
|
+
import type { Row } from '../../../zero-protocol/src/data.js';
|
|
3
3
|
import type { Input } from './operator.js';
|
|
4
4
|
export type SourceChangeAdd = {
|
|
5
5
|
type: 'add';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"source.d.ts","sourceRoot":"","sources":["../../../../../zql/src/ivm/source.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,SAAS,EAAE,QAAQ,EAAC,MAAM,mCAAmC,CAAC;AAC3E,OAAO,KAAK,EAAC,GAAG,EAAC,MAAM,oCAAoC,CAAC;AAC5D,OAAO,KAAK,EAAC,KAAK,EAAC,MAAM,eAAe,CAAC;AAEzC,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,KAAK,CAAC;IACZ,GAAG,EAAE,GAAG,CAAC;CACV,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,QAAQ,CAAC;IACf,GAAG,EAAE,GAAG,CAAC;CACV,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,GAAG,CAAC;IACT,MAAM,EAAE,GAAG,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,YAAY,GACpB,eAAe,GACf,kBAAkB,GAClB,gBAAgB,CAAC;AAErB;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,WAAW,MAAM;IACrB;;;;;;;;OAQG;IACH,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,eAAe,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC;IAE9E;;OAEG;IACH,IAAI,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,CAAC;CAClC;AAED,MAAM,WAAW,WAAY,SAAQ,KAAK;IACxC,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;CAClC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"source.js","sourceRoot":"","sources":["../../../../../zql/src/ivm/source.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../../../../../zql/src/ivm/stream.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,MAAM,MAAM,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC;AAEpC,wBAAiB,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAWpE;AAED,wBAAgB,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,SAAS,CAKzD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stream.js","sourceRoot":"","sources":["../../../../../zql/src/ivm/stream.ts"],"names":[],"mappings":"AASA,MAAM,SAAS,CAAC,CAAC,IAAI,CAAI,MAAiB,EAAE,KAAa;IACvD,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACd,OAAO;IACT,CAAC;IACD,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,MAAM,CAAC,CAAC;QACR,IAAI,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC;YACtB,MAAM;QACR,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,KAAK,CAAI,MAAiB;IACxC,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;IACrC,MAAM,EAAC,KAAK,EAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC;IAC1B,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC;IACd,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type Change } from './change.js';
|
|
2
2
|
import { type Node } from './data.js';
|
|
3
3
|
import type { FetchRequest, Input, Operator, Output, Storage } from './operator.js';
|
|
4
|
-
import type {
|
|
4
|
+
import type { SourceSchema } from './schema.js';
|
|
5
5
|
import { type Stream } from './stream.js';
|
|
6
6
|
/**
|
|
7
7
|
* The Take operator is for implementing limit queries. It takes the first n
|
|
@@ -15,7 +15,7 @@ export declare class Take implements Operator {
|
|
|
15
15
|
#private;
|
|
16
16
|
constructor(input: Input, storage: Storage, limit: number, partitionKey?: string | undefined);
|
|
17
17
|
setOutput(output: Output): void;
|
|
18
|
-
getSchema():
|
|
18
|
+
getSchema(): SourceSchema;
|
|
19
19
|
fetch(req: FetchRequest): Stream<Node>;
|
|
20
20
|
cleanup(req: FetchRequest): Stream<Node>;
|
|
21
21
|
push(change: Change): void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"take.d.ts","sourceRoot":"","sources":["../../../../../zql/src/ivm/take.ts"],"names":[],"mappings":"AAIA,OAAO,EAEL,KAAK,MAAM,EAGZ,MAAM,aAAa,CAAC;AACrB,OAAO,EAAqB,KAAK,IAAI,EAAC,MAAM,WAAW,CAAC;AACxD,OAAO,KAAK,EAEV,YAAY,EACZ,KAAK,EACL,QAAQ,EACR,MAAM,EACN,OAAO,EACR,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAc,KAAK,MAAM,EAAC,MAAM,aAAa,CAAC;AAiBrD;;;;;;;GAOG;AACH,qBAAa,IAAK,YAAW,QAAQ;;gBASjC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,MAAM,EACb,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS;IAcnC,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAI/B,SAAS,IAAI,YAAY;IAIxB,KAAK,CAAC,GAAG,EAAE,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC;IAkGtC,OAAO,CAAC,GAAG,EAAE,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC;IA6DzC,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IA4Z1B,OAAO,IAAI,IAAI;CAGhB"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { assert, unreachable } from '
|
|
2
|
-
import { must } from '
|
|
1
|
+
import { assert, unreachable } from '../../../shared/src/asserts.js';
|
|
2
|
+
import { must } from '../../../shared/src/must.js';
|
|
3
3
|
import { assertOrderingIncludesPK } from '../builder/builder.js';
|
|
4
|
+
import { rowForChange, } from './change.js';
|
|
4
5
|
import { normalizeUndefined } from './data.js';
|
|
5
6
|
import { first, take } from './stream.js';
|
|
6
7
|
const MAX_BOUND_KEY = 'maxBound';
|
|
@@ -24,8 +25,8 @@ export class Take {
|
|
|
24
25
|
this.#limit = limit;
|
|
25
26
|
this.#partitionKey = partitionKey;
|
|
26
27
|
assert(limit >= 0);
|
|
27
|
-
assertOrderingIncludesPK(
|
|
28
|
-
|
|
28
|
+
assertOrderingIncludesPK(input.getSchema().sort, input.getSchema().primaryKey);
|
|
29
|
+
input.setOutput(this);
|
|
29
30
|
}
|
|
30
31
|
setOutput(output) {
|
|
31
32
|
this.#output = output;
|
|
@@ -156,11 +157,7 @@ export class Take {
|
|
|
156
157
|
return;
|
|
157
158
|
}
|
|
158
159
|
assert(this.#output, 'Output not set');
|
|
159
|
-
|
|
160
|
-
// and a 'child' change should be pushed to output if its row
|
|
161
|
-
// is <= bound.
|
|
162
|
-
assert(change.type !== 'child', 'child changes are not supported');
|
|
163
|
-
const { takeState, takeStateKey, maxBound, constraint } = this.#getStateAndConstraint(change.node.row);
|
|
160
|
+
const { takeState, takeStateKey, maxBound, constraint } = this.#getStateAndConstraint(rowForChange(change));
|
|
164
161
|
if (!takeState) {
|
|
165
162
|
return;
|
|
166
163
|
}
|
|
@@ -262,6 +259,13 @@ export class Take {
|
|
|
262
259
|
this.#setTakeState(takeStateKey, takeState.size - 1, compToBound === 0 ? beforeBoundNode.row : takeState.bound, maxBound);
|
|
263
260
|
this.#output.push(change);
|
|
264
261
|
}
|
|
262
|
+
else if (change.type === 'child') {
|
|
263
|
+
// A 'child' change should be pushed to output if its row
|
|
264
|
+
// is <= bound.
|
|
265
|
+
if (takeState.bound && compareRows(change.row, takeState.bound) <= 0) {
|
|
266
|
+
this.#output.push(change);
|
|
267
|
+
}
|
|
268
|
+
}
|
|
265
269
|
}
|
|
266
270
|
#pushEditChange(change) {
|
|
267
271
|
assert(this.#output, 'Output not set');
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"take.js","sourceRoot":"","sources":["../../../../../zql/src/ivm/take.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { Change } from './change.js';
|
|
2
|
+
import type { SourceSchema } from './schema.js';
|
|
3
|
+
import type { Entry, Format } from './view.js';
|
|
4
|
+
export declare function applyChange(parentEntry: Entry, change: Change, schema: SourceSchema, relationship: string, format: Format): void;
|
|
5
|
+
//# sourceMappingURL=view-apply-change.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"view-apply-change.d.ts","sourceRoot":"","sources":["../../../../../zql/src/ivm/view-apply-change.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AAExC,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AAC9C,OAAO,KAAK,EAAC,KAAK,EAAa,MAAM,EAAC,MAAM,WAAW,CAAC;AAExD,wBAAgB,WAAW,CACzB,WAAW,EAAE,KAAK,EAClB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,YAAY,EACpB,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,MAAM,QA6Lf"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { Value } from '
|
|
1
|
+
import type { Value } from '../../../zero-protocol/src/data.js';
|
|
2
2
|
import type { Input } from './operator.js';
|
|
3
3
|
import type { Query, QueryType } from '../query/query.js';
|
|
4
|
-
import type { TableSchema } from '
|
|
4
|
+
import type { TableSchema } from '../../../zero-schema/src/table-schema.js';
|
|
5
5
|
export type View = EntryList | Entry | undefined;
|
|
6
6
|
export type EntryList = Entry[];
|
|
7
7
|
export type Entry = {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../../../../zql/src/ivm/view.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,KAAK,EAAC,MAAM,oCAAoC,CAAC;AAC9D,OAAO,KAAK,EAAC,KAAK,EAAC,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,EAAC,KAAK,EAAE,SAAS,EAAC,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,0CAA0C,CAAC;AAE1E,MAAM,MAAM,IAAI,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,CAAC;AACjD,MAAM,MAAM,SAAS,GAAG,KAAK,EAAE,CAAC;AAChC,MAAM,MAAM,KAAK,GAAG;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,GAAG,IAAI,CAAA;CAAC,CAAC;AAElD,MAAM,MAAM,MAAM,GAAG;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,WAAW,CACrB,OAAO,SAAS,WAAW,EAC3B,OAAO,SAAS,SAAS,EACzB,CAAC,IACC,CACF,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,EAC9B,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,IAAI,EACrB,mBAAmB,EAAE,CAAC,EAAE,EAAE,MAAM,IAAI,KAAK,IAAI,KAC1C,CAAC,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { AST } from '../../../zero-protocol/src/ast.js';
|
|
2
|
+
import { type NormalizedTableSchema } from '../../../zero-schema/src/normalize-table-schema.js';
|
|
3
|
+
import type { TableSchema } from '../../../zero-schema/src/table-schema.js';
|
|
4
|
+
import type { Format } from '../ivm/view.js';
|
|
5
|
+
import { AbstractQuery } from './query-impl.js';
|
|
6
|
+
import type { DefaultQueryResultRow, Query, QueryType, Smash } from './query.js';
|
|
7
|
+
import type { TypedView } from './typed-view.js';
|
|
8
|
+
export declare function authQuery<TSchema extends TableSchema>(schema: TSchema): AuthQuery<TSchema, DefaultQueryResultRow<TSchema>>;
|
|
9
|
+
/**
|
|
10
|
+
* This class will replace `config-query` once we have moved all
|
|
11
|
+
* authorization logic out of the config.
|
|
12
|
+
*/
|
|
13
|
+
export declare class AuthQuery<TTableSchema extends TableSchema, TReturn extends QueryType = DefaultQueryResultRow<TTableSchema>> extends AbstractQuery<TTableSchema, TReturn> {
|
|
14
|
+
constructor(schema: NormalizedTableSchema, ast?: AST, format?: Format | undefined);
|
|
15
|
+
protected _newQuery<TSchema extends TableSchema, TReturn extends QueryType>(schema: NormalizedTableSchema, ast: AST, format: Format | undefined): Query<TSchema, TReturn>;
|
|
16
|
+
get ast(): AST;
|
|
17
|
+
materialize(): TypedView<Smash<TReturn>>;
|
|
18
|
+
run(): Smash<TReturn>;
|
|
19
|
+
preload(): {
|
|
20
|
+
cleanup: () => void;
|
|
21
|
+
complete: Promise<void>;
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=auth-query.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth-query.d.ts","sourceRoot":"","sources":["../../../../../zql/src/query/auth-query.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,GAAG,EAAC,MAAM,mCAAmC,CAAC;AAC3D,OAAO,EAEL,KAAK,qBAAqB,EAC3B,MAAM,oDAAoD,CAAC;AAC5D,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,0CAA0C,CAAC;AAC1E,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAC,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAC9C,OAAO,KAAK,EAAC,qBAAqB,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAC,MAAM,YAAY,CAAC;AAC/E,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAE/C,wBAAgB,SAAS,CAAC,OAAO,SAAS,WAAW,EAAE,MAAM,EAAE,OAAO,sDAErE;AAED;;;GAGG;AACH,qBAAa,SAAS,CACpB,YAAY,SAAS,WAAW,EAChC,OAAO,SAAS,SAAS,GAAG,qBAAqB,CAAC,YAAY,CAAC,CAC/D,SAAQ,aAAa,CAAC,YAAY,EAAE,OAAO,CAAC;gBAE1C,MAAM,EAAE,qBAAqB,EAC7B,GAAG,GAAE,GAA+B,EACpC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS;IAK7B,SAAS,CAAC,SAAS,CAAC,OAAO,SAAS,WAAW,EAAE,OAAO,SAAS,SAAS,EACxE,MAAM,EAAE,qBAAqB,EAC7B,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,MAAM,GAAG,SAAS,GACzB,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC;IAI1B,IAAI,GAAG,QAEN;IAED,WAAW,IAAI,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAIxC,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC;IAIrB,OAAO,IAAI;QACT,OAAO,EAAE,MAAM,IAAI,CAAC;QACpB,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;KACzB;CAGF"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { Condition } from '../../../zero-protocol/src/ast.js';
|
|
2
|
+
/**
|
|
3
|
+
* DNF (Disjunctive Normal Form) is a way to represent a boolean expression as a
|
|
4
|
+
* series of `or` conditions where each `or` condition is a series of `and`
|
|
5
|
+
* conditions. The `and` conditions are the terms (SimpleCondition) of the
|
|
6
|
+
* expression.
|
|
7
|
+
*/
|
|
8
|
+
export declare function dnf(condition: Condition): Condition;
|
|
9
|
+
export declare function unwrap(c: Condition): Condition;
|
|
10
|
+
//# sourceMappingURL=dnf.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dnf.d.ts","sourceRoot":"","sources":["../../../../../zql/src/query/dnf.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,SAAS,EAAc,MAAM,mCAAmC,CAAC;AAG9E;;;;;GAKG;AACH,wBAAgB,GAAG,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,CAEnD;AA+CD,wBAAgB,MAAM,CAAC,CAAC,EAAE,SAAS,GAAG,SAAS,CAQ9C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"escape-like.d.ts","sourceRoot":"","sources":["../../../../../zql/src/query/escape-like.ts"],"names":[],"mappings":"AAAA,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,UAErC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import type { Condition, ValuePosition } from '../../../zero-protocol/src/ast.js';
|
|
2
|
+
import type { PullSchemaForRelationship, TableSchema } from '../../../zero-schema/src/table-schema.js';
|
|
3
|
+
import type { DefaultQueryResultRow, GetFieldTypeNoUndefined, NoJsonSelector, Operator, Parameter, Query, QueryType } from './query.js';
|
|
4
|
+
/**
|
|
5
|
+
* A factory function that creates a condition. This is used to create
|
|
6
|
+
* complex conditions that can be passed to the `where` method of a query.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
*
|
|
10
|
+
* ```ts
|
|
11
|
+
* const condition: ExpressionFactory<User> = ({and, cmp, or}) =>
|
|
12
|
+
* and(
|
|
13
|
+
* cmp('name', '=', 'Alice'),
|
|
14
|
+
* or(cmp('age', '>', 18), cmp('isStudent', '=', true)),
|
|
15
|
+
* );
|
|
16
|
+
*
|
|
17
|
+
* const query = z.query.user.where(condition);
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
20
|
+
export interface ExpressionFactory<TSchema extends TableSchema> {
|
|
21
|
+
(eb: ExpressionBuilder<TSchema>): Condition;
|
|
22
|
+
}
|
|
23
|
+
export declare class ExpressionBuilder<TSchema extends TableSchema> {
|
|
24
|
+
#private;
|
|
25
|
+
constructor(exists: (relationship: string, cb?: (query: Query<TableSchema, QueryType>) => Query<TableSchema, QueryType>) => Condition);
|
|
26
|
+
get eb(): this;
|
|
27
|
+
cmp<TSelector extends NoJsonSelector<TSchema>, TOperator extends Operator, TParamAnchor = never, TParamField extends keyof TParamAnchor = never, TParamTypeBound extends GetFieldTypeNoUndefined<TSchema, TSelector, TOperator> = never>(field: TSelector, op: TOperator, value: GetFieldTypeNoUndefined<TSchema, TSelector, TOperator> | Parameter<TParamAnchor, TParamField, TParamTypeBound>): Condition;
|
|
28
|
+
cmp<TSelector extends NoJsonSelector<TSchema>, TParamAnchor = never, TParamField extends keyof TParamAnchor = never, TParamTypeBound extends GetFieldTypeNoUndefined<TSchema, TSelector, '='> = never>(field: TSelector, value: GetFieldTypeNoUndefined<TSchema, TSelector, '='> | Parameter<TParamAnchor, TParamField, TParamTypeBound>): Condition;
|
|
29
|
+
and: typeof and;
|
|
30
|
+
or: typeof or;
|
|
31
|
+
not: typeof not;
|
|
32
|
+
exists(relationship: keyof TSchema['relationships']): Condition;
|
|
33
|
+
exists<TRelationship extends keyof TSchema['relationships'] & string>(relationship: TRelationship, cb: (query: Query<PullSchemaForRelationship<TSchema, TRelationship>, DefaultQueryResultRow<PullSchemaForRelationship<TSchema, TRelationship>>>) => Query<TableSchema, QueryType>): Condition;
|
|
34
|
+
}
|
|
35
|
+
export declare function and(...conditions: (Condition | undefined)[]): Condition;
|
|
36
|
+
export declare function or(...conditions: (Condition | undefined)[]): Condition;
|
|
37
|
+
export declare function not(expression: Condition): Condition;
|
|
38
|
+
export declare function cmp(field: string, opOrValue: Operator | ValuePosition, value?: ValuePosition): Condition;
|
|
39
|
+
export declare const TRUE: Condition;
|
|
40
|
+
export declare function flatten(type: 'and' | 'or', conditions: Condition[]): Condition[];
|
|
41
|
+
//# sourceMappingURL=expression.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expression.d.ts","sourceRoot":"","sources":["../../../../../zql/src/query/expression.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,SAAS,EAAE,aAAa,EAAC,MAAM,mCAAmC,CAAC;AAChF,OAAO,KAAK,EACV,yBAAyB,EACzB,WAAW,EACZ,MAAM,0CAA0C,CAAC;AAClD,OAAO,KAAK,EACV,qBAAqB,EACrB,uBAAuB,EACvB,cAAc,EACd,QAAQ,EACR,SAAS,EACT,KAAK,EACL,SAAS,EACV,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,iBAAiB,CAAC,OAAO,SAAS,WAAW;IAC5D,CAAC,EAAE,EAAE,iBAAiB,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;CAC7C;AAED,qBAAa,iBAAiB,CAAC,OAAO,SAAS,WAAW;;gBAStD,MAAM,EAAE,CACN,YAAY,EAAE,MAAM,EACpB,EAAE,CAAC,EAAE,CACH,KAAK,EAAE,KAAK,CAAC,WAAW,EAAE,SAAS,CAAC,KACjC,KAAK,CAAC,WAAW,EAAE,SAAS,CAAC,KAC/B,SAAS;IAMhB,IAAI,EAAE,SAEL;IAED,GAAG,CACD,SAAS,SAAS,cAAc,CAAC,OAAO,CAAC,EACzC,SAAS,SAAS,QAAQ,EAC1B,YAAY,GAAG,KAAK,EACpB,WAAW,SAAS,MAAM,YAAY,GAAG,KAAK,EAC9C,eAAe,SAAS,uBAAuB,CAC7C,OAAO,EACP,SAAS,EACT,SAAS,CACV,GAAG,KAAK,EAET,KAAK,EAAE,SAAS,EAChB,EAAE,EAAE,SAAS,EACb,KAAK,EACD,uBAAuB,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC,GACtD,SAAS,CAAC,YAAY,EAAE,WAAW,EAAE,eAAe,CAAC,GACxD,SAAS;IACZ,GAAG,CACD,SAAS,SAAS,cAAc,CAAC,OAAO,CAAC,EACzC,YAAY,GAAG,KAAK,EACpB,WAAW,SAAS,MAAM,YAAY,GAAG,KAAK,EAC9C,eAAe,SAAS,uBAAuB,CAC7C,OAAO,EACP,SAAS,EACT,GAAG,CACJ,GAAG,KAAK,EAET,KAAK,EAAE,SAAS,EAChB,KAAK,EACD,uBAAuB,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,CAAC,GAChD,SAAS,CAAC,YAAY,EAAE,WAAW,EAAE,eAAe,CAAC,GACxD,SAAS;IASZ,GAAG,aAAO;IACV,EAAE,YAAM;IACR,GAAG,aAAO;IAEV,MAAM,CAAC,YAAY,EAAE,MAAM,OAAO,CAAC,eAAe,CAAC,GAAG,SAAS;IAC/D,MAAM,CAAC,aAAa,SAAS,MAAM,OAAO,CAAC,eAAe,CAAC,GAAG,MAAM,EAClE,YAAY,EAAE,aAAa,EAC3B,EAAE,EAAE,CACF,KAAK,EAAE,KAAK,CACV,yBAAyB,CAAC,OAAO,EAAE,aAAa,CAAC,EACjD,qBAAqB,CAAC,yBAAyB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,CACzE,KACE,KAAK,CAAC,WAAW,EAAE,SAAS,CAAC,GACjC,SAAS;CASb;AAED,wBAAgB,GAAG,CAAC,GAAG,UAAU,EAAE,CAAC,SAAS,GAAG,SAAS,CAAC,EAAE,GAAG,SAAS,CAYvE;AAED,wBAAgB,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,SAAS,GAAG,SAAS,CAAC,EAAE,GAAG,SAAS,CAYtE;AAED,wBAAgB,GAAG,CAAC,UAAU,EAAE,SAAS,GAAG,SAAS,CA0BpD;AAED,wBAAgB,GAAG,CACjB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,QAAQ,GAAG,aAAa,EACnC,KAAK,CAAC,EAAE,aAAa,GACpB,SAAS,CAeX;AAED,eAAO,MAAM,IAAI,EAAE,SAGlB,CAAC;AAeF,wBAAgB,OAAO,CACrB,IAAI,EAAE,KAAK,GAAG,IAAI,EAClB,UAAU,EAAE,SAAS,EAAE,GACtB,SAAS,EAAE,CAWb"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import type { AST } from '
|
|
1
|
+
import type { AST } from '../../../zero-protocol/src/ast.js';
|
|
2
|
+
import { type NormalizedTableSchema } from '../../../zero-schema/src/normalize-table-schema.js';
|
|
3
|
+
import { type PullSchemaForRelationship, type TableSchema, type TableSchemaToRow } from '../../../zero-schema/src/table-schema.js';
|
|
2
4
|
import { type BuilderDelegate } from '../builder/builder.js';
|
|
3
5
|
import type { Format, ViewFactory } from '../ivm/view.js';
|
|
4
|
-
import { type
|
|
6
|
+
import { type ExpressionFactory } from './expression.js';
|
|
5
7
|
import type { AdvancedQuery } from './query-internal.js';
|
|
6
|
-
import type {
|
|
7
|
-
import { type PullSchemaForRelationship, type TableSchema } from './schema.js';
|
|
8
|
+
import type { AddSubselect, DefaultQueryResultRow, GetFieldTypeNoUndefined, MakeSingular, Operator, Parameter, Query, QueryType, Smash } from './query.js';
|
|
8
9
|
import type { TypedView } from './typed-view.js';
|
|
9
|
-
import { type GenericCondition } from './expression.js';
|
|
10
10
|
export declare function newQuery<TSchema extends TableSchema, TReturn extends QueryType = DefaultQueryResultRow<TSchema>>(delegate: QueryDelegate, tableSchema: TSchema): Query<TSchema, TReturn>;
|
|
11
11
|
export type CommitListener = () => void;
|
|
12
12
|
export type GotCallback = (got: boolean) => void;
|
|
@@ -16,17 +16,18 @@ export interface QueryDelegate extends BuilderDelegate {
|
|
|
16
16
|
batchViewUpdates<T>(applyViewUpdates: () => T): T;
|
|
17
17
|
}
|
|
18
18
|
export declare function staticParam<TAnchor, TField extends keyof TAnchor>(anchorClass: 'authData' | 'preMutationRow', field: TField): Parameter<TAnchor, TField, TAnchor[TField]>;
|
|
19
|
+
export declare const SUBQ_PREFIX = "zsubq_";
|
|
19
20
|
export declare abstract class AbstractQuery<TSchema extends TableSchema, TReturn extends QueryType = DefaultQueryResultRow<TSchema>> implements AdvancedQuery<TSchema, TReturn> {
|
|
20
21
|
#private;
|
|
21
22
|
constructor(schema: NormalizedTableSchema, ast: AST, format?: Format | undefined);
|
|
22
23
|
get format(): Format;
|
|
23
24
|
hash(): string;
|
|
24
|
-
select<TFields extends Selector<TSchema>[]>(..._fields: TFields): Query<TSchema, AddSelections<TSchema, TFields, TReturn>>;
|
|
25
25
|
protected abstract _newQuery<TSchema extends TableSchema, TReturn extends QueryType>(schema: NormalizedTableSchema, ast: AST, format: Format | undefined): Query<TSchema, TReturn>;
|
|
26
26
|
one(): Query<TSchema, MakeSingular<TReturn>>;
|
|
27
|
+
whereExists(relationship: keyof TSchema['relationships']): Query<TSchema, TReturn>;
|
|
27
28
|
related<TRelationship extends keyof TSchema['relationships']>(relationship: TRelationship): Query<TSchema, AddSubselect<Query<PullSchemaForRelationship<TSchema, TRelationship>, DefaultQueryResultRow<PullSchemaForRelationship<TSchema, TRelationship>>>, TReturn, TRelationship & string>>;
|
|
28
|
-
where(
|
|
29
|
-
start(row: Partial<
|
|
29
|
+
where(fieldOrExpressionFactory: string | ExpressionFactory<TSchema>, opOrValue?: Operator | GetFieldTypeNoUndefined<any, any, any> | Parameter<any, any, any>, value?: GetFieldTypeNoUndefined<any, any, any> | Parameter<any, any, any>): Query<TSchema, TReturn>;
|
|
30
|
+
start(row: Partial<TableSchemaToRow<TSchema>>, opts?: {
|
|
30
31
|
inclusive: boolean;
|
|
31
32
|
} | undefined): Query<TSchema, TReturn>;
|
|
32
33
|
limit(limit: number): Query<TSchema, TReturn>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query-impl.d.ts","sourceRoot":"","sources":["../../../../../zql/src/query/query-impl.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Format, ViewFactory } from '../ivm/view.js';
|
|
2
2
|
import type { DefaultQueryResultRow, Query, QueryType, Smash } from './query.js';
|
|
3
|
-
import type { TableSchema } from '
|
|
3
|
+
import type { TableSchema } from '../../../zero-schema/src/table-schema.js';
|
|
4
4
|
import type { TypedView } from './typed-view.js';
|
|
5
5
|
export interface AdvancedQuery<TSchema extends TableSchema, TReturn extends QueryType = DefaultQueryResultRow<TSchema>> extends Query<TSchema, TReturn> {
|
|
6
6
|
materialize(): TypedView<Smash<TReturn>>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query-internal.d.ts","sourceRoot":"","sources":["../../../../../zql/src/query/query-internal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,MAAM,EAAE,WAAW,EAAC,MAAM,gBAAgB,CAAC;AACxD,OAAO,KAAK,EAAC,qBAAqB,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAC,MAAM,YAAY,CAAC;AAC/E,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,0CAA0C,CAAC;AAC1E,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAE/C,MAAM,WAAW,aAAa,CAC5B,OAAO,SAAS,WAAW,EAC3B,OAAO,SAAS,SAAS,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAC1D,SAAQ,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC;IAC/B,WAAW,IAAI,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IACzC,WAAW,CAAC,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;IAC7D,IAAI,MAAM,IAAI,MAAM,CAAC;IACrB,IAAI,IAAI,MAAM,CAAC;CAChB"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import type { Expand } from '../../../shared/src/expand.js';
|
|
2
|
+
import type { Row } from '../../../zero-protocol/src/data.js';
|
|
3
|
+
import type { PullSchemaForRelationship, SchemaValueToTSType, TableSchema, TableSchemaToRow } from '../../../zero-schema/src/table-schema.js';
|
|
4
|
+
import type { Source } from '../ivm/source.js';
|
|
5
|
+
import type { ExpressionFactory } from './expression.js';
|
|
6
|
+
import type { TypedView } from './typed-view.js';
|
|
7
|
+
/**
|
|
8
|
+
* The type that can be passed into `select()`. A selector
|
|
9
|
+
* references a field on an row.
|
|
10
|
+
*/
|
|
11
|
+
export type Selector<E extends TableSchema> = keyof E['columns'];
|
|
12
|
+
export type NoJsonSelector<T extends TableSchema> = Exclude<Selector<T>, JsonSelectors<T>>;
|
|
13
|
+
type JsonSelectors<E extends TableSchema> = {
|
|
14
|
+
[K in keyof E['columns']]: E['columns'][K] extends {
|
|
15
|
+
type: 'json';
|
|
16
|
+
} ? K : never;
|
|
17
|
+
}[keyof E['columns']];
|
|
18
|
+
export type Context = {
|
|
19
|
+
getSource: (name: string) => Source;
|
|
20
|
+
createStorage: () => Storage;
|
|
21
|
+
};
|
|
22
|
+
export type Smash<T extends QueryType> = T['singular'] extends true ? SmashOne<T> | undefined : Array<SmashOne<T>>;
|
|
23
|
+
type SmashOne<T extends QueryType> = Expand<T['row'] & {
|
|
24
|
+
[K in keyof T['related']]: T['related'][K] extends QueryType ? Smash<T['related'][K]> : never;
|
|
25
|
+
}>;
|
|
26
|
+
export type GetFieldTypeNoUndefined<TSchema extends TableSchema, TColumn extends keyof TSchema['columns'], TOperator extends Operator> = TOperator extends 'IN' | 'NOT IN' ? Exclude<SchemaValueToTSType<TSchema['columns'][TColumn]>, null | undefined>[] : Exclude<SchemaValueToTSType<TSchema['columns'][TColumn]>, undefined>;
|
|
27
|
+
export type QueryReturnType<T extends Query<TableSchema>> = T extends Query<TableSchema, infer TReturn> ? Smash<TReturn> : never;
|
|
28
|
+
export type QueryRowType<T extends Query<TableSchema>> = T extends Query<TableSchema, infer TReturn> ? SmashOne<TReturn> : never;
|
|
29
|
+
export type AddSubselect<TSubquery extends Query<TableSchema, QueryType>, TReturn extends QueryType, TAs extends string> = {
|
|
30
|
+
row: TReturn['row'];
|
|
31
|
+
related: {
|
|
32
|
+
[K in TAs]: InferSubreturn<TSubquery>;
|
|
33
|
+
} & TReturn['related'];
|
|
34
|
+
singular: TReturn['singular'];
|
|
35
|
+
};
|
|
36
|
+
export type MakeSingular<TReturn extends QueryType> = {
|
|
37
|
+
row: TReturn['row'];
|
|
38
|
+
related: TReturn['related'];
|
|
39
|
+
singular: true;
|
|
40
|
+
};
|
|
41
|
+
type InferSubreturn<TSubquery extends Query<TableSchema, QueryType>> = TSubquery extends Query<TableSchema, infer TSubreturn> ? TSubreturn : never;
|
|
42
|
+
/**
|
|
43
|
+
* Encodes the internal "type" of the query. This is different than the schema,
|
|
44
|
+
* and different than the result type. The schema is the input type from the
|
|
45
|
+
* database of the table the query started from.
|
|
46
|
+
*
|
|
47
|
+
* The result type is the output type of the query after the 'row' and 'related'
|
|
48
|
+
* fields have been smashed down.
|
|
49
|
+
*/
|
|
50
|
+
export type QueryType = {
|
|
51
|
+
row: Row;
|
|
52
|
+
related: Record<string, QueryType>;
|
|
53
|
+
singular: boolean;
|
|
54
|
+
};
|
|
55
|
+
export type Operator = '=' | '!=' | '<' | '<=' | '>' | '>=' | 'IN' | 'NOT IN' | 'LIKE' | 'ILIKE' | 'IS' | 'IS NOT';
|
|
56
|
+
export type DefaultQueryResultRow<TSchema extends TableSchema> = {
|
|
57
|
+
row: TableSchemaToRow<TSchema>;
|
|
58
|
+
related: {};
|
|
59
|
+
singular: false;
|
|
60
|
+
};
|
|
61
|
+
export type Parameter<T, TField extends keyof T, _TReturn = T[TField]> = {
|
|
62
|
+
type: 'static';
|
|
63
|
+
anchor: 'authData' | 'preMutationRow';
|
|
64
|
+
field: TField;
|
|
65
|
+
};
|
|
66
|
+
export interface Query<TSchema extends TableSchema, TReturn extends QueryType = DefaultQueryResultRow<TSchema>> {
|
|
67
|
+
related<TRelationship extends keyof TSchema['relationships']>(relationship: TRelationship): Query<TSchema, AddSubselect<Query<PullSchemaForRelationship<TSchema, TRelationship>, DefaultQueryResultRow<PullSchemaForRelationship<TSchema, TRelationship>>>, TReturn, TRelationship & string>>;
|
|
68
|
+
related<TRelationship extends keyof TSchema['relationships'] & string, TSub extends Query<TableSchema, QueryType>>(relationship: TRelationship, cb: (query: Query<PullSchemaForRelationship<TSchema, TRelationship>, DefaultQueryResultRow<PullSchemaForRelationship<TSchema, TRelationship>>>) => TSub): Query<TSchema, AddSubselect<TSub, TReturn, TRelationship>>;
|
|
69
|
+
where<TSelector extends NoJsonSelector<TSchema>, TOperator extends Operator, TParamAnchor = never, TParamField extends keyof TParamAnchor = never, TParamTypeBound extends GetFieldTypeNoUndefined<TSchema, TSelector, TOperator> = never>(field: TSelector, op: TOperator, value: GetFieldTypeNoUndefined<TSchema, TSelector, TOperator> | Parameter<TParamAnchor, TParamField, TParamTypeBound>): Query<TSchema, TReturn>;
|
|
70
|
+
where<TSelector extends NoJsonSelector<TSchema>, TParamAnchor = never, TParamField extends keyof TParamAnchor = never, TParamTypeBound extends GetFieldTypeNoUndefined<TSchema, TSelector, '='> = never>(field: TSelector, value: GetFieldTypeNoUndefined<TSchema, TSelector, '='> | Parameter<TParamAnchor, TParamField, TParamTypeBound>): Query<TSchema, TReturn>;
|
|
71
|
+
where(expressionFactory: ExpressionFactory<TSchema>): Query<TSchema, TReturn>;
|
|
72
|
+
whereExists(relationship: keyof TSchema['relationships']): Query<TSchema, TReturn>;
|
|
73
|
+
whereExists<TRelationship extends keyof TSchema['relationships'] & string>(relationship: TRelationship, cb: (query: Query<PullSchemaForRelationship<TSchema, TRelationship>, DefaultQueryResultRow<PullSchemaForRelationship<TSchema, TRelationship>>>) => Query<TableSchema, QueryType>): Query<TSchema, TReturn>;
|
|
74
|
+
start(row: Partial<TableSchemaToRow<TSchema>>, opts?: {
|
|
75
|
+
inclusive: boolean;
|
|
76
|
+
} | undefined): Query<TSchema, TReturn>;
|
|
77
|
+
limit(limit: number): Query<TSchema, TReturn>;
|
|
78
|
+
orderBy<TSelector extends Selector<TSchema>>(field: TSelector, direction: 'asc' | 'desc'): Query<TSchema, TReturn>;
|
|
79
|
+
one(): Query<TSchema, MakeSingular<TReturn>>;
|
|
80
|
+
/**
|
|
81
|
+
* Materialize the query. This will run the query and return a view that
|
|
82
|
+
* will update as the query updates. Incremental updates are typically very
|
|
83
|
+
* cheap.
|
|
84
|
+
*/
|
|
85
|
+
materialize(): TypedView<Smash<TReturn>>;
|
|
86
|
+
/**
|
|
87
|
+
* Run the query one time and return the result. This should only be used
|
|
88
|
+
* when a query is indeed needed only once. If the query will be run multiple
|
|
89
|
+
* times, use `materialize()` instead, as it is far cheaper for the updates.
|
|
90
|
+
*/
|
|
91
|
+
run(): Smash<TReturn>;
|
|
92
|
+
preload(): {
|
|
93
|
+
cleanup: () => void;
|
|
94
|
+
complete: Promise<void>;
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
export {};
|
|
98
|
+
//# sourceMappingURL=query.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../../../zql/src/query/query.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Immutable } from '
|
|
1
|
+
import type { Immutable } from '../../../shared/src/immutable.js';
|
|
2
2
|
/**
|
|
3
3
|
* Called when the view changes. The received data should be considered
|
|
4
4
|
* immutable. Caller must not modify it. Passed data is valid until next
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typed-view.d.ts","sourceRoot":"","sources":["../../../../../zql/src/query/typed-view.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,kCAAkC,CAAC;AAEhE;;;;GAIG;AACH,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;AAEvD,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI;IACzB,WAAW,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,CAAC;IAC/C,OAAO,IAAI,IAAI,CAAC;IAChB,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;CAClB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../../../../zqlite/src/db.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AACjD,OAAO,eAAe,EAAE,EACtB,KAAK,SAAS,EACd,KAAK,SAAS,IAAI,gBAAgB,
|
|
1
|
+
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../../../../zqlite/src/db.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AACjD,OAAO,eAAe,EAAE,EACtB,KAAK,SAAS,EACd,KAAK,SAAS,IAAI,gBAAgB,EAEnC,MAAM,wBAAwB,CAAC;AAEhC,qBAAa,QAAQ;;gBAMjB,EAAE,EAAE,UAAU,EACd,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,eAAe,CAAC,OAAO,EACjC,kBAAkB,SAAM;IAO1B,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS;IAa/B,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAIvB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAsB5B,KAAK,IAAI,IAAI;IAIb,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC;IAI9B,IAAI,IAAI,WAEP;IAED,IAAI,aAAa,YAEhB;CACF;AAED,qBAAa,SAAS;;gBAKR,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM;IAMrE,YAAY,CAAC,SAAS,EAAE,OAAO,GAAG,IAAI;IAKtC,GAAG,CAAC,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,SAAS;IAWpC,GAAG,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,CAAC;IAW/B,GAAG,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE;IAWjC,OAAO,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,gBAAgB,CAAC,CAAC,CAAC;CAOtD"}
|
package/out/zqlite/src/db.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import SQLite3Database, {} from '@rocicorp/zero-sqlite3';
|
|
1
|
+
import SQLite3Database, { SqliteError, } from '@rocicorp/zero-sqlite3';
|
|
2
2
|
export class Database {
|
|
3
3
|
#db;
|
|
4
4
|
#lc;
|
|
@@ -9,15 +9,28 @@ export class Database {
|
|
|
9
9
|
this.#threshold = slowQueryThreshold;
|
|
10
10
|
}
|
|
11
11
|
prepare(sql) {
|
|
12
|
-
return new Statement(this.#lc.withContext('class', 'Statement').withContext('sql', sql), this.#db.prepare(sql), this.#threshold);
|
|
12
|
+
return this.#run('prepare', sql, () => new Statement(this.#lc.withContext('class', 'Statement').withContext('sql', sql), this.#db.prepare(sql), this.#threshold));
|
|
13
13
|
}
|
|
14
14
|
exec(sql) {
|
|
15
|
-
|
|
16
|
-
this.#db.exec(sql);
|
|
17
|
-
logIfSlow(performance.now() - start, this.#lc.withContext('method', 'exec'), this.#threshold);
|
|
15
|
+
this.#run('exec', sql, () => this.#db.exec(sql));
|
|
18
16
|
}
|
|
19
17
|
pragma(sql) {
|
|
20
|
-
return this.#db.pragma(sql);
|
|
18
|
+
return this.#run('pragma', sql, () => this.#db.pragma(sql));
|
|
19
|
+
}
|
|
20
|
+
#run(method, sql, fn) {
|
|
21
|
+
const start = performance.now();
|
|
22
|
+
try {
|
|
23
|
+
return fn();
|
|
24
|
+
}
|
|
25
|
+
catch (e) {
|
|
26
|
+
if (e instanceof SqliteError) {
|
|
27
|
+
e.message += `: ${sql}`;
|
|
28
|
+
}
|
|
29
|
+
throw e;
|
|
30
|
+
}
|
|
31
|
+
finally {
|
|
32
|
+
logIfSlow(performance.now() - start, this.#lc.withContext('method', method), this.#threshold);
|
|
33
|
+
}
|
|
21
34
|
}
|
|
22
35
|
close() {
|
|
23
36
|
this.#db.close();
|
package/out/zqlite/src/db.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.js","sourceRoot":"","sources":["../../../../zqlite/src/db.ts"],"names":[],"mappings":"AACA,OAAO,eAAe,EAAE,
|
|
1
|
+
{"version":3,"file":"db.js","sourceRoot":"","sources":["../../../../zqlite/src/db.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { SQLQuery } from '@databases/sql';
|
|
2
|
+
import type { Condition, Ordering, SimpleCondition } from '../../zero-protocol/src/ast.js';
|
|
2
3
|
import type { Row } from '../../zero-protocol/src/data.js';
|
|
3
|
-
import type {
|
|
4
|
-
import type { Source, SourceChange, SourceInput } from '../../zql/src/zql/ivm/source.js';
|
|
4
|
+
import type { Source, SourceChange, SourceInput } from '../../zql/src/ivm/source.js';
|
|
5
5
|
import { Database } from './db.js';
|
|
6
|
+
import type { SchemaValue, ValueType } from '../../zero-schema/src/table-schema.js';
|
|
6
7
|
/**
|
|
7
8
|
* A source that is backed by a SQLite table.
|
|
8
9
|
*
|
|
@@ -37,7 +38,27 @@ export declare class TableSource implements Source {
|
|
|
37
38
|
*/
|
|
38
39
|
getRow(pk: Row): Row | undefined;
|
|
39
40
|
}
|
|
41
|
+
/**
|
|
42
|
+
* This applies all filters present in the AST for a query to the source.
|
|
43
|
+
* This will work until subquery filters are added
|
|
44
|
+
* at which point either:
|
|
45
|
+
* a. we move optional filters to connect
|
|
46
|
+
* b. we do the transform of removing subquery filters from optionalFilters while
|
|
47
|
+
* preserving the meaning of the filters.
|
|
48
|
+
*
|
|
49
|
+
* https://www.notion.so/replicache/Optional-Filters-OR-1303bed895458013a26ee5aafd5725d2
|
|
50
|
+
*/
|
|
51
|
+
export declare function optionalFiltersToSQL(filters: NoSubqueryCondition, columnTypes: Record<string, SchemaValue>): SQLQuery;
|
|
52
|
+
export declare function toSQLiteTypeName(type: ValueType): "INTEGER" | "REAL" | "TEXT" | "NULL";
|
|
40
53
|
export declare class UnsupportedValueError extends Error {
|
|
41
54
|
constructor(msg: string);
|
|
42
55
|
}
|
|
56
|
+
type NoSubqueryCondition = SimpleCondition | {
|
|
57
|
+
type: 'and';
|
|
58
|
+
conditions: readonly NoSubqueryCondition[];
|
|
59
|
+
} | {
|
|
60
|
+
type: 'or';
|
|
61
|
+
conditions: readonly NoSubqueryCondition[];
|
|
62
|
+
};
|
|
63
|
+
export {};
|
|
43
64
|
//# sourceMappingURL=table-source.d.ts.map
|