vike 0.4.229-commit-58f7ed0 → 0.4.229-commit-5da80bf
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/client/server-routing-runtime/utils.js +1 -0
- package/dist/cjs/client/shared/{preparePageContextForUserConsumptionClientSide.js → preparePageContextForPublicUsageClientShared.js} +15 -19
- package/dist/cjs/node/api/build.js +1 -5
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js +4 -0
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +12 -6
- package/dist/cjs/node/plugin/shared/loggerNotProd.js +2 -2
- package/dist/cjs/node/prerender/runPrerender.js +42 -38
- package/dist/cjs/node/prerender/utils.js +1 -1
- package/dist/cjs/node/runtime/globalContext.js +13 -27
- package/dist/cjs/node/runtime/html/serializeContext.js +1 -1
- package/dist/cjs/node/runtime/renderPage/createHttpResponse/getCacheControl.js +7 -5
- package/dist/cjs/node/runtime/renderPage/createHttpResponse.js +0 -1
- package/dist/cjs/node/runtime/renderPage/createPageContextServerSide.js +6 -9
- package/dist/cjs/node/runtime/renderPage/execHookServer.js +11 -0
- package/dist/cjs/node/runtime/renderPage/executeOnBeforeRenderAndDataHooks.js +14 -15
- package/dist/cjs/node/runtime/renderPage/executeOnRenderHtmlHook.js +8 -12
- package/dist/cjs/node/runtime/renderPage/{loadUserFilesServerSide.js → loadPageConfigsLazyServerSide.js} +4 -4
- package/dist/cjs/node/runtime/renderPage/preparePageContextForPublicUsageServer.js +10 -0
- package/dist/cjs/node/runtime/renderPage/renderPageAlreadyRouted.js +5 -5
- package/dist/cjs/node/runtime/renderPage.js +9 -7
- package/dist/cjs/node/runtime/utils.js +1 -1
- package/dist/cjs/shared/NOT_SERIALIZABLE.js +0 -1
- package/dist/cjs/shared/addIs404ToPageProps.js +0 -7
- package/dist/cjs/shared/createGlobalContextShared.js +37 -8
- package/dist/cjs/shared/createPageContextShared.js +16 -11
- package/dist/cjs/shared/getPageContext.js +3 -3
- package/dist/cjs/shared/getPageContextUrlComputed.js +2 -36
- package/dist/cjs/shared/getProxyForPublicUsage.js +106 -0
- package/dist/cjs/shared/hooks/execHook.js +164 -0
- package/dist/cjs/shared/hooks/getHook.js +23 -4
- package/dist/cjs/shared/page-configs/{getPageConfigUserFriendly.js → getUserFriendlyConfigs.js} +54 -47
- package/dist/cjs/shared/prepareGlobalContextForPublicUsage.js +10 -0
- package/dist/cjs/shared/preparePageContextForPublicUsage.js +75 -0
- package/dist/cjs/shared/route/abort.js +2 -2
- package/dist/cjs/shared/route/executeGuardHook.js +4 -9
- package/dist/cjs/shared/route/executeOnBeforeRouteHook.js +4 -3
- package/dist/cjs/shared/route/index.js +2 -4
- package/dist/cjs/shared/route/loadPageRoutes.js +6 -0
- package/dist/cjs/shared/route/resolveRouteFunction.js +14 -10
- package/dist/cjs/shared/utils.js +2 -0
- package/dist/cjs/utils/PROJECT_VERSION.js +1 -1
- package/dist/cjs/utils/objectAssign.js +3 -3
- package/dist/cjs/utils/objectDefineProperty.js +1 -1
- package/dist/esm/client/client-routing-runtime/{createPageContext.d.ts → createPageContextClientSide.d.ts} +21 -13
- package/dist/esm/client/client-routing-runtime/{createPageContext.js → createPageContextClientSide.js} +9 -11
- package/dist/esm/client/client-routing-runtime/getPageContextFromHooks.d.ts +400 -15
- package/dist/esm/client/client-routing-runtime/getPageContextFromHooks.js +46 -44
- package/dist/esm/client/client-routing-runtime/globalContext.d.ts +11 -1
- package/dist/esm/client/client-routing-runtime/prefetch.d.ts +3 -8
- package/dist/esm/client/client-routing-runtime/prefetch.js +3 -3
- package/dist/esm/client/client-routing-runtime/preparePageContextForPublicUsageClient.d.ts +11 -0
- package/dist/esm/client/client-routing-runtime/preparePageContextForPublicUsageClient.js +5 -0
- package/dist/esm/client/client-routing-runtime/renderPageClientSide.d.ts +135 -0
- package/dist/esm/client/client-routing-runtime/renderPageClientSide.js +79 -78
- package/dist/esm/client/client-routing-runtime/utils.d.ts +1 -0
- package/dist/esm/client/client-routing-runtime/utils.js +1 -0
- package/dist/esm/client/server-routing-runtime/createPageContextClientSide.d.ts +19 -13
- package/dist/esm/client/server-routing-runtime/createPageContextClientSide.js +12 -15
- package/dist/esm/client/server-routing-runtime/entry.js +4 -4
- package/dist/esm/client/server-routing-runtime/globalContext.d.ts +11 -1
- package/dist/esm/client/server-routing-runtime/preparePageContextForPublicUsageClient.d.ts +9 -0
- package/dist/esm/client/server-routing-runtime/preparePageContextForPublicUsageClient.js +5 -0
- package/dist/esm/client/server-routing-runtime/utils.d.ts +1 -0
- package/dist/esm/client/server-routing-runtime/utils.js +1 -0
- package/dist/esm/client/shared/createGetGlobalContextClient.d.ts +11 -1
- package/dist/esm/client/shared/executeOnRenderClientHook.d.ts +3 -3
- package/dist/esm/client/shared/executeOnRenderClientHook.js +4 -13
- package/dist/esm/client/shared/{loadUserFilesClientSide.d.ts → loadPageConfigsLazyClientSide.d.ts} +2 -2
- package/dist/esm/client/shared/{loadUserFilesClientSide.js → loadPageConfigsLazyClientSide.js} +4 -4
- package/dist/esm/client/shared/preparePageContextForPublicUsageClientShared.d.ts +11 -0
- package/dist/esm/client/shared/preparePageContextForPublicUsageClientShared.js +40 -0
- package/dist/esm/node/api/build.js +1 -2
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js +4 -0
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.d.ts +1 -1
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +12 -6
- package/dist/esm/node/plugin/shared/loggerNotProd.js +1 -1
- package/dist/esm/node/prerender/runPrerender.d.ts +37 -73
- package/dist/esm/node/prerender/runPrerender.js +42 -38
- package/dist/esm/node/prerender/utils.d.ts +1 -1
- package/dist/esm/node/prerender/utils.js +1 -1
- package/dist/esm/node/runtime/globalContext.d.ts +46 -251
- package/dist/esm/node/runtime/globalContext.js +14 -28
- package/dist/esm/node/runtime/html/serializeContext.d.ts +1 -1
- package/dist/esm/node/runtime/html/serializeContext.js +1 -1
- package/dist/esm/node/runtime/renderPage/createHttpResponse/getCacheControl.d.ts +1 -1
- package/dist/esm/node/runtime/renderPage/createHttpResponse/getCacheControl.js +7 -5
- package/dist/esm/node/runtime/renderPage/createHttpResponse.js +0 -1
- package/dist/esm/node/runtime/renderPage/createPageContextServerSide.d.ts +26 -41
- package/dist/esm/node/runtime/renderPage/createPageContextServerSide.js +7 -10
- package/dist/esm/node/runtime/renderPage/execHookServer.d.ts +12 -0
- package/dist/esm/node/runtime/renderPage/execHookServer.js +9 -0
- package/dist/esm/node/runtime/renderPage/executeOnBeforeRenderAndDataHooks.d.ts +2 -3
- package/dist/esm/node/runtime/renderPage/executeOnBeforeRenderAndDataHooks.js +14 -15
- package/dist/esm/node/runtime/renderPage/executeOnRenderHtmlHook.d.ts +4 -2
- package/dist/esm/node/runtime/renderPage/executeOnRenderHtmlHook.js +8 -12
- package/dist/esm/node/runtime/renderPage/{loadUserFilesServerSide.d.ts → loadPageConfigsLazyServerSide.d.ts} +6 -6
- package/dist/esm/node/runtime/renderPage/{loadUserFilesServerSide.js → loadPageConfigsLazyServerSide.js} +4 -4
- package/dist/esm/node/runtime/renderPage/preparePageContextForPublicUsageServer.d.ts +20 -0
- package/dist/esm/node/runtime/renderPage/preparePageContextForPublicUsageServer.js +8 -0
- package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.d.ts +38 -74
- package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.js +5 -5
- package/dist/esm/node/runtime/renderPage.d.ts +21 -39
- package/dist/esm/node/runtime/renderPage.js +9 -7
- package/dist/esm/node/runtime/utils.d.ts +1 -1
- package/dist/esm/node/runtime/utils.js +1 -1
- package/dist/esm/shared/NOT_SERIALIZABLE.js +0 -1
- package/dist/esm/shared/addIs404ToPageProps.d.ts +1 -6
- package/dist/esm/shared/addIs404ToPageProps.js +1 -8
- package/dist/esm/shared/createGlobalContextShared.d.ts +28 -6
- package/dist/esm/shared/createGlobalContextShared.js +37 -8
- package/dist/esm/shared/createPageContextShared.d.ts +7 -6
- package/dist/esm/shared/createPageContextShared.js +17 -12
- package/dist/esm/shared/getPageContext.d.ts +1 -1
- package/dist/esm/shared/getPageContext.js +1 -1
- package/dist/esm/shared/getPageContextUrlComputed.d.ts +2 -5
- package/dist/esm/shared/getPageContextUrlComputed.js +3 -37
- package/dist/esm/shared/getPageFiles.d.ts +1 -1
- package/dist/esm/shared/getProxyForPublicUsage.d.ts +12 -0
- package/dist/esm/shared/getProxyForPublicUsage.js +104 -0
- package/dist/esm/shared/hooks/execHook.d.ts +63 -0
- package/dist/esm/shared/hooks/execHook.js +162 -0
- package/dist/esm/shared/hooks/getHook.d.ts +10 -11
- package/dist/esm/shared/hooks/getHook.js +23 -4
- package/dist/esm/shared/page-configs/Config.d.ts +11 -4
- package/dist/esm/shared/page-configs/{getPageConfigUserFriendly.d.ts → getUserFriendlyConfigs.d.ts} +8 -6
- package/dist/esm/shared/page-configs/{getPageConfigUserFriendly.js → getUserFriendlyConfigs.js} +55 -48
- package/dist/esm/shared/prepareGlobalContextForPublicUsage.d.ts +7 -0
- package/dist/esm/shared/prepareGlobalContextForPublicUsage.js +8 -0
- package/dist/esm/shared/preparePageContextForPublicUsage.d.ts +12 -0
- package/dist/esm/shared/preparePageContextForPublicUsage.js +73 -0
- package/dist/esm/shared/route/abort.js +1 -1
- package/dist/esm/shared/route/executeGuardHook.d.ts +4 -3
- package/dist/esm/shared/route/executeGuardHook.js +4 -9
- package/dist/esm/shared/route/executeOnBeforeRouteHook.js +4 -3
- package/dist/esm/shared/route/index.js +2 -4
- package/dist/esm/shared/route/loadPageRoutes.d.ts +2 -1
- package/dist/esm/shared/route/loadPageRoutes.js +7 -1
- package/dist/esm/shared/route/resolveRouteFunction.d.ts +2 -2
- package/dist/esm/shared/route/resolveRouteFunction.js +14 -10
- package/dist/esm/shared/types.d.ts +14 -4
- package/dist/esm/shared/utils.d.ts +2 -0
- package/dist/esm/shared/utils.js +2 -0
- package/dist/esm/types/index.d.ts +1 -1
- package/dist/esm/utils/PROJECT_VERSION.d.ts +1 -1
- package/dist/esm/utils/PROJECT_VERSION.js +1 -1
- package/dist/esm/utils/objectAssign.d.ts +1 -1
- package/dist/esm/utils/objectAssign.js +3 -3
- package/dist/esm/utils/objectDefineProperty.d.ts +0 -1
- package/dist/esm/utils/objectDefineProperty.js +1 -1
- package/package.json +2 -2
- package/dist/cjs/client/shared/getPageContextProxyForUser.js +0 -16
- package/dist/cjs/node/runtime/renderPage/preparePageContextForUserConsumptionServerSide.js +0 -16
- package/dist/cjs/shared/getPageConfigsRuntime.js +0 -23
- package/dist/cjs/shared/hooks/executeHook.js +0 -87
- package/dist/cjs/shared/hooks/executeHookGeneric.js +0 -18
- package/dist/cjs/shared/preparePageContextForUserConsumption.js +0 -34
- package/dist/cjs/utils/getPublicProxy.js +0 -27
- package/dist/esm/client/shared/getPageContextProxyForUser.d.ts +0 -2
- package/dist/esm/client/shared/getPageContextProxyForUser.js +0 -14
- package/dist/esm/client/shared/preparePageContextForUserConsumptionClientSide.d.ts +0 -12
- package/dist/esm/client/shared/preparePageContextForUserConsumptionClientSide.js +0 -44
- package/dist/esm/node/runtime/renderPage/preparePageContextForUserConsumptionServerSide.d.ts +0 -24
- package/dist/esm/node/runtime/renderPage/preparePageContextForUserConsumptionServerSide.js +0 -14
- package/dist/esm/shared/getPageConfigsRuntime.d.ts +0 -14
- package/dist/esm/shared/getPageConfigsRuntime.js +0 -21
- package/dist/esm/shared/hooks/executeHook.d.ts +0 -21
- package/dist/esm/shared/hooks/executeHook.js +0 -85
- package/dist/esm/shared/hooks/executeHookGeneric.d.ts +0 -8
- package/dist/esm/shared/hooks/executeHookGeneric.js +0 -16
- package/dist/esm/shared/preparePageContextForUserConsumption.d.ts +0 -5
- package/dist/esm/shared/preparePageContextForUserConsumption.js +0 -32
- package/dist/esm/utils/getPublicProxy.d.ts +0 -2
- package/dist/esm/utils/getPublicProxy.js +0 -25
|
@@ -20,20 +20,31 @@ export type { GlobalContextServerInternal as GlobalContextServerInternal };
|
|
|
20
20
|
export type { GlobalContextServer };
|
|
21
21
|
import type { ViteManifest } from '../shared/ViteManifest.js';
|
|
22
22
|
import type { ResolvedConfig, ViteDevServer } from 'vite';
|
|
23
|
+
import type { PageConfigUserFriendly } from '../../shared/page-configs/getUserFriendlyConfigs.js';
|
|
23
24
|
import type { ViteConfigRuntime } from '../plugin/shared/getViteConfigRuntime.js';
|
|
24
25
|
import type { GlobalContext } from '../../shared/types.js';
|
|
25
|
-
type GlobalContextServer =
|
|
26
|
+
type GlobalContextServer = Pick<GlobalContextServerInternal, 'assetsManifest' | 'config' | 'viteConfig' | 'viteConfigRuntime' | 'pages' | 'baseServer' | 'baseAssets' | 'isClientSide'> & Vike.GlobalContext & Vike.GlobalContextServer;
|
|
26
27
|
type GlobalContextServerInternal = Awaited<ReturnType<typeof setGlobalContext>>;
|
|
27
28
|
declare function getGlobalContextServerInternal(): Promise<{
|
|
28
29
|
globalContext: (Record<string, unknown> & {
|
|
29
30
|
isGlobalContext: true;
|
|
31
|
+
_isOriginalObject: true;
|
|
30
32
|
_virtualFileExports: unknown;
|
|
31
33
|
_pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
|
|
32
34
|
_pageConfigs: import("../../__internal/index.js").PageConfig[];
|
|
33
35
|
_pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
|
|
34
36
|
_allPageIds: string[];
|
|
37
|
+
_userFriendlyConfigsGlobal: PageConfigUserFriendly;
|
|
35
38
|
config: import("../../types/index.js").ConfigResolved;
|
|
36
|
-
pages:
|
|
39
|
+
pages: {
|
|
40
|
+
[k: string]: PageConfigUserFriendly & ({
|
|
41
|
+
route: import("../../shared/page-configs/Config.js").Route;
|
|
42
|
+
isErrorPage?: undefined;
|
|
43
|
+
} | {
|
|
44
|
+
route?: undefined;
|
|
45
|
+
isErrorPage: true;
|
|
46
|
+
});
|
|
47
|
+
};
|
|
37
48
|
} & {
|
|
38
49
|
_isProduction: false;
|
|
39
50
|
_isPrerendering: false;
|
|
@@ -55,23 +66,25 @@ declare function getGlobalContextServerInternal(): Promise<{
|
|
|
55
66
|
isClientSide: false;
|
|
56
67
|
_pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
|
|
57
68
|
_onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
|
|
58
|
-
isGlobalContext: true;
|
|
59
|
-
_virtualFileExports: unknown;
|
|
60
|
-
_pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
|
|
61
|
-
_pageConfigs: import("../../__internal/index.js").PageConfig[];
|
|
62
|
-
_pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
|
|
63
|
-
_allPageIds: string[];
|
|
64
|
-
config: import("../../types/index.js").ConfigResolved;
|
|
65
|
-
pages: import("../../shared/page-configs/getPageConfigUserFriendly.js").PageConfigsUserFriendly;
|
|
66
69
|
}) | (Record<string, unknown> & {
|
|
67
70
|
isGlobalContext: true;
|
|
71
|
+
_isOriginalObject: true;
|
|
68
72
|
_virtualFileExports: unknown;
|
|
69
73
|
_pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
|
|
70
74
|
_pageConfigs: import("../../__internal/index.js").PageConfig[];
|
|
71
75
|
_pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
|
|
72
76
|
_allPageIds: string[];
|
|
77
|
+
_userFriendlyConfigsGlobal: PageConfigUserFriendly;
|
|
73
78
|
config: import("../../types/index.js").ConfigResolved;
|
|
74
|
-
pages:
|
|
79
|
+
pages: {
|
|
80
|
+
[k: string]: PageConfigUserFriendly & ({
|
|
81
|
+
route: import("../../shared/page-configs/Config.js").Route;
|
|
82
|
+
isErrorPage?: undefined;
|
|
83
|
+
} | {
|
|
84
|
+
route?: undefined;
|
|
85
|
+
isErrorPage: true;
|
|
86
|
+
});
|
|
87
|
+
};
|
|
75
88
|
} & {
|
|
76
89
|
_isPrerendering: true;
|
|
77
90
|
viteConfig: ResolvedConfig;
|
|
@@ -94,23 +107,25 @@ declare function getGlobalContextServerInternal(): Promise<{
|
|
|
94
107
|
isClientSide: false;
|
|
95
108
|
_pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
|
|
96
109
|
_onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
|
|
97
|
-
isGlobalContext: true;
|
|
98
|
-
_virtualFileExports: unknown;
|
|
99
|
-
_pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
|
|
100
|
-
_pageConfigs: import("../../__internal/index.js").PageConfig[];
|
|
101
|
-
_pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
|
|
102
|
-
_allPageIds: string[];
|
|
103
|
-
config: import("../../types/index.js").ConfigResolved;
|
|
104
|
-
pages: import("../../shared/page-configs/getPageConfigUserFriendly.js").PageConfigsUserFriendly;
|
|
105
110
|
}) | (Record<string, unknown> & {
|
|
106
111
|
isGlobalContext: true;
|
|
112
|
+
_isOriginalObject: true;
|
|
107
113
|
_virtualFileExports: unknown;
|
|
108
114
|
_pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
|
|
109
115
|
_pageConfigs: import("../../__internal/index.js").PageConfig[];
|
|
110
116
|
_pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
|
|
111
117
|
_allPageIds: string[];
|
|
118
|
+
_userFriendlyConfigsGlobal: PageConfigUserFriendly;
|
|
112
119
|
config: import("../../types/index.js").ConfigResolved;
|
|
113
|
-
pages:
|
|
120
|
+
pages: {
|
|
121
|
+
[k: string]: PageConfigUserFriendly & ({
|
|
122
|
+
route: import("../../shared/page-configs/Config.js").Route;
|
|
123
|
+
isErrorPage?: undefined;
|
|
124
|
+
} | {
|
|
125
|
+
route?: undefined;
|
|
126
|
+
isErrorPage: true;
|
|
127
|
+
});
|
|
128
|
+
};
|
|
114
129
|
} & {
|
|
115
130
|
_isPrerendering: false;
|
|
116
131
|
viteConfig: null;
|
|
@@ -133,114 +148,7 @@ declare function getGlobalContextServerInternal(): Promise<{
|
|
|
133
148
|
isClientSide: false;
|
|
134
149
|
_pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
|
|
135
150
|
_onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
|
|
136
|
-
isGlobalContext: true;
|
|
137
|
-
_virtualFileExports: unknown;
|
|
138
|
-
_pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
|
|
139
|
-
_pageConfigs: import("../../__internal/index.js").PageConfig[];
|
|
140
|
-
_pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
|
|
141
|
-
_allPageIds: string[];
|
|
142
|
-
config: import("../../types/index.js").ConfigResolved;
|
|
143
|
-
pages: import("../../shared/page-configs/getPageConfigUserFriendly.js").PageConfigsUserFriendly;
|
|
144
151
|
});
|
|
145
|
-
globalContext_public: Record<string, unknown> & Pick<{
|
|
146
|
-
isGlobalContext: true;
|
|
147
|
-
_virtualFileExports: unknown;
|
|
148
|
-
_pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
|
|
149
|
-
_pageConfigs: import("../../__internal/index.js").PageConfig[];
|
|
150
|
-
_pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
|
|
151
|
-
_allPageIds: string[];
|
|
152
|
-
config: import("../../types/index.js").ConfigResolved;
|
|
153
|
-
pages: import("../../shared/page-configs/getPageConfigUserFriendly.js").PageConfigsUserFriendly;
|
|
154
|
-
} & ({
|
|
155
|
-
_isProduction: false;
|
|
156
|
-
_isPrerendering: false;
|
|
157
|
-
assetsManifest: null;
|
|
158
|
-
_viteDevServer: ViteDevServer;
|
|
159
|
-
viteConfig: ResolvedConfig;
|
|
160
|
-
viteConfigRuntime: {
|
|
161
|
-
root: string;
|
|
162
|
-
build: {
|
|
163
|
-
outDir: string;
|
|
164
|
-
};
|
|
165
|
-
_baseViteOriginal: string;
|
|
166
|
-
vitePluginServerEntry: {
|
|
167
|
-
inject: boolean | undefined;
|
|
168
|
-
};
|
|
169
|
-
};
|
|
170
|
-
baseServer: string;
|
|
171
|
-
baseAssets: string;
|
|
172
|
-
isClientSide: false;
|
|
173
|
-
_pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
|
|
174
|
-
_onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
|
|
175
|
-
isGlobalContext: true;
|
|
176
|
-
_virtualFileExports: unknown;
|
|
177
|
-
_pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
|
|
178
|
-
_pageConfigs: import("../../__internal/index.js").PageConfig[];
|
|
179
|
-
_pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
|
|
180
|
-
_allPageIds: string[];
|
|
181
|
-
config: import("../../types/index.js").ConfigResolved;
|
|
182
|
-
pages: import("../../shared/page-configs/getPageConfigUserFriendly.js").PageConfigsUserFriendly;
|
|
183
|
-
} | {
|
|
184
|
-
_isPrerendering: true;
|
|
185
|
-
viteConfig: ResolvedConfig;
|
|
186
|
-
_isProduction: true;
|
|
187
|
-
assetsManifest: ViteManifest;
|
|
188
|
-
_viteDevServer: null;
|
|
189
|
-
viteConfigRuntime: {
|
|
190
|
-
root: string;
|
|
191
|
-
build: {
|
|
192
|
-
outDir: string;
|
|
193
|
-
};
|
|
194
|
-
_baseViteOriginal: string;
|
|
195
|
-
vitePluginServerEntry: {
|
|
196
|
-
inject: boolean | undefined;
|
|
197
|
-
};
|
|
198
|
-
};
|
|
199
|
-
_usesClientRouter: boolean;
|
|
200
|
-
baseServer: string;
|
|
201
|
-
baseAssets: string;
|
|
202
|
-
isClientSide: false;
|
|
203
|
-
_pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
|
|
204
|
-
_onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
|
|
205
|
-
isGlobalContext: true;
|
|
206
|
-
_virtualFileExports: unknown;
|
|
207
|
-
_pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
|
|
208
|
-
_pageConfigs: import("../../__internal/index.js").PageConfig[];
|
|
209
|
-
_pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
|
|
210
|
-
_allPageIds: string[];
|
|
211
|
-
config: import("../../types/index.js").ConfigResolved;
|
|
212
|
-
pages: import("../../shared/page-configs/getPageConfigUserFriendly.js").PageConfigsUserFriendly;
|
|
213
|
-
} | {
|
|
214
|
-
_isPrerendering: false;
|
|
215
|
-
viteConfig: null;
|
|
216
|
-
_isProduction: true;
|
|
217
|
-
assetsManifest: ViteManifest;
|
|
218
|
-
_viteDevServer: null;
|
|
219
|
-
viteConfigRuntime: {
|
|
220
|
-
root: string;
|
|
221
|
-
build: {
|
|
222
|
-
outDir: string;
|
|
223
|
-
};
|
|
224
|
-
_baseViteOriginal: string;
|
|
225
|
-
vitePluginServerEntry: {
|
|
226
|
-
inject: boolean | undefined;
|
|
227
|
-
};
|
|
228
|
-
};
|
|
229
|
-
_usesClientRouter: boolean;
|
|
230
|
-
baseServer: string;
|
|
231
|
-
baseAssets: string;
|
|
232
|
-
isClientSide: false;
|
|
233
|
-
_pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
|
|
234
|
-
_onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
|
|
235
|
-
isGlobalContext: true;
|
|
236
|
-
_virtualFileExports: unknown;
|
|
237
|
-
_pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
|
|
238
|
-
_pageConfigs: import("../../__internal/index.js").PageConfig[];
|
|
239
|
-
_pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
|
|
240
|
-
_allPageIds: string[];
|
|
241
|
-
config: import("../../types/index.js").ConfigResolved;
|
|
242
|
-
pages: import("../../shared/page-configs/getPageConfigUserFriendly.js").PageConfigsUserFriendly;
|
|
243
|
-
}), "pages" | "viteConfig" | "viteConfigRuntime" | "assetsManifest" | "baseServer" | "baseAssets" | "config" | "isClientSide"> & Vike.GlobalContext & Vike.GlobalContextServer;
|
|
244
152
|
}>;
|
|
245
153
|
/**
|
|
246
154
|
* Get runtime information about your app.
|
|
@@ -262,105 +170,6 @@ declare function getGlobalContextAsync(isProduction: boolean): Promise<GlobalCon
|
|
|
262
170
|
* @deprecated
|
|
263
171
|
*/
|
|
264
172
|
declare function getGlobalContextSync(): GlobalContext;
|
|
265
|
-
declare function makePublic(globalContext: GlobalContextServerInternal): Pick<{
|
|
266
|
-
isGlobalContext: true;
|
|
267
|
-
_virtualFileExports: unknown;
|
|
268
|
-
_pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
|
|
269
|
-
_pageConfigs: import("../../__internal/index.js").PageConfig[];
|
|
270
|
-
_pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
|
|
271
|
-
_allPageIds: string[];
|
|
272
|
-
config: import("../../types/index.js").ConfigResolved;
|
|
273
|
-
pages: import("../../shared/page-configs/getPageConfigUserFriendly.js").PageConfigsUserFriendly;
|
|
274
|
-
} & ({
|
|
275
|
-
_isProduction: false;
|
|
276
|
-
_isPrerendering: false;
|
|
277
|
-
assetsManifest: null;
|
|
278
|
-
_viteDevServer: ViteDevServer;
|
|
279
|
-
viteConfig: ResolvedConfig;
|
|
280
|
-
viteConfigRuntime: {
|
|
281
|
-
root: string;
|
|
282
|
-
build: {
|
|
283
|
-
outDir: string;
|
|
284
|
-
};
|
|
285
|
-
_baseViteOriginal: string;
|
|
286
|
-
vitePluginServerEntry: {
|
|
287
|
-
inject: boolean | undefined;
|
|
288
|
-
};
|
|
289
|
-
};
|
|
290
|
-
baseServer: string;
|
|
291
|
-
baseAssets: string;
|
|
292
|
-
isClientSide: false;
|
|
293
|
-
_pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
|
|
294
|
-
_onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
|
|
295
|
-
isGlobalContext: true;
|
|
296
|
-
_virtualFileExports: unknown;
|
|
297
|
-
_pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
|
|
298
|
-
_pageConfigs: import("../../__internal/index.js").PageConfig[];
|
|
299
|
-
_pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
|
|
300
|
-
_allPageIds: string[];
|
|
301
|
-
config: import("../../types/index.js").ConfigResolved;
|
|
302
|
-
pages: import("../../shared/page-configs/getPageConfigUserFriendly.js").PageConfigsUserFriendly;
|
|
303
|
-
} | {
|
|
304
|
-
_isPrerendering: true;
|
|
305
|
-
viteConfig: ResolvedConfig;
|
|
306
|
-
_isProduction: true;
|
|
307
|
-
assetsManifest: ViteManifest;
|
|
308
|
-
_viteDevServer: null;
|
|
309
|
-
viteConfigRuntime: {
|
|
310
|
-
root: string;
|
|
311
|
-
build: {
|
|
312
|
-
outDir: string;
|
|
313
|
-
};
|
|
314
|
-
_baseViteOriginal: string;
|
|
315
|
-
vitePluginServerEntry: {
|
|
316
|
-
inject: boolean | undefined;
|
|
317
|
-
};
|
|
318
|
-
};
|
|
319
|
-
_usesClientRouter: boolean;
|
|
320
|
-
baseServer: string;
|
|
321
|
-
baseAssets: string;
|
|
322
|
-
isClientSide: false;
|
|
323
|
-
_pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
|
|
324
|
-
_onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
|
|
325
|
-
isGlobalContext: true;
|
|
326
|
-
_virtualFileExports: unknown;
|
|
327
|
-
_pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
|
|
328
|
-
_pageConfigs: import("../../__internal/index.js").PageConfig[];
|
|
329
|
-
_pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
|
|
330
|
-
_allPageIds: string[];
|
|
331
|
-
config: import("../../types/index.js").ConfigResolved;
|
|
332
|
-
pages: import("../../shared/page-configs/getPageConfigUserFriendly.js").PageConfigsUserFriendly;
|
|
333
|
-
} | {
|
|
334
|
-
_isPrerendering: false;
|
|
335
|
-
viteConfig: null;
|
|
336
|
-
_isProduction: true;
|
|
337
|
-
assetsManifest: ViteManifest;
|
|
338
|
-
_viteDevServer: null;
|
|
339
|
-
viteConfigRuntime: {
|
|
340
|
-
root: string;
|
|
341
|
-
build: {
|
|
342
|
-
outDir: string;
|
|
343
|
-
};
|
|
344
|
-
_baseViteOriginal: string;
|
|
345
|
-
vitePluginServerEntry: {
|
|
346
|
-
inject: boolean | undefined;
|
|
347
|
-
};
|
|
348
|
-
};
|
|
349
|
-
_usesClientRouter: boolean;
|
|
350
|
-
baseServer: string;
|
|
351
|
-
baseAssets: string;
|
|
352
|
-
isClientSide: false;
|
|
353
|
-
_pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
|
|
354
|
-
_onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
|
|
355
|
-
isGlobalContext: true;
|
|
356
|
-
_virtualFileExports: unknown;
|
|
357
|
-
_pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
|
|
358
|
-
_pageConfigs: import("../../__internal/index.js").PageConfig[];
|
|
359
|
-
_pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
|
|
360
|
-
_allPageIds: string[];
|
|
361
|
-
config: import("../../types/index.js").ConfigResolved;
|
|
362
|
-
pages: import("../../shared/page-configs/getPageConfigUserFriendly.js").PageConfigsUserFriendly;
|
|
363
|
-
}), "pages" | "viteConfig" | "viteConfigRuntime" | "assetsManifest" | "baseServer" | "baseAssets" | "config" | "isClientSide">;
|
|
364
173
|
declare function setGlobalContext_viteDevServer(viteDevServer: ViteDevServer): Promise<void>;
|
|
365
174
|
declare function setGlobalContext_viteConfig(viteConfig: ResolvedConfig, viteConfigRuntime: ViteConfigRuntime): void;
|
|
366
175
|
declare function setGlobalContext_isPrerendering(): void;
|
|
@@ -380,13 +189,23 @@ declare function assertBuildInfo(buildInfo: unknown): asserts buildInfo is Build
|
|
|
380
189
|
declare function updateUserFiles(): Promise<void>;
|
|
381
190
|
declare function setGlobalContext(virtualFileExports: unknown): Promise<{
|
|
382
191
|
isGlobalContext: true;
|
|
192
|
+
_isOriginalObject: true;
|
|
383
193
|
_virtualFileExports: unknown;
|
|
384
194
|
_pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
|
|
385
195
|
_pageConfigs: import("../../__internal/index.js").PageConfig[];
|
|
386
196
|
_pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
|
|
387
197
|
_allPageIds: string[];
|
|
198
|
+
_userFriendlyConfigsGlobal: PageConfigUserFriendly;
|
|
388
199
|
config: import("../../types/index.js").ConfigResolved;
|
|
389
|
-
pages:
|
|
200
|
+
pages: {
|
|
201
|
+
[k: string]: PageConfigUserFriendly & ({
|
|
202
|
+
route: import("../../shared/page-configs/Config.js").Route;
|
|
203
|
+
isErrorPage?: undefined;
|
|
204
|
+
} | {
|
|
205
|
+
route?: undefined;
|
|
206
|
+
isErrorPage: true;
|
|
207
|
+
});
|
|
208
|
+
};
|
|
390
209
|
} & ({
|
|
391
210
|
_isProduction: false;
|
|
392
211
|
_isPrerendering: false;
|
|
@@ -408,14 +227,6 @@ declare function setGlobalContext(virtualFileExports: unknown): Promise<{
|
|
|
408
227
|
isClientSide: false;
|
|
409
228
|
_pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
|
|
410
229
|
_onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
|
|
411
|
-
isGlobalContext: true;
|
|
412
|
-
_virtualFileExports: unknown;
|
|
413
|
-
_pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
|
|
414
|
-
_pageConfigs: import("../../__internal/index.js").PageConfig[];
|
|
415
|
-
_pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
|
|
416
|
-
_allPageIds: string[];
|
|
417
|
-
config: import("../../types/index.js").ConfigResolved;
|
|
418
|
-
pages: import("../../shared/page-configs/getPageConfigUserFriendly.js").PageConfigsUserFriendly;
|
|
419
230
|
} | {
|
|
420
231
|
_isPrerendering: true;
|
|
421
232
|
viteConfig: ResolvedConfig;
|
|
@@ -438,14 +249,6 @@ declare function setGlobalContext(virtualFileExports: unknown): Promise<{
|
|
|
438
249
|
isClientSide: false;
|
|
439
250
|
_pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
|
|
440
251
|
_onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
|
|
441
|
-
isGlobalContext: true;
|
|
442
|
-
_virtualFileExports: unknown;
|
|
443
|
-
_pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
|
|
444
|
-
_pageConfigs: import("../../__internal/index.js").PageConfig[];
|
|
445
|
-
_pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
|
|
446
|
-
_allPageIds: string[];
|
|
447
|
-
config: import("../../types/index.js").ConfigResolved;
|
|
448
|
-
pages: import("../../shared/page-configs/getPageConfigUserFriendly.js").PageConfigsUserFriendly;
|
|
449
252
|
} | {
|
|
450
253
|
_isPrerendering: false;
|
|
451
254
|
viteConfig: null;
|
|
@@ -468,13 +271,5 @@ declare function setGlobalContext(virtualFileExports: unknown): Promise<{
|
|
|
468
271
|
isClientSide: false;
|
|
469
272
|
_pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
|
|
470
273
|
_onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
|
|
471
|
-
isGlobalContext: true;
|
|
472
|
-
_virtualFileExports: unknown;
|
|
473
|
-
_pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
|
|
474
|
-
_pageConfigs: import("../../__internal/index.js").PageConfig[];
|
|
475
|
-
_pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
|
|
476
|
-
_allPageIds: string[];
|
|
477
|
-
config: import("../../types/index.js").ConfigResolved;
|
|
478
|
-
pages: import("../../shared/page-configs/getPageConfigUserFriendly.js").PageConfigsUserFriendly;
|
|
479
274
|
})>;
|
|
480
275
|
declare function clearGlobalContext(): void;
|
|
@@ -25,7 +25,7 @@ export { updateUserFiles };
|
|
|
25
25
|
// - Without vike-server it's manually loaded here using importServerProductionEntry() which uses @brillout/vite-plugin-server-entry's autoImporter or crawler
|
|
26
26
|
// - In development: globalObject.viteDevServer which is Vite's development server
|
|
27
27
|
// - globalObject.viteDevServer is used by updateUserFiles() which then sets virtualFileExports
|
|
28
|
-
import { assert, onSetupRuntime, assertUsage, assertWarning, isPlainObject, objectReplace, isObject, hasProp, debugGlob, getGlobalObject, genPromise, createDebugger,
|
|
28
|
+
import { assert, onSetupRuntime, assertUsage, assertWarning, isPlainObject, objectReplace, isObject, hasProp, debugGlob, getGlobalObject, genPromise, createDebugger, checkType, PROJECT_VERSION } from './utils.js';
|
|
29
29
|
import { importServerProductionEntry } from '@brillout/vite-plugin-server-entry/runtime';
|
|
30
30
|
import { virtualFileIdImportUserCodeServer } from '../shared/virtual-files/virtualFileImportUserCode.js';
|
|
31
31
|
import pc from '@brillout/picocolors';
|
|
@@ -33,6 +33,7 @@ import { loadPageRoutes } from '../../shared/route/loadPageRoutes.js';
|
|
|
33
33
|
import { assertV1Design } from '../shared/assertV1Design.js';
|
|
34
34
|
import { resolveBase } from '../shared/resolveBase.js';
|
|
35
35
|
import { createGlobalContextShared, getGlobalContextSyncErrMsg } from '../../shared/createGlobalContextShared.js';
|
|
36
|
+
import { prepareGlobalContextForPublicUsage } from '../../shared/prepareGlobalContextForPublicUsage.js';
|
|
36
37
|
const debug = createDebugger('vike:globalContext');
|
|
37
38
|
const globalObject = getGlobalObject('runtime/globalContext.ts', getInitialGlobalContext());
|
|
38
39
|
// Trick to break down TypeScript circular dependency
|
|
@@ -44,10 +45,9 @@ async function getGlobalContextServerInternal() {
|
|
|
44
45
|
assertGlobalContextIsDefined();
|
|
45
46
|
if (globalObject.isProduction !== true)
|
|
46
47
|
await globalObject.waitForUserFilesUpdate;
|
|
47
|
-
const { globalContext
|
|
48
|
+
const { globalContext } = globalObjectTyped;
|
|
48
49
|
assertIsDefined(globalContext);
|
|
49
|
-
|
|
50
|
-
return { globalContext, globalContext_public };
|
|
50
|
+
return { globalContext };
|
|
51
51
|
}
|
|
52
52
|
function assertIsDefined(globalContext) {
|
|
53
53
|
if (!globalContext) {
|
|
@@ -59,7 +59,6 @@ function assertIsDefined(globalContext) {
|
|
|
59
59
|
function assertGlobalContextIsDefined() {
|
|
60
60
|
assertIsDefined(globalObjectTyped.globalContext);
|
|
61
61
|
assert(globalObject.globalContext);
|
|
62
|
-
assert(globalObject.globalContext_public);
|
|
63
62
|
}
|
|
64
63
|
// We purposely return GlobalContext instead of GlobalContextServer because `import { getGlobalContext } from 'vike'` can resolve to the client-side implementation.
|
|
65
64
|
/**
|
|
@@ -89,9 +88,7 @@ async function getGlobalContextAsync(isProduction) {
|
|
|
89
88
|
if (!isProduction)
|
|
90
89
|
await globalObject.waitForUserFilesUpdate;
|
|
91
90
|
assertGlobalContextIsDefined();
|
|
92
|
-
|
|
93
|
-
assert(globalContext_public);
|
|
94
|
-
return globalContext_public;
|
|
91
|
+
return getGlobalContextForPublicUsage();
|
|
95
92
|
}
|
|
96
93
|
/**
|
|
97
94
|
* Get runtime information about your app.
|
|
@@ -102,26 +99,19 @@ async function getGlobalContextAsync(isProduction) {
|
|
|
102
99
|
*/
|
|
103
100
|
function getGlobalContextSync() {
|
|
104
101
|
debug('getGlobalContextSync()');
|
|
105
|
-
const {
|
|
106
|
-
assertUsage(
|
|
102
|
+
const { globalContext } = globalObjectTyped;
|
|
103
|
+
assertUsage(globalContext, getGlobalContextSyncErrMsg);
|
|
107
104
|
assertWarning(false,
|
|
108
105
|
// We discourage users from using it because `pageContext.globalContext` is safer: I ain't sure but there could be race conditions when using `getGlobalContextSync()` inside React/Vue components upon HMR.
|
|
109
106
|
// We're lying about "is going to be deprecated in the next major release": let's keep it and see if users need it (so far I can't see a use case for it).
|
|
110
107
|
'getGlobalContextSync() is going to be deprecated in the next major release, see https://vike.dev/getGlobalContext', { onlyOnce: true });
|
|
111
|
-
return
|
|
112
|
-
}
|
|
113
|
-
function
|
|
114
|
-
const
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
'viteConfigRuntime',
|
|
119
|
-
'pages',
|
|
120
|
-
'baseServer',
|
|
121
|
-
'baseAssets',
|
|
122
|
-
'isClientSide'
|
|
123
|
-
], true);
|
|
124
|
-
return globalContextPublic;
|
|
108
|
+
return getGlobalContextForPublicUsage();
|
|
109
|
+
}
|
|
110
|
+
function getGlobalContextForPublicUsage() {
|
|
111
|
+
const { globalContext } = globalObjectTyped;
|
|
112
|
+
assert(globalContext);
|
|
113
|
+
const globalContextForPublicUsage = prepareGlobalContextForPublicUsage(globalContext);
|
|
114
|
+
return globalContextForPublicUsage;
|
|
125
115
|
}
|
|
126
116
|
async function setGlobalContext_viteDevServer(viteDevServer) {
|
|
127
117
|
debug('setGlobalContext_viteDevServer()');
|
|
@@ -335,8 +325,6 @@ async function setGlobalContext(virtualFileExports) {
|
|
|
335
325
|
assertV1Design(
|
|
336
326
|
// pageConfigs is PageConfigRuntime[] but assertV1Design() requires PageConfigBuildTime[]
|
|
337
327
|
globalContext._pageConfigs.length > 0, globalContext._pageFilesAll);
|
|
338
|
-
// Public usage
|
|
339
|
-
globalObject.globalContext_public = makePublic(globalContext);
|
|
340
328
|
assertGlobalContextIsDefined();
|
|
341
329
|
onSetupRuntime();
|
|
342
330
|
// Never actually used, only used for TypeScript `ReturnType<typeof setGlobalContext>`
|
|
@@ -358,7 +346,6 @@ async function addGlobalContext(globalContext) {
|
|
|
358
346
|
assert(viteConfigRuntime);
|
|
359
347
|
assert(!isPrerendering);
|
|
360
348
|
return {
|
|
361
|
-
...globalContext,
|
|
362
349
|
...globalContextBase,
|
|
363
350
|
...resolveBaseRuntime(viteConfigRuntime, globalContext.config),
|
|
364
351
|
_isProduction: false,
|
|
@@ -376,7 +363,6 @@ async function addGlobalContext(globalContext) {
|
|
|
376
363
|
assert(buildInfo);
|
|
377
364
|
assert(assetsManifest);
|
|
378
365
|
const globalContextBase2 = {
|
|
379
|
-
...globalContext,
|
|
380
366
|
...globalContextBase,
|
|
381
367
|
...resolveBaseRuntime(buildInfo.viteConfigRuntime, globalContext.config),
|
|
382
368
|
_isProduction: true,
|
|
@@ -12,7 +12,7 @@ type PageContextSerialization = {
|
|
|
12
12
|
is404: null | boolean;
|
|
13
13
|
pageProps?: Record<string, unknown>;
|
|
14
14
|
_pageContextInit: Record<string, unknown>;
|
|
15
|
-
|
|
15
|
+
_globalContext: Record<string, any>;
|
|
16
16
|
};
|
|
17
17
|
declare function getPageContextClientSerialized(pageContext: PageContextSerialization): string;
|
|
18
18
|
declare function getGlobalContextClientSerialized(pageContext: PageContextSerialization): string;
|
|
@@ -36,7 +36,7 @@ function getPageContextClientSerialized(pageContext) {
|
|
|
36
36
|
}
|
|
37
37
|
function getGlobalContextClientSerialized(pageContext) {
|
|
38
38
|
const passToClient = pageContext._passToClient;
|
|
39
|
-
const globalContextClient = applyPassToClient(passToClient, pageContext.
|
|
39
|
+
const globalContextClient = applyPassToClient(passToClient, pageContext._globalContext);
|
|
40
40
|
const globalContextClientSerialized = serializeObject(globalContextClient, 'globalContext', passToClient);
|
|
41
41
|
return globalContextClientSerialized;
|
|
42
42
|
}
|
|
@@ -2,4 +2,4 @@ export { getCacheControl };
|
|
|
2
2
|
import type { PageConfigRuntime } from '../../../../shared/page-configs/PageConfig.js';
|
|
3
3
|
import type { HttpResponse } from '../createHttpResponse.js';
|
|
4
4
|
type StatusCode = HttpResponse['statusCode'];
|
|
5
|
-
declare function getCacheControl(pageId: string, pageConfigs: PageConfigRuntime[], statusCode: StatusCode): string;
|
|
5
|
+
declare function getCacheControl(pageId: string | null, pageConfigs: PageConfigRuntime[], statusCode: StatusCode): string;
|
|
@@ -8,11 +8,13 @@ function getCacheControl(pageId, pageConfigs, statusCode) {
|
|
|
8
8
|
return defaultValue;
|
|
9
9
|
if (statusCode > 499)
|
|
10
10
|
return defaultValue;
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
11
|
+
if (pageId) {
|
|
12
|
+
const pageConfig = getPageConfig(pageId, pageConfigs);
|
|
13
|
+
const configValue = getConfigValueRuntime(pageConfig, 'cacheControl', 'string');
|
|
14
|
+
const value = configValue?.value;
|
|
15
|
+
if (value)
|
|
16
|
+
return value;
|
|
17
|
+
}
|
|
16
18
|
// - Disabling caching by default is the safest strategy, because caching is problematic with authentication as described in https://github.com/vikejs/vike/issues/1275#issuecomment-1824366875
|
|
17
19
|
// - Are there use cases when we don't need to disable caching?
|
|
18
20
|
// - When there isn't any <script id="vike_pageContext" type="application/json"> then we can safely have caching. (We don't implement this exception because we're lazy and it's quite a rare situation.)
|
|
@@ -29,7 +29,6 @@ async function createHttpResponsePage(htmlRender, renderHook, pageContext) {
|
|
|
29
29
|
}
|
|
30
30
|
const earlyHints = getEarlyHints(await pageContext.__getPageAssets());
|
|
31
31
|
const headers = [];
|
|
32
|
-
assert(pageContext.pageId);
|
|
33
32
|
const cacheControl = getCacheControl(pageContext.pageId, pageContext._pageConfigs, statusCode);
|
|
34
33
|
if (cacheControl) {
|
|
35
34
|
headers.push(['Cache-Control', cacheControl]);
|