@hieuzest/yakumo 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/index.d.ts +1 -1
- package/lib/index.js +15 -14
- package/lib/index.js.map +1 -1
- package/package.json +3 -3
package/lib/index.d.ts
CHANGED
|
@@ -18,8 +18,8 @@ export declare namespace Yakumo {
|
|
|
18
18
|
export default class Yakumo extends cordis.Service<Yakumo.Config, Context> {
|
|
19
19
|
ctx: Context;
|
|
20
20
|
config: Yakumo.Config;
|
|
21
|
+
static inject: string[];
|
|
21
22
|
cwd: string;
|
|
22
|
-
args: string[];
|
|
23
23
|
argv: Arguments;
|
|
24
24
|
manager: Manager;
|
|
25
25
|
workspaces: Dict<PackageJson>;
|
package/lib/index.js
CHANGED
|
@@ -6,7 +6,7 @@ import { Context } from 'yakumo';
|
|
|
6
6
|
import { manager, spawnAsync } from 'yakumo/utils';
|
|
7
7
|
import kleur from 'kleur';
|
|
8
8
|
import { promises as fs, readFileSync } from 'node:fs';
|
|
9
|
-
import { makeArray } from 'cosmokit';
|
|
9
|
+
import { deduplicate, makeArray } from 'cosmokit';
|
|
10
10
|
export * from 'yakumo';
|
|
11
11
|
export const cwd = process.cwd();
|
|
12
12
|
const content = readFileSync(`${cwd}/package.json`, 'utf8');
|
|
@@ -28,8 +28,8 @@ const builtinCommands = Object.assign(Object.create(null), {
|
|
|
28
28
|
export default class Yakumo extends cordis.Service {
|
|
29
29
|
ctx;
|
|
30
30
|
config;
|
|
31
|
+
static inject = ['loader'];
|
|
31
32
|
cwd;
|
|
32
|
-
args = process.argv.slice(2);
|
|
33
33
|
argv;
|
|
34
34
|
manager;
|
|
35
35
|
workspaces;
|
|
@@ -43,15 +43,15 @@ export default class Yakumo extends cordis.Service {
|
|
|
43
43
|
this.cwd = cwd;
|
|
44
44
|
this.manager = manager;
|
|
45
45
|
for (const name in config.pipeline || {}) {
|
|
46
|
-
this.register(name, async () => {
|
|
46
|
+
this.register(name, async (...rest) => {
|
|
47
47
|
const tasks = config.pipeline[name];
|
|
48
48
|
for (const task of tasks) {
|
|
49
49
|
const [name, ...args] = task.split(/\s+/g);
|
|
50
|
-
await this.execute(name, ...args);
|
|
50
|
+
await this.execute(name, ...args, ...rest);
|
|
51
51
|
}
|
|
52
52
|
});
|
|
53
53
|
}
|
|
54
|
-
builtinServices.forEach(name => ctx.loader.
|
|
54
|
+
builtinServices.forEach(name => ctx.loader._ensure(ctx, { name }));
|
|
55
55
|
}
|
|
56
56
|
register(name, callback, options = {}) {
|
|
57
57
|
this.commands[name] = [callback, options];
|
|
@@ -111,7 +111,7 @@ export default class Yakumo extends cordis.Service {
|
|
|
111
111
|
});
|
|
112
112
|
}
|
|
113
113
|
else {
|
|
114
|
-
return name.flatMap((name) => this.locate(name, options));
|
|
114
|
+
return deduplicate(name.flatMap((name) => this.locate(name, options)));
|
|
115
115
|
}
|
|
116
116
|
}
|
|
117
117
|
if (alias?.[name]) {
|
|
@@ -143,31 +143,32 @@ export default class Yakumo extends cordis.Service {
|
|
|
143
143
|
await this.ctx.events.flush();
|
|
144
144
|
if (!this.commands[name]) {
|
|
145
145
|
if (name in builtinCommands) {
|
|
146
|
-
this.ctx.loader.
|
|
147
|
-
name:
|
|
146
|
+
await this.ctx.loader.create({
|
|
147
|
+
name: 'yakumo/' + name,
|
|
148
148
|
});
|
|
149
|
-
await this.ctx.loader.writeConfig();
|
|
150
|
-
await this.ctx.loader.start();
|
|
151
149
|
return this.execute(name, ...args);
|
|
152
150
|
}
|
|
153
151
|
console.error(kleur.red(`unknown command: ${name}`));
|
|
154
152
|
process.exit(1);
|
|
155
153
|
}
|
|
156
154
|
const [callback, options] = this.commands[name];
|
|
157
|
-
const argv = yargs(
|
|
155
|
+
const argv = yargs(args, options);
|
|
158
156
|
argv.config = options;
|
|
159
157
|
await this.initialize(argv);
|
|
160
|
-
return callback();
|
|
158
|
+
return callback(...args);
|
|
161
159
|
}
|
|
162
160
|
yargs(argv, opts = {}) {
|
|
163
161
|
return this.ctx.get('yargs')?.parse(argv, opts) ?? yargs(argv, opts);
|
|
164
162
|
}
|
|
165
163
|
async start() {
|
|
166
|
-
if (
|
|
164
|
+
if (this.ctx.loader.options.name !== 'yakumo')
|
|
165
|
+
return;
|
|
166
|
+
const [name, ...args] = process.argv.slice(2);
|
|
167
|
+
if (!name) {
|
|
167
168
|
console.log('yakumo');
|
|
168
169
|
process.exit(0);
|
|
169
170
|
}
|
|
170
|
-
this.execute(
|
|
171
|
+
this.execute(name, ...args);
|
|
171
172
|
}
|
|
172
173
|
async install() {
|
|
173
174
|
const agent = manager?.name || 'npm';
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAA;AAChC,OAAO,MAAM,MAAM,QAAQ,CAAA;AAC3B,OAAO,KAAK,MAAM,cAAc,CAAA;AAChC,OAAO,MAAM,MAAM,eAAe,CAAA;AAClC,OAAO,EAAa,OAAO,EAAgD,MAAM,QAAQ,CAAA;AACzF,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAClD,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtD,OAAO,EAAQ,SAAS,EAAE,MAAM,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hieuzest/yakumo",
|
|
3
3
|
"description": "Fork of Yakumo",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.2.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "lib/index.js",
|
|
7
7
|
"typings": "lib/index.d.ts",
|
|
@@ -27,9 +27,9 @@
|
|
|
27
27
|
],
|
|
28
28
|
"dependencies": {
|
|
29
29
|
"kleur": "^4.1.5",
|
|
30
|
-
"yakumo": "^1.0.0-beta.
|
|
30
|
+
"yakumo": "^1.0.0-beta.14",
|
|
31
31
|
"yakumo-git": "^0.5.2",
|
|
32
|
-
"yakumo-locate": "^0.5.
|
|
32
|
+
"yakumo-locate": "^0.5.3",
|
|
33
33
|
"yakumo-ls": "^0.2.2",
|
|
34
34
|
"yakumo-yargs": "^0.1.2"
|
|
35
35
|
}
|