vike 0.4.152 → 0.4.153-commit-01ab602

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 (93) hide show
  1. package/dist/cjs/node/cli/bin.js +2 -2
  2. package/dist/cjs/node/plugin/index.js +2 -2
  3. package/dist/cjs/node/plugin/plugins/autoFullBuild.js +2 -2
  4. package/dist/cjs/node/plugin/plugins/envVars.js +1 -1
  5. package/dist/cjs/node/plugin/plugins/{assertFileEnv.js → fileEnv.js} +4 -4
  6. package/dist/cjs/node/plugin/plugins/importBuild/index.js +1 -1
  7. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +1 -9
  8. package/dist/cjs/node/prerender/index.js +1 -1
  9. package/dist/cjs/node/prerender/runPrerender.js +21 -13
  10. package/dist/cjs/node/runtime/html/serializePageContextClientSide.js +5 -3
  11. package/dist/cjs/node/runtime/html/stream.js +2 -1
  12. package/dist/cjs/node/runtime/renderPage/getPageAssets/retrieveAssetsDev.js +2 -1
  13. package/dist/cjs/node/runtime/renderPage/isNewError.js +1 -1
  14. package/dist/cjs/node/runtime/renderPage/{loadPageFilesServerSide.js → loadUserFilesServerSide.js} +5 -5
  15. package/dist/cjs/node/runtime/renderPage/renderPageAlreadyRouted.js +5 -4
  16. package/dist/cjs/node/runtime/renderPage.js +2 -2
  17. package/dist/cjs/node/runtime/utils.js +1 -2
  18. package/dist/cjs/shared/hooks/getHook.js +14 -8
  19. package/dist/cjs/shared/misc/isRenderFailure.js +4 -0
  20. package/dist/cjs/shared/misc/pageContextInitIsPassedToClient.js +4 -0
  21. package/dist/cjs/shared/route/abort.js +15 -4
  22. package/dist/cjs/shared/route/loadPageRoutes.js +1 -9
  23. package/dist/cjs/utils/isSameErrorMessage.js +10 -0
  24. package/dist/cjs/utils/projectInfo.js +1 -1
  25. package/dist/esm/client/client-routing-runtime/createPageContext.d.ts +0 -1
  26. package/dist/esm/client/client-routing-runtime/createPageContext.js +0 -3
  27. package/dist/esm/client/client-routing-runtime/getPageContextFromHooks.d.ts +28 -33
  28. package/dist/esm/client/client-routing-runtime/getPageContextFromHooks.js +42 -58
  29. package/dist/esm/client/client-routing-runtime/installClientRouter.d.ts +1 -1
  30. package/dist/esm/client/client-routing-runtime/installClientRouter.js +8 -2
  31. package/dist/esm/client/client-routing-runtime/onBrowserHistoryNavigation.js +2 -2
  32. package/dist/esm/client/client-routing-runtime/onLinkClick.js +2 -2
  33. package/dist/esm/client/client-routing-runtime/prefetch/getPrefetchSettings.d.ts +1 -3
  34. package/dist/esm/client/client-routing-runtime/prefetch/getPrefetchSettings.js +1 -1
  35. package/dist/esm/client/client-routing-runtime/prefetch.d.ts +0 -1
  36. package/dist/esm/client/client-routing-runtime/prefetch.js +2 -2
  37. package/dist/esm/client/client-routing-runtime/renderPageClientSide.d.ts +1 -1
  38. package/dist/esm/client/client-routing-runtime/renderPageClientSide.js +298 -204
  39. package/dist/esm/client/client-routing-runtime/utils.d.ts +1 -1
  40. package/dist/esm/client/client-routing-runtime/utils.js +1 -1
  41. package/dist/esm/client/server-routing-runtime/getPageContext.d.ts +2 -2
  42. package/dist/esm/client/server-routing-runtime/getPageContext.js +5 -4
  43. package/dist/esm/client/shared/executeOnRenderClientHook.d.ts +4 -2
  44. package/dist/esm/client/shared/getPageContextSerializedInHtml.d.ts +0 -1
  45. package/dist/esm/client/shared/getPageContextSerializedInHtml.js +1 -4
  46. package/dist/esm/client/shared/{loadPageFilesClientSide.d.ts → loadUserFilesClientSide.d.ts} +7 -6
  47. package/dist/esm/client/shared/{loadPageFilesClientSide.js → loadUserFilesClientSide.js} +4 -4
  48. package/dist/esm/node/cli/bin.js +3 -3
  49. package/dist/esm/node/plugin/index.js +2 -2
  50. package/dist/esm/node/plugin/plugins/autoFullBuild.js +3 -3
  51. package/dist/esm/node/plugin/plugins/envVars.js +1 -1
  52. package/dist/esm/node/plugin/plugins/fileEnv.d.ts +3 -0
  53. package/dist/esm/node/plugin/plugins/{assertFileEnv.js → fileEnv.js} +3 -3
  54. package/dist/esm/node/plugin/plugins/importBuild/index.js +1 -1
  55. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +1 -9
  56. package/dist/esm/node/prerender/index.d.ts +1 -1
  57. package/dist/esm/node/prerender/index.js +1 -1
  58. package/dist/esm/node/prerender/runPrerender.d.ts +8 -8
  59. package/dist/esm/node/prerender/runPrerender.js +22 -14
  60. package/dist/esm/node/runtime/html/serializePageContextClientSide.d.ts +0 -1
  61. package/dist/esm/node/runtime/html/serializePageContextClientSide.js +5 -3
  62. package/dist/esm/node/runtime/html/stream.js +3 -2
  63. package/dist/esm/node/runtime/renderPage/getPageAssets/retrieveAssetsDev.js +2 -1
  64. package/dist/esm/node/runtime/renderPage/isNewError.js +2 -2
  65. package/dist/esm/node/runtime/renderPage/{loadPageFilesServerSide.d.ts → loadUserFilesServerSide.d.ts} +6 -6
  66. package/dist/esm/node/runtime/renderPage/{loadPageFilesServerSide.js → loadUserFilesServerSide.js} +4 -4
  67. package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.d.ts +2 -2
  68. package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.js +5 -4
  69. package/dist/esm/node/runtime/renderPage.js +2 -2
  70. package/dist/esm/node/runtime/utils.d.ts +1 -2
  71. package/dist/esm/node/runtime/utils.js +1 -2
  72. package/dist/esm/shared/hooks/getHook.d.ts +2 -0
  73. package/dist/esm/shared/hooks/getHook.js +13 -7
  74. package/dist/esm/shared/misc/isRenderFailure.d.ts +1 -0
  75. package/dist/esm/shared/misc/isRenderFailure.js +1 -0
  76. package/dist/esm/shared/misc/pageContextInitIsPassedToClient.d.ts +1 -0
  77. package/dist/esm/shared/misc/pageContextInitIsPassedToClient.js +1 -0
  78. package/dist/esm/shared/page-configs/Config.d.ts +1 -1
  79. package/dist/esm/shared/route/abort.d.ts +1 -1
  80. package/dist/esm/shared/route/abort.js +16 -5
  81. package/dist/esm/shared/route/loadPageRoutes.js +1 -9
  82. package/dist/esm/utils/isSameErrorMessage.d.ts +2 -0
  83. package/dist/esm/utils/isSameErrorMessage.js +7 -0
  84. package/dist/esm/utils/projectInfo.d.ts +2 -2
  85. package/dist/esm/utils/projectInfo.js +1 -1
  86. package/package.json +2 -2
  87. package/dist/cjs/utils/dynamicImport.js +0 -8
  88. package/dist/cjs/utils/isEquivalentError.js +0 -18
  89. package/dist/esm/node/plugin/plugins/assertFileEnv.d.ts +0 -3
  90. package/dist/esm/utils/dynamicImport.d.ts +0 -2
  91. package/dist/esm/utils/dynamicImport.js +0 -4
  92. package/dist/esm/utils/isEquivalentError.d.ts +0 -2
  93. package/dist/esm/utils/isEquivalentError.js +0 -15
@@ -23,7 +23,7 @@ export * from '../../utils/filesystemPathHandling.js';
23
23
  export * from '../../utils/getOutDirs.js';
24
24
  export * from '../../utils/capitalizeFirstLetter.js';
25
25
  export * from '../../utils/debugGlob.js';
26
- export * from '../../utils/isEquivalentError.js';
26
+ export * from '../../utils/isSameErrorMessage.js';
27
27
  export * from '../../utils/styleFileRE.js';
28
28
  export * from '../../utils/isPropertyGetter.js';
29
29
  export * from '../../utils/debug.js';
@@ -45,7 +45,6 @@ export * from '../../utils/path-shim.js';
45
45
  export * from '../../utils/nodeEnv.js';
46
46
  export * from '../../utils/isHtml.js';
47
47
  export * from '../../utils/warnIfErrorIsNotObject.js';
48
- export * from '../../utils/dynamicImport.js';
49
48
  export * from '../../utils/stripAnsi.js';
50
49
  export * from '../../utils/getTerminWidth.js';
51
50
  export * from '../../utils/truncateString.js';
@@ -26,7 +26,7 @@ export * from '../../utils/filesystemPathHandling.js';
26
26
  export * from '../../utils/getOutDirs.js';
27
27
  export * from '../../utils/capitalizeFirstLetter.js';
28
28
  export * from '../../utils/debugGlob.js';
29
- export * from '../../utils/isEquivalentError.js';
29
+ export * from '../../utils/isSameErrorMessage.js';
30
30
  export * from '../../utils/styleFileRE.js';
31
31
  export * from '../../utils/isPropertyGetter.js';
32
32
  export * from '../../utils/debug.js';
@@ -48,7 +48,6 @@ export * from '../../utils/path-shim.js';
48
48
  export * from '../../utils/nodeEnv.js';
49
49
  export * from '../../utils/isHtml.js';
50
50
  export * from '../../utils/warnIfErrorIsNotObject.js';
51
- export * from '../../utils/dynamicImport.js';
52
51
  export * from '../../utils/stripAnsi.js';
53
52
  export * from '../../utils/getTerminWidth.js';
54
53
  export * from '../../utils/truncateString.js';
@@ -2,6 +2,7 @@ export { getHook };
2
2
  export { getHookFromPageConfig };
3
3
  export { getHookFromPageConfigGlobal };
4
4
  export { assertHook };
5
+ export { setIsPrerenderering };
5
6
  export type { Hook };
6
7
  export type { HookName };
7
8
  export type { HookLoc };
@@ -32,3 +33,4 @@ declare function assertHook<TPageContext extends PageContextExports, THookName e
32
33
  exports: Record<THookName, Function | undefined>;
33
34
  };
34
35
  declare function getHookTimeoutDefault(hookName: HookName): HookTimeout;
36
+ declare function setIsPrerenderering(): void;
@@ -2,12 +2,17 @@ export { getHook };
2
2
  export { getHookFromPageConfig };
3
3
  export { getHookFromPageConfigGlobal };
4
4
  export { assertHook };
5
+ export { setIsPrerenderering };
5
6
  // TODO/v1-release: remove
6
7
  // We export for old V0.4 design which doesn't support config.hooksTimeout
7
8
  export { getHookTimeoutDefault };
9
+ import { getGlobalObject } from '../../utils/getGlobalObject.js';
8
10
  import { getConfigValue, getHookFilePathToShowToUser } from '../page-configs/helpers.js';
9
11
  import { assert, assertUsage, checkType, isCallable, isObject } from '../utils.js';
10
12
  import pc from '@brillout/picocolors';
13
+ const globalObject = getGlobalObject('getHook.ts', {
14
+ isPrerendering: false
15
+ });
11
16
  function getHook(pageContext, hookName) {
12
17
  if (!(hookName in pageContext.exports)) {
13
18
  return null;
@@ -110,19 +115,20 @@ function getHookTimeoutDefault(hookName) {
110
115
  warning: 1 * 1000
111
116
  };
112
117
  }
113
- if (hookName === 'onPrerenderStart' ||
114
- hookName === 'onBeforePrerenderStart' ||
115
- // TODO/v1-release: remove
116
- // Old V0.4 design hooks (https://vike.dev/migration/v1-design#renamed-hooks)
117
- hookName === 'onBeforePrerender' ||
118
- hookName === 'prerender') {
118
+ if (globalObject.isPrerendering) {
119
119
  return {
120
- error: 10 * 60 * 1000,
120
+ error: 2 * 60 * 1000,
121
121
  warning: 30 * 1000
122
122
  };
123
123
  }
124
+ else {
125
+ assert(!hookName.toLowerCase().includes('prerender'));
126
+ }
124
127
  return {
125
128
  error: 30 * 1000,
126
129
  warning: 4 * 1000
127
130
  };
128
131
  }
132
+ function setIsPrerenderering() {
133
+ globalObject.isPrerendering = true;
134
+ }
@@ -0,0 +1 @@
1
+ export declare const isRenderFailure = "_isRenderFailure";
@@ -0,0 +1 @@
1
+ export const isRenderFailure = '_isRenderFailure';
@@ -0,0 +1 @@
1
+ export declare const pageContextInitIsPassedToClient = "_pageContextInitIsPassedToClient";
@@ -0,0 +1 @@
1
+ export const pageContextInitIsPassedToClient = '_pageContextInitIsPassedToClient';
@@ -29,13 +29,13 @@ export type { OnRenderHtmlAsync };
29
29
  export type { OnRenderHtmlSync };
30
30
  export type { RouteAsync };
31
31
  export type { RouteSync };
32
- import type { PrefetchStaticAssets } from '../../client/client-routing-runtime/prefetch/getPrefetchSettings.js';
33
32
  import type { ConfigDefinition } from '../../node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js';
34
33
  import type { DocumentHtml } from '../../node/runtime/html/renderHtml.js';
35
34
  import type { ConfigVikeUserProvided } from '../ConfigVike.js';
36
35
  import type { Vike, VikePackages } from '../VikeNamespace.js';
37
36
  import type { HooksTimeoutProvidedByUser } from '../hooks/getHook.js';
38
37
  import type { PageContextClient, PageContextServer } from '../types.js';
38
+ import type { PrefetchStaticAssets } from '../types/PrefetchStaticAssets.js';
39
39
  type HookName = HookNamePage | HookNameGlobal | HookNameOldDesign;
40
40
  type HookNamePage = 'onHydrationEnd' | 'onBeforePrerenderStart' | 'onBeforeRender' | 'onPageTransitionStart' | 'onPageTransitionEnd' | 'onRenderHtml' | 'onRenderClient' | 'guard' | 'data';
41
41
  type HookNameGlobal = 'onBeforePrerender' | 'onBeforeRoute' | 'onPrerenderStart';
@@ -57,7 +57,7 @@ declare function render(abortStatusCode: 401 | 403 | 404 | 410 | 429 | 500 | 503
57
57
  * @param abortReason Sets `pageContext.abortReason` which is used by the error page to show a message to the user, see https://vike.dev/error-page
58
58
  */
59
59
  declare function render(url: `/${string}`, abortReason?: AbortReason): Error;
60
- type AbortCall = `throw redirect(${string})` | `throw render(${string})` | `throw RenderErrorPage()`;
60
+ type AbortCall = `redirect(${string})` | `render(${string})` | `RenderErrorPage()`;
61
61
  type PageContextAbort = {
62
62
  _abortCall: AbortCall;
63
63
  } & (({
@@ -7,7 +7,7 @@ export { logAbortErrorHandled };
7
7
  export { getPageContextFromAllRewrites };
8
8
  export { AbortRender };
9
9
  export { assertNoInfiniteAbortLoop };
10
- import { assert, assertInfo, assertUsage, assertWarning, checkType, hasProp, joinEnglish, objectAssign, projectInfo, truncateString } from './utils.js';
10
+ import { assert, assertInfo, assertUsage, assertWarning, checkType, hasProp, isUserHookError, joinEnglish, objectAssign, projectInfo, truncateString } from './utils.js';
11
11
  import pc from '@brillout/picocolors';
12
12
  /**
13
13
  * Abort the rendering of the current page, and redirect the user to another URL instead.
@@ -30,7 +30,7 @@ function redirect(url, statusCode) {
30
30
  const pageContextAbort = {};
31
31
  objectAssign(pageContextAbort, {
32
32
  _abortCaller: abortCaller,
33
- _abortCall: `throw redirect(${args.join(', ')})`,
33
+ _abortCall: `redirect(${args.join(', ')})`,
34
34
  _urlRedirect: {
35
35
  url,
36
36
  statusCode
@@ -43,7 +43,7 @@ function render(value, abortReason) {
43
43
  if (abortReason !== undefined)
44
44
  args.push(truncateString(JSON.stringify(abortReason), 30));
45
45
  const abortCaller = 'throw render()';
46
- const abortCall = `throw render(${args.join(', ')})`;
46
+ const abortCall = `render(${args.join(', ')})`;
47
47
  return render_(value, abortReason, abortCall, abortCaller);
48
48
  }
49
49
  function render_(value, abortReason, abortCall, abortCaller, pageContextAddendum) {
@@ -92,7 +92,7 @@ function RenderErrorPage({ pageContext = {} } = {}) {
92
92
  abortReason = 'Something went wrong';
93
93
  }
94
94
  objectAssign(pageContext, { _isLegacyRenderErrorPage: true });
95
- return render_(abortStatusCode, abortReason, 'throw RenderErrorPage()', 'throw RenderErrorPage()', pageContext);
95
+ return render_(abortStatusCode, abortReason, 'RenderErrorPage()', 'throw RenderErrorPage()', pageContext);
96
96
  }
97
97
  const stamp = '_isAbortError';
98
98
  function isAbortError(thing) {
@@ -115,7 +115,18 @@ function logAbortErrorHandled(err, isProduction, pageContext) {
115
115
  const urlCurrent = pageContext._urlRewrite ?? pageContext.urlOriginal;
116
116
  assert(urlCurrent);
117
117
  const abortCall = err._pageContextAbort._abortCall;
118
- assertInfo(false, `${pc.cyan(abortCall)} intercepted while rendering ${pc.cyan(urlCurrent)}`, { onlyOnce: false });
118
+ assert(abortCall);
119
+ const hookLoc = isUserHookError(err);
120
+ let thrownBy = '';
121
+ if (hookLoc) {
122
+ thrownBy = ` by ${pc.cyan(`${hookLoc.hookName}()`)} hook defined at ${hookLoc.hookFilePath}`;
123
+ }
124
+ else {
125
+ // hookLoc is missing when serializing abort errors from server to client
126
+ }
127
+ assertInfo(false, `${pc.cyan(abortCall)} thrown${thrownBy} while rendering ${pc.cyan(urlCurrent)}`, {
128
+ onlyOnce: false
129
+ });
119
130
  }
120
131
  function assertStatusCode(statusCode, expected, caller) {
121
132
  const expectedEnglish = joinEnglish(expected.map((s) => s.toString()), 'or');
@@ -16,7 +16,6 @@ pageFilesAll, pageConfigs, pageConfigGlobal, allPageIds) {
16
16
  }
17
17
  function getPageRoutes(filesystemRoots, pageFilesAll, pageConfigs, allPageIds) {
18
18
  const pageRoutes = [];
19
- let pageIds = [...allPageIds];
20
19
  // V1 Design
21
20
  if (pageConfigs.length > 0) {
22
21
  assert(filesystemRoots === null);
@@ -25,7 +24,6 @@ function getPageRoutes(filesystemRoots, pageFilesAll, pageConfigs, allPageIds) {
25
24
  .filter((p) => !p.isErrorPage)
26
25
  .forEach((pageConfig) => {
27
26
  const pageId = pageConfig.pageId;
28
- pageIds = removePageId(pageIds, pageId);
29
27
  let pageRoute = null;
30
28
  {
31
29
  const configName = 'route';
@@ -79,7 +77,7 @@ function getPageRoutes(filesystemRoots, pageFilesAll, pageConfigs, allPageIds) {
79
77
  if (pageConfigs.length === 0) {
80
78
  assert(filesystemRoots);
81
79
  const comesFromV1PageConfig = false;
82
- pageIds
80
+ allPageIds
83
81
  .filter((pageId) => !isErrorPageId(pageId, false))
84
82
  .forEach((pageId) => {
85
83
  const pageRouteFile = pageFilesAll.find((p) => p.pageId === pageId && p.fileType === '.page.route');
@@ -179,9 +177,3 @@ function dirname(filePath) {
179
177
  assert(!dirPath.endsWith('/') || dirPath === '/');
180
178
  return dirPath;
181
179
  }
182
- function removePageId(pageIds, pageId) {
183
- const { length } = pageIds;
184
- pageIds = pageIds.filter((id) => id !== pageId);
185
- assert(pageIds.length === length - 1);
186
- return pageIds;
187
- }
@@ -0,0 +1,2 @@
1
+ export { isSameErrorMessage };
2
+ declare function isSameErrorMessage(err1: unknown, err2: unknown): boolean;
@@ -0,0 +1,7 @@
1
+ import { isObject } from './isObject.js';
2
+ export { isSameErrorMessage };
3
+ function isSameErrorMessage(err1, err2) {
4
+ if (!isObject(err1) || !isObject(err2))
5
+ return false;
6
+ return err1.message === err2.message;
7
+ }
@@ -1,13 +1,13 @@
1
1
  export { projectInfo };
2
2
  export type { ProjectTag };
3
3
  export { PROJECT_VERSION };
4
- declare const PROJECT_VERSION: "0.4.152";
4
+ declare const PROJECT_VERSION: "0.4.153-commit-01ab602";
5
5
  type PackageName = typeof projectInfo.npmPackageName;
6
6
  type ProjectVersion = typeof projectInfo.projectVersion;
7
7
  type ProjectTag = `[${PackageName}]` | `[${PackageName}@${ProjectVersion}]`;
8
8
  declare const projectInfo: {
9
9
  projectName: "Vike";
10
- projectVersion: "0.4.152";
10
+ projectVersion: "0.4.153-commit-01ab602";
11
11
  npmPackageName: "vike";
12
12
  githubRepository: "https://github.com/vikejs/vike";
13
13
  };
@@ -1,7 +1,7 @@
1
1
  export { projectInfo };
2
2
  export { PROJECT_VERSION };
3
3
  import { onProjectInfo } from './assertSingleInstance.js';
4
- const PROJECT_VERSION = '0.4.152';
4
+ const PROJECT_VERSION = '0.4.153-commit-01ab602';
5
5
  const projectInfo = {
6
6
  projectName: 'Vike',
7
7
  projectVersion: PROJECT_VERSION,
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "vike",
3
- "version": "0.4.152",
3
+ "version": "0.4.153-commit-01ab602",
4
4
  "scripts": {
5
5
  "dev": "tsc --watch",
6
6
  "build": "rimraf dist/ && pnpm run build:esm && pnpm run build:cjs",
7
7
  "build:esm": "tsc",
8
8
  "build:cjs": "pnpm run build:cjs:ts && pnpm run build:cjs:fixup",
9
- "build:cjs:ts": "tsc --outDir ./dist/cjs/ --module CommonJS --target ES2020 --moduleResolution Node10 --declaration false",
9
+ "build:cjs:ts": "tsc --project ./tsconfig.cjs.json",
10
10
  "build:cjs:fixup": "node ./dist-cjs-fixup.mjs",
11
11
  "release": "release-me patch",
12
12
  "release:commit": "release-me commit"
@@ -1,8 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.dynamicImport = void 0;
4
- /** Only works for npm packages, for files use @brillout/import instead */
5
- function dynamicImport(mod) {
6
- return new Function('mod', 'return import(mod)')(mod);
7
- }
8
- exports.dynamicImport = dynamicImport;
@@ -1,18 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isEquivalentError = void 0;
4
- const isObject_js_1 = require("./isObject.js");
5
- const deepEqual_js_1 = require("./deepEqual.js");
6
- function isEquivalentError(err1, err2) {
7
- return ((0, isObject_js_1.isObject)(err1) &&
8
- (0, isObject_js_1.isObject)(err2) &&
9
- err1.constructor === err2.constructor &&
10
- (0, deepEqual_js_1.deepEqual)({ ...err1, stack: null }, { ...err2, stack: null }) &&
11
- // 'message' and 'stack' are usually non-emurable
12
- err2.message === err2.message
13
- /* Doesn't work because: the stack trace isn't exactly the same between the original page rendering and the fallback error page rendering
14
- err2.stack === err2.stack
15
- */
16
- );
17
- }
18
- exports.isEquivalentError = isEquivalentError;
@@ -1,3 +0,0 @@
1
- export { assertFileEnv };
2
- import type { Plugin } from 'vite';
3
- declare function assertFileEnv(): Plugin;
@@ -1,2 +0,0 @@
1
- /** Only works for npm packages, for files use @brillout/import instead */
2
- export declare function dynamicImport<Mod = never>(mod: string): Promise<Mod>;
@@ -1,4 +0,0 @@
1
- /** Only works for npm packages, for files use @brillout/import instead */
2
- export function dynamicImport(mod) {
3
- return new Function('mod', 'return import(mod)')(mod);
4
- }
@@ -1,2 +0,0 @@
1
- export { isEquivalentError };
2
- declare function isEquivalentError(err1: unknown, err2: unknown): boolean;
@@ -1,15 +0,0 @@
1
- import { isObject } from './isObject.js';
2
- import { deepEqual } from './deepEqual.js';
3
- export { isEquivalentError };
4
- function isEquivalentError(err1, err2) {
5
- return (isObject(err1) &&
6
- isObject(err2) &&
7
- err1.constructor === err2.constructor &&
8
- deepEqual({ ...err1, stack: null }, { ...err2, stack: null }) &&
9
- // 'message' and 'stack' are usually non-emurable
10
- err2.message === err2.message
11
- /* Doesn't work because: the stack trace isn't exactly the same between the original page rendering and the fallback error page rendering
12
- err2.stack === err2.stack
13
- */
14
- );
15
- }