vike 0.4.228-commit-c2f6e1f → 0.4.228-commit-8d90991

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 (115) hide show
  1. package/dist/cjs/__internal/index.js +2 -2
  2. package/dist/cjs/client/client-routing-runtime/globalContext.js +49 -0
  3. package/dist/cjs/client/server-routing-runtime/globalContext.js +41 -0
  4. package/dist/cjs/client/shared/createGetGlobalContext.js +31 -0
  5. package/dist/cjs/client/shared/getJsonSerializedInHtml.js +31 -0
  6. package/dist/cjs/client/shared/utils.js +21 -0
  7. package/dist/cjs/node/plugin/plugins/build/pluginModuleBanner.js +1 -0
  8. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js +5 -0
  9. package/dist/cjs/node/prerender/runPrerender.js +42 -40
  10. package/dist/cjs/node/prerender/utils.js +1 -1
  11. package/dist/cjs/node/runtime/globalContext.js +87 -119
  12. package/dist/cjs/node/runtime/html/injectAssets/getHtmlTags.js +18 -5
  13. package/dist/cjs/node/runtime/html/injectAssets/getViteDevScript.js +2 -2
  14. package/dist/cjs/node/runtime/html/propKeys.js +47 -0
  15. package/dist/cjs/node/runtime/html/renderHtml.js +1 -1
  16. package/dist/cjs/node/runtime/html/{serializePageContextClientSide.js → serializeContext.js} +37 -67
  17. package/dist/cjs/node/runtime/renderPage/analyzePage.js +1 -1
  18. package/dist/cjs/node/runtime/renderPage/createPageContextServerSide.js +14 -13
  19. package/dist/cjs/node/runtime/renderPage/getPageAssets.js +2 -2
  20. package/dist/cjs/node/runtime/renderPage/handleErrorWithoutErrorPage.js +1 -1
  21. package/dist/cjs/node/runtime/renderPage/loadUserFilesServerSide.js +1 -1
  22. package/dist/cjs/node/runtime/renderPage/log404/index.js +1 -1
  23. package/dist/cjs/node/runtime/renderPage/renderPageAlreadyRouted.js +3 -3
  24. package/dist/cjs/node/runtime/renderPage.js +10 -10
  25. package/dist/cjs/node/runtime/utils.js +1 -1
  26. package/dist/cjs/shared/createGlobalContextShared.js +45 -0
  27. package/dist/cjs/shared/createPageContextShared.js +2 -2
  28. package/dist/cjs/{node/runtime/renderPage → shared/hooks}/executeHookGeneric.js +4 -4
  29. package/dist/cjs/shared/htmlElementIds.js +5 -0
  30. package/dist/cjs/utils/PROJECT_VERSION.js +1 -1
  31. package/dist/cjs/utils/catchInfiniteLoop.js +3 -3
  32. package/dist/cjs/utils/getPublicProxy.js +27 -0
  33. package/dist/cjs/utils/objectAssign.js +5 -5
  34. package/dist/cjs/utils/objectReplace.js +4 -4
  35. package/dist/esm/__internal/index.js +2 -2
  36. package/dist/esm/client/client-routing-runtime/{createPageContextClientSide.d.ts → createPageContext.d.ts} +17 -8
  37. package/dist/esm/client/client-routing-runtime/{createPageContextClientSide.js → createPageContext.js} +14 -16
  38. package/dist/esm/client/client-routing-runtime/getPageContextFromHooks.js +1 -1
  39. package/dist/esm/client/client-routing-runtime/globalContext.d.ts +16 -0
  40. package/dist/esm/client/client-routing-runtime/globalContext.js +13 -0
  41. package/dist/esm/client/client-routing-runtime/prefetch.js +1 -1
  42. package/dist/esm/client/client-routing-runtime/renderPageClientSide.js +2 -3
  43. package/dist/esm/client/server-routing-runtime/createPageContextClientSide.d.ts +13 -4
  44. package/dist/esm/client/server-routing-runtime/createPageContextClientSide.js +16 -15
  45. package/dist/esm/client/server-routing-runtime/globalContext.d.ts +13 -0
  46. package/dist/esm/client/server-routing-runtime/globalContext.js +5 -0
  47. package/dist/esm/client/shared/createGetGlobalContext.d.ts +11 -0
  48. package/dist/esm/client/shared/createGetGlobalContext.js +29 -0
  49. package/dist/esm/client/shared/{getPageContextSerializedInHtml.d.ts → getJsonSerializedInHtml.d.ts} +2 -0
  50. package/dist/esm/client/shared/getJsonSerializedInHtml.js +29 -0
  51. package/dist/esm/client/shared/utils.d.ts +3 -0
  52. package/dist/esm/client/shared/utils.js +3 -0
  53. package/dist/esm/node/plugin/plugins/build/pluginModuleBanner.js +1 -0
  54. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js +5 -0
  55. package/dist/esm/node/prerender/runPrerender.d.ts +300 -5
  56. package/dist/esm/node/prerender/runPrerender.js +43 -41
  57. package/dist/esm/node/prerender/utils.d.ts +1 -1
  58. package/dist/esm/node/prerender/utils.js +1 -1
  59. package/dist/esm/node/runtime/globalContext.d.ts +393 -46
  60. package/dist/esm/node/runtime/globalContext.js +88 -120
  61. package/dist/esm/node/runtime/html/injectAssets/getHtmlTags.js +18 -5
  62. package/dist/esm/node/runtime/html/injectAssets/getViteDevScript.js +2 -2
  63. package/dist/esm/node/runtime/html/injectAssets.d.ts +1 -1
  64. package/dist/esm/node/runtime/html/propKeys.d.ts +8 -0
  65. package/dist/esm/node/runtime/html/propKeys.js +45 -0
  66. package/dist/esm/node/runtime/html/renderHtml.js +1 -1
  67. package/dist/esm/node/runtime/html/{serializePageContextClientSide.d.ts → serializeContext.d.ts} +7 -6
  68. package/dist/esm/node/runtime/html/{serializePageContextClientSide.js → serializeContext.js} +36 -67
  69. package/dist/esm/node/runtime/renderPage/analyzePage.js +1 -1
  70. package/dist/esm/node/runtime/renderPage/createPageContextServerSide.d.ts +95 -35
  71. package/dist/esm/node/runtime/renderPage/createPageContextServerSide.js +14 -13
  72. package/dist/esm/node/runtime/renderPage/executeOnRenderHtmlHook.d.ts +1 -1
  73. package/dist/esm/node/runtime/renderPage/getPageAssets.js +2 -2
  74. package/dist/esm/node/runtime/renderPage/handleErrorWithoutErrorPage.js +1 -1
  75. package/dist/esm/node/runtime/renderPage/loadUserFilesServerSide.js +1 -1
  76. package/dist/esm/node/runtime/renderPage/log404/index.js +1 -1
  77. package/dist/esm/node/runtime/renderPage/preparePageContextForUserConsumptionServerSide.d.ts +2 -2
  78. package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.d.ts +186 -64
  79. package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.js +3 -3
  80. package/dist/esm/node/runtime/renderPage.d.ts +95 -34
  81. package/dist/esm/node/runtime/renderPage.js +10 -10
  82. package/dist/esm/node/runtime/utils.d.ts +1 -1
  83. package/dist/esm/node/runtime/utils.js +1 -1
  84. package/dist/esm/shared/VikeNamespace.d.ts +32 -10
  85. package/dist/esm/shared/createGlobalContextShared.d.ts +25 -0
  86. package/dist/esm/shared/createGlobalContextShared.js +43 -0
  87. package/dist/esm/shared/createPageContextShared.js +2 -2
  88. package/dist/esm/shared/hooks/executeHookGeneric.d.ts +8 -0
  89. package/dist/esm/{node/runtime/renderPage → shared/hooks}/executeHookGeneric.js +4 -4
  90. package/dist/esm/shared/htmlElementIds.d.ts +2 -0
  91. package/dist/esm/shared/htmlElementIds.js +2 -0
  92. package/dist/esm/shared/page-configs/Config.d.ts +7 -2
  93. package/dist/esm/shared/types.d.ts +20 -13
  94. package/dist/esm/types/index.d.ts +1 -5
  95. package/dist/esm/utils/PROJECT_VERSION.d.ts +1 -1
  96. package/dist/esm/utils/PROJECT_VERSION.js +1 -1
  97. package/dist/esm/utils/catchInfiniteLoop.js +4 -4
  98. package/dist/esm/utils/getGlobalObject.d.ts +1 -1
  99. package/dist/esm/utils/getPublicProxy.d.ts +2 -0
  100. package/dist/esm/utils/getPublicProxy.js +25 -0
  101. package/dist/esm/utils/objectAssign.d.ts +1 -1
  102. package/dist/esm/utils/objectAssign.js +5 -5
  103. package/dist/esm/utils/objectReplace.d.ts +1 -1
  104. package/dist/esm/utils/objectReplace.js +4 -4
  105. package/package.json +2 -2
  106. package/dist/cjs/client/client-routing-runtime/globalContextClientSide.js +0 -10
  107. package/dist/cjs/client/client-routing-runtime/onLoad.js +0 -10
  108. package/dist/cjs/client/client-routing-runtime/utils.js +0 -43
  109. package/dist/cjs/utils/makePublicCopy.js +0 -32
  110. package/dist/esm/client/client-routing-runtime/globalContextClientSide.d.ts +0 -5
  111. package/dist/esm/client/client-routing-runtime/globalContextClientSide.js +0 -8
  112. package/dist/esm/client/shared/getPageContextSerializedInHtml.js +0 -20
  113. package/dist/esm/node/runtime/renderPage/executeHookGeneric.d.ts +0 -8
  114. package/dist/esm/utils/makePublicCopy.d.ts +0 -3
  115. package/dist/esm/utils/makePublicCopy.js +0 -30
@@ -4,9 +4,9 @@ import { assert } from './assert.js';
4
4
  // - With type inference
5
5
  // - Preserves property descriptors, which we need for preserving the getters of getPageContextUrlComputed()
6
6
  function objectAssign(obj, objAddendum, objAddendumCanBePageContextObject) {
7
- if (objAddendum) {
8
- if (!objAddendumCanBePageContextObject)
9
- assert(!('_isPageContextObject' in objAddendum));
10
- Object.defineProperties(obj, Object.getOwnPropertyDescriptors(objAddendum));
11
- }
7
+ if (!objAddendum)
8
+ return;
9
+ if (!objAddendumCanBePageContextObject)
10
+ assert(!('_isPageContextObject' in objAddendum));
11
+ Object.defineProperties(obj, Object.getOwnPropertyDescriptors(objAddendum));
12
12
  }
@@ -1 +1 @@
1
- export declare function objectReplace(obj: object, objNew: object, except?: string[]): void;
1
+ export declare function objectReplace<T extends object>(objOld: T, objNew: T, except?: string[]): void;
@@ -1,6 +1,6 @@
1
- export function objectReplace(obj, objNew, except) {
2
- Object.keys(obj)
1
+ export function objectReplace(objOld, objNew, except) {
2
+ Object.keys(objOld)
3
3
  .filter((key) => !except?.includes(key))
4
- .forEach((key) => delete obj[key]);
5
- Object.assign(obj, objNew);
4
+ .forEach((key) => delete objOld[key]);
5
+ Object.defineProperties(objOld, Object.getOwnPropertyDescriptors(objNew));
6
6
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vike",
3
- "version": "0.4.228-commit-c2f6e1f",
3
+ "version": "0.4.228-commit-8d90991",
4
4
  "repository": "https://github.com/vikejs/vike",
5
5
  "exports": {
6
6
  "./server": {
@@ -255,7 +255,7 @@
255
255
  "@types/source-map-support": "^0.5.10",
256
256
  "react-streaming": "^0.3.47",
257
257
  "rimraf": "^5.0.5",
258
- "typescript": "^5.8.2",
258
+ "typescript": "^5.8.3",
259
259
  "vite": "^6.2.5"
260
260
  },
261
261
  "scripts": {
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getGlobalContext = getGlobalContext;
4
- const utils_js_1 = require("./utils.js");
5
- const globalObject = (0, utils_js_1.getGlobalObject)('client-routing-runtime/globalContextClientSide.ts', {});
6
- function getGlobalContext() {
7
- if (!globalObject.globalContext)
8
- globalObject.globalContext = {};
9
- return globalObject.globalContext;
10
- }
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.onLoad = onLoad;
4
- const assertIsBrowser_js_1 = require("../../utils/assertIsBrowser.js");
5
- const assertRoutingType_js_1 = require("../../utils/assertRoutingType.js");
6
- function onLoad() {
7
- (0, assertIsBrowser_js_1.assertIsBrowser)();
8
- // Ensure we don't bloat the Server Routing runtime with Client Routing utils
9
- (0, assertRoutingType_js_1.assertClientRouting)();
10
- }
@@ -1,43 +0,0 @@
1
- "use strict";
2
- // Utils needed by Vike's client runtime (with Client Routing)
3
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
- if (k2 === undefined) k2 = k;
5
- var desc = Object.getOwnPropertyDescriptor(m, k);
6
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
- desc = { enumerable: true, get: function() { return m[k]; } };
8
- }
9
- Object.defineProperty(o, k2, desc);
10
- }) : (function(o, m, k, k2) {
11
- if (k2 === undefined) k2 = k;
12
- o[k2] = m[k];
13
- }));
14
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
16
- };
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- // We call onLoad() here so that it's called even when only a subset of the runtime is loaded. (Making the assert() calls inside onLoad() a lot stronger.)
19
- const onLoad_js_1 = require("./onLoad.js");
20
- (0, onLoad_js_1.onLoad)();
21
- __exportStar(require("../../utils/assert.js"), exports);
22
- __exportStar(require("../../utils/assertSingleInstance.js"), exports);
23
- __exportStar(require("../../utils/getGlobalObject.js"), exports);
24
- __exportStar(require("../../utils/hasProp.js"), exports);
25
- __exportStar(require("../../utils/isBrowser.js"), exports);
26
- __exportStar(require("../../utils/isCallable.js"), exports);
27
- __exportStar(require("../../utils/isObject.js"), exports);
28
- __exportStar(require("../../utils/isPlainObject.js"), exports);
29
- __exportStar(require("../../utils/isReact.js"), exports);
30
- __exportStar(require("../../utils/isSameErrorMessage.js"), exports);
31
- __exportStar(require("../../utils/objectAssign.js"), exports);
32
- __exportStar(require("../../utils/parseUrl.js"), exports);
33
- __exportStar(require("../../utils/PromiseType.js"), exports);
34
- __exportStar(require("../../utils/redirectHard.js"), exports);
35
- __exportStar(require("../../utils/sleep.js"), exports);
36
- __exportStar(require("../../utils/slice.js"), exports);
37
- __exportStar(require("../../utils/throttle.js"), exports);
38
- __exportStar(require("../../utils/assertRoutingType.js"), exports);
39
- __exportStar(require("../../utils/onPageVisibilityChange.js"), exports);
40
- __exportStar(require("../../utils/augmentType.js"), exports);
41
- __exportStar(require("../../utils/PROJECT_VERSION.js"), exports);
42
- __exportStar(require("../../utils/genPromise.js"), exports);
43
- __exportStar(require("../../utils/catchInfiniteLoop.js"), exports);
@@ -1,32 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.makePublicCopy = makePublicCopy;
4
- const assert_js_1 = require("./assert.js");
5
- const objectKeys_js_1 = require("./objectKeys.js");
6
- /** Prefix internal properties with `_` + show warning */
7
- function makePublicCopy(obj, objName, propsPublic, propsInternalNoWarning) {
8
- const objPublic = {};
9
- (0, objectKeys_js_1.objectKeys)(obj).forEach((key) => {
10
- const val = obj[key];
11
- if (propsPublic.includes(key)) {
12
- objPublic[key] = val;
13
- }
14
- else {
15
- const keyPublic = key.startsWith('_') ? key : `_${key}`;
16
- if (propsInternalNoWarning?.includes(key)) {
17
- // @ts-expect-error
18
- objPublic[keyPublic] = val;
19
- }
20
- else {
21
- Object.defineProperty(objPublic, keyPublic, {
22
- enumerable: true,
23
- get() {
24
- (0, assert_js_1.assertWarning)(false, `Using internal ${objName}.${keyPublic} which may break in any minor version update. Reach out on GitHub and elaborate your use case so that the Vike team can add official support for your use case.`, { onlyOnce: true });
25
- return val;
26
- }
27
- });
28
- }
29
- }
30
- });
31
- return objPublic;
32
- }
@@ -1,5 +0,0 @@
1
- export { getGlobalContext };
2
- export type { GlobalContextPublicClientSide };
3
- type GlobalContex = Record<string, unknown>;
4
- type GlobalContextPublicClientSide = GlobalContex;
5
- declare function getGlobalContext(): GlobalContextPublicClientSide;
@@ -1,8 +0,0 @@
1
- export { getGlobalContext };
2
- import { getGlobalObject } from './utils.js';
3
- const globalObject = getGlobalObject('client-routing-runtime/globalContextClientSide.ts', {});
4
- function getGlobalContext() {
5
- if (!globalObject.globalContext)
6
- globalObject.globalContext = {};
7
- return globalObject.globalContext;
8
- }
@@ -1,20 +0,0 @@
1
- import { parse } from '@brillout/json-serializer/parse';
2
- import { hasProp, assert, assertUsage } from '../server-routing-runtime/utils.js';
3
- export { getPageContextSerializedInHtml };
4
- function getPageContextSerializedInHtml() {
5
- // elem should exist because:
6
- // 1. <script id="vike_pageContext" type="application/json"> appears before the <script> that loads Vike's client runtime (which includes this file)
7
- // 2. <script id="vike_pageContext" type="application/json"> is neither async nor defer
8
- // See https://github.com/vikejs/vike/pull/1271
9
- const id = 'vike_pageContext';
10
- const elem = document.getElementById(id);
11
- assertUsage(elem,
12
- // It seems like it can be missing because of malformed HTML: https://github.com/vikejs/vike/issues/913
13
- `Couldn't find #${id} (which Vike automatically injects in the HTML): make sure it exists (i.e. don't remove it and make sure your HTML isn't malformed)`);
14
- const pageContextJson = elem.textContent;
15
- assert(pageContextJson);
16
- const pageContextSerializedInHtml = parse(pageContextJson);
17
- assert(hasProp(pageContextSerializedInHtml, 'pageId', 'string'));
18
- assert(hasProp(pageContextSerializedInHtml, 'routeParams', 'string{}'));
19
- return pageContextSerializedInHtml;
20
- }
@@ -1,8 +0,0 @@
1
- export { executeHookGeneric };
2
- export { executeHookGenericGlobalCumulative };
3
- import type { PageConfigUserFriendlyOld } from '../../../shared/getPageFiles.js';
4
- import { type HookName } from '../../../shared/hooks/getHook.js';
5
- import type { HookNameGlobal } from '../../../shared/page-configs/Config.js';
6
- import type { PageConfigGlobalRuntime } from '../../../shared/page-configs/PageConfig.js';
7
- declare function executeHookGeneric(hookName: HookName, pageContext: PageConfigUserFriendlyOld): Promise<void>;
8
- declare function executeHookGenericGlobalCumulative(hookName: HookNameGlobal, pageConfigGlobal: PageConfigGlobalRuntime, pageContext: object): Promise<void>;
@@ -1,3 +0,0 @@
1
- export { makePublicCopy };
2
- /** Prefix internal properties with `_` + show warning */
3
- declare function makePublicCopy<Obj extends Record<string, unknown>, PropsPublic extends readonly (keyof Obj)[]>(obj: Obj, objName: string, propsPublic: PropsPublic, propsInternalNoWarning?: (keyof Obj)[]): Pick<Obj, PropsPublic[number]>;
@@ -1,30 +0,0 @@
1
- export { makePublicCopy };
2
- import { assertWarning } from './assert.js';
3
- import { objectKeys } from './objectKeys.js';
4
- /** Prefix internal properties with `_` + show warning */
5
- function makePublicCopy(obj, objName, propsPublic, propsInternalNoWarning) {
6
- const objPublic = {};
7
- objectKeys(obj).forEach((key) => {
8
- const val = obj[key];
9
- if (propsPublic.includes(key)) {
10
- objPublic[key] = val;
11
- }
12
- else {
13
- const keyPublic = key.startsWith('_') ? key : `_${key}`;
14
- if (propsInternalNoWarning?.includes(key)) {
15
- // @ts-expect-error
16
- objPublic[keyPublic] = val;
17
- }
18
- else {
19
- Object.defineProperty(objPublic, keyPublic, {
20
- enumerable: true,
21
- get() {
22
- assertWarning(false, `Using internal ${objName}.${keyPublic} which may break in any minor version update. Reach out on GitHub and elaborate your use case so that the Vike team can add official support for your use case.`, { onlyOnce: true });
23
- return val;
24
- }
25
- });
26
- }
27
- }
28
- });
29
- return objPublic;
30
- }