@hieuzest/yakumo 0.1.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 ADDED
@@ -0,0 +1,42 @@
1
+ import * as cordis from 'cordis';
2
+ import yargs from 'yargs-parser';
3
+ import { Arguments, Context, LocateOptions, Manager, Options, PackageJson } from 'yakumo';
4
+ import { Dict } from 'cosmokit';
5
+ export * from 'yakumo';
6
+ export declare const cwd: string;
7
+ export declare const meta: PackageJson;
8
+ export declare namespace Yakumo {
9
+ interface Intercept {
10
+ alias?: Dict<string | string[]>;
11
+ exclude?: string[];
12
+ }
13
+ interface Config extends Intercept {
14
+ commands?: Dict;
15
+ pipeline?: Dict<string[]>;
16
+ }
17
+ }
18
+ export default class Yakumo extends cordis.Service<Yakumo.Config, Context> {
19
+ ctx: Context;
20
+ config: Yakumo.Config;
21
+ cwd: string;
22
+ args: string[];
23
+ argv: Arguments;
24
+ manager: Manager;
25
+ workspaces: Dict<PackageJson>;
26
+ indent: string;
27
+ commands: Dict;
28
+ constructor(ctx: Context, config: Yakumo.Config);
29
+ register(name: string, callback: () => void, options?: Options): void;
30
+ initialize(argv: Arguments): Promise<void>;
31
+ resolveIntercept(): Yakumo.Intercept;
32
+ locate(name: string | string[], options?: LocateOptions): string[];
33
+ save(path: string): Promise<void>;
34
+ execute(name: string, ...args: string[]): any;
35
+ yargs(argv: string | string[], opts?: Options): yargs.Arguments | {
36
+ [argName: string]: unknown;
37
+ _: (string | number)[];
38
+ $0: string;
39
+ };
40
+ start(): Promise<void>;
41
+ install(): Promise<void>;
42
+ }
package/lib/index.js ADDED
@@ -0,0 +1,179 @@
1
+ import * as cordis from 'cordis';
2
+ import globby from 'globby';
3
+ import yargs from 'yargs-parser';
4
+ import detect from 'detect-indent';
5
+ import { Context } from 'yakumo';
6
+ import { manager, spawnAsync } from 'yakumo/utils';
7
+ import kleur from 'kleur';
8
+ import { promises as fs, readFileSync } from 'node:fs';
9
+ import { makeArray } from 'cosmokit';
10
+ export * from 'yakumo';
11
+ export const cwd = process.cwd();
12
+ const content = readFileSync(`${cwd}/package.json`, 'utf8');
13
+ export const meta = JSON.parse(content);
14
+ const builtinServices = [
15
+ 'yakumo-locate',
16
+ 'yakumo-yargs',
17
+ ];
18
+ const builtinCommands = Object.assign(Object.create(null), {
19
+ 'list': 'yakumo/list',
20
+ 'prepare': 'yakumo/prepare',
21
+ 'publish': 'yakumo/publish',
22
+ 'test': 'yakumo/test',
23
+ 'upgrade': 'yakumo/upgrade',
24
+ 'version': 'yakumo/version',
25
+ 'ls': 'yakumo-ls',
26
+ 'git': 'yakumo-git',
27
+ });
28
+ export default class Yakumo extends cordis.Service {
29
+ ctx;
30
+ config;
31
+ cwd;
32
+ args = process.argv.slice(2);
33
+ argv;
34
+ manager;
35
+ workspaces;
36
+ indent = detect(content).indent;
37
+ commands = {};
38
+ constructor(ctx, config) {
39
+ super(ctx, 'yakumo', true);
40
+ this.ctx = ctx;
41
+ this.config = config;
42
+ ctx.mixin('yakumo', ['register']);
43
+ this.cwd = cwd;
44
+ this.manager = manager;
45
+ for (const name in config.pipeline || {}) {
46
+ this.register(name, async () => {
47
+ const tasks = config.pipeline[name];
48
+ for (const task of tasks) {
49
+ const [name, ...args] = task.split(/\s+/g);
50
+ await this.execute(name, ...args);
51
+ }
52
+ });
53
+ }
54
+ builtinServices.forEach(name => ctx.loader.update(ctx, { name }));
55
+ }
56
+ register(name, callback, options = {}) {
57
+ this.commands[name] = [callback, options];
58
+ }
59
+ async initialize(argv) {
60
+ this.argv = argv;
61
+ const folders = await globby(meta.workspaces || [], {
62
+ cwd,
63
+ onlyDirectories: true,
64
+ expandDirectories: false,
65
+ });
66
+ folders.unshift('');
67
+ this.workspaces = Object.fromEntries((await Promise.all(folders.map(async (path) => {
68
+ if (path)
69
+ path = '/' + path;
70
+ try {
71
+ const content = await fs.readFile(`${cwd}${path}/package.json`, 'utf8');
72
+ return [path, JSON.parse(content)];
73
+ }
74
+ catch { }
75
+ return null; // workaround silly strictNullChecks
76
+ }))).filter(Boolean));
77
+ }
78
+ resolveIntercept() {
79
+ const caller = this[Context.current];
80
+ let result = this.config;
81
+ let intercept = caller[Context.intercept];
82
+ while (intercept) {
83
+ result = {
84
+ ...result,
85
+ ...intercept.yakumo,
86
+ alias: {
87
+ ...result.alias,
88
+ ...intercept.yakumo?.alias,
89
+ },
90
+ exclude: [
91
+ ...result.exclude || [],
92
+ ...intercept.yakumo?.exclude || [],
93
+ ],
94
+ };
95
+ intercept = Object.getPrototypeOf(intercept);
96
+ }
97
+ return result;
98
+ }
99
+ locate(name, options = {}) {
100
+ const { alias, exclude } = this.resolveIntercept();
101
+ const defaultFilter = options.filter || ((meta) => options.includeRoot || !meta.workspaces);
102
+ const filter = (meta, path) => {
103
+ return defaultFilter(meta, path) && !exclude?.some((pattern) => {
104
+ return new RegExp('^/' + pattern.replace(/\*/g, '[^/]+') + '$').test(path);
105
+ });
106
+ };
107
+ if (Array.isArray(name)) {
108
+ if (!name.length) {
109
+ return Object.keys(this.workspaces).filter((folder) => {
110
+ return filter(this.workspaces[folder], folder);
111
+ });
112
+ }
113
+ else {
114
+ return name.flatMap((name) => this.locate(name, options));
115
+ }
116
+ }
117
+ if (alias?.[name]) {
118
+ return makeArray(alias[name]).map((path) => {
119
+ if (!this.workspaces[path]) {
120
+ throw new Error(`cannot find workspace ${path} resolved by ${name}`);
121
+ }
122
+ return path;
123
+ });
124
+ }
125
+ const targets = Object.keys(this.workspaces).filter((folder) => {
126
+ if (!filter(this.workspaces[folder], folder))
127
+ return;
128
+ return folder.endsWith('/' + name);
129
+ });
130
+ if (!targets.length) {
131
+ throw new Error(`cannot find workspace "${name}"`);
132
+ }
133
+ else if (targets.length > 1) {
134
+ throw new Error(`ambiguous workspace "${name}": ${targets.join(', ')}`);
135
+ }
136
+ return targets;
137
+ }
138
+ async save(path) {
139
+ const content = JSON.stringify(this.workspaces[path], null, this.indent) + '\n';
140
+ await fs.writeFile(`${cwd}${path}/package.json`, content);
141
+ }
142
+ async execute(name, ...args) {
143
+ await this.ctx.events.flush();
144
+ if (!this.commands[name]) {
145
+ if (name in builtinCommands) {
146
+ this.ctx.loader.config.push({
147
+ name: builtinCommands[name],
148
+ });
149
+ await this.ctx.loader.writeConfig();
150
+ await this.ctx.loader.start();
151
+ return this.execute(name, ...args);
152
+ }
153
+ console.error(kleur.red(`unknown command: ${name}`));
154
+ process.exit(1);
155
+ }
156
+ const [callback, options] = this.commands[name];
157
+ const argv = yargs([...this.args.slice(1), ...args], options);
158
+ argv.config = options;
159
+ await this.initialize(argv);
160
+ return callback();
161
+ }
162
+ yargs(argv, opts = {}) {
163
+ return this.ctx.get('yargs')?.parse(argv, opts) ?? yargs(argv, opts);
164
+ }
165
+ async start() {
166
+ if (!this.args.length) {
167
+ console.log('yakumo');
168
+ process.exit(0);
169
+ }
170
+ this.execute(this.args[0]);
171
+ }
172
+ async install() {
173
+ const agent = manager?.name || 'npm';
174
+ const code = await spawnAsync([agent, 'install']);
175
+ if (code)
176
+ process.exit(code);
177
+ }
178
+ }
179
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,36 @@
1
+ {
2
+ "name": "@hieuzest/yakumo",
3
+ "description": "Fork of Yakumo",
4
+ "version": "0.1.0",
5
+ "type": "module",
6
+ "main": "lib/index.js",
7
+ "typings": "lib/index.d.ts",
8
+ "files": [
9
+ "lib"
10
+ ],
11
+ "author": "Hieuzest <girkirin@hotmail.com>",
12
+ "license": "MIT",
13
+ "repository": {
14
+ "type": "git",
15
+ "url": "git+https://github.com/Hieuzest/yakumo.git",
16
+ "directory": "packages/core"
17
+ },
18
+ "bugs": {
19
+ "url": "https://github.com/Hieuzest/yakumo/issues"
20
+ },
21
+ "homepage": "https://github.com/Hieuzest/yakumo",
22
+ "keywords": [
23
+ "monorepo",
24
+ "workspace",
25
+ "cli",
26
+ "script"
27
+ ],
28
+ "dependencies": {
29
+ "kleur": "^4.1.5",
30
+ "yakumo": "^1.0.0-beta.11",
31
+ "yakumo-git": "^0.5.2",
32
+ "yakumo-locate": "^0.5.2",
33
+ "yakumo-ls": "^0.2.2",
34
+ "yakumo-yargs": "^0.1.2"
35
+ }
36
+ }
package/readme.md ADDED
@@ -0,0 +1,7 @@
1
+ # @hieuzest/yakumo
2
+
3
+ [![downloads](https://img.shields.io/npm/dm/yakumo-ls?style=flat-square)](https://www.npmjs.com/package/@hieuzest/yakumo)
4
+ [![npm](https://img.shields.io/npm/v/yakumo-ls?style=flat-square)](https://www.npmjs.com/package/@hieuzest/yakumo)
5
+ [![GitHub](https://img.shields.io/github/license/Hieuzest/yakumo?style=flat-square)](https://github.com/Hieuzest/yakumo/blob/master/LICENSE)
6
+
7
+ Customized fork of Yakumo