@pyric/cli 0.1.0-alpha.14 → 0.1.0-alpha.15
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/dist/assurance/.generated/conformance-verdicts.d.ts +120 -75
- package/dist/assurance/.generated/conformance-verdicts.d.ts.map +1 -1
- package/dist/assurance/.generated/conformance-verdicts.js +120 -75
- package/dist/assurance/.generated/conformance-verdicts.js.map +1 -1
- package/dist/cli/serve.d.ts +1 -1
- package/dist/cli/serve.d.ts.map +1 -1
- package/dist/cli/serve.js +207 -284
- package/dist/cli/serve.js.map +1 -1
- package/dist/cli/service-command-records/database-rules-generate.d.ts +4 -0
- package/dist/cli/service-command-records/database-rules-generate.d.ts.map +1 -0
- package/dist/cli/service-command-records/database-rules-generate.js +3 -0
- package/dist/cli/service-command-records/database-rules-generate.js.map +1 -0
- package/dist/cli/service-command-records/database-rules-lint.d.ts +4 -0
- package/dist/cli/service-command-records/database-rules-lint.d.ts.map +1 -0
- package/dist/cli/service-command-records/database-rules-lint.js +3 -0
- package/dist/cli/service-command-records/database-rules-lint.js.map +1 -0
- package/dist/cli/service-command-records/database-rules-simulate.d.ts +4 -0
- package/dist/cli/service-command-records/database-rules-simulate.d.ts.map +1 -0
- package/dist/cli/service-command-records/database-rules-simulate.js +3 -0
- package/dist/cli/service-command-records/database-rules-simulate.js.map +1 -0
- package/dist/cli/service-command-records/database-rules-validate.d.ts +4 -0
- package/dist/cli/service-command-records/database-rules-validate.d.ts.map +1 -0
- package/dist/cli/service-command-records/database-rules-validate.js +3 -0
- package/dist/cli/service-command-records/database-rules-validate.js.map +1 -0
- package/dist/cli/service-command-records/firestore-indexes-generate.d.ts +4 -0
- package/dist/cli/service-command-records/firestore-indexes-generate.d.ts.map +1 -0
- package/dist/cli/service-command-records/firestore-indexes-generate.js +3 -0
- package/dist/cli/service-command-records/firestore-indexes-generate.js.map +1 -0
- package/dist/cli/service-command-records/firestore-rules-lint.d.ts +4 -0
- package/dist/cli/service-command-records/firestore-rules-lint.d.ts.map +1 -0
- package/dist/cli/service-command-records/firestore-rules-lint.js +3 -0
- package/dist/cli/service-command-records/firestore-rules-lint.js.map +1 -0
- package/dist/cli/service-command-records/firestore-rules-resolve.d.ts +4 -0
- package/dist/cli/service-command-records/firestore-rules-resolve.d.ts.map +1 -0
- package/dist/cli/service-command-records/firestore-rules-resolve.js +3 -0
- package/dist/cli/service-command-records/firestore-rules-resolve.js.map +1 -0
- package/dist/cli/service-command-records/firestore-rules-simulate.d.ts +4 -0
- package/dist/cli/service-command-records/firestore-rules-simulate.d.ts.map +1 -0
- package/dist/cli/service-command-records/firestore-rules-simulate.js +3 -0
- package/dist/cli/service-command-records/firestore-rules-simulate.js.map +1 -0
- package/dist/cli/service-command-records/firestore-rules-validate.d.ts +4 -0
- package/dist/cli/service-command-records/firestore-rules-validate.d.ts.map +1 -0
- package/dist/cli/service-command-records/firestore-rules-validate.js +3 -0
- package/dist/cli/service-command-records/firestore-rules-validate.js.map +1 -0
- package/dist/cli/service-command-records/storage-rules-lint.d.ts +4 -0
- package/dist/cli/service-command-records/storage-rules-lint.d.ts.map +1 -0
- package/dist/cli/service-command-records/storage-rules-lint.js +3 -0
- package/dist/cli/service-command-records/storage-rules-lint.js.map +1 -0
- package/dist/cli/service-command-records/storage-rules-simulate.d.ts +4 -0
- package/dist/cli/service-command-records/storage-rules-simulate.d.ts.map +1 -0
- package/dist/cli/service-command-records/storage-rules-simulate.js +3 -0
- package/dist/cli/service-command-records/storage-rules-simulate.js.map +1 -0
- package/dist/cli/service-commands.d.ts +7 -0
- package/dist/cli/service-commands.d.ts.map +1 -1
- package/dist/cli/service-commands.generated.d.ts +35 -0
- package/dist/cli/service-commands.generated.d.ts.map +1 -0
- package/dist/cli/service-commands.generated.js +25 -0
- package/dist/cli/service-commands.generated.js.map +1 -0
- package/dist/cli/service-commands.js +23 -40
- package/dist/cli/service-commands.js.map +1 -1
- package/dist/conformance/.generated/can-i-use-browser.d.ts.map +1 -1
- package/dist/conformance/.generated/can-i-use-browser.js +1 -1
- package/dist/conformance/.generated/can-i-use-browser.js.map +1 -1
- package/dist/conformance/.generated/can-i-use.d.ts.map +1 -1
- package/dist/conformance/.generated/can-i-use.js +1 -1
- package/dist/conformance/.generated/can-i-use.js.map +1 -1
- package/dist/conformance/.generated/conformance-docs.d.ts.map +1 -1
- package/dist/conformance/.generated/conformance-docs.js +1 -1
- package/dist/conformance/.generated/conformance-docs.js.map +1 -1
- package/dist/functions-rtdb/development-runtime.d.ts +63 -0
- package/dist/functions-rtdb/development-runtime.d.ts.map +1 -0
- package/dist/functions-rtdb/development-runtime.js +244 -0
- package/dist/functions-rtdb/development-runtime.js.map +1 -0
- package/dist/serve/bridge-mount.d.ts +32 -2
- package/dist/serve/bridge-mount.d.ts.map +1 -1
- package/dist/serve/bridge-mount.js +232 -18
- package/dist/serve/bridge-mount.js.map +1 -1
- package/dist/serve/bundler.d.ts +2 -18
- package/dist/serve/bundler.d.ts.map +1 -1
- package/dist/serve/bundler.js +7 -35
- package/dist/serve/bundler.js.map +1 -1
- package/dist/serve/entries/app-client.d.ts.map +1 -1
- package/dist/serve/entries/app-client.js +5 -5
- package/dist/serve/entries/app-client.js.map +1 -1
- package/dist/serve/entries/auth-helper-core.d.ts +23 -6
- package/dist/serve/entries/auth-helper-core.d.ts.map +1 -1
- package/dist/serve/entries/auth-helper-core.js +55 -24
- package/dist/serve/entries/auth-helper-core.js.map +1 -1
- package/dist/serve/entries/database.d.ts +28 -0
- package/dist/serve/entries/database.d.ts.map +1 -1
- package/dist/serve/entries/database.js +95 -26
- package/dist/serve/entries/database.js.map +1 -1
- package/dist/serve/entries/init.d.ts.map +1 -1
- package/dist/serve/entries/init.js +21 -12
- package/dist/serve/entries/init.js.map +1 -1
- package/dist/serve/html-injection.d.ts +5 -0
- package/dist/serve/html-injection.d.ts.map +1 -0
- package/dist/serve/html-injection.js +59 -0
- package/dist/serve/html-injection.js.map +1 -0
- package/dist/serve/namespace.d.ts +6 -22
- package/dist/serve/namespace.d.ts.map +1 -1
- package/dist/serve/namespace.js +23 -145
- package/dist/serve/namespace.js.map +1 -1
- package/dist/serve/runtime/worker-replacement.d.ts +1 -2
- package/dist/serve/runtime/worker-replacement.d.ts.map +1 -1
- package/dist/serve/sandbox-session.d.ts +78 -0
- package/dist/serve/sandbox-session.d.ts.map +1 -0
- package/dist/serve/sandbox-session.js +171 -0
- package/dist/serve/sandbox-session.js.map +1 -0
- package/dist/serve/server.d.ts +5 -2
- package/dist/serve/server.d.ts.map +1 -1
- package/dist/serve/server.js +21 -5
- package/dist/serve/server.js.map +1 -1
- package/dist/serve/site-tree.d.ts +8 -0
- package/dist/serve/site-tree.d.ts.map +1 -0
- package/dist/serve/site-tree.js +113 -0
- package/dist/serve/site-tree.js.map +1 -0
- package/dist/serve/site-ui/_astro/RulesCodeEditor.CzwHdCi9.js +23 -0
- package/dist/serve/site-ui/_astro/_example_.jevZ7OdV.css +1 -0
- package/dist/serve/site-ui/_astro/_slug_.BoKXYrnu.css +1 -0
- package/dist/serve/site-ui/_astro/_studio_.BtYpqe1A.css +1 -0
- package/dist/serve/site-ui/_astro/app.BnMC0ywl.js +109 -0
- package/dist/serve/site-ui/_astro/app.BsFsMjn0.css +1 -0
- package/dist/serve/site-ui/_astro/app.DVXXR-WI.js +1 -0
- package/dist/serve/site-ui/_astro/chess-showcase.DzPO6kz0.js +1 -0
- package/dist/serve/site-ui/_astro/chess-source-explorer.C5k9c5yK.js +1 -0
- package/dist/serve/site-ui/_astro/chess-v2.CFHmd3UL.js +354 -0
- package/dist/serve/site-ui/_astro/client.D2ORs4B-.js +25 -0
- package/dist/serve/site-ui/_astro/example-runtime.CM0H02rx.js +291 -0
- package/dist/serve/site-ui/_astro/index.B4Kh80he.js +1 -0
- package/dist/serve/site-ui/_astro/index.DBy5LfQW.js +9 -0
- package/dist/serve/site-ui/_astro/index.DNyk7q8W.js +9 -0
- package/dist/serve/site-ui/_astro/jsx-runtime.D_zvdyIk.js +9 -0
- package/dist/serve/site-ui/_astro/reads.D1exkX1-.js +1 -0
- package/dist/serve/site-ui/_astro/sandbox-controls.BqMePr5V.js +1153 -0
- package/dist/serve/site-ui/_astro/seed.BCn5DhHS.js +20 -0
- package/dist/serve/site-ui/auth/index.html +11 -0
- package/dist/serve/site-ui/docs/_rhythm/index.html +100 -0
- package/dist/serve/site-ui/docs/agent/set-up-your-agent/index.html +43 -0
- package/dist/serve/site-ui/docs/agent/watch-and-review/index.html +26 -0
- package/dist/serve/site-ui/docs/agent/work-with-an-agent/index.html +70 -0
- package/dist/serve/{docs-ui → site-ui}/docs/ai-compat/index.html +3 -3
- package/dist/serve/site-ui/docs/api-reference/index.html +68 -0
- package/dist/serve/{docs-ui → site-ui}/docs/app-compat/index.html +3 -3
- package/dist/serve/{docs-ui → site-ui}/docs/auth-compat/index.html +3 -3
- package/dist/serve/site-ui/docs/build/ai-logic/index.html +64 -0
- package/dist/serve/site-ui/docs/build/authentication/index.html +66 -0
- package/dist/serve/site-ui/docs/build/cloud-firestore/index.html +84 -0
- package/dist/serve/site-ui/docs/build/cloud-messaging/index.html +71 -0
- package/dist/serve/site-ui/docs/build/cloud-storage/index.html +66 -0
- package/dist/serve/{docs-ui → site-ui}/docs/build/cloud-storage.md +2 -2
- package/dist/serve/site-ui/docs/build/realtime-database/index.html +67 -0
- package/dist/serve/site-ui/docs/conformance-scores/index.html +50 -0
- package/dist/serve/{docs-ui → site-ui}/docs/conformance-scores.md +3 -3
- package/dist/serve/site-ui/docs/create-pyric-reference-api/index.html +531 -0
- package/dist/serve/{docs-ui → site-ui}/docs/database-compat/index.html +211 -168
- package/dist/serve/{docs-ui → site-ui}/docs/database-compat.md +208 -170
- package/dist/serve/site-ui/docs/examples/chess/index.html +384 -0
- package/dist/serve/site-ui/docs/examples/chess.md +57 -0
- package/dist/serve/site-ui/docs/examples/index.html +3 -0
- package/dist/serve/site-ui/docs/examples.md +4 -0
- package/dist/serve/{docs-ui → site-ui}/docs/firestore-compat/index.html +55 -91
- package/dist/serve/{docs-ui → site-ui}/docs/firestore-compat.md +52 -88
- package/dist/serve/site-ui/docs/functions-rtdb-compat/index.html +73 -0
- package/dist/serve/site-ui/docs/get-started/how-the-swap-works/index.html +29 -0
- package/dist/serve/site-ui/docs/get-started/start-building/index.html +33 -0
- package/dist/serve/{docs-ui → site-ui}/docs/index.json +595 -26
- package/dist/serve/site-ui/docs/messaging-compat/index.html +324 -0
- package/dist/serve/{docs-ui → site-ui}/docs/messaging-compat.md +71 -1
- package/dist/serve/site-ui/docs/observe/resolve-runtime-status/index.html +28 -0
- package/dist/serve/site-ui/docs/observe/see-whats-happening/index.html +74 -0
- package/dist/serve/site-ui/docs/observe/shape-your-data/index.html +45 -0
- package/dist/serve/site-ui/docs/overview/index.html +17 -0
- package/dist/serve/site-ui/docs/pyric-admin-app-reference-api/index.html +186 -0
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-admin-auth-reference-api/index.html +4 -4
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-admin-database-reference-api/index.html +4 -4
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-admin-firestore-reference-api/index.html +318 -202
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-admin-firestore-reference-api.md +154 -27
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-admin-messaging-reference-api/index.html +5 -5
- package/dist/serve/site-ui/docs/pyric-admin-storage-reference-api/index.html +318 -0
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-ai-reference-api/index.html +5 -5
- package/dist/serve/site-ui/docs/pyric-ai-scripting-reference-api/index.html +160 -0
- package/dist/serve/site-ui/docs/pyric-app-reference-api/index.html +425 -0
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-auth-reference-api/index.html +5 -5
- package/dist/serve/site-ui/docs/pyric-cli-assurance-browser-reference-api/index.html +60 -0
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-cli-assurance-reference-api/index.html +4 -4
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-cli-bridge-client-reference-api/index.html +4 -4
- package/dist/serve/site-ui/docs/pyric-cli-bridge-reference-api/index.html +507 -0
- package/dist/serve/site-ui/docs/pyric-cli-conformance-browser-reference-api/index.html +258 -0
- package/dist/serve/site-ui/docs/pyric-cli-conformance-docs-reference-api/index.html +51 -0
- package/dist/serve/site-ui/docs/pyric-cli-conformance-reference-api/index.html +308 -0
- package/dist/serve/site-ui/docs/pyric-cli-credentials-node-reference-api/index.html +68 -0
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-cli-discover-reference-api/index.html +4 -4
- package/dist/serve/site-ui/docs/pyric-cli-register-reference-api/index.html +11 -0
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-cli-remote-reference-api/index.html +4 -4
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-cli-serve-worker-reference-api/index.html +1186 -1384
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-cli-serve-worker-reference-api.md +817 -1291
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-cli-verify-reference-api/index.html +4 -4
- package/dist/serve/site-ui/docs/pyric-cli-vite-reference-api/index.html +126 -0
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-cli-vite-reference-api.md +1 -1
- package/dist/serve/site-ui/docs/pyric-database-reference-api/index.html +2641 -0
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-database-reference-api.md +1055 -158
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-firestore-reference-api/index.html +311 -249
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-firestore-reference-api.md +72 -54
- package/dist/serve/site-ui/docs/pyric-messaging-reference-api/index.html +509 -0
- package/dist/serve/site-ui/docs/pyric-messaging-sw-reference-api/index.html +182 -0
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-rules-reference-api/index.html +7 -26
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-rules-reference-api.md +13 -23
- package/dist/serve/site-ui/docs/pyric-sandbox-database-reference-api/index.html +121 -0
- package/dist/serve/site-ui/docs/pyric-sandbox-firestore-reference-api/index.html +203 -0
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-sandbox-reference-api/index.html +26 -5
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-sandbox-reference-api.md +22 -22
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-storage-reference-api/index.html +5 -15
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-storage-reference-api.md +0 -13
- package/dist/serve/site-ui/docs/pyric-ui-agents-reference-api/index.html +639 -0
- package/dist/serve/site-ui/docs/pyric-ui-auth-hooks-reference-api/index.html +100 -0
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-ui-auth-reference-api/index.html +4 -4
- package/dist/serve/site-ui/docs/pyric-ui-events-hooks-reference-api/index.html +24 -0
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-ui-events-reference-api/index.html +4 -4
- package/dist/serve/site-ui/docs/pyric-ui-firestore-hooks-reference-api/index.html +136 -0
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-ui-firestore-reference-api/index.html +7 -7
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-ui-firestore-reference-api.md +4 -4
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-ui-primitives-reference-api/index.html +4 -4
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-ui-rtdb-reference-api/index.html +4 -4
- package/dist/serve/site-ui/docs/pyric-ui-rules-hooks-reference-api/index.html +16 -0
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-ui-rules-reference-api/index.html +4 -4
- package/dist/serve/site-ui/docs/pyric-ui-storage-hooks-reference-api/index.html +176 -0
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-ui-storage-reference-api/index.html +10 -11
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-ui-storage-reference-api.md +7 -8
- package/dist/serve/site-ui/docs/pyric-ui-traffic-hooks-reference-api/index.html +188 -0
- package/dist/serve/{docs-ui → site-ui}/docs/pyric-ui-traffic-reference-api/index.html +4 -4
- package/dist/serve/{docs-ui → site-ui}/docs/rules-compat/index.html +87 -57
- package/dist/serve/{docs-ui → site-ui}/docs/rules-compat.md +84 -54
- package/dist/serve/site-ui/docs/secure/audit-your-rules/index.html +51 -0
- package/dist/serve/site-ui/docs/secure/firestore-rules-limits/index.html +106 -0
- package/dist/serve/site-ui/docs/secure/read-a-denial/index.html +41 -0
- package/dist/serve/site-ui/docs/secure/rtdb-rules-in-typescript/index.html +67 -0
- package/dist/serve/site-ui/docs/secure/rules-standard-library/index.html +159 -0
- package/dist/serve/{docs-ui → site-ui}/docs/secure/rules-standard-library.md +2 -2
- package/dist/serve/site-ui/docs/secure/secure-it-with-rules/index.html +47 -0
- package/dist/serve/site-ui/docs/secure/simulate-and-lint/index.html +95 -0
- package/dist/serve/site-ui/docs/secure/write-a-rules-test-suite/index.html +82 -0
- package/dist/serve/site-ui/docs/ship/ship-to-production/index.html +37 -0
- package/dist/serve/site-ui/docs/ship/test-in-node/index.html +75 -0
- package/dist/serve/{docs-ui → site-ui}/docs/storage-compat/index.html +8 -8
- package/dist/serve/{docs-ui → site-ui}/docs/storage-compat.md +5 -5
- package/dist/serve/site-ui/docs/trust/how-we-know-it-matches-firebase/index.html +132 -0
- package/dist/serve/site-ui/docs/trust/rules-standard-library/index.html +861 -0
- package/dist/serve/site-ui/docs/trust/rules-standard-library.md +344 -0
- package/dist/serve/site-ui/docs/trust/storage-rules-stdlib-research/index.html +582 -0
- package/dist/serve/site-ui/docs/trust/storage-rules-stdlib-research.md +448 -0
- package/dist/serve/site-ui/docs/trust/versioning-and-compatibility/index.html +14 -0
- package/dist/serve/{docs-ui → site-ui}/docs/tutorial/index.html +4 -4
- package/dist/serve/{docs-ui → site-ui}/docs/tutorial.md +1 -1
- package/dist/serve/site-ui/examples/chess/index.html +2 -0
- package/dist/serve/site-ui/examples/firestore-first-write/index.html +2 -0
- package/dist/serve/site-ui/firestore/index.html +11 -0
- package/dist/serve/site-ui/index.html +11 -0
- package/dist/serve/{docs-ui → site-ui}/llms.txt +6 -2
- package/dist/serve/site-ui/rtdb/index.html +11 -0
- package/dist/serve/site-ui/settings/index.html +11 -0
- package/dist/serve/site-ui/storage/index.html +11 -0
- package/dist/serve/site-ui/studio-routes.json +1 -0
- package/dist/serve/site-ui/traffic/index.html +11 -0
- package/dist/serve/standalone-assets.d.ts +4 -10
- package/dist/serve/standalone-assets.d.ts.map +1 -1
- package/dist/serve/standalone-assets.js +8 -21
- package/dist/serve/standalone-assets.js.map +1 -1
- package/dist/serve/vite-functions-development.d.ts +29 -0
- package/dist/serve/vite-functions-development.d.ts.map +1 -0
- package/dist/serve/vite-functions-development.js +150 -0
- package/dist/serve/vite-functions-development.js.map +1 -0
- package/dist/serve/vite-generation-bridge.d.ts +17 -0
- package/dist/serve/vite-generation-bridge.d.ts.map +1 -0
- package/dist/serve/vite-generation-bridge.js +47 -0
- package/dist/serve/vite-generation-bridge.js.map +1 -0
- package/dist/serve/vite-generation-functions.d.ts +35 -0
- package/dist/serve/vite-generation-functions.d.ts.map +1 -0
- package/dist/serve/vite-generation-functions.js +46 -0
- package/dist/serve/vite-generation-functions.js.map +1 -0
- package/dist/serve/vite-generation-middleware.d.ts +10 -0
- package/dist/serve/vite-generation-middleware.d.ts.map +1 -0
- package/dist/serve/vite-generation-middleware.js +40 -0
- package/dist/serve/vite-generation-middleware.js.map +1 -0
- package/dist/serve/vite-generation-rules-watch.d.ts +8 -0
- package/dist/serve/vite-generation-rules-watch.d.ts.map +1 -0
- package/dist/serve/vite-generation-rules-watch.js +33 -0
- package/dist/serve/vite-generation-rules-watch.js.map +1 -0
- package/dist/serve/vite-module-swap.d.ts +16 -0
- package/dist/serve/vite-module-swap.d.ts.map +1 -0
- package/dist/serve/vite-module-swap.js +96 -0
- package/dist/serve/vite-module-swap.js.map +1 -0
- package/dist/serve/vite-page-runtime.d.ts +29 -0
- package/dist/serve/vite-page-runtime.d.ts.map +1 -0
- package/dist/serve/vite-page-runtime.js +71 -0
- package/dist/serve/vite-page-runtime.js.map +1 -0
- package/dist/serve/vite-plugin.d.ts +44 -4
- package/dist/serve/vite-plugin.d.ts.map +1 -1
- package/dist/serve/vite-plugin.js +62 -864
- package/dist/serve/vite-plugin.js.map +1 -1
- package/dist/serve/vite-sandbox-generation.d.ts +57 -0
- package/dist/serve/vite-sandbox-generation.d.ts.map +1 -0
- package/dist/serve/vite-sandbox-generation.js +178 -0
- package/dist/serve/vite-sandbox-generation.js.map +1 -0
- package/dist/serve/worker/client/disconnect.d.ts.map +1 -1
- package/dist/serve/worker/client/disconnect.js +2 -0
- package/dist/serve/worker/client/disconnect.js.map +1 -1
- package/dist/serve/worker/client/handles.d.ts +5 -0
- package/dist/serve/worker/client/handles.d.ts.map +1 -1
- package/dist/serve/worker/client/handles.js.map +1 -1
- package/dist/serve/worker/client/pagehide.d.ts +13 -0
- package/dist/serve/worker/client/pagehide.d.ts.map +1 -0
- package/dist/serve/worker/client/pagehide.js +19 -0
- package/dist/serve/worker/client/pagehide.js.map +1 -0
- package/dist/serve/worker/client/rtdb-admin.d.ts +8 -0
- package/dist/serve/worker/client/rtdb-admin.d.ts.map +1 -0
- package/dist/serve/worker/client/rtdb-admin.js +39 -0
- package/dist/serve/worker/client/rtdb-admin.js.map +1 -0
- package/dist/serve/worker/client/rtdb-connection-lifecycle.d.ts +15 -0
- package/dist/serve/worker/client/rtdb-connection-lifecycle.d.ts.map +1 -0
- package/dist/serve/worker/client/rtdb-connection-lifecycle.js +45 -0
- package/dist/serve/worker/client/rtdb-connection-lifecycle.js.map +1 -0
- package/dist/serve/worker/client/rtdb-controls.d.ts +6 -0
- package/dist/serve/worker/client/rtdb-controls.d.ts.map +1 -0
- package/dist/serve/worker/client/rtdb-controls.js +8 -0
- package/dist/serve/worker/client/rtdb-controls.js.map +1 -0
- package/dist/serve/worker/client/rtdb-listeners.d.ts +24 -0
- package/dist/serve/worker/client/rtdb-listeners.d.ts.map +1 -0
- package/dist/serve/worker/client/rtdb-listeners.js +262 -0
- package/dist/serve/worker/client/rtdb-listeners.js.map +1 -0
- package/dist/serve/worker/client/rtdb-reads.d.ts +4 -0
- package/dist/serve/worker/client/rtdb-reads.d.ts.map +1 -0
- package/dist/serve/worker/client/rtdb-reads.js +11 -0
- package/dist/serve/worker/client/rtdb-reads.js.map +1 -0
- package/dist/serve/worker/client/rtdb-references.d.ts +19 -0
- package/dist/serve/worker/client/rtdb-references.d.ts.map +1 -0
- package/dist/serve/worker/client/rtdb-references.js +63 -0
- package/dist/serve/worker/client/rtdb-references.js.map +1 -0
- package/dist/serve/worker/client/rtdb-snapshots.d.ts +20 -0
- package/dist/serve/worker/client/rtdb-snapshots.d.ts.map +1 -0
- package/dist/serve/worker/client/rtdb-snapshots.js +64 -0
- package/dist/serve/worker/client/rtdb-snapshots.js.map +1 -0
- package/dist/serve/worker/client/rtdb-transactions.d.ts +14 -0
- package/dist/serve/worker/client/rtdb-transactions.d.ts.map +1 -0
- package/dist/serve/worker/client/rtdb-transactions.js +34 -0
- package/dist/serve/worker/client/rtdb-transactions.js.map +1 -0
- package/dist/serve/worker/client/rtdb-writes.d.ts +8 -0
- package/dist/serve/worker/client/rtdb-writes.d.ts.map +1 -0
- package/dist/serve/worker/client/rtdb-writes.js +65 -0
- package/dist/serve/worker/client/rtdb-writes.js.map +1 -0
- package/dist/serve/worker/client.d.ts +0 -2
- package/dist/serve/worker/client.d.ts.map +1 -1
- package/dist/serve/worker/client.js +0 -2
- package/dist/serve/worker/client.js.map +1 -1
- package/dist/serve/worker/entry.js +2 -2
- package/dist/serve/worker/entry.js.map +1 -1
- package/dist/serve/worker/host/dispatch.d.ts +2 -0
- package/dist/serve/worker/host/dispatch.d.ts.map +1 -1
- package/dist/serve/worker/host/dispatch.js +24 -2
- package/dist/serve/worker/host/dispatch.js.map +1 -1
- package/dist/serve/worker/host/rtdb.d.ts +6 -2
- package/dist/serve/worker/host/rtdb.d.ts.map +1 -1
- package/dist/serve/worker/host/rtdb.js +224 -2
- package/dist/serve/worker/host/rtdb.js.map +1 -1
- package/dist/serve/worker/host/studio.d.ts.map +1 -1
- package/dist/serve/worker/host/studio.js +2 -0
- package/dist/serve/worker/host/studio.js.map +1 -1
- package/dist/serve/worker/host/subscriptions.d.ts.map +1 -1
- package/dist/serve/worker/host/subscriptions.js +3 -3
- package/dist/serve/worker/host/subscriptions.js.map +1 -1
- package/dist/serve/worker/host.d.ts +1 -1
- package/dist/serve/worker/host.d.ts.map +1 -1
- package/dist/serve/worker/host.js +1 -1
- package/dist/serve/worker/host.js.map +1 -1
- package/dist/serve/worker/index.d.ts +16 -1
- package/dist/serve/worker/index.d.ts.map +1 -1
- package/dist/serve/worker/index.js +17 -4
- package/dist/serve/worker/index.js.map +1 -1
- package/dist/serve/worker/protocol.d.ts +57 -0
- package/dist/serve/worker/protocol.d.ts.map +1 -1
- package/dist/serve/worker/protocol.js.map +1 -1
- package/dist/serve/worker/rtdb-value-equality.d.ts +3 -0
- package/dist/serve/worker/rtdb-value-equality.d.ts.map +1 -0
- package/dist/serve/worker/rtdb-value-equality.js +18 -0
- package/dist/serve/worker/rtdb-value-equality.js.map +1 -0
- package/dist/serve/worker/serve-init.js +2 -2
- package/dist/serve/worker/serve-init.js.map +1 -1
- package/dist/serve/worker/service-worker-relay.js +2 -2
- package/dist/serve/worker/service-worker-relay.js.map +1 -1
- package/package.json +7 -5
- package/src/assurance/.generated/conformance-verdicts.ts +120 -75
- package/src/cli/serve.ts +215 -307
- package/src/cli/service-command-records/database-rules-generate.ts +3 -0
- package/src/cli/service-command-records/database-rules-lint.ts +3 -0
- package/src/cli/service-command-records/database-rules-simulate.ts +3 -0
- package/src/cli/service-command-records/database-rules-validate.ts +3 -0
- package/src/cli/service-command-records/firestore-indexes-generate.ts +3 -0
- package/src/cli/service-command-records/firestore-rules-lint.ts +3 -0
- package/src/cli/service-command-records/firestore-rules-resolve.ts +3 -0
- package/src/cli/service-command-records/firestore-rules-simulate.ts +3 -0
- package/src/cli/service-command-records/firestore-rules-validate.ts +3 -0
- package/src/cli/service-command-records/storage-rules-lint.ts +3 -0
- package/src/cli/service-command-records/storage-rules-simulate.ts +3 -0
- package/src/cli/service-commands.generated.ts +27 -0
- package/src/cli/service-commands.test.ts +43 -0
- package/src/cli/service-commands.ts +36 -51
- package/src/conformance/.generated/can-i-use-browser.ts +1 -1
- package/src/conformance/.generated/can-i-use.ts +1 -1
- package/src/conformance/.generated/conformance-docs.ts +1 -1
- package/src/functions-rtdb/development-runtime.ts +299 -0
- package/src/serve/bridge-mount.ts +253 -19
- package/src/serve/bundler.ts +8 -34
- package/src/serve/entries/app-client.ts +5 -4
- package/src/serve/entries/auth-helper-core.ts +83 -30
- package/src/serve/entries/database.ts +180 -57
- package/src/serve/entries/init.ts +30 -20
- package/src/serve/html-injection.ts +65 -0
- package/src/serve/namespace.ts +26 -169
- package/src/serve/runtime/worker-replacement.ts +1 -1
- package/src/serve/sandbox-session.ts +233 -0
- package/src/serve/server.ts +20 -5
- package/src/serve/site-tree.ts +146 -0
- package/src/serve/standalone-assets.ts +9 -26
- package/src/serve/vite-functions-development.ts +201 -0
- package/src/serve/vite-generation-bridge.ts +66 -0
- package/src/serve/vite-generation-functions.ts +78 -0
- package/src/serve/vite-generation-middleware.ts +56 -0
- package/src/serve/vite-generation-rules-watch.ts +37 -0
- package/src/serve/vite-module-swap.ts +119 -0
- package/src/serve/vite-page-runtime.ts +100 -0
- package/src/serve/vite-plugin.ts +78 -883
- package/src/serve/vite-sandbox-generation.ts +255 -0
- package/src/serve/worker/client/disconnect.ts +3 -1
- package/src/serve/worker/client/handles.ts +5 -0
- package/src/serve/worker/client/pagehide.ts +31 -0
- package/src/serve/worker/client/rtdb-admin.ts +74 -0
- package/src/serve/worker/client/rtdb-connection-lifecycle.ts +52 -0
- package/src/serve/worker/client/rtdb-controls.ts +8 -0
- package/src/serve/worker/client/rtdb-listeners.ts +337 -0
- package/src/serve/worker/client/rtdb-reads.ts +12 -0
- package/src/serve/worker/client/rtdb-references.ts +85 -0
- package/src/serve/worker/client/rtdb-snapshots.ts +118 -0
- package/src/serve/worker/client/rtdb-transactions.ts +51 -0
- package/src/serve/worker/client/rtdb-writes.ts +74 -0
- package/src/serve/worker/client.ts +0 -2
- package/src/serve/worker/entry.ts +2 -2
- package/src/serve/worker/host/dispatch.ts +22 -2
- package/src/serve/worker/host/rtdb.ts +243 -2
- package/src/serve/worker/host/studio.ts +2 -0
- package/src/serve/worker/host/subscriptions.ts +8 -4
- package/src/serve/worker/host.ts +1 -1
- package/src/serve/worker/index.ts +58 -10
- package/src/serve/worker/protocol.ts +23 -2
- package/src/serve/worker/rtdb-value-equality.ts +17 -0
- package/src/serve/worker/serve-init.ts +2 -2
- package/src/serve/worker/service-worker-relay.ts +2 -2
- package/dist/serve/docs-ui/_astro/_slug_.DUci-duz.css +0 -1
- package/dist/serve/docs-ui/docs/_rhythm/index.html +0 -100
- package/dist/serve/docs-ui/docs/agent/set-up-your-agent/index.html +0 -43
- package/dist/serve/docs-ui/docs/agent/watch-and-review/index.html +0 -26
- package/dist/serve/docs-ui/docs/agent/work-with-an-agent/index.html +0 -70
- package/dist/serve/docs-ui/docs/api-reference/index.html +0 -68
- package/dist/serve/docs-ui/docs/build/ai-logic/index.html +0 -64
- package/dist/serve/docs-ui/docs/build/authentication/index.html +0 -66
- package/dist/serve/docs-ui/docs/build/cloud-firestore/index.html +0 -70
- package/dist/serve/docs-ui/docs/build/cloud-messaging/index.html +0 -71
- package/dist/serve/docs-ui/docs/build/cloud-storage/index.html +0 -66
- package/dist/serve/docs-ui/docs/build/realtime-database/index.html +0 -67
- package/dist/serve/docs-ui/docs/conformance-scores/index.html +0 -50
- package/dist/serve/docs-ui/docs/create-pyric-reference-api/index.html +0 -531
- package/dist/serve/docs-ui/docs/functions-rtdb-compat/index.html +0 -73
- package/dist/serve/docs-ui/docs/get-started/how-the-swap-works/index.html +0 -29
- package/dist/serve/docs-ui/docs/get-started/start-building/index.html +0 -33
- package/dist/serve/docs-ui/docs/messaging-compat/index.html +0 -265
- package/dist/serve/docs-ui/docs/observe/resolve-runtime-status/index.html +0 -28
- package/dist/serve/docs-ui/docs/observe/see-whats-happening/index.html +0 -74
- package/dist/serve/docs-ui/docs/observe/shape-your-data/index.html +0 -45
- package/dist/serve/docs-ui/docs/overview/index.html +0 -17
- package/dist/serve/docs-ui/docs/pyric-admin-app-reference-api/index.html +0 -186
- package/dist/serve/docs-ui/docs/pyric-admin-storage-reference-api/index.html +0 -318
- package/dist/serve/docs-ui/docs/pyric-ai-scripting-reference-api/index.html +0 -160
- package/dist/serve/docs-ui/docs/pyric-app-reference-api/index.html +0 -425
- package/dist/serve/docs-ui/docs/pyric-cli-assurance-browser-reference-api/index.html +0 -60
- package/dist/serve/docs-ui/docs/pyric-cli-bridge-reference-api/index.html +0 -507
- package/dist/serve/docs-ui/docs/pyric-cli-conformance-browser-reference-api/index.html +0 -258
- package/dist/serve/docs-ui/docs/pyric-cli-conformance-docs-reference-api/index.html +0 -51
- package/dist/serve/docs-ui/docs/pyric-cli-conformance-reference-api/index.html +0 -308
- package/dist/serve/docs-ui/docs/pyric-cli-credentials-node-reference-api/index.html +0 -68
- package/dist/serve/docs-ui/docs/pyric-cli-register-reference-api/index.html +0 -11
- package/dist/serve/docs-ui/docs/pyric-cli-vite-reference-api/index.html +0 -126
- package/dist/serve/docs-ui/docs/pyric-database-reference-api/index.html +0 -1852
- package/dist/serve/docs-ui/docs/pyric-messaging-reference-api/index.html +0 -509
- package/dist/serve/docs-ui/docs/pyric-messaging-sw-reference-api/index.html +0 -182
- package/dist/serve/docs-ui/docs/pyric-sandbox-database-reference-api/index.html +0 -121
- package/dist/serve/docs-ui/docs/pyric-sandbox-firestore-reference-api/index.html +0 -203
- package/dist/serve/docs-ui/docs/pyric-ui-agents-reference-api/index.html +0 -639
- package/dist/serve/docs-ui/docs/pyric-ui-auth-hooks-reference-api/index.html +0 -100
- package/dist/serve/docs-ui/docs/pyric-ui-events-hooks-reference-api/index.html +0 -24
- package/dist/serve/docs-ui/docs/pyric-ui-firestore-hooks-reference-api/index.html +0 -136
- package/dist/serve/docs-ui/docs/pyric-ui-rules-hooks-reference-api/index.html +0 -16
- package/dist/serve/docs-ui/docs/pyric-ui-storage-hooks-reference-api/index.html +0 -176
- package/dist/serve/docs-ui/docs/pyric-ui-traffic-hooks-reference-api/index.html +0 -188
- package/dist/serve/docs-ui/docs/secure/audit-your-rules/index.html +0 -51
- package/dist/serve/docs-ui/docs/secure/firestore-rules-limits/index.html +0 -106
- package/dist/serve/docs-ui/docs/secure/read-a-denial/index.html +0 -41
- package/dist/serve/docs-ui/docs/secure/rtdb-rules-in-typescript/index.html +0 -67
- package/dist/serve/docs-ui/docs/secure/rules-standard-library/index.html +0 -159
- package/dist/serve/docs-ui/docs/secure/secure-it-with-rules/index.html +0 -47
- package/dist/serve/docs-ui/docs/secure/simulate-and-lint/index.html +0 -95
- package/dist/serve/docs-ui/docs/secure/write-a-rules-test-suite/index.html +0 -82
- package/dist/serve/docs-ui/docs/ship/ship-to-production/index.html +0 -37
- package/dist/serve/docs-ui/docs/ship/test-in-node/index.html +0 -75
- package/dist/serve/docs-ui/docs/trust/how-we-know-it-matches-firebase/index.html +0 -132
- package/dist/serve/docs-ui/docs/trust/versioning-and-compatibility/index.html +0 -14
- package/dist/serve/docs-ui/index.html +0 -1
- package/dist/serve/studio-ui/assets/RulesCodeEditor-BDlH-5lp.js +0 -23
- package/dist/serve/studio-ui/assets/index-Bf9SSE8L.js +0 -1218
- package/dist/serve/studio-ui/assets/index-BlSGru_r.css +0 -1
- package/dist/serve/studio-ui/assets/seed-D_UjxfOU.js +0 -20
- package/dist/serve/studio-ui/index.html +0 -32
- package/dist/serve/worker/client/rtdb.d.ts +0 -36
- package/dist/serve/worker/client/rtdb.d.ts.map +0 -1
- package/dist/serve/worker/client/rtdb.js +0 -241
- package/dist/serve/worker/client/rtdb.js.map +0 -1
- package/src/serve/worker/client/rtdb.ts +0 -311
- /package/dist/serve/{docs-ui → site-ui}/404.html +0 -0
- /package/dist/serve/{docs-ui → site-ui}/_astro/_slug_.CXh9yTP1.css +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/_rhythm.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/agent/set-up-your-agent.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/agent/watch-and-review.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/agent/work-with-an-agent.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/ai-compat.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/api-reference.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/app-compat.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/auth-compat.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/build/ai-logic.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/build/authentication.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/build/cloud-firestore.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/build/cloud-messaging.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/build/realtime-database.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/create-pyric-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/functions-rtdb-compat.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/get-started/how-the-swap-works.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/get-started/start-building.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/index.html +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/observe/resolve-runtime-status.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/observe/see-whats-happening.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/observe/shape-your-data.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/overview.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-admin-app-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-admin-auth-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-admin-database-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-admin-messaging-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-admin-storage-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-ai-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-ai-scripting-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-app-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-auth-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-cli-assurance-browser-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-cli-assurance-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-cli-bridge-client-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-cli-bridge-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-cli-conformance-browser-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-cli-conformance-docs-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-cli-conformance-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-cli-credentials-node-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-cli-discover-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-cli-register-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-cli-remote-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-cli-verify-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-messaging-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-messaging-sw-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-sandbox-database-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-sandbox-firestore-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-ui-agents-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-ui-auth-hooks-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-ui-auth-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-ui-events-hooks-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-ui-events-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-ui-firestore-hooks-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-ui-primitives-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-ui-rtdb-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-ui-rules-hooks-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-ui-rules-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-ui-storage-hooks-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-ui-traffic-hooks-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/pyric-ui-traffic-reference-api.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/secure/audit-your-rules.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/secure/firestore-rules-limits.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/secure/read-a-denial.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/secure/rtdb-rules-in-typescript.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/secure/secure-it-with-rules.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/secure/simulate-and-lint.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/secure/write-a-rules-test-suite.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/ship/ship-to-production.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/ship/test-in-node.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/trust/how-we-know-it-matches-firebase.md +0 -0
- /package/dist/serve/{docs-ui → site-ui}/docs/trust/versioning-and-compatibility.md +0 -0
- /package/dist/serve/{studio-ui → site-ui}/pyric-logo.svg +0 -0
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
<!DOCTYPE html><html lang="en"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>API reference: pyric/firestore · Pyric Studio</title><meta name="description" content="Published declarations for pyric/firestore."><link rel="preconnect" href="https://fonts.googleapis.com"><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin><link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500;700&display=swap" rel="stylesheet"><link rel="stylesheet" href="/__pyric/ui/_astro/_slug_.CXh9yTP1.css">
|
|
2
|
-
<link rel="stylesheet" href="/__pyric/ui/_astro/_slug_.DUci-duz.css"></head> <body> <header class="studio__bar"> <div class="studio__bar-inner"> <a class="studio__brand" href="/__pyric/ui/" aria-label="Pyric Studio">Pyric</a> <nav class="studio__nav" aria-label="Studio tabs"> <a class="studio__nav-tab" href="/__pyric/ui/"> Home </a><a class="studio__nav-tab" href="/__pyric/ui/firestore"> Firestore </a><a class="studio__nav-tab" href="/__pyric/ui/auth"> Auth </a><a class="studio__nav-tab" href="/__pyric/ui/rtdb"> RTDB </a><a class="studio__nav-tab" href="/__pyric/ui/storage"> Storage </a><a class="studio__nav-tab" href="/__pyric/ui/traffic"> Traffic </a><a class="studio__nav-tab" href="/__pyric/ui/settings"> Settings </a><a class="studio__nav-tab" href="/__pyric/ui/docs" aria-current="page"> Docs </a> </nav> </div> </header> <div class="docs-shell"> <details class="docs-nav-drawer"> <summary>Navigate</summary> <nav class="docs-nav" aria-label="Documentation"> <div class="docs-search" data-index-url="/__pyric/ui/docs/index.json"> <div class="docs-search-field"> <svg class="docs-search-icon" viewBox="0 0 16 16" width="14" height="14" aria-hidden="true"> <path d="M11.5 11.5 15 15M13 7A6 6 0 1 1 1 7a6 6 0 0 1 12 0Z" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></path> </svg> <input type="text" class="docs-search-input" placeholder="Search docs" aria-label="Search docs" autocomplete="off" spellcheck="false"> <kbd class="docs-search-kbd">⌘K</kbd> </div> <ul class="docs-search-results" hidden></ul> </div> <script type="module">let i=null;function d(t){return i||(i=fetch(t).then(e=>e.json())),i}function l(t,e){return t.title.toLowerCase().includes(e)||t.excerpt.toLowerCase().includes(e)?!0:t.headings.some(r=>r.text.toLowerCase().includes(e))}function u(t,e,r){if(e.innerHTML="",t.length===0){e.hidden=!1;{const n=document.createElement("li");n.className="docs-search-empty",n.textContent="No matches",e.appendChild(n)}return}e.hidden=!1;for(const n of t.slice(0,8)){const s=document.createElement("li"),c=document.createElement("a");c.href=n.path;const o=document.createElement("span");o.className="docs-search-result-title",o.textContent=n.title;const a=document.createElement("span");a.className="docs-search-result-meta",a.textContent=[n.group,n.section].filter(Boolean).join(" / "),c.append(o,a),s.appendChild(c),e.appendChild(s)}}document.querySelectorAll(".docs-search").forEach(t=>{const e=t.dataset.indexUrl,r=t.querySelector(".docs-search-input"),n=t.querySelector(".docs-search-results");r.addEventListener("input",async()=>{const s=r.value.trim().toLowerCase();if(!s){n.hidden=!0,n.innerHTML="";return}const{pages:c}=await d(e);r.value.trim().toLowerCase()===s&&u(c.filter(o=>l(o,s)),n)}),r.addEventListener("focus",()=>{d(e),n.childElementCount>0&&(n.hidden=!1)}),r.addEventListener("keydown",s=>{s.key==="Escape"&&(r.value="",n.hidden=!0,n.innerHTML="",r.blur())}),r.addEventListener("blur",()=>{window.setTimeout(()=>{n.hidden=!0},150)})});document.addEventListener("keydown",t=>{if(!(t.metaKey||t.ctrlKey)||t.key.toLowerCase()!=="k")return;const e=[...document.querySelectorAll(".docs-search-input")].find(r=>r.offsetParent!==null);e&&(t.preventDefault(),e.focus(),e.select())});</script> <details class="docs-nav-group"> <summary>Overview</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/overview/"> Overview </a> </li><li> <a href="/__pyric/ui/docs/tutorial/"> Tutorial </a> </li> </ul> </div> </div> </details><details class="docs-nav-group"> <summary>Get started</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/get-started/start-building/"> Quickstart </a> </li><li> <a href="/__pyric/ui/docs/get-started/how-the-swap-works/"> How the swap works </a> </li> </ul> </div> </div> </details><details class="docs-nav-group"> <summary>Build</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/build/authentication/"> Authentication </a> </li><li> <a href="/__pyric/ui/docs/build/cloud-firestore/"> Cloud Firestore </a> </li><li> <a href="/__pyric/ui/docs/build/realtime-database/"> Realtime Database </a> </li><li> <a href="/__pyric/ui/docs/build/cloud-storage/"> Cloud Storage </a> </li><li> <a href="/__pyric/ui/docs/build/cloud-messaging/"> Cloud Messaging </a> </li><li> <a href="/__pyric/ui/docs/build/ai-logic/"> AI Logic </a> </li> </ul> </div> </div> </details><details class="docs-nav-group"> <summary>Secure & debug</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/secure/secure-it-with-rules/"> Security Rules </a> </li><li> <a href="/__pyric/ui/docs/secure/simulate-and-lint/"> Simulate and lint before you deploy </a> </li><li> <a href="/__pyric/ui/docs/secure/write-a-rules-test-suite/"> Write a rules test suite </a> </li><li> <a href="/__pyric/ui/docs/secure/read-a-denial/"> Read a denial and understand it </a> </li><li> <a href="/__pyric/ui/docs/secure/rules-standard-library/"> The rules standard library </a> </li><li> <a href="/__pyric/ui/docs/secure/rtdb-rules-in-typescript/"> RTDB rules in TypeScript </a> </li><li> <a href="/__pyric/ui/docs/secure/firestore-rules-limits/"> Rules limits </a> </li><li> <a href="/__pyric/ui/docs/secure/audit-your-rules/"> Audit rules and data </a> </li> </ul> </div> </div> </details><details class="docs-nav-group"> <summary>Observe & shape</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/observe/see-whats-happening/"> Traffic & rule verdicts </a> </li><li> <a href="/__pyric/ui/docs/observe/resolve-runtime-status/"> Runtime status </a> </li><li> <a href="/__pyric/ui/docs/observe/shape-your-data/"> Seed, snapshot, replay </a> </li> </ul> </div> </div> </details><details class="docs-nav-group"> <summary>Ship & test</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/ship/ship-to-production/"> Ship to production </a> </li><li> <a href="/__pyric/ui/docs/ship/test-in-node/"> Test in Node </a> </li> </ul> </div> </div> </details><details class="docs-nav-group"> <summary>Work with an agent</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/agent/set-up-your-agent/"> Connect an agent </a> </li><li> <a href="/__pyric/ui/docs/agent/work-with-an-agent/"> Use the MCP tools </a> </li><li> <a href="/__pyric/ui/docs/agent/watch-and-review/"> Watch in Pyric Studio </a> </li> </ul> </div> </div> </details><a class="docs-nav-toplink" href="/__pyric/ui/docs/trust/versioning-and-compatibility/"> Trust </a><details class="docs-nav-group"> <summary>Conformance</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/conformance-scores/"> Public API coverage </a> </li><li> <a href="/__pyric/ui/docs/trust/how-we-know-it-matches-firebase/"> How we know it matches Firebase </a> </li><li> <a href="/__pyric/ui/docs/app-compat/"> App </a> </li><li> <a href="/__pyric/ui/docs/ai-compat/"> AI Logic </a> </li><li> <a href="/__pyric/ui/docs/auth-compat/"> Auth </a> </li><li> <a href="/__pyric/ui/docs/firestore-compat/"> Firestore </a> </li><li> <a href="/__pyric/ui/docs/database-compat/"> Realtime Database </a> </li><li> <a href="/__pyric/ui/docs/storage-compat/"> Storage </a> </li><li> <a href="/__pyric/ui/docs/messaging-compat/"> Messaging </a> </li><li> <a href="/__pyric/ui/docs/functions-rtdb-compat/"> Functions · RTDB </a> </li><li> <a href="/__pyric/ui/docs/rules-compat/"> Rules </a> </li> </ul> </div> </div> </details> <details class="docs-nav-group" open> <summary>Reference</summary> <div class="docs-nav-group-body docs-nav-group-body--reference"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/api-reference/"> API reference </a> </li> </ul> </div><div class="docs-nav-section"> <h2 class="docs-nav-heading">pyric</h2> <ul> <li> <a href="/__pyric/ui/docs/pyric-app-reference-api/"> pyric/app </a> </li><li> <a href="/__pyric/ui/docs/pyric-firestore-reference-api/" aria-current="page"> pyric/firestore </a> </li><li> <a href="/__pyric/ui/docs/pyric-auth-reference-api/"> pyric/auth </a> </li><li> <a href="/__pyric/ui/docs/pyric-ai-reference-api/"> pyric/ai </a> </li><li> <a href="/__pyric/ui/docs/pyric-ai-scripting-reference-api/"> pyric/ai/scripting </a> </li><li> <a href="/__pyric/ui/docs/pyric-database-reference-api/"> pyric/database </a> </li><li> <a href="/__pyric/ui/docs/pyric-storage-reference-api/"> pyric/storage </a> </li><li> <a href="/__pyric/ui/docs/pyric-messaging-reference-api/"> pyric/messaging </a> </li><li> <a href="/__pyric/ui/docs/pyric-messaging-sw-reference-api/"> pyric/messaging/sw </a> </li><li> <a href="/__pyric/ui/docs/pyric-rules-reference-api/"> pyric/rules </a> </li><li> <a href="/__pyric/ui/docs/pyric-sandbox-reference-api/"> pyric/sandbox </a> </li><li> <a href="/__pyric/ui/docs/pyric-sandbox-firestore-reference-api/"> pyric/sandbox/firestore </a> </li><li> <a href="/__pyric/ui/docs/pyric-sandbox-database-reference-api/"> pyric/sandbox/database </a> </li> </ul> </div><div class="docs-nav-section"> <h2 class="docs-nav-heading">pyric-admin</h2> <ul> <li> <a href="/__pyric/ui/docs/pyric-admin-app-reference-api/"> pyric-admin/app </a> </li><li> <a href="/__pyric/ui/docs/pyric-admin-firestore-reference-api/"> pyric-admin/firestore </a> </li><li> <a href="/__pyric/ui/docs/pyric-admin-auth-reference-api/"> pyric-admin/auth </a> </li><li> <a href="/__pyric/ui/docs/pyric-admin-database-reference-api/"> pyric-admin/database </a> </li><li> <a href="/__pyric/ui/docs/pyric-admin-storage-reference-api/"> pyric-admin/storage </a> </li><li> <a href="/__pyric/ui/docs/pyric-admin-messaging-reference-api/"> pyric-admin/messaging </a> </li> </ul> </div><div class="docs-nav-section"> <h2 class="docs-nav-heading">create-pyric</h2> <ul> <li> <a href="/__pyric/ui/docs/create-pyric-reference-api/"> create-pyric </a> </li> </ul> </div><div class="docs-nav-section"> <h2 class="docs-nav-heading">@pyric/cli</h2> <ul> <li> <a href="/__pyric/ui/docs/pyric-cli-credentials-node-reference-api/"> @pyric/cli/credentials/node </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-verify-reference-api/"> @pyric/cli/verify </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-conformance-reference-api/"> @pyric/cli/conformance </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-conformance-browser-reference-api/"> @pyric/cli/conformance/browser </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-conformance-docs-reference-api/"> @pyric/cli/conformance/docs </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-assurance-reference-api/"> @pyric/cli/assurance </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-assurance-browser-reference-api/"> @pyric/cli/assurance/browser </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-bridge-reference-api/"> @pyric/cli/bridge </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-bridge-client-reference-api/"> @pyric/cli/bridge/client </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-discover-reference-api/"> @pyric/cli/discover </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-vite-reference-api/"> @pyric/cli/vite </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-serve-worker-reference-api/"> @pyric/cli/serve/worker </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-remote-reference-api/"> @pyric/cli/remote </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-register-reference-api/"> @pyric/cli/register </a> </li> </ul> </div><div class="docs-nav-section"> <h2 class="docs-nav-heading">@pyric/ui</h2> <ul> <li> <a href="/__pyric/ui/docs/pyric-ui-auth-reference-api/"> @pyric/ui/auth </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-auth-hooks-reference-api/"> @pyric/ui/auth/hooks </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-primitives-reference-api/"> @pyric/ui/primitives </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-firestore-reference-api/"> @pyric/ui/firestore </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-firestore-hooks-reference-api/"> @pyric/ui/firestore/hooks </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-rtdb-reference-api/"> @pyric/ui/rtdb </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-storage-reference-api/"> @pyric/ui/storage </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-storage-hooks-reference-api/"> @pyric/ui/storage/hooks </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-traffic-reference-api/"> @pyric/ui/traffic </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-traffic-hooks-reference-api/"> @pyric/ui/traffic/hooks </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-events-reference-api/"> @pyric/ui/events </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-events-hooks-reference-api/"> @pyric/ui/events/hooks </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-agents-reference-api/"> @pyric/ui/agents </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-rules-reference-api/"> @pyric/ui/rules </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-rules-hooks-reference-api/"> @pyric/ui/rules/hooks </a> </li> </ul> </div> </div> </details> </nav> </details> <nav class="docs-nav" aria-label="Documentation"> <div class="docs-search" data-index-url="/__pyric/ui/docs/index.json"> <div class="docs-search-field"> <svg class="docs-search-icon" viewBox="0 0 16 16" width="14" height="14" aria-hidden="true"> <path d="M11.5 11.5 15 15M13 7A6 6 0 1 1 1 7a6 6 0 0 1 12 0Z" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></path> </svg> <input type="text" class="docs-search-input" placeholder="Search docs" aria-label="Search docs" autocomplete="off" spellcheck="false"> <kbd class="docs-search-kbd">⌘K</kbd> </div> <ul class="docs-search-results" hidden></ul> </div> <details class="docs-nav-group" id="nav-group-overview"> <summary>Overview</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/overview/"> Overview </a> </li><li> <a href="/__pyric/ui/docs/tutorial/"> Tutorial </a> </li> </ul> </div> </div> </details><details class="docs-nav-group" id="nav-group-get-started"> <summary>Get started</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/get-started/start-building/"> Quickstart </a> </li><li> <a href="/__pyric/ui/docs/get-started/how-the-swap-works/"> How the swap works </a> </li> </ul> </div> </div> </details><details class="docs-nav-group" id="nav-group-build"> <summary>Build</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/build/authentication/"> Authentication </a> </li><li> <a href="/__pyric/ui/docs/build/cloud-firestore/"> Cloud Firestore </a> </li><li> <a href="/__pyric/ui/docs/build/realtime-database/"> Realtime Database </a> </li><li> <a href="/__pyric/ui/docs/build/cloud-storage/"> Cloud Storage </a> </li><li> <a href="/__pyric/ui/docs/build/cloud-messaging/"> Cloud Messaging </a> </li><li> <a href="/__pyric/ui/docs/build/ai-logic/"> AI Logic </a> </li> </ul> </div> </div> </details><details class="docs-nav-group" id="nav-group-secure-debug"> <summary>Secure & debug</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/secure/secure-it-with-rules/"> Security Rules </a> </li><li> <a href="/__pyric/ui/docs/secure/simulate-and-lint/"> Simulate and lint before you deploy </a> </li><li> <a href="/__pyric/ui/docs/secure/write-a-rules-test-suite/"> Write a rules test suite </a> </li><li> <a href="/__pyric/ui/docs/secure/read-a-denial/"> Read a denial and understand it </a> </li><li> <a href="/__pyric/ui/docs/secure/rules-standard-library/"> The rules standard library </a> </li><li> <a href="/__pyric/ui/docs/secure/rtdb-rules-in-typescript/"> RTDB rules in TypeScript </a> </li><li> <a href="/__pyric/ui/docs/secure/firestore-rules-limits/"> Rules limits </a> </li><li> <a href="/__pyric/ui/docs/secure/audit-your-rules/"> Audit rules and data </a> </li> </ul> </div> </div> </details><details class="docs-nav-group" id="nav-group-observe-shape"> <summary>Observe & shape</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/observe/see-whats-happening/"> Traffic & rule verdicts </a> </li><li> <a href="/__pyric/ui/docs/observe/resolve-runtime-status/"> Runtime status </a> </li><li> <a href="/__pyric/ui/docs/observe/shape-your-data/"> Seed, snapshot, replay </a> </li> </ul> </div> </div> </details><details class="docs-nav-group" id="nav-group-ship-test"> <summary>Ship & test</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/ship/ship-to-production/"> Ship to production </a> </li><li> <a href="/__pyric/ui/docs/ship/test-in-node/"> Test in Node </a> </li> </ul> </div> </div> </details><details class="docs-nav-group" id="nav-group-work-with-an-agent"> <summary>Work with an agent</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/agent/set-up-your-agent/"> Connect an agent </a> </li><li> <a href="/__pyric/ui/docs/agent/work-with-an-agent/"> Use the MCP tools </a> </li><li> <a href="/__pyric/ui/docs/agent/watch-and-review/"> Watch in Pyric Studio </a> </li> </ul> </div> </div> </details><a class="docs-nav-toplink" href="/__pyric/ui/docs/trust/versioning-and-compatibility/" id="nav-group-trust"> Trust </a><details class="docs-nav-group" id="nav-group-conformance"> <summary>Conformance</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/conformance-scores/"> Public API coverage </a> </li><li> <a href="/__pyric/ui/docs/trust/how-we-know-it-matches-firebase/"> How we know it matches Firebase </a> </li><li> <a href="/__pyric/ui/docs/app-compat/"> App </a> </li><li> <a href="/__pyric/ui/docs/ai-compat/"> AI Logic </a> </li><li> <a href="/__pyric/ui/docs/auth-compat/"> Auth </a> </li><li> <a href="/__pyric/ui/docs/firestore-compat/"> Firestore </a> </li><li> <a href="/__pyric/ui/docs/database-compat/"> Realtime Database </a> </li><li> <a href="/__pyric/ui/docs/storage-compat/"> Storage </a> </li><li> <a href="/__pyric/ui/docs/messaging-compat/"> Messaging </a> </li><li> <a href="/__pyric/ui/docs/functions-rtdb-compat/"> Functions · RTDB </a> </li><li> <a href="/__pyric/ui/docs/rules-compat/"> Rules </a> </li> </ul> </div> </div> </details> <details class="docs-nav-group" id="nav-group-reference" open> <summary>Reference</summary> <div class="docs-nav-group-body docs-nav-group-body--reference"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/api-reference/"> API reference </a> </li> </ul> </div><div class="docs-nav-section"> <h2 class="docs-nav-heading">pyric</h2> <ul> <li> <a href="/__pyric/ui/docs/pyric-app-reference-api/"> pyric/app </a> </li><li> <a href="/__pyric/ui/docs/pyric-firestore-reference-api/" aria-current="page"> pyric/firestore </a> </li><li> <a href="/__pyric/ui/docs/pyric-auth-reference-api/"> pyric/auth </a> </li><li> <a href="/__pyric/ui/docs/pyric-ai-reference-api/"> pyric/ai </a> </li><li> <a href="/__pyric/ui/docs/pyric-ai-scripting-reference-api/"> pyric/ai/scripting </a> </li><li> <a href="/__pyric/ui/docs/pyric-database-reference-api/"> pyric/database </a> </li><li> <a href="/__pyric/ui/docs/pyric-storage-reference-api/"> pyric/storage </a> </li><li> <a href="/__pyric/ui/docs/pyric-messaging-reference-api/"> pyric/messaging </a> </li><li> <a href="/__pyric/ui/docs/pyric-messaging-sw-reference-api/"> pyric/messaging/sw </a> </li><li> <a href="/__pyric/ui/docs/pyric-rules-reference-api/"> pyric/rules </a> </li><li> <a href="/__pyric/ui/docs/pyric-sandbox-reference-api/"> pyric/sandbox </a> </li><li> <a href="/__pyric/ui/docs/pyric-sandbox-firestore-reference-api/"> pyric/sandbox/firestore </a> </li><li> <a href="/__pyric/ui/docs/pyric-sandbox-database-reference-api/"> pyric/sandbox/database </a> </li> </ul> </div><div class="docs-nav-section"> <h2 class="docs-nav-heading">pyric-admin</h2> <ul> <li> <a href="/__pyric/ui/docs/pyric-admin-app-reference-api/"> pyric-admin/app </a> </li><li> <a href="/__pyric/ui/docs/pyric-admin-firestore-reference-api/"> pyric-admin/firestore </a> </li><li> <a href="/__pyric/ui/docs/pyric-admin-auth-reference-api/"> pyric-admin/auth </a> </li><li> <a href="/__pyric/ui/docs/pyric-admin-database-reference-api/"> pyric-admin/database </a> </li><li> <a href="/__pyric/ui/docs/pyric-admin-storage-reference-api/"> pyric-admin/storage </a> </li><li> <a href="/__pyric/ui/docs/pyric-admin-messaging-reference-api/"> pyric-admin/messaging </a> </li> </ul> </div><div class="docs-nav-section"> <h2 class="docs-nav-heading">create-pyric</h2> <ul> <li> <a href="/__pyric/ui/docs/create-pyric-reference-api/"> create-pyric </a> </li> </ul> </div><div class="docs-nav-section"> <h2 class="docs-nav-heading">@pyric/cli</h2> <ul> <li> <a href="/__pyric/ui/docs/pyric-cli-credentials-node-reference-api/"> @pyric/cli/credentials/node </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-verify-reference-api/"> @pyric/cli/verify </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-conformance-reference-api/"> @pyric/cli/conformance </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-conformance-browser-reference-api/"> @pyric/cli/conformance/browser </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-conformance-docs-reference-api/"> @pyric/cli/conformance/docs </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-assurance-reference-api/"> @pyric/cli/assurance </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-assurance-browser-reference-api/"> @pyric/cli/assurance/browser </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-bridge-reference-api/"> @pyric/cli/bridge </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-bridge-client-reference-api/"> @pyric/cli/bridge/client </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-discover-reference-api/"> @pyric/cli/discover </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-vite-reference-api/"> @pyric/cli/vite </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-serve-worker-reference-api/"> @pyric/cli/serve/worker </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-remote-reference-api/"> @pyric/cli/remote </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-register-reference-api/"> @pyric/cli/register </a> </li> </ul> </div><div class="docs-nav-section"> <h2 class="docs-nav-heading">@pyric/ui</h2> <ul> <li> <a href="/__pyric/ui/docs/pyric-ui-auth-reference-api/"> @pyric/ui/auth </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-auth-hooks-reference-api/"> @pyric/ui/auth/hooks </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-primitives-reference-api/"> @pyric/ui/primitives </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-firestore-reference-api/"> @pyric/ui/firestore </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-firestore-hooks-reference-api/"> @pyric/ui/firestore/hooks </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-rtdb-reference-api/"> @pyric/ui/rtdb </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-storage-reference-api/"> @pyric/ui/storage </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-storage-hooks-reference-api/"> @pyric/ui/storage/hooks </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-traffic-reference-api/"> @pyric/ui/traffic </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-traffic-hooks-reference-api/"> @pyric/ui/traffic/hooks </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-events-reference-api/"> @pyric/ui/events </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-events-hooks-reference-api/"> @pyric/ui/events/hooks </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-agents-reference-api/"> @pyric/ui/agents </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-rules-reference-api/"> @pyric/ui/rules </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-rules-hooks-reference-api/"> @pyric/ui/rules/hooks </a> </li> </ul> </div> </div> </details> </nav> <main class="doc-main"> <nav class="docs-breadcrumbs" aria-label="Breadcrumb"> <ol> <li> <a href="/__pyric/ui/docs/api-reference/">API reference</a> </li><li> <span class="docs-breadcrumbs-sep" aria-hidden="true">/</span> <span>pyric</span> </li><li> <span class="docs-breadcrumbs-sep" aria-hidden="true">/</span> <span aria-current="page">pyric/firestore</span> </li> </ol> </nav> <header class="api-reference-header"> <p class="api-reference-kicker">API reference</p> <h1><code>pyric/firestore</code></h1> <p class="api-reference-meta"> 110 published symbols from <code>pyric</code> </p> <p class="api-reference-source">
|
|
1
|
+
<!DOCTYPE html><html lang="en"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>API reference: pyric/firestore · Pyric Studio</title><meta name="description" content="Published declarations for pyric/firestore."><link rel="icon" type="image/svg+xml" href="/__pyric/ui/pyric-logo.svg"><link rel="preconnect" href="https://fonts.googleapis.com"><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin><link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500;700&display=swap" rel="stylesheet"><link rel="stylesheet" href="/__pyric/ui/_astro/_slug_.CXh9yTP1.css">
|
|
2
|
+
<link rel="stylesheet" href="/__pyric/ui/_astro/_slug_.BoKXYrnu.css"></head> <body> <header class="studio__bar" data-astro-cid-mw7aashj> <div class="studio__bar-inner" data-astro-cid-mw7aashj> <a class="studio__brand" href="/__pyric/ui/" aria-label="Pyric Studio" data-astro-cid-mw7aashj>Pyric</a> <nav class="studio__nav" aria-label="Studio tabs" data-astro-cid-mw7aashj> <a class="studio__nav-tab" href="/__pyric/ui/" data-astro-cid-mw7aashj> Home </a><a class="studio__nav-tab" href="/__pyric/ui/firestore" data-astro-cid-mw7aashj> Firestore </a><a class="studio__nav-tab" href="/__pyric/ui/auth" data-astro-cid-mw7aashj> Auth </a><a class="studio__nav-tab" href="/__pyric/ui/rtdb" data-astro-cid-mw7aashj> RTDB </a><a class="studio__nav-tab" href="/__pyric/ui/storage" data-astro-cid-mw7aashj> Storage </a><a class="studio__nav-tab" href="/__pyric/ui/traffic" data-astro-cid-mw7aashj> Traffic </a><a class="studio__nav-tab" href="/__pyric/ui/settings" data-astro-cid-mw7aashj> Settings </a><a class="studio__nav-tab" href="/__pyric/ui/docs" aria-current="page" data-astro-cid-mw7aashj> Docs </a> </nav> </div> </header> <div class="docs-shell" data-astro-cid-mw7aashj> <details class="docs-nav-drawer" data-astro-cid-mw7aashj> <summary data-astro-cid-mw7aashj>Navigate</summary> <nav class="docs-nav" aria-label="Documentation"> <div class="docs-search" data-index-url="/__pyric/ui/docs/index.json"> <div class="docs-search-field"> <svg class="docs-search-icon" viewBox="0 0 16 16" width="14" height="14" aria-hidden="true"> <path d="M11.5 11.5 15 15M13 7A6 6 0 1 1 1 7a6 6 0 0 1 12 0Z" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></path> </svg> <input type="text" class="docs-search-input" placeholder="Search docs" aria-label="Search docs" autocomplete="off" spellcheck="false"> <kbd class="docs-search-kbd">⌘K</kbd> </div> <ul class="docs-search-results" hidden></ul> </div> <script type="module">let i=null;function d(t){return i||(i=fetch(t).then(e=>e.json())),i}function l(t,e){return t.title.toLowerCase().includes(e)||t.excerpt.toLowerCase().includes(e)?!0:t.headings.some(r=>r.text.toLowerCase().includes(e))}function u(t,e,r){if(e.innerHTML="",t.length===0){e.hidden=!1;{const n=document.createElement("li");n.className="docs-search-empty",n.textContent="No matches",e.appendChild(n)}return}e.hidden=!1;for(const n of t.slice(0,8)){const s=document.createElement("li"),c=document.createElement("a");c.href=n.path;const o=document.createElement("span");o.className="docs-search-result-title",o.textContent=n.title;const a=document.createElement("span");a.className="docs-search-result-meta",a.textContent=[n.group,n.section].filter(Boolean).join(" / "),c.append(o,a),s.appendChild(c),e.appendChild(s)}}document.querySelectorAll(".docs-search").forEach(t=>{const e=t.dataset.indexUrl,r=t.querySelector(".docs-search-input"),n=t.querySelector(".docs-search-results");r.addEventListener("input",async()=>{const s=r.value.trim().toLowerCase();if(!s){n.hidden=!0,n.innerHTML="";return}const{pages:c}=await d(e);r.value.trim().toLowerCase()===s&&u(c.filter(o=>l(o,s)),n)}),r.addEventListener("focus",()=>{d(e),n.childElementCount>0&&(n.hidden=!1)}),r.addEventListener("keydown",s=>{s.key==="Escape"&&(r.value="",n.hidden=!0,n.innerHTML="",r.blur())}),r.addEventListener("blur",()=>{window.setTimeout(()=>{n.hidden=!0},150)})});document.addEventListener("keydown",t=>{if(!(t.metaKey||t.ctrlKey)||t.key.toLowerCase()!=="k")return;const e=[...document.querySelectorAll(".docs-search-input")].find(r=>r.offsetParent!==null);e&&(t.preventDefault(),e.focus(),e.select())});</script> <details class="docs-nav-group"> <summary>Overview</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/overview/"> Overview </a> </li><li> <a href="/__pyric/ui/docs/tutorial/"> Tutorial </a> </li><li> <a href="/__pyric/ui/docs/examples/"> Examples </a> </li> </ul> </div> </div> </details><details class="docs-nav-group"> <summary>Get started</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/get-started/start-building/"> Quickstart </a> </li><li> <a href="/__pyric/ui/docs/get-started/how-the-swap-works/"> How the swap works </a> </li> </ul> </div> </div> </details><details class="docs-nav-group"> <summary>Build</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/build/authentication/"> Authentication </a> </li><li> <a href="/__pyric/ui/docs/build/cloud-firestore/"> Cloud Firestore </a> </li><li> <a href="/__pyric/ui/docs/build/realtime-database/"> Realtime Database </a> </li><li> <a href="/__pyric/ui/docs/build/cloud-storage/"> Cloud Storage </a> </li><li> <a href="/__pyric/ui/docs/build/cloud-messaging/"> Cloud Messaging </a> </li><li> <a href="/__pyric/ui/docs/build/ai-logic/"> AI Logic </a> </li> </ul> </div> </div> </details><details class="docs-nav-group"> <summary>Secure & debug</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/secure/secure-it-with-rules/"> Security Rules </a> </li><li> <a href="/__pyric/ui/docs/secure/simulate-and-lint/"> Simulate and lint before you deploy </a> </li><li> <a href="/__pyric/ui/docs/secure/write-a-rules-test-suite/"> Write a rules test suite </a> </li><li> <a href="/__pyric/ui/docs/secure/read-a-denial/"> Read a denial and understand it </a> </li><li> <a href="/__pyric/ui/docs/secure/rules-standard-library/"> The rules standard library </a> </li><li> <a href="/__pyric/ui/docs/secure/rtdb-rules-in-typescript/"> RTDB rules in TypeScript </a> </li><li> <a href="/__pyric/ui/docs/secure/firestore-rules-limits/"> Rules limits </a> </li><li> <a href="/__pyric/ui/docs/secure/audit-your-rules/"> Audit rules and data </a> </li> </ul> </div><div class="docs-nav-section"> <h2 class="docs-nav-heading"> Examples </h2> <ul> <li> <a href="/__pyric/ui/docs/examples/chess/"> Chess showcase </a> </li> </ul> </div> </div> </details><details class="docs-nav-group"> <summary>Observe & shape</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/observe/see-whats-happening/"> Traffic & rule verdicts </a> </li><li> <a href="/__pyric/ui/docs/observe/resolve-runtime-status/"> Runtime status </a> </li><li> <a href="/__pyric/ui/docs/observe/shape-your-data/"> Seed, snapshot, replay </a> </li> </ul> </div> </div> </details><details class="docs-nav-group"> <summary>Ship & test</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/ship/ship-to-production/"> Ship to production </a> </li><li> <a href="/__pyric/ui/docs/ship/test-in-node/"> Test in Node </a> </li> </ul> </div> </div> </details><details class="docs-nav-group"> <summary>Work with an agent</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/agent/set-up-your-agent/"> Connect an agent </a> </li><li> <a href="/__pyric/ui/docs/agent/work-with-an-agent/"> Use the MCP tools </a> </li><li> <a href="/__pyric/ui/docs/agent/watch-and-review/"> Watch in Pyric Studio </a> </li> </ul> </div> </div> </details><details class="docs-nav-group"> <summary>Trust</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/trust/versioning-and-compatibility/"> Versioning and the fb tag </a> </li><li> <a href="/__pyric/ui/docs/trust/storage-rules-stdlib-research/"> Storage Rules modules: evidence and design </a> </li><li> <a href="/__pyric/ui/docs/trust/rules-standard-library/"> Rules standard library reference </a> </li> </ul> </div> </div> </details><details class="docs-nav-group"> <summary>Conformance</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/conformance-scores/"> Public API coverage </a> </li><li> <a href="/__pyric/ui/docs/trust/how-we-know-it-matches-firebase/"> How we know it matches Firebase </a> </li><li> <a href="/__pyric/ui/docs/app-compat/"> App </a> </li><li> <a href="/__pyric/ui/docs/ai-compat/"> AI Logic </a> </li><li> <a href="/__pyric/ui/docs/auth-compat/"> Auth </a> </li><li> <a href="/__pyric/ui/docs/firestore-compat/"> Firestore </a> </li><li> <a href="/__pyric/ui/docs/database-compat/"> Realtime Database </a> </li><li> <a href="/__pyric/ui/docs/storage-compat/"> Storage </a> </li><li> <a href="/__pyric/ui/docs/messaging-compat/"> Messaging </a> </li><li> <a href="/__pyric/ui/docs/functions-rtdb-compat/"> Functions · RTDB </a> </li><li> <a href="/__pyric/ui/docs/rules-compat/"> Rules </a> </li> </ul> </div> </div> </details> <details class="docs-nav-group" open> <summary>Reference</summary> <div class="docs-nav-group-body docs-nav-group-body--reference"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/api-reference/"> API reference </a> </li> </ul> </div><div class="docs-nav-section"> <h2 class="docs-nav-heading">pyric</h2> <ul> <li> <a href="/__pyric/ui/docs/pyric-app-reference-api/"> pyric/app </a> </li><li> <a href="/__pyric/ui/docs/pyric-firestore-reference-api/" aria-current="page"> pyric/firestore </a> </li><li> <a href="/__pyric/ui/docs/pyric-auth-reference-api/"> pyric/auth </a> </li><li> <a href="/__pyric/ui/docs/pyric-ai-reference-api/"> pyric/ai </a> </li><li> <a href="/__pyric/ui/docs/pyric-ai-scripting-reference-api/"> pyric/ai/scripting </a> </li><li> <a href="/__pyric/ui/docs/pyric-database-reference-api/"> pyric/database </a> </li><li> <a href="/__pyric/ui/docs/pyric-storage-reference-api/"> pyric/storage </a> </li><li> <a href="/__pyric/ui/docs/pyric-messaging-reference-api/"> pyric/messaging </a> </li><li> <a href="/__pyric/ui/docs/pyric-messaging-sw-reference-api/"> pyric/messaging/sw </a> </li><li> <a href="/__pyric/ui/docs/pyric-rules-reference-api/"> pyric/rules </a> </li><li> <a href="/__pyric/ui/docs/pyric-sandbox-reference-api/"> pyric/sandbox </a> </li><li> <a href="/__pyric/ui/docs/pyric-sandbox-firestore-reference-api/"> pyric/sandbox/firestore </a> </li><li> <a href="/__pyric/ui/docs/pyric-sandbox-database-reference-api/"> pyric/sandbox/database </a> </li> </ul> </div><div class="docs-nav-section"> <h2 class="docs-nav-heading">pyric-admin</h2> <ul> <li> <a href="/__pyric/ui/docs/pyric-admin-app-reference-api/"> pyric-admin/app </a> </li><li> <a href="/__pyric/ui/docs/pyric-admin-firestore-reference-api/"> pyric-admin/firestore </a> </li><li> <a href="/__pyric/ui/docs/pyric-admin-auth-reference-api/"> pyric-admin/auth </a> </li><li> <a href="/__pyric/ui/docs/pyric-admin-database-reference-api/"> pyric-admin/database </a> </li><li> <a href="/__pyric/ui/docs/pyric-admin-storage-reference-api/"> pyric-admin/storage </a> </li><li> <a href="/__pyric/ui/docs/pyric-admin-messaging-reference-api/"> pyric-admin/messaging </a> </li> </ul> </div><div class="docs-nav-section"> <h2 class="docs-nav-heading">create-pyric</h2> <ul> <li> <a href="/__pyric/ui/docs/create-pyric-reference-api/"> create-pyric </a> </li> </ul> </div><div class="docs-nav-section"> <h2 class="docs-nav-heading">@pyric/cli</h2> <ul> <li> <a href="/__pyric/ui/docs/pyric-cli-credentials-node-reference-api/"> @pyric/cli/credentials/node </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-verify-reference-api/"> @pyric/cli/verify </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-conformance-reference-api/"> @pyric/cli/conformance </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-conformance-browser-reference-api/"> @pyric/cli/conformance/browser </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-conformance-docs-reference-api/"> @pyric/cli/conformance/docs </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-assurance-reference-api/"> @pyric/cli/assurance </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-assurance-browser-reference-api/"> @pyric/cli/assurance/browser </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-bridge-reference-api/"> @pyric/cli/bridge </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-bridge-client-reference-api/"> @pyric/cli/bridge/client </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-discover-reference-api/"> @pyric/cli/discover </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-vite-reference-api/"> @pyric/cli/vite </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-serve-worker-reference-api/"> @pyric/cli/serve/worker </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-remote-reference-api/"> @pyric/cli/remote </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-register-reference-api/"> @pyric/cli/register </a> </li> </ul> </div><div class="docs-nav-section"> <h2 class="docs-nav-heading">@pyric/ui</h2> <ul> <li> <a href="/__pyric/ui/docs/pyric-ui-auth-reference-api/"> @pyric/ui/auth </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-auth-hooks-reference-api/"> @pyric/ui/auth/hooks </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-primitives-reference-api/"> @pyric/ui/primitives </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-firestore-reference-api/"> @pyric/ui/firestore </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-firestore-hooks-reference-api/"> @pyric/ui/firestore/hooks </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-rtdb-reference-api/"> @pyric/ui/rtdb </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-storage-reference-api/"> @pyric/ui/storage </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-storage-hooks-reference-api/"> @pyric/ui/storage/hooks </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-traffic-reference-api/"> @pyric/ui/traffic </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-traffic-hooks-reference-api/"> @pyric/ui/traffic/hooks </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-events-reference-api/"> @pyric/ui/events </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-events-hooks-reference-api/"> @pyric/ui/events/hooks </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-agents-reference-api/"> @pyric/ui/agents </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-rules-reference-api/"> @pyric/ui/rules </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-rules-hooks-reference-api/"> @pyric/ui/rules/hooks </a> </li> </ul> </div> </div> </details> </nav> </details> <nav class="docs-nav" aria-label="Documentation"> <div class="docs-search" data-index-url="/__pyric/ui/docs/index.json"> <div class="docs-search-field"> <svg class="docs-search-icon" viewBox="0 0 16 16" width="14" height="14" aria-hidden="true"> <path d="M11.5 11.5 15 15M13 7A6 6 0 1 1 1 7a6 6 0 0 1 12 0Z" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></path> </svg> <input type="text" class="docs-search-input" placeholder="Search docs" aria-label="Search docs" autocomplete="off" spellcheck="false"> <kbd class="docs-search-kbd">⌘K</kbd> </div> <ul class="docs-search-results" hidden></ul> </div> <details class="docs-nav-group" id="nav-group-overview"> <summary>Overview</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/overview/"> Overview </a> </li><li> <a href="/__pyric/ui/docs/tutorial/"> Tutorial </a> </li><li> <a href="/__pyric/ui/docs/examples/"> Examples </a> </li> </ul> </div> </div> </details><details class="docs-nav-group" id="nav-group-get-started"> <summary>Get started</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/get-started/start-building/"> Quickstart </a> </li><li> <a href="/__pyric/ui/docs/get-started/how-the-swap-works/"> How the swap works </a> </li> </ul> </div> </div> </details><details class="docs-nav-group" id="nav-group-build"> <summary>Build</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/build/authentication/"> Authentication </a> </li><li> <a href="/__pyric/ui/docs/build/cloud-firestore/"> Cloud Firestore </a> </li><li> <a href="/__pyric/ui/docs/build/realtime-database/"> Realtime Database </a> </li><li> <a href="/__pyric/ui/docs/build/cloud-storage/"> Cloud Storage </a> </li><li> <a href="/__pyric/ui/docs/build/cloud-messaging/"> Cloud Messaging </a> </li><li> <a href="/__pyric/ui/docs/build/ai-logic/"> AI Logic </a> </li> </ul> </div> </div> </details><details class="docs-nav-group" id="nav-group-secure-debug"> <summary>Secure & debug</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/secure/secure-it-with-rules/"> Security Rules </a> </li><li> <a href="/__pyric/ui/docs/secure/simulate-and-lint/"> Simulate and lint before you deploy </a> </li><li> <a href="/__pyric/ui/docs/secure/write-a-rules-test-suite/"> Write a rules test suite </a> </li><li> <a href="/__pyric/ui/docs/secure/read-a-denial/"> Read a denial and understand it </a> </li><li> <a href="/__pyric/ui/docs/secure/rules-standard-library/"> The rules standard library </a> </li><li> <a href="/__pyric/ui/docs/secure/rtdb-rules-in-typescript/"> RTDB rules in TypeScript </a> </li><li> <a href="/__pyric/ui/docs/secure/firestore-rules-limits/"> Rules limits </a> </li><li> <a href="/__pyric/ui/docs/secure/audit-your-rules/"> Audit rules and data </a> </li> </ul> </div><div class="docs-nav-section"> <h2 class="docs-nav-heading" id="nav-section-secure-debug-examples"> Examples </h2> <ul> <li> <a href="/__pyric/ui/docs/examples/chess/"> Chess showcase </a> </li> </ul> </div> </div> </details><details class="docs-nav-group" id="nav-group-observe-shape"> <summary>Observe & shape</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/observe/see-whats-happening/"> Traffic & rule verdicts </a> </li><li> <a href="/__pyric/ui/docs/observe/resolve-runtime-status/"> Runtime status </a> </li><li> <a href="/__pyric/ui/docs/observe/shape-your-data/"> Seed, snapshot, replay </a> </li> </ul> </div> </div> </details><details class="docs-nav-group" id="nav-group-ship-test"> <summary>Ship & test</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/ship/ship-to-production/"> Ship to production </a> </li><li> <a href="/__pyric/ui/docs/ship/test-in-node/"> Test in Node </a> </li> </ul> </div> </div> </details><details class="docs-nav-group" id="nav-group-work-with-an-agent"> <summary>Work with an agent</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/agent/set-up-your-agent/"> Connect an agent </a> </li><li> <a href="/__pyric/ui/docs/agent/work-with-an-agent/"> Use the MCP tools </a> </li><li> <a href="/__pyric/ui/docs/agent/watch-and-review/"> Watch in Pyric Studio </a> </li> </ul> </div> </div> </details><details class="docs-nav-group" id="nav-group-trust"> <summary>Trust</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/trust/versioning-and-compatibility/"> Versioning and the fb tag </a> </li><li> <a href="/__pyric/ui/docs/trust/storage-rules-stdlib-research/"> Storage Rules modules: evidence and design </a> </li><li> <a href="/__pyric/ui/docs/trust/rules-standard-library/"> Rules standard library reference </a> </li> </ul> </div> </div> </details><details class="docs-nav-group" id="nav-group-conformance"> <summary>Conformance</summary> <div class="docs-nav-group-body"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/conformance-scores/"> Public API coverage </a> </li><li> <a href="/__pyric/ui/docs/trust/how-we-know-it-matches-firebase/"> How we know it matches Firebase </a> </li><li> <a href="/__pyric/ui/docs/app-compat/"> App </a> </li><li> <a href="/__pyric/ui/docs/ai-compat/"> AI Logic </a> </li><li> <a href="/__pyric/ui/docs/auth-compat/"> Auth </a> </li><li> <a href="/__pyric/ui/docs/firestore-compat/"> Firestore </a> </li><li> <a href="/__pyric/ui/docs/database-compat/"> Realtime Database </a> </li><li> <a href="/__pyric/ui/docs/storage-compat/"> Storage </a> </li><li> <a href="/__pyric/ui/docs/messaging-compat/"> Messaging </a> </li><li> <a href="/__pyric/ui/docs/functions-rtdb-compat/"> Functions · RTDB </a> </li><li> <a href="/__pyric/ui/docs/rules-compat/"> Rules </a> </li> </ul> </div> </div> </details> <details class="docs-nav-group" id="nav-group-reference" open> <summary>Reference</summary> <div class="docs-nav-group-body docs-nav-group-body--reference"> <div class="docs-nav-section"> <ul> <li> <a href="/__pyric/ui/docs/api-reference/"> API reference </a> </li> </ul> </div><div class="docs-nav-section"> <h2 class="docs-nav-heading">pyric</h2> <ul> <li> <a href="/__pyric/ui/docs/pyric-app-reference-api/"> pyric/app </a> </li><li> <a href="/__pyric/ui/docs/pyric-firestore-reference-api/" aria-current="page"> pyric/firestore </a> </li><li> <a href="/__pyric/ui/docs/pyric-auth-reference-api/"> pyric/auth </a> </li><li> <a href="/__pyric/ui/docs/pyric-ai-reference-api/"> pyric/ai </a> </li><li> <a href="/__pyric/ui/docs/pyric-ai-scripting-reference-api/"> pyric/ai/scripting </a> </li><li> <a href="/__pyric/ui/docs/pyric-database-reference-api/"> pyric/database </a> </li><li> <a href="/__pyric/ui/docs/pyric-storage-reference-api/"> pyric/storage </a> </li><li> <a href="/__pyric/ui/docs/pyric-messaging-reference-api/"> pyric/messaging </a> </li><li> <a href="/__pyric/ui/docs/pyric-messaging-sw-reference-api/"> pyric/messaging/sw </a> </li><li> <a href="/__pyric/ui/docs/pyric-rules-reference-api/"> pyric/rules </a> </li><li> <a href="/__pyric/ui/docs/pyric-sandbox-reference-api/"> pyric/sandbox </a> </li><li> <a href="/__pyric/ui/docs/pyric-sandbox-firestore-reference-api/"> pyric/sandbox/firestore </a> </li><li> <a href="/__pyric/ui/docs/pyric-sandbox-database-reference-api/"> pyric/sandbox/database </a> </li> </ul> </div><div class="docs-nav-section"> <h2 class="docs-nav-heading">pyric-admin</h2> <ul> <li> <a href="/__pyric/ui/docs/pyric-admin-app-reference-api/"> pyric-admin/app </a> </li><li> <a href="/__pyric/ui/docs/pyric-admin-firestore-reference-api/"> pyric-admin/firestore </a> </li><li> <a href="/__pyric/ui/docs/pyric-admin-auth-reference-api/"> pyric-admin/auth </a> </li><li> <a href="/__pyric/ui/docs/pyric-admin-database-reference-api/"> pyric-admin/database </a> </li><li> <a href="/__pyric/ui/docs/pyric-admin-storage-reference-api/"> pyric-admin/storage </a> </li><li> <a href="/__pyric/ui/docs/pyric-admin-messaging-reference-api/"> pyric-admin/messaging </a> </li> </ul> </div><div class="docs-nav-section"> <h2 class="docs-nav-heading">create-pyric</h2> <ul> <li> <a href="/__pyric/ui/docs/create-pyric-reference-api/"> create-pyric </a> </li> </ul> </div><div class="docs-nav-section"> <h2 class="docs-nav-heading">@pyric/cli</h2> <ul> <li> <a href="/__pyric/ui/docs/pyric-cli-credentials-node-reference-api/"> @pyric/cli/credentials/node </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-verify-reference-api/"> @pyric/cli/verify </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-conformance-reference-api/"> @pyric/cli/conformance </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-conformance-browser-reference-api/"> @pyric/cli/conformance/browser </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-conformance-docs-reference-api/"> @pyric/cli/conformance/docs </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-assurance-reference-api/"> @pyric/cli/assurance </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-assurance-browser-reference-api/"> @pyric/cli/assurance/browser </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-bridge-reference-api/"> @pyric/cli/bridge </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-bridge-client-reference-api/"> @pyric/cli/bridge/client </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-discover-reference-api/"> @pyric/cli/discover </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-vite-reference-api/"> @pyric/cli/vite </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-serve-worker-reference-api/"> @pyric/cli/serve/worker </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-remote-reference-api/"> @pyric/cli/remote </a> </li><li> <a href="/__pyric/ui/docs/pyric-cli-register-reference-api/"> @pyric/cli/register </a> </li> </ul> </div><div class="docs-nav-section"> <h2 class="docs-nav-heading">@pyric/ui</h2> <ul> <li> <a href="/__pyric/ui/docs/pyric-ui-auth-reference-api/"> @pyric/ui/auth </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-auth-hooks-reference-api/"> @pyric/ui/auth/hooks </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-primitives-reference-api/"> @pyric/ui/primitives </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-firestore-reference-api/"> @pyric/ui/firestore </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-firestore-hooks-reference-api/"> @pyric/ui/firestore/hooks </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-rtdb-reference-api/"> @pyric/ui/rtdb </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-storage-reference-api/"> @pyric/ui/storage </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-storage-hooks-reference-api/"> @pyric/ui/storage/hooks </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-traffic-reference-api/"> @pyric/ui/traffic </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-traffic-hooks-reference-api/"> @pyric/ui/traffic/hooks </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-events-reference-api/"> @pyric/ui/events </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-events-hooks-reference-api/"> @pyric/ui/events/hooks </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-agents-reference-api/"> @pyric/ui/agents </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-rules-reference-api/"> @pyric/ui/rules </a> </li><li> <a href="/__pyric/ui/docs/pyric-ui-rules-hooks-reference-api/"> @pyric/ui/rules/hooks </a> </li> </ul> </div> </div> </details> </nav> <main class="doc-main" data-astro-cid-mw7aashj> <nav class="docs-breadcrumbs" aria-label="Breadcrumb"> <ol> <li> <a href="/__pyric/ui/docs/api-reference/">API reference</a> </li><li> <span class="docs-breadcrumbs-sep" aria-hidden="true">/</span> <span>pyric</span> </li><li> <span class="docs-breadcrumbs-sep" aria-hidden="true">/</span> <span aria-current="page">pyric/firestore</span> </li> </ol> </nav> <header class="api-reference-header" data-astro-cid-mw7aashj> <p class="api-reference-kicker" data-astro-cid-mw7aashj>API reference</p> <h1 data-astro-cid-mw7aashj><code data-astro-cid-mw7aashj>pyric/firestore</code></h1> <p class="api-reference-meta" data-astro-cid-mw7aashj> 112 published symbols from <code data-astro-cid-mw7aashj>pyric</code> </p> <p class="api-reference-source" data-astro-cid-mw7aashj>
|
|
3
3
|
Generated from the TypeScript declarations shipped at this import path.
|
|
4
|
-
</p> <a class="api-reference-evidence" href="/__pyric/ui/docs/firestore-compat/">
|
|
4
|
+
</p> <a class="api-reference-evidence" href="/__pyric/ui/docs/firestore-compat/" data-astro-cid-mw7aashj>
|
|
5
5
|
Check behavioral conformance
|
|
6
|
-
</a> </header> <article class="prose api-reference-body">
|
|
6
|
+
</a> </header> <article class="prose api-reference-body" data-astro-cid-mw7aashj> <!-- Generated from published package declarations via TypeDoc. Rendered by the api-reference content loader. -->
|
|
7
7
|
<h2 id="classes">Classes</h2>
|
|
8
8
|
<p><a id="bytes"></a></p>
|
|
9
9
|
<h3 id="bytes">Bytes</h3>
|
|
@@ -824,7 +824,17 @@ count-only entry point).</p>
|
|
|
824
824
|
|
|
825
825
|
|
|
826
826
|
|
|
827
|
-
|
|
827
|
+
|
|
828
|
+
|
|
829
|
+
|
|
830
|
+
|
|
831
|
+
|
|
832
|
+
|
|
833
|
+
|
|
834
|
+
|
|
835
|
+
|
|
836
|
+
|
|
837
|
+
<table><thead><tr><th align="left">Property</th><th align="left">Modifier</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><a id="exists"></a> <code>exists</code></td><td align="left"><code>readonly</code></td><td align="left"><code>boolean</code> | () => <code>boolean</code></td></tr><tr><td align="left"><a id="id-2"></a> <code>id</code></td><td align="left"><code>readonly</code></td><td align="left"><code>string</code></td></tr><tr><td align="left"><a id="metadata"></a> <code>metadata</code></td><td align="left"><code>readonly</code></td><td align="left"><a href="#snapshotmetadata"><code>SnapshotMetadata</code></a></td></tr><tr><td align="left"><a id="ref"></a> <code>ref</code></td><td align="left"><code>readonly</code></td><td align="left"><a href="#documentreference"><code>DocumentReference</code></a><<code>T</code>></td></tr></tbody></table></div>
|
|
828
838
|
<h4 id="methods-7">Methods</h4>
|
|
829
839
|
<p><a id="data-2"></a></p>
|
|
830
840
|
<h5 id="data-1">data()</h5>
|
|
@@ -1187,6 +1197,26 @@ to opt into. Carries the requested kind only for debugging.</p>
|
|
|
1187
1197
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>q</code></td><td align="left"><a href="/docs/pyric-admin-firestore-reference-api/#query"><code>Query</code></a></td></tr></tbody></table></div>
|
|
1188
1198
|
<h6 id="returns-45">Returns</h6>
|
|
1189
1199
|
<p><a href="/docs/pyric-admin-firestore-reference-api/#query"><code>Query</code></a></p>
|
|
1200
|
+
<p><a id="preparesandbox"></a></p>
|
|
1201
|
+
<h5 id="preparesandbox">prepareSandbox()?</h5>
|
|
1202
|
+
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#E06C75">optional</span><span style="color:#61AFEF"> prepareSandbox</span><span style="color:#ABB2BF">(</span><span style="color:#E06C75">owner</span><span style="color:#ABB2BF">: </span><span style="color:#E06C75">object</span><span style="color:#ABB2BF">): </span><span style="color:#E06C75">QueryConstraint</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
1203
|
+
<h6 id="parameters-25">Parameters</h6>
|
|
1204
|
+
<div class="table-scroll">
|
|
1205
|
+
|
|
1206
|
+
|
|
1207
|
+
|
|
1208
|
+
|
|
1209
|
+
|
|
1210
|
+
|
|
1211
|
+
|
|
1212
|
+
|
|
1213
|
+
|
|
1214
|
+
|
|
1215
|
+
|
|
1216
|
+
|
|
1217
|
+
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>owner</code></td><td align="left"><code>object</code></td></tr></tbody></table></div>
|
|
1218
|
+
<h6 id="returns-46">Returns</h6>
|
|
1219
|
+
<p><a href="#queryconstraint"><code>QueryConstraint</code></a></p>
|
|
1190
1220
|
<hr>
|
|
1191
1221
|
<p><a id="querydocumentsnapshot"></a></p>
|
|
1192
1222
|
<h3 id="querydocumentsnapshot">QueryDocumentSnapshot</h3>
|
|
@@ -1234,12 +1264,22 @@ callbacks. Mirrors the JS SDK’s narrowing.</p>
|
|
|
1234
1264
|
|
|
1235
1265
|
|
|
1236
1266
|
|
|
1237
|
-
|
|
1267
|
+
|
|
1268
|
+
|
|
1269
|
+
|
|
1270
|
+
|
|
1271
|
+
|
|
1272
|
+
|
|
1273
|
+
|
|
1274
|
+
|
|
1275
|
+
|
|
1276
|
+
|
|
1277
|
+
<table><thead><tr><th align="left">Property</th><th align="left">Modifier</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><a id="exists-1"></a> <code>exists</code></td><td align="left"><code>readonly</code></td><td align="left"><code>boolean</code> | () => <code>boolean</code></td></tr><tr><td align="left"><a id="id-3"></a> <code>id</code></td><td align="left"><code>readonly</code></td><td align="left"><code>string</code></td></tr><tr><td align="left"><a id="metadata-1"></a> <code>metadata</code></td><td align="left"><code>readonly</code></td><td align="left"><a href="#snapshotmetadata"><code>SnapshotMetadata</code></a></td></tr><tr><td align="left"><a id="ref-1"></a> <code>ref</code></td><td align="left"><code>readonly</code></td><td align="left"><a href="#documentreference"><code>DocumentReference</code></a><<code>T</code>></td></tr></tbody></table></div>
|
|
1238
1278
|
<h4 id="methods-12">Methods</h4>
|
|
1239
1279
|
<p><a id="data-4"></a></p>
|
|
1240
1280
|
<h5 id="data-2">data()</h5>
|
|
1241
1281
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#61AFEF">data</span><span style="color:#ABB2BF">(): </span><span style="color:#E5C07B">T</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
1242
|
-
<h6 id="returns-
|
|
1282
|
+
<h6 id="returns-47">Returns</h6>
|
|
1243
1283
|
<p><code>T</code></p>
|
|
1244
1284
|
<h6 id="overrides-2">Overrides</h6>
|
|
1245
1285
|
<p><a href="#documentsnapshot"><code>DocumentSnapshot</code></a>.<a href="#data-2"><code>data</code></a></p>
|
|
@@ -1288,7 +1328,12 @@ callbacks. Mirrors the JS SDK’s narrowing.</p>
|
|
|
1288
1328
|
|
|
1289
1329
|
|
|
1290
1330
|
|
|
1291
|
-
|
|
1331
|
+
|
|
1332
|
+
|
|
1333
|
+
|
|
1334
|
+
|
|
1335
|
+
|
|
1336
|
+
<table><thead><tr><th align="left">Property</th><th align="left">Modifier</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><a id="docs"></a> <code>docs</code></td><td align="left"><code>readonly</code></td><td align="left">readonly <a href="#querydocumentsnapshot"><code>QueryDocumentSnapshot</code></a><<code>T</code>>[]</td></tr><tr><td align="left"><a id="empty"></a> <code>empty</code></td><td align="left"><code>readonly</code></td><td align="left"><code>boolean</code></td></tr><tr><td align="left"><a id="metadata-2"></a> <code>metadata</code></td><td align="left"><code>readonly</code></td><td align="left"><a href="#snapshotmetadata"><code>SnapshotMetadata</code></a></td></tr><tr><td align="left"><a id="size"></a> <code>size</code></td><td align="left"><code>readonly</code></td><td align="left"><code>number</code></td></tr></tbody></table></div>
|
|
1292
1337
|
<hr>
|
|
1293
1338
|
<p><a id="sandbox"></a></p>
|
|
1294
1339
|
<h3 id="sandbox">Sandbox</h3>
|
|
@@ -1348,7 +1393,7 @@ and no in-place mutation.</p>
|
|
|
1348
1393
|
is left intact — call <code>reset()</code> if you want both. Useful for
|
|
1349
1394
|
“sign out and forget” flows.</p>
|
|
1350
1395
|
<p>No-op when persistence is not enabled.</p>
|
|
1351
|
-
<h6 id="returns-
|
|
1396
|
+
<h6 id="returns-48">Returns</h6>
|
|
1352
1397
|
<p><code>Promise</code><<code>void</code>></p>
|
|
1353
1398
|
<p><a id="dispose"></a></p>
|
|
1354
1399
|
<h5 id="dispose">dispose()</h5>
|
|
@@ -1358,7 +1403,7 @@ replacing it. Use this when you’re about to discard the sandbox
|
|
|
1358
1403
|
itself (e.g. <code>runner.reseed()</code> builds a fresh sandbox rather than
|
|
1359
1404
|
calling <code>reset()</code>) and want to drop callback references on the
|
|
1360
1405
|
outgoing instance defensively. Idempotent. Does not touch data.</p>
|
|
1361
|
-
<h6 id="returns-
|
|
1406
|
+
<h6 id="returns-49">Returns</h6>
|
|
1362
1407
|
<p><code>void</code></p>
|
|
1363
1408
|
<p><a id="enablepersistence"></a></p>
|
|
1364
1409
|
<h5 id="enablepersistence">enablePersistence()</h5>
|
|
@@ -1380,7 +1425,7 @@ flush on <code>beforeunload</code> so a page navigation doesn’t lose the
|
|
|
1380
1425
|
tail of the debounce window.</p>
|
|
1381
1426
|
<p>See <a href="/docs/pyric-sandbox-reference-api/#sandboxpersistenceoptions">SandboxPersistenceOptions</a> for backend selection and
|
|
1382
1427
|
tuning.</p>
|
|
1383
|
-
<h6 id="parameters-
|
|
1428
|
+
<h6 id="parameters-26">Parameters</h6>
|
|
1384
1429
|
<div class="table-scroll">
|
|
1385
1430
|
|
|
1386
1431
|
|
|
@@ -1395,7 +1440,7 @@ tuning.</p>
|
|
|
1395
1440
|
|
|
1396
1441
|
|
|
1397
1442
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>options</code></td><td align="left"><a href="/docs/pyric-sandbox-reference-api/#sandboxpersistenceoptions"><code>SandboxPersistenceOptions</code></a></td></tr></tbody></table></div>
|
|
1398
|
-
<h6 id="returns-
|
|
1443
|
+
<h6 id="returns-50">Returns</h6>
|
|
1399
1444
|
<p><code>Promise</code><<code>void</code>></p>
|
|
1400
1445
|
<p><a id="enabletabsync"></a></p>
|
|
1401
1446
|
<h5 id="enabletabsync">enableTabSync()</h5>
|
|
@@ -1414,7 +1459,7 @@ produce last-write-wins divergence — there is no conflict resolution.
|
|
|
1414
1459
|
The intended model is one active writer (one user, one tab) with
|
|
1415
1460
|
observers in other tabs; this covers the overwhelming majority of
|
|
1416
1461
|
local development scenarios.</p>
|
|
1417
|
-
<h6 id="parameters-
|
|
1462
|
+
<h6 id="parameters-27">Parameters</h6>
|
|
1418
1463
|
<div class="table-scroll">
|
|
1419
1464
|
|
|
1420
1465
|
|
|
@@ -1429,9 +1474,9 @@ local development scenarios.</p>
|
|
|
1429
1474
|
|
|
1430
1475
|
|
|
1431
1476
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>options?</code></td><td align="left"><a href="/docs/pyric-sandbox-reference-api/#tabsyncoptions"><code>TabSyncOptions</code></a></td></tr></tbody></table></div>
|
|
1432
|
-
<h6 id="returns-50">Returns</h6>
|
|
1433
|
-
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#ABB2BF">(): </span><span style="color:#E5C07B">void</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
1434
1477
|
<h6 id="returns-51">Returns</h6>
|
|
1478
|
+
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#ABB2BF">(): </span><span style="color:#E5C07B">void</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
1479
|
+
<h6 id="returns-52">Returns</h6>
|
|
1435
1480
|
<p><code>void</code></p>
|
|
1436
1481
|
<h6 id="see">See</h6>
|
|
1437
1482
|
<p><a href="/docs/pyric-sandbox-reference-api/#tabsyncoptions">TabSyncOptions</a> for channel injection (tests) and originId.</p>
|
|
@@ -1449,7 +1494,7 @@ Useful before a manual navigation, or in tests that need
|
|
|
1449
1494
|
deterministic ordering against the debounce window. Resolves once
|
|
1450
1495
|
the write hits the backend.</p>
|
|
1451
1496
|
<p>Throws if persistence is not enabled.</p>
|
|
1452
|
-
<h6 id="returns-
|
|
1497
|
+
<h6 id="returns-53">Returns</h6>
|
|
1453
1498
|
<p><code>Promise</code><<code>void</code>></p>
|
|
1454
1499
|
<p><a id="history"></a></p>
|
|
1455
1500
|
<h5 id="history">history()</h5>
|
|
@@ -1466,7 +1511,7 @@ before subscribing) or that need a snapshot at a particular moment.</p>
|
|
|
1466
1511
|
<p><code>reset()</code> and <code>dispose()</code> each append a closing <code>session_boundary</code>
|
|
1467
1512
|
event; <code>reset()</code> then clears the history. Consumers that took a
|
|
1468
1513
|
snapshot <em>before</em> reset retain the boundary in their copy.</p>
|
|
1469
|
-
<h6 id="returns-
|
|
1514
|
+
<h6 id="returns-54">Returns</h6>
|
|
1470
1515
|
<p><a href="/docs/pyric-sandbox-reference-api/#sandboxevent"><code>SandboxEvent</code></a>[]</p>
|
|
1471
1516
|
<p><a id="loadsnapshot"></a></p>
|
|
1472
1517
|
<h5 id="loadsnapshot">loadSnapshot()</h5>
|
|
@@ -1483,7 +1528,7 @@ Services present in <code>data</code> but not currently registered are skipped (
|
|
|
1483
1528
|
snapshot taken via <a href="#snapshot">snapshot</a> always includes every registered
|
|
1484
1529
|
service, so this only affects cross-instance imports from a sandbox that had
|
|
1485
1530
|
a service this one lacks).</p>
|
|
1486
|
-
<h6 id="parameters-
|
|
1531
|
+
<h6 id="parameters-28">Parameters</h6>
|
|
1487
1532
|
<div class="table-scroll">
|
|
1488
1533
|
|
|
1489
1534
|
|
|
@@ -1498,7 +1543,7 @@ a service this one lacks).</p>
|
|
|
1498
1543
|
|
|
1499
1544
|
|
|
1500
1545
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>data</code></td><td align="left"><a href="/docs/pyric-sandbox-reference-api/#sandboxsnapshot"><code>SandboxSnapshot</code></a></td></tr></tbody></table></div>
|
|
1501
|
-
<h6 id="returns-
|
|
1546
|
+
<h6 id="returns-55">Returns</h6>
|
|
1502
1547
|
<p><code>void</code></p>
|
|
1503
1548
|
<p><a id="oncurrentuserchanged"></a></p>
|
|
1504
1549
|
<h5 id="oncurrentuserchanged">onCurrentUserChanged()</h5>
|
|
@@ -1515,7 +1560,7 @@ the env.</p>
|
|
|
1515
1560
|
<p>Returns an unsubscribe function. Listener errors are swallowed —
|
|
1516
1561
|
subscribers are observational, the sandbox does not propagate
|
|
1517
1562
|
their errors.</p>
|
|
1518
|
-
<h6 id="parameters-
|
|
1563
|
+
<h6 id="parameters-29">Parameters</h6>
|
|
1519
1564
|
<div class="table-scroll">
|
|
1520
1565
|
|
|
1521
1566
|
|
|
@@ -1530,9 +1575,9 @@ their errors.</p>
|
|
|
1530
1575
|
|
|
1531
1576
|
|
|
1532
1577
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>cb</code></td><td align="left">(<code>user</code>: { <code>token?</code>: <code>Record</code><<code>string</code>, <code>unknown</code>>; <code>uid</code>: <code>string</code>; }) => <code>void</code></td></tr></tbody></table></div>
|
|
1533
|
-
<h6 id="returns-55">Returns</h6>
|
|
1534
|
-
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#ABB2BF">(): </span><span style="color:#E5C07B">void</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
1535
1578
|
<h6 id="returns-56">Returns</h6>
|
|
1579
|
+
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#ABB2BF">(): </span><span style="color:#E5C07B">void</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
1580
|
+
<h6 id="returns-57">Returns</h6>
|
|
1536
1581
|
<p><code>void</code></p>
|
|
1537
1582
|
<p><a id="onevent"></a></p>
|
|
1538
1583
|
<h5 id="onevent">onEvent()</h5>
|
|
@@ -1557,7 +1602,7 @@ faulty subscriber can’t change rule semantics or hide other events.
|
|
|
1557
1602
|
Both synchronous throws and rejected Promises from async callbacks
|
|
1558
1603
|
are silently discarded — subscribers are <strong>observational</strong>, the
|
|
1559
1604
|
sandbox doesn’t await them and doesn’t propagate their errors.</p>
|
|
1560
|
-
<h6 id="parameters-
|
|
1605
|
+
<h6 id="parameters-30">Parameters</h6>
|
|
1561
1606
|
<div class="table-scroll">
|
|
1562
1607
|
|
|
1563
1608
|
|
|
@@ -1572,9 +1617,9 @@ sandbox doesn’t await them and doesn’t propagate their errors.</p>
|
|
|
1572
1617
|
|
|
1573
1618
|
|
|
1574
1619
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>cb</code></td><td align="left">(<code>event</code>: <a href="/docs/pyric-sandbox-reference-api/#sandboxevent"><code>SandboxEvent</code></a>) => <code>void</code></td></tr></tbody></table></div>
|
|
1575
|
-
<h6 id="returns-57">Returns</h6>
|
|
1576
|
-
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#ABB2BF">(): </span><span style="color:#E5C07B">void</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
1577
1620
|
<h6 id="returns-58">Returns</h6>
|
|
1621
|
+
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#ABB2BF">(): </span><span style="color:#E5C07B">void</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
1622
|
+
<h6 id="returns-59">Returns</h6>
|
|
1578
1623
|
<p><code>void</code></p>
|
|
1579
1624
|
<p><a id="registerpersistableservice"></a></p>
|
|
1580
1625
|
<h5 id="registerpersistableservice">registerPersistableService()</h5>
|
|
@@ -1595,7 +1640,7 @@ registration is a caller bug, not a no-op.</p>
|
|
|
1595
1640
|
<p><strong>Advanced / internal API.</strong> Service packages (auth, storage) call
|
|
1596
1641
|
this when they first attach to a sandbox. Consumer app code should
|
|
1597
1642
|
not need to call this directly.</p>
|
|
1598
|
-
<h6 id="parameters-
|
|
1643
|
+
<h6 id="parameters-31">Parameters</h6>
|
|
1599
1644
|
<div class="table-scroll">
|
|
1600
1645
|
|
|
1601
1646
|
|
|
@@ -1614,9 +1659,9 @@ not need to call this directly.</p>
|
|
|
1614
1659
|
|
|
1615
1660
|
|
|
1616
1661
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>name</code></td><td align="left"><code>string</code></td></tr><tr><td align="left"><code>hooks</code></td><td align="left"><a href="/docs/pyric-sandbox-reference-api/#persistableservice"><code>PersistableService</code></a></td></tr></tbody></table></div>
|
|
1617
|
-
<h6 id="returns-59">Returns</h6>
|
|
1618
|
-
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#ABB2BF">(): </span><span style="color:#E5C07B">void</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
1619
1662
|
<h6 id="returns-60">Returns</h6>
|
|
1663
|
+
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#ABB2BF">(): </span><span style="color:#E5C07B">void</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
1664
|
+
<h6 id="returns-61">Returns</h6>
|
|
1620
1665
|
<p><code>void</code></p>
|
|
1621
1666
|
<p><a id="reset"></a></p>
|
|
1622
1667
|
<h5 id="reset">reset()</h5>
|
|
@@ -1630,7 +1675,7 @@ the sandbox, and a <code>session_boundary</code> event with <code>phase: 'reset'
|
|
|
1630
1675
|
fires before the swap so subscribers know the rollover happened.
|
|
1631
1676
|
Existing <a href="#sandboxcontext">SandboxContext</a>s continue to work — their sandbox
|
|
1632
1677
|
reference is stable; subsequent operations resolve to the new env.</p>
|
|
1633
|
-
<h6 id="returns-
|
|
1678
|
+
<h6 id="returns-62">Returns</h6>
|
|
1634
1679
|
<p><code>void</code></p>
|
|
1635
1680
|
<p><a id="resetall"></a></p>
|
|
1636
1681
|
<h5 id="resetall">resetAll()</h5>
|
|
@@ -1649,7 +1694,7 @@ returned promise resolves when every service has finished clearing.
|
|
|
1649
1694
|
A service whose <code>reset</code> throws is isolated (others still clear) and
|
|
1650
1695
|
REPORTED in the returned <code>errors</code> (as <code>name: message</code>) — a reset that
|
|
1651
1696
|
leaves data behind must never look successful to the caller.</p>
|
|
1652
|
-
<h6 id="returns-
|
|
1697
|
+
<h6 id="returns-63">Returns</h6>
|
|
1653
1698
|
<p><code>Promise</code><{
|
|
1654
1699
|
<code>errors</code>: <code>string</code>[];
|
|
1655
1700
|
}></p>
|
|
@@ -1689,7 +1734,7 @@ spell <code>sandbox.runWithProvenance?.(prov, fn) ?? fn()</code>.</p>
|
|
|
1689
1734
|
|
|
1690
1735
|
|
|
1691
1736
|
<table><thead><tr><th align="left">Type Parameter</th></tr></thead><tbody><tr><td align="left"><code>T</code></td></tr></tbody></table></div>
|
|
1692
|
-
<h6 id="parameters-
|
|
1737
|
+
<h6 id="parameters-32">Parameters</h6>
|
|
1693
1738
|
<div class="table-scroll">
|
|
1694
1739
|
|
|
1695
1740
|
|
|
@@ -1708,7 +1753,7 @@ spell <code>sandbox.runWithProvenance?.(prov, fn) ?? fn()</code>.</p>
|
|
|
1708
1753
|
|
|
1709
1754
|
|
|
1710
1755
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>provenance</code></td><td align="left"><a href="/docs/pyric-sandbox-reference-api/#eventprovenance"><code>EventProvenance</code></a></td></tr><tr><td align="left"><code>fn</code></td><td align="left">() => <code>T</code></td></tr></tbody></table></div>
|
|
1711
|
-
<h6 id="returns-
|
|
1756
|
+
<h6 id="returns-64">Returns</h6>
|
|
1712
1757
|
<p><code>T</code></p>
|
|
1713
1758
|
<p><a id="snapshot"></a></p>
|
|
1714
1759
|
<h5 id="snapshot">snapshot()</h5>
|
|
@@ -1716,7 +1761,7 @@ spell <code>sandbox.runWithProvenance?.(prov, fn) ?? fn()</code>.</p>
|
|
|
1716
1761
|
<p>Capture a snapshot of every service’s state. For v1 with only
|
|
1717
1762
|
Firestore, the return value carries a <code>firestore</code> key mapping doc
|
|
1718
1763
|
paths to data. Future services will add their own keys.</p>
|
|
1719
|
-
<h6 id="returns-
|
|
1764
|
+
<h6 id="returns-65">Returns</h6>
|
|
1720
1765
|
<p><a href="/docs/pyric-sandbox-reference-api/#sandboxsnapshot"><code>SandboxSnapshot</code></a></p>
|
|
1721
1766
|
<p><a id="withauth"></a></p>
|
|
1722
1767
|
<h5 id="withauth">withAuth()</h5>
|
|
@@ -1732,7 +1777,7 @@ coexist for one sandbox; data is shared.</p>
|
|
|
1732
1777
|
optional custom claims). Passing <code>undefined</code> is a deliberate
|
|
1733
1778
|
error — say <code>withAuth(null)</code> for anonymous so the call site is
|
|
1734
1779
|
unambiguous.</p>
|
|
1735
|
-
<h6 id="parameters-
|
|
1780
|
+
<h6 id="parameters-33">Parameters</h6>
|
|
1736
1781
|
<div class="table-scroll">
|
|
1737
1782
|
|
|
1738
1783
|
|
|
@@ -1755,7 +1800,7 @@ unambiguous.</p>
|
|
|
1755
1800
|
|
|
1756
1801
|
|
|
1757
1802
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>auth</code></td><td align="left">{ <code>token?</code>: <code>Record</code><<code>string</code>, <code>unknown</code>>; <code>uid</code>: <code>string</code>; }</td></tr><tr><td align="left"><code>auth.token?</code></td><td align="left"><code>Record</code><<code>string</code>, <code>unknown</code>></td></tr><tr><td align="left"><code>auth.uid</code></td><td align="left"><code>string</code></td></tr></tbody></table></div>
|
|
1758
|
-
<h6 id="returns-
|
|
1803
|
+
<h6 id="returns-66">Returns</h6>
|
|
1759
1804
|
<p><a href="#sandboxcontext"><code>SandboxContext</code></a></p>
|
|
1760
1805
|
<h6 id="example-1">Example</h6>
|
|
1761
1806
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">const</span><span style="color:#E5C07B"> sandbox</span><span style="color:#56B6C2"> =</span><span style="color:#61AFEF"> initializeSandbox</span><span style="color:#ABB2BF">();</span></span>
|
|
@@ -1826,7 +1871,7 @@ factories; consumers don’t construct it directly.</p>
|
|
|
1826
1871
|
<p>Derive a sibling context on the same sandbox with different auth.
|
|
1827
1872
|
Replaces auth and its lens while preserving the operation source and
|
|
1828
1873
|
optional plan identity.</p>
|
|
1829
|
-
<h6 id="parameters-
|
|
1874
|
+
<h6 id="parameters-34">Parameters</h6>
|
|
1830
1875
|
<div class="table-scroll">
|
|
1831
1876
|
|
|
1832
1877
|
|
|
@@ -1849,7 +1894,7 @@ optional plan identity.</p>
|
|
|
1849
1894
|
|
|
1850
1895
|
|
|
1851
1896
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>auth</code></td><td align="left">{ <code>token?</code>: <code>Record</code><<code>string</code>, <code>unknown</code>>; <code>uid</code>: <code>string</code>; }</td></tr><tr><td align="left"><code>auth.token?</code></td><td align="left"><code>Record</code><<code>string</code>, <code>unknown</code>></td></tr><tr><td align="left"><code>auth.uid</code></td><td align="left"><code>string</code></td></tr></tbody></table></div>
|
|
1852
|
-
<h6 id="returns-
|
|
1897
|
+
<h6 id="returns-67">Returns</h6>
|
|
1853
1898
|
<p><a href="#sandboxcontext"><code>SandboxContext</code></a></p>
|
|
1854
1899
|
<hr>
|
|
1855
1900
|
<p><a id="setoptions"></a></p>
|
|
@@ -1906,6 +1951,31 @@ matching the JS SDK’s effective behavior).</p>
|
|
|
1906
1951
|
|
|
1907
1952
|
<table><thead><tr><th align="left">Property</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><a id="includemetadatachanges"></a> <code>includeMetadataChanges?</code></td><td align="left"><code>boolean</code></td></tr></tbody></table></div>
|
|
1908
1953
|
<hr>
|
|
1954
|
+
<p><a id="snapshotmetadata"></a></p>
|
|
1955
|
+
<h3 id="snapshotmetadata">SnapshotMetadata</h3>
|
|
1956
|
+
<h4 id="properties-18">Properties</h4>
|
|
1957
|
+
<div class="table-scroll">
|
|
1958
|
+
|
|
1959
|
+
|
|
1960
|
+
|
|
1961
|
+
|
|
1962
|
+
|
|
1963
|
+
|
|
1964
|
+
|
|
1965
|
+
|
|
1966
|
+
|
|
1967
|
+
|
|
1968
|
+
|
|
1969
|
+
|
|
1970
|
+
|
|
1971
|
+
|
|
1972
|
+
|
|
1973
|
+
|
|
1974
|
+
|
|
1975
|
+
|
|
1976
|
+
|
|
1977
|
+
<table><thead><tr><th align="left">Property</th><th align="left">Modifier</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><a id="fromcache"></a> <code>fromCache</code></td><td align="left"><code>readonly</code></td><td align="left"><code>boolean</code></td></tr><tr><td align="left"><a id="haspendingwrites"></a> <code>hasPendingWrites</code></td><td align="left"><code>readonly</code></td><td align="left"><code>boolean</code></td></tr></tbody></table></div>
|
|
1978
|
+
<hr>
|
|
1909
1979
|
<p><a id="snapshotobserver"></a></p>
|
|
1910
1980
|
<h3 id="snapshotobserver">SnapshotObserver</h3>
|
|
1911
1981
|
<h4 id="type-parameters-9">Type Parameters</h4>
|
|
@@ -1921,7 +1991,7 @@ matching the JS SDK’s effective behavior).</p>
|
|
|
1921
1991
|
|
|
1922
1992
|
|
|
1923
1993
|
<table><thead><tr><th align="left">Type Parameter</th></tr></thead><tbody><tr><td align="left"><code>T</code></td></tr></tbody></table></div>
|
|
1924
|
-
<h4 id="properties-
|
|
1994
|
+
<h4 id="properties-19">Properties</h4>
|
|
1925
1995
|
<div class="table-scroll">
|
|
1926
1996
|
|
|
1927
1997
|
|
|
@@ -1945,9 +2015,28 @@ matching the JS SDK’s effective behavior).</p>
|
|
|
1945
2015
|
|
|
1946
2016
|
<table><thead><tr><th align="left">Property</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><a id="complete"></a> <code>complete?</code></td><td align="left">() => <code>void</code></td></tr><tr><td align="left"><a id="error"></a> <code>error?</code></td><td align="left">(<code>error</code>: <code>unknown</code>) => <code>void</code></td></tr><tr><td align="left"><a id="next"></a> <code>next?</code></td><td align="left">(<code>snapshot</code>: <code>T</code>) => <code>void</code></td></tr></tbody></table></div>
|
|
1947
2017
|
<hr>
|
|
2018
|
+
<p><a id="transactionoptions"></a></p>
|
|
2019
|
+
<h3 id="transactionoptions">TransactionOptions</h3>
|
|
2020
|
+
<p>Options accepted by the modular Web-SDK-shaped <code>runTransaction</code>.</p>
|
|
2021
|
+
<h4 id="properties-20">Properties</h4>
|
|
2022
|
+
<div class="table-scroll">
|
|
2023
|
+
|
|
2024
|
+
|
|
2025
|
+
|
|
2026
|
+
|
|
2027
|
+
|
|
2028
|
+
|
|
2029
|
+
|
|
2030
|
+
|
|
2031
|
+
|
|
2032
|
+
|
|
2033
|
+
|
|
2034
|
+
|
|
2035
|
+
<table><thead><tr><th align="left">Property</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><a id="maxattempts"></a> <code>maxAttempts?</code></td><td align="left"><code>number</code></td></tr></tbody></table></div>
|
|
2036
|
+
<hr>
|
|
1948
2037
|
<p><a id="userauth"></a></p>
|
|
1949
2038
|
<h3 id="userauth">UserAuth</h3>
|
|
1950
|
-
<h4 id="properties-
|
|
2039
|
+
<h4 id="properties-21">Properties</h4>
|
|
1951
2040
|
<div class="table-scroll">
|
|
1952
2041
|
|
|
1953
2042
|
|
|
@@ -2053,7 +2142,7 @@ names should reflect that.</p>
|
|
|
2053
2142
|
<hr>
|
|
2054
2143
|
<p><a id="orderdirection"></a></p>
|
|
2055
2144
|
<h3 id="orderdirection">OrderDirection</h3>
|
|
2056
|
-
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">type</span><span style="color:#E5C07B"> OrderDirection</span><span style="color:#56B6C2"> =</span><span style="color:#
|
|
2145
|
+
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">type</span><span style="color:#E5C07B"> OrderDirection</span><span style="color:#56B6C2"> =</span><span style="color:#E5C07B"> QueryOrderDirection</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
2057
2146
|
<hr>
|
|
2058
2147
|
<p><a id="transaction"></a></p>
|
|
2059
2148
|
<h3 id="transaction">Transaction</h3>
|
|
@@ -2062,22 +2151,12 @@ names should reflect that.</p>
|
|
|
2062
2151
|
<p><a id="unsubscribe"></a></p>
|
|
2063
2152
|
<h3 id="unsubscribe">Unsubscribe()</h3>
|
|
2064
2153
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">type</span><span style="color:#E5C07B"> Unsubscribe</span><span style="color:#56B6C2"> =</span><span style="color:#ABB2BF"> () </span><span style="color:#C678DD">=></span><span style="color:#E5C07B"> void</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
2065
|
-
<h4 id="returns-
|
|
2154
|
+
<h4 id="returns-68">Returns</h4>
|
|
2066
2155
|
<p><code>void</code></p>
|
|
2067
2156
|
<hr>
|
|
2068
2157
|
<p><a id="wherefilterop"></a></p>
|
|
2069
2158
|
<h3 id="wherefilterop">WhereFilterOp</h3>
|
|
2070
|
-
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">type</span><span style="color:#E5C07B"> WhereFilterOp</span><span style="color:#56B6C2"> =</span></span>
|
|
2071
|
-
<span class="line"><span style="color:#ABB2BF"> | </span><span style="color:#98C379">"<"</span></span>
|
|
2072
|
-
<span class="line"><span style="color:#ABB2BF"> | </span><span style="color:#98C379">"<="</span></span>
|
|
2073
|
-
<span class="line"><span style="color:#ABB2BF"> | </span><span style="color:#98C379">"=="</span></span>
|
|
2074
|
-
<span class="line"><span style="color:#ABB2BF"> | </span><span style="color:#98C379">"!="</span></span>
|
|
2075
|
-
<span class="line"><span style="color:#ABB2BF"> | </span><span style="color:#98C379">">="</span></span>
|
|
2076
|
-
<span class="line"><span style="color:#ABB2BF"> | </span><span style="color:#98C379">">"</span></span>
|
|
2077
|
-
<span class="line"><span style="color:#ABB2BF"> | </span><span style="color:#98C379">"in"</span></span>
|
|
2078
|
-
<span class="line"><span style="color:#ABB2BF"> | </span><span style="color:#98C379">"not-in"</span></span>
|
|
2079
|
-
<span class="line"><span style="color:#ABB2BF"> | </span><span style="color:#98C379">"array-contains"</span></span>
|
|
2080
|
-
<span class="line"><span style="color:#ABB2BF"> | </span><span style="color:#98C379">"array-contains-any"</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
2159
|
+
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">type</span><span style="color:#E5C07B"> WhereFilterOp</span><span style="color:#56B6C2"> =</span><span style="color:#E5C07B"> QueryWhereFilterOp</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
2081
2160
|
<hr>
|
|
2082
2161
|
<p><a id="writebatch"></a></p>
|
|
2083
2162
|
<h3 id="writebatch">WriteBatch</h3>
|
|
@@ -2101,7 +2180,7 @@ rules as that user (<code>request.auth.uid === uid</code>; custom claims via <co
|
|
|
2101
2180
|
<code>actingAs(sandbox, null)</code> is the anonymous (signed-out) path. Multiple
|
|
2102
2181
|
identities over ONE sandbox share the same store, so a write by one is
|
|
2103
2182
|
delivered to another’s <code>onSnapshot</code>: the basis for multi-user sync testing.</p>
|
|
2104
|
-
<h4 id="parameters-
|
|
2183
|
+
<h4 id="parameters-35">Parameters</h4>
|
|
2105
2184
|
<div class="table-scroll">
|
|
2106
2185
|
|
|
2107
2186
|
|
|
@@ -2128,7 +2207,7 @@ delivered to another’s <code>onSnapshot</code>: the basis for multi-user sync
|
|
|
2128
2207
|
|
|
2129
2208
|
|
|
2130
2209
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>sandbox</code></td><td align="left"><a href="#sandbox"><code>Sandbox</code></a></td></tr><tr><td align="left"><code>identity</code></td><td align="left">{ <code>token?</code>: <code>Record</code><<code>string</code>, <code>unknown</code>>; <code>uid</code>: <code>string</code>; }</td></tr><tr><td align="left"><code>identity.token?</code></td><td align="left"><code>Record</code><<code>string</code>, <code>unknown</code>></td></tr><tr><td align="left"><code>identity.uid</code></td><td align="left"><code>string</code></td></tr></tbody></table></div>
|
|
2131
|
-
<h4 id="returns-
|
|
2210
|
+
<h4 id="returns-69">Returns</h4>
|
|
2132
2211
|
<p><a href="#firestore"><code>Firestore</code></a></p>
|
|
2133
2212
|
<h4 id="example-2">Example</h4>
|
|
2134
2213
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">import</span><span style="color:#ABB2BF"> { </span><span style="color:#E06C75">initializeSandbox</span><span style="color:#ABB2BF"> } </span><span style="color:#C678DD">from</span><span style="color:#98C379"> 'pyric/sandbox'</span><span style="color:#ABB2BF">;</span></span>
|
|
@@ -2162,7 +2241,7 @@ the design rationale.</p>
|
|
|
2162
2241
|
|
|
2163
2242
|
|
|
2164
2243
|
<table><thead><tr><th align="left">Type Parameter</th><th align="left">Default type</th></tr></thead><tbody><tr><td align="left"><code>T</code></td><td align="left"><a href="#documentdata"><code>DocumentData</code></a></td></tr></tbody></table></div>
|
|
2165
|
-
<h4 id="parameters-
|
|
2244
|
+
<h4 id="parameters-36">Parameters</h4>
|
|
2166
2245
|
<div class="table-scroll">
|
|
2167
2246
|
|
|
2168
2247
|
|
|
@@ -2181,7 +2260,7 @@ the design rationale.</p>
|
|
|
2181
2260
|
|
|
2182
2261
|
|
|
2183
2262
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>coll</code></td><td align="left"><a href="#collectionreference"><code>CollectionReference</code></a><<code>T</code>></td></tr><tr><td align="left"><code>data</code></td><td align="left"><code>T</code></td></tr></tbody></table></div>
|
|
2184
|
-
<h4 id="returns-
|
|
2263
|
+
<h4 id="returns-70">Returns</h4>
|
|
2185
2264
|
<p><code>Promise</code><<a href="#documentreference"><code>DocumentReference</code></a><<code>T</code>>></p>
|
|
2186
2265
|
<hr>
|
|
2187
2266
|
<p><a id="and"></a></p>
|
|
@@ -2190,7 +2269,7 @@ the design rationale.</p>
|
|
|
2190
2269
|
<p>AND composite. Same shape as <code>or()</code> but every inner constraint
|
|
2191
2270
|
must match. Useful inside an <code>or()</code> to combine constraints that
|
|
2192
2271
|
would otherwise be at the top level.</p>
|
|
2193
|
-
<h4 id="parameters-
|
|
2272
|
+
<h4 id="parameters-37">Parameters</h4>
|
|
2194
2273
|
<div class="table-scroll">
|
|
2195
2274
|
|
|
2196
2275
|
|
|
@@ -2205,13 +2284,13 @@ would otherwise be at the top level.</p>
|
|
|
2205
2284
|
|
|
2206
2285
|
|
|
2207
2286
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left">…<code>filters</code></td><td align="left"><a href="#queryconstraint"><code>QueryConstraint</code></a>[]</td></tr></tbody></table></div>
|
|
2208
|
-
<h4 id="returns-
|
|
2287
|
+
<h4 id="returns-71">Returns</h4>
|
|
2209
2288
|
<p><a href="#queryconstraint"><code>QueryConstraint</code></a></p>
|
|
2210
2289
|
<hr>
|
|
2211
2290
|
<p><a id="arrayremove-2"></a></p>
|
|
2212
2291
|
<h3 id="arrayremove-1">arrayRemove()</h3>
|
|
2213
2292
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> arrayRemove</span><span style="color:#ABB2BF">(...</span><span style="color:#E06C75;font-style:italic">values</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">unknown</span><span style="color:#ABB2BF">[]): </span><span style="color:#E5C07B">FieldValueSentinel</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
2214
|
-
<h4 id="parameters-
|
|
2293
|
+
<h4 id="parameters-38">Parameters</h4>
|
|
2215
2294
|
<div class="table-scroll">
|
|
2216
2295
|
|
|
2217
2296
|
|
|
@@ -2226,13 +2305,13 @@ would otherwise be at the top level.</p>
|
|
|
2226
2305
|
|
|
2227
2306
|
|
|
2228
2307
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left">…<code>values</code></td><td align="left"><code>unknown</code>[]</td></tr></tbody></table></div>
|
|
2229
|
-
<h4 id="returns-
|
|
2308
|
+
<h4 id="returns-72">Returns</h4>
|
|
2230
2309
|
<p><a href="#fieldvaluesentinel"><code>FieldValueSentinel</code></a></p>
|
|
2231
2310
|
<hr>
|
|
2232
2311
|
<p><a id="arrayunion-2"></a></p>
|
|
2233
2312
|
<h3 id="arrayunion-1">arrayUnion()</h3>
|
|
2234
2313
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> arrayUnion</span><span style="color:#ABB2BF">(...</span><span style="color:#E06C75;font-style:italic">values</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">unknown</span><span style="color:#ABB2BF">[]): </span><span style="color:#E5C07B">FieldValueSentinel</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
2235
|
-
<h4 id="parameters-
|
|
2314
|
+
<h4 id="parameters-39">Parameters</h4>
|
|
2236
2315
|
<div class="table-scroll">
|
|
2237
2316
|
|
|
2238
2317
|
|
|
@@ -2247,14 +2326,14 @@ would otherwise be at the top level.</p>
|
|
|
2247
2326
|
|
|
2248
2327
|
|
|
2249
2328
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left">…<code>values</code></td><td align="left"><code>unknown</code>[]</td></tr></tbody></table></div>
|
|
2250
|
-
<h4 id="returns-
|
|
2329
|
+
<h4 id="returns-73">Returns</h4>
|
|
2251
2330
|
<p><a href="#fieldvaluesentinel"><code>FieldValueSentinel</code></a></p>
|
|
2252
2331
|
<hr>
|
|
2253
2332
|
<p><a id="average"></a></p>
|
|
2254
2333
|
<h3 id="average">average()</h3>
|
|
2255
2334
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> average</span><span style="color:#ABB2BF">(</span><span style="color:#E06C75;font-style:italic">field</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">string</span><span style="color:#ABB2BF">): </span><span style="color:#E5C07B">AggregateField</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
2256
2335
|
<p>Factory: average-of-<code>field</code> aggregate.</p>
|
|
2257
|
-
<h4 id="parameters-
|
|
2336
|
+
<h4 id="parameters-40">Parameters</h4>
|
|
2258
2337
|
<div class="table-scroll">
|
|
2259
2338
|
|
|
2260
2339
|
|
|
@@ -2269,7 +2348,7 @@ would otherwise be at the top level.</p>
|
|
|
2269
2348
|
|
|
2270
2349
|
|
|
2271
2350
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>field</code></td><td align="left"><code>string</code></td></tr></tbody></table></div>
|
|
2272
|
-
<h4 id="returns-
|
|
2351
|
+
<h4 id="returns-74">Returns</h4>
|
|
2273
2352
|
<p><a href="#aggregatefield"><code>AggregateField</code></a></p>
|
|
2274
2353
|
<hr>
|
|
2275
2354
|
<p><a id="clearindexeddbpersistence"></a></p>
|
|
@@ -2288,7 +2367,7 @@ same way as a <code>sandbox</code>/<code>sandbox-live</code> target’s <code>.s
|
|
|
2288
2367
|
both variants do, in fact, so this always has a sandbox to call into.</p>
|
|
2289
2368
|
<p>The real SDK requires this before Firestore starts; the sandbox’s mapped
|
|
2290
2369
|
<code>clearPersistence()</code> has no such restriction.</p>
|
|
2291
|
-
<h4 id="parameters-
|
|
2370
|
+
<h4 id="parameters-41">Parameters</h4>
|
|
2292
2371
|
<div class="table-scroll">
|
|
2293
2372
|
|
|
2294
2373
|
|
|
@@ -2303,7 +2382,7 @@ both variants do, in fact, so this always has a sandbox to call into.</p>
|
|
|
2303
2382
|
|
|
2304
2383
|
|
|
2305
2384
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>db</code></td><td align="left"><a href="#firestore"><code>Firestore</code></a></td></tr></tbody></table></div>
|
|
2306
|
-
<h4 id="returns-
|
|
2385
|
+
<h4 id="returns-75">Returns</h4>
|
|
2307
2386
|
<p><code>Promise</code><<code>void</code>></p>
|
|
2308
2387
|
<hr>
|
|
2309
2388
|
<p><a id="collection"></a></p>
|
|
@@ -2311,7 +2390,7 @@ both variants do, in fact, so this always has a sandbox to call into.</p>
|
|
|
2311
2390
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> collection</span><span style="color:#ABB2BF">(</span><span style="color:#E06C75;font-style:italic">parent</span><span style="color:#ABB2BF">:</span></span>
|
|
2312
2391
|
<span class="line"><span style="color:#ABB2BF"> | </span><span style="color:#E5C07B">Firestore</span></span>
|
|
2313
2392
|
<span class="line"><span style="color:#ABB2BF"> | </span><span style="color:#E5C07B">DocumentReference</span><span style="color:#ABB2BF"><</span><span style="color:#E5C07B">DocumentData</span><span style="color:#ABB2BF">>, ...</span><span style="color:#E06C75;font-style:italic">pathSegments</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">string</span><span style="color:#ABB2BF">[]): </span><span style="color:#E5C07B">CollectionReference</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
2314
|
-
<h4 id="parameters-
|
|
2393
|
+
<h4 id="parameters-42">Parameters</h4>
|
|
2315
2394
|
<div class="table-scroll">
|
|
2316
2395
|
|
|
2317
2396
|
|
|
@@ -2330,7 +2409,7 @@ both variants do, in fact, so this always has a sandbox to call into.</p>
|
|
|
2330
2409
|
|
|
2331
2410
|
|
|
2332
2411
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>parent</code></td><td align="left">| <a href="#firestore"><code>Firestore</code></a> | <a href="#documentreference"><code>DocumentReference</code></a><<a href="#documentdata"><code>DocumentData</code></a>></td></tr><tr><td align="left">…<code>pathSegments</code></td><td align="left"><code>string</code>[]</td></tr></tbody></table></div>
|
|
2333
|
-
<h4 id="returns-
|
|
2412
|
+
<h4 id="returns-76">Returns</h4>
|
|
2334
2413
|
<p><a href="#collectionreference"><code>CollectionReference</code></a></p>
|
|
2335
2414
|
<hr>
|
|
2336
2415
|
<p><a id="collectiongroup"></a></p>
|
|
@@ -2341,7 +2420,7 @@ collection whose final segment matches <code>collectionId</code>. Mirrors
|
|
|
2341
2420
|
<code>firebase/firestore</code>’s <code>collectionGroup(db, id)</code> shape.</p>
|
|
2342
2421
|
<p>Returned <code>Query</code> accepts the same <code>where</code> / <code>orderBy</code> / <code>limit</code>
|
|
2343
2422
|
constraints as any other query.</p>
|
|
2344
|
-
<h4 id="parameters-
|
|
2423
|
+
<h4 id="parameters-43">Parameters</h4>
|
|
2345
2424
|
<div class="table-scroll">
|
|
2346
2425
|
|
|
2347
2426
|
|
|
@@ -2360,7 +2439,7 @@ constraints as any other query.</p>
|
|
|
2360
2439
|
|
|
2361
2440
|
|
|
2362
2441
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>db</code></td><td align="left"><a href="#firestore"><code>Firestore</code></a></td></tr><tr><td align="left"><code>collectionId</code></td><td align="left"><code>string</code></td></tr></tbody></table></div>
|
|
2363
|
-
<h4 id="returns-
|
|
2442
|
+
<h4 id="returns-77">Returns</h4>
|
|
2364
2443
|
<p><a href="#query"><code>Query</code></a></p>
|
|
2365
2444
|
<hr>
|
|
2366
2445
|
<p><a id="connectfirestoreemulator"></a></p>
|
|
@@ -2384,7 +2463,7 @@ constraints as any other query.</p>
|
|
|
2384
2463
|
<p>No-op in the sandbox mirror because the sandbox already runs locally.</p>
|
|
2385
2464
|
<p>The option shape remains source-compatible with Firebase so canonical
|
|
2386
2465
|
initialization code can call it unconditionally.</p>
|
|
2387
|
-
<h4 id="parameters-
|
|
2466
|
+
<h4 id="parameters-44">Parameters</h4>
|
|
2388
2467
|
<div class="table-scroll">
|
|
2389
2468
|
|
|
2390
2469
|
|
|
@@ -2415,14 +2494,14 @@ initialization code can call it unconditionally.</p>
|
|
|
2415
2494
|
|
|
2416
2495
|
|
|
2417
2496
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>db</code></td><td align="left"><a href="#firestore"><code>Firestore</code></a></td></tr><tr><td align="left"><code>host</code></td><td align="left"><code>string</code></td></tr><tr><td align="left"><code>port</code></td><td align="left"><code>number</code></td></tr><tr><td align="left"><code>options?</code></td><td align="left">{ <code>mockUserToken?</code>: | <code>string</code> | { [<code>claim</code>: <code>string</code>]: <code>unknown</code>; <code>firebase?</code>: { <code>identities?</code>: <code>Record</code><<code>string</code>, <code>string</code>[]>; <code>sign_in_provider?</code>: <code>string</code>; }; <code>sub?</code>: <code>string</code>; <code>user_id?</code>: <code>string</code>; }; }</td></tr><tr><td align="left"><code>options.mockUserToken?</code></td><td align="left">| <code>string</code> | { [<code>claim</code>: <code>string</code>]: <code>unknown</code>; <code>firebase?</code>: { <code>identities?</code>: <code>Record</code><<code>string</code>, <code>string</code>[]>; <code>sign_in_provider?</code>: <code>string</code>; }; <code>sub?</code>: <code>string</code>; <code>user_id?</code>: <code>string</code>; }</td></tr></tbody></table></div>
|
|
2418
|
-
<h4 id="returns-
|
|
2497
|
+
<h4 id="returns-78">Returns</h4>
|
|
2419
2498
|
<p><code>void</code></p>
|
|
2420
2499
|
<hr>
|
|
2421
2500
|
<p><a id="count"></a></p>
|
|
2422
2501
|
<h3 id="count">count()</h3>
|
|
2423
2502
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> count</span><span style="color:#ABB2BF">(): </span><span style="color:#E5C07B">AggregateField</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
2424
2503
|
<p>Factory: count() aggregate.</p>
|
|
2425
|
-
<h4 id="returns-
|
|
2504
|
+
<h4 id="returns-79">Returns</h4>
|
|
2426
2505
|
<p><a href="#aggregatefield"><code>AggregateField</code></a></p>
|
|
2427
2506
|
<hr>
|
|
2428
2507
|
<p><a id="createfirestoredatatools"></a></p>
|
|
@@ -2431,7 +2510,7 @@ initialization code can call it unconditionally.</p>
|
|
|
2431
2510
|
<p>Modular Web-SDK-shaped Firestore data tools — get, list, create,
|
|
2432
2511
|
update, delete. Each tool’s <code>auth</code> arg is forwarded to the
|
|
2433
2512
|
resolver; omitted = admin mode, supplied = user mode.</p>
|
|
2434
|
-
<h4 id="parameters-
|
|
2513
|
+
<h4 id="parameters-45">Parameters</h4>
|
|
2435
2514
|
<div class="table-scroll">
|
|
2436
2515
|
|
|
2437
2516
|
|
|
@@ -2446,7 +2525,7 @@ resolver; omitted = admin mode, supplied = user mode.</p>
|
|
|
2446
2525
|
|
|
2447
2526
|
|
|
2448
2527
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>deps</code></td><td align="left"><a href="#firestoredatatooldeps"><code>FirestoreDataToolDeps</code></a></td></tr></tbody></table></div>
|
|
2449
|
-
<h4 id="returns-
|
|
2528
|
+
<h4 id="returns-80">Returns</h4>
|
|
2450
2529
|
<p><code>ToolHandler</code><<code>unknown</code>, <code>unknown</code>>[]</p>
|
|
2451
2530
|
<hr>
|
|
2452
2531
|
<p><a id="createfirestoreinspecttools"></a></p>
|
|
@@ -2465,7 +2544,7 @@ document census by collection, and the most-recent denials + requests
|
|
|
2465
2544
|
from sandbox.history(). Everything an agent needs to localize a
|
|
2466
2545
|
sandbox bug in one round-trip.</p>
|
|
2467
2546
|
<p>Sandbox-only. <code>resolveSandbox</code> must return the owning Sandbox.</p>
|
|
2468
|
-
<h4 id="parameters-
|
|
2547
|
+
<h4 id="parameters-46">Parameters</h4>
|
|
2469
2548
|
<div class="table-scroll">
|
|
2470
2549
|
|
|
2471
2550
|
|
|
@@ -2480,13 +2559,13 @@ sandbox bug in one round-trip.</p>
|
|
|
2480
2559
|
|
|
2481
2560
|
|
|
2482
2561
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>deps</code></td><td align="left"><a href="#firestoreinspecttooldeps"><code>FirestoreInspectToolDeps</code></a></td></tr></tbody></table></div>
|
|
2483
|
-
<h4 id="returns-
|
|
2562
|
+
<h4 id="returns-81">Returns</h4>
|
|
2484
2563
|
<p><code>ToolHandler</code><<code>unknown</code>, <code>unknown</code>>[]</p>
|
|
2485
2564
|
<hr>
|
|
2486
2565
|
<p><a id="deletedoc"></a></p>
|
|
2487
2566
|
<h3 id="deletedoc">deleteDoc()</h3>
|
|
2488
2567
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> deleteDoc</span><span style="color:#ABB2BF">(</span><span style="color:#E06C75;font-style:italic">ref</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">DocumentReference</span><span style="color:#ABB2BF">): </span><span style="color:#E5C07B">Promise</span><span style="color:#ABB2BF"><</span><span style="color:#E5C07B">void</span><span style="color:#ABB2BF">>;</span></span></code></pre>
|
|
2489
|
-
<h4 id="parameters-
|
|
2568
|
+
<h4 id="parameters-47">Parameters</h4>
|
|
2490
2569
|
<div class="table-scroll">
|
|
2491
2570
|
|
|
2492
2571
|
|
|
@@ -2501,13 +2580,13 @@ sandbox bug in one round-trip.</p>
|
|
|
2501
2580
|
|
|
2502
2581
|
|
|
2503
2582
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>ref</code></td><td align="left"><a href="#documentreference"><code>DocumentReference</code></a></td></tr></tbody></table></div>
|
|
2504
|
-
<h4 id="returns-
|
|
2583
|
+
<h4 id="returns-82">Returns</h4>
|
|
2505
2584
|
<p><code>Promise</code><<code>void</code>></p>
|
|
2506
2585
|
<hr>
|
|
2507
2586
|
<p><a id="deletefield"></a></p>
|
|
2508
2587
|
<h3 id="deletefield">deleteField()</h3>
|
|
2509
2588
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> deleteField</span><span style="color:#ABB2BF">(): </span><span style="color:#E5C07B">FieldValueSentinel</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
2510
|
-
<h4 id="returns-
|
|
2589
|
+
<h4 id="returns-83">Returns</h4>
|
|
2511
2590
|
<p><a href="#fieldvaluesentinel"><code>FieldValueSentinel</code></a></p>
|
|
2512
2591
|
<hr>
|
|
2513
2592
|
<p><a id="disablenetwork"></a></p>
|
|
@@ -2521,7 +2600,7 @@ queuing, because the sandbox cannot honestly deliver “queued until
|
|
|
2521
2600
|
reconnected” when there is no connection to lose in the first place.
|
|
2522
2601
|
App code that calls this to prep for flaky connectivity will not
|
|
2523
2602
|
crash, but it also will not observe write-queuing behavior.</p>
|
|
2524
|
-
<h4 id="parameters-
|
|
2603
|
+
<h4 id="parameters-48">Parameters</h4>
|
|
2525
2604
|
<div class="table-scroll">
|
|
2526
2605
|
|
|
2527
2606
|
|
|
@@ -2536,7 +2615,7 @@ crash, but it also will not observe write-queuing behavior.</p>
|
|
|
2536
2615
|
|
|
2537
2616
|
|
|
2538
2617
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>db</code></td><td align="left"><a href="#firestore"><code>Firestore</code></a></td></tr></tbody></table></div>
|
|
2539
|
-
<h4 id="returns-
|
|
2618
|
+
<h4 id="returns-84">Returns</h4>
|
|
2540
2619
|
<p><code>Promise</code><<code>void</code>></p>
|
|
2541
2620
|
<hr>
|
|
2542
2621
|
<p><a id="doc"></a></p>
|
|
@@ -2559,7 +2638,7 @@ crash, but it also will not observe write-queuing behavior.</p>
|
|
|
2559
2638
|
|
|
2560
2639
|
|
|
2561
2640
|
<table><thead><tr><th align="left">Type Parameter</th><th align="left">Default type</th></tr></thead><tbody><tr><td align="left"><code>T</code></td><td align="left"><a href="#documentdata"><code>DocumentData</code></a></td></tr></tbody></table></div>
|
|
2562
|
-
<h4 id="parameters-
|
|
2641
|
+
<h4 id="parameters-49">Parameters</h4>
|
|
2563
2642
|
<div class="table-scroll">
|
|
2564
2643
|
|
|
2565
2644
|
|
|
@@ -2578,29 +2657,22 @@ crash, but it also will not observe write-queuing behavior.</p>
|
|
|
2578
2657
|
|
|
2579
2658
|
|
|
2580
2659
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>parent</code></td><td align="left">| <a href="#firestore"><code>Firestore</code></a> | <a href="#collectionreference"><code>CollectionReference</code></a><<code>T</code>></td></tr><tr><td align="left">…<code>pathSegments</code></td><td align="left"><code>string</code>[]</td></tr></tbody></table></div>
|
|
2581
|
-
<h4 id="returns-
|
|
2660
|
+
<h4 id="returns-85">Returns</h4>
|
|
2582
2661
|
<p><a href="#documentreference"><code>DocumentReference</code></a><<code>T</code>></p>
|
|
2583
2662
|
<hr>
|
|
2584
2663
|
<p><a id="documentid"></a></p>
|
|
2585
2664
|
<h3 id="documentid">documentId()</h3>
|
|
2586
2665
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> documentId</span><span style="color:#ABB2BF">(): </span><span style="color:#E5C07B">FieldPath</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
2587
|
-
<h4 id="returns-
|
|
2666
|
+
<h4 id="returns-86">Returns</h4>
|
|
2588
2667
|
<p><a href="#fieldpath"><code>FieldPath</code></a></p>
|
|
2589
2668
|
<hr>
|
|
2590
2669
|
<p><a id="enableindexeddbpersistence"></a></p>
|
|
2591
2670
|
<h3 id="enableindexeddbpersistence">enableIndexedDbPersistence()</h3>
|
|
2592
2671
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> enableIndexedDbPersistence</span><span style="color:#ABB2BF">(</span><span style="color:#E06C75;font-style:italic">db</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">Firestore</span><span style="color:#ABB2BF">, </span><span style="color:#E06C75;font-style:italic">persistenceSettings</span><span style="color:#C678DD">?</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">PersistenceSettings</span><span style="color:#ABB2BF">): </span><span style="color:#E5C07B">Promise</span><span style="color:#ABB2BF"><</span><span style="color:#E5C07B">void</span><span style="color:#ABB2BF">>;</span></span></code></pre>
|
|
2593
|
-
<p>
|
|
2594
|
-
|
|
2595
|
-
|
|
2596
|
-
|
|
2597
|
-
<p>Unlike the real SDK, this does NOT reject with <code>'failed-precondition'</code>
|
|
2598
|
-
when called after other Firestore ops have already run. The guard
|
|
2599
|
-
exists in the real SDK to protect an actual cache-initialization
|
|
2600
|
-
race; the sandbox has no such race (there’s no cache to initialize),
|
|
2601
|
-
so enforcing the same restriction would only make app code that
|
|
2602
|
-
calls this defensively at startup fail for no local reason.</p>
|
|
2603
|
-
<h4 id="parameters-49">Parameters</h4>
|
|
2672
|
+
<p>Enables the persistence lifecycle before first use. As in the browser SDK,
|
|
2673
|
+
initialization after another Firestore operation rejects with
|
|
2674
|
+
<code>failed-precondition</code>.</p>
|
|
2675
|
+
<h4 id="parameters-50">Parameters</h4>
|
|
2604
2676
|
<div class="table-scroll">
|
|
2605
2677
|
|
|
2606
2678
|
|
|
@@ -2619,7 +2691,7 @@ calls this defensively at startup fail for no local reason.</p>
|
|
|
2619
2691
|
|
|
2620
2692
|
|
|
2621
2693
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>db</code></td><td align="left"><a href="#firestore"><code>Firestore</code></a></td></tr><tr><td align="left"><code>persistenceSettings?</code></td><td align="left"><a href="#persistencesettings"><code>PersistenceSettings</code></a></td></tr></tbody></table></div>
|
|
2622
|
-
<h4 id="returns-
|
|
2694
|
+
<h4 id="returns-87">Returns</h4>
|
|
2623
2695
|
<p><code>Promise</code><<code>void</code>></p>
|
|
2624
2696
|
<hr>
|
|
2625
2697
|
<p><a id="enablemultitabindexeddbpersistence"></a></p>
|
|
@@ -2629,7 +2701,7 @@ calls this defensively at startup fail for no local reason.</p>
|
|
|
2629
2701
|
Multi-tab coordination is meaningless here too: the sandbox’s
|
|
2630
2702
|
SharedWorker path already IS the single shared store every tab talks
|
|
2631
2703
|
to, so there’s no separate “multi-tab” mode to opt into.</p>
|
|
2632
|
-
<h4 id="parameters-
|
|
2704
|
+
<h4 id="parameters-51">Parameters</h4>
|
|
2633
2705
|
<div class="table-scroll">
|
|
2634
2706
|
|
|
2635
2707
|
|
|
@@ -2644,7 +2716,7 @@ to, so there’s no separate “multi-tab” mode to opt into.</p>
|
|
|
2644
2716
|
|
|
2645
2717
|
|
|
2646
2718
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>db</code></td><td align="left"><a href="#firestore"><code>Firestore</code></a></td></tr></tbody></table></div>
|
|
2647
|
-
<h4 id="returns-
|
|
2719
|
+
<h4 id="returns-88">Returns</h4>
|
|
2648
2720
|
<p><code>Promise</code><<code>void</code>></p>
|
|
2649
2721
|
<hr>
|
|
2650
2722
|
<p><a id="enablenetwork"></a></p>
|
|
@@ -2652,7 +2724,7 @@ to, so there’s no separate “multi-tab” mode to opt into.</p>
|
|
|
2652
2724
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> enableNetwork</span><span style="color:#ABB2BF">(</span><span style="color:#E06C75;font-style:italic">db</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">Firestore</span><span style="color:#ABB2BF">): </span><span style="color:#E5C07B">Promise</span><span style="color:#ABB2BF"><</span><span style="color:#E5C07B">void</span><span style="color:#ABB2BF">>;</span></span></code></pre>
|
|
2653
2725
|
<p>Sandbox: no-op success, symmetric with <a href="#disablenetwork">disableNetwork</a> — since
|
|
2654
2726
|
network was never disabled locally, there is nothing to re-enable.</p>
|
|
2655
|
-
<h4 id="parameters-
|
|
2727
|
+
<h4 id="parameters-52">Parameters</h4>
|
|
2656
2728
|
<div class="table-scroll">
|
|
2657
2729
|
|
|
2658
2730
|
|
|
@@ -2667,7 +2739,7 @@ network was never disabled locally, there is nothing to re-enable.</p>
|
|
|
2667
2739
|
|
|
2668
2740
|
|
|
2669
2741
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>db</code></td><td align="left"><a href="#firestore"><code>Firestore</code></a></td></tr></tbody></table></div>
|
|
2670
|
-
<h4 id="returns-
|
|
2742
|
+
<h4 id="returns-89">Returns</h4>
|
|
2671
2743
|
<p><code>Promise</code><<code>void</code>></p>
|
|
2672
2744
|
<hr>
|
|
2673
2745
|
<p><a id="endat"></a></p>
|
|
@@ -2676,7 +2748,7 @@ network was never disabled locally, there is nothing to re-enable.</p>
|
|
|
2676
2748
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> endAt</span><span style="color:#ABB2BF">(</span><span style="color:#E06C75;font-style:italic">snapshot</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">DocumentSnapshot</span><span style="color:#ABB2BF">): </span><span style="color:#E5C07B">QueryConstraint</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
2677
2749
|
<p>End the query at the document whose ordered field values match
|
|
2678
2750
|
the cursor. Inclusive — the document at the cursor IS included.</p>
|
|
2679
|
-
<h5 id="parameters-
|
|
2751
|
+
<h5 id="parameters-53">Parameters</h5>
|
|
2680
2752
|
<div class="table-scroll">
|
|
2681
2753
|
|
|
2682
2754
|
|
|
@@ -2691,13 +2763,13 @@ the cursor. Inclusive — the document at the cursor IS included.</p>
|
|
|
2691
2763
|
|
|
2692
2764
|
|
|
2693
2765
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>snapshot</code></td><td align="left"><a href="#documentsnapshot"><code>DocumentSnapshot</code></a></td></tr></tbody></table></div>
|
|
2694
|
-
<h5 id="returns-
|
|
2766
|
+
<h5 id="returns-90">Returns</h5>
|
|
2695
2767
|
<p><a href="#queryconstraint"><code>QueryConstraint</code></a></p>
|
|
2696
2768
|
<h4 id="call-signature-1">Call Signature</h4>
|
|
2697
2769
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> endAt</span><span style="color:#ABB2BF">(...</span><span style="color:#E06C75;font-style:italic">values</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">unknown</span><span style="color:#ABB2BF">[]): </span><span style="color:#E5C07B">QueryConstraint</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
2698
2770
|
<p>End the query at the document whose ordered field values match
|
|
2699
2771
|
the cursor. Inclusive — the document at the cursor IS included.</p>
|
|
2700
|
-
<h5 id="parameters-
|
|
2772
|
+
<h5 id="parameters-54">Parameters</h5>
|
|
2701
2773
|
<div class="table-scroll">
|
|
2702
2774
|
|
|
2703
2775
|
|
|
@@ -2712,7 +2784,7 @@ the cursor. Inclusive — the document at the cursor IS included.</p>
|
|
|
2712
2784
|
|
|
2713
2785
|
|
|
2714
2786
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left">…<code>values</code></td><td align="left"><code>unknown</code>[]</td></tr></tbody></table></div>
|
|
2715
|
-
<h5 id="returns-
|
|
2787
|
+
<h5 id="returns-91">Returns</h5>
|
|
2716
2788
|
<p><a href="#queryconstraint"><code>QueryConstraint</code></a></p>
|
|
2717
2789
|
<hr>
|
|
2718
2790
|
<p><a id="endbefore"></a></p>
|
|
@@ -2721,7 +2793,7 @@ the cursor. Inclusive — the document at the cursor IS included.</p>
|
|
|
2721
2793
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> endBefore</span><span style="color:#ABB2BF">(</span><span style="color:#E06C75;font-style:italic">snapshot</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">DocumentSnapshot</span><span style="color:#ABB2BF">): </span><span style="color:#E5C07B">QueryConstraint</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
2722
2794
|
<p>Same as <code>endAt</code>, but EXCLUDES the document at the cursor — the
|
|
2723
2795
|
result ends at the prior ordered position.</p>
|
|
2724
|
-
<h5 id="parameters-
|
|
2796
|
+
<h5 id="parameters-55">Parameters</h5>
|
|
2725
2797
|
<div class="table-scroll">
|
|
2726
2798
|
|
|
2727
2799
|
|
|
@@ -2736,13 +2808,13 @@ result ends at the prior ordered position.</p>
|
|
|
2736
2808
|
|
|
2737
2809
|
|
|
2738
2810
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>snapshot</code></td><td align="left"><a href="#documentsnapshot"><code>DocumentSnapshot</code></a></td></tr></tbody></table></div>
|
|
2739
|
-
<h5 id="returns-
|
|
2811
|
+
<h5 id="returns-92">Returns</h5>
|
|
2740
2812
|
<p><a href="#queryconstraint"><code>QueryConstraint</code></a></p>
|
|
2741
2813
|
<h4 id="call-signature-3">Call Signature</h4>
|
|
2742
2814
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> endBefore</span><span style="color:#ABB2BF">(...</span><span style="color:#E06C75;font-style:italic">values</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">unknown</span><span style="color:#ABB2BF">[]): </span><span style="color:#E5C07B">QueryConstraint</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
2743
2815
|
<p>Same as <code>endAt</code>, but EXCLUDES the document at the cursor — the
|
|
2744
2816
|
result ends at the prior ordered position.</p>
|
|
2745
|
-
<h5 id="parameters-
|
|
2817
|
+
<h5 id="parameters-56">Parameters</h5>
|
|
2746
2818
|
<div class="table-scroll">
|
|
2747
2819
|
|
|
2748
2820
|
|
|
@@ -2757,7 +2829,7 @@ result ends at the prior ordered position.</p>
|
|
|
2757
2829
|
|
|
2758
2830
|
|
|
2759
2831
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left">…<code>values</code></td><td align="left"><code>unknown</code>[]</td></tr></tbody></table></div>
|
|
2760
|
-
<h5 id="returns-
|
|
2832
|
+
<h5 id="returns-93">Returns</h5>
|
|
2761
2833
|
<p><a href="#queryconstraint"><code>QueryConstraint</code></a></p>
|
|
2762
2834
|
<hr>
|
|
2763
2835
|
<p><a id="getadminfirestore"></a></p>
|
|
@@ -2782,7 +2854,7 @@ handle is a FROZEN <code>sandbox</code> target: it does not track
|
|
|
2782
2854
|
<p>Intended for Studio’s “edit anything as admin” surfaces (F2) and the
|
|
2783
2855
|
serve worker’s <code>{ mode: 'admin' }</code> auth lens. For rules-applied
|
|
2784
2856
|
impersonation (“act as this user”), use <code>getFirestore(sandbox.withAuth({ uid }))</code> instead.</p>
|
|
2785
|
-
<h5 id="parameters-
|
|
2857
|
+
<h5 id="parameters-57">Parameters</h5>
|
|
2786
2858
|
<div class="table-scroll">
|
|
2787
2859
|
|
|
2788
2860
|
|
|
@@ -2797,7 +2869,7 @@ impersonation (“act as this user”), use <code>getFirestore(sandbox.withAuth(
|
|
|
2797
2869
|
|
|
2798
2870
|
|
|
2799
2871
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>sandbox</code></td><td align="left"><a href="#sandbox"><code>Sandbox</code></a></td></tr></tbody></table></div>
|
|
2800
|
-
<h5 id="returns-
|
|
2872
|
+
<h5 id="returns-94">Returns</h5>
|
|
2801
2873
|
<p><a href="#firestore"><code>Firestore</code></a></p>
|
|
2802
2874
|
<h5 id="example-3">Example</h5>
|
|
2803
2875
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">import</span><span style="color:#ABB2BF"> { </span><span style="color:#E06C75">initializeSandbox</span><span style="color:#ABB2BF"> } </span><span style="color:#C678DD">from</span><span style="color:#98C379"> 'pyric/sandbox'</span><span style="color:#ABB2BF">;</span></span>
|
|
@@ -2825,7 +2897,7 @@ handle is a FROZEN <code>sandbox</code> target: it does not track
|
|
|
2825
2897
|
<p>Intended for Studio’s “edit anything as admin” surfaces (F2) and the
|
|
2826
2898
|
serve worker’s <code>{ mode: 'admin' }</code> auth lens. For rules-applied
|
|
2827
2899
|
impersonation (“act as this user”), use <code>getFirestore(sandbox.withAuth({ uid }))</code> instead.</p>
|
|
2828
|
-
<h5 id="parameters-
|
|
2900
|
+
<h5 id="parameters-58">Parameters</h5>
|
|
2829
2901
|
<div class="table-scroll">
|
|
2830
2902
|
|
|
2831
2903
|
|
|
@@ -2840,7 +2912,7 @@ impersonation (“act as this user”), use <code>getFirestore(sandbox.withAuth(
|
|
|
2840
2912
|
|
|
2841
2913
|
|
|
2842
2914
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>ctx</code></td><td align="left"><a href="#sandboxcontext"><code>SandboxContext</code></a></td></tr></tbody></table></div>
|
|
2843
|
-
<h5 id="returns-
|
|
2915
|
+
<h5 id="returns-95">Returns</h5>
|
|
2844
2916
|
<p><a href="#firestore"><code>Firestore</code></a></p>
|
|
2845
2917
|
<h5 id="example-4">Example</h5>
|
|
2846
2918
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">import</span><span style="color:#ABB2BF"> { </span><span style="color:#E06C75">initializeSandbox</span><span style="color:#ABB2BF"> } </span><span style="color:#C678DD">from</span><span style="color:#98C379"> 'pyric/sandbox'</span><span style="color:#ABB2BF">;</span></span>
|
|
@@ -2868,7 +2940,7 @@ handle is a FROZEN <code>sandbox</code> target: it does not track
|
|
|
2868
2940
|
<p>Intended for Studio’s “edit anything as admin” surfaces (F2) and the
|
|
2869
2941
|
serve worker’s <code>{ mode: 'admin' }</code> auth lens. For rules-applied
|
|
2870
2942
|
impersonation (“act as this user”), use <code>getFirestore(sandbox.withAuth({ uid }))</code> instead.</p>
|
|
2871
|
-
<h5 id="parameters-
|
|
2943
|
+
<h5 id="parameters-59">Parameters</h5>
|
|
2872
2944
|
<div class="table-scroll">
|
|
2873
2945
|
|
|
2874
2946
|
|
|
@@ -2883,7 +2955,7 @@ impersonation (“act as this user”), use <code>getFirestore(sandbox.withAuth(
|
|
|
2883
2955
|
|
|
2884
2956
|
|
|
2885
2957
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>app</code></td><td align="left"><a href="/docs/pyric-app-reference-api/#firebaseapp"><code>FirebaseApp</code></a></td></tr></tbody></table></div>
|
|
2886
|
-
<h5 id="returns-
|
|
2958
|
+
<h5 id="returns-96">Returns</h5>
|
|
2887
2959
|
<p><a href="#firestore"><code>Firestore</code></a></p>
|
|
2888
2960
|
<h5 id="example-5">Example</h5>
|
|
2889
2961
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">import</span><span style="color:#ABB2BF"> { </span><span style="color:#E06C75">initializeSandbox</span><span style="color:#ABB2BF"> } </span><span style="color:#C678DD">from</span><span style="color:#98C379"> 'pyric/sandbox'</span><span style="color:#ABB2BF">;</span></span>
|
|
@@ -2914,7 +2986,7 @@ uses the same keys.</p>
|
|
|
2914
2986
|
|
|
2915
2987
|
|
|
2916
2988
|
<table><thead><tr><th align="left">Type Parameter</th></tr></thead><tbody><tr><td align="left"><code>S</code> <em>extends</em> <a href="#aggregatespec"><code>AggregateSpec</code></a></td></tr></tbody></table></div>
|
|
2917
|
-
<h4 id="parameters-
|
|
2989
|
+
<h4 id="parameters-60">Parameters</h4>
|
|
2918
2990
|
<div class="table-scroll">
|
|
2919
2991
|
|
|
2920
2992
|
|
|
@@ -2933,7 +3005,7 @@ uses the same keys.</p>
|
|
|
2933
3005
|
|
|
2934
3006
|
|
|
2935
3007
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>source</code></td><td align="left">| <a href="#query"><code>Query</code></a><<a href="#documentdata"><code>DocumentData</code></a>> | <a href="#collectionreference"><code>CollectionReference</code></a><<a href="#documentdata"><code>DocumentData</code></a>></td></tr><tr><td align="left"><code>spec</code></td><td align="left"><code>S</code></td></tr></tbody></table></div>
|
|
2936
|
-
<h4 id="returns-
|
|
3008
|
+
<h4 id="returns-97">Returns</h4>
|
|
2937
3009
|
<p><code>Promise</code><<a href="#aggregatequerysnapshot"><code>AggregateQuerySnapshot</code></a><{ [K in string | number | symbol]: number }>></p>
|
|
2938
3010
|
<hr>
|
|
2939
3011
|
<p><a id="getcountfromserver"></a></p>
|
|
@@ -2946,7 +3018,7 @@ uses the same keys.</p>
|
|
|
2946
3018
|
<p>Count documents matching the query. Returns a snapshot whose
|
|
2947
3019
|
<code>.data()</code> yields <code>{ count: N }</code> — same shape <code>firebase/firestore</code>’s
|
|
2948
3020
|
<code>getCountFromServer</code> produces.</p>
|
|
2949
|
-
<h4 id="parameters-
|
|
3021
|
+
<h4 id="parameters-61">Parameters</h4>
|
|
2950
3022
|
<div class="table-scroll">
|
|
2951
3023
|
|
|
2952
3024
|
|
|
@@ -2961,7 +3033,7 @@ uses the same keys.</p>
|
|
|
2961
3033
|
|
|
2962
3034
|
|
|
2963
3035
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>source</code></td><td align="left">| <a href="#query"><code>Query</code></a><<a href="#documentdata"><code>DocumentData</code></a>> | <a href="#collectionreference"><code>CollectionReference</code></a><<a href="#documentdata"><code>DocumentData</code></a>></td></tr></tbody></table></div>
|
|
2964
|
-
<h4 id="returns-
|
|
3036
|
+
<h4 id="returns-98">Returns</h4>
|
|
2965
3037
|
<p><code>Promise</code><<a href="#aggregatequerysnapshot"><code>AggregateQuerySnapshot</code></a><{
|
|
2966
3038
|
<code>count</code>: <code>number</code>;
|
|
2967
3039
|
}>></p>
|
|
@@ -2984,7 +3056,7 @@ uses the same keys.</p>
|
|
|
2984
3056
|
|
|
2985
3057
|
|
|
2986
3058
|
<table><thead><tr><th align="left">Type Parameter</th><th align="left">Default type</th></tr></thead><tbody><tr><td align="left"><code>T</code></td><td align="left"><a href="#documentdata"><code>DocumentData</code></a></td></tr></tbody></table></div>
|
|
2987
|
-
<h4 id="parameters-
|
|
3059
|
+
<h4 id="parameters-62">Parameters</h4>
|
|
2988
3060
|
<div class="table-scroll">
|
|
2989
3061
|
|
|
2990
3062
|
|
|
@@ -2999,7 +3071,7 @@ uses the same keys.</p>
|
|
|
2999
3071
|
|
|
3000
3072
|
|
|
3001
3073
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>ref</code></td><td align="left"><a href="#documentreference"><code>DocumentReference</code></a><<code>T</code>></td></tr></tbody></table></div>
|
|
3002
|
-
<h4 id="returns-
|
|
3074
|
+
<h4 id="returns-99">Returns</h4>
|
|
3003
3075
|
<p><code>Promise</code><<a href="#documentsnapshot"><code>DocumentSnapshot</code></a><<code>T</code>>></p>
|
|
3004
3076
|
<hr>
|
|
3005
3077
|
<p><a id="getdocfromcache"></a></p>
|
|
@@ -3025,7 +3097,7 @@ not a claim of parity.</p>
|
|
|
3025
3097
|
|
|
3026
3098
|
|
|
3027
3099
|
<table><thead><tr><th align="left">Type Parameter</th><th align="left">Default type</th></tr></thead><tbody><tr><td align="left"><code>T</code></td><td align="left"><a href="#documentdata"><code>DocumentData</code></a></td></tr></tbody></table></div>
|
|
3028
|
-
<h4 id="parameters-
|
|
3100
|
+
<h4 id="parameters-63">Parameters</h4>
|
|
3029
3101
|
<div class="table-scroll">
|
|
3030
3102
|
|
|
3031
3103
|
|
|
@@ -3040,7 +3112,7 @@ not a claim of parity.</p>
|
|
|
3040
3112
|
|
|
3041
3113
|
|
|
3042
3114
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>ref</code></td><td align="left"><a href="#documentreference"><code>DocumentReference</code></a><<code>T</code>></td></tr></tbody></table></div>
|
|
3043
|
-
<h4 id="returns-
|
|
3115
|
+
<h4 id="returns-100">Returns</h4>
|
|
3044
3116
|
<p><code>Promise</code><<a href="#documentsnapshot"><code>DocumentSnapshot</code></a><<code>T</code>>></p>
|
|
3045
3117
|
<hr>
|
|
3046
3118
|
<p><a id="getdocfromserver"></a></p>
|
|
@@ -3065,7 +3137,7 @@ same honest thing.</p>
|
|
|
3065
3137
|
|
|
3066
3138
|
|
|
3067
3139
|
<table><thead><tr><th align="left">Type Parameter</th><th align="left">Default type</th></tr></thead><tbody><tr><td align="left"><code>T</code></td><td align="left"><a href="#documentdata"><code>DocumentData</code></a></td></tr></tbody></table></div>
|
|
3068
|
-
<h4 id="parameters-
|
|
3140
|
+
<h4 id="parameters-64">Parameters</h4>
|
|
3069
3141
|
<div class="table-scroll">
|
|
3070
3142
|
|
|
3071
3143
|
|
|
@@ -3080,7 +3152,7 @@ same honest thing.</p>
|
|
|
3080
3152
|
|
|
3081
3153
|
|
|
3082
3154
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>ref</code></td><td align="left"><a href="#documentreference"><code>DocumentReference</code></a><<code>T</code>></td></tr></tbody></table></div>
|
|
3083
|
-
<h4 id="returns-
|
|
3155
|
+
<h4 id="returns-101">Returns</h4>
|
|
3084
3156
|
<p><code>Promise</code><<a href="#documentsnapshot"><code>DocumentSnapshot</code></a><<code>T</code>>></p>
|
|
3085
3157
|
<hr>
|
|
3086
3158
|
<p><a id="getdocs"></a></p>
|
|
@@ -3101,7 +3173,7 @@ same honest thing.</p>
|
|
|
3101
3173
|
|
|
3102
3174
|
|
|
3103
3175
|
<table><thead><tr><th align="left">Type Parameter</th><th align="left">Default type</th></tr></thead><tbody><tr><td align="left"><code>T</code></td><td align="left"><a href="#documentdata"><code>DocumentData</code></a></td></tr></tbody></table></div>
|
|
3104
|
-
<h4 id="parameters-
|
|
3176
|
+
<h4 id="parameters-65">Parameters</h4>
|
|
3105
3177
|
<div class="table-scroll">
|
|
3106
3178
|
|
|
3107
3179
|
|
|
@@ -3116,7 +3188,7 @@ same honest thing.</p>
|
|
|
3116
3188
|
|
|
3117
3189
|
|
|
3118
3190
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>query</code></td><td align="left"><a href="#query"><code>Query</code></a><<code>T</code>></td></tr></tbody></table></div>
|
|
3119
|
-
<h4 id="returns-
|
|
3191
|
+
<h4 id="returns-102">Returns</h4>
|
|
3120
3192
|
<p><code>Promise</code><<a href="#querysnapshot"><code>QuerySnapshot</code></a><<code>T</code>>></p>
|
|
3121
3193
|
<hr>
|
|
3122
3194
|
<p><a id="getdocsfromcache"></a></p>
|
|
@@ -3138,7 +3210,7 @@ same honest thing.</p>
|
|
|
3138
3210
|
|
|
3139
3211
|
|
|
3140
3212
|
<table><thead><tr><th align="left">Type Parameter</th><th align="left">Default type</th></tr></thead><tbody><tr><td align="left"><code>T</code></td><td align="left"><a href="#documentdata"><code>DocumentData</code></a></td></tr></tbody></table></div>
|
|
3141
|
-
<h4 id="parameters-
|
|
3213
|
+
<h4 id="parameters-66">Parameters</h4>
|
|
3142
3214
|
<div class="table-scroll">
|
|
3143
3215
|
|
|
3144
3216
|
|
|
@@ -3153,7 +3225,7 @@ same honest thing.</p>
|
|
|
3153
3225
|
|
|
3154
3226
|
|
|
3155
3227
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>query</code></td><td align="left"><a href="#query"><code>Query</code></a><<code>T</code>></td></tr></tbody></table></div>
|
|
3156
|
-
<h4 id="returns-
|
|
3228
|
+
<h4 id="returns-103">Returns</h4>
|
|
3157
3229
|
<p><code>Promise</code><<a href="#querysnapshot"><code>QuerySnapshot</code></a><<code>T</code>>></p>
|
|
3158
3230
|
<hr>
|
|
3159
3231
|
<p><a id="getdocsfromserver"></a></p>
|
|
@@ -3175,7 +3247,7 @@ same honest thing.</p>
|
|
|
3175
3247
|
|
|
3176
3248
|
|
|
3177
3249
|
<table><thead><tr><th align="left">Type Parameter</th><th align="left">Default type</th></tr></thead><tbody><tr><td align="left"><code>T</code></td><td align="left"><a href="#documentdata"><code>DocumentData</code></a></td></tr></tbody></table></div>
|
|
3178
|
-
<h4 id="parameters-
|
|
3250
|
+
<h4 id="parameters-67">Parameters</h4>
|
|
3179
3251
|
<div class="table-scroll">
|
|
3180
3252
|
|
|
3181
3253
|
|
|
@@ -3190,7 +3262,7 @@ same honest thing.</p>
|
|
|
3190
3262
|
|
|
3191
3263
|
|
|
3192
3264
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>query</code></td><td align="left"><a href="#query"><code>Query</code></a><<code>T</code>></td></tr></tbody></table></div>
|
|
3193
|
-
<h4 id="returns-
|
|
3265
|
+
<h4 id="returns-104">Returns</h4>
|
|
3194
3266
|
<p><code>Promise</code><<a href="#querysnapshot"><code>QuerySnapshot</code></a><<code>T</code>>></p>
|
|
3195
3267
|
<hr>
|
|
3196
3268
|
<p><a id="getfirestore"></a></p>
|
|
@@ -3209,7 +3281,7 @@ scenario.</li>
|
|
|
3209
3281
|
identity through <code>pyric/auth</code> — every Firestore op evaluates
|
|
3210
3282
|
rules under whatever user is currently signed in.</li>
|
|
3211
3283
|
</ul>
|
|
3212
|
-
<h5 id="parameters-
|
|
3284
|
+
<h5 id="parameters-68">Parameters</h5>
|
|
3213
3285
|
<div class="table-scroll">
|
|
3214
3286
|
|
|
3215
3287
|
|
|
@@ -3224,7 +3296,7 @@ rules under whatever user is currently signed in.</li>
|
|
|
3224
3296
|
|
|
3225
3297
|
|
|
3226
3298
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>ctx</code></td><td align="left"><a href="#sandboxcontext"><code>SandboxContext</code></a></td></tr></tbody></table></div>
|
|
3227
|
-
<h5 id="returns-
|
|
3299
|
+
<h5 id="returns-105">Returns</h5>
|
|
3228
3300
|
<p><a href="#firestore"><code>Firestore</code></a></p>
|
|
3229
3301
|
<h5 id="example-6">Example</h5>
|
|
3230
3302
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#7F848E;font-style:italic">// Sandbox, frozen identity (runner / explicit tests).</span></span>
|
|
@@ -3260,7 +3332,7 @@ scenario.</li>
|
|
|
3260
3332
|
identity through <code>pyric/auth</code> — every Firestore op evaluates
|
|
3261
3333
|
rules under whatever user is currently signed in.</li>
|
|
3262
3334
|
</ul>
|
|
3263
|
-
<h5 id="parameters-
|
|
3335
|
+
<h5 id="parameters-69">Parameters</h5>
|
|
3264
3336
|
<div class="table-scroll">
|
|
3265
3337
|
|
|
3266
3338
|
|
|
@@ -3275,7 +3347,7 @@ rules under whatever user is currently signed in.</li>
|
|
|
3275
3347
|
|
|
3276
3348
|
|
|
3277
3349
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>sandbox</code></td><td align="left"><a href="#sandbox"><code>Sandbox</code></a></td></tr></tbody></table></div>
|
|
3278
|
-
<h5 id="returns-
|
|
3350
|
+
<h5 id="returns-106">Returns</h5>
|
|
3279
3351
|
<p><a href="#firestore"><code>Firestore</code></a></p>
|
|
3280
3352
|
<h5 id="example-7">Example</h5>
|
|
3281
3353
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#7F848E;font-style:italic">// Sandbox, frozen identity (runner / explicit tests).</span></span>
|
|
@@ -3311,7 +3383,7 @@ scenario.</li>
|
|
|
3311
3383
|
identity through <code>pyric/auth</code> — every Firestore op evaluates
|
|
3312
3384
|
rules under whatever user is currently signed in.</li>
|
|
3313
3385
|
</ul>
|
|
3314
|
-
<h5 id="parameters-
|
|
3386
|
+
<h5 id="parameters-70">Parameters</h5>
|
|
3315
3387
|
<div class="table-scroll">
|
|
3316
3388
|
|
|
3317
3389
|
|
|
@@ -3326,7 +3398,7 @@ rules under whatever user is currently signed in.</li>
|
|
|
3326
3398
|
|
|
3327
3399
|
|
|
3328
3400
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>app</code></td><td align="left"><a href="/docs/pyric-app-reference-api/#firebaseapp"><code>FirebaseApp</code></a></td></tr></tbody></table></div>
|
|
3329
|
-
<h5 id="returns-
|
|
3401
|
+
<h5 id="returns-107">Returns</h5>
|
|
3330
3402
|
<p><a href="#appfirestore"><code>AppFirestore</code></a></p>
|
|
3331
3403
|
<h5 id="example-8">Example</h5>
|
|
3332
3404
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#7F848E;font-style:italic">// Sandbox, frozen identity (runner / explicit tests).</span></span>
|
|
@@ -3362,7 +3434,7 @@ scenario.</li>
|
|
|
3362
3434
|
identity through <code>pyric/auth</code> — every Firestore op evaluates
|
|
3363
3435
|
rules under whatever user is currently signed in.</li>
|
|
3364
3436
|
</ul>
|
|
3365
|
-
<h5 id="returns-
|
|
3437
|
+
<h5 id="returns-108">Returns</h5>
|
|
3366
3438
|
<p><a href="#appfirestore"><code>AppFirestore</code></a></p>
|
|
3367
3439
|
<h5 id="example-9">Example</h5>
|
|
3368
3440
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#7F848E;font-style:italic">// Sandbox, frozen identity (runner / explicit tests).</span></span>
|
|
@@ -3401,7 +3473,7 @@ scenario.</li>
|
|
|
3401
3473
|
identity through <code>pyric/auth</code> — every Firestore op evaluates
|
|
3402
3474
|
rules under whatever user is currently signed in.</li>
|
|
3403
3475
|
</ul>
|
|
3404
|
-
<h5 id="parameters-
|
|
3476
|
+
<h5 id="parameters-71">Parameters</h5>
|
|
3405
3477
|
<div class="table-scroll">
|
|
3406
3478
|
|
|
3407
3479
|
|
|
@@ -3416,7 +3488,7 @@ rules under whatever user is currently signed in.</li>
|
|
|
3416
3488
|
|
|
3417
3489
|
|
|
3418
3490
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>target?</code></td><td align="left">| <a href="/docs/pyric-app-reference-api/#firebaseapp"><code>FirebaseApp</code></a> | <a href="#sandbox"><code>Sandbox</code></a> | <a href="#sandboxcontext"><code>SandboxContext</code></a></td></tr></tbody></table></div>
|
|
3419
|
-
<h5 id="returns-
|
|
3491
|
+
<h5 id="returns-109">Returns</h5>
|
|
3420
3492
|
<p><a href="#firestore"><code>Firestore</code></a></p>
|
|
3421
3493
|
<h5 id="example-10">Example</h5>
|
|
3422
3494
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#7F848E;font-style:italic">// Sandbox, frozen identity (runner / explicit tests).</span></span>
|
|
@@ -3442,7 +3514,7 @@ rules under whatever user is currently signed in.</li>
|
|
|
3442
3514
|
<p><a id="increment-2"></a></p>
|
|
3443
3515
|
<h3 id="increment-1">increment()</h3>
|
|
3444
3516
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> increment</span><span style="color:#ABB2BF">(</span><span style="color:#E06C75;font-style:italic">n</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">number</span><span style="color:#ABB2BF">): </span><span style="color:#E5C07B">FieldValueSentinel</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
3445
|
-
<h4 id="parameters-
|
|
3517
|
+
<h4 id="parameters-72">Parameters</h4>
|
|
3446
3518
|
<div class="table-scroll">
|
|
3447
3519
|
|
|
3448
3520
|
|
|
@@ -3457,7 +3529,7 @@ rules under whatever user is currently signed in.</li>
|
|
|
3457
3529
|
|
|
3458
3530
|
|
|
3459
3531
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>n</code></td><td align="left"><code>number</code></td></tr></tbody></table></div>
|
|
3460
|
-
<h4 id="returns-
|
|
3532
|
+
<h4 id="returns-110">Returns</h4>
|
|
3461
3533
|
<p><a href="#fieldvaluesentinel"><code>FieldValueSentinel</code></a></p>
|
|
3462
3534
|
<hr>
|
|
3463
3535
|
<p><a id="initializefirestore"></a></p>
|
|
@@ -3475,7 +3547,7 @@ writes — <code>initializeFirestore(app, { localCache: persistentLocalCache(...
|
|
|
3475
3547
|
— no longer crashes at import) but no-ops the cache/network settings:
|
|
3476
3548
|
persistence is already the sandbox default, so there is nothing left to
|
|
3477
3549
|
configure into existence.</p>
|
|
3478
|
-
<h4 id="parameters-
|
|
3550
|
+
<h4 id="parameters-73">Parameters</h4>
|
|
3479
3551
|
<div class="table-scroll">
|
|
3480
3552
|
|
|
3481
3553
|
|
|
@@ -3498,13 +3570,13 @@ configure into existence.</p>
|
|
|
3498
3570
|
|
|
3499
3571
|
|
|
3500
3572
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>app</code></td><td align="left">| <a href="/docs/pyric-app-reference-api/#firebaseapp"><code>FirebaseApp</code></a> | <a href="#sandbox"><code>Sandbox</code></a> | <a href="#sandboxcontext"><code>SandboxContext</code></a></td></tr><tr><td align="left"><code>_settings?</code></td><td align="left"><a href="#firestoresettings"><code>FirestoreSettings</code></a></td></tr><tr><td align="left"><code>_databaseId?</code></td><td align="left"><code>string</code></td></tr></tbody></table></div>
|
|
3501
|
-
<h4 id="returns-
|
|
3573
|
+
<h4 id="returns-111">Returns</h4>
|
|
3502
3574
|
<p><a href="#firestore"><code>Firestore</code></a></p>
|
|
3503
3575
|
<hr>
|
|
3504
3576
|
<p><a id="limit"></a></p>
|
|
3505
3577
|
<h3 id="limit">limit()</h3>
|
|
3506
3578
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> limit</span><span style="color:#ABB2BF">(</span><span style="color:#E06C75;font-style:italic">n</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">number</span><span style="color:#ABB2BF">): </span><span style="color:#E5C07B">QueryConstraint</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
3507
|
-
<h4 id="parameters-
|
|
3579
|
+
<h4 id="parameters-74">Parameters</h4>
|
|
3508
3580
|
<div class="table-scroll">
|
|
3509
3581
|
|
|
3510
3582
|
|
|
@@ -3519,7 +3591,7 @@ configure into existence.</p>
|
|
|
3519
3591
|
|
|
3520
3592
|
|
|
3521
3593
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>n</code></td><td align="left"><code>number</code></td></tr></tbody></table></div>
|
|
3522
|
-
<h4 id="returns-
|
|
3594
|
+
<h4 id="returns-112">Returns</h4>
|
|
3523
3595
|
<p><a href="#queryconstraint"><code>QueryConstraint</code></a></p>
|
|
3524
3596
|
<hr>
|
|
3525
3597
|
<p><a id="limittolast"></a></p>
|
|
@@ -3528,7 +3600,7 @@ configure into existence.</p>
|
|
|
3528
3600
|
<p>Limit the query to the LAST <code>n</code> documents in the ordered result.
|
|
3529
3601
|
Requires at least one <code>orderBy</code> on the query (production-aligned —
|
|
3530
3602
|
the simulator throws at execute time without one).</p>
|
|
3531
|
-
<h4 id="parameters-
|
|
3603
|
+
<h4 id="parameters-75">Parameters</h4>
|
|
3532
3604
|
<div class="table-scroll">
|
|
3533
3605
|
|
|
3534
3606
|
|
|
@@ -3543,14 +3615,14 @@ the simulator throws at execute time without one).</p>
|
|
|
3543
3615
|
|
|
3544
3616
|
|
|
3545
3617
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>n</code></td><td align="left"><code>number</code></td></tr></tbody></table></div>
|
|
3546
|
-
<h4 id="returns-
|
|
3618
|
+
<h4 id="returns-113">Returns</h4>
|
|
3547
3619
|
<p><a href="#queryconstraint"><code>QueryConstraint</code></a></p>
|
|
3548
3620
|
<hr>
|
|
3549
3621
|
<p><a id="memoryeagergarbagecollector"></a></p>
|
|
3550
3622
|
<h3 id="memoryeagergarbagecollector">memoryEagerGarbageCollector()</h3>
|
|
3551
3623
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> memoryEagerGarbageCollector</span><span style="color:#ABB2BF">(): </span><span style="color:#E5C07B">MemoryGarbageCollector</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
3552
3624
|
<p>Inert config token accepted by <a href="#memorylocalcache">memoryLocalCache</a>’s <code>garbageCollector</code>.</p>
|
|
3553
|
-
<h4 id="returns-
|
|
3625
|
+
<h4 id="returns-114">Returns</h4>
|
|
3554
3626
|
<p><a href="#memorygarbagecollector"><code>MemoryGarbageCollector</code></a></p>
|
|
3555
3627
|
<hr>
|
|
3556
3628
|
<p><a id="memorylocalcache"></a></p>
|
|
@@ -3559,7 +3631,7 @@ the simulator throws at execute time without one).</p>
|
|
|
3559
3631
|
<span class="line"><span style="color:#E06C75"> garbageCollector</span><span style="color:#C678DD">?</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">MemoryGarbageCollector</span><span style="color:#ABB2BF">;</span></span>
|
|
3560
3632
|
<span class="line"><span style="color:#ABB2BF">}): </span><span style="color:#E5C07B">LocalCache</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
3561
3633
|
<p>Inert config token — the memory-cache counterpart of <a href="#persistentlocalcache">persistentLocalCache</a>.</p>
|
|
3562
|
-
<h4 id="parameters-
|
|
3634
|
+
<h4 id="parameters-76">Parameters</h4>
|
|
3563
3635
|
<div class="table-scroll">
|
|
3564
3636
|
|
|
3565
3637
|
|
|
@@ -3578,7 +3650,7 @@ the simulator throws at execute time without one).</p>
|
|
|
3578
3650
|
|
|
3579
3651
|
|
|
3580
3652
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>settings?</code></td><td align="left">{ <code>garbageCollector?</code>: <a href="#memorygarbagecollector"><code>MemoryGarbageCollector</code></a>; }</td></tr><tr><td align="left"><code>settings.garbageCollector?</code></td><td align="left"><a href="#memorygarbagecollector"><code>MemoryGarbageCollector</code></a></td></tr></tbody></table></div>
|
|
3581
|
-
<h4 id="returns-
|
|
3653
|
+
<h4 id="returns-115">Returns</h4>
|
|
3582
3654
|
<p><a href="#localcache-1"><code>LocalCache</code></a></p>
|
|
3583
3655
|
<hr>
|
|
3584
3656
|
<p><a id="memorylrugarbagecollector"></a></p>
|
|
@@ -3587,7 +3659,7 @@ the simulator throws at execute time without one).</p>
|
|
|
3587
3659
|
<span class="line"><span style="color:#E06C75"> cacheSizeBytes</span><span style="color:#C678DD">?</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">number</span><span style="color:#ABB2BF">;</span></span>
|
|
3588
3660
|
<span class="line"><span style="color:#ABB2BF">}): </span><span style="color:#E5C07B">MemoryGarbageCollector</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
3589
3661
|
<p>Inert config token accepted by <a href="#memorylocalcache">memoryLocalCache</a>’s <code>garbageCollector</code>.</p>
|
|
3590
|
-
<h4 id="parameters-
|
|
3662
|
+
<h4 id="parameters-77">Parameters</h4>
|
|
3591
3663
|
<div class="table-scroll">
|
|
3592
3664
|
|
|
3593
3665
|
|
|
@@ -3606,7 +3678,7 @@ the simulator throws at execute time without one).</p>
|
|
|
3606
3678
|
|
|
3607
3679
|
|
|
3608
3680
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>_settings?</code></td><td align="left">{ <code>cacheSizeBytes?</code>: <code>number</code>; }</td></tr><tr><td align="left"><code>_settings.cacheSizeBytes?</code></td><td align="left"><code>number</code></td></tr></tbody></table></div>
|
|
3609
|
-
<h4 id="returns-
|
|
3681
|
+
<h4 id="returns-116">Returns</h4>
|
|
3610
3682
|
<p><a href="#memorygarbagecollector"><code>MemoryGarbageCollector</code></a></p>
|
|
3611
3683
|
<hr>
|
|
3612
3684
|
<p><a id="onsnapshot"></a></p>
|
|
@@ -3631,7 +3703,7 @@ the simulator throws at execute time without one).</p>
|
|
|
3631
3703
|
|
|
3632
3704
|
|
|
3633
3705
|
<table><thead><tr><th align="left">Type Parameter</th></tr></thead><tbody><tr><td align="left"><code>T</code> <em>extends</em> | <a href="#documentreference"><code>DocumentReference</code></a><<a href="#documentdata"><code>DocumentData</code></a>> | <a href="#query"><code>Query</code></a><<a href="#documentdata"><code>DocumentData</code></a>></td></tr></tbody></table></div>
|
|
3634
|
-
<h5 id="parameters-
|
|
3706
|
+
<h5 id="parameters-78">Parameters</h5>
|
|
3635
3707
|
<div class="table-scroll">
|
|
3636
3708
|
|
|
3637
3709
|
|
|
@@ -3654,7 +3726,7 @@ the simulator throws at execute time without one).</p>
|
|
|
3654
3726
|
|
|
3655
3727
|
|
|
3656
3728
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>ref</code></td><td align="left"><code>T</code></td></tr><tr><td align="left"><code>observerOrNext</code></td><td align="left">| <a href="#snapshotobserver"><code>SnapshotObserver</code></a><<code>unknown</code>> | (<code>snap</code>: <code>unknown</code>) => <code>void</code></td></tr><tr><td align="left"><code>errorOrNothing?</code></td><td align="left">(<code>error</code>: <code>unknown</code>) => <code>void</code></td></tr></tbody></table></div>
|
|
3657
|
-
<h5 id="returns-
|
|
3729
|
+
<h5 id="returns-117">Returns</h5>
|
|
3658
3730
|
<p><a href="#unsubscribe"><code>Unsubscribe</code></a></p>
|
|
3659
3731
|
<h4 id="call-signature-13">Call Signature</h4>
|
|
3660
3732
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> onSnapshot</span><span style="color:#ABB2BF"><</span><span style="color:#E5C07B">T</span><span style="color:#ABB2BF">>(</span></span>
|
|
@@ -3677,7 +3749,7 @@ the simulator throws at execute time without one).</p>
|
|
|
3677
3749
|
|
|
3678
3750
|
|
|
3679
3751
|
<table><thead><tr><th align="left">Type Parameter</th></tr></thead><tbody><tr><td align="left"><code>T</code> <em>extends</em> | <a href="#documentreference"><code>DocumentReference</code></a><<a href="#documentdata"><code>DocumentData</code></a>> | <a href="#query"><code>Query</code></a><<a href="#documentdata"><code>DocumentData</code></a>></td></tr></tbody></table></div>
|
|
3680
|
-
<h5 id="parameters-
|
|
3752
|
+
<h5 id="parameters-79">Parameters</h5>
|
|
3681
3753
|
<div class="table-scroll">
|
|
3682
3754
|
|
|
3683
3755
|
|
|
@@ -3704,7 +3776,7 @@ the simulator throws at execute time without one).</p>
|
|
|
3704
3776
|
|
|
3705
3777
|
|
|
3706
3778
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>ref</code></td><td align="left"><code>T</code></td></tr><tr><td align="left"><code>options</code></td><td align="left"><a href="#snapshotlistenoptions"><code>SnapshotListenOptions</code></a></td></tr><tr><td align="left"><code>observerOrNext</code></td><td align="left">| <a href="#snapshotobserver"><code>SnapshotObserver</code></a><<code>unknown</code>> | (<code>snap</code>: <code>unknown</code>) => <code>void</code></td></tr><tr><td align="left"><code>errorOrNothing?</code></td><td align="left">(<code>error</code>: <code>unknown</code>) => <code>void</code></td></tr></tbody></table></div>
|
|
3707
|
-
<h5 id="returns-
|
|
3779
|
+
<h5 id="returns-118">Returns</h5>
|
|
3708
3780
|
<p><a href="#unsubscribe"><code>Unsubscribe</code></a></p>
|
|
3709
3781
|
<hr>
|
|
3710
3782
|
<p><a id="onsnapshotsinsync"></a></p>
|
|
@@ -3716,13 +3788,10 @@ the simulator throws at execute time without one).</p>
|
|
|
3716
3788
|
<span class="line"><span style="color:#61AFEF"> error</span><span style="color:#C678DD">?</span><span style="color:#ABB2BF">: (</span><span style="color:#E06C75;font-style:italic">error</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">unknown</span><span style="color:#ABB2BF">) </span><span style="color:#C678DD">=></span><span style="color:#E5C07B"> void</span><span style="color:#ABB2BF">;</span></span>
|
|
3717
3789
|
<span class="line"><span style="color:#61AFEF"> next</span><span style="color:#C678DD">?</span><span style="color:#ABB2BF">: () </span><span style="color:#C678DD">=></span><span style="color:#E5C07B"> void</span><span style="color:#ABB2BF">;</span></span>
|
|
3718
3790
|
<span class="line"><span style="color:#ABB2BF">}): </span><span style="color:#E5C07B">Unsubscribe</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
3719
|
-
<p>
|
|
3720
|
-
|
|
3721
|
-
|
|
3722
|
-
|
|
3723
|
-
This is NOT the real SDK’s guarantee (which is scoped to actual
|
|
3724
|
-
server round-trips); it is scoped to local delivery only.</p>
|
|
3725
|
-
<h4 id="parameters-79">Parameters</h4>
|
|
3791
|
+
<p>Registers a service-scoped synchronization observer. It receives an
|
|
3792
|
+
initial signal and a batched signal after snapshot listeners deliver their
|
|
3793
|
+
latest local state, matching the production-observed callback ordering.</p>
|
|
3794
|
+
<h4 id="parameters-80">Parameters</h4>
|
|
3726
3795
|
<div class="table-scroll">
|
|
3727
3796
|
|
|
3728
3797
|
|
|
@@ -3741,7 +3810,7 @@ server round-trips); it is scoped to local delivery only.</p>
|
|
|
3741
3810
|
|
|
3742
3811
|
|
|
3743
3812
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>db</code></td><td align="left"><a href="#firestore"><code>Firestore</code></a></td></tr><tr><td align="left"><code>observerOrCallback</code></td><td align="left">| () => <code>void</code> | { <code>complete?</code>: () => <code>void</code>; <code>error?</code>: (<code>error</code>: <code>unknown</code>) => <code>void</code>; <code>next?</code>: () => <code>void</code>; }</td></tr></tbody></table></div>
|
|
3744
|
-
<h4 id="returns-
|
|
3813
|
+
<h4 id="returns-119">Returns</h4>
|
|
3745
3814
|
<p><a href="#unsubscribe"><code>Unsubscribe</code></a></p>
|
|
3746
3815
|
<hr>
|
|
3747
3816
|
<p><a id="or"></a></p>
|
|
@@ -3752,7 +3821,7 @@ Each argument must itself be a filter constraint (<code>where()</code>, or
|
|
|
3752
3821
|
nested <code>or()</code> / <code>and()</code>); passing <code>orderBy()</code> or <code>limit()</code> here is
|
|
3753
3822
|
a type error at runtime.</p>
|
|
3754
3823
|
<p>Mirrors <code>firebase/firestore</code>’s <code>or(...filters)</code> shape.</p>
|
|
3755
|
-
<h4 id="parameters-
|
|
3824
|
+
<h4 id="parameters-81">Parameters</h4>
|
|
3756
3825
|
<div class="table-scroll">
|
|
3757
3826
|
|
|
3758
3827
|
|
|
@@ -3767,13 +3836,13 @@ a type error at runtime.</p>
|
|
|
3767
3836
|
|
|
3768
3837
|
|
|
3769
3838
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left">…<code>filters</code></td><td align="left"><a href="#queryconstraint"><code>QueryConstraint</code></a>[]</td></tr></tbody></table></div>
|
|
3770
|
-
<h4 id="returns-
|
|
3839
|
+
<h4 id="returns-120">Returns</h4>
|
|
3771
3840
|
<p><a href="#queryconstraint"><code>QueryConstraint</code></a></p>
|
|
3772
3841
|
<hr>
|
|
3773
3842
|
<p><a id="orderby"></a></p>
|
|
3774
3843
|
<h3 id="orderby">orderBy()</h3>
|
|
3775
|
-
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> orderBy</span><span style="color:#ABB2BF">(</span><span style="color:#E06C75;font-style:italic">field</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">string</span><span style="color:#ABB2BF"> | </span><span style="color:#E5C07B">FieldPath</span><span style="color:#ABB2BF">, </span><span style="color:#E06C75;font-style:italic">direction</span><span style="color:#C678DD">?</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">
|
|
3776
|
-
<h4 id="parameters-
|
|
3844
|
+
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> orderBy</span><span style="color:#ABB2BF">(</span><span style="color:#E06C75;font-style:italic">field</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">string</span><span style="color:#ABB2BF"> | </span><span style="color:#E5C07B">FieldPath</span><span style="color:#ABB2BF">, </span><span style="color:#E06C75;font-style:italic">direction</span><span style="color:#C678DD">?</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">QueryOrderDirection</span><span style="color:#ABB2BF">): </span><span style="color:#E5C07B">QueryConstraint</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
3845
|
+
<h4 id="parameters-82">Parameters</h4>
|
|
3777
3846
|
<div class="table-scroll">
|
|
3778
3847
|
|
|
3779
3848
|
|
|
@@ -3791,8 +3860,8 @@ a type error at runtime.</p>
|
|
|
3791
3860
|
|
|
3792
3861
|
|
|
3793
3862
|
|
|
3794
|
-
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>field</code></td><td align="left"><code>string</code> | <a href="#fieldpath"><code>FieldPath</code></a></td></tr><tr><td align="left"><code>direction?</code></td><td align="left"><
|
|
3795
|
-
<h4 id="returns-
|
|
3863
|
+
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>field</code></td><td align="left"><code>string</code> | <a href="#fieldpath"><code>FieldPath</code></a></td></tr><tr><td align="left"><code>direction?</code></td><td align="left"><code>QueryOrderDirection</code></td></tr></tbody></table></div>
|
|
3864
|
+
<h4 id="returns-121">Returns</h4>
|
|
3796
3865
|
<p><a href="#queryconstraint"><code>QueryConstraint</code></a></p>
|
|
3797
3866
|
<hr>
|
|
3798
3867
|
<p><a id="persistentlocalcache"></a></p>
|
|
@@ -3805,7 +3874,7 @@ a type error at runtime.</p>
|
|
|
3805
3874
|
persistent IndexedDB cache tier; the sandbox has no separate cache
|
|
3806
3875
|
tier — persistence is already the default — so this just returns a
|
|
3807
3876
|
tagged token <code>initializeFirestore</code> can accept without crashing.</p>
|
|
3808
|
-
<h4 id="parameters-
|
|
3877
|
+
<h4 id="parameters-83">Parameters</h4>
|
|
3809
3878
|
<div class="table-scroll">
|
|
3810
3879
|
|
|
3811
3880
|
|
|
@@ -3828,14 +3897,14 @@ tagged token <code>initializeFirestore</code> can accept without crashing.</p>
|
|
|
3828
3897
|
|
|
3829
3898
|
|
|
3830
3899
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>settings?</code></td><td align="left">{ <code>cacheSizeBytes?</code>: <code>number</code>; <code>tabManager?</code>: <a href="#persistenttabmanager"><code>PersistentTabManager</code></a>; }</td></tr><tr><td align="left"><code>settings.cacheSizeBytes?</code></td><td align="left"><code>number</code></td></tr><tr><td align="left"><code>settings.tabManager?</code></td><td align="left"><a href="#persistenttabmanager"><code>PersistentTabManager</code></a></td></tr></tbody></table></div>
|
|
3831
|
-
<h4 id="returns-
|
|
3900
|
+
<h4 id="returns-122">Returns</h4>
|
|
3832
3901
|
<p><a href="#localcache-1"><code>LocalCache</code></a></p>
|
|
3833
3902
|
<hr>
|
|
3834
3903
|
<p><a id="persistentmultipletabmanager"></a></p>
|
|
3835
3904
|
<h3 id="persistentmultipletabmanager">persistentMultipleTabManager()</h3>
|
|
3836
3905
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> persistentMultipleTabManager</span><span style="color:#ABB2BF">(): </span><span style="color:#E5C07B">PersistentTabManager</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
3837
3906
|
<p>Inert config token accepted by <a href="#persistentlocalcache">persistentLocalCache</a>’s <code>tabManager</code>.</p>
|
|
3838
|
-
<h4 id="returns-
|
|
3907
|
+
<h4 id="returns-123">Returns</h4>
|
|
3839
3908
|
<p><a href="#persistenttabmanager"><code>PersistentTabManager</code></a></p>
|
|
3840
3909
|
<hr>
|
|
3841
3910
|
<p><a id="persistentsingletabmanager"></a></p>
|
|
@@ -3844,7 +3913,7 @@ tagged token <code>initializeFirestore</code> can accept without crashing.</p>
|
|
|
3844
3913
|
<span class="line"><span style="color:#E06C75"> forceOwnership</span><span style="color:#C678DD">?</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">boolean</span><span style="color:#ABB2BF">;</span></span>
|
|
3845
3914
|
<span class="line"><span style="color:#ABB2BF">}): </span><span style="color:#E5C07B">PersistentTabManager</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
3846
3915
|
<p>Inert config token accepted by <a href="#persistentlocalcache">persistentLocalCache</a>’s <code>tabManager</code>.</p>
|
|
3847
|
-
<h4 id="parameters-
|
|
3916
|
+
<h4 id="parameters-84">Parameters</h4>
|
|
3848
3917
|
<div class="table-scroll">
|
|
3849
3918
|
|
|
3850
3919
|
|
|
@@ -3863,7 +3932,7 @@ tagged token <code>initializeFirestore</code> can accept without crashing.</p>
|
|
|
3863
3932
|
|
|
3864
3933
|
|
|
3865
3934
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>_settings?</code></td><td align="left">{ <code>forceOwnership?</code>: <code>boolean</code>; }</td></tr><tr><td align="left"><code>_settings.forceOwnership?</code></td><td align="left"><code>boolean</code></td></tr></tbody></table></div>
|
|
3866
|
-
<h4 id="returns-
|
|
3935
|
+
<h4 id="returns-124">Returns</h4>
|
|
3867
3936
|
<p><a href="#persistenttabmanager"><code>PersistentTabManager</code></a></p>
|
|
3868
3937
|
<hr>
|
|
3869
3938
|
<p><a id="query-1"></a></p>
|
|
@@ -3886,7 +3955,7 @@ tagged token <code>initializeFirestore</code> can accept without crashing.</p>
|
|
|
3886
3955
|
|
|
3887
3956
|
|
|
3888
3957
|
<table><thead><tr><th align="left">Type Parameter</th><th align="left">Default type</th></tr></thead><tbody><tr><td align="left"><code>T</code></td><td align="left"><a href="#documentdata"><code>DocumentData</code></a></td></tr></tbody></table></div>
|
|
3889
|
-
<h4 id="parameters-
|
|
3958
|
+
<h4 id="parameters-85">Parameters</h4>
|
|
3890
3959
|
<div class="table-scroll">
|
|
3891
3960
|
|
|
3892
3961
|
|
|
@@ -3905,13 +3974,13 @@ tagged token <code>initializeFirestore</code> can accept without crashing.</p>
|
|
|
3905
3974
|
|
|
3906
3975
|
|
|
3907
3976
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>source</code></td><td align="left">| <a href="#collectionreference"><code>CollectionReference</code></a><<code>T</code>> | <a href="#query"><code>Query</code></a><<code>T</code>></td></tr><tr><td align="left">…<code>constraints</code></td><td align="left"><a href="#queryconstraint"><code>QueryConstraint</code></a>[]</td></tr></tbody></table></div>
|
|
3908
|
-
<h4 id="returns-
|
|
3977
|
+
<h4 id="returns-125">Returns</h4>
|
|
3909
3978
|
<p><a href="#query"><code>Query</code></a><<code>T</code>></p>
|
|
3910
3979
|
<hr>
|
|
3911
3980
|
<p><a id="queryequal"></a></p>
|
|
3912
3981
|
<h3 id="queryequal">queryEqual()</h3>
|
|
3913
3982
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> queryEqual</span><span style="color:#ABB2BF">(</span><span style="color:#E06C75;font-style:italic">a</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">Query</span><span style="color:#ABB2BF">, </span><span style="color:#E06C75;font-style:italic">b</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">Query</span><span style="color:#ABB2BF">): </span><span style="color:#E5C07B">boolean</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
3914
|
-
<h4 id="parameters-
|
|
3983
|
+
<h4 id="parameters-86">Parameters</h4>
|
|
3915
3984
|
<div class="table-scroll">
|
|
3916
3985
|
|
|
3917
3986
|
|
|
@@ -3930,13 +3999,13 @@ tagged token <code>initializeFirestore</code> can accept without crashing.</p>
|
|
|
3930
3999
|
|
|
3931
4000
|
|
|
3932
4001
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>a</code></td><td align="left"><a href="#query"><code>Query</code></a></td></tr><tr><td align="left"><code>b</code></td><td align="left"><a href="#query"><code>Query</code></a></td></tr></tbody></table></div>
|
|
3933
|
-
<h4 id="returns-
|
|
4002
|
+
<h4 id="returns-126">Returns</h4>
|
|
3934
4003
|
<p><code>boolean</code></p>
|
|
3935
4004
|
<hr>
|
|
3936
4005
|
<p><a id="refequal"></a></p>
|
|
3937
4006
|
<h3 id="refequal">refEqual()</h3>
|
|
3938
4007
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> refEqual</span><span style="color:#ABB2BF">(</span><span style="color:#E06C75;font-style:italic">a</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">DocumentReference</span><span style="color:#ABB2BF">, </span><span style="color:#E06C75;font-style:italic">b</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">DocumentReference</span><span style="color:#ABB2BF">): </span><span style="color:#E5C07B">boolean</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
3939
|
-
<h4 id="parameters-
|
|
4008
|
+
<h4 id="parameters-87">Parameters</h4>
|
|
3940
4009
|
<div class="table-scroll">
|
|
3941
4010
|
|
|
3942
4011
|
|
|
@@ -3955,12 +4024,15 @@ tagged token <code>initializeFirestore</code> can accept without crashing.</p>
|
|
|
3955
4024
|
|
|
3956
4025
|
|
|
3957
4026
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>a</code></td><td align="left"><a href="#documentreference"><code>DocumentReference</code></a></td></tr><tr><td align="left"><code>b</code></td><td align="left"><a href="#documentreference"><code>DocumentReference</code></a></td></tr></tbody></table></div>
|
|
3958
|
-
<h4 id="returns-
|
|
4027
|
+
<h4 id="returns-127">Returns</h4>
|
|
3959
4028
|
<p><code>boolean</code></p>
|
|
3960
4029
|
<hr>
|
|
3961
4030
|
<p><a id="runtransaction"></a></p>
|
|
3962
4031
|
<h3 id="runtransaction">runTransaction()</h3>
|
|
3963
|
-
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> runTransaction</span><span style="color:#ABB2BF"><</span><span style="color:#E5C07B">R</span><span style="color:#ABB2BF">>(</span
|
|
4032
|
+
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> runTransaction</span><span style="color:#ABB2BF"><</span><span style="color:#E5C07B">R</span><span style="color:#ABB2BF">>(</span></span>
|
|
4033
|
+
<span class="line"><span style="color:#E06C75;font-style:italic"> db</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">Firestore</span><span style="color:#ABB2BF">,</span></span>
|
|
4034
|
+
<span class="line"><span style="color:#61AFEF"> fn</span><span style="color:#ABB2BF">: (</span><span style="color:#E06C75;font-style:italic">tx</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">Transaction</span><span style="color:#ABB2BF">) </span><span style="color:#C678DD">=></span><span style="color:#E5C07B"> R</span><span style="color:#ABB2BF"> | </span><span style="color:#E5C07B">Promise</span><span style="color:#ABB2BF"><</span><span style="color:#E5C07B">R</span><span style="color:#ABB2BF">>,</span></span>
|
|
4035
|
+
<span class="line"><span style="color:#E06C75;font-style:italic">options</span><span style="color:#C678DD">?</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">TransactionOptions</span><span style="color:#ABB2BF">): </span><span style="color:#E5C07B">Promise</span><span style="color:#ABB2BF"><</span><span style="color:#E5C07B">R</span><span style="color:#ABB2BF">>;</span></span></code></pre>
|
|
3964
4036
|
<h4 id="type-parameters-22">Type Parameters</h4>
|
|
3965
4037
|
<div class="table-scroll">
|
|
3966
4038
|
|
|
@@ -3974,7 +4046,7 @@ tagged token <code>initializeFirestore</code> can accept without crashing.</p>
|
|
|
3974
4046
|
|
|
3975
4047
|
|
|
3976
4048
|
<table><thead><tr><th align="left">Type Parameter</th></tr></thead><tbody><tr><td align="left"><code>R</code></td></tr></tbody></table></div>
|
|
3977
|
-
<h4 id="parameters-
|
|
4049
|
+
<h4 id="parameters-88">Parameters</h4>
|
|
3978
4050
|
<div class="table-scroll">
|
|
3979
4051
|
|
|
3980
4052
|
|
|
@@ -3992,14 +4064,18 @@ tagged token <code>initializeFirestore</code> can accept without crashing.</p>
|
|
|
3992
4064
|
|
|
3993
4065
|
|
|
3994
4066
|
|
|
3995
|
-
|
|
3996
|
-
|
|
4067
|
+
|
|
4068
|
+
|
|
4069
|
+
|
|
4070
|
+
|
|
4071
|
+
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>db</code></td><td align="left"><a href="#firestore"><code>Firestore</code></a></td></tr><tr><td align="left"><code>fn</code></td><td align="left">(<code>tx</code>: <a href="/docs/pyric-admin-firestore-reference-api/#transaction"><code>Transaction</code></a>) => <code>R</code> | <code>Promise</code><<code>R</code>></td></tr><tr><td align="left"><code>options?</code></td><td align="left"><a href="#transactionoptions"><code>TransactionOptions</code></a></td></tr></tbody></table></div>
|
|
4072
|
+
<h4 id="returns-128">Returns</h4>
|
|
3997
4073
|
<p><code>Promise</code><<code>R</code>></p>
|
|
3998
4074
|
<hr>
|
|
3999
4075
|
<p><a id="servertimestamp-2"></a></p>
|
|
4000
4076
|
<h3 id="servertimestamp-1">serverTimestamp()</h3>
|
|
4001
4077
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> serverTimestamp</span><span style="color:#ABB2BF">(): </span><span style="color:#E5C07B">FieldValueSentinel</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
4002
|
-
<h4 id="returns-
|
|
4078
|
+
<h4 id="returns-129">Returns</h4>
|
|
4003
4079
|
<p><a href="#fieldvaluesentinel"><code>FieldValueSentinel</code></a></p>
|
|
4004
4080
|
<hr>
|
|
4005
4081
|
<p><a id="setdoc"></a></p>
|
|
@@ -4023,7 +4099,7 @@ tagged token <code>initializeFirestore</code> can accept without crashing.</p>
|
|
|
4023
4099
|
|
|
4024
4100
|
|
|
4025
4101
|
<table><thead><tr><th align="left">Type Parameter</th><th align="left">Default type</th></tr></thead><tbody><tr><td align="left"><code>T</code></td><td align="left"><a href="#documentdata"><code>DocumentData</code></a></td></tr></tbody></table></div>
|
|
4026
|
-
<h4 id="parameters-
|
|
4102
|
+
<h4 id="parameters-89">Parameters</h4>
|
|
4027
4103
|
<div class="table-scroll">
|
|
4028
4104
|
|
|
4029
4105
|
|
|
@@ -4046,7 +4122,7 @@ tagged token <code>initializeFirestore</code> can accept without crashing.</p>
|
|
|
4046
4122
|
|
|
4047
4123
|
|
|
4048
4124
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>ref</code></td><td align="left"><a href="#documentreference"><code>DocumentReference</code></a><<code>T</code>></td></tr><tr><td align="left"><code>data</code></td><td align="left"><code>T</code></td></tr><tr><td align="left"><code>options?</code></td><td align="left"><a href="#setoptions"><code>SetOptions</code></a></td></tr></tbody></table></div>
|
|
4049
|
-
<h4 id="returns-
|
|
4125
|
+
<h4 id="returns-130">Returns</h4>
|
|
4050
4126
|
<p><code>Promise</code><<code>void</code>></p>
|
|
4051
4127
|
<hr>
|
|
4052
4128
|
<p><a id="setloglevel"></a></p>
|
|
@@ -4057,7 +4133,7 @@ a level into (it uses host-level <code>console</code> logging directly, gated
|
|
|
4057
4133
|
by <code>pyric dev</code>’s own flags, not this call). Exists purely so app
|
|
4058
4134
|
code that calls this defensively at startup doesn’t crash on a
|
|
4059
4135
|
missing export.</p>
|
|
4060
|
-
<h4 id="parameters-
|
|
4136
|
+
<h4 id="parameters-90">Parameters</h4>
|
|
4061
4137
|
<div class="table-scroll">
|
|
4062
4138
|
|
|
4063
4139
|
|
|
@@ -4072,7 +4148,7 @@ missing export.</p>
|
|
|
4072
4148
|
|
|
4073
4149
|
|
|
4074
4150
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>logLevel</code></td><td align="left"><a href="#loglevel"><code>LogLevel</code></a></td></tr></tbody></table></div>
|
|
4075
|
-
<h4 id="returns-
|
|
4151
|
+
<h4 id="returns-131">Returns</h4>
|
|
4076
4152
|
<p><code>void</code></p>
|
|
4077
4153
|
<hr>
|
|
4078
4154
|
<p><a id="snapshotequal"></a></p>
|
|
@@ -4082,7 +4158,7 @@ missing export.</p>
|
|
|
4082
4158
|
<span class="line"><span style="color:#ABB2BF"> | </span><span style="color:#E5C07B">QuerySnapshot</span><span style="color:#ABB2BF"><</span><span style="color:#E5C07B">DocumentData</span><span style="color:#ABB2BF">>, </span><span style="color:#E06C75;font-style:italic">b</span><span style="color:#ABB2BF">:</span></span>
|
|
4083
4159
|
<span class="line"><span style="color:#ABB2BF"> | </span><span style="color:#E5C07B">DocumentSnapshot</span><span style="color:#ABB2BF"><</span><span style="color:#E5C07B">DocumentData</span><span style="color:#ABB2BF">></span></span>
|
|
4084
4160
|
<span class="line"><span style="color:#ABB2BF"> | </span><span style="color:#E5C07B">QuerySnapshot</span><span style="color:#ABB2BF"><</span><span style="color:#E5C07B">DocumentData</span><span style="color:#ABB2BF">>): </span><span style="color:#E5C07B">boolean</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
4085
|
-
<h4 id="parameters-
|
|
4161
|
+
<h4 id="parameters-91">Parameters</h4>
|
|
4086
4162
|
<div class="table-scroll">
|
|
4087
4163
|
|
|
4088
4164
|
|
|
@@ -4101,7 +4177,7 @@ missing export.</p>
|
|
|
4101
4177
|
|
|
4102
4178
|
|
|
4103
4179
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>a</code></td><td align="left">| <a href="#documentsnapshot"><code>DocumentSnapshot</code></a><<a href="#documentdata"><code>DocumentData</code></a>> | <a href="#querysnapshot"><code>QuerySnapshot</code></a><<a href="#documentdata"><code>DocumentData</code></a>></td></tr><tr><td align="left"><code>b</code></td><td align="left">| <a href="#documentsnapshot"><code>DocumentSnapshot</code></a><<a href="#documentdata"><code>DocumentData</code></a>> | <a href="#querysnapshot"><code>QuerySnapshot</code></a><<a href="#documentdata"><code>DocumentData</code></a>></td></tr></tbody></table></div>
|
|
4104
|
-
<h4 id="returns-
|
|
4180
|
+
<h4 id="returns-132">Returns</h4>
|
|
4105
4181
|
<p><code>boolean</code></p>
|
|
4106
4182
|
<hr>
|
|
4107
4183
|
<p><a id="startafter"></a></p>
|
|
@@ -4110,7 +4186,7 @@ missing export.</p>
|
|
|
4110
4186
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> startAfter</span><span style="color:#ABB2BF">(</span><span style="color:#E06C75;font-style:italic">snapshot</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">DocumentSnapshot</span><span style="color:#ABB2BF">): </span><span style="color:#E5C07B">QueryConstraint</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
4111
4187
|
<p>Same as <code>startAt</code>, but EXCLUDES the document at the cursor — the
|
|
4112
4188
|
result starts at the next ordered position.</p>
|
|
4113
|
-
<h5 id="parameters-
|
|
4189
|
+
<h5 id="parameters-92">Parameters</h5>
|
|
4114
4190
|
<div class="table-scroll">
|
|
4115
4191
|
|
|
4116
4192
|
|
|
@@ -4125,13 +4201,13 @@ result starts at the next ordered position.</p>
|
|
|
4125
4201
|
|
|
4126
4202
|
|
|
4127
4203
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>snapshot</code></td><td align="left"><a href="#documentsnapshot"><code>DocumentSnapshot</code></a></td></tr></tbody></table></div>
|
|
4128
|
-
<h5 id="returns-
|
|
4204
|
+
<h5 id="returns-133">Returns</h5>
|
|
4129
4205
|
<p><a href="#queryconstraint"><code>QueryConstraint</code></a></p>
|
|
4130
4206
|
<h4 id="call-signature-15">Call Signature</h4>
|
|
4131
4207
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> startAfter</span><span style="color:#ABB2BF">(...</span><span style="color:#E06C75;font-style:italic">values</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">unknown</span><span style="color:#ABB2BF">[]): </span><span style="color:#E5C07B">QueryConstraint</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
4132
4208
|
<p>Same as <code>startAt</code>, but EXCLUDES the document at the cursor — the
|
|
4133
4209
|
result starts at the next ordered position.</p>
|
|
4134
|
-
<h5 id="parameters-
|
|
4210
|
+
<h5 id="parameters-93">Parameters</h5>
|
|
4135
4211
|
<div class="table-scroll">
|
|
4136
4212
|
|
|
4137
4213
|
|
|
@@ -4146,7 +4222,7 @@ result starts at the next ordered position.</p>
|
|
|
4146
4222
|
|
|
4147
4223
|
|
|
4148
4224
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left">…<code>values</code></td><td align="left"><code>unknown</code>[]</td></tr></tbody></table></div>
|
|
4149
|
-
<h5 id="returns-
|
|
4225
|
+
<h5 id="returns-134">Returns</h5>
|
|
4150
4226
|
<p><a href="#queryconstraint"><code>QueryConstraint</code></a></p>
|
|
4151
4227
|
<hr>
|
|
4152
4228
|
<p><a id="startat"></a></p>
|
|
@@ -4160,7 +4236,7 @@ the result. Two overloads:</p>
|
|
|
4160
4236
|
by the query’s orderBy fields.
|
|
4161
4237
|
<code>startAt(...values)</code> — explicit positional values (one per
|
|
4162
4238
|
orderBy clause).</p>
|
|
4163
|
-
<h5 id="parameters-
|
|
4239
|
+
<h5 id="parameters-94">Parameters</h5>
|
|
4164
4240
|
<div class="table-scroll">
|
|
4165
4241
|
|
|
4166
4242
|
|
|
@@ -4175,7 +4251,7 @@ orderBy clause).</p>
|
|
|
4175
4251
|
|
|
4176
4252
|
|
|
4177
4253
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>snapshot</code></td><td align="left"><a href="#documentsnapshot"><code>DocumentSnapshot</code></a></td></tr></tbody></table></div>
|
|
4178
|
-
<h5 id="returns-
|
|
4254
|
+
<h5 id="returns-135">Returns</h5>
|
|
4179
4255
|
<p><a href="#queryconstraint"><code>QueryConstraint</code></a></p>
|
|
4180
4256
|
<h4 id="call-signature-17">Call Signature</h4>
|
|
4181
4257
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> startAt</span><span style="color:#ABB2BF">(...</span><span style="color:#E06C75;font-style:italic">values</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">unknown</span><span style="color:#ABB2BF">[]): </span><span style="color:#E5C07B">QueryConstraint</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
@@ -4186,7 +4262,7 @@ the result. Two overloads:</p>
|
|
|
4186
4262
|
by the query’s orderBy fields.
|
|
4187
4263
|
<code>startAt(...values)</code> — explicit positional values (one per
|
|
4188
4264
|
orderBy clause).</p>
|
|
4189
|
-
<h5 id="parameters-
|
|
4265
|
+
<h5 id="parameters-95">Parameters</h5>
|
|
4190
4266
|
<div class="table-scroll">
|
|
4191
4267
|
|
|
4192
4268
|
|
|
@@ -4201,14 +4277,14 @@ orderBy clause).</p>
|
|
|
4201
4277
|
|
|
4202
4278
|
|
|
4203
4279
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left">…<code>values</code></td><td align="left"><code>unknown</code>[]</td></tr></tbody></table></div>
|
|
4204
|
-
<h5 id="returns-
|
|
4280
|
+
<h5 id="returns-136">Returns</h5>
|
|
4205
4281
|
<p><a href="#queryconstraint"><code>QueryConstraint</code></a></p>
|
|
4206
4282
|
<hr>
|
|
4207
4283
|
<p><a id="sum"></a></p>
|
|
4208
4284
|
<h3 id="sum">sum()</h3>
|
|
4209
4285
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> sum</span><span style="color:#ABB2BF">(</span><span style="color:#E06C75;font-style:italic">field</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">string</span><span style="color:#ABB2BF">): </span><span style="color:#E5C07B">AggregateField</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
4210
4286
|
<p>Factory: sum-of-<code>field</code> aggregate.</p>
|
|
4211
|
-
<h4 id="parameters-
|
|
4287
|
+
<h4 id="parameters-96">Parameters</h4>
|
|
4212
4288
|
<div class="table-scroll">
|
|
4213
4289
|
|
|
4214
4290
|
|
|
@@ -4223,26 +4299,16 @@ orderBy clause).</p>
|
|
|
4223
4299
|
|
|
4224
4300
|
|
|
4225
4301
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>field</code></td><td align="left"><code>string</code></td></tr></tbody></table></div>
|
|
4226
|
-
<h4 id="returns-
|
|
4302
|
+
<h4 id="returns-137">Returns</h4>
|
|
4227
4303
|
<p><a href="#aggregatefield"><code>AggregateField</code></a></p>
|
|
4228
4304
|
<hr>
|
|
4229
4305
|
<p><a id="terminate"></a></p>
|
|
4230
4306
|
<h3 id="terminate">terminate()</h3>
|
|
4231
4307
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> terminate</span><span style="color:#ABB2BF">(</span><span style="color:#E06C75;font-style:italic">db</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">Firestore</span><span style="color:#ABB2BF">): </span><span style="color:#E5C07B">Promise</span><span style="color:#ABB2BF"><</span><span style="color:#E5C07B">void</span><span style="color:#ABB2BF">>;</span></span></code></pre>
|
|
4232
|
-
<p>
|
|
4233
|
-
|
|
4234
|
-
|
|
4235
|
-
|
|
4236
|
-
This is the honest mapping of “terminate this Firestore instance”:
|
|
4237
|
-
a real app that calls <code>terminate(db)</code> expects listeners to stop and
|
|
4238
|
-
the instance to be unusable for further meaningful work, and
|
|
4239
|
-
<code>dispose()</code> delivers exactly that for the sandbox.</p>
|
|
4240
|
-
<p>Caveat: <code>dispose()</code> operates on the whole <code>Sandbox</code>, not a
|
|
4241
|
-
Firestore-only slice of it — if <code>pyric/database</code> or <code>pyric/storage</code>
|
|
4242
|
-
share the same <code>Sandbox</code>, their listener registries are torn down
|
|
4243
|
-
too. This differs from the real SDK, where <code>terminate()</code> only
|
|
4244
|
-
affects the one <code>Firestore</code> instance. Documented divergence.</p>
|
|
4245
|
-
<h4 id="parameters-96">Parameters</h4>
|
|
4308
|
+
<p>Terminates this Firestore service target only. Held references become
|
|
4309
|
+
unusable and owned listeners stop, while sibling Firestore handles and
|
|
4310
|
+
other services on the same Sandbox remain alive.</p>
|
|
4311
|
+
<h4 id="parameters-97">Parameters</h4>
|
|
4246
4312
|
<div class="table-scroll">
|
|
4247
4313
|
|
|
4248
4314
|
|
|
@@ -4257,7 +4323,7 @@ affects the one <code>Firestore</code> instance. Documented divergence.</p>
|
|
|
4257
4323
|
|
|
4258
4324
|
|
|
4259
4325
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>db</code></td><td align="left"><a href="#firestore"><code>Firestore</code></a></td></tr></tbody></table></div>
|
|
4260
|
-
<h4 id="returns-
|
|
4326
|
+
<h4 id="returns-138">Returns</h4>
|
|
4261
4327
|
<p><code>Promise</code><<code>void</code>></p>
|
|
4262
4328
|
<hr>
|
|
4263
4329
|
<p><a id="updatedoc"></a></p>
|
|
@@ -4268,7 +4334,7 @@ Web SDK shape — partial updates can target any subset of fields, so
|
|
|
4268
4334
|
a translator built around a full <code>AppModelType</code> would be a type-shape
|
|
4269
4335
|
mismatch. Use the underlying <code>DocumentData</code> view (<code>withConverter(ref, null)</code>) for typed-and-untyped mixed access if you need both styles
|
|
4270
4336
|
against the same path.</p>
|
|
4271
|
-
<h4 id="parameters-
|
|
4337
|
+
<h4 id="parameters-98">Parameters</h4>
|
|
4272
4338
|
<div class="table-scroll">
|
|
4273
4339
|
|
|
4274
4340
|
|
|
@@ -4287,13 +4353,13 @@ against the same path.</p>
|
|
|
4287
4353
|
|
|
4288
4354
|
|
|
4289
4355
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>ref</code></td><td align="left"><a href="#documentreference"><code>DocumentReference</code></a></td></tr><tr><td align="left"><code>data</code></td><td align="left"><a href="#documentdata"><code>DocumentData</code></a></td></tr></tbody></table></div>
|
|
4290
|
-
<h4 id="returns-
|
|
4356
|
+
<h4 id="returns-139">Returns</h4>
|
|
4291
4357
|
<p><code>Promise</code><<code>void</code>></p>
|
|
4292
4358
|
<hr>
|
|
4293
4359
|
<p><a id="vector"></a></p>
|
|
4294
4360
|
<h3 id="vector">vector()</h3>
|
|
4295
4361
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> vector</span><span style="color:#ABB2BF">(</span><span style="color:#E06C75;font-style:italic">values</span><span style="color:#C678DD">?</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">number</span><span style="color:#ABB2BF">[]): </span><span style="color:#E5C07B">VectorValue</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
4296
|
-
<h4 id="parameters-
|
|
4362
|
+
<h4 id="parameters-99">Parameters</h4>
|
|
4297
4363
|
<div class="table-scroll">
|
|
4298
4364
|
|
|
4299
4365
|
|
|
@@ -4308,19 +4374,15 @@ against the same path.</p>
|
|
|
4308
4374
|
|
|
4309
4375
|
|
|
4310
4376
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>values?</code></td><td align="left"><code>number</code>[]</td></tr></tbody></table></div>
|
|
4311
|
-
<h4 id="returns-
|
|
4377
|
+
<h4 id="returns-140">Returns</h4>
|
|
4312
4378
|
<p><a href="#vectorvalue"><code>VectorValue</code></a></p>
|
|
4313
4379
|
<hr>
|
|
4314
4380
|
<p><a id="waitforpendingwrites"></a></p>
|
|
4315
4381
|
<h3 id="waitforpendingwrites">waitForPendingWrites()</h3>
|
|
4316
4382
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> waitForPendingWrites</span><span style="color:#ABB2BF">(</span><span style="color:#E06C75;font-style:italic">db</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">Firestore</span><span style="color:#ABB2BF">): </span><span style="color:#E5C07B">Promise</span><span style="color:#ABB2BF"><</span><span style="color:#E5C07B">void</span><span style="color:#ABB2BF">>;</span></span></code></pre>
|
|
4317
|
-
<p>
|
|
4318
|
-
|
|
4319
|
-
|
|
4320
|
-
by the time the write’s own promise resolves, so by the time this is
|
|
4321
|
-
called there are, honestly, never any writes still pending a round
|
|
4322
|
-
trip.</p>
|
|
4323
|
-
<h4 id="parameters-99">Parameters</h4>
|
|
4383
|
+
<p>Resolves after writes that were issued while offline receive their modeled
|
|
4384
|
+
acknowledgement on reconnect.</p>
|
|
4385
|
+
<h4 id="parameters-100">Parameters</h4>
|
|
4324
4386
|
<div class="table-scroll">
|
|
4325
4387
|
|
|
4326
4388
|
|
|
@@ -4335,16 +4397,16 @@ trip.</p>
|
|
|
4335
4397
|
|
|
4336
4398
|
|
|
4337
4399
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>db</code></td><td align="left"><a href="#firestore"><code>Firestore</code></a></td></tr></tbody></table></div>
|
|
4338
|
-
<h4 id="returns-
|
|
4400
|
+
<h4 id="returns-141">Returns</h4>
|
|
4339
4401
|
<p><code>Promise</code><<code>void</code>></p>
|
|
4340
4402
|
<hr>
|
|
4341
4403
|
<p><a id="where"></a></p>
|
|
4342
4404
|
<h3 id="where">where()</h3>
|
|
4343
4405
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> where</span><span style="color:#ABB2BF">(</span></span>
|
|
4344
4406
|
<span class="line"><span style="color:#E06C75;font-style:italic"> field</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">string</span><span style="color:#ABB2BF"> | </span><span style="color:#E5C07B">FieldPath</span><span style="color:#ABB2BF">,</span></span>
|
|
4345
|
-
<span class="line"><span style="color:#E06C75;font-style:italic"> op</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">
|
|
4407
|
+
<span class="line"><span style="color:#E06C75;font-style:italic"> op</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">QueryWhereFilterOp</span><span style="color:#ABB2BF">,</span></span>
|
|
4346
4408
|
<span class="line"><span style="color:#E06C75;font-style:italic"> value</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">unknown</span><span style="color:#ABB2BF">): </span><span style="color:#E5C07B">QueryConstraint</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
4347
|
-
<h4 id="parameters-
|
|
4409
|
+
<h4 id="parameters-101">Parameters</h4>
|
|
4348
4410
|
<div class="table-scroll">
|
|
4349
4411
|
|
|
4350
4412
|
|
|
@@ -4366,8 +4428,8 @@ trip.</p>
|
|
|
4366
4428
|
|
|
4367
4429
|
|
|
4368
4430
|
|
|
4369
|
-
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>field</code></td><td align="left"><code>string</code> | <a href="#fieldpath"><code>FieldPath</code></a></td></tr><tr><td align="left"><code>op</code></td><td align="left"><
|
|
4370
|
-
<h4 id="returns-
|
|
4431
|
+
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>field</code></td><td align="left"><code>string</code> | <a href="#fieldpath"><code>FieldPath</code></a></td></tr><tr><td align="left"><code>op</code></td><td align="left"><code>QueryWhereFilterOp</code></td></tr><tr><td align="left"><code>value</code></td><td align="left"><code>unknown</code></td></tr></tbody></table></div>
|
|
4432
|
+
<h4 id="returns-142">Returns</h4>
|
|
4371
4433
|
<p><a href="#queryconstraint"><code>QueryConstraint</code></a></p>
|
|
4372
4434
|
<hr>
|
|
4373
4435
|
<p><a id="withconverter"></a></p>
|
|
@@ -4393,7 +4455,7 @@ trip.</p>
|
|
|
4393
4455
|
|
|
4394
4456
|
|
|
4395
4457
|
<table><thead><tr><th align="left">Type Parameter</th><th align="left">Default type</th></tr></thead><tbody><tr><td align="left"><code>AppModel</code></td><td align="left">-</td></tr><tr><td align="left"><code>DbModel</code> <em>extends</em> <a href="#documentdata"><code>DocumentData</code></a></td><td align="left"><a href="#documentdata"><code>DocumentData</code></a></td></tr></tbody></table></div>
|
|
4396
|
-
<h5 id="parameters-
|
|
4458
|
+
<h5 id="parameters-102">Parameters</h5>
|
|
4397
4459
|
<div class="table-scroll">
|
|
4398
4460
|
|
|
4399
4461
|
|
|
@@ -4412,11 +4474,11 @@ trip.</p>
|
|
|
4412
4474
|
|
|
4413
4475
|
|
|
4414
4476
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>ref</code></td><td align="left"><a href="#documentreference"><code>DocumentReference</code></a><<a href="#documentdata"><code>DocumentData</code></a>></td></tr><tr><td align="left"><code>converter</code></td><td align="left"><a href="#firestoredataconverter"><code>FirestoreDataConverter</code></a><<code>AppModel</code>, <code>DbModel</code>></td></tr></tbody></table></div>
|
|
4415
|
-
<h5 id="returns-
|
|
4477
|
+
<h5 id="returns-143">Returns</h5>
|
|
4416
4478
|
<p><a href="#documentreference"><code>DocumentReference</code></a><<code>AppModel</code>></p>
|
|
4417
4479
|
<h4 id="call-signature-19">Call Signature</h4>
|
|
4418
4480
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> withConverter</span><span style="color:#ABB2BF">(</span><span style="color:#E06C75;font-style:italic">ref</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">DocumentReference</span><span style="color:#ABB2BF"><</span><span style="color:#E5C07B">unknown</span><span style="color:#ABB2BF">>, </span><span style="color:#E06C75;font-style:italic">converter</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">null</span><span style="color:#ABB2BF">): </span><span style="color:#E5C07B">DocumentReference</span><span style="color:#ABB2BF"><</span><span style="color:#E5C07B">DocumentData</span><span style="color:#ABB2BF">>;</span></span></code></pre>
|
|
4419
|
-
<h5 id="parameters-
|
|
4481
|
+
<h5 id="parameters-103">Parameters</h5>
|
|
4420
4482
|
<div class="table-scroll">
|
|
4421
4483
|
|
|
4422
4484
|
|
|
@@ -4435,7 +4497,7 @@ trip.</p>
|
|
|
4435
4497
|
|
|
4436
4498
|
|
|
4437
4499
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>ref</code></td><td align="left"><a href="#documentreference"><code>DocumentReference</code></a><<code>unknown</code>></td></tr><tr><td align="left"><code>converter</code></td><td align="left"><code>null</code></td></tr></tbody></table></div>
|
|
4438
|
-
<h5 id="returns-
|
|
4500
|
+
<h5 id="returns-144">Returns</h5>
|
|
4439
4501
|
<p><a href="#documentreference"><code>DocumentReference</code></a><<a href="#documentdata"><code>DocumentData</code></a>></p>
|
|
4440
4502
|
<h4 id="call-signature-20">Call Signature</h4>
|
|
4441
4503
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> withConverter</span><span style="color:#ABB2BF"><</span><span style="color:#E5C07B">AppModel</span><span style="color:#ABB2BF">, </span><span style="color:#E5C07B">DbModel</span><span style="color:#ABB2BF">>(</span><span style="color:#E06C75;font-style:italic">ref</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">CollectionReference</span><span style="color:#ABB2BF"><</span><span style="color:#E5C07B">DocumentData</span><span style="color:#ABB2BF">>, </span><span style="color:#E06C75;font-style:italic">converter</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">FirestoreDataConverter</span><span style="color:#ABB2BF"><</span><span style="color:#E5C07B">AppModel</span><span style="color:#ABB2BF">, </span><span style="color:#E5C07B">DbModel</span><span style="color:#ABB2BF">>): </span><span style="color:#E5C07B">CollectionReference</span><span style="color:#ABB2BF"><</span><span style="color:#E5C07B">AppModel</span><span style="color:#ABB2BF">>;</span></span></code></pre>
|
|
@@ -4458,7 +4520,7 @@ trip.</p>
|
|
|
4458
4520
|
|
|
4459
4521
|
|
|
4460
4522
|
<table><thead><tr><th align="left">Type Parameter</th><th align="left">Default type</th></tr></thead><tbody><tr><td align="left"><code>AppModel</code></td><td align="left">-</td></tr><tr><td align="left"><code>DbModel</code> <em>extends</em> <a href="#documentdata"><code>DocumentData</code></a></td><td align="left"><a href="#documentdata"><code>DocumentData</code></a></td></tr></tbody></table></div>
|
|
4461
|
-
<h5 id="parameters-
|
|
4523
|
+
<h5 id="parameters-104">Parameters</h5>
|
|
4462
4524
|
<div class="table-scroll">
|
|
4463
4525
|
|
|
4464
4526
|
|
|
@@ -4477,11 +4539,11 @@ trip.</p>
|
|
|
4477
4539
|
|
|
4478
4540
|
|
|
4479
4541
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>ref</code></td><td align="left"><a href="#collectionreference"><code>CollectionReference</code></a><<a href="#documentdata"><code>DocumentData</code></a>></td></tr><tr><td align="left"><code>converter</code></td><td align="left"><a href="#firestoredataconverter"><code>FirestoreDataConverter</code></a><<code>AppModel</code>, <code>DbModel</code>></td></tr></tbody></table></div>
|
|
4480
|
-
<h5 id="returns-
|
|
4542
|
+
<h5 id="returns-145">Returns</h5>
|
|
4481
4543
|
<p><a href="#collectionreference"><code>CollectionReference</code></a><<code>AppModel</code>></p>
|
|
4482
4544
|
<h4 id="call-signature-21">Call Signature</h4>
|
|
4483
4545
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> withConverter</span><span style="color:#ABB2BF">(</span><span style="color:#E06C75;font-style:italic">ref</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">CollectionReference</span><span style="color:#ABB2BF"><</span><span style="color:#E5C07B">unknown</span><span style="color:#ABB2BF">>, </span><span style="color:#E06C75;font-style:italic">converter</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">null</span><span style="color:#ABB2BF">): </span><span style="color:#E5C07B">CollectionReference</span><span style="color:#ABB2BF"><</span><span style="color:#E5C07B">DocumentData</span><span style="color:#ABB2BF">>;</span></span></code></pre>
|
|
4484
|
-
<h5 id="parameters-
|
|
4546
|
+
<h5 id="parameters-105">Parameters</h5>
|
|
4485
4547
|
<div class="table-scroll">
|
|
4486
4548
|
|
|
4487
4549
|
|
|
@@ -4500,7 +4562,7 @@ trip.</p>
|
|
|
4500
4562
|
|
|
4501
4563
|
|
|
4502
4564
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>ref</code></td><td align="left"><a href="#collectionreference"><code>CollectionReference</code></a><<code>unknown</code>></td></tr><tr><td align="left"><code>converter</code></td><td align="left"><code>null</code></td></tr></tbody></table></div>
|
|
4503
|
-
<h5 id="returns-
|
|
4565
|
+
<h5 id="returns-146">Returns</h5>
|
|
4504
4566
|
<p><a href="#collectionreference"><code>CollectionReference</code></a><<a href="#documentdata"><code>DocumentData</code></a>></p>
|
|
4505
4567
|
<h4 id="call-signature-22">Call Signature</h4>
|
|
4506
4568
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> withConverter</span><span style="color:#ABB2BF"><</span><span style="color:#E5C07B">AppModel</span><span style="color:#ABB2BF">, </span><span style="color:#E5C07B">DbModel</span><span style="color:#ABB2BF">>(</span><span style="color:#E06C75;font-style:italic">q</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">Query</span><span style="color:#ABB2BF"><</span><span style="color:#E5C07B">DocumentData</span><span style="color:#ABB2BF">>, </span><span style="color:#E06C75;font-style:italic">converter</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">FirestoreDataConverter</span><span style="color:#ABB2BF"><</span><span style="color:#E5C07B">AppModel</span><span style="color:#ABB2BF">, </span><span style="color:#E5C07B">DbModel</span><span style="color:#ABB2BF">>): </span><span style="color:#E5C07B">Query</span><span style="color:#ABB2BF"><</span><span style="color:#E5C07B">AppModel</span><span style="color:#ABB2BF">>;</span></span></code></pre>
|
|
@@ -4523,7 +4585,7 @@ trip.</p>
|
|
|
4523
4585
|
|
|
4524
4586
|
|
|
4525
4587
|
<table><thead><tr><th align="left">Type Parameter</th><th align="left">Default type</th></tr></thead><tbody><tr><td align="left"><code>AppModel</code></td><td align="left">-</td></tr><tr><td align="left"><code>DbModel</code> <em>extends</em> <a href="#documentdata"><code>DocumentData</code></a></td><td align="left"><a href="#documentdata"><code>DocumentData</code></a></td></tr></tbody></table></div>
|
|
4526
|
-
<h5 id="parameters-
|
|
4588
|
+
<h5 id="parameters-106">Parameters</h5>
|
|
4527
4589
|
<div class="table-scroll">
|
|
4528
4590
|
|
|
4529
4591
|
|
|
@@ -4542,11 +4604,11 @@ trip.</p>
|
|
|
4542
4604
|
|
|
4543
4605
|
|
|
4544
4606
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>q</code></td><td align="left"><a href="#query"><code>Query</code></a><<a href="#documentdata"><code>DocumentData</code></a>></td></tr><tr><td align="left"><code>converter</code></td><td align="left"><a href="#firestoredataconverter"><code>FirestoreDataConverter</code></a><<code>AppModel</code>, <code>DbModel</code>></td></tr></tbody></table></div>
|
|
4545
|
-
<h5 id="returns-
|
|
4607
|
+
<h5 id="returns-147">Returns</h5>
|
|
4546
4608
|
<p><a href="#query"><code>Query</code></a><<code>AppModel</code>></p>
|
|
4547
4609
|
<h4 id="call-signature-23">Call Signature</h4>
|
|
4548
4610
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> withConverter</span><span style="color:#ABB2BF">(</span><span style="color:#E06C75;font-style:italic">q</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">Query</span><span style="color:#ABB2BF"><</span><span style="color:#E5C07B">unknown</span><span style="color:#ABB2BF">>, </span><span style="color:#E06C75;font-style:italic">converter</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">null</span><span style="color:#ABB2BF">): </span><span style="color:#E5C07B">Query</span><span style="color:#ABB2BF"><</span><span style="color:#E5C07B">DocumentData</span><span style="color:#ABB2BF">>;</span></span></code></pre>
|
|
4549
|
-
<h5 id="parameters-
|
|
4611
|
+
<h5 id="parameters-107">Parameters</h5>
|
|
4550
4612
|
<div class="table-scroll">
|
|
4551
4613
|
|
|
4552
4614
|
|
|
@@ -4565,13 +4627,13 @@ trip.</p>
|
|
|
4565
4627
|
|
|
4566
4628
|
|
|
4567
4629
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>q</code></td><td align="left"><a href="#query"><code>Query</code></a><<code>unknown</code>></td></tr><tr><td align="left"><code>converter</code></td><td align="left"><code>null</code></td></tr></tbody></table></div>
|
|
4568
|
-
<h5 id="returns-
|
|
4630
|
+
<h5 id="returns-148">Returns</h5>
|
|
4569
4631
|
<p><a href="#query"><code>Query</code></a><<a href="#documentdata"><code>DocumentData</code></a>></p>
|
|
4570
4632
|
<hr>
|
|
4571
4633
|
<p><a id="writebatch-1"></a></p>
|
|
4572
4634
|
<h3 id="writebatch-1">writeBatch()</h3>
|
|
4573
4635
|
<pre class="astro-code one-dark-pro" style="background-color:#282c34;color:#abb2bf; overflow-x: auto;" tabindex="0" data-language="ts"><code><span class="line"><span style="color:#C678DD">function</span><span style="color:#61AFEF"> writeBatch</span><span style="color:#ABB2BF">(</span><span style="color:#E06C75;font-style:italic">db</span><span style="color:#ABB2BF">: </span><span style="color:#E5C07B">Firestore</span><span style="color:#ABB2BF">): </span><span style="color:#E5C07B">WriteBatch</span><span style="color:#ABB2BF">;</span></span></code></pre>
|
|
4574
|
-
<h4 id="parameters-
|
|
4636
|
+
<h4 id="parameters-108">Parameters</h4>
|
|
4575
4637
|
<div class="table-scroll">
|
|
4576
4638
|
|
|
4577
4639
|
|
|
@@ -4586,5 +4648,5 @@ trip.</p>
|
|
|
4586
4648
|
|
|
4587
4649
|
|
|
4588
4650
|
<table><thead><tr><th align="left">Parameter</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>db</code></td><td align="left"><a href="#firestore"><code>Firestore</code></a></td></tr></tbody></table></div>
|
|
4589
|
-
<h4 id="returns-
|
|
4590
|
-
<p><a href="/docs/pyric-admin-firestore-reference-api/#writebatch"><code>WriteBatch</code></a></p> </article> </main> <aside class="doc-toc api-symbols" aria-label="API symbols"> <h2 class="doc-toc-heading">Symbols</h2> <input class="api-symbol-filter" type="search" placeholder="Filter symbols" aria-label="Filter API symbols" data-api-symbol-filter> <div class="api-symbol-groups" data-api-symbol-groups> <section class="api-symbol-group" data-api-symbol-group> <a class="api-symbol-kind" href="#classes"> Classes </a> <ul> <li data-api-symbol="bytes"> <a href="#bytes">Bytes</a> </li><li data-api-symbol="fieldpath"> <a href="#fieldpath">FieldPath</a> </li><li data-api-symbol="fieldvalue"> <a href="#fieldvalue">FieldValue</a> </li><li data-api-symbol="geopoint"> <a href="#geopoint">GeoPoint</a> </li><li data-api-symbol="sandboxerror"> <a href="#sandboxerror">SandboxError</a> </li><li data-api-symbol="timestamp"> <a href="#timestamp">Timestamp</a> </li><li data-api-symbol="vectorvalue"> <a href="#vectorvalue">VectorValue</a> </li> </ul> </section><section class="api-symbol-group" data-api-symbol-group> <a class="api-symbol-kind" href="#interfaces"> Interfaces </a> <ul> <li data-api-symbol="aggregatequerysnapshot"> <a href="#aggregatequerysnapshot">AggregateQuerySnapshot</a> </li><li data-api-symbol="collectionreference"> <a href="#collectionreference">CollectionReference</a> </li><li data-api-symbol="documentreference"> <a href="#documentreference">DocumentReference</a> </li><li data-api-symbol="documentsnapshot"> <a href="#documentsnapshot">DocumentSnapshot</a> </li><li data-api-symbol="firestore"> <a href="#firestore">Firestore</a> </li><li data-api-symbol="firestoredataconverter"> <a href="#firestoredataconverter">FirestoreDataConverter</a> </li><li data-api-symbol="firestoredatatooldeps"> <a href="#firestoredatatooldeps">FirestoreDataToolDeps</a> </li><li data-api-symbol="firestoreinspecttooldeps"> <a href="#firestoreinspecttooldeps">FirestoreInspectToolDeps</a> </li><li data-api-symbol="firestoresettings"> <a href="#firestoresettings">FirestoreSettings</a> </li><li data-api-symbol="lintresult"> <a href="#lintresult">LintResult</a> </li><li data-api-symbol="localcache"> <a href="#localcache">LocalCache</a> </li><li data-api-symbol="memorygarbagecollector"> <a href="#memorygarbagecollector">MemoryGarbageCollector</a> </li><li data-api-symbol="persistencesettings"> <a href="#persistencesettings">PersistenceSettings</a> </li><li data-api-symbol="persistenttabmanager"> <a href="#persistenttabmanager">PersistentTabManager</a> </li><li data-api-symbol="query"> <a href="#query">Query</a> </li><li data-api-symbol="queryconstraint"> <a href="#queryconstraint">QueryConstraint</a> </li><li data-api-symbol="querydocumentsnapshot"> <a href="#querydocumentsnapshot">QueryDocumentSnapshot</a> </li><li data-api-symbol="querysnapshot"> <a href="#querysnapshot">QuerySnapshot</a> </li><li data-api-symbol="sandbox"> <a href="#sandbox">Sandbox</a> </li><li data-api-symbol="sandboxcontext"> <a href="#sandboxcontext">SandboxContext</a> </li><li data-api-symbol="setoptions"> <a href="#setoptions">SetOptions</a> </li><li data-api-symbol="snapshotlistenoptions"> <a href="#snapshotlistenoptions">SnapshotListenOptions</a> </li><li data-api-symbol="snapshotobserver"> <a href="#snapshotobserver">SnapshotObserver</a> </li><li data-api-symbol="userauth"> <a href="#userauth">UserAuth</a> </li> </ul> </section><section class="api-symbol-group" data-api-symbol-group> <a class="api-symbol-kind" href="#type-aliases"> Type Aliases </a> <ul> <li data-api-symbol="aggregatefield"> <a href="#aggregatefield">AggregateField</a> </li><li data-api-symbol="aggregatespec"> <a href="#aggregatespec">AggregateSpec</a> </li><li data-api-symbol="appfirestore"> <a href="#appfirestore">AppFirestore</a> </li><li data-api-symbol="as"> <a href="#as">As</a> </li><li data-api-symbol="authstate"> <a href="#authstate">AuthState</a> </li><li data-api-symbol="documentdata"> <a href="#documentdata">DocumentData</a> </li><li data-api-symbol="fieldvaluesentinel"> <a href="#fieldvaluesentinel">FieldValueSentinel</a> </li><li data-api-symbol="loglevel"> <a href="#loglevel">LogLevel</a> </li><li data-api-symbol="orderdirection"> <a href="#orderdirection">OrderDirection</a> </li><li data-api-symbol="transaction"> <a href="#transaction">Transaction</a> </li><li data-api-symbol="unsubscribe()"> <a href="#unsubscribe">Unsubscribe()</a> </li><li data-api-symbol="wherefilterop"> <a href="#wherefilterop">WhereFilterOp</a> </li><li data-api-symbol="writebatch"> <a href="#writebatch">WriteBatch</a> </li> </ul> </section><section class="api-symbol-group" data-api-symbol-group> <a class="api-symbol-kind" href="#variables"> Variables </a> <ul> <li data-api-symbol="target_symbol"> <a href="#target_symbol">TARGET_SYMBOL</a> </li> </ul> </section><section class="api-symbol-group" data-api-symbol-group> <a class="api-symbol-kind" href="#functions"> Functions </a> <ul> <li data-api-symbol="actingas()"> <a href="#actingas">actingAs()</a> </li><li data-api-symbol="adddoc()"> <a href="#adddoc">addDoc()</a> </li><li data-api-symbol="and()"> <a href="#and">and()</a> </li><li data-api-symbol="arrayremove()"> <a href="#arrayremove-1">arrayRemove()</a> </li><li data-api-symbol="arrayunion()"> <a href="#arrayunion-1">arrayUnion()</a> </li><li data-api-symbol="average()"> <a href="#average">average()</a> </li><li data-api-symbol="clearindexeddbpersistence()"> <a href="#clearindexeddbpersistence">clearIndexedDbPersistence()</a> </li><li data-api-symbol="collection()"> <a href="#collection">collection()</a> </li><li data-api-symbol="collectiongroup()"> <a href="#collectiongroup">collectionGroup()</a> </li><li data-api-symbol="connectfirestoreemulator()"> <a href="#connectfirestoreemulator">connectFirestoreEmulator()</a> </li><li data-api-symbol="count()"> <a href="#count">count()</a> </li><li data-api-symbol="createfirestoredatatools()"> <a href="#createfirestoredatatools">createFirestoreDataTools()</a> </li><li data-api-symbol="createfirestoreinspecttools()"> <a href="#createfirestoreinspecttools">createFirestoreInspectTools()</a> </li><li data-api-symbol="deletedoc()"> <a href="#deletedoc">deleteDoc()</a> </li><li data-api-symbol="deletefield()"> <a href="#deletefield">deleteField()</a> </li><li data-api-symbol="disablenetwork()"> <a href="#disablenetwork">disableNetwork()</a> </li><li data-api-symbol="doc()"> <a href="#doc">doc()</a> </li><li data-api-symbol="documentid()"> <a href="#documentid">documentId()</a> </li><li data-api-symbol="enableindexeddbpersistence()"> <a href="#enableindexeddbpersistence">enableIndexedDbPersistence()</a> </li><li data-api-symbol="enablemultitabindexeddbpersistence()"> <a href="#enablemultitabindexeddbpersistence">enableMultiTabIndexedDbPersistence()</a> </li><li data-api-symbol="enablenetwork()"> <a href="#enablenetwork">enableNetwork()</a> </li><li data-api-symbol="endat()"> <a href="#endat">endAt()</a> </li><li data-api-symbol="endbefore()"> <a href="#endbefore">endBefore()</a> </li><li data-api-symbol="getadminfirestore()"> <a href="#getadminfirestore">getAdminFirestore()</a> </li><li data-api-symbol="getaggregatefromserver()"> <a href="#getaggregatefromserver">getAggregateFromServer()</a> </li><li data-api-symbol="getcountfromserver()"> <a href="#getcountfromserver">getCountFromServer()</a> </li><li data-api-symbol="getdoc()"> <a href="#getdoc">getDoc()</a> </li><li data-api-symbol="getdocfromcache()"> <a href="#getdocfromcache">getDocFromCache()</a> </li><li data-api-symbol="getdocfromserver()"> <a href="#getdocfromserver">getDocFromServer()</a> </li><li data-api-symbol="getdocs()"> <a href="#getdocs">getDocs()</a> </li><li data-api-symbol="getdocsfromcache()"> <a href="#getdocsfromcache">getDocsFromCache()</a> </li><li data-api-symbol="getdocsfromserver()"> <a href="#getdocsfromserver">getDocsFromServer()</a> </li><li data-api-symbol="getfirestore()"> <a href="#getfirestore">getFirestore()</a> </li><li data-api-symbol="increment()"> <a href="#increment-1">increment()</a> </li><li data-api-symbol="initializefirestore()"> <a href="#initializefirestore">initializeFirestore()</a> </li><li data-api-symbol="limit()"> <a href="#limit">limit()</a> </li><li data-api-symbol="limittolast()"> <a href="#limittolast">limitToLast()</a> </li><li data-api-symbol="memoryeagergarbagecollector()"> <a href="#memoryeagergarbagecollector">memoryEagerGarbageCollector()</a> </li><li data-api-symbol="memorylocalcache()"> <a href="#memorylocalcache">memoryLocalCache()</a> </li><li data-api-symbol="memorylrugarbagecollector()"> <a href="#memorylrugarbagecollector">memoryLruGarbageCollector()</a> </li><li data-api-symbol="onsnapshot()"> <a href="#onsnapshot">onSnapshot()</a> </li><li data-api-symbol="onsnapshotsinsync()"> <a href="#onsnapshotsinsync">onSnapshotsInSync()</a> </li><li data-api-symbol="or()"> <a href="#or">or()</a> </li><li data-api-symbol="orderby()"> <a href="#orderby">orderBy()</a> </li><li data-api-symbol="persistentlocalcache()"> <a href="#persistentlocalcache">persistentLocalCache()</a> </li><li data-api-symbol="persistentmultipletabmanager()"> <a href="#persistentmultipletabmanager">persistentMultipleTabManager()</a> </li><li data-api-symbol="persistentsingletabmanager()"> <a href="#persistentsingletabmanager">persistentSingleTabManager()</a> </li><li data-api-symbol="query()"> <a href="#query-1">query()</a> </li><li data-api-symbol="queryequal()"> <a href="#queryequal">queryEqual()</a> </li><li data-api-symbol="refequal()"> <a href="#refequal">refEqual()</a> </li><li data-api-symbol="runtransaction()"> <a href="#runtransaction">runTransaction()</a> </li><li data-api-symbol="servertimestamp()"> <a href="#servertimestamp-1">serverTimestamp()</a> </li><li data-api-symbol="setdoc()"> <a href="#setdoc">setDoc()</a> </li><li data-api-symbol="setloglevel()"> <a href="#setloglevel">setLogLevel()</a> </li><li data-api-symbol="snapshotequal()"> <a href="#snapshotequal">snapshotEqual()</a> </li><li data-api-symbol="startafter()"> <a href="#startafter">startAfter()</a> </li><li data-api-symbol="startat()"> <a href="#startat">startAt()</a> </li><li data-api-symbol="sum()"> <a href="#sum">sum()</a> </li><li data-api-symbol="terminate()"> <a href="#terminate">terminate()</a> </li><li data-api-symbol="updatedoc()"> <a href="#updatedoc">updateDoc()</a> </li><li data-api-symbol="vector()"> <a href="#vector">vector()</a> </li><li data-api-symbol="waitforpendingwrites()"> <a href="#waitforpendingwrites">waitForPendingWrites()</a> </li><li data-api-symbol="where()"> <a href="#where">where()</a> </li><li data-api-symbol="withconverter()"> <a href="#withconverter">withConverter()</a> </li><li data-api-symbol="writebatch()"> <a href="#writebatch-1">writeBatch()</a> </li> </ul> </section> <p class="api-symbol-empty" data-api-symbol-empty hidden>No matching symbols</p> </div> </aside> </div> <script type="module">const a=document.querySelector("[data-api-symbol-filter]"),d=[...document.querySelectorAll("[data-api-symbol-group]")],n=document.querySelector("[data-api-symbol-empty]");a?.addEventListener("input",()=>{const t=a.value.trim().toLowerCase();let o=0;for(const i of d){let e=0;i.querySelectorAll("[data-api-symbol]").forEach(l=>{const r=!t||(l.dataset.apiSymbol??"").includes(t);l.hidden=!r,r&&e++}),i.hidden=e===0,o+=e}n&&(n.hidden=o>0)});</script> <script type="module">const s=new Map;document.querySelectorAll('.doc-toc a[href^="#"]').forEach(t=>s.set(decodeURIComponent(t.hash.slice(1)),t));if(s.size>0){const t=new Set,n=()=>{let o=null;for(const e of s.keys())if(t.has(e)){o=e;break}s.forEach((e,c)=>e.classList.toggle("active",c===o))},r=new IntersectionObserver(o=>{for(const e of o)e.isIntersecting?t.add(e.target.id):t.delete(e.target.id);n()},{rootMargin:"-72px 0px -60% 0px"});s.forEach((o,e)=>{const c=document.getElementById(e);c&&r.observe(c)})}</script> <script type="module">document.querySelector('.studio__nav [aria-current="page"]')?.scrollIntoView({block:"nearest",inline:"center"});</script> </body> </html>
|
|
4651
|
+
<h4 id="returns-149">Returns</h4>
|
|
4652
|
+
<p><a href="/docs/pyric-admin-firestore-reference-api/#writebatch"><code>WriteBatch</code></a></p> </article> </main> <aside class="doc-toc api-symbols" aria-label="API symbols" data-astro-cid-mw7aashj> <h2 class="doc-toc-heading" data-astro-cid-mw7aashj>Symbols</h2> <input class="api-symbol-filter" type="search" placeholder="Filter symbols" aria-label="Filter API symbols" data-api-symbol-filter data-astro-cid-mw7aashj> <div class="api-symbol-groups" data-api-symbol-groups data-astro-cid-mw7aashj> <section class="api-symbol-group" data-api-symbol-group data-astro-cid-mw7aashj> <a class="api-symbol-kind" href="#classes" data-astro-cid-mw7aashj> Classes </a> <ul data-astro-cid-mw7aashj> <li data-api-symbol="bytes" data-astro-cid-mw7aashj> <a href="#bytes" data-astro-cid-mw7aashj>Bytes</a> </li><li data-api-symbol="fieldpath" data-astro-cid-mw7aashj> <a href="#fieldpath" data-astro-cid-mw7aashj>FieldPath</a> </li><li data-api-symbol="fieldvalue" data-astro-cid-mw7aashj> <a href="#fieldvalue" data-astro-cid-mw7aashj>FieldValue</a> </li><li data-api-symbol="geopoint" data-astro-cid-mw7aashj> <a href="#geopoint" data-astro-cid-mw7aashj>GeoPoint</a> </li><li data-api-symbol="sandboxerror" data-astro-cid-mw7aashj> <a href="#sandboxerror" data-astro-cid-mw7aashj>SandboxError</a> </li><li data-api-symbol="timestamp" data-astro-cid-mw7aashj> <a href="#timestamp" data-astro-cid-mw7aashj>Timestamp</a> </li><li data-api-symbol="vectorvalue" data-astro-cid-mw7aashj> <a href="#vectorvalue" data-astro-cid-mw7aashj>VectorValue</a> </li> </ul> </section><section class="api-symbol-group" data-api-symbol-group data-astro-cid-mw7aashj> <a class="api-symbol-kind" href="#interfaces" data-astro-cid-mw7aashj> Interfaces </a> <ul data-astro-cid-mw7aashj> <li data-api-symbol="aggregatequerysnapshot" data-astro-cid-mw7aashj> <a href="#aggregatequerysnapshot" data-astro-cid-mw7aashj>AggregateQuerySnapshot</a> </li><li data-api-symbol="collectionreference" data-astro-cid-mw7aashj> <a href="#collectionreference" data-astro-cid-mw7aashj>CollectionReference</a> </li><li data-api-symbol="documentreference" data-astro-cid-mw7aashj> <a href="#documentreference" data-astro-cid-mw7aashj>DocumentReference</a> </li><li data-api-symbol="documentsnapshot" data-astro-cid-mw7aashj> <a href="#documentsnapshot" data-astro-cid-mw7aashj>DocumentSnapshot</a> </li><li data-api-symbol="firestore" data-astro-cid-mw7aashj> <a href="#firestore" data-astro-cid-mw7aashj>Firestore</a> </li><li data-api-symbol="firestoredataconverter" data-astro-cid-mw7aashj> <a href="#firestoredataconverter" data-astro-cid-mw7aashj>FirestoreDataConverter</a> </li><li data-api-symbol="firestoredatatooldeps" data-astro-cid-mw7aashj> <a href="#firestoredatatooldeps" data-astro-cid-mw7aashj>FirestoreDataToolDeps</a> </li><li data-api-symbol="firestoreinspecttooldeps" data-astro-cid-mw7aashj> <a href="#firestoreinspecttooldeps" data-astro-cid-mw7aashj>FirestoreInspectToolDeps</a> </li><li data-api-symbol="firestoresettings" data-astro-cid-mw7aashj> <a href="#firestoresettings" data-astro-cid-mw7aashj>FirestoreSettings</a> </li><li data-api-symbol="lintresult" data-astro-cid-mw7aashj> <a href="#lintresult" data-astro-cid-mw7aashj>LintResult</a> </li><li data-api-symbol="localcache" data-astro-cid-mw7aashj> <a href="#localcache" data-astro-cid-mw7aashj>LocalCache</a> </li><li data-api-symbol="memorygarbagecollector" data-astro-cid-mw7aashj> <a href="#memorygarbagecollector" data-astro-cid-mw7aashj>MemoryGarbageCollector</a> </li><li data-api-symbol="persistencesettings" data-astro-cid-mw7aashj> <a href="#persistencesettings" data-astro-cid-mw7aashj>PersistenceSettings</a> </li><li data-api-symbol="persistenttabmanager" data-astro-cid-mw7aashj> <a href="#persistenttabmanager" data-astro-cid-mw7aashj>PersistentTabManager</a> </li><li data-api-symbol="query" data-astro-cid-mw7aashj> <a href="#query" data-astro-cid-mw7aashj>Query</a> </li><li data-api-symbol="queryconstraint" data-astro-cid-mw7aashj> <a href="#queryconstraint" data-astro-cid-mw7aashj>QueryConstraint</a> </li><li data-api-symbol="querydocumentsnapshot" data-astro-cid-mw7aashj> <a href="#querydocumentsnapshot" data-astro-cid-mw7aashj>QueryDocumentSnapshot</a> </li><li data-api-symbol="querysnapshot" data-astro-cid-mw7aashj> <a href="#querysnapshot" data-astro-cid-mw7aashj>QuerySnapshot</a> </li><li data-api-symbol="sandbox" data-astro-cid-mw7aashj> <a href="#sandbox" data-astro-cid-mw7aashj>Sandbox</a> </li><li data-api-symbol="sandboxcontext" data-astro-cid-mw7aashj> <a href="#sandboxcontext" data-astro-cid-mw7aashj>SandboxContext</a> </li><li data-api-symbol="setoptions" data-astro-cid-mw7aashj> <a href="#setoptions" data-astro-cid-mw7aashj>SetOptions</a> </li><li data-api-symbol="snapshotlistenoptions" data-astro-cid-mw7aashj> <a href="#snapshotlistenoptions" data-astro-cid-mw7aashj>SnapshotListenOptions</a> </li><li data-api-symbol="snapshotmetadata" data-astro-cid-mw7aashj> <a href="#snapshotmetadata" data-astro-cid-mw7aashj>SnapshotMetadata</a> </li><li data-api-symbol="snapshotobserver" data-astro-cid-mw7aashj> <a href="#snapshotobserver" data-astro-cid-mw7aashj>SnapshotObserver</a> </li><li data-api-symbol="transactionoptions" data-astro-cid-mw7aashj> <a href="#transactionoptions" data-astro-cid-mw7aashj>TransactionOptions</a> </li><li data-api-symbol="userauth" data-astro-cid-mw7aashj> <a href="#userauth" data-astro-cid-mw7aashj>UserAuth</a> </li> </ul> </section><section class="api-symbol-group" data-api-symbol-group data-astro-cid-mw7aashj> <a class="api-symbol-kind" href="#type-aliases" data-astro-cid-mw7aashj> Type Aliases </a> <ul data-astro-cid-mw7aashj> <li data-api-symbol="aggregatefield" data-astro-cid-mw7aashj> <a href="#aggregatefield" data-astro-cid-mw7aashj>AggregateField</a> </li><li data-api-symbol="aggregatespec" data-astro-cid-mw7aashj> <a href="#aggregatespec" data-astro-cid-mw7aashj>AggregateSpec</a> </li><li data-api-symbol="appfirestore" data-astro-cid-mw7aashj> <a href="#appfirestore" data-astro-cid-mw7aashj>AppFirestore</a> </li><li data-api-symbol="as" data-astro-cid-mw7aashj> <a href="#as" data-astro-cid-mw7aashj>As</a> </li><li data-api-symbol="authstate" data-astro-cid-mw7aashj> <a href="#authstate" data-astro-cid-mw7aashj>AuthState</a> </li><li data-api-symbol="documentdata" data-astro-cid-mw7aashj> <a href="#documentdata" data-astro-cid-mw7aashj>DocumentData</a> </li><li data-api-symbol="fieldvaluesentinel" data-astro-cid-mw7aashj> <a href="#fieldvaluesentinel" data-astro-cid-mw7aashj>FieldValueSentinel</a> </li><li data-api-symbol="loglevel" data-astro-cid-mw7aashj> <a href="#loglevel" data-astro-cid-mw7aashj>LogLevel</a> </li><li data-api-symbol="orderdirection" data-astro-cid-mw7aashj> <a href="#orderdirection" data-astro-cid-mw7aashj>OrderDirection</a> </li><li data-api-symbol="transaction" data-astro-cid-mw7aashj> <a href="#transaction" data-astro-cid-mw7aashj>Transaction</a> </li><li data-api-symbol="unsubscribe()" data-astro-cid-mw7aashj> <a href="#unsubscribe" data-astro-cid-mw7aashj>Unsubscribe()</a> </li><li data-api-symbol="wherefilterop" data-astro-cid-mw7aashj> <a href="#wherefilterop" data-astro-cid-mw7aashj>WhereFilterOp</a> </li><li data-api-symbol="writebatch" data-astro-cid-mw7aashj> <a href="#writebatch" data-astro-cid-mw7aashj>WriteBatch</a> </li> </ul> </section><section class="api-symbol-group" data-api-symbol-group data-astro-cid-mw7aashj> <a class="api-symbol-kind" href="#variables" data-astro-cid-mw7aashj> Variables </a> <ul data-astro-cid-mw7aashj> <li data-api-symbol="target_symbol" data-astro-cid-mw7aashj> <a href="#target_symbol" data-astro-cid-mw7aashj>TARGET_SYMBOL</a> </li> </ul> </section><section class="api-symbol-group" data-api-symbol-group data-astro-cid-mw7aashj> <a class="api-symbol-kind" href="#functions" data-astro-cid-mw7aashj> Functions </a> <ul data-astro-cid-mw7aashj> <li data-api-symbol="actingas()" data-astro-cid-mw7aashj> <a href="#actingas" data-astro-cid-mw7aashj>actingAs()</a> </li><li data-api-symbol="adddoc()" data-astro-cid-mw7aashj> <a href="#adddoc" data-astro-cid-mw7aashj>addDoc()</a> </li><li data-api-symbol="and()" data-astro-cid-mw7aashj> <a href="#and" data-astro-cid-mw7aashj>and()</a> </li><li data-api-symbol="arrayremove()" data-astro-cid-mw7aashj> <a href="#arrayremove-1" data-astro-cid-mw7aashj>arrayRemove()</a> </li><li data-api-symbol="arrayunion()" data-astro-cid-mw7aashj> <a href="#arrayunion-1" data-astro-cid-mw7aashj>arrayUnion()</a> </li><li data-api-symbol="average()" data-astro-cid-mw7aashj> <a href="#average" data-astro-cid-mw7aashj>average()</a> </li><li data-api-symbol="clearindexeddbpersistence()" data-astro-cid-mw7aashj> <a href="#clearindexeddbpersistence" data-astro-cid-mw7aashj>clearIndexedDbPersistence()</a> </li><li data-api-symbol="collection()" data-astro-cid-mw7aashj> <a href="#collection" data-astro-cid-mw7aashj>collection()</a> </li><li data-api-symbol="collectiongroup()" data-astro-cid-mw7aashj> <a href="#collectiongroup" data-astro-cid-mw7aashj>collectionGroup()</a> </li><li data-api-symbol="connectfirestoreemulator()" data-astro-cid-mw7aashj> <a href="#connectfirestoreemulator" data-astro-cid-mw7aashj>connectFirestoreEmulator()</a> </li><li data-api-symbol="count()" data-astro-cid-mw7aashj> <a href="#count" data-astro-cid-mw7aashj>count()</a> </li><li data-api-symbol="createfirestoredatatools()" data-astro-cid-mw7aashj> <a href="#createfirestoredatatools" data-astro-cid-mw7aashj>createFirestoreDataTools()</a> </li><li data-api-symbol="createfirestoreinspecttools()" data-astro-cid-mw7aashj> <a href="#createfirestoreinspecttools" data-astro-cid-mw7aashj>createFirestoreInspectTools()</a> </li><li data-api-symbol="deletedoc()" data-astro-cid-mw7aashj> <a href="#deletedoc" data-astro-cid-mw7aashj>deleteDoc()</a> </li><li data-api-symbol="deletefield()" data-astro-cid-mw7aashj> <a href="#deletefield" data-astro-cid-mw7aashj>deleteField()</a> </li><li data-api-symbol="disablenetwork()" data-astro-cid-mw7aashj> <a href="#disablenetwork" data-astro-cid-mw7aashj>disableNetwork()</a> </li><li data-api-symbol="doc()" data-astro-cid-mw7aashj> <a href="#doc" data-astro-cid-mw7aashj>doc()</a> </li><li data-api-symbol="documentid()" data-astro-cid-mw7aashj> <a href="#documentid" data-astro-cid-mw7aashj>documentId()</a> </li><li data-api-symbol="enableindexeddbpersistence()" data-astro-cid-mw7aashj> <a href="#enableindexeddbpersistence" data-astro-cid-mw7aashj>enableIndexedDbPersistence()</a> </li><li data-api-symbol="enablemultitabindexeddbpersistence()" data-astro-cid-mw7aashj> <a href="#enablemultitabindexeddbpersistence" data-astro-cid-mw7aashj>enableMultiTabIndexedDbPersistence()</a> </li><li data-api-symbol="enablenetwork()" data-astro-cid-mw7aashj> <a href="#enablenetwork" data-astro-cid-mw7aashj>enableNetwork()</a> </li><li data-api-symbol="endat()" data-astro-cid-mw7aashj> <a href="#endat" data-astro-cid-mw7aashj>endAt()</a> </li><li data-api-symbol="endbefore()" data-astro-cid-mw7aashj> <a href="#endbefore" data-astro-cid-mw7aashj>endBefore()</a> </li><li data-api-symbol="getadminfirestore()" data-astro-cid-mw7aashj> <a href="#getadminfirestore" data-astro-cid-mw7aashj>getAdminFirestore()</a> </li><li data-api-symbol="getaggregatefromserver()" data-astro-cid-mw7aashj> <a href="#getaggregatefromserver" data-astro-cid-mw7aashj>getAggregateFromServer()</a> </li><li data-api-symbol="getcountfromserver()" data-astro-cid-mw7aashj> <a href="#getcountfromserver" data-astro-cid-mw7aashj>getCountFromServer()</a> </li><li data-api-symbol="getdoc()" data-astro-cid-mw7aashj> <a href="#getdoc" data-astro-cid-mw7aashj>getDoc()</a> </li><li data-api-symbol="getdocfromcache()" data-astro-cid-mw7aashj> <a href="#getdocfromcache" data-astro-cid-mw7aashj>getDocFromCache()</a> </li><li data-api-symbol="getdocfromserver()" data-astro-cid-mw7aashj> <a href="#getdocfromserver" data-astro-cid-mw7aashj>getDocFromServer()</a> </li><li data-api-symbol="getdocs()" data-astro-cid-mw7aashj> <a href="#getdocs" data-astro-cid-mw7aashj>getDocs()</a> </li><li data-api-symbol="getdocsfromcache()" data-astro-cid-mw7aashj> <a href="#getdocsfromcache" data-astro-cid-mw7aashj>getDocsFromCache()</a> </li><li data-api-symbol="getdocsfromserver()" data-astro-cid-mw7aashj> <a href="#getdocsfromserver" data-astro-cid-mw7aashj>getDocsFromServer()</a> </li><li data-api-symbol="getfirestore()" data-astro-cid-mw7aashj> <a href="#getfirestore" data-astro-cid-mw7aashj>getFirestore()</a> </li><li data-api-symbol="increment()" data-astro-cid-mw7aashj> <a href="#increment-1" data-astro-cid-mw7aashj>increment()</a> </li><li data-api-symbol="initializefirestore()" data-astro-cid-mw7aashj> <a href="#initializefirestore" data-astro-cid-mw7aashj>initializeFirestore()</a> </li><li data-api-symbol="limit()" data-astro-cid-mw7aashj> <a href="#limit" data-astro-cid-mw7aashj>limit()</a> </li><li data-api-symbol="limittolast()" data-astro-cid-mw7aashj> <a href="#limittolast" data-astro-cid-mw7aashj>limitToLast()</a> </li><li data-api-symbol="memoryeagergarbagecollector()" data-astro-cid-mw7aashj> <a href="#memoryeagergarbagecollector" data-astro-cid-mw7aashj>memoryEagerGarbageCollector()</a> </li><li data-api-symbol="memorylocalcache()" data-astro-cid-mw7aashj> <a href="#memorylocalcache" data-astro-cid-mw7aashj>memoryLocalCache()</a> </li><li data-api-symbol="memorylrugarbagecollector()" data-astro-cid-mw7aashj> <a href="#memorylrugarbagecollector" data-astro-cid-mw7aashj>memoryLruGarbageCollector()</a> </li><li data-api-symbol="onsnapshot()" data-astro-cid-mw7aashj> <a href="#onsnapshot" data-astro-cid-mw7aashj>onSnapshot()</a> </li><li data-api-symbol="onsnapshotsinsync()" data-astro-cid-mw7aashj> <a href="#onsnapshotsinsync" data-astro-cid-mw7aashj>onSnapshotsInSync()</a> </li><li data-api-symbol="or()" data-astro-cid-mw7aashj> <a href="#or" data-astro-cid-mw7aashj>or()</a> </li><li data-api-symbol="orderby()" data-astro-cid-mw7aashj> <a href="#orderby" data-astro-cid-mw7aashj>orderBy()</a> </li><li data-api-symbol="persistentlocalcache()" data-astro-cid-mw7aashj> <a href="#persistentlocalcache" data-astro-cid-mw7aashj>persistentLocalCache()</a> </li><li data-api-symbol="persistentmultipletabmanager()" data-astro-cid-mw7aashj> <a href="#persistentmultipletabmanager" data-astro-cid-mw7aashj>persistentMultipleTabManager()</a> </li><li data-api-symbol="persistentsingletabmanager()" data-astro-cid-mw7aashj> <a href="#persistentsingletabmanager" data-astro-cid-mw7aashj>persistentSingleTabManager()</a> </li><li data-api-symbol="query()" data-astro-cid-mw7aashj> <a href="#query-1" data-astro-cid-mw7aashj>query()</a> </li><li data-api-symbol="queryequal()" data-astro-cid-mw7aashj> <a href="#queryequal" data-astro-cid-mw7aashj>queryEqual()</a> </li><li data-api-symbol="refequal()" data-astro-cid-mw7aashj> <a href="#refequal" data-astro-cid-mw7aashj>refEqual()</a> </li><li data-api-symbol="runtransaction()" data-astro-cid-mw7aashj> <a href="#runtransaction" data-astro-cid-mw7aashj>runTransaction()</a> </li><li data-api-symbol="servertimestamp()" data-astro-cid-mw7aashj> <a href="#servertimestamp-1" data-astro-cid-mw7aashj>serverTimestamp()</a> </li><li data-api-symbol="setdoc()" data-astro-cid-mw7aashj> <a href="#setdoc" data-astro-cid-mw7aashj>setDoc()</a> </li><li data-api-symbol="setloglevel()" data-astro-cid-mw7aashj> <a href="#setloglevel" data-astro-cid-mw7aashj>setLogLevel()</a> </li><li data-api-symbol="snapshotequal()" data-astro-cid-mw7aashj> <a href="#snapshotequal" data-astro-cid-mw7aashj>snapshotEqual()</a> </li><li data-api-symbol="startafter()" data-astro-cid-mw7aashj> <a href="#startafter" data-astro-cid-mw7aashj>startAfter()</a> </li><li data-api-symbol="startat()" data-astro-cid-mw7aashj> <a href="#startat" data-astro-cid-mw7aashj>startAt()</a> </li><li data-api-symbol="sum()" data-astro-cid-mw7aashj> <a href="#sum" data-astro-cid-mw7aashj>sum()</a> </li><li data-api-symbol="terminate()" data-astro-cid-mw7aashj> <a href="#terminate" data-astro-cid-mw7aashj>terminate()</a> </li><li data-api-symbol="updatedoc()" data-astro-cid-mw7aashj> <a href="#updatedoc" data-astro-cid-mw7aashj>updateDoc()</a> </li><li data-api-symbol="vector()" data-astro-cid-mw7aashj> <a href="#vector" data-astro-cid-mw7aashj>vector()</a> </li><li data-api-symbol="waitforpendingwrites()" data-astro-cid-mw7aashj> <a href="#waitforpendingwrites" data-astro-cid-mw7aashj>waitForPendingWrites()</a> </li><li data-api-symbol="where()" data-astro-cid-mw7aashj> <a href="#where" data-astro-cid-mw7aashj>where()</a> </li><li data-api-symbol="withconverter()" data-astro-cid-mw7aashj> <a href="#withconverter" data-astro-cid-mw7aashj>withConverter()</a> </li><li data-api-symbol="writebatch()" data-astro-cid-mw7aashj> <a href="#writebatch-1" data-astro-cid-mw7aashj>writeBatch()</a> </li> </ul> </section> <p class="api-symbol-empty" data-api-symbol-empty hidden data-astro-cid-mw7aashj>No matching symbols</p> </div> </aside> </div> <script type="module">const a=document.querySelector("[data-api-symbol-filter]"),d=[...document.querySelectorAll("[data-api-symbol-group]")],n=document.querySelector("[data-api-symbol-empty]");a?.addEventListener("input",()=>{const t=a.value.trim().toLowerCase();let o=0;for(const i of d){let e=0;i.querySelectorAll("[data-api-symbol]").forEach(l=>{const r=!t||(l.dataset.apiSymbol??"").includes(t);l.hidden=!r,r&&e++}),i.hidden=e===0,o+=e}n&&(n.hidden=o>0)});</script> <script type="module">const s=new Map;document.querySelectorAll('.doc-toc a[href^="#"]').forEach(t=>s.set(decodeURIComponent(t.hash.slice(1)),t));if(s.size>0){const t=new Set,n=()=>{let o=null;for(const e of s.keys())if(t.has(e)){o=e;break}s.forEach((e,c)=>e.classList.toggle("active",c===o))},r=new IntersectionObserver(o=>{for(const e of o)e.isIntersecting?t.add(e.target.id):t.delete(e.target.id);n()},{rootMargin:"-72px 0px -60% 0px"});s.forEach((o,e)=>{const c=document.getElementById(e);c&&r.observe(c)})}</script> <script type="module">document.querySelector('.studio__nav [aria-current="page"]')?.scrollIntoView({block:"nearest",inline:"center"});</script> </body></html>
|