@absolutejs/absolute 0.19.0-beta.27 → 0.19.0-beta.28

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
@@ -202149,7 +202149,24 @@ __export(exports_moduleServer, {
202149
202149
  });
202150
202150
  import { readFileSync as readFileSync9, statSync as statSync2 } from "fs";
202151
202151
  import { dirname as dirname7, extname as extname3, resolve as resolve17, relative as relative6 } from "path";
202152
- var SRC_PREFIX = "/@src/", jsTranspiler2, TRANSPILABLE, REACT_EXTENSIONS, escapeRegex3 = (str) => str.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"), buildImportRewriter = (vendorPaths) => {
202152
+ var SRC_PREFIX = "/@src/", jsTranspiler2, tsTranspiler2, TRANSPILABLE, ALL_EXPORTS_RE, preserveTypeExports = (originalSource, transpiled, valueExports) => {
202153
+ const allExports = [];
202154
+ let match;
202155
+ ALL_EXPORTS_RE.lastIndex = 0;
202156
+ while ((match = ALL_EXPORTS_RE.exec(originalSource)) !== null) {
202157
+ if (match[1])
202158
+ allExports.push(match[1]);
202159
+ }
202160
+ const valueSet = new Set(valueExports);
202161
+ const typeExports = allExports.filter((e) => !valueSet.has(e));
202162
+ if (typeExports.length === 0)
202163
+ return transpiled;
202164
+ const stubs = typeExports.map((name) => `export const ${name} = undefined;`).join(`
202165
+ `);
202166
+ return `${transpiled}
202167
+ ${stubs}
202168
+ `;
202169
+ }, REACT_EXTENSIONS, escapeRegex3 = (str) => str.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"), buildImportRewriter = (vendorPaths) => {
202153
202170
  const entries = Object.entries(vendorPaths).sort(([a], [b]) => b.length - a.length);
202154
202171
  if (entries.length === 0)
202155
202172
  return null;
@@ -202243,7 +202260,9 @@ var SRC_PREFIX = "/@src/", jsTranspiler2, TRANSPILABLE, REACT_EXTENSIONS, escape
202243
202260
  ` + code;
202244
202261
  }, reactTranspiler, transformReactFile = (filePath, projectRoot, rewriter) => {
202245
202262
  const raw = readFileSync9(filePath, "utf-8");
202263
+ const valueExports = tsTranspiler2.scan(raw).exports;
202246
202264
  let transpiled = reactTranspiler.transformSync(raw);
202265
+ transpiled = preserveTypeExports(raw, transpiled, valueExports);
202247
202266
  transpiled = addJsxImport(transpiled);
202248
202267
  transpiled = transpiled.replace(/import\s*\{[^}]*\}\s*from\s*["']react-refresh\/runtime["'];?\n?/, "");
202249
202268
  transpiled = transpiled.replace(/\$RefreshReg\$_[a-z0-9]+/g, "$RefreshReg$");
@@ -202257,7 +202276,13 @@ var SRC_PREFIX = "/@src/", jsTranspiler2, TRANSPILABLE, REACT_EXTENSIONS, escape
202257
202276
  }, transformPlainFile = (filePath, projectRoot, rewriter) => {
202258
202277
  const raw = readFileSync9(filePath, "utf-8");
202259
202278
  const ext = extname3(filePath);
202260
- const transpiled = ext === ".js" || ext === ".mjs" ? jsTranspiler2.transformSync(raw) : new Bun.Transpiler({ loader: "tsx" }).transformSync(raw);
202279
+ const isTS = ext === ".ts" || ext === ".tsx";
202280
+ const transpiler3 = isTS ? tsTranspiler2 : jsTranspiler2;
202281
+ const valueExports = isTS ? transpiler3.scan(raw).exports : [];
202282
+ let transpiled = transpiler3.transformSync(raw);
202283
+ if (isTS) {
202284
+ transpiled = preserveTypeExports(raw, transpiled, valueExports);
202285
+ }
202261
202286
  return rewriteImports2(transpiled, filePath, projectRoot, rewriter);
202262
202287
  }, handleCssRequest = (filePath) => {
202263
202288
  const raw = readFileSync9(filePath, "utf-8");
@@ -202347,8 +202372,16 @@ export default {};
202347
202372
  }, invalidateModule, SRC_URL_PREFIX;
202348
202373
  var init_moduleServer = __esm(() => {
202349
202374
  init_transformCache();
202350
- jsTranspiler2 = new Bun.Transpiler({ loader: "js" });
202375
+ jsTranspiler2 = new Bun.Transpiler({
202376
+ loader: "js",
202377
+ trimUnusedImports: true
202378
+ });
202379
+ tsTranspiler2 = new Bun.Transpiler({
202380
+ loader: "tsx",
202381
+ trimUnusedImports: true
202382
+ });
202351
202383
  TRANSPILABLE = new Set([".ts", ".tsx", ".js", ".jsx", ".mjs"]);
202384
+ ALL_EXPORTS_RE = /export\s+(?:type|interface|const|let|var|function|class|enum|abstract\s+class)\s+(\w+)/g;
202352
202385
  REACT_EXTENSIONS = new Set([".tsx", ".jsx"]);
202353
202386
  HOOK_NAMES = new Set([
202354
202387
  "useState",
@@ -202381,7 +202414,8 @@ var init_moduleServer = __esm(() => {
202381
202414
  FRAGMENT_RE = /\b(Fragment_[a-z0-9]+)\b/;
202382
202415
  reactTranspiler = new Bun.Transpiler({
202383
202416
  loader: "tsx",
202384
- reactFastRefresh: true
202417
+ reactFastRefresh: true,
202418
+ trimUnusedImports: true
202385
202419
  });
202386
202420
  invalidateModule = invalidate;
202387
202421
  SRC_URL_PREFIX = SRC_PREFIX;
@@ -204473,5 +204507,5 @@ export {
204473
204507
  ANGULAR_INIT_TIMEOUT_MS
204474
204508
  };
204475
204509
 
204476
- //# debugId=6D0456E07F4F84EF64756E2164756E21
204510
+ //# debugId=F9A829191621141064756E2164756E21
204477
204511
  //# sourceMappingURL=index.js.map