vike 0.4.231 → 0.4.232-commit-ec54a7e
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 +4 -2
- package/client/router.js +2 -2
- package/client.js +2 -2
- package/dist/cjs/__internal/index.js +2 -2
- package/dist/cjs/client/{client-routing-runtime → runtime-client-routing}/globalContext.js +2 -2
- package/dist/cjs/client/{server-routing-runtime → runtime-server-routing}/globalContext.js +1 -1
- package/dist/cjs/client/shared/createGetGlobalContextClient.js +2 -2
- package/dist/cjs/client/shared/preparePageContextForPublicUsageClientShared.js +4 -4
- package/dist/cjs/node/api/build.js +7 -2
- package/dist/cjs/node/api/dev.js +1 -1
- package/dist/cjs/node/api/prepareViteApiCall.js +20 -15
- package/dist/cjs/node/api/prerender.js +3 -3
- package/dist/cjs/node/api/preview.js +3 -3
- package/dist/cjs/node/cli/entry.js +2 -2
- package/dist/cjs/node/cli/parseCli.js +3 -3
- package/dist/cjs/node/client/router.js +1 -1
- package/dist/cjs/node/createPageRenderer.js +1 -1
- package/dist/cjs/node/prerender/context.js +7 -7
- package/dist/cjs/node/prerender/resolvePrerenderConfig.js +9 -8
- package/dist/cjs/node/prerender/runPrerender.js +108 -108
- package/dist/cjs/node/prerender/runPrerenderEntry.js +55 -0
- package/dist/cjs/node/prerender/utils.js +1 -0
- package/dist/cjs/node/runtime/globalContext.js +80 -39
- package/dist/cjs/node/runtime/html/injectAssets/getHtmlTags.js +8 -8
- package/dist/cjs/node/runtime/html/injectAssets/getViteDevScript.js +1 -1
- package/dist/cjs/node/runtime/html/injectAssets/inferHtmlTags.js +1 -1
- package/dist/cjs/node/runtime/html/injectAssets/injectAssets__public.js +5 -5
- package/dist/cjs/node/runtime/html/injectAssets/injectHtmlTags.js +3 -3
- package/dist/cjs/node/runtime/html/injectAssets.js +1 -1
- package/dist/cjs/node/runtime/html/renderHtml.js +8 -8
- package/dist/cjs/node/runtime/html/serializeContext.js +6 -6
- package/dist/cjs/node/runtime/html/stream.js +19 -19
- package/dist/cjs/node/runtime/index-deprecated.js +3 -3
- package/dist/cjs/node/runtime/index.js +1 -1
- package/dist/cjs/node/runtime/{renderPage/loggerRuntime.js → loggerRuntime.js} +1 -1
- package/dist/cjs/node/runtime/renderPage/analyzePage.js +7 -7
- package/dist/cjs/node/runtime/renderPage/assertArguments.js +1 -1
- package/dist/cjs/node/runtime/renderPage/createHttpResponse/assertNoInfiniteHttpRedirect.js +1 -1
- package/dist/cjs/node/runtime/renderPage/createHttpResponse.js +8 -9
- package/dist/cjs/node/runtime/renderPage/createPageContextServerSide.js +8 -16
- package/dist/cjs/node/runtime/renderPage/debugPageFiles.js +2 -2
- package/dist/cjs/node/runtime/renderPage/execHookServer.js +1 -4
- package/dist/cjs/node/runtime/renderPage/executeOnBeforeRenderAndDataHooks.js +1 -1
- package/dist/cjs/node/runtime/renderPage/executeOnRenderHtmlHook.js +5 -5
- package/dist/cjs/node/runtime/renderPage/getEarlyHints.js +1 -1
- package/dist/cjs/node/runtime/renderPage/getHttpResponseBody.js +1 -1
- package/dist/cjs/node/runtime/renderPage/getPageAssets/getManifestEntry.js +5 -5
- package/dist/cjs/node/runtime/renderPage/getPageAssets/retrieveAssetsProd.js +1 -1
- package/dist/cjs/node/runtime/renderPage/getPageAssets.js +7 -3
- package/dist/cjs/node/runtime/renderPage/handleErrorWithoutErrorPage.js +2 -2
- package/dist/cjs/node/runtime/renderPage/handlePageContextRequestUrl.js +1 -1
- package/dist/cjs/node/runtime/renderPage/isFontFallback.js +3 -3
- package/dist/cjs/node/runtime/renderPage/isNewError.js +2 -1
- package/dist/cjs/node/runtime/renderPage/loadPageConfigsLazyServerSide.js +32 -25
- package/dist/cjs/node/runtime/renderPage/log404/index.js +5 -9
- package/dist/cjs/node/runtime/renderPage/logErrorHint/errors.js +2 -2
- package/dist/cjs/node/runtime/renderPage/logErrorHint.js +19 -19
- package/dist/cjs/node/runtime/renderPage/loggerProd.js +3 -3
- package/dist/cjs/node/runtime/renderPage/renderPageAlreadyRouted.js +6 -4
- package/dist/cjs/node/runtime/renderPage/resolveRedirects.js +22 -4
- package/dist/cjs/node/runtime/renderPage.js +86 -77
- package/dist/cjs/node/runtime/universal-middleware.js +2 -2
- package/dist/cjs/node/runtime/utils.js +1 -1
- package/dist/cjs/node/runtime-dev/createDevMiddleware.js +3 -3
- package/dist/cjs/node/shared/extractAssetsQuery.js +1 -1
- package/dist/cjs/node/shared/getVikeConfigError.js +22 -0
- package/dist/cjs/node/shared/resolveBase.js +1 -1
- package/dist/cjs/node/shared/utils.js +1 -0
- package/dist/cjs/node/shared/virtualFiles/virtualFileEntry.js +29 -0
- package/dist/cjs/node/shared/{virtual-files/virtualFilePageConfigValuesAll.js → virtualFiles/virtualFilePageConfigLazy.js} +9 -9
- package/dist/cjs/node/vite/index.js +67 -0
- package/dist/cjs/node/{plugin/plugins/baseUrls.js → vite/plugins/pluginBaseUrls.js} +11 -12
- package/dist/cjs/node/{plugin/plugins/build → vite/plugins/pluginBuild}/handleAssetsManifest.js +39 -38
- package/dist/cjs/node/{plugin/plugins/build → vite/plugins/pluginBuild}/pluginAutoFullBuild.js +41 -37
- package/dist/cjs/node/{plugin/plugins/build → vite/plugins/pluginBuild}/pluginBuildApp.js +16 -16
- package/dist/cjs/node/{plugin/plugins/build → vite/plugins/pluginBuild}/pluginBuildConfig.js +20 -21
- package/dist/cjs/node/{plugin/plugins/build → vite/plugins/pluginBuild}/pluginBuildEntry.js +16 -17
- package/dist/cjs/node/{plugin/plugins/build → vite/plugins/pluginBuild}/pluginDistFileNames.js +14 -12
- package/dist/cjs/node/{plugin/plugins/build → vite/plugins/pluginBuild}/pluginDistPackageJsonFile.js +2 -2
- package/dist/cjs/node/{plugin/plugins/build → vite/plugins/pluginBuild}/pluginModuleBanner.js +6 -6
- package/dist/cjs/node/{plugin/plugins/build → vite/plugins/pluginBuild}/pluginSuppressRollupWarning.js +3 -3
- package/dist/cjs/node/vite/plugins/pluginBuild.js +23 -0
- package/dist/cjs/node/{plugin/plugins/commonConfig → vite/plugins/pluginCommon}/assertResolveAlias.js +2 -2
- package/dist/cjs/node/{plugin/plugins/commonConfig.js → vite/plugins/pluginCommon.js} +40 -77
- package/dist/cjs/node/{plugin/plugins/devConfig → vite/plugins/pluginDev}/determineFsAllowList.js +2 -2
- package/dist/cjs/node/{plugin/plugins/devConfig → vite/plugins/pluginDev}/determineOptimizeDeps.js +9 -8
- package/dist/cjs/node/{plugin/plugins/devConfig/index.js → vite/plugins/pluginDev.js} +19 -19
- package/dist/cjs/node/{plugin/plugins/envVars.js → vite/plugins/pluginEnvVars.js} +7 -7
- package/dist/cjs/node/{plugin/plugins/extractAssetsPlugin.js → vite/plugins/pluginExtractAssets.js} +27 -26
- package/dist/cjs/node/{plugin/plugins/extractExportNamesPlugin.js → vite/plugins/pluginExtractExportNames.js} +7 -7
- package/dist/cjs/node/{plugin/plugins/fileEnv.js → vite/plugins/pluginFileEnv.js} +20 -14
- package/dist/cjs/node/{plugin/plugins/previewConfig.js → vite/plugins/pluginPreview.js} +18 -18
- package/dist/cjs/node/{plugin/plugins/replaceConstants.js → vite/plugins/pluginReplaceConstants.js} +6 -6
- package/dist/cjs/node/{plugin/plugins/setGlobalContext.js → vite/plugins/pluginSetGlobalContext.js} +13 -16
- package/dist/cjs/node/vite/plugins/pluginVirtualFiles/debug.js +5 -0
- package/dist/cjs/node/{plugin/plugins/importUserCode/getVirtualFileImportUserCode.js → vite/plugins/pluginVirtualFiles/getVirtualFileEntry.js} +27 -26
- package/dist/cjs/node/vite/plugins/pluginVirtualFiles/getVirtualFilePageConfigLazy.js +55 -0
- package/dist/cjs/node/{plugin/plugins/importUserCode/v1-design/virtual-files/getVirtualFilePageConfigs.js → vite/plugins/pluginVirtualFiles/getVirtualFilePageConfigsEager.js} +9 -9
- package/dist/cjs/node/vite/plugins/pluginVirtualFiles.js +209 -0
- package/dist/cjs/node/{plugin/plugins/workaroundCssModuleHmr.js → vite/plugins/pluginWorkaroundCssModuleHmr.js} +4 -4
- package/dist/cjs/node/{plugin/plugins/workaroundVite6HmrRegression.js → vite/plugins/pluginWorkaroundVite6HmrRegression.js} +5 -5
- package/dist/cjs/node/{plugin → vite}/shared/addSsrMiddleware.js +3 -3
- package/dist/cjs/node/{plugin → vite}/shared/findPageFiles.js +1 -1
- package/dist/cjs/node/{plugin → vite}/shared/getFilePath.js +24 -24
- package/dist/cjs/node/{plugin → vite}/shared/getHttpRequestAsyncStore.js +5 -5
- package/dist/cjs/node/{plugin → vite}/shared/getOutDirs.js +2 -2
- package/dist/cjs/node/{plugin → vite}/shared/getViteConfigRuntime.js +3 -3
- package/dist/cjs/node/{plugin → vite}/shared/isAsset.js +1 -1
- package/dist/cjs/node/{plugin → vite}/shared/isViteCliCall.js +1 -1
- package/dist/cjs/node/{plugin → vite}/shared/isViteServerBuild.js +2 -2
- package/dist/cjs/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errBabelReact.js +1 -1
- package/dist/cjs/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errBabelSolid.js +1 -1
- package/dist/cjs/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errEsbuild.js +5 -5
- package/dist/cjs/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errMdx1.js +3 -3
- package/dist/cjs/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errMdx2.js +10 -10
- package/dist/cjs/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errPostcss.js +2 -2
- package/dist/cjs/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errSwc.js +2 -2
- package/dist/cjs/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errSwcBig.js +2 -2
- package/dist/cjs/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errVueCss.js +2 -2
- package/dist/cjs/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errVueHtml.js +1 -1
- package/dist/cjs/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errVueJavascript.js +1 -1
- package/dist/cjs/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet.js +3 -3
- package/dist/cjs/node/{plugin → vite}/shared/loggerNotProd.js +4 -6
- package/dist/cjs/node/{plugin → vite}/shared/loggerVite.js +1 -1
- package/dist/cjs/node/{plugin → vite}/shared/resolveClientEntriesDev.js +2 -2
- package/dist/cjs/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/assertExtensions.js +6 -6
- package/dist/cjs/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/configDefinitionsBuiltIn.js +46 -59
- package/dist/cjs/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/crawlPlusFiles/ignorePatternsBuiltIn.js +1 -1
- package/dist/cjs/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/crawlPlusFiles.js +15 -15
- package/dist/cjs/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/filesystemRouting.js +15 -6
- package/dist/cjs/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/getConfigFileExport.js +2 -2
- package/dist/cjs/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/getPlusFilesAll.js +6 -6
- package/dist/cjs/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/loadFileAtConfigTime.js +7 -7
- package/dist/cjs/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/pointerImports.js +6 -6
- package/dist/cjs/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/resolvePointerImport.js +7 -7
- package/dist/cjs/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/transpileAndExecuteFile.js +27 -27
- package/dist/cjs/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig.js → vite/shared/resolveVikeConfigInternal.js} +227 -149
- package/dist/cjs/node/{plugin → vite}/utils.js +2 -7
- package/dist/cjs/shared/assertHookReturnedObject.js +1 -1
- package/dist/cjs/shared/assertPageContextProvidedByUser.js +2 -2
- package/dist/cjs/shared/createGlobalContextShared.js +35 -27
- package/dist/cjs/shared/createPageContextShared.js +4 -6
- package/dist/cjs/shared/getPageContextRequestUrl.js +1 -1
- package/dist/cjs/shared/getPageContextUrlComputed.js +5 -5
- package/dist/cjs/shared/getPageFiles/analyzePageClientSide/analyzeExports.js +3 -3
- package/dist/cjs/shared/getPageFiles/analyzePageClientSide/determineClientEntry.js +3 -3
- package/dist/cjs/shared/getPageFiles/analyzePageClientSide.js +3 -4
- package/dist/cjs/shared/getPageFiles/fileTypes.js +1 -1
- package/dist/cjs/shared/getPageFiles/getAllPageIdFiles.js +2 -2
- package/dist/cjs/shared/getPageFiles/getPageFileObject.js +1 -1
- package/dist/cjs/shared/getPageFiles/{parseGlobResults.js → parseVirtualFileExports.js} +18 -18
- package/dist/cjs/shared/getProxyForPublicUsage.js +3 -3
- package/dist/cjs/shared/hooks/execHook.js +2 -2
- package/dist/cjs/shared/hooks/getHook.js +4 -4
- package/dist/cjs/shared/modifyUrl.js +1 -1
- package/dist/cjs/shared/page-configs/assertPlusFileExport.js +3 -3
- package/dist/cjs/shared/page-configs/getConfigValueBuildTime.js +4 -4
- package/dist/cjs/shared/page-configs/loadConfigValues.js +1 -1
- package/dist/cjs/shared/page-configs/{getUserFriendlyConfigs.js → resolveVikeConfigPublic.js} +43 -45
- package/dist/cjs/shared/page-configs/serialize/parsePageConfigs.js +3 -3
- package/dist/cjs/shared/page-configs/serialize/serializeConfigValues.js +12 -12
- package/dist/cjs/shared/preparePageContextForPublicUsage.js +4 -4
- package/dist/cjs/shared/route/abort.js +7 -7
- package/dist/cjs/shared/route/debug.js +1 -1
- package/dist/cjs/shared/route/deduceRouteStringFromFilesystemPath.js +1 -1
- package/dist/cjs/shared/route/executeGuardHook.js +3 -3
- package/dist/cjs/shared/route/executeOnBeforeRouteHook.js +6 -6
- package/dist/cjs/shared/route/index.js +10 -9
- package/dist/cjs/shared/route/loadPageRoutes.js +8 -8
- package/dist/cjs/shared/route/resolvePrecedence.js +2 -2
- package/dist/cjs/shared/route/resolveRoute.js +1 -1
- package/dist/cjs/shared/route/resolveRouteFunction.js +2 -2
- package/dist/cjs/shared/utils.js +1 -0
- package/dist/cjs/utils/PROJECT_VERSION.js +1 -1
- package/dist/cjs/utils/assert.js +9 -9
- package/dist/cjs/utils/assertKeys.js +1 -1
- package/dist/cjs/utils/assertSetup.js +2 -2
- package/dist/cjs/utils/assertSingleInstance.js +6 -6
- package/dist/cjs/utils/catchInfiniteLoop.js +1 -1
- package/dist/cjs/utils/debug.js +3 -3
- package/dist/cjs/utils/findFile.js +5 -5
- package/dist/cjs/utils/findPackageJson.js +3 -3
- package/dist/cjs/utils/formatHintLog.js +1 -1
- package/dist/cjs/utils/freezePartial.js +1 -1
- package/dist/cjs/utils/genPromise.js +46 -3
- package/dist/cjs/utils/getMostSimilar.js +1 -1
- package/dist/cjs/utils/injectRollupInputs.js +2 -2
- package/dist/cjs/utils/isDev.js +1 -1
- package/dist/cjs/utils/isFilePathAbsoluteFilesystem.js +1 -1
- package/dist/cjs/utils/objectAssignSafe.js +1 -1
- package/dist/cjs/utils/pLimit.js +4 -4
- package/dist/cjs/utils/parseNpmPackage.js +2 -2
- package/dist/cjs/utils/parseUrl.js +3 -3
- package/dist/cjs/utils/path.js +1 -1
- package/dist/cjs/utils/preservePropertyGetters.js +1 -1
- package/dist/cjs/utils/{removeFileExtention.js → removeFileExtension.js} +2 -2
- package/dist/cjs/utils/requireResolve.js +10 -10
- package/dist/cjs/utils/rollupSourceMap.js +2 -2
- package/dist/cjs/utils/stripAnsi.js +1 -1
- package/dist/cjs/utils/styleFileRE.js +1 -0
- package/dist/cjs/utils/trimWithAnsi.js +1 -1
- package/dist/esm/__internal/index.d.ts +1 -1
- package/dist/esm/__internal/index.js +2 -2
- package/dist/esm/client/index.d.ts +1 -1
- package/dist/esm/client/index.js +1 -1
- package/dist/esm/client/node.js +2 -2
- package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/createPageContextClientSide.d.ts +15 -16
- package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/createPageContextClientSide.js +3 -8
- package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/getBaseServer.js +1 -1
- package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/getPageContext/removeBuiltInOverrides.js +1 -1
- package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/getPageContextCurrent.d.ts +2 -2
- package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/getPageContextCurrent.js +2 -2
- package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/getPageContextFromHooks.d.ts +89 -92
- package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/getPageContextFromHooks.js +10 -10
- package/dist/esm/client/runtime-client-routing/globalContext.d.ts +30 -0
- package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/globalContext.js +2 -2
- package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/history.js +7 -7
- package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/index.d.ts +1 -1
- package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/initClientRouter.js +1 -1
- package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/initOnLinkClick.js +1 -1
- package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/initOnPopState.js +1 -1
- package/dist/esm/client/runtime-client-routing/isClientSideRoutable.d.ts +7 -0
- package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/isClientSideRoutable.js +2 -2
- package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/navigate.js +1 -1
- package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/prefetch/getPrefetchSettings.d.ts +2 -2
- package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/prefetch/getPrefetchSettings.js +2 -2
- package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/prefetch.d.ts +2 -2
- package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/prefetch.js +15 -15
- package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/preparePageContextForPublicUsageClient.d.ts +3 -3
- package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/renderPageClientSide.d.ts +30 -31
- package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/renderPageClientSide.js +42 -30
- package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/scrollRestoration.js +1 -1
- package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/setScrollPosition.js +1 -1
- package/dist/esm/client/runtime-server-routing/createPageContextClientSide.d.ts +43 -0
- package/dist/esm/client/{server-routing-runtime → runtime-server-routing}/createPageContextClientSide.js +13 -9
- package/dist/esm/client/runtime-server-routing/globalContext.d.ts +27 -0
- package/dist/esm/client/{server-routing-runtime → runtime-server-routing}/globalContext.js +1 -1
- package/dist/esm/client/{server-routing-runtime → runtime-server-routing}/index.d.ts +1 -1
- package/dist/esm/client/{server-routing-runtime → runtime-server-routing}/preparePageContextForPublicUsageClient.d.ts +3 -3
- package/dist/esm/client/shared/createGetGlobalContextClient.d.ts +14 -12
- package/dist/esm/client/shared/createGetGlobalContextClient.js +3 -3
- package/dist/esm/client/shared/executeOnRenderClientHook.d.ts +4 -4
- package/dist/esm/client/shared/executeOnRenderClientHook.js +2 -2
- package/dist/esm/client/shared/loadPageConfigsLazyClientSide.d.ts +15 -11
- package/dist/esm/client/shared/loadPageConfigsLazyClientSide.js +6 -6
- package/dist/esm/client/shared/preparePageContextForPublicUsageClientShared.d.ts +3 -3
- package/dist/esm/client/shared/preparePageContextForPublicUsageClientShared.js +5 -5
- package/dist/esm/node/api/build.js +8 -3
- package/dist/esm/node/api/dev.js +1 -1
- package/dist/esm/node/api/prepareViteApiCall.d.ts +2 -2
- package/dist/esm/node/api/prepareViteApiCall.js +18 -13
- package/dist/esm/node/api/prerender.d.ts +1 -1
- package/dist/esm/node/api/prerender.js +2 -2
- package/dist/esm/node/api/preview.js +3 -3
- package/dist/esm/node/api/types.d.ts +1 -1
- package/dist/esm/node/cli/entry.js +2 -2
- package/dist/esm/node/cli/parseCli.js +3 -3
- package/dist/esm/node/client/router.js +1 -1
- package/dist/esm/node/createPageRenderer.js +1 -1
- package/dist/esm/node/prerender/context.d.ts +7 -6
- package/dist/esm/node/prerender/context.js +7 -7
- package/dist/esm/node/prerender/resolvePrerenderConfig.d.ts +4 -3
- package/dist/esm/node/prerender/resolvePrerenderConfig.js +9 -8
- package/dist/esm/node/prerender/runPrerender.d.ts +295 -57
- package/dist/esm/node/prerender/runPrerender.js +110 -110
- package/dist/esm/node/prerender/runPrerenderEntry.d.ts +14 -0
- package/dist/esm/node/prerender/runPrerenderEntry.js +53 -0
- package/dist/esm/node/prerender/utils.d.ts +1 -0
- package/dist/esm/node/prerender/utils.js +1 -0
- package/dist/esm/node/runtime/globalContext.d.ts +44 -45
- package/dist/esm/node/runtime/globalContext.js +81 -41
- package/dist/esm/node/runtime/html/injectAssets/getHtmlTags.js +9 -9
- package/dist/esm/node/runtime/html/injectAssets/getViteDevScript.js +1 -1
- package/dist/esm/node/runtime/html/injectAssets/inferHtmlTags.js +1 -1
- package/dist/esm/node/runtime/html/injectAssets/injectAssets__public.js +5 -5
- package/dist/esm/node/runtime/html/injectAssets/injectHtmlTags.js +3 -3
- package/dist/esm/node/runtime/html/injectAssets.d.ts +0 -2
- package/dist/esm/node/runtime/html/injectAssets.js +2 -2
- package/dist/esm/node/runtime/html/renderHtml.js +10 -10
- package/dist/esm/node/runtime/html/serializeContext.d.ts +2 -3
- package/dist/esm/node/runtime/html/serializeContext.js +6 -6
- package/dist/esm/node/runtime/html/stream.d.ts +1 -1
- package/dist/esm/node/runtime/html/stream.js +21 -21
- package/dist/esm/node/runtime/index-deprecated.js +3 -3
- package/dist/esm/node/runtime/index.js +1 -1
- package/dist/esm/node/runtime/{renderPage/loggerRuntime.d.ts → loggerRuntime.d.ts} +1 -1
- package/dist/esm/node/runtime/{renderPage/loggerRuntime.js → loggerRuntime.js} +1 -1
- package/dist/esm/node/runtime/renderPage/analyzePage.d.ts +1 -1
- package/dist/esm/node/runtime/renderPage/analyzePage.js +7 -7
- package/dist/esm/node/runtime/renderPage/assertArguments.js +1 -1
- package/dist/esm/node/runtime/renderPage/createHttpResponse/assertNoInfiniteHttpRedirect.js +1 -1
- package/dist/esm/node/runtime/renderPage/createHttpResponse/getCacheControl.d.ts +1 -1
- package/dist/esm/node/runtime/renderPage/createHttpResponse.d.ts +3 -5
- package/dist/esm/node/runtime/renderPage/createHttpResponse.js +8 -9
- package/dist/esm/node/runtime/renderPage/createPageContextServerSide.d.ts +21 -23
- package/dist/esm/node/runtime/renderPage/createPageContextServerSide.js +8 -16
- package/dist/esm/node/runtime/renderPage/debugPageFiles.d.ts +3 -4
- package/dist/esm/node/runtime/renderPage/debugPageFiles.js +2 -2
- package/dist/esm/node/runtime/renderPage/execHookServer.d.ts +3 -3
- package/dist/esm/node/runtime/renderPage/execHookServer.js +2 -5
- package/dist/esm/node/runtime/renderPage/executeOnBeforeRenderAndDataHooks.js +1 -1
- package/dist/esm/node/runtime/renderPage/executeOnRenderHtmlHook.d.ts +0 -2
- package/dist/esm/node/runtime/renderPage/executeOnRenderHtmlHook.js +7 -7
- package/dist/esm/node/runtime/renderPage/getEarlyHints.js +1 -1
- package/dist/esm/node/runtime/renderPage/getHttpResponseBody.js +2 -2
- package/dist/esm/node/runtime/renderPage/getPageAssets/getManifestEntry.d.ts +1 -1
- package/dist/esm/node/runtime/renderPage/getPageAssets/getManifestEntry.js +5 -5
- package/dist/esm/node/runtime/renderPage/getPageAssets/retrieveAssetsProd.d.ts +1 -1
- package/dist/esm/node/runtime/renderPage/getPageAssets/retrieveAssetsProd.js +1 -1
- package/dist/esm/node/runtime/renderPage/getPageAssets.d.ts +4 -2
- package/dist/esm/node/runtime/renderPage/getPageAssets.js +7 -3
- package/dist/esm/node/runtime/renderPage/handleErrorWithoutErrorPage.d.ts +0 -4
- package/dist/esm/node/runtime/renderPage/handleErrorWithoutErrorPage.js +2 -2
- package/dist/esm/node/runtime/renderPage/handlePageContextRequestUrl.js +1 -1
- package/dist/esm/node/runtime/renderPage/isFontFallback.js +3 -3
- package/dist/esm/node/runtime/renderPage/isNewError.d.ts +2 -0
- package/dist/esm/node/runtime/renderPage/isNewError.js +2 -1
- package/dist/esm/node/runtime/renderPage/loadPageConfigsLazyServerSide.d.ts +14 -9
- package/dist/esm/node/runtime/renderPage/loadPageConfigsLazyServerSide.js +33 -26
- package/dist/esm/node/runtime/renderPage/log404/index.d.ts +0 -1
- package/dist/esm/node/runtime/renderPage/log404/index.js +6 -10
- package/dist/esm/node/runtime/renderPage/logErrorHint/errors.d.ts +1 -1
- package/dist/esm/node/runtime/renderPage/logErrorHint/errors.js +1 -1
- package/dist/esm/node/runtime/renderPage/logErrorHint.js +19 -19
- package/dist/esm/node/runtime/renderPage/loggerProd.d.ts +1 -1
- package/dist/esm/node/runtime/renderPage/loggerProd.js +3 -3
- package/dist/esm/node/runtime/renderPage/preparePageContextForPublicUsageServer.d.ts +3 -3
- package/dist/esm/node/runtime/renderPage/preparePageContextForPublicUsageServer.js +1 -1
- package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.d.ts +42 -46
- package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.js +8 -6
- package/dist/esm/node/runtime/renderPage/resolveRedirects.d.ts +2 -0
- package/dist/esm/node/runtime/renderPage/resolveRedirects.js +24 -6
- package/dist/esm/node/runtime/renderPage.d.ts +19 -21
- package/dist/esm/node/runtime/renderPage.js +91 -82
- package/dist/esm/node/runtime/universal-middleware.js +2 -2
- package/dist/esm/node/runtime/utils.d.ts +1 -1
- package/dist/esm/node/runtime/utils.js +1 -1
- package/dist/esm/node/runtime-dev/createDevMiddleware.js +3 -3
- package/dist/esm/node/shared/assertV1Design.d.ts +1 -1
- package/dist/esm/node/shared/extractAssetsQuery.js +1 -1
- package/dist/esm/node/shared/getVikeConfigError.d.ts +13 -0
- package/dist/esm/node/shared/getVikeConfigError.js +20 -0
- package/dist/esm/node/shared/resolveBase.js +1 -1
- package/dist/esm/node/shared/utils.d.ts +1 -0
- package/dist/esm/node/shared/utils.js +1 -0
- package/dist/esm/node/shared/virtualFiles/virtualFileEntry.d.ts +11 -0
- package/dist/esm/node/shared/virtualFiles/virtualFileEntry.js +26 -0
- package/dist/esm/node/shared/virtualFiles/virtualFilePageConfigLazy.d.ts +9 -0
- package/dist/esm/node/shared/{virtual-files/virtualFilePageConfigValuesAll.js → virtualFiles/virtualFilePageConfigLazy.js} +8 -8
- package/dist/esm/node/{plugin → vite}/index.d.ts +1 -1
- package/dist/esm/node/vite/index.js +60 -0
- package/dist/esm/node/vite/plugins/pluginBaseUrls.d.ts +3 -0
- package/dist/esm/node/{plugin/plugins/baseUrls.js → vite/plugins/pluginBaseUrls.js} +11 -12
- package/dist/esm/node/{plugin/plugins/build → vite/plugins/pluginBuild}/handleAssetsManifest.d.ts +5 -4
- package/dist/esm/node/{plugin/plugins/build → vite/plugins/pluginBuild}/handleAssetsManifest.js +23 -22
- package/dist/esm/node/{plugin/plugins/build → vite/plugins/pluginBuild}/pluginAutoFullBuild.js +40 -36
- package/dist/esm/node/{plugin/plugins/build → vite/plugins/pluginBuild}/pluginBuildApp.js +15 -15
- package/dist/esm/node/{plugin/plugins/build → vite/plugins/pluginBuild}/pluginBuildConfig.d.ts +1 -1
- package/dist/esm/node/{plugin/plugins/build → vite/plugins/pluginBuild}/pluginBuildConfig.js +22 -23
- package/dist/esm/node/{plugin/plugins/build → vite/plugins/pluginBuild}/pluginBuildEntry.d.ts +1 -2
- package/dist/esm/node/{plugin/plugins/build → vite/plugins/pluginBuild}/pluginBuildEntry.js +14 -15
- package/dist/esm/node/{plugin/plugins/build → vite/plugins/pluginBuild}/pluginDistFileNames.js +11 -9
- package/dist/esm/node/{plugin/plugins/build → vite/plugins/pluginBuild}/pluginDistPackageJsonFile.js +2 -2
- package/dist/esm/node/{plugin/plugins/build → vite/plugins/pluginBuild}/pluginModuleBanner.js +5 -5
- package/dist/esm/node/{plugin/plugins/build → vite/plugins/pluginBuild}/pluginSuppressRollupWarning.js +3 -3
- package/dist/esm/node/vite/plugins/pluginBuild.d.ts +3 -0
- package/dist/esm/node/vite/plugins/pluginBuild.js +21 -0
- package/dist/esm/node/{plugin/plugins/commonConfig → vite/plugins/pluginCommon}/assertResolveAlias.js +2 -2
- package/dist/esm/node/vite/plugins/pluginCommon.d.ts +13 -0
- package/dist/esm/node/{plugin/plugins/commonConfig.js → vite/plugins/pluginCommon.js} +40 -77
- package/dist/esm/node/{plugin/plugins/devConfig → vite/plugins/pluginDev}/determineFsAllowList.js +1 -1
- package/dist/esm/node/{plugin/plugins/devConfig → vite/plugins/pluginDev}/determineOptimizeDeps.js +10 -9
- package/dist/esm/node/{plugin/plugins/devConfig/index.d.ts → vite/plugins/pluginDev.d.ts} +2 -2
- package/dist/esm/node/{plugin/plugins/devConfig/index.js → vite/plugins/pluginDev.js} +19 -19
- package/dist/esm/node/vite/plugins/pluginEnvVars.d.ts +3 -0
- package/dist/esm/node/{plugin/plugins/envVars.js → vite/plugins/pluginEnvVars.js} +8 -8
- package/dist/esm/node/{plugin/plugins/extractAssetsPlugin.d.ts → vite/plugins/pluginExtractAssets.d.ts} +2 -2
- package/dist/esm/node/{plugin/plugins/extractAssetsPlugin.js → vite/plugins/pluginExtractAssets.js} +27 -26
- package/dist/esm/node/{plugin/plugins/extractExportNamesPlugin.d.ts → vite/plugins/pluginExtractExportNames.d.ts} +2 -2
- package/dist/esm/node/{plugin/plugins/extractExportNamesPlugin.js → vite/plugins/pluginExtractExportNames.js} +8 -8
- package/dist/esm/node/vite/plugins/pluginFileEnv.d.ts +3 -0
- package/dist/esm/node/{plugin/plugins/fileEnv.js → vite/plugins/pluginFileEnv.js} +20 -14
- package/dist/esm/node/vite/plugins/pluginPreview.d.ts +3 -0
- package/dist/esm/node/{plugin/plugins/previewConfig.js → vite/plugins/pluginPreview.js} +13 -13
- package/dist/esm/node/vite/plugins/pluginReplaceConstants.d.ts +3 -0
- package/dist/esm/node/{plugin/plugins/replaceConstants.js → vite/plugins/pluginReplaceConstants.js} +6 -6
- package/dist/esm/node/vite/plugins/pluginSetGlobalContext.d.ts +3 -0
- package/dist/esm/node/{plugin/plugins/setGlobalContext.js → vite/plugins/pluginSetGlobalContext.js} +15 -18
- package/dist/esm/node/vite/plugins/pluginVirtualFiles/debug.js +2 -0
- package/dist/esm/node/vite/plugins/pluginVirtualFiles/getVirtualFileEntry.d.ts +5 -0
- package/dist/esm/node/{plugin/plugins/importUserCode/getVirtualFileImportUserCode.js → vite/plugins/pluginVirtualFiles/getVirtualFileEntry.js} +28 -27
- package/dist/esm/node/vite/plugins/pluginVirtualFiles/getVirtualFilePageConfigLazy.d.ts +3 -0
- package/dist/esm/node/vite/plugins/pluginVirtualFiles/getVirtualFilePageConfigLazy.js +53 -0
- package/dist/esm/node/vite/plugins/pluginVirtualFiles/getVirtualFilePageConfigsEager.d.ts +2 -0
- package/dist/esm/node/{plugin/plugins/importUserCode/v1-design/virtual-files/getVirtualFilePageConfigs.js → vite/plugins/pluginVirtualFiles/getVirtualFilePageConfigsEager.js} +9 -9
- package/dist/esm/node/{plugin/plugins/importUserCode/v1-design/virtual-files → vite/plugins/pluginVirtualFiles}/isRuntimeEnvMatch.d.ts +1 -1
- package/dist/esm/node/vite/plugins/pluginVirtualFiles.d.ts +3 -0
- package/dist/esm/node/{plugin/plugins/importUserCode/index.js → vite/plugins/pluginVirtualFiles.js} +72 -40
- package/dist/esm/node/vite/plugins/pluginWorkaroundCssModuleHmr.d.ts +3 -0
- package/dist/esm/node/{plugin/plugins/workaroundCssModuleHmr.js → vite/plugins/pluginWorkaroundCssModuleHmr.js} +4 -4
- package/dist/esm/node/vite/plugins/pluginWorkaroundVite6HmrRegression.d.ts +3 -0
- package/dist/esm/node/{plugin/plugins/workaroundVite6HmrRegression.js → vite/plugins/pluginWorkaroundVite6HmrRegression.js} +5 -5
- package/dist/esm/node/{plugin → vite}/shared/addSsrMiddleware.js +3 -3
- package/dist/esm/node/{plugin → vite}/shared/findPageFiles.js +1 -1
- package/dist/esm/node/{plugin → vite}/shared/getFilePath.d.ts +6 -6
- package/dist/esm/node/{plugin → vite}/shared/getFilePath.js +22 -22
- package/dist/esm/node/{plugin → vite}/shared/getHttpRequestAsyncStore.js +5 -5
- package/dist/esm/node/{plugin → vite}/shared/getOutDirs.js +2 -2
- package/dist/esm/node/{plugin → vite}/shared/getViteConfigRuntime.js +3 -3
- package/dist/esm/node/{plugin → vite}/shared/isAsset.js +1 -1
- package/dist/esm/node/{plugin → vite}/shared/isViteCliCall.js +1 -1
- package/dist/esm/node/{plugin → vite}/shared/isViteServerBuild.js +2 -2
- package/dist/esm/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errBabelReact.js +1 -1
- package/dist/esm/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errBabelSolid.js +1 -1
- package/dist/esm/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errEsbuild.js +5 -5
- package/dist/esm/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errMdx1.js +3 -3
- package/dist/esm/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errMdx2.js +10 -10
- package/dist/esm/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errPostcss.js +2 -2
- package/dist/esm/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errSwc.js +2 -2
- package/dist/esm/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errSwcBig.js +2 -2
- package/dist/esm/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errVueCss.js +2 -2
- package/dist/esm/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errVueHtml.js +1 -1
- package/dist/esm/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errVueJavascript.js +1 -1
- package/dist/esm/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet.js +4 -4
- package/dist/esm/node/{plugin → vite}/shared/loggerNotProd.d.ts +1 -1
- package/dist/esm/node/{plugin → vite}/shared/loggerNotProd.js +6 -8
- package/dist/esm/node/{plugin → vite}/shared/loggerVite.js +1 -1
- package/dist/esm/node/{plugin → vite}/shared/resolveClientEntriesDev.js +3 -3
- package/dist/esm/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/assertExtensions.js +3 -3
- package/dist/esm/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/configDefinitionsBuiltIn.d.ts +3 -4
- package/dist/esm/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/configDefinitionsBuiltIn.js +46 -59
- package/dist/esm/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/crawlPlusFiles/ignorePatternsBuiltIn.js +1 -1
- package/dist/esm/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/crawlPlusFiles.js +11 -11
- package/dist/esm/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/filesystemRouting.js +15 -6
- package/dist/esm/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/getConfigFileExport.js +2 -2
- package/dist/esm/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/getPlusFilesAll.d.ts +1 -1
- package/dist/esm/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/getPlusFilesAll.js +6 -6
- package/dist/esm/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/loadFileAtConfigTime.d.ts +1 -1
- package/dist/esm/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/loadFileAtConfigTime.js +5 -5
- package/dist/esm/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/pointerImports.js +6 -6
- package/dist/esm/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/resolvePointerImport.d.ts +2 -2
- package/dist/esm/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/resolvePointerImport.js +7 -7
- package/dist/esm/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/transpileAndExecuteFile.d.ts +1 -1
- package/dist/esm/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/transpileAndExecuteFile.js +15 -15
- package/dist/esm/node/vite/shared/resolveVikeConfigInternal.d.ts +68 -0
- package/dist/esm/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig.js → vite/shared/resolveVikeConfigInternal.js} +229 -149
- package/dist/esm/node/{plugin → vite}/utils.d.ts +0 -6
- package/dist/esm/node/{plugin → vite}/utils.js +2 -7
- package/dist/esm/shared/assertHookReturnedObject.js +1 -1
- package/dist/esm/shared/assertPageContextProvidedByUser.d.ts +1 -1
- package/dist/esm/shared/assertPageContextProvidedByUser.js +2 -2
- package/dist/esm/shared/createGlobalContextShared.d.ts +29 -26
- package/dist/esm/shared/createGlobalContextShared.js +36 -28
- package/dist/esm/shared/createPageContextShared.d.ts +8 -3
- package/dist/esm/shared/createPageContextShared.js +4 -6
- package/dist/esm/shared/error-page.d.ts +1 -1
- package/dist/esm/shared/getPageContextRequestUrl.js +1 -1
- package/dist/esm/shared/getPageContextUrlComputed.js +5 -5
- package/dist/esm/shared/getPageFiles/analyzeClientSide.d.ts +1 -1
- package/dist/esm/shared/getPageFiles/analyzePageClientSide/analyzeExports.d.ts +1 -1
- package/dist/esm/shared/getPageFiles/analyzePageClientSide/analyzeExports.js +3 -3
- package/dist/esm/shared/getPageFiles/analyzePageClientSide/determineClientEntry.d.ts +2 -2
- package/dist/esm/shared/getPageFiles/analyzePageClientSide/determineClientEntry.js +3 -3
- package/dist/esm/shared/getPageFiles/analyzePageClientSide.js +3 -4
- package/dist/esm/shared/getPageFiles/fileTypes.js +1 -1
- package/dist/esm/shared/getPageFiles/getAllPageIdFiles.js +2 -2
- package/dist/esm/shared/getPageFiles/getPageFileObject.js +1 -1
- package/dist/esm/shared/getPageFiles/{parseGlobResults.d.ts → parseVirtualFileExports.d.ts} +3 -3
- package/dist/esm/shared/getPageFiles/{parseGlobResults.js → parseVirtualFileExports.js} +18 -18
- package/dist/esm/shared/getPageFiles.d.ts +1 -1
- package/dist/esm/shared/getProxyForPublicUsage.d.ts +1 -1
- package/dist/esm/shared/getProxyForPublicUsage.js +3 -3
- package/dist/esm/shared/hooks/execHook.d.ts +8 -7
- package/dist/esm/shared/hooks/execHook.js +3 -3
- package/dist/esm/shared/hooks/getHook.d.ts +5 -5
- package/dist/esm/shared/hooks/getHook.js +4 -4
- package/dist/esm/shared/modifyUrl.js +1 -1
- package/dist/esm/shared/modifyUrlSameOrigin.js +1 -1
- package/dist/esm/shared/page-configs/assertPlusFileExport.js +3 -3
- package/dist/esm/shared/page-configs/findPageConfig.d.ts +1 -1
- package/dist/esm/shared/page-configs/getConfigDefinedAt.d.ts +1 -1
- package/dist/esm/shared/page-configs/getConfigValueBuildTime.d.ts +2 -2
- package/dist/esm/shared/page-configs/getConfigValueBuildTime.js +4 -4
- package/dist/esm/shared/page-configs/getConfigValueRuntime.d.ts +2 -2
- package/dist/esm/shared/page-configs/getConfigValueTyped.d.ts +2 -2
- package/dist/esm/shared/page-configs/helpers.d.ts +1 -1
- package/dist/esm/shared/page-configs/loadConfigValues.d.ts +1 -1
- package/dist/esm/shared/page-configs/loadConfigValues.js +1 -1
- package/dist/esm/shared/page-configs/{getUserFriendlyConfigs.d.ts → resolveVikeConfigPublic.d.ts} +22 -22
- package/dist/esm/shared/page-configs/{getUserFriendlyConfigs.js → resolveVikeConfigPublic.js} +46 -46
- package/dist/esm/shared/page-configs/serialize/PageConfigSerialized.d.ts +2 -2
- package/dist/esm/shared/page-configs/serialize/parsePageConfigs.d.ts +1 -1
- package/dist/esm/shared/page-configs/serialize/parsePageConfigs.js +3 -3
- package/dist/esm/shared/page-configs/serialize/serializeConfigValues.d.ts +1 -1
- package/dist/esm/shared/page-configs/serialize/serializeConfigValues.js +12 -12
- package/dist/esm/shared/preparePageContextForPublicUsage.js +5 -5
- package/dist/esm/shared/route/abort.js +8 -8
- package/dist/esm/shared/route/debug.js +1 -1
- package/dist/esm/shared/route/deduceRouteStringFromFilesystemPath.js +1 -1
- package/dist/esm/shared/route/executeGuardHook.d.ts +3 -4
- package/dist/esm/shared/route/executeGuardHook.js +3 -3
- package/dist/esm/shared/route/executeOnBeforeRouteHook.js +8 -8
- package/dist/esm/shared/route/index.d.ts +2 -9
- package/dist/esm/shared/route/index.js +11 -10
- package/dist/esm/shared/route/loadPageRoutes.d.ts +1 -1
- package/dist/esm/shared/route/loadPageRoutes.js +8 -8
- package/dist/esm/shared/route/resolvePrecedence.d.ts +2 -2
- package/dist/esm/shared/route/resolvePrecedence.js +2 -2
- package/dist/esm/shared/route/resolveRoute.js +1 -1
- package/dist/esm/shared/route/resolveRouteFunction.js +2 -2
- package/dist/esm/shared/utils.d.ts +1 -0
- package/dist/esm/shared/utils.js +1 -0
- package/dist/esm/{shared/page-configs → types}/Config/PageContextConfig.d.ts +1 -1
- package/dist/esm/{shared/page-configs → types}/Config.d.ts +14 -8
- package/dist/esm/{shared/page-configs → types}/FilePath.d.ts +1 -1
- package/dist/esm/{shared/page-configs → types}/PageConfig.d.ts +10 -10
- package/dist/esm/{shared/types.d.ts → types/PageContext.d.ts} +9 -9
- package/dist/esm/types/defineConfig.d.ts +1 -1
- package/dist/esm/types/index-dreprecated.d.ts +1 -1
- package/dist/esm/types/index.d.ts +14 -14
- package/dist/esm/utils/PROJECT_VERSION.d.ts +1 -1
- package/dist/esm/utils/PROJECT_VERSION.js +1 -1
- package/dist/esm/utils/assert.js +9 -9
- package/dist/esm/utils/assertKeys.js +1 -1
- package/dist/esm/utils/assertSetup.js +2 -2
- package/dist/esm/utils/assertSingleInstance.js +6 -6
- package/dist/esm/utils/catchInfiniteLoop.js +1 -1
- package/dist/esm/utils/debug.d.ts +1 -1
- package/dist/esm/utils/debug.js +3 -3
- package/dist/esm/utils/findFile.js +2 -2
- package/dist/esm/utils/findPackageJson.js +2 -2
- package/dist/esm/utils/formatHintLog.js +1 -1
- package/dist/esm/utils/freezePartial.js +1 -1
- package/dist/esm/utils/genPromise.d.ts +5 -1
- package/dist/esm/utils/genPromise.js +47 -3
- package/dist/esm/utils/getMostSimilar.js +1 -1
- package/dist/esm/utils/injectRollupInputs.js +2 -2
- package/dist/esm/utils/isDev.js +1 -1
- package/dist/esm/utils/isFilePathAbsoluteFilesystem.js +1 -1
- package/dist/esm/utils/objectAssignSafe.js +1 -1
- package/dist/esm/utils/pLimit.js +4 -4
- package/dist/esm/utils/parseNpmPackage.js +2 -2
- package/dist/esm/utils/parseUrl.js +3 -3
- package/dist/esm/utils/path.js +1 -1
- package/dist/esm/utils/preservePropertyGetters.js +1 -1
- package/dist/esm/utils/removeFileExtension.d.ts +1 -0
- package/dist/esm/utils/{removeFileExtention.js → removeFileExtension.js} +1 -1
- package/dist/esm/utils/requireResolve.d.ts +3 -3
- package/dist/esm/utils/requireResolve.js +10 -10
- package/dist/esm/utils/rollupSourceMap.js +2 -2
- package/dist/esm/utils/stripAnsi.js +1 -1
- package/dist/esm/utils/styleFileRE.js +1 -0
- package/dist/esm/utils/trimWithAnsi.js +1 -1
- package/package.json +13 -13
- package/plugin.js +2 -2
- package/dist/cjs/node/plugin/index.js +0 -67
- package/dist/cjs/node/plugin/plugins/build.js +0 -23
- package/dist/cjs/node/plugin/plugins/importUserCode/index.js +0 -177
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/virtual-files/debug.js +0 -5
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/virtual-files/getVirtualFilePageConfigValuesAll.js +0 -46
- package/dist/cjs/node/runtime/renderPage/isVikeConfigInvalid.js +0 -10
- package/dist/cjs/node/shared/virtual-files/virtualFileImportUserCode.js +0 -29
- package/dist/esm/client/client-routing-runtime/globalContext.d.ts +0 -30
- package/dist/esm/client/client-routing-runtime/isClientSideRoutable.d.ts +0 -8
- package/dist/esm/client/server-routing-runtime/createPageContextClientSide.d.ts +0 -42
- package/dist/esm/client/server-routing-runtime/globalContext.d.ts +0 -27
- package/dist/esm/node/plugin/index.js +0 -60
- package/dist/esm/node/plugin/plugins/baseUrls.d.ts +0 -3
- package/dist/esm/node/plugin/plugins/build.d.ts +0 -3
- package/dist/esm/node/plugin/plugins/build.js +0 -21
- package/dist/esm/node/plugin/plugins/commonConfig.d.ts +0 -39
- package/dist/esm/node/plugin/plugins/envVars.d.ts +0 -3
- package/dist/esm/node/plugin/plugins/fileEnv.d.ts +0 -3
- package/dist/esm/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.d.ts +0 -6
- package/dist/esm/node/plugin/plugins/importUserCode/index.d.ts +0 -3
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.d.ts +0 -44
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/virtual-files/debug.js +0 -2
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/virtual-files/getVirtualFilePageConfigValuesAll.d.ts +0 -3
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/virtual-files/getVirtualFilePageConfigValuesAll.js +0 -44
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/virtual-files/getVirtualFilePageConfigs.d.ts +0 -3
- package/dist/esm/node/plugin/plugins/previewConfig.d.ts +0 -3
- package/dist/esm/node/plugin/plugins/replaceConstants.d.ts +0 -3
- package/dist/esm/node/plugin/plugins/setGlobalContext.d.ts +0 -3
- package/dist/esm/node/plugin/plugins/workaroundCssModuleHmr.d.ts +0 -3
- package/dist/esm/node/plugin/plugins/workaroundVite6HmrRegression.d.ts +0 -3
- package/dist/esm/node/runtime/renderPage/isVikeConfigInvalid.d.ts +0 -6
- package/dist/esm/node/runtime/renderPage/isVikeConfigInvalid.js +0 -8
- package/dist/esm/node/shared/virtual-files/virtualFileImportUserCode.d.ts +0 -11
- package/dist/esm/node/shared/virtual-files/virtualFileImportUserCode.js +0 -26
- package/dist/esm/node/shared/virtual-files/virtualFilePageConfigValuesAll.d.ts +0 -9
- package/dist/esm/utils/removeFileExtention.d.ts +0 -1
- /package/dist/cjs/client/{client-routing-runtime → runtime-client-routing}/prefetch/PrefetchSetting.js +0 -0
- /package/dist/cjs/client/{server-routing-runtime → runtime-server-routing}/onLoad.js +0 -0
- /package/dist/cjs/client/{server-routing-runtime → runtime-server-routing}/utils.js +0 -0
- /package/dist/cjs/node/shared/{virtual-files.js → virtualFiles.js} +0 -0
- /package/dist/cjs/node/{plugin → vite}/onLoad.js +0 -0
- /package/dist/cjs/node/{plugin/plugins/importUserCode/v1-design/virtual-files → vite/plugins/pluginVirtualFiles}/isRuntimeEnvMatch.js +0 -0
- /package/dist/cjs/node/{plugin → vite}/shared/applyRegExWithMagicString.js +0 -0
- /package/dist/cjs/node/{plugin → vite}/shared/getAssetsDir.js +0 -0
- /package/dist/cjs/node/{plugin → vite}/shared/getEnvVarObject.js +0 -0
- /package/dist/cjs/node/{plugin → vite}/shared/loggerNotProd/log.js +0 -0
- /package/dist/cjs/node/{plugin → vite}/shared/loggerVite/removeSuperfluousViteLog.js +0 -0
- /package/dist/cjs/node/{plugin → vite}/shared/normalizeId.js +0 -0
- /package/dist/cjs/node/{plugin → vite}/shared/parseEsModule.js +0 -0
- /package/dist/cjs/node/{plugin → vite}/shared/rollupIsEsm.js +0 -0
- /package/dist/cjs/{shared/page-configs → types}/Config/PageContextConfig.js +0 -0
- /package/dist/cjs/{shared/page-configs → types}/Config/helpers.js +0 -0
- /package/dist/cjs/{shared/page-configs → types}/Config.js +0 -0
- /package/dist/cjs/{shared/page-configs → types}/FilePath.js +0 -0
- /package/dist/cjs/{shared/page-configs → types}/PageConfig.js +0 -0
- /package/dist/cjs/{node/shared/ViteManifest.js → types/PageContext.js} +0 -0
- /package/dist/cjs/{shared → types}/VikeNamespace.js +0 -0
- /package/dist/cjs/{shared/types.js → types/ViteManifest.js} +0 -0
- /package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/entry.d.ts +0 -0
- /package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/entry.js +0 -0
- /package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/getBaseServer.d.ts +0 -0
- /package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/getPageContext/removeBuiltInOverrides.d.ts +0 -0
- /package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/history.d.ts +0 -0
- /package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/index.js +0 -0
- /package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/initClientRouter.d.ts +0 -0
- /package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/initOnLinkClick.d.ts +0 -0
- /package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/initOnPopState.d.ts +0 -0
- /package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/navigate.d.ts +0 -0
- /package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/normalizeUrlArgument.d.ts +0 -0
- /package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/normalizeUrlArgument.js +0 -0
- /package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/onLoad.d.ts +0 -0
- /package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/onLoad.js +0 -0
- /package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/prefetch/PrefetchSetting.d.ts +0 -0
- /package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/prefetch/PrefetchSetting.js +0 -0
- /package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/preparePageContextForPublicUsageClient.js +0 -0
- /package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/scrollRestoration.d.ts +0 -0
- /package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/setScrollPosition.d.ts +0 -0
- /package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/skipLink.d.ts +0 -0
- /package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/skipLink.js +0 -0
- /package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/utils.d.ts +0 -0
- /package/dist/esm/client/{client-routing-runtime → runtime-client-routing}/utils.js +0 -0
- /package/dist/esm/client/{server-routing-runtime → runtime-server-routing}/entry.d.ts +0 -0
- /package/dist/esm/client/{server-routing-runtime → runtime-server-routing}/entry.js +0 -0
- /package/dist/esm/client/{server-routing-runtime → runtime-server-routing}/index.js +0 -0
- /package/dist/esm/client/{server-routing-runtime → runtime-server-routing}/onLoad.d.ts +0 -0
- /package/dist/esm/client/{server-routing-runtime → runtime-server-routing}/onLoad.js +0 -0
- /package/dist/esm/client/{server-routing-runtime → runtime-server-routing}/preparePageContextForPublicUsageClient.js +0 -0
- /package/dist/esm/client/{server-routing-runtime → runtime-server-routing}/utils.d.ts +0 -0
- /package/dist/esm/client/{server-routing-runtime → runtime-server-routing}/utils.js +0 -0
- /package/dist/esm/node/shared/{virtual-files.d.ts → virtualFiles.d.ts} +0 -0
- /package/dist/esm/node/shared/{virtual-files.js → virtualFiles.js} +0 -0
- /package/dist/esm/node/{plugin → vite}/onLoad.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/onLoad.js +0 -0
- /package/dist/esm/node/{plugin/plugins/build → vite/plugins/pluginBuild}/pluginAutoFullBuild.d.ts +0 -0
- /package/dist/esm/node/{plugin/plugins/build → vite/plugins/pluginBuild}/pluginBuildApp.d.ts +0 -0
- /package/dist/esm/node/{plugin/plugins/build → vite/plugins/pluginBuild}/pluginDistFileNames.d.ts +0 -0
- /package/dist/esm/node/{plugin/plugins/build → vite/plugins/pluginBuild}/pluginDistPackageJsonFile.d.ts +0 -0
- /package/dist/esm/node/{plugin/plugins/build → vite/plugins/pluginBuild}/pluginModuleBanner.d.ts +0 -0
- /package/dist/esm/node/{plugin/plugins/build → vite/plugins/pluginBuild}/pluginSuppressRollupWarning.d.ts +0 -0
- /package/dist/esm/node/{plugin/plugins/commonConfig → vite/plugins/pluginCommon}/assertResolveAlias.d.ts +0 -0
- /package/dist/esm/node/{plugin/plugins/devConfig → vite/plugins/pluginDev}/determineFsAllowList.d.ts +0 -0
- /package/dist/esm/node/{plugin/plugins/devConfig → vite/plugins/pluginDev}/determineOptimizeDeps.d.ts +0 -0
- /package/dist/esm/node/{plugin/plugins/importUserCode/v1-design/virtual-files → vite/plugins/pluginVirtualFiles}/debug.d.ts +0 -0
- /package/dist/esm/node/{plugin/plugins/importUserCode/v1-design/virtual-files → vite/plugins/pluginVirtualFiles}/isRuntimeEnvMatch.js +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/addSsrMiddleware.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/applyRegExWithMagicString.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/applyRegExWithMagicString.js +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/findPageFiles.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/getAssetsDir.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/getAssetsDir.js +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/getEnvVarObject.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/getEnvVarObject.js +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/getHttpRequestAsyncStore.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/getOutDirs.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/getViteConfigRuntime.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/isAsset.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/isViteCliCall.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/isViteServerBuild.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errBabelReact.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errBabelSolid.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errEsbuild.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errMdx1.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errMdx2.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errPostcss.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errSwc.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errSwcBig.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errVueCss.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errVueHtml.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errVueJavascript.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/loggerNotProd/errorWithCodeSnippet.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/loggerNotProd/log.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/loggerNotProd/log.js +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/loggerVite/removeSuperfluousViteLog.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/loggerVite/removeSuperfluousViteLog.js +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/loggerVite.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/normalizeId.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/normalizeId.js +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/parseEsModule.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/parseEsModule.js +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/resolveClientEntriesDev.d.ts +0 -0
- /package/dist/esm/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/assertExtensions.d.ts +0 -0
- /package/dist/esm/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/crawlPlusFiles/ignorePatternsBuiltIn.d.ts +0 -0
- /package/dist/esm/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/crawlPlusFiles.d.ts +0 -0
- /package/dist/esm/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/filesystemRouting.d.ts +0 -0
- /package/dist/esm/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/getConfigFileExport.d.ts +0 -0
- /package/dist/esm/node/{plugin/plugins/importUserCode/v1-design/getVikeConfig → vite/shared/resolveVikeConfigInternal}/pointerImports.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/rollupIsEsm.d.ts +0 -0
- /package/dist/esm/node/{plugin → vite}/shared/rollupIsEsm.js +0 -0
- /package/dist/esm/{shared/page-configs → types}/Config/PageContextConfig.js +0 -0
- /package/dist/esm/{shared/page-configs → types}/Config/helpers.d.ts +0 -0
- /package/dist/esm/{shared/page-configs → types}/Config/helpers.js +0 -0
- /package/dist/esm/{shared/page-configs → types}/Config.js +0 -0
- /package/dist/esm/{shared/page-configs → types}/FilePath.js +0 -0
- /package/dist/esm/{shared/page-configs → types}/PageConfig.js +0 -0
- /package/dist/esm/{node/shared/ViteManifest.js → types/PageContext.js} +0 -0
- /package/dist/esm/{shared → types}/VikeNamespace.d.ts +0 -0
- /package/dist/esm/{shared → types}/VikeNamespace.js +0 -0
- /package/dist/esm/{node/shared → types}/ViteManifest.d.ts +0 -0
- /package/dist/esm/{shared/types.js → types/ViteManifest.js} +0 -0
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
export {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
import path from 'path';
|
|
1
|
+
export { runPrerender };
|
|
2
|
+
// Failed attempt to run this file (i.e. pre-rendering) in a separate process: https://github.com/vikejs/vike/commit/48feda87012115b32a5c9701da354cb8c138dfd2
|
|
3
|
+
// - The issue is that prerenderContext needs to be serialized for being able to pass it from the child process to the parent process.
|
|
4
|
+
// - The prerenderContext is used by vike-vercel
|
|
5
|
+
import path from 'node:path';
|
|
6
6
|
import { route } from '../../shared/route/index.js';
|
|
7
|
-
import { assert, assertUsage, assertWarning, hasProp, objectAssign, isObjectWithKeys, isCallable, isPropertyGetter, assertPosixPath, urlToFile, isPlainObject, pLimit, isArray, onSetupPrerender, PROJECT_VERSION, preservePropertyGetters, changeEnumerable } from './utils.js';
|
|
7
|
+
import { assert, assertUsage, assertWarning, hasProp, objectAssign, isObjectWithKeys, isCallable, isPropertyGetter, assertPosixPath, urlToFile, isPlainObject, pLimit, isArray, onSetupPrerender, PROJECT_VERSION, preservePropertyGetters, changeEnumerable, escapeHtml, } from './utils.js';
|
|
8
8
|
import { prerenderPage } from '../runtime/renderPage/renderPageAlreadyRouted.js';
|
|
9
9
|
import { createPageContextServerSide } from '../runtime/renderPage/createPageContextServerSide.js';
|
|
10
10
|
import pc from '@brillout/picocolors';
|
|
11
|
-
import { cpus } from 'os';
|
|
12
|
-
import { getGlobalContextServerInternal, initGlobalContext_runPrerender, setGlobalContext_isPrerendering } from '../runtime/globalContext.js';
|
|
13
|
-
import { resolveConfig } from 'vite';
|
|
11
|
+
import { cpus } from 'node:os';
|
|
12
|
+
import { getGlobalContextServerInternal, initGlobalContext_runPrerender, setGlobalContext_isPrerendering, } from '../runtime/globalContext.js';
|
|
13
|
+
import { resolveConfig as resolveViteConfig } from 'vite';
|
|
14
14
|
import { getPageFilesServerSide } from '../../shared/getPageFiles.js';
|
|
15
15
|
import { getPageContextRequestUrl } from '../../shared/getPageContextRequestUrl.js';
|
|
16
16
|
import { getUrlFromRouteString } from '../../shared/route/resolveRouteString.js';
|
|
@@ -19,55 +19,20 @@ import { loadConfigValues } from '../../shared/page-configs/loadConfigValues.js'
|
|
|
19
19
|
import { getErrorPageId, isErrorPage } from '../../shared/error-page.js';
|
|
20
20
|
import { isAbortError } from '../../shared/route/abort.js';
|
|
21
21
|
import { loadPageConfigsLazyServerSide } from '../runtime/renderPage/loadPageConfigsLazyServerSide.js';
|
|
22
|
-
import { getHookFromPageConfig, getHookFromPageConfigGlobal, getHookTimeoutDefault, getHook_setIsPrerenderering } from '../../shared/hooks/getHook.js';
|
|
22
|
+
import { getHookFromPageConfig, getHookFromPageConfigGlobal, getHookTimeoutDefault, getHook_setIsPrerenderering, } from '../../shared/hooks/getHook.js';
|
|
23
23
|
import { noRouteMatch } from '../../shared/route/noRouteMatch.js';
|
|
24
|
-
import {
|
|
25
|
-
import { logErrorHint } from '../runtime/renderPage/logErrorHint.js';
|
|
24
|
+
import { getVikeConfigInternal } from '../vite/shared/resolveVikeConfigInternal.js';
|
|
26
25
|
import { execHookWithoutPageContext, isUserHookError } from '../../shared/hooks/execHook.js';
|
|
27
|
-
import {
|
|
28
|
-
import { setContextIsPrerendering } from './context.js';
|
|
26
|
+
import { setWasPrerenderRun } from './context.js';
|
|
29
27
|
import { resolvePrerenderConfigGlobal, resolvePrerenderConfigLocal } from './resolvePrerenderConfig.js';
|
|
30
|
-
import { getOutDirs } from '../
|
|
31
|
-
import { isVikeCli } from '../cli/context.js';
|
|
32
|
-
import { isViteCliCall } from '../plugin/shared/isViteCliCall.js';
|
|
33
|
-
import { getVikeConfigInternal } from '../plugin/plugins/commonConfig.js';
|
|
28
|
+
import { getOutDirs } from '../vite/shared/getOutDirs.js';
|
|
34
29
|
import fs from 'node:fs';
|
|
35
30
|
import { getProxyForPublicUsage } from '../../shared/getProxyForPublicUsage.js';
|
|
31
|
+
import { getStaticRedirectsForPrerender } from '../runtime/renderPage/resolveRedirects.js';
|
|
32
|
+
import { augmentType } from '../runtime/utils.js';
|
|
36
33
|
const docLink = 'https://vike.dev/i18n#pre-rendering';
|
|
37
|
-
async function
|
|
38
|
-
|
|
39
|
-
// - We purposely propagate the error to the user land, so that the error interrupts the user land. It's also, I guess, a nice-to-have that the user has control over the error.
|
|
40
|
-
// - We don't use logErrorHint() because we don't have control over what happens with the error. For example, if the user land purposely swallows the error then the hint shouldn't be logged. Also, it's best if the hint is shown to the user *after* the error, but we cannot do/guarentee that.
|
|
41
|
-
}
|
|
42
|
-
async function runPrerenderFromCLIPrerenderCommand() {
|
|
43
|
-
try {
|
|
44
|
-
const { viteConfigFromUserEnhanced } = await prepareViteApiCall({}, 'prerender');
|
|
45
|
-
await runPrerender({ viteConfig: viteConfigFromUserEnhanced }, '$ vike prerender');
|
|
46
|
-
}
|
|
47
|
-
catch (err) {
|
|
48
|
-
console.error(err);
|
|
49
|
-
// Error may come from user-land; we need to use logErrorHint()
|
|
50
|
-
logErrorHint(err);
|
|
51
|
-
process.exit(1);
|
|
52
|
-
}
|
|
53
|
-
runPrerender_forceExit();
|
|
54
|
-
assert(false);
|
|
55
|
-
}
|
|
56
|
-
async function runPrerenderFromAutoRun(viteConfig) {
|
|
57
|
-
try {
|
|
58
|
-
await runPrerender({ viteConfig });
|
|
59
|
-
}
|
|
60
|
-
catch (err) {
|
|
61
|
-
// Avoid Rollup prefixing the error with [vike:build:pluginAutoFullBuild], see for example https://github.com/vikejs/vike/issues/472#issuecomment-1276274203
|
|
62
|
-
console.error(err);
|
|
63
|
-
logErrorHint(err);
|
|
64
|
-
process.exit(1);
|
|
65
|
-
}
|
|
66
|
-
const forceExit = isVikeCli() || isViteCliCall();
|
|
67
|
-
return { forceExit };
|
|
68
|
-
}
|
|
69
|
-
async function runPrerender(options = {}, standaloneTrigger) {
|
|
70
|
-
setContextIsPrerendering();
|
|
34
|
+
async function runPrerender(options = {}, trigger) {
|
|
35
|
+
setWasPrerenderRun(trigger);
|
|
71
36
|
checkOutdatedOptions(options);
|
|
72
37
|
onSetupPrerender();
|
|
73
38
|
setGlobalContext_isPrerendering();
|
|
@@ -77,16 +42,16 @@ async function runPrerender(options = {}, standaloneTrigger) {
|
|
|
77
42
|
console.log(`${pc.cyan(`vike v${PROJECT_VERSION}`)} ${pc.green('pre-rendering HTML...')}`);
|
|
78
43
|
}
|
|
79
44
|
await disableReactStreaming();
|
|
80
|
-
const viteConfig = await
|
|
81
|
-
const vikeConfig = await
|
|
82
|
-
const
|
|
83
|
-
const { outDirClient, outDirServer } = getOutDirs(viteConfig);
|
|
84
|
-
const { root } = viteConfig;
|
|
45
|
+
const viteConfig = await resolveViteConfig(options.viteConfig || {}, 'build', 'production');
|
|
46
|
+
const vikeConfig = await getVikeConfigInternal();
|
|
47
|
+
const { outDirServer } = getOutDirs(viteConfig);
|
|
85
48
|
const prerenderConfigGlobal = resolvePrerenderConfigGlobal(vikeConfig);
|
|
86
49
|
const { partial, noExtraDir, parallel, defaultLocalValue, isPrerenderingEnabled } = prerenderConfigGlobal;
|
|
87
50
|
if (!isPrerenderingEnabled) {
|
|
88
|
-
assert(
|
|
89
|
-
/* TODO/
|
|
51
|
+
assert(trigger !== 'auto-run');
|
|
52
|
+
/* TODO/v1-release: use this assertUsage() again.
|
|
53
|
+
* - Make sure https://github.com/magne4000/vite-plugin-vercel/pull/156 is merged before using this assertUsage() again. (Otherwise vite-plugin-vercel will trigger this assertUsage() call.)
|
|
54
|
+
* - Done: PR is merged as of June 20205
|
|
90
55
|
assertUsage(
|
|
91
56
|
false,
|
|
92
57
|
`You're executing ${pc.cyan(standaloneTrigger)} but you didn't enable pre-rendering. Use the ${pc.cyan('prerender')} setting (${pc.underline('https://vike.dev/prerender')}) to enable pre-rendering for at least one page.`
|
|
@@ -103,10 +68,10 @@ async function runPrerender(options = {}, standaloneTrigger) {
|
|
|
103
68
|
output: [],
|
|
104
69
|
_noExtraDir: noExtraDir,
|
|
105
70
|
_pageContextInit: options.pageContextInit ?? null,
|
|
106
|
-
_prerenderedPageContexts: {}
|
|
71
|
+
_prerenderedPageContexts: {},
|
|
107
72
|
};
|
|
108
73
|
const doNotPrerenderList = [];
|
|
109
|
-
await collectDoNoPrerenderList(vikeConfig.
|
|
74
|
+
await collectDoNoPrerenderList(vikeConfig._pageConfigs, doNotPrerenderList, defaultLocalValue, concurrencyLimit, globalContext);
|
|
110
75
|
// Allow user to create `pageContext` for parameterized routes and/or bulk data fetching
|
|
111
76
|
// https://vike.dev/onBeforePrerenderStart
|
|
112
77
|
await callOnBeforePrerenderStartHooks(prerenderContext, globalContext, concurrencyLimit, doNotPrerenderList);
|
|
@@ -124,18 +89,25 @@ async function runPrerender(options = {}, standaloneTrigger) {
|
|
|
124
89
|
const onComplete = async (htmlFile) => {
|
|
125
90
|
prerenderedCount++;
|
|
126
91
|
const { pageId } = htmlFile.pageContext;
|
|
127
|
-
assert(pageId);
|
|
128
|
-
|
|
129
|
-
|
|
92
|
+
assert((typeof pageId === 'string' && pageId) || pageId === null);
|
|
93
|
+
if (pageId) {
|
|
94
|
+
prerenderContext._prerenderedPageContexts[pageId] = htmlFile.pageContext;
|
|
95
|
+
}
|
|
96
|
+
await writeFiles(htmlFile, viteConfig, options.onPagePrerender, prerenderContext, logLevel);
|
|
130
97
|
};
|
|
131
98
|
await prerenderPages(prerenderContext, concurrencyLimit, onComplete);
|
|
132
99
|
warnContradictoryNoPrerenderList(prerenderContext._prerenderedPageContexts, doNotPrerenderList);
|
|
100
|
+
const { redirects, isPrerenderingEnabledForAllPages } = prerenderConfigGlobal;
|
|
101
|
+
if (redirects !== null ? redirects : isPrerenderingEnabledForAllPages) {
|
|
102
|
+
const showWarningUponDynamicRedirects = !prerenderConfigGlobal.partial;
|
|
103
|
+
await prerenderRedirects(globalContext, onComplete, showWarningUponDynamicRedirects);
|
|
104
|
+
}
|
|
133
105
|
if (logLevel === 'info') {
|
|
134
106
|
console.log(`${pc.green(`✓`)} ${prerenderedCount} HTML documents pre-rendered.`);
|
|
135
107
|
}
|
|
136
108
|
await warnMissingPages(prerenderContext._prerenderedPageContexts, globalContext, doNotPrerenderList, partial);
|
|
137
109
|
const prerenderContextPublic = preparePrerenderContextForPublicUsage(prerenderContext);
|
|
138
|
-
objectAssign(
|
|
110
|
+
objectAssign(vikeConfig.prerenderContext, prerenderContextPublic, true);
|
|
139
111
|
if (prerenderConfigGlobal.isPrerenderingEnabledForAllPages && !prerenderConfigGlobal.keepDistServer) {
|
|
140
112
|
fs.rmSync(outDirServer, { recursive: true });
|
|
141
113
|
}
|
|
@@ -212,7 +184,7 @@ async function callOnBeforePrerenderStartHooks(prerenderContext, globalContext,
|
|
|
212
184
|
hookName: 'onBeforePrerenderStart',
|
|
213
185
|
hookFilePath,
|
|
214
186
|
pageId: pageConfig.pageId,
|
|
215
|
-
hookTimeout
|
|
187
|
+
hookTimeout,
|
|
216
188
|
});
|
|
217
189
|
})));
|
|
218
190
|
// 0.4 design
|
|
@@ -237,7 +209,7 @@ async function callOnBeforePrerenderStartHooks(prerenderContext, globalContext,
|
|
|
237
209
|
hookName: 'prerender',
|
|
238
210
|
hookFilePath,
|
|
239
211
|
pageId: p.pageId,
|
|
240
|
-
hookTimeout: getHookTimeoutDefault('onBeforePrerenderStart')
|
|
212
|
+
hookTimeout: getHookTimeoutDefault('onBeforePrerenderStart'),
|
|
241
213
|
});
|
|
242
214
|
})));
|
|
243
215
|
await Promise.all(onBeforePrerenderStartHooks.map(({ pageId, ...hook }) => concurrencyLimit(async () => {
|
|
@@ -302,7 +274,7 @@ function getUrlList404(globalContext) {
|
|
|
302
274
|
urlList.push({
|
|
303
275
|
// A URL is required for `viteDevServer.transformIndexHtml(url,html)`
|
|
304
276
|
urlOriginal: '/404',
|
|
305
|
-
pageId: errorPageId
|
|
277
|
+
pageId: errorPageId,
|
|
306
278
|
});
|
|
307
279
|
}
|
|
308
280
|
return urlList;
|
|
@@ -320,10 +292,10 @@ async function createPageContexts(urlList, prerenderContext, globalContext, conc
|
|
|
320
292
|
async function createPageContextPrerendering(urlOriginal, prerenderContext, globalContext, is404, pageId, providedByHook) {
|
|
321
293
|
const pageContextInit = {
|
|
322
294
|
urlOriginal,
|
|
323
|
-
...prerenderContext._pageContextInit
|
|
295
|
+
...prerenderContext._pageContextInit,
|
|
324
296
|
};
|
|
325
297
|
const pageContext = await createPageContextServerSide(pageContextInit, globalContext, {
|
|
326
|
-
isPrerendering: true
|
|
298
|
+
isPrerendering: true,
|
|
327
299
|
});
|
|
328
300
|
assert(pageContext.isPrerendering === true);
|
|
329
301
|
objectAssign(pageContext, {
|
|
@@ -334,7 +306,7 @@ async function createPageContextPrerendering(urlOriginal, prerenderContext, glob
|
|
|
334
306
|
_prerenderContext: prerenderContext,
|
|
335
307
|
_providedByHook: providedByHook,
|
|
336
308
|
_urlOriginalModifiedByHook: null,
|
|
337
|
-
is404
|
|
309
|
+
is404,
|
|
338
310
|
});
|
|
339
311
|
if (!is404) {
|
|
340
312
|
const pageContextFromRoute = await route(pageContext);
|
|
@@ -348,10 +320,10 @@ async function createPageContextPrerendering(urlOriginal, prerenderContext, glob
|
|
|
348
320
|
objectAssign(pageContext, {
|
|
349
321
|
pageId,
|
|
350
322
|
_debugRouteMatches: [],
|
|
351
|
-
routeParams: {}
|
|
323
|
+
routeParams: {},
|
|
352
324
|
});
|
|
353
325
|
}
|
|
354
|
-
|
|
326
|
+
augmentType(pageContext, await loadPageConfigsLazyServerSide(pageContext));
|
|
355
327
|
let usesClientRouter;
|
|
356
328
|
{
|
|
357
329
|
const { pageId } = pageContext;
|
|
@@ -391,7 +363,7 @@ function assertRouteMatch(pageContextFromRoute, pageContext) {
|
|
|
391
363
|
assertUsage(false, `The ${hookName}() hook defined by ${hookFilePath} returns a URL ${pc.cyan(urlOriginal)} that ${noRouteMatch}. Make sure that the URLs returned by ${hookName}() always match the route of a page.`);
|
|
392
364
|
}
|
|
393
365
|
else {
|
|
394
|
-
// `prerenderHookFile` is `null` when the URL was deduced by the
|
|
366
|
+
// `prerenderHookFile` is `null` when the URL was deduced by the Filesystem Routing of `.page.js` files. The `onBeforeRoute()` can override Filesystem Routing; it is therefore expected that the deduced URL may not match any page.
|
|
395
367
|
assert(pageContextFromRoute._routingProvidedByOnBeforeRouteHook);
|
|
396
368
|
// Abort since the URL doesn't correspond to any page
|
|
397
369
|
return;
|
|
@@ -408,7 +380,7 @@ async function callOnPrerenderStartHook(prerenderContext, globalContext, concurr
|
|
|
408
380
|
onPrerenderStartHook = {
|
|
409
381
|
...hook,
|
|
410
382
|
// Make TypeScript happy
|
|
411
|
-
hookName
|
|
383
|
+
hookName,
|
|
412
384
|
};
|
|
413
385
|
}
|
|
414
386
|
}
|
|
@@ -421,7 +393,7 @@ async function callOnPrerenderStartHook(prerenderContext, globalContext, concurr
|
|
|
421
393
|
if (!p.exportNames?.includes('onBeforePrerender'))
|
|
422
394
|
return false;
|
|
423
395
|
assertUsage(p.fileType !== '.page.client', `${p.filePath} (which is a \`.page.client.js\` file) has \`export { onBeforePrerender }\` but it is only allowed in \`.page.server.js\` or \`.page.js\` files`);
|
|
424
|
-
assertUsage(p.isDefaultPageFile, `${p.filePath} has \`export { onBeforePrerender }\` but it is only allowed in \`
|
|
396
|
+
assertUsage(p.isDefaultPageFile, `${p.filePath} has \`export { onBeforePrerender }\` but it is only allowed in \`_default.page.\` files`);
|
|
425
397
|
return true;
|
|
426
398
|
});
|
|
427
399
|
if (pageFilesWithOnBeforePrerenderHook.length === 0) {
|
|
@@ -442,7 +414,7 @@ async function callOnPrerenderStartHook(prerenderContext, globalContext, concurr
|
|
|
442
414
|
hookFn: hook.onBeforePrerender,
|
|
443
415
|
hookFilePath: hook.hookFilePath,
|
|
444
416
|
hookName: 'onBeforePrerender',
|
|
445
|
-
hookTimeout
|
|
417
|
+
hookTimeout,
|
|
446
418
|
};
|
|
447
419
|
}
|
|
448
420
|
if (!onPrerenderStartHook) {
|
|
@@ -460,7 +432,7 @@ async function callOnPrerenderStartHook(prerenderContext, globalContext, concurr
|
|
|
460
432
|
return pageContext.urlOriginal;
|
|
461
433
|
},
|
|
462
434
|
enumerable: false,
|
|
463
|
-
configurable: true
|
|
435
|
+
configurable: true,
|
|
464
436
|
});
|
|
465
437
|
assert(isPropertyGetter(pageContext, 'url'));
|
|
466
438
|
assert(pageContext.urlOriginal);
|
|
@@ -491,8 +463,8 @@ async function callOnPrerenderStartHook(prerenderContext, globalContext, concurr
|
|
|
491
463
|
assertWarning(false, `${errPrefix} returns ${pc.cyan('{ globalContext: { prerenderPageContexts } }')} but the return value has been renamed to ${pc.cyan('{ prerenderContext: { pageContexts } }')}, see ${docLink}`, { onlyOnce: true });
|
|
492
464
|
result = {
|
|
493
465
|
prerenderContext: {
|
|
494
|
-
pageContexts: result.globalContext.prerenderPageContexts
|
|
495
|
-
}
|
|
466
|
+
pageContexts: result.globalContext.prerenderPageContexts,
|
|
467
|
+
},
|
|
496
468
|
};
|
|
497
469
|
}
|
|
498
470
|
assertUsage(isObjectWithKeys(result, ['prerenderContext']) &&
|
|
@@ -518,7 +490,7 @@ async function callOnPrerenderStartHook(prerenderContext, globalContext, concurr
|
|
|
518
490
|
if (pageContext.urlOriginal !== pageContext._urlOriginalBeforeHook && !pageContext.is404) {
|
|
519
491
|
pageContext._urlOriginalModifiedByHook = {
|
|
520
492
|
hookFilePath,
|
|
521
|
-
hookName
|
|
493
|
+
hookName,
|
|
522
494
|
};
|
|
523
495
|
const pageContextFromRoute = await route(pageContext,
|
|
524
496
|
// Avoid calling onBeforeRoute() twice, otherwise onBeforeRoute() will wrongfully believe URL doesn't have locale after onBeforeRoute() already removed the local from the URL when called the first time.
|
|
@@ -543,7 +515,6 @@ async function prerenderPages(prerenderContext, concurrencyLimit, onComplete) {
|
|
|
543
515
|
pageContext,
|
|
544
516
|
htmlString: documentHtml,
|
|
545
517
|
pageContextSerialized,
|
|
546
|
-
doNotCreateExtraDirectory: prerenderContext._noExtraDir ?? pageContext.is404
|
|
547
518
|
});
|
|
548
519
|
})));
|
|
549
520
|
}
|
|
@@ -572,23 +543,24 @@ async function warnMissingPages(prerenderedPageContexts, globalContext, doNotPre
|
|
|
572
543
|
.filter((pageId) => !isErrorPage(pageId, globalContext._pageConfigs))
|
|
573
544
|
.forEach((pageId) => {
|
|
574
545
|
const pageAt = isV1 ? pageId : `\`${pageId}.page.*\``;
|
|
575
|
-
assertWarning(partial, `Cannot pre-render page ${pageAt} because it has a non-static route, while
|
|
546
|
+
assertWarning(partial, `Cannot pre-render page ${pageAt} because it has a non-static route, while there isn't any ${hookName}() hook returning an URL matching the page's route. You must use a ${hookName}() hook (https://vike.dev/${hookName}) for providing the list of URLs to be pre-rendered for that page. If you want to skip pre-rendering that page, you can remove this warning by setting +prerender to false at ${pageAt} (https://vike.dev/prerender#toggle) or by setting +prerender.partial to true (https://vike.dev/prerender#partial).`, { onlyOnce: true });
|
|
576
547
|
});
|
|
577
548
|
}
|
|
578
|
-
async function writeFiles({ pageContext, htmlString, pageContextSerialized
|
|
579
|
-
const
|
|
580
|
-
assert(urlOriginal.startsWith('/'));
|
|
581
|
-
const writeJobs = [
|
|
582
|
-
write(urlOriginal, pageContext, 'HTML', htmlString, root, outDirClient, doNotCreateExtraDirectory, onPagePrerender, output, logLevel)
|
|
583
|
-
];
|
|
549
|
+
async function writeFiles({ pageContext, htmlString, pageContextSerialized }, viteConfig, onPagePrerender, prerenderContext, logLevel) {
|
|
550
|
+
const writeJobs = [write(pageContext, 'HTML', htmlString, viteConfig, onPagePrerender, prerenderContext, logLevel)];
|
|
584
551
|
if (pageContextSerialized !== null) {
|
|
585
|
-
writeJobs.push(write(
|
|
552
|
+
writeJobs.push(write(pageContext, 'JSON', pageContextSerialized, viteConfig, onPagePrerender, prerenderContext, logLevel));
|
|
586
553
|
}
|
|
587
554
|
await Promise.all(writeJobs);
|
|
588
555
|
}
|
|
589
|
-
async function write(
|
|
556
|
+
async function write(pageContext, fileType, fileContent, viteConfig, onPagePrerender, prerenderContext, logLevel) {
|
|
557
|
+
const { urlOriginal } = pageContext;
|
|
558
|
+
assert(urlOriginal.startsWith('/'));
|
|
559
|
+
const { outDirClient } = getOutDirs(viteConfig);
|
|
560
|
+
const { root } = viteConfig;
|
|
590
561
|
let fileUrl;
|
|
591
562
|
if (fileType === 'HTML') {
|
|
563
|
+
const doNotCreateExtraDirectory = prerenderContext._noExtraDir ?? pageContext.is404;
|
|
592
564
|
fileUrl = urlToFile(urlOriginal, '.html', doNotCreateExtraDirectory);
|
|
593
565
|
}
|
|
594
566
|
else {
|
|
@@ -599,7 +571,7 @@ async function write(urlOriginal, pageContext, fileType, fileContent, root, outD
|
|
|
599
571
|
assert(fileUrl.startsWith('/'));
|
|
600
572
|
const filePathRelative = fileUrl.slice(1);
|
|
601
573
|
assert(!filePathRelative.startsWith('/'),
|
|
602
|
-
//
|
|
574
|
+
// https://github.com/vikejs/vike/issues/1929
|
|
603
575
|
{ urlOriginal, fileUrl });
|
|
604
576
|
assertPosixPath(outDirClient);
|
|
605
577
|
assertPosixPath(filePathRelative);
|
|
@@ -607,20 +579,20 @@ async function write(urlOriginal, pageContext, fileType, fileContent, root, outD
|
|
|
607
579
|
objectAssign(pageContext, {
|
|
608
580
|
_prerenderResult: {
|
|
609
581
|
filePath,
|
|
610
|
-
fileContent
|
|
611
|
-
}
|
|
582
|
+
fileContent,
|
|
583
|
+
},
|
|
612
584
|
});
|
|
613
|
-
output.push({
|
|
585
|
+
prerenderContext.output.push({
|
|
614
586
|
filePath,
|
|
615
587
|
fileType,
|
|
616
588
|
fileContent,
|
|
617
|
-
pageContext
|
|
589
|
+
pageContext,
|
|
618
590
|
});
|
|
619
591
|
if (onPagePrerender) {
|
|
620
592
|
await onPagePrerender(pageContext);
|
|
621
593
|
}
|
|
622
594
|
else {
|
|
623
|
-
const { promises } = await import('fs');
|
|
595
|
+
const { promises } = await import('node:fs');
|
|
624
596
|
const { writeFile, mkdir } = promises;
|
|
625
597
|
await mkdir(path.posix.dirname(filePath), { recursive: true });
|
|
626
598
|
await writeFile(filePath, fileContent);
|
|
@@ -677,7 +649,7 @@ function checkOutdatedOptions(options) {
|
|
|
677
649
|
['base', 'outDir'].forEach((prop) => {
|
|
678
650
|
assertWarning(options[prop] === undefined, `[prerender()] Option ${pc.cyan(prop)} is outdated and has no effect (vike now automatically determines ${pc.cyan(prop)})`, {
|
|
679
651
|
showStackTrace: true,
|
|
680
|
-
onlyOnce: true
|
|
652
|
+
onlyOnce: true,
|
|
681
653
|
});
|
|
682
654
|
});
|
|
683
655
|
}
|
|
@@ -698,16 +670,6 @@ function isSameUrl(url1, url2) {
|
|
|
698
670
|
function normalizeUrl(url) {
|
|
699
671
|
return '/' + url.split('/').filter(Boolean).join('/');
|
|
700
672
|
}
|
|
701
|
-
function runPrerender_forceExit() {
|
|
702
|
-
// Force exit; known situations where pre-rendering is hanging:
|
|
703
|
-
// - https://github.com/vikejs/vike/discussions/774#discussioncomment-5584551
|
|
704
|
-
// - https://github.com/vikejs/vike/issues/807#issuecomment-1519010902
|
|
705
|
-
process.exit(0);
|
|
706
|
-
/* I guess there is no need to tell the user about it? Let's see if a user complains.
|
|
707
|
-
* I don't known whether there is a way to call process.exit(0) only if needed, thus I'm not sure if there is a way to conditionally show a assertInfo().
|
|
708
|
-
assertInfo(false, "Pre-rendering was forced exit. (Didn't gracefully exit because the event queue isn't empty. This is usally fine, see ...", { onlyOnce: false })
|
|
709
|
-
*/
|
|
710
|
-
}
|
|
711
673
|
function assertIsNotAbort(err, urlOriginal) {
|
|
712
674
|
if (!isAbortError(err))
|
|
713
675
|
return;
|
|
@@ -728,10 +690,10 @@ function preparePrerenderContextForPublicUsage(prerenderContext) {
|
|
|
728
690
|
get() {
|
|
729
691
|
assertWarning(false, `prerenderPageContexts has been renamed pageContexts, see ${pc.underline(docLink)}`, {
|
|
730
692
|
showStackTrace: true,
|
|
731
|
-
onlyOnce: true
|
|
693
|
+
onlyOnce: true,
|
|
732
694
|
});
|
|
733
695
|
return prerenderContext.pageContexts;
|
|
734
|
-
}
|
|
696
|
+
},
|
|
735
697
|
});
|
|
736
698
|
}
|
|
737
699
|
// Required because of https://vike.dev/i18n#pre-rendering
|
|
@@ -742,3 +704,41 @@ function preparePrerenderContextForPublicUsage(prerenderContext) {
|
|
|
742
704
|
const prerenderContextPublic = getProxyForPublicUsage(prerenderContext, 'prerenderContext');
|
|
743
705
|
return prerenderContextPublic;
|
|
744
706
|
}
|
|
707
|
+
async function prerenderRedirects(globalContext, onComplete, showWarningUponDynamicRedirects) {
|
|
708
|
+
const redirects = globalContext.config.redirects ?? [];
|
|
709
|
+
const redirectsStatic = getStaticRedirectsForPrerender(redirects, showWarningUponDynamicRedirects);
|
|
710
|
+
for (const [urlSource, urlTarget] of Object.entries(redirectsStatic)) {
|
|
711
|
+
const urlOriginal = urlSource;
|
|
712
|
+
const htmlString = getRedirectHtml(urlTarget);
|
|
713
|
+
await onComplete({
|
|
714
|
+
pageContext: { urlOriginal, pageId: null, is404: false, isRedirect: true },
|
|
715
|
+
htmlString,
|
|
716
|
+
pageContextSerialized: null,
|
|
717
|
+
});
|
|
718
|
+
}
|
|
719
|
+
}
|
|
720
|
+
function getRedirectHtml(urlTarget) {
|
|
721
|
+
const urlTargetSafe = escapeHtml(urlTarget);
|
|
722
|
+
// To test it: /test/playground => http://localhost:3000/download
|
|
723
|
+
const htmlString = `<!DOCTYPE html>
|
|
724
|
+
<html lang="en">
|
|
725
|
+
<head>
|
|
726
|
+
<meta charset="UTF-8">
|
|
727
|
+
<meta http-equiv="refresh" content="0;url=${urlTargetSafe}">
|
|
728
|
+
<title>Redirect ${urlTargetSafe}</title>
|
|
729
|
+
<style>body{opacity:0}</style>
|
|
730
|
+
<noscript>
|
|
731
|
+
<style>body{opacity:1}</style>
|
|
732
|
+
</noscript>
|
|
733
|
+
</head>
|
|
734
|
+
<body style="min-height: 100vh; margin: 0; font-family: sans-serif; display: flex; justify-content: center; align-items: center; transition: opacity 0.3s;">
|
|
735
|
+
<script>setTimeout(()=>{document.body.style.opacity=1},2000)</script>
|
|
736
|
+
<div>
|
|
737
|
+
<h1>Redirect <a href="${urlTargetSafe}"><code style="background-color: #eaeaea; padding: 3px 5px; border-radius: 4px;">${urlTargetSafe}</code></a></h1>
|
|
738
|
+
<p>If you aren't redirected, click the link above.</p>
|
|
739
|
+
<!-- This HTML was generated by Vike. -->
|
|
740
|
+
</div>
|
|
741
|
+
</body>
|
|
742
|
+
</html>`;
|
|
743
|
+
return htmlString;
|
|
744
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export { runPrerenderFromAPI };
|
|
2
|
+
export { runPrerenderFromCLIPrerenderCommand };
|
|
3
|
+
export { runPrerenderFromAutoRun };
|
|
4
|
+
export { runPrerender_forceExit };
|
|
5
|
+
import type { InlineConfig, ResolvedConfig } from 'vite';
|
|
6
|
+
import { PrerenderOptions } from './runPrerender.js';
|
|
7
|
+
declare function runPrerenderFromAPI(options?: PrerenderOptions): Promise<{
|
|
8
|
+
viteConfig: ResolvedConfig;
|
|
9
|
+
}>;
|
|
10
|
+
declare function runPrerenderFromCLIPrerenderCommand(): Promise<void>;
|
|
11
|
+
declare function runPrerenderFromAutoRun(viteConfig: InlineConfig | undefined): Promise<{
|
|
12
|
+
forceExit: boolean;
|
|
13
|
+
}>;
|
|
14
|
+
declare function runPrerender_forceExit(): void;
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
export { runPrerenderFromAPI };
|
|
2
|
+
export { runPrerenderFromCLIPrerenderCommand };
|
|
3
|
+
export { runPrerenderFromAutoRun };
|
|
4
|
+
export { runPrerender_forceExit };
|
|
5
|
+
import { assert } from './utils.js';
|
|
6
|
+
import { logErrorHint } from '../runtime/renderPage/logErrorHint.js';
|
|
7
|
+
import { prepareViteApiCall } from '../api/prepareViteApiCall.js';
|
|
8
|
+
import { isVikeCli } from '../cli/context.js';
|
|
9
|
+
import { isViteCliCall } from '../vite/shared/isViteCliCall.js';
|
|
10
|
+
import { runPrerender } from './runPrerender.js';
|
|
11
|
+
async function runPrerenderFromAPI(options = {}) {
|
|
12
|
+
// - We purposely propagate the error to the user land, so that the error interrupts the user land. It's also, I guess, a nice-to-have that the user has control over the error.
|
|
13
|
+
// - We don't use logErrorHint() because we don't have control over what happens with the error. For example, if the user land purposely swallows the error then the hint shouldn't be logged. Also, it's best if the hint is shown to the user *after* the error, but we cannot do/guarentee that.
|
|
14
|
+
const { viteConfig } = await runPrerender(options, 'prerender()');
|
|
15
|
+
return { viteConfig };
|
|
16
|
+
}
|
|
17
|
+
async function runPrerenderFromCLIPrerenderCommand() {
|
|
18
|
+
try {
|
|
19
|
+
const { viteConfigFromUserEnhanced } = await prepareViteApiCall({}, 'prerender');
|
|
20
|
+
await runPrerender({ viteConfig: viteConfigFromUserEnhanced }, '$ vike prerender');
|
|
21
|
+
}
|
|
22
|
+
catch (err) {
|
|
23
|
+
console.error(err);
|
|
24
|
+
// Error may come from user-land; we need to use logErrorHint()
|
|
25
|
+
logErrorHint(err);
|
|
26
|
+
process.exit(1);
|
|
27
|
+
}
|
|
28
|
+
runPrerender_forceExit();
|
|
29
|
+
assert(false);
|
|
30
|
+
}
|
|
31
|
+
async function runPrerenderFromAutoRun(viteConfig) {
|
|
32
|
+
try {
|
|
33
|
+
await runPrerender({ viteConfig }, 'auto-run');
|
|
34
|
+
}
|
|
35
|
+
catch (err) {
|
|
36
|
+
// Avoid Rollup prefixing the error with [vike:build:pluginAutoFullBuild], see for example https://github.com/vikejs/vike/issues/472#issuecomment-1276274203
|
|
37
|
+
console.error(err);
|
|
38
|
+
logErrorHint(err);
|
|
39
|
+
process.exit(1);
|
|
40
|
+
}
|
|
41
|
+
const forceExit = isVikeCli() || isViteCliCall();
|
|
42
|
+
return { forceExit };
|
|
43
|
+
}
|
|
44
|
+
function runPrerender_forceExit() {
|
|
45
|
+
// Force exit; known situations where pre-rendering is hanging:
|
|
46
|
+
// - https://github.com/vikejs/vike/discussions/774#discussioncomment-5584551
|
|
47
|
+
// - https://github.com/vikejs/vike/issues/807#issuecomment-1519010902
|
|
48
|
+
process.exit(0);
|
|
49
|
+
/* I guess there is no need to tell the user about it? Let's see if a user complains.
|
|
50
|
+
* I don't known whether there is a way to call process.exit(0) only if needed, thus I'm not sure if there is a way to conditionally show a assertInfo().
|
|
51
|
+
assertInfo(false, "Pre-rendering was forced exit. (Didn't gracefully exit because the event queue isn't empty. This is usually fine, see ...", { onlyOnce: false })
|
|
52
|
+
*/
|
|
53
|
+
}
|