@kamaras/venpm 0.1.1 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. package/dist/cli/completions.d.ts +3 -0
  2. package/dist/cli/completions.d.ts.map +1 -0
  3. package/dist/cli/completions.js +78 -0
  4. package/dist/cli/completions.js.map +1 -0
  5. package/dist/cli/config-cmd.d.ts.map +1 -1
  6. package/dist/cli/config-cmd.js +30 -22
  7. package/dist/cli/config-cmd.js.map +1 -1
  8. package/dist/cli/context.d.ts.map +1 -1
  9. package/dist/cli/context.js +26 -9
  10. package/dist/cli/context.js.map +1 -1
  11. package/dist/cli/create.d.ts.map +1 -1
  12. package/dist/cli/create.js +20 -22
  13. package/dist/cli/create.js.map +1 -1
  14. package/dist/cli/doctor.d.ts.map +1 -1
  15. package/dist/cli/doctor.js +37 -24
  16. package/dist/cli/doctor.js.map +1 -1
  17. package/dist/cli/first-run.d.ts +4 -0
  18. package/dist/cli/first-run.d.ts.map +1 -0
  19. package/dist/cli/first-run.js +51 -0
  20. package/dist/cli/first-run.js.map +1 -0
  21. package/dist/cli/help.d.ts +3 -0
  22. package/dist/cli/help.d.ts.map +1 -0
  23. package/dist/cli/help.js +42 -0
  24. package/dist/cli/help.js.map +1 -0
  25. package/dist/cli/info.d.ts.map +1 -1
  26. package/dist/cli/info.js +48 -53
  27. package/dist/cli/info.js.map +1 -1
  28. package/dist/cli/install.d.ts.map +1 -1
  29. package/dist/cli/install.js +52 -67
  30. package/dist/cli/install.js.map +1 -1
  31. package/dist/cli/list.d.ts.map +1 -1
  32. package/dist/cli/list.js +20 -20
  33. package/dist/cli/list.js.map +1 -1
  34. package/dist/cli/rebuild.d.ts.map +1 -1
  35. package/dist/cli/rebuild.js +19 -26
  36. package/dist/cli/rebuild.js.map +1 -1
  37. package/dist/cli/repo.d.ts.map +1 -1
  38. package/dist/cli/repo.js +22 -32
  39. package/dist/cli/repo.js.map +1 -1
  40. package/dist/cli/search.d.ts.map +1 -1
  41. package/dist/cli/search.js +19 -20
  42. package/dist/cli/search.js.map +1 -1
  43. package/dist/cli/uninstall.d.ts.map +1 -1
  44. package/dist/cli/uninstall.js +14 -16
  45. package/dist/cli/uninstall.js.map +1 -1
  46. package/dist/cli/update.d.ts.map +1 -1
  47. package/dist/cli/update.js +26 -33
  48. package/dist/cli/update.js.map +1 -1
  49. package/dist/cli/validate.d.ts.map +1 -1
  50. package/dist/cli/validate.js +14 -21
  51. package/dist/cli/validate.js.map +1 -1
  52. package/dist/core/ansi.d.ts +14 -0
  53. package/dist/core/ansi.d.ts.map +1 -0
  54. package/dist/core/ansi.js +36 -0
  55. package/dist/core/ansi.js.map +1 -0
  56. package/dist/core/errors.d.ts +36 -0
  57. package/dist/core/errors.d.ts.map +1 -0
  58. package/dist/core/errors.js +70 -0
  59. package/dist/core/errors.js.map +1 -0
  60. package/dist/core/fuzzy.d.ts +3 -0
  61. package/dist/core/fuzzy.d.ts.map +1 -0
  62. package/dist/core/fuzzy.js +30 -0
  63. package/dist/core/fuzzy.js.map +1 -0
  64. package/dist/core/json-renderer.d.ts +5 -0
  65. package/dist/core/json-renderer.d.ts.map +1 -0
  66. package/dist/core/json-renderer.js +48 -0
  67. package/dist/core/json-renderer.js.map +1 -0
  68. package/dist/core/json.d.ts +5 -3
  69. package/dist/core/json.d.ts.map +1 -1
  70. package/dist/core/json.js +8 -4
  71. package/dist/core/json.js.map +1 -1
  72. package/dist/core/progress.d.ts +11 -0
  73. package/dist/core/progress.d.ts.map +1 -0
  74. package/dist/core/progress.js +53 -0
  75. package/dist/core/progress.js.map +1 -0
  76. package/dist/core/prompt.d.ts.map +1 -1
  77. package/dist/core/prompt.js +62 -4
  78. package/dist/core/prompt.js.map +1 -1
  79. package/dist/core/renderer.d.ts +13 -0
  80. package/dist/core/renderer.d.ts.map +1 -0
  81. package/dist/core/renderer.js +157 -0
  82. package/dist/core/renderer.js.map +1 -0
  83. package/dist/core/stream-renderer.d.ts +5 -0
  84. package/dist/core/stream-renderer.d.ts.map +1 -0
  85. package/dist/core/stream-renderer.js +71 -0
  86. package/dist/core/stream-renderer.js.map +1 -0
  87. package/dist/core/types.d.ts +46 -8
  88. package/dist/core/types.d.ts.map +1 -1
  89. package/dist/index.js +17 -1
  90. package/dist/index.js.map +1 -1
  91. package/package.json +1 -1
  92. package/dist/core/log.d.ts +0 -8
  93. package/dist/core/log.d.ts.map +0 -1
  94. package/dist/core/log.js +0 -24
  95. package/dist/core/log.js.map +0 -1
@@ -0,0 +1,51 @@
1
+ import { getConfigPath } from "../core/paths.js";
2
+ import { saveConfig, DEFAULT_CONFIG } from "../core/config.js";
3
+ import { detectVencordPath } from "../core/detect.js";
4
+ const COMMANDS_NEEDING_CONFIG = new Set([
5
+ "install", "uninstall", "update", "list", "search", "info",
6
+ "repo", "rebuild", "doctor",
7
+ ]);
8
+ export function needsFirstRun(commandName) {
9
+ return COMMANDS_NEEDING_CONFIG.has(commandName);
10
+ }
11
+ export async function runFirstTimeSetup(ctx, version) {
12
+ const configPath = getConfigPath();
13
+ const configExists = await ctx.fs.exists(configPath);
14
+ if (configExists)
15
+ return false;
16
+ try {
17
+ ctx.renderer.heading(`venpm v${version}`);
18
+ ctx.renderer.text("");
19
+ ctx.renderer.text("First time? Let's set up.");
20
+ ctx.renderer.text("");
21
+ const detected = await detectVencordPath(ctx.fs);
22
+ let vencordPath;
23
+ if (detected) {
24
+ const useDetected = await ctx.prompter.confirm(`Vencord source path: ${detected}`, true);
25
+ if (useDetected) {
26
+ vencordPath = detected;
27
+ }
28
+ else {
29
+ vencordPath = await ctx.prompter.input("Vencord source path:");
30
+ }
31
+ }
32
+ else {
33
+ vencordPath = await ctx.prompter.input("Vencord source path:");
34
+ }
35
+ const addCommunity = await ctx.prompter.confirm("Add the community plugin repo?", true);
36
+ const config = { ...DEFAULT_CONFIG };
37
+ config.vencord = { ...config.vencord, path: vencordPath || null };
38
+ if (!addCommunity) {
39
+ config.repos = [];
40
+ }
41
+ await saveConfig(ctx.fs, configPath, config);
42
+ ctx.renderer.success(`Config saved to ${configPath}`);
43
+ ctx.renderer.text("");
44
+ ctx.renderer.text("Run venpm search to browse available plugins.");
45
+ return true;
46
+ }
47
+ catch {
48
+ return false;
49
+ }
50
+ }
51
+ //# sourceMappingURL=first-run.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"first-run.js","sourceRoot":"","sources":["../../src/cli/first-run.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD,MAAM,uBAAuB,GAAG,IAAI,GAAG,CAAC;IACpC,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAC1D,MAAM,EAAE,SAAS,EAAE,QAAQ;CAC9B,CAAC,CAAC;AAEH,MAAM,UAAU,aAAa,CAAC,WAAmB;IAC7C,OAAO,uBAAuB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,GAAc,EAAE,OAAe;IACnE,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,MAAM,YAAY,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAErD,IAAI,YAAY;QAAE,OAAO,KAAK,CAAC;IAE/B,IAAI,CAAC;QACD,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,OAAO,EAAE,CAAC,CAAC;QAC1C,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACtB,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QAC/C,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAEtB,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACjD,IAAI,WAAmB,CAAC;QACxB,IAAI,QAAQ,EAAE,CAAC;YACX,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,OAAO,CAC1C,wBAAwB,QAAQ,EAAE,EAClC,IAAI,CACP,CAAC;YACF,IAAI,WAAW,EAAE,CAAC;gBACd,WAAW,GAAG,QAAQ,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACJ,WAAW,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;YACnE,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,WAAW,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QACnE,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,OAAO,CAC3C,gCAAgC,EAChC,IAAI,CACP,CAAC;QAEF,MAAM,MAAM,GAAG,EAAE,GAAG,cAAc,EAAE,CAAC;QACrC,MAAM,CAAC,OAAO,GAAG,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,WAAW,IAAI,IAAI,EAAE,CAAC;QAClE,IAAI,CAAC,YAAY,EAAE,CAAC;YAChB,MAAM,CAAC,KAAK,GAAG,EAAE,CAAC;QACtB,CAAC;QAED,MAAM,UAAU,CAAC,GAAG,CAAC,EAAE,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;QAC7C,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,mBAAmB,UAAU,EAAE,CAAC,CAAC;QACtD,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACtB,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC;QACnE,OAAO,IAAI,CAAC;IAChB,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,KAAK,CAAC;IACjB,CAAC;AACL,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Command } from "commander";
2
+ export declare function configureHelp(program: Command): void;
3
+ //# sourceMappingURL=help.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../../src/cli/help.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGzC,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA8CpD"}
@@ -0,0 +1,42 @@
1
+ import { shouldColorize, createColors } from "../core/ansi.js";
2
+ export function configureHelp(program) {
3
+ const colorEnabled = shouldColorize(process.stdout);
4
+ const c = createColors(colorEnabled);
5
+ program.configureHelp({
6
+ formatHelp(cmd, _helper) {
7
+ const lines = [];
8
+ lines.push(` ${c.bold("venpm")} ${c.dim("— Vencord Plugin Manager")}`);
9
+ lines.push("");
10
+ lines.push(` ${c.bright("USAGE")}`);
11
+ lines.push(` venpm <command> [options]`);
12
+ lines.push("");
13
+ const commands = cmd.commands.filter((sub) => !sub._hidden);
14
+ if (commands.length > 0) {
15
+ lines.push(` ${c.bright("COMMANDS")}`);
16
+ const maxLen = Math.max(...commands.map((sub) => {
17
+ const usage = sub.usage();
18
+ return sub.name().length + (usage ? usage.length + 1 : 0);
19
+ }));
20
+ for (const sub of commands) {
21
+ const usage = sub.usage();
22
+ const name = usage ? `${sub.name()} ${usage}` : sub.name();
23
+ lines.push(` ${c.amber(name.padEnd(maxLen + 2))} ${c.dim(sub.description() ?? "")}`);
24
+ }
25
+ lines.push("");
26
+ }
27
+ const opts = cmd.options;
28
+ if (opts.length > 0) {
29
+ lines.push(` ${c.bright("OPTIONS")}`);
30
+ const maxOptLen = Math.max(...opts.map((o) => o.flags.length));
31
+ for (const opt of opts) {
32
+ lines.push(` ${opt.flags.padEnd(maxOptLen + 2)} ${c.dim(opt.description)}`);
33
+ }
34
+ lines.push("");
35
+ }
36
+ lines.push(` ${c.dim("DOCS")} ${c.amber("https://venpm.dev")}`);
37
+ lines.push("");
38
+ return lines.join("\n");
39
+ },
40
+ });
41
+ }
42
+ //# sourceMappingURL=help.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"help.js","sourceRoot":"","sources":["../../src/cli/help.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"info.d.ts","sourceRoot":"","sources":["../../src/cli/info.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AASjE,wBAAsB,WAAW,CAAC,GAAG,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CA4FhH;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAS1D"}
1
+ {"version":3,"file":"info.d.ts","sourceRoot":"","sources":["../../src/cli/info.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAUjE,wBAAsB,WAAW,CAAC,GAAG,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAkFhH;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAS1D"}
package/dist/cli/info.js CHANGED
@@ -3,9 +3,11 @@ import { loadLockfile, getInstalled } from "../core/lockfile.js";
3
3
  import { getConfigPath, getLockfilePath } from "../core/paths.js";
4
4
  import { fetchAllIndexes, resolvePlugin } from "../core/registry.js";
5
5
  import { loadCache, saveCache } from "../core/cache.js";
6
- import { jsonSuccess, jsonError, writeJson } from "../core/json.js";
6
+ import { ErrorCode, makeError, exitCodeForError } from "../core/errors.js";
7
+ import { findCandidates } from "../core/fuzzy.js";
7
8
  import { createRealIOContext } from "./context.js";
8
9
  export async function executeInfo(ctx, pluginName, options = {}) {
10
+ const { renderer } = ctx;
9
11
  const configPath = options.config ?? getConfigPath();
10
12
  const [config, lockfile] = await Promise.all([
11
13
  loadConfig(ctx.fs, configPath),
@@ -16,81 +18,74 @@ export async function executeInfo(ctx, pluginName, options = {}) {
16
18
  await saveCache(ctx.fs, updatedCache);
17
19
  for (const fi of indexes) {
18
20
  if (fi.error) {
19
- ctx.logger.warn(`Failed to fetch index from "${fi.repoName}": ${fi.error}`);
21
+ renderer.warn(`Failed to fetch index from "${fi.repoName}": ${fi.error}`);
20
22
  }
21
23
  }
22
24
  const match = resolvePlugin(indexes, pluginName);
23
25
  const installedInfo = getInstalled(lockfile, pluginName);
24
26
  if (!match && !installedInfo) {
25
- if (options.json) {
26
- writeJson(jsonError(`Plugin "${pluginName}" not found in any index and is not installed`));
27
- return;
28
- }
29
- ctx.logger.error(`Plugin "${pluginName}" not found in any index and is not installed`);
30
- return;
31
- }
32
- if (options.json) {
33
- writeJson(jsonSuccess({
34
- name: pluginName,
35
- version: match?.entry.version ?? null,
36
- description: match?.entry.description ?? null,
37
- authors: match?.entry.authors ?? [],
38
- repo: match?.repoName ?? null,
39
- dependencies: match?.entry.dependencies ?? [],
40
- optionalDependencies: match?.entry.optionalDependencies ?? [],
41
- versions: match?.entry.versions ? Object.keys(match.entry.versions) : [],
42
- installed: !!installedInfo,
43
- installedVersion: installedInfo?.version ?? null,
44
- }));
27
+ const allPluginNames = indexes.flatMap(fi => Object.keys(fi.index?.plugins ?? {}));
28
+ const candidates = findCandidates(pluginName, allPluginNames);
29
+ renderer.error(makeError(ErrorCode.PLUGIN_NOT_FOUND, `Plugin "${pluginName}" not found in any index and is not installed`, { candidates }));
30
+ renderer.finish(false);
31
+ process.exitCode = exitCodeForError(ErrorCode.PLUGIN_NOT_FOUND);
45
32
  return;
46
33
  }
47
- ctx.logger.info(`Plugin: ${pluginName}\n`);
34
+ const pairs = [];
35
+ pairs.push(["Plugin", pluginName]);
48
36
  if (match) {
49
37
  const { entry, repoName } = match;
50
- ctx.logger.info(` Repository: ${repoName}`);
51
- ctx.logger.info(` Version: ${entry.version}`);
52
- if (entry.description) {
53
- ctx.logger.info(` Description: ${entry.description}`);
54
- }
38
+ pairs.push(["Repository", repoName]);
39
+ pairs.push(["Version", entry.version]);
40
+ if (entry.description)
41
+ pairs.push(["Description", entry.description]);
55
42
  if (entry.authors && entry.authors.length > 0) {
56
- const authorList = entry.authors.map(a => a.name).join(", ");
57
- ctx.logger.info(` Authors: ${authorList}`);
58
- }
59
- if (entry.license) {
60
- ctx.logger.info(` License: ${entry.license}`);
43
+ pairs.push(["Authors", entry.authors.map(a => a.name).join(", ")]);
61
44
  }
45
+ if (entry.license)
46
+ pairs.push(["License", entry.license]);
62
47
  if (entry.dependencies && entry.dependencies.length > 0) {
63
- ctx.logger.info(` Depends on: ${entry.dependencies.join(", ")}`);
64
- }
65
- if (entry.discord) {
66
- ctx.logger.info(` Discord: ${entry.discord}`);
67
- }
68
- if (entry.vencord) {
69
- ctx.logger.info(` Vencord: ${entry.vencord}`);
48
+ pairs.push(["Depends on", entry.dependencies.join(", ")]);
70
49
  }
50
+ if (entry.discord)
51
+ pairs.push(["Discord", entry.discord]);
52
+ if (entry.vencord)
53
+ pairs.push(["Vencord", entry.vencord]);
71
54
  const sourceKeys = Object.keys(entry.source).filter(k => entry.source[k]);
72
- ctx.logger.info(` Source: ${sourceKeys.join(", ")}`);
55
+ pairs.push(["Source", sourceKeys.join(", ")]);
73
56
  if (entry.versions) {
74
- const versionList = Object.keys(entry.versions).join(", ");
75
- ctx.logger.info(` Versions: ${versionList}`);
57
+ pairs.push(["Versions", Object.keys(entry.versions).join(", ")]);
76
58
  }
77
59
  }
78
60
  else {
79
- ctx.logger.warn(` (Plugin not found in any currently reachable index)`);
61
+ pairs.push(["Index", "(not found in any currently reachable index)"]);
80
62
  }
81
63
  if (installedInfo) {
82
- ctx.logger.info(`\n Installed:`);
83
- ctx.logger.info(` Version: ${installedInfo.version}`);
84
- ctx.logger.info(` Method: ${installedInfo.method}`);
85
- ctx.logger.info(` Pinned: ${installedInfo.pinned ? "yes" : "no"}`);
86
- ctx.logger.info(` Installed at: ${installedInfo.installed_at}`);
87
- if (installedInfo.git_ref) {
88
- ctx.logger.info(` Git ref: ${installedInfo.git_ref}`);
89
- }
64
+ pairs.push(["Installed", "yes"]);
65
+ pairs.push(["Installed version", installedInfo.version]);
66
+ pairs.push(["Method", installedInfo.method]);
67
+ pairs.push(["Pinned", installedInfo.pinned ? "yes" : "no"]);
68
+ pairs.push(["Installed at", installedInfo.installed_at]);
69
+ if (installedInfo.git_ref)
70
+ pairs.push(["Git ref", installedInfo.git_ref]);
90
71
  }
91
72
  else {
92
- ctx.logger.info(`\n Not installed.`);
73
+ pairs.push(["Installed", "no"]);
93
74
  }
75
+ renderer.keyValue(pairs);
76
+ const data = {
77
+ name: pluginName,
78
+ version: match?.entry.version ?? null,
79
+ description: match?.entry.description ?? null,
80
+ authors: match?.entry.authors ?? [],
81
+ repo: match?.repoName ?? null,
82
+ dependencies: match?.entry.dependencies ?? [],
83
+ optionalDependencies: match?.entry.optionalDependencies ?? [],
84
+ versions: match?.entry.versions ? Object.keys(match.entry.versions) : [],
85
+ installed: !!installedInfo,
86
+ installedVersion: installedInfo?.version ?? null,
87
+ };
88
+ renderer.finish(true, data);
94
89
  }
95
90
  export function registerInfoCommand(program) {
96
91
  program
@@ -1 +1 @@
1
- {"version":3,"file":"info.js","sourceRoot":"","sources":["../../src/cli/info.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"info.js","sourceRoot":"","sources":["../../src/cli/info.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/cli/install.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,KAAK,EAAE,SAAS,EAAiB,cAAc,EAAe,MAAM,kBAAkB,CAAC;AAe9F,wBAAsB,cAAc,CAChC,GAAG,EAAE,SAAS,EACd,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,cAAc,GACxB,OAAO,CAAC,IAAI,CAAC,CA0Mf;AA+BD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA0B7D"}
1
+ {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/cli/install.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,KAAK,EAAE,SAAS,EAAiB,cAAc,EAAe,MAAM,kBAAkB,CAAC;AAgB9F,wBAAsB,cAAc,CAChC,GAAG,EAAE,SAAS,EACd,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,cAAc,GACxB,OAAO,CAAC,IAAI,CAAC,CA4Lf;AA+BD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA0B7D"}
@@ -8,11 +8,12 @@ import { fetchPlugin, fetchViaLocal } from "../core/fetcher.js";
8
8
  import { buildAndDeploy } from "../core/builder.js";
9
9
  import { detectVencordPath, detectDiscordBinary } from "../core/detect.js";
10
10
  import { getConfigPath, getLockfilePath } from "../core/paths.js";
11
- import { jsonSuccess, jsonError, writeJson } from "../core/json.js";
11
+ import { ErrorCode, makeError, exitCodeForError } from "../core/errors.js";
12
+ import { findCandidates } from "../core/fuzzy.js";
12
13
  import { createRealIOContext } from "./context.js";
13
14
  // ─── Public API ───────────────────────────────────────────────────────────────
14
15
  export async function executeInstall(ctx, pluginName, options) {
15
- const { fs, http, git, shell, prompter, logger } = ctx;
16
+ const { fs, http, git, shell, prompter, renderer } = ctx;
16
17
  // 1. Load config and lockfile
17
18
  const configPath = options.config ?? getConfigPath();
18
19
  const lockfilePath = getLockfilePath();
@@ -21,13 +22,9 @@ export async function executeInstall(ctx, pluginName, options) {
21
22
  // 2. Resolve Vencord path
22
23
  const vencordPath = config.vencord.path ?? await detectVencordPath(fs);
23
24
  if (!vencordPath) {
24
- if (options.json) {
25
- process.exitCode = 1;
26
- writeJson(jsonError("Could not find Vencord source path. Set vencord.path in config or VENPM_VENCORD_PATH env var."));
27
- return;
28
- }
29
- logger.error("Could not find Vencord source path. Set vencord.path in config or VENPM_VENCORD_PATH env var.");
30
- process.exitCode = 1;
25
+ renderer.error(makeError(ErrorCode.VENCORD_NOT_FOUND, "Could not find Vencord source path. Set vencord.path in config or VENPM_VENCORD_PATH env var."));
26
+ renderer.finish(false);
27
+ process.exitCode = exitCodeForError(ErrorCode.VENCORD_NOT_FOUND);
31
28
  return;
32
29
  }
33
30
  const userpluginDir = join(vencordPath, "src", "userplugins");
@@ -35,7 +32,7 @@ export async function executeInstall(ctx, pluginName, options) {
35
32
  if (options.local) {
36
33
  const localPath = options.local;
37
34
  const dest = join(userpluginDir, pluginName);
38
- logger.info(`Symlinking ${localPath} → ${dest}`);
35
+ renderer.text(`Symlinking ${localPath} → ${dest}`);
39
36
  await fetchViaLocal(fs, localPath, dest);
40
37
  lockfile = addInstalled(lockfile, pluginName, {
41
38
  version: "local",
@@ -45,43 +42,39 @@ export async function executeInstall(ctx, pluginName, options) {
45
42
  installed_at: new Date().toISOString(),
46
43
  });
47
44
  await saveLockfile(fs, lockfilePath, lockfile);
48
- if (options.json) {
49
- writeJson(jsonSuccess({ installed: [{ name: pluginName, version: "local", method: "local" }], warnings: [] }));
50
- return;
51
- }
52
- logger.success(`Installed ${pluginName} from local path`);
45
+ renderer.success(`Installed ${pluginName} from local path`);
46
+ renderer.finish(true, { installed: [{ name: pluginName, version: "local", method: "local" }], warnings: [] });
53
47
  return;
54
48
  }
55
49
  // 4. Fetch all indexes (with cache)
50
+ const p = renderer.progress("fetch-indexes", "Fetching indexes...");
56
51
  const cache = await loadCache(fs);
57
52
  const { results: fetchedIndexes, updatedCache } = await fetchAllIndexes(http, config.repos, { cache });
58
53
  await saveCache(fs, updatedCache);
59
54
  const validIndexes = fetchedIndexes.filter(fi => fi.index !== undefined);
60
- for (const fi of fetchedIndexes) {
61
- if (fi.error) {
62
- logger.warn(`Failed to fetch index from repo "${fi.repoName}": ${fi.error}`);
63
- }
55
+ const fetchErrors = fetchedIndexes.filter(fi => fi.error);
56
+ p.succeed(`${validIndexes.length} repo(s) fetched`);
57
+ for (const fi of fetchErrors) {
58
+ renderer.warn(`Failed to fetch index from repo "${fi.repoName}": ${fi.error}`);
64
59
  }
65
60
  // 5. Resolve plugin
66
61
  const match = resolvePlugin(fetchedIndexes, pluginName, options.from);
67
62
  if (!match) {
63
+ const allPluginNames = fetchedIndexes.flatMap(fi => Object.keys(fi.index?.plugins ?? {}));
64
+ const candidates = findCandidates(pluginName, allPluginNames);
68
65
  const msg = options.from
69
66
  ? `Plugin "${pluginName}" not found in repo "${options.from}"`
70
67
  : `Plugin "${pluginName}" not found in any configured repo`;
71
- if (options.json) {
72
- process.exitCode = 1;
73
- writeJson(jsonError(msg));
74
- return;
75
- }
76
- logger.error(msg);
77
- process.exitCode = 1;
68
+ renderer.error(makeError(ErrorCode.PLUGIN_NOT_FOUND, msg, { candidates }));
69
+ renderer.finish(false);
70
+ process.exitCode = exitCodeForError(ErrorCode.PLUGIN_NOT_FOUND);
78
71
  return;
79
72
  }
80
73
  // Check for multiple matches (without --from, warn if plugin appears in multiple repos)
81
74
  if (!options.from) {
82
75
  const allMatches = fetchedIndexes.filter(fi => fi.index?.plugins[pluginName]);
83
76
  if (allMatches.length > 1) {
84
- logger.warn(`Plugin "${pluginName}" found in multiple repos: ${allMatches.map(fi => fi.repoName).join(", ")}. ` +
77
+ renderer.warn(`Plugin "${pluginName}" found in multiple repos: ${allMatches.map(fi => fi.repoName).join(", ")}. ` +
85
78
  `Using "${match.repoName}". Use --from <repo> to specify.`);
86
79
  }
87
80
  }
@@ -106,41 +99,44 @@ export async function executeInstall(ctx, pluginName, options) {
106
99
  }
107
100
  catch (err) {
108
101
  if (err instanceof ResolverError) {
109
- if (options.json) {
110
- process.exitCode = 1;
111
- writeJson(jsonError(err.message));
112
- return;
113
- }
114
- logger.error(err.message);
115
- process.exitCode = 1;
102
+ renderer.error(makeError(ErrorCode.CIRCULAR_DEPENDENCY, err.message));
103
+ renderer.finish(false);
104
+ process.exitCode = exitCodeForError(ErrorCode.CIRCULAR_DEPENDENCY);
116
105
  return;
117
106
  }
118
107
  throw err;
119
108
  }
120
109
  if (plan.entries.length === 0) {
121
- logger.info(`Plugin "${pluginName}" is already installed.`);
110
+ renderer.text(`Plugin "${pluginName}" is already installed.`);
111
+ renderer.finish(true, { installed: [], warnings: [] });
122
112
  return;
123
113
  }
124
114
  // 7. Show plan and confirm
125
- logger.info(`Install plan:`);
126
- for (const entry of plan.entries) {
127
- const depLabel = entry.isDependency ? " (dependency)" : "";
128
- logger.info(` ${entry.name}@${entry.version} via ${entry.method}${depLabel}`);
129
- }
115
+ renderer.heading("Install plan");
116
+ renderer.table(["Plugin", "Version", "Method", "Type"], plan.entries.map(entry => [
117
+ entry.name,
118
+ entry.version,
119
+ entry.method,
120
+ entry.isDependency ? "dependency" : "direct",
121
+ ]));
130
122
  // Warn about missing optional dependencies
123
+ const warnings = [];
131
124
  if (plan.missingOptional?.length) {
132
- logger.warn(`Recommended plugins not installed: ${plan.missingOptional.join(", ")}`);
133
- logger.info(` Install with: venpm install ${plan.missingOptional.join(" ")}`);
125
+ const warnMsg = `Recommended plugins not installed: ${plan.missingOptional.join(", ")}`;
126
+ renderer.warn(warnMsg);
127
+ renderer.text(` Install with: venpm install ${plan.missingOptional.join(" ")}`);
128
+ warnings.push(warnMsg);
134
129
  }
135
130
  const confirmed = await prompter.confirm(`Proceed with installation?`, true);
136
131
  if (!confirmed) {
137
- logger.info("Installation cancelled.");
132
+ renderer.text("Installation cancelled.");
133
+ renderer.finish(false);
138
134
  return;
139
135
  }
140
136
  // 8. Fetch each entry and update lockfile
141
137
  const installedEntries = [];
142
138
  for (const entry of plan.entries) {
143
- logger.info(`Installing ${entry.name}@${entry.version} via ${entry.method}...`);
139
+ const ep = renderer.progress(`install-${entry.name}`, `Installing ${entry.name}@${entry.version} via ${entry.method}...`);
144
140
  try {
145
141
  const result = await fetchPlugin(entry, userpluginDir, { fs, git, http });
146
142
  lockfile = addInstalled(lockfile, entry.name, {
@@ -153,31 +149,20 @@ export async function executeInstall(ctx, pluginName, options) {
153
149
  path: result.path,
154
150
  });
155
151
  installedEntries.push({ name: entry.name, version: entry.version, method: result.method });
152
+ ep.succeed(`${entry.name}@${entry.version}`);
156
153
  }
157
154
  catch (err) {
158
- const msg = `Failed to install ${entry.name}: ${err instanceof Error ? err.message : err}`;
159
- if (options.json) {
160
- process.exitCode = 1;
161
- writeJson(jsonError(msg));
162
- return;
163
- }
164
- logger.error(msg);
165
- process.exitCode = 1;
155
+ ep.fail(`${entry.name}: ${err instanceof Error ? err.message : err}`);
156
+ renderer.error(makeError(ErrorCode.BUILD_FAILED, `Failed to install ${entry.name}: ${err instanceof Error ? err.message : err}`));
157
+ renderer.finish(false);
158
+ process.exitCode = exitCodeForError(ErrorCode.BUILD_FAILED);
166
159
  return;
167
160
  }
168
161
  }
169
162
  // 9. Save lockfile
170
163
  await saveLockfile(fs, lockfilePath, lockfile);
171
- if (options.json) {
172
- writeJson(jsonSuccess({
173
- installed: installedEntries,
174
- warnings: plan.missingOptional?.length
175
- ? [`Recommended plugins not installed: ${plan.missingOptional.join(", ")}`]
176
- : [],
177
- }));
178
- return;
179
- }
180
- logger.success(`Successfully installed ${pluginName}`);
164
+ renderer.success(`Successfully installed ${pluginName}`);
165
+ renderer.finish(true, { installed: installedEntries, warnings });
181
166
  // 10. Handle rebuild
182
167
  const effectiveRebuildMode = resolveRebuildMode(options, config.rebuild);
183
168
  if (effectiveRebuildMode === "always" || options.rebuild) {
@@ -202,8 +187,8 @@ function resolveRebuildMode(options, configMode) {
202
187
  return configMode;
203
188
  }
204
189
  async function runRebuild(ctx, vencordPath) {
205
- const { fs, shell, logger } = ctx;
206
- logger.info("Rebuilding Vencord...");
190
+ const { fs, shell, renderer } = ctx;
191
+ const p = renderer.progress("rebuild", "Rebuilding Vencord...");
207
192
  const discordBinary = await detectDiscordBinary(fs);
208
193
  try {
209
194
  const result = await buildAndDeploy(fs, shell, vencordPath, {
@@ -211,14 +196,14 @@ async function runRebuild(ctx, vencordPath) {
211
196
  discordBinary: discordBinary ?? undefined,
212
197
  });
213
198
  if (result.deployed) {
214
- logger.success(`Deployed to ${result.deployPath}`);
199
+ p.succeed(`Deployed to ${result.deployPath}`);
215
200
  }
216
201
  else {
217
- logger.info("Build complete (deploy path not found, skipped deploy)");
202
+ p.succeed("Build complete (deploy path not found, skipped deploy)");
218
203
  }
219
204
  }
220
205
  catch (err) {
221
- logger.error(`Rebuild failed: ${err instanceof Error ? err.message : String(err)}`);
206
+ p.fail(`Rebuild failed: ${err instanceof Error ? err.message : String(err)}`);
222
207
  }
223
208
  }
224
209
  // ─── CLI Registration ─────────────────────────────────────────────────────────
@@ -1 +1 @@
1
- {"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/cli/install.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/cli/install.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../src/cli/list.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAMjE,wBAAsB,WAAW,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2B5F;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAS1D"}
1
+ {"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../src/cli/list.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAKjE,wBAAsB,WAAW,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgC5F;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAS1D"}