vike 0.4.220 → 0.4.221-commit-ab9e52a
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 +5 -23
- package/dist/cjs/node/api/build.js +33 -24
- package/dist/cjs/node/api/context.js +6 -8
- package/dist/cjs/node/api/prepareViteApiCall.js +23 -21
- package/dist/cjs/node/api/prerender.js +1 -0
- package/dist/cjs/node/api/utils.js +2 -1
- package/dist/cjs/node/cli/context.js +16 -0
- package/dist/cjs/node/cli/entry.js +2 -0
- package/dist/cjs/node/cli/utils.js +1 -0
- package/dist/cjs/node/plugin/index.js +4 -8
- package/dist/cjs/node/plugin/onLoad.js +6 -1
- package/dist/cjs/node/plugin/plugins/autoFullBuild.js +34 -33
- package/dist/cjs/node/plugin/plugins/baseUrls.js +2 -2
- package/dist/cjs/node/plugin/plugins/buildApp.js +72 -0
- package/dist/cjs/node/plugin/plugins/buildConfig/fixServerAssets.js +12 -12
- package/dist/cjs/node/plugin/plugins/buildConfig.js +17 -12
- package/dist/cjs/node/plugin/plugins/buildEntry/index.js +28 -24
- package/dist/cjs/node/plugin/plugins/commonConfig.js +9 -7
- package/dist/cjs/node/plugin/plugins/extractAssetsPlugin.js +7 -4
- package/dist/cjs/node/plugin/plugins/extractExportNamesPlugin.js +2 -1
- package/dist/cjs/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.js +15 -10
- package/dist/cjs/node/plugin/plugins/importUserCode/index.js +11 -6
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/{assertExtensions.js → getVikeConfig/assertExtensions.js} +41 -36
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js +59 -22
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/{getConfigFileExport.js → getVikeConfig/getConfigFileExport.js} +2 -2
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/getPlusFilesAll.js +159 -0
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/loadFileAtConfigTime.js +40 -23
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolvePointerImport.js +9 -64
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transpileAndExecuteFile.js +11 -5
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +403 -590
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/{debug.js → virtual-files/debug.js} +1 -1
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/{getVirtualFilePageConfigValuesAll.js → virtual-files/getVirtualFilePageConfigValuesAll.js} +12 -9
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/{getVirtualFilePageConfigs.js → virtual-files/getVirtualFilePageConfigs.js} +13 -11
- package/dist/cjs/node/plugin/plugins/packageJsonFile.js +2 -2
- package/dist/cjs/node/plugin/plugins/previewConfig.js +7 -7
- package/dist/cjs/node/plugin/plugins/setGlobalContext.js +3 -5
- package/dist/cjs/node/plugin/shared/findPageFiles.js +2 -1
- package/dist/cjs/node/plugin/shared/getFullBuildInlineConfig.js +20 -0
- package/dist/cjs/{utils → node/plugin/shared}/getOutDirs.js +70 -61
- package/dist/cjs/node/plugin/{resolveClientEntriesDev.js → shared/resolveClientEntriesDev.js} +5 -8
- package/dist/cjs/{utils → node/plugin/shared}/viteIsSSR.js +2 -2
- package/dist/cjs/node/plugin/utils.js +1 -2
- package/dist/cjs/node/prerender/context.js +31 -0
- package/dist/cjs/node/prerender/resolvePrerenderConfig.js +46 -0
- package/dist/cjs/node/prerender/runPrerender.js +89 -68
- package/dist/cjs/node/prerender/utils.js +2 -2
- package/dist/cjs/node/runtime/globalContext.js +222 -150
- package/dist/cjs/node/runtime/html/injectAssets/getHtmlTags.js +11 -7
- package/dist/cjs/node/runtime/html/injectAssets/getViteDevScript.js +2 -3
- package/dist/cjs/node/runtime/html/injectAssets.js +4 -4
- package/dist/cjs/node/runtime/html/renderHtml.js +4 -5
- package/dist/cjs/node/runtime/page-files/setup.js +1 -1
- package/dist/cjs/node/runtime/renderPage/analyzePage.js +2 -3
- package/dist/cjs/node/runtime/renderPage/getEarlyHints.js +2 -27
- package/dist/cjs/node/runtime/renderPage/getPageAssets/sortPageAssetsForEarlyHintsHeader.js +2 -4
- package/dist/cjs/node/runtime/renderPage/getPageAssets.js +4 -4
- package/dist/cjs/node/runtime/renderPage/handleErrorWithoutErrorPage.js +3 -5
- package/dist/cjs/node/runtime/renderPage/isFontFallback.js +29 -0
- package/dist/cjs/node/runtime/renderPage/loadUserFilesServerSide.js +5 -4
- package/dist/cjs/node/runtime/renderPage/log404/index.js +1 -2
- package/dist/cjs/node/runtime/renderPage/renderPageAlreadyRouted.js +14 -10
- package/dist/cjs/node/runtime/renderPage/resolveRedirects.js +6 -5
- package/dist/cjs/node/runtime/renderPage.js +31 -29
- package/dist/cjs/node/runtime/utils.js +3 -3
- package/dist/cjs/node/runtime-dev/createDevMiddleware.js +5 -3
- package/dist/cjs/node/shared/resolveBase.js +7 -0
- package/dist/cjs/shared/getPageConfigsRuntime.js +20 -0
- package/dist/cjs/shared/getPageContextUrlComputed.js +6 -1
- package/dist/cjs/shared/getPageFiles/fileTypes.js +0 -1
- package/dist/cjs/shared/getPageFiles/getAllPageIdFiles.js +0 -3
- package/dist/cjs/shared/getPageFiles/getPageFileObject.js +0 -5
- package/dist/cjs/shared/getPageFiles/parseGlobResults.js +4 -3
- package/dist/cjs/shared/getPageFiles.js +1 -3
- package/dist/cjs/shared/page-configs/getPageConfigUserFriendly.js +15 -6
- package/dist/cjs/shared/page-configs/loadConfigValues.js +5 -1
- package/dist/cjs/shared/page-configs/serialize/serializeConfigValues.js +69 -18
- package/dist/cjs/shared/route/loadPageRoutes.js +1 -0
- package/dist/cjs/shared/utils.js +0 -1
- package/dist/cjs/utils/PROJECT_VERSION.js +1 -1
- package/dist/cjs/utils/assertSetup.js +1 -1
- package/dist/cjs/utils/catchInfiniteLoop.js +34 -0
- package/dist/cjs/utils/debug.js +8 -6
- package/dist/cjs/utils/findFile.js +4 -3
- package/dist/cjs/utils/isDev.js +2 -2
- package/dist/cjs/utils/isFilePathAbsoluteFilesystem.js +2 -2
- package/dist/cjs/utils/makePublicCopy.js +32 -0
- package/dist/cjs/utils/objectAssignSafe.js +7 -0
- package/dist/cjs/utils/path.js +48 -0
- package/dist/cjs/utils/requireResolve.js +3 -3
- package/dist/esm/__internal/index.d.ts +2 -2
- package/dist/esm/__internal/index.js +7 -26
- package/dist/esm/client/client-routing-runtime/createPageContext.js +5 -9
- package/dist/esm/client/client-routing-runtime/history.d.ts +3 -1
- package/dist/esm/client/client-routing-runtime/history.js +23 -18
- package/dist/esm/client/client-routing-runtime/index.d.ts +0 -1
- package/dist/esm/client/client-routing-runtime/index.js +0 -1
- package/dist/esm/client/client-routing-runtime/initClientRouter.js +2 -2
- package/dist/esm/client/client-routing-runtime/initOnLinkClick.d.ts +0 -4
- package/dist/esm/client/client-routing-runtime/initOnLinkClick.js +0 -11
- package/dist/esm/client/client-routing-runtime/initOnPopState.d.ts +0 -10
- package/dist/esm/client/client-routing-runtime/initOnPopState.js +50 -70
- package/dist/esm/client/client-routing-runtime/renderPageClientSide.js +15 -15
- package/dist/esm/client/client-routing-runtime/scrollRestoration.d.ts +4 -6
- package/dist/esm/client/client-routing-runtime/scrollRestoration.js +17 -12
- package/dist/esm/client/client-routing-runtime/setScrollPosition.d.ts +1 -1
- package/dist/esm/client/client-routing-runtime/setScrollPosition.js +29 -5
- package/dist/esm/client/client-routing-runtime/skipLink.d.ts +0 -2
- package/dist/esm/client/client-routing-runtime/skipLink.js +0 -1
- package/dist/esm/client/client-routing-runtime/utils.d.ts +1 -0
- package/dist/esm/client/client-routing-runtime/utils.js +1 -0
- package/dist/esm/client/server-routing-runtime/getPageContext.js +3 -4
- package/dist/esm/client/shared/loadUserFilesClientSide.js +3 -2
- package/dist/esm/node/api/build.d.ts +1 -6
- package/dist/esm/node/api/build.js +31 -25
- package/dist/esm/node/api/context.d.ts +4 -4
- package/dist/esm/node/api/context.js +6 -9
- package/dist/esm/node/api/prepareViteApiCall.d.ts +4 -3
- package/dist/esm/node/api/prepareViteApiCall.js +24 -22
- package/dist/esm/node/api/prerender.js +1 -0
- package/dist/esm/node/api/utils.d.ts +2 -1
- package/dist/esm/node/api/utils.js +2 -1
- package/dist/esm/node/cli/context.d.ts +5 -0
- package/dist/esm/node/cli/context.js +14 -0
- package/dist/esm/node/cli/entry.js +2 -0
- package/dist/esm/node/cli/parseCli.d.ts +3 -1
- package/dist/esm/node/cli/utils.d.ts +1 -0
- package/dist/esm/node/cli/utils.js +1 -0
- package/dist/esm/node/plugin/index.d.ts +29 -1
- package/dist/esm/node/plugin/index.js +5 -9
- package/dist/esm/node/plugin/onLoad.js +7 -2
- package/dist/esm/node/plugin/plugins/autoFullBuild.js +35 -34
- package/dist/esm/node/plugin/plugins/baseUrls.js +2 -2
- package/dist/esm/node/plugin/plugins/buildApp.d.ts +3 -0
- package/dist/esm/node/plugin/plugins/buildApp.js +70 -0
- package/dist/esm/node/plugin/plugins/buildConfig/fixServerAssets.d.ts +0 -2
- package/dist/esm/node/plugin/plugins/buildConfig/fixServerAssets.js +11 -11
- package/dist/esm/node/plugin/plugins/buildConfig.js +16 -11
- package/dist/esm/node/plugin/plugins/buildEntry/index.d.ts +3 -3
- package/dist/esm/node/plugin/plugins/buildEntry/index.js +28 -24
- package/dist/esm/node/plugin/plugins/commonConfig.d.ts +8 -2
- package/dist/esm/node/plugin/plugins/commonConfig.js +7 -5
- package/dist/esm/node/plugin/plugins/extractAssetsPlugin.js +6 -3
- package/dist/esm/node/plugin/plugins/extractExportNamesPlugin.js +2 -1
- package/dist/esm/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.d.ts +2 -2
- package/dist/esm/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.js +14 -9
- package/dist/esm/node/plugin/plugins/importUserCode/index.js +11 -6
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/assertExtensions.d.ts +6 -0
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{assertExtensions.js → getVikeConfig/assertExtensions.js} +41 -36
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.d.ts +2 -2
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js +58 -21
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{getConfigFileExport.js → getVikeConfig/getConfigFileExport.js} +2 -2
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/getPlusFilesAll.d.ts +39 -0
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/getPlusFilesAll.js +154 -0
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/loadFileAtConfigTime.d.ts +15 -9
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/loadFileAtConfigTime.js +41 -24
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolvePointerImport.d.ts +8 -18
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolvePointerImport.js +10 -65
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transpileAndExecuteFile.d.ts +6 -2
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transpileAndExecuteFile.js +12 -6
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.d.ts +10 -122
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +407 -594
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{debug.js → virtual-files/debug.js} +1 -1
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{getVirtualFilePageConfigValuesAll.js → virtual-files/getVirtualFilePageConfigValuesAll.js} +12 -9
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{getVirtualFilePageConfigs.js → virtual-files/getVirtualFilePageConfigs.js} +13 -11
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{isRuntimeEnvMatch.d.ts → virtual-files/isRuntimeEnvMatch.d.ts} +1 -1
- package/dist/esm/node/plugin/plugins/packageJsonFile.js +1 -1
- package/dist/esm/node/plugin/plugins/previewConfig.js +5 -5
- package/dist/esm/node/plugin/plugins/setGlobalContext.js +4 -6
- package/dist/esm/node/plugin/shared/findPageFiles.js +2 -1
- package/dist/esm/node/plugin/shared/getFullBuildInlineConfig.d.ts +2 -0
- package/dist/esm/node/plugin/shared/getFullBuildInlineConfig.js +17 -0
- package/dist/esm/{utils → node/plugin/shared}/getOutDirs.d.ts +1 -1
- package/dist/esm/{utils → node/plugin/shared}/getOutDirs.js +52 -43
- package/dist/esm/node/plugin/{resolveClientEntriesDev.js → shared/resolveClientEntriesDev.js} +5 -8
- package/dist/esm/{utils → node/plugin/shared}/viteIsSSR.d.ts +2 -5
- package/dist/esm/{utils → node/plugin/shared}/viteIsSSR.js +2 -2
- package/dist/esm/node/plugin/utils.d.ts +0 -1
- package/dist/esm/node/plugin/utils.js +1 -2
- package/dist/esm/node/prerender/context.d.ts +11 -0
- package/dist/esm/node/prerender/context.js +29 -0
- package/dist/esm/node/prerender/resolvePrerenderConfig.d.ts +12 -0
- package/dist/esm/node/prerender/resolvePrerenderConfig.js +44 -0
- package/dist/esm/node/prerender/runPrerender.d.ts +42 -1
- package/dist/esm/node/prerender/runPrerender.js +90 -69
- package/dist/esm/node/prerender/utils.d.ts +2 -2
- package/dist/esm/node/prerender/utils.js +2 -2
- package/dist/esm/node/runtime/globalContext.d.ts +44 -36
- package/dist/esm/node/runtime/globalContext.js +223 -151
- package/dist/esm/node/runtime/html/injectAssets/getHtmlTags.d.ts +1 -1
- package/dist/esm/node/runtime/html/injectAssets/getHtmlTags.js +11 -7
- package/dist/esm/node/runtime/html/injectAssets/getViteDevScript.d.ts +4 -1
- package/dist/esm/node/runtime/html/injectAssets/getViteDevScript.js +2 -3
- package/dist/esm/node/runtime/html/injectAssets.d.ts +2 -0
- package/dist/esm/node/runtime/html/injectAssets.js +4 -4
- package/dist/esm/node/runtime/html/renderHtml.js +4 -5
- package/dist/esm/node/runtime/page-files/setup.js +1 -1
- package/dist/esm/node/runtime/renderPage/analyzePage.d.ts +2 -1
- package/dist/esm/node/runtime/renderPage/analyzePage.js +2 -3
- package/dist/esm/node/runtime/renderPage/getEarlyHints.js +1 -26
- package/dist/esm/node/runtime/renderPage/getPageAssets/sortPageAssetsForEarlyHintsHeader.d.ts +1 -1
- package/dist/esm/node/runtime/renderPage/getPageAssets/sortPageAssetsForEarlyHintsHeader.js +2 -4
- package/dist/esm/node/runtime/renderPage/getPageAssets.d.ts +3 -1
- package/dist/esm/node/runtime/renderPage/getPageAssets.js +4 -4
- package/dist/esm/node/runtime/renderPage/handleErrorWithoutErrorPage.d.ts +2 -0
- package/dist/esm/node/runtime/renderPage/handleErrorWithoutErrorPage.js +3 -5
- package/dist/esm/node/runtime/renderPage/isFontFallback.d.ts +3 -0
- package/dist/esm/node/runtime/renderPage/isFontFallback.js +27 -0
- package/dist/esm/node/runtime/renderPage/loadUserFilesServerSide.d.ts +2 -0
- package/dist/esm/node/runtime/renderPage/loadUserFilesServerSide.js +6 -5
- package/dist/esm/node/runtime/renderPage/log404/index.d.ts +2 -0
- package/dist/esm/node/runtime/renderPage/log404/index.js +1 -2
- package/dist/esm/node/runtime/renderPage/preparePageContextForUserConsumptionServerSide.d.ts +3 -0
- package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.d.ts +26 -10
- package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.js +14 -10
- package/dist/esm/node/runtime/renderPage/resolveRedirects.d.ts +2 -0
- package/dist/esm/node/runtime/renderPage/resolveRedirects.js +5 -5
- package/dist/esm/node/runtime/renderPage.js +32 -30
- package/dist/esm/node/runtime/utils.d.ts +3 -3
- package/dist/esm/node/runtime/utils.js +3 -3
- package/dist/esm/node/runtime-dev/createDevMiddleware.js +5 -3
- package/dist/esm/node/shared/resolveBase.d.ts +5 -1
- package/dist/esm/node/shared/resolveBase.js +7 -0
- package/dist/esm/shared/getPageConfigsRuntime.d.ts +13 -0
- package/dist/esm/shared/getPageConfigsRuntime.js +18 -0
- package/dist/esm/shared/getPageContextUrlComputed.js +6 -1
- package/dist/esm/shared/getPageFiles/fileTypes.js +1 -2
- package/dist/esm/shared/getPageFiles/getAllPageIdFiles.js +0 -3
- package/dist/esm/shared/getPageFiles/getPageFileObject.js +0 -5
- package/dist/esm/shared/getPageFiles/parseGlobResults.d.ts +1 -1
- package/dist/esm/shared/getPageFiles/parseGlobResults.js +4 -3
- package/dist/esm/shared/getPageFiles.d.ts +0 -1
- package/dist/esm/shared/getPageFiles.js +0 -1
- package/dist/esm/shared/page-configs/Config.d.ts +83 -3
- package/dist/esm/shared/page-configs/PageConfig.d.ts +30 -18
- package/dist/esm/shared/page-configs/getPageConfigUserFriendly.d.ts +6 -8
- package/dist/esm/shared/page-configs/getPageConfigUserFriendly.js +15 -6
- package/dist/esm/shared/page-configs/loadConfigValues.js +6 -2
- package/dist/esm/shared/page-configs/serialize/serializeConfigValues.d.ts +7 -1
- package/dist/esm/shared/page-configs/serialize/serializeConfigValues.js +70 -19
- package/dist/esm/shared/route/loadPageRoutes.js +1 -0
- package/dist/esm/shared/utils.d.ts +0 -1
- package/dist/esm/shared/utils.js +0 -1
- 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 +1 -1
- package/dist/esm/utils/catchInfiniteLoop.d.ts +2 -0
- package/dist/esm/utils/catchInfiniteLoop.js +32 -0
- package/dist/esm/utils/debug.d.ts +1 -1
- package/dist/esm/utils/debug.js +8 -6
- package/dist/esm/utils/findFile.js +2 -1
- package/dist/esm/utils/isDev.js +3 -3
- package/dist/esm/utils/isFilePathAbsoluteFilesystem.js +1 -1
- package/dist/esm/utils/makePublicCopy.d.ts +3 -0
- package/dist/esm/utils/makePublicCopy.js +30 -0
- package/dist/esm/utils/objectAssignSafe.d.ts +1 -0
- package/dist/esm/utils/objectAssignSafe.js +4 -0
- package/dist/esm/utils/path.d.ts +14 -0
- package/dist/esm/utils/path.js +46 -0
- package/dist/esm/utils/projectInfo.d.ts +1 -1
- package/dist/esm/utils/requireResolve.js +1 -1
- package/package.json +2 -2
- package/dist/cjs/node/plugin/plugins/buildEntry/getVikeManifest.js +0 -17
- package/dist/cjs/node/plugin/plugins/importUserCode/addImportStatement.js +0 -29
- package/dist/cjs/node/prerender/isPrerenderAutoRunEnabled.js +0 -16
- package/dist/cjs/node/shared/assertPluginManifest.js +0 -20
- package/dist/cjs/node/shared/assertRuntimeManifest.js +0 -16
- package/dist/cjs/shared/assertPageFilePath.js +0 -11
- package/dist/cjs/shared/getPageFiles/getPageFiles.js +0 -48
- package/dist/cjs/utils/filesystemPathHandling.js +0 -18
- package/dist/cjs/utils/path-shim.js +0 -19
- package/dist/esm/node/plugin/plugins/buildEntry/getVikeManifest.d.ts +0 -5
- package/dist/esm/node/plugin/plugins/buildEntry/getVikeManifest.js +0 -15
- package/dist/esm/node/plugin/plugins/importUserCode/addImportStatement.d.ts +0 -14
- package/dist/esm/node/plugin/plugins/importUserCode/addImportStatement.js +0 -27
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/assertExtensions.d.ts +0 -5
- package/dist/esm/node/prerender/isPrerenderAutoRunEnabled.d.ts +0 -5
- package/dist/esm/node/prerender/isPrerenderAutoRunEnabled.js +0 -14
- package/dist/esm/node/shared/assertPluginManifest.d.ts +0 -12
- package/dist/esm/node/shared/assertPluginManifest.js +0 -18
- package/dist/esm/node/shared/assertRuntimeManifest.d.ts +0 -10
- package/dist/esm/node/shared/assertRuntimeManifest.js +0 -14
- package/dist/esm/shared/assertPageFilePath.d.ts +0 -2
- package/dist/esm/shared/assertPageFilePath.js +0 -9
- package/dist/esm/shared/getPageFiles/getPageFiles.d.ts +0 -15
- package/dist/esm/shared/getPageFiles/getPageFiles.js +0 -46
- package/dist/esm/utils/filesystemPathHandling.d.ts +0 -4
- package/dist/esm/utils/filesystemPathHandling.js +0 -16
- package/dist/esm/utils/path-shim.d.ts +0 -2
- package/dist/esm/utils/path-shim.js +0 -17
- /package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/{isRuntimeEnvMatch.js → virtual-files/isRuntimeEnvMatch.js} +0 -0
- /package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{getConfigFileExport.d.ts → getVikeConfig/getConfigFileExport.d.ts} +0 -0
- /package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{debug.d.ts → virtual-files/debug.d.ts} +0 -0
- /package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{getVirtualFilePageConfigValuesAll.d.ts → virtual-files/getVirtualFilePageConfigValuesAll.d.ts} +0 -0
- /package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{getVirtualFilePageConfigs.d.ts → virtual-files/getVirtualFilePageConfigs.d.ts} +0 -0
- /package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{isRuntimeEnvMatch.js → virtual-files/isRuntimeEnvMatch.js} +0 -0
- /package/dist/esm/node/plugin/{resolveClientEntriesDev.d.ts → shared/resolveClientEntriesDev.d.ts} +0 -0
|
@@ -3,20 +3,21 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.setGlobalContext_buildEntry = void 0;
|
|
4
4
|
exports.route = route;
|
|
5
5
|
exports.getPagesAndRoutes = getPagesAndRoutes;
|
|
6
|
-
|
|
7
|
-
// Internals needed by Vike
|
|
6
|
+
// Needed by Vike
|
|
8
7
|
var globalContext_js_1 = require("../node/runtime/globalContext.js");
|
|
9
8
|
Object.defineProperty(exports, "setGlobalContext_buildEntry", { enumerable: true, get: function () { return globalContext_js_1.setGlobalContext_buildEntry; } });
|
|
10
9
|
const index_js_1 = require("../shared/route/index.js");
|
|
11
|
-
const getPageFiles_js_1 = require("../shared/getPageFiles/getPageFiles.js");
|
|
12
10
|
const globalContext_js_2 = require("../node/runtime/globalContext.js");
|
|
13
11
|
const assertSetup_js_1 = require("../utils/assertSetup.js");
|
|
14
12
|
/**
|
|
15
13
|
* Used by {@link https://github.com/magne4000/vite-plugin-vercel|vite-plugin-vercel} to compute some rewrite rules and extract { isr } configs.
|
|
14
|
+
*
|
|
15
|
+
* TODO/eventually: remove
|
|
16
16
|
*/
|
|
17
17
|
async function getPagesAndRoutes() {
|
|
18
18
|
(0, assertSetup_js_1.setNodeEnvProduction)();
|
|
19
|
-
|
|
19
|
+
await (0, globalContext_js_2.initGlobalContext_getPagesAndRoutes)();
|
|
20
|
+
const globalContext = await (0, globalContext_js_2.getGlobalContextInternal)();
|
|
20
21
|
const {
|
|
21
22
|
//
|
|
22
23
|
pageRoutes, pageFilesAll, pageConfigs, allPageIds } = globalContext;
|
|
@@ -27,25 +28,6 @@ async function getPagesAndRoutes() {
|
|
|
27
28
|
allPageIds
|
|
28
29
|
};
|
|
29
30
|
}
|
|
30
|
-
// TODO/eventually:
|
|
31
|
-
// - Remove the need for `isProduction` after Vike's CLI is implemented
|
|
32
|
-
// - Remove it in favor of https://vike.dev/getGlobalContext
|
|
33
|
-
async function getMiddlewares() {
|
|
34
|
-
const isProduction = process.env.NODE_ENV === 'production';
|
|
35
|
-
const { pageConfigs } = await getPageFilesAllSafe(isProduction);
|
|
36
|
-
const middlewares = pageConfigs[0].configValues.middleware.value.flat(Infinity);
|
|
37
|
-
return middlewares;
|
|
38
|
-
}
|
|
39
|
-
// TODO/eventually:
|
|
40
|
-
// - Make it cleaner once the internal refactoring about global configs is done.
|
|
41
|
-
// - Remove it in favor of https://vike.dev/getGlobalContext
|
|
42
|
-
// Demo usage: https://github.com/vikejs/vike/pull/1823
|
|
43
|
-
async function getPageFilesAllSafe(isProduction) {
|
|
44
|
-
await (0, globalContext_js_2.initGlobalContext_getGlobalContextAsync)(isProduction);
|
|
45
|
-
const globalContext = (0, globalContext_js_2.getGlobalContext)();
|
|
46
|
-
const pageFilesAll = await (0, getPageFiles_js_1.getPageFilesAll)(false, globalContext.isProduction);
|
|
47
|
-
return pageFilesAll;
|
|
48
|
-
}
|
|
49
31
|
async function route(pageContext) {
|
|
50
32
|
const pageContextFromRoute = await (0, index_js_1.route)(pageContext);
|
|
51
33
|
// Old interface
|
|
@@ -32,41 +32,50 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
32
32
|
return result;
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
35
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
39
|
exports.build = build;
|
|
37
40
|
const prepareViteApiCall_js_1 = require("./prepareViteApiCall.js");
|
|
38
41
|
const vite_1 = require("vite");
|
|
39
|
-
const
|
|
42
|
+
const assert_1 = __importDefault(require("assert"));
|
|
43
|
+
const context_js_1 = require("../cli/context.js");
|
|
44
|
+
const context_js_2 = require("../prerender/context.js");
|
|
45
|
+
const utils_js_1 = require("./utils.js");
|
|
40
46
|
/**
|
|
41
47
|
* Programmatically trigger `$ vike build`
|
|
42
48
|
*
|
|
43
49
|
* https://vike.dev/api#build
|
|
44
50
|
*/
|
|
45
51
|
async function build(options = {}) {
|
|
46
|
-
const { viteConfigEnhanced,
|
|
47
|
-
//
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
const
|
|
54
|
-
await
|
|
52
|
+
const { viteConfigEnhanced, vikeConfig } = await (0, prepareViteApiCall_js_1.prepareViteApiCall)(options.viteConfig, 'build');
|
|
53
|
+
// Pass it to autoFullBuild()
|
|
54
|
+
if (viteConfigEnhanced)
|
|
55
|
+
viteConfigEnhanced._viteConfigEnhanced = viteConfigEnhanced;
|
|
56
|
+
if (vikeConfig.global.config.viteEnvironmentAPI) {
|
|
57
|
+
(0, utils_js_1.assertVersion)('Vite', vite_1.version, '6.0.0');
|
|
58
|
+
const { createBuilder } = await Promise.resolve().then(() => __importStar(require('vite')));
|
|
59
|
+
const builder = await createBuilder(viteConfigEnhanced);
|
|
60
|
+
await builder.buildApp();
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
// This buildVite() call does everything:
|
|
64
|
+
// 1. Build client-side
|
|
65
|
+
// 2. Build server-side
|
|
66
|
+
// > See: https://github.com/vikejs/vike/blob/c6c7533a56b3a16fc43ed644fc5c10c02d0ff375/vike/node/plugin/plugins/autoFullBuild.ts#L90
|
|
67
|
+
// 3. Pre-render (if enabled)
|
|
68
|
+
// > See: https://github.com/vikejs/vike/blob/c6c7533a56b3a16fc43ed644fc5c10c02d0ff375/vike/node/plugin/plugins/autoFullBuild.ts#L98
|
|
69
|
+
// > We purposely don't start the pre-rendering in this `build()` function but in a Rollup hook instead.
|
|
70
|
+
// > Rationale: https://github.com/vikejs/vike/issues/2123
|
|
71
|
+
await (0, vite_1.build)(viteConfigEnhanced);
|
|
72
|
+
// After pre-rendering, when using the Vike CLI, the process is forcefully exited at the end of the buildVite() call above.
|
|
73
|
+
if ((0, context_js_1.isVikeCli)() && (0, context_js_2.isPrerendering)())
|
|
74
|
+
(0, assert_1.default)(false);
|
|
55
75
|
}
|
|
56
76
|
return {
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
rollupOutputClient: outputClient,
|
|
61
|
-
rollupOutputServer: outputServer
|
|
62
|
-
};
|
|
63
|
-
}
|
|
64
|
-
function setSSR(viteConfig) {
|
|
65
|
-
return {
|
|
66
|
-
...viteConfig,
|
|
67
|
-
build: {
|
|
68
|
-
...viteConfig?.build,
|
|
69
|
-
ssr: true
|
|
70
|
-
}
|
|
77
|
+
/* We don't return `viteConfig` because `viteConfigEnhanced` is `InlineConfig` not `ResolvedConfig`
|
|
78
|
+
viteConfig: viteConfigEnhanced,
|
|
79
|
+
*/
|
|
71
80
|
};
|
|
72
81
|
}
|
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.setOperation = setOperation;
|
|
4
|
-
exports.clearOperation = clearOperation;
|
|
5
3
|
exports.isVikeCliOrApi = isVikeCliOrApi;
|
|
4
|
+
exports.setContextApiOperation = setContextApiOperation;
|
|
5
|
+
exports.clearContextApiOperation = clearContextApiOperation;
|
|
6
6
|
const utils_js_1 = require("./utils.js");
|
|
7
|
-
const globalObject = (0, utils_js_1.getGlobalObject)('context.ts', {
|
|
8
|
-
|
|
9
|
-
});
|
|
10
|
-
function getOperation() {
|
|
7
|
+
const globalObject = (0, utils_js_1.getGlobalObject)('api/context.ts', {});
|
|
8
|
+
function getApiOperation() {
|
|
11
9
|
(0, utils_js_1.assert)(globalObject.apiOperation);
|
|
12
10
|
return globalObject.apiOperation;
|
|
13
11
|
}
|
|
@@ -15,10 +13,10 @@ function isVikeCliOrApi() {
|
|
|
15
13
|
// The CLI uses the API
|
|
16
14
|
return !!globalObject.apiOperation;
|
|
17
15
|
}
|
|
18
|
-
function
|
|
16
|
+
function setContextApiOperation(operation) {
|
|
19
17
|
(0, utils_js_1.assert)(!globalObject.apiOperation);
|
|
20
18
|
globalObject.apiOperation = operation;
|
|
21
19
|
}
|
|
22
|
-
function
|
|
20
|
+
function clearContextApiOperation() {
|
|
23
21
|
globalObject.apiOperation = undefined;
|
|
24
22
|
}
|
|
@@ -49,33 +49,34 @@ const utils_js_1 = require("./utils.js");
|
|
|
49
49
|
const picocolors_1 = __importDefault(require("@brillout/picocolors"));
|
|
50
50
|
const globalContext_js_1 = require("../runtime/globalContext.js");
|
|
51
51
|
const globalObject = (0, utils_js_1.getGlobalObject)('prepareViteApiCall.ts', {});
|
|
52
|
-
async function prepareViteApiCall(
|
|
52
|
+
async function prepareViteApiCall(viteConfigFromOptions, operation) {
|
|
53
53
|
clear();
|
|
54
|
-
(0, context_js_1.
|
|
55
|
-
return enhanceViteConfig(
|
|
54
|
+
(0, context_js_1.setContextApiOperation)(operation);
|
|
55
|
+
return enhanceViteConfig(viteConfigFromOptions, operation);
|
|
56
56
|
}
|
|
57
57
|
// For subsequent API calls, e.g. calling prerender() after build()
|
|
58
58
|
function clear() {
|
|
59
|
-
(0, context_js_1.
|
|
59
|
+
(0, context_js_1.clearContextApiOperation)();
|
|
60
60
|
(0, globalContext_js_1.clearGlobalContext)();
|
|
61
61
|
}
|
|
62
|
-
async function enhanceViteConfig(
|
|
63
|
-
const viteInfo = await getInfoFromVite(
|
|
62
|
+
async function enhanceViteConfig(viteConfigFromOptions, operation) {
|
|
63
|
+
const viteInfo = await getInfoFromVite(viteConfigFromOptions, operation);
|
|
64
64
|
await assertViteRoot2(viteInfo.root, viteInfo.viteConfigEnhanced, operation);
|
|
65
65
|
const vikeConfig = await (0, getVikeConfig_js_1.getVikeConfig2)(viteInfo.root, operation === 'dev', viteInfo.vikeVitePluginOptions);
|
|
66
66
|
const viteConfigEnhanced = addViteSettingsSetByVikeConfig(viteInfo.viteConfigEnhanced, vikeConfig);
|
|
67
67
|
return {
|
|
68
|
-
|
|
69
|
-
|
|
68
|
+
vikeConfig,
|
|
69
|
+
viteConfigEnhanced
|
|
70
70
|
};
|
|
71
71
|
}
|
|
72
72
|
function addViteSettingsSetByVikeConfig(viteConfigEnhanced, vikeConfig) {
|
|
73
|
-
const viteConfigs = vikeConfig.global.
|
|
73
|
+
const viteConfigs = vikeConfig.global._from.configsCumulative.vite;
|
|
74
74
|
if (!viteConfigs)
|
|
75
75
|
return viteConfigEnhanced;
|
|
76
76
|
viteConfigs.values.forEach((v) => {
|
|
77
77
|
(0, utils_js_1.assertUsage)((0, utils_js_1.isObject)(v.value), `${v.definedAt} should be an object`);
|
|
78
78
|
viteConfigEnhanced = (0, vite_1.mergeConfig)(viteConfigEnhanced ?? {}, v.value);
|
|
79
|
+
(0, utils_js_1.assertUsage)(!findVikeVitePlugin(v.value), "Using the +vite setting to add Vike's Vite plugin is forbidden");
|
|
79
80
|
});
|
|
80
81
|
return viteConfigEnhanced;
|
|
81
82
|
}
|
|
@@ -85,13 +86,14 @@ async function getViteRoot(operation) {
|
|
|
85
86
|
(0, utils_js_1.assert)(globalObject.root);
|
|
86
87
|
return globalObject.root;
|
|
87
88
|
}
|
|
88
|
-
async function getInfoFromVite(
|
|
89
|
-
const
|
|
90
|
-
const root = normalizeViteRoot(
|
|
89
|
+
async function getInfoFromVite(viteConfigFromOptions, operation) {
|
|
90
|
+
const viteConfigFromUserViteFile = await loadViteConfigFile(viteConfigFromOptions, operation);
|
|
91
|
+
const root = normalizeViteRoot(viteConfigFromUserViteFile?.root ?? viteConfigFromOptions?.root ?? process.cwd());
|
|
91
92
|
globalObject.root = root;
|
|
92
93
|
let vikeVitePluginOptions;
|
|
93
|
-
let viteConfigEnhanced =
|
|
94
|
-
|
|
94
|
+
let viteConfigEnhanced = viteConfigFromOptions;
|
|
95
|
+
// If Vike's Vite plugin is found in both viteConfigFromOptions and viteConfigFromUserViteFile then Vike will later throw an error
|
|
96
|
+
const found = findVikeVitePlugin(viteConfigFromOptions) || findVikeVitePlugin(viteConfigFromUserViteFile);
|
|
95
97
|
if (found) {
|
|
96
98
|
vikeVitePluginOptions = found.vikeVitePluginOptions;
|
|
97
99
|
}
|
|
@@ -100,20 +102,20 @@ async function getInfoFromVite(viteConfig, operation) {
|
|
|
100
102
|
// Using a dynamic import because the script calling the Vike API may not live in the same place as vite.config.js, thus vike/plugin may resolved to two different node_modules/vike directories.
|
|
101
103
|
const { plugin: vikePlugin } = await Promise.resolve().then(() => __importStar(require('../plugin/index.js')));
|
|
102
104
|
viteConfigEnhanced = {
|
|
103
|
-
...
|
|
104
|
-
plugins: [...(
|
|
105
|
+
...viteConfigFromOptions,
|
|
106
|
+
plugins: [...(viteConfigFromOptions?.plugins ?? []), vikePlugin()]
|
|
105
107
|
};
|
|
106
|
-
const res = findVikeVitePlugin(viteConfigEnhanced
|
|
108
|
+
const res = findVikeVitePlugin(viteConfigEnhanced);
|
|
107
109
|
(0, utils_js_1.assert)(res);
|
|
108
110
|
vikeVitePluginOptions = res.vikeVitePluginOptions;
|
|
109
111
|
}
|
|
110
112
|
(0, utils_js_1.assert)(vikeVitePluginOptions);
|
|
111
113
|
return { root, vikeVitePluginOptions, viteConfigEnhanced };
|
|
112
114
|
}
|
|
113
|
-
function findVikeVitePlugin(
|
|
115
|
+
function findVikeVitePlugin(viteConfig) {
|
|
114
116
|
let vikeVitePluginOptions;
|
|
115
117
|
let vikeVitePuginFound = false;
|
|
116
|
-
plugins
|
|
118
|
+
viteConfig?.plugins?.forEach((p) => {
|
|
117
119
|
if (p && '__vikeVitePluginOptions' in p) {
|
|
118
120
|
vikeVitePuginFound = true;
|
|
119
121
|
const options = p.__vikeVitePluginOptions;
|
|
@@ -126,8 +128,8 @@ function findVikeVitePlugin(plugins) {
|
|
|
126
128
|
return { vikeVitePluginOptions };
|
|
127
129
|
}
|
|
128
130
|
// Copied from https://github.com/vitejs/vite/blob/4f5845a3182fc950eb9cd76d7161698383113b18/packages/vite/src/node/config.ts#L961-L1005
|
|
129
|
-
async function loadViteConfigFile(
|
|
130
|
-
const [inlineConfig, command, defaultMode, _defaultNodeEnv, isPreview] = getResolveConfigArgs(
|
|
131
|
+
async function loadViteConfigFile(viteConfigFromOptions, operation) {
|
|
132
|
+
const [inlineConfig, command, defaultMode, _defaultNodeEnv, isPreview] = getResolveConfigArgs(viteConfigFromOptions, operation);
|
|
131
133
|
let config = inlineConfig;
|
|
132
134
|
let mode = inlineConfig.mode || defaultMode;
|
|
133
135
|
const configEnv = {
|
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.prerender = prerender;
|
|
4
4
|
const runPrerender_js_1 = require("../prerender/runPrerender.js");
|
|
5
5
|
const prepareViteApiCall_js_1 = require("./prepareViteApiCall.js");
|
|
6
|
+
// TODO/soon use importServerProductionIndex()
|
|
6
7
|
/**
|
|
7
8
|
* Programmatically trigger `$ vike prerender`
|
|
8
9
|
*
|
|
@@ -20,5 +20,6 @@ const onLoad_js_1 = require("./onLoad.js");
|
|
|
20
20
|
(0, onLoad_js_1.onLoad)();
|
|
21
21
|
__exportStar(require("../../utils/assert.js"), exports);
|
|
22
22
|
__exportStar(require("../../utils/getGlobalObject.js"), exports);
|
|
23
|
-
__exportStar(require("../../utils/
|
|
23
|
+
__exportStar(require("../../utils/path.js"), exports);
|
|
24
24
|
__exportStar(require("../../utils/isObject.js"), exports);
|
|
25
|
+
__exportStar(require("../../utils/assertVersion.js"), exports);
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isVikeCli = isVikeCli;
|
|
4
|
+
exports.setContextCliCommand = setContextCliCommand;
|
|
5
|
+
const utils_js_1 = require("./utils.js");
|
|
6
|
+
const globalObject = (0, utils_js_1.getGlobalObject)('cli/context.ts', {});
|
|
7
|
+
function getCliCommand() {
|
|
8
|
+
return globalObject.cliCommand;
|
|
9
|
+
}
|
|
10
|
+
function isVikeCli() {
|
|
11
|
+
return !!globalObject.cliCommand;
|
|
12
|
+
}
|
|
13
|
+
function setContextCliCommand(command) {
|
|
14
|
+
(0, utils_js_1.assert)(!globalObject.cliCommand);
|
|
15
|
+
globalObject.cliCommand = command;
|
|
16
|
+
}
|
|
@@ -40,9 +40,11 @@ const utils_js_1 = require("./utils.js");
|
|
|
40
40
|
const index_js_1 = require("../api/index.js");
|
|
41
41
|
const picocolors_1 = __importDefault(require("@brillout/picocolors"));
|
|
42
42
|
const parseCli_js_1 = require("./parseCli.js");
|
|
43
|
+
const context_js_1 = require("./context.js");
|
|
43
44
|
cli();
|
|
44
45
|
async function cli() {
|
|
45
46
|
const { command } = (0, parseCli_js_1.parseCli)();
|
|
47
|
+
(0, context_js_1.setContextCliCommand)(command);
|
|
46
48
|
if (command === 'dev') {
|
|
47
49
|
await cmdDev();
|
|
48
50
|
}
|
|
@@ -21,3 +21,4 @@ const onLoad_js_1 = require("./onLoad.js");
|
|
|
21
21
|
__exportStar(require("../../utils/assert.js"), exports);
|
|
22
22
|
__exportStar(require("../../utils/projectInfo.js"), exports);
|
|
23
23
|
__exportStar(require("../../utils/includes.js"), exports);
|
|
24
|
+
__exportStar(require("../../utils/getGlobalObject.js"), exports);
|
|
@@ -9,7 +9,6 @@ exports.ssr = plugin;
|
|
|
9
9
|
exports.default = plugin;
|
|
10
10
|
var utils_js_1 = require("./utils.js");
|
|
11
11
|
Object.defineProperty(exports, "version", { enumerable: true, get: function () { return utils_js_1.PROJECT_VERSION; } });
|
|
12
|
-
const vite_1 = require("vite");
|
|
13
12
|
const utils_js_2 = require("./utils.js");
|
|
14
13
|
const buildConfig_js_1 = require("./plugins/buildConfig.js");
|
|
15
14
|
const previewConfig_js_1 = require("./plugins/previewConfig.js");
|
|
@@ -30,11 +29,11 @@ const envVars_js_1 = require("./plugins/envVars.js");
|
|
|
30
29
|
const picocolors_1 = __importDefault(require("@brillout/picocolors"));
|
|
31
30
|
const fileEnv_js_1 = require("./plugins/fileEnv.js");
|
|
32
31
|
const getPageAssets_js_1 = require("../runtime/renderPage/getPageAssets.js");
|
|
33
|
-
const resolveClientEntriesDev_js_1 = require("./resolveClientEntriesDev.js");
|
|
32
|
+
const resolveClientEntriesDev_js_1 = require("./shared/resolveClientEntriesDev.js");
|
|
34
33
|
const workaroundCssModuleHmr_js_1 = require("./plugins/workaroundCssModuleHmr.js");
|
|
35
34
|
const workaroundVite6HmrRegression_js_1 = require("./plugins/workaroundVite6HmrRegression.js");
|
|
36
|
-
(
|
|
37
|
-
|
|
35
|
+
const buildApp_js_1 = require("./plugins/buildApp.js");
|
|
36
|
+
// We don't call this in ./onLoad.ts to avoid a cyclic dependency with utils.ts
|
|
38
37
|
(0, getPageAssets_js_1.setResolveClientEntriesDev)(resolveClientEntriesDev_js_1.resolveClientEntriesDev);
|
|
39
38
|
// Return as `any` to avoid Plugin type mismatches when there are multiple Vite versions installed
|
|
40
39
|
function plugin(vikeVitePluginOptions = {}) {
|
|
@@ -43,6 +42,7 @@ function plugin(vikeVitePluginOptions = {}) {
|
|
|
43
42
|
(0, index_js_2.importUserCode)(),
|
|
44
43
|
...(0, index_js_1.devConfig)(),
|
|
45
44
|
...(0, buildConfig_js_1.buildConfig)(),
|
|
45
|
+
...(0, buildApp_js_1.buildApp)(),
|
|
46
46
|
(0, previewConfig_js_1.previewConfig)(),
|
|
47
47
|
...(0, autoFullBuild_js_1.autoFullBuild)(),
|
|
48
48
|
(0, packageJsonFile_js_1.packageJsonFile)(),
|
|
@@ -69,10 +69,6 @@ Object.defineProperty(plugin, 'apply', {
|
|
|
69
69
|
(0, utils_js_2.assertUsage)(false, `Add ${picocolors_1.default.cyan('vike()')} instead of ${picocolors_1.default.cyan('vike')} to vite.config.js#plugins (i.e. call the function and add the return value instead of adding the function itself)`, { showStackTrace: true });
|
|
70
70
|
}
|
|
71
71
|
});
|
|
72
|
-
// package.json#peerDependencies isn't enough as users can ignore it
|
|
73
|
-
function assertViteVersion() {
|
|
74
|
-
(0, utils_js_2.assertVersion)('Vite', vite_1.version, '5.1.0');
|
|
75
|
-
}
|
|
76
72
|
// Ensures following works: `const vike = require('vike/plugin')` / `import vike from 'vike/plugin'`
|
|
77
73
|
// - It needs to live at the end of this file, in order to ensure we do it after all assignments to `exports`.
|
|
78
74
|
try {
|
|
@@ -4,9 +4,14 @@ exports.onLoad = onLoad;
|
|
|
4
4
|
const assertIsNotBrowser_js_1 = require("../../utils/assertIsNotBrowser.js");
|
|
5
5
|
const assertSetup_js_1 = require("../../utils/assertSetup.js");
|
|
6
6
|
const assertNodeVersion_js_1 = require("../../utils/assertNodeVersion.js");
|
|
7
|
+
const assertVersion_js_1 = require("../../utils/assertVersion.js");
|
|
8
|
+
const vite_1 = require("vite");
|
|
7
9
|
function onLoad() {
|
|
10
|
+
(0, assertSetup_js_1.markSetup_vikeVitePlugin)();
|
|
8
11
|
(0, assertIsNotBrowser_js_1.assertIsNotBrowser)();
|
|
9
12
|
(0, assertNodeVersion_js_1.assertNodeVersion)();
|
|
10
|
-
//
|
|
13
|
+
// package.json#peerDependencies isn't enough as users often ignore it
|
|
14
|
+
(0, assertVersion_js_1.assertVersion)('Vite', vite_1.version, '5.1.0');
|
|
15
|
+
// Ensure we don't bloat the server runtime with heavy dependencies such Vite and esbuild
|
|
11
16
|
(0, assertSetup_js_1.assertIsNotProductionRuntime)();
|
|
12
17
|
}
|
|
@@ -5,29 +5,30 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
};
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
7
|
exports.autoFullBuild = autoFullBuild;
|
|
8
|
+
const getFullBuildInlineConfig_js_1 = require("../shared/getFullBuildInlineConfig.js");
|
|
8
9
|
const vite_1 = require("vite");
|
|
9
10
|
const utils_js_1 = require("../utils.js");
|
|
10
11
|
const runPrerender_js_1 = require("../../prerender/runPrerender.js");
|
|
11
|
-
const
|
|
12
|
+
const context_js_1 = require("../../prerender/context.js");
|
|
12
13
|
const isViteCliCall_js_1 = require("../shared/isViteCliCall.js");
|
|
13
14
|
const picocolors_1 = __importDefault(require("@brillout/picocolors"));
|
|
14
15
|
const logErrorHint_js_1 = require("../../runtime/renderPage/logErrorHint.js");
|
|
15
16
|
const buildConfig_js_1 = require("./buildConfig.js");
|
|
16
17
|
const getVikeConfig_js_1 = require("./importUserCode/v1-design/getVikeConfig.js");
|
|
18
|
+
const context_js_2 = require("../../api/context.js");
|
|
17
19
|
let forceExit = false;
|
|
18
20
|
function autoFullBuild() {
|
|
19
21
|
let config;
|
|
20
|
-
let
|
|
22
|
+
let vikeConfig;
|
|
21
23
|
return [
|
|
22
24
|
{
|
|
23
25
|
name: 'vike:autoFullBuild',
|
|
24
26
|
apply: 'build',
|
|
25
27
|
enforce: 'pre',
|
|
26
28
|
async configResolved(config_) {
|
|
27
|
-
|
|
28
|
-
vikeConfigGlobal = vikeConfig.vikeConfigGlobal;
|
|
29
|
+
vikeConfig = await (0, getVikeConfig_js_1.getVikeConfig)(config_);
|
|
29
30
|
config = config_;
|
|
30
|
-
abortViteBuildSsr(
|
|
31
|
+
abortViteBuildSsr(vikeConfig);
|
|
31
32
|
},
|
|
32
33
|
writeBundle: {
|
|
33
34
|
/* We can't use this because it breaks Vite's logging. TODO: try again with latest Vite version.
|
|
@@ -36,7 +37,7 @@ function autoFullBuild() {
|
|
|
36
37
|
*/
|
|
37
38
|
async handler(_options, bundle) {
|
|
38
39
|
try {
|
|
39
|
-
await triggerFullBuild(config,
|
|
40
|
+
await triggerFullBuild(config, vikeConfig, bundle);
|
|
40
41
|
}
|
|
41
42
|
catch (err) {
|
|
42
43
|
// Avoid Rollup prefixing the error with [vike:autoFullBuild], for example see https://github.com/vikejs/vike/issues/472#issuecomment-1276274203
|
|
@@ -56,16 +57,17 @@ function autoFullBuild() {
|
|
|
56
57
|
handler() {
|
|
57
58
|
if (forceExit) {
|
|
58
59
|
(0, runPrerender_js_1.runPrerender_forceExit)();
|
|
60
|
+
(0, utils_js_1.assert)(false);
|
|
59
61
|
}
|
|
60
62
|
}
|
|
61
63
|
}
|
|
62
64
|
}
|
|
63
65
|
];
|
|
64
66
|
}
|
|
65
|
-
async function triggerFullBuild(config,
|
|
67
|
+
async function triggerFullBuild(config, vikeConfig, bundle) {
|
|
66
68
|
if (config.build.ssr)
|
|
67
69
|
return; // already triggered
|
|
68
|
-
if (isDisabled(
|
|
70
|
+
if (isDisabled(vikeConfig))
|
|
69
71
|
return;
|
|
70
72
|
// Workaround for @vitejs/plugin-legacy
|
|
71
73
|
// - The legacy plugin triggers its own Rollup build for the client-side.
|
|
@@ -73,44 +75,43 @@ async function triggerFullBuild(config, vikeConfigGlobal, bundle) {
|
|
|
73
75
|
// - Issue & reproduction: https://github.com/vikejs/vike/issues/1154#issuecomment-1965954636
|
|
74
76
|
if (!bundle[buildConfig_js_1.manifestTempFile])
|
|
75
77
|
return;
|
|
76
|
-
const
|
|
77
|
-
const configInline = {
|
|
78
|
-
...configFromCli,
|
|
79
|
-
configFile: configFromCli?.configFile || config.configFile,
|
|
80
|
-
root: config.root,
|
|
81
|
-
build: {
|
|
82
|
-
...configFromCli?.build
|
|
83
|
-
}
|
|
84
|
-
};
|
|
78
|
+
const configInline = (0, getFullBuildInlineConfig_js_1.getFullBuildInlineConfig)(config);
|
|
85
79
|
try {
|
|
86
|
-
await (0, vite_1.build)(
|
|
87
|
-
...configInline,
|
|
88
|
-
build: {
|
|
89
|
-
...configInline.build,
|
|
90
|
-
ssr: true
|
|
91
|
-
}
|
|
92
|
-
});
|
|
80
|
+
await (0, vite_1.build)(setSSR(configInline));
|
|
93
81
|
}
|
|
94
82
|
catch (err) {
|
|
95
83
|
console.error(err);
|
|
96
84
|
(0, logErrorHint_js_1.logErrorHint)(err);
|
|
97
85
|
process.exit(1);
|
|
98
86
|
}
|
|
99
|
-
if ((0,
|
|
100
|
-
await (0, runPrerender_js_1.runPrerenderFromAutoRun)(configInline);
|
|
101
|
-
forceExit =
|
|
87
|
+
if ((0, context_js_1.isPrerenderAutoRunEnabled)(vikeConfig)) {
|
|
88
|
+
const res = await (0, runPrerender_js_1.runPrerenderFromAutoRun)(configInline, config);
|
|
89
|
+
forceExit = res.forceExit;
|
|
102
90
|
}
|
|
103
91
|
}
|
|
104
|
-
function
|
|
105
|
-
|
|
92
|
+
function setSSR(configInline) {
|
|
93
|
+
return {
|
|
94
|
+
...configInline,
|
|
95
|
+
build: {
|
|
96
|
+
...configInline.build,
|
|
97
|
+
ssr: true
|
|
98
|
+
}
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
function abortViteBuildSsr(vikeConfig) {
|
|
102
|
+
if (vikeConfig.global.config.disableAutoFullBuild !== true && (0, isViteCliCall_js_1.isViteCliCall)() && (0, isViteCliCall_js_1.getViteConfigFromCli)()?.build.ssr) {
|
|
106
103
|
(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 });
|
|
107
104
|
process.exit(0);
|
|
108
105
|
}
|
|
109
106
|
}
|
|
110
|
-
function isDisabled(
|
|
111
|
-
const { disableAutoFullBuild } =
|
|
112
|
-
if (
|
|
113
|
-
return
|
|
107
|
+
function isDisabled(vikeConfig) {
|
|
108
|
+
const { disableAutoFullBuild, viteEnvironmentAPI } = vikeConfig.global.config;
|
|
109
|
+
if (viteEnvironmentAPI) {
|
|
110
|
+
return true;
|
|
111
|
+
}
|
|
112
|
+
if (disableAutoFullBuild === undefined || disableAutoFullBuild === 'prerender') {
|
|
113
|
+
const isViteApi = !(0, isViteCliCall_js_1.isViteCliCall)() && !(0, context_js_2.isVikeCliOrApi)();
|
|
114
|
+
return isViteApi;
|
|
114
115
|
}
|
|
115
116
|
else {
|
|
116
117
|
return disableAutoFullBuild;
|
|
@@ -13,7 +13,7 @@ function baseUrls() {
|
|
|
13
13
|
const isDev = config._isDev;
|
|
14
14
|
(0, utils_js_1.assert)(typeof isDev === 'boolean');
|
|
15
15
|
const baseViteOriginal = config.base ?? '/__UNSET__'; // '/__UNSET__' because Vite resolves `_baseViteOriginal: null` to `undefined`
|
|
16
|
-
basesResolved = (0, resolveBase_js_1.resolveBase)(baseViteOriginal, config.vike.
|
|
16
|
+
basesResolved = (0, resolveBase_js_1.resolveBase)(baseViteOriginal, config.vike.config.baseServer ?? null, config.vike.config.baseAssets ?? null);
|
|
17
17
|
// We cannot define these in configResolved() because Vite picks up the env variables before any configResolved() hook is called
|
|
18
18
|
process.env.BASE_SERVER = basesResolved.baseServer;
|
|
19
19
|
process.env.BASE_ASSETS = basesResolved.baseAssets;
|
|
@@ -29,7 +29,7 @@ function baseUrls() {
|
|
|
29
29
|
},
|
|
30
30
|
async configResolved(config) {
|
|
31
31
|
const vikeConfig = await (0, getVikeConfig_js_1.getVikeConfig)(config);
|
|
32
|
-
const basesResolved2 = (0, resolveBase_js_1.resolveBaseFromResolvedConfig)(vikeConfig.
|
|
32
|
+
const basesResolved2 = (0, resolveBase_js_1.resolveBaseFromResolvedConfig)(vikeConfig.global.config.baseServer ?? null, vikeConfig.global.config.baseAssets ?? null, config);
|
|
33
33
|
(0, utils_js_1.assert)(basesResolved2.baseServer === basesResolved.baseServer);
|
|
34
34
|
(0, utils_js_1.assert)(basesResolved2.baseAssets === basesResolved.baseAssets);
|
|
35
35
|
/* In dev, Vite seems buggy around setting vite.config.js#base to an absolute URL (e.g. http://localhost:8080/cdn/)
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.buildApp = buildApp;
|
|
4
|
+
const runPrerender_js_1 = require("../../prerender/runPrerender.js");
|
|
5
|
+
const context_js_1 = require("../../prerender/context.js");
|
|
6
|
+
const getOutDirs_js_1 = require("../shared/getOutDirs.js");
|
|
7
|
+
const utils_js_1 = require("../utils.js");
|
|
8
|
+
const getVikeConfig_js_1 = require("./importUserCode/v1-design/getVikeConfig.js");
|
|
9
|
+
const getFullBuildInlineConfig_js_1 = require("../shared/getFullBuildInlineConfig.js");
|
|
10
|
+
function buildApp() {
|
|
11
|
+
let config;
|
|
12
|
+
return [
|
|
13
|
+
{
|
|
14
|
+
name: 'vike:buildApp',
|
|
15
|
+
apply: 'build',
|
|
16
|
+
config(config) {
|
|
17
|
+
if (!config.vike.config.viteEnvironmentAPI)
|
|
18
|
+
return;
|
|
19
|
+
return {
|
|
20
|
+
builder: {
|
|
21
|
+
buildApp: async (builder) => {
|
|
22
|
+
(0, utils_js_1.assert)(builder.environments.client);
|
|
23
|
+
(0, utils_js_1.assert)(builder.environments.ssr);
|
|
24
|
+
await builder.build(builder.environments.client);
|
|
25
|
+
await builder.build(builder.environments.ssr);
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
environments: {
|
|
29
|
+
ssr: {
|
|
30
|
+
consumer: 'server',
|
|
31
|
+
build: {
|
|
32
|
+
outDir: (0, getOutDirs_js_1.resolveOutDir)(config, true),
|
|
33
|
+
ssr: true
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
client: {
|
|
37
|
+
consumer: 'client',
|
|
38
|
+
build: {
|
|
39
|
+
copyPublicDir: true,
|
|
40
|
+
ssr: false
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
name: 'vike:buildApp:prerender',
|
|
49
|
+
apply: 'build',
|
|
50
|
+
enforce: 'pre',
|
|
51
|
+
applyToEnvironment(env) {
|
|
52
|
+
return env.name === 'ssr';
|
|
53
|
+
},
|
|
54
|
+
configResolved(_config) {
|
|
55
|
+
config = _config;
|
|
56
|
+
},
|
|
57
|
+
async writeBundle() {
|
|
58
|
+
if (!config.vike.config.viteEnvironmentAPI)
|
|
59
|
+
return;
|
|
60
|
+
const vikeConfig = await (0, getVikeConfig_js_1.getVikeConfig)(config);
|
|
61
|
+
if (!(0, context_js_1.isPrerenderAutoRunEnabled)(vikeConfig))
|
|
62
|
+
return;
|
|
63
|
+
const configInline = (0, getFullBuildInlineConfig_js_1.getFullBuildInlineConfig)(config);
|
|
64
|
+
const { forceExit } = await (0, runPrerender_js_1.runPrerenderFromAutoRun)(configInline, config);
|
|
65
|
+
if (forceExit) {
|
|
66
|
+
(0, runPrerender_js_1.runPrerender_forceExit)();
|
|
67
|
+
(0, utils_js_1.assert)(false);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
];
|
|
72
|
+
}
|