vike 0.4.236-commit-e752d12 → 0.4.236-commit-08fbc10
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/node/runtime/renderPage/getPageAssets/retrieveAssetsDev.js +4 -0
- package/dist/cjs/node/runtime/utils.js +1 -0
- package/dist/cjs/node/shared/utils.js +1 -0
- package/dist/cjs/node/shared/virtualFiles/virtualFileEntry.js +16 -14
- package/dist/cjs/node/shared/virtualFiles/virtualFilePageConfigLazy.js +10 -4
- package/dist/cjs/node/vite/plugins/pluginBuild/pluginBuildApp.js +28 -13
- package/dist/cjs/node/vite/plugins/pluginBuild/pluginDistFileNames.js +12 -7
- package/dist/cjs/node/vite/plugins/pluginBuild/pluginModuleBanner.js +2 -2
- package/dist/cjs/node/vite/plugins/pluginDev/determineOptimizeDeps.js +100 -58
- package/dist/cjs/node/vite/plugins/pluginExtractAssets.js +3 -4
- package/dist/cjs/node/vite/plugins/pluginVirtualFiles/getVirtualFilePageConfigLazy.js +1 -0
- package/dist/cjs/node/vite/plugins/pluginVirtualFiles.js +4 -5
- package/dist/cjs/node/vite/utils.js +1 -0
- package/dist/cjs/shared/getPageFiles/parseVirtualFileExports.js +6 -0
- package/dist/cjs/utils/PROJECT_VERSION.js +1 -1
- package/dist/cjs/utils/isFilePathAbsoluteFilesystem.js +1 -0
- package/dist/cjs/utils/virtualFileId.js +39 -0
- package/dist/esm/client/runtime-client-routing/history.d.ts +4 -2
- package/dist/esm/client/runtime-client-routing/history.js +13 -35
- package/dist/esm/client/runtime-client-routing/initClientRouter.js +3 -2
- package/dist/esm/client/runtime-client-routing/renderPageClientSide.js +43 -30
- package/dist/esm/node/runtime/renderPage/getPageAssets/retrieveAssetsDev.js +4 -0
- package/dist/esm/node/runtime/utils.d.ts +1 -0
- package/dist/esm/node/runtime/utils.js +1 -0
- package/dist/esm/node/shared/utils.d.ts +1 -0
- package/dist/esm/node/shared/utils.js +1 -0
- package/dist/esm/node/shared/virtualFiles/virtualFileEntry.js +16 -14
- package/dist/esm/node/shared/virtualFiles/virtualFilePageConfigLazy.js +11 -5
- package/dist/esm/node/vite/plugins/pluginBuild/pluginBuildApp.js +28 -13
- package/dist/esm/node/vite/plugins/pluginBuild/pluginDistFileNames.js +12 -7
- package/dist/esm/node/vite/plugins/pluginBuild/pluginModuleBanner.js +2 -2
- package/dist/esm/node/vite/plugins/pluginDev/determineOptimizeDeps.js +101 -59
- package/dist/esm/node/vite/plugins/pluginExtractAssets.js +3 -4
- package/dist/esm/node/vite/plugins/pluginVirtualFiles/getVirtualFilePageConfigLazy.js +1 -0
- package/dist/esm/node/vite/plugins/pluginVirtualFiles.js +3 -4
- package/dist/esm/node/vite/utils.d.ts +1 -0
- package/dist/esm/node/vite/utils.js +1 -0
- package/dist/esm/shared/getPageFiles/parseVirtualFileExports.js +6 -0
- package/dist/esm/utils/PROJECT_VERSION.d.ts +1 -1
- package/dist/esm/utils/PROJECT_VERSION.js +1 -1
- package/dist/esm/utils/isFilePathAbsoluteFilesystem.d.ts +7 -0
- package/dist/esm/utils/isFilePathAbsoluteFilesystem.js +1 -0
- package/dist/esm/utils/virtualFileId.d.ts +6 -0
- package/dist/esm/{node/shared/virtualFiles.js → utils/virtualFileId.js} +15 -17
- package/package.json +3 -3
- package/dist/cjs/node/shared/virtualFiles.js +0 -41
- package/dist/esm/node/shared/virtualFiles.d.ts +0 -8
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { determineOptimizeDeps };
|
|
2
2
|
import { findPageFiles } from '../../shared/findPageFiles.js';
|
|
3
|
-
import { assert, assertIsImportPathNpmPackage, createDebugger, getNpmPackageName, isArray,
|
|
3
|
+
import { assert, assertIsImportPathNpmPackage, createDebugger, getNpmPackageName, isArray, isFilePathAbsoluteFilesystem, isVirtualFileId, } from '../../utils.js';
|
|
4
4
|
import { getVikeConfigInternal, isOverridden } from '../../shared/resolveVikeConfigInternal.js';
|
|
5
5
|
import { analyzeClientEntries } from '../pluginBuild/pluginBuildConfig.js';
|
|
6
6
|
import { virtualFileIdEntryClientCR, virtualFileIdEntryClientSR, } from '../../../shared/virtualFiles/virtualFileEntry.js';
|
|
@@ -9,38 +9,78 @@ const debug = createDebugger('vike:optimizeDeps');
|
|
|
9
9
|
async function determineOptimizeDeps(config) {
|
|
10
10
|
const vikeConfig = await getVikeConfigInternal();
|
|
11
11
|
const { _pageConfigs: pageConfigs } = vikeConfig;
|
|
12
|
-
const {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
entries.
|
|
12
|
+
const { entriesClient, entriesServer, includeClient, includeServer } = await getPageDeps(config, pageConfigs);
|
|
13
|
+
config.optimizeDeps.include = add(config.optimizeDeps.include, includeClient);
|
|
14
|
+
config.optimizeDeps.entries = add(config.optimizeDeps.entries, entriesClient);
|
|
15
|
+
// TO-DO/eventually: use a check that is agnostic to @cloudflare/vite-plugin
|
|
16
|
+
const isNotRunnable = config.environments?.ssr?.resolve.conditions.includes('workerd');
|
|
17
|
+
if (isNotRunnable) {
|
|
18
|
+
config.ssr.optimizeDeps.include = add(config.ssr.optimizeDeps.include, includeServer);
|
|
19
|
+
// @ts-ignore — Vite doesn't seem to support ssr.optimizeDeps.entries (vite@7.0.6, July 2025)
|
|
20
|
+
config.ssr.optimizeDeps.entries = add(config.ssr.optimizeDeps.entries, entriesServer);
|
|
20
21
|
}
|
|
21
|
-
/* Other Vite plugins may populate optimizeDeps, e.g. Cypress: https://github.com/vikejs/vike/issues/386
|
|
22
|
-
assert(config.optimizeDeps.entries === undefined)
|
|
23
|
-
*/
|
|
24
|
-
config.optimizeDeps.include = [...include, ...normalizeInclude(config.optimizeDeps.include)];
|
|
25
|
-
config.optimizeDeps.entries = [...entries, ...normalizeEntries(config.optimizeDeps.entries)];
|
|
26
22
|
if (debug.isActivated)
|
|
27
|
-
debug('
|
|
23
|
+
debug('optimizeDeps', {
|
|
28
24
|
'config.optimizeDeps.entries': config.optimizeDeps.entries,
|
|
29
25
|
'config.optimizeDeps.include': config.optimizeDeps.include,
|
|
26
|
+
'config.optimizeDeps.exclude': config.optimizeDeps.exclude,
|
|
27
|
+
/* Vite doesn't seem to support ssr.optimizeDeps.entries (vite@7.0.6, July 2025)
|
|
28
|
+
'config.ssr.optimizeDeps.entries': config.ssr.optimizeDeps.entries,
|
|
29
|
+
//*/
|
|
30
|
+
'config.ssr.optimizeDeps.include': config.ssr.optimizeDeps.include,
|
|
31
|
+
'config.ssr.optimizeDeps.exclude': config.ssr.optimizeDeps.exclude,
|
|
30
32
|
});
|
|
31
33
|
}
|
|
32
34
|
async function getPageDeps(config, pageConfigs) {
|
|
33
|
-
let
|
|
34
|
-
let
|
|
35
|
-
|
|
35
|
+
let entriesClient = [];
|
|
36
|
+
let entriesServer = [];
|
|
37
|
+
let includeClient = [];
|
|
38
|
+
let includeServer = [];
|
|
39
|
+
const addEntry = (e, configEnv, definedAt) => {
|
|
36
40
|
assert(e);
|
|
37
|
-
entries
|
|
41
|
+
// optimizeDeps.entries expects filesystem absolute paths
|
|
42
|
+
assert(isVirtualFileId(e) || isFilePathAbsoluteFilesystem(e));
|
|
43
|
+
if (isRelevant(e, false, configEnv, definedAt)) {
|
|
44
|
+
entriesClient.push(e);
|
|
45
|
+
}
|
|
46
|
+
if (isRelevant(e, true, configEnv, definedAt)) {
|
|
47
|
+
entriesServer.push(e);
|
|
48
|
+
}
|
|
38
49
|
};
|
|
39
|
-
const addInclude = (e) => {
|
|
50
|
+
const addInclude = (e, configEnv, definedAt) => {
|
|
40
51
|
assert(e);
|
|
41
|
-
//
|
|
52
|
+
// optimizeDeps.include expects npm packages
|
|
53
|
+
assert(!e.startsWith('/'));
|
|
54
|
+
// Shouldn't be a path alias, as path aliases would need to be added to optimizeDeps.entries instead of optimizeDeps.include
|
|
42
55
|
assertIsImportPathNpmPackage(e);
|
|
43
|
-
|
|
56
|
+
if (isRelevant(e, false, configEnv, definedAt)) {
|
|
57
|
+
includeClient.push(e);
|
|
58
|
+
}
|
|
59
|
+
if (isRelevant(e, true, configEnv, definedAt)) {
|
|
60
|
+
includeServer.push(e);
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
const isRelevant = (e, server, configEnv, definedAt) => {
|
|
64
|
+
if (server) {
|
|
65
|
+
if (!configEnv || !configEnv.server)
|
|
66
|
+
return false;
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
if (configEnv && !configEnv.client)
|
|
70
|
+
return false;
|
|
71
|
+
}
|
|
72
|
+
return !isExcluded(e, server, definedAt);
|
|
73
|
+
};
|
|
74
|
+
const isExcluded = (e, server, definedAt) => {
|
|
75
|
+
const exclude = server ? config.ssr.optimizeDeps.exclude : config.optimizeDeps.exclude;
|
|
76
|
+
if (!exclude)
|
|
77
|
+
return false;
|
|
78
|
+
if (definedAt?.importPathAbsolute) {
|
|
79
|
+
const npmPackageName = getNpmPackageName(definedAt.importPathAbsolute);
|
|
80
|
+
if (npmPackageName && exclude.includes(npmPackageName))
|
|
81
|
+
return true;
|
|
82
|
+
}
|
|
83
|
+
return exclude.includes(e);
|
|
44
84
|
};
|
|
45
85
|
// V1 design
|
|
46
86
|
{
|
|
@@ -52,22 +92,17 @@ async function getPageDeps(config, pageConfigs) {
|
|
|
52
92
|
if (!configValueSource.valueIsLoadedWithImport && !configValueSource.valueIsFilePath)
|
|
53
93
|
return;
|
|
54
94
|
const { definedAt, configEnv } = configValueSource;
|
|
55
|
-
if (!configEnv.client)
|
|
56
|
-
return;
|
|
57
95
|
if (definedAt.definedBy)
|
|
58
96
|
return;
|
|
59
|
-
if (definedAt.importPathAbsolute) {
|
|
60
|
-
const npmPackageName = getNpmPackageName(definedAt.importPathAbsolute);
|
|
61
|
-
if (npmPackageName && config.optimizeDeps.exclude?.includes(npmPackageName))
|
|
62
|
-
return;
|
|
63
|
-
}
|
|
64
97
|
if (definedAt.filePathAbsoluteUserRootDir !== null) {
|
|
65
|
-
|
|
66
|
-
|
|
98
|
+
addEntry(
|
|
99
|
+
// optimizeDeps.entries expects filesystem absolute paths
|
|
100
|
+
definedAt.filePathAbsoluteFilesystem, configEnv, definedAt);
|
|
67
101
|
}
|
|
68
102
|
else {
|
|
69
|
-
|
|
70
|
-
|
|
103
|
+
addInclude(
|
|
104
|
+
// optimizeDeps.include expects npm packages
|
|
105
|
+
definedAt.importPathAbsolute, configEnv, definedAt);
|
|
71
106
|
}
|
|
72
107
|
});
|
|
73
108
|
});
|
|
@@ -83,32 +118,39 @@ async function getPageDeps(config, pageConfigs) {
|
|
|
83
118
|
addEntry(filePathAbsoluteFilesystem);
|
|
84
119
|
});
|
|
85
120
|
}
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
121
|
+
// Add virtual files.
|
|
122
|
+
// - This doesn't work: Vite's dep optimizer doesn't seem to be able to crawl virtual files.
|
|
123
|
+
// - Should we make it work? E.g. by creating a temporary file at node_modules/.vike/virtualFiles.js
|
|
124
|
+
// - Or should we remove it? And make sure getPageDeps() also works for aliased import paths
|
|
125
|
+
// - If we do, then we need to adjust include/entries (maybe by making include === entries -> will Vite complain?)
|
|
126
|
+
{
|
|
127
|
+
const { hasClientRouting, hasServerRouting, clientEntries } = analyzeClientEntries(pageConfigs, config);
|
|
128
|
+
Object.values(clientEntries).forEach((e) => addEntry(e));
|
|
129
|
+
if (hasClientRouting)
|
|
130
|
+
addEntry(virtualFileIdEntryClientCR);
|
|
131
|
+
if (hasServerRouting)
|
|
132
|
+
addEntry(virtualFileIdEntryClientSR);
|
|
133
|
+
}
|
|
134
|
+
entriesClient = entriesClient;
|
|
135
|
+
entriesServer = entriesServer;
|
|
136
|
+
includeClient = includeClient;
|
|
137
|
+
includeServer = includeServer;
|
|
138
|
+
return {
|
|
139
|
+
entriesClient,
|
|
140
|
+
entriesServer,
|
|
141
|
+
includeClient,
|
|
142
|
+
includeServer,
|
|
143
|
+
};
|
|
98
144
|
}
|
|
99
|
-
function
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
assert(false);
|
|
145
|
+
function add(input, listAddendum) {
|
|
146
|
+
const list = !input ? [] : isArray(input) ? unique(input) : [input];
|
|
147
|
+
listAddendum.forEach((e) => {
|
|
148
|
+
if (!list.includes(e))
|
|
149
|
+
list.push(e);
|
|
150
|
+
});
|
|
151
|
+
return list;
|
|
107
152
|
}
|
|
108
|
-
function
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
if (include === undefined)
|
|
112
|
-
return [];
|
|
113
|
-
assert(false);
|
|
153
|
+
function unique(arr) {
|
|
154
|
+
const arrUnique = Array.from(new Set(arr));
|
|
155
|
+
return arr.length !== arrUnique.length ? arrUnique : arr;
|
|
114
156
|
}
|
|
@@ -6,8 +6,7 @@
|
|
|
6
6
|
// - This approach supports import path aliases `vite.config.js#resolve.alias` https://vitejs.dev/config/#resolve-alias
|
|
7
7
|
export { pluginExtractAssets };
|
|
8
8
|
export { extractAssetsRE };
|
|
9
|
-
import { assert, assertPosixPath, styleFileRE, createDebugger, isScriptFile, assertUsage, rollupSourceMapRemove, } from '../utils.js';
|
|
10
|
-
import { resolveVirtualFileId, isVirtualFileId, getVirtualFileId } from '../../shared/virtualFiles.js';
|
|
9
|
+
import { assert, assertPosixPath, styleFileRE, createDebugger, isScriptFile, assertUsage, rollupSourceMapRemove, addVirtualFileIdPrefix, isVirtualFileId, removeVirtualFileIdPrefix, } from '../utils.js';
|
|
11
10
|
import { extractAssetsAddQuery } from '../../shared/extractAssetsQuery.js';
|
|
12
11
|
import { isAsset } from '../shared/isAsset.js';
|
|
13
12
|
import { getImportStatements } from '../shared/parseEsModule.js';
|
|
@@ -124,7 +123,7 @@ function pluginExtractAssets() {
|
|
|
124
123
|
load(id) {
|
|
125
124
|
if (!isVirtualFileId(id))
|
|
126
125
|
return undefined;
|
|
127
|
-
id =
|
|
126
|
+
id = removeVirtualFileIdPrefix(id);
|
|
128
127
|
if (id === EMPTY_MODULE_ID) {
|
|
129
128
|
return '// Erased by vike:pluginExtractAssets';
|
|
130
129
|
}
|
|
@@ -151,7 +150,7 @@ function pluginExtractAssets() {
|
|
|
151
150
|
}
|
|
152
151
|
function emptyModule(file, importer) {
|
|
153
152
|
debugOperation('NUKED', file, importer);
|
|
154
|
-
return
|
|
153
|
+
return addVirtualFileIdPrefix(EMPTY_MODULE_ID);
|
|
155
154
|
}
|
|
156
155
|
function appendExtractAssetsQuery(file, importer) {
|
|
157
156
|
debugOperation('TRANSFORMED', file, importer);
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export { getVirtualFilePageConfigLazy };
|
|
2
|
+
// TODO/now: rename file to generateVirtualFileEntryPage.ts
|
|
2
3
|
import { assert, getProjectError } from '../../utils.js';
|
|
3
4
|
import { getVirtualFileIdPageConfigLazy, isVirtualFileIdPageConfigLazy, } from '../../../shared/virtualFiles/virtualFilePageConfigLazy.js';
|
|
4
5
|
import { getVikeConfigInternal } from '../../shared/resolveVikeConfigInternal.js';
|
|
@@ -2,8 +2,7 @@ export { pluginVirtualFiles };
|
|
|
2
2
|
import { normalizePath } from 'vite';
|
|
3
3
|
import { getVirtualFilePageConfigLazy } from './pluginVirtualFiles/getVirtualFilePageConfigLazy.js';
|
|
4
4
|
import { getVirtualFileEntry } from './pluginVirtualFiles/getVirtualFileEntry.js';
|
|
5
|
-
import { assert, assertPosixPath, isScriptFile } from '../utils.js';
|
|
6
|
-
import { resolveVirtualFileId, isVirtualFileId, getVirtualFileId } from '../../shared/virtualFiles.js';
|
|
5
|
+
import { assert, assertPosixPath, isScriptFile, addVirtualFileIdPrefix, isVirtualFileId, removeVirtualFileIdPrefix, } from '../utils.js';
|
|
7
6
|
import { isVirtualFileIdPageConfigLazy } from '../../shared/virtualFiles/virtualFilePageConfigLazy.js';
|
|
8
7
|
import { isVirtualFileIdEntry } from '../../shared/virtualFiles/virtualFileEntry.js';
|
|
9
8
|
import { reloadVikeConfig, isV1Design, getVikeConfigInternalOptional } from '../shared/resolveVikeConfigInternal.js';
|
|
@@ -26,7 +25,7 @@ function pluginVirtualFiles() {
|
|
|
26
25
|
},
|
|
27
26
|
resolveId(id) {
|
|
28
27
|
if (isVirtualFileId(id)) {
|
|
29
|
-
return
|
|
28
|
+
return addVirtualFileIdPrefix(id);
|
|
30
29
|
}
|
|
31
30
|
},
|
|
32
31
|
async handleHotUpdate(ctx) {
|
|
@@ -42,7 +41,7 @@ function pluginVirtualFiles() {
|
|
|
42
41
|
async load(id, options) {
|
|
43
42
|
if (!isVirtualFileId(id))
|
|
44
43
|
return undefined;
|
|
45
|
-
id =
|
|
44
|
+
id = removeVirtualFileIdPrefix(id);
|
|
46
45
|
const isDev = config._isDev;
|
|
47
46
|
assert(typeof isDev === 'boolean');
|
|
48
47
|
if (isVirtualFileIdPageConfigLazy(id)) {
|
|
@@ -1,4 +1,10 @@
|
|
|
1
1
|
export { parseVirtualFileExports };
|
|
2
|
+
// TODO/now: rename parseVirtualFileExportsEntryGlobal
|
|
3
|
+
// TODO/now: merge or collocate following both files?
|
|
4
|
+
// ```filesystem
|
|
5
|
+
// vike/packages/vike/shared/getPageFiles/parseVirtualFileExports.ts
|
|
6
|
+
// vike/shared/page-configs/serialize/parsePageConfigs.ts
|
|
7
|
+
// ```
|
|
2
8
|
// TO-DO/next-major-release: remove old design code, and remove all assertions.
|
|
3
9
|
import { assert, hasProp, isCallable, isObject, cast, isArray } from '../utils.js';
|
|
4
10
|
import { assertExportValues } from './assert_exports_old_design.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const PROJECT_VERSION: "0.4.236-commit-
|
|
1
|
+
export declare const PROJECT_VERSION: "0.4.236-commit-08fbc10";
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// Automatically updated by @brillout/release-me
|
|
2
|
-
export const PROJECT_VERSION = '0.4.236-commit-
|
|
2
|
+
export const PROJECT_VERSION = '0.4.236-commit-08fbc10';
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export { assertFilePathAbsoluteFilesystem };
|
|
2
|
+
export { isFilePathAbsoluteFilesystem };
|
|
2
3
|
export { isFilePathAbsolute };
|
|
3
4
|
/**
|
|
4
5
|
* Asserts that `filePath` is an absolute file path starting from the filesystem root.
|
|
@@ -6,6 +7,12 @@ export { isFilePathAbsolute };
|
|
|
6
7
|
* It isn't reliable for Linux users, but that's okay because the assertion will eventually fail on windows.
|
|
7
8
|
*/
|
|
8
9
|
declare function assertFilePathAbsoluteFilesystem(filePath: string): void;
|
|
10
|
+
/**
|
|
11
|
+
* Whether `filePath` is an absolute file path starting from the filesystem root.
|
|
12
|
+
*
|
|
13
|
+
* Isn't reliable for Linux users: it returns `true` for an absolute path starting from the user root dir.
|
|
14
|
+
*/
|
|
15
|
+
declare function isFilePathAbsoluteFilesystem(filePath: string): boolean;
|
|
9
16
|
/**
|
|
10
17
|
* Whether `filePath` is an absolute file path.
|
|
11
18
|
*
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { isVirtualFileId };
|
|
2
|
+
export { addVirtualFileIdPrefix };
|
|
3
|
+
export { removeVirtualFileIdPrefix };
|
|
4
|
+
declare function isVirtualFileId(id: string): boolean;
|
|
5
|
+
declare function addVirtualFileIdPrefix(id: string): string;
|
|
6
|
+
declare function removeVirtualFileIdPrefix(id: string): string;
|
|
@@ -1,36 +1,34 @@
|
|
|
1
1
|
export { isVirtualFileId };
|
|
2
|
-
export {
|
|
3
|
-
export {
|
|
4
|
-
export { removeVirtualIdTag };
|
|
2
|
+
export { addVirtualFileIdPrefix };
|
|
3
|
+
export { removeVirtualFileIdPrefix };
|
|
5
4
|
import pc from '@brillout/picocolors';
|
|
6
|
-
import { assert, assertUsage } from './
|
|
5
|
+
import { assert, assertUsage } from './assert.js';
|
|
6
|
+
import { assertIsNotBrowser } from './assertIsNotBrowser.js';
|
|
7
|
+
assertIsNotBrowser();
|
|
7
8
|
const idBase = 'virtual:vike:';
|
|
8
9
|
// https://vitejs.dev/guide/api-plugin.html#virtual-modules-convention
|
|
9
|
-
const
|
|
10
|
+
const prefix = '\0';
|
|
10
11
|
function isVirtualFileId(id) {
|
|
11
12
|
if (id.startsWith(idBase))
|
|
12
13
|
return true;
|
|
13
|
-
if (id.startsWith(
|
|
14
|
+
if (id.startsWith(prefix + idBase))
|
|
14
15
|
return true;
|
|
15
16
|
// https://github.com/vikejs/vike/issues/1985
|
|
16
17
|
assertUsage(!id.includes(idBase), `Encountered a module ID ${pc.cyan(id)} that is unexpected. Are you using a tool that modifies the ID of modules? For example, the baseUrl setting in tsconfig.json cannot be used.`);
|
|
17
18
|
return false;
|
|
18
19
|
}
|
|
19
|
-
function
|
|
20
|
-
return removeVirtualIdTag(id);
|
|
21
|
-
}
|
|
22
|
-
function resolveVirtualFileId(id) {
|
|
20
|
+
function addVirtualFileIdPrefix(id) {
|
|
23
21
|
assert(isVirtualFileId(id));
|
|
24
|
-
if (!id.startsWith(
|
|
25
|
-
id =
|
|
22
|
+
if (!id.startsWith(prefix)) {
|
|
23
|
+
id = prefix + id;
|
|
26
24
|
}
|
|
27
|
-
assert(id.startsWith(
|
|
25
|
+
assert(id.startsWith(prefix));
|
|
28
26
|
return id;
|
|
29
27
|
}
|
|
30
|
-
function
|
|
31
|
-
if (id.startsWith(
|
|
32
|
-
id = id.slice(
|
|
28
|
+
function removeVirtualFileIdPrefix(id) {
|
|
29
|
+
if (id.startsWith(prefix)) {
|
|
30
|
+
id = id.slice(prefix.length);
|
|
33
31
|
}
|
|
34
|
-
assert(!id.startsWith(
|
|
32
|
+
assert(!id.startsWith(prefix));
|
|
35
33
|
return id;
|
|
36
34
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vike",
|
|
3
|
-
"version": "0.4.236-commit-
|
|
3
|
+
"version": "0.4.236-commit-08fbc10",
|
|
4
4
|
"repository": "https://github.com/vikejs/vike",
|
|
5
5
|
"exports": {
|
|
6
6
|
"./server": {
|
|
@@ -123,7 +123,7 @@
|
|
|
123
123
|
"@brillout/json-serializer": "^0.5.16",
|
|
124
124
|
"@brillout/picocolors": "^1.0.26",
|
|
125
125
|
"@brillout/require-shim": "^0.1.2",
|
|
126
|
-
"@brillout/vite-plugin-server-entry": "^0.7.
|
|
126
|
+
"@brillout/vite-plugin-server-entry": "^0.7.10",
|
|
127
127
|
"acorn": "^8.0.0",
|
|
128
128
|
"cac": "^6.0.0",
|
|
129
129
|
"es-module-lexer": "^1.0.0",
|
|
@@ -254,7 +254,7 @@
|
|
|
254
254
|
"react-streaming": "^0.4.3",
|
|
255
255
|
"rimraf": "^5.0.5",
|
|
256
256
|
"typescript": "^5.8.3",
|
|
257
|
-
"vite": "^
|
|
257
|
+
"vite": "^7.0.6"
|
|
258
258
|
},
|
|
259
259
|
"scripts": {
|
|
260
260
|
"dev": "tsc --watch",
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.isVirtualFileId = isVirtualFileId;
|
|
7
|
-
exports.getVirtualFileId = getVirtualFileId;
|
|
8
|
-
exports.resolveVirtualFileId = resolveVirtualFileId;
|
|
9
|
-
exports.removeVirtualIdTag = removeVirtualIdTag;
|
|
10
|
-
const picocolors_1 = __importDefault(require("@brillout/picocolors"));
|
|
11
|
-
const utils_js_1 = require("./utils.js");
|
|
12
|
-
const idBase = 'virtual:vike:';
|
|
13
|
-
// https://vitejs.dev/guide/api-plugin.html#virtual-modules-convention
|
|
14
|
-
const virtualIdTag = '\0';
|
|
15
|
-
function isVirtualFileId(id) {
|
|
16
|
-
if (id.startsWith(idBase))
|
|
17
|
-
return true;
|
|
18
|
-
if (id.startsWith(virtualIdTag + idBase))
|
|
19
|
-
return true;
|
|
20
|
-
// https://github.com/vikejs/vike/issues/1985
|
|
21
|
-
(0, utils_js_1.assertUsage)(!id.includes(idBase), `Encountered a module ID ${picocolors_1.default.cyan(id)} that is unexpected. Are you using a tool that modifies the ID of modules? For example, the baseUrl setting in tsconfig.json cannot be used.`);
|
|
22
|
-
return false;
|
|
23
|
-
}
|
|
24
|
-
function getVirtualFileId(id) {
|
|
25
|
-
return removeVirtualIdTag(id);
|
|
26
|
-
}
|
|
27
|
-
function resolveVirtualFileId(id) {
|
|
28
|
-
(0, utils_js_1.assert)(isVirtualFileId(id));
|
|
29
|
-
if (!id.startsWith(virtualIdTag)) {
|
|
30
|
-
id = virtualIdTag + id;
|
|
31
|
-
}
|
|
32
|
-
(0, utils_js_1.assert)(id.startsWith(virtualIdTag));
|
|
33
|
-
return id;
|
|
34
|
-
}
|
|
35
|
-
function removeVirtualIdTag(id) {
|
|
36
|
-
if (id.startsWith(virtualIdTag)) {
|
|
37
|
-
id = id.slice(virtualIdTag.length);
|
|
38
|
-
}
|
|
39
|
-
(0, utils_js_1.assert)(!id.startsWith(virtualIdTag));
|
|
40
|
-
return id;
|
|
41
|
-
}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export { isVirtualFileId };
|
|
2
|
-
export { getVirtualFileId };
|
|
3
|
-
export { resolveVirtualFileId };
|
|
4
|
-
export { removeVirtualIdTag };
|
|
5
|
-
declare function isVirtualFileId(id: string): boolean;
|
|
6
|
-
declare function getVirtualFileId(id: string): string;
|
|
7
|
-
declare function resolveVirtualFileId(id: string): string;
|
|
8
|
-
declare function removeVirtualIdTag(id: string): string;
|