@nativescript/vite 8.0.0-alpha.3 → 8.0.0-alpha.4
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/hmr/server/websocket-ns-m-finalize.d.ts +32 -0
- package/hmr/server/websocket-ns-m-finalize.js +73 -0
- package/hmr/server/websocket-ns-m-finalize.js.map +1 -0
- package/hmr/server/websocket-ns-m-paths.d.ts +3 -0
- package/hmr/server/websocket-ns-m-paths.js +47 -0
- package/hmr/server/websocket-ns-m-paths.js.map +1 -0
- package/hmr/server/websocket-ns-m-request.d.ts +35 -0
- package/hmr/server/websocket-ns-m-request.js +203 -0
- package/hmr/server/websocket-ns-m-request.js.map +1 -0
- package/hmr/server/websocket-runtime-compat.d.ts +19 -0
- package/hmr/server/websocket-runtime-compat.js +286 -0
- package/hmr/server/websocket-runtime-compat.js.map +1 -0
- package/hmr/server/websocket-txn.d.ts +6 -0
- package/hmr/server/websocket-txn.js +45 -0
- package/hmr/server/websocket-txn.js.map +1 -0
- package/hmr/server/websocket-vendor-unifier.d.ts +10 -0
- package/hmr/server/websocket-vendor-unifier.js +51 -0
- package/hmr/server/websocket-vendor-unifier.js.map +1 -0
- package/hmr/server/websocket-vue-sfc.d.ts +35 -0
- package/hmr/server/websocket-vue-sfc.js +1116 -0
- package/hmr/server/websocket-vue-sfc.js.map +1 -0
- package/hmr/server/websocket.d.ts +1 -1
- package/hmr/server/websocket.js +98 -2028
- package/hmr/server/websocket.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { FrameworkServerStrategy } from './framework-strategy.js';
|
|
2
|
+
export interface FinalizeNsMServedModuleHelpers {
|
|
3
|
+
requireGuardSnippet: string;
|
|
4
|
+
cleanCode(code: string): string;
|
|
5
|
+
processCodeForDevice(code: string, sourceId?: string): string;
|
|
6
|
+
rewriteImports(code: string, importerPath: string): string;
|
|
7
|
+
rewriteAngularEntry(code: string, importerPath: string): string;
|
|
8
|
+
expandStarExports(code: string): Promise<string>;
|
|
9
|
+
dedupeRtNamedImportsAgainstDestructures(code: string): string;
|
|
10
|
+
ensureVariableDynamicImportHelper(code: string): string;
|
|
11
|
+
ensureGuardPlainDynamicImports(code: string, origin: string): string;
|
|
12
|
+
deduplicateLinkerImports(code: string): string;
|
|
13
|
+
wrapCommonJsModuleForDevice(code: string): string;
|
|
14
|
+
assertNoOptimizedArtifacts(code: string, contextLabel: string): void;
|
|
15
|
+
ensureVersionedRtImports(code: string, origin: string, version: number): string;
|
|
16
|
+
ensureDestructureCoreImports(code: string): string;
|
|
17
|
+
buildBootProgressSnippet(bootModuleLabel: string): string;
|
|
18
|
+
hoistTopLevelStaticImports(code: string): string;
|
|
19
|
+
warn?(message: string, error: unknown): void;
|
|
20
|
+
}
|
|
21
|
+
export interface FinalizeNsMServedModuleOptions {
|
|
22
|
+
code: string;
|
|
23
|
+
spec: string;
|
|
24
|
+
resolvedCandidate: string | null;
|
|
25
|
+
forcedVer: string | null;
|
|
26
|
+
bootTaggedRequest: boolean;
|
|
27
|
+
graphVersion: number;
|
|
28
|
+
serverOrigin: string;
|
|
29
|
+
strategy: FrameworkServerStrategy;
|
|
30
|
+
helpers: FinalizeNsMServedModuleHelpers;
|
|
31
|
+
}
|
|
32
|
+
export declare function finalizeNsMServedModule(options: FinalizeNsMServedModuleOptions): Promise<string>;
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { fixDanglingCoreFrom, normalizeAnyCoreSpecToBridge, normalizeStrayCoreStringLiterals } from './core-sanitize.js';
|
|
2
|
+
import { ensureVersionedCoreImports } from './websocket-core-bridge.js';
|
|
3
|
+
import { formatNsMHmrServeTag, getNumericServeVersionTag, rewriteNsMImportPathForHmr } from './websocket-ns-m-paths.js';
|
|
4
|
+
function appendRoutesDefaultExport(code) {
|
|
5
|
+
if (/\bexport\s+default\b/.test(code)) {
|
|
6
|
+
return code;
|
|
7
|
+
}
|
|
8
|
+
const hasNamedRoutes = /\bexport\s*\{\s*routes\s*\}/.test(code);
|
|
9
|
+
const hasConstRoutes = /\bconst\s+routes\s*=/.test(code) || /\bvar\s+routes\s*=/.test(code) || /\blet\s+routes\s*=/.test(code);
|
|
10
|
+
if (hasNamedRoutes && hasConstRoutes) {
|
|
11
|
+
return `${code}\nexport default routes;\n`;
|
|
12
|
+
}
|
|
13
|
+
return code;
|
|
14
|
+
}
|
|
15
|
+
export async function finalizeNsMServedModule(options) {
|
|
16
|
+
const { spec, resolvedCandidate, forcedVer, bootTaggedRequest, graphVersion, serverOrigin, strategy, helpers } = options;
|
|
17
|
+
let code = `${helpers.requireGuardSnippet}${options.code}`;
|
|
18
|
+
code = helpers.cleanCode(code);
|
|
19
|
+
code = helpers.processCodeForDevice(code, resolvedCandidate || spec);
|
|
20
|
+
if (strategy.flavor === 'angular') {
|
|
21
|
+
code = helpers.rewriteAngularEntry(code, resolvedCandidate || spec);
|
|
22
|
+
}
|
|
23
|
+
else {
|
|
24
|
+
code = helpers.rewriteImports(code, resolvedCandidate || spec);
|
|
25
|
+
}
|
|
26
|
+
try {
|
|
27
|
+
code = await helpers.expandStarExports(code);
|
|
28
|
+
}
|
|
29
|
+
catch (error) {
|
|
30
|
+
helpers.warn?.('[ns/m] export* expansion failed', error);
|
|
31
|
+
}
|
|
32
|
+
code = helpers.dedupeRtNamedImportsAgainstDestructures(code);
|
|
33
|
+
code = helpers.ensureVariableDynamicImportHelper(code);
|
|
34
|
+
code = helpers.ensureGuardPlainDynamicImports(code, serverOrigin);
|
|
35
|
+
try {
|
|
36
|
+
const previous = code;
|
|
37
|
+
code = normalizeStrayCoreStringLiterals(code);
|
|
38
|
+
code = fixDanglingCoreFrom(code);
|
|
39
|
+
code = normalizeAnyCoreSpecToBridge(code);
|
|
40
|
+
if (code !== previous) {
|
|
41
|
+
code = `// [hmr-sanitize] core-literal->bridge\n${code}`;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
catch { }
|
|
45
|
+
try {
|
|
46
|
+
code = helpers.deduplicateLinkerImports(code);
|
|
47
|
+
}
|
|
48
|
+
catch { }
|
|
49
|
+
code = helpers.wrapCommonJsModuleForDevice(code);
|
|
50
|
+
helpers.assertNoOptimizedArtifacts(code, `NS M ${resolvedCandidate || spec}`);
|
|
51
|
+
code = appendRoutesDefaultExport(code);
|
|
52
|
+
const versionNumber = getNumericServeVersionTag(forcedVer, Number(graphVersion || 0));
|
|
53
|
+
code = helpers.ensureVersionedRtImports(code, serverOrigin, versionNumber);
|
|
54
|
+
code = strategy.ensureVersionedImports(code, serverOrigin, versionNumber);
|
|
55
|
+
code = ensureVersionedCoreImports(code, serverOrigin, versionNumber);
|
|
56
|
+
const serveTag = formatNsMHmrServeTag(forcedVer || graphVersion || 0);
|
|
57
|
+
const rewritePath = (value) => rewriteNsMImportPathForHmr(value, serveTag, bootTaggedRequest);
|
|
58
|
+
code = code.replace(/(from\s*["'])(\/ns\/m\/[^"'?]+)(["'])/g, (_match, before, value, after) => `${before}${rewritePath(value)}${after}`);
|
|
59
|
+
code = code.replace(/(import\s*(?!\()\s*["'])(\/ns\/m\/[^"'?]+)(["'])/g, (_match, before, value, after) => `${before}${rewritePath(value)}${after}`);
|
|
60
|
+
code = code.replace(/(import\(\s*["'])(\/ns\/m\/[^"'?]+)(["']\s*\))/g, (_match, before, value, after) => `${before}${rewritePath(value)}${after}`);
|
|
61
|
+
code = code.replace(/(new\s+URL\(\s*["'])(\/ns\/m\/[^"'?]+)(["']\s*,\s*import\.meta\.url\s*\))/g, (_match, before, value, after) => `${before}${rewritePath(value)}${after}`);
|
|
62
|
+
code = code.replace(/(new\s+URL\(\s*["'])(\/ns\/m\/[^"'?]+)(["']\s*,\s*import\.meta\.url\s*\)\.href)/g, (_match, before, value, after) => `${before}${rewritePath(value)}${after}`);
|
|
63
|
+
code = code.replace(/new\s+URL\(\s*["'](\/ns\/m\/[^"'?]+)(?:\?[^"']*)?["']\s*,\s*import\.meta\.url\s*\)\.href/g, (_match, value) => JSON.stringify(`${serverOrigin}${rewritePath(value)}`));
|
|
64
|
+
code = code.replace(/new\s+URL\(\s*["']\/ns\/sfc(\/[^"'?]+)(?:\?[^"']*)?["']\s*,\s*import\.meta\.url\s*\)\.href/g, (_match, value) => JSON.stringify(`${serverOrigin}/ns/sfc/${serveTag}${value}`));
|
|
65
|
+
code = helpers.ensureDestructureCoreImports(code);
|
|
66
|
+
if (bootTaggedRequest) {
|
|
67
|
+
const bootProgressSnippet = helpers.buildBootProgressSnippet(String(spec || '').replace(/\\/g, '/'));
|
|
68
|
+
code = `${bootProgressSnippet}${code}`;
|
|
69
|
+
code = helpers.hoistTopLevelStaticImports(code);
|
|
70
|
+
}
|
|
71
|
+
return code;
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=websocket-ns-m-finalize.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"websocket-ns-m-finalize.js","sourceRoot":"","sources":["../../../../../packages/vite/hmr/server/websocket-ns-m-finalize.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export declare function formatNsMHmrServeTag(value: string | number): string;
|
|
2
|
+
export declare function rewriteNsMImportPathForHmr(p: string, ver: string | number, bootTaggedRequest: boolean): string;
|
|
3
|
+
export declare function getNumericServeVersionTag(tag: string | null | undefined, fallback: number): number;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
export function formatNsMHmrServeTag(value) {
|
|
2
|
+
const raw = String(value ?? '').trim();
|
|
3
|
+
if (!raw) {
|
|
4
|
+
return 'v0';
|
|
5
|
+
}
|
|
6
|
+
if (raw === 'live' || /^n\d+$/i.test(raw) || /^v[^/]+$/i.test(raw)) {
|
|
7
|
+
return raw;
|
|
8
|
+
}
|
|
9
|
+
if (/^\d+$/.test(raw)) {
|
|
10
|
+
return `v${raw}`;
|
|
11
|
+
}
|
|
12
|
+
return raw;
|
|
13
|
+
}
|
|
14
|
+
export function rewriteNsMImportPathForHmr(p, ver, bootTaggedRequest) {
|
|
15
|
+
if (!p || !p.startsWith('/ns/m/')) {
|
|
16
|
+
return p;
|
|
17
|
+
}
|
|
18
|
+
const canonicalNodeModulesPath = p.replace(/^\/ns\/m\/__ns_boot__\/b1\/__ns_hmr__\/[^/]+\/node_modules\//, '/ns/m/node_modules/').replace(/^\/ns\/m\/__ns_hmr__\/[^/]+\/node_modules\//, '/ns/m/node_modules/');
|
|
19
|
+
if (canonicalNodeModulesPath.startsWith('/ns/m/node_modules/')) {
|
|
20
|
+
return canonicalNodeModulesPath;
|
|
21
|
+
}
|
|
22
|
+
if (canonicalNodeModulesPath.startsWith('/ns/m/__ns_boot__/')) {
|
|
23
|
+
return canonicalNodeModulesPath;
|
|
24
|
+
}
|
|
25
|
+
if (canonicalNodeModulesPath.startsWith('/ns/m/__ns_hmr__/')) {
|
|
26
|
+
return bootTaggedRequest ? `/ns/m/__ns_boot__/b1${canonicalNodeModulesPath.slice('/ns/m'.length)}` : canonicalNodeModulesPath;
|
|
27
|
+
}
|
|
28
|
+
const tag = formatNsMHmrServeTag(ver);
|
|
29
|
+
const hmrPrefix = `/ns/m/__ns_hmr__/${tag}`;
|
|
30
|
+
const bootHmrPrefix = `/ns/m/__ns_boot__/b1/__ns_hmr__/${tag}`;
|
|
31
|
+
return (bootTaggedRequest ? bootHmrPrefix : hmrPrefix) + canonicalNodeModulesPath.slice('/ns/m'.length);
|
|
32
|
+
}
|
|
33
|
+
export function getNumericServeVersionTag(tag, fallback) {
|
|
34
|
+
const raw = String(tag || '').trim();
|
|
35
|
+
if (!raw) {
|
|
36
|
+
return fallback;
|
|
37
|
+
}
|
|
38
|
+
const versionMatch = raw.match(/^v(\d+)$/);
|
|
39
|
+
if (versionMatch?.[1]) {
|
|
40
|
+
return Number(versionMatch[1]);
|
|
41
|
+
}
|
|
42
|
+
if (/^\d+$/.test(raw)) {
|
|
43
|
+
return Number(raw);
|
|
44
|
+
}
|
|
45
|
+
return fallback;
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=websocket-ns-m-paths.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"websocket-ns-m-paths.js","sourceRoot":"","sources":["../../../../../packages/vite/hmr/server/websocket-ns-m-paths.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,oBAAoB,CAAC,KAAsB;IAC1D,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACvC,IAAI,CAAC,GAAG,EAAE,CAAC;QACV,OAAO,IAAI,CAAC;IACb,CAAC;IACD,IAAI,GAAG,KAAK,MAAM,IAAI,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACpE,OAAO,GAAG,CAAC;IACZ,CAAC;IACD,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,IAAI,GAAG,EAAE,CAAC;IAClB,CAAC;IACD,OAAO,GAAG,CAAC;AACZ,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,CAAS,EAAE,GAAoB,EAAE,iBAA0B;IACrG,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnC,OAAO,CAAC,CAAC;IACV,CAAC;IAED,MAAM,wBAAwB,GAAG,CAAC,CAAC,OAAO,CAAC,8DAA8D,EAAE,qBAAqB,CAAC,CAAC,OAAO,CAAC,6CAA6C,EAAE,qBAAqB,CAAC,CAAC;IAEhN,IAAI,wBAAwB,CAAC,UAAU,CAAC,qBAAqB,CAAC,EAAE,CAAC;QAChE,OAAO,wBAAwB,CAAC;IACjC,CAAC;IAED,IAAI,wBAAwB,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE,CAAC;QAC/D,OAAO,wBAAwB,CAAC;IACjC,CAAC;IAED,IAAI,wBAAwB,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,CAAC;QAC9D,OAAO,iBAAiB,CAAC,CAAC,CAAC,uBAAuB,wBAAwB,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,wBAAwB,CAAC;IAC/H,CAAC;IAED,MAAM,GAAG,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC;IACtC,MAAM,SAAS,GAAG,oBAAoB,GAAG,EAAE,CAAC;IAC5C,MAAM,aAAa,GAAG,mCAAmC,GAAG,EAAE,CAAC;IAC/D,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,wBAAwB,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;AACzG,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,GAA8B,EAAE,QAAgB;IACzF,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACrC,IAAI,CAAC,GAAG,EAAE,CAAC;QACV,OAAO,QAAQ,CAAC;IACjB,CAAC;IACD,MAAM,YAAY,GAAG,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAC3C,IAAI,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvB,OAAO,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAChC,CAAC;IACD,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;IACpB,CAAC;IACD,OAAO,QAAQ,CAAC;AACjB,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { TransformResult } from 'vite';
|
|
2
|
+
export interface NsMRequestContext {
|
|
3
|
+
requestUrl: string;
|
|
4
|
+
spec: string;
|
|
5
|
+
forcedVer: string | null;
|
|
6
|
+
bootTaggedRequest: boolean;
|
|
7
|
+
serverRoot: string;
|
|
8
|
+
candidates: string[];
|
|
9
|
+
transformCandidates: string[];
|
|
10
|
+
}
|
|
11
|
+
export type NsMRequestContextResult = {
|
|
12
|
+
kind: 'next';
|
|
13
|
+
} | {
|
|
14
|
+
kind: 'response';
|
|
15
|
+
statusCode: number;
|
|
16
|
+
code: string;
|
|
17
|
+
} | {
|
|
18
|
+
kind: 'context';
|
|
19
|
+
value: NsMRequestContext;
|
|
20
|
+
};
|
|
21
|
+
export interface ResolveNsMTransformedModuleOptions {
|
|
22
|
+
context: NsMRequestContext;
|
|
23
|
+
transformRequest: (url: string, timeoutMs?: number) => Promise<TransformResult | null>;
|
|
24
|
+
resolveId: (id: string) => Promise<string | null>;
|
|
25
|
+
loadVirtualId: (id: string) => Promise<string | {
|
|
26
|
+
code?: string;
|
|
27
|
+
} | TransformResult | null>;
|
|
28
|
+
timeoutMs?: number;
|
|
29
|
+
}
|
|
30
|
+
export interface NsMResolvedTransform {
|
|
31
|
+
transformed: TransformResult | null;
|
|
32
|
+
resolvedCandidate: string | null;
|
|
33
|
+
}
|
|
34
|
+
export declare function createNsMRequestContext(requestUrl: string, serverRoot: string, appVirtualWithSlash: string): NsMRequestContextResult;
|
|
35
|
+
export declare function resolveNsMTransformedModule(options: ResolveNsMTransformedModuleOptions): Promise<NsMResolvedTransform>;
|
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
import * as path from 'path';
|
|
2
|
+
import { filterExistingNodeModulesTransformCandidates, getBlockedDeviceNodeModulesReason, resolveCandidateFilePath, stripDecoratedServePrefixes, tryReadRawExplicitJavaScriptModule } from './websocket-module-specifiers.js';
|
|
3
|
+
function normalizeAbsoluteFilesystemSpec(spec, serverRoot) {
|
|
4
|
+
const toPosix = (value) => value.replace(/\\/g, '/');
|
|
5
|
+
const rootPosix = toPosix(serverRoot);
|
|
6
|
+
const specPosix = toPosix(spec);
|
|
7
|
+
const isAbsoluteFilesystemPath = /^\//.test(specPosix) || /^[A-Za-z]:\//.test(spec);
|
|
8
|
+
if (!isAbsoluteFilesystemPath) {
|
|
9
|
+
return spec;
|
|
10
|
+
}
|
|
11
|
+
let relative = specPosix.startsWith(rootPosix) ? specPosix.slice(rootPosix.length) : path.posix.relative(rootPosix, specPosix);
|
|
12
|
+
if (relative.startsWith('..')) {
|
|
13
|
+
return spec;
|
|
14
|
+
}
|
|
15
|
+
if (!relative.startsWith('/')) {
|
|
16
|
+
relative = `/${relative}`;
|
|
17
|
+
}
|
|
18
|
+
return relative;
|
|
19
|
+
}
|
|
20
|
+
export function createNsMRequestContext(requestUrl, serverRoot, appVirtualWithSlash) {
|
|
21
|
+
try {
|
|
22
|
+
const urlObj = new URL(requestUrl || '', 'http://localhost');
|
|
23
|
+
if (!urlObj.pathname.startsWith('/ns/m')) {
|
|
24
|
+
return { kind: 'next' };
|
|
25
|
+
}
|
|
26
|
+
let spec = urlObj.searchParams.get('path') || '';
|
|
27
|
+
let forcedVer = urlObj.searchParams.get('v');
|
|
28
|
+
let bootTaggedRequest = false;
|
|
29
|
+
if (!spec) {
|
|
30
|
+
const base = '/ns/m';
|
|
31
|
+
const rest = urlObj.pathname.slice(base.length);
|
|
32
|
+
if (rest && rest !== '/') {
|
|
33
|
+
spec = rest;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
if (spec === '/__invalid_at__.mjs' || spec === '__invalid_at__.mjs') {
|
|
37
|
+
return {
|
|
38
|
+
kind: 'response',
|
|
39
|
+
statusCode: 200,
|
|
40
|
+
code: "// invalid '@' import stub\nexport {}\n",
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
if (!spec) {
|
|
44
|
+
return {
|
|
45
|
+
kind: 'response',
|
|
46
|
+
statusCode: 200,
|
|
47
|
+
code: 'export {}\n',
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
spec = spec.replace(/[?#].*$/, '');
|
|
51
|
+
const decorated = stripDecoratedServePrefixes(spec);
|
|
52
|
+
spec = decorated.cleanedSpec;
|
|
53
|
+
bootTaggedRequest = decorated.bootTaggedRequest;
|
|
54
|
+
forcedVer || (forcedVer = decorated.forcedVer);
|
|
55
|
+
spec = normalizeAbsoluteFilesystemSpec(spec, serverRoot);
|
|
56
|
+
if (spec.startsWith('@/')) {
|
|
57
|
+
spec = appVirtualWithSlash + spec.slice(2);
|
|
58
|
+
}
|
|
59
|
+
if (spec.startsWith('./')) {
|
|
60
|
+
spec = spec.slice(1);
|
|
61
|
+
}
|
|
62
|
+
const blockedNodeModulesReason = getBlockedDeviceNodeModulesReason(spec);
|
|
63
|
+
if (blockedNodeModulesReason) {
|
|
64
|
+
return {
|
|
65
|
+
kind: 'response',
|
|
66
|
+
statusCode: 404,
|
|
67
|
+
code: `// [ns:m] blocked device import\nthrow new Error(${JSON.stringify(`[ns/m] ${blockedNodeModulesReason}`)});\nexport {};\n`,
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
if (!spec.startsWith('/')) {
|
|
71
|
+
spec = `/${spec}`;
|
|
72
|
+
}
|
|
73
|
+
const hasExt = /\.(ts|tsx|js|jsx|mjs|mts|cts|vue)$/i.test(spec);
|
|
74
|
+
const baseNoExt = hasExt ? spec.replace(/\.(ts|tsx|js|jsx|mjs|mts|cts)$/i, '') : spec;
|
|
75
|
+
const candidates = [
|
|
76
|
+
...(hasExt ? [spec] : []),
|
|
77
|
+
`${baseNoExt}.ts`,
|
|
78
|
+
`${baseNoExt}.js`,
|
|
79
|
+
`${baseNoExt}.tsx`,
|
|
80
|
+
`${baseNoExt}.jsx`,
|
|
81
|
+
`${baseNoExt}.mjs`,
|
|
82
|
+
`${baseNoExt}.mts`,
|
|
83
|
+
`${baseNoExt}.cts`,
|
|
84
|
+
`${baseNoExt}.vue`,
|
|
85
|
+
`${baseNoExt}/index.ts`,
|
|
86
|
+
`${baseNoExt}/index.js`,
|
|
87
|
+
`${baseNoExt}/index.tsx`,
|
|
88
|
+
`${baseNoExt}/index.jsx`,
|
|
89
|
+
`${baseNoExt}/index.mjs`,
|
|
90
|
+
];
|
|
91
|
+
const transformCandidates = filterExistingNodeModulesTransformCandidates(spec, candidates, serverRoot);
|
|
92
|
+
return {
|
|
93
|
+
kind: 'context',
|
|
94
|
+
value: {
|
|
95
|
+
requestUrl,
|
|
96
|
+
spec,
|
|
97
|
+
forcedVer,
|
|
98
|
+
bootTaggedRequest,
|
|
99
|
+
serverRoot,
|
|
100
|
+
candidates,
|
|
101
|
+
transformCandidates,
|
|
102
|
+
},
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
catch {
|
|
106
|
+
return { kind: 'next' };
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
async function tryTransformRequest(transformRequest, url, timeoutMs) {
|
|
110
|
+
try {
|
|
111
|
+
return await transformRequest(url, timeoutMs);
|
|
112
|
+
}
|
|
113
|
+
catch {
|
|
114
|
+
return null;
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
function getLoadedCode(loadResult) {
|
|
118
|
+
if (!loadResult) {
|
|
119
|
+
return null;
|
|
120
|
+
}
|
|
121
|
+
if (typeof loadResult === 'string') {
|
|
122
|
+
return loadResult;
|
|
123
|
+
}
|
|
124
|
+
return typeof loadResult.code === 'string' ? loadResult.code : null;
|
|
125
|
+
}
|
|
126
|
+
export async function resolveNsMTransformedModule(options) {
|
|
127
|
+
const { context, transformRequest, resolveId, loadVirtualId, timeoutMs = 120000 } = options;
|
|
128
|
+
const { spec, serverRoot, transformCandidates } = context;
|
|
129
|
+
let transformed = null;
|
|
130
|
+
let resolvedCandidate = null;
|
|
131
|
+
if (spec.startsWith('/@id/')) {
|
|
132
|
+
transformed = await tryTransformRequest(transformRequest, spec, timeoutMs);
|
|
133
|
+
if (transformed?.code) {
|
|
134
|
+
return { transformed, resolvedCandidate };
|
|
135
|
+
}
|
|
136
|
+
try {
|
|
137
|
+
const rawId = spec.slice('/@id/'.length).replace(/__x00__/g, '\0');
|
|
138
|
+
const loadedCode = getLoadedCode(await loadVirtualId(rawId));
|
|
139
|
+
if (loadedCode) {
|
|
140
|
+
return {
|
|
141
|
+
transformed: { code: loadedCode },
|
|
142
|
+
resolvedCandidate: rawId,
|
|
143
|
+
};
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
catch { }
|
|
147
|
+
}
|
|
148
|
+
const rawExplicitModule = tryReadRawExplicitJavaScriptModule(spec, serverRoot);
|
|
149
|
+
if (rawExplicitModule) {
|
|
150
|
+
return {
|
|
151
|
+
transformed: { code: rawExplicitModule.code },
|
|
152
|
+
resolvedCandidate: rawExplicitModule.resolvedId,
|
|
153
|
+
};
|
|
154
|
+
}
|
|
155
|
+
for (const candidate of transformCandidates) {
|
|
156
|
+
transformed = await tryTransformRequest(transformRequest, candidate, timeoutMs);
|
|
157
|
+
if (transformed?.code) {
|
|
158
|
+
resolvedCandidate = candidate;
|
|
159
|
+
return { transformed, resolvedCandidate };
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
const resolvedId = await resolveId(spec);
|
|
163
|
+
if (resolvedId) {
|
|
164
|
+
transformed = await tryTransformRequest(transformRequest, resolvedId, timeoutMs);
|
|
165
|
+
if (transformed?.code) {
|
|
166
|
+
return { transformed, resolvedCandidate: resolvedId };
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
if (spec.includes('/node_modules/')) {
|
|
170
|
+
const nodeModulesIndex = spec.lastIndexOf('/node_modules/');
|
|
171
|
+
const bareSpecifier = spec.slice(nodeModulesIndex + '/node_modules/'.length);
|
|
172
|
+
if (bareSpecifier && !bareSpecifier.startsWith('.')) {
|
|
173
|
+
const resolvedBareId = await resolveId(bareSpecifier);
|
|
174
|
+
if (resolvedBareId) {
|
|
175
|
+
transformed = await tryTransformRequest(transformRequest, resolvedBareId, timeoutMs);
|
|
176
|
+
if (transformed?.code) {
|
|
177
|
+
return { transformed, resolvedCandidate: resolvedBareId };
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
const absolutePosixPath = `${serverRoot.replace(/\\/g, '/').replace(/\/$/, '')}${spec.startsWith('/') ? '' : '/'}${spec}`;
|
|
183
|
+
const fsId = `/@fs${absolutePosixPath}`;
|
|
184
|
+
if (resolveCandidateFilePath(fsId, serverRoot)) {
|
|
185
|
+
transformed = await tryTransformRequest(transformRequest, fsId, timeoutMs);
|
|
186
|
+
if (transformed?.code) {
|
|
187
|
+
return { transformed, resolvedCandidate: fsId };
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
for (const candidate of transformCandidates) {
|
|
191
|
+
const importHintCandidate = `${candidate}${candidate.includes('?') ? '&' : '?'}import`;
|
|
192
|
+
transformed = await tryTransformRequest(transformRequest, importHintCandidate, timeoutMs);
|
|
193
|
+
if (transformed?.code) {
|
|
194
|
+
resolvedCandidate = importHintCandidate;
|
|
195
|
+
return { transformed, resolvedCandidate };
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
return {
|
|
199
|
+
transformed: null,
|
|
200
|
+
resolvedCandidate,
|
|
201
|
+
};
|
|
202
|
+
}
|
|
203
|
+
//# sourceMappingURL=websocket-ns-m-request.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"websocket-ns-m-request.js","sourceRoot":"","sources":["../../../../../packages/vite/hmr/server/websocket-ns-m-request.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { ViteDevServer } from 'vite';
|
|
2
|
+
export interface RegisterRuntimeCompatHandlersOptions {
|
|
3
|
+
verbose: boolean;
|
|
4
|
+
requireGuardSnippet: string;
|
|
5
|
+
appRootDir: string;
|
|
6
|
+
defaultMainEntry: string;
|
|
7
|
+
defaultMainEntryVirtual: string;
|
|
8
|
+
getGraphVersion(): number;
|
|
9
|
+
getServerOrigin(server: ViteDevServer): string;
|
|
10
|
+
}
|
|
11
|
+
export declare function buildNsRtBridgeModule(rtVer: string, requireGuardSnippet: string): string;
|
|
12
|
+
export declare function buildNsEntryWrapper(params: {
|
|
13
|
+
origin: string;
|
|
14
|
+
mainEntry: string;
|
|
15
|
+
ver: string;
|
|
16
|
+
verbose: boolean;
|
|
17
|
+
requireGuardSnippet: string;
|
|
18
|
+
}): string;
|
|
19
|
+
export declare function registerRuntimeCompatHandlers(server: ViteDevServer, options: RegisterRuntimeCompatHandlersOptions): void;
|