@absolutejs/absolute 0.19.0-beta.96 → 0.19.0-beta.98
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/.absolutejs/tsconfig.tsbuildinfo +1 -1
- package/dist/build.js +146 -94
- package/dist/build.js.map +6 -6
- package/dist/dev/client/handlers/react.ts +19 -35
- package/dist/index.js +149 -97
- package/dist/index.js.map +6 -6
- package/dist/src/dev/transformCache.d.ts +2 -0
- package/package.json +2 -2
- package/types/globals.d.ts +0 -1
- package/dist/freshBuildWorker.js +0 -559
- package/dist/src/build/freshBuildWorker.d.ts +0 -1
- package/dist/src/build/freshReadPlugin.d.ts +0 -2
|
@@ -40,25 +40,7 @@ export const handleReactUpdate = (message: {
|
|
|
40
40
|
return;
|
|
41
41
|
}
|
|
42
42
|
|
|
43
|
-
|
|
44
|
-
const newUrl = componentKey && message.data.manifest?.[componentKey];
|
|
45
|
-
|
|
46
|
-
if (newUrl && refreshRuntime) {
|
|
47
|
-
// Bundled files have bare specifiers (react-dom/client) that
|
|
48
|
-
// the browser can't resolve via import(). Only use import()
|
|
49
|
-
// for module server URLs (/@src/). Bundled files need a reload.
|
|
50
|
-
if (newUrl.startsWith('/@src/')) {
|
|
51
|
-
applyRefreshImport(newUrl, refreshRuntime, serverDuration);
|
|
52
|
-
|
|
53
|
-
return;
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
// Bundled file — reload to load the new script tag
|
|
57
|
-
window.location.reload();
|
|
58
|
-
|
|
59
|
-
return;
|
|
60
|
-
}
|
|
61
|
-
|
|
43
|
+
// No module URL — shouldn't happen, but reload as safety fallback
|
|
62
44
|
window.location.reload();
|
|
63
45
|
};
|
|
64
46
|
|
|
@@ -87,24 +69,14 @@ const applyRefreshImport = (
|
|
|
87
69
|
.then(() => {
|
|
88
70
|
const result = refreshRuntime.performReactRefresh();
|
|
89
71
|
|
|
90
|
-
// If
|
|
91
|
-
//
|
|
92
|
-
//
|
|
93
|
-
//
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
return import(
|
|
97
|
-
`${window.__REACT_PAGE_MODULE__}?t=${Date.now()}`
|
|
98
|
-
).then(() => {
|
|
99
|
-
refreshRuntime.performReactRefresh();
|
|
100
|
-
|
|
101
|
-
return undefined;
|
|
102
|
-
});
|
|
72
|
+
// If no components were refreshed (data file HMR), force a
|
|
73
|
+
// re-render. The mutable store (globalThis.__HMR_DATA__) has
|
|
74
|
+
// fresh values — components just need to re-execute their
|
|
75
|
+
// render functions to read them.
|
|
76
|
+
if (!result) {
|
|
77
|
+
forceReactRerender();
|
|
103
78
|
}
|
|
104
79
|
|
|
105
|
-
return undefined;
|
|
106
|
-
})
|
|
107
|
-
.then(() => {
|
|
108
80
|
sendTiming(clientStart, serverDuration);
|
|
109
81
|
|
|
110
82
|
return undefined;
|
|
@@ -118,6 +90,18 @@ const applyRefreshImport = (
|
|
|
118
90
|
});
|
|
119
91
|
};
|
|
120
92
|
|
|
93
|
+
// Force React to re-render the entire tree. Components read from
|
|
94
|
+
// the mutable HMR data store (destructured at render time via
|
|
95
|
+
// rewriteDataImports), so re-rendering picks up fresh values.
|
|
96
|
+
const forceReactRerender = () => {
|
|
97
|
+
const boundary = window.__ERROR_BOUNDARY__ as
|
|
98
|
+
| { hmrUpdate?: () => void }
|
|
99
|
+
| undefined;
|
|
100
|
+
if (boundary?.hmrUpdate) {
|
|
101
|
+
boundary.hmrUpdate();
|
|
102
|
+
}
|
|
103
|
+
};
|
|
104
|
+
|
|
121
105
|
const reloadReactCSS = (cssPath: string) => {
|
|
122
106
|
const existingCSSLinks = document.head.querySelectorAll<HTMLLinkElement>(
|
|
123
107
|
'link[rel="stylesheet"]'
|
package/dist/index.js
CHANGED
|
@@ -202,7 +202,7 @@ __export(exports_generateReactIndexes, {
|
|
|
202
202
|
});
|
|
203
203
|
import { existsSync, mkdirSync } from "fs";
|
|
204
204
|
import { readdir, rm, writeFile } from "fs/promises";
|
|
205
|
-
import { basename, join,
|
|
205
|
+
import { basename, join, resolve as resolve2 } from "path";
|
|
206
206
|
var {Glob } = globalThis.Bun;
|
|
207
207
|
var indexContentCache, resolveDevClientDir = () => {
|
|
208
208
|
const fromSource = resolve2(import.meta.dir, "../dev/client");
|
|
@@ -239,7 +239,6 @@ var indexContentCache, resolveDevClientDir = () => {
|
|
|
239
239
|
const hmrPreamble = isDev ? [
|
|
240
240
|
`window.__HMR_FRAMEWORK__ = "react";`,
|
|
241
241
|
`window.__REACT_COMPONENT_KEY__ = "${componentName}Index";`,
|
|
242
|
-
`window.__REACT_PAGE_MODULE__ = "/@src/${relative(process.cwd(), resolve2(reactPagesDirectory, componentName + ".tsx")).replace(/\\\\/g, "/")}";`,
|
|
243
242
|
`import '${refreshSetupPath}';`,
|
|
244
243
|
`import '${hmrClientPath}';`,
|
|
245
244
|
`import { showErrorOverlay, hideErrorOverlay } from '${errorOverlayPath}';
|
|
@@ -279,6 +278,9 @@ var indexContentCache, resolveDevClientDir = () => {
|
|
|
279
278
|
` reset() {`,
|
|
280
279
|
` this.setState({ hasError: false });`,
|
|
281
280
|
` }`,
|
|
281
|
+
` hmrUpdate() {`,
|
|
282
|
+
` this.forceUpdate();`,
|
|
283
|
+
` }`,
|
|
282
284
|
` render() {`,
|
|
283
285
|
` if (this.state.hasError) return null;`,
|
|
284
286
|
``,
|
|
@@ -946,7 +948,7 @@ var devVendorPaths = null, getDevVendorPaths = () => devVendorPaths, setDevVendo
|
|
|
946
948
|
|
|
947
949
|
// src/build/angularLinkerPlugin.ts
|
|
948
950
|
import { existsSync as existsSync7, mkdirSync as mkdirSync3, readFileSync as readFileSync3, writeFileSync as writeFileSync2 } from "fs";
|
|
949
|
-
import { dirname as dirname2, join as join4, relative
|
|
951
|
+
import { dirname as dirname2, join as join4, relative, resolve as resolve5 } from "path";
|
|
950
952
|
import { createHash } from "crypto";
|
|
951
953
|
var CACHE_DIR, angularLinkerPlugin;
|
|
952
954
|
var init_angularLinkerPlugin = __esm(() => {
|
|
@@ -989,7 +991,7 @@ var init_angularLinkerPlugin = __esm(() => {
|
|
|
989
991
|
dirname: dirname2,
|
|
990
992
|
exists: existsSync7,
|
|
991
993
|
readFile: readFileSync3,
|
|
992
|
-
relative
|
|
994
|
+
relative,
|
|
993
995
|
resolve: resolve5
|
|
994
996
|
},
|
|
995
997
|
linkerJitMode: false,
|
|
@@ -1030,11 +1032,11 @@ var HASHED_FILE_PATTERN, cleanStaleOutputs = async (buildPath, currentOutputPath
|
|
|
1030
1032
|
const currentPaths = new Set(currentOutputPaths.map((path) => resolve6(path)));
|
|
1031
1033
|
const glob = new Glob4("**/*");
|
|
1032
1034
|
const removals = [];
|
|
1033
|
-
for (const
|
|
1034
|
-
const absolute = resolve6(buildPath,
|
|
1035
|
+
for (const relative2 of glob.scanSync({ cwd: buildPath })) {
|
|
1036
|
+
const absolute = resolve6(buildPath, relative2);
|
|
1035
1037
|
if (currentPaths.has(absolute))
|
|
1036
1038
|
continue;
|
|
1037
|
-
if (!HASHED_FILE_PATTERN.test(
|
|
1039
|
+
if (!HASHED_FILE_PATTERN.test(relative2))
|
|
1038
1040
|
continue;
|
|
1039
1041
|
removals.push(rm2(absolute, { force: true }));
|
|
1040
1042
|
}
|
|
@@ -1188,12 +1190,12 @@ var init_startupBanner = __esm(() => {
|
|
|
1188
1190
|
// src/utils/logger.ts
|
|
1189
1191
|
var colors2, frameworkColors, formatPath = (filePath) => {
|
|
1190
1192
|
const cwd = process.cwd();
|
|
1191
|
-
let
|
|
1192
|
-
|
|
1193
|
-
if (!
|
|
1194
|
-
|
|
1193
|
+
let relative2 = filePath.startsWith(cwd) ? filePath.slice(cwd.length + 1) : filePath;
|
|
1194
|
+
relative2 = relative2.replace(/\\/g, "/");
|
|
1195
|
+
if (!relative2.startsWith("/")) {
|
|
1196
|
+
relative2 = `/${relative2}`;
|
|
1195
1197
|
}
|
|
1196
|
-
return
|
|
1198
|
+
return relative2;
|
|
1197
1199
|
}, getFrameworkColor = (framework) => frameworkColors[framework] || colors2.white, log = (action, options) => {
|
|
1198
1200
|
const timestamp = `${colors2.dim}${formatTimestamp()}${colors2.reset}`;
|
|
1199
1201
|
const tag = `${colors2.cyan}[hmr]${colors2.reset}`;
|
|
@@ -1252,11 +1254,11 @@ var init_logger = __esm(() => {
|
|
|
1252
1254
|
});
|
|
1253
1255
|
|
|
1254
1256
|
// src/utils/validateSafePath.ts
|
|
1255
|
-
import { resolve as resolve7, relative as
|
|
1257
|
+
import { resolve as resolve7, relative as relative2 } from "path";
|
|
1256
1258
|
var validateSafePath = (targetPath, baseDirectory) => {
|
|
1257
1259
|
const absoluteBase = resolve7(baseDirectory);
|
|
1258
1260
|
const absoluteTarget = resolve7(baseDirectory, targetPath);
|
|
1259
|
-
const relativePath = normalizePath(
|
|
1261
|
+
const relativePath = normalizePath(relative2(absoluteBase, absoluteTarget));
|
|
1260
1262
|
if (relativePath.startsWith("../") || relativePath === "..") {
|
|
1261
1263
|
throw new Error(`Unsafe path: ${targetPath}`);
|
|
1262
1264
|
}
|
|
@@ -1278,7 +1280,7 @@ import {
|
|
|
1278
1280
|
basename as basename2,
|
|
1279
1281
|
extname as extname2,
|
|
1280
1282
|
resolve as resolve8,
|
|
1281
|
-
relative as
|
|
1283
|
+
relative as relative3,
|
|
1282
1284
|
sep
|
|
1283
1285
|
} from "path";
|
|
1284
1286
|
import { env } from "process";
|
|
@@ -1342,7 +1344,7 @@ var resolveDevClientDir2 = () => {
|
|
|
1342
1344
|
const isModule = src.endsWith(".svelte.ts") || src.endsWith(".svelte.js");
|
|
1343
1345
|
const preprocessed = isModule ? raw : (await preprocess(raw, {})).code;
|
|
1344
1346
|
const transpiled = src.endsWith(".ts") || src.endsWith(".svelte.ts") ? transpiler.transformSync(preprocessed) : preprocessed;
|
|
1345
|
-
const relDir = dirname3(
|
|
1347
|
+
const relDir = dirname3(relative3(svelteRoot, src)).replace(/\\/g, "/");
|
|
1346
1348
|
const baseName = basename2(src).replace(/\.svelte(\.(ts|js))?$/, "");
|
|
1347
1349
|
const importPaths = Array.from(transpiled.matchAll(/from\s+['"]([^'"]+)['"]/g)).map((match) => match[1]).filter((path) => path !== undefined);
|
|
1348
1350
|
const resolvedImports = await Promise.all(importPaths.map((importPath) => resolveSvelte(importPath, src)));
|
|
@@ -1361,7 +1363,7 @@ var resolveDevClientDir2 = () => {
|
|
|
1361
1363
|
}).js.code;
|
|
1362
1364
|
let code = raw2.replace(/\.svelte(?:\.(?:ts|js))?(['"])/g, ".js$1");
|
|
1363
1365
|
if (mode === "client" && isDev) {
|
|
1364
|
-
const moduleKey = `/@src/${
|
|
1366
|
+
const moduleKey = `/@src/${relative3(process.cwd(), src).replace(/\\/g, "/")}`;
|
|
1365
1367
|
code = code.replace(/if\s*\(import\.meta\.hot\)\s*\{/, `if (typeof window !== "undefined") {
|
|
1366
1368
|
if (!window.__SVELTE_HMR_ACCEPT__) window.__SVELTE_HMR_ACCEPT__ = {};
|
|
1367
1369
|
var __hmr_accept = function(cb) { window.__SVELTE_HMR_ACCEPT__[${JSON.stringify(moduleKey)}] = cb; };`);
|
|
@@ -1396,10 +1398,10 @@ var resolveDevClientDir2 = () => {
|
|
|
1396
1398
|
};
|
|
1397
1399
|
const roots = await Promise.all(entryPoints.map(build2));
|
|
1398
1400
|
await Promise.all(roots.map(async ({ client: client2 }) => {
|
|
1399
|
-
const relClientDir = dirname3(
|
|
1401
|
+
const relClientDir = dirname3(relative3(clientDir, client2));
|
|
1400
1402
|
const name = basename2(client2, extname2(client2));
|
|
1401
1403
|
const indexPath = join6(indexDir, relClientDir, `${name}.js`);
|
|
1402
|
-
const importRaw =
|
|
1404
|
+
const importRaw = relative3(dirname3(indexPath), client2).split(sep).join("/");
|
|
1403
1405
|
const importPath = importRaw.startsWith(".") || importRaw.startsWith("/") ? importRaw : `./${importRaw}`;
|
|
1404
1406
|
const hmrImports = isDev ? `window.__HMR_FRAMEWORK__ = "svelte";
|
|
1405
1407
|
import "${hmrClientPath3}";
|
|
@@ -1439,7 +1441,7 @@ if (typeof window !== "undefined") {
|
|
|
1439
1441
|
return {
|
|
1440
1442
|
svelteClientPaths: roots.map(({ client: client2 }) => client2),
|
|
1441
1443
|
svelteIndexPaths: roots.map(({ client: client2 }) => {
|
|
1442
|
-
const rel = dirname3(
|
|
1444
|
+
const rel = dirname3(relative3(clientDir, client2));
|
|
1443
1445
|
return join6(indexDir, rel, basename2(client2));
|
|
1444
1446
|
}),
|
|
1445
1447
|
svelteServerPaths: roots.map(({ ssr }) => ssr)
|
|
@@ -1464,7 +1466,7 @@ __export(exports_compileVue, {
|
|
|
1464
1466
|
});
|
|
1465
1467
|
import { existsSync as existsSync9 } from "fs";
|
|
1466
1468
|
import { mkdir as mkdir2 } from "fs/promises";
|
|
1467
|
-
import { basename as basename3, dirname as dirname4, join as join7, relative as
|
|
1469
|
+
import { basename as basename3, dirname as dirname4, join as join7, relative as relative4, resolve as resolve9 } from "path";
|
|
1468
1470
|
var {file: file3, write: write2, Transpiler: Transpiler2 } = globalThis.Bun;
|
|
1469
1471
|
var resolveDevClientDir3 = () => {
|
|
1470
1472
|
const fromSource = resolve9(import.meta.dir, "../dev/client");
|
|
@@ -1509,7 +1511,7 @@ var resolveDevClientDir3 = () => {
|
|
|
1509
1511
|
return "template-only";
|
|
1510
1512
|
}
|
|
1511
1513
|
return "full";
|
|
1512
|
-
}, generateVueHmrId = (sourceFilePath, vueRootDir) =>
|
|
1514
|
+
}, generateVueHmrId = (sourceFilePath, vueRootDir) => relative4(vueRootDir, sourceFilePath).replace(/\\/g, "/").replace(/\.vue$/, ""), extractImports = (sourceCode) => Array.from(sourceCode.matchAll(/import\s+[\s\S]+?['"]([^'"]+)['"]/g)).map((match) => match[1]).filter((importPath) => importPath !== undefined), toJs = (filePath) => {
|
|
1513
1515
|
if (filePath.endsWith(".vue"))
|
|
1514
1516
|
return filePath.replace(/\.vue$/, ".js");
|
|
1515
1517
|
if (filePath.endsWith(".ts"))
|
|
@@ -1536,7 +1538,7 @@ var resolveDevClientDir3 = () => {
|
|
|
1536
1538
|
const cachedResult = cacheMap.get(sourceFilePath);
|
|
1537
1539
|
if (cachedResult)
|
|
1538
1540
|
return cachedResult;
|
|
1539
|
-
const relativeFilePath =
|
|
1541
|
+
const relativeFilePath = relative4(vueRootDir, sourceFilePath).replace(/\\/g, "/");
|
|
1540
1542
|
const relativeWithoutExtension = relativeFilePath.replace(/\.vue$/, "");
|
|
1541
1543
|
const fileBaseName = basename3(sourceFilePath, ".vue");
|
|
1542
1544
|
const componentId = toKebab(fileBaseName);
|
|
@@ -1665,7 +1667,7 @@ if (typeof __VUE_HMR_RUNTIME__ !== 'undefined') {
|
|
|
1665
1667
|
result.tsHelperPaths.forEach((path) => allTsHelperPaths.add(path));
|
|
1666
1668
|
const entryBaseName = basename3(entryPath, ".vue");
|
|
1667
1669
|
const indexOutputFile = join7(indexOutputDir, `${entryBaseName}.js`);
|
|
1668
|
-
const clientOutputFile = join7(clientOutputDir,
|
|
1670
|
+
const clientOutputFile = join7(clientOutputDir, relative4(vueRootDir, entryPath).replace(/\\/g, "/").replace(/\.vue$/, ".js"));
|
|
1669
1671
|
await mkdir2(dirname4(indexOutputFile), { recursive: true });
|
|
1670
1672
|
const vueHmrImports = isDev ? [
|
|
1671
1673
|
`window.__HMR_FRAMEWORK__ = "vue";`,
|
|
@@ -1673,7 +1675,7 @@ if (typeof __VUE_HMR_RUNTIME__ !== 'undefined') {
|
|
|
1673
1675
|
] : [];
|
|
1674
1676
|
await write2(indexOutputFile, [
|
|
1675
1677
|
...vueHmrImports,
|
|
1676
|
-
`import Comp from "${
|
|
1678
|
+
`import Comp from "${relative4(dirname4(indexOutputFile), clientOutputFile).replace(/\\/g, "/")}";`,
|
|
1677
1679
|
'import { createSSRApp, createApp } from "vue";',
|
|
1678
1680
|
"",
|
|
1679
1681
|
"// HMR State Preservation: Check for preserved state from HMR",
|
|
@@ -1773,7 +1775,7 @@ if (typeof __VUE_HMR_RUNTIME__ !== 'undefined') {
|
|
|
1773
1775
|
await Promise.all(Array.from(allTsHelperPaths).map(async (tsPath) => {
|
|
1774
1776
|
const sourceCode = await file3(tsPath).text();
|
|
1775
1777
|
const transpiledCode = transpiler2.transformSync(sourceCode);
|
|
1776
|
-
const relativeJsPath =
|
|
1778
|
+
const relativeJsPath = relative4(vueRootDir, tsPath).replace(/\.ts$/, ".js");
|
|
1777
1779
|
const outClientPath = join7(clientOutputDir, relativeJsPath);
|
|
1778
1780
|
const outServerPath = join7(serverOutputDir, relativeJsPath);
|
|
1779
1781
|
await mkdir2(dirname4(outClientPath), { recursive: true });
|
|
@@ -10663,11 +10665,11 @@ ${lanes.join(`
|
|
|
10663
10665
|
return toComponents;
|
|
10664
10666
|
}
|
|
10665
10667
|
const components = toComponents.slice(start);
|
|
10666
|
-
const
|
|
10668
|
+
const relative5 = [];
|
|
10667
10669
|
for (;start < fromComponents.length; start++) {
|
|
10668
|
-
|
|
10670
|
+
relative5.push("..");
|
|
10669
10671
|
}
|
|
10670
|
-
return ["", ...
|
|
10672
|
+
return ["", ...relative5, ...components];
|
|
10671
10673
|
}
|
|
10672
10674
|
function getRelativePathFromDirectory(fromDirectory, to, getCanonicalFileNameOrIgnoreCase) {
|
|
10673
10675
|
Debug.assert(getRootLength(fromDirectory) > 0 === getRootLength(to) > 0, "Paths must either both be absolute or both be relative");
|
|
@@ -47963,9 +47965,9 @@ ${lanes.join(`
|
|
|
47963
47965
|
if (!startsWithDirectory(target, realPathDirectory, getCanonicalFileName)) {
|
|
47964
47966
|
return;
|
|
47965
47967
|
}
|
|
47966
|
-
const
|
|
47968
|
+
const relative5 = getRelativePathFromDirectory(realPathDirectory, target, getCanonicalFileName);
|
|
47967
47969
|
for (const symlinkDirectory of symlinkDirectories) {
|
|
47968
|
-
const option = resolvePath(symlinkDirectory,
|
|
47970
|
+
const option = resolvePath(symlinkDirectory, relative5);
|
|
47969
47971
|
const result2 = cb(option, target === referenceRedirect);
|
|
47970
47972
|
shouldFilterIgnoredPaths = true;
|
|
47971
47973
|
if (result2)
|
|
@@ -170531,7 +170533,7 @@ __export(exports_compileAngular, {
|
|
|
170531
170533
|
compileAngular: () => compileAngular
|
|
170532
170534
|
});
|
|
170533
170535
|
import { existsSync as existsSync10, readFileSync as readFileSync4, promises as fs } from "fs";
|
|
170534
|
-
import { join as join8, basename as basename4, sep as sep2, dirname as dirname5, resolve as resolve10, relative as
|
|
170536
|
+
import { join as join8, basename as basename4, sep as sep2, dirname as dirname5, resolve as resolve10, relative as relative5 } from "path";
|
|
170535
170537
|
import { createHash as createHash2 } from "crypto";
|
|
170536
170538
|
var import_typescript, computeConfigHash = () => {
|
|
170537
170539
|
try {
|
|
@@ -170840,7 +170842,7 @@ export default ${componentClassName};
|
|
|
170840
170842
|
await fs.writeFile(ssrDepsFile, ssrDepsContent, "utf-8");
|
|
170841
170843
|
}
|
|
170842
170844
|
await fs.writeFile(rawServerFile, rewritten, "utf-8");
|
|
170843
|
-
const relativePath =
|
|
170845
|
+
const relativePath = relative5(indexesDir, rawServerFile).replace(/\\/g, "/");
|
|
170844
170846
|
const normalizedImportPath = relativePath.startsWith(".") ? relativePath : `./${relativePath}`;
|
|
170845
170847
|
const hmrPreamble = hmr ? `window.__HMR_FRAMEWORK__ = "angular";
|
|
170846
170848
|
import "${hmrRuntimePath}";
|
|
@@ -171219,7 +171221,7 @@ import {
|
|
|
171219
171221
|
rmSync,
|
|
171220
171222
|
writeFileSync as writeFileSync3
|
|
171221
171223
|
} from "fs";
|
|
171222
|
-
import { basename as basename5, join as join13, relative as
|
|
171224
|
+
import { basename as basename5, join as join13, relative as relative6, resolve as resolve11 } from "path";
|
|
171223
171225
|
import { cwd, env as env2, exit } from "process";
|
|
171224
171226
|
var {build: bunBuild6, Glob: Glob5 } = globalThis.Bun;
|
|
171225
171227
|
var isDev, extractBuildError = (logs, pass, label, frameworkNames, isIncremental, throwOnError) => {
|
|
@@ -171784,7 +171786,7 @@ var isDev, extractBuildError = (logs, pass, label, frameworkNames, isIncremental
|
|
|
171784
171786
|
const devIndexDir = join13(buildPath, "_src_indexes");
|
|
171785
171787
|
mkdirSync8(devIndexDir, { recursive: true });
|
|
171786
171788
|
const indexFiles = readDir(reactIndexesPath).filter((f) => f.endsWith(".tsx"));
|
|
171787
|
-
const pagesRel =
|
|
171789
|
+
const pagesRel = relative6(process.cwd(), resolve11(reactPagesPath)).replace(/\\/g, "/");
|
|
171788
171790
|
for (const file4 of indexFiles) {
|
|
171789
171791
|
let content = readFileSync5(join13(reactIndexesPath, file4), "utf-8");
|
|
171790
171792
|
content = content.replace(/from\s*['"]\.\.\/pages\/([^'"]+)['"]/g, `from '/@src/${pagesRel}/$1'`);
|
|
@@ -202323,15 +202325,6 @@ var init_pageHandler = __esm(() => {
|
|
|
202323
202325
|
});
|
|
202324
202326
|
|
|
202325
202327
|
// src/dev/transformCache.ts
|
|
202326
|
-
var exports_transformCache = {};
|
|
202327
|
-
__export(exports_transformCache, {
|
|
202328
|
-
setTransformed: () => setTransformed,
|
|
202329
|
-
invalidateAll: () => invalidateAll,
|
|
202330
|
-
invalidate: () => invalidate,
|
|
202331
|
-
getTransformed: () => getTransformed,
|
|
202332
|
-
getInvalidationVersion: () => getInvalidationVersion,
|
|
202333
|
-
findNearestComponent: () => findNearestComponent
|
|
202334
|
-
});
|
|
202335
202328
|
var globalStore, cache, importers, getTransformed = (filePath) => cache.get(filePath)?.content, setTransformed = (filePath, content, mtime, imports) => {
|
|
202336
202329
|
const resolvedImports = imports ?? [];
|
|
202337
202330
|
cache.set(filePath, { content, imports: resolvedImports, mtime });
|
|
@@ -202350,29 +202343,9 @@ var globalStore, cache, importers, getTransformed = (filePath) => cache.get(file
|
|
|
202350
202343
|
cache.delete(parent);
|
|
202351
202344
|
}
|
|
202352
202345
|
}
|
|
202353
|
-
},
|
|
202354
|
-
|
|
202355
|
-
|
|
202356
|
-
}, findNearestComponent = (filePath) => {
|
|
202357
|
-
const visited = new Set;
|
|
202358
|
-
const queue = [filePath];
|
|
202359
|
-
while (queue.length > 0) {
|
|
202360
|
-
const current = queue.shift();
|
|
202361
|
-
if (visited.has(current))
|
|
202362
|
-
continue;
|
|
202363
|
-
visited.add(current);
|
|
202364
|
-
const parents = importers.get(current);
|
|
202365
|
-
if (!parents)
|
|
202366
|
-
continue;
|
|
202367
|
-
for (const parent of parents) {
|
|
202368
|
-
if (parent.endsWith(".tsx") || parent.endsWith(".jsx")) {
|
|
202369
|
-
return parent;
|
|
202370
|
-
}
|
|
202371
|
-
queue.push(parent);
|
|
202372
|
-
}
|
|
202373
|
-
}
|
|
202374
|
-
return;
|
|
202375
|
-
};
|
|
202346
|
+
}, dataFiles, markAsDataFile = (filePath) => {
|
|
202347
|
+
dataFiles.add(filePath);
|
|
202348
|
+
}, isDataFile = (filePath) => dataFiles.has(filePath);
|
|
202376
202349
|
var init_transformCache = __esm(() => {
|
|
202377
202350
|
globalStore = globalThis;
|
|
202378
202351
|
cache = globalStore.__transformCache ?? new Map;
|
|
@@ -202381,6 +202354,8 @@ var init_transformCache = __esm(() => {
|
|
|
202381
202354
|
globalStore.__transformImporters = importers;
|
|
202382
202355
|
invalidationVersions = globalStore.__transformInvalidationVersions ?? new Map;
|
|
202383
202356
|
globalStore.__transformInvalidationVersions = invalidationVersions;
|
|
202357
|
+
dataFiles = globalStore.__transformDataFiles ?? new Set;
|
|
202358
|
+
globalStore.__transformDataFiles = dataFiles;
|
|
202384
202359
|
});
|
|
202385
202360
|
|
|
202386
202361
|
// src/dev/moduleServer.ts
|
|
@@ -202394,7 +202369,7 @@ __export(exports_moduleServer, {
|
|
|
202394
202369
|
SRC_URL_PREFIX: () => SRC_URL_PREFIX
|
|
202395
202370
|
});
|
|
202396
202371
|
import { existsSync as existsSync13, readFileSync as readFileSync9, statSync } from "fs";
|
|
202397
|
-
import { basename as basename7, dirname as dirname7, extname as extname3, resolve as resolve18, relative as
|
|
202372
|
+
import { basename as basename7, dirname as dirname7, extname as extname3, resolve as resolve18, relative as relative7 } from "path";
|
|
202398
202373
|
var SRC_PREFIX = "/@src/", jsTranspiler2, tsTranspiler2, tsxTranspiler, TRANSPILABLE, ALL_EXPORTS_RE, STRING_CONTENTS_RE, preserveTypeExports = (originalSource, transpiled, valueExports) => {
|
|
202399
202374
|
const codeOnly = originalSource.replace(STRING_CONTENTS_RE, '""');
|
|
202400
202375
|
const allExports = [];
|
|
@@ -202457,7 +202432,7 @@ ${stubs}
|
|
|
202457
202432
|
const fileDir = dirname7(filePath);
|
|
202458
202433
|
result = result.replace(/(from\s*["'])(\.\.?\/[^"']+)(["'])/g, (_match, prefix, relPath, suffix) => {
|
|
202459
202434
|
const absPath = resolve18(fileDir, relPath);
|
|
202460
|
-
const rel =
|
|
202435
|
+
const rel = relative7(projectRoot, absPath);
|
|
202461
202436
|
let srcPath = rel;
|
|
202462
202437
|
if (!extname3(srcPath)) {
|
|
202463
202438
|
const extensions = [
|
|
@@ -202478,19 +202453,19 @@ ${stubs}
|
|
|
202478
202453
|
}
|
|
202479
202454
|
if (extname3(srcPath) === ".svelte") {
|
|
202480
202455
|
const resolved = resolveSvelteModulePath(resolve18(projectRoot, srcPath));
|
|
202481
|
-
const resolvedRel =
|
|
202456
|
+
const resolvedRel = relative7(projectRoot, resolved);
|
|
202482
202457
|
srcPath = resolvedRel;
|
|
202483
202458
|
}
|
|
202484
202459
|
return `${prefix}${srcUrl(srcPath, projectRoot)}${suffix}`;
|
|
202485
202460
|
});
|
|
202486
202461
|
result = result.replace(/(import\s*\(\s*["'])(\.\.?\/[^"']+)(["']\s*\))/g, (_match, prefix, relPath, suffix) => {
|
|
202487
202462
|
const absPath = resolve18(fileDir, relPath);
|
|
202488
|
-
const rel =
|
|
202463
|
+
const rel = relative7(projectRoot, absPath);
|
|
202489
202464
|
return `${prefix}${srcUrl(rel, projectRoot)}${suffix}`;
|
|
202490
202465
|
});
|
|
202491
202466
|
result = result.replace(/(import\s*["'])(\.\.?\/[^"']+)(["']\s*;?)/g, (_match, prefix, relPath, suffix) => {
|
|
202492
202467
|
const absPath = resolve18(fileDir, relPath);
|
|
202493
|
-
const rel =
|
|
202468
|
+
const rel = relative7(projectRoot, absPath);
|
|
202494
202469
|
let srcPath = rel;
|
|
202495
202470
|
if (!extname3(srcPath)) {
|
|
202496
202471
|
const extensions = [
|
|
@@ -202514,16 +202489,65 @@ ${stubs}
|
|
|
202514
202489
|
});
|
|
202515
202490
|
result = result.replace(/((?:from|import)\s*["'])(\/[^"']+\.(tsx?|jsx?|ts))(["'])/g, (_match, prefix, absPath, _ext, suffix) => {
|
|
202516
202491
|
if (absPath.startsWith(projectRoot)) {
|
|
202517
|
-
const rel2 =
|
|
202492
|
+
const rel2 = relative7(projectRoot, absPath).replace(/\\/g, "/");
|
|
202518
202493
|
return `${prefix}${srcUrl(rel2, projectRoot)}${suffix}`;
|
|
202519
202494
|
}
|
|
202520
|
-
const rel =
|
|
202495
|
+
const rel = relative7(projectRoot, absPath).replace(/\\/g, "/");
|
|
202521
202496
|
if (!rel.startsWith("..")) {
|
|
202522
202497
|
return `${prefix}${srcUrl(rel, projectRoot)}${suffix}`;
|
|
202523
202498
|
}
|
|
202524
202499
|
return _match;
|
|
202525
202500
|
});
|
|
202526
202501
|
return result;
|
|
202502
|
+
}, NAMED_IMPORT_RE, rewriteDataImports = (code, projectRoot) => {
|
|
202503
|
+
const rewrites = [];
|
|
202504
|
+
let counter = 0;
|
|
202505
|
+
let m;
|
|
202506
|
+
NAMED_IMPORT_RE.lastIndex = 0;
|
|
202507
|
+
while ((m = NAMED_IMPORT_RE.exec(code)) !== null) {
|
|
202508
|
+
const [fullMatch, names, q1, srcUrl2, q2] = m;
|
|
202509
|
+
if (!names || !srcUrl2)
|
|
202510
|
+
continue;
|
|
202511
|
+
const urlPath = srcUrl2.replace(/^\/@src\//, "").split("?")[0];
|
|
202512
|
+
if (!urlPath || !urlPath.endsWith(".ts") || urlPath.endsWith(".d.ts"))
|
|
202513
|
+
continue;
|
|
202514
|
+
const absPath = resolve18(projectRoot, urlPath);
|
|
202515
|
+
if (!isDataFile(absPath)) {
|
|
202516
|
+
if (!urlPath.endsWith(".tsx") && existsSync13(absPath)) {
|
|
202517
|
+
try {
|
|
202518
|
+
const src = readFileSync9(absPath, "utf-8");
|
|
202519
|
+
const exps = tsTranspiler2.scan(src).exports;
|
|
202520
|
+
if (isDataOnlyFile(exps, src, absPath))
|
|
202521
|
+
markAsDataFile(absPath);
|
|
202522
|
+
} catch {}
|
|
202523
|
+
}
|
|
202524
|
+
if (!isDataFile(absPath))
|
|
202525
|
+
continue;
|
|
202526
|
+
}
|
|
202527
|
+
const alias = `__hmr_${counter++}`;
|
|
202528
|
+
const importedNames = names.split(",").map((n) => n.trim().split(/\s+as\s+/)).filter(([n]) => n).map(([orig, asName]) => ({
|
|
202529
|
+
local: (asName ?? orig).trim(),
|
|
202530
|
+
orig: orig.trim()
|
|
202531
|
+
}));
|
|
202532
|
+
rewrites.push({
|
|
202533
|
+
alias,
|
|
202534
|
+
fullMatch,
|
|
202535
|
+
importLine: `import ${alias} from ${q1}${srcUrl2}${q2}`,
|
|
202536
|
+
names: importedNames
|
|
202537
|
+
});
|
|
202538
|
+
}
|
|
202539
|
+
if (rewrites.length === 0)
|
|
202540
|
+
return code;
|
|
202541
|
+
let result = code;
|
|
202542
|
+
for (const r of rewrites) {
|
|
202543
|
+
result = result.replace(r.fullMatch, r.importLine);
|
|
202544
|
+
}
|
|
202545
|
+
for (const r of rewrites) {
|
|
202546
|
+
for (const { orig, local } of r.names) {
|
|
202547
|
+
result = result.replace(new RegExp(`(?<![.\\w])${local}(?![\\w])`, "g"), `${r.alias}.${orig}`);
|
|
202548
|
+
}
|
|
202549
|
+
}
|
|
202550
|
+
return result;
|
|
202527
202551
|
}, HOOK_NAMES, REFRESH_PREAMBLE, JSX_AUTO_RE, JSXS_AUTO_RE, JSX_PROD_RE, FRAGMENT_RE, addJsxImport = (code) => {
|
|
202528
202552
|
const imports = [];
|
|
202529
202553
|
const jsxDevMatch = JSX_AUTO_RE.exec(code);
|
|
@@ -202559,9 +202583,38 @@ ${stubs}
|
|
|
202559
202583
|
transpiled = `var $RefreshReg$ = window.$RefreshReg$ || function(){};
|
|
202560
202584
|
` + `var $RefreshSig$ = window.$RefreshSig$ || function(){ return function(t){ return t; }; };
|
|
202561
202585
|
` + transpiled;
|
|
202562
|
-
const relPath =
|
|
202586
|
+
const relPath = relative7(projectRoot, filePath).replace(/\\/g, "/");
|
|
202563
202587
|
transpiled = transpiled.replace(/\binput\.tsx:/g, `${relPath}:`);
|
|
202564
|
-
|
|
202588
|
+
let result = rewriteImports2(transpiled, filePath, projectRoot, rewriter);
|
|
202589
|
+
result = rewriteDataImports(result, projectRoot);
|
|
202590
|
+
return result;
|
|
202591
|
+
}, isDataOnlyFile = (exports, _source, filePath) => {
|
|
202592
|
+
if (exports.length === 0)
|
|
202593
|
+
return false;
|
|
202594
|
+
if (filePath) {
|
|
202595
|
+
const normalized = filePath.replace(/\\/g, "/");
|
|
202596
|
+
if (!normalized.includes("/data/"))
|
|
202597
|
+
return false;
|
|
202598
|
+
}
|
|
202599
|
+
if (exports.some((e) => /^[A-Z]/.test(e) || /^use[A-Z]/.test(e)))
|
|
202600
|
+
return false;
|
|
202601
|
+
return true;
|
|
202602
|
+
}, wrapDataExports = (transpiled, filePath, exports) => {
|
|
202603
|
+
const storeKey = filePath.replace(/\\/g, "/");
|
|
202604
|
+
let result = transpiled;
|
|
202605
|
+
for (const name of exports) {
|
|
202606
|
+
result = result.replace(new RegExp(`export\\s+(const|let|var)\\s+${name}\\s*=`), `$1 ${name} =`);
|
|
202607
|
+
}
|
|
202608
|
+
const preamble = `const __hmr = ((globalThis.__HMR_DATA__ ??= {})[${JSON.stringify(storeKey)}] ??= {});
|
|
202609
|
+
`;
|
|
202610
|
+
const storeWrites = exports.map((name) => `__hmr.${name} = ${name};`).join(`
|
|
202611
|
+
`);
|
|
202612
|
+
const namedExport = exports.length > 0 ? `export { ${exports.join(", ")} };
|
|
202613
|
+
` : "";
|
|
202614
|
+
return preamble + result + `
|
|
202615
|
+
` + storeWrites + `
|
|
202616
|
+
` + namedExport + `export default __hmr;
|
|
202617
|
+
`;
|
|
202565
202618
|
}, transformPlainFile = (filePath, projectRoot, rewriter) => {
|
|
202566
202619
|
const raw = readFileSync9(filePath, "utf-8");
|
|
202567
202620
|
const ext = extname3(filePath);
|
|
@@ -202573,7 +202626,13 @@ ${stubs}
|
|
|
202573
202626
|
if (isTS) {
|
|
202574
202627
|
transpiled = preserveTypeExports(raw, transpiled, valueExports);
|
|
202575
202628
|
}
|
|
202576
|
-
|
|
202629
|
+
if (isTS && !isTSX && isDataOnlyFile(valueExports, transpiled, filePath)) {
|
|
202630
|
+
transpiled = wrapDataExports(transpiled, filePath, valueExports);
|
|
202631
|
+
markAsDataFile(filePath);
|
|
202632
|
+
}
|
|
202633
|
+
let result = rewriteImports2(transpiled, filePath, projectRoot, rewriter);
|
|
202634
|
+
result = rewriteDataImports(result, projectRoot);
|
|
202635
|
+
return result;
|
|
202577
202636
|
}, svelteExternalCss, svelteCompiler = null, vueCompiler = null, warmCompilers = async (frameworks) => {
|
|
202578
202637
|
const [sc, vc] = await Promise.all([
|
|
202579
202638
|
frameworks.svelte ? import("svelte/compiler") : undefined,
|
|
@@ -202626,11 +202685,11 @@ ${stubs}
|
|
|
202626
202685
|
if (compiled.css?.code) {
|
|
202627
202686
|
const cssPath = `${filePath}.css`;
|
|
202628
202687
|
svelteExternalCss.set(cssPath, compiled.css.code);
|
|
202629
|
-
const cssUrl = srcUrl(
|
|
202688
|
+
const cssUrl = srcUrl(relative7(projectRoot, cssPath), projectRoot);
|
|
202630
202689
|
code = `import "${cssUrl}";
|
|
202631
202690
|
${code}`;
|
|
202632
202691
|
}
|
|
202633
|
-
const moduleUrl = `${SRC_PREFIX}${
|
|
202692
|
+
const moduleUrl = `${SRC_PREFIX}${relative7(projectRoot, filePath).replace(/\\/g, "/")}`;
|
|
202634
202693
|
code = code.replace(/if\s*\(import\.meta\.hot\)\s*\{/, `if (typeof window !== "undefined") {
|
|
202635
202694
|
if (!window.__SVELTE_HMR_ACCEPT__) window.__SVELTE_HMR_ACCEPT__ = {};
|
|
202636
202695
|
var __hmr_accept = function(cb) { window.__SVELTE_HMR_ACCEPT__[${JSON.stringify(moduleUrl)}] = cb; };`);
|
|
@@ -202694,7 +202753,7 @@ ${code}`;
|
|
|
202694
202753
|
}
|
|
202695
202754
|
code = tsTranspiler2.transformSync(code);
|
|
202696
202755
|
const hmrBase = vueDir ? resolve18(vueDir) : projectRoot;
|
|
202697
|
-
const hmrId =
|
|
202756
|
+
const hmrId = relative7(hmrBase, filePath).replace(/\\/g, "/").replace(/\.vue$/, "");
|
|
202698
202757
|
code = code.replace(/export\s+default\s+/, "var __hmr_comp__ = ");
|
|
202699
202758
|
code += [
|
|
202700
202759
|
"",
|
|
@@ -202951,6 +203010,7 @@ var init_moduleServer = __esm(() => {
|
|
|
202951
203010
|
STRING_CONTENTS_RE = /`(?:[^`\\]|\\.)*`|'(?:[^'\\]|\\.)*'|"(?:[^"\\]|\\.)*"/gs;
|
|
202952
203011
|
REACT_EXTENSIONS = new Set([".tsx", ".jsx"]);
|
|
202953
203012
|
mtimeCache = new Map;
|
|
203013
|
+
NAMED_IMPORT_RE = /import\s*\{([^}]+)\}\s*from\s*(["'])(\/\@src\/[^"']+)(["']);?/g;
|
|
202954
203014
|
HOOK_NAMES = new Set([
|
|
202955
203015
|
"useState",
|
|
202956
203016
|
"useReducer",
|
|
@@ -203053,7 +203113,7 @@ var init_simpleHTMXHMR = () => {};
|
|
|
203053
203113
|
// src/dev/rebuildTrigger.ts
|
|
203054
203114
|
import { existsSync as existsSync14 } from "fs";
|
|
203055
203115
|
import { rm as rm8 } from "fs/promises";
|
|
203056
|
-
import { basename as basename8, relative as
|
|
203116
|
+
import { basename as basename8, relative as relative8, resolve as resolve21 } from "path";
|
|
203057
203117
|
var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseErrorLocationFromMessage = (msg) => {
|
|
203058
203118
|
const pathLineCol = msg.match(/^([^\s:]+):(\d+)(?::(\d+))?/);
|
|
203059
203119
|
if (pathLineCol) {
|
|
@@ -203487,7 +203547,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
203487
203547
|
}, getModuleUrl = async (pageFile) => {
|
|
203488
203548
|
const { invalidateModule: invalidateModule2, warmCache: warmCache2, SRC_URL_PREFIX: SRC_URL_PREFIX2 } = await Promise.resolve().then(() => (init_moduleServer(), exports_moduleServer));
|
|
203489
203549
|
invalidateModule2(pageFile);
|
|
203490
|
-
const rel =
|
|
203550
|
+
const rel = relative8(process.cwd(), pageFile).replace(/\\/g, "/");
|
|
203491
203551
|
const url = `${SRC_URL_PREFIX2}${rel}`;
|
|
203492
203552
|
warmCache2(url);
|
|
203493
203553
|
return url;
|
|
@@ -203513,18 +203573,10 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
203513
203573
|
for (const file4 of reactFiles) {
|
|
203514
203574
|
invalidateModule2(file4);
|
|
203515
203575
|
}
|
|
203516
|
-
const
|
|
203517
|
-
let broadcastTarget = primaryFile;
|
|
203518
|
-
if (!isComponentFile) {
|
|
203519
|
-
const { findNearestComponent: findNearestComponent2 } = await Promise.resolve().then(() => (init_transformCache(), exports_transformCache));
|
|
203520
|
-
const nearest = findNearestComponent2(resolve21(primaryFile));
|
|
203521
|
-
if (nearest)
|
|
203522
|
-
broadcastTarget = nearest;
|
|
203523
|
-
}
|
|
203524
|
-
const pageModuleUrl = await getReactModuleUrl(broadcastTarget);
|
|
203576
|
+
const pageModuleUrl = await getReactModuleUrl(primaryFile);
|
|
203525
203577
|
if (pageModuleUrl) {
|
|
203526
203578
|
const serverDuration = Date.now() - startTime;
|
|
203527
|
-
state.lastHmrPath =
|
|
203579
|
+
state.lastHmrPath = relative8(process.cwd(), primaryFile).replace(/\\/g, "/");
|
|
203528
203580
|
state.lastHmrFramework = "react";
|
|
203529
203581
|
broadcastToClients(state, {
|
|
203530
203582
|
data: {
|
|
@@ -203910,7 +203962,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
203910
203962
|
const baseName = fileName.replace(/\.vue$/, "");
|
|
203911
203963
|
const pascalName = toPascal(baseName);
|
|
203912
203964
|
const vueRoot = config.vueDirectory;
|
|
203913
|
-
const hmrId = vueRoot ?
|
|
203965
|
+
const hmrId = vueRoot ? relative8(vueRoot, vuePagePath).replace(/\\/g, "/").replace(/\.vue$/, "") : baseName;
|
|
203914
203966
|
const cssKey = `${pascalName}CSS`;
|
|
203915
203967
|
const cssUrl = manifest[cssKey] || null;
|
|
203916
203968
|
const { vueHmrMetadata: vueHmrMetadata2 } = await Promise.resolve().then(() => (init_compileVue(), exports_compileVue));
|
|
@@ -205050,7 +205102,7 @@ var handleHTMLPageRequest = (pagePath) => file(pagePath);
|
|
|
205050
205102
|
var handleHTMXPageRequest = (pagePath) => file(pagePath);
|
|
205051
205103
|
// src/core/prepare.ts
|
|
205052
205104
|
import { readFileSync as readFileSync10 } from "fs";
|
|
205053
|
-
import { relative as
|
|
205105
|
+
import { relative as relative10, resolve as resolve23 } from "path";
|
|
205054
205106
|
|
|
205055
205107
|
// src/utils/loadConfig.ts
|
|
205056
205108
|
import { resolve } from "path";
|
|
@@ -205129,7 +205181,7 @@ var prepare = async (configOrPath) => {
|
|
|
205129
205181
|
})) {
|
|
205130
205182
|
if (file4.includes("/node_modules/"))
|
|
205131
205183
|
continue;
|
|
205132
|
-
const rel =
|
|
205184
|
+
const rel = relative10(process.cwd(), file4).replace(/\\/g, "/");
|
|
205133
205185
|
warmCache2(`${SRC_URL_PREFIX2}${rel}`);
|
|
205134
205186
|
}
|
|
205135
205187
|
}
|
|
@@ -205139,7 +205191,7 @@ var prepare = async (configOrPath) => {
|
|
|
205139
205191
|
if (key.endsWith("Index") && typeof result.manifest[key] === "string" && result.manifest[key].includes("/react/") && result.manifest[key].includes("/indexes/")) {
|
|
205140
205192
|
const fileName = `${key.replace(/Index$/, "")}.tsx`;
|
|
205141
205193
|
const srcPath = resolve23(devIndexDir, fileName);
|
|
205142
|
-
const rel =
|
|
205194
|
+
const rel = relative10(process.cwd(), srcPath).replace(/\\/g, "/");
|
|
205143
205195
|
result.manifest[key] = `${SRC_URL_PREFIX2}${rel}`;
|
|
205144
205196
|
}
|
|
205145
205197
|
}
|
|
@@ -205309,5 +205361,5 @@ export {
|
|
|
205309
205361
|
ANGULAR_INIT_TIMEOUT_MS
|
|
205310
205362
|
};
|
|
205311
205363
|
|
|
205312
|
-
//# debugId=
|
|
205364
|
+
//# debugId=78D70B808786BC8A64756E2164756E21
|
|
205313
205365
|
//# sourceMappingURL=index.js.map
|