vike 0.4.239-commit-59f1017 → 0.4.239-commit-4d0d950

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.
Files changed (415) hide show
  1. package/dist/esm/client/runtime-client-routing/entry.js +5 -0
  2. package/dist/esm/client/runtime-client-routing/globalContext.d.ts +1 -1
  3. package/dist/esm/client/runtime-client-routing/globalContext.js +9 -3
  4. package/dist/esm/client/runtime-client-routing/renderPageClientSide.js +1 -0
  5. package/dist/esm/client/runtime-server-routing/createPageContextClientSide.d.ts +1 -1
  6. package/dist/esm/client/runtime-server-routing/entry.js +5 -0
  7. package/dist/esm/client/runtime-server-routing/globalContext.d.ts +2 -2
  8. package/dist/esm/client/runtime-server-routing/globalContext.js +7 -3
  9. package/dist/esm/client/shared/createGetGlobalContextClient.d.ts +4 -3
  10. package/dist/esm/client/shared/createGetGlobalContextClient.js +38 -34
  11. package/dist/esm/node/vite/index.js +34 -15
  12. package/dist/esm/node/vite/plugins/pluginBaseUrls.d.ts +1 -1
  13. package/dist/esm/node/vite/plugins/pluginBaseUrls.js +37 -35
  14. package/dist/esm/node/vite/plugins/pluginBuild/pluginDistFileNames.d.ts +1 -1
  15. package/dist/esm/node/vite/plugins/pluginBuild/pluginDistFileNames.js +82 -80
  16. package/dist/esm/node/vite/plugins/pluginBuild/pluginDistPackageJsonFile.d.ts +1 -1
  17. package/dist/esm/node/vite/plugins/pluginBuild/pluginDistPackageJsonFile.js +23 -21
  18. package/dist/esm/node/vite/plugins/pluginBuild/pluginModuleBanner.d.ts +1 -1
  19. package/dist/esm/node/vite/plugins/pluginBuild/pluginModuleBanner.js +38 -36
  20. package/dist/esm/node/vite/plugins/pluginBuild/pluginSuppressRollupWarning.d.ts +1 -1
  21. package/dist/esm/node/vite/plugins/pluginBuild/pluginSuppressRollupWarning.js +26 -24
  22. package/dist/esm/node/vite/plugins/pluginDev/determineFsAllowList.js +0 -1
  23. package/dist/esm/node/vite/plugins/pluginEnvVars.d.ts +1 -1
  24. package/dist/esm/node/vite/plugins/pluginEnvVars.js +87 -65
  25. package/dist/esm/node/vite/plugins/pluginExtractExportNames.d.ts +1 -1
  26. package/dist/esm/node/vite/plugins/pluginExtractExportNames.js +29 -27
  27. package/dist/esm/node/vite/plugins/pluginFileEnv.d.ts +1 -1
  28. package/dist/esm/node/vite/plugins/pluginFileEnv.js +75 -73
  29. package/dist/esm/node/vite/plugins/pluginNonRunnableDev.d.ts +1 -1
  30. package/dist/esm/node/vite/plugins/pluginNonRunnableDev.js +30 -28
  31. package/dist/esm/node/vite/plugins/pluginPreview.d.ts +1 -1
  32. package/dist/esm/node/vite/plugins/pluginPreview.js +35 -33
  33. package/dist/esm/node/vite/plugins/pluginReplaceGlobalThisConstants.d.ts +9 -0
  34. package/dist/esm/node/vite/plugins/pluginReplaceGlobalThisConstants.js +45 -0
  35. package/dist/esm/node/vite/plugins/pluginReplaceIsClientSide.d.ts +3 -0
  36. package/dist/esm/node/vite/plugins/pluginReplaceIsClientSide.js +89 -0
  37. package/dist/esm/node/vite/plugins/pluginVirtualFiles.d.ts +1 -1
  38. package/dist/esm/node/vite/plugins/pluginVirtualFiles.js +50 -48
  39. package/dist/esm/node/vite/plugins/pluginWorkaroundCssModuleHmr.d.ts +1 -1
  40. package/dist/esm/node/vite/plugins/pluginWorkaroundCssModuleHmr.js +12 -10
  41. package/dist/esm/node/vite/plugins/pluginWorkaroundVite6HmrRegression.d.ts +1 -1
  42. package/dist/esm/node/vite/plugins/pluginWorkaroundVite6HmrRegression.js +26 -24
  43. package/dist/esm/shared/createGlobalContextShared.js +1 -0
  44. package/dist/esm/shared/route/abort.d.ts +22 -11
  45. package/dist/esm/shared/route/abort.js +37 -5
  46. package/dist/esm/utils/PROJECT_VERSION.d.ts +1 -1
  47. package/dist/esm/utils/PROJECT_VERSION.js +1 -1
  48. package/dist/esm/utils/findPackageJson.js +0 -1
  49. package/dist/esm/utils/getViteRPC.js +0 -2
  50. package/dist/esm/utils/requireResolve.js +0 -1
  51. package/package.json +2 -21
  52. package/dist/cjs/__internal/index.js +0 -35
  53. package/dist/cjs/client/runtime-client-routing/globalContext.js +0 -49
  54. package/dist/cjs/client/runtime-client-routing/prefetch/PrefetchSetting.js +0 -2
  55. package/dist/cjs/client/runtime-server-routing/globalContext.js +0 -41
  56. package/dist/cjs/client/runtime-server-routing/onLoad.js +0 -7
  57. package/dist/cjs/client/runtime-server-routing/utils.js +0 -34
  58. package/dist/cjs/client/shared/createGetGlobalContextClient.js +0 -65
  59. package/dist/cjs/client/shared/getJsonSerializedInHtml.js +0 -40
  60. package/dist/cjs/client/shared/preparePageContextForPublicUsageClientShared.js +0 -41
  61. package/dist/cjs/client/shared/utils.js +0 -23
  62. package/dist/cjs/node/api/build.js +0 -24
  63. package/dist/cjs/node/api/context.js +0 -23
  64. package/dist/cjs/node/api/dev.js +0 -18
  65. package/dist/cjs/node/api/index.js +0 -44
  66. package/dist/cjs/node/api/onLoad.js +0 -9
  67. package/dist/cjs/node/api/prepareViteApiCall.js +0 -206
  68. package/dist/cjs/node/api/prerender.js +0 -18
  69. package/dist/cjs/node/api/preview.js +0 -38
  70. package/dist/cjs/node/api/types.js +0 -2
  71. package/dist/cjs/node/api/utils.js +0 -27
  72. package/dist/cjs/node/cli/context.js +0 -17
  73. package/dist/cjs/node/cli/entry.js +0 -121
  74. package/dist/cjs/node/cli/index.js +0 -12
  75. package/dist/cjs/node/cli/onLoad.js +0 -9
  76. package/dist/cjs/node/cli/parseCli.js +0 -95
  77. package/dist/cjs/node/cli/utils.js +0 -24
  78. package/dist/cjs/node/client/router.js +0 -19
  79. package/dist/cjs/node/createPageRenderer.js +0 -132
  80. package/dist/cjs/node/importBuild.js +0 -3
  81. package/dist/cjs/node/prerender/context.js +0 -26
  82. package/dist/cjs/node/prerender/index.js +0 -12
  83. package/dist/cjs/node/prerender/resolvePrerenderConfig.js +0 -66
  84. package/dist/cjs/node/prerender/runPrerender.js +0 -778
  85. package/dist/cjs/node/prerender/runPrerenderEntry.js +0 -55
  86. package/dist/cjs/node/prerender/utils.js +0 -37
  87. package/dist/cjs/node/runtime/globalContext.js +0 -582
  88. package/dist/cjs/node/runtime/index-deprecated.js +0 -33
  89. package/dist/cjs/node/runtime/index.js +0 -74
  90. package/dist/cjs/node/runtime/loggerRuntime.js +0 -17
  91. package/dist/cjs/node/runtime/onLoad.js +0 -29
  92. package/dist/cjs/node/runtime/page-files/setup.js +0 -5
  93. package/dist/cjs/node/runtime/renderPage/analyzePage.js +0 -71
  94. package/dist/cjs/node/runtime/renderPage/assertArguments.js +0 -42
  95. package/dist/cjs/node/runtime/renderPage/createHttpResponse/assertNoInfiniteHttpRedirect.js +0 -51
  96. package/dist/cjs/node/runtime/renderPage/createHttpResponse.js +0 -114
  97. package/dist/cjs/node/runtime/renderPage/createPageContextServerSide.js +0 -59
  98. package/dist/cjs/node/runtime/renderPage/csp.js +0 -47
  99. package/dist/cjs/node/runtime/renderPage/execHookDataAndOnBeforeRender.js +0 -31
  100. package/dist/cjs/node/runtime/renderPage/execHookOnRenderHtml.js +0 -120
  101. package/dist/cjs/node/runtime/renderPage/execHookServer.js +0 -8
  102. package/dist/cjs/node/runtime/renderPage/getCacheControl.js +0 -24
  103. package/dist/cjs/node/runtime/renderPage/getEarlyHints.js +0 -20
  104. package/dist/cjs/node/runtime/renderPage/getHttpResponseBody.js +0 -137
  105. package/dist/cjs/node/runtime/renderPage/getPageAssets/getManifestEntry.js +0 -125
  106. package/dist/cjs/node/runtime/renderPage/getPageAssets/retrievePageAssetsDev.js +0 -86
  107. package/dist/cjs/node/runtime/renderPage/getPageAssets/retrievePageAssetsProd.js +0 -77
  108. package/dist/cjs/node/runtime/renderPage/getPageAssets/sortPageAssetsForEarlyHintsHeader.js +0 -36
  109. package/dist/cjs/node/runtime/renderPage/getPageAssets.js +0 -50
  110. package/dist/cjs/node/runtime/renderPage/handleErrorWithoutErrorPage.js +0 -41
  111. package/dist/cjs/node/runtime/renderPage/handlePageContextRequestUrl.js +0 -68
  112. package/dist/cjs/node/runtime/renderPage/headersResponse.js +0 -48
  113. package/dist/cjs/node/runtime/renderPage/html/injectAssets/getHtmlTags.js +0 -269
  114. package/dist/cjs/node/runtime/renderPage/html/injectAssets/getViteDevScript.js +0 -32
  115. package/dist/cjs/node/runtime/renderPage/html/injectAssets/inferHtmlTags.js +0 -55
  116. package/dist/cjs/node/runtime/renderPage/html/injectAssets/injectAssets__public.js +0 -31
  117. package/dist/cjs/node/runtime/renderPage/html/injectAssets/injectHtmlTags.js +0 -161
  118. package/dist/cjs/node/runtime/renderPage/html/injectAssets/mergeScriptTags.js +0 -73
  119. package/dist/cjs/node/runtime/renderPage/html/injectAssets/sanitizeJson.js +0 -8
  120. package/dist/cjs/node/runtime/renderPage/html/injectAssets.js +0 -93
  121. package/dist/cjs/node/runtime/renderPage/html/propKeys.js +0 -47
  122. package/dist/cjs/node/runtime/renderPage/html/renderHtml.js +0 -245
  123. package/dist/cjs/node/runtime/renderPage/html/serializeContext.js +0 -189
  124. package/dist/cjs/node/runtime/renderPage/html/stream/react-streaming.js +0 -36
  125. package/dist/cjs/node/runtime/renderPage/html/stream.js +0 -829
  126. package/dist/cjs/node/runtime/renderPage/inferMediaType.js +0 -81
  127. package/dist/cjs/node/runtime/renderPage/isFontFallback.js +0 -29
  128. package/dist/cjs/node/runtime/renderPage/isNewError.js +0 -25
  129. package/dist/cjs/node/runtime/renderPage/loadPageConfigsLazyServerSide.js +0 -124
  130. package/dist/cjs/node/runtime/renderPage/log404/index.js +0 -154
  131. package/dist/cjs/node/runtime/renderPage/logErrorHint/errors.js +0 -20
  132. package/dist/cjs/node/runtime/renderPage/logErrorHint.js +0 -200
  133. package/dist/cjs/node/runtime/renderPage/loggerProd.js +0 -34
  134. package/dist/cjs/node/runtime/renderPage/preparePageContextForPublicUsageServer.js +0 -10
  135. package/dist/cjs/node/runtime/renderPage/renderPageAfterRoute.js +0 -83
  136. package/dist/cjs/node/runtime/renderPage/resolveRedirects.js +0 -71
  137. package/dist/cjs/node/runtime/renderPage.js +0 -502
  138. package/dist/cjs/node/runtime/universal-middleware.js +0 -20
  139. package/dist/cjs/node/runtime/utils.js +0 -83
  140. package/dist/cjs/node/runtime-dev/createDevMiddleware.js +0 -27
  141. package/dist/cjs/node/runtime-dev/index.js +0 -42
  142. package/dist/cjs/node/shared/assertV1Design.js +0 -30
  143. package/dist/cjs/node/shared/extractAssetsQuery.js +0 -29
  144. package/dist/cjs/node/shared/getVikeConfigError.js +0 -22
  145. package/dist/cjs/node/shared/isErrorDebug.js +0 -7
  146. package/dist/cjs/node/shared/prependEntriesDir.js +0 -13
  147. package/dist/cjs/node/shared/resolveBase.js +0 -35
  148. package/dist/cjs/node/shared/utils.js +0 -35
  149. package/dist/cjs/node/shared/virtualFileId.js +0 -110
  150. package/dist/cjs/node/vite/index.js +0 -69
  151. package/dist/cjs/node/vite/onLoad.js +0 -21
  152. package/dist/cjs/node/vite/plugins/pluginBaseUrls.js +0 -52
  153. package/dist/cjs/node/vite/plugins/pluginBuild/handleAssetsManifest.js +0 -357
  154. package/dist/cjs/node/vite/plugins/pluginBuild/pluginBuildApp.js +0 -183
  155. package/dist/cjs/node/vite/plugins/pluginBuild/pluginBuildConfig.js +0 -234
  156. package/dist/cjs/node/vite/plugins/pluginBuild/pluginDistFileNames.js +0 -256
  157. package/dist/cjs/node/vite/plugins/pluginBuild/pluginDistPackageJsonFile.js +0 -40
  158. package/dist/cjs/node/vite/plugins/pluginBuild/pluginModuleBanner.js +0 -49
  159. package/dist/cjs/node/vite/plugins/pluginBuild/pluginProdBuildEntry.js +0 -111
  160. package/dist/cjs/node/vite/plugins/pluginBuild/pluginSuppressRollupWarning.js +0 -65
  161. package/dist/cjs/node/vite/plugins/pluginBuild.js +0 -22
  162. package/dist/cjs/node/vite/plugins/pluginCommon/assertResolveAlias.js +0 -88
  163. package/dist/cjs/node/vite/plugins/pluginCommon.js +0 -183
  164. package/dist/cjs/node/vite/plugins/pluginDev/determineFsAllowList.js +0 -28
  165. package/dist/cjs/node/vite/plugins/pluginDev/determineOptimizeDeps.js +0 -163
  166. package/dist/cjs/node/vite/plugins/pluginDev.js +0 -111
  167. package/dist/cjs/node/vite/plugins/pluginEnvVars.js +0 -92
  168. package/dist/cjs/node/vite/plugins/pluginExtractAssets.js +0 -241
  169. package/dist/cjs/node/vite/plugins/pluginExtractExportNames.js +0 -113
  170. package/dist/cjs/node/vite/plugins/pluginFileEnv.js +0 -172
  171. package/dist/cjs/node/vite/plugins/pluginNonRunnableDev.js +0 -70
  172. package/dist/cjs/node/vite/plugins/pluginPreview.js +0 -82
  173. package/dist/cjs/node/vite/plugins/pluginReplaceConstants.js +0 -95
  174. package/dist/cjs/node/vite/plugins/pluginSetGlobalContext.js +0 -51
  175. package/dist/cjs/node/vite/plugins/pluginVirtualFiles/debug.js +0 -5
  176. package/dist/cjs/node/vite/plugins/pluginVirtualFiles/generateVirtualFileGlobalEntry.js +0 -56
  177. package/dist/cjs/node/vite/plugins/pluginVirtualFiles/generateVirtualFileGlobalEntryWithOldDesign.js +0 -190
  178. package/dist/cjs/node/vite/plugins/pluginVirtualFiles/generateVirtualFilePageEntry.js +0 -54
  179. package/dist/cjs/node/vite/plugins/pluginVirtualFiles/getConfigValueSourcesRelevant.js +0 -97
  180. package/dist/cjs/node/vite/plugins/pluginVirtualFiles.js +0 -233
  181. package/dist/cjs/node/vite/plugins/pluginWorkaroundCssModuleHmr.js +0 -17
  182. package/dist/cjs/node/vite/plugins/pluginWorkaroundVite6HmrRegression.js +0 -35
  183. package/dist/cjs/node/vite/shared/addSsrMiddleware.js +0 -60
  184. package/dist/cjs/node/vite/shared/findPageFiles.js +0 -25
  185. package/dist/cjs/node/vite/shared/getAssetsDir.js +0 -10
  186. package/dist/cjs/node/vite/shared/getClientEntrySrcDev.js +0 -42
  187. package/dist/cjs/node/vite/shared/getEnvVarObject.js +0 -37
  188. package/dist/cjs/node/vite/shared/getFilePath.js +0 -172
  189. package/dist/cjs/node/vite/shared/getHttpRequestAsyncStore.js +0 -125
  190. package/dist/cjs/node/vite/shared/getMagicString.js +0 -18
  191. package/dist/cjs/node/vite/shared/getManifestFilePathRelative.js +0 -10
  192. package/dist/cjs/node/vite/shared/getOutDirs.js +0 -146
  193. package/dist/cjs/node/vite/shared/getViteConfigRuntime.js +0 -21
  194. package/dist/cjs/node/vite/shared/isAsset.js +0 -40
  195. package/dist/cjs/node/vite/shared/isViteCliCall.js +0 -83
  196. package/dist/cjs/node/vite/shared/isViteServerSide.js +0 -68
  197. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errBabelReact.js +0 -15
  198. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errBabelSolid.js +0 -15
  199. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errEsbuild.js +0 -38
  200. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errMdx1.js +0 -26
  201. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errMdx2.js +0 -85
  202. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errPostcss.js +0 -30
  203. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errSwc.js +0 -19
  204. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errSwcBig.js +0 -19
  205. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errVueCss.js +0 -29
  206. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errVueHtml.js +0 -13
  207. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errVueJavascript.js +0 -15
  208. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet.js +0 -162
  209. package/dist/cjs/node/vite/shared/loggerNotProd/log.js +0 -102
  210. package/dist/cjs/node/vite/shared/loggerNotProd.js +0 -208
  211. package/dist/cjs/node/vite/shared/loggerVite/removeSuperfluousViteLog.js +0 -26
  212. package/dist/cjs/node/vite/shared/loggerVite.js +0 -54
  213. package/dist/cjs/node/vite/shared/normalizeId.js +0 -9
  214. package/dist/cjs/node/vite/shared/parseEsModule.js +0 -33
  215. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/assertExtensions.js +0 -136
  216. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/configDefinitionsBuiltIn.js +0 -262
  217. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/crawlPlusFiles/ignorePatternsBuiltIn.js +0 -18
  218. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/crawlPlusFiles.js +0 -252
  219. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/filesystemRouting.js +0 -190
  220. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/getConfigFileExport.js +0 -17
  221. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/getPlusFilesAll.js +0 -127
  222. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/loadFileAtConfigTime.js +0 -129
  223. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/pointerImports.js +0 -195
  224. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/resolvePointerImport.js +0 -102
  225. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/transpileAndExecuteFile.js +0 -425
  226. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal.js +0 -1151
  227. package/dist/cjs/node/vite/shared/rollupIsEsm.js +0 -15
  228. package/dist/cjs/node/vite/utils.js +0 -45
  229. package/dist/cjs/package.json +0 -1
  230. package/dist/cjs/shared/NOT_SERIALIZABLE.js +0 -4
  231. package/dist/cjs/shared/RenderErrorPage.js +0 -6
  232. package/dist/cjs/shared/abort.js +0 -16
  233. package/dist/cjs/shared/addIs404ToPageProps.js +0 -18
  234. package/dist/cjs/shared/assertHookReturnedObject.js +0 -21
  235. package/dist/cjs/shared/assertOnBeforeRenderHookReturn.js +0 -21
  236. package/dist/cjs/shared/assertPageContextProvidedByUser.js +0 -20
  237. package/dist/cjs/shared/createGlobalContextShared.js +0 -109
  238. package/dist/cjs/shared/createPageContextShared.js +0 -17
  239. package/dist/cjs/shared/determinePageIdOld.js +0 -11
  240. package/dist/cjs/shared/error-page.js +0 -40
  241. package/dist/cjs/shared/getPageContext.js +0 -6
  242. package/dist/cjs/shared/getPageContextRequestUrl.js +0 -16
  243. package/dist/cjs/shared/getPageContextUrlComputed.js +0 -132
  244. package/dist/cjs/shared/getPageFiles/analyzeClientSide.js +0 -19
  245. package/dist/cjs/shared/getPageFiles/analyzePageClientSide/ClientDependency.js +0 -2
  246. package/dist/cjs/shared/getPageFiles/analyzePageClientSide/analyzeExports.js +0 -50
  247. package/dist/cjs/shared/getPageFiles/analyzePageClientSide/determineClientEntry.js +0 -30
  248. package/dist/cjs/shared/getPageFiles/analyzePageClientSide/getExportNames.js +0 -15
  249. package/dist/cjs/shared/getPageFiles/analyzePageClientSide.js +0 -59
  250. package/dist/cjs/shared/getPageFiles/analyzePageServerSide.js +0 -22
  251. package/dist/cjs/shared/getPageFiles/assert_exports_old_design.js +0 -24
  252. package/dist/cjs/shared/getPageFiles/fileTypes.js +0 -52
  253. package/dist/cjs/shared/getPageFiles/getAllPageIdFiles.js +0 -102
  254. package/dist/cjs/shared/getPageFiles/getPageFileObject.js +0 -56
  255. package/dist/cjs/shared/getPageFiles/parseVirtualFileExportsGlobalEntry.js +0 -100
  256. package/dist/cjs/shared/getPageFiles.js +0 -7
  257. package/dist/cjs/shared/getProxyForPublicUsage.js +0 -56
  258. package/dist/cjs/shared/hooks/execHook.js +0 -147
  259. package/dist/cjs/shared/hooks/getHook.js +0 -173
  260. package/dist/cjs/shared/htmlElementIds.js +0 -5
  261. package/dist/cjs/shared/misc/isServerSideError.js +0 -4
  262. package/dist/cjs/shared/misc/pageContextInitIsPassedToClient.js +0 -4
  263. package/dist/cjs/shared/modifyUrl.js +0 -28
  264. package/dist/cjs/shared/modifyUrlSameOrigin.js +0 -47
  265. package/dist/cjs/shared/page-configs/assertPlusFileExport.js +0 -42
  266. package/dist/cjs/shared/page-configs/findPageConfig.js +0 -10
  267. package/dist/cjs/shared/page-configs/getConfigDefinedAt.js +0 -65
  268. package/dist/cjs/shared/page-configs/getConfigValueBuildTime.js +0 -68
  269. package/dist/cjs/shared/page-configs/getConfigValueRuntime.js +0 -10
  270. package/dist/cjs/shared/page-configs/getConfigValueTyped.js +0 -32
  271. package/dist/cjs/shared/page-configs/getExportPath.js +0 -29
  272. package/dist/cjs/shared/page-configs/helpers.js +0 -27
  273. package/dist/cjs/shared/page-configs/loadAndParseVirtualFilePageEntry.js +0 -25
  274. package/dist/cjs/shared/page-configs/resolveVikeConfigPublic.js +0 -287
  275. package/dist/cjs/shared/page-configs/serialize/PageConfigSerialized.js +0 -2
  276. package/dist/cjs/shared/page-configs/serialize/assertPageConfigsSerialized.js +0 -1
  277. package/dist/cjs/shared/page-configs/serialize/parsePageConfigsSerialized.js +0 -145
  278. package/dist/cjs/shared/page-configs/serialize/serializeConfigValues.js +0 -290
  279. package/dist/cjs/shared/prepareGlobalContextForPublicUsage.js +0 -10
  280. package/dist/cjs/shared/preparePageContextForPublicUsage.js +0 -80
  281. package/dist/cjs/shared/route/abort.js +0 -178
  282. package/dist/cjs/shared/route/debug.js +0 -23
  283. package/dist/cjs/shared/route/deduceRouteStringFromFilesystemPath.js +0 -52
  284. package/dist/cjs/shared/route/execHookGuard.js +0 -37
  285. package/dist/cjs/shared/route/execHookOnBeforeRoute.js +0 -84
  286. package/dist/cjs/shared/route/index.js +0 -107
  287. package/dist/cjs/shared/route/loadPageRoutes.js +0 -197
  288. package/dist/cjs/shared/route/noRouteMatch.js +0 -4
  289. package/dist/cjs/shared/route/resolvePrecedence.js +0 -93
  290. package/dist/cjs/shared/route/resolveRoute.js +0 -20
  291. package/dist/cjs/shared/route/resolveRouteFunction.js +0 -73
  292. package/dist/cjs/shared/route/resolveRouteString.js +0 -153
  293. package/dist/cjs/shared/route/resolveUrlPathname.js +0 -47
  294. package/dist/cjs/shared/route/routing.js +0 -9
  295. package/dist/cjs/shared/route/utils.js +0 -40
  296. package/dist/cjs/shared/utils.js +0 -49
  297. package/dist/cjs/types/Config/ConfigResolved.js +0 -2
  298. package/dist/cjs/types/Config.js +0 -2
  299. package/dist/cjs/types/FilePath.js +0 -2
  300. package/dist/cjs/types/PageConfig.js +0 -2
  301. package/dist/cjs/types/PageContext.js +0 -2
  302. package/dist/cjs/types/VikeGlobalInternal.js +0 -2
  303. package/dist/cjs/types/VikeNamespace.js +0 -2
  304. package/dist/cjs/types/ViteManifest.js +0 -2
  305. package/dist/cjs/types/defineConfig.js +0 -6
  306. package/dist/cjs/types/index-dreprecated.js +0 -3
  307. package/dist/cjs/types/index.js +0 -5
  308. package/dist/cjs/utils/PROJECT_VERSION.js +0 -5
  309. package/dist/cjs/utils/PromiseType.js +0 -2
  310. package/dist/cjs/utils/assert.js +0 -211
  311. package/dist/cjs/utils/assertIsBrowser.js +0 -8
  312. package/dist/cjs/utils/assertIsNotBrowser.js +0 -9
  313. package/dist/cjs/utils/assertKeys.js +0 -27
  314. package/dist/cjs/utils/assertNodeVersion.js +0 -14
  315. package/dist/cjs/utils/assertRoutingType.js +0 -29
  316. package/dist/cjs/utils/assertSetup.js +0 -171
  317. package/dist/cjs/utils/assertSingleInstance.js +0 -110
  318. package/dist/cjs/utils/assertVersion.js +0 -60
  319. package/dist/cjs/utils/capitalizeFirstLetter.js +0 -9
  320. package/dist/cjs/utils/cast.js +0 -6
  321. package/dist/cjs/utils/catchInfiniteLoop.js +0 -34
  322. package/dist/cjs/utils/changeEnumerable.js +0 -8
  323. package/dist/cjs/utils/checkType.js +0 -6
  324. package/dist/cjs/utils/compareString.js +0 -10
  325. package/dist/cjs/utils/createErrorWithCleanStackTrace.js +0 -39
  326. package/dist/cjs/utils/debug.js +0 -178
  327. package/dist/cjs/utils/debugGlob.js +0 -6
  328. package/dist/cjs/utils/deepEqual.js +0 -10
  329. package/dist/cjs/utils/escapeHtml.js +0 -13
  330. package/dist/cjs/utils/escapeRegex.js +0 -7
  331. package/dist/cjs/utils/findFile.js +0 -30
  332. package/dist/cjs/utils/findPackageJson.js +0 -18
  333. package/dist/cjs/utils/formatHintLog.js +0 -17
  334. package/dist/cjs/utils/freezePartial.js +0 -35
  335. package/dist/cjs/utils/genPromise.js +0 -51
  336. package/dist/cjs/utils/getFileExtension.js +0 -16
  337. package/dist/cjs/utils/getGlobalObject.js +0 -15
  338. package/dist/cjs/utils/getMostSimilar.js +0 -68
  339. package/dist/cjs/utils/getPropAccessNotation.js +0 -9
  340. package/dist/cjs/utils/getRandomId.js +0 -14
  341. package/dist/cjs/utils/getTerminalWidth.js +0 -7
  342. package/dist/cjs/utils/getValuePrintable.js +0 -10
  343. package/dist/cjs/utils/getViteRPC.js +0 -79
  344. package/dist/cjs/utils/hasProp.js +0 -50
  345. package/dist/cjs/utils/humanizeTime.js +0 -24
  346. package/dist/cjs/utils/includes.js +0 -13
  347. package/dist/cjs/utils/injectRollupInputs.js +0 -29
  348. package/dist/cjs/utils/isArray.js +0 -7
  349. package/dist/cjs/utils/isArrayOfStrings.js +0 -7
  350. package/dist/cjs/utils/isBrowser.js +0 -8
  351. package/dist/cjs/utils/isCallable.js +0 -6
  352. package/dist/cjs/utils/isDev.js +0 -20
  353. package/dist/cjs/utils/isDocker.js +0 -45
  354. package/dist/cjs/utils/isEqualStringList.js +0 -13
  355. package/dist/cjs/utils/isFilePathAbsoluteFilesystem.js +0 -66
  356. package/dist/cjs/utils/isHtml.js +0 -9
  357. package/dist/cjs/utils/isImportPath.js +0 -21
  358. package/dist/cjs/utils/isNodeJS.js +0 -16
  359. package/dist/cjs/utils/isNonRunnableDev.js +0 -12
  360. package/dist/cjs/utils/isNullish.js +0 -16
  361. package/dist/cjs/utils/isObject.js +0 -6
  362. package/dist/cjs/utils/isObjectOfStrings.js +0 -7
  363. package/dist/cjs/utils/isObjectWithKeys.js +0 -15
  364. package/dist/cjs/utils/isPlainObject.js +0 -19
  365. package/dist/cjs/utils/isPromise.js +0 -7
  366. package/dist/cjs/utils/isPropertyGetter.js +0 -7
  367. package/dist/cjs/utils/isReact.js +0 -23
  368. package/dist/cjs/utils/isRunnableDevEnvironment.js +0 -9
  369. package/dist/cjs/utils/isSameErrorMessage.js +0 -9
  370. package/dist/cjs/utils/isScriptFile.js +0 -67
  371. package/dist/cjs/utils/isVikeReactApp.js +0 -8
  372. package/dist/cjs/utils/isVitest.js +0 -6
  373. package/dist/cjs/utils/joinEnglish.js +0 -14
  374. package/dist/cjs/utils/normalizeHeaders.js +0 -17
  375. package/dist/cjs/utils/objectAssign.js +0 -14
  376. package/dist/cjs/utils/objectAssignSafe.js +0 -7
  377. package/dist/cjs/utils/objectDefineProperty.js +0 -7
  378. package/dist/cjs/utils/objectEntries.js +0 -8
  379. package/dist/cjs/utils/objectEntriesForEach.js +0 -7
  380. package/dist/cjs/utils/objectFilter.js +0 -10
  381. package/dist/cjs/utils/objectFromEntries.js +0 -7
  382. package/dist/cjs/utils/objectKeys.js +0 -9
  383. package/dist/cjs/utils/objectReplace.js +0 -9
  384. package/dist/cjs/utils/onPageVisibilityChange.js +0 -18
  385. package/dist/cjs/utils/pLimit.js +0 -134
  386. package/dist/cjs/utils/parseNpmPackage.js +0 -106
  387. package/dist/cjs/utils/parseUrl-extras.js +0 -110
  388. package/dist/cjs/utils/parseUrl.js +0 -338
  389. package/dist/cjs/utils/path.js +0 -59
  390. package/dist/cjs/utils/pick.js +0 -12
  391. package/dist/cjs/utils/preservePropertyGetters.js +0 -30
  392. package/dist/cjs/utils/redirectHard.js +0 -6
  393. package/dist/cjs/utils/removeEmptyLines.js +0 -9
  394. package/dist/cjs/utils/removeFileExtension.js +0 -6
  395. package/dist/cjs/utils/requireResolve.js +0 -214
  396. package/dist/cjs/utils/rollupSourceMap.js +0 -19
  397. package/dist/cjs/utils/sleep.js +0 -6
  398. package/dist/cjs/utils/slice.js +0 -35
  399. package/dist/cjs/utils/sorter.js +0 -117
  400. package/dist/cjs/utils/stringifyStringArray.js +0 -6
  401. package/dist/cjs/utils/stripAnsi.js +0 -21
  402. package/dist/cjs/utils/styleFileRE.js +0 -6
  403. package/dist/cjs/utils/throttle.js +0 -15
  404. package/dist/cjs/utils/trackLogs.js +0 -31
  405. package/dist/cjs/utils/trimWithAnsi.js +0 -40
  406. package/dist/cjs/utils/truncateString.js +0 -23
  407. package/dist/cjs/utils/unique.js +0 -6
  408. package/dist/cjs/utils/updateType.js +0 -9
  409. package/dist/cjs/utils/urlToFile.js +0 -36
  410. package/dist/cjs/utils/virtualFileId.js +0 -43
  411. package/dist/cjs/utils/warnIfErrorIsNotObject.js +0 -23
  412. package/dist/esm/node/vite/plugins/pluginBuild.d.ts +0 -3
  413. package/dist/esm/node/vite/plugins/pluginBuild.js +0 -20
  414. package/dist/esm/node/vite/plugins/pluginReplaceConstants.d.ts +0 -14
  415. package/dist/esm/node/vite/plugins/pluginReplaceConstants.js +0 -92
@@ -25,85 +25,87 @@ const filterFunction = (id) => {
25
25
  function pluginFileEnv() {
26
26
  let config;
27
27
  let viteDevServer;
28
- return {
29
- name: 'vike:pluginFileEnv',
30
- load: {
31
- filter: filterRolldown,
32
- handler(id, options) {
33
- // In build, we use generateBundle() instead of the load() hook. Using load() works for dynamic imports in dev thanks to Vite's lazy transpiling, but it doesn't work in build because Rollup transpiles any dynamically imported module even if it's never actually imported.
34
- if (!viteDevServer)
35
- return;
36
- if (!isV1Design())
37
- return;
38
- if (skip(id, config.root))
39
- return;
40
- // For `.vue` files: https://github.com/vikejs/vike/issues/1912#issuecomment-2394981475
41
- if (id.endsWith('?direct'))
42
- id = id.slice(0, -1 * '?direct'.length);
43
- const moduleInfo = viteDevServer.moduleGraph.getModuleById(id);
44
- assert(moduleInfo);
45
- const importers = Array.from(moduleInfo.importers)
46
- .map((m) => m.id)
47
- .filter((id) => id !== null);
48
- assertFileEnv(id, isViteServerSide_extraSafe(config, this.environment, options), importers,
49
- // In dev, we only show a warning because we don't want to disrupt when the user plays with settings such as [ssr](https://vike.dev/ssr).
50
- true);
51
- },
52
- },
53
- // In production, we have to use transform() to replace modules with a runtime error because generateBundle() doesn't work for dynamic imports. In production, dynamic imports can only be verified at runtime.
54
- transform: {
55
- filter: filterRolldown,
56
- async handler(code, id, options) {
57
- id = normalizeId(id);
58
- // In dev, only using load() is enough as it also works for dynamic imports (see sibling comment).
59
- if (viteDevServer)
60
- return;
61
- if (skip(id, config.root))
62
- return;
63
- const isServerSide = isViteServerSide_extraSafe(config, this.environment, options);
64
- if (!isWrongEnv(id, isServerSide))
65
- return;
66
- const { importers } = this.getModuleInfo(id);
67
- // Throwing a verbose error doesn't waste client-side KBs as dynamic imports are code split.
68
- const errMsg = getErrorMessage(id, isServerSide, importers, false, true);
69
- // We have to inject empty exports to avoid Rollup complaining about missing exports, see https://gist.github.com/brillout/5ea45776e65bd65100a52ecd7bfda3ff
70
- const { exportNames } = await getExportNames(code);
71
- return rollupSourceMapRemove([
72
- `throw new Error(${JSON.stringify(errMsg)});`,
73
- ...exportNames.map((name) => name === 'default' ? 'export default undefined;' : `export const ${name} = undefined;`),
74
- ].join('\n'));
28
+ return [
29
+ {
30
+ name: 'vike:pluginFileEnv',
31
+ load: {
32
+ filter: filterRolldown,
33
+ handler(id, options) {
34
+ // In build, we use generateBundle() instead of the load() hook. Using load() works for dynamic imports in dev thanks to Vite's lazy transpiling, but it doesn't work in build because Rollup transpiles any dynamically imported module even if it's never actually imported.
35
+ if (!viteDevServer)
36
+ return;
37
+ if (!isV1Design())
38
+ return;
39
+ if (skip(id, config.root))
40
+ return;
41
+ // For `.vue` files: https://github.com/vikejs/vike/issues/1912#issuecomment-2394981475
42
+ if (id.endsWith('?direct'))
43
+ id = id.slice(0, -1 * '?direct'.length);
44
+ const moduleInfo = viteDevServer.moduleGraph.getModuleById(id);
45
+ assert(moduleInfo);
46
+ const importers = Array.from(moduleInfo.importers)
47
+ .map((m) => m.id)
48
+ .filter((id) => id !== null);
49
+ assertFileEnv(id, isViteServerSide_extraSafe(config, this.environment, options), importers,
50
+ // In dev, we only show a warning because we don't want to disrupt when the user plays with settings such as [ssr](https://vike.dev/ssr).
51
+ true);
52
+ },
75
53
  },
76
- },
77
- generateBundle: {
78
- handler() {
79
- Array.from(this.getModuleIds())
80
- .filter(filterFunction)
81
- .filter((id) => !skip(id, config.root))
82
- .forEach((moduleId) => {
83
- const mod = this.getModuleInfo(moduleId);
84
- const { importers } = mod;
85
- if (importers.length === 0) {
86
- // Dynamic imports can only be verified at runtime
87
- /* This assertion can fail: https://github.com/vikejs/vike/issues/2227
88
- assert(dynamicImporters.length > 0)
89
- */
54
+ // In production, we have to use transform() to replace modules with a runtime error because generateBundle() doesn't work for dynamic imports. In production, dynamic imports can only be verified at runtime.
55
+ transform: {
56
+ filter: filterRolldown,
57
+ async handler(code, id, options) {
58
+ id = normalizeId(id);
59
+ // In dev, only using load() is enough as it also works for dynamic imports (see sibling comment).
60
+ if (viteDevServer)
61
+ return;
62
+ if (skip(id, config.root))
63
+ return;
64
+ const isServerSide = isViteServerSide_extraSafe(config, this.environment, options);
65
+ if (!isWrongEnv(id, isServerSide))
90
66
  return;
91
- }
92
- assertFileEnv(moduleId, isViteServerSide(config, this.environment), importers, false);
93
- });
67
+ const { importers } = this.getModuleInfo(id);
68
+ // Throwing a verbose error doesn't waste client-side KBs as dynamic imports are code split.
69
+ const errMsg = getErrorMessage(id, isServerSide, importers, false, true);
70
+ // We have to inject empty exports to avoid Rollup complaining about missing exports, see https://gist.github.com/brillout/5ea45776e65bd65100a52ecd7bfda3ff
71
+ const { exportNames } = await getExportNames(code);
72
+ return rollupSourceMapRemove([
73
+ `throw new Error(${JSON.stringify(errMsg)});`,
74
+ ...exportNames.map((name) => name === 'default' ? 'export default undefined;' : `export const ${name} = undefined;`),
75
+ ].join('\n'));
76
+ },
94
77
  },
95
- },
96
- configResolved: {
97
- handler(config_) {
98
- config = config_;
78
+ generateBundle: {
79
+ handler() {
80
+ Array.from(this.getModuleIds())
81
+ .filter(filterFunction)
82
+ .filter((id) => !skip(id, config.root))
83
+ .forEach((moduleId) => {
84
+ const mod = this.getModuleInfo(moduleId);
85
+ const { importers } = mod;
86
+ if (importers.length === 0) {
87
+ // Dynamic imports can only be verified at runtime
88
+ /* This assertion can fail: https://github.com/vikejs/vike/issues/2227
89
+ assert(dynamicImporters.length > 0)
90
+ */
91
+ return;
92
+ }
93
+ assertFileEnv(moduleId, isViteServerSide(config, this.environment), importers, false);
94
+ });
95
+ },
99
96
  },
100
- },
101
- configureServer: {
102
- handler(viteDevServer_) {
103
- viteDevServer = viteDevServer_;
97
+ configResolved: {
98
+ handler(config_) {
99
+ config = config_;
100
+ },
101
+ },
102
+ configureServer: {
103
+ handler(viteDevServer_) {
104
+ viteDevServer = viteDevServer_;
105
+ },
104
106
  },
105
107
  },
106
- };
108
+ ];
107
109
  function assertFileEnv(moduleId, isServerSide, importers, onlyWarn) {
108
110
  if (!isWrongEnv(moduleId, isServerSide))
109
111
  return;
@@ -23,4 +23,4 @@ declare global {
23
23
  var __VIKE__DYNAMIC_IMPORT: (module: string) => Promise<Record<string, unknown>>;
24
24
  var __VIKE__IS_NON_RUNNABLE_DEV: undefined | boolean;
25
25
  }
26
- declare function pluginNonRunnableDev(): Plugin;
26
+ declare function pluginNonRunnableDev(): Plugin[];
@@ -30,38 +30,40 @@ function getViteRpcFunctions(viteDevServer) {
30
30
  }
31
31
  function pluginNonRunnableDev() {
32
32
  let config;
33
- return {
34
- name: 'vike:pluginNonRunnableDev',
35
- apply: (_, configEnv) => isDevCheck(configEnv),
36
- configureServer: {
37
- handler(viteDevServer) {
38
- createViteRPC(viteDevServer, getViteRpcFunctions);
33
+ return [
34
+ {
35
+ name: 'vike:pluginNonRunnableDev',
36
+ apply: (_, configEnv) => isDevCheck(configEnv),
37
+ configureServer: {
38
+ handler(viteDevServer) {
39
+ createViteRPC(viteDevServer, getViteRpcFunctions);
40
+ },
39
41
  },
40
- },
41
- configResolved: {
42
- handler(config_) {
43
- config = config_;
42
+ configResolved: {
43
+ handler(config_) {
44
+ config = config_;
45
+ },
44
46
  },
45
- },
46
- transform: {
47
- filter: filterRolldown,
48
- handler(code, id) {
49
- assert(config._isDev);
50
- assert(filterFunction(id));
51
- const idWithoutQuery = getIdWithoutQuery(id);
52
- if (isRunnableDevEnvironment(this.environment))
53
- return;
54
- const { magicString, getMagicStringResult } = getMagicString(code, id);
55
- if (idWithoutQuery === distFileIsNonRunnableDev) {
56
- magicString.replaceAll('__VIKE__IS_NON_RUNNABLE_DEV', JSON.stringify(true));
57
- }
58
- if (idWithoutQuery === distFileGlobalContext) {
59
- magicString.replaceAll('__VIKE__DYNAMIC_IMPORT', 'import');
60
- }
61
- return getMagicStringResult();
47
+ transform: {
48
+ filter: filterRolldown,
49
+ handler(code, id) {
50
+ assert(config._isDev);
51
+ assert(filterFunction(id));
52
+ const idWithoutQuery = getIdWithoutQuery(id);
53
+ if (isRunnableDevEnvironment(this.environment))
54
+ return;
55
+ const { magicString, getMagicStringResult } = getMagicString(code, id);
56
+ if (idWithoutQuery === distFileIsNonRunnableDev) {
57
+ magicString.replaceAll('__VIKE__IS_NON_RUNNABLE_DEV', JSON.stringify(true));
58
+ }
59
+ if (idWithoutQuery === distFileGlobalContext) {
60
+ magicString.replaceAll('__VIKE__DYNAMIC_IMPORT', 'import');
61
+ }
62
+ return getMagicStringResult();
63
+ },
62
64
  },
63
65
  },
64
- };
66
+ ];
65
67
  }
66
68
  function getIdWithoutQuery(id) {
67
69
  return id.split('?')[0];
@@ -1,3 +1,3 @@
1
1
  export { pluginPreview };
2
2
  import type { Plugin } from 'vite';
3
- declare function pluginPreview(): Plugin;
3
+ declare function pluginPreview(): Plugin[];
@@ -11,43 +11,45 @@ import { getVikeConfigInternal } from '../shared/resolveVikeConfigInternal.js';
11
11
  function pluginPreview() {
12
12
  let config;
13
13
  let vikeConfig;
14
- return {
15
- name: 'vike:pluginPreview',
16
- apply: applyPreview,
17
- config: {
18
- handler() {
19
- return {
20
- appType: 'custom',
21
- };
14
+ return [
15
+ {
16
+ name: 'vike:pluginPreview',
17
+ apply: applyPreview,
18
+ config: {
19
+ handler() {
20
+ return {
21
+ appType: 'custom',
22
+ };
23
+ },
22
24
  },
23
- },
24
- configResolved: {
25
- async handler(config_) {
26
- config = config_;
27
- vikeConfig = await getVikeConfigInternal();
28
- logDockerHint(config.preview.host);
29
- // vikeConfig = await getVikeConfig(config)
25
+ configResolved: {
26
+ async handler(config_) {
27
+ config = config_;
28
+ vikeConfig = await getVikeConfigInternal();
29
+ logDockerHint(config.preview.host);
30
+ // vikeConfig = await getVikeConfig(config)
31
+ },
30
32
  },
31
- },
32
- configurePreviewServer: {
33
- handler(server) {
34
- /* - Couldn't make `appType: 'mpa'` work as of npm:@brillout/vite@5.0.0-beta.14.0426910c
35
- - This ugly hack to set appType for preview won't be need once https://github.com/vitejs/vite/pull/14855 is merged.
36
- config.appType = 'mpa'
37
- */
38
- return () => {
39
- const { isPrerenderingEnabledForAllPages, isPrerenderingEnabled } = vikeConfig.prerenderContext;
40
- assertDist(isPrerenderingEnabledForAllPages);
41
- // We cannot re-use Vite's static middleware: https://github.com/vitejs/vite/pull/14836#issuecomment-1788540300
42
- addStaticAssetsMiddleware(server.middlewares);
43
- if (!isPrerenderingEnabledForAllPages) {
44
- addSsrMiddleware(server.middlewares, config, true, isPrerenderingEnabled);
45
- }
46
- addStatic404Middleware(server.middlewares);
47
- };
33
+ configurePreviewServer: {
34
+ handler(server) {
35
+ /* - Couldn't make `appType: 'mpa'` work as of npm:@brillout/vite@5.0.0-beta.14.0426910c
36
+ - This ugly hack to set appType for preview won't be need once https://github.com/vitejs/vite/pull/14855 is merged.
37
+ config.appType = 'mpa'
38
+ */
39
+ return () => {
40
+ const { isPrerenderingEnabledForAllPages, isPrerenderingEnabled } = vikeConfig.prerenderContext;
41
+ assertDist(isPrerenderingEnabledForAllPages);
42
+ // We cannot re-use Vite's static middleware: https://github.com/vitejs/vite/pull/14836#issuecomment-1788540300
43
+ addStaticAssetsMiddleware(server.middlewares);
44
+ if (!isPrerenderingEnabledForAllPages) {
45
+ addSsrMiddleware(server.middlewares, config, true, isPrerenderingEnabled);
46
+ }
47
+ addStatic404Middleware(server.middlewares);
48
+ };
49
+ },
48
50
  },
49
51
  },
50
- };
52
+ ];
51
53
  function assertDist(isPrerenderingEnabledForAllPages) {
52
54
  const { outDirRoot, outDirClient, outDirServer } = getOutDirs(config, undefined);
53
55
  const dirS = [outDirRoot, outDirClient];
@@ -0,0 +1,9 @@
1
+ export { pluginReplaceGlobalThisConstants };
2
+ import type { Plugin } from 'vite';
3
+ declare global {
4
+ /** Like `import.meta.env.DEV` but works inside `node_modules/` (even if package is `ssr.external`). The value `undefined` is to be interpreted as `false`. */
5
+ var __VIKE__IS_DEV: boolean | undefined;
6
+ /** Like `import.meta.env.SSR` but works inside `node_modules/` (even if package is `ssr.external`). The value `undefined` is to be interpreted as `false`. */
7
+ var __VIKE__IS_CLIENT: boolean | undefined;
8
+ }
9
+ declare function pluginReplaceGlobalThisConstants(): Plugin[];
@@ -0,0 +1,45 @@
1
+ export { pluginReplaceGlobalThisConstants };
2
+ import { assert } from '../utils.js';
3
+ // === Explanation: globalThis.__VIKE__IS_DEV
4
+ // If client-side => always noExternal => globalThis.__VIKE__IS_DEV is set by the `define` config below.
5
+ // If server-side:
6
+ // If ssr.noExternal => globalThis.__VIKE__IS_DEV is set by the `define` config below.
7
+ // If `ssr.external`:
8
+ // If not RunnableDevEnvironment (e.g. `@cloudflare/vite-plugin`) => always ssr.noExternal => globalThis.__VIKE__IS_DEV is set by the `define` config below.
9
+ // If RunnableDevEnvironment (the default setup):
10
+ // If dev/preview/pre-rendering => Vite is loaded, and server and Vite run inside the same process (because RunnableDevEnvironment) => globalThis.__VIKE__IS_DEV is set by the assignment below.
11
+ // If production => Vite isn't loaded => globalThis.__VIKE__IS_DEV is `undefined` (it's never set) => value `undefined` is to be interpreted as `false`.
12
+ // === Explanation: globalThis.__VIKE__IS_CLIENT
13
+ // If client-side => always noExternal => globalThis.__VIKE__IS_CLIENT is set to `true` by the `define` config below.
14
+ // If server-side => globalThis.__VIKE__IS_CLIENT is either `false` or `undefined` (the value `undefined` is to be interpreted as `false`).
15
+ globalThis.__VIKE__IS_CLIENT = false;
16
+ function pluginReplaceGlobalThisConstants() {
17
+ return [
18
+ {
19
+ name: 'vike:pluginReplaceGlobalThisConstants',
20
+ config: {
21
+ handler(config) {
22
+ const isDev = config._isDev;
23
+ assert(typeof isDev === 'boolean');
24
+ globalThis.__VIKE__IS_DEV = isDev;
25
+ return {
26
+ define: {
27
+ 'globalThis.__VIKE__IS_DEV': JSON.stringify(isDev),
28
+ },
29
+ };
30
+ },
31
+ },
32
+ configEnvironment: {
33
+ handler(name, config) {
34
+ const consumer = config.consumer ?? (name === 'client' ? 'client' : 'server');
35
+ const isClientSide = consumer === 'client';
36
+ return {
37
+ define: {
38
+ 'globalThis.__VIKE__IS_CLIENT': JSON.stringify(isClientSide),
39
+ },
40
+ };
41
+ },
42
+ },
43
+ },
44
+ ];
45
+ }
@@ -0,0 +1,3 @@
1
+ export { pluginReplaceIsClientSide };
2
+ import type { Plugin } from 'vite';
3
+ declare function pluginReplaceIsClientSide(): Plugin[];
@@ -0,0 +1,89 @@
1
+ export { pluginReplaceIsClientSide };
2
+ import { assert, assertPosixPath } from '../utils.js';
3
+ import { normalizeId } from '../shared/normalizeId.js';
4
+ import { isViteServerSide_extraSafe } from '../shared/isViteServerSide.js';
5
+ import { getMagicString } from '../shared/getMagicString.js';
6
+ const constantsIsClientSide = [
7
+ //
8
+ 'pageContext.isClientSide',
9
+ 'globalContext.isClientSide',
10
+ 'pageContext.globalContext.isClientSide',
11
+ ];
12
+ const skipNodeModules = '/node_modules/';
13
+ const skipIrrelevant = 'Context.isClientSide';
14
+ assert(constantsIsClientSide.every((constant) => constant.endsWith(skipIrrelevant)));
15
+ const filterRolldown = {
16
+ id: {
17
+ exclude: `**${skipNodeModules}**`,
18
+ },
19
+ code: {
20
+ include: skipIrrelevant,
21
+ },
22
+ };
23
+ const filterFunction = (id, code) => {
24
+ if (id.includes(skipNodeModules))
25
+ return false;
26
+ if (!code.includes(skipIrrelevant))
27
+ return false;
28
+ return true;
29
+ };
30
+ function pluginReplaceIsClientSide() {
31
+ let config;
32
+ return [
33
+ {
34
+ name: 'vike:pluginReplaceIsClientSide',
35
+ enforce: 'post',
36
+ apply: 'build',
37
+ configResolved: {
38
+ handler(config_) {
39
+ config = config_;
40
+ },
41
+ },
42
+ transform: {
43
+ filter: filterRolldown,
44
+ handler(code, id, options) {
45
+ id = normalizeId(id);
46
+ assertPosixPath(id);
47
+ assertPosixPath(config.root);
48
+ if (!id.startsWith(config.root))
49
+ return; // skip linked dependencies
50
+ assert(filterFunction(id, code));
51
+ const isBuild = config.command === 'build';
52
+ assert(isBuild);
53
+ // Used by vike.dev
54
+ // https://github.com/vikejs/vike/blob/08a1ff55c80ddca64ca6d4417fefd45fefeb4ffb/docs/vite.config.ts#L12
55
+ // @ts-expect-error
56
+ if (config._skipVikeReplaceConstants?.(id))
57
+ return;
58
+ const { magicString, getMagicStringResult } = getMagicString(code, id);
59
+ if (constantsIsClientSide.some((c) => code.includes(c))) {
60
+ const replacement = !isViteServerSide_extraSafe(config, this.environment, options);
61
+ const regExp = getConstantRegExp(constantsIsClientSide);
62
+ magicString.replaceAll(regExp, JSON.stringify(replacement));
63
+ }
64
+ if (!magicString.hasChanged())
65
+ return null;
66
+ return getMagicStringResult();
67
+ },
68
+ },
69
+ },
70
+ ];
71
+ }
72
+ // Copied & adapted from:
73
+ // https://github.com/rollup/plugins/blob/e1a5ef99f1578eb38a8c87563cb9651db228f3bd/packages/replace/src/index.js#L57-L67
74
+ function getConstantRegExp(constants) {
75
+ const keys = Object.values(constants).sort(longest).map(escape);
76
+ // const delimiters = ['\\b', '\\b(?!\\.)']
77
+ const delimiters = ['(?<!\\.)\\b', '\\b(?!\\.)']; // Improved version, to avoid replacing `globalContext.pageContext.isClientSide` with `globalContext.false`
78
+ const preventAssignment = false; // Let's try without it first, let's see if a user complains
79
+ const lookbehind = preventAssignment ? '(?<!\\b(?:const|let|var)\\s*)' : '';
80
+ const lookahead = preventAssignment ? '(?!\\s*=[^=])' : '';
81
+ const pattern = new RegExp(`${lookbehind}${delimiters[0]}(${keys.join('|')})${delimiters[1]}${lookahead}`, 'g');
82
+ return pattern;
83
+ }
84
+ function escape(str) {
85
+ return str.replace(/[-[\]/{}()*+?.\\^$|]/g, '\\$&');
86
+ }
87
+ function longest(a, b) {
88
+ return b.length - a.length;
89
+ }
@@ -1,3 +1,3 @@
1
1
  export { pluginVirtualFiles };
2
2
  import type { Plugin } from 'vite';
3
- declare function pluginVirtualFiles(): Plugin;
3
+ declare function pluginVirtualFiles(): Plugin[];
@@ -20,61 +20,63 @@ const filterRolldown = {
20
20
  const filterFunction = (id) => isVirtualFileId(id);
21
21
  function pluginVirtualFiles() {
22
22
  let config;
23
- return {
24
- name: 'vike:pluginVirtualFiles',
25
- configResolved: {
26
- async handler(config_) {
27
- config = config_;
28
- // TO-DO/next-major-release: remove
29
- if (!isV1Design())
30
- config.experimental.importGlobRestoreExtension = true;
23
+ return [
24
+ {
25
+ name: 'vike:pluginVirtualFiles',
26
+ configResolved: {
27
+ async handler(config_) {
28
+ config = config_;
29
+ // TO-DO/next-major-release: remove
30
+ if (!isV1Design())
31
+ config.experimental.importGlobRestoreExtension = true;
32
+ },
31
33
  },
32
- },
33
- resolveId: {
34
- filter: filterRolldown,
35
- handler(id) {
36
- assert(filterFunction(id));
37
- return addVirtualFileIdPrefix(id);
38
- },
39
- },
40
- handleHotUpdate: {
41
- async handler(ctx) {
42
- try {
43
- return await handleHotUpdate(ctx, config);
44
- }
45
- catch (err) {
46
- // Vite swallows errors thrown by handleHotUpdate()
47
- console.error(err);
48
- throw err;
49
- }
34
+ resolveId: {
35
+ filter: filterRolldown,
36
+ handler(id) {
37
+ assert(filterFunction(id));
38
+ return addVirtualFileIdPrefix(id);
39
+ },
50
40
  },
51
- },
52
- load: {
53
- filter: filterRolldown,
54
- async handler(id, options) {
55
- assert(filterFunction(id));
56
- id = removeVirtualFileIdPrefix(id);
57
- const isDev = config._isDev;
58
- assert(typeof isDev === 'boolean');
59
- const idParsed = parseVirtualFileId(id);
60
- if (idParsed) {
61
- if (idParsed.type === 'page-entry') {
62
- const code = await generateVirtualFilePageEntry(id, isDev);
63
- return code;
41
+ handleHotUpdate: {
42
+ async handler(ctx) {
43
+ try {
44
+ return await handleHotUpdate(ctx, config);
64
45
  }
65
- if (idParsed.type === 'global-entry') {
66
- const code = await generateVirtualFileGlobalEntryWithOldDesign(id, options, config, this.environment, isDev);
67
- return code;
46
+ catch (err) {
47
+ // Vite swallows errors thrown by handleHotUpdate()
48
+ console.error(err);
49
+ throw err;
68
50
  }
69
- }
51
+ },
70
52
  },
71
- },
72
- configureServer: {
73
- handler(server) {
74
- handleFileAddRemove(server, config);
53
+ load: {
54
+ filter: filterRolldown,
55
+ async handler(id, options) {
56
+ assert(filterFunction(id));
57
+ id = removeVirtualFileIdPrefix(id);
58
+ const isDev = config._isDev;
59
+ assert(typeof isDev === 'boolean');
60
+ const idParsed = parseVirtualFileId(id);
61
+ if (idParsed) {
62
+ if (idParsed.type === 'page-entry') {
63
+ const code = await generateVirtualFilePageEntry(id, isDev);
64
+ return code;
65
+ }
66
+ if (idParsed.type === 'global-entry') {
67
+ const code = await generateVirtualFileGlobalEntryWithOldDesign(id, options, config, this.environment, isDev);
68
+ return code;
69
+ }
70
+ }
71
+ },
72
+ },
73
+ configureServer: {
74
+ handler(server) {
75
+ handleFileAddRemove(server, config);
76
+ },
75
77
  },
76
78
  },
77
- };
79
+ ];
78
80
  }
79
81
  function handleFileAddRemove(server, config) {
80
82
  server.watcher.prependListener('add', (f) => listener(f, false));
@@ -1,3 +1,3 @@
1
1
  export { pluginWorkaroundCssModuleHmr };
2
2
  import type { Plugin } from 'vite';
3
- declare function pluginWorkaroundCssModuleHmr(): Plugin;
3
+ declare function pluginWorkaroundCssModuleHmr(): Plugin[];
@@ -1,15 +1,17 @@
1
1
  export { pluginWorkaroundCssModuleHmr };
2
2
  function pluginWorkaroundCssModuleHmr() {
3
- return {
4
- name: 'vike:pluginWorkaroundCssModuleHmr',
5
- handleHotUpdate: {
6
- handler(ctx) {
7
- // prevent full reload due to non self-accepting css module.
8
- // here only "?direct" module should be filtered out as it doesn't have a parent module.
9
- if (ctx.file.includes('module.css')) {
10
- return ctx.modules.filter((m) => !m.id?.includes('?direct'));
11
- }
3
+ return [
4
+ {
5
+ name: 'vike:pluginWorkaroundCssModuleHmr',
6
+ handleHotUpdate: {
7
+ handler(ctx) {
8
+ // prevent full reload due to non self-accepting css module.
9
+ // here only "?direct" module should be filtered out as it doesn't have a parent module.
10
+ if (ctx.file.includes('module.css')) {
11
+ return ctx.modules.filter((m) => !m.id?.includes('?direct'));
12
+ }
13
+ },
12
14
  },
13
15
  },
14
- };
16
+ ];
15
17
  }
@@ -1,3 +1,3 @@
1
1
  export { pluginWorkaroundVite6HmrRegression };
2
2
  import type { Plugin } from 'vite';
3
- declare function pluginWorkaroundVite6HmrRegression(): Plugin;
3
+ declare function pluginWorkaroundVite6HmrRegression(): Plugin[];