@absolutejs/absolute 0.20.0-beta.124 → 0.20.0-beta.125

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/CHANGELOG.md CHANGED
@@ -6,6 +6,13 @@ This file is generated by `absolute-changelog` from the entries in
6
6
  `changelog/`. Edit an entry, not this file — and add new ones under
7
7
  `changelog/unreleased/`.
8
8
 
9
+ ## 0.20.0-beta.125 — 2026-09-29
10
+
11
+ ### Fixed
12
+
13
+ - **Vue pages that reach a helper through a re-export build again**
14
+ The Vue build copies every `.ts` helper a page reaches into its generated tree, but it found them with a regex that only matched `import … from`. A helper reached only through a re-export (`export { x } from './y'` or `export * from './y'`) was never copied, so the build failed with `Could not resolve: "./y"` and every page above it answered 500 in dev. Dependencies are now read with Bun's import scanner, which sees imports, dynamic imports and all three re-export forms; a regex that also covers re-exports is the fallback for source that does not parse.
15
+
9
16
  ## 0.20.0-beta.124 — 2026-09-28
10
17
 
11
18
  ### Fixed
package/changelog.json CHANGED
@@ -2,6 +2,17 @@
2
2
  "contract": 1,
3
3
  "name": "@absolutejs/absolute",
4
4
  "releases": [
5
+ {
6
+ "changes": [
7
+ {
8
+ "detail": "The Vue build copies every `.ts` helper a page reaches into its generated tree, but it found them with a regex that only matched `import … from`. A helper reached only through a re-export (`export { x } from './y'` or `export * from './y'`) was never copied, so the build failed with `Could not resolve: \"./y\"` and every page above it answered 500 in dev. Dependencies are now read with Bun's import scanner, which sees imports, dynamic imports and all three re-export forms; a regex that also covers re-exports is the fallback for source that does not parse.",
9
+ "kind": "fixed",
10
+ "summary": "Vue pages that reach a helper through a re-export build again"
11
+ }
12
+ ],
13
+ "date": "2026-09-29",
14
+ "version": "0.20.0-beta.125"
15
+ },
5
16
  {
6
17
  "changes": [
7
18
  {
@@ -1,7 +1,7 @@
1
1
  // @bun
2
2
  var __require = import.meta.require;
3
3
 
4
- // .angular-partial-tmp-VA5kAM/src/core/streamingSlotRegistrar.ts
4
+ // .angular-partial-tmp-xJT9Ow/src/core/streamingSlotRegistrar.ts
5
5
  var STREAMING_SLOT_REGISTRAR_KEY = Symbol.for("absolutejs.streamingSlotRegistrar");
6
6
  var STREAMING_SLOT_WARNING_STORAGE_KEY = Symbol.for("absolutejs.streamingSlotWarningController");
7
7
  var STREAMING_SLOT_COLLECTION_STORAGE_KEY = Symbol.for("absolutejs.streamingSlotCollectionController");
@@ -1,7 +1,7 @@
1
1
  // @bun
2
2
  var __require = import.meta.require;
3
3
 
4
- // .angular-partial-tmp-VA5kAM/src/core/streamingSlotRegistrar.ts
4
+ // .angular-partial-tmp-xJT9Ow/src/core/streamingSlotRegistrar.ts
5
5
  var STREAMING_SLOT_REGISTRAR_KEY = Symbol.for("absolutejs.streamingSlotRegistrar");
6
6
  var STREAMING_SLOT_WARNING_STORAGE_KEY = Symbol.for("absolutejs.streamingSlotWarningController");
7
7
  var STREAMING_SLOT_COLLECTION_STORAGE_KEY = Symbol.for("absolutejs.streamingSlotCollectionController");
@@ -48,7 +48,7 @@ var warnMissingStreamingSlotCollector = (primitiveName) => {
48
48
  getWarningController()?.maybeWarn(primitiveName);
49
49
  };
50
50
 
51
- // .angular-partial-tmp-VA5kAM/src/core/streamingSlotRegistry.ts
51
+ // .angular-partial-tmp-xJT9Ow/src/core/streamingSlotRegistry.ts
52
52
  var STREAMING_SLOT_STORAGE_KEY = Symbol.for("absolutejs.streamingSlotAsyncLocalStorage");
53
53
  var isObjectRecord2 = (value) => Boolean(value) && typeof value === "object";
54
54
  var isAsyncLocalStorage = (value) => isObjectRecord2(value) && ("getStore" in value) && typeof value.getStore === "function" && ("run" in value) && typeof value.run === "function";
package/dist/build.js CHANGED
@@ -19439,10 +19439,14 @@ var resolveDevClientDir3 = () => {
19439
19439
  return "template-only";
19440
19440
  }
19441
19441
  return "full";
19442
- }, generateVueHmrId = (sourceFilePath, vueRootDir) => relative17(vueRootDir, sourceFilePath).replace(/\\/g, "/").replace(/\.vue$/, ""), extractImports = (sourceCode) => {
19443
- const staticImports = Array.from(sourceCode.matchAll(/import\s+[\s\S]+?['"]([^'"]+)['"]/g));
19444
- const dynamicImports = Array.from(sourceCode.matchAll(/\bimport\s*\(\s*['"]([^'"]+)['"]\s*\)/g));
19445
- return Array.from(new Set([...staticImports, ...dynamicImports].map((match) => match[1]).filter((importPath) => importPath !== undefined)));
19442
+ }, generateVueHmrId = (sourceFilePath, vueRootDir) => relative17(vueRootDir, sourceFilePath).replace(/\\/g, "/").replace(/\.vue$/, ""), importScanner, IMPORT_PATTERNS, matchImports = (sourceCode) => IMPORT_PATTERNS.flatMap((pattern) => Array.from(sourceCode.matchAll(pattern), (match) => match[1])).filter((importPath) => importPath !== undefined), extractImports = (sourceCode) => {
19443
+ let found;
19444
+ try {
19445
+ found = importScanner.scanImports(sourceCode).map(({ path }) => path);
19446
+ } catch {
19447
+ found = matchImports(sourceCode);
19448
+ }
19449
+ return Array.from(new Set(found));
19446
19450
  }, resolveHelperTsPath = (sourceDir, helper) => {
19447
19451
  if (helper.endsWith(".ts"))
19448
19452
  return resolve28(sourceDir, helper);
@@ -20017,6 +20021,12 @@ var init_compileVue = __esm(() => {
20017
20021
  persistentBuildCache = new Map;
20018
20022
  vueSourceHashCache = new Map;
20019
20023
  vueHmrMetadata = new Map;
20024
+ importScanner = new Bun.Transpiler({ loader: "ts" });
20025
+ IMPORT_PATTERNS = [
20026
+ /import\s+[\s\S]+?['"]([^'"]+)['"]/g,
20027
+ /\bimport\s*\(\s*['"]([^'"]+)['"]\s*\)/g,
20028
+ /\bexport\s+(?:type\s+)?(?:\*(?:\s+as\s+[\w$]+)?|\{[^}]*\})\s*from\s*['"]([^'"]+)['"]/g
20029
+ ];
20020
20030
  EXTERNAL_STYLE_DEPENDENCY = /@(?:import|use|forward)\b/;
20021
20031
  fingerprintCache2 = new Map;
20022
20032
  pendingWrites = new Set;
@@ -38172,5 +38182,5 @@ export {
38172
38182
  devBuild
38173
38183
  };
38174
38184
 
38175
- //# debugId=CE51F4C6C3DEBBDF64756E2164756E21
38185
+ //# debugId=1A9F6B3E887493E464756E2164756E21
38176
38186
  //# sourceMappingURL=build.js.map