@stacksjs/cli 0.67.0 → 0.68.1

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
@@ -475,8 +475,8 @@ function replaceClose(index, string2, close, replace2, head = string2.slice(0, M
475
475
  function clearBleed(index, string2, open, close, replace2) {
476
476
  return index < 0 ? open + string2 + close : open + replaceClose(index, string2, close, replace2) + close;
477
477
  }
478
- function filterEmpty(open, close, replace2 = open, at2 = open.length + 1) {
479
- return (string2) => string2 || !(string2 === "" || string2 === undefined) ? clearBleed(("" + string2).indexOf(close, at2), string2, open, close, replace2) : "";
478
+ function filterEmpty(open, close, replace2 = open, at = open.length + 1) {
479
+ return (string2) => string2 || !(string2 === "" || string2 === undefined) ? clearBleed(("" + string2).indexOf(close, at), string2, open, close, replace2) : "";
480
480
  }
481
481
  function init(open, close, replace2) {
482
482
  return filterEmpty(`\x1B[${open}m`, `\x1B[${close}m`, replace2);
@@ -1296,7 +1296,7 @@ var init_prompt = __esm(() => {
1296
1296
  src = { cursor, scroll, erase, beep };
1297
1297
  picocolors = { exports: {} };
1298
1298
  tty2 = require$$0;
1299
- isColorSupported2 = !(("NO_COLOR" in process.env) || process.argv.includes("--no-color")) && (("FORCE_COLOR" in process.env) || process.argv.includes("--color") || process.platform === "win32" || tty2.isatty(1) && process.env.TERM !== "dumb" || ("CI" in process.env));
1299
+ isColorSupported2 = !(("NO_COLOR" in process.env) || process.argv.includes("--no-color")) && (("FORCE_COLOR" in process.env) || process.argv.includes("--color") || process.platform === "win32" || tty2.isatty(1) && true || ("CI" in process.env));
1300
1300
  picocolors.exports = createColors2();
1301
1301
  picocolors.exports.createColors = createColors2;
1302
1302
  picocolorsExports = picocolors.exports;
@@ -10634,7 +10634,7 @@ var X = l((ke, B) => {
10634
10634
  return t.isFile() && Kt(t, e);
10635
10635
  }
10636
10636
  function Kt(t, e) {
10637
- var { mode: n, uid: r, gid: s } = t, o = e.uid !== undefined ? e.uid : process.getuid && process.getuid(), i = e.gid !== undefined ? e.gid : process.getgid && process.getgid(), u = parseInt("100", 8), c = parseInt("010", 8), a = parseInt("001", 8), f = u | c, p = n & a || n & c && s === i || n & u && r === o || n & f && o === 0;
10637
+ var { mode: n, uid: r, gid: s } = t, o = e.uid !== undefined ? e.uid : process.getuid && process.getuid(), i = e.gid !== undefined ? e.gid : process.getgid && process.getgid(), a = parseInt("100", 8), c = parseInt("010", 8), u = parseInt("001", 8), f = a | c, p = n & u || n & c && s === i || n & a && r === o || n & f && o === 0;
10638
10638
  return p;
10639
10639
  }
10640
10640
  });
@@ -10671,7 +10671,7 @@ var et = l((Re, tt) => {
10671
10671
  var g = process.platform === "win32" || process.env.OSTYPE === "cygwin" || process.env.OSTYPE === "msys", Y = h("path"), Bt = g ? ";" : ":", V = U(), J = (t) => Object.assign(new Error(`not found: ${t}`), { code: "ENOENT" }), Q = (t, e) => {
10672
10672
  let n = e.colon || Bt, r = t.match(/\//) || g && t.match(/\\/) ? [""] : [
10673
10673
  ...g ? [process.cwd()] : [],
10674
- ...(e.path || "/home/runner/work/stacks/stacks/storage/framework/core/cli/node_modules/.bin:/home/runner/work/stacks/stacks/storage/framework/core/cli/node_modules/.bin:/home/runner/work/stacks/stacks/storage/framework/core/node_modules/.bin:/home/runner/work/stacks/stacks/storage/framework/node_modules/.bin:/home/runner/work/stacks/stacks/storage/node_modules/.bin:/home/runner/work/stacks/stacks/node_modules/.bin:/home/runner/work/stacks/node_modules/.bin:/home/runner/work/node_modules/.bin:/home/runner/node_modules/.bin:/home/node_modules/.bin:/node_modules/.bin:/home/runner/.bun/bin:/snap/bin:/home/runner/.local/bin:/opt/pipx_bin:/home/runner/.cargo/bin:/home/runner/.config/composer/vendor/bin:/usr/local/.ghcup/bin:/home/runner/.dotnet/tools:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin").split(n)
10674
+ ...(e.path || "/Users/chrisbreuer/Code/stacks/storage/framework/core/cli/node_modules/.bin:/Users/chrisbreuer/Code/stacks/storage/framework/core/cli/node_modules/.bin:/Users/chrisbreuer/Code/stacks/storage/framework/core/node_modules/.bin:/Users/chrisbreuer/Code/stacks/storage/framework/node_modules/.bin:/Users/chrisbreuer/Code/stacks/storage/node_modules/.bin:/Users/chrisbreuer/Code/stacks/node_modules/.bin:/Users/chrisbreuer/Code/node_modules/.bin:/Users/chrisbreuer/node_modules/.bin:/Users/node_modules/.bin:/node_modules/.bin:/Users/chrisbreuer/.bun/bin:/Users/chrisbreuer/.pkgx/libpng.org/v1.6.43/bin:/Users/chrisbreuer/.pkgx/freedesktop.org/pkg-config/v0.29.2/bin:/Users/chrisbreuer/.pkgx/sourceware.org/bzip2/v1.0.8/bin:/Users/chrisbreuer/.pkgx/libexpat.github.io/v2.6.2/bin:/Users/chrisbreuer/.pkgx/tukaani.org/xz/v5.6.1/bin:/Users/chrisbreuer/.pkgx/sqlite.org/v3.45.2/bin:/Users/chrisbreuer/.pkgx/gnu.org/readline/v8.2.0/bin:/Users/chrisbreuer/.pkgx/invisible-island.net/ncurses/v6.4.0/bin:/Users/chrisbreuer/.pkgx/tcl-lang.org/v8.6.14/bin:/Users/chrisbreuer/.pkgx/gnome.org/libxml2/v2.12.6/bin:/Users/chrisbreuer/.pkgx/pkgx.sh/v1.1.6/bin:/Users/chrisbreuer/.pkgx/openssl.org/v1.1.1w/bin:/Users/chrisbreuer/.pkgx/python.org/v3.11.9/bin:/Users/chrisbreuer/.pkgx/gnu.org/gettext/v0.21.1/bin:/Users/chrisbreuer/.pkgx/curl.se/v8.6.0/bin:/Users/chrisbreuer/.pkgx/perl.org/v5.38.2/bin:/Users/chrisbreuer/.pkgx/aws.amazon.com/cli/v2.17.13/bin:/Users/chrisbreuer/.pkgx/bun.sh/v1.1.33/bin:/Users/chrisbreuer/.pkgx/dns.lookup.dog/v0.1.0/bin:/Users/chrisbreuer/.pkgx/httpie.io/v3.2.2/bin:/Users/chrisbreuer/.pkgx/info-zip.org/zip/v3.0.0/bin:/Users/chrisbreuer/.pkgx/info-zip.org/unzip/v6.0.0/bin:/Users/chrisbreuer/.pkgx/mailpit.axllent.org/v1.15.0/bin:/Users/chrisbreuer/.pkgx/redis.io/v7.4.0/bin:/Users/chrisbreuer/.pkgx/git-scm.org/v2.44.0/bin:.:node_modules/.bin:vendor/bin:/opt/homebrew/bin:/Users/chrisbreuer/.composer/vendor/bin:/Users/chrisbreuer/.dotfiles/bin:/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin:/usr/local/share/cputil-osx-x64_v112/cputil-osx-x64:/Users/chrisbreuer/.bun/bin:.:node_modules/.bin:vendor/bin:/Users/chrisbreuer/.composer/vendor/bin:/Users/chrisbreuer/.dotfiles/bin:/Users/chrisbreuer/.local/bin:/Users/chrisbreuer/Library/Application Support/JetBrains/Toolbox/scripts:/Users/chrisbreuer/Library/Application Support/JetBrains/Toolbox/scripts").split(n)
10675
10675
  ], s = g ? e.pathExt || process.env.PATHEXT || ".EXE;.CMD;.BAT;.COM" : "", o = g ? s.split(n) : [""];
10676
10676
  return g && t.indexOf(".") !== -1 && o[0] !== "" && o.unshift(""), {
10677
10677
  pathEnv: r,
@@ -10680,30 +10680,30 @@ var et = l((Re, tt) => {
10680
10680
  };
10681
10681
  }, Z = (t, e, n) => {
10682
10682
  typeof e == "function" && (n = e, e = {}), e || (e = {});
10683
- let { pathEnv: r, pathExt: s, pathExtExe: o } = Q(t, e), i = [], u = (a) => new Promise((f, p) => {
10684
- if (a === r.length)
10683
+ let { pathEnv: r, pathExt: s, pathExtExe: o } = Q(t, e), i = [], a = (u) => new Promise((f, p) => {
10684
+ if (u === r.length)
10685
10685
  return e.all && i.length ? f(i) : p(J(t));
10686
- let d = r[a], w = /^".*"$/.test(d) ? d.slice(1, -1) : d, m = Y.join(w, t), b = !w && /^\.[\\\/]/.test(t) ? t.slice(0, 2) + m : m;
10687
- f(c(b, a, 0));
10688
- }), c = (a, f, p) => new Promise((d, w) => {
10686
+ let d = r[u], w = /^".*"$/.test(d) ? d.slice(1, -1) : d, m = Y.join(w, t), b = !w && /^\.[\\\/]/.test(t) ? t.slice(0, 2) + m : m;
10687
+ f(c(b, u, 0));
10688
+ }), c = (u, f, p) => new Promise((d, w) => {
10689
10689
  if (p === s.length)
10690
- return d(u(f + 1));
10690
+ return d(a(f + 1));
10691
10691
  let m = s[p];
10692
- V(a + m, { pathExt: o }, (b, Ot) => {
10692
+ V(u + m, { pathExt: o }, (b, Ot) => {
10693
10693
  if (!b && Ot)
10694
10694
  if (e.all)
10695
- i.push(a + m);
10695
+ i.push(u + m);
10696
10696
  else
10697
- return d(a + m);
10698
- return d(c(a, f, p + 1));
10697
+ return d(u + m);
10698
+ return d(c(u, f, p + 1));
10699
10699
  });
10700
10700
  });
10701
- return n ? u(0).then((a) => n(null, a), n) : u(0);
10701
+ return n ? a(0).then((u) => n(null, u), n) : a(0);
10702
10702
  }, Xt = (t, e) => {
10703
10703
  e = e || {};
10704
10704
  let { pathEnv: n, pathExt: r, pathExtExe: s } = Q(t, e), o = [];
10705
10705
  for (let i = 0;i < n.length; i++) {
10706
- let u = n[i], c = /^".*"$/.test(u) ? u.slice(1, -1) : u, a = Y.join(c, t), f = !c && /^\.[\\\/]/.test(t) ? t.slice(0, 2) + a : a;
10706
+ let a = n[i], c = /^".*"$/.test(a) ? a.slice(1, -1) : a, u = Y.join(c, t), f = !c && /^\.[\\\/]/.test(t) ? t.slice(0, 2) + u : u;
10707
10707
  for (let p = 0;p < r.length; p++) {
10708
10708
  let d = f + r[p];
10709
10709
  try {
@@ -10759,19 +10759,19 @@ var ct = l((Ne, it) => {
10759
10759
  }
10760
10760
  it.exports = Yt;
10761
10761
  });
10762
- var at = l((qe, C) => {
10763
- var P = /([()\][%!^"`<>&|;, *?])/g;
10762
+ var ut = l((qe, P) => {
10763
+ var C = /([()\][%!^"`<>&|;, *?])/g;
10764
10764
  function Vt(t) {
10765
- return t = t.replace(P, "^$1"), t;
10765
+ return t = t.replace(C, "^$1"), t;
10766
10766
  }
10767
10767
  function Jt(t, e) {
10768
- return t = `${t}`, t = t.replace(/(\\*)"/g, '$1$1\\"'), t = t.replace(/(\\*)$/, "$1$1"), t = `"${t}"`, t = t.replace(P, "^$1"), e && (t = t.replace(P, "^$1")), t;
10768
+ return t = `${t}`, t = t.replace(/(\\*)"/g, '$1$1\\"'), t = t.replace(/(\\*)$/, "$1$1"), t = `"${t}"`, t = t.replace(C, "^$1"), e && (t = t.replace(C, "^$1")), t;
10769
10769
  }
10770
- C.exports.command = Vt;
10771
- C.exports.argument = Jt;
10770
+ P.exports.command = Vt;
10771
+ P.exports.argument = Jt;
10772
10772
  });
10773
- var lt = l((Ie, ut) => {
10774
- ut.exports = /^#!(.*)/;
10773
+ var lt = l((Ie, at) => {
10774
+ at.exports = /^#!(.*)/;
10775
10775
  });
10776
10776
  var dt = l((Le, pt) => {
10777
10777
  var Qt = lt();
@@ -10796,7 +10796,7 @@ var ht = l((je, ft) => {
10796
10796
  ft.exports = te;
10797
10797
  });
10798
10798
  var wt = l((Fe, Et) => {
10799
- var ee = h("path"), mt = ct(), gt = at(), ne = ht(), re = process.platform === "win32", se = /\.(?:com|exe)$/i, oe = /node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;
10799
+ var ee = h("path"), mt = ct(), gt = ut(), ne = ht(), re = process.platform === "win32", se = /\.(?:com|exe)$/i, oe = /node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;
10800
10800
  function ie(t) {
10801
10801
  t.file = mt(t);
10802
10802
  let e = t.file && ne(t.file);
@@ -10814,7 +10814,7 @@ var wt = l((Fe, Et) => {
10814
10814
  }
10815
10815
  return t;
10816
10816
  }
10817
- function ae(t, e, n) {
10817
+ function ue(t, e, n) {
10818
10818
  e && !Array.isArray(e) && (n = e, e = null), e = e ? e.slice(0) : [], n = Object.assign({}, n);
10819
10819
  let r = {
10820
10820
  command: t,
@@ -10828,7 +10828,7 @@ var wt = l((Fe, Et) => {
10828
10828
  };
10829
10829
  return n.shell ? r : ce(r);
10830
10830
  }
10831
- Et.exports = ae;
10831
+ Et.exports = ue;
10832
10832
  });
10833
10833
  var bt = l((ze, vt) => {
10834
10834
  var S = process.platform === "win32";
@@ -10841,7 +10841,7 @@ var bt = l((ze, vt) => {
10841
10841
  spawnargs: t.args
10842
10842
  });
10843
10843
  }
10844
- function ue(t, e) {
10844
+ function ae(t, e) {
10845
10845
  if (!S)
10846
10846
  return;
10847
10847
  let n = t.emit;
@@ -10861,13 +10861,13 @@ var bt = l((ze, vt) => {
10861
10861
  return S && t === 1 && !e.file ? k(e.original, "spawnSync") : null;
10862
10862
  }
10863
10863
  vt.exports = {
10864
- hookChildProcess: ue,
10864
+ hookChildProcess: ae,
10865
10865
  verifyENOENT: xt,
10866
10866
  verifyENOENTSync: le,
10867
10867
  notFoundError: k
10868
10868
  };
10869
10869
  });
10870
- var Pt = l((He, E) => {
10870
+ var Ct = l((He, E) => {
10871
10871
  var yt = h("child_process"), T = wt(), A = bt();
10872
10872
  function _t(t, e, n) {
10873
10873
  let r = T(t, e, n), s = yt.spawn(r.command, r.args, r.options);
@@ -10916,7 +10916,7 @@ var L = (t) => {
10916
10916
  s.pipe(n, { end: false }), s.on("end", r);
10917
10917
  return n;
10918
10918
  };
10919
- var Ct = Nt(Pt(), 1);
10919
+ var Pt = Nt(Ct(), 1);
10920
10920
  var x = class extends Error {
10921
10921
  result;
10922
10922
  output;
@@ -11028,7 +11028,8 @@ var R = class {
11028
11028
  throw this._thrownError;
11029
11029
  let s = {
11030
11030
  stderr: n,
11031
- stdout: r
11031
+ stdout: r,
11032
+ exitCode: this.exitCode
11032
11033
  };
11033
11034
  if (this._options.throwOnError && this.exitCode !== 0 && this.exitCode !== undefined)
11034
11035
  throw new x(this, s);
@@ -11045,10 +11046,10 @@ var R = class {
11045
11046
  ...n.nodeOptions
11046
11047
  }, s = [];
11047
11048
  this._resetState(), n.timeout !== undefined && s.push(AbortSignal.timeout(n.timeout)), n.signal !== undefined && s.push(n.signal), n.persist === true && (r.detached = true), s.length > 0 && (r.signal = xe(s)), r.env = I(e, r.env);
11048
- let { command: o, args: i } = we(this._command, this._args), u = (0, Ct._parse)(o, i, r), c = de(u.command, u.args, u.options);
11049
+ let { command: o, args: i } = we(this._command, this._args), a = (0, Pt._parse)(o, i, r), c = de(a.command, a.args, a.options);
11049
11050
  if (c.stderr && (this._streamErr = c.stderr), c.stdout && (this._streamOut = c.stdout), this._process = c, c.once("error", this._onError), c.once("close", this._onClose), n.stdin !== undefined && c.stdin && n.stdin.process) {
11050
- let { stdout: a } = n.stdin.process;
11051
- a && a.pipe(c.stdin);
11051
+ let { stdout: u } = n.stdin.process;
11052
+ u && u.pipe(c.stdin);
11052
11053
  }
11053
11054
  }
11054
11055
  _resetState() {
@@ -11742,6 +11743,7 @@ __export(exports_config, {
11742
11743
  services: () => services2,
11743
11744
  security: () => security2,
11744
11745
  searchEngine: () => searchEngine,
11746
+ saas: () => saas2,
11745
11747
  queue: () => queue3,
11746
11748
  ports: () => ports2,
11747
11749
  payment: () => payment,
@@ -12703,6 +12705,73 @@ var config = {
12703
12705
  }
12704
12706
  }
12705
12707
  },
12708
+ saas: {
12709
+ plans: [
12710
+ {
12711
+ productName: "Stacks Hobby",
12712
+ description: "All the Stacks features.",
12713
+ pricing: [
12714
+ {
12715
+ key: "stacks_hobby_monthly",
12716
+ price: 3900,
12717
+ interval: "month",
12718
+ currency: "usd"
12719
+ },
12720
+ {
12721
+ key: "stacks_hobby_yearly",
12722
+ price: 37900,
12723
+ interval: "year",
12724
+ currency: "usd"
12725
+ }
12726
+ ],
12727
+ metadata: {
12728
+ createdBy: "admin",
12729
+ version: "1.0.0"
12730
+ }
12731
+ },
12732
+ {
12733
+ productName: "Stacks Pro",
12734
+ description: "All the Stacks features, including being able to invite team members.",
12735
+ pricing: [
12736
+ {
12737
+ key: "stacks_pro_monthly",
12738
+ price: 5900,
12739
+ interval: "month",
12740
+ currency: "usd"
12741
+ },
12742
+ {
12743
+ key: "stacks_pro_yearly",
12744
+ price: 57900,
12745
+ interval: "year",
12746
+ currency: "usd"
12747
+ }
12748
+ ],
12749
+ metadata: {
12750
+ createdBy: "admin",
12751
+ version: "1.0.0"
12752
+ }
12753
+ }
12754
+ ],
12755
+ webhook: {
12756
+ endpoint: "/webhooks/stripe",
12757
+ secret: ""
12758
+ },
12759
+ currencies: ["usd"],
12760
+ coupons: [
12761
+ {
12762
+ code: "SUMMER2024",
12763
+ amountOff: 500,
12764
+ duration: "once"
12765
+ }
12766
+ ],
12767
+ products: [
12768
+ {
12769
+ name: "Stacks Pro",
12770
+ description: "All the Stacks features.",
12771
+ images: ["url_to_image"]
12772
+ }
12773
+ ]
12774
+ },
12706
12775
  searchEngine: {
12707
12776
  driver: "opensearch"
12708
12777
  },
@@ -16538,39 +16607,73 @@ var security_default = {
16538
16607
 
16539
16608
  // ../../../../config/cloud.ts
16540
16609
  var cloud_default = {
16541
- type: "serverless",
16542
- driver: "aws",
16543
- firewall: security_default.firewall,
16544
- environments: ["production", "staging", "development"],
16545
- storage: {},
16546
- api: {
16547
- prefix: env3.API_PREFIX || "api",
16548
- description: "My awesome Stacks API",
16549
- deploy: true,
16550
- memorySize: 512,
16551
- prewarm: 10,
16552
- timeout: 30
16553
- },
16554
- cdn: {
16555
- compress: true,
16556
- allowedMethods: "ALL",
16557
- cachedMethods: "GET_HEAD",
16558
- originShieldRegion: "us-east-1",
16559
- minTtl: 0,
16560
- defaultTtl: 86400,
16561
- maxTtl: 31536000,
16562
- cookieBehavior: "none",
16563
- allowList: {
16564
- cookies: [],
16565
- headers: [],
16566
- queryStrings: []
16610
+ sites: {
16611
+ root: "stacksjs.org",
16612
+ path: "dist",
16613
+ modals: {
16614
+ domain: "modals.stacksjs.org",
16615
+ path: "dist"
16567
16616
  },
16568
- realtimeLogs: {
16569
- enabled: true,
16570
- samplingRate: 1
16617
+ stepper: {
16618
+ domain: "stepper.stacksjs.org",
16619
+ path: "dist"
16620
+ },
16621
+ notification: {
16622
+ domain: "notification.stacksjs.org",
16623
+ path: "dist"
16624
+ },
16625
+ docs: {
16626
+ domain: "docs.stacksjs.org",
16627
+ path: "dist"
16628
+ },
16629
+ tlsx: {
16630
+ domain: "tlsx.stacksjs.org",
16631
+ path: "dist"
16632
+ },
16633
+ dtsx: {
16634
+ domain: "dtsx.stacksjs.org",
16635
+ path: "dist"
16636
+ },
16637
+ spreadsheet: {
16638
+ domain: "spreadsheet.stacksjs.org",
16639
+ path: "dist"
16571
16640
  }
16572
16641
  },
16573
- fileSystem: true
16642
+ infrastructure: {
16643
+ type: "serverless",
16644
+ driver: "aws",
16645
+ firewall: security_default.firewall,
16646
+ environments: ["production", "staging", "development"],
16647
+ storage: {},
16648
+ api: {
16649
+ prefix: env3.API_PREFIX || "api",
16650
+ description: "My awesome Stacks API",
16651
+ deploy: true,
16652
+ memorySize: 512,
16653
+ prewarm: 10,
16654
+ timeout: 30
16655
+ },
16656
+ cdn: {
16657
+ compress: true,
16658
+ allowedMethods: "ALL",
16659
+ cachedMethods: "GET_HEAD",
16660
+ originShieldRegion: "us-east-1",
16661
+ minTtl: 0,
16662
+ defaultTtl: 86400,
16663
+ maxTtl: 31536000,
16664
+ cookieBehavior: "none",
16665
+ allowList: {
16666
+ cookies: [],
16667
+ headers: [],
16668
+ queryStrings: []
16669
+ },
16670
+ realtimeLogs: {
16671
+ enabled: true,
16672
+ samplingRate: 1
16673
+ }
16674
+ },
16675
+ fileSystem: true
16676
+ }
16574
16677
  };
16575
16678
 
16576
16679
  // ../../../../config/database.ts
@@ -16904,7 +17007,11 @@ var notification_default = {
16904
17007
 
16905
17008
  // ../../../../config/payment.ts
16906
17009
  var payment_default = {
16907
- driver: "stripe"
17010
+ driver: "stripe",
17011
+ stripe: {
17012
+ publishableKey: env3.STRIPE_PUBLISHABLE_KEY || "",
17013
+ secretKey: env3.STRIPE_SECRET_KEY || ""
17014
+ }
16908
17015
  };
16909
17016
 
16910
17017
  // ../../../../config/ports.ts
@@ -16941,6 +17048,75 @@ var queue_default = {
16941
17048
  }
16942
17049
  };
16943
17050
 
17051
+ // ../../../../config/saas.ts
17052
+ var saas_default = {
17053
+ plans: [
17054
+ {
17055
+ productName: "Stacks Hobby",
17056
+ description: "All the Stacks features.",
17057
+ pricing: [
17058
+ {
17059
+ key: "stacks_hobby_monthly",
17060
+ price: 3900,
17061
+ interval: "month",
17062
+ currency: "usd"
17063
+ },
17064
+ {
17065
+ key: "stacks_hobby_yearly",
17066
+ price: 37900,
17067
+ interval: "year",
17068
+ currency: "usd"
17069
+ }
17070
+ ],
17071
+ metadata: {
17072
+ createdBy: "admin",
17073
+ version: "1.0.0"
17074
+ }
17075
+ },
17076
+ {
17077
+ productName: "Stacks Pro",
17078
+ description: "All the Stacks features, including being able to invite team members.",
17079
+ pricing: [
17080
+ {
17081
+ key: "stacks_pro_monthly",
17082
+ price: 5900,
17083
+ interval: "month",
17084
+ currency: "usd"
17085
+ },
17086
+ {
17087
+ key: "stacks_pro_yearly",
17088
+ price: 57900,
17089
+ interval: "year",
17090
+ currency: "usd"
17091
+ }
17092
+ ],
17093
+ metadata: {
17094
+ createdBy: "admin",
17095
+ version: "1.0.0"
17096
+ }
17097
+ }
17098
+ ],
17099
+ webhook: {
17100
+ endpoint: "/webhooks/stripe",
17101
+ secret: ""
17102
+ },
17103
+ currencies: ["usd"],
17104
+ coupons: [
17105
+ {
17106
+ code: "SUMMER2024",
17107
+ amountOff: 500,
17108
+ duration: "once"
17109
+ }
17110
+ ],
17111
+ products: [
17112
+ {
17113
+ name: "Stacks Pro",
17114
+ description: "All the Stacks features.",
17115
+ images: ["url_to_image"]
17116
+ }
17117
+ ]
17118
+ };
17119
+
16944
17120
  // ../../../../config/search-engine.ts
16945
17121
  var search_engine_default = {
16946
17122
  driver: "opensearch"
@@ -17053,6 +17229,7 @@ var config2 = {
17053
17229
  queue: queue_default,
17054
17230
  payment: payment_default,
17055
17231
  ports: ports_default,
17232
+ saas: saas_default,
17056
17233
  searchEngine: search_engine_default,
17057
17234
  security: security_default,
17058
17235
  services: services_default,
@@ -17256,6 +17433,7 @@ var payment = config3.payment;
17256
17433
  var ports2 = config3.ports;
17257
17434
  var queue3 = config3.queue;
17258
17435
  var security2 = config3.security;
17436
+ var saas2 = config3.saas;
17259
17437
  var searchEngine = config3.searchEngine;
17260
17438
  var services2 = config3.services;
17261
17439
  var storage2 = config3.storage;
@@ -17352,7 +17530,6 @@ async function writeToLogFile(message, options) {
17352
17530
  try {
17353
17531
  await access(logFile);
17354
17532
  } catch {
17355
- console.log("Creating log file directory...", logFile);
17356
17533
  await mkdir(dirname2(logFile), { recursive: true });
17357
17534
  }
17358
17535
  await appendFile(logFile, formattedMessage);
@@ -17397,7 +17574,7 @@ function __awaiter(thisArg, _arguments, P2, generator) {
17397
17574
  function step(result) {
17398
17575
  result.done ? resolve3(result.value) : adopt(result.value).then(fulfilled, rejected);
17399
17576
  }
17400
- step((generator = generator.apply(thisArg, [])).next());
17577
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
17401
17578
  });
17402
17579
  }
17403
17580
  function __values(o) {
@@ -17421,16 +17598,24 @@ function __asyncGenerator(thisArg, _arguments, generator) {
17421
17598
  if (!Symbol.asyncIterator)
17422
17599
  throw new TypeError("Symbol.asyncIterator is not defined.");
17423
17600
  var g2 = generator.apply(thisArg, _arguments || []), i, q3 = [];
17424
- return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() {
17601
+ return i = Object.create((typeof AsyncIterator === "function" ? AsyncIterator : Object).prototype), verb("next"), verb("throw"), verb("return", awaitReturn), i[Symbol.asyncIterator] = function() {
17425
17602
  return this;
17426
17603
  }, i;
17427
- function verb(n) {
17428
- if (g2[n])
17604
+ function awaitReturn(f2) {
17605
+ return function(v2) {
17606
+ return Promise.resolve(v2).then(f2, reject);
17607
+ };
17608
+ }
17609
+ function verb(n, f2) {
17610
+ if (g2[n]) {
17429
17611
  i[n] = function(v2) {
17430
17612
  return new Promise(function(a, b2) {
17431
17613
  q3.push([n, v2, a, b2]) > 1 || resume(n, v2);
17432
17614
  });
17433
17615
  };
17616
+ if (f2)
17617
+ i[n] = f2(i[n]);
17618
+ }
17434
17619
  }
17435
17620
  function resume(n, v2) {
17436
17621
  try {
@@ -17462,7 +17647,7 @@ function __asyncDelegator(o) {
17462
17647
  }, i;
17463
17648
  function verb(n, f2) {
17464
17649
  i[n] = o[n] ? function(v2) {
17465
- return (p3 = !p3) ? { value: __await(o[n](v2)), done: n === "return" } : f2 ? f2(v2) : v2;
17650
+ return (p3 = !p3) ? { value: __await(o[n](v2)), done: false } : f2 ? f2(v2) : v2;
17466
17651
  } : f2;
17467
17652
  }
17468
17653
  }
@@ -17486,7 +17671,6 @@ function __asyncValues(o) {
17486
17671
  }, reject);
17487
17672
  }
17488
17673
  }
17489
-
17490
17674
  class ResultAsync {
17491
17675
  constructor(res) {
17492
17676
  this._promise = res;
@@ -17587,6 +17771,15 @@ class ResultAsync {
17587
17771
  then(successCallback, failureCallback) {
17588
17772
  return this._promise.then(successCallback, failureCallback);
17589
17773
  }
17774
+ [Symbol.asyncIterator]() {
17775
+ return __asyncGenerator(this, arguments, function* _a() {
17776
+ const result = yield __await(this._promise);
17777
+ if (result.isErr()) {
17778
+ yield yield __await(errAsync(result.error));
17779
+ }
17780
+ return yield __await(result.value);
17781
+ });
17782
+ }
17590
17783
  }
17591
17784
  var errAsync = (err) => new ResultAsync(Promise.resolve(new Err(err)));
17592
17785
  var fromPromise = ResultAsync.fromPromise;
@@ -17704,6 +17897,9 @@ class Ok {
17704
17897
  _unsafeUnwrapErr(config5) {
17705
17898
  throw createNeverThrowError("Called `_unsafeUnwrapErr` on an Ok", this, config5);
17706
17899
  }
17900
+ *[Symbol.iterator]() {
17901
+ return this.value;
17902
+ }
17707
17903
  }
17708
17904
 
17709
17905
  class Err {
@@ -17762,6 +17958,11 @@ class Err {
17762
17958
  _unsafeUnwrapErr(_2) {
17763
17959
  return this.error;
17764
17960
  }
17961
+ *[Symbol.iterator]() {
17962
+ const self2 = this;
17963
+ yield self2;
17964
+ return self2;
17965
+ }
17765
17966
  }
17766
17967
  var fromThrowable = Result.fromThrowable;
17767
17968
  // src/console.ts
@@ -18067,7 +18268,7 @@ function link(text2, url) {
18067
18268
  return options.enabled ? OSC + "8" + SEP + SEP + url + BEL + text2 + OSC + "8" + SEP + SEP + BEL : `${text2} (\u200B${url}\u200B)`;
18068
18269
  }
18069
18270
  // package.json
18070
- var version = "0.67.0";
18271
+ var version = "0.68.1";
18071
18272
 
18072
18273
  // src/helpers.ts
18073
18274
  async function intro(command2, options2) {
@@ -18234,7 +18435,7 @@ function buddyOptions(options2) {
18234
18435
  return buddyOptions(process10.argv.slice(2));
18235
18436
  }
18236
18437
  // ../../../../node_modules/ora/index.js
18237
- import process19 from "process";
18438
+ import process18 from "process";
18238
18439
 
18239
18440
  // ../../../../node_modules/chalk/source/vendor/ansi-styles/index.js
18240
18441
  var ANSI_BACKGROUND_OFFSET = 10;
@@ -19055,507 +19256,27 @@ var cli_cursor_default = cliCursor;
19055
19256
  // ../../../../node_modules/ora/index.js
19056
19257
  var import_cli_spinners = __toESM(require_cli_spinners(), 1);
19057
19258
 
19058
- // ../../../../node_modules/log-symbols/node_modules/chalk/source/vendor/ansi-styles/index.js
19059
- var ANSI_BACKGROUND_OFFSET2 = 10;
19060
- var wrapAnsi162 = (offset = 0) => (code) => `\x1B[${code + offset}m`;
19061
- var wrapAnsi2562 = (offset = 0) => (code) => `\x1B[${38 + offset};5;${code}m`;
19062
- var wrapAnsi16m2 = (offset = 0) => (red2, green2, blue2) => `\x1B[${38 + offset};2;${red2};${green2};${blue2}m`;
19063
- var styles3 = {
19064
- modifier: {
19065
- reset: [0, 0],
19066
- bold: [1, 22],
19067
- dim: [2, 22],
19068
- italic: [3, 23],
19069
- underline: [4, 24],
19070
- overline: [53, 55],
19071
- inverse: [7, 27],
19072
- hidden: [8, 28],
19073
- strikethrough: [9, 29]
19074
- },
19075
- color: {
19076
- black: [30, 39],
19077
- red: [31, 39],
19078
- green: [32, 39],
19079
- yellow: [33, 39],
19080
- blue: [34, 39],
19081
- magenta: [35, 39],
19082
- cyan: [36, 39],
19083
- white: [37, 39],
19084
- blackBright: [90, 39],
19085
- gray: [90, 39],
19086
- grey: [90, 39],
19087
- redBright: [91, 39],
19088
- greenBright: [92, 39],
19089
- yellowBright: [93, 39],
19090
- blueBright: [94, 39],
19091
- magentaBright: [95, 39],
19092
- cyanBright: [96, 39],
19093
- whiteBright: [97, 39]
19094
- },
19095
- bgColor: {
19096
- bgBlack: [40, 49],
19097
- bgRed: [41, 49],
19098
- bgGreen: [42, 49],
19099
- bgYellow: [43, 49],
19100
- bgBlue: [44, 49],
19101
- bgMagenta: [45, 49],
19102
- bgCyan: [46, 49],
19103
- bgWhite: [47, 49],
19104
- bgBlackBright: [100, 49],
19105
- bgGray: [100, 49],
19106
- bgGrey: [100, 49],
19107
- bgRedBright: [101, 49],
19108
- bgGreenBright: [102, 49],
19109
- bgYellowBright: [103, 49],
19110
- bgBlueBright: [104, 49],
19111
- bgMagentaBright: [105, 49],
19112
- bgCyanBright: [106, 49],
19113
- bgWhiteBright: [107, 49]
19114
- }
19115
- };
19116
- var modifierNames2 = Object.keys(styles3.modifier);
19117
- var foregroundColorNames2 = Object.keys(styles3.color);
19118
- var backgroundColorNames2 = Object.keys(styles3.bgColor);
19119
- var colorNames2 = [...foregroundColorNames2, ...backgroundColorNames2];
19120
- function assembleStyles2() {
19121
- const codes = new Map;
19122
- for (const [groupName, group2] of Object.entries(styles3)) {
19123
- for (const [styleName, style] of Object.entries(group2)) {
19124
- styles3[styleName] = {
19125
- open: `\x1B[${style[0]}m`,
19126
- close: `\x1B[${style[1]}m`
19127
- };
19128
- group2[styleName] = styles3[styleName];
19129
- codes.set(style[0], style[1]);
19130
- }
19131
- Object.defineProperty(styles3, groupName, {
19132
- value: group2,
19133
- enumerable: false
19134
- });
19135
- }
19136
- Object.defineProperty(styles3, "codes", {
19137
- value: codes,
19138
- enumerable: false
19139
- });
19140
- styles3.color.close = "\x1B[39m";
19141
- styles3.bgColor.close = "\x1B[49m";
19142
- styles3.color.ansi = wrapAnsi162();
19143
- styles3.color.ansi256 = wrapAnsi2562();
19144
- styles3.color.ansi16m = wrapAnsi16m2();
19145
- styles3.bgColor.ansi = wrapAnsi162(ANSI_BACKGROUND_OFFSET2);
19146
- styles3.bgColor.ansi256 = wrapAnsi2562(ANSI_BACKGROUND_OFFSET2);
19147
- styles3.bgColor.ansi16m = wrapAnsi16m2(ANSI_BACKGROUND_OFFSET2);
19148
- Object.defineProperties(styles3, {
19149
- rgbToAnsi256: {
19150
- value(red2, green2, blue2) {
19151
- if (red2 === green2 && green2 === blue2) {
19152
- if (red2 < 8) {
19153
- return 16;
19154
- }
19155
- if (red2 > 248) {
19156
- return 231;
19157
- }
19158
- return Math.round((red2 - 8) / 247 * 24) + 232;
19159
- }
19160
- return 16 + 36 * Math.round(red2 / 255 * 5) + 6 * Math.round(green2 / 255 * 5) + Math.round(blue2 / 255 * 5);
19161
- },
19162
- enumerable: false
19163
- },
19164
- hexToRgb: {
19165
- value(hex) {
19166
- const matches = /[a-f\d]{6}|[a-f\d]{3}/i.exec(hex.toString(16));
19167
- if (!matches) {
19168
- return [0, 0, 0];
19169
- }
19170
- let [colorString] = matches;
19171
- if (colorString.length === 3) {
19172
- colorString = [...colorString].map((character) => character + character).join("");
19173
- }
19174
- const integer = Number.parseInt(colorString, 16);
19175
- return [
19176
- integer >> 16 & 255,
19177
- integer >> 8 & 255,
19178
- integer & 255
19179
- ];
19180
- },
19181
- enumerable: false
19182
- },
19183
- hexToAnsi256: {
19184
- value: (hex) => styles3.rgbToAnsi256(...styles3.hexToRgb(hex)),
19185
- enumerable: false
19186
- },
19187
- ansi256ToAnsi: {
19188
- value(code) {
19189
- if (code < 8) {
19190
- return 30 + code;
19191
- }
19192
- if (code < 16) {
19193
- return 90 + (code - 8);
19194
- }
19195
- let red2;
19196
- let green2;
19197
- let blue2;
19198
- if (code >= 232) {
19199
- red2 = ((code - 232) * 10 + 8) / 255;
19200
- green2 = red2;
19201
- blue2 = red2;
19202
- } else {
19203
- code -= 16;
19204
- const remainder = code % 36;
19205
- red2 = Math.floor(code / 36) / 5;
19206
- green2 = Math.floor(remainder / 6) / 5;
19207
- blue2 = remainder % 6 / 5;
19208
- }
19209
- const value = Math.max(red2, green2, blue2) * 2;
19210
- if (value === 0) {
19211
- return 30;
19212
- }
19213
- let result = 30 + (Math.round(blue2) << 2 | Math.round(green2) << 1 | Math.round(red2));
19214
- if (value === 2) {
19215
- result += 60;
19216
- }
19217
- return result;
19218
- },
19219
- enumerable: false
19220
- },
19221
- rgbToAnsi: {
19222
- value: (red2, green2, blue2) => styles3.ansi256ToAnsi(styles3.rgbToAnsi256(red2, green2, blue2)),
19223
- enumerable: false
19224
- },
19225
- hexToAnsi: {
19226
- value: (hex) => styles3.ansi256ToAnsi(styles3.hexToAnsi256(hex)),
19227
- enumerable: false
19228
- }
19229
- });
19230
- return styles3;
19231
- }
19232
- var ansiStyles2 = assembleStyles2();
19233
- var ansi_styles_default2 = ansiStyles2;
19234
-
19235
- // ../../../../node_modules/log-symbols/node_modules/chalk/source/vendor/supports-color/index.js
19236
- import process15 from "process";
19237
- import os2 from "os";
19238
- import tty4 from "tty";
19239
- function hasFlag2(flag, argv2 = globalThis.Deno ? globalThis.Deno.args : process15.argv) {
19240
- const prefix = flag.startsWith("-") ? "" : flag.length === 1 ? "-" : "--";
19241
- const position = argv2.indexOf(prefix + flag);
19242
- const terminatorPosition = argv2.indexOf("--");
19243
- return position !== -1 && (terminatorPosition === -1 || position < terminatorPosition);
19244
- }
19245
- var { env: env5 } = process15;
19246
- var flagForceColor2;
19247
- if (hasFlag2("no-color") || hasFlag2("no-colors") || hasFlag2("color=false") || hasFlag2("color=never")) {
19248
- flagForceColor2 = 0;
19249
- } else if (hasFlag2("color") || hasFlag2("colors") || hasFlag2("color=true") || hasFlag2("color=always")) {
19250
- flagForceColor2 = 1;
19251
- }
19252
- function envForceColor2() {
19253
- if ("FORCE_COLOR" in env5) {
19254
- if (env5.FORCE_COLOR === "true") {
19255
- return 1;
19256
- }
19257
- if (env5.FORCE_COLOR === "false") {
19258
- return 0;
19259
- }
19260
- return env5.FORCE_COLOR.length === 0 ? 1 : Math.min(Number.parseInt(env5.FORCE_COLOR, 10), 3);
19261
- }
19262
- }
19263
- function translateLevel2(level) {
19264
- if (level === 0) {
19265
- return false;
19266
- }
19267
- return {
19268
- level,
19269
- hasBasic: true,
19270
- has256: level >= 2,
19271
- has16m: level >= 3
19272
- };
19273
- }
19274
- function _supportsColor2(haveStream, { streamIsTTY, sniffFlags = true } = {}) {
19275
- const noFlagForceColor = envForceColor2();
19276
- if (noFlagForceColor !== undefined) {
19277
- flagForceColor2 = noFlagForceColor;
19278
- }
19279
- const forceColor = sniffFlags ? flagForceColor2 : noFlagForceColor;
19280
- if (forceColor === 0) {
19281
- return 0;
19282
- }
19283
- if (sniffFlags) {
19284
- if (hasFlag2("color=16m") || hasFlag2("color=full") || hasFlag2("color=truecolor")) {
19285
- return 3;
19286
- }
19287
- if (hasFlag2("color=256")) {
19288
- return 2;
19289
- }
19290
- }
19291
- if ("TF_BUILD" in env5 && "AGENT_NAME" in env5) {
19292
- return 1;
19293
- }
19294
- if (haveStream && !streamIsTTY && forceColor === undefined) {
19295
- return 0;
19296
- }
19297
- const min = forceColor || 0;
19298
- if (env5.TERM === "dumb") {
19299
- return min;
19300
- }
19301
- if (process15.platform === "win32") {
19302
- const osRelease = os2.release().split(".");
19303
- if (Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586) {
19304
- return Number(osRelease[2]) >= 14931 ? 3 : 2;
19305
- }
19306
- return 1;
19307
- }
19308
- if ("CI" in env5) {
19309
- if ("GITHUB_ACTIONS" in env5 || "GITEA_ACTIONS" in env5) {
19310
- return 3;
19311
- }
19312
- if (["TRAVIS", "CIRCLECI", "APPVEYOR", "GITLAB_CI", "BUILDKITE", "DRONE"].some((sign) => (sign in env5)) || env5.CI_NAME === "codeship") {
19313
- return 1;
19314
- }
19315
- return min;
19316
- }
19317
- if ("TEAMCITY_VERSION" in env5) {
19318
- return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env5.TEAMCITY_VERSION) ? 1 : 0;
19319
- }
19320
- if (env5.COLORTERM === "truecolor") {
19321
- return 3;
19322
- }
19323
- if (env5.TERM === "xterm-kitty") {
19324
- return 3;
19325
- }
19326
- if ("TERM_PROGRAM" in env5) {
19327
- const version2 = Number.parseInt((env5.TERM_PROGRAM_VERSION || "").split(".")[0], 10);
19328
- switch (env5.TERM_PROGRAM) {
19329
- case "iTerm.app": {
19330
- return version2 >= 3 ? 3 : 2;
19331
- }
19332
- case "Apple_Terminal": {
19333
- return 2;
19334
- }
19335
- }
19336
- }
19337
- if (/-256(color)?$/i.test(env5.TERM)) {
19338
- return 2;
19339
- }
19340
- if (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env5.TERM)) {
19341
- return 1;
19342
- }
19343
- if ("COLORTERM" in env5) {
19344
- return 1;
19345
- }
19346
- return min;
19347
- }
19348
- function createSupportsColor2(stream, options2 = {}) {
19349
- const level = _supportsColor2(stream, {
19350
- streamIsTTY: stream && stream.isTTY,
19351
- ...options2
19352
- });
19353
- return translateLevel2(level);
19354
- }
19355
- var supportsColor2 = {
19356
- stdout: createSupportsColor2({ isTTY: tty4.isatty(1) }),
19357
- stderr: createSupportsColor2({ isTTY: tty4.isatty(2) })
19358
- };
19359
- var supports_color_default2 = supportsColor2;
19360
-
19361
- // ../../../../node_modules/log-symbols/node_modules/chalk/source/utilities.js
19362
- function stringReplaceAll2(string2, substring, replacer) {
19363
- let index = string2.indexOf(substring);
19364
- if (index === -1) {
19365
- return string2;
19366
- }
19367
- const substringLength = substring.length;
19368
- let endIndex = 0;
19369
- let returnValue = "";
19370
- do {
19371
- returnValue += string2.slice(endIndex, index) + substring + replacer;
19372
- endIndex = index + substringLength;
19373
- index = string2.indexOf(substring, endIndex);
19374
- } while (index !== -1);
19375
- returnValue += string2.slice(endIndex);
19376
- return returnValue;
19377
- }
19378
- function stringEncaseCRLFWithFirstIndex2(string2, prefix, postfix, index) {
19379
- let endIndex = 0;
19380
- let returnValue = "";
19381
- do {
19382
- const gotCR = string2[index - 1] === "\r";
19383
- returnValue += string2.slice(endIndex, gotCR ? index - 1 : index) + prefix + (gotCR ? "\r\n" : "\n") + postfix;
19384
- endIndex = index + 1;
19385
- index = string2.indexOf("\n", endIndex);
19386
- } while (index !== -1);
19387
- returnValue += string2.slice(endIndex);
19388
- return returnValue;
19389
- }
19390
-
19391
- // ../../../../node_modules/log-symbols/node_modules/chalk/source/index.js
19392
- var { stdout: stdoutColor2, stderr: stderrColor2 } = supports_color_default2;
19393
- var GENERATOR2 = Symbol("GENERATOR");
19394
- var STYLER2 = Symbol("STYLER");
19395
- var IS_EMPTY2 = Symbol("IS_EMPTY");
19396
- var levelMapping2 = [
19397
- "ansi",
19398
- "ansi",
19399
- "ansi256",
19400
- "ansi16m"
19401
- ];
19402
- var styles4 = Object.create(null);
19403
- var applyOptions2 = (object, options2 = {}) => {
19404
- if (options2.level && !(Number.isInteger(options2.level) && options2.level >= 0 && options2.level <= 3)) {
19405
- throw new Error("The `level` option should be an integer from 0 to 3");
19406
- }
19407
- const colorLevel = stdoutColor2 ? stdoutColor2.level : 0;
19408
- object.level = options2.level === undefined ? colorLevel : options2.level;
19409
- };
19410
- var chalkFactory2 = (options2) => {
19411
- const chalk2 = (...strings) => strings.join(" ");
19412
- applyOptions2(chalk2, options2);
19413
- Object.setPrototypeOf(chalk2, createChalk2.prototype);
19414
- return chalk2;
19415
- };
19416
- function createChalk2(options2) {
19417
- return chalkFactory2(options2);
19418
- }
19419
- Object.setPrototypeOf(createChalk2.prototype, Function.prototype);
19420
- for (const [styleName, style] of Object.entries(ansi_styles_default2)) {
19421
- styles4[styleName] = {
19422
- get() {
19423
- const builder = createBuilder2(this, createStyler2(style.open, style.close, this[STYLER2]), this[IS_EMPTY2]);
19424
- Object.defineProperty(this, styleName, { value: builder });
19425
- return builder;
19426
- }
19427
- };
19428
- }
19429
- styles4.visible = {
19430
- get() {
19431
- const builder = createBuilder2(this, this[STYLER2], true);
19432
- Object.defineProperty(this, "visible", { value: builder });
19433
- return builder;
19434
- }
19435
- };
19436
- var getModelAnsi2 = (model2, level, type, ...arguments_) => {
19437
- if (model2 === "rgb") {
19438
- if (level === "ansi16m") {
19439
- return ansi_styles_default2[type].ansi16m(...arguments_);
19440
- }
19441
- if (level === "ansi256") {
19442
- return ansi_styles_default2[type].ansi256(ansi_styles_default2.rgbToAnsi256(...arguments_));
19443
- }
19444
- return ansi_styles_default2[type].ansi(ansi_styles_default2.rgbToAnsi(...arguments_));
19445
- }
19446
- if (model2 === "hex") {
19447
- return getModelAnsi2("rgb", level, type, ...ansi_styles_default2.hexToRgb(...arguments_));
19448
- }
19449
- return ansi_styles_default2[type][model2](...arguments_);
19450
- };
19451
- var usedModels2 = ["rgb", "hex", "ansi256"];
19452
- for (const model2 of usedModels2) {
19453
- styles4[model2] = {
19454
- get() {
19455
- const { level } = this;
19456
- return function(...arguments_) {
19457
- const styler = createStyler2(getModelAnsi2(model2, levelMapping2[level], "color", ...arguments_), ansi_styles_default2.color.close, this[STYLER2]);
19458
- return createBuilder2(this, styler, this[IS_EMPTY2]);
19459
- };
19460
- }
19461
- };
19462
- const bgModel = "bg" + model2[0].toUpperCase() + model2.slice(1);
19463
- styles4[bgModel] = {
19464
- get() {
19465
- const { level } = this;
19466
- return function(...arguments_) {
19467
- const styler = createStyler2(getModelAnsi2(model2, levelMapping2[level], "bgColor", ...arguments_), ansi_styles_default2.bgColor.close, this[STYLER2]);
19468
- return createBuilder2(this, styler, this[IS_EMPTY2]);
19469
- };
19470
- }
19471
- };
19472
- }
19473
- var proto2 = Object.defineProperties(() => {
19474
- }, {
19475
- ...styles4,
19476
- level: {
19477
- enumerable: true,
19478
- get() {
19479
- return this[GENERATOR2].level;
19480
- },
19481
- set(level) {
19482
- this[GENERATOR2].level = level;
19483
- }
19484
- }
19485
- });
19486
- var createStyler2 = (open, close, parent) => {
19487
- let openAll;
19488
- let closeAll;
19489
- if (parent === undefined) {
19490
- openAll = open;
19491
- closeAll = close;
19492
- } else {
19493
- openAll = parent.openAll + open;
19494
- closeAll = close + parent.closeAll;
19495
- }
19496
- return {
19497
- open,
19498
- close,
19499
- openAll,
19500
- closeAll,
19501
- parent
19502
- };
19503
- };
19504
- var createBuilder2 = (self2, _styler, _isEmpty) => {
19505
- const builder = (...arguments_) => applyStyle2(builder, arguments_.length === 1 ? "" + arguments_[0] : arguments_.join(" "));
19506
- Object.setPrototypeOf(builder, proto2);
19507
- builder[GENERATOR2] = self2;
19508
- builder[STYLER2] = _styler;
19509
- builder[IS_EMPTY2] = _isEmpty;
19510
- return builder;
19511
- };
19512
- var applyStyle2 = (self2, string2) => {
19513
- if (self2.level <= 0 || !string2) {
19514
- return self2[IS_EMPTY2] ? "" : string2;
19515
- }
19516
- let styler = self2[STYLER2];
19517
- if (styler === undefined) {
19518
- return string2;
19519
- }
19520
- const { openAll, closeAll } = styler;
19521
- if (string2.includes("\x1B")) {
19522
- while (styler !== undefined) {
19523
- string2 = stringReplaceAll2(string2, styler.close, styler.open);
19524
- styler = styler.parent;
19525
- }
19526
- }
19527
- const lfIndex = string2.indexOf("\n");
19528
- if (lfIndex !== -1) {
19529
- string2 = stringEncaseCRLFWithFirstIndex2(string2, closeAll, openAll, lfIndex);
19530
- }
19531
- return openAll + string2 + closeAll;
19532
- };
19533
- Object.defineProperties(createChalk2.prototype, styles4);
19534
- var chalk2 = createChalk2();
19535
- var chalkStderr2 = createChalk2({ level: stderrColor2 ? stderrColor2.level : 0 });
19536
- var source_default2 = chalk2;
19537
-
19538
19259
  // ../../../../node_modules/log-symbols/node_modules/is-unicode-supported/index.js
19539
- import process16 from "process";
19260
+ import process15 from "process";
19540
19261
  function isUnicodeSupported2() {
19541
- if (process16.platform !== "win32") {
19542
- return process16.env.TERM !== "linux";
19262
+ if (process15.platform !== "win32") {
19263
+ return process15.env.TERM !== "linux";
19543
19264
  }
19544
- return Boolean(process16.env.CI) || Boolean(process16.env.WT_SESSION) || Boolean(process16.env.TERMINUS_SUBLIME) || process16.env.ConEmuTask === "{cmd::Cmder}" || process16.env.TERM_PROGRAM === "Terminus-Sublime" || process16.env.TERM_PROGRAM === "vscode" || process16.env.TERM === "xterm-256color" || process16.env.TERM === "alacritty" || process16.env.TERMINAL_EMULATOR === "JetBrains-JediTerm";
19265
+ return Boolean(process15.env.CI) || Boolean(process15.env.WT_SESSION) || Boolean(process15.env.TERMINUS_SUBLIME) || process15.env.ConEmuTask === "{cmd::Cmder}" || process15.env.TERM_PROGRAM === "Terminus-Sublime" || process15.env.TERM_PROGRAM === "vscode" || process15.env.TERM === "xterm-256color" || process15.env.TERM === "alacritty" || process15.env.TERMINAL_EMULATOR === "JetBrains-JediTerm";
19545
19266
  }
19546
19267
 
19547
19268
  // ../../../../node_modules/log-symbols/index.js
19548
19269
  var main = {
19549
- info: source_default2.blue("\u2139"),
19550
- success: source_default2.green("\u2714"),
19551
- warning: source_default2.yellow("\u26A0"),
19552
- error: source_default2.red("\u2716")
19270
+ info: source_default.blue("\u2139"),
19271
+ success: source_default.green("\u2714"),
19272
+ warning: source_default.yellow("\u26A0"),
19273
+ error: source_default.red("\u2716")
19553
19274
  };
19554
19275
  var fallback = {
19555
- info: source_default2.blue("i"),
19556
- success: source_default2.green("\u221A"),
19557
- warning: source_default2.yellow("\u203C"),
19558
- error: source_default2.red("\xD7")
19276
+ info: source_default.blue("i"),
19277
+ success: source_default.green("\u221A"),
19278
+ warning: source_default.yellow("\u203C"),
19279
+ error: source_default.red("\xD7")
19559
19280
  };
19560
19281
  var logSymbols = isUnicodeSupported2() ? main : fallback;
19561
19282
  var log_symbols_default = logSymbols;
@@ -19659,22 +19380,22 @@ function stringWidth2(string2, options2 = {}) {
19659
19380
 
19660
19381
  // ../../../../node_modules/is-interactive/index.js
19661
19382
  function isInteractive({ stream = process.stdout } = {}) {
19662
- return Boolean(stream && stream.isTTY && process.env.TERM !== "dumb" && !("CI" in process.env));
19383
+ return Boolean(stream && stream.isTTY && true && !("CI" in process.env));
19663
19384
  }
19664
19385
 
19665
19386
  // ../../../../node_modules/is-unicode-supported/index.js
19666
- import process17 from "process";
19387
+ import process16 from "process";
19667
19388
  function isUnicodeSupported3() {
19668
- const { env: env6 } = process17;
19669
- const { TERM, TERM_PROGRAM } = env6;
19670
- if (process17.platform !== "win32") {
19389
+ const { env: env5 } = process16;
19390
+ const { TERM, TERM_PROGRAM } = env5;
19391
+ if (process16.platform !== "win32") {
19671
19392
  return TERM !== "linux";
19672
19393
  }
19673
- return Boolean(env6.WT_SESSION) || Boolean(env6.TERMINUS_SUBLIME) || env6.ConEmuTask === "{cmd::Cmder}" || TERM_PROGRAM === "Terminus-Sublime" || TERM_PROGRAM === "vscode" || TERM === "xterm-256color" || TERM === "alacritty" || TERM === "rxvt-unicode" || TERM === "rxvt-unicode-256color" || env6.TERMINAL_EMULATOR === "JetBrains-JediTerm";
19394
+ return Boolean(env5.WT_SESSION) || Boolean(env5.TERMINUS_SUBLIME) || env5.ConEmuTask === "{cmd::Cmder}" || TERM_PROGRAM === "Terminus-Sublime" || TERM_PROGRAM === "vscode" || TERM === "xterm-256color" || TERM === "alacritty" || TERM === "rxvt-unicode" || TERM === "rxvt-unicode-256color" || env5.TERMINAL_EMULATOR === "JetBrains-JediTerm";
19674
19395
  }
19675
19396
 
19676
19397
  // ../../../../node_modules/stdin-discarder/index.js
19677
- import process18 from "process";
19398
+ import process17 from "process";
19678
19399
  var ASCII_ETX_CODE = 3;
19679
19400
 
19680
19401
  class StdinDiscarder {
@@ -19695,24 +19416,24 @@ class StdinDiscarder {
19695
19416
  }
19696
19417
  }
19697
19418
  #realStart() {
19698
- if (process18.platform === "win32" || !process18.stdin.isTTY) {
19419
+ if (process17.platform === "win32" || !process17.stdin.isTTY) {
19699
19420
  return;
19700
19421
  }
19701
- process18.stdin.setRawMode(true);
19702
- process18.stdin.on("data", this.#handleInput);
19703
- process18.stdin.resume();
19422
+ process17.stdin.setRawMode(true);
19423
+ process17.stdin.on("data", this.#handleInput);
19424
+ process17.stdin.resume();
19704
19425
  }
19705
19426
  #realStop() {
19706
- if (!process18.stdin.isTTY) {
19427
+ if (!process17.stdin.isTTY) {
19707
19428
  return;
19708
19429
  }
19709
- process18.stdin.off("data", this.#handleInput);
19710
- process18.stdin.pause();
19711
- process18.stdin.setRawMode(false);
19430
+ process17.stdin.off("data", this.#handleInput);
19431
+ process17.stdin.pause();
19432
+ process17.stdin.setRawMode(false);
19712
19433
  }
19713
19434
  #handleInput(chunk) {
19714
19435
  if (chunk[0] === ASCII_ETX_CODE) {
19715
- process18.emit("SIGINT");
19436
+ process17.emit("SIGINT");
19716
19437
  }
19717
19438
  }
19718
19439
  }
@@ -19747,7 +19468,7 @@ class Ora {
19747
19468
  }
19748
19469
  this.#options = {
19749
19470
  color: "cyan",
19750
- stream: process19.stderr,
19471
+ stream: process18.stderr,
19751
19472
  discardStdin: true,
19752
19473
  hideCursor: true,
19753
19474
  ...options2
@@ -19762,7 +19483,7 @@ class Ora {
19762
19483
  this.prefixText = this.#options.prefixText;
19763
19484
  this.suffixText = this.#options.suffixText;
19764
19485
  this.indent = this.#options.indent;
19765
- if (process19.env.NODE_ENV === "test") {
19486
+ if (process18.env.NODE_ENV === "test") {
19766
19487
  this._stream = this.#stream;
19767
19488
  this._isEnabled = this.#isEnabled;
19768
19489
  Object.defineProperty(this, "_linesToClear", {
@@ -19947,7 +19668,7 @@ class Ora {
19947
19668
  if (this.#options.hideCursor) {
19948
19669
  cli_cursor_default.hide(this.#stream);
19949
19670
  }
19950
- if (this.#options.discardStdin && process19.stdin.isTTY) {
19671
+ if (this.#options.discardStdin && process18.stdin.isTTY) {
19951
19672
  this.#isDiscardingStdin = true;
19952
19673
  stdin_discarder_default.start();
19953
19674
  }
@@ -19966,7 +19687,7 @@ class Ora {
19966
19687
  if (this.#options.hideCursor) {
19967
19688
  cli_cursor_default.show(this.#stream);
19968
19689
  }
19969
- if (this.#options.discardStdin && process19.stdin.isTTY && this.#isDiscardingStdin) {
19690
+ if (this.#options.discardStdin && process18.stdin.isTTY && this.#isDiscardingStdin) {
19970
19691
  stdin_discarder_default.stop();
19971
19692
  this.#isDiscardingStdin = false;
19972
19693
  }
@@ -20008,7 +19729,7 @@ function ora(options2) {
20008
19729
  // src/spinner.ts
20009
19730
  var spinner = ora;
20010
19731
  // ../collections/src/index.ts
20011
- import process20 from "process";
19732
+ import process19 from "process";
20012
19733
 
20013
19734
  // ../collections/src/helpers/clone.ts
20014
19735
  function clone(items) {
@@ -20196,7 +19917,7 @@ class Collection {
20196
19917
  }
20197
19918
  dd() {
20198
19919
  console.log(JSON.stringify(this.all(), null, 2));
20199
- process20.exit();
19920
+ process19.exit();
20200
19921
  }
20201
19922
  diff(values2) {
20202
19923
  let valuesToDiff;