vike 0.4.171 → 0.4.172-commit-c1b0884

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 (216) hide show
  1. package/dist/cjs/node/plugin/index.js +3 -0
  2. package/dist/cjs/node/plugin/plugins/buildConfig.js +3 -4
  3. package/dist/cjs/node/plugin/plugins/config/index.js +9 -5
  4. package/dist/cjs/node/plugin/plugins/devConfig/determineOptimizeDeps.js +18 -15
  5. package/dist/cjs/node/plugin/plugins/devConfig/index.js +2 -1
  6. package/dist/cjs/node/plugin/plugins/envVars.js +2 -1
  7. package/dist/cjs/node/plugin/plugins/extractAssetsPlugin.js +1 -1
  8. package/dist/cjs/node/plugin/plugins/importUserCode/{generateEagerImport.js → addImportStatement.js} +8 -10
  9. package/dist/cjs/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.js +0 -1
  10. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js +3 -3
  11. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/crawlPlusFiles.js +19 -7
  12. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/loadFileAtConfigTime.js +2 -2
  13. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +43 -85
  14. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVirtualFilePageConfigValuesAll.js +5 -44
  15. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVirtualFilePageConfigs.js +10 -51
  16. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/isRuntimeEnvMatch.js +6 -0
  17. package/dist/cjs/node/plugin/resolveClientEntriesDev.js +59 -0
  18. package/dist/cjs/node/plugin/shared/addSsrMiddleware.js +17 -2
  19. package/dist/cjs/node/prerender/runPrerender.js +35 -15
  20. package/dist/cjs/node/prerender/utils.js +1 -0
  21. package/dist/cjs/node/runtime/html/injectAssets/getHtmlTags.js +3 -3
  22. package/dist/cjs/node/runtime/html/injectAssets/getViteDevScripts.js +2 -1
  23. package/dist/cjs/node/runtime/html/injectAssets/mergeScriptTags.js +2 -8
  24. package/dist/cjs/node/runtime/html/renderHtml.js +19 -20
  25. package/dist/cjs/node/runtime/html/serializePageContextClientSide.js +1 -1
  26. package/dist/cjs/node/runtime/html/stream.js +9 -9
  27. package/dist/cjs/node/runtime/renderPage/analyzePage.js +9 -7
  28. package/dist/cjs/node/runtime/renderPage/createHttpResponseObject/getCacheControl.js +1 -1
  29. package/dist/cjs/node/runtime/renderPage/executeOnBeforeRenderAndDataHooks.js +2 -2
  30. package/dist/cjs/node/runtime/renderPage/executeOnRenderHtmlHook.js +8 -8
  31. package/dist/cjs/node/runtime/renderPage/getHttpResponseBody.js +2 -2
  32. package/dist/cjs/node/runtime/renderPage/getPageAssets.js +9 -59
  33. package/dist/cjs/node/runtime/renderPage/loadUserFilesServerSide.js +4 -5
  34. package/dist/cjs/node/runtime/renderPage/logErrorHint.js +91 -282
  35. package/dist/cjs/node/runtime/renderPage/preparePageContextForUserConsumptionServerSide.js +2 -2
  36. package/dist/cjs/node/runtime/renderPage/renderPageAlreadyRouted.js +30 -10
  37. package/dist/cjs/node/runtime/renderPage.js +24 -17
  38. package/dist/cjs/node/runtime/utils.js +2 -0
  39. package/dist/cjs/node/shared/assertV1Design.js +3 -4
  40. package/dist/cjs/shared/getPageContext.js +5 -0
  41. package/dist/cjs/shared/{addUrlComputedProps.js → getPageContextUrlComputed.js} +52 -42
  42. package/dist/cjs/shared/getPageFiles/analyzeClientSide.js +2 -2
  43. package/dist/cjs/shared/getPageFiles/getExports.js +49 -1
  44. package/dist/cjs/shared/getPageFiles/parseGlobResults.js +15 -8
  45. package/dist/cjs/shared/hooks/executeHook.js +22 -3
  46. package/dist/cjs/shared/hooks/getHook.js +2 -2
  47. package/dist/cjs/shared/page-configs/getConfigValue.js +14 -17
  48. package/dist/cjs/shared/page-configs/getConfigValueBuildTime.js +70 -0
  49. package/dist/cjs/shared/page-configs/loadConfigValues.js +3 -12
  50. package/dist/cjs/shared/page-configs/serialize/assertPageConfigsSerialized.js +0 -18
  51. package/dist/cjs/shared/page-configs/serialize/parsePageConfigs.js +110 -16
  52. package/dist/cjs/shared/page-configs/serialize/serializeConfigValues.js +198 -0
  53. package/dist/cjs/shared/route/executeGuardHook.js +1 -1
  54. package/dist/cjs/shared/route/executeOnBeforeRouteHook.js +1 -1
  55. package/dist/cjs/shared/route/index.js +2 -2
  56. package/dist/cjs/shared/route/loadPageRoutes.js +2 -2
  57. package/dist/cjs/shared/route/resolveRouteFunction.js +2 -2
  58. package/dist/cjs/shared/sortPageContext.js +4 -8
  59. package/dist/cjs/shared/utils.js +2 -0
  60. package/dist/cjs/utils/assert.js +3 -3
  61. package/dist/cjs/utils/assertNodeVersion.js +1 -1
  62. package/dist/cjs/utils/changeEnumerable.js +9 -0
  63. package/dist/cjs/utils/escapeHtml.js +14 -0
  64. package/dist/cjs/utils/getPropAccessNotation.js +1 -4
  65. package/dist/cjs/utils/hasProp.js +5 -7
  66. package/dist/cjs/utils/normalizeHeaders.js +13 -0
  67. package/dist/cjs/utils/objectAssign.js +1 -1
  68. package/dist/cjs/utils/objectDefineProperty.js +8 -0
  69. package/dist/cjs/utils/objectKeys.js +8 -4
  70. package/dist/cjs/utils/projectInfo.js +1 -1
  71. package/dist/esm/client/client-routing-runtime/createPageContext.d.ts +6 -4
  72. package/dist/esm/client/client-routing-runtime/createPageContext.js +4 -3
  73. package/dist/esm/client/client-routing-runtime/getPageContextFromHooks.js +16 -12
  74. package/dist/esm/client/client-routing-runtime/installClientRouter.js +18 -10
  75. package/dist/esm/client/client-routing-runtime/renderPageClientSide.js +3 -3
  76. package/dist/esm/client/server-routing-runtime/getPageContext.d.ts +4 -4
  77. package/dist/esm/client/server-routing-runtime/utils.d.ts +1 -0
  78. package/dist/esm/client/server-routing-runtime/utils.js +1 -0
  79. package/dist/esm/client/shared/executeOnRenderClientHook.js +1 -1
  80. package/dist/esm/client/shared/getPageContextProxyForUser.d.ts +3 -2
  81. package/dist/esm/client/shared/getPageContextProxyForUser.js +35 -48
  82. package/dist/esm/client/shared/loadUserFilesClientSide.js +4 -4
  83. package/dist/esm/node/plugin/index.js +3 -0
  84. package/dist/esm/node/plugin/plugins/buildConfig.js +3 -4
  85. package/dist/esm/node/plugin/plugins/config/index.js +9 -5
  86. package/dist/esm/node/plugin/plugins/devConfig/determineOptimizeDeps.js +18 -15
  87. package/dist/esm/node/plugin/plugins/devConfig/index.js +2 -1
  88. package/dist/esm/node/plugin/plugins/envVars.js +2 -1
  89. package/dist/esm/node/plugin/plugins/extractAssetsPlugin.js +1 -1
  90. package/dist/esm/node/plugin/plugins/importUserCode/addImportStatement.d.ts +14 -0
  91. package/dist/esm/node/plugin/plugins/importUserCode/{generateEagerImport.js → addImportStatement.js} +7 -9
  92. package/dist/esm/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.js +0 -1
  93. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.d.ts +2 -1
  94. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js +3 -3
  95. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/crawlPlusFiles.d.ts +1 -1
  96. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/crawlPlusFiles.js +20 -8
  97. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/loadFileAtConfigTime.js +2 -2
  98. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.d.ts +4 -1
  99. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +43 -85
  100. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVirtualFilePageConfigValuesAll.js +5 -44
  101. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVirtualFilePageConfigs.js +10 -51
  102. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/isRuntimeEnvMatch.d.ts +1 -0
  103. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/isRuntimeEnvMatch.js +6 -0
  104. package/dist/esm/node/plugin/resolveClientEntriesDev.d.ts +4 -0
  105. package/dist/esm/node/plugin/resolveClientEntriesDev.js +56 -0
  106. package/dist/esm/node/plugin/shared/addSsrMiddleware.js +14 -2
  107. package/dist/esm/node/prerender/runPrerender.js +37 -17
  108. package/dist/esm/node/prerender/utils.d.ts +1 -0
  109. package/dist/esm/node/prerender/utils.js +1 -0
  110. package/dist/esm/node/runtime/html/injectAssets/getHtmlTags.js +3 -3
  111. package/dist/esm/node/runtime/html/injectAssets/getViteDevScripts.js +3 -2
  112. package/dist/esm/node/runtime/html/injectAssets/mergeScriptTags.d.ts +1 -1
  113. package/dist/esm/node/runtime/html/injectAssets/mergeScriptTags.js +2 -8
  114. package/dist/esm/node/runtime/html/renderHtml.js +19 -20
  115. package/dist/esm/node/runtime/html/serializePageContextClientSide.js +1 -1
  116. package/dist/esm/node/runtime/html/stream.d.ts +1 -1
  117. package/dist/esm/node/runtime/html/stream.js +9 -9
  118. package/dist/esm/node/runtime/renderPage/analyzePage.js +9 -7
  119. package/dist/esm/node/runtime/renderPage/createHttpResponseObject/getCacheControl.js +2 -2
  120. package/dist/esm/node/runtime/renderPage/executeOnBeforeRenderAndDataHooks.js +2 -2
  121. package/dist/esm/node/runtime/renderPage/executeOnRenderHtmlHook.js +8 -8
  122. package/dist/esm/node/runtime/renderPage/getHttpResponseBody.js +2 -2
  123. package/dist/esm/node/runtime/renderPage/getPageAssets.d.ts +3 -0
  124. package/dist/esm/node/runtime/renderPage/getPageAssets.js +9 -59
  125. package/dist/esm/node/runtime/renderPage/loadUserFilesServerSide.d.ts +1 -6
  126. package/dist/esm/node/runtime/renderPage/loadUserFilesServerSide.js +4 -5
  127. package/dist/esm/node/runtime/renderPage/logErrorHint.d.ts +2 -6
  128. package/dist/esm/node/runtime/renderPage/logErrorHint.js +92 -283
  129. package/dist/esm/node/runtime/renderPage/preparePageContextForUserConsumptionServerSide.d.ts +2 -2
  130. package/dist/esm/node/runtime/renderPage/preparePageContextForUserConsumptionServerSide.js +2 -2
  131. package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.d.ts +65 -39
  132. package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.js +31 -11
  133. package/dist/esm/node/runtime/renderPage.js +24 -17
  134. package/dist/esm/node/runtime/utils.d.ts +2 -0
  135. package/dist/esm/node/runtime/utils.js +2 -0
  136. package/dist/esm/node/shared/assertV1Design.d.ts +2 -2
  137. package/dist/esm/node/shared/assertV1Design.js +3 -4
  138. package/dist/esm/shared/ConfigVike.d.ts +7 -0
  139. package/dist/esm/shared/VikeNamespace.d.ts +9 -0
  140. package/dist/esm/shared/getPageContext.d.ts +1 -0
  141. package/dist/esm/shared/getPageContext.js +1 -0
  142. package/dist/esm/shared/{addUrlComputedProps.d.ts → getPageContextUrlComputed.d.ts} +23 -21
  143. package/dist/esm/shared/{addUrlComputedProps.js → getPageContextUrlComputed.js} +52 -42
  144. package/dist/esm/shared/getPageFiles/analyzeClientSide.js +3 -3
  145. package/dist/esm/shared/getPageFiles/getExports.d.ts +36 -0
  146. package/dist/esm/shared/getPageFiles/getExports.js +50 -2
  147. package/dist/esm/shared/getPageFiles/parseGlobResults.js +14 -7
  148. package/dist/esm/shared/hooks/executeHook.d.ts +10 -1
  149. package/dist/esm/shared/hooks/executeHook.js +21 -2
  150. package/dist/esm/shared/hooks/getHook.d.ts +2 -2
  151. package/dist/esm/shared/hooks/getHook.js +3 -3
  152. package/dist/esm/shared/page-configs/Config/PageContextConfig.d.ts +2 -2
  153. package/dist/esm/shared/page-configs/PageConfig.d.ts +14 -8
  154. package/dist/esm/shared/page-configs/getConfigValue.d.ts +12 -12
  155. package/dist/esm/shared/page-configs/getConfigValue.js +13 -16
  156. package/dist/esm/shared/page-configs/getConfigValueBuildTime.d.ts +9 -0
  157. package/dist/esm/shared/page-configs/getConfigValueBuildTime.js +67 -0
  158. package/dist/esm/shared/page-configs/loadConfigValues.js +3 -12
  159. package/dist/esm/shared/page-configs/serialize/PageConfigSerialized.d.ts +17 -21
  160. package/dist/esm/shared/page-configs/serialize/assertPageConfigsSerialized.d.ts +1 -5
  161. package/dist/esm/shared/page-configs/serialize/assertPageConfigsSerialized.js +1 -16
  162. package/dist/esm/shared/page-configs/serialize/parsePageConfigs.d.ts +4 -1
  163. package/dist/esm/shared/page-configs/serialize/parsePageConfigs.js +109 -15
  164. package/dist/esm/shared/page-configs/serialize/serializeConfigValues.d.ts +5 -0
  165. package/dist/esm/shared/page-configs/serialize/serializeConfigValues.js +192 -0
  166. package/dist/esm/shared/route/executeGuardHook.js +1 -1
  167. package/dist/esm/shared/route/executeOnBeforeRouteHook.js +1 -1
  168. package/dist/esm/shared/route/index.d.ts +3 -3
  169. package/dist/esm/shared/route/index.js +2 -2
  170. package/dist/esm/shared/route/loadPageRoutes.js +3 -3
  171. package/dist/esm/shared/route/resolveRouteFunction.d.ts +2 -2
  172. package/dist/esm/shared/route/resolveRouteFunction.js +2 -2
  173. package/dist/esm/shared/sortPageContext.js +4 -8
  174. package/dist/esm/shared/types.d.ts +32 -6
  175. package/dist/esm/shared/utils.d.ts +2 -0
  176. package/dist/esm/shared/utils.js +2 -0
  177. package/dist/esm/types/index.d.ts +1 -1
  178. package/dist/esm/utils/assert.js +3 -3
  179. package/dist/esm/utils/assertNodeVersion.js +1 -1
  180. package/dist/esm/utils/changeEnumerable.d.ts +2 -0
  181. package/dist/esm/utils/changeEnumerable.js +5 -0
  182. package/dist/esm/utils/escapeHtml.d.ts +1 -0
  183. package/dist/esm/utils/escapeHtml.js +10 -0
  184. package/dist/esm/utils/getPropAccessNotation.d.ts +1 -2
  185. package/dist/esm/utils/getPropAccessNotation.js +2 -6
  186. package/dist/esm/utils/hasProp.d.ts +4 -13
  187. package/dist/esm/utils/hasProp.js +5 -7
  188. package/dist/esm/utils/normalizeHeaders.d.ts +1 -0
  189. package/dist/esm/utils/normalizeHeaders.js +9 -0
  190. package/dist/esm/utils/objectAssign.js +1 -1
  191. package/dist/esm/utils/objectDefineProperty.d.ts +4 -0
  192. package/dist/esm/utils/objectDefineProperty.js +4 -0
  193. package/dist/esm/utils/objectKeys.d.ts +1 -3
  194. package/dist/esm/utils/objectKeys.js +8 -4
  195. package/dist/esm/utils/projectInfo.d.ts +2 -2
  196. package/dist/esm/utils/projectInfo.js +1 -1
  197. package/package.json +23 -14
  198. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getConfigValuesSerialized.js +0 -76
  199. package/dist/cjs/node/plugin/shared/getConfigValueSourcesNotOverriden.js +0 -14
  200. package/dist/cjs/node/shared/getClientEntry.js +0 -12
  201. package/dist/cjs/shared/page-configs/serialize/parseConfigValuesImported.js +0 -85
  202. package/dist/cjs/shared/page-configs/serialize/parseConfigValuesSerialized.js +0 -24
  203. package/dist/cjs/shared/page-configs/serialize/serializeConfigValue.js +0 -50
  204. package/dist/esm/node/plugin/plugins/importUserCode/generateEagerImport.d.ts +0 -16
  205. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getConfigValuesSerialized.d.ts +0 -5
  206. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getConfigValuesSerialized.js +0 -70
  207. package/dist/esm/node/plugin/shared/getConfigValueSourcesNotOverriden.d.ts +0 -5
  208. package/dist/esm/node/plugin/shared/getConfigValueSourcesNotOverriden.js +0 -11
  209. package/dist/esm/node/shared/getClientEntry.d.ts +0 -3
  210. package/dist/esm/node/shared/getClientEntry.js +0 -9
  211. package/dist/esm/shared/page-configs/serialize/parseConfigValuesImported.d.ts +0 -4
  212. package/dist/esm/shared/page-configs/serialize/parseConfigValuesImported.js +0 -82
  213. package/dist/esm/shared/page-configs/serialize/parseConfigValuesSerialized.d.ts +0 -4
  214. package/dist/esm/shared/page-configs/serialize/parseConfigValuesSerialized.js +0 -21
  215. package/dist/esm/shared/page-configs/serialize/serializeConfigValue.d.ts +0 -8
  216. package/dist/esm/shared/page-configs/serialize/serializeConfigValue.js +0 -47
@@ -9,7 +9,7 @@ function getCacheControl(pageId, pageConfigs) {
9
9
  if (pageConfigs.length === 0)
10
10
  return defaultValue;
11
11
  const pageConfig = (0, helpers_js_1.getPageConfig)(pageId, pageConfigs);
12
- const configValue = (0, getConfigValue_js_1.getConfigValue)(pageConfig, 'cacheControl', 'string');
12
+ const configValue = (0, getConfigValue_js_1.getConfigValueRuntime)(pageConfig, 'cacheControl', 'string');
13
13
  const value = configValue?.value;
14
14
  if (value)
15
15
  return value;
@@ -16,7 +16,7 @@ async function executeOnBeforeRenderAndDataHooks(pageContext) {
16
16
  }
17
17
  (0, preparePageContextForUserConsumptionServerSide_js_1.preparePageContextForUserConsumptionServerSide)(pageContext);
18
18
  if (dataHook) {
19
- const hookResult = await (0, executeHook_js_1.executeHook)(() => dataHook.hookFn(pageContext), dataHook);
19
+ const hookResult = await (0, executeHook_js_1.executeHook)(() => dataHook.hookFn(pageContext), dataHook, pageContext);
20
20
  // Note: hookResult can be anything (e.g. an object) and is to be assigned to pageContext.data
21
21
  const pageContextFromHook = {
22
22
  data: hookResult
@@ -24,7 +24,7 @@ async function executeOnBeforeRenderAndDataHooks(pageContext) {
24
24
  Object.assign(pageContext, pageContextFromHook);
25
25
  }
26
26
  if (onBeforeRenderHook) {
27
- const hookResult = await (0, executeHook_js_1.executeHook)(() => onBeforeRenderHook.hookFn(pageContext), onBeforeRenderHook);
27
+ const hookResult = await (0, executeHook_js_1.executeHook)(() => onBeforeRenderHook.hookFn(pageContext), onBeforeRenderHook, pageContext);
28
28
  (0, assertOnBeforeRenderHookReturn_js_1.assertOnBeforeRenderHookReturn)(hookResult, onBeforeRenderHook.hookFilePath);
29
29
  const pageContextFromHook = hookResult?.pageContext;
30
30
  Object.assign(pageContext, pageContextFromHook);
@@ -18,7 +18,7 @@ async function executeOnRenderHtmlHook(pageContext) {
18
18
  const { renderHook, hookFn } = getRenderHook(pageContext);
19
19
  (0, utils_js_1.objectAssign)(pageContext, { _renderHook: renderHook });
20
20
  (0, preparePageContextForUserConsumptionServerSide_js_1.preparePageContextForUserConsumptionServerSide)(pageContext);
21
- const hookReturnValue = await (0, executeHook_js_1.executeHook)(() => hookFn(pageContext), renderHook);
21
+ const hookReturnValue = await (0, executeHook_js_1.executeHook)(() => hookFn(pageContext), renderHook, pageContext);
22
22
  const { documentHtml, pageContextProvidedByRenderHook, pageContextPromise, injectFilter } = processHookReturnValue(hookReturnValue, renderHook);
23
23
  Object.assign(pageContext, pageContextProvidedByRenderHook);
24
24
  (0, utils_js_1.objectAssign)(pageContext, { _pageContextPromise: pageContextPromise });
@@ -69,13 +69,13 @@ function getRenderHook(pageContext) {
69
69
  (0, utils_js_1.assertUsage)(false, [
70
70
  `No ${hookName}() hook found, see https://vike.dev/${hookName}`
71
71
  /*
72
- 'See https://vike.dev/render-modes for more information.',
73
- [
74
- // 'Loaded config files (none of them define the onRenderHtml() hook):',
75
- 'Loaded server-side page files (none of them `export { render }`):',
76
- ...pageContext._pageFilePathsLoaded.map((f, i) => ` (${i + 1}): ${f}`)
77
- ].join('\n')
78
- */
72
+ 'See https://vike.dev/render-modes for more information.',
73
+ [
74
+ // 'Loaded config files (none of them define the onRenderHtml() hook):',
75
+ 'Loaded server-side page files (none of them `export { render }`):',
76
+ ...pageContext._pageFilePathsLoaded.map((f, i) => ` (${i + 1}): ${f}`)
77
+ ].join('\n')
78
+ */
79
79
  ].join(' '));
80
80
  }
81
81
  return hookFound;
@@ -100,8 +100,8 @@ function getHttpResponseBodyStreamHandlers(htmlRender, renderHook) {
100
100
  }
101
101
  }
102
102
  };
103
- function getFixMsg(type, standard) {
104
- const streamName = (0, stream_js_1.getStreamName)(type, standard);
103
+ function getFixMsg(kind, type) {
104
+ const streamName = (0, stream_js_1.getStreamName)(kind, type);
105
105
  (0, utils_js_1.assert)(['a ', 'an ', 'the '].some((s) => streamName.startsWith(s)));
106
106
  (0, utils_js_1.assert)(renderHook);
107
107
  const { hookFilePath, hookName } = renderHook;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getPageAssets = void 0;
3
+ exports.setResolveClientEntriesDev = exports.getPageAssets = void 0;
4
4
  const utils_js_1 = require("../utils.js");
5
5
  const retrieveAssetsDev_js_1 = require("./getPageAssets/retrieveAssetsDev.js");
6
6
  const retrieveAssetsProd_js_1 = require("./getPageAssets/retrieveAssetsProd.js");
@@ -8,7 +8,9 @@ const inferMediaType_js_1 = require("./inferMediaType.js");
8
8
  const getManifestEntry_js_1 = require("./getPageAssets/getManifestEntry.js");
9
9
  const sortPageAssetsForEarlyHintsHeader_js_1 = require("./getPageAssets/sortPageAssetsForEarlyHintsHeader.js");
10
10
  const globalContext_js_1 = require("../globalContext.js");
11
- const import_1 = require("@brillout/import");
11
+ const globalObject = (0, utils_js_1.getGlobalObject)('getPageAssets.ts', {
12
+ resolveClientEntriesDev: null
13
+ });
12
14
  async function getPageAssets(pageContext, clientDependencies, clientEntries) {
13
15
  const globalContext = (0, globalContext_js_1.getGlobalContext)();
14
16
  const isDev = !globalContext.isProduction;
@@ -16,7 +18,7 @@ async function getPageAssets(pageContext, clientDependencies, clientEntries) {
16
18
  let clientEntriesSrc;
17
19
  if (isDev) {
18
20
  const { viteDevServer } = globalContext;
19
- clientEntriesSrc = await Promise.all(clientEntries.map((clientEntry) => resolveClientEntriesDev(clientEntry, viteDevServer)));
21
+ clientEntriesSrc = await Promise.all(clientEntries.map((clientEntry) => globalObject.resolveClientEntriesDev(clientEntry, viteDevServer)));
20
22
  assetUrls = await (0, retrieveAssetsDev_js_1.retrieveAssetsDev)(clientDependencies, viteDevServer);
21
23
  }
22
24
  else {
@@ -57,62 +59,6 @@ async function getPageAssets(pageContext, clientDependencies, clientEntries) {
57
59
  return pageAssets;
58
60
  }
59
61
  exports.getPageAssets = getPageAssets;
60
- async function resolveClientEntriesDev(clientEntry, viteDevServer) {
61
- let root = viteDevServer.config.root;
62
- (0, utils_js_1.assert)(root);
63
- root = (0, utils_js_1.toPosixPath)(root);
64
- // The `?import` suffix is needed for MDX to be transpiled:
65
- // - Not transpiled: `/pages/markdown.page.mdx`
66
- // - Transpiled: `/pages/markdown.page.mdx?import`
67
- // But `?import` doesn't work with `/@fs/`:
68
- // - Not transpiled: /@fs/home/runner/work/vike/vike/examples/react-full/pages/markdown.page.mdx
69
- // - Not transpiled: /@fs/home/runner/work/vike/vike/examples/react-full/pages/markdown.page.mdx?import
70
- if (clientEntry.endsWith('?import')) {
71
- (0, utils_js_1.assert)(clientEntry.startsWith('/'));
72
- return clientEntry;
73
- }
74
- (0, utils_js_1.assertPosixPath)(clientEntry);
75
- let filePath;
76
- if (clientEntry.startsWith('/')) {
77
- filePath = (0, utils_js_1.pathJoin)(root, clientEntry);
78
- }
79
- else {
80
- const { createRequire } = (await (0, import_1.import_)('module')).default;
81
- const { dirname } = (await (0, import_1.import_)('path')).default;
82
- const { fileURLToPath } = (await (0, import_1.import_)('url')).default;
83
- // @ts-ignore Shimmed by dist-cjs-fixup.js for CJS build.
84
- const importMetaUrl = `file://${__filename}`;
85
- const require_ = createRequire(importMetaUrl);
86
- const __dirname_ = dirname(fileURLToPath(importMetaUrl));
87
- // @ts-expect-error
88
- // Bun workaround https://github.com/vikejs/vike/pull/1048
89
- const res = typeof Bun !== 'undefined' ? (toPath) => Bun.resolveSync(toPath, __dirname_) : require_.resolve;
90
- if (clientEntry.startsWith('@@vike/')) {
91
- (0, utils_js_1.assert)(clientEntry.endsWith('.js'));
92
- try {
93
- // For Vitest (which doesn't resolve vike to its dist but to its source files)
94
- // [RELATIVE_PATH_FROM_DIST] Current file: node_modules/vike/node/runtime/renderPage/getPageAssets.js
95
- filePath = (0, utils_js_1.toPosixPath)(res(clientEntry.replace('@@vike/dist/esm/client/', '../../../client/').replace('.js', '.ts')));
96
- }
97
- catch {
98
- // For users
99
- // [RELATIVE_PATH_FROM_DIST] Current file: node_modules/vike/dist/esm/node/runtime/renderPage/getPageAssets.js
100
- filePath = (0, utils_js_1.toPosixPath)(res(clientEntry.replace('@@vike/dist/esm/client/', '../../../../../dist/esm/client/')));
101
- }
102
- }
103
- else {
104
- (0, utils_js_1.assertIsNpmPackageImport)(clientEntry);
105
- filePath = res(clientEntry);
106
- }
107
- }
108
- if (!filePath.startsWith('/')) {
109
- (0, utils_js_1.assert)(process.platform === 'win32');
110
- filePath = '/' + filePath;
111
- }
112
- filePath = '/@fs' + filePath;
113
- (0, utils_js_1.assertPosixPath)(filePath);
114
- return filePath;
115
- }
116
62
  function resolveClientEntriesProd(clientEntry, assetsManifest) {
117
63
  const { manifestEntry } = (0, getManifestEntry_js_1.getManifestEntry)(clientEntry, assetsManifest);
118
64
  (0, utils_js_1.assert)(manifestEntry.isEntry || manifestEntry.isDynamicEntry || clientEntry.endsWith('.css'), { clientEntry });
@@ -120,3 +66,7 @@ function resolveClientEntriesProd(clientEntry, assetsManifest) {
120
66
  (0, utils_js_1.assert)(!file.startsWith('/'));
121
67
  return '/' + file;
122
68
  }
69
+ function setResolveClientEntriesDev(resolveClientEntriesDev) {
70
+ globalObject.resolveClientEntriesDev = resolveClientEntriesDev;
71
+ }
72
+ exports.setResolveClientEntriesDev = setResolveClientEntriesDev;
@@ -12,7 +12,7 @@ const globalContext_js_1 = require("../globalContext.js");
12
12
  const loadConfigValues_js_1 = require("../../../shared/page-configs/loadConfigValues.js");
13
13
  async function loadUserFilesServerSide(pageContext) {
14
14
  const pageConfig = (0, findPageConfig_js_1.findPageConfig)(pageContext._pageConfigs, pageContext._pageId); // Make pageConfig globally available as pageContext._pageConfig?
15
- const [{ pageFilesLoaded, pageConfigLoaded, ...pageContextExports }] = await Promise.all([
15
+ const [{ pageFilesLoaded, pageContextExports }] = await Promise.all([
16
16
  loadPageUserFiles(pageContext._pageFilesAll, pageConfig, pageContext._pageId, !(0, globalContext_js_1.getGlobalContext)().isProduction),
17
17
  (0, analyzePageClientSide_js_1.analyzePageClientSideInit)(pageContext._pageFilesAll, pageContext._pageId, { sharedPageFilesAlreadyLoaded: true })
18
18
  ]);
@@ -37,8 +37,8 @@ async function loadUserFilesServerSide(pageContext) {
37
37
  });
38
38
  }
39
39
  const pageContextAddendum = {};
40
+ (0, utils_js_1.objectAssign)(pageContextAddendum, pageContextExports);
40
41
  (0, utils_js_1.objectAssign)(pageContextAddendum, {
41
- ...pageContextExports,
42
42
  Page: pageContextExports.exports.Page,
43
43
  _isHtmlOnly: isHtmlOnly,
44
44
  _passToClient: passToClient,
@@ -104,8 +104,7 @@ async function loadPageUserFiles(pageFilesAll, pageConfig, pageId, isDev) {
104
104
  await Promise.all(pageFilesServerSide.map((p) => p.loadFile?.()));
105
105
  const pageContextExports = (0, getPageFiles_js_1.getPageContextExports)(pageFilesServerSide, pageConfigLoaded);
106
106
  return {
107
- ...pageContextExports,
108
- pageFilesLoaded: pageFilesServerSide,
109
- pageConfigLoaded
107
+ pageContextExports,
108
+ pageFilesLoaded: pageFilesServerSide
110
109
  };
111
110
  }
@@ -3,53 +3,95 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getHint = exports.isKnownError = exports.isCjsEsmError = exports.logErrorHint = void 0;
6
+ exports.getErrorHint = exports.logErrorHint = void 0;
7
7
  const utils_js_1 = require("../utils.js");
8
8
  const picocolors_1 = __importDefault(require("@brillout/picocolors"));
9
- const knownErrors = [
9
+ const hintDefault = 'The error could be a CJS/ESM issue, see https://vike.dev/broken-npm-package';
10
+ const hintLinkPrefix = 'To fix this error, see ';
11
+ const errorsMisc = [
10
12
  {
11
13
  errMsg: 'jsxDEV is not a function',
12
- link: 'https://github.com/vikejs/vike/issues/1469#issuecomment-1919518096'
13
- },
14
- {
15
- errMsg: 'Element type is invalid: expected a string (for built-in components) or a class/function (for composite components)',
16
- link: 'https://vike.dev/broken-npm-package#react-invalid-component'
14
+ link: 'https://github.com/vikejs/vike/issues/1469#issuecomment-1919518096',
15
+ shouldMentionNodeModules: false
17
16
  },
18
17
  {
19
18
  // ```
20
19
  // Error [RollupError]: Could not resolve "../dist/client/assets.json" from "renderer/+onRenderHtml.tsx"
21
20
  // ```
22
21
  errMsg: 'assets.json',
23
- link: 'https://vike.dev/getGlobalContext'
22
+ link: 'https://vike.dev/getGlobalContext',
23
+ shouldMentionNodeModules: false
24
+ }
25
+ ];
26
+ const errorsReact = [
27
+ {
28
+ errMsg: 'Element type is invalid: expected a string (for built-in components) or a class/function (for composite components)',
29
+ link: 'https://vike.dev/broken-npm-package#react-invalid-component',
30
+ // The stack trace can be user-land while the import is coming from node_modules
31
+ shouldMentionNodeModules: false
24
32
  },
25
33
  {
34
+ // React's "Invalid hook call.", see https://github.com/vikejs/vike/discussions/1637#discussioncomment-9424712
35
+ errMsg: "Cannot read properties of null (reading 'useContext')"
36
+ }
37
+ ];
38
+ const errorsCjsEsm_withPreciseLink = [
39
+ {
40
+ // `SyntaxError: Named export '${exportName}' not found. The requested module '${packageName}' is a CommonJS module, which may not support all module.exports as named exports.`
26
41
  errMsg: /Named export.*not found/i,
27
- link: 'https://vike.dev/broken-npm-package#named-export-not-found'
42
+ link: 'https://vike.dev/broken-npm-package#named-export-not-found',
43
+ // It seems that this always points to an npm package import.
44
+ shouldMentionNodeModules: false
28
45
  }
29
46
  ];
47
+ const errorsCjsEsm = [
48
+ { errMsg: 'ERR_UNSUPPORTED_DIR_IMPORT' },
49
+ { errMsg: 'ERR_REQUIRE_ESM' },
50
+ { errMsg: 'Must use import' },
51
+ { errMsg: /Cannot find \S+ '(\S+)' imported from (\S+)/ },
52
+ { errMsg: 'ERR_UNKNOWN_FILE_EXTENSION' },
53
+ { errMsg: /Unknown file extension "\S+" for (\S+)/ },
54
+ // `SyntaxError: Cannot use import statement outside a module`.
55
+ {
56
+ errMsg: 'Cannot use import statement',
57
+ // Since user code is always ESM, this error must always originate from an npm package.
58
+ shouldMentionNodeModules: false
59
+ },
60
+ { errMsg: 'is not exported' },
61
+ { errMsg: 'Cannot read properties of undefined' },
62
+ { errMsg: '.default is not' },
63
+ // Using CJS inside ESM modules.
64
+ { errMsg: 'require is not a function' },
65
+ { errMsg: 'exports is not defined' },
66
+ { errMsg: 'module is not defined' },
67
+ { errMsg: 'window is not defined' },
68
+ { errMsg: 'not defined in ES' },
69
+ { errMsg: "Unexpected token 'export'" }
70
+ ];
30
71
  function logErrorHint(error) {
31
72
  /* Collect errors for ./logErrorHint.spec.ts
32
73
  collectError(error)
33
74
  //*/
34
- const hint = getHint(error);
75
+ const hint = getErrorHint(error);
35
76
  if (hint)
36
77
  logHint(hint);
37
78
  }
38
79
  exports.logErrorHint = logErrorHint;
39
- function getHint(error) {
80
+ function getErrorHint(error) {
40
81
  {
41
- const link = isKnownError(error);
42
- if (link)
43
- return `To fix this error, see ${link}`;
44
- }
45
- const res = isCjsEsmError(error);
46
- if (res) {
47
- const hint = 'The error seems to be a CJS/ESM issue, see https://vike.dev/broken-npm-package';
48
- return hint;
82
+ const knownErr = isKnownError(error);
83
+ if (knownErr) {
84
+ if (knownErr.link) {
85
+ return hintLinkPrefix + knownErr.link;
86
+ }
87
+ else {
88
+ return hintDefault;
89
+ }
90
+ }
49
91
  }
50
92
  return null;
51
93
  }
52
- exports.getHint = getHint;
94
+ exports.getErrorHint = getErrorHint;
53
95
  function logHint(hint) {
54
96
  hint = (0, utils_js_1.formatHintLog)(hint);
55
97
  hint = picocolors_1.default.bold(hint);
@@ -57,268 +99,42 @@ function logHint(hint) {
57
99
  }
58
100
  function isKnownError(error) {
59
101
  const anywhere = getAnywhere(error);
60
- const knownErr = knownErrors.find((knownErorr) => {
61
- return includes(anywhere, knownErorr.errMsg);
102
+ const knownErr = [
103
+ //
104
+ ...errorsMisc,
105
+ ...errorsReact,
106
+ ...errorsCjsEsm_withPreciseLink,
107
+ ...errorsCjsEsm
108
+ ].find((knownErorr) => {
109
+ if (!includesLowercase(anywhere, knownErorr.errMsg))
110
+ return false;
111
+ if (knownErorr.shouldMentionNodeModules !== false && !includesLowercase(anywhere, 'node_modules'))
112
+ return false;
113
+ return true;
62
114
  });
63
115
  if (!knownErr)
64
116
  return false;
65
- return knownErr.link;
66
- }
67
- exports.isKnownError = isKnownError;
68
- // `false` -> noop
69
- // `true` -> generic message
70
- // `'some-npm-package'` -> add some-npm-package to `ssr.noExternal`
71
- function isCjsEsmError(error) {
72
- const res = check(error);
73
- if (res === true || res === false)
74
- return res;
75
- const packageNames = normalizeRes(res);
76
- if (packageNames === false)
77
- return packageNames;
78
- packageNames.forEach((packageName) => {
79
- (0, utils_js_1.assert)(!['vite', 'vike'].includes(packageName));
80
- });
81
- // We don't use this anymore: we could return `true` instead. Shall we remove returning a list of npm packages?
82
- return packageNames;
83
- }
84
- exports.isCjsEsmError = isCjsEsmError;
85
- function normalizeRes(res) {
86
- let packageNames = (0, utils_js_1.isArray)(res) ? res : [res];
87
- packageNames = (0, utils_js_1.unique)(packageNames.filter(utils_js_1.isNotNullish).filter((packageName) => packageName !== '@brillout/import'));
88
- if (packageNames.length === 0)
89
- return false;
90
- return packageNames;
117
+ return knownErr;
91
118
  }
92
- function check(error) {
93
- const message = getErrMessage(error);
94
- const anywhere = getAnywhere(error);
95
- const packageName_stack1 = getPackageName_stack1(error);
96
- const packageName_stack2 = getPackageName_stack2(error);
97
- const isRelatedToNodeModules = !!packageName_stack1 || !!packageName_stack2 || includesNodeModules(message);
98
- /*
99
- const relatedNpmPackages = normalizeArray([
100
- packageName_stack1 || null,
101
- packageName_stack2 || null,
102
- (message && extractFromNodeModulesPath(message)) || null
103
- ])
104
- */
105
- // ERR_UNSUPPORTED_DIR_IMPORT
106
- {
107
- const packageName = parseNodeModulesPathMessage('ERR_UNSUPPORTED_DIR_IMPORT', anywhere);
108
- if (packageName)
109
- return packageName;
110
- }
111
- // ERR_UNKNOWN_FILE_EXTENSION
112
- {
113
- const packageName = parseUnkownFileExtensionMessage(anywhere);
114
- if (packageName)
115
- return packageName;
116
- }
117
- {
118
- const packageName = parseNodeModulesPathMessage('ERR_UNKNOWN_FILE_EXTENSION', anywhere);
119
- if (packageName)
120
- return packageName;
119
+ function includesLowercase(str, substr) {
120
+ if (substr instanceof RegExp) {
121
+ let { flags } = substr;
122
+ if (!flags.includes('i'))
123
+ flags += 'i';
124
+ const regex = new RegExp(substr.source, flags);
125
+ return regex.test(str);
121
126
  }
122
- {
123
- const packageName = parseNodeModulesPathMessage('is not exported', anywhere);
124
- if (packageName)
125
- return packageName;
126
- }
127
- // Using CJS inside ESM modules.
128
- if (includes(anywhere, 'require is not a function') ||
129
- includes(anywhere, 'exports is not defined') ||
130
- includes(anywhere, 'module is not defined') ||
131
- includes(anywhere, 'window is not defined') ||
132
- includes(anywhere, 'not defined in ES')) {
133
- if (packageName_stack1)
134
- return packageName_stack1;
135
- }
136
- if (includes(anywhere, "Unexpected token 'export'")) {
137
- if (packageName_stack2)
138
- return packageName_stack2;
139
- if (packageName_stack1)
140
- return packageName_stack1;
141
- }
142
- // ERR_REQUIRE_ESM
143
- if (includes(anywhere, 'ERR_REQUIRE_ESM')) {
144
- /* The issue is the importer, not the importee.
145
- if (relatedNpmPackages) return relatedNpmPackages
146
- */
147
- {
148
- if (packageName_stack1)
149
- return packageName_stack1;
150
- }
151
- if (isRelatedToNodeModules)
152
- return true;
127
+ if (typeof substr === 'string') {
128
+ return str.toLowerCase().includes(substr.toLowerCase());
153
129
  }
154
- /* The following two wrongfully match user land errors
155
- {
156
- const packageNames = parseNodeModulesPath('ERR_REQUIRE_ESM', anywhere)
157
- if (packageNames) return packageNames
158
- }
159
- {
160
- const packageNames = parseNodeModulesPath('Must use import', anywhere)
161
- if (packageNames) return packageNames
162
- }
163
- */
164
- // `SyntaxError: Named export '${exportName}' not found. The requested module '${packageName}' is a CommonJS module, which may not support all module.exports as named exports.`
165
- {
166
- const packageName = parseImportFrom(anywhere);
167
- if (packageName)
168
- return packageName;
169
- }
170
- if (includes(anywhere, 'Cannot read properties of undefined')) {
171
- if (isRelatedToNodeModules) {
172
- /* We return true because relatedNpmPackages points to the importer but the problematic npm package is the importee
173
- if (relatedNpmPackages) return relatedNpmPackages
174
- */
175
- return true;
176
- }
177
- }
178
- // ERR_MODULE_NOT_FOUND
179
- {
180
- const packageNames = parseCannotFindMessage(anywhere);
181
- if (packageNames)
182
- return packageNames;
183
- }
184
- if (
185
- // `SyntaxError: Cannot use import statement outside a module`.
186
- // Since user code is always ESM, this error must always originate from an npm package.
187
- includes(anywhere, 'Cannot use import statement') ||
188
- // `SyntaxError: Named export '${exportName}' not found. The requested module '${packageName}' is a CommonJS module, which may not support all module.exports as named exports.`
189
- // It seems that this always points to an npm package import.
190
- /Named export.*not found/i.test(anywhere)) {
191
- /* We return true even if fromNodeModules is false because the errors always relate to npm packages.
192
- if (fromNodeModules) return true
193
- */
194
- return true;
195
- }
196
- return false;
197
- }
198
- function parseCannotFindMessage(str) {
199
- const match = /Cannot find \S+ '(\S+)' imported from (\S+)/.exec(str);
200
- if (!match)
201
- return false;
202
- // const packageNameCannotFind = extractFromPath(match[1]!)
203
- const packageNameFrom = extractFromPath(match[2]);
204
- return normalizeArray([
205
- // packageNameCannotFind,
206
- packageNameFrom
207
- ]);
208
- }
209
- function parseUnkownFileExtensionMessage(str) {
210
- const match = /Unknown file extension "\S+" for (\S+)/.exec(str);
211
- if (!match)
212
- return false;
213
- const filePath = match[1];
214
- const packageName = extractFromPath(filePath);
215
- return packageName;
216
- }
217
- function parseImportFrom(str) {
218
- const match = /\bimport\b.*?\bfrom\b\s*?"(.+?)"/.exec(str);
219
- if (!match)
220
- return false;
221
- const importPath = match[1];
222
- const packageName = extractFromPath(importPath);
223
- return packageName;
224
- }
225
- function parseNodeModulesPathMessage(begin, str) {
226
- str = str.replaceAll('\\', '/');
227
- const regex = new RegExp(`${begin}.*(node_modules\\/\\S+)`);
228
- const match = regex.exec(str);
229
- if (!match)
230
- return false;
231
- const importPath = match[1];
232
- return extractFromNodeModulesPath(importPath);
233
- }
234
- function getPackageName_stack1(err) {
235
- const errStack = getErrStack(err);
236
- if (!errStack)
237
- return false;
238
- const firstLineStackTrace = errStack.split('\n').filter((line) => line.startsWith(' at '))[0];
239
- if (!firstLineStackTrace)
240
- return false;
241
- return extractFromNodeModulesPath(firstLineStackTrace);
242
- }
243
- /** See https://github.com/brillout/repro_node-syntax-error#nodejs-behavior */
244
- function getPackageName_stack2(err) {
245
- const errStack = getErrStack(err);
246
- if (!errStack)
247
- return false;
248
- const firstLine = errStack.trim().split('\n')[0];
249
- return extractFromNodeModulesPath(firstLine);
250
- }
251
- function extractFromPath(filePath) {
252
- (0, utils_js_1.assert)(filePath);
253
- filePath = clean(filePath);
254
- filePath = filePath.replaceAll('\\', '/');
255
- let packageName;
256
- if (!filePath.includes('node_modules/')) {
257
- packageName = filePath;
258
- if (packageName.startsWith('/'))
259
- return null;
260
- if (packageName.startsWith('.'))
261
- return null;
262
- }
263
- else {
264
- packageName = filePath.split('node_modules/').pop();
265
- // This assert is fairly risk, we should eventually remove it
266
- (0, utils_js_1.assert)(!packageName.startsWith('.'));
267
- // This assert is fairly risk, we should eventually remove it
268
- (0, utils_js_1.assert)(!packageName.startsWith('/'));
269
- }
270
- if (!packageName)
271
- return null;
272
- packageName = packageName.split('/').slice(0, 2).join('/');
273
- if (!packageName.startsWith('@')) {
274
- packageName = packageName.split('/')[0];
275
- }
276
- packageName = clean(packageName);
277
- return packageName;
278
- }
279
- function clean(packageName) {
280
- const b = ['"', "'", '(', ')'];
281
- if (b.includes(packageName[0])) {
282
- packageName = packageName.slice(1);
283
- }
284
- if (b.includes(packageName[packageName.length - 1])) {
285
- packageName = packageName.slice(0, -1);
286
- }
287
- return packageName;
130
+ (0, utils_js_1.assert)(false);
288
131
  }
289
- function extractFromNodeModulesPath(str) {
290
- if (!includesNodeModules(str))
291
- return false;
292
- const packageName = extractFromPath(str);
293
- (0, utils_js_1.assert)(packageName);
294
- return packageName;
295
- }
296
- function includes(str1, str2) {
297
- if (!str1)
298
- return false;
299
- if (str2 instanceof RegExp) {
300
- return str2.test(str1.toLowerCase());
301
- }
302
- if (typeof str2 === 'string') {
303
- return str1.toLowerCase().includes(str2.toLowerCase());
304
- }
305
- return false;
306
- }
307
- function includesNodeModules(str) {
308
- if (!str)
309
- return false;
310
- str = str.replaceAll('\\', '/');
311
- if (!str.includes('node_modules/'))
312
- return false;
313
- if (str.includes('node_modules/vite/'))
314
- return false;
315
- return true;
316
- }
317
- function normalizeArray(arr) {
318
- const arrNormalized = arr.filter(utils_js_1.isNotNullish);
319
- if (arrNormalized.length === 0)
320
- return null;
321
- return arrNormalized;
132
+ function getAnywhere(error) {
133
+ const code = getErrCode(error);
134
+ const message = getErrMessage(error);
135
+ const stack = getErrStack(error);
136
+ const anywhere = [code, message, stack].filter(Boolean).join('\n');
137
+ return anywhere;
322
138
  }
323
139
  function getErrMessage(err) {
324
140
  if (!(0, utils_js_1.isObject)(err))
@@ -347,13 +163,6 @@ function getErrStack(err) {
347
163
  return null;
348
164
  return err.stack;
349
165
  }
350
- function getAnywhere(error) {
351
- const code = getErrCode(error);
352
- const message = getErrMessage(error);
353
- const stack = getErrStack(error);
354
- const anywhere = [code, message, stack].filter(Boolean).join('\n');
355
- return anywhere;
356
- }
357
166
  function collectError(err) {
358
167
  console.log([
359
168
  '{',
@@ -3,10 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.preparePageContextForUserConsumptionServerSide = void 0;
4
4
  const utils_js_1 = require("../utils.js");
5
5
  const sortPageContext_js_1 = require("../../../shared/sortPageContext.js");
6
- const addUrlComputedProps_js_1 = require("../../../shared/addUrlComputedProps.js");
6
+ const getPageContextUrlComputed_js_1 = require("../../../shared/getPageContextUrlComputed.js");
7
7
  const addIs404ToPageProps_js_1 = require("../../../shared/addIs404ToPageProps.js");
8
8
  function preparePageContextForUserConsumptionServerSide(pageContext) {
9
- (0, addUrlComputedProps_js_1.assertPageContextUrlComputedProps)(pageContext);
9
+ (0, getPageContextUrlComputed_js_1.assertPageContextUrl)(pageContext);
10
10
  (0, utils_js_1.assert)((0, utils_js_1.isPlainObject)(pageContext.routeParams));
11
11
  (0, utils_js_1.assert)('Page' in pageContext);
12
12
  (0, utils_js_1.assert)((0, utils_js_1.isObject)(pageContext.pageExports));