veryfront 0.1.1239 → 0.1.1241
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/esm/cli/commands/build/command-help.d.ts.map +1 -1
- package/esm/cli/commands/build/command-help.js +4 -0
- package/esm/cli/commands/build/command.d.ts +3 -1
- package/esm/cli/commands/build/command.d.ts.map +1 -1
- package/esm/cli/commands/build/command.js +13 -5
- package/esm/cli/commands/build/handler.d.ts +17 -0
- package/esm/cli/commands/build/handler.d.ts.map +1 -1
- package/esm/cli/commands/build/handler.js +188 -9
- package/esm/cli/commands/generate/command.d.ts.map +1 -1
- package/esm/cli/commands/generate/command.js +40 -0
- package/esm/cli/commands/push/command.d.ts.map +1 -1
- package/esm/cli/commands/push/command.js +24 -16
- package/esm/cli/shared/ensure-content-processor.d.ts +16 -1
- package/esm/cli/shared/ensure-content-processor.d.ts.map +1 -1
- package/esm/cli/shared/ensure-content-processor.js +39 -5
- package/esm/cli/shared/project-creation.d.ts.map +1 -1
- package/esm/cli/shared/project-creation.js +29 -1
- package/esm/deno.d.ts +14 -5
- package/esm/deno.js +23 -7
- package/esm/extensions/ext-llm-openai/src/openai-chat-stream.d.ts.map +1 -1
- package/esm/extensions/ext-llm-openai/src/openai-chat-stream.js +16 -6
- package/esm/extensions/ext-llm-openai/src/openai-provider.d.ts.map +1 -1
- package/esm/extensions/ext-llm-openai/src/openai-provider.js +11 -2
- package/esm/extensions/ext-llm-openai/src/openai-reasoning-models.d.ts +2 -14
- package/esm/extensions/ext-llm-openai/src/openai-reasoning-models.d.ts.map +1 -1
- package/esm/extensions/ext-llm-openai/src/openai-reasoning-models.js +1 -72
- package/esm/extensions/ext-schema-zod/src/adapter.d.ts.map +1 -1
- package/esm/src/agent/ag-ui/browser-aliases.d.ts +164 -0
- package/esm/src/agent/ag-ui/browser-aliases.d.ts.map +1 -0
- package/esm/src/agent/ag-ui/browser-aliases.js +68 -0
- package/esm/src/agent/ag-ui/chat-ui-chunk-encoder.d.ts +35 -0
- package/esm/src/agent/ag-ui/chat-ui-chunk-encoder.d.ts.map +1 -0
- package/esm/src/agent/ag-ui/{chat-ui-chunk-browser-encoder.js → chat-ui-chunk-encoder.js} +11 -11
- package/esm/src/agent/ag-ui/chunk-encoder-bridge.d.ts +8 -6
- package/esm/src/agent/ag-ui/chunk-encoder-bridge.d.ts.map +1 -1
- package/esm/src/agent/ag-ui/chunk-encoder-bridge.js +5 -4
- package/esm/src/agent/ag-ui/chunk-encoder.d.ts +26 -0
- package/esm/src/agent/ag-ui/chunk-encoder.d.ts.map +1 -0
- package/esm/src/agent/ag-ui/{browser-chunk-encoder.js → chunk-encoder.js} +3 -2
- package/esm/src/agent/ag-ui/{browser-encoder.d.ts → encoder.d.ts} +33 -19
- package/esm/src/agent/ag-ui/encoder.d.ts.map +1 -0
- package/esm/src/agent/ag-ui/{browser-encoder.js → encoder.js} +81 -27
- package/esm/src/agent/ag-ui/finalize-tracker.d.ts +15 -0
- package/esm/src/agent/ag-ui/finalize-tracker.d.ts.map +1 -0
- package/esm/src/agent/ag-ui/{browser-finalize-tracker.js → finalize-tracker.js} +4 -4
- package/esm/src/agent/ag-ui/response-stream.d.ts +36 -0
- package/esm/src/agent/ag-ui/response-stream.d.ts.map +1 -0
- package/esm/src/agent/ag-ui/{browser-response-stream.js → response-stream.js} +6 -3
- package/esm/src/agent/ag-ui/runtime-chat-stream-encoder.d.ts +1 -1
- package/esm/src/agent/ag-ui/runtime-chat-stream-encoder.d.ts.map +1 -1
- package/esm/src/agent/ag-ui/runtime-event-encoder.d.ts +7 -7
- package/esm/src/agent/ag-ui/runtime-event-encoder.d.ts.map +1 -1
- package/esm/src/agent/ag-ui/runtime-event-encoder.js +4 -4
- package/esm/src/agent/ag-ui/runtime-response.d.ts +20 -0
- package/esm/src/agent/ag-ui/runtime-response.d.ts.map +1 -0
- package/esm/src/agent/ag-ui/runtime-response.js +16 -0
- package/esm/src/agent/ag-ui/sse-parser.d.ts +1 -1
- package/esm/src/agent/ag-ui/sse-parser.d.ts.map +1 -1
- package/esm/src/agent/ag-ui/sse-parser.js +3 -3
- package/esm/src/agent/ag-ui/tracked-response.d.ts +11 -0
- package/esm/src/agent/ag-ui/tracked-response.d.ts.map +1 -0
- package/esm/src/agent/ag-ui/{tracked-browser-response.js → tracked-response.js} +6 -4
- package/esm/src/agent/conversation/hosted-lifecycle.d.ts.map +1 -1
- package/esm/src/agent/conversation/hosted-lifecycle.js +2 -1
- package/esm/src/agent/conversation/lifecycle-run-event-adapter.d.ts.map +1 -1
- package/esm/src/agent/conversation/lifecycle-run-event-adapter.js +2 -0
- package/esm/src/agent/conversation/private-run-event.d.ts.map +1 -1
- package/esm/src/agent/conversation/private-run-event.js +174 -3
- package/esm/src/agent/conversation/run-chunk-mirror.d.ts +2 -0
- package/esm/src/agent/conversation/run-chunk-mirror.d.ts.map +1 -1
- package/esm/src/agent/conversation/run-chunk-mirror.js +13 -6
- package/esm/src/agent/conversation/run-events.d.ts +8 -0
- package/esm/src/agent/conversation/run-events.d.ts.map +1 -1
- package/esm/src/agent/conversation/run-events.js +54 -4
- package/esm/src/agent/conversation/run-stream-mirror.d.ts.map +1 -1
- package/esm/src/agent/conversation/run-stream-mirror.js +5 -2
- package/esm/src/agent/hosted/durable-run-event-sink.d.ts +2 -1
- package/esm/src/agent/hosted/durable-run-event-sink.d.ts.map +1 -1
- package/esm/src/agent/hosted/durable-run-event-sink.js +9 -7
- package/esm/src/agent/hosted/prepared-chat-execution.js +2 -2
- package/esm/src/agent/index.d.ts +9 -8
- package/esm/src/agent/index.d.ts.map +1 -1
- package/esm/src/agent/index.js +9 -8
- package/esm/src/agent/memory/memory.d.ts.map +1 -1
- package/esm/src/agent/memory/memory.js +7 -6
- package/esm/src/agent/react/use-chat/types.d.ts +2 -0
- package/esm/src/agent/react/use-chat/types.d.ts.map +1 -1
- package/esm/src/agent/react/use-chat/use-chat.js +3 -2
- package/esm/src/agent/runtime/ag-ui-contract.d.ts +2 -2
- package/esm/src/agent/runtime/ag-ui-contract.d.ts.map +1 -1
- package/esm/src/agent/runtime/ag-ui-contract.js +2 -2
- package/esm/src/agent/runtime/chat-stream-handler.d.ts.map +1 -1
- package/esm/src/agent/runtime/chat-stream-handler.js +34 -4
- package/esm/src/agent/runtime/index.d.ts.map +1 -1
- package/esm/src/agent/runtime/index.js +15 -6
- package/esm/src/agent/streaming/data-stream.d.ts +1 -1
- package/esm/src/agent/streaming/data-stream.d.ts.map +1 -1
- package/esm/src/agent/streaming/fork-runtime-part-mapper.d.ts +1 -1
- package/esm/src/agent/streaming/fork-runtime-part-mapper.d.ts.map +1 -1
- package/esm/src/agent/streaming/lifecycle/live-adapter.d.ts.map +1 -1
- package/esm/src/agent/streaming/lifecycle/live-adapter.js +2 -0
- package/esm/src/agent/streaming/lifecycle/reducer.d.ts.map +1 -1
- package/esm/src/agent/streaming/lifecycle/reducer.js +7 -0
- package/esm/src/agent/streaming/lifecycle/runtime-provider-adapter.js +4 -0
- package/esm/src/build/production-build/templates.d.ts.map +1 -1
- package/esm/src/build/production-build/templates.js +1 -1
- package/esm/src/cache/request-cache-batcher.d.ts +1 -0
- package/esm/src/cache/request-cache-batcher.d.ts.map +1 -1
- package/esm/src/cache/request-cache-batcher.js +21 -7
- package/esm/src/chat/ag-ui.d.ts +1 -1
- package/esm/src/chat/index.d.ts +2 -2
- package/esm/src/chat/index.d.ts.map +1 -1
- package/esm/src/chat/index.js +1 -1
- package/esm/src/config/config-shim.d.ts +1 -1
- package/esm/src/config/config-shim.d.ts.map +1 -1
- package/esm/src/config/config-shim.js +1 -1
- package/esm/src/config/declarative-evaluator-worker-protocol.d.ts.map +1 -1
- package/esm/src/config/env.js +1 -1
- package/esm/src/config/environment-config.js +1 -1
- package/esm/src/config/loader.d.ts.map +1 -1
- package/esm/src/config/loader.js +4 -4
- package/esm/src/config/schemas/config.schema.d.ts +20 -0
- package/esm/src/config/schemas/config.schema.d.ts.map +1 -1
- package/esm/src/config/schemas/config.schema.js +27 -0
- package/esm/src/config/server-external-packages.d.ts +11 -0
- package/esm/src/config/server-external-packages.d.ts.map +1 -0
- package/esm/src/config/server-external-packages.js +53 -0
- package/esm/src/data/data-fetcher.d.ts.map +1 -1
- package/esm/src/data/data-fetcher.js +9 -4
- package/esm/src/data/data-result-validation.d.ts +5 -0
- package/esm/src/data/data-result-validation.d.ts.map +1 -0
- package/esm/src/data/data-result-validation.js +56 -0
- package/esm/src/data/helpers.d.ts +5 -5
- package/esm/src/data/helpers.d.ts.map +1 -1
- package/esm/src/data/helpers.js +22 -68
- package/esm/src/data/index.d.ts +1 -1
- package/esm/src/data/index.d.ts.map +1 -1
- package/esm/src/data/response-metadata.d.ts +23 -0
- package/esm/src/data/response-metadata.d.ts.map +1 -0
- package/esm/src/data/response-metadata.js +311 -0
- package/esm/src/data/schemas/data.schema.d.ts +95 -6
- package/esm/src/data/schemas/data.schema.d.ts.map +1 -1
- package/esm/src/data/schemas/data.schema.js +57 -3
- package/esm/src/data/schemas/index.d.ts +1 -1
- package/esm/src/data/schemas/index.d.ts.map +1 -1
- package/esm/src/data/schemas/index.js +1 -1
- package/esm/src/data/server-data-fetcher.d.ts.map +1 -1
- package/esm/src/data/server-data-fetcher.js +5 -5
- package/esm/src/data/static-data-fetcher.d.ts +2 -2
- package/esm/src/data/static-data-fetcher.d.ts.map +1 -1
- package/esm/src/data/static-data-fetcher.js +6 -3
- package/esm/src/data/types.d.ts +1 -1
- package/esm/src/data/types.d.ts.map +1 -1
- package/esm/src/discovery/discovery-engine.d.ts.map +1 -1
- package/esm/src/discovery/discovery-engine.js +81 -26
- package/esm/src/discovery/handlers/task-handler.d.ts +1 -1
- package/esm/src/discovery/handlers/task-handler.d.ts.map +1 -1
- package/esm/src/discovery/handlers/task-handler.js +6 -3
- package/esm/src/discovery/types.d.ts +6 -4
- package/esm/src/discovery/types.d.ts.map +1 -1
- package/esm/src/errors/error-registry/runtime.d.ts +2 -0
- package/esm/src/errors/error-registry/runtime.d.ts.map +1 -1
- package/esm/src/errors/error-registry/runtime.js +8 -0
- package/esm/src/errors/error-registry.d.ts +1 -0
- package/esm/src/errors/error-registry.d.ts.map +1 -1
- package/esm/src/errors/index.d.ts +1 -1
- package/esm/src/errors/index.d.ts.map +1 -1
- package/esm/src/errors/index.js +1 -1
- package/esm/src/errors/user-friendly/error-wrapper.js +1 -1
- package/esm/src/errors/veryfront-error.d.ts.map +1 -1
- package/esm/src/extensions/index.d.ts +2 -0
- package/esm/src/extensions/index.d.ts.map +1 -1
- package/esm/src/extensions/index.js +1 -0
- package/esm/src/extensions/parser/code-parser.d.ts +9 -0
- package/esm/src/extensions/parser/code-parser.d.ts.map +1 -1
- package/esm/src/extensions/parser/defaults.d.ts +5 -0
- package/esm/src/extensions/parser/defaults.d.ts.map +1 -1
- package/esm/src/extensions/parser/defaults.js +23 -11
- package/esm/src/fs/index.d.ts +50 -1
- package/esm/src/fs/index.d.ts.map +1 -1
- package/esm/src/fs/index.js +50 -1
- package/esm/src/html/html-injection.d.ts +2 -0
- package/esm/src/html/html-injection.d.ts.map +1 -1
- package/esm/src/html/html-injection.js +4 -1
- package/esm/src/html/html-shell-generator.d.ts.map +1 -1
- package/esm/src/html/html-shell-generator.js +11 -3
- package/esm/src/html/hydration-script-builder/hydration-runtime.generated.d.ts.map +1 -1
- package/esm/src/html/hydration-script-builder/hydration-runtime.generated.js +1 -1
- package/esm/src/html/hydration-script-builder/prod-runtime-selection.d.ts +23 -0
- package/esm/src/html/hydration-script-builder/prod-runtime-selection.d.ts.map +1 -0
- package/esm/src/html/hydration-script-builder/prod-runtime-selection.js +55 -0
- package/esm/src/html/hydration-script-builder/prod-scripts.d.ts +2 -0
- package/esm/src/html/hydration-script-builder/prod-scripts.d.ts.map +1 -1
- package/esm/src/html/hydration-script-builder/prod-scripts.js +12 -3
- package/esm/src/html/schemas/html.schema.d.ts +2 -0
- package/esm/src/html/schemas/html.schema.d.ts.map +1 -1
- package/esm/src/html/schemas/html.schema.js +2 -0
- package/esm/src/html/styles-builder/css-hash-cache.d.ts +1 -1
- package/esm/src/html/styles-builder/css-hash-cache.d.ts.map +1 -1
- package/esm/src/html/styles-builder/css-hash-cache.js +1 -1
- package/esm/src/index.client.d.ts +2 -2
- package/esm/src/index.client.d.ts.map +1 -1
- package/esm/src/index.client.js +3 -1
- package/esm/src/index.d.ts +1 -1
- package/esm/src/index.d.ts.map +1 -1
- package/esm/src/internal-agents/ag-ui-sse.d.ts +7 -7
- package/esm/src/internal-agents/ag-ui-sse.d.ts.map +1 -1
- package/esm/src/internal-agents/ag-ui-sse.js +17 -9
- package/esm/src/internal-agents/control-plane-auth.js +1 -1
- package/esm/src/internal-agents/run-stream.d.ts.map +1 -1
- package/esm/src/internal-agents/run-stream.js +15 -9
- package/esm/src/modules/import-map/loader.d.ts.map +1 -1
- package/esm/src/modules/import-map/loader.js +2 -2
- package/esm/src/modules/import-map/merger.js +2 -2
- package/esm/src/modules/import-map/preloader.js +2 -2
- package/esm/src/modules/react-loader/component-loader.d.ts.map +1 -1
- package/esm/src/modules/react-loader/component-loader.js +2 -0
- package/esm/src/modules/react-loader/ssr-module-loader/loader.d.ts +1 -1
- package/esm/src/modules/react-loader/ssr-module-loader/loader.d.ts.map +1 -1
- package/esm/src/modules/react-loader/ssr-module-loader/loader.js +3 -2
- package/esm/src/modules/react-loader/ssr-module-loader/ssr-cache-manager.d.ts.map +1 -1
- package/esm/src/modules/react-loader/ssr-module-loader/ssr-cache-manager.js +7 -1
- package/esm/src/modules/react-loader/ssr-module-loader/types.d.ts +2 -0
- package/esm/src/modules/react-loader/ssr-module-loader/types.d.ts.map +1 -1
- package/esm/src/modules/react-loader/transformed-module-coordinator.d.ts.map +1 -1
- package/esm/src/modules/react-loader/transformed-module-coordinator.js +2 -1
- package/esm/src/modules/react-loader/types.d.ts +2 -0
- package/esm/src/modules/react-loader/types.d.ts.map +1 -1
- package/esm/src/modules/server/module-response-cache.d.ts +1 -0
- package/esm/src/modules/server/module-response-cache.d.ts.map +1 -1
- package/esm/src/modules/server/module-response-cache.js +5 -0
- package/esm/src/modules/server/module-server.d.ts.map +1 -1
- package/esm/src/modules/server/module-server.js +4 -0
- package/esm/src/modules/server/module-transform.d.ts.map +1 -1
- package/esm/src/modules/server/module-transform.js +2 -0
- package/esm/src/observability/metrics/config.js +1 -1
- package/esm/src/observability/request-profiler.js +1 -1
- package/esm/src/observability/telemetry-error.js +2 -2
- package/esm/src/observability/tracing/telemetry-env.js +1 -1
- package/esm/src/platform/adapters/fs/cache/file-cache.d.ts.map +1 -1
- package/esm/src/platform/adapters/fs/cache/file-cache.js +5 -0
- package/esm/src/platform/adapters/fs/veryfront/adapter.d.ts +39 -0
- package/esm/src/platform/adapters/fs/veryfront/adapter.d.ts.map +1 -1
- package/esm/src/platform/adapters/fs/veryfront/adapter.js +209 -40
- package/esm/src/platform/adapters/fs/veryfront/file-list-index.d.ts.map +1 -1
- package/esm/src/platform/adapters/fs/veryfront/file-list-index.js +0 -14
- package/esm/src/platform/adapters/fs/veryfront/read-operations-helpers.d.ts +0 -1
- package/esm/src/platform/adapters/fs/veryfront/read-operations-helpers.d.ts.map +1 -1
- package/esm/src/platform/adapters/fs/veryfront/read-operations-helpers.js +0 -3
- package/esm/src/platform/adapters/fs/veryfront/read-operations.d.ts.map +1 -1
- package/esm/src/platform/adapters/fs/veryfront/read-operations.js +1 -4
- package/esm/src/platform/adapters/fs/veryfront/request-context.d.ts.map +1 -1
- package/esm/src/platform/adapters/fs/veryfront/request-context.js +4 -0
- package/esm/src/platform/adapters/fs/veryfront/stat-operations.d.ts.map +1 -1
- package/esm/src/platform/adapters/fs/veryfront/stat-operations.js +9 -1
- package/esm/src/platform/adapters/fs/veryfront/websocket-manager-helpers.js +1 -1
- package/esm/src/platform/adapters/fs/veryfront/websocket-manager.d.ts +2 -1
- package/esm/src/platform/adapters/fs/veryfront/websocket-manager.d.ts.map +1 -1
- package/esm/src/platform/adapters/fs/veryfront/websocket-manager.js +97 -66
- package/esm/src/platform/compat/dns.d.ts +10 -0
- package/esm/src/platform/compat/dns.d.ts.map +1 -1
- package/esm/src/platform/compat/dns.js +50 -0
- package/esm/src/platform/compat/http/pinned-fetch.d.ts +1 -1
- package/esm/src/platform/compat/process/lifecycle.d.ts +10 -0
- package/esm/src/platform/compat/process/lifecycle.d.ts.map +1 -1
- package/esm/src/platform/compat/process/lifecycle.js +23 -0
- package/esm/src/platform/compat/process.d.ts +1 -1
- package/esm/src/platform/compat/process.d.ts.map +1 -1
- package/esm/src/platform/compat/process.js +1 -1
- package/esm/src/platform/compat/proxy-topology.js +1 -1
- package/esm/src/platform/request-context-access.d.ts +24 -0
- package/esm/src/platform/request-context-access.d.ts.map +1 -0
- package/esm/src/platform/request-context-access.js +26 -0
- package/esm/src/provider/shared/openai-reasoning.d.ts +16 -0
- package/esm/src/provider/shared/openai-reasoning.d.ts.map +1 -0
- package/esm/src/provider/shared/openai-reasoning.js +73 -0
- package/esm/src/provider/types.d.ts +2 -0
- package/esm/src/provider/types.d.ts.map +1 -1
- package/esm/src/provider/veryfront-cloud/provider.d.ts.map +1 -1
- package/esm/src/provider/veryfront-cloud/provider.js +45 -18
- package/esm/src/proxy/handler.d.ts +1 -0
- package/esm/src/proxy/handler.d.ts.map +1 -1
- package/esm/src/proxy/handler.js +17 -4
- package/esm/src/proxy/proxy-error-context.d.ts +1 -0
- package/esm/src/proxy/proxy-error-context.d.ts.map +1 -1
- package/esm/src/proxy/proxy-error-context.js +1 -0
- package/esm/src/proxy/request-host.d.ts +3 -0
- package/esm/src/proxy/request-host.d.ts.map +1 -1
- package/esm/src/proxy/request-host.js +28 -8
- package/esm/src/proxy/routing-invalidation-redis.d.ts.map +1 -1
- package/esm/src/proxy/routing-invalidation-redis.js +38 -4
- package/esm/src/react/components/chat/chat/components/attachments-panel.d.ts +27 -3
- package/esm/src/react/components/chat/chat/components/attachments-panel.d.ts.map +1 -1
- package/esm/src/react/components/chat/chat/components/attachments-panel.js +29 -7
- package/esm/src/react/components/chat/chat/components/sidebar.d.ts +15 -6
- package/esm/src/react/components/chat/chat/components/sidebar.d.ts.map +1 -1
- package/esm/src/react/components/chat/chat/components/sidebar.js +37 -4
- package/esm/src/react/components/chat/chat/components/sidebar.types.d.ts +12 -1
- package/esm/src/react/components/chat/chat/components/sidebar.types.d.ts.map +1 -1
- package/esm/src/react/components/chat/chat/composition/chat-composer.d.ts +3 -1
- package/esm/src/react/components/chat/chat/composition/chat-composer.d.ts.map +1 -1
- package/esm/src/react/components/chat/chat/composition/chat-composer.js +17 -6
- package/esm/src/react/components/chat/chat/composition/chat-composer.types.d.ts +12 -5
- package/esm/src/react/components/chat/chat/composition/chat-composer.types.d.ts.map +1 -1
- package/esm/src/react/components/chat/chat/composition/chat-root.d.ts +18 -5
- package/esm/src/react/components/chat/chat/composition/chat-root.d.ts.map +1 -1
- package/esm/src/react/components/chat/chat/composition/chat-root.js +65 -1
- package/esm/src/react/components/chat/chat/composition/use-composer-value.d.ts +6 -3
- package/esm/src/react/components/chat/chat/composition/use-composer-value.d.ts.map +1 -1
- package/esm/src/react/components/chat/chat/composition/use-composer-value.js +56 -5
- package/esm/src/react/components/chat/chat/contexts/chat-context.d.ts +7 -1
- package/esm/src/react/components/chat/chat/contexts/chat-context.d.ts.map +1 -1
- package/esm/src/react/components/chat/chat/contexts/conversations-context.d.ts +14 -4
- package/esm/src/react/components/chat/chat/contexts/conversations-context.d.ts.map +1 -1
- package/esm/src/react/components/chat/chat/contexts/conversations-context.js +10 -1
- package/esm/src/react/components/chat/chat/index.d.ts +1 -1
- package/esm/src/react/components/chat/chat/index.d.ts.map +1 -1
- package/esm/src/react/components/chat/chat/persistence/conversation-codec.d.ts.map +1 -1
- package/esm/src/react/components/chat/chat.d.ts +1 -1
- package/esm/src/react/components/chat/chat.d.ts.map +1 -1
- package/esm/src/react/server-render-context.d.ts.map +1 -1
- package/esm/src/release-assets/dependency-artifact-builder.d.ts.map +1 -1
- package/esm/src/rendering/app-reserved.d.ts +2 -2
- package/esm/src/rendering/app-reserved.d.ts.map +1 -1
- package/esm/src/rendering/app-reserved.js +4 -3
- package/esm/src/rendering/cache/cache-coordinator.d.ts.map +1 -1
- package/esm/src/rendering/cache/cache-coordinator.js +1 -0
- package/esm/src/rendering/cache/cache-payload.d.ts.map +1 -1
- package/esm/src/rendering/cache/cache-payload.js +44 -0
- package/esm/src/rendering/component-handling.d.ts +4 -1
- package/esm/src/rendering/component-handling.d.ts.map +1 -1
- package/esm/src/rendering/component-handling.js +13 -6
- package/esm/src/rendering/layouts/layout-applicator.d.ts.map +1 -1
- package/esm/src/rendering/layouts/layout-applicator.js +3 -1
- package/esm/src/rendering/layouts/layout-collector.d.ts +1 -0
- package/esm/src/rendering/layouts/layout-collector.d.ts.map +1 -1
- package/esm/src/rendering/layouts/layout-collector.js +201 -4
- package/esm/src/rendering/layouts/utils/applicator.d.ts +1 -1
- package/esm/src/rendering/layouts/utils/applicator.d.ts.map +1 -1
- package/esm/src/rendering/layouts/utils/applicator.js +3 -3
- package/esm/src/rendering/layouts/utils/component-loader.d.ts +2 -2
- package/esm/src/rendering/layouts/utils/component-loader.d.ts.map +1 -1
- package/esm/src/rendering/layouts/utils/component-loader.js +12 -4
- package/esm/src/rendering/orchestrator/file-resolver/index.d.ts +3 -1
- package/esm/src/rendering/orchestrator/file-resolver/index.d.ts.map +1 -1
- package/esm/src/rendering/orchestrator/file-resolver/index.js +13 -5
- package/esm/src/rendering/orchestrator/html.d.ts.map +1 -1
- package/esm/src/rendering/orchestrator/html.js +26 -10
- package/esm/src/rendering/orchestrator/layout.d.ts.map +1 -1
- package/esm/src/rendering/orchestrator/layout.js +2 -2
- package/esm/src/rendering/orchestrator/module-loader/dependency-resolver.d.ts.map +1 -1
- package/esm/src/rendering/orchestrator/module-loader/dependency-resolver.js +20 -2
- package/esm/src/rendering/orchestrator/module-loader/index.d.ts +2 -0
- package/esm/src/rendering/orchestrator/module-loader/index.d.ts.map +1 -1
- package/esm/src/rendering/orchestrator/module-loader/index.js +6 -3
- package/esm/src/rendering/orchestrator/module-loader/module-cache-lookup.d.ts +3 -2
- package/esm/src/rendering/orchestrator/module-loader/module-cache-lookup.d.ts.map +1 -1
- package/esm/src/rendering/orchestrator/module-loader/module-cache-lookup.js +6 -6
- package/esm/src/rendering/orchestrator/module-loader/module-persistence.d.ts +1 -0
- package/esm/src/rendering/orchestrator/module-loader/module-persistence.d.ts.map +1 -1
- package/esm/src/rendering/orchestrator/module-loader/module-persistence.js +2 -2
- package/esm/src/rendering/orchestrator/module-loader/module-transform-cache.d.ts +2 -0
- package/esm/src/rendering/orchestrator/module-loader/module-transform-cache.d.ts.map +1 -1
- package/esm/src/rendering/orchestrator/module-loader/module-transform-cache.js +7 -1
- package/esm/src/rendering/orchestrator/pipeline.d.ts.map +1 -1
- package/esm/src/rendering/orchestrator/pipeline.js +58 -10
- package/esm/src/rendering/orchestrator/render-result-assembly.d.ts +3 -0
- package/esm/src/rendering/orchestrator/render-result-assembly.d.ts.map +1 -1
- package/esm/src/rendering/orchestrator/render-result-assembly.js +3 -1
- package/esm/src/rendering/page-renderer.d.ts +2 -0
- package/esm/src/rendering/page-renderer.d.ts.map +1 -1
- package/esm/src/rendering/page-renderer.js +4 -1
- package/esm/src/rendering/page-rendering.d.ts +2 -0
- package/esm/src/rendering/page-rendering.d.ts.map +1 -1
- package/esm/src/rendering/page-rendering.js +1 -0
- package/esm/src/rendering/renderer.d.ts.map +1 -1
- package/esm/src/rendering/renderer.js +31 -1
- package/esm/src/rendering/script-page-handling.d.ts +2 -0
- package/esm/src/rendering/script-page-handling.d.ts.map +1 -1
- package/esm/src/rendering/script-page-handling.js +17 -1
- package/esm/src/rendering/shared/context-aware-cache.d.ts.map +1 -1
- package/esm/src/rendering/shared/context-aware-cache.js +3 -0
- package/esm/src/rendering/snippet-renderer.d.ts +10 -0
- package/esm/src/rendering/snippet-renderer.d.ts.map +1 -1
- package/esm/src/rendering/snippet-renderer.js +40 -18
- package/esm/src/rendering/ssr/component-registry.d.ts +1 -1
- package/esm/src/rendering/ssr/component-registry.d.ts.map +1 -1
- package/esm/src/rendering/ssr/component-registry.js +13 -6
- package/esm/src/rendering/ssr-outcome.d.ts +4 -3
- package/esm/src/rendering/ssr-outcome.d.ts.map +1 -1
- package/esm/src/rendering/ssr-outcome.js +25 -8
- package/esm/src/routing/api/handler.d.ts +1 -1
- package/esm/src/routing/api/handler.d.ts.map +1 -1
- package/esm/src/routing/api/handler.js +6 -1
- package/esm/src/runtime/model-call-context.d.ts +37 -2
- package/esm/src/runtime/model-call-context.d.ts.map +1 -1
- package/esm/src/runtime/model-call-context.js +42 -1
- package/esm/src/runtime/runtime-bridge.d.ts.map +1 -1
- package/esm/src/runtime/runtime-bridge.js +108 -8
- package/esm/src/sandbox/shell-tools.d.ts.map +1 -1
- package/esm/src/sandbox/shell-tools.js +16 -6
- package/esm/src/schedule/validation.d.ts +9 -1
- package/esm/src/schedule/validation.d.ts.map +1 -1
- package/esm/src/schedule/validation.js +167 -80
- package/esm/src/schemas/json-value.d.ts.map +1 -1
- package/esm/src/schemas/json-value.js +81 -37
- package/esm/src/security/http/base-handler.js +1 -1
- package/esm/src/security/sandbox/project-worker.d.ts +1 -0
- package/esm/src/security/sandbox/project-worker.d.ts.map +1 -1
- package/esm/src/security/sandbox/project-worker.js +6 -0
- package/esm/src/security/sandbox/worker-read-scope.d.ts +20 -0
- package/esm/src/security/sandbox/worker-read-scope.d.ts.map +1 -0
- package/esm/src/security/sandbox/worker-read-scope.js +127 -0
- package/esm/src/security/sandbox/worker-types.d.ts +12 -0
- package/esm/src/security/sandbox/worker-types.d.ts.map +1 -1
- package/esm/src/server/handlers/dev/dashboard/api.d.ts.map +1 -1
- package/esm/src/server/handlers/dev/dashboard/api.js +70 -3
- package/esm/src/server/handlers/dev/files/esbuild-plugins.d.ts +5 -0
- package/esm/src/server/handlers/dev/files/esbuild-plugins.d.ts.map +1 -1
- package/esm/src/server/handlers/dev/files/esbuild-plugins.js +61 -3
- package/esm/src/server/handlers/dev/framework-candidates.generated.d.ts.map +1 -1
- package/esm/src/server/handlers/dev/framework-candidates.generated.js +227 -29
- package/esm/src/server/handlers/request/api/pages-api-handler.d.ts.map +1 -1
- package/esm/src/server/handlers/request/api/pages-api-handler.js +20 -2
- package/esm/src/server/handlers/request/module/page-data-endpoint-handler.d.ts.map +1 -1
- package/esm/src/server/handlers/request/module/page-data-endpoint-handler.js +32 -15
- package/esm/src/server/handlers/request/prod-hydration-module.handler.d.ts.map +1 -1
- package/esm/src/server/handlers/request/prod-hydration-module.handler.js +10 -3
- package/esm/src/server/handlers/request/project-run-execute.handler.d.ts.map +1 -1
- package/esm/src/server/handlers/request/project-run-execute.handler.js +1 -0
- package/esm/src/server/handlers/request/snippet.handler.d.ts +6 -0
- package/esm/src/server/handlers/request/snippet.handler.d.ts.map +1 -1
- package/esm/src/server/handlers/request/snippet.handler.js +8 -1
- package/esm/src/server/handlers/request/ssr/error-page-fallback.js +1 -0
- package/esm/src/server/handlers/request/ssr/ssr-response-builder.d.ts.map +1 -1
- package/esm/src/server/handlers/request/ssr/ssr-response-builder.js +10 -6
- package/esm/src/server/handlers/request/ssr/ssr.handler.d.ts.map +1 -1
- package/esm/src/server/handlers/request/ssr/ssr.handler.js +22 -10
- package/esm/src/server/handlers/request/static.handler.d.ts.map +1 -1
- package/esm/src/server/handlers/request/static.handler.js +1 -0
- package/esm/src/server/runtime-handler/handler-context-builder.d.ts +2 -0
- package/esm/src/server/runtime-handler/handler-context-builder.d.ts.map +1 -1
- package/esm/src/server/runtime-handler/handler-context-builder.js +1 -0
- package/esm/src/server/runtime-handler/project-runtime-context.d.ts.map +1 -1
- package/esm/src/server/runtime-handler/project-runtime-context.js +6 -2
- package/esm/src/server/runtime-handler/request-tracker.d.ts.map +1 -1
- package/esm/src/server/runtime-handler/request-tracker.js +10 -3
- package/esm/src/server/services/rendering/ssr.service.d.ts +5 -0
- package/esm/src/server/services/rendering/ssr.service.d.ts.map +1 -1
- package/esm/src/server/services/rendering/ssr.service.js +71 -16
- package/esm/src/server/services/rsc/endpoints/rsc-bundles.generated.d.ts.map +1 -1
- package/esm/src/server/services/rsc/endpoints/rsc-bundles.generated.js +2 -2
- package/esm/src/server/services/rsc/orchestrators/handler.d.ts.map +1 -1
- package/esm/src/server/services/rsc/orchestrators/handler.js +1 -0
- package/esm/src/server/services/rsc/orchestrators/render-handler.d.ts +1 -0
- package/esm/src/server/services/rsc/orchestrators/render-handler.d.ts.map +1 -1
- package/esm/src/server/services/rsc/orchestrators/render-handler.js +2 -0
- package/esm/src/server/services/static/static-file.service.d.ts +4 -1
- package/esm/src/server/services/static/static-file.service.d.ts.map +1 -1
- package/esm/src/server/services/static/static-file.service.js +48 -22
- package/esm/src/server/shared/browser-module-bundler.d.ts.map +1 -1
- package/esm/src/server/shared/browser-module-bundler.js +10 -0
- package/esm/src/server/utils/request-host.d.ts +6 -0
- package/esm/src/server/utils/request-host.d.ts.map +1 -1
- package/esm/src/server/utils/request-host.js +42 -1
- package/esm/src/skill/tools.d.ts.map +1 -1
- package/esm/src/task/definition-snapshot.d.ts +8 -0
- package/esm/src/task/definition-snapshot.d.ts.map +1 -0
- package/esm/src/task/definition-snapshot.js +154 -0
- package/esm/src/task/discovery.d.ts.map +1 -1
- package/esm/src/task/discovery.js +47 -21
- package/esm/src/task/types.d.ts +3 -0
- package/esm/src/task/types.d.ts.map +1 -1
- package/esm/src/task/types.js +7 -16
- package/esm/src/tool/remote-mcp.d.ts.map +1 -1
- package/esm/src/tool/remote-mcp.js +86 -5
- package/esm/src/transforms/esm/bundle-recovery.d.ts.map +1 -1
- package/esm/src/transforms/esm/bundle-recovery.js +1 -0
- package/esm/src/transforms/esm/http-cache-helpers.d.ts +3 -1
- package/esm/src/transforms/esm/http-cache-helpers.d.ts.map +1 -1
- package/esm/src/transforms/esm/http-cache-helpers.js +18 -2
- package/esm/src/transforms/esm/http-cache-wrapper.d.ts.map +1 -1
- package/esm/src/transforms/esm/http-cache-wrapper.js +23 -0
- package/esm/src/transforms/esm/specifier-resolver.d.ts.map +1 -1
- package/esm/src/transforms/esm/specifier-resolver.js +2 -1
- package/esm/src/transforms/esm/types.d.ts +2 -0
- package/esm/src/transforms/esm/types.d.ts.map +1 -1
- package/esm/src/transforms/import-rewriter/commonjs-policy.d.ts +22 -0
- package/esm/src/transforms/import-rewriter/commonjs-policy.d.ts.map +1 -0
- package/esm/src/transforms/import-rewriter/commonjs-policy.js +75 -0
- package/esm/src/transforms/import-rewriter/core.d.ts.map +1 -1
- package/esm/src/transforms/import-rewriter/core.js +29 -1
- package/esm/src/transforms/import-rewriter/ssr-adapter.d.ts +2 -0
- package/esm/src/transforms/import-rewriter/ssr-adapter.d.ts.map +1 -1
- package/esm/src/transforms/import-rewriter/ssr-adapter.js +79 -10
- package/esm/src/transforms/import-rewriter/strategies/bare-strategy.d.ts.map +1 -1
- package/esm/src/transforms/import-rewriter/strategies/bare-strategy.js +14 -4
- package/esm/src/transforms/import-rewriter/types.d.ts +2 -0
- package/esm/src/transforms/import-rewriter/types.d.ts.map +1 -1
- package/esm/src/transforms/import-rewriter/url-builder.d.ts +2 -19
- package/esm/src/transforms/import-rewriter/url-builder.d.ts.map +1 -1
- package/esm/src/transforms/import-rewriter/url-builder.js +2 -67
- package/esm/src/transforms/mdx/esm-module-loader/import-transformer.d.ts +3 -2
- package/esm/src/transforms/mdx/esm-module-loader/import-transformer.d.ts.map +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/import-transformer.js +39 -8
- package/esm/src/transforms/mdx/esm-module-loader/jsx/runtime-loader.d.ts.map +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/jsx/runtime-loader.js +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/loader-helpers.d.ts.map +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/loader-helpers.js +1 -0
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/cache-keys.d.ts +3 -3
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/cache-keys.d.ts.map +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/cache-keys.js +14 -6
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/distributed-cache.d.ts +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/distributed-cache.d.ts.map +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/distributed-cache.js +2 -1
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/http-fallback.d.ts +1 -0
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/http-fallback.d.ts.map +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/http-fallback.js +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/index.d.ts +1 -0
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/index.d.ts.map +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/index.js +6 -3
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/module-cache.d.ts +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/module-cache.d.ts.map +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/module-cache.js +2 -2
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/persistence.d.ts +1 -0
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/persistence.d.ts.map +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/persistence.js +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/source-transform.d.ts +1 -0
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/source-transform.d.ts.map +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/source-transform.js +2 -0
- package/esm/src/transforms/mdx/esm-module-loader/module-writer.d.ts +2 -2
- package/esm/src/transforms/mdx/esm-module-loader/module-writer.d.ts.map +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/module-writer.js +15 -7
- package/esm/src/transforms/mdx/esm-module-loader/types.d.ts +4 -0
- package/esm/src/transforms/mdx/esm-module-loader/types.d.ts.map +1 -1
- package/esm/src/transforms/mdx/index.d.ts +1 -0
- package/esm/src/transforms/mdx/index.d.ts.map +1 -1
- package/esm/src/transforms/mdx/index.js +2 -1
- package/esm/src/transforms/pipeline/cache-identity.d.ts +1 -0
- package/esm/src/transforms/pipeline/cache-identity.d.ts.map +1 -1
- package/esm/src/transforms/pipeline/cache-identity.js +15 -0
- package/esm/src/transforms/pipeline/context.d.ts.map +1 -1
- package/esm/src/transforms/pipeline/context.js +2 -0
- package/esm/src/transforms/pipeline/index.d.ts.map +1 -1
- package/esm/src/transforms/pipeline/index.js +1 -0
- package/esm/src/transforms/pipeline/stages/resolve-imports.d.ts.map +1 -1
- package/esm/src/transforms/pipeline/stages/resolve-imports.js +1 -0
- package/esm/src/transforms/pipeline/stages/ssr-http-cache.d.ts.map +1 -1
- package/esm/src/transforms/pipeline/stages/ssr-http-cache.js +1 -0
- package/esm/src/transforms/pipeline/types.d.ts +4 -0
- package/esm/src/transforms/pipeline/types.d.ts.map +1 -1
- package/esm/src/transforms/shared/esm-sh-specifier.d.ts +18 -0
- package/esm/src/transforms/shared/esm-sh-specifier.d.ts.map +1 -0
- package/esm/src/transforms/shared/esm-sh-specifier.js +253 -0
- package/esm/src/transforms/shared/package-specifier.d.ts.map +1 -1
- package/esm/src/transforms/shared/package-specifier.js +9 -2
- package/esm/src/transforms/shared/server-only-packages.d.ts +25 -1
- package/esm/src/transforms/shared/server-only-packages.d.ts.map +1 -1
- package/esm/src/transforms/shared/server-only-packages.js +176 -4
- package/esm/src/types/entities/getEntityInfo.d.ts.map +1 -1
- package/esm/src/types/index.d.ts +5 -0
- package/esm/src/types/index.d.ts.map +1 -1
- package/esm/src/types/server.d.ts +6 -0
- package/esm/src/types/server.d.ts.map +1 -1
- package/esm/src/utils/env-loader.d.ts.map +1 -1
- package/esm/src/utils/env-loader.js +2 -1
- package/esm/src/utils/feature-flags.js +1 -1
- package/esm/src/utils/lru-wrapper.js +2 -2
- package/esm/src/utils/memory/profiler.d.ts +20 -0
- package/esm/src/utils/memory/profiler.d.ts.map +1 -1
- package/esm/src/utils/memory/profiler.js +43 -5
- package/esm/src/utils/perf-timer.js +1 -1
- package/esm/src/utils/redirect-policy.d.ts +18 -0
- package/esm/src/utils/redirect-policy.d.ts.map +1 -0
- package/esm/src/utils/redirect-policy.js +92 -0
- package/esm/src/utils/redis-client.d.ts.map +1 -1
- package/esm/src/utils/redis-client.js +6 -3
- package/esm/src/utils/version-constant.d.ts +1 -1
- package/esm/src/utils/version-constant.js +1 -1
- package/esm/src/workflow/claude-code/tool.d.ts +27 -27
- package/esm/src/workflow/claude-code/tool.d.ts.map +1 -1
- package/esm/src/workflow/claude-code/wire-protocol.d.ts.map +1 -1
- package/esm/src/workflow/dsl/workflow.d.ts +3 -0
- package/esm/src/workflow/dsl/workflow.d.ts.map +1 -1
- package/esm/src/workflow/dsl/workflow.js +2 -1
- package/esm/src/workflow/executor/workflow-definition-snapshot.d.ts.map +1 -1
- package/esm/src/workflow/executor/workflow-definition-snapshot.js +88 -39
- package/esm/src/workflow/registry.d.ts +4 -1
- package/esm/src/workflow/registry.d.ts.map +1 -1
- package/esm/src/workflow/registry.js +10 -8
- package/esm/src/workflow/types.d.ts +3 -0
- package/esm/src/workflow/types.d.ts.map +1 -1
- package/esm/templates/index.d.ts.map +1 -1
- package/esm/templates/index.js +7 -0
- package/esm/templates/manifest.generated.d.ts.map +1 -1
- package/esm/templates/manifest.generated.js +1 -1
- package/package.json +16 -9
- package/esm/src/agent/ag-ui/browser-chunk-encoder.d.ts +0 -24
- package/esm/src/agent/ag-ui/browser-chunk-encoder.d.ts.map +0 -1
- package/esm/src/agent/ag-ui/browser-encoder.d.ts.map +0 -1
- package/esm/src/agent/ag-ui/browser-finalize-tracker.d.ts +0 -15
- package/esm/src/agent/ag-ui/browser-finalize-tracker.d.ts.map +0 -1
- package/esm/src/agent/ag-ui/browser-response-stream.d.ts +0 -33
- package/esm/src/agent/ag-ui/browser-response-stream.d.ts.map +0 -1
- package/esm/src/agent/ag-ui/chat-ui-chunk-browser-encoder.d.ts +0 -35
- package/esm/src/agent/ag-ui/chat-ui-chunk-browser-encoder.d.ts.map +0 -1
- package/esm/src/agent/ag-ui/runtime-browser-response.d.ts +0 -20
- package/esm/src/agent/ag-ui/runtime-browser-response.d.ts.map +0 -1
- package/esm/src/agent/ag-ui/runtime-browser-response.js +0 -16
- package/esm/src/agent/ag-ui/tracked-browser-response.d.ts +0 -11
- package/esm/src/agent/ag-ui/tracked-browser-response.d.ts.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../src/src/config/loader.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAG1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAWnE,OAAO,EAAuB,KAAK,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAuBxF,OAAO,EAGL,KAAK,yBAAyB,EAC9B,KAAK,gCAAgC,EAGtC,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAEL,yCAAyC,EAC1C,MAAM,0CAA0C,CAAC;AA2WlD,YAAY,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AA2I1D,MAAM,MAAM,oBAAoB,GAC5B,QAAQ,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,yBAAyB,CAAA;CAAE,CAAC,GACjE,QAAQ,CAAC;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,CAAC,CAAC;AAEnC,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC,QAAQ,CAAC,UAAU,EAAE,oBAAoB,CAAC;CAC3C;AAgCD,KAAK,qBAAqB,GAAG,OAAO,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../src/src/config/loader.ts"],"names":[],"mappings":"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"}
|
package/esm/src/config/loader.js
CHANGED
|
@@ -15,11 +15,11 @@ import { CACHE_INVARIANT_VIOLATION, CONFIG_PARSE_ERROR, CONFIG_VALIDATION_FAILED
|
|
|
15
15
|
import { VeryfrontError } from "../errors/types.js";
|
|
16
16
|
import { withSpan } from "../observability/tracing/otlp-setup.js";
|
|
17
17
|
import { SpanNames } from "../observability/tracing/span-names.js";
|
|
18
|
-
import { getHostEnv } from "../platform/compat/process.js";
|
|
18
|
+
import { getHostEnv } from "../platform/compat/process/env.js";
|
|
19
19
|
import { LRUCache } from "../utils/lru-wrapper.js";
|
|
20
20
|
import { registerLRUCache } from "../cache/registry.js";
|
|
21
21
|
import { VERYFRONT_CONFIG_FILES } from "./config-files.js";
|
|
22
|
-
import {
|
|
22
|
+
import { currentRequestContext } from "../platform/request-context-access.js";
|
|
23
23
|
import { tryResolve as tryResolveContract } from "../extensions/contracts.js";
|
|
24
24
|
import { importFirstPartyExtensionModule } from "../extensions/first-party-import.js";
|
|
25
25
|
import { computeHash } from "../utils/hash-utils.js";
|
|
@@ -1385,7 +1385,7 @@ async function loadAndMergeConfig(configPath, cacheKey, adapter, selectedVirtual
|
|
|
1385
1385
|
return validateAndMergeConfig(selectConfigModuleValue(configModule));
|
|
1386
1386
|
}
|
|
1387
1387
|
function getVirtualConfigSourceContext() {
|
|
1388
|
-
const source =
|
|
1388
|
+
const source = currentRequestContext();
|
|
1389
1389
|
if (!source)
|
|
1390
1390
|
return undefined;
|
|
1391
1391
|
return {
|
|
@@ -1534,7 +1534,7 @@ function getConfigInternal(projectDir, adapter, options) {
|
|
|
1534
1534
|
assertMatchingVirtualConfigSource(options.sourceContext, ambientSourceContext);
|
|
1535
1535
|
}
|
|
1536
1536
|
if (hostedMultiProjectFilesystem) {
|
|
1537
|
-
assertMatchingHostedProjectIdentity(options.cacheKey,
|
|
1537
|
+
assertMatchingHostedProjectIdentity(options.cacheKey, currentRequestContext());
|
|
1538
1538
|
}
|
|
1539
1539
|
const sourceContext = hasQualifiedCacheIdentity
|
|
1540
1540
|
? options.sourceContext ?? ambientSourceContext
|
|
@@ -31,6 +31,8 @@ export declare const getVeryfrontConfigSchema: () => import("../../internal-agen
|
|
|
31
31
|
build: import("../../internal-agents/schema.js").Schema<Partial<import("../../extensions/schema/schema-validator.js").InferShape<{
|
|
32
32
|
outDir: import("../../internal-agents/schema.js").Schema<string | undefined>;
|
|
33
33
|
trailingSlash: import("../../internal-agents/schema.js").Schema<boolean | undefined>;
|
|
34
|
+
/** Bare npm package roots that the runtime resolves instead of bundling. */
|
|
35
|
+
serverExternalPackages: import("../../internal-agents/schema.js").Schema<string[] | undefined>;
|
|
34
36
|
/**
|
|
35
37
|
* Generate static HTML for all routes during `veryfront build`.
|
|
36
38
|
* Defaults to true; disabling it produces no pages, so only turn it
|
|
@@ -135,6 +137,14 @@ export declare const getVeryfrontConfigSchema: () => import("../../internal-agen
|
|
|
135
137
|
*/
|
|
136
138
|
csp: import("../../internal-agents/schema.js").Schema<Record<string, string[] | null> | undefined>;
|
|
137
139
|
remoteHosts: import("../../internal-agents/schema.js").Schema<string[] | undefined>;
|
|
140
|
+
/**
|
|
141
|
+
* Restrict project redirects to the request origin and exact allowed
|
|
142
|
+
* HTTP(S) origins. Omit this policy to preserve unrestricted redirect
|
|
143
|
+
* behavior. An empty allowlist permits same-origin redirects only.
|
|
144
|
+
*/
|
|
145
|
+
redirects: import("../../internal-agents/schema.js").Schema<import("../../extensions/schema/schema-validator.js").InferShape<{
|
|
146
|
+
allowedOrigins: import("../../internal-agents/schema.js").Schema<string[]>;
|
|
147
|
+
}> | undefined>;
|
|
138
148
|
cors: import("../../internal-agents/schema.js").Schema<boolean | import("../../extensions/schema/schema-validator.js").InferShape<{
|
|
139
149
|
origin: import("../../internal-agents/schema.js").Schema<string | string[] | CorsOriginValidator | undefined>;
|
|
140
150
|
credentials: import("../../internal-agents/schema.js").Schema<boolean | undefined>;
|
|
@@ -508,6 +518,8 @@ export declare const veryfrontConfigSchema: import("../../internal-agents/schema
|
|
|
508
518
|
build: import("../../internal-agents/schema.js").Schema<Partial<import("../../extensions/schema/schema-validator.js").InferShape<{
|
|
509
519
|
outDir: import("../../internal-agents/schema.js").Schema<string | undefined>;
|
|
510
520
|
trailingSlash: import("../../internal-agents/schema.js").Schema<boolean | undefined>;
|
|
521
|
+
/** Bare npm package roots that the runtime resolves instead of bundling. */
|
|
522
|
+
serverExternalPackages: import("../../internal-agents/schema.js").Schema<string[] | undefined>;
|
|
511
523
|
/**
|
|
512
524
|
* Generate static HTML for all routes during `veryfront build`.
|
|
513
525
|
* Defaults to true; disabling it produces no pages, so only turn it
|
|
@@ -612,6 +624,14 @@ export declare const veryfrontConfigSchema: import("../../internal-agents/schema
|
|
|
612
624
|
*/
|
|
613
625
|
csp: import("../../internal-agents/schema.js").Schema<Record<string, string[] | null> | undefined>;
|
|
614
626
|
remoteHosts: import("../../internal-agents/schema.js").Schema<string[] | undefined>;
|
|
627
|
+
/**
|
|
628
|
+
* Restrict project redirects to the request origin and exact allowed
|
|
629
|
+
* HTTP(S) origins. Omit this policy to preserve unrestricted redirect
|
|
630
|
+
* behavior. An empty allowlist permits same-origin redirects only.
|
|
631
|
+
*/
|
|
632
|
+
redirects: import("../../internal-agents/schema.js").Schema<import("../../extensions/schema/schema-validator.js").InferShape<{
|
|
633
|
+
allowedOrigins: import("../../internal-agents/schema.js").Schema<string[]>;
|
|
634
|
+
}> | undefined>;
|
|
615
635
|
cors: import("../../internal-agents/schema.js").Schema<boolean | import("../../extensions/schema/schema-validator.js").InferShape<{
|
|
616
636
|
origin: import("../../internal-agents/schema.js").Schema<string | string[] | CorsOriginValidator | undefined>;
|
|
617
637
|
credentials: import("../../internal-agents/schema.js").Schema<boolean | undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.schema.d.ts","sourceRoot":"","sources":["../../../../src/src/config/schemas/config.schema.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAahF,OAAO,KAAK,EACV,6BAA6B,EAE9B,MAAM,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"config.schema.d.ts","sourceRoot":"","sources":["../../../../src/src/config/schemas/config.schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,7 @@ import { MAX_CACHE_TTL_MILLISECONDS } from "../../cache/backends/ttl.js";
|
|
|
8
8
|
import { MAX_PORT, MIN_PORT } from "../../utils/constants/network.js";
|
|
9
9
|
import { HTTP_TOKEN_PATTERN, isBoundedCorsOrigin, isBoundedCorsOriginList, isBoundedCorsTokenList, MAX_CORS_MAX_AGE, MAX_CORS_ORIGIN_COUNT, MAX_CORS_ORIGIN_LENGTH, MAX_CORS_TOKEN_COUNT, MAX_CORS_TOKEN_LENGTH, } from "../../utils/cors-policy-limits.js";
|
|
10
10
|
import { MAX_REMOTE_HOST_COUNT, MAX_REMOTE_HOST_URL_LENGTH, } from "../../utils/remote-host-policy-limits.js";
|
|
11
|
+
import { isValidRedirectOriginList, MAX_REDIRECT_ORIGIN_COUNT, MAX_REDIRECT_ORIGIN_LENGTH, } from "../../utils/redirect-policy.js";
|
|
11
12
|
import { MAX_FILE_LOG_FILES, MAX_GITHUB_FILESYSTEM_ATTEMPTS, MAX_VERYFRONT_FILESYSTEM_RETRIES, } from "../../utils/config-resource-limits.js";
|
|
12
13
|
import { MAX_CSRF_NAME_LENGTH, MAX_CSRF_TTL_SECONDS, MAX_PATH_LENGTH, } from "../../utils/constants/security.js";
|
|
13
14
|
import { MAX_TIMER_DELAY_MS } from "../../utils/timer.js";
|
|
@@ -15,6 +16,7 @@ import { CSS_OPTIMIZATION, IMAGE_OPTIMIZATION } from "../../utils/constants/buil
|
|
|
15
16
|
import { isProjectRelativeDiscoveryPath, MAX_PROJECT_DISCOVERY_DIRECTORIES, } from "../../utils/discovery-path-policy.js";
|
|
16
17
|
import { MAX_PATH_LENGTH_CHARS } from "../../utils/constants/limits.js";
|
|
17
18
|
import { isCanonicalProjectRelativePath } from "../../utils/project-relative-path.js";
|
|
19
|
+
import { hasUniqueServerExternalPackages, isValidServerExternalPackageName, MAX_SERVER_EXTERNAL_PACKAGE_COUNT, MAX_SERVER_EXTERNAL_PACKAGE_NAME_LENGTH, } from "../server-external-packages.js";
|
|
18
20
|
const integrationNames = new Set(ALL_INTEGRATION_NAMES);
|
|
19
21
|
const MAX_CSRF_EXCLUDE_PATH_COUNT = 64;
|
|
20
22
|
const MAX_CSRF_EXCLUDE_PATH_LIST_LENGTH = 16_384;
|
|
@@ -235,6 +237,17 @@ export const getVeryfrontConfigSchema = defineSchema((v) => v
|
|
|
235
237
|
.object({
|
|
236
238
|
outDir: v.string().optional(),
|
|
237
239
|
trailingSlash: v.boolean().optional(),
|
|
240
|
+
/** Bare npm package roots that the runtime resolves instead of bundling. */
|
|
241
|
+
serverExternalPackages: v
|
|
242
|
+
.array(v
|
|
243
|
+
.string()
|
|
244
|
+
.min(1)
|
|
245
|
+
.max(MAX_SERVER_EXTERNAL_PACKAGE_NAME_LENGTH)
|
|
246
|
+
.refine(isValidServerExternalPackageName, "Expected a bare npm package name without a version or subpath"))
|
|
247
|
+
.min(1)
|
|
248
|
+
.max(MAX_SERVER_EXTERNAL_PACKAGE_COUNT)
|
|
249
|
+
.refine(hasUniqueServerExternalPackages, "Server external package names must be unique")
|
|
250
|
+
.optional(),
|
|
238
251
|
/**
|
|
239
252
|
* Generate static HTML for all routes during `veryfront build`.
|
|
240
253
|
* Defaults to true; disabling it produces no pages, so only turn it
|
|
@@ -417,6 +430,20 @@ export const getVeryfrontConfigSchema = defineSchema((v) => v
|
|
|
417
430
|
.array(v.string().max(MAX_REMOTE_HOST_URL_LENGTH).url())
|
|
418
431
|
.max(MAX_REMOTE_HOST_COUNT)
|
|
419
432
|
.optional(),
|
|
433
|
+
/**
|
|
434
|
+
* Restrict project redirects to the request origin and exact allowed
|
|
435
|
+
* HTTP(S) origins. Omit this policy to preserve unrestricted redirect
|
|
436
|
+
* behavior. An empty allowlist permits same-origin redirects only.
|
|
437
|
+
*/
|
|
438
|
+
redirects: v
|
|
439
|
+
.object({
|
|
440
|
+
allowedOrigins: v
|
|
441
|
+
.array(v.string().min(1).max(MAX_REDIRECT_ORIGIN_LENGTH))
|
|
442
|
+
.max(MAX_REDIRECT_ORIGIN_COUNT)
|
|
443
|
+
.refine(isValidRedirectOriginList, "Redirect origins must be unique canonical HTTP(S) origins within the policy limits"),
|
|
444
|
+
})
|
|
445
|
+
.strict()
|
|
446
|
+
.optional(),
|
|
420
447
|
cors: getCorsSchema().optional(),
|
|
421
448
|
/**
|
|
422
449
|
* CSRF protection using the double-submit cookie pattern.
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export declare const MAX_SERVER_EXTERNAL_PACKAGE_COUNT = 128;
|
|
2
|
+
export declare const MAX_SERVER_EXTERNAL_PACKAGE_NAME_LENGTH = 214;
|
|
3
|
+
/** Return whether a value names one bare npm package root. */
|
|
4
|
+
export declare function isValidServerExternalPackageName(value: string): boolean;
|
|
5
|
+
/** Return whether every configured package name occurs exactly once. */
|
|
6
|
+
export declare function hasUniqueServerExternalPackages(values: readonly string[]): boolean;
|
|
7
|
+
/** Capture an immutable, order-independent package list for one transform graph. */
|
|
8
|
+
export declare function canonicalizeServerExternalPackages(values: readonly string[] | undefined): readonly string[] | undefined;
|
|
9
|
+
/** Build a stable framed identity for cache keys whose output depends on this list. */
|
|
10
|
+
export declare function buildServerExternalPackagesIdentity(values: readonly string[] | undefined): string | undefined;
|
|
11
|
+
//# sourceMappingURL=server-external-packages.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server-external-packages.d.ts","sourceRoot":"","sources":["../../../src/src/config/server-external-packages.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,iCAAiC,MAAM,CAAC;AACrD,eAAO,MAAM,uCAAuC,MAAM,CAAC;AAS3D,8DAA8D;AAC9D,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAGvE;AAED,wEAAwE;AACxE,wBAAgB,+BAA+B,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAQlF;AAED,oFAAoF;AACpF,wBAAgB,kCAAkC,CAChD,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,GACpC,SAAS,MAAM,EAAE,GAAG,SAAS,CAa/B;AAED,uFAAuF;AACvF,wBAAgB,mCAAmC,CACjD,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,GACpC,MAAM,GAAG,SAAS,CAUpB"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { primordialArrayPush, primordialArraySort, } from "../platform/compat/primordials/array.js";
|
|
2
|
+
export const MAX_SERVER_EXTERNAL_PACKAGE_COUNT = 128;
|
|
3
|
+
export const MAX_SERVER_EXTERNAL_PACKAGE_NAME_LENGTH = 214;
|
|
4
|
+
const ObjectFreeze = Object.freeze;
|
|
5
|
+
const RegExpExec = RegExp.prototype.exec;
|
|
6
|
+
const ReflectApply = Reflect.apply;
|
|
7
|
+
const SetAdd = Set.prototype.add;
|
|
8
|
+
const SetHas = Set.prototype.has;
|
|
9
|
+
const SERVER_EXTERNAL_PACKAGE_PATTERN = /^(?:@[a-z0-9][a-z0-9._-]*\/)?[a-z0-9][a-z0-9._-]*$/;
|
|
10
|
+
/** Return whether a value names one bare npm package root. */
|
|
11
|
+
export function isValidServerExternalPackageName(value) {
|
|
12
|
+
return value.length <= MAX_SERVER_EXTERNAL_PACKAGE_NAME_LENGTH &&
|
|
13
|
+
ReflectApply(RegExpExec, SERVER_EXTERNAL_PACKAGE_PATTERN, [value]) !== null;
|
|
14
|
+
}
|
|
15
|
+
/** Return whether every configured package name occurs exactly once. */
|
|
16
|
+
export function hasUniqueServerExternalPackages(values) {
|
|
17
|
+
const seen = new Set();
|
|
18
|
+
for (let index = 0; index < values.length; index++) {
|
|
19
|
+
const value = values[index];
|
|
20
|
+
if (ReflectApply(SetHas, seen, [value]))
|
|
21
|
+
return false;
|
|
22
|
+
ReflectApply(SetAdd, seen, [value]);
|
|
23
|
+
}
|
|
24
|
+
return true;
|
|
25
|
+
}
|
|
26
|
+
/** Capture an immutable, order-independent package list for one transform graph. */
|
|
27
|
+
export function canonicalizeServerExternalPackages(values) {
|
|
28
|
+
if (!values || values.length === 0)
|
|
29
|
+
return undefined;
|
|
30
|
+
const canonical = [];
|
|
31
|
+
const seen = new Set();
|
|
32
|
+
for (let index = 0; index < values.length; index++) {
|
|
33
|
+
const value = values[index];
|
|
34
|
+
if (ReflectApply(SetHas, seen, [value]))
|
|
35
|
+
continue;
|
|
36
|
+
ReflectApply(SetAdd, seen, [value]);
|
|
37
|
+
primordialArrayPush(canonical, value);
|
|
38
|
+
}
|
|
39
|
+
primordialArraySort(canonical, (left, right) => left < right ? -1 : left > right ? 1 : 0);
|
|
40
|
+
return ObjectFreeze(canonical);
|
|
41
|
+
}
|
|
42
|
+
/** Build a stable framed identity for cache keys whose output depends on this list. */
|
|
43
|
+
export function buildServerExternalPackagesIdentity(values) {
|
|
44
|
+
const canonical = canonicalizeServerExternalPackages(values);
|
|
45
|
+
if (!canonical)
|
|
46
|
+
return undefined;
|
|
47
|
+
let identity = "";
|
|
48
|
+
for (let index = 0; index < canonical.length; index++) {
|
|
49
|
+
const value = canonical[index];
|
|
50
|
+
identity += `${value.length}:${value};`;
|
|
51
|
+
}
|
|
52
|
+
return identity;
|
|
53
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-fetcher.d.ts","sourceRoot":"","sources":["../../../src/src/data/data-fetcher.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAE3F;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,2DAA2D;IAC3D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2CAA2C;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kEAAkE;IAClE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,+DAA+D;IAC/D,6BAA6B,CAAC,EAAE,OAAO,CAAC;IACxC,mEAAmE;IACnE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0EAA0E;IAC1E,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,YAAY,CAAe;
|
|
1
|
+
{"version":3,"file":"data-fetcher.d.ts","sourceRoot":"","sources":["../../../src/src/data/data-fetcher.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAE3F;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,2DAA2D;IAC3D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2CAA2C;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kEAAkE;IAClE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,+DAA+D;IAC/D,6BAA6B,CAAC,EAAE,OAAO,CAAC;IACxC,mEAAmE;IACnE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0EAA0E;IAC1E,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,YAAY,CAAe;IAGnC,OAAO,CAAC,aAAa,CAAgC;IACrD,OAAO,CAAC,aAAa,CAAoB;IACzC,OAAO,CAAC,YAAY,CAAqB;gBAE7B,QAAQ,CAAC,EAAE,OAAO;IAO9B,SAAS,CACP,UAAU,EAAE,YAAY,EACxB,OAAO,EAAE,WAAW,EACpB,IAAI,GAAE,aAAa,GAAG,YAA4B,EAClD,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,UAAU,CAAC;IA2CtB,cAAc,CAAC,UAAU,EAAE,YAAY,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;IAI3E,UAAU,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI;CAQnC"}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import { SpanNames } from "../observability/index.js";
|
|
2
2
|
import { withSpan } from "../observability/tracing/otlp-setup.js";
|
|
3
3
|
import { CacheManager } from "./data-fetching-cache.js";
|
|
4
|
-
import { ServerDataFetcher } from "./server-data-fetcher.js";
|
|
5
4
|
import { StaticDataFetcher } from "./static-data-fetcher.js";
|
|
6
5
|
import { StaticPathsFetcher } from "./static-paths-fetcher.js";
|
|
7
6
|
export class DataFetcher {
|
|
8
7
|
cacheManager;
|
|
8
|
+
// Constructed lazily: the server fetcher pulls the sandbox worker pool,
|
|
9
|
+
// which must stay out of browser bundles.
|
|
9
10
|
serverFetcher;
|
|
10
11
|
staticFetcher;
|
|
11
12
|
pathsFetcher;
|
|
12
13
|
constructor(_adapter) {
|
|
13
14
|
this.cacheManager = new CacheManager();
|
|
14
|
-
this.serverFetcher = new ServerDataFetcher();
|
|
15
15
|
this.staticFetcher = new StaticDataFetcher(this.cacheManager);
|
|
16
16
|
this.pathsFetcher = new StaticPathsFetcher();
|
|
17
17
|
}
|
|
@@ -34,9 +34,14 @@ export class DataFetcher {
|
|
|
34
34
|
sourceGeneration: options.sourceGeneration,
|
|
35
35
|
}
|
|
36
36
|
: undefined;
|
|
37
|
-
return withSpan(SpanNames.DATA_FETCH, () => {
|
|
38
|
-
if (useServer)
|
|
37
|
+
return withSpan(SpanNames.DATA_FETCH, async () => {
|
|
38
|
+
if (useServer) {
|
|
39
|
+
if (this.serverFetcher === undefined) {
|
|
40
|
+
const { ServerDataFetcher } = await import("./server-data-fetcher.js");
|
|
41
|
+
this.serverFetcher = new ServerDataFetcher();
|
|
42
|
+
}
|
|
39
43
|
return this.serverFetcher.fetch(pageModule, context, isolationOptions);
|
|
44
|
+
}
|
|
40
45
|
if (useStatic)
|
|
41
46
|
return this.staticFetcher.fetch(pageModule, context, options);
|
|
42
47
|
return Promise.resolve({ props: {} });
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { DataResult, StaticDataResult } from "./types.js";
|
|
2
|
+
/** Validate and snapshot a project hook result before recording success. */
|
|
3
|
+
export declare function validateDataResult(value: unknown, hookName: "getStaticData"): StaticDataResult;
|
|
4
|
+
export declare function validateDataResult(value: unknown, hookName: "getServerData"): DataResult;
|
|
5
|
+
//# sourceMappingURL=data-result-validation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-result-validation.d.ts","sourceRoot":"","sources":["../../../src/src/data/data-result-validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAG/D,4EAA4E;AAC5E,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,eAAe,GACxB,gBAAgB,CAAC;AACpB,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,eAAe,GACxB,UAAU,CAAC"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { normalizeDataResponseMetadata } from "./response-metadata.js";
|
|
2
|
+
export function validateDataResult(value, hookName) {
|
|
3
|
+
const fail = () => {
|
|
4
|
+
throw new TypeError(`${hookName} must return a valid data result object`);
|
|
5
|
+
};
|
|
6
|
+
if (value === null || typeof value !== "object" || Array.isArray(value))
|
|
7
|
+
return fail();
|
|
8
|
+
const result = value;
|
|
9
|
+
const props = result.props;
|
|
10
|
+
const redirect = result.redirect;
|
|
11
|
+
const notFound = result.notFound;
|
|
12
|
+
const revalidate = result.revalidate;
|
|
13
|
+
const responseMetadata = normalizeDataResponseMetadata(result, hookName);
|
|
14
|
+
let redirectDestination;
|
|
15
|
+
let redirectPermanent;
|
|
16
|
+
if (redirect !== undefined &&
|
|
17
|
+
(redirect === null || typeof redirect !== "object" || Array.isArray(redirect))) {
|
|
18
|
+
return fail();
|
|
19
|
+
}
|
|
20
|
+
if (redirect !== undefined) {
|
|
21
|
+
const redirectRecord = redirect;
|
|
22
|
+
if (typeof redirectRecord.destination !== "string" ||
|
|
23
|
+
(redirectRecord.permanent !== undefined && typeof redirectRecord.permanent !== "boolean"))
|
|
24
|
+
return fail();
|
|
25
|
+
redirectDestination = redirectRecord.destination;
|
|
26
|
+
redirectPermanent = redirectRecord.permanent;
|
|
27
|
+
}
|
|
28
|
+
if (notFound !== undefined && typeof notFound !== "boolean")
|
|
29
|
+
return fail();
|
|
30
|
+
const normalized = {};
|
|
31
|
+
if (redirectDestination !== undefined) {
|
|
32
|
+
normalized.redirect = {
|
|
33
|
+
destination: redirectDestination,
|
|
34
|
+
...(redirectPermanent !== undefined ? { permanent: redirectPermanent } : {}),
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
else if (notFound === true) {
|
|
38
|
+
normalized.notFound = true;
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
if (revalidate !== undefined && revalidate !== false &&
|
|
42
|
+
(typeof revalidate !== "number" || !Number.isFinite(revalidate) || revalidate < 0))
|
|
43
|
+
return fail();
|
|
44
|
+
if (props !== undefined)
|
|
45
|
+
normalized.props = props;
|
|
46
|
+
if (notFound !== undefined)
|
|
47
|
+
normalized.notFound = notFound;
|
|
48
|
+
if (revalidate !== undefined)
|
|
49
|
+
normalized.revalidate = revalidate;
|
|
50
|
+
}
|
|
51
|
+
if (responseMetadata.headers)
|
|
52
|
+
normalized.headers = responseMetadata.headers;
|
|
53
|
+
if (responseMetadata.cookies)
|
|
54
|
+
normalized.cookies = responseMetadata.cookies;
|
|
55
|
+
return normalized;
|
|
56
|
+
}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import type { DataResult } from "./types.js";
|
|
1
|
+
import type { DataResponseMetadata, DataResult, StaticDataResult } from "./types.js";
|
|
2
2
|
/**
|
|
3
3
|
* Redirect the request from a data loader.
|
|
4
4
|
*
|
|
5
5
|
* Return it or throw it. `throw redirect("/login")` behaves exactly like
|
|
6
6
|
* `return redirect("/login")`.
|
|
7
7
|
*/
|
|
8
|
-
export declare function redirect(destination: string, permanent?: boolean):
|
|
8
|
+
export declare function redirect(destination: string, permanent?: boolean, response?: undefined): StaticDataResult;
|
|
9
|
+
export declare function redirect(destination: string, permanent: boolean | undefined, response: DataResponseMetadata): DataResult;
|
|
9
10
|
/**
|
|
10
11
|
* Render the 404 page from a data loader.
|
|
11
12
|
*
|
|
@@ -13,7 +14,8 @@ export declare function redirect(destination: string, permanent?: boolean): Data
|
|
|
13
14
|
* `return notFound()`, which is useful deep inside a helper that has no clean
|
|
14
15
|
* way to return to the loader.
|
|
15
16
|
*/
|
|
16
|
-
export declare function notFound():
|
|
17
|
+
export declare function notFound(response?: undefined): StaticDataResult;
|
|
18
|
+
export declare function notFound(response: DataResponseMetadata): DataResult;
|
|
17
19
|
/**
|
|
18
20
|
* True when `value` is a control-flow result produced by {@link notFound} or
|
|
19
21
|
* {@link redirect}.
|
|
@@ -41,6 +43,4 @@ export declare function isDataControlResult(value: unknown): value is DataResult
|
|
|
41
43
|
* for the project.
|
|
42
44
|
*/
|
|
43
45
|
export declare function toDataControlResult(result: DataResult): DataResult;
|
|
44
|
-
/** Validate and snapshot a project hook result before recording success. */
|
|
45
|
-
export declare function validateDataResult(value: unknown, hookName: "getServerData" | "getStaticData"): DataResult;
|
|
46
46
|
//# sourceMappingURL=helpers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/src/data/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/src/data/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AA2BrF;;;;;GAKG;AACH,wBAAgB,QAAQ,CACtB,WAAW,EAAE,MAAM,EACnB,SAAS,CAAC,EAAE,OAAO,EACnB,QAAQ,CAAC,EAAE,SAAS,GACnB,gBAAgB,CAAC;AACpB,wBAAgB,QAAQ,CACtB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,OAAO,GAAG,SAAS,EAC9B,QAAQ,EAAE,oBAAoB,GAC7B,UAAU,CAAC;AAad;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,GAAG,gBAAgB,CAAC;AACjE,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,oBAAoB,GAAG,UAAU,CAAC;AASrE;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,UAAU,CAIvE;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,CAalE"}
|
package/esm/src/data/helpers.js
CHANGED
|
@@ -21,24 +21,19 @@ function brandDataControlResult(result) {
|
|
|
21
21
|
Object.defineProperty(result, DATA_CONTROL_RESULT, { value: true });
|
|
22
22
|
return result;
|
|
23
23
|
}
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
export function redirect(destination, permanent = false) {
|
|
31
|
-
return brandDataControlResult({ redirect: { destination, permanent } });
|
|
24
|
+
export function redirect(destination, permanent = false, response) {
|
|
25
|
+
return brandDataControlResult({
|
|
26
|
+
redirect: { destination, permanent },
|
|
27
|
+
...(response?.headers !== undefined ? { headers: response.headers } : {}),
|
|
28
|
+
...(response?.cookies !== undefined ? { cookies: response.cookies } : {}),
|
|
29
|
+
});
|
|
32
30
|
}
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
*/
|
|
40
|
-
export function notFound() {
|
|
41
|
-
return brandDataControlResult({ notFound: true });
|
|
31
|
+
export function notFound(response) {
|
|
32
|
+
return brandDataControlResult({
|
|
33
|
+
notFound: true,
|
|
34
|
+
...(response?.headers !== undefined ? { headers: response.headers } : {}),
|
|
35
|
+
...(response?.cookies !== undefined ? { cookies: response.cookies } : {}),
|
|
36
|
+
});
|
|
42
37
|
}
|
|
43
38
|
/**
|
|
44
39
|
* True when `value` is a control-flow result produced by {@link notFound} or
|
|
@@ -71,57 +66,16 @@ export function isDataControlResult(value) {
|
|
|
71
66
|
* for the project.
|
|
72
67
|
*/
|
|
73
68
|
export function toDataControlResult(result) {
|
|
74
|
-
if (result.redirect)
|
|
75
|
-
return {
|
|
76
|
-
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
export function validateDataResult(value, hookName) {
|
|
80
|
-
const fail = () => {
|
|
81
|
-
throw new TypeError(`${hookName} must return a valid data result object`);
|
|
82
|
-
};
|
|
83
|
-
if (value === null || typeof value !== "object" || Array.isArray(value))
|
|
84
|
-
return fail();
|
|
85
|
-
const result = value;
|
|
86
|
-
const props = result.props;
|
|
87
|
-
const redirect = result.redirect;
|
|
88
|
-
const notFound = result.notFound;
|
|
89
|
-
const revalidate = result.revalidate;
|
|
90
|
-
let redirectDestination;
|
|
91
|
-
let redirectPermanent;
|
|
92
|
-
if (redirect !== undefined &&
|
|
93
|
-
(redirect === null || typeof redirect !== "object" || Array.isArray(redirect))) {
|
|
94
|
-
return fail();
|
|
95
|
-
}
|
|
96
|
-
if (redirect !== undefined) {
|
|
97
|
-
const redirectRecord = redirect;
|
|
98
|
-
if (typeof redirectRecord.destination !== "string" ||
|
|
99
|
-
(redirectRecord.permanent !== undefined && typeof redirectRecord.permanent !== "boolean"))
|
|
100
|
-
return fail();
|
|
101
|
-
redirectDestination = redirectRecord.destination;
|
|
102
|
-
redirectPermanent = redirectRecord.permanent;
|
|
103
|
-
}
|
|
104
|
-
if (notFound !== undefined && typeof notFound !== "boolean")
|
|
105
|
-
return fail();
|
|
106
|
-
if (revalidate !== undefined && revalidate !== false &&
|
|
107
|
-
(typeof revalidate !== "number" || !Number.isFinite(revalidate) || revalidate < 0))
|
|
108
|
-
return fail();
|
|
109
|
-
const activeOutcomes = Number(props !== undefined) + Number(redirect !== undefined) +
|
|
110
|
-
Number(notFound === true);
|
|
111
|
-
if (activeOutcomes > 1)
|
|
112
|
-
return fail();
|
|
113
|
-
const normalized = {};
|
|
114
|
-
if (props !== undefined)
|
|
115
|
-
normalized.props = props;
|
|
116
|
-
if (redirectDestination !== undefined) {
|
|
117
|
-
normalized.redirect = {
|
|
118
|
-
destination: redirectDestination,
|
|
119
|
-
...(redirectPermanent !== undefined ? { permanent: redirectPermanent } : {}),
|
|
69
|
+
if (result.redirect) {
|
|
70
|
+
return {
|
|
71
|
+
redirect: result.redirect,
|
|
72
|
+
...(result.headers ? { headers: result.headers } : {}),
|
|
73
|
+
...(result.cookies ? { cookies: result.cookies } : {}),
|
|
120
74
|
};
|
|
121
75
|
}
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
76
|
+
return {
|
|
77
|
+
notFound: true,
|
|
78
|
+
...(result.headers ? { headers: result.headers } : {}),
|
|
79
|
+
...(result.cookies ? { cookies: result.cookies } : {}),
|
|
80
|
+
};
|
|
127
81
|
}
|
package/esm/src/data/index.d.ts
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
*
|
|
5
5
|
* @module data
|
|
6
6
|
*/
|
|
7
|
-
export type { CacheEntry, DataContext, DataResult, InferGetServerDataProps, PageWithData, StaticPathsResult, } from "./types.js";
|
|
7
|
+
export type { CacheEntry, DataContext, DataResponseMetadata, DataResult, InferGetServerDataProps, PageWithData, ResponseCookie, StaticDataResult, StaticPathsResult, } from "./types.js";
|
|
8
8
|
export { DataFetcher, type FetchDataOptions } from "./data-fetcher.js";
|
|
9
9
|
export { notFound, redirect } from "./helpers.js";
|
|
10
10
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/src/data/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,YAAY,EACV,UAAU,EACV,WAAW,EACX,UAAU,EACV,uBAAuB,EACvB,YAAY,EACZ,iBAAiB,GAClB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/src/data/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,YAAY,EACV,UAAU,EACV,WAAW,EACX,oBAAoB,EACpB,UAAU,EACV,uBAAuB,EACvB,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { DataResponseMetadata, ResponseCookie } from "./schemas/data.schema.js";
|
|
2
|
+
export declare function normalizeDataResponseMetadata(value: {
|
|
3
|
+
headers?: unknown;
|
|
4
|
+
cookies?: unknown;
|
|
5
|
+
}, hookName?: "getServerData" | "getStaticData"): DataResponseMetadata;
|
|
6
|
+
export declare function mergeDataResponseMetadata(metadata: readonly DataResponseMetadata[]): DataResponseMetadata;
|
|
7
|
+
/**
|
|
8
|
+
* Carry validated response metadata through an internal error path without
|
|
9
|
+
* placing cookie values in enumerable error context, logs, or telemetry.
|
|
10
|
+
*/
|
|
11
|
+
export declare function attachDataResponseMetadata<T extends Error>(carrier: T, metadata: DataResponseMetadata): T;
|
|
12
|
+
/**
|
|
13
|
+
* Carry response metadata on a request-local error while retaining the project
|
|
14
|
+
* error for classification, reporting, and stack rendering.
|
|
15
|
+
*/
|
|
16
|
+
export declare function wrapDataResponseMetadataError(error: unknown, metadata: DataResponseMetadata): Error;
|
|
17
|
+
/** Return the project failure carried by {@link wrapDataResponseMetadataError}. */
|
|
18
|
+
export declare function unwrapDataResponseMetadataError(error: Error): unknown;
|
|
19
|
+
/** Read response metadata attached by {@link attachDataResponseMetadata}. */
|
|
20
|
+
export declare function getAttachedDataResponseMetadata(carrier: Error): DataResponseMetadata;
|
|
21
|
+
export declare function serializeResponseCookie(cookie: ResponseCookie): string;
|
|
22
|
+
export declare function appendDataResponseMetadata(target: Headers, metadata: DataResponseMetadata): void;
|
|
23
|
+
//# sourceMappingURL=response-metadata.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"response-metadata.d.ts","sourceRoot":"","sources":["../../../src/src/data/response-metadata.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAoRrF,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,EAC/C,QAAQ,GAAE,eAAe,GAAG,eAAiC,GAC5D,oBAAoB,CActB;AAED,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,SAAS,oBAAoB,EAAE,GACxC,oBAAoB,CActB;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,CAAC,SAAS,KAAK,EACxD,OAAO,EAAE,CAAC,EACV,QAAQ,EAAE,oBAAoB,GAC7B,CAAC,CAGH;AAED;;;GAGG;AACH,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,oBAAoB,GAC7B,KAAK,CAWP;AAED,mFAAmF;AACnF,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAErE;AAED,6EAA6E;AAC7E,wBAAgB,+BAA+B,CAAC,OAAO,EAAE,KAAK,GAAG,oBAAoB,CAEpF;AAgBD,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAEtE;AAED,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,OAAO,EACf,QAAQ,EAAE,oBAAoB,GAC7B,IAAI,CAQN"}
|