@hypercli/kit 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +23 -0
- package/dist/base-command.d.ts +58 -0
- package/dist/base-command.d.ts.map +1 -0
- package/dist/base-command.js +131 -0
- package/dist/base-command.js.map +1 -0
- package/dist/commands/cookbook/info.d.ts +24 -0
- package/dist/commands/cookbook/info.d.ts.map +1 -0
- package/dist/commands/cookbook/info.js +142 -0
- package/dist/commands/cookbook/info.js.map +1 -0
- package/dist/commands/cookbook/list.d.ts +18 -0
- package/dist/commands/cookbook/list.d.ts.map +1 -0
- package/dist/commands/cookbook/list.js +81 -0
- package/dist/commands/cookbook/list.js.map +1 -0
- package/dist/commands/kit/info.d.ts +23 -0
- package/dist/commands/kit/info.d.ts.map +1 -0
- package/dist/commands/kit/info.js +136 -0
- package/dist/commands/kit/info.js.map +1 -0
- package/dist/commands/kit/install.d.ts +49 -0
- package/dist/commands/kit/install.d.ts.map +1 -0
- package/dist/commands/kit/install.js +352 -0
- package/dist/commands/kit/install.js.map +1 -0
- package/dist/commands/kit/list.d.ts +15 -0
- package/dist/commands/kit/list.d.ts.map +1 -0
- package/dist/commands/kit/list.js +93 -0
- package/dist/commands/kit/list.js.map +1 -0
- package/dist/commands/kit/uninstall.d.ts +19 -0
- package/dist/commands/kit/uninstall.d.ts.map +1 -0
- package/dist/commands/kit/uninstall.js +79 -0
- package/dist/commands/kit/uninstall.js.map +1 -0
- package/dist/commands/kit/update.d.ts +21 -0
- package/dist/commands/kit/update.d.ts.map +1 -0
- package/dist/commands/kit/update.js +197 -0
- package/dist/commands/kit/update.js.map +1 -0
- package/dist/commands/recipe/info.d.ts +24 -0
- package/dist/commands/recipe/info.d.ts.map +1 -0
- package/dist/commands/recipe/info.js +149 -0
- package/dist/commands/recipe/info.js.map +1 -0
- package/dist/commands/recipe/list.d.ts +18 -0
- package/dist/commands/recipe/list.d.ts.map +1 -0
- package/dist/commands/recipe/list.js +104 -0
- package/dist/commands/recipe/list.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/flags.d.ts +14 -0
- package/dist/lib/flags.d.ts.map +1 -0
- package/dist/lib/flags.js +30 -0
- package/dist/lib/flags.js.map +1 -0
- package/dist/manifest.d.ts +105 -0
- package/dist/manifest.d.ts.map +1 -0
- package/dist/manifest.js +115 -0
- package/dist/manifest.js.map +1 -0
- package/dist/source-resolver.d.ts +62 -0
- package/dist/source-resolver.d.ts.map +1 -0
- package/dist/source-resolver.js +187 -0
- package/dist/source-resolver.js.map +1 -0
- package/dist/utils/find-project-root.d.ts +32 -0
- package/dist/utils/find-project-root.d.ts.map +1 -0
- package/dist/utils/find-project-root.js +135 -0
- package/dist/utils/find-project-root.js.map +1 -0
- package/help/kit/info.md +41 -0
- package/help/kit/install.md +52 -0
- package/help/kit/list.md +25 -0
- package/help/kit/uninstall.md +38 -0
- package/help/kit/update.md +35 -0
- package/help/kit.md +36 -0
- package/oclif.manifest.json +587 -0
- package/package.json +92 -0
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Show detailed information about a kit
|
|
3
|
+
*/
|
|
4
|
+
import { c, indent, markdown, msg, s, table } from "@hypercli/ui";
|
|
5
|
+
import { Args } from "@oclif/core";
|
|
6
|
+
import { BaseCommand } from "#base-command";
|
|
7
|
+
import { infoFlags } from "#lib/flags";
|
|
8
|
+
import { getKitFromManifest } from "#manifest";
|
|
9
|
+
export default class KitInfo extends BaseCommand {
|
|
10
|
+
static description = "Show detailed information about a kit";
|
|
11
|
+
static examples = [
|
|
12
|
+
"<%= config.bin %> kit info starlight",
|
|
13
|
+
"<%= config.bin %> kit info starlight --variables",
|
|
14
|
+
"<%= config.bin %> kit info starlight --json",
|
|
15
|
+
];
|
|
16
|
+
static flags = {
|
|
17
|
+
...BaseCommand.baseFlags,
|
|
18
|
+
...infoFlags,
|
|
19
|
+
};
|
|
20
|
+
static args = {
|
|
21
|
+
kit: Args.string({
|
|
22
|
+
description: "Kit name",
|
|
23
|
+
required: true,
|
|
24
|
+
}),
|
|
25
|
+
};
|
|
26
|
+
async run() {
|
|
27
|
+
const { args, flags } = await this.parse(KitInfo);
|
|
28
|
+
await this.resolveEffectiveCwd(flags);
|
|
29
|
+
const projectRoot = flags.cwd;
|
|
30
|
+
const kitName = args.kit;
|
|
31
|
+
// Verify kit exists
|
|
32
|
+
const entry = getKitFromManifest(projectRoot, kitName);
|
|
33
|
+
if (!entry) {
|
|
34
|
+
this.log(msg.error(`Kit not found: ${kitName}`));
|
|
35
|
+
this.log(`\n Run ${c.command("hyper kit list")} to see installed kits.\n`);
|
|
36
|
+
this.exit(1);
|
|
37
|
+
}
|
|
38
|
+
// Discover full kit tree
|
|
39
|
+
const kits = await this.discoverKitTree(projectRoot);
|
|
40
|
+
const kit = kits.find((k) => k.manifest.name === kitName);
|
|
41
|
+
if (!kit) {
|
|
42
|
+
this.log(msg.error(`Kit not found: ${kitName}`));
|
|
43
|
+
this.exit(1);
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
if (flags.json) {
|
|
47
|
+
this.log(JSON.stringify({
|
|
48
|
+
name: kit.manifest.name,
|
|
49
|
+
version: kit.config?.version ?? kit.manifest.version,
|
|
50
|
+
description: kit.config?.description,
|
|
51
|
+
source: kit.manifest.source,
|
|
52
|
+
type: kit.manifest.type,
|
|
53
|
+
installedAt: kit.manifest.installedAt,
|
|
54
|
+
cookbooks: kit.cookbooks.map((cb) => ({
|
|
55
|
+
name: cb.name,
|
|
56
|
+
description: cb.config?.description,
|
|
57
|
+
recipes: cb.recipes.map((r) => r.name),
|
|
58
|
+
})),
|
|
59
|
+
}, null, 2));
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
this.displayKitInfo(kit, flags);
|
|
63
|
+
}
|
|
64
|
+
displayKitInfo(kit, flags) {
|
|
65
|
+
const config = kit.config;
|
|
66
|
+
const version = config?.version ?? kit.manifest.version;
|
|
67
|
+
this.log("");
|
|
68
|
+
this.log(markdown(`# Kit: ${kit.manifest.name}`));
|
|
69
|
+
// Key-value metadata
|
|
70
|
+
if (version)
|
|
71
|
+
this.log(s.keyValue("version", c.version(version), 2));
|
|
72
|
+
if (config?.author)
|
|
73
|
+
this.log(s.keyValue("author", config.author, 2));
|
|
74
|
+
if (config?.description) {
|
|
75
|
+
this.log("");
|
|
76
|
+
this.log(indent(c.muted(config.description), 2));
|
|
77
|
+
}
|
|
78
|
+
// Source info (additive flag)
|
|
79
|
+
if (flags.source) {
|
|
80
|
+
this.log("");
|
|
81
|
+
this.log(s.header("Source"));
|
|
82
|
+
this.log(s.keyValue(" Type", kit.manifest.type));
|
|
83
|
+
this.log(s.keyValue(" Source", kit.manifest.source));
|
|
84
|
+
this.log(s.keyValue(" Path", s.path(kit.path)));
|
|
85
|
+
this.log(s.keyValue(" Installed", kit.manifest.installedAt));
|
|
86
|
+
if (kit.manifest.commit)
|
|
87
|
+
this.log(s.keyValue(" Commit", kit.manifest.commit));
|
|
88
|
+
if (kit.manifest.branch)
|
|
89
|
+
this.log(s.keyValue(" Branch", kit.manifest.branch));
|
|
90
|
+
if (kit.manifest.tag)
|
|
91
|
+
this.log(s.keyValue(" Tag", kit.manifest.tag));
|
|
92
|
+
}
|
|
93
|
+
// Variables (additive flag)
|
|
94
|
+
if (flags.variables && config?.variables) {
|
|
95
|
+
this.log("");
|
|
96
|
+
this.log(s.header("Variables"));
|
|
97
|
+
for (const [key, variable] of Object.entries(config.variables)) {
|
|
98
|
+
const v = variable;
|
|
99
|
+
let line = ` ${c.property(key)}`;
|
|
100
|
+
if (v.type)
|
|
101
|
+
line += c.muted(` (${v.type})`);
|
|
102
|
+
if (v.required)
|
|
103
|
+
line += c.required(" *required*");
|
|
104
|
+
if (v.default !== undefined)
|
|
105
|
+
line += c.default(v.default);
|
|
106
|
+
this.log(line);
|
|
107
|
+
if (v.description)
|
|
108
|
+
this.log(s.description(v.description, 4));
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
// Cookbooks table (same format as kit list)
|
|
112
|
+
if (kit.cookbooks.length > 0) {
|
|
113
|
+
this.log("");
|
|
114
|
+
this.log(s.header("Cookbooks", kit.cookbooks.length));
|
|
115
|
+
this.log("");
|
|
116
|
+
const tbl = table({
|
|
117
|
+
columns: [
|
|
118
|
+
{ key: "cookbook", header: "Cookbook" },
|
|
119
|
+
{ key: "recipes", header: "Recipes" },
|
|
120
|
+
],
|
|
121
|
+
data: kit.cookbooks.map((cb) => ({
|
|
122
|
+
cookbook: c.cookbook(cb.name),
|
|
123
|
+
recipes: cb.recipes.map((r) => c.recipe(r.name)).join(c.muted(", ")),
|
|
124
|
+
})),
|
|
125
|
+
variant: "borderless",
|
|
126
|
+
});
|
|
127
|
+
this.log(indent(tbl, 2));
|
|
128
|
+
}
|
|
129
|
+
else {
|
|
130
|
+
this.log("");
|
|
131
|
+
this.log(c.muted(" No cookbooks found."));
|
|
132
|
+
}
|
|
133
|
+
this.log("");
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
//# sourceMappingURL=info.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"info.js","sourceRoot":"","sources":["../../../src/commands/kit/info.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAE/C,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,WAA2B;IAC/D,MAAM,CAAU,WAAW,GAAG,uCAAuC,CAAC;IAEtE,MAAM,CAAU,QAAQ,GAAG;QAC1B,sCAAsC;QACtC,kDAAkD;QAClD,6CAA6C;KAC7C,CAAC;IAEF,MAAM,CAAU,KAAK,GAAG;QACvB,GAAG,WAAW,CAAC,SAAS;QACxB,GAAG,SAAS;KACZ,CAAC;IAEF,MAAM,CAAU,IAAI,GAAG;QACtB,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC;YAChB,WAAW,EAAE,UAAU;YACvB,QAAQ,EAAE,IAAI;SACd,CAAC;KACF,CAAC;IAEF,KAAK,CAAC,GAAG;QACR,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAClD,MAAM,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;QAEtC,MAAM,WAAW,GAAG,KAAK,CAAC,GAAG,CAAC;QAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC;QAEzB,oBAAoB;QACpB,MAAM,KAAK,GAAG,kBAAkB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QACvD,IAAI,CAAC,KAAK,EAAE,CAAC;YACZ,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,kBAAkB,OAAO,EAAE,CAAC,CAAC,CAAC;YACjD,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,2BAA2B,CAAC,CAAC;YAC5E,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACd,CAAC;QAED,yBAAyB;QACzB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;QACrD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;QAE1D,IAAI,CAAC,GAAG,EAAE,CAAC;YACV,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,kBAAkB,OAAO,EAAE,CAAC,CAAC,CAAC;YACjD,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACb,OAAO;QACR,CAAC;QAED,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;YAChB,IAAI,CAAC,GAAG,CACP,IAAI,CAAC,SAAS,CACb;gBACC,IAAI,EAAE,GAAG,CAAC,QAAQ,CAAC,IAAI;gBACvB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO;gBACpD,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW;gBACpC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,MAAM;gBAC3B,IAAI,EAAE,GAAG,CAAC,QAAQ,CAAC,IAAI;gBACvB,WAAW,EAAE,GAAG,CAAC,QAAQ,CAAC,WAAW;gBACrC,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;oBACrC,IAAI,EAAE,EAAE,CAAC,IAAI;oBACb,WAAW,EAAE,EAAE,CAAC,MAAM,EAAE,WAAW;oBACnC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;iBACtC,CAAC,CAAC;aACH,EACD,IAAI,EACJ,CAAC,CACD,CACD,CAAC;YACF,OAAO;QACR,CAAC;QAED,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACjC,CAAC;IAEO,cAAc,CAAC,GAAY,EAAE,KAA0B;QAC9D,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;QAC1B,MAAM,OAAO,GAAG,MAAM,EAAE,OAAO,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC;QAExD,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACb,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAElD,qBAAqB;QACrB,IAAI,OAAO;YAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACpE,IAAI,MAAM,EAAE,MAAM;YAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;QACrE,IAAI,MAAM,EAAE,WAAW,EAAE,CAAC;YACzB,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACb,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAClD,CAAC;QAED,8BAA8B;QAC9B,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YAClB,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACb,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC7B,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;YAClD,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;YACtD,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACjD,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,EAAE,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;YAC9D,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM;gBAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;YAC/E,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM;gBAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;YAC/E,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG;gBAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;QACvE,CAAC;QAED,4BAA4B;QAC5B,IAAI,KAAK,CAAC,SAAS,IAAI,MAAM,EAAE,SAAS,EAAE,CAAC;YAC1C,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACb,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;YAChC,KAAK,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;gBAChE,MAAM,CAAC,GAAG,QAAe,CAAC;gBAC1B,IAAI,IAAI,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBAClC,IAAI,CAAC,CAAC,IAAI;oBAAE,IAAI,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;gBAC5C,IAAI,CAAC,CAAC,QAAQ;oBAAE,IAAI,IAAI,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;gBAClD,IAAI,CAAC,CAAC,OAAO,KAAK,SAAS;oBAAE,IAAI,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;gBAC1D,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACf,IAAI,CAAC,CAAC,WAAW;oBAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC;YAC9D,CAAC;QACF,CAAC;QAED,4CAA4C;QAC5C,IAAI,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACb,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;YACtD,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAEb,MAAM,GAAG,GAAG,KAAK,CAAC;gBACjB,OAAO,EAAE;oBACR,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE;oBACvC,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE;iBACrC;gBACD,IAAI,EAAE,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;oBAChC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC;oBAC7B,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;iBACpE,CAAC,CAAC;gBACH,OAAO,EAAE,YAAY;aACrB,CAAC,CAAC;YACH,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;QAC1B,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACb,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,CAAC;QAC5C,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACd,CAAC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Install a kit from npm, JSR, GitHub, local paths, or other sources
|
|
3
|
+
*/
|
|
4
|
+
import { BaseCommand } from "#base-command";
|
|
5
|
+
export default class KitInstall extends BaseCommand<typeof KitInstall> {
|
|
6
|
+
static description: string;
|
|
7
|
+
static examples: string[];
|
|
8
|
+
static flags: {
|
|
9
|
+
dev: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
10
|
+
name: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
|
+
force: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
12
|
+
cwd: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
|
+
debug: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
14
|
+
};
|
|
15
|
+
static args: {
|
|
16
|
+
kit: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
|
|
17
|
+
};
|
|
18
|
+
run(): Promise<void>;
|
|
19
|
+
/**
|
|
20
|
+
* Install npm/JSR package to node_modules using package manager
|
|
21
|
+
*/
|
|
22
|
+
private installPackage;
|
|
23
|
+
/**
|
|
24
|
+
* Install kit to .hyper/kits/ directory (for GitHub, Git URLs, local paths, etc.)
|
|
25
|
+
*/
|
|
26
|
+
private installToKitsDir;
|
|
27
|
+
/**
|
|
28
|
+
* Download from GitHub/GitLab/Bitbucket using giget
|
|
29
|
+
*/
|
|
30
|
+
private cloneFromGitHost;
|
|
31
|
+
/**
|
|
32
|
+
* Download from Git URL using giget
|
|
33
|
+
*/
|
|
34
|
+
private cloneFromGitUrl;
|
|
35
|
+
/**
|
|
36
|
+
* Copy from local path
|
|
37
|
+
*/
|
|
38
|
+
private copyFromLocal;
|
|
39
|
+
/**
|
|
40
|
+
* Download and extract from tarball URL
|
|
41
|
+
*/
|
|
42
|
+
private downloadFromUrl;
|
|
43
|
+
/**
|
|
44
|
+
* Extract kit name from resolved source
|
|
45
|
+
*/
|
|
46
|
+
private extractKitName;
|
|
47
|
+
protected detectPackageManager(): "bun" | "pnpm" | "yarn" | "npm";
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=install.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../../src/commands/kit/install.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAS5C,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,WAAW,CAAC,OAAO,UAAU,CAAC;IACrE,OAAgB,WAAW,SAAwD;IAEnF,OAAgB,QAAQ,WAOtB;IAEF,OAAgB,KAAK;;;;;;MAenB;IAEF,OAAgB,IAAI;;MAKlB;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;IA8C1B;;OAEG;YACW,cAAc;IAgB5B;;OAEG;YACW,gBAAgB;IA0F9B;;OAEG;YACW,gBAAgB;IAmC9B;;OAEG;YACW,eAAe;IAgB7B;;OAEG;YACW,aAAa;IAsB3B;;OAEG;YACW,eAAe;IA2B7B;;OAEG;IACH,OAAO,CAAC,cAAc;cAoCH,oBAAoB,IAAI,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK;CAkD1E"}
|
|
@@ -0,0 +1,352 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Install a kit from npm, JSR, GitHub, local paths, or other sources
|
|
3
|
+
*/
|
|
4
|
+
import { execSync } from "node:child_process";
|
|
5
|
+
import { cpSync, existsSync, mkdirSync, rmSync } from "node:fs";
|
|
6
|
+
import { basename, isAbsolute, join, resolve } from "node:path";
|
|
7
|
+
import { Args, Flags } from "@oclif/core";
|
|
8
|
+
import { downloadTemplate } from "giget";
|
|
9
|
+
import { BaseCommand } from "#base-command";
|
|
10
|
+
import { addKitToManifest, extractPackageVersion, isKitInstalled, } from "#manifest";
|
|
11
|
+
import { buildInstallCommand, resolveKitSource } from "#source-resolver";
|
|
12
|
+
export default class KitInstall extends BaseCommand {
|
|
13
|
+
static description = "Install a kit from npm, JSR, GitHub, or local path";
|
|
14
|
+
static examples = [
|
|
15
|
+
"<%= config.bin %> kit install @kit/nextjs",
|
|
16
|
+
"<%= config.bin %> kit install svallory/hypergen-kit-nextjs",
|
|
17
|
+
"<%= config.bin %> kit install jsr:@std/path",
|
|
18
|
+
"<%= config.bin %> kit install ./local-kit",
|
|
19
|
+
"<%= config.bin %> kit install C:\\\\Projects\\\\my-kit",
|
|
20
|
+
"<%= config.bin %> kit install https://github.com/user/repo.git",
|
|
21
|
+
];
|
|
22
|
+
static flags = {
|
|
23
|
+
...BaseCommand.baseFlags,
|
|
24
|
+
dev: Flags.boolean({
|
|
25
|
+
description: "Install as a dev dependency (only for npm/JSR)",
|
|
26
|
+
default: false,
|
|
27
|
+
}),
|
|
28
|
+
name: Flags.string({
|
|
29
|
+
char: "n",
|
|
30
|
+
description: "Name to use for the kit directory (default: auto-detect from source)",
|
|
31
|
+
}),
|
|
32
|
+
force: Flags.boolean({
|
|
33
|
+
char: "f",
|
|
34
|
+
description: "Replace existing kit even if already installed (allows changing source)",
|
|
35
|
+
default: false,
|
|
36
|
+
}),
|
|
37
|
+
};
|
|
38
|
+
static args = {
|
|
39
|
+
kit: Args.string({
|
|
40
|
+
description: "Kit to install (npm, JSR, GitHub shorthand, git URL, or local path)",
|
|
41
|
+
required: true,
|
|
42
|
+
}),
|
|
43
|
+
};
|
|
44
|
+
async run() {
|
|
45
|
+
const { args, flags } = await this.parse(KitInstall);
|
|
46
|
+
this.flags = flags;
|
|
47
|
+
this.args = args;
|
|
48
|
+
await this.resolveEffectiveCwd(flags);
|
|
49
|
+
try {
|
|
50
|
+
// Resolve kit source to determine type and normalized source
|
|
51
|
+
const resolved = resolveKitSource(args.kit);
|
|
52
|
+
this.log(`Installing kit: ${args.kit}`);
|
|
53
|
+
this.log(`Source type: ${resolved.type}`);
|
|
54
|
+
// Installation strategy based on source type
|
|
55
|
+
if (resolved.type === "npm" || resolved.type === "jsr") {
|
|
56
|
+
// NPM/JSR packages: Install to node_modules using package manager
|
|
57
|
+
await this.installPackage(resolved, flags);
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
60
|
+
// Everything else: Clone/copy to ./kits/
|
|
61
|
+
await this.installToKitsDir(resolved, flags);
|
|
62
|
+
}
|
|
63
|
+
this.log(`\n✓ Kit installed successfully: ${args.kit}`);
|
|
64
|
+
this.log("\nList available recipes with: hypergen recipe list");
|
|
65
|
+
}
|
|
66
|
+
catch (error) {
|
|
67
|
+
// Distinguish our validation errors from execSync errors
|
|
68
|
+
if (error?.message?.startsWith("Invalid kit specifier")) {
|
|
69
|
+
this.error(error.message);
|
|
70
|
+
}
|
|
71
|
+
// Provide helpful error messages for common failures
|
|
72
|
+
const msg = error instanceof Error ? error.message : String(error);
|
|
73
|
+
if (msg.includes("not found") || msg.includes("404")) {
|
|
74
|
+
this.error(`Kit not found: ${args.kit}\n\nMake sure the source is correct. Examples:\n NPM: hypergen kit install @kit/nextjs\n GitHub: hypergen kit install user/repo\n JSR: hypergen kit install jsr:@std/path\n Local: hypergen kit install ./path/to/kit`);
|
|
75
|
+
}
|
|
76
|
+
if (msg.includes("ENOENT")) {
|
|
77
|
+
this.error("Command not found. Make sure git or the required package manager is installed.");
|
|
78
|
+
}
|
|
79
|
+
this.error(`Failed to install kit: ${msg}`);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Install npm/JSR package to node_modules using package manager
|
|
84
|
+
*/
|
|
85
|
+
async installPackage(resolved, flags) {
|
|
86
|
+
const pm = this.detectPackageManager();
|
|
87
|
+
const cmd = buildInstallCommand(resolved, pm, {
|
|
88
|
+
dev: flags.dev,
|
|
89
|
+
global: false, // Global install doesn't make sense for kits
|
|
90
|
+
});
|
|
91
|
+
this.log(`Installing to node_modules using ${pm}...`);
|
|
92
|
+
this.log(`Running: ${cmd}`);
|
|
93
|
+
execSync(cmd, {
|
|
94
|
+
cwd: flags.cwd,
|
|
95
|
+
stdio: "inherit",
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Install kit to .hyper/kits/ directory (for GitHub, Git URLs, local paths, etc.)
|
|
100
|
+
*/
|
|
101
|
+
async installToKitsDir(resolved, flags) {
|
|
102
|
+
const projectRoot = flags.cwd;
|
|
103
|
+
const kitsDir = join(projectRoot, ".hyper", "kits");
|
|
104
|
+
// Ensure kits directory exists
|
|
105
|
+
if (!existsSync(kitsDir)) {
|
|
106
|
+
mkdirSync(kitsDir, { recursive: true });
|
|
107
|
+
this.log(`Created kits directory: ${kitsDir}`);
|
|
108
|
+
}
|
|
109
|
+
// Determine kit name
|
|
110
|
+
const kitName = flags.name || this.extractKitName(resolved);
|
|
111
|
+
const targetDir = join(kitsDir, kitName);
|
|
112
|
+
// Check if kit already exists (directory or manifest)
|
|
113
|
+
if (existsSync(targetDir) || isKitInstalled(projectRoot, kitName)) {
|
|
114
|
+
if (!flags.force) {
|
|
115
|
+
this.error(`Kit already exists: ${kitName}\nUse --force to replace it, or --name <name> for a different name`);
|
|
116
|
+
}
|
|
117
|
+
// --force: remove existing kit directory before reinstalling
|
|
118
|
+
this.log(`Replacing existing kit: ${kitName}`);
|
|
119
|
+
if (existsSync(targetDir)) {
|
|
120
|
+
rmSync(targetDir, { recursive: true, force: true });
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
this.log(`Installing to: .hyper/kits/${kitName}`);
|
|
124
|
+
// Install based on source type
|
|
125
|
+
let commit;
|
|
126
|
+
let branch;
|
|
127
|
+
let tag;
|
|
128
|
+
let resolvedSource = resolved.original;
|
|
129
|
+
switch (resolved.type) {
|
|
130
|
+
case "github":
|
|
131
|
+
case "gitlab":
|
|
132
|
+
case "bitbucket": {
|
|
133
|
+
const gitInfo = await this.cloneFromGitHost(resolved, targetDir);
|
|
134
|
+
commit = gitInfo.commit;
|
|
135
|
+
branch = gitInfo.branch;
|
|
136
|
+
tag = gitInfo.tag;
|
|
137
|
+
break;
|
|
138
|
+
}
|
|
139
|
+
case "git": {
|
|
140
|
+
const gitUrlInfo = await this.cloneFromGitUrl(resolved.source, targetDir);
|
|
141
|
+
commit = gitUrlInfo.commit;
|
|
142
|
+
break;
|
|
143
|
+
}
|
|
144
|
+
case "local": {
|
|
145
|
+
// Resolve to absolute path so the manifest always stores the full path
|
|
146
|
+
resolvedSource = isAbsolute(resolved.source)
|
|
147
|
+
? resolved.source
|
|
148
|
+
: resolve(flags.cwd, resolved.source);
|
|
149
|
+
await this.copyFromLocal(resolved.source, targetDir);
|
|
150
|
+
break;
|
|
151
|
+
}
|
|
152
|
+
case "url":
|
|
153
|
+
await this.downloadFromUrl(resolved.source, targetDir);
|
|
154
|
+
break;
|
|
155
|
+
default:
|
|
156
|
+
this.error(`Unsupported source type for kit installation: ${resolved.type}`);
|
|
157
|
+
}
|
|
158
|
+
// Extract version from package.json if available
|
|
159
|
+
const version = extractPackageVersion(targetDir);
|
|
160
|
+
// Add to manifest
|
|
161
|
+
const manifestEntry = {
|
|
162
|
+
name: kitName,
|
|
163
|
+
source: resolvedSource,
|
|
164
|
+
type: resolved.type,
|
|
165
|
+
installedAt: new Date().toISOString(),
|
|
166
|
+
commit,
|
|
167
|
+
version,
|
|
168
|
+
branch,
|
|
169
|
+
tag,
|
|
170
|
+
};
|
|
171
|
+
addKitToManifest(projectRoot, manifestEntry);
|
|
172
|
+
this.log(`Added ${kitName} to manifest`);
|
|
173
|
+
}
|
|
174
|
+
/**
|
|
175
|
+
* Download from GitHub/GitLab/Bitbucket using giget
|
|
176
|
+
*/
|
|
177
|
+
async cloneFromGitHost(resolved, targetDir) {
|
|
178
|
+
// Extract branch/tag information
|
|
179
|
+
let branch;
|
|
180
|
+
let tag;
|
|
181
|
+
// Check for branch (#) or tag (@) in source
|
|
182
|
+
const branchMatch = resolved.source.match(/#([^/]+)$/);
|
|
183
|
+
const tagMatch = resolved.source.match(/@([^/]+)$/);
|
|
184
|
+
if (branchMatch) {
|
|
185
|
+
branch = branchMatch[1];
|
|
186
|
+
}
|
|
187
|
+
else if (tagMatch) {
|
|
188
|
+
tag = tagMatch[1];
|
|
189
|
+
}
|
|
190
|
+
this.log(`Downloading from: ${resolved.source}`);
|
|
191
|
+
try {
|
|
192
|
+
await downloadTemplate(resolved.source, {
|
|
193
|
+
dir: targetDir,
|
|
194
|
+
force: false,
|
|
195
|
+
offline: false,
|
|
196
|
+
});
|
|
197
|
+
}
|
|
198
|
+
catch (error) {
|
|
199
|
+
throw new Error(`Failed to download from git host: ${error.message}`);
|
|
200
|
+
}
|
|
201
|
+
// Note: giget doesn't provide commit hash, we'd need to get it from the repo
|
|
202
|
+
// This is a limitation we accept for now
|
|
203
|
+
return { branch, tag };
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* Download from Git URL using giget
|
|
207
|
+
*/
|
|
208
|
+
async cloneFromGitUrl(gitUrl, targetDir) {
|
|
209
|
+
this.log(`Downloading from: ${gitUrl}`);
|
|
210
|
+
try {
|
|
211
|
+
await downloadTemplate(gitUrl, {
|
|
212
|
+
dir: targetDir,
|
|
213
|
+
force: false,
|
|
214
|
+
offline: false,
|
|
215
|
+
});
|
|
216
|
+
}
|
|
217
|
+
catch (error) {
|
|
218
|
+
throw new Error(`Failed to download from git URL: ${error.message}`);
|
|
219
|
+
}
|
|
220
|
+
return {};
|
|
221
|
+
}
|
|
222
|
+
/**
|
|
223
|
+
* Copy from local path
|
|
224
|
+
*/
|
|
225
|
+
async copyFromLocal(sourcePath, targetDir) {
|
|
226
|
+
// Resolve relative paths
|
|
227
|
+
const absoluteSource = isAbsolute(sourcePath)
|
|
228
|
+
? sourcePath
|
|
229
|
+
: resolve(this.flags.cwd, sourcePath);
|
|
230
|
+
if (!existsSync(absoluteSource)) {
|
|
231
|
+
this.error(`Source path does not exist: ${absoluteSource}`);
|
|
232
|
+
}
|
|
233
|
+
this.log(`Copying from: ${absoluteSource}`);
|
|
234
|
+
cpSync(absoluteSource, targetDir, {
|
|
235
|
+
recursive: true,
|
|
236
|
+
filter: (source) => {
|
|
237
|
+
// Skip common directories that shouldn't be copied
|
|
238
|
+
const name = basename(source);
|
|
239
|
+
return !["node_modules", ".git", "dist", "build", ".DS_Store"].includes(name);
|
|
240
|
+
},
|
|
241
|
+
});
|
|
242
|
+
}
|
|
243
|
+
/**
|
|
244
|
+
* Download and extract from tarball URL
|
|
245
|
+
*/
|
|
246
|
+
async downloadFromUrl(url, targetDir) {
|
|
247
|
+
this.log(`Downloading from: ${url}`);
|
|
248
|
+
// Create target directory
|
|
249
|
+
mkdirSync(targetDir, { recursive: true });
|
|
250
|
+
// Download and extract (assuming .tar.gz or .tgz)
|
|
251
|
+
if (url.endsWith(".tar.gz") || url.endsWith(".tgz")) {
|
|
252
|
+
execSync(`curl -L "${url}" | tar xz -C "${targetDir}" --strip-components=1`, {
|
|
253
|
+
cwd: this.flags.cwd,
|
|
254
|
+
stdio: "inherit",
|
|
255
|
+
});
|
|
256
|
+
}
|
|
257
|
+
else if (url.endsWith(".zip")) {
|
|
258
|
+
// Download zip file then extract
|
|
259
|
+
const tempZip = join(targetDir, "temp.zip");
|
|
260
|
+
execSync(`curl -L -o "${tempZip}" "${url}" && unzip -q "${tempZip}" -d "${targetDir}" && rm "${tempZip}"`, {
|
|
261
|
+
cwd: this.flags.cwd,
|
|
262
|
+
stdio: "inherit",
|
|
263
|
+
});
|
|
264
|
+
}
|
|
265
|
+
else {
|
|
266
|
+
this.error("Unsupported archive format. Only .tar.gz, .tgz, and .zip are supported.");
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
/**
|
|
270
|
+
* Extract kit name from resolved source
|
|
271
|
+
*/
|
|
272
|
+
extractKitName(resolved) {
|
|
273
|
+
switch (resolved.type) {
|
|
274
|
+
case "github":
|
|
275
|
+
case "gitlab":
|
|
276
|
+
case "bitbucket": {
|
|
277
|
+
// Extract repo name from github:user/repo or github:user/repo#branch
|
|
278
|
+
const match = resolved.source.match(/[:/]([^:/]+\/[^:/]+?)(?:[#@]|$)/);
|
|
279
|
+
if (match) {
|
|
280
|
+
const [user, repo] = match[1].split("/");
|
|
281
|
+
return repo || user; // Use repo name
|
|
282
|
+
}
|
|
283
|
+
return "kit";
|
|
284
|
+
}
|
|
285
|
+
case "git": {
|
|
286
|
+
// Extract from git URL
|
|
287
|
+
const match = resolved.source.match(/\/([^/]+?)(?:\.git)?$/);
|
|
288
|
+
return match ? match[1] : "kit";
|
|
289
|
+
}
|
|
290
|
+
case "local": {
|
|
291
|
+
// Use directory name
|
|
292
|
+
return basename(resolved.source);
|
|
293
|
+
}
|
|
294
|
+
case "url": {
|
|
295
|
+
// Extract filename without extension
|
|
296
|
+
const match = resolved.source.match(/\/([^/]+?)(?:\.(tar\.gz|tgz|zip))?$/);
|
|
297
|
+
return match ? match[1] : "kit";
|
|
298
|
+
}
|
|
299
|
+
default:
|
|
300
|
+
return "kit";
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
detectPackageManager() {
|
|
304
|
+
let dir = this.flags.cwd;
|
|
305
|
+
// Walk up the directory tree to find a lock file
|
|
306
|
+
while (dir !== "/" && dir !== ".") {
|
|
307
|
+
// Check for lock files in order of preference
|
|
308
|
+
if (existsSync(join(dir, "bun.lockb")) || existsSync(join(dir, "bun.lock"))) {
|
|
309
|
+
return "bun";
|
|
310
|
+
}
|
|
311
|
+
if (existsSync(join(dir, "pnpm-lock.yaml"))) {
|
|
312
|
+
return "pnpm";
|
|
313
|
+
}
|
|
314
|
+
if (existsSync(join(dir, "yarn.lock"))) {
|
|
315
|
+
return "yarn";
|
|
316
|
+
}
|
|
317
|
+
if (existsSync(join(dir, "package-lock.json"))) {
|
|
318
|
+
return "npm";
|
|
319
|
+
}
|
|
320
|
+
// Move up one directory
|
|
321
|
+
const parent = join(dir, "..");
|
|
322
|
+
if (parent === dir)
|
|
323
|
+
break; // Reached root
|
|
324
|
+
dir = parent;
|
|
325
|
+
}
|
|
326
|
+
// No lock file found, check which package manager is available
|
|
327
|
+
try {
|
|
328
|
+
execSync("bun --version", { stdio: "ignore" });
|
|
329
|
+
return "bun";
|
|
330
|
+
}
|
|
331
|
+
catch {
|
|
332
|
+
// bun not available
|
|
333
|
+
}
|
|
334
|
+
try {
|
|
335
|
+
execSync("pnpm --version", { stdio: "ignore" });
|
|
336
|
+
return "pnpm";
|
|
337
|
+
}
|
|
338
|
+
catch {
|
|
339
|
+
// pnpm not available
|
|
340
|
+
}
|
|
341
|
+
try {
|
|
342
|
+
execSync("yarn --version", { stdio: "ignore" });
|
|
343
|
+
return "yarn";
|
|
344
|
+
}
|
|
345
|
+
catch {
|
|
346
|
+
// yarn not available
|
|
347
|
+
}
|
|
348
|
+
// Default to npm (should always be available with Node.js)
|
|
349
|
+
return "npm";
|
|
350
|
+
}
|
|
351
|
+
}
|
|
352
|
+
//# sourceMappingURL=install.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/commands/kit/install.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* List installed kits
|
|
3
|
+
*/
|
|
4
|
+
import { BaseCommand } from "#base-command";
|
|
5
|
+
export default class KitList extends BaseCommand<typeof KitList> {
|
|
6
|
+
static description: string;
|
|
7
|
+
static examples: string[];
|
|
8
|
+
static flags: {
|
|
9
|
+
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
10
|
+
cwd: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
|
+
debug: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
12
|
+
};
|
|
13
|
+
run(): Promise<void>;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=list.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../src/commands/kit/list.ts"],"names":[],"mappings":"AAAA;;GAEG;AAWH,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAe5C,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,WAAW,CAAC,OAAO,OAAO,CAAC;IAC/D,OAAgB,WAAW,SAAyB;IAEpD,OAAgB,QAAQ,WAAuE;IAE/F,OAAgB,KAAK;;;;MAGnB;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAgG1B"}
|