veryfront 0.0.86 → 0.0.88
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/deno.d.ts +0 -1
- package/esm/deno.js +8 -9
- package/esm/deps/esm.sh/react-dom@19.1.1/client.d.ts +2 -0
- package/esm/deps/esm.sh/react-dom@19.1.1/client.d.ts.map +1 -0
- package/esm/deps/esm.sh/react-dom@19.1.1/client.js +5 -0
- package/esm/deps/esm.sh/react-dom@19.1.1/server.d.ts +2 -0
- package/esm/deps/esm.sh/react-dom@19.1.1/server.d.ts.map +1 -0
- package/esm/deps/esm.sh/react-dom@19.1.1/server.js +5 -0
- package/esm/deps/esm.sh/react@19.1.1/jsx-runtime.d.ts +2 -0
- package/esm/deps/esm.sh/react@19.1.1/jsx-runtime.d.ts.map +1 -0
- package/esm/deps/esm.sh/react@19.1.1/jsx-runtime.js +3 -0
- package/esm/deps/esm.sh/react@19.1.1.d.ts +2 -0
- package/esm/deps/esm.sh/react@19.1.1.d.ts.map +1 -0
- package/esm/deps/esm.sh/react@19.1.1.js +3 -0
- package/esm/deps/esm.sh/scheduler@^0.26.0.d.ts +2 -0
- package/esm/deps/esm.sh/scheduler@^0.26.0.d.ts.map +1 -0
- package/esm/deps/esm.sh/scheduler@^0.26.0.js +3 -0
- package/esm/proxy/main.d.ts +2 -0
- package/esm/proxy/main.d.ts.map +1 -0
- package/esm/proxy/main.js +400 -0
- package/esm/src/agent/react/use-agent.js +1 -1
- package/esm/src/agent/react/use-chat/use-chat.js +1 -1
- package/esm/src/agent/react/use-completion.js +1 -1
- package/esm/src/agent/react/use-streaming.js +1 -1
- package/esm/src/agent/react/use-voice-input.js +1 -1
- package/esm/src/cli/commands/init/config-generator.js +1 -1
- package/esm/src/cli/index/arg-parser.d.ts.map +1 -1
- package/esm/src/cli/index/arg-parser.js +1 -0
- package/esm/src/cli/index/command-router.d.ts.map +1 -1
- package/esm/src/cli/index/command-router.js +54 -39
- package/esm/src/cli/index/types.d.ts +4 -0
- package/esm/src/cli/index/types.d.ts.map +1 -1
- package/esm/src/cli/mcp/advanced-tools.d.ts +2 -2
- package/esm/src/config/loader.d.ts.map +1 -1
- package/esm/src/config/loader.js +5 -4
- package/esm/src/html/utils.js +2 -2
- package/esm/src/modules/component-registry/registry.d.ts +1 -1
- package/esm/src/modules/component-registry/registry.d.ts.map +1 -1
- package/esm/src/modules/import-map/default-import-map.d.ts +1 -11
- package/esm/src/modules/import-map/default-import-map.d.ts.map +1 -1
- package/esm/src/modules/import-map/default-import-map.js +3 -20
- package/esm/src/modules/import-map/loader.d.ts.map +1 -1
- package/esm/src/modules/import-map/loader.js +7 -22
- package/esm/src/modules/import-map/resolver.d.ts.map +1 -1
- package/esm/src/modules/import-map/resolver.js +12 -8
- package/esm/src/modules/react-loader/component-loader.d.ts +1 -1
- 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/extract-component.d.ts +1 -1
- package/esm/src/modules/react-loader/extract-component.d.ts.map +1 -1
- package/esm/src/modules/react-loader/ssr-module-loader/loader.d.ts +2 -7
- 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 +40 -32
- 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/types.d.ts +3 -1
- package/esm/src/modules/react-loader/types.d.ts.map +1 -1
- package/esm/src/modules/react-loader/unified-loader.d.ts.map +1 -1
- package/esm/src/modules/react-loader/unified-loader.js +7 -4
- package/esm/src/modules/server/module-batch-handler.d.ts +2 -0
- package/esm/src/modules/server/module-batch-handler.d.ts.map +1 -1
- package/esm/src/modules/server/module-batch-handler.js +3 -1
- package/esm/src/modules/server/module-server.d.ts +2 -0
- package/esm/src/modules/server/module-server.d.ts.map +1 -1
- package/esm/src/modules/server/module-server.js +4 -2
- package/esm/src/modules/server/ssr-import-rewriter.d.ts.map +1 -1
- package/esm/src/modules/server/ssr-import-rewriter.js +9 -17
- package/esm/src/react/compat/hooks-adapter.d.ts +1 -1
- package/esm/src/react/compat/hooks-adapter.d.ts.map +1 -1
- package/esm/src/react/compat/hooks-adapter.js +1 -1
- package/esm/src/react/compat/ssr-adapter/response-builder.d.ts +1 -1
- package/esm/src/react/compat/ssr-adapter/response-builder.d.ts.map +1 -1
- package/esm/src/react/compat/ssr-adapter/server-loader.d.ts +5 -5
- package/esm/src/react/compat/ssr-adapter/server-loader.d.ts.map +1 -1
- package/esm/src/react/compat/ssr-adapter/server-loader.js +2 -2
- package/esm/src/react/compat/ssr-adapter/stream-renderer.d.ts +1 -1
- package/esm/src/react/compat/ssr-adapter/stream-renderer.d.ts.map +1 -1
- package/esm/src/react/compat/ssr-adapter/string-renderer.d.ts +1 -1
- package/esm/src/react/compat/ssr-adapter/string-renderer.d.ts.map +1 -1
- package/esm/src/react/compat/ssr-adapter/string-renderer.js +1 -1
- package/esm/src/react/compat/version-detector/feature-detector.js +1 -1
- package/esm/src/react/components/AppWrapper.d.ts +1 -1
- package/esm/src/react/components/AppWrapper.d.ts.map +1 -1
- package/esm/src/react/components/AppWrapper.js +1 -1
- package/esm/src/react/components/Head.d.ts +1 -1
- package/esm/src/react/components/Head.d.ts.map +1 -1
- package/esm/src/react/components/Head.js +7 -3
- package/esm/src/react/components/LayoutComponent.d.ts +1 -1
- package/esm/src/react/components/LayoutComponent.d.ts.map +1 -1
- package/esm/src/react/components/LayoutComponent.js +1 -1
- package/esm/src/react/components/Link.d.ts +1 -1
- package/esm/src/react/components/Link.d.ts.map +1 -1
- package/esm/src/react/components/Link.js +1 -1
- package/esm/src/react/components/MDXProvider.d.ts +1 -1
- package/esm/src/react/components/MDXProvider.d.ts.map +1 -1
- package/esm/src/react/components/MDXProvider.js +2 -2
- package/esm/src/react/components/ProviderComponent.d.ts +1 -1
- package/esm/src/react/components/ProviderComponent.d.ts.map +1 -1
- package/esm/src/react/components/ProviderComponent.js +1 -1
- package/esm/src/react/components/ai/agent-card.d.ts +2 -2
- package/esm/src/react/components/ai/agent-card.d.ts.map +1 -1
- package/esm/src/react/components/ai/agent-card.js +1 -1
- package/esm/src/react/components/ai/chat/components/animations.d.ts +1 -1
- package/esm/src/react/components/ai/chat/components/animations.d.ts.map +1 -1
- package/esm/src/react/components/ai/chat/components/animations.js +1 -1
- package/esm/src/react/components/ai/chat/components/empty-state.d.ts +1 -1
- package/esm/src/react/components/ai/chat/components/empty-state.d.ts.map +1 -1
- package/esm/src/react/components/ai/chat/components/empty-state.js +1 -1
- package/esm/src/react/components/ai/chat/components/message-actions.d.ts +1 -1
- package/esm/src/react/components/ai/chat/components/message-actions.d.ts.map +1 -1
- package/esm/src/react/components/ai/chat/components/message-actions.js +1 -1
- package/esm/src/react/components/ai/chat/components/reasoning.d.ts +1 -1
- package/esm/src/react/components/ai/chat/components/reasoning.d.ts.map +1 -1
- package/esm/src/react/components/ai/chat/components/reasoning.js +1 -1
- package/esm/src/react/components/ai/chat/components/tool-ui.d.ts +1 -1
- package/esm/src/react/components/ai/chat/components/tool-ui.d.ts.map +1 -1
- package/esm/src/react/components/ai/chat/components/tool-ui.js +1 -1
- package/esm/src/react/components/ai/chat/composition/api.d.ts +5 -4
- package/esm/src/react/components/ai/chat/composition/api.d.ts.map +1 -1
- package/esm/src/react/components/ai/chat/composition/api.js +1 -1
- package/esm/src/react/components/ai/chat/index.d.ts +8 -3
- package/esm/src/react/components/ai/chat/index.d.ts.map +1 -1
- package/esm/src/react/components/ai/chat/index.js +1 -1
- package/esm/src/react/components/ai/error-boundary.d.ts +1 -1
- package/esm/src/react/components/ai/error-boundary.d.ts.map +1 -1
- package/esm/src/react/components/ai/error-boundary.js +1 -1
- package/esm/src/react/components/ai/icons/index.d.ts +1 -1
- package/esm/src/react/components/ai/icons/index.d.ts.map +1 -1
- package/esm/src/react/components/ai/icons/index.js +1 -1
- package/esm/src/react/components/ai/markdown.d.ts +1 -1
- package/esm/src/react/components/ai/markdown.d.ts.map +1 -1
- package/esm/src/react/components/ai/markdown.js +1 -1
- package/esm/src/react/components/ai/message.d.ts +3 -3
- package/esm/src/react/components/ai/message.d.ts.map +1 -1
- package/esm/src/react/components/ai/message.js +1 -1
- package/esm/src/react/components/optimized-image/OptimizedBackgroundImage.d.ts +1 -1
- package/esm/src/react/components/optimized-image/OptimizedBackgroundImage.d.ts.map +1 -1
- package/esm/src/react/components/optimized-image/OptimizedBackgroundImage.js +1 -1
- package/esm/src/react/components/optimized-image/OptimizedImage.d.ts +1 -1
- package/esm/src/react/components/optimized-image/OptimizedImage.d.ts.map +1 -1
- package/esm/src/react/components/optimized-image/OptimizedImage.js +1 -1
- package/esm/src/react/components/optimized-image/SimpleOptimizedImage.d.ts +1 -1
- package/esm/src/react/components/optimized-image/SimpleOptimizedImage.d.ts.map +1 -1
- package/esm/src/react/components/optimized-image/utils.d.ts +1 -1
- package/esm/src/react/components/optimized-image/utils.d.ts.map +1 -1
- package/esm/src/react/components/optimized-image/utils.js +1 -1
- package/esm/src/react/context/index.d.ts +1 -1
- package/esm/src/react/context/index.d.ts.map +1 -1
- package/esm/src/react/context/index.js +1 -1
- package/esm/src/react/fonts/index.d.ts +1 -1
- package/esm/src/react/fonts/index.d.ts.map +1 -1
- package/esm/src/react/fonts/index.js +1 -1
- package/esm/src/react/primitives/agent-primitives.d.ts +4 -4
- package/esm/src/react/primitives/agent-primitives.d.ts.map +1 -1
- package/esm/src/react/primitives/agent-primitives.js +1 -1
- package/esm/src/react/primitives/chat-container.d.ts +2 -2
- package/esm/src/react/primitives/chat-container.d.ts.map +1 -1
- package/esm/src/react/primitives/chat-container.js +1 -1
- package/esm/src/react/primitives/input-box.d.ts +4 -4
- package/esm/src/react/primitives/input-box.d.ts.map +1 -1
- package/esm/src/react/primitives/input-box.js +7 -3
- package/esm/src/react/primitives/message-list.d.ts +5 -5
- package/esm/src/react/primitives/message-list.d.ts.map +1 -1
- package/esm/src/react/primitives/message-list.js +1 -1
- package/esm/src/react/primitives/tool-primitives.d.ts +4 -4
- package/esm/src/react/primitives/tool-primitives.d.ts.map +1 -1
- package/esm/src/react/primitives/tool-primitives.js +1 -1
- package/esm/src/react/router/index.d.ts +1 -1
- package/esm/src/react/router/index.d.ts.map +1 -1
- package/esm/src/react/router/index.js +1 -1
- package/esm/src/rendering/app-reserved.d.ts +1 -1
- package/esm/src/rendering/app-reserved.d.ts.map +1 -1
- package/esm/src/rendering/app-reserved.js +1 -1
- package/esm/src/rendering/client/router.js +1 -1
- package/esm/src/rendering/client/state-bridge.d.ts +1 -1
- package/esm/src/rendering/client/state-bridge.d.ts.map +1 -1
- package/esm/src/rendering/client/state-bridge.js +1 -1
- package/esm/src/rendering/component-handling.d.ts +3 -1
- package/esm/src/rendering/component-handling.d.ts.map +1 -1
- package/esm/src/rendering/component-handling.js +4 -2
- package/esm/src/rendering/element-validator/element-normalizer.d.ts +1 -1
- package/esm/src/rendering/element-validator/element-normalizer.d.ts.map +1 -1
- package/esm/src/rendering/element-validator/element-normalizer.js +1 -1
- package/esm/src/rendering/element-validator/primitive-checks.d.ts +1 -1
- package/esm/src/rendering/element-validator/primitive-checks.d.ts.map +1 -1
- package/esm/src/rendering/element-validator/primitive-checks.js +1 -1
- package/esm/src/rendering/element-validator/validator-core.d.ts +1 -1
- package/esm/src/rendering/element-validator/validator-core.d.ts.map +1 -1
- package/esm/src/rendering/layouts/layout-applicator.d.ts +1 -1
- package/esm/src/rendering/layouts/layout-applicator.d.ts.map +1 -1
- package/esm/src/rendering/layouts/layout-applicator.js +2 -0
- 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/component-loader.d.ts +1 -1
- package/esm/src/rendering/layouts/utils/component-loader.d.ts.map +1 -1
- package/esm/src/rendering/layouts/utils/ensure-valid-child.d.ts +1 -1
- package/esm/src/rendering/layouts/utils/ensure-valid-child.d.ts.map +1 -1
- package/esm/src/rendering/orchestrator/layout.d.ts +1 -1
- package/esm/src/rendering/orchestrator/layout.d.ts.map +1 -1
- package/esm/src/rendering/orchestrator/module-loader/index.d.ts +3 -0
- package/esm/src/rendering/orchestrator/module-loader/index.d.ts.map +1 -1
- package/esm/src/rendering/orchestrator/module-loader/index.js +74 -19
- package/esm/src/rendering/orchestrator/pipeline.d.ts.map +1 -1
- package/esm/src/rendering/orchestrator/pipeline.js +2 -0
- package/esm/src/rendering/orchestrator/ssr-orchestrator.d.ts +1 -1
- package/esm/src/rendering/orchestrator/ssr-orchestrator.d.ts.map +1 -1
- package/esm/src/rendering/page-renderer.d.ts +1 -1
- package/esm/src/rendering/page-renderer.d.ts.map +1 -1
- package/esm/src/rendering/page-rendering.d.ts +1 -1
- package/esm/src/rendering/page-rendering.d.ts.map +1 -1
- package/esm/src/rendering/rsc/server-renderer/component-detector.d.ts +1 -1
- package/esm/src/rendering/rsc/server-renderer/component-detector.d.ts.map +1 -1
- package/esm/src/rendering/rsc/server-renderer/rsc-renderer.d.ts +1 -1
- package/esm/src/rendering/rsc/server-renderer/rsc-renderer.d.ts.map +1 -1
- package/esm/src/rendering/rsc/server-renderer/tree-processor.d.ts +1 -1
- package/esm/src/rendering/rsc/server-renderer/tree-processor.d.ts.map +1 -1
- package/esm/src/rendering/rsc/server-renderer/tree-processor.js +4 -2
- package/esm/src/rendering/snippet-renderer.js +2 -2
- 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 +1 -1
- package/esm/src/rendering/ssr-renderer.d.ts +1 -1
- package/esm/src/rendering/ssr-renderer.d.ts.map +1 -1
- package/esm/src/rendering/utils/react-helpers.d.ts +1 -1
- package/esm/src/rendering/utils/react-helpers.d.ts.map +1 -1
- package/esm/src/rendering/utils/react-helpers.js +1 -1
- package/esm/src/server/handlers/request/ssr/error-page-fallback.js +1 -1
- package/esm/src/server/handlers/request/ssr/not-found-fallback.js +1 -1
- package/esm/src/transforms/esm/http-bundler.d.ts +15 -4
- package/esm/src/transforms/esm/http-bundler.d.ts.map +1 -1
- package/esm/src/transforms/esm/http-bundler.js +105 -12
- package/esm/src/transforms/esm/http-cache.d.ts.map +1 -1
- package/esm/src/transforms/esm/http-cache.js +26 -27
- package/esm/src/transforms/esm/import-rewriter.d.ts.map +1 -1
- package/esm/src/transforms/esm/import-rewriter.js +3 -3
- package/esm/src/transforms/esm/package-registry.d.ts +15 -13
- package/esm/src/transforms/esm/package-registry.d.ts.map +1 -1
- package/esm/src/transforms/esm/package-registry.js +45 -32
- package/esm/src/transforms/esm/react-imports.d.ts.map +1 -1
- package/esm/src/transforms/esm/react-imports.js +3 -7
- 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/mdx/esm-module-loader/cache/index.d.ts +14 -0
- package/esm/src/transforms/mdx/esm-module-loader/cache/index.d.ts.map +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/cache/index.js +67 -0
- package/esm/src/transforms/mdx/esm-module-loader/loader.d.ts.map +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/loader.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 +1 -0
- 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 -1
- package/esm/src/transforms/mdx/index.d.ts.map +1 -1
- package/esm/src/transforms/mdx/index.js +1 -1
- package/esm/src/transforms/mdx/mdx-cache-adapter.js +1 -1
- package/esm/src/transforms/mdx/module-loader/types.d.ts +1 -1
- package/esm/src/transforms/mdx/module-loader/types.d.ts.map +1 -1
- package/esm/src/transforms/mdx/types.d.ts +2 -2
- package/esm/src/transforms/mdx/types.d.ts.map +1 -1
- package/esm/src/transforms/pipeline/context.d.ts.map +1 -1
- package/esm/src/transforms/pipeline/context.js +7 -15
- package/esm/src/transforms/pipeline/stages/finalize.d.ts.map +1 -1
- package/esm/src/transforms/pipeline/stages/finalize.js +1 -1
- package/esm/src/types/app.d.ts +1 -1
- package/esm/src/types/app.d.ts.map +1 -1
- package/esm/src/types/global-guards.d.ts +1 -1
- package/esm/src/types/global-guards.d.ts.map +1 -1
- package/esm/src/types/index.d.ts +1 -1
- package/esm/src/types/index.d.ts.map +1 -1
- package/esm/src/utils/constants/cdn.d.ts.map +1 -1
- package/esm/src/utils/constants/cdn.js +22 -11
- package/esm/src/utils/hash-utils.d.ts +2 -0
- package/esm/src/utils/hash-utils.d.ts.map +1 -1
- package/esm/src/utils/hash-utils.js +4 -0
- package/esm/src/workflow/react/use-approval.js +1 -1
- package/esm/src/workflow/react/use-workflow-list.js +1 -1
- package/esm/src/workflow/react/use-workflow-start.js +1 -1
- package/esm/src/workflow/react/use-workflow.js +1 -1
- package/package.json +2 -1
- package/src/deno.js +8 -9
- package/src/deps/esm.sh/@types/react-dom@19.1.11/X-ZGNzc3R5cGVAMy4yLjMKZXJlYWN0/client.d.ts +105 -0
- package/src/deps/esm.sh/@types/react-dom@19.1.11/X-ZGNzc3R5cGVAMy4yLjMKZXJlYWN0/server.d.ts +162 -0
- package/src/deps/esm.sh/@types/react@19.1.17/X-ZGNzc3R5cGVAMy4yLjM/global.d.ts +165 -0
- package/src/deps/esm.sh/@types/react@19.1.17/X-ZGNzc3R5cGVAMy4yLjM/index.d.ts +4267 -0
- package/src/deps/esm.sh/@types/react@19.1.17/X-ZGNzc3R5cGVAMy4yLjMKZXJlYWN0/global.d.ts +165 -0
- package/src/deps/esm.sh/@types/react@19.1.17/X-ZGNzc3R5cGVAMy4yLjMKZXJlYWN0/index.d.ts +4267 -0
- package/src/deps/esm.sh/@types/react@19.1.17/X-ZGNzc3R5cGVAMy4yLjMKZXJlYWN0/jsx-runtime.d.ts +36 -0
- package/src/deps/esm.sh/@types/scheduler@0.26.0/index.d.ts +30 -0
- package/src/deps/esm.sh/csstype@3.2.3/index.d.ts +22569 -0
- package/src/deps/esm.sh/react-dom@19.1.1/client.d.ts +105 -0
- package/src/deps/esm.sh/react-dom@19.1.1/client.js +5 -0
- package/src/deps/esm.sh/react-dom@19.1.1/server.d.ts +162 -0
- package/src/deps/esm.sh/react-dom@19.1.1/server.js +5 -0
- package/src/deps/esm.sh/react@19.1.1/jsx-runtime.d.ts +36 -0
- package/src/deps/esm.sh/react@19.1.1/jsx-runtime.js +3 -0
- package/src/deps/esm.sh/react@19.1.1.d.ts +4267 -0
- package/src/deps/esm.sh/react@19.1.1.js +3 -0
- package/src/deps/esm.sh/scheduler@^0.26.0.d.ts +30 -0
- package/src/deps/esm.sh/scheduler@^0.26.0.js +3 -0
- package/src/proxy/main.ts +471 -0
- package/src/src/agent/react/use-agent.ts +1 -1
- package/src/src/agent/react/use-chat/use-chat.ts +1 -1
- package/src/src/agent/react/use-completion.ts +1 -1
- package/src/src/agent/react/use-streaming.ts +1 -1
- package/src/src/agent/react/use-voice-input.ts +1 -1
- package/src/src/cli/commands/init/config-generator.ts +1 -1
- package/src/src/cli/index/arg-parser.ts +1 -0
- package/src/src/cli/index/command-router.ts +57 -40
- package/src/src/cli/index/types.ts +5 -0
- package/src/src/config/loader.ts +5 -4
- package/src/src/html/utils.ts +2 -2
- package/src/src/modules/component-registry/registry.ts +1 -1
- package/src/src/modules/import-map/default-import-map.ts +3 -25
- package/src/src/modules/import-map/loader.ts +7 -23
- package/src/src/modules/import-map/resolver.ts +13 -8
- package/src/src/modules/react-loader/component-loader.ts +3 -1
- package/src/src/modules/react-loader/extract-component.ts +1 -1
- package/src/src/modules/react-loader/ssr-module-loader/loader.ts +52 -38
- package/src/src/modules/react-loader/ssr-module-loader/types.ts +2 -0
- package/src/src/modules/react-loader/types.ts +3 -1
- package/src/src/modules/react-loader/unified-loader.ts +7 -4
- package/src/src/modules/server/module-batch-handler.ts +7 -0
- package/src/src/modules/server/module-server.ts +6 -1
- package/src/src/modules/server/ssr-import-rewriter.ts +9 -17
- package/src/src/react/compat/hooks-adapter.ts +1 -1
- package/src/src/react/compat/ssr-adapter/response-builder.ts +1 -1
- package/src/src/react/compat/ssr-adapter/server-loader.ts +10 -10
- package/src/src/react/compat/ssr-adapter/stream-renderer.ts +2 -2
- package/src/src/react/compat/ssr-adapter/string-renderer.ts +3 -3
- package/src/src/react/compat/version-detector/feature-detector.ts +1 -1
- package/src/src/react/components/AppWrapper.tsx +1 -1
- package/src/src/react/components/Head.tsx +7 -3
- package/src/src/react/components/LayoutComponent.tsx +2 -2
- package/src/src/react/components/Link.tsx +1 -1
- package/src/src/react/components/MDXProvider.tsx +2 -2
- package/src/src/react/components/ProviderComponent.tsx +2 -2
- package/src/src/react/components/ai/agent-card.tsx +1 -1
- package/src/src/react/components/ai/chat/components/animations.tsx +1 -1
- package/src/src/react/components/ai/chat/components/empty-state.tsx +1 -1
- package/src/src/react/components/ai/chat/components/message-actions.tsx +1 -1
- package/src/src/react/components/ai/chat/components/reasoning.tsx +1 -1
- package/src/src/react/components/ai/chat/components/tool-ui.tsx +1 -1
- package/src/src/react/components/ai/chat/composition/api.tsx +1 -1
- package/src/src/react/components/ai/chat/index.tsx +1 -1
- package/src/src/react/components/ai/error-boundary.tsx +1 -1
- package/src/src/react/components/ai/icons/index.ts +1 -1
- package/src/src/react/components/ai/markdown.tsx +1 -1
- package/src/src/react/components/ai/message.tsx +1 -1
- package/src/src/react/components/optimized-image/OptimizedBackgroundImage.tsx +1 -1
- package/src/src/react/components/optimized-image/OptimizedImage.tsx +1 -1
- package/src/src/react/components/optimized-image/SimpleOptimizedImage.tsx +1 -1
- package/src/src/react/components/optimized-image/utils.tsx +1 -1
- package/src/src/react/context/index.ts +1 -1
- package/src/src/react/fonts/index.ts +1 -1
- package/src/src/react/primitives/agent-primitives.tsx +1 -1
- package/src/src/react/primitives/chat-container.tsx +1 -1
- package/src/src/react/primitives/input-box.tsx +5 -3
- package/src/src/react/primitives/message-list.tsx +1 -1
- package/src/src/react/primitives/tool-primitives.tsx +1 -1
- package/src/src/react/router/index.ts +1 -1
- package/src/src/rendering/app-reserved.ts +1 -1
- package/src/src/rendering/client/router.ts +2 -2
- package/src/src/rendering/client/state-bridge.ts +2 -2
- package/src/src/rendering/component-handling.ts +7 -1
- package/src/src/rendering/element-validator/element-inspector.ts +1 -1
- package/src/src/rendering/element-validator/element-normalizer.ts +1 -1
- package/src/src/rendering/element-validator/primitive-checks.ts +1 -1
- package/src/src/rendering/element-validator/validator-core.ts +1 -1
- package/src/src/rendering/layouts/layout-applicator.ts +5 -6
- package/src/src/rendering/layouts/utils/applicator.ts +1 -1
- package/src/src/rendering/layouts/utils/component-loader.ts +1 -1
- package/src/src/rendering/layouts/utils/ensure-valid-child.ts +1 -1
- package/src/src/rendering/orchestrator/layout.ts +1 -1
- package/src/src/rendering/orchestrator/module-loader/index.ts +91 -20
- package/src/src/rendering/orchestrator/pipeline.ts +2 -0
- package/src/src/rendering/orchestrator/ssr-orchestrator.ts +2 -2
- package/src/src/rendering/page-renderer.ts +1 -1
- package/src/src/rendering/page-rendering.ts +1 -1
- package/src/src/rendering/rsc/server-renderer/component-detector.ts +1 -1
- package/src/src/rendering/rsc/server-renderer/rsc-renderer.ts +1 -1
- package/src/src/rendering/rsc/server-renderer/tree-processor.ts +14 -4
- package/src/src/rendering/snippet-renderer.ts +2 -2
- package/src/src/rendering/ssr/component-registry.ts +1 -1
- package/src/src/rendering/ssr-renderer.ts +1 -1
- package/src/src/rendering/utils/react-helpers.ts +1 -1
- package/src/src/server/build-app-route-renderer.ts +2 -2
- package/src/src/server/handlers/request/rsc/handlers/render-handler.ts +1 -1
- package/src/src/server/handlers/request/ssr/error-page-fallback.ts +2 -2
- package/src/src/server/handlers/request/ssr/not-found-fallback.ts +1 -1
- package/src/src/transforms/esm/http-bundler.ts +101 -11
- package/src/src/transforms/esm/http-cache.ts +27 -28
- package/src/src/transforms/esm/import-rewriter.ts +5 -3
- package/src/src/transforms/esm/package-registry.ts +46 -32
- package/src/src/transforms/esm/react-imports.ts +3 -7
- package/src/src/transforms/esm/types.ts +2 -0
- package/src/src/transforms/mdx/esm-module-loader/cache/index.ts +84 -0
- package/src/src/transforms/mdx/esm-module-loader/loader.ts +2 -1
- package/src/src/transforms/mdx/esm-module-loader/module-fetcher/index.ts +2 -1
- package/src/src/transforms/mdx/esm-module-loader/types.ts +4 -0
- package/src/src/transforms/mdx/index.ts +1 -1
- package/src/src/transforms/mdx/mdx-cache-adapter.ts +1 -1
- package/src/src/transforms/mdx/module-loader/types.ts +1 -1
- package/src/src/transforms/mdx/types.ts +2 -2
- package/src/src/transforms/pipeline/context.ts +7 -18
- package/src/src/transforms/pipeline/stages/finalize.ts +6 -1
- package/src/src/transforms/plugins/babel-node-positions.ts +2 -2
- package/src/src/types/app.ts +1 -1
- package/src/src/types/global-guards.ts +1 -1
- package/src/src/types/index.ts +1 -1
- package/src/src/utils/constants/cdn.ts +21 -12
- package/src/src/utils/hash-utils.ts +5 -0
- package/src/src/workflow/react/use-approval.ts +1 -1
- package/src/src/workflow/react/use-workflow-list.ts +1 -1
- package/src/src/workflow/react/use-workflow-start.ts +1 -1
- package/src/src/workflow/react/use-workflow.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-renderer.d.ts","sourceRoot":"","sources":["../../../src/src/rendering/page-renderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,
|
|
1
|
+
{"version":3,"file":"page-renderer.d.ts","sourceRoot":"","sources":["../../../src/src/rendering/page-renderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,mCAAmC,CAAC;AAK3D,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAiB,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAInE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAG5D,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;IAC3C,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wDAAwD;IACxD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0DAA0D;IAC1D,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,2DAA2D;IAC3D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gFAAgF;IAChF,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,gBAAgB;IAC/B,WAAW,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC;IACjC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,EAAE,KAAK,GAAG,WAAW,CAAC;IACrC,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3C,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiB;IACzC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAoB;IACtD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAIF;IACzB,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAS;gBAE9B,OAAO,EAAE;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,eAAe,CAAC;QACxB,OAAO,EAAE,cAAc,CAAC;QACxB,iBAAiB,EAAE,iBAAiB,CAAC;QACrC,UAAU,EAAE,CACV,OAAO,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACrC,QAAQ,CAAC,EAAE,MAAM,KACd,OAAO,CAAC,UAAU,CAAC,CAAC;QACzB,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B;IAUD,OAAO,CAAC,mBAAmB;IAO3B,OAAO,CAAC,cAAc;IAetB,kBAAkB,CAChB,QAAQ,EAAE,UAAU,EACpB,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,YAAY,CAAC,YAAY,CAAC,GAAG,SAAS,EACpD,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,gBAAgB,CAAC;IAoI5B,WAAW,CAAC,QAAQ,EAAE,UAAU,GAAG;QACjC,IAAI,EAAE,KAAK,GAAG,WAAW,GAAG,QAAQ,CAAC;QACrC,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;KACrB;IAYD,kBAAkB,CAAC,MAAM,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;CAWjE"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type * as BundledReact from "react";
|
|
1
|
+
import type * as BundledReact from "../../deps/esm.sh/react@19.1.1.js";
|
|
2
2
|
import type { RuntimeAdapter } from "../platform/adapters/base.js";
|
|
3
3
|
import type { EntityInfo, MdxBundle, MDXComponents, PageBundle } from "../types/index.js";
|
|
4
4
|
export interface MDXPageResult {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-rendering.d.ts","sourceRoot":"","sources":["../../../src/src/rendering/page-rendering.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,YAAY,MAAM,
|
|
1
|
+
{"version":3,"file":"page-rendering.d.ts","sourceRoot":"","sources":["../../../src/src/rendering/page-rendering.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,YAAY,MAAM,mCAAmC,CAAC;AACvE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAa,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAOrG,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,YAAY,CAAC,YAAY,CAAC;IACvC,UAAU,EAAE,UAAU,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC5C;AAED,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,UAAU,EACpB,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAClB,gBAAgB,EAAE,aAAa,EAC/B,WAAW,EAAE,CACX,OAAO,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACrC,QAAQ,CAAC,EAAE,MAAM,KACd,OAAO,CAAC,SAAS,CAAC,EACvB,OAAO,EAAE,cAAc,EACvB,OAAO,CAAC,EAAE;IACR,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;IAC3C,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qCAAqC;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2DAA2D;IAC3D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0DAA0D;IAC1D,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gFAAgF;IAChF,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,GACA,OAAO,CAAC,aAAa,CAAC,CA+GxB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component-detector.d.ts","sourceRoot":"","sources":["../../../../../src/src/rendering/rsc/server-renderer/component-detector.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,
|
|
1
|
+
{"version":3,"file":"component-detector.d.ts","sourceRoot":"","sources":["../../../../../src/src/rendering/rsc/server-renderer/component-detector.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,yCAAyC,CAAC;AACtE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAEvD,MAAM,MAAM,YAAY,GAAG,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG;IACpD,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,YAAY,EACvB,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,GAC/C,OAAO,CAWT;AAED,wBAAgB,cAAc,CAAC,SAAS,EAAE,YAAY,GAAG,MAAM,CAE9D;AAED,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,MAAM,EACV,SAAS,EAAE,YAAY,EACvB,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,EAChD,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAC9B,IAAI,CAMN"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rsc-renderer.d.ts","sourceRoot":"","sources":["../../../../../src/src/rendering/rsc/server-renderer/rsc-renderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,
|
|
1
|
+
{"version":3,"file":"rsc-renderer.d.ts","sourceRoot":"","sources":["../../../../../src/src/rendering/rsc/server-renderer/rsc-renderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,yCAAyC,CAAC;AAGtE,OAAO,KAAK,EAAuB,UAAU,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAIvF,qBAAa,WAAW;IACtB,OAAO,CAAC,cAAc,CAAmC;IACzD,OAAO,CAAC,IAAI,CAA+B;IAC3C,OAAO,CAAC,UAAU,CAAkC;gBAExC,OAAO,EAAE,kBAAkB;IAKvC,eAAe,CACb,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,YAAY,EACxD,KAAK,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAClC,OAAO,CAAC,UAAU,CAAC;CAuBvB"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import * as React from "react";
|
|
1
|
+
import * as React from "../../../../deps/esm.sh/react@19.1.1.js";
|
|
2
2
|
import type { ClientComponentMeta, RSCNode } from "../types.js";
|
|
3
3
|
/** Recursively renders a component tree to RSC nodes */
|
|
4
4
|
export declare function renderTree(Component: React.ComponentType<any> | React.ReactElement | string | number | null | undefined, props: Record<string, unknown>, clientManifest: Map<string, ClientComponentMeta>, clientRefs: Map<string, string>): Promise<RSCNode>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tree-processor.d.ts","sourceRoot":"","sources":["../../../../../src/src/rendering/rsc/server-renderer/tree-processor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,
|
|
1
|
+
{"version":3,"file":"tree-processor.d.ts","sourceRoot":"","sources":["../../../../../src/src/rendering/rsc/server-renderer/tree-processor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,yCAAyC,CAAC;AAGjE,OAAO,KAAK,EAAE,mBAAmB,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAUhE,wDAAwD;AACxD,wBAAsB,UAAU,CAC9B,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,EAC7F,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,EAChD,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAC9B,OAAO,CAAC,OAAO,CAAC,CAuClB;AAED,6DAA6D;AAC7D,wBAAsB,cAAc,CAClC,OAAO,EAAE,KAAK,CAAC,YAAY,EAC3B,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,EAChD,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAC9B,OAAO,CAAC,OAAO,CAAC,CAuClB;AAED,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,KAAK,CAAC,SAAS,EACzB,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,EAChD,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAC9B,OAAO,CAAC,OAAO,EAAE,CAAC,CAYpB"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import * as React from "react";
|
|
1
|
+
import * as React from "../../../../deps/esm.sh/react@19.1.1.js";
|
|
2
2
|
import { serverLogger as logger } from "../../../utils/index.js";
|
|
3
3
|
import { renderToStringAdapter } from "../../../react/index.js";
|
|
4
4
|
import { getComponentId, isClientComponent, registerClientRef, } from "./component-detector.js";
|
|
@@ -42,7 +42,9 @@ export async function renderTree(Component, props, clientManifest, clientRefs) {
|
|
|
42
42
|
}
|
|
43
43
|
/** Processes a React element into RSC node representation */
|
|
44
44
|
export async function processElement(element, clientManifest, clientRefs) {
|
|
45
|
-
const { type
|
|
45
|
+
const { type } = element;
|
|
46
|
+
// Cast props for React 19 compatibility (props is unknown in R19 types)
|
|
47
|
+
const props = element.props;
|
|
46
48
|
if (type === React.Fragment) {
|
|
47
49
|
const children = await renderChildren(props.children, clientManifest, clientRefs);
|
|
48
50
|
return { type: "fragment", children };
|
|
@@ -163,8 +163,8 @@ export function renderSnippet(mdxContent, options) {
|
|
|
163
163
|
throw new Error("No MDXContent export found in compiled snippet");
|
|
164
164
|
}
|
|
165
165
|
const [{ renderToString }, React] = await Promise.all([
|
|
166
|
-
import("react-dom/server"),
|
|
167
|
-
import("react"),
|
|
166
|
+
import("../../deps/esm.sh/react-dom@19.1.1/server.js"),
|
|
167
|
+
import("../../deps/esm.sh/react@19.1.1.js"),
|
|
168
168
|
]);
|
|
169
169
|
const element = React.createElement(MDXContent, {
|
|
170
170
|
frontmatter: bundle.frontmatter ?? {},
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Component registry for managing and loading React components.
|
|
3
3
|
* @module
|
|
4
4
|
*/
|
|
5
|
-
import * as React from "react";
|
|
5
|
+
import * as React from "../../../deps/esm.sh/react@19.1.1.js";
|
|
6
6
|
import type { RuntimeAdapter } from "../../platform/adapters/base.js";
|
|
7
7
|
import { VirtualModuleSystem } from "../virtual-module-system.js";
|
|
8
8
|
interface FailedComponent {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component-registry.d.ts","sourceRoot":"","sources":["../../../../src/src/rendering/ssr/component-registry.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,KAAK,MAAM,
|
|
1
|
+
{"version":3,"file":"component-registry.d.ts","sourceRoot":"","sources":["../../../../src/src/rendering/ssr/component-registry.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,KAAK,MAAM,sCAAsC,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AASlE,UAAU,eAAe;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AA2DD;;;;;;;;;;GAUG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,UAAU,CAAmE;IACrF,OAAO,CAAC,cAAc,CAAsB;IAC5C,OAAO,CAAC,gBAAgB,CAA8C;IACtE,OAAO,CAAC,gBAAgB,CAAsC;IAC9D,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,UAAU,CAAM;IACxB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,OAAO,CAAC,CAAiB;IACjC,OAAO,CAAC,eAAe,CAAC,CAAS;IACjC,OAAO,CAAC,gBAAgB,CAAC,CAAS;IAClC,sEAAsE;IACtE,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,wEAAwE;IACxE,OAAO,CAAC,eAAe,CAAC,CAAS;IAEjC;;;;;;;;;;OAUG;gBAED,cAAc,CAAC,EAAE,mBAAmB,EACpC,UAAU,GAAE,MAA+B,EAC3C,OAAO,CAAC,EAAE,cAAc,EACxB,eAAe,CAAC,EAAE,MAAM,EACxB,gBAAgB,CAAC,EAAE,MAAM,EACzB,SAAS,CAAC,EAAE,MAAM,EAClB,eAAe,CAAC,EAAE,MAAM;IAW1B;;;;;;;;;;OAUG;IACG,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,UAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAezE;;;;;;;;OAQG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,IAAI;IAWtE;;;;OAIG;IACH,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAItE;;;;;OAKG;IACH,kBAAkB,IAAI,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAIlE;;;;;OAKG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI1B;;;;OAIG;IACH,sBAAsB,IAAI,mBAAmB;IAI7C;;OAEG;IACH,KAAK,IAAI,IAAI;IAOb;;;;;;;;;OASG;IACG,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAgE3C;;;OAGG;IACH,mBAAmB,IAAI,eAAe,EAAE;IAIxC;;;;OAIG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIhC,OAAO,CAAC,gBAAgB;YAmBV,iBAAiB;CAqFhC"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { dirname, join } from "../../platform/compat/path-helper.js";
|
|
6
6
|
import { DEFAULT_DASHBOARD_PORT, rendererLogger as logger } from "../../utils/index.js";
|
|
7
|
-
import * as React from "react";
|
|
7
|
+
import * as React from "../../../deps/esm.sh/react@19.1.1.js";
|
|
8
8
|
import { VirtualModuleSystem } from "../virtual-module-system.js";
|
|
9
9
|
import { loadComponentFromSource } from "../../modules/react-loader/component-loader.js";
|
|
10
10
|
/**
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* Provides React 18/19 streaming support with fallback to string rendering.
|
|
6
6
|
*/
|
|
7
7
|
import type { RuntimeAdapter } from "../platform/adapters/base.js";
|
|
8
|
-
import type * as React from "react";
|
|
8
|
+
import type * as React from "../../deps/esm.sh/react@19.1.1.js";
|
|
9
9
|
export interface SSRRenderOptions {
|
|
10
10
|
mode: string;
|
|
11
11
|
wantsStream: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ssr-renderer.d.ts","sourceRoot":"","sources":["../../../src/src/rendering/ssr-renderer.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AASnE,OAAO,KAAK,KAAK,KAAK,MAAM,
|
|
1
|
+
{"version":3,"file":"ssr-renderer.d.ts","sourceRoot":"","sources":["../../../src/src/rendering/ssr-renderer.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AASnE,OAAO,KAAK,KAAK,KAAK,MAAM,mCAAmC,CAAC;AAqEhE,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,cAAc,GAAG,IAAI,CAAC;CAC/B;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAiB;IAC1C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAS;IACrC,OAAO,CAAC,WAAW,CAAuD;gBAE9D,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,EAAE,UAAU,CAAC,EAAE,MAAM;YAMzD,cAAc;IAatB,YAAY,CAChB,WAAW,EAAE,KAAK,CAAC,YAAY,EAC/B,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,eAAe,CAAC;IA+F3B,oBAAoB,IAAI;QACtB,MAAM,EAAE,WAAW,GAAG,QAAQ,CAAC;QAC/B,YAAY,EAAE,MAAM,CAAC;QACrB,QAAQ,EAAE;YACR,SAAS,EAAE,OAAO,CAAC;YACnB,QAAQ,EAAE,OAAO,CAAC;YAClB,UAAU,EAAE,OAAO,CAAC;SACrB,CAAC;KACH;IAgBD,iBAAiB,IAAI,OAAO;CAG7B"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import * as React from "react";
|
|
1
|
+
import * as React from "../../../deps/esm.sh/react@19.1.1.js";
|
|
2
2
|
import type { MDXComponents } from "../../types/index.js";
|
|
3
3
|
export declare const normalizeChild: (child: React.ReactNode) => React.ReactNode;
|
|
4
4
|
export declare function createDefaultMDXComponents(): MDXComponents;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-helpers.d.ts","sourceRoot":"","sources":["../../../../src/src/rendering/utils/react-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,
|
|
1
|
+
{"version":3,"file":"react-helpers.d.ts","sourceRoot":"","sources":["../../../../src/src/rendering/utils/react-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,sCAAsC,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D,eAAO,MAAM,cAAc,UAGV,KAAK,CAAC,SAAS,KAAG,KAAK,CAAC,SAoBrC,CAAC;AAEL,wBAAgB,0BAA0B,IAAI,aAAa,CAE1D"}
|
|
@@ -106,7 +106,7 @@ async function loadErrorComponent(filePath, ctx) {
|
|
|
106
106
|
return typeof Component === "function" ? Component : null;
|
|
107
107
|
}
|
|
108
108
|
async function renderErrorPage(req, ctx, builder, ErrorComponent, statusCode, error, pathname) {
|
|
109
|
-
const React = await import("react");
|
|
109
|
+
const React = await import("../../../../../deps/esm.sh/react@19.1.1.js");
|
|
110
110
|
const { renderToStringAdapter } = await import("../../../../react/compat/ssr-adapter/index.js");
|
|
111
111
|
const errorProps = { statusCode, err: error, pathname };
|
|
112
112
|
const element = React.createElement(ErrorComponent, errorProps);
|
|
@@ -19,7 +19,7 @@ export async function tryNotFoundFallback(req, slug, ctx, builder) {
|
|
|
19
19
|
const NotFoundComp = await tryLoadReservedInDirs(dirs, "notFound", ctx.projectDir, "production", ctx.adapter, ctx.projectId, contentSourceId);
|
|
20
20
|
if (!NotFoundComp)
|
|
21
21
|
return null;
|
|
22
|
-
const React = await import("react");
|
|
22
|
+
const React = await import("../../../../../deps/esm.sh/react@19.1.1.js");
|
|
23
23
|
const { renderToStringAdapter } = await import("../../../../react/compat/ssr-adapter/index.js");
|
|
24
24
|
const element = React.createElement(NotFoundComp, {});
|
|
25
25
|
let inner = "";
|
|
@@ -13,12 +13,23 @@ export declare function getReactAliases(): Record<string, string>;
|
|
|
13
13
|
*/
|
|
14
14
|
export declare function createHTTPPlugin(): Plugin;
|
|
15
15
|
/**
|
|
16
|
-
* Ensure esm.sh URLs have
|
|
17
|
-
* This makes them import React as
|
|
16
|
+
* Ensure esm.sh URLs have external=react,react-dom for SSR.
|
|
17
|
+
* This makes them import React as bare specifiers, which the import map resolves.
|
|
18
18
|
*
|
|
19
19
|
* Uses two esm.sh features:
|
|
20
|
-
* - `external=react` - Don't bundle React, let import map resolve
|
|
20
|
+
* - `external=react,react-dom` - Don't bundle React/ReactDOM, let import map resolve them
|
|
21
21
|
* - `deps=react@X,react-dom@X` - Pin dependency versions to prevent mismatches
|
|
22
|
+
*
|
|
23
|
+
* Logic for external handling:
|
|
24
|
+
* 1. If no `external=` param → add `external=react,react-dom`
|
|
25
|
+
* 2. If `external=X` exists but no `react` → append `,react,react-dom`
|
|
26
|
+
* 3. If has `react` but no `react-dom` → append `,react-dom`
|
|
27
|
+
* 4. If has both `react` AND `react-dom` → leave alone
|
|
28
|
+
*
|
|
29
|
+
* @param code - Source code to process
|
|
30
|
+
* @param _cacheDir - Unused (kept for API compatibility)
|
|
31
|
+
* @param hash - Hash for logging
|
|
32
|
+
* @param reactVersion - React version for deps param (defaults to REACT_VERSION)
|
|
22
33
|
*/
|
|
23
|
-
export declare function bundleHttpImports(code: string, _cacheDir: string, hash: string): string | Promise<string>;
|
|
34
|
+
export declare function bundleHttpImports(code: string, _cacheDir: string, hash: string, reactVersion?: string): string | Promise<string>;
|
|
24
35
|
//# sourceMappingURL=http-bundler.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http-bundler.d.ts","sourceRoot":"","sources":["../../../../src/src/transforms/esm/http-bundler.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEtC,OAAO,EAAE,YAAY,EAAiB,MAAM,uBAAuB,CAAC;AA6BpE,qCAAqC;AACrC,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED,uDAAuD;AACvD,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAMlD;AAED,yDAAyD;AACzD,OAAO,EAAE,YAAY,EAAE,CAAC;AAExB,wDAAwD;AACxD,wBAAgB,eAAe,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAExD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAyFzC;AAED
|
|
1
|
+
{"version":3,"file":"http-bundler.d.ts","sourceRoot":"","sources":["../../../../src/src/transforms/esm/http-bundler.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEtC,OAAO,EAAE,YAAY,EAAiB,MAAM,uBAAuB,CAAC;AA6BpE,qCAAqC;AACrC,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED,uDAAuD;AACvD,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAMlD;AAED,yDAAyD;AACzD,OAAO,EAAE,YAAY,EAAE,CAAC;AAExB,wDAAwD;AACxD,wBAAgB,eAAe,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAExD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAyFzC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,YAAY,CAAC,EAAE,MAAM,GACpB,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAqH1B"}
|
|
@@ -134,40 +134,133 @@ export function createHTTPPlugin() {
|
|
|
134
134
|
};
|
|
135
135
|
}
|
|
136
136
|
/**
|
|
137
|
-
* Ensure esm.sh URLs have
|
|
138
|
-
* This makes them import React as
|
|
137
|
+
* Ensure esm.sh URLs have external=react,react-dom for SSR.
|
|
138
|
+
* This makes them import React as bare specifiers, which the import map resolves.
|
|
139
139
|
*
|
|
140
140
|
* Uses two esm.sh features:
|
|
141
|
-
* - `external=react` - Don't bundle React, let import map resolve
|
|
141
|
+
* - `external=react,react-dom` - Don't bundle React/ReactDOM, let import map resolve them
|
|
142
142
|
* - `deps=react@X,react-dom@X` - Pin dependency versions to prevent mismatches
|
|
143
|
+
*
|
|
144
|
+
* Logic for external handling:
|
|
145
|
+
* 1. If no `external=` param → add `external=react,react-dom`
|
|
146
|
+
* 2. If `external=X` exists but no `react` → append `,react,react-dom`
|
|
147
|
+
* 3. If has `react` but no `react-dom` → append `,react-dom`
|
|
148
|
+
* 4. If has both `react` AND `react-dom` → leave alone
|
|
149
|
+
*
|
|
150
|
+
* @param code - Source code to process
|
|
151
|
+
* @param _cacheDir - Unused (kept for API compatibility)
|
|
152
|
+
* @param hash - Hash for logging
|
|
153
|
+
* @param reactVersion - React version for deps param (defaults to REACT_VERSION)
|
|
143
154
|
*/
|
|
144
|
-
export function bundleHttpImports(code, _cacheDir, hash) {
|
|
155
|
+
export function bundleHttpImports(code, _cacheDir, hash, reactVersion) {
|
|
145
156
|
const has = hasHttpImports(code);
|
|
146
157
|
logger.debug(`${LOG_PREFIX} Check: hasHttp=${has}, hash=${hash.slice(0, 8)}`);
|
|
147
158
|
if (!has)
|
|
148
159
|
return code;
|
|
160
|
+
const version = reactVersion ?? REACT_VERSION;
|
|
149
161
|
return replaceSpecifiers(code, (specifier) => {
|
|
162
|
+
// Handle relative esm.sh paths like "/react-dom?target=es2022" or "/hoist-non-react-statics@..."
|
|
163
|
+
// These are returned by esm.sh stub modules and need to be converted to full URLs
|
|
164
|
+
if (specifier.startsWith("/") && !specifier.startsWith("//")) {
|
|
165
|
+
const fullUrl = `https://esm.sh${specifier}`;
|
|
166
|
+
// Recursively process as full URL (will add external params if needed)
|
|
167
|
+
const isReactPackage = /^\/react(-dom)?(@|\/|\?|$)/.test(specifier);
|
|
168
|
+
if (isReactPackage) {
|
|
169
|
+
// React packages - just ensure target and return full URL
|
|
170
|
+
if (!specifier.includes("target=")) {
|
|
171
|
+
const joiner = specifier.includes("?") ? "&" : "?";
|
|
172
|
+
return `${fullUrl}${joiner}target=es2022`;
|
|
173
|
+
}
|
|
174
|
+
return fullUrl;
|
|
175
|
+
}
|
|
176
|
+
// Non-React packages - add external params
|
|
177
|
+
const params = [];
|
|
178
|
+
if (!specifier.includes("target="))
|
|
179
|
+
params.push("target=es2022");
|
|
180
|
+
if (!specifier.includes("external="))
|
|
181
|
+
params.push("external=react,react-dom");
|
|
182
|
+
if (!specifier.includes("deps="))
|
|
183
|
+
params.push(`deps=react@${version},react-dom@${version}`);
|
|
184
|
+
if (params.length === 0)
|
|
185
|
+
return fullUrl;
|
|
186
|
+
const joiner = specifier.includes("?") ? "&" : "?";
|
|
187
|
+
return `${fullUrl}${joiner}${params.join("&")}`;
|
|
188
|
+
}
|
|
150
189
|
const isEsmSh = specifier.startsWith("https://esm.sh/") ||
|
|
151
190
|
specifier.startsWith("http://esm.sh/");
|
|
152
191
|
const isVfEsm = specifier.startsWith("https://esm.veryfront.com/");
|
|
153
192
|
if (!isEsmSh && !isVfEsm)
|
|
154
193
|
return null;
|
|
194
|
+
// Don't modify React/ReactDOM package URLs themselves
|
|
155
195
|
const isReactPackage = /\/react(-dom)?(@|\/|$)/.test(specifier);
|
|
196
|
+
if (isReactPackage) {
|
|
197
|
+
// Just ensure target is set for React packages
|
|
198
|
+
if (!specifier.includes("target=")) {
|
|
199
|
+
const joiner = specifier.includes("?") ? "&" : "?";
|
|
200
|
+
return `${specifier}${joiner}target=es2022`;
|
|
201
|
+
}
|
|
202
|
+
return null;
|
|
203
|
+
}
|
|
204
|
+
// For non-React packages: ensure external=react,react-dom and deps
|
|
156
205
|
const params = [];
|
|
157
206
|
if (!specifier.includes("target=")) {
|
|
158
207
|
params.push("target=es2022");
|
|
159
208
|
}
|
|
160
|
-
//
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
209
|
+
// Handle external param - ensure both react AND react-dom are externalized
|
|
210
|
+
const hasExternal = specifier.includes("external=");
|
|
211
|
+
const hasReactExternal = specifier.includes("external=react") ||
|
|
212
|
+
/external=[^&]*\breact\b/.test(specifier);
|
|
213
|
+
const hasReactDomExternal = /external=[^&]*react-dom/.test(specifier);
|
|
214
|
+
if (!hasExternal) {
|
|
215
|
+
// No external param - add both
|
|
216
|
+
params.push("external=react,react-dom");
|
|
217
|
+
}
|
|
218
|
+
else if (!hasReactExternal) {
|
|
219
|
+
// Has external but no react - append react,react-dom
|
|
220
|
+
// This requires modifying existing param, so we'll use URL parsing
|
|
221
|
+
try {
|
|
222
|
+
const url = new URL(specifier);
|
|
223
|
+
const existing = url.searchParams.get("external") || "";
|
|
224
|
+
url.searchParams.set("external", `${existing},react,react-dom`);
|
|
225
|
+
// Return full modified URL and skip other param additions
|
|
226
|
+
if (!specifier.includes("target=")) {
|
|
227
|
+
url.searchParams.set("target", "es2022");
|
|
228
|
+
}
|
|
229
|
+
if (!specifier.includes("deps=")) {
|
|
230
|
+
url.searchParams.set("deps", `react@${version},react-dom@${version}`);
|
|
231
|
+
}
|
|
232
|
+
logger.debug(`${LOG_PREFIX} ${specifier} -> ${url.toString()}`);
|
|
233
|
+
return url.toString();
|
|
234
|
+
}
|
|
235
|
+
catch {
|
|
236
|
+
// Fallback: just add as new param (may create duplicate)
|
|
237
|
+
params.push("external=react,react-dom");
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
else if (!hasReactDomExternal) {
|
|
241
|
+
// Has react but not react-dom - append react-dom
|
|
242
|
+
try {
|
|
243
|
+
const url = new URL(specifier);
|
|
244
|
+
const existing = url.searchParams.get("external") || "";
|
|
245
|
+
url.searchParams.set("external", `${existing},react-dom`);
|
|
246
|
+
if (!specifier.includes("target=")) {
|
|
247
|
+
url.searchParams.set("target", "es2022");
|
|
248
|
+
}
|
|
249
|
+
if (!specifier.includes("deps=")) {
|
|
250
|
+
url.searchParams.set("deps", `react@${version},react-dom@${version}`);
|
|
251
|
+
}
|
|
252
|
+
logger.debug(`${LOG_PREFIX} ${specifier} -> ${url.toString()}`);
|
|
253
|
+
return url.toString();
|
|
166
254
|
}
|
|
167
|
-
|
|
168
|
-
|
|
255
|
+
catch {
|
|
256
|
+
// Fallback
|
|
257
|
+
params.push("external=react-dom");
|
|
169
258
|
}
|
|
170
259
|
}
|
|
260
|
+
// else: has both react and react-dom - no external changes needed
|
|
261
|
+
if (!specifier.includes("deps=")) {
|
|
262
|
+
params.push(`deps=react@${version},react-dom@${version}`);
|
|
263
|
+
}
|
|
171
264
|
if (params.length === 0)
|
|
172
265
|
return null;
|
|
173
266
|
const joiner = specifier.includes("?") ? "&" : "?";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http-cache.d.ts","sourceRoot":"","sources":["../../../../src/src/transforms/esm/http-cache.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"http-cache.d.ts","sourceRoot":"","sources":["../../../../src/src/transforms/esm/http-cache.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAezE,KAAK,YAAY,GAAG;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,eAAe,CAAC;IAC3B,uEAAuE;IACvE,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAoVF;;GAEG;AACH,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,MAAM,CAAC,CAOjB;AAED;;;;;;;;GAQG;AACH,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAOvF;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,uBAAuB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CA8D9F;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,sBAAsB,CAC1C,WAAW,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,EAClD,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,EAAE,CAAC,CAiInB"}
|
|
@@ -10,14 +10,14 @@ import * as dntShim from "../../../_dnt.shims.js";
|
|
|
10
10
|
import { createFileSystem, exists } from "../../platform/compat/fs.js";
|
|
11
11
|
import { isAbsolute, join } from "../../platform/compat/path/index.js";
|
|
12
12
|
import { cwd } from "../../platform/compat/process.js";
|
|
13
|
+
import { isDeno } from "../../platform/compat/runtime.js";
|
|
13
14
|
import { rendererLogger as logger } from "../../utils/index.js";
|
|
14
15
|
import { simpleHash } from "../../utils/hash-utils.js";
|
|
15
16
|
import { LRUCache } from "../../utils/lru-wrapper.js";
|
|
16
17
|
import { withSpan } from "../../observability/tracing/otlp-setup.js";
|
|
17
18
|
import { SpanNames } from "../../observability/tracing/span-names.js";
|
|
18
19
|
import { resolveImport } from "../../modules/import-map/resolver.js";
|
|
19
|
-
import {
|
|
20
|
-
import { getDenoNpmReactMap, getReactImportMap, REACT_VERSION } from "./package-registry.js";
|
|
20
|
+
import { getReactImportMap, REACT_VERSION } from "./package-registry.js";
|
|
21
21
|
import { parseImports, replaceSpecifiers } from "./lexer.js";
|
|
22
22
|
import { CacheBackends, createDistributedCacheAccessor } from "../../cache/backend.js";
|
|
23
23
|
import { HTTP_MODULE_CACHE_MAX_ENTRIES, HTTP_MODULE_DISTRIBUTED_TTL_SEC, } from "../../utils/constants/cache.js";
|
|
@@ -39,13 +39,24 @@ function isHttpUrl(specifier) {
|
|
|
39
39
|
/**
|
|
40
40
|
* Check if a URL is for React core packages.
|
|
41
41
|
*
|
|
42
|
-
*
|
|
43
|
-
*
|
|
44
|
-
*
|
|
45
|
-
* React instance.
|
|
42
|
+
* React core modules (react, react-dom) must NOT be cached/bundled.
|
|
43
|
+
* Instead, all packages use external=react and import from the same esm.sh URL.
|
|
44
|
+
* This prevents multiple React instances which causes "useContext is null" errors.
|
|
46
45
|
*/
|
|
47
|
-
function isReactCoreUrl(
|
|
48
|
-
|
|
46
|
+
function isReactCoreUrl(url) {
|
|
47
|
+
try {
|
|
48
|
+
const parsed = new URL(url);
|
|
49
|
+
if (!parsed.hostname.includes("esm.sh"))
|
|
50
|
+
return false;
|
|
51
|
+
// Extract package name from esm.sh pathname
|
|
52
|
+
// Formats: /react@version, /v150/react@version, /stable/react@version
|
|
53
|
+
const pathname = parsed.pathname.replace(/^\/(v\d+|stable)\//, "/");
|
|
54
|
+
const match = pathname.match(/^\/(react|react-dom)(@[\d.]+)?(?:\/|$|\?)/);
|
|
55
|
+
return match !== null;
|
|
56
|
+
}
|
|
57
|
+
catch {
|
|
58
|
+
return false;
|
|
59
|
+
}
|
|
49
60
|
}
|
|
50
61
|
function isExternalScheme(specifier) {
|
|
51
62
|
return specifier.startsWith("node:") ||
|
|
@@ -101,25 +112,8 @@ function toEsmShUrlFromNpm(specifier) {
|
|
|
101
112
|
return `https://esm.sh/${specifier.slice(4)}`;
|
|
102
113
|
}
|
|
103
114
|
function resolveBareSpecifier(specifier, importMap, reactVersion = REACT_VERSION) {
|
|
104
|
-
//
|
|
105
|
-
//
|
|
106
|
-
// See: https://deno.com/blog/not-using-npm-specifiers-doing-it-wrong
|
|
107
|
-
if (isDeno) {
|
|
108
|
-
const denoReactMap = getDenoNpmReactMap(reactVersion);
|
|
109
|
-
const denoMatch = denoReactMap[specifier];
|
|
110
|
-
if (denoMatch)
|
|
111
|
-
return denoMatch;
|
|
112
|
-
// For unknown react/* or react-dom/* subpaths, construct npm: specifiers
|
|
113
|
-
if (specifier.startsWith("react/") && !specifier.startsWith("react-dom")) {
|
|
114
|
-
const subpath = specifier.slice("react/".length);
|
|
115
|
-
return `npm:react@${reactVersion}/${subpath}`;
|
|
116
|
-
}
|
|
117
|
-
if (specifier.startsWith("react-dom/")) {
|
|
118
|
-
const subpath = specifier.slice("react-dom/".length);
|
|
119
|
-
return `npm:react-dom@${reactVersion}/${subpath}`;
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
// For non-Deno runtimes: Use esm.sh URLs with consistent versioning.
|
|
115
|
+
// Use esm.sh URLs for React - NO npm: specifiers per plan requirements.
|
|
116
|
+
// All packages use external=react to share the same React instance.
|
|
123
117
|
const reactMap = getReactImportMap(reactVersion);
|
|
124
118
|
const reactMapped = reactMap[specifier];
|
|
125
119
|
if (reactMapped)
|
|
@@ -272,6 +266,11 @@ async function resolveSpecifier(specifier, baseUrl, options) {
|
|
|
272
266
|
if (!baseUrl || !isHttpUrl(baseUrl))
|
|
273
267
|
return null;
|
|
274
268
|
const resolved = new URL(specifier, baseUrl).toString();
|
|
269
|
+
// For React core URLs: return the full esm.sh URL (not cached, to prevent multiple instances)
|
|
270
|
+
// This transforms relative paths like "/react-dom?..." to "https://esm.sh/react-dom?..."
|
|
271
|
+
if (isReactCoreUrl(resolved)) {
|
|
272
|
+
return normalizeHttpUrl(resolved);
|
|
273
|
+
}
|
|
275
274
|
const cached = await cacheHttpModule(resolved, options);
|
|
276
275
|
return cached ? `file://${cached}` : null;
|
|
277
276
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"import-rewriter.d.ts","sourceRoot":"","sources":["../../../../src/src/transforms/esm/import-rewriter.ts"],"names":[],"mappings":"AAKA,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAmB1F;
|
|
1
|
+
{"version":3,"file":"import-rewriter.d.ts","sourceRoot":"","sources":["../../../../src/src/transforms/esm/import-rewriter.ts"],"names":[],"mappings":"AAKA,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAmB1F;AAoDD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,gBAAgB,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAuB3F;AAWD,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,MAAM,EACZ,eAAe,EAAE,MAAM,EACvB,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,MAAM,CAAC,CAgEjB"}
|
|
@@ -40,9 +40,9 @@ function normalizeVersionedSpecifier(specifier) {
|
|
|
40
40
|
}
|
|
41
41
|
const REACT_IMPORT_MAP = {
|
|
42
42
|
react: `https://esm.sh/react@${REACT_DEFAULT_VERSION}?target=es2022`,
|
|
43
|
-
"react-dom": `https://esm.sh/react-dom@${REACT_DEFAULT_VERSION}?target=es2022`,
|
|
44
|
-
"react-dom/client": `https://esm.sh/react-dom@${REACT_DEFAULT_VERSION}/client?target=es2022`,
|
|
45
|
-
"react-dom/server": `https://esm.sh/react-dom@${REACT_DEFAULT_VERSION}/server?target=es2022`,
|
|
43
|
+
"react-dom": `https://esm.sh/react-dom@${REACT_DEFAULT_VERSION}?external=react&target=es2022`,
|
|
44
|
+
"react-dom/client": `https://esm.sh/react-dom@${REACT_DEFAULT_VERSION}/client?external=react&target=es2022`,
|
|
45
|
+
"react-dom/server": `https://esm.sh/react-dom@${REACT_DEFAULT_VERSION}/server?external=react&target=es2022`,
|
|
46
46
|
"react/jsx-runtime": `https://esm.sh/react@${REACT_DEFAULT_VERSION}/jsx-runtime?target=es2022`,
|
|
47
47
|
"react/jsx-dev-runtime": `https://esm.sh/react@${REACT_DEFAULT_VERSION}/jsx-dev-runtime?target=es2022`,
|
|
48
48
|
};
|
|
@@ -8,13 +8,20 @@
|
|
|
8
8
|
export declare const DEFAULT_REACT_VERSION = "19.1.1";
|
|
9
9
|
export declare const TAILWIND_VERSION = "4.1.8";
|
|
10
10
|
/**
|
|
11
|
-
*
|
|
12
|
-
*
|
|
11
|
+
* Validate React version format (semver: X.Y.Z).
|
|
12
|
+
* Returns true if valid, false otherwise.
|
|
13
13
|
*/
|
|
14
|
-
export declare function
|
|
14
|
+
export declare function isValidReactVersion(version: string): boolean;
|
|
15
15
|
/**
|
|
16
|
-
*
|
|
17
|
-
* Returns
|
|
16
|
+
* Validate and normalize React version.
|
|
17
|
+
* Returns the version if valid, or DEFAULT_REACT_VERSION if invalid.
|
|
18
|
+
* Logs a warning if the version is invalid.
|
|
19
|
+
*/
|
|
20
|
+
export declare function normalizeReactVersion(version: string | undefined): string;
|
|
21
|
+
/**
|
|
22
|
+
* @deprecated Global React version is no longer supported.
|
|
23
|
+
* Use config.react.version passed through TransformOptions instead.
|
|
24
|
+
* This function now always returns DEFAULT_REACT_VERSION.
|
|
18
25
|
*/
|
|
19
26
|
export declare function getReactVersion(): string;
|
|
20
27
|
/** @deprecated Use DEFAULT_REACT_VERSION or getReactVersion() */
|
|
@@ -66,14 +73,9 @@ export declare function getReactUrls(version?: string): Record<string, string>;
|
|
|
66
73
|
*/
|
|
67
74
|
export declare function getReactImportMap(version?: string): Record<string, string>;
|
|
68
75
|
/**
|
|
69
|
-
* Get React
|
|
70
|
-
* Uses
|
|
71
|
-
*
|
|
72
|
-
*
|
|
73
|
-
* Benefits over esm.sh:
|
|
74
|
-
* - Automatic semantic version deduplication (like Node's node_modules)
|
|
75
|
-
* - No manual external= flags or shared-*.ts wrapper files needed
|
|
76
|
-
* - Native support in Deno 2+
|
|
76
|
+
* Get React esm.sh URLs for Deno SSR.
|
|
77
|
+
* Uses esm.sh for both SSR and browser to ensure identical React instances.
|
|
78
|
+
* All sub-packages use external=react to share the same React instance.
|
|
77
79
|
*
|
|
78
80
|
* @param version - React version to use (defaults to REACT_VERSION)
|
|
79
81
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package-registry.d.ts","sourceRoot":"","sources":["../../../../src/src/transforms/esm/package-registry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,wEAAwE;AACxE,eAAO,MAAM,qBAAqB,WAAW,CAAC;AAC9C,eAAO,MAAM,gBAAgB,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"package-registry.d.ts","sourceRoot":"","sources":["../../../../src/src/transforms/esm/package-registry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,wEAAwE;AACxE,eAAO,MAAM,qBAAqB,WAAW,CAAC;AAC9C,eAAO,MAAM,gBAAgB,UAAU,CAAC;AAExC;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAE5D;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAOzE;AAED;;;;GAIG;AACH,wBAAgB,eAAe,IAAI,MAAM,CAExC;AAED,iEAAiE;AACjE,eAAO,MAAM,aAAa,WAAwB,CAAC;AAEnD;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAa1C;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAI9F;AAED;;;;;;;;;GASG;AACH,wBAAgB,YAAY,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAUrE;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAO1E;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAU3E"}
|