@rolldown/browser 1.0.0-beta.40 → 1.0.0-beta.42

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.
Files changed (29) hide show
  1. package/dist/cli.mjs +17 -9
  2. package/dist/config.d.mts +2 -2
  3. package/dist/config.mjs +4 -4
  4. package/dist/experimental-index.browser.mjs +22 -25
  5. package/dist/experimental-index.d.mts +17 -9
  6. package/dist/experimental-index.mjs +25 -28
  7. package/dist/experimental-runtime-types.d.ts +6 -0
  8. package/dist/filter-index.d.mts +2 -2
  9. package/dist/filter-index.mjs +1 -1
  10. package/dist/index.browser.mjs +1 -1
  11. package/dist/index.d.mts +3 -3
  12. package/dist/index.mjs +3 -3
  13. package/dist/parallel-plugin-worker.mjs +5 -6
  14. package/dist/parallel-plugin.d.mts +2 -2
  15. package/dist/parse-ast-index.d.mts +1 -1
  16. package/dist/parse-ast-index.mjs +1 -1
  17. package/dist/rolldown-binding.wasi-browser.js +2 -1
  18. package/dist/rolldown-binding.wasi.cjs +2 -1
  19. package/dist/rolldown-binding.wasm32-wasi.wasm +0 -0
  20. package/dist/shared/{binding-BVXbXhPv.d.mts → binding-CtbNz6TD.d.mts} +29 -22
  21. package/dist/shared/{define-config-D9LkukIg.d.mts → define-config-xBdWOg15.d.mts} +27 -6
  22. package/dist/shared/{dist-CHTC3-kR.mjs → dist-CU0dSkK2.mjs} +2 -3
  23. package/dist/shared/{load-config-CU4Yss-9.mjs → load-config-B4-CoeU7.mjs} +4 -7
  24. package/dist/shared/{logger-CiCY7ucm.mjs → logger-B83ocDok.mjs} +6 -9
  25. package/dist/shared/{parse-ast-index-DuyJNdzo.mjs → parse-ast-index-Gktxd-oi.mjs} +1 -1
  26. package/dist/shared/{prompt-D2FxOcB5.mjs → prompt-B4e-jZUR.mjs} +28 -30
  27. package/dist/shared/{src-BfUPNTHw.mjs → src-DbG0hppv.mjs} +115 -125
  28. package/dist/{src-ChN10Pih.js → src-D_rsgcbb.js} +150 -163
  29. package/package.json +1 -1
@@ -27,7 +27,7 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
27
27
 
28
28
  //#endregion
29
29
  //#region package.json
30
- var version = "1.0.0-beta.40";
30
+ var version = "1.0.0-beta.42";
31
31
 
32
32
  //#endregion
33
33
  //#region src/utils/code-frame.ts
@@ -397,10 +397,7 @@ let _lazyMatch = () => {
397
397
  throw new Error("Invalid rule");
398
398
  }), P = "abcdefghijklmnopqrstuvwxyz", ir = (r$1) => {
399
399
  let e$2 = "";
400
- for (; r$1 > 0;) {
401
- const n$2 = (r$1 - 1) % 26;
402
- e$2 = P[n$2] + e$2, r$1 = Math.floor((r$1 - 1) / 26);
403
- }
400
+ for (; r$1 > 0;) e$2 = P[(r$1 - 1) % 26] + e$2, r$1 = Math.floor((r$1 - 1) / 26);
404
401
  return e$2;
405
402
  }, O$1 = (r$1) => {
406
403
  let e$2 = 0;
@@ -414,45 +411,45 @@ let _lazyMatch = () => {
414
411
  }, or$1 = (r$1, e$2, n$2) => S(r$1, e$2).map((a$2) => String(a$2).padStart(n$2, "0")), R = (r$1, e$2) => S(O$1(r$1), O$1(e$2)).map(ir), p$1 = (r$1) => r$1, z = (r$1) => ur((e$2) => rr(e$2, r$1, { memoization: false }).join("")), ur = (r$1) => {
415
412
  const e$2 = {};
416
413
  return (n$2) => e$2[n$2] ?? (e$2[n$2] = r$1(n$2));
417
- }, sr = i$1(/^\*\*\/\*$/, ".*"), cr = i$1(/^\*\*\/(\*)?([ a-zA-Z0-9._-]+)$/, (r$1, e$2, n$2) => `.*${e$2 ? "" : "(?:^|/)"}${n$2.replaceAll(".", "\\.")}`), lr = i$1(/^\*\*\/(\*)?([ a-zA-Z0-9._-]*)\{([ a-zA-Z0-9._-]+(?:,[ a-zA-Z0-9._-]+)*)\}$/, (r$1, e$2, n$2, a$2) => `.*${e$2 ? "" : "(?:^|/)"}${n$2.replaceAll(".", "\\.")}(?:${a$2.replaceAll(",", "|").replaceAll(".", "\\.")})`), y$1 = i$1(/\\./, p$1), pr = i$1(/[$.*+?^(){}[\]\|]/, (r$1) => `\\${r$1}`), vr = i$1(/./, p$1), hr = i$1(/^(?:!!)*!(.*)$/, (r$1, e$2) => `(?!^${L(e$2)}$).*?`), dr = i$1(/^(!!)+/, ""), fr = l$1([hr, dr]), xr = i$1(/\/(\*\*\/)+/, "(?:/.+/|/)"), gr = i$1(/^(\*\*\/)+/, "(?:^|.*/)"), mr = i$1(/\/(\*\*)$/, "(?:/.*|$)"), _r = i$1(/\*\*/, ".*"), j = l$1([
418
- xr,
419
- gr,
420
- mr,
421
- _r
422
- ]), Sr = i$1(/\*\/(?!\*\*\/)/, "[^/]*/"), yr = i$1(/\*/, "[^/]*"), N = l$1([Sr, yr]), k = i$1("?", "[^/]"), $r = i$1("[", p$1), wr = i$1("]", p$1), Ar = i$1(/[!^]/, "^/"), br = i$1(/[a-z]-[a-z]|[0-9]-[0-9]/i, p$1), Cr = i$1(/[$.*+?^(){}[\|]/, (r$1) => `\\${r$1}`), Mr = i$1(/[^\]]/, p$1), Er = l$1([
423
- y$1,
424
- Cr,
414
+ }, sr = i$1(/^\*\*\/\*$/, ".*"), cr = i$1(/^\*\*\/(\*)?([ a-zA-Z0-9._-]+)$/, (r$1, e$2, n$2) => `.*${e$2 ? "" : "(?:^|/)"}${n$2.replaceAll(".", "\\.")}`), lr = i$1(/^\*\*\/(\*)?([ a-zA-Z0-9._-]*)\{([ a-zA-Z0-9._-]+(?:,[ a-zA-Z0-9._-]+)*)\}$/, (r$1, e$2, n$2, a$2) => `.*${e$2 ? "" : "(?:^|/)"}${n$2.replaceAll(".", "\\.")}(?:${a$2.replaceAll(",", "|").replaceAll(".", "\\.")})`), y = i$1(/\\./, p$1), pr = i$1(/[$.*+?^(){}[\]\|]/, (r$1) => `\\${r$1}`), vr = i$1(/./, p$1), fr = l$1([i$1(/^(?:!!)*!(.*)$/, (r$1, e$2) => `(?!^${L(e$2)}$).*?`), i$1(/^(!!)+/, "")]), j = l$1([
415
+ i$1(/\/(\*\*\/)+/, "(?:/.+/|/)"),
416
+ i$1(/^(\*\*\/)+/, "(?:^|.*/)"),
417
+ i$1(/\/(\*\*)$/, "(?:/.*|$)"),
418
+ i$1(/\*\*/, ".*")
419
+ ]), N = l$1([i$1(/\*\/(?!\*\*\/)/, "[^/]*/"), i$1(/\*/, "[^/]*")]), k = i$1("?", "[^/]"), $r = i$1("[", p$1), wr = i$1("]", p$1), Ar = i$1(/[!^]/, "^/"), br = i$1(/[a-z]-[a-z]|[0-9]-[0-9]/i, p$1), Er = l$1([
420
+ y,
421
+ i$1(/[$.*+?^(){}[\|]/, (r$1) => `\\${r$1}`),
425
422
  br,
426
- Mr
423
+ i$1(/[^\]]/, p$1)
427
424
  ]), B = x([
428
425
  $r,
429
426
  tr(Ar),
430
427
  f$1(Er),
431
428
  wr
432
- ]), Pr = i$1("{", "(?:"), Or$1 = i$1("}", ")"), Rr = i$1(/(\d+)\.\.(\d+)/, (r$1, e$2, n$2) => or$1(+e$2, +n$2, Math.min(e$2.length, n$2.length)).join("|")), zr = i$1(/([a-z]+)\.\.([a-z]+)/, (r$1, e$2, n$2) => R(e$2, n$2).join("|")), jr = i$1(/([A-Z]+)\.\.([A-Z]+)/, (r$1, e$2, n$2) => R(e$2.toLowerCase(), n$2.toLowerCase()).join("|").toUpperCase()), Nr = l$1([
433
- Rr,
434
- zr,
435
- jr
436
- ]), I = x([
429
+ ]), Pr = i$1("{", "(?:"), Or$1 = i$1("}", ")"), I = x([
437
430
  Pr,
438
- Nr,
431
+ l$1([
432
+ i$1(/(\d+)\.\.(\d+)/, (r$1, e$2, n$2) => or$1(+e$2, +n$2, Math.min(e$2.length, n$2.length)).join("|")),
433
+ i$1(/([a-z]+)\.\.([a-z]+)/, (r$1, e$2, n$2) => R(e$2, n$2).join("|")),
434
+ i$1(/([A-Z]+)\.\.([A-Z]+)/, (r$1, e$2, n$2) => R(e$2.toLowerCase(), n$2.toLowerCase()).join("|").toUpperCase())
435
+ ]),
439
436
  Or$1
440
- ]), kr = i$1("{", "(?:"), Br = i$1("}", ")"), Ir = i$1(",", "|"), Fr = i$1(/[$.*+?^(){[\]\|]/, (r$1) => `\\${r$1}`), Lr = i$1(/[^}]/, p$1), Zr = E(() => F), Dr = l$1([
441
- j,
442
- N,
443
- k,
444
- B,
445
- I,
446
- Zr,
447
- y$1,
448
- Fr,
449
- Ir,
450
- Lr
451
- ]), F = x([
437
+ ]), kr = i$1("{", "(?:"), Br = i$1("}", ")"), Ir = i$1(",", "|"), Fr = i$1(/[$.*+?^(){[\]\|]/, (r$1) => `\\${r$1}`), Lr = i$1(/[^}]/, p$1), F = x([
452
438
  kr,
453
- f$1(Dr),
439
+ f$1(l$1([
440
+ j,
441
+ N,
442
+ k,
443
+ B,
444
+ I,
445
+ E(() => F),
446
+ y,
447
+ Fr,
448
+ Ir,
449
+ Lr
450
+ ])),
454
451
  Br
455
- ]), Ur = f$1(l$1([
452
+ ]), L = z(f$1(l$1([
456
453
  sr,
457
454
  cr,
458
455
  lr,
@@ -463,16 +460,16 @@ let _lazyMatch = () => {
463
460
  B,
464
461
  I,
465
462
  F,
466
- y$1,
463
+ y,
467
464
  pr,
468
465
  vr
469
- ])), Vr = Ur, Gr = z(Vr), L = Gr, Tr = i$1(/\\./, p$1), qr = i$1(/./, p$1), Hr = i$1(/\*\*\*+/, "*"), Jr = i$1(/([^/{[(!])\*\*/, (r$1, e$2) => `${e$2}*`), Qr = i$1(/(^|.)\*\*(?=[^*/)\]}])/, (r$1, e$2) => `${e$2}*`), Wr = f$1(l$1([
466
+ ]))), Tr = i$1(/\\./, p$1), qr = i$1(/./, p$1), Yr = z(f$1(l$1([
470
467
  Tr,
471
- Hr,
472
- Jr,
473
- Qr,
468
+ i$1(/\*\*\*+/, "*"),
469
+ i$1(/([^/{[(!])\*\*/, (r$1, e$2) => `${e$2}*`),
470
+ i$1(/(^|.)\*\*(?=[^*/)\]}])/, (r$1, e$2) => `${e$2}*`),
474
471
  qr
475
- ])), Kr = Wr, Xr = z(Kr), Yr = Xr, $ = (r$1, e$2) => {
472
+ ]))), $ = (r$1, e$2) => {
476
473
  const n$2 = Array.isArray(r$1) ? r$1 : [r$1];
477
474
  if (!n$2.length) return false;
478
475
  const a$2 = n$2.map($.compile), t$3 = n$2.every((s$1) => /(\/(?:\*\*)?|\[\/\])$/.test(s$1)), o$1 = e$2.replace(/[\\\/]+/g, "/").replace(/\/$/, t$3 ? "/" : "");
@@ -1035,20 +1032,20 @@ function getSortedPlugins(hookName, plugins) {
1035
1032
  }
1036
1033
 
1037
1034
  //#endregion
1038
- //#region ../../node_modules/.pnpm/ansis@4.1.0/node_modules/ansis/index.cjs
1039
- var require_ansis = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/ansis@4.1.0/node_modules/ansis/index.cjs": ((exports, module) => {
1040
- let e$1, t$2, r, { defineProperty: n$1, setPrototypeOf: l, create: o, keys: s } = Object, i = "", { round: c, max: a$1 } = Math, p = (e$2) => {
1041
- let t$3 = /([a-f\d]{3,6})/i.exec(e$2)?.[1], r$1 = t$3?.length, n$2 = parseInt(6 ^ r$1 ? 3 ^ r$1 ? "0" : t$3[0] + t$3[0] + t$3[1] + t$3[1] + t$3[2] + t$3[2] : t$3, 16);
1035
+ //#region ../../node_modules/.pnpm/ansis@4.2.0/node_modules/ansis/index.cjs
1036
+ var require_ansis = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/ansis@4.2.0/node_modules/ansis/index.cjs": ((exports, module) => {
1037
+ let e$1, t$2, r, { defineProperty: l, setPrototypeOf: n$1, create: o, keys: s } = Object, i = "", { round: c, max: a$1 } = Math, p = (e$2) => {
1038
+ let t$3 = /([a-f\d]{3,6})/i.exec(e$2)?.[1], r$1 = t$3?.length, l$1 = parseInt(6 ^ r$1 ? 3 ^ r$1 ? "0" : t$3[0] + t$3[0] + t$3[1] + t$3[1] + t$3[2] + t$3[2] : t$3, 16);
1042
1039
  return [
1043
- n$2 >> 16 & 255,
1044
- n$2 >> 8 & 255,
1045
- 255 & n$2
1040
+ l$1 >> 16 & 255,
1041
+ l$1 >> 8 & 255,
1042
+ 255 & l$1
1046
1043
  ];
1047
1044
  }, u = (e$2, t$3, r$1) => e$2 ^ t$3 || t$3 ^ r$1 ? 16 + 36 * c(e$2 / 51) + 6 * c(t$3 / 51) + c(r$1 / 51) : 8 > e$2 ? 16 : e$2 > 248 ? 231 : c(24 * (e$2 - 8) / 247) + 232, d = (e$2) => {
1048
- let t$3, r$1, n$2, l$1, o$1;
1049
- return 8 > e$2 ? 30 + e$2 : 16 > e$2 ? e$2 - 8 + 90 : (232 > e$2 ? (o$1 = (e$2 -= 16) % 36, t$3 = (e$2 / 36 | 0) / 5, r$1 = (o$1 / 6 | 0) / 5, n$2 = o$1 % 6 / 5) : t$3 = r$1 = n$2 = (10 * (e$2 - 232) + 8) / 255, l$1 = 2 * a$1(t$3, r$1, n$2), l$1 ? 30 + (c(n$2) << 2 | c(r$1) << 1 | c(t$3)) + (2 ^ l$1 ? 0 : 60) : 30);
1050
- }, g = (() => {
1051
- let r$1 = (e$2) => o$1.some(((t$3) => e$2.test(t$3))), n$2 = globalThis, l$1 = n$2.process ?? {}, o$1 = l$1.argv ?? [], i$1 = l$1.env ?? {}, c$1 = -1;
1045
+ let t$3, r$1, l$1, n$2, o$1;
1046
+ return 8 > e$2 ? 30 + e$2 : 16 > e$2 ? e$2 - 8 + 90 : (232 > e$2 ? (o$1 = (e$2 -= 16) % 36, t$3 = (e$2 / 36 | 0) / 5, r$1 = (o$1 / 6 | 0) / 5, l$1 = o$1 % 6 / 5) : t$3 = r$1 = l$1 = (10 * (e$2 - 232) + 8) / 255, n$2 = 2 * a$1(t$3, r$1, l$1), n$2 ? 30 + (c(l$1) << 2 | c(r$1) << 1 | c(t$3)) + (2 ^ n$2 ? 0 : 60) : 30);
1047
+ }, f = (() => {
1048
+ let r$1 = (e$2) => o$1.some(((t$3) => e$2.test(t$3))), l$1 = globalThis, n$2 = l$1.process ?? {}, o$1 = n$2.argv ?? [], i$1 = n$2.env ?? {}, c$1 = -1;
1052
1049
  try {
1053
1050
  e$1 = "," + s(i$1).join(",");
1054
1051
  } catch (e$2) {
@@ -1061,92 +1058,92 @@ var require_ansis = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/ansis
1061
1058
  2: 2,
1062
1059
  3: 3
1063
1060
  }[i$1[a$2]] ?? -1, u$1 = a$2 in i$1 && p$1 || r$1(/^--color=?(true|always)?$/);
1064
- return u$1 && (c$1 = p$1), ~c$1 || (c$1 = ((r$2, n$3, l$2) => (t$2 = r$2.TERM, {
1061
+ return u$1 && (c$1 = p$1), ~c$1 || (c$1 = ((r$2, l$2, n$3) => (t$2 = r$2.TERM, {
1065
1062
  "24bit": 3,
1066
1063
  truecolor: 3,
1067
1064
  ansi256: 2,
1068
1065
  ansi: 1
1069
- }[r$2.COLORTERM] || (r$2.CI ? /,GITHUB/.test(e$1) ? 3 : 1 : n$3 && "dumb" !== t$2 ? l$2 ? 3 : /-256/.test(t$2) ? 2 : 1 : 0)))(i$1, !!i$1.PM2_HOME || i$1.NEXT_RUNTIME?.includes("edge") || !!l$1.stdout?.isTTY, "win32" === l$1.platform)), !p$1 || i$1.NO_COLOR || r$1(/^--(no-color|color=(false|never))$/) ? 0 : n$2.window?.chrome || u$1 && !c$1 ? 3 : c$1;
1070
- })(), f = {
1066
+ }[r$2.COLORTERM] || (r$2.CI ? /,GITHUB/.test(e$1) ? 3 : 1 : l$2 && "dumb" !== t$2 ? n$3 ? 3 : /-256/.test(t$2) ? 2 : 1 : 0)))(i$1, !!i$1.PM2_HOME || i$1.NEXT_RUNTIME?.includes("edge") || !!n$2.stdout?.isTTY, "win32" === n$2.platform)), !p$1 || i$1.NO_COLOR || r$1(/^--(no-color|color=(false|never))$/) ? 0 : l$1.window?.chrome || u$1 && !c$1 ? 3 : c$1;
1067
+ })(), g = {
1071
1068
  open: i,
1072
1069
  close: i
1073
- }, h = 39, b = 49, O = {}, m = ({ p: e$2 }, { open: t$3, close: n$2 }) => {
1070
+ }, h = 39, b = 49, O = {}, m = ({ p: e$2 }, { open: t$3, close: l$1 }) => {
1074
1071
  let o$1 = (e$3, ...r$1) => {
1075
1072
  if (!e$3) {
1076
- if (t$3 && t$3 === n$2) return t$3;
1073
+ if (t$3 && t$3 === l$1) return t$3;
1077
1074
  if ((e$3 ?? i) === i) return i;
1078
1075
  }
1079
- let l$1, s$2 = e$3.raw ? String.raw({ raw: e$3 }, ...r$1) : i + e$3, c$2 = o$1.p, a$2 = c$2.o, p$1 = c$2.c;
1076
+ let n$2, s$2 = e$3.raw ? String.raw({ raw: e$3 }, ...r$1) : i + e$3, c$2 = o$1.p, a$2 = c$2.o, p$1 = c$2.c;
1080
1077
  if (s$2.includes("\x1B")) for (; c$2; c$2 = c$2.p) {
1081
- let { open: e$4, close: t$4 } = c$2, r$2 = t$4.length, n$3 = i, o$2 = 0;
1082
- if (r$2) for (; ~(l$1 = s$2.indexOf(t$4, o$2)); o$2 = l$1 + r$2) n$3 += s$2.slice(o$2, l$1) + e$4;
1083
- s$2 = n$3 + s$2.slice(o$2);
1078
+ let { open: e$4, close: t$4 } = c$2, r$2 = t$4.length, l$2 = i, o$2 = 0;
1079
+ if (r$2) for (; ~(n$2 = s$2.indexOf(t$4, o$2)); o$2 = n$2 + r$2) l$2 += s$2.slice(o$2, n$2) + e$4;
1080
+ s$2 = l$2 + s$2.slice(o$2);
1084
1081
  }
1085
1082
  return a$2 + (s$2.includes("\n") ? s$2.replace(/(\r?\n)/g, p$1 + "$1" + a$2) : s$2) + p$1;
1086
- }, s$1 = t$3, c$1 = n$2;
1087
- return e$2 && (s$1 = e$2.o + t$3, c$1 = n$2 + e$2.c), l(o$1, r), o$1.p = {
1083
+ }, s$1 = t$3, c$1 = l$1;
1084
+ return e$2 && (s$1 = e$2.o + t$3, c$1 = l$1 + e$2.c), n$1(o$1, r), o$1.p = {
1088
1085
  open: t$3,
1089
- close: n$2,
1086
+ close: l$1,
1090
1087
  o: s$1,
1091
1088
  c: c$1,
1092
1089
  p: e$2
1093
1090
  }, o$1.open = s$1, o$1.close = c$1, o$1;
1094
1091
  };
1095
- const w = function(e$2 = g) {
1096
- let t$3 = {
1097
- Ansis: w,
1098
- level: e$2,
1099
- isSupported: () => s$1,
1092
+ const w = new function e$2(t$3 = f) {
1093
+ let s$1 = {
1094
+ Ansis: e$2,
1095
+ level: t$3,
1096
+ isSupported: () => a$2,
1100
1097
  strip: (e$3) => e$3.replace(/[›][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g, i),
1101
1098
  extend(e$3) {
1102
1099
  for (let t$4 in e$3) {
1103
- let r$1 = e$3[t$4], l$1 = (typeof r$1)[0], o$1 = "s" === l$1 ? x(...p(r$1)) : r$1;
1104
- O[t$4] = "f" === l$1 ? { get() {
1105
- return (...e$4) => m(this, r$1(...e$4));
1106
- } } : { get() {
1107
- let e$4 = m(this, o$1);
1108
- return n$1(this, t$4, { value: e$4 }), e$4;
1109
- } };
1100
+ let r$1 = e$3[t$4], l$1 = (typeof r$1)[0];
1101
+ "s" === l$1 ? (c$1(t$4, T(...p(r$1))), c$1(_(t$4), v(...p(r$1)))) : c$1(t$4, r$1, "f" === l$1);
1110
1102
  }
1111
- return r = o({}, O), l(t$3, r), t$3;
1103
+ return r = o({}, O), n$1(s$1, r), s$1;
1112
1104
  }
1113
- }, s$1 = e$2 > 0, c$1 = (e$3, t$4) => s$1 ? {
1105
+ }, c$1 = (e$3, t$4, r$1) => {
1106
+ O[e$3] = { get() {
1107
+ let n$2 = r$1 ? (...e$4) => m(this, t$4(...e$4)) : m(this, t$4);
1108
+ return l(this, e$3, { value: n$2 }), n$2;
1109
+ } };
1110
+ }, a$2 = t$3 > 0, w$1 = (e$3, t$4) => a$2 ? {
1114
1111
  open: `[${e$3}m`,
1115
1112
  close: `[${t$4}m`
1116
- } : f, a$2 = (e$3) => (t$4) => e$3(...p(t$4)), y$1 = (e$3, t$4) => (r$1, n$2, l$1) => c$1(`${e$3}8;2;${r$1};${n$2};${l$1}`, t$4), R = (e$3, t$4) => (r$1, n$2, l$1) => c$1(((e$4, t$5, r$2) => d(u(e$4, t$5, r$2)))(r$1, n$2, l$1) + e$3, t$4), $ = (e$3) => (t$4, r$1, n$2) => e$3(u(t$4, r$1, n$2)), x = y$1(3, h), T = y$1(4, b), v = (e$3) => c$1("38;5;" + e$3, h), C = (e$3) => c$1("48;5;" + e$3, b);
1117
- 2 === e$2 ? (x = $(v), T = $(C)) : 1 === e$2 && (x = R(0, h), T = R(10, b), v = (e$3) => c$1(d(e$3), h), C = (e$3) => c$1(d(e$3) + 10, b));
1118
- let E, M = {
1119
- fg: v,
1120
- bg: C,
1121
- rgb: x,
1122
- bgRgb: T,
1123
- hex: a$2(x),
1124
- bgHex: a$2(T),
1125
- visible: f,
1126
- reset: c$1(0, 0),
1127
- bold: c$1(1, 22),
1128
- dim: c$1(2, 22),
1129
- italic: c$1(3, 23),
1130
- underline: c$1(4, 24),
1131
- inverse: c$1(7, 27),
1132
- hidden: c$1(8, 28),
1133
- strikethrough: c$1(9, 29)
1134
- }, I = "Bright";
1113
+ } : g, y = (e$3) => (t$4) => e$3(...p(t$4)), R = (e$3, t$4) => (r$1, l$1, n$2) => w$1(`${e$3}8;2;${r$1};${l$1};${n$2}`, t$4), $ = (e$3, t$4) => (r$1, l$1, n$2) => w$1(((e$4, t$5, r$2) => d(u(e$4, t$5, r$2)))(r$1, l$1, n$2) + e$3, t$4), x = (e$3) => (t$4, r$1, l$1) => e$3(u(t$4, r$1, l$1)), T = R(3, h), v = R(4, b), C = (e$3) => w$1("38;5;" + e$3, h), E = (e$3) => w$1("48;5;" + e$3, b);
1114
+ 2 === t$3 ? (T = x(C), v = x(E)) : 1 === t$3 && (T = $(0, h), v = $(10, b), C = (e$3) => w$1(d(e$3), h), E = (e$3) => w$1(d(e$3) + 10, b));
1115
+ let M, I = {
1116
+ fg: C,
1117
+ bg: E,
1118
+ rgb: T,
1119
+ bgRgb: v,
1120
+ hex: y(T),
1121
+ bgHex: y(v),
1122
+ visible: g,
1123
+ reset: w$1(0, 0),
1124
+ bold: w$1(1, 22),
1125
+ dim: w$1(2, 22),
1126
+ italic: w$1(3, 23),
1127
+ underline: w$1(4, 24),
1128
+ inverse: w$1(7, 27),
1129
+ hidden: w$1(8, 28),
1130
+ strikethrough: w$1(9, 29)
1131
+ }, _ = (e$3) => "bg" + e$3[0].toUpperCase() + e$3.slice(1), k = "Bright";
1135
1132
  return "black,red,green,yellow,blue,magenta,cyan,white,gray".split(",").map(((e$3, t$4) => {
1136
- E = "bg" + e$3[0].toUpperCase() + e$3.slice(1), 8 > t$4 ? (M[e$3 + I] = c$1(90 + t$4, h), M[E + I] = c$1(100 + t$4, b)) : t$4 = 60, M[e$3] = c$1(30 + t$4, h), M[E] = c$1(40 + t$4, b);
1137
- })), t$3.extend(M);
1138
- }, y = new w();
1139
- module.exports = y, y.default = y;
1133
+ M = _(e$3), 8 > t$4 ? (I[e$3 + k] = w$1(90 + t$4, h), I[M + k] = w$1(100 + t$4, b)) : t$4 = 60, I[e$3] = w$1(30 + t$4, h), I[M] = w$1(40 + t$4, b);
1134
+ })), s$1.extend(I);
1135
+ }();
1136
+ module.exports = w, w.default = w;
1140
1137
  }) });
1141
1138
 
1142
1139
  //#endregion
1143
- //#region ../../node_modules/.pnpm/ansis@4.1.0/node_modules/ansis/index.mjs
1140
+ //#region ../../node_modules/.pnpm/ansis@4.2.0/node_modules/ansis/index.mjs
1144
1141
  var import_ansis = /* @__PURE__ */ __toESM(require_ansis(), 1);
1145
1142
  var ansis_default = import_ansis.default;
1146
1143
  const { Ansis, fg, bg, rgb, bgRgb, hex, bgHex, reset, inverse, hidden, visible, bold, dim, italic, underline, strikethrough, black, red, green, yellow, blue, magenta, cyan, white, gray, redBright, greenBright, yellowBright, blueBright, magentaBright, cyanBright, whiteBright, bgBlack, bgRed, bgGreen, bgYellow, bgBlue, bgMagenta, bgCyan, bgWhite, bgGray, bgRedBright, bgGreenBright, bgYellowBright, bgBlueBright, bgMagentaBright, bgCyanBright, bgWhiteBright } = import_ansis.default;
1147
1144
 
1148
1145
  //#endregion
1149
- //#region ../../node_modules/.pnpm/valibot@1.1.0_typescript@5.9.2/node_modules/valibot/dist/index.js
1146
+ //#region ../../node_modules/.pnpm/valibot@1.1.0_typescript@5.9.3/node_modules/valibot/dist/index.js
1150
1147
  var store;
1151
1148
  /* @__NO_SIDE_EFFECTS__ */
1152
1149
  function getGlobalConfig(config2) {
@@ -2059,6 +2056,18 @@ function omit(schema, keys) {
2059
2056
  };
2060
2057
  }
2061
2058
  /* @__NO_SIDE_EFFECTS__ */
2059
+ function partial(schema, keys) {
2060
+ const entries2 = {};
2061
+ for (const key in schema.entries) entries2[key] = !keys || keys.includes(key) ? /* @__PURE__ */ optional(schema.entries[key]) : schema.entries[key];
2062
+ return {
2063
+ ...schema,
2064
+ entries: entries2,
2065
+ get "~standard"() {
2066
+ return /* @__PURE__ */ _getStandardProps(this);
2067
+ }
2068
+ };
2069
+ }
2070
+ /* @__NO_SIDE_EFFECTS__ */
2062
2071
  function pipe(...pipe2) {
2063
2072
  return {
2064
2073
  ...pipe2[0],
@@ -2448,6 +2457,11 @@ const AdvancedChunksSchema = strictObject({
2448
2457
  maxModuleSize: optional(number())
2449
2458
  })))
2450
2459
  });
2460
+ const GeneratedCodePresetSchema = union([literal("es5"), literal("es2015")]);
2461
+ const GeneratedCodeOptionsSchema = strictObject({
2462
+ symbols: pipe(optional(boolean()), description("Whether to use Symbol.toStringTag for namespace objects")),
2463
+ preset: GeneratedCodePresetSchema
2464
+ });
2451
2465
  const OutputOptionsSchema = strictObject({
2452
2466
  dir: pipe(optional(string()), description("Output directory, defaults to `dist` if `file` is not set")),
2453
2467
  file: pipe(optional(string()), description("Single output file")),
@@ -2495,6 +2509,7 @@ const OutputOptionsSchema = strictObject({
2495
2509
  ])), description("Minify the bundled file")),
2496
2510
  name: pipe(optional(string()), description("Name for UMD / IIFE format outputs")),
2497
2511
  globals: pipe(optional(union([record(string(), string()), GlobalsFunctionSchema])), description("Global variable of UMD / IIFE dependencies (syntax: `key=value`)")),
2512
+ generatedCode: pipe(optional(partial(GeneratedCodeOptionsSchema)), description("Generated code options")),
2498
2513
  externalLiveBindings: pipe(optional(boolean()), description("external live bindings")),
2499
2514
  inlineDynamicImports: pipe(optional(boolean()), description("Inline dynamic imports")),
2500
2515
  manualChunks: optional(pipe(function_(), args(tuple([string(), object({})])), returns(union([string(), nullish(string())])))),
@@ -2546,6 +2561,7 @@ const OutputCliOptionsSchema = omit(strictObject({
2546
2561
  const CliOptionsSchema = strictObject({
2547
2562
  config: pipe(optional(union([string(), boolean()])), description("Path to the config file (default: `rolldown.config.js`)")),
2548
2563
  help: pipe(optional(boolean()), description("Show help")),
2564
+ environment: pipe(optional(union([string(), array(string())])), description("Pass additional settings to the config file via process.ENV.")),
2549
2565
  version: pipe(optional(boolean()), description("Show version number")),
2550
2566
  watch: pipe(optional(boolean()), description("Watch files in bundle and rebuild on changes")),
2551
2567
  ...InputCliOptionsSchema.entries,
@@ -2598,12 +2614,19 @@ function bindingifySourcemap$1(map) {
2598
2614
 
2599
2615
  //#endregion
2600
2616
  //#region src/utils/error.ts
2601
- function normalizeErrors(rawErrors) {
2602
- const errors = rawErrors.map((e$2) => e$2 instanceof Error ? e$2 : Object.assign(/* @__PURE__ */ new Error(), {
2603
- kind: e$2.kind,
2604
- message: e$2.message,
2617
+ function unwrapBindingResult(container) {
2618
+ if (typeof container === "object" && container !== null && "isBindingErrors" in container && container.isBindingErrors) throw aggregateBindingErrorsIntoJsError(container.errors);
2619
+ return container;
2620
+ }
2621
+ function normalizeBindingError(e$2) {
2622
+ return e$2.type === "JsError" ? e$2.field0 : Object.assign(/* @__PURE__ */ new Error(), {
2623
+ kind: e$2.field0.kind,
2624
+ message: e$2.field0.message,
2605
2625
  stack: void 0
2606
- }));
2626
+ });
2627
+ }
2628
+ function aggregateBindingErrorsIntoJsError(rawErrors) {
2629
+ const errors = rawErrors.map(normalizeBindingError);
2607
2630
  let summary = `Build failed with ${errors.length} error${errors.length < 2 ? "" : "s"}:\n`;
2608
2631
  for (let i$1 = 0; i$1 < errors.length; i$1++) {
2609
2632
  summary += "\n";
@@ -2950,7 +2973,7 @@ function bindingPluginOrder(order) {
2950
2973
  }
2951
2974
 
2952
2975
  //#endregion
2953
- //#region ../../node_modules/.pnpm/oxc-parser@0.92.0/node_modules/oxc-parser/src-js/wrap.js
2976
+ //#region ../../node_modules/.pnpm/oxc-parser@0.94.0/node_modules/oxc-parser/src-js/wrap.js
2954
2977
  function wrap$1(result) {
2955
2978
  let program, module$1, comments, errors;
2956
2979
  return {
@@ -3202,7 +3225,7 @@ function bindingifyBuildEnd(args$1) {
3202
3225
  const { handler, meta } = normalizeHook(hook);
3203
3226
  return {
3204
3227
  plugin: async (ctx, err) => {
3205
- await handler.call(new PluginContextImpl(args$1.outputOptions, ctx, args$1.plugin, args$1.pluginContextData, args$1.onLog, args$1.logLevel, args$1.watchMode), err ? normalizeErrors(err) : void 0);
3228
+ await handler.call(new PluginContextImpl(args$1.outputOptions, ctx, args$1.plugin, args$1.pluginContextData, args$1.onLog, args$1.logLevel, args$1.watchMode), err ? aggregateBindingErrorsIntoJsError(err) : void 0);
3206
3229
  },
3207
3230
  meta: bindingifyPluginHookMeta(meta)
3208
3231
  };
@@ -3260,7 +3283,8 @@ function bindingifyResolveDynamicImport(args$1) {
3260
3283
  if (typeof ret === "string") return { id: ret };
3261
3284
  const result = {
3262
3285
  id: ret.id,
3263
- external: ret.external
3286
+ external: ret.external,
3287
+ packageJsonPath: ret.packageJsonPath
3264
3288
  };
3265
3289
  if (ret.moduleSideEffects !== null) result.moduleSideEffects = ret.moduleSideEffects;
3266
3290
  args$1.pluginContextData.updateModuleOption(ret.id, {
@@ -3502,14 +3526,9 @@ function transformToRollupOutputAsset(bindingAsset, changed) {
3502
3526
  });
3503
3527
  }
3504
3528
  function transformToRollupOutput(output, changed) {
3505
- handleOutputErrors(output);
3506
3529
  const { chunks, assets } = output;
3507
3530
  return { output: [...chunks.map((chunk) => transformToRollupOutputChunk(chunk, changed)), ...assets.map((asset) => transformToRollupOutputAsset(asset, changed))] };
3508
3531
  }
3509
- function handleOutputErrors(output) {
3510
- const rawErrors = output.errors;
3511
- if (rawErrors.length > 0) throw normalizeErrors(rawErrors);
3512
- }
3513
3532
  function transformToOutputBundle(context, output, changed) {
3514
3533
  const bundle = Object.fromEntries(transformToRollupOutput(output, changed).output.map((item) => [item.fileName, item]));
3515
3534
  return new Proxy(bundle, {
@@ -3615,7 +3634,7 @@ function bindingifyRenderError(args$1) {
3615
3634
  const { handler, meta } = normalizeHook(hook);
3616
3635
  return {
3617
3636
  plugin: async (ctx, err) => {
3618
- handler.call(new PluginContextImpl(args$1.outputOptions, ctx, args$1.plugin, args$1.pluginContextData, args$1.onLog, args$1.logLevel, args$1.watchMode), normalizeErrors(err));
3637
+ handler.call(new PluginContextImpl(args$1.outputOptions, ctx, args$1.plugin, args$1.pluginContextData, args$1.onLog, args$1.logLevel, args$1.watchMode), aggregateBindingErrorsIntoJsError(err));
3619
3638
  },
3620
3639
  meta: bindingifyPluginHookMeta(meta)
3621
3640
  };
@@ -3631,7 +3650,7 @@ function bindingifyGenerateBundle(args$1) {
3631
3650
  deleted: /* @__PURE__ */ new Set()
3632
3651
  };
3633
3652
  const context = new PluginContextImpl(args$1.outputOptions, ctx, args$1.plugin, args$1.pluginContextData, args$1.onLog, args$1.logLevel, args$1.watchMode);
3634
- const output = transformToOutputBundle(context, bundle, changed);
3653
+ const output = transformToOutputBundle(context, unwrapBindingResult(bundle), changed);
3635
3654
  await handler.call(context, args$1.pluginContextData.getOutputOptions(opts), output, isWrite);
3636
3655
  return collectChangedBundle(changed, output);
3637
3656
  },
@@ -3649,7 +3668,7 @@ function bindingifyWriteBundle(args$1) {
3649
3668
  deleted: /* @__PURE__ */ new Set()
3650
3669
  };
3651
3670
  const context = new PluginContextImpl(args$1.outputOptions, ctx, args$1.plugin, args$1.pluginContextData, args$1.onLog, args$1.logLevel, args$1.watchMode);
3652
- const output = transformToOutputBundle(context, bundle, changed);
3671
+ const output = transformToOutputBundle(context, unwrapBindingResult(bundle), changed);
3653
3672
  await handler.call(context, args$1.pluginContextData.getOutputOptions(opts), output);
3654
3673
  return collectChangedBundle(changed, output);
3655
3674
  },
@@ -3836,7 +3855,7 @@ function bindingifyPlugin(plugin, options, outputOptions, pluginContextData, nor
3836
3855
  const { plugin: watchChange, meta: watchChangeMeta } = bindingifyWatchChange(args$1);
3837
3856
  const { plugin: closeWatcher, meta: closeWatcherMeta } = bindingifyCloseWatcher(args$1);
3838
3857
  let hookUsage = extractHookUsage(plugin).inner();
3839
- const result = {
3858
+ return wrapHandlers({
3840
3859
  name: plugin.name,
3841
3860
  buildStart,
3842
3861
  buildStartMeta,
@@ -3883,8 +3902,7 @@ function bindingifyPlugin(plugin, options, outputOptions, pluginContextData, nor
3883
3902
  closeWatcher,
3884
3903
  closeWatcherMeta,
3885
3904
  hookUsage
3886
- };
3887
- return wrapHandlers(result);
3905
+ });
3888
3906
  }
3889
3907
  function wrapHandlers(plugin) {
3890
3908
  for (const hookName of [
@@ -4466,7 +4484,7 @@ var ChunkingContextImpl = class {
4466
4484
  //#endregion
4467
4485
  //#region src/utils/bindingify-output-options.ts
4468
4486
  function bindingifyOutputOptions(outputOptions) {
4469
- const { dir, format: format$1, exports, hashCharacters, sourcemap, sourcemapBaseUrl, sourcemapDebugIds, sourcemapIgnoreList, sourcemapPathTransform, name, assetFileNames, entryFileNames, chunkFileNames, cssEntryFileNames, cssChunkFileNames, banner, footer, intro, outro, esModule, globals, file, sanitizeFileName, preserveModules, virtualDirname, legalComments, preserveModulesRoot, manualChunks, topLevelVar } = outputOptions;
4487
+ const { dir, format: format$1, exports, hashCharacters, sourcemap, sourcemapBaseUrl, sourcemapDebugIds, sourcemapIgnoreList, sourcemapPathTransform, name, assetFileNames, entryFileNames, chunkFileNames, cssEntryFileNames, cssChunkFileNames, banner, footer, intro, outro, esModule, globals, generatedCode, file, sanitizeFileName, preserveModules, virtualDirname, legalComments, preserveModulesRoot, manualChunks, topLevelVar } = outputOptions;
4470
4488
  const advancedChunks = bindingifyAdvancedChunks(outputOptions.advancedChunks, manualChunks);
4471
4489
  return {
4472
4490
  dir,
@@ -4485,6 +4503,7 @@ function bindingifyOutputOptions(outputOptions) {
4485
4503
  outro: bindingifyAddon(outro),
4486
4504
  extend: outputOptions.extend,
4487
4505
  globals,
4506
+ generatedCode,
4488
4507
  esModule,
4489
4508
  name,
4490
4509
  assetFileNames: bindingifyAssetFilenames(assetFileNames),
@@ -4580,12 +4599,10 @@ async function createBundlerOptions(inputOptions, outputOptions, watchMode) {
4580
4599
  let plugins = [...normalizePlugins(inputPlugins, ANONYMOUS_PLUGIN_PREFIX), ...checkOutputPluginOption(normalizePlugins(normalizedOutputPlugins, ANONYMOUS_OUTPUT_PLUGIN_PREFIX), onLog)];
4581
4600
  const parallelPluginInitResult = void 0;
4582
4601
  try {
4583
- const bindingInputOptions = bindingifyInputOptions(plugins, inputOptions, outputOptions, normalizedOutputPlugins, onLog, logLevel, watchMode);
4584
- const bindingOutputOptions = bindingifyOutputOptions(outputOptions);
4585
4602
  return {
4586
4603
  bundlerOptions: {
4587
- inputOptions: bindingInputOptions,
4588
- outputOptions: bindingOutputOptions,
4604
+ inputOptions: bindingifyInputOptions(plugins, inputOptions, outputOptions, normalizedOutputPlugins, onLog, logLevel, watchMode),
4605
+ outputOptions: bindingifyOutputOptions(outputOptions),
4589
4606
  parallelPluginsRegistry: parallelPluginInitResult?.registry
4590
4607
  },
4591
4608
  inputOptions,
@@ -4598,18 +4615,6 @@ async function createBundlerOptions(inputOptions, outputOptions, watchMode) {
4598
4615
  }
4599
4616
  }
4600
4617
 
4601
- //#endregion
4602
- //#region src/utils/transform-hmr-patch-output.ts
4603
- function transformHmrPatchOutput(output) {
4604
- handleHmrPatchOutputErrors(output);
4605
- const { patch } = output;
4606
- return patch ?? void 0;
4607
- }
4608
- function handleHmrPatchOutputErrors(output) {
4609
- const rawErrors = output.errors;
4610
- if (rawErrors.length > 0) throw normalizeErrors(rawErrors);
4611
- }
4612
-
4613
4618
  //#endregion
4614
4619
  //#region src/api/rolldown/rolldown-build.ts
4615
4620
  Symbol.asyncDispose ??= Symbol("Symbol.asyncDispose");
@@ -4645,20 +4650,17 @@ var RolldownBuild = class RolldownBuild {
4645
4650
  }
4646
4651
  async scan() {
4647
4652
  const { impl } = await this.#getBundlerWithStopWorker({});
4648
- const output = await impl.scan();
4649
- return handleOutputErrors(output);
4653
+ unwrapBindingResult(await impl.scan());
4650
4654
  }
4651
4655
  async generate(outputOptions = {}) {
4652
4656
  validateOption("output", outputOptions);
4653
4657
  const { impl } = await this.#getBundlerWithStopWorker(outputOptions);
4654
- const output = await impl.generate();
4655
- return transformToRollupOutput(output);
4658
+ return transformToRollupOutput(unwrapBindingResult(await impl.generate()));
4656
4659
  }
4657
4660
  async write(outputOptions = {}) {
4658
4661
  validateOption("output", outputOptions);
4659
4662
  const { impl } = await this.#getBundlerWithStopWorker(outputOptions);
4660
- const output = await impl.write();
4661
- return transformToRollupOutput(output);
4663
+ return transformToRollupOutput(unwrapBindingResult(await impl.write()));
4662
4664
  }
4663
4665
  async close() {
4664
4666
  if (this.#bundlerImpl) {
@@ -4671,18 +4673,6 @@ var RolldownBuild = class RolldownBuild {
4671
4673
  async [Symbol.asyncDispose]() {
4672
4674
  await this.close();
4673
4675
  }
4674
- async generateHmrPatch(changedFiles) {
4675
- const ret = await this.#bundlerImpl.impl.generateHmrPatch(changedFiles);
4676
- switch (ret.type) {
4677
- case "Ok": return ret.field0;
4678
- case "Error": throw normalizeErrors(ret.field0);
4679
- default: throw new Error("Unknown error");
4680
- }
4681
- }
4682
- async hmrInvalidate(file, firstInvalidatedBy) {
4683
- const output = await this.#bundlerImpl.impl.hmrInvalidate(file, firstInvalidatedBy);
4684
- return transformHmrPatchOutput(output);
4685
- }
4686
4676
  get watchFiles() {
4687
4677
  return this.#bundlerImpl?.impl.getWatchFiles() ?? Promise.resolve([]);
4688
4678
  }
@@ -4692,8 +4682,7 @@ var RolldownBuild = class RolldownBuild {
4692
4682
  //#region src/api/rolldown/index.ts
4693
4683
  const rolldown = async (input) => {
4694
4684
  validateOption("input", input);
4695
- const inputOptions = await PluginDriver.callOptionsHook(input);
4696
- return new RolldownBuild(inputOptions);
4685
+ return new RolldownBuild(await PluginDriver.callOptionsHook(input));
4697
4686
  };
4698
4687
 
4699
4688
  //#endregion
@@ -4761,7 +4750,7 @@ var WatcherEmitter = class {
4761
4750
  const data = event.bundleErrorData();
4762
4751
  await listener({
4763
4752
  code: "ERROR",
4764
- error: normalizeErrors(data.error),
4753
+ error: aggregateBindingErrorsIntoJsError(data.error),
4765
4754
  result: data.result
4766
4755
  });
4767
4756
  break;
@@ -4817,12 +4806,10 @@ var Watcher = class {
4817
4806
  async function createWatcher(emitter, input) {
4818
4807
  const options = arraify(input);
4819
4808
  const bundlerOptions = await Promise.all(options.map((option) => arraify(option.output || {}).map(async (output) => {
4820
- const inputOptions = await PluginDriver.callOptionsHook(option, true);
4821
- return createBundlerOptions(inputOptions, output, true);
4809
+ return createBundlerOptions(await PluginDriver.callOptionsHook(option, true), output, true);
4822
4810
  })).flat());
4823
4811
  const notifyOptions = getValidNotifyOption(bundlerOptions);
4824
- const bindingWatcher = new BindingWatcher(bundlerOptions.map((option) => option.bundlerOptions), notifyOptions);
4825
- new Watcher(emitter, bindingWatcher, bundlerOptions.map((option) => option.stopWorkers)).start();
4812
+ new Watcher(emitter, new BindingWatcher(bundlerOptions.map((option) => option.bundlerOptions), notifyOptions), bundlerOptions.map((option) => option.stopWorkers)).start();
4826
4813
  }
4827
4814
  function getValidNotifyOption(bundlerOptions) {
4828
4815
  let result;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rolldown/browser",
3
- "version": "1.0.0-beta.40",
3
+ "version": "1.0.0-beta.42",
4
4
  "description": "Fast JavaScript/TypeScript bundler in Rust with Rollup-compatible API.",
5
5
  "homepage": "https://rolldown.rs/",
6
6
  "type": "module",