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
@@ -1,190 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getFilesystemRouteString = getFilesystemRouteString;
7
- exports.getFilesystemRouteDefinedBy = getFilesystemRouteDefinedBy;
8
- exports.isInherited = isInherited;
9
- exports.getLocationId = getLocationId;
10
- exports.sortAfterInheritanceOrder = sortAfterInheritanceOrder;
11
- exports.applyFilesystemRoutingRootEffect = applyFilesystemRoutingRootEffect;
12
- exports.getLogicalPath = getLogicalPath;
13
- const picocolors_1 = __importDefault(require("@brillout/picocolors"));
14
- const utils_js_1 = require("../../utils.js");
15
- (0, utils_js_1.assertIsNotProductionRuntime)();
16
- /**
17
- * `getLocationId('/pages/some-page/+Page.js')` => `'/pages/some-page'`
18
- * `getLocationId('/renderer/+config.js')` => `'/renderer'`
19
- *
20
- * The value `locationId` is always a user-land path, because Filesystem Routing/Inheritance only applies to the user-land (Vike never uses Filesystem Routing/Inheritance for `node_modules/**`).
21
- */
22
- function getLocationId(
23
- // We always determine `locationId` from a real user-land file: the `locationId` for Vike extensions is the `locationId` of the the user's `+config.js` that extends the Vike extension.
24
- filePathAbsoluteUserRootDir) {
25
- (0, utils_js_1.assertPosixPath)(filePathAbsoluteUserRootDir);
26
- (0, utils_js_1.assert)(filePathAbsoluteUserRootDir.startsWith('/'));
27
- const locationId = removeFilename(filePathAbsoluteUserRootDir);
28
- assertLocationId(locationId);
29
- return locationId;
30
- }
31
- /** Filesystem Routing: get the URL */
32
- function getFilesystemRouteString(locationId) {
33
- return getLogicalPath(locationId, ['renderer', 'pages', 'src', 'index'], true);
34
- }
35
- /** Filesystem Inheritance: get the apply root */
36
- function getInheritanceRoot(locationId) {
37
- return getLogicalPath(locationId, [
38
- 'renderer',
39
- // Enable hooks defined by vike-{react,vue,solid} such as +onBeforeRenderClient to be defined at the root directory. In other words, avoid following error:
40
- // ```bash
41
- // [11:09:43.072][/test-preview.test.ts][npm run preview][stderr] Error: [vike][Wrong Usage] /+onBeforeRenderClient.ts sets the value of the config onBeforeRenderClient which is a custom config that is defined with https://vike.dev/meta at a path that doesn't apply to / — see https://vike.dev/config#inheritance
42
- // ```
43
- 'pages',
44
- ]);
45
- }
46
- /**
47
- * getLogicalPath('/pages/some-page', ['pages']) => '/some-page'
48
- */
49
- function getLogicalPath(locationId, ignoredDirs, removeParenthesesDirs) {
50
- let logicalPath = removeIgnoredDirectories(locationId, ignoredDirs, removeParenthesesDirs);
51
- assertIsPath(logicalPath);
52
- return logicalPath;
53
- }
54
- // See getPlusFilesRelevant() and getPlusFilesOrdered()
55
- function sortAfterInheritanceOrder(locationId1, locationId2, locationIdPage) {
56
- assertLocationId(locationId1);
57
- assertLocationId(locationId2);
58
- if (locationId1 === locationId2)
59
- return 0;
60
- const inheritanceRoot1 = getInheritanceRoot(locationId1);
61
- const inheritanceRoot2 = getInheritanceRoot(locationId2);
62
- const inheritanceRootPage = getInheritanceRoot(locationIdPage);
63
- // Only works if both locationId1 and locationId2 are inherited by the same page
64
- (0, utils_js_1.assert)(isInherited(locationId1, locationIdPage));
65
- (0, utils_js_1.assert)(isInherited(locationId2, locationIdPage));
66
- // Equivalent assertion (see isInherited() implementation)
67
- (0, utils_js_1.assert)(startsWith(inheritanceRootPage, inheritanceRoot1));
68
- (0, utils_js_1.assert)(startsWith(inheritanceRootPage, inheritanceRoot2));
69
- if (inheritanceRoot1 !== inheritanceRoot2) {
70
- // Should be true since locationId1 and locationId2 are both inherited by the same page
71
- (0, utils_js_1.assert)(startsWith(inheritanceRoot1, inheritanceRoot2) || startsWith(inheritanceRoot2, inheritanceRoot1));
72
- (0, utils_js_1.assert)(inheritanceRoot1.length !== inheritanceRoot2.length);
73
- return (0, utils_js_1.higherFirst)((inheritanceRoot) => inheritanceRoot.length)(inheritanceRoot1, inheritanceRoot2);
74
- }
75
- // locationId1 first, i.e. `indexOf(locationId1) < indexOf(locationId2)`
76
- const locationId1First = -1;
77
- // locationId2 first, i.e. `indexOf(locationId2) < indexOf(locationId1)`
78
- const locationId2First = 1;
79
- if (locationIsRendererDir(locationId1) !== locationIsRendererDir(locationId2)) {
80
- return locationIsRendererDir(locationId1) ? locationId2First : locationId1First;
81
- }
82
- // Doesn't have any function beyond making the order deterministic
83
- // - Although we make /src/renderer/+config.js override /renderer/+config.js which potentially can make somewhat sense (e.g. when ejecting a renderer)
84
- if (locationId1.length !== locationId2.length) {
85
- return (0, utils_js_1.higherFirst)((locationId) => locationId.length)(locationId1, locationId2);
86
- }
87
- return locationId1 > locationId2 ? locationId1First : locationId2First;
88
- }
89
- function locationIsRendererDir(locationId) {
90
- return locationId.split('/').includes('renderer');
91
- }
92
- /** Whether configs defined at `locationId1` also apply at `locationId2` */
93
- function isInherited(locationId1, locationId2) {
94
- const inheritanceRoot1 = getInheritanceRoot(locationId1);
95
- const inheritanceRoot2 = getInheritanceRoot(locationId2);
96
- return startsWith(inheritanceRoot2, inheritanceRoot1);
97
- }
98
- function removeIgnoredDirectories(somePath, ignoredDirs, removeParenthesesDirs) {
99
- (0, utils_js_1.assertPosixPath)(somePath);
100
- somePath = somePath
101
- .split('/')
102
- .filter((dir) => {
103
- if (ignoredDirs.includes(dir)) {
104
- return false;
105
- }
106
- if (removeParenthesesDirs && dir.startsWith('(') && dir.endsWith(')')) {
107
- assertRedundantParentheses(dir, ignoredDirs, somePath);
108
- return false;
109
- }
110
- return true;
111
- })
112
- .join('/');
113
- if (somePath === '')
114
- somePath = '/';
115
- return somePath;
116
- }
117
- function assertRedundantParentheses(dir, ignoredDirs, somePath) {
118
- const dirWithoutParentheses = dir.slice(1, -1);
119
- if (!ignoredDirs.includes(dirWithoutParentheses)) {
120
- return;
121
- }
122
- const dirnameActual = dir;
123
- const dirnameCorrect = dirWithoutParentheses;
124
- const dirpathActual = somePath.slice(0, somePath.indexOf(dirnameActual) + dirnameActual.length);
125
- const dirpathCorrect = dirpathActual.replaceAll(dirnameActual, dirnameCorrect);
126
- const logDir = (d) => picocolors_1.default.bold(d + '/');
127
- (0, utils_js_1.assertWarning)(false, [
128
- `The directories ${logDir(dirnameCorrect)} are always ignored by Vike's Filesystem Routing`,
129
- '(https://vike.dev/filesystem-routing):',
130
- `rename directory ${logDir(dirpathActual)} to ${logDir(dirpathCorrect)}`,
131
- ].join(' '), { onlyOnce: true });
132
- }
133
- function removeFilename(filePathAbsoluteUserRootDir) {
134
- const filePathParts = filePathAbsoluteUserRootDir.split('/');
135
- {
136
- const filename = filePathParts.slice(-1)[0];
137
- (0, utils_js_1.assert)(filename.includes('.'));
138
- }
139
- let locationId = filePathParts.slice(0, -1).join('/');
140
- if (locationId === '')
141
- locationId = '/';
142
- assertLocationId(locationId);
143
- return locationId;
144
- }
145
- function getFilesystemRouteDefinedBy(locationId) {
146
- if (locationId === '/')
147
- return locationId;
148
- (0, utils_js_1.assert)(!locationId.endsWith('/'));
149
- const routeFilesystemDefinedBy = locationId + '/';
150
- return routeFilesystemDefinedBy;
151
- }
152
- function applyFilesystemRoutingRootEffect(routeFilesystem, filesystemRoutingRootEffect) {
153
- const { before, after } = filesystemRoutingRootEffect;
154
- (0, utils_js_1.assert)(after.startsWith('/'));
155
- (0, utils_js_1.assert)(routeFilesystem.startsWith(before));
156
- routeFilesystem = after + '/' + routeFilesystem.slice(before.length);
157
- routeFilesystem = '/' + routeFilesystem.split('/').filter(Boolean).join('/');
158
- return routeFilesystem;
159
- }
160
- function assertLocationId(locationId) {
161
- (0, utils_js_1.assert)(locationId.startsWith('/'));
162
- (0, utils_js_1.assert)(!locationId.endsWith('/') || locationId === '/');
163
- }
164
- function assertIsPath(logicalPath) {
165
- (0, utils_js_1.assert)(logicalPath.startsWith('/'));
166
- (0, utils_js_1.assert)(!logicalPath.endsWith('/') || logicalPath === '/');
167
- }
168
- /** Whether `inheritanceRoot1` starts with `inheritanceRoot2` */
169
- function startsWith(inheritanceRoot1, inheritanceRoot2) {
170
- assertIsPath(inheritanceRoot1);
171
- assertIsPath(inheritanceRoot2);
172
- const segments1 = inheritanceRoot1.split('/').filter(Boolean);
173
- const segments2 = inheritanceRoot2.split('/').filter(Boolean);
174
- for (const i in segments2) {
175
- const segment1 = segments1[i];
176
- const segment2 = segments2[i];
177
- if (segment1 !== segment2) {
178
- /* This assertion fails for:
179
- ```
180
- inheritanceRoot1: '/pages/about2'
181
- inheritanceRoot2: '/pages/about'
182
- ```
183
- assert(!inheritanceRoot1.startsWith(inheritanceRoot2))
184
- */
185
- return false;
186
- }
187
- }
188
- (0, utils_js_1.assert)(inheritanceRoot1.startsWith(inheritanceRoot2));
189
- return true;
190
- }
@@ -1,17 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getConfigFileExport = getConfigFileExport;
7
- const picocolors_1 = __importDefault(require("@brillout/picocolors"));
8
- const assertPlusFileExport_js_1 = require("../../../../shared/page-configs/assertPlusFileExport.js");
9
- const utils_js_1 = require("../../utils.js");
10
- function getConfigFileExport(fileExports, filePathToShowToUser) {
11
- (0, assertPlusFileExport_js_1.assertPlusFileExport)(fileExports, filePathToShowToUser, 'config');
12
- const usesNamedExport = !!fileExports.config;
13
- const fileExport = usesNamedExport ? fileExports.config : fileExports.default;
14
- const exportName = picocolors_1.default.cyan(usesNamedExport ? 'export { config }' : 'export default');
15
- (0, utils_js_1.assertUsage)((0, utils_js_1.isObject)(fileExport), `The ${exportName} of ${filePathToShowToUser} should be an object (but it's ${picocolors_1.default.cyan(`typeof exportedValue === ${JSON.stringify(typeof fileExport)}`)} instead)`);
16
- return fileExport;
17
- }
@@ -1,127 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getPlusFilesAll = getPlusFilesAll;
4
- const utils_js_1 = require("../../utils.js");
5
- const configDefinitionsBuiltIn_js_1 = require("./configDefinitionsBuiltIn.js");
6
- const filesystemRouting_js_1 = require("./filesystemRouting.js");
7
- const crawlPlusFiles_js_1 = require("./crawlPlusFiles.js");
8
- const getConfigFileExport_js_1 = require("./getConfigFileExport.js");
9
- const loadFileAtConfigTime_js_1 = require("./loadFileAtConfigTime.js");
10
- const resolvePointerImport_js_1 = require("./resolvePointerImport.js");
11
- const getFilePath_js_1 = require("../getFilePath.js");
12
- const assertExtensions_js_1 = require("./assertExtensions.js");
13
- async function getPlusFilesAll(userRootDir, esbuildCache) {
14
- const plusFiles = await findPlusFiles(userRootDir);
15
- const configFiles = [];
16
- const valueFiles = [];
17
- plusFiles.forEach((f) => {
18
- if ((0, crawlPlusFiles_js_1.getPlusFileValueConfigName)(f.filePathAbsoluteFilesystem) === 'config') {
19
- configFiles.push(f);
20
- }
21
- else {
22
- valueFiles.push(f);
23
- }
24
- });
25
- let plusFilesAll = {};
26
- await Promise.all([
27
- // Config files
28
- ...configFiles.map(async (filePath) => {
29
- const { filePathAbsoluteUserRootDir } = filePath;
30
- (0, utils_js_1.assert)(filePathAbsoluteUserRootDir);
31
- const { configFile, extendsConfigs } = await (0, loadFileAtConfigTime_js_1.loadConfigFile)(filePath, userRootDir, [], false, esbuildCache);
32
- (0, utils_js_1.assert)(filePath.filePathAbsoluteUserRootDir);
33
- const locationId = (0, filesystemRouting_js_1.getLocationId)(filePathAbsoluteUserRootDir);
34
- const plusFile = getPlusFileFromConfigFile(configFile, false, locationId, userRootDir);
35
- plusFilesAll[locationId] = plusFilesAll[locationId] ?? [];
36
- plusFilesAll[locationId].push(plusFile);
37
- extendsConfigs.forEach((extendsConfig) => {
38
- /* We purposely use the same locationId because the Vike extension's config should only apply to where it's being extended from, for example:
39
- ```js
40
- // /pages/admin/+config.js
41
-
42
- import vikeVue from 'vike-vue/config'
43
- // Should only apply to /pages/admin/**
44
- export default { extends: [vikeVue] }
45
- ```
46
- ```js
47
- // /pages/marketing/+config.js
48
-
49
- import vikeReact from 'vike-react/config'
50
- // Should only apply to /pages/marketing/**
51
- export default { extends: [vikeReact] }
52
- ```
53
- */
54
- const plusFile = getPlusFileFromConfigFile(extendsConfig, true, locationId, userRootDir);
55
- (0, assertExtensions_js_1.assertExtensionsConventions)(plusFile);
56
- plusFilesAll[locationId].push(plusFile);
57
- });
58
- }),
59
- // Value files
60
- ...valueFiles.map(async (filePath) => {
61
- const { filePathAbsoluteUserRootDir } = filePath;
62
- (0, utils_js_1.assert)(filePathAbsoluteUserRootDir);
63
- const configName = (0, crawlPlusFiles_js_1.getPlusFileValueConfigName)(filePathAbsoluteUserRootDir);
64
- (0, utils_js_1.assert)(configName);
65
- const locationId = (0, filesystemRouting_js_1.getLocationId)(filePathAbsoluteUserRootDir);
66
- const plusFile = {
67
- locationId,
68
- filePath,
69
- isConfigFile: false,
70
- isNotLoaded: true,
71
- configName,
72
- };
73
- plusFilesAll[locationId] = plusFilesAll[locationId] ?? [];
74
- plusFilesAll[locationId].push(plusFile);
75
- // We don't have access to the custom config definitions defined by the user yet.
76
- // - If `configDef` is `undefined` => we load the file +{configName}.js later.
77
- // - We already need to load +meta.js here (to get the custom config definitions defined by the user)
78
- await (0, loadFileAtConfigTime_js_1.loadValueFile)(plusFile, configDefinitionsBuiltIn_js_1.configDefinitionsBuiltIn, userRootDir, esbuildCache);
79
- }),
80
- ]);
81
- // Make lists element order deterministic
82
- Object.entries(plusFilesAll).forEach(([_locationId, plusFiles]) => {
83
- plusFiles.sort(sortMakeDeterministic);
84
- });
85
- assertPlusFiles(plusFilesAll);
86
- return plusFilesAll;
87
- }
88
- function assertPlusFiles(plusFilesAll) {
89
- const plusFiles = Object.values(plusFilesAll).flat();
90
- // The earlier we call it the better, so that +require can be used by Vike extensions to depend on new Vike features
91
- (0, assertExtensions_js_1.assertExtensionsRequire)(plusFiles);
92
- }
93
- function getPlusFileFromConfigFile(configFile, isExtensionConfig, locationId, userRootDir) {
94
- const { fileExports, filePath, extendsFilePaths } = configFile;
95
- const fileExportsByConfigName = {};
96
- const pointerImportsByConfigName = {};
97
- const fileExport = (0, getConfigFileExport_js_1.getConfigFileExport)(fileExports, filePath.filePathToShowToUser);
98
- Object.entries(fileExport).forEach(([configName, configValue]) => {
99
- fileExportsByConfigName[configName] = configValue;
100
- const pointerImport = (0, resolvePointerImport_js_1.resolvePointerImport)(configValue, configFile.filePath, userRootDir, configName);
101
- if (pointerImport) {
102
- pointerImportsByConfigName[configName] = {
103
- ...pointerImport,
104
- fileExportValueLoaded: false,
105
- };
106
- }
107
- });
108
- const plusFile = {
109
- locationId,
110
- filePath,
111
- fileExportsByConfigName,
112
- pointerImportsByConfigName,
113
- isConfigFile: true,
114
- isExtensionConfig,
115
- extendsFilePaths,
116
- };
117
- return plusFile;
118
- }
119
- // Make order deterministic (no other purpose)
120
- function sortMakeDeterministic(plusFile1, plusFile2) {
121
- return plusFile1.filePath.filePathAbsoluteVite < plusFile2.filePath.filePathAbsoluteVite ? -1 : 1;
122
- }
123
- async function findPlusFiles(userRootDir) {
124
- const files = await (0, crawlPlusFiles_js_1.crawlPlusFiles)(userRootDir);
125
- const plusFiles = files.map(({ filePathAbsoluteUserRootDir }) => (0, getFilePath_js_1.getFilePathResolved)({ filePathAbsoluteUserRootDir, userRootDir }));
126
- return plusFiles;
127
- }
@@ -1,129 +0,0 @@
1
- "use strict";
2
- // Files loaded at config time:
3
- var __importDefault = (this && this.__importDefault) || function (mod) {
4
- return (mod && mod.__esModule) ? mod : { "default": mod };
5
- };
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.loadPointerImport = loadPointerImport;
8
- exports.loadValueFile = loadValueFile;
9
- exports.loadConfigFile = loadConfigFile;
10
- const utils_js_1 = require("../../utils.js");
11
- const transpileAndExecuteFile_js_1 = require("./transpileAndExecuteFile.js");
12
- const resolveVikeConfigInternal_js_1 = require("../resolveVikeConfigInternal.js");
13
- const assertPlusFileExport_js_1 = require("../../../../shared/page-configs/assertPlusFileExport.js");
14
- const picocolors_1 = __importDefault(require("@brillout/picocolors"));
15
- const pointerImports_js_1 = require("./pointerImports.js");
16
- const getConfigFileExport_js_1 = require("./getConfigFileExport.js");
17
- const resolvePointerImport_js_1 = require("./resolvePointerImport.js");
18
- const getConfigDefinedAt_js_1 = require("../../../../shared/page-configs/getConfigDefinedAt.js");
19
- (0, utils_js_1.assertIsNotProductionRuntime)();
20
- // Load pointer import
21
- async function loadPointerImport(pointerImport, userRootDir, configName, configDefinitions, esbuildCache) {
22
- // The value of `extends` was already loaded and already used: we don't need the value of `extends` anymore
23
- if (configName === 'extends')
24
- return;
25
- const configDef = (0, resolveVikeConfigInternal_js_1.getConfigDefinitionOptional)(configDefinitions, configName);
26
- // Only load pointer import if `env.config===true`
27
- if (!configDef || !shouldBeLoadableAtBuildTime(configDef))
28
- return;
29
- const configDefinedAt = (0, getConfigDefinedAt_js_1.getConfigDefinedAt)('Config', configName, pointerImport.fileExportPath);
30
- (0, utils_js_1.assertUsage)(pointerImport.fileExportPath.filePathAbsoluteFilesystem, `${configDefinedAt} cannot be defined over an aliased import`);
31
- const { fileExports } = await (0, transpileAndExecuteFile_js_1.transpileAndExecuteFile)(pointerImport.fileExportPath, userRootDir, false, esbuildCache);
32
- const fileExportValue = fileExports[pointerImport.fileExportPath.fileExportName];
33
- pointerImport.fileExportValueLoaded = true;
34
- (0, utils_js_1.assert)(pointerImport.fileExportValueLoaded);
35
- pointerImport.fileExportValue = fileExportValue;
36
- }
37
- // Load +{configName}.js
38
- async function loadValueFile(interfaceValueFile, configDefinitions, userRootDir, esbuildCache) {
39
- const { configName } = interfaceValueFile;
40
- const configDef = (0, resolveVikeConfigInternal_js_1.getConfigDefinitionOptional)(configDefinitions, configName);
41
- // Only load value files with `env.config===true`
42
- if (!configDef || !shouldBeLoadableAtBuildTime(configDef))
43
- return;
44
- interfaceValueFile.isNotLoaded = false;
45
- (0, utils_js_1.assert)(!interfaceValueFile.isNotLoaded);
46
- interfaceValueFile.fileExportsByConfigName = {};
47
- const { fileExports } = await (0, transpileAndExecuteFile_js_1.transpileAndExecuteFile)(interfaceValueFile.filePath, userRootDir, false, esbuildCache);
48
- const { filePathToShowToUser } = interfaceValueFile.filePath;
49
- (0, assertPlusFileExport_js_1.assertPlusFileExport)(fileExports, filePathToShowToUser, configName);
50
- Object.entries(fileExports).forEach(([exportName, configValue]) => {
51
- const configName_ = exportName === 'default' ? configName : exportName;
52
- interfaceValueFile.fileExportsByConfigName[configName_] = configValue;
53
- });
54
- }
55
- // Load +config.js, including all its extends pointer imports
56
- async function loadConfigFile(configFilePath, userRootDir, visited, isExtensionConfig, esbuildCache) {
57
- const { filePathAbsoluteFilesystem } = configFilePath;
58
- assertNoInfiniteLoop(visited, filePathAbsoluteFilesystem);
59
- const { fileExports } = await (0, transpileAndExecuteFile_js_1.transpileAndExecuteFile)(configFilePath, userRootDir, isExtensionConfig, esbuildCache);
60
- const { extendsConfigs, extendsFilePaths } = await loadExtendsConfigs(fileExports, configFilePath, userRootDir, [...visited, filePathAbsoluteFilesystem], esbuildCache);
61
- const configFile = {
62
- fileExports,
63
- filePath: configFilePath,
64
- extendsFilePaths,
65
- };
66
- return { configFile, extendsConfigs };
67
- }
68
- function assertNoInfiniteLoop(visited, filePathAbsoluteFilesystem) {
69
- const idx = visited.indexOf(filePathAbsoluteFilesystem);
70
- if (idx === -1)
71
- return;
72
- const loop = visited.slice(idx);
73
- (0, utils_js_1.assert)(loop[0] === filePathAbsoluteFilesystem);
74
- (0, utils_js_1.assertUsage)(idx === -1, `Infinite extends loop ${[...loop, filePathAbsoluteFilesystem].join('>')}`);
75
- }
76
- async function loadExtendsConfigs(configFileExports, configFilePath, userRootDir, visited, esbuildCache) {
77
- const { extendsPointerImportData, extendsConfigs } = getExtendsPointerImportData(configFileExports, configFilePath);
78
- const extendsConfigFiles = [];
79
- extendsPointerImportData.map((pointerImportData) => {
80
- const filePath = (0, resolvePointerImport_js_1.resolvePointerImportData)(pointerImportData, configFilePath, userRootDir);
81
- (0, utils_js_1.assert)(filePath.filePathAbsoluteFilesystem);
82
- extendsConfigFiles.push(filePath);
83
- });
84
- const results = await Promise.all(extendsConfigFiles.map(async (configFilePath) => await loadConfigFile(configFilePath, userRootDir, visited, true, esbuildCache)));
85
- results.forEach((result) => {
86
- extendsConfigs.push(result.configFile);
87
- extendsConfigs.push(...result.extendsConfigs);
88
- });
89
- const extendsFilePaths = extendsConfigFiles.map((f) => f.filePathAbsoluteFilesystem);
90
- return { extendsConfigs, extendsFilePaths };
91
- }
92
- function getExtendsPointerImportData(configFileExports, configFilePath) {
93
- const { filePathToShowToUser } = configFilePath;
94
- const configFileExport = (0, getConfigFileExport_js_1.getConfigFileExport)(configFileExports, filePathToShowToUser);
95
- const extendsConfigs = [];
96
- const extendsPointerImportData = [];
97
- if ('extends' in configFileExport) {
98
- const extendsValue = configFileExport.extends;
99
- const extendList = [];
100
- const wrongUsage = `${filePathToShowToUser} sets the config ${picocolors_1.default.cyan('extends')} to an invalid value, see https://vike.dev/extends`;
101
- if (typeof extendsValue === 'string') {
102
- extendList.push(extendsValue);
103
- }
104
- else if ((0, utils_js_1.isArrayOfStrings)(extendsValue)) {
105
- extendList.push(...extendsValue);
106
- }
107
- else if ((0, utils_js_1.isObject)(extendsValue)) {
108
- /* If we want to implement this then we need to make filePath optional
109
- extendsConfigs.push({
110
- fileExports: extendsValue,
111
- filePath: null,
112
- })
113
- */
114
- (0, utils_js_1.assertUsage)(false, wrongUsage);
115
- }
116
- else {
117
- (0, utils_js_1.assertUsage)(false, wrongUsage);
118
- }
119
- extendsPointerImportData.push(...extendList.map((importString) => {
120
- const pointerImportData = (0, pointerImports_js_1.parsePointerImportData)(importString);
121
- (0, utils_js_1.assertUsage)(pointerImportData, wrongUsage);
122
- return pointerImportData;
123
- }));
124
- }
125
- return { extendsPointerImportData, extendsConfigs };
126
- }
127
- function shouldBeLoadableAtBuildTime(configDef) {
128
- return !!configDef.env.config && !configDef._valueIsFilePath;
129
- }
@@ -1,195 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.transformPointerImports = transformPointerImports;
7
- exports.parsePointerImportData = parsePointerImportData;
8
- exports.isPointerImportData = isPointerImportData;
9
- exports.assertPointerImportPath = assertPointerImportPath;
10
- // Playground: https://github.com/brillout/acorn-playground
11
- // Notes about `with { type: 'pointer' }`
12
- // - It works well with TypeScript: it doesn't complain upon `with { type: 'unknown-to-typescript' }` and go-to-definition & types are preserved: https://www.typescriptlang.org/docs/handbook/release-notes/typescript-5-3.html#import-attributes
13
- // - Acorn support for import attributes: https://github.com/acornjs/acorn/issues/983
14
- // - Acorn plugin: https://github.com/acornjs/acorn/issues/983
15
- // - Isn't stage 4 yet: https://github.com/tc39/proposal-import-attributes
16
- // - Using a import path suffix such as `import { Layout } from './Layout?real` breaks TypeScript, and TypeScript isn't working on supporting query params: https://github.com/microsoft/TypeScript/issues/10988#issuecomment-867135453
17
- // - Node.js >=21 supports import attributes: https://nodejs.org/api/esm.html#import-attributes
18
- // - Esbuid supports
19
- // - Blocker: https://github.com/evanw/esbuild/issues/3646
20
- // - Ugly hack to make it work: https://github.com/brillout/esbuild-playground/tree/experiment/import-attribute
21
- // - Discussion with esbuild maintainer: https://github.com/evanw/esbuild/issues/3384
22
- // - Using a magic comment `// @vike-real-import` is probably a bad idea:
23
- // - Esbuild removes comments: https://github.com/evanw/esbuild/issues/1439#issuecomment-877656182
24
- // - Using source maps to track these magic comments is brittle (source maps can easily break)
25
- const acorn_1 = require("acorn");
26
- const utils_js_1 = require("../../utils.js");
27
- const picocolors_1 = __importDefault(require("@brillout/picocolors"));
28
- function transformPointerImports(code, filePathToShowToUser2, pointerImports,
29
- // For ./transformPointerImports.spec.ts
30
- skipWarnings) {
31
- const spliceOperations = [];
32
- // Performance trick
33
- if (!code.includes('import'))
34
- return null;
35
- const imports = getImports(code);
36
- if (imports.length === 0)
37
- return null;
38
- imports.forEach((node) => {
39
- if (node.type !== 'ImportDeclaration')
40
- return;
41
- const importPath = node.source.value;
42
- (0, utils_js_1.assert)(typeof importPath === 'string');
43
- if (pointerImports !== 'all') {
44
- (0, utils_js_1.assert)(importPath in pointerImports);
45
- const isPointerImport = pointerImports[importPath];
46
- (0, utils_js_1.assert)(isPointerImport === true || isPointerImport === false);
47
- if (!isPointerImport)
48
- return;
49
- }
50
- const { start, end } = node;
51
- const importStatementCode = code.slice(start, end);
52
- /* Pointer import without importing any value => doesn't make sense and doesn't have any effect.
53
- ```js
54
- // Useless
55
- import './some.css'
56
- // Useless
57
- import './Layout.jsx'
58
- ``` */
59
- if (node.specifiers.length === 0) {
60
- const isWarning = !utils_js_1.styleFileRE.test(importPath);
61
- let quote = indent(importStatementCode);
62
- if (isWarning) {
63
- quote = picocolors_1.default.cyan(quote);
64
- }
65
- else {
66
- quote = picocolors_1.default.bold(picocolors_1.default.red(quote));
67
- }
68
- const errMsg = [
69
- `The following import in ${filePathToShowToUser2} has no effect:`,
70
- quote,
71
- 'See https://vike.dev/config#pointer-imports',
72
- ].join('\n');
73
- if (!skipWarnings) {
74
- if (!isWarning) {
75
- (0, utils_js_1.assertUsage)(false, errMsg);
76
- }
77
- (0, utils_js_1.assertWarning)(false, errMsg, { onlyOnce: true });
78
- }
79
- }
80
- let replacement = '';
81
- node.specifiers.forEach((specifier) => {
82
- (0, utils_js_1.assert)(specifier.type === 'ImportSpecifier' ||
83
- specifier.type === 'ImportDefaultSpecifier' ||
84
- specifier.type === 'ImportNamespaceSpecifier');
85
- const importLocalName = specifier.local.name;
86
- const exportName = (() => {
87
- if (specifier.type === 'ImportDefaultSpecifier')
88
- return 'default';
89
- if (specifier.type === 'ImportNamespaceSpecifier')
90
- return '*';
91
- {
92
- const imported = specifier.imported;
93
- if (imported)
94
- return imported.name;
95
- }
96
- return importLocalName;
97
- })();
98
- const importString = serializePointerImportData({ importPath, exportName, importStringWasGenerated: true });
99
- replacement += `const ${importLocalName} = '${importString}';`;
100
- });
101
- spliceOperations.push({
102
- start,
103
- end,
104
- replacement,
105
- });
106
- });
107
- const codeMod = spliceMany(code, spliceOperations);
108
- return codeMod;
109
- }
110
- function getImports(code) {
111
- const { body } = (0, acorn_1.parse)(code, {
112
- ecmaVersion: 'latest',
113
- sourceType: 'module',
114
- // https://github.com/acornjs/acorn/issues/1136
115
- });
116
- const imports = [];
117
- body.forEach((node) => {
118
- if (node.type === 'ImportDeclaration')
119
- imports.push(node);
120
- });
121
- return imports;
122
- }
123
- const import_ = 'import';
124
- const SEP = ':';
125
- const zeroWidthSpace = '\u200b';
126
- function serializePointerImportData({ importPath, exportName, importStringWasGenerated, }) {
127
- const tag = importStringWasGenerated ? zeroWidthSpace : '';
128
- // `import:${importPath}:${importPath}`
129
- return `${tag}${import_}${SEP}${importPath}${SEP}${exportName}`;
130
- }
131
- function isPointerImportData(str) {
132
- return str.startsWith(import_ + SEP) || str.startsWith(zeroWidthSpace + import_ + SEP);
133
- }
134
- function parsePointerImportData(importString) {
135
- if (!isPointerImportData(importString)) {
136
- return null;
137
- }
138
- let importStringWasGenerated = false;
139
- if (importString.startsWith(zeroWidthSpace)) {
140
- importStringWasGenerated = true;
141
- (0, utils_js_1.assert)(zeroWidthSpace.length === 1);
142
- importString = importString.slice(1);
143
- }
144
- const parts = importString.split(SEP).slice(1);
145
- if (!importStringWasGenerated && parts.length === 1) {
146
- const exportName = 'default';
147
- const importPath = parts[0];
148
- return { importPath, exportName, importStringWasGenerated, importString };
149
- }
150
- (0, utils_js_1.assert)(parts.length >= 2);
151
- const exportName = parts[parts.length - 1];
152
- const importPath = parts.slice(0, -1).join(SEP);
153
- if (importPath.startsWith('.') && !(importPath.startsWith('./') || importPath.startsWith('../'))) {
154
- (0, utils_js_1.assert)(!importStringWasGenerated);
155
- (0, utils_js_1.assertUsage)(false, `Invalid relative import path ${picocolors_1.default.code(importPath)} defined by ${picocolors_1.default.code(JSON.stringify(importString))} because it should start with ${picocolors_1.default.code('./')} or ${picocolors_1.default.code('../')}, or use an npm package import instead.`);
156
- }
157
- assertPointerImportPath(importPath);
158
- return { importPath, exportName, importStringWasGenerated, importString };
159
- }
160
- // `importPath` is one of the following:
161
- // - A relative import path
162
- // - An npm package import
163
- // - A filesystem absolute path, see transpileWithEsbuild()
164
- function assertPointerImportPath(importPath) {
165
- return (0, utils_js_1.isImportPath)(importPath) || (0, utils_js_1.isFilePathAbsolute)(importPath);
166
- }
167
- function spliceMany(str, operations) {
168
- let strMod = '';
169
- let endPrev;
170
- operations.forEach(({ start, end, replacement }) => {
171
- if (endPrev !== undefined) {
172
- (0, utils_js_1.assert)(endPrev < start);
173
- }
174
- else {
175
- endPrev = 0;
176
- }
177
- const replaced = str.slice(start, end);
178
- strMod +=
179
- str.slice(endPrev, start) +
180
- replacement +
181
- // Preserve number of lines for source map
182
- Array(replaced.split('\n').length - replacement.split('\n').length)
183
- .fill('\n')
184
- .join('');
185
- endPrev = end;
186
- });
187
- strMod += str.slice(endPrev, str.length);
188
- return strMod;
189
- }
190
- function indent(str) {
191
- return str
192
- .split('\n')
193
- .map((s) => ` ${s}`)
194
- .join('\n');
195
- }