vike 0.4.237 → 0.4.238
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/dist/cjs/__internal/index.js +3 -3
- package/dist/cjs/client/runtime-client-routing/globalContext.js +2 -2
- package/dist/cjs/client/runtime-server-routing/globalContext.js +2 -2
- package/dist/cjs/client/runtime-server-routing/utils.js +1 -1
- package/dist/cjs/client/shared/createGetGlobalContextClient.js +5 -5
- package/dist/cjs/node/api/build.js +5 -31
- package/dist/cjs/node/api/context.js +13 -12
- package/dist/cjs/node/api/dev.js +0 -2
- package/dist/cjs/node/api/index.js +0 -2
- package/dist/cjs/node/api/onLoad.js +2 -2
- package/dist/cjs/node/api/prepareViteApiCall.js +2 -3
- package/dist/cjs/node/api/preview.js +2 -3
- package/dist/cjs/node/api/utils.js +1 -0
- package/dist/cjs/node/cli/index.js +2 -2
- package/dist/cjs/node/cli/onLoad.js +2 -2
- package/dist/cjs/node/prerender/runPrerender.js +7 -8
- package/dist/cjs/node/prerender/runPrerenderEntry.js +1 -1
- package/dist/cjs/node/runtime/globalContext.js +128 -112
- package/dist/cjs/node/runtime/html/injectAssets/getHtmlTags.js +1 -1
- package/dist/cjs/node/runtime/renderPage/analyzePage.js +6 -4
- package/dist/cjs/node/runtime/renderPage/createPageContextServerSide.js +1 -1
- package/dist/cjs/node/runtime/renderPage/execHookOnRenderHtml.js +1 -11
- package/dist/cjs/node/runtime/renderPage/getPageAssets/getManifestEntry.js +5 -4
- package/dist/cjs/node/runtime/renderPage/getPageAssets/{retrieveAssetsDev.js → retrievePageAssetsDev.js} +21 -6
- package/dist/cjs/node/runtime/renderPage/getPageAssets/{retrieveAssetsProd.js → retrievePageAssetsProd.js} +19 -2
- package/dist/cjs/node/runtime/renderPage/getPageAssets.js +5 -34
- package/dist/cjs/node/runtime/renderPage/loadPageConfigsLazyServerSide.js +42 -46
- package/dist/cjs/node/runtime/renderPage/{renderPageAlreadyRouted.js → renderPageAfterRoute.js} +3 -4
- package/dist/cjs/node/runtime/renderPage.js +18 -16
- package/dist/cjs/node/runtime/utils.js +3 -2
- package/dist/cjs/node/runtime-dev/createDevMiddleware.js +0 -2
- package/dist/cjs/node/shared/virtualFileId.js +110 -0
- package/dist/cjs/node/vite/index.js +3 -3
- package/dist/cjs/node/vite/onLoad.js +5 -3
- package/dist/cjs/node/vite/plugins/pluginBuild/handleAssetsManifest.js +29 -30
- package/dist/cjs/node/vite/plugins/pluginBuild/pluginBuildApp.js +122 -10
- package/dist/cjs/node/vite/plugins/pluginBuild/pluginBuildConfig.js +12 -17
- package/dist/cjs/node/vite/plugins/pluginBuild/pluginDistPackageJsonFile.js +2 -10
- package/dist/cjs/node/vite/plugins/pluginBuild/pluginModuleBanner.js +5 -11
- package/dist/cjs/node/vite/plugins/pluginBuild/{pluginBuildEntry.js → pluginProdBuildEntry.js} +11 -11
- package/dist/cjs/node/vite/plugins/pluginBuild.js +2 -4
- package/dist/cjs/node/vite/plugins/pluginDev/determineFsAllowList.js +2 -2
- package/dist/cjs/node/vite/plugins/pluginDev/determineOptimizeDeps.js +6 -5
- package/dist/cjs/node/vite/plugins/pluginEnvVars.js +6 -13
- package/dist/cjs/node/vite/plugins/pluginExtractAssets.js +7 -7
- package/dist/cjs/node/vite/plugins/pluginExtractExportNames.js +6 -2
- package/dist/cjs/node/vite/plugins/pluginFileEnv.js +4 -3
- package/dist/cjs/node/vite/plugins/pluginNonRunnableDev.js +11 -11
- package/dist/cjs/node/vite/plugins/pluginPreview.js +4 -7
- package/dist/cjs/node/vite/plugins/pluginReplaceConstants.js +6 -13
- package/dist/cjs/node/vite/plugins/pluginSetGlobalContext.js +1 -1
- package/dist/cjs/node/vite/plugins/pluginVirtualFiles/{getVirtualFilePageConfigsEager.js → generateVirtualFileGlobalEntry.js} +5 -6
- package/dist/cjs/node/vite/plugins/pluginVirtualFiles/{getVirtualFileEntry.js → generateVirtualFileGlobalEntryWithOldDesign.js} +12 -12
- package/dist/cjs/node/vite/plugins/pluginVirtualFiles/{getVirtualFilePageConfigLazy.js → generateVirtualFilePageEntry.js} +10 -11
- package/dist/cjs/node/vite/plugins/pluginVirtualFiles/getConfigValueSourcesRelevant.js +51 -21
- package/dist/cjs/node/vite/plugins/pluginVirtualFiles.js +14 -12
- package/dist/cjs/node/vite/shared/findPageFiles.js +1 -1
- package/dist/cjs/node/vite/shared/{resolveClientEntriesDev.js → getClientEntrySrcDev.js} +3 -3
- package/dist/cjs/node/vite/shared/getHttpRequestAsyncStore.js +8 -6
- package/dist/cjs/node/vite/shared/getMagicString.js +1 -1
- package/dist/cjs/node/vite/shared/getOutDirs.js +21 -22
- package/dist/cjs/node/vite/shared/getViteConfigRuntime.js +1 -1
- package/dist/cjs/node/vite/shared/isViteServerSide.js +68 -0
- package/dist/cjs/node/vite/shared/loggerVite/removeSuperfluousViteLog.js +6 -4
- package/dist/cjs/node/vite/shared/loggerVite.js +1 -1
- package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/configDefinitionsBuiltIn.js +20 -36
- package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/crawlPlusFiles.js +5 -4
- package/dist/cjs/node/vite/shared/resolveVikeConfigInternal.js +46 -48
- package/dist/cjs/shared/createGlobalContextShared.js +16 -14
- package/dist/cjs/shared/getPageFiles/{parseVirtualFileExports.js → parseVirtualFileExportsGlobalEntry.js} +20 -26
- package/dist/cjs/shared/page-configs/loadAndParseVirtualFilePageEntry.js +25 -0
- package/dist/cjs/shared/page-configs/resolveVikeConfigPublic.js +9 -4
- package/dist/cjs/shared/page-configs/serialize/{parsePageConfigs.js → parsePageConfigsSerialized.js} +2 -2
- package/dist/cjs/shared/page-configs/serialize/serializeConfigValues.js +3 -3
- package/dist/cjs/shared/route/execHookOnBeforeRoute.js +0 -1
- package/dist/cjs/shared/route/index.js +0 -1
- package/dist/cjs/types/VikeGlobalInternal.js +2 -0
- package/dist/cjs/utils/PROJECT_VERSION.js +1 -1
- package/dist/cjs/utils/assertSetup.js +2 -3
- package/dist/cjs/utils/assertVersion.js +2 -0
- package/dist/cjs/utils/debug.js +4 -4
- package/dist/cjs/utils/getGlobalObject.js +8 -15
- package/dist/cjs/utils/isNonRunnableDev.js +12 -0
- package/dist/cjs/utils/isScriptFile.js +1 -1
- package/dist/cjs/utils/path.js +5 -5
- package/dist/cjs/utils/requireResolve.js +13 -12
- package/dist/cjs/utils/{augmentType.js → updateType.js} +3 -3
- package/dist/esm/__internal/index.d.ts +2 -2
- package/dist/esm/__internal/index.js +3 -3
- package/dist/esm/client/runtime-client-routing/createPageContextClientSide.d.ts +2 -2
- package/dist/esm/client/runtime-client-routing/createPageContextClientSide.js +2 -2
- package/dist/esm/client/runtime-client-routing/getPageContextCurrent.d.ts +2 -2
- package/dist/esm/client/runtime-client-routing/getPageContextFromHooks.d.ts +12 -12
- package/dist/esm/client/runtime-client-routing/globalContext.d.ts +2 -2
- package/dist/esm/client/runtime-client-routing/globalContext.js +2 -2
- package/dist/esm/client/runtime-client-routing/prefetch/getPrefetchSettings.d.ts +2 -2
- package/dist/esm/client/runtime-client-routing/prefetch.d.ts +2 -2
- package/dist/esm/client/runtime-client-routing/prefetch.js +2 -2
- package/dist/esm/client/runtime-client-routing/preparePageContextForPublicUsageClient.d.ts +2 -2
- package/dist/esm/client/runtime-client-routing/renderPageClientSide.d.ts +6 -7
- package/dist/esm/client/runtime-client-routing/renderPageClientSide.js +6 -6
- package/dist/esm/client/runtime-client-routing/utils.d.ts +1 -1
- package/dist/esm/client/runtime-client-routing/utils.js +1 -1
- package/dist/esm/client/runtime-server-routing/createPageContextClientSide.d.ts +3 -3
- package/dist/esm/client/runtime-server-routing/createPageContextClientSide.js +3 -3
- package/dist/esm/client/runtime-server-routing/globalContext.d.ts +2 -2
- package/dist/esm/client/runtime-server-routing/globalContext.js +2 -2
- package/dist/esm/client/runtime-server-routing/preparePageContextForPublicUsageClient.d.ts +2 -2
- package/dist/esm/client/runtime-server-routing/utils.d.ts +1 -1
- package/dist/esm/client/runtime-server-routing/utils.js +1 -1
- package/dist/esm/client/shared/createGetGlobalContextClient.d.ts +3 -3
- package/dist/esm/client/shared/createGetGlobalContextClient.js +5 -5
- package/dist/esm/client/shared/execHookOnRenderClient.d.ts +2 -2
- package/dist/esm/client/shared/loadPageConfigsLazyClientSide.d.ts +1 -1
- package/dist/esm/client/shared/loadPageConfigsLazyClientSide.js +4 -4
- package/dist/esm/client/shared/preparePageContextForPublicUsageClientShared.d.ts +2 -2
- package/dist/esm/node/api/build.d.ts +2 -2
- package/dist/esm/node/api/build.js +6 -32
- package/dist/esm/node/api/context.d.ts +10 -10
- package/dist/esm/node/api/context.js +13 -12
- package/dist/esm/node/api/dev.d.ts +2 -2
- package/dist/esm/node/api/dev.js +0 -2
- package/dist/esm/node/api/index.js +0 -2
- package/dist/esm/node/api/onLoad.js +1 -1
- package/dist/esm/node/api/prepareViteApiCall.d.ts +3 -5
- package/dist/esm/node/api/prepareViteApiCall.js +3 -4
- package/dist/esm/node/api/preview.d.ts +2 -2
- package/dist/esm/node/api/preview.js +2 -3
- package/dist/esm/node/api/types.d.ts +4 -4
- package/dist/esm/node/api/utils.d.ts +1 -0
- package/dist/esm/node/api/utils.js +1 -0
- package/dist/esm/node/cli/index.js +1 -1
- package/dist/esm/node/cli/onLoad.js +1 -1
- package/dist/esm/node/prerender/runPrerender.d.ts +13 -304
- package/dist/esm/node/prerender/runPrerender.js +8 -9
- package/dist/esm/node/prerender/runPrerenderEntry.js +1 -1
- package/dist/esm/node/runtime/globalContext.d.ts +13 -13
- package/dist/esm/node/runtime/globalContext.js +125 -109
- package/dist/esm/node/runtime/html/injectAssets/getHtmlTags.js +1 -1
- package/dist/esm/node/runtime/renderPage/analyzePage.d.ts +4 -3
- package/dist/esm/node/runtime/renderPage/analyzePage.js +6 -4
- package/dist/esm/node/runtime/renderPage/createPageContextServerSide.d.ts +2 -2
- package/dist/esm/node/runtime/renderPage/createPageContextServerSide.js +2 -2
- package/dist/esm/node/runtime/renderPage/execHookOnRenderHtml.d.ts +0 -1
- package/dist/esm/node/runtime/renderPage/execHookOnRenderHtml.js +1 -11
- package/dist/esm/node/runtime/renderPage/execHookServer.d.ts +2 -2
- package/dist/esm/node/runtime/renderPage/getPageAssets/getManifestEntry.js +5 -4
- package/dist/esm/node/runtime/renderPage/getPageAssets/retrievePageAssetsDev.d.ts +10 -0
- package/dist/esm/node/runtime/renderPage/getPageAssets/{retrieveAssetsDev.js → retrievePageAssetsDev.js} +22 -7
- package/dist/esm/node/runtime/renderPage/getPageAssets/retrievePageAssetsProd.d.ts +10 -0
- package/dist/esm/node/runtime/renderPage/getPageAssets/{retrieveAssetsProd.js → retrievePageAssetsProd.js} +19 -2
- package/dist/esm/node/runtime/renderPage/getPageAssets.d.ts +2 -10
- package/dist/esm/node/runtime/renderPage/getPageAssets.js +4 -33
- package/dist/esm/node/runtime/renderPage/handleErrorWithoutErrorPage.d.ts +1 -1
- package/dist/esm/node/runtime/renderPage/loadPageConfigsLazyServerSide.d.ts +106 -20
- package/dist/esm/node/runtime/renderPage/loadPageConfigsLazyServerSide.js +44 -48
- package/dist/esm/node/runtime/renderPage/preparePageContextForPublicUsageServer.d.ts +2 -2
- package/dist/esm/node/runtime/renderPage/{renderPageAlreadyRouted.d.ts → renderPageAfterRoute.d.ts} +26 -10
- package/dist/esm/node/runtime/renderPage/{renderPageAlreadyRouted.js → renderPageAfterRoute.js} +5 -6
- package/dist/esm/node/runtime/renderPage.d.ts +9 -6
- package/dist/esm/node/runtime/renderPage.js +20 -18
- package/dist/esm/node/runtime/utils.d.ts +3 -2
- package/dist/esm/node/runtime/utils.js +3 -2
- package/dist/esm/node/runtime-dev/createDevMiddleware.d.ts +2 -2
- package/dist/esm/node/runtime-dev/createDevMiddleware.js +0 -2
- package/dist/esm/node/shared/virtualFileId.d.ts +28 -0
- package/dist/esm/node/shared/virtualFileId.js +107 -0
- package/dist/esm/node/vite/index.js +3 -3
- package/dist/esm/node/vite/onLoad.js +5 -3
- package/dist/esm/node/vite/plugins/pluginBuild/handleAssetsManifest.d.ts +5 -6
- package/dist/esm/node/vite/plugins/pluginBuild/handleAssetsManifest.js +31 -32
- package/dist/esm/node/vite/plugins/pluginBuild/pluginBuildApp.js +119 -10
- package/dist/esm/node/vite/plugins/pluginBuild/pluginBuildConfig.js +12 -17
- package/dist/esm/node/vite/plugins/pluginBuild/pluginDistPackageJsonFile.js +2 -10
- package/dist/esm/node/vite/plugins/pluginBuild/pluginModuleBanner.js +5 -8
- package/dist/esm/node/vite/plugins/pluginBuild/{pluginBuildEntry.d.ts → pluginProdBuildEntry.d.ts} +2 -2
- package/dist/esm/node/vite/plugins/pluginBuild/{pluginBuildEntry.js → pluginProdBuildEntry.js} +12 -12
- package/dist/esm/node/vite/plugins/pluginBuild.js +2 -4
- package/dist/esm/node/vite/plugins/pluginDev/determineFsAllowList.js +3 -3
- package/dist/esm/node/vite/plugins/pluginDev/determineOptimizeDeps.js +6 -5
- package/dist/esm/node/vite/plugins/pluginEnvVars.js +6 -10
- package/dist/esm/node/vite/plugins/pluginExtractAssets.js +5 -5
- package/dist/esm/node/vite/plugins/pluginExtractExportNames.js +6 -2
- package/dist/esm/node/vite/plugins/pluginFileEnv.js +4 -3
- package/dist/esm/node/vite/plugins/pluginNonRunnableDev.js +12 -12
- package/dist/esm/node/vite/plugins/pluginPreview.js +5 -8
- package/dist/esm/node/vite/plugins/pluginReplaceConstants.js +6 -10
- package/dist/esm/node/vite/plugins/pluginSetGlobalContext.js +2 -2
- package/dist/esm/node/vite/plugins/pluginVirtualFiles/generateVirtualFileGlobalEntry.d.ts +2 -0
- package/dist/esm/node/vite/plugins/pluginVirtualFiles/{getVirtualFilePageConfigsEager.js → generateVirtualFileGlobalEntry.js} +5 -6
- package/dist/esm/node/vite/plugins/pluginVirtualFiles/generateVirtualFileGlobalEntryWithOldDesign.d.ts +6 -0
- package/dist/esm/node/vite/plugins/pluginVirtualFiles/{getVirtualFileEntry.js → generateVirtualFileGlobalEntryWithOldDesign.js} +11 -11
- package/dist/esm/node/vite/plugins/pluginVirtualFiles/generateVirtualFilePageEntry.d.ts +2 -0
- package/dist/esm/node/vite/plugins/pluginVirtualFiles/{getVirtualFilePageConfigLazy.js → generateVirtualFilePageEntry.js} +10 -11
- package/dist/esm/node/vite/plugins/pluginVirtualFiles/getConfigValueSourcesRelevant.d.ts +5 -1
- package/dist/esm/node/vite/plugins/pluginVirtualFiles/getConfigValueSourcesRelevant.js +52 -22
- package/dist/esm/node/vite/plugins/pluginVirtualFiles.js +14 -12
- package/dist/esm/node/vite/shared/findPageFiles.js +1 -1
- package/dist/esm/node/vite/shared/getClientEntrySrcDev.d.ts +4 -0
- package/dist/esm/node/vite/shared/{resolveClientEntriesDev.js → getClientEntrySrcDev.js} +4 -4
- package/dist/esm/node/vite/shared/getHttpRequestAsyncStore.js +9 -7
- package/dist/esm/node/vite/shared/getMagicString.js +1 -1
- package/dist/esm/node/vite/shared/getOutDirs.d.ts +4 -3
- package/dist/esm/node/vite/shared/getOutDirs.js +21 -22
- package/dist/esm/node/vite/shared/getViteConfigRuntime.js +1 -1
- package/dist/esm/node/vite/shared/isViteServerSide.d.ts +18 -0
- package/dist/esm/node/vite/shared/isViteServerSide.js +66 -0
- package/dist/esm/node/vite/shared/loggerVite/removeSuperfluousViteLog.js +7 -5
- package/dist/esm/node/vite/shared/loggerVite.js +1 -1
- package/dist/esm/node/vite/shared/resolveVikeConfigInternal/configDefinitionsBuiltIn.d.ts +3 -2
- package/dist/esm/node/vite/shared/resolveVikeConfigInternal/configDefinitionsBuiltIn.js +21 -37
- package/dist/esm/node/vite/shared/resolveVikeConfigInternal/crawlPlusFiles.js +6 -5
- package/dist/esm/node/vite/shared/resolveVikeConfigInternal.d.ts +4 -2
- package/dist/esm/node/vite/shared/resolveVikeConfigInternal.js +49 -51
- package/dist/esm/shared/createGlobalContextShared.d.ts +7 -6
- package/dist/esm/shared/createGlobalContextShared.js +18 -16
- package/dist/esm/shared/getPageFiles/{parseVirtualFileExports.d.ts → parseVirtualFileExportsGlobalEntry.d.ts} +2 -2
- package/dist/esm/shared/getPageFiles/{parseVirtualFileExports.js → parseVirtualFileExportsGlobalEntry.js} +20 -26
- package/dist/esm/shared/getPageFiles.d.ts +1 -1
- package/dist/esm/shared/hooks/execHook.d.ts +2 -2
- package/dist/esm/shared/hooks/getHook.d.ts +3 -3
- package/dist/esm/shared/page-configs/loadAndParseVirtualFilePageEntry.d.ts +3 -0
- package/dist/esm/shared/page-configs/loadAndParseVirtualFilePageEntry.js +23 -0
- package/dist/esm/shared/page-configs/resolveVikeConfigPublic.d.ts +9 -9
- package/dist/esm/shared/page-configs/resolveVikeConfigPublic.js +9 -4
- package/dist/esm/shared/page-configs/serialize/PageConfigSerialized.d.ts +1 -1
- package/dist/esm/shared/page-configs/serialize/{parsePageConfigs.d.ts → parsePageConfigsSerialized.d.ts} +2 -2
- package/dist/esm/shared/page-configs/serialize/{parsePageConfigs.js → parsePageConfigsSerialized.js} +2 -2
- package/dist/esm/shared/page-configs/serialize/serializeConfigValues.js +3 -3
- package/dist/esm/shared/route/execHookOnBeforeRoute.d.ts +3 -3
- package/dist/esm/shared/route/execHookOnBeforeRoute.js +0 -1
- package/dist/esm/shared/route/index.d.ts +5 -6
- package/dist/esm/shared/route/index.js +0 -1
- package/dist/esm/types/Config.d.ts +3 -7
- package/dist/esm/types/PageConfig.d.ts +11 -9
- package/dist/esm/types/VikeGlobalInternal.d.ts +4 -0
- package/dist/esm/types/VikeGlobalInternal.js +1 -0
- package/dist/esm/types/VikeNamespace.d.ts +13 -0
- package/dist/esm/utils/PROJECT_VERSION.d.ts +1 -1
- package/dist/esm/utils/PROJECT_VERSION.js +1 -1
- package/dist/esm/utils/assertSetup.js +2 -3
- package/dist/esm/utils/assertVersion.js +2 -0
- package/dist/esm/utils/debug.js +3 -3
- package/dist/esm/utils/getGlobalObject.d.ts +6 -5
- package/dist/esm/utils/getGlobalObject.js +8 -15
- package/dist/esm/utils/isNonRunnableDev.d.ts +2 -0
- package/dist/esm/utils/isNonRunnableDev.js +10 -0
- package/dist/esm/utils/isScriptFile.d.ts +1 -1
- package/dist/esm/utils/isScriptFile.js +1 -1
- package/dist/esm/utils/path.d.ts +2 -0
- package/dist/esm/utils/path.js +5 -5
- package/dist/esm/utils/requireResolve.d.ts +4 -4
- package/dist/esm/utils/requireResolve.js +13 -12
- package/dist/esm/utils/updateType.d.ts +3 -0
- package/dist/esm/utils/updateType.js +7 -0
- package/package.json +6 -6
- package/dist/cjs/node/runtime/renderPage/debugPageFiles.js +0 -52
- package/dist/cjs/node/shared/virtualFiles/virtualFileEntry.js +0 -31
- package/dist/cjs/node/shared/virtualFiles/virtualFilePageConfigLazy.js +0 -45
- package/dist/cjs/node/vite/plugins/pluginBuild/pluginAutoFullBuild.js +0 -149
- package/dist/cjs/node/vite/shared/applyRegExWithMagicString.js +0 -11
- package/dist/cjs/node/vite/shared/isViteServerBuild.js +0 -47
- package/dist/cjs/shared/page-configs/loadConfigValues.js +0 -21
- package/dist/esm/node/runtime/renderPage/debugPageFiles.d.ts +0 -23
- package/dist/esm/node/runtime/renderPage/debugPageFiles.js +0 -47
- package/dist/esm/node/runtime/renderPage/getPageAssets/retrieveAssetsDev.d.ts +0 -4
- package/dist/esm/node/runtime/renderPage/getPageAssets/retrieveAssetsProd.d.ts +0 -4
- package/dist/esm/node/shared/virtualFiles/virtualFileEntry.d.ts +0 -11
- package/dist/esm/node/shared/virtualFiles/virtualFileEntry.js +0 -28
- package/dist/esm/node/shared/virtualFiles/virtualFilePageConfigLazy.d.ts +0 -9
- package/dist/esm/node/shared/virtualFiles/virtualFilePageConfigLazy.js +0 -43
- package/dist/esm/node/vite/plugins/pluginBuild/pluginAutoFullBuild.d.ts +0 -5
- package/dist/esm/node/vite/plugins/pluginBuild/pluginAutoFullBuild.js +0 -144
- package/dist/esm/node/vite/plugins/pluginVirtualFiles/getVirtualFileEntry.d.ts +0 -5
- package/dist/esm/node/vite/plugins/pluginVirtualFiles/getVirtualFilePageConfigLazy.d.ts +0 -3
- package/dist/esm/node/vite/plugins/pluginVirtualFiles/getVirtualFilePageConfigsEager.d.ts +0 -2
- package/dist/esm/node/vite/shared/applyRegExWithMagicString.d.ts +0 -3
- package/dist/esm/node/vite/shared/applyRegExWithMagicString.js +0 -9
- package/dist/esm/node/vite/shared/isViteServerBuild.d.ts +0 -15
- package/dist/esm/node/vite/shared/isViteServerBuild.js +0 -45
- package/dist/esm/node/vite/shared/resolveClientEntriesDev.d.ts +0 -4
- package/dist/esm/shared/page-configs/loadConfigValues.d.ts +0 -3
- package/dist/esm/shared/page-configs/loadConfigValues.js +0 -19
- package/dist/esm/utils/augmentType.d.ts +0 -3
- package/dist/esm/utils/augmentType.js +0 -7
- /package/dist/cjs/utils/{getTerminWidth.js → getTerminalWidth.js} +0 -0
- /package/dist/esm/utils/{getTerminWidth.d.ts → getTerminalWidth.d.ts} +0 -0
- /package/dist/esm/utils/{getTerminWidth.js → getTerminalWidth.js} +0 -0
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.virtualFileIdEntryClientCR = exports.virtualFileIdEntryClientSR = exports.virtualFileIdEntryServer = void 0;
|
|
4
|
-
exports.isVirtualFileIdEntry = isVirtualFileIdEntry;
|
|
5
|
-
// TODO/now: merge virtualFileEntry.ts and virtualFilePageConfigLazy.ts
|
|
6
|
-
// - One function parseVirtualFileIdEntry() to rule them all?
|
|
7
|
-
const utils_js_1 = require("../utils.js");
|
|
8
|
-
(0, utils_js_1.assertIsNotBrowser)();
|
|
9
|
-
// TODO/now: rename:
|
|
10
|
-
// ```diff
|
|
11
|
-
// - virtual:vike:entry:server
|
|
12
|
-
// + virtual:vike:entry:global:server
|
|
13
|
-
// ```
|
|
14
|
-
const virtualFileIdEntryServer = 'virtual:vike:entry:server';
|
|
15
|
-
exports.virtualFileIdEntryServer = virtualFileIdEntryServer;
|
|
16
|
-
const virtualFileIdEntryClientSR = 'virtual:vike:entry:client:server-routing';
|
|
17
|
-
exports.virtualFileIdEntryClientSR = virtualFileIdEntryClientSR;
|
|
18
|
-
const virtualFileIdEntryClientCR = 'virtual:vike:entry:client:client-routing';
|
|
19
|
-
exports.virtualFileIdEntryClientCR = virtualFileIdEntryClientCR;
|
|
20
|
-
const virtualFileIdEntries = [virtualFileIdEntryServer, virtualFileIdEntryClientCR, virtualFileIdEntryClientSR];
|
|
21
|
-
const idBase = 'virtual:vike:entry';
|
|
22
|
-
(0, utils_js_1.assert)(virtualFileIdEntries.every((v) => v.startsWith(`${idBase}:`)));
|
|
23
|
-
function isVirtualFileIdEntry(id) {
|
|
24
|
-
id = (0, utils_js_1.removeVirtualFileIdPrefix)(id);
|
|
25
|
-
if (!id.startsWith(idBase))
|
|
26
|
-
return false;
|
|
27
|
-
(0, utils_js_1.assert)(virtualFileIdEntries.includes(id));
|
|
28
|
-
const isForClientSide = id !== virtualFileIdEntryServer;
|
|
29
|
-
const isClientRouting = id === virtualFileIdEntryClientCR;
|
|
30
|
-
return { isForClientSide, isClientRouting };
|
|
31
|
-
}
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isVirtualFileIdPageConfigLazy = isVirtualFileIdPageConfigLazy;
|
|
4
|
-
exports.getVirtualFileIdPageConfigLazy = getVirtualFileIdPageConfigLazy;
|
|
5
|
-
const extractAssetsQuery_js_1 = require("../extractAssetsQuery.js");
|
|
6
|
-
const utils_js_1 = require("../utils.js");
|
|
7
|
-
(0, utils_js_1.assertIsNotBrowser)();
|
|
8
|
-
// TODO/now: rename:
|
|
9
|
-
// ```diff
|
|
10
|
-
// - virtual:vike:pageConfigLazy:server:
|
|
11
|
-
// + virtual:vike:entry:page:server:
|
|
12
|
-
// ```
|
|
13
|
-
const idBaseClient = 'virtual:vike:pageConfigLazy:client:';
|
|
14
|
-
const idBaseServer = 'virtual:vike:pageConfigLazy:server:';
|
|
15
|
-
const idBase = 'virtual:vike:pageConfigLazy:';
|
|
16
|
-
// TODO/now: rename to generateVirtualFileIdEntry()
|
|
17
|
-
function getVirtualFileIdPageConfigLazy(pageId, isForClientSide) {
|
|
18
|
-
const id = `${isForClientSide ? idBaseClient : idBaseServer}${pageId}`;
|
|
19
|
-
return id;
|
|
20
|
-
}
|
|
21
|
-
function isVirtualFileIdPageConfigLazy(id) {
|
|
22
|
-
id = (0, utils_js_1.removeVirtualFileIdPrefix)(id);
|
|
23
|
-
if (!id.includes(idBase))
|
|
24
|
-
return false;
|
|
25
|
-
(0, utils_js_1.assert)(id.startsWith(idBase));
|
|
26
|
-
const idOriginal = id;
|
|
27
|
-
id = (0, extractAssetsQuery_js_1.extractAssetsRemoveQuery)(id);
|
|
28
|
-
const isExtractAssets = idOriginal !== id;
|
|
29
|
-
if (id.startsWith(idBaseClient)) {
|
|
30
|
-
(0, utils_js_1.assert)(isExtractAssets === false);
|
|
31
|
-
return {
|
|
32
|
-
pageId: id.slice(idBaseClient.length),
|
|
33
|
-
isForClientSide: true,
|
|
34
|
-
isExtractAssets,
|
|
35
|
-
};
|
|
36
|
-
}
|
|
37
|
-
if (id.startsWith(idBaseServer)) {
|
|
38
|
-
return {
|
|
39
|
-
pageId: id.slice(idBaseServer.length),
|
|
40
|
-
isForClientSide: false,
|
|
41
|
-
isExtractAssets,
|
|
42
|
-
};
|
|
43
|
-
}
|
|
44
|
-
(0, utils_js_1.assert)(false);
|
|
45
|
-
}
|
|
@@ -1,149 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.pluginAutoFullBuild = pluginAutoFullBuild;
|
|
7
|
-
exports.isPrerenderForceExit = isPrerenderForceExit;
|
|
8
|
-
const vite_1 = require("vite");
|
|
9
|
-
const utils_js_1 = require("../../utils.js");
|
|
10
|
-
const context_js_1 = require("../../../prerender/context.js");
|
|
11
|
-
const isViteCliCall_js_1 = require("../../shared/isViteCliCall.js");
|
|
12
|
-
const picocolors_1 = __importDefault(require("@brillout/picocolors"));
|
|
13
|
-
const logErrorHint_js_1 = require("../../../runtime/renderPage/logErrorHint.js");
|
|
14
|
-
const resolveVikeConfigInternal_js_1 = require("../../shared/resolveVikeConfigInternal.js");
|
|
15
|
-
const context_js_2 = require("../../../api/context.js");
|
|
16
|
-
const handleAssetsManifest_js_1 = require("./handleAssetsManifest.js");
|
|
17
|
-
const isViteServerBuild_js_1 = require("../../shared/isViteServerBuild.js");
|
|
18
|
-
const runPrerenderEntry_js_1 = require("../../../prerender/runPrerenderEntry.js");
|
|
19
|
-
const getManifestFilePathRelative_js_1 = require("../../shared/getManifestFilePathRelative.js");
|
|
20
|
-
(0, utils_js_1.assertIsSingleModuleInstance)('build/pluginAutoFullBuild.ts');
|
|
21
|
-
let forceExit = false;
|
|
22
|
-
function pluginAutoFullBuild() {
|
|
23
|
-
let config;
|
|
24
|
-
return [
|
|
25
|
-
{
|
|
26
|
-
name: 'vike:build:pluginAutoFullBuild',
|
|
27
|
-
apply: 'build',
|
|
28
|
-
enforce: 'pre',
|
|
29
|
-
async configResolved(config_) {
|
|
30
|
-
config = config_;
|
|
31
|
-
await abortViteBuildSsr();
|
|
32
|
-
},
|
|
33
|
-
writeBundle: {
|
|
34
|
-
/* We can't use this because it breaks Vite's logging. TO-DO/eventually: try again with latest Vite version.
|
|
35
|
-
sequential: true,
|
|
36
|
-
order: 'pre',
|
|
37
|
-
*/
|
|
38
|
-
async handler(options, bundle) {
|
|
39
|
-
try {
|
|
40
|
-
await (0, handleAssetsManifest_js_1.handleAssetsManifest)(config, this.environment, options, bundle);
|
|
41
|
-
await triggerFullBuild(config, this.environment, bundle);
|
|
42
|
-
}
|
|
43
|
-
catch (err) {
|
|
44
|
-
// We use try-catch also because:
|
|
45
|
-
// - Vite/Rollup swallows errors thrown inside the writeBundle() hook. (It doesn't swallow errors thrown inside the first writeBundle() hook while building the client-side, but it does swallow errors thrown inside the second writeBundle() while building the server-side triggered after Vike calls Vite's `build()` API.)
|
|
46
|
-
// - Avoid Rollup prefixing the error with [vike:build:pluginAutoFullBuild], see for example https://github.com/vikejs/vike/issues/472#issuecomment-1276274203
|
|
47
|
-
console.error(err);
|
|
48
|
-
(0, logErrorHint_js_1.logErrorHint)(err);
|
|
49
|
-
process.exit(1);
|
|
50
|
-
}
|
|
51
|
-
},
|
|
52
|
-
},
|
|
53
|
-
},
|
|
54
|
-
{
|
|
55
|
-
name: 'vike:build:pluginAutoFullBuild:post',
|
|
56
|
-
apply: 'build',
|
|
57
|
-
enforce: 'post',
|
|
58
|
-
closeBundle: {
|
|
59
|
-
sequential: true,
|
|
60
|
-
order: 'post',
|
|
61
|
-
async handler() {
|
|
62
|
-
(0, utils_js_1.onSetupBuild)();
|
|
63
|
-
(0, handleAssetsManifest_js_1.handleAssetsManifest_assertUsageCssTarget)(config);
|
|
64
|
-
const vikeConfig = await (0, resolveVikeConfigInternal_js_1.getVikeConfigInternal)();
|
|
65
|
-
if (forceExit &&
|
|
66
|
-
// Let vike:build:pluginBuildApp force exit
|
|
67
|
-
!vikeConfig.config.vite6BuilderApp) {
|
|
68
|
-
(0, runPrerenderEntry_js_1.runPrerender_forceExit)();
|
|
69
|
-
(0, utils_js_1.assert)(false);
|
|
70
|
-
}
|
|
71
|
-
},
|
|
72
|
-
},
|
|
73
|
-
},
|
|
74
|
-
];
|
|
75
|
-
}
|
|
76
|
-
async function triggerFullBuild(config, viteEnv, bundle) {
|
|
77
|
-
const vikeConfig = await (0, resolveVikeConfigInternal_js_1.getVikeConfigInternal)();
|
|
78
|
-
// Whether builder.buildApp() is being used, see plugin:build:pluginBuildApp
|
|
79
|
-
const isBuilderApp = vikeConfig.config.vite6BuilderApp;
|
|
80
|
-
// If builder.buildApp() => trigger at end of `this.environment.name === 'ssr'`.
|
|
81
|
-
// Else => trigger at end of client-side build.
|
|
82
|
-
if (isBuilderApp ? !(0, isViteServerBuild_js_1.isViteServerBuild_onlySsrEnv)(config, viteEnv) : !(0, isViteServerBuild_js_1.isViteClientBuild)(config, viteEnv))
|
|
83
|
-
return;
|
|
84
|
-
if (isEntirelyDisabled(vikeConfig))
|
|
85
|
-
return;
|
|
86
|
-
// Workaround for @vitejs/plugin-legacy
|
|
87
|
-
// - The legacy plugin triggers its own Rollup build for the client-side.
|
|
88
|
-
// - The legacy plugin doesn't generate a manifest => we can use that to detect the legacy plugin build.
|
|
89
|
-
// - Issue & reproduction: https://github.com/vikejs/vike/issues/1154#issuecomment-1965954636
|
|
90
|
-
if (!bundle[(0, getManifestFilePathRelative_js_1.getManifestFilePathRelative)(config.build.manifest)])
|
|
91
|
-
return;
|
|
92
|
-
const configInline = getFullBuildInlineConfig(config);
|
|
93
|
-
if (!isBuilderApp) {
|
|
94
|
-
await (0, vite_1.build)(setSSR(configInline));
|
|
95
|
-
}
|
|
96
|
-
else {
|
|
97
|
-
// The server build is already called by builder.buildApp()
|
|
98
|
-
}
|
|
99
|
-
if ((0, context_js_1.isPrerenderAutoRunEnabled)(vikeConfig)) {
|
|
100
|
-
const res = await (0, runPrerenderEntry_js_1.runPrerenderFromAutoRun)(configInline);
|
|
101
|
-
forceExit = res.forceExit;
|
|
102
|
-
(0, utils_js_1.assert)((0, context_js_1.wasPrerenderRun)());
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
function setSSR(configInline) {
|
|
106
|
-
return {
|
|
107
|
-
...configInline,
|
|
108
|
-
build: {
|
|
109
|
-
...configInline.build,
|
|
110
|
-
ssr: true,
|
|
111
|
-
},
|
|
112
|
-
};
|
|
113
|
-
}
|
|
114
|
-
async function abortViteBuildSsr() {
|
|
115
|
-
const vikeConfig = await (0, resolveVikeConfigInternal_js_1.getVikeConfigInternal)();
|
|
116
|
-
if (vikeConfig.config.disableAutoFullBuild !== true && (0, isViteCliCall_js_1.isViteCliCall)() && (0, isViteCliCall_js_1.getViteConfigFromCli)()?.build.ssr) {
|
|
117
|
-
(0, utils_js_1.assertWarning)(false, `The CLI call ${picocolors_1.default.cyan('$ vite build --ssr')} is superfluous since ${picocolors_1.default.cyan('$ vite build')} also builds the server-side. If you want two separate build steps then use https://vike.dev/disableAutoFullBuild or use Vite's ${picocolors_1.default.cyan('build()')} API.`, { onlyOnce: true });
|
|
118
|
-
process.exit(0);
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
function isEntirelyDisabled(vikeConfig) {
|
|
122
|
-
const { disableAutoFullBuild } = vikeConfig.config;
|
|
123
|
-
if (disableAutoFullBuild === undefined || disableAutoFullBuild === 'prerender') {
|
|
124
|
-
const isUserUsingViteApi = !(0, isViteCliCall_js_1.isViteCliCall)() && !(0, context_js_2.isVikeCliOrApi)();
|
|
125
|
-
return isUserUsingViteApi;
|
|
126
|
-
}
|
|
127
|
-
else {
|
|
128
|
-
return disableAutoFullBuild;
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
function isPrerenderForceExit() {
|
|
132
|
-
return forceExit;
|
|
133
|
-
}
|
|
134
|
-
function getFullBuildInlineConfig(config) {
|
|
135
|
-
const configFromCli = !(0, isViteCliCall_js_1.isViteCliCall)() ? null : (0, isViteCliCall_js_1.getViteConfigFromCli)();
|
|
136
|
-
if (config._viteConfigFromUserEnhanced) {
|
|
137
|
-
return config._viteConfigFromUserEnhanced;
|
|
138
|
-
}
|
|
139
|
-
else {
|
|
140
|
-
return {
|
|
141
|
-
...configFromCli,
|
|
142
|
-
configFile: configFromCli?.configFile || config.configFile,
|
|
143
|
-
root: config.root,
|
|
144
|
-
build: {
|
|
145
|
-
...configFromCli?.build,
|
|
146
|
-
},
|
|
147
|
-
};
|
|
148
|
-
}
|
|
149
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.applyRegExpWithMagicString = applyRegExpWithMagicString;
|
|
4
|
-
// TODO/now: replace with .replaceAll() ?
|
|
5
|
-
function applyRegExpWithMagicString(magicString, regExp, replacement) {
|
|
6
|
-
const envStatementRegEx = typeof regExp === 'string' ? new RegExp(regExp, 'g') : regExp;
|
|
7
|
-
let match;
|
|
8
|
-
while ((match = envStatementRegEx.exec(magicString.original))) {
|
|
9
|
-
magicString.overwrite(match.index, match.index + match[0].length, JSON.stringify(replacement));
|
|
10
|
-
}
|
|
11
|
-
}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isViteServerBuild = isViteServerBuild;
|
|
4
|
-
exports.isViteClientBuild = isViteClientBuild;
|
|
5
|
-
exports.isViteServerBuild_options = isViteServerBuild_options;
|
|
6
|
-
exports.isViteServerBuild_safe = isViteServerBuild_safe;
|
|
7
|
-
exports.isViteServerBuild_onlySsrEnv = isViteServerBuild_onlySsrEnv;
|
|
8
|
-
const assert_js_1 = require("../../../utils/assert.js");
|
|
9
|
-
function isViteServerBuild(configGlobal, viteEnv) {
|
|
10
|
-
const configEnv = viteEnv?.config ?? configGlobal;
|
|
11
|
-
return !!configEnv?.build?.ssr;
|
|
12
|
-
}
|
|
13
|
-
// Only `ssr` env: for example don't include `vercel_edge` nor `vercel_node`.
|
|
14
|
-
function isViteServerBuild_onlySsrEnv(configGlobal, viteEnv) {
|
|
15
|
-
return viteEnv ? viteEnv.name === 'ssr' : isViteServerBuild(configGlobal);
|
|
16
|
-
}
|
|
17
|
-
function isViteClientBuild(configGlobal, viteEnv) {
|
|
18
|
-
const yes = !isViteServerBuild(configGlobal, viteEnv);
|
|
19
|
-
const isVite5 = viteEnv === undefined;
|
|
20
|
-
if (!isVite5) {
|
|
21
|
-
const yes2 = viteEnv.name === 'client';
|
|
22
|
-
(0, assert_js_1.assert)(yes === yes2);
|
|
23
|
-
}
|
|
24
|
-
return yes;
|
|
25
|
-
}
|
|
26
|
-
function isViteServerBuild_options(options) {
|
|
27
|
-
return !!options?.ssr;
|
|
28
|
-
}
|
|
29
|
-
// Vite is quite messy about setting `ssr: boolean`, thus we use an extra safe implementation for security purposes.
|
|
30
|
-
// It's used for .client.js and .server.js guarantee thus we use aggressive assert() calls for added safety.
|
|
31
|
-
function isViteServerBuild_safe(config, options) {
|
|
32
|
-
if (config.command === 'build') {
|
|
33
|
-
(0, assert_js_1.assert)(typeof config.build.ssr === 'boolean');
|
|
34
|
-
const val = config.build.ssr;
|
|
35
|
-
if (options?.ssr !== undefined)
|
|
36
|
-
(0, assert_js_1.assert)(val === options.ssr);
|
|
37
|
-
return val;
|
|
38
|
-
}
|
|
39
|
-
else {
|
|
40
|
-
(0, assert_js_1.assert)(typeof options?.ssr === 'boolean');
|
|
41
|
-
const val = options.ssr;
|
|
42
|
-
/* This assert() fails (which is very unexpected).
|
|
43
|
-
if (typeof config.build.ssr === 'boolean') assert(val === config.build.ssr)
|
|
44
|
-
//*/
|
|
45
|
-
return val;
|
|
46
|
-
}
|
|
47
|
-
}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.loadConfigValues = loadConfigValues;
|
|
4
|
-
const utils_js_1 = require("../utils.js");
|
|
5
|
-
const parsePageConfigs_js_1 = require("./serialize/parsePageConfigs.js");
|
|
6
|
-
async function loadConfigValues(pageConfig, isDev) {
|
|
7
|
-
if ('isAllLoaded' in pageConfig &&
|
|
8
|
-
// We don't need to cache in dev, since Vite already caches the virtual module
|
|
9
|
-
!isDev) {
|
|
10
|
-
return pageConfig;
|
|
11
|
-
}
|
|
12
|
-
const { moduleId, moduleExports } = pageConfig.loadConfigLazy();
|
|
13
|
-
const configValuesLoaded = await moduleExports;
|
|
14
|
-
// `configValuesLoaded` is sometimes `undefined` https://github.com/vikejs/vike/discussions/2092
|
|
15
|
-
if (!configValuesLoaded)
|
|
16
|
-
(0, utils_js_1.assert)(false, { moduleExports, configValuesLoaded, moduleId });
|
|
17
|
-
const configValues = (0, parsePageConfigs_js_1.parseConfigValuesSerialized)(configValuesLoaded.configValuesSerialized);
|
|
18
|
-
Object.assign(pageConfig.configValues, configValues);
|
|
19
|
-
(0, utils_js_1.objectAssign)(pageConfig, { isAllLoaded: true });
|
|
20
|
-
return pageConfig;
|
|
21
|
-
}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
export { debugPageFiles };
|
|
2
|
-
export type { PageContextDebugRouteMatches };
|
|
3
|
-
import type { RouteMatches } from '../../../shared/route/index.js';
|
|
4
|
-
import type { ClientDependency } from '../../../shared/getPageFiles/analyzePageClientSide/ClientDependency.js';
|
|
5
|
-
import type { PageFile } from '../../../shared/getPageFiles.js';
|
|
6
|
-
import type { GlobalContextServerInternal } from '../globalContext.js';
|
|
7
|
-
type PageContextDebugRouteMatches = {
|
|
8
|
-
_debugRouteMatches: 'ROUTING_ERROR' | RouteMatches;
|
|
9
|
-
};
|
|
10
|
-
declare function debugPageFiles({ pageContext, isHtmlOnly, isClientRouting, pageFilesLoaded, pageFilesServerSide, pageFilesClientSide, clientEntries, clientDependencies, }: {
|
|
11
|
-
pageContext: {
|
|
12
|
-
urlOriginal: string;
|
|
13
|
-
pageId: string;
|
|
14
|
-
_globalContext: GlobalContextServerInternal;
|
|
15
|
-
} & PageContextDebugRouteMatches;
|
|
16
|
-
isHtmlOnly: boolean;
|
|
17
|
-
isClientRouting: boolean;
|
|
18
|
-
pageFilesLoaded: PageFile[];
|
|
19
|
-
pageFilesClientSide: PageFile[];
|
|
20
|
-
pageFilesServerSide: PageFile[];
|
|
21
|
-
clientEntries: string[];
|
|
22
|
-
clientDependencies: ClientDependency[];
|
|
23
|
-
}): void;
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
export { debugPageFiles };
|
|
2
|
-
import pc from '@brillout/picocolors';
|
|
3
|
-
import { assert, makeFirst, createDebugger } from '../utils.js';
|
|
4
|
-
function debugPageFiles({ pageContext, isHtmlOnly, isClientRouting, pageFilesLoaded, pageFilesServerSide, pageFilesClientSide, clientEntries, clientDependencies, }) {
|
|
5
|
-
const debug = createDebugger('vike:pageFiles', { serialization: { emptyArray: 'None' } });
|
|
6
|
-
const padding = ' - ';
|
|
7
|
-
debug('All page files:', printPageFiles(pageContext._globalContext._pageFilesAll, true));
|
|
8
|
-
debug(`URL:`, pageContext.urlOriginal);
|
|
9
|
-
debug.options({ serialization: { emptyArray: 'No match' } })(`Routing:`, printRouteMatches(pageContext._debugRouteMatches));
|
|
10
|
-
debug(`pageId:`, pageContext.pageId);
|
|
11
|
-
debug('Page type:', isHtmlOnly ? 'HTML-only' : 'SSR/SPA');
|
|
12
|
-
debug(`Routing type:`, !isHtmlOnly && isClientRouting ? 'Client Routing' : 'Server Routing');
|
|
13
|
-
debug('Server-side page files:', printPageFiles(pageFilesLoaded));
|
|
14
|
-
assert(samePageFiles(pageFilesLoaded, pageFilesServerSide));
|
|
15
|
-
debug('Client-side page files:', printPageFiles(pageFilesClientSide));
|
|
16
|
-
debug('Client-side entries:', clientEntries);
|
|
17
|
-
debug('Client-side dependencies:', clientDependencies);
|
|
18
|
-
return;
|
|
19
|
-
function printRouteMatches(debugRouteMatches) {
|
|
20
|
-
if (debugRouteMatches === 'ROUTING_ERROR') {
|
|
21
|
-
return 'Routing Failed';
|
|
22
|
-
}
|
|
23
|
-
if (debugRouteMatches === 'CUSTOM_ROUTING') {
|
|
24
|
-
return 'Custom Routing';
|
|
25
|
-
}
|
|
26
|
-
return debugRouteMatches;
|
|
27
|
-
}
|
|
28
|
-
function printPageFiles(pageFiles, genericPageFilesLast = false) {
|
|
29
|
-
if (pageFiles.length === 0) {
|
|
30
|
-
return 'None';
|
|
31
|
-
}
|
|
32
|
-
return ('\n' +
|
|
33
|
-
pageFiles
|
|
34
|
-
.sort((p1, p2) => p1.filePath.localeCompare(p2.filePath))
|
|
35
|
-
.sort(makeFirst((p) => (p.isRendererPageFile ? !genericPageFilesLast : null)))
|
|
36
|
-
.sort(makeFirst((p) => (p.isDefaultPageFile ? !genericPageFilesLast : null)))
|
|
37
|
-
.map((p) => p.filePath)
|
|
38
|
-
.map((s) => s.split('_default.page.').join(`${pc.blue('_default')}.page.`))
|
|
39
|
-
.map((s) => s.split('/renderer/').join(`/${pc.red('renderer')}/`))
|
|
40
|
-
.map((s) => padding + s)
|
|
41
|
-
.join('\n'));
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
function samePageFiles(pageFiles1, pageFiles2) {
|
|
45
|
-
return (pageFiles1.every((p1) => pageFiles2.some((p2) => p2.filePath === p1.filePath)) &&
|
|
46
|
-
pageFiles2.every((p2) => pageFiles1.some((p1) => p1.filePath === p2.filePath)));
|
|
47
|
-
}
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export { retrieveAssetsDev };
|
|
2
|
-
import type { ViteDevServer } from 'vite';
|
|
3
|
-
import type { ClientDependency } from '../../../../shared/getPageFiles/analyzePageClientSide/ClientDependency.js';
|
|
4
|
-
declare function retrieveAssetsDev(clientDependencies: ClientDependency[], viteDevServer: ViteDevServer): Promise<string[]>;
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export { retrieveAssetsProd };
|
|
2
|
-
import type { ViteManifest } from '../../../../types/ViteManifest.js';
|
|
3
|
-
import type { ClientDependency } from '../../../../shared/getPageFiles/analyzePageClientSide/ClientDependency.js';
|
|
4
|
-
declare function retrieveAssetsProd(clientDependencies: ClientDependency[], assetsManifest: ViteManifest, includeAssetsImportedByServer: boolean): string[];
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
export { virtualFileIdEntryServer };
|
|
2
|
-
export { virtualFileIdEntryClientSR };
|
|
3
|
-
export { virtualFileIdEntryClientCR };
|
|
4
|
-
export { isVirtualFileIdEntry };
|
|
5
|
-
declare const virtualFileIdEntryServer = "virtual:vike:entry:server";
|
|
6
|
-
declare const virtualFileIdEntryClientSR = "virtual:vike:entry:client:server-routing";
|
|
7
|
-
declare const virtualFileIdEntryClientCR = "virtual:vike:entry:client:client-routing";
|
|
8
|
-
declare function isVirtualFileIdEntry(id: string): false | {
|
|
9
|
-
isForClientSide: boolean;
|
|
10
|
-
isClientRouting: boolean;
|
|
11
|
-
};
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
export { virtualFileIdEntryServer };
|
|
2
|
-
export { virtualFileIdEntryClientSR };
|
|
3
|
-
export { virtualFileIdEntryClientCR };
|
|
4
|
-
export { isVirtualFileIdEntry };
|
|
5
|
-
// TODO/now: merge virtualFileEntry.ts and virtualFilePageConfigLazy.ts
|
|
6
|
-
// - One function parseVirtualFileIdEntry() to rule them all?
|
|
7
|
-
import { assert, assertIsNotBrowser, removeVirtualFileIdPrefix } from '../utils.js';
|
|
8
|
-
assertIsNotBrowser();
|
|
9
|
-
// TODO/now: rename:
|
|
10
|
-
// ```diff
|
|
11
|
-
// - virtual:vike:entry:server
|
|
12
|
-
// + virtual:vike:entry:global:server
|
|
13
|
-
// ```
|
|
14
|
-
const virtualFileIdEntryServer = 'virtual:vike:entry:server';
|
|
15
|
-
const virtualFileIdEntryClientSR = 'virtual:vike:entry:client:server-routing';
|
|
16
|
-
const virtualFileIdEntryClientCR = 'virtual:vike:entry:client:client-routing';
|
|
17
|
-
const virtualFileIdEntries = [virtualFileIdEntryServer, virtualFileIdEntryClientCR, virtualFileIdEntryClientSR];
|
|
18
|
-
const idBase = 'virtual:vike:entry';
|
|
19
|
-
assert(virtualFileIdEntries.every((v) => v.startsWith(`${idBase}:`)));
|
|
20
|
-
function isVirtualFileIdEntry(id) {
|
|
21
|
-
id = removeVirtualFileIdPrefix(id);
|
|
22
|
-
if (!id.startsWith(idBase))
|
|
23
|
-
return false;
|
|
24
|
-
assert(virtualFileIdEntries.includes(id));
|
|
25
|
-
const isForClientSide = id !== virtualFileIdEntryServer;
|
|
26
|
-
const isClientRouting = id === virtualFileIdEntryClientCR;
|
|
27
|
-
return { isForClientSide, isClientRouting };
|
|
28
|
-
}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export { isVirtualFileIdPageConfigLazy };
|
|
2
|
-
export { getVirtualFileIdPageConfigLazy };
|
|
3
|
-
declare const idBase = "virtual:vike:pageConfigLazy:";
|
|
4
|
-
declare function getVirtualFileIdPageConfigLazy(pageId: string, isForClientSide: boolean): `${typeof idBase}${string}`;
|
|
5
|
-
declare function isVirtualFileIdPageConfigLazy(id: string): false | {
|
|
6
|
-
isForClientSide: boolean;
|
|
7
|
-
pageId: string;
|
|
8
|
-
isExtractAssets: boolean;
|
|
9
|
-
};
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
export { isVirtualFileIdPageConfigLazy };
|
|
2
|
-
export { getVirtualFileIdPageConfigLazy };
|
|
3
|
-
import { extractAssetsRemoveQuery } from '../extractAssetsQuery.js';
|
|
4
|
-
import { assert, assertIsNotBrowser, removeVirtualFileIdPrefix } from '../utils.js';
|
|
5
|
-
assertIsNotBrowser();
|
|
6
|
-
// TODO/now: rename:
|
|
7
|
-
// ```diff
|
|
8
|
-
// - virtual:vike:pageConfigLazy:server:
|
|
9
|
-
// + virtual:vike:entry:page:server:
|
|
10
|
-
// ```
|
|
11
|
-
const idBaseClient = 'virtual:vike:pageConfigLazy:client:';
|
|
12
|
-
const idBaseServer = 'virtual:vike:pageConfigLazy:server:';
|
|
13
|
-
const idBase = 'virtual:vike:pageConfigLazy:';
|
|
14
|
-
// TODO/now: rename to generateVirtualFileIdEntry()
|
|
15
|
-
function getVirtualFileIdPageConfigLazy(pageId, isForClientSide) {
|
|
16
|
-
const id = `${isForClientSide ? idBaseClient : idBaseServer}${pageId}`;
|
|
17
|
-
return id;
|
|
18
|
-
}
|
|
19
|
-
function isVirtualFileIdPageConfigLazy(id) {
|
|
20
|
-
id = removeVirtualFileIdPrefix(id);
|
|
21
|
-
if (!id.includes(idBase))
|
|
22
|
-
return false;
|
|
23
|
-
assert(id.startsWith(idBase));
|
|
24
|
-
const idOriginal = id;
|
|
25
|
-
id = extractAssetsRemoveQuery(id);
|
|
26
|
-
const isExtractAssets = idOriginal !== id;
|
|
27
|
-
if (id.startsWith(idBaseClient)) {
|
|
28
|
-
assert(isExtractAssets === false);
|
|
29
|
-
return {
|
|
30
|
-
pageId: id.slice(idBaseClient.length),
|
|
31
|
-
isForClientSide: true,
|
|
32
|
-
isExtractAssets,
|
|
33
|
-
};
|
|
34
|
-
}
|
|
35
|
-
if (id.startsWith(idBaseServer)) {
|
|
36
|
-
return {
|
|
37
|
-
pageId: id.slice(idBaseServer.length),
|
|
38
|
-
isForClientSide: false,
|
|
39
|
-
isExtractAssets,
|
|
40
|
-
};
|
|
41
|
-
}
|
|
42
|
-
assert(false);
|
|
43
|
-
}
|
|
@@ -1,144 +0,0 @@
|
|
|
1
|
-
export { pluginAutoFullBuild };
|
|
2
|
-
export { isPrerenderForceExit };
|
|
3
|
-
import { build } from 'vite';
|
|
4
|
-
import { assert, assertIsSingleModuleInstance, assertWarning, onSetupBuild } from '../../utils.js';
|
|
5
|
-
import { isPrerenderAutoRunEnabled, wasPrerenderRun } from '../../../prerender/context.js';
|
|
6
|
-
import { isViteCliCall, getViteConfigFromCli } from '../../shared/isViteCliCall.js';
|
|
7
|
-
import pc from '@brillout/picocolors';
|
|
8
|
-
import { logErrorHint } from '../../../runtime/renderPage/logErrorHint.js';
|
|
9
|
-
import { getVikeConfigInternal } from '../../shared/resolveVikeConfigInternal.js';
|
|
10
|
-
import { isVikeCliOrApi } from '../../../api/context.js';
|
|
11
|
-
import { handleAssetsManifest, handleAssetsManifest_assertUsageCssTarget } from './handleAssetsManifest.js';
|
|
12
|
-
import { isViteClientBuild, isViteServerBuild_onlySsrEnv } from '../../shared/isViteServerBuild.js';
|
|
13
|
-
import { runPrerender_forceExit, runPrerenderFromAutoRun } from '../../../prerender/runPrerenderEntry.js';
|
|
14
|
-
import { getManifestFilePathRelative } from '../../shared/getManifestFilePathRelative.js';
|
|
15
|
-
assertIsSingleModuleInstance('build/pluginAutoFullBuild.ts');
|
|
16
|
-
let forceExit = false;
|
|
17
|
-
function pluginAutoFullBuild() {
|
|
18
|
-
let config;
|
|
19
|
-
return [
|
|
20
|
-
{
|
|
21
|
-
name: 'vike:build:pluginAutoFullBuild',
|
|
22
|
-
apply: 'build',
|
|
23
|
-
enforce: 'pre',
|
|
24
|
-
async configResolved(config_) {
|
|
25
|
-
config = config_;
|
|
26
|
-
await abortViteBuildSsr();
|
|
27
|
-
},
|
|
28
|
-
writeBundle: {
|
|
29
|
-
/* We can't use this because it breaks Vite's logging. TO-DO/eventually: try again with latest Vite version.
|
|
30
|
-
sequential: true,
|
|
31
|
-
order: 'pre',
|
|
32
|
-
*/
|
|
33
|
-
async handler(options, bundle) {
|
|
34
|
-
try {
|
|
35
|
-
await handleAssetsManifest(config, this.environment, options, bundle);
|
|
36
|
-
await triggerFullBuild(config, this.environment, bundle);
|
|
37
|
-
}
|
|
38
|
-
catch (err) {
|
|
39
|
-
// We use try-catch also because:
|
|
40
|
-
// - Vite/Rollup swallows errors thrown inside the writeBundle() hook. (It doesn't swallow errors thrown inside the first writeBundle() hook while building the client-side, but it does swallow errors thrown inside the second writeBundle() while building the server-side triggered after Vike calls Vite's `build()` API.)
|
|
41
|
-
// - Avoid Rollup prefixing the error with [vike:build:pluginAutoFullBuild], see for example https://github.com/vikejs/vike/issues/472#issuecomment-1276274203
|
|
42
|
-
console.error(err);
|
|
43
|
-
logErrorHint(err);
|
|
44
|
-
process.exit(1);
|
|
45
|
-
}
|
|
46
|
-
},
|
|
47
|
-
},
|
|
48
|
-
},
|
|
49
|
-
{
|
|
50
|
-
name: 'vike:build:pluginAutoFullBuild:post',
|
|
51
|
-
apply: 'build',
|
|
52
|
-
enforce: 'post',
|
|
53
|
-
closeBundle: {
|
|
54
|
-
sequential: true,
|
|
55
|
-
order: 'post',
|
|
56
|
-
async handler() {
|
|
57
|
-
onSetupBuild();
|
|
58
|
-
handleAssetsManifest_assertUsageCssTarget(config);
|
|
59
|
-
const vikeConfig = await getVikeConfigInternal();
|
|
60
|
-
if (forceExit &&
|
|
61
|
-
// Let vike:build:pluginBuildApp force exit
|
|
62
|
-
!vikeConfig.config.vite6BuilderApp) {
|
|
63
|
-
runPrerender_forceExit();
|
|
64
|
-
assert(false);
|
|
65
|
-
}
|
|
66
|
-
},
|
|
67
|
-
},
|
|
68
|
-
},
|
|
69
|
-
];
|
|
70
|
-
}
|
|
71
|
-
async function triggerFullBuild(config, viteEnv, bundle) {
|
|
72
|
-
const vikeConfig = await getVikeConfigInternal();
|
|
73
|
-
// Whether builder.buildApp() is being used, see plugin:build:pluginBuildApp
|
|
74
|
-
const isBuilderApp = vikeConfig.config.vite6BuilderApp;
|
|
75
|
-
// If builder.buildApp() => trigger at end of `this.environment.name === 'ssr'`.
|
|
76
|
-
// Else => trigger at end of client-side build.
|
|
77
|
-
if (isBuilderApp ? !isViteServerBuild_onlySsrEnv(config, viteEnv) : !isViteClientBuild(config, viteEnv))
|
|
78
|
-
return;
|
|
79
|
-
if (isEntirelyDisabled(vikeConfig))
|
|
80
|
-
return;
|
|
81
|
-
// Workaround for @vitejs/plugin-legacy
|
|
82
|
-
// - The legacy plugin triggers its own Rollup build for the client-side.
|
|
83
|
-
// - The legacy plugin doesn't generate a manifest => we can use that to detect the legacy plugin build.
|
|
84
|
-
// - Issue & reproduction: https://github.com/vikejs/vike/issues/1154#issuecomment-1965954636
|
|
85
|
-
if (!bundle[getManifestFilePathRelative(config.build.manifest)])
|
|
86
|
-
return;
|
|
87
|
-
const configInline = getFullBuildInlineConfig(config);
|
|
88
|
-
if (!isBuilderApp) {
|
|
89
|
-
await build(setSSR(configInline));
|
|
90
|
-
}
|
|
91
|
-
else {
|
|
92
|
-
// The server build is already called by builder.buildApp()
|
|
93
|
-
}
|
|
94
|
-
if (isPrerenderAutoRunEnabled(vikeConfig)) {
|
|
95
|
-
const res = await runPrerenderFromAutoRun(configInline);
|
|
96
|
-
forceExit = res.forceExit;
|
|
97
|
-
assert(wasPrerenderRun());
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
function setSSR(configInline) {
|
|
101
|
-
return {
|
|
102
|
-
...configInline,
|
|
103
|
-
build: {
|
|
104
|
-
...configInline.build,
|
|
105
|
-
ssr: true,
|
|
106
|
-
},
|
|
107
|
-
};
|
|
108
|
-
}
|
|
109
|
-
async function abortViteBuildSsr() {
|
|
110
|
-
const vikeConfig = await getVikeConfigInternal();
|
|
111
|
-
if (vikeConfig.config.disableAutoFullBuild !== true && isViteCliCall() && getViteConfigFromCli()?.build.ssr) {
|
|
112
|
-
assertWarning(false, `The CLI call ${pc.cyan('$ vite build --ssr')} is superfluous since ${pc.cyan('$ vite build')} also builds the server-side. If you want two separate build steps then use https://vike.dev/disableAutoFullBuild or use Vite's ${pc.cyan('build()')} API.`, { onlyOnce: true });
|
|
113
|
-
process.exit(0);
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
function isEntirelyDisabled(vikeConfig) {
|
|
117
|
-
const { disableAutoFullBuild } = vikeConfig.config;
|
|
118
|
-
if (disableAutoFullBuild === undefined || disableAutoFullBuild === 'prerender') {
|
|
119
|
-
const isUserUsingViteApi = !isViteCliCall() && !isVikeCliOrApi();
|
|
120
|
-
return isUserUsingViteApi;
|
|
121
|
-
}
|
|
122
|
-
else {
|
|
123
|
-
return disableAutoFullBuild;
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
function isPrerenderForceExit() {
|
|
127
|
-
return forceExit;
|
|
128
|
-
}
|
|
129
|
-
function getFullBuildInlineConfig(config) {
|
|
130
|
-
const configFromCli = !isViteCliCall() ? null : getViteConfigFromCli();
|
|
131
|
-
if (config._viteConfigFromUserEnhanced) {
|
|
132
|
-
return config._viteConfigFromUserEnhanced;
|
|
133
|
-
}
|
|
134
|
-
else {
|
|
135
|
-
return {
|
|
136
|
-
...configFromCli,
|
|
137
|
-
configFile: configFromCli?.configFile || config.configFile,
|
|
138
|
-
root: config.root,
|
|
139
|
-
build: {
|
|
140
|
-
...configFromCli?.build,
|
|
141
|
-
},
|
|
142
|
-
};
|
|
143
|
-
}
|
|
144
|
-
}
|