@pyric/cli 0.1.0-alpha.19 → 0.1.0-alpha.21
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 +64 -89
- package/dist/assurance/.generated/conformance-verdicts.d.ts +68 -1
- package/dist/assurance/.generated/conformance-verdicts.d.ts.map +1 -1
- package/dist/assurance/.generated/conformance-verdicts.js +68 -1
- package/dist/assurance/.generated/conformance-verdicts.js.map +1 -1
- package/dist/bridge/client/dispatch.d.ts +25 -19
- package/dist/bridge/client/dispatch.d.ts.map +1 -1
- package/dist/bridge/client/dispatch.js +41 -48
- package/dist/bridge/client/dispatch.js.map +1 -1
- package/dist/bridge/client/tool-family-factories.d.ts +26 -0
- package/dist/bridge/client/tool-family-factories.d.ts.map +1 -0
- package/dist/bridge/client/tool-family-factories.js +10 -0
- package/dist/bridge/client/tool-family-factories.js.map +1 -0
- package/dist/bridge/server/mcp-contract.d.ts +7 -6
- package/dist/bridge/server/mcp-contract.d.ts.map +1 -1
- package/dist/bridge/server/mcp-contract.js +9 -48
- package/dist/bridge/server/mcp-contract.js.map +1 -1
- package/dist/bridge/server/peer.d.ts +11 -1
- package/dist/bridge/server/peer.d.ts.map +1 -1
- package/dist/bridge/server/peer.js +22 -1
- package/dist/bridge/server/peer.js.map +1 -1
- package/dist/bridge/server/tool-family-factories.d.ts +30 -0
- package/dist/bridge/server/tool-family-factories.d.ts.map +1 -0
- package/dist/bridge/server/tool-family-factories.js +22 -0
- package/dist/bridge/server/tool-family-factories.js.map +1 -0
- package/dist/bridge/server/tool-metadata.d.ts +17 -18
- package/dist/bridge/server/tool-metadata.d.ts.map +1 -1
- package/dist/bridge/server/tool-metadata.js +24 -59
- package/dist/bridge/server/tool-metadata.js.map +1 -1
- package/dist/bridge/tool-families.d.ts +48 -0
- package/dist/bridge/tool-families.d.ts.map +1 -0
- package/dist/bridge/tool-families.generated.d.ts +32 -0
- package/dist/bridge/tool-families.generated.d.ts.map +1 -0
- package/dist/bridge/tool-families.generated.js +15 -0
- package/dist/bridge/tool-families.generated.js.map +1 -0
- package/dist/bridge/tool-families.js +51 -0
- package/dist/bridge/tool-families.js.map +1 -0
- package/dist/bridge/tool-family-records/conformance.d.ts +7 -0
- package/dist/bridge/tool-family-records/conformance.d.ts.map +1 -0
- package/dist/bridge/tool-family-records/conformance.js +6 -0
- package/dist/bridge/tool-family-records/conformance.js.map +1 -0
- package/dist/bridge/tool-family-records/firestore-data.d.ts +7 -0
- package/dist/bridge/tool-family-records/firestore-data.d.ts.map +1 -0
- package/dist/bridge/tool-family-records/firestore-data.js +15 -0
- package/dist/bridge/tool-family-records/firestore-data.js.map +1 -0
- package/dist/bridge/tool-family-records/firestore-inspect.d.ts +7 -0
- package/dist/bridge/tool-family-records/firestore-inspect.d.ts.map +1 -0
- package/dist/bridge/tool-family-records/firestore-inspect.js +6 -0
- package/dist/bridge/tool-family-records/firestore-inspect.js.map +1 -0
- package/dist/bridge/tool-family-records/firestore-rules.d.ts +7 -0
- package/dist/bridge/tool-family-records/firestore-rules.d.ts.map +1 -0
- package/dist/bridge/tool-family-records/firestore-rules.js +15 -0
- package/dist/bridge/tool-family-records/firestore-rules.js.map +1 -0
- package/dist/bridge/tool-family-records/firestore-simulator.d.ts +7 -0
- package/dist/bridge/tool-family-records/firestore-simulator.d.ts.map +1 -0
- package/dist/bridge/tool-family-records/firestore-simulator.js +16 -0
- package/dist/bridge/tool-family-records/firestore-simulator.js.map +1 -0
- package/dist/bridge/tool-family-records/rtdb-inspection.d.ts +7 -0
- package/dist/bridge/tool-family-records/rtdb-inspection.d.ts.map +1 -0
- package/dist/bridge/tool-family-records/rtdb-inspection.js +6 -0
- package/dist/bridge/tool-family-records/rtdb-inspection.js.map +1 -0
- package/dist/bundler/externals.d.ts +37 -0
- package/dist/bundler/externals.d.ts.map +1 -0
- package/dist/bundler/externals.js +52 -0
- package/dist/bundler/externals.js.map +1 -0
- package/dist/bundler/index.d.ts +17 -0
- package/dist/bundler/index.d.ts.map +1 -0
- package/dist/bundler/index.js +17 -0
- package/dist/bundler/index.js.map +1 -0
- package/dist/cli/index.d.ts +2 -2
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +48 -42
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/inlined-sdk-scanner.d.ts +6 -0
- package/dist/cli/inlined-sdk-scanner.d.ts.map +1 -0
- package/dist/cli/inlined-sdk-scanner.js +82 -0
- package/dist/cli/inlined-sdk-scanner.js.map +1 -0
- package/dist/cli/mcp-proxy.js +3 -3
- package/dist/cli/mcp-proxy.js.map +1 -1
- package/dist/cli/parse-args.d.ts +1 -1
- package/dist/cli/parse-args.d.ts.map +1 -1
- package/dist/cli/parse-args.js +51 -15
- package/dist/cli/parse-args.js.map +1 -1
- package/dist/cli/pyric-config.d.ts +24 -0
- package/dist/cli/pyric-config.d.ts.map +1 -0
- package/dist/cli/pyric-config.js +28 -0
- package/dist/cli/pyric-config.js.map +1 -0
- package/dist/cli/sandbox-interlock.d.ts +97 -0
- package/dist/cli/sandbox-interlock.d.ts.map +1 -0
- package/dist/cli/sandbox-interlock.js +112 -0
- package/dist/cli/sandbox-interlock.js.map +1 -0
- package/dist/cli/{dev-runner.d.ts → sandbox-runner.d.ts} +53 -48
- package/dist/cli/sandbox-runner.d.ts.map +1 -0
- package/dist/cli/{dev-runner.js → sandbox-runner.js} +105 -67
- package/dist/cli/sandbox-runner.js.map +1 -0
- package/dist/cli/serve.d.ts +12 -14
- package/dist/cli/serve.d.ts.map +1 -1
- package/dist/cli/serve.js +155 -116
- package/dist/cli/serve.js.map +1 -1
- package/dist/cli/snapshot.js +5 -5
- package/dist/cli/snapshot.js.map +1 -1
- package/dist/cli/unsupported-runtime.d.ts +27 -0
- package/dist/cli/unsupported-runtime.d.ts.map +1 -0
- package/dist/cli/unsupported-runtime.js +63 -0
- package/dist/cli/unsupported-runtime.js.map +1 -0
- package/dist/cli/verify.js +1 -1
- package/dist/cli/verify.js.map +1 -1
- package/dist/conformance/.generated/can-i-use-browser.d.ts +1 -1
- package/dist/conformance/.generated/can-i-use-browser.d.ts.map +1 -1
- package/dist/conformance/.generated/can-i-use-browser.js +1 -1
- package/dist/conformance/.generated/can-i-use-browser.js.map +1 -1
- package/dist/conformance/.generated/can-i-use.d.ts +1 -1
- package/dist/conformance/.generated/can-i-use.d.ts.map +1 -1
- package/dist/conformance/.generated/can-i-use.js +1 -1
- package/dist/conformance/.generated/can-i-use.js.map +1 -1
- package/dist/conformance/.generated/conformance-docs.d.ts.map +1 -1
- package/dist/conformance/.generated/conformance-docs.js +1 -1
- package/dist/conformance/.generated/conformance-docs.js.map +1 -1
- package/dist/functions-rtdb/child.d.ts +37 -0
- package/dist/functions-rtdb/child.d.ts.map +1 -1
- package/dist/functions-rtdb/child.js +90 -21
- package/dist/functions-rtdb/child.js.map +1 -1
- package/dist/functions-rtdb/development-runtime.d.ts +3 -0
- package/dist/functions-rtdb/development-runtime.d.ts.map +1 -1
- package/dist/functions-rtdb/development-runtime.js +2 -1
- package/dist/functions-rtdb/development-runtime.js.map +1 -1
- package/dist/functions-rtdb/project.js +8 -8
- package/dist/functions-rtdb/project.js.map +1 -1
- package/dist/google-endpoints.d.ts +67 -0
- package/dist/google-endpoints.d.ts.map +1 -0
- package/dist/google-endpoints.js +119 -0
- package/dist/google-endpoints.js.map +1 -0
- package/dist/next/guard.js +1 -1
- package/dist/next/guard.js.map +1 -1
- package/dist/next/runtime-env.d.ts.map +1 -1
- package/dist/next/runtime-env.js +5 -0
- package/dist/next/runtime-env.js.map +1 -1
- package/dist/next/with-pyric.d.ts +1 -1
- package/dist/next/with-pyric.js +1 -1
- package/dist/register/beacon.d.ts +69 -0
- package/dist/register/beacon.d.ts.map +1 -0
- package/dist/register/beacon.js +199 -0
- package/dist/register/beacon.js.map +1 -0
- package/dist/register/index.d.ts.map +1 -1
- package/dist/register/index.js +65 -6
- package/dist/register/index.js.map +1 -1
- package/dist/register/net-guard.d.ts +110 -0
- package/dist/register/net-guard.d.ts.map +1 -0
- package/dist/register/net-guard.js +462 -0
- package/dist/register/net-guard.js.map +1 -0
- package/dist/remote/index.d.ts +1 -1
- package/dist/remote/index.js +9 -9
- package/dist/remote/index.js.map +1 -1
- package/dist/serve/ai-diagnostics-relay.d.ts +63 -0
- package/dist/serve/ai-diagnostics-relay.d.ts.map +1 -0
- package/dist/serve/ai-diagnostics-relay.js +125 -0
- package/dist/serve/ai-diagnostics-relay.js.map +1 -0
- package/dist/serve/ai-proxy.d.ts +92 -0
- package/dist/serve/ai-proxy.d.ts.map +1 -0
- package/dist/serve/ai-proxy.js +269 -0
- package/dist/serve/ai-proxy.js.map +1 -0
- package/dist/serve/ai-status.d.ts +44 -0
- package/dist/serve/ai-status.d.ts.map +1 -0
- package/dist/serve/ai-status.js +77 -0
- package/dist/serve/ai-status.js.map +1 -0
- package/dist/serve/ai-terminal-blocks.d.ts +97 -0
- package/dist/serve/ai-terminal-blocks.d.ts.map +1 -0
- package/dist/serve/ai-terminal-blocks.js +128 -0
- package/dist/serve/ai-terminal-blocks.js.map +1 -0
- package/dist/serve/ai-terminal-text.d.ts +36 -0
- package/dist/serve/ai-terminal-text.d.ts.map +1 -0
- package/dist/serve/ai-terminal-text.js +48 -0
- package/dist/serve/ai-terminal-text.js.map +1 -0
- package/dist/serve/beacon-route.d.ts +53 -0
- package/dist/serve/beacon-route.d.ts.map +1 -0
- package/dist/serve/beacon-route.js +101 -0
- package/dist/serve/beacon-route.js.map +1 -0
- package/dist/serve/bundler.js +10 -10
- package/dist/serve/bundler.js.map +1 -1
- package/dist/serve/entries/active-auth-registry.d.ts +16 -0
- package/dist/serve/entries/active-auth-registry.d.ts.map +1 -0
- package/dist/serve/entries/active-auth-registry.js +48 -0
- package/dist/serve/entries/active-auth-registry.js.map +1 -0
- package/dist/serve/entries/active-auth.d.ts +18 -0
- package/dist/serve/entries/active-auth.d.ts.map +1 -0
- package/dist/serve/entries/active-auth.js +84 -0
- package/dist/serve/entries/active-auth.js.map +1 -0
- package/dist/serve/entries/ai.d.ts.map +1 -1
- package/dist/serve/entries/ai.js +27 -1
- package/dist/serve/entries/ai.js.map +1 -1
- package/dist/serve/entries/auth-helper-core.d.ts +1 -0
- package/dist/serve/entries/auth-helper-core.d.ts.map +1 -1
- package/dist/serve/entries/auth-helper-core.js +4 -0
- package/dist/serve/entries/auth-helper-core.js.map +1 -1
- package/dist/serve/entries/auth-helper-dom.d.ts.map +1 -1
- package/dist/serve/entries/auth-helper-dom.js +29 -3
- package/dist/serve/entries/auth-helper-dom.js.map +1 -1
- package/dist/serve/entries/auth-helper-runtime.js +1 -1
- package/dist/serve/entries/auth-helper-runtime.js.map +1 -1
- package/dist/serve/entries/auth.d.ts.map +1 -1
- package/dist/serve/entries/auth.js +8 -0
- package/dist/serve/entries/auth.js.map +1 -1
- package/dist/serve/entries/bridge-url.d.ts +1 -1
- package/dist/serve/entries/bridge-url.js +1 -1
- package/dist/serve/entries/firestore.js +3 -3
- package/dist/serve/entries/firestore.js.map +1 -1
- package/dist/serve/entries/init.d.ts.map +1 -1
- package/dist/serve/entries/init.js +70 -4
- package/dist/serve/entries/init.js.map +1 -1
- package/dist/serve/entries/keepalive.js +1 -1
- package/dist/serve/entries/keepalive.js.map +1 -1
- package/dist/serve/entries/runtime.d.ts.map +1 -1
- package/dist/serve/entries/runtime.js +30 -14
- package/dist/serve/entries/runtime.js.map +1 -1
- package/dist/serve/entries/storage.js +1 -1
- package/dist/serve/entries/storage.js.map +1 -1
- package/dist/serve/entries/worker-runtime.js +1 -1
- package/dist/serve/entries/worker-runtime.js.map +1 -1
- package/dist/serve/init-payload.d.ts +4 -0
- package/dist/serve/init-payload.d.ts.map +1 -1
- package/dist/serve/namespace.d.ts +20 -5
- package/dist/serve/namespace.d.ts.map +1 -1
- package/dist/serve/namespace.js +93 -129
- package/dist/serve/namespace.js.map +1 -1
- package/dist/serve/rules.d.ts.map +1 -1
- package/dist/serve/rules.js +44 -21
- package/dist/serve/rules.js.map +1 -1
- package/dist/serve/runtime/chip-config.d.ts.map +1 -1
- package/dist/serve/runtime/chip-config.js +16 -2
- package/dist/serve/runtime/chip-config.js.map +1 -1
- package/dist/serve/runtime/chip-dialog.d.ts +18 -0
- package/dist/serve/runtime/chip-dialog.d.ts.map +1 -0
- package/dist/serve/runtime/chip-dialog.js +315 -0
- package/dist/serve/runtime/chip-dialog.js.map +1 -0
- package/dist/serve/runtime/chip-install.d.ts +2 -0
- package/dist/serve/runtime/chip-install.d.ts.map +1 -1
- package/dist/serve/runtime/chip-install.js +9 -4
- package/dist/serve/runtime/chip-install.js.map +1 -1
- package/dist/serve/runtime/chip-user-search.d.ts +16 -0
- package/dist/serve/runtime/chip-user-search.d.ts.map +1 -0
- package/dist/serve/runtime/chip-user-search.js +354 -0
- package/dist/serve/runtime/chip-user-search.js.map +1 -0
- package/dist/serve/runtime/chip.d.ts +10 -0
- package/dist/serve/runtime/chip.d.ts.map +1 -1
- package/dist/serve/runtime/chip.js +149 -15
- package/dist/serve/runtime/chip.js.map +1 -1
- package/dist/serve/runtime/identity.d.ts +17 -0
- package/dist/serve/runtime/identity.d.ts.map +1 -0
- package/dist/serve/runtime/identity.js +10 -0
- package/dist/serve/runtime/identity.js.map +1 -0
- package/dist/serve/runtime/manifest.d.ts +1 -1
- package/dist/serve/runtime/manifest.d.ts.map +1 -1
- package/dist/serve/runtime/manifest.js +1 -1
- package/dist/serve/runtime/manifest.js.map +1 -1
- package/dist/serve/runtime/status.d.ts.map +1 -1
- package/dist/serve/runtime/status.js +23 -0
- package/dist/serve/runtime/status.js.map +1 -1
- package/dist/serve/sandbox-session.d.ts +8 -0
- package/dist/serve/sandbox-session.d.ts.map +1 -1
- package/dist/serve/sandbox-session.js +12 -4
- package/dist/serve/sandbox-session.js.map +1 -1
- package/dist/serve/server.d.ts +7 -0
- package/dist/serve/server.d.ts.map +1 -1
- package/dist/serve/server.js +15 -1
- package/dist/serve/server.js.map +1 -1
- package/dist/serve/site-ui/404.html +1 -1
- package/dist/serve/site-ui/_astro/{RulesCodeEditor.Bl-XMkhD.js → RulesCodeEditor.DsTAsKIa.js} +1 -1
- package/dist/serve/site-ui/_astro/_slug_.Da5VLhW1.css +1 -0
- package/dist/serve/site-ui/_astro/_studio_.BnfYCKoI.css +1 -0
- package/dist/serve/site-ui/_astro/app.BOr2kwae.js +115 -0
- package/dist/serve/site-ui/_astro/app.DhAcImFD.js +1 -0
- package/dist/serve/site-ui/_astro/app.pMSnN6Qw.css +1 -0
- package/dist/serve/site-ui/_astro/{chess-showcase.Dh5D8kqe.js → chess-showcase.Bn_pP6UJ.js} +2 -2
- package/dist/serve/site-ui/_astro/{example-runtime.CuyAjjiG.js → example-runtime.CXopTGv7.js} +1 -1
- package/dist/serve/site-ui/_astro/index.Tb-31efc.css +1 -0
- package/dist/serve/site-ui/_astro/index.UkCBr-_0.css +1 -0
- package/dist/serve/site-ui/_astro/sandbox-controls.rOuZTOUG.js +510 -0
- package/dist/serve/site-ui/_astro/{seed.CSUkloMi.js → seed.03a08f9t.js} +2 -2
- package/dist/serve/site-ui/_astro/writes.BsPBG3dp.js +653 -0
- package/dist/serve/site-ui/auth/index.html +5 -3
- package/dist/serve/site-ui/david-east.jpg +0 -0
- package/dist/serve/site-ui/docs/_rhythm/index.html +6 -3
- package/dist/serve/site-ui/docs/_rhythm.md +1 -1
- package/dist/serve/site-ui/docs/agent/set-up-your-agent/index.html +18 -15
- package/dist/serve/site-ui/docs/agent/set-up-your-agent.md +16 -16
- package/dist/serve/site-ui/docs/agent/watch-and-review/index.html +6 -5
- package/dist/serve/site-ui/docs/agent/watch-and-review.md +1 -5
- package/dist/serve/site-ui/docs/agent/work-with-an-agent/index.html +8 -5
- package/dist/serve/site-ui/docs/agent/work-with-an-agent.md +4 -4
- package/dist/serve/site-ui/docs/ai-compat/index.html +5 -2
- package/dist/serve/site-ui/docs/api-reference/index.html +13 -2
- package/dist/serve/site-ui/docs/api-reference.md +8 -0
- package/dist/serve/site-ui/docs/app-compat/index.html +5 -2
- package/dist/serve/site-ui/docs/auth-compat/index.html +7 -4
- package/dist/serve/site-ui/docs/auth-compat.md +2 -2
- package/dist/serve/site-ui/docs/build/ai-logic/index.html +10 -2
- package/dist/serve/site-ui/docs/build/ai-logic.md +6 -0
- package/dist/serve/site-ui/docs/build/authentication/index.html +7 -4
- package/dist/serve/site-ui/docs/build/authentication.md +2 -2
- package/dist/serve/site-ui/docs/build/cloud-firestore/index.html +5 -2
- package/dist/serve/site-ui/docs/build/cloud-messaging/index.html +5 -2
- package/dist/serve/site-ui/docs/build/cloud-storage/index.html +6 -3
- package/dist/serve/site-ui/docs/build/cloud-storage.md +1 -1
- package/dist/serve/site-ui/docs/build/realtime-database/index.html +9 -6
- package/dist/serve/site-ui/docs/build/realtime-database.md +4 -4
- package/dist/serve/site-ui/docs/conformance-scores/index.html +10 -3
- package/dist/serve/site-ui/docs/conformance-scores.md +5 -1
- package/dist/serve/site-ui/docs/create-pyric-reference-api/index.html +6 -3
- package/dist/serve/site-ui/docs/create-pyric-reference-api.md +1 -1
- package/dist/serve/site-ui/docs/database-compat/index.html +48 -45
- package/dist/serve/site-ui/docs/database-compat.md +43 -43
- package/dist/serve/site-ui/docs/examples/chess/index.html +5 -2
- package/dist/serve/site-ui/docs/examples/index.html +5 -2
- package/dist/serve/site-ui/docs/firestore-compat/index.html +8 -5
- package/dist/serve/site-ui/docs/firestore-compat.md +3 -3
- package/dist/serve/site-ui/docs/firestore-flutter-compat/index.html +319 -0
- package/dist/serve/site-ui/docs/firestore-flutter-compat.md +344 -0
- package/dist/serve/site-ui/docs/functions-rtdb-compat/index.html +5 -2
- package/dist/serve/site-ui/docs/get-started/backend-bundlers/index.html +105 -0
- package/dist/serve/site-ui/docs/get-started/backend-bundlers.md +165 -0
- package/dist/serve/site-ui/docs/get-started/how-the-swap-works/index.html +9 -6
- package/dist/serve/site-ui/docs/get-started/how-the-swap-works.md +5 -5
- package/dist/serve/site-ui/docs/get-started/nextjs/index.html +9 -6
- package/dist/serve/site-ui/docs/get-started/nextjs.md +4 -4
- package/dist/serve/site-ui/docs/get-started/start-building/index.html +14 -9
- package/dist/serve/site-ui/docs/get-started/start-building.md +16 -10
- package/dist/serve/site-ui/docs/get-started/vite/index.html +6 -3
- package/dist/serve/site-ui/docs/get-started/vite.md +1 -1
- package/dist/serve/site-ui/docs/index.json +3128 -1613
- package/dist/serve/site-ui/docs/messaging-compat/index.html +5 -2
- package/dist/serve/site-ui/docs/observe/resolve-runtime-status/index.html +5 -2
- package/dist/serve/site-ui/docs/observe/see-whats-happening/index.html +6 -4
- package/dist/serve/site-ui/docs/observe/see-whats-happening.md +2 -4
- package/dist/serve/site-ui/docs/observe/shape-your-data/index.html +9 -6
- package/dist/serve/site-ui/docs/observe/shape-your-data.md +4 -4
- package/dist/serve/site-ui/docs/overview/index.html +16 -10
- package/dist/serve/site-ui/docs/overview.md +19 -11
- package/dist/serve/site-ui/docs/pyric-admin-app-reference-api/index.html +5 -2
- package/dist/serve/site-ui/docs/pyric-admin-auth-reference-api/index.html +5 -2
- package/dist/serve/site-ui/docs/pyric-admin-database-reference-api/index.html +5 -2
- package/dist/serve/site-ui/docs/pyric-admin-firestore-reference-api/index.html +8 -5
- package/dist/serve/site-ui/docs/pyric-admin-firestore-reference-api.md +3 -3
- package/dist/serve/site-ui/docs/pyric-admin-messaging-reference-api/index.html +5 -2
- package/dist/serve/site-ui/docs/pyric-admin-reference-api/index.html +501 -0
- package/dist/serve/site-ui/docs/pyric-admin-reference-api.md +587 -0
- package/dist/serve/site-ui/docs/pyric-admin-storage-reference-api/index.html +5 -2
- package/dist/serve/site-ui/docs/pyric-ai-reference-api/index.html +5 -2
- package/dist/serve/site-ui/docs/pyric-ai-scripting-reference-api/index.html +5 -2
- package/dist/serve/site-ui/docs/pyric-analytics-reference-api/index.html +124 -0
- package/dist/serve/site-ui/docs/pyric-analytics-reference-api.md +287 -0
- package/dist/serve/site-ui/docs/pyric-app-check-reference-api/index.html +87 -0
- package/dist/serve/site-ui/docs/pyric-app-check-reference-api.md +199 -0
- package/dist/serve/site-ui/docs/pyric-app-reference-api/index.html +5 -2
- package/dist/serve/site-ui/docs/pyric-auth-reference-api/index.html +10 -3
- package/dist/serve/site-ui/docs/pyric-auth-reference-api.md +2 -1
- package/dist/serve/site-ui/docs/pyric-cli-assurance-browser-reference-api/index.html +5 -2
- package/dist/serve/site-ui/docs/pyric-cli-assurance-reference-api/index.html +5 -2
- package/dist/serve/site-ui/docs/pyric-cli-bridge-client-reference-api/index.html +6 -3
- package/dist/serve/site-ui/docs/pyric-cli-bridge-client-reference-api.md +1 -1
- package/dist/serve/site-ui/docs/pyric-cli-bridge-reference-api/index.html +5 -2
- package/dist/serve/site-ui/docs/pyric-cli-bundler-reference-api/index.html +56 -0
- package/dist/serve/site-ui/docs/pyric-cli-bundler-reference-api.md +72 -0
- package/dist/serve/site-ui/docs/pyric-cli-conformance-browser-reference-api/index.html +6 -2
- package/dist/serve/site-ui/docs/pyric-cli-conformance-browser-reference-api.md +1 -0
- package/dist/serve/site-ui/docs/pyric-cli-conformance-docs-reference-api/index.html +5 -2
- package/dist/serve/site-ui/docs/pyric-cli-conformance-reference-api/index.html +6 -2
- package/dist/serve/site-ui/docs/pyric-cli-conformance-reference-api.md +1 -0
- package/dist/serve/site-ui/docs/pyric-cli-credentials-node-reference-api/index.html +5 -2
- package/dist/serve/site-ui/docs/pyric-cli-discover-reference-api/index.html +5 -2
- package/dist/serve/site-ui/docs/pyric-cli-next-reference-api/index.html +6 -3
- package/dist/serve/site-ui/docs/pyric-cli-next-reference-api.md +1 -1
- package/dist/serve/site-ui/docs/pyric-cli-register-app-bridge-reference-api/index.html +5 -2
- package/dist/serve/site-ui/docs/pyric-cli-register-reference-api/index.html +5 -2
- package/dist/serve/site-ui/docs/pyric-cli-remote-reference-api/index.html +39 -11
- package/dist/serve/site-ui/docs/pyric-cli-remote-reference-api.md +17 -9
- package/dist/serve/site-ui/docs/pyric-cli-serve-worker-reference-api/index.html +137 -94
- package/dist/serve/site-ui/docs/pyric-cli-serve-worker-reference-api.md +61 -1
- package/dist/serve/site-ui/docs/pyric-cli-verify-reference-api/index.html +6 -3
- package/dist/serve/site-ui/docs/pyric-cli-verify-reference-api.md +1 -1
- package/dist/serve/site-ui/docs/pyric-cli-vite-reference-api/index.html +6 -3
- package/dist/serve/site-ui/docs/pyric-cli-vite-reference-api.md +2 -2
- package/dist/serve/site-ui/docs/pyric-database-reference-api/index.html +167 -96
- package/dist/serve/site-ui/docs/pyric-database-reference-api.md +108 -2
- package/dist/serve/site-ui/docs/pyric-firestore-lite-reference-api/index.html +559 -0
- package/dist/serve/site-ui/docs/pyric-firestore-lite-reference-api.md +1240 -0
- package/dist/serve/site-ui/docs/pyric-firestore-reference-api/index.html +44 -12
- package/dist/serve/site-ui/docs/pyric-firestore-reference-api.md +18 -8
- package/dist/serve/site-ui/docs/pyric-functions-reference-api/index.html +67 -0
- package/dist/serve/site-ui/docs/pyric-functions-reference-api.md +149 -0
- package/dist/serve/site-ui/docs/pyric-messaging-reference-api/index.html +10 -4
- package/dist/serve/site-ui/docs/pyric-messaging-reference-api.md +5 -2
- package/dist/serve/site-ui/docs/pyric-messaging-sw-reference-api/index.html +10 -4
- package/dist/serve/site-ui/docs/pyric-messaging-sw-reference-api.md +5 -2
- package/dist/serve/site-ui/docs/pyric-performance-reference-api/index.html +35 -0
- package/dist/serve/site-ui/docs/pyric-performance-reference-api.md +69 -0
- package/dist/serve/site-ui/docs/pyric-remote-config-reference-api/index.html +132 -0
- package/dist/serve/site-ui/docs/pyric-remote-config-reference-api.md +307 -0
- package/dist/serve/site-ui/docs/pyric-rules-reference-api/index.html +5 -2
- package/dist/serve/site-ui/docs/pyric-sandbox-database-reference-api/index.html +56 -18
- package/dist/serve/site-ui/docs/pyric-sandbox-database-reference-api.md +48 -9
- package/dist/serve/site-ui/docs/pyric-sandbox-firestore-reference-api/index.html +6 -3
- package/dist/serve/site-ui/docs/pyric-sandbox-firestore-reference-api.md +2 -2
- package/dist/serve/site-ui/docs/pyric-sandbox-reference-api/index.html +243 -50
- package/dist/serve/site-ui/docs/pyric-sandbox-reference-api.md +148 -31
- package/dist/serve/site-ui/docs/pyric-storage-reference-api/index.html +26 -5
- package/dist/serve/site-ui/docs/pyric-storage-reference-api.md +24 -2
- package/dist/serve/site-ui/docs/pyric-ui-agents-reference-api/index.html +30 -97
- package/dist/serve/site-ui/docs/pyric-ui-agents-reference-api.md +20 -51
- package/dist/serve/site-ui/docs/pyric-ui-auth-hooks-reference-api/index.html +5 -2
- package/dist/serve/site-ui/docs/pyric-ui-auth-reference-api/index.html +6 -3
- package/dist/serve/site-ui/docs/pyric-ui-auth-reference-api.md +1 -1
- package/dist/serve/site-ui/docs/pyric-ui-events-hooks-reference-api/index.html +5 -2
- package/dist/serve/site-ui/docs/pyric-ui-events-reference-api/index.html +5 -2
- package/dist/serve/site-ui/docs/pyric-ui-firestore-hooks-reference-api/index.html +5 -2
- package/dist/serve/site-ui/docs/pyric-ui-firestore-reference-api/index.html +6 -3
- package/dist/serve/site-ui/docs/pyric-ui-firestore-reference-api.md +1 -1
- package/dist/serve/site-ui/docs/pyric-ui-primitives-reference-api/index.html +128 -27
- package/dist/serve/site-ui/docs/pyric-ui-primitives-reference-api.md +58 -5
- package/dist/serve/site-ui/docs/pyric-ui-rtdb-reference-api/index.html +5 -2
- package/dist/serve/site-ui/docs/pyric-ui-rules-hooks-reference-api/index.html +5 -2
- package/dist/serve/site-ui/docs/pyric-ui-rules-reference-api/index.html +5 -2
- package/dist/serve/site-ui/docs/pyric-ui-storage-hooks-reference-api/index.html +5 -2
- package/dist/serve/site-ui/docs/pyric-ui-storage-reference-api/index.html +8 -6
- package/dist/serve/site-ui/docs/pyric-ui-storage-reference-api.md +3 -4
- package/dist/serve/site-ui/docs/pyric-ui-traffic-hooks-reference-api/index.html +5 -2
- package/dist/serve/site-ui/docs/pyric-ui-traffic-reference-api/index.html +5 -2
- package/dist/serve/site-ui/docs/reference/cli/index.html +156 -0
- package/dist/serve/site-ui/docs/reference/cli.md +120 -0
- package/dist/serve/site-ui/docs/rules-compat/index.html +14 -3
- package/dist/serve/site-ui/docs/rules-compat.md +9 -1
- package/dist/serve/site-ui/docs/secure/audit-your-rules/index.html +5 -2
- package/dist/serve/site-ui/docs/secure/firestore-rules-limits/index.html +5 -2
- package/dist/serve/site-ui/docs/secure/read-a-denial/index.html +6 -3
- package/dist/serve/site-ui/docs/secure/read-a-denial.md +1 -1
- package/dist/serve/site-ui/docs/secure/rtdb-rules-in-typescript/index.html +5 -2
- package/dist/serve/site-ui/docs/secure/rules-standard-library/index.html +5 -2
- package/dist/serve/site-ui/docs/secure/secure-it-with-rules/index.html +5 -2
- package/dist/serve/site-ui/docs/secure/simulate-and-lint/index.html +5 -2
- package/dist/serve/site-ui/docs/secure/write-a-rules-test-suite/index.html +5 -2
- package/dist/serve/site-ui/docs/ship/ship-to-production/index.html +7 -4
- package/dist/serve/site-ui/docs/ship/ship-to-production.md +2 -2
- package/dist/serve/site-ui/docs/ship/test-in-node/index.html +9 -6
- package/dist/serve/site-ui/docs/ship/test-in-node.md +4 -4
- package/dist/serve/site-ui/docs/storage-compat/index.html +17 -14
- package/dist/serve/site-ui/docs/storage-compat.md +12 -12
- package/dist/serve/site-ui/docs/trust/how-we-know-it-matches-firebase/index.html +5 -2
- package/dist/serve/site-ui/docs/trust/rules-standard-library/index.html +5 -2
- package/dist/serve/site-ui/docs/trust/versioning-and-compatibility/index.html +5 -2
- package/dist/serve/site-ui/docs/tutorial/index.html +10 -7
- package/dist/serve/site-ui/docs/tutorial.md +4 -4
- package/dist/serve/site-ui/examples/chess/index.html +4 -2
- package/dist/serve/site-ui/firestore/index.html +5 -3
- package/dist/serve/site-ui/hero-charcoal.jpg +0 -0
- package/dist/serve/site-ui/index.html +9 -7
- package/dist/serve/site-ui/llms.txt +13 -3
- package/dist/serve/site-ui/pyric-campfire-full.png +0 -0
- package/dist/serve/site-ui/pyric-campfire.png +0 -0
- package/dist/serve/site-ui/rtdb/index.html +5 -3
- package/dist/serve/site-ui/settings/index.html +5 -3
- package/dist/serve/site-ui/storage/index.html +5 -3
- package/dist/serve/site-ui/studio/index.html +13 -0
- package/dist/serve/site-ui/studio-routes.json +1 -1
- package/dist/serve/site-ui/traffic/index.html +5 -3
- package/dist/serve/studio/disk-workspace.d.ts.map +1 -1
- package/dist/serve/studio/disk-workspace.js +64 -2
- package/dist/serve/studio/disk-workspace.js.map +1 -1
- package/dist/serve/studio/routes.d.ts +9 -0
- package/dist/serve/studio/routes.d.ts.map +1 -1
- package/dist/serve/studio/routes.js +47 -7
- package/dist/serve/studio/routes.js.map +1 -1
- package/dist/serve/vite-ai-config.d.ts.map +1 -1
- package/dist/serve/vite-ai-config.js +38 -8
- package/dist/serve/vite-ai-config.js.map +1 -1
- package/dist/serve/vite-module-swap.d.ts.map +1 -1
- package/dist/serve/vite-module-swap.js +0 -28
- package/dist/serve/vite-module-swap.js.map +1 -1
- package/dist/serve/vite-plugin.d.ts +7 -7
- package/dist/serve/vite-plugin.js +1 -1
- package/dist/serve/vite-plugin.js.map +1 -1
- package/dist/serve/vite-sandbox-generation.d.ts +1 -1
- package/dist/serve/vite-sandbox-generation.d.ts.map +1 -1
- package/dist/serve/vite-sandbox-generation.js +13 -1
- package/dist/serve/vite-sandbox-generation.js.map +1 -1
- package/dist/serve/worker/client/auth.js +1 -2
- package/dist/serve/worker/client/auth.js.map +1 -1
- package/dist/serve/worker/client/core.d.ts +21 -1
- package/dist/serve/worker/client/core.d.ts.map +1 -1
- package/dist/serve/worker/client/core.js +79 -3
- package/dist/serve/worker/client/core.js.map +1 -1
- package/dist/serve/worker/client/disconnect.js +1 -1
- package/dist/serve/worker/client/disconnect.js.map +1 -1
- package/dist/serve/worker/client/presence.d.ts.map +1 -1
- package/dist/serve/worker/client/presence.js +18 -5
- package/dist/serve/worker/client/presence.js.map +1 -1
- package/dist/serve/worker/client.d.ts +1 -1
- package/dist/serve/worker/client.d.ts.map +1 -1
- package/dist/serve/worker/client.js +1 -1
- package/dist/serve/worker/client.js.map +1 -1
- package/dist/serve/worker/context-resolver.d.ts +30 -0
- package/dist/serve/worker/context-resolver.d.ts.map +1 -0
- package/dist/serve/worker/context-resolver.js +44 -0
- package/dist/serve/worker/context-resolver.js.map +1 -0
- package/dist/serve/worker/entry.js +23 -19
- package/dist/serve/worker/entry.js.map +1 -1
- package/dist/serve/worker/host/core.d.ts +1 -0
- package/dist/serve/worker/host/core.d.ts.map +1 -1
- package/dist/serve/worker/host/core.js +12 -6
- package/dist/serve/worker/host/core.js.map +1 -1
- package/dist/serve/worker/host/storage.js +2 -2
- package/dist/serve/worker/host-ai.d.ts.map +1 -1
- package/dist/serve/worker/host-ai.js +15 -0
- package/dist/serve/worker/host-ai.js.map +1 -1
- package/dist/serve/worker/host-auth.js +1 -2
- package/dist/serve/worker/host-auth.js.map +1 -1
- package/dist/serve/worker/index.d.ts +1 -1
- package/dist/serve/worker/index.d.ts.map +1 -1
- package/dist/serve/worker/index.js +2 -2
- package/dist/serve/worker/index.js.map +1 -1
- package/dist/serve/worker/port-lifecycle.d.ts +18 -0
- package/dist/serve/worker/port-lifecycle.d.ts.map +1 -0
- package/dist/serve/worker/port-lifecycle.js +28 -0
- package/dist/serve/worker/port-lifecycle.js.map +1 -0
- package/dist/serve/worker/protocol.d.ts +4 -0
- package/dist/serve/worker/protocol.d.ts.map +1 -1
- package/dist/serve/worker/protocol.js.map +1 -1
- package/dist/serve/worker/serve-init.d.ts.map +1 -1
- package/dist/serve/worker/serve-init.js +15 -3
- package/dist/serve/worker/serve-init.js.map +1 -1
- package/dist/verify/fixture.d.ts +1 -1
- package/package.json +17 -6
- package/src/assurance/.generated/conformance-verdicts.ts +68 -1
- package/src/bridge/client/dispatch.ts +52 -56
- package/src/bridge/client/tool-family-factories.ts +34 -0
- package/src/bridge/server/mcp-contract.ts +15 -59
- package/src/bridge/server/peer.ts +24 -1
- package/src/bridge/server/tool-family-factories.ts +40 -0
- package/src/bridge/server/tool-metadata.ts +29 -61
- package/src/bridge/tool-families.generated.ts +17 -0
- package/src/bridge/tool-families.ts +87 -0
- package/src/bridge/tool-family-records/conformance.ts +6 -0
- package/src/bridge/tool-family-records/firestore-data.ts +15 -0
- package/src/bridge/tool-family-records/firestore-inspect.ts +6 -0
- package/src/bridge/tool-family-records/firestore-rules.ts +15 -0
- package/src/bridge/tool-family-records/firestore-simulator.ts +16 -0
- package/src/bridge/tool-family-records/rtdb-inspection.ts +6 -0
- package/src/bundler/externals.ts +55 -0
- package/src/bundler/index.ts +21 -0
- package/src/cli/cli.test.ts +2 -46
- package/src/cli/index.ts +48 -42
- package/src/cli/inlined-sdk-scanner.ts +77 -0
- package/src/cli/mcp-proxy.ts +4 -4
- package/src/cli/parse-args.ts +61 -15
- package/src/cli/pyric-config.ts +45 -0
- package/src/cli/sandbox-interlock.ts +167 -0
- package/src/cli/{dev-runner.ts → sandbox-runner.ts} +142 -86
- package/src/cli/serve.ts +182 -115
- package/src/cli/snapshot.ts +5 -5
- package/src/cli/unsupported-runtime.ts +68 -0
- package/src/cli/verify.ts +1 -1
- package/src/conformance/.generated/can-i-use-browser.ts +2 -2
- package/src/conformance/.generated/can-i-use.ts +2 -2
- package/src/conformance/.generated/conformance-docs.ts +1 -1
- package/src/functions-rtdb/child.ts +115 -21
- package/src/functions-rtdb/development-runtime.ts +5 -1
- package/src/functions-rtdb/project.ts +8 -8
- package/src/google-endpoints.ts +155 -0
- package/src/next/guard.ts +1 -1
- package/src/next/runtime-env.ts +5 -0
- package/src/next/with-pyric.ts +1 -1
- package/src/register/beacon.ts +232 -0
- package/src/register/index.ts +68 -6
- package/src/register/net-guard.ts +567 -0
- package/src/remote/index.ts +9 -9
- package/src/serve/ai-diagnostics-relay.ts +243 -0
- package/src/serve/ai-proxy.ts +327 -0
- package/src/serve/ai-status.ts +109 -0
- package/src/serve/ai-terminal-blocks.ts +210 -0
- package/src/serve/ai-terminal-text.ts +52 -0
- package/src/serve/beacon-route.ts +141 -0
- package/src/serve/bundler.ts +10 -10
- package/src/serve/entries/active-auth-registry.ts +56 -0
- package/src/serve/entries/active-auth.ts +100 -0
- package/src/serve/entries/ai.ts +27 -1
- package/src/serve/entries/auth-helper-core.ts +5 -0
- package/src/serve/entries/auth-helper-dom.ts +27 -3
- package/src/serve/entries/auth-helper-runtime.ts +1 -1
- package/src/serve/entries/auth.ts +8 -0
- package/src/serve/entries/bridge-url.ts +1 -1
- package/src/serve/entries/firestore.ts +3 -3
- package/src/serve/entries/init.ts +78 -3
- package/src/serve/entries/keepalive.ts +1 -1
- package/src/serve/entries/runtime.ts +29 -14
- package/src/serve/entries/storage.ts +1 -1
- package/src/serve/entries/worker-runtime.ts +1 -1
- package/src/serve/init-payload.ts +4 -0
- package/src/serve/namespace.ts +117 -145
- package/src/serve/rules.ts +47 -22
- package/src/serve/runtime/chip-config.ts +16 -2
- package/src/serve/runtime/chip-dialog.ts +366 -0
- package/src/serve/runtime/chip-install.ts +10 -4
- package/src/serve/runtime/chip-user-search.ts +391 -0
- package/src/serve/runtime/chip.ts +177 -15
- package/src/serve/runtime/identity.ts +26 -0
- package/src/serve/runtime/manifest.ts +1 -1
- package/src/serve/runtime/status.ts +24 -0
- package/src/serve/sandbox-session.ts +19 -4
- package/src/serve/server.ts +18 -1
- package/src/serve/studio/disk-workspace.ts +76 -2
- package/src/serve/studio/routes.ts +63 -7
- package/src/serve/vite-ai-config.ts +37 -7
- package/src/serve/vite-module-swap.ts +0 -28
- package/src/serve/vite-plugin.ts +8 -8
- package/src/serve/vite-sandbox-generation.ts +16 -1
- package/src/serve/worker/client/auth.ts +1 -1
- package/src/serve/worker/client/core.ts +80 -3
- package/src/serve/worker/client/disconnect.ts +1 -1
- package/src/serve/worker/client/presence.ts +25 -5
- package/src/serve/worker/client.ts +1 -1
- package/src/serve/worker/context-resolver.ts +60 -0
- package/src/serve/worker/entry.ts +22 -18
- package/src/serve/worker/host/core.ts +9 -7
- package/src/serve/worker/host/storage.ts +2 -2
- package/src/serve/worker/host-ai.ts +15 -0
- package/src/serve/worker/host-auth.ts +1 -1
- package/src/serve/worker/index.ts +4 -1
- package/src/serve/worker/port-lifecycle.ts +45 -0
- package/src/serve/worker/protocol.ts +2 -1
- package/src/serve/worker/serve-init.ts +14 -3
- package/src/verify/fixture.ts +1 -1
- package/README.md.orig +0 -145
- package/dist/cli/dev-runner.d.ts.map +0 -1
- package/dist/cli/dev-runner.js.map +0 -1
- package/dist/serve/site-ui/_astro/_slug_.CXh9yTP1.css +0 -1
- package/dist/serve/site-ui/_astro/_slug_.CupVK4TM.css +0 -1
- package/dist/serve/site-ui/_astro/_studio_.CfxiQWkk.css +0 -1
- package/dist/serve/site-ui/_astro/app.BsFsMjn0.css +0 -1
- package/dist/serve/site-ui/_astro/app.Ce3MTLQm.js +0 -1
- package/dist/serve/site-ui/_astro/app.taqzyjD0.js +0 -11
- package/dist/serve/site-ui/_astro/sandbox-controls.BP4M5f1M.js +0 -1169
- package/dist/serve/site-ui/_astro/writes.C57paAj2.js +0 -99
- package/dist/serve/site-ui/docs/trust/storage-rules-stdlib-research/index.html +0 -582
- package/dist/serve/site-ui/docs/trust/storage-rules-stdlib-research.md +0 -448
package/dist/serve/site-ui/_astro/{example-runtime.CuyAjjiG.js → example-runtime.CXopTGv7.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{c as p,s as l,a as f,j as r}from"./sandbox-controls.
|
|
1
|
+
import{c as p,s as l,a as f,j as r}from"./sandbox-controls.rOuZTOUG.js";import{r as u}from"./index.DBy5LfQW.js";function g(n){if(n.presentation==="showcase")throw new Error(`Pyric showcase '${n.header}' cannot use the generic example runtime`)}const h={header:"Play chess against Security Rules",subLabel:"Firestore Security Rules · Isolated browser sandbox",summary:"Move a piece; Pyric commits the new board or denies the write.",docsPath:"/docs/examples/chess/",service:"firestore",presentation:"showcase",renderer:"chess"},k=`import type { PyricExampleContext } from '../definition';
|
|
2
2
|
|
|
3
3
|
export const FILES = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h'] as const;
|
|
4
4
|
export const RANKS = ['1', '2', '3', '4', '5', '6', '7', '8'] as const;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
main[data-astro-cid-taqv5yvx].sheet{--sheet-ink: var(--ink, #fbfbfe);--sheet-muted: var(--muted, #72728a);--sheet-faint: #4a4a58;--sheet-line: var(--line, #2a2a35);--sheet-reading: #c8c8d8;--font-label: var(--font-mono, monospace);color:var(--sheet-reading);display:grid;grid-template-columns:[full-start] minmax(var(--gutter),1fr) [content-start] minmax(0,calc(var(--wide) - 2 * var(--gutter))) [content-end] minmax(var(--gutter),1fr) [full-end]}main[data-astro-cid-taqv5yvx].sheet>section[data-astro-cid-taqv5yvx]{grid-column:full;display:grid;grid-template-columns:subgrid}.tlabel[data-astro-cid-taqv5yvx]{font-family:var(--font-label);font-size:.65625rem;letter-spacing:.16em;text-transform:uppercase;color:var(--sheet-muted);display:inline-flex;gap:.5625rem}.tlabel[data-astro-cid-taqv5yvx]:before{content:"";width:1.375rem;height:.0625rem;background:currentColor}.btn[data-astro-cid-taqv5yvx]{position:relative;display:inline-flex;font-family:var(--font-ui, sans-serif);font-size:.875rem;font-weight:700;padding:.625rem 1.125rem;text-decoration:none;text-transform:uppercase}.btn--primary[data-astro-cid-taqv5yvx]{background:var(--sheet-ink);color:#14102a}.btn--primary[data-astro-cid-taqv5yvx]:hover{background:#e2e2ec}.btn--primary[data-astro-cid-taqv5yvx]:focus-visible{outline:.125rem solid var(--accent, #8f7fe8);outline-offset:.375rem}.btn--primary[data-astro-cid-taqv5yvx]:before{content:"";position:absolute;inset:-.3125rem;border:.0625rem solid var(--sheet-line);pointer-events:none;transition:border-color .15s}.btn--primary[data-astro-cid-taqv5yvx]:after{content:"";position:absolute;inset:-.5625rem;pointer-events:none;color:var(--sheet-muted);background-image:linear-gradient(currentColor 0 0),linear-gradient(currentColor 0 0),linear-gradient(currentColor 0 0),linear-gradient(currentColor 0 0),linear-gradient(currentColor 0 0),linear-gradient(currentColor 0 0),linear-gradient(currentColor 0 0),linear-gradient(currentColor 0 0);background-size:.4375rem .0625rem,.0625rem .4375rem,.4375rem .0625rem,.0625rem .4375rem,.4375rem .0625rem,.0625rem .4375rem,.4375rem .0625rem,.0625rem .4375rem;background-position:left 0 top .25rem,left .25rem top 0,right 0 top .25rem,right .25rem top 0,left 0 bottom .25rem,left .25rem bottom 0,right 0 bottom .25rem,right .25rem bottom 0;background-repeat:no-repeat;transition:color .15s}.btn--primary[data-astro-cid-taqv5yvx]:hover:before{border-color:var(--line-2, #3a3a48)}.btn--primary[data-astro-cid-taqv5yvx]:hover:after{color:var(--sheet-reading)}.z1[data-astro-cid-taqv5yvx]{position:relative;min-height:100dvh;align-items:safe center;padding-block:clamp(2.5rem,8vh,5rem) clamp(3rem,8vh,5rem)}.z1[data-astro-cid-taqv5yvx]:before{content:"";position:absolute;inset:0;background:url(/__pyric/ui/hero-charcoal.jpg) center 0% / cover no-repeat;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 58%);mask-image:linear-gradient(to bottom,transparent 0%,#000 58%);opacity:.35}.z1[data-astro-cid-taqv5yvx]:after{content:"";position:absolute;inset:0;background:radial-gradient(45rem 30rem ellipse at 18% 55%,rgb(0 0 0 / .5),transparent 68%),linear-gradient(to bottom,transparent 55%,color-mix(in oklab,var(--bg, #16161a) 30%,transparent))}.z1[data-astro-cid-taqv5yvx]>[data-astro-cid-taqv5yvx]{position:relative;z-index:1}.z1__inner[data-astro-cid-taqv5yvx]{grid-column:content;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,30rem),1fr));gap:clamp(2.5rem,6vw,3rem);place-items:start}.z1__headings[data-astro-cid-taqv5yvx]{display:grid;gap:var(--space-5)}.lockup[data-astro-cid-taqv5yvx]{display:grid;gap:var(--space-6)}.z1[data-astro-cid-taqv5yvx] h1[data-astro-cid-taqv5yvx]{font-family:var(--font-display, sans-serif);font-size:clamp(2.75rem,5.6vw + .25rem,4.5rem);font-weight:500;line-height:1.02;letter-spacing:-.03em;color:var(--sheet-ink);margin:0;max-width:14ch}.standfirst[data-astro-cid-taqv5yvx]{font-family:var(--font-ui, sans-serif);font-size:1.35rem;font-weight:500;line-height:1.46;max-width:32ch;margin:0;color:var(--sheet-reading);text-wrap:balance;text-shadow:0 .0625rem .125rem rgb(0 0 0 / .6),0 0 1.5rem rgb(0 0 0 / .4)}.actions[data-astro-cid-taqv5yvx]{display:flex;gap:.875rem}.composer[data-astro-cid-taqv5yvx]{justify-self:end;display:grid;grid-template-columns:[inset-start] 1rem [icon] .8125rem [gap] .625rem [body] minmax(0,max-content) [inset-end] 1rem;inline-size:fit-content;max-inline-size:100%;border:.0625rem solid var(--line-2, #3a3a48);border-radius:var(--rounded-lg, .375rem);background:color-mix(in oklab,var(--bg, #16161a) 55%,var(--panel, #1e1e24));overflow:clip;text-align:left}.composer__input[data-astro-cid-taqv5yvx]{grid-column:1 / -1;display:grid;grid-template-columns:subgrid;align-items:center;padding-block:.8125rem;border-bottom:.0625rem solid var(--line, #2a2a35);background:var(--panel, #1e1e24)}.composer__input[data-astro-cid-taqv5yvx] .composer__glyph[data-astro-cid-taqv5yvx]{grid-column:icon;grid-row:1}.composer__input[data-astro-cid-taqv5yvx] .composer__line[data-astro-cid-taqv5yvx]{grid-column:body;grid-row:1;contain:inline-size}.composer__input[data-astro-cid-taqv5yvx] .composer__copy[data-astro-cid-taqv5yvx]{grid-column:body;grid-row:1;justify-self:end}.composer__session[data-astro-cid-taqv5yvx]{grid-column:1 / -1;display:grid;grid-template-columns:subgrid;row-gap:1.375rem;padding-block:1rem 1.125rem}.turn[data-astro-cid-taqv5yvx]{grid-column:icon / inset-end;display:grid;grid-template-columns:subgrid;row-gap:.75rem}.turn[data-astro-cid-taqv5yvx]>.say[data-astro-cid-taqv5yvx]{display:contents}.say__glyph[data-astro-cid-taqv5yvx]{grid-column:1}.say__text[data-astro-cid-taqv5yvx]{grid-column:3}.turn[data-astro-cid-taqv5yvx]>.calls[data-astro-cid-taqv5yvx]{grid-column:3}.say[data-astro-cid-taqv5yvx]{font-family:var(--font-ui, sans-serif);font-size:1rem;line-height:1.55;color:var(--sheet-reading);margin:0}.say__glyph[data-astro-cid-taqv5yvx]{display:grid;color:color-mix(in oklab,var(--accent, #8f7fe8) 35%,var(--sheet-muted));block-size:1lh;align-items:center}@keyframes composer-blink{0%{opacity:.9}to{opacity:0}}.calls[data-astro-cid-taqv5yvx]{display:grid;gap:.5625rem;padding:.75rem .875rem;background:var(--bg, #16161a);border:.0625rem solid var(--line, #2a2a35);border-radius:var(--rounded-md, .25rem)}.call[data-astro-cid-taqv5yvx]{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.625rem;font-size:.75rem;line-height:1.5}.call[data-astro-cid-taqv5yvx]>svg[data-astro-cid-taqv5yvx]{color:#6e6e80;inline-size:.8125rem;align-self:center}.call__body[data-astro-cid-taqv5yvx]{display:grid;row-gap:.25rem;min-width:0}.call__status[data-astro-cid-taqv5yvx]{color:#6e6e80;align-self:center}.call__status--deny[data-astro-cid-taqv5yvx]{color:color-mix(in oklab,var(--diff-remove, #e2607a) 50%,var(--sheet-muted))}.call__cmd[data-astro-cid-taqv5yvx]{font-family:var(--font-label);color:var(--sheet-ink);overflow-wrap:break-word}.call__cmd[data-astro-cid-taqv5yvx] i[data-astro-cid-taqv5yvx]{font-style:normal;color:#a0a0b4}.call__out[data-astro-cid-taqv5yvx]{font-family:var(--font-label);color:#a0a0b4;overflow-wrap:break-word}.composer__glyph[data-astro-cid-taqv5yvx]{display:grid;color:var(--sheet-muted)}.composer__line[data-astro-cid-taqv5yvx]{font-family:var(--font-label);font-size:clamp(.875rem,1.5vw,1.0625rem);color:#e9e9f2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.composer__line[data-astro-cid-taqv5yvx] .sk[data-astro-cid-taqv5yvx]{color:var(--accent, #8f7fe8);font-weight:500}.composer__copy[data-astro-cid-taqv5yvx]{display:grid;place-items:center;inline-size:2rem;block-size:2rem;border:.0625rem solid var(--line-2, #3a3a48);border-radius:var(--rounded-md, .25rem);background:transparent;color:var(--sheet-muted);cursor:pointer;transition:color .15s,border-color .15s}.composer__copy[data-astro-cid-taqv5yvx]:hover{color:var(--sheet-ink);border-color:#4a4a5a}.composer__copy[data-astro-cid-taqv5yvx]:focus-visible{outline:.125rem solid var(--accent, #8f7fe8);outline-offset:.125rem}.composer__copy[data-astro-cid-taqv5yvx] .ic-check[data-astro-cid-taqv5yvx]{display:none;color:var(--diff-add, #57b985)}.composer__copy[data-astro-cid-taqv5yvx].copied .ic-copy[data-astro-cid-taqv5yvx]{display:none}.composer__copy[data-astro-cid-taqv5yvx].copied .ic-check[data-astro-cid-taqv5yvx]{display:block}.z3[data-astro-cid-taqv5yvx]{border-top:.0625rem solid var(--sheet-line);padding-block:clamp(4rem,10vh,8rem)}.z3__inner[data-astro-cid-taqv5yvx]{grid-column:content;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,32rem),1fr));gap:clamp(3.5rem,8vw,8rem);align-items:center}@media(max-width:59.9rem){.z1__inner[data-astro-cid-taqv5yvx]{gap:4.5rem}.z3__inner[data-astro-cid-taqv5yvx]{gap:5.5rem}}.z3__art[data-astro-cid-taqv5yvx]{inline-size:min(100%,30rem);block-size:auto;justify-self:center;filter:brightness(1.6)}.z3__body[data-astro-cid-taqv5yvx]{max-inline-size:60ch;display:grid;row-gap:var(--space-6)}.z3__headings[data-astro-cid-taqv5yvx]{display:grid;gap:var(--space-4)}.z3__body[data-astro-cid-taqv5yvx] h2[data-astro-cid-taqv5yvx]{font-family:var(--font-display, sans-serif);font-size:2.125rem;font-weight:500;line-height:1.15;color:var(--sheet-ink);letter-spacing:-.02em;margin:0}.z3__body[data-astro-cid-taqv5yvx] h3[data-astro-cid-taqv5yvx]{font-family:var(--font-ui, sans-serif);font-size:1.25rem;font-weight:500;line-height:1.4;color:var(--sheet-reading);margin:0}.z3__body[data-astro-cid-taqv5yvx] p[data-astro-cid-taqv5yvx]{font-size:1.125rem;line-height:1.85;margin:0;color:var(--sheet-reading)}.z3__body[data-astro-cid-taqv5yvx] .perr[data-astro-cid-taqv5yvx]{font-family:var(--font-label);font-size:.875em;color:var(--sheet-ink)}.z3__body[data-astro-cid-taqv5yvx] .closer[data-astro-cid-taqv5yvx]{font-family:var(--font-display, sans-serif);font-size:1.375rem;font-weight:500;color:var(--sheet-ink);margin:0}.z3__cta[data-astro-cid-taqv5yvx]{grid-column:1/-1;align-items:center;justify-content:center;display:flex}.z3__cta-actions[data-astro-cid-taqv5yvx]{display:grid;justify-content:center;align-items:center}.z3__cta-actions[data-astro-cid-taqv5yvx] .btn[data-astro-cid-taqv5yvx]{display:flex;align-items:center;justify-content:center;padding:14px 32px;font-size:1rem}.byline[data-astro-cid-taqv5yvx]{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:.75rem}.byline[data-astro-cid-taqv5yvx] img[data-astro-cid-taqv5yvx]{inline-size:2.5rem;block-size:2.5rem;border-radius:50%}.byline__who[data-astro-cid-taqv5yvx]{display:grid}.byline__name[data-astro-cid-taqv5yvx]{font-size:.875rem;font-weight:500;color:var(--sheet-ink)}.byline__handle[data-astro-cid-taqv5yvx]{font-size:.8125rem;color:var(--sheet-muted);text-decoration:none;justify-self:start}.byline__handle[data-astro-cid-taqv5yvx]:hover{color:var(--sheet-ink)}.z4[data-astro-cid-taqv5yvx]{padding-block:clamp(2rem,4vh,3rem)}.foot[data-astro-cid-taqv5yvx]{grid-column:content;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;border-top:.0625rem solid var(--sheet-line);padding-block-start:1.5rem}.foot__brand[data-astro-cid-taqv5yvx]{display:grid;grid-auto-flow:column;align-items:center;column-gap:.5rem;font-size:.875rem;font-weight:500;color:var(--sheet-ink)}.foot__brand[data-astro-cid-taqv5yvx] img[data-astro-cid-taqv5yvx]{block-size:1.25rem;inline-size:auto;filter:brightness(2.1) contrast(1.5)}.foot__links[data-astro-cid-taqv5yvx]{display:grid;grid-auto-flow:column;justify-content:end;column-gap:1.5rem;font-size:.8125rem}.foot__links[data-astro-cid-taqv5yvx] a[data-astro-cid-taqv5yvx]{color:var(--sheet-muted);text-decoration:none}.foot__links[data-astro-cid-taqv5yvx] a[data-astro-cid-taqv5yvx]:hover{color:var(--sheet-ink)}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
:root{--font-ui: "neue-haas-grotesk-text", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "input-mono-narrow", "input-mono", "JetBrains Mono", ui-monospace, SFMono-Regular, monospace;--font-display: "neue-haas-grotesk-display", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-darkmode: "darkmode-off", sans-serif}.font-darkmode{font-family:var(--font-darkmode, "darkmode-off", sans-serif)}.font-darkmode-light{font-family:darkmode-off,sans-serif;font-weight:300;font-style:normal}.font-darkmode-regular{font-family:darkmode-off,sans-serif;font-weight:400;font-style:normal}.font-darkmode-medium{font-family:darkmode-off,sans-serif;font-weight:500;font-style:normal}.font-darkmode-bold{font-family:darkmode-off,sans-serif;font-weight:700;font-style:normal}.font-darkmode-black{font-family:darkmode-off,sans-serif;font-weight:900;font-style:normal}:root{--fs-title: 17px;--fs-body: 13px;--fs-label: 12px;--fs-data: 12.5px;--fs-caption: 11.5px;--fs-micro: 10.5px;--tracking-micro: .06em;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px}:root{--bg: #16161a;--panel: #1e1e24;--elevated: #24242c;--ink: #fbfbfe;--muted: #72728a;--faint: #72728a;--line: #2a2a35;--line-2: #3a3a48;--accent: #8f7fe8;--accent-tint: #1e1b2e;--accent-ink: #14102a;--deny: #ededee;--deny-ink: #0c0c0d;--deny-tint: #161618;--diff-add: #57b985;--diff-add-bg: #111d16;--diff-remove: #e2607a;--diff-remove-bg: #221318}@media(prefers-color-scheme:light){:root:not([data-theme]){--bg: #ffffff;--panel: #fafafa;--elevated: #ffffff;--ink: #16181d;--muted: #646b78;--faint: #9aa1ad;--line: #e7e8ec;--line-2: #d9dbe0;--accent: #6b57d6;--accent-tint: #f4f2fd;--accent-ink: #ffffff;--deny: #16181d;--deny-ink: #ffffff;--deny-tint: #f4f4f6;--diff-add: #1f8f4e;--diff-add-bg: #eef8f1;--diff-remove: #c2374b;--diff-remove-bg: #fceef0}}[data-theme=light]{--bg: #ffffff;--panel: #fafafa;--elevated: #ffffff;--ink: #16181d;--muted: #646b78;--faint: #9aa1ad;--line: #e7e8ec;--line-2: #d9dbe0;--accent: #6b57d6;--accent-tint: #f4f2fd;--accent-ink: #ffffff;--deny: #16181d;--deny-ink: #ffffff;--deny-tint: #f4f4f6;--diff-add: #1f8f4e;--diff-add-bg: #eef8f1;--diff-remove: #c2374b;--diff-remove-bg: #fceef0}:root{--code-bg: #0f0f17;--wide: 1440px;--gutter: clamp(16px, 3vw, 32px);--tab-gap: var(--space-4);color-scheme:dark}@media(prefers-color-scheme:light){:root:not([data-theme]){color-scheme:light}}[data-theme=light]{color-scheme:light}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-ui);font-feature-settings:"cv11","ss01";font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}.studio__chrome{display:flex;flex-direction:column;min-width:0;border-bottom:1px solid var(--line);background:var(--panel);position:sticky;top:0;z-index:10;padding-top:env(safe-area-inset-top,0px)}.studio__bar{min-width:0}.studio__chrome-inner{box-sizing:border-box;width:min(var(--wide),calc(100% - 2 * var(--gutter)));margin-inline:auto;display:flex;align-items:center;column-gap:var(--tab-gap);min-width:0}.studio__bar .studio__chrome-inner{height:54px}.studio__brand{font-family:var(--font-display, sans-serif);font-size:1.0625rem;font-weight:500;letter-spacing:-.01em;line-height:1;color:var(--ink);text-decoration:none;flex:0 0 auto}.studio__nav{display:flex;align-items:baseline;justify-content:flex-start;column-gap:var(--tab-gap);font-size:13px;font-weight:500;line-height:1;min-width:0;overflow-x:auto;flex:1 1 auto;scrollbar-width:none}.studio__nav::-webkit-scrollbar{display:none}.studio__nav-tab{flex:0 0 auto;border-bottom:2px solid transparent;font:inherit;line-height:inherit;color:var(--muted);text-decoration:none;padding:0;white-space:nowrap;transition:color .12s,border-color .12s}.studio__nav-tab:hover{color:color-mix(in srgb,var(--ink) 80%,transparent)}.studio__nav-tab[aria-current=page]{color:var(--ink);border-bottom-color:var(--ink)}@media(max-width:760px){.studio__nav{scroll-snap-type:x proximity;mask-image:linear-gradient(to right,#000 calc(100% - 1.75em),transparent);-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 1.75em),transparent)}.studio__nav:after{content:"";flex:0 0 1.75em}.studio__nav-tab{scroll-snap-align:start}}.docs-shell{max-width:var(--wide);margin-inline:auto;padding:2.5rem var(--gutter) 5rem;display:grid;grid-template-columns:minmax(200px,240px) minmax(0,1fr) minmax(180px,220px);column-gap:clamp(var(--space-6),4vw,calc(var(--space-6) * 2.5));row-gap:3rem;align-items:start}.docs-nav{position:sticky;top:calc(54px + 1.5rem);max-height:calc(100vh - 54px - 4rem);max-height:calc(100dvh - 54px - 4rem);overflow-y:auto;padding-bottom:var(--space-6);display:grid;align-content:start;gap:var(--space-3);font-size:.8125rem;line-height:1.5}.docs-nav-toplink{display:flex;align-items:center;min-height:2.125rem;padding:var(--space-1) var(--space-3);border-radius:.375rem;font-weight:450;color:var(--ink);text-decoration:none;transition:background-color .12s}.docs-nav-toplink:hover{background:color-mix(in srgb,var(--panel) 70%,transparent)}.docs-nav-toplink[aria-current=page]{background:var(--panel)}.docs-nav-group>summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);min-height:2.125rem;padding:var(--space-1) var(--space-3);border-radius:.375rem;font-weight:450;color:var(--ink);transition:background-color .12s}.docs-nav-group>summary:hover{background:color-mix(in srgb,var(--panel) 70%,transparent)}.docs-nav-group>summary::-webkit-details-marker{display:none}.docs-nav-group>summary:after{content:"›";display:inline-block;color:var(--faint);font-weight:400;transition:transform .12s}.docs-nav-group[open]>summary:after{transform:rotate(90deg)}.docs-nav-group-body{display:grid;gap:var(--space-5);padding:var(--space-1) 0 var(--space-2)}.docs-nav-heading{margin:0 0 var(--space-1);padding-inline:var(--space-3);font-size:.6875rem;font-weight:500;text-transform:uppercase;letter-spacing:var(--tracking-micro, .06em);color:var(--muted)}.docs-nav ul{margin:0;padding:0;list-style:none;display:grid;gap:var(--space-1)}.docs-nav li{min-width:0}.docs-nav a{display:flex;align-items:center;min-height:2.125rem;padding:var(--space-1) var(--space-3);border-radius:.375rem;color:var(--muted);text-decoration:none;background:transparent;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:background-color .12s,color .12s}.docs-nav a:hover{color:var(--ink);background:color-mix(in srgb,var(--panel) 70%,transparent)}.docs-nav a[aria-current]{color:var(--ink)}.docs-nav a[aria-current=page]{background:var(--panel);font-weight:500}.docs-nav-drawer{display:none}.doc-main{width:100%;max-width:72ch;margin-inline:auto;min-width:0;font-size:1rem}.doc-toc{position:sticky;top:calc(54px + 1.5rem);max-height:calc(100vh - 54px - 4rem);max-height:calc(100dvh - 54px - 4rem);overflow-y:auto;padding-bottom:var(--space-6);display:grid;align-content:start;font-size:.8125rem}.doc-toc-heading{margin:0 0 .625rem;font-family:var(--font-mono);font-size:var(--fs-micro, 10.5px);font-weight:500;text-transform:uppercase;letter-spacing:var(--tracking-micro, .06em);color:var(--muted)}.doc-toc ul{margin:0;padding:0;list-style:none;display:grid;gap:.375rem;border-left:1px solid var(--line)}.doc-toc li{min-width:0}.doc-toc a{display:block;padding-left:.75rem;margin-left:-1px;border-left:1px solid transparent;color:var(--muted);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doc-toc li[data-depth="3"] a{padding-left:1.5rem}.doc-toc a:hover{color:var(--ink)}.doc-toc a.active{color:var(--accent);border-left-color:var(--accent)}.docs-search{position:relative}.docs-search-field{display:flex;align-items:center;gap:var(--space-2);min-height:2.125rem;padding:0 var(--space-3);border:1px solid var(--line);border-radius:.375rem;background:var(--panel)}.docs-search-icon{flex-shrink:0;color:var(--faint)}.docs-search-input{flex:1;min-width:0;border:none;outline:none;background:transparent;color:var(--ink);font:inherit;font-size:.8125rem}.docs-search-input::placeholder{color:var(--faint)}.docs-search-kbd{flex-shrink:0;font-family:var(--font-mono);font-size:var(--fs-micro, 10.5px);color:var(--faint);border:1px solid var(--line);border-radius:.25rem;padding:.0625rem .3125rem;background:var(--elevated)}.docs-search-results{position:absolute;top:calc(100% + var(--space-1));left:0;right:0;z-index:20;margin:0;padding:var(--space-1);list-style:none;display:grid;gap:2px;background:var(--elevated);border:1px solid var(--line);border-radius:.5rem;box-shadow:0 12px 28px #00000059;max-height:60vh;overflow-y:auto}.docs-search-results li{min-width:0}.docs-search-results a{display:grid;gap:2px;padding:var(--space-2) var(--space-3);border-radius:.375rem;text-decoration:none;color:var(--ink)}.docs-search-results a:hover{background:var(--panel)}.docs-search-result-title{font-size:.8125rem;color:var(--ink)}.docs-search-result-meta{font-size:var(--fs-caption, 11.5px);color:var(--faint)}.docs-search-empty{padding:var(--space-2) var(--space-3);color:var(--faint);font-size:.8125rem}.docs-breadcrumbs{margin:0 0 var(--rhythm-group);font-size:var(--fs-caption, 11.5px)}.docs-breadcrumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:.375rem;margin:0;padding:0;list-style:none}.docs-breadcrumbs li{display:flex;align-items:center;gap:.375rem;min-width:0}.docs-breadcrumbs a{color:var(--muted);text-decoration:none}.docs-breadcrumbs a:hover{color:var(--ink);text-decoration:underline}.docs-breadcrumbs [aria-current=page],.docs-breadcrumbs-sep{color:var(--faint)}.docs-nav,.doc-toc,.docs-search-results,pre,.prose .table-scroll{scrollbar-width:thin;scrollbar-color:var(--line-2) transparent}.docs-nav::-webkit-scrollbar,.doc-toc::-webkit-scrollbar,.docs-search-results::-webkit-scrollbar,pre::-webkit-scrollbar,.prose .table-scroll::-webkit-scrollbar{width:8px;height:8px}.docs-nav::-webkit-scrollbar-track,.doc-toc::-webkit-scrollbar-track,.docs-search-results::-webkit-scrollbar-track,pre::-webkit-scrollbar-track,.prose .table-scroll::-webkit-scrollbar-track{background:transparent}.docs-nav::-webkit-scrollbar-thumb,.doc-toc::-webkit-scrollbar-thumb,.docs-search-results::-webkit-scrollbar-thumb,pre::-webkit-scrollbar-thumb,.prose .table-scroll::-webkit-scrollbar-thumb{background-color:var(--line-2);border-radius:999px;border:2px solid transparent;background-clip:content-box}.prose h1,.prose h2,.prose h3,.prose h4{font-family:var(--font-display)}.prose h1{font-size:1.75rem;font-weight:650;line-height:1.25;letter-spacing:-.02em}.prose h2{font-size:1.3125rem;font-weight:600;line-height:1.3;letter-spacing:-.01em}.prose h3{font-size:1.0625rem;font-weight:600;line-height:1.35}.prose h4{font-size:.9375rem;font-weight:600}.prose a{color:var(--accent);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--accent) 40%,transparent);text-underline-offset:2px}.prose a:hover{text-decoration-color:var(--accent)}a.external-link:after{content:"";display:inline-block;vertical-align:baseline;width:.625em;height:.625em;margin-left:.2em;background-color:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 2.5h9v9h-2V5.91l-6.8 6.8-1.41-1.42 6.79-6.79H4.5v-2z'/%3E%3C/svg%3E") no-repeat center / contain;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 2.5h9v9h-2V5.91l-6.8 6.8-1.41-1.42 6.79-6.79H4.5v-2z'/%3E%3C/svg%3E") no-repeat center / contain}.prose strong{font-weight:600;color:var(--ink)}.prose code{font-family:var(--font-mono);font-size:.85em;background:var(--panel);border:1px solid var(--line);border-radius:.25rem;padding:.0625rem .3125rem}.prose pre{border:1px solid var(--line);border-radius:.375rem;padding:.875rem 1rem;overflow-x:auto;font-size:.8125rem;line-height:1.6}.prose pre.astro-code{background-color:var(--code-bg)!important}.prose pre code{background:none;border:none;padding:0;font-size:inherit}.prose ul,.prose ol{padding-inline-start:1.5rem}.prose li::marker{color:var(--muted)}.prose blockquote{position:relative;margin-inline:0;padding-inline:0;padding-block:var(--rhythm-para);color:var(--muted)}.prose blockquote:before{content:"";position:absolute;inset-block:0;left:calc(-1 * var(--space-4));width:2px;background:var(--line-2)}.prose hr{border:none;border-top:1px solid var(--line)}.prose .table-scroll{max-width:100%;overflow-x:auto}.prose table{width:auto;border-collapse:collapse;font-size:.875rem}.prose th,.prose td{border:0;border-bottom:1px solid var(--line);padding:.5rem 2rem .5rem 0;text-align:left;vertical-align:top}.prose th:last-child,.prose td:last-child{padding-right:0}.prose th{font-family:var(--font-mono);font-size:.6875rem;text-transform:uppercase;letter-spacing:var(--tracking-micro, .06em);color:var(--muted);white-space:nowrap;border-bottom-color:var(--line-2)}.prose td code{white-space:nowrap}pre,code,kbd,samp{font-variant-ligatures:none}.prose .compat-key{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-5);margin:1rem 0;font-size:var(--fs-caption);color:var(--muted)}.prose .compat-key-item{display:inline-flex;align-items:center;gap:var(--space-2);white-space:nowrap}.prose .compat-list{margin:1rem 0}.prose .compat-list--plain .compat-line{grid-template-columns:1fr}.prose .compat-line{display:grid;grid-template-columns:.75rem 1fr auto;column-gap:var(--space-3);align-items:start;padding:var(--space-2) 0}.prose .compat-main{display:flex;flex-direction:column;gap:1px;min-width:0}.prose .compat-api{font-family:var(--font-mono);font-size:.9rem;color:var(--ink);overflow-wrap:anywhere}.prose .compat-sub{font-size:.8125rem;color:var(--ink)}.prose .compat-category{color:var(--muted)}.prose .compat-row{border-bottom:1px solid var(--line)}.prose .compat-row:last-child{border-bottom:0}.prose summary.compat-line{cursor:pointer;list-style:none}.prose summary.compat-line::-webkit-details-marker{display:none}.prose summary.compat-line:after{content:"›";color:var(--faint);transition:transform .12s}.prose details[open]>summary.compat-line:after{transform:rotate(90deg)}.prose .compat-dot{width:8px;height:8px;border-radius:50%;background:var(--muted);flex-shrink:0}.prose .compat-line .compat-dot{margin-top:.4em}.prose .compat-dot[data-status=ok]{background:var(--diff-add)}.prose .compat-dot[data-status=diverged]{background:var(--accent)}.prose .compat-dot[data-status=bug]{background:var(--diff-remove)}.prose .compat-dot[data-status=unsupported]{background:var(--line-2)}.prose .compat-dot[data-status=unverified]{background:transparent;box-shadow:inset 0 0 0 1px var(--faint)}.prose .compat-status{font-family:var(--font-mono);font-size:var(--fs-caption);color:var(--muted)}.prose .compat-behavior{font-size:.875rem}.prose .compat-evidence{margin:0 0 var(--space-2) calc(.75rem + var(--space-3))}.prose .compat-probe,.prose .compat-note{margin-top:2px;font-size:var(--fs-caption);color:var(--muted);overflow-wrap:anywhere}.prose .compat-probe{font-family:var(--font-mono)}.prose .compat-list code,.prose .compat-key code{background:none;border:0;padding:0;color:inherit}.prose h1,.prose h2,.prose h3,.prose h4{scroll-margin-top:calc(54px + 1.5rem)}@media(max-width:1080px){.docs-shell{grid-template-columns:240px minmax(0,1fr)}.doc-toc{display:none}}@media(max-width:800px){.docs-shell{grid-template-columns:minmax(0,1fr);gap:1.5rem;padding-top:1.5rem}.docs-shell>.docs-nav{display:none}.docs-nav-drawer{display:block;border:1px solid var(--line);background:var(--panel)}.docs-nav-drawer>summary{cursor:pointer;padding:.625rem 1rem;font-family:var(--font-mono);font-size:.75rem;text-transform:uppercase;letter-spacing:var(--tracking-micro, .06em);color:var(--muted);list-style:none}.docs-nav-drawer>summary:after{content:" ▾"}.docs-nav-drawer .docs-nav{display:grid;position:static;max-height:none;padding:0 1rem 1rem}}.docs-nav-group-body--reference{gap:var(--space-3)}
|