vike 0.4.228-commit-84954ae → 0.4.228-commit-1bb55f1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. package/dist/cjs/__internal/index.js +1 -1
  2. package/dist/cjs/client/client-routing-runtime/globalContext.js +4 -4
  3. package/dist/cjs/client/server-routing-runtime/globalContext.js +4 -4
  4. package/dist/cjs/client/shared/{createGetGlobalContext.js → createGetGlobalContextClient.js} +31 -4
  5. package/dist/cjs/client/shared/utils.js +1 -0
  6. package/dist/cjs/node/plugin/plugins/commonConfig.js +5 -2
  7. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolvePointerImport.js +1 -1
  8. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transpileAndExecuteFile.js +0 -1
  9. package/dist/cjs/node/prerender/runPrerender.js +1 -1
  10. package/dist/cjs/node/runtime/globalContext.js +17 -6
  11. package/dist/cjs/node/runtime/index-deprecated.js +9 -38
  12. package/dist/cjs/node/runtime/index.js +56 -2
  13. package/dist/cjs/node/runtime/renderPage/preparePageContextForUserConsumptionServerSide.js +1 -1
  14. package/dist/cjs/node/runtime/renderPage.js +1 -1
  15. package/dist/cjs/shared/assertPageContextProvidedByUser.js +1 -1
  16. package/dist/cjs/shared/createGlobalContextShared.js +9 -0
  17. package/dist/cjs/shared/createPageContextShared.js +1 -1
  18. package/dist/cjs/shared/route/loadPageRoutes.js +1 -1
  19. package/dist/cjs/utils/PROJECT_VERSION.js +1 -1
  20. package/dist/cjs/utils/objectAssign.js +1 -1
  21. package/dist/cjs/utils/requireResolve.js +85 -63
  22. package/dist/esm/__internal/index.js +2 -2
  23. package/dist/esm/client/client-routing-runtime/createPageContext.d.ts +5 -2
  24. package/dist/esm/client/client-routing-runtime/createPageContext.js +2 -2
  25. package/dist/esm/client/client-routing-runtime/globalContext.d.ts +8 -4
  26. package/dist/esm/client/client-routing-runtime/globalContext.js +3 -3
  27. package/dist/esm/client/index.d.ts +1 -0
  28. package/dist/esm/client/index.js +4 -0
  29. package/dist/esm/client/node.js +1 -3
  30. package/dist/esm/client/server-routing-runtime/createPageContextClientSide.d.ts +4 -1
  31. package/dist/esm/client/server-routing-runtime/createPageContextClientSide.js +2 -2
  32. package/dist/esm/client/server-routing-runtime/globalContext.d.ts +7 -3
  33. package/dist/esm/client/server-routing-runtime/globalContext.js +3 -3
  34. package/dist/esm/client/shared/createGetGlobalContextClient.d.ts +23 -0
  35. package/dist/esm/client/shared/createGetGlobalContextClient.js +58 -0
  36. package/dist/esm/client/shared/utils.d.ts +1 -0
  37. package/dist/esm/client/shared/utils.js +1 -0
  38. package/dist/esm/node/plugin/plugins/commonConfig.js +5 -2
  39. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolvePointerImport.js +1 -1
  40. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transpileAndExecuteFile.js +0 -1
  41. package/dist/esm/node/prerender/runPrerender.d.ts +18 -4
  42. package/dist/esm/node/prerender/runPrerender.js +2 -2
  43. package/dist/esm/node/runtime/globalContext.d.ts +39 -8
  44. package/dist/esm/node/runtime/globalContext.js +18 -7
  45. package/dist/esm/node/runtime/html/injectAssets/getViteDevScript.d.ts +2 -2
  46. package/dist/esm/node/runtime/html/injectAssets.d.ts +2 -2
  47. package/dist/esm/node/runtime/index-deprecated.d.ts +1 -16
  48. package/dist/esm/node/runtime/index-deprecated.js +9 -36
  49. package/dist/esm/node/runtime/index.d.ts +23 -1
  50. package/dist/esm/node/runtime/index.js +38 -3
  51. package/dist/esm/node/runtime/renderPage/analyzePage.d.ts +2 -2
  52. package/dist/esm/node/runtime/renderPage/createPageContextServerSide.d.ts +10 -3
  53. package/dist/esm/node/runtime/renderPage/getPageAssets.d.ts +2 -2
  54. package/dist/esm/node/runtime/renderPage/handleErrorWithoutErrorPage.d.ts +2 -2
  55. package/dist/esm/node/runtime/renderPage/loadUserFilesServerSide.d.ts +2 -2
  56. package/dist/esm/node/runtime/renderPage/log404/index.d.ts +2 -2
  57. package/dist/esm/node/runtime/renderPage/preparePageContextForUserConsumptionServerSide.d.ts +2 -2
  58. package/dist/esm/node/runtime/renderPage/preparePageContextForUserConsumptionServerSide.js +1 -1
  59. package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.d.ts +16 -2
  60. package/dist/esm/node/runtime/renderPage.d.ts +10 -3
  61. package/dist/esm/node/runtime/renderPage.js +2 -2
  62. package/dist/esm/shared/assertPageContextProvidedByUser.js +1 -1
  63. package/dist/esm/shared/createGlobalContextShared.d.ts +15 -1
  64. package/dist/esm/shared/createGlobalContextShared.js +8 -0
  65. package/dist/esm/shared/createPageContextShared.d.ts +1 -1
  66. package/dist/esm/shared/createPageContextShared.js +1 -1
  67. package/dist/esm/shared/route/loadPageRoutes.js +1 -1
  68. package/dist/esm/shared/types.d.ts +36 -13
  69. package/dist/esm/utils/PROJECT_VERSION.d.ts +1 -1
  70. package/dist/esm/utils/PROJECT_VERSION.js +1 -1
  71. package/dist/esm/utils/objectAssign.js +1 -1
  72. package/dist/esm/utils/requireResolve.d.ts +2 -2
  73. package/dist/esm/utils/requireResolve.js +85 -63
  74. package/package.json +12 -11
  75. package/dist/cjs/node/runtime/index-common.js +0 -27
  76. package/dist/esm/client/shared/createGetGlobalContext.d.ts +0 -11
  77. package/dist/esm/client/shared/createGetGlobalContext.js +0 -29
  78. package/dist/esm/node/runtime/index-common.d.ts +0 -8
  79. package/dist/esm/node/runtime/index-common.js +0 -10
@@ -5,7 +5,7 @@ export { runPrerender_forceExit };
5
5
  export type { PrerenderOptions };
6
6
  export type { PrerenderContextPublic };
7
7
  import type { PageFile } from '../../shared/getPageFiles.js';
8
- import { type GlobalContextInternal, type GlobalContextServer } from '../runtime/globalContext.js';
8
+ import { type GlobalContextServerInternal, type GlobalContextServer } from '../runtime/globalContext.js';
9
9
  import type { InlineConfig, ResolvedConfig } from 'vite';
10
10
  import type { APIOptions } from '../api/types.js';
11
11
  type ProvidedByHook = null | {
@@ -66,7 +66,7 @@ declare function runPrerenderFromCLIPrerenderCommand(): Promise<void>;
66
66
  declare function runPrerenderFromAutoRun(viteConfig: InlineConfig | undefined): Promise<{
67
67
  forceExit: boolean;
68
68
  }>;
69
- declare function createPageContextPrerendering(urlOriginal: string, prerenderContext: PrerenderContext, globalContext: GlobalContextInternal, globalContext_public: GlobalContextServer, is404: boolean, pageId: string | undefined, providedByHook: ProvidedByHook): Promise<((({
69
+ declare function createPageContextPrerendering(urlOriginal: string, prerenderContext: PrerenderContext, globalContext: GlobalContextServerInternal, globalContext_public: GlobalContextServer, is404: boolean, pageId: string | undefined, providedByHook: ProvidedByHook): Promise<((({
70
70
  isClientSide: boolean;
71
71
  isPrerendering: boolean;
72
72
  } & Pick<import("../../shared/types.js").PageContextBuiltInServerInternal, "urlOriginal" | "headersOriginal"> & {
@@ -75,6 +75,7 @@ declare function createPageContextPrerendering(urlOriginal: string, prerenderCon
75
75
  } & {
76
76
  globalContext: GlobalContextServer;
77
77
  _globalContext: {
78
+ isGlobalContext: true;
78
79
  _virtualFileExports: unknown;
79
80
  _pageFilesAll: PageFile[];
80
81
  _pageConfigs: import("../../shared/page-configs/PageConfig.js").PageConfigRuntime[];
@@ -100,8 +101,10 @@ declare function createPageContextPrerendering(urlOriginal: string, prerenderCon
100
101
  };
101
102
  baseServer: string;
102
103
  baseAssets: string;
104
+ isClientSide: false;
103
105
  _pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
104
106
  _onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
107
+ isGlobalContext: true;
105
108
  _virtualFileExports: unknown;
106
109
  _pageFilesAll: PageFile[];
107
110
  _pageConfigs: import("../../shared/page-configs/PageConfig.js").PageConfigRuntime[];
@@ -128,8 +131,10 @@ declare function createPageContextPrerendering(urlOriginal: string, prerenderCon
128
131
  _usesClientRouter: boolean;
129
132
  baseServer: string;
130
133
  baseAssets: string;
134
+ isClientSide: false;
131
135
  _pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
132
136
  _onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
137
+ isGlobalContext: true;
133
138
  _virtualFileExports: unknown;
134
139
  _pageFilesAll: PageFile[];
135
140
  _pageConfigs: import("../../shared/page-configs/PageConfig.js").PageConfigRuntime[];
@@ -156,8 +161,10 @@ declare function createPageContextPrerendering(urlOriginal: string, prerenderCon
156
161
  _usesClientRouter: boolean;
157
162
  baseServer: string;
158
163
  baseAssets: string;
164
+ isClientSide: false;
159
165
  _pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
160
166
  _onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
167
+ isGlobalContext: true;
161
168
  _virtualFileExports: unknown;
162
169
  _pageFilesAll: PageFile[];
163
170
  _pageConfigs: import("../../shared/page-configs/PageConfig.js").PageConfigRuntime[];
@@ -190,7 +197,7 @@ declare function createPageContextPrerendering(urlOriginal: string, prerenderCon
190
197
  _source: import("../../shared/page-configs/getPageConfigUserFriendly.js").Source;
191
198
  _sources: import("../../shared/page-configs/getPageConfigUserFriendly.js").Sources;
192
199
  _from: import("../../shared/page-configs/getPageConfigUserFriendly.js").From;
193
- _isPageContextObject: boolean;
200
+ isPageContext: true;
194
201
  } & {
195
202
  _urlHandler: null;
196
203
  _httpRequestId: null;
@@ -209,6 +216,7 @@ declare function createPageContextPrerendering(urlOriginal: string, prerenderCon
209
216
  } & {
210
217
  globalContext: GlobalContextServer;
211
218
  _globalContext: {
219
+ isGlobalContext: true;
212
220
  _virtualFileExports: unknown;
213
221
  _pageFilesAll: PageFile[];
214
222
  _pageConfigs: import("../../shared/page-configs/PageConfig.js").PageConfigRuntime[];
@@ -234,8 +242,10 @@ declare function createPageContextPrerendering(urlOriginal: string, prerenderCon
234
242
  };
235
243
  baseServer: string;
236
244
  baseAssets: string;
245
+ isClientSide: false;
237
246
  _pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
238
247
  _onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
248
+ isGlobalContext: true;
239
249
  _virtualFileExports: unknown;
240
250
  _pageFilesAll: PageFile[];
241
251
  _pageConfigs: import("../../shared/page-configs/PageConfig.js").PageConfigRuntime[];
@@ -262,8 +272,10 @@ declare function createPageContextPrerendering(urlOriginal: string, prerenderCon
262
272
  _usesClientRouter: boolean;
263
273
  baseServer: string;
264
274
  baseAssets: string;
275
+ isClientSide: false;
265
276
  _pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
266
277
  _onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
278
+ isGlobalContext: true;
267
279
  _virtualFileExports: unknown;
268
280
  _pageFilesAll: PageFile[];
269
281
  _pageConfigs: import("../../shared/page-configs/PageConfig.js").PageConfigRuntime[];
@@ -290,8 +302,10 @@ declare function createPageContextPrerendering(urlOriginal: string, prerenderCon
290
302
  _usesClientRouter: boolean;
291
303
  baseServer: string;
292
304
  baseAssets: string;
305
+ isClientSide: false;
293
306
  _pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
294
307
  _onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
308
+ isGlobalContext: true;
295
309
  _virtualFileExports: unknown;
296
310
  _pageFilesAll: PageFile[];
297
311
  _pageConfigs: import("../../shared/page-configs/PageConfig.js").PageConfigRuntime[];
@@ -324,7 +338,7 @@ declare function createPageContextPrerendering(urlOriginal: string, prerenderCon
324
338
  _source: import("../../shared/page-configs/getPageConfigUserFriendly.js").Source;
325
339
  _sources: import("../../shared/page-configs/getPageConfigUserFriendly.js").Sources;
326
340
  _from: import("../../shared/page-configs/getPageConfigUserFriendly.js").From;
327
- _isPageContextObject: boolean;
341
+ isPageContext: true;
328
342
  } & {
329
343
  _urlHandler: null;
330
344
  _httpRequestId: null;
@@ -9,7 +9,7 @@ import { prerenderPage } from '../runtime/renderPage/renderPageAlreadyRouted.js'
9
9
  import { createPageContextServerSide } from '../runtime/renderPage/createPageContextServerSide.js';
10
10
  import pc from '@brillout/picocolors';
11
11
  import { cpus } from 'os';
12
- import { getGlobalContextInternal, initGlobalContext_runPrerender, setGlobalContext_isPrerendering } from '../runtime/globalContext.js';
12
+ import { getGlobalContextServerInternal, initGlobalContext_runPrerender, setGlobalContext_isPrerendering } from '../runtime/globalContext.js';
13
13
  import { resolveConfig } from 'vite';
14
14
  import { getPageFilesServerSide } from '../../shared/getPageFiles.js';
15
15
  import { getPageContextRequestUrl } from '../../shared/getPageContextRequestUrl.js';
@@ -94,7 +94,7 @@ async function runPrerender(options = {}, standaloneTrigger) {
94
94
  }
95
95
  const concurrencyLimit = pLimit(parallel === false || parallel === 0 ? 1 : parallel === true || parallel === undefined ? cpus().length : parallel);
96
96
  await initGlobalContext_runPrerender();
97
- const { globalContext, globalContext_public } = await getGlobalContextInternal();
97
+ const { globalContext, globalContext_public } = await getGlobalContextServerInternal();
98
98
  globalContext._pageFilesAll.forEach(assertExportNames);
99
99
  const prerenderContext = {
100
100
  pageContexts: [],
@@ -1,7 +1,7 @@
1
1
  export { getGlobalContext };
2
2
  export { getGlobalContextSync };
3
3
  export { getGlobalContextAsync };
4
- export { getGlobalContextInternal };
4
+ export { getGlobalContextServerInternal };
5
5
  export { getViteDevServer };
6
6
  export { getViteConfig };
7
7
  export { initGlobalContext_renderPage };
@@ -16,15 +16,17 @@ export { clearGlobalContext };
16
16
  export { assertBuildInfo };
17
17
  export { updateUserFiles };
18
18
  export type { BuildInfo };
19
- export type { GlobalContextServerInternal as GlobalContextInternal };
19
+ 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
23
  import type { ViteConfigRuntime } from '../plugin/shared/getViteConfigRuntime.js';
24
+ import type { GlobalContext } from '../../shared/types.js';
24
25
  type GlobalContextServer = ReturnType<typeof makePublic> & Vike.GlobalContext & Vike.GlobalContextServer;
25
26
  type GlobalContextServerInternal = Awaited<ReturnType<typeof setGlobalContext>>;
26
- declare function getGlobalContextInternal(): Promise<{
27
+ declare function getGlobalContextServerInternal(): Promise<{
27
28
  globalContext: (Record<string, unknown> & {
29
+ isGlobalContext: true;
28
30
  _virtualFileExports: unknown;
29
31
  _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
30
32
  _pageConfigs: import("../../__internal/index.js").PageConfig[];
@@ -50,8 +52,10 @@ declare function getGlobalContextInternal(): Promise<{
50
52
  };
51
53
  baseServer: string;
52
54
  baseAssets: string;
55
+ isClientSide: false;
53
56
  _pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
54
57
  _onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
58
+ isGlobalContext: true;
55
59
  _virtualFileExports: unknown;
56
60
  _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
57
61
  _pageConfigs: import("../../__internal/index.js").PageConfig[];
@@ -60,6 +64,7 @@ declare function getGlobalContextInternal(): Promise<{
60
64
  config: import("../../types/index.js").ConfigResolved;
61
65
  pages: import("../../shared/page-configs/getPageConfigUserFriendly.js").PageConfigsUserFriendly;
62
66
  }) | (Record<string, unknown> & {
67
+ isGlobalContext: true;
63
68
  _virtualFileExports: unknown;
64
69
  _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
65
70
  _pageConfigs: import("../../__internal/index.js").PageConfig[];
@@ -86,8 +91,10 @@ declare function getGlobalContextInternal(): Promise<{
86
91
  _usesClientRouter: boolean;
87
92
  baseServer: string;
88
93
  baseAssets: string;
94
+ isClientSide: false;
89
95
  _pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
90
96
  _onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
97
+ isGlobalContext: true;
91
98
  _virtualFileExports: unknown;
92
99
  _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
93
100
  _pageConfigs: import("../../__internal/index.js").PageConfig[];
@@ -96,6 +103,7 @@ declare function getGlobalContextInternal(): Promise<{
96
103
  config: import("../../types/index.js").ConfigResolved;
97
104
  pages: import("../../shared/page-configs/getPageConfigUserFriendly.js").PageConfigsUserFriendly;
98
105
  }) | (Record<string, unknown> & {
106
+ isGlobalContext: true;
99
107
  _virtualFileExports: unknown;
100
108
  _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
101
109
  _pageConfigs: import("../../__internal/index.js").PageConfig[];
@@ -122,8 +130,10 @@ declare function getGlobalContextInternal(): Promise<{
122
130
  _usesClientRouter: boolean;
123
131
  baseServer: string;
124
132
  baseAssets: string;
133
+ isClientSide: false;
125
134
  _pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
126
135
  _onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
136
+ isGlobalContext: true;
127
137
  _virtualFileExports: unknown;
128
138
  _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
129
139
  _pageConfigs: import("../../__internal/index.js").PageConfig[];
@@ -133,6 +143,7 @@ declare function getGlobalContextInternal(): Promise<{
133
143
  pages: import("../../shared/page-configs/getPageConfigUserFriendly.js").PageConfigsUserFriendly;
134
144
  });
135
145
  globalContext_public: Record<string, unknown> & Pick<{
146
+ isGlobalContext: true;
136
147
  _virtualFileExports: unknown;
137
148
  _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
138
149
  _pageConfigs: import("../../__internal/index.js").PageConfig[];
@@ -158,8 +169,10 @@ declare function getGlobalContextInternal(): Promise<{
158
169
  };
159
170
  baseServer: string;
160
171
  baseAssets: string;
172
+ isClientSide: false;
161
173
  _pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
162
174
  _onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
175
+ isGlobalContext: true;
163
176
  _virtualFileExports: unknown;
164
177
  _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
165
178
  _pageConfigs: import("../../__internal/index.js").PageConfig[];
@@ -186,8 +199,10 @@ declare function getGlobalContextInternal(): Promise<{
186
199
  _usesClientRouter: boolean;
187
200
  baseServer: string;
188
201
  baseAssets: string;
202
+ isClientSide: false;
189
203
  _pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
190
204
  _onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
205
+ isGlobalContext: true;
191
206
  _virtualFileExports: unknown;
192
207
  _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
193
208
  _pageConfigs: import("../../__internal/index.js").PageConfig[];
@@ -214,8 +229,10 @@ declare function getGlobalContextInternal(): Promise<{
214
229
  _usesClientRouter: boolean;
215
230
  baseServer: string;
216
231
  baseAssets: string;
232
+ isClientSide: false;
217
233
  _pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
218
234
  _onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
235
+ isGlobalContext: true;
219
236
  _virtualFileExports: unknown;
220
237
  _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
221
238
  _pageConfigs: import("../../__internal/index.js").PageConfig[];
@@ -223,20 +240,20 @@ declare function getGlobalContextInternal(): Promise<{
223
240
  _allPageIds: string[];
224
241
  config: import("../../types/index.js").ConfigResolved;
225
242
  pages: import("../../shared/page-configs/getPageConfigUserFriendly.js").PageConfigsUserFriendly;
226
- }), "pages" | "viteConfig" | "viteConfigRuntime" | "assetsManifest" | "baseServer" | "baseAssets" | "config"> & Vike.GlobalContext & Vike.GlobalContextServer;
243
+ }), "pages" | "viteConfig" | "viteConfigRuntime" | "assetsManifest" | "baseServer" | "baseAssets" | "config" | "isClientSide"> & Vike.GlobalContext & Vike.GlobalContextServer;
227
244
  }>;
228
245
  /**
229
246
  * Get runtime information about your app.
230
247
  *
231
248
  * https://vike.dev/getGlobalContext
232
249
  */
233
- declare function getGlobalContext(): Promise<GlobalContextServer>;
250
+ declare function getGlobalContext(): Promise<GlobalContext>;
234
251
  /**
235
252
  * Get runtime information about your app.
236
253
  *
237
254
  * https://vike.dev/getGlobalContext
238
255
  */
239
- declare function getGlobalContextAsync(isProduction: boolean): Promise<GlobalContextServer>;
256
+ declare function getGlobalContextAsync(isProduction: boolean): Promise<GlobalContext>;
240
257
  /**
241
258
  * Get runtime information about your app.
242
259
  *
@@ -244,8 +261,9 @@ declare function getGlobalContextAsync(isProduction: boolean): Promise<GlobalCon
244
261
  *
245
262
  * @deprecated
246
263
  */
247
- declare function getGlobalContextSync(): GlobalContextServer;
264
+ declare function getGlobalContextSync(): GlobalContext;
248
265
  declare function makePublic(globalContext: GlobalContextServerInternal): Pick<{
266
+ isGlobalContext: true;
249
267
  _virtualFileExports: unknown;
250
268
  _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
251
269
  _pageConfigs: import("../../__internal/index.js").PageConfig[];
@@ -271,8 +289,10 @@ declare function makePublic(globalContext: GlobalContextServerInternal): Pick<{
271
289
  };
272
290
  baseServer: string;
273
291
  baseAssets: string;
292
+ isClientSide: false;
274
293
  _pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
275
294
  _onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
295
+ isGlobalContext: true;
276
296
  _virtualFileExports: unknown;
277
297
  _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
278
298
  _pageConfigs: import("../../__internal/index.js").PageConfig[];
@@ -299,8 +319,10 @@ declare function makePublic(globalContext: GlobalContextServerInternal): Pick<{
299
319
  _usesClientRouter: boolean;
300
320
  baseServer: string;
301
321
  baseAssets: string;
322
+ isClientSide: false;
302
323
  _pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
303
324
  _onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
325
+ isGlobalContext: true;
304
326
  _virtualFileExports: unknown;
305
327
  _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
306
328
  _pageConfigs: import("../../__internal/index.js").PageConfig[];
@@ -327,8 +349,10 @@ declare function makePublic(globalContext: GlobalContextServerInternal): Pick<{
327
349
  _usesClientRouter: boolean;
328
350
  baseServer: string;
329
351
  baseAssets: string;
352
+ isClientSide: false;
330
353
  _pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
331
354
  _onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
355
+ isGlobalContext: true;
332
356
  _virtualFileExports: unknown;
333
357
  _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
334
358
  _pageConfigs: import("../../__internal/index.js").PageConfig[];
@@ -336,7 +360,7 @@ declare function makePublic(globalContext: GlobalContextServerInternal): Pick<{
336
360
  _allPageIds: string[];
337
361
  config: import("../../types/index.js").ConfigResolved;
338
362
  pages: import("../../shared/page-configs/getPageConfigUserFriendly.js").PageConfigsUserFriendly;
339
- }), "pages" | "viteConfig" | "viteConfigRuntime" | "assetsManifest" | "baseServer" | "baseAssets" | "config">;
363
+ }), "pages" | "viteConfig" | "viteConfigRuntime" | "assetsManifest" | "baseServer" | "baseAssets" | "config" | "isClientSide">;
340
364
  declare function setGlobalContext_viteDevServer(viteDevServer: ViteDevServer): Promise<void>;
341
365
  declare function setGlobalContext_viteConfig(viteConfig: ResolvedConfig, viteConfigRuntime: ViteConfigRuntime): void;
342
366
  declare function setGlobalContext_isPrerendering(): void;
@@ -355,6 +379,7 @@ type BuildInfo = {
355
379
  declare function assertBuildInfo(buildInfo: unknown): asserts buildInfo is BuildInfo;
356
380
  declare function updateUserFiles(): Promise<void>;
357
381
  declare function setGlobalContext(virtualFileExports: unknown): Promise<{
382
+ isGlobalContext: true;
358
383
  _virtualFileExports: unknown;
359
384
  _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
360
385
  _pageConfigs: import("../../__internal/index.js").PageConfig[];
@@ -380,8 +405,10 @@ declare function setGlobalContext(virtualFileExports: unknown): Promise<{
380
405
  };
381
406
  baseServer: string;
382
407
  baseAssets: string;
408
+ isClientSide: false;
383
409
  _pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
384
410
  _onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
411
+ isGlobalContext: true;
385
412
  _virtualFileExports: unknown;
386
413
  _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
387
414
  _pageConfigs: import("../../__internal/index.js").PageConfig[];
@@ -408,8 +435,10 @@ declare function setGlobalContext(virtualFileExports: unknown): Promise<{
408
435
  _usesClientRouter: boolean;
409
436
  baseServer: string;
410
437
  baseAssets: string;
438
+ isClientSide: false;
411
439
  _pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
412
440
  _onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
441
+ isGlobalContext: true;
413
442
  _virtualFileExports: unknown;
414
443
  _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
415
444
  _pageConfigs: import("../../__internal/index.js").PageConfig[];
@@ -436,8 +465,10 @@ declare function setGlobalContext(virtualFileExports: unknown): Promise<{
436
465
  _usesClientRouter: boolean;
437
466
  baseServer: string;
438
467
  baseAssets: string;
468
+ isClientSide: false;
439
469
  _pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
440
470
  _onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
471
+ isGlobalContext: true;
441
472
  _virtualFileExports: unknown;
442
473
  _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
443
474
  _pageConfigs: import("../../__internal/index.js").PageConfig[];
@@ -3,7 +3,7 @@ export { getGlobalContext };
3
3
  export { getGlobalContextSync };
4
4
  export { getGlobalContextAsync };
5
5
  // Internal use
6
- export { getGlobalContextInternal };
6
+ export { getGlobalContextServerInternal };
7
7
  export { getViteDevServer };
8
8
  export { getViteConfig };
9
9
  export { initGlobalContext_renderPage };
@@ -32,14 +32,14 @@ import pc from '@brillout/picocolors';
32
32
  import { loadPageRoutes } from '../../shared/route/loadPageRoutes.js';
33
33
  import { assertV1Design } from '../shared/assertV1Design.js';
34
34
  import { resolveBase } from '../shared/resolveBase.js';
35
- import { createGlobalContextShared } from '../../shared/createGlobalContextShared.js';
35
+ import { createGlobalContextShared, getGlobalContextSyncErrMsg } from '../../shared/createGlobalContextShared.js';
36
36
  const debug = createDebugger('vike:globalContext');
37
37
  const globalObject = getGlobalObject('runtime/globalContext.ts', getInitialGlobalContext());
38
38
  // Trick to break down TypeScript circular dependency
39
39
  // https://chat.deepseek.com/a/chat/s/d7e9f90a-c7f3-4108-9cd5-4ad6caed3539
40
40
  const globalObjectTyped = globalObject;
41
- async function getGlobalContextInternal() {
42
- // getGlobalContextInternal() should always be called after initGlobalContext()
41
+ async function getGlobalContextServerInternal() {
42
+ // getGlobalContextServerInternal() should always be called after initGlobalContext()
43
43
  assert(globalObject.isInitialized);
44
44
  assertGlobalContextIsDefined();
45
45
  if (globalObject.isProduction !== true)
@@ -61,6 +61,7 @@ function assertGlobalContextIsDefined() {
61
61
  assert(globalObject.globalContext);
62
62
  assert(globalObject.globalContext_public);
63
63
  }
64
+ // We purposely return GlobalContext instead of GlobalContextServer because `import { getGlobalContext } from 'vike'` can resolve to the client-side implementation.
64
65
  /**
65
66
  * Get runtime information about your app.
66
67
  *
@@ -102,15 +103,24 @@ async function getGlobalContextAsync(isProduction) {
102
103
  function getGlobalContextSync() {
103
104
  debug('getGlobalContextSync()');
104
105
  const { globalContext_public } = globalObjectTyped;
105
- assertUsage(globalContext_public, "The global context isn't set yet, call getGlobalContextSync() later or use getGlobalContext() instead.");
106
+ assertUsage(globalContext_public, getGlobalContextSyncErrMsg);
106
107
  assertWarning(false,
107
- // We discourage users from using it because using `pageContext.globalContext` is better: it doesn't have the race condition issue that `getGlobalContextSync()` would have when called inside React/Vue components.
108
+ // 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.
108
109
  // 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).
109
110
  'getGlobalContextSync() is going to be deprecated in the next major release, see https://vike.dev/getGlobalContext', { onlyOnce: true });
110
111
  return globalContext_public;
111
112
  }
112
113
  function makePublic(globalContext) {
113
- const globalContextPublic = getPublicProxy(globalContext, 'globalContext', ['assetsManifest', 'config', 'viteConfig', 'viteConfigRuntime', 'pages', 'baseServer', 'baseAssets'], true);
114
+ const globalContextPublic = getPublicProxy(globalContext, 'globalContext', [
115
+ 'assetsManifest',
116
+ 'config',
117
+ 'viteConfig',
118
+ 'viteConfigRuntime',
119
+ 'pages',
120
+ 'baseServer',
121
+ 'baseAssets',
122
+ 'isClientSide'
123
+ ], true);
114
124
  return globalContextPublic;
115
125
  }
116
126
  async function setGlobalContext_viteDevServer(viteDevServer) {
@@ -335,6 +345,7 @@ async function setGlobalContext(virtualFileExports) {
335
345
  async function addGlobalContext(globalContext) {
336
346
  const { pageRoutes, onBeforeRouteHook } = await loadPageRoutes(globalContext._pageFilesAll, globalContext._pageConfigs, globalContext._pageConfigGlobal, globalContext._allPageIds);
337
347
  const globalContextBase = {
348
+ isClientSide: false,
338
349
  _pageRoutes: pageRoutes,
339
350
  _onBeforeRouteHook: onBeforeRouteHook
340
351
  };
@@ -1,5 +1,5 @@
1
1
  export { getViteDevScript };
2
- import type { GlobalContextInternal } from '../../globalContext.js';
2
+ import type { GlobalContextServerInternal } from '../../globalContext.js';
3
3
  declare function getViteDevScript(pageContext: {
4
- _globalContext: GlobalContextInternal;
4
+ _globalContext: GlobalContextServerInternal;
5
5
  }): Promise<string>;
@@ -8,7 +8,7 @@ import { type PreloadFilter } from './injectAssets/getHtmlTags.js';
8
8
  import type { StreamFromReactStreamingPackage } from './stream/react-streaming.js';
9
9
  import type { PageConfigRuntime } from '../../../shared/page-configs/PageConfig.js';
10
10
  import type { PageContextSerialization } from './serializeContext.js';
11
- import type { GlobalContextInternal } from '../globalContext.js';
11
+ import type { GlobalContextServerInternal } from '../globalContext.js';
12
12
  type PageContextInjectAssets = {
13
13
  urlPathname: string;
14
14
  __getPageAssets: () => Promise<PageAsset[]>;
@@ -22,7 +22,7 @@ type PageContextInjectAssets = {
22
22
  _baseServer: string;
23
23
  _pageConfigs: PageConfigRuntime[];
24
24
  is404: null | boolean;
25
- _globalContext: GlobalContextInternal;
25
+ _globalContext: GlobalContextServerInternal;
26
26
  } & PageContextSerialization;
27
27
  declare function injectHtmlTagsToString(htmlParts: HtmlPart[], pageContext: PageContextInjectAssets & {
28
28
  _isStream: false;
@@ -1,16 +1 @@
1
- export * from './index-common.js';
2
- export * from '../../types/index-dreprecated.js';
3
- import { RenderErrorPage as RenderErrorPage_ } from '../../shared/route/abort.js';
4
- /** @deprecated
5
- * Replace:
6
- * ```
7
- * import { RenderErrorPage } from 'vike'
8
- * ```
9
- * With:
10
- * ```
11
- * import { render } from 'vike/abort'
12
- * ```
13
- *
14
- * See https://vike.dev/render
15
- */
16
- export declare const RenderErrorPage: (...args: Parameters<typeof RenderErrorPage_>) => Error;
1
+ export * from './index.js';
@@ -1,41 +1,14 @@
1
- // TODO/v1-release: replace this with:
2
- // assertUsage(false, "`import { something } from 'vike'` doesn't exist: instead import from 'vike/server', 'vike/client', 'vike/plugin', ...")
3
- import { isBrowser } from '../../utils/isBrowser.js';
4
- import { assertUsage } from '../../utils/assert.js';
5
- assertUsage(!isBrowser(), "It's forbidden to `import { something } from 'vike'` on the client-side: the module 'vike' is a server-only module.", { showStackTrace: true });
6
- export * from './index-common.js';
7
- export * from '../../types/index-dreprecated.js';
1
+ // TODO/soon: point package.json#exports['./server'] to this file.
2
+ // - Write migration guide, see comment below.
3
+ export * from './index.js';
8
4
  import { assertWarning } from './utils.js';
9
5
  import pc from '@brillout/picocolors';
10
- import { RenderErrorPage as RenderErrorPage_ } from '../../shared/route/abort.js';
11
- /** @deprecated
12
- * Replace:
13
- * ```
14
- * import { RenderErrorPage } from 'vike'
15
- * ```
16
- * With:
17
- * ```
18
- * import { render } from 'vike/abort'
19
- * ```
20
- *
21
- * See https://vike.dev/render
22
- */
23
- export const RenderErrorPage = (...args) => {
24
- assertWarning(false, [
25
- 'Replace:',
26
- pc.red(" import { RenderErrorPage } from 'vike'"),
27
- 'With:',
28
- pc.green(" import { render } from 'vike/abort'"),
29
- 'See https://vike.dev/render'
30
- ].join('\n'), { onlyOnce: true, showStackTrace: true });
31
- return RenderErrorPage_(...args);
32
- };
33
6
  assertWarning(false, [
34
- 'You have following imports which are outdated:',
35
- pc.red(" import { something } from 'vike'"),
7
+ 'You have outdated imports:',
8
+ pc.bold(pc.red(" import { something } from 'vike/server'")),
36
9
  'Replace them with:',
37
- pc.green(" import { something } from 'vike/server'"),
38
- `Or if ${pc.cyan('something')} is a type:`,
39
- pc.green(" import type { something } from 'vike/types'"),
40
- "Make sure to import renderPage(), escapeInject, html, dangerouslySkipEscape(), pipeWebStream(), pipeNodeStream(), pipeStream(), stampPipe() from 'vike/server'. (Or inspect the error stack below to find the import causing this warning.)"
10
+ pc.bold(pc.green(" import { something } from 'vike'"))
11
+ /* Add migration guide, with migration scritps such as `$ rename vike/server vike`
12
+ `See ${pc.underline('https://vike.dev/migration/0.4.xxx')}`
13
+ */
41
14
  ].join('\n'), { showStackTrace: true, onlyOnce: true });
@@ -1 +1,23 @@
1
- export * from './index-common.js';
1
+ export { renderPage } from './renderPage.js';
2
+ export { escapeInject, dangerouslySkipEscape } from './html/renderHtml.js';
3
+ export { pipeWebStream, pipeNodeStream, pipeStream, stampPipe } from './html/stream.js';
4
+ export { PROJECT_VERSION as version } from './utils.js';
5
+ export { getGlobalContext, getGlobalContextSync, getGlobalContextAsync } from './globalContext.js';
6
+ export { createDevMiddleware } from '../runtime-dev/index.js';
7
+ export * from '../../types/index-dreprecated.js';
8
+ export { injectAssets__public as _injectAssets } from './html/injectAssets/injectAssets__public.js';
9
+ export { createPageRenderer } from '../createPageRenderer.js';
10
+ import { RenderErrorPage as RenderErrorPage_ } from '../../shared/route/abort.js';
11
+ /** @deprecated
12
+ * Replace:
13
+ * ```
14
+ * import { RenderErrorPage } from 'vike'
15
+ * ```
16
+ * With:
17
+ * ```
18
+ * import { render } from 'vike/abort'
19
+ * ```
20
+ *
21
+ * See https://vike.dev/render
22
+ */
23
+ export declare const RenderErrorPage: (...args: Parameters<typeof RenderErrorPage_>) => Error;
@@ -1,4 +1,39 @@
1
1
  import { isBrowser } from '../../utils/isBrowser.js';
2
- import { assertUsage } from '../../utils/assert.js';
3
- assertUsage(!isBrowser(), "It's forbidden to `import { something } from 'vike/server'` on the client-side: the module 'vike/server' is a server-only module.", { showStackTrace: true });
4
- export * from './index-common.js';
2
+ import { assert } from '../../utils/assert.js';
3
+ assert(!isBrowser());
4
+ export { renderPage } from './renderPage.js';
5
+ export { escapeInject, dangerouslySkipEscape } from './html/renderHtml.js';
6
+ export { pipeWebStream, pipeNodeStream, pipeStream, stampPipe } from './html/stream.js';
7
+ export { PROJECT_VERSION as version } from './utils.js';
8
+ export { getGlobalContext, getGlobalContextSync, getGlobalContextAsync } from './globalContext.js';
9
+ export { createDevMiddleware } from '../runtime-dev/index.js';
10
+ // TODO/v1-release: remove
11
+ // Deprecated exports
12
+ export * from '../../types/index-dreprecated.js';
13
+ export { injectAssets__public as _injectAssets } from './html/injectAssets/injectAssets__public.js';
14
+ export { createPageRenderer } from '../createPageRenderer.js';
15
+ import { assertWarning } from './utils.js';
16
+ import pc from '@brillout/picocolors';
17
+ import { RenderErrorPage as RenderErrorPage_ } from '../../shared/route/abort.js';
18
+ /** @deprecated
19
+ * Replace:
20
+ * ```
21
+ * import { RenderErrorPage } from 'vike'
22
+ * ```
23
+ * With:
24
+ * ```
25
+ * import { render } from 'vike/abort'
26
+ * ```
27
+ *
28
+ * See https://vike.dev/render
29
+ */
30
+ export const RenderErrorPage = (...args) => {
31
+ assertWarning(false, [
32
+ 'Replace:',
33
+ pc.red(" import { RenderErrorPage } from 'vike'"),
34
+ 'With:',
35
+ pc.green(" import { render } from 'vike/abort'"),
36
+ 'See https://vike.dev/render'
37
+ ].join('\n'), { onlyOnce: true, showStackTrace: true });
38
+ return RenderErrorPage_(...args);
39
+ };
@@ -2,5 +2,5 @@ export { analyzePage };
2
2
  import type { PageFile } from '../../../shared/getPageFiles/getPageFileObject.js';
3
3
  import type { PageConfigRuntime } from '../../../shared/page-configs/PageConfig.js';
4
4
  import { type AnalysisResult } from '../../../shared/getPageFiles/analyzePageClientSide.js';
5
- import type { GlobalContextInternal } from '../globalContext.js';
6
- declare function analyzePage(pageFilesAll: PageFile[], pageConfig: null | PageConfigRuntime, pageId: string, globalContext: GlobalContextInternal): Promise<AnalysisResult>;
5
+ import type { GlobalContextServerInternal } from '../globalContext.js';
6
+ declare function analyzePage(pageFilesAll: PageFile[], pageConfig: null | PageConfigRuntime, pageId: string, globalContext: GlobalContextServerInternal): Promise<AnalysisResult>;