@jujulego/jill 1.1.18 → 1.1.19
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/commands/each.command.d.ts +1 -2
- package/dist/commands/each.command.d.ts.map +1 -0
- package/dist/commands/each.command.js +147 -59
- package/dist/commands/each.command.js.map +1 -0
- package/dist/commands/info.command.d.ts +1 -2
- package/dist/commands/info.command.d.ts.map +1 -0
- package/dist/commands/info.command.js +146 -51
- package/dist/commands/info.command.js.map +1 -0
- package/dist/commands/list.command.d.ts +1 -2
- package/dist/commands/list.command.d.ts.map +1 -0
- package/dist/commands/list.command.js +134 -60
- package/dist/commands/list.command.js.map +1 -0
- package/dist/commands/run.command.d.ts +1 -2
- package/dist/commands/run.command.d.ts.map +1 -0
- package/dist/commands/run.command.js +77 -26
- package/dist/commands/run.command.js.map +1 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -0
- package/dist/main.d.ts.map +1 -0
- package/dist/main.js +41 -9
- package/dist/main.js.map +1 -0
- package/dist/myr/commands/kill.command.d.ts +1 -2
- package/dist/myr/commands/kill.command.d.ts.map +1 -0
- package/dist/myr/commands/kill.command.js +60 -23
- package/dist/myr/commands/kill.command.js.map +1 -0
- package/dist/myr/commands/list.command.d.ts +2 -3
- package/dist/myr/commands/list.command.d.ts.map +1 -0
- package/dist/myr/commands/list.command.js +77 -37
- package/dist/myr/commands/list.command.js.map +1 -0
- package/dist/myr/commands/logs.command.d.ts +1 -2
- package/dist/myr/commands/logs.command.d.ts.map +1 -0
- package/dist/myr/commands/logs.command.js +110 -28
- package/dist/myr/commands/logs.command.js.map +1 -0
- package/dist/myr/commands/spawn.command.d.ts +1 -2
- package/dist/myr/commands/spawn.command.d.ts.map +1 -0
- package/dist/myr/commands/spawn.command.js +56 -17
- package/dist/myr/commands/spawn.command.js.map +1 -0
- package/dist/myr/commands/stop.command.d.ts +1 -2
- package/dist/myr/commands/stop.command.d.ts.map +1 -0
- package/dist/myr/commands/stop.command.js +58 -21
- package/dist/myr/commands/stop.command.js.map +1 -0
- package/dist/myr/myr-client.d.ts.map +1 -0
- package/dist/myr/myr-client.js +224 -80
- package/dist/myr/myr-client.js.map +1 -0
- package/dist/myr/myr.command.d.ts +1 -1
- package/dist/myr/myr.command.d.ts.map +1 -0
- package/dist/myr/myr.command.js +9 -13
- package/dist/myr/myr.command.js.map +1 -0
- package/dist/myr/myr.process.d.ts.map +1 -0
- package/dist/myr/myr.process.js +41 -7
- package/dist/myr/myr.process.js.map +1 -0
- package/dist/myr/watch.command.d.ts +1 -2
- package/dist/myr/watch.command.d.ts.map +1 -0
- package/dist/myr/watch.command.js +132 -50
- package/dist/myr/watch.command.js.map +1 -0
- package/dist/task-logger.d.ts.map +1 -0
- package/dist/task-logger.js +27 -17
- package/dist/task-logger.js.map +1 -0
- package/package.json +8 -12
- package/dist/base.command.d.ts +0 -8
- package/dist/base.command.js +0 -33
- package/dist/command.d.ts +0 -21
- package/dist/command.js +0 -69
- package/dist/filters/affected.d.ts +0 -10
- package/dist/filters/affected.js +0 -80
- package/dist/filters/filter.d.ts +0 -8
- package/dist/filters/filter.js +0 -36
- package/dist/filters/index.d.ts +0 -2
- package/dist/filters/index.js +0 -22
- package/dist/logger.d.ts +0 -15
- package/dist/logger.js +0 -99
- package/dist/pipeline.d.ts +0 -9
- package/dist/pipeline.js +0 -53
- package/dist/plugin.d.ts +0 -11
- package/dist/plugin.js +0 -40
- package/dist/project.command.d.ts +0 -13
- package/dist/project.command.js +0 -58
- package/dist/utils/cli-list.d.ts +0 -15
- package/dist/utils/cli-list.js +0 -87
- package/dist/workspace.command.d.ts +0 -12
- package/dist/workspace.command.js +0 -55
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["myr/myr.process.ts","myr/myr.process.js"],"names":["__awaiter","thisArg","_arguments","P","generator","adopt","value","resolve","Promise","reject","fulfilled","step","next","e","rejected","result","done","then","apply","trans","winston","transports","Console","level","format","combine","timestamp","Date","toLocaleString","errors","json","consoleWarnLevels","stderrLevels","logger","add","process","once","_a","_b","server","MyrServer","createServer","start","remove","send","call","error","name","message","exit"],"mappings":"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","file":"myr.process.js","sourcesContent":["import { logger } from '@jujulego/jill-core';\nimport { MyrServer } from '@jujulego/jill-myr';\nimport winston, { format } from 'winston';\n\n// Setup logger\nconst trans = new winston.transports.Console({\n level: 'debug',\n format: format.combine(\n format.timestamp({ format: () => new Date().toLocaleString() }),\n format.errors(),\n format.json()\n ),\n consoleWarnLevels: [],\n stderrLevels: []\n});\nlogger.add(trans);\n\n// Start server when parent is ready\nprocess.once('message', async () => {\n try {\n // Start server\n const server = await MyrServer.createServer();\n await server.start();\n\n logger.remove(trans);\n process.send?.('started');\n } catch (error) {\n process.send?.({ name: error.name, message: error.message });\n process.exit(1);\n }\n});","var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nimport { logger } from '@jujulego/jill-core';\nimport { MyrServer } from '@jujulego/jill-myr';\nimport winston, { format } from 'winston';\n// Setup logger\nconst trans = new winston.transports.Console({\n level: 'debug',\n format: format.combine(format.timestamp({ format: () => new Date().toLocaleString() }), format.errors(), format.json()),\n consoleWarnLevels: [],\n stderrLevels: []\n});\nlogger.add(trans);\n// Start server when parent is ready\nprocess.once('message', () => __awaiter(void 0, void 0, void 0, function* () {\n var _a, _b;\n try {\n // Start server\n const server = yield MyrServer.createServer();\n yield server.start();\n logger.remove(trans);\n (_a = process.send) === null || _a === void 0 ? void 0 : _a.call(process, 'started');\n }\n catch (error) {\n (_b = process.send) === null || _b === void 0 ? void 0 : _b.call(process, { name: error.name, message: error.message });\n process.exit(1);\n }\n}));"]}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { Arguments, Builder } from '
|
|
2
|
-
import { WorkspaceArgs, WorkspaceCommand } from '../workspace.command';
|
|
1
|
+
import { Arguments, Builder, WorkspaceArgs, WorkspaceCommand } from '@jujulego/jill-common';
|
|
3
2
|
export interface WatchArgs extends WorkspaceArgs {
|
|
4
3
|
script: string;
|
|
5
4
|
daemon: boolean;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["myr/watch.command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAM5F,MAAM,WAAW,SAAU,SAAQ,aAAa;IAC9C,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;CACjB;AAGD,qBAAa,YAAa,SAAQ,gBAAgB,CAAC,SAAS,CAAC;IAE3D,QAAQ,CAAC,IAAI,oBAAoB;IACjC,QAAQ,CAAC,WAAW,kEAAkE;YAGxE,aAAa;IAoB3B,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC;cAYzD,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;CA0BjE","file":"watch.command.d.ts","sourcesContent":["import { Arguments, Builder, WorkspaceArgs, WorkspaceCommand } from '@jujulego/jill-common';\nimport { combine, Workspace } from '@jujulego/jill-core';\n\nimport { MyrClient } from './myr-client';\n\n// Types\nexport interface WatchArgs extends WorkspaceArgs {\n script: string;\n daemon: boolean;\n}\n\n// Command\nexport class WatchCommand extends WorkspaceCommand<WatchArgs> {\n // Attributes\n readonly name = 'watch <script>';\n readonly description = 'Run script with watcher inside workspace and watch over deps';\n\n // Methods\n private async spawnDepsTree(myr: MyrClient, wks: Workspace, set: Set<string>): Promise<number> {\n let count = 0;\n\n for await (const ws of combine(wks.dependencies(), wks.devDependencies())) {\n if (set.has(ws.cwd)) continue;\n set.add(ws.cwd);\n\n // Spawn dependencies\n count += await this.spawnDepsTree(myr, ws, set);\n\n // Spawn task\n const tsk = await myr.spawnScript(ws, 'watch');\n this.logger.log('info', `Task ${tsk.id} spawned`, { label: ws.name });\n\n count++;\n }\n\n return count;\n }\n\n protected define<T, U>(builder: Builder<T, U>): Builder<T, U & WatchArgs> {\n return super.define(y => builder(y)\n .positional('script', { type: 'string', demandOption: true })\n .option('daemon', {\n alias: 'd',\n boolean: true,\n default: false,\n desc: 'Run watch script also in background'\n })\n );\n }\n\n protected async run(args: Arguments<WatchArgs>): Promise<number> {\n await super.run(args);\n\n // Spawn watch\n this.spinner.start('Spawning dependencies watch tasks');\n const myr = new MyrClient(this.project);\n const count = await this.spawnDepsTree(myr, this.workspace, new Set());\n\n // Spawn task\n if (args.daemon) {\n this.spinner.start(`Spawning ${args.script} task`);\n const tsk = await myr.spawnScript(this.workspace, args.script, args['--']?.map(arg => arg.toString()));\n this.logger.log('info', `Task ${tsk.id} spawned`, { label: this.workspace.name });\n this.spinner.succeed(`${count + 1} watch tasks spawned`);\n\n return 0;\n } else {\n this.spinner.succeed(`${count} watch tasks spawned`);\n\n const tsk = await this.workspace.run(args.script, args['--']?.map(arg => arg.toString()), { buildDeps: 'none' });\n tsk.start();\n\n await tsk.waitFor('done', 'failed');\n return tsk.exitCode === 0 ? 0 : 1;\n }\n }\n}\n"]}
|
|
@@ -5,42 +5,114 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.WatchCommand = void 0;
|
|
7
7
|
|
|
8
|
-
var
|
|
8
|
+
var _jillCommon = require("@jujulego/jill-common");
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var _jillCore = require("@jujulego/jill-core");
|
|
11
11
|
|
|
12
12
|
var _myrClient = require("./myr-client");
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
super(...args);
|
|
20
|
-
|
|
21
|
-
_defineProperty(this, "name", 'watch <script>');
|
|
22
|
-
|
|
23
|
-
_defineProperty(this, "description", 'Run script with watcher inside workspace and watch over deps');
|
|
14
|
+
var __awaiter = void 0 && (void 0).__awaiter || function (thisArg, _arguments, P, generator) {
|
|
15
|
+
function adopt(value) {
|
|
16
|
+
return value instanceof P ? value : new P(function (resolve) {
|
|
17
|
+
resolve(value);
|
|
18
|
+
});
|
|
24
19
|
}
|
|
25
20
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
21
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
22
|
+
function fulfilled(value) {
|
|
23
|
+
try {
|
|
24
|
+
step(generator.next(value));
|
|
25
|
+
} catch (e) {
|
|
26
|
+
reject(e);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
29
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
30
|
+
function rejected(value) {
|
|
31
|
+
try {
|
|
32
|
+
step(generator["throw"](value));
|
|
33
|
+
} catch (e) {
|
|
34
|
+
reject(e);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
33
37
|
|
|
34
|
-
|
|
38
|
+
function step(result) {
|
|
39
|
+
result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);
|
|
40
|
+
}
|
|
35
41
|
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
42
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
43
|
+
});
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
var __asyncValues = void 0 && (void 0).__asyncValues || function (o) {
|
|
47
|
+
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
|
|
48
|
+
var m = o[Symbol.asyncIterator],
|
|
49
|
+
i;
|
|
50
|
+
return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () {
|
|
51
|
+
return this;
|
|
52
|
+
}, i);
|
|
53
|
+
|
|
54
|
+
function verb(n) {
|
|
55
|
+
i[n] = o[n] && function (v) {
|
|
56
|
+
return new Promise(function (resolve, reject) {
|
|
57
|
+
v = o[n](v), settle(resolve, reject, v.done, v.value);
|
|
39
58
|
});
|
|
40
|
-
|
|
41
|
-
|
|
59
|
+
};
|
|
60
|
+
}
|
|
42
61
|
|
|
43
|
-
|
|
62
|
+
function settle(resolve, reject, d, v) {
|
|
63
|
+
Promise.resolve(v).then(function (v) {
|
|
64
|
+
resolve({
|
|
65
|
+
value: v,
|
|
66
|
+
done: d
|
|
67
|
+
});
|
|
68
|
+
}, reject);
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
|
|
72
|
+
// Command
|
|
73
|
+
class WatchCommand extends _jillCommon.WorkspaceCommand {
|
|
74
|
+
constructor() {
|
|
75
|
+
super(...arguments); // Attributes
|
|
76
|
+
|
|
77
|
+
this.name = 'watch <script>';
|
|
78
|
+
this.description = 'Run script with watcher inside workspace and watch over deps';
|
|
79
|
+
} // Methods
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
spawnDepsTree(myr, wks, set) {
|
|
83
|
+
var e_1, _a;
|
|
84
|
+
|
|
85
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
86
|
+
let count = 0;
|
|
87
|
+
|
|
88
|
+
try {
|
|
89
|
+
for (var _b = __asyncValues((0, _jillCore.combine)(wks.dependencies(), wks.devDependencies())), _c; _c = yield _b.next(), !_c.done;) {
|
|
90
|
+
const ws = _c.value;
|
|
91
|
+
if (set.has(ws.cwd)) continue;
|
|
92
|
+
set.add(ws.cwd); // Spawn dependencies
|
|
93
|
+
|
|
94
|
+
count += yield this.spawnDepsTree(myr, ws, set); // Spawn task
|
|
95
|
+
|
|
96
|
+
const tsk = yield myr.spawnScript(ws, 'watch');
|
|
97
|
+
this.logger.log('info', `Task ${tsk.id} spawned`, {
|
|
98
|
+
label: ws.name
|
|
99
|
+
});
|
|
100
|
+
count++;
|
|
101
|
+
}
|
|
102
|
+
} catch (e_1_1) {
|
|
103
|
+
e_1 = {
|
|
104
|
+
error: e_1_1
|
|
105
|
+
};
|
|
106
|
+
} finally {
|
|
107
|
+
try {
|
|
108
|
+
if (_c && !_c.done && (_a = _b.return)) yield _a.call(_b);
|
|
109
|
+
} finally {
|
|
110
|
+
if (e_1) throw e_1.error;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
return count;
|
|
115
|
+
});
|
|
44
116
|
}
|
|
45
117
|
|
|
46
118
|
define(builder) {
|
|
@@ -55,33 +127,43 @@ class WatchCommand extends _workspace.WorkspaceCommand {
|
|
|
55
127
|
}));
|
|
56
128
|
}
|
|
57
129
|
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
130
|
+
run(args) {
|
|
131
|
+
const _super = Object.create(null, {
|
|
132
|
+
run: {
|
|
133
|
+
get: () => super.run
|
|
134
|
+
}
|
|
135
|
+
});
|
|
136
|
+
|
|
137
|
+
var _a, _b;
|
|
138
|
+
|
|
139
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
140
|
+
yield _super.run.call(this, args); // Spawn watch
|
|
141
|
+
|
|
142
|
+
this.spinner.start('Spawning dependencies watch tasks');
|
|
143
|
+
const myr = new _myrClient.MyrClient(this.project);
|
|
144
|
+
const count = yield this.spawnDepsTree(myr, this.workspace, new Set()); // Spawn task
|
|
145
|
+
|
|
146
|
+
if (args.daemon) {
|
|
147
|
+
this.spinner.start(`Spawning ${args.script} task`);
|
|
148
|
+
const tsk = yield myr.spawnScript(this.workspace, args.script, (_a = args['--']) === null || _a === void 0 ? void 0 : _a.map(arg => arg.toString()));
|
|
149
|
+
this.logger.log('info', `Task ${tsk.id} spawned`, {
|
|
150
|
+
label: this.workspace.name
|
|
151
|
+
});
|
|
152
|
+
this.spinner.succeed(`${count + 1} watch tasks spawned`);
|
|
153
|
+
return 0;
|
|
154
|
+
} else {
|
|
155
|
+
this.spinner.succeed(`${count} watch tasks spawned`);
|
|
156
|
+
const tsk = yield this.workspace.run(args.script, (_b = args['--']) === null || _b === void 0 ? void 0 : _b.map(arg => arg.toString()), {
|
|
157
|
+
buildDeps: 'none'
|
|
158
|
+
});
|
|
159
|
+
tsk.start();
|
|
160
|
+
yield tsk.waitFor('done', 'failed');
|
|
161
|
+
return tsk.exitCode === 0 ? 0 : 1;
|
|
162
|
+
}
|
|
163
|
+
});
|
|
82
164
|
}
|
|
83
165
|
|
|
84
166
|
}
|
|
85
167
|
|
|
86
168
|
exports.WatchCommand = WatchCommand;
|
|
87
|
-
//# sourceMappingURL=
|
|
169
|
+
//# sourceMappingURL=watch.command.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["myr/watch.command.ts","myr/watch.command.js"],"names":["__awaiter","thisArg","_arguments","P","generator","adopt","value","resolve","Promise","reject","fulfilled","step","next","e","rejected","result","done","then","apply","__asyncValues","o","Symbol","asyncIterator","TypeError","m","i","call","__values","iterator","verb","n","v","settle","d","WatchCommand","WorkspaceCommand","constructor","arguments","name","description","spawnDepsTree","myr","wks","set","e_1","_a","count","_b","dependencies","devDependencies","_c","ws","has","cwd","add","tsk","spawnScript","logger","log","id","label","e_1_1","error","return","define","builder","y","positional","type","demandOption","option","alias","boolean","default","desc","run","args","_super","Object","create","get","spinner","start","MyrClient","project","workspace","Set","daemon","script","map","arg","toString","succeed","buildDeps","waitFor","exitCode"],"mappings":"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","file":"watch.command.js","sourcesContent":["import { Arguments, Builder, WorkspaceArgs, WorkspaceCommand } from '@jujulego/jill-common';\nimport { combine, Workspace } from '@jujulego/jill-core';\n\nimport { MyrClient } from './myr-client';\n\n// Types\nexport interface WatchArgs extends WorkspaceArgs {\n script: string;\n daemon: boolean;\n}\n\n// Command\nexport class WatchCommand extends WorkspaceCommand<WatchArgs> {\n // Attributes\n readonly name = 'watch <script>';\n readonly description = 'Run script with watcher inside workspace and watch over deps';\n\n // Methods\n private async spawnDepsTree(myr: MyrClient, wks: Workspace, set: Set<string>): Promise<number> {\n let count = 0;\n\n for await (const ws of combine(wks.dependencies(), wks.devDependencies())) {\n if (set.has(ws.cwd)) continue;\n set.add(ws.cwd);\n\n // Spawn dependencies\n count += await this.spawnDepsTree(myr, ws, set);\n\n // Spawn task\n const tsk = await myr.spawnScript(ws, 'watch');\n this.logger.log('info', `Task ${tsk.id} spawned`, { label: ws.name });\n\n count++;\n }\n\n return count;\n }\n\n protected define<T, U>(builder: Builder<T, U>): Builder<T, U & WatchArgs> {\n return super.define(y => builder(y)\n .positional('script', { type: 'string', demandOption: true })\n .option('daemon', {\n alias: 'd',\n boolean: true,\n default: false,\n desc: 'Run watch script also in background'\n })\n );\n }\n\n protected async run(args: Arguments<WatchArgs>): Promise<number> {\n await super.run(args);\n\n // Spawn watch\n this.spinner.start('Spawning dependencies watch tasks');\n const myr = new MyrClient(this.project);\n const count = await this.spawnDepsTree(myr, this.workspace, new Set());\n\n // Spawn task\n if (args.daemon) {\n this.spinner.start(`Spawning ${args.script} task`);\n const tsk = await myr.spawnScript(this.workspace, args.script, args['--']?.map(arg => arg.toString()));\n this.logger.log('info', `Task ${tsk.id} spawned`, { label: this.workspace.name });\n this.spinner.succeed(`${count + 1} watch tasks spawned`);\n\n return 0;\n } else {\n this.spinner.succeed(`${count} watch tasks spawned`);\n\n const tsk = await this.workspace.run(args.script, args['--']?.map(arg => arg.toString()), { buildDeps: 'none' });\n tsk.start();\n\n await tsk.waitFor('done', 'failed');\n return tsk.exitCode === 0 ? 0 : 1;\n }\n }\n}\n","var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __asyncValues = (this && this.__asyncValues) || function (o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n};\nimport { WorkspaceCommand } from '@jujulego/jill-common';\nimport { combine } from '@jujulego/jill-core';\nimport { MyrClient } from './myr-client';\n// Command\nexport class WatchCommand extends WorkspaceCommand {\n constructor() {\n super(...arguments);\n // Attributes\n this.name = 'watch <script>';\n this.description = 'Run script with watcher inside workspace and watch over deps';\n }\n // Methods\n spawnDepsTree(myr, wks, set) {\n var e_1, _a;\n return __awaiter(this, void 0, void 0, function* () {\n let count = 0;\n try {\n for (var _b = __asyncValues(combine(wks.dependencies(), wks.devDependencies())), _c; _c = yield _b.next(), !_c.done;) {\n const ws = _c.value;\n if (set.has(ws.cwd))\n continue;\n set.add(ws.cwd);\n // Spawn dependencies\n count += yield this.spawnDepsTree(myr, ws, set);\n // Spawn task\n const tsk = yield myr.spawnScript(ws, 'watch');\n this.logger.log('info', `Task ${tsk.id} spawned`, { label: ws.name });\n count++;\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) yield _a.call(_b);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return count;\n });\n }\n define(builder) {\n return super.define(y => builder(y)\n .positional('script', { type: 'string', demandOption: true })\n .option('daemon', {\n alias: 'd',\n boolean: true,\n default: false,\n desc: 'Run watch script also in background'\n }));\n }\n run(args) {\n const _super = Object.create(null, {\n run: { get: () => super.run }\n });\n var _a, _b;\n return __awaiter(this, void 0, void 0, function* () {\n yield _super.run.call(this, args);\n // Spawn watch\n this.spinner.start('Spawning dependencies watch tasks');\n const myr = new MyrClient(this.project);\n const count = yield this.spawnDepsTree(myr, this.workspace, new Set());\n // Spawn task\n if (args.daemon) {\n this.spinner.start(`Spawning ${args.script} task`);\n const tsk = yield myr.spawnScript(this.workspace, args.script, (_a = args['--']) === null || _a === void 0 ? void 0 : _a.map(arg => arg.toString()));\n this.logger.log('info', `Task ${tsk.id} spawned`, { label: this.workspace.name });\n this.spinner.succeed(`${count + 1} watch tasks spawned`);\n return 0;\n }\n else {\n this.spinner.succeed(`${count} watch tasks spawned`);\n const tsk = yield this.workspace.run(args.script, (_b = args['--']) === null || _b === void 0 ? void 0 : _b.map(arg => arg.toString()), { buildDeps: 'none' });\n tsk.start();\n yield tsk.waitFor('done', 'failed');\n return tsk.exitCode === 0 ? 0 : 1;\n }\n });\n }\n}"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["task-logger.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAGpD,oBAAY,eAAe,GAAG,eAAe,GAAG,aAAa,GAAG,MAAM,GAAG,SAAS,CAAC;AAGnF,qBAAa,UAAU;IAErB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmB;IAC5C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAKvB;IAGF,OAAO,CAAC,eAAe;IASvB,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,gBAAgB;IAYxB,OAAO,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAK3B,EAAE,CAAC,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI;IACnE,EAAE,CAAC,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,MAAM,GAAG,IAAI;IAC7D,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,MAAM,GAAG,IAAI;IACtD,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,MAAM,GAAG,IAAI;CAI1D","file":"task-logger.d.ts","sourcesContent":["import { transport } from '@jujulego/jill-common';\nimport { Task, TaskSet } from '@jujulego/jill-core';\n\n// Types\nexport type TaskLoggerState = 'spin-multiple' | 'spin-simple' | 'fail' | 'succeed';\n\n// Class\nexport class TaskLogger {\n // Attributes\n private readonly _running = new Set<Task>();\n private readonly _formats = {\n 'spin-multiple': (count: number) => `Building ${count} workspaces ...`,\n 'spin-simple': (tsk: Task) => `Building ${tsk.context.workspace?.name} ...`,\n 'fail': (tsk: Task) => `Failed to build ${tsk.context.workspace?.name}`,\n 'succeed': (tsk: Task) => `${tsk.context.workspace?.name} built`,\n };\n\n // Methods\n private _refreshSpinner() {\n if (this._running.size > 1) {\n transport.spin(this._formats['spin-multiple'](this._running.size));\n } else if (this._running.size > 0) {\n const tsk = this._running.values().next().value;\n transport.spin(this._formats['spin-simple'](tsk));\n }\n }\n\n private _handleStarted(task: Task) {\n this._running.add(task);\n\n this._refreshSpinner();\n }\n\n private _handleCompleted(task: Task) {\n this._running.delete(task);\n\n if (task.status === 'failed') {\n transport.fail(this._formats['fail'](task));\n } else {\n transport.succeed(this._formats['succeed'](task));\n }\n\n this._refreshSpinner();\n }\n\n connect(set: TaskSet): void {\n set.on('started', (task) => this._handleStarted(task));\n set.on('completed', (task) => this._handleCompleted(task));\n }\n\n on(state: 'spin-multiple', format: (count: number) => string): void;\n on(state: 'spin-simple', format: (tsk: Task) => string): void;\n on(state: 'fail', format: (tsk: Task) => string): void;\n on(state: 'succeed', format: (tsk: Task) => string): void;\n on(state: TaskLoggerState, format: (arg: never) => string): void {\n this._formats[state] = format;\n }\n}\n"]}
|
package/dist/task-logger.js
CHANGED
|
@@ -5,31 +5,41 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.TaskLogger = void 0;
|
|
7
7
|
|
|
8
|
-
var
|
|
9
|
-
|
|
10
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
8
|
+
var _jillCommon = require("@jujulego/jill-common");
|
|
11
9
|
|
|
12
10
|
// Class
|
|
13
11
|
class TaskLogger {
|
|
14
12
|
constructor() {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
// Attributes
|
|
14
|
+
this._running = new Set();
|
|
15
|
+
this._formats = {
|
|
18
16
|
'spin-multiple': count => `Building ${count} workspaces ...`,
|
|
19
|
-
'spin-simple': tsk =>
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
17
|
+
'spin-simple': tsk => {
|
|
18
|
+
var _a;
|
|
19
|
+
|
|
20
|
+
return `Building ${(_a = tsk.context.workspace) === null || _a === void 0 ? void 0 : _a.name} ...`;
|
|
21
|
+
},
|
|
22
|
+
'fail': tsk => {
|
|
23
|
+
var _a;
|
|
24
|
+
|
|
25
|
+
return `Failed to build ${(_a = tsk.context.workspace) === null || _a === void 0 ? void 0 : _a.name}`;
|
|
26
|
+
},
|
|
27
|
+
'succeed': tsk => {
|
|
28
|
+
var _a;
|
|
29
|
+
|
|
30
|
+
return `${(_a = tsk.context.workspace) === null || _a === void 0 ? void 0 : _a.name} built`;
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
} // Methods
|
|
34
|
+
|
|
24
35
|
|
|
25
|
-
// Methods
|
|
26
36
|
_refreshSpinner() {
|
|
27
37
|
if (this._running.size > 1) {
|
|
28
|
-
|
|
38
|
+
_jillCommon.transport.spin(this._formats['spin-multiple'](this._running.size));
|
|
29
39
|
} else if (this._running.size > 0) {
|
|
30
40
|
const tsk = this._running.values().next().value;
|
|
31
41
|
|
|
32
|
-
|
|
42
|
+
_jillCommon.transport.spin(this._formats['spin-simple'](tsk));
|
|
33
43
|
}
|
|
34
44
|
}
|
|
35
45
|
|
|
@@ -43,9 +53,9 @@ class TaskLogger {
|
|
|
43
53
|
this._running.delete(task);
|
|
44
54
|
|
|
45
55
|
if (task.status === 'failed') {
|
|
46
|
-
|
|
56
|
+
_jillCommon.transport.fail(this._formats['fail'](task));
|
|
47
57
|
} else {
|
|
48
|
-
|
|
58
|
+
_jillCommon.transport.succeed(this._formats['succeed'](task));
|
|
49
59
|
}
|
|
50
60
|
|
|
51
61
|
this._refreshSpinner();
|
|
@@ -63,4 +73,4 @@ class TaskLogger {
|
|
|
63
73
|
}
|
|
64
74
|
|
|
65
75
|
exports.TaskLogger = TaskLogger;
|
|
66
|
-
//# sourceMappingURL=
|
|
76
|
+
//# sourceMappingURL=task-logger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["task-logger.ts"],"names":["TaskLogger","constructor","_running","Set","_formats","count","tsk","_a","context","workspace","name","_refreshSpinner","size","transport","spin","values","next","value","_handleStarted","task","add","_handleCompleted","delete","status","fail","succeed","connect","set","on","state","format"],"mappings":";;;;;;;AAAA;;AAMA;AACM,MAAOA,UAAP,CAAiB;AAAvBC,EAAAA,WAAA,GAAA;AACE;AACiB,SAAAC,QAAA,GAAW,IAAIC,GAAJ,EAAX;AACA,SAAAC,QAAA,GAAW;AAC1B,uBAAkBC,KAAD,IAAmB,YAAYA,KAAK,iBAD3B;AAE1B,qBAAgBC,GAAD,IAAc;AAAA,YAAAC,EAAA;;AAAC,eAAA,YAAY,CAAAA,EAAA,GAAAD,GAAG,CAACE,OAAJ,CAAYC,SAAZ,MAAqB,IAArB,IAAqBF,EAAA,KAAA,KAAA,CAArB,GAAqB,KAAA,CAArB,GAAqBA,EAAA,CAAEG,IAAI,MAAvC;AAA6C,OAFjD;AAG1B,cAASJ,GAAD,IAAc;AAAA,YAAAC,EAAA;;AAAC,eAAA,mBAAmB,CAAAA,EAAA,GAAAD,GAAG,CAACE,OAAJ,CAAYC,SAAZ,MAAqB,IAArB,IAAqBF,EAAA,KAAA,KAAA,CAArB,GAAqB,KAAA,CAArB,GAAqBA,EAAA,CAAEG,IAAI,EAA9C;AAAgD,OAH7C;AAI1B,iBAAYJ,GAAD,IAAc;AAAA,YAAAC,EAAA;;AAAC,eAAA,GAAG,CAAAA,EAAA,GAAAD,GAAG,CAACE,OAAJ,CAAYC,SAAZ,MAAqB,IAArB,IAAqBF,EAAA,KAAA,KAAA,CAArB,GAAqB,KAAA,CAArB,GAAqBA,EAAA,CAAEG,IAAI,QAA9B;AAAsC;AAJtC,KAAX;AA+ClB,GAlDsB,CAUrB;;;AACQC,EAAAA,eAAe,GAAA;AACrB,QAAI,KAAKT,QAAL,CAAcU,IAAd,GAAqB,CAAzB,EAA4B;AAC1BC,4BAAUC,IAAV,CAAe,KAAKV,QAAL,CAAc,eAAd,EAA+B,KAAKF,QAAL,CAAcU,IAA7C,CAAf;AACD,KAFD,MAEO,IAAI,KAAKV,QAAL,CAAcU,IAAd,GAAqB,CAAzB,EAA4B;AACjC,YAAMN,GAAG,GAAG,KAAKJ,QAAL,CAAca,MAAd,GAAuBC,IAAvB,GAA8BC,KAA1C;;AACAJ,4BAAUC,IAAV,CAAe,KAAKV,QAAL,CAAc,aAAd,EAA6BE,GAA7B,CAAf;AACD;AACF;;AAEOY,EAAAA,cAAc,CAACC,IAAD,EAAW;AAC/B,SAAKjB,QAAL,CAAckB,GAAd,CAAkBD,IAAlB;;AAEA,SAAKR,eAAL;AACD;;AAEOU,EAAAA,gBAAgB,CAACF,IAAD,EAAW;AACjC,SAAKjB,QAAL,CAAcoB,MAAd,CAAqBH,IAArB;;AAEA,QAAIA,IAAI,CAACI,MAAL,KAAgB,QAApB,EAA8B;AAC5BV,4BAAUW,IAAV,CAAe,KAAKpB,QAAL,CAAc,MAAd,EAAsBe,IAAtB,CAAf;AACD,KAFD,MAEO;AACLN,4BAAUY,OAAV,CAAkB,KAAKrB,QAAL,CAAc,SAAd,EAAyBe,IAAzB,CAAlB;AACD;;AAED,SAAKR,eAAL;AACD;;AAEDe,EAAAA,OAAO,CAACC,GAAD,EAAa;AAClBA,IAAAA,GAAG,CAACC,EAAJ,CAAO,SAAP,EAAmBT,IAAD,IAAU,KAAKD,cAAL,CAAoBC,IAApB,CAA5B;AACAQ,IAAAA,GAAG,CAACC,EAAJ,CAAO,WAAP,EAAqBT,IAAD,IAAU,KAAKE,gBAAL,CAAsBF,IAAtB,CAA9B;AACD;;AAMDS,EAAAA,EAAE,CAACC,KAAD,EAAyBC,MAAzB,EAAuD;AACvD,SAAK1B,QAAL,CAAcyB,KAAd,IAAuBC,MAAvB;AACD;;AAjDoB","file":"task-logger.js","sourcesContent":["import { transport } from '@jujulego/jill-common';\nimport { Task, TaskSet } from '@jujulego/jill-core';\n\n// Types\nexport type TaskLoggerState = 'spin-multiple' | 'spin-simple' | 'fail' | 'succeed';\n\n// Class\nexport class TaskLogger {\n // Attributes\n private readonly _running = new Set<Task>();\n private readonly _formats = {\n 'spin-multiple': (count: number) => `Building ${count} workspaces ...`,\n 'spin-simple': (tsk: Task) => `Building ${tsk.context.workspace?.name} ...`,\n 'fail': (tsk: Task) => `Failed to build ${tsk.context.workspace?.name}`,\n 'succeed': (tsk: Task) => `${tsk.context.workspace?.name} built`,\n };\n\n // Methods\n private _refreshSpinner() {\n if (this._running.size > 1) {\n transport.spin(this._formats['spin-multiple'](this._running.size));\n } else if (this._running.size > 0) {\n const tsk = this._running.values().next().value;\n transport.spin(this._formats['spin-simple'](tsk));\n }\n }\n\n private _handleStarted(task: Task) {\n this._running.add(task);\n\n this._refreshSpinner();\n }\n\n private _handleCompleted(task: Task) {\n this._running.delete(task);\n\n if (task.status === 'failed') {\n transport.fail(this._formats['fail'](task));\n } else {\n transport.succeed(this._formats['succeed'](task));\n }\n\n this._refreshSpinner();\n }\n\n connect(set: TaskSet): void {\n set.on('started', (task) => this._handleStarted(task));\n set.on('completed', (task) => this._handleCompleted(task));\n }\n\n on(state: 'spin-multiple', format: (count: number) => string): void;\n on(state: 'spin-simple', format: (tsk: Task) => string): void;\n on(state: 'fail', format: (tsk: Task) => string): void;\n on(state: 'succeed', format: (tsk: Task) => string): void;\n on(state: TaskLoggerState, format: (arg: never) => string): void {\n this._formats[state] = format;\n }\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jujulego/jill",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.19",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -25,6 +25,7 @@
|
|
|
25
25
|
"node": "^14"
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
+
"@jujulego/jill-common": "^1.0.0",
|
|
28
29
|
"@jujulego/jill-core": "^1.1.12",
|
|
29
30
|
"@jujulego/jill-myr": "^0.1.0",
|
|
30
31
|
"@repeaterjs/repeater": "^3.0.4",
|
|
@@ -44,27 +45,22 @@
|
|
|
44
45
|
"@babel/core": "7.16.5",
|
|
45
46
|
"@babel/plugin-proposal-class-properties": "7.16.5",
|
|
46
47
|
"@babel/preset-env": "7.16.5",
|
|
47
|
-
"@babel/preset-typescript": "7.16.5",
|
|
48
48
|
"@babel/runtime": "7.16.5",
|
|
49
49
|
"@types/gulp": "4.0.9",
|
|
50
|
-
"@types/gulp-babel": "6.1.30",
|
|
51
|
-
"@types/gulp-sourcemaps": "0.0.35",
|
|
52
50
|
"@types/jest": "27.0.3",
|
|
53
|
-
"@types/node": "14.18.
|
|
51
|
+
"@types/node": "14.18.3",
|
|
54
52
|
"@types/ws": "8.2.1",
|
|
55
|
-
"@types/yargs": "17.0.
|
|
56
|
-
"@typescript-eslint/eslint-plugin": "5.8.
|
|
57
|
-
"@typescript-eslint/parser": "5.8.
|
|
53
|
+
"@types/yargs": "17.0.8",
|
|
54
|
+
"@typescript-eslint/eslint-plugin": "5.8.1",
|
|
55
|
+
"@typescript-eslint/parser": "5.8.1",
|
|
58
56
|
"del": "6.0.0",
|
|
59
57
|
"eslint": "7.32.0",
|
|
60
|
-
"eslint-plugin-jest": "25.3.
|
|
58
|
+
"eslint-plugin-jest": "25.3.2",
|
|
61
59
|
"eslint-plugin-workspaces": "0.7.0",
|
|
62
60
|
"gulp": "4.0.2",
|
|
63
|
-
"gulp-babel": "8.0.0",
|
|
64
61
|
"gulp-cli": "2.3.0",
|
|
65
|
-
"gulp-sourcemaps": "3.0.0",
|
|
66
|
-
"gulp-typescript": "6.0.0-alpha.1",
|
|
67
62
|
"jest": "27.4.5",
|
|
63
|
+
"jill-tools": "0.0.0",
|
|
68
64
|
"msw": "0.36.3",
|
|
69
65
|
"ts-jest": "27.1.1",
|
|
70
66
|
"ts-node": "10.4.0",
|
package/dist/base.command.d.ts
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { Arguments, Awaitable, Builder, Command } from './command';
|
|
2
|
-
export interface BaseArgs {
|
|
3
|
-
verbose: number;
|
|
4
|
-
}
|
|
5
|
-
export declare abstract class BaseCommand<A extends BaseArgs> extends Command<BaseArgs> {
|
|
6
|
-
protected define<T, U>(builder: Builder<T, U>): Builder<T, U & BaseArgs>;
|
|
7
|
-
protected run(args: Arguments<A>): Awaitable<number | void>;
|
|
8
|
-
}
|
package/dist/base.command.js
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.BaseCommand = void 0;
|
|
7
|
-
|
|
8
|
-
var _command = require("./command");
|
|
9
|
-
|
|
10
|
-
// Command
|
|
11
|
-
class BaseCommand extends _command.Command {
|
|
12
|
-
// Methods
|
|
13
|
-
define(builder) {
|
|
14
|
-
return y => builder(y).option('verbose', {
|
|
15
|
-
alias: 'v',
|
|
16
|
-
type: 'count',
|
|
17
|
-
description: 'Set verbosity level (1 for verbose, 2 for debug)'
|
|
18
|
-
});
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
run(args) {
|
|
22
|
-
// Setup logger verbosity
|
|
23
|
-
if (args.verbose === 1) {
|
|
24
|
-
this.logger.level = 'verbose';
|
|
25
|
-
} else if (args.verbose >= 2) {
|
|
26
|
-
this.logger.level = 'debug';
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
exports.BaseCommand = BaseCommand;
|
|
33
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJhc2UuY29tbWFuZC50cyJdLCJuYW1lcyI6WyJCYXNlQ29tbWFuZCIsIkNvbW1hbmQiLCJkZWZpbmUiLCJidWlsZGVyIiwieSIsIm9wdGlvbiIsImFsaWFzIiwidHlwZSIsImRlc2NyaXB0aW9uIiwicnVuIiwiYXJncyIsInZlcmJvc2UiLCJsb2dnZXIiLCJsZXZlbCJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOztBQU9BO0FBQ08sTUFBZUEsV0FBZixTQUF1REMsZ0JBQXZELENBQXlFO0FBQzlFO0FBQ1VDLEVBQUFBLE1BQU0sQ0FBT0MsT0FBUCxFQUF5RDtBQUN2RSxXQUFPQyxDQUFDLElBQUlELE9BQU8sQ0FBQ0MsQ0FBRCxDQUFQLENBQ1RDLE1BRFMsQ0FDRixTQURFLEVBQ1M7QUFDakJDLE1BQUFBLEtBQUssRUFBRSxHQURVO0FBRWpCQyxNQUFBQSxJQUFJLEVBQUUsT0FGVztBQUdqQkMsTUFBQUEsV0FBVyxFQUFFO0FBSEksS0FEVCxDQUFaO0FBTUQ7O0FBRVNDLEVBQUFBLEdBQUcsQ0FBQ0MsSUFBRCxFQUErQztBQUMxRDtBQUNBLFFBQUlBLElBQUksQ0FBQ0MsT0FBTCxLQUFpQixDQUFyQixFQUF3QjtBQUN0QixXQUFLQyxNQUFMLENBQVlDLEtBQVosR0FBb0IsU0FBcEI7QUFDRCxLQUZELE1BRU8sSUFBSUgsSUFBSSxDQUFDQyxPQUFMLElBQWdCLENBQXBCLEVBQXVCO0FBQzVCLFdBQUtDLE1BQUwsQ0FBWUMsS0FBWixHQUFvQixPQUFwQjtBQUNEO0FBQ0Y7O0FBbEI2RSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFyZ3VtZW50cywgQXdhaXRhYmxlLCBCdWlsZGVyLCBDb21tYW5kIH0gZnJvbSAnLi9jb21tYW5kJztcblxuLy8gVHlwZXNcbmV4cG9ydCBpbnRlcmZhY2UgQmFzZUFyZ3Mge1xuICB2ZXJib3NlOiBudW1iZXI7XG59XG5cbi8vIENvbW1hbmRcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlQ29tbWFuZDxBIGV4dGVuZHMgQmFzZUFyZ3M+IGV4dGVuZHMgQ29tbWFuZDxCYXNlQXJncz4ge1xuICAvLyBNZXRob2RzXG4gIHByb3RlY3RlZCBkZWZpbmU8VCwgVT4oYnVpbGRlcjogQnVpbGRlcjxULCBVPik6IEJ1aWxkZXI8VCwgVSAmIEJhc2VBcmdzPiB7XG4gICAgcmV0dXJuIHkgPT4gYnVpbGRlcih5KVxuICAgICAgLm9wdGlvbigndmVyYm9zZScsIHtcbiAgICAgICAgYWxpYXM6ICd2JyxcbiAgICAgICAgdHlwZTogJ2NvdW50JyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdTZXQgdmVyYm9zaXR5IGxldmVsICgxIGZvciB2ZXJib3NlLCAyIGZvciBkZWJ1ZyknLFxuICAgICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgcnVuKGFyZ3M6IEFyZ3VtZW50czxBPik6IEF3YWl0YWJsZTxudW1iZXIgfCB2b2lkPiB7XG4gICAgLy8gU2V0dXAgbG9nZ2VyIHZlcmJvc2l0eVxuICAgIGlmIChhcmdzLnZlcmJvc2UgPT09IDEpIHtcbiAgICAgIHRoaXMubG9nZ2VyLmxldmVsID0gJ3ZlcmJvc2UnO1xuICAgIH0gZWxzZSBpZiAoYXJncy52ZXJib3NlID49IDIpIHtcbiAgICAgIHRoaXMubG9nZ2VyLmxldmVsID0gJ2RlYnVnJztcbiAgICB9XG4gIH1cbn0iXSwiZmlsZSI6ImJhc2UuY29tbWFuZC5qcyJ9
|
package/dist/command.d.ts
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import yargs from 'yargs';
|
|
2
|
-
export declare type Awaitable<T> = T | PromiseLike<T>;
|
|
3
|
-
export declare type Arguments<A> = yargs.Arguments<A> & {
|
|
4
|
-
'--': readonly (string | number)[];
|
|
5
|
-
};
|
|
6
|
-
export declare type Builder<T, A = T> = (yargs: yargs.Argv<T>) => yargs.Argv<A>;
|
|
7
|
-
export declare class Exit extends Error {
|
|
8
|
-
readonly code: number;
|
|
9
|
-
constructor(code?: number);
|
|
10
|
-
}
|
|
11
|
-
export declare abstract class Command<A = unknown> {
|
|
12
|
-
readonly logger: import("winston").Logger;
|
|
13
|
-
readonly spinner: import("ora").Ora;
|
|
14
|
-
protected abstract define<T, U>(builder: Builder<T, U>): Builder<T, U & A>;
|
|
15
|
-
protected abstract run(args: Arguments<A>): Awaitable<number | void>;
|
|
16
|
-
setup<T>(yargs: yargs.Argv<T>): yargs.Argv<T>;
|
|
17
|
-
private _wrapper;
|
|
18
|
-
log(msg: string): void;
|
|
19
|
-
abstract get name(): string | readonly string[];
|
|
20
|
-
abstract get description(): string;
|
|
21
|
-
}
|
package/dist/command.js
DELETED
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.Exit = exports.Command = void 0;
|
|
7
|
-
|
|
8
|
-
var _jillCore = require("@jujulego/jill-core");
|
|
9
|
-
|
|
10
|
-
var _yargs = _interopRequireDefault(require("yargs"));
|
|
11
|
-
|
|
12
|
-
var _logger = require("./logger");
|
|
13
|
-
|
|
14
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
-
|
|
16
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
17
|
-
|
|
18
|
-
// Exceptions
|
|
19
|
-
class Exit extends Error {
|
|
20
|
-
// Constructor
|
|
21
|
-
constructor(code = 1) {
|
|
22
|
-
super();
|
|
23
|
-
this.code = code;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
} // Command
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
exports.Exit = Exit;
|
|
30
|
-
|
|
31
|
-
class Command {
|
|
32
|
-
constructor() {
|
|
33
|
-
_defineProperty(this, "logger", _jillCore.logger);
|
|
34
|
-
|
|
35
|
-
_defineProperty(this, "spinner", _logger.transport.spinner);
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
setup(yargs) {
|
|
39
|
-
yargs.command(this.name, this.description, y => this.define(_ => _)(y), a => this._wrapper(a));
|
|
40
|
-
return yargs;
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
async _wrapper(args) {
|
|
44
|
-
try {
|
|
45
|
-
const exit = await this.run(args);
|
|
46
|
-
process.exit(exit ?? 0);
|
|
47
|
-
} catch (err) {
|
|
48
|
-
if (err instanceof Exit) {
|
|
49
|
-
process.exit(err.code);
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
this.spinner.fail(err.message);
|
|
53
|
-
process.exit(1);
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
log(msg) {
|
|
58
|
-
if (this.spinner.isSpinning) {
|
|
59
|
-
this.spinner.clear();
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
process.stdout.write(msg + '\n');
|
|
63
|
-
} // Properties
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
exports.Command = Command;
|
|
69
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbW1hbmQudHMiXSwibmFtZXMiOlsiRXhpdCIsIkVycm9yIiwiY29uc3RydWN0b3IiLCJjb2RlIiwiQ29tbWFuZCIsImxvZ2dlciIsInRyYW5zcG9ydCIsInNwaW5uZXIiLCJzZXR1cCIsInlhcmdzIiwiY29tbWFuZCIsIm5hbWUiLCJkZXNjcmlwdGlvbiIsInkiLCJkZWZpbmUiLCJfIiwiYSIsIl93cmFwcGVyIiwiYXJncyIsImV4aXQiLCJydW4iLCJwcm9jZXNzIiwiZXJyIiwiZmFpbCIsIm1lc3NhZ2UiLCJsb2ciLCJtc2ciLCJpc1NwaW5uaW5nIiwiY2xlYXIiLCJzdGRvdXQiLCJ3cml0ZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOztBQUNBOztBQUVBOzs7Ozs7QUFPQTtBQUNPLE1BQU1BLElBQU4sU0FBbUJDLEtBQW5CLENBQXlCO0FBQzlCO0FBQ0FDLEVBQUFBLFdBQVcsQ0FBVUMsSUFBSSxHQUFHLENBQWpCLEVBQW9CO0FBQzdCO0FBRDZCLFNBQVZBLElBQVUsR0FBVkEsSUFBVTtBQUU5Qjs7QUFKNkIsQyxDQU9oQzs7Ozs7QUFDTyxNQUFlQyxPQUFmLENBQW9DO0FBQUE7QUFBQSxvQ0FFdkJDLGdCQUZ1Qjs7QUFBQSxxQ0FHdEJDLGtCQUFVQyxPQUhZO0FBQUE7O0FBU3pDQyxFQUFBQSxLQUFLLENBQUlDLEtBQUosRUFBeUM7QUFDNUNBLElBQUFBLEtBQUssQ0FBQ0MsT0FBTixDQUNFLEtBQUtDLElBRFAsRUFFRSxLQUFLQyxXQUZQLEVBR0dDLENBQUQsSUFBTyxLQUFLQyxNQUFMLENBQVlDLENBQUMsSUFBSUEsQ0FBakIsRUFBb0JGLENBQXBCLENBSFQsRUFJR0csQ0FBRCxJQUFPLEtBQUtDLFFBQUwsQ0FBY0QsQ0FBZCxDQUpUO0FBT0EsV0FBT1AsS0FBUDtBQUNEOztBQUVxQixRQUFSUSxRQUFRLENBQUNDLElBQUQsRUFBb0M7QUFDeEQsUUFBSTtBQUNGLFlBQU1DLElBQUksR0FBRyxNQUFNLEtBQUtDLEdBQUwsQ0FBU0YsSUFBVCxDQUFuQjtBQUNBRyxNQUFBQSxPQUFPLENBQUNGLElBQVIsQ0FBYUEsSUFBSSxJQUFJLENBQXJCO0FBQ0QsS0FIRCxDQUdFLE9BQU9HLEdBQVAsRUFBWTtBQUNaLFVBQUlBLEdBQUcsWUFBWXRCLElBQW5CLEVBQXlCO0FBQ3ZCcUIsUUFBQUEsT0FBTyxDQUFDRixJQUFSLENBQWFHLEdBQUcsQ0FBQ25CLElBQWpCO0FBQ0Q7O0FBRUQsV0FBS0ksT0FBTCxDQUFhZ0IsSUFBYixDQUFrQkQsR0FBRyxDQUFDRSxPQUF0QjtBQUNBSCxNQUFBQSxPQUFPLENBQUNGLElBQVIsQ0FBYSxDQUFiO0FBQ0Q7QUFDRjs7QUFFRE0sRUFBQUEsR0FBRyxDQUFDQyxHQUFELEVBQW9CO0FBQ3JCLFFBQUksS0FBS25CLE9BQUwsQ0FBYW9CLFVBQWpCLEVBQTZCO0FBQzNCLFdBQUtwQixPQUFMLENBQWFxQixLQUFiO0FBQ0Q7O0FBRURQLElBQUFBLE9BQU8sQ0FBQ1EsTUFBUixDQUFlQyxLQUFmLENBQXFCSixHQUFHLEdBQUcsSUFBM0I7QUFDRCxHQXhDd0MsQ0EwQ3pDOzs7QUExQ3lDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbG9nZ2VyIH0gZnJvbSAnQGp1anVsZWdvL2ppbGwtY29yZSc7XG5pbXBvcnQgeWFyZ3MgZnJvbSAneWFyZ3MnO1xuXG5pbXBvcnQgeyB0cmFuc3BvcnQgfSBmcm9tICcuL2xvZ2dlcic7XG5cbi8vIEV4cG9ydFxuZXhwb3J0IHR5cGUgQXdhaXRhYmxlPFQ+ID0gVCB8IFByb21pc2VMaWtlPFQ+O1xuZXhwb3J0IHR5cGUgQXJndW1lbnRzPEE+ID0geWFyZ3MuQXJndW1lbnRzPEE+ICYgeyAnLS0nOiByZWFkb25seSAoc3RyaW5nIHwgbnVtYmVyKVtdIH07XG5leHBvcnQgdHlwZSBCdWlsZGVyPFQsIEEgPSBUPiA9ICh5YXJnczogeWFyZ3MuQXJndjxUPikgPT4geWFyZ3MuQXJndjxBPjtcblxuLy8gRXhjZXB0aW9uc1xuZXhwb3J0IGNsYXNzIEV4aXQgZXh0ZW5kcyBFcnJvciB7XG4gIC8vIENvbnN0cnVjdG9yXG4gIGNvbnN0cnVjdG9yKHJlYWRvbmx5IGNvZGUgPSAxKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxufVxuXG4vLyBDb21tYW5kXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQ29tbWFuZDxBID0gdW5rbm93bj4ge1xuICAvLyBBdHRyaWJ1dGVzXG4gIHJlYWRvbmx5IGxvZ2dlciA9IGxvZ2dlcjtcbiAgcmVhZG9ubHkgc3Bpbm5lciA9IHRyYW5zcG9ydC5zcGlubmVyO1xuXG4gIC8vIE1ldGhvZHNcbiAgcHJvdGVjdGVkIGFic3RyYWN0IGRlZmluZTxULCBVPihidWlsZGVyOiBCdWlsZGVyPFQsIFU+KTogQnVpbGRlcjxULCBVICYgQT47XG4gIHByb3RlY3RlZCBhYnN0cmFjdCBydW4oYXJnczogQXJndW1lbnRzPEE+KTogQXdhaXRhYmxlPG51bWJlciB8IHZvaWQ+O1xuXG4gIHNldHVwPFQ+KHlhcmdzOiB5YXJncy5Bcmd2PFQ+KTogeWFyZ3MuQXJndjxUPiB7XG4gICAgeWFyZ3MuY29tbWFuZDxBPihcbiAgICAgIHRoaXMubmFtZSxcbiAgICAgIHRoaXMuZGVzY3JpcHRpb24sXG4gICAgICAoeSkgPT4gdGhpcy5kZWZpbmUoXyA9PiBfKSh5KSxcbiAgICAgIChhKSA9PiB0aGlzLl93cmFwcGVyKGEgYXMgQXJndW1lbnRzPEE+KVxuICAgICk7XG5cbiAgICByZXR1cm4geWFyZ3M7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIF93cmFwcGVyKGFyZ3M6IEFyZ3VtZW50czxBPik6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBleGl0ID0gYXdhaXQgdGhpcy5ydW4oYXJncyk7XG4gICAgICBwcm9jZXNzLmV4aXQoZXhpdCA/PyAwKTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGlmIChlcnIgaW5zdGFuY2VvZiBFeGl0KSB7XG4gICAgICAgIHByb2Nlc3MuZXhpdChlcnIuY29kZSk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuc3Bpbm5lci5mYWlsKGVyci5tZXNzYWdlKTtcbiAgICAgIHByb2Nlc3MuZXhpdCgxKTtcbiAgICB9XG4gIH1cblxuICBsb2cobXNnOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5zcGlubmVyLmlzU3Bpbm5pbmcpIHtcbiAgICAgIHRoaXMuc3Bpbm5lci5jbGVhcigpO1xuICAgIH1cblxuICAgIHByb2Nlc3Muc3Rkb3V0LndyaXRlKG1zZyArICdcXG4nKTtcbiAgfVxuXG4gIC8vIFByb3BlcnRpZXNcbiAgYWJzdHJhY3QgZ2V0IG5hbWUoKTogc3RyaW5nIHwgcmVhZG9ubHkgc3RyaW5nW107XG4gIGFic3RyYWN0IGdldCBkZXNjcmlwdGlvbigpOiBzdHJpbmc7XG59Il0sImZpbGUiOiJjb21tYW5kLmpzIn0=
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { Workspace } from '@jujulego/jill-core';
|
|
2
|
-
import { Filter } from './filter';
|
|
3
|
-
export declare class AffectedFilter extends Filter {
|
|
4
|
-
readonly format: string;
|
|
5
|
-
readonly fallback: string;
|
|
6
|
-
readonly sort?: string | undefined;
|
|
7
|
-
constructor(format: string, fallback: string, sort?: string | undefined);
|
|
8
|
-
private _formatRevision;
|
|
9
|
-
test(workspace: Workspace): Promise<boolean>;
|
|
10
|
-
}
|