vike 0.4.237 → 0.4.238-commit-3c1a09d
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/csp.js +46 -0
- package/dist/cjs/node/runtime/globalContext.js +128 -112
- package/dist/cjs/node/runtime/html/injectAssets/getHtmlTags.js +11 -8
- package/dist/cjs/node/runtime/html/injectAssets/inferHtmlTags.js +5 -2
- package/dist/cjs/node/runtime/html/injectAssets/mergeScriptTags.js +4 -2
- 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 +57 -50
- 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 +23 -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 +10 -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 +14 -303
- package/dist/esm/node/prerender/runPrerender.js +8 -9
- package/dist/esm/node/prerender/runPrerenderEntry.js +1 -1
- package/dist/esm/node/runtime/csp.d.ts +12 -0
- package/dist/esm/node/runtime/csp.js +44 -0
- 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 +11 -8
- package/dist/esm/node/runtime/html/injectAssets/inferHtmlTags.d.ts +2 -1
- package/dist/esm/node/runtime/html/injectAssets/inferHtmlTags.js +5 -2
- package/dist/esm/node/runtime/html/injectAssets/mergeScriptTags.d.ts +2 -1
- package/dist/esm/node/runtime/html/injectAssets/mergeScriptTags.js +4 -2
- package/dist/esm/node/runtime/html/serializeContext.d.ts +2 -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 +108 -20
- package/dist/esm/node/runtime/renderPage/loadPageConfigsLazyServerSide.js +59 -52
- package/dist/esm/node/runtime/renderPage/preparePageContextForPublicUsageServer.d.ts +2 -2
- package/dist/esm/node/runtime/renderPage/{renderPageAlreadyRouted.d.ts → renderPageAfterRoute.d.ts} +30 -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 +24 -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 +10 -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 +13 -9
- package/dist/esm/types/PageConfig.d.ts +11 -9
- package/dist/esm/types/PageContext.d.ts +6 -0
- 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
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.virtualFileIdGlobalEntryClientCR = exports.virtualFileIdGlobalEntryClientSR = exports.virtualFileIdGlobalEntryServer = void 0;
|
|
4
|
+
exports.parseVirtualFileId = parseVirtualFileId;
|
|
5
|
+
exports.generateVirtualFileId = generateVirtualFileId;
|
|
6
|
+
const extractAssetsQuery_js_1 = require("./extractAssetsQuery.js");
|
|
7
|
+
const utils_js_1 = require("./utils.js");
|
|
8
|
+
(0, utils_js_1.assertIsNotBrowser)();
|
|
9
|
+
// Global entries
|
|
10
|
+
const virtualFileIdGlobalEntryServer =
|
|
11
|
+
//
|
|
12
|
+
'virtual:vike:global-entry:server';
|
|
13
|
+
exports.virtualFileIdGlobalEntryServer = virtualFileIdGlobalEntryServer;
|
|
14
|
+
const virtualFileIdGlobalEntryClientSR =
|
|
15
|
+
//
|
|
16
|
+
'virtual:vike:global-entry:client:server-routing';
|
|
17
|
+
exports.virtualFileIdGlobalEntryClientSR = virtualFileIdGlobalEntryClientSR;
|
|
18
|
+
const virtualFileIdGlobalEntryClientCR =
|
|
19
|
+
//
|
|
20
|
+
'virtual:vike:global-entry:client:client-routing';
|
|
21
|
+
exports.virtualFileIdGlobalEntryClientCR = virtualFileIdGlobalEntryClientCR;
|
|
22
|
+
// Page entries
|
|
23
|
+
const virtualFileIdPageEntryClient =
|
|
24
|
+
//
|
|
25
|
+
'virtual:vike:page-entry:client:'; // ${pageId}
|
|
26
|
+
const virtualFileIdPageEntryServer =
|
|
27
|
+
//
|
|
28
|
+
'virtual:vike:page-entry:server:'; // ${pageId}
|
|
29
|
+
// Virtual ID prefixes
|
|
30
|
+
const virtualFileIdPageEntryPrefix =
|
|
31
|
+
//
|
|
32
|
+
'virtual:vike:page-entry:';
|
|
33
|
+
const virtualFileIdGlobalEntryPrefix =
|
|
34
|
+
//
|
|
35
|
+
'virtual:vike:global-entry:';
|
|
36
|
+
const virtualFileIdGlobalEntries = [
|
|
37
|
+
virtualFileIdGlobalEntryServer,
|
|
38
|
+
virtualFileIdGlobalEntryClientCR,
|
|
39
|
+
virtualFileIdGlobalEntryClientSR,
|
|
40
|
+
];
|
|
41
|
+
(0, utils_js_1.assert)(virtualFileIdGlobalEntries.every((v) =>
|
|
42
|
+
//
|
|
43
|
+
v.startsWith(virtualFileIdGlobalEntryPrefix)));
|
|
44
|
+
(0, utils_js_1.assert)([virtualFileIdPageEntryClient, virtualFileIdPageEntryServer].every((v) =>
|
|
45
|
+
//
|
|
46
|
+
v.startsWith(virtualFileIdPageEntryPrefix)));
|
|
47
|
+
function parseVirtualFileId(id) {
|
|
48
|
+
id = (0, utils_js_1.removeVirtualFileIdPrefix)(id);
|
|
49
|
+
if (!id.startsWith(virtualFileIdGlobalEntryPrefix) && !id.startsWith(virtualFileIdPageEntryPrefix))
|
|
50
|
+
return false;
|
|
51
|
+
// Global entry
|
|
52
|
+
if (id.includes(virtualFileIdGlobalEntryPrefix)) {
|
|
53
|
+
(0, utils_js_1.assert)(virtualFileIdGlobalEntries.includes(id));
|
|
54
|
+
const isForClientSide = id !== virtualFileIdGlobalEntryServer;
|
|
55
|
+
const isClientRouting = id === virtualFileIdGlobalEntryClientCR;
|
|
56
|
+
return {
|
|
57
|
+
type: 'global-entry',
|
|
58
|
+
isForClientSide,
|
|
59
|
+
isClientRouting,
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
// Page entry
|
|
63
|
+
if (id.includes(virtualFileIdPageEntryPrefix)) {
|
|
64
|
+
(0, utils_js_1.assert)(id.startsWith(virtualFileIdPageEntryPrefix));
|
|
65
|
+
const idOriginal = id;
|
|
66
|
+
id = (0, extractAssetsQuery_js_1.extractAssetsRemoveQuery)(id);
|
|
67
|
+
const isExtractAssets = idOriginal !== id;
|
|
68
|
+
if (id.startsWith(virtualFileIdPageEntryClient)) {
|
|
69
|
+
(0, utils_js_1.assert)(isExtractAssets === false);
|
|
70
|
+
return {
|
|
71
|
+
type: 'page-entry',
|
|
72
|
+
pageId: id.slice(virtualFileIdPageEntryClient.length),
|
|
73
|
+
isForClientSide: true,
|
|
74
|
+
isExtractAssets,
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
if (id.startsWith(virtualFileIdPageEntryServer)) {
|
|
78
|
+
return {
|
|
79
|
+
type: 'page-entry',
|
|
80
|
+
pageId: id.slice(virtualFileIdPageEntryServer.length),
|
|
81
|
+
isForClientSide: false,
|
|
82
|
+
isExtractAssets,
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
(0, utils_js_1.assert)(false);
|
|
86
|
+
}
|
|
87
|
+
return false;
|
|
88
|
+
}
|
|
89
|
+
function generateVirtualFileId(args) {
|
|
90
|
+
if (args.type === 'global-entry') {
|
|
91
|
+
const { isForClientSide, isClientRouting } = args;
|
|
92
|
+
(0, utils_js_1.assert)(typeof isClientRouting === 'boolean');
|
|
93
|
+
if (!isForClientSide) {
|
|
94
|
+
return virtualFileIdGlobalEntryServer;
|
|
95
|
+
}
|
|
96
|
+
else if (isClientRouting) {
|
|
97
|
+
return virtualFileIdGlobalEntryClientCR;
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
return virtualFileIdGlobalEntryClientSR;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
if (args.type === 'page-entry') {
|
|
104
|
+
const { pageId, isForClientSide } = args;
|
|
105
|
+
(0, utils_js_1.assert)(typeof pageId === 'string');
|
|
106
|
+
const id = `${isForClientSide ? virtualFileIdPageEntryClient : virtualFileIdPageEntryServer}${pageId}`;
|
|
107
|
+
return id;
|
|
108
|
+
}
|
|
109
|
+
(0, utils_js_1.assert)(false);
|
|
110
|
+
}
|
|
@@ -24,14 +24,14 @@ const pluginBaseUrls_js_1 = require("./plugins/pluginBaseUrls.js");
|
|
|
24
24
|
const pluginEnvVars_js_1 = require("./plugins/pluginEnvVars.js");
|
|
25
25
|
const picocolors_1 = __importDefault(require("@brillout/picocolors"));
|
|
26
26
|
const pluginFileEnv_js_1 = require("./plugins/pluginFileEnv.js");
|
|
27
|
-
const
|
|
28
|
-
const resolveClientEntriesDev_js_1 = require("./shared/resolveClientEntriesDev.js");
|
|
27
|
+
const getClientEntrySrcDev_js_1 = require("./shared/getClientEntrySrcDev.js");
|
|
29
28
|
const pluginWorkaroundCssModuleHmr_js_1 = require("./plugins/pluginWorkaroundCssModuleHmr.js");
|
|
30
29
|
const pluginWorkaroundVite6HmrRegression_js_1 = require("./plugins/pluginWorkaroundVite6HmrRegression.js");
|
|
31
30
|
const pluginReplaceConstants_js_1 = require("./plugins/pluginReplaceConstants.js");
|
|
32
31
|
const pluginNonRunnableDev_js_1 = require("./plugins/pluginNonRunnableDev.js");
|
|
32
|
+
const retrievePageAssetsDev_js_1 = require("../runtime/renderPage/getPageAssets/retrievePageAssetsDev.js");
|
|
33
33
|
// We don't call this in ./onLoad.ts to avoid a cyclic dependency with utils.ts
|
|
34
|
-
(0,
|
|
34
|
+
(0, retrievePageAssetsDev_js_1.setGetClientEntrySrcDev)(getClientEntrySrcDev_js_1.getClientEntrySrcDev);
|
|
35
35
|
// Return `PluginInterop` instead of `Plugin` to avoid type mismatch upon different Vite versions
|
|
36
36
|
function plugin(vikeVitePluginOptions = {}) {
|
|
37
37
|
const plugins = [
|
|
@@ -11,9 +11,11 @@ function onLoad() {
|
|
|
11
11
|
(0, assertIsNotBrowser_js_1.assertIsNotBrowser)();
|
|
12
12
|
(0, assertNodeVersion_js_1.assertNodeVersion)();
|
|
13
13
|
// package.json#peerDependencies isn't enough as users often ignore it
|
|
14
|
-
// This assertion isn't reliable: the user may still use a Vite version older than
|
|
15
|
-
// TO-DO/eventually: let's also use this.meta.viteVersion
|
|
16
|
-
|
|
14
|
+
// This assertion isn't reliable: the user may still use a Vite version older than 6.0.0 — see https://github.com/vitejs/vite/pull/19355
|
|
15
|
+
// TO-DO/eventually: let's also use this.meta.viteVersion
|
|
16
|
+
// - https://github.com/vitejs/vite/pull/20088
|
|
17
|
+
// - https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md#700-2025-06-24
|
|
18
|
+
(0, assertVersion_js_1.assertVersion)('Vite', vite_1.version, '6.0.0');
|
|
17
19
|
// Ensure we don't bloat the server runtime with heavy dependencies such Vite and esbuild
|
|
18
20
|
(0, assertSetup_js_1.assertIsNotProductionRuntime)();
|
|
19
21
|
}
|
|
@@ -13,19 +13,20 @@ const node_fs_1 = __importDefault(require("node:fs"));
|
|
|
13
13
|
const node_path_1 = __importDefault(require("node:path"));
|
|
14
14
|
const node_fs_2 = require("node:fs");
|
|
15
15
|
const utils_js_1 = require("../../utils.js");
|
|
16
|
-
const
|
|
16
|
+
const virtualFileId_js_1 = require("../../../shared/virtualFileId.js");
|
|
17
17
|
const getAssetsDir_js_1 = require("../../shared/getAssetsDir.js");
|
|
18
18
|
const picocolors_1 = __importDefault(require("@brillout/picocolors"));
|
|
19
19
|
const resolveVikeConfigInternal_js_1 = require("../../shared/resolveVikeConfigInternal.js");
|
|
20
20
|
const getOutDirs_js_1 = require("../../shared/getOutDirs.js");
|
|
21
|
-
const
|
|
22
|
-
const
|
|
21
|
+
const isViteServerSide_js_1 = require("../../shared/isViteServerSide.js");
|
|
22
|
+
const pluginProdBuildEntry_js_1 = require("./pluginProdBuildEntry.js");
|
|
23
23
|
const getManifestFilePathRelative_js_1 = require("../../shared/getManifestFilePathRelative.js");
|
|
24
|
-
(0, utils_js_1.
|
|
25
|
-
|
|
24
|
+
const globalObject = (0, utils_js_1.getGlobalObject)('build/handleAssetsManifest.ts', {
|
|
25
|
+
assetsJsonFilePath: undefined,
|
|
26
|
+
});
|
|
26
27
|
// true => use workaround config.build.ssrEmitAssets
|
|
27
28
|
// false => use workaround extractAssets plugin
|
|
28
|
-
function handleAssetsManifest_isFixEnabled(
|
|
29
|
+
function handleAssetsManifest_isFixEnabled() {
|
|
29
30
|
// Allow user to toggle between the two workarounds? E.g. based on https://vike.dev/includeAssetsImportedByServer.
|
|
30
31
|
return (0, resolveVikeConfigInternal_js_1.isV1Design)();
|
|
31
32
|
}
|
|
@@ -38,7 +39,7 @@ async function fixServerAssets(config) {
|
|
|
38
39
|
return { clientManifestMod, serverManifestMod };
|
|
39
40
|
}
|
|
40
41
|
async function copyAssets(filesToMove, filesToRemove, config) {
|
|
41
|
-
const { outDirClient, outDirServer } = (0, getOutDirs_js_1.getOutDirs)(config);
|
|
42
|
+
const { outDirClient, outDirServer } = (0, getOutDirs_js_1.getOutDirs)(config, undefined);
|
|
42
43
|
const assetsDir = (0, getAssetsDir_js_1.getAssetsDir)(config);
|
|
43
44
|
const assetsDirServer = node_path_1.default.posix.join(outDirServer, assetsDir);
|
|
44
45
|
if (!filesToMove.length && !filesToRemove.length && !(0, node_fs_2.existsSync)(assetsDirServer))
|
|
@@ -170,13 +171,13 @@ function addServerAssets(clientManifest, serverManifest) {
|
|
|
170
171
|
}
|
|
171
172
|
function getPageId(key) {
|
|
172
173
|
// Normalize from:
|
|
173
|
-
// ../../virtual:vike:
|
|
174
|
+
// ../../virtual:vike:page-entry:client:/pages/index
|
|
174
175
|
// to:
|
|
175
|
-
// virtual:vike:
|
|
176
|
+
// virtual:vike:page-entry:client:/pages/index
|
|
176
177
|
// (This seems to be needed only for vitest tests that use Vite's build() API with an inline config.)
|
|
177
178
|
key = key.substring(key.indexOf('virtual:vike'));
|
|
178
|
-
const result = (0,
|
|
179
|
-
return result && result.pageId;
|
|
179
|
+
const result = (0, virtualFileId_js_1.parseVirtualFileId)(key);
|
|
180
|
+
return result && result.type === 'page-entry' ? result.pageId : null;
|
|
180
181
|
}
|
|
181
182
|
function collectResources(entryRoot, manifest) {
|
|
182
183
|
const css = [];
|
|
@@ -216,15 +217,15 @@ function getHash(src) {
|
|
|
216
217
|
}
|
|
217
218
|
// https://github.com/vikejs/vike/issues/1993
|
|
218
219
|
function handleAssetsManifest_assertUsageCssCodeSplit(config) {
|
|
219
|
-
if (!handleAssetsManifest_isFixEnabled(
|
|
220
|
+
if (!handleAssetsManifest_isFixEnabled())
|
|
220
221
|
return;
|
|
221
222
|
(0, utils_js_1.assertWarning)(config.build.cssCodeSplit, `${picocolors_1.default.cyan('build.cssCodeSplit')} shouldn't be set to ${picocolors_1.default.cyan('false')} (https://github.com/vikejs/vike/issues/1993)`, { onlyOnce: true });
|
|
222
223
|
}
|
|
223
224
|
const targets = [];
|
|
224
|
-
function handleAssetsManifest_assertUsageCssTarget(config) {
|
|
225
|
-
if (!handleAssetsManifest_isFixEnabled(
|
|
225
|
+
function handleAssetsManifest_assertUsageCssTarget(config, env) {
|
|
226
|
+
if (!handleAssetsManifest_isFixEnabled())
|
|
226
227
|
return;
|
|
227
|
-
const isServerSide = (0,
|
|
228
|
+
const isServerSide = (0, isViteServerSide_js_1.isViteServerSide)(config, env);
|
|
228
229
|
(0, utils_js_1.assert)(typeof isServerSide === 'boolean');
|
|
229
230
|
(0, utils_js_1.assert)(config.build.target !== undefined);
|
|
230
231
|
targets.push({ global: config.build.target, css: config.build.cssTarget, isServerSide });
|
|
@@ -283,43 +284,41 @@ async function writeManifestFile(manifest, manifestFilePath) {
|
|
|
283
284
|
const manifestFileContent = JSON.stringify(manifest, null, 2);
|
|
284
285
|
await promises_1.default.writeFile(manifestFilePath, manifestFileContent, 'utf-8');
|
|
285
286
|
}
|
|
286
|
-
async function handleAssetsManifest_getBuildConfig(
|
|
287
|
-
const
|
|
288
|
-
const isFixEnabled = handleAssetsManifest_isFixEnabled(config);
|
|
287
|
+
async function handleAssetsManifest_getBuildConfig() {
|
|
288
|
+
const isFixEnabled = handleAssetsManifest_isFixEnabled();
|
|
289
289
|
return {
|
|
290
290
|
// https://github.com/vikejs/vike/issues/1339
|
|
291
291
|
ssrEmitAssets: isFixEnabled ? true : undefined,
|
|
292
292
|
// Required if `ssrEmitAssets: true`, see https://github.com/vitejs/vite/pull/11430#issuecomment-1454800934
|
|
293
293
|
cssMinify: isFixEnabled ? 'esbuild' : undefined,
|
|
294
294
|
manifest: true,
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
: !(0, isViteServerBuild_js_1.isViteServerBuild)(config),
|
|
295
|
+
/* Already set by vike:build:pluginBuildApp
|
|
296
|
+
copyPublicDir: !isViteServerSide_viteEnvOptional(config),
|
|
297
|
+
*/
|
|
299
298
|
};
|
|
300
299
|
}
|
|
301
300
|
async function handleAssetsManifest(config, viteEnv, options, bundle) {
|
|
302
|
-
const isSsrEnv = (0,
|
|
301
|
+
const isSsrEnv = (0, isViteServerSide_js_1.isViteServerSide_onlySsrEnv)(config, viteEnv);
|
|
303
302
|
if (isSsrEnv) {
|
|
304
|
-
(0, utils_js_1.assert)(!assetsJsonFilePath);
|
|
303
|
+
(0, utils_js_1.assert)(!globalObject.assetsJsonFilePath);
|
|
305
304
|
const outDirs = (0, getOutDirs_js_1.getOutDirs)(config, viteEnv);
|
|
306
|
-
assetsJsonFilePath = node_path_1.default.posix.join(outDirs.outDirRoot, 'assets.json');
|
|
307
|
-
await writeAssetsManifestFile(assetsJsonFilePath, config);
|
|
305
|
+
globalObject.assetsJsonFilePath = node_path_1.default.posix.join(outDirs.outDirRoot, 'assets.json');
|
|
306
|
+
await writeAssetsManifestFile(globalObject.assetsJsonFilePath, config);
|
|
308
307
|
}
|
|
309
|
-
if ((0,
|
|
308
|
+
if ((0, isViteServerSide_js_1.isViteServerSide)(config, viteEnv)) {
|
|
310
309
|
const outDir = options.dir;
|
|
311
310
|
(0, utils_js_1.assert)(outDir);
|
|
312
311
|
// Replace __VITE_ASSETS_MANIFEST__ in server builds
|
|
313
312
|
// - Always replace it in dist/server/
|
|
314
313
|
// - Also in some other server builds such as dist/vercel/ from vike-vercel
|
|
315
314
|
// - Don't replace it in dist/rsc/ from vike-react-rsc since __VITE_ASSETS_MANIFEST__ doesn't exist there
|
|
316
|
-
const noop = await (0,
|
|
315
|
+
const noop = await (0, pluginProdBuildEntry_js_1.set_macro_ASSETS_MANIFEST)(globalObject.assetsJsonFilePath, bundle, outDir);
|
|
317
316
|
if (isSsrEnv)
|
|
318
317
|
(0, utils_js_1.assert)(!noop); // dist/server should always contain __VITE_ASSETS_MANIFEST__
|
|
319
318
|
}
|
|
320
319
|
}
|
|
321
320
|
async function writeAssetsManifestFile(assetsJsonFilePath, config) {
|
|
322
|
-
const isFixEnabled = handleAssetsManifest_isFixEnabled(
|
|
321
|
+
const isFixEnabled = handleAssetsManifest_isFixEnabled();
|
|
323
322
|
const clientManifestFilePath = getManifestFilePath(config, true);
|
|
324
323
|
const serverManifestFilePath = getManifestFilePath(config, false);
|
|
325
324
|
if (!isFixEnabled) {
|
|
@@ -333,7 +332,7 @@ async function writeAssetsManifestFile(assetsJsonFilePath, config) {
|
|
|
333
332
|
await promises_1.default.rm(serverManifestFilePath);
|
|
334
333
|
}
|
|
335
334
|
function getManifestFilePath(config, client) {
|
|
336
|
-
const outDirs = (0, getOutDirs_js_1.getOutDirs)(config);
|
|
335
|
+
const outDirs = (0, getOutDirs_js_1.getOutDirs)(config, undefined);
|
|
337
336
|
const outDir = client ? outDirs.outDirClient : outDirs.outDirServer;
|
|
338
337
|
const env = client ? config.environments.client : config.environments.ssr;
|
|
339
338
|
(0, utils_js_1.assert)(env);
|
|
@@ -1,12 +1,27 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
6
|
exports.pluginBuildApp = pluginBuildApp;
|
|
4
7
|
const runPrerenderEntry_js_1 = require("../../../prerender/runPrerenderEntry.js");
|
|
5
8
|
const getOutDirs_js_1 = require("../../shared/getOutDirs.js");
|
|
6
9
|
const utils_js_1 = require("../../utils.js");
|
|
7
|
-
const
|
|
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");
|
|
8
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 isViteServerSide_js_1 = require("../../shared/isViteServerSide.js");
|
|
18
|
+
const runPrerenderEntry_js_2 = require("../../../prerender/runPrerenderEntry.js");
|
|
19
|
+
const getManifestFilePathRelative_js_1 = require("../../shared/getManifestFilePathRelative.js");
|
|
20
|
+
const globalObject = (0, utils_js_1.getGlobalObject)('build/pluginBuildApp.ts', {
|
|
21
|
+
forceExit: false,
|
|
22
|
+
});
|
|
9
23
|
function pluginBuildApp() {
|
|
24
|
+
let config;
|
|
10
25
|
return [
|
|
11
26
|
{
|
|
12
27
|
name: 'vike:build:pluginBuildApp:pre',
|
|
@@ -14,10 +29,7 @@ function pluginBuildApp() {
|
|
|
14
29
|
enforce: 'pre',
|
|
15
30
|
config: {
|
|
16
31
|
order: 'pre',
|
|
17
|
-
|
|
18
|
-
const vikeConfig = await (0, resolveVikeConfigInternal_js_1.getVikeConfigInternal)();
|
|
19
|
-
if (!vikeConfig.config.vite6BuilderApp)
|
|
20
|
-
return;
|
|
32
|
+
handler(_config) {
|
|
21
33
|
return {
|
|
22
34
|
builder: {
|
|
23
35
|
// Can be overridden by another plugin e.g vike-vercel https://github.com/vikejs/vike/pull/2184#issuecomment-2659425195
|
|
@@ -26,7 +38,7 @@ function pluginBuildApp() {
|
|
|
26
38
|
(0, utils_js_1.assert)(builder.environments.ssr);
|
|
27
39
|
await builder.build(builder.environments.client);
|
|
28
40
|
await builder.build(builder.environments.ssr);
|
|
29
|
-
if (
|
|
41
|
+
if (isPrerenderForceExit()) {
|
|
30
42
|
(0, runPrerenderEntry_js_1.runPrerender_forceExit)();
|
|
31
43
|
(0, utils_js_1.assert)(false);
|
|
32
44
|
}
|
|
@@ -39,10 +51,7 @@ function pluginBuildApp() {
|
|
|
39
51
|
{
|
|
40
52
|
name: 'vike:build:pluginBuildApp',
|
|
41
53
|
apply: 'build',
|
|
42
|
-
|
|
43
|
-
const vikeConfig = await (0, resolveVikeConfigInternal_js_1.getVikeConfigInternal)();
|
|
44
|
-
if (!vikeConfig.config.vite6BuilderApp)
|
|
45
|
-
return;
|
|
54
|
+
config(config) {
|
|
46
55
|
return {
|
|
47
56
|
environments: {
|
|
48
57
|
ssr: {
|
|
@@ -55,6 +64,7 @@ function pluginBuildApp() {
|
|
|
55
64
|
client: {
|
|
56
65
|
consumer: 'client',
|
|
57
66
|
build: {
|
|
67
|
+
outDir: (0, getOutDirs_js_1.resolveOutDir)(config, false),
|
|
58
68
|
copyPublicDir: true,
|
|
59
69
|
ssr: false,
|
|
60
70
|
},
|
|
@@ -63,5 +73,107 @@ function pluginBuildApp() {
|
|
|
63
73
|
};
|
|
64
74
|
},
|
|
65
75
|
},
|
|
76
|
+
{
|
|
77
|
+
name: 'vike:build:pluginBuildApp:autoFullBuild:pre',
|
|
78
|
+
apply: 'build',
|
|
79
|
+
enforce: 'pre',
|
|
80
|
+
async configResolved(config_) {
|
|
81
|
+
config = config_;
|
|
82
|
+
await abortViteBuildSsr();
|
|
83
|
+
},
|
|
84
|
+
// TO-DO/eventually: stop using this writeBundle() hack and, instead, use the buildApp() implementation above.
|
|
85
|
+
// - Could it cause issues if a tool uses the writeBundle() hack together with getVikeConfig() ?
|
|
86
|
+
writeBundle: {
|
|
87
|
+
/* We can't use this because it breaks Vite's logging. TO-DO/eventually: try again with latest Vite version.
|
|
88
|
+
sequential: true,
|
|
89
|
+
order: 'pre',
|
|
90
|
+
*/
|
|
91
|
+
async handler(options, bundle) {
|
|
92
|
+
try {
|
|
93
|
+
await (0, handleAssetsManifest_js_1.handleAssetsManifest)(config, this.environment, options, bundle);
|
|
94
|
+
await triggerPrerendering(config, this.environment, bundle);
|
|
95
|
+
}
|
|
96
|
+
catch (err) {
|
|
97
|
+
// We use try-catch also because:
|
|
98
|
+
// - 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.)
|
|
99
|
+
// - Avoid Rollup prefixing the error with [vike:build:pluginBuildApp], see for example https://github.com/vikejs/vike/issues/472#issuecomment-1276274203
|
|
100
|
+
console.error(err);
|
|
101
|
+
(0, logErrorHint_js_1.logErrorHint)(err);
|
|
102
|
+
process.exit(1);
|
|
103
|
+
}
|
|
104
|
+
},
|
|
105
|
+
},
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
name: 'vike:build:pluginBuildApp:autoFullBuild:post',
|
|
109
|
+
apply: 'build',
|
|
110
|
+
enforce: 'post',
|
|
111
|
+
closeBundle: {
|
|
112
|
+
sequential: true,
|
|
113
|
+
order: 'post',
|
|
114
|
+
handler() {
|
|
115
|
+
(0, utils_js_1.onSetupBuild)();
|
|
116
|
+
(0, handleAssetsManifest_js_1.handleAssetsManifest_assertUsageCssTarget)(config, this.environment);
|
|
117
|
+
/* Let vike:build:pluginBuildApp force exit
|
|
118
|
+
runPrerender_forceExit()
|
|
119
|
+
*/
|
|
120
|
+
},
|
|
121
|
+
},
|
|
122
|
+
},
|
|
66
123
|
];
|
|
67
124
|
}
|
|
125
|
+
async function triggerPrerendering(config, viteEnv, bundle) {
|
|
126
|
+
const vikeConfig = await (0, resolveVikeConfigInternal_js_1.getVikeConfigInternal)();
|
|
127
|
+
if (!(0, isViteServerSide_js_1.isViteServerSide_onlySsrEnv)(config, viteEnv))
|
|
128
|
+
return;
|
|
129
|
+
if (isDisabled(vikeConfig))
|
|
130
|
+
return;
|
|
131
|
+
// Workaround for @vitejs/plugin-legacy
|
|
132
|
+
// - The legacy plugin triggers its own Rollup build for the client-side.
|
|
133
|
+
// - The legacy plugin doesn't generate a manifest => we can use that to detect the legacy plugin build.
|
|
134
|
+
// - Issue & reproduction: https://github.com/vikejs/vike/issues/1154#issuecomment-1965954636
|
|
135
|
+
if (!bundle[(0, getManifestFilePathRelative_js_1.getManifestFilePathRelative)(config.build.manifest)])
|
|
136
|
+
return;
|
|
137
|
+
if (!(0, context_js_1.isPrerenderAutoRunEnabled)(vikeConfig))
|
|
138
|
+
return;
|
|
139
|
+
const configInline = getFullBuildInlineConfig(config);
|
|
140
|
+
const res = await (0, runPrerenderEntry_js_2.runPrerenderFromAutoRun)(configInline);
|
|
141
|
+
globalObject.forceExit = res.forceExit;
|
|
142
|
+
(0, utils_js_1.assert)((0, context_js_1.wasPrerenderRun)());
|
|
143
|
+
}
|
|
144
|
+
async function abortViteBuildSsr() {
|
|
145
|
+
const vikeConfig = await (0, resolveVikeConfigInternal_js_1.getVikeConfigInternal)();
|
|
146
|
+
if (vikeConfig.config.disableAutoFullBuild !== true && (0, isViteCliCall_js_1.isViteCliCall)() && (0, isViteCliCall_js_1.getViteConfigFromCli)()?.build.ssr) {
|
|
147
|
+
(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 });
|
|
148
|
+
process.exit(0);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
function isDisabled(vikeConfig) {
|
|
152
|
+
const { disableAutoFullBuild } = vikeConfig.config;
|
|
153
|
+
if (disableAutoFullBuild === undefined || disableAutoFullBuild === 'prerender') {
|
|
154
|
+
const isUserUsingViteApi = !(0, isViteCliCall_js_1.isViteCliCall)() && !(0, context_js_2.isVikeCliOrApi)();
|
|
155
|
+
return isUserUsingViteApi;
|
|
156
|
+
}
|
|
157
|
+
else {
|
|
158
|
+
return disableAutoFullBuild;
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
function isPrerenderForceExit() {
|
|
162
|
+
return globalObject.forceExit;
|
|
163
|
+
}
|
|
164
|
+
function getFullBuildInlineConfig(config) {
|
|
165
|
+
const configFromCli = !(0, isViteCliCall_js_1.isViteCliCall)() ? null : (0, isViteCliCall_js_1.getViteConfigFromCli)();
|
|
166
|
+
if (config._viteConfigFromUserEnhanced) {
|
|
167
|
+
return config._viteConfigFromUserEnhanced;
|
|
168
|
+
}
|
|
169
|
+
else {
|
|
170
|
+
return {
|
|
171
|
+
...configFromCli,
|
|
172
|
+
configFile: configFromCli?.configFile || config.configFile,
|
|
173
|
+
root: config.root,
|
|
174
|
+
build: {
|
|
175
|
+
...configFromCli?.build,
|
|
176
|
+
},
|
|
177
|
+
};
|
|
178
|
+
}
|
|
179
|
+
}
|
|
@@ -6,15 +6,14 @@ exports.analyzeClientEntries = analyzeClientEntries;
|
|
|
6
6
|
const utils_js_1 = require("../../utils.js");
|
|
7
7
|
const resolveVikeConfigInternal_js_1 = require("../../shared/resolveVikeConfigInternal.js");
|
|
8
8
|
const findPageFiles_js_1 = require("../../shared/findPageFiles.js");
|
|
9
|
-
const
|
|
9
|
+
const virtualFileId_js_1 = require("../../../shared/virtualFileId.js");
|
|
10
10
|
const extractAssetsQuery_js_1 = require("../../../shared/extractAssetsQuery.js");
|
|
11
11
|
const prependEntriesDir_js_1 = require("../../../shared/prependEntriesDir.js");
|
|
12
12
|
const getFilePath_js_1 = require("../../shared/getFilePath.js");
|
|
13
13
|
const getConfigValueBuildTime_js_1 = require("../../../../shared/page-configs/getConfigValueBuildTime.js");
|
|
14
|
-
const
|
|
15
|
-
const getOutDirs_js_1 = require("../../shared/getOutDirs.js");
|
|
14
|
+
const isViteServerSide_js_1 = require("../../shared/isViteServerSide.js");
|
|
16
15
|
const handleAssetsManifest_js_1 = require("./handleAssetsManifest.js");
|
|
17
|
-
const
|
|
16
|
+
const retrievePageAssetsProd_js_1 = require("../../../runtime/renderPage/getPageAssets/retrievePageAssetsProd.js");
|
|
18
17
|
function pluginBuildConfig() {
|
|
19
18
|
let config;
|
|
20
19
|
return [
|
|
@@ -37,14 +36,10 @@ function pluginBuildConfig() {
|
|
|
37
36
|
},
|
|
38
37
|
config: {
|
|
39
38
|
order: 'post',
|
|
40
|
-
async handler(
|
|
39
|
+
async handler() {
|
|
41
40
|
(0, utils_js_1.onSetupBuild)();
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
outDir: (0, getOutDirs_js_1.resolveOutDir)(config),
|
|
45
|
-
...(await (0, handleAssetsManifest_js_1.handleAssetsManifest_getBuildConfig)(config)),
|
|
46
|
-
},
|
|
47
|
-
};
|
|
41
|
+
const build = await (0, handleAssetsManifest_js_1.handleAssetsManifest_getBuildConfig)();
|
|
42
|
+
return { build };
|
|
48
43
|
},
|
|
49
44
|
},
|
|
50
45
|
buildStart() {
|
|
@@ -57,9 +52,9 @@ async function getEntries(config) {
|
|
|
57
52
|
const vikeConfig = await (0, resolveVikeConfigInternal_js_1.getVikeConfigInternal)();
|
|
58
53
|
const { _pageConfigs: pageConfigs } = vikeConfig;
|
|
59
54
|
// TO-DO/next-major-release: remove
|
|
60
|
-
const pageFileEntries = await getPageFileEntries(config, (0,
|
|
55
|
+
const pageFileEntries = await getPageFileEntries(config, (0, retrievePageAssetsProd_js_1.resolveIncludeAssetsImportedByServer)(vikeConfig.config));
|
|
61
56
|
(0, utils_js_1.assertUsage)(Object.keys(pageFileEntries).length !== 0 || pageConfigs.length !== 0, 'At least one page should be defined, see https://vike.dev/add');
|
|
62
|
-
if ((0,
|
|
57
|
+
if ((0, isViteServerSide_js_1.isViteServerSide_viteEnvOptional)(config)) {
|
|
63
58
|
const pageEntries = getPageEntries(pageConfigs);
|
|
64
59
|
const entries = {
|
|
65
60
|
...pageFileEntries,
|
|
@@ -78,8 +73,8 @@ async function getEntries(config) {
|
|
|
78
73
|
...clientEntries,
|
|
79
74
|
...pageFileEntries,
|
|
80
75
|
};
|
|
81
|
-
const clientRoutingEntry = (0, utils_js_1.
|
|
82
|
-
const serverRoutingEntry = (0, utils_js_1.
|
|
76
|
+
const clientRoutingEntry = (0, utils_js_1.requireResolveDistFile)('dist/esm/client/runtime-client-routing/entry.js');
|
|
77
|
+
const serverRoutingEntry = (0, utils_js_1.requireResolveDistFile)('dist/esm/client/runtime-server-routing/entry.js');
|
|
83
78
|
if (hasClientRouting) {
|
|
84
79
|
entries['entries/entry-client-routing'] = clientRoutingEntry;
|
|
85
80
|
}
|
|
@@ -132,7 +127,7 @@ function analyzeClientEntries(pageConfigs, config) {
|
|
|
132
127
|
// Ensure Rollup creates entries for each page file, see https://github.com/vikejs/vike/issues/350
|
|
133
128
|
// (Otherwise the page files may be missing in the client manifest.json)
|
|
134
129
|
async function getPageFileEntries(config, includeAssetsImportedByServer) {
|
|
135
|
-
const isForClientSide = !(0,
|
|
130
|
+
const isForClientSide = !(0, isViteServerSide_js_1.isViteServerSide_viteEnvOptional)(config);
|
|
136
131
|
const fileTypes = isForClientSide ? ['.page', '.page.client'] : ['.page', '.page.server'];
|
|
137
132
|
if (isForClientSide && includeAssetsImportedByServer) {
|
|
138
133
|
fileTypes.push('.page.server');
|
|
@@ -176,7 +171,7 @@ function getEntryFromClientEntry(clientEntry, config, addExtractAssetsQuery) {
|
|
|
176
171
|
}
|
|
177
172
|
function getEntryFromPageConfig(pageConfig, isForClientSide) {
|
|
178
173
|
let { pageId } = pageConfig;
|
|
179
|
-
const entryTarget = (0,
|
|
174
|
+
const entryTarget = (0, virtualFileId_js_1.generateVirtualFileId)({ type: 'page-entry', pageId, isForClientSide });
|
|
180
175
|
let entryName = pageId;
|
|
181
176
|
// Avoid:
|
|
182
177
|
// ```
|
|
@@ -1,16 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
/*
|
|
3
|
-
* We create a file `dist/server/package.json` to support ESM users.
|
|
4
|
-
* Otherwise, following error is thrown:
|
|
5
|
-
* Must use import to load ES Module: dist/server/pageFiles.js
|
|
6
|
-
* require() of ES modules is not supported.
|
|
7
|
-
* require() of dist/server/pageFiles.js from node_modules/vike/dist/esm/node/runtime/page-files/setup.js is an ES module file as it is a .js file whose nearest parent package.json contains "type": "module" which defines all .js files in that package scope as ES modules.
|
|
8
|
-
* Reproduction: https://github.com/brillout/vite-plugin-ssr-server-import-syntax
|
|
9
|
-
*/
|
|
10
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
3
|
exports.pluginDistPackageJsonFile = pluginDistPackageJsonFile;
|
|
12
4
|
const rollupIsEsm_js_1 = require("../../shared/rollupIsEsm.js");
|
|
13
|
-
const
|
|
5
|
+
const isViteServerSide_js_1 = require("../../shared/isViteServerSide.js");
|
|
14
6
|
function pluginDistPackageJsonFile() {
|
|
15
7
|
let config;
|
|
16
8
|
return {
|
|
@@ -20,7 +12,7 @@ function pluginDistPackageJsonFile() {
|
|
|
20
12
|
config = config_;
|
|
21
13
|
},
|
|
22
14
|
generateBundle(options, bundle) {
|
|
23
|
-
if (!(0,
|
|
15
|
+
if (!(0, isViteServerSide_js_1.isViteServerSide)(config, this.environment))
|
|
24
16
|
return;
|
|
25
17
|
const isEsm = (0, rollupIsEsm_js_1.rollupIsEsm)(options);
|
|
26
18
|
const fileName = 'package.json';
|
|
@@ -1,12 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
exports.pluginModuleBanner = pluginModuleBanner;
|
|
7
|
-
const magic_string_1 = __importDefault(require("magic-string"));
|
|
8
4
|
const utils_js_1 = require("../../utils.js");
|
|
9
|
-
const
|
|
5
|
+
const getMagicString_js_1 = require("../../shared/getMagicString.js");
|
|
6
|
+
const isViteServerSide_js_1 = require("../../shared/isViteServerSide.js");
|
|
10
7
|
// Rollup's banner feature doesn't work with Vite: https://github.com/vitejs/vite/issues/8412
|
|
11
8
|
// But, anyways, we want to prepend the banner at the beginning of each module, not at the beginning of each file (I believe that's what Rollup's banner feature does).
|
|
12
9
|
function pluginModuleBanner() {
|
|
@@ -21,7 +18,7 @@ function pluginModuleBanner() {
|
|
|
21
18
|
transform: {
|
|
22
19
|
order: 'post',
|
|
23
20
|
handler(code, id, options) {
|
|
24
|
-
if (!(0,
|
|
21
|
+
if (!(0, isViteServerSide_js_1.isViteServerSide_extraSafe)(config, this.environment, options) &&
|
|
25
22
|
// Inject module banners if user sets `build.minify` to `false` for inspecting dist/client/
|
|
26
23
|
config.build.minify) {
|
|
27
24
|
return;
|
|
@@ -32,15 +29,12 @@ function pluginModuleBanner() {
|
|
|
32
29
|
if (id.startsWith(config.root))
|
|
33
30
|
id = id.slice(config.root.length + 1);
|
|
34
31
|
id = id.replaceAll('*/', '*\\/'); // https://github.com/vikejs/vike/issues/2377
|
|
35
|
-
const magicString =
|
|
32
|
+
const { magicString, getMagicStringResult } = (0, getMagicString_js_1.getMagicString)(code, id);
|
|
36
33
|
// Use legal comment so that esbuild doesn't remove it.
|
|
37
34
|
// - Terser still removes the comment, but I guess users use terser to minify JavaScript so I guess it's a good thing that comment is removed.
|
|
38
35
|
// - https://esbuild.github.io/api/#legal-comments
|
|
39
36
|
magicString.prepend(`/*! ${id} [vike:pluginModuleBanner] */\n`);
|
|
40
|
-
return
|
|
41
|
-
code: magicString.toString(),
|
|
42
|
-
map: magicString.generateMap({ hires: true, source: id }),
|
|
43
|
-
};
|
|
37
|
+
return getMagicStringResult();
|
|
44
38
|
},
|
|
45
39
|
},
|
|
46
40
|
};
|