@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/index.js CHANGED
@@ -44660,6 +44660,25 @@ var init_buildReactVendor = __esm(() => {
44660
44660
  ];
44661
44661
  });
44662
44662
 
44663
+ // src/build/detectDefaultExport.ts
44664
+ var hasDefaultExport = async (specifier) => {
44665
+ try {
44666
+ const resolved = Bun.resolveSync(specifier, process.cwd());
44667
+ const content = await Bun.file(resolved).text();
44668
+ if (/\bexport\s+default\b/.test(content))
44669
+ return true;
44670
+ if (/\bexport\s*\{\s*[^}]*\bdefault\b[^}]*\}/.test(content))
44671
+ return true;
44672
+ if (/\bmodule\.exports\s*=/.test(content))
44673
+ return true;
44674
+ if (/\bexports\.default\s*=/.test(content))
44675
+ return true;
44676
+ return false;
44677
+ } catch {
44678
+ return false;
44679
+ }
44680
+ };
44681
+
44663
44682
  // src/build/buildAngularVendor.ts
44664
44683
  var exports_buildAngularVendor = {};
44665
44684
  __export(exports_buildAngularVendor, {
@@ -44769,8 +44788,12 @@ var REQUIRED_ANGULAR_SPECIFIERS, SERVER_ONLY_ANGULAR_SPECIFIERS, SCAN_SKIP_DIRS,
44769
44788
  const entrypoints = await Promise.all(specifiers.map(async (specifier) => {
44770
44789
  const safeName = toSafeFileName2(specifier);
44771
44790
  const entryPath = join17(tmpDir, `${safeName}.ts`);
44772
- await Bun.write(entryPath, `export * from '${specifier}';
44773
- `);
44791
+ const includeDefault = await hasDefaultExport(specifier);
44792
+ const source = includeDefault ? `export * from '${specifier}';
44793
+ export { default } from '${specifier}';
44794
+ ` : `export * from '${specifier}';
44795
+ `;
44796
+ await Bun.write(entryPath, source);
44774
44797
  return entryPath;
44775
44798
  }));
44776
44799
  const result = await bunBuild4({
@@ -44955,6 +44978,7 @@ var init_buildSvelteVendor = __esm(() => {
44955
44978
  // src/build/rewriteImports.ts
44956
44979
  var exports_rewriteImports = {};
44957
44980
  __export(exports_rewriteImports, {
44981
+ rewriteVendorDirectories: () => rewriteVendorDirectories,
44958
44982
  rewriteImports: () => rewriteImports
44959
44983
  });
44960
44984
  var escapeRegex2 = (str) => str.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"), jsRewriteImports = (content, replacements) => {
@@ -44982,6 +45006,19 @@ var escapeRegex2 = (str) => str.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"), jsRewrit
44982
45006
  await Bun.write(filePath, content);
44983
45007
  }
44984
45008
  }));
45009
+ }, rewriteVendorDirectories = async (vendorDirs, vendorPaths) => {
45010
+ if (Object.keys(vendorPaths).length === 0)
45011
+ return;
45012
+ const { readdirSync } = await import("fs");
45013
+ const { join: join20 } = await import("path");
45014
+ const allFiles = [];
45015
+ for (const dir of vendorDirs) {
45016
+ try {
45017
+ const files = readdirSync(dir).filter((f) => f.endsWith(".js")).map((f) => join20(dir, f));
45018
+ allFiles.push(...files);
45019
+ } catch {}
45020
+ }
45021
+ await rewriteImports(allFiles, vendorPaths);
44985
45022
  };
44986
45023
  var init_rewriteImports = __esm(() => {
44987
45024
  init_nativeRewrite();
@@ -49428,24 +49465,12 @@ var toSafeFileName5 = (specifier) => specifier.replace(/\//g, "_").replace(/@/g,
49428
49465
  dep: Array.from(dep).filter(isResolvable4),
49429
49466
  framework: Array.from(framework).filter(isResolvable4)
49430
49467
  };
49431
- }, generateEntrySource2 = (specifier) => `export * from '${specifier}';
49432
- `, rewriteVendorFiles = async (vendorDir) => {
49433
- const { readdirSync: readdirSync2, readFileSync: readFileSync15, writeFileSync: writeFileSync8 } = await import("fs");
49434
- const { computeVendorPaths: computeVendorPaths2 } = await Promise.resolve().then(() => (init_buildReactVendor(), exports_buildReactVendor));
49435
- const reactPaths = Object.entries(computeVendorPaths2());
49436
- const rewriteContent = (content) => reactPaths.reduce((acc, [specifier, webPath]) => {
49437
- const escaped = specifier.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
49438
- const re2 = new RegExp(`(from\\s*["'])${escaped}(["'])`, "g");
49439
- return acc.replace(re2, `$1${webPath}$2`);
49440
- }, content);
49441
- const files = readdirSync2(vendorDir).filter((f) => f.endsWith(".js"));
49442
- for (const file4 of files) {
49443
- const filePath = join22(vendorDir, file4);
49444
- const original = readFileSync15(filePath, "utf-8");
49445
- const rewritten = rewriteContent(original);
49446
- if (rewritten !== original)
49447
- writeFileSync8(filePath, rewritten);
49448
- }
49468
+ }, generateEntrySource2 = async (specifier) => {
49469
+ const namedReexport = `export * from '${specifier}';
49470
+ `;
49471
+ const includeDefault = await hasDefaultExport(specifier);
49472
+ return includeDefault ? `${namedReexport}export { default } from '${specifier}';
49473
+ ` : namedReexport;
49449
49474
  }, collectTransitiveImports = async (specs, alreadyVendored, alreadyScanned) => {
49450
49475
  const { readFileSync: readFileSync15 } = await import("fs");
49451
49476
  const transpiler4 = new Bun.Transpiler({ loader: "js" });
@@ -49534,8 +49559,6 @@ var toSafeFileName5 = (specifier) => specifier.replace(/\//g, "_").replace(/@/g,
49534
49559
  console.warn("\u26A0\uFE0F Dependency vendor build had errors:", result.logs);
49535
49560
  }
49536
49561
  await rm9(tmpDir, { force: true, recursive: true });
49537
- if (success)
49538
- await rewriteVendorFiles(vendorDir);
49539
49562
  const paths = {};
49540
49563
  for (const specifier of allSpecs) {
49541
49564
  paths[specifier] = `/vendor/${toSafeFileName5(specifier)}.js`;
@@ -49826,46 +49849,54 @@ var FRAMEWORK_DIR_KEYS, collectDepVendorSourceDirs = (config) => {
49826
49849
  cleanStaleAssets(state.assetStore, manifest, state.resolvedPaths.buildDir);
49827
49850
  recordStep("populate asset store", stepStartedAt);
49828
49851
  stepStartedAt = performance.now();
49829
- const buildReactVendorTask = config.reactDirectory ? buildReactVendor(state.resolvedPaths.buildDir).then(async () => {
49830
- const vendorDir = resolve34(state.resolvedPaths.buildDir, "react", "vendor");
49831
- await loadVendorFiles(state.assetStore, vendorDir, "react");
49832
- if (!globalThis.__reactModuleRef) {
49833
- globalThis.__reactModuleRef = await import("react");
49834
- }
49835
- return true;
49836
- }) : undefined;
49837
- const buildAngularVendorTask = config.angularDirectory ? buildAngularVendor(state.resolvedPaths.buildDir, sourceDirs).then(async (specs) => {
49838
- const vendorDir = resolve34(state.resolvedPaths.buildDir, "angular", "vendor");
49839
- await loadVendorFiles(state.assetStore, vendorDir, "angular");
49840
- globalThis.__angularVendorSpecifiers = specs;
49841
- return true;
49842
- }) : undefined;
49843
- const buildSvelteVendorTask = config.svelteDirectory ? buildSvelteVendor(state.resolvedPaths.buildDir).then(async () => {
49844
- const vendorDir = resolve34(state.resolvedPaths.buildDir, "svelte", "vendor");
49845
- await loadVendorFiles(state.assetStore, vendorDir, "svelte");
49846
- return true;
49847
- }) : undefined;
49848
- const buildVueVendorTask = config.vueDirectory ? buildVueVendor(state.resolvedPaths.buildDir).then(async () => {
49849
- const vendorDir = resolve34(state.resolvedPaths.buildDir, "vue", "vendor");
49850
- await loadVendorFiles(state.assetStore, vendorDir, "vue");
49851
- return true;
49852
- }) : undefined;
49852
+ const reactVendorDir = resolve34(state.resolvedPaths.buildDir, "react", "vendor");
49853
+ const angularVendorDir = resolve34(state.resolvedPaths.buildDir, "angular", "vendor");
49854
+ const svelteVendorDir = resolve34(state.resolvedPaths.buildDir, "svelte", "vendor");
49855
+ const vueVendorDir = resolve34(state.resolvedPaths.buildDir, "vue", "vendor");
49856
+ const depVendorDir = resolve34(state.resolvedPaths.buildDir, "vendor");
49853
49857
  const { buildDepVendor: buildDepVendor2 } = await Promise.resolve().then(() => (init_buildDepVendor(), exports_buildDepVendor));
49854
- const buildDepVendorTask = buildDepVendor2(state.resolvedPaths.buildDir, sourceDirs).then(async (depPaths) => {
49855
- const vendorDir = resolve34(state.resolvedPaths.buildDir, "vendor");
49856
- await loadVendorFiles(state.assetStore, vendorDir, "vendor");
49857
- globalThis.__depVendorPaths = depPaths;
49858
- return true;
49859
- });
49860
- await Promise.all([
49861
- buildReactVendorTask,
49862
- buildAngularVendorTask,
49863
- buildSvelteVendorTask,
49864
- buildVueVendorTask,
49865
- buildDepVendorTask
49858
+ const [, angularSpecs, , , depPaths] = await Promise.all([
49859
+ config.reactDirectory ? buildReactVendor(state.resolvedPaths.buildDir) : Promise.resolve(undefined),
49860
+ config.angularDirectory ? buildAngularVendor(state.resolvedPaths.buildDir, sourceDirs) : Promise.resolve(undefined),
49861
+ config.svelteDirectory ? buildSvelteVendor(state.resolvedPaths.buildDir) : Promise.resolve(undefined),
49862
+ config.vueDirectory ? buildVueVendor(state.resolvedPaths.buildDir) : Promise.resolve(undefined),
49863
+ buildDepVendor2(state.resolvedPaths.buildDir, sourceDirs)
49866
49864
  ]);
49865
+ if (angularSpecs)
49866
+ globalThis.__angularVendorSpecifiers = angularSpecs;
49867
+ globalThis.__depVendorPaths = depPaths;
49867
49868
  recordStep("build vendor bundles", stepStartedAt);
49868
49869
  stepStartedAt = performance.now();
49870
+ const combinedVendorPaths = {
49871
+ ...getDevVendorPaths() ?? {},
49872
+ ...getAngularVendorPaths() ?? {},
49873
+ ...getSvelteVendorPaths() ?? {},
49874
+ ...getVueVendorPaths() ?? {},
49875
+ ...depPaths
49876
+ };
49877
+ const activeVendorDirs = [
49878
+ config.reactDirectory ? reactVendorDir : null,
49879
+ config.angularDirectory ? angularVendorDir : null,
49880
+ config.svelteDirectory ? svelteVendorDir : null,
49881
+ config.vueDirectory ? vueVendorDir : null,
49882
+ depVendorDir
49883
+ ].filter((d) => d !== null);
49884
+ const { rewriteVendorDirectories: rewriteVendorDirectories2 } = await Promise.resolve().then(() => (init_rewriteImports(), exports_rewriteImports));
49885
+ await rewriteVendorDirectories2(activeVendorDirs, combinedVendorPaths);
49886
+ recordStep("rewrite vendor cross-references", stepStartedAt);
49887
+ stepStartedAt = performance.now();
49888
+ await Promise.all([
49889
+ config.reactDirectory ? loadVendorFiles(state.assetStore, reactVendorDir, "react") : Promise.resolve(),
49890
+ config.angularDirectory ? loadVendorFiles(state.assetStore, angularVendorDir, "angular") : Promise.resolve(),
49891
+ config.svelteDirectory ? loadVendorFiles(state.assetStore, svelteVendorDir, "svelte") : Promise.resolve(),
49892
+ config.vueDirectory ? loadVendorFiles(state.assetStore, vueVendorDir, "vue") : Promise.resolve(),
49893
+ loadVendorFiles(state.assetStore, depVendorDir, "vendor")
49894
+ ]);
49895
+ if (config.reactDirectory && !globalThis.__reactModuleRef) {
49896
+ globalThis.__reactModuleRef = await import("react");
49897
+ }
49898
+ recordStep("load vendor files", stepStartedAt);
49899
+ stepStartedAt = performance.now();
49869
49900
  const { warmCompilers: warmCompilers2 } = await Promise.resolve().then(() => (init_moduleServer(), exports_moduleServer));
49870
49901
  await warmCompilers2({
49871
49902
  svelte: Boolean(config.svelteDirectory),
@@ -58308,5 +58339,5 @@ export {
58308
58339
  ANGULAR_INIT_TIMEOUT_MS
58309
58340
  };
58310
58341
 
58311
- //# debugId=2E2BAC3D0031B92D64756E2164756E21
58342
+ //# debugId=3733D59ADD660B6264756E2164756E21
58312
58343
  //# sourceMappingURL=index.js.map