@d1g1tal/tsbuild 1.8.1 → 1.8.2

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
@@ -1,3 +1,9 @@
1
+ ## [1.8.2](https://github.com/D1g1talEntr0py/tsbuild/compare/v1.8.1...v1.8.2) (2026-04-09)
2
+
3
+ ### Bug Fixes
4
+
5
+ * **build:** add handling for modules where the export uses 'as' (d96f626e7329188e702cd32bd8ba028810647d06)
6
+
1
7
  ## [1.8.1](https://github.com/D1g1talEntr0py/tsbuild/compare/v1.8.0...v1.8.1) (2026-04-09)
2
8
 
3
9
  ### Bug Fixes
@@ -1570,22 +1570,33 @@ function extractEntryNames(entryPoints) {
1570
1570
  }
1571
1571
  return Object.keys(entryPoints);
1572
1572
  }
1573
- var exportBlockStart = "\nexport {";
1574
- var exportBlockEnd = "\n};";
1573
+ var exportRe = /export\s*\{([^}]*)\};?/g;
1574
+ var asRe = /^(\w+)\s+as\s+(\w+)$/;
1575
1575
  function wrapAsIife(text, globalName) {
1576
- const start = text.lastIndexOf(exportBlockStart);
1577
- if (start === -1) {
1576
+ let last = null;
1577
+ let match;
1578
+ exportRe.lastIndex = 0;
1579
+ while ((match = exportRe.exec(text)) !== null) {
1580
+ last = match;
1581
+ }
1582
+ if (!last) {
1578
1583
  return text;
1579
1584
  }
1580
- const end = text.indexOf(exportBlockEnd, start) + exportBlockEnd.length;
1581
- const block = text.slice(start + 1, end);
1582
- const names = [...block.matchAll(/^\s+(\w+)/gm)].map((m) => m[1]);
1583
- if (names.length === 0) {
1585
+ const props = [];
1586
+ for (const raw of last[1].split(",")) {
1587
+ const trimmed = raw.trim();
1588
+ if (!trimmed) {
1589
+ continue;
1590
+ }
1591
+ const m = asRe.exec(trimmed);
1592
+ props.push(m ? `${m[2]}: ${m[1]}` : trimmed);
1593
+ }
1594
+ if (props.length === 0) {
1584
1595
  return text;
1585
1596
  }
1586
- const assignment = globalName ? `globalThis.${globalName} = { ${names.join(", ")} };` : `Object.assign(globalThis, { ${names.join(", ")} });`;
1587
- const body = text.slice(0, start);
1588
- const after = text.slice(end);
1597
+ const assignment = globalName ? `globalThis.${globalName} = { ${props.join(", ")} };` : `Object.assign(globalThis, { ${props.join(", ")} });`;
1598
+ const body = text.slice(0, last.index);
1599
+ const after = text.slice(last.index + last[0].length);
1589
1600
  return `(() => {
1590
1601
  ${body}
1591
1602
  ${assignment}
@@ -2344,7 +2355,7 @@ var _TypeScriptProject = class _TypeScriptProject {
2344
2355
  return Files.empty(this.buildConfiguration.outDir);
2345
2356
  }
2346
2357
  async build() {
2347
- Logger.header(`${tsLogo} tsbuild v${"1.8.1"}${this.configuration.compilerOptions.incremental && this.configuration.buildCache?.isValid() ? " [incremental]" : ""}`);
2358
+ Logger.header(`${tsLogo} tsbuild v${"1.8.2"}${this.configuration.compilerOptions.incremental && this.configuration.buildCache?.isValid() ? " [incremental]" : ""}`);
2348
2359
  try {
2349
2360
  const processes = [];
2350
2361
  const filesWereEmitted = await this.typeCheck();
package/dist/tsbuild.js CHANGED
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  BuildError,
4
4
  TypeScriptProject
5
- } from "./GWNROQXR.js";
5
+ } from "./ALZQNZZK.js";
6
6
  import "./JKGYA2AW.js";
7
7
 
8
8
  // src/tsbuild.ts
@@ -30,7 +30,7 @@ if (help) {
30
30
  process.exit(0);
31
31
  }
32
32
  if (version) {
33
- console.log("1.8.1");
33
+ console.log("1.8.2");
34
34
  process.exit(0);
35
35
  }
36
36
  var typeScriptOptions = {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  TypeScriptProject
3
- } from "./GWNROQXR.js";
3
+ } from "./ALZQNZZK.js";
4
4
  import "./JKGYA2AW.js";
5
5
  export {
6
6
  TypeScriptProject
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@d1g1tal/tsbuild",
3
3
  "author": "D1g1talEntr0py",
4
- "version": "1.8.1",
4
+ "version": "1.8.2",
5
5
  "license": "MIT",
6
6
  "description": "A fast, ESM-only TypeScript build tool combining the TypeScript API for type checking and declaration generation, esbuild for bundling, and SWC for decorator metadata.",
7
7
  "homepage": "https://github.com/D1g1talEntr0py/tsbuild#readme",