@absolutejs/absolute 0.19.0-beta.655 → 0.19.0-beta.657
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/build.js +163 -148
- package/dist/build.js.map +3 -3
- package/dist/index.js +181 -166
- package/dist/index.js.map +3 -3
- package/package.json +304 -304
package/dist/index.js
CHANGED
|
@@ -175488,11 +175488,26 @@ __export(exports_buildReactVendor, {
|
|
|
175488
175488
|
computeVendorPaths: () => computeVendorPaths,
|
|
175489
175489
|
buildReactVendor: () => buildReactVendor
|
|
175490
175490
|
});
|
|
175491
|
-
import { mkdirSync as mkdirSync6 } from "fs";
|
|
175492
|
-
import { join as join14 } from "path";
|
|
175491
|
+
import { existsSync as existsSync16, mkdirSync as mkdirSync6 } from "fs";
|
|
175492
|
+
import { join as join14, resolve as resolve19 } from "path";
|
|
175493
175493
|
import { rm as rm4 } from "fs/promises";
|
|
175494
175494
|
var {build: bunBuild2 } = globalThis.Bun;
|
|
175495
|
-
var
|
|
175495
|
+
var resolveJsxDevRuntimeCompatPath = () => {
|
|
175496
|
+
const candidates = [
|
|
175497
|
+
resolve19(import.meta.dir, "react", "jsxDevRuntimeCompat.js"),
|
|
175498
|
+
resolve19(import.meta.dir, "src", "react", "jsxDevRuntimeCompat.ts"),
|
|
175499
|
+
resolve19(import.meta.dir, "..", "react", "jsxDevRuntimeCompat.js"),
|
|
175500
|
+
resolve19(import.meta.dir, "..", "src", "react", "jsxDevRuntimeCompat.ts"),
|
|
175501
|
+
resolve19(import.meta.dir, "..", "..", "dist", "react", "jsxDevRuntimeCompat.js"),
|
|
175502
|
+
resolve19(import.meta.dir, "..", "..", "src", "react", "jsxDevRuntimeCompat.ts")
|
|
175503
|
+
];
|
|
175504
|
+
for (const candidate of candidates) {
|
|
175505
|
+
if (existsSync16(candidate)) {
|
|
175506
|
+
return candidate.replace(/\\/g, "/");
|
|
175507
|
+
}
|
|
175508
|
+
}
|
|
175509
|
+
return (candidates[0] ?? resolve19(import.meta.dir, "react", "jsxDevRuntimeCompat.js")).replace(/\\/g, "/");
|
|
175510
|
+
}, jsxDevRuntimeCompatPath, reactSpecifiers, isResolvable = (specifier) => {
|
|
175496
175511
|
try {
|
|
175497
175512
|
Bun.resolveSync(specifier, process.cwd());
|
|
175498
175513
|
return true;
|
|
@@ -175556,7 +175571,7 @@ var jsxDevRuntimeCompatPath, reactSpecifiers, isResolvable = (specifier) => {
|
|
|
175556
175571
|
}
|
|
175557
175572
|
};
|
|
175558
175573
|
var init_buildReactVendor = __esm(() => {
|
|
175559
|
-
jsxDevRuntimeCompatPath =
|
|
175574
|
+
jsxDevRuntimeCompatPath = resolveJsxDevRuntimeCompatPath();
|
|
175560
175575
|
reactSpecifiers = [
|
|
175561
175576
|
"react",
|
|
175562
175577
|
"react-dom",
|
|
@@ -175790,14 +175805,14 @@ var init_rewriteImports = __esm(() => {
|
|
|
175790
175805
|
import {
|
|
175791
175806
|
copyFileSync,
|
|
175792
175807
|
cpSync,
|
|
175793
|
-
existsSync as
|
|
175808
|
+
existsSync as existsSync17,
|
|
175794
175809
|
mkdirSync as mkdirSync10,
|
|
175795
175810
|
readFileSync as readFileSync10,
|
|
175796
175811
|
rmSync as rmSync2,
|
|
175797
175812
|
statSync,
|
|
175798
175813
|
writeFileSync as writeFileSync7
|
|
175799
175814
|
} from "fs";
|
|
175800
|
-
import { basename as basename8, dirname as dirname10, join as join18, relative as relative9, resolve as
|
|
175815
|
+
import { basename as basename8, dirname as dirname10, join as join18, relative as relative9, resolve as resolve20 } from "path";
|
|
175801
175816
|
import { cwd, env as env3, exit } from "process";
|
|
175802
175817
|
var {build: bunBuild6, Glob: Glob6 } = globalThis.Bun;
|
|
175803
175818
|
var isDev2, collectConventionSourceFiles = (entry) => {
|
|
@@ -175885,8 +175900,8 @@ var isDev2, collectConventionSourceFiles = (entry) => {
|
|
|
175885
175900
|
}
|
|
175886
175901
|
}, resolveAbsoluteVersion = async () => {
|
|
175887
175902
|
const candidates = [
|
|
175888
|
-
|
|
175889
|
-
|
|
175903
|
+
resolve20(import.meta.dir, "..", "..", "package.json"),
|
|
175904
|
+
resolve20(import.meta.dir, "..", "package.json")
|
|
175890
175905
|
];
|
|
175891
175906
|
for (const candidate of candidates) {
|
|
175892
175907
|
const pkg = await tryReadPackageJson(candidate);
|
|
@@ -175898,7 +175913,7 @@ var isDev2, collectConventionSourceFiles = (entry) => {
|
|
|
175898
175913
|
return;
|
|
175899
175914
|
}
|
|
175900
175915
|
}, SKIP_DIRS, addWorkerPathIfExists = (file4, relPath, workerPaths) => {
|
|
175901
|
-
const absPath =
|
|
175916
|
+
const absPath = resolve20(file4, "..", relPath);
|
|
175902
175917
|
try {
|
|
175903
175918
|
statSync(absPath);
|
|
175904
175919
|
workerPaths.add(absPath);
|
|
@@ -175958,11 +175973,11 @@ var isDev2, collectConventionSourceFiles = (entry) => {
|
|
|
175958
175973
|
copyVueDevIndexes(vueDir, vuePagesPath, vueEntries, devIndexDir);
|
|
175959
175974
|
}
|
|
175960
175975
|
}, copyReactDevIndexes = (reactIndexesPath, reactPagesPath, devIndexDir, readDir) => {
|
|
175961
|
-
if (!
|
|
175976
|
+
if (!existsSync17(reactIndexesPath)) {
|
|
175962
175977
|
return;
|
|
175963
175978
|
}
|
|
175964
175979
|
const indexFiles = readDir(reactIndexesPath).filter((file4) => file4.endsWith(".tsx"));
|
|
175965
|
-
const pagesRel = relative9(process.cwd(),
|
|
175980
|
+
const pagesRel = relative9(process.cwd(), resolve20(reactPagesPath)).replace(/\\/g, "/");
|
|
175966
175981
|
for (const file4 of indexFiles) {
|
|
175967
175982
|
let content = readFileSync10(join18(reactIndexesPath, file4), "utf-8");
|
|
175968
175983
|
content = content.replace(/from\s*['"]([^'"]*\/pages\/([^'"]+))['"]/g, (_match, _fullPath, componentName) => `from '/@src/${pagesRel}/${componentName}'`);
|
|
@@ -175970,27 +175985,27 @@ var isDev2, collectConventionSourceFiles = (entry) => {
|
|
|
175970
175985
|
}
|
|
175971
175986
|
}, copySvelteDevIndexes = (svelteDir, sveltePagesPath, svelteEntries, devIndexDir) => {
|
|
175972
175987
|
const svelteIndexDir = join18(svelteDir, "generated", "indexes");
|
|
175973
|
-
const sveltePageEntries = svelteEntries.filter((file4) =>
|
|
175988
|
+
const sveltePageEntries = svelteEntries.filter((file4) => resolve20(file4).startsWith(resolve20(sveltePagesPath)));
|
|
175974
175989
|
for (const entry of sveltePageEntries) {
|
|
175975
175990
|
const name = basename8(entry).replace(/\.svelte(\.(ts|js))?$/, "");
|
|
175976
175991
|
const indexFile = join18(svelteIndexDir, "pages", `${name}.js`);
|
|
175977
|
-
if (!
|
|
175992
|
+
if (!existsSync17(indexFile))
|
|
175978
175993
|
continue;
|
|
175979
175994
|
let content = readFileSync10(indexFile, "utf-8");
|
|
175980
|
-
const srcRel = relative9(process.cwd(),
|
|
175995
|
+
const srcRel = relative9(process.cwd(), resolve20(entry)).replace(/\\/g, "/");
|
|
175981
175996
|
content = content.replace(/import\s+Component\s+from\s+['"]([^'"]+)['"]/, `import Component from "/@src/${srcRel}"`);
|
|
175982
175997
|
writeFileSync7(join18(devIndexDir, `${name}.svelte.js`), content);
|
|
175983
175998
|
}
|
|
175984
175999
|
}, copyVueDevIndexes = (vueDir, vuePagesPath, vueEntries, devIndexDir) => {
|
|
175985
176000
|
const vueIndexDir = join18(vueDir, "generated", "indexes");
|
|
175986
|
-
const vuePageEntries = vueEntries.filter((file4) =>
|
|
176001
|
+
const vuePageEntries = vueEntries.filter((file4) => resolve20(file4).startsWith(resolve20(vuePagesPath)));
|
|
175987
176002
|
for (const entry of vuePageEntries) {
|
|
175988
176003
|
const name = basename8(entry, ".vue");
|
|
175989
176004
|
const indexFile = join18(vueIndexDir, `${name}.js`);
|
|
175990
|
-
if (!
|
|
176005
|
+
if (!existsSync17(indexFile))
|
|
175991
176006
|
continue;
|
|
175992
176007
|
let content = readFileSync10(indexFile, "utf-8");
|
|
175993
|
-
const srcRel = relative9(process.cwd(),
|
|
176008
|
+
const srcRel = relative9(process.cwd(), resolve20(entry)).replace(/\\/g, "/");
|
|
175994
176009
|
content = content.replace(/import\s+Comp\s+from\s+['"]([^'"]+)['"]/, `import Comp from "/@src/${srcRel}"`);
|
|
175995
176010
|
writeFileSync7(join18(devIndexDir, `${name}.vue.js`), content);
|
|
175996
176011
|
}
|
|
@@ -176003,7 +176018,7 @@ var isDev2, collectConventionSourceFiles = (entry) => {
|
|
|
176003
176018
|
const last = allComments[allComments.length - 1];
|
|
176004
176019
|
if (!last?.[1])
|
|
176005
176020
|
return JSON.stringify(outputPath);
|
|
176006
|
-
const srcPath =
|
|
176021
|
+
const srcPath = resolve20(projectRoot, last[1].replace("/client/", "/").replace(/\.js$/, ".ts"));
|
|
176007
176022
|
return JSON.stringify(srcPath);
|
|
176008
176023
|
}, QUOTE_CHARS, OPEN_BRACES, CLOSE_BRACES, findFunctionExpressionEnd = (content, startPos) => {
|
|
176009
176024
|
let depth = 0;
|
|
@@ -176212,13 +176227,13 @@ ${content.slice(firstUseIdx)}`;
|
|
|
176212
176227
|
const filterToIncrementalEntries = (entryPoints, mapToSource) => {
|
|
176213
176228
|
if (!isIncremental || !incrementalFiles)
|
|
176214
176229
|
return entryPoints;
|
|
176215
|
-
const normalizedIncremental = new Set(incrementalFiles.map((f) =>
|
|
176230
|
+
const normalizedIncremental = new Set(incrementalFiles.map((f) => resolve20(f)));
|
|
176216
176231
|
const matchingEntries = [];
|
|
176217
176232
|
for (const entry of entryPoints) {
|
|
176218
176233
|
const sourceFile = mapToSource(entry);
|
|
176219
176234
|
if (!sourceFile)
|
|
176220
176235
|
continue;
|
|
176221
|
-
if (!normalizedIncremental.has(
|
|
176236
|
+
if (!normalizedIncremental.has(resolve20(sourceFile)))
|
|
176222
176237
|
continue;
|
|
176223
176238
|
matchingEntries.push(entry);
|
|
176224
176239
|
}
|
|
@@ -176287,7 +176302,7 @@ ${content.slice(firstUseIdx)}`;
|
|
|
176287
176302
|
}
|
|
176288
176303
|
const shouldIncludeHtmlAssets = !isIncremental || normalizedIncrementalFiles?.some((f) => f.includes("/html/") && (f.endsWith(".html") || f.endsWith(".css")));
|
|
176289
176304
|
const reactEntries = isIncremental && reactIndexesPath && reactPagesPath ? filterToIncrementalEntries(allReactEntries, (entry) => {
|
|
176290
|
-
if (entry.startsWith(
|
|
176305
|
+
if (entry.startsWith(resolve20(reactIndexesPath))) {
|
|
176291
176306
|
const pageName = basename8(entry, ".tsx");
|
|
176292
176307
|
return join18(reactPagesPath, `${pageName}.tsx`);
|
|
176293
176308
|
}
|
|
@@ -176350,7 +176365,7 @@ ${content.slice(firstUseIdx)}`;
|
|
|
176350
176365
|
const clientPath = islandSvelteClientPaths[idx];
|
|
176351
176366
|
if (!sourcePath || !clientPath)
|
|
176352
176367
|
continue;
|
|
176353
|
-
islandSvelteClientPathMap.set(
|
|
176368
|
+
islandSvelteClientPathMap.set(resolve20(sourcePath), clientPath);
|
|
176354
176369
|
}
|
|
176355
176370
|
const islandVueClientPathMap = new Map;
|
|
176356
176371
|
for (let idx = 0;idx < islandVueSources.length; idx++) {
|
|
@@ -176358,7 +176373,7 @@ ${content.slice(firstUseIdx)}`;
|
|
|
176358
176373
|
const clientPath = islandVueClientPaths[idx];
|
|
176359
176374
|
if (!sourcePath || !clientPath)
|
|
176360
176375
|
continue;
|
|
176361
|
-
islandVueClientPathMap.set(
|
|
176376
|
+
islandVueClientPathMap.set(resolve20(sourcePath), clientPath);
|
|
176362
176377
|
}
|
|
176363
176378
|
const islandAngularClientPathMap = new Map;
|
|
176364
176379
|
for (let idx = 0;idx < islandAngularSources.length; idx++) {
|
|
@@ -176366,7 +176381,7 @@ ${content.slice(firstUseIdx)}`;
|
|
|
176366
176381
|
const clientPath = islandAngularClientPaths[idx];
|
|
176367
176382
|
if (!sourcePath || !clientPath)
|
|
176368
176383
|
continue;
|
|
176369
|
-
islandAngularClientPathMap.set(
|
|
176384
|
+
islandAngularClientPathMap.set(resolve20(sourcePath), clientPath);
|
|
176370
176385
|
}
|
|
176371
176386
|
const svelteConventionSources = collectConventionSourceFiles(conventionsMap.svelte);
|
|
176372
176387
|
const vueConventionSources = collectConventionSourceFiles(conventionsMap.vue);
|
|
@@ -176901,9 +176916,9 @@ var init_build = __esm(() => {
|
|
|
176901
176916
|
});
|
|
176902
176917
|
|
|
176903
176918
|
// src/dev/dependencyGraph.ts
|
|
176904
|
-
import { existsSync as
|
|
176919
|
+
import { existsSync as existsSync18, readFileSync as readFileSync11 } from "fs";
|
|
176905
176920
|
var {Glob: Glob7 } = globalThis.Bun;
|
|
176906
|
-
import { resolve as
|
|
176921
|
+
import { resolve as resolve21 } from "path";
|
|
176907
176922
|
var emptyDependencyGraph, tsTranspiler, jsTranspiler, loaderForFile = (filePath) => {
|
|
176908
176923
|
const lower = filePath.toLowerCase();
|
|
176909
176924
|
if (lower.endsWith(".ts") || lower.endsWith(".tsx") || lower.endsWith(".jsx"))
|
|
@@ -176917,8 +176932,8 @@ var emptyDependencyGraph, tsTranspiler, jsTranspiler, loaderForFile = (filePath)
|
|
|
176917
176932
|
if (!importPath.startsWith(".") && !importPath.startsWith("/")) {
|
|
176918
176933
|
return null;
|
|
176919
176934
|
}
|
|
176920
|
-
const fromDir =
|
|
176921
|
-
const normalized =
|
|
176935
|
+
const fromDir = resolve21(fromFile, "..");
|
|
176936
|
+
const normalized = resolve21(fromDir, importPath);
|
|
176922
176937
|
const extensions = [
|
|
176923
176938
|
".ts",
|
|
176924
176939
|
".tsx",
|
|
@@ -176931,10 +176946,10 @@ var emptyDependencyGraph, tsTranspiler, jsTranspiler, loaderForFile = (filePath)
|
|
|
176931
176946
|
];
|
|
176932
176947
|
for (const ext of extensions) {
|
|
176933
176948
|
const withExt = normalized + ext;
|
|
176934
|
-
if (
|
|
176949
|
+
if (existsSync18(withExt))
|
|
176935
176950
|
return withExt;
|
|
176936
176951
|
}
|
|
176937
|
-
if (
|
|
176952
|
+
if (existsSync18(normalized))
|
|
176938
176953
|
return normalized;
|
|
176939
176954
|
return null;
|
|
176940
176955
|
}, clearExistingDependents = (graph, normalizedPath) => {
|
|
@@ -176948,8 +176963,8 @@ var emptyDependencyGraph, tsTranspiler, jsTranspiler, loaderForFile = (filePath)
|
|
|
176948
176963
|
dependents.delete(normalizedPath);
|
|
176949
176964
|
}
|
|
176950
176965
|
}, addFileToGraph = (graph, filePath) => {
|
|
176951
|
-
const normalizedPath =
|
|
176952
|
-
if (!
|
|
176966
|
+
const normalizedPath = resolve21(filePath);
|
|
176967
|
+
if (!existsSync18(normalizedPath))
|
|
176953
176968
|
return;
|
|
176954
176969
|
const dependencies = extractDependencies(normalizedPath);
|
|
176955
176970
|
clearExistingDependents(graph, normalizedPath);
|
|
@@ -176965,10 +176980,10 @@ var emptyDependencyGraph, tsTranspiler, jsTranspiler, loaderForFile = (filePath)
|
|
|
176965
176980
|
}, IGNORED_SEGMENTS, buildInitialDependencyGraph = (graph, directories) => {
|
|
176966
176981
|
const processedFiles = new Set;
|
|
176967
176982
|
const glob = new Glob7("**/*.{ts,tsx,js,jsx,vue,svelte,html,htm}");
|
|
176968
|
-
const resolvedDirs = directories.map((dir) =>
|
|
176983
|
+
const resolvedDirs = directories.map((dir) => resolve21(dir)).filter((dir) => existsSync18(dir));
|
|
176969
176984
|
const allFiles = resolvedDirs.flatMap((dir) => Array.from(glob.scanSync({ absolute: true, cwd: dir })));
|
|
176970
176985
|
for (const file4 of allFiles) {
|
|
176971
|
-
const fullPath =
|
|
176986
|
+
const fullPath = resolve21(file4);
|
|
176972
176987
|
if (IGNORED_SEGMENTS.some((seg) => fullPath.includes(seg)))
|
|
176973
176988
|
continue;
|
|
176974
176989
|
if (processedFiles.has(fullPath))
|
|
@@ -177081,7 +177096,7 @@ var emptyDependencyGraph, tsTranspiler, jsTranspiler, loaderForFile = (filePath)
|
|
|
177081
177096
|
return [];
|
|
177082
177097
|
}
|
|
177083
177098
|
}, getAffectedFiles = (graph, changedFile) => {
|
|
177084
|
-
const normalizedPath =
|
|
177099
|
+
const normalizedPath = resolve21(changedFile);
|
|
177085
177100
|
const affected = new Set;
|
|
177086
177101
|
const toProcess = [normalizedPath];
|
|
177087
177102
|
const processNode = (current) => {
|
|
@@ -177121,7 +177136,7 @@ var emptyDependencyGraph, tsTranspiler, jsTranspiler, loaderForFile = (filePath)
|
|
|
177121
177136
|
}
|
|
177122
177137
|
graph.dependents.delete(normalizedPath);
|
|
177123
177138
|
}, removeFileFromGraph = (graph, filePath) => {
|
|
177124
|
-
const normalizedPath =
|
|
177139
|
+
const normalizedPath = resolve21(filePath);
|
|
177125
177140
|
removeDepsForFile(graph, normalizedPath);
|
|
177126
177141
|
removeDependentsForFile(graph, normalizedPath);
|
|
177127
177142
|
};
|
|
@@ -177164,12 +177179,12 @@ var globalVersionCounter = 0, createModuleVersionTracker = () => new Map, getNex
|
|
|
177164
177179
|
};
|
|
177165
177180
|
|
|
177166
177181
|
// src/dev/configResolver.ts
|
|
177167
|
-
import { resolve as
|
|
177182
|
+
import { resolve as resolve22 } from "path";
|
|
177168
177183
|
var resolveBuildPaths = (config) => {
|
|
177169
177184
|
const cwd2 = process.cwd();
|
|
177170
177185
|
const normalize = (path) => path.replace(/\\/g, "/");
|
|
177171
|
-
const withDefault = (value, fallback) => normalize(
|
|
177172
|
-
const optional = (value) => value ? normalize(
|
|
177186
|
+
const withDefault = (value, fallback) => normalize(resolve22(cwd2, value ?? fallback));
|
|
177187
|
+
const optional = (value) => value ? normalize(resolve22(cwd2, value)) : undefined;
|
|
177173
177188
|
return {
|
|
177174
177189
|
angularDir: optional(config.angularDirectory),
|
|
177175
177190
|
assetsDir: optional(config.assetsDirectory),
|
|
@@ -177357,8 +177372,8 @@ var init_pathUtils = __esm(() => {
|
|
|
177357
177372
|
|
|
177358
177373
|
// src/dev/fileWatcher.ts
|
|
177359
177374
|
import { watch } from "fs";
|
|
177360
|
-
import { existsSync as
|
|
177361
|
-
import { join as join19, resolve as
|
|
177375
|
+
import { existsSync as existsSync19 } from "fs";
|
|
177376
|
+
import { join as join19, resolve as resolve23 } from "path";
|
|
177362
177377
|
var safeRemoveFromGraph = (graph, fullPath) => {
|
|
177363
177378
|
try {
|
|
177364
177379
|
removeFileFromGraph(graph, fullPath);
|
|
@@ -177389,12 +177404,12 @@ var safeRemoveFromGraph = (graph, fullPath) => {
|
|
|
177389
177404
|
if (shouldIgnorePath(fullPath, state.resolvedPaths)) {
|
|
177390
177405
|
return;
|
|
177391
177406
|
}
|
|
177392
|
-
if (event === "rename" && !
|
|
177407
|
+
if (event === "rename" && !existsSync19(fullPath)) {
|
|
177393
177408
|
safeRemoveFromGraph(state.dependencyGraph, fullPath);
|
|
177394
177409
|
onFileChange(fullPath);
|
|
177395
177410
|
return;
|
|
177396
177411
|
}
|
|
177397
|
-
if (
|
|
177412
|
+
if (existsSync19(fullPath)) {
|
|
177398
177413
|
onFileChange(fullPath);
|
|
177399
177414
|
safeAddToGraph(state.dependencyGraph, fullPath);
|
|
177400
177415
|
}
|
|
@@ -177403,8 +177418,8 @@ var safeRemoveFromGraph = (graph, fullPath) => {
|
|
|
177403
177418
|
}, addFileWatchers = (state, paths, onFileChange) => {
|
|
177404
177419
|
const stylesDir = state.resolvedPaths?.stylesDir;
|
|
177405
177420
|
paths.forEach((path) => {
|
|
177406
|
-
const absolutePath =
|
|
177407
|
-
if (!
|
|
177421
|
+
const absolutePath = resolve23(path).replace(/\\/g, "/");
|
|
177422
|
+
if (!existsSync19(absolutePath)) {
|
|
177408
177423
|
return;
|
|
177409
177424
|
}
|
|
177410
177425
|
const isStylesDir = Boolean(stylesDir && absolutePath.startsWith(stylesDir));
|
|
@@ -177414,8 +177429,8 @@ var safeRemoveFromGraph = (graph, fullPath) => {
|
|
|
177414
177429
|
const watchPaths = getWatchPaths(config, state.resolvedPaths);
|
|
177415
177430
|
const stylesDir = state.resolvedPaths?.stylesDir;
|
|
177416
177431
|
watchPaths.forEach((path) => {
|
|
177417
|
-
const absolutePath =
|
|
177418
|
-
if (!
|
|
177432
|
+
const absolutePath = resolve23(path).replace(/\\/g, "/");
|
|
177433
|
+
if (!existsSync19(absolutePath)) {
|
|
177419
177434
|
return;
|
|
177420
177435
|
}
|
|
177421
177436
|
const isStylesDir = Boolean(stylesDir && absolutePath.startsWith(stylesDir));
|
|
@@ -177429,13 +177444,13 @@ var init_fileWatcher = __esm(() => {
|
|
|
177429
177444
|
});
|
|
177430
177445
|
|
|
177431
177446
|
// src/dev/assetStore.ts
|
|
177432
|
-
import { resolve as
|
|
177447
|
+
import { resolve as resolve24 } from "path";
|
|
177433
177448
|
import { readdir as readdir3, unlink } from "fs/promises";
|
|
177434
177449
|
var mimeTypes, getMimeType = (filePath) => {
|
|
177435
177450
|
const ext = filePath.slice(filePath.lastIndexOf("."));
|
|
177436
177451
|
return mimeTypes[ext] ?? "application/octet-stream";
|
|
177437
177452
|
}, HASHED_FILE_RE, stripHash = (webPath) => webPath.replace(/\.[a-z0-9]{8}(\.(js|css|mjs))$/, "$1"), processWalkEntry = (entry, dir, liveByIdentity, walkAndClean) => {
|
|
177438
|
-
const fullPath =
|
|
177453
|
+
const fullPath = resolve24(dir, entry.name);
|
|
177439
177454
|
if (entry.isDirectory()) {
|
|
177440
177455
|
return walkAndClean(fullPath);
|
|
177441
177456
|
}
|
|
@@ -177451,10 +177466,10 @@ var mimeTypes, getMimeType = (filePath) => {
|
|
|
177451
177466
|
}, cleanStaleAssets = async (store, manifest, buildDir) => {
|
|
177452
177467
|
const liveByIdentity = new Map;
|
|
177453
177468
|
for (const webPath of store.keys()) {
|
|
177454
|
-
const diskPath =
|
|
177469
|
+
const diskPath = resolve24(buildDir, webPath.slice(1));
|
|
177455
177470
|
liveByIdentity.set(stripHash(diskPath), diskPath);
|
|
177456
177471
|
}
|
|
177457
|
-
const absBuildDir =
|
|
177472
|
+
const absBuildDir = resolve24(buildDir);
|
|
177458
177473
|
Object.values(manifest).forEach((val) => {
|
|
177459
177474
|
if (!HASHED_FILE_RE.test(val))
|
|
177460
177475
|
return;
|
|
@@ -177472,7 +177487,7 @@ var mimeTypes, getMimeType = (filePath) => {
|
|
|
177472
177487
|
} catch {}
|
|
177473
177488
|
}, lookupAsset = (store, path) => store.get(path), processScanEntry = (entry, dir, prefix, store, scanDir) => {
|
|
177474
177489
|
if (entry.isDirectory()) {
|
|
177475
|
-
return scanDir(
|
|
177490
|
+
return scanDir(resolve24(dir, entry.name), `${prefix}${entry.name}/`);
|
|
177476
177491
|
}
|
|
177477
177492
|
if (!entry.name.startsWith("chunk-")) {
|
|
177478
177493
|
return null;
|
|
@@ -177481,7 +177496,7 @@ var mimeTypes, getMimeType = (filePath) => {
|
|
|
177481
177496
|
if (store.has(webPath)) {
|
|
177482
177497
|
return null;
|
|
177483
177498
|
}
|
|
177484
|
-
return Bun.file(
|
|
177499
|
+
return Bun.file(resolve24(dir, entry.name)).bytes().then((bytes) => {
|
|
177485
177500
|
store.set(webPath, bytes);
|
|
177486
177501
|
return;
|
|
177487
177502
|
}).catch(() => {});
|
|
@@ -177506,7 +177521,7 @@ var mimeTypes, getMimeType = (filePath) => {
|
|
|
177506
177521
|
for (const webPath of newIdentities.values()) {
|
|
177507
177522
|
if (store.has(webPath))
|
|
177508
177523
|
continue;
|
|
177509
|
-
loadPromises.push(Bun.file(
|
|
177524
|
+
loadPromises.push(Bun.file(resolve24(buildDir, webPath.slice(1))).bytes().then((bytes) => {
|
|
177510
177525
|
store.set(webPath, bytes);
|
|
177511
177526
|
return;
|
|
177512
177527
|
}).catch(() => {}));
|
|
@@ -177557,9 +177572,9 @@ var init_fileHashTracker = __esm(() => {
|
|
|
177557
177572
|
});
|
|
177558
177573
|
|
|
177559
177574
|
// src/dev/reactComponentClassifier.ts
|
|
177560
|
-
import { resolve as
|
|
177575
|
+
import { resolve as resolve25 } from "path";
|
|
177561
177576
|
var classifyComponent = (filePath) => {
|
|
177562
|
-
const normalizedPath =
|
|
177577
|
+
const normalizedPath = resolve25(filePath);
|
|
177563
177578
|
if (normalizedPath.includes("/react/pages/")) {
|
|
177564
177579
|
return "server";
|
|
177565
177580
|
}
|
|
@@ -177571,7 +177586,7 @@ var classifyComponent = (filePath) => {
|
|
|
177571
177586
|
var init_reactComponentClassifier = () => {};
|
|
177572
177587
|
|
|
177573
177588
|
// src/dev/moduleMapper.ts
|
|
177574
|
-
import { basename as basename9, resolve as
|
|
177589
|
+
import { basename as basename9, resolve as resolve26 } from "path";
|
|
177575
177590
|
var buildModulePaths = (moduleKeys, manifest) => {
|
|
177576
177591
|
const modulePaths = {};
|
|
177577
177592
|
moduleKeys.forEach((key) => {
|
|
@@ -177581,7 +177596,7 @@ var buildModulePaths = (moduleKeys, manifest) => {
|
|
|
177581
177596
|
});
|
|
177582
177597
|
return modulePaths;
|
|
177583
177598
|
}, processChangedFile = (sourceFile, framework, manifest, resolvedPaths, processedFiles) => {
|
|
177584
|
-
const normalizedFile =
|
|
177599
|
+
const normalizedFile = resolve26(sourceFile);
|
|
177585
177600
|
const normalizedPath = normalizedFile.replace(/\\/g, "/");
|
|
177586
177601
|
if (processedFiles.has(normalizedFile)) {
|
|
177587
177602
|
return null;
|
|
@@ -177617,7 +177632,7 @@ var buildModulePaths = (moduleKeys, manifest) => {
|
|
|
177617
177632
|
});
|
|
177618
177633
|
return grouped;
|
|
177619
177634
|
}, mapSourceFileToManifestKeys = (sourceFile, framework, resolvedPaths) => {
|
|
177620
|
-
const normalizedFile =
|
|
177635
|
+
const normalizedFile = resolve26(sourceFile);
|
|
177621
177636
|
const fileName = basename9(normalizedFile);
|
|
177622
177637
|
const baseName = fileName.replace(/\.(tsx?|jsx?|vue|svelte|css|html)$/, "");
|
|
177623
177638
|
const pascalName = toPascal(baseName);
|
|
@@ -177899,19 +177914,19 @@ var escapeHtml = (str) => String(str).replace(/&/g, "&").replace(/</g, "<
|
|
|
177899
177914
|
import { AsyncLocalStorage as AsyncLocalStorage3 } from "async_hooks";
|
|
177900
177915
|
import { mkdir as mkdir4, symlink } from "fs/promises";
|
|
177901
177916
|
import { tmpdir } from "os";
|
|
177902
|
-
import { basename as basename10, dirname as dirname11, join as join20, resolve as
|
|
177917
|
+
import { basename as basename10, dirname as dirname11, join as join20, resolve as resolve27 } from "path";
|
|
177903
177918
|
var ssrDirty2 = false, lastSelector = "angular-page", isRecord8 = (value) => typeof value === "object" && value !== null, isAngularComponent = (value) => typeof value === "function", compilerImportPromise = null, ensureAngularCompiler = () => {
|
|
177904
177919
|
if (!compilerImportPromise) {
|
|
177905
177920
|
compilerImportPromise = import("@angular/compiler");
|
|
177906
177921
|
}
|
|
177907
177922
|
return compilerImportPromise;
|
|
177908
177923
|
}, readAngularPageModule = (value) => isRecord8(value) ? value : null, resolveAngularSsrOutDir = () => process.env.ABSOLUTE_ANGULAR_SSR_OUTDIR ?? join20(tmpdir(), "absolutejs", "generated", "angular-ssr"), ensureAngularSsrNodeModules = async (outDir) => {
|
|
177909
|
-
const outRoot =
|
|
177924
|
+
const outRoot = resolve27(dirname11(dirname11(outDir)));
|
|
177910
177925
|
const nodeModulesLink = join20(outRoot, "node_modules");
|
|
177911
177926
|
if (process.env.ABSOLUTE_ANGULAR_SSR_OUTDIR) {
|
|
177912
177927
|
return;
|
|
177913
177928
|
}
|
|
177914
|
-
if (nodeModulesLink ===
|
|
177929
|
+
if (nodeModulesLink === resolve27(process.cwd(), "node_modules")) {
|
|
177915
177930
|
return;
|
|
177916
177931
|
}
|
|
177917
177932
|
if (await Bun.file(nodeModulesLink).exists()) {
|
|
@@ -177919,7 +177934,7 @@ var ssrDirty2 = false, lastSelector = "angular-page", isRecord8 = (value) => typ
|
|
|
177919
177934
|
}
|
|
177920
177935
|
await mkdir4(outRoot, { recursive: true });
|
|
177921
177936
|
try {
|
|
177922
|
-
await symlink(
|
|
177937
|
+
await symlink(resolve27(process.cwd(), "node_modules"), nodeModulesLink, "dir");
|
|
177923
177938
|
} catch (error) {
|
|
177924
177939
|
if (!(error instanceof Error) || !("code" in error) || error.code !== "EEXIST") {
|
|
177925
177940
|
throw error;
|
|
@@ -178362,8 +178377,8 @@ __export(exports_moduleServer, {
|
|
|
178362
178377
|
createModuleServer: () => createModuleServer,
|
|
178363
178378
|
SRC_URL_PREFIX: () => SRC_URL_PREFIX
|
|
178364
178379
|
});
|
|
178365
|
-
import { existsSync as
|
|
178366
|
-
import { basename as basename12, dirname as dirname13, extname as extname5, resolve as
|
|
178380
|
+
import { existsSync as existsSync20, readFileSync as readFileSync13, statSync as statSync2 } from "fs";
|
|
178381
|
+
import { basename as basename12, dirname as dirname13, extname as extname5, resolve as resolve28, relative as relative10 } from "path";
|
|
178367
178382
|
var SRC_PREFIX = "/@src/", jsTranspiler2, tsTranspiler2, tsxTranspiler, TRANSPILABLE, ALL_EXPORTS_RE, STRING_CONTENTS_RE, preserveTypeExports = (originalSource, transpiled, valueExports) => {
|
|
178368
178383
|
const codeOnly = originalSource.replace(STRING_CONTENTS_RE, '""');
|
|
178369
178384
|
const allExports = [];
|
|
@@ -178383,7 +178398,7 @@ var SRC_PREFIX = "/@src/", jsTranspiler2, tsTranspiler2, tsxTranspiler, TRANSPIL
|
|
|
178383
178398
|
${stubs}
|
|
178384
178399
|
`;
|
|
178385
178400
|
}, resolveRelativeExtension = (srcPath, projectRoot, extensions) => {
|
|
178386
|
-
const found = extensions.find((ext) =>
|
|
178401
|
+
const found = extensions.find((ext) => existsSync20(resolve28(projectRoot, srcPath + ext)));
|
|
178387
178402
|
return found ? srcPath + found : srcPath;
|
|
178388
178403
|
}, IMPORT_EXTENSIONS, SIDE_EFFECT_EXTENSIONS, MODULE_EXTENSIONS, RESOLVED_MODULE_EXTENSIONS, REACT_EXTENSIONS, escapeRegex3 = (str) => str.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"), buildImportRewriter = (vendorPaths) => {
|
|
178389
178404
|
const entries = Object.entries(vendorPaths).sort(([a], [b]) => b.length - a.length);
|
|
@@ -178398,7 +178413,7 @@ ${stubs}
|
|
|
178398
178413
|
return invalidationVersion > 0 ? `${mtime}.${invalidationVersion}` : `${mtime}`;
|
|
178399
178414
|
}, srcUrl = (relPath, projectRoot) => {
|
|
178400
178415
|
const base = `${SRC_PREFIX}${relPath.replace(/\\/g, "/")}`;
|
|
178401
|
-
const absPath =
|
|
178416
|
+
const absPath = resolve28(projectRoot, relPath);
|
|
178402
178417
|
const cached = mtimeCache.get(absPath);
|
|
178403
178418
|
if (cached !== undefined)
|
|
178404
178419
|
return `${base}?v=${buildVersion(cached, absPath)}`;
|
|
@@ -178410,12 +178425,12 @@ ${stubs}
|
|
|
178410
178425
|
return base;
|
|
178411
178426
|
}
|
|
178412
178427
|
}, resolveRelativeImport = (relPath, fileDir, projectRoot, extensions) => {
|
|
178413
|
-
const absPath =
|
|
178428
|
+
const absPath = resolve28(fileDir, relPath);
|
|
178414
178429
|
const rel = relative10(projectRoot, absPath);
|
|
178415
178430
|
const extension = extname5(rel);
|
|
178416
178431
|
let srcPath = RESOLVED_MODULE_EXTENSIONS.has(extension) ? rel : resolveRelativeExtension(rel, projectRoot, extensions);
|
|
178417
178432
|
if (extname5(srcPath) === ".svelte") {
|
|
178418
|
-
srcPath = relative10(projectRoot, resolveSvelteModulePath(
|
|
178433
|
+
srcPath = relative10(projectRoot, resolveSvelteModulePath(resolve28(projectRoot, srcPath)));
|
|
178419
178434
|
}
|
|
178420
178435
|
return srcUrl(srcPath, projectRoot);
|
|
178421
178436
|
}, resolveAbsoluteSpecifier = (specifier, projectRoot) => {
|
|
@@ -178461,12 +178476,12 @@ ${stubs}
|
|
|
178461
178476
|
return `${prefix}${srcUrl(rel, projectRoot)}${suffix}`;
|
|
178462
178477
|
});
|
|
178463
178478
|
result = result.replace(/new\s+URL\(\s*["'](\.\.?\/[^"']+)["']\s*,\s*import\.meta\.url\s*\)/g, (_match, relPath) => {
|
|
178464
|
-
const absPath =
|
|
178479
|
+
const absPath = resolve28(fileDir, relPath);
|
|
178465
178480
|
const rel = relative10(projectRoot, absPath);
|
|
178466
178481
|
return `new URL('${srcUrl(rel, projectRoot)}', import.meta.url)`;
|
|
178467
178482
|
});
|
|
178468
178483
|
result = result.replace(/import\.meta\.resolve\(\s*["'](\.\.?\/[^"']+)["']\s*\)/g, (_match, relPath) => {
|
|
178469
|
-
const absPath =
|
|
178484
|
+
const absPath = resolve28(fileDir, relPath);
|
|
178470
178485
|
const rel = relative10(projectRoot, absPath);
|
|
178471
178486
|
return `'${srcUrl(rel, projectRoot)}'`;
|
|
178472
178487
|
});
|
|
@@ -178742,7 +178757,7 @@ ${code}`;
|
|
|
178742
178757
|
code = injectVueHmr(code, filePath, projectRoot, vueDir);
|
|
178743
178758
|
return rewriteImports2(code, filePath, projectRoot, rewriter);
|
|
178744
178759
|
}, injectVueHmr = (code, filePath, projectRoot, vueDir) => {
|
|
178745
|
-
const hmrBase = vueDir ?
|
|
178760
|
+
const hmrBase = vueDir ? resolve28(vueDir) : projectRoot;
|
|
178746
178761
|
const hmrId = relative10(hmrBase, filePath).replace(/\\/g, "/").replace(/\.vue$/, "");
|
|
178747
178762
|
let result = code.replace(/export\s+default\s+/, "var __hmr_comp__ = ");
|
|
178748
178763
|
result += [
|
|
@@ -178757,11 +178772,11 @@ ${code}`;
|
|
|
178757
178772
|
`);
|
|
178758
178773
|
return result;
|
|
178759
178774
|
}, resolveSvelteModulePath = (path) => {
|
|
178760
|
-
if (
|
|
178775
|
+
if (existsSync20(path))
|
|
178761
178776
|
return path;
|
|
178762
|
-
if (
|
|
178777
|
+
if (existsSync20(`${path}.ts`))
|
|
178763
178778
|
return `${path}.ts`;
|
|
178764
|
-
if (
|
|
178779
|
+
if (existsSync20(`${path}.js`))
|
|
178765
178780
|
return `${path}.js`;
|
|
178766
178781
|
return path;
|
|
178767
178782
|
}, jsResponse = (body) => {
|
|
@@ -178901,13 +178916,13 @@ export default {};
|
|
|
178901
178916
|
const escaped = virtualCss.replace(/\\/g, "\\\\").replace(/`/g, "\\`").replace(/\$/g, "\\$");
|
|
178902
178917
|
return jsResponse(`var s=document.createElement('style');s.textContent=\`${escaped}\`;s.dataset.svelteHmr=${JSON.stringify(cssCheckPath)};var p=document.querySelector('style[data-svelte-hmr="${cssCheckPath}"]');if(p)p.remove();document.head.appendChild(s);`);
|
|
178903
178918
|
}, resolveSourcePath = (relPath, projectRoot) => {
|
|
178904
|
-
const filePath =
|
|
178919
|
+
const filePath = resolve28(projectRoot, relPath);
|
|
178905
178920
|
const ext = extname5(filePath);
|
|
178906
178921
|
if (ext === ".svelte")
|
|
178907
178922
|
return { ext, filePath: resolveSvelteModulePath(filePath) };
|
|
178908
178923
|
if (ext)
|
|
178909
178924
|
return { ext, filePath };
|
|
178910
|
-
const found = MODULE_EXTENSIONS.find((candidate) =>
|
|
178925
|
+
const found = MODULE_EXTENSIONS.find((candidate) => existsSync20(filePath + candidate));
|
|
178911
178926
|
if (!found)
|
|
178912
178927
|
return { ext, filePath };
|
|
178913
178928
|
const resolved = filePath + found;
|
|
@@ -178928,7 +178943,7 @@ export default {};
|
|
|
178928
178943
|
if (!TRANSPILABLE.has(ext))
|
|
178929
178944
|
return;
|
|
178930
178945
|
const stat2 = statSync2(filePath);
|
|
178931
|
-
const resolvedVueDir = vueDir ?
|
|
178946
|
+
const resolvedVueDir = vueDir ? resolve28(vueDir) : undefined;
|
|
178932
178947
|
const content = REACT_EXTENSIONS.has(ext) ? transformReactFile(filePath, projectRoot, rewriter) : transformPlainFile(filePath, projectRoot, rewriter, resolvedVueDir);
|
|
178933
178948
|
setTransformed(filePath, content, stat2.mtimeMs, extractImportedFiles(content, projectRoot));
|
|
178934
178949
|
return jsResponse(content);
|
|
@@ -178959,7 +178974,7 @@ export default {};
|
|
|
178959
178974
|
if (!pathname.startsWith(SRC_PREFIX))
|
|
178960
178975
|
return;
|
|
178961
178976
|
const relPath = pathname.slice(SRC_PREFIX.length);
|
|
178962
|
-
const virtualCssResponse = handleVirtualSvelteCss(
|
|
178977
|
+
const virtualCssResponse = handleVirtualSvelteCss(resolve28(projectRoot, relPath));
|
|
178963
178978
|
if (virtualCssResponse)
|
|
178964
178979
|
return virtualCssResponse;
|
|
178965
178980
|
const { filePath, ext } = resolveSourcePath(relPath, projectRoot);
|
|
@@ -178975,11 +178990,11 @@ export default {};
|
|
|
178975
178990
|
SRC_IMPORT_RE.lastIndex = 0;
|
|
178976
178991
|
while ((match = SRC_IMPORT_RE.exec(content)) !== null) {
|
|
178977
178992
|
if (match[1])
|
|
178978
|
-
files.push(
|
|
178993
|
+
files.push(resolve28(projectRoot, match[1]));
|
|
178979
178994
|
}
|
|
178980
178995
|
return files;
|
|
178981
178996
|
}, invalidateModule = (filePath) => {
|
|
178982
|
-
const resolved =
|
|
178997
|
+
const resolved = resolve28(filePath);
|
|
178983
178998
|
invalidate(filePath);
|
|
178984
178999
|
if (resolved !== filePath)
|
|
178985
179000
|
invalidate(resolved);
|
|
@@ -179055,11 +179070,11 @@ var exports_simpleHTMLHMR = {};
|
|
|
179055
179070
|
__export(exports_simpleHTMLHMR, {
|
|
179056
179071
|
handleHTMLUpdate: () => handleHTMLUpdate
|
|
179057
179072
|
});
|
|
179058
|
-
import { resolve as
|
|
179073
|
+
import { resolve as resolve29 } from "path";
|
|
179059
179074
|
var handleHTMLUpdate = async (htmlFilePath) => {
|
|
179060
179075
|
let htmlContent;
|
|
179061
179076
|
try {
|
|
179062
|
-
const resolvedPath =
|
|
179077
|
+
const resolvedPath = resolve29(htmlFilePath);
|
|
179063
179078
|
const file4 = Bun.file(resolvedPath);
|
|
179064
179079
|
if (!await file4.exists()) {
|
|
179065
179080
|
return null;
|
|
@@ -179085,11 +179100,11 @@ var exports_simpleHTMXHMR = {};
|
|
|
179085
179100
|
__export(exports_simpleHTMXHMR, {
|
|
179086
179101
|
handleHTMXUpdate: () => handleHTMXUpdate
|
|
179087
179102
|
});
|
|
179088
|
-
import { resolve as
|
|
179103
|
+
import { resolve as resolve30 } from "path";
|
|
179089
179104
|
var handleHTMXUpdate = async (htmxFilePath) => {
|
|
179090
179105
|
let htmlContent;
|
|
179091
179106
|
try {
|
|
179092
|
-
const resolvedPath =
|
|
179107
|
+
const resolvedPath = resolve30(htmxFilePath);
|
|
179093
179108
|
const file4 = Bun.file(resolvedPath);
|
|
179094
179109
|
if (!await file4.exists()) {
|
|
179095
179110
|
return null;
|
|
@@ -179111,8 +179126,8 @@ var handleHTMXUpdate = async (htmxFilePath) => {
|
|
|
179111
179126
|
var init_simpleHTMXHMR = () => {};
|
|
179112
179127
|
|
|
179113
179128
|
// src/dev/rebuildTrigger.ts
|
|
179114
|
-
import { existsSync as
|
|
179115
|
-
import { basename as basename13, dirname as dirname14, relative as relative11, resolve as
|
|
179129
|
+
import { existsSync as existsSync21 } from "fs";
|
|
179130
|
+
import { basename as basename13, dirname as dirname14, relative as relative11, resolve as resolve31 } from "path";
|
|
179116
179131
|
var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseErrorLocationFromMessage = (msg) => {
|
|
179117
179132
|
const pathLineCol = msg.match(/^([^\s:]+):(\d+)(?::(\d+))?/);
|
|
179118
179133
|
if (pathLineCol) {
|
|
@@ -179180,11 +179195,11 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
179180
179195
|
detectedFw = detected !== "ignored" ? detected : affectedFrameworks[0];
|
|
179181
179196
|
}
|
|
179182
179197
|
return { ...parsed, framework: detectedFw };
|
|
179183
|
-
}, isValidDeletedAffectedFile = (affectedFile, deletedPathResolved, processedFiles) => affectedFile !== deletedPathResolved && !processedFiles.has(affectedFile) &&
|
|
179198
|
+
}, isValidDeletedAffectedFile = (affectedFile, deletedPathResolved, processedFiles) => affectedFile !== deletedPathResolved && !processedFiles.has(affectedFile) && existsSync21(affectedFile), collectDeletedFileAffected = (state, filePathInSet, processedFiles, validFiles) => {
|
|
179184
179199
|
state.fileHashes.delete(filePathInSet);
|
|
179185
179200
|
try {
|
|
179186
179201
|
const affectedFiles = getAffectedFiles(state.dependencyGraph, filePathInSet);
|
|
179187
|
-
const deletedPathResolved =
|
|
179202
|
+
const deletedPathResolved = resolve31(filePathInSet);
|
|
179188
179203
|
affectedFiles.forEach((affectedFile) => {
|
|
179189
179204
|
if (isValidDeletedAffectedFile(affectedFile, deletedPathResolved, processedFiles)) {
|
|
179190
179205
|
validFiles.push(affectedFile);
|
|
@@ -179198,7 +179213,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
179198
179213
|
if (!dependents || dependents.size === 0) {
|
|
179199
179214
|
return;
|
|
179200
179215
|
}
|
|
179201
|
-
const dependentFiles = Array.from(dependents).filter((file4) =>
|
|
179216
|
+
const dependentFiles = Array.from(dependents).filter((file4) => existsSync21(file4));
|
|
179202
179217
|
if (dependentFiles.length === 0) {
|
|
179203
179218
|
return;
|
|
179204
179219
|
}
|
|
@@ -179214,7 +179229,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
179214
179229
|
try {
|
|
179215
179230
|
const affectedFiles = getAffectedFiles(state.dependencyGraph, normalizedFilePath);
|
|
179216
179231
|
affectedFiles.forEach((affectedFile) => {
|
|
179217
|
-
if (!processedFiles.has(affectedFile) && affectedFile !== normalizedFilePath &&
|
|
179232
|
+
if (!processedFiles.has(affectedFile) && affectedFile !== normalizedFilePath && existsSync21(affectedFile)) {
|
|
179218
179233
|
validFiles.push(affectedFile);
|
|
179219
179234
|
processedFiles.add(affectedFile);
|
|
179220
179235
|
}
|
|
@@ -179228,7 +179243,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
179228
179243
|
if (storedHash !== undefined && storedHash === fileHash) {
|
|
179229
179244
|
return;
|
|
179230
179245
|
}
|
|
179231
|
-
const normalizedFilePath =
|
|
179246
|
+
const normalizedFilePath = resolve31(filePathInSet);
|
|
179232
179247
|
if (!processedFiles.has(normalizedFilePath)) {
|
|
179233
179248
|
validFiles.push(normalizedFilePath);
|
|
179234
179249
|
processedFiles.add(normalizedFilePath);
|
|
@@ -179239,7 +179254,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
179239
179254
|
collectChangedFileAffected(state, normalizedFilePath, processedFiles, validFiles);
|
|
179240
179255
|
}, processFilePathSet = (state, filePathSet, processedFiles, validFiles) => {
|
|
179241
179256
|
filePathSet.forEach((filePathInSet) => {
|
|
179242
|
-
if (!
|
|
179257
|
+
if (!existsSync21(filePathInSet)) {
|
|
179243
179258
|
collectDeletedFileAffected(state, filePathInSet, processedFiles, validFiles);
|
|
179244
179259
|
return;
|
|
179245
179260
|
}
|
|
@@ -179306,7 +179321,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
179306
179321
|
}
|
|
179307
179322
|
if (framework === "unknown") {
|
|
179308
179323
|
const { invalidate: invalidate2 } = (init_transformCache(), __toCommonJS(exports_transformCache));
|
|
179309
|
-
invalidate2(
|
|
179324
|
+
invalidate2(resolve31(filePath));
|
|
179310
179325
|
const relPath = relative11(process.cwd(), filePath);
|
|
179311
179326
|
logHmrUpdate(relPath);
|
|
179312
179327
|
return;
|
|
@@ -179347,12 +179362,12 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
179347
179362
|
return componentFile;
|
|
179348
179363
|
}
|
|
179349
179364
|
const tsCounterpart = componentFile.replace(/\.html$/, ".ts");
|
|
179350
|
-
if (
|
|
179365
|
+
if (existsSync21(tsCounterpart)) {
|
|
179351
179366
|
return tsCounterpart;
|
|
179352
179367
|
}
|
|
179353
179368
|
if (!graph)
|
|
179354
179369
|
return componentFile;
|
|
179355
|
-
const dependents = graph.dependents.get(
|
|
179370
|
+
const dependents = graph.dependents.get(resolve31(componentFile));
|
|
179356
179371
|
if (!dependents)
|
|
179357
179372
|
return componentFile;
|
|
179358
179373
|
for (const dep of dependents) {
|
|
@@ -179361,7 +179376,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
179361
179376
|
}
|
|
179362
179377
|
return componentFile;
|
|
179363
179378
|
}, resolveAngularPageEntries = (state, angularFiles, angularPagesPath) => {
|
|
179364
|
-
const pageEntries = angularFiles.filter((file4) => file4.endsWith(".ts") &&
|
|
179379
|
+
const pageEntries = angularFiles.filter((file4) => file4.endsWith(".ts") && resolve31(file4).startsWith(angularPagesPath));
|
|
179365
179380
|
if (pageEntries.length > 0 || !state.dependencyGraph) {
|
|
179366
179381
|
return pageEntries;
|
|
179367
179382
|
}
|
|
@@ -179370,7 +179385,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
179370
179385
|
const lookupFile = resolveComponentLookupFile(componentFile, state.dependencyGraph);
|
|
179371
179386
|
const affected = getAffectedFiles(state.dependencyGraph, lookupFile);
|
|
179372
179387
|
affected.forEach((file4) => {
|
|
179373
|
-
if (file4.endsWith(".ts") &&
|
|
179388
|
+
if (file4.endsWith(".ts") && resolve31(file4).startsWith(angularPagesPath)) {
|
|
179374
179389
|
resolvedPages.add(file4);
|
|
179375
179390
|
}
|
|
179376
179391
|
});
|
|
@@ -179464,7 +179479,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
179464
179479
|
const { clientPaths, serverPaths } = await compileAngular2(pageEntries, angularDir, true);
|
|
179465
179480
|
serverPaths.forEach((serverPath) => {
|
|
179466
179481
|
const fileBase = basename13(serverPath, ".js");
|
|
179467
|
-
state.manifest[toPascal(fileBase)] =
|
|
179482
|
+
state.manifest[toPascal(fileBase)] = resolve31(serverPath);
|
|
179468
179483
|
});
|
|
179469
179484
|
if (clientPaths.length > 0) {
|
|
179470
179485
|
await bundleAngularClient(state, clientPaths, state.resolvedPaths.buildDir);
|
|
@@ -179473,9 +179488,9 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
179473
179488
|
const angularDir = config.angularDirectory ?? "";
|
|
179474
179489
|
const angularFiles = filesToRebuild.filter((file4) => detectFramework(file4, state.resolvedPaths) === "angular");
|
|
179475
179490
|
for (const file4 of angularFiles) {
|
|
179476
|
-
state.fileHashes.set(
|
|
179491
|
+
state.fileHashes.set(resolve31(file4), computeFileHash(file4));
|
|
179477
179492
|
}
|
|
179478
|
-
const angularPagesPath =
|
|
179493
|
+
const angularPagesPath = resolve31(angularDir, "pages");
|
|
179479
179494
|
const pageEntries = resolveAngularPageEntries(state, angularFiles, angularPagesPath);
|
|
179480
179495
|
if (pageEntries.length > 0) {
|
|
179481
179496
|
await compileAndBundleAngular(state, pageEntries, angularDir);
|
|
@@ -179490,8 +179505,8 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
179490
179505
|
return manifest;
|
|
179491
179506
|
}, resolveReactEntryForPageFile = (normalized, pagesPathResolved, reactIndexesPath) => {
|
|
179492
179507
|
const pageName = basename13(normalized, ".tsx");
|
|
179493
|
-
const indexPath =
|
|
179494
|
-
if (!
|
|
179508
|
+
const indexPath = resolve31(reactIndexesPath, `${pageName}.tsx`);
|
|
179509
|
+
if (!existsSync21(indexPath)) {
|
|
179495
179510
|
return;
|
|
179496
179511
|
}
|
|
179497
179512
|
return indexPath;
|
|
@@ -179502,13 +179517,13 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
179502
179517
|
return;
|
|
179503
179518
|
}
|
|
179504
179519
|
const pageName = basename13(dep, ".tsx");
|
|
179505
|
-
const indexPath =
|
|
179506
|
-
if (
|
|
179520
|
+
const indexPath = resolve31(reactIndexesPath, `${pageName}.tsx`);
|
|
179521
|
+
if (existsSync21(indexPath) && !reactEntries.includes(indexPath)) {
|
|
179507
179522
|
reactEntries.push(indexPath);
|
|
179508
179523
|
}
|
|
179509
179524
|
});
|
|
179510
179525
|
}, resolveReactEntryForFile = (state, file4, pagesPathResolved, reactIndexesPath, reactEntries) => {
|
|
179511
|
-
const normalized =
|
|
179526
|
+
const normalized = resolve31(file4);
|
|
179512
179527
|
if (!normalized.startsWith(pagesPathResolved)) {
|
|
179513
179528
|
resolveReactEntriesFromDeps(state, normalized, pagesPathResolved, reactIndexesPath, reactEntries);
|
|
179514
179529
|
return;
|
|
@@ -179519,7 +179534,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
179519
179534
|
}
|
|
179520
179535
|
}, collectReactEntries = (state, filesToRebuild, reactPagesPath, reactIndexesPath) => {
|
|
179521
179536
|
const reactEntries = [];
|
|
179522
|
-
const pagesPathResolved =
|
|
179537
|
+
const pagesPathResolved = resolve31(reactPagesPath);
|
|
179523
179538
|
filesToRebuild.forEach((file4) => {
|
|
179524
179539
|
resolveReactEntryForFile(state, file4, pagesPathResolved, reactIndexesPath, reactEntries);
|
|
179525
179540
|
});
|
|
@@ -179531,7 +179546,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
179531
179546
|
const { rewriteReactImports: rewriteReactImports2 } = await Promise.resolve().then(() => (init_rewriteReactImports(), exports_rewriteReactImports));
|
|
179532
179547
|
const clientRoot = await computeClientRoot(state.resolvedPaths);
|
|
179533
179548
|
const depVendorPaths = globalThis.__depVendorPaths ?? {};
|
|
179534
|
-
const refreshEntry =
|
|
179549
|
+
const refreshEntry = resolve31(reactIndexesPath, "_refresh.tsx");
|
|
179535
179550
|
if (!reactEntries.includes(refreshEntry)) {
|
|
179536
179551
|
reactEntries.push(refreshEntry);
|
|
179537
179552
|
}
|
|
@@ -179543,7 +179558,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
179543
179558
|
setDevVendorPaths2(vendorPaths);
|
|
179544
179559
|
}
|
|
179545
179560
|
const { rmSync: rmSync3 } = await import("fs");
|
|
179546
|
-
rmSync3(
|
|
179561
|
+
rmSync3(resolve31(buildDir, "react", "generated", "indexes"), {
|
|
179547
179562
|
force: true,
|
|
179548
179563
|
recursive: true
|
|
179549
179564
|
});
|
|
@@ -179593,11 +179608,11 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
179593
179608
|
if (isComponentFile2)
|
|
179594
179609
|
return primaryFile;
|
|
179595
179610
|
const { findNearestComponent: findNearestComponent2 } = await Promise.resolve().then(() => (init_transformCache(), exports_transformCache));
|
|
179596
|
-
const nearest = findNearestComponent2(
|
|
179611
|
+
const nearest = findNearestComponent2(resolve31(primaryFile));
|
|
179597
179612
|
return nearest ?? primaryFile;
|
|
179598
179613
|
}, handleReactModuleServerPath = async (state, reactFiles, startTime, onRebuildComplete) => {
|
|
179599
179614
|
for (const file4 of reactFiles) {
|
|
179600
|
-
state.fileHashes.set(
|
|
179615
|
+
state.fileHashes.set(resolve31(file4), computeFileHash(file4));
|
|
179601
179616
|
}
|
|
179602
179617
|
invalidateReactSsrCache();
|
|
179603
179618
|
const primaryFile = reactFiles.find((file4) => !file4.replace(/\\/g, "/").includes("/pages/")) ?? reactFiles[0];
|
|
@@ -179639,8 +179654,8 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
179639
179654
|
return state.manifest;
|
|
179640
179655
|
}, handleReactFastPath = async (state, config, filesToRebuild, startTime, onRebuildComplete) => {
|
|
179641
179656
|
const reactDir = config.reactDirectory ?? "";
|
|
179642
|
-
const reactPagesPath =
|
|
179643
|
-
const reactIndexesPath =
|
|
179657
|
+
const reactPagesPath = resolve31(reactDir, "pages");
|
|
179658
|
+
const reactIndexesPath = resolve31(reactDir, "generated", "indexes");
|
|
179644
179659
|
const { buildDir } = state.resolvedPaths;
|
|
179645
179660
|
const reactFiles = filesToRebuild.filter((file4) => detectFramework(file4, state.resolvedPaths) === "react");
|
|
179646
179661
|
if (reactFiles.length > 0) {
|
|
@@ -179703,7 +179718,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
179703
179718
|
});
|
|
179704
179719
|
}, handleSvelteModuleServerPath = async (state, svelteFiles, startTime, onRebuildComplete) => {
|
|
179705
179720
|
for (const file4 of svelteFiles) {
|
|
179706
|
-
state.fileHashes.set(
|
|
179721
|
+
state.fileHashes.set(resolve31(file4), computeFileHash(file4));
|
|
179707
179722
|
}
|
|
179708
179723
|
invalidateSvelteSsrCache();
|
|
179709
179724
|
const serverDuration = Date.now() - startTime;
|
|
@@ -179729,8 +179744,8 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
179729
179744
|
const { svelteServerPaths, svelteIndexPaths, svelteClientPaths } = await compileSvelte2(svelteFiles, svelteDir, new Map, true);
|
|
179730
179745
|
const serverEntries = [...svelteServerPaths];
|
|
179731
179746
|
const clientEntries = [...svelteIndexPaths, ...svelteClientPaths];
|
|
179732
|
-
const serverRoot =
|
|
179733
|
-
const serverOutDir =
|
|
179747
|
+
const serverRoot = resolve31(svelteDir, "generated", "server");
|
|
179748
|
+
const serverOutDir = resolve31(buildDir, basename13(svelteDir));
|
|
179734
179749
|
const [serverResult, clientResult] = await Promise.all([
|
|
179735
179750
|
serverEntries.length > 0 ? bunBuild7({
|
|
179736
179751
|
entrypoints: serverEntries,
|
|
@@ -179821,7 +179836,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
179821
179836
|
});
|
|
179822
179837
|
}, handleVueModuleServerPath = async (state, vueFiles, nonVueFiles, startTime, onRebuildComplete) => {
|
|
179823
179838
|
for (const file4 of [...vueFiles, ...nonVueFiles]) {
|
|
179824
|
-
state.fileHashes.set(
|
|
179839
|
+
state.fileHashes.set(resolve31(file4), computeFileHash(file4));
|
|
179825
179840
|
}
|
|
179826
179841
|
invalidateVueSsrCache();
|
|
179827
179842
|
await invalidateNonVueModules(nonVueFiles);
|
|
@@ -179916,8 +179931,8 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
179916
179931
|
if (!buildReference?.source) {
|
|
179917
179932
|
return;
|
|
179918
179933
|
}
|
|
179919
|
-
const sourcePath = buildReference.source.startsWith("file://") ? new URL(buildReference.source).pathname :
|
|
179920
|
-
islandFiles.add(
|
|
179934
|
+
const sourcePath = buildReference.source.startsWith("file://") ? new URL(buildReference.source).pathname : resolve31(dirname14(buildInfo.resolvedRegistryPath), buildReference.source);
|
|
179935
|
+
islandFiles.add(resolve31(sourcePath));
|
|
179921
179936
|
}, resolveIslandSourceFiles = async (config) => {
|
|
179922
179937
|
const registryPath = config.islands?.registry;
|
|
179923
179938
|
if (!registryPath) {
|
|
@@ -179925,7 +179940,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
179925
179940
|
}
|
|
179926
179941
|
const buildInfo = await loadIslandRegistryBuildInfo(registryPath);
|
|
179927
179942
|
const islandFiles = new Set([
|
|
179928
|
-
|
|
179943
|
+
resolve31(buildInfo.resolvedRegistryPath)
|
|
179929
179944
|
]);
|
|
179930
179945
|
for (const definition of buildInfo.definitions) {
|
|
179931
179946
|
resolveIslandDefinitionSource(definition, buildInfo, islandFiles);
|
|
@@ -179936,7 +179951,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
179936
179951
|
if (islandFiles.size === 0) {
|
|
179937
179952
|
return false;
|
|
179938
179953
|
}
|
|
179939
|
-
return filesToRebuild.some((file4) => islandFiles.has(
|
|
179954
|
+
return filesToRebuild.some((file4) => islandFiles.has(resolve31(file4)));
|
|
179940
179955
|
}, handleIslandSourceReload = async (state, config, filesToRebuild, manifest) => {
|
|
179941
179956
|
const shouldReload = await didStaticPagesNeedIslandRefresh(config, filesToRebuild);
|
|
179942
179957
|
if (!shouldReload) {
|
|
@@ -179971,10 +179986,10 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
179971
179986
|
}, computeOutputPagesDir = (state, config, framework) => {
|
|
179972
179987
|
const isSingle = !config.reactDirectory && !config.svelteDirectory && !config.vueDirectory && (framework === "html" ? !config.htmxDirectory : !config.htmlDirectory);
|
|
179973
179988
|
if (isSingle) {
|
|
179974
|
-
return
|
|
179989
|
+
return resolve31(state.resolvedPaths.buildDir, "pages");
|
|
179975
179990
|
}
|
|
179976
179991
|
const dirName = framework === "html" ? basename13(config.htmlDirectory ?? "html") : basename13(config.htmxDirectory ?? "htmx");
|
|
179977
|
-
return
|
|
179992
|
+
return resolve31(state.resolvedPaths.buildDir, dirName, "pages");
|
|
179978
179993
|
}, processHtmlPageUpdate = async (state, pageFile, builtHtmlPagePath, manifest, duration) => {
|
|
179979
179994
|
try {
|
|
179980
179995
|
const { handleHTMLUpdate: handleHTMLUpdate2 } = await Promise.resolve().then(() => (init_simpleHTMLHMR(), exports_simpleHTMLHMR));
|
|
@@ -180013,7 +180028,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
180013
180028
|
const pageFilesToUpdate = shouldRefreshAllPages ? await scanEntryPoints(outputHtmlPages, "*.html") : htmlPageFiles;
|
|
180014
180029
|
for (const pageFile of pageFilesToUpdate) {
|
|
180015
180030
|
const htmlPageName = basename13(pageFile);
|
|
180016
|
-
const builtHtmlPagePath =
|
|
180031
|
+
const builtHtmlPagePath = resolve31(outputHtmlPages, htmlPageName);
|
|
180017
180032
|
await processHtmlPageUpdate(state, pageFile, builtHtmlPagePath, manifest, duration);
|
|
180018
180033
|
}
|
|
180019
180034
|
}, handleVueCssOnlyUpdate = (state, vueCssFiles, manifest, duration) => {
|
|
@@ -180078,7 +180093,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
180078
180093
|
const cssKey = `${pascalName}CSS`;
|
|
180079
180094
|
const cssUrl = manifest[cssKey] || null;
|
|
180080
180095
|
const { vueHmrMetadata: vueHmrMetadata2 } = await Promise.resolve().then(() => (init_compileVue(), exports_compileVue));
|
|
180081
|
-
const hmrMeta = vueHmrMetadata2.get(
|
|
180096
|
+
const hmrMeta = vueHmrMetadata2.get(resolve31(vuePagePath));
|
|
180082
180097
|
const changeType = hmrMeta?.changeType ?? "full";
|
|
180083
180098
|
if (changeType === "style-only") {
|
|
180084
180099
|
broadcastVueStyleOnly(state, vuePagePath, baseName, cssUrl, hmrId, manifest, duration);
|
|
@@ -180315,7 +180330,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
180315
180330
|
const pageFilesToUpdate = shouldRefreshAllPages ? await scanEntryPoints(outputHtmxPages, "*.html") : htmxPageFiles;
|
|
180316
180331
|
for (const htmxPageFile of pageFilesToUpdate) {
|
|
180317
180332
|
const htmxPageName = basename13(htmxPageFile);
|
|
180318
|
-
const builtHtmxPagePath =
|
|
180333
|
+
const builtHtmxPagePath = resolve31(outputHtmxPages, htmxPageName);
|
|
180319
180334
|
await processHtmxPageUpdate(state, htmxPageFile, builtHtmxPagePath, manifest, duration);
|
|
180320
180335
|
}
|
|
180321
180336
|
}, collectUpdatedModulePaths = (allModuleUpdates) => {
|
|
@@ -180424,7 +180439,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, parseError
|
|
|
180424
180439
|
html = html.slice(0, bodyClose.index) + hmrScript + html.slice(bodyClose.index);
|
|
180425
180440
|
writeFs(destPath, html);
|
|
180426
180441
|
}, processMarkupFileFastPath = async (state, sourceFile, outputDir, framework, startTime, updateAssetPaths2, handleUpdate, readFs, writeFs) => {
|
|
180427
|
-
const destPath =
|
|
180442
|
+
const destPath = resolve31(outputDir, basename13(sourceFile));
|
|
180428
180443
|
const hmrScript = extractHmrScript(destPath, readFs);
|
|
180429
180444
|
const source = await Bun.file(sourceFile).text();
|
|
180430
180445
|
await Bun.write(destPath, source);
|
|
@@ -180799,7 +180814,7 @@ __export(exports_devBuild, {
|
|
|
180799
180814
|
});
|
|
180800
180815
|
import { readdir as readdir5 } from "fs/promises";
|
|
180801
180816
|
import { statSync as statSync3 } from "fs";
|
|
180802
|
-
import { dirname as dirname15, resolve as
|
|
180817
|
+
import { dirname as dirname15, resolve as resolve32 } from "path";
|
|
180803
180818
|
var FRAMEWORK_DIR_KEYS, collectDepVendorSourceDirs = (config) => {
|
|
180804
180819
|
const configuredDirs = [
|
|
180805
180820
|
config.reactDirectory,
|
|
@@ -180822,7 +180837,7 @@ var FRAMEWORK_DIR_KEYS, collectDepVendorSourceDirs = (config) => {
|
|
|
180822
180837
|
return Object.keys(config).length > 0 ? config : null;
|
|
180823
180838
|
}, reloadConfig = async () => {
|
|
180824
180839
|
try {
|
|
180825
|
-
const configPath2 =
|
|
180840
|
+
const configPath2 = resolve32(process.env.ABSOLUTE_CONFIG ?? "absolute.config.ts");
|
|
180826
180841
|
const source = await Bun.file(configPath2).text();
|
|
180827
180842
|
return parseDirectoryConfig(source);
|
|
180828
180843
|
} catch {
|
|
@@ -180902,7 +180917,7 @@ var FRAMEWORK_DIR_KEYS, collectDepVendorSourceDirs = (config) => {
|
|
|
180902
180917
|
state.fileChangeQueue.clear();
|
|
180903
180918
|
}
|
|
180904
180919
|
}, handleCachedReload = async () => {
|
|
180905
|
-
const serverMtime = statSync3(
|
|
180920
|
+
const serverMtime = statSync3(resolve32(Bun.main)).mtimeMs;
|
|
180906
180921
|
const lastMtime = globalThis.__hmrServerMtime;
|
|
180907
180922
|
globalThis.__hmrServerMtime = serverMtime;
|
|
180908
180923
|
const cached = globalThis.__hmrDevResult;
|
|
@@ -180936,8 +180951,8 @@ var FRAMEWORK_DIR_KEYS, collectDepVendorSourceDirs = (config) => {
|
|
|
180936
180951
|
return true;
|
|
180937
180952
|
}, resolveAbsoluteVersion2 = async () => {
|
|
180938
180953
|
const candidates = [
|
|
180939
|
-
|
|
180940
|
-
|
|
180954
|
+
resolve32(import.meta.dir, "..", "..", "package.json"),
|
|
180955
|
+
resolve32(import.meta.dir, "..", "package.json")
|
|
180941
180956
|
];
|
|
180942
180957
|
for (const candidate of candidates) {
|
|
180943
180958
|
const found = await tryReadPackageVersion(candidate);
|
|
@@ -180950,7 +180965,7 @@ var FRAMEWORK_DIR_KEYS, collectDepVendorSourceDirs = (config) => {
|
|
|
180950
180965
|
const entries = await readdir5(vendorDir).catch(() => emptyStringArray);
|
|
180951
180966
|
await Promise.all(entries.map(async (entry) => {
|
|
180952
180967
|
const webPath = `/${framework}/vendor/${entry}`;
|
|
180953
|
-
const bytes = await Bun.file(
|
|
180968
|
+
const bytes = await Bun.file(resolve32(vendorDir, entry)).bytes();
|
|
180954
180969
|
assetStore.set(webPath, bytes);
|
|
180955
180970
|
}));
|
|
180956
180971
|
}, devBuild = async (config) => {
|
|
@@ -180995,7 +181010,7 @@ var FRAMEWORK_DIR_KEYS, collectDepVendorSourceDirs = (config) => {
|
|
|
180995
181010
|
await populateAssetStore(state.assetStore, manifest, state.resolvedPaths.buildDir);
|
|
180996
181011
|
cleanStaleAssets(state.assetStore, manifest, state.resolvedPaths.buildDir);
|
|
180997
181012
|
const buildReactVendorTask = config.reactDirectory ? buildReactVendor(state.resolvedPaths.buildDir).then(async () => {
|
|
180998
|
-
const vendorDir =
|
|
181013
|
+
const vendorDir = resolve32(state.resolvedPaths.buildDir, "react", "vendor");
|
|
180999
181014
|
await loadVendorFiles(state.assetStore, vendorDir, "react");
|
|
181000
181015
|
if (!globalThis.__reactModuleRef) {
|
|
181001
181016
|
globalThis.__reactModuleRef = await import("react");
|
|
@@ -181003,23 +181018,23 @@ var FRAMEWORK_DIR_KEYS, collectDepVendorSourceDirs = (config) => {
|
|
|
181003
181018
|
return true;
|
|
181004
181019
|
}) : undefined;
|
|
181005
181020
|
const buildAngularVendorTask = config.angularDirectory ? buildAngularVendor(state.resolvedPaths.buildDir).then(async () => {
|
|
181006
|
-
const vendorDir =
|
|
181021
|
+
const vendorDir = resolve32(state.resolvedPaths.buildDir, "angular", "vendor");
|
|
181007
181022
|
await loadVendorFiles(state.assetStore, vendorDir, "angular");
|
|
181008
181023
|
return true;
|
|
181009
181024
|
}) : undefined;
|
|
181010
181025
|
const buildSvelteVendorTask = config.svelteDirectory ? buildSvelteVendor(state.resolvedPaths.buildDir).then(async () => {
|
|
181011
|
-
const vendorDir =
|
|
181026
|
+
const vendorDir = resolve32(state.resolvedPaths.buildDir, "svelte", "vendor");
|
|
181012
181027
|
await loadVendorFiles(state.assetStore, vendorDir, "svelte");
|
|
181013
181028
|
return true;
|
|
181014
181029
|
}) : undefined;
|
|
181015
181030
|
const buildVueVendorTask = config.vueDirectory ? buildVueVendor(state.resolvedPaths.buildDir).then(async () => {
|
|
181016
|
-
const vendorDir =
|
|
181031
|
+
const vendorDir = resolve32(state.resolvedPaths.buildDir, "vue", "vendor");
|
|
181017
181032
|
await loadVendorFiles(state.assetStore, vendorDir, "vue");
|
|
181018
181033
|
return true;
|
|
181019
181034
|
}) : undefined;
|
|
181020
181035
|
const { buildDepVendor: buildDepVendor2 } = await Promise.resolve().then(() => (init_buildDepVendor(), exports_buildDepVendor));
|
|
181021
181036
|
const buildDepVendorTask = buildDepVendor2(state.resolvedPaths.buildDir, sourceDirs).then(async (depPaths) => {
|
|
181022
|
-
const vendorDir =
|
|
181037
|
+
const vendorDir = resolve32(state.resolvedPaths.buildDir, "vendor");
|
|
181023
181038
|
await loadVendorFiles(state.assetStore, vendorDir, "vendor");
|
|
181024
181039
|
globalThis.__depVendorPaths = depPaths;
|
|
181025
181040
|
return true;
|
|
@@ -181050,7 +181065,7 @@ var FRAMEWORK_DIR_KEYS, collectDepVendorSourceDirs = (config) => {
|
|
|
181050
181065
|
manifest
|
|
181051
181066
|
};
|
|
181052
181067
|
globalThis.__hmrDevResult = result;
|
|
181053
|
-
globalThis.__hmrServerMtime = statSync3(
|
|
181068
|
+
globalThis.__hmrServerMtime = statSync3(resolve32(Bun.main)).mtimeMs;
|
|
181054
181069
|
return result;
|
|
181055
181070
|
};
|
|
181056
181071
|
var init_devBuild = __esm(() => {
|
|
@@ -181198,14 +181213,14 @@ __export(exports_devtoolsJson, {
|
|
|
181198
181213
|
normalizeDevtoolsWorkspaceRoot: () => normalizeDevtoolsWorkspaceRoot,
|
|
181199
181214
|
devtoolsJson: () => devtoolsJson
|
|
181200
181215
|
});
|
|
181201
|
-
import { existsSync as
|
|
181202
|
-
import { dirname as dirname16, join as join22, resolve as
|
|
181216
|
+
import { existsSync as existsSync22, mkdirSync as mkdirSync12, readFileSync as readFileSync14, writeFileSync as writeFileSync8 } from "fs";
|
|
181217
|
+
import { dirname as dirname16, join as join22, resolve as resolve33 } from "path";
|
|
181203
181218
|
import { Elysia as Elysia3 } from "elysia";
|
|
181204
181219
|
var ENDPOINT = "/.well-known/appspecific/com.chrome.devtools.json", UUID_CACHE_KEY = "__absoluteDevtoolsWorkspaceUuid", getGlobalUuid = () => Reflect.get(globalThis, UUID_CACHE_KEY), setGlobalUuid = (uuid) => {
|
|
181205
181220
|
Reflect.set(globalThis, UUID_CACHE_KEY, uuid);
|
|
181206
181221
|
return uuid;
|
|
181207
|
-
}, isUuidV4 = (value) => /^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(value), resolveDevtoolsUuidCachePath = (buildDir, uuidCachePath) =>
|
|
181208
|
-
if (!
|
|
181222
|
+
}, isUuidV4 = (value) => /^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(value), resolveDevtoolsUuidCachePath = (buildDir, uuidCachePath) => resolve33(uuidCachePath ?? join22(buildDir, ".absolute", "chrome-devtools-workspace-uuid")), readCachedUuid = (cachePath) => {
|
|
181223
|
+
if (!existsSync22(cachePath))
|
|
181209
181224
|
return null;
|
|
181210
181225
|
try {
|
|
181211
181226
|
const value = readFileSync14(cachePath, "utf-8").trim();
|
|
@@ -181230,7 +181245,7 @@ var ENDPOINT = "/.well-known/appspecific/com.chrome.devtools.json", UUID_CACHE_K
|
|
|
181230
181245
|
writeFileSync8(cachePath, uuid, "utf-8");
|
|
181231
181246
|
return setGlobalUuid(uuid);
|
|
181232
181247
|
}, devtoolsJson = (buildDir, options = {}) => {
|
|
181233
|
-
const rootPath =
|
|
181248
|
+
const rootPath = resolve33(options.projectRoot ?? process.cwd());
|
|
181234
181249
|
const root = options.normalizeForWindowsContainer === false ? rootPath : normalizeDevtoolsWorkspaceRoot(rootPath);
|
|
181235
181250
|
const uuid = getOrCreateUuid(buildDir, options);
|
|
181236
181251
|
return new Elysia3({ name: "absolute-devtools-json" }).get(ENDPOINT, () => ({
|
|
@@ -181258,13 +181273,13 @@ var exports_imageOptimizer = {};
|
|
|
181258
181273
|
__export(exports_imageOptimizer, {
|
|
181259
181274
|
imageOptimizer: () => imageOptimizer
|
|
181260
181275
|
});
|
|
181261
|
-
import { existsSync as
|
|
181262
|
-
import { resolve as
|
|
181276
|
+
import { existsSync as existsSync23 } from "fs";
|
|
181277
|
+
import { resolve as resolve34 } from "path";
|
|
181263
181278
|
import { Elysia as Elysia4 } from "elysia";
|
|
181264
181279
|
var DEFAULT_CACHE_TTL_SECONDS = 60, MS_PER_SECOND = 1000, MAX_QUALITY = 100, avifInProgress, safeResolve = (path, baseDir) => {
|
|
181265
181280
|
try {
|
|
181266
181281
|
const resolved = validateSafePath(path, baseDir);
|
|
181267
|
-
if (
|
|
181282
|
+
if (existsSync23(resolved))
|
|
181268
181283
|
return resolved;
|
|
181269
181284
|
return null;
|
|
181270
181285
|
} catch {
|
|
@@ -181272,7 +181287,7 @@ var DEFAULT_CACHE_TTL_SECONDS = 60, MS_PER_SECOND = 1000, MAX_QUALITY = 100, avi
|
|
|
181272
181287
|
}
|
|
181273
181288
|
}, resolveLocalImage = (url, buildDir) => {
|
|
181274
181289
|
const cleanPath = url.startsWith("/") ? url.slice(1) : url;
|
|
181275
|
-
return safeResolve(cleanPath, buildDir) ?? safeResolve(cleanPath,
|
|
181290
|
+
return safeResolve(cleanPath, buildDir) ?? safeResolve(cleanPath, resolve34(process.cwd()));
|
|
181276
181291
|
}, parseQueryParams = (query, allowedSizes, defaultQuality) => {
|
|
181277
181292
|
const url = typeof query["url"] === "string" ? query["url"] : undefined;
|
|
181278
181293
|
const wParam = typeof query["w"] === "string" ? query["w"] : undefined;
|
|
@@ -181911,8 +181926,8 @@ var handleHTMXPageRequest = async (pagePath) => {
|
|
|
181911
181926
|
});
|
|
181912
181927
|
};
|
|
181913
181928
|
// src/core/prepare.ts
|
|
181914
|
-
import { existsSync as
|
|
181915
|
-
import { basename as basename14, join as join24, relative as relative12, resolve as
|
|
181929
|
+
import { existsSync as existsSync24, readdirSync as readdirSync2, readFileSync as readFileSync16 } from "fs";
|
|
181930
|
+
import { basename as basename14, join as join24, relative as relative12, resolve as resolve35 } from "path";
|
|
181916
181931
|
import { Elysia as Elysia5 } from "elysia";
|
|
181917
181932
|
|
|
181918
181933
|
// src/utils/loadConfig.ts
|
|
@@ -181986,7 +182001,7 @@ var collectPrewarmFiles = async (prewarmDirs) => {
|
|
|
181986
182001
|
for (const { dir, pattern } of prewarmDirs) {
|
|
181987
182002
|
const glob = new Glob9(pattern);
|
|
181988
182003
|
const matches = [
|
|
181989
|
-
...glob.scanSync({ absolute: true, cwd:
|
|
182004
|
+
...glob.scanSync({ absolute: true, cwd: resolve35(dir) })
|
|
181990
182005
|
];
|
|
181991
182006
|
files.push(...matches);
|
|
181992
182007
|
}
|
|
@@ -182022,8 +182037,8 @@ var patchManifestIndexes = (manifest, devIndexDir, SRC_URL_PREFIX2) => {
|
|
|
182022
182037
|
const fileName = resolveDevIndexFileName(manifest[key], baseName);
|
|
182023
182038
|
if (!fileName)
|
|
182024
182039
|
continue;
|
|
182025
|
-
const srcPath =
|
|
182026
|
-
if (!
|
|
182040
|
+
const srcPath = resolve35(devIndexDir, fileName);
|
|
182041
|
+
if (!existsSync24(srcPath))
|
|
182027
182042
|
continue;
|
|
182028
182043
|
const rel = relative12(process.cwd(), srcPath).replace(/\\/g, "/");
|
|
182029
182044
|
manifest[key] = `${SRC_URL_PREFIX2}${rel}`;
|
|
@@ -182074,7 +182089,7 @@ var prepareDev = async (config, buildDir) => {
|
|
|
182074
182089
|
}
|
|
182075
182090
|
const hmrPlugin = hmr2(result.hmrState, result.manifest, moduleHandler);
|
|
182076
182091
|
const { devtoolsJson: devtoolsJson2 } = await Promise.resolve().then(() => (init_devtoolsJson(), exports_devtoolsJson));
|
|
182077
|
-
const devIndexDir =
|
|
182092
|
+
const devIndexDir = resolve35(buildDir, "_src_indexes");
|
|
182078
182093
|
patchManifestIndexes(result.manifest, devIndexDir, SRC_URL_PREFIX2);
|
|
182079
182094
|
if (result.conventions)
|
|
182080
182095
|
setConventions(result.conventions);
|
|
@@ -182102,7 +182117,7 @@ var prepareDev = async (config, buildDir) => {
|
|
|
182102
182117
|
};
|
|
182103
182118
|
var loadPrerenderMap = (prerenderDir) => {
|
|
182104
182119
|
const map = new Map;
|
|
182105
|
-
if (!
|
|
182120
|
+
if (!existsSync24(prerenderDir))
|
|
182106
182121
|
return map;
|
|
182107
182122
|
let entries;
|
|
182108
182123
|
try {
|
|
@@ -182137,7 +182152,7 @@ var prepare = async (configOrPath) => {
|
|
|
182137
182152
|
const config = await loadConfig(configOrPath);
|
|
182138
182153
|
const nodeEnv = process.env["NODE_ENV"];
|
|
182139
182154
|
const isDev3 = nodeEnv === "development";
|
|
182140
|
-
const buildDir =
|
|
182155
|
+
const buildDir = resolve35(process.env.ABSOLUTE_BUILD_DIR ?? config.buildDirectory ?? "build");
|
|
182141
182156
|
if (isDev3)
|
|
182142
182157
|
return prepareDev(config, buildDir);
|
|
182143
182158
|
const manifest = JSON.parse(readFileSync16(`${buildDir}/manifest.json`, "utf-8"));
|
|
@@ -182147,7 +182162,7 @@ var prepare = async (configOrPath) => {
|
|
|
182147
182162
|
}
|
|
182148
182163
|
setCurrentPageIslandMetadata(await loadPageIslandMetadata(config));
|
|
182149
182164
|
const conventionsPath = join24(buildDir, "conventions.json");
|
|
182150
|
-
if (
|
|
182165
|
+
if (existsSync24(conventionsPath)) {
|
|
182151
182166
|
const conventions2 = JSON.parse(readFileSync16(conventionsPath, "utf-8"));
|
|
182152
182167
|
setConventions(conventions2);
|
|
182153
182168
|
}
|
|
@@ -182201,7 +182216,7 @@ import { argv } from "process";
|
|
|
182201
182216
|
var {env: env4 } = globalThis.Bun;
|
|
182202
182217
|
|
|
182203
182218
|
// src/dev/devCert.ts
|
|
182204
|
-
import { existsSync as
|
|
182219
|
+
import { existsSync as existsSync25, mkdirSync as mkdirSync14, readFileSync as readFileSync17, rmSync as rmSync3 } from "fs";
|
|
182205
182220
|
import { join as join25 } from "path";
|
|
182206
182221
|
var CERT_DIR = join25(process.cwd(), ".absolutejs");
|
|
182207
182222
|
var CERT_PATH = join25(CERT_DIR, "cert.pem");
|
|
@@ -182209,7 +182224,7 @@ var KEY_PATH = join25(CERT_DIR, "key.pem");
|
|
|
182209
182224
|
var CERT_VALIDITY_DAYS = 365;
|
|
182210
182225
|
var devLog = (msg) => console.log(`\x1B[2m${new Date().toLocaleTimeString()}\x1B[0m \x1B[36m[dev]\x1B[0m ${msg}`);
|
|
182211
182226
|
var devWarn = (msg) => console.log(`\x1B[2m${new Date().toLocaleTimeString()}\x1B[0m \x1B[33m[dev]\x1B[0m \x1B[33m${msg}\x1B[0m`);
|
|
182212
|
-
var certFilesExist = () =>
|
|
182227
|
+
var certFilesExist = () => existsSync25(CERT_PATH) && existsSync25(KEY_PATH);
|
|
182213
182228
|
var isCertExpired = () => {
|
|
182214
182229
|
try {
|
|
182215
182230
|
const certPem = readFileSync17(CERT_PATH, "utf-8");
|
|
@@ -182530,8 +182545,8 @@ var jsonLd2 = (schema) => {
|
|
|
182530
182545
|
};
|
|
182531
182546
|
// src/utils/defineEnv.ts
|
|
182532
182547
|
var {env: bunEnv } = globalThis.Bun;
|
|
182533
|
-
import { existsSync as
|
|
182534
|
-
import { resolve as
|
|
182548
|
+
import { existsSync as existsSync26, readFileSync as readFileSync18 } from "fs";
|
|
182549
|
+
import { resolve as resolve36 } from "path";
|
|
182535
182550
|
|
|
182536
182551
|
// node_modules/@sinclair/typebox/build/esm/type/guard/value.mjs
|
|
182537
182552
|
var exports_value = {};
|
|
@@ -188566,8 +188581,8 @@ ${lines.join(`
|
|
|
188566
188581
|
};
|
|
188567
188582
|
var checkEnvFileSecurity = (properties) => {
|
|
188568
188583
|
const cwd2 = process.cwd();
|
|
188569
|
-
const envPath =
|
|
188570
|
-
if (!
|
|
188584
|
+
const envPath = resolve36(cwd2, ".env");
|
|
188585
|
+
if (!existsSync26(envPath))
|
|
188571
188586
|
return;
|
|
188572
188587
|
const sensitiveKeys = Object.keys(properties).filter(isSensitive);
|
|
188573
188588
|
if (sensitiveKeys.length === 0)
|
|
@@ -188576,8 +188591,8 @@ var checkEnvFileSecurity = (properties) => {
|
|
|
188576
188591
|
const presentKeys = sensitiveKeys.filter((key) => envContent.includes(`${key}=`));
|
|
188577
188592
|
if (presentKeys.length === 0)
|
|
188578
188593
|
return;
|
|
188579
|
-
const gitignorePath =
|
|
188580
|
-
if (
|
|
188594
|
+
const gitignorePath = resolve36(cwd2, ".gitignore");
|
|
188595
|
+
if (existsSync26(gitignorePath)) {
|
|
188581
188596
|
const gitignore = readFileSync18(gitignorePath, "utf-8");
|
|
188582
188597
|
if (gitignore.split(`
|
|
188583
188598
|
`).some((line) => line.trim() === ".env"))
|
|
@@ -188785,5 +188800,5 @@ export {
|
|
|
188785
188800
|
ANGULAR_INIT_TIMEOUT_MS
|
|
188786
188801
|
};
|
|
188787
188802
|
|
|
188788
|
-
//# debugId=
|
|
188803
|
+
//# debugId=5C6C4C3C62221DC164756E2164756E21
|
|
188789
188804
|
//# sourceMappingURL=index.js.map
|