@absolutejs/absolute 0.19.0-beta.21 → 0.19.0-beta.22
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 +155 -2
- package/dist/build.js.map +5 -4
- package/dist/index.js +162 -8
- package/dist/index.js.map +6 -5
- package/dist/src/build/buildDepVendor.d.ts +2 -0
- package/native/packages/darwin-arm64/fast_ops.dylib +0 -0
- package/native/packages/darwin-arm64/package.json +1 -1
- package/native/packages/darwin-x64/fast_ops.dylib +0 -0
- package/native/packages/darwin-x64/package.json +1 -1
- package/native/packages/linux-arm64/package.json +1 -1
- package/native/packages/linux-x64/fast_ops.so +0 -0
- package/native/packages/linux-x64/package.json +1 -1
- package/package.json +5 -5
- package/types/globals.d.ts +1 -0
package/dist/index.js
CHANGED
|
@@ -203730,6 +203730,140 @@ var init_rebuildTrigger = __esm(() => {
|
|
|
203730
203730
|
init_pageHandler();
|
|
203731
203731
|
});
|
|
203732
203732
|
|
|
203733
|
+
// src/build/buildDepVendor.ts
|
|
203734
|
+
var exports_buildDepVendor = {};
|
|
203735
|
+
__export(exports_buildDepVendor, {
|
|
203736
|
+
computeDepVendorPaths: () => computeDepVendorPaths,
|
|
203737
|
+
buildDepVendor: () => buildDepVendor
|
|
203738
|
+
});
|
|
203739
|
+
import { mkdirSync as mkdirSync7 } from "fs";
|
|
203740
|
+
import { join as join14 } from "path";
|
|
203741
|
+
import { rm as rm7 } from "fs/promises";
|
|
203742
|
+
var {build: bunBuild5, Glob: Glob6 } = globalThis.Bun;
|
|
203743
|
+
var toSafeFileName3 = (specifier) => specifier.replace(/\//g, "_").replace(/@/g, "").replace(/-/g, "_"), isResolvable2 = (specifier) => {
|
|
203744
|
+
try {
|
|
203745
|
+
__require.resolve(specifier);
|
|
203746
|
+
return true;
|
|
203747
|
+
} catch {
|
|
203748
|
+
return false;
|
|
203749
|
+
}
|
|
203750
|
+
}, isBareSpecifier = (spec) => !spec.startsWith(".") && !spec.startsWith("/") && !spec.startsWith("@src/"), FRAMEWORK_SPECIFIERS, scanBareImports = async (directories) => {
|
|
203751
|
+
const specifiers = new Set;
|
|
203752
|
+
const transpiler3 = new Bun.Transpiler({ loader: "tsx" });
|
|
203753
|
+
for (const dir of directories) {
|
|
203754
|
+
const glob = new Glob6("**/*.{ts,tsx,js,jsx}");
|
|
203755
|
+
try {
|
|
203756
|
+
for await (const file4 of glob.scan({
|
|
203757
|
+
absolute: true,
|
|
203758
|
+
cwd: dir
|
|
203759
|
+
})) {
|
|
203760
|
+
if (file4.includes("node_modules"))
|
|
203761
|
+
continue;
|
|
203762
|
+
if (file4.includes("/build/"))
|
|
203763
|
+
continue;
|
|
203764
|
+
if (file4.includes("/dist/"))
|
|
203765
|
+
continue;
|
|
203766
|
+
if (file4.includes("/indexes/"))
|
|
203767
|
+
continue;
|
|
203768
|
+
try {
|
|
203769
|
+
const content = await Bun.file(file4).text();
|
|
203770
|
+
const imports = transpiler3.scanImports(content);
|
|
203771
|
+
for (const imp of imports) {
|
|
203772
|
+
if (isBareSpecifier(imp.path) && !FRAMEWORK_SPECIFIERS.has(imp.path)) {
|
|
203773
|
+
specifiers.add(imp.path);
|
|
203774
|
+
}
|
|
203775
|
+
}
|
|
203776
|
+
} catch {}
|
|
203777
|
+
}
|
|
203778
|
+
} catch {}
|
|
203779
|
+
}
|
|
203780
|
+
return Array.from(specifiers).filter(isResolvable2);
|
|
203781
|
+
}, generateEntrySource2 = async (specifier) => {
|
|
203782
|
+
try {
|
|
203783
|
+
const mod = await import(specifier);
|
|
203784
|
+
const exportNames = Object.keys(mod).filter((key) => key !== "default" && key !== "__esModule");
|
|
203785
|
+
const lines = [];
|
|
203786
|
+
if (exportNames.length > 0) {
|
|
203787
|
+
lines.push(`export { ${exportNames.join(", ")} } from '${specifier}';`);
|
|
203788
|
+
}
|
|
203789
|
+
if ("default" in mod) {
|
|
203790
|
+
lines.push(`export { default } from '${specifier}';`);
|
|
203791
|
+
}
|
|
203792
|
+
return lines.join(`
|
|
203793
|
+
`) + `
|
|
203794
|
+
`;
|
|
203795
|
+
} catch {
|
|
203796
|
+
return `export * from '${specifier}';
|
|
203797
|
+
`;
|
|
203798
|
+
}
|
|
203799
|
+
}, computeDepVendorPaths = async (directories) => {
|
|
203800
|
+
const specifiers = await scanBareImports(directories);
|
|
203801
|
+
const paths = {};
|
|
203802
|
+
for (const specifier of specifiers) {
|
|
203803
|
+
paths[specifier] = `/vendor/${toSafeFileName3(specifier)}.js`;
|
|
203804
|
+
}
|
|
203805
|
+
return paths;
|
|
203806
|
+
}, buildDepVendor = async (buildDir, directories) => {
|
|
203807
|
+
const specifiers = await scanBareImports(directories);
|
|
203808
|
+
if (specifiers.length === 0)
|
|
203809
|
+
return {};
|
|
203810
|
+
const vendorDir = join14(buildDir, "vendor");
|
|
203811
|
+
mkdirSync7(vendorDir, { recursive: true });
|
|
203812
|
+
const tmpDir = join14(buildDir, "_dep_vendor_tmp");
|
|
203813
|
+
mkdirSync7(tmpDir, { recursive: true });
|
|
203814
|
+
const entrypoints = await Promise.all(specifiers.map(async (specifier) => {
|
|
203815
|
+
const safeName = toSafeFileName3(specifier);
|
|
203816
|
+
const entryPath = join14(tmpDir, `${safeName}.ts`);
|
|
203817
|
+
const source = await generateEntrySource2(specifier);
|
|
203818
|
+
await Bun.write(entryPath, source);
|
|
203819
|
+
return entryPath;
|
|
203820
|
+
}));
|
|
203821
|
+
const result = await bunBuild5({
|
|
203822
|
+
entrypoints,
|
|
203823
|
+
format: "esm",
|
|
203824
|
+
minify: false,
|
|
203825
|
+
naming: "[name].[ext]",
|
|
203826
|
+
outdir: vendorDir,
|
|
203827
|
+
splitting: true,
|
|
203828
|
+
target: "browser",
|
|
203829
|
+
throw: false
|
|
203830
|
+
});
|
|
203831
|
+
await rm7(tmpDir, { force: true, recursive: true });
|
|
203832
|
+
if (!result.success) {
|
|
203833
|
+
console.warn("\u26A0\uFE0F Dependency vendor build had errors:", result.logs);
|
|
203834
|
+
}
|
|
203835
|
+
const paths = {};
|
|
203836
|
+
for (const specifier of specifiers) {
|
|
203837
|
+
paths[specifier] = `/vendor/${toSafeFileName3(specifier)}.js`;
|
|
203838
|
+
}
|
|
203839
|
+
return paths;
|
|
203840
|
+
};
|
|
203841
|
+
var init_buildDepVendor = __esm(() => {
|
|
203842
|
+
FRAMEWORK_SPECIFIERS = new Set([
|
|
203843
|
+
"react",
|
|
203844
|
+
"react-dom",
|
|
203845
|
+
"react-dom/client",
|
|
203846
|
+
"react-dom/server",
|
|
203847
|
+
"react/jsx-runtime",
|
|
203848
|
+
"react/jsx-dev-runtime",
|
|
203849
|
+
"react-refresh/runtime",
|
|
203850
|
+
"svelte",
|
|
203851
|
+
"svelte/internal",
|
|
203852
|
+
"svelte/internal/client",
|
|
203853
|
+
"svelte/server",
|
|
203854
|
+
"svelte/compiler",
|
|
203855
|
+
"vue",
|
|
203856
|
+
"vue/server-renderer",
|
|
203857
|
+
"@vue/compiler-sfc",
|
|
203858
|
+
"@angular/core",
|
|
203859
|
+
"@angular/common",
|
|
203860
|
+
"@angular/compiler",
|
|
203861
|
+
"@angular/platform-browser",
|
|
203862
|
+
"@angular/platform-server",
|
|
203863
|
+
"@angular/ssr"
|
|
203864
|
+
]);
|
|
203865
|
+
});
|
|
203866
|
+
|
|
203733
203867
|
// src/core/devBuild.ts
|
|
203734
203868
|
var exports_devBuild = {};
|
|
203735
203869
|
__export(exports_devBuild, {
|
|
@@ -203911,7 +204045,26 @@ var FRAMEWORK_DIR_KEYS, parseDirectoryConfig = (source) => {
|
|
|
203911
204045
|
await loadVendorFiles(state.assetStore, vendorDir, "angular");
|
|
203912
204046
|
return true;
|
|
203913
204047
|
}) : undefined;
|
|
203914
|
-
await Promise.
|
|
204048
|
+
const { buildDepVendor: buildDepVendor2 } = await Promise.resolve().then(() => (init_buildDepVendor(), exports_buildDepVendor));
|
|
204049
|
+
const sourceDirs = [
|
|
204050
|
+
config.reactDirectory,
|
|
204051
|
+
config.svelteDirectory,
|
|
204052
|
+
config.vueDirectory,
|
|
204053
|
+
config.angularDirectory,
|
|
204054
|
+
config.htmlDirectory,
|
|
204055
|
+
config.htmxDirectory
|
|
204056
|
+
].filter((dir) => Boolean(dir));
|
|
204057
|
+
const buildDepVendorTask = buildDepVendor2(state.resolvedPaths.buildDir, sourceDirs).then(async (depPaths) => {
|
|
204058
|
+
const vendorDir = resolve21(state.resolvedPaths.buildDir, "vendor");
|
|
204059
|
+
await loadVendorFiles(state.assetStore, vendorDir, "vendor");
|
|
204060
|
+
globalThis.__depVendorPaths = depPaths;
|
|
204061
|
+
return true;
|
|
204062
|
+
});
|
|
204063
|
+
await Promise.all([
|
|
204064
|
+
buildReactVendorTask,
|
|
204065
|
+
buildAngularVendorTask,
|
|
204066
|
+
buildDepVendorTask
|
|
204067
|
+
]);
|
|
203915
204068
|
state.manifest = manifest;
|
|
203916
204069
|
startFileWatching(state, config, (filePath) => {
|
|
203917
204070
|
queueFileChange(state, filePath, config, (newBuildResult) => {
|
|
@@ -204104,7 +204257,7 @@ var handleHTMLPageRequest = (pagePath) => file(pagePath);
|
|
|
204104
204257
|
var handleHTMXPageRequest = (pagePath) => file(pagePath);
|
|
204105
204258
|
// src/core/prepare.ts
|
|
204106
204259
|
import { readFileSync as readFileSync10 } from "fs";
|
|
204107
|
-
import { resolve as resolve22 } from "path";
|
|
204260
|
+
import { relative as relative8, resolve as resolve22 } from "path";
|
|
204108
204261
|
|
|
204109
204262
|
// src/utils/loadConfig.ts
|
|
204110
204263
|
import { resolve } from "path";
|
|
@@ -204132,9 +204285,11 @@ var prepare = async (configOrPath) => {
|
|
|
204132
204285
|
const { staticPlugin: staticPlugin2 } = await import("@elysiajs/static");
|
|
204133
204286
|
const { createModuleServer: createModuleServer2 } = await Promise.resolve().then(() => (init_moduleServer(), exports_moduleServer));
|
|
204134
204287
|
const { getDevVendorPaths: getDevVendorPaths2, getAngularVendorPaths: getAngularVendorPaths2 } = await Promise.resolve().then(() => exports_devVendorPaths);
|
|
204288
|
+
const depVendorPaths = globalThis.__depVendorPaths ?? {};
|
|
204135
204289
|
const allVendorPaths = {
|
|
204136
204290
|
...getDevVendorPaths2() ?? {},
|
|
204137
|
-
...getAngularVendorPaths2() ?? {}
|
|
204291
|
+
...getAngularVendorPaths2() ?? {},
|
|
204292
|
+
...depVendorPaths
|
|
204138
204293
|
};
|
|
204139
204294
|
const moduleHandler = createModuleServer2({
|
|
204140
204295
|
projectRoot: process.cwd(),
|
|
@@ -204144,13 +204299,12 @@ var prepare = async (configOrPath) => {
|
|
|
204144
204299
|
const { SRC_URL_PREFIX: SRC_URL_PREFIX2 } = await Promise.resolve().then(() => (init_moduleServer(), exports_moduleServer));
|
|
204145
204300
|
const reactDir = config.reactDirectory;
|
|
204146
204301
|
if (reactDir) {
|
|
204147
|
-
const { relative: relPath } = await import("path");
|
|
204148
204302
|
const indexesDir = resolve22(reactDir, "indexes");
|
|
204149
|
-
for (const
|
|
204150
|
-
if (key.endsWith("Index") && typeof
|
|
204303
|
+
for (const key of Object.keys(result.manifest)) {
|
|
204304
|
+
if (key.endsWith("Index") && typeof result.manifest[key] === "string" && result.manifest[key].includes("/indexes/")) {
|
|
204151
204305
|
const fileName = key.replace(/Index$/, "") + ".tsx";
|
|
204152
204306
|
const srcPath = resolve22(indexesDir, fileName);
|
|
204153
|
-
const rel =
|
|
204307
|
+
const rel = relative8(process.cwd(), srcPath).replace(/\\/g, "/");
|
|
204154
204308
|
result.manifest[key] = `${SRC_URL_PREFIX2}${rel}`;
|
|
204155
204309
|
}
|
|
204156
204310
|
}
|
|
@@ -204321,5 +204475,5 @@ export {
|
|
|
204321
204475
|
ANGULAR_INIT_TIMEOUT_MS
|
|
204322
204476
|
};
|
|
204323
204477
|
|
|
204324
|
-
//# debugId=
|
|
204478
|
+
//# debugId=20364D147313555D64756E2164756E21
|
|
204325
204479
|
//# sourceMappingURL=index.js.map
|