@simon_he/pi 0.0.4 → 0.0.6
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/README.md +12 -2
- package/dist/index.cjs +115 -47
- package/dist/index.d.ts +6 -5
- package/dist/index.mjs +110 -44
- package/dist/seprateThread.cjs +3 -1
- package/dist/seprateThread.mjs +3 -1
- package/package.json +13 -12
package/README.md
CHANGED
|
@@ -1,9 +1,18 @@
|
|
|
1
1
|
<span ><p align="center"></p></span>
|
|
2
2
|
|
|
3
3
|
## PI
|
|
4
|
-
|
|
4
|
+
一个带有自定义loading样式的smart包管理器,让你安装依赖时更加美观:)
|
|
5
|
+
|
|
6
|
+
## 聪明的包管理器
|
|
7
|
+
- 支持go mod 的依赖和执行
|
|
8
|
+
- 支持Cargo 的依赖和执行
|
|
9
|
+
- 支持npm 的依赖和执行
|
|
10
|
+
- 支持pnpm 的依赖和执行
|
|
11
|
+
- 支持yarn 的依赖和执行
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
https://user-images.githubusercontent.com/57086651/203143603-9e78f686-399e-4c3d-ae53-56638501b276.mov
|
|
5
15
|
|
|
6
|
-
https://user-images.githubusercontent.com/57086651/200901242-34bc9576-b21c-4e2e-8e9c-9d858c9ffb12.mov
|
|
7
16
|
|
|
8
17
|
## 安装
|
|
9
18
|
```
|
|
@@ -12,6 +21,7 @@ https://user-images.githubusercontent.com/57086651/200901242-34bc9576-b21c-4e2e-
|
|
|
12
21
|
|
|
13
22
|
## 使用
|
|
14
23
|
```
|
|
24
|
+
# 根据当前目录的环境去分析使用哪种包管理器,go、rust、pnpm、yarn、npm
|
|
15
25
|
# 安装依赖
|
|
16
26
|
pi xxx
|
|
17
27
|
# 卸载依赖
|
package/dist/index.cjs
CHANGED
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
const process$1 = require('process');
|
|
6
5
|
const path = require('path');
|
|
6
|
+
const process = require('process');
|
|
7
7
|
const url$1 = require('url');
|
|
8
8
|
const simonJsTool = require('simon-js-tool');
|
|
9
9
|
const ora = require('ora');
|
|
@@ -11,70 +11,63 @@ const ora = require('ora');
|
|
|
11
11
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e["default"] : e; }
|
|
12
12
|
|
|
13
13
|
const path__default = /*#__PURE__*/_interopDefaultLegacy(path);
|
|
14
|
+
const process__default = /*#__PURE__*/_interopDefaultLegacy(process);
|
|
14
15
|
const ora__default = /*#__PURE__*/_interopDefaultLegacy(ora);
|
|
15
16
|
|
|
16
|
-
const version = "0.0.
|
|
17
|
+
const version = "0.0.6";
|
|
17
18
|
|
|
18
19
|
const __filename$1 = url$1.fileURLToPath((typeof document === 'undefined' ? new (require('u' + 'rl').URL)('file:' + __filename).href : (document.currentScript && document.currentScript.src || new URL('index.cjs', document.baseURI).href)));
|
|
19
20
|
const __dirname$1 = path__default.dirname(__filename$1);
|
|
20
21
|
const url = path__default.resolve(__dirname$1, "./seprateThread.mjs");
|
|
21
|
-
async function pi() {
|
|
22
|
-
const argv2 = process.argv.slice(2);
|
|
23
|
-
await installDeps();
|
|
24
|
-
returnVersion(argv2);
|
|
25
|
-
const { color, spinner } = await getStyle();
|
|
26
|
-
const params = argv2.join(" ");
|
|
27
|
-
const pkg = argv2.filter((v) => !v.startsWith("-")).join(" ");
|
|
22
|
+
async function pi(params, pkg) {
|
|
28
23
|
const text = pkg ? `Installing ${pkg} ...
|
|
29
24
|
` : "\u6B63\u5728\u66F4\u65B0\u4F9D\u8D56...\n";
|
|
30
25
|
const successMsg = pkg ? `Installed ${pkg} successfully! \u{1F60A}` : "\u66F4\u65B0\u4F9D\u8D56\u6210\u529F! \u{1F60A}";
|
|
31
26
|
const failMsg = pkg ? `Failed to install ${pkg} , v\u621150 \u{1F62D}` : "\u66F4\u65B0\u4F9D\u8D56\u5931\u8D25! \u{1F62D}";
|
|
32
|
-
const
|
|
33
|
-
text,
|
|
34
|
-
spinner,
|
|
35
|
-
color
|
|
36
|
-
}).start();
|
|
27
|
+
const { succeed, fail } = await loading(text);
|
|
37
28
|
const { status } = await simonJsTool.useNodeWorker(url, { params, operate: "install" });
|
|
38
29
|
if (status === 0)
|
|
39
|
-
|
|
30
|
+
succeed(successMsg);
|
|
40
31
|
else
|
|
41
|
-
|
|
42
|
-
|
|
32
|
+
fail(failMsg);
|
|
33
|
+
process__default.exit();
|
|
43
34
|
}
|
|
44
|
-
async function pui() {
|
|
45
|
-
const argv2 = process.argv.slice(2);
|
|
46
|
-
await installDeps();
|
|
47
|
-
returnVersion(argv2);
|
|
48
|
-
const { color, spinner } = await getStyle();
|
|
49
|
-
const params = argv2.join(" ");
|
|
50
|
-
const pkg = argv2.filter((v) => !v.startsWith("-")).join(" ");
|
|
35
|
+
async function pui(params, pkg) {
|
|
51
36
|
const text = `Uninstalling ${pkg} ...
|
|
52
37
|
`;
|
|
53
38
|
const successMsg = `unInstalled ${pkg} successfully! \u{1F60A}`;
|
|
54
39
|
const failMsg = `Failed to uninstall ${pkg} \u{1F62D}`;
|
|
55
40
|
if (!pkg) {
|
|
56
41
|
console.log("\u8BF7\u8F93\u5165\u8981\u5378\u8F7D\u7684\u5305\u540D");
|
|
57
|
-
|
|
42
|
+
process__default.exit(1);
|
|
58
43
|
}
|
|
59
|
-
const
|
|
60
|
-
text,
|
|
61
|
-
spinner,
|
|
62
|
-
color
|
|
63
|
-
}).start();
|
|
44
|
+
const { succeed, fail } = await loading(text);
|
|
64
45
|
const { status } = await simonJsTool.useNodeWorker(url, { params, operate: "uninstall" });
|
|
65
46
|
if (status === 0)
|
|
66
|
-
|
|
47
|
+
succeed(successMsg);
|
|
67
48
|
else
|
|
68
|
-
|
|
69
|
-
|
|
49
|
+
fail(failMsg);
|
|
50
|
+
process__default.exit();
|
|
70
51
|
}
|
|
71
|
-
|
|
72
|
-
const argv2 = process.argv.slice(2);
|
|
73
|
-
await installDeps();
|
|
74
|
-
returnVersion(argv2);
|
|
75
|
-
const params = argv2.join(" ");
|
|
52
|
+
function prun(params, pkg) {
|
|
76
53
|
simonJsTool.jsShell(`ccommand ${params}`);
|
|
77
54
|
}
|
|
55
|
+
function pinit(params, pkg) {
|
|
56
|
+
console.log("\u6B63\u5728\u521D\u59CB\u5316\u9879\u76EE...");
|
|
57
|
+
switch (simonJsTool.getPkgTool()) {
|
|
58
|
+
case "npm":
|
|
59
|
+
simonJsTool.jsShell("npm init -y");
|
|
60
|
+
return;
|
|
61
|
+
case "yarn":
|
|
62
|
+
simonJsTool.jsShell("yarn init -y");
|
|
63
|
+
return;
|
|
64
|
+
case "pnpm":
|
|
65
|
+
simonJsTool.jsShell("pnpm init -y");
|
|
66
|
+
return;
|
|
67
|
+
default:
|
|
68
|
+
simonJsTool.jsShell("npm init -y");
|
|
69
|
+
}
|
|
70
|
+
}
|
|
78
71
|
async function getStyle() {
|
|
79
72
|
const { result: _color = "yellow" } = await simonJsTool.jsShell("echo $PI_COLOR", "pipe");
|
|
80
73
|
const color = _color;
|
|
@@ -93,30 +86,105 @@ async function installDeps() {
|
|
|
93
86
|
if (hasCcommand === 1)
|
|
94
87
|
await simonJsTool.jsShell("npm i -g ccommand", "pipe");
|
|
95
88
|
}
|
|
96
|
-
function returnVersion(
|
|
97
|
-
const arg =
|
|
89
|
+
function returnVersion(argv) {
|
|
90
|
+
const arg = argv[0];
|
|
98
91
|
if (arg === "-v" || arg === "--version") {
|
|
99
92
|
simonJsTool.jsShell(`gum style --foreground 212 --border-foreground 212 --border double --align center --width 50 --margin "1 2" --padding "2 4" 'pi version:${version}' '\u8BF7\u4E3A\u6211\u7684\u52AA\u529B\u70B9\u4E2Astar\u{1F31F}'`);
|
|
100
|
-
|
|
93
|
+
process__default.exit(0);
|
|
101
94
|
} else if (arg === "-h" || arg === "--help") {
|
|
102
|
-
simonJsTool.jsShell(`gum style --foreground 212 --border-foreground 212 --border double --align center --width 50 --margin "1 2" --padding "1 1" 'PI Commands:' 'pi: install package' 'pui: uninstall package' 'prun: run package script'`);
|
|
103
|
-
|
|
95
|
+
simonJsTool.jsShell(`gum style --foreground 212 --border-foreground 212 --border double --align center --width 50 --margin "1 2" --padding "1 1" 'PI Commands:' 'pi: install package' 'pui: uninstall package' 'prun: run package script' 'pinit: package init' 'pbuild: go build | cargo build'`);
|
|
96
|
+
process__default.exit(0);
|
|
104
97
|
}
|
|
105
98
|
}
|
|
106
99
|
const runMap = {
|
|
107
100
|
pi,
|
|
108
101
|
pui,
|
|
109
|
-
prun
|
|
102
|
+
prun,
|
|
103
|
+
pinit
|
|
110
104
|
};
|
|
111
|
-
function
|
|
112
|
-
const
|
|
105
|
+
function isGo() {
|
|
106
|
+
const { result } = simonJsTool.jsShell('test -f "go.mod" && echo "0"|| echo "1"', "pipe");
|
|
107
|
+
return result === "0";
|
|
108
|
+
}
|
|
109
|
+
function isRust() {
|
|
110
|
+
const { result } = simonJsTool.jsShell('test -f "Cargo.toml" && echo "0"|| echo "1"', "pipe");
|
|
111
|
+
return result === "0";
|
|
112
|
+
}
|
|
113
|
+
async function loading(text) {
|
|
114
|
+
const { color, spinner } = await getStyle();
|
|
115
|
+
return ora__default({
|
|
116
|
+
text,
|
|
117
|
+
spinner,
|
|
118
|
+
color
|
|
119
|
+
}).start();
|
|
120
|
+
}
|
|
121
|
+
async function runner() {
|
|
122
|
+
const cmd = process__default.argv[1];
|
|
113
123
|
const last = cmd.lastIndexOf("/") + 1;
|
|
114
124
|
const exec = cmd.slice(last, cmd.length);
|
|
115
|
-
|
|
125
|
+
const argv = process__default.argv.slice(2);
|
|
126
|
+
returnVersion(argv);
|
|
127
|
+
const params = argv.join(" ");
|
|
128
|
+
if (isGo()) {
|
|
129
|
+
if (exec === "pi") {
|
|
130
|
+
loading(`Installing ${params} ...
|
|
131
|
+
`);
|
|
132
|
+
simonJsTool.jsShell(`go get ${params}`);
|
|
133
|
+
return;
|
|
134
|
+
} else if (exec === "pui") {
|
|
135
|
+
loading(`Uninstalling ${params} ...
|
|
136
|
+
`);
|
|
137
|
+
simonJsTool.jsShell(`go clean ${params}`);
|
|
138
|
+
return;
|
|
139
|
+
} else if (exec === "prun") {
|
|
140
|
+
simonJsTool.jsShell(`go run ${params}`);
|
|
141
|
+
return;
|
|
142
|
+
} else if (exec === "pinit") {
|
|
143
|
+
simonJsTool.jsShell(`go mod init ${params}`);
|
|
144
|
+
return;
|
|
145
|
+
} else if (exec === "pbuild") {
|
|
146
|
+
simonJsTool.jsShell(`go build ${params}`);
|
|
147
|
+
return;
|
|
148
|
+
}
|
|
149
|
+
console.log("go mod \u9879\u76EE\u6682\u4E0D\u652F\u6301\u5176\u4ED6\u547D\u4EE4");
|
|
150
|
+
return;
|
|
151
|
+
}
|
|
152
|
+
if (isRust()) {
|
|
153
|
+
if (exec === "pi") {
|
|
154
|
+
loading(`Installing ${params} ...
|
|
155
|
+
`);
|
|
156
|
+
simonJsTool.jsShell(`cargo install ${params}`);
|
|
157
|
+
return;
|
|
158
|
+
} else if (exec === "pui") {
|
|
159
|
+
loading(`Uninstalling ${params} ...
|
|
160
|
+
`);
|
|
161
|
+
simonJsTool.jsShell(`cargo uninstall ${params}`);
|
|
162
|
+
return;
|
|
163
|
+
} else if (exec === "prun") {
|
|
164
|
+
simonJsTool.jsShell(`cargo run ${params}`);
|
|
165
|
+
return;
|
|
166
|
+
} else if (exec === "pinit") {
|
|
167
|
+
simonJsTool.jsShell(`cargo init ${params}`);
|
|
168
|
+
return;
|
|
169
|
+
} else if (exec === "pbuild") {
|
|
170
|
+
simonJsTool.jsShell(`cargo build ${params}`);
|
|
171
|
+
return;
|
|
172
|
+
}
|
|
173
|
+
console.log("Cargo \u9879\u76EE\u6682\u4E0D\u652F\u6301\u5176\u4ED6\u547D\u4EE4");
|
|
174
|
+
return;
|
|
175
|
+
}
|
|
176
|
+
if (!runMap[exec]) {
|
|
177
|
+
console.log("\u547D\u4EE4\u4E0D\u5B58\u5728,\u8BF7\u6267\u884Cpi -h\u67E5\u770B\u5E2E\u52A9");
|
|
178
|
+
return;
|
|
179
|
+
}
|
|
180
|
+
const pkg = argv.filter((v) => !v.startsWith("-")).join(" ");
|
|
181
|
+
await installDeps();
|
|
182
|
+
runMap[exec](params, pkg);
|
|
116
183
|
}
|
|
117
184
|
runner();
|
|
118
185
|
|
|
119
186
|
exports.pi = pi;
|
|
187
|
+
exports.pinit = pinit;
|
|
120
188
|
exports.prun = prun;
|
|
121
189
|
exports.pui = pui;
|
|
122
190
|
exports.runner = runner;
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
declare function pi(): Promise<void>;
|
|
2
|
-
declare function pui(): Promise<void>;
|
|
3
|
-
declare function prun():
|
|
4
|
-
declare function
|
|
1
|
+
declare function pi(params: string[], pkg: string): Promise<void>;
|
|
2
|
+
declare function pui(params: string[], pkg: string): Promise<void>;
|
|
3
|
+
declare function prun(params: string[], pkg?: string): void;
|
|
4
|
+
declare function pinit(params: string[], pkg?: string): void;
|
|
5
|
+
declare function runner(): Promise<void>;
|
|
5
6
|
|
|
6
|
-
export { pi, prun, pui, runner };
|
|
7
|
+
export { pi, pinit, prun, pui, runner };
|
package/dist/index.mjs
CHANGED
|
@@ -1,44 +1,28 @@
|
|
|
1
|
-
import { argv } from 'process';
|
|
2
1
|
import path from 'path';
|
|
2
|
+
import process from 'process';
|
|
3
3
|
import { fileURLToPath } from 'url';
|
|
4
|
-
import { useNodeWorker, jsShell } from 'simon-js-tool';
|
|
4
|
+
import { useNodeWorker, jsShell, getPkgTool } from 'simon-js-tool';
|
|
5
5
|
import ora from 'ora';
|
|
6
6
|
|
|
7
|
-
const version = "0.0.
|
|
7
|
+
const version = "0.0.6";
|
|
8
8
|
|
|
9
9
|
const __filename = fileURLToPath(import.meta.url);
|
|
10
10
|
const __dirname = path.dirname(__filename);
|
|
11
11
|
const url = path.resolve(__dirname, "./seprateThread.mjs");
|
|
12
|
-
async function pi() {
|
|
13
|
-
const argv2 = process.argv.slice(2);
|
|
14
|
-
await installDeps();
|
|
15
|
-
returnVersion(argv2);
|
|
16
|
-
const { color, spinner } = await getStyle();
|
|
17
|
-
const params = argv2.join(" ");
|
|
18
|
-
const pkg = argv2.filter((v) => !v.startsWith("-")).join(" ");
|
|
12
|
+
async function pi(params, pkg) {
|
|
19
13
|
const text = pkg ? `Installing ${pkg} ...
|
|
20
14
|
` : "\u6B63\u5728\u66F4\u65B0\u4F9D\u8D56...\n";
|
|
21
15
|
const successMsg = pkg ? `Installed ${pkg} successfully! \u{1F60A}` : "\u66F4\u65B0\u4F9D\u8D56\u6210\u529F! \u{1F60A}";
|
|
22
16
|
const failMsg = pkg ? `Failed to install ${pkg} , v\u621150 \u{1F62D}` : "\u66F4\u65B0\u4F9D\u8D56\u5931\u8D25! \u{1F62D}";
|
|
23
|
-
const
|
|
24
|
-
text,
|
|
25
|
-
spinner,
|
|
26
|
-
color
|
|
27
|
-
}).start();
|
|
17
|
+
const { succeed, fail } = await loading(text);
|
|
28
18
|
const { status } = await useNodeWorker(url, { params, operate: "install" });
|
|
29
19
|
if (status === 0)
|
|
30
|
-
|
|
20
|
+
succeed(successMsg);
|
|
31
21
|
else
|
|
32
|
-
|
|
22
|
+
fail(failMsg);
|
|
33
23
|
process.exit();
|
|
34
24
|
}
|
|
35
|
-
async function pui() {
|
|
36
|
-
const argv2 = process.argv.slice(2);
|
|
37
|
-
await installDeps();
|
|
38
|
-
returnVersion(argv2);
|
|
39
|
-
const { color, spinner } = await getStyle();
|
|
40
|
-
const params = argv2.join(" ");
|
|
41
|
-
const pkg = argv2.filter((v) => !v.startsWith("-")).join(" ");
|
|
25
|
+
async function pui(params, pkg) {
|
|
42
26
|
const text = `Uninstalling ${pkg} ...
|
|
43
27
|
`;
|
|
44
28
|
const successMsg = `unInstalled ${pkg} successfully! \u{1F60A}`;
|
|
@@ -47,25 +31,33 @@ async function pui() {
|
|
|
47
31
|
console.log("\u8BF7\u8F93\u5165\u8981\u5378\u8F7D\u7684\u5305\u540D");
|
|
48
32
|
process.exit(1);
|
|
49
33
|
}
|
|
50
|
-
const
|
|
51
|
-
text,
|
|
52
|
-
spinner,
|
|
53
|
-
color
|
|
54
|
-
}).start();
|
|
34
|
+
const { succeed, fail } = await loading(text);
|
|
55
35
|
const { status } = await useNodeWorker(url, { params, operate: "uninstall" });
|
|
56
36
|
if (status === 0)
|
|
57
|
-
|
|
37
|
+
succeed(successMsg);
|
|
58
38
|
else
|
|
59
|
-
|
|
39
|
+
fail(failMsg);
|
|
60
40
|
process.exit();
|
|
61
41
|
}
|
|
62
|
-
|
|
63
|
-
const argv2 = process.argv.slice(2);
|
|
64
|
-
await installDeps();
|
|
65
|
-
returnVersion(argv2);
|
|
66
|
-
const params = argv2.join(" ");
|
|
42
|
+
function prun(params, pkg) {
|
|
67
43
|
jsShell(`ccommand ${params}`);
|
|
68
44
|
}
|
|
45
|
+
function pinit(params, pkg) {
|
|
46
|
+
console.log("\u6B63\u5728\u521D\u59CB\u5316\u9879\u76EE...");
|
|
47
|
+
switch (getPkgTool()) {
|
|
48
|
+
case "npm":
|
|
49
|
+
jsShell("npm init -y");
|
|
50
|
+
return;
|
|
51
|
+
case "yarn":
|
|
52
|
+
jsShell("yarn init -y");
|
|
53
|
+
return;
|
|
54
|
+
case "pnpm":
|
|
55
|
+
jsShell("pnpm init -y");
|
|
56
|
+
return;
|
|
57
|
+
default:
|
|
58
|
+
jsShell("npm init -y");
|
|
59
|
+
}
|
|
60
|
+
}
|
|
69
61
|
async function getStyle() {
|
|
70
62
|
const { result: _color = "yellow" } = await jsShell("echo $PI_COLOR", "pipe");
|
|
71
63
|
const color = _color;
|
|
@@ -84,27 +76,101 @@ async function installDeps() {
|
|
|
84
76
|
if (hasCcommand === 1)
|
|
85
77
|
await jsShell("npm i -g ccommand", "pipe");
|
|
86
78
|
}
|
|
87
|
-
function returnVersion(
|
|
88
|
-
const arg =
|
|
79
|
+
function returnVersion(argv) {
|
|
80
|
+
const arg = argv[0];
|
|
89
81
|
if (arg === "-v" || arg === "--version") {
|
|
90
82
|
jsShell(`gum style --foreground 212 --border-foreground 212 --border double --align center --width 50 --margin "1 2" --padding "2 4" 'pi version:${version}' '\u8BF7\u4E3A\u6211\u7684\u52AA\u529B\u70B9\u4E2Astar\u{1F31F}'`);
|
|
91
83
|
process.exit(0);
|
|
92
84
|
} else if (arg === "-h" || arg === "--help") {
|
|
93
|
-
jsShell(`gum style --foreground 212 --border-foreground 212 --border double --align center --width 50 --margin "1 2" --padding "1 1" 'PI Commands:' 'pi: install package' 'pui: uninstall package' 'prun: run package script'`);
|
|
85
|
+
jsShell(`gum style --foreground 212 --border-foreground 212 --border double --align center --width 50 --margin "1 2" --padding "1 1" 'PI Commands:' 'pi: install package' 'pui: uninstall package' 'prun: run package script' 'pinit: package init' 'pbuild: go build | cargo build'`);
|
|
94
86
|
process.exit(0);
|
|
95
87
|
}
|
|
96
88
|
}
|
|
97
89
|
const runMap = {
|
|
98
90
|
pi,
|
|
99
91
|
pui,
|
|
100
|
-
prun
|
|
92
|
+
prun,
|
|
93
|
+
pinit
|
|
101
94
|
};
|
|
102
|
-
function
|
|
103
|
-
const
|
|
95
|
+
function isGo() {
|
|
96
|
+
const { result } = jsShell('test -f "go.mod" && echo "0"|| echo "1"', "pipe");
|
|
97
|
+
return result === "0";
|
|
98
|
+
}
|
|
99
|
+
function isRust() {
|
|
100
|
+
const { result } = jsShell('test -f "Cargo.toml" && echo "0"|| echo "1"', "pipe");
|
|
101
|
+
return result === "0";
|
|
102
|
+
}
|
|
103
|
+
async function loading(text) {
|
|
104
|
+
const { color, spinner } = await getStyle();
|
|
105
|
+
return ora({
|
|
106
|
+
text,
|
|
107
|
+
spinner,
|
|
108
|
+
color
|
|
109
|
+
}).start();
|
|
110
|
+
}
|
|
111
|
+
async function runner() {
|
|
112
|
+
const cmd = process.argv[1];
|
|
104
113
|
const last = cmd.lastIndexOf("/") + 1;
|
|
105
114
|
const exec = cmd.slice(last, cmd.length);
|
|
106
|
-
|
|
115
|
+
const argv = process.argv.slice(2);
|
|
116
|
+
returnVersion(argv);
|
|
117
|
+
const params = argv.join(" ");
|
|
118
|
+
if (isGo()) {
|
|
119
|
+
if (exec === "pi") {
|
|
120
|
+
loading(`Installing ${params} ...
|
|
121
|
+
`);
|
|
122
|
+
jsShell(`go get ${params}`);
|
|
123
|
+
return;
|
|
124
|
+
} else if (exec === "pui") {
|
|
125
|
+
loading(`Uninstalling ${params} ...
|
|
126
|
+
`);
|
|
127
|
+
jsShell(`go clean ${params}`);
|
|
128
|
+
return;
|
|
129
|
+
} else if (exec === "prun") {
|
|
130
|
+
jsShell(`go run ${params}`);
|
|
131
|
+
return;
|
|
132
|
+
} else if (exec === "pinit") {
|
|
133
|
+
jsShell(`go mod init ${params}`);
|
|
134
|
+
return;
|
|
135
|
+
} else if (exec === "pbuild") {
|
|
136
|
+
jsShell(`go build ${params}`);
|
|
137
|
+
return;
|
|
138
|
+
}
|
|
139
|
+
console.log("go mod \u9879\u76EE\u6682\u4E0D\u652F\u6301\u5176\u4ED6\u547D\u4EE4");
|
|
140
|
+
return;
|
|
141
|
+
}
|
|
142
|
+
if (isRust()) {
|
|
143
|
+
if (exec === "pi") {
|
|
144
|
+
loading(`Installing ${params} ...
|
|
145
|
+
`);
|
|
146
|
+
jsShell(`cargo install ${params}`);
|
|
147
|
+
return;
|
|
148
|
+
} else if (exec === "pui") {
|
|
149
|
+
loading(`Uninstalling ${params} ...
|
|
150
|
+
`);
|
|
151
|
+
jsShell(`cargo uninstall ${params}`);
|
|
152
|
+
return;
|
|
153
|
+
} else if (exec === "prun") {
|
|
154
|
+
jsShell(`cargo run ${params}`);
|
|
155
|
+
return;
|
|
156
|
+
} else if (exec === "pinit") {
|
|
157
|
+
jsShell(`cargo init ${params}`);
|
|
158
|
+
return;
|
|
159
|
+
} else if (exec === "pbuild") {
|
|
160
|
+
jsShell(`cargo build ${params}`);
|
|
161
|
+
return;
|
|
162
|
+
}
|
|
163
|
+
console.log("Cargo \u9879\u76EE\u6682\u4E0D\u652F\u6301\u5176\u4ED6\u547D\u4EE4");
|
|
164
|
+
return;
|
|
165
|
+
}
|
|
166
|
+
if (!runMap[exec]) {
|
|
167
|
+
console.log("\u547D\u4EE4\u4E0D\u5B58\u5728,\u8BF7\u6267\u884Cpi -h\u67E5\u770B\u5E2E\u52A9");
|
|
168
|
+
return;
|
|
169
|
+
}
|
|
170
|
+
const pkg = argv.filter((v) => !v.startsWith("-")).join(" ");
|
|
171
|
+
await installDeps();
|
|
172
|
+
runMap[exec](params, pkg);
|
|
107
173
|
}
|
|
108
174
|
runner();
|
|
109
175
|
|
|
110
|
-
export { pi, prun, pui, runner };
|
|
176
|
+
export { pi, pinit, prun, pui, runner };
|
package/dist/seprateThread.cjs
CHANGED
|
@@ -2,4 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
const simonJsTool = require('simon-js-tool');
|
|
4
4
|
|
|
5
|
-
simonJsTool.useProcressNodeWorker(
|
|
5
|
+
simonJsTool.useProcressNodeWorker(
|
|
6
|
+
async ({ params, operate }) => simonJsTool.jsShell(`${operate === "install" ? "ni" : "nun"} ${params}`, "pipe")
|
|
7
|
+
);
|
package/dist/seprateThread.mjs
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
import { useProcressNodeWorker, jsShell } from 'simon-js-tool';
|
|
2
2
|
|
|
3
|
-
useProcressNodeWorker(
|
|
3
|
+
useProcressNodeWorker(
|
|
4
|
+
async ({ params, operate }) => jsShell(`${operate === "install" ? "ni" : "nun"} ${params}`, "pipe")
|
|
5
|
+
);
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@simon_he/pi",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.6",
|
|
5
5
|
"packageManager": "pnpm@7.2.1",
|
|
6
6
|
"description": "",
|
|
7
7
|
"author": "Simon He",
|
|
@@ -36,7 +36,9 @@
|
|
|
36
36
|
"bin": {
|
|
37
37
|
"pi": "./cli.mjs",
|
|
38
38
|
"pui": "./cli.mjs",
|
|
39
|
-
"prun": "./cli.mjs"
|
|
39
|
+
"prun": "./cli.mjs",
|
|
40
|
+
"pinit": "./cli.mjs",
|
|
41
|
+
"pbuild": "./cli.mjs"
|
|
40
42
|
},
|
|
41
43
|
"files": [
|
|
42
44
|
"dist"
|
|
@@ -59,23 +61,22 @@
|
|
|
59
61
|
"dot-text": "^1.0.7",
|
|
60
62
|
"libnpmsearch": "^6.0.0",
|
|
61
63
|
"ora": "^6.1.2",
|
|
62
|
-
"simon-js-tool": "^4.1.
|
|
64
|
+
"simon-js-tool": "^4.1.27",
|
|
63
65
|
"terminal-kit": "^3.0.0",
|
|
64
66
|
"terminal-link": "^3.0.0",
|
|
65
|
-
"vitest": "^0.25.
|
|
66
|
-
"vivid-typing": "^1.1.26"
|
|
67
|
+
"vitest": "^0.25.2"
|
|
67
68
|
},
|
|
68
69
|
"devDependencies": {
|
|
69
|
-
"@antfu/eslint-config": "^0.25.
|
|
70
|
-
"@antfu/ni": "^0.16.
|
|
70
|
+
"@antfu/eslint-config": "^0.25.2",
|
|
71
|
+
"@antfu/ni": "^0.16.3",
|
|
71
72
|
"@antfu/utils": "^0.5.2",
|
|
72
|
-
"@types/node": "^18.
|
|
73
|
+
"@types/node": "^18.11.9",
|
|
73
74
|
"bumpp": "^8.2.1",
|
|
74
|
-
"eslint": "^8.
|
|
75
|
+
"eslint": "^8.28.0",
|
|
75
76
|
"esno": "^0.16.3",
|
|
76
|
-
"pnpm": "^7.
|
|
77
|
+
"pnpm": "^7.17.0",
|
|
77
78
|
"rimraf": "^3.0.2",
|
|
78
|
-
"typescript": "^4.
|
|
79
|
-
"unbuild": "^0.7.
|
|
79
|
+
"typescript": "^4.9.3",
|
|
80
|
+
"unbuild": "^0.7.6"
|
|
80
81
|
}
|
|
81
82
|
}
|