vike 0.4.229-commit-7056ef0 → 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.
Files changed (149) hide show
  1. package/dist/cjs/client/server-routing-runtime/utils.js +1 -0
  2. package/dist/cjs/client/shared/{preparePageContextForUserConsumptionClientSide.js → preparePageContextForPublicUsageClientShared.js} +15 -19
  3. package/dist/cjs/node/api/build.js +1 -5
  4. package/dist/cjs/node/plugin/shared/loggerNotProd.js +2 -2
  5. package/dist/cjs/node/prerender/runPrerender.js +40 -36
  6. package/dist/cjs/node/prerender/utils.js +1 -1
  7. package/dist/cjs/node/runtime/globalContext.js +13 -27
  8. package/dist/cjs/node/runtime/html/serializeContext.js +1 -1
  9. package/dist/cjs/node/runtime/renderPage/createPageContextServerSide.js +4 -8
  10. package/dist/cjs/node/runtime/renderPage/execHookServer.js +11 -0
  11. package/dist/cjs/node/runtime/renderPage/executeOnBeforeRenderAndDataHooks.js +9 -9
  12. package/dist/cjs/node/runtime/renderPage/executeOnRenderHtmlHook.js +8 -12
  13. package/dist/cjs/node/runtime/renderPage/preparePageContextForPublicUsageServer.js +10 -0
  14. package/dist/cjs/node/runtime/renderPage/renderPageAlreadyRouted.js +3 -3
  15. package/dist/cjs/node/runtime/renderPage.js +7 -5
  16. package/dist/cjs/node/runtime/utils.js +1 -1
  17. package/dist/cjs/shared/NOT_SERIALIZABLE.js +0 -1
  18. package/dist/cjs/shared/addIs404ToPageProps.js +0 -7
  19. package/dist/cjs/shared/createGlobalContextShared.js +6 -3
  20. package/dist/cjs/shared/createPageContextShared.js +14 -3
  21. package/dist/cjs/shared/getPageContext.js +3 -3
  22. package/dist/cjs/shared/getPageContextUrlComputed.js +2 -36
  23. package/dist/cjs/shared/getProxyForPublicUsage.js +106 -0
  24. package/dist/cjs/shared/hooks/execHook.js +164 -0
  25. package/dist/cjs/shared/page-configs/getUserFriendlyConfigs.js +17 -15
  26. package/dist/cjs/shared/prepareGlobalContextForPublicUsage.js +10 -0
  27. package/dist/cjs/shared/preparePageContextForPublicUsage.js +75 -0
  28. package/dist/cjs/shared/route/abort.js +2 -2
  29. package/dist/cjs/shared/route/executeGuardHook.js +4 -9
  30. package/dist/cjs/shared/route/executeOnBeforeRouteHook.js +4 -3
  31. package/dist/cjs/shared/route/index.js +2 -4
  32. package/dist/cjs/shared/route/loadPageRoutes.js +6 -0
  33. package/dist/cjs/shared/route/resolveRouteFunction.js +14 -10
  34. package/dist/cjs/shared/utils.js +2 -0
  35. package/dist/cjs/utils/PROJECT_VERSION.js +1 -1
  36. package/dist/cjs/utils/objectAssign.js +3 -3
  37. package/dist/cjs/utils/objectDefineProperty.js +1 -1
  38. package/dist/esm/client/client-routing-runtime/createPageContextClientSide.d.ts +10 -7
  39. package/dist/esm/client/client-routing-runtime/createPageContextClientSide.js +8 -10
  40. package/dist/esm/client/client-routing-runtime/getPageContextFromHooks.d.ts +397 -20
  41. package/dist/esm/client/client-routing-runtime/getPageContextFromHooks.js +15 -15
  42. package/dist/esm/client/client-routing-runtime/globalContext.d.ts +1 -0
  43. package/dist/esm/client/client-routing-runtime/prefetch.d.ts +3 -8
  44. package/dist/esm/client/client-routing-runtime/preparePageContextForPublicUsageClient.d.ts +11 -0
  45. package/dist/esm/client/client-routing-runtime/preparePageContextForPublicUsageClient.js +5 -0
  46. package/dist/esm/client/client-routing-runtime/renderPageClientSide.d.ts +135 -0
  47. package/dist/esm/client/client-routing-runtime/renderPageClientSide.js +66 -72
  48. package/dist/esm/client/client-routing-runtime/utils.d.ts +1 -0
  49. package/dist/esm/client/client-routing-runtime/utils.js +1 -0
  50. package/dist/esm/client/server-routing-runtime/createPageContextClientSide.d.ts +8 -6
  51. package/dist/esm/client/server-routing-runtime/createPageContextClientSide.js +8 -10
  52. package/dist/esm/client/server-routing-runtime/entry.js +4 -6
  53. package/dist/esm/client/server-routing-runtime/globalContext.d.ts +1 -0
  54. package/dist/esm/client/server-routing-runtime/preparePageContextForPublicUsageClient.d.ts +9 -0
  55. package/dist/esm/client/server-routing-runtime/preparePageContextForPublicUsageClient.js +5 -0
  56. package/dist/esm/client/server-routing-runtime/utils.d.ts +1 -0
  57. package/dist/esm/client/server-routing-runtime/utils.js +1 -0
  58. package/dist/esm/client/shared/createGetGlobalContextClient.d.ts +1 -0
  59. package/dist/esm/client/shared/executeOnRenderClientHook.d.ts +3 -3
  60. package/dist/esm/client/shared/executeOnRenderClientHook.js +4 -13
  61. package/dist/esm/client/shared/preparePageContextForPublicUsageClientShared.d.ts +11 -0
  62. package/dist/esm/client/shared/preparePageContextForPublicUsageClientShared.js +40 -0
  63. package/dist/esm/node/api/build.js +1 -2
  64. package/dist/esm/node/plugin/shared/loggerNotProd.js +1 -1
  65. package/dist/esm/node/prerender/runPrerender.d.ts +15 -115
  66. package/dist/esm/node/prerender/runPrerender.js +40 -36
  67. package/dist/esm/node/prerender/utils.d.ts +1 -1
  68. package/dist/esm/node/prerender/utils.js +1 -1
  69. package/dist/esm/node/runtime/globalContext.d.ts +5 -373
  70. package/dist/esm/node/runtime/globalContext.js +14 -28
  71. package/dist/esm/node/runtime/html/serializeContext.d.ts +1 -1
  72. package/dist/esm/node/runtime/html/serializeContext.js +1 -1
  73. package/dist/esm/node/runtime/renderPage/createPageContextServerSide.d.ts +15 -62
  74. package/dist/esm/node/runtime/renderPage/createPageContextServerSide.js +5 -9
  75. package/dist/esm/node/runtime/renderPage/execHookServer.d.ts +12 -0
  76. package/dist/esm/node/runtime/renderPage/execHookServer.js +9 -0
  77. package/dist/esm/node/runtime/renderPage/executeOnBeforeRenderAndDataHooks.d.ts +1 -1
  78. package/dist/esm/node/runtime/renderPage/executeOnBeforeRenderAndDataHooks.js +9 -9
  79. package/dist/esm/node/runtime/renderPage/executeOnRenderHtmlHook.d.ts +4 -2
  80. package/dist/esm/node/runtime/renderPage/executeOnRenderHtmlHook.js +8 -12
  81. package/dist/esm/node/runtime/renderPage/preparePageContextForPublicUsageServer.d.ts +20 -0
  82. package/dist/esm/node/runtime/renderPage/preparePageContextForPublicUsageServer.js +8 -0
  83. package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.d.ts +15 -115
  84. package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.js +3 -3
  85. package/dist/esm/node/runtime/renderPage.d.ts +10 -60
  86. package/dist/esm/node/runtime/renderPage.js +7 -5
  87. package/dist/esm/node/runtime/utils.d.ts +1 -1
  88. package/dist/esm/node/runtime/utils.js +1 -1
  89. package/dist/esm/shared/NOT_SERIALIZABLE.js +0 -1
  90. package/dist/esm/shared/addIs404ToPageProps.d.ts +1 -6
  91. package/dist/esm/shared/addIs404ToPageProps.js +1 -8
  92. package/dist/esm/shared/createGlobalContextShared.d.ts +2 -0
  93. package/dist/esm/shared/createGlobalContextShared.js +7 -4
  94. package/dist/esm/shared/createPageContextShared.d.ts +6 -2
  95. package/dist/esm/shared/createPageContextShared.js +15 -4
  96. package/dist/esm/shared/getPageContext.d.ts +1 -1
  97. package/dist/esm/shared/getPageContext.js +1 -1
  98. package/dist/esm/shared/getPageContextUrlComputed.d.ts +2 -5
  99. package/dist/esm/shared/getPageContextUrlComputed.js +3 -37
  100. package/dist/esm/shared/getProxyForPublicUsage.d.ts +12 -0
  101. package/dist/esm/shared/getProxyForPublicUsage.js +104 -0
  102. package/dist/esm/shared/hooks/execHook.d.ts +63 -0
  103. package/dist/esm/shared/hooks/execHook.js +162 -0
  104. package/dist/esm/shared/hooks/getHook.d.ts +3 -1
  105. package/dist/esm/shared/page-configs/Config.d.ts +3 -3
  106. package/dist/esm/shared/page-configs/getUserFriendlyConfigs.js +18 -16
  107. package/dist/esm/shared/prepareGlobalContextForPublicUsage.d.ts +7 -0
  108. package/dist/esm/shared/prepareGlobalContextForPublicUsage.js +8 -0
  109. package/dist/esm/shared/preparePageContextForPublicUsage.d.ts +12 -0
  110. package/dist/esm/shared/preparePageContextForPublicUsage.js +73 -0
  111. package/dist/esm/shared/route/abort.js +1 -1
  112. package/dist/esm/shared/route/executeGuardHook.d.ts +4 -3
  113. package/dist/esm/shared/route/executeGuardHook.js +4 -9
  114. package/dist/esm/shared/route/executeOnBeforeRouteHook.js +4 -3
  115. package/dist/esm/shared/route/index.js +2 -4
  116. package/dist/esm/shared/route/loadPageRoutes.d.ts +2 -1
  117. package/dist/esm/shared/route/loadPageRoutes.js +7 -1
  118. package/dist/esm/shared/route/resolveRouteFunction.d.ts +2 -2
  119. package/dist/esm/shared/route/resolveRouteFunction.js +14 -10
  120. package/dist/esm/shared/types.d.ts +13 -3
  121. package/dist/esm/shared/utils.d.ts +2 -0
  122. package/dist/esm/shared/utils.js +2 -0
  123. package/dist/esm/utils/PROJECT_VERSION.d.ts +1 -1
  124. package/dist/esm/utils/PROJECT_VERSION.js +1 -1
  125. package/dist/esm/utils/objectAssign.d.ts +1 -1
  126. package/dist/esm/utils/objectAssign.js +3 -3
  127. package/dist/esm/utils/objectDefineProperty.d.ts +0 -1
  128. package/dist/esm/utils/objectDefineProperty.js +1 -1
  129. package/package.json +2 -2
  130. package/dist/cjs/client/shared/getPageContextProxyForUser.js +0 -16
  131. package/dist/cjs/node/runtime/renderPage/executeHookServer.js +0 -11
  132. package/dist/cjs/node/runtime/renderPage/preparePageContextForUserConsumptionServerSide.js +0 -16
  133. package/dist/cjs/shared/hooks/executeHook.js +0 -108
  134. package/dist/cjs/shared/preparePageContextForUserConsumption.js +0 -34
  135. package/dist/cjs/utils/getPublicProxy.js +0 -27
  136. package/dist/esm/client/shared/getPageContextProxyForUser.d.ts +0 -2
  137. package/dist/esm/client/shared/getPageContextProxyForUser.js +0 -14
  138. package/dist/esm/client/shared/preparePageContextForUserConsumptionClientSide.d.ts +0 -12
  139. package/dist/esm/client/shared/preparePageContextForUserConsumptionClientSide.js +0 -44
  140. package/dist/esm/node/runtime/renderPage/executeHookServer.d.ts +0 -13
  141. package/dist/esm/node/runtime/renderPage/executeHookServer.js +0 -9
  142. package/dist/esm/node/runtime/renderPage/preparePageContextForUserConsumptionServerSide.d.ts +0 -24
  143. package/dist/esm/node/runtime/renderPage/preparePageContextForUserConsumptionServerSide.js +0 -14
  144. package/dist/esm/shared/hooks/executeHook.d.ts +0 -34
  145. package/dist/esm/shared/hooks/executeHook.js +0 -106
  146. package/dist/esm/shared/preparePageContextForUserConsumption.d.ts +0 -5
  147. package/dist/esm/shared/preparePageContextForUserConsumption.js +0 -32
  148. package/dist/esm/utils/getPublicProxy.d.ts +0 -2
  149. package/dist/esm/utils/getPublicProxy.js +0 -25
@@ -23,11 +23,12 @@ import type { ResolvedConfig, ViteDevServer } from 'vite';
23
23
  import type { PageConfigUserFriendly } from '../../shared/page-configs/getUserFriendlyConfigs.js';
24
24
  import type { ViteConfigRuntime } from '../plugin/shared/getViteConfigRuntime.js';
25
25
  import type { GlobalContext } from '../../shared/types.js';
26
- type GlobalContextServer = ReturnType<typeof makePublic> & Vike.GlobalContext & Vike.GlobalContextServer;
26
+ type GlobalContextServer = Pick<GlobalContextServerInternal, 'assetsManifest' | 'config' | 'viteConfig' | 'viteConfigRuntime' | 'pages' | 'baseServer' | 'baseAssets' | 'isClientSide'> & Vike.GlobalContext & Vike.GlobalContextServer;
27
27
  type GlobalContextServerInternal = Awaited<ReturnType<typeof setGlobalContext>>;
28
28
  declare function getGlobalContextServerInternal(): Promise<{
29
29
  globalContext: (Record<string, unknown> & {
30
30
  isGlobalContext: true;
31
+ _isOriginalObject: true;
31
32
  _virtualFileExports: unknown;
32
33
  _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
33
34
  _pageConfigs: import("../../__internal/index.js").PageConfig[];
@@ -65,25 +66,9 @@ declare function getGlobalContextServerInternal(): Promise<{
65
66
  isClientSide: false;
66
67
  _pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
67
68
  _onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
68
- isGlobalContext: true;
69
- _virtualFileExports: unknown;
70
- _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
71
- _pageConfigs: import("../../__internal/index.js").PageConfig[];
72
- _pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
73
- _allPageIds: string[];
74
- _userFriendlyConfigsGlobal: PageConfigUserFriendly;
75
- config: import("../../types/index.js").ConfigResolved;
76
- pages: {
77
- [k: string]: PageConfigUserFriendly & ({
78
- route: import("../../shared/page-configs/Config.js").Route;
79
- isErrorPage?: undefined;
80
- } | {
81
- route?: undefined;
82
- isErrorPage: true;
83
- });
84
- };
85
69
  }) | (Record<string, unknown> & {
86
70
  isGlobalContext: true;
71
+ _isOriginalObject: true;
87
72
  _virtualFileExports: unknown;
88
73
  _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
89
74
  _pageConfigs: import("../../__internal/index.js").PageConfig[];
@@ -122,25 +107,9 @@ declare function getGlobalContextServerInternal(): Promise<{
122
107
  isClientSide: false;
123
108
  _pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
124
109
  _onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
125
- isGlobalContext: true;
126
- _virtualFileExports: unknown;
127
- _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
128
- _pageConfigs: import("../../__internal/index.js").PageConfig[];
129
- _pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
130
- _allPageIds: string[];
131
- _userFriendlyConfigsGlobal: PageConfigUserFriendly;
132
- config: import("../../types/index.js").ConfigResolved;
133
- pages: {
134
- [k: string]: PageConfigUserFriendly & ({
135
- route: import("../../shared/page-configs/Config.js").Route;
136
- isErrorPage?: undefined;
137
- } | {
138
- route?: undefined;
139
- isErrorPage: true;
140
- });
141
- };
142
110
  }) | (Record<string, unknown> & {
143
111
  isGlobalContext: true;
112
+ _isOriginalObject: true;
144
113
  _virtualFileExports: unknown;
145
114
  _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
146
115
  _pageConfigs: import("../../__internal/index.js").PageConfig[];
@@ -179,159 +148,7 @@ declare function getGlobalContextServerInternal(): Promise<{
179
148
  isClientSide: false;
180
149
  _pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
181
150
  _onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
182
- isGlobalContext: true;
183
- _virtualFileExports: unknown;
184
- _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
185
- _pageConfigs: import("../../__internal/index.js").PageConfig[];
186
- _pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
187
- _allPageIds: string[];
188
- _userFriendlyConfigsGlobal: PageConfigUserFriendly;
189
- config: import("../../types/index.js").ConfigResolved;
190
- pages: {
191
- [k: string]: PageConfigUserFriendly & ({
192
- route: import("../../shared/page-configs/Config.js").Route;
193
- isErrorPage?: undefined;
194
- } | {
195
- route?: undefined;
196
- isErrorPage: true;
197
- });
198
- };
199
151
  });
200
- globalContext_public: Record<string, unknown> & Pick<{
201
- isGlobalContext: true;
202
- _virtualFileExports: unknown;
203
- _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
204
- _pageConfigs: import("../../__internal/index.js").PageConfig[];
205
- _pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
206
- _allPageIds: string[];
207
- _userFriendlyConfigsGlobal: PageConfigUserFriendly;
208
- config: import("../../types/index.js").ConfigResolved;
209
- pages: {
210
- [k: string]: PageConfigUserFriendly & ({
211
- route: import("../../shared/page-configs/Config.js").Route;
212
- isErrorPage?: undefined;
213
- } | {
214
- route?: undefined;
215
- isErrorPage: true;
216
- });
217
- };
218
- } & ({
219
- _isProduction: false;
220
- _isPrerendering: false;
221
- assetsManifest: null;
222
- _viteDevServer: ViteDevServer;
223
- viteConfig: ResolvedConfig;
224
- viteConfigRuntime: {
225
- root: string;
226
- build: {
227
- outDir: string;
228
- };
229
- _baseViteOriginal: string;
230
- vitePluginServerEntry: {
231
- inject: boolean | undefined;
232
- };
233
- };
234
- baseServer: string;
235
- baseAssets: string;
236
- isClientSide: false;
237
- _pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
238
- _onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
239
- isGlobalContext: true;
240
- _virtualFileExports: unknown;
241
- _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
242
- _pageConfigs: import("../../__internal/index.js").PageConfig[];
243
- _pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
244
- _allPageIds: string[];
245
- _userFriendlyConfigsGlobal: PageConfigUserFriendly;
246
- config: import("../../types/index.js").ConfigResolved;
247
- pages: {
248
- [k: string]: PageConfigUserFriendly & ({
249
- route: import("../../shared/page-configs/Config.js").Route;
250
- isErrorPage?: undefined;
251
- } | {
252
- route?: undefined;
253
- isErrorPage: true;
254
- });
255
- };
256
- } | {
257
- _isPrerendering: true;
258
- viteConfig: ResolvedConfig;
259
- _isProduction: true;
260
- assetsManifest: ViteManifest;
261
- _viteDevServer: null;
262
- viteConfigRuntime: {
263
- root: string;
264
- build: {
265
- outDir: string;
266
- };
267
- _baseViteOriginal: string;
268
- vitePluginServerEntry: {
269
- inject: boolean | undefined;
270
- };
271
- };
272
- _usesClientRouter: boolean;
273
- baseServer: string;
274
- baseAssets: string;
275
- isClientSide: false;
276
- _pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
277
- _onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
278
- isGlobalContext: true;
279
- _virtualFileExports: unknown;
280
- _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
281
- _pageConfigs: import("../../__internal/index.js").PageConfig[];
282
- _pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
283
- _allPageIds: string[];
284
- _userFriendlyConfigsGlobal: PageConfigUserFriendly;
285
- config: import("../../types/index.js").ConfigResolved;
286
- pages: {
287
- [k: string]: PageConfigUserFriendly & ({
288
- route: import("../../shared/page-configs/Config.js").Route;
289
- isErrorPage?: undefined;
290
- } | {
291
- route?: undefined;
292
- isErrorPage: true;
293
- });
294
- };
295
- } | {
296
- _isPrerendering: false;
297
- viteConfig: null;
298
- _isProduction: true;
299
- assetsManifest: ViteManifest;
300
- _viteDevServer: null;
301
- viteConfigRuntime: {
302
- root: string;
303
- build: {
304
- outDir: string;
305
- };
306
- _baseViteOriginal: string;
307
- vitePluginServerEntry: {
308
- inject: boolean | undefined;
309
- };
310
- };
311
- _usesClientRouter: boolean;
312
- baseServer: string;
313
- baseAssets: string;
314
- isClientSide: false;
315
- _pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
316
- _onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
317
- isGlobalContext: true;
318
- _virtualFileExports: unknown;
319
- _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
320
- _pageConfigs: import("../../__internal/index.js").PageConfig[];
321
- _pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
322
- _allPageIds: string[];
323
- _userFriendlyConfigsGlobal: PageConfigUserFriendly;
324
- config: import("../../types/index.js").ConfigResolved;
325
- pages: {
326
- [k: string]: PageConfigUserFriendly & ({
327
- route: import("../../shared/page-configs/Config.js").Route;
328
- isErrorPage?: undefined;
329
- } | {
330
- route?: undefined;
331
- isErrorPage: true;
332
- });
333
- };
334
- }), "pages" | "viteConfig" | "viteConfigRuntime" | "assetsManifest" | "baseServer" | "baseAssets" | "config" | "isClientSide"> & Vike.GlobalContext & Vike.GlobalContextServer;
335
152
  }>;
336
153
  /**
337
154
  * Get runtime information about your app.
@@ -353,141 +170,6 @@ declare function getGlobalContextAsync(isProduction: boolean): Promise<GlobalCon
353
170
  * @deprecated
354
171
  */
355
172
  declare function getGlobalContextSync(): GlobalContext;
356
- declare function makePublic(globalContext: GlobalContextServerInternal): Pick<{
357
- isGlobalContext: true;
358
- _virtualFileExports: unknown;
359
- _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
360
- _pageConfigs: import("../../__internal/index.js").PageConfig[];
361
- _pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
362
- _allPageIds: string[];
363
- _userFriendlyConfigsGlobal: PageConfigUserFriendly;
364
- config: import("../../types/index.js").ConfigResolved;
365
- pages: {
366
- [k: string]: PageConfigUserFriendly & ({
367
- route: import("../../shared/page-configs/Config.js").Route;
368
- isErrorPage?: undefined;
369
- } | {
370
- route?: undefined;
371
- isErrorPage: true;
372
- });
373
- };
374
- } & ({
375
- _isProduction: false;
376
- _isPrerendering: false;
377
- assetsManifest: null;
378
- _viteDevServer: ViteDevServer;
379
- viteConfig: ResolvedConfig;
380
- viteConfigRuntime: {
381
- root: string;
382
- build: {
383
- outDir: string;
384
- };
385
- _baseViteOriginal: string;
386
- vitePluginServerEntry: {
387
- inject: boolean | undefined;
388
- };
389
- };
390
- baseServer: string;
391
- baseAssets: string;
392
- isClientSide: false;
393
- _pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
394
- _onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
395
- isGlobalContext: true;
396
- _virtualFileExports: unknown;
397
- _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
398
- _pageConfigs: import("../../__internal/index.js").PageConfig[];
399
- _pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
400
- _allPageIds: string[];
401
- _userFriendlyConfigsGlobal: PageConfigUserFriendly;
402
- config: import("../../types/index.js").ConfigResolved;
403
- pages: {
404
- [k: string]: PageConfigUserFriendly & ({
405
- route: import("../../shared/page-configs/Config.js").Route;
406
- isErrorPage?: undefined;
407
- } | {
408
- route?: undefined;
409
- isErrorPage: true;
410
- });
411
- };
412
- } | {
413
- _isPrerendering: true;
414
- viteConfig: ResolvedConfig;
415
- _isProduction: true;
416
- assetsManifest: ViteManifest;
417
- _viteDevServer: null;
418
- viteConfigRuntime: {
419
- root: string;
420
- build: {
421
- outDir: string;
422
- };
423
- _baseViteOriginal: string;
424
- vitePluginServerEntry: {
425
- inject: boolean | undefined;
426
- };
427
- };
428
- _usesClientRouter: boolean;
429
- baseServer: string;
430
- baseAssets: string;
431
- isClientSide: false;
432
- _pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
433
- _onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
434
- isGlobalContext: true;
435
- _virtualFileExports: unknown;
436
- _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
437
- _pageConfigs: import("../../__internal/index.js").PageConfig[];
438
- _pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
439
- _allPageIds: string[];
440
- _userFriendlyConfigsGlobal: PageConfigUserFriendly;
441
- config: import("../../types/index.js").ConfigResolved;
442
- pages: {
443
- [k: string]: PageConfigUserFriendly & ({
444
- route: import("../../shared/page-configs/Config.js").Route;
445
- isErrorPage?: undefined;
446
- } | {
447
- route?: undefined;
448
- isErrorPage: true;
449
- });
450
- };
451
- } | {
452
- _isPrerendering: false;
453
- viteConfig: null;
454
- _isProduction: true;
455
- assetsManifest: ViteManifest;
456
- _viteDevServer: null;
457
- viteConfigRuntime: {
458
- root: string;
459
- build: {
460
- outDir: string;
461
- };
462
- _baseViteOriginal: string;
463
- vitePluginServerEntry: {
464
- inject: boolean | undefined;
465
- };
466
- };
467
- _usesClientRouter: boolean;
468
- baseServer: string;
469
- baseAssets: string;
470
- isClientSide: false;
471
- _pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
472
- _onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
473
- isGlobalContext: true;
474
- _virtualFileExports: unknown;
475
- _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
476
- _pageConfigs: import("../../__internal/index.js").PageConfig[];
477
- _pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
478
- _allPageIds: string[];
479
- _userFriendlyConfigsGlobal: PageConfigUserFriendly;
480
- config: import("../../types/index.js").ConfigResolved;
481
- pages: {
482
- [k: string]: PageConfigUserFriendly & ({
483
- route: import("../../shared/page-configs/Config.js").Route;
484
- isErrorPage?: undefined;
485
- } | {
486
- route?: undefined;
487
- isErrorPage: true;
488
- });
489
- };
490
- }), "pages" | "viteConfig" | "viteConfigRuntime" | "assetsManifest" | "baseServer" | "baseAssets" | "config" | "isClientSide">;
491
173
  declare function setGlobalContext_viteDevServer(viteDevServer: ViteDevServer): Promise<void>;
492
174
  declare function setGlobalContext_viteConfig(viteConfig: ResolvedConfig, viteConfigRuntime: ViteConfigRuntime): void;
493
175
  declare function setGlobalContext_isPrerendering(): void;
@@ -507,6 +189,7 @@ declare function assertBuildInfo(buildInfo: unknown): asserts buildInfo is Build
507
189
  declare function updateUserFiles(): Promise<void>;
508
190
  declare function setGlobalContext(virtualFileExports: unknown): Promise<{
509
191
  isGlobalContext: true;
192
+ _isOriginalObject: true;
510
193
  _virtualFileExports: unknown;
511
194
  _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
512
195
  _pageConfigs: import("../../__internal/index.js").PageConfig[];
@@ -544,23 +227,6 @@ declare function setGlobalContext(virtualFileExports: unknown): Promise<{
544
227
  isClientSide: false;
545
228
  _pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
546
229
  _onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
547
- isGlobalContext: true;
548
- _virtualFileExports: unknown;
549
- _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
550
- _pageConfigs: import("../../__internal/index.js").PageConfig[];
551
- _pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
552
- _allPageIds: string[];
553
- _userFriendlyConfigsGlobal: PageConfigUserFriendly;
554
- config: import("../../types/index.js").ConfigResolved;
555
- pages: {
556
- [k: string]: PageConfigUserFriendly & ({
557
- route: import("../../shared/page-configs/Config.js").Route;
558
- isErrorPage?: undefined;
559
- } | {
560
- route?: undefined;
561
- isErrorPage: true;
562
- });
563
- };
564
230
  } | {
565
231
  _isPrerendering: true;
566
232
  viteConfig: ResolvedConfig;
@@ -583,23 +249,6 @@ declare function setGlobalContext(virtualFileExports: unknown): Promise<{
583
249
  isClientSide: false;
584
250
  _pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
585
251
  _onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
586
- isGlobalContext: true;
587
- _virtualFileExports: unknown;
588
- _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
589
- _pageConfigs: import("../../__internal/index.js").PageConfig[];
590
- _pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
591
- _allPageIds: string[];
592
- _userFriendlyConfigsGlobal: PageConfigUserFriendly;
593
- config: import("../../types/index.js").ConfigResolved;
594
- pages: {
595
- [k: string]: PageConfigUserFriendly & ({
596
- route: import("../../shared/page-configs/Config.js").Route;
597
- isErrorPage?: undefined;
598
- } | {
599
- route?: undefined;
600
- isErrorPage: true;
601
- });
602
- };
603
252
  } | {
604
253
  _isPrerendering: false;
605
254
  viteConfig: null;
@@ -622,22 +271,5 @@ declare function setGlobalContext(virtualFileExports: unknown): Promise<{
622
271
  isClientSide: false;
623
272
  _pageRoutes: import("../../shared/route/loadPageRoutes.js").PageRoutes;
624
273
  _onBeforeRouteHook: import("../../shared/hooks/getHook.js").Hook | null;
625
- isGlobalContext: true;
626
- _virtualFileExports: unknown;
627
- _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
628
- _pageConfigs: import("../../__internal/index.js").PageConfig[];
629
- _pageConfigGlobal: import("../../shared/page-configs/PageConfig.js").PageConfigGlobalRuntime;
630
- _allPageIds: string[];
631
- _userFriendlyConfigsGlobal: PageConfigUserFriendly;
632
- config: import("../../types/index.js").ConfigResolved;
633
- pages: {
634
- [k: string]: PageConfigUserFriendly & ({
635
- route: import("../../shared/page-configs/Config.js").Route;
636
- isErrorPage?: undefined;
637
- } | {
638
- route?: undefined;
639
- isErrorPage: true;
640
- });
641
- };
642
274
  })>;
643
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, getPublicProxy, checkType, PROJECT_VERSION } from './utils.js';
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, globalContext_public } = globalObjectTyped;
48
+ const { globalContext } = globalObjectTyped;
48
49
  assertIsDefined(globalContext);
49
- assert(globalContext_public);
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
- const { globalContext_public } = globalObjectTyped;
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 { globalContext_public } = globalObjectTyped;
106
- assertUsage(globalContext_public, getGlobalContextSyncErrMsg);
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 globalContext_public;
112
- }
113
- function makePublic(globalContext) {
114
- const globalContextPublic = getPublicProxy(globalContext, 'globalContext', [
115
- 'assetsManifest',
116
- 'config',
117
- 'viteConfig',
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
- globalContext: Record<string, any>;
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.globalContext);
39
+ const globalContextClient = applyPassToClient(passToClient, pageContext._globalContext);
40
40
  const globalContextClientSerialized = serializeObject(globalContextClient, 'globalContext', passToClient);
41
41
  return globalContextClientSerialized;
42
42
  }