@vltpkg/cli-sdk 0.0.0-7 → 0.0.0-9
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/esm/commands/cache.d.ts +47 -0
- package/dist/esm/commands/cache.d.ts.map +1 -0
- package/dist/esm/commands/cache.js +211 -0
- package/dist/esm/commands/cache.js.map +1 -0
- package/dist/esm/commands/exec-local.d.ts +5 -0
- package/dist/esm/commands/exec-local.d.ts.map +1 -0
- package/dist/esm/commands/exec-local.js +22 -0
- package/dist/esm/commands/exec-local.js.map +1 -0
- package/dist/esm/commands/exec.d.ts +1 -2
- package/dist/esm/commands/exec.d.ts.map +1 -1
- package/dist/esm/commands/exec.js +6 -15
- package/dist/esm/commands/exec.js.map +1 -1
- package/dist/esm/commands/init.d.ts +2 -3
- package/dist/esm/commands/init.d.ts.map +1 -1
- package/dist/esm/commands/init.js.map +1 -1
- package/dist/esm/commands/install/reporter.d.ts.map +1 -1
- package/dist/esm/commands/install/reporter.js +2 -1
- package/dist/esm/commands/install/reporter.js.map +1 -1
- package/dist/esm/commands/install.d.ts +5 -2
- package/dist/esm/commands/install.d.ts.map +1 -1
- package/dist/esm/commands/install.js.map +1 -1
- package/dist/esm/commands/list.d.ts.map +1 -1
- package/dist/esm/commands/list.js +2 -4
- package/dist/esm/commands/list.js.map +1 -1
- package/dist/esm/commands/pkg.d.ts +3 -3
- package/dist/esm/commands/pkg.d.ts.map +1 -1
- package/dist/esm/commands/pkg.js.map +1 -1
- package/dist/esm/commands/query.d.ts +2 -1
- package/dist/esm/commands/query.d.ts.map +1 -1
- package/dist/esm/commands/query.js +39 -4
- package/dist/esm/commands/query.js.map +1 -1
- package/dist/esm/commands/uninstall.d.ts +5 -2
- package/dist/esm/commands/uninstall.d.ts.map +1 -1
- package/dist/esm/commands/uninstall.js.map +1 -1
- package/dist/esm/commands/whoami.d.ts +4 -2
- package/dist/esm/commands/whoami.d.ts.map +1 -1
- package/dist/esm/commands/whoami.js +1 -1
- package/dist/esm/commands/whoami.js.map +1 -1
- package/dist/esm/config/definition.d.ts +17 -2
- package/dist/esm/config/definition.d.ts.map +1 -1
- package/dist/esm/config/definition.js +41 -7
- package/dist/esm/config/definition.js.map +1 -1
- package/dist/esm/config/index.d.ts +1 -0
- package/dist/esm/config/index.d.ts.map +1 -1
- package/dist/esm/config/index.js +7 -0
- package/dist/esm/config/index.js.map +1 -1
- package/dist/esm/config/usage.d.ts +3 -2
- package/dist/esm/config/usage.d.ts.map +1 -1
- package/dist/esm/config/usage.js.map +1 -1
- package/dist/esm/exec-command.js +2 -2
- package/dist/esm/exec-command.js.map +1 -1
- package/dist/esm/index.js +2 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/output.d.ts +2 -1
- package/dist/esm/output.d.ts.map +1 -1
- package/dist/esm/output.js +20 -19
- package/dist/esm/output.js.map +1 -1
- package/dist/esm/parse-add-remove-args.d.ts +1 -1
- package/dist/esm/parse-add-remove-args.d.ts.map +1 -1
- package/dist/esm/parse-add-remove-args.js +1 -1
- package/dist/esm/parse-add-remove-args.js.map +1 -1
- package/dist/esm/print-err.d.ts +5 -1
- package/dist/esm/print-err.d.ts.map +1 -1
- package/dist/esm/print-err.js +68 -21
- package/dist/esm/print-err.js.map +1 -1
- package/dist/esm/view.d.ts +1 -1
- package/dist/esm/view.d.ts.map +1 -1
- package/dist/esm/view.js.map +1 -1
- package/package.json +23 -21
- package/dist/esm/commands/install-exec.d.ts +0 -4
- package/dist/esm/commands/install-exec.d.ts.map +0 -1
- package/dist/esm/commands/install-exec.js +0 -13
- package/dist/esm/commands/install-exec.js.map +0 -1
package/dist/esm/print-err.js
CHANGED
|
@@ -1,47 +1,94 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
if (
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
import { isErrorWithCode } from '@vltpkg/error-cause';
|
|
2
|
+
import { formatWithOptions } from 'node:util';
|
|
3
|
+
const trimStack = (err) => {
|
|
4
|
+
if (err.stack) {
|
|
5
|
+
const lines = err.stack.trim().split('\n');
|
|
6
|
+
if (lines[0] === `${err.name}: ${err.message}`) {
|
|
7
|
+
lines.shift();
|
|
8
|
+
}
|
|
9
|
+
return lines.map(l => l.trim()).join('\n');
|
|
10
|
+
}
|
|
11
|
+
};
|
|
12
|
+
const indent = (lines, num = 2) => lines
|
|
13
|
+
.split('\n')
|
|
14
|
+
.map(l => ' '.repeat(num) + l)
|
|
15
|
+
.join('\n');
|
|
16
|
+
export const printErr = (err, usage, stderr, baseOpts) => {
|
|
17
|
+
const format = (arg, opts) => {
|
|
18
|
+
const { maxLines = 200, ...rest } = { ...baseOpts, ...opts };
|
|
19
|
+
const lines = formatWithOptions(rest, arg).split('\n');
|
|
20
|
+
const totalLines = lines.length;
|
|
21
|
+
if (totalLines > maxLines) {
|
|
22
|
+
lines.length = maxLines;
|
|
23
|
+
lines.push(`... ${totalLines - maxLines} lines hidden ...`);
|
|
24
|
+
}
|
|
25
|
+
return lines.join('\n');
|
|
26
|
+
};
|
|
27
|
+
// This is an error with a cause, check if it we know about its
|
|
28
|
+
// code and try to print it. If it did not print then fallback
|
|
29
|
+
// to the next option.
|
|
30
|
+
if (isErrorWithCode(err) && print(err, usage, stderr, format)) {
|
|
8
31
|
return;
|
|
9
32
|
}
|
|
10
|
-
|
|
33
|
+
// We have a real but we dont know anything special about its
|
|
34
|
+
// properties. Just print the standard error properties as best we can.
|
|
35
|
+
if (err instanceof Error) {
|
|
36
|
+
stderr(`${err.name}: ${err.message}`);
|
|
37
|
+
if ('cause' in err) {
|
|
38
|
+
stderr(`Cause:`);
|
|
39
|
+
if (err.cause instanceof Error) {
|
|
40
|
+
stderr(indent(format(err.cause)));
|
|
41
|
+
}
|
|
42
|
+
else if (err.cause && typeof err.cause === 'object') {
|
|
43
|
+
for (const key in err.cause) {
|
|
44
|
+
stderr(indent(`${key}: ${format(err.cause[key])}`));
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
stderr(indent(format(err.cause)));
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
const stack = trimStack(err);
|
|
52
|
+
if (stack) {
|
|
53
|
+
stderr(`Stack:`);
|
|
54
|
+
stderr(indent(format(stack)));
|
|
55
|
+
}
|
|
11
56
|
return;
|
|
12
|
-
|
|
57
|
+
}
|
|
58
|
+
// We don't know what this is, just print it.
|
|
59
|
+
stderr(`Unknown Error:`, format(err));
|
|
13
60
|
};
|
|
14
|
-
const print = (err, usage, stderr) => {
|
|
61
|
+
const print = (err, usage, stderr, format) => {
|
|
15
62
|
switch (err.cause.code) {
|
|
16
63
|
case 'EUSAGE': {
|
|
64
|
+
const { found, validOptions } = err.cause;
|
|
17
65
|
stderr(usage().usage());
|
|
18
|
-
stderr(`Error: ${err.message}`);
|
|
19
|
-
if (
|
|
20
|
-
stderr(`
|
|
66
|
+
stderr(`Usage Error: ${err.message}`);
|
|
67
|
+
if (found) {
|
|
68
|
+
stderr(indent(`Found: ${format(found)}`));
|
|
21
69
|
}
|
|
22
|
-
if (
|
|
23
|
-
stderr(`
|
|
70
|
+
if (validOptions) {
|
|
71
|
+
stderr(indent(`Valid options: ${format(validOptions.join(', '))}`));
|
|
24
72
|
}
|
|
25
73
|
return true;
|
|
26
74
|
}
|
|
27
75
|
case 'ERESOLVE': {
|
|
28
|
-
stderr(`Resolve Error: ${err.message}`);
|
|
29
76
|
const { url, from, response, spec } = err.cause;
|
|
77
|
+
stderr(`Resolve Error: ${err.message}`);
|
|
30
78
|
if (url) {
|
|
31
|
-
stderr(`
|
|
79
|
+
stderr(indent(`While fetching: ${url}`));
|
|
32
80
|
}
|
|
33
81
|
if (spec) {
|
|
34
|
-
stderr(`
|
|
82
|
+
stderr(indent(`To satisfy: ${format(spec)}`));
|
|
35
83
|
}
|
|
36
84
|
if (from) {
|
|
37
|
-
stderr(`
|
|
85
|
+
stderr(indent(`From: ${format(from)}`));
|
|
38
86
|
}
|
|
39
87
|
if (response) {
|
|
40
|
-
stderr(
|
|
88
|
+
stderr(indent(`Response: ${format(response)}`));
|
|
41
89
|
}
|
|
42
90
|
return true;
|
|
43
91
|
}
|
|
44
92
|
}
|
|
45
|
-
return false;
|
|
46
93
|
};
|
|
47
94
|
//# sourceMappingURL=print-err.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"print-err.js","sourceRoot":"","sources":["../../src/print-err.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"print-err.js","sourceRoot":"","sources":["../../src/print-err.ts"],"names":[],"mappings":"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","sourcesContent":["import { isErrorWithCode } from '@vltpkg/error-cause'\nimport type { ErrorWithCode } from '@vltpkg/error-cause'\nimport type { CommandUsage } from './index.ts'\nimport type { InspectOptions } from 'node:util'\nimport { formatWithOptions } from 'node:util'\n\nexport type ErrorFormatOptions = InspectOptions & {\n maxLines?: number\n}\n\ntype Formatter = (\n arg: unknown,\n options?: ErrorFormatOptions,\n) => string\n\nconst trimStack = (err: Error) => {\n if (err.stack) {\n const lines = err.stack.trim().split('\\n')\n if (lines[0] === `${err.name}: ${err.message}`) {\n lines.shift()\n }\n return lines.map(l => l.trim()).join('\\n')\n }\n}\n\nconst indent = (lines: string, num = 2) =>\n lines\n .split('\\n')\n .map(l => ' '.repeat(num) + l)\n .join('\\n')\n\nexport const printErr = (\n err: unknown,\n usage: CommandUsage,\n stderr: (...a: string[]) => void,\n baseOpts?: ErrorFormatOptions,\n) => {\n const format: Formatter = (arg: unknown, opts) => {\n const { maxLines = 200, ...rest } = { ...baseOpts, ...opts }\n const lines = formatWithOptions(rest, arg).split('\\n')\n const totalLines = lines.length\n if (totalLines > maxLines) {\n lines.length = maxLines\n lines.push(`... ${totalLines - maxLines} lines hidden ...`)\n }\n return lines.join('\\n')\n }\n\n // This is an error with a cause, check if it we know about its\n // code and try to print it. If it did not print then fallback\n // to the next option.\n if (isErrorWithCode(err) && print(err, usage, stderr, format)) {\n return\n }\n\n // We have a real but we dont know anything special about its\n // properties. Just print the standard error properties as best we can.\n if (err instanceof Error) {\n stderr(`${err.name}: ${err.message}`)\n if ('cause' in err) {\n stderr(`Cause:`)\n if (err.cause instanceof Error) {\n stderr(indent(format(err.cause)))\n } else if (err.cause && typeof err.cause === 'object') {\n for (const key in err.cause) {\n stderr(\n indent(\n `${key}: ${format((err.cause as Record<string, unknown>)[key])}`,\n ),\n )\n }\n } else {\n stderr(indent(format(err.cause)))\n }\n }\n const stack = trimStack(err)\n if (stack) {\n stderr(`Stack:`)\n stderr(indent(format(stack)))\n }\n return\n }\n\n // We don't know what this is, just print it.\n stderr(`Unknown Error:`, format(err))\n}\n\nconst print = (\n err: ErrorWithCode,\n usage: CommandUsage,\n stderr: (...a: string[]) => void,\n format: Formatter,\n) => {\n switch (err.cause.code) {\n case 'EUSAGE': {\n const { found, validOptions } = err.cause\n stderr(usage().usage())\n stderr(`Usage Error: ${err.message}`)\n if (found) {\n stderr(indent(`Found: ${format(found)}`))\n }\n if (validOptions) {\n stderr(\n indent(`Valid options: ${format(validOptions.join(', '))}`),\n )\n }\n return true\n }\n\n case 'ERESOLVE': {\n const { url, from, response, spec } = err.cause\n stderr(`Resolve Error: ${err.message}`)\n if (url) {\n stderr(indent(`While fetching: ${url}`))\n }\n if (spec) {\n stderr(indent(`To satisfy: ${format(spec)}`))\n }\n if (from) {\n stderr(indent(`From: ${format(from)}`))\n }\n if (response) {\n stderr(indent(`Response: ${format(response)}`))\n }\n return true\n }\n }\n}\n"]}
|
package/dist/esm/view.d.ts
CHANGED
|
@@ -21,7 +21,7 @@ export declare class ViewClass<T = unknown> {
|
|
|
21
21
|
start(): void;
|
|
22
22
|
done(_result: T, _opts: {
|
|
23
23
|
time: number;
|
|
24
|
-
}):
|
|
24
|
+
}): unknown;
|
|
25
25
|
error(_err: unknown): void;
|
|
26
26
|
}
|
|
27
27
|
export type ViewFn<T = unknown> = (result: T, options: ViewOptions, conf: LoadedConfig) => unknown;
|
package/dist/esm/view.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../src/view.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAC1C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAErD,MAAM,MAAM,WAAW,GAAG;IAAE,MAAM,CAAC,EAAE,aAAa,CAAA;CAAE,CAAA;AAEpD;;;;;;;;;;GAUG;AACH,qBAAa,SAAS,CAAC,CAAC,GAAG,OAAO;IAChC,OAAO,EAAE,WAAW,CAAA;IACpB,MAAM,EAAE,YAAY,CAAA;gBAER,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY;IAQtD,KAAK;IACL,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,
|
|
1
|
+
{"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../src/view.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAC1C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAErD,MAAM,MAAM,WAAW,GAAG;IAAE,MAAM,CAAC,EAAE,aAAa,CAAA;CAAE,CAAA;AAEpD;;;;;;;;;;GAUG;AACH,qBAAa,SAAS,CAAC,CAAC,GAAG,OAAO;IAChC,OAAO,EAAE,WAAW,CAAA;IACpB,MAAM,EAAE,YAAY,CAAA;gBAER,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY;IAQtD,KAAK;IACL,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO;IAGlD,KAAK,CAAC,IAAI,EAAE,OAAO;CACpB;AAED,MAAM,MAAM,MAAM,CAAC,CAAC,GAAG,OAAO,IAAI,CAChC,MAAM,EAAE,CAAC,EACT,OAAO,EAAE,WAAW,EACpB,IAAI,EAAE,YAAY,KACf,OAAO,CAAA;AAEZ,MAAM,MAAM,IAAI,CAAC,CAAC,GAAG,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,SAAS,CAAC,CAAC,CAAC,CAAA;AAE/D,eAAO,MAAM,WAAW,GAAI,CAAC,kBACrB,IAAI,CAAC,CAAC,CAAC,KACZ,IAAI,IAAI,OAAO,SAAS,CAAC,CAAC,CAGQ,CAAA;AAErC,MAAM,MAAM,KAAK,CAAC,CAAC,GAAG,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA"}
|
package/dist/esm/view.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view.js","sourceRoot":"","sources":["../../src/view.ts"],"names":[],"mappings":"AAKA;;;;;;;;;;GAUG;AACH,MAAM,OAAO,SAAS;IACpB,OAAO,CAAa;IACpB,MAAM,CAAc;IAEpB,YAAY,OAAoB,EAAE,MAAoB;QACpD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACtB,CAAC;IAED,oEAAoE;IACpE,wEAAwE;IACxE,wEAAwE;IACxE,KAAK,KAAI,CAAC;IACV,IAAI,CAAC,OAAU,EAAE,KAAuB;QACtC,OAAM;IACR,CAAC;IACD,KAAK,CAAC,IAAa,IAAG,CAAC;CACxB;AAUD,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,IAAa,EACgB,EAAE,CAC/B,OAAO,IAAI,KAAK,UAAU;IAC1B,WAAW,IAAI,IAAI;IACnB,IAAI,CAAC,SAAS,YAAY,SAAS,CAAA","sourcesContent":["import type { ChalkInstance } from 'chalk'\nimport type { LoadedConfig } from './config/index.ts'\n\nexport type ViewOptions = { colors?: ChalkInstance }\n\n/**\n * The base class for all View classes\n *\n * Do not override the constructor, just provide start/done/error methods.\n *\n * These classes should be used as one or more of the exported views for\n * commands that need to know when the processing starts, handle errors in\n * various ways, etc. Fancy stuff.\n *\n * For simple use cases, usually better to create a {@link ViewFn} instead.\n */\nexport class ViewClass<T = unknown> {\n options: ViewOptions\n config: LoadedConfig\n\n constructor(options: ViewOptions, config: LoadedConfig) {\n this.options = options\n this.config = config\n }\n\n // TODO: maybe have start() return a flag to say \"i got this, do not\n // run the command\", for example to have the gui just open a web browser\n // to the page relevant to a given thing, rather than computing it twice\n start() {}\n done(_result: T, _opts: { time: number }):
|
|
1
|
+
{"version":3,"file":"view.js","sourceRoot":"","sources":["../../src/view.ts"],"names":[],"mappings":"AAKA;;;;;;;;;;GAUG;AACH,MAAM,OAAO,SAAS;IACpB,OAAO,CAAa;IACpB,MAAM,CAAc;IAEpB,YAAY,OAAoB,EAAE,MAAoB;QACpD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACtB,CAAC;IAED,oEAAoE;IACpE,wEAAwE;IACxE,wEAAwE;IACxE,KAAK,KAAI,CAAC;IACV,IAAI,CAAC,OAAU,EAAE,KAAuB;QACtC,OAAM;IACR,CAAC;IACD,KAAK,CAAC,IAAa,IAAG,CAAC;CACxB;AAUD,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,IAAa,EACgB,EAAE,CAC/B,OAAO,IAAI,KAAK,UAAU;IAC1B,WAAW,IAAI,IAAI;IACnB,IAAI,CAAC,SAAS,YAAY,SAAS,CAAA","sourcesContent":["import type { ChalkInstance } from 'chalk'\nimport type { LoadedConfig } from './config/index.ts'\n\nexport type ViewOptions = { colors?: ChalkInstance }\n\n/**\n * The base class for all View classes\n *\n * Do not override the constructor, just provide start/done/error methods.\n *\n * These classes should be used as one or more of the exported views for\n * commands that need to know when the processing starts, handle errors in\n * various ways, etc. Fancy stuff.\n *\n * For simple use cases, usually better to create a {@link ViewFn} instead.\n */\nexport class ViewClass<T = unknown> {\n options: ViewOptions\n config: LoadedConfig\n\n constructor(options: ViewOptions, config: LoadedConfig) {\n this.options = options\n this.config = config\n }\n\n // TODO: maybe have start() return a flag to say \"i got this, do not\n // run the command\", for example to have the gui just open a web browser\n // to the page relevant to a given thing, rather than computing it twice\n start() {}\n done(_result: T, _opts: { time: number }): unknown {\n return\n }\n error(_err: unknown) {}\n}\n\nexport type ViewFn<T = unknown> = (\n result: T,\n options: ViewOptions,\n conf: LoadedConfig,\n) => unknown\n\nexport type View<T = unknown> = ViewFn<T> | typeof ViewClass<T>\n\nexport const isViewClass = <T = unknown>(\n view: View<T>,\n): view is typeof ViewClass<T> =>\n typeof view === 'function' &&\n 'prototype' in view &&\n view.prototype instanceof ViewClass\n\nexport type Views<T = unknown> = View<T> | Record<string, View<T>>\n"]}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vltpkg/cli-sdk",
|
|
3
3
|
"description": "The source for the vlt CLI",
|
|
4
|
-
"version": "0.0.0-
|
|
4
|
+
"version": "0.0.0-9",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
7
7
|
"url": "git+https://github.com/vltpkg/vltpkg.git",
|
|
@@ -24,34 +24,36 @@
|
|
|
24
24
|
"dependencies": {
|
|
25
25
|
"ansi-to-pre": "^1.0.5",
|
|
26
26
|
"chalk": "^5.3.0",
|
|
27
|
-
"ink": "^5.
|
|
27
|
+
"ink": "^5.2.0",
|
|
28
28
|
"ink-spinner": "^5.0.0",
|
|
29
29
|
"jackspeak": "^4.0.3",
|
|
30
30
|
"package-json-from-dist": "^1.0.0",
|
|
31
31
|
"path-scurry": "^2.0.0",
|
|
32
32
|
"polite-json": "^5.0.0",
|
|
33
|
+
"pretty-bytes": "^6.1.1",
|
|
33
34
|
"react": "^18.3.1",
|
|
34
35
|
"react-devtools-core": "^4.28.5",
|
|
35
36
|
"walk-up-path": "^4.0.0",
|
|
36
|
-
"@vltpkg/
|
|
37
|
-
"@vltpkg/
|
|
38
|
-
"@vltpkg/
|
|
39
|
-
"@vltpkg/
|
|
40
|
-
"@vltpkg/
|
|
41
|
-
"@vltpkg/
|
|
42
|
-
"@vltpkg/
|
|
43
|
-
"@vltpkg/package-
|
|
44
|
-
"@vltpkg/
|
|
45
|
-
"@vltpkg/
|
|
46
|
-
"@vltpkg/
|
|
47
|
-
"@vltpkg/
|
|
48
|
-
"@vltpkg/
|
|
49
|
-
"@vltpkg/
|
|
50
|
-
"@vltpkg/
|
|
51
|
-
"@vltpkg/
|
|
52
|
-
"@vltpkg/
|
|
53
|
-
"@vltpkg/
|
|
54
|
-
"@vltpkg/
|
|
37
|
+
"@vltpkg/cache": "0.0.0-9",
|
|
38
|
+
"@vltpkg/dep-id": "0.0.0-9",
|
|
39
|
+
"@vltpkg/dot-prop": "0.0.0-9",
|
|
40
|
+
"@vltpkg/init": "0.0.0-9",
|
|
41
|
+
"@vltpkg/output": "0.0.0-9",
|
|
42
|
+
"@vltpkg/error-cause": "0.0.0-9",
|
|
43
|
+
"@vltpkg/graph": "0.0.0-9",
|
|
44
|
+
"@vltpkg/package-info": "0.0.0-9",
|
|
45
|
+
"@vltpkg/query": "0.0.0-9",
|
|
46
|
+
"@vltpkg/package-json": "0.0.0-9",
|
|
47
|
+
"@vltpkg/promise-spawn": "0.0.0-9",
|
|
48
|
+
"@vltpkg/run": "0.0.0-9",
|
|
49
|
+
"@vltpkg/registry-client": "0.0.0-9",
|
|
50
|
+
"@vltpkg/server": "0.0.0-9",
|
|
51
|
+
"@vltpkg/security-archive": "0.0.0-9",
|
|
52
|
+
"@vltpkg/spec": "0.0.0-9",
|
|
53
|
+
"@vltpkg/types": "0.0.0-9",
|
|
54
|
+
"@vltpkg/url-open": "0.0.0-9",
|
|
55
|
+
"@vltpkg/workspaces": "0.0.0-9",
|
|
56
|
+
"@vltpkg/xdg": "0.0.0-9"
|
|
55
57
|
},
|
|
56
58
|
"devDependencies": {
|
|
57
59
|
"@eslint/js": "^9.20.0",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"install-exec.d.ts","sourceRoot":"","sources":["../../../src/commands/install-exec.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE1D,eAAO,MAAM,KAAK,EAAE,YAMhB,CAAA;AAEJ,eAAO,MAAM,OAAO,EAAE,SAAS,CAAC,MAAM,CAKrC,CAAA"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { commandUsage } from "../config/usage.js";
|
|
2
|
-
export const usage = () => commandUsage({
|
|
3
|
-
command: 'install-exec',
|
|
4
|
-
usage: '[--package=<pkg>] [command...]',
|
|
5
|
-
description: 'Run a command defined by a package, installing it if necessary',
|
|
6
|
-
});
|
|
7
|
-
export const command = async (conf) => {
|
|
8
|
-
return [
|
|
9
|
-
'TODO: exec, but install if not present',
|
|
10
|
-
...conf.positionals,
|
|
11
|
-
].join('\n');
|
|
12
|
-
};
|
|
13
|
-
//# sourceMappingURL=install-exec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"install-exec.js","sourceRoot":"","sources":["../../../src/commands/install-exec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAGjD,MAAM,CAAC,MAAM,KAAK,GAAiB,GAAG,EAAE,CACtC,YAAY,CAAC;IACX,OAAO,EAAE,cAAc;IACvB,KAAK,EAAE,gCAAgC;IACvC,WAAW,EACT,gEAAgE;CACnE,CAAC,CAAA;AAEJ,MAAM,CAAC,MAAM,OAAO,GAAsB,KAAK,EAAC,IAAI,EAAC,EAAE;IACrD,OAAO;QACL,wCAAwC;QACxC,GAAG,IAAI,CAAC,WAAW;KACpB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACd,CAAC,CAAA","sourcesContent":["import { commandUsage } from '../config/usage.ts'\nimport type { CommandFn, CommandUsage } from '../index.ts'\n\nexport const usage: CommandUsage = () =>\n commandUsage({\n command: 'install-exec',\n usage: '[--package=<pkg>] [command...]',\n description:\n 'Run a command defined by a package, installing it if necessary',\n })\n\nexport const command: CommandFn<string> = async conf => {\n return [\n 'TODO: exec, but install if not present',\n ...conf.positionals,\n ].join('\\n')\n}\n"]}
|