@pyric/cli 0.1.0-alpha.15 → 0.1.0-alpha.17
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 +13 -9
- package/dist/assurance/.generated/conformance-verdicts.d.ts +80 -72
- package/dist/assurance/.generated/conformance-verdicts.d.ts.map +1 -1
- package/dist/assurance/.generated/conformance-verdicts.js +80 -72
- package/dist/assurance/.generated/conformance-verdicts.js.map +1 -1
- package/dist/bridge/client/dispatch.js +1 -1
- package/dist/bridge/client/dispatch.js.map +1 -1
- package/dist/cli/database-rules.d.ts.map +1 -1
- package/dist/cli/database-rules.js +6 -4
- package/dist/cli/database-rules.js.map +1 -1
- package/dist/cli/dev-runner.d.ts +9 -0
- package/dist/cli/dev-runner.d.ts.map +1 -1
- package/dist/cli/dev-runner.js +18 -0
- package/dist/cli/dev-runner.js.map +1 -1
- package/dist/cli/serve.d.ts.map +1 -1
- package/dist/cli/serve.js +61 -6
- package/dist/cli/serve.js.map +1 -1
- package/dist/cli/verify.js +2 -2
- package/dist/cli/verify.js.map +1 -1
- package/dist/conformance/.generated/can-i-use-browser.d.ts.map +1 -1
- package/dist/conformance/.generated/can-i-use-browser.js +1 -1
- package/dist/conformance/.generated/can-i-use-browser.js.map +1 -1
- package/dist/conformance/.generated/can-i-use.d.ts.map +1 -1
- package/dist/conformance/.generated/can-i-use.js +1 -1
- package/dist/conformance/.generated/can-i-use.js.map +1 -1
- package/dist/conformance/.generated/conformance-docs.d.ts.map +1 -1
- package/dist/conformance/.generated/conformance-docs.js +1 -1
- package/dist/conformance/.generated/conformance-docs.js.map +1 -1
- package/dist/next/client-aliases.d.ts +11 -0
- package/dist/next/client-aliases.d.ts.map +1 -0
- package/dist/next/client-aliases.js +38 -0
- package/dist/next/client-aliases.js.map +1 -0
- package/dist/next/dev-rewrites.d.ts +9 -0
- package/dist/next/dev-rewrites.d.ts.map +1 -0
- package/dist/next/dev-rewrites.js +53 -0
- package/dist/next/dev-rewrites.js.map +1 -0
- package/dist/next/guard.d.ts +15 -0
- package/dist/next/guard.d.ts.map +1 -0
- package/dist/next/guard.js +52 -0
- package/dist/next/guard.js.map +1 -0
- package/dist/next/index.d.ts +12 -0
- package/dist/next/index.d.ts.map +1 -0
- package/dist/next/index.js +11 -0
- package/dist/next/index.js.map +1 -0
- package/dist/next/runtime-env.d.ts +7 -0
- package/dist/next/runtime-env.d.ts.map +1 -0
- package/dist/next/runtime-env.js +13 -0
- package/dist/next/runtime-env.js.map +1 -0
- package/dist/next/server-external-packages.d.ts +10 -0
- package/dist/next/server-external-packages.d.ts.map +1 -0
- package/dist/next/server-external-packages.js +34 -0
- package/dist/next/server-external-packages.js.map +1 -0
- package/dist/next/target-url.d.ts +11 -0
- package/dist/next/target-url.d.ts.map +1 -0
- package/dist/next/target-url.js +36 -0
- package/dist/next/target-url.js.map +1 -0
- package/dist/next/turbopack-config.d.ts +9 -0
- package/dist/next/turbopack-config.d.ts.map +1 -0
- package/dist/next/turbopack-config.js +39 -0
- package/dist/next/turbopack-config.js.map +1 -0
- package/dist/next/types.d.ts +40 -0
- package/dist/next/types.d.ts.map +1 -0
- package/dist/next/types.js +5 -0
- package/dist/next/types.js.map +1 -0
- package/dist/next/webpack-config.d.ts +11 -0
- package/dist/next/webpack-config.d.ts.map +1 -0
- package/dist/next/webpack-config.js +51 -0
- package/dist/next/webpack-config.js.map +1 -0
- package/dist/next/with-pyric.d.ts +22 -0
- package/dist/next/with-pyric.d.ts.map +1 -0
- package/dist/next/with-pyric.js +49 -0
- package/dist/next/with-pyric.js.map +1 -0
- package/dist/register/app-bridge.d.ts +9 -0
- package/dist/register/app-bridge.d.ts.map +1 -0
- package/dist/register/app-bridge.js +56 -0
- package/dist/register/app-bridge.js.map +1 -0
- package/dist/register/hooks.d.ts.map +1 -1
- package/dist/register/hooks.js +6 -1
- package/dist/register/hooks.js.map +1 -1
- package/dist/register/index.js +1 -1
- package/dist/register/index.js.map +1 -1
- package/dist/register/mapping.d.ts +3 -1
- package/dist/register/mapping.d.ts.map +1 -1
- package/dist/register/mapping.js +41 -5
- package/dist/register/mapping.js.map +1 -1
- package/dist/rtdb/rules-json.d.ts +12 -0
- package/dist/rtdb/rules-json.d.ts.map +1 -1
- package/dist/rtdb/rules-json.js +98 -0
- package/dist/rtdb/rules-json.js.map +1 -1
- package/dist/serve/bundler.d.ts.map +1 -1
- package/dist/serve/bundler.js +2 -0
- package/dist/serve/bundler.js.map +1 -1
- package/dist/serve/discovery.d.ts +4 -4
- package/dist/serve/discovery.d.ts.map +1 -1
- package/dist/serve/discovery.js +59 -38
- package/dist/serve/discovery.js.map +1 -1
- package/dist/serve/entries/app-ai-passthrough.d.ts +8 -0
- package/dist/serve/entries/app-ai-passthrough.d.ts.map +1 -0
- package/dist/serve/entries/app-ai-passthrough.js +59 -0
- package/dist/serve/entries/app-ai-passthrough.js.map +1 -0
- package/dist/serve/entries/auth-helper-core.d.ts +9 -0
- package/dist/serve/entries/auth-helper-core.d.ts.map +1 -1
- package/dist/serve/entries/auth-helper-core.js +37 -8
- package/dist/serve/entries/auth-helper-core.js.map +1 -1
- package/dist/serve/entries/auth.d.ts +1 -0
- package/dist/serve/entries/auth.d.ts.map +1 -1
- package/dist/serve/entries/auth.js +7 -4
- package/dist/serve/entries/auth.js.map +1 -1
- package/dist/serve/entries/bridge-url.d.ts.map +1 -1
- package/dist/serve/entries/bridge-url.js +7 -2
- package/dist/serve/entries/bridge-url.js.map +1 -1
- package/dist/serve/entries/database.d.ts +1 -0
- package/dist/serve/entries/database.d.ts.map +1 -1
- package/dist/serve/entries/database.js +1 -0
- package/dist/serve/entries/database.js.map +1 -1
- package/dist/serve/entries/firestore.d.ts +1 -0
- package/dist/serve/entries/firestore.d.ts.map +1 -1
- package/dist/serve/entries/firestore.js +1 -0
- 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 +4 -2
- package/dist/serve/entries/init.js.map +1 -1
- package/dist/serve/entries/runtime.js +23 -0
- package/dist/serve/entries/runtime.js.map +1 -1
- package/dist/serve/entries/storage.d.ts +2 -0
- package/dist/serve/entries/storage.d.ts.map +1 -1
- package/dist/serve/entries/storage.js +9 -2
- package/dist/serve/entries/storage.js.map +1 -1
- package/dist/serve/html-injection.d.ts +3 -1
- package/dist/serve/html-injection.d.ts.map +1 -1
- package/dist/serve/html-injection.js +27 -1
- package/dist/serve/html-injection.js.map +1 -1
- package/dist/serve/rules.js +2 -2
- package/dist/serve/rules.js.map +1 -1
- package/dist/serve/runtime/chip-config.d.ts +1 -1
- package/dist/serve/runtime/chip-config.d.ts.map +1 -1
- package/dist/serve/runtime/chip-config.js +16 -8
- package/dist/serve/runtime/chip-config.js.map +1 -1
- package/dist/serve/sandbox-session.d.ts +1 -0
- package/dist/serve/sandbox-session.d.ts.map +1 -1
- package/dist/serve/sandbox-session.js +30 -2
- package/dist/serve/sandbox-session.js.map +1 -1
- package/dist/serve/site-ui/_astro/_studio_.B6b_G1ev.css +1 -0
- package/dist/serve/site-ui/_astro/app.bnmVTkIY.js +11 -0
- package/dist/serve/site-ui/_astro/app.t6u-adB_.js +1 -0
- package/dist/serve/site-ui/_astro/{chess-showcase.DzPO6kz0.js → chess-showcase.kC8dXLKY.js} +1 -1
- package/dist/serve/site-ui/_astro/{example-runtime.CM0H02rx.js → example-runtime.D79PnoSk.js} +1 -1
- package/dist/serve/site-ui/_astro/index.DzVde04M.js +1 -0
- package/dist/serve/site-ui/_astro/reads.BYBRLbsE.js +1 -0
- package/dist/serve/site-ui/_astro/sandbox-controls.C9Aaazt8.js +1252 -0
- package/dist/serve/site-ui/_astro/{seed.BCn5DhHS.js → seed.DANAIyRw.js} +1 -1
- package/dist/serve/site-ui/auth/index.html +2 -2
- package/dist/serve/site-ui/docs/_rhythm/index.html +1 -1
- package/dist/serve/site-ui/docs/agent/set-up-your-agent/index.html +1 -1
- package/dist/serve/site-ui/docs/agent/watch-and-review/index.html +1 -1
- package/dist/serve/site-ui/docs/agent/work-with-an-agent/index.html +1 -1
- package/dist/serve/site-ui/docs/ai-compat/index.html +85 -85
- package/dist/serve/site-ui/docs/ai-compat.md +84 -84
- package/dist/serve/site-ui/docs/api-reference/index.html +3 -1
- package/dist/serve/site-ui/docs/api-reference.md +2 -0
- package/dist/serve/site-ui/docs/app-compat/index.html +28 -28
- package/dist/serve/site-ui/docs/app-compat.md +27 -27
- package/dist/serve/site-ui/docs/auth-compat/index.html +122 -122
- package/dist/serve/site-ui/docs/auth-compat.md +121 -121
- package/dist/serve/site-ui/docs/build/ai-logic/index.html +1 -1
- package/dist/serve/site-ui/docs/build/authentication/index.html +1 -1
- package/dist/serve/site-ui/docs/build/cloud-firestore/index.html +1 -1
- package/dist/serve/site-ui/docs/build/cloud-messaging/index.html +1 -1
- package/dist/serve/site-ui/docs/build/cloud-storage/index.html +1 -1
- package/dist/serve/site-ui/docs/build/realtime-database/index.html +1 -1
- package/dist/serve/site-ui/docs/conformance-scores/index.html +4 -4
- package/dist/serve/site-ui/docs/conformance-scores.md +3 -3
- package/dist/serve/site-ui/docs/create-pyric-reference-api/index.html +6 -6
- package/dist/serve/site-ui/docs/create-pyric-reference-api.md +5 -5
- package/dist/serve/site-ui/docs/database-compat/index.html +200 -448
- package/dist/serve/site-ui/docs/database-compat.md +198 -461
- package/dist/serve/site-ui/docs/examples/chess/index.html +2 -2
- package/dist/serve/site-ui/docs/examples/index.html +1 -1
- package/dist/serve/site-ui/docs/firestore-compat/index.html +186 -195
- package/dist/serve/site-ui/docs/firestore-compat.md +184 -195
- package/dist/serve/site-ui/docs/functions-rtdb-compat/index.html +15 -15
- package/dist/serve/site-ui/docs/functions-rtdb-compat.md +14 -14
- package/dist/serve/site-ui/docs/get-started/how-the-swap-works/index.html +1 -1
- package/dist/serve/site-ui/docs/get-started/nextjs/index.html +57 -0
- package/dist/serve/site-ui/docs/get-started/nextjs.md +86 -0
- package/dist/serve/site-ui/docs/get-started/start-building/index.html +25 -8
- package/dist/serve/site-ui/docs/get-started/start-building.md +34 -5
- package/dist/serve/site-ui/docs/get-started/vite/index.html +26 -0
- package/dist/serve/site-ui/docs/get-started/vite.md +45 -0
- package/dist/serve/site-ui/docs/index.json +668 -103
- package/dist/serve/site-ui/docs/messaging-compat/index.html +56 -56
- package/dist/serve/site-ui/docs/messaging-compat.md +55 -55
- package/dist/serve/site-ui/docs/observe/resolve-runtime-status/index.html +1 -1
- package/dist/serve/site-ui/docs/observe/see-whats-happening/index.html +1 -1
- package/dist/serve/site-ui/docs/observe/shape-your-data/index.html +1 -1
- package/dist/serve/site-ui/docs/overview/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-admin-app-reference-api/index.html +39 -13
- package/dist/serve/site-ui/docs/pyric-admin-app-reference-api.md +28 -2
- package/dist/serve/site-ui/docs/pyric-admin-auth-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-admin-database-reference-api/index.html +38 -6
- package/dist/serve/site-ui/docs/pyric-admin-database-reference-api.md +43 -0
- package/dist/serve/site-ui/docs/pyric-admin-firestore-reference-api/index.html +9 -1
- package/dist/serve/site-ui/docs/pyric-admin-firestore-reference-api.md +8 -0
- package/dist/serve/site-ui/docs/pyric-admin-messaging-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-admin-storage-reference-api/index.html +27 -4
- package/dist/serve/site-ui/docs/pyric-admin-storage-reference-api.md +23 -0
- package/dist/serve/site-ui/docs/pyric-ai-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-ai-scripting-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-app-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-auth-reference-api/index.html +2 -2
- package/dist/serve/site-ui/docs/pyric-auth-reference-api.md +1 -1
- package/dist/serve/site-ui/docs/pyric-cli-assurance-browser-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-cli-assurance-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-cli-bridge-client-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-cli-bridge-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-cli-conformance-browser-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-cli-conformance-docs-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-cli-conformance-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-cli-credentials-node-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-cli-discover-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-cli-next-reference-api/index.html +123 -0
- package/dist/serve/site-ui/docs/pyric-cli-next-reference-api.md +99 -0
- package/dist/serve/site-ui/docs/pyric-cli-register-app-bridge-reference-api/index.html +127 -0
- package/dist/serve/site-ui/docs/pyric-cli-register-app-bridge-reference-api.md +174 -0
- package/dist/serve/site-ui/docs/pyric-cli-register-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-cli-remote-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-cli-serve-worker-reference-api/index.html +570 -326
- package/dist/serve/site-ui/docs/pyric-cli-serve-worker-reference-api.md +198 -6
- package/dist/serve/site-ui/docs/pyric-cli-verify-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-cli-vite-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-database-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-firestore-reference-api/index.html +2971 -627
- package/dist/serve/site-ui/docs/pyric-firestore-reference-api.md +2873 -517
- package/dist/serve/site-ui/docs/pyric-messaging-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-messaging-sw-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-rules-reference-api/index.html +43 -3
- package/dist/serve/site-ui/docs/pyric-rules-reference-api.md +8 -0
- package/dist/serve/site-ui/docs/pyric-sandbox-database-reference-api/index.html +26 -2
- package/dist/serve/site-ui/docs/pyric-sandbox-database-reference-api.md +24 -0
- package/dist/serve/site-ui/docs/pyric-sandbox-firestore-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-sandbox-reference-api/index.html +77 -9
- package/dist/serve/site-ui/docs/pyric-sandbox-reference-api.md +28 -13
- package/dist/serve/site-ui/docs/pyric-storage-reference-api/index.html +240 -63
- package/dist/serve/site-ui/docs/pyric-storage-reference-api.md +164 -5
- package/dist/serve/site-ui/docs/pyric-ui-agents-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-ui-auth-hooks-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-ui-auth-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-ui-events-hooks-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-ui-events-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-ui-firestore-hooks-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-ui-firestore-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-ui-primitives-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-ui-rtdb-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-ui-rules-hooks-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-ui-rules-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-ui-storage-hooks-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-ui-storage-reference-api/index.html +2 -1
- package/dist/serve/site-ui/docs/pyric-ui-storage-reference-api.md +1 -0
- package/dist/serve/site-ui/docs/pyric-ui-traffic-hooks-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-ui-traffic-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/rules-compat/index.html +87 -79
- package/dist/serve/site-ui/docs/rules-compat.md +86 -78
- package/dist/serve/site-ui/docs/secure/audit-your-rules/index.html +1 -1
- package/dist/serve/site-ui/docs/secure/firestore-rules-limits/index.html +1 -1
- package/dist/serve/site-ui/docs/secure/read-a-denial/index.html +1 -1
- package/dist/serve/site-ui/docs/secure/rtdb-rules-in-typescript/index.html +1 -1
- package/dist/serve/site-ui/docs/secure/rules-standard-library/index.html +1 -1
- package/dist/serve/site-ui/docs/secure/secure-it-with-rules/index.html +1 -1
- package/dist/serve/site-ui/docs/secure/simulate-and-lint/index.html +1 -1
- package/dist/serve/site-ui/docs/secure/write-a-rules-test-suite/index.html +1 -1
- package/dist/serve/site-ui/docs/ship/ship-to-production/index.html +1 -1
- package/dist/serve/site-ui/docs/ship/test-in-node/index.html +1 -1
- package/dist/serve/site-ui/docs/storage-compat/index.html +119 -125
- package/dist/serve/site-ui/docs/storage-compat.md +118 -124
- package/dist/serve/site-ui/docs/trust/how-we-know-it-matches-firebase/index.html +1 -1
- package/dist/serve/site-ui/docs/trust/rules-standard-library/index.html +1 -1
- package/dist/serve/site-ui/docs/trust/storage-rules-stdlib-research/index.html +1 -1
- package/dist/serve/site-ui/docs/trust/versioning-and-compatibility/index.html +1 -1
- package/dist/serve/site-ui/docs/tutorial/index.html +1 -1
- package/dist/serve/site-ui/examples/chess/index.html +1 -1
- package/dist/serve/site-ui/examples/firestore-first-write/index.html +1 -1
- package/dist/serve/site-ui/firestore/index.html +2 -2
- package/dist/serve/site-ui/index.html +2 -2
- package/dist/serve/site-ui/llms.txt +6 -2
- package/dist/serve/site-ui/rtdb/index.html +2 -2
- package/dist/serve/site-ui/settings/index.html +2 -2
- package/dist/serve/site-ui/storage/index.html +2 -2
- package/dist/serve/site-ui/traffic/index.html +2 -2
- package/dist/serve/vite-ai-config.d.ts +4 -1
- package/dist/serve/vite-ai-config.d.ts.map +1 -1
- package/dist/serve/vite-ai-config.js +83 -19
- package/dist/serve/vite-ai-config.js.map +1 -1
- package/dist/serve/vite-generation-rules-watch.d.ts.map +1 -1
- package/dist/serve/vite-generation-rules-watch.js +61 -14
- package/dist/serve/vite-generation-rules-watch.js.map +1 -1
- package/dist/serve/vite-module-swap.d.ts +4 -1
- package/dist/serve/vite-module-swap.d.ts.map +1 -1
- package/dist/serve/vite-module-swap.js +106 -21
- package/dist/serve/vite-module-swap.js.map +1 -1
- package/dist/serve/vite-plugin.d.ts.map +1 -1
- package/dist/serve/vite-plugin.js +45 -5
- package/dist/serve/vite-plugin.js.map +1 -1
- package/dist/serve/vite-sandbox-generation.js +1 -1
- package/dist/serve/vite-sandbox-generation.js.map +1 -1
- package/dist/serve/worker/client/resumable.d.ts +30 -0
- package/dist/serve/worker/client/resumable.d.ts.map +1 -0
- package/dist/serve/worker/client/resumable.js +416 -0
- package/dist/serve/worker/client/resumable.js.map +1 -0
- package/dist/serve/worker/client/rtdb-references.d.ts.map +1 -1
- package/dist/serve/worker/client/rtdb-references.js +4 -1
- package/dist/serve/worker/client/rtdb-references.js.map +1 -1
- package/dist/serve/worker/client/storage.d.ts +16 -2
- package/dist/serve/worker/client/storage.d.ts.map +1 -1
- package/dist/serve/worker/client/storage.js +57 -6
- package/dist/serve/worker/client/storage.js.map +1 -1
- package/dist/serve/worker/host/rules.d.ts.map +1 -1
- package/dist/serve/worker/host/rules.js +2 -1
- package/dist/serve/worker/host/rules.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 +1 -1
- package/dist/serve/worker/index.js.map +1 -1
- package/dist/serve/worker/serve-init.d.ts.map +1 -1
- package/dist/serve/worker/serve-init.js +31 -0
- package/dist/serve/worker/serve-init.js.map +1 -1
- package/package.json +15 -4
- package/src/assurance/.generated/conformance-verdicts.ts +80 -72
- package/src/bridge/client/dispatch.ts +1 -1
- package/src/cli/cli.test.ts +14 -0
- package/src/cli/database-rules.ts +6 -4
- package/src/cli/dev-runner.ts +21 -0
- package/src/cli/serve.ts +62 -5
- package/src/cli/verify.ts +2 -2
- package/src/conformance/.generated/can-i-use-browser.ts +1 -1
- package/src/conformance/.generated/can-i-use.ts +1 -1
- package/src/conformance/.generated/conformance-docs.ts +1 -1
- package/src/next/client-aliases.ts +39 -0
- package/src/next/dev-rewrites.ts +77 -0
- package/src/next/guard.ts +61 -0
- package/src/next/index.ts +16 -0
- package/src/next/runtime-env.ts +18 -0
- package/src/next/server-external-packages.ts +43 -0
- package/src/next/target-url.ts +46 -0
- package/src/next/turbopack-config.ts +54 -0
- package/src/next/types.ts +47 -0
- package/src/next/webpack-config.ts +71 -0
- package/src/next/with-pyric.ts +58 -0
- package/src/register/app-bridge.ts +79 -0
- package/src/register/hooks.ts +6 -1
- package/src/register/index.ts +1 -1
- package/src/register/mapping.ts +50 -4
- package/src/rtdb/rules-json.ts +110 -0
- package/src/serve/bundler.ts +2 -0
- package/src/serve/discovery.ts +65 -44
- package/src/serve/entries/app-ai-passthrough.ts +83 -0
- package/src/serve/entries/auth-helper-core.ts +44 -8
- package/src/serve/entries/auth.ts +9 -4
- package/src/serve/entries/bridge-url.ts +9 -2
- package/src/serve/entries/database.ts +1 -0
- package/src/serve/entries/firestore.ts +1 -0
- package/src/serve/entries/init.ts +5 -2
- package/src/serve/entries/runtime.ts +25 -0
- package/src/serve/entries/storage.ts +12 -1
- package/src/serve/html-injection.ts +26 -1
- package/src/serve/rules.ts +2 -2
- package/src/serve/runtime/chip-config.ts +19 -6
- package/src/serve/sandbox-session.ts +31 -2
- package/src/serve/vite-ai-config.ts +86 -19
- package/src/serve/vite-generation-rules-watch.ts +67 -15
- package/src/serve/vite-module-swap.ts +121 -21
- package/src/serve/vite-plugin.ts +44 -6
- package/src/serve/vite-sandbox-generation.ts +1 -1
- package/src/serve/worker/client/resumable.ts +506 -0
- package/src/serve/worker/client/rtdb-references.ts +4 -1
- package/src/serve/worker/client/storage.ts +77 -7
- package/src/serve/worker/host/rules.ts +2 -1
- package/src/serve/worker/index.ts +4 -0
- package/src/serve/worker/serve-init.ts +30 -0
- package/dist/serve/site-ui/_astro/_studio_.BtYpqe1A.css +0 -1
- package/dist/serve/site-ui/_astro/app.BnMC0ywl.js +0 -109
- package/dist/serve/site-ui/_astro/app.DVXXR-WI.js +0 -1
- package/dist/serve/site-ui/_astro/index.B4Kh80he.js +0 -1
- package/dist/serve/site-ui/_astro/reads.D1exkX1-.js +0 -1
- package/dist/serve/site-ui/_astro/sandbox-controls.BqMePr5V.js +0 -1153
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conformance-docs.js","sourceRoot":"","sources":["../../../src/conformance/.generated/conformance-docs.ts"],"names":[],"mappings":"AAaA,MAAM,CAAC,MAAM,sBAAsB,GAAmC,CAAC,EAAC,MAAM,EAAC,oBAAoB,EAAC,OAAO,EAAC,qBAAqB,EAAC,OAAO,EAAC,qBAAqB,EAAC,UAAU,EAAC,
|
|
1
|
+
{"version":3,"file":"conformance-docs.js","sourceRoot":"","sources":["../../../src/conformance/.generated/conformance-docs.ts"],"names":[],"mappings":"AAaA,MAAM,CAAC,MAAM,sBAAsB,GAAmC,CAAC,EAAC,MAAM,EAAC,oBAAoB,EAAC,OAAO,EAAC,qBAAqB,EAAC,OAAO,EAAC,qBAAqB,EAAC,UAAU,EAAC,m7IAAm7I,EAAC,EAAC,EAAC,MAAM,EAAC,YAAY,EAAC,OAAO,EAAC,KAAK,EAAC,OAAO,EAAC,gCAAgC,EAAC,UAAU,EAAC,i2rBAAi2rB,EAAC,EAAC,EAAC,MAAM,EAAC,WAAW,EAAC,OAAO,EAAC,UAAU,EAAC,OAAO,EAAC,+BAA+B,EAAC,UAAU,EAAC,8wlDAA8wlD,EAAC,EAAC,EAAC,MAAM,EAAC,aAAa,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAC,iCAAiC,EAAC,UAAU,EAAC,m98GAAm98G,EAAC,EAAC,EAAC,MAAM,EAAC,kBAAkB,EAAC,OAAO,EAAC,WAAW,EAAC,OAAO,EAAC,sCAAsC,EAAC,UAAU,EAAC,4wsGAA4wsG,EAAC,EAAC,EAAC,MAAM,EAAC,iBAAiB,EAAC,OAAO,EAAC,mBAAmB,EAAC,OAAO,EAAC,qCAAqC,EAAC,UAAU,EAAC,ysgIAAysgI,EAAC,EAAC,EAAC,MAAM,EAAC,gBAAgB,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,oCAAoC,EAAC,UAAU,EAAC,0i4DAA0i4D,EAAC,EAAC,EAAC,MAAM,EAAC,kBAAkB,EAAC,OAAO,EAAC,WAAW,EAAC,OAAO,EAAC,sCAAsC,EAAC,UAAU,EAAC,omoDAAomoD,EAAC,EAAC,EAAC,MAAM,EAAC,uBAAuB,EAAC,OAAO,EAAC,kBAAkB,EAAC,OAAO,EAAC,mDAAmD,EAAC,UAAU,EAAC,wrUAAwrU,EAAC,EAAC,EAAC,MAAM,EAAC,cAAc,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,kCAAkC,EAAC,UAAU,EAAC,25tEAA25tE,EAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Retrieve the explicit map of canonical Firebase import specifiers to their
|
|
3
|
+
* standalone Pyric browser wrapper entries.
|
|
4
|
+
*/
|
|
5
|
+
export declare function getClientAliases(): Record<string, string>;
|
|
6
|
+
/**
|
|
7
|
+
* Retrieve benign boolean fallback replacements for Node built-in modules
|
|
8
|
+
* accessible in browser packaging bundles.
|
|
9
|
+
*/
|
|
10
|
+
export declare function getNodeBuiltinFallbacks(): Record<string, boolean>;
|
|
11
|
+
//# sourceMappingURL=client-aliases.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client-aliases.d.ts","sourceRoot":"","sources":["../../src/next/client-aliases.ts"],"names":[],"mappings":"AAKA;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAazD;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAUjE"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Client-side module aliasing definitions for Firebase Web SDKs.
|
|
3
|
+
*/
|
|
4
|
+
import { defaultSdkEntries } from '../serve/bundler.js';
|
|
5
|
+
/**
|
|
6
|
+
* Retrieve the explicit map of canonical Firebase import specifiers to their
|
|
7
|
+
* standalone Pyric browser wrapper entries.
|
|
8
|
+
*/
|
|
9
|
+
export function getClientAliases() {
|
|
10
|
+
const entries = defaultSdkEntries();
|
|
11
|
+
const aliases = {
|
|
12
|
+
'firebase/ai': entries.ai,
|
|
13
|
+
'firebase/app': entries.app,
|
|
14
|
+
'firebase/auth': entries.auth,
|
|
15
|
+
'firebase/firestore': entries.firestore,
|
|
16
|
+
'firebase/database': entries.database,
|
|
17
|
+
'firebase/messaging': entries.messaging,
|
|
18
|
+
'firebase/messaging/sw': entries['messaging-sw'],
|
|
19
|
+
'firebase/storage': entries.storage,
|
|
20
|
+
};
|
|
21
|
+
return aliases;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Retrieve benign boolean fallback replacements for Node built-in modules
|
|
25
|
+
* accessible in browser packaging bundles.
|
|
26
|
+
*/
|
|
27
|
+
export function getNodeBuiltinFallbacks() {
|
|
28
|
+
const fallbacks = {
|
|
29
|
+
fs: false,
|
|
30
|
+
path: false,
|
|
31
|
+
url: false,
|
|
32
|
+
'node:fs': false,
|
|
33
|
+
'node:path': false,
|
|
34
|
+
'node:url': false,
|
|
35
|
+
};
|
|
36
|
+
return fallbacks;
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=client-aliases.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client-aliases.js","sourceRoot":"","sources":["../../src/next/client-aliases.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD;;;GAGG;AACH,MAAM,UAAU,gBAAgB;IAC9B,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,MAAM,OAAO,GAA2B;QACtC,aAAa,EAAE,OAAO,CAAC,EAAE;QACzB,cAAc,EAAE,OAAO,CAAC,GAAG;QAC3B,eAAe,EAAE,OAAO,CAAC,IAAI;QAC7B,oBAAoB,EAAE,OAAO,CAAC,SAAS;QACvC,mBAAmB,EAAE,OAAO,CAAC,QAAQ;QACrC,oBAAoB,EAAE,OAAO,CAAC,SAAS;QACvC,uBAAuB,EAAE,OAAO,CAAC,cAAc,CAAC;QAChD,kBAAkB,EAAE,OAAO,CAAC,OAAO;KACpC,CAAC;IACF,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,uBAAuB;IACrC,MAAM,SAAS,GAA4B;QACzC,EAAE,EAAE,KAAK;QACT,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,KAAK;QACV,SAAS,EAAE,KAAK;QAChB,WAAW,EAAE,KAAK;QAClB,UAAU,EAAE,KAAK;KAClB,CAAC;IACF,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Next.js dev-time rewrite rules for routing Pyric bridge and socket traffic.
|
|
3
|
+
*/
|
|
4
|
+
import type { NextConfigObject, PyricNextOptions } from './types.js';
|
|
5
|
+
/**
|
|
6
|
+
* Attach Pyric dev-time rewrites to ensure zero-CORS browser runtime communication.
|
|
7
|
+
*/
|
|
8
|
+
export declare function augmentDevRewrites(config: NextConfigObject, options?: PyricNextOptions): NextConfigObject;
|
|
9
|
+
//# sourceMappingURL=dev-rewrites.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dev-rewrites.d.ts","sourceRoot":"","sources":["../../src/next/dev-rewrites.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AA+CrE;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,gBAAgB,CAuBzG"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { resolveSandboxTargetUrl } from './target-url.js';
|
|
2
|
+
const PYRIC_PROXY_SOURCE = '/__pyric/:path*';
|
|
3
|
+
const PYRIC_PROXY_PATH = '/__pyric/:path*';
|
|
4
|
+
function shouldSkipRewrites(options) {
|
|
5
|
+
if (options === undefined) {
|
|
6
|
+
return false;
|
|
7
|
+
}
|
|
8
|
+
return options.rewrites === false;
|
|
9
|
+
}
|
|
10
|
+
function assembleRewriteRule(options) {
|
|
11
|
+
const targetUrl = resolveSandboxTargetUrl(options);
|
|
12
|
+
const destinationUrl = `${targetUrl}${PYRIC_PROXY_PATH}`;
|
|
13
|
+
const rule = {
|
|
14
|
+
source: PYRIC_PROXY_SOURCE,
|
|
15
|
+
destination: destinationUrl,
|
|
16
|
+
};
|
|
17
|
+
return rule;
|
|
18
|
+
}
|
|
19
|
+
function prependToArrayRewrites(existing, pyricRule) {
|
|
20
|
+
const combinedRules = [pyricRule, ...existing];
|
|
21
|
+
return combinedRules;
|
|
22
|
+
}
|
|
23
|
+
function prependToObjectRewrites(existing, pyricRule) {
|
|
24
|
+
const beforeFilesList = Array.isArray(existing.beforeFiles) ? existing.beforeFiles : [];
|
|
25
|
+
const updatedBeforeFiles = [pyricRule, ...beforeFilesList];
|
|
26
|
+
const updatedObject = Object.assign({}, existing, { beforeFiles: updatedBeforeFiles });
|
|
27
|
+
return updatedObject;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Attach Pyric dev-time rewrites to ensure zero-CORS browser runtime communication.
|
|
31
|
+
*/
|
|
32
|
+
export function augmentDevRewrites(config, options) {
|
|
33
|
+
if (shouldSkipRewrites(options)) {
|
|
34
|
+
return config;
|
|
35
|
+
}
|
|
36
|
+
const updatedConfig = Object.assign({}, config);
|
|
37
|
+
const pyricRule = assembleRewriteRule(options);
|
|
38
|
+
const originalRewrites = updatedConfig.rewrites;
|
|
39
|
+
updatedConfig.rewrites = async () => {
|
|
40
|
+
if (typeof originalRewrites === 'function') {
|
|
41
|
+
const existingRewrites = await originalRewrites();
|
|
42
|
+
if (Array.isArray(existingRewrites)) {
|
|
43
|
+
return prependToArrayRewrites(existingRewrites, pyricRule);
|
|
44
|
+
}
|
|
45
|
+
if (typeof existingRewrites === 'object' && existingRewrites !== null) {
|
|
46
|
+
return prependToObjectRewrites(existingRewrites, pyricRule);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
return [pyricRule];
|
|
50
|
+
};
|
|
51
|
+
return updatedConfig;
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=dev-rewrites.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dev-rewrites.js","sourceRoot":"","sources":["../../src/next/dev-rewrites.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAE1D,MAAM,kBAAkB,GAAG,iBAAiB,CAAC;AAC7C,MAAM,gBAAgB,GAAG,iBAAiB,CAAC;AAc3C,SAAS,kBAAkB,CAAC,OAA0B;IACpD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,OAAO,CAAC,QAAQ,KAAK,KAAK,CAAC;AACpC,CAAC;AAED,SAAS,mBAAmB,CAAC,OAA0B;IACrD,MAAM,SAAS,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;IACnD,MAAM,cAAc,GAAG,GAAG,SAAS,GAAG,gBAAgB,EAAE,CAAC;IACzD,MAAM,IAAI,GAAgB;QACxB,MAAM,EAAE,kBAAkB;QAC1B,WAAW,EAAE,cAAc;KAC5B,CAAC;IACF,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,sBAAsB,CAAC,QAAuB,EAAE,SAAsB;IAC7E,MAAM,aAAa,GAAG,CAAC,SAAS,EAAE,GAAG,QAAQ,CAAC,CAAC;IAC/C,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,SAAS,uBAAuB,CAAC,QAAwB,EAAE,SAAsB;IAC/E,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;IACxF,MAAM,kBAAkB,GAAG,CAAC,SAAS,EAAE,GAAG,eAAe,CAAC,CAAC;IAC3D,MAAM,aAAa,GAAmB,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,EAAE,WAAW,EAAE,kBAAkB,EAAE,CAAC,CAAC;IACvG,OAAO,aAAa,CAAC;AACvB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAwB,EAAE,OAA0B;IACrF,IAAI,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC;QAChC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,aAAa,GAAqB,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IAClE,MAAM,SAAS,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC/C,MAAM,gBAAgB,GAAG,aAAa,CAAC,QAAQ,CAAC;IAEhD,aAAa,CAAC,QAAQ,GAAG,KAAK,IAAI,EAAE;QAClC,IAAI,OAAO,gBAAgB,KAAK,UAAU,EAAE,CAAC;YAC3C,MAAM,gBAAgB,GAAG,MAAM,gBAAgB,EAAE,CAAC;YAClD,IAAI,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;gBACpC,OAAO,sBAAsB,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC;YAC7D,CAAC;YACD,IAAI,OAAO,gBAAgB,KAAK,QAAQ,IAAI,gBAAgB,KAAK,IAAI,EAAE,CAAC;gBACtE,OAAO,uBAAuB,CAAC,gBAAkC,EAAE,SAAS,CAAC,CAAC;YAChF,CAAC;QACH,CAAC;QACD,OAAO,CAAC,SAAS,CAAC,CAAC;IACrB,CAAC,CAAC;IAEF,OAAO,aAAa,CAAC;AACvB,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Execution policies and safety interlocks for Next.js configuration loading.
|
|
3
|
+
*/
|
|
4
|
+
import type { PyricNextOptions } from './types.js';
|
|
5
|
+
/**
|
|
6
|
+
* Check whether the active environment requires production build passthrough
|
|
7
|
+
* without Pyric sandbox module substitution.
|
|
8
|
+
*/
|
|
9
|
+
export declare function isProductionPassthrough(): boolean;
|
|
10
|
+
/**
|
|
11
|
+
* Verify whether the Next.js development server is booting under a secure,
|
|
12
|
+
* activated sandbox environment. Throws a protective terminal error if un-sandboxed.
|
|
13
|
+
*/
|
|
14
|
+
export declare function enforceSandboxGuard(options?: PyricNextOptions): void;
|
|
15
|
+
//# sourceMappingURL=guard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"guard.d.ts","sourceRoot":"","sources":["../../src/next/guard.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAKnD;;;GAGG;AACH,wBAAgB,uBAAuB,IAAI,OAAO,CAOjD;AAuBD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAcpE"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
const PRODUCTION_ENVIRONMENT = 'production';
|
|
2
|
+
const FORCED_SANDBOX_FLAG = '1';
|
|
3
|
+
/**
|
|
4
|
+
* Check whether the active environment requires production build passthrough
|
|
5
|
+
* without Pyric sandbox module substitution.
|
|
6
|
+
*/
|
|
7
|
+
export function isProductionPassthrough() {
|
|
8
|
+
const isProductionEnv = process.env.NODE_ENV === PRODUCTION_ENVIRONMENT;
|
|
9
|
+
const isForcedOverride = process.env.PYRIC_SANDBOX_FORCE === FORCED_SANDBOX_FLAG;
|
|
10
|
+
if (!isProductionEnv) {
|
|
11
|
+
return false;
|
|
12
|
+
}
|
|
13
|
+
return !isForcedOverride;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Check whether the developer opted out of the sandbox environment guard.
|
|
17
|
+
*/
|
|
18
|
+
function isGuardExplicitlyDisabled(options) {
|
|
19
|
+
if (options === undefined) {
|
|
20
|
+
return false;
|
|
21
|
+
}
|
|
22
|
+
return options.guard === false;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Check whether an active Pyric sandbox environment variable is present in the process.
|
|
26
|
+
*/
|
|
27
|
+
function hasActiveSandboxEnvironment() {
|
|
28
|
+
const sandboxValue = process.env.PYRIC_SANDBOX;
|
|
29
|
+
if (sandboxValue === undefined) {
|
|
30
|
+
return false;
|
|
31
|
+
}
|
|
32
|
+
return sandboxValue.length > 0;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Verify whether the Next.js development server is booting under a secure,
|
|
36
|
+
* activated sandbox environment. Throws a protective terminal error if un-sandboxed.
|
|
37
|
+
*/
|
|
38
|
+
export function enforceSandboxGuard(options) {
|
|
39
|
+
if (isGuardExplicitlyDisabled(options)) {
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
if (hasActiveSandboxEnvironment()) {
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
const errorMessage = '[Pyric] Next.js development server started without active Pyric sandbox environment variables.\n' +
|
|
46
|
+
'To prevent accidental connections to production Firebase databases, launch this server using:\n' +
|
|
47
|
+
' pyric dev -- next dev\n' +
|
|
48
|
+
'or source environment keys via `pyric env`.\n' +
|
|
49
|
+
'To disable this guard, pass { guard: false } to withPyric(config, options).';
|
|
50
|
+
throw new Error(errorMessage);
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=guard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"guard.js","sourceRoot":"","sources":["../../src/next/guard.ts"],"names":[],"mappings":"AAKA,MAAM,sBAAsB,GAAG,YAAY,CAAC;AAC5C,MAAM,mBAAmB,GAAG,GAAG,CAAC;AAEhC;;;GAGG;AACH,MAAM,UAAU,uBAAuB;IACrC,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,sBAAsB,CAAC;IACxE,MAAM,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,KAAK,mBAAmB,CAAC;IACjF,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,CAAC,gBAAgB,CAAC;AAC3B,CAAC;AAED;;GAEG;AACH,SAAS,yBAAyB,CAAC,OAA0B;IAC3D,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,OAAO,CAAC,KAAK,KAAK,KAAK,CAAC;AACjC,CAAC;AAED;;GAEG;AACH,SAAS,2BAA2B;IAClC,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;IAC/C,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;AACjC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAA0B;IAC5D,IAAI,yBAAyB,CAAC,OAAO,CAAC,EAAE,CAAC;QACvC,OAAO;IACT,CAAC;IACD,IAAI,2BAA2B,EAAE,EAAE,CAAC;QAClC,OAAO;IACT,CAAC;IACD,MAAM,YAAY,GAChB,kGAAkG;QAClG,iGAAiG;QACjG,2BAA2B;QAC3B,+CAA+C;QAC/C,6EAA6E,CAAC;IAChF,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;AAChC,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `@pyric/cli/next` — the dev-only Next.js configuration wrapper (`withPyric`)
|
|
3
|
+
* that configures module aliasing for Webpack & Turbopack, externalizes server
|
|
4
|
+
* SDKs for Node runtime loader interception, and establishes dev-time rewrites
|
|
5
|
+
* for Pyric sandbox socket & bridge communication.
|
|
6
|
+
*
|
|
7
|
+
* import { withPyric } from '@pyric/cli/next';
|
|
8
|
+
* export default withPyric({ /* your next config * / });
|
|
9
|
+
*/
|
|
10
|
+
export { withPyric } from './with-pyric.js';
|
|
11
|
+
export type { PyricNextOptions, NextConfig, NextConfigObject, NextConfigFunction, } from './types.js';
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/next/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,YAAY,EACV,gBAAgB,EAChB,UAAU,EACV,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `@pyric/cli/next` — the dev-only Next.js configuration wrapper (`withPyric`)
|
|
3
|
+
* that configures module aliasing for Webpack & Turbopack, externalizes server
|
|
4
|
+
* SDKs for Node runtime loader interception, and establishes dev-time rewrites
|
|
5
|
+
* for Pyric sandbox socket & bridge communication.
|
|
6
|
+
*
|
|
7
|
+
* import { withPyric } from '@pyric/cli/next';
|
|
8
|
+
* export default withPyric({ /* your next config * / });
|
|
9
|
+
*/
|
|
10
|
+
export { withPyric } from './with-pyric.js';
|
|
11
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/next/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Augment Next.js configuration environment variables to pass Pyric runtime
|
|
3
|
+
* options (such as chip state) down into browser client builds.
|
|
4
|
+
*/
|
|
5
|
+
import type { NextConfigObject, PyricNextOptions } from './types.js';
|
|
6
|
+
export declare function augmentRuntimeEnv(config: NextConfigObject, options?: PyricNextOptions): NextConfigObject;
|
|
7
|
+
//# sourceMappingURL=runtime-env.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-env.d.ts","sourceRoot":"","sources":["../../src/next/runtime-env.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAGrE,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,gBAAgB,CAUxG"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { runtimeChipMetaValue } from '../serve/runtime/chip-config.js';
|
|
2
|
+
export function augmentRuntimeEnv(config, options) {
|
|
3
|
+
if (options === undefined || options.runtimeChip === undefined) {
|
|
4
|
+
return config;
|
|
5
|
+
}
|
|
6
|
+
const updatedConfig = Object.assign({}, config);
|
|
7
|
+
const existingEnv = updatedConfig.env !== undefined ? Object.assign({}, updatedConfig.env) : {};
|
|
8
|
+
const chipValue = runtimeChipMetaValue(options.runtimeChip);
|
|
9
|
+
existingEnv.PYRIC_RUNTIME_CHIP = chipValue;
|
|
10
|
+
updatedConfig.env = existingEnv;
|
|
11
|
+
return updatedConfig;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=runtime-env.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-env.js","sourceRoot":"","sources":["../../src/next/runtime-env.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAEvE,MAAM,UAAU,iBAAiB,CAAC,MAAwB,EAAE,OAA0B;IACpF,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;QAC/D,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,MAAM,aAAa,GAAqB,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IAClE,MAAM,WAAW,GAAG,aAAa,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAChG,MAAM,SAAS,GAAG,oBAAoB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC5D,WAAW,CAAC,kBAAkB,GAAG,SAAS,CAAC;IAC3C,aAAa,CAAC,GAAG,GAAG,WAAW,CAAC;IAChC,OAAO,aAAa,CAAC;AACvB,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Server module externalization logic for Next.js runtime loader interception.
|
|
3
|
+
*/
|
|
4
|
+
import type { NextConfigObject } from './types.js';
|
|
5
|
+
/**
|
|
6
|
+
* Inject Pyric backend target packages into `serverExternalPackages` so Next.js
|
|
7
|
+
* avoids inlining them during Server Component and API Route bundling.
|
|
8
|
+
*/
|
|
9
|
+
export declare function augmentServerExternalPackages(config: NextConfigObject): NextConfigObject;
|
|
10
|
+
//# sourceMappingURL=server-external-packages.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server-external-packages.d.ts","sourceRoot":"","sources":["../../src/next/server-external-packages.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAmBnD;;;GAGG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,gBAAgB,GAAG,gBAAgB,CAgBxF"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
const TARGET_SERVER_PACKAGES = ['firebase', 'firebase-admin'];
|
|
2
|
+
function appendExternalPackages(existingPackages) {
|
|
3
|
+
const packageSet = new Set();
|
|
4
|
+
if (Array.isArray(existingPackages)) {
|
|
5
|
+
for (const pkg of existingPackages) {
|
|
6
|
+
if (typeof pkg === 'string') {
|
|
7
|
+
packageSet.add(pkg);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
for (const pkg of TARGET_SERVER_PACKAGES) {
|
|
12
|
+
packageSet.add(pkg);
|
|
13
|
+
}
|
|
14
|
+
return Array.from(packageSet);
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Inject Pyric backend target packages into `serverExternalPackages` so Next.js
|
|
18
|
+
* avoids inlining them during Server Component and API Route bundling.
|
|
19
|
+
*/
|
|
20
|
+
export function augmentServerExternalPackages(config) {
|
|
21
|
+
const updatedConfig = Object.assign({}, config);
|
|
22
|
+
const currentExternalPackages = updatedConfig.serverExternalPackages;
|
|
23
|
+
updatedConfig.serverExternalPackages = appendExternalPackages(currentExternalPackages);
|
|
24
|
+
const hasExperimentalSection = typeof updatedConfig.experimental === 'object' && updatedConfig.experimental !== null;
|
|
25
|
+
const shouldAugmentLegacySection = hasExperimentalSection || updatedConfig.serverExternalPackages === undefined;
|
|
26
|
+
if (shouldAugmentLegacySection) {
|
|
27
|
+
const experimentalSection = hasExperimentalSection ? Object.assign({}, updatedConfig.experimental) : {};
|
|
28
|
+
const legacyPackages = experimentalSection.serverComponentsExternalPackages;
|
|
29
|
+
experimentalSection.serverComponentsExternalPackages = appendExternalPackages(legacyPackages);
|
|
30
|
+
updatedConfig.experimental = experimentalSection;
|
|
31
|
+
}
|
|
32
|
+
return updatedConfig;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=server-external-packages.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server-external-packages.js","sourceRoot":"","sources":["../../src/next/server-external-packages.ts"],"names":[],"mappings":"AAKA,MAAM,sBAAsB,GAAG,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;AAE9D,SAAS,sBAAsB,CAAC,gBAA0B;IACxD,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IACrC,IAAI,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACpC,KAAK,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;YACnC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;gBAC5B,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;IACH,CAAC;IACD,KAAK,MAAM,GAAG,IAAI,sBAAsB,EAAE,CAAC;QACzC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACtB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AAChC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,6BAA6B,CAAC,MAAwB;IACpE,MAAM,aAAa,GAAqB,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IAElE,MAAM,uBAAuB,GAAG,aAAa,CAAC,sBAAsB,CAAC;IACrE,aAAa,CAAC,sBAAsB,GAAG,sBAAsB,CAAC,uBAAuB,CAAC,CAAC;IAEvF,MAAM,sBAAsB,GAAG,OAAO,aAAa,CAAC,YAAY,KAAK,QAAQ,IAAI,aAAa,CAAC,YAAY,KAAK,IAAI,CAAC;IACrH,MAAM,0BAA0B,GAAG,sBAAsB,IAAI,aAAa,CAAC,sBAAsB,KAAK,SAAS,CAAC;IAChH,IAAI,0BAA0B,EAAE,CAAC;QAC/B,MAAM,mBAAmB,GAAG,sBAAsB,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACxG,MAAM,cAAc,GAAG,mBAAmB,CAAC,gCAAgC,CAAC;QAC5E,mBAAmB,CAAC,gCAAgC,GAAG,sBAAsB,CAAC,cAAc,CAAC,CAAC;QAC9F,aAAa,CAAC,YAAY,GAAG,mBAAmB,CAAC;IACnD,CAAC;IAED,OAAO,aAAa,CAAC;AACvB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Resolution logic for determining the local Pyric dev server URL.
|
|
3
|
+
*/
|
|
4
|
+
import type { PyricNextOptions } from './types.js';
|
|
5
|
+
/**
|
|
6
|
+
* Resolve the destination URL for Next.js dev-time rewrites using explicit
|
|
7
|
+
* fallback precedence: option URL → option port → PYRIC_SANDBOX remote URL →
|
|
8
|
+
* PYRIC_SANDBOX_PORT → default port 4000.
|
|
9
|
+
*/
|
|
10
|
+
export declare function resolveSandboxTargetUrl(options?: PyricNextOptions): string;
|
|
11
|
+
//# sourceMappingURL=target-url.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"target-url.d.ts","sourceRoot":"","sources":["../../src/next/target-url.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAanD;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,MAAM,CAwB1E"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
const DEFAULT_LOOPBACK_HOST = 'http://127.0.0.1';
|
|
2
|
+
const DEFAULT_SANDBOX_PORT = 4000;
|
|
3
|
+
const REMOTE_PREFIX = 'remote:';
|
|
4
|
+
function stripTrailingSlash(url) {
|
|
5
|
+
if (url.endsWith('/')) {
|
|
6
|
+
return url.slice(0, -1);
|
|
7
|
+
}
|
|
8
|
+
return url;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Resolve the destination URL for Next.js dev-time rewrites using explicit
|
|
12
|
+
* fallback precedence: option URL → option port → PYRIC_SANDBOX remote URL →
|
|
13
|
+
* PYRIC_SANDBOX_PORT → default port 4000.
|
|
14
|
+
*/
|
|
15
|
+
export function resolveSandboxTargetUrl(options) {
|
|
16
|
+
if (options !== undefined && options.url !== undefined) {
|
|
17
|
+
return stripTrailingSlash(options.url);
|
|
18
|
+
}
|
|
19
|
+
if (options !== undefined && options.port !== undefined) {
|
|
20
|
+
return `${DEFAULT_LOOPBACK_HOST}:${options.port}`;
|
|
21
|
+
}
|
|
22
|
+
const envSandbox = process.env.PYRIC_SANDBOX;
|
|
23
|
+
if (envSandbox !== undefined && envSandbox.startsWith(REMOTE_PREFIX)) {
|
|
24
|
+
const rawRemoteUrl = envSandbox.slice(REMOTE_PREFIX.length);
|
|
25
|
+
return stripTrailingSlash(rawRemoteUrl);
|
|
26
|
+
}
|
|
27
|
+
const envPort = process.env.PYRIC_SANDBOX_PORT;
|
|
28
|
+
if (envPort !== undefined) {
|
|
29
|
+
const parsedPort = Number(envPort);
|
|
30
|
+
if (!Number.isNaN(parsedPort)) {
|
|
31
|
+
return `${DEFAULT_LOOPBACK_HOST}:${parsedPort}`;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
return `${DEFAULT_LOOPBACK_HOST}:${DEFAULT_SANDBOX_PORT}`;
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=target-url.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"target-url.js","sourceRoot":"","sources":["../../src/next/target-url.ts"],"names":[],"mappings":"AAKA,MAAM,qBAAqB,GAAG,kBAAkB,CAAC;AACjD,MAAM,oBAAoB,GAAG,IAAI,CAAC;AAClC,MAAM,aAAa,GAAG,SAAS,CAAC;AAEhC,SAAS,kBAAkB,CAAC,GAAW;IACrC,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACtB,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC1B,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAA0B;IAChE,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;QACvD,OAAO,kBAAkB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACzC,CAAC;IAED,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QACxD,OAAO,GAAG,qBAAqB,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;IACpD,CAAC;IAED,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;IAC7C,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QACrE,MAAM,YAAY,GAAG,UAAU,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC5D,OAAO,kBAAkB,CAAC,YAAY,CAAC,CAAC;IAC1C,CAAC;IAED,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAC/C,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;QACnC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9B,OAAO,GAAG,qBAAqB,IAAI,UAAU,EAAE,CAAC;QAClD,CAAC;IACH,CAAC;IAED,OAAO,GAAG,qBAAqB,IAAI,oBAAoB,EAAE,CAAC;AAC5D,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Turbopack configuration augmentation for Next.js client SDK aliases.
|
|
3
|
+
*/
|
|
4
|
+
import type { NextConfigObject } from './types.js';
|
|
5
|
+
/**
|
|
6
|
+
* Configure Turbopack module aliases across standard and experimental sections.
|
|
7
|
+
*/
|
|
8
|
+
export declare function augmentTurbopackConfig(config: NextConfigObject): NextConfigObject;
|
|
9
|
+
//# sourceMappingURL=turbopack-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"turbopack-config.d.ts","sourceRoot":"","sources":["../../src/next/turbopack-config.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAWnD;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,gBAAgB,GAAG,gBAAgB,CAkCjF"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { getClientAliases } from './client-aliases.js';
|
|
2
|
+
function assembleTurbopackAliases(existingTurbo) {
|
|
3
|
+
const turboSection = existingTurbo !== undefined ? Object.assign({}, existingTurbo) : {};
|
|
4
|
+
const currentAliases = turboSection.resolveAlias !== undefined ? Object.assign({}, turboSection.resolveAlias) : {};
|
|
5
|
+
const pyricAliases = getClientAliases();
|
|
6
|
+
turboSection.resolveAlias = Object.assign(currentAliases, pyricAliases);
|
|
7
|
+
return turboSection;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Configure Turbopack module aliases across standard and experimental sections.
|
|
11
|
+
*/
|
|
12
|
+
export function augmentTurbopackConfig(config) {
|
|
13
|
+
const updatedConfig = Object.assign({}, config);
|
|
14
|
+
const hasModernTurbopack = typeof updatedConfig.turbopack === 'object' && updatedConfig.turbopack !== null;
|
|
15
|
+
const hasLegacyTopLevelTurbo = typeof updatedConfig.turbo === 'object' && updatedConfig.turbo !== null;
|
|
16
|
+
const hasExperimentalTurbo = typeof updatedConfig.experimental === 'object' &&
|
|
17
|
+
updatedConfig.experimental !== null &&
|
|
18
|
+
typeof updatedConfig.experimental.turbo === 'object' &&
|
|
19
|
+
updatedConfig.experimental.turbo !== null;
|
|
20
|
+
const shouldDefaultToModernTurbopack = !hasModernTurbopack && !hasLegacyTopLevelTurbo && !hasExperimentalTurbo;
|
|
21
|
+
if (hasModernTurbopack || shouldDefaultToModernTurbopack) {
|
|
22
|
+
const currentTurbopack = updatedConfig.turbopack;
|
|
23
|
+
updatedConfig.turbopack = assembleTurbopackAliases(currentTurbopack);
|
|
24
|
+
}
|
|
25
|
+
if (hasLegacyTopLevelTurbo) {
|
|
26
|
+
const currentTurbo = updatedConfig.turbo;
|
|
27
|
+
updatedConfig.turbo = assembleTurbopackAliases(currentTurbo);
|
|
28
|
+
}
|
|
29
|
+
if (hasExperimentalTurbo) {
|
|
30
|
+
const existingExperimental = typeof updatedConfig.experimental === 'object' && updatedConfig.experimental !== null
|
|
31
|
+
? Object.assign({}, updatedConfig.experimental)
|
|
32
|
+
: {};
|
|
33
|
+
const currentTurbo = existingExperimental.turbo;
|
|
34
|
+
existingExperimental.turbo = assembleTurbopackAliases(currentTurbo);
|
|
35
|
+
updatedConfig.experimental = existingExperimental;
|
|
36
|
+
}
|
|
37
|
+
return updatedConfig;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=turbopack-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"turbopack-config.js","sourceRoot":"","sources":["../../src/next/turbopack-config.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,SAAS,wBAAwB,CAAC,aAA8C;IAC9E,MAAM,YAAY,GAAG,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACzF,MAAM,cAAc,GAAG,YAAY,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACnH,MAAM,YAAY,GAAG,gBAAgB,EAAE,CAAC;IACxC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;IACxE,OAAO,YAAY,CAAC;AACtB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,MAAwB;IAC7D,MAAM,aAAa,GAAqB,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IAClE,MAAM,kBAAkB,GAAG,OAAO,aAAa,CAAC,SAAS,KAAK,QAAQ,IAAI,aAAa,CAAC,SAAS,KAAK,IAAI,CAAC;IAC3G,MAAM,sBAAsB,GAAG,OAAO,aAAa,CAAC,KAAK,KAAK,QAAQ,IAAI,aAAa,CAAC,KAAK,KAAK,IAAI,CAAC;IACvG,MAAM,oBAAoB,GACxB,OAAO,aAAa,CAAC,YAAY,KAAK,QAAQ;QAC9C,aAAa,CAAC,YAAY,KAAK,IAAI;QACnC,OAAO,aAAa,CAAC,YAAY,CAAC,KAAK,KAAK,QAAQ;QACpD,aAAa,CAAC,YAAY,CAAC,KAAK,KAAK,IAAI,CAAC;IAE5C,MAAM,8BAA8B,GAClC,CAAC,kBAAkB,IAAI,CAAC,sBAAsB,IAAI,CAAC,oBAAoB,CAAC;IAE1E,IAAI,kBAAkB,IAAI,8BAA8B,EAAE,CAAC;QACzD,MAAM,gBAAgB,GAAG,aAAa,CAAC,SAAS,CAAC;QACjD,aAAa,CAAC,SAAS,GAAG,wBAAwB,CAAC,gBAAgB,CAAC,CAAC;IACvE,CAAC;IAED,IAAI,sBAAsB,EAAE,CAAC;QAC3B,MAAM,YAAY,GAAG,aAAa,CAAC,KAAK,CAAC;QACzC,aAAa,CAAC,KAAK,GAAG,wBAAwB,CAAC,YAAY,CAAC,CAAC;IAC/D,CAAC;IAED,IAAI,oBAAoB,EAAE,CAAC;QACzB,MAAM,oBAAoB,GACxB,OAAO,aAAa,CAAC,YAAY,KAAK,QAAQ,IAAI,aAAa,CAAC,YAAY,KAAK,IAAI;YACnF,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,aAAa,CAAC,YAAY,CAAC;YAC/C,CAAC,CAAC,EAAE,CAAC;QACT,MAAM,YAAY,GAAG,oBAAoB,CAAC,KAAK,CAAC;QAChD,oBAAoB,CAAC,KAAK,GAAG,wBAAwB,CAAC,YAAY,CAAC,CAAC;QACpE,aAAa,CAAC,YAAY,GAAG,oBAAoB,CAAC;IACpD,CAAC;IAED,OAAO,aAAa,CAAC;AACvB,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Public configuration types for the `@pyric/cli/next` integration.
|
|
3
|
+
*/
|
|
4
|
+
import type { PyricRuntimeChipOption } from '../serve/runtime/chip-config.js';
|
|
5
|
+
export type { PyricRuntimeChipOption };
|
|
6
|
+
export interface PyricNextOptions {
|
|
7
|
+
/**
|
|
8
|
+
* Guard against starting Next.js dev server directly (`next dev`) without
|
|
9
|
+
* active Pyric sandbox environment variables. When `true` (default), throws
|
|
10
|
+
* an early error if `PYRIC_SANDBOX` is missing during development builds.
|
|
11
|
+
* Pass `false` to opt out of safety checking.
|
|
12
|
+
*/
|
|
13
|
+
guard?: boolean;
|
|
14
|
+
/**
|
|
15
|
+
* Port override for the local Pyric sandbox server when configuring dev-time
|
|
16
|
+
* rewrites (`/__pyric/:path*`). By default, resolves from `PYRIC_SANDBOX`
|
|
17
|
+
* or `PYRIC_SANDBOX_PORT`, falling back to `4000`.
|
|
18
|
+
*/
|
|
19
|
+
port?: number;
|
|
20
|
+
/**
|
|
21
|
+
* Explicit URL override for the local Pyric sandbox server when configuring
|
|
22
|
+
* dev-time rewrites (e.g., `http://localhost:4000`).
|
|
23
|
+
*/
|
|
24
|
+
url?: string;
|
|
25
|
+
/**
|
|
26
|
+
* Whether to configure Next.js dev-time rewrites to proxy `/__pyric/:path*`
|
|
27
|
+
* traffic to the local Pyric dev server. Default `true`.
|
|
28
|
+
*/
|
|
29
|
+
rewrites?: boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Display the floating Pyric runtime chip in browser client pages during
|
|
32
|
+
* local development. On by default. Pass `false` to hide it, or
|
|
33
|
+
* `{ initiallyOpen: true }` when actively debugging runtime errors.
|
|
34
|
+
*/
|
|
35
|
+
runtimeChip?: PyricRuntimeChipOption;
|
|
36
|
+
}
|
|
37
|
+
export type NextConfigObject = Record<string, any>;
|
|
38
|
+
export type NextConfigFunction = (phase: string, defaults: Record<string, any>) => NextConfigObject | Promise<NextConfigObject>;
|
|
39
|
+
export type NextConfig = NextConfigObject | NextConfigFunction;
|
|
40
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/next/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAC9E,YAAY,EAAE,sBAAsB,EAAE,CAAC;AAEvC,MAAM,WAAW,gBAAgB;IAC/B;;;;;OAKG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,WAAW,CAAC,EAAE,sBAAsB,CAAC;CACtC;AAED,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAEnD,MAAM,MAAM,kBAAkB,GAAG,CAC/B,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAC1B,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAElD,MAAM,MAAM,UAAU,GAAG,gBAAgB,GAAG,kBAAkB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/next/types.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Webpack configuration augmentation for Next.js client component builds.
|
|
3
|
+
*/
|
|
4
|
+
import type { NextConfigObject } from './types.js';
|
|
5
|
+
/**
|
|
6
|
+
* Wrap the existing Next.js Webpack configuration builder to inject client-side
|
|
7
|
+
* Firebase module aliases and modern async runtime compatibility settings when
|
|
8
|
+
* bundling for browser execution.
|
|
9
|
+
*/
|
|
10
|
+
export declare function augmentWebpackConfig(config: NextConfigObject): NextConfigObject;
|
|
11
|
+
//# sourceMappingURL=webpack-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webpack-config.d.ts","sourceRoot":"","sources":["../../src/next/webpack-config.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAwCnD;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,gBAAgB,GAAG,gBAAgB,CAsB/E"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { getClientAliases, getNodeBuiltinFallbacks } from './client-aliases.js';
|
|
2
|
+
function isClientSideBuild(options) {
|
|
3
|
+
return options.isServer === false;
|
|
4
|
+
}
|
|
5
|
+
function assembleClientResolveSection(existingResolve) {
|
|
6
|
+
const resolveSection = existingResolve !== undefined ? Object.assign({}, existingResolve) : {};
|
|
7
|
+
const currentAliases = resolveSection.alias !== undefined ? Object.assign({}, resolveSection.alias) : {};
|
|
8
|
+
const newAliases = getClientAliases();
|
|
9
|
+
resolveSection.alias = Object.assign(currentAliases, newAliases);
|
|
10
|
+
const currentFallbacks = resolveSection.fallback !== undefined ? Object.assign({}, resolveSection.fallback) : {};
|
|
11
|
+
const newFallbacks = getNodeBuiltinFallbacks();
|
|
12
|
+
resolveSection.fallback = Object.assign(currentFallbacks, newFallbacks);
|
|
13
|
+
return resolveSection;
|
|
14
|
+
}
|
|
15
|
+
function assembleClientExperimentsSection(existingExperiments) {
|
|
16
|
+
const experimentsSection = existingExperiments !== undefined ? Object.assign({}, existingExperiments) : {};
|
|
17
|
+
experimentsSection.topLevelAwait = true;
|
|
18
|
+
return experimentsSection;
|
|
19
|
+
}
|
|
20
|
+
function assembleClientOutputSection(existingOutput) {
|
|
21
|
+
const outputSection = existingOutput !== undefined ? Object.assign({}, existingOutput) : {};
|
|
22
|
+
const environmentSection = outputSection.environment !== undefined ? Object.assign({}, outputSection.environment) : {};
|
|
23
|
+
environmentSection.asyncFunction = true;
|
|
24
|
+
outputSection.environment = environmentSection;
|
|
25
|
+
return outputSection;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Wrap the existing Next.js Webpack configuration builder to inject client-side
|
|
29
|
+
* Firebase module aliases and modern async runtime compatibility settings when
|
|
30
|
+
* bundling for browser execution.
|
|
31
|
+
*/
|
|
32
|
+
export function augmentWebpackConfig(config) {
|
|
33
|
+
const updatedConfig = Object.assign({}, config);
|
|
34
|
+
const originalWebpack = updatedConfig.webpack;
|
|
35
|
+
updatedConfig.webpack = (webpackConfig, webpackOptions) => {
|
|
36
|
+
if (isClientSideBuild(webpackOptions)) {
|
|
37
|
+
const currentResolve = webpackConfig.resolve;
|
|
38
|
+
webpackConfig.resolve = assembleClientResolveSection(currentResolve);
|
|
39
|
+
const currentExperiments = webpackConfig.experiments;
|
|
40
|
+
webpackConfig.experiments = assembleClientExperimentsSection(currentExperiments);
|
|
41
|
+
const currentOutput = webpackConfig.output;
|
|
42
|
+
webpackConfig.output = assembleClientOutputSection(currentOutput);
|
|
43
|
+
}
|
|
44
|
+
if (typeof originalWebpack === 'function') {
|
|
45
|
+
return originalWebpack(webpackConfig, webpackOptions);
|
|
46
|
+
}
|
|
47
|
+
return webpackConfig;
|
|
48
|
+
};
|
|
49
|
+
return updatedConfig;
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=webpack-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webpack-config.js","sourceRoot":"","sources":["../../src/next/webpack-config.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAOhF,SAAS,iBAAiB,CAAC,OAAuB;IAChD,OAAO,OAAO,CAAC,QAAQ,KAAK,KAAK,CAAC;AACpC,CAAC;AAED,SAAS,4BAA4B,CAAC,eAAgD;IACpF,MAAM,cAAc,GAAG,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAE/F,MAAM,cAAc,GAAG,cAAc,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACzG,MAAM,UAAU,GAAG,gBAAgB,EAAE,CAAC;IACtC,cAAc,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;IAEjE,MAAM,gBAAgB,GAAG,cAAc,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACjH,MAAM,YAAY,GAAG,uBAAuB,EAAE,CAAC;IAC/C,cAAc,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC;IAExE,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,SAAS,gCAAgC,CAAC,mBAAoD;IAC5F,MAAM,kBAAkB,GAAG,mBAAmB,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3G,kBAAkB,CAAC,aAAa,GAAG,IAAI,CAAC;IACxC,OAAO,kBAAkB,CAAC;AAC5B,CAAC;AAED,SAAS,2BAA2B,CAAC,cAA+C;IAClF,MAAM,aAAa,GAAG,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC5F,MAAM,kBAAkB,GAAG,aAAa,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACvH,kBAAkB,CAAC,aAAa,GAAG,IAAI,CAAC;IACxC,aAAa,CAAC,WAAW,GAAG,kBAAkB,CAAC;IAC/C,OAAO,aAAa,CAAC;AACvB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAwB;IAC3D,MAAM,aAAa,GAAqB,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IAClE,MAAM,eAAe,GAAG,aAAa,CAAC,OAAO,CAAC;IAE9C,aAAa,CAAC,OAAO,GAAG,CAAC,aAAkB,EAAE,cAA8B,EAAE,EAAE;QAC7E,IAAI,iBAAiB,CAAC,cAAc,CAAC,EAAE,CAAC;YACtC,MAAM,cAAc,GAAG,aAAa,CAAC,OAAO,CAAC;YAC7C,aAAa,CAAC,OAAO,GAAG,4BAA4B,CAAC,cAAc,CAAC,CAAC;YAErE,MAAM,kBAAkB,GAAG,aAAa,CAAC,WAAW,CAAC;YACrD,aAAa,CAAC,WAAW,GAAG,gCAAgC,CAAC,kBAAkB,CAAC,CAAC;YAEjF,MAAM,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC;YAC3C,aAAa,CAAC,MAAM,GAAG,2BAA2B,CAAC,aAAa,CAAC,CAAC;QACpE,CAAC;QACD,IAAI,OAAO,eAAe,KAAK,UAAU,EAAE,CAAC;YAC1C,OAAO,eAAe,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;QACxD,CAAC;QACD,OAAO,aAAa,CAAC;IACvB,CAAC,CAAC;IAEF,OAAO,aAAa,CAAC;AACvB,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Core execution coordinator for the Next.js `withPyric` configuration wrapper.
|
|
3
|
+
*/
|
|
4
|
+
import type { NextConfig, PyricNextOptions } from './types.js';
|
|
5
|
+
/**
|
|
6
|
+
* Higher-order configuration wrapper for Next.js (`next.config.js` or `next.config.mjs`).
|
|
7
|
+
*
|
|
8
|
+
* During development mode (`pyric dev` or non-production NODE_ENV):
|
|
9
|
+
* - Applies Webpack and Turbopack alias mappings to swap `firebase/*` imports
|
|
10
|
+
* for Pyric local sandbox mirrors on client components.
|
|
11
|
+
* - Adds `firebase` and `firebase-admin` to `serverExternalPackages` to prevent
|
|
12
|
+
* inlining in Server Components and API routes, preserving `@pyric/cli/register` hooks.
|
|
13
|
+
* - Configures dev-time rewrites (`/__pyric/*`) to proxy socket and bridge traffic
|
|
14
|
+
* to the local Pyric server without CORS errors.
|
|
15
|
+
* - Enforces a bundler safety interlock (guard) to prevent accidental connections to
|
|
16
|
+
* production databases when `PYRIC_SANDBOX` is inactive.
|
|
17
|
+
*
|
|
18
|
+
* In production (`NODE_ENV === 'production'` without `PYRIC_SANDBOX_FORCE=1`):
|
|
19
|
+
* - Functions as a zero-overhead identity passthrough, leaving standard builds untouched.
|
|
20
|
+
*/
|
|
21
|
+
export declare function withPyric(config?: NextConfig, options?: PyricNextOptions): NextConfig;
|
|
22
|
+
//# sourceMappingURL=with-pyric.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"with-pyric.d.ts","sourceRoot":"","sources":["../../src/next/with-pyric.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,UAAU,EAAwC,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAqBrG;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,SAAS,CAAC,MAAM,GAAE,UAAe,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,UAAU,CAiBzF"}
|