vike 0.4.235 → 0.4.236-commit-64431e7
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/cjs/__internal/index.js +1 -1
- package/dist/cjs/client/shared/createGetGlobalContextClient.js +2 -3
- package/dist/cjs/client/shared/preparePageContextForPublicUsageClientShared.js +4 -4
- package/dist/cjs/node/api/prepareViteApiCall.js +1 -1
- package/dist/cjs/node/cli/index.js +1 -1
- package/dist/cjs/node/createPageRenderer.js +1 -1
- package/dist/cjs/node/importBuild.js +1 -1
- package/dist/cjs/node/prerender/context.js +1 -1
- package/dist/cjs/node/prerender/index.js +1 -1
- package/dist/cjs/node/prerender/resolvePrerenderConfig.js +2 -2
- package/dist/cjs/node/prerender/runPrerender.js +9 -13
- package/dist/cjs/node/runtime/globalContext.js +109 -28
- package/dist/cjs/node/runtime/html/injectAssets/getViteDevScript.js +8 -1
- package/dist/cjs/node/runtime/html/injectAssets/injectAssets__public.js +1 -1
- package/dist/cjs/node/runtime/html/injectAssets/injectHtmlTags.js +2 -0
- package/dist/cjs/node/runtime/html/serializeContext.js +73 -15
- package/dist/cjs/node/runtime/index-deprecated.js +1 -1
- package/dist/cjs/node/runtime/index.js +1 -1
- package/dist/cjs/node/runtime/page-files/setup.js +1 -1
- package/dist/cjs/node/runtime/renderPage/assertArguments.js +1 -1
- package/dist/cjs/node/runtime/renderPage/createHttpResponse.js +9 -6
- package/dist/cjs/node/runtime/renderPage/createPageContextServerSide.js +4 -4
- package/dist/cjs/node/runtime/renderPage/execHookDataAndOnBeforeRender.js +2 -2
- package/dist/cjs/node/runtime/renderPage/{createHttpResponse/getCacheControl.js → getCacheControl.js} +9 -9
- package/dist/cjs/node/runtime/renderPage/getHttpResponseBody.js +4 -4
- package/dist/cjs/node/runtime/renderPage/getPageAssets/retrieveAssetsProd.js +1 -1
- package/dist/cjs/node/runtime/renderPage/getPageAssets.js +15 -12
- package/dist/cjs/node/runtime/renderPage/loadPageConfigsLazyServerSide.js +35 -16
- package/dist/cjs/node/runtime/renderPage/preparePageContextForPublicUsageServer.js +1 -1
- package/dist/cjs/node/runtime/renderPage/renderPageAlreadyRouted.js +1 -0
- package/dist/cjs/node/runtime/renderPage.js +4 -6
- package/dist/cjs/node/runtime/utils.js +1 -0
- package/dist/cjs/node/vite/index.js +2 -0
- package/dist/cjs/node/vite/onLoad.js +1 -1
- package/dist/cjs/node/vite/plugins/pluginBuild/handleAssetsManifest.js +3 -3
- package/dist/cjs/node/vite/plugins/pluginBuild/pluginBuildConfig.js +3 -2
- package/dist/cjs/node/vite/plugins/pluginBuild/pluginBuildEntry.js +1 -1
- package/dist/cjs/node/vite/plugins/pluginBuild/pluginDistFileNames.js +16 -7
- package/dist/cjs/node/vite/plugins/pluginCommon/assertResolveAlias.js +1 -1
- package/dist/cjs/node/vite/plugins/pluginCommon.js +9 -4
- package/dist/cjs/node/vite/plugins/pluginDev.js +1 -1
- package/dist/cjs/node/vite/plugins/pluginEnvVars.js +4 -4
- package/dist/cjs/node/vite/plugins/pluginExtractExportNames.js +2 -2
- package/dist/cjs/node/vite/plugins/pluginFileEnv.js +1 -1
- package/dist/cjs/node/vite/plugins/pluginReplaceConstants.js +1 -1
- package/dist/cjs/node/vite/plugins/pluginVirtualFiles.js +1 -1
- package/dist/cjs/node/vite/plugins/pluginViteRPC.js +42 -0
- package/dist/cjs/node/vite/shared/addSsrMiddleware.js +1 -1
- package/dist/cjs/node/vite/shared/applyRegExWithMagicString.js +1 -0
- package/dist/cjs/node/vite/shared/loggerNotProd.js +10 -6
- package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/configDefinitionsBuiltIn.js +5 -1
- package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/crawlPlusFiles.js +1 -3
- package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/filesystemRouting.js +4 -6
- package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/transpileAndExecuteFile.js +1 -1
- package/dist/cjs/node/vite/shared/resolveVikeConfigInternal.js +6 -6
- package/dist/cjs/shared/RenderErrorPage.js +1 -1
- package/dist/cjs/shared/abort.js +1 -1
- package/dist/cjs/shared/createGlobalContextShared.js +28 -7
- package/dist/cjs/shared/createPageContextShared.js +1 -2
- package/dist/cjs/shared/determinePageIdOld.js +1 -1
- package/dist/cjs/shared/error-page.js +3 -3
- package/dist/cjs/shared/getPageContextUrlComputed.js +4 -4
- package/dist/cjs/shared/getPageFiles/analyzeClientSide.js +1 -1
- package/dist/cjs/shared/getPageFiles/analyzePageClientSide/analyzeExports.js +1 -1
- package/dist/cjs/shared/getPageFiles/analyzePageClientSide/determineClientEntry.js +1 -1
- package/dist/cjs/shared/getPageFiles/analyzePageClientSide.js +2 -2
- package/dist/cjs/shared/getPageFiles/assert_exports_old_design.js +1 -1
- package/dist/cjs/shared/getPageFiles/fileTypes.js +1 -1
- package/dist/cjs/shared/getPageFiles/getAllPageIdFiles.js +1 -1
- package/dist/cjs/shared/getPageFiles/getPageFileObject.js +1 -1
- package/dist/cjs/shared/getPageFiles/parseVirtualFileExports.js +1 -1
- package/dist/cjs/shared/getProxyForPublicUsage.js +3 -3
- package/dist/cjs/shared/page-configs/getConfigDefinedAt.js +4 -3
- package/dist/cjs/shared/page-configs/resolveVikeConfigPublic.js +10 -10
- package/dist/cjs/shared/page-configs/serialize/serializeConfigValues.js +1 -1
- package/dist/cjs/shared/preparePageContextForPublicUsage.js +5 -5
- package/dist/cjs/shared/route/abort.js +1 -1
- package/dist/cjs/shared/route/deduceRouteStringFromFilesystemPath.js +1 -1
- package/dist/cjs/shared/route/execHookGuard.js +1 -1
- package/dist/cjs/shared/route/execHookOnBeforeRoute.js +1 -1
- package/dist/cjs/shared/route/index.js +1 -1
- package/dist/cjs/shared/route/loadPageRoutes.js +10 -4
- package/dist/cjs/shared/route/resolveRouteFunction.js +3 -3
- package/dist/cjs/shared/route/resolveRouteString.js +1 -1
- package/dist/cjs/shared/route/routing.js +1 -1
- package/dist/cjs/utils/PROJECT_VERSION.js +1 -1
- package/dist/cjs/utils/assertSetup.js +11 -8
- package/dist/cjs/utils/debug.js +1 -0
- package/dist/cjs/utils/debugGlob.js +1 -1
- package/dist/cjs/utils/getViteRPC.js +79 -0
- package/dist/cjs/utils/parseNpmPackage.js +1 -1
- package/dist/esm/__internal/index.d.ts +1 -1
- package/dist/esm/__internal/index.js +1 -1
- package/dist/esm/client/node.js +1 -1
- package/dist/esm/client/runtime-client-routing/createPageContextClientSide.d.ts +1 -1
- package/dist/esm/client/runtime-client-routing/createPageContextClientSide.js +2 -2
- package/dist/esm/client/runtime-client-routing/getPageContextFromHooks.d.ts +10 -2
- package/dist/esm/client/runtime-client-routing/getPageContextFromHooks.js +6 -6
- package/dist/esm/client/runtime-client-routing/globalContext.d.ts +1 -1
- package/dist/esm/client/runtime-client-routing/index.js +1 -1
- package/dist/esm/client/runtime-client-routing/isClientSideRoutable.js +1 -1
- package/dist/esm/client/runtime-client-routing/prefetch/getPrefetchSettings.js +6 -6
- package/dist/esm/client/runtime-client-routing/prefetch.js +10 -10
- package/dist/esm/client/runtime-client-routing/renderPageClientSide.d.ts +3 -1
- package/dist/esm/client/runtime-client-routing/renderPageClientSide.js +3 -3
- package/dist/esm/client/runtime-client-routing/skipLink.js +1 -1
- package/dist/esm/client/runtime-server-routing/createPageContextClientSide.d.ts +1 -1
- package/dist/esm/client/runtime-server-routing/createPageContextClientSide.js +2 -2
- package/dist/esm/client/runtime-server-routing/globalContext.d.ts +1 -1
- package/dist/esm/client/runtime-server-routing/index.js +1 -1
- package/dist/esm/client/shared/createGetGlobalContextClient.d.ts +5 -4
- package/dist/esm/client/shared/createGetGlobalContextClient.js +1 -2
- package/dist/esm/client/shared/execHookOnRenderClient.js +1 -1
- package/dist/esm/client/shared/loadPageConfigsLazyClientSide.js +2 -2
- package/dist/esm/client/shared/preparePageContextForPublicUsageClientShared.js +4 -4
- package/dist/esm/node/api/prepareViteApiCall.js +1 -1
- package/dist/esm/node/cli/index.js +1 -1
- package/dist/esm/node/createPageRenderer.js +1 -1
- package/dist/esm/node/importBuild.js +1 -1
- package/dist/esm/node/prerender/context.js +1 -1
- package/dist/esm/node/prerender/index.js +1 -1
- package/dist/esm/node/prerender/resolvePrerenderConfig.js +2 -2
- package/dist/esm/node/prerender/runPrerender.d.ts +42 -133
- package/dist/esm/node/prerender/runPrerender.js +9 -13
- package/dist/esm/node/runtime/globalContext.d.ts +39 -59
- package/dist/esm/node/runtime/globalContext.js +112 -31
- package/dist/esm/node/runtime/html/injectAssets/getViteDevScript.js +8 -1
- package/dist/esm/node/runtime/html/injectAssets/injectAssets__public.js +1 -1
- package/dist/esm/node/runtime/html/injectAssets/injectHtmlTags.js +2 -0
- package/dist/esm/node/runtime/html/serializeContext.d.ts +7 -1
- package/dist/esm/node/runtime/html/serializeContext.js +73 -15
- package/dist/esm/node/runtime/index-deprecated.js +1 -1
- package/dist/esm/node/runtime/index.js +1 -1
- package/dist/esm/node/runtime/page-files/setup.js +1 -1
- package/dist/esm/node/runtime/renderPage/assertArguments.js +1 -1
- package/dist/esm/node/runtime/renderPage/createHttpResponse.d.ts +1 -0
- package/dist/esm/node/runtime/renderPage/createHttpResponse.js +9 -6
- package/dist/esm/node/runtime/renderPage/createPageContextServerSide.d.ts +12 -35
- package/dist/esm/node/runtime/renderPage/createPageContextServerSide.js +4 -4
- package/dist/esm/node/runtime/renderPage/execHookDataAndOnBeforeRender.js +2 -2
- package/dist/esm/node/runtime/renderPage/getCacheControl.d.ts +5 -0
- package/dist/esm/node/runtime/renderPage/{createHttpResponse/getCacheControl.js → getCacheControl.js} +8 -9
- package/dist/esm/node/runtime/renderPage/getHttpResponseBody.js +4 -4
- package/dist/esm/node/runtime/renderPage/getPageAssets/retrieveAssetsProd.js +1 -1
- package/dist/esm/node/runtime/renderPage/getPageAssets.js +16 -13
- package/dist/esm/node/runtime/renderPage/loadPageConfigsLazyServerSide.d.ts +8 -4
- package/dist/esm/node/runtime/renderPage/loadPageConfigsLazyServerSide.js +36 -17
- package/dist/esm/node/runtime/renderPage/preparePageContextForPublicUsageServer.js +1 -1
- package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.d.ts +24 -68
- package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.js +1 -0
- package/dist/esm/node/runtime/renderPage.d.ts +13 -36
- package/dist/esm/node/runtime/renderPage.js +4 -6
- package/dist/esm/node/runtime/utils.d.ts +1 -0
- package/dist/esm/node/runtime/utils.js +1 -0
- package/dist/esm/node/vite/index.js +3 -1
- package/dist/esm/node/vite/onLoad.js +1 -1
- package/dist/esm/node/vite/plugins/pluginBuild/handleAssetsManifest.d.ts +1 -1
- package/dist/esm/node/vite/plugins/pluginBuild/handleAssetsManifest.js +3 -3
- package/dist/esm/node/vite/plugins/pluginBuild/pluginBuildConfig.d.ts +1 -1
- package/dist/esm/node/vite/plugins/pluginBuild/pluginBuildConfig.js +3 -2
- package/dist/esm/node/vite/plugins/pluginBuild/pluginBuildEntry.js +1 -1
- package/dist/esm/node/vite/plugins/pluginBuild/pluginDistFileNames.js +16 -7
- package/dist/esm/node/vite/plugins/pluginBuild/pluginDistPackageJsonFile.js +0 -1
- package/dist/esm/node/vite/plugins/pluginCommon/assertResolveAlias.js +1 -1
- package/dist/esm/node/vite/plugins/pluginCommon.d.ts +3 -0
- package/dist/esm/node/vite/plugins/pluginCommon.js +9 -4
- package/dist/esm/node/vite/plugins/pluginDev.js +1 -1
- package/dist/esm/node/vite/plugins/pluginEnvVars.js +1 -1
- package/dist/esm/node/vite/plugins/pluginFileEnv.js +1 -1
- package/dist/esm/node/vite/plugins/pluginVirtualFiles.js +1 -1
- package/dist/esm/node/vite/plugins/pluginViteRPC.d.ts +25 -0
- package/dist/esm/node/vite/plugins/pluginViteRPC.js +40 -0
- package/dist/esm/node/vite/shared/addSsrMiddleware.js +1 -1
- package/dist/esm/node/vite/shared/applyRegExWithMagicString.js +1 -0
- package/dist/esm/node/vite/shared/loggerNotProd.js +10 -0
- package/dist/esm/node/vite/shared/resolveVikeConfigInternal/configDefinitionsBuiltIn.js +5 -1
- package/dist/esm/node/vite/shared/resolveVikeConfigInternal/crawlPlusFiles.js +1 -3
- package/dist/esm/node/vite/shared/resolveVikeConfigInternal/filesystemRouting.js +4 -6
- package/dist/esm/node/vite/shared/resolveVikeConfigInternal/transpileAndExecuteFile.js +1 -1
- package/dist/esm/node/vite/shared/resolveVikeConfigInternal.js +6 -6
- package/dist/esm/shared/RenderErrorPage.js +1 -1
- package/dist/esm/shared/abort.js +1 -1
- package/dist/esm/shared/createGlobalContextShared.d.ts +3 -3
- package/dist/esm/shared/createGlobalContextShared.js +28 -7
- package/dist/esm/shared/createPageContextShared.d.ts +2 -3
- package/dist/esm/shared/createPageContextShared.js +1 -2
- package/dist/esm/shared/determinePageIdOld.js +1 -1
- package/dist/esm/shared/error-page.js +3 -3
- package/dist/esm/shared/getPageContextUrlComputed.js +4 -4
- package/dist/esm/shared/getPageFiles/analyzeClientSide.js +1 -1
- package/dist/esm/shared/getPageFiles/analyzePageClientSide/analyzeExports.js +1 -1
- package/dist/esm/shared/getPageFiles/analyzePageClientSide/determineClientEntry.js +1 -1
- package/dist/esm/shared/getPageFiles/analyzePageClientSide.js +2 -2
- package/dist/esm/shared/getPageFiles/assert_exports_old_design.js +1 -1
- package/dist/esm/shared/getPageFiles/fileTypes.js +1 -1
- package/dist/esm/shared/getPageFiles/getAllPageIdFiles.js +1 -1
- package/dist/esm/shared/getPageFiles/getPageFileObject.js +1 -1
- package/dist/esm/shared/getPageFiles/parseVirtualFileExports.js +1 -1
- package/dist/esm/shared/getProxyForPublicUsage.js +1 -1
- package/dist/esm/shared/hooks/getHook.js +1 -1
- package/dist/esm/shared/page-configs/getConfigDefinedAt.js +4 -3
- package/dist/esm/shared/page-configs/resolveVikeConfigPublic.js +12 -12
- package/dist/esm/shared/page-configs/serialize/serializeConfigValues.js +1 -1
- package/dist/esm/shared/preparePageContextForPublicUsage.js +5 -5
- package/dist/esm/shared/route/abort.js +1 -1
- package/dist/esm/shared/route/deduceRouteStringFromFilesystemPath.js +1 -1
- package/dist/esm/shared/route/execHookGuard.js +1 -1
- package/dist/esm/shared/route/execHookOnBeforeRoute.js +1 -1
- package/dist/esm/shared/route/index.js +1 -1
- package/dist/esm/shared/route/loadPageRoutes.d.ts +5 -0
- package/dist/esm/shared/route/loadPageRoutes.js +10 -4
- package/dist/esm/shared/route/resolveRouteFunction.js +3 -3
- package/dist/esm/shared/route/resolveRouteString.js +1 -1
- package/dist/esm/shared/route/routing.js +1 -1
- package/dist/esm/types/Config.d.ts +9 -1
- package/dist/esm/types/PageContext.d.ts +8 -2
- package/dist/esm/utils/PROJECT_VERSION.d.ts +1 -1
- package/dist/esm/utils/PROJECT_VERSION.js +1 -1
- package/dist/esm/utils/assertSetup.js +11 -8
- package/dist/esm/utils/debug.d.ts +1 -1
- package/dist/esm/utils/debug.js +1 -0
- package/dist/esm/utils/debugGlob.js +1 -1
- package/dist/esm/utils/getViteRPC.d.ts +6 -0
- package/dist/esm/utils/getViteRPC.js +77 -0
- package/dist/esm/utils/parseNpmPackage.js +1 -1
- package/package.json +12 -6
- package/dist/esm/node/runtime/renderPage/createHttpResponse/getCacheControl.d.ts +0 -5
|
@@ -44,6 +44,7 @@ import type { Vike, VikePackages } from './VikeNamespace.js';
|
|
|
44
44
|
import type { HooksTimeoutProvidedByUser } from '../shared/hooks/getHook.js';
|
|
45
45
|
import type { GlobalContext, PageContextClient, PageContextServer } from './PageContext.js';
|
|
46
46
|
import type { InlineConfig } from 'vite';
|
|
47
|
+
import type { PassToClient } from '../node/runtime/html/serializeContext.js';
|
|
47
48
|
type HookNameOld = HookName | HookNameOldDesign;
|
|
48
49
|
type HookName = HookNamePage | HookNameGlobal;
|
|
49
50
|
type HookNamePage = 'onHydrationEnd' | 'onBeforePrerenderStart' | 'onBeforeRender' | 'onPageTransitionStart' | 'onPageTransitionEnd' | 'onRenderHtml' | 'onRenderClient' | 'guard' | 'data' | 'onData' | 'route';
|
|
@@ -362,7 +363,7 @@ type ConfigBuiltIn = {
|
|
|
362
363
|
*
|
|
363
364
|
* https://vike.dev/passToClient
|
|
364
365
|
*/
|
|
365
|
-
passToClient?:
|
|
366
|
+
passToClient?: PassToClient | ImportString;
|
|
366
367
|
/** Hook called when page is rendered on the client-side.
|
|
367
368
|
*
|
|
368
369
|
* https://vike.dev/onRenderClient
|
|
@@ -508,6 +509,12 @@ type ConfigBuiltIn = {
|
|
|
508
509
|
* https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cache-Control
|
|
509
510
|
*/
|
|
510
511
|
cacheControl?: string;
|
|
512
|
+
/**
|
|
513
|
+
* Add HTTP headers to the HTTP response.
|
|
514
|
+
*
|
|
515
|
+
* https://vike.dev/headers#response
|
|
516
|
+
*/
|
|
517
|
+
headersResponse?: HeadersInit;
|
|
511
518
|
/**
|
|
512
519
|
* Make development/preview server available over LAN and public addresses.
|
|
513
520
|
*
|
|
@@ -561,6 +568,7 @@ type ConfigBuiltInResolved = {
|
|
|
561
568
|
redirects?: Record<string, string>[];
|
|
562
569
|
prerender?: Exclude<Config['prerender'], ImportString | undefined>[];
|
|
563
570
|
middleware?: Function[];
|
|
571
|
+
headersResponse?: HeadersInit[];
|
|
564
572
|
};
|
|
565
573
|
type ConfigMeta = Record<string, ConfigDefinition>;
|
|
566
574
|
type ImportString = `import:${string}`;
|
|
@@ -81,7 +81,7 @@ type PageContextBuiltInCommon<Data> = {
|
|
|
81
81
|
*/
|
|
82
82
|
urlOriginal: string;
|
|
83
83
|
/**
|
|
84
|
-
* The HTTP
|
|
84
|
+
* The HTTP request headers.
|
|
85
85
|
*
|
|
86
86
|
* As a string object normalized by Vike.
|
|
87
87
|
*
|
|
@@ -90,7 +90,7 @@ type PageContextBuiltInCommon<Data> = {
|
|
|
90
90
|
*/
|
|
91
91
|
headers: Record<string, string> | null;
|
|
92
92
|
/**
|
|
93
|
-
* The HTTP
|
|
93
|
+
* The HTTP request headers.
|
|
94
94
|
*
|
|
95
95
|
* The original object provided by the server.
|
|
96
96
|
*
|
|
@@ -98,6 +98,12 @@ type PageContextBuiltInCommon<Data> = {
|
|
|
98
98
|
* https://vike.dev/pageContext#headersOriginal
|
|
99
99
|
*/
|
|
100
100
|
headersOriginal?: unknown;
|
|
101
|
+
/**
|
|
102
|
+
* The HTTP response headers.
|
|
103
|
+
*
|
|
104
|
+
* https://vike.dev/headers#response
|
|
105
|
+
*/
|
|
106
|
+
headersResponse: Headers;
|
|
101
107
|
/** If an error occurs, whether the error is a `404 Page Not Found`.
|
|
102
108
|
*
|
|
103
109
|
* https://vike.dev/error-page
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const PROJECT_VERSION: "0.4.
|
|
1
|
+
export declare const PROJECT_VERSION: "0.4.236-commit-64431e7";
|
|
@@ -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.236-commit-64431e7';
|
|
@@ -24,22 +24,25 @@ function assertIsNotProductionRuntime() {
|
|
|
24
24
|
setup.shouldNotBeProduction = true;
|
|
25
25
|
}
|
|
26
26
|
function onSetupRuntime() {
|
|
27
|
+
// TODO/now
|
|
28
|
+
if (true)
|
|
29
|
+
return;
|
|
27
30
|
if (debug.isActivated)
|
|
28
31
|
debug('assertSetup()', new Error().stack);
|
|
29
32
|
if (isTest())
|
|
30
33
|
return;
|
|
31
34
|
assertNodeEnvIsNotUndefinedString();
|
|
32
35
|
if (!setup.viteDevServer && setup.isViteDev === undefined) {
|
|
33
|
-
//
|
|
34
|
-
assertWarning(!isNodeEnvDev(), `The ${getEnvDescription()}, which is contradictory because the environment seems to be a production environment (Vite isn't loaded), see https://vike.dev/NODE_ENV`, { onlyOnce: true });
|
|
35
|
-
assertUsage(!setup.vikeVitePlugin, `
|
|
36
|
+
// TO-DO/eventually: make it assertUsage() again once https://github.com/vikejs/vike/issues/1528 is implemented.
|
|
37
|
+
assertWarning(!isNodeEnvDev(), `The ${getEnvDescription()}, which is contradictory because the environment seems to be a production environment (Vite isn't loaded), see ${pc.underline('https://vike.dev/NODE_ENV')} and ${pc.underline('https://vike.dev/warning/setup')}`, { onlyOnce: true });
|
|
38
|
+
assertUsage(!setup.vikeVitePlugin, `Vike's Vite plugin (the ${pc.cyan('vike/plugin')} module) shouldn't be loaded in production, see ${pc.underline('https://vike.dev/warning/setup')}`);
|
|
36
39
|
// This assert() one of the main goal of this file: it ensures assertIsNotProductionRuntime()
|
|
37
40
|
assert(!setup.shouldNotBeProduction);
|
|
38
41
|
}
|
|
39
42
|
else {
|
|
40
43
|
if (!setup.isPreview && !setup.vitePreviewServer && !setup.isPrerendering) {
|
|
41
|
-
//
|
|
42
|
-
assertWarning(isNodeEnvDev(), `The ${getEnvDescription()}
|
|
44
|
+
// TO-DO/eventually: make it assertUsage() again once https://github.com/vikejs/vike/issues/1528 is implemented.
|
|
45
|
+
assertWarning(isNodeEnvDev(), `The ${getEnvDescription()} while Vite is loaded, but Vite shouldn't be loaded in production, see ${pc.underline('https://vike.dev/warning/setup')}`, { onlyOnce: true });
|
|
43
46
|
}
|
|
44
47
|
assert(setup.vikeVitePlugin);
|
|
45
48
|
assert(setup.shouldNotBeProduction);
|
|
@@ -108,8 +111,8 @@ function markSetup_isPreview() {
|
|
|
108
111
|
function assertUsageNodeEnvIsNotDev(operation) {
|
|
109
112
|
if (!isNodeEnvDev())
|
|
110
113
|
return;
|
|
111
|
-
//
|
|
112
|
-
assertWarning(false, `The ${getEnvDescription()}
|
|
114
|
+
// TO-DO/eventually: make it assertUsage() again once https://github.com/vikejs/vike/issues/1528 is implemented.
|
|
115
|
+
assertWarning(false, `The ${getEnvDescription()} upon ${operation} which shouldn't be the case, see ${pc.underline('https://vike.dev/NODE_ENV')}`, { onlyOnce: true });
|
|
113
116
|
}
|
|
114
117
|
function getEnvDescription() {
|
|
115
118
|
const envType = `${(isNodeEnvDev() ? 'development' : 'production')} environment`;
|
|
@@ -120,7 +123,7 @@ function getEnvDescription() {
|
|
|
120
123
|
// https://github.com/cloudflare/workers-sdk/issues/7886
|
|
121
124
|
function assertNodeEnvIsNotUndefinedString() {
|
|
122
125
|
const nodeEnv = getNodeEnv();
|
|
123
|
-
assertWarning(nodeEnv !== 'undefined', `${pc.cyan('process.env.NODE_ENV==="undefined"')} which is unexpected: ${pc.cyan('process.env.NODE_ENV')} is allowed to be the *value* ${pc.cyan('undefined')} (i.e. ${pc.cyan('process.env.NODE_ENV===undefined')}) but it shouldn't be the *string* ${pc.cyan('"undefined"')} ${pc.underline('https://vike.dev/NODE_ENV')}`, { onlyOnce: true });
|
|
126
|
+
assertWarning(nodeEnv !== 'undefined', `${pc.cyan('process.env.NODE_ENV==="undefined"')} which is unexpected: ${pc.cyan('process.env.NODE_ENV')} is allowed to be the *value* ${pc.cyan('undefined')} (i.e. ${pc.cyan('process.env.NODE_ENV===undefined')}) but it shouldn't be the *string* ${pc.cyan('"undefined"')} — see ${pc.underline('https://vike.dev/NODE_ENV')}`, { onlyOnce: true });
|
|
124
127
|
}
|
|
125
128
|
function isNodeEnvDev() {
|
|
126
129
|
const nodeEnv = getNodeEnv();
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export { createDebugger };
|
|
2
2
|
export { isDebugActivated };
|
|
3
3
|
export type { Debug };
|
|
4
|
-
declare const flags: readonly ["vike:crawl", "vike:error", "vike:esbuild-resolve", "vike:pluginExtractAssets", "vike:pluginExtractExportNames", "vike:glob", "vike:globalContext", "vike:log", "vike:optimizeDeps", "vike:outDir", "vike:pageFiles", "vike:pointer-imports", "vike:resolve", "vike:routing", "vike:setup", "vike:stream", "vike:virtualFiles"];
|
|
4
|
+
declare const flags: readonly ["vike:crawl", "vike:error", "vike:esbuild-resolve", "vike:pluginExtractAssets", "vike:pluginExtractExportNames", "vike:glob", "vike:globalContext", "vike:log", "vike:optimizeDeps", "vike:outDir", "vike:pageFiles", "vike:pointer-imports", "vike:resolve", "vike:routing", "vike:setup", "vike:stream", "vike:virtualFiles", "vike:vite-rpc"];
|
|
5
5
|
type Flag = (typeof flags)[number];
|
|
6
6
|
type Debug = ReturnType<typeof createDebugger>;
|
|
7
7
|
type Options = {
|
package/dist/esm/utils/debug.js
CHANGED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { getViteRPC };
|
|
2
|
+
export { createViteRPC };
|
|
3
|
+
import type { ViteDevServer } from 'vite';
|
|
4
|
+
declare function getViteRPC<RpcFunctions>(): RpcFunctions;
|
|
5
|
+
type AsyncFunction = (...args: any[]) => Promise<unknown>;
|
|
6
|
+
declare function createViteRPC(viteDevServer: ViteDevServer, getRpcFunctions: (viteDevServer: ViteDevServer) => Record<string, AsyncFunction>): void;
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
export { getViteRPC }; // consumer (aka RPC client)
|
|
2
|
+
export { createViteRPC }; // provider (aka RPC server)
|
|
3
|
+
import { assert } from './assert.js';
|
|
4
|
+
import { genPromise } from './genPromise.js';
|
|
5
|
+
import { getRandomId } from './getRandomId.js';
|
|
6
|
+
import { getGlobalObject } from './getGlobalObject.js';
|
|
7
|
+
import { createDebugger } from './debug.js';
|
|
8
|
+
import { assertIsNotBrowser } from './assertIsNotBrowser.js';
|
|
9
|
+
assertIsNotBrowser();
|
|
10
|
+
const globalObject = getGlobalObject('utils/getViteRPC.ts', {
|
|
11
|
+
rpc: null,
|
|
12
|
+
});
|
|
13
|
+
const debug = createDebugger('vike:vite-rpc');
|
|
14
|
+
function getViteRPC() {
|
|
15
|
+
globalObject.rpc ?? (globalObject.rpc = createRpcClient());
|
|
16
|
+
return globalObject.rpc;
|
|
17
|
+
}
|
|
18
|
+
function createRpcClient() {
|
|
19
|
+
// @ts-ignore
|
|
20
|
+
const hot = import.meta.hot;
|
|
21
|
+
assert(hot);
|
|
22
|
+
const callbacks = [];
|
|
23
|
+
hot.on(`vike:rpc:response`, (dataResponse) => {
|
|
24
|
+
if (debug.isActivated)
|
|
25
|
+
debug('Response received', dataResponse);
|
|
26
|
+
const { callId, functionReturn } = dataResponse;
|
|
27
|
+
callbacks.forEach((c) => {
|
|
28
|
+
if (callId !== c.callId)
|
|
29
|
+
return;
|
|
30
|
+
c.cb(functionReturn);
|
|
31
|
+
callbacks.splice(callbacks.indexOf(c), 1);
|
|
32
|
+
});
|
|
33
|
+
});
|
|
34
|
+
const rpc = new Proxy({}, {
|
|
35
|
+
get(_, functionName) {
|
|
36
|
+
return async (...functionArgs) => {
|
|
37
|
+
// @ts-ignore
|
|
38
|
+
const hot = import.meta.hot;
|
|
39
|
+
assert(hot);
|
|
40
|
+
const callId = getRandomId();
|
|
41
|
+
const { promise, resolve } = genPromise({ timeout: 3 * 1000 });
|
|
42
|
+
callbacks.push({
|
|
43
|
+
callId,
|
|
44
|
+
cb: (functionReturn) => {
|
|
45
|
+
resolve(functionReturn);
|
|
46
|
+
},
|
|
47
|
+
});
|
|
48
|
+
const dataRequest = { callId, functionName, functionArgs };
|
|
49
|
+
if (debug.isActivated)
|
|
50
|
+
debug('Request sent', dataRequest);
|
|
51
|
+
// Vite's type is wrong; it import.meta.hot.send() does seem to return a promise
|
|
52
|
+
await hot.send('vike:rpc:request', dataRequest);
|
|
53
|
+
const functionReturn = await promise;
|
|
54
|
+
return functionReturn;
|
|
55
|
+
};
|
|
56
|
+
},
|
|
57
|
+
});
|
|
58
|
+
return rpc;
|
|
59
|
+
}
|
|
60
|
+
function createViteRPC(viteDevServer, getRpcFunctions) {
|
|
61
|
+
const rpcFunctions = getRpcFunctions(viteDevServer);
|
|
62
|
+
const { environments } = viteDevServer;
|
|
63
|
+
for (const envName in environments) {
|
|
64
|
+
debug('Listening to environment', envName);
|
|
65
|
+
const env = environments[envName];
|
|
66
|
+
env.hot.on('vike:rpc:request', async (dataRequest) => {
|
|
67
|
+
if (debug.isActivated)
|
|
68
|
+
debug('Request received', dataRequest);
|
|
69
|
+
const { callId, functionName, functionArgs } = dataRequest;
|
|
70
|
+
const functionReturn = await rpcFunctions[functionName](...functionArgs);
|
|
71
|
+
const dataResponse = { callId, functionReturn };
|
|
72
|
+
if (debug.isActivated)
|
|
73
|
+
debug('Response sent', dataResponse);
|
|
74
|
+
env.hot.send('vike:rpc:response', dataResponse);
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
}
|
|
@@ -52,7 +52,7 @@ function isPathAliasRecommended(alias) {
|
|
|
52
52
|
// - In principle, we could allow path aliases that don't start with special character as long as they can be distinguished from npm package names.
|
|
53
53
|
// - But we still enforce path aliases to start with a special character because it's a much simpler rule to follow.
|
|
54
54
|
if (alias.startsWith('@/'))
|
|
55
|
-
return true; // Needed by contra.com
|
|
55
|
+
return true; // Needed by contra.com and https://github.com/vikejs/vike/issues/1567#issuecomment-3076374243
|
|
56
56
|
const firstLetter = alias[0];
|
|
57
57
|
assert(firstLetter);
|
|
58
58
|
if (firstLetter === '@' || /[0-9a-z]/.test(firstLetter.toLowerCase()))
|
package/package.json
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vike",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.236-commit-64431e7",
|
|
4
4
|
"repository": "https://github.com/vikejs/vike",
|
|
5
5
|
"exports": {
|
|
6
6
|
"./server": {
|
|
7
7
|
"worker": "./dist/esm/node/runtime/index.js",
|
|
8
|
+
"workerd": "./dist/esm/node/runtime/index.js",
|
|
8
9
|
"require": "./dist/cjs/node/runtime/index.js",
|
|
9
10
|
"node": "./dist/esm/node/runtime/index.js",
|
|
10
11
|
"browser": "./dist/esm/client/node.js",
|
|
@@ -19,6 +20,7 @@
|
|
|
19
20
|
},
|
|
20
21
|
"./client/router": {
|
|
21
22
|
"worker": "./dist/esm/node/client/router.js",
|
|
23
|
+
"workerd": "./dist/esm/node/client/router.js",
|
|
22
24
|
"require": "./dist/cjs/node/client/router.js",
|
|
23
25
|
"node": "./dist/esm/node/client/router.js",
|
|
24
26
|
"browser": "./dist/esm/client/runtime-client-routing/index.js",
|
|
@@ -27,6 +29,7 @@
|
|
|
27
29
|
},
|
|
28
30
|
"./routing": {
|
|
29
31
|
"worker": "./dist/esm/shared/route/routing.js",
|
|
32
|
+
"workerd": "./dist/esm/shared/route/routing.js",
|
|
30
33
|
"require": "./dist/cjs/shared/route/routing.js",
|
|
31
34
|
"node": "./dist/esm/shared/route/routing.js",
|
|
32
35
|
"browser": "./dist/esm/shared/route/routing.js",
|
|
@@ -59,6 +62,7 @@
|
|
|
59
62
|
},
|
|
60
63
|
"./RenderErrorPage": {
|
|
61
64
|
"worker": "./dist/esm/shared/RenderErrorPage.js",
|
|
65
|
+
"workerd": "./dist/esm/shared/RenderErrorPage.js",
|
|
62
66
|
"require": "./dist/cjs/shared/RenderErrorPage.js",
|
|
63
67
|
"node": "./dist/esm/shared/RenderErrorPage.js",
|
|
64
68
|
"browser": "./dist/esm/shared/RenderErrorPage.js",
|
|
@@ -67,6 +71,7 @@
|
|
|
67
71
|
},
|
|
68
72
|
"./abort": {
|
|
69
73
|
"worker": "./dist/esm/shared/abort.js",
|
|
74
|
+
"workerd": "./dist/esm/shared/abort.js",
|
|
70
75
|
"require": "./dist/cjs/shared/abort.js",
|
|
71
76
|
"node": "./dist/esm/shared/abort.js",
|
|
72
77
|
"browser": "./dist/esm/shared/abort.js",
|
|
@@ -75,6 +80,7 @@
|
|
|
75
80
|
},
|
|
76
81
|
"./getPageContext": {
|
|
77
82
|
"worker": "./dist/esm/shared/getPageContext.js",
|
|
83
|
+
"workerd": "./dist/esm/shared/getPageContext.js",
|
|
78
84
|
"require": "./dist/cjs/shared/getPageContext.js",
|
|
79
85
|
"node": "./dist/esm/shared/getPageContext.js",
|
|
80
86
|
"browser": "./dist/esm/shared/getPageContext.js",
|
|
@@ -83,6 +89,7 @@
|
|
|
83
89
|
},
|
|
84
90
|
"./modifyUrl": {
|
|
85
91
|
"worker": "./dist/esm/shared/modifyUrl.js",
|
|
92
|
+
"workerd": "./dist/esm/shared/modifyUrl.js",
|
|
86
93
|
"require": "./dist/cjs/shared/modifyUrl.js",
|
|
87
94
|
"node": "./dist/esm/shared/modifyUrl.js",
|
|
88
95
|
"browser": "./dist/esm/shared/modifyUrl.js",
|
|
@@ -91,6 +98,7 @@
|
|
|
91
98
|
},
|
|
92
99
|
"./universal-middleware": {
|
|
93
100
|
"worker": "./dist/esm/node/runtime/universal-middleware.js",
|
|
101
|
+
"workerd": "./dist/esm/node/runtime/universal-middleware.js",
|
|
94
102
|
"require": "./dist/cjs/node/runtime/universal-middleware.js",
|
|
95
103
|
"node": "./dist/esm/node/runtime/universal-middleware.js",
|
|
96
104
|
"browser": "./dist/esm/client/node.js",
|
|
@@ -111,6 +119,7 @@
|
|
|
111
119
|
},
|
|
112
120
|
".": {
|
|
113
121
|
"worker": "./dist/esm/node/runtime/index.js",
|
|
122
|
+
"workerd": "./dist/esm/node/runtime/index.js",
|
|
114
123
|
"require": "./dist/cjs/node/runtime/index.js",
|
|
115
124
|
"node": "./dist/esm/node/runtime/index.js",
|
|
116
125
|
"browser": "./dist/esm/client/index.js",
|
|
@@ -120,7 +129,7 @@
|
|
|
120
129
|
},
|
|
121
130
|
"dependencies": {
|
|
122
131
|
"@brillout/import": "^0.2.6",
|
|
123
|
-
"@brillout/json-serializer": "^0.5.
|
|
132
|
+
"@brillout/json-serializer": "^0.5.16",
|
|
124
133
|
"@brillout/picocolors": "^1.0.26",
|
|
125
134
|
"@brillout/require-shim": "^0.1.2",
|
|
126
135
|
"@brillout/vite-plugin-server-entry": "^0.7.8",
|
|
@@ -245,16 +254,13 @@
|
|
|
245
254
|
"./universal-middleware.js"
|
|
246
255
|
],
|
|
247
256
|
"devDependencies": {
|
|
248
|
-
"@biomejs/biome": "^1.9.4",
|
|
249
257
|
"@brillout/release-me": "^0.4.2",
|
|
250
258
|
"@types/estree": "^1.0.5",
|
|
251
|
-
"@types/jest": "^29.5.11",
|
|
252
259
|
"@types/node": "^20.10.5",
|
|
253
260
|
"@types/picomatch": "^3.0.2",
|
|
254
|
-
"@types/resolve": "^1.20.6",
|
|
255
261
|
"@types/semver": "^7.5.8",
|
|
256
262
|
"@types/source-map-support": "^0.5.10",
|
|
257
|
-
"react-streaming": "^0.4.
|
|
263
|
+
"react-streaming": "^0.4.3",
|
|
258
264
|
"rimraf": "^5.0.5",
|
|
259
265
|
"typescript": "^5.8.3",
|
|
260
266
|
"vite": "^6.3.2"
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
export { getCacheControl };
|
|
2
|
-
import type { PageConfigRuntime } from '../../../../types/PageConfig.js';
|
|
3
|
-
import type { HttpResponse } from '../createHttpResponse.js';
|
|
4
|
-
type StatusCode = HttpResponse['statusCode'];
|
|
5
|
-
declare function getCacheControl(pageId: string | null, pageConfigs: PageConfigRuntime[], statusCode: StatusCode): string;
|