vite-plugin-react-server 1.2.0-alpha.1 → 1.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +211 -51
- package/dist/client.d.ts +4 -1
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +5 -6
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -10
- package/dist/package.json +102 -27
- package/dist/plugin/bundle/bundles.d.ts +11 -0
- package/dist/plugin/bundle/bundles.d.ts.map +1 -0
- package/dist/plugin/bundle/bundles.js +11 -0
- package/dist/plugin/bundle/deferredStaticGeneration.d.ts +31 -0
- package/dist/plugin/bundle/deferredStaticGeneration.d.ts.map +1 -0
- package/dist/plugin/bundle/deferredStaticGeneration.js +44 -0
- package/dist/plugin/bundle/manifests.d.ts +20 -0
- package/dist/plugin/bundle/manifests.d.ts.map +1 -0
- package/dist/plugin/bundle/manifests.js +54 -0
- package/dist/plugin/components/css.d.ts +2 -5
- package/dist/plugin/components/css.d.ts.map +1 -1
- package/dist/plugin/components/css.js +7 -9
- package/dist/plugin/components/html.d.ts +2 -3
- package/dist/plugin/components/html.d.ts.map +1 -1
- package/dist/plugin/components/html.js +3 -3
- package/dist/plugin/components/index.d.ts +1 -1
- package/dist/plugin/components/index.d.ts.map +1 -1
- package/dist/plugin/components/root.d.ts.map +1 -1
- package/dist/plugin/components/root.js +4 -4
- package/dist/plugin/config/autoDiscover/createGlobAutoDiscover.d.ts.map +1 -1
- package/dist/plugin/config/autoDiscover/createGlobAutoDiscover.js +6 -6
- package/dist/plugin/config/autoDiscover/pageAndPropFiles.d.ts.map +1 -1
- package/dist/plugin/config/autoDiscover/pageAndPropFiles.js +1 -1
- package/dist/plugin/config/autoDiscover/resolveAutoDiscover.d.ts +6 -5
- package/dist/plugin/config/autoDiscover/resolveAutoDiscover.d.ts.map +1 -1
- package/dist/plugin/config/autoDiscover/resolveAutoDiscover.js +34 -51
- package/dist/plugin/config/autoDiscover/resolveBuildPages.d.ts +5 -1
- package/dist/plugin/config/autoDiscover/resolveBuildPages.d.ts.map +1 -1
- package/dist/plugin/config/autoDiscover/resolveBuildPages.js +124 -52
- package/dist/plugin/config/createHandlerOptions.client.d.ts +4 -0
- package/dist/plugin/config/createHandlerOptions.client.d.ts.map +1 -0
- package/dist/plugin/config/createHandlerOptions.client.js +293 -0
- package/dist/plugin/config/createHandlerOptions.d.ts +4 -0
- package/dist/plugin/config/createHandlerOptions.d.ts.map +1 -0
- package/dist/plugin/config/createHandlerOptions.js +13 -0
- package/dist/plugin/config/createHandlerOptions.server.d.ts +4 -0
- package/dist/plugin/config/createHandlerOptions.server.d.ts.map +1 -0
- package/dist/plugin/config/createHandlerOptions.server.js +344 -0
- package/dist/plugin/config/createHandlerOptions.types.d.ts +114 -0
- package/dist/plugin/config/createHandlerOptions.types.d.ts.map +1 -0
- package/dist/plugin/config/createModuleID.d.ts +1 -1
- package/dist/plugin/config/createModuleID.d.ts.map +1 -1
- package/dist/plugin/config/createModuleID.js +121 -8
- package/dist/plugin/config/defaults.d.ts +46 -6
- package/dist/plugin/config/defaults.d.ts.map +1 -1
- package/dist/plugin/config/defaults.js +54 -11
- package/dist/plugin/config/envPrefixFromConfig.d.ts +3 -0
- package/dist/plugin/config/envPrefixFromConfig.d.ts.map +1 -0
- package/dist/plugin/config/envPrefixFromConfig.js +8 -0
- package/dist/plugin/config/getCondition.d.ts +54 -3
- package/dist/plugin/config/getCondition.d.ts.map +1 -1
- package/dist/plugin/config/getCondition.js +158 -6
- package/dist/plugin/{getNodeEnv.d.ts → config/getNodeEnv.d.ts} +1 -1
- package/dist/plugin/config/getNodeEnv.d.ts.map +1 -0
- package/dist/plugin/config/getNodeEnv.js +17 -0
- package/dist/plugin/config/index.d.ts +43 -1
- package/dist/plugin/config/index.d.ts.map +1 -1
- package/dist/plugin/config/index.js +9 -4
- package/dist/plugin/config/resolveDirectiveMatcher.d.ts +6 -6
- package/dist/plugin/config/resolveDirectiveMatcher.d.ts.map +1 -1
- package/dist/plugin/config/resolveDirectiveMatcher.js +7 -23
- package/dist/plugin/config/resolveEnv.d.ts.map +1 -1
- package/dist/plugin/config/resolveEnv.js +3 -6
- package/dist/plugin/config/resolveOptions.d.ts +3 -2
- package/dist/plugin/config/resolveOptions.d.ts.map +1 -1
- package/dist/plugin/config/resolveOptions.js +188 -43
- package/dist/plugin/config/resolvePages.d.ts +1 -1
- package/dist/plugin/config/resolvePages.d.ts.map +1 -1
- package/dist/plugin/config/resolvePages.js +1 -1
- package/dist/plugin/config/resolvePatternWithValues.d.ts.map +1 -1
- package/dist/plugin/config/resolvePatternWithValues.js +7 -26
- package/dist/plugin/config/resolveUrlOption.d.ts +1 -1
- package/dist/plugin/config/resolveUrlOption.d.ts.map +1 -1
- package/dist/plugin/config/resolveUrlOption.js +2 -2
- package/dist/plugin/config/resolveUserConfig.d.ts +5 -3
- package/dist/plugin/config/resolveUserConfig.d.ts.map +1 -1
- package/dist/plugin/config/resolveUserConfig.js +221 -75
- package/dist/plugin/config/stashedOptionsState.d.ts +66 -0
- package/dist/plugin/config/stashedOptionsState.d.ts.map +1 -0
- package/dist/plugin/config/stashedOptionsState.js +25 -0
- package/dist/plugin/dev-server/cleanupServerAction.client.d.ts +6 -0
- package/dist/plugin/dev-server/cleanupServerAction.client.d.ts.map +1 -0
- package/dist/plugin/dev-server/cleanupServerAction.client.js +28 -0
- package/dist/plugin/dev-server/cleanupServerAction.d.ts +2 -0
- package/dist/plugin/dev-server/cleanupServerAction.d.ts.map +1 -0
- package/dist/plugin/dev-server/cleanupServerAction.js +4 -0
- package/dist/plugin/dev-server/cleanupServerAction.server.d.ts +8 -0
- package/dist/plugin/dev-server/cleanupServerAction.server.d.ts.map +1 -0
- package/dist/plugin/dev-server/cleanupServerAction.server.js +15 -0
- package/dist/plugin/dev-server/configureReactServer.client.d.ts +7 -0
- package/dist/plugin/dev-server/configureReactServer.client.d.ts.map +1 -0
- package/dist/plugin/dev-server/configureReactServer.client.js +85 -0
- package/dist/plugin/dev-server/configureReactServer.d.ts +2 -0
- package/dist/plugin/dev-server/configureReactServer.d.ts.map +1 -0
- package/dist/plugin/dev-server/configureReactServer.js +13 -0
- package/dist/plugin/dev-server/configureReactServer.server.d.ts +3 -0
- package/dist/plugin/dev-server/configureReactServer.server.d.ts.map +1 -0
- package/dist/plugin/dev-server/configureReactServer.server.js +444 -0
- package/dist/plugin/dev-server/configureRequestHandler.client.d.ts +13 -0
- package/dist/plugin/dev-server/configureRequestHandler.client.d.ts.map +1 -0
- package/dist/plugin/dev-server/configureRequestHandler.client.js +307 -0
- package/dist/plugin/dev-server/configureRequestHandler.d.ts +2 -0
- package/dist/plugin/dev-server/configureRequestHandler.d.ts.map +1 -0
- package/dist/plugin/dev-server/configureRequestHandler.js +4 -0
- package/dist/plugin/dev-server/configureRequestHandler.server.d.ts +6 -0
- package/dist/plugin/dev-server/configureRequestHandler.server.d.ts.map +1 -0
- package/dist/plugin/dev-server/configureRequestHandler.server.js +44 -0
- package/dist/plugin/dev-server/handleServerAction.client.d.ts +11 -0
- package/dist/plugin/dev-server/handleServerAction.client.d.ts.map +1 -0
- package/dist/plugin/dev-server/handleServerAction.client.js +97 -0
- package/dist/plugin/dev-server/handleServerAction.d.ts +2 -0
- package/dist/plugin/dev-server/handleServerAction.d.ts.map +1 -0
- package/dist/plugin/dev-server/handleServerAction.js +13 -0
- package/dist/plugin/dev-server/handleServerAction.server.d.ts +3 -0
- package/dist/plugin/dev-server/handleServerAction.server.d.ts.map +1 -0
- package/dist/plugin/dev-server/handleServerAction.server.js +15 -0
- package/dist/plugin/dev-server/index.client.d.ts +7 -0
- package/dist/plugin/dev-server/index.client.d.ts.map +1 -0
- package/dist/plugin/dev-server/index.client.js +11 -0
- package/dist/plugin/dev-server/index.d.ts +4 -0
- package/dist/plugin/dev-server/index.d.ts.map +1 -0
- package/dist/plugin/dev-server/index.js +19 -0
- package/dist/plugin/dev-server/index.server.d.ts +7 -0
- package/dist/plugin/dev-server/index.server.d.ts.map +1 -0
- package/dist/plugin/dev-server/index.server.js +11 -0
- package/dist/plugin/dev-server/plugin.client.d.ts +7 -0
- package/dist/plugin/dev-server/plugin.client.d.ts.map +1 -0
- package/dist/plugin/dev-server/plugin.client.js +122 -0
- package/dist/plugin/dev-server/plugin.server.d.ts +8 -0
- package/dist/plugin/dev-server/plugin.server.d.ts.map +1 -0
- package/dist/plugin/dev-server/plugin.server.js +108 -0
- package/dist/plugin/dev-server/restartWorker.client.d.ts +3 -0
- package/dist/plugin/dev-server/restartWorker.client.d.ts.map +1 -0
- package/dist/plugin/dev-server/restartWorker.client.js +131 -0
- package/dist/plugin/dev-server/restartWorker.d.ts +2 -0
- package/dist/plugin/dev-server/restartWorker.d.ts.map +1 -0
- package/dist/plugin/dev-server/restartWorker.js +4 -0
- package/dist/plugin/dev-server/restartWorker.server.d.ts +3 -0
- package/dist/plugin/dev-server/restartWorker.server.d.ts.map +1 -0
- package/dist/plugin/dev-server/restartWorker.server.js +88 -0
- package/dist/plugin/dev-server/types.d.ts +38 -0
- package/dist/plugin/dev-server/types.d.ts.map +1 -0
- package/dist/plugin/dev-server/virtualRscHmrPlugin.d.ts +7 -0
- package/dist/plugin/dev-server/virtualRscHmrPlugin.d.ts.map +1 -0
- package/dist/plugin/dev-server/virtualRscHmrPlugin.js +80 -0
- package/dist/plugin/env/createConfigEnv.d.ts +7 -1
- package/dist/plugin/env/createConfigEnv.d.ts.map +1 -1
- package/dist/plugin/env/createConfigEnv.js +18 -5
- package/dist/plugin/env/createEnvPlugin.d.ts +3 -0
- package/dist/plugin/env/createEnvPlugin.d.ts.map +1 -0
- package/dist/plugin/env/createEnvPlugin.js +59 -0
- package/dist/plugin/env/getArgValue.js +47 -27
- package/dist/plugin/env/getEnvKey.d.ts +6 -0
- package/dist/plugin/env/getEnvKey.d.ts.map +1 -1
- package/dist/plugin/env/getEnvKey.js +11 -3
- package/dist/plugin/env/index.d.ts +2 -0
- package/dist/plugin/env/index.d.ts.map +1 -1
- package/dist/plugin/env/index.js +4 -0
- package/dist/plugin/env/plugin.client.d.ts +2 -0
- package/dist/plugin/env/plugin.client.d.ts.map +1 -0
- package/dist/plugin/env/plugin.client.js +2 -0
- package/dist/plugin/env/plugin.d.ts +4 -34
- package/dist/plugin/env/plugin.d.ts.map +1 -1
- package/dist/plugin/env/plugin.js +31 -64
- package/dist/plugin/env/plugin.server.d.ts +2 -0
- package/dist/plugin/env/plugin.server.d.ts.map +1 -0
- package/dist/plugin/env/plugin.server.js +2 -0
- package/dist/plugin/env/userConfigEnv.js +9 -18
- package/dist/plugin/environments/createBuildEventPlugin.d.ts +4 -0
- package/dist/plugin/environments/createBuildEventPlugin.d.ts.map +1 -0
- package/dist/plugin/environments/createBuildEventPlugin.js +100 -0
- package/dist/plugin/environments/createEnvironmentPlugin.d.ts +19 -0
- package/dist/plugin/environments/createEnvironmentPlugin.d.ts.map +1 -0
- package/dist/plugin/environments/createEnvironmentPlugin.js +257 -0
- package/dist/plugin/environments/hashCoordination.d.ts +14 -0
- package/dist/plugin/environments/hashCoordination.d.ts.map +1 -0
- package/dist/plugin/environments/hashCoordination.js +35 -0
- package/dist/plugin/environments/resolveEnvironmentConfig.d.ts +41 -0
- package/dist/plugin/environments/resolveEnvironmentConfig.d.ts.map +1 -0
- package/dist/plugin/environments/resolveEnvironmentConfig.js +232 -0
- package/dist/plugin/error/assertPanic.d.ts +2 -0
- package/dist/plugin/error/assertPanic.d.ts.map +1 -0
- package/dist/plugin/error/assertPanic.js +15 -0
- package/dist/plugin/error/handleError.d.ts +9 -0
- package/dist/plugin/error/handleError.d.ts.map +1 -0
- package/dist/plugin/error/handleError.js +51 -0
- package/dist/plugin/error/index.d.ts +3 -0
- package/dist/plugin/error/index.d.ts.map +1 -1
- package/dist/plugin/error/index.js +4 -1
- package/dist/plugin/error/logError.d.ts +6 -2
- package/dist/plugin/error/logError.d.ts.map +1 -1
- package/dist/plugin/error/logError.js +34 -36
- package/dist/plugin/error/panicThresholdHandler.d.ts +27 -0
- package/dist/plugin/error/panicThresholdHandler.d.ts.map +1 -0
- package/dist/plugin/error/panicThresholdHandler.js +13 -0
- package/dist/plugin/error/serializeError.d.ts +6 -2
- package/dist/plugin/error/serializeError.d.ts.map +1 -1
- package/dist/plugin/error/serializeError.js +30 -10
- package/dist/plugin/error/serializeErrorInfo.d.ts +5 -0
- package/dist/plugin/error/serializeErrorInfo.d.ts.map +1 -0
- package/dist/plugin/error/serializeErrorInfo.js +19 -0
- package/dist/plugin/error/setupGlobalErrorHandler.d.ts +4 -0
- package/dist/plugin/error/setupGlobalErrorHandler.d.ts.map +1 -0
- package/dist/plugin/error/setupGlobalErrorHandler.js +52 -0
- package/dist/plugin/error/shouldPanic.d.ts +6 -0
- package/dist/plugin/error/shouldPanic.d.ts.map +1 -0
- package/dist/plugin/error/shouldPanic.js +15 -0
- package/dist/plugin/error/toError.d.ts +5 -1
- package/dist/plugin/error/toError.d.ts.map +1 -1
- package/dist/plugin/error/toError.js +43 -19
- package/dist/plugin/error/types.d.ts +28 -0
- package/dist/plugin/error/types.d.ts.map +1 -0
- package/dist/plugin/error/types.js +1 -0
- package/dist/plugin/helpers/collectManifestCss.d.ts.map +1 -1
- package/dist/plugin/helpers/collectManifestCss.js +19 -5
- package/dist/plugin/helpers/collectViteModuleGraphCss.d.ts +3 -3
- package/dist/plugin/helpers/collectViteModuleGraphCss.d.ts.map +1 -1
- package/dist/plugin/helpers/collectViteModuleGraphCss.js +64 -3
- package/dist/plugin/helpers/createBufferedRscStream.d.ts +52 -0
- package/dist/plugin/helpers/createBufferedRscStream.d.ts.map +1 -0
- package/dist/plugin/helpers/createBufferedRscStream.js +147 -0
- package/dist/plugin/helpers/createCssProps.d.ts.map +1 -1
- package/dist/plugin/helpers/createCssProps.js +15 -14
- package/dist/plugin/helpers/createElementWithReact.d.ts +9 -0
- package/dist/plugin/helpers/createElementWithReact.d.ts.map +1 -0
- package/dist/plugin/helpers/createElementWithReact.js +87 -0
- package/dist/plugin/helpers/createPatternMatcher.d.ts +24 -0
- package/dist/plugin/helpers/createPatternMatcher.d.ts.map +1 -0
- package/dist/plugin/helpers/createPatternMatcher.js +50 -0
- package/dist/plugin/helpers/createRscRenderHelpers.d.ts +16 -0
- package/dist/plugin/helpers/createRscRenderHelpers.d.ts.map +1 -0
- package/dist/plugin/helpers/createRscRenderHelpers.js +60 -0
- package/dist/plugin/helpers/createSafePageComponent.d.ts +36 -0
- package/dist/plugin/helpers/createSafePageComponent.d.ts.map +1 -0
- package/dist/plugin/helpers/createSafePageComponent.js +50 -0
- package/dist/plugin/helpers/createSerializableHandlerOptions.d.ts +60 -0
- package/dist/plugin/helpers/createSerializableHandlerOptions.d.ts.map +1 -0
- package/dist/plugin/helpers/createSerializableHandlerOptions.js +94 -0
- package/dist/plugin/helpers/createSharedLoader.d.ts +44 -0
- package/dist/plugin/helpers/createSharedLoader.d.ts.map +1 -0
- package/dist/plugin/helpers/createSharedLoader.js +137 -0
- package/dist/plugin/helpers/createUnifiedCssProcessor.d.ts +70 -0
- package/dist/plugin/helpers/createUnifiedCssProcessor.d.ts.map +1 -0
- package/dist/plugin/helpers/createUnifiedCssProcessor.js +89 -0
- package/dist/plugin/helpers/getBundleManifest.d.ts.map +1 -1
- package/dist/plugin/helpers/getBundleManifest.js +2 -3
- package/dist/plugin/helpers/getRouteFiles.d.ts +1 -1
- package/dist/plugin/helpers/getRouteFiles.d.ts.map +1 -1
- package/dist/plugin/helpers/getRouteFiles.js +43 -41
- package/dist/plugin/helpers/handleServerAction.client.d.ts +29 -0
- package/dist/plugin/helpers/handleServerAction.client.d.ts.map +1 -0
- package/dist/plugin/helpers/handleServerAction.client.js +93 -0
- package/dist/plugin/helpers/handleServerAction.d.ts +2 -34
- package/dist/plugin/helpers/handleServerAction.d.ts.map +1 -1
- package/dist/plugin/helpers/handleServerAction.js +15 -45
- package/dist/plugin/helpers/handleServerAction.server.d.ts +25 -0
- package/dist/plugin/helpers/handleServerAction.server.d.ts.map +1 -0
- package/dist/plugin/helpers/handleServerAction.server.js +80 -0
- package/dist/plugin/helpers/handleServerActionHelper.d.ts +61 -0
- package/dist/plugin/helpers/handleServerActionHelper.d.ts.map +1 -0
- package/dist/plugin/helpers/handleServerActionHelper.js +183 -0
- package/dist/plugin/helpers/headlessStreamReuseHandler.d.ts +12 -0
- package/dist/plugin/helpers/headlessStreamReuseHandler.d.ts.map +1 -0
- package/dist/plugin/helpers/headlessStreamReuseHandler.js +29 -0
- package/dist/plugin/helpers/headlessStreamState.d.ts +71 -0
- package/dist/plugin/helpers/headlessStreamState.d.ts.map +1 -0
- package/dist/plugin/helpers/headlessStreamState.js +81 -0
- package/dist/plugin/helpers/hydrateUserOptions.d.ts +1 -1
- package/dist/plugin/helpers/hydrateUserOptions.d.ts.map +1 -1
- package/dist/plugin/helpers/hydrateUserOptions.js +2 -2
- package/dist/plugin/helpers/index.d.ts +12 -5
- package/dist/plugin/helpers/index.d.ts.map +1 -1
- package/dist/plugin/helpers/index.js +18 -4
- package/dist/plugin/helpers/logRenderStart.d.ts +17 -0
- package/dist/plugin/helpers/logRenderStart.d.ts.map +1 -0
- package/dist/plugin/helpers/logRenderStart.js +13 -0
- package/dist/plugin/helpers/mergeMessageWithDefaults.d.ts +90 -0
- package/dist/plugin/helpers/mergeMessageWithDefaults.d.ts.map +1 -0
- package/dist/plugin/helpers/mergeMessageWithDefaults.js +67 -0
- package/dist/plugin/helpers/pipeToResponse.d.ts +19 -0
- package/dist/plugin/helpers/pipeToResponse.d.ts.map +1 -0
- package/dist/plugin/helpers/pipeToResponse.js +55 -0
- package/dist/plugin/helpers/requestInfo.d.ts +2 -0
- package/dist/plugin/helpers/requestInfo.d.ts.map +1 -1
- package/dist/plugin/helpers/requestInfo.js +6 -2
- package/dist/plugin/helpers/resolveComponents.client.d.ts +34 -0
- package/dist/plugin/helpers/resolveComponents.client.d.ts.map +1 -0
- package/dist/plugin/helpers/resolveComponents.client.js +126 -0
- package/dist/plugin/helpers/resolveModuleFromManifest.d.ts +36 -0
- package/dist/plugin/helpers/resolveModuleFromManifest.d.ts.map +1 -0
- package/dist/plugin/helpers/resolveModuleFromManifest.js +60 -0
- package/dist/plugin/helpers/resolvePageAndProps.d.ts +23 -2
- package/dist/plugin/helpers/resolvePageAndProps.d.ts.map +1 -1
- package/dist/plugin/helpers/resolvePageAndProps.js +150 -9
- package/dist/plugin/helpers/resolveRenderUrl.d.ts +11 -0
- package/dist/plugin/helpers/resolveRenderUrl.d.ts.map +1 -0
- package/dist/plugin/helpers/resolveRenderUrl.js +19 -0
- package/dist/plugin/helpers/resolveStreamElements.client.d.ts +14 -0
- package/dist/plugin/helpers/resolveStreamElements.client.d.ts.map +1 -0
- package/dist/plugin/helpers/resolveStreamElements.client.js +36 -0
- package/dist/plugin/helpers/resolveStreamElements.d.ts +3 -0
- package/dist/plugin/helpers/resolveStreamElements.d.ts.map +1 -0
- package/dist/plugin/helpers/resolveStreamElements.js +13 -0
- package/dist/plugin/helpers/resolveStreamElements.server.d.ts +15 -0
- package/dist/plugin/helpers/resolveStreamElements.server.d.ts.map +1 -0
- package/dist/plugin/helpers/resolveStreamElements.server.js +35 -0
- package/dist/plugin/helpers/resolveStreamElements.types.d.ts +22 -0
- package/dist/plugin/helpers/resolveStreamElements.types.d.ts.map +1 -0
- package/dist/plugin/helpers/resolveStreamElements.types.js +1 -0
- package/dist/plugin/helpers/resolveVirtualAndNodeModules.d.ts +15 -0
- package/dist/plugin/helpers/resolveVirtualAndNodeModules.d.ts.map +1 -0
- package/dist/plugin/helpers/resolveVirtualAndNodeModules.js +45 -0
- package/dist/plugin/helpers/resolveWithDefaultRootAndHtml.d.ts +18 -0
- package/dist/plugin/helpers/resolveWithDefaultRootAndHtml.d.ts.map +1 -0
- package/dist/plugin/helpers/resolveWithDefaultRootAndHtml.js +17 -0
- package/dist/plugin/helpers/serializeUserOptions.d.ts +2 -2
- package/dist/plugin/helpers/serializeUserOptions.d.ts.map +1 -1
- package/dist/plugin/helpers/serializeUserOptions.js +28 -13
- package/dist/plugin/helpers/tryManifest.d.ts +2 -2
- package/dist/plugin/helpers/tryManifest.d.ts.map +1 -1
- package/dist/plugin/helpers/tryManifest.js +12 -6
- package/dist/plugin/helpers/validateRscRenderMessage.d.ts +9 -0
- package/dist/plugin/helpers/validateRscRenderMessage.d.ts.map +1 -0
- package/dist/plugin/helpers/validateRscRenderMessage.js +13 -0
- package/dist/plugin/helpers/workerCleanup.d.ts +29 -0
- package/dist/plugin/helpers/workerCleanup.d.ts.map +1 -0
- package/dist/plugin/helpers/workerCleanup.js +28 -0
- package/dist/plugin/helpers/workerManager.d.ts +5 -0
- package/dist/plugin/helpers/workerManager.d.ts.map +1 -0
- package/dist/plugin/helpers/workerManager.js +18 -0
- package/dist/plugin/index.d.ts +4 -1
- package/dist/plugin/index.d.ts.map +1 -1
- package/dist/plugin/index.js +5 -2
- package/dist/plugin/loader/createDefaultLoader.d.ts +1 -1
- package/dist/plugin/loader/createDefaultLoader.d.ts.map +1 -1
- package/dist/plugin/loader/createDefaultLoader.js +2 -22
- package/dist/plugin/loader/createTransformer.d.ts.map +1 -1
- package/dist/plugin/loader/createTransformer.js +155 -25
- package/dist/plugin/loader/directives/analyzeDirectives.d.ts +3 -2
- package/dist/plugin/loader/directives/analyzeDirectives.d.ts.map +1 -1
- package/dist/plugin/loader/directives/analyzeDirectives.js +53 -26
- package/dist/plugin/loader/directives/analyzeModule.d.ts.map +1 -1
- package/dist/plugin/loader/directives/analyzeModule.js +16 -9
- package/dist/plugin/loader/env-loader.js +2 -2
- package/dist/plugin/loader/react-loader.d.ts +4 -4
- package/dist/plugin/loader/react-loader.d.ts.map +1 -1
- package/dist/plugin/loader/react-loader.js +101 -73
- package/dist/plugin/loader/transformClientModule.d.ts +3 -3
- package/dist/plugin/loader/transformClientModule.d.ts.map +1 -1
- package/dist/plugin/loader/transformClientModule.js +63 -18
- package/dist/plugin/loader/transformModule.d.ts.map +1 -1
- package/dist/plugin/loader/transformModule.js +80 -16
- package/dist/plugin/loader/transformModuleIfNeeded.d.ts +6 -1
- package/dist/plugin/loader/transformModuleIfNeeded.d.ts.map +1 -1
- package/dist/plugin/loader/transformModuleIfNeeded.js +10 -18
- package/dist/plugin/loader/transformNonServerEnvironment.d.ts +1 -1
- package/dist/plugin/loader/transformNonServerEnvironment.d.ts.map +1 -1
- package/dist/plugin/loader/transformNonServerEnvironment.js +14 -12
- package/dist/plugin/loader/transformServerModule.d.ts +1 -1
- package/dist/plugin/loader/transformServerModule.d.ts.map +1 -1
- package/dist/plugin/loader/transformServerModule.js +54 -15
- package/dist/plugin/loader/types.d.ts +24 -7
- package/dist/plugin/loader/types.d.ts.map +1 -1
- package/dist/plugin/metrics/collectStreamMetrics.d.ts +1 -2
- package/dist/plugin/metrics/collectStreamMetrics.d.ts.map +1 -1
- package/dist/plugin/metrics/collectStreamMetrics.js +1 -1
- package/dist/plugin/metrics/convertStreamMetrics.d.ts +3 -0
- package/dist/plugin/metrics/convertStreamMetrics.d.ts.map +1 -0
- package/dist/plugin/metrics/convertStreamMetrics.js +26 -0
- package/dist/plugin/metrics/createModuleResolutionMetrics.d.ts +12 -0
- package/dist/plugin/metrics/createModuleResolutionMetrics.d.ts.map +1 -0
- package/dist/plugin/metrics/createModuleResolutionMetrics.js +32 -0
- package/dist/plugin/metrics/createRenderMetrics.d.ts +2 -2
- package/dist/plugin/metrics/createRenderMetrics.d.ts.map +1 -1
- package/dist/plugin/metrics/createRenderMetrics.js +45 -13
- package/dist/plugin/metrics/createStreamMetrics.d.ts +2 -2
- package/dist/plugin/metrics/createStreamMetrics.d.ts.map +1 -1
- package/dist/plugin/metrics/createStreamMetrics.js +15 -4
- package/dist/plugin/metrics/createWorkerStartupMetrics.d.ts +12 -0
- package/dist/plugin/metrics/createWorkerStartupMetrics.d.ts.map +1 -0
- package/dist/plugin/metrics/createWorkerStartupMetrics.js +14 -0
- package/dist/plugin/metrics/formatMetrics.d.ts +0 -6
- package/dist/plugin/metrics/formatMetrics.d.ts.map +1 -1
- package/dist/plugin/metrics/formatMetrics.js +7 -29
- package/dist/plugin/metrics/index.d.ts +6 -3
- package/dist/plugin/metrics/index.d.ts.map +1 -1
- package/dist/plugin/metrics/index.js +6 -3
- package/dist/plugin/metrics/metricWatcher.d.ts +9 -0
- package/dist/plugin/metrics/metricWatcher.d.ts.map +1 -0
- package/dist/plugin/metrics/metricWatcher.js +141 -0
- package/dist/plugin/metrics/types.d.ts +72 -6
- package/dist/plugin/metrics/types.d.ts.map +1 -1
- package/dist/plugin/orchestrator/createPluginOrchestrator.client.d.ts +3 -0
- package/dist/plugin/orchestrator/createPluginOrchestrator.client.d.ts.map +1 -0
- package/dist/plugin/orchestrator/createPluginOrchestrator.client.js +36 -0
- package/dist/plugin/orchestrator/createPluginOrchestrator.d.ts +19 -0
- package/dist/plugin/orchestrator/createPluginOrchestrator.d.ts.map +1 -0
- package/dist/plugin/orchestrator/createPluginOrchestrator.js +13 -0
- package/dist/plugin/orchestrator/createPluginOrchestrator.server.d.ts +3 -0
- package/dist/plugin/orchestrator/createPluginOrchestrator.server.d.ts.map +1 -0
- package/dist/plugin/orchestrator/createPluginOrchestrator.server.js +44 -0
- package/dist/plugin/orchestrator/index.d.ts +2 -0
- package/dist/plugin/orchestrator/index.d.ts.map +1 -0
- package/dist/plugin/orchestrator/index.js +1 -0
- package/dist/plugin/orchestrator/plugin.js +7 -0
- package/dist/plugin/orchestrator/resolveStrategy.d.ts +19 -0
- package/dist/plugin/orchestrator/resolveStrategy.d.ts.map +1 -0
- package/dist/plugin/orchestrator/resolveStrategy.js +35 -0
- package/dist/plugin/orchestrator/types.d.ts +21 -0
- package/dist/plugin/orchestrator/types.d.ts.map +1 -0
- package/dist/plugin/orchestrator/types.js +1 -0
- package/dist/plugin/plugin.client.d.ts +11 -19
- package/dist/plugin/plugin.client.d.ts.map +1 -1
- package/dist/plugin/plugin.client.js +20 -13
- package/dist/plugin/plugin.d.ts +2 -1
- package/dist/plugin/plugin.d.ts.map +1 -1
- package/dist/plugin/plugin.js +4 -2
- package/dist/plugin/plugin.server.d.ts +13 -11
- package/dist/plugin/plugin.server.d.ts.map +1 -1
- package/dist/plugin/plugin.server.js +19 -18
- package/dist/plugin/process-env.d.ts +1 -0
- package/dist/plugin/process-env.d.ts.map +1 -1
- package/dist/plugin/react-client/createMessageHandlers.d.ts +2 -10
- package/dist/plugin/react-client/createMessageHandlers.d.ts.map +1 -1
- package/dist/plugin/react-client/createMessageHandlers.js +42 -69
- package/dist/plugin/react-client/index.client.d.ts +2 -0
- package/dist/plugin/react-client/index.client.d.ts.map +1 -0
- package/dist/plugin/react-client/index.client.js +1 -0
- package/dist/plugin/react-client/index.d.ts +3 -4
- package/dist/plugin/react-client/index.d.ts.map +1 -1
- package/dist/plugin/react-client/index.js +10 -5
- package/dist/plugin/react-client/index.server.d.ts +2 -0
- package/dist/plugin/react-client/index.server.d.ts.map +1 -0
- package/dist/plugin/react-client/index.server.js +1 -0
- package/dist/plugin/react-client/plugin.client.d.ts +15 -0
- package/dist/plugin/react-client/plugin.client.d.ts.map +1 -0
- package/dist/plugin/react-client/plugin.client.js +98 -0
- package/dist/plugin/react-client/plugin.d.ts +2 -5
- package/dist/plugin/react-client/plugin.d.ts.map +1 -1
- package/dist/plugin/react-client/plugin.js +6 -121
- package/dist/plugin/react-client/plugin.server.d.ts +15 -0
- package/dist/plugin/react-client/plugin.server.d.ts.map +1 -0
- package/dist/plugin/react-client/plugin.server.js +93 -0
- package/dist/plugin/react-client/types.d.ts +60 -0
- package/dist/plugin/react-client/types.d.ts.map +1 -0
- package/dist/plugin/react-client/types.js +1 -0
- package/dist/plugin/react-server/index.client.d.ts +2 -0
- package/dist/plugin/react-server/index.client.d.ts.map +1 -0
- package/dist/plugin/react-server/index.client.js +1 -0
- package/dist/plugin/react-server/index.d.ts +3 -1
- package/dist/plugin/react-server/index.d.ts.map +1 -1
- package/dist/plugin/react-server/index.js +13 -1
- package/dist/plugin/react-server/index.server.d.ts +2 -0
- package/dist/plugin/react-server/index.server.d.ts.map +1 -0
- package/dist/plugin/react-server/index.server.js +1 -0
- package/dist/plugin/react-server/plugin.client.d.ts +3 -0
- package/dist/plugin/react-server/plugin.client.d.ts.map +1 -0
- package/dist/plugin/react-server/plugin.client.js +40 -0
- package/dist/plugin/react-server/plugin.d.ts +2 -5
- package/dist/plugin/react-server/plugin.d.ts.map +1 -1
- package/dist/plugin/react-server/plugin.js +5 -143
- package/dist/plugin/react-server/plugin.server.d.ts +3 -0
- package/dist/plugin/react-server/plugin.server.d.ts.map +1 -0
- package/dist/plugin/react-server/plugin.server.js +18 -0
- package/dist/plugin/react-server/types.d.ts +11 -0
- package/dist/plugin/react-server/types.d.ts.map +1 -0
- package/dist/plugin/react-server/types.js +1 -0
- package/dist/plugin/react-static/collectHtmlContent.d.ts +15 -0
- package/dist/plugin/react-static/collectHtmlContent.d.ts.map +1 -0
- package/dist/plugin/react-static/collectHtmlContent.js +104 -0
- package/dist/plugin/react-static/collectRscContent.d.ts +10 -15
- package/dist/plugin/react-static/collectRscContent.d.ts.map +1 -1
- package/dist/plugin/react-static/collectRscContent.js +71 -20
- package/dist/plugin/react-static/configurePreviewServer.d.ts +1 -7
- package/dist/plugin/react-static/configurePreviewServer.d.ts.map +1 -1
- package/dist/plugin/react-static/configurePreviewServer.js +3 -6
- package/dist/plugin/react-static/createBuildLoader.client.d.ts +2 -0
- package/dist/plugin/react-static/createBuildLoader.client.d.ts.map +1 -0
- package/dist/plugin/react-static/createBuildLoader.client.js +7 -0
- package/dist/plugin/react-static/createBuildLoader.d.ts +3 -19
- package/dist/plugin/react-static/createBuildLoader.d.ts.map +1 -1
- package/dist/plugin/react-static/createBuildLoader.js +4 -226
- package/dist/plugin/react-static/createBuildLoader.server.d.ts +9 -0
- package/dist/plugin/react-static/createBuildLoader.server.d.ts.map +1 -0
- package/dist/plugin/react-static/createBuildLoader.server.js +253 -0
- package/dist/plugin/react-static/fileWriter.d.ts +3 -14
- package/dist/plugin/react-static/fileWriter.d.ts.map +1 -1
- package/dist/plugin/react-static/fileWriter.js +233 -42
- package/dist/plugin/react-static/index.client.d.ts +7 -0
- package/dist/plugin/react-static/index.client.d.ts.map +1 -0
- package/dist/plugin/react-static/index.client.js +6 -0
- package/dist/plugin/react-static/index.d.ts +7 -1
- package/dist/plugin/react-static/index.d.ts.map +1 -1
- package/dist/plugin/react-static/index.js +19 -1
- package/dist/plugin/react-static/index.server.d.ts +7 -0
- package/dist/plugin/react-static/index.server.d.ts.map +1 -0
- package/dist/plugin/react-static/index.server.js +6 -0
- package/dist/plugin/react-static/plugin.client.d.ts +32 -0
- package/dist/plugin/react-static/plugin.client.d.ts.map +1 -0
- package/dist/plugin/react-static/plugin.client.js +801 -0
- package/dist/plugin/react-static/plugin.d.ts +3 -20
- package/dist/plugin/react-static/plugin.d.ts.map +1 -1
- package/dist/plugin/react-static/plugin.js +4 -365
- package/dist/plugin/react-static/plugin.server.d.ts +18 -0
- package/dist/plugin/react-static/plugin.server.d.ts.map +1 -0
- package/dist/plugin/react-static/plugin.server.js +615 -0
- package/dist/plugin/react-static/processCssFilesForPages.d.ts +16 -0
- package/dist/plugin/react-static/processCssFilesForPages.d.ts.map +1 -0
- package/dist/plugin/react-static/processCssFilesForPages.js +94 -0
- package/dist/plugin/react-static/renderPage.client.d.ts +49 -0
- package/dist/plugin/react-static/renderPage.client.d.ts.map +1 -0
- package/dist/plugin/react-static/renderPage.client.js +555 -0
- package/dist/plugin/react-static/renderPage.d.ts +3 -4
- package/dist/plugin/react-static/renderPage.d.ts.map +1 -1
- package/dist/plugin/react-static/renderPage.js +6 -119
- package/dist/plugin/react-static/renderPage.server.d.ts +24 -0
- package/dist/plugin/react-static/renderPage.server.d.ts.map +1 -0
- package/dist/plugin/react-static/renderPage.server.js +533 -0
- package/dist/plugin/react-static/renderPages.d.ts +11 -3
- package/dist/plugin/react-static/renderPages.d.ts.map +1 -1
- package/dist/plugin/react-static/renderPages.js +533 -92
- package/dist/plugin/react-static/renderPagesBatched.d.ts +6 -0
- package/dist/plugin/react-static/renderPagesBatched.d.ts.map +1 -0
- package/dist/plugin/react-static/renderPagesBatched.js +195 -0
- package/dist/plugin/react-static/renderStreams.d.ts +2 -5
- package/dist/plugin/react-static/renderStreams.d.ts.map +1 -1
- package/dist/plugin/react-static/renderStreams.js +36 -24
- package/dist/plugin/react-static/rscToHtmlStream.client.d.ts +12 -0
- package/dist/plugin/react-static/rscToHtmlStream.client.d.ts.map +1 -0
- package/dist/plugin/react-static/rscToHtmlStream.client.js +32 -0
- package/dist/plugin/react-static/rscToHtmlStream.d.ts +3 -21
- package/dist/plugin/react-static/rscToHtmlStream.d.ts.map +1 -1
- package/dist/plugin/react-static/rscToHtmlStream.js +4 -53
- package/dist/plugin/react-static/rscToHtmlStream.server.d.ts +3 -0
- package/dist/plugin/react-static/rscToHtmlStream.server.d.ts.map +1 -0
- package/dist/plugin/react-static/rscToHtmlStream.server.js +39 -0
- package/dist/plugin/react-static/temporaryReferences.client.d.ts +2 -0
- package/dist/plugin/react-static/temporaryReferences.client.d.ts.map +1 -0
- package/dist/plugin/react-static/temporaryReferences.client.js +1 -0
- package/dist/plugin/react-static/temporaryReferences.d.ts +2 -1
- package/dist/plugin/react-static/temporaryReferences.d.ts.map +1 -1
- package/dist/plugin/react-static/temporaryReferences.js +6 -10
- package/dist/plugin/react-static/temporaryReferences.server.d.ts +2 -0
- package/dist/plugin/react-static/temporaryReferences.server.d.ts.map +1 -0
- package/dist/plugin/react-static/temporaryReferences.server.js +3 -0
- package/dist/plugin/react-static/types.d.ts +83 -9
- package/dist/plugin/react-static/types.d.ts.map +1 -1
- package/dist/plugin/root.d.ts.map +1 -1
- package/dist/plugin/root.js +2 -5
- package/dist/plugin/stream/MessagePortReadable.d.ts +22 -0
- package/dist/plugin/stream/MessagePortReadable.d.ts.map +1 -0
- package/dist/plugin/stream/MessagePortReadable.js +101 -0
- package/dist/plugin/stream/MessagePortWritable.d.ts +22 -0
- package/dist/plugin/stream/MessagePortWritable.d.ts.map +1 -0
- package/dist/plugin/stream/MessagePortWritable.js +85 -0
- package/dist/plugin/stream/client.js +12 -0
- package/dist/plugin/stream/createFromNodeStream.client.d.ts +9 -0
- package/dist/plugin/stream/createFromNodeStream.client.d.ts.map +1 -0
- package/dist/plugin/stream/createFromNodeStream.client.js +76 -0
- package/dist/plugin/stream/createFromNodeStream.d.ts +3 -0
- package/dist/plugin/stream/createFromNodeStream.d.ts.map +1 -0
- package/dist/plugin/stream/createFromNodeStream.js +6 -0
- package/dist/plugin/stream/createFromNodeStream.server.d.ts +9 -0
- package/dist/plugin/stream/createFromNodeStream.server.d.ts.map +1 -0
- package/dist/plugin/stream/createFromNodeStream.server.js +27 -0
- package/dist/plugin/stream/createFromNodeStream.types.d.ts +37 -0
- package/dist/plugin/stream/createFromNodeStream.types.d.ts.map +1 -0
- package/dist/plugin/stream/createFromNodeStream.types.js +1 -0
- package/dist/plugin/stream/createHtmlStream.client.d.ts +3 -0
- package/dist/plugin/stream/createHtmlStream.client.d.ts.map +1 -0
- package/dist/plugin/stream/createHtmlStream.client.js +42 -0
- package/dist/plugin/stream/createHtmlStream.d.ts +3 -0
- package/dist/plugin/stream/createHtmlStream.d.ts.map +1 -0
- package/dist/plugin/stream/createHtmlStream.js +6 -0
- package/dist/plugin/stream/createHtmlStream.server.d.ts +6 -0
- package/dist/plugin/stream/createHtmlStream.server.d.ts.map +1 -0
- package/dist/plugin/stream/createHtmlStream.server.js +224 -0
- package/dist/plugin/stream/createHtmlStream.types.d.ts +43 -0
- package/dist/plugin/stream/createHtmlStream.types.d.ts.map +1 -0
- package/dist/plugin/stream/createHtmlStream.types.js +1 -0
- package/dist/plugin/stream/createMainThreadHandlers.d.ts +11 -0
- package/dist/plugin/stream/createMainThreadHandlers.d.ts.map +1 -0
- package/dist/plugin/stream/createMainThreadHandlers.js +32 -0
- package/dist/plugin/stream/createMessageChannels.d.ts +29 -0
- package/dist/plugin/stream/createMessageChannels.d.ts.map +1 -0
- package/dist/plugin/stream/createMessageChannels.js +35 -0
- package/dist/plugin/stream/createRenderToPipeableStreamHandler.client.d.ts +10 -0
- package/dist/plugin/stream/createRenderToPipeableStreamHandler.client.d.ts.map +1 -0
- package/dist/plugin/stream/createRenderToPipeableStreamHandler.client.js +188 -0
- package/dist/plugin/stream/createRenderToPipeableStreamHandler.d.ts +3 -0
- package/dist/plugin/stream/createRenderToPipeableStreamHandler.d.ts.map +1 -0
- package/dist/plugin/stream/createRenderToPipeableStreamHandler.js +6 -0
- package/dist/plugin/stream/createRenderToPipeableStreamHandler.server.d.ts +45 -0
- package/dist/plugin/stream/createRenderToPipeableStreamHandler.server.d.ts.map +1 -0
- package/dist/plugin/stream/createRenderToPipeableStreamHandler.server.js +249 -0
- package/dist/plugin/stream/createRenderToPipeableStreamHandler.types.d.ts +17 -0
- package/dist/plugin/stream/createRenderToPipeableStreamHandler.types.d.ts.map +1 -0
- package/dist/plugin/stream/createRenderToPipeableStreamHandler.types.js +1 -0
- package/dist/plugin/stream/createRscStream.client.d.ts +18 -0
- package/dist/plugin/stream/createRscStream.client.d.ts.map +1 -0
- package/dist/plugin/stream/createRscStream.client.js +79 -0
- package/dist/plugin/stream/createRscStream.d.ts +2 -0
- package/dist/plugin/stream/createRscStream.d.ts.map +1 -0
- package/dist/plugin/stream/createRscStream.js +13 -0
- package/dist/plugin/stream/createRscStream.server.d.ts +46 -0
- package/dist/plugin/stream/createRscStream.server.d.ts.map +1 -0
- package/dist/plugin/stream/createRscStream.server.js +113 -0
- package/dist/plugin/stream/createRscStream.types.d.ts +134 -0
- package/dist/plugin/stream/createRscStream.types.d.ts.map +1 -0
- package/dist/plugin/stream/createRscStream.types.js +1 -0
- package/dist/plugin/stream/createRscStream.utils.d.ts +54 -0
- package/dist/plugin/stream/createRscStream.utils.d.ts.map +1 -0
- package/dist/plugin/stream/createRscStream.utils.js +91 -0
- package/dist/plugin/stream/createRscWorkerStream.d.ts +41 -0
- package/dist/plugin/stream/createRscWorkerStream.d.ts.map +1 -0
- package/dist/plugin/stream/createRscWorkerStream.js +120 -0
- package/dist/plugin/stream/handleRscStream.client.d.ts +17 -0
- package/dist/plugin/stream/handleRscStream.client.d.ts.map +1 -0
- package/dist/plugin/stream/handleRscStream.client.js +163 -0
- package/dist/plugin/stream/handleRscStream.d.ts +3 -0
- package/dist/plugin/stream/handleRscStream.d.ts.map +1 -0
- package/dist/plugin/stream/handleRscStream.js +13 -0
- package/dist/plugin/stream/handleRscStream.server.d.ts +6 -0
- package/dist/plugin/stream/handleRscStream.server.d.ts.map +1 -0
- package/dist/plugin/stream/handleRscStream.server.js +70 -0
- package/dist/plugin/stream/handleRscStream.types.d.ts +28 -0
- package/dist/plugin/stream/handleRscStream.types.d.ts.map +1 -0
- package/dist/plugin/stream/handleRscStream.types.js +1 -0
- package/dist/plugin/stream/index.client.d.ts +7 -0
- package/dist/plugin/stream/index.client.d.ts.map +1 -0
- package/dist/plugin/stream/index.client.js +11 -0
- package/dist/plugin/stream/index.d.ts +95 -0
- package/dist/plugin/stream/index.d.ts.map +1 -0
- package/dist/plugin/stream/index.js +21 -0
- package/dist/plugin/stream/index.server.d.ts +7 -0
- package/dist/plugin/stream/index.server.d.ts.map +1 -0
- package/dist/plugin/stream/index.server.js +11 -0
- package/dist/plugin/stream/renderRscStream.server.d.ts +21 -0
- package/dist/plugin/stream/renderRscStream.server.d.ts.map +1 -0
- package/dist/plugin/stream/renderRscStream.server.js +153 -0
- package/dist/plugin/stream/renderRscStream.types.d.ts +36 -0
- package/dist/plugin/stream/renderRscStream.types.d.ts.map +1 -0
- package/dist/plugin/stream/renderRscStream.types.js +1 -0
- package/dist/plugin/stream/renderRscStreamHelpers.server.d.ts +9 -0
- package/dist/plugin/stream/renderRscStreamHelpers.server.d.ts.map +1 -0
- package/dist/plugin/stream/renderRscStreamHelpers.server.js +63 -0
- package/dist/plugin/stream/server.js +12 -0
- package/dist/plugin/stream/setMaxListeners.d.ts +16 -0
- package/dist/plugin/stream/setMaxListeners.d.ts.map +1 -0
- package/dist/plugin/stream/setMaxListeners.js +16 -0
- package/dist/plugin/transformer/createTransformerPlugin.d.ts +18 -0
- package/dist/plugin/transformer/createTransformerPlugin.d.ts.map +1 -0
- package/dist/plugin/transformer/createTransformerPlugin.js +269 -0
- package/dist/plugin/transformer/plugin.client.d.ts +2 -29
- package/dist/plugin/transformer/plugin.client.d.ts.map +1 -1
- package/dist/plugin/transformer/plugin.client.js +5 -96
- package/dist/plugin/transformer/plugin.server.d.ts +2 -29
- package/dist/plugin/transformer/plugin.server.d.ts.map +1 -1
- package/dist/plugin/transformer/plugin.server.js +5 -96
- package/dist/plugin/transformer/transformerEnv.d.ts +15 -0
- package/dist/plugin/transformer/transformerEnv.d.ts.map +1 -0
- package/dist/plugin/transformer/transformerEnv.js +26 -0
- package/dist/plugin/types.d.ts +366 -140
- package/dist/plugin/types.d.ts.map +1 -1
- package/dist/plugin/types.js +1 -2
- package/dist/plugin/utils/callServer.d.ts +1 -1
- package/dist/plugin/utils/callServer.d.ts.map +1 -1
- package/dist/plugin/utils/createCallServer.d.ts +1 -1
- package/dist/plugin/utils/createCallServer.d.ts.map +1 -1
- package/dist/plugin/utils/createCallServer.js +4 -9
- package/dist/plugin/utils/createReactFetcher.d.ts +43 -2
- package/dist/plugin/utils/createReactFetcher.d.ts.map +1 -1
- package/dist/plugin/utils/createReactFetcher.js +14 -3
- package/dist/plugin/utils/envUrls.node.js +11 -12
- package/dist/plugin/utils/index.client.d.ts +8 -0
- package/dist/plugin/utils/index.client.d.ts.map +1 -0
- package/dist/plugin/utils/index.client.js +8 -0
- package/dist/plugin/utils/index.d.ts +1 -0
- package/dist/plugin/utils/index.d.ts.map +1 -1
- package/dist/plugin/utils/index.js +3 -2
- package/dist/plugin/utils/index.server.d.ts +6 -0
- package/dist/plugin/utils/index.server.d.ts.map +1 -0
- package/dist/plugin/utils/index.server.js +8 -0
- package/dist/plugin/utils/routeToURL.d.ts.map +1 -1
- package/dist/plugin/utils/routeToURL.js +4 -4
- package/dist/plugin/utils/urls.d.ts +1 -1
- package/dist/plugin/utils/urls.d.ts.map +1 -1
- package/dist/plugin/utils/urls.js +29 -8
- package/dist/plugin/utils/useRscHmr.d.ts +39 -0
- package/dist/plugin/utils/useRscHmr.d.ts.map +1 -0
- package/dist/plugin/utils/useRscHmr.js +27 -0
- package/dist/plugin/vendor/vendor.client.d.ts +3 -3
- package/dist/plugin/vendor/vendor.client.d.ts.map +1 -1
- package/dist/plugin/vendor/vendor.client.js +7 -6
- package/dist/plugin/vendor/vendor.d.ts +1 -1
- package/dist/plugin/vendor/vendor.d.ts.map +1 -1
- package/dist/plugin/vendor/vendor.js +4 -6
- package/dist/plugin/vendor/vendor.server.d.ts +4 -2
- package/dist/plugin/vendor/vendor.server.d.ts.map +1 -1
- package/dist/plugin/vendor/vendor.server.js +2 -3
- package/dist/plugin/vendor/vendor.static.d.ts +4 -0
- package/dist/plugin/vendor/vendor.static.d.ts.map +1 -0
- package/dist/plugin/vendor/vendor.static.js +15 -0
- package/dist/plugin/worker/createWorker.d.ts +16 -5
- package/dist/plugin/worker/createWorker.d.ts.map +1 -1
- package/dist/plugin/worker/createWorker.js +207 -30
- package/dist/plugin/worker/html/handleHtmlRender.d.ts +14 -0
- package/dist/plugin/worker/html/handleHtmlRender.d.ts.map +1 -0
- package/dist/plugin/worker/html/handleHtmlRender.js +190 -0
- package/dist/plugin/worker/html/html-worker.development.js +9 -26
- package/dist/plugin/worker/html/html-worker.js +4 -4
- package/dist/plugin/worker/html/html-worker.production.js +7 -13
- package/dist/plugin/worker/html/index.d.ts +1 -1
- package/dist/plugin/worker/html/index.js +6 -2
- package/dist/plugin/worker/html/messageHandler.d.ts +1 -1
- package/dist/plugin/worker/html/messageHandler.d.ts.map +1 -1
- package/dist/plugin/worker/html/messageHandler.js +291 -104
- package/dist/plugin/worker/html/state.d.ts +10 -0
- package/dist/plugin/worker/html/state.d.ts.map +1 -0
- package/dist/plugin/worker/html/state.js +28 -0
- package/dist/plugin/worker/html/types.d.ts +52 -23
- package/dist/plugin/worker/html/types.d.ts.map +1 -1
- package/dist/plugin/worker/index.js +1 -1
- package/dist/plugin/worker/rsc/createBundleLoader.d.ts +22 -0
- package/dist/plugin/worker/rsc/createBundleLoader.d.ts.map +1 -0
- package/dist/plugin/worker/rsc/createBundleLoader.js +55 -0
- package/dist/plugin/worker/rsc/createRscWorkerLoader.d.ts +23 -0
- package/dist/plugin/worker/rsc/createRscWorkerLoader.d.ts.map +1 -0
- package/dist/plugin/worker/rsc/createRscWorkerLoader.js +79 -0
- package/dist/plugin/worker/rsc/handleRscRender.d.ts +32 -0
- package/dist/plugin/worker/rsc/handleRscRender.d.ts.map +1 -0
- package/dist/plugin/worker/rsc/handleRscRender.js +349 -0
- package/dist/plugin/worker/rsc/handlers.d.ts +8 -2
- package/dist/plugin/worker/rsc/handlers.d.ts.map +1 -1
- package/dist/plugin/worker/rsc/handlers.js +137 -200
- package/dist/plugin/worker/rsc/hydrateRscRenderMessage.d.ts +118 -0
- package/dist/plugin/worker/rsc/hydrateRscRenderMessage.d.ts.map +1 -0
- package/dist/plugin/worker/rsc/hydrateRscRenderMessage.js +61 -0
- package/dist/plugin/worker/rsc/messageHandler.d.ts +1 -1
- package/dist/plugin/worker/rsc/messageHandler.d.ts.map +1 -1
- package/dist/plugin/worker/rsc/messageHandler.js +927 -49
- package/dist/plugin/worker/rsc/rsc-worker.development.js +153 -148
- package/dist/plugin/worker/rsc/rsc-worker.js +2 -3
- package/dist/plugin/worker/rsc/rsc-worker.production.js +238 -42
- package/dist/plugin/worker/rsc/state.d.ts +6 -0
- package/dist/plugin/worker/rsc/state.d.ts.map +1 -1
- package/dist/plugin/worker/rsc/state.js +37 -5
- package/dist/plugin/worker/rsc/types.d.ts +73 -12
- package/dist/plugin/worker/rsc/types.d.ts.map +1 -1
- package/dist/plugin/worker/rsc/workerUserOptions.d.ts +10 -0
- package/dist/plugin/worker/rsc/workerUserOptions.d.ts.map +1 -0
- package/dist/plugin/worker/rsc/workerUserOptions.js +39 -0
- package/dist/plugin/worker/sendMessage.d.ts +2 -3
- package/dist/plugin/worker/sendMessage.d.ts.map +1 -1
- package/dist/plugin/worker/sendMessage.js +24 -38
- package/dist/plugin/worker/types.d.ts +42 -56
- package/dist/plugin/worker/types.d.ts.map +1 -1
- package/dist/plugin/worker/worker-handlers.server.d.ts +2 -0
- package/dist/plugin/worker/worker-handlers.server.d.ts.map +1 -0
- package/dist/plugin/worker/worker-handlers.server.js +1 -0
- package/dist/server.d.ts +5 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +4 -6
- package/dist/static.js +11 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +103 -28
- package/plugin/bundle/bundles.ts +22 -0
- package/plugin/bundle/deferredStaticGeneration.ts +48 -0
- package/plugin/bundle/manifests.ts +73 -0
- package/plugin/components/css.tsx +3 -7
- package/plugin/components/html.tsx +4 -3
- package/plugin/components/index.ts +1 -1
- package/plugin/components/root.tsx +3 -3
- package/plugin/config/autoDiscover/createGlobAutoDiscover.ts +10 -5
- package/plugin/config/autoDiscover/pageAndPropFiles.ts +4 -2
- package/plugin/config/autoDiscover/resolveAutoDiscover.ts +64 -79
- package/plugin/config/autoDiscover/resolveBuildPages.ts +181 -69
- package/plugin/config/createHandlerOptions.client.ts +403 -0
- package/plugin/config/createHandlerOptions.server.ts +477 -0
- package/plugin/config/createHandlerOptions.ts +46 -0
- package/plugin/config/createHandlerOptions.types.ts +119 -0
- package/plugin/config/createModuleID.ts +201 -10
- package/plugin/config/defaults.tsx +58 -9
- package/plugin/config/envPrefixFromConfig.ts +10 -0
- package/plugin/config/getCondition.ts +267 -10
- package/plugin/{getNodeEnv.ts → config/getNodeEnv.ts} +4 -2
- package/plugin/config/index.ts +60 -1
- package/plugin/config/resolveDirectiveMatcher.ts +13 -34
- package/plugin/config/resolveEnv.ts +3 -8
- package/plugin/config/resolveOptions.ts +295 -77
- package/plugin/config/resolvePages.ts +1 -1
- package/plugin/config/resolvePatternWithValues.ts +6 -26
- package/plugin/config/resolveUrlOption.ts +2 -2
- package/plugin/config/resolveUserConfig.ts +358 -133
- package/plugin/config/stashedOptionsState.ts +144 -0
- package/plugin/dev-server/cleanupServerAction.client.ts +47 -0
- package/plugin/dev-server/cleanupServerAction.server.ts +24 -0
- package/plugin/dev-server/cleanupServerAction.ts +8 -0
- package/plugin/dev-server/configureReactServer.client.ts +107 -0
- package/plugin/dev-server/configureReactServer.server.ts +558 -0
- package/plugin/dev-server/configureReactServer.ts +8 -0
- package/plugin/dev-server/configureRequestHandler.client.ts +382 -0
- package/plugin/dev-server/configureRequestHandler.server.ts +46 -0
- package/plugin/dev-server/configureRequestHandler.ts +8 -0
- package/plugin/dev-server/handleServerAction.client.ts +126 -0
- package/plugin/dev-server/handleServerAction.server.ts +10 -0
- package/plugin/dev-server/handleServerAction.ts +8 -0
- package/plugin/dev-server/index.client.ts +6 -0
- package/plugin/dev-server/index.server.ts +6 -0
- package/plugin/dev-server/index.ts +20 -0
- package/plugin/dev-server/plugin.client.ts +160 -0
- package/plugin/dev-server/plugin.server.ts +133 -0
- package/plugin/dev-server/restartWorker.client.ts +155 -0
- package/plugin/dev-server/restartWorker.server.ts +108 -0
- package/plugin/dev-server/restartWorker.ts +8 -0
- package/plugin/dev-server/types.ts +78 -0
- package/plugin/dev-server/virtualRscHmrPlugin.ts +82 -0
- package/plugin/env/createConfigEnv.ts +27 -8
- package/plugin/env/createEnvPlugin.ts +76 -0
- package/plugin/env/getArgValue.ts +1 -1
- package/plugin/env/getEnvKey.ts +20 -1
- package/plugin/env/index.ts +10 -0
- package/plugin/env/plugin.client.ts +3 -0
- package/plugin/env/plugin.server.ts +4 -0
- package/plugin/env/plugin.ts +48 -103
- package/plugin/environments/createBuildEventPlugin.ts +117 -0
- package/plugin/environments/createEnvironmentPlugin.ts +332 -0
- package/plugin/environments/hashCoordination.ts +39 -0
- package/plugin/environments/resolveEnvironmentConfig.ts +320 -0
- package/plugin/error/assertPanic.ts +9 -0
- package/plugin/error/handleError.ts +63 -0
- package/plugin/error/index.ts +4 -1
- package/plugin/error/logError.ts +63 -42
- package/plugin/error/panicThresholdHandler.ts +52 -0
- package/plugin/error/serializeError.ts +36 -11
- package/plugin/error/serializeErrorInfo.ts +17 -0
- package/plugin/error/setupGlobalErrorHandler.ts +71 -0
- package/plugin/error/shouldPanic.ts +14 -0
- package/plugin/error/toError.ts +59 -19
- package/plugin/error/types.ts +32 -0
- package/plugin/helpers/README.md +112 -0
- package/plugin/helpers/collectManifestCss.ts +24 -5
- package/plugin/helpers/collectViteModuleGraphCss.ts +83 -9
- package/plugin/helpers/createBufferedRscStream.ts +194 -0
- package/plugin/helpers/createCssProps.tsx +22 -19
- package/plugin/helpers/createElementWithReact.tsx +121 -0
- package/plugin/helpers/createPatternMatcher.ts +100 -0
- package/plugin/helpers/createRscRenderHelpers.ts +77 -0
- package/plugin/helpers/createSafePageComponent.ts +64 -0
- package/plugin/helpers/createSerializableHandlerOptions.ts +183 -0
- package/plugin/helpers/createSharedLoader.ts +207 -0
- package/plugin/helpers/createUnifiedCssProcessor.ts +175 -0
- package/plugin/helpers/getBundleManifest.ts +2 -3
- package/plugin/helpers/getRouteFiles.ts +28 -23
- package/plugin/helpers/handleServerAction.client.ts +145 -0
- package/plugin/helpers/handleServerAction.server.ts +151 -0
- package/plugin/helpers/handleServerAction.ts +19 -79
- package/plugin/helpers/handleServerActionHelper.ts +270 -0
- package/plugin/helpers/headlessStreamReuseHandler.ts +48 -0
- package/plugin/helpers/headlessStreamState.ts +122 -0
- package/plugin/helpers/hydrateUserOptions.ts +2 -2
- package/plugin/helpers/index.ts +32 -5
- package/plugin/helpers/logRenderStart.ts +26 -0
- package/plugin/helpers/mergeMessageWithDefaults.ts +80 -0
- package/plugin/helpers/pipeToResponse.ts +77 -0
- package/plugin/helpers/requestInfo.ts +9 -3
- package/plugin/helpers/resolveComponents.client.ts +183 -0
- package/plugin/helpers/resolveModuleFromManifest.ts +99 -0
- package/plugin/helpers/resolvePageAndProps.ts +237 -50
- package/plugin/helpers/resolveRenderUrl.ts +26 -0
- package/plugin/helpers/resolveStreamElements.client.ts +50 -0
- package/plugin/helpers/resolveStreamElements.server.ts +43 -0
- package/plugin/helpers/resolveStreamElements.ts +13 -0
- package/plugin/helpers/resolveStreamElements.types.ts +29 -0
- package/plugin/helpers/resolveVirtualAndNodeModules.ts +75 -0
- package/plugin/helpers/resolveWithDefaultRootAndHtml.ts +25 -0
- package/plugin/helpers/serializeUserOptions.ts +37 -15
- package/plugin/helpers/tryManifest.ts +15 -6
- package/plugin/helpers/validateRscRenderMessage.ts +13 -0
- package/plugin/helpers/workerCleanup.ts +85 -0
- package/plugin/helpers/workerManager.ts +16 -0
- package/plugin/index.ts +6 -2
- package/plugin/loader/createDefaultLoader.ts +0 -21
- package/plugin/loader/createTransformer.ts +231 -37
- package/plugin/loader/directives/analyzeDirectives.ts +163 -73
- package/plugin/loader/directives/analyzeModule.ts +18 -9
- package/plugin/loader/env-loader.ts +3 -3
- package/plugin/loader/react-loader.ts +133 -86
- package/plugin/loader/transformClientModule.ts +85 -23
- package/plugin/loader/transformModule.ts +101 -21
- package/plugin/loader/transformModuleIfNeeded.ts +20 -23
- package/plugin/loader/transformNonServerEnvironment.ts +21 -13
- package/plugin/loader/transformServerModule.ts +86 -22
- package/plugin/loader/types.ts +22 -7
- package/plugin/metrics/collectStreamMetrics.ts +1 -2
- package/plugin/metrics/convertStreamMetrics.ts +28 -0
- package/plugin/metrics/createModuleResolutionMetrics.ts +38 -0
- package/plugin/metrics/createRenderMetrics.ts +46 -13
- package/plugin/metrics/createStreamMetrics.ts +16 -6
- package/plugin/metrics/createWorkerStartupMetrics.ts +38 -0
- package/plugin/metrics/formatMetrics.ts +5 -33
- package/plugin/metrics/index.ts +6 -3
- package/plugin/metrics/metricWatcher.ts +216 -0
- package/plugin/metrics/types.ts +87 -8
- package/plugin/orchestrator/createPluginOrchestrator.client.ts +47 -0
- package/plugin/orchestrator/createPluginOrchestrator.server.ts +55 -0
- package/plugin/orchestrator/createPluginOrchestrator.ts +29 -0
- package/plugin/orchestrator/index.ts +1 -0
- package/plugin/orchestrator/resolveStrategy.ts +53 -0
- package/plugin/orchestrator/types.ts +24 -0
- package/plugin/plugin.client.ts +29 -34
- package/plugin/plugin.server.ts +36 -42
- package/plugin/plugin.ts +8 -2
- package/plugin/process-env.ts +3 -0
- package/plugin/react-client/createMessageHandlers.ts +9 -34
- package/plugin/react-client/index.client.ts +1 -0
- package/plugin/react-client/index.server.ts +1 -0
- package/plugin/react-client/index.ts +13 -4
- package/plugin/react-client/plugin.client.ts +124 -0
- package/plugin/react-client/plugin.server.ts +108 -0
- package/plugin/react-client/plugin.ts +13 -152
- package/plugin/react-client/types.ts +95 -0
- package/plugin/react-server/index.client.ts +1 -0
- package/plugin/react-server/index.server.ts +1 -0
- package/plugin/react-server/index.ts +13 -1
- package/plugin/react-server/plugin.client.ts +54 -0
- package/plugin/react-server/plugin.server.ts +27 -0
- package/plugin/react-server/plugin.ts +8 -183
- package/plugin/react-server/types.ts +24 -0
- package/plugin/react-static/collectHtmlContent.ts +131 -0
- package/plugin/react-static/collectRscContent.ts +92 -49
- package/plugin/react-static/configurePreviewServer.ts +8 -18
- package/plugin/react-static/createBuildLoader.client.ts +7 -0
- package/plugin/react-static/createBuildLoader.server.ts +333 -0
- package/plugin/react-static/createBuildLoader.ts +8 -300
- package/plugin/react-static/fileWriter.ts +303 -64
- package/plugin/react-static/index.client.ts +6 -0
- package/plugin/react-static/index.server.ts +6 -0
- package/plugin/react-static/index.ts +25 -1
- package/plugin/react-static/plugin.client.ts +932 -0
- package/plugin/react-static/plugin.server.ts +713 -0
- package/plugin/react-static/plugin.ts +8 -446
- package/plugin/react-static/processCssFilesForPages.ts +148 -0
- package/plugin/react-static/renderPage.client.ts +640 -0
- package/plugin/react-static/renderPage.server.ts +655 -0
- package/plugin/react-static/renderPage.ts +10 -160
- package/plugin/react-static/renderPages.ts +736 -139
- package/plugin/react-static/renderPagesBatched.ts +264 -0
- package/plugin/react-static/renderStreams.ts +12 -16
- package/plugin/react-static/rscToHtmlStream.client.ts +61 -0
- package/plugin/react-static/rscToHtmlStream.server.ts +66 -0
- package/plugin/react-static/rscToHtmlStream.ts +8 -80
- package/plugin/react-static/temporaryReferences.client.ts +1 -0
- package/plugin/react-static/temporaryReferences.server.ts +5 -0
- package/plugin/react-static/temporaryReferences.ts +11 -2
- package/plugin/react-static/types.ts +202 -8
- package/plugin/root.ts +1 -3
- package/plugin/stream/MessagePortReadable.ts +131 -0
- package/plugin/stream/MessagePortWritable.ts +104 -0
- package/plugin/stream/createFromNodeStream.client.ts +90 -0
- package/plugin/stream/createFromNodeStream.server.ts +30 -0
- package/plugin/stream/createFromNodeStream.ts +13 -0
- package/plugin/stream/createFromNodeStream.types.ts +53 -0
- package/plugin/stream/createHtmlStream.client.ts +47 -0
- package/plugin/stream/createHtmlStream.server.ts +312 -0
- package/plugin/stream/createHtmlStream.ts +13 -0
- package/plugin/stream/createHtmlStream.types.ts +63 -0
- package/plugin/stream/createMainThreadHandlers.ts +44 -0
- package/plugin/stream/createMessageChannels.ts +52 -0
- package/plugin/stream/createRenderToPipeableStreamHandler.client.ts +224 -0
- package/plugin/stream/createRenderToPipeableStreamHandler.server.ts +358 -0
- package/plugin/stream/createRenderToPipeableStreamHandler.ts +13 -0
- package/plugin/stream/createRenderToPipeableStreamHandler.types.ts +69 -0
- package/plugin/stream/createRscStream.client.ts +122 -0
- package/plugin/stream/createRscStream.server.ts +188 -0
- package/plugin/stream/createRscStream.ts +8 -0
- package/plugin/stream/createRscStream.types.ts +168 -0
- package/plugin/stream/createRscStream.utils.ts +171 -0
- package/plugin/stream/createRscWorkerStream.ts +178 -0
- package/plugin/stream/handleRscStream.client.ts +214 -0
- package/plugin/stream/handleRscStream.server.ts +82 -0
- package/plugin/stream/handleRscStream.ts +11 -0
- package/plugin/stream/handleRscStream.types.ts +70 -0
- package/plugin/stream/index.client.ts +15 -0
- package/plugin/stream/index.server.ts +15 -0
- package/plugin/stream/index.ts +137 -0
- package/plugin/stream/renderRscStream.server.ts +182 -0
- package/plugin/stream/renderRscStream.types.ts +43 -0
- package/plugin/stream/renderRscStreamHelpers.server.ts +88 -0
- package/plugin/stream/setMaxListeners.ts +30 -0
- package/plugin/transformer/README.md +2 -381
- package/plugin/transformer/createTransformerPlugin.ts +388 -0
- package/plugin/transformer/plugin.client.ts +6 -141
- package/plugin/transformer/plugin.server.ts +6 -142
- package/plugin/transformer/transformerEnv.ts +49 -0
- package/plugin/types/react-server-dom-esm.d.ts +269 -110
- package/plugin/types/virtual-rsc-hmr.d.ts +21 -0
- package/plugin/types.ts +636 -223
- package/plugin/utils/createCallServer.ts +8 -18
- package/plugin/utils/createReactFetcher.ts +87 -5
- package/plugin/utils/env.ts +1 -1
- package/plugin/utils/index.client.ts +8 -0
- package/plugin/utils/index.server.ts +8 -0
- package/plugin/utils/index.ts +5 -1
- package/plugin/utils/routeToURL.ts +3 -4
- package/plugin/utils/urls.ts +40 -8
- package/plugin/utils/useRscHmr.ts +72 -0
- package/plugin/vendor/vendor.client.ts +9 -7
- package/plugin/vendor/vendor.server.ts +5 -4
- package/plugin/vendor/vendor.static.ts +12 -0
- package/plugin/vendor/vendor.ts +10 -5
- package/plugin/worker/createWorker.ts +283 -41
- package/plugin/worker/html/README.md +2 -65
- package/plugin/worker/html/handleHtmlRender.ts +245 -0
- package/plugin/worker/html/html-worker.development.tsx +5 -17
- package/plugin/worker/html/html-worker.production.tsx +1 -1
- package/plugin/worker/html/html-worker.ts +5 -5
- package/plugin/worker/html/index.ts +6 -6
- package/plugin/worker/html/messageHandler.tsx +317 -98
- package/plugin/worker/html/state.ts +38 -0
- package/plugin/worker/html/types.ts +108 -35
- package/plugin/worker/rsc/README.md +2 -257
- package/plugin/worker/rsc/createBundleLoader.ts +92 -0
- package/plugin/worker/rsc/createRscWorkerLoader.ts +104 -0
- package/plugin/worker/rsc/handleRscRender.ts +510 -0
- package/plugin/worker/rsc/handlers.ts +159 -238
- package/plugin/worker/rsc/hydrateRscRenderMessage.ts +118 -0
- package/plugin/worker/rsc/messageHandler.tsx +1288 -58
- package/plugin/worker/rsc/rsc-worker.development.ts +198 -185
- package/plugin/worker/rsc/rsc-worker.production.ts +302 -64
- package/plugin/worker/rsc/rsc-worker.tsx +3 -5
- package/plugin/worker/rsc/state.ts +54 -2
- package/plugin/worker/rsc/types.ts +110 -32
- package/plugin/worker/rsc/workerUserOptions.ts +63 -0
- package/plugin/worker/sendMessage.ts +33 -53
- package/plugin/worker/types.ts +94 -91
- package/scripts/generate-toc.mjs +311 -0
- package/scripts/remove-toc.mjs +51 -0
- package/scripts/test-both.sh +82 -0
- package/dist/plugin/config/resolveDevServerConfig.d.ts +0 -2
- package/dist/plugin/config/resolveDevServerConfig.d.ts.map +0 -1
- package/dist/plugin/getNodeEnv.d.ts.map +0 -1
- package/dist/plugin/getNodeEnv.js +0 -17
- package/dist/plugin/helpers/collectBundleManifestCss.d.ts +0 -2
- package/dist/plugin/helpers/collectBundleManifestCss.d.ts.map +0 -1
- package/dist/plugin/helpers/collectBundleManifestCss.js +0 -2
- package/dist/plugin/helpers/createEventHandler.d.ts +0 -22
- package/dist/plugin/helpers/createEventHandler.d.ts.map +0 -1
- package/dist/plugin/helpers/createEventHandler.js +0 -36
- package/dist/plugin/helpers/createHandler.d.ts +0 -14
- package/dist/plugin/helpers/createHandler.d.ts.map +0 -1
- package/dist/plugin/helpers/createHandler.js +0 -75
- package/dist/plugin/helpers/createRscStream.d.ts +0 -26
- package/dist/plugin/helpers/createRscStream.d.ts.map +0 -1
- package/dist/plugin/helpers/createRscStream.js +0 -178
- package/dist/plugin/helpers/defaultFileWriter.d.ts +0 -2
- package/dist/plugin/helpers/defaultFileWriter.d.ts.map +0 -1
- package/dist/plugin/helpers/resolveComponents.d.ts +0 -27
- package/dist/plugin/helpers/resolveComponents.d.ts.map +0 -1
- package/dist/plugin/helpers/resolveComponents.js +0 -146
- package/dist/plugin/helpers/resolveUserComponents.d.ts +0 -33
- package/dist/plugin/helpers/resolveUserComponents.d.ts.map +0 -1
- package/dist/plugin/helpers/resolveUserComponents.js +0 -163
- package/dist/plugin/react-client/cleanupWorkerServerAction.d.ts +0 -11
- package/dist/plugin/react-client/cleanupWorkerServerAction.d.ts.map +0 -1
- package/dist/plugin/react-client/cleanupWorkerServerAction.js +0 -18
- package/dist/plugin/react-client/configureWorkerRequestHandler.d.ts +0 -17
- package/dist/plugin/react-client/configureWorkerRequestHandler.d.ts.map +0 -1
- package/dist/plugin/react-client/configureWorkerRequestHandler.js +0 -203
- package/dist/plugin/react-client/createWorkerStream.d.ts +0 -26
- package/dist/plugin/react-client/createWorkerStream.d.ts.map +0 -1
- package/dist/plugin/react-client/createWorkerStream.js +0 -163
- package/dist/plugin/react-client/handleWorkerRscStream.d.ts +0 -24
- package/dist/plugin/react-client/handleWorkerRscStream.d.ts.map +0 -1
- package/dist/plugin/react-client/handleWorkerRscStream.js +0 -91
- package/dist/plugin/react-client/handleWorkerServerAction.d.ts +0 -13
- package/dist/plugin/react-client/handleWorkerServerAction.d.ts.map +0 -1
- package/dist/plugin/react-client/handleWorkerServerAction.js +0 -62
- package/dist/plugin/react-client/restartWorker.d.ts +0 -12
- package/dist/plugin/react-client/restartWorker.d.ts.map +0 -1
- package/dist/plugin/react-client/restartWorker.js +0 -69
- package/dist/plugin/react-server/configureReactServer.d.ts +0 -10
- package/dist/plugin/react-server/configureReactServer.d.ts.map +0 -1
- package/dist/plugin/react-server/configureReactServer.js +0 -209
- package/dist/plugin/react-server/handleServerAction.d.ts +0 -6
- package/dist/plugin/react-server/handleServerAction.d.ts.map +0 -1
- package/dist/plugin/react-server/handleServerAction.js +0 -159
- package/dist/plugin/react-static/collectHtmlWorkerContent.d.ts +0 -25
- package/dist/plugin/react-static/collectHtmlWorkerContent.d.ts.map +0 -1
- package/dist/plugin/react-static/collectHtmlWorkerContent.js +0 -94
- package/dist/plugin/worker/html/createHtmlWorkerRenderState.d.ts +0 -12
- package/dist/plugin/worker/html/createHtmlWorkerRenderState.d.ts.map +0 -1
- package/dist/plugin/worker/html/createHtmlWorkerRenderState.js +0 -130
- package/dist/plugin/worker/html/sendHtmlWorkerMessage.d.ts +0 -3
- package/dist/plugin/worker/html/sendHtmlWorkerMessage.d.ts.map +0 -1
- package/dist/plugin/worker/html/sendHtmlWorkerMessage.js +0 -2
- package/dist/plugin/worker/rsc/handleRender.d.ts +0 -6
- package/dist/plugin/worker/rsc/handleRender.d.ts.map +0 -1
- package/dist/plugin/worker/rsc/handleRender.js +0 -137
- package/dist/plugin/worker/rsc/sendRscWorkerMessage.d.ts +0 -3
- package/dist/plugin/worker/rsc/sendRscWorkerMessage.d.ts.map +0 -1
- package/dist/plugin/worker/rsc/sendRscWorkerMessage.js +0 -11
- package/dist/plugin/worker/rsc/userOptions.d.ts +0 -2
- package/dist/plugin/worker/rsc/userOptions.d.ts.map +0 -1
- package/dist/plugin/worker/rsc/userOptions.js +0 -16
- package/plugin/helpers/collectBundleManifestCss.ts +0 -1
- package/plugin/helpers/createEventHandler.ts +0 -44
- package/plugin/helpers/createHandler.ts +0 -97
- package/plugin/helpers/createRscStream.tsx +0 -226
- package/plugin/helpers/defaultFileWriter.ts +0 -0
- package/plugin/helpers/resolveComponents.ts +0 -202
- package/plugin/helpers/resolveUserComponents.ts +0 -190
- package/plugin/react-client/cleanupWorkerServerAction.ts +0 -33
- package/plugin/react-client/configureWorkerRequestHandler.ts +0 -249
- package/plugin/react-client/createWorkerStream.ts +0 -210
- package/plugin/react-client/handleWorkerRscStream.ts +0 -145
- package/plugin/react-client/handleWorkerServerAction.ts +0 -96
- package/plugin/react-client/restartWorker.ts +0 -90
- package/plugin/react-server/configureReactServer.ts +0 -235
- package/plugin/react-server/handleServerAction.ts +0 -192
- package/plugin/react-static/collectHtmlWorkerContent.ts +0 -147
- package/plugin/worker/html/createHtmlWorkerRenderState.tsx +0 -142
- package/plugin/worker/html/sendHtmlWorkerMessage.ts +0 -8
- package/plugin/worker/rsc/handleRender.ts +0 -168
- package/plugin/worker/rsc/sendRscWorkerMessage.ts +0 -7
- package/plugin/worker/rsc/userOptions.ts +0 -7
- /package/dist/plugin/config/{resolveDevServerConfig.js → createHandlerOptions.types.js} +0 -0
- /package/dist/plugin/{helpers/defaultFileWriter.js → dev-server/types.js} +0 -0
- /package/plugin/{config/resolveDevServerConfig.tsx → worker/worker-handlers.server.ts} +0 -0
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import type { ResolvedUserOptions } from "../types.js";
|
|
2
2
|
import { replaceExtension } from "./extMap.js";
|
|
3
|
-
import { getNodeEnv } from "
|
|
3
|
+
import { getNodeEnv } from "./getNodeEnv.js";
|
|
4
4
|
import { DEFAULT_CONFIG } from "./defaults.js";
|
|
5
5
|
import type { ConfigEnv } from "vite";
|
|
6
|
-
import { sep } from "node:path";
|
|
6
|
+
import { sep, resolve, join } from "node:path";
|
|
7
|
+
import { readFileSync, existsSync } from "node:fs";
|
|
8
|
+
import { createHash } from "node:crypto";
|
|
7
9
|
|
|
8
10
|
export type ModuleIDKey =
|
|
9
11
|
| "modulePattern"
|
|
@@ -20,19 +22,182 @@ export type ModuleIDKey =
|
|
|
20
22
|
export const createDefaultModuleID = (
|
|
21
23
|
options: Pick<
|
|
22
24
|
ResolvedUserOptions,
|
|
23
|
-
"moduleBase" | "moduleBasePath" | "autoDiscover" | "build" | "moduleBaseURL"
|
|
25
|
+
"moduleBase" | "moduleBasePath" | "autoDiscover" | "build" | "dev" | "moduleBaseURL" | "projectRoot"
|
|
24
26
|
>,
|
|
25
27
|
configEnv?: ConfigEnv,
|
|
26
28
|
mode = getNodeEnv()
|
|
27
29
|
) => {
|
|
28
|
-
const { moduleBase, moduleBasePath, build, moduleBaseURL } = options;
|
|
30
|
+
const { moduleBase, moduleBasePath, build, moduleBaseURL, projectRoot, autoDiscover } = options;
|
|
29
31
|
const assetsDir = build.assetsDir || DEFAULT_CONFIG.BUILD.assetsDir;
|
|
30
32
|
const isBuild = configEnv?.command === "build";
|
|
33
|
+
// CRITICAL: In development mode, NEVER hash, even if command is "build" (optimizer)
|
|
34
|
+
const isDevelopment = mode === "development";
|
|
35
|
+
const shouldHash = isBuild && !isDevelopment;
|
|
31
36
|
const isProd = mode === "production" || isBuild;
|
|
37
|
+
// CRITICAL: In development mode, NEVER remove moduleBase (src/), even if command is "build" (optimizer)
|
|
32
38
|
const removeModuleBase =
|
|
33
|
-
isProd || isBuild
|
|
34
|
-
|
|
39
|
+
(isProd || isBuild) && !isDevelopment && !options.build.preserveModulesRoot;
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
// Hash configuration
|
|
43
|
+
const hashOption = build?.hash ?? DEFAULT_CONFIG.BUILD.hash;
|
|
44
|
+
|
|
45
|
+
// Virtual pattern for excluding virtual modules from hashing
|
|
46
|
+
const virtualPattern = autoDiscover?.virtualPattern ?? DEFAULT_CONFIG.AUTO_DISCOVER.virtualPattern;
|
|
47
|
+
|
|
48
|
+
// Client component pattern for hashing
|
|
49
|
+
const clientPattern = /\.client\.[cm]?[jt]sx?$/;
|
|
50
|
+
|
|
51
|
+
// Clean hash API that mimics Rollup's behavior
|
|
52
|
+
const createRollupLikeHash = (content: string, hashCharacters: 'base36' | 'base64' | 'hex' = 'base36') => {
|
|
53
|
+
const hash = createHash('sha1');
|
|
54
|
+
hash.update(content);
|
|
55
|
+
const fullHash = hash.digest('hex');
|
|
56
|
+
|
|
57
|
+
// Apply the same character set logic as Rollup
|
|
58
|
+
switch (hashCharacters) {
|
|
59
|
+
case 'base36':
|
|
60
|
+
// Convert hex to base36 (0-9, a-z)
|
|
61
|
+
return parseInt(fullHash.substring(0, 8), 16).toString(36);
|
|
62
|
+
case 'base64':
|
|
63
|
+
// Convert to base64-like format (A-Z, a-z, 0-9, -, _)
|
|
64
|
+
return Buffer.from(fullHash.substring(0, 8), 'hex').toString('base64')
|
|
65
|
+
.replace(/\+/g, '-')
|
|
66
|
+
.replace(/\//g, '_')
|
|
67
|
+
.replace(/=/g, '');
|
|
68
|
+
case 'hex':
|
|
69
|
+
default:
|
|
70
|
+
// Return hex format
|
|
71
|
+
return fullHash.substring(0, 8);
|
|
72
|
+
}
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
// Hash function for client components - same logic as resolveOptions.ts
|
|
76
|
+
const hash = (input: string | null, _ssr: boolean, sourceContent?: string) => {
|
|
77
|
+
if (!input) return "";
|
|
78
|
+
if (new RegExp(/\.(node|d\.ts)$/).test(input)) {
|
|
79
|
+
return input;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
// CRITICAL: Never hash node_modules files - Vite/Rollup handles those
|
|
83
|
+
if (input.includes("node_modules")) {
|
|
84
|
+
return input;
|
|
85
|
+
}
|
|
35
86
|
|
|
87
|
+
// CRITICAL: Never hash virtual modules (_virtual or matching virtualPattern) - Vite handles those
|
|
88
|
+
if (input.includes("_virtual") || (virtualPattern && virtualPattern.test(input))) {
|
|
89
|
+
return input;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
// Check if hashing is disabled
|
|
93
|
+
if (hashOption === "false") {
|
|
94
|
+
return input;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
// Only hash client components - server files should not be hashed
|
|
98
|
+
const isClientComponent = clientPattern.test(input);
|
|
99
|
+
|
|
100
|
+
if (!isClientComponent) {
|
|
101
|
+
return input;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
// Always hash the source content for consistency across builds
|
|
105
|
+
// This ensures the same hash is generated in transformer and build process
|
|
106
|
+
let contentToHash: string;
|
|
107
|
+
|
|
108
|
+
if (sourceContent) {
|
|
109
|
+
// Use provided source content (preferred)
|
|
110
|
+
contentToHash = sourceContent;
|
|
111
|
+
} else {
|
|
112
|
+
// Try to read source file content
|
|
113
|
+
try {
|
|
114
|
+
const sourcePath = resolve(projectRoot, input);
|
|
115
|
+
if (existsSync(sourcePath)) {
|
|
116
|
+
contentToHash = readFileSync(sourcePath, 'utf-8');
|
|
117
|
+
} else {
|
|
118
|
+
// Fallback to filename
|
|
119
|
+
contentToHash = input;
|
|
120
|
+
}
|
|
121
|
+
} catch (error) {
|
|
122
|
+
// Fallback to filename
|
|
123
|
+
contentToHash = input;
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
// Generate hash using Rollup-like algorithm
|
|
128
|
+
const hashCharacters = typeof hashOption === 'object' && hashOption?.format === 'hex' ? 'hex' : 'base36';
|
|
129
|
+
const contentHash = createRollupLikeHash(contentToHash, hashCharacters);
|
|
130
|
+
|
|
131
|
+
// Apply naming logic
|
|
132
|
+
const extensionIndex = input.lastIndexOf(".");
|
|
133
|
+
if (extensionIndex !== -1) {
|
|
134
|
+
const extension = input.slice(extensionIndex);
|
|
135
|
+
const filename = input.slice(0, extensionIndex);
|
|
136
|
+
return filename + "-" + contentHash + extension;
|
|
137
|
+
} else {
|
|
138
|
+
return input + "-" + contentHash;
|
|
139
|
+
}
|
|
140
|
+
};
|
|
141
|
+
const staticClientDist = isBuild ? join(build?.outDir || "dist", build?.static || "static") : "";
|
|
142
|
+
const ssrClientDist = isBuild ? join(build?.outDir || "dist", build?.client || "client") : "";
|
|
143
|
+
const serverDist = isBuild ? join(build?.outDir || "dist", build?.server || "server") : "";
|
|
144
|
+
const buildDirs = isBuild ? [serverDist, ssrClientDist, staticClientDist] : [];
|
|
145
|
+
|
|
146
|
+
return (id: string, sourceContent?: string) => {
|
|
147
|
+
// For transformer usage (when we're in build mode and processing server components),
|
|
148
|
+
// we want to strip build directory prefixes to get relative paths
|
|
149
|
+
// This ensures the RSC stream contains paths that can be resolved by the HTML transform
|
|
150
|
+
if (shouldHash) {
|
|
151
|
+
// Strip build directory prefixes to get relative paths
|
|
152
|
+
for (const buildDir of buildDirs) {
|
|
153
|
+
if (id.startsWith(buildDir)) {
|
|
154
|
+
const result = id.slice(buildDir.length);
|
|
155
|
+
return result;
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
// Check for double path issues (like dist/client//dist/server/)
|
|
159
|
+
if (id.includes('//')) {
|
|
160
|
+
// Try to fix double path issues by finding the last occurrence of dist/
|
|
161
|
+
const lastDistIndex = id.lastIndexOf('dist/');
|
|
162
|
+
if (lastDistIndex !== -1) {
|
|
163
|
+
const result = id.slice(lastDistIndex);
|
|
164
|
+
return result;
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
// For client components in build mode, transform source paths to built paths
|
|
169
|
+
const isClientComponent = clientPattern.test(id);
|
|
170
|
+
if (isClientComponent) {
|
|
171
|
+
// Transform source path to built client path
|
|
172
|
+
let transformedId = id;
|
|
173
|
+
|
|
174
|
+
// Step 1: Remove moduleBase (typically "src/") from the beginning
|
|
175
|
+
if (removeModuleBase && transformedId.startsWith(moduleBase + sep)) {
|
|
176
|
+
transformedId = transformedId.slice(moduleBase.length + sep.length);
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
// Step 2: Apply extension mapping for build
|
|
180
|
+
transformedId = replaceExtension(transformedId, {
|
|
181
|
+
build: { extensionMap: build.extensionMap },
|
|
182
|
+
});
|
|
183
|
+
|
|
184
|
+
|
|
185
|
+
// Step 3: Apply hashing for client components
|
|
186
|
+
transformedId = hash(transformedId, false, sourceContent);
|
|
187
|
+
|
|
188
|
+
// Step 4: Ensure paths start with moduleBasePath
|
|
189
|
+
if (moduleBasePath && !transformedId.startsWith(moduleBasePath)) {
|
|
190
|
+
transformedId = moduleBasePath + transformedId;
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
return transformedId;
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
return id;
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
// Normal build path transformation (existing logic)
|
|
200
|
+
|
|
36
201
|
// Step 1: Handle assets directory paths - remove src from within assets path
|
|
37
202
|
// Transform: assets/src/page/file.css -> assets/page/file.css
|
|
38
203
|
if (id.startsWith(assetsDir + sep + moduleBase + sep)) {
|
|
@@ -55,18 +220,44 @@ export const createDefaultModuleID = (
|
|
|
55
220
|
id = id.slice(moduleBase.length + sep.length);
|
|
56
221
|
}
|
|
57
222
|
|
|
58
|
-
// Step 5: Ensure paths start with
|
|
59
|
-
if (!id.startsWith(moduleBasePath)) {
|
|
223
|
+
// Step 5: Ensure paths start with moduleBasePath (avoid double-prefix)
|
|
224
|
+
if (moduleBasePath && !id.startsWith(moduleBasePath)) {
|
|
60
225
|
id = moduleBasePath + id;
|
|
61
226
|
}
|
|
62
227
|
|
|
63
|
-
// Step 6: Apply extension mapping
|
|
64
|
-
|
|
228
|
+
// Step 6: Apply extension mapping
|
|
229
|
+
// ALWAYS replace extensions for client components (browser can't import .tsx)
|
|
230
|
+
// For other files, only replace in build mode
|
|
231
|
+
const isClientComponent = clientPattern.test(id);
|
|
232
|
+
if (isBuild || isClientComponent) {
|
|
65
233
|
id = replaceExtension(id, {
|
|
66
234
|
build: { extensionMap: build.extensionMap },
|
|
67
235
|
});
|
|
68
236
|
}
|
|
69
237
|
|
|
238
|
+
// Step 7: Ensure CSS files are placed in the assets directory
|
|
239
|
+
if (isBuild && id.endsWith('.css') && !id.startsWith(assetsDir + sep)) {
|
|
240
|
+
id = assetsDir + sep + id;
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
// Step 8: Apply hashing for client components (only in production builds, not dev)
|
|
244
|
+
if (shouldHash) {
|
|
245
|
+
id = hash(id, false, sourceContent);
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
// For client components, ensure no leading slash to allow proper relative resolution
|
|
249
|
+
// (isClientComponent already defined in Step 6)
|
|
250
|
+
if (isClientComponent && moduleBasePath === '') {
|
|
251
|
+
return id; // No leading slash for client components
|
|
252
|
+
}
|
|
253
|
+
|
|
254
|
+
// Don't add leading slash for relative paths - this causes module resolution issues
|
|
255
|
+
if (moduleBasePath === '') {
|
|
256
|
+
return id; // Return as-is without leading slash
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
// id already has moduleBasePath from Step 5 — return as-is
|
|
70
260
|
return id;
|
|
71
261
|
};
|
|
72
262
|
};
|
|
263
|
+
|
|
@@ -2,8 +2,10 @@ import { Root } from "../components/root.js";
|
|
|
2
2
|
import { Html } from "../components/html.js";
|
|
3
3
|
import { parse } from "../loader/parse.js";
|
|
4
4
|
import { pluginRoot } from "../root.js";
|
|
5
|
-
import { getNodeEnv } from "
|
|
6
|
-
|
|
5
|
+
import { getNodeEnv } from "./getNodeEnv.js";
|
|
6
|
+
import { getCondition } from "./getCondition.js";
|
|
7
|
+
import { createLogger } from "vite";
|
|
8
|
+
const LOGGER = createLogger();
|
|
7
9
|
// Directive patterns - matching the logic in findDirectiveMatches.ts
|
|
8
10
|
const DIRECTIVE_PATTERNS = {
|
|
9
11
|
// Client directive must be at start of file
|
|
@@ -24,6 +26,13 @@ const IS_CLIENT_COMPONENT_CODE = (code: string, moduleId?: string) =>
|
|
|
24
26
|
code.match(CLIENT_COMPONENT_FILE) != null ||
|
|
25
27
|
(moduleId && CLIENT_COMPONENT_FILE.test(moduleId.toLowerCase())) ||
|
|
26
28
|
false;
|
|
29
|
+
|
|
30
|
+
// Separate functions for checking client components by code vs by name
|
|
31
|
+
const IS_CLIENT_COMPONENT_BY_CODE = (code: string) =>
|
|
32
|
+
code.match(CLIENT_COMPONENT_FILE) != null || false;
|
|
33
|
+
|
|
34
|
+
const IS_CLIENT_COMPONENT_BY_NAME = (moduleId: string, _transformedModuleId?: string) =>
|
|
35
|
+
CLIENT_COMPONENT_FILE.test(moduleId.toLowerCase()) || false;
|
|
27
36
|
// Directive configurations
|
|
28
37
|
export const DIRECTIVE_CONFIGS = {
|
|
29
38
|
client: {
|
|
@@ -67,6 +76,15 @@ export const getDirectiveType = (
|
|
|
67
76
|
return undefined;
|
|
68
77
|
};
|
|
69
78
|
|
|
79
|
+
export const MODE = getNodeEnv();
|
|
80
|
+
export const CONDITION = getCondition();
|
|
81
|
+
export const IS_SERVER = CONDITION === "react-server";
|
|
82
|
+
export const IS_CLIENT = CONDITION === "react-client";
|
|
83
|
+
// Note: This should be replaced with configEnv.command === "build" in functions that receive configEnv
|
|
84
|
+
// This is kept for backward compatibility but should not be used in new code
|
|
85
|
+
export const IS_BUILD = process.argv.includes("build");
|
|
86
|
+
export const IS_SERVE = !IS_BUILD; // dont have to check for dev since it's the default
|
|
87
|
+
|
|
70
88
|
// Helper to normalize directive strings
|
|
71
89
|
// const normalizeDirective = (directive: string) => directive.replace(/\s+/g, '').toLowerCase();
|
|
72
90
|
|
|
@@ -77,6 +95,8 @@ export const DEFAULT_LOADER_CONFIG = {
|
|
|
77
95
|
directivePattern: DIRECTIVE_PATTERNS.ANY,
|
|
78
96
|
isServerFunctionCode: IS_SERVER_ACTION_CODE,
|
|
79
97
|
isClientComponentCode: IS_CLIENT_COMPONENT_CODE,
|
|
98
|
+
isClientComponentByCode: IS_CLIENT_COMPONENT_BY_CODE,
|
|
99
|
+
isClientComponentByName: IS_CLIENT_COMPONENT_BY_NAME,
|
|
80
100
|
allowedDirectives: DIRECTIVE_CONFIGS,
|
|
81
101
|
importServerPath: "react-server-dom-esm/server",
|
|
82
102
|
importClientPath: "react-server-dom-esm/server",
|
|
@@ -84,7 +104,11 @@ export const DEFAULT_LOADER_CONFIG = {
|
|
|
84
104
|
registerServerReferenceName: "registerServerReference",
|
|
85
105
|
getDirectiveType,
|
|
86
106
|
parse: parse,
|
|
87
|
-
mode:
|
|
107
|
+
mode: MODE,
|
|
108
|
+
verbose: false,
|
|
109
|
+
logger: LOGGER,
|
|
110
|
+
moduleID: (moduleId: string, _sourceContent?: string) =>
|
|
111
|
+
typeof moduleId === "string" ? moduleId : String(moduleId),
|
|
88
112
|
} as const;
|
|
89
113
|
|
|
90
114
|
// Define base patterns that can be reused
|
|
@@ -108,12 +132,11 @@ export const BASE_PATTERNS = {
|
|
|
108
132
|
NODE: ".node",
|
|
109
133
|
},
|
|
110
134
|
} as const;
|
|
111
|
-
|
|
112
135
|
export const DEFAULT_CONFIG = {
|
|
113
136
|
CLIENT_ASSETS_DIR: "assets",
|
|
114
137
|
RSC_DIR: "rsc",
|
|
115
138
|
MODULE_BASE: "src",
|
|
116
|
-
MODULE_BASE_PATH: "
|
|
139
|
+
MODULE_BASE_PATH: "",
|
|
117
140
|
MODULE_BASE_URL: "/",
|
|
118
141
|
PUBLIC_ORIGIN: "",
|
|
119
142
|
PAGE: "page.tsx",
|
|
@@ -134,7 +157,8 @@ export const DEFAULT_CONFIG = {
|
|
|
134
157
|
RSC_EXTENSION: ".rsc",
|
|
135
158
|
ROOT: undefined,
|
|
136
159
|
HTML: undefined,
|
|
137
|
-
ON_METRICS:
|
|
160
|
+
ON_METRICS: undefined,
|
|
161
|
+
ON_EVENT: undefined,
|
|
138
162
|
DEV_PORT: 5173,
|
|
139
163
|
PREVIEW_PORT: 4173,
|
|
140
164
|
DEV_HOST: "localhost",
|
|
@@ -142,8 +166,11 @@ export const DEFAULT_CONFIG = {
|
|
|
142
166
|
ENV_PREFIX: "VITE_",
|
|
143
167
|
REACT_DIRECTIVES: new Set(["use client", "use server"]),
|
|
144
168
|
RSC_TIMEOUT: 5000, // 5 seconds default timeout for RSC operations
|
|
169
|
+
HTML_TIMEOUT: 15000, // 15 seconds default timeout for HTML generation operations
|
|
145
170
|
HTML_WORKER_STARTUP_TIMEOUT: 3000, // 3 seconds default timeout for HTML worker startup
|
|
146
171
|
RSC_WORKER_STARTUP_TIMEOUT: 3000, // 3 seconds default timeout for RSC worker startup
|
|
172
|
+
FILE_WRITE_TIMEOUT: 10000, // 10 seconds default timeout for file write operations
|
|
173
|
+
WORKER_SHUTDOWN_TIMEOUT: 1000, // Reduced to 1 second for faster test cleanup
|
|
147
174
|
COMPONENTS: {
|
|
148
175
|
Html: Html,
|
|
149
176
|
Root: Root,
|
|
@@ -184,17 +211,36 @@ export const DEFAULT_CONFIG = {
|
|
|
184
211
|
rscExtension: BASE_PATTERNS.EXT.RSC,
|
|
185
212
|
cssModuleExtension: BASE_PATTERNS.EXT.CSS_MODULE,
|
|
186
213
|
nodeExtension: BASE_PATTERNS.EXT.NODE,
|
|
214
|
+
// these defaults rely on process.argv
|
|
215
|
+
// even better is to use configEnv.command === "build"
|
|
216
|
+
// which will be done in createHandlerOptions.server.ts and createHandlerOptions.client.ts
|
|
217
|
+
useRscWorker: !IS_SERVER && IS_BUILD,
|
|
218
|
+
useHtmlWorker: IS_SERVER && IS_BUILD,
|
|
219
|
+
},
|
|
220
|
+
DEV: {
|
|
221
|
+
// these defaults rely on process.argv
|
|
222
|
+
useHtmlWorker: false, // during dev, the browser is the html-worker..
|
|
223
|
+
// if the user opts-in to creating the html-worker, the stream utilities
|
|
224
|
+
// will be able to stream html during development - the plugin never does this
|
|
225
|
+
// so we don't have to create the html-worker during dev by default
|
|
226
|
+
useRscWorker: !IS_SERVER && IS_SERVE, // during dev without server-conditions,
|
|
227
|
+
// the rsc-worker is created during dev by default
|
|
228
|
+
// this is because the rsc-worker is used to stream rsc during development
|
|
187
229
|
},
|
|
188
230
|
CSS: {
|
|
189
|
-
inlineCss:
|
|
231
|
+
inlineCss: undefined,
|
|
190
232
|
purgeCss: false,
|
|
191
233
|
inlineThreshold: 4096, // 4KB
|
|
192
234
|
inlinePatterns: [] as RegExp[], // Always inline CSS modules
|
|
193
235
|
linkPatterns: [] as RegExp[], // Always link node_modules CSS
|
|
194
236
|
},
|
|
195
|
-
MODULE_BASE_EXCEPTIONS: [] as string[],
|
|
196
237
|
|
|
197
238
|
AUTO_DISCOVER: {
|
|
239
|
+
clientEntry: "**/*.client.*",
|
|
240
|
+
serverEntry: "**/*.server.*",
|
|
241
|
+
cssEntry: "**/*.css",
|
|
242
|
+
jsonEntry: "**/*.json",
|
|
243
|
+
htmlEntry: "**/*.html",
|
|
198
244
|
// Pattern matchers
|
|
199
245
|
modulePattern: new RegExp(BASE_PATTERNS.MODULE),
|
|
200
246
|
serverPattern: new RegExp(BASE_PATTERNS.SERVER),
|
|
@@ -217,7 +263,9 @@ export const DEFAULT_CONFIG = {
|
|
|
217
263
|
},
|
|
218
264
|
MODULE_ID: (id: string) => id,
|
|
219
265
|
VERBOSE: false,
|
|
220
|
-
PANIC_THRESHOLD: "
|
|
266
|
+
PANIC_THRESHOLD: (MODE === "development"
|
|
267
|
+
? "critical_errors"
|
|
268
|
+
: "all_errors") as "critical_errors" | "all_errors",
|
|
221
269
|
// Centralized loader config for RSC boundaries
|
|
222
270
|
RSC_LOADER: {
|
|
223
271
|
development: {
|
|
@@ -238,4 +286,5 @@ export const DEFAULT_CONFIG = {
|
|
|
238
286
|
REACT_LOADER_PATH: pluginRoot + "/loader/react-loader.js",
|
|
239
287
|
CSS_LOADER_PATH: pluginRoot + "/loader/css-loader.js",
|
|
240
288
|
ENV_LOADER_PATH: pluginRoot + "/loader/env-loader.js",
|
|
289
|
+
|
|
241
290
|
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { ResolvedConfig } from "vite";
|
|
2
|
+
import { DEFAULT_CONFIG } from "./defaults.js";
|
|
3
|
+
|
|
4
|
+
export function envPrefixFromConfig(config: Pick<ResolvedConfig, "envPrefix">) {
|
|
5
|
+
return typeof config.envPrefix === "string"
|
|
6
|
+
? config.envPrefix
|
|
7
|
+
: Array.isArray(config.envPrefix)
|
|
8
|
+
? config.envPrefix[0]
|
|
9
|
+
: DEFAULT_CONFIG.ENV_PREFIX;
|
|
10
|
+
}
|
|
@@ -1,13 +1,270 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
// Note: do not import Node-only modules here (e.g., 'node:worker_threads').
|
|
2
|
+
// This file is consumed in both server and client plugin contexts.
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Tokenizes NODE_OPTIONS string into individual arguments
|
|
6
|
+
* Handles quoted strings, spaces, and special characters
|
|
7
|
+
*/
|
|
8
|
+
const tokenizeNodeOptions = (): string[] => {
|
|
9
|
+
const nodeOptions = process.env["NODE_OPTIONS"] || "";
|
|
10
|
+
if (!nodeOptions.trim()) {
|
|
11
|
+
return [];
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
const tokens: string[] = [];
|
|
15
|
+
let current = "";
|
|
16
|
+
let inQuotes = false;
|
|
17
|
+
let quoteChar = "";
|
|
18
|
+
let i = 0;
|
|
19
|
+
|
|
20
|
+
while (i < nodeOptions.length) {
|
|
21
|
+
const char = nodeOptions[i];
|
|
22
|
+
|
|
23
|
+
if (inQuotes) {
|
|
24
|
+
if (char === quoteChar) {
|
|
25
|
+
inQuotes = false;
|
|
26
|
+
quoteChar = "";
|
|
27
|
+
if (current.trim()) {
|
|
28
|
+
tokens.push(current.trim());
|
|
29
|
+
current = "";
|
|
30
|
+
}
|
|
31
|
+
} else {
|
|
32
|
+
current += char;
|
|
33
|
+
}
|
|
34
|
+
} else {
|
|
35
|
+
if (char === '"' || char === "'") {
|
|
36
|
+
if (current.trim()) {
|
|
37
|
+
tokens.push(current.trim());
|
|
38
|
+
current = "";
|
|
39
|
+
}
|
|
40
|
+
inQuotes = true;
|
|
41
|
+
quoteChar = char;
|
|
42
|
+
} else if (char === " " || char === "\t" || char === "\n") {
|
|
43
|
+
if (current.trim()) {
|
|
44
|
+
tokens.push(current.trim());
|
|
45
|
+
current = "";
|
|
46
|
+
}
|
|
47
|
+
} else {
|
|
48
|
+
current += char;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
i++;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
if (current.trim()) {
|
|
55
|
+
tokens.push(current.trim());
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
return tokens.filter(Boolean);
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* Parses command-line arguments for conditions and other flags
|
|
63
|
+
*/
|
|
64
|
+
const parseNodeArgs = (args: string[]) => {
|
|
65
|
+
const conditions: string[] = [];
|
|
66
|
+
const flags = new Set<string>();
|
|
67
|
+
|
|
68
|
+
for (let i = 0; i < args.length; i++) {
|
|
69
|
+
const arg = args[i];
|
|
70
|
+
|
|
71
|
+
if (arg === "--conditions" || arg === "-C") {
|
|
72
|
+
// Next argument is the condition value
|
|
73
|
+
if (i + 1 < args.length) {
|
|
74
|
+
const conditionValue = args[i + 1];
|
|
75
|
+
conditions.push(
|
|
76
|
+
...conditionValue
|
|
77
|
+
.split(",")
|
|
78
|
+
.map((c) => c.trim())
|
|
79
|
+
.filter(Boolean)
|
|
80
|
+
);
|
|
81
|
+
i++; // Skip the next argument since we consumed it
|
|
82
|
+
}
|
|
83
|
+
} else if (arg.startsWith("--conditions=")) {
|
|
84
|
+
// Condition value is part of the same argument
|
|
85
|
+
const conditionValue = arg.substring("--conditions=".length);
|
|
86
|
+
conditions.push(
|
|
87
|
+
...conditionValue
|
|
88
|
+
.split(",")
|
|
89
|
+
.map((c) => c.trim())
|
|
90
|
+
.filter(Boolean)
|
|
91
|
+
);
|
|
92
|
+
} else if (arg === "--no-addons") {
|
|
93
|
+
flags.add("no-addons");
|
|
94
|
+
} else if (arg.startsWith("--")) {
|
|
95
|
+
// Other flags
|
|
96
|
+
flags.add(arg);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
return { conditions, flags };
|
|
101
|
+
};
|
|
102
|
+
|
|
103
|
+
/**
|
|
104
|
+
* Gets all conditions from both NODE_OPTIONS and command-line arguments
|
|
105
|
+
*/
|
|
106
|
+
export const getAllConditions = (): string[] => {
|
|
107
|
+
// Parse NODE_OPTIONS
|
|
108
|
+
const nodeOptionsTokens = tokenizeNodeOptions();
|
|
109
|
+
const { conditions: envConditions } = parseNodeArgs(nodeOptionsTokens);
|
|
110
|
+
|
|
111
|
+
// Parse command-line arguments
|
|
112
|
+
const { conditions: cliConditions } = parseNodeArgs(process.execArgv);
|
|
113
|
+
|
|
114
|
+
// Combine all conditions
|
|
115
|
+
return [...envConditions, ...cliConditions];
|
|
116
|
+
};
|
|
117
|
+
|
|
118
|
+
// ----------------------------------------------------------------------------
|
|
119
|
+
// Ambiguity detection and warning
|
|
120
|
+
// ----------------------------------------------------------------------------
|
|
121
|
+
let didWarnAmbiguousConditions = false;
|
|
122
|
+
// react-static does not exists, because you still need condition react-server for the .static imports to work.
|
|
123
|
+
const reactConditionSet = new Set(["react-server", "react-client"]);
|
|
124
|
+
|
|
125
|
+
export const detectReactConditionAmbiguity = (): string[] => {
|
|
126
|
+
const conditions = getAllConditions();
|
|
127
|
+
const found = conditions.filter((c) => reactConditionSet.has(c));
|
|
128
|
+
const unique = Array.from(new Set(found));
|
|
129
|
+
return unique;
|
|
7
130
|
};
|
|
8
131
|
|
|
9
|
-
export const
|
|
10
|
-
|
|
132
|
+
export const warnIfAmbiguousReactConditions = (): void => {
|
|
133
|
+
if (didWarnAmbiguousConditions) return;
|
|
134
|
+
const unique = detectReactConditionAmbiguity();
|
|
135
|
+
if (unique.includes("react-server") && unique.includes("react-client")) {
|
|
136
|
+
didWarnAmbiguousConditions = true;
|
|
137
|
+
const nodeOptions = process.env["NODE_OPTIONS"] || "";
|
|
138
|
+
const argv = process.execArgv.join(" ");
|
|
139
|
+
const msg =
|
|
140
|
+
`Both react-server and react-client conditions detected in NODE_OPTIONS/execArgv. ` +
|
|
141
|
+
`This can lead to ambiguous resolution. Found: [${unique.join(", ")}]\n` +
|
|
142
|
+
`NODE_OPTIONS="${nodeOptions}"\nexecArgv="${argv}"\n` +
|
|
143
|
+
`Tip: set exactly one condition or let the plugin manage worker conditions.`;
|
|
144
|
+
// Use process.emitWarning to avoid throwing
|
|
145
|
+
try {
|
|
146
|
+
process.emitWarning(msg, {
|
|
147
|
+
code: "VPRS_CONDITION_AMBIGUITY",
|
|
148
|
+
detail: "vite-plugin-react-server detected conflicting conditions",
|
|
149
|
+
} as any);
|
|
150
|
+
} catch {
|
|
151
|
+
// Fallback
|
|
152
|
+
|
|
153
|
+
console.warn(`[vite-plugin-react-server] ${msg}`);
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
};
|
|
157
|
+
|
|
158
|
+
/**
|
|
159
|
+
* Gets the current condition, defaulting to "react-client" if no conditions are set
|
|
160
|
+
*/
|
|
161
|
+
export const getCurrentCondition = ():
|
|
162
|
+
| "react-server"
|
|
163
|
+
| "react-client"
|
|
164
|
+
| undefined => {
|
|
165
|
+
// Warn if we detect both conditions present
|
|
166
|
+
warnIfAmbiguousReactConditions();
|
|
167
|
+
|
|
168
|
+
// Check both NODE_OPTIONS and execArgv for conditions
|
|
169
|
+
const conditions = getAllConditions();
|
|
170
|
+
if (conditions.includes("react-server")) return "react-server";
|
|
171
|
+
if (conditions.includes("react-client")) return "react-client";
|
|
172
|
+
|
|
173
|
+
// Default to react-client when nothing is set
|
|
174
|
+
return undefined;
|
|
175
|
+
};
|
|
176
|
+
|
|
177
|
+
/**
|
|
178
|
+
* Gets the condition with a custom prefix
|
|
179
|
+
*/
|
|
180
|
+
export const getCondition = <Prefix extends string = "react-", DefaultCondition extends `${Prefix}${string}` = `${Prefix}client`>(
|
|
181
|
+
prefix: Prefix = "react-" as Prefix,
|
|
182
|
+
defaultReturn:
|
|
183
|
+
| `${Prefix}server`
|
|
184
|
+
| `${Prefix}client` = `${prefix}client` as `${Prefix}client`
|
|
185
|
+
): `${Prefix}client` | `${Prefix}server` | DefaultCondition => {
|
|
186
|
+
const condition = getCurrentCondition();
|
|
187
|
+
if (condition === "react-server") {
|
|
188
|
+
return `${prefix}server` as `${Prefix}server`;
|
|
189
|
+
}
|
|
190
|
+
if (condition === "react-client") {
|
|
191
|
+
return `${prefix}client` as `${Prefix}client`;
|
|
192
|
+
}
|
|
193
|
+
return defaultReturn;
|
|
194
|
+
};
|
|
195
|
+
|
|
196
|
+
/**
|
|
197
|
+
* Asserts that the current condition is react-server
|
|
198
|
+
* Throws an error with a descriptive message if not
|
|
199
|
+
*/
|
|
200
|
+
export function assertReactServer(): asserts this is {
|
|
201
|
+
condition: "react-server";
|
|
202
|
+
} {
|
|
203
|
+
const currentCondition = getCurrentCondition();
|
|
204
|
+
if (currentCondition !== "react-server") {
|
|
205
|
+
// Debug-only: avoid Node-only APIs to keep this file browser-safe
|
|
206
|
+
throw new Error(
|
|
207
|
+
`Condition mismatch, should be react-server. Set NODE_OPTIONS="--conditions=react-server" or --conditions=react-server`
|
|
208
|
+
);
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
export function assertNonReactServer(): asserts this is {
|
|
213
|
+
condition: "react-client";
|
|
214
|
+
} {
|
|
215
|
+
const currentCondition = getCurrentCondition();
|
|
216
|
+
if (currentCondition === "react-server") {
|
|
217
|
+
// Debug-only: avoid Node-only APIs to keep this file browser-safe
|
|
218
|
+
throw new Error(
|
|
219
|
+
`Condition mismatch, should not be react-server. Remove NODE_OPTIONS="--conditions=react-server" or --conditions=react-server`
|
|
220
|
+
);
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
/**
|
|
225
|
+
* Checks if the current condition is react-server (strict - requires both NODE_OPTIONS and execArgv)
|
|
226
|
+
* Use this for React Server DOM compatibility checks
|
|
227
|
+
*/
|
|
228
|
+
export const isReactServerCondition = (): boolean =>
|
|
229
|
+
getCurrentCondition() === "react-server";
|
|
230
|
+
|
|
231
|
+
/**
|
|
232
|
+
* Checks if the current condition is react-client (strict - requires both NODE_OPTIONS and execArgv)
|
|
233
|
+
* Use this for React Server DOM compatibility checks
|
|
234
|
+
*/
|
|
235
|
+
export const isReactClientCondition = (): boolean =>
|
|
236
|
+
getCurrentCondition() === "react-client";
|
|
237
|
+
|
|
238
|
+
/**
|
|
239
|
+
* Checks if react-server condition is present in either NODE_OPTIONS OR execArgv (lenient)
|
|
240
|
+
* Use this for plugin internal environment gating
|
|
241
|
+
*/
|
|
242
|
+
export const hasReactServerCondition = (): boolean => {
|
|
243
|
+
const allConditions = getAllConditions();
|
|
244
|
+
return allConditions.includes("react-server");
|
|
245
|
+
};
|
|
246
|
+
|
|
247
|
+
/**
|
|
248
|
+
* Checks if react-client condition is present in either NODE_OPTIONS OR execArgv (lenient)
|
|
249
|
+
* Use this for plugin internal environment gating
|
|
250
|
+
*/
|
|
251
|
+
export const hasReactClientCondition = (): boolean => {
|
|
252
|
+
const allConditions = getAllConditions();
|
|
253
|
+
return allConditions.includes("react-client");
|
|
254
|
+
};
|
|
255
|
+
|
|
256
|
+
/**
|
|
257
|
+
* Legacy function for backward compatibility
|
|
258
|
+
* @deprecated Use getAllConditions() instead
|
|
259
|
+
*/
|
|
260
|
+
export const getNodeOptionsConditions = (): string[] => {
|
|
261
|
+
const nodeOptionsTokens = tokenizeNodeOptions();
|
|
262
|
+
const { conditions } = parseNodeArgs(nodeOptionsTokens);
|
|
263
|
+
return conditions;
|
|
264
|
+
};
|
|
11
265
|
|
|
12
|
-
|
|
13
|
-
|
|
266
|
+
/**
|
|
267
|
+
* Legacy export for backward compatibility
|
|
268
|
+
* @deprecated Use getCurrentCondition() instead
|
|
269
|
+
*/
|
|
270
|
+
export const condition = getCurrentCondition();
|