@aristobyte-ui/cli 1.0.46 → 1.0.48

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
@@ -1,5 +1,4 @@
1
1
  #!/usr/bin/env node
2
- #!/usr/bin/env node
3
2
  "use strict";
4
3
  var __create = Object.create;
5
4
  var __defProp = Object.defineProperty;
@@ -101,7 +100,6 @@ var require_picocolors = __commonJS({
101
100
  });
102
101
 
103
102
  // index.ts
104
- var import_picocolors10 = __toESM(require_picocolors());
105
103
  var import_commander = require("commander");
106
104
 
107
105
  // commands/add.ts
@@ -196,13 +194,13 @@ var TEMPLATES = [
196
194
  ];
197
195
  var PACKAGE_MANAGERS = ["npm", "yarn", "pnpm", "bun"];
198
196
  var DEFAULT_NAME = "aristobyte-ui-app";
199
- async function init() {
197
+ async function init(myProjectName = DEFAULT_NAME) {
200
198
  console.log(import_picocolors2.default.cyan("\u250C Create a new project"));
201
199
  const projectNameResult = await (0, import_prompts2.text)({
202
200
  message: "New project name (Enter to skip with default name)",
203
- placeholder: DEFAULT_NAME
201
+ placeholder: myProjectName
204
202
  });
205
- const projectName = (String(projectNameResult) || DEFAULT_NAME).trim();
203
+ const projectName = (String(projectNameResult) || myProjectName).trim();
206
204
  const templateIndex = await (0, import_prompts2.select)({
207
205
  message: "Select a template (Enter to select)",
208
206
  options: TEMPLATES.map((t, i) => ({
@@ -378,9 +376,9 @@ var MIN_VERSIONS = {
378
376
  npm: "10.8.2",
379
377
  yarn: "1.22.22"
380
378
  };
381
- function getVersion(command2, name) {
379
+ function getVersion(command, name) {
382
380
  try {
383
- return (0, import_child_process2.execSync)(command2).toString().trim();
381
+ return (0, import_child_process2.execSync)(command).toString().trim();
384
382
  } catch (err) {
385
383
  console.error(import_picocolors8.default.red(`\u274C Failed to detect ${name} version:`), err);
386
384
  return "unknown";
@@ -418,8 +416,43 @@ async function env() {
418
416
  }
419
417
  }
420
418
 
421
- // utils/getBanner.ts
419
+ // utils/colors.ts
420
+ var import_chalk = __toESM(require("chalk"));
422
421
  var import_gradient_string = __toESM(require("gradient-string"));
422
+ var LOGO_COLORS = ["#ffee27", "#fec800", "#f18e35", "#e95f32", "#e2312d"];
423
+ function logo3(text2) {
424
+ return import_chalk.default.hex(LOGO_COLORS[2])(text2);
425
+ }
426
+ function logo4(text2) {
427
+ return import_chalk.default.hex(LOGO_COLORS[3])(text2);
428
+ }
429
+ function lightGrey(text2) {
430
+ return import_chalk.default.hex("#afbfff")(text2);
431
+ }
432
+ function darkGrey(text2) {
433
+ return import_chalk.default.hex("#7580aa")(text2);
434
+ }
435
+ function logoGradient(text2) {
436
+ return (0, import_gradient_string.default)([
437
+ ...LOGO_COLORS,
438
+ ...LOGO_COLORS.reverse(),
439
+ ...LOGO_COLORS,
440
+ ...LOGO_COLORS.reverse(),
441
+ ...LOGO_COLORS
442
+ ]).multiline(text2);
443
+ }
444
+ function logoSmallGradient(text2) {
445
+ return (0, import_gradient_string.default)([
446
+ LOGO_COLORS[0],
447
+ LOGO_COLORS[1],
448
+ LOGO_COLORS[1],
449
+ LOGO_COLORS[0],
450
+ LOGO_COLORS[0],
451
+ LOGO_COLORS[1]
452
+ ]).multiline(text2);
453
+ }
454
+
455
+ // utils/getBanner.ts
423
456
  var banners = [
424
457
  ` \u2591\u2588\u2588\u2588 \u2591\u2588\u2588 \u2591\u2588\u2588 \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2591\u2588\u2588 \u2591\u2588\u2588 \u2591\u2588\u2591\u2588\u2588\u2588\u2588\u2588\u2588
425
458
  \u2591\u2588\u2588\u2591\u2588\u2588 \u2591\u2588\u2588 \u2591\u2588\u2588 \u2591\u2588\u2588 \u2591\u2588\u2588 \u2591\u2588\u2588 \u2591\u2588\u2588 \u2591\u2588\u2588
@@ -478,46 +511,22 @@ _/ _\\ _| _| ____/ \\__| \\___/ ____/ \\__, | \\__| \\___| \\___/
478
511
  \u2588\u2588\u2588 `
479
512
  ];
480
513
  function getBanner() {
481
- const logoGradient = (0, import_gradient_string.default)([
482
- "#ffee27",
483
- "#fec800",
484
- "#f18e35",
485
- "#e95f32",
486
- "#e2312d",
487
- "#e95f32",
488
- "#f18e35",
489
- "#fec800",
490
- "#ffee27",
491
- "#fec800",
492
- "#f18e35",
493
- "#e95f32",
494
- "#e2312d",
495
- "#e95f32",
496
- "#f18e35",
497
- "#fec800",
498
- "#ffee27",
499
- "#fec800",
500
- "#f18e35",
501
- "#e95f32",
502
- "#e2312d"
503
- ]);
504
- return logoGradient.multiline(banners[0]);
514
+ return logoGradient(banners[0]);
505
515
  }
506
516
 
507
517
  // utils/typography.ts
508
- var import_picocolors9 = __toESM(require_picocolors());
509
- function command(text2) {
510
- return import_picocolors9.default.yellow(text2);
518
+ function usage(params) {
519
+ return params.map((param) => `${logo4("[")} ${lightGrey(param)} ${logo4("]")}`).join(" ");
511
520
  }
512
- function bracket(text2) {
513
- return import_picocolors9.default.redBright(text2);
521
+ function description(text2) {
522
+ return darkGrey(`- ${text2}`);
514
523
  }
515
524
 
516
525
  // package.json
517
526
  var package_default = {
518
527
  name: "@aristobyte-ui/cli",
519
528
  description: "The official AristoByteUI CLI \u2014 initialize projects, install, upgrade, remove, and manage UI components seamlessly.",
520
- version: "1.0.46",
529
+ version: "1.0.48",
521
530
  license: "MIT",
522
531
  private: false,
523
532
  author: "AristoByte <info@aristobyte.com>",
@@ -566,7 +575,7 @@ var package_default = {
566
575
  scripts: {
567
576
  build: "tsup",
568
577
  "build:watch": "tsup ./index.ts --watch",
569
- dev: "tsup ./index.ts --watch",
578
+ dev: "tsup && node ./bin/aristobyte-ui.js",
570
579
  start: "node ./bin/aristobyte-ui.js",
571
580
  lint: "eslint . --ext .ts,.tsx --max-warnings 0",
572
581
  "lint:fix": "eslint . --ext .ts,.tsx --fix",
@@ -576,10 +585,11 @@ var package_default = {
576
585
  release: "changeset publish"
577
586
  },
578
587
  dependencies: {
579
- "@aristobyte-ui/eslint-config": "^1.0.46",
580
- "@aristobyte-ui/typescript-config": "^1.0.46",
588
+ "@aristobyte-ui/eslint-config": "^1.0.48",
589
+ "@aristobyte-ui/typescript-config": "^1.0.48",
581
590
  "@clack/prompts": "^0.11.0",
582
591
  axios: "^1.6.0",
592
+ chalk: "^5.6.1",
583
593
  commander: "^11.0.0",
584
594
  execa: "^8.0.0",
585
595
  "gradient-string": "^3.0.0"
@@ -596,51 +606,84 @@ var package_default = {
596
606
  };
597
607
 
598
608
  // index.ts
599
- var program = new import_commander.Command();
600
- program.name("aristobyte-ui").description(import_picocolors10.default.bgMagenta(import_picocolors10.default.black(" \u{1F680} Welcome to AristoByteUI CLI "))).version(package_default.version, "-V, --version", import_picocolors10.default.green("Output the CLI version"));
601
- program.configureHelp({
609
+ var COMMANDS = [
610
+ "init",
611
+ "add",
612
+ "remove",
613
+ "upgrade",
614
+ "list",
615
+ "doctor",
616
+ "env",
617
+ "help"
618
+ ];
619
+ var aristobyteui = new import_commander.Command();
620
+ aristobyteui.name("aristobyte-ui").usage(usage(["command", "options"])).description("Initialize a new AristoByteUI project").version(package_default.version, "-V, --version", "Output the CLI version").helpOption("-H, --help", "Show help information");
621
+ aristobyteui.command("init").usage(usage(["options", "myProjectName"])).description("Initialize a new AristoByteUI project").action((myProjectName) => {
622
+ init(myProjectName);
623
+ });
624
+ aristobyteui.command("add").usage(usage(["options", "components..."])).description("Add a UI component").action(add);
625
+ aristobyteui.command("remove").usage(usage(["options", "components..."])).description("Remove a UI component").action(remove);
626
+ aristobyteui.command("upgrade").usage(usage(["options", "components..."])).description("Upgrade a UI component").action(upgrade);
627
+ aristobyteui.command("list").usage(usage(["options"])).description("List installed components").action(list);
628
+ aristobyteui.command("doctor").usage(usage(["options"])).description("Check system and project health").action(doctor);
629
+ aristobyteui.command("env").usage(usage(["options"])).description("Display environment info").action(env);
630
+ aristobyteui.command("help").usage(usage(["options"])).description("Display help for command").action(env);
631
+ aristobyteui.command("help", { hidden: true });
632
+ aristobyteui.configureHelp({
602
633
  formatHelp: (cmd, helper) => `
603
634
  ${getBanner()}
604
- ${import_picocolors10.default.bold("Usage:")} ${helper.commandUsage(cmd)}
635
+ ${logoSmallGradient("Usage:")}
636
+ ${logo3(helper.commandUsage(cmd))}
605
637
 
606
- ${import_picocolors10.default.bold("Description:")}
607
- ${cmd.description()}
638
+ ${logoSmallGradient("Description:")}
639
+ ${darkGrey(
640
+ "Create new AristoByteUI projects or manage existing projects with full control"
641
+ )}
642
+ ${darkGrey("over components, dependencies, and UI stack configuration. Supports initialization,")}
643
+ ${darkGrey(
644
+ "addition, removal, upgrading of components, and project diagnostics."
645
+ )}
608
646
 
609
- ${import_picocolors10.default.bold("Commands:")}
647
+ ${logoSmallGradient("Commands:")}
610
648
  ${helper.visibleCommands(cmd).map(
611
- (c) => ` ${`${c.name().padEnd(22)} ${c.usage() || "".padEnd(37)}`.padEnd(92)} ${c.description()}`
649
+ (c) => ` ${`${logo3(c.name()).padEnd(31)} ${c.usage() || "".padEnd(30)}`.padEnd(129)} ${description(c.description())}`
612
650
  ).join("\n")}
613
651
 
614
- ${import_picocolors10.default.bold("Options:")}
615
- ${helper.visibleOptions(cmd).map((o) => ` ${import_picocolors10.default.yellow(o.flags).padEnd(25)} ${o.description}`).join("\n")}
652
+ ${logoSmallGradient("Options:")}
653
+ ${helper.visibleOptions(cmd).map((option) => {
654
+ const flagsArray = option.flags.split(/,\s*/);
655
+ const styledFlags = `${logo3(flagsArray[0])}${darkGrey(", ")}${logo4(flagsArray[1])}`;
656
+ return ` ${styledFlags.padEnd(93)} ${description(option.description)}`;
657
+ }).join("\n")}
616
658
 
617
- ${import_picocolors10.default.dim(import_picocolors10.default.gray("Tip: Use 'aristobyte-ui [ command ] --help' for detailed info on a command."))}
659
+ ${logoSmallGradient("Tip:")}
660
+ ${lightGrey("Use 'aristobyte-ui [ command ] --help' for detailed info on a command.")}
661
+ `
662
+ });
663
+ aristobyteui.exitOverride(async (err) => {
664
+ if (err.code === "commander.unknownCommand") {
665
+ console.error(
666
+ logoSmallGradient(" \u25C6 Possible commands are: \n"),
667
+ ...COMMANDS.map(
668
+ (cmd) => cmd === err.message.split("Did you mean ")[1].split("?")[0] ? `${logoSmallGradient("\u2502 ")}${logo4("\u25CF aristobyte-ui")} ${logo4(`${cmd}`)}
669
+ ` : `${logoSmallGradient("\u2502 \u25CB aristobyte-ui")} ${logo3(`${cmd}`)}
618
670
  `
671
+ )
672
+ );
673
+ }
674
+ process.exit(1);
619
675
  });
620
- program.command(command("init") + import_picocolors10.default.reset(" ")).usage(
621
- `${bracket("[")} ${import_picocolors10.default.gray("options")} ${bracket("]")}${import_picocolors10.default.reset(" ")} ${bracket("[")} ${import_picocolors10.default.gray("myProjectName")} ${bracket("]")}${import_picocolors10.default.reset(" ")}`
622
- ).description("Initialize a new AristoByteUI project").action(init);
623
- program.command(command("add") + import_picocolors10.default.reset(" ")).usage(
624
- `${bracket("[")} ${import_picocolors10.default.gray("options")} ${bracket("]")}${import_picocolors10.default.reset(" ")} ${bracket("[")} ${import_picocolors10.default.gray("components...")} ${bracket("]")}${import_picocolors10.default.reset(" ")}`
625
- ).description("Add a UI component").action(add);
626
- program.command(command("remove") + import_picocolors10.default.reset(" ")).usage(
627
- `${bracket("[")} ${import_picocolors10.default.gray("options")} ${bracket("]")}${import_picocolors10.default.reset(" ")} ${bracket("[")} ${import_picocolors10.default.gray("components...")} ${bracket("]")}${import_picocolors10.default.reset(" ")}`
628
- ).description("Remove a UI component").action(remove);
629
- program.command(command("upgrade") + import_picocolors10.default.reset(" ")).usage(
630
- `${bracket("[")} ${import_picocolors10.default.gray("options")} ${bracket("]")}${import_picocolors10.default.reset(" ")} ${bracket("[")} ${import_picocolors10.default.gray("components...")} ${bracket("]")}${import_picocolors10.default.reset(" ")}`
631
- ).description("Upgrade a UI component").action(upgrade);
632
- program.command(command("list") + import_picocolors10.default.reset(" ")).usage(
633
- `${bracket("[")} ${import_picocolors10.default.gray("options")} ${bracket("]")}${import_picocolors10.default.reset(" ")}`
634
- ).description("List installed components").action(list);
635
- program.command(command("doctor") + import_picocolors10.default.reset(" ")).usage(
636
- `${bracket("[")} ${import_picocolors10.default.gray("options")} ${bracket("]")}${import_picocolors10.default.reset(" ")}`
637
- ).description("Check system and project health").action(doctor);
638
- program.command(command("env") + import_picocolors10.default.reset(" ")).usage(
639
- `${bracket("[")} ${import_picocolors10.default.gray("options")} ${bracket("]")}${import_picocolors10.default.reset(" ")}`
640
- ).description("Display environment info").action(env);
641
- program.command(command("help") + import_picocolors10.default.reset(" ")).usage(
642
- `${bracket("[")} ${import_picocolors10.default.gray("options")} ${bracket("]")}${import_picocolors10.default.reset(" ")}`
643
- ).description("Display help for command").action(env);
644
- program.command("help", { hidden: true });
645
- program.parseAsync(process.argv);
676
+ (async () => {
677
+ const args = process.argv.slice(2);
678
+ if (args.length === 0) {
679
+ aristobyteui.outputHelp();
680
+ process.exit(0);
681
+ }
682
+ try {
683
+ await aristobyteui.parseAsync(args, { from: "user" });
684
+ process.exit(1);
685
+ } catch {
686
+ process.exit(1);
687
+ }
688
+ })();
646
689
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../node_modules/picocolors/picocolors.js","../index.ts","../commands/add.ts","../utils/installPackage.ts","../commands/init.ts","../commands/remove.ts","../commands/upgrade.ts","../commands/list.ts","../commands/doctor.ts","../utils/compareVersions.ts","../commands/env.ts","../utils/checkVersion.ts","../utils/getBanner.ts","../utils/typography.ts","../package.json"],"sourcesContent":["let p = process || {}, argv = p.argv || [], env = p.env || {}\nlet isColorSupported =\n\t!(!!env.NO_COLOR || argv.includes(\"--no-color\")) &&\n\t(!!env.FORCE_COLOR || argv.includes(\"--color\") || p.platform === \"win32\" || ((p.stdout || {}).isTTY && env.TERM !== \"dumb\") || !!env.CI)\n\nlet formatter = (open, close, replace = open) =>\n\tinput => {\n\t\tlet string = \"\" + input, index = string.indexOf(close, open.length)\n\t\treturn ~index ? open + replaceClose(string, close, replace, index) + close : open + string + close\n\t}\n\nlet replaceClose = (string, close, replace, index) => {\n\tlet result = \"\", cursor = 0\n\tdo {\n\t\tresult += string.substring(cursor, index) + replace\n\t\tcursor = index + close.length\n\t\tindex = string.indexOf(close, cursor)\n\t} while (~index)\n\treturn result + string.substring(cursor)\n}\n\nlet createColors = (enabled = isColorSupported) => {\n\tlet f = enabled ? formatter : () => String\n\treturn {\n\t\tisColorSupported: enabled,\n\t\treset: f(\"\\x1b[0m\", \"\\x1b[0m\"),\n\t\tbold: f(\"\\x1b[1m\", \"\\x1b[22m\", \"\\x1b[22m\\x1b[1m\"),\n\t\tdim: f(\"\\x1b[2m\", \"\\x1b[22m\", \"\\x1b[22m\\x1b[2m\"),\n\t\titalic: f(\"\\x1b[3m\", \"\\x1b[23m\"),\n\t\tunderline: f(\"\\x1b[4m\", \"\\x1b[24m\"),\n\t\tinverse: f(\"\\x1b[7m\", \"\\x1b[27m\"),\n\t\thidden: f(\"\\x1b[8m\", \"\\x1b[28m\"),\n\t\tstrikethrough: f(\"\\x1b[9m\", \"\\x1b[29m\"),\n\n\t\tblack: f(\"\\x1b[30m\", \"\\x1b[39m\"),\n\t\tred: f(\"\\x1b[31m\", \"\\x1b[39m\"),\n\t\tgreen: f(\"\\x1b[32m\", \"\\x1b[39m\"),\n\t\tyellow: f(\"\\x1b[33m\", \"\\x1b[39m\"),\n\t\tblue: f(\"\\x1b[34m\", \"\\x1b[39m\"),\n\t\tmagenta: f(\"\\x1b[35m\", \"\\x1b[39m\"),\n\t\tcyan: f(\"\\x1b[36m\", \"\\x1b[39m\"),\n\t\twhite: f(\"\\x1b[37m\", \"\\x1b[39m\"),\n\t\tgray: f(\"\\x1b[90m\", \"\\x1b[39m\"),\n\n\t\tbgBlack: f(\"\\x1b[40m\", \"\\x1b[49m\"),\n\t\tbgRed: f(\"\\x1b[41m\", \"\\x1b[49m\"),\n\t\tbgGreen: f(\"\\x1b[42m\", \"\\x1b[49m\"),\n\t\tbgYellow: f(\"\\x1b[43m\", \"\\x1b[49m\"),\n\t\tbgBlue: f(\"\\x1b[44m\", \"\\x1b[49m\"),\n\t\tbgMagenta: f(\"\\x1b[45m\", \"\\x1b[49m\"),\n\t\tbgCyan: f(\"\\x1b[46m\", \"\\x1b[49m\"),\n\t\tbgWhite: f(\"\\x1b[47m\", \"\\x1b[49m\"),\n\n\t\tblackBright: f(\"\\x1b[90m\", \"\\x1b[39m\"),\n\t\tredBright: f(\"\\x1b[91m\", \"\\x1b[39m\"),\n\t\tgreenBright: f(\"\\x1b[92m\", \"\\x1b[39m\"),\n\t\tyellowBright: f(\"\\x1b[93m\", \"\\x1b[39m\"),\n\t\tblueBright: f(\"\\x1b[94m\", \"\\x1b[39m\"),\n\t\tmagentaBright: f(\"\\x1b[95m\", \"\\x1b[39m\"),\n\t\tcyanBright: f(\"\\x1b[96m\", \"\\x1b[39m\"),\n\t\twhiteBright: f(\"\\x1b[97m\", \"\\x1b[39m\"),\n\n\t\tbgBlackBright: f(\"\\x1b[100m\", \"\\x1b[49m\"),\n\t\tbgRedBright: f(\"\\x1b[101m\", \"\\x1b[49m\"),\n\t\tbgGreenBright: f(\"\\x1b[102m\", \"\\x1b[49m\"),\n\t\tbgYellowBright: f(\"\\x1b[103m\", \"\\x1b[49m\"),\n\t\tbgBlueBright: f(\"\\x1b[104m\", \"\\x1b[49m\"),\n\t\tbgMagentaBright: f(\"\\x1b[105m\", \"\\x1b[49m\"),\n\t\tbgCyanBright: f(\"\\x1b[106m\", \"\\x1b[49m\"),\n\t\tbgWhiteBright: f(\"\\x1b[107m\", \"\\x1b[49m\"),\n\t}\n}\n\nmodule.exports = createColors()\nmodule.exports.createColors = createColors\n","#!/usr/bin/env node\n\nimport color from \"picocolors\";\nimport { Command } from \"commander\";\n\nimport { add } from \"./commands/add\";\nimport { init } from \"./commands/init\";\nimport { remove } from \"./commands/remove\";\nimport { upgrade } from \"./commands/upgrade\";\nimport { list } from \"./commands/list\";\nimport { doctor } from \"./commands/doctor\";\nimport { env } from \"./commands/env\";\n\nimport { getBanner } from \"./utils/getBanner\";\nimport { command, bracket } from \"./utils/typography\";\nimport pkg from \"./package.json\";\n\nconst program = new Command();\n\nprogram\n .name(\"aristobyte-ui\")\n .description(color.bgMagenta(color.black(\" 🚀 Welcome to AristoByteUI CLI \")))\n .version(pkg.version, \"-V, --version\", color.green(\"Output the CLI version\"));\n\nprogram.configureHelp({\n formatHelp: (cmd, helper) => `\n${getBanner()}\n${color.bold(\"Usage:\")} ${helper.commandUsage(cmd)}\n\n${color.bold(\"Description:\")}\n ${cmd.description()}\n\n${color.bold(\"Commands:\")}\n${helper\n .visibleCommands(cmd)\n .map(\n (c) =>\n ` ${`${c.name().padEnd(22)} ${c.usage() || \"\".padEnd(37)}`.padEnd(92)} ${c.description()}`\n )\n .join(\"\\n\")}\n\n${color.bold(\"Options:\")}\n${helper\n .visibleOptions(cmd)\n .map((o) => ` ${color.yellow(o.flags).padEnd(25)} ${o.description}`)\n .join(\"\\n\")}\n\n${color.dim(color.gray(\"Tip: Use 'aristobyte-ui [ command ] --help' for detailed info on a command.\"))}\n`,\n});\n\nprogram\n .command(command(\"init\") + color.reset(\" \"))\n .usage(\n `${bracket(\"[\")} ${color.gray(\"options\")} ${bracket(\"]\")}${color.reset(\" \")} ${bracket(\"[\")} ${color.gray(\"myProjectName\")} ${bracket(\"]\")}${color.reset(\" \")}`\n )\n .description(\"Initialize a new AristoByteUI project\")\n .action(init);\nprogram\n .command(command(\"add\") + color.reset(\" \"))\n .usage(\n `${bracket(\"[\")} ${color.gray(\"options\")} ${bracket(\"]\")}${color.reset(\" \")} ${bracket(\"[\")} ${color.gray(\"components...\")} ${bracket(\"]\")}${color.reset(\" \")}`\n )\n .description(\"Add a UI component\")\n .action(add);\nprogram\n .command(command(\"remove\") + color.reset(\" \"))\n .usage(\n `${bracket(\"[\")} ${color.gray(\"options\")} ${bracket(\"]\")}${color.reset(\" \")} ${bracket(\"[\")} ${color.gray(\"components...\")} ${bracket(\"]\")}${color.reset(\" \")}`\n )\n .description(\"Remove a UI component\")\n .action(remove);\nprogram\n .command(command(\"upgrade\") + color.reset(\" \"))\n .usage(\n `${bracket(\"[\")} ${color.gray(\"options\")} ${bracket(\"]\")}${color.reset(\" \")} ${bracket(\"[\")} ${color.gray(\"components...\")} ${bracket(\"]\")}${color.reset(\" \")}`\n )\n .description(\"Upgrade a UI component\")\n .action(upgrade);\nprogram\n .command(command(\"list\") + color.reset(\" \"))\n .usage(\n `${bracket(\"[\")} ${color.gray(\"options\")} ${bracket(\"]\")}${color.reset(\" \")}`\n )\n .description(\"List installed components\")\n .action(list);\nprogram\n .command(command(\"doctor\") + color.reset(\" \"))\n .usage(\n `${bracket(\"[\")} ${color.gray(\"options\")} ${bracket(\"]\")}${color.reset(\" \")}`\n )\n .description(\"Check system and project health\")\n .action(doctor);\nprogram\n .command(command(\"env\") + color.reset(\" \"))\n .usage(\n `${bracket(\"[\")} ${color.gray(\"options\")} ${bracket(\"]\")}${color.reset(\" \")}`\n )\n .description(\"Display environment info\")\n .action(env);\nprogram\n .command(command(\"help\") + color.reset(\" \"))\n .usage(\n `${bracket(\"[\")} ${color.gray(\"options\")} ${bracket(\"]\")}${color.reset(\" \")}`\n )\n .description(\"Display help for command\")\n .action(env);\nprogram.command(\"help\", { hidden: true });\nprogram.parseAsync(process.argv);\n","import { spinner } from \"@clack/prompts\";\nimport { installPackage } from \"../utils/installPackage\";\nimport color from \"picocolors\";\n\nexport async function add(component: string) {\n const s = spinner();\n try {\n s.start(`Installing ${component}...`);\n\n if (component === \"all\") {\n await installPackage(\"yarn\", \"@aristobyte-ui/react\");\n s.stop();\n console.log(color.green(\"✅ All components installed!\"));\n return;\n }\n\n const pkgName = `@aristobyte-ui/${component}`;\n await installPackage(\"yarn\", pkgName);\n s.stop();\n console.log(color.green(`✅ Component ${component} installed!`));\n } catch (err) {\n s.stop();\n console.error(\n color.red(`❌ Failed to install component ${component}`),\n err\n );\n }\n}\n","import { execa } from \"execa\";\n\nexport async function installPackage(\n pkgManager: \"npm\" | \"yarn\" | \"pnpm\" | \"bun\",\n pkg: string,\n dev: boolean = false\n) {\n let args: string[] = [];\n\n switch (pkgManager) {\n case \"npm\":\n args = [\"install\", pkg, dev ? \"--save-dev\" : \"--save\"];\n break;\n case \"yarn\":\n args = [\"add\", pkg];\n if (dev) args.push(\"-D\");\n break;\n case \"pnpm\":\n args = [\"add\", pkg];\n if (dev) args.push(\"-D\");\n break;\n case \"bun\":\n args = [\"add\", pkg];\n if (dev) args.push(\"-d\");\n break;\n default:\n throw new Error(`Unsupported package manager: ${pkgManager}`);\n }\n\n await execa(pkgManager, args, { stdio: \"inherit\" });\n}\n","import { execa } from \"execa\";\nimport { select, text, spinner } from \"@clack/prompts\";\nimport color from \"picocolors\";\n\nconst TEMPLATES = [\n {\n id: \"aristobyte-ui-template-nextjs-15-app-router\",\n name: \"Next App Router\",\n desc: \"A Next.js 15 with app-router directory template pre-configured with AristoByteUI.\",\n repo: \"https://github.com/aristobyte-team/aristobyte-ui-template-nextjs-15-app-router.git\",\n },\n {\n id: \"aristobyte-ui-template-nextjs-15-pages\",\n name: \"Next Pages\",\n desc: \"A Next.js 15 with pages directory template pre-configured with AristoByteUI.\",\n repo: \"https://github.com/aristobyte-team/aristobyte-ui-template-nextjs-15-pages.git\",\n },\n {\n id: \"aristobyte-ui-template-vite\",\n name: \"Vite\",\n desc: \"A Vite template pre-configured with AristoByteUI.\",\n repo: \"https://github.com/aristobyte-team/aristobyte-ui-template-vite.git\",\n },\n {\n id: \"aristobyte-ui-template-astro\",\n name: \"Astro\",\n desc: \"An Astro template pre-configured with AristoByteUI.\",\n repo: \"https://github.com/aristobyte-team/aristobyte-ui-template-astro.git\",\n },\n {\n id: \"aristobyte-ui-template-cra\",\n name: \"CRA\",\n desc: \"A Create React App template pre-configured with AristoByteUI.\",\n repo: \"https://github.com/aristobyte-team/aristobyte-ui-template-cra.git\",\n },\n];\n\nconst PACKAGE_MANAGERS = [\"npm\", \"yarn\", \"pnpm\", \"bun\"];\nconst DEFAULT_NAME = \"aristobyte-ui-app\";\n\nexport async function init() {\n console.log(color.cyan(\"┌ Create a new project\"));\n\n const projectNameResult = await text({\n message: \"New project name (Enter to skip with default name)\",\n placeholder: DEFAULT_NAME,\n });\n\n const projectName = (String(projectNameResult) || DEFAULT_NAME).trim();\n\n const templateIndex = await select({\n message: \"Select a template (Enter to select)\",\n options: TEMPLATES.map((t, i) => ({\n value: i + \"\",\n label: `${t.name} (${t.desc})`,\n })),\n });\n\n const template = TEMPLATES[Number(templateIndex)];\n\n const packageManagerIndex = await select({\n message: \"Select a package manager (Enter to select)\",\n options: PACKAGE_MANAGERS.map((pm, i) => ({\n value: i.toString(),\n label: pm,\n })),\n });\n\n const packageManager = PACKAGE_MANAGERS[Number(packageManagerIndex)];\n\n console.log(color.cyan(\"\\nTemplate created successfully!\\n\"));\n\n const s = spinner();\n try {\n s.start(\n `Preparing '${template.name}' with ${packageManager} configuration...`\n );\n\n // Clone directly the branch that matches the package manager\n await execa(\n \"git\",\n [\n \"clone\",\n \"--branch\",\n packageManager,\n \"--single-branch\",\n template.repo,\n projectName,\n ],\n {\n stdio: \"ignore\",\n }\n );\n\n await execa(\"rm\", [\"-rf\", \".git\"], { stdio: \"ignore\", cwd: projectName });\n\n s.stop();\n console.log(color.green(\"✅ Project initialized successfully!\\n\"));\n\n // Next steps hint\n console.log(color.cyan(\"Next steps:\"));\n console.log(color.cyan(` cd ${projectName}`));\n console.log(color.cyan(` ${packageManager} install`));\n console.log(color.cyan(` ${packageManager} run dev\\n`));\n } catch (err) {\n s.stop();\n console.error(color.red(\"❌ Failed to initialize project\"), err);\n }\n}\n","import { spinner } from \"@clack/prompts\";\nimport { execa } from \"execa\";\nimport color from \"picocolors\";\n\nexport async function remove(component: string) {\n const s = spinner();\n try {\n const pkgName =\n component === \"all\"\n ? \"@aristobyte-ui/react\"\n : `@aristobyte-ui/${component}`;\n s.start(`Removing ${pkgName}...`);\n await execa(\"yarn\", [\"remove\", pkgName], { stdio: \"inherit\" });\n s.stop();\n console.log(color.green(`✅ ${pkgName} removed successfully!`));\n } catch (err) {\n s.stop();\n console.error(color.red(`❌ Failed to remove component ${component}`), err);\n }\n}\n","import { spinner } from \"@clack/prompts\";\nimport { execa } from \"execa\";\nimport color from \"picocolors\";\n\nexport async function upgrade(component: string) {\n const s = spinner();\n try {\n const pkgName =\n component === \"all\"\n ? \"@aristobyte-ui/react\"\n : `@aristobyte-ui/${component}`;\n s.start(`Upgrading ${pkgName}...`);\n await execa(\"yarn\", [\"upgrade\", pkgName], { stdio: \"inherit\" });\n s.stop();\n console.log(color.green(`✅ ${pkgName} upgraded successfully!`));\n } catch (err) {\n s.stop();\n console.error(\n color.red(`❌ Failed to upgrade component ${component}`),\n err\n );\n }\n}\n","import fs from \"fs\";\nimport color from \"picocolors\";\n\nexport async function list() {\n try {\n const pkgJson = JSON.parse(fs.readFileSync(\"package.json\", \"utf-8\"));\n const deps = pkgJson.dependencies || {};\n const aristobyteDeps = Object.keys(deps).filter((d) =>\n d.startsWith(\"@aristobyte-ui/\")\n );\n\n console.log(color.blue(\"Installed AristoByteUI components:\"));\n aristobyteDeps.forEach((dep) => console.log(color.green(dep)));\n } catch (err) {\n console.error(color.red(\"❌ Failed to list components\"), err);\n }\n}\n","import { execSync } from \"child_process\";\nimport { spinner } from \"@clack/prompts\";\nimport { compareVersions } from \"../utils/compareVersions\";\nimport color from \"picocolors\";\n\nconst MIN_NODE_VERSION = \"20.19.0\";\n\nexport async function doctor() {\n const s = spinner();\n try {\n s.start(\"Running project health checks...\");\n\n // Node\n let nodeVersion = \"unknown\";\n try {\n nodeVersion = execSync(\"node -v\").toString().trim();\n } catch (err) {\n console.error(color.red(\"❌ Failed to detect Node version:\"), err);\n }\n\n let nodeStatus = \"✅ OK\";\n if (\n nodeVersion !== \"unknown\" &&\n compareVersions(nodeVersion, MIN_NODE_VERSION) < 0\n ) {\n nodeStatus = color.red(`❌ Node >= ${MIN_NODE_VERSION} required`);\n }\n\n // Yarn\n let yarnVersion = \"unknown\";\n try {\n yarnVersion = execSync(\"yarn -v\").toString().trim();\n } catch (err) {\n console.error(color.red(\"❌ Failed to detect Yarn version:\"), err);\n }\n\n s.stop();\n console.log(color.green(`Node version: ${nodeVersion} ${nodeStatus}`));\n console.log(color.green(`Yarn version: ${yarnVersion}`));\n console.log(color.green(\"All basic health checks completed!\"));\n } catch (err) {\n s.stop();\n console.error(color.red(\"❌ Doctor check failed\"), err);\n }\n}\n","export function compareVersions(v1: string, v2: string) {\n const a = v1.replace(/^v/, \"\").split(\".\").map(Number);\n const b = v2.replace(/^v/, \"\").split(\".\").map(Number);\n for (let i = 0; i < 3; i++) {\n if (a[i] > b[i]) return 1;\n if (a[i] < b[i]) return -1;\n }\n return 0;\n}\n","import os from \"os\";\nimport { execSync } from \"child_process\";\nimport { spinner } from \"@clack/prompts\";\nimport { checkVersion } from \"../utils/checkVersion\";\nimport color from \"picocolors\";\n\nconst MIN_VERSIONS = {\n node: \"20.17.0\",\n npm: \"10.8.2\",\n yarn: \"1.22.22\",\n};\n\nfunction getVersion(command: string, name: string): string {\n try {\n return execSync(command).toString().trim();\n } catch (err) {\n console.error(color.red(`❌ Failed to detect ${name} version:`), err);\n return \"unknown\";\n }\n}\n\nexport async function env() {\n const s = spinner();\n try {\n s.start(\"Fetching system environment info...\");\n\n const nodeVersion = getVersion(\"node -v\", \"Node\");\n const npmVersion = getVersion(\"npm -v\", \"npm\");\n const yarnVersion = getVersion(\"yarn -v\", \"Yarn\");\n\n s.stop();\n\n console.log(color.blue(\"System Environment Info:\"));\n console.log(\n color.green(`OS: ${os.type()} ${os.release()} (${os.platform()})`)\n );\n console.log(color.green(`CPU: ${os.cpus()[0].model}`));\n console.log(\n color.green(`Memory: ${(os.totalmem() / 1024 / 1024).toFixed(0)} MB`)\n );\n console.log(\n `Node: ${checkVersion(\"Node\", nodeVersion, MIN_VERSIONS.node)}`\n );\n console.log(`npm: ${checkVersion(\"npm\", npmVersion, MIN_VERSIONS.npm)}`);\n console.log(\n `Yarn: ${checkVersion(\"Yarn\", yarnVersion, MIN_VERSIONS.yarn)}`\n );\n } catch (err) {\n s.stop();\n console.error(\n color.red(\"❌ Failed to fetch system environment info:\"),\n err\n );\n }\n}\n","import { compareVersions } from \"./compareVersions\";\nimport color from \"picocolors\";\n\nexport function checkVersion(\n name: string,\n version: string,\n minVersion: string\n) {\n if (version === \"unknown\" || compareVersions(version, minVersion) < 0) {\n return color.red(`❌ ${name} >= ${minVersion} required`);\n }\n return color.green(`✅ ${version}`);\n}\n","import gradient from \"gradient-string\";\n\nconst banners = [\n ` ░███ ░██ ░██ ░████████ ░██ ░██ ░█░██████\n ░██░██ ░██ ░██ ░██ ░██ ░██ ░██ ░██ \n ░██ ░██░██░███░██░██████░███████░███████░██ ░██░██ ░█░███████░███████░██ ░██ ░██ \n░████████░███ ░█░██ ░██ ░██ ░█░████████ ░██ ░██ ░██ ░██ ░█░██ ░██ ░██ \n░██ ░█░██ ░██░███████ ░██ ░██ ░█░██ ░█░██ ░██ ░██ ░████████░██ ░██ ░██ \n░██ ░█░██ ░██ ░██ ░██ ░██ ░█░██ ░█░██ ░███ ░██ ░██ ░██ ░██ ░██ \n░██ ░█░██ ░██░███████ ░███░███████░█████████ ░█████░██ ░███░███████ ░██████ ░██████\n ░██ \n ░███████ `,\n ` ▗▄▖▗▄▄▖▗▄▄▄▖▗▄▄▗▄▄▄▗▄▖▗▄▄▗▖ ▗▗▄▄▄▗▄▄▄▖ ▗▖ ▗▗▄▄▄▖\n▐▌ ▐▐▌ ▐▌ █ ▐▌ █▐▌ ▐▐▌ ▐▝▚▞▘ █ ▐▌ ▐▌ ▐▌ █ \n▐▛▀▜▐▛▀▚▖ █ ▝▀▚▖ █▐▌ ▐▐▛▀▚▖▐▌ █ ▐▛▀▀▘ ▐▌ ▐▌ █ \n▐▌ ▐▐▌ ▐▗▄█▄▗▄▄▞▘ █▝▚▄▞▐▙▄▞▘▐▌ █ ▐▙▄▄▖ ▝▚▄▞▗▄█▄▖`,\n ` _ _ _ ___ _ _ _ ___ \n /_\\\\ _ _(_)__| |_ ___| _ )_ _| |_ ___ | | | |_ _|\n / _ \\\\| '_| (_-< _/ _ \\\\ _ \\\\ || | _/ -_) | |_| || | \n/_/ \\\\_\\\\_| |_/__/\\\\__\\\\___/___/\\\\_, |\\\\__\\\\___| \\\\___/|___|\n |__/ `,\n ` _____ _____ \n( ___ ) ( ___ )\n | |~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| | \n | | \\\\ _) | __ ) | | | _ _| | | \n | | _ \\\\ __| | __| __| _ \\\\ __ \\\\ | | __| _ \\\\ | | | | | \n | | ___ \\\\ | | \\\\__ \\\\ | ( | | | | | | __/ | | | | | \n | | _/ _\\\\ _| _| ____/ \\\\__| \\\\___/ ____/ \\\\__, | \\\\__| \\\\___| \\\\___/ ___| | | \n | | ____/ | | \n |___|~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|___| \n(_____) (_____)`,\n ` \\\\ _) | __ ) | | | _ _|\n _ \\\\ __| | __| __| _ \\\\ __ \\\\ | | __| _ \\\\ | | | \n ___ \\\\ | | \\\\__ \\\\ | ( | | | | | | __/ | | | \n_/ _\\\\ _| _| ____/ \\\\__| \\\\___/ ____/ \\\\__, | \\\\__| \\\\___| \\\\___/ ___|\n ____/ `,\n ` ___ _ __ ____ __ __ ______\n / | _____(______/ /_____ / __ )__ __/ /____ / / / / _/\n / /| | / ___/ / ___/ __/ __ \\\\/ __ / / / / __/ _ \\\\ / / / // / \n / ___ |/ / / (__ / /_/ /_/ / /_/ / /_/ / /_/ __/ / /_/ _/ / \n/_/ |_/_/ /_/____/\\\\__/\\\\____/_____/\\\\__, /\\\\__/\\\\___/ \\\\____/___/ \n /____/ `,\n ` ██ \n ▒██▒ ██ ██████▒ ██ ███████ \n ▓██▓ ██ ██ ███████▓ ██ ██ ███████ \n ████ ██ ██ ▒██ ██ ██ ██ ██ \n ████ ██░███████ ▒████████████░████░██ ███▓ ▓████████░████▒ ██ ██ ██ \n ▒█▓▓█▒██████████ █████████████░████████ ▒█▒██ ████████░██████▒ ██ ██ ██ \n ▓█▒▒█▓███░ ██ ██▒ ░▒█ ██ ███ █████████░██▒ ██░ ██ ██▒ ▒██ ██ ██ ██ \n ██ ████ ██ █████▓░ ██ ██░ ░████████░███▒██ ██ ████████ ██ ██ ██ \n ████████ ██ ░██████▒ ██ ██ ███ ▒██░██▓█▓ ██ ████████ ██ ██ ██ \n ░████████ ██ ░▒▓██ ██ ██░ ░███ ██ ████░ ██ ██ ██ ██ ██ \n ▒██ ████ ██ █▒░ ▒██ ██░ ███ ████ ▒██ ▒███ ██░ ███░ ▒█ ██▓ ▓██ ██ \n ███ ████ ███████████████ ████░██████████████ ██▓ ████░███████ ▒████████████ \n ██▒ ▒███ ███████░▓████▓ ░████░████░██████▓ ██░ ░████░█████▒ ▒████▒██████ \n ▒██ \n ███▒ \n ███ `,\n];\n\nexport function getBanner() {\n const logoGradient = gradient([\n \"#ffee27\",\n \"#fec800\",\n \"#f18e35\",\n \"#e95f32\",\n \"#e2312d\",\n \"#e95f32\",\n \"#f18e35\",\n \"#fec800\",\n \"#ffee27\",\n \"#fec800\",\n \"#f18e35\",\n \"#e95f32\",\n \"#e2312d\",\n \"#e95f32\",\n \"#f18e35\",\n \"#fec800\",\n \"#ffee27\",\n \"#fec800\",\n \"#f18e35\",\n \"#e95f32\",\n \"#e2312d\",\n ]);\n\n return logoGradient.multiline(banners[0]);\n}\n","import color from \"picocolors\";\n\nexport function command(text: string) {\n // Approximate gradient by alternating colors\n return color.yellow(text);\n}\n\nexport function bracket(text: string) {\n return color.redBright(text);\n}\n","{\n \"name\": \"@aristobyte-ui/cli\",\n \"description\": \"The official AristoByteUI CLI — initialize projects, install, upgrade, remove, and manage UI components seamlessly.\",\n \"version\": \"1.0.46\",\n \"license\": \"MIT\",\n \"private\": false,\n \"author\": \"AristoByte <info@aristobyte.com>\",\n \"homepage\": \"https://www.npmjs.com/package/@aristobyte-ui/cli\",\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"git+https://github.com/aristobyte-team/aristobyte-ui.git\",\n \"directory\": \"./\"\n },\n \"bugs\": {\n \"url\": \"https://github.com/aristobyte-team/aristobyte-ui.git/issues\"\n },\n \"engines\": {\n \"node\": \">=20.17.0\",\n \"npm\": \">=10.8.2\",\n \"yarn\": \">=1.22.22\"\n },\n \"keywords\": [\n \"aristobyte\",\n \"cli\",\n \"ui\",\n \"components\",\n \"typescript\",\n \"node\",\n \"developer-tools\",\n \"project-bootstrap\",\n \"package-management\"\n ],\n \"files\": [\n \"dist\"\n ],\n \"publishConfig\": {\n \"access\": \"public\"\n },\n \"main\": \"dist/index.js\",\n \"module\": \"dist/index.mjs\",\n \"bin\": {\n \"aristobyte-ui\": \"dist/index.js\"\n },\n \"exports\": {\n \".\": {\n \"import\": \"./dist/index.mjs\",\n \"require\": \"./dist/index.js\"\n }\n },\n \"scripts\": {\n \"build\": \"tsup\",\n \"build:watch\": \"tsup ./index.ts --watch\",\n \"dev\": \"tsup ./index.ts --watch\",\n \"start\": \"node ./bin/aristobyte-ui.js\",\n \"lint\": \"eslint . --ext .ts,.tsx --max-warnings 0\",\n \"lint:fix\": \"eslint . --ext .ts,.tsx --fix\",\n \"check-types\": \"tsc --noEmit\",\n \"bump\": \"changeset && changeset version\",\n \"status\": \"changeset status\",\n \"release\": \"changeset publish\"\n },\n \"dependencies\": {\n \"@aristobyte-ui/eslint-config\": \"^1.0.46\",\n \"@aristobyte-ui/typescript-config\": \"^1.0.46\",\n \"@clack/prompts\": \"^0.11.0\",\n \"axios\": \"^1.6.0\",\n \"commander\": \"^11.0.0\",\n \"execa\": \"^8.0.0\",\n \"gradient-string\": \"^3.0.0\"\n },\n \"devDependencies\": {\n \"@changesets/changelog-github\": \"^0.5.1\",\n \"@changesets/cli\": \"^2.29.6\",\n \"@types/node\": \"^24.3.1\",\n \"eslint\": \"^9.35.0\",\n \"ts-node\": \"^10.9.2\",\n \"tsup\": \"^8.5.0\",\n \"typescript\": \"^5.9.2\"\n }\n}\n"],"mappings":"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","names":["exports","module","env","import_picocolors","color","import_execa","import_prompts","import_picocolors","color","import_prompts","import_execa","import_picocolors","color","import_prompts","import_execa","import_picocolors","color","import_picocolors","fs","color","import_prompts","import_picocolors","color","import_child_process","import_prompts","import_picocolors","color","import_picocolors","command","color","os","gradient","import_picocolors","text","color","color"]}
1
+ {"version":3,"sources":["../../../node_modules/picocolors/picocolors.js","../index.ts","../commands/add.ts","../utils/installPackage.ts","../commands/init.ts","../commands/remove.ts","../commands/upgrade.ts","../commands/list.ts","../commands/doctor.ts","../utils/compareVersions.ts","../commands/env.ts","../utils/checkVersion.ts","../utils/colors.ts","../utils/getBanner.ts","../utils/typography.ts","../package.json"],"sourcesContent":["let p = process || {}, argv = p.argv || [], env = p.env || {}\nlet isColorSupported =\n\t!(!!env.NO_COLOR || argv.includes(\"--no-color\")) &&\n\t(!!env.FORCE_COLOR || argv.includes(\"--color\") || p.platform === \"win32\" || ((p.stdout || {}).isTTY && env.TERM !== \"dumb\") || !!env.CI)\n\nlet formatter = (open, close, replace = open) =>\n\tinput => {\n\t\tlet string = \"\" + input, index = string.indexOf(close, open.length)\n\t\treturn ~index ? open + replaceClose(string, close, replace, index) + close : open + string + close\n\t}\n\nlet replaceClose = (string, close, replace, index) => {\n\tlet result = \"\", cursor = 0\n\tdo {\n\t\tresult += string.substring(cursor, index) + replace\n\t\tcursor = index + close.length\n\t\tindex = string.indexOf(close, cursor)\n\t} while (~index)\n\treturn result + string.substring(cursor)\n}\n\nlet createColors = (enabled = isColorSupported) => {\n\tlet f = enabled ? formatter : () => String\n\treturn {\n\t\tisColorSupported: enabled,\n\t\treset: f(\"\\x1b[0m\", \"\\x1b[0m\"),\n\t\tbold: f(\"\\x1b[1m\", \"\\x1b[22m\", \"\\x1b[22m\\x1b[1m\"),\n\t\tdim: f(\"\\x1b[2m\", \"\\x1b[22m\", \"\\x1b[22m\\x1b[2m\"),\n\t\titalic: f(\"\\x1b[3m\", \"\\x1b[23m\"),\n\t\tunderline: f(\"\\x1b[4m\", \"\\x1b[24m\"),\n\t\tinverse: f(\"\\x1b[7m\", \"\\x1b[27m\"),\n\t\thidden: f(\"\\x1b[8m\", \"\\x1b[28m\"),\n\t\tstrikethrough: f(\"\\x1b[9m\", \"\\x1b[29m\"),\n\n\t\tblack: f(\"\\x1b[30m\", \"\\x1b[39m\"),\n\t\tred: f(\"\\x1b[31m\", \"\\x1b[39m\"),\n\t\tgreen: f(\"\\x1b[32m\", \"\\x1b[39m\"),\n\t\tyellow: f(\"\\x1b[33m\", \"\\x1b[39m\"),\n\t\tblue: f(\"\\x1b[34m\", \"\\x1b[39m\"),\n\t\tmagenta: f(\"\\x1b[35m\", \"\\x1b[39m\"),\n\t\tcyan: f(\"\\x1b[36m\", \"\\x1b[39m\"),\n\t\twhite: f(\"\\x1b[37m\", \"\\x1b[39m\"),\n\t\tgray: f(\"\\x1b[90m\", \"\\x1b[39m\"),\n\n\t\tbgBlack: f(\"\\x1b[40m\", \"\\x1b[49m\"),\n\t\tbgRed: f(\"\\x1b[41m\", \"\\x1b[49m\"),\n\t\tbgGreen: f(\"\\x1b[42m\", \"\\x1b[49m\"),\n\t\tbgYellow: f(\"\\x1b[43m\", \"\\x1b[49m\"),\n\t\tbgBlue: f(\"\\x1b[44m\", \"\\x1b[49m\"),\n\t\tbgMagenta: f(\"\\x1b[45m\", \"\\x1b[49m\"),\n\t\tbgCyan: f(\"\\x1b[46m\", \"\\x1b[49m\"),\n\t\tbgWhite: f(\"\\x1b[47m\", \"\\x1b[49m\"),\n\n\t\tblackBright: f(\"\\x1b[90m\", \"\\x1b[39m\"),\n\t\tredBright: f(\"\\x1b[91m\", \"\\x1b[39m\"),\n\t\tgreenBright: f(\"\\x1b[92m\", \"\\x1b[39m\"),\n\t\tyellowBright: f(\"\\x1b[93m\", \"\\x1b[39m\"),\n\t\tblueBright: f(\"\\x1b[94m\", \"\\x1b[39m\"),\n\t\tmagentaBright: f(\"\\x1b[95m\", \"\\x1b[39m\"),\n\t\tcyanBright: f(\"\\x1b[96m\", \"\\x1b[39m\"),\n\t\twhiteBright: f(\"\\x1b[97m\", \"\\x1b[39m\"),\n\n\t\tbgBlackBright: f(\"\\x1b[100m\", \"\\x1b[49m\"),\n\t\tbgRedBright: f(\"\\x1b[101m\", \"\\x1b[49m\"),\n\t\tbgGreenBright: f(\"\\x1b[102m\", \"\\x1b[49m\"),\n\t\tbgYellowBright: f(\"\\x1b[103m\", \"\\x1b[49m\"),\n\t\tbgBlueBright: f(\"\\x1b[104m\", \"\\x1b[49m\"),\n\t\tbgMagentaBright: f(\"\\x1b[105m\", \"\\x1b[49m\"),\n\t\tbgCyanBright: f(\"\\x1b[106m\", \"\\x1b[49m\"),\n\t\tbgWhiteBright: f(\"\\x1b[107m\", \"\\x1b[49m\"),\n\t}\n}\n\nmodule.exports = createColors()\nmodule.exports.createColors = createColors\n","#!/usr/bin/env node\n\nimport { Command } from \"commander\";\n\nimport { add } from \"./commands/add\";\nimport { init } from \"./commands/init\";\nimport { remove } from \"./commands/remove\";\nimport { upgrade } from \"./commands/upgrade\";\nimport { list } from \"./commands/list\";\nimport { doctor } from \"./commands/doctor\";\nimport { env } from \"./commands/env\";\n\nimport { getBanner } from \"./utils/getBanner\";\nimport {\n logoSmallGradient,\n logo3,\n logo4,\n darkGrey,\n lightGrey,\n} from \"./utils/colors\";\nimport { usage, description } from \"./utils/typography\";\nimport pkg from \"./package.json\";\n\nconst COMMANDS = [\n \"init\",\n \"add\",\n \"remove\",\n \"upgrade\",\n \"list\",\n \"doctor\",\n \"env\",\n \"help\",\n];\n\nconst aristobyteui = new Command();\n\naristobyteui\n .name(\"aristobyte-ui\")\n .usage(usage([\"command\", \"options\"]))\n .description(\"Initialize a new AristoByteUI project\")\n .version(pkg.version, \"-V, --version\", \"Output the CLI version\")\n .helpOption(\"-H, --help\", \"Show help information\");\n\naristobyteui\n .command(\"init\")\n .usage(usage([\"options\", \"myProjectName\"]))\n .description(\"Initialize a new AristoByteUI project\")\n .action((myProjectName) => {\n init(myProjectName);\n });\naristobyteui\n .command(\"add\")\n .usage(usage([\"options\", \"components...\"]))\n .description(\"Add a UI component\")\n .action(add);\naristobyteui\n .command(\"remove\")\n .usage(usage([\"options\", \"components...\"]))\n .description(\"Remove a UI component\")\n .action(remove);\naristobyteui\n .command(\"upgrade\")\n .usage(usage([\"options\", \"components...\"]))\n .description(\"Upgrade a UI component\")\n .action(upgrade);\naristobyteui\n .command(\"list\")\n .usage(usage([\"options\"]))\n .description(\"List installed components\")\n .action(list);\naristobyteui\n .command(\"doctor\")\n .usage(usage([\"options\"]))\n .description(\"Check system and project health\")\n .action(doctor);\naristobyteui\n .command(\"env\")\n .usage(usage([\"options\"]))\n .description(\"Display environment info\")\n .action(env);\naristobyteui\n .command(\"help\")\n .usage(usage([\"options\"]))\n .description(\"Display help for command\")\n .action(env);\naristobyteui.command(\"help\", { hidden: true });\n\naristobyteui.configureHelp({\n formatHelp: (cmd, helper) => `\n${getBanner()}\n${logoSmallGradient(\"Usage:\")} \n ${logo3(helper.commandUsage(cmd))}\n\n${logoSmallGradient(\"Description:\")}\n ${darkGrey(\n \"Create new AristoByteUI projects or manage existing projects with full control\"\n )}\n ${darkGrey(\"over components, dependencies, and UI stack configuration. Supports initialization,\")}\n ${darkGrey(\n \"addition, removal, upgrading of components, and project diagnostics.\"\n )}\n\n${logoSmallGradient(\"Commands:\")}\n${helper\n .visibleCommands(cmd)\n .map(\n (c) =>\n ` ${`${logo3(c.name()).padEnd(31)} ${c.usage() || \"\".padEnd(30)}`.padEnd(129)} ${description(c.description())}`\n )\n .join(\"\\n\")}\n\n${logoSmallGradient(\"Options:\")}\n${helper\n .visibleOptions(cmd)\n .map((option) => {\n const flagsArray = option.flags.split(/,\\s*/);\n const styledFlags = `${logo3(flagsArray[0])}${darkGrey(\", \")}${logo4(flagsArray[1])}`;\n return ` ${styledFlags.padEnd(93)} ${description(option.description)}`;\n })\n .join(\"\\n\")}\n\n${logoSmallGradient(\"Tip:\")}\n ${lightGrey(\"Use 'aristobyte-ui [ command ] --help' for detailed info on a command.\")}\n`,\n});\n\naristobyteui.exitOverride(async (err) => {\n if (err.code === \"commander.unknownCommand\") {\n console.error(\n logoSmallGradient(\" ◆ Possible commands are: \\n\"),\n ...COMMANDS.map((cmd) =>\n cmd === err.message.split(\"Did you mean \")[1].split(\"?\")[0]\n ? `${logoSmallGradient(\"│ \")}${logo4(\"● aristobyte-ui\")} ${logo4(`${cmd}`)}\\n`\n : `${logoSmallGradient(\"│ ○ aristobyte-ui\")} ${logo3(`${cmd}`)}\\n`\n )\n );\n }\n\n process.exit(1);\n});\n\n(async () => {\n const args = process.argv.slice(2);\n\n if (args.length === 0) {\n aristobyteui.outputHelp();\n process.exit(0);\n }\n\n try {\n await aristobyteui.parseAsync(args, { from: \"user\" });\n process.exit(1);\n } catch {\n process.exit(1);\n }\n})();\n","import { spinner } from \"@clack/prompts\";\nimport { installPackage } from \"../utils/installPackage\";\nimport color from \"picocolors\";\n\nexport async function add(component: string) {\n const s = spinner();\n try {\n s.start(`Installing ${component}...`);\n\n if (component === \"all\") {\n await installPackage(\"yarn\", \"@aristobyte-ui/react\");\n s.stop();\n console.log(color.green(\"✅ All components installed!\"));\n return;\n }\n\n const pkgName = `@aristobyte-ui/${component}`;\n await installPackage(\"yarn\", pkgName);\n s.stop();\n console.log(color.green(`✅ Component ${component} installed!`));\n } catch (err) {\n s.stop();\n console.error(\n color.red(`❌ Failed to install component ${component}`),\n err\n );\n }\n}\n","import { execa } from \"execa\";\n\nexport async function installPackage(\n pkgManager: \"npm\" | \"yarn\" | \"pnpm\" | \"bun\",\n pkg: string,\n dev: boolean = false\n) {\n let args: string[] = [];\n\n switch (pkgManager) {\n case \"npm\":\n args = [\"install\", pkg, dev ? \"--save-dev\" : \"--save\"];\n break;\n case \"yarn\":\n args = [\"add\", pkg];\n if (dev) args.push(\"-D\");\n break;\n case \"pnpm\":\n args = [\"add\", pkg];\n if (dev) args.push(\"-D\");\n break;\n case \"bun\":\n args = [\"add\", pkg];\n if (dev) args.push(\"-d\");\n break;\n default:\n throw new Error(`Unsupported package manager: ${pkgManager}`);\n }\n\n await execa(pkgManager, args, { stdio: \"inherit\" });\n}\n","import { execa } from \"execa\";\nimport { select, text, spinner } from \"@clack/prompts\";\nimport color from \"picocolors\";\n\nconst TEMPLATES = [\n {\n id: \"aristobyte-ui-template-nextjs-15-app-router\",\n name: \"Next App Router\",\n desc: \"A Next.js 15 with app-router directory template pre-configured with AristoByteUI.\",\n repo: \"https://github.com/aristobyte-team/aristobyte-ui-template-nextjs-15-app-router.git\",\n },\n {\n id: \"aristobyte-ui-template-nextjs-15-pages\",\n name: \"Next Pages\",\n desc: \"A Next.js 15 with pages directory template pre-configured with AristoByteUI.\",\n repo: \"https://github.com/aristobyte-team/aristobyte-ui-template-nextjs-15-pages.git\",\n },\n {\n id: \"aristobyte-ui-template-vite\",\n name: \"Vite\",\n desc: \"A Vite template pre-configured with AristoByteUI.\",\n repo: \"https://github.com/aristobyte-team/aristobyte-ui-template-vite.git\",\n },\n {\n id: \"aristobyte-ui-template-astro\",\n name: \"Astro\",\n desc: \"An Astro template pre-configured with AristoByteUI.\",\n repo: \"https://github.com/aristobyte-team/aristobyte-ui-template-astro.git\",\n },\n {\n id: \"aristobyte-ui-template-cra\",\n name: \"CRA\",\n desc: \"A Create React App template pre-configured with AristoByteUI.\",\n repo: \"https://github.com/aristobyte-team/aristobyte-ui-template-cra.git\",\n },\n];\n\nconst PACKAGE_MANAGERS = [\"npm\", \"yarn\", \"pnpm\", \"bun\"];\nconst DEFAULT_NAME = \"aristobyte-ui-app\";\n\nexport async function init(myProjectName = DEFAULT_NAME) {\n console.log(color.cyan(\"┌ Create a new project\"));\n\n const projectNameResult = await text({\n message: \"New project name (Enter to skip with default name)\",\n placeholder: myProjectName,\n });\n\n const projectName = (String(projectNameResult) || myProjectName).trim();\n\n const templateIndex = await select({\n message: \"Select a template (Enter to select)\",\n options: TEMPLATES.map((t, i) => ({\n value: i + \"\",\n label: `${t.name} (${t.desc})`,\n })),\n });\n\n const template = TEMPLATES[Number(templateIndex)];\n\n const packageManagerIndex = await select({\n message: \"Select a package manager (Enter to select)\",\n options: PACKAGE_MANAGERS.map((pm, i) => ({\n value: i.toString(),\n label: pm,\n })),\n });\n\n const packageManager = PACKAGE_MANAGERS[Number(packageManagerIndex)];\n\n console.log(color.cyan(\"\\nTemplate created successfully!\\n\"));\n\n const s = spinner();\n try {\n s.start(\n `Preparing '${template.name}' with ${packageManager} configuration...`\n );\n\n // Clone directly the branch that matches the package manager\n await execa(\n \"git\",\n [\n \"clone\",\n \"--branch\",\n packageManager,\n \"--single-branch\",\n template.repo,\n projectName,\n ],\n {\n stdio: \"ignore\",\n }\n );\n\n await execa(\"rm\", [\"-rf\", \".git\"], { stdio: \"ignore\", cwd: projectName });\n\n s.stop();\n console.log(color.green(\"✅ Project initialized successfully!\\n\"));\n\n // Next steps hint\n console.log(color.cyan(\"Next steps:\"));\n console.log(color.cyan(` cd ${projectName}`));\n console.log(color.cyan(` ${packageManager} install`));\n console.log(color.cyan(` ${packageManager} run dev\\n`));\n } catch (err) {\n s.stop();\n console.error(color.red(\"❌ Failed to initialize project\"), err);\n }\n}\n","import { spinner } from \"@clack/prompts\";\nimport { execa } from \"execa\";\nimport color from \"picocolors\";\n\nexport async function remove(component: string) {\n const s = spinner();\n try {\n const pkgName =\n component === \"all\"\n ? \"@aristobyte-ui/react\"\n : `@aristobyte-ui/${component}`;\n s.start(`Removing ${pkgName}...`);\n await execa(\"yarn\", [\"remove\", pkgName], { stdio: \"inherit\" });\n s.stop();\n console.log(color.green(`✅ ${pkgName} removed successfully!`));\n } catch (err) {\n s.stop();\n console.error(color.red(`❌ Failed to remove component ${component}`), err);\n }\n}\n","import { spinner } from \"@clack/prompts\";\nimport { execa } from \"execa\";\nimport color from \"picocolors\";\n\nexport async function upgrade(component: string) {\n const s = spinner();\n try {\n const pkgName =\n component === \"all\"\n ? \"@aristobyte-ui/react\"\n : `@aristobyte-ui/${component}`;\n s.start(`Upgrading ${pkgName}...`);\n await execa(\"yarn\", [\"upgrade\", pkgName], { stdio: \"inherit\" });\n s.stop();\n console.log(color.green(`✅ ${pkgName} upgraded successfully!`));\n } catch (err) {\n s.stop();\n console.error(\n color.red(`❌ Failed to upgrade component ${component}`),\n err\n );\n }\n}\n","import fs from \"fs\";\nimport color from \"picocolors\";\n\nexport async function list() {\n try {\n const pkgJson = JSON.parse(fs.readFileSync(\"package.json\", \"utf-8\"));\n const deps = pkgJson.dependencies || {};\n const aristobyteDeps = Object.keys(deps).filter((d) =>\n d.startsWith(\"@aristobyte-ui/\")\n );\n\n console.log(color.blue(\"Installed AristoByteUI components:\"));\n aristobyteDeps.forEach((dep) => console.log(color.green(dep)));\n } catch (err) {\n console.error(color.red(\"❌ Failed to list components\"), err);\n }\n}\n","import { execSync } from \"child_process\";\nimport { spinner } from \"@clack/prompts\";\nimport { compareVersions } from \"../utils/compareVersions\";\nimport color from \"picocolors\";\n\nconst MIN_NODE_VERSION = \"20.19.0\";\n\nexport async function doctor() {\n const s = spinner();\n try {\n s.start(\"Running project health checks...\");\n\n // Node\n let nodeVersion = \"unknown\";\n try {\n nodeVersion = execSync(\"node -v\").toString().trim();\n } catch (err) {\n console.error(color.red(\"❌ Failed to detect Node version:\"), err);\n }\n\n let nodeStatus = \"✅ OK\";\n if (\n nodeVersion !== \"unknown\" &&\n compareVersions(nodeVersion, MIN_NODE_VERSION) < 0\n ) {\n nodeStatus = color.red(`❌ Node >= ${MIN_NODE_VERSION} required`);\n }\n\n // Yarn\n let yarnVersion = \"unknown\";\n try {\n yarnVersion = execSync(\"yarn -v\").toString().trim();\n } catch (err) {\n console.error(color.red(\"❌ Failed to detect Yarn version:\"), err);\n }\n\n s.stop();\n console.log(color.green(`Node version: ${nodeVersion} ${nodeStatus}`));\n console.log(color.green(`Yarn version: ${yarnVersion}`));\n console.log(color.green(\"All basic health checks completed!\"));\n } catch (err) {\n s.stop();\n console.error(color.red(\"❌ Doctor check failed\"), err);\n }\n}\n","export function compareVersions(v1: string, v2: string) {\n const a = v1.replace(/^v/, \"\").split(\".\").map(Number);\n const b = v2.replace(/^v/, \"\").split(\".\").map(Number);\n for (let i = 0; i < 3; i++) {\n if (a[i] > b[i]) return 1;\n if (a[i] < b[i]) return -1;\n }\n return 0;\n}\n","import os from \"os\";\nimport { execSync } from \"child_process\";\nimport { spinner } from \"@clack/prompts\";\nimport { checkVersion } from \"../utils/checkVersion\";\nimport color from \"picocolors\";\n\nconst MIN_VERSIONS = {\n node: \"20.17.0\",\n npm: \"10.8.2\",\n yarn: \"1.22.22\",\n};\n\nfunction getVersion(command: string, name: string): string {\n try {\n return execSync(command).toString().trim();\n } catch (err) {\n console.error(color.red(`❌ Failed to detect ${name} version:`), err);\n return \"unknown\";\n }\n}\n\nexport async function env() {\n const s = spinner();\n try {\n s.start(\"Fetching system environment info...\");\n\n const nodeVersion = getVersion(\"node -v\", \"Node\");\n const npmVersion = getVersion(\"npm -v\", \"npm\");\n const yarnVersion = getVersion(\"yarn -v\", \"Yarn\");\n\n s.stop();\n\n console.log(color.blue(\"System Environment Info:\"));\n console.log(\n color.green(`OS: ${os.type()} ${os.release()} (${os.platform()})`)\n );\n console.log(color.green(`CPU: ${os.cpus()[0].model}`));\n console.log(\n color.green(`Memory: ${(os.totalmem() / 1024 / 1024).toFixed(0)} MB`)\n );\n console.log(\n `Node: ${checkVersion(\"Node\", nodeVersion, MIN_VERSIONS.node)}`\n );\n console.log(`npm: ${checkVersion(\"npm\", npmVersion, MIN_VERSIONS.npm)}`);\n console.log(\n `Yarn: ${checkVersion(\"Yarn\", yarnVersion, MIN_VERSIONS.yarn)}`\n );\n } catch (err) {\n s.stop();\n console.error(\n color.red(\"❌ Failed to fetch system environment info:\"),\n err\n );\n }\n}\n","import { compareVersions } from \"./compareVersions\";\nimport color from \"picocolors\";\n\nexport function checkVersion(\n name: string,\n version: string,\n minVersion: string\n) {\n if (version === \"unknown\" || compareVersions(version, minVersion) < 0) {\n return color.red(`❌ ${name} >= ${minVersion} required`);\n }\n return color.green(`✅ ${version}`);\n}\n","import chalk from \"chalk\";\nimport gradient from \"gradient-string\";\n\nconst LOGO_COLORS = [\"#ffee27\", \"#fec800\", \"#f18e35\", \"#e95f32\", \"#e2312d\"];\n\nexport function logo1(text: string) {\n return chalk.hex(LOGO_COLORS[0])(text);\n}\nexport function logo2(text: string) {\n return chalk.hex(LOGO_COLORS[1])(text);\n}\nexport function logo3(text: string) {\n return chalk.hex(LOGO_COLORS[2])(text);\n}\nexport function logo4(text: string) {\n return chalk.hex(LOGO_COLORS[3])(text);\n}\nexport function logo5(text: string) {\n return chalk.hex(LOGO_COLORS[4])(text);\n}\n\nexport function reset(text: string) {\n return chalk.reset(text);\n}\n\nexport function red(text: string) {\n return chalk.redBright(text);\n}\n\nexport function lightGrey(text: string) {\n return chalk.hex(\"#afbfff\")(text);\n}\n\nexport function darkGrey(text: string) {\n return chalk.hex(\"#7580aa\")(text);\n}\n\nexport function white(text: string) {\n return chalk.hex(\"#cfd5edff\")(text);\n}\n\nexport function yellow(text: string) {\n return chalk.yellow(text);\n}\n\nexport function redBright(text: string) {\n return chalk.redBright(text);\n}\n\nexport function logoGradient(text: string) {\n return gradient([\n ...LOGO_COLORS,\n ...LOGO_COLORS.reverse(),\n ...LOGO_COLORS,\n ...LOGO_COLORS.reverse(),\n ...LOGO_COLORS,\n ]).multiline(text);\n}\n\nexport function logoSmallGradient(text: string) {\n return gradient([\n LOGO_COLORS[0],\n LOGO_COLORS[1],\n LOGO_COLORS[1],\n LOGO_COLORS[0],\n LOGO_COLORS[0],\n LOGO_COLORS[1],\n ]).multiline(text);\n}\n","import { logoGradient } from \"./colors\";\n\nconst banners = [\n ` ░███ ░██ ░██ ░████████ ░██ ░██ ░█░██████\n ░██░██ ░██ ░██ ░██ ░██ ░██ ░██ ░██ \n ░██ ░██░██░███░██░██████░███████░███████░██ ░██░██ ░█░███████░███████░██ ░██ ░██ \n░████████░███ ░█░██ ░██ ░██ ░█░████████ ░██ ░██ ░██ ░██ ░█░██ ░██ ░██ \n░██ ░█░██ ░██░███████ ░██ ░██ ░█░██ ░█░██ ░██ ░██ ░████████░██ ░██ ░██ \n░██ ░█░██ ░██ ░██ ░██ ░██ ░█░██ ░█░██ ░███ ░██ ░██ ░██ ░██ ░██ \n░██ ░█░██ ░██░███████ ░███░███████░█████████ ░█████░██ ░███░███████ ░██████ ░██████\n ░██ \n ░███████ `,\n ` ▗▄▖▗▄▄▖▗▄▄▄▖▗▄▄▗▄▄▄▗▄▖▗▄▄▗▖ ▗▗▄▄▄▗▄▄▄▖ ▗▖ ▗▗▄▄▄▖\n▐▌ ▐▐▌ ▐▌ █ ▐▌ █▐▌ ▐▐▌ ▐▝▚▞▘ █ ▐▌ ▐▌ ▐▌ █ \n▐▛▀▜▐▛▀▚▖ █ ▝▀▚▖ █▐▌ ▐▐▛▀▚▖▐▌ █ ▐▛▀▀▘ ▐▌ ▐▌ █ \n▐▌ ▐▐▌ ▐▗▄█▄▗▄▄▞▘ █▝▚▄▞▐▙▄▞▘▐▌ █ ▐▙▄▄▖ ▝▚▄▞▗▄█▄▖`,\n ` _ _ _ ___ _ _ _ ___ \n /_\\\\ _ _(_)__| |_ ___| _ )_ _| |_ ___ | | | |_ _|\n / _ \\\\| '_| (_-< _/ _ \\\\ _ \\\\ || | _/ -_) | |_| || | \n/_/ \\\\_\\\\_| |_/__/\\\\__\\\\___/___/\\\\_, |\\\\__\\\\___| \\\\___/|___|\n |__/ `,\n ` _____ _____ \n( ___ ) ( ___ )\n | |~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| | \n | | \\\\ _) | __ ) | | | _ _| | | \n | | _ \\\\ __| | __| __| _ \\\\ __ \\\\ | | __| _ \\\\ | | | | | \n | | ___ \\\\ | | \\\\__ \\\\ | ( | | | | | | __/ | | | | | \n | | _/ _\\\\ _| _| ____/ \\\\__| \\\\___/ ____/ \\\\__, | \\\\__| \\\\___| \\\\___/ ___| | | \n | | ____/ | | \n |___|~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|___| \n(_____) (_____)`,\n ` \\\\ _) | __ ) | | | _ _|\n _ \\\\ __| | __| __| _ \\\\ __ \\\\ | | __| _ \\\\ | | | \n ___ \\\\ | | \\\\__ \\\\ | ( | | | | | | __/ | | | \n_/ _\\\\ _| _| ____/ \\\\__| \\\\___/ ____/ \\\\__, | \\\\__| \\\\___| \\\\___/ ___|\n ____/ `,\n ` ___ _ __ ____ __ __ ______\n / | _____(______/ /_____ / __ )__ __/ /____ / / / / _/\n / /| | / ___/ / ___/ __/ __ \\\\/ __ / / / / __/ _ \\\\ / / / // / \n / ___ |/ / / (__ / /_/ /_/ / /_/ / /_/ / /_/ __/ / /_/ _/ / \n/_/ |_/_/ /_/____/\\\\__/\\\\____/_____/\\\\__, /\\\\__/\\\\___/ \\\\____/___/ \n /____/ `,\n ` ██ \n ▒██▒ ██ ██████▒ ██ ███████ \n ▓██▓ ██ ██ ███████▓ ██ ██ ███████ \n ████ ██ ██ ▒██ ██ ██ ██ ██ \n ████ ██░███████ ▒████████████░████░██ ███▓ ▓████████░████▒ ██ ██ ██ \n ▒█▓▓█▒██████████ █████████████░████████ ▒█▒██ ████████░██████▒ ██ ██ ██ \n ▓█▒▒█▓███░ ██ ██▒ ░▒█ ██ ███ █████████░██▒ ██░ ██ ██▒ ▒██ ██ ██ ██ \n ██ ████ ██ █████▓░ ██ ██░ ░████████░███▒██ ██ ████████ ██ ██ ██ \n ████████ ██ ░██████▒ ██ ██ ███ ▒██░██▓█▓ ██ ████████ ██ ██ ██ \n ░████████ ██ ░▒▓██ ██ ██░ ░███ ██ ████░ ██ ██ ██ ██ ██ \n ▒██ ████ ██ █▒░ ▒██ ██░ ███ ████ ▒██ ▒███ ██░ ███░ ▒█ ██▓ ▓██ ██ \n ███ ████ ███████████████ ████░██████████████ ██▓ ████░███████ ▒████████████ \n ██▒ ▒███ ███████░▓████▓ ░████░████░██████▓ ██░ ░████░█████▒ ▒████▒██████ \n ▒██ \n ███▒ \n ███ `,\n];\n\nexport function getBanner() {\n return logoGradient(banners[0]);\n}\n","import { logo4, darkGrey, lightGrey } from \"./colors\";\n\nexport function usage(params: string[]) {\n return params\n .map((param) => `${logo4(\"[\")} ${lightGrey(param)} ${logo4(\"]\")}`)\n .join(\" \");\n}\n\nexport function description(text: string) {\n return darkGrey(`- ${text}`);\n}\n","{\n \"name\": \"@aristobyte-ui/cli\",\n \"description\": \"The official AristoByteUI CLI — initialize projects, install, upgrade, remove, and manage UI components seamlessly.\",\n \"version\": \"1.0.48\",\n \"license\": \"MIT\",\n \"private\": false,\n \"author\": \"AristoByte <info@aristobyte.com>\",\n \"homepage\": \"https://www.npmjs.com/package/@aristobyte-ui/cli\",\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"git+https://github.com/aristobyte-team/aristobyte-ui.git\",\n \"directory\": \"./\"\n },\n \"bugs\": {\n \"url\": \"https://github.com/aristobyte-team/aristobyte-ui.git/issues\"\n },\n \"engines\": {\n \"node\": \">=20.17.0\",\n \"npm\": \">=10.8.2\",\n \"yarn\": \">=1.22.22\"\n },\n \"keywords\": [\n \"aristobyte\",\n \"cli\",\n \"ui\",\n \"components\",\n \"typescript\",\n \"node\",\n \"developer-tools\",\n \"project-bootstrap\",\n \"package-management\"\n ],\n \"files\": [\n \"dist\"\n ],\n \"publishConfig\": {\n \"access\": \"public\"\n },\n \"main\": \"dist/index.js\",\n \"module\": \"dist/index.mjs\",\n \"bin\": {\n \"aristobyte-ui\": \"dist/index.js\"\n },\n \"exports\": {\n \".\": {\n \"import\": \"./dist/index.mjs\",\n \"require\": \"./dist/index.js\"\n }\n },\n \"scripts\": {\n \"build\": \"tsup\",\n \"build:watch\": \"tsup ./index.ts --watch\",\n \"dev\": \"tsup && node ./bin/aristobyte-ui.js\",\n \"start\": \"node ./bin/aristobyte-ui.js\",\n \"lint\": \"eslint . --ext .ts,.tsx --max-warnings 0\",\n \"lint:fix\": \"eslint . --ext .ts,.tsx --fix\",\n \"check-types\": \"tsc --noEmit\",\n \"bump\": \"changeset && changeset version\",\n \"status\": \"changeset status\",\n \"release\": \"changeset publish\"\n },\n \"dependencies\": {\n \"@aristobyte-ui/eslint-config\": \"^1.0.48\",\n \"@aristobyte-ui/typescript-config\": \"^1.0.48\",\n \"@clack/prompts\": \"^0.11.0\",\n \"axios\": \"^1.6.0\",\n \"chalk\": \"^5.6.1\",\n \"commander\": \"^11.0.0\",\n \"execa\": \"^8.0.0\",\n \"gradient-string\": \"^3.0.0\"\n },\n \"devDependencies\": {\n \"@changesets/changelog-github\": \"^0.5.1\",\n \"@changesets/cli\": \"^2.29.6\",\n \"@types/node\": \"^24.3.1\",\n \"eslint\": \"^9.35.0\",\n \"ts-node\": \"^10.9.2\",\n \"tsup\": \"^8.5.0\",\n \"typescript\": \"^5.9.2\"\n }\n}\n"],"mappings":"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","names":["exports","module","env","color","import_execa","import_prompts","import_picocolors","color","import_prompts","import_execa","import_picocolors","color","import_prompts","import_execa","import_picocolors","color","import_picocolors","fs","color","import_prompts","import_picocolors","color","import_child_process","import_prompts","import_picocolors","color","import_picocolors","color","os","text","chalk","text","chalk","text","gradient","text"]}
package/dist/index.mjs CHANGED
@@ -1,5 +1,4 @@
1
1
  #!/usr/bin/env node
2
- #!/usr/bin/env node
3
2
  var __create = Object.create;
4
3
  var __defProp = Object.defineProperty;
5
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -100,7 +99,6 @@ var require_picocolors = __commonJS({
100
99
  });
101
100
 
102
101
  // index.ts
103
- var import_picocolors10 = __toESM(require_picocolors());
104
102
  import { Command } from "commander";
105
103
 
106
104
  // commands/add.ts
@@ -195,13 +193,13 @@ var TEMPLATES = [
195
193
  ];
196
194
  var PACKAGE_MANAGERS = ["npm", "yarn", "pnpm", "bun"];
197
195
  var DEFAULT_NAME = "aristobyte-ui-app";
198
- async function init() {
196
+ async function init(myProjectName = DEFAULT_NAME) {
199
197
  console.log(import_picocolors2.default.cyan("\u250C Create a new project"));
200
198
  const projectNameResult = await text({
201
199
  message: "New project name (Enter to skip with default name)",
202
- placeholder: DEFAULT_NAME
200
+ placeholder: myProjectName
203
201
  });
204
- const projectName = (String(projectNameResult) || DEFAULT_NAME).trim();
202
+ const projectName = (String(projectNameResult) || myProjectName).trim();
205
203
  const templateIndex = await select({
206
204
  message: "Select a template (Enter to select)",
207
205
  options: TEMPLATES.map((t, i) => ({
@@ -377,9 +375,9 @@ var MIN_VERSIONS = {
377
375
  npm: "10.8.2",
378
376
  yarn: "1.22.22"
379
377
  };
380
- function getVersion(command2, name) {
378
+ function getVersion(command, name) {
381
379
  try {
382
- return execSync2(command2).toString().trim();
380
+ return execSync2(command).toString().trim();
383
381
  } catch (err) {
384
382
  console.error(import_picocolors8.default.red(`\u274C Failed to detect ${name} version:`), err);
385
383
  return "unknown";
@@ -417,8 +415,43 @@ async function env() {
417
415
  }
418
416
  }
419
417
 
420
- // utils/getBanner.ts
418
+ // utils/colors.ts
419
+ import chalk from "chalk";
421
420
  import gradient from "gradient-string";
421
+ var LOGO_COLORS = ["#ffee27", "#fec800", "#f18e35", "#e95f32", "#e2312d"];
422
+ function logo3(text2) {
423
+ return chalk.hex(LOGO_COLORS[2])(text2);
424
+ }
425
+ function logo4(text2) {
426
+ return chalk.hex(LOGO_COLORS[3])(text2);
427
+ }
428
+ function lightGrey(text2) {
429
+ return chalk.hex("#afbfff")(text2);
430
+ }
431
+ function darkGrey(text2) {
432
+ return chalk.hex("#7580aa")(text2);
433
+ }
434
+ function logoGradient(text2) {
435
+ return gradient([
436
+ ...LOGO_COLORS,
437
+ ...LOGO_COLORS.reverse(),
438
+ ...LOGO_COLORS,
439
+ ...LOGO_COLORS.reverse(),
440
+ ...LOGO_COLORS
441
+ ]).multiline(text2);
442
+ }
443
+ function logoSmallGradient(text2) {
444
+ return gradient([
445
+ LOGO_COLORS[0],
446
+ LOGO_COLORS[1],
447
+ LOGO_COLORS[1],
448
+ LOGO_COLORS[0],
449
+ LOGO_COLORS[0],
450
+ LOGO_COLORS[1]
451
+ ]).multiline(text2);
452
+ }
453
+
454
+ // utils/getBanner.ts
422
455
  var banners = [
423
456
  ` \u2591\u2588\u2588\u2588 \u2591\u2588\u2588 \u2591\u2588\u2588 \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2591\u2588\u2588 \u2591\u2588\u2588 \u2591\u2588\u2591\u2588\u2588\u2588\u2588\u2588\u2588
424
457
  \u2591\u2588\u2588\u2591\u2588\u2588 \u2591\u2588\u2588 \u2591\u2588\u2588 \u2591\u2588\u2588 \u2591\u2588\u2588 \u2591\u2588\u2588 \u2591\u2588\u2588 \u2591\u2588\u2588
@@ -477,46 +510,22 @@ _/ _\\ _| _| ____/ \\__| \\___/ ____/ \\__, | \\__| \\___| \\___/
477
510
  \u2588\u2588\u2588 `
478
511
  ];
479
512
  function getBanner() {
480
- const logoGradient = gradient([
481
- "#ffee27",
482
- "#fec800",
483
- "#f18e35",
484
- "#e95f32",
485
- "#e2312d",
486
- "#e95f32",
487
- "#f18e35",
488
- "#fec800",
489
- "#ffee27",
490
- "#fec800",
491
- "#f18e35",
492
- "#e95f32",
493
- "#e2312d",
494
- "#e95f32",
495
- "#f18e35",
496
- "#fec800",
497
- "#ffee27",
498
- "#fec800",
499
- "#f18e35",
500
- "#e95f32",
501
- "#e2312d"
502
- ]);
503
- return logoGradient.multiline(banners[0]);
513
+ return logoGradient(banners[0]);
504
514
  }
505
515
 
506
516
  // utils/typography.ts
507
- var import_picocolors9 = __toESM(require_picocolors());
508
- function command(text2) {
509
- return import_picocolors9.default.yellow(text2);
517
+ function usage(params) {
518
+ return params.map((param) => `${logo4("[")} ${lightGrey(param)} ${logo4("]")}`).join(" ");
510
519
  }
511
- function bracket(text2) {
512
- return import_picocolors9.default.redBright(text2);
520
+ function description(text2) {
521
+ return darkGrey(`- ${text2}`);
513
522
  }
514
523
 
515
524
  // package.json
516
525
  var package_default = {
517
526
  name: "@aristobyte-ui/cli",
518
527
  description: "The official AristoByteUI CLI \u2014 initialize projects, install, upgrade, remove, and manage UI components seamlessly.",
519
- version: "1.0.46",
528
+ version: "1.0.48",
520
529
  license: "MIT",
521
530
  private: false,
522
531
  author: "AristoByte <info@aristobyte.com>",
@@ -565,7 +574,7 @@ var package_default = {
565
574
  scripts: {
566
575
  build: "tsup",
567
576
  "build:watch": "tsup ./index.ts --watch",
568
- dev: "tsup ./index.ts --watch",
577
+ dev: "tsup && node ./bin/aristobyte-ui.js",
569
578
  start: "node ./bin/aristobyte-ui.js",
570
579
  lint: "eslint . --ext .ts,.tsx --max-warnings 0",
571
580
  "lint:fix": "eslint . --ext .ts,.tsx --fix",
@@ -575,10 +584,11 @@ var package_default = {
575
584
  release: "changeset publish"
576
585
  },
577
586
  dependencies: {
578
- "@aristobyte-ui/eslint-config": "^1.0.46",
579
- "@aristobyte-ui/typescript-config": "^1.0.46",
587
+ "@aristobyte-ui/eslint-config": "^1.0.48",
588
+ "@aristobyte-ui/typescript-config": "^1.0.48",
580
589
  "@clack/prompts": "^0.11.0",
581
590
  axios: "^1.6.0",
591
+ chalk: "^5.6.1",
582
592
  commander: "^11.0.0",
583
593
  execa: "^8.0.0",
584
594
  "gradient-string": "^3.0.0"
@@ -595,51 +605,84 @@ var package_default = {
595
605
  };
596
606
 
597
607
  // index.ts
598
- var program = new Command();
599
- program.name("aristobyte-ui").description(import_picocolors10.default.bgMagenta(import_picocolors10.default.black(" \u{1F680} Welcome to AristoByteUI CLI "))).version(package_default.version, "-V, --version", import_picocolors10.default.green("Output the CLI version"));
600
- program.configureHelp({
608
+ var COMMANDS = [
609
+ "init",
610
+ "add",
611
+ "remove",
612
+ "upgrade",
613
+ "list",
614
+ "doctor",
615
+ "env",
616
+ "help"
617
+ ];
618
+ var aristobyteui = new Command();
619
+ aristobyteui.name("aristobyte-ui").usage(usage(["command", "options"])).description("Initialize a new AristoByteUI project").version(package_default.version, "-V, --version", "Output the CLI version").helpOption("-H, --help", "Show help information");
620
+ aristobyteui.command("init").usage(usage(["options", "myProjectName"])).description("Initialize a new AristoByteUI project").action((myProjectName) => {
621
+ init(myProjectName);
622
+ });
623
+ aristobyteui.command("add").usage(usage(["options", "components..."])).description("Add a UI component").action(add);
624
+ aristobyteui.command("remove").usage(usage(["options", "components..."])).description("Remove a UI component").action(remove);
625
+ aristobyteui.command("upgrade").usage(usage(["options", "components..."])).description("Upgrade a UI component").action(upgrade);
626
+ aristobyteui.command("list").usage(usage(["options"])).description("List installed components").action(list);
627
+ aristobyteui.command("doctor").usage(usage(["options"])).description("Check system and project health").action(doctor);
628
+ aristobyteui.command("env").usage(usage(["options"])).description("Display environment info").action(env);
629
+ aristobyteui.command("help").usage(usage(["options"])).description("Display help for command").action(env);
630
+ aristobyteui.command("help", { hidden: true });
631
+ aristobyteui.configureHelp({
601
632
  formatHelp: (cmd, helper) => `
602
633
  ${getBanner()}
603
- ${import_picocolors10.default.bold("Usage:")} ${helper.commandUsage(cmd)}
634
+ ${logoSmallGradient("Usage:")}
635
+ ${logo3(helper.commandUsage(cmd))}
604
636
 
605
- ${import_picocolors10.default.bold("Description:")}
606
- ${cmd.description()}
637
+ ${logoSmallGradient("Description:")}
638
+ ${darkGrey(
639
+ "Create new AristoByteUI projects or manage existing projects with full control"
640
+ )}
641
+ ${darkGrey("over components, dependencies, and UI stack configuration. Supports initialization,")}
642
+ ${darkGrey(
643
+ "addition, removal, upgrading of components, and project diagnostics."
644
+ )}
607
645
 
608
- ${import_picocolors10.default.bold("Commands:")}
646
+ ${logoSmallGradient("Commands:")}
609
647
  ${helper.visibleCommands(cmd).map(
610
- (c) => ` ${`${c.name().padEnd(22)} ${c.usage() || "".padEnd(37)}`.padEnd(92)} ${c.description()}`
648
+ (c) => ` ${`${logo3(c.name()).padEnd(31)} ${c.usage() || "".padEnd(30)}`.padEnd(129)} ${description(c.description())}`
611
649
  ).join("\n")}
612
650
 
613
- ${import_picocolors10.default.bold("Options:")}
614
- ${helper.visibleOptions(cmd).map((o) => ` ${import_picocolors10.default.yellow(o.flags).padEnd(25)} ${o.description}`).join("\n")}
651
+ ${logoSmallGradient("Options:")}
652
+ ${helper.visibleOptions(cmd).map((option) => {
653
+ const flagsArray = option.flags.split(/,\s*/);
654
+ const styledFlags = `${logo3(flagsArray[0])}${darkGrey(", ")}${logo4(flagsArray[1])}`;
655
+ return ` ${styledFlags.padEnd(93)} ${description(option.description)}`;
656
+ }).join("\n")}
615
657
 
616
- ${import_picocolors10.default.dim(import_picocolors10.default.gray("Tip: Use 'aristobyte-ui [ command ] --help' for detailed info on a command."))}
658
+ ${logoSmallGradient("Tip:")}
659
+ ${lightGrey("Use 'aristobyte-ui [ command ] --help' for detailed info on a command.")}
660
+ `
661
+ });
662
+ aristobyteui.exitOverride(async (err) => {
663
+ if (err.code === "commander.unknownCommand") {
664
+ console.error(
665
+ logoSmallGradient(" \u25C6 Possible commands are: \n"),
666
+ ...COMMANDS.map(
667
+ (cmd) => cmd === err.message.split("Did you mean ")[1].split("?")[0] ? `${logoSmallGradient("\u2502 ")}${logo4("\u25CF aristobyte-ui")} ${logo4(`${cmd}`)}
668
+ ` : `${logoSmallGradient("\u2502 \u25CB aristobyte-ui")} ${logo3(`${cmd}`)}
617
669
  `
670
+ )
671
+ );
672
+ }
673
+ process.exit(1);
618
674
  });
619
- program.command(command("init") + import_picocolors10.default.reset(" ")).usage(
620
- `${bracket("[")} ${import_picocolors10.default.gray("options")} ${bracket("]")}${import_picocolors10.default.reset(" ")} ${bracket("[")} ${import_picocolors10.default.gray("myProjectName")} ${bracket("]")}${import_picocolors10.default.reset(" ")}`
621
- ).description("Initialize a new AristoByteUI project").action(init);
622
- program.command(command("add") + import_picocolors10.default.reset(" ")).usage(
623
- `${bracket("[")} ${import_picocolors10.default.gray("options")} ${bracket("]")}${import_picocolors10.default.reset(" ")} ${bracket("[")} ${import_picocolors10.default.gray("components...")} ${bracket("]")}${import_picocolors10.default.reset(" ")}`
624
- ).description("Add a UI component").action(add);
625
- program.command(command("remove") + import_picocolors10.default.reset(" ")).usage(
626
- `${bracket("[")} ${import_picocolors10.default.gray("options")} ${bracket("]")}${import_picocolors10.default.reset(" ")} ${bracket("[")} ${import_picocolors10.default.gray("components...")} ${bracket("]")}${import_picocolors10.default.reset(" ")}`
627
- ).description("Remove a UI component").action(remove);
628
- program.command(command("upgrade") + import_picocolors10.default.reset(" ")).usage(
629
- `${bracket("[")} ${import_picocolors10.default.gray("options")} ${bracket("]")}${import_picocolors10.default.reset(" ")} ${bracket("[")} ${import_picocolors10.default.gray("components...")} ${bracket("]")}${import_picocolors10.default.reset(" ")}`
630
- ).description("Upgrade a UI component").action(upgrade);
631
- program.command(command("list") + import_picocolors10.default.reset(" ")).usage(
632
- `${bracket("[")} ${import_picocolors10.default.gray("options")} ${bracket("]")}${import_picocolors10.default.reset(" ")}`
633
- ).description("List installed components").action(list);
634
- program.command(command("doctor") + import_picocolors10.default.reset(" ")).usage(
635
- `${bracket("[")} ${import_picocolors10.default.gray("options")} ${bracket("]")}${import_picocolors10.default.reset(" ")}`
636
- ).description("Check system and project health").action(doctor);
637
- program.command(command("env") + import_picocolors10.default.reset(" ")).usage(
638
- `${bracket("[")} ${import_picocolors10.default.gray("options")} ${bracket("]")}${import_picocolors10.default.reset(" ")}`
639
- ).description("Display environment info").action(env);
640
- program.command(command("help") + import_picocolors10.default.reset(" ")).usage(
641
- `${bracket("[")} ${import_picocolors10.default.gray("options")} ${bracket("]")}${import_picocolors10.default.reset(" ")}`
642
- ).description("Display help for command").action(env);
643
- program.command("help", { hidden: true });
644
- program.parseAsync(process.argv);
675
+ (async () => {
676
+ const args = process.argv.slice(2);
677
+ if (args.length === 0) {
678
+ aristobyteui.outputHelp();
679
+ process.exit(0);
680
+ }
681
+ try {
682
+ await aristobyteui.parseAsync(args, { from: "user" });
683
+ process.exit(1);
684
+ } catch {
685
+ process.exit(1);
686
+ }
687
+ })();
645
688
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../node_modules/picocolors/picocolors.js","../index.ts","../commands/add.ts","../utils/installPackage.ts","../commands/init.ts","../commands/remove.ts","../commands/upgrade.ts","../commands/list.ts","../commands/doctor.ts","../utils/compareVersions.ts","../commands/env.ts","../utils/checkVersion.ts","../utils/getBanner.ts","../utils/typography.ts","../package.json"],"sourcesContent":["let p = process || {}, argv = p.argv || [], env = p.env || {}\nlet isColorSupported =\n\t!(!!env.NO_COLOR || argv.includes(\"--no-color\")) &&\n\t(!!env.FORCE_COLOR || argv.includes(\"--color\") || p.platform === \"win32\" || ((p.stdout || {}).isTTY && env.TERM !== \"dumb\") || !!env.CI)\n\nlet formatter = (open, close, replace = open) =>\n\tinput => {\n\t\tlet string = \"\" + input, index = string.indexOf(close, open.length)\n\t\treturn ~index ? open + replaceClose(string, close, replace, index) + close : open + string + close\n\t}\n\nlet replaceClose = (string, close, replace, index) => {\n\tlet result = \"\", cursor = 0\n\tdo {\n\t\tresult += string.substring(cursor, index) + replace\n\t\tcursor = index + close.length\n\t\tindex = string.indexOf(close, cursor)\n\t} while (~index)\n\treturn result + string.substring(cursor)\n}\n\nlet createColors = (enabled = isColorSupported) => {\n\tlet f = enabled ? formatter : () => String\n\treturn {\n\t\tisColorSupported: enabled,\n\t\treset: f(\"\\x1b[0m\", \"\\x1b[0m\"),\n\t\tbold: f(\"\\x1b[1m\", \"\\x1b[22m\", \"\\x1b[22m\\x1b[1m\"),\n\t\tdim: f(\"\\x1b[2m\", \"\\x1b[22m\", \"\\x1b[22m\\x1b[2m\"),\n\t\titalic: f(\"\\x1b[3m\", \"\\x1b[23m\"),\n\t\tunderline: f(\"\\x1b[4m\", \"\\x1b[24m\"),\n\t\tinverse: f(\"\\x1b[7m\", \"\\x1b[27m\"),\n\t\thidden: f(\"\\x1b[8m\", \"\\x1b[28m\"),\n\t\tstrikethrough: f(\"\\x1b[9m\", \"\\x1b[29m\"),\n\n\t\tblack: f(\"\\x1b[30m\", \"\\x1b[39m\"),\n\t\tred: f(\"\\x1b[31m\", \"\\x1b[39m\"),\n\t\tgreen: f(\"\\x1b[32m\", \"\\x1b[39m\"),\n\t\tyellow: f(\"\\x1b[33m\", \"\\x1b[39m\"),\n\t\tblue: f(\"\\x1b[34m\", \"\\x1b[39m\"),\n\t\tmagenta: f(\"\\x1b[35m\", \"\\x1b[39m\"),\n\t\tcyan: f(\"\\x1b[36m\", \"\\x1b[39m\"),\n\t\twhite: f(\"\\x1b[37m\", \"\\x1b[39m\"),\n\t\tgray: f(\"\\x1b[90m\", \"\\x1b[39m\"),\n\n\t\tbgBlack: f(\"\\x1b[40m\", \"\\x1b[49m\"),\n\t\tbgRed: f(\"\\x1b[41m\", \"\\x1b[49m\"),\n\t\tbgGreen: f(\"\\x1b[42m\", \"\\x1b[49m\"),\n\t\tbgYellow: f(\"\\x1b[43m\", \"\\x1b[49m\"),\n\t\tbgBlue: f(\"\\x1b[44m\", \"\\x1b[49m\"),\n\t\tbgMagenta: f(\"\\x1b[45m\", \"\\x1b[49m\"),\n\t\tbgCyan: f(\"\\x1b[46m\", \"\\x1b[49m\"),\n\t\tbgWhite: f(\"\\x1b[47m\", \"\\x1b[49m\"),\n\n\t\tblackBright: f(\"\\x1b[90m\", \"\\x1b[39m\"),\n\t\tredBright: f(\"\\x1b[91m\", \"\\x1b[39m\"),\n\t\tgreenBright: f(\"\\x1b[92m\", \"\\x1b[39m\"),\n\t\tyellowBright: f(\"\\x1b[93m\", \"\\x1b[39m\"),\n\t\tblueBright: f(\"\\x1b[94m\", \"\\x1b[39m\"),\n\t\tmagentaBright: f(\"\\x1b[95m\", \"\\x1b[39m\"),\n\t\tcyanBright: f(\"\\x1b[96m\", \"\\x1b[39m\"),\n\t\twhiteBright: f(\"\\x1b[97m\", \"\\x1b[39m\"),\n\n\t\tbgBlackBright: f(\"\\x1b[100m\", \"\\x1b[49m\"),\n\t\tbgRedBright: f(\"\\x1b[101m\", \"\\x1b[49m\"),\n\t\tbgGreenBright: f(\"\\x1b[102m\", \"\\x1b[49m\"),\n\t\tbgYellowBright: f(\"\\x1b[103m\", \"\\x1b[49m\"),\n\t\tbgBlueBright: f(\"\\x1b[104m\", \"\\x1b[49m\"),\n\t\tbgMagentaBright: f(\"\\x1b[105m\", \"\\x1b[49m\"),\n\t\tbgCyanBright: f(\"\\x1b[106m\", \"\\x1b[49m\"),\n\t\tbgWhiteBright: f(\"\\x1b[107m\", \"\\x1b[49m\"),\n\t}\n}\n\nmodule.exports = createColors()\nmodule.exports.createColors = createColors\n","#!/usr/bin/env node\n\nimport color from \"picocolors\";\nimport { Command } from \"commander\";\n\nimport { add } from \"./commands/add\";\nimport { init } from \"./commands/init\";\nimport { remove } from \"./commands/remove\";\nimport { upgrade } from \"./commands/upgrade\";\nimport { list } from \"./commands/list\";\nimport { doctor } from \"./commands/doctor\";\nimport { env } from \"./commands/env\";\n\nimport { getBanner } from \"./utils/getBanner\";\nimport { command, bracket } from \"./utils/typography\";\nimport pkg from \"./package.json\";\n\nconst program = new Command();\n\nprogram\n .name(\"aristobyte-ui\")\n .description(color.bgMagenta(color.black(\" 🚀 Welcome to AristoByteUI CLI \")))\n .version(pkg.version, \"-V, --version\", color.green(\"Output the CLI version\"));\n\nprogram.configureHelp({\n formatHelp: (cmd, helper) => `\n${getBanner()}\n${color.bold(\"Usage:\")} ${helper.commandUsage(cmd)}\n\n${color.bold(\"Description:\")}\n ${cmd.description()}\n\n${color.bold(\"Commands:\")}\n${helper\n .visibleCommands(cmd)\n .map(\n (c) =>\n ` ${`${c.name().padEnd(22)} ${c.usage() || \"\".padEnd(37)}`.padEnd(92)} ${c.description()}`\n )\n .join(\"\\n\")}\n\n${color.bold(\"Options:\")}\n${helper\n .visibleOptions(cmd)\n .map((o) => ` ${color.yellow(o.flags).padEnd(25)} ${o.description}`)\n .join(\"\\n\")}\n\n${color.dim(color.gray(\"Tip: Use 'aristobyte-ui [ command ] --help' for detailed info on a command.\"))}\n`,\n});\n\nprogram\n .command(command(\"init\") + color.reset(\" \"))\n .usage(\n `${bracket(\"[\")} ${color.gray(\"options\")} ${bracket(\"]\")}${color.reset(\" \")} ${bracket(\"[\")} ${color.gray(\"myProjectName\")} ${bracket(\"]\")}${color.reset(\" \")}`\n )\n .description(\"Initialize a new AristoByteUI project\")\n .action(init);\nprogram\n .command(command(\"add\") + color.reset(\" \"))\n .usage(\n `${bracket(\"[\")} ${color.gray(\"options\")} ${bracket(\"]\")}${color.reset(\" \")} ${bracket(\"[\")} ${color.gray(\"components...\")} ${bracket(\"]\")}${color.reset(\" \")}`\n )\n .description(\"Add a UI component\")\n .action(add);\nprogram\n .command(command(\"remove\") + color.reset(\" \"))\n .usage(\n `${bracket(\"[\")} ${color.gray(\"options\")} ${bracket(\"]\")}${color.reset(\" \")} ${bracket(\"[\")} ${color.gray(\"components...\")} ${bracket(\"]\")}${color.reset(\" \")}`\n )\n .description(\"Remove a UI component\")\n .action(remove);\nprogram\n .command(command(\"upgrade\") + color.reset(\" \"))\n .usage(\n `${bracket(\"[\")} ${color.gray(\"options\")} ${bracket(\"]\")}${color.reset(\" \")} ${bracket(\"[\")} ${color.gray(\"components...\")} ${bracket(\"]\")}${color.reset(\" \")}`\n )\n .description(\"Upgrade a UI component\")\n .action(upgrade);\nprogram\n .command(command(\"list\") + color.reset(\" \"))\n .usage(\n `${bracket(\"[\")} ${color.gray(\"options\")} ${bracket(\"]\")}${color.reset(\" \")}`\n )\n .description(\"List installed components\")\n .action(list);\nprogram\n .command(command(\"doctor\") + color.reset(\" \"))\n .usage(\n `${bracket(\"[\")} ${color.gray(\"options\")} ${bracket(\"]\")}${color.reset(\" \")}`\n )\n .description(\"Check system and project health\")\n .action(doctor);\nprogram\n .command(command(\"env\") + color.reset(\" \"))\n .usage(\n `${bracket(\"[\")} ${color.gray(\"options\")} ${bracket(\"]\")}${color.reset(\" \")}`\n )\n .description(\"Display environment info\")\n .action(env);\nprogram\n .command(command(\"help\") + color.reset(\" \"))\n .usage(\n `${bracket(\"[\")} ${color.gray(\"options\")} ${bracket(\"]\")}${color.reset(\" \")}`\n )\n .description(\"Display help for command\")\n .action(env);\nprogram.command(\"help\", { hidden: true });\nprogram.parseAsync(process.argv);\n","import { spinner } from \"@clack/prompts\";\nimport { installPackage } from \"../utils/installPackage\";\nimport color from \"picocolors\";\n\nexport async function add(component: string) {\n const s = spinner();\n try {\n s.start(`Installing ${component}...`);\n\n if (component === \"all\") {\n await installPackage(\"yarn\", \"@aristobyte-ui/react\");\n s.stop();\n console.log(color.green(\"✅ All components installed!\"));\n return;\n }\n\n const pkgName = `@aristobyte-ui/${component}`;\n await installPackage(\"yarn\", pkgName);\n s.stop();\n console.log(color.green(`✅ Component ${component} installed!`));\n } catch (err) {\n s.stop();\n console.error(\n color.red(`❌ Failed to install component ${component}`),\n err\n );\n }\n}\n","import { execa } from \"execa\";\n\nexport async function installPackage(\n pkgManager: \"npm\" | \"yarn\" | \"pnpm\" | \"bun\",\n pkg: string,\n dev: boolean = false\n) {\n let args: string[] = [];\n\n switch (pkgManager) {\n case \"npm\":\n args = [\"install\", pkg, dev ? \"--save-dev\" : \"--save\"];\n break;\n case \"yarn\":\n args = [\"add\", pkg];\n if (dev) args.push(\"-D\");\n break;\n case \"pnpm\":\n args = [\"add\", pkg];\n if (dev) args.push(\"-D\");\n break;\n case \"bun\":\n args = [\"add\", pkg];\n if (dev) args.push(\"-d\");\n break;\n default:\n throw new Error(`Unsupported package manager: ${pkgManager}`);\n }\n\n await execa(pkgManager, args, { stdio: \"inherit\" });\n}\n","import { execa } from \"execa\";\nimport { select, text, spinner } from \"@clack/prompts\";\nimport color from \"picocolors\";\n\nconst TEMPLATES = [\n {\n id: \"aristobyte-ui-template-nextjs-15-app-router\",\n name: \"Next App Router\",\n desc: \"A Next.js 15 with app-router directory template pre-configured with AristoByteUI.\",\n repo: \"https://github.com/aristobyte-team/aristobyte-ui-template-nextjs-15-app-router.git\",\n },\n {\n id: \"aristobyte-ui-template-nextjs-15-pages\",\n name: \"Next Pages\",\n desc: \"A Next.js 15 with pages directory template pre-configured with AristoByteUI.\",\n repo: \"https://github.com/aristobyte-team/aristobyte-ui-template-nextjs-15-pages.git\",\n },\n {\n id: \"aristobyte-ui-template-vite\",\n name: \"Vite\",\n desc: \"A Vite template pre-configured with AristoByteUI.\",\n repo: \"https://github.com/aristobyte-team/aristobyte-ui-template-vite.git\",\n },\n {\n id: \"aristobyte-ui-template-astro\",\n name: \"Astro\",\n desc: \"An Astro template pre-configured with AristoByteUI.\",\n repo: \"https://github.com/aristobyte-team/aristobyte-ui-template-astro.git\",\n },\n {\n id: \"aristobyte-ui-template-cra\",\n name: \"CRA\",\n desc: \"A Create React App template pre-configured with AristoByteUI.\",\n repo: \"https://github.com/aristobyte-team/aristobyte-ui-template-cra.git\",\n },\n];\n\nconst PACKAGE_MANAGERS = [\"npm\", \"yarn\", \"pnpm\", \"bun\"];\nconst DEFAULT_NAME = \"aristobyte-ui-app\";\n\nexport async function init() {\n console.log(color.cyan(\"┌ Create a new project\"));\n\n const projectNameResult = await text({\n message: \"New project name (Enter to skip with default name)\",\n placeholder: DEFAULT_NAME,\n });\n\n const projectName = (String(projectNameResult) || DEFAULT_NAME).trim();\n\n const templateIndex = await select({\n message: \"Select a template (Enter to select)\",\n options: TEMPLATES.map((t, i) => ({\n value: i + \"\",\n label: `${t.name} (${t.desc})`,\n })),\n });\n\n const template = TEMPLATES[Number(templateIndex)];\n\n const packageManagerIndex = await select({\n message: \"Select a package manager (Enter to select)\",\n options: PACKAGE_MANAGERS.map((pm, i) => ({\n value: i.toString(),\n label: pm,\n })),\n });\n\n const packageManager = PACKAGE_MANAGERS[Number(packageManagerIndex)];\n\n console.log(color.cyan(\"\\nTemplate created successfully!\\n\"));\n\n const s = spinner();\n try {\n s.start(\n `Preparing '${template.name}' with ${packageManager} configuration...`\n );\n\n // Clone directly the branch that matches the package manager\n await execa(\n \"git\",\n [\n \"clone\",\n \"--branch\",\n packageManager,\n \"--single-branch\",\n template.repo,\n projectName,\n ],\n {\n stdio: \"ignore\",\n }\n );\n\n await execa(\"rm\", [\"-rf\", \".git\"], { stdio: \"ignore\", cwd: projectName });\n\n s.stop();\n console.log(color.green(\"✅ Project initialized successfully!\\n\"));\n\n // Next steps hint\n console.log(color.cyan(\"Next steps:\"));\n console.log(color.cyan(` cd ${projectName}`));\n console.log(color.cyan(` ${packageManager} install`));\n console.log(color.cyan(` ${packageManager} run dev\\n`));\n } catch (err) {\n s.stop();\n console.error(color.red(\"❌ Failed to initialize project\"), err);\n }\n}\n","import { spinner } from \"@clack/prompts\";\nimport { execa } from \"execa\";\nimport color from \"picocolors\";\n\nexport async function remove(component: string) {\n const s = spinner();\n try {\n const pkgName =\n component === \"all\"\n ? \"@aristobyte-ui/react\"\n : `@aristobyte-ui/${component}`;\n s.start(`Removing ${pkgName}...`);\n await execa(\"yarn\", [\"remove\", pkgName], { stdio: \"inherit\" });\n s.stop();\n console.log(color.green(`✅ ${pkgName} removed successfully!`));\n } catch (err) {\n s.stop();\n console.error(color.red(`❌ Failed to remove component ${component}`), err);\n }\n}\n","import { spinner } from \"@clack/prompts\";\nimport { execa } from \"execa\";\nimport color from \"picocolors\";\n\nexport async function upgrade(component: string) {\n const s = spinner();\n try {\n const pkgName =\n component === \"all\"\n ? \"@aristobyte-ui/react\"\n : `@aristobyte-ui/${component}`;\n s.start(`Upgrading ${pkgName}...`);\n await execa(\"yarn\", [\"upgrade\", pkgName], { stdio: \"inherit\" });\n s.stop();\n console.log(color.green(`✅ ${pkgName} upgraded successfully!`));\n } catch (err) {\n s.stop();\n console.error(\n color.red(`❌ Failed to upgrade component ${component}`),\n err\n );\n }\n}\n","import fs from \"fs\";\nimport color from \"picocolors\";\n\nexport async function list() {\n try {\n const pkgJson = JSON.parse(fs.readFileSync(\"package.json\", \"utf-8\"));\n const deps = pkgJson.dependencies || {};\n const aristobyteDeps = Object.keys(deps).filter((d) =>\n d.startsWith(\"@aristobyte-ui/\")\n );\n\n console.log(color.blue(\"Installed AristoByteUI components:\"));\n aristobyteDeps.forEach((dep) => console.log(color.green(dep)));\n } catch (err) {\n console.error(color.red(\"❌ Failed to list components\"), err);\n }\n}\n","import { execSync } from \"child_process\";\nimport { spinner } from \"@clack/prompts\";\nimport { compareVersions } from \"../utils/compareVersions\";\nimport color from \"picocolors\";\n\nconst MIN_NODE_VERSION = \"20.19.0\";\n\nexport async function doctor() {\n const s = spinner();\n try {\n s.start(\"Running project health checks...\");\n\n // Node\n let nodeVersion = \"unknown\";\n try {\n nodeVersion = execSync(\"node -v\").toString().trim();\n } catch (err) {\n console.error(color.red(\"❌ Failed to detect Node version:\"), err);\n }\n\n let nodeStatus = \"✅ OK\";\n if (\n nodeVersion !== \"unknown\" &&\n compareVersions(nodeVersion, MIN_NODE_VERSION) < 0\n ) {\n nodeStatus = color.red(`❌ Node >= ${MIN_NODE_VERSION} required`);\n }\n\n // Yarn\n let yarnVersion = \"unknown\";\n try {\n yarnVersion = execSync(\"yarn -v\").toString().trim();\n } catch (err) {\n console.error(color.red(\"❌ Failed to detect Yarn version:\"), err);\n }\n\n s.stop();\n console.log(color.green(`Node version: ${nodeVersion} ${nodeStatus}`));\n console.log(color.green(`Yarn version: ${yarnVersion}`));\n console.log(color.green(\"All basic health checks completed!\"));\n } catch (err) {\n s.stop();\n console.error(color.red(\"❌ Doctor check failed\"), err);\n }\n}\n","export function compareVersions(v1: string, v2: string) {\n const a = v1.replace(/^v/, \"\").split(\".\").map(Number);\n const b = v2.replace(/^v/, \"\").split(\".\").map(Number);\n for (let i = 0; i < 3; i++) {\n if (a[i] > b[i]) return 1;\n if (a[i] < b[i]) return -1;\n }\n return 0;\n}\n","import os from \"os\";\nimport { execSync } from \"child_process\";\nimport { spinner } from \"@clack/prompts\";\nimport { checkVersion } from \"../utils/checkVersion\";\nimport color from \"picocolors\";\n\nconst MIN_VERSIONS = {\n node: \"20.17.0\",\n npm: \"10.8.2\",\n yarn: \"1.22.22\",\n};\n\nfunction getVersion(command: string, name: string): string {\n try {\n return execSync(command).toString().trim();\n } catch (err) {\n console.error(color.red(`❌ Failed to detect ${name} version:`), err);\n return \"unknown\";\n }\n}\n\nexport async function env() {\n const s = spinner();\n try {\n s.start(\"Fetching system environment info...\");\n\n const nodeVersion = getVersion(\"node -v\", \"Node\");\n const npmVersion = getVersion(\"npm -v\", \"npm\");\n const yarnVersion = getVersion(\"yarn -v\", \"Yarn\");\n\n s.stop();\n\n console.log(color.blue(\"System Environment Info:\"));\n console.log(\n color.green(`OS: ${os.type()} ${os.release()} (${os.platform()})`)\n );\n console.log(color.green(`CPU: ${os.cpus()[0].model}`));\n console.log(\n color.green(`Memory: ${(os.totalmem() / 1024 / 1024).toFixed(0)} MB`)\n );\n console.log(\n `Node: ${checkVersion(\"Node\", nodeVersion, MIN_VERSIONS.node)}`\n );\n console.log(`npm: ${checkVersion(\"npm\", npmVersion, MIN_VERSIONS.npm)}`);\n console.log(\n `Yarn: ${checkVersion(\"Yarn\", yarnVersion, MIN_VERSIONS.yarn)}`\n );\n } catch (err) {\n s.stop();\n console.error(\n color.red(\"❌ Failed to fetch system environment info:\"),\n err\n );\n }\n}\n","import { compareVersions } from \"./compareVersions\";\nimport color from \"picocolors\";\n\nexport function checkVersion(\n name: string,\n version: string,\n minVersion: string\n) {\n if (version === \"unknown\" || compareVersions(version, minVersion) < 0) {\n return color.red(`❌ ${name} >= ${minVersion} required`);\n }\n return color.green(`✅ ${version}`);\n}\n","import gradient from \"gradient-string\";\n\nconst banners = [\n ` ░███ ░██ ░██ ░████████ ░██ ░██ ░█░██████\n ░██░██ ░██ ░██ ░██ ░██ ░██ ░██ ░██ \n ░██ ░██░██░███░██░██████░███████░███████░██ ░██░██ ░█░███████░███████░██ ░██ ░██ \n░████████░███ ░█░██ ░██ ░██ ░█░████████ ░██ ░██ ░██ ░██ ░█░██ ░██ ░██ \n░██ ░█░██ ░██░███████ ░██ ░██ ░█░██ ░█░██ ░██ ░██ ░████████░██ ░██ ░██ \n░██ ░█░██ ░██ ░██ ░██ ░██ ░█░██ ░█░██ ░███ ░██ ░██ ░██ ░██ ░██ \n░██ ░█░██ ░██░███████ ░███░███████░█████████ ░█████░██ ░███░███████ ░██████ ░██████\n ░██ \n ░███████ `,\n ` ▗▄▖▗▄▄▖▗▄▄▄▖▗▄▄▗▄▄▄▗▄▖▗▄▄▗▖ ▗▗▄▄▄▗▄▄▄▖ ▗▖ ▗▗▄▄▄▖\n▐▌ ▐▐▌ ▐▌ █ ▐▌ █▐▌ ▐▐▌ ▐▝▚▞▘ █ ▐▌ ▐▌ ▐▌ █ \n▐▛▀▜▐▛▀▚▖ █ ▝▀▚▖ █▐▌ ▐▐▛▀▚▖▐▌ █ ▐▛▀▀▘ ▐▌ ▐▌ █ \n▐▌ ▐▐▌ ▐▗▄█▄▗▄▄▞▘ █▝▚▄▞▐▙▄▞▘▐▌ █ ▐▙▄▄▖ ▝▚▄▞▗▄█▄▖`,\n ` _ _ _ ___ _ _ _ ___ \n /_\\\\ _ _(_)__| |_ ___| _ )_ _| |_ ___ | | | |_ _|\n / _ \\\\| '_| (_-< _/ _ \\\\ _ \\\\ || | _/ -_) | |_| || | \n/_/ \\\\_\\\\_| |_/__/\\\\__\\\\___/___/\\\\_, |\\\\__\\\\___| \\\\___/|___|\n |__/ `,\n ` _____ _____ \n( ___ ) ( ___ )\n | |~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| | \n | | \\\\ _) | __ ) | | | _ _| | | \n | | _ \\\\ __| | __| __| _ \\\\ __ \\\\ | | __| _ \\\\ | | | | | \n | | ___ \\\\ | | \\\\__ \\\\ | ( | | | | | | __/ | | | | | \n | | _/ _\\\\ _| _| ____/ \\\\__| \\\\___/ ____/ \\\\__, | \\\\__| \\\\___| \\\\___/ ___| | | \n | | ____/ | | \n |___|~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|___| \n(_____) (_____)`,\n ` \\\\ _) | __ ) | | | _ _|\n _ \\\\ __| | __| __| _ \\\\ __ \\\\ | | __| _ \\\\ | | | \n ___ \\\\ | | \\\\__ \\\\ | ( | | | | | | __/ | | | \n_/ _\\\\ _| _| ____/ \\\\__| \\\\___/ ____/ \\\\__, | \\\\__| \\\\___| \\\\___/ ___|\n ____/ `,\n ` ___ _ __ ____ __ __ ______\n / | _____(______/ /_____ / __ )__ __/ /____ / / / / _/\n / /| | / ___/ / ___/ __/ __ \\\\/ __ / / / / __/ _ \\\\ / / / // / \n / ___ |/ / / (__ / /_/ /_/ / /_/ / /_/ / /_/ __/ / /_/ _/ / \n/_/ |_/_/ /_/____/\\\\__/\\\\____/_____/\\\\__, /\\\\__/\\\\___/ \\\\____/___/ \n /____/ `,\n ` ██ \n ▒██▒ ██ ██████▒ ██ ███████ \n ▓██▓ ██ ██ ███████▓ ██ ██ ███████ \n ████ ██ ██ ▒██ ██ ██ ██ ██ \n ████ ██░███████ ▒████████████░████░██ ███▓ ▓████████░████▒ ██ ██ ██ \n ▒█▓▓█▒██████████ █████████████░████████ ▒█▒██ ████████░██████▒ ██ ██ ██ \n ▓█▒▒█▓███░ ██ ██▒ ░▒█ ██ ███ █████████░██▒ ██░ ██ ██▒ ▒██ ██ ██ ██ \n ██ ████ ██ █████▓░ ██ ██░ ░████████░███▒██ ██ ████████ ██ ██ ██ \n ████████ ██ ░██████▒ ██ ██ ███ ▒██░██▓█▓ ██ ████████ ██ ██ ██ \n ░████████ ██ ░▒▓██ ██ ██░ ░███ ██ ████░ ██ ██ ██ ██ ██ \n ▒██ ████ ██ █▒░ ▒██ ██░ ███ ████ ▒██ ▒███ ██░ ███░ ▒█ ██▓ ▓██ ██ \n ███ ████ ███████████████ ████░██████████████ ██▓ ████░███████ ▒████████████ \n ██▒ ▒███ ███████░▓████▓ ░████░████░██████▓ ██░ ░████░█████▒ ▒████▒██████ \n ▒██ \n ███▒ \n ███ `,\n];\n\nexport function getBanner() {\n const logoGradient = gradient([\n \"#ffee27\",\n \"#fec800\",\n \"#f18e35\",\n \"#e95f32\",\n \"#e2312d\",\n \"#e95f32\",\n \"#f18e35\",\n \"#fec800\",\n \"#ffee27\",\n \"#fec800\",\n \"#f18e35\",\n \"#e95f32\",\n \"#e2312d\",\n \"#e95f32\",\n \"#f18e35\",\n \"#fec800\",\n \"#ffee27\",\n \"#fec800\",\n \"#f18e35\",\n \"#e95f32\",\n \"#e2312d\",\n ]);\n\n return logoGradient.multiline(banners[0]);\n}\n","import color from \"picocolors\";\n\nexport function command(text: string) {\n // Approximate gradient by alternating colors\n return color.yellow(text);\n}\n\nexport function bracket(text: string) {\n return color.redBright(text);\n}\n","{\n \"name\": \"@aristobyte-ui/cli\",\n \"description\": \"The official AristoByteUI CLI — initialize projects, install, upgrade, remove, and manage UI components seamlessly.\",\n \"version\": \"1.0.46\",\n \"license\": \"MIT\",\n \"private\": false,\n \"author\": \"AristoByte <info@aristobyte.com>\",\n \"homepage\": \"https://www.npmjs.com/package/@aristobyte-ui/cli\",\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"git+https://github.com/aristobyte-team/aristobyte-ui.git\",\n \"directory\": \"./\"\n },\n \"bugs\": {\n \"url\": \"https://github.com/aristobyte-team/aristobyte-ui.git/issues\"\n },\n \"engines\": {\n \"node\": \">=20.17.0\",\n \"npm\": \">=10.8.2\",\n \"yarn\": \">=1.22.22\"\n },\n \"keywords\": [\n \"aristobyte\",\n \"cli\",\n \"ui\",\n \"components\",\n \"typescript\",\n \"node\",\n \"developer-tools\",\n \"project-bootstrap\",\n \"package-management\"\n ],\n \"files\": [\n \"dist\"\n ],\n \"publishConfig\": {\n \"access\": \"public\"\n },\n \"main\": \"dist/index.js\",\n \"module\": \"dist/index.mjs\",\n \"bin\": {\n \"aristobyte-ui\": \"dist/index.js\"\n },\n \"exports\": {\n \".\": {\n \"import\": \"./dist/index.mjs\",\n \"require\": \"./dist/index.js\"\n }\n },\n \"scripts\": {\n \"build\": \"tsup\",\n \"build:watch\": \"tsup ./index.ts --watch\",\n \"dev\": \"tsup ./index.ts --watch\",\n \"start\": \"node ./bin/aristobyte-ui.js\",\n \"lint\": \"eslint . --ext .ts,.tsx --max-warnings 0\",\n \"lint:fix\": \"eslint . --ext .ts,.tsx --fix\",\n \"check-types\": \"tsc --noEmit\",\n \"bump\": \"changeset && changeset version\",\n \"status\": \"changeset status\",\n \"release\": \"changeset publish\"\n },\n \"dependencies\": {\n \"@aristobyte-ui/eslint-config\": \"^1.0.46\",\n \"@aristobyte-ui/typescript-config\": \"^1.0.46\",\n \"@clack/prompts\": \"^0.11.0\",\n \"axios\": \"^1.6.0\",\n \"commander\": \"^11.0.0\",\n \"execa\": \"^8.0.0\",\n \"gradient-string\": \"^3.0.0\"\n },\n \"devDependencies\": {\n \"@changesets/changelog-github\": \"^0.5.1\",\n \"@changesets/cli\": \"^2.29.6\",\n \"@types/node\": \"^24.3.1\",\n \"eslint\": \"^9.35.0\",\n \"ts-node\": \"^10.9.2\",\n \"tsup\": \"^8.5.0\",\n \"typescript\": \"^5.9.2\"\n }\n}\n"],"mappings":"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","names":["env","import_picocolors","color","import_picocolors","execa","spinner","color","import_picocolors","spinner","execa","color","import_picocolors","spinner","execa","color","import_picocolors","color","spinner","import_picocolors","spinner","color","execSync","spinner","import_picocolors","color","import_picocolors","command","execSync","color","spinner","import_picocolors","text","color","color"]}
1
+ {"version":3,"sources":["../../../node_modules/picocolors/picocolors.js","../index.ts","../commands/add.ts","../utils/installPackage.ts","../commands/init.ts","../commands/remove.ts","../commands/upgrade.ts","../commands/list.ts","../commands/doctor.ts","../utils/compareVersions.ts","../commands/env.ts","../utils/checkVersion.ts","../utils/colors.ts","../utils/getBanner.ts","../utils/typography.ts","../package.json"],"sourcesContent":["let p = process || {}, argv = p.argv || [], env = p.env || {}\nlet isColorSupported =\n\t!(!!env.NO_COLOR || argv.includes(\"--no-color\")) &&\n\t(!!env.FORCE_COLOR || argv.includes(\"--color\") || p.platform === \"win32\" || ((p.stdout || {}).isTTY && env.TERM !== \"dumb\") || !!env.CI)\n\nlet formatter = (open, close, replace = open) =>\n\tinput => {\n\t\tlet string = \"\" + input, index = string.indexOf(close, open.length)\n\t\treturn ~index ? open + replaceClose(string, close, replace, index) + close : open + string + close\n\t}\n\nlet replaceClose = (string, close, replace, index) => {\n\tlet result = \"\", cursor = 0\n\tdo {\n\t\tresult += string.substring(cursor, index) + replace\n\t\tcursor = index + close.length\n\t\tindex = string.indexOf(close, cursor)\n\t} while (~index)\n\treturn result + string.substring(cursor)\n}\n\nlet createColors = (enabled = isColorSupported) => {\n\tlet f = enabled ? formatter : () => String\n\treturn {\n\t\tisColorSupported: enabled,\n\t\treset: f(\"\\x1b[0m\", \"\\x1b[0m\"),\n\t\tbold: f(\"\\x1b[1m\", \"\\x1b[22m\", \"\\x1b[22m\\x1b[1m\"),\n\t\tdim: f(\"\\x1b[2m\", \"\\x1b[22m\", \"\\x1b[22m\\x1b[2m\"),\n\t\titalic: f(\"\\x1b[3m\", \"\\x1b[23m\"),\n\t\tunderline: f(\"\\x1b[4m\", \"\\x1b[24m\"),\n\t\tinverse: f(\"\\x1b[7m\", \"\\x1b[27m\"),\n\t\thidden: f(\"\\x1b[8m\", \"\\x1b[28m\"),\n\t\tstrikethrough: f(\"\\x1b[9m\", \"\\x1b[29m\"),\n\n\t\tblack: f(\"\\x1b[30m\", \"\\x1b[39m\"),\n\t\tred: f(\"\\x1b[31m\", \"\\x1b[39m\"),\n\t\tgreen: f(\"\\x1b[32m\", \"\\x1b[39m\"),\n\t\tyellow: f(\"\\x1b[33m\", \"\\x1b[39m\"),\n\t\tblue: f(\"\\x1b[34m\", \"\\x1b[39m\"),\n\t\tmagenta: f(\"\\x1b[35m\", \"\\x1b[39m\"),\n\t\tcyan: f(\"\\x1b[36m\", \"\\x1b[39m\"),\n\t\twhite: f(\"\\x1b[37m\", \"\\x1b[39m\"),\n\t\tgray: f(\"\\x1b[90m\", \"\\x1b[39m\"),\n\n\t\tbgBlack: f(\"\\x1b[40m\", \"\\x1b[49m\"),\n\t\tbgRed: f(\"\\x1b[41m\", \"\\x1b[49m\"),\n\t\tbgGreen: f(\"\\x1b[42m\", \"\\x1b[49m\"),\n\t\tbgYellow: f(\"\\x1b[43m\", \"\\x1b[49m\"),\n\t\tbgBlue: f(\"\\x1b[44m\", \"\\x1b[49m\"),\n\t\tbgMagenta: f(\"\\x1b[45m\", \"\\x1b[49m\"),\n\t\tbgCyan: f(\"\\x1b[46m\", \"\\x1b[49m\"),\n\t\tbgWhite: f(\"\\x1b[47m\", \"\\x1b[49m\"),\n\n\t\tblackBright: f(\"\\x1b[90m\", \"\\x1b[39m\"),\n\t\tredBright: f(\"\\x1b[91m\", \"\\x1b[39m\"),\n\t\tgreenBright: f(\"\\x1b[92m\", \"\\x1b[39m\"),\n\t\tyellowBright: f(\"\\x1b[93m\", \"\\x1b[39m\"),\n\t\tblueBright: f(\"\\x1b[94m\", \"\\x1b[39m\"),\n\t\tmagentaBright: f(\"\\x1b[95m\", \"\\x1b[39m\"),\n\t\tcyanBright: f(\"\\x1b[96m\", \"\\x1b[39m\"),\n\t\twhiteBright: f(\"\\x1b[97m\", \"\\x1b[39m\"),\n\n\t\tbgBlackBright: f(\"\\x1b[100m\", \"\\x1b[49m\"),\n\t\tbgRedBright: f(\"\\x1b[101m\", \"\\x1b[49m\"),\n\t\tbgGreenBright: f(\"\\x1b[102m\", \"\\x1b[49m\"),\n\t\tbgYellowBright: f(\"\\x1b[103m\", \"\\x1b[49m\"),\n\t\tbgBlueBright: f(\"\\x1b[104m\", \"\\x1b[49m\"),\n\t\tbgMagentaBright: f(\"\\x1b[105m\", \"\\x1b[49m\"),\n\t\tbgCyanBright: f(\"\\x1b[106m\", \"\\x1b[49m\"),\n\t\tbgWhiteBright: f(\"\\x1b[107m\", \"\\x1b[49m\"),\n\t}\n}\n\nmodule.exports = createColors()\nmodule.exports.createColors = createColors\n","#!/usr/bin/env node\n\nimport { Command } from \"commander\";\n\nimport { add } from \"./commands/add\";\nimport { init } from \"./commands/init\";\nimport { remove } from \"./commands/remove\";\nimport { upgrade } from \"./commands/upgrade\";\nimport { list } from \"./commands/list\";\nimport { doctor } from \"./commands/doctor\";\nimport { env } from \"./commands/env\";\n\nimport { getBanner } from \"./utils/getBanner\";\nimport {\n logoSmallGradient,\n logo3,\n logo4,\n darkGrey,\n lightGrey,\n} from \"./utils/colors\";\nimport { usage, description } from \"./utils/typography\";\nimport pkg from \"./package.json\";\n\nconst COMMANDS = [\n \"init\",\n \"add\",\n \"remove\",\n \"upgrade\",\n \"list\",\n \"doctor\",\n \"env\",\n \"help\",\n];\n\nconst aristobyteui = new Command();\n\naristobyteui\n .name(\"aristobyte-ui\")\n .usage(usage([\"command\", \"options\"]))\n .description(\"Initialize a new AristoByteUI project\")\n .version(pkg.version, \"-V, --version\", \"Output the CLI version\")\n .helpOption(\"-H, --help\", \"Show help information\");\n\naristobyteui\n .command(\"init\")\n .usage(usage([\"options\", \"myProjectName\"]))\n .description(\"Initialize a new AristoByteUI project\")\n .action((myProjectName) => {\n init(myProjectName);\n });\naristobyteui\n .command(\"add\")\n .usage(usage([\"options\", \"components...\"]))\n .description(\"Add a UI component\")\n .action(add);\naristobyteui\n .command(\"remove\")\n .usage(usage([\"options\", \"components...\"]))\n .description(\"Remove a UI component\")\n .action(remove);\naristobyteui\n .command(\"upgrade\")\n .usage(usage([\"options\", \"components...\"]))\n .description(\"Upgrade a UI component\")\n .action(upgrade);\naristobyteui\n .command(\"list\")\n .usage(usage([\"options\"]))\n .description(\"List installed components\")\n .action(list);\naristobyteui\n .command(\"doctor\")\n .usage(usage([\"options\"]))\n .description(\"Check system and project health\")\n .action(doctor);\naristobyteui\n .command(\"env\")\n .usage(usage([\"options\"]))\n .description(\"Display environment info\")\n .action(env);\naristobyteui\n .command(\"help\")\n .usage(usage([\"options\"]))\n .description(\"Display help for command\")\n .action(env);\naristobyteui.command(\"help\", { hidden: true });\n\naristobyteui.configureHelp({\n formatHelp: (cmd, helper) => `\n${getBanner()}\n${logoSmallGradient(\"Usage:\")} \n ${logo3(helper.commandUsage(cmd))}\n\n${logoSmallGradient(\"Description:\")}\n ${darkGrey(\n \"Create new AristoByteUI projects or manage existing projects with full control\"\n )}\n ${darkGrey(\"over components, dependencies, and UI stack configuration. Supports initialization,\")}\n ${darkGrey(\n \"addition, removal, upgrading of components, and project diagnostics.\"\n )}\n\n${logoSmallGradient(\"Commands:\")}\n${helper\n .visibleCommands(cmd)\n .map(\n (c) =>\n ` ${`${logo3(c.name()).padEnd(31)} ${c.usage() || \"\".padEnd(30)}`.padEnd(129)} ${description(c.description())}`\n )\n .join(\"\\n\")}\n\n${logoSmallGradient(\"Options:\")}\n${helper\n .visibleOptions(cmd)\n .map((option) => {\n const flagsArray = option.flags.split(/,\\s*/);\n const styledFlags = `${logo3(flagsArray[0])}${darkGrey(\", \")}${logo4(flagsArray[1])}`;\n return ` ${styledFlags.padEnd(93)} ${description(option.description)}`;\n })\n .join(\"\\n\")}\n\n${logoSmallGradient(\"Tip:\")}\n ${lightGrey(\"Use 'aristobyte-ui [ command ] --help' for detailed info on a command.\")}\n`,\n});\n\naristobyteui.exitOverride(async (err) => {\n if (err.code === \"commander.unknownCommand\") {\n console.error(\n logoSmallGradient(\" ◆ Possible commands are: \\n\"),\n ...COMMANDS.map((cmd) =>\n cmd === err.message.split(\"Did you mean \")[1].split(\"?\")[0]\n ? `${logoSmallGradient(\"│ \")}${logo4(\"● aristobyte-ui\")} ${logo4(`${cmd}`)}\\n`\n : `${logoSmallGradient(\"│ ○ aristobyte-ui\")} ${logo3(`${cmd}`)}\\n`\n )\n );\n }\n\n process.exit(1);\n});\n\n(async () => {\n const args = process.argv.slice(2);\n\n if (args.length === 0) {\n aristobyteui.outputHelp();\n process.exit(0);\n }\n\n try {\n await aristobyteui.parseAsync(args, { from: \"user\" });\n process.exit(1);\n } catch {\n process.exit(1);\n }\n})();\n","import { spinner } from \"@clack/prompts\";\nimport { installPackage } from \"../utils/installPackage\";\nimport color from \"picocolors\";\n\nexport async function add(component: string) {\n const s = spinner();\n try {\n s.start(`Installing ${component}...`);\n\n if (component === \"all\") {\n await installPackage(\"yarn\", \"@aristobyte-ui/react\");\n s.stop();\n console.log(color.green(\"✅ All components installed!\"));\n return;\n }\n\n const pkgName = `@aristobyte-ui/${component}`;\n await installPackage(\"yarn\", pkgName);\n s.stop();\n console.log(color.green(`✅ Component ${component} installed!`));\n } catch (err) {\n s.stop();\n console.error(\n color.red(`❌ Failed to install component ${component}`),\n err\n );\n }\n}\n","import { execa } from \"execa\";\n\nexport async function installPackage(\n pkgManager: \"npm\" | \"yarn\" | \"pnpm\" | \"bun\",\n pkg: string,\n dev: boolean = false\n) {\n let args: string[] = [];\n\n switch (pkgManager) {\n case \"npm\":\n args = [\"install\", pkg, dev ? \"--save-dev\" : \"--save\"];\n break;\n case \"yarn\":\n args = [\"add\", pkg];\n if (dev) args.push(\"-D\");\n break;\n case \"pnpm\":\n args = [\"add\", pkg];\n if (dev) args.push(\"-D\");\n break;\n case \"bun\":\n args = [\"add\", pkg];\n if (dev) args.push(\"-d\");\n break;\n default:\n throw new Error(`Unsupported package manager: ${pkgManager}`);\n }\n\n await execa(pkgManager, args, { stdio: \"inherit\" });\n}\n","import { execa } from \"execa\";\nimport { select, text, spinner } from \"@clack/prompts\";\nimport color from \"picocolors\";\n\nconst TEMPLATES = [\n {\n id: \"aristobyte-ui-template-nextjs-15-app-router\",\n name: \"Next App Router\",\n desc: \"A Next.js 15 with app-router directory template pre-configured with AristoByteUI.\",\n repo: \"https://github.com/aristobyte-team/aristobyte-ui-template-nextjs-15-app-router.git\",\n },\n {\n id: \"aristobyte-ui-template-nextjs-15-pages\",\n name: \"Next Pages\",\n desc: \"A Next.js 15 with pages directory template pre-configured with AristoByteUI.\",\n repo: \"https://github.com/aristobyte-team/aristobyte-ui-template-nextjs-15-pages.git\",\n },\n {\n id: \"aristobyte-ui-template-vite\",\n name: \"Vite\",\n desc: \"A Vite template pre-configured with AristoByteUI.\",\n repo: \"https://github.com/aristobyte-team/aristobyte-ui-template-vite.git\",\n },\n {\n id: \"aristobyte-ui-template-astro\",\n name: \"Astro\",\n desc: \"An Astro template pre-configured with AristoByteUI.\",\n repo: \"https://github.com/aristobyte-team/aristobyte-ui-template-astro.git\",\n },\n {\n id: \"aristobyte-ui-template-cra\",\n name: \"CRA\",\n desc: \"A Create React App template pre-configured with AristoByteUI.\",\n repo: \"https://github.com/aristobyte-team/aristobyte-ui-template-cra.git\",\n },\n];\n\nconst PACKAGE_MANAGERS = [\"npm\", \"yarn\", \"pnpm\", \"bun\"];\nconst DEFAULT_NAME = \"aristobyte-ui-app\";\n\nexport async function init(myProjectName = DEFAULT_NAME) {\n console.log(color.cyan(\"┌ Create a new project\"));\n\n const projectNameResult = await text({\n message: \"New project name (Enter to skip with default name)\",\n placeholder: myProjectName,\n });\n\n const projectName = (String(projectNameResult) || myProjectName).trim();\n\n const templateIndex = await select({\n message: \"Select a template (Enter to select)\",\n options: TEMPLATES.map((t, i) => ({\n value: i + \"\",\n label: `${t.name} (${t.desc})`,\n })),\n });\n\n const template = TEMPLATES[Number(templateIndex)];\n\n const packageManagerIndex = await select({\n message: \"Select a package manager (Enter to select)\",\n options: PACKAGE_MANAGERS.map((pm, i) => ({\n value: i.toString(),\n label: pm,\n })),\n });\n\n const packageManager = PACKAGE_MANAGERS[Number(packageManagerIndex)];\n\n console.log(color.cyan(\"\\nTemplate created successfully!\\n\"));\n\n const s = spinner();\n try {\n s.start(\n `Preparing '${template.name}' with ${packageManager} configuration...`\n );\n\n // Clone directly the branch that matches the package manager\n await execa(\n \"git\",\n [\n \"clone\",\n \"--branch\",\n packageManager,\n \"--single-branch\",\n template.repo,\n projectName,\n ],\n {\n stdio: \"ignore\",\n }\n );\n\n await execa(\"rm\", [\"-rf\", \".git\"], { stdio: \"ignore\", cwd: projectName });\n\n s.stop();\n console.log(color.green(\"✅ Project initialized successfully!\\n\"));\n\n // Next steps hint\n console.log(color.cyan(\"Next steps:\"));\n console.log(color.cyan(` cd ${projectName}`));\n console.log(color.cyan(` ${packageManager} install`));\n console.log(color.cyan(` ${packageManager} run dev\\n`));\n } catch (err) {\n s.stop();\n console.error(color.red(\"❌ Failed to initialize project\"), err);\n }\n}\n","import { spinner } from \"@clack/prompts\";\nimport { execa } from \"execa\";\nimport color from \"picocolors\";\n\nexport async function remove(component: string) {\n const s = spinner();\n try {\n const pkgName =\n component === \"all\"\n ? \"@aristobyte-ui/react\"\n : `@aristobyte-ui/${component}`;\n s.start(`Removing ${pkgName}...`);\n await execa(\"yarn\", [\"remove\", pkgName], { stdio: \"inherit\" });\n s.stop();\n console.log(color.green(`✅ ${pkgName} removed successfully!`));\n } catch (err) {\n s.stop();\n console.error(color.red(`❌ Failed to remove component ${component}`), err);\n }\n}\n","import { spinner } from \"@clack/prompts\";\nimport { execa } from \"execa\";\nimport color from \"picocolors\";\n\nexport async function upgrade(component: string) {\n const s = spinner();\n try {\n const pkgName =\n component === \"all\"\n ? \"@aristobyte-ui/react\"\n : `@aristobyte-ui/${component}`;\n s.start(`Upgrading ${pkgName}...`);\n await execa(\"yarn\", [\"upgrade\", pkgName], { stdio: \"inherit\" });\n s.stop();\n console.log(color.green(`✅ ${pkgName} upgraded successfully!`));\n } catch (err) {\n s.stop();\n console.error(\n color.red(`❌ Failed to upgrade component ${component}`),\n err\n );\n }\n}\n","import fs from \"fs\";\nimport color from \"picocolors\";\n\nexport async function list() {\n try {\n const pkgJson = JSON.parse(fs.readFileSync(\"package.json\", \"utf-8\"));\n const deps = pkgJson.dependencies || {};\n const aristobyteDeps = Object.keys(deps).filter((d) =>\n d.startsWith(\"@aristobyte-ui/\")\n );\n\n console.log(color.blue(\"Installed AristoByteUI components:\"));\n aristobyteDeps.forEach((dep) => console.log(color.green(dep)));\n } catch (err) {\n console.error(color.red(\"❌ Failed to list components\"), err);\n }\n}\n","import { execSync } from \"child_process\";\nimport { spinner } from \"@clack/prompts\";\nimport { compareVersions } from \"../utils/compareVersions\";\nimport color from \"picocolors\";\n\nconst MIN_NODE_VERSION = \"20.19.0\";\n\nexport async function doctor() {\n const s = spinner();\n try {\n s.start(\"Running project health checks...\");\n\n // Node\n let nodeVersion = \"unknown\";\n try {\n nodeVersion = execSync(\"node -v\").toString().trim();\n } catch (err) {\n console.error(color.red(\"❌ Failed to detect Node version:\"), err);\n }\n\n let nodeStatus = \"✅ OK\";\n if (\n nodeVersion !== \"unknown\" &&\n compareVersions(nodeVersion, MIN_NODE_VERSION) < 0\n ) {\n nodeStatus = color.red(`❌ Node >= ${MIN_NODE_VERSION} required`);\n }\n\n // Yarn\n let yarnVersion = \"unknown\";\n try {\n yarnVersion = execSync(\"yarn -v\").toString().trim();\n } catch (err) {\n console.error(color.red(\"❌ Failed to detect Yarn version:\"), err);\n }\n\n s.stop();\n console.log(color.green(`Node version: ${nodeVersion} ${nodeStatus}`));\n console.log(color.green(`Yarn version: ${yarnVersion}`));\n console.log(color.green(\"All basic health checks completed!\"));\n } catch (err) {\n s.stop();\n console.error(color.red(\"❌ Doctor check failed\"), err);\n }\n}\n","export function compareVersions(v1: string, v2: string) {\n const a = v1.replace(/^v/, \"\").split(\".\").map(Number);\n const b = v2.replace(/^v/, \"\").split(\".\").map(Number);\n for (let i = 0; i < 3; i++) {\n if (a[i] > b[i]) return 1;\n if (a[i] < b[i]) return -1;\n }\n return 0;\n}\n","import os from \"os\";\nimport { execSync } from \"child_process\";\nimport { spinner } from \"@clack/prompts\";\nimport { checkVersion } from \"../utils/checkVersion\";\nimport color from \"picocolors\";\n\nconst MIN_VERSIONS = {\n node: \"20.17.0\",\n npm: \"10.8.2\",\n yarn: \"1.22.22\",\n};\n\nfunction getVersion(command: string, name: string): string {\n try {\n return execSync(command).toString().trim();\n } catch (err) {\n console.error(color.red(`❌ Failed to detect ${name} version:`), err);\n return \"unknown\";\n }\n}\n\nexport async function env() {\n const s = spinner();\n try {\n s.start(\"Fetching system environment info...\");\n\n const nodeVersion = getVersion(\"node -v\", \"Node\");\n const npmVersion = getVersion(\"npm -v\", \"npm\");\n const yarnVersion = getVersion(\"yarn -v\", \"Yarn\");\n\n s.stop();\n\n console.log(color.blue(\"System Environment Info:\"));\n console.log(\n color.green(`OS: ${os.type()} ${os.release()} (${os.platform()})`)\n );\n console.log(color.green(`CPU: ${os.cpus()[0].model}`));\n console.log(\n color.green(`Memory: ${(os.totalmem() / 1024 / 1024).toFixed(0)} MB`)\n );\n console.log(\n `Node: ${checkVersion(\"Node\", nodeVersion, MIN_VERSIONS.node)}`\n );\n console.log(`npm: ${checkVersion(\"npm\", npmVersion, MIN_VERSIONS.npm)}`);\n console.log(\n `Yarn: ${checkVersion(\"Yarn\", yarnVersion, MIN_VERSIONS.yarn)}`\n );\n } catch (err) {\n s.stop();\n console.error(\n color.red(\"❌ Failed to fetch system environment info:\"),\n err\n );\n }\n}\n","import { compareVersions } from \"./compareVersions\";\nimport color from \"picocolors\";\n\nexport function checkVersion(\n name: string,\n version: string,\n minVersion: string\n) {\n if (version === \"unknown\" || compareVersions(version, minVersion) < 0) {\n return color.red(`❌ ${name} >= ${minVersion} required`);\n }\n return color.green(`✅ ${version}`);\n}\n","import chalk from \"chalk\";\nimport gradient from \"gradient-string\";\n\nconst LOGO_COLORS = [\"#ffee27\", \"#fec800\", \"#f18e35\", \"#e95f32\", \"#e2312d\"];\n\nexport function logo1(text: string) {\n return chalk.hex(LOGO_COLORS[0])(text);\n}\nexport function logo2(text: string) {\n return chalk.hex(LOGO_COLORS[1])(text);\n}\nexport function logo3(text: string) {\n return chalk.hex(LOGO_COLORS[2])(text);\n}\nexport function logo4(text: string) {\n return chalk.hex(LOGO_COLORS[3])(text);\n}\nexport function logo5(text: string) {\n return chalk.hex(LOGO_COLORS[4])(text);\n}\n\nexport function reset(text: string) {\n return chalk.reset(text);\n}\n\nexport function red(text: string) {\n return chalk.redBright(text);\n}\n\nexport function lightGrey(text: string) {\n return chalk.hex(\"#afbfff\")(text);\n}\n\nexport function darkGrey(text: string) {\n return chalk.hex(\"#7580aa\")(text);\n}\n\nexport function white(text: string) {\n return chalk.hex(\"#cfd5edff\")(text);\n}\n\nexport function yellow(text: string) {\n return chalk.yellow(text);\n}\n\nexport function redBright(text: string) {\n return chalk.redBright(text);\n}\n\nexport function logoGradient(text: string) {\n return gradient([\n ...LOGO_COLORS,\n ...LOGO_COLORS.reverse(),\n ...LOGO_COLORS,\n ...LOGO_COLORS.reverse(),\n ...LOGO_COLORS,\n ]).multiline(text);\n}\n\nexport function logoSmallGradient(text: string) {\n return gradient([\n LOGO_COLORS[0],\n LOGO_COLORS[1],\n LOGO_COLORS[1],\n LOGO_COLORS[0],\n LOGO_COLORS[0],\n LOGO_COLORS[1],\n ]).multiline(text);\n}\n","import { logoGradient } from \"./colors\";\n\nconst banners = [\n ` ░███ ░██ ░██ ░████████ ░██ ░██ ░█░██████\n ░██░██ ░██ ░██ ░██ ░██ ░██ ░██ ░██ \n ░██ ░██░██░███░██░██████░███████░███████░██ ░██░██ ░█░███████░███████░██ ░██ ░██ \n░████████░███ ░█░██ ░██ ░██ ░█░████████ ░██ ░██ ░██ ░██ ░█░██ ░██ ░██ \n░██ ░█░██ ░██░███████ ░██ ░██ ░█░██ ░█░██ ░██ ░██ ░████████░██ ░██ ░██ \n░██ ░█░██ ░██ ░██ ░██ ░██ ░█░██ ░█░██ ░███ ░██ ░██ ░██ ░██ ░██ \n░██ ░█░██ ░██░███████ ░███░███████░█████████ ░█████░██ ░███░███████ ░██████ ░██████\n ░██ \n ░███████ `,\n ` ▗▄▖▗▄▄▖▗▄▄▄▖▗▄▄▗▄▄▄▗▄▖▗▄▄▗▖ ▗▗▄▄▄▗▄▄▄▖ ▗▖ ▗▗▄▄▄▖\n▐▌ ▐▐▌ ▐▌ █ ▐▌ █▐▌ ▐▐▌ ▐▝▚▞▘ █ ▐▌ ▐▌ ▐▌ █ \n▐▛▀▜▐▛▀▚▖ █ ▝▀▚▖ █▐▌ ▐▐▛▀▚▖▐▌ █ ▐▛▀▀▘ ▐▌ ▐▌ █ \n▐▌ ▐▐▌ ▐▗▄█▄▗▄▄▞▘ █▝▚▄▞▐▙▄▞▘▐▌ █ ▐▙▄▄▖ ▝▚▄▞▗▄█▄▖`,\n ` _ _ _ ___ _ _ _ ___ \n /_\\\\ _ _(_)__| |_ ___| _ )_ _| |_ ___ | | | |_ _|\n / _ \\\\| '_| (_-< _/ _ \\\\ _ \\\\ || | _/ -_) | |_| || | \n/_/ \\\\_\\\\_| |_/__/\\\\__\\\\___/___/\\\\_, |\\\\__\\\\___| \\\\___/|___|\n |__/ `,\n ` _____ _____ \n( ___ ) ( ___ )\n | |~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| | \n | | \\\\ _) | __ ) | | | _ _| | | \n | | _ \\\\ __| | __| __| _ \\\\ __ \\\\ | | __| _ \\\\ | | | | | \n | | ___ \\\\ | | \\\\__ \\\\ | ( | | | | | | __/ | | | | | \n | | _/ _\\\\ _| _| ____/ \\\\__| \\\\___/ ____/ \\\\__, | \\\\__| \\\\___| \\\\___/ ___| | | \n | | ____/ | | \n |___|~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|___| \n(_____) (_____)`,\n ` \\\\ _) | __ ) | | | _ _|\n _ \\\\ __| | __| __| _ \\\\ __ \\\\ | | __| _ \\\\ | | | \n ___ \\\\ | | \\\\__ \\\\ | ( | | | | | | __/ | | | \n_/ _\\\\ _| _| ____/ \\\\__| \\\\___/ ____/ \\\\__, | \\\\__| \\\\___| \\\\___/ ___|\n ____/ `,\n ` ___ _ __ ____ __ __ ______\n / | _____(______/ /_____ / __ )__ __/ /____ / / / / _/\n / /| | / ___/ / ___/ __/ __ \\\\/ __ / / / / __/ _ \\\\ / / / // / \n / ___ |/ / / (__ / /_/ /_/ / /_/ / /_/ / /_/ __/ / /_/ _/ / \n/_/ |_/_/ /_/____/\\\\__/\\\\____/_____/\\\\__, /\\\\__/\\\\___/ \\\\____/___/ \n /____/ `,\n ` ██ \n ▒██▒ ██ ██████▒ ██ ███████ \n ▓██▓ ██ ██ ███████▓ ██ ██ ███████ \n ████ ██ ██ ▒██ ██ ██ ██ ██ \n ████ ██░███████ ▒████████████░████░██ ███▓ ▓████████░████▒ ██ ██ ██ \n ▒█▓▓█▒██████████ █████████████░████████ ▒█▒██ ████████░██████▒ ██ ██ ██ \n ▓█▒▒█▓███░ ██ ██▒ ░▒█ ██ ███ █████████░██▒ ██░ ██ ██▒ ▒██ ██ ██ ██ \n ██ ████ ██ █████▓░ ██ ██░ ░████████░███▒██ ██ ████████ ██ ██ ██ \n ████████ ██ ░██████▒ ██ ██ ███ ▒██░██▓█▓ ██ ████████ ██ ██ ██ \n ░████████ ██ ░▒▓██ ██ ██░ ░███ ██ ████░ ██ ██ ██ ██ ██ \n ▒██ ████ ██ █▒░ ▒██ ██░ ███ ████ ▒██ ▒███ ██░ ███░ ▒█ ██▓ ▓██ ██ \n ███ ████ ███████████████ ████░██████████████ ██▓ ████░███████ ▒████████████ \n ██▒ ▒███ ███████░▓████▓ ░████░████░██████▓ ██░ ░████░█████▒ ▒████▒██████ \n ▒██ \n ███▒ \n ███ `,\n];\n\nexport function getBanner() {\n return logoGradient(banners[0]);\n}\n","import { logo4, darkGrey, lightGrey } from \"./colors\";\n\nexport function usage(params: string[]) {\n return params\n .map((param) => `${logo4(\"[\")} ${lightGrey(param)} ${logo4(\"]\")}`)\n .join(\" \");\n}\n\nexport function description(text: string) {\n return darkGrey(`- ${text}`);\n}\n","{\n \"name\": \"@aristobyte-ui/cli\",\n \"description\": \"The official AristoByteUI CLI — initialize projects, install, upgrade, remove, and manage UI components seamlessly.\",\n \"version\": \"1.0.48\",\n \"license\": \"MIT\",\n \"private\": false,\n \"author\": \"AristoByte <info@aristobyte.com>\",\n \"homepage\": \"https://www.npmjs.com/package/@aristobyte-ui/cli\",\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"git+https://github.com/aristobyte-team/aristobyte-ui.git\",\n \"directory\": \"./\"\n },\n \"bugs\": {\n \"url\": \"https://github.com/aristobyte-team/aristobyte-ui.git/issues\"\n },\n \"engines\": {\n \"node\": \">=20.17.0\",\n \"npm\": \">=10.8.2\",\n \"yarn\": \">=1.22.22\"\n },\n \"keywords\": [\n \"aristobyte\",\n \"cli\",\n \"ui\",\n \"components\",\n \"typescript\",\n \"node\",\n \"developer-tools\",\n \"project-bootstrap\",\n \"package-management\"\n ],\n \"files\": [\n \"dist\"\n ],\n \"publishConfig\": {\n \"access\": \"public\"\n },\n \"main\": \"dist/index.js\",\n \"module\": \"dist/index.mjs\",\n \"bin\": {\n \"aristobyte-ui\": \"dist/index.js\"\n },\n \"exports\": {\n \".\": {\n \"import\": \"./dist/index.mjs\",\n \"require\": \"./dist/index.js\"\n }\n },\n \"scripts\": {\n \"build\": \"tsup\",\n \"build:watch\": \"tsup ./index.ts --watch\",\n \"dev\": \"tsup && node ./bin/aristobyte-ui.js\",\n \"start\": \"node ./bin/aristobyte-ui.js\",\n \"lint\": \"eslint . --ext .ts,.tsx --max-warnings 0\",\n \"lint:fix\": \"eslint . --ext .ts,.tsx --fix\",\n \"check-types\": \"tsc --noEmit\",\n \"bump\": \"changeset && changeset version\",\n \"status\": \"changeset status\",\n \"release\": \"changeset publish\"\n },\n \"dependencies\": {\n \"@aristobyte-ui/eslint-config\": \"^1.0.48\",\n \"@aristobyte-ui/typescript-config\": \"^1.0.48\",\n \"@clack/prompts\": \"^0.11.0\",\n \"axios\": \"^1.6.0\",\n \"chalk\": \"^5.6.1\",\n \"commander\": \"^11.0.0\",\n \"execa\": \"^8.0.0\",\n \"gradient-string\": \"^3.0.0\"\n },\n \"devDependencies\": {\n \"@changesets/changelog-github\": \"^0.5.1\",\n \"@changesets/cli\": \"^2.29.6\",\n \"@types/node\": \"^24.3.1\",\n \"eslint\": \"^9.35.0\",\n \"ts-node\": \"^10.9.2\",\n \"tsup\": \"^8.5.0\",\n \"typescript\": \"^5.9.2\"\n }\n}\n"],"mappings":"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","names":["env","color","import_picocolors","execa","spinner","color","import_picocolors","spinner","execa","color","import_picocolors","spinner","execa","color","import_picocolors","color","spinner","import_picocolors","spinner","color","execSync","spinner","import_picocolors","color","import_picocolors","execSync","color","spinner","text","text","text","text"]}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@aristobyte-ui/cli",
3
3
  "description": "The official AristoByteUI CLI — initialize projects, install, upgrade, remove, and manage UI components seamlessly.",
4
- "version": "1.0.46",
4
+ "version": "1.0.48",
5
5
  "license": "MIT",
6
6
  "private": false,
7
7
  "author": "AristoByte <info@aristobyte.com>",
@@ -50,7 +50,7 @@
50
50
  "scripts": {
51
51
  "build": "tsup",
52
52
  "build:watch": "tsup ./index.ts --watch",
53
- "dev": "tsup ./index.ts --watch",
53
+ "dev": "tsup && node ./bin/aristobyte-ui.js",
54
54
  "start": "node ./bin/aristobyte-ui.js",
55
55
  "lint": "eslint . --ext .ts,.tsx --max-warnings 0",
56
56
  "lint:fix": "eslint . --ext .ts,.tsx --fix",
@@ -60,10 +60,11 @@
60
60
  "release": "changeset publish"
61
61
  },
62
62
  "dependencies": {
63
- "@aristobyte-ui/eslint-config": "^1.0.46",
64
- "@aristobyte-ui/typescript-config": "^1.0.46",
63
+ "@aristobyte-ui/eslint-config": "^1.0.48",
64
+ "@aristobyte-ui/typescript-config": "^1.0.48",
65
65
  "@clack/prompts": "^0.11.0",
66
66
  "axios": "^1.6.0",
67
+ "chalk": "^5.6.1",
67
68
  "commander": "^11.0.0",
68
69
  "execa": "^8.0.0",
69
70
  "gradient-string": "^3.0.0"