pyric-tools 0.1.0-alpha.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +125 -0
- package/dist/auth/domains/handler.d.ts +6 -0
- package/dist/auth/domains/handler.d.ts.map +1 -0
- package/dist/auth/domains/handler.js +75 -0
- package/dist/auth/domains/handler.js.map +1 -0
- package/dist/auth/domains/spec.d.ts +25 -0
- package/dist/auth/domains/spec.d.ts.map +1 -0
- package/dist/auth/domains/spec.js +6 -0
- package/dist/auth/domains/spec.js.map +1 -0
- package/dist/auth/index.d.ts +34 -0
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/auth/index.js +30 -0
- package/dist/auth/index.js.map +1 -0
- package/dist/auth/mapper.d.ts +5 -0
- package/dist/auth/mapper.d.ts.map +1 -0
- package/dist/auth/mapper.js +49 -0
- package/dist/auth/mapper.js.map +1 -0
- package/dist/auth/provider/handler.d.ts +9 -0
- package/dist/auth/provider/handler.d.ts.map +1 -0
- package/dist/auth/provider/handler.js +128 -0
- package/dist/auth/provider/handler.js.map +1 -0
- package/dist/auth/provider/spec.d.ts +29 -0
- package/dist/auth/provider/spec.d.ts.map +1 -0
- package/dist/auth/provider/spec.js +12 -0
- package/dist/auth/provider/spec.js.map +1 -0
- package/dist/auth/resolver.d.ts +16 -0
- package/dist/auth/resolver.d.ts.map +1 -0
- package/dist/auth/resolver.js +32 -0
- package/dist/auth/resolver.js.map +1 -0
- package/dist/auth/tools.d.ts +23 -0
- package/dist/auth/tools.d.ts.map +1 -0
- package/dist/auth/tools.js +71 -0
- package/dist/auth/tools.js.map +1 -0
- package/dist/auth/types.d.ts +37 -0
- package/dist/auth/types.d.ts.map +1 -0
- package/dist/auth/types.js +17 -0
- package/dist/auth/types.js.map +1 -0
- package/dist/bridge/client/bridge.d.ts +133 -0
- package/dist/bridge/client/bridge.d.ts.map +1 -0
- package/dist/bridge/client/bridge.js +430 -0
- package/dist/bridge/client/bridge.js.map +1 -0
- package/dist/bridge/client/dispatch.d.ts +49 -0
- package/dist/bridge/client/dispatch.d.ts.map +1 -0
- package/dist/bridge/client/dispatch.js +103 -0
- package/dist/bridge/client/dispatch.js.map +1 -0
- package/dist/bridge/client.d.ts +24 -0
- package/dist/bridge/client.d.ts.map +1 -0
- package/dist/bridge/client.js +26 -0
- package/dist/bridge/client.js.map +1 -0
- package/dist/bridge/protocol.d.ts +228 -0
- package/dist/bridge/protocol.d.ts.map +1 -0
- package/dist/bridge/protocol.js +131 -0
- package/dist/bridge/protocol.js.map +1 -0
- package/dist/bridge/server/audit.d.ts +19 -0
- package/dist/bridge/server/audit.d.ts.map +1 -0
- package/dist/bridge/server/audit.js +46 -0
- package/dist/bridge/server/audit.js.map +1 -0
- package/dist/bridge/server/bridge.d.ts +165 -0
- package/dist/bridge/server/bridge.d.ts.map +1 -0
- package/dist/bridge/server/bridge.js +410 -0
- package/dist/bridge/server/bridge.js.map +1 -0
- package/dist/bridge/server/confirm-policy.d.ts +56 -0
- package/dist/bridge/server/confirm-policy.d.ts.map +1 -0
- package/dist/bridge/server/confirm-policy.js +107 -0
- package/dist/bridge/server/confirm-policy.js.map +1 -0
- package/dist/bridge/server/confirm-prompt.d.ts +73 -0
- package/dist/bridge/server/confirm-prompt.d.ts.map +1 -0
- package/dist/bridge/server/confirm-prompt.js +199 -0
- package/dist/bridge/server/confirm-prompt.js.map +1 -0
- package/dist/bridge/server/confirm.d.ts +92 -0
- package/dist/bridge/server/confirm.d.ts.map +1 -0
- package/dist/bridge/server/confirm.js +210 -0
- package/dist/bridge/server/confirm.js.map +1 -0
- package/dist/bridge/server/headless.d.ts +36 -0
- package/dist/bridge/server/headless.d.ts.map +1 -0
- package/dist/bridge/server/headless.js +132 -0
- package/dist/bridge/server/headless.js.map +1 -0
- package/dist/bridge/server/json-schema-to-zod.d.ts +37 -0
- package/dist/bridge/server/json-schema-to-zod.d.ts.map +1 -0
- package/dist/bridge/server/json-schema-to-zod.js +93 -0
- package/dist/bridge/server/json-schema-to-zod.js.map +1 -0
- package/dist/bridge/server/local-bridge.d.ts +33 -0
- package/dist/bridge/server/local-bridge.d.ts.map +1 -0
- package/dist/bridge/server/local-bridge.js +42 -0
- package/dist/bridge/server/local-bridge.js.map +1 -0
- package/dist/bridge/server/logger.d.ts +28 -0
- package/dist/bridge/server/logger.d.ts.map +1 -0
- package/dist/bridge/server/logger.js +42 -0
- package/dist/bridge/server/logger.js.map +1 -0
- package/dist/bridge/server/mcp.d.ts +33 -0
- package/dist/bridge/server/mcp.d.ts.map +1 -0
- package/dist/bridge/server/mcp.js +159 -0
- package/dist/bridge/server/mcp.js.map +1 -0
- package/dist/bridge/server/peer.d.ts +39 -0
- package/dist/bridge/server/peer.d.ts.map +1 -0
- package/dist/bridge/server/peer.js +189 -0
- package/dist/bridge/server/peer.js.map +1 -0
- package/dist/bridge/server/standalone.d.ts +102 -0
- package/dist/bridge/server/standalone.d.ts.map +1 -0
- package/dist/bridge/server/standalone.js +352 -0
- package/dist/bridge/server/standalone.js.map +1 -0
- package/dist/bridge/server/tool-metadata.d.ts +38 -0
- package/dist/bridge/server/tool-metadata.d.ts.map +1 -0
- package/dist/bridge/server/tool-metadata.js +79 -0
- package/dist/bridge/server/tool-metadata.js.map +1 -0
- package/dist/bridge/server.d.ts +25 -0
- package/dist/bridge/server.d.ts.map +1 -0
- package/dist/bridge/server.js +23 -0
- package/dist/bridge/server.js.map +1 -0
- package/dist/cli/auth.d.ts +37 -0
- package/dist/cli/auth.d.ts.map +1 -0
- package/dist/cli/auth.js +119 -0
- package/dist/cli/auth.js.map +1 -0
- package/dist/cli/database-rules.d.ts +25 -0
- package/dist/cli/database-rules.d.ts.map +1 -0
- package/dist/cli/database-rules.js +215 -0
- package/dist/cli/database-rules.js.map +1 -0
- package/dist/cli/deploy-progress.d.ts +35 -0
- package/dist/cli/deploy-progress.d.ts.map +1 -0
- package/dist/cli/deploy-progress.js +69 -0
- package/dist/cli/deploy-progress.js.map +1 -0
- package/dist/cli/deploy.d.ts +81 -0
- package/dist/cli/deploy.d.ts.map +1 -0
- package/dist/cli/deploy.js +413 -0
- package/dist/cli/deploy.js.map +1 -0
- package/dist/cli/dev-runner.d.ts +112 -0
- package/dist/cli/dev-runner.d.ts.map +1 -0
- package/dist/cli/dev-runner.js +227 -0
- package/dist/cli/dev-runner.js.map +1 -0
- package/dist/cli/discover.d.ts +47 -0
- package/dist/cli/discover.d.ts.map +1 -0
- package/dist/cli/discover.js +77 -0
- package/dist/cli/discover.js.map +1 -0
- package/dist/cli/firebase-json.d.ts +66 -0
- package/dist/cli/firebase-json.d.ts.map +1 -0
- package/dist/cli/firebase-json.js +60 -0
- package/dist/cli/firebase-json.js.map +1 -0
- package/dist/cli/index.d.ts +55 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +500 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/init-templates.d.ts +37 -0
- package/dist/cli/init-templates.d.ts.map +1 -0
- package/dist/cli/init-templates.js +638 -0
- package/dist/cli/init-templates.js.map +1 -0
- package/dist/cli/init.d.ts +124 -0
- package/dist/cli/init.d.ts.map +1 -0
- package/dist/cli/init.js +423 -0
- package/dist/cli/init.js.map +1 -0
- package/dist/cli/login.d.ts +18 -0
- package/dist/cli/login.d.ts.map +1 -0
- package/dist/cli/login.js +59 -0
- package/dist/cli/login.js.map +1 -0
- package/dist/cli/mcp-proxy.d.ts +10 -0
- package/dist/cli/mcp-proxy.d.ts.map +1 -0
- package/dist/cli/mcp-proxy.js +126 -0
- package/dist/cli/mcp-proxy.js.map +1 -0
- package/dist/cli/parse-args.d.ts +20 -0
- package/dist/cli/parse-args.d.ts.map +1 -0
- package/dist/cli/parse-args.js +69 -0
- package/dist/cli/parse-args.js.map +1 -0
- package/dist/cli/rules.d.ts +40 -0
- package/dist/cli/rules.d.ts.map +1 -0
- package/dist/cli/rules.js +162 -0
- package/dist/cli/rules.js.map +1 -0
- package/dist/cli/scope.d.ts +38 -0
- package/dist/cli/scope.d.ts.map +1 -0
- package/dist/cli/scope.js +63 -0
- package/dist/cli/scope.js.map +1 -0
- package/dist/cli/serve.d.ts +122 -0
- package/dist/cli/serve.d.ts.map +1 -0
- package/dist/cli/serve.js +685 -0
- package/dist/cli/serve.js.map +1 -0
- package/dist/cli/snapshot.d.ts +22 -0
- package/dist/cli/snapshot.d.ts.map +1 -0
- package/dist/cli/snapshot.js +139 -0
- package/dist/cli/snapshot.js.map +1 -0
- package/dist/cli/verify.d.ts +23 -0
- package/dist/cli/verify.d.ts.map +1 -0
- package/dist/cli/verify.js +349 -0
- package/dist/cli/verify.js.map +1 -0
- package/dist/credentials/core/authorize.d.ts +22 -0
- package/dist/credentials/core/authorize.d.ts.map +1 -0
- package/dist/credentials/core/authorize.js +39 -0
- package/dist/credentials/core/authorize.js.map +1 -0
- package/dist/credentials/core/client.d.ts +14 -0
- package/dist/credentials/core/client.d.ts.map +1 -0
- package/dist/credentials/core/client.js +13 -0
- package/dist/credentials/core/client.js.map +1 -0
- package/dist/credentials/core/exchange.d.ts +24 -0
- package/dist/credentials/core/exchange.d.ts.map +1 -0
- package/dist/credentials/core/exchange.js +46 -0
- package/dist/credentials/core/exchange.js.map +1 -0
- package/dist/credentials/core/flow.d.ts +15 -0
- package/dist/credentials/core/flow.d.ts.map +1 -0
- package/dist/credentials/core/flow.js +40 -0
- package/dist/credentials/core/flow.js.map +1 -0
- package/dist/credentials/core/from-user-credential.d.ts +3 -0
- package/dist/credentials/core/from-user-credential.d.ts.map +1 -0
- package/dist/credentials/core/from-user-credential.js +19 -0
- package/dist/credentials/core/from-user-credential.js.map +1 -0
- package/dist/credentials/core/scopes.d.ts +26 -0
- package/dist/credentials/core/scopes.d.ts.map +1 -0
- package/dist/credentials/core/scopes.js +32 -0
- package/dist/credentials/core/scopes.js.map +1 -0
- package/dist/credentials/core/types.d.ts +72 -0
- package/dist/credentials/core/types.d.ts.map +1 -0
- package/dist/credentials/core/types.js +2 -0
- package/dist/credentials/core/types.js.map +1 -0
- package/dist/credentials/index.d.ts +14 -0
- package/dist/credentials/index.d.ts.map +1 -0
- package/dist/credentials/index.js +13 -0
- package/dist/credentials/index.js.map +1 -0
- package/dist/credentials/node/ensure-scope.d.ts +29 -0
- package/dist/credentials/node/ensure-scope.d.ts.map +1 -0
- package/dist/credentials/node/ensure-scope.js +42 -0
- package/dist/credentials/node/ensure-scope.js.map +1 -0
- package/dist/credentials/node/file-store.d.ts +4 -0
- package/dist/credentials/node/file-store.d.ts.map +1 -0
- package/dist/credentials/node/file-store.js +52 -0
- package/dist/credentials/node/file-store.js.map +1 -0
- package/dist/credentials/node/from-adc.d.ts +10 -0
- package/dist/credentials/node/from-adc.d.ts.map +1 -0
- package/dist/credentials/node/from-adc.js +60 -0
- package/dist/credentials/node/from-adc.js.map +1 -0
- package/dist/credentials/node/index.d.ts +10 -0
- package/dist/credentials/node/index.d.ts.map +1 -0
- package/dist/credentials/node/index.js +10 -0
- package/dist/credentials/node/index.js.map +1 -0
- package/dist/credentials/node/loopback-authorizer.d.ts +12 -0
- package/dist/credentials/node/loopback-authorizer.d.ts.map +1 -0
- package/dist/credentials/node/loopback-authorizer.js +61 -0
- package/dist/credentials/node/loopback-authorizer.js.map +1 -0
- package/dist/credentials/node/resolve-local-token.d.ts +20 -0
- package/dist/credentials/node/resolve-local-token.d.ts.map +1 -0
- package/dist/credentials/node/resolve-local-token.js +97 -0
- package/dist/credentials/node/resolve-local-token.js.map +1 -0
- package/dist/credentials/server/bff.d.ts +44 -0
- package/dist/credentials/server/bff.d.ts.map +1 -0
- package/dist/credentials/server/bff.js +43 -0
- package/dist/credentials/server/bff.js.map +1 -0
- package/dist/deploy/api-enablement.d.ts +45 -0
- package/dist/deploy/api-enablement.d.ts.map +1 -0
- package/dist/deploy/api-enablement.js +125 -0
- package/dist/deploy/api-enablement.js.map +1 -0
- package/dist/deploy/firestore/databases.d.ts +41 -0
- package/dist/deploy/firestore/databases.d.ts.map +1 -0
- package/dist/deploy/firestore/databases.js +63 -0
- package/dist/deploy/firestore/databases.js.map +1 -0
- package/dist/deploy/firestore/indexes.d.ts +120 -0
- package/dist/deploy/firestore/indexes.d.ts.map +1 -0
- package/dist/deploy/firestore/indexes.js +243 -0
- package/dist/deploy/firestore/indexes.js.map +1 -0
- package/dist/deploy/firestore/recipes.d.ts +21 -0
- package/dist/deploy/firestore/recipes.d.ts.map +1 -0
- package/dist/deploy/firestore/recipes.js +34 -0
- package/dist/deploy/firestore/recipes.js.map +1 -0
- package/dist/deploy/firestore/rules.d.ts +76 -0
- package/dist/deploy/firestore/rules.d.ts.map +1 -0
- package/dist/deploy/firestore/rules.js +180 -0
- package/dist/deploy/firestore/rules.js.map +1 -0
- package/dist/deploy/from-admin-app.d.ts +20 -0
- package/dist/deploy/from-admin-app.d.ts.map +1 -0
- package/dist/deploy/from-admin-app.js +18 -0
- package/dist/deploy/from-admin-app.js.map +1 -0
- package/dist/deploy/from-service-account.d.ts +29 -0
- package/dist/deploy/from-service-account.d.ts.map +1 -0
- package/dist/deploy/from-service-account.js +115 -0
- package/dist/deploy/from-service-account.js.map +1 -0
- package/dist/deploy/functions/bundle.d.ts +37 -0
- package/dist/deploy/functions/bundle.d.ts.map +1 -0
- package/dist/deploy/functions/bundle.js +181 -0
- package/dist/deploy/functions/bundle.js.map +1 -0
- package/dist/deploy/functions/core.d.ts +18 -0
- package/dist/deploy/functions/core.d.ts.map +1 -0
- package/dist/deploy/functions/core.js +211 -0
- package/dist/deploy/functions/core.js.map +1 -0
- package/dist/deploy/functions/iam.d.ts +17 -0
- package/dist/deploy/functions/iam.d.ts.map +1 -0
- package/dist/deploy/functions/iam.js +40 -0
- package/dist/deploy/functions/iam.js.map +1 -0
- package/dist/deploy/functions/operation.d.ts +39 -0
- package/dist/deploy/functions/operation.d.ts.map +1 -0
- package/dist/deploy/functions/operation.js +37 -0
- package/dist/deploy/functions/operation.js.map +1 -0
- package/dist/deploy/functions/spec.d.ts +69 -0
- package/dist/deploy/functions/spec.d.ts.map +1 -0
- package/dist/deploy/functions/spec.js +7 -0
- package/dist/deploy/functions/spec.js.map +1 -0
- package/dist/deploy/functions/types.d.ts +50 -0
- package/dist/deploy/functions/types.d.ts.map +1 -0
- package/dist/deploy/functions/types.js +3 -0
- package/dist/deploy/functions/types.js.map +1 -0
- package/dist/deploy/hosting/channels.d.ts +93 -0
- package/dist/deploy/hosting/channels.d.ts.map +1 -0
- package/dist/deploy/hosting/channels.js +134 -0
- package/dist/deploy/hosting/channels.js.map +1 -0
- package/dist/deploy/hosting/config.d.ts +28 -0
- package/dist/deploy/hosting/config.d.ts.map +1 -0
- package/dist/deploy/hosting/config.js +261 -0
- package/dist/deploy/hosting/config.js.map +1 -0
- package/dist/deploy/hosting/core.d.ts +38 -0
- package/dist/deploy/hosting/core.d.ts.map +1 -0
- package/dist/deploy/hosting/core.js +311 -0
- package/dist/deploy/hosting/core.js.map +1 -0
- package/dist/deploy/hosting/gzip.d.ts +11 -0
- package/dist/deploy/hosting/gzip.d.ts.map +1 -0
- package/dist/deploy/hosting/gzip.js +20 -0
- package/dist/deploy/hosting/gzip.js.map +1 -0
- package/dist/deploy/hosting/hash.d.ts +6 -0
- package/dist/deploy/hosting/hash.d.ts.map +1 -0
- package/dist/deploy/hosting/hash.js +17 -0
- package/dist/deploy/hosting/hash.js.map +1 -0
- package/dist/deploy/hosting/sites.d.ts +77 -0
- package/dist/deploy/hosting/sites.d.ts.map +1 -0
- package/dist/deploy/hosting/sites.js +73 -0
- package/dist/deploy/hosting/sites.js.map +1 -0
- package/dist/deploy/hosting/spec.d.ts +140 -0
- package/dist/deploy/hosting/spec.d.ts.map +1 -0
- package/dist/deploy/hosting/spec.js +8 -0
- package/dist/deploy/hosting/spec.js.map +1 -0
- package/dist/deploy/hosting/types.d.ts +71 -0
- package/dist/deploy/hosting/types.d.ts.map +1 -0
- package/dist/deploy/hosting/types.js +3 -0
- package/dist/deploy/hosting/types.js.map +1 -0
- package/dist/deploy/hosting/walk.d.ts +31 -0
- package/dist/deploy/hosting/walk.d.ts.map +1 -0
- package/dist/deploy/hosting/walk.js +167 -0
- package/dist/deploy/hosting/walk.js.map +1 -0
- package/dist/deploy/index.d.ts +51 -0
- package/dist/deploy/index.d.ts.map +1 -0
- package/dist/deploy/index.js +50 -0
- package/dist/deploy/index.js.map +1 -0
- package/dist/deploy/memoize-ttl.d.ts +58 -0
- package/dist/deploy/memoize-ttl.d.ts.map +1 -0
- package/dist/deploy/memoize-ttl.js +88 -0
- package/dist/deploy/memoize-ttl.js.map +1 -0
- package/dist/deploy/namespaces.d.ts +119 -0
- package/dist/deploy/namespaces.d.ts.map +1 -0
- package/dist/deploy/namespaces.js +192 -0
- package/dist/deploy/namespaces.js.map +1 -0
- package/dist/deploy/preflight.d.ts +119 -0
- package/dist/deploy/preflight.d.ts.map +1 -0
- package/dist/deploy/preflight.js +440 -0
- package/dist/deploy/preflight.js.map +1 -0
- package/dist/deploy/provider.d.ts +130 -0
- package/dist/deploy/provider.d.ts.map +1 -0
- package/dist/deploy/provider.js +21 -0
- package/dist/deploy/provider.js.map +1 -0
- package/dist/deploy/providers/database.d.ts +8 -0
- package/dist/deploy/providers/database.d.ts.map +1 -0
- package/dist/deploy/providers/database.js +37 -0
- package/dist/deploy/providers/database.js.map +1 -0
- package/dist/deploy/providers/firestore.d.ts +11 -0
- package/dist/deploy/providers/firestore.d.ts.map +1 -0
- package/dist/deploy/providers/firestore.js +43 -0
- package/dist/deploy/providers/firestore.js.map +1 -0
- package/dist/deploy/providers/functions.d.ts +9 -0
- package/dist/deploy/providers/functions.d.ts.map +1 -0
- package/dist/deploy/providers/functions.js +49 -0
- package/dist/deploy/providers/functions.js.map +1 -0
- package/dist/deploy/providers/hosting.d.ts +13 -0
- package/dist/deploy/providers/hosting.d.ts.map +1 -0
- package/dist/deploy/providers/hosting.js +149 -0
- package/dist/deploy/providers/hosting.js.map +1 -0
- package/dist/deploy/providers/storage.d.ts +9 -0
- package/dist/deploy/providers/storage.d.ts.map +1 -0
- package/dist/deploy/providers/storage.js +46 -0
- package/dist/deploy/providers/storage.js.map +1 -0
- package/dist/deploy/registry.d.ts +17 -0
- package/dist/deploy/registry.d.ts.map +1 -0
- package/dist/deploy/registry.js +15 -0
- package/dist/deploy/registry.js.map +1 -0
- package/dist/deploy/rtdb/rules.d.ts +21 -0
- package/dist/deploy/rtdb/rules.d.ts.map +1 -0
- package/dist/deploy/rtdb/rules.js +104 -0
- package/dist/deploy/rtdb/rules.js.map +1 -0
- package/dist/deploy/scope.d.ts +81 -0
- package/dist/deploy/scope.d.ts.map +1 -0
- package/dist/deploy/scope.js +44 -0
- package/dist/deploy/scope.js.map +1 -0
- package/dist/deploy/tools.d.ts +55 -0
- package/dist/deploy/tools.d.ts.map +1 -0
- package/dist/deploy/tools.js +329 -0
- package/dist/deploy/tools.js.map +1 -0
- package/dist/deploy/with-resolved-scope.d.ts +31 -0
- package/dist/deploy/with-resolved-scope.d.ts.map +1 -0
- package/dist/deploy/with-resolved-scope.js +73 -0
- package/dist/deploy/with-resolved-scope.js.map +1 -0
- package/dist/discover/concurrency.d.ts +42 -0
- package/dist/discover/concurrency.d.ts.map +1 -0
- package/dist/discover/concurrency.js +113 -0
- package/dist/discover/concurrency.js.map +1 -0
- package/dist/discover/crawler-adapter.d.ts +49 -0
- package/dist/discover/crawler-adapter.d.ts.map +1 -0
- package/dist/discover/crawler-adapter.js +92 -0
- package/dist/discover/crawler-adapter.js.map +1 -0
- package/dist/discover/crawler.d.ts +333 -0
- package/dist/discover/crawler.d.ts.map +1 -0
- package/dist/discover/crawler.js +764 -0
- package/dist/discover/crawler.js.map +1 -0
- package/dist/discover/findCollectionGroup.d.ts +80 -0
- package/dist/discover/findCollectionGroup.d.ts.map +1 -0
- package/dist/discover/findCollectionGroup.js +81 -0
- package/dist/discover/findCollectionGroup.js.map +1 -0
- package/dist/discover/index.d.ts +15 -0
- package/dist/discover/index.d.ts.map +1 -0
- package/dist/discover/index.js +24 -0
- package/dist/discover/index.js.map +1 -0
- package/dist/discover/merge.d.ts +108 -0
- package/dist/discover/merge.d.ts.map +1 -0
- package/dist/discover/merge.js +394 -0
- package/dist/discover/merge.js.map +1 -0
- package/dist/discover/rest-crawler-firestore.d.ts +51 -0
- package/dist/discover/rest-crawler-firestore.d.ts.map +1 -0
- package/dist/discover/rest-crawler-firestore.js +154 -0
- package/dist/discover/rest-crawler-firestore.js.map +1 -0
- package/dist/discover/session.d.ts +116 -0
- package/dist/discover/session.d.ts.map +1 -0
- package/dist/discover/session.js +331 -0
- package/dist/discover/session.js.map +1 -0
- package/dist/discover/tools.d.ts +59 -0
- package/dist/discover/tools.d.ts.map +1 -0
- package/dist/discover/tools.js +115 -0
- package/dist/discover/tools.js.map +1 -0
- package/dist/discover/types.d.ts +191 -0
- package/dist/discover/types.d.ts.map +1 -0
- package/dist/discover/types.js +12 -0
- package/dist/discover/types.js.map +1 -0
- package/dist/discover/wire.d.ts +81 -0
- package/dist/discover/wire.d.ts.map +1 -0
- package/dist/discover/wire.js +308 -0
- package/dist/discover/wire.js.map +1 -0
- package/dist/pkg-version.d.ts +2 -0
- package/dist/pkg-version.d.ts.map +1 -0
- package/dist/pkg-version.js +47 -0
- package/dist/pkg-version.js.map +1 -0
- package/dist/register/esm-exports.d.ts +26 -0
- package/dist/register/esm-exports.d.ts.map +1 -0
- package/dist/register/esm-exports.js +61 -0
- package/dist/register/esm-exports.js.map +1 -0
- package/dist/register/exempt.d.ts +11 -0
- package/dist/register/exempt.d.ts.map +1 -0
- package/dist/register/exempt.js +74 -0
- package/dist/register/exempt.js.map +1 -0
- package/dist/register/hooks.d.ts +13 -0
- package/dist/register/hooks.d.ts.map +1 -0
- package/dist/register/hooks.js +15 -0
- package/dist/register/hooks.js.map +1 -0
- package/dist/register/index.d.ts +5 -0
- package/dist/register/index.d.ts.map +1 -0
- package/dist/register/index.js +126 -0
- package/dist/register/index.js.map +1 -0
- package/dist/register/mapping.d.ts +17 -0
- package/dist/register/mapping.d.ts.map +1 -0
- package/dist/register/mapping.js +31 -0
- package/dist/register/mapping.js.map +1 -0
- package/dist/registry/admin-deps.d.ts +17 -0
- package/dist/registry/admin-deps.d.ts.map +1 -0
- package/dist/registry/admin-deps.js +68 -0
- package/dist/registry/admin-deps.js.map +1 -0
- package/dist/registry/compose.d.ts +68 -0
- package/dist/registry/compose.d.ts.map +1 -0
- package/dist/registry/compose.js +113 -0
- package/dist/registry/compose.js.map +1 -0
- package/dist/registry/index.d.ts +11 -0
- package/dist/registry/index.d.ts.map +1 -0
- package/dist/registry/index.js +11 -0
- package/dist/registry/index.js.map +1 -0
- package/dist/remote/index.d.ts +232 -0
- package/dist/remote/index.d.ts.map +1 -0
- package/dist/remote/index.js +719 -0
- package/dist/remote/index.js.map +1 -0
- package/dist/rtdb/rules-json.d.ts +8 -0
- package/dist/rtdb/rules-json.d.ts.map +1 -0
- package/dist/rtdb/rules-json.js +17 -0
- package/dist/rtdb/rules-json.js.map +1 -0
- package/dist/serve/bridge-mount.d.ts +38 -0
- package/dist/serve/bridge-mount.d.ts.map +1 -0
- package/dist/serve/bridge-mount.js +162 -0
- package/dist/serve/bridge-mount.js.map +1 -0
- package/dist/serve/bundler.d.ts +134 -0
- package/dist/serve/bundler.d.ts.map +1 -0
- package/dist/serve/bundler.js +452 -0
- package/dist/serve/bundler.js.map +1 -0
- package/dist/serve/capture-store.d.ts +27 -0
- package/dist/serve/capture-store.d.ts.map +1 -0
- package/dist/serve/capture-store.js +47 -0
- package/dist/serve/capture-store.js.map +1 -0
- package/dist/serve/discovery.d.ts +71 -0
- package/dist/serve/discovery.d.ts.map +1 -0
- package/dist/serve/discovery.js +158 -0
- package/dist/serve/discovery.js.map +1 -0
- package/dist/serve/docs-ui/_astro/_slug_.BsN3bPok.css +1 -0
- package/dist/serve/docs-ui/docs/_rhythm/index.html +99 -0
- package/dist/serve/docs-ui/docs/_rhythm.md +101 -0
- package/dist/serve/docs-ui/docs/index.html +1 -0
- package/dist/serve/docs-ui/docs/index.json +9914 -0
- package/dist/serve/docs-ui/docs/pyric-admin-firestore/index.html +38 -0
- package/dist/serve/docs-ui/docs/pyric-admin-firestore-explanation-error-translation/index.html +57 -0
- package/dist/serve/docs-ui/docs/pyric-admin-firestore-explanation-error-translation.md +87 -0
- package/dist/serve/docs-ui/docs/pyric-admin-firestore-explanation-per-call-delegate/index.html +58 -0
- package/dist/serve/docs-ui/docs/pyric-admin-firestore-explanation-per-call-delegate.md +86 -0
- package/dist/serve/docs-ui/docs/pyric-admin-firestore-explanation-why-mirror-admin-shape/index.html +59 -0
- package/dist/serve/docs-ui/docs/pyric-admin-firestore-explanation-why-mirror-admin-shape.md +82 -0
- package/dist/serve/docs-ui/docs/pyric-admin-firestore-how-to-run-a-transaction/index.html +53 -0
- package/dist/serve/docs-ui/docs/pyric-admin-firestore-how-to-run-a-transaction.md +70 -0
- package/dist/serve/docs-ui/docs/pyric-admin-firestore-how-to-seed-and-set-rules/index.html +62 -0
- package/dist/serve/docs-ui/docs/pyric-admin-firestore-how-to-seed-and-set-rules.md +86 -0
- package/dist/serve/docs-ui/docs/pyric-admin-firestore-how-to-translate-denials/index.html +80 -0
- package/dist/serve/docs-ui/docs/pyric-admin-firestore-how-to-translate-denials.md +92 -0
- package/dist/serve/docs-ui/docs/pyric-admin-firestore-how-to-use-onsnapshot/index.html +57 -0
- package/dist/serve/docs-ui/docs/pyric-admin-firestore-how-to-use-onsnapshot.md +78 -0
- package/dist/serve/docs-ui/docs/pyric-admin-firestore-how-to-write-a-batch/index.html +50 -0
- package/dist/serve/docs-ui/docs/pyric-admin-firestore-how-to-write-a-batch.md +67 -0
- package/dist/serve/docs-ui/docs/pyric-admin-firestore-reference-api/index.html +53 -0
- package/dist/serve/docs-ui/docs/pyric-admin-firestore-reference-api.md +73 -0
- package/dist/serve/docs-ui/docs/pyric-admin-firestore-reference-onsnapshot/index.html +68 -0
- package/dist/serve/docs-ui/docs/pyric-admin-firestore-reference-onsnapshot.md +75 -0
- package/dist/serve/docs-ui/docs/pyric-admin-firestore-reference-re-exported-types/index.html +76 -0
- package/dist/serve/docs-ui/docs/pyric-admin-firestore-reference-re-exported-types.md +95 -0
- package/dist/serve/docs-ui/docs/pyric-admin-firestore-reference-sandbox-firestore/index.html +40 -0
- package/dist/serve/docs-ui/docs/pyric-admin-firestore-reference-sandbox-firestore.md +73 -0
- package/dist/serve/docs-ui/docs/pyric-admin-firestore-tutorials-01-first-admin-session/index.html +118 -0
- package/dist/serve/docs-ui/docs/pyric-admin-firestore-tutorials-01-first-admin-session.md +146 -0
- package/dist/serve/docs-ui/docs/pyric-admin-firestore.md +49 -0
- package/dist/serve/docs-ui/docs/pyric-auth/index.html +64 -0
- package/dist/serve/docs-ui/docs/pyric-auth-compat/index.html +874 -0
- package/dist/serve/docs-ui/docs/pyric-auth-compat.md +265 -0
- package/dist/serve/docs-ui/docs/pyric-auth-reference-api/index.html +112 -0
- package/dist/serve/docs-ui/docs/pyric-auth-reference-api.md +129 -0
- package/dist/serve/docs-ui/docs/pyric-auth-reference-feature-matrix/index.html +781 -0
- package/dist/serve/docs-ui/docs/pyric-auth-reference-feature-matrix.md +198 -0
- package/dist/serve/docs-ui/docs/pyric-auth-reference-sandbox-test-driver/index.html +80 -0
- package/dist/serve/docs-ui/docs/pyric-auth-reference-sandbox-test-driver.md +107 -0
- package/dist/serve/docs-ui/docs/pyric-auth.md +84 -0
- package/dist/serve/docs-ui/docs/pyric-database/index.html +36 -0
- package/dist/serve/docs-ui/docs/pyric-database-compat/index.html +2428 -0
- package/dist/serve/docs-ui/docs/pyric-database-compat.md +850 -0
- package/dist/serve/docs-ui/docs/pyric-database-explanation-rules-authoring-and-deploy-are-separate/index.html +23 -0
- package/dist/serve/docs-ui/docs/pyric-database-explanation-rules-authoring-and-deploy-are-separate.md +29 -0
- package/dist/serve/docs-ui/docs/pyric-database-reference-rules-tooling/index.html +263 -0
- package/dist/serve/docs-ui/docs/pyric-database-reference-rules-tooling.md +288 -0
- package/dist/serve/docs-ui/docs/pyric-database-tutorials-01-author-rtdb-rules-with-constraints/index.html +116 -0
- package/dist/serve/docs-ui/docs/pyric-database-tutorials-01-author-rtdb-rules-with-constraints.md +142 -0
- package/dist/serve/docs-ui/docs/pyric-database.md +18 -0
- package/dist/serve/docs-ui/docs/pyric-firestore/index.html +54 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-compat/index.html +1345 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-compat.md +366 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-explanation-rules-tooling-is-separate/index.html +79 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-explanation-rules-tooling-is-separate.md +62 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-explanation-target-symbol-opacity/index.html +59 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-explanation-target-symbol-opacity.md +85 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-explanation-two-backends-one-surface/index.html +61 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-explanation-two-backends-one-surface.md +87 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-how-to-build-queries/index.html +105 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-how-to-build-queries.md +138 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-how-to-migrate-from-firebase-firestore/index.html +65 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-how-to-migrate-from-firebase-firestore.md +93 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-how-to-pick-a-backend/index.html +112 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-how-to-pick-a-backend.md +100 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-how-to-run-a-transaction/index.html +42 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-how-to-run-a-transaction.md +55 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-how-to-use-onsnapshot/index.html +61 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-how-to-use-onsnapshot.md +83 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-how-to-use-sandbox-ops/index.html +52 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-how-to-use-sandbox-ops.md +73 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-reference-api/index.html +132 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-reference-api.md +160 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-reference-feature-matrix/index.html +793 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-reference-feature-matrix.md +239 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-reference-getfirestore/index.html +55 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-reference-getfirestore.md +76 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-reference-query-constraints/index.html +78 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-reference-query-constraints.md +115 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-reference-sandbox-ops/index.html +53 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-reference-sandbox-ops.md +76 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-reference-tool-factories/index.html +51 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-reference-tool-factories.md +65 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-tutorials-01-write-a-sandbox-demo/index.html +127 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-tutorials-01-write-a-sandbox-demo.md +157 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-tutorials-02-swap-to-prod-backend/index.html +85 -0
- package/dist/serve/docs-ui/docs/pyric-firestore-tutorials-02-swap-to-prod-backend.md +122 -0
- package/dist/serve/docs-ui/docs/pyric-firestore.md +69 -0
- package/dist/serve/docs-ui/docs/pyric-rules/index.html +93 -0
- package/dist/serve/docs-ui/docs/pyric-rules-explanation-agent-failure-modes/index.html +50 -0
- package/dist/serve/docs-ui/docs/pyric-rules-explanation-agent-failure-modes.md +74 -0
- package/dist/serve/docs-ui/docs/pyric-rules-explanation-lint-vs-validate-vs-simulate-vs-test/index.html +79 -0
- package/dist/serve/docs-ui/docs/pyric-rules-explanation-lint-vs-validate-vs-simulate-vs-test.md +69 -0
- package/dist/serve/docs-ui/docs/pyric-rules-explanation-runtime-budget-and-shared-gates/index.html +67 -0
- package/dist/serve/docs-ui/docs/pyric-rules-explanation-runtime-budget-and-shared-gates.md +71 -0
- package/dist/serve/docs-ui/docs/pyric-rules-explanation-sentinel-expression-engine/index.html +49 -0
- package/dist/serve/docs-ui/docs/pyric-rules-explanation-sentinel-expression-engine.md +70 -0
- package/dist/serve/docs-ui/docs/pyric-rules-explanation-simulator-vs-rules-test-api/index.html +96 -0
- package/dist/serve/docs-ui/docs/pyric-rules-explanation-simulator-vs-rules-test-api.md +76 -0
- package/dist/serve/docs-ui/docs/pyric-rules-explanation-the-2-plus-modules-extension/index.html +58 -0
- package/dist/serve/docs-ui/docs/pyric-rules-explanation-the-2-plus-modules-extension.md +75 -0
- package/dist/serve/docs-ui/docs/pyric-rules-explanation-value-wrappers-design/index.html +62 -0
- package/dist/serve/docs-ui/docs/pyric-rules-explanation-value-wrappers-design.md +80 -0
- package/dist/serve/docs-ui/docs/pyric-rules-explanation-why-this-package-exists/index.html +34 -0
- package/dist/serve/docs-ui/docs/pyric-rules-explanation-why-this-package-exists.md +43 -0
- package/dist/serve/docs-ui/docs/pyric-rules-how-to-compare-rulesets-for-weakening/index.html +54 -0
- package/dist/serve/docs-ui/docs/pyric-rules-how-to-compare-rulesets-for-weakening.md +69 -0
- package/dist/serve/docs-ui/docs/pyric-rules-how-to-inspect-rules-via-the-ast/index.html +89 -0
- package/dist/serve/docs-ui/docs/pyric-rules-how-to-inspect-rules-via-the-ast.md +113 -0
- package/dist/serve/docs-ui/docs/pyric-rules-how-to-lint-rules-source/index.html +50 -0
- package/dist/serve/docs-ui/docs/pyric-rules-how-to-lint-rules-source.md +73 -0
- package/dist/serve/docs-ui/docs/pyric-rules-how-to-pin-request-time/index.html +47 -0
- package/dist/serve/docs-ui/docs/pyric-rules-how-to-pin-request-time.md +58 -0
- package/dist/serve/docs-ui/docs/pyric-rules-how-to-register-tools-with-an-agent/index.html +61 -0
- package/dist/serve/docs-ui/docs/pyric-rules-how-to-register-tools-with-an-agent.md +78 -0
- package/dist/serve/docs-ui/docs/pyric-rules-how-to-resolve-module-imports/index.html +92 -0
- package/dist/serve/docs-ui/docs/pyric-rules-how-to-resolve-module-imports.md +93 -0
- package/dist/serve/docs-ui/docs/pyric-rules-how-to-simulate-rules-locally/index.html +89 -0
- package/dist/serve/docs-ui/docs/pyric-rules-how-to-simulate-rules-locally.md +117 -0
- package/dist/serve/docs-ui/docs/pyric-rules-how-to-test-rules-against-firebase/index.html +70 -0
- package/dist/serve/docs-ui/docs/pyric-rules-how-to-test-rules-against-firebase.md +93 -0
- package/dist/serve/docs-ui/docs/pyric-rules-reference-api/index.html +129 -0
- package/dist/serve/docs-ui/docs/pyric-rules-reference-api.md +176 -0
- package/dist/serve/docs-ui/docs/pyric-rules-reference-ast/index.html +85 -0
- package/dist/serve/docs-ui/docs/pyric-rules-reference-ast.md +105 -0
- package/dist/serve/docs-ui/docs/pyric-rules-reference-errors/index.html +63 -0
- package/dist/serve/docs-ui/docs/pyric-rules-reference-errors.md +89 -0
- package/dist/serve/docs-ui/docs/pyric-rules-reference-lint-rules/index.html +148 -0
- package/dist/serve/docs-ui/docs/pyric-rules-reference-lint-rules.md +159 -0
- package/dist/serve/docs-ui/docs/pyric-rules-reference-simulator-context/index.html +66 -0
- package/dist/serve/docs-ui/docs/pyric-rules-reference-simulator-context.md +98 -0
- package/dist/serve/docs-ui/docs/pyric-rules-reference-stdlib-modules/index.html +239 -0
- package/dist/serve/docs-ui/docs/pyric-rules-reference-stdlib-modules.md +135 -0
- package/dist/serve/docs-ui/docs/pyric-rules-reference-test-case-schema/index.html +93 -0
- package/dist/serve/docs-ui/docs/pyric-rules-reference-test-case-schema.md +109 -0
- package/dist/serve/docs-ui/docs/pyric-rules-reference-validator-findings/index.html +86 -0
- package/dist/serve/docs-ui/docs/pyric-rules-reference-validator-findings.md +113 -0
- package/dist/serve/docs-ui/docs/pyric-rules-reference-value-wrappers/index.html +101 -0
- package/dist/serve/docs-ui/docs/pyric-rules-reference-value-wrappers.md +134 -0
- package/dist/serve/docs-ui/docs/pyric-rules-tutorials-01-lint-your-first-rules-file/index.html +107 -0
- package/dist/serve/docs-ui/docs/pyric-rules-tutorials-01-lint-your-first-rules-file.md +142 -0
- package/dist/serve/docs-ui/docs/pyric-rules-tutorials-02-write-a-test-suite-for-your-rules/index.html +151 -0
- package/dist/serve/docs-ui/docs/pyric-rules-tutorials-02-write-a-test-suite-for-your-rules.md +194 -0
- package/dist/serve/docs-ui/docs/pyric-rules.md +88 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox/index.html +67 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-explanation-every-op-is-a-request/index.html +141 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-explanation-every-op-is-a-request.md +157 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-explanation-identity-is-a-context/index.html +66 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-explanation-identity-is-a-context.md +98 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-explanation-internal-adapter-protocol/index.html +71 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-explanation-internal-adapter-protocol.md +105 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-explanation-listener-re-evaluation/index.html +56 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-explanation-listener-re-evaluation.md +80 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-explanation-local-backend-vs-firestore-offline/index.html +64 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-explanation-local-backend-vs-firestore-offline.md +56 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-explanation-why-adapters-are-siblings/index.html +88 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-explanation-why-adapters-are-siblings.md +87 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-explanation-why-this-package-exists/index.html +69 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-explanation-why-this-package-exists.md +57 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-how-to-multiple-isolated-sandboxes/index.html +63 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-how-to-multiple-isolated-sandboxes.md +83 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-how-to-observe-events/index.html +159 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-how-to-observe-events.md +154 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-how-to-pick-an-adapter/index.html +79 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-how-to-pick-an-adapter.md +69 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-how-to-replay-events/index.html +89 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-how-to-replay-events.md +87 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-how-to-reset-between-tests/index.html +68 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-how-to-reset-between-tests.md +86 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-how-to-seed-data-and-rules/index.html +91 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-how-to-seed-data-and-rules.md +112 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-how-to-switch-users/index.html +50 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-how-to-switch-users.md +70 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-how-to-use-admin-reads/index.html +54 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-how-to-use-admin-reads.md +73 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-reference-api/index.html +77 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-reference-api.md +117 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-reference-divergences/index.html +125 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-reference-divergences.md +137 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-reference-error-codes/index.html +110 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-reference-error-codes.md +114 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-reference-internal-protocol/index.html +72 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-reference-internal-protocol.md +99 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-reference-sandbox-and-context/index.html +90 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-reference-sandbox-and-context.md +128 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-reference-sandbox-event/index.html +146 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-reference-sandbox-event.md +188 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-reference-snapshot-and-admin/index.html +53 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-reference-snapshot-and-admin.md +77 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-tutorials-01-your-first-sandbox-session/index.html +115 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-tutorials-01-your-first-sandbox-session.md +154 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-tutorials-02-use-the-sandbox-in-a-test-harness/index.html +191 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-tutorials-02-use-the-sandbox-in-a-test-harness.md +222 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-tutorials-03-build-a-traffic-monitor/index.html +163 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox-tutorials-03-build-a-traffic-monitor.md +192 -0
- package/dist/serve/docs-ui/docs/pyric-sandbox.md +63 -0
- package/dist/serve/docs-ui/docs/pyric-storage/index.html +65 -0
- package/dist/serve/docs-ui/docs/pyric-storage-compat/index.html +1076 -0
- package/dist/serve/docs-ui/docs/pyric-storage-compat.md +337 -0
- package/dist/serve/docs-ui/docs/pyric-storage-explanation-implementation-scope/index.html +63 -0
- package/dist/serve/docs-ui/docs/pyric-storage-explanation-implementation-scope.md +104 -0
- package/dist/serve/docs-ui/docs/pyric-storage-explanation-session-archive-use-case/index.html +58 -0
- package/dist/serve/docs-ui/docs/pyric-storage-explanation-session-archive-use-case.md +80 -0
- package/dist/serve/docs-ui/docs/pyric-storage-explanation-why-indexeddb/index.html +50 -0
- package/dist/serve/docs-ui/docs/pyric-storage-explanation-why-indexeddb.md +82 -0
- package/dist/serve/docs-ui/docs/pyric-storage-how-to-enforce-rules/index.html +104 -0
- package/dist/serve/docs-ui/docs/pyric-storage-how-to-enforce-rules.md +111 -0
- package/dist/serve/docs-ui/docs/pyric-storage-how-to-list-and-delete/index.html +53 -0
- package/dist/serve/docs-ui/docs/pyric-storage-how-to-list-and-delete.md +76 -0
- package/dist/serve/docs-ui/docs/pyric-storage-how-to-round-trip-metadata/index.html +77 -0
- package/dist/serve/docs-ui/docs/pyric-storage-how-to-round-trip-metadata.md +100 -0
- package/dist/serve/docs-ui/docs/pyric-storage-how-to-switch-backends/index.html +65 -0
- package/dist/serve/docs-ui/docs/pyric-storage-how-to-switch-backends.md +82 -0
- package/dist/serve/docs-ui/docs/pyric-storage-how-to-test-rule-expressions/index.html +70 -0
- package/dist/serve/docs-ui/docs/pyric-storage-how-to-test-rule-expressions.md +82 -0
- package/dist/serve/docs-ui/docs/pyric-storage-reference-api/index.html +92 -0
- package/dist/serve/docs-ui/docs/pyric-storage-reference-api.md +152 -0
- package/dist/serve/docs-ui/docs/pyric-storage-reference-error-codes/index.html +46 -0
- package/dist/serve/docs-ui/docs/pyric-storage-reference-error-codes.md +66 -0
- package/dist/serve/docs-ui/docs/pyric-storage-reference-rules-subset/index.html +73 -0
- package/dist/serve/docs-ui/docs/pyric-storage-reference-rules-subset.md +90 -0
- package/dist/serve/docs-ui/docs/pyric-storage-reference-storage-options/index.html +45 -0
- package/dist/serve/docs-ui/docs/pyric-storage-reference-storage-options.md +65 -0
- package/dist/serve/docs-ui/docs/pyric-storage-tutorials-01-upload-and-download/index.html +114 -0
- package/dist/serve/docs-ui/docs/pyric-storage-tutorials-01-upload-and-download.md +141 -0
- package/dist/serve/docs-ui/docs/pyric-storage.md +63 -0
- package/dist/serve/docs-ui/docs/pyric-tools/index.html +45 -0
- package/dist/serve/docs-ui/docs/pyric-tools-bridge/index.html +71 -0
- package/dist/serve/docs-ui/docs/pyric-tools-bridge.md +90 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy/index.html +59 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-explanation-primitives-vs-orchestrators/index.html +63 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-explanation-primitives-vs-orchestrators.md +83 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-explanation-token-caching/index.html +47 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-explanation-token-caching.md +70 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-explanation-why-no-firebase-cli/index.html +36 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-explanation-why-no-firebase-cli.md +50 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-explanation-why-this-package-exists/index.html +47 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-explanation-why-this-package-exists.md +60 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-how-to-build-projectscope-from-firebase-auth/index.html +55 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-how-to-build-projectscope-from-firebase-auth.md +68 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-how-to-build-projectscope-from-service-account/index.html +35 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-how-to-build-projectscope-from-service-account.md +52 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-how-to-bundle-and-deploy-a-function/index.html +81 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-how-to-bundle-and-deploy-a-function.md +98 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-how-to-deploy-firestore-indexes/index.html +71 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-how-to-deploy-firestore-indexes.md +91 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-how-to-deploy-firestore-rules/index.html +100 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-how-to-deploy-firestore-rules.md +105 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-how-to-deploy-hosting-rewrites/index.html +86 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-how-to-deploy-hosting-rewrites.md +92 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-how-to-deploy-realtime-database-rules/index.html +132 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-how-to-deploy-realtime-database-rules.md +165 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-how-to-deploy-to-a-preview-channel/index.html +46 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-how-to-deploy-to-a-preview-channel.md +62 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-how-to-handle-errors-and-outcomes/index.html +75 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-how-to-handle-errors-and-outcomes.md +94 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-how-to-provision-a-firestore-database/index.html +48 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-how-to-provision-a-firestore-database.md +65 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-how-to-register-tools-with-an-agent/index.html +65 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-how-to-register-tools-with-an-agent.md +82 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-reference-api/index.html +155 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-reference-api.md +190 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-reference-cli-agent-io/index.html +84 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-reference-cli-agent-io.md +66 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-reference-error-codes/index.html +71 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-reference-error-codes.md +102 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-reference-firestore-namespace/index.html +138 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-reference-firestore-namespace.md +175 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-reference-functions-namespace/index.html +105 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-reference-functions-namespace.md +133 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-reference-hosting-config/index.html +194 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-reference-hosting-config.md +95 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-reference-hosting-namespace/index.html +99 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-reference-hosting-namespace.md +126 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-reference-rtdb-namespace/index.html +110 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-reference-rtdb-namespace.md +133 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-reference-scope-and-outcome/index.html +68 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-reference-scope-and-outcome.md +88 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-reference-tool-factories/index.html +160 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-reference-tool-factories.md +104 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-tutorials-01-deploy-a-cloud-function/index.html +88 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy-tutorials-01-deploy-a-cloud-function.md +119 -0
- package/dist/serve/docs-ui/docs/pyric-tools-deploy.md +52 -0
- package/dist/serve/docs-ui/docs/pyric-tools-how-to-build-a-standalone-binary/index.html +92 -0
- package/dist/serve/docs-ui/docs/pyric-tools-how-to-build-a-standalone-binary.md +95 -0
- package/dist/serve/docs-ui/docs/pyric-tools-how-to-configure-auth-providers-and-domains/index.html +101 -0
- package/dist/serve/docs-ui/docs/pyric-tools-how-to-configure-auth-providers-and-domains.md +126 -0
- package/dist/serve/docs-ui/docs/pyric-tools-how-to-discover-a-schema-from-firestore/index.html +95 -0
- package/dist/serve/docs-ui/docs/pyric-tools-how-to-discover-a-schema-from-firestore.md +119 -0
- package/dist/serve/docs-ui/docs/pyric-tools-how-to-promote-sandbox-state-to-a-fixture/index.html +52 -0
- package/dist/serve/docs-ui/docs/pyric-tools-how-to-promote-sandbox-state-to-a-fixture.md +83 -0
- package/dist/serve/docs-ui/docs/pyric-tools-how-to-serve-persistence-and-multi-tab/index.html +232 -0
- package/dist/serve/docs-ui/docs/pyric-tools-how-to-serve-persistence-and-multi-tab.md +178 -0
- package/dist/serve/docs-ui/docs/pyric-tools-how-to-use-the-vite-plugin/index.html +340 -0
- package/dist/serve/docs-ui/docs/pyric-tools-how-to-use-the-vite-plugin.md +288 -0
- package/dist/serve/docs-ui/docs/pyric-tools-how-to-verify-against-a-captured-session/index.html +128 -0
- package/dist/serve/docs-ui/docs/pyric-tools-how-to-verify-against-a-captured-session.md +173 -0
- package/dist/serve/docs-ui/docs/pyric-tools-reference-cli/index.html +433 -0
- package/dist/serve/docs-ui/docs/pyric-tools-reference-cli.md +252 -0
- package/dist/serve/docs-ui/docs/pyric-tools-reference-verify/index.html +81 -0
- package/dist/serve/docs-ui/docs/pyric-tools-reference-verify.md +98 -0
- package/dist/serve/docs-ui/docs/pyric-tools-tutorials-getting-started/index.html +92 -0
- package/dist/serve/docs-ui/docs/pyric-tools-tutorials-getting-started.md +117 -0
- package/dist/serve/docs-ui/docs/pyric-tools-tutorials-server-adoption/index.html +221 -0
- package/dist/serve/docs-ui/docs/pyric-tools-tutorials-server-adoption.md +239 -0
- package/dist/serve/docs-ui/docs/pyric-tools-tutorials-wire-claude-code/index.html +205 -0
- package/dist/serve/docs-ui/docs/pyric-tools-tutorials-wire-claude-code.md +250 -0
- package/dist/serve/docs-ui/docs/pyric-tools.md +47 -0
- package/dist/serve/docs-ui/docs/ui/index.html +76 -0
- package/dist/serve/docs-ui/docs/ui-auth-authsigninhelper/index.html +194 -0
- package/dist/serve/docs-ui/docs/ui-auth-authsigninhelper.md +108 -0
- package/dist/serve/docs-ui/docs/ui-auth-authusers/index.html +258 -0
- package/dist/serve/docs-ui/docs/ui-auth-authusers.md +174 -0
- package/dist/serve/docs-ui/docs/ui-firestore-collectionlist/index.html +92 -0
- package/dist/serve/docs-ui/docs/ui-firestore-collectionlist.md +71 -0
- package/dist/serve/docs-ui/docs/ui-firestore-deletewithconfirm/index.html +128 -0
- package/dist/serve/docs-ui/docs/ui-firestore-deletewithconfirm.md +94 -0
- package/dist/serve/docs-ui/docs/ui-firestore-documenteditor/index.html +154 -0
- package/dist/serve/docs-ui/docs/ui-firestore-documenteditor.md +107 -0
- package/dist/serve/docs-ui/docs/ui-firestore-documentlist/index.html +132 -0
- package/dist/serve/docs-ui/docs/ui-firestore-documentlist.md +86 -0
- package/dist/serve/docs-ui/docs/ui-firestore-documentpreview/index.html +159 -0
- package/dist/serve/docs-ui/docs/ui-firestore-documentpreview.md +78 -0
- package/dist/serve/docs-ui/docs/ui-firestore-querybuilder/index.html +104 -0
- package/dist/serve/docs-ui/docs/ui-firestore-querybuilder.md +95 -0
- package/dist/serve/docs-ui/docs/ui-firestore-referencepicker/index.html +113 -0
- package/dist/serve/docs-ui/docs/ui-firestore-referencepicker.md +85 -0
- package/dist/serve/docs-ui/docs/ui-primitives-badge/index.html +56 -0
- package/dist/serve/docs-ui/docs/ui-primitives-badge.md +34 -0
- package/dist/serve/docs-ui/docs/ui-primitives-confirmdialog/index.html +140 -0
- package/dist/serve/docs-ui/docs/ui-primitives-confirmdialog.md +98 -0
- package/dist/serve/docs-ui/docs/ui-primitives-copybutton/index.html +58 -0
- package/dist/serve/docs-ui/docs/ui-primitives-copybutton.md +31 -0
- package/dist/serve/docs-ui/docs/ui-primitives-jsonview/index.html +58 -0
- package/dist/serve/docs-ui/docs/ui-primitives-jsonview.md +41 -0
- package/dist/serve/docs-ui/docs/ui-primitives-segmentedcontrol/index.html +70 -0
- package/dist/serve/docs-ui/docs/ui-primitives-segmentedcontrol.md +44 -0
- package/dist/serve/docs-ui/docs/ui-primitives-toast/index.html +87 -0
- package/dist/serve/docs-ui/docs/ui-primitives-toast.md +74 -0
- package/dist/serve/docs-ui/docs/ui-primitives-virtuallist/index.html +85 -0
- package/dist/serve/docs-ui/docs/ui-primitives-virtuallist.md +48 -0
- package/dist/serve/docs-ui/docs/ui-storage/index.html +154 -0
- package/dist/serve/docs-ui/docs/ui-storage-deleteselectionwithconfirm/index.html +127 -0
- package/dist/serve/docs-ui/docs/ui-storage-deleteselectionwithconfirm.md +83 -0
- package/dist/serve/docs-ui/docs/ui-storage-objectbrowser/index.html +137 -0
- package/dist/serve/docs-ui/docs/ui-storage-objectbrowser.md +84 -0
- package/dist/serve/docs-ui/docs/ui-storage-objectinspector/index.html +139 -0
- package/dist/serve/docs-ui/docs/ui-storage-objectinspector.md +87 -0
- package/dist/serve/docs-ui/docs/ui-storage-pathbreadcrumb/index.html +72 -0
- package/dist/serve/docs-ui/docs/ui-storage-pathbreadcrumb.md +51 -0
- package/dist/serve/docs-ui/docs/ui-storage-rules-aware-affordances/index.html +65 -0
- package/dist/serve/docs-ui/docs/ui-storage-rules-aware-affordances.md +53 -0
- package/dist/serve/docs-ui/docs/ui-storage-uploaddropzone/index.html +93 -0
- package/dist/serve/docs-ui/docs/ui-storage-uploaddropzone.md +72 -0
- package/dist/serve/docs-ui/docs/ui-storage-usestoragerulesgate/index.html +153 -0
- package/dist/serve/docs-ui/docs/ui-storage-usestoragerulesgate.md +105 -0
- package/dist/serve/docs-ui/docs/ui-storage.md +165 -0
- package/dist/serve/docs-ui/docs/ui-traffic/index.html +88 -0
- package/dist/serve/docs-ui/docs/ui-traffic-ruleheatmap/index.html +79 -0
- package/dist/serve/docs-ui/docs/ui-traffic-ruleheatmap.md +54 -0
- package/dist/serve/docs-ui/docs/ui-traffic-trafficdetail/index.html +78 -0
- package/dist/serve/docs-ui/docs/ui-traffic-trafficdetail.md +53 -0
- package/dist/serve/docs-ui/docs/ui-traffic-trafficlog/index.html +118 -0
- package/dist/serve/docs-ui/docs/ui-traffic-trafficlog.md +63 -0
- package/dist/serve/docs-ui/docs/ui-traffic-trafficstats/index.html +51 -0
- package/dist/serve/docs-ui/docs/ui-traffic-trafficstats.md +40 -0
- package/dist/serve/docs-ui/docs/ui-traffic.md +96 -0
- package/dist/serve/docs-ui/docs/ui.md +88 -0
- package/dist/serve/docs-ui/index.html +1 -0
- package/dist/serve/docs-ui/llms.txt +221 -0
- package/dist/serve/entries/app.d.ts +26 -0
- package/dist/serve/entries/app.d.ts.map +1 -0
- package/dist/serve/entries/app.js +51 -0
- package/dist/serve/entries/app.js.map +1 -0
- package/dist/serve/entries/auth-helper-core.d.ts +47 -0
- package/dist/serve/entries/auth-helper-core.d.ts.map +1 -0
- package/dist/serve/entries/auth-helper-core.js +121 -0
- package/dist/serve/entries/auth-helper-core.js.map +1 -0
- package/dist/serve/entries/auth-helper-dom.d.ts +14 -0
- package/dist/serve/entries/auth-helper-dom.d.ts.map +1 -0
- package/dist/serve/entries/auth-helper-dom.js +116 -0
- package/dist/serve/entries/auth-helper-dom.js.map +1 -0
- package/dist/serve/entries/auth.d.ts +62 -0
- package/dist/serve/entries/auth.d.ts.map +1 -0
- package/dist/serve/entries/auth.js +128 -0
- package/dist/serve/entries/auth.js.map +1 -0
- package/dist/serve/entries/bridge-url.d.ts +25 -0
- package/dist/serve/entries/bridge-url.d.ts.map +1 -0
- package/dist/serve/entries/bridge-url.js +30 -0
- package/dist/serve/entries/bridge-url.js.map +1 -0
- package/dist/serve/entries/database.d.ts +34 -0
- package/dist/serve/entries/database.d.ts.map +1 -0
- package/dist/serve/entries/database.js +42 -0
- package/dist/serve/entries/database.js.map +1 -0
- package/dist/serve/entries/firestore.d.ts +68 -0
- package/dist/serve/entries/firestore.d.ts.map +1 -0
- package/dist/serve/entries/firestore.js +115 -0
- package/dist/serve/entries/firestore.js.map +1 -0
- package/dist/serve/entries/init.d.ts +2 -0
- package/dist/serve/entries/init.d.ts.map +1 -0
- package/dist/serve/entries/init.js +14 -0
- package/dist/serve/entries/init.js.map +1 -0
- package/dist/serve/entries/keepalive.d.ts +20 -0
- package/dist/serve/entries/keepalive.d.ts.map +1 -0
- package/dist/serve/entries/keepalive.js +38 -0
- package/dist/serve/entries/keepalive.js.map +1 -0
- package/dist/serve/entries/runtime.d.ts +60 -0
- package/dist/serve/entries/runtime.d.ts.map +1 -0
- package/dist/serve/entries/runtime.js +555 -0
- package/dist/serve/entries/runtime.js.map +1 -0
- package/dist/serve/entries/session-store.d.ts +45 -0
- package/dist/serve/entries/session-store.d.ts.map +1 -0
- package/dist/serve/entries/session-store.js +71 -0
- package/dist/serve/entries/session-store.js.map +1 -0
- package/dist/serve/entries/storage.d.ts +23 -0
- package/dist/serve/entries/storage.d.ts.map +1 -0
- package/dist/serve/entries/storage.js +49 -0
- package/dist/serve/entries/storage.js.map +1 -0
- package/dist/serve/entries/tab-sync-wiring.d.ts +88 -0
- package/dist/serve/entries/tab-sync-wiring.d.ts.map +1 -0
- package/dist/serve/entries/tab-sync-wiring.js +217 -0
- package/dist/serve/entries/tab-sync-wiring.js.map +1 -0
- package/dist/serve/namespace.d.ts +93 -0
- package/dist/serve/namespace.d.ts.map +1 -0
- package/dist/serve/namespace.js +367 -0
- package/dist/serve/namespace.js.map +1 -0
- package/dist/serve/open-browser.d.ts +23 -0
- package/dist/serve/open-browser.d.ts.map +1 -0
- package/dist/serve/open-browser.js +58 -0
- package/dist/serve/open-browser.js.map +1 -0
- package/dist/serve/playground-ui/_astro/HomePage.BFOjZGZp.js +2 -0
- package/dist/serve/playground-ui/_astro/PlaygroundPage.3jki8il0.js +3300 -0
- package/dist/serve/playground-ui/_astro/PlaygroundPage.MhP_vFvK.css +32 -0
- package/dist/serve/playground-ui/_astro/TopBar.ChifCjLD.js +5025 -0
- package/dist/serve/playground-ui/_astro/client.D61DpmEZ.js +274 -0
- package/dist/serve/playground-ui/_astro/client.GCK88uRs.js +1 -0
- package/dist/serve/playground-ui/_astro/esbuild.BHljloGq.wasm +0 -0
- package/dist/serve/playground-ui/_astro/index.B9aLOeXL.js +29 -0
- package/dist/serve/playground-ui/_astro/index.BTKE7uRF.js +1227 -0
- package/dist/serve/playground-ui/_astro/index.BfCthstx.css +1 -0
- package/dist/serve/playground-ui/_astro/index.Mr0Dtjih.js +342 -0
- package/dist/serve/playground-ui/_astro/ort-wasm-simd-threaded.asyncify.DMmc6YqF.wasm +0 -0
- package/dist/serve/playground-ui/favicon.svg +4 -0
- package/dist/serve/playground-ui/index.html +2 -0
- package/dist/serve/playground-ui/playground/index.html +2 -0
- package/dist/serve/rules.d.ts +45 -0
- package/dist/serve/rules.d.ts.map +1 -0
- package/dist/serve/rules.js +139 -0
- package/dist/serve/rules.js.map +1 -0
- package/dist/serve/sandbox-marker.d.ts +9 -0
- package/dist/serve/sandbox-marker.d.ts.map +1 -0
- package/dist/serve/sandbox-marker.js +32 -0
- package/dist/serve/sandbox-marker.js.map +1 -0
- package/dist/serve/server.d.ts +135 -0
- package/dist/serve/server.d.ts.map +1 -0
- package/dist/serve/server.js +328 -0
- package/dist/serve/server.js.map +1 -0
- package/dist/serve/standalone-assets.d.ts +66 -0
- package/dist/serve/standalone-assets.d.ts.map +1 -0
- package/dist/serve/standalone-assets.js +144 -0
- package/dist/serve/standalone-assets.js.map +1 -0
- package/dist/serve/state-store.d.ts +45 -0
- package/dist/serve/state-store.d.ts.map +1 -0
- package/dist/serve/state-store.js +120 -0
- package/dist/serve/state-store.js.map +1 -0
- package/dist/serve/studio/disk-project-store.d.ts +9 -0
- package/dist/serve/studio/disk-project-store.d.ts.map +1 -0
- package/dist/serve/studio/disk-project-store.js +173 -0
- package/dist/serve/studio/disk-project-store.js.map +1 -0
- package/dist/serve/studio/disk-workspace.d.ts +14 -0
- package/dist/serve/studio/disk-workspace.d.ts.map +1 -0
- package/dist/serve/studio/disk-workspace.js +152 -0
- package/dist/serve/studio/disk-workspace.js.map +1 -0
- package/dist/serve/studio/index.d.ts +10 -0
- package/dist/serve/studio/index.d.ts.map +1 -0
- package/dist/serve/studio/index.js +9 -0
- package/dist/serve/studio/index.js.map +1 -0
- package/dist/serve/studio/routes.d.ts +40 -0
- package/dist/serve/studio/routes.d.ts.map +1 -0
- package/dist/serve/studio/routes.js +182 -0
- package/dist/serve/studio/routes.js.map +1 -0
- package/dist/serve/studio/store-types.d.ts +45 -0
- package/dist/serve/studio/store-types.d.ts.map +1 -0
- package/dist/serve/studio/store-types.js +11 -0
- package/dist/serve/studio/store-types.js.map +1 -0
- package/dist/serve/studio-ui/assets/RulesCodeEditor-Bncteb8z.js +23 -0
- package/dist/serve/studio-ui/assets/index-CmkJxFcG.js +4577 -0
- package/dist/serve/studio-ui/assets/index-DNK39P6C.css +1 -0
- package/dist/serve/studio-ui/assets/seed-Bab4ArXQ.js +2 -0
- package/dist/serve/studio-ui/index.html +32 -0
- package/dist/serve/studio-ui/pyric-logo.svg +76 -0
- package/dist/serve/vite-plugin.d.ts +57 -0
- package/dist/serve/vite-plugin.d.ts.map +1 -0
- package/dist/serve/vite-plugin.js +687 -0
- package/dist/serve/vite-plugin.js.map +1 -0
- package/dist/serve/worker/client.d.ts +668 -0
- package/dist/serve/worker/client.d.ts.map +1 -0
- package/dist/serve/worker/client.js +1635 -0
- package/dist/serve/worker/client.js.map +1 -0
- package/dist/serve/worker/entry.d.ts +40 -0
- package/dist/serve/worker/entry.d.ts.map +1 -0
- package/dist/serve/worker/entry.js +122 -0
- package/dist/serve/worker/entry.js.map +1 -0
- package/dist/serve/worker/host-auth.d.ts +47 -0
- package/dist/serve/worker/host-auth.d.ts.map +1 -0
- package/dist/serve/worker/host-auth.js +434 -0
- package/dist/serve/worker/host-auth.js.map +1 -0
- package/dist/serve/worker/host-context.d.ts +180 -0
- package/dist/serve/worker/host-context.d.ts.map +1 -0
- package/dist/serve/worker/host-context.js +45 -0
- package/dist/serve/worker/host-context.js.map +1 -0
- package/dist/serve/worker/host-events.d.ts +21 -0
- package/dist/serve/worker/host-events.d.ts.map +1 -0
- package/dist/serve/worker/host-events.js +87 -0
- package/dist/serve/worker/host-events.js.map +1 -0
- package/dist/serve/worker/host.d.ts +81 -0
- package/dist/serve/worker/host.d.ts.map +1 -0
- package/dist/serve/worker/host.js +1605 -0
- package/dist/serve/worker/host.js.map +1 -0
- package/dist/serve/worker/index.d.ts +22 -0
- package/dist/serve/worker/index.d.ts.map +1 -0
- package/dist/serve/worker/index.js +61 -0
- package/dist/serve/worker/index.js.map +1 -0
- package/dist/serve/worker/protocol.d.ts +955 -0
- package/dist/serve/worker/protocol.d.ts.map +1 -0
- package/dist/serve/worker/protocol.js +197 -0
- package/dist/serve/worker/protocol.js.map +1 -0
- package/dist/serve/worker/serve-init.d.ts +192 -0
- package/dist/serve/worker/serve-init.d.ts.map +1 -0
- package/dist/serve/worker/serve-init.js +555 -0
- package/dist/serve/worker/serve-init.js.map +1 -0
- package/dist/serve/writer-lock.d.ts +32 -0
- package/dist/serve/writer-lock.d.ts.map +1 -0
- package/dist/serve/writer-lock.js +43 -0
- package/dist/serve/writer-lock.js.map +1 -0
- package/dist/verify/cases.d.ts +37 -0
- package/dist/verify/cases.d.ts.map +1 -0
- package/dist/verify/cases.js +173 -0
- package/dist/verify/cases.js.map +1 -0
- package/dist/verify/fixture.d.ts +79 -0
- package/dist/verify/fixture.d.ts.map +1 -0
- package/dist/verify/fixture.js +114 -0
- package/dist/verify/fixture.js.map +1 -0
- package/dist/verify/index.d.ts +102 -0
- package/dist/verify/index.d.ts.map +1 -0
- package/dist/verify/index.js +318 -0
- package/dist/verify/index.js.map +1 -0
- package/dist/verify/tools.d.ts +7 -0
- package/dist/verify/tools.d.ts.map +1 -0
- package/dist/verify/tools.js +83 -0
- package/dist/verify/tools.js.map +1 -0
- package/dist/vite.d.ts +12 -0
- package/dist/vite.d.ts.map +1 -0
- package/dist/vite.js +16 -0
- package/dist/vite.js.map +1 -0
- package/package.json +127 -0
|
@@ -0,0 +1,668 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Worker client SDK — mirrors `pyric/firestore` for the SharedWorker path.
|
|
3
|
+
*
|
|
4
|
+
* WHY THIS EXISTS
|
|
5
|
+
* ---------------
|
|
6
|
+
* When the SharedWorker is available, app code should be able to swap its
|
|
7
|
+
* `pyric/firestore` import for this module (via an import-map) and have
|
|
8
|
+
* every operation transparently route to the single worker-hosted sandbox
|
|
9
|
+
* instead of running an in-page sandbox. The API surface is identical:
|
|
10
|
+
* same function names, same argument shapes, same return types.
|
|
11
|
+
*
|
|
12
|
+
* DESIGN SPLIT
|
|
13
|
+
* ------------
|
|
14
|
+
* Client-side only (no RPC — build descriptor objects in-page):
|
|
15
|
+
* `getFirestore`, `doc`, `collection`, `collectionGroup`, `query`,
|
|
16
|
+
* `where`, `orderBy`, `limit`, `limitToLast`, `startAt`, `startAfter`,
|
|
17
|
+
* `endAt`, `endBefore`
|
|
18
|
+
*
|
|
19
|
+
* These return `ClientDb`, `DocRefHandle`, `CollRefHandle`, `QueryHandle`
|
|
20
|
+
* objects that carry the port + a serializable descriptor. No RPC fires
|
|
21
|
+
* until an execution function is called.
|
|
22
|
+
*
|
|
23
|
+
* WHY IN-PAGE: Firebase's `doc()` / `collection()` / `query()` are
|
|
24
|
+
* synchronous — they build ref objects. Making them async (RPC) would
|
|
25
|
+
* break every existing app pattern. Since path-building needs no data
|
|
26
|
+
* from the sandbox, it's correct and cheap to do it in-page.
|
|
27
|
+
*
|
|
28
|
+
* Sentinel factories (client-side markers, worker resolves them):
|
|
29
|
+
* `serverTimestamp`, `increment`, `arrayUnion`, `arrayRemove`, `deleteField`
|
|
30
|
+
*
|
|
31
|
+
* Return `SentinelMarker` objects that embed in write data.
|
|
32
|
+
* The host's `resolveSentinels` converts them before writing.
|
|
33
|
+
*
|
|
34
|
+
* Execution functions (RPC — send op to worker, await reply):
|
|
35
|
+
* `getDoc`, `getDocs`, `setDoc`, `updateDoc`, `deleteDoc`, `addDoc`,
|
|
36
|
+
* `onSnapshot`, `getCountFromServer`, `runTransaction`, `writeBatch`
|
|
37
|
+
*
|
|
38
|
+
* TRANSACTION SEMANTICS + MULTI-TAB CORRECTNESS
|
|
39
|
+
* -----------------------------------------------
|
|
40
|
+
* `runTransaction(db, updateFn)` on the client:
|
|
41
|
+
* 1. Runs `updateFn(txn)` locally — `txn.get(ref)` RPCs a getDoc, records
|
|
42
|
+
* `{ path, data }` in the per-attempt read-set, returns the snapshot.
|
|
43
|
+
* 2. `txn.set/update/delete` buffer writes locally in `txn`.
|
|
44
|
+
* 3. When `updateFn` resolves, sends `{ method:'txnCommit', reads, writes }`.
|
|
45
|
+
* 4. The worker re-reads each read-set doc inside a sandbox transaction,
|
|
46
|
+
* compares the JSON-serialized current data against the recorded data,
|
|
47
|
+
* and aborts with `{ code:'aborted' }` on any mismatch.
|
|
48
|
+
* 5. On `aborted`, the client re-runs `updateFn` with a fresh txn object
|
|
49
|
+
* (up to 5 attempts). All other errors are propagated immediately.
|
|
50
|
+
*
|
|
51
|
+
* WHY RETRY IS NECESSARY (multi-tab gap):
|
|
52
|
+
* A transaction spans two messages: the `txn.get` RPC and `txnCommit`. Another
|
|
53
|
+
* tab can write to a read doc in between (the event loop is free between
|
|
54
|
+
* messages). Without read-set validation that produces a silent lost update.
|
|
55
|
+
* The retry loop mirrors real Firestore SDK behaviour.
|
|
56
|
+
*
|
|
57
|
+
* SNAPSHOT DESERIALIZATION
|
|
58
|
+
* ------------------------
|
|
59
|
+
* The worker sends document data as `{ json: string }` (SerializedDocData).
|
|
60
|
+
* `deserializeDocData` (protocol.ts) parses the JSON and calls
|
|
61
|
+
* `rehydrateDocValue` (from pyric/sandbox) to reconstruct REAL class
|
|
62
|
+
* instances — Timestamp with `.seconds`/`.nanos`, Bytes with `.data`, LatLng
|
|
63
|
+
* with `.lat`/`.lng`. The wire format == the IDB persistence format.
|
|
64
|
+
*/
|
|
65
|
+
import type { DocRef, CollRef, QueryDescriptor, QueryConstraintDescriptor, AggregateFieldDescriptor, AggregateSpecDescriptor, SentinelMarker, SerializedUser, SerializedIdTokenResult, AuthPersistenceMode, ResolvedIdentity } from './protocol.js';
|
|
66
|
+
import type { PolicyRequest } from './protocol.js';
|
|
67
|
+
import type { WorkerOpPayload, WorkerSubPayload } from '../../bridge/protocol.js';
|
|
68
|
+
import type { AuthLens, SandboxEvent, SandboxSnapshot } from 'pyric/sandbox';
|
|
69
|
+
import type { AuthUserRecord, CreateUserRequest, UpdateUserRequest } from 'pyric/auth';
|
|
70
|
+
import type { FullMetadata } from 'pyric/storage';
|
|
71
|
+
/** Opaque client-side Firestore handle. Holds the MessagePort to the worker. */
|
|
72
|
+
export interface ClientDb {
|
|
73
|
+
readonly __kind: 'client-db';
|
|
74
|
+
readonly port: MessagePort;
|
|
75
|
+
}
|
|
76
|
+
export interface ClientRtdb {
|
|
77
|
+
readonly __kind: 'client-rtdb';
|
|
78
|
+
readonly port: MessagePort;
|
|
79
|
+
}
|
|
80
|
+
export interface RtdbRefHandle {
|
|
81
|
+
readonly __kind: 'rtdb-ref';
|
|
82
|
+
readonly port: MessagePort;
|
|
83
|
+
readonly path: string;
|
|
84
|
+
readonly key: string | null;
|
|
85
|
+
readonly parent: RtdbRefHandle | null;
|
|
86
|
+
readonly root: RtdbRefHandle;
|
|
87
|
+
toString(): string;
|
|
88
|
+
}
|
|
89
|
+
export interface RtdbDataSnapshot {
|
|
90
|
+
readonly key: string | null;
|
|
91
|
+
readonly size: number;
|
|
92
|
+
exists(): boolean;
|
|
93
|
+
val(): unknown;
|
|
94
|
+
child(path: string): RtdbDataSnapshot;
|
|
95
|
+
hasChild(path: string): boolean;
|
|
96
|
+
hasChildren(): boolean;
|
|
97
|
+
exportVal(): unknown;
|
|
98
|
+
toJSON(): unknown;
|
|
99
|
+
forEach(cb: (child: RtdbDataSnapshot) => boolean | void): boolean;
|
|
100
|
+
readonly ref: RtdbRefHandle;
|
|
101
|
+
}
|
|
102
|
+
/** Client-side document reference — carries a DocRef descriptor + port. */
|
|
103
|
+
export interface DocRefHandle {
|
|
104
|
+
readonly __kind: 'doc-ref';
|
|
105
|
+
readonly descriptor: DocRef;
|
|
106
|
+
readonly port: MessagePort;
|
|
107
|
+
readonly id: string;
|
|
108
|
+
readonly path: string;
|
|
109
|
+
}
|
|
110
|
+
/** Client-side collection reference. */
|
|
111
|
+
export interface CollRefHandle {
|
|
112
|
+
readonly __kind: 'coll-ref';
|
|
113
|
+
readonly descriptor: CollRef;
|
|
114
|
+
readonly port: MessagePort;
|
|
115
|
+
readonly id: string;
|
|
116
|
+
readonly path: string;
|
|
117
|
+
}
|
|
118
|
+
/** Client-side query. */
|
|
119
|
+
export interface QueryHandle {
|
|
120
|
+
readonly __kind: 'query';
|
|
121
|
+
readonly descriptor: QueryDescriptor;
|
|
122
|
+
readonly port: MessagePort;
|
|
123
|
+
}
|
|
124
|
+
/** Union of all client handles. */
|
|
125
|
+
export type AnyHandle = ClientDb | DocRefHandle | CollRefHandle | QueryHandle;
|
|
126
|
+
/**
|
|
127
|
+
* Set the default auth lens applied to subsequent Firestore DATA ops from this
|
|
128
|
+
* client (Pyric Studio). Pass `{ mode: 'as', uid }` to read/write AS a user
|
|
129
|
+
* (rules apply), `{ mode: 'admin' }` for the admin lens, or
|
|
130
|
+
* `{ mode: 'app-session' }` / `undefined` to revert to the app's own session.
|
|
131
|
+
*
|
|
132
|
+
* The lens is process-wide for this client module (one served page = one
|
|
133
|
+
* worker port), mirroring how Studio drives a single active identity at a time.
|
|
134
|
+
* Auth ops are unaffected — they always operate the real session.
|
|
135
|
+
*/
|
|
136
|
+
export declare function setLens(lens: AuthLens | undefined): void;
|
|
137
|
+
/** The active default lens (read-only view), for Studio UI to reflect state. */
|
|
138
|
+
export declare function getLens(): AuthLens | undefined;
|
|
139
|
+
/** Declare who issues the ops this client module constructs. See {@link _opIssuer}. */
|
|
140
|
+
export declare function setOpIssuer(source: 'studio' | undefined): void;
|
|
141
|
+
/**
|
|
142
|
+
* Connect to the SharedWorker and return a client Firestore handle.
|
|
143
|
+
*
|
|
144
|
+
* Pass the URL of the SharedWorker script as `workerUrl`. Under `pyric dev`
|
|
145
|
+
* this is `/__pyric/sdk/worker.js`; for tests or standalone use, pass the path
|
|
146
|
+
* explicitly.
|
|
147
|
+
*
|
|
148
|
+
* `getFirestore` mirrors `pyric/firestore`'s `getFirestore(sandbox)` shape
|
|
149
|
+
* but returns a `ClientDb` backed by a `MessagePort` instead of a sandbox.
|
|
150
|
+
*/
|
|
151
|
+
export declare function getFirestore(workerUrl: string | URL, name?: string): ClientDb;
|
|
152
|
+
/**
|
|
153
|
+
* Ask the worker for its baked build version (staleness guard). The page
|
|
154
|
+
* compares it to the served bundle version and warns when a still-running OLD
|
|
155
|
+
* worker is older than what's served (a SharedWorker can't hot-update).
|
|
156
|
+
*/
|
|
157
|
+
export declare function getWorkerVersion(db: ClientDb): Promise<string>;
|
|
158
|
+
/**
|
|
159
|
+
* Ask the worker for its stable per-instance id (see host `INSTANCE_ID_KEY`).
|
|
160
|
+
* Studio renders a human-friendly form so a user can tell which sandbox instance
|
|
161
|
+
* they're looking at — the same `localhost:<port>` in a different browser profile
|
|
162
|
+
* is a SEPARATE sandbox (a separate SharedWorker + IndexedDB), and this is how
|
|
163
|
+
* the two are told apart.
|
|
164
|
+
*/
|
|
165
|
+
export declare function getWorkerInstanceId(db: ClientDb): Promise<string>;
|
|
166
|
+
/**
|
|
167
|
+
* Phase 2 (transfer): export the FULL sandbox state as a portable bundle string
|
|
168
|
+
* (the chunk format the persist layer uses, so wrapper types round-trip). Save
|
|
169
|
+
* it to a file and {@link importWorkerState} it into another instance.
|
|
170
|
+
*/
|
|
171
|
+
export declare function exportWorkerState(db: ClientDb): Promise<string>;
|
|
172
|
+
/** Phase 2 (clobber): replace this sandbox's ENTIRE state with `bundle`. */
|
|
173
|
+
export declare function importWorkerState(db: ClientDb, bundle: string): Promise<void>;
|
|
174
|
+
/** Phase 3: save the live sandbox as a named branch (a saved state bundle). */
|
|
175
|
+
export declare function saveWorkerBranch(db: ClientDb, name: string): Promise<void>;
|
|
176
|
+
/** Phase 3: list this instance's saved branch names. */
|
|
177
|
+
export declare function listWorkerBranches(db: ClientDb): Promise<string[]>;
|
|
178
|
+
/** Phase 3 (clobber): switch the live sandbox to a named branch's state. */
|
|
179
|
+
export declare function switchWorkerBranch(db: ClientDb, name: string): Promise<void>;
|
|
180
|
+
/** Phase 3: delete a named branch. */
|
|
181
|
+
export declare function deleteWorkerBranch(db: ClientDb, name: string): Promise<void>;
|
|
182
|
+
/**
|
|
183
|
+
* Forward an agent tool-call to the worker so it executes against the SAME
|
|
184
|
+
* sandbox the app + Studio use. The worker runs the canonical tool dispatcher
|
|
185
|
+
* (`buildSandboxDispatcher`) and replies with the `{ ok, summary, data }`
|
|
186
|
+
* result. Used by the bridge peer on the worker path (`connectBridgePeer` in
|
|
187
|
+
* `entries/runtime.ts`) so the agent shares the one authoritative sandbox.
|
|
188
|
+
*/
|
|
189
|
+
export declare function callTool(db: ClientDb, name: string, args: Record<string, unknown>): Promise<{
|
|
190
|
+
ok: boolean;
|
|
191
|
+
summary: string;
|
|
192
|
+
data?: unknown;
|
|
193
|
+
}>;
|
|
194
|
+
/**
|
|
195
|
+
* Relay one raw worker-protocol op into the SharedWorker. `op` is the op
|
|
196
|
+
* message minus `t`/`id` (the `WorkerOpPayload` wire shape); resolves with
|
|
197
|
+
* the worker's `res.value`, rejects with an Error carrying `.code`.
|
|
198
|
+
*/
|
|
199
|
+
export declare function relayWorkerOp(db: ClientDb, op: WorkerOpPayload): Promise<unknown>;
|
|
200
|
+
/**
|
|
201
|
+
* Relay a raw worker-protocol subscription into the SharedWorker. `sub` is
|
|
202
|
+
* the sub message minus `t`/`subId` (the `WorkerSubPayload` wire shape).
|
|
203
|
+
* `onValue` receives every snap value VERBATIM — including the worker host's
|
|
204
|
+
* `{ __error: { code, message } }` establishment-failure convention (listener
|
|
205
|
+
* errors are re-wrapped into the same shape so the far side sees one form).
|
|
206
|
+
* Returns the unsubscribe function.
|
|
207
|
+
*
|
|
208
|
+
* The unified event stream (`target: 'events'`) is NOT relayable yet — its
|
|
209
|
+
* history batches aren't coalescible, so it needs bounded backpressure first
|
|
210
|
+
* (slice 2).
|
|
211
|
+
*/
|
|
212
|
+
export declare function relayWorkerSub(db: ClientDb, sub: WorkerSubPayload, onValue: (value: unknown) => void): () => void;
|
|
213
|
+
/**
|
|
214
|
+
* Build a document reference. Mirrors `pyric/firestore`'s `doc(db, path)`.
|
|
215
|
+
*
|
|
216
|
+
* WHY CLIENT-SIDE: Firebase's `doc()` is synchronous and path-only — it
|
|
217
|
+
* needs no data from the sandbox. We build a descriptor object here and
|
|
218
|
+
* include the port so execution calls can route to the worker.
|
|
219
|
+
*/
|
|
220
|
+
export declare function doc(parent: ClientDb | CollRefHandle, ...pathSegments: string[]): DocRefHandle;
|
|
221
|
+
/**
|
|
222
|
+
* Build a collection reference. Mirrors `pyric/firestore`'s `collection(db, path)`.
|
|
223
|
+
*/
|
|
224
|
+
export declare function collection(parent: ClientDb | DocRefHandle, ...pathSegments: string[]): CollRefHandle;
|
|
225
|
+
/**
|
|
226
|
+
* Build a collection-group query. Mirrors `pyric/firestore`'s `collectionGroup(db, id)`.
|
|
227
|
+
*/
|
|
228
|
+
export declare function collectionGroup(db: ClientDb, collectionId: string): QueryHandle;
|
|
229
|
+
/** Opaque query constraint — carries its descriptor for embedding in queries. */
|
|
230
|
+
export interface QueryConstraintHandle {
|
|
231
|
+
readonly _descriptor: QueryConstraintDescriptor;
|
|
232
|
+
}
|
|
233
|
+
export declare function where(field: string, op: string, value: unknown): QueryConstraintHandle;
|
|
234
|
+
/**
|
|
235
|
+
* OR composite filter — at least one operand must match. Operands must be
|
|
236
|
+
* filters (`where()`, or nested `or()`/`and()`). Mirrors `pyric/firestore`'s
|
|
237
|
+
* `or(...)`; the worker rebuilds it with the real modular factory.
|
|
238
|
+
*/
|
|
239
|
+
export declare function or(...filters: QueryConstraintHandle[]): QueryConstraintHandle;
|
|
240
|
+
/** AND composite filter — every operand must match. See {@link or}. */
|
|
241
|
+
export declare function and(...filters: QueryConstraintHandle[]): QueryConstraintHandle;
|
|
242
|
+
export declare function orderBy(field: string, direction?: 'asc' | 'desc'): QueryConstraintHandle;
|
|
243
|
+
export declare function limit(n: number): QueryConstraintHandle;
|
|
244
|
+
export declare function limitToLast(n: number): QueryConstraintHandle;
|
|
245
|
+
export declare function startAt(...values: unknown[]): QueryConstraintHandle;
|
|
246
|
+
export declare function startAfter(...values: unknown[]): QueryConstraintHandle;
|
|
247
|
+
export declare function endAt(...values: unknown[]): QueryConstraintHandle;
|
|
248
|
+
export declare function endBefore(...values: unknown[]): QueryConstraintHandle;
|
|
249
|
+
/**
|
|
250
|
+
* Apply query constraints to a source ref or query.
|
|
251
|
+
* Mirrors `pyric/firestore`'s `query(source, ...constraints)`.
|
|
252
|
+
*/
|
|
253
|
+
export declare function query(source: CollRefHandle | QueryHandle, ...constraints: QueryConstraintHandle[]): QueryHandle;
|
|
254
|
+
export declare function serverTimestamp(): SentinelMarker;
|
|
255
|
+
export declare function increment(n: number): SentinelMarker;
|
|
256
|
+
export declare function arrayUnion(...values: unknown[]): SentinelMarker;
|
|
257
|
+
export declare function arrayRemove(...values: unknown[]): SentinelMarker;
|
|
258
|
+
export declare function deleteField(): SentinelMarker;
|
|
259
|
+
export interface ClientDocSnapshot {
|
|
260
|
+
readonly id: string;
|
|
261
|
+
readonly path: string;
|
|
262
|
+
/** Lightweight document ref (id + path), mirroring the modular SDK's
|
|
263
|
+
* `snap.ref` that `@pyric/ui` reads off query docs. */
|
|
264
|
+
readonly ref: {
|
|
265
|
+
readonly id: string;
|
|
266
|
+
readonly path: string;
|
|
267
|
+
};
|
|
268
|
+
exists(): boolean;
|
|
269
|
+
data(): Record<string, unknown> | undefined;
|
|
270
|
+
}
|
|
271
|
+
export interface ClientQuerySnapshot {
|
|
272
|
+
readonly size: number;
|
|
273
|
+
readonly empty: boolean;
|
|
274
|
+
readonly docs: ClientDocSnapshot[];
|
|
275
|
+
}
|
|
276
|
+
export declare function getDoc(ref: DocRefHandle): Promise<ClientDocSnapshot>;
|
|
277
|
+
export declare function getDocs(source: CollRefHandle | QueryHandle): Promise<ClientQuerySnapshot>;
|
|
278
|
+
/**
|
|
279
|
+
* Enumerate root collection ids (Pyric Studio data browse). The modular SDK has
|
|
280
|
+
* no client `listCollections`, so the host scans the sandbox keyspace and
|
|
281
|
+
* returns the ids. Lens is attached (via dataRpc) but the host enumeration is
|
|
282
|
+
* lens-independent.
|
|
283
|
+
*/
|
|
284
|
+
export declare function listRootCollections(db: ClientDb): Promise<string[]>;
|
|
285
|
+
/** Enumerate subcollection ids under a document path (Pyric Studio data browse). */
|
|
286
|
+
export declare function listSubcollections(db: ClientDb, docPath: string): Promise<string[]>;
|
|
287
|
+
export declare function setDoc(ref: DocRefHandle, data: Record<string, unknown>, options?: {
|
|
288
|
+
merge?: boolean;
|
|
289
|
+
mergeFields?: string[];
|
|
290
|
+
}): Promise<void>;
|
|
291
|
+
export declare function updateDoc(ref: DocRefHandle, data: Record<string, unknown>): Promise<void>;
|
|
292
|
+
export declare function deleteDoc(ref: DocRefHandle): Promise<void>;
|
|
293
|
+
export declare function addDoc(coll: CollRefHandle, data: Record<string, unknown>): Promise<DocRefHandle>;
|
|
294
|
+
export declare function getCountFromServer(source: CollRefHandle | QueryHandle): Promise<{
|
|
295
|
+
data(): {
|
|
296
|
+
count: number;
|
|
297
|
+
};
|
|
298
|
+
}>;
|
|
299
|
+
/** Factory: count() aggregate field. Mirrors `pyric/firestore`'s `count()`. */
|
|
300
|
+
export declare function count(): AggregateFieldDescriptor;
|
|
301
|
+
/** Factory: sum-of-`field` aggregate. Mirrors `pyric/firestore`'s `sum()`. */
|
|
302
|
+
export declare function sum(field: string): AggregateFieldDescriptor;
|
|
303
|
+
/** Factory: average-of-`field` aggregate. Empty input yields `null`. */
|
|
304
|
+
export declare function average(field: string): AggregateFieldDescriptor;
|
|
305
|
+
/**
|
|
306
|
+
* Run a multi-field aggregate on the worker. Mirrors `pyric/firestore`'s
|
|
307
|
+
* `getAggregateFromServer(query, spec)`: spec entries are keyed by
|
|
308
|
+
* caller-chosen aliases; `.data()` returns the numbers under the same keys
|
|
309
|
+
* (`average` over no rows is `null`).
|
|
310
|
+
*/
|
|
311
|
+
export declare function getAggregateFromServer<S extends AggregateSpecDescriptor>(source: CollRefHandle | QueryHandle, spec: S): Promise<{
|
|
312
|
+
data(): {
|
|
313
|
+
[K in keyof S]: number | null;
|
|
314
|
+
};
|
|
315
|
+
}>;
|
|
316
|
+
export type Unsubscribe = () => void;
|
|
317
|
+
/**
|
|
318
|
+
* Subscribe to a document or query. Mirrors `pyric/firestore`'s `onSnapshot`.
|
|
319
|
+
*
|
|
320
|
+
* Returns an `unsub` function. Sends `{ t:'unsub', subId }` to the worker
|
|
321
|
+
* to deregister the listener on the worker side.
|
|
322
|
+
*/
|
|
323
|
+
export declare function onSnapshot(target: DocRefHandle | CollRefHandle | QueryHandle, callback: (snap: ClientDocSnapshot | ClientQuerySnapshot) => void, errorCallback?: (err: unknown) => void): Unsubscribe;
|
|
324
|
+
/**
|
|
325
|
+
* Client-side write batch. Buffers `set`/`update`/`delete` calls and
|
|
326
|
+
* sends them all to the worker on `.commit()`.
|
|
327
|
+
*
|
|
328
|
+
* Mirrors `pyric/firestore`'s `writeBatch(db)` shape:
|
|
329
|
+
* const batch = writeBatch(db);
|
|
330
|
+
* batch.set(ref, { ... });
|
|
331
|
+
* batch.delete(ref2);
|
|
332
|
+
* await batch.commit();
|
|
333
|
+
*/
|
|
334
|
+
export interface ClientWriteBatch {
|
|
335
|
+
set(ref: DocRefHandle, data: Record<string, unknown>, options?: {
|
|
336
|
+
merge?: boolean;
|
|
337
|
+
mergeFields?: string[];
|
|
338
|
+
}): ClientWriteBatch;
|
|
339
|
+
update(ref: DocRefHandle, data: Record<string, unknown>): ClientWriteBatch;
|
|
340
|
+
delete(ref: DocRefHandle): ClientWriteBatch;
|
|
341
|
+
commit(): Promise<void>;
|
|
342
|
+
}
|
|
343
|
+
export declare function writeBatch(db: ClientDb): ClientWriteBatch;
|
|
344
|
+
/** Client-side transaction handle. */
|
|
345
|
+
export interface ClientTransaction {
|
|
346
|
+
get(ref: DocRefHandle): Promise<ClientDocSnapshot>;
|
|
347
|
+
set(ref: DocRefHandle, data: Record<string, unknown>, options?: {
|
|
348
|
+
merge?: boolean;
|
|
349
|
+
mergeFields?: string[];
|
|
350
|
+
}): void;
|
|
351
|
+
update(ref: DocRefHandle, data: Record<string, unknown>): void;
|
|
352
|
+
delete(ref: DocRefHandle): void;
|
|
353
|
+
}
|
|
354
|
+
/**
|
|
355
|
+
* Run a transaction. Mirrors `pyric/firestore`'s `runTransaction(db, fn)`.
|
|
356
|
+
*
|
|
357
|
+
* MULTI-TAB CORRECTNESS — READ-SET VALIDATION + RETRY
|
|
358
|
+
* ----------------------------------------------------
|
|
359
|
+
* A transaction spans two messages: the `txn.get` RPC (read) and the
|
|
360
|
+
* `txnCommit` RPC (commit). Between those two messages another tab may
|
|
361
|
+
* write to a doc the current tab read — a silent lost update without
|
|
362
|
+
* validation. We fix this the standard way:
|
|
363
|
+
*
|
|
364
|
+
* 1. Each `txn.get(ref)` records `{ path, data }` in a per-attempt
|
|
365
|
+
* read-set (`data` is the raw `SerializedDocData` the worker
|
|
366
|
+
* returned, or `null` if the doc was missing).
|
|
367
|
+
* 2. `txnCommit` carries both `reads` (the read-set) and `writes`.
|
|
368
|
+
* 3. The worker re-reads each doc inside a sandbox transaction, re-
|
|
369
|
+
* serializes it the same way, and compares the JSON strings.
|
|
370
|
+
* Any mismatch → `{ ok: false, error: { code: 'aborted' } }`.
|
|
371
|
+
* 4. On `aborted`, the client discards the result of `updateFn` and
|
|
372
|
+
* re-runs it with a fresh transaction object (fresh reads, empty
|
|
373
|
+
* write buffer). Up to `TXN_MAX_ATTEMPTS` attempts are made.
|
|
374
|
+
* 5. After the cap, throws an error with `.code === 'aborted'`.
|
|
375
|
+
*
|
|
376
|
+
* This matches real Firestore's behaviour: the SDK retries `updateFn`
|
|
377
|
+
* on conflict rather than surfacing the error immediately.
|
|
378
|
+
*/
|
|
379
|
+
export declare function runTransaction<R>(db: ClientDb, updateFn: (txn: ClientTransaction) => Promise<R> | R): Promise<R>;
|
|
380
|
+
/**
|
|
381
|
+
* Deploy new rules to the worker's sandbox. Active onSnapshot listeners
|
|
382
|
+
* that were allowed by the old rules may start receiving error callbacks
|
|
383
|
+
* if the new rules deny them.
|
|
384
|
+
*/
|
|
385
|
+
export declare function setRules(db: ClientDb, source: string): Promise<{
|
|
386
|
+
warnings: unknown[];
|
|
387
|
+
}>;
|
|
388
|
+
export declare function setFirestoreRules(db: ClientDb, source: string): Promise<{
|
|
389
|
+
ok: boolean;
|
|
390
|
+
warnings: unknown[];
|
|
391
|
+
messages: unknown[];
|
|
392
|
+
}>;
|
|
393
|
+
export declare function setDatabaseRules(db: ClientDb | ClientRtdb, source: unknown): Promise<{
|
|
394
|
+
ok: boolean;
|
|
395
|
+
messages: unknown[];
|
|
396
|
+
}>;
|
|
397
|
+
export declare function getActiveRules(db: ClientDb | ClientRtdb, service?: 'firestore' | 'database'): Promise<unknown>;
|
|
398
|
+
export declare function getRulesStatus(db: ClientDb | ClientRtdb, service?: 'firestore' | 'database'): Promise<unknown>;
|
|
399
|
+
export declare function adminGetDocument(db: ClientDb, path: string): Promise<Record<string, unknown> | null>;
|
|
400
|
+
export declare function adminListDocuments(db: ClientDb, path: string): Promise<Array<{
|
|
401
|
+
path: string;
|
|
402
|
+
data: unknown;
|
|
403
|
+
phantom?: boolean;
|
|
404
|
+
}>>;
|
|
405
|
+
export declare function adminSetDocument(db: ClientDb, path: string, data: unknown): Promise<void>;
|
|
406
|
+
export declare function adminDeleteDocument(db: ClientDb, path: string): Promise<boolean>;
|
|
407
|
+
export declare function adminReadState(db: ClientDb, opts?: {
|
|
408
|
+
path?: string;
|
|
409
|
+
maxDepth?: number;
|
|
410
|
+
}): Promise<Record<string, unknown>>;
|
|
411
|
+
export declare function rtdbGetDatabase(source?: ClientDb | string | URL, name?: string): ClientRtdb;
|
|
412
|
+
export declare function rtdbRef(db: ClientRtdb, path?: string): RtdbRefHandle;
|
|
413
|
+
export declare function rtdbChild(parent: RtdbRefHandle, path: string): RtdbRefHandle;
|
|
414
|
+
export declare function rtdbGet(r: RtdbRefHandle): Promise<RtdbDataSnapshot>;
|
|
415
|
+
export declare function adminReadRtdbState(db: ClientDb | ClientRtdb): Promise<unknown>;
|
|
416
|
+
export declare function adminSetRtdbValue(db: ClientDb | ClientRtdb, path: string, value: unknown): Promise<void>;
|
|
417
|
+
export declare function adminUpdateRtdbValue(db: ClientDb | ClientRtdb, path: string, values: Record<string, unknown>): Promise<void>;
|
|
418
|
+
export declare function adminDeleteRtdbValue(db: ClientDb | ClientRtdb, path: string): Promise<void>;
|
|
419
|
+
/**
|
|
420
|
+
* Subscribe to the raw value at an RTDB path with the ADMIN lens (Pyric Studio
|
|
421
|
+
* data viewer). Rides the same `{service:'rtdb'}` value-subscription channel as
|
|
422
|
+
* `rtdbOnValue`, but pins `actAs: {mode:'admin'}` per-sub instead of following
|
|
423
|
+
* the module default lens, so Studio's viewer stays admin (PRINCIPLES M3) while
|
|
424
|
+
* the page's own listeners keep their session semantics.
|
|
425
|
+
*
|
|
426
|
+
* `next` receives the plain JSON value at `path` (`null` when absent) on
|
|
427
|
+
* subscribe and again after every write that changes the subtree.
|
|
428
|
+
*/
|
|
429
|
+
export declare function adminSubscribeRtdbValue(db: ClientDb | ClientRtdb, path: string, next: (value: unknown) => void, error?: (err: unknown) => void): Unsubscribe;
|
|
430
|
+
export declare function rtdbSet(r: RtdbRefHandle, value: unknown): Promise<void>;
|
|
431
|
+
export declare function rtdbUpdate(r: RtdbRefHandle, values: Record<string, unknown>): Promise<void>;
|
|
432
|
+
export declare function rtdbRemove(r: RtdbRefHandle): Promise<void>;
|
|
433
|
+
export declare function rtdbPush(r: RtdbRefHandle, value?: unknown): RtdbRefHandle & PromiseLike<RtdbRefHandle>;
|
|
434
|
+
export declare function rtdbOnValue(r: RtdbRefHandle, next: (snap: RtdbDataSnapshot) => void, error?: (err: unknown) => void): Unsubscribe;
|
|
435
|
+
export declare function rtdbOff(_r: RtdbRefHandle, _eventType?: unknown, _callback?: unknown): void;
|
|
436
|
+
export declare function rtdbServerTimestamp(): {
|
|
437
|
+
readonly __rtdbSentinel: 'serverTimestamp';
|
|
438
|
+
};
|
|
439
|
+
export declare function rtdbConnectDatabaseEmulator(): void;
|
|
440
|
+
/**
|
|
441
|
+
* Subscribe to the worker sandbox's unified event stream. The callback fires
|
|
442
|
+
* with each delivered BATCH of events — the FIRST call carries the initial
|
|
443
|
+
* `history()` snapshot (possibly empty), each subsequent call carries one live
|
|
444
|
+
* event. Returns an unsubscribe that deregisters on the worker.
|
|
445
|
+
*
|
|
446
|
+
* This is the live counterpart to `sandbox.onEvent` + an initial `history()`
|
|
447
|
+
* fold, collapsed into one subscription so a late subscriber never misses the
|
|
448
|
+
* backlog.
|
|
449
|
+
*/
|
|
450
|
+
export declare function subscribeEvents(db: ClientDb, callback: (events: readonly SandboxEvent[]) => void): Unsubscribe;
|
|
451
|
+
/**
|
|
452
|
+
* Fetch the worker sandbox's event history as a one-shot snapshot (every event
|
|
453
|
+
* so far). Opens a transient stream sub, resolves with the initial history
|
|
454
|
+
* batch, and tears the sub down immediately — so it never holds a live
|
|
455
|
+
* subscription. Useful for a late, snapshot-only consumer.
|
|
456
|
+
*/
|
|
457
|
+
export declare function eventHistory(db: ClientDb): Promise<readonly SandboxEvent[]>;
|
|
458
|
+
/** Push the active runtime confirm-policy to the worker (Pyric Studio F3). */
|
|
459
|
+
export declare function setPolicy(db: ClientDb, policy: PolicyRequest): Promise<void>;
|
|
460
|
+
/** Read the active runtime confirm-policy back (null until the dial set one). */
|
|
461
|
+
export declare function getPolicy(db: ClientDb): Promise<PolicyRequest | null>;
|
|
462
|
+
/**
|
|
463
|
+
* Export the current sandbox snapshot (Pyric Studio rules re-run). Studio forks
|
|
464
|
+
* it locally to test a denied op against edited rules or re-issue it as the
|
|
465
|
+
* attempting user, on a throwaway branch (no live mutation).
|
|
466
|
+
*/
|
|
467
|
+
export declare function getSnapshot(db: ClientDb): Promise<SandboxSnapshot>;
|
|
468
|
+
/**
|
|
469
|
+
* Client-side User — a snapshot of the worker's `User` with token accessors
|
|
470
|
+
* that RPC back to the worker. Mirrors `firebase/auth`'s `User` shape.
|
|
471
|
+
*/
|
|
472
|
+
export interface ClientUser {
|
|
473
|
+
readonly uid: string;
|
|
474
|
+
readonly email: string | null;
|
|
475
|
+
readonly emailVerified: boolean;
|
|
476
|
+
readonly displayName: string | null;
|
|
477
|
+
readonly photoURL: string | null;
|
|
478
|
+
readonly phoneNumber: string | null;
|
|
479
|
+
readonly isAnonymous: boolean;
|
|
480
|
+
readonly providerId: string | null;
|
|
481
|
+
readonly providerData: SerializedUser['providerData'];
|
|
482
|
+
getIdToken(forceRefresh?: boolean): Promise<string>;
|
|
483
|
+
getIdTokenResult(forceRefresh?: boolean): Promise<SerializedIdTokenResult>;
|
|
484
|
+
}
|
|
485
|
+
/** Client-side UserCredential — mirrors `firebase/auth`. */
|
|
486
|
+
export interface ClientUserCredential {
|
|
487
|
+
user: ClientUser;
|
|
488
|
+
providerId: string | null;
|
|
489
|
+
operationType: 'signIn' | 'reauthenticate' | 'link';
|
|
490
|
+
}
|
|
491
|
+
/**
|
|
492
|
+
* Client-side Auth handle. Holds the port + a local `currentUser` mirror.
|
|
493
|
+
* Returned by `getAuth(db | workerUrl)`. Mirrors `firebase/auth`'s `Auth`.
|
|
494
|
+
*/
|
|
495
|
+
export interface ClientAuth {
|
|
496
|
+
readonly __kind: 'client-auth';
|
|
497
|
+
readonly port: MessagePort;
|
|
498
|
+
/** Local mirror of the worker's currentUser, updated from the stream. */
|
|
499
|
+
currentUser: ClientUser | null;
|
|
500
|
+
}
|
|
501
|
+
/**
|
|
502
|
+
* Get the worker-backed Auth handle.
|
|
503
|
+
*
|
|
504
|
+
* Mirrors `pyric/auth`'s `getAuth(sandbox)` / `firebase/auth`'s
|
|
505
|
+
* `getAuth(app)` — but the input is either an existing `ClientDb` (reusing
|
|
506
|
+
* its port, the common case in serve where Firestore + auth share one
|
|
507
|
+
* worker) or a worker URL (standalone).
|
|
508
|
+
*
|
|
509
|
+
* The returned handle seeds its `currentUser` mirror by opening an internal
|
|
510
|
+
* authState subscription that keeps it live across tabs.
|
|
511
|
+
*/
|
|
512
|
+
export declare function getAuth(source: ClientDb | string | URL, name?: string): ClientAuth;
|
|
513
|
+
/**
|
|
514
|
+
* Connect to the auth emulator. No-op shim over the worker: the worker's
|
|
515
|
+
* sandbox IS the emulator-equivalent backend, so there's nothing to point at.
|
|
516
|
+
* Present for surface parity so app code that calls it doesn't break.
|
|
517
|
+
*/
|
|
518
|
+
export declare function connectAuthEmulator(_auth: ClientAuth, _url: string, _options?: {
|
|
519
|
+
disableWarnings?: boolean;
|
|
520
|
+
}): void;
|
|
521
|
+
export declare function createUserWithEmailAndPassword(auth: ClientAuth, email: string, password: string): Promise<ClientUserCredential>;
|
|
522
|
+
export declare function listUsers(auth: ClientAuth): Promise<AuthUserRecord[]>;
|
|
523
|
+
export declare function adminCreateUser(auth: ClientAuth, request: CreateUserRequest): Promise<AuthUserRecord>;
|
|
524
|
+
export declare function adminUpdateUser(auth: ClientAuth, uid: string, request: UpdateUserRequest): Promise<AuthUserRecord>;
|
|
525
|
+
export declare function adminDeleteUser(auth: ClientAuth, uid: string): Promise<void>;
|
|
526
|
+
export declare function adminClearUsers(auth: ClientAuth): Promise<void>;
|
|
527
|
+
export declare function getProviderConfig(auth: ClientAuth): Promise<Array<{
|
|
528
|
+
providerId: string;
|
|
529
|
+
enabled: boolean;
|
|
530
|
+
}>>;
|
|
531
|
+
export declare function setProviderConfig(auth: ClientAuth, providerId: string, enabled: boolean): Promise<void>;
|
|
532
|
+
export declare function signInWithEmailAndPassword(auth: ClientAuth, email: string, password: string): Promise<ClientUserCredential>;
|
|
533
|
+
export declare function signInAnonymously(auth: ClientAuth): Promise<ClientUserCredential>;
|
|
534
|
+
export declare function signOut(auth: ClientAuth): Promise<void>;
|
|
535
|
+
/**
|
|
536
|
+
* Bridge a provider identity resolved IN-PAGE to the worker (the provider
|
|
537
|
+
* sign-in seam). The entry adapter's worker-path `signInWithPopup`/
|
|
538
|
+
* `signInWithRedirect` runs the in-page `AuthFlowResolver` (which can't cross
|
|
539
|
+
* the worker port), then calls this with the picked identity; the worker seeds
|
|
540
|
+
* it + signs it in, returning a worker-backed credential. The mirror updates
|
|
541
|
+
* eagerly (like the email/anon paths) so a synchronous `auth.currentUser`
|
|
542
|
+
* read right after the await reflects the new user.
|
|
543
|
+
*/
|
|
544
|
+
export declare function acceptProviderCredential(auth: ClientAuth, identity: ResolvedIdentity): Promise<ClientUserCredential>;
|
|
545
|
+
/**
|
|
546
|
+
* Re-establish THIS PORT's session for an existing identity (#754) — the
|
|
547
|
+
* per-tab reload restore. The page persists its uid in web storage
|
|
548
|
+
* (SessionStore); runtime.ts calls this at boot BEFORE app code runs. Soft:
|
|
549
|
+
* returns null (and leaves the port signed out) when the uid no longer
|
|
550
|
+
* resolves, so a stale record never throws.
|
|
551
|
+
*/
|
|
552
|
+
export declare function restorePortSession(auth: ClientAuth, uid: string): Promise<ClientUser | null>;
|
|
553
|
+
/** Persistence markers — mirror `firebase/auth` / `pyric/auth`. */
|
|
554
|
+
export declare const inMemoryPersistence: {
|
|
555
|
+
readonly type: "NONE";
|
|
556
|
+
};
|
|
557
|
+
export declare const browserSessionPersistence: {
|
|
558
|
+
readonly type: "SESSION";
|
|
559
|
+
};
|
|
560
|
+
export declare const browserLocalPersistence: {
|
|
561
|
+
readonly type: "LOCAL";
|
|
562
|
+
};
|
|
563
|
+
export type ClientPersistence = {
|
|
564
|
+
readonly type: AuthPersistenceMode;
|
|
565
|
+
};
|
|
566
|
+
/**
|
|
567
|
+
* Record the session-persistence mode on the worker (surface parity). The
|
|
568
|
+
* effective persistence is CLIENT-side (#754): the entry adapter mirrors the
|
|
569
|
+
* mode into the page's SessionStore, which decides where — or whether — this
|
|
570
|
+
* tab's session uid is stored for reload restore.
|
|
571
|
+
*/
|
|
572
|
+
export declare function setPersistence(auth: ClientAuth, persistence: ClientPersistence): Promise<void>;
|
|
573
|
+
/**
|
|
574
|
+
* Subscribe to auth-state changes. Mirrors `firebase/auth`'s
|
|
575
|
+
* `onAuthStateChanged`. Fires immediately with THIS PORT's current session,
|
|
576
|
+
* then on every change to it (#754: sessions are per-port — another tab's
|
|
577
|
+
* sign-in is a different user, not an update to this one). Updates the
|
|
578
|
+
* handle's `currentUser` mirror before invoking the callback.
|
|
579
|
+
*/
|
|
580
|
+
export declare function onAuthStateChanged(auth: ClientAuth, callback: (user: ClientUser | null) => void): Unsubscribe;
|
|
581
|
+
/**
|
|
582
|
+
* Subscribe to ID-token changes. Mirrors `firebase/auth`'s
|
|
583
|
+
* `onIdTokenChanged` — fires on THIS PORT's identity transitions (per-port
|
|
584
|
+
* sessions, #754).
|
|
585
|
+
*/
|
|
586
|
+
export declare function onIdTokenChanged(auth: ClientAuth, callback: (user: ClientUser | null) => void): Unsubscribe;
|
|
587
|
+
/** Top-level mirror of `firebase/auth`'s `getIdToken(user)`. */
|
|
588
|
+
export declare function getIdToken(user: ClientUser, forceRefresh?: boolean): Promise<string>;
|
|
589
|
+
/** Top-level mirror of `firebase/auth`'s `getIdTokenResult(user)`. */
|
|
590
|
+
export declare function getIdTokenResult(user: ClientUser, forceRefresh?: boolean): Promise<SerializedIdTokenResult>;
|
|
591
|
+
/**
|
|
592
|
+
* Top-level mirror of `firebase/auth`'s `updateProfile(user, profile)` over
|
|
593
|
+
* the worker. RPCs `auth.updateProfile` for THIS PORT's session (the worker
|
|
594
|
+
* owns the real `User`), then mutates the passed `user` mirror in place with
|
|
595
|
+
* the returned fields so a synchronous read right after the await is
|
|
596
|
+
* consistent. `null` clears a field; an absent field is left untouched.
|
|
597
|
+
*
|
|
598
|
+
* The port is recovered from the hidden {@link CLIENT_USER_PORT} handle stamped
|
|
599
|
+
* on every `ClientUser`, so this works without an `auth` handle in scope.
|
|
600
|
+
*/
|
|
601
|
+
export declare function updateProfile(user: ClientUser, profile: {
|
|
602
|
+
displayName?: string | null;
|
|
603
|
+
photoURL?: string | null;
|
|
604
|
+
}): Promise<void>;
|
|
605
|
+
/**
|
|
606
|
+
* Provider sign-in (`signInWithCredential`, `signInWithPopup`,
|
|
607
|
+
* `signInWithRedirect`) needs the AuthFlowResolver, which lives in-page and
|
|
608
|
+
* can't cross the worker port. NOT SUPPORTED over the SharedWorker in v1 —
|
|
609
|
+
* a clear error rather than silent breakage. Tracked as a Phase 2 follow-up:
|
|
610
|
+
* thread the resolver through, or run provider flows in-page and hand the
|
|
611
|
+
* resulting credential to the worker.
|
|
612
|
+
*/
|
|
613
|
+
export declare function signInWithCredential(): Promise<never>;
|
|
614
|
+
/** Worker-backed Storage handle (carries the shared `MessagePort`). */
|
|
615
|
+
export interface ClientFirebaseStorage {
|
|
616
|
+
readonly __kind: 'client-storage';
|
|
617
|
+
readonly port: MessagePort;
|
|
618
|
+
}
|
|
619
|
+
/** Worker-backed Storage reference (path + name; carries the port for ops). */
|
|
620
|
+
export interface ClientStorageReference {
|
|
621
|
+
readonly __kind: 'storage-ref';
|
|
622
|
+
readonly port: MessagePort;
|
|
623
|
+
readonly fullPath: string;
|
|
624
|
+
readonly name: string;
|
|
625
|
+
}
|
|
626
|
+
/**
|
|
627
|
+
* Get the worker-backed Storage handle. Like `getAuth`, accepts an existing
|
|
628
|
+
* `ClientDb` (reusing its port) or a worker URL (standalone).
|
|
629
|
+
*/
|
|
630
|
+
export declare function getStorage(source: ClientDb | string | URL, name?: string): ClientFirebaseStorage;
|
|
631
|
+
/** Build a Storage reference. Mirrors `pyric/storage`'s `ref(storage, path?)` /
|
|
632
|
+
* `ref(parentRef, path)`. Client-side path math; no RPC. */
|
|
633
|
+
export declare function ref(parent: ClientFirebaseStorage | ClientStorageReference, path?: string): ClientStorageReference;
|
|
634
|
+
/** Enumerate immediate child items + sub-prefixes under a ref (Pyric Studio
|
|
635
|
+
* data browse). The host enforces `read` rules on the scanned prefix. */
|
|
636
|
+
export declare function listAll(reference: ClientStorageReference): Promise<{
|
|
637
|
+
items: ClientStorageReference[];
|
|
638
|
+
prefixes: ClientStorageReference[];
|
|
639
|
+
}>;
|
|
640
|
+
/** Read an object's metadata (Pyric Studio inspector). */
|
|
641
|
+
export declare function getMetadata(reference: ClientStorageReference): Promise<FullMetadata>;
|
|
642
|
+
/** Read an object's bytes as a Blob (Pyric Studio inspector preview).
|
|
643
|
+
* MessagePort-only — a Blob cannot cross the JSON bridge relay. */
|
|
644
|
+
export declare function getBlob(reference: ClientStorageReference): Promise<Blob>;
|
|
645
|
+
/** Mirror of `pyric/storage`'s `SettableMetadata` (plain JSON on the wire). */
|
|
646
|
+
export interface ClientSettableMetadata {
|
|
647
|
+
contentType?: string;
|
|
648
|
+
cacheControl?: string;
|
|
649
|
+
contentDisposition?: string;
|
|
650
|
+
contentEncoding?: string;
|
|
651
|
+
contentLanguage?: string;
|
|
652
|
+
customMetadata?: {
|
|
653
|
+
[key: string]: string;
|
|
654
|
+
};
|
|
655
|
+
}
|
|
656
|
+
/** Upload bytes at the reference's path (replaces existing content).
|
|
657
|
+
* Mirrors `pyric/storage`'s `uploadBytes` result shape. */
|
|
658
|
+
export declare function uploadBytes(reference: ClientStorageReference, data: Blob | Uint8Array | ArrayBuffer, metadata?: ClientSettableMetadata): Promise<{
|
|
659
|
+
ref: ClientStorageReference;
|
|
660
|
+
metadata: FullMetadata;
|
|
661
|
+
}>;
|
|
662
|
+
/** Read an object's bytes (JSON-safe base64 op → `ArrayBuffer`). Mirrors
|
|
663
|
+
* `pyric/storage`'s `getBytes`, including the optional client-side cap. */
|
|
664
|
+
export declare function getBytes(reference: ClientStorageReference, maxDownloadSizeBytes?: number): Promise<ArrayBuffer>;
|
|
665
|
+
/** Delete the object at the reference's path (idempotent — missing = no-op,
|
|
666
|
+
* matching the sandbox backend's delete semantics). */
|
|
667
|
+
export declare function deleteObject(reference: ClientStorageReference): Promise<void>;
|
|
668
|
+
//# sourceMappingURL=client.d.ts.map
|