vike 0.4.218-commit-01a099d → 0.4.218-commit-85af52a
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/__internal/index.js +2 -2
- package/dist/cjs/node/api/build.js +1 -1
- package/dist/cjs/node/api/context.js +5 -1
- package/dist/cjs/node/api/prepareViteApiCall.js +23 -4
- package/dist/cjs/node/cli/entry.js +2 -0
- package/dist/cjs/node/plugin/index.js +1 -1
- package/dist/cjs/node/plugin/plugins/autoFullBuild.js +1 -1
- package/dist/cjs/node/plugin/plugins/baseUrls.js +3 -10
- package/dist/cjs/node/plugin/plugins/buildEntry/index.js +2 -2
- package/dist/cjs/node/plugin/plugins/commonConfig.js +14 -3
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js +1 -0
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +1 -3
- package/dist/cjs/node/prerender/runPrerender.js +1 -23
- package/dist/cjs/node/runtime/globalContext.js +36 -12
- package/dist/cjs/node/runtime/utils.js +1 -0
- package/dist/cjs/utils/PROJECT_VERSION.js +1 -1
- package/dist/cjs/utils/debug.js +11 -6
- package/dist/cjs/utils/objectReplace.js +9 -0
- package/dist/esm/__internal/index.d.ts +1 -1
- package/dist/esm/__internal/index.js +1 -1
- package/dist/esm/node/api/build.js +1 -1
- package/dist/esm/node/api/context.d.ts +3 -1
- package/dist/esm/node/api/context.js +6 -2
- package/dist/esm/node/api/prepareViteApiCall.js +26 -7
- package/dist/esm/node/cli/entry.js +2 -0
- package/dist/esm/node/plugin/index.js +1 -1
- package/dist/esm/node/plugin/plugins/autoFullBuild.js +1 -1
- package/dist/esm/node/plugin/plugins/baseUrls.d.ts +1 -1
- package/dist/esm/node/plugin/plugins/baseUrls.js +4 -11
- package/dist/esm/node/plugin/plugins/buildEntry/index.js +2 -2
- package/dist/esm/node/plugin/plugins/commonConfig.d.ts +5 -0
- package/dist/esm/node/plugin/plugins/commonConfig.js +14 -3
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.d.ts +1 -1
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js +1 -0
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.d.ts +5 -3
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +1 -3
- package/dist/esm/node/prerender/runPrerender.d.ts +1 -1
- package/dist/esm/node/prerender/runPrerender.js +1 -23
- package/dist/esm/node/runtime/globalContext.d.ts +4 -2
- package/dist/esm/node/runtime/globalContext.js +37 -13
- package/dist/esm/node/runtime/utils.d.ts +1 -0
- package/dist/esm/node/runtime/utils.js +1 -0
- package/dist/esm/shared/page-configs/Config.d.ts +7 -1
- package/dist/esm/utils/PROJECT_VERSION.d.ts +1 -1
- package/dist/esm/utils/PROJECT_VERSION.js +1 -1
- package/dist/esm/utils/debug.d.ts +1 -1
- package/dist/esm/utils/debug.js +11 -6
- package/dist/esm/utils/objectReplace.d.ts +1 -0
- package/dist/esm/utils/objectReplace.js +6 -0
- package/dist/esm/utils/projectInfo.d.ts +1 -1
- package/package.json +2 -2
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.setGlobalContext_buildEntry = void 0;
|
|
4
4
|
exports.route = route;
|
|
5
5
|
exports.getPagesAndRoutes = getPagesAndRoutes;
|
|
6
6
|
exports.getMiddlewares = getMiddlewares;
|
|
7
7
|
// Internals needed by Vike
|
|
8
8
|
var globalContext_js_1 = require("../node/runtime/globalContext.js");
|
|
9
|
-
Object.defineProperty(exports, "
|
|
9
|
+
Object.defineProperty(exports, "setGlobalContext_buildEntry", { enumerable: true, get: function () { return globalContext_js_1.setGlobalContext_buildEntry; } });
|
|
10
10
|
const index_js_1 = require("../shared/route/index.js");
|
|
11
11
|
const getPageFiles_js_1 = require("../shared/getPageFiles/getPageFiles.js");
|
|
12
12
|
const globalContext_js_2 = require("../node/runtime/globalContext.js");
|
|
@@ -51,7 +51,7 @@ async function build(options = {}) {
|
|
|
51
51
|
// Pre-render
|
|
52
52
|
if ((0, isPrerenderEnabled_js_1.isPrerenderEnabled)(vikeConfigGlobal)) {
|
|
53
53
|
const { runPrerenderFromAutoRun } = await Promise.resolve().then(() => __importStar(require('../prerender/runPrerender.js')));
|
|
54
|
-
await runPrerenderFromAutoRun(viteConfigEnhanced
|
|
54
|
+
await runPrerenderFromAutoRun(viteConfigEnhanced);
|
|
55
55
|
}
|
|
56
56
|
return {
|
|
57
57
|
/* We don't return `viteConfig` because `viteConfigEnhanced` is `InlineConfig` not `ResolvedConfig`
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isVikeCliOrApi = isVikeCliOrApi;
|
|
4
3
|
exports.setOperation = setOperation;
|
|
4
|
+
exports.clearOperation = clearOperation;
|
|
5
|
+
exports.isVikeCliOrApi = isVikeCliOrApi;
|
|
5
6
|
const utils_js_1 = require("./utils.js");
|
|
6
7
|
const globalObject = (0, utils_js_1.getGlobalObject)('context.ts', {
|
|
7
8
|
apiOperation: undefined
|
|
@@ -18,3 +19,6 @@ function setOperation(operation) {
|
|
|
18
19
|
(0, utils_js_1.assert)(!globalObject.apiOperation);
|
|
19
20
|
globalObject.apiOperation = operation;
|
|
20
21
|
}
|
|
22
|
+
function clearOperation() {
|
|
23
|
+
globalObject.apiOperation = undefined;
|
|
24
|
+
}
|
|
@@ -47,20 +47,39 @@ const getVikeConfig_js_1 = require("../plugin/plugins/importUserCode/v1-design/g
|
|
|
47
47
|
const path_1 = __importDefault(require("path"));
|
|
48
48
|
const utils_js_1 = require("./utils.js");
|
|
49
49
|
const picocolors_1 = __importDefault(require("@brillout/picocolors"));
|
|
50
|
+
const globalContext_js_1 = require("../runtime/globalContext.js");
|
|
50
51
|
const globalObject = (0, utils_js_1.getGlobalObject)('prepareViteApiCall.ts', {});
|
|
51
52
|
async function prepareViteApiCall(viteConfig, operation) {
|
|
53
|
+
clear();
|
|
52
54
|
(0, context_js_1.setOperation)(operation);
|
|
53
55
|
return enhanceViteConfig(viteConfig, operation);
|
|
54
56
|
}
|
|
57
|
+
// For subsequent API calls, e.g. calling prerender() after build()
|
|
58
|
+
function clear() {
|
|
59
|
+
(0, context_js_1.clearOperation)();
|
|
60
|
+
(0, globalContext_js_1.clearGlobalContext)();
|
|
61
|
+
}
|
|
55
62
|
async function enhanceViteConfig(viteConfig, operation) {
|
|
56
|
-
const
|
|
57
|
-
await assertViteRoot2(root, viteConfigEnhanced, operation);
|
|
58
|
-
const
|
|
63
|
+
const viteInfo = await getInfoFromVite(viteConfig, operation);
|
|
64
|
+
await assertViteRoot2(viteInfo.root, viteInfo.viteConfigEnhanced, operation);
|
|
65
|
+
const vikeConfig = await (0, getVikeConfig_js_1.getVikeConfig2)(viteInfo.root, operation === 'dev', viteInfo.vikeVitePluginOptions);
|
|
66
|
+
const viteConfigEnhanced = addViteSettingsSetByUser(viteInfo.viteConfigEnhanced, vikeConfig);
|
|
59
67
|
return {
|
|
60
68
|
viteConfigEnhanced,
|
|
61
|
-
vikeConfigGlobal
|
|
69
|
+
vikeConfigGlobal: vikeConfig.vikeConfigGlobal
|
|
62
70
|
};
|
|
63
71
|
}
|
|
72
|
+
function addViteSettingsSetByUser(viteConfigEnhanced, vikeConfig) {
|
|
73
|
+
const { global } = vikeConfig.vikeConfigNew;
|
|
74
|
+
const viteConfigs = global.from.configsCumulative.vite;
|
|
75
|
+
if (!viteConfigs)
|
|
76
|
+
return viteConfigEnhanced;
|
|
77
|
+
viteConfigs.values.forEach((v) => {
|
|
78
|
+
(0, utils_js_1.assertUsage)((0, utils_js_1.isObject)(v.value), `${v.definedAt} should be an object`);
|
|
79
|
+
viteConfigEnhanced = (0, vite_1.mergeConfig)(v.value, viteConfigEnhanced ?? {});
|
|
80
|
+
});
|
|
81
|
+
return viteConfigEnhanced;
|
|
82
|
+
}
|
|
64
83
|
async function getViteRoot(operation) {
|
|
65
84
|
if (!globalObject.root)
|
|
66
85
|
await getInfoFromVite(undefined, operation);
|
|
@@ -53,7 +53,7 @@ function plugin(vikeVitePluginOptions = {}) {
|
|
|
53
53
|
(0, suppressRollupWarning_js_1.suppressRollupWarning)(),
|
|
54
54
|
...(0, setGlobalContext_js_1.setGlobalContext)(),
|
|
55
55
|
...(0, index_js_3.buildEntry)(),
|
|
56
|
-
(0, baseUrls_js_1.baseUrls)(
|
|
56
|
+
(0, baseUrls_js_1.baseUrls)(),
|
|
57
57
|
(0, envVars_js_1.envVarsPlugin)(),
|
|
58
58
|
(0, fileEnv_js_1.fileEnv)(),
|
|
59
59
|
(0, workaroundCssModuleHmr_js_1.workaroundCssModuleHmr)(),
|
|
@@ -97,7 +97,7 @@ async function triggerFullBuild(config, vikeConfigGlobal, bundle) {
|
|
|
97
97
|
process.exit(1);
|
|
98
98
|
}
|
|
99
99
|
if ((0, isPrerenderEnabled_js_1.isPrerenderEnabled)(vikeConfigGlobal)) {
|
|
100
|
-
await (0, runPrerender_js_1.runPrerenderFromAutoRun)(configInline
|
|
100
|
+
await (0, runPrerender_js_1.runPrerenderFromAutoRun)(configInline);
|
|
101
101
|
forceExit = true;
|
|
102
102
|
}
|
|
103
103
|
}
|
|
@@ -4,22 +4,16 @@ exports.baseUrls = baseUrls;
|
|
|
4
4
|
const resolveBase_js_1 = require("../../shared/resolveBase.js");
|
|
5
5
|
const utils_js_1 = require("../utils.js");
|
|
6
6
|
const getVikeConfig_js_1 = require("./importUserCode/v1-design/getVikeConfig.js");
|
|
7
|
-
|
|
8
|
-
function baseUrls(vikeVitePluginOptions) {
|
|
7
|
+
function baseUrls() {
|
|
9
8
|
let basesResolved;
|
|
10
|
-
let root;
|
|
11
9
|
return {
|
|
12
10
|
name: 'vike:baseUrls',
|
|
13
11
|
enforce: 'post',
|
|
14
|
-
async config(config
|
|
12
|
+
async config(config) {
|
|
15
13
|
const isDev = config._isDev;
|
|
16
14
|
(0, utils_js_1.assert)(typeof isDev === 'boolean');
|
|
17
|
-
const operation = env.command === 'build' ? 'build' : env.isPreview ? 'preview' : 'dev';
|
|
18
|
-
root = config.root ? (0, prepareViteApiCall_js_1.normalizeViteRoot)(config.root) : await (0, prepareViteApiCall_js_1.getViteRoot)(operation);
|
|
19
|
-
(0, utils_js_1.assert)(root);
|
|
20
15
|
const baseViteOriginal = config.base ?? '/__UNSET__'; // '/__UNSET__' because Vite resolves `_baseViteOriginal: null` to `undefined`
|
|
21
|
-
|
|
22
|
-
basesResolved = (0, resolveBase_js_1.resolveBase)(baseViteOriginal, vikeConfig.vikeConfigGlobal.baseServer, vikeConfig.vikeConfigGlobal.baseAssets);
|
|
16
|
+
basesResolved = (0, resolveBase_js_1.resolveBase)(baseViteOriginal, config.vikeTmp.vikeConfigGlobal.baseServer, config.vikeTmp.vikeConfigGlobal.baseAssets);
|
|
23
17
|
// We cannot define these in configResolved() because Vite picks up the env variables before any configResolved() hook is called
|
|
24
18
|
process.env.BASE_SERVER = basesResolved.baseServer;
|
|
25
19
|
process.env.BASE_ASSETS = basesResolved.baseAssets;
|
|
@@ -34,7 +28,6 @@ function baseUrls(vikeVitePluginOptions) {
|
|
|
34
28
|
};
|
|
35
29
|
},
|
|
36
30
|
async configResolved(config) {
|
|
37
|
-
(0, prepareViteApiCall_js_1.assertViteRoot)(root, config);
|
|
38
31
|
const vikeConfig = await (0, getVikeConfig_js_1.getVikeConfig)(config);
|
|
39
32
|
const basesResolved2 = (0, resolveBase_js_1.resolveBaseFromResolvedConfig)(vikeConfig.vikeConfigGlobal.baseServer, vikeConfig.vikeConfigGlobal.baseAssets, config);
|
|
40
33
|
(0, utils_js_1.assert)(basesResolved2.baseServer === basesResolved.baseServer);
|
|
@@ -43,13 +43,13 @@ function getServerProductionEntryCode(config, vikeConfigGlobal) {
|
|
|
43
43
|
const vikeManifest = (0, getVikeManifest_js_1.getVikeManifest)(vikeConfigGlobal, config);
|
|
44
44
|
// Let's eventually simplify and move everything to a single virtual module
|
|
45
45
|
const importerCode = [
|
|
46
|
-
` import {
|
|
46
|
+
` import { setGlobalContext_buildEntry } from '${importPath}';`,
|
|
47
47
|
` import * as pageFiles from '${virtualFileImportUserCode_js_1.virtualFileIdImportUserCodeServer}';`,
|
|
48
48
|
` {`,
|
|
49
49
|
// We first set the values to a variable because of a Rollup bug, and this workaround doesn't work: https://github.com/vikejs/vike/commit/d5f3a4f7aae5a8bc44192e6cbb2bcb9007be188d
|
|
50
50
|
` const assetsManifest = ${ASSETS_MAP};`,
|
|
51
51
|
` const pluginManifest = ${JSON.stringify(vikeManifest, null, 2)};`,
|
|
52
|
-
'
|
|
52
|
+
' setGlobalContext_buildEntry({',
|
|
53
53
|
` pageFiles,`,
|
|
54
54
|
` assetsManifest,`,
|
|
55
55
|
` pluginManifest,`,
|
|
@@ -14,6 +14,8 @@ const assertResolveAlias_js_1 = require("./commonConfig/assertResolveAlias.js");
|
|
|
14
14
|
const getEnvVarObject_js_1 = require("../shared/getEnvVarObject.js");
|
|
15
15
|
const isViteCliCall_js_1 = require("../shared/isViteCliCall.js");
|
|
16
16
|
const context_js_1 = require("../../api/context.js");
|
|
17
|
+
const getVikeConfig_js_1 = require("./importUserCode/v1-design/getVikeConfig.js");
|
|
18
|
+
const prepareViteApiCall_js_1 = require("../../api/prepareViteApiCall.js");
|
|
17
19
|
const pluginName = 'vike:commonConfig';
|
|
18
20
|
function commonConfig(vikeVitePluginOptions) {
|
|
19
21
|
return [
|
|
@@ -22,10 +24,18 @@ function commonConfig(vikeVitePluginOptions) {
|
|
|
22
24
|
enforce: 'pre',
|
|
23
25
|
config: {
|
|
24
26
|
order: 'pre',
|
|
25
|
-
handler(
|
|
27
|
+
async handler(configFromUser, env) {
|
|
28
|
+
const isDev = (0, utils_js_1.isDevCheck)(env);
|
|
29
|
+
const operation = env.command === 'build' ? 'build' : env.isPreview ? 'preview' : 'dev';
|
|
30
|
+
const root = configFromUser.root ? (0, prepareViteApiCall_js_1.normalizeViteRoot)(configFromUser.root) : await (0, prepareViteApiCall_js_1.getViteRoot)(operation);
|
|
31
|
+
(0, utils_js_1.assert)(root);
|
|
32
|
+
const vikeConfig = await (0, getVikeConfig_js_1.getVikeConfig2)(root, isDev, vikeVitePluginOptions);
|
|
26
33
|
return {
|
|
27
|
-
_isDev:
|
|
28
|
-
|
|
34
|
+
_isDev: isDev,
|
|
35
|
+
_root: root,
|
|
36
|
+
_vikeVitePluginOptions: vikeVitePluginOptions,
|
|
37
|
+
vike: vikeConfig.vikeConfigNew,
|
|
38
|
+
vikeTmp: vikeConfig
|
|
29
39
|
};
|
|
30
40
|
}
|
|
31
41
|
}
|
|
@@ -33,6 +43,7 @@ function commonConfig(vikeVitePluginOptions) {
|
|
|
33
43
|
{
|
|
34
44
|
name: pluginName,
|
|
35
45
|
configResolved(config) {
|
|
46
|
+
(0, prepareViteApiCall_js_1.assertViteRoot)(config._root, config);
|
|
36
47
|
assertSingleInstance(config);
|
|
37
48
|
(0, require_shim_1.installRequireShim_setUserRootDir)(config.root);
|
|
38
49
|
}
|
|
@@ -146,6 +146,7 @@ const configDefinitionsBuiltInGlobal = {
|
|
|
146
146
|
eager: true
|
|
147
147
|
},
|
|
148
148
|
prerender: { env: { config: true } },
|
|
149
|
+
vite: { env: { config: true }, cumulative: true },
|
|
149
150
|
disableAutoFullBuild: { env: { config: true } },
|
|
150
151
|
includeAssetsImportedByServer: { env: { config: true } },
|
|
151
152
|
baseAssets: { env: { config: true } },
|
|
@@ -458,16 +458,14 @@ async function getGlobalConfigs(interfaceFilesByLocationId, userRootDir, importe
|
|
|
458
458
|
const configValueSource = sources[0];
|
|
459
459
|
if (!configValueSource)
|
|
460
460
|
return;
|
|
461
|
+
pageConfigGlobal.configValueSources[configName] = sources;
|
|
461
462
|
if (configName === 'onBeforeRoute' || configName === 'onPrerenderStart') {
|
|
462
463
|
(0, utils_js_1.assert)(!('value' in configValueSource));
|
|
463
|
-
pageConfigGlobal.configValueSources[configName] = [configValueSource];
|
|
464
464
|
}
|
|
465
465
|
else {
|
|
466
466
|
(0, utils_js_1.assert)('value' in configValueSource);
|
|
467
467
|
if (configName === 'prerender' && typeof configValueSource.value === 'boolean')
|
|
468
468
|
return;
|
|
469
|
-
const { filePathToShowToUser } = configValueSource.definedAtFilePath;
|
|
470
|
-
(0, utils_js_1.assertWarning)(false, `Being able to define config ${picocolors_1.default.cyan(configName)} in ${filePathToShowToUser} is experimental and will likely be removed. Define the config ${picocolors_1.default.cyan(configName)} in Vike's Vite plugin options instead.`, { onlyOnce: true });
|
|
471
469
|
pageConfigGlobalValues[configName] = configValueSource.value;
|
|
472
470
|
}
|
|
473
471
|
}));
|
|
@@ -83,7 +83,7 @@ async function runPrerenderFromCLIPrerenderCommand() {
|
|
|
83
83
|
}
|
|
84
84
|
runPrerender_forceExit();
|
|
85
85
|
}
|
|
86
|
-
async function runPrerenderFromAutoRun(viteConfig
|
|
86
|
+
async function runPrerenderFromAutoRun(viteConfig) {
|
|
87
87
|
try {
|
|
88
88
|
await runPrerender({ viteConfig });
|
|
89
89
|
}
|
|
@@ -92,8 +92,6 @@ async function runPrerenderFromAutoRun(viteConfig, forceExit) {
|
|
|
92
92
|
(0, logErrorHint_js_1.logErrorHint)(err);
|
|
93
93
|
process.exit(1);
|
|
94
94
|
}
|
|
95
|
-
if (forceExit)
|
|
96
|
-
runPrerender_forceExit();
|
|
97
95
|
}
|
|
98
96
|
async function runPrerender(options = {}, standaloneTrigger) {
|
|
99
97
|
checkOutdatedOptions(options);
|
|
@@ -106,7 +104,6 @@ async function runPrerender(options = {}, standaloneTrigger) {
|
|
|
106
104
|
}
|
|
107
105
|
await disableReactStreaming();
|
|
108
106
|
const viteConfig = await (0, vite_1.resolveConfig)(options.viteConfig || {}, 'build', 'production');
|
|
109
|
-
assertLoadedConfig(viteConfig, options);
|
|
110
107
|
const vikeConfig = await (0, getVikeConfig_js_1.getVikeConfig)(viteConfig);
|
|
111
108
|
const { outDirClient } = (0, utils_js_1.getOutDirs)(viteConfig);
|
|
112
109
|
const { root } = viteConfig;
|
|
@@ -709,25 +706,6 @@ async function disableReactStreaming() {
|
|
|
709
706
|
const { disable } = mod;
|
|
710
707
|
disable();
|
|
711
708
|
}
|
|
712
|
-
function assertLoadedConfig(viteConfig, options) {
|
|
713
|
-
if (viteConfig.plugins.some((p) => p.name.startsWith('vike'))) {
|
|
714
|
-
return;
|
|
715
|
-
}
|
|
716
|
-
const { configFile } = viteConfig;
|
|
717
|
-
if (configFile) {
|
|
718
|
-
(0, utils_js_1.assertUsage)(false, `${configFile} doesn't install the vike plugin`);
|
|
719
|
-
}
|
|
720
|
-
else {
|
|
721
|
-
if (!options.viteConfig) {
|
|
722
|
-
(0, utils_js_1.assertUsage)(false, `[prerender()] No vite.config.js file found at ${process.cwd()}. Use the option ${picocolors_1.default.cyan('prerender({ viteConfig })')}.`, { showStackTrace: true });
|
|
723
|
-
}
|
|
724
|
-
else {
|
|
725
|
-
(0, utils_js_1.assertUsage)(false, `[prerender()] The Vite config ${picocolors_1.default.cyan('prerender({ viteConfig })')} is missing the vike plugin.`, {
|
|
726
|
-
showStackTrace: true
|
|
727
|
-
});
|
|
728
|
-
}
|
|
729
|
-
}
|
|
730
|
-
}
|
|
731
709
|
function isSameUrl(url1, url2) {
|
|
732
710
|
return normalizeUrl(url1) === normalizeUrl(url2);
|
|
733
711
|
}
|
|
@@ -17,7 +17,8 @@ exports.setGlobalContext_viteConfig = setGlobalContext_viteConfig;
|
|
|
17
17
|
exports.setGlobalContext_vikeConfig = setGlobalContext_vikeConfig;
|
|
18
18
|
exports.setGlobalContext_isViteDev = setGlobalContext_isViteDev;
|
|
19
19
|
exports.setGlobalContext_isPrerendering = setGlobalContext_isPrerendering;
|
|
20
|
-
exports.
|
|
20
|
+
exports.setGlobalContext_buildEntry = setGlobalContext_buildEntry;
|
|
21
|
+
exports.clearGlobalContext = clearGlobalContext;
|
|
21
22
|
const utils_js_1 = require("./utils.js");
|
|
22
23
|
const runtime_1 = require("@brillout/vite-plugin-server-entry/runtime");
|
|
23
24
|
const virtualFileImportUserCode_js_1 = require("../shared/virtual-files/virtualFileImportUserCode.js");
|
|
@@ -26,16 +27,14 @@ const assertPluginManifest_js_1 = require("../shared/assertPluginManifest.js");
|
|
|
26
27
|
const assertRuntimeManifest_js_1 = require("../shared/assertRuntimeManifest.js");
|
|
27
28
|
const picocolors_1 = __importDefault(require("@brillout/picocolors"));
|
|
28
29
|
const resolveBase_js_1 = require("../shared/resolveBase.js");
|
|
29
|
-
const
|
|
30
|
-
|
|
31
|
-
return {
|
|
32
|
-
viteDevServerPromise,
|
|
33
|
-
viteDevServerPromiseResolve
|
|
34
|
-
};
|
|
35
|
-
})());
|
|
30
|
+
const debug = (0, utils_js_1.createDebugger)('vike:globalContext');
|
|
31
|
+
const globalObject = (0, utils_js_1.getGlobalObject)('globalContext.ts', getInitialGlobalContext());
|
|
36
32
|
initDevEntry();
|
|
37
33
|
function getGlobalContext() {
|
|
38
|
-
|
|
34
|
+
if (!globalObject.globalContext) {
|
|
35
|
+
debug('getGlobalContext()', new Error().stack);
|
|
36
|
+
(0, utils_js_1.assert)(false);
|
|
37
|
+
}
|
|
39
38
|
return globalObject.globalContext;
|
|
40
39
|
}
|
|
41
40
|
/** @experimental https://vike.dev/getGlobalContext */
|
|
@@ -114,9 +113,11 @@ function getViteConfig() {
|
|
|
114
113
|
return globalObject.viteConfig ?? null;
|
|
115
114
|
}
|
|
116
115
|
async function initGlobalContext_renderPage() {
|
|
116
|
+
debug('initGlobalContext_renderPage()');
|
|
117
117
|
await initGlobalContext(!globalObject.isViteDev);
|
|
118
118
|
}
|
|
119
119
|
async function initGlobalContext_runPrerender() {
|
|
120
|
+
debug('initGlobalContext_runPrerender()');
|
|
120
121
|
if (globalObject.initGlobalContext_runPrerender_alreadyCalled)
|
|
121
122
|
return;
|
|
122
123
|
globalObject.initGlobalContext_runPrerender_alreadyCalled = true;
|
|
@@ -130,6 +131,7 @@ async function initGlobalContext_runPrerender() {
|
|
|
130
131
|
await initGlobalContext(true);
|
|
131
132
|
}
|
|
132
133
|
async function initGlobalContext_getGlobalContextAsync(isProduction) {
|
|
134
|
+
debug('initGlobalContext_getGlobalContextAsync()');
|
|
133
135
|
if (!isProduction) {
|
|
134
136
|
const waitFor = 20;
|
|
135
137
|
const timeout = setTimeout(() => {
|
|
@@ -241,18 +243,28 @@ function eagerlyLoadUserFiles() {
|
|
|
241
243
|
getPageFilesExports();
|
|
242
244
|
}
|
|
243
245
|
async function getBuildEntry(outDir) {
|
|
246
|
+
debug('getBuildEntry()');
|
|
244
247
|
if (!globalObject.buildEntry) {
|
|
248
|
+
debug('importServerProductionEntry()');
|
|
245
249
|
await (0, runtime_1.importServerProductionEntry)({ outDir });
|
|
250
|
+
if (!globalObject.buildEntry) {
|
|
251
|
+
debug('globalObject.buildEntryPrevious');
|
|
252
|
+
// Needed, for example, when calling the API prerender() then preview() because both trigger a importServerProductionEntry() call but only the first only is applied because of the import() cache. (A proper implementation would be to clear the import() cache, but it probably isn't possible on platforms such as Cloudflare Workers.)
|
|
253
|
+
globalObject.buildEntry = globalObject.buildEntryPrevious;
|
|
254
|
+
}
|
|
246
255
|
(0, utils_js_1.assert)(globalObject.buildEntry);
|
|
247
256
|
}
|
|
248
|
-
|
|
249
|
-
}
|
|
250
|
-
function setBuildEntry(buildEntry) {
|
|
257
|
+
const { buildEntry } = globalObject;
|
|
251
258
|
(0, utils_js_1.assert)((0, utils_js_1.isObject)(buildEntry));
|
|
252
259
|
(0, utils_js_1.assert)((0, utils_js_1.hasProp)(buildEntry, 'pageFiles', 'object'));
|
|
253
260
|
(0, utils_js_1.assert)((0, utils_js_1.hasProp)(buildEntry, 'assetsManifest', 'object'));
|
|
254
261
|
(0, utils_js_1.assert)((0, utils_js_1.hasProp)(buildEntry, 'pluginManifest', 'object'));
|
|
262
|
+
return buildEntry;
|
|
263
|
+
}
|
|
264
|
+
function setGlobalContext_buildEntry(buildEntry) {
|
|
265
|
+
debug('setGlobalContext_buildEntry()');
|
|
255
266
|
globalObject.buildEntry = buildEntry;
|
|
267
|
+
globalObject.buildEntryPrevious = buildEntry;
|
|
256
268
|
}
|
|
257
269
|
function initDevEntry() {
|
|
258
270
|
(0, getPageFiles_js_1.setPageFilesAsync)(getPageFilesExports);
|
|
@@ -273,3 +285,15 @@ async function getPageFilesExports() {
|
|
|
273
285
|
(0, utils_js_1.assert)((0, utils_js_1.isObject)(moduleExports));
|
|
274
286
|
return moduleExports;
|
|
275
287
|
}
|
|
288
|
+
function clearGlobalContext() {
|
|
289
|
+
debug('clearGlobalContext()');
|
|
290
|
+
(0, utils_js_1.objectReplace)(globalObject, getInitialGlobalContext(), ['buildEntryPrevious']);
|
|
291
|
+
}
|
|
292
|
+
function getInitialGlobalContext() {
|
|
293
|
+
debug('getInitialGlobalContext()');
|
|
294
|
+
const { promise: viteDevServerPromise, resolve: viteDevServerPromiseResolve } = (0, utils_js_1.genPromise)();
|
|
295
|
+
return {
|
|
296
|
+
viteDevServerPromise,
|
|
297
|
+
viteDevServerPromiseResolve
|
|
298
|
+
};
|
|
299
|
+
}
|
|
@@ -35,6 +35,7 @@ __exportStar(require("../../utils/projectInfo.js"), exports);
|
|
|
35
35
|
__exportStar(require("../../utils/isArray.js"), exports);
|
|
36
36
|
__exportStar(require("../../utils/isObject.js"), exports);
|
|
37
37
|
__exportStar(require("../../utils/objectAssign.js"), exports);
|
|
38
|
+
__exportStar(require("../../utils/objectReplace.js"), exports);
|
|
38
39
|
__exportStar(require("../../utils/PromiseType.js"), exports);
|
|
39
40
|
__exportStar(require("../../utils/compareString.js"), exports);
|
|
40
41
|
__exportStar(require("../../utils/isObjectWithKeys.js"), exports);
|
package/dist/cjs/utils/debug.js
CHANGED
|
@@ -21,6 +21,7 @@ const flags = [
|
|
|
21
21
|
'vike:extractAssets',
|
|
22
22
|
'vike:extractExportNames',
|
|
23
23
|
'vike:glob',
|
|
24
|
+
'vike:globalContext',
|
|
24
25
|
'vike:log',
|
|
25
26
|
'vike:optimizeDeps',
|
|
26
27
|
'vike:outDir',
|
|
@@ -33,7 +34,7 @@ const flags = [
|
|
|
33
34
|
'vike:esbuild-resolve'
|
|
34
35
|
];
|
|
35
36
|
const flagRegex = /\bvike:[a-zA-Z-]+/g;
|
|
36
|
-
|
|
37
|
+
assertFlagsActivated();
|
|
37
38
|
function createDebugger(flag, optionsGlobal) {
|
|
38
39
|
(0, checkType_js_1.checkType)(flag);
|
|
39
40
|
(0, assert_js_1.assert)(flags.includes(flag));
|
|
@@ -76,8 +77,8 @@ function debug_(flag, options, ...msgs) {
|
|
|
76
77
|
function isDebugActivated(flag) {
|
|
77
78
|
(0, checkType_js_1.checkType)(flag);
|
|
78
79
|
(0, assert_js_1.assert)(flags.includes(flag));
|
|
79
|
-
const
|
|
80
|
-
const isActivated =
|
|
80
|
+
const flagsActivated = getFlagsActivated();
|
|
81
|
+
const isActivated = flagsActivated.includes(flag);
|
|
81
82
|
return isActivated;
|
|
82
83
|
}
|
|
83
84
|
function formatMsg(info, options, padding, position) {
|
|
@@ -140,13 +141,17 @@ function replaceFunctionSerializer(_key, value) {
|
|
|
140
141
|
}
|
|
141
142
|
return value;
|
|
142
143
|
}
|
|
143
|
-
function
|
|
144
|
-
const
|
|
145
|
-
const flagsActivated = DEBUG.match(flagRegex) ?? [];
|
|
144
|
+
function assertFlagsActivated() {
|
|
145
|
+
const flagsActivated = getFlagsActivated();
|
|
146
146
|
flagsActivated.forEach((flag) => {
|
|
147
147
|
(0, assert_js_1.assertUsage)(flags.includes(flag), `Unknown DEBUG flag ${picocolors_1.default.cyan(flag)}. Valid flags:\n${flags.map((f) => ` ${picocolors_1.default.cyan(f)}`).join('\n')}`);
|
|
148
148
|
});
|
|
149
149
|
}
|
|
150
|
+
function getFlagsActivated() {
|
|
151
|
+
const DEBUG = getDEBUG() ?? '';
|
|
152
|
+
const flagsActivated = DEBUG.match(flagRegex) ?? [];
|
|
153
|
+
return flagsActivated;
|
|
154
|
+
}
|
|
150
155
|
function getDEBUG() {
|
|
151
156
|
let DEBUG;
|
|
152
157
|
// - `process` can be undefined in edge workers
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.objectReplace = objectReplace;
|
|
4
|
+
function objectReplace(obj, objNew, except) {
|
|
5
|
+
Object.keys(obj)
|
|
6
|
+
.filter((key) => !except?.includes(key))
|
|
7
|
+
.forEach((key) => delete obj[key]);
|
|
8
|
+
Object.assign(obj, objNew);
|
|
9
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export {
|
|
1
|
+
export { setGlobalContext_buildEntry } from '../node/runtime/globalContext.js';
|
|
2
2
|
export { route, getPagesAndRoutes };
|
|
3
3
|
export type { PageRoutes, PageFile, PageConfigRuntime as PageConfig };
|
|
4
4
|
export { getMiddlewares };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// Internals needed by Vike
|
|
2
|
-
export {
|
|
2
|
+
export { setGlobalContext_buildEntry } from '../node/runtime/globalContext.js';
|
|
3
3
|
// Internals needed by vite-plugin-vercel
|
|
4
4
|
export { route, getPagesAndRoutes };
|
|
5
5
|
// Internals needed by experimental implementation of vike-telefunc
|
|
@@ -16,7 +16,7 @@ async function build(options = {}) {
|
|
|
16
16
|
// Pre-render
|
|
17
17
|
if (isPrerenderEnabled(vikeConfigGlobal)) {
|
|
18
18
|
const { runPrerenderFromAutoRun } = await import('../prerender/runPrerender.js');
|
|
19
|
-
await runPrerenderFromAutoRun(viteConfigEnhanced
|
|
19
|
+
await runPrerenderFromAutoRun(viteConfigEnhanced);
|
|
20
20
|
}
|
|
21
21
|
return {
|
|
22
22
|
/* We don't return `viteConfig` because `viteConfigEnhanced` is `InlineConfig` not `ResolvedConfig`
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
+
export { setOperation };
|
|
2
|
+
export { clearOperation };
|
|
1
3
|
export { isVikeCliOrApi };
|
|
2
|
-
export { setOperation as setOperation };
|
|
3
4
|
import type { Operation } from './types.js';
|
|
4
5
|
declare function isVikeCliOrApi(): boolean;
|
|
5
6
|
declare function setOperation(operation: Operation): void;
|
|
7
|
+
declare function clearOperation(): void;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
export { isVikeCliOrApi };
|
|
2
1
|
// export { getOperation }
|
|
3
|
-
export { setOperation
|
|
2
|
+
export { setOperation };
|
|
3
|
+
export { clearOperation };
|
|
4
|
+
export { isVikeCliOrApi };
|
|
4
5
|
import { assert, getGlobalObject } from './utils.js';
|
|
5
6
|
const globalObject = getGlobalObject('context.ts', {
|
|
6
7
|
apiOperation: undefined
|
|
@@ -17,3 +18,6 @@ function setOperation(operation) {
|
|
|
17
18
|
assert(!globalObject.apiOperation);
|
|
18
19
|
globalObject.apiOperation = operation;
|
|
19
20
|
}
|
|
21
|
+
function clearOperation() {
|
|
22
|
+
globalObject.apiOperation = undefined;
|
|
23
|
+
}
|
|
@@ -3,26 +3,45 @@ export { getViteRoot };
|
|
|
3
3
|
export { assertViteRoot };
|
|
4
4
|
export { normalizeViteRoot };
|
|
5
5
|
// TODO: enable Vike extensions to add Vite plugins
|
|
6
|
-
import { loadConfigFromFile, resolveConfig } from 'vite';
|
|
7
|
-
import { setOperation } from './context.js';
|
|
6
|
+
import { loadConfigFromFile, mergeConfig, resolveConfig } from 'vite';
|
|
7
|
+
import { clearOperation, setOperation } from './context.js';
|
|
8
8
|
import { getVikeConfig2 } from '../plugin/plugins/importUserCode/v1-design/getVikeConfig.js';
|
|
9
9
|
import path from 'path';
|
|
10
|
-
import { assert, assertUsage, getGlobalObject, toPosixPath } from './utils.js';
|
|
10
|
+
import { assert, assertUsage, getGlobalObject, isObject, toPosixPath } from './utils.js';
|
|
11
11
|
import pc from '@brillout/picocolors';
|
|
12
|
+
import { clearGlobalContext } from '../runtime/globalContext.js';
|
|
12
13
|
const globalObject = getGlobalObject('prepareViteApiCall.ts', {});
|
|
13
14
|
async function prepareViteApiCall(viteConfig, operation) {
|
|
15
|
+
clear();
|
|
14
16
|
setOperation(operation);
|
|
15
17
|
return enhanceViteConfig(viteConfig, operation);
|
|
16
18
|
}
|
|
19
|
+
// For subsequent API calls, e.g. calling prerender() after build()
|
|
20
|
+
function clear() {
|
|
21
|
+
clearOperation();
|
|
22
|
+
clearGlobalContext();
|
|
23
|
+
}
|
|
17
24
|
async function enhanceViteConfig(viteConfig, operation) {
|
|
18
|
-
const
|
|
19
|
-
await assertViteRoot2(root, viteConfigEnhanced, operation);
|
|
20
|
-
const
|
|
25
|
+
const viteInfo = await getInfoFromVite(viteConfig, operation);
|
|
26
|
+
await assertViteRoot2(viteInfo.root, viteInfo.viteConfigEnhanced, operation);
|
|
27
|
+
const vikeConfig = await getVikeConfig2(viteInfo.root, operation === 'dev', viteInfo.vikeVitePluginOptions);
|
|
28
|
+
const viteConfigEnhanced = addViteSettingsSetByUser(viteInfo.viteConfigEnhanced, vikeConfig);
|
|
21
29
|
return {
|
|
22
30
|
viteConfigEnhanced,
|
|
23
|
-
vikeConfigGlobal
|
|
31
|
+
vikeConfigGlobal: vikeConfig.vikeConfigGlobal
|
|
24
32
|
};
|
|
25
33
|
}
|
|
34
|
+
function addViteSettingsSetByUser(viteConfigEnhanced, vikeConfig) {
|
|
35
|
+
const { global } = vikeConfig.vikeConfigNew;
|
|
36
|
+
const viteConfigs = global.from.configsCumulative.vite;
|
|
37
|
+
if (!viteConfigs)
|
|
38
|
+
return viteConfigEnhanced;
|
|
39
|
+
viteConfigs.values.forEach((v) => {
|
|
40
|
+
assertUsage(isObject(v.value), `${v.definedAt} should be an object`);
|
|
41
|
+
viteConfigEnhanced = mergeConfig(v.value, viteConfigEnhanced ?? {});
|
|
42
|
+
});
|
|
43
|
+
return viteConfigEnhanced;
|
|
44
|
+
}
|
|
26
45
|
async function getViteRoot(operation) {
|
|
27
46
|
if (!globalObject.root)
|
|
28
47
|
await getInfoFromVite(undefined, operation);
|
|
@@ -92,7 +92,7 @@ async function triggerFullBuild(config, vikeConfigGlobal, bundle) {
|
|
|
92
92
|
process.exit(1);
|
|
93
93
|
}
|
|
94
94
|
if (isPrerenderEnabled(vikeConfigGlobal)) {
|
|
95
|
-
await runPrerenderFromAutoRun(configInline
|
|
95
|
+
await runPrerenderFromAutoRun(configInline);
|
|
96
96
|
forceExit = true;
|
|
97
97
|
}
|
|
98
98
|
}
|
|
@@ -1,23 +1,17 @@
|
|
|
1
1
|
export { baseUrls };
|
|
2
2
|
import { resolveBase, resolveBaseFromResolvedConfig } from '../../shared/resolveBase.js';
|
|
3
3
|
import { assert } from '../utils.js';
|
|
4
|
-
import { getVikeConfig
|
|
5
|
-
|
|
6
|
-
function baseUrls(vikeVitePluginOptions) {
|
|
4
|
+
import { getVikeConfig } from './importUserCode/v1-design/getVikeConfig.js';
|
|
5
|
+
function baseUrls() {
|
|
7
6
|
let basesResolved;
|
|
8
|
-
let root;
|
|
9
7
|
return {
|
|
10
8
|
name: 'vike:baseUrls',
|
|
11
9
|
enforce: 'post',
|
|
12
|
-
async config(config
|
|
10
|
+
async config(config) {
|
|
13
11
|
const isDev = config._isDev;
|
|
14
12
|
assert(typeof isDev === 'boolean');
|
|
15
|
-
const operation = env.command === 'build' ? 'build' : env.isPreview ? 'preview' : 'dev';
|
|
16
|
-
root = config.root ? normalizeViteRoot(config.root) : await getViteRoot(operation);
|
|
17
|
-
assert(root);
|
|
18
13
|
const baseViteOriginal = config.base ?? '/__UNSET__'; // '/__UNSET__' because Vite resolves `_baseViteOriginal: null` to `undefined`
|
|
19
|
-
|
|
20
|
-
basesResolved = resolveBase(baseViteOriginal, vikeConfig.vikeConfigGlobal.baseServer, vikeConfig.vikeConfigGlobal.baseAssets);
|
|
14
|
+
basesResolved = resolveBase(baseViteOriginal, config.vikeTmp.vikeConfigGlobal.baseServer, config.vikeTmp.vikeConfigGlobal.baseAssets);
|
|
21
15
|
// We cannot define these in configResolved() because Vite picks up the env variables before any configResolved() hook is called
|
|
22
16
|
process.env.BASE_SERVER = basesResolved.baseServer;
|
|
23
17
|
process.env.BASE_ASSETS = basesResolved.baseAssets;
|
|
@@ -32,7 +26,6 @@ function baseUrls(vikeVitePluginOptions) {
|
|
|
32
26
|
};
|
|
33
27
|
},
|
|
34
28
|
async configResolved(config) {
|
|
35
|
-
assertViteRoot(root, config);
|
|
36
29
|
const vikeConfig = await getVikeConfig(config);
|
|
37
30
|
const basesResolved2 = resolveBaseFromResolvedConfig(vikeConfig.vikeConfigGlobal.baseServer, vikeConfig.vikeConfigGlobal.baseAssets, config);
|
|
38
31
|
assert(basesResolved2.baseServer === basesResolved.baseServer);
|
|
@@ -38,13 +38,13 @@ function getServerProductionEntryCode(config, vikeConfigGlobal) {
|
|
|
38
38
|
const vikeManifest = getVikeManifest(vikeConfigGlobal, config);
|
|
39
39
|
// Let's eventually simplify and move everything to a single virtual module
|
|
40
40
|
const importerCode = [
|
|
41
|
-
` import {
|
|
41
|
+
` import { setGlobalContext_buildEntry } from '${importPath}';`,
|
|
42
42
|
` import * as pageFiles from '${virtualFileIdImportUserCodeServer}';`,
|
|
43
43
|
` {`,
|
|
44
44
|
// We first set the values to a variable because of a Rollup bug, and this workaround doesn't work: https://github.com/vikejs/vike/commit/d5f3a4f7aae5a8bc44192e6cbb2bcb9007be188d
|
|
45
45
|
` const assetsManifest = ${ASSETS_MAP};`,
|
|
46
46
|
` const pluginManifest = ${JSON.stringify(vikeManifest, null, 2)};`,
|
|
47
|
-
'
|
|
47
|
+
' setGlobalContext_buildEntry({',
|
|
48
48
|
` pageFiles,`,
|
|
49
49
|
` assetsManifest,`,
|
|
50
50
|
` pluginManifest,`,
|
|
@@ -1,9 +1,14 @@
|
|
|
1
1
|
export { commonConfig };
|
|
2
2
|
import { type Plugin } from 'vite';
|
|
3
|
+
import { type VikeConfigObject, type VikeConfigNew } from './importUserCode/v1-design/getVikeConfig.js';
|
|
3
4
|
declare module 'vite' {
|
|
4
5
|
interface UserConfig {
|
|
5
6
|
_isDev?: boolean;
|
|
6
7
|
_vikeVitePluginOptions?: unknown;
|
|
8
|
+
_root?: string;
|
|
9
|
+
vike?: VikeConfigNew;
|
|
10
|
+
/** @deprecated */
|
|
11
|
+
vikeTmp?: VikeConfigObject;
|
|
7
12
|
}
|
|
8
13
|
}
|
|
9
14
|
declare function commonConfig(vikeVitePluginOptions: unknown): Plugin[];
|
|
@@ -9,6 +9,8 @@ import { assertResolveAlias } from './commonConfig/assertResolveAlias.js';
|
|
|
9
9
|
import { getEnvVarObject } from '../shared/getEnvVarObject.js';
|
|
10
10
|
import { isViteCliCall } from '../shared/isViteCliCall.js';
|
|
11
11
|
import { isVikeCliOrApi } from '../../api/context.js';
|
|
12
|
+
import { getVikeConfig2 } from './importUserCode/v1-design/getVikeConfig.js';
|
|
13
|
+
import { assertViteRoot, getViteRoot, normalizeViteRoot } from '../../api/prepareViteApiCall.js';
|
|
12
14
|
const pluginName = 'vike:commonConfig';
|
|
13
15
|
function commonConfig(vikeVitePluginOptions) {
|
|
14
16
|
return [
|
|
@@ -17,10 +19,18 @@ function commonConfig(vikeVitePluginOptions) {
|
|
|
17
19
|
enforce: 'pre',
|
|
18
20
|
config: {
|
|
19
21
|
order: 'pre',
|
|
20
|
-
handler(
|
|
22
|
+
async handler(configFromUser, env) {
|
|
23
|
+
const isDev = isDevCheck(env);
|
|
24
|
+
const operation = env.command === 'build' ? 'build' : env.isPreview ? 'preview' : 'dev';
|
|
25
|
+
const root = configFromUser.root ? normalizeViteRoot(configFromUser.root) : await getViteRoot(operation);
|
|
26
|
+
assert(root);
|
|
27
|
+
const vikeConfig = await getVikeConfig2(root, isDev, vikeVitePluginOptions);
|
|
21
28
|
return {
|
|
22
|
-
_isDev:
|
|
23
|
-
|
|
29
|
+
_isDev: isDev,
|
|
30
|
+
_root: root,
|
|
31
|
+
_vikeVitePluginOptions: vikeVitePluginOptions,
|
|
32
|
+
vike: vikeConfig.vikeConfigNew,
|
|
33
|
+
vikeTmp: vikeConfig
|
|
24
34
|
};
|
|
25
35
|
}
|
|
26
36
|
}
|
|
@@ -28,6 +38,7 @@ function commonConfig(vikeVitePluginOptions) {
|
|
|
28
38
|
{
|
|
29
39
|
name: pluginName,
|
|
30
40
|
configResolved(config) {
|
|
41
|
+
assertViteRoot(config._root, config);
|
|
31
42
|
assertSingleInstance(config);
|
|
32
43
|
installRequireShim_setUserRootDir(config.root);
|
|
33
44
|
}
|
|
@@ -76,5 +76,5 @@ type ConfigDefinitions = Record<string, // configName
|
|
|
76
76
|
ConfigDefinitionInternal>;
|
|
77
77
|
type ConfigDefinitionsBuiltIn = Record<ConfigNameBuiltIn, ConfigDefinitionInternal>;
|
|
78
78
|
declare const configDefinitionsBuiltIn: ConfigDefinitionsBuiltIn;
|
|
79
|
-
type ConfigNameGlobal = 'onPrerenderStart' | 'onBeforeRoute' | 'prerender' | 'disableAutoFullBuild' | 'includeAssetsImportedByServer' | 'baseAssets' | 'baseServer' | 'redirects' | 'trailingSlash' | 'disableUrlNormalization';
|
|
79
|
+
type ConfigNameGlobal = 'onPrerenderStart' | 'onBeforeRoute' | 'prerender' | 'disableAutoFullBuild' | 'includeAssetsImportedByServer' | 'baseAssets' | 'baseServer' | 'redirects' | 'trailingSlash' | 'disableUrlNormalization' | 'vite';
|
|
80
80
|
declare const configDefinitionsBuiltInGlobal: Record<ConfigNameGlobal, ConfigDefinitionInternal>;
|
|
@@ -144,6 +144,7 @@ const configDefinitionsBuiltInGlobal = {
|
|
|
144
144
|
eager: true
|
|
145
145
|
},
|
|
146
146
|
prerender: { env: { config: true } },
|
|
147
|
+
vite: { env: { config: true }, cumulative: true },
|
|
147
148
|
disableAutoFullBuild: { env: { config: true } },
|
|
148
149
|
includeAssetsImportedByServer: { env: { config: true } },
|
|
149
150
|
baseAssets: { env: { config: true } },
|
|
@@ -9,6 +9,7 @@ export type { VikeConfigObject };
|
|
|
9
9
|
export type { InterfaceValueFile };
|
|
10
10
|
export type { InterfaceFile };
|
|
11
11
|
export type { VikeConfigGlobal };
|
|
12
|
+
export type { VikeConfigNew };
|
|
12
13
|
export type { VikeVitePluginOptions };
|
|
13
14
|
import type { PageConfigGlobalBuildTime, PageConfigBuildTime } from '../../../../../shared/page-configs/PageConfig.js';
|
|
14
15
|
import { type LocationId } from './getVikeConfig/filesystemRouting.js';
|
|
@@ -35,13 +36,14 @@ type InterfaceValueFile = InterfaceFileCommons & {
|
|
|
35
36
|
configName: string;
|
|
36
37
|
};
|
|
37
38
|
type ConfigName = string;
|
|
39
|
+
type VikeConfigNew = {
|
|
40
|
+
global: ReturnType<typeof getPageConfigUserFriendlyNew>;
|
|
41
|
+
};
|
|
38
42
|
type VikeConfigObject = {
|
|
39
43
|
pageConfigs: PageConfigBuildTime[];
|
|
40
44
|
pageConfigGlobal: PageConfigGlobalBuildTime;
|
|
41
45
|
vikeConfigGlobal: VikeConfigGlobal;
|
|
42
|
-
vikeConfigNew:
|
|
43
|
-
global: ReturnType<typeof getPageConfigUserFriendlyNew>;
|
|
44
|
-
};
|
|
46
|
+
vikeConfigNew: VikeConfigNew;
|
|
45
47
|
};
|
|
46
48
|
declare const vikeConfigDependencies: Set<string>;
|
|
47
49
|
declare function reloadVikeConfig(config: ResolvedConfig): void;
|
|
@@ -452,16 +452,14 @@ async function getGlobalConfigs(interfaceFilesByLocationId, userRootDir, importe
|
|
|
452
452
|
const configValueSource = sources[0];
|
|
453
453
|
if (!configValueSource)
|
|
454
454
|
return;
|
|
455
|
+
pageConfigGlobal.configValueSources[configName] = sources;
|
|
455
456
|
if (configName === 'onBeforeRoute' || configName === 'onPrerenderStart') {
|
|
456
457
|
assert(!('value' in configValueSource));
|
|
457
|
-
pageConfigGlobal.configValueSources[configName] = [configValueSource];
|
|
458
458
|
}
|
|
459
459
|
else {
|
|
460
460
|
assert('value' in configValueSource);
|
|
461
461
|
if (configName === 'prerender' && typeof configValueSource.value === 'boolean')
|
|
462
462
|
return;
|
|
463
|
-
const { filePathToShowToUser } = configValueSource.definedAtFilePath;
|
|
464
|
-
assertWarning(false, `Being able to define config ${pc.cyan(configName)} in ${filePathToShowToUser} is experimental and will likely be removed. Define the config ${pc.cyan(configName)} in Vike's Vite plugin options instead.`, { onlyOnce: true });
|
|
465
463
|
pageConfigGlobalValues[configName] = configValueSource.value;
|
|
466
464
|
}
|
|
467
465
|
}));
|
|
@@ -29,5 +29,5 @@ declare function runPrerenderFromAPI(options?: PrerenderOptions): Promise<{
|
|
|
29
29
|
viteConfig: ResolvedConfig;
|
|
30
30
|
}>;
|
|
31
31
|
declare function runPrerenderFromCLIPrerenderCommand(): Promise<void>;
|
|
32
|
-
declare function runPrerenderFromAutoRun(viteConfig: InlineConfig | undefined
|
|
32
|
+
declare function runPrerenderFromAutoRun(viteConfig: InlineConfig | undefined): Promise<void>;
|
|
33
33
|
declare function runPrerender_forceExit(): void;
|
|
@@ -45,7 +45,7 @@ async function runPrerenderFromCLIPrerenderCommand() {
|
|
|
45
45
|
}
|
|
46
46
|
runPrerender_forceExit();
|
|
47
47
|
}
|
|
48
|
-
async function runPrerenderFromAutoRun(viteConfig
|
|
48
|
+
async function runPrerenderFromAutoRun(viteConfig) {
|
|
49
49
|
try {
|
|
50
50
|
await runPrerender({ viteConfig });
|
|
51
51
|
}
|
|
@@ -54,8 +54,6 @@ async function runPrerenderFromAutoRun(viteConfig, forceExit) {
|
|
|
54
54
|
logErrorHint(err);
|
|
55
55
|
process.exit(1);
|
|
56
56
|
}
|
|
57
|
-
if (forceExit)
|
|
58
|
-
runPrerender_forceExit();
|
|
59
57
|
}
|
|
60
58
|
async function runPrerender(options = {}, standaloneTrigger) {
|
|
61
59
|
checkOutdatedOptions(options);
|
|
@@ -68,7 +66,6 @@ async function runPrerender(options = {}, standaloneTrigger) {
|
|
|
68
66
|
}
|
|
69
67
|
await disableReactStreaming();
|
|
70
68
|
const viteConfig = await resolveConfig(options.viteConfig || {}, 'build', 'production');
|
|
71
|
-
assertLoadedConfig(viteConfig, options);
|
|
72
69
|
const vikeConfig = await getVikeConfig(viteConfig);
|
|
73
70
|
const { outDirClient } = getOutDirs(viteConfig);
|
|
74
71
|
const { root } = viteConfig;
|
|
@@ -671,25 +668,6 @@ async function disableReactStreaming() {
|
|
|
671
668
|
const { disable } = mod;
|
|
672
669
|
disable();
|
|
673
670
|
}
|
|
674
|
-
function assertLoadedConfig(viteConfig, options) {
|
|
675
|
-
if (viteConfig.plugins.some((p) => p.name.startsWith('vike'))) {
|
|
676
|
-
return;
|
|
677
|
-
}
|
|
678
|
-
const { configFile } = viteConfig;
|
|
679
|
-
if (configFile) {
|
|
680
|
-
assertUsage(false, `${configFile} doesn't install the vike plugin`);
|
|
681
|
-
}
|
|
682
|
-
else {
|
|
683
|
-
if (!options.viteConfig) {
|
|
684
|
-
assertUsage(false, `[prerender()] No vite.config.js file found at ${process.cwd()}. Use the option ${pc.cyan('prerender({ viteConfig })')}.`, { showStackTrace: true });
|
|
685
|
-
}
|
|
686
|
-
else {
|
|
687
|
-
assertUsage(false, `[prerender()] The Vite config ${pc.cyan('prerender({ viteConfig })')} is missing the vike plugin.`, {
|
|
688
|
-
showStackTrace: true
|
|
689
|
-
});
|
|
690
|
-
}
|
|
691
|
-
}
|
|
692
|
-
}
|
|
693
671
|
function isSameUrl(url1, url2) {
|
|
694
672
|
return normalizeUrl(url1) === normalizeUrl(url2);
|
|
695
673
|
}
|
|
@@ -12,7 +12,8 @@ export { setGlobalContext_viteConfig };
|
|
|
12
12
|
export { setGlobalContext_vikeConfig };
|
|
13
13
|
export { setGlobalContext_isViteDev };
|
|
14
14
|
export { setGlobalContext_isPrerendering };
|
|
15
|
-
export {
|
|
15
|
+
export { setGlobalContext_buildEntry };
|
|
16
|
+
export { clearGlobalContext };
|
|
16
17
|
import type { ViteManifest } from '../shared/ViteManifest.js';
|
|
17
18
|
import type { ResolvedConfig, ViteDevServer } from 'vite';
|
|
18
19
|
import type { VikeConfigGlobal } from '../plugin/plugins/importUserCode/v1-design/getVikeConfig.js';
|
|
@@ -63,4 +64,5 @@ declare function initGlobalContext_renderPage(): Promise<void>;
|
|
|
63
64
|
declare function initGlobalContext_runPrerender(): Promise<void>;
|
|
64
65
|
declare function initGlobalContext_getGlobalContextAsync(isProduction: boolean): Promise<void>;
|
|
65
66
|
declare function getRuntimeManifest(vikeConfigGlobal: VikeConfigGlobal, viteConfig: ResolvedConfig): RuntimeManifest;
|
|
66
|
-
declare function
|
|
67
|
+
declare function setGlobalContext_buildEntry(buildEntry: unknown): void;
|
|
68
|
+
declare function clearGlobalContext(): void;
|
|
@@ -14,8 +14,9 @@ export { setGlobalContext_viteConfig };
|
|
|
14
14
|
export { setGlobalContext_vikeConfig };
|
|
15
15
|
export { setGlobalContext_isViteDev };
|
|
16
16
|
export { setGlobalContext_isPrerendering };
|
|
17
|
-
export {
|
|
18
|
-
|
|
17
|
+
export { setGlobalContext_buildEntry };
|
|
18
|
+
export { clearGlobalContext };
|
|
19
|
+
import { assert, onSetupRuntime, assertUsage, assertWarning, isPlainObject, objectAssign, objectReplace, objectKeys, isObject, hasProp, debugGlob, getGlobalObject, genPromise, createDebugger } from './utils.js';
|
|
19
20
|
import { importServerProductionEntry } from '@brillout/vite-plugin-server-entry/runtime';
|
|
20
21
|
import { virtualFileIdImportUserCodeServer } from '../shared/virtual-files/virtualFileImportUserCode.js';
|
|
21
22
|
import { setPageFiles, setPageFilesAsync } from '../../shared/getPageFiles/getPageFiles.js';
|
|
@@ -23,16 +24,14 @@ import { assertPluginManifest } from '../shared/assertPluginManifest.js';
|
|
|
23
24
|
import { assertRuntimeManifest } from '../shared/assertRuntimeManifest.js';
|
|
24
25
|
import pc from '@brillout/picocolors';
|
|
25
26
|
import { resolveBaseFromResolvedConfig } from '../shared/resolveBase.js';
|
|
26
|
-
const
|
|
27
|
-
|
|
28
|
-
return {
|
|
29
|
-
viteDevServerPromise,
|
|
30
|
-
viteDevServerPromiseResolve
|
|
31
|
-
};
|
|
32
|
-
})());
|
|
27
|
+
const debug = createDebugger('vike:globalContext');
|
|
28
|
+
const globalObject = getGlobalObject('globalContext.ts', getInitialGlobalContext());
|
|
33
29
|
initDevEntry();
|
|
34
30
|
function getGlobalContext() {
|
|
35
|
-
|
|
31
|
+
if (!globalObject.globalContext) {
|
|
32
|
+
debug('getGlobalContext()', new Error().stack);
|
|
33
|
+
assert(false);
|
|
34
|
+
}
|
|
36
35
|
return globalObject.globalContext;
|
|
37
36
|
}
|
|
38
37
|
/** @experimental https://vike.dev/getGlobalContext */
|
|
@@ -111,9 +110,11 @@ function getViteConfig() {
|
|
|
111
110
|
return globalObject.viteConfig ?? null;
|
|
112
111
|
}
|
|
113
112
|
async function initGlobalContext_renderPage() {
|
|
113
|
+
debug('initGlobalContext_renderPage()');
|
|
114
114
|
await initGlobalContext(!globalObject.isViteDev);
|
|
115
115
|
}
|
|
116
116
|
async function initGlobalContext_runPrerender() {
|
|
117
|
+
debug('initGlobalContext_runPrerender()');
|
|
117
118
|
if (globalObject.initGlobalContext_runPrerender_alreadyCalled)
|
|
118
119
|
return;
|
|
119
120
|
globalObject.initGlobalContext_runPrerender_alreadyCalled = true;
|
|
@@ -127,6 +128,7 @@ async function initGlobalContext_runPrerender() {
|
|
|
127
128
|
await initGlobalContext(true);
|
|
128
129
|
}
|
|
129
130
|
async function initGlobalContext_getGlobalContextAsync(isProduction) {
|
|
131
|
+
debug('initGlobalContext_getGlobalContextAsync()');
|
|
130
132
|
if (!isProduction) {
|
|
131
133
|
const waitFor = 20;
|
|
132
134
|
const timeout = setTimeout(() => {
|
|
@@ -238,18 +240,28 @@ function eagerlyLoadUserFiles() {
|
|
|
238
240
|
getPageFilesExports();
|
|
239
241
|
}
|
|
240
242
|
async function getBuildEntry(outDir) {
|
|
243
|
+
debug('getBuildEntry()');
|
|
241
244
|
if (!globalObject.buildEntry) {
|
|
245
|
+
debug('importServerProductionEntry()');
|
|
242
246
|
await importServerProductionEntry({ outDir });
|
|
247
|
+
if (!globalObject.buildEntry) {
|
|
248
|
+
debug('globalObject.buildEntryPrevious');
|
|
249
|
+
// Needed, for example, when calling the API prerender() then preview() because both trigger a importServerProductionEntry() call but only the first only is applied because of the import() cache. (A proper implementation would be to clear the import() cache, but it probably isn't possible on platforms such as Cloudflare Workers.)
|
|
250
|
+
globalObject.buildEntry = globalObject.buildEntryPrevious;
|
|
251
|
+
}
|
|
243
252
|
assert(globalObject.buildEntry);
|
|
244
253
|
}
|
|
245
|
-
|
|
246
|
-
}
|
|
247
|
-
function setBuildEntry(buildEntry) {
|
|
254
|
+
const { buildEntry } = globalObject;
|
|
248
255
|
assert(isObject(buildEntry));
|
|
249
256
|
assert(hasProp(buildEntry, 'pageFiles', 'object'));
|
|
250
257
|
assert(hasProp(buildEntry, 'assetsManifest', 'object'));
|
|
251
258
|
assert(hasProp(buildEntry, 'pluginManifest', 'object'));
|
|
259
|
+
return buildEntry;
|
|
260
|
+
}
|
|
261
|
+
function setGlobalContext_buildEntry(buildEntry) {
|
|
262
|
+
debug('setGlobalContext_buildEntry()');
|
|
252
263
|
globalObject.buildEntry = buildEntry;
|
|
264
|
+
globalObject.buildEntryPrevious = buildEntry;
|
|
253
265
|
}
|
|
254
266
|
function initDevEntry() {
|
|
255
267
|
setPageFilesAsync(getPageFilesExports);
|
|
@@ -270,3 +282,15 @@ async function getPageFilesExports() {
|
|
|
270
282
|
assert(isObject(moduleExports));
|
|
271
283
|
return moduleExports;
|
|
272
284
|
}
|
|
285
|
+
function clearGlobalContext() {
|
|
286
|
+
debug('clearGlobalContext()');
|
|
287
|
+
objectReplace(globalObject, getInitialGlobalContext(), ['buildEntryPrevious']);
|
|
288
|
+
}
|
|
289
|
+
function getInitialGlobalContext() {
|
|
290
|
+
debug('getInitialGlobalContext()');
|
|
291
|
+
const { promise: viteDevServerPromise, resolve: viteDevServerPromiseResolve } = genPromise();
|
|
292
|
+
return {
|
|
293
|
+
viteDevServerPromise,
|
|
294
|
+
viteDevServerPromiseResolve
|
|
295
|
+
};
|
|
296
|
+
}
|
|
@@ -15,6 +15,7 @@ export * from '../../utils/projectInfo.js';
|
|
|
15
15
|
export * from '../../utils/isArray.js';
|
|
16
16
|
export * from '../../utils/isObject.js';
|
|
17
17
|
export * from '../../utils/objectAssign.js';
|
|
18
|
+
export * from '../../utils/objectReplace.js';
|
|
18
19
|
export * from '../../utils/PromiseType.js';
|
|
19
20
|
export * from '../../utils/compareString.js';
|
|
20
21
|
export * from '../../utils/isObjectWithKeys.js';
|
|
@@ -19,6 +19,7 @@ export * from '../../utils/projectInfo.js';
|
|
|
19
19
|
export * from '../../utils/isArray.js';
|
|
20
20
|
export * from '../../utils/isObject.js';
|
|
21
21
|
export * from '../../utils/objectAssign.js';
|
|
22
|
+
export * from '../../utils/objectReplace.js';
|
|
22
23
|
export * from '../../utils/PromiseType.js';
|
|
23
24
|
export * from '../../utils/compareString.js';
|
|
24
25
|
export * from '../../utils/isObjectWithKeys.js';
|
|
@@ -39,11 +39,12 @@ import type { VikeVitePluginOptions } from '../../node/plugin/plugins/importUser
|
|
|
39
39
|
import type { Vike, VikePackages } from '../VikeNamespace.js';
|
|
40
40
|
import type { HooksTimeoutProvidedByUser } from '../hooks/getHook.js';
|
|
41
41
|
import type { PageContextClient, PageContextServer } from '../types.js';
|
|
42
|
+
import type { InlineConfig } from 'vite';
|
|
42
43
|
type HookName = HookNamePage | HookNameGlobal | HookNameOldDesign;
|
|
43
44
|
type HookNamePage = 'onHydrationEnd' | 'onBeforePrerenderStart' | 'onBeforeRender' | 'onPageTransitionStart' | 'onPageTransitionEnd' | 'onRenderHtml' | 'onRenderClient' | 'guard' | 'data';
|
|
44
45
|
type HookNameGlobal = 'onBeforePrerender' | 'onBeforeRoute' | 'onPrerenderStart';
|
|
45
46
|
type HookNameOldDesign = 'render' | 'prerender';
|
|
46
|
-
type ConfigNameBuiltIn = Exclude<keyof Config, keyof VikeVitePluginOptions | 'onBeforeRoute' | 'onPrerenderStart'> | 'prerender' | 'isClientRuntimeLoaded' | 'onBeforeRenderEnv' | 'dataEnv' | 'hooksTimeout' | 'clientHooks' | 'middleware';
|
|
47
|
+
type ConfigNameBuiltIn = Exclude<keyof Config, keyof VikeVitePluginOptions | 'onBeforeRoute' | 'onPrerenderStart' | 'vite'> | 'prerender' | 'isClientRuntimeLoaded' | 'onBeforeRenderEnv' | 'dataEnv' | 'hooksTimeout' | 'clientHooks' | 'middleware';
|
|
47
48
|
type Config = ConfigBuiltIn & Vike.Config & (VikePackages.ConfigVikeReact | VikePackages.ConfigVikeVue | VikePackages.ConfigVikeSolid | VikePackages.ConfigVikeSvelte | VikePackages.ConfigVikeAngular);
|
|
48
49
|
/** Hook for fetching data.
|
|
49
50
|
*
|
|
@@ -344,6 +345,11 @@ type ConfigBuiltIn = {
|
|
|
344
345
|
* https://vike.dev/meta
|
|
345
346
|
*/
|
|
346
347
|
meta?: ConfigMeta | ImportString;
|
|
348
|
+
/** Vite configuration.
|
|
349
|
+
*
|
|
350
|
+
* https://vite.dev/config/
|
|
351
|
+
*/
|
|
352
|
+
vite?: InlineConfig;
|
|
347
353
|
/**
|
|
348
354
|
* @experimental DON'T USE: the API *will* have breaking changes upon any minor version release.
|
|
349
355
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const PROJECT_VERSION: "0.4.218-commit-
|
|
1
|
+
export declare const PROJECT_VERSION: "0.4.218-commit-85af52a";
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// Automatically updated by @brillout/release-me
|
|
2
|
-
export const PROJECT_VERSION = '0.4.218-commit-
|
|
2
|
+
export const PROJECT_VERSION = '0.4.218-commit-85af52a';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export { createDebugger };
|
|
2
2
|
export { isDebugActivated };
|
|
3
3
|
export type { Debug };
|
|
4
|
-
declare const flags: readonly ["vike:error", "vike:extractAssets", "vike:extractExportNames", "vike:glob", "vike:log", "vike:optimizeDeps", "vike:outDir", "vike:pageFiles", "vike:pointer-imports", "vike:routing", "vike:setup", "vike:stream", "vike:virtual-files", "vike:esbuild-resolve"];
|
|
4
|
+
declare const flags: readonly ["vike:error", "vike:extractAssets", "vike:extractExportNames", "vike:glob", "vike:globalContext", "vike:log", "vike:optimizeDeps", "vike:outDir", "vike:pageFiles", "vike:pointer-imports", "vike:routing", "vike:setup", "vike:stream", "vike:virtual-files", "vike:esbuild-resolve"];
|
|
5
5
|
type Flag = (typeof flags)[number];
|
|
6
6
|
type Debug = ReturnType<typeof createDebugger>;
|
|
7
7
|
type Options = {
|
package/dist/esm/utils/debug.js
CHANGED
|
@@ -16,6 +16,7 @@ const flags = [
|
|
|
16
16
|
'vike:extractAssets',
|
|
17
17
|
'vike:extractExportNames',
|
|
18
18
|
'vike:glob',
|
|
19
|
+
'vike:globalContext',
|
|
19
20
|
'vike:log',
|
|
20
21
|
'vike:optimizeDeps',
|
|
21
22
|
'vike:outDir',
|
|
@@ -28,7 +29,7 @@ const flags = [
|
|
|
28
29
|
'vike:esbuild-resolve'
|
|
29
30
|
];
|
|
30
31
|
const flagRegex = /\bvike:[a-zA-Z-]+/g;
|
|
31
|
-
|
|
32
|
+
assertFlagsActivated();
|
|
32
33
|
function createDebugger(flag, optionsGlobal) {
|
|
33
34
|
checkType(flag);
|
|
34
35
|
assert(flags.includes(flag));
|
|
@@ -71,8 +72,8 @@ function debug_(flag, options, ...msgs) {
|
|
|
71
72
|
function isDebugActivated(flag) {
|
|
72
73
|
checkType(flag);
|
|
73
74
|
assert(flags.includes(flag));
|
|
74
|
-
const
|
|
75
|
-
const isActivated =
|
|
75
|
+
const flagsActivated = getFlagsActivated();
|
|
76
|
+
const isActivated = flagsActivated.includes(flag);
|
|
76
77
|
return isActivated;
|
|
77
78
|
}
|
|
78
79
|
function formatMsg(info, options, padding, position) {
|
|
@@ -135,13 +136,17 @@ function replaceFunctionSerializer(_key, value) {
|
|
|
135
136
|
}
|
|
136
137
|
return value;
|
|
137
138
|
}
|
|
138
|
-
function
|
|
139
|
-
const
|
|
140
|
-
const flagsActivated = DEBUG.match(flagRegex) ?? [];
|
|
139
|
+
function assertFlagsActivated() {
|
|
140
|
+
const flagsActivated = getFlagsActivated();
|
|
141
141
|
flagsActivated.forEach((flag) => {
|
|
142
142
|
assertUsage(flags.includes(flag), `Unknown DEBUG flag ${pc.cyan(flag)}. Valid flags:\n${flags.map((f) => ` ${pc.cyan(f)}`).join('\n')}`);
|
|
143
143
|
});
|
|
144
144
|
}
|
|
145
|
+
function getFlagsActivated() {
|
|
146
|
+
const DEBUG = getDEBUG() ?? '';
|
|
147
|
+
const flagsActivated = DEBUG.match(flagRegex) ?? [];
|
|
148
|
+
return flagsActivated;
|
|
149
|
+
}
|
|
145
150
|
function getDEBUG() {
|
|
146
151
|
let DEBUG;
|
|
147
152
|
// - `process` can be undefined in edge workers
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function objectReplace(obj: object, objNew: object, except?: string[]): void;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vike",
|
|
3
|
-
"version": "0.4.218-commit-
|
|
3
|
+
"version": "0.4.218-commit-85af52a",
|
|
4
4
|
"repository": "https://github.com/vikejs/vike",
|
|
5
5
|
"exports": {
|
|
6
6
|
"./server": {
|
|
@@ -236,7 +236,7 @@
|
|
|
236
236
|
"@types/resolve": "^1.20.6",
|
|
237
237
|
"@types/semver": "^7.5.8",
|
|
238
238
|
"@types/source-map-support": "^0.5.10",
|
|
239
|
-
"react-streaming": "^0.3.
|
|
239
|
+
"react-streaming": "^0.3.47",
|
|
240
240
|
"rimraf": "^5.0.5",
|
|
241
241
|
"typescript": "^5.7.3",
|
|
242
242
|
"vite": "^6.0.5"
|