@nu-art/commando 0.300.7 → 0.400.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.
- package/cli-params/CLIParamsResolver.d.ts +1 -1
- package/cli-params/CLIParamsResolver.js +30 -31
- package/cli-params/CLIParamsResolver.js.map +1 -0
- package/cli-params/consts.d.ts +1 -1
- package/cli-params/consts.js +11 -15
- package/cli-params/consts.js.map +1 -0
- package/cli-params/types.d.ts +1 -0
- package/cli-params/types.js +2 -2
- package/cli-params/types.js.map +1 -0
- package/package.json +17 -13
- package/shell/core/BaseCommando.d.ts +2 -2
- package/shell/core/BaseCommando.js +12 -14
- package/shell/core/BaseCommando.js.map +1 -0
- package/shell/core/CliError.js +10 -8
- package/shell/core/CliError.js.map +1 -0
- package/shell/core/CommandBuilder.js +41 -40
- package/shell/core/CommandBuilder.js.map +1 -0
- package/shell/core/CommandoPool.d.ts +9 -0
- package/shell/core/CommandoPool.js +15 -0
- package/shell/core/CommandoPool.js.map +1 -0
- package/shell/core/class-merger.js +3 -6
- package/shell/core/class-merger.js.map +1 -0
- package/shell/index.d.ts +2 -2
- package/shell/index.js +3 -18
- package/shell/index.js.map +1 -0
- package/shell/interactive/CommandoInteractive.d.ts +12 -15
- package/shell/interactive/CommandoInteractive.js +88 -72
- package/shell/interactive/CommandoInteractive.js.map +1 -0
- package/shell/interactive/InteractiveShell.d.ts +14 -16
- package/shell/interactive/InteractiveShell.js +135 -88
- package/shell/interactive/InteractiveShell.js.map +1 -0
- package/shell/plugins/basic.d.ts +2 -2
- package/shell/plugins/basic.js +8 -11
- package/shell/plugins/basic.js.map +1 -0
- package/shell/plugins/git.d.ts +3 -3
- package/shell/plugins/git.js +30 -36
- package/shell/plugins/git.js.map +1 -0
- package/shell/plugins/nvm.d.ts +3 -3
- package/shell/plugins/nvm.js +22 -28
- package/shell/plugins/nvm.js.map +1 -0
- package/shell/plugins/pnpm.d.ts +4 -4
- package/shell/plugins/pnpm.js +8 -11
- package/shell/plugins/pnpm.js.map +1 -0
- package/shell/plugins/programming.d.ts +2 -2
- package/shell/plugins/programming.js +3 -6
- package/shell/plugins/programming.js.map +1 -0
- package/shell/plugins/python.d.ts +3 -3
- package/shell/plugins/python.js +9 -12
- package/shell/plugins/python.js.map +1 -0
- package/shell/services/nvm.d.ts +1 -1
- package/shell/services/nvm.js +62 -88
- package/shell/services/nvm.js.map +1 -0
- package/shell/services/pnpm.d.ts +3 -3
- package/shell/services/pnpm.js +54 -56
- package/shell/services/pnpm.js.map +1 -0
- package/shell/simple/Commando.d.ts +2 -2
- package/shell/simple/Commando.js +15 -18
- package/shell/simple/Commando.js.map +1 -0
- package/shell/simple/SimpleShell.js +34 -33
- package/shell/simple/SimpleShell.js.map +1 -0
- package/shell/tools.js +4 -30
- package/shell/tools.js.map +1 -0
- package/shell/types.d.ts +1 -1
- package/shell/types.js +2 -2
- package/shell/types.js.map +1 -0
- package/console/ConsoleContainer.d.ts +0 -89
- package/console/ConsoleContainer.js +0 -145
- package/console/ConsoleScreen.d.ts +0 -21
- package/console/ConsoleScreen.js +0 -21
- package/console/types.d.ts +0 -61
- package/console/types.js +0 -72
- package/tsconfig.json +0 -23
package/shell/plugins/basic.js
CHANGED
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Commando_Basic = void 0;
|
|
4
|
-
const BaseCommando_1 = require("../core/BaseCommando");
|
|
1
|
+
import { BaseCommando } from '../core/BaseCommando.js';
|
|
5
2
|
/**
|
|
6
3
|
* Represents a Command Line Interface (CLI) to build and execute shell commands.
|
|
7
4
|
*/
|
|
8
|
-
class Commando_Basic extends
|
|
5
|
+
export class Commando_Basic extends BaseCommando {
|
|
9
6
|
/**
|
|
10
7
|
* Changes directory and optionally executes a block of commands in that directory.
|
|
11
8
|
* @param {string} folderName - Name of the directory to change to.
|
|
@@ -49,16 +46,16 @@ class Commando_Basic extends BaseCommando_1.BaseCommando {
|
|
|
49
46
|
}
|
|
50
47
|
rmdir(dirPath, options) {
|
|
51
48
|
let command = 'rm';
|
|
52
|
-
if (options
|
|
49
|
+
if (options?.force)
|
|
53
50
|
command += ' -rf';
|
|
54
|
-
if (options
|
|
51
|
+
if (options?.recursive)
|
|
55
52
|
command += ' -r';
|
|
56
53
|
this.append(`${command} ${dirPath}`);
|
|
57
54
|
return this;
|
|
58
55
|
}
|
|
59
56
|
cpdir(srcPath, destPath, options) {
|
|
60
57
|
let command = `cp -r ${srcPath}`;
|
|
61
|
-
if (options
|
|
58
|
+
if (options?.contentOnly)
|
|
62
59
|
command += '/*';
|
|
63
60
|
command += ` ${destPath}`;
|
|
64
61
|
this.append(command);
|
|
@@ -69,8 +66,8 @@ class Commando_Basic extends BaseCommando_1.BaseCommando {
|
|
|
69
66
|
return this;
|
|
70
67
|
}
|
|
71
68
|
echo(log, options) {
|
|
72
|
-
const _escape =
|
|
73
|
-
const _toFile =
|
|
69
|
+
const _escape = options?.escape ? '-e' : '';
|
|
70
|
+
const _toFile = options?.toFile ? `>${options.toFile.append ? '>' : ''} ${options.toFile.name}` : '';
|
|
74
71
|
const escapedLog = log.replace(/\\/g, '\\\\').replace(/\n/g, '\\\\n').replace(/\t/g, '\\\t');
|
|
75
72
|
this.append(`echo ${_escape} "${escapedLog}" ${_toFile}`);
|
|
76
73
|
return this;
|
|
@@ -94,4 +91,4 @@ class Commando_Basic extends BaseCommando_1.BaseCommando {
|
|
|
94
91
|
return this;
|
|
95
92
|
}
|
|
96
93
|
}
|
|
97
|
-
|
|
94
|
+
//# sourceMappingURL=basic.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"basic.js","sourceRoot":"/Users/tacb0ss/dev/nu-art/beamz/_thunderstorm/commando/src/main/","sources":["shell/plugins/basic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,yBAAyB,CAAC;AAqBrD;;GAEG;AACH,MAAM,OAAO,cACZ,SAAQ,YAAY;IAEpB;;;;;OAKG;IACH,EAAE,CAAC,UAAkB,EAAE,KAAsB;QAC5C,IAAI,CAAC,MAAM,CAAC,MAAM,UAAU,EAAE,CAAC,CAAC;QAChC,IAAI,CAAC,QAAQ,EAAE,CAAC;QAEhB,IAAI,KAAK,EAAE,CAAC;YACX,KAAK,CAAC,IAAI,CAAC,CAAC;YACZ,IAAI,CAAC,GAAG,EAAE,CAAC;QACZ,CAAC;QAED,OAAO,IAAI,CAAC;IACb,CAAC;IAED,MAAM,CAAC,OAAe;QACrB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACrB,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;OAGG;IACH,GAAG;QACF,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACpB,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;;OAIG;IACI,EAAE,CAAC,SAAiB,EAAE;QAC5B,IAAI,CAAC,MAAM,CAAC,MAAM,MAAM,EAAE,CAAC,CAAC;QAC5B,OAAO,IAAI,CAAC;IACb,CAAC;IAEM,KAAK,CAAC,OAAe;QAC3B,IAAI,CAAC,MAAM,CAAC,YAAY,OAAO,EAAE,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC;IACb,CAAC;IAEM,KAAK,CAAC,OAAe,EAAE,OAA0B;QACvD,IAAI,OAAO,GAAG,IAAI,CAAC;QACnB,IAAI,OAAO,EAAE,KAAK;YACjB,OAAO,IAAI,MAAM,CAAC;QAEnB,IAAI,OAAO,EAAE,SAAS;YACrB,OAAO,IAAI,KAAK,CAAC;QAElB,IAAI,CAAC,MAAM,CAAC,GAAG,OAAO,IAAI,OAAO,EAAE,CAAC,CAAC;QACrC,OAAO,IAAI,CAAC;IACb,CAAC;IAEM,KAAK,CAAC,OAAe,EAAE,QAAgB,EAAE,OAA0B;QACzE,IAAI,OAAO,GAAG,SAAS,OAAO,EAAE,CAAC;QACjC,IAAI,OAAO,EAAE,WAAW;YACvB,OAAO,IAAI,IAAI,CAAC;QAEjB,OAAO,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC1B,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACrB,OAAO,IAAI,CAAC;IACb,CAAC;IAEM,GAAG,CAAC,QAAgB;QAC1B,IAAI,CAAC,MAAM,CAAC,OAAO,QAAQ,EAAE,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC;IACb,CAAC;IAEM,IAAI,CAAC,GAAW,EAAE,OAAyB;QACjD,MAAM,OAAO,GAAG,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrG,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAE7F,IAAI,CAAC,MAAM,CAAC,QAAQ,OAAO,KAAK,UAAU,KAAK,OAAO,EAAE,CAAC,CAAC;QAC1D,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;OAGG;IACI,GAAG;QACT,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACnB,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;;;OAKG;IACI,SAAS,CAAC,OAAe,EAAE,KAAwB;QACzD,IAAI,CAAC,MAAM,CAAC,GAAG,OAAO,KAAK,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAChF,OAAO,IAAI,CAAC;IACb,CAAC;CACD"}
|
package/shell/plugins/git.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Commando_Programming } from './programming';
|
|
2
|
-
import { Commando_Basic } from './basic';
|
|
3
|
-
import { BaseCommando } from '../core/BaseCommando';
|
|
1
|
+
import { Commando_Programming } from './programming.js';
|
|
2
|
+
import { Commando_Basic } from './basic.js';
|
|
3
|
+
import { BaseCommando } from '../core/BaseCommando.js';
|
|
4
4
|
declare const Super: import("@nu-art/ts-common").Constructor<BaseCommando & Commando_Programming & Commando_Basic>;
|
|
5
5
|
type GitCloneParams = {
|
|
6
6
|
outputFolder?: string;
|
package/shell/plugins/git.js
CHANGED
|
@@ -1,38 +1,32 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
this.
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
merge: this.git_merge,
|
|
27
|
-
createBranch: this.git_createBranch,
|
|
28
|
-
gsui: this.git_gsui,
|
|
29
|
-
status: this.git_status,
|
|
30
|
-
};
|
|
31
|
-
}
|
|
1
|
+
import { Commando_Programming } from './programming.js';
|
|
2
|
+
import { Commando_Basic } from './basic.js';
|
|
3
|
+
import { MergeClass } from '../core/class-merger.js';
|
|
4
|
+
import { BaseCommando } from '../core/BaseCommando.js';
|
|
5
|
+
const Super = MergeClass(BaseCommando, Commando_Programming, Commando_Basic);
|
|
6
|
+
export class Commando_Git extends Super {
|
|
7
|
+
git = {
|
|
8
|
+
clone: this.git_clone,
|
|
9
|
+
checkout: this.git_checkout,
|
|
10
|
+
createTag: this.git_createTag,
|
|
11
|
+
gitCommit: this.git_gitCommit,
|
|
12
|
+
add: this.git_add,
|
|
13
|
+
addAll: this.git_addAll,
|
|
14
|
+
addAndCommit: this.git_addAndCommit,
|
|
15
|
+
push: this.git_push,
|
|
16
|
+
pushTags: this.git_pushTags,
|
|
17
|
+
fetch: this.git_fetch,
|
|
18
|
+
resetHard: this.git_resetHard,
|
|
19
|
+
getCurrentBranch: this.git_getCurrentBranch,
|
|
20
|
+
pull: this.git_pull,
|
|
21
|
+
merge: this.git_merge,
|
|
22
|
+
createBranch: this.git_createBranch,
|
|
23
|
+
gsui: this.git_gsui,
|
|
24
|
+
status: this.git_status,
|
|
25
|
+
};
|
|
32
26
|
git_clone(url, options) {
|
|
33
|
-
const branch = `${
|
|
34
|
-
const recursive = `${
|
|
35
|
-
const outputFolder = `${
|
|
27
|
+
const branch = `${options?.branch ? ` -b ${options?.branch}` : ''}`;
|
|
28
|
+
const recursive = `${options?.recursive ? ` --recursive` : ''}`;
|
|
29
|
+
const outputFolder = `${options?.outputFolder ? ` ${options.outputFolder}` : ''}`;
|
|
36
30
|
const command = `git clone${recursive}${branch} ${url}${outputFolder}`;
|
|
37
31
|
this.append(command);
|
|
38
32
|
return this;
|
|
@@ -81,7 +75,7 @@ class Commando_Git extends Super {
|
|
|
81
75
|
return this;
|
|
82
76
|
}
|
|
83
77
|
git_push(options) {
|
|
84
|
-
this.append(`git push ${options
|
|
78
|
+
this.append(`git push ${options?.remote} ${options?.branch}`);
|
|
85
79
|
return this;
|
|
86
80
|
}
|
|
87
81
|
git_pushTags() {
|
|
@@ -122,4 +116,4 @@ class Commando_Git extends Super {
|
|
|
122
116
|
return this;
|
|
123
117
|
}
|
|
124
118
|
}
|
|
125
|
-
|
|
119
|
+
//# sourceMappingURL=git.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git.js","sourceRoot":"/Users/tacb0ss/dev/nu-art/beamz/_thunderstorm/commando/src/main/","sources":["shell/plugins/git.ts"],"names":[],"mappings":"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"}
|
package/shell/plugins/nvm.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { BaseCommando } from '../core/BaseCommando';
|
|
2
|
-
import { Commando_Programming } from './programming';
|
|
3
|
-
import { Commando_Basic } from './basic';
|
|
1
|
+
import { BaseCommando } from '../core/BaseCommando.js';
|
|
2
|
+
import { Commando_Programming } from './programming.js';
|
|
3
|
+
import { Commando_Basic } from './basic.js';
|
|
4
4
|
declare const Super: import("@nu-art/ts-common").Constructor<BaseCommando & Commando_Programming & Commando_Basic>;
|
|
5
5
|
export declare class Commando_NVM extends Super {
|
|
6
6
|
applyNVM(): this;
|
package/shell/plugins/nvm.js
CHANGED
|
@@ -1,29 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
const
|
|
8
|
-
|
|
9
|
-
const tools_1 = require("../tools");
|
|
10
|
-
const Super = (0, class_merger_1.MergeClass)(BaseCommando_1.BaseCommando, programming_1.Commando_Programming, basic_1.Commando_Basic);
|
|
11
|
-
class Commando_NVM extends Super {
|
|
12
|
-
constructor() {
|
|
13
|
-
super(...arguments);
|
|
14
|
-
this.getInstalledNodeVersions = async () => {
|
|
15
|
-
function extractInstalledVersions(rawOutput) {
|
|
16
|
-
const cleanedOutput = (0, tools_1.removeAnsiCodes)(rawOutput);
|
|
17
|
-
const lines = cleanedOutput.split('\n');
|
|
18
|
-
const filteredVersionLines = lines
|
|
19
|
-
.filter(line => !!line && line.match(/v\d+\.\d+\.\d+/) && !line.includes('N/A'));
|
|
20
|
-
return (0, ts_common_1.filterDuplicates)(filteredVersionLines
|
|
21
|
-
.map(line => { var _a; return (_a = line.match(/v(\d+\.\d+\.\d+)/)) === null || _a === void 0 ? void 0 : _a[1]; }));
|
|
22
|
-
}
|
|
23
|
-
const versionsAsString = this.append('nvm ls').execute((stdout) => stdout);
|
|
24
|
-
return extractInstalledVersions((await versionsAsString));
|
|
25
|
-
};
|
|
26
|
-
}
|
|
1
|
+
import { BaseCommando } from '../core/BaseCommando.js';
|
|
2
|
+
import { Commando_Programming } from './programming.js';
|
|
3
|
+
import { MergeClass } from '../core/class-merger.js';
|
|
4
|
+
import { Commando_Basic } from './basic.js';
|
|
5
|
+
import { Exception, filterDuplicates } from '@nu-art/ts-common';
|
|
6
|
+
import { removeAnsiCodes } from '../tools.js';
|
|
7
|
+
const Super = MergeClass(BaseCommando, Commando_Programming, Commando_Basic);
|
|
8
|
+
export class Commando_NVM extends Super {
|
|
27
9
|
applyNVM() {
|
|
28
10
|
this.append('export NVM_DIR="$HOME/.nvm"')
|
|
29
11
|
.append('[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm')
|
|
@@ -34,7 +16,7 @@ class Commando_NVM extends Super {
|
|
|
34
16
|
this.append(`curl -o- "https://raw.githubusercontent.com/nvm-sh/nvm/v${version}/install.sh" | bash`);
|
|
35
17
|
await this.execute((stdout, stderr, exitCode) => {
|
|
36
18
|
if (exitCode !== 0)
|
|
37
|
-
throw new
|
|
19
|
+
throw new Exception(`Error installing NVM - exit code (${exitCode})`);
|
|
38
20
|
});
|
|
39
21
|
return this;
|
|
40
22
|
}
|
|
@@ -48,5 +30,17 @@ class Commando_NVM extends Super {
|
|
|
48
30
|
.execute();
|
|
49
31
|
return this;
|
|
50
32
|
}
|
|
33
|
+
getInstalledNodeVersions = async () => {
|
|
34
|
+
function extractInstalledVersions(rawOutput) {
|
|
35
|
+
const cleanedOutput = removeAnsiCodes(rawOutput);
|
|
36
|
+
const lines = cleanedOutput.split('\n');
|
|
37
|
+
const filteredVersionLines = lines
|
|
38
|
+
.filter(line => !!line && line.match(/v\d+\.\d+\.\d+/) && !line.includes('N/A'));
|
|
39
|
+
return filterDuplicates(filteredVersionLines
|
|
40
|
+
.map(line => line.match(/v(\d+\.\d+\.\d+)/)?.[1]));
|
|
41
|
+
}
|
|
42
|
+
const versionsAsString = this.append('nvm ls').execute((stdout) => stdout);
|
|
43
|
+
return extractInstalledVersions((await versionsAsString));
|
|
44
|
+
};
|
|
51
45
|
}
|
|
52
|
-
|
|
46
|
+
//# sourceMappingURL=nvm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nvm.js","sourceRoot":"/Users/tacb0ss/dev/nu-art/beamz/_thunderstorm/commando/src/main/","sources":["shell/plugins/nvm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAC,oBAAoB,EAAC,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAC,UAAU,EAAC,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAC,cAAc,EAAC,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAC,SAAS,EAAE,gBAAgB,EAAC,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAC,eAAe,EAAC,MAAM,aAAa,CAAC;AAG5C,MAAM,KAAK,GAAG,UAAU,CAAC,YAAY,EAAE,oBAAoB,EAAE,cAAc,CAAC,CAAC;AAE7E,MAAM,OAAO,YACZ,SAAQ,KAAK;IAEb,QAAQ;QACP,IAAI,CAAC,MAAM,CAAC,6BAA6B,CAAC;aACxC,MAAM,CAAC,mEAAmE,CAAC;aAC3E,MAAM,CAAC,SAAS,CAAC,CAAC;QAEpB,OAAO,IAAI,CAAC;IACb,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAe;QAC5B,IAAI,CAAC,MAAM,CAAC,2DAA2D,OAAO,qBAAqB,CAAC,CAAC;QACrG,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE;YAC/C,IAAI,QAAQ,KAAK,CAAC;gBACjB,MAAM,IAAI,SAAS,CAAC,qCAAqC,QAAQ,GAAG,CAAC,CAAC;QACxE,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACb,CAAC;IAED,KAAK,CAAC,UAAU;QACf,OAAO,IAAI,CAAC,EAAE,CAAC,8BAA8B,EAAE,CAAC,QAAQ,EAAE,EAAE;YAC3D,QAAQ,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,eAAuB;QAC/C,MAAM,IAAI,CAAC,MAAM,CAAC,eAAe,eAAe,EAAE,CAAC;aACjD,OAAO,EAAE,CAAC;QAEZ,OAAO,IAAI,CAAC;IACb,CAAC;IAED,wBAAwB,GAAG,KAAK,IAAI,EAAE;QACrC,SAAS,wBAAwB,CAAC,SAAiB;YAClD,MAAM,aAAa,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC;YACjD,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACxC,MAAM,oBAAoB,GAAG,KAAK;iBAChC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;YAElF,OAAO,gBAAgB,CAAC,oBAAoB;iBAC1C,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrD,CAAC;QAED,MAAM,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;QAC3E,OAAO,wBAAwB,CAAC,CAAC,MAAM,gBAAgB,CAAC,CAAC,CAAC;IAC3D,CAAC,CAAC;CACF"}
|
package/shell/plugins/pnpm.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { BaseCommando } from '../core/BaseCommando';
|
|
2
|
-
import { Commando_Basic } from './basic';
|
|
3
|
-
import { Commando_Programming } from './programming';
|
|
4
|
-
import { Commando_NVM } from './nvm';
|
|
1
|
+
import { BaseCommando } from '../core/BaseCommando.js';
|
|
2
|
+
import { Commando_Basic } from './basic.js';
|
|
3
|
+
import { Commando_Programming } from './programming.js';
|
|
4
|
+
import { Commando_NVM } from './nvm.js';
|
|
5
5
|
declare const Super: import("@nu-art/ts-common").Constructor<BaseCommando & Commando_Programming & Commando_Basic & Commando_NVM>;
|
|
6
6
|
export declare class Commando_PNPM extends Super {
|
|
7
7
|
installPackages(): Promise<this>;
|
package/shell/plugins/pnpm.js
CHANGED
|
@@ -1,13 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const
|
|
7
|
-
|
|
8
|
-
const nvm_1 = require("./nvm");
|
|
9
|
-
const Super = (0, class_merger_1.MergeClass)(BaseCommando_1.BaseCommando, programming_1.Commando_Programming, basic_1.Commando_Basic, nvm_1.Commando_NVM);
|
|
10
|
-
class Commando_PNPM extends Super {
|
|
1
|
+
import { BaseCommando } from '../core/BaseCommando.js';
|
|
2
|
+
import { MergeClass } from '../core/class-merger.js';
|
|
3
|
+
import { Commando_Basic } from './basic.js';
|
|
4
|
+
import { Commando_Programming } from './programming.js';
|
|
5
|
+
import { Commando_NVM } from './nvm.js';
|
|
6
|
+
const Super = MergeClass(BaseCommando, Commando_Programming, Commando_Basic, Commando_NVM);
|
|
7
|
+
export class Commando_PNPM extends Super {
|
|
11
8
|
async installPackages() {
|
|
12
9
|
await this
|
|
13
10
|
.append(`pnpm store prune`)
|
|
@@ -27,4 +24,4 @@ class Commando_PNPM extends Super {
|
|
|
27
24
|
}).execute(stdout => stdout.trim());
|
|
28
25
|
}
|
|
29
26
|
}
|
|
30
|
-
|
|
27
|
+
//# sourceMappingURL=pnpm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pnpm.js","sourceRoot":"/Users/tacb0ss/dev/nu-art/beamz/_thunderstorm/commando/src/main/","sources":["shell/plugins/pnpm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAC,UAAU,EAAC,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAC,cAAc,EAAC,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAC,oBAAoB,EAAC,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAC,YAAY,EAAC,MAAM,UAAU,CAAC;AAGtC,MAAM,KAAK,GAAG,UAAU,CAAC,YAAY,EAAE,oBAAoB,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;AAE3F,MAAM,OAAO,aACZ,SAAQ,KAAK;IAEb,KAAK,CAAC,eAAe;QACpB,MAAM,IAAI;aACR,MAAM,CAAC,kBAAkB,CAAC;aAC1B,MAAM,CAAC,6DAA6D,CAAC;aACrE,OAAO,EAAE,CAAC;QAEZ,OAAO,IAAI,CAAC;IACb,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAe;QAC5B,MAAM,IAAI;aACR,MAAM,CAAC,kEAAkE,OAAO,SAAS,CAAC;aAC1F,OAAO,EAAE,CAAC;QAEZ,OAAO,IAAI,CAAC;IACb,CAAC;IAED,KAAK,CAAC,UAAU;QACf,OAAO,IAAI,CAAC,EAAE,CAAC,+BAA+B,EAAE,CAAC,QAAQ,EAAE,EAAE;YAC5D,QAAQ,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;IACrC,CAAC;CAED"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { BaseCommando } from '../core/BaseCommando';
|
|
2
|
-
import { CliBlock } from '../types';
|
|
1
|
+
import { BaseCommando } from '../core/BaseCommando.js';
|
|
2
|
+
import { CliBlock } from '../types.js';
|
|
3
3
|
export declare class Commando_Programming extends BaseCommando {
|
|
4
4
|
/**
|
|
5
5
|
* Constructs an if-else conditional command structure.
|
|
@@ -1,8 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.Commando_Programming = void 0;
|
|
4
|
-
const BaseCommando_1 = require("../core/BaseCommando");
|
|
5
|
-
class Commando_Programming extends BaseCommando_1.BaseCommando {
|
|
1
|
+
import { BaseCommando } from '../core/BaseCommando.js';
|
|
2
|
+
export class Commando_Programming extends BaseCommando {
|
|
6
3
|
/**
|
|
7
4
|
* Constructs an if-else conditional command structure.
|
|
8
5
|
* @param {string} condition - The condition for the if statement.
|
|
@@ -72,4 +69,4 @@ class Commando_Programming extends BaseCommando_1.BaseCommando {
|
|
|
72
69
|
return this;
|
|
73
70
|
}
|
|
74
71
|
}
|
|
75
|
-
|
|
72
|
+
//# sourceMappingURL=programming.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"programming.js","sourceRoot":"/Users/tacb0ss/dev/nu-art/beamz/_thunderstorm/commando/src/main/","sources":["shell/plugins/programming.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,yBAAyB,CAAC;AAIrD,MAAM,OAAO,oBACZ,SAAQ,YAAY;IAEpB;;;;;;OAMG;IACI,EAAE,CAAC,SAAiB,EAAE,OAAuB,EAAE,SAA0B;QAC/E,IAAI,CAAC,MAAM,CAAC,MAAM,SAAS,QAAQ,CAAC,CAAC;QACrC,IAAI,CAAC,QAAQ,EAAE,CAAC;QAChB,OAAO,CAAC,IAAI,CAAC,CAAC;QAEd,IAAI,SAAS,EAAE,CAAC;YACf,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACpB,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,SAAS,CAAC,IAAI,CAAC,CAAC;QACjB,CAAC;QAED,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAClB,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;;;;OAMG;IACI,GAAG,CAAC,OAAe,EAAE,iBAAoC,EAAE,IAAoB;QACrF,IAAI,OAAO,iBAAiB,KAAK,QAAQ,EAAE,CAAC;YAC3C,IAAI,CAAC,MAAM,CAAC,OAAO,OAAO,WAAW,iBAAiB,WAAW,CAAC,CAAC;QACpE,CAAC;aAAM,CAAC;YACP,MAAM,MAAM,GAAG,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACtE,IAAI,CAAC,MAAM,CAAC,OAAO,OAAO,OAAO,MAAM,MAAM,CAAC,CAAC;QAChD,CAAC;QACD,IAAI,CAAC,QAAQ,EAAE,CAAC;QAChB,IAAI,CAAC,IAAI,CAAC,CAAC;QACX,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACpB,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;OAGG;IACH,QAAQ;QACP,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACxB,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;OAGG;IACH,KAAK;QACJ,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACrB,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;OAGG;IACH,MAAM;QACL,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACtB,OAAO,IAAI,CAAC;IACb,CAAC;CACD"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { BaseCommando } from '../core/BaseCommando';
|
|
2
|
-
import { Commando_Programming } from './programming';
|
|
3
|
-
import { Commando_Basic } from './basic';
|
|
1
|
+
import { BaseCommando } from '../core/BaseCommando.js';
|
|
2
|
+
import { Commando_Programming } from './programming.js';
|
|
3
|
+
import { Commando_Basic } from './basic.js';
|
|
4
4
|
declare const Super: import("@nu-art/ts-common").Constructor<BaseCommando & Commando_Programming & Commando_Basic>;
|
|
5
5
|
export declare class Commando_Python3 extends Super {
|
|
6
6
|
sourceVenv(venvFolder?: string): this;
|
package/shell/plugins/python.js
CHANGED
|
@@ -1,14 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const
|
|
7
|
-
const basic_1 = require("./basic");
|
|
8
|
-
const ts_common_1 = require("@nu-art/ts-common");
|
|
9
|
-
const Super = (0, class_merger_1.MergeClass)(BaseCommando_1.BaseCommando, programming_1.Commando_Programming, basic_1.Commando_Basic);
|
|
1
|
+
import { BaseCommando } from '../core/BaseCommando.js';
|
|
2
|
+
import { Commando_Programming } from './programming.js';
|
|
3
|
+
import { MergeClass } from '../core/class-merger.js';
|
|
4
|
+
import { Commando_Basic } from './basic.js';
|
|
5
|
+
import { Exception } from '@nu-art/ts-common';
|
|
6
|
+
const Super = MergeClass(BaseCommando, Commando_Programming, Commando_Basic);
|
|
10
7
|
const DefaultVenvFolder = '.venv';
|
|
11
|
-
class Commando_Python3 extends Super {
|
|
8
|
+
export class Commando_Python3 extends Super {
|
|
12
9
|
sourceVenv(venvFolder = DefaultVenvFolder) {
|
|
13
10
|
this.append(`source ${venvFolder}/bin/activate`);
|
|
14
11
|
return this;
|
|
@@ -17,7 +14,7 @@ class Commando_Python3 extends Super {
|
|
|
17
14
|
this.append(`python3 -m venv ${venvFolder}`);
|
|
18
15
|
await this.execute((stdout, stderr, exitCode) => {
|
|
19
16
|
if (exitCode !== 0)
|
|
20
|
-
throw new
|
|
17
|
+
throw new Exception(`Error installing VENV - exit code (${exitCode})`);
|
|
21
18
|
});
|
|
22
19
|
return this;
|
|
23
20
|
}
|
|
@@ -27,4 +24,4 @@ class Commando_Python3 extends Super {
|
|
|
27
24
|
return this;
|
|
28
25
|
}
|
|
29
26
|
}
|
|
30
|
-
|
|
27
|
+
//# sourceMappingURL=python.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"python.js","sourceRoot":"/Users/tacb0ss/dev/nu-art/beamz/_thunderstorm/commando/src/main/","sources":["shell/plugins/python.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAC,oBAAoB,EAAC,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAC,UAAU,EAAC,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAC,cAAc,EAAC,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAC,SAAS,EAAC,MAAM,mBAAmB,CAAC;AAG5C,MAAM,KAAK,GAAG,UAAU,CAAC,YAAY,EAAE,oBAAoB,EAAE,cAAc,CAAC,CAAC;AAE7E,MAAM,iBAAiB,GAAG,OAAO,CAAC;AAElC,MAAM,OAAO,gBACZ,SAAQ,KAAK;IAEb,UAAU,CAAC,UAAU,GAAG,iBAAiB;QACxC,IAAI,CAAC,MAAM,CAAC,UAAU,UAAU,eAAe,CAAC,CAAC;QAEjD,OAAO,IAAI,CAAC;IACb,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,UAAU,GAAG,iBAAiB;QAC/C,IAAI,CAAC,MAAM,CAAC,mBAAmB,UAAU,EAAE,CAAC,CAAC;QAC7C,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE;YAC/C,IAAI,QAAQ,KAAK,CAAC;gBACjB,MAAM,IAAI,SAAS,CAAC,sCAAsC,QAAQ,GAAG,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACb,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,yBAAiC,oBAAoB;QAC9E,MAAM,IAAI,CAAC,MAAM,CAAC,mBAAmB,sBAAsB,EAAE,CAAC;aAC5D,OAAO,EAAE,CAAC;QAEZ,OAAO,IAAI,CAAC;IACb,CAAC;CACD"}
|
package/shell/services/nvm.d.ts
CHANGED
package/shell/services/nvm.js
CHANGED
|
@@ -1,92 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.NVM = exports.Cli_NVM = void 0;
|
|
27
|
-
const fs = __importStar(require("fs"));
|
|
28
|
-
const fs_1 = require("fs");
|
|
29
|
-
const path = __importStar(require("path"));
|
|
30
|
-
const ts_common_1 = require("@nu-art/ts-common");
|
|
1
|
+
import * as fs from 'fs';
|
|
2
|
+
import { promises as _fs } from 'fs';
|
|
3
|
+
import * as path from 'path';
|
|
4
|
+
import { Logger, LogLevel } from '@nu-art/ts-common';
|
|
31
5
|
const CONST__FILE_NVMRC = '.nvmrc';
|
|
32
|
-
class Cli_NVM extends
|
|
6
|
+
export class Cli_NVM extends Logger {
|
|
7
|
+
_expectedVersion = '0.39.7';
|
|
8
|
+
_homeEnvVar = '$NVM_DIR';
|
|
33
9
|
constructor() {
|
|
34
10
|
super();
|
|
35
|
-
this.
|
|
36
|
-
this._homeEnvVar = '$NVM_DIR';
|
|
37
|
-
this.install = async (commando) => {
|
|
38
|
-
if (this.isInstalled()) {
|
|
39
|
-
const version = (await commando.getVersion()).trim();
|
|
40
|
-
if (this._expectedVersion === version)
|
|
41
|
-
return;
|
|
42
|
-
await this.uninstall();
|
|
43
|
-
}
|
|
44
|
-
await commando.install(this._expectedVersion);
|
|
45
|
-
const rcFile = path.resolve(process.env['HOME'], '.bashrc');
|
|
46
|
-
let rcFileContent = '';
|
|
47
|
-
if (fs.existsSync(rcFile)) {
|
|
48
|
-
rcFileContent = await fs_1.promises.readFile(rcFile, { encoding: 'utf8' });
|
|
49
|
-
return rcFileContent.includes('NVM_DIR');
|
|
50
|
-
}
|
|
51
|
-
rcFileContent = `${rcFileContent}\n${rcFileContent.endsWith('\n') ? '' : '\n'}`;
|
|
52
|
-
rcFileContent += `# generated NVM - start\n`;
|
|
53
|
-
rcFileContent += `echo 'export NVM_DIR="$HOME/.nvm"'\n`;
|
|
54
|
-
rcFileContent += `echo '[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm'\n`;
|
|
55
|
-
rcFileContent += `echo '[ -s "$NVM_DIR/bash_completion" ] && \\. "$NVM_DIR/bash_completion" # This loads nvm bash_completion'\n`;
|
|
56
|
-
rcFileContent += `# generated NVM - end\n`;
|
|
57
|
-
await fs_1.promises.writeFile(rcFile, rcFileContent, { encoding: 'utf8' });
|
|
58
|
-
return this;
|
|
59
|
-
};
|
|
60
|
-
this.isInstalled = () => !!process.env[this._homeEnvVar] && fs.existsSync(process.env[this._homeEnvVar]);
|
|
61
|
-
this.getRequiredNode_Version = async () => {
|
|
62
|
-
const absolutePathToNvmrcFile = path.resolve(CONST__FILE_NVMRC);
|
|
63
|
-
if (!fs.existsSync(absolutePathToNvmrcFile))
|
|
64
|
-
throw new Error(`couldn't find .nvmrc file at: ${absolutePathToNvmrcFile}`);
|
|
65
|
-
const content = await fs_1.promises.readFile(absolutePathToNvmrcFile, { encoding: 'utf-8' });
|
|
66
|
-
return content.trim();
|
|
67
|
-
};
|
|
68
|
-
this.installRequiredVersionIfNeeded = async (commando) => {
|
|
69
|
-
const requiredVersion = await this.getRequiredNode_Version();
|
|
70
|
-
const installedVersions = await commando.getInstalledNodeVersions();
|
|
71
|
-
this.logDebug('Found versions:', installedVersions);
|
|
72
|
-
if (installedVersions.includes(requiredVersion))
|
|
73
|
-
return false;
|
|
74
|
-
await this.installVersion(commando, requiredVersion);
|
|
75
|
-
return true;
|
|
76
|
-
};
|
|
77
|
-
this.uninstall = async () => {
|
|
78
|
-
this.logDebug('Uninstalling PNPM');
|
|
79
|
-
const absolutePathToNVM_Home = process.env[this._homeEnvVar];
|
|
80
|
-
if (!absolutePathToNVM_Home)
|
|
81
|
-
return;
|
|
82
|
-
fs.rmSync(absolutePathToNVM_Home, { recursive: true, force: true });
|
|
83
|
-
};
|
|
84
|
-
this.installVersion = async (commando, requiredVersion) => {
|
|
85
|
-
requiredVersion !== null && requiredVersion !== void 0 ? requiredVersion : (requiredVersion = await this.getRequiredNode_Version());
|
|
86
|
-
this.logDebug(`Installing version: ${requiredVersion}`);
|
|
87
|
-
return commando.installNodeVersion(requiredVersion);
|
|
88
|
-
};
|
|
89
|
-
this.setMinLevel(ts_common_1.LogLevel.Verbose);
|
|
11
|
+
this.setMinLevel(LogLevel.Verbose);
|
|
90
12
|
}
|
|
91
13
|
get homeEnvVar() {
|
|
92
14
|
return this._homeEnvVar;
|
|
@@ -100,6 +22,58 @@ class Cli_NVM extends ts_common_1.Logger {
|
|
|
100
22
|
set expectedVersion(value) {
|
|
101
23
|
this._expectedVersion = value;
|
|
102
24
|
}
|
|
25
|
+
install = async (commando) => {
|
|
26
|
+
if (this.isInstalled()) {
|
|
27
|
+
const version = (await commando.getVersion()).trim();
|
|
28
|
+
if (this._expectedVersion === version)
|
|
29
|
+
return;
|
|
30
|
+
await this.uninstall();
|
|
31
|
+
}
|
|
32
|
+
await commando.install(this._expectedVersion);
|
|
33
|
+
const rcFile = path.resolve(process.env['HOME'], '.bashrc');
|
|
34
|
+
let rcFileContent = '';
|
|
35
|
+
if (fs.existsSync(rcFile)) {
|
|
36
|
+
rcFileContent = await _fs.readFile(rcFile, { encoding: 'utf8' });
|
|
37
|
+
return rcFileContent.includes('NVM_DIR');
|
|
38
|
+
}
|
|
39
|
+
rcFileContent = `${rcFileContent}\n${rcFileContent.endsWith('\n') ? '' : '\n'}`;
|
|
40
|
+
rcFileContent += `# generated NVM - start\n`;
|
|
41
|
+
rcFileContent += `echo 'export NVM_DIR="$HOME/.nvm"'\n`;
|
|
42
|
+
rcFileContent += `echo '[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm'\n`;
|
|
43
|
+
rcFileContent += `echo '[ -s "$NVM_DIR/bash_completion" ] && \\. "$NVM_DIR/bash_completion" # This loads nvm bash_completion'\n`;
|
|
44
|
+
rcFileContent += `# generated NVM - end\n`;
|
|
45
|
+
await _fs.writeFile(rcFile, rcFileContent, { encoding: 'utf8' });
|
|
46
|
+
return this;
|
|
47
|
+
};
|
|
48
|
+
isInstalled = () => !!process.env[this._homeEnvVar] && fs.existsSync(process.env[this._homeEnvVar]);
|
|
49
|
+
getRequiredNode_Version = async () => {
|
|
50
|
+
const absolutePathToNvmrcFile = path.resolve(CONST__FILE_NVMRC);
|
|
51
|
+
if (!fs.existsSync(absolutePathToNvmrcFile))
|
|
52
|
+
throw new Error(`couldn't find .nvmrc file at: ${absolutePathToNvmrcFile}`);
|
|
53
|
+
const content = await _fs.readFile(absolutePathToNvmrcFile, { encoding: 'utf-8' });
|
|
54
|
+
return content.trim();
|
|
55
|
+
};
|
|
56
|
+
installRequiredVersionIfNeeded = async (commando) => {
|
|
57
|
+
const requiredVersion = await this.getRequiredNode_Version();
|
|
58
|
+
const installedVersions = await commando.getInstalledNodeVersions();
|
|
59
|
+
this.logDebug('Found versions:', installedVersions);
|
|
60
|
+
if (installedVersions.includes(requiredVersion))
|
|
61
|
+
return false;
|
|
62
|
+
await this.installVersion(commando, requiredVersion);
|
|
63
|
+
return true;
|
|
64
|
+
};
|
|
65
|
+
uninstall = async () => {
|
|
66
|
+
this.logDebug('Uninstalling PNPM');
|
|
67
|
+
const absolutePathToNVM_Home = process.env[this._homeEnvVar];
|
|
68
|
+
if (!absolutePathToNVM_Home)
|
|
69
|
+
return;
|
|
70
|
+
fs.rmSync(absolutePathToNVM_Home, { recursive: true, force: true });
|
|
71
|
+
};
|
|
72
|
+
installVersion = async (commando, requiredVersion) => {
|
|
73
|
+
requiredVersion ??= await this.getRequiredNode_Version();
|
|
74
|
+
this.logDebug(`Installing version: ${requiredVersion}`);
|
|
75
|
+
return commando.installNodeVersion(requiredVersion);
|
|
76
|
+
};
|
|
103
77
|
}
|
|
104
|
-
|
|
105
|
-
|
|
78
|
+
export const NVM = new Cli_NVM();
|
|
79
|
+
//# sourceMappingURL=nvm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nvm.js","sourceRoot":"/Users/tacb0ss/dev/nu-art/beamz/_thunderstorm/commando/src/main/","sources":["shell/services/nvm.ts"],"names":[],"mappings":"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"}
|
package/shell/services/pnpm.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Logger } from '@nu-art/ts-common';
|
|
2
|
-
import { Commando_PNPM } from '../plugins/pnpm';
|
|
2
|
+
import { Commando_PNPM } from '../plugins/pnpm.js';
|
|
3
3
|
export declare class Cli_PNPM extends Logger {
|
|
4
4
|
private _expectedVersion;
|
|
5
5
|
private _homeEnvVar;
|
|
@@ -17,10 +17,10 @@ export declare class Cli_PNPM extends Logger {
|
|
|
17
17
|
* Each package is listed under the 'packages:' section in the file.
|
|
18
18
|
*
|
|
19
19
|
* @param listOfLibs An array of library names to include in the workspace.
|
|
20
|
-
* @param
|
|
20
|
+
* @param pathToWorkspaceFolder The filesystem path where the workspace file will be written.
|
|
21
21
|
* @example
|
|
22
22
|
* await createWorkspace(['pack1', 'pack2'], './path/to/workspace.yaml');
|
|
23
23
|
*/
|
|
24
|
-
createWorkspace: (listOfLibs: string[],
|
|
24
|
+
createWorkspace: (listOfLibs: string[], pathToWorkspaceFolder?: string) => Promise<void>;
|
|
25
25
|
}
|
|
26
26
|
export declare const PNPM: Cli_PNPM;
|