vike 0.4.196 → 0.4.197-commit-f4d8658

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 (121) hide show
  1. package/dist/cjs/client/client-routing-runtime/prefetch/PrefetchSetting.js +2 -0
  2. package/dist/cjs/client/server-routing-runtime/onLoad.js +7 -0
  3. package/dist/cjs/client/server-routing-runtime/utils.js +34 -0
  4. package/dist/cjs/client/shared/getPageContextProxyForUser.js +79 -0
  5. package/dist/cjs/client/shared/preparePageContextForUserConsumptionClientSide.js +46 -0
  6. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js +17 -1
  7. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/loadFileAtConfigTime.js +2 -2
  8. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolvePointerImport.js +26 -23
  9. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/{transformFileImports.js → transformPointerImports.js} +3 -4
  10. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transpileAndExecuteFile.js +44 -47
  11. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +1 -1
  12. package/dist/cjs/node/prerender/runPrerender.js +5 -5
  13. package/dist/cjs/node/runtime/html/injectAssets/getHtmlTags.js +1 -1
  14. package/dist/cjs/node/runtime/html/injectAssets/injectAssets__public.js +1 -1
  15. package/dist/cjs/node/runtime/html/serializePageContextClientSide.js +2 -2
  16. package/dist/cjs/node/runtime/renderPage/createHttpResponse.js +3 -3
  17. package/dist/cjs/node/runtime/renderPage/debugPageFiles.js +1 -1
  18. package/dist/cjs/node/runtime/renderPage/handleErrorWithoutErrorPage.js +1 -1
  19. package/dist/cjs/node/runtime/renderPage/loadUserFilesServerSide.js +4 -4
  20. package/dist/cjs/node/runtime/renderPage/preparePageContextForUserConsumptionServerSide.js +2 -7
  21. package/dist/cjs/node/runtime/renderPage/renderPageAlreadyRouted.js +4 -4
  22. package/dist/cjs/node/runtime/renderPage.js +8 -8
  23. package/dist/cjs/shared/addIs404ToPageProps.js +1 -1
  24. package/dist/cjs/shared/assertPageContextProvidedByUser.js +1 -1
  25. package/dist/cjs/shared/page-configs/serialize/serializeConfigValues.js +2 -2
  26. package/dist/cjs/shared/preparePageContextForUserConsumption.js +34 -0
  27. package/dist/cjs/shared/route/executeGuardHook.js +1 -1
  28. package/dist/cjs/shared/route/executeOnBeforeRouteHook.js +6 -6
  29. package/dist/cjs/shared/route/index.js +3 -3
  30. package/dist/cjs/shared/route/resolveRouteString.js +10 -1
  31. package/dist/cjs/utils/PROJECT_VERSION.js +1 -1
  32. package/dist/cjs/utils/isNpmPackage.js +4 -0
  33. package/dist/cjs/utils/isScriptFile.js +3 -3
  34. package/dist/esm/client/client-routing-runtime/entry.js +2 -2
  35. package/dist/esm/client/client-routing-runtime/getPageContextCurrent.d.ts +10 -0
  36. package/dist/esm/client/client-routing-runtime/getPageContextCurrent.js +25 -0
  37. package/dist/esm/client/client-routing-runtime/getPageContextFromHooks.d.ts +28 -18
  38. package/dist/esm/client/client-routing-runtime/getPageContextFromHooks.js +39 -32
  39. package/dist/esm/client/client-routing-runtime/history.js +1 -1
  40. package/dist/esm/client/client-routing-runtime/initClientRouter.d.ts +2 -0
  41. package/dist/esm/client/client-routing-runtime/{installClientRouter.js → initClientRouter.js} +11 -8
  42. package/dist/esm/client/client-routing-runtime/initOnLinkClick.d.ts +2 -0
  43. package/dist/esm/client/client-routing-runtime/{onLinkClick.js → initOnLinkClick.js} +2 -2
  44. package/dist/esm/client/client-routing-runtime/isClientSideRoutable.js +1 -0
  45. package/dist/esm/client/client-routing-runtime/onBrowserHistoryNavigation.js +1 -1
  46. package/dist/esm/client/client-routing-runtime/prefetch/PrefetchSetting.d.ts +7 -0
  47. package/dist/esm/client/client-routing-runtime/prefetch/PrefetchSetting.js +1 -0
  48. package/dist/esm/client/client-routing-runtime/prefetch/getPrefetchSettings.d.ts +8 -7
  49. package/dist/esm/client/client-routing-runtime/prefetch/getPrefetchSettings.js +75 -67
  50. package/dist/esm/client/client-routing-runtime/prefetch.d.ts +29 -5
  51. package/dist/esm/client/client-routing-runtime/prefetch.js +178 -65
  52. package/dist/esm/client/client-routing-runtime/renderPageClientSide.js +117 -28
  53. package/dist/esm/client/server-routing-runtime/getPageContext.d.ts +1 -1
  54. package/dist/esm/client/server-routing-runtime/getPageContext.js +1 -1
  55. package/dist/esm/client/shared/executeOnRenderClientHook.d.ts +1 -1
  56. package/dist/esm/client/shared/getPageContextSerializedInHtml.d.ts +1 -1
  57. package/dist/esm/client/shared/getPageContextSerializedInHtml.js +1 -1
  58. package/dist/esm/client/shared/preparePageContextForUserConsumptionClientSide.d.ts +1 -1
  59. package/dist/esm/client/shared/preparePageContextForUserConsumptionClientSide.js +20 -29
  60. package/dist/esm/client/shared/removeFoucBuster.js +17 -11
  61. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js +17 -1
  62. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/loadFileAtConfigTime.js +1 -1
  63. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolvePointerImport.d.ts +1 -1
  64. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolvePointerImport.js +25 -22
  65. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/{transformFileImports.d.ts → transformPointerImports.d.ts} +2 -2
  66. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/{transformFileImports.js → transformPointerImports.js} +3 -4
  67. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transpileAndExecuteFile.js +45 -48
  68. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +1 -1
  69. package/dist/esm/node/prerender/runPrerender.js +5 -5
  70. package/dist/esm/node/runtime/html/injectAssets/getHtmlTags.js +1 -1
  71. package/dist/esm/node/runtime/html/injectAssets/injectAssets__public.js +1 -1
  72. package/dist/esm/node/runtime/html/injectAssets.d.ts +1 -1
  73. package/dist/esm/node/runtime/html/serializePageContextClientSide.d.ts +1 -1
  74. package/dist/esm/node/runtime/html/serializePageContextClientSide.js +2 -2
  75. package/dist/esm/node/runtime/renderPage/createHttpResponse.d.ts +1 -1
  76. package/dist/esm/node/runtime/renderPage/createHttpResponse.js +3 -3
  77. package/dist/esm/node/runtime/renderPage/debugPageFiles.d.ts +1 -1
  78. package/dist/esm/node/runtime/renderPage/debugPageFiles.js +1 -1
  79. package/dist/esm/node/runtime/renderPage/executeOnBeforeRenderAndDataHooks.d.ts +1 -1
  80. package/dist/esm/node/runtime/renderPage/executeOnRenderHtmlHook.d.ts +1 -1
  81. package/dist/esm/node/runtime/renderPage/handleErrorWithoutErrorPage.d.ts +1 -1
  82. package/dist/esm/node/runtime/renderPage/handleErrorWithoutErrorPage.js +1 -1
  83. package/dist/esm/node/runtime/renderPage/loadUserFilesServerSide.d.ts +1 -1
  84. package/dist/esm/node/runtime/renderPage/loadUserFilesServerSide.js +4 -4
  85. package/dist/esm/node/runtime/renderPage/preparePageContextForUserConsumptionServerSide.d.ts +1 -1
  86. package/dist/esm/node/runtime/renderPage/preparePageContextForUserConsumptionServerSide.js +3 -8
  87. package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.d.ts +6 -6
  88. package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.js +4 -4
  89. package/dist/esm/node/runtime/renderPage.js +8 -8
  90. package/dist/esm/shared/addIs404ToPageProps.d.ts +1 -1
  91. package/dist/esm/shared/addIs404ToPageProps.js +1 -1
  92. package/dist/esm/shared/assertPageContextProvidedByUser.js +1 -1
  93. package/dist/esm/shared/page-configs/Config.d.ts +21 -1
  94. package/dist/esm/shared/page-configs/serialize/serializeConfigValues.js +1 -1
  95. package/dist/esm/shared/preparePageContextForUserConsumption.d.ts +5 -0
  96. package/dist/esm/shared/preparePageContextForUserConsumption.js +32 -0
  97. package/dist/esm/shared/route/executeGuardHook.d.ts +1 -1
  98. package/dist/esm/shared/route/executeGuardHook.js +1 -1
  99. package/dist/esm/shared/route/executeOnBeforeRouteHook.js +6 -6
  100. package/dist/esm/shared/route/index.d.ts +1 -1
  101. package/dist/esm/shared/route/index.js +3 -3
  102. package/dist/esm/shared/route/resolveRouteString.d.ts +2 -15
  103. package/dist/esm/shared/route/resolveRouteString.js +10 -1
  104. package/dist/esm/shared/types.d.ts +6 -2
  105. package/dist/esm/types/index.d.ts +1 -1
  106. package/dist/esm/utils/PROJECT_VERSION.d.ts +1 -1
  107. package/dist/esm/utils/PROJECT_VERSION.js +1 -1
  108. package/dist/esm/utils/isNpmPackage.d.ts +2 -0
  109. package/dist/esm/utils/isNpmPackage.js +4 -0
  110. package/dist/esm/utils/isScriptFile.d.ts +2 -2
  111. package/dist/esm/utils/isScriptFile.js +3 -3
  112. package/dist/esm/utils/projectInfo.d.ts +1 -1
  113. package/package.json +1 -1
  114. package/dist/cjs/shared/sortPageContext.js +0 -12
  115. package/dist/esm/client/client-routing-runtime/installClientRouter.d.ts +0 -2
  116. package/dist/esm/client/client-routing-runtime/onLinkClick.d.ts +0 -2
  117. package/dist/esm/client/client-routing-runtime/prefetch/alreadyPrefetched.d.ts +0 -4
  118. package/dist/esm/client/client-routing-runtime/prefetch/alreadyPrefetched.js +0 -16
  119. package/dist/esm/shared/sortPageContext.d.ts +0 -2
  120. package/dist/esm/shared/sortPageContext.js +0 -10
  121. /package/{readme.md → README.md} +0 -0
@@ -10,7 +10,7 @@ type PageContextDebugRouteMatches = {
10
10
  declare function debugPageFiles({ pageContext, isHtmlOnly, isClientRouting, pageFilesLoaded, pageFilesServerSide, pageFilesClientSide, clientEntries, clientDependencies }: {
11
11
  pageContext: {
12
12
  urlOriginal: string;
13
- _pageId: string;
13
+ pageId: string;
14
14
  _pageFilesAll: PageFile[];
15
15
  _pageConfigs: PageConfigRuntime[];
16
16
  } & PageContextDebugRouteMatches;
@@ -7,7 +7,7 @@ function debugPageFiles({ pageContext, isHtmlOnly, isClientRouting, pageFilesLoa
7
7
  debug('All page files:', printPageFiles(pageContext._pageFilesAll, true)); // TODO
8
8
  debug(`URL:`, pageContext.urlOriginal);
9
9
  debug.options({ serialization: { emptyArray: 'No match' } })(`Routing:`, printRouteMatches(pageContext._debugRouteMatches));
10
- debug(`pageId:`, pageContext._pageId);
10
+ debug(`pageId:`, pageContext.pageId);
11
11
  debug('Page type:', isHtmlOnly ? 'HTML-only' : 'SSR/SPA');
12
12
  debug(`Routing type:`, !isHtmlOnly && isClientRouting ? 'Client Routing' : 'Server Routing');
13
13
  debug('Server-side page files:', printPageFiles(pageFilesLoaded));
@@ -2,6 +2,6 @@ export { executeOnBeforeRenderAndDataHooks };
2
2
  import { type PageContextExports } from '../../../shared/getPageFiles.js';
3
3
  import { type PageContextForUserConsumptionServerSide } from './preparePageContextForUserConsumptionServerSide.js';
4
4
  declare function executeOnBeforeRenderAndDataHooks(pageContext: {
5
- _pageId: string;
5
+ pageId: string;
6
6
  _pageContextAlreadyProvidedByOnPrerenderHook?: true;
7
7
  } & PageContextExports & PageContextForUserConsumptionServerSide): Promise<void>;
@@ -12,7 +12,7 @@ type RenderHook = Hook & {
12
12
  };
13
13
  type HookName = 'onRenderHtml' | 'render';
14
14
  declare function executeOnRenderHtmlHook(pageContext: PageContextForUserConsumptionServerSide & PageContextSerialization & {
15
- _pageId: string;
15
+ pageId: string;
16
16
  _pageConfigs: PageConfigRuntime[];
17
17
  __getPageAssets: GetPageAssets;
18
18
  _isHtmlOnly: boolean;
@@ -6,7 +6,7 @@ declare function handleErrorWithoutErrorPage<PageContext extends {
6
6
  isClientSideNavigation: boolean;
7
7
  errorWhileRendering: null | Error;
8
8
  is404: null | boolean;
9
- _pageId: null;
9
+ pageId: null;
10
10
  _pageFilesAll: PageFile[];
11
11
  _pageConfigs: PageConfigRuntime[];
12
12
  urlOriginal: string;
@@ -6,7 +6,7 @@ import { createHttpResponsePage, createHttpResponseError } from './createHttpRes
6
6
  import pc from '@brillout/picocolors';
7
7
  // When the user hasn't defined _error.page.js
8
8
  async function handleErrorWithoutErrorPage(pageContext) {
9
- assert(pageContext._pageId === null);
9
+ assert(pageContext.pageId === null);
10
10
  assert(pageContext.errorWhileRendering || pageContext.is404);
11
11
  {
12
12
  const isV1 = pageContext._pageConfigs.length > 0;
@@ -13,7 +13,7 @@ type PageContext_loadUserFilesServerSide = PageContextGetPageAssets & PageContex
13
13
  };
14
14
  type PageFiles = PromiseType<ReturnType<typeof loadUserFilesServerSide>>;
15
15
  declare function loadUserFilesServerSide(pageContext: {
16
- _pageId: string;
16
+ pageId: string;
17
17
  } & PageContext_loadUserFilesServerSide): Promise<import("../../../shared/getPageFiles.js").PageContextExports & {
18
18
  Page: unknown;
19
19
  _isHtmlOnly: boolean;
@@ -9,12 +9,12 @@ import { analyzePage } from './analyzePage.js';
9
9
  import { getGlobalContext } from '../globalContext.js';
10
10
  import { loadConfigValues } from '../../../shared/page-configs/loadConfigValues.js';
11
11
  async function loadUserFilesServerSide(pageContext) {
12
- const pageConfig = findPageConfig(pageContext._pageConfigs, pageContext._pageId); // Make pageConfig globally available as pageContext._pageConfig?
12
+ const pageConfig = findPageConfig(pageContext._pageConfigs, pageContext.pageId); // Make pageConfig globally available as pageContext._pageConfig?
13
13
  const [{ pageFilesLoaded, pageContextExports }] = await Promise.all([
14
- loadPageUserFiles(pageContext._pageFilesAll, pageConfig, pageContext._pageId, !getGlobalContext().isProduction),
15
- analyzePageClientSideInit(pageContext._pageFilesAll, pageContext._pageId, { sharedPageFilesAlreadyLoaded: true })
14
+ loadPageUserFiles(pageContext._pageFilesAll, pageConfig, pageContext.pageId, !getGlobalContext().isProduction),
15
+ analyzePageClientSideInit(pageContext._pageFilesAll, pageContext.pageId, { sharedPageFilesAlreadyLoaded: true })
16
16
  ]);
17
- const { isHtmlOnly, isClientRouting, clientEntries, clientDependencies, pageFilesClientSide, pageFilesServerSide } = analyzePage(pageContext._pageFilesAll, pageConfig, pageContext._pageId);
17
+ const { isHtmlOnly, isClientRouting, clientEntries, clientDependencies, pageFilesClientSide, pageFilesServerSide } = analyzePage(pageContext._pageFilesAll, pageConfig, pageContext.pageId);
18
18
  const isV1Design = !!pageConfig;
19
19
  const passToClient = [];
20
20
  const errMsg = ' should be an array of strings.';
@@ -12,7 +12,7 @@ type PageContextForUserConsumptionServerSide = PageContextBuiltInServerInternal
12
12
  urlParsed: PageContextUrlInternal['urlParsed'];
13
13
  routeParams: Record<string, string>;
14
14
  Page: unknown;
15
- _pageId: string;
15
+ pageId: string;
16
16
  _pageConfigs: PageConfigRuntime[];
17
17
  is404: null | boolean;
18
18
  isClientSideNavigation: boolean;
@@ -1,16 +1,11 @@
1
1
  export { preparePageContextForUserConsumptionServerSide };
2
- import { assert, isPlainObject, isObject } from '../utils.js';
3
- import { sortPageContext } from '../../../shared/sortPageContext.js';
2
+ import { assert, isPlainObject } from '../utils.js';
4
3
  import { assertPageContextUrl } from '../../../shared/getPageContextUrlComputed.js';
5
- import { addIs404ToPageProps } from '../../../shared/addIs404ToPageProps.js';
4
+ import { preparePageContextForUserConsumption } from '../../../shared/preparePageContextForUserConsumption.js';
6
5
  function preparePageContextForUserConsumptionServerSide(pageContext) {
7
6
  assertPageContextUrl(pageContext);
8
7
  assert(isPlainObject(pageContext.routeParams));
9
8
  assert('Page' in pageContext);
10
- assert(isObject(pageContext.pageExports));
11
- assert(isObject(pageContext.exports));
12
- assert(isObject(pageContext.exportsAll));
13
9
  assert(typeof pageContext.isClientSideNavigation === 'boolean');
14
- sortPageContext(pageContext);
15
- addIs404ToPageProps(pageContext);
10
+ preparePageContextForUserConsumption(pageContext);
16
11
  }
@@ -18,7 +18,7 @@ type PageContextAfterRender = {
18
18
  errorWhileRendering: null | Error;
19
19
  };
20
20
  declare function renderPageAlreadyRouted<PageContext extends {
21
- _pageId: string;
21
+ pageId: string;
22
22
  _pageContextAlreadyProvidedByOnPrerenderHook?: true;
23
23
  is404: null | boolean;
24
24
  routeParams: Record<string, string>;
@@ -27,7 +27,7 @@ declare function renderPageAlreadyRouted<PageContext extends {
27
27
  } & PageContextInitEnhanced & PageContextUrlInternal & PageContext_loadUserFilesServerSide>(pageContext: PageContext): Promise<PageContext & PageContextAfterRender>;
28
28
  declare function prerenderPage(pageContext: PageContextInitEnhanced & PageFiles & {
29
29
  routeParams: Record<string, string>;
30
- _pageId: string;
30
+ pageId: string;
31
31
  _urlRewrite: null;
32
32
  _httpRequestId: number | null;
33
33
  _usesClientRouter: boolean;
@@ -74,7 +74,7 @@ declare function prerenderPage(pageContext: PageContextInitEnhanced & PageFiles
74
74
  __getPageAssets: () => Promise<import("./getPageAssets.js").PageAsset[]>;
75
75
  } & {
76
76
  routeParams: Record<string, string>;
77
- _pageId: string;
77
+ pageId: string;
78
78
  _urlRewrite: null;
79
79
  _httpRequestId: number | null;
80
80
  _usesClientRouter: boolean;
@@ -125,7 +125,7 @@ declare function prerenderPage(pageContext: PageContextInitEnhanced & PageFiles
125
125
  __getPageAssets: () => Promise<import("./getPageAssets.js").PageAsset[]>;
126
126
  } & {
127
127
  routeParams: Record<string, string>;
128
- _pageId: string;
128
+ pageId: string;
129
129
  _urlRewrite: null;
130
130
  _httpRequestId: number | null;
131
131
  _usesClientRouter: boolean;
@@ -177,7 +177,7 @@ declare function prerender404Page(renderContext: RenderContext, pageContextInit_
177
177
  __getPageAssets: () => Promise<import("./getPageAssets.js").PageAsset[]>;
178
178
  } & {
179
179
  routeParams: Record<string, string>;
180
- _pageId: string;
180
+ pageId: string;
181
181
  _urlRewrite: null;
182
182
  _httpRequestId: number | null;
183
183
  _usesClientRouter: boolean;
@@ -228,7 +228,7 @@ declare function prerender404Page(renderContext: RenderContext, pageContextInit_
228
228
  __getPageAssets: () => Promise<import("./getPageAssets.js").PageAsset[]>;
229
229
  } & {
230
230
  routeParams: Record<string, string>;
231
- _pageId: string;
231
+ pageId: string;
232
232
  _urlRewrite: null;
233
233
  _httpRequestId: number | null;
234
234
  _usesClientRouter: boolean;
@@ -23,12 +23,12 @@ import pc from '@brillout/picocolors';
23
23
  import { isServerSideError } from '../../../shared/misc/isServerSideError.js';
24
24
  import { assertV1Design } from '../../shared/assertV1Design.js';
25
25
  async function renderPageAlreadyRouted(pageContext) {
26
- // pageContext._pageId can either be the:
26
+ // pageContext.pageId can either be the:
27
27
  // - ID of the page matching the routing, or the
28
28
  // - ID of the error page `_error.page.js`.
29
- assert(hasProp(pageContext, '_pageId', 'string'));
29
+ assert(hasProp(pageContext, 'pageId', 'string'));
30
30
  const isError = pageContext.is404 || !!pageContext.errorWhileRendering;
31
- assert(isError === (pageContext._pageId === getErrorPageId(pageContext._pageFilesAll, pageContext._pageConfigs)));
31
+ assert(isError === (pageContext.pageId === getErrorPageId(pageContext._pageFilesAll, pageContext._pageConfigs)));
32
32
  objectAssign(pageContext, await loadUserFilesServerSide(pageContext));
33
33
  if (!isError) {
34
34
  await executeGuardHook(pageContext, (pageContext) => preparePageContextForUserConsumptionServerSide(pageContext));
@@ -90,7 +90,7 @@ async function prerender404Page(renderContext, pageContextInit_) {
90
90
  return null;
91
91
  }
92
92
  const pageContext = {
93
- _pageId: errorPageId,
93
+ pageId: errorPageId,
94
94
  _httpRequestId: null,
95
95
  _urlRewrite: null,
96
96
  is404: true,
@@ -157,11 +157,11 @@ async function renderPageAlreadyPrepared(pageContextInit, httpRequestId, renderC
157
157
  {
158
158
  const errorPageId = getErrorPageId(renderContext.pageFilesAll, renderContext.pageConfigs);
159
159
  if (!errorPageId) {
160
- objectAssign(pageContextErrorPageInit, { _pageId: null });
160
+ objectAssign(pageContextErrorPageInit, { pageId: null });
161
161
  return handleErrorWithoutErrorPage(pageContextErrorPageInit);
162
162
  }
163
163
  else {
164
- objectAssign(pageContextErrorPageInit, { _pageId: errorPageId });
164
+ objectAssign(pageContextErrorPageInit, { pageId: errorPageId });
165
165
  }
166
166
  }
167
167
  let pageContextErrorPage;
@@ -270,17 +270,17 @@ async function renderPageNominal(pageContext) {
270
270
  {
271
271
  const pageContextFromRoute = await route(pageContext);
272
272
  objectAssign(pageContext, pageContextFromRoute);
273
- objectAssign(pageContext, { is404: pageContext._pageId ? null : true });
274
- if (pageContext._pageId === null) {
273
+ objectAssign(pageContext, { is404: pageContext.pageId ? null : true });
274
+ if (pageContext.pageId === null) {
275
275
  const errorPageId = getErrorPageId(pageContext._pageFilesAll, pageContext._pageConfigs);
276
276
  if (!errorPageId) {
277
- assert(hasProp(pageContext, '_pageId', 'null'));
277
+ assert(hasProp(pageContext, 'pageId', 'null'));
278
278
  return handleErrorWithoutErrorPage(pageContext);
279
279
  }
280
- objectAssign(pageContext, { _pageId: errorPageId });
280
+ objectAssign(pageContext, { pageId: errorPageId });
281
281
  }
282
282
  }
283
- assert(hasProp(pageContext, '_pageId', 'string'));
283
+ assert(hasProp(pageContext, 'pageId', 'string'));
284
284
  assert(pageContext.errorWhileRendering === null);
285
285
  // Render
286
286
  const pageContextAfterRender = await renderPageAlreadyRouted(pageContext);
@@ -400,7 +400,7 @@ pageContextNominalPageInit, httpRequestId, renderContext, pageContextErrorPageIn
400
400
  assert(abortCall);
401
401
  assertUsage(errorPageId, `You called ${pc.cyan(abortCall)} but you didn't define an error page, make sure to define one https://vike.dev/error-page`);
402
402
  const pageContext = createPageContext({});
403
- objectAssign(pageContext, { _pageId: errorPageId });
403
+ objectAssign(pageContext, { pageId: errorPageId });
404
404
  objectAssign(pageContext, pageContextAbort);
405
405
  objectAssign(pageContext, pageContextErrorPageInit);
406
406
  objectAssign(pageContext, renderContext);
@@ -2,6 +2,6 @@ export { addIs404ToPageProps };
2
2
  import type { PageConfigRuntime } from './page-configs/PageConfig.js';
3
3
  declare function addIs404ToPageProps(pageContext: Record<string, unknown> & PageContextAssertIs404): void;
4
4
  type PageContextAssertIs404 = {
5
- _pageId: string;
5
+ pageId: string;
6
6
  _pageConfigs: PageConfigRuntime[];
7
7
  };
@@ -6,7 +6,7 @@ function addIs404ToPageProps(pageContext) {
6
6
  addIs404(pageContext);
7
7
  }
8
8
  function assertIs404(pageContext) {
9
- if (isErrorPage(pageContext._pageId, pageContext._pageConfigs)) {
9
+ if (isErrorPage(pageContext.pageId, pageContext._pageConfigs)) {
10
10
  assert(hasProp(pageContext, 'is404', 'boolean'));
11
11
  }
12
12
  }
@@ -10,6 +10,6 @@ function assertPageContextProvidedByUser(pageContextProvidedByUser, { hookName,
10
10
  assertUsage(!('_objectCreatedByVike' in pageContextProvidedByUser), `${errPrefix} shouldn't be the whole ${pc.cyan('pageContext')} object, see https://vike.dev/pageContext-manipulation#do-not-return-entire-pagecontext`);
11
11
  // In principle, it's possible to use onBeforeRoute()` to override and define the whole routing.
12
12
  // Is that a good idea to allow users to do this? Beyond deep integration with Vue Router or React Router, is there a use case for this?
13
- assertWarning(!('_pageId' in pageContextProvidedByUser), `${errPrefix} sets ${pc.cyan('pageContext._pageId')} which means that Vike's routing is overriden. This is an experimental feature: make sure to contact a vike maintainer before using this.`, { onlyOnce: true });
13
+ assertWarning(!('pageId' in pageContextProvidedByUser), `${errPrefix} sets ${pc.cyan('pageContext.pageId')} which means that Vike's routing is overriden. This is an experimental feature: make sure to contact a vike maintainer before using this.`, { onlyOnce: true });
14
14
  assertUsage(!('is404' in pageContextProvidedByUser), `${errPrefix} sets ${pc.cyan('pageContext.is404')} which is forbidden, use ${pc.cyan('throw render()')} instead, see https://vike.dev/render`);
15
15
  }
@@ -30,13 +30,14 @@ export type { OnRenderHtmlAsync };
30
30
  export type { OnRenderHtmlSync };
31
31
  export type { RouteAsync };
32
32
  export type { RouteSync };
33
+ export type { KeepScrollPosition };
34
+ import type { PrefetchSetting, PrefetchStaticAssets } from '../../client/client-routing-runtime/prefetch/PrefetchSetting.js';
33
35
  import type { ConfigDefinition } from '../../node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js';
34
36
  import type { DocumentHtml } from '../../node/runtime/html/renderHtml.js';
35
37
  import type { ConfigVikeUserProvided } from '../ConfigVike.js';
36
38
  import type { Vike, VikePackages } from '../VikeNamespace.js';
37
39
  import type { HooksTimeoutProvidedByUser } from '../hooks/getHook.js';
38
40
  import type { PageContextClient, PageContextServer } from '../types.js';
39
- import type { PrefetchStaticAssets } from '../types/PrefetchStaticAssets.js';
40
41
  type HookName = HookNamePage | HookNameGlobal | HookNameOldDesign;
41
42
  type HookNamePage = 'onHydrationEnd' | 'onBeforePrerenderStart' | 'onBeforeRender' | 'onPageTransitionStart' | 'onPageTransitionEnd' | 'onRenderHtml' | 'onRenderClient' | 'guard' | 'data';
42
43
  type HookNameGlobal = 'onBeforePrerender' | 'onBeforeRoute' | 'onPrerenderStart';
@@ -218,6 +219,11 @@ type RouteSync = (pageContext: PageContextServer | PageContextClient) => {
218
219
  routeParams?: Record<string, string>;
219
220
  precedence?: number;
220
221
  } | boolean;
222
+ /** Whether the page scrolls to the top upon navigation.
223
+ *
224
+ * https://vike.dev/keepScrollPosition
225
+ */
226
+ type KeepScrollPosition = boolean | string | string[] | ((pageContext: PageContextClient) => boolean | string | string[]);
221
227
  /** Page configuration.
222
228
  *
223
229
  * https://vike.dev/config
@@ -338,6 +344,15 @@ type ConfigBuiltIn = {
338
344
  * https://vike.dev/meta
339
345
  */
340
346
  meta?: ConfigMeta | ImportString;
347
+ /**
348
+ * @experimental: DON'T USE: the API *will* have breaking changes upon any minor version release.
349
+ *
350
+ * Prefetch pages/links.
351
+ *
352
+ * https://vike.dev/prefetch
353
+ */
354
+ prefetch?: PrefetchSetting | ImportString;
355
+ /** @deprecated Use `prefetch` setting (https://vike.dev/prefetch) instead. */
341
356
  /** Prefetch links.
342
357
  *
343
358
  * https://vike.dev/prefetchStaticAssets
@@ -369,6 +384,11 @@ type ConfigBuiltIn = {
369
384
  * https://vike.dev/require
370
385
  */
371
386
  require?: Record<string, string>;
387
+ /** Whether the page scrolls to the top upon navigation.
388
+ *
389
+ * https://vike.dev/keepScrollPosition
390
+ */
391
+ keepScrollPosition?: KeepScrollPosition;
372
392
  };
373
393
  type ConfigMeta = Record<string, ConfigDefinition>;
374
394
  type ImportString = `import:${string}`;
@@ -2,7 +2,7 @@ export { serializeConfigValues };
2
2
  import { assertIsNotProductionRuntime } from '../../../utils/assertIsNotProductionRuntime.js';
3
3
  import { assert, assertUsage, getPropAccessNotation } from '../../../node/plugin/utils.js';
4
4
  import { addImportStatement } from '../../../node/plugin/plugins/importUserCode/addImportStatement.js';
5
- import { parsePointerImportData } from '../../../node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transformFileImports.js';
5
+ import { parsePointerImportData } from '../../../node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transformPointerImports.js';
6
6
  import { getConfigValueFilePathToShowToUser } from '../helpers.js';
7
7
  import { stringify } from '@brillout/json-serializer/stringify';
8
8
  import pc from '@brillout/picocolors';
@@ -0,0 +1,5 @@
1
+ export { preparePageContextForUserConsumption };
2
+ import type { PageContextForUserConsumptionClientSide } from '../client/shared/preparePageContextForUserConsumptionClientSide.js';
3
+ import type { PageContextForUserConsumptionServerSide } from '../node/runtime/renderPage/preparePageContextForUserConsumptionServerSide.js';
4
+ type PageContextForUserConsumption = PageContextForUserConsumptionServerSide | PageContextForUserConsumptionClientSide;
5
+ declare function preparePageContextForUserConsumption(pageContext: PageContextForUserConsumption): void;
@@ -0,0 +1,32 @@
1
+ export { preparePageContextForUserConsumption };
2
+ import { assert, assertWarning, compareString } from './utils.js';
3
+ import { addIs404ToPageProps } from './addIs404ToPageProps.js';
4
+ function preparePageContextForUserConsumption(pageContext) {
5
+ assert(pageContext.pageId);
6
+ assert('config' in pageContext);
7
+ assert('configEntries' in pageContext);
8
+ addIs404ToPageProps(pageContext);
9
+ // TODO/next-major-release: remove
10
+ if (!('_pageId' in pageContext)) {
11
+ Object.defineProperty(pageContext, '_pageId', {
12
+ get() {
13
+ assertWarning(false, 'pageContext._pageId has been renamed to pageContext.pageId', {
14
+ showStackTrace: true,
15
+ onlyOnce: true
16
+ });
17
+ return pageContext.pageId;
18
+ },
19
+ enumerable: false
20
+ });
21
+ }
22
+ // For a more readable `console.log(pageContext)` output
23
+ sortPageContext(pageContext);
24
+ }
25
+ // Sort `pageContext` keys alphabetically, in order to make reading the `console.log(pageContext)` output easier
26
+ function sortPageContext(pageContext) {
27
+ let descriptors = Object.getOwnPropertyDescriptors(pageContext);
28
+ for (const key of Object.keys(pageContext))
29
+ delete pageContext[key];
30
+ descriptors = Object.fromEntries(Object.entries(descriptors).sort(([key1], [key2]) => compareString(key1, key2)));
31
+ Object.defineProperties(pageContext, descriptors);
32
+ }
@@ -2,7 +2,7 @@ export { executeGuardHook };
2
2
  import type { PageContextExports, PageFile } from '../getPageFiles.js';
3
3
  import type { PageConfigRuntime } from '../page-configs/PageConfig.js';
4
4
  declare function executeGuardHook<T extends PageContextExports & {
5
- _pageId: string;
5
+ pageId: string;
6
6
  _pageFilesAll: PageFile[];
7
7
  _pageConfigs: PageConfigRuntime[];
8
8
  }>(pageContext: T, prepareForUserConsumption: (pageConfig: T) => T | void): Promise<void>;
@@ -8,7 +8,7 @@ async function executeGuardHook(pageContext, prepareForUserConsumption) {
8
8
  if (pageContext._pageFilesAll.length > 0) {
9
9
  // V0.4 design
10
10
  assert(pageContext._pageConfigs.length === 0);
11
- hook = findPageGuard(pageContext._pageId, pageContext._pageFilesAll);
11
+ hook = findPageGuard(pageContext.pageId, pageContext._pageFilesAll);
12
12
  }
13
13
  else {
14
14
  // V1 design
@@ -11,8 +11,8 @@ async function executeOnBeforeRouteHook(pageContext) {
11
11
  const pageContextFromHook = await getPageContextFromHook(pageContext._onBeforeRouteHook, pageContext);
12
12
  if (pageContextFromHook) {
13
13
  objectAssign(pageContextFromOnBeforeRouteHook, pageContextFromHook);
14
- if (hasProp(pageContextFromOnBeforeRouteHook, '_pageId', 'string') ||
15
- hasProp(pageContextFromOnBeforeRouteHook, '_pageId', 'null')) {
14
+ if (hasProp(pageContextFromOnBeforeRouteHook, 'pageId', 'string') ||
15
+ hasProp(pageContextFromOnBeforeRouteHook, 'pageId', 'null')) {
16
16
  // We bypass Vike's routing
17
17
  if (!hasProp(pageContextFromOnBeforeRouteHook, 'routeParams')) {
18
18
  objectAssign(pageContextFromOnBeforeRouteHook, { routeParams: {} });
@@ -45,10 +45,10 @@ async function getPageContextFromHook(onBeforeRouteHook, pageContext) {
45
45
  return null;
46
46
  }
47
47
  assertUsage(hasProp(hookReturn, 'pageContext', 'object'), `${errPrefix} returned ${pc.cyan('{ pageContext }')} but pageContext should be a plain JavaScript object.`);
48
- if (hasProp(hookReturn.pageContext, '_pageId') && !hasProp(hookReturn.pageContext, '_pageId', 'null')) {
49
- const errPrefix2 = `${errPrefix} returned ${pc.cyan('{ pageContext: { _pageId } }')} but ${pc.cyan('_pageId')} should be`;
50
- assertUsage(hasProp(hookReturn.pageContext, '_pageId', 'string'), `${errPrefix2} a string or null`);
51
- assertUsage(pageContext._allPageIds.includes(hookReturn.pageContext._pageId), `${errPrefix2} ${joinEnglish(pageContext._allPageIds.map((s) => pc.cyan(s)), 'or')}`);
48
+ if (hasProp(hookReturn.pageContext, 'pageId') && !hasProp(hookReturn.pageContext, 'pageId', 'null')) {
49
+ const errPrefix2 = `${errPrefix} returned ${pc.cyan('{ pageContext: { pageId } }')} but ${pc.cyan('pageId')} should be`;
50
+ assertUsage(hasProp(hookReturn.pageContext, 'pageId', 'string'), `${errPrefix2} a string or null`);
51
+ assertUsage(pageContext._allPageIds.includes(hookReturn.pageContext.pageId), `${errPrefix2} ${joinEnglish(pageContext._allPageIds.map((s) => pc.cyan(s)), 'or')}`);
52
52
  }
53
53
  if (hasProp(hookReturn.pageContext, 'routeParams')) {
54
54
  assertRouteParams(hookReturn.pageContext, `${errPrefix} returned ${pc.cyan('{ pageContext: { routeParams } }')} but routeParams should`);
@@ -17,7 +17,7 @@ type PageContextForRoute = PageContextUrlInternal & {
17
17
  _onBeforeRouteHook: Hook | null;
18
18
  } & PageContextUrlSource;
19
19
  type PageContextFromRoute = {
20
- _pageId: string | null;
20
+ pageId: string | null;
21
21
  routeParams: Record<string, string>;
22
22
  _routingProvidedByOnBeforeRouteHook?: boolean;
23
23
  _debugRouteMatches: RouteMatches;
@@ -21,7 +21,7 @@ async function route(pageContext) {
21
21
  const pageContextFromOnBeforeRouteHook = await executeOnBeforeRouteHook(pageContext);
22
22
  if (pageContextFromOnBeforeRouteHook) {
23
23
  if (pageContextFromOnBeforeRouteHook._routingProvidedByOnBeforeRouteHook) {
24
- assert(pageContextFromOnBeforeRouteHook._pageId);
24
+ assert(pageContextFromOnBeforeRouteHook.pageId);
25
25
  return pageContextFromOnBeforeRouteHook;
26
26
  }
27
27
  else {
@@ -85,7 +85,7 @@ async function route(pageContext) {
85
85
  objectAssign(pageContextFromRoute, { _routeMatch: winner });
86
86
  if (!winner) {
87
87
  objectAssign(pageContextFromRoute, {
88
- _pageId: null,
88
+ pageId: null,
89
89
  routeParams: {}
90
90
  });
91
91
  return pageContextFromRoute;
@@ -94,7 +94,7 @@ async function route(pageContext) {
94
94
  const { routeParams } = winner;
95
95
  assert(isPlainObject(routeParams));
96
96
  objectAssign(pageContextFromRoute, {
97
- _pageId: winner.pageId,
97
+ pageId: winner.pageId,
98
98
  routeParams: winner.routeParams
99
99
  });
100
100
  }
@@ -3,25 +3,12 @@ export { getUrlFromRouteString };
3
3
  export { isStaticRouteString };
4
4
  export { analyzeRouteString };
5
5
  export { assertRouteString };
6
- export { parseRouteString };
6
+ export { getRouteStringParameterList };
7
7
  declare function assertRouteString(routeString: string, errPrefix?: `${string}Invalid` | `${string}invalid`): void;
8
8
  declare function resolveRouteString(routeString: string, urlPathname: string): null | {
9
9
  routeParams: Record<string, string>;
10
10
  };
11
- type Segment = {
12
- glob: true;
13
- static?: undefined;
14
- param?: undefined;
15
- } | {
16
- glob?: undefined;
17
- static: string;
18
- param?: undefined;
19
- } | {
20
- glob?: undefined;
21
- static?: undefined;
22
- param: string;
23
- };
24
- declare function parseRouteString(routeString: string): Segment[];
11
+ declare function getRouteStringParameterList(routeString: string): string[];
25
12
  declare function getUrlFromRouteString(routeString: string): null | string;
26
13
  declare function analyzeRouteString(routeString: string): {
27
14
  numberOfStaticPartsBeginning: number;
@@ -3,7 +3,7 @@ export { getUrlFromRouteString };
3
3
  export { isStaticRouteString };
4
4
  export { analyzeRouteString };
5
5
  export { assertRouteString };
6
- export { parseRouteString };
6
+ export { getRouteStringParameterList };
7
7
  import { assertWarning, isBrowser, escapeRegex } from '../utils.js';
8
8
  import { assert, assertUsage } from './utils.js';
9
9
  import pc from '@brillout/picocolors';
@@ -96,6 +96,15 @@ function parseRouteString(routeString) {
96
96
  });
97
97
  return segments;
98
98
  }
99
+ function getRouteStringParameterList(routeString) {
100
+ const routeParameterList = [];
101
+ const segments = parseRouteString(routeString);
102
+ segments.forEach((segment) => {
103
+ if (segment.param)
104
+ routeParameterList.push(segment.param);
105
+ });
106
+ return routeParameterList;
107
+ }
99
108
  function getUrlFromRouteString(routeString) {
100
109
  if (isStaticRouteString(routeString)) {
101
110
  const url = routeString;
@@ -108,6 +108,10 @@ type PageContextBuiltInCommon<Data> = {
108
108
  * https://vike.dev/errors
109
109
  */
110
110
  errorWhileRendering?: unknown;
111
+ /**
112
+ * The page's unique identifier.
113
+ */
114
+ pageId: string | null;
111
115
  /** @experimental https://github.com/vikejs/vike/issues/1268 */
112
116
  from: From;
113
117
  /** @experimental https://github.com/vikejs/vike/issues/1268 */
@@ -120,7 +124,7 @@ type PageContextBuiltInCommon<Data> = {
120
124
  pageExports: Record<string, unknown>;
121
125
  };
122
126
  type PageContextBuiltInServer<Data> = PageContextBuiltInCommon<Data> & PageContextUrlServer;
123
- type PageContextBuiltInClientWithClientRouting<Data> = Partial<PageContextBuiltInCommon<Data>> & Pick<PageContextBuiltInCommon<Data>, 'Page' | 'routeParams' | 'pageExports' | 'config' | 'configEntries' | 'exports' | 'exportsAll' | 'abortReason' | 'data' | 'source' | 'sources' | 'from'> & {
127
+ type PageContextBuiltInClientWithClientRouting<Data> = Partial<PageContextBuiltInCommon<Data>> & Pick<PageContextBuiltInCommon<Data>, 'Page' | 'routeParams' | 'pageExports' | 'config' | 'configEntries' | 'exports' | 'exportsAll' | 'abortReason' | 'data' | 'pageId' | 'source' | 'sources' | 'from'> & {
124
128
  /** Whether the current page is already rendered to HTML */
125
129
  isHydration: boolean;
126
130
  /**
@@ -130,7 +134,7 @@ type PageContextBuiltInClientWithClientRouting<Data> = Partial<PageContextBuiltI
130
134
  */
131
135
  isBackwardNavigation: boolean | null;
132
136
  } & PageContextUrlClient;
133
- type PageContextBuiltInClientWithServerRouting<Data> = Partial<PageContextBuiltInCommon<Data>> & Pick<PageContextBuiltInCommon<Data>, 'Page' | 'pageExports' | 'exports' | 'abortReason' | 'data'> & {
137
+ type PageContextBuiltInClientWithServerRouting<Data> = Partial<PageContextBuiltInCommon<Data>> & Pick<PageContextBuiltInCommon<Data>, 'Page' | 'pageExports' | 'exports' | 'abortReason' | 'pageId' | 'data'> & {
134
138
  /**
135
139
  * Whether the current page is already rendered to HTML.
136
140
  *
@@ -7,7 +7,7 @@ export type { ConfigVitePluginServerEntry } from '@brillout/vite-plugin-server-e
7
7
  export type { PageContextBuiltInServer } from '../shared/types.js';
8
8
  export type { PageContextBuiltInClientWithClientRouting } from '../shared/types.js';
9
9
  export type { PageContextBuiltInClientWithServerRouting } from '../shared/types.js';
10
- export type { Config, ConfigMeta as Meta, ImportString, DataAsync, DataSync, GuardAsync, GuardSync, OnBeforePrerenderStartAsync, OnBeforePrerenderStartSync, OnBeforeRenderAsync, OnBeforeRenderSync, OnBeforeRouteAsync, OnBeforeRouteSync, OnHydrationEndAsync, OnHydrationEndSync, OnPageTransitionEndAsync, OnPageTransitionEndSync, OnPageTransitionStartAsync, OnPageTransitionStartSync, OnPrerenderStartAsync, OnPrerenderStartSync, OnRenderClientAsync, OnRenderClientSync, OnRenderHtmlAsync, OnRenderHtmlSync, RouteAsync, RouteSync } from '../shared/page-configs/Config.js';
10
+ export type { Config, ConfigMeta as Meta, ImportString, DataAsync, DataSync, GuardAsync, GuardSync, OnBeforePrerenderStartAsync, OnBeforePrerenderStartSync, OnBeforeRenderAsync, OnBeforeRenderSync, OnBeforeRouteAsync, OnBeforeRouteSync, OnHydrationEndAsync, OnHydrationEndSync, OnPageTransitionEndAsync, OnPageTransitionEndSync, OnPageTransitionStartAsync, OnPageTransitionStartSync, OnPrerenderStartAsync, OnPrerenderStartSync, OnRenderClientAsync, OnRenderClientSync, OnRenderHtmlAsync, OnRenderHtmlSync, RouteAsync, RouteSync, KeepScrollPosition } from '../shared/page-configs/Config.js';
11
11
  export type { ConfigEnv } from '../shared/page-configs/PageConfig.js';
12
12
  export type { ConfigDefinition, ConfigEffect } from '../node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js';
13
13
  export type { ConfigEntries } from '../shared/getPageFiles/getExports.js';
@@ -1 +1 @@
1
- export declare const PROJECT_VERSION: "0.4.196";
1
+ export declare const PROJECT_VERSION: "0.4.197-commit-f4d8658";
@@ -1,2 +1,2 @@
1
1
  // Automatically updated by @brillout/release-me
2
- export const PROJECT_VERSION = '0.4.196';
2
+ export const PROJECT_VERSION = '0.4.197-commit-f4d8658';
@@ -1,4 +1,5 @@
1
1
  export { isNpmPackageImport };
2
+ export { isNpmPackageImport_unreliable };
2
3
  export { assertIsNpmPackageImport };
3
4
  export { isValidPathAlias };
4
5
  export { parse };
@@ -6,6 +7,7 @@ export { isDistinguishable };
6
7
  declare function isNpmPackageImport(str: string, { cannotBePathAlias }: {
7
8
  cannotBePathAlias: true;
8
9
  }): boolean;
10
+ declare function isNpmPackageImport_unreliable(str: string): boolean;
9
11
  declare function assertIsNpmPackageImport(str: string): void;
10
12
  declare function isValidPathAlias(alias: string): boolean;
11
13
  declare function isDistinguishable(alias: string): boolean;
@@ -1,4 +1,5 @@
1
1
  export { isNpmPackageImport };
2
+ export { isNpmPackageImport_unreliable };
2
3
  export { assertIsNpmPackageImport };
3
4
  export { isValidPathAlias };
4
5
  /* Currently not used
@@ -15,6 +16,9 @@ assertIsNotBrowser();
15
16
  function isNpmPackageImport(str, { cannotBePathAlias }) {
16
17
  // We cannot distinguish path alises that look like npm package imports
17
18
  assert(cannotBePathAlias);
19
+ return isNpmPackageImport_unreliable(str);
20
+ }
21
+ function isNpmPackageImport_unreliable(str) {
18
22
  const res = parse(str);
19
23
  return res !== null;
20
24
  }
@@ -1,10 +1,10 @@
1
1
  export { isScriptFile };
2
- export { isJavaScriptFile };
2
+ export { isPlainJavaScriptFile };
3
3
  export { isTemplateFile };
4
4
  export { scriptFileExtensions };
5
5
  export { scriptFileExtensionList };
6
6
  declare const scriptFileExtensionList: readonly [...string[], "jsx", "tsx", "cjsx", "ctsx", "mjsx", "mtsx", "vue", "svelte", "marko", "md", "mdx"];
7
7
  declare const scriptFileExtensions: string;
8
8
  declare function isScriptFile(filePath: string): boolean;
9
- declare function isJavaScriptFile(filePath: string): boolean;
9
+ declare function isPlainJavaScriptFile(filePath: string): boolean;
10
10
  declare function isTemplateFile(filePath: string): boolean;