vike 0.4.239-commit-33e55d4 → 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 (420) 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.d.ts +2 -2
  5. package/dist/esm/client/runtime-client-routing/renderPageClientSide.js +15 -1
  6. package/dist/esm/client/runtime-server-routing/createPageContextClientSide.d.ts +1 -1
  7. package/dist/esm/client/runtime-server-routing/entry.js +5 -0
  8. package/dist/esm/client/runtime-server-routing/globalContext.d.ts +2 -2
  9. package/dist/esm/client/runtime-server-routing/globalContext.js +7 -3
  10. package/dist/esm/client/shared/createGetGlobalContextClient.d.ts +4 -3
  11. package/dist/esm/client/shared/createGetGlobalContextClient.js +38 -34
  12. package/dist/esm/node/vite/index.js +34 -15
  13. package/dist/esm/node/vite/plugins/pluginBaseUrls.d.ts +1 -1
  14. package/dist/esm/node/vite/plugins/pluginBaseUrls.js +37 -35
  15. package/dist/esm/node/vite/plugins/pluginBuild/handleAssetsManifest.d.ts +4 -0
  16. package/dist/esm/node/vite/plugins/pluginBuild/handleAssetsManifest.js +21 -6
  17. package/dist/esm/node/vite/plugins/pluginBuild/pluginBuildConfig.js +16 -4
  18. package/dist/esm/node/vite/plugins/pluginBuild/pluginDistFileNames.d.ts +1 -1
  19. package/dist/esm/node/vite/plugins/pluginBuild/pluginDistFileNames.js +82 -80
  20. package/dist/esm/node/vite/plugins/pluginBuild/pluginDistPackageJsonFile.d.ts +1 -1
  21. package/dist/esm/node/vite/plugins/pluginBuild/pluginDistPackageJsonFile.js +23 -21
  22. package/dist/esm/node/vite/plugins/pluginBuild/pluginModuleBanner.d.ts +1 -1
  23. package/dist/esm/node/vite/plugins/pluginBuild/pluginModuleBanner.js +38 -36
  24. package/dist/esm/node/vite/plugins/pluginBuild/pluginSuppressRollupWarning.d.ts +1 -1
  25. package/dist/esm/node/vite/plugins/pluginBuild/pluginSuppressRollupWarning.js +26 -24
  26. package/dist/esm/node/vite/plugins/pluginCommon.js +1 -1
  27. package/dist/esm/node/vite/plugins/pluginDev/determineFsAllowList.js +0 -1
  28. package/dist/esm/node/vite/plugins/pluginEnvVars.d.ts +1 -1
  29. package/dist/esm/node/vite/plugins/pluginEnvVars.js +87 -65
  30. package/dist/esm/node/vite/plugins/pluginExtractExportNames.d.ts +1 -1
  31. package/dist/esm/node/vite/plugins/pluginExtractExportNames.js +29 -27
  32. package/dist/esm/node/vite/plugins/pluginFileEnv.d.ts +1 -1
  33. package/dist/esm/node/vite/plugins/pluginFileEnv.js +75 -73
  34. package/dist/esm/node/vite/plugins/pluginNonRunnableDev.d.ts +1 -1
  35. package/dist/esm/node/vite/plugins/pluginNonRunnableDev.js +30 -28
  36. package/dist/esm/node/vite/plugins/pluginPreview.d.ts +1 -1
  37. package/dist/esm/node/vite/plugins/pluginPreview.js +35 -33
  38. package/dist/esm/node/vite/plugins/pluginReplaceGlobalThisConstants.d.ts +9 -0
  39. package/dist/esm/node/vite/plugins/pluginReplaceGlobalThisConstants.js +45 -0
  40. package/dist/esm/node/vite/plugins/pluginReplaceIsClientSide.d.ts +3 -0
  41. package/dist/esm/node/vite/plugins/pluginReplaceIsClientSide.js +89 -0
  42. package/dist/esm/node/vite/plugins/pluginVirtualFiles.d.ts +1 -1
  43. package/dist/esm/node/vite/plugins/pluginVirtualFiles.js +50 -48
  44. package/dist/esm/node/vite/plugins/pluginWorkaroundCssModuleHmr.d.ts +1 -1
  45. package/dist/esm/node/vite/plugins/pluginWorkaroundCssModuleHmr.js +12 -10
  46. package/dist/esm/node/vite/plugins/pluginWorkaroundVite6HmrRegression.d.ts +1 -1
  47. package/dist/esm/node/vite/plugins/pluginWorkaroundVite6HmrRegression.js +26 -24
  48. package/dist/esm/shared/createGlobalContextShared.js +1 -0
  49. package/dist/esm/shared/route/abort.d.ts +22 -11
  50. package/dist/esm/shared/route/abort.js +37 -5
  51. package/dist/esm/utils/PROJECT_VERSION.d.ts +1 -1
  52. package/dist/esm/utils/PROJECT_VERSION.js +1 -1
  53. package/dist/esm/utils/findPackageJson.js +0 -1
  54. package/dist/esm/utils/getViteRPC.js +0 -2
  55. package/dist/esm/utils/requireResolve.js +0 -1
  56. package/package.json +3 -22
  57. package/dist/cjs/__internal/index.js +0 -35
  58. package/dist/cjs/client/runtime-client-routing/globalContext.js +0 -49
  59. package/dist/cjs/client/runtime-client-routing/prefetch/PrefetchSetting.js +0 -2
  60. package/dist/cjs/client/runtime-server-routing/globalContext.js +0 -41
  61. package/dist/cjs/client/runtime-server-routing/onLoad.js +0 -7
  62. package/dist/cjs/client/runtime-server-routing/utils.js +0 -34
  63. package/dist/cjs/client/shared/createGetGlobalContextClient.js +0 -65
  64. package/dist/cjs/client/shared/getJsonSerializedInHtml.js +0 -40
  65. package/dist/cjs/client/shared/preparePageContextForPublicUsageClientShared.js +0 -41
  66. package/dist/cjs/client/shared/utils.js +0 -23
  67. package/dist/cjs/node/api/build.js +0 -24
  68. package/dist/cjs/node/api/context.js +0 -23
  69. package/dist/cjs/node/api/dev.js +0 -18
  70. package/dist/cjs/node/api/index.js +0 -44
  71. package/dist/cjs/node/api/onLoad.js +0 -9
  72. package/dist/cjs/node/api/prepareViteApiCall.js +0 -206
  73. package/dist/cjs/node/api/prerender.js +0 -18
  74. package/dist/cjs/node/api/preview.js +0 -38
  75. package/dist/cjs/node/api/types.js +0 -2
  76. package/dist/cjs/node/api/utils.js +0 -27
  77. package/dist/cjs/node/cli/context.js +0 -17
  78. package/dist/cjs/node/cli/entry.js +0 -121
  79. package/dist/cjs/node/cli/index.js +0 -12
  80. package/dist/cjs/node/cli/onLoad.js +0 -9
  81. package/dist/cjs/node/cli/parseCli.js +0 -95
  82. package/dist/cjs/node/cli/utils.js +0 -24
  83. package/dist/cjs/node/client/router.js +0 -19
  84. package/dist/cjs/node/createPageRenderer.js +0 -132
  85. package/dist/cjs/node/importBuild.js +0 -3
  86. package/dist/cjs/node/prerender/context.js +0 -26
  87. package/dist/cjs/node/prerender/index.js +0 -12
  88. package/dist/cjs/node/prerender/resolvePrerenderConfig.js +0 -66
  89. package/dist/cjs/node/prerender/runPrerender.js +0 -778
  90. package/dist/cjs/node/prerender/runPrerenderEntry.js +0 -55
  91. package/dist/cjs/node/prerender/utils.js +0 -37
  92. package/dist/cjs/node/runtime/globalContext.js +0 -582
  93. package/dist/cjs/node/runtime/index-deprecated.js +0 -33
  94. package/dist/cjs/node/runtime/index.js +0 -74
  95. package/dist/cjs/node/runtime/loggerRuntime.js +0 -17
  96. package/dist/cjs/node/runtime/onLoad.js +0 -29
  97. package/dist/cjs/node/runtime/page-files/setup.js +0 -5
  98. package/dist/cjs/node/runtime/renderPage/analyzePage.js +0 -71
  99. package/dist/cjs/node/runtime/renderPage/assertArguments.js +0 -42
  100. package/dist/cjs/node/runtime/renderPage/createHttpResponse/assertNoInfiniteHttpRedirect.js +0 -51
  101. package/dist/cjs/node/runtime/renderPage/createHttpResponse.js +0 -114
  102. package/dist/cjs/node/runtime/renderPage/createPageContextServerSide.js +0 -59
  103. package/dist/cjs/node/runtime/renderPage/csp.js +0 -47
  104. package/dist/cjs/node/runtime/renderPage/execHookDataAndOnBeforeRender.js +0 -31
  105. package/dist/cjs/node/runtime/renderPage/execHookOnRenderHtml.js +0 -120
  106. package/dist/cjs/node/runtime/renderPage/execHookServer.js +0 -8
  107. package/dist/cjs/node/runtime/renderPage/getCacheControl.js +0 -24
  108. package/dist/cjs/node/runtime/renderPage/getEarlyHints.js +0 -20
  109. package/dist/cjs/node/runtime/renderPage/getHttpResponseBody.js +0 -137
  110. package/dist/cjs/node/runtime/renderPage/getPageAssets/getManifestEntry.js +0 -125
  111. package/dist/cjs/node/runtime/renderPage/getPageAssets/retrievePageAssetsDev.js +0 -86
  112. package/dist/cjs/node/runtime/renderPage/getPageAssets/retrievePageAssetsProd.js +0 -77
  113. package/dist/cjs/node/runtime/renderPage/getPageAssets/sortPageAssetsForEarlyHintsHeader.js +0 -36
  114. package/dist/cjs/node/runtime/renderPage/getPageAssets.js +0 -50
  115. package/dist/cjs/node/runtime/renderPage/handleErrorWithoutErrorPage.js +0 -41
  116. package/dist/cjs/node/runtime/renderPage/handlePageContextRequestUrl.js +0 -68
  117. package/dist/cjs/node/runtime/renderPage/headersResponse.js +0 -48
  118. package/dist/cjs/node/runtime/renderPage/html/injectAssets/getHtmlTags.js +0 -269
  119. package/dist/cjs/node/runtime/renderPage/html/injectAssets/getViteDevScript.js +0 -32
  120. package/dist/cjs/node/runtime/renderPage/html/injectAssets/inferHtmlTags.js +0 -55
  121. package/dist/cjs/node/runtime/renderPage/html/injectAssets/injectAssets__public.js +0 -31
  122. package/dist/cjs/node/runtime/renderPage/html/injectAssets/injectHtmlTags.js +0 -161
  123. package/dist/cjs/node/runtime/renderPage/html/injectAssets/mergeScriptTags.js +0 -73
  124. package/dist/cjs/node/runtime/renderPage/html/injectAssets/sanitizeJson.js +0 -8
  125. package/dist/cjs/node/runtime/renderPage/html/injectAssets.js +0 -93
  126. package/dist/cjs/node/runtime/renderPage/html/propKeys.js +0 -47
  127. package/dist/cjs/node/runtime/renderPage/html/renderHtml.js +0 -245
  128. package/dist/cjs/node/runtime/renderPage/html/serializeContext.js +0 -189
  129. package/dist/cjs/node/runtime/renderPage/html/stream/react-streaming.js +0 -36
  130. package/dist/cjs/node/runtime/renderPage/html/stream.js +0 -829
  131. package/dist/cjs/node/runtime/renderPage/inferMediaType.js +0 -81
  132. package/dist/cjs/node/runtime/renderPage/isFontFallback.js +0 -29
  133. package/dist/cjs/node/runtime/renderPage/isNewError.js +0 -25
  134. package/dist/cjs/node/runtime/renderPage/loadPageConfigsLazyServerSide.js +0 -124
  135. package/dist/cjs/node/runtime/renderPage/log404/index.js +0 -154
  136. package/dist/cjs/node/runtime/renderPage/logErrorHint/errors.js +0 -20
  137. package/dist/cjs/node/runtime/renderPage/logErrorHint.js +0 -200
  138. package/dist/cjs/node/runtime/renderPage/loggerProd.js +0 -34
  139. package/dist/cjs/node/runtime/renderPage/preparePageContextForPublicUsageServer.js +0 -10
  140. package/dist/cjs/node/runtime/renderPage/renderPageAfterRoute.js +0 -83
  141. package/dist/cjs/node/runtime/renderPage/resolveRedirects.js +0 -71
  142. package/dist/cjs/node/runtime/renderPage.js +0 -502
  143. package/dist/cjs/node/runtime/universal-middleware.js +0 -20
  144. package/dist/cjs/node/runtime/utils.js +0 -83
  145. package/dist/cjs/node/runtime-dev/createDevMiddleware.js +0 -27
  146. package/dist/cjs/node/runtime-dev/index.js +0 -42
  147. package/dist/cjs/node/shared/assertV1Design.js +0 -30
  148. package/dist/cjs/node/shared/extractAssetsQuery.js +0 -29
  149. package/dist/cjs/node/shared/getVikeConfigError.js +0 -22
  150. package/dist/cjs/node/shared/isErrorDebug.js +0 -7
  151. package/dist/cjs/node/shared/prependEntriesDir.js +0 -13
  152. package/dist/cjs/node/shared/resolveBase.js +0 -35
  153. package/dist/cjs/node/shared/utils.js +0 -35
  154. package/dist/cjs/node/shared/virtualFileId.js +0 -110
  155. package/dist/cjs/node/vite/index.js +0 -69
  156. package/dist/cjs/node/vite/onLoad.js +0 -21
  157. package/dist/cjs/node/vite/plugins/pluginBaseUrls.js +0 -52
  158. package/dist/cjs/node/vite/plugins/pluginBuild/handleAssetsManifest.js +0 -342
  159. package/dist/cjs/node/vite/plugins/pluginBuild/pluginBuildApp.js +0 -183
  160. package/dist/cjs/node/vite/plugins/pluginBuild/pluginBuildConfig.js +0 -222
  161. package/dist/cjs/node/vite/plugins/pluginBuild/pluginDistFileNames.js +0 -256
  162. package/dist/cjs/node/vite/plugins/pluginBuild/pluginDistPackageJsonFile.js +0 -40
  163. package/dist/cjs/node/vite/plugins/pluginBuild/pluginModuleBanner.js +0 -49
  164. package/dist/cjs/node/vite/plugins/pluginBuild/pluginProdBuildEntry.js +0 -111
  165. package/dist/cjs/node/vite/plugins/pluginBuild/pluginSuppressRollupWarning.js +0 -65
  166. package/dist/cjs/node/vite/plugins/pluginBuild.js +0 -21
  167. package/dist/cjs/node/vite/plugins/pluginCommon/assertResolveAlias.js +0 -88
  168. package/dist/cjs/node/vite/plugins/pluginCommon.js +0 -183
  169. package/dist/cjs/node/vite/plugins/pluginDev/determineFsAllowList.js +0 -28
  170. package/dist/cjs/node/vite/plugins/pluginDev/determineOptimizeDeps.js +0 -163
  171. package/dist/cjs/node/vite/plugins/pluginDev.js +0 -111
  172. package/dist/cjs/node/vite/plugins/pluginEnvVars.js +0 -92
  173. package/dist/cjs/node/vite/plugins/pluginExtractAssets.js +0 -241
  174. package/dist/cjs/node/vite/plugins/pluginExtractExportNames.js +0 -113
  175. package/dist/cjs/node/vite/plugins/pluginFileEnv.js +0 -172
  176. package/dist/cjs/node/vite/plugins/pluginNonRunnableDev.js +0 -70
  177. package/dist/cjs/node/vite/plugins/pluginPreview.js +0 -82
  178. package/dist/cjs/node/vite/plugins/pluginReplaceConstants.js +0 -95
  179. package/dist/cjs/node/vite/plugins/pluginSetGlobalContext.js +0 -51
  180. package/dist/cjs/node/vite/plugins/pluginVirtualFiles/debug.js +0 -5
  181. package/dist/cjs/node/vite/plugins/pluginVirtualFiles/generateVirtualFileGlobalEntry.js +0 -56
  182. package/dist/cjs/node/vite/plugins/pluginVirtualFiles/generateVirtualFileGlobalEntryWithOldDesign.js +0 -190
  183. package/dist/cjs/node/vite/plugins/pluginVirtualFiles/generateVirtualFilePageEntry.js +0 -54
  184. package/dist/cjs/node/vite/plugins/pluginVirtualFiles/getConfigValueSourcesRelevant.js +0 -97
  185. package/dist/cjs/node/vite/plugins/pluginVirtualFiles.js +0 -233
  186. package/dist/cjs/node/vite/plugins/pluginWorkaroundCssModuleHmr.js +0 -17
  187. package/dist/cjs/node/vite/plugins/pluginWorkaroundVite6HmrRegression.js +0 -35
  188. package/dist/cjs/node/vite/shared/addSsrMiddleware.js +0 -60
  189. package/dist/cjs/node/vite/shared/findPageFiles.js +0 -25
  190. package/dist/cjs/node/vite/shared/getAssetsDir.js +0 -10
  191. package/dist/cjs/node/vite/shared/getClientEntrySrcDev.js +0 -42
  192. package/dist/cjs/node/vite/shared/getEnvVarObject.js +0 -37
  193. package/dist/cjs/node/vite/shared/getFilePath.js +0 -172
  194. package/dist/cjs/node/vite/shared/getHttpRequestAsyncStore.js +0 -125
  195. package/dist/cjs/node/vite/shared/getMagicString.js +0 -18
  196. package/dist/cjs/node/vite/shared/getManifestFilePathRelative.js +0 -10
  197. package/dist/cjs/node/vite/shared/getOutDirs.js +0 -146
  198. package/dist/cjs/node/vite/shared/getViteConfigRuntime.js +0 -21
  199. package/dist/cjs/node/vite/shared/isAsset.js +0 -40
  200. package/dist/cjs/node/vite/shared/isViteCliCall.js +0 -83
  201. package/dist/cjs/node/vite/shared/isViteServerSide.js +0 -68
  202. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errBabelReact.js +0 -15
  203. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errBabelSolid.js +0 -15
  204. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errEsbuild.js +0 -38
  205. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errMdx1.js +0 -26
  206. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errMdx2.js +0 -85
  207. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errPostcss.js +0 -30
  208. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errSwc.js +0 -19
  209. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errSwcBig.js +0 -19
  210. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errVueCss.js +0 -29
  211. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errVueHtml.js +0 -13
  212. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errVueJavascript.js +0 -15
  213. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet.js +0 -162
  214. package/dist/cjs/node/vite/shared/loggerNotProd/log.js +0 -102
  215. package/dist/cjs/node/vite/shared/loggerNotProd.js +0 -208
  216. package/dist/cjs/node/vite/shared/loggerVite/removeSuperfluousViteLog.js +0 -26
  217. package/dist/cjs/node/vite/shared/loggerVite.js +0 -54
  218. package/dist/cjs/node/vite/shared/normalizeId.js +0 -9
  219. package/dist/cjs/node/vite/shared/parseEsModule.js +0 -33
  220. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/assertExtensions.js +0 -136
  221. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/configDefinitionsBuiltIn.js +0 -262
  222. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/crawlPlusFiles/ignorePatternsBuiltIn.js +0 -18
  223. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/crawlPlusFiles.js +0 -252
  224. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/filesystemRouting.js +0 -190
  225. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/getConfigFileExport.js +0 -17
  226. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/getPlusFilesAll.js +0 -127
  227. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/loadFileAtConfigTime.js +0 -129
  228. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/pointerImports.js +0 -195
  229. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/resolvePointerImport.js +0 -102
  230. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/transpileAndExecuteFile.js +0 -425
  231. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal.js +0 -1151
  232. package/dist/cjs/node/vite/shared/rollupIsEsm.js +0 -15
  233. package/dist/cjs/node/vite/utils.js +0 -45
  234. package/dist/cjs/package.json +0 -1
  235. package/dist/cjs/shared/NOT_SERIALIZABLE.js +0 -4
  236. package/dist/cjs/shared/RenderErrorPage.js +0 -6
  237. package/dist/cjs/shared/abort.js +0 -16
  238. package/dist/cjs/shared/addIs404ToPageProps.js +0 -18
  239. package/dist/cjs/shared/assertHookReturnedObject.js +0 -21
  240. package/dist/cjs/shared/assertOnBeforeRenderHookReturn.js +0 -21
  241. package/dist/cjs/shared/assertPageContextProvidedByUser.js +0 -20
  242. package/dist/cjs/shared/createGlobalContextShared.js +0 -109
  243. package/dist/cjs/shared/createPageContextShared.js +0 -17
  244. package/dist/cjs/shared/determinePageIdOld.js +0 -11
  245. package/dist/cjs/shared/error-page.js +0 -40
  246. package/dist/cjs/shared/getPageContext.js +0 -6
  247. package/dist/cjs/shared/getPageContextRequestUrl.js +0 -16
  248. package/dist/cjs/shared/getPageContextUrlComputed.js +0 -132
  249. package/dist/cjs/shared/getPageFiles/analyzeClientSide.js +0 -19
  250. package/dist/cjs/shared/getPageFiles/analyzePageClientSide/ClientDependency.js +0 -2
  251. package/dist/cjs/shared/getPageFiles/analyzePageClientSide/analyzeExports.js +0 -50
  252. package/dist/cjs/shared/getPageFiles/analyzePageClientSide/determineClientEntry.js +0 -30
  253. package/dist/cjs/shared/getPageFiles/analyzePageClientSide/getExportNames.js +0 -15
  254. package/dist/cjs/shared/getPageFiles/analyzePageClientSide.js +0 -59
  255. package/dist/cjs/shared/getPageFiles/analyzePageServerSide.js +0 -22
  256. package/dist/cjs/shared/getPageFiles/assert_exports_old_design.js +0 -24
  257. package/dist/cjs/shared/getPageFiles/fileTypes.js +0 -52
  258. package/dist/cjs/shared/getPageFiles/getAllPageIdFiles.js +0 -102
  259. package/dist/cjs/shared/getPageFiles/getPageFileObject.js +0 -56
  260. package/dist/cjs/shared/getPageFiles/parseVirtualFileExportsGlobalEntry.js +0 -100
  261. package/dist/cjs/shared/getPageFiles.js +0 -7
  262. package/dist/cjs/shared/getProxyForPublicUsage.js +0 -56
  263. package/dist/cjs/shared/hooks/execHook.js +0 -147
  264. package/dist/cjs/shared/hooks/getHook.js +0 -173
  265. package/dist/cjs/shared/htmlElementIds.js +0 -5
  266. package/dist/cjs/shared/misc/isServerSideError.js +0 -4
  267. package/dist/cjs/shared/misc/pageContextInitIsPassedToClient.js +0 -4
  268. package/dist/cjs/shared/modifyUrl.js +0 -28
  269. package/dist/cjs/shared/modifyUrlSameOrigin.js +0 -47
  270. package/dist/cjs/shared/page-configs/assertPlusFileExport.js +0 -42
  271. package/dist/cjs/shared/page-configs/findPageConfig.js +0 -10
  272. package/dist/cjs/shared/page-configs/getConfigDefinedAt.js +0 -65
  273. package/dist/cjs/shared/page-configs/getConfigValueBuildTime.js +0 -68
  274. package/dist/cjs/shared/page-configs/getConfigValueRuntime.js +0 -10
  275. package/dist/cjs/shared/page-configs/getConfigValueTyped.js +0 -32
  276. package/dist/cjs/shared/page-configs/getExportPath.js +0 -29
  277. package/dist/cjs/shared/page-configs/helpers.js +0 -27
  278. package/dist/cjs/shared/page-configs/loadAndParseVirtualFilePageEntry.js +0 -25
  279. package/dist/cjs/shared/page-configs/resolveVikeConfigPublic.js +0 -287
  280. package/dist/cjs/shared/page-configs/serialize/PageConfigSerialized.js +0 -2
  281. package/dist/cjs/shared/page-configs/serialize/assertPageConfigsSerialized.js +0 -1
  282. package/dist/cjs/shared/page-configs/serialize/parsePageConfigsSerialized.js +0 -145
  283. package/dist/cjs/shared/page-configs/serialize/serializeConfigValues.js +0 -290
  284. package/dist/cjs/shared/prepareGlobalContextForPublicUsage.js +0 -10
  285. package/dist/cjs/shared/preparePageContextForPublicUsage.js +0 -80
  286. package/dist/cjs/shared/route/abort.js +0 -178
  287. package/dist/cjs/shared/route/debug.js +0 -23
  288. package/dist/cjs/shared/route/deduceRouteStringFromFilesystemPath.js +0 -52
  289. package/dist/cjs/shared/route/execHookGuard.js +0 -37
  290. package/dist/cjs/shared/route/execHookOnBeforeRoute.js +0 -84
  291. package/dist/cjs/shared/route/index.js +0 -107
  292. package/dist/cjs/shared/route/loadPageRoutes.js +0 -197
  293. package/dist/cjs/shared/route/noRouteMatch.js +0 -4
  294. package/dist/cjs/shared/route/resolvePrecedence.js +0 -93
  295. package/dist/cjs/shared/route/resolveRoute.js +0 -20
  296. package/dist/cjs/shared/route/resolveRouteFunction.js +0 -73
  297. package/dist/cjs/shared/route/resolveRouteString.js +0 -153
  298. package/dist/cjs/shared/route/resolveUrlPathname.js +0 -47
  299. package/dist/cjs/shared/route/routing.js +0 -9
  300. package/dist/cjs/shared/route/utils.js +0 -40
  301. package/dist/cjs/shared/utils.js +0 -49
  302. package/dist/cjs/types/Config/ConfigResolved.js +0 -2
  303. package/dist/cjs/types/Config.js +0 -2
  304. package/dist/cjs/types/FilePath.js +0 -2
  305. package/dist/cjs/types/PageConfig.js +0 -2
  306. package/dist/cjs/types/PageContext.js +0 -2
  307. package/dist/cjs/types/VikeGlobalInternal.js +0 -2
  308. package/dist/cjs/types/VikeNamespace.js +0 -2
  309. package/dist/cjs/types/ViteManifest.js +0 -2
  310. package/dist/cjs/types/defineConfig.js +0 -6
  311. package/dist/cjs/types/index-dreprecated.js +0 -3
  312. package/dist/cjs/types/index.js +0 -5
  313. package/dist/cjs/utils/PROJECT_VERSION.js +0 -5
  314. package/dist/cjs/utils/PromiseType.js +0 -2
  315. package/dist/cjs/utils/assert.js +0 -211
  316. package/dist/cjs/utils/assertIsBrowser.js +0 -8
  317. package/dist/cjs/utils/assertIsNotBrowser.js +0 -9
  318. package/dist/cjs/utils/assertKeys.js +0 -27
  319. package/dist/cjs/utils/assertNodeVersion.js +0 -14
  320. package/dist/cjs/utils/assertRoutingType.js +0 -29
  321. package/dist/cjs/utils/assertSetup.js +0 -171
  322. package/dist/cjs/utils/assertSingleInstance.js +0 -110
  323. package/dist/cjs/utils/assertVersion.js +0 -60
  324. package/dist/cjs/utils/capitalizeFirstLetter.js +0 -9
  325. package/dist/cjs/utils/cast.js +0 -6
  326. package/dist/cjs/utils/catchInfiniteLoop.js +0 -34
  327. package/dist/cjs/utils/changeEnumerable.js +0 -8
  328. package/dist/cjs/utils/checkType.js +0 -6
  329. package/dist/cjs/utils/compareString.js +0 -10
  330. package/dist/cjs/utils/createErrorWithCleanStackTrace.js +0 -39
  331. package/dist/cjs/utils/debug.js +0 -178
  332. package/dist/cjs/utils/debugGlob.js +0 -6
  333. package/dist/cjs/utils/deepEqual.js +0 -10
  334. package/dist/cjs/utils/escapeHtml.js +0 -13
  335. package/dist/cjs/utils/escapeRegex.js +0 -7
  336. package/dist/cjs/utils/findFile.js +0 -30
  337. package/dist/cjs/utils/findPackageJson.js +0 -18
  338. package/dist/cjs/utils/formatHintLog.js +0 -17
  339. package/dist/cjs/utils/freezePartial.js +0 -35
  340. package/dist/cjs/utils/genPromise.js +0 -51
  341. package/dist/cjs/utils/getFileExtension.js +0 -16
  342. package/dist/cjs/utils/getGlobalObject.js +0 -15
  343. package/dist/cjs/utils/getMostSimilar.js +0 -68
  344. package/dist/cjs/utils/getPropAccessNotation.js +0 -9
  345. package/dist/cjs/utils/getRandomId.js +0 -14
  346. package/dist/cjs/utils/getTerminalWidth.js +0 -7
  347. package/dist/cjs/utils/getValuePrintable.js +0 -10
  348. package/dist/cjs/utils/getViteRPC.js +0 -79
  349. package/dist/cjs/utils/hasProp.js +0 -50
  350. package/dist/cjs/utils/humanizeTime.js +0 -24
  351. package/dist/cjs/utils/includes.js +0 -13
  352. package/dist/cjs/utils/injectRollupInputs.js +0 -29
  353. package/dist/cjs/utils/isArray.js +0 -7
  354. package/dist/cjs/utils/isArrayOfStrings.js +0 -7
  355. package/dist/cjs/utils/isBrowser.js +0 -8
  356. package/dist/cjs/utils/isCallable.js +0 -6
  357. package/dist/cjs/utils/isDev.js +0 -20
  358. package/dist/cjs/utils/isDocker.js +0 -45
  359. package/dist/cjs/utils/isEqualStringList.js +0 -13
  360. package/dist/cjs/utils/isFilePathAbsoluteFilesystem.js +0 -66
  361. package/dist/cjs/utils/isHtml.js +0 -9
  362. package/dist/cjs/utils/isImportPath.js +0 -21
  363. package/dist/cjs/utils/isNodeJS.js +0 -16
  364. package/dist/cjs/utils/isNonRunnableDev.js +0 -12
  365. package/dist/cjs/utils/isNullish.js +0 -16
  366. package/dist/cjs/utils/isObject.js +0 -6
  367. package/dist/cjs/utils/isObjectOfStrings.js +0 -7
  368. package/dist/cjs/utils/isObjectWithKeys.js +0 -15
  369. package/dist/cjs/utils/isPlainObject.js +0 -19
  370. package/dist/cjs/utils/isPromise.js +0 -7
  371. package/dist/cjs/utils/isPropertyGetter.js +0 -7
  372. package/dist/cjs/utils/isReact.js +0 -23
  373. package/dist/cjs/utils/isRunnableDevEnvironment.js +0 -9
  374. package/dist/cjs/utils/isSameErrorMessage.js +0 -9
  375. package/dist/cjs/utils/isScriptFile.js +0 -67
  376. package/dist/cjs/utils/isVikeReactApp.js +0 -8
  377. package/dist/cjs/utils/isVitest.js +0 -6
  378. package/dist/cjs/utils/joinEnglish.js +0 -14
  379. package/dist/cjs/utils/normalizeHeaders.js +0 -17
  380. package/dist/cjs/utils/objectAssign.js +0 -14
  381. package/dist/cjs/utils/objectAssignSafe.js +0 -7
  382. package/dist/cjs/utils/objectDefineProperty.js +0 -7
  383. package/dist/cjs/utils/objectEntries.js +0 -8
  384. package/dist/cjs/utils/objectEntriesForEach.js +0 -7
  385. package/dist/cjs/utils/objectFilter.js +0 -10
  386. package/dist/cjs/utils/objectFromEntries.js +0 -7
  387. package/dist/cjs/utils/objectKeys.js +0 -9
  388. package/dist/cjs/utils/objectReplace.js +0 -9
  389. package/dist/cjs/utils/onPageVisibilityChange.js +0 -18
  390. package/dist/cjs/utils/pLimit.js +0 -134
  391. package/dist/cjs/utils/parseNpmPackage.js +0 -106
  392. package/dist/cjs/utils/parseUrl-extras.js +0 -110
  393. package/dist/cjs/utils/parseUrl.js +0 -338
  394. package/dist/cjs/utils/path.js +0 -59
  395. package/dist/cjs/utils/pick.js +0 -12
  396. package/dist/cjs/utils/preservePropertyGetters.js +0 -30
  397. package/dist/cjs/utils/redirectHard.js +0 -6
  398. package/dist/cjs/utils/removeEmptyLines.js +0 -9
  399. package/dist/cjs/utils/removeFileExtension.js +0 -6
  400. package/dist/cjs/utils/requireResolve.js +0 -214
  401. package/dist/cjs/utils/rollupSourceMap.js +0 -19
  402. package/dist/cjs/utils/sleep.js +0 -6
  403. package/dist/cjs/utils/slice.js +0 -35
  404. package/dist/cjs/utils/sorter.js +0 -117
  405. package/dist/cjs/utils/stringifyStringArray.js +0 -6
  406. package/dist/cjs/utils/stripAnsi.js +0 -21
  407. package/dist/cjs/utils/styleFileRE.js +0 -6
  408. package/dist/cjs/utils/throttle.js +0 -15
  409. package/dist/cjs/utils/trackLogs.js +0 -31
  410. package/dist/cjs/utils/trimWithAnsi.js +0 -40
  411. package/dist/cjs/utils/truncateString.js +0 -23
  412. package/dist/cjs/utils/unique.js +0 -6
  413. package/dist/cjs/utils/updateType.js +0 -9
  414. package/dist/cjs/utils/urlToFile.js +0 -36
  415. package/dist/cjs/utils/virtualFileId.js +0 -43
  416. package/dist/cjs/utils/warnIfErrorIsNotObject.js +0 -23
  417. package/dist/esm/node/vite/plugins/pluginBuild.d.ts +0 -3
  418. package/dist/esm/node/vite/plugins/pluginBuild.js +0 -19
  419. package/dist/esm/node/vite/plugins/pluginReplaceConstants.d.ts +0 -14
  420. package/dist/esm/node/vite/plugins/pluginReplaceConstants.js +0 -92
@@ -8,96 +8,98 @@ import crypto from 'node:crypto';
8
8
  import { getAssetsDir } from '../../shared/getAssetsDir.js';
9
9
  import { assertModuleId, getModuleFilePathAbsolute } from '../../shared/getFilePath.js';
10
10
  function pluginDistFileNames() {
11
- return {
12
- name: 'vike:build:pluginDistFileNames',
13
- apply: 'build',
14
- enforce: 'post',
15
- configResolved: {
16
- handler(config) {
17
- const rollupOutputs = getRollupOutputs(config);
18
- // We need to support multiple outputs: @vite/plugin-legacy adds an output, see https://github.com/vikejs/vike/issues/477#issuecomment-1406434802
19
- rollupOutputs.forEach((rollupOutput) => {
20
- if (!('entryFileNames' in rollupOutput)) {
21
- rollupOutput.entryFileNames = (chunkInfo) => getEntryFileName(chunkInfo, config, true);
22
- }
23
- if (!('chunkFileNames' in rollupOutput)) {
24
- rollupOutput.chunkFileNames = (chunkInfo) => getChunkFileName(chunkInfo, config);
25
- }
26
- if (!('assetFileNames' in rollupOutput)) {
27
- rollupOutput.assetFileNames = (chunkInfo) => getAssetFileName(chunkInfo, config);
28
- rollupOutput.assetFileNames.isTheOneSetByVike = true;
29
- assert(rollupOutput.assetFileNames.isTheOneSetByVike);
30
- }
31
- else {
32
- // If a user needs this:
33
- // - assertUsage() that the naming provided by the user ends with `.[hash][extname]`
34
- // - It's needed for getHash() of handleAssetsManifest()
35
- // - Asset URLs should always contain a hash: it's paramount for caching assets.
36
- // - If rollupOutput.assetFileNames is a function then use a wrapper function to apply the assertUsage()
37
- assertUsage(rollupOutput.assetFileNames.isTheOneSetByVike, "Setting Vite's configuration build.rollupOptions.output.assetFileNames is currently forbidden. Reach out if you need to use it.");
38
- }
39
- {
40
- const manualChunksOriginal = rollupOutput.manualChunks;
41
- rollupOutput.manualChunks = function (id, ...args) {
42
- if (manualChunksOriginal) {
43
- if (isCallable(manualChunksOriginal)) {
44
- const result = manualChunksOriginal.call(this, id, ...args);
45
- if (result !== undefined)
46
- return result;
47
- }
48
- else {
49
- assertUsage(false, "The Vite's configuration build.rollupOptions.output.manualChunks must be a function. Reach out if you need to set it to another value.");
50
- }
51
- }
52
- // Disable CSS bundling to workaround https://github.com/vikejs/vike/issues/1815
53
- // TO-DO/eventually: let's bundle CSS again once Rolldown replaces Rollup
54
- if (id.endsWith('.css')) {
55
- const userRootDir = config.root;
56
- if (id.startsWith(userRootDir)) {
57
- assertPosixPath(id);
58
- assertModuleId(id);
59
- let name;
60
- const isNodeModules = id.match(/node_modules\/([^\/]+)\/(?!.*node_modules)/);
61
- if (isNodeModules) {
62
- name = isNodeModules[1];
11
+ return [
12
+ {
13
+ name: 'vike:build:pluginDistFileNames',
14
+ apply: 'build',
15
+ enforce: 'post',
16
+ configResolved: {
17
+ handler(config) {
18
+ const rollupOutputs = getRollupOutputs(config);
19
+ // We need to support multiple outputs: @vite/plugin-legacy adds an output, see https://github.com/vikejs/vike/issues/477#issuecomment-1406434802
20
+ rollupOutputs.forEach((rollupOutput) => {
21
+ if (!('entryFileNames' in rollupOutput)) {
22
+ rollupOutput.entryFileNames = (chunkInfo) => getEntryFileName(chunkInfo, config, true);
23
+ }
24
+ if (!('chunkFileNames' in rollupOutput)) {
25
+ rollupOutput.chunkFileNames = (chunkInfo) => getChunkFileName(chunkInfo, config);
26
+ }
27
+ if (!('assetFileNames' in rollupOutput)) {
28
+ rollupOutput.assetFileNames = (chunkInfo) => getAssetFileName(chunkInfo, config);
29
+ rollupOutput.assetFileNames.isTheOneSetByVike = true;
30
+ assert(rollupOutput.assetFileNames.isTheOneSetByVike);
31
+ }
32
+ else {
33
+ // If a user needs this:
34
+ // - assertUsage() that the naming provided by the user ends with `.[hash][extname]`
35
+ // - It's needed for getHash() of handleAssetsManifest()
36
+ // - Asset URLs should always contain a hash: it's paramount for caching assets.
37
+ // - If rollupOutput.assetFileNames is a function then use a wrapper function to apply the assertUsage()
38
+ assertUsage(rollupOutput.assetFileNames.isTheOneSetByVike, "Setting Vite's configuration build.rollupOptions.output.assetFileNames is currently forbidden. Reach out if you need to use it.");
39
+ }
40
+ {
41
+ const manualChunksOriginal = rollupOutput.manualChunks;
42
+ rollupOutput.manualChunks = function (id, ...args) {
43
+ if (manualChunksOriginal) {
44
+ if (isCallable(manualChunksOriginal)) {
45
+ const result = manualChunksOriginal.call(this, id, ...args);
46
+ if (result !== undefined)
47
+ return result;
63
48
  }
64
49
  else {
65
- const filePath = getModuleFilePathAbsolute(id, config);
66
- name = filePath;
67
- name = name.split('.').slice(0, -1).join('.'); // remove file extension
68
- name = name.split('/').filter(Boolean).join('_');
50
+ assertUsage(false, "The Vite's configuration build.rollupOptions.output.manualChunks must be a function. Reach out if you need to set it to another value.");
69
51
  }
70
- // Make fileHash the same between local development and CI
71
- const idStable = path.posix.relative(userRootDir, id);
72
- // Don't remove `?` queries because each `id` should belong to a unique bundle.
73
- const hash = getIdHash(idStable);
74
- return `${name}-${hash}`;
75
52
  }
76
- else {
77
- let name;
78
- const isVirtualModule = id.match(/virtual:([^:]+):/);
79
- if (isVirtualModule) {
80
- name = isVirtualModule[1];
81
- assert(name);
82
- }
83
- else if (
84
- // https://github.com/vikejs/vike/issues/1818#issuecomment-2298478321
85
- id.startsWith('/__uno')) {
86
- name = 'uno';
53
+ // Disable CSS bundling to workaround https://github.com/vikejs/vike/issues/1815
54
+ // TO-DO/eventually: let's bundle CSS again once Rolldown replaces Rollup
55
+ if (id.endsWith('.css')) {
56
+ const userRootDir = config.root;
57
+ if (id.startsWith(userRootDir)) {
58
+ assertPosixPath(id);
59
+ assertModuleId(id);
60
+ let name;
61
+ const isNodeModules = id.match(/node_modules\/([^\/]+)\/(?!.*node_modules)/);
62
+ if (isNodeModules) {
63
+ name = isNodeModules[1];
64
+ }
65
+ else {
66
+ const filePath = getModuleFilePathAbsolute(id, config);
67
+ name = filePath;
68
+ name = name.split('.').slice(0, -1).join('.'); // remove file extension
69
+ name = name.split('/').filter(Boolean).join('_');
70
+ }
71
+ // Make fileHash the same between local development and CI
72
+ const idStable = path.posix.relative(userRootDir, id);
73
+ // Don't remove `?` queries because each `id` should belong to a unique bundle.
74
+ const hash = getIdHash(idStable);
75
+ return `${name}-${hash}`;
87
76
  }
88
77
  else {
89
- name = 'style';
78
+ let name;
79
+ const isVirtualModule = id.match(/virtual:([^:]+):/);
80
+ if (isVirtualModule) {
81
+ name = isVirtualModule[1];
82
+ assert(name);
83
+ }
84
+ else if (
85
+ // https://github.com/vikejs/vike/issues/1818#issuecomment-2298478321
86
+ id.startsWith('/__uno')) {
87
+ name = 'uno';
88
+ }
89
+ else {
90
+ name = 'style';
91
+ }
92
+ const hash = getIdHash(id);
93
+ return `${name}-${hash}`;
90
94
  }
91
- const hash = getIdHash(id);
92
- return `${name}-${hash}`;
93
95
  }
94
- }
95
- };
96
- }
97
- });
96
+ };
97
+ }
98
+ });
99
+ },
98
100
  },
99
101
  },
100
- };
102
+ ];
101
103
  }
102
104
  function getIdHash(id) {
103
105
  return crypto.createHash('md5').update(id).digest('hex').slice(0, 8);
@@ -1,3 +1,3 @@
1
1
  export { pluginDistPackageJsonFile };
2
2
  import type { Plugin } from 'vite';
3
- declare function pluginDistPackageJsonFile(): Plugin;
3
+ declare function pluginDistPackageJsonFile(): Plugin[];
@@ -3,30 +3,32 @@ import { rollupIsEsm } from '../../shared/rollupIsEsm.js';
3
3
  import { isViteServerSide } from '../../shared/isViteServerSide.js';
4
4
  function pluginDistPackageJsonFile() {
5
5
  let config;
6
- return {
7
- name: 'vike:build:pluginDistPackageJsonFile',
8
- apply: 'build',
9
- configResolved: {
10
- handler(config_) {
11
- config = config_;
6
+ return [
7
+ {
8
+ name: 'vike:build:pluginDistPackageJsonFile',
9
+ apply: 'build',
10
+ configResolved: {
11
+ handler(config_) {
12
+ config = config_;
13
+ },
12
14
  },
13
- },
14
- generateBundle: {
15
- handler(options, bundle) {
16
- if (!isViteServerSide(config, this.environment))
17
- return;
18
- const isEsm = rollupIsEsm(options);
19
- const fileName = 'package.json';
20
- if (bundle[fileName])
21
- return; // E.g. already generated by Telefunc / vike
22
- this.emitFile({
23
- fileName,
24
- type: 'asset',
25
- source: getPackageJsonContent(isEsm),
26
- });
15
+ generateBundle: {
16
+ handler(options, bundle) {
17
+ if (!isViteServerSide(config, this.environment))
18
+ return;
19
+ const isEsm = rollupIsEsm(options);
20
+ const fileName = 'package.json';
21
+ if (bundle[fileName])
22
+ return; // E.g. already generated by Telefunc / vike
23
+ this.emitFile({
24
+ fileName,
25
+ type: 'asset',
26
+ source: getPackageJsonContent(isEsm),
27
+ });
28
+ },
27
29
  },
28
30
  },
29
- };
31
+ ];
30
32
  }
31
33
  function getPackageJsonContent(isEsm) {
32
34
  if (isEsm) {
@@ -1,3 +1,3 @@
1
1
  export { pluginModuleBanner };
2
2
  import type { Plugin } from 'vite';
3
- declare function pluginModuleBanner(): Plugin;
3
+ declare function pluginModuleBanner(): Plugin[];
@@ -5,43 +5,45 @@ import { getMagicString } from '../../shared/getMagicString.js';
5
5
  // But, anyways, we want to prepend the banner at the beginning of each module, not at the beginning of each file (I believe that's what Rollup's banner feature does).
6
6
  function pluginModuleBanner() {
7
7
  let config;
8
- return {
9
- name: 'vike:build:pluginModuleBanner',
10
- enforce: 'post',
11
- apply: 'build',
12
- applyToEnvironment(environment) {
13
- const { config } = environment;
14
- const { consumer } = config;
15
- const { minify } = config.build;
16
- assert(minify === false || minify, { minify, consumer });
17
- return !minify;
18
- },
19
- configResolved: {
20
- handler(config_) {
21
- config = config_;
8
+ return [
9
+ {
10
+ name: 'vike:build:pluginModuleBanner',
11
+ enforce: 'post',
12
+ apply: 'build',
13
+ applyToEnvironment(environment) {
14
+ const { config } = environment;
15
+ const { consumer } = config;
16
+ const { minify } = config.build;
17
+ assert(minify === false || minify, { minify, consumer });
18
+ return !minify;
22
19
  },
23
- },
24
- transform: {
25
- order: 'post',
26
- /* Using a Rolldown hook filter doesn't make sense here — we use applyToEnvironment() to conditionally apply this plugin.
27
- filter: {},
28
- */
29
- handler(code, id) {
30
- const { minify } = this.environment.config.build;
31
- assert(minify === false, { minify });
32
- if (id.startsWith('\0'))
33
- id = id;
34
- id = removeVirtualFileIdPrefix(id);
35
- if (id.startsWith(config.root))
36
- id = id.slice(config.root.length + 1);
37
- id = id.replaceAll('*/', '*\\/'); // https://github.com/vikejs/vike/issues/2377
38
- const { magicString, getMagicStringResult } = getMagicString(code, id);
39
- // Use legal comment so that esbuild doesn't remove it.
40
- // - Terser still removes the comment, but I guess users use terser to minify JavaScript so I guess it's a good thing that comment is removed.
41
- // - https://esbuild.github.io/api/#legal-comments
42
- magicString.prepend(`/*! ${id} [vike:pluginModuleBanner] */\n`);
43
- return getMagicStringResult();
20
+ configResolved: {
21
+ handler(config_) {
22
+ config = config_;
23
+ },
24
+ },
25
+ transform: {
26
+ order: 'post',
27
+ /* Using a Rolldown hook filter doesn't make sense here — we use applyToEnvironment() to conditionally apply this plugin.
28
+ filter: {},
29
+ */
30
+ handler(code, id) {
31
+ const { minify } = this.environment.config.build;
32
+ assert(minify === false, { minify });
33
+ if (id.startsWith('\0'))
34
+ id = id;
35
+ id = removeVirtualFileIdPrefix(id);
36
+ if (id.startsWith(config.root))
37
+ id = id.slice(config.root.length + 1);
38
+ id = id.replaceAll('*/', '*\\/'); // https://github.com/vikejs/vike/issues/2377
39
+ const { magicString, getMagicStringResult } = getMagicString(code, id);
40
+ // Use legal comment so that esbuild doesn't remove it.
41
+ // - Terser still removes the comment, but I guess users use terser to minify JavaScript so I guess it's a good thing that comment is removed.
42
+ // - https://esbuild.github.io/api/#legal-comments
43
+ magicString.prepend(`/*! ${id} [vike:pluginModuleBanner] */\n`);
44
+ return getMagicStringResult();
45
+ },
44
46
  },
45
47
  },
46
- };
48
+ ];
47
49
  }
@@ -1,3 +1,3 @@
1
1
  export { pluginSuppressRollupWarning };
2
2
  import type { Plugin } from 'vite';
3
- declare function pluginSuppressRollupWarning(): Plugin;
3
+ declare function pluginSuppressRollupWarning(): Plugin[];
@@ -1,32 +1,34 @@
1
1
  // Suppress Rollup warnings `Generated an empty chunk: "index.page.server"`
2
2
  export { pluginSuppressRollupWarning };
3
3
  function pluginSuppressRollupWarning() {
4
- return {
5
- name: 'vike:build:pluginSuppressRollupWarning',
6
- apply: 'build',
7
- enforce: 'post',
8
- configResolved: {
9
- async handler(config) {
10
- const onWarnOriginal = config.build.rollupOptions.onwarn;
11
- config.build.rollupOptions.onwarn = function (warning, warn) {
12
- // Suppress
13
- if (suppressUnusedImport(warning))
14
- return;
15
- if (suppressEmptyBundle(warning))
16
- return;
17
- if (suppressUseClientDirective(warning))
18
- return;
19
- // Pass through
20
- if (onWarnOriginal) {
21
- onWarnOriginal.apply(this, arguments);
22
- }
23
- else {
24
- warn(warning);
25
- }
26
- };
4
+ return [
5
+ {
6
+ name: 'vike:build:pluginSuppressRollupWarning',
7
+ apply: 'build',
8
+ enforce: 'post',
9
+ configResolved: {
10
+ async handler(config) {
11
+ const onWarnOriginal = config.build.rollupOptions.onwarn;
12
+ config.build.rollupOptions.onwarn = function (warning, warn) {
13
+ // Suppress
14
+ if (suppressUnusedImport(warning))
15
+ return;
16
+ if (suppressEmptyBundle(warning))
17
+ return;
18
+ if (suppressUseClientDirective(warning))
19
+ return;
20
+ // Pass through
21
+ if (onWarnOriginal) {
22
+ onWarnOriginal.apply(this, arguments);
23
+ }
24
+ else {
25
+ warn(warning);
26
+ }
27
+ };
28
+ },
27
29
  },
28
30
  },
29
- };
31
+ ];
30
32
  }
31
33
  /** Suppress warning about Rollup removing the React Server Components `"use client";` directives */
32
34
  function suppressUseClientDirective(warning) {
@@ -1,5 +1,5 @@
1
1
  export { pluginCommon };
2
- import { assert, assertUsage, assertWarning, hasProp, isDevCheck, isDocker, isObject, isVitest, } from '../utils.js';
2
+ import { assert, assertUsage, assertWarning, hasProp, isDevCheck, isDocker, isObject, isVitest } from '../utils.js';
3
3
  import { assertRollupInput } from './pluginBuild/pluginBuildConfig.js';
4
4
  import { installRequireShim_setUserRootDir } from '@brillout/require-shim';
5
5
  import pc from '@brillout/picocolors';
@@ -3,7 +3,6 @@ import { searchForWorkspaceRoot } from 'vite';
3
3
  import path from 'node:path';
4
4
  import { assert, assertPosixPath, getPackageNodeModulesDirectory } from '../../utils.js';
5
5
  import { fileURLToPath } from 'node:url';
6
- // @ts-ignore import.meta.url is shimmed at dist/cjs by dist-cjs-fixup.js.
7
6
  const importMetaUrl = import.meta.url;
8
7
  assertPosixPath(importMetaUrl);
9
8
  const __dirname_ = path.posix.dirname(fileURLToPath(importMetaUrl));
@@ -1,3 +1,3 @@
1
1
  export { pluginEnvVars };
2
2
  import type { Plugin } from 'vite';
3
- declare function pluginEnvVars(): Plugin;
3
+ declare function pluginEnvVars(): Plugin[];
@@ -5,7 +5,6 @@ import { getModuleFilePathAbsolute } from '../shared/getFilePath.js';
5
5
  import { normalizeId } from '../shared/normalizeId.js';
6
6
  import { isViteServerSide_extraSafe } from '../shared/isViteServerSide.js';
7
7
  import { getMagicString } from '../shared/getMagicString.js';
8
- import { filterRolldown, filterFunction } from './pluginReplaceConstants.js';
9
8
  // TO-DO/eventually:
10
9
  // - Make import.meta.env work inside +config.js
11
10
  // - For it to work, we'll probably need the user to define the settings (e.g. `envDir`) for loadEnv() inside vike.config.js instead of vite.config.js
@@ -15,76 +14,99 @@ const PUBLIC_ENV_ALLOWLIST = [
15
14
  // https://github.com/vikejs/vike/issues/1724
16
15
  'STORYBOOK',
17
16
  ];
17
+ const skipNodeModules = '/node_modules/';
18
+ const skipIrrelevant = 'import.meta.env.';
19
+ const filterRolldown = {
20
+ id: {
21
+ exclude: `**${skipNodeModules}**`,
22
+ },
23
+ code: {
24
+ include: skipIrrelevant,
25
+ },
26
+ };
27
+ const filterFunction = (id, code) => {
28
+ if (id.includes(skipNodeModules))
29
+ return false;
30
+ if (!code.includes(skipIrrelevant))
31
+ return false;
32
+ return true;
33
+ };
18
34
  function pluginEnvVars() {
19
35
  let envsAll;
20
36
  let config;
21
- return {
22
- name: 'vike:pluginEnvVars',
23
- enforce: 'post',
24
- configResolved: {
25
- handler(config_) {
26
- config = config_;
27
- envsAll = loadEnv(config.mode, config.envDir || config.root, '');
28
- config.plugins.sort(lowerFirst((plugin) => (plugin.name === 'vite:define' ? 1 : 0)));
37
+ return [
38
+ {
39
+ name: 'vike:pluginEnvVars',
40
+ enforce: 'post',
41
+ configResolved: {
42
+ handler(config_) {
43
+ config = config_;
44
+ envsAll = loadEnv(config.mode, config.envDir || config.root, '');
45
+ config.plugins.sort(lowerFirst((plugin) => (plugin.name === 'vite:define' ? 1 : 0)));
46
+ },
29
47
  },
30
- },
31
- transform: {
32
- filter: filterRolldown,
33
- handler(code, id, options) {
34
- id = normalizeId(id);
35
- assertPosixPath(id);
36
- assertPosixPath(config.root);
37
- if (!id.startsWith(config.root))
38
- return; // skip linked dependencies
39
- assert(filterFunction(id, code));
40
- const isBuild = config.command === 'build';
41
- const isClientSide = !isViteServerSide_extraSafe(config, this.environment, options);
42
- const { magicString, getMagicStringResult } = getMagicString(code, id);
43
- // Find & check
44
- const replacements = Object.entries(envsAll)
45
- .filter(([key]) => {
46
- // Already handled by Vite
47
- const envPrefix = !config.envPrefix ? [] : isArray(config.envPrefix) ? config.envPrefix : [config.envPrefix];
48
- return !envPrefix.some((prefix) => key.startsWith(prefix));
49
- })
50
- .map(([envName, envVal]) => {
51
- const envStatement = `import.meta.env.${envName}`;
52
- const envStatementRegExpStr = escapeRegex(envStatement) + '\\b';
53
- // Security check
54
- {
55
- const isPrivate = !envName.startsWith(PUBLIC_ENV_PREFIX) && !PUBLIC_ENV_ALLOWLIST.includes(envName);
56
- if (isPrivate && isClientSide) {
57
- if (!new RegExp(envStatementRegExpStr).test(code))
58
- return;
59
- const modulePath = getModuleFilePathAbsolute(id, config);
60
- const errMsgAddendum = isBuild
61
- ? ''
62
- : ' (Vike will prevent your app from building for production)';
63
- const keyPublic = `${PUBLIC_ENV_PREFIX}${envName}`;
64
- const errMsg = `${envStatement} is used in client-side file ${modulePath} which means that the environment variable ${envName} will be included in client-side bundles and, therefore, ${envName} will be publicly exposed which can be a security leak${errMsgAddendum}. Use ${envStatement} only in server-side files, or rename ${envName} to ${keyPublic}, see https://vike.dev/env`;
65
- if (isBuild) {
66
- assertUsage(false, errMsg);
67
- }
68
- else {
69
- // - Only a warning for faster development DX (e.g. when user toggles `ssr: boolean` or `onBeforeRenderIsomorph: boolean`).
70
- // - But only showing a warning can be confusing: https://github.com/vikejs/vike/issues/1641
71
- assertWarning(false, errMsg, { onlyOnce: true });
48
+ transform: {
49
+ filter: filterRolldown,
50
+ handler(code, id, options) {
51
+ id = normalizeId(id);
52
+ assertPosixPath(id);
53
+ assertPosixPath(config.root);
54
+ if (!id.startsWith(config.root))
55
+ return; // skip linked dependencies
56
+ assert(filterFunction(id, code));
57
+ const isBuild = config.command === 'build';
58
+ const isClientSide = !isViteServerSide_extraSafe(config, this.environment, options);
59
+ const { magicString, getMagicStringResult } = getMagicString(code, id);
60
+ // Find & check
61
+ const replacements = Object.entries(envsAll)
62
+ .filter(([key]) => {
63
+ // Already handled by Vite
64
+ const envPrefix = !config.envPrefix
65
+ ? []
66
+ : isArray(config.envPrefix)
67
+ ? config.envPrefix
68
+ : [config.envPrefix];
69
+ return !envPrefix.some((prefix) => key.startsWith(prefix));
70
+ })
71
+ .map(([envName, envVal]) => {
72
+ const envStatement = `import.meta.env.${envName}`;
73
+ const envStatementRegExpStr = escapeRegex(envStatement) + '\\b';
74
+ // Security check
75
+ {
76
+ const isPrivate = !envName.startsWith(PUBLIC_ENV_PREFIX) && !PUBLIC_ENV_ALLOWLIST.includes(envName);
77
+ if (isPrivate && isClientSide) {
78
+ if (!new RegExp(envStatementRegExpStr).test(code))
79
+ return;
80
+ const modulePath = getModuleFilePathAbsolute(id, config);
81
+ const errMsgAddendum = isBuild
82
+ ? ''
83
+ : ' (Vike will prevent your app from building for production)';
84
+ const keyPublic = `${PUBLIC_ENV_PREFIX}${envName}`;
85
+ const errMsg = `${envStatement} is used in client-side file ${modulePath} which means that the environment variable ${envName} will be included in client-side bundles and, therefore, ${envName} will be publicly exposed which can be a security leak${errMsgAddendum}. Use ${envStatement} only in server-side files, or rename ${envName} to ${keyPublic}, see https://vike.dev/env`;
86
+ if (isBuild) {
87
+ assertUsage(false, errMsg);
88
+ }
89
+ else {
90
+ // - Only a warning for faster development DX (e.g. when user toggles `ssr: boolean` or `onBeforeRenderIsomorph: boolean`).
91
+ // - But only showing a warning can be confusing: https://github.com/vikejs/vike/issues/1641
92
+ assertWarning(false, errMsg, { onlyOnce: true });
93
+ }
72
94
  }
95
+ // Double check
96
+ assert(!(isPrivate && isClientSide) || !isBuild);
73
97
  }
74
- // Double check
75
- assert(!(isPrivate && isClientSide) || !isBuild);
76
- }
77
- return { regExpStr: envStatementRegExpStr, replacement: envVal };
78
- })
79
- .filter(isNotNullish);
80
- // Apply
81
- replacements.forEach(({ regExpStr, replacement }) => {
82
- magicString.replaceAll(new RegExp(regExpStr, 'g'), JSON.stringify(replacement));
83
- });
84
- if (!magicString.hasChanged())
85
- return null;
86
- return getMagicStringResult();
98
+ return { regExpStr: envStatementRegExpStr, replacement: envVal };
99
+ })
100
+ .filter(isNotNullish);
101
+ // Apply
102
+ replacements.forEach(({ regExpStr, replacement }) => {
103
+ magicString.replaceAll(new RegExp(regExpStr, 'g'), JSON.stringify(replacement));
104
+ });
105
+ if (!magicString.hasChanged())
106
+ return null;
107
+ return getMagicStringResult();
108
+ },
87
109
  },
88
110
  },
89
- };
111
+ ];
90
112
  }
@@ -3,5 +3,5 @@ export { isUsingClientRouter };
3
3
  export { extractExportNamesRE };
4
4
  import type { Plugin } from 'vite';
5
5
  declare const extractExportNamesRE: RegExp;
6
- declare function pluginExtractExportNames(): Plugin;
6
+ declare function pluginExtractExportNames(): Plugin[];
7
7
  declare function isUsingClientRouter(): boolean;