vike 0.4.249-commit-b3b9c55 → 0.4.250-commit-193dea3
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.
- package/dist/client/runtime-client-routing/createPageContextClientSide.d.ts +1 -1
- package/dist/client/runtime-client-routing/getPageContextFromHooks.d.ts +136 -4
- package/dist/client/runtime-client-routing/prefetch.d.ts +2 -2
- package/dist/client/runtime-client-routing/renderPageClient.d.ts +601 -6
- package/dist/client/runtime-server-routing/createPageContextClientSide.d.ts +2 -6
- package/dist/client/runtime-server-routing/createPageContextClientSide.js +1 -21
- package/dist/client/runtime-server-routing/entry.js +15 -1
- package/dist/client/shared/execHookOnRenderClient.d.ts +4 -1
- package/dist/node/vite/shared/loggerDev.d.ts +3 -3
- package/dist/node/vite/shared/loggerDev.js +3 -3
- package/dist/node/vite/shared/resolveVikeConfigInternal/configDefinitionsBuiltIn.js +2 -1
- package/dist/server/onLoad.js +2 -2
- package/dist/server/runtime/logErrorServer.d.ts +2 -2
- package/dist/server/runtime/logErrorServer.js +0 -2
- package/dist/server/runtime/loggerRuntime.d.ts +3 -2
- package/dist/server/runtime/renderPageServer/createHttpResponse.d.ts +4 -2
- package/dist/server/runtime/renderPageServer/createHttpResponse.js +16 -8
- package/dist/server/runtime/renderPageServer/createPageContextServerSide.d.ts +5 -2
- package/dist/server/runtime/renderPageServer/createPageContextServerSide.js +1 -0
- package/dist/server/runtime/renderPageServer/execHookOnError.d.ts +2 -2
- package/dist/server/runtime/renderPageServer/handleErrorWithoutErrorPage.d.ts +4 -4
- package/dist/server/runtime/renderPageServer/handleErrorWithoutErrorPage.js +3 -4
- package/dist/server/runtime/renderPageServer/html/serializeContext.d.ts +2 -2
- package/dist/server/runtime/renderPageServer/loadPageConfigsLazyServerSide.d.ts +2 -2
- package/dist/server/runtime/renderPageServer/log404/index.d.ts +2 -2
- package/dist/server/runtime/renderPageServer/renderPageServerAfterRoute.d.ts +3 -3
- package/dist/server/runtime/renderPageServer/renderPageServerAfterRoute.js +2 -2
- package/dist/server/runtime/renderPageServer.js +19 -19
- package/dist/shared-server-client/hooks/execHook.d.ts +5 -1
- package/dist/utils/PROJECT_VERSION.d.ts +1 -1
- package/dist/utils/PROJECT_VERSION.js +1 -1
- package/dist/utils/assert.d.ts +5 -5
- package/dist/utils/assert.js +8 -8
- package/package.json +1 -1
|
@@ -1,13 +1,7 @@
|
|
|
1
1
|
export { createPageContextClientSide };
|
|
2
|
-
import {
|
|
3
|
-
import { getPageContextSerializedInHtml } from '../shared/getJsonSerializedInHtml.js';
|
|
4
|
-
import { loadPageConfigsLazyClientSide, } from '../shared/loadPageConfigsLazyClientSide.js';
|
|
5
|
-
import { getCurrentUrl } from '../shared/getCurrentUrl.js';
|
|
2
|
+
import { updateType, objectAssign } from './utils.js';
|
|
6
3
|
import { createPageContextObject, createPageContextShared } from '../../shared-server-client/createPageContextShared.js';
|
|
7
4
|
import { getGlobalContextClientInternal } from './getGlobalContextClientInternal.js';
|
|
8
|
-
import { preparePageContextForPublicUsageClient, } from './preparePageContextForPublicUsageClient.js';
|
|
9
|
-
import { execHook } from '../../shared-server-client/hooks/execHook.js';
|
|
10
|
-
const urlFirst = getCurrentUrl({ withoutHash: true });
|
|
11
5
|
async function createPageContextClientSide() {
|
|
12
6
|
const globalContext = await getGlobalContextClientInternal();
|
|
13
7
|
const pageContextCreated = createPageContextObject();
|
|
@@ -21,21 +15,7 @@ async function createPageContextClientSide() {
|
|
|
21
15
|
isHistoryNavigation: null,
|
|
22
16
|
_hasPageContextFromServer: true,
|
|
23
17
|
});
|
|
24
|
-
objectAssign(pageContextCreated, getPageContextSerializedInHtml());
|
|
25
18
|
// Sets pageContext.config to global configs
|
|
26
19
|
updateType(pageContextCreated, createPageContextShared(pageContextCreated, globalContext._globalConfigPublic));
|
|
27
|
-
// Sets pageContext.config to local configs (overrides the pageContext.config set above)
|
|
28
|
-
updateType(pageContextCreated, await loadPageConfigsLazyClientSideAndExecHook(pageContextCreated));
|
|
29
|
-
assertPristineUrl();
|
|
30
20
|
return pageContextCreated;
|
|
31
21
|
}
|
|
32
|
-
function assertPristineUrl() {
|
|
33
|
-
const urlCurrent = getCurrentUrl({ withoutHash: true });
|
|
34
|
-
assertUsage(urlFirst === urlCurrent, `The URL was manipulated before the hydration finished ('${urlFirst}' to '${urlCurrent}'). Ensure the hydration has finished before manipulating the URL. Consider using the onHydrationEnd() hook.`);
|
|
35
|
-
}
|
|
36
|
-
async function loadPageConfigsLazyClientSideAndExecHook(pageContext) {
|
|
37
|
-
const pageContextAddendum = await loadPageConfigsLazyClientSide(pageContext.pageId, pageContext._pageFilesAll, pageContext._globalContext._pageConfigs, pageContext._globalContext._pageConfigGlobal);
|
|
38
|
-
objectAssign(pageContext, pageContextAddendum);
|
|
39
|
-
await execHook('onCreatePageContext', pageContext, preparePageContextForPublicUsageClient);
|
|
40
|
-
return pageContext;
|
|
41
|
-
}
|
|
@@ -2,13 +2,17 @@ import { assertServerRouting } from '../../utils/assertRoutingType.js';
|
|
|
2
2
|
assertServerRouting();
|
|
3
3
|
import { createPageContextClientSide } from './createPageContextClientSide.js';
|
|
4
4
|
import { execHookOnRenderClient } from '../shared/execHookOnRenderClient.js';
|
|
5
|
-
import { assertSingleInstance_onClientEntryServerRouting } from './utils.js';
|
|
5
|
+
import { assertSingleInstance_onClientEntryServerRouting, assertUsage, objectAssign } from './utils.js';
|
|
6
6
|
import { removeFoucBuster } from '../shared/removeFoucBuster.js';
|
|
7
7
|
import { execHook } from '../../shared-server-client/hooks/execHook.js';
|
|
8
8
|
import { preparePageContextForPublicUsageClient } from './preparePageContextForPublicUsageClient.js';
|
|
9
9
|
import { setVirtualFileExportsGlobalEntry } from '../shared/getGlobalContextClientInternalShared.js';
|
|
10
10
|
// @ts-expect-error
|
|
11
11
|
import * as virtualFileExportsGlobalEntry from 'virtual:vike:global-entry:client:server-routing';
|
|
12
|
+
import { loadPageConfigsLazyClientSide } from '../shared/loadPageConfigsLazyClientSide.js';
|
|
13
|
+
import { getPageContextSerializedInHtml } from '../shared/getJsonSerializedInHtml.js';
|
|
14
|
+
import { getCurrentUrl } from '../shared/getCurrentUrl.js';
|
|
15
|
+
const urlFirst = getCurrentUrl({ withoutHash: true });
|
|
12
16
|
assertSingleInstance_onClientEntryServerRouting(import.meta.env.PROD);
|
|
13
17
|
setVirtualFileExportsGlobalEntry(virtualFileExportsGlobalEntry);
|
|
14
18
|
if (import.meta.env.DEV)
|
|
@@ -16,6 +20,16 @@ if (import.meta.env.DEV)
|
|
|
16
20
|
hydrate();
|
|
17
21
|
async function hydrate() {
|
|
18
22
|
const pageContext = await createPageContextClientSide();
|
|
23
|
+
objectAssign(pageContext, getPageContextSerializedInHtml());
|
|
24
|
+
// Sets pageContext.config using local configs — overrides the pageContext.config set using global configs at createPageContextClientSide()
|
|
25
|
+
const pageContextAddendum = await loadPageConfigsLazyClientSide(pageContext.pageId, pageContext._pageFilesAll, pageContext._globalContext._pageConfigs, pageContext._globalContext._pageConfigGlobal);
|
|
26
|
+
objectAssign(pageContext, pageContextAddendum);
|
|
27
|
+
await execHook('onCreatePageContext', pageContext, preparePageContextForPublicUsageClient);
|
|
28
|
+
assertPristineUrl();
|
|
19
29
|
await execHookOnRenderClient(pageContext, preparePageContextForPublicUsageClient);
|
|
20
30
|
await execHook('onHydrationEnd', pageContext, preparePageContextForPublicUsageClient);
|
|
21
31
|
}
|
|
32
|
+
function assertPristineUrl() {
|
|
33
|
+
const urlCurrent = getCurrentUrl({ withoutHash: true });
|
|
34
|
+
assertUsage(urlFirst === urlCurrent, `The URL was manipulated before the hydration finished ('${urlFirst}' to '${urlCurrent}'). Ensure the hydration has finished before manipulating the URL. Consider using the onHydrationEnd() hook.`);
|
|
35
|
+
}
|
|
@@ -3,11 +3,14 @@ export type { PageContextBeforeRenderClient };
|
|
|
3
3
|
import type { PageFile, PageContextConfig } from '../../shared-server-client/getPageFiles.js';
|
|
4
4
|
import type { PageContextForPublicUsageClientShared } from './preparePageContextForPublicUsageClientShared.js';
|
|
5
5
|
import type { GlobalContextClientInternalShared } from './getGlobalContextClientInternalShared.js';
|
|
6
|
+
import type { PageContextCreatedClient } from '../runtime-client-routing/createPageContextClientSide.js';
|
|
7
|
+
import type { PageContextCreatedClient_ServerRouting } from '../runtime-server-routing/createPageContextClientSide.js';
|
|
8
|
+
type PageContextCreatedClientShared = PageContextCreatedClient | PageContextCreatedClient_ServerRouting;
|
|
6
9
|
type PageContextBeforeRenderClient = {
|
|
7
10
|
_pageFilesLoaded: PageFile[];
|
|
8
11
|
urlOriginal?: string;
|
|
9
12
|
urlPathname?: string;
|
|
10
13
|
pageId: string;
|
|
11
14
|
_globalContext: GlobalContextClientInternalShared;
|
|
12
|
-
} & PageContextConfig & PageContextForPublicUsageClientShared;
|
|
15
|
+
} & PageContextCreatedClientShared & PageContextConfig & PageContextForPublicUsageClientShared;
|
|
13
16
|
declare function execHookOnRenderClient<PageContext extends PageContextBeforeRenderClient>(pageContext: PageContext, prepareForPublicUsage: (pageConfig: PageContext) => PageContext): Promise<void>;
|
|
@@ -2,11 +2,11 @@ export { logVite };
|
|
|
2
2
|
export { logConfigInfo };
|
|
3
3
|
export { logErrorServerDev };
|
|
4
4
|
export type { LogType };
|
|
5
|
-
export type {
|
|
5
|
+
export type { AddAssertTagsDev };
|
|
6
6
|
import { type PageContext_logRuntime } from '../../../server/runtime/loggerRuntime.js';
|
|
7
7
|
type LogType = 'info' | 'warn' | 'error' | 'error-resolve';
|
|
8
8
|
declare function logConfigInfo(msg: string, logType: LogType): void;
|
|
9
9
|
declare function logVite(msg: string, logType: LogType, requestId: number | null, prependViteTag: boolean): void;
|
|
10
10
|
declare function logErrorServerDev(err: unknown, pageContext: PageContext_logRuntime, errorComesFromVite?: boolean): void;
|
|
11
|
-
type
|
|
12
|
-
declare function
|
|
11
|
+
type AddAssertTagsDev = typeof addAssertTagsDev;
|
|
12
|
+
declare function addAssertTagsDev<TagVike extends string, TagType extends string>(tagVike: TagVike, tagType: TagType): `1:37:00 PM ${TagVike}[request(n)]${TagType}`;
|
|
@@ -12,7 +12,7 @@ export { logErrorServerDev };
|
|
|
12
12
|
import { isAbortError } from '../../../shared-server-client/route/abort.js';
|
|
13
13
|
import { getViteConfig } from '../../../server/runtime/globalContext.js';
|
|
14
14
|
import { assertPageContext_logRuntime, setLogRuntimeDev, } from '../../../server/runtime/loggerRuntime.js';
|
|
15
|
-
import { setAssertOnBeforeErr, assert, assertIsNotProductionRuntime, colorVike, colorVite, formatHintLog, hasGreen, hasProp, hasRed, hasYellow, isDebugError, stripAnsi, colorError, colorWarning,
|
|
15
|
+
import { setAssertOnBeforeErr, assert, assertIsNotProductionRuntime, colorVike, colorVite, formatHintLog, hasGreen, hasProp, hasRed, hasYellow, isDebugError, stripAnsi, colorError, colorWarning, setAssertAddAssertTagsDev, } from '../utils.js';
|
|
16
16
|
import { isErrorWithCodeSnippet, getPrettyErrorWithCodeSnippet } from './loggerDev/errorWithCodeSnippet.js';
|
|
17
17
|
import { getConfigExecutionErrorIntroMsg, getConfigBuildErrorFormatted, } from './resolveVikeConfigInternal/transpileAndExecuteFile.js';
|
|
18
18
|
import pc from '@brillout/picocolors';
|
|
@@ -27,7 +27,7 @@ setAssertOnBeforeErr((err) => {
|
|
|
27
27
|
// We must directly apply vite.ssrFixStacktrace() to `assertWarning(..., { showStackTrace: true })` because warnings aren't caught by the try-catch of renderPageServer()
|
|
28
28
|
applyViteSourceMap(err);
|
|
29
29
|
});
|
|
30
|
-
|
|
30
|
+
setAssertAddAssertTagsDev(addAssertTagsDev);
|
|
31
31
|
// Note shown to user when Vike completely modifies the error message (which is somewhat risky)
|
|
32
32
|
const errorDebugNote = pc.dim(formatHintLog("Error isn't helpful? See https://vike.dev/debug#verbose-errors"));
|
|
33
33
|
function logRuntimeInfoDev(msg, pageContext, logType) {
|
|
@@ -186,7 +186,7 @@ function getTagSourceOuter(tagSource) {
|
|
|
186
186
|
const tagSourceOuter = (!tagSource ? '' : pc.dim(`[${tagSource}]`));
|
|
187
187
|
return tagSourceOuter;
|
|
188
188
|
}
|
|
189
|
-
function
|
|
189
|
+
function addAssertTagsDev(tagVike, tagType) {
|
|
190
190
|
const timestamp = getTagTimestamp();
|
|
191
191
|
const tagSource = getTagSource();
|
|
192
192
|
const tagSourceOuter = getTagSourceOuter(tagSource);
|
|
@@ -2,6 +2,7 @@ export { configDefinitionsBuiltIn };
|
|
|
2
2
|
import { assert, assertUsage } from '../../utils.js';
|
|
3
3
|
import { getConfigDefinedAt, } from '../../../../shared-server-client/page-configs/getConfigDefinedAt.js';
|
|
4
4
|
import { getConfigValueSourceRelevantAnyEnv, getConfigValueSourcesRelevant, isConfigSourceValueNull, } from '../../plugins/pluginVirtualFiles/getConfigValueSourcesRelevant.js';
|
|
5
|
+
import { getFileSuffixes } from '../../../../shared-server-node/getFileSuffixes.js';
|
|
5
6
|
const configDefinitionsBuiltIn = {
|
|
6
7
|
onRenderHtml: {
|
|
7
8
|
env: { server: true },
|
|
@@ -117,7 +118,7 @@ const configDefinitionsBuiltIn = {
|
|
|
117
118
|
// Exclude `.ssr.js` hooks (they don't require pageContext.json requests)
|
|
118
119
|
.filter((source) => {
|
|
119
120
|
const { definedAt } = source;
|
|
120
|
-
if ('
|
|
121
|
+
if ('fileName' in definedAt && getFileSuffixes(definedAt.fileName).includes('ssr')) {
|
|
121
122
|
return false;
|
|
122
123
|
}
|
|
123
124
|
return true;
|
package/dist/server/onLoad.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export { onLoad };
|
|
2
2
|
import { assertIsNotBrowser } from '../utils/assertIsNotBrowser.js';
|
|
3
3
|
import { assertNodeVersion } from '../utils/assertNodeVersion.js';
|
|
4
|
-
import {
|
|
4
|
+
import { setAssertAlwaysShowStackTrace } from '../utils/assert.js';
|
|
5
5
|
import { installRequireShim } from '@brillout/require-shim';
|
|
6
6
|
import { isDebugError } from '../utils/debug.js';
|
|
7
7
|
function onLoad() {
|
|
@@ -10,7 +10,7 @@ function onLoad() {
|
|
|
10
10
|
if (isDebugError()) {
|
|
11
11
|
// Is also executed upon `$ vike build` because node/vite/utils.ts imports server/utils.ts
|
|
12
12
|
Error.stackTraceLimit = Infinity;
|
|
13
|
-
|
|
13
|
+
setAssertAlwaysShowStackTrace();
|
|
14
14
|
}
|
|
15
15
|
addEcosystemStamp();
|
|
16
16
|
installRequireShim();
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { logErrorServer };
|
|
2
2
|
export { hasAlreadyLogged };
|
|
3
|
-
import {
|
|
4
|
-
declare function logErrorServer(err: unknown, pageContext:
|
|
3
|
+
import type { PageContextCreatedServerMinimum } from './renderPageServer/createPageContextServerSide.js';
|
|
4
|
+
declare function logErrorServer(err: unknown, pageContext: PageContextCreatedServerMinimum | null): void;
|
|
5
5
|
declare function hasAlreadyLogged(err: unknown): boolean;
|
|
@@ -3,7 +3,6 @@ export { hasAlreadyLogged };
|
|
|
3
3
|
import pc from '@brillout/picocolors';
|
|
4
4
|
import { assertIsNotBrowser, assertWarning, getGlobalObject, hasRed, isDebugError, isObject } from '../utils.js';
|
|
5
5
|
import { execHookOnError } from './renderPageServer/execHookOnError.js';
|
|
6
|
-
import { assertPageContext_logRuntime } from './loggerRuntime.js';
|
|
7
6
|
import { addErrorHint } from './renderPageServer/addErrorHint.js';
|
|
8
7
|
import { isAbortError } from '../../shared-server-client/route/abort.js';
|
|
9
8
|
assertIsNotBrowser();
|
|
@@ -11,7 +10,6 @@ const globalObject = getGlobalObject('server/runtime/logErrorServer.ts', {
|
|
|
11
10
|
wasAlreadyLogged: new WeakSet(),
|
|
12
11
|
});
|
|
13
12
|
function logErrorServer(err, pageContext) {
|
|
14
|
-
assertPageContext_logRuntime(pageContext);
|
|
15
13
|
if (isAbortError(err) && !isDebugError())
|
|
16
14
|
return;
|
|
17
15
|
// I don't think there is a use case for printing the same error object twice? Reloading page throwing error => the same error is printed a second time but it's a different error object.
|
|
@@ -4,10 +4,11 @@ export { setLogRuntimeDev };
|
|
|
4
4
|
export { assertPageContext_logRuntime };
|
|
5
5
|
export type { PageContext_logRuntime };
|
|
6
6
|
import type { LogType } from '../../node/vite/shared/loggerDev.js';
|
|
7
|
+
import type { PageContextCreatedServerMinimum } from './renderPageServer/createPageContextServerSide.js';
|
|
7
8
|
type LogRuntimeInfo = (msg: string, pageContext: PageContext_logRuntime, logType: LogType) => void;
|
|
8
9
|
type LogRuntimeError = (err: unknown, pageContext: PageContext_logRuntime) => void;
|
|
9
|
-
type PageContext_logRuntime = null | {
|
|
10
|
+
type PageContext_logRuntime = null | (PageContextCreatedServerMinimum & {
|
|
10
11
|
_requestId: number;
|
|
11
|
-
};
|
|
12
|
+
});
|
|
12
13
|
declare function setLogRuntimeDev(logRuntimeErrorDev: LogRuntimeError, logRuntimeInfoDev: LogRuntimeInfo): void;
|
|
13
14
|
declare function assertPageContext_logRuntime(pageContext: PageContext_logRuntime): void;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
export { createHttpResponsePage };
|
|
2
|
-
export {
|
|
2
|
+
export { createHttpResponsePageJson };
|
|
3
3
|
export { createHttpResponseErrorFallback };
|
|
4
4
|
export { createHttpResponseErrorFallback_noGlobalContext };
|
|
5
|
+
export { createHttpResponseErrorFallbackJson };
|
|
5
6
|
export { createHttpResponseRedirect };
|
|
6
7
|
export { createHttpResponse404 };
|
|
7
8
|
export { createHttpResponseBaseIsMissing };
|
|
@@ -36,5 +37,6 @@ declare function createHttpResponseErrorFallback(pageContext: {
|
|
|
36
37
|
_globalContext: GlobalContextServerInternal;
|
|
37
38
|
}): HttpResponse;
|
|
38
39
|
declare function createHttpResponseErrorFallback_noGlobalContext(): HttpResponse;
|
|
39
|
-
declare function
|
|
40
|
+
declare function createHttpResponseErrorFallbackJson(): HttpResponse;
|
|
41
|
+
declare function createHttpResponsePageJson(pageContextSerialized: string): Promise<HttpResponse>;
|
|
40
42
|
declare function createHttpResponseRedirect({ url, statusCode }: UrlRedirect, pageContextInit: PageContextBegin): HttpResponse;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
export { createHttpResponsePage };
|
|
2
|
-
export {
|
|
2
|
+
export { createHttpResponsePageJson };
|
|
3
3
|
export { createHttpResponseErrorFallback };
|
|
4
4
|
export { createHttpResponseErrorFallback_noGlobalContext };
|
|
5
|
+
export { createHttpResponseErrorFallbackJson };
|
|
5
6
|
export { createHttpResponseRedirect };
|
|
6
7
|
export { createHttpResponse404 };
|
|
7
8
|
export { createHttpResponseBaseIsMissing };
|
|
@@ -11,6 +12,9 @@ import { getHttpResponseBody, getHttpResponseBodyStreamHandlers } from './getHtt
|
|
|
11
12
|
import { getEarlyHints } from './getEarlyHints.js';
|
|
12
13
|
import { assertNoInfiniteHttpRedirect } from './createHttpResponse/assertNoInfiniteHttpRedirect.js';
|
|
13
14
|
import { resolveHeadersResponseFinal } from './headersResponse.js';
|
|
15
|
+
import { stringify } from '@brillout/json-serializer/stringify';
|
|
16
|
+
const contentTypeJson = 'application/json';
|
|
17
|
+
const contentTypeHtml = 'text/html;charset=utf-8';
|
|
14
18
|
async function createHttpResponsePage(htmlRender, renderHook, pageContext) {
|
|
15
19
|
let statusCode = pageContext.abortStatusCode;
|
|
16
20
|
if (!statusCode) {
|
|
@@ -29,17 +33,17 @@ async function createHttpResponsePage(htmlRender, renderHook, pageContext) {
|
|
|
29
33
|
}
|
|
30
34
|
const earlyHints = getEarlyHints(await pageContext.__getPageAssets());
|
|
31
35
|
const headers = resolveHeadersResponseFinal(pageContext, statusCode);
|
|
32
|
-
return createHttpResponse(statusCode,
|
|
36
|
+
return createHttpResponse(statusCode, contentTypeHtml, headers, htmlRender, earlyHints, renderHook);
|
|
33
37
|
}
|
|
34
38
|
function createHttpResponse404(errMsg404) {
|
|
35
|
-
const httpResponse = createHttpResponse(404,
|
|
39
|
+
const httpResponse = createHttpResponse(404, contentTypeHtml, [], `<p>${errMsg404}.</p><script>console.log('This HTML was generated by Vike.')</script>`);
|
|
36
40
|
return httpResponse;
|
|
37
41
|
}
|
|
38
42
|
function createHttpResponseBaseIsMissing(urlOriginal, baseServer) {
|
|
39
43
|
const httpResponse = createHttpResponse(
|
|
40
44
|
// We use the error code `500` to signal a failing state because this HTTP response should never be used, see https://vike.dev/base-url#setup
|
|
41
45
|
// In other words: this HTTP response is expected to be generated but isn't expected to be actually used.
|
|
42
|
-
500,
|
|
46
|
+
500, contentTypeHtml, [], `
|
|
43
47
|
<h1>Error: Base URL is missing</h1>
|
|
44
48
|
<p>
|
|
45
49
|
<a href="https://vike.dev/renderPage"><code>renderPage(pageContextInit)</code></a> called with <code>pageContextInit.urlOriginal===${JSON.stringify(urlOriginal)}</code> which doesn't start with the Base URL <code>${baseServer}</code>.
|
|
@@ -74,11 +78,15 @@ function createHttpResponseErrorFallback_noGlobalContext() {
|
|
|
74
78
|
return createHttpResponseError_('no error page (https://vike.dev/error-page) could be rendered');
|
|
75
79
|
}
|
|
76
80
|
function createHttpResponseError_(reason) {
|
|
77
|
-
const httpResponse = createHttpResponse(500,
|
|
81
|
+
const httpResponse = createHttpResponse(500, contentTypeHtml, [], `<p>An error occurred.</p><script>console.log(${JSON.stringify(`This HTML was generated by Vike. Vike returned this HTML because ${reason}.`)})</script>`);
|
|
78
82
|
return httpResponse;
|
|
79
83
|
}
|
|
80
|
-
|
|
81
|
-
const httpResponse = createHttpResponse(
|
|
84
|
+
function createHttpResponseErrorFallbackJson() {
|
|
85
|
+
const httpResponse = createHttpResponse(500, contentTypeJson, [], stringify({ serverSideError: true }));
|
|
86
|
+
return httpResponse;
|
|
87
|
+
}
|
|
88
|
+
async function createHttpResponsePageJson(pageContextSerialized) {
|
|
89
|
+
const httpResponse = createHttpResponse(200, contentTypeJson, [], pageContextSerialized, [], null);
|
|
82
90
|
return httpResponse;
|
|
83
91
|
}
|
|
84
92
|
function createHttpResponseRedirect({ url, statusCode }, pageContextInit) {
|
|
@@ -87,7 +95,7 @@ function createHttpResponseRedirect({ url, statusCode }, pageContextInit) {
|
|
|
87
95
|
assert(statusCode);
|
|
88
96
|
assert(300 <= statusCode && statusCode <= 399);
|
|
89
97
|
const headers = [['Location', url]];
|
|
90
|
-
return createHttpResponse(statusCode,
|
|
98
|
+
return createHttpResponse(statusCode, contentTypeHtml, headers,
|
|
91
99
|
// For bots / programmatic crawlig: show what's going on.
|
|
92
100
|
// For users: showing a blank page is probably better than a flickering text.
|
|
93
101
|
`<p style="display: none">Redirecting to ${escapeHtml(url)}</p><script>console.log('This HTML was generated by Vike.')</script>`);
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
export { createPageContextServerSide };
|
|
2
2
|
export { createPageContextServerSideWithoutGlobalContext };
|
|
3
|
-
export type {
|
|
3
|
+
export type { PageContextCreatedServer };
|
|
4
|
+
export type { PageContextCreatedServerMinimum };
|
|
4
5
|
import type { GlobalContextServerInternal } from '../globalContext.js';
|
|
5
6
|
import type { PageContextInit } from '../renderPageServer.js';
|
|
6
|
-
type
|
|
7
|
+
type PageContextCreatedServerMinimum = ReturnType<typeof createPageContextServerSideWithoutGlobalContext>;
|
|
8
|
+
type PageContextCreatedServer = Awaited<ReturnType<typeof createPageContextServerSide>>;
|
|
7
9
|
declare function createPageContextServerSide(pageContextInit: PageContextInit, globalContext: GlobalContextServerInternal, args: {
|
|
8
10
|
requestId: number;
|
|
9
11
|
} & ({
|
|
@@ -146,6 +148,7 @@ declare function createPageContextServerSide(pageContextInit: PageContextInit, g
|
|
|
146
148
|
} & {
|
|
147
149
|
headers: Record<string, string> | null;
|
|
148
150
|
};
|
|
151
|
+
/** Use this as last resort — prefer passing richer `pageContext` objects to the runtime logger */
|
|
149
152
|
declare function createPageContextServerSideWithoutGlobalContext(pageContextInit: PageContextInit, requestId: number): {
|
|
150
153
|
_isOriginalObject: true;
|
|
151
154
|
isPageContext: true;
|
|
@@ -41,6 +41,7 @@ function createPageContextServerSide(pageContextInit, globalContext, args) {
|
|
|
41
41
|
updateType(pageContextCreated, pageContextAugmented);
|
|
42
42
|
return pageContextCreated;
|
|
43
43
|
}
|
|
44
|
+
/** Use this as last resort — prefer passing richer `pageContext` objects to the runtime logger */
|
|
44
45
|
function createPageContextServerSideWithoutGlobalContext(pageContextInit, requestId) {
|
|
45
46
|
const pageContext = createPageContext(pageContextInit, false, requestId);
|
|
46
47
|
return pageContext;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { execHookOnError };
|
|
2
|
-
import type {
|
|
3
|
-
declare function execHookOnError(err: unknown, pageContext:
|
|
2
|
+
import type { PageContextCreatedServerMinimum } from './createPageContextServerSide.js';
|
|
3
|
+
declare function execHookOnError(err: unknown, pageContext: PageContextCreatedServerMinimum | null): void;
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
export { handleErrorWithoutErrorPage };
|
|
2
2
|
import type { GlobalContextServerInternal } from '../globalContext.js';
|
|
3
|
-
import type {
|
|
4
|
-
declare function handleErrorWithoutErrorPage<PageContext extends
|
|
3
|
+
import type { PageContextCreatedServer } from './createPageContextServerSide.js';
|
|
4
|
+
declare function handleErrorWithoutErrorPage<PageContext extends PageContextCreatedServer & {
|
|
5
5
|
errorWhileRendering: null | Error;
|
|
6
6
|
is404: null | boolean;
|
|
7
7
|
pageId: null;
|
|
8
8
|
_globalContext: GlobalContextServerInternal;
|
|
9
9
|
urlOriginal: string;
|
|
10
|
-
}>(pageContext: PageContext):
|
|
10
|
+
}>(pageContext: PageContext): PageContext & {
|
|
11
11
|
httpResponse: import("./createHttpResponse.js").HttpResponse;
|
|
12
|
-
}
|
|
12
|
+
};
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
export { handleErrorWithoutErrorPage };
|
|
2
|
-
import { stringify } from '@brillout/json-serializer/stringify';
|
|
3
2
|
import { assert, assertWarning, objectAssign } from '../../utils.js';
|
|
4
|
-
import {
|
|
3
|
+
import { createHttpResponseErrorFallback, createHttpResponseErrorFallbackJson } from './createHttpResponse.js';
|
|
5
4
|
import pc from '@brillout/picocolors';
|
|
6
5
|
// When the user hasn't defined _error.page.js
|
|
7
|
-
|
|
6
|
+
function handleErrorWithoutErrorPage(pageContext) {
|
|
8
7
|
assert(pageContext.pageId === null);
|
|
9
8
|
assert(pageContext.errorWhileRendering || pageContext.is404);
|
|
10
9
|
{
|
|
@@ -19,7 +18,7 @@ async function handleErrorWithoutErrorPage(pageContext) {
|
|
|
19
18
|
else {
|
|
20
19
|
const __getPageAssets = async () => [];
|
|
21
20
|
objectAssign(pageContext, { __getPageAssets });
|
|
22
|
-
const httpResponse =
|
|
21
|
+
const httpResponse = createHttpResponseErrorFallbackJson();
|
|
23
22
|
objectAssign(pageContext, { httpResponse });
|
|
24
23
|
return pageContext;
|
|
25
24
|
}
|
|
@@ -6,10 +6,10 @@ export type { PassToClient };
|
|
|
6
6
|
export type { PassToClientPublic };
|
|
7
7
|
import type { UrlRedirect } from '../../../../shared-server-client/route/abort.js';
|
|
8
8
|
import type { GlobalContextServerInternal } from '../../globalContext.js';
|
|
9
|
-
import type {
|
|
9
|
+
import type { PageContextCreatedServer } from '../createPageContextServerSide.js';
|
|
10
10
|
import type { PageContextBegin } from '../../renderPageServer.js';
|
|
11
11
|
import type { PageContextCspNonce } from '../csp.js';
|
|
12
|
-
type PageContextSerialization =
|
|
12
|
+
type PageContextSerialization = PageContextCreatedServer & {
|
|
13
13
|
pageId: string;
|
|
14
14
|
routeParams: Record<string, string>;
|
|
15
15
|
_passToClient: PassToClient;
|
|
@@ -8,8 +8,8 @@ import { type PageAsset } from './getPageAssets.js';
|
|
|
8
8
|
import type { PageConfigRuntime } from '../../../types/PageConfig.js';
|
|
9
9
|
import type { PassToClient } from './html/serializeContext.js';
|
|
10
10
|
import type { PageContextAfterRoute } from '../../../shared-server-client/route/index.js';
|
|
11
|
-
import type {
|
|
12
|
-
type PageContext_loadPageConfigsLazyServerSide =
|
|
11
|
+
import type { PageContextCreatedServer } from './createPageContextServerSide.js';
|
|
12
|
+
type PageContext_loadPageConfigsLazyServerSide = PageContextCreatedServer & PageContextAfterRoute & {
|
|
13
13
|
is404: boolean | null;
|
|
14
14
|
pageId: string;
|
|
15
15
|
};
|
|
@@ -2,8 +2,8 @@ export { log404 };
|
|
|
2
2
|
export { getRoutesInfo };
|
|
3
3
|
import type { PageRoutes } from '../../../../shared-server-client/route/index.js';
|
|
4
4
|
import type { GlobalContextServerInternal } from '../../globalContext.js';
|
|
5
|
-
import type {
|
|
6
|
-
declare function log404(pageContext:
|
|
5
|
+
import type { PageContextCreatedServer } from '../createPageContextServerSide.js';
|
|
6
|
+
declare function log404(pageContext: PageContextCreatedServer & {
|
|
7
7
|
urlPathname: string;
|
|
8
8
|
errorWhileRendering: null | Error;
|
|
9
9
|
_globalContext: GlobalContextServerInternal;
|
|
@@ -5,7 +5,7 @@ export type { PageContextAfterRender };
|
|
|
5
5
|
import { type PageContextUrlInternal } from '../../../shared-server-client/getPageContextUrlComputed.js';
|
|
6
6
|
import { HttpResponse } from './createHttpResponse.js';
|
|
7
7
|
import { type PageContext_loadPageConfigsLazyServerSide, type PageConfigsLazy } from './loadPageConfigsLazyServerSide.js';
|
|
8
|
-
import type {
|
|
8
|
+
import type { PageContextCreatedServer } from './createPageContextServerSide.js';
|
|
9
9
|
import type { PageContextBegin } from '../renderPageServer.js';
|
|
10
10
|
type PageContextAfterRender = {
|
|
11
11
|
httpResponse: HttpResponse;
|
|
@@ -18,7 +18,7 @@ declare function renderPageServerAfterRoute<PageContext extends {
|
|
|
18
18
|
routeParams: Record<string, string>;
|
|
19
19
|
errorWhileRendering: null | Error;
|
|
20
20
|
_requestId: number;
|
|
21
|
-
} &
|
|
21
|
+
} & PageContextCreatedServer & PageContextBegin & PageContextUrlInternal & PageContext_loadPageConfigsLazyServerSide>(pageContext: PageContext): Promise<PageContext & PageContextAfterRender>;
|
|
22
22
|
declare function prerenderPage(pageContext: Parameters<typeof prerenderPageEntry>[0]): Promise<{
|
|
23
23
|
documentHtml: string;
|
|
24
24
|
pageContextSerialized: null;
|
|
@@ -348,7 +348,7 @@ declare function prerenderPage(pageContext: Parameters<typeof prerenderPageEntry
|
|
|
348
348
|
pageContextsAborted: never[];
|
|
349
349
|
};
|
|
350
350
|
}>;
|
|
351
|
-
declare function prerenderPageEntry(pageContext:
|
|
351
|
+
declare function prerenderPageEntry(pageContext: PageContextCreatedServer & PageConfigsLazy & {
|
|
352
352
|
routeParams: Record<string, string>;
|
|
353
353
|
pageId: string;
|
|
354
354
|
_requestId: number;
|
|
@@ -5,7 +5,7 @@ import { getErrorPageId } from '../../../shared-server-client/error-page.js';
|
|
|
5
5
|
import { getHtmlString } from './html/renderHtml.js';
|
|
6
6
|
import { assert, assertUsage, updateType, hasProp, objectAssign, isSameErrorMessage } from '../../utils.js';
|
|
7
7
|
import { getPageContextClientSerialized } from './html/serializeContext.js';
|
|
8
|
-
import { createHttpResponsePage,
|
|
8
|
+
import { createHttpResponsePage, createHttpResponsePageJson } from './createHttpResponse.js';
|
|
9
9
|
import { loadPageConfigsLazyServerSide, } from './loadPageConfigsLazyServerSide.js';
|
|
10
10
|
import { execHookOnRenderHtml } from './execHookOnRenderHtml.js';
|
|
11
11
|
import { execHookDataAndOnBeforeRender } from './execHookDataAndOnBeforeRender.js';
|
|
@@ -46,7 +46,7 @@ async function renderPageServerAfterRoute(pageContext) {
|
|
|
46
46
|
objectAssign(pageContext, { [isServerSideError]: true });
|
|
47
47
|
}
|
|
48
48
|
const pageContextSerialized = getPageContextClientSerialized(pageContext, false);
|
|
49
|
-
const httpResponse = await
|
|
49
|
+
const httpResponse = await createHttpResponsePageJson(pageContextSerialized);
|
|
50
50
|
objectAssign(pageContext, { httpResponse });
|
|
51
51
|
return pageContext;
|
|
52
52
|
}
|
|
@@ -6,7 +6,7 @@ import { assert, hasProp, objectAssign, isUrl, parseUrl, onSetupRuntime, assertW
|
|
|
6
6
|
import { getPageContextAddendumAbort, isAbortError, logAbort, addNewPageContextAborted, } from '../../shared-server-client/route/abort.js';
|
|
7
7
|
import { getGlobalContextServerInternal, initGlobalContext_renderPage, } from './globalContext.js';
|
|
8
8
|
import { handlePageContextRequestUrl } from './renderPageServer/handlePageContextRequestUrl.js';
|
|
9
|
-
import { createHttpResponse404, createHttpResponseRedirect,
|
|
9
|
+
import { createHttpResponse404, createHttpResponseRedirect, createHttpResponsePageJson, createHttpResponseErrorFallback, createHttpResponseErrorFallback_noGlobalContext, createHttpResponseBaseIsMissing, } from './renderPageServer/createHttpResponse.js';
|
|
10
10
|
import { logRuntimeError, logRuntimeInfo } from './loggerRuntime.js';
|
|
11
11
|
import { assertArguments } from './renderPageServer/assertArguments.js';
|
|
12
12
|
import { log404 } from './renderPageServer/log404/index.js';
|
|
@@ -40,7 +40,7 @@ async function renderPageServer(pageContextInit) {
|
|
|
40
40
|
const pageContextFinish = !asyncLocalStorage ? await render() : await asyncLocalStorage.run(asyncStore, render);
|
|
41
41
|
logHttpResponse(urlOriginalPretty, pageContextFinish);
|
|
42
42
|
checkType(pageContextFinish);
|
|
43
|
-
|
|
43
|
+
assertPageContextFinish(pageContextFinish);
|
|
44
44
|
return pageContextFinish;
|
|
45
45
|
}
|
|
46
46
|
async function renderPageServerEntryOnce(pageContextInit, requestId, asyncStore) {
|
|
@@ -63,8 +63,8 @@ async function renderPageServerEntryOnce(pageContextInit, requestId, asyncStore)
|
|
|
63
63
|
// ```
|
|
64
64
|
// - initGlobalContext_renderPage() depends on +onCreateGlobalContext hooks
|
|
65
65
|
assert(!isAbortError(err));
|
|
66
|
-
const
|
|
67
|
-
logRuntimeError(err,
|
|
66
|
+
const pageContext = createPageContextServerSideWithoutGlobalContext(pageContextInit, requestId);
|
|
67
|
+
logRuntimeError(err, pageContext);
|
|
68
68
|
const pageContextHttpErrorFallback = getPageContextHttpErrorFallback_noGlobalContext(err, pageContextInit, requestId);
|
|
69
69
|
return pageContextHttpErrorFallback;
|
|
70
70
|
}
|
|
@@ -131,7 +131,7 @@ async function renderPageServerEntryRecursive(pageContextBegin, globalContext, r
|
|
|
131
131
|
const errorPageId = getErrorPageId(pageContextNominalPageBegin._globalContext._pageFilesAll, pageContextNominalPageBegin._globalContext._pageConfigs);
|
|
132
132
|
if (!errorPageId) {
|
|
133
133
|
assert(hasProp(pageContextNominalPageBegin, 'pageId', 'null')); // Help TS
|
|
134
|
-
return
|
|
134
|
+
return handleErrorWithoutErrorPage(pageContextNominalPageBegin);
|
|
135
135
|
}
|
|
136
136
|
objectAssign(pageContextNominalPageBegin, { pageId: errorPageId });
|
|
137
137
|
}
|
|
@@ -182,7 +182,7 @@ async function renderPageServerEntryRecursive_onError(err, pageContextBegin, pag
|
|
|
182
182
|
const errorPageId = getErrorPageId(globalContext._pageFilesAll, globalContext._pageConfigs);
|
|
183
183
|
if (!errorPageId) {
|
|
184
184
|
objectAssign(pageContextErrorPageInit, { pageId: null });
|
|
185
|
-
return
|
|
185
|
+
return handleErrorWithoutErrorPage(pageContextErrorPageInit);
|
|
186
186
|
}
|
|
187
187
|
objectAssign(pageContextErrorPageInit, { pageId: errorPageId });
|
|
188
188
|
}
|
|
@@ -216,8 +216,8 @@ async function renderPageServerEntryRecursive_onError(err, pageContextBegin, pag
|
|
|
216
216
|
return pageContextErrorPage;
|
|
217
217
|
}
|
|
218
218
|
function logHttpRequest(urlOriginal, pageContextInit, requestId) {
|
|
219
|
-
const
|
|
220
|
-
logRuntimeInfo?.(getRequestInfoMessage(urlOriginal),
|
|
219
|
+
const pageContext = createPageContextServerSideWithoutGlobalContext(pageContextInit, requestId);
|
|
220
|
+
logRuntimeInfo?.(getRequestInfoMessage(urlOriginal), pageContext, 'info');
|
|
221
221
|
}
|
|
222
222
|
/* Alternative icons:
|
|
223
223
|
const arrowRight = pc.dim('»')
|
|
@@ -430,7 +430,7 @@ pageContextNominalPageBegin, requestId, pageContextErrorPageInit, globalContext)
|
|
|
430
430
|
else {
|
|
431
431
|
pageContextSerialized = getPageContextClientSerializedAbort(pageContextAbort, false);
|
|
432
432
|
}
|
|
433
|
-
const httpResponse = await
|
|
433
|
+
const httpResponse = await createHttpResponsePageJson(pageContextSerialized);
|
|
434
434
|
objectAssign(pageContext, { httpResponse });
|
|
435
435
|
return { pageContextReturn: pageContext };
|
|
436
436
|
}
|
|
@@ -486,19 +486,11 @@ function getPageContextSkipRequest(pageContextInit, requestId) {
|
|
|
486
486
|
return pageContext;
|
|
487
487
|
}
|
|
488
488
|
function getPageContextInvalidVikeConfig(err, pageContextInit, requestId) {
|
|
489
|
-
const
|
|
490
|
-
logRuntimeInfo?.(pc.bold(pc.red('Error loading Vike config — see error above')),
|
|
489
|
+
const pageContext = createPageContextServerSideWithoutGlobalContext(pageContextInit, requestId);
|
|
490
|
+
logRuntimeInfo?.(pc.bold(pc.red('Error loading Vike config — see error above')), pageContext, 'error');
|
|
491
491
|
const pageContextHttpErrorFallback = getPageContextHttpErrorFallback_noGlobalContext(err, pageContextInit, requestId);
|
|
492
492
|
return pageContextHttpErrorFallback;
|
|
493
493
|
}
|
|
494
|
-
/** Use this as last resort — prefer passing richer `pageContext` objects to the runtime logger */
|
|
495
|
-
function getPageContext_logRuntimeEarly(pageContextInit, requestId) {
|
|
496
|
-
const pageContext_logRuntime = {
|
|
497
|
-
...pageContextInit,
|
|
498
|
-
_requestId: requestId,
|
|
499
|
-
};
|
|
500
|
-
return pageContext_logRuntime;
|
|
501
|
-
}
|
|
502
494
|
function fork(pageContext) {
|
|
503
495
|
const pageContextNew = forkPageContext(pageContext);
|
|
504
496
|
if (pageContext._asyncStore)
|
|
@@ -506,3 +498,11 @@ function fork(pageContext) {
|
|
|
506
498
|
assert(pageContextNew._asyncStore === pageContext._asyncStore);
|
|
507
499
|
return pageContextNew;
|
|
508
500
|
}
|
|
501
|
+
function assertPageContextFinish(pageContextFinish) {
|
|
502
|
+
assert(pageContextFinish.httpResponse);
|
|
503
|
+
if (pageContextFinish.isClientSideNavigation) {
|
|
504
|
+
const headers = new Headers(pageContextFinish.httpResponse.headers);
|
|
505
|
+
const contentType = headers.get('Content-Type');
|
|
506
|
+
assert(contentType?.toLowerCase() === 'application/json');
|
|
507
|
+
}
|
|
508
|
+
}
|
|
@@ -18,7 +18,11 @@ import type { PageContextForPublicUsageServer } from '../../server/runtime/rende
|
|
|
18
18
|
import type { PageContextForPublicUsageClientShared } from '../../client/shared/preparePageContextForPublicUsageClientShared.js';
|
|
19
19
|
import { type PageContextPrepareMinimum } from '../preparePageContextForPublicUsage.js';
|
|
20
20
|
import type { GlobalContextPrepareMinimum } from '../prepareGlobalContextForPublicUsage.js';
|
|
21
|
-
type
|
|
21
|
+
import type { PageContextCreatedClient } from '../../client/runtime-client-routing/createPageContextClientSide.js';
|
|
22
|
+
import type { PageContextCreatedServer } from '../../server/runtime/renderPageServer/createPageContextServerSide.js';
|
|
23
|
+
import type { PageContextCreatedClient_ServerRouting } from '../../client/runtime-server-routing/createPageContextClientSide.js';
|
|
24
|
+
type PageContextExecHook = PageContextCreated & PageContextConfig & PageContextForPublicUsage;
|
|
25
|
+
type PageContextCreated = PageContextCreatedServer | PageContextCreatedClient | PageContextCreatedClient_ServerRouting;
|
|
22
26
|
type PageContextForPublicUsage = PageContextForPublicUsageServer | PageContextForPublicUsageClientShared;
|
|
23
27
|
type HookWithResult = Hook & {
|
|
24
28
|
hookReturn: unknown;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const PROJECT_VERSION: "0.4.
|
|
1
|
+
export declare const PROJECT_VERSION: "0.4.250-commit-193dea3";
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// Automatically updated by @brillout/release-me
|
|
2
|
-
export const PROJECT_VERSION = '0.4.
|
|
2
|
+
export const PROJECT_VERSION = '0.4.250-commit-193dea3';
|
package/dist/utils/assert.d.ts
CHANGED
|
@@ -6,9 +6,9 @@ export { getProjectError };
|
|
|
6
6
|
export { isVikeBug };
|
|
7
7
|
export { setAssertOnBeforeLog };
|
|
8
8
|
export { setAssertOnBeforeErr };
|
|
9
|
-
export {
|
|
10
|
-
export {
|
|
11
|
-
import type {
|
|
9
|
+
export { setAssertAlwaysShowStackTrace };
|
|
10
|
+
export { setAssertAddAssertTagsDev };
|
|
11
|
+
import type { AddAssertTagsDev } from '../node/vite/shared/loggerDev.js';
|
|
12
12
|
declare function assert(condition: unknown, debugInfo?: unknown): asserts condition;
|
|
13
13
|
declare function assertUsage(condition: unknown, errMsg: string, { showStackTrace, exitOnError }?: {
|
|
14
14
|
showStackTrace?: true;
|
|
@@ -24,6 +24,6 @@ declare function assertInfo(condition: unknown, msg: string, { onlyOnce }: {
|
|
|
24
24
|
}): void;
|
|
25
25
|
declare function setAssertOnBeforeLog(onBeforeAssertLog: () => void): void;
|
|
26
26
|
declare function setAssertOnBeforeErr(onBeforeAssertErr: (err: unknown) => void): void;
|
|
27
|
-
declare function
|
|
27
|
+
declare function setAssertAddAssertTagsDev(addAssertTagsDev: AddAssertTagsDev): void;
|
|
28
28
|
declare function isVikeBug(err: unknown): boolean;
|
|
29
|
-
declare function
|
|
29
|
+
declare function setAssertAlwaysShowStackTrace(): void;
|