@absolutejs/absolute 0.19.0-beta.731 → 0.19.0-beta.733
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 +90 -59
- package/dist/build.js.map +8 -7
- package/dist/index.js +90 -59
- package/dist/index.js.map +8 -7
- package/dist/src/build/detectDefaultExport.d.ts +10 -0
- package/dist/src/build/rewriteImports.d.ts +9 -0
- package/package.json +1 -1
package/dist/build.js
CHANGED
|
@@ -44468,6 +44468,25 @@ var init_buildReactVendor = __esm(() => {
|
|
|
44468
44468
|
];
|
|
44469
44469
|
});
|
|
44470
44470
|
|
|
44471
|
+
// src/build/detectDefaultExport.ts
|
|
44472
|
+
var hasDefaultExport = async (specifier) => {
|
|
44473
|
+
try {
|
|
44474
|
+
const resolved = Bun.resolveSync(specifier, process.cwd());
|
|
44475
|
+
const content = await Bun.file(resolved).text();
|
|
44476
|
+
if (/\bexport\s+default\b/.test(content))
|
|
44477
|
+
return true;
|
|
44478
|
+
if (/\bexport\s*\{\s*[^}]*\bdefault\b[^}]*\}/.test(content))
|
|
44479
|
+
return true;
|
|
44480
|
+
if (/\bmodule\.exports\s*=/.test(content))
|
|
44481
|
+
return true;
|
|
44482
|
+
if (/\bexports\.default\s*=/.test(content))
|
|
44483
|
+
return true;
|
|
44484
|
+
return false;
|
|
44485
|
+
} catch {
|
|
44486
|
+
return false;
|
|
44487
|
+
}
|
|
44488
|
+
};
|
|
44489
|
+
|
|
44471
44490
|
// src/build/buildAngularVendor.ts
|
|
44472
44491
|
var exports_buildAngularVendor = {};
|
|
44473
44492
|
__export(exports_buildAngularVendor, {
|
|
@@ -44577,8 +44596,12 @@ var REQUIRED_ANGULAR_SPECIFIERS, SERVER_ONLY_ANGULAR_SPECIFIERS, SCAN_SKIP_DIRS,
|
|
|
44577
44596
|
const entrypoints = await Promise.all(specifiers.map(async (specifier) => {
|
|
44578
44597
|
const safeName = toSafeFileName2(specifier);
|
|
44579
44598
|
const entryPath = join17(tmpDir, `${safeName}.ts`);
|
|
44580
|
-
|
|
44581
|
-
`
|
|
44599
|
+
const includeDefault = await hasDefaultExport(specifier);
|
|
44600
|
+
const source = includeDefault ? `export * from '${specifier}';
|
|
44601
|
+
export { default } from '${specifier}';
|
|
44602
|
+
` : `export * from '${specifier}';
|
|
44603
|
+
`;
|
|
44604
|
+
await Bun.write(entryPath, source);
|
|
44582
44605
|
return entryPath;
|
|
44583
44606
|
}));
|
|
44584
44607
|
const result = await bunBuild4({
|
|
@@ -44763,6 +44786,7 @@ var init_buildSvelteVendor = __esm(() => {
|
|
|
44763
44786
|
// src/build/rewriteImports.ts
|
|
44764
44787
|
var exports_rewriteImports = {};
|
|
44765
44788
|
__export(exports_rewriteImports, {
|
|
44789
|
+
rewriteVendorDirectories: () => rewriteVendorDirectories,
|
|
44766
44790
|
rewriteImports: () => rewriteImports
|
|
44767
44791
|
});
|
|
44768
44792
|
var escapeRegex2 = (str) => str.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"), jsRewriteImports = (content, replacements) => {
|
|
@@ -44790,6 +44814,19 @@ var escapeRegex2 = (str) => str.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"), jsRewrit
|
|
|
44790
44814
|
await Bun.write(filePath, content);
|
|
44791
44815
|
}
|
|
44792
44816
|
}));
|
|
44817
|
+
}, rewriteVendorDirectories = async (vendorDirs, vendorPaths) => {
|
|
44818
|
+
if (Object.keys(vendorPaths).length === 0)
|
|
44819
|
+
return;
|
|
44820
|
+
const { readdirSync } = await import("fs");
|
|
44821
|
+
const { join: join20 } = await import("path");
|
|
44822
|
+
const allFiles = [];
|
|
44823
|
+
for (const dir of vendorDirs) {
|
|
44824
|
+
try {
|
|
44825
|
+
const files = readdirSync(dir).filter((f) => f.endsWith(".js")).map((f) => join20(dir, f));
|
|
44826
|
+
allFiles.push(...files);
|
|
44827
|
+
} catch {}
|
|
44828
|
+
}
|
|
44829
|
+
await rewriteImports(allFiles, vendorPaths);
|
|
44793
44830
|
};
|
|
44794
44831
|
var init_rewriteImports = __esm(() => {
|
|
44795
44832
|
init_nativeRewrite();
|
|
@@ -49351,24 +49388,12 @@ var toSafeFileName5 = (specifier) => specifier.replace(/\//g, "_").replace(/@/g,
|
|
|
49351
49388
|
dep: Array.from(dep).filter(isResolvable4),
|
|
49352
49389
|
framework: Array.from(framework).filter(isResolvable4)
|
|
49353
49390
|
};
|
|
49354
|
-
}, generateEntrySource2 = (specifier) =>
|
|
49355
|
-
|
|
49356
|
-
|
|
49357
|
-
const
|
|
49358
|
-
|
|
49359
|
-
|
|
49360
|
-
const escaped = specifier.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
49361
|
-
const re2 = new RegExp(`(from\\s*["'])${escaped}(["'])`, "g");
|
|
49362
|
-
return acc.replace(re2, `$1${webPath}$2`);
|
|
49363
|
-
}, content);
|
|
49364
|
-
const files = readdirSync2(vendorDir).filter((f) => f.endsWith(".js"));
|
|
49365
|
-
for (const file3 of files) {
|
|
49366
|
-
const filePath = join22(vendorDir, file3);
|
|
49367
|
-
const original = readFileSync15(filePath, "utf-8");
|
|
49368
|
-
const rewritten = rewriteContent(original);
|
|
49369
|
-
if (rewritten !== original)
|
|
49370
|
-
writeFileSync8(filePath, rewritten);
|
|
49371
|
-
}
|
|
49391
|
+
}, generateEntrySource2 = async (specifier) => {
|
|
49392
|
+
const namedReexport = `export * from '${specifier}';
|
|
49393
|
+
`;
|
|
49394
|
+
const includeDefault = await hasDefaultExport(specifier);
|
|
49395
|
+
return includeDefault ? `${namedReexport}export { default } from '${specifier}';
|
|
49396
|
+
` : namedReexport;
|
|
49372
49397
|
}, collectTransitiveImports = async (specs, alreadyVendored, alreadyScanned) => {
|
|
49373
49398
|
const { readFileSync: readFileSync15 } = await import("fs");
|
|
49374
49399
|
const transpiler4 = new Bun.Transpiler({ loader: "js" });
|
|
@@ -49457,8 +49482,6 @@ var toSafeFileName5 = (specifier) => specifier.replace(/\//g, "_").replace(/@/g,
|
|
|
49457
49482
|
console.warn("\u26A0\uFE0F Dependency vendor build had errors:", result.logs);
|
|
49458
49483
|
}
|
|
49459
49484
|
await rm9(tmpDir, { force: true, recursive: true });
|
|
49460
|
-
if (success)
|
|
49461
|
-
await rewriteVendorFiles(vendorDir);
|
|
49462
49485
|
const paths = {};
|
|
49463
49486
|
for (const specifier of allSpecs) {
|
|
49464
49487
|
paths[specifier] = `/vendor/${toSafeFileName5(specifier)}.js`;
|
|
@@ -49749,46 +49772,54 @@ var FRAMEWORK_DIR_KEYS, collectDepVendorSourceDirs = (config) => {
|
|
|
49749
49772
|
cleanStaleAssets(state.assetStore, manifest, state.resolvedPaths.buildDir);
|
|
49750
49773
|
recordStep("populate asset store", stepStartedAt);
|
|
49751
49774
|
stepStartedAt = performance.now();
|
|
49752
|
-
const
|
|
49753
|
-
|
|
49754
|
-
|
|
49755
|
-
|
|
49756
|
-
|
|
49757
|
-
}
|
|
49758
|
-
return true;
|
|
49759
|
-
}) : undefined;
|
|
49760
|
-
const buildAngularVendorTask = config.angularDirectory ? buildAngularVendor(state.resolvedPaths.buildDir, sourceDirs).then(async (specs) => {
|
|
49761
|
-
const vendorDir = resolve32(state.resolvedPaths.buildDir, "angular", "vendor");
|
|
49762
|
-
await loadVendorFiles(state.assetStore, vendorDir, "angular");
|
|
49763
|
-
globalThis.__angularVendorSpecifiers = specs;
|
|
49764
|
-
return true;
|
|
49765
|
-
}) : undefined;
|
|
49766
|
-
const buildSvelteVendorTask = config.svelteDirectory ? buildSvelteVendor(state.resolvedPaths.buildDir).then(async () => {
|
|
49767
|
-
const vendorDir = resolve32(state.resolvedPaths.buildDir, "svelte", "vendor");
|
|
49768
|
-
await loadVendorFiles(state.assetStore, vendorDir, "svelte");
|
|
49769
|
-
return true;
|
|
49770
|
-
}) : undefined;
|
|
49771
|
-
const buildVueVendorTask = config.vueDirectory ? buildVueVendor(state.resolvedPaths.buildDir).then(async () => {
|
|
49772
|
-
const vendorDir = resolve32(state.resolvedPaths.buildDir, "vue", "vendor");
|
|
49773
|
-
await loadVendorFiles(state.assetStore, vendorDir, "vue");
|
|
49774
|
-
return true;
|
|
49775
|
-
}) : undefined;
|
|
49775
|
+
const reactVendorDir = resolve32(state.resolvedPaths.buildDir, "react", "vendor");
|
|
49776
|
+
const angularVendorDir = resolve32(state.resolvedPaths.buildDir, "angular", "vendor");
|
|
49777
|
+
const svelteVendorDir = resolve32(state.resolvedPaths.buildDir, "svelte", "vendor");
|
|
49778
|
+
const vueVendorDir = resolve32(state.resolvedPaths.buildDir, "vue", "vendor");
|
|
49779
|
+
const depVendorDir = resolve32(state.resolvedPaths.buildDir, "vendor");
|
|
49776
49780
|
const { buildDepVendor: buildDepVendor2 } = await Promise.resolve().then(() => (init_buildDepVendor(), exports_buildDepVendor));
|
|
49777
|
-
const
|
|
49778
|
-
|
|
49779
|
-
|
|
49780
|
-
|
|
49781
|
-
|
|
49782
|
-
|
|
49783
|
-
await Promise.all([
|
|
49784
|
-
buildReactVendorTask,
|
|
49785
|
-
buildAngularVendorTask,
|
|
49786
|
-
buildSvelteVendorTask,
|
|
49787
|
-
buildVueVendorTask,
|
|
49788
|
-
buildDepVendorTask
|
|
49781
|
+
const [, angularSpecs, , , depPaths] = await Promise.all([
|
|
49782
|
+
config.reactDirectory ? buildReactVendor(state.resolvedPaths.buildDir) : Promise.resolve(undefined),
|
|
49783
|
+
config.angularDirectory ? buildAngularVendor(state.resolvedPaths.buildDir, sourceDirs) : Promise.resolve(undefined),
|
|
49784
|
+
config.svelteDirectory ? buildSvelteVendor(state.resolvedPaths.buildDir) : Promise.resolve(undefined),
|
|
49785
|
+
config.vueDirectory ? buildVueVendor(state.resolvedPaths.buildDir) : Promise.resolve(undefined),
|
|
49786
|
+
buildDepVendor2(state.resolvedPaths.buildDir, sourceDirs)
|
|
49789
49787
|
]);
|
|
49788
|
+
if (angularSpecs)
|
|
49789
|
+
globalThis.__angularVendorSpecifiers = angularSpecs;
|
|
49790
|
+
globalThis.__depVendorPaths = depPaths;
|
|
49790
49791
|
recordStep("build vendor bundles", stepStartedAt);
|
|
49791
49792
|
stepStartedAt = performance.now();
|
|
49793
|
+
const combinedVendorPaths = {
|
|
49794
|
+
...getDevVendorPaths() ?? {},
|
|
49795
|
+
...getAngularVendorPaths() ?? {},
|
|
49796
|
+
...getSvelteVendorPaths() ?? {},
|
|
49797
|
+
...getVueVendorPaths() ?? {},
|
|
49798
|
+
...depPaths
|
|
49799
|
+
};
|
|
49800
|
+
const activeVendorDirs = [
|
|
49801
|
+
config.reactDirectory ? reactVendorDir : null,
|
|
49802
|
+
config.angularDirectory ? angularVendorDir : null,
|
|
49803
|
+
config.svelteDirectory ? svelteVendorDir : null,
|
|
49804
|
+
config.vueDirectory ? vueVendorDir : null,
|
|
49805
|
+
depVendorDir
|
|
49806
|
+
].filter((d) => d !== null);
|
|
49807
|
+
const { rewriteVendorDirectories: rewriteVendorDirectories2 } = await Promise.resolve().then(() => (init_rewriteImports(), exports_rewriteImports));
|
|
49808
|
+
await rewriteVendorDirectories2(activeVendorDirs, combinedVendorPaths);
|
|
49809
|
+
recordStep("rewrite vendor cross-references", stepStartedAt);
|
|
49810
|
+
stepStartedAt = performance.now();
|
|
49811
|
+
await Promise.all([
|
|
49812
|
+
config.reactDirectory ? loadVendorFiles(state.assetStore, reactVendorDir, "react") : Promise.resolve(),
|
|
49813
|
+
config.angularDirectory ? loadVendorFiles(state.assetStore, angularVendorDir, "angular") : Promise.resolve(),
|
|
49814
|
+
config.svelteDirectory ? loadVendorFiles(state.assetStore, svelteVendorDir, "svelte") : Promise.resolve(),
|
|
49815
|
+
config.vueDirectory ? loadVendorFiles(state.assetStore, vueVendorDir, "vue") : Promise.resolve(),
|
|
49816
|
+
loadVendorFiles(state.assetStore, depVendorDir, "vendor")
|
|
49817
|
+
]);
|
|
49818
|
+
if (config.reactDirectory && !globalThis.__reactModuleRef) {
|
|
49819
|
+
globalThis.__reactModuleRef = await import("react");
|
|
49820
|
+
}
|
|
49821
|
+
recordStep("load vendor files", stepStartedAt);
|
|
49822
|
+
stepStartedAt = performance.now();
|
|
49792
49823
|
const { warmCompilers: warmCompilers2 } = await Promise.resolve().then(() => (init_moduleServer(), exports_moduleServer));
|
|
49793
49824
|
await warmCompilers2({
|
|
49794
49825
|
svelte: Boolean(config.svelteDirectory),
|
|
@@ -49848,5 +49879,5 @@ export {
|
|
|
49848
49879
|
build
|
|
49849
49880
|
};
|
|
49850
49881
|
|
|
49851
|
-
//# debugId=
|
|
49882
|
+
//# debugId=326DF99081F5089B64756E2164756E21
|
|
49852
49883
|
//# sourceMappingURL=build.js.map
|