@jujulego/jill 1.1.18 → 1.2.1

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.
Files changed (70) hide show
  1. package/dist/commands/each.command.d.ts +2 -3
  2. package/dist/commands/each.command.d.ts.map +1 -0
  3. package/dist/commands/each.command.js +147 -59
  4. package/dist/commands/each.command.js.map +1 -0
  5. package/dist/commands/info.command.d.ts +1 -2
  6. package/dist/commands/info.command.d.ts.map +1 -0
  7. package/dist/commands/info.command.js +146 -51
  8. package/dist/commands/info.command.js.map +1 -0
  9. package/dist/commands/list.command.d.ts +2 -3
  10. package/dist/commands/list.command.d.ts.map +1 -0
  11. package/dist/commands/list.command.js +134 -60
  12. package/dist/commands/list.command.js.map +1 -0
  13. package/dist/commands/run.command.d.ts +2 -3
  14. package/dist/commands/run.command.d.ts.map +1 -0
  15. package/dist/commands/run.command.js +77 -26
  16. package/dist/commands/run.command.js.map +1 -0
  17. package/dist/core.plugin.d.ts +2 -0
  18. package/dist/core.plugin.d.ts.map +1 -0
  19. package/dist/core.plugin.js +22 -0
  20. package/dist/core.plugin.js.map +1 -0
  21. package/dist/index.d.ts.map +1 -0
  22. package/dist/index.js +1 -1
  23. package/dist/index.js.map +1 -0
  24. package/dist/main.d.ts.map +1 -0
  25. package/dist/main.js +53 -36
  26. package/dist/main.js.map +1 -0
  27. package/dist/task-logger.d.ts.map +1 -0
  28. package/dist/task-logger.js +27 -17
  29. package/dist/task-logger.js.map +1 -0
  30. package/package.json +35 -36
  31. package/dist/base.command.d.ts +0 -8
  32. package/dist/base.command.js +0 -33
  33. package/dist/command.d.ts +0 -21
  34. package/dist/command.js +0 -69
  35. package/dist/filters/affected.d.ts +0 -10
  36. package/dist/filters/affected.js +0 -80
  37. package/dist/filters/filter.d.ts +0 -8
  38. package/dist/filters/filter.js +0 -36
  39. package/dist/filters/index.d.ts +0 -2
  40. package/dist/filters/index.js +0 -22
  41. package/dist/logger.d.ts +0 -15
  42. package/dist/logger.js +0 -99
  43. package/dist/myr/commands/kill.command.d.ts +0 -11
  44. package/dist/myr/commands/kill.command.js +0 -52
  45. package/dist/myr/commands/list.command.d.ts +0 -18
  46. package/dist/myr/commands/list.command.js +0 -127
  47. package/dist/myr/commands/logs.command.d.ts +0 -11
  48. package/dist/myr/commands/logs.command.js +0 -83
  49. package/dist/myr/commands/spawn.command.d.ts +0 -11
  50. package/dist/myr/commands/spawn.command.js +0 -45
  51. package/dist/myr/commands/stop.command.d.ts +0 -7
  52. package/dist/myr/commands/stop.command.js +0 -43
  53. package/dist/myr/myr-client.d.ts +0 -22
  54. package/dist/myr/myr-client.js +0 -234
  55. package/dist/myr/myr.command.d.ts +0 -8
  56. package/dist/myr/myr.command.js +0 -46
  57. package/dist/myr/myr.process.d.ts +0 -1
  58. package/dist/myr/myr.process.js +0 -43
  59. package/dist/myr/watch.command.d.ts +0 -13
  60. package/dist/myr/watch.command.js +0 -87
  61. package/dist/pipeline.d.ts +0 -9
  62. package/dist/pipeline.js +0 -53
  63. package/dist/plugin.d.ts +0 -11
  64. package/dist/plugin.js +0 -40
  65. package/dist/project.command.d.ts +0 -13
  66. package/dist/project.command.js +0 -58
  67. package/dist/utils/cli-list.d.ts +0 -15
  68. package/dist/utils/cli-list.js +0 -87
  69. package/dist/workspace.command.d.ts +0 -12
  70. package/dist/workspace.command.js +0 -55
@@ -1,234 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.MyrClient = void 0;
7
-
8
- var _jillCore = require("@jujulego/jill-core");
9
-
10
- var _jillMyr = require("@jujulego/jill-myr");
11
-
12
- var _repeater = require("@repeaterjs/repeater");
13
-
14
- var _child_process = require("child_process");
15
-
16
- var _graphql = require("graphql");
17
-
18
- var _graphqlRequest = require("graphql-request");
19
-
20
- var _graphqlWs = require("graphql-ws");
21
-
22
- var _graphqlTag = _interopRequireDefault(require("graphql-tag"));
23
-
24
- var _path = _interopRequireDefault(require("path"));
25
-
26
- var _ws = _interopRequireDefault(require("ws"));
27
-
28
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
29
-
30
- 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; }
31
-
32
- // Class
33
- class MyrClient {
34
- // Attributes
35
- // Constructor
36
- constructor(project) {
37
- this.project = project;
38
-
39
- _defineProperty(this, "_logger", _jillCore.logger.child({
40
- context: MyrClient.name
41
- }));
42
-
43
- _defineProperty(this, "_endpoint", 'http://localhost:5001/graphql');
44
-
45
- _defineProperty(this, "_qclient", new _graphqlRequest.GraphQLClient(this._endpoint));
46
-
47
- _defineProperty(this, "_sclient", (0, _graphqlWs.createClient)({
48
- url: this._endpoint.replace(/^http/, 'ws'),
49
- webSocketImpl: _ws.default,
50
- lazy: true
51
- }));
52
- } // Methods
53
-
54
-
55
- async _autoStart(fn) {
56
- try {
57
- return await fn();
58
- } catch (error) {
59
- if (error.code !== 'ECONNREFUSED') throw error; // Start myr if connection impossible
60
-
61
- this._logger.verbose('Unable to connect to myr server, trying to start it');
62
-
63
- await this.start(); // Retry
64
-
65
- return await fn();
66
- }
67
- }
68
-
69
- _subscription(query, variables) {
70
- return new _repeater.Repeater((push, stop) => {
71
- this._sclient.subscribe({
72
- query: (0, _graphql.print)(query),
73
- variables
74
- }, {
75
- next(value) {
76
- push(value.data).then();
77
- },
78
-
79
- error(error) {
80
- stop(error);
81
- },
82
-
83
- complete() {
84
- stop();
85
- }
86
-
87
- });
88
- });
89
- }
90
-
91
- start() {
92
- const child = (0, _child_process.fork)(_path.default.resolve(__dirname, './myr.process'), [], {
93
- cwd: this.project.root,
94
- detached: true,
95
- stdio: ['ignore', 'pipe', 'pipe', 'ipc']
96
- }); // Transmit logs to logger
97
-
98
- child.stdout?.on('data', msg => {
99
- for (const line of msg.toString('utf-8').split('\n')) {
100
- if (!line) continue;
101
- const {
102
- level,
103
- message,
104
- ...meta
105
- } = JSON.parse(line);
106
-
107
- _jillCore.logger.log(level, message, meta);
108
- }
109
- });
110
- child.stderr?.on('data', msg => {
111
- _jillCore.logger.error(msg.toString('utf-8'));
112
- }); // Start server
113
-
114
- return new Promise((resolve, reject) => {
115
- child.on('message', msg => {
116
- if (msg === 'started') {
117
- resolve();
118
- } else {
119
- reject(msg);
120
- }
121
- });
122
- child.on('close', (code, signal) => {
123
- reject(new Error(`Myr process ended with code ${code} by signal ${signal}`));
124
- });
125
- child.send('start');
126
- });
127
- }
128
-
129
- async stop() {
130
- try {
131
- await this._qclient.request((0, _graphqlTag.default)`
132
- mutation Shutdown {
133
- shutdown
134
- }
135
- `);
136
- return true;
137
- } catch (error) {
138
- if (error.code !== 'ECONNREFUSED') throw error;
139
- return false;
140
- }
141
- }
142
-
143
- async tasks() {
144
- return await this._autoStart(async () => {
145
- const {
146
- tasks
147
- } = await this._qclient.request((0, _graphqlTag.default)`
148
- query Tasks {
149
- tasks {
150
- ...Task
151
- }
152
- }
153
-
154
- ${_jillMyr.TaskFragment}
155
- `);
156
- return tasks;
157
- });
158
- }
159
-
160
- async spawn(cwd, cmd, args = []) {
161
- return await this._autoStart(async () => {
162
- const {
163
- spawn
164
- } = await this._qclient.request((0, _graphqlTag.default)`
165
- mutation Spawn($cwd: String!, $cmd: String!, $args: [String!]!) {
166
- spawn(cwd: $cwd, cmd: $cmd, args: $args) {
167
- ...Task
168
- }
169
- }
170
-
171
- ${_jillMyr.TaskFragment}
172
- `, {
173
- cwd,
174
- cmd,
175
- args
176
- });
177
- return spawn;
178
- });
179
- }
180
-
181
- async spawnScript(wks, script, args = []) {
182
- return await this.spawn(wks.cwd, await wks.project.packageManager(), [script, ...args]);
183
- }
184
-
185
- async logs() {
186
- try {
187
- const res = await this._qclient.request((0, _graphqlTag.default)`
188
- query Logs {
189
- logs
190
- }
191
- `);
192
- return res.logs;
193
- } catch (error) {
194
- if (error.code !== 'ECONNREFUSED') throw error;
195
- return [];
196
- }
197
- }
198
-
199
- async *logs$() {
200
- try {
201
- for await (const {
202
- log
203
- } of this._subscription((0, _graphqlTag.default)`subscription Logs { log }`, {})) {
204
- yield log;
205
- }
206
- } catch (error) {
207
- if (error.code !== 'ECONNREFUSED') throw error;
208
- return;
209
- }
210
- }
211
-
212
- async kill(id) {
213
- return await this._autoStart(async () => {
214
- const {
215
- kill
216
- } = await this._qclient.request((0, _graphqlTag.default)`
217
- mutation Kill($id: ID!) {
218
- kill(id: $id) {
219
- ...Task
220
- }
221
- }
222
-
223
- ${_jillMyr.TaskFragment}
224
- `, {
225
- id
226
- });
227
- return kill;
228
- });
229
- }
230
-
231
- }
232
-
233
- exports.MyrClient = MyrClient;
234
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm15ci9teXItY2xpZW50LnRzIl0sIm5hbWVzIjpbIk15ckNsaWVudCIsImNvbnN0cnVjdG9yIiwicHJvamVjdCIsImxvZ2dlciIsImNoaWxkIiwiY29udGV4dCIsIm5hbWUiLCJHcmFwaFFMQ2xpZW50IiwiX2VuZHBvaW50IiwidXJsIiwicmVwbGFjZSIsIndlYlNvY2tldEltcGwiLCJXZWJTb2NrZXQiLCJsYXp5IiwiX2F1dG9TdGFydCIsImZuIiwiZXJyb3IiLCJjb2RlIiwiX2xvZ2dlciIsInZlcmJvc2UiLCJzdGFydCIsIl9zdWJzY3JpcHRpb24iLCJxdWVyeSIsInZhcmlhYmxlcyIsIlJlcGVhdGVyIiwicHVzaCIsInN0b3AiLCJfc2NsaWVudCIsInN1YnNjcmliZSIsIm5leHQiLCJ2YWx1ZSIsImRhdGEiLCJ0aGVuIiwiY29tcGxldGUiLCJwYXRoIiwicmVzb2x2ZSIsIl9fZGlybmFtZSIsImN3ZCIsInJvb3QiLCJkZXRhY2hlZCIsInN0ZGlvIiwic3Rkb3V0Iiwib24iLCJtc2ciLCJsaW5lIiwidG9TdHJpbmciLCJzcGxpdCIsImxldmVsIiwibWVzc2FnZSIsIm1ldGEiLCJKU09OIiwicGFyc2UiLCJsb2ciLCJzdGRlcnIiLCJQcm9taXNlIiwicmVqZWN0Iiwic2lnbmFsIiwiRXJyb3IiLCJzZW5kIiwiX3FjbGllbnQiLCJyZXF1ZXN0IiwidGFza3MiLCJUYXNrRnJhZ21lbnQiLCJzcGF3biIsImNtZCIsImFyZ3MiLCJzcGF3blNjcmlwdCIsIndrcyIsInNjcmlwdCIsInBhY2thZ2VNYW5hZ2VyIiwibG9ncyIsInJlcyIsImxvZ3MkIiwia2lsbCIsImlkIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7OztBQVVBO0FBQ08sTUFBTUEsU0FBTixDQUFnQjtBQUNyQjtBQVVBO0FBQ0FDLEVBQUFBLFdBQVcsQ0FDQUMsT0FEQSxFQUVUO0FBQUEsU0FE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O0FBQ2QsVUFBSUEsS0FBSyxDQUFDQyxJQUFOLEtBQWUsY0FBbkIsRUFBbUMsTUFBTUQsS0FBTjtBQUVuQyxhQUFPLEVBQVA7QUFDRDtBQUNGOztBQUVXLFNBQUx3RCxLQUFLLEdBQXdCO0FBQ2xDLFFBQUk7QUFDRixpQkFBVyxNQUFNO0FBQUVwQixRQUFBQTtBQUFGLE9BQWpCLElBQTRCLEtBQUsvQixhQUFMLENBQWlDLHdCQUFJLDJCQUFyQyxFQUFpRSxFQUFqRSxDQUE1QixFQUFrRztBQUNoRyxjQUFNK0IsR0FBTjtBQUNEO0FBQ0YsS0FKRCxDQUlFLE9BQU9wQyxLQUFQLEVBQWM7QUFDZCxVQUFJQSxLQUFLLENBQUNDLElBQU4sS0FBZSxjQUFuQixFQUFtQyxNQUFNRCxLQUFOO0FBRW5DO0FBQ0Q7QUFDRjs7QUFFUyxRQUFKeUQsSUFBSSxDQUFDQyxFQUFELEVBQXdDO0FBQ2hELFdBQU8sTUFBTSxLQUFLNUQsVUFBTCxDQUFnQixZQUFZO0FBQ3ZDLFlBQU07QUFBRTJELFFBQUFBO0FBQUYsVUFBVyxNQUFNLEtBQUtkLFFBQUwsQ0FBY0MsT0FBZCxDQUFrRCx3QkFBSTtBQUNuRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZRSxxQkFBYTtBQUN6QixPQVI2QixFQVFwQjtBQUFFWSxRQUFBQTtBQUFGLE9BUm9CLENBQXZCO0FBVUEsYUFBT0QsSUFBUDtBQUNELEtBWlksQ0FBYjtBQWFEOztBQXJMb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBsb2dnZXIsIFByb2plY3QsIFdvcmtzcGFjZSB9IGZyb20gJ0BqdWp1bGVnby9qaWxsLWNvcmUnO1xuaW1wb3J0IHsgU3Bhd25BcmdzLCBUYXNrLCBUYXNrRnJhZ21lbnQgfSBmcm9tICdAanVqdWxlZ28vamlsbC1teXInO1xuaW1wb3J0IHsgUmVwZWF0ZXIgfSBmcm9tICdAcmVwZWF0ZXJqcy9yZXBlYXRlcic7XG5pbXBvcnQgeyBmb3JrIH0gZnJvbSAnY2hpbGRfcHJvY2Vzcyc7XG5pbXBvcnQgeyBEb2N1bWVudE5vZGUsIHByaW50IH0gZnJvbSAnZ3JhcGhxbCc7XG5pbXBvcnQgeyBHcmFwaFFMQ2xpZW50IH0gZnJvbSAnZ3JhcGhxbC1yZXF1ZXN0JztcbmltcG9ydCB7IGNyZWF0ZUNsaWVudCB9IGZyb20gJ2dyYXBocWwtd3MnO1xuaW1wb3J0IGdxbCBmcm9tICdncmFwaHFsLXRhZyc7XG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCBXZWJTb2NrZXQgZnJvbSAnd3MnO1xuXG5cbi8vIFR5cGVzXG50eXBlIElMb2cgPSBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiAmIHtcbiAgLy8gQXR0cmlidXRlc1xuICBsZXZlbDogc3RyaW5nO1xuICBtZXNzYWdlOiBzdHJpbmc7XG59O1xuXG4vLyBDbGFzc1xuZXhwb3J0IGNsYXNzIE15ckNsaWVudCB7XG4gIC8vIEF0dHJpYnV0ZXNcbiAgcHJpdmF0ZSByZWFkb25seSBfbG9nZ2VyID0gbG9nZ2VyLmNoaWxkKHsgY29udGV4dDogTXlyQ2xpZW50Lm5hbWUgfSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2VuZHBvaW50ID0gJ2h0dHA6Ly9sb2NhbGhvc3Q6NTAwMS9ncmFwaHFsJztcbiAgcHJpdmF0ZSByZWFkb25seSBfcWNsaWVudCA9IG5ldyBHcmFwaFFMQ2xpZW50KHRoaXMuX2VuZHBvaW50KTtcbiAgcHJpdmF0ZSByZWFkb25seSBfc2NsaWVudCA9IGNyZWF0ZUNsaWVudCh7XG4gICAgdXJsOiB0aGlzLl9lbmRwb2ludC5yZXBsYWNlKC9eaHR0cC8sICd3cycpLFxuICAgIHdlYlNvY2tldEltcGw6IFdlYlNvY2tldCxcbiAgICBsYXp5OiB0cnVlXG4gIH0pO1xuXG4gIC8vIENvbnN0cnVjdG9yXG4gIGNvbnN0cnVjdG9yKFxuICAgIHJlYWRvbmx5IHByb2plY3Q6IFByb2plY3QsXG4gICkge31cblxuICAvLyBNZXRob2RzXG4gIHByb3RlY3RlZCBhc3luYyBfYXV0b1N0YXJ0PFQ+KGZuOiAoKSA9PiBQcm9taXNlPFQ+KTogUHJvbWlzZTxUPiB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBhd2FpdCBmbigpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBpZiAoZXJyb3IuY29kZSAhPT0gJ0VDT05OUkVGVVNFRCcpIHRocm93IGVycm9yO1xuXG4gICAgICAvLyBTdGFydCBteXIgaWYgY29ubmVjdGlvbiBpbXBvc3NpYmxlXG4gICAgICB0aGlzLl9sb2dnZXIudmVyYm9zZSgnVW5hYmxlIHRvIGNvbm5lY3QgdG8gbXlyIHNlcnZlciwgdHJ5aW5nIHRvIHN0YXJ0IGl0Jyk7XG4gICAgICBhd2FpdCB0aGlzLnN0YXJ0KCk7XG5cbiAgICAgIC8vIFJldHJ5XG4gICAgICByZXR1cm4gYXdhaXQgZm4oKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgX3N1YnNjcmlwdGlvbjxUPihxdWVyeTogRG9jdW1lbnROb2RlLCB2YXJpYWJsZXM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+KTogUmVwZWF0ZXI8VD4ge1xuICAgIHJldHVybiBuZXcgUmVwZWF0ZXI8VD4oKHB1c2gsIHN0b3ApID0+IHtcbiAgICAgIHRoaXMuX3NjbGllbnQuc3Vic2NyaWJlPFQ+KHsgcXVlcnk6IHByaW50KHF1ZXJ5KSwgdmFyaWFibGVzIH0sIHtcbiAgICAgICAgbmV4dCh2YWx1ZSkge1xuICAgICAgICAgIHB1c2godmFsdWUuZGF0YSEpLnRoZW4oKTtcbiAgICAgICAgfSxcbiAgICAgICAgZXJyb3IoZXJyb3IpIHtcbiAgICAgICAgICBzdG9wKGVycm9yKTtcbiAgICAgICAgfSxcbiAgICAgICAgY29tcGxldGUoKSB7XG4gICAgICAgICAgc3RvcCgpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIHN0YXJ0KCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGNoaWxkID0gZm9yayhwYXRoLnJlc29sdmUoX19kaXJuYW1lLCAnLi9teXIucHJvY2VzcycpLCBbXSwge1xuICAgICAgY3dkOiB0aGlzLnByb2plY3Qucm9vdCxcbiAgICAgIGRldGFjaGVkOiB0cnVlLFxuICAgICAgc3RkaW86IFsnaWdub3JlJywgJ3BpcGUnLCAncGlwZScsICdpcGMnXSxcbiAgICB9KTtcblxuICAgIC8vIFRyYW5zbWl0IGxvZ3MgdG8gbG9nZ2VyXG4gICAgY2hpbGQuc3Rkb3V0Py5vbignZGF0YScsIChtc2c6IEJ1ZmZlcikgPT4ge1xuICAgICAgZm9yIChjb25zdCBsaW5lIG9mIG1zZy50b1N0cmluZygndXRmLTgnKS5zcGxpdCgnXFxuJykpIHtcbiAgICAgICAgaWYgKCFsaW5lKSBjb250aW51ZTtcblxuICAgICAgICBjb25zdCB7IGxldmVsLCBtZXNzYWdlLCAuLi5tZXRhIH0gPSBKU09OLnBhcnNlKGxpbmUpIGFzIElMb2c7XG4gICAgICAgIGxvZ2dlci5sb2cobGV2ZWwsIG1lc3NhZ2UsIG1ldGEpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgY2hpbGQuc3RkZXJyPy5vbignZGF0YScsIChtc2c6IEJ1ZmZlcikgPT4ge1xuICAgICAgbG9nZ2VyLmVycm9yKG1zZy50b1N0cmluZygndXRmLTgnKSk7XG4gICAgfSk7XG5cbiAgICAvLyBTdGFydCBzZXJ2ZXJcbiAgICByZXR1cm4gbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgY2hpbGQub24oJ21lc3NhZ2UnLCAobXNnOiAnc3RhcnRlZCcgfCBFcnJvcikgPT4ge1xuICAgICAgICBpZiAobXNnID09PSAnc3RhcnRlZCcpIHtcbiAgICAgICAgICByZXNvbHZlKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmVqZWN0KG1zZyk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICBjaGlsZC5vbignY2xvc2UnLCAoY29kZSwgc2lnbmFsKSA9PiB7XG4gICAgICAgIHJlamVjdChuZXcgRXJyb3IoYE15ciBwcm9jZXNzIGVuZGVkIHdpdGggY29kZSAke2NvZGV9IGJ5IHNpZ25hbCAke3NpZ25hbH1gKSk7XG4gICAgICB9KTtcblxuICAgICAgY2hpbGQuc2VuZCgnc3RhcnQnKTtcbiAgICB9KTtcbiAgfVxuXG4gIGFzeW5jIHN0b3AoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHRoaXMuX3FjbGllbnQucmVxdWVzdChncWxgXG4gICAgICAgIG11dGF0aW9uIFNodXRkb3duIHtcbiAgICAgICAgICAgIHNodXRkb3duXG4gICAgICAgIH1cbiAgICBgKTtcblxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGlmIChlcnJvci5jb2RlICE9PSAnRUNPTk5SRUZVU0VEJykgdGhyb3cgZXJyb3I7XG5cbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBhc3luYyB0YXNrcygpOiBQcm9taXNlPFRhc2tbXT4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLl9hdXRvU3RhcnQoYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgeyB0YXNrcyB9ID0gYXdhaXQgdGhpcy5fcWNsaWVudC5yZXF1ZXN0PHsgdGFza3M6IFRhc2tbXSB9PihncWxgXG4gICAgICAgICAgcXVlcnkgVGFza3Mge1xuICAgICAgICAgICAgICB0YXNrcyB7XG4gICAgICAgICAgICAgICAgICAuLi5UYXNrXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAke1Rhc2tGcmFnbWVudH1cbiAgICAgIGApO1xuXG4gICAgICByZXR1cm4gdGFza3M7XG4gICAgfSk7XG4gIH1cblxuICBhc3luYyBzcGF3bihjd2Q6IHN0cmluZywgY21kOiBzdHJpbmcsIGFyZ3M6IHN0cmluZ1tdID0gW10pOiBQcm9taXNlPFRhc2s+IHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5fYXV0b1N0YXJ0KGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHsgc3Bhd24gfSA9IGF3YWl0IHRoaXMuX3FjbGllbnQucmVxdWVzdDx7IHNwYXduOlRhc2sgfSxTcGF3bkFyZ3M+KGdxbGBcbiAgICAgICAgICBtdXRhdGlvbiBTcGF3bigkY3dkOiBTdHJpbmchLCAkY21kOiBTdHJpbmchLCAkYXJnczogW1N0cmluZyFdISkge1xuICAgICAgICAgICAgICBzcGF3bihjd2Q6ICRjd2QsIGNtZDogJGNtZCwgYXJnczogJGFyZ3MpIHtcbiAgICAgICAgICAgICAgICAgIC4uLlRhc2tcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgICR7VGFza0ZyYWdtZW50fVxuICAgICAgYCwgeyBjd2QsIGNtZCwgYXJncyB9KTtcblxuICAgICAgcmV0dXJuIHNwYXduO1xuICAgIH0pO1xuICB9XG5cbiAgYXN5bmMgc3Bhd25TY3JpcHQod2tzOiBXb3Jrc3BhY2UsIHNjcmlwdDogc3RyaW5nLCBhcmdzOiBzdHJpbmdbXSA9IFtdKTogUHJvbWlzZTxUYXNrPiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuc3Bhd24od2tzLmN3ZCwgYXdhaXQgd2tzLnByb2plY3QucGFja2FnZU1hbmFnZXIoKSwgW3NjcmlwdCwgLi4uYXJnc10pO1xuICB9XG5cbiAgYXN5bmMgbG9ncygpOiBQcm9taXNlPGFueVtdPiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IHRoaXMuX3FjbGllbnQucmVxdWVzdDx7IGxvZ3M6IGFueVtdIH0+KGdxbGBcbiAgICAgICAgICBxdWVyeSBMb2dzIHtcbiAgICAgICAgICAgICAgbG9nc1xuICAgICAgICAgIH1cbiAgICAgIGApO1xuXG4gICAgICByZXR1cm4gcmVzLmxvZ3M7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGlmIChlcnJvci5jb2RlICE9PSAnRUNPTk5SRUZVU0VEJykgdGhyb3cgZXJyb3I7XG5cbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG4gIH1cblxuICBhc3luYyogbG9ncyQoKTogQXN5bmNHZW5lcmF0b3I8YW55PiB7XG4gICAgdHJ5IHtcbiAgICAgIGZvciBhd2FpdCAoY29uc3QgeyBsb2cgfSBvZiB0aGlzLl9zdWJzY3JpcHRpb248eyBsb2c6IGFueSB9PihncWxgc3Vic2NyaXB0aW9uIExvZ3MgeyBsb2cgfWAsIHt9KSkge1xuICAgICAgICB5aWVsZCBsb2c7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGlmIChlcnJvci5jb2RlICE9PSAnRUNPTk5SRUZVU0VEJykgdGhyb3cgZXJyb3I7XG5cbiAgICAgIHJldHVybjtcbiAgICB9XG4gIH1cblxuICBhc3luYyBraWxsKGlkOiBzdHJpbmcpOiBQcm9taXNlPFRhc2sgfCB1bmRlZmluZWQ+IHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5fYXV0b1N0YXJ0KGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHsga2lsbCB9ID0gYXdhaXQgdGhpcy5fcWNsaWVudC5yZXF1ZXN0PHsga2lsbDogVGFzayB8IHVuZGVmaW5lZCB9PihncWxgXG4gICAgICAgICAgbXV0YXRpb24gS2lsbCgkaWQ6IElEISkge1xuICAgICAgICAgICAgICBraWxsKGlkOiAkaWQpIHtcbiAgICAgICAgICAgICAgICAgIC4uLlRhc2tcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgICR7VGFza0ZyYWdtZW50fVxuICAgICAgYCwgeyBpZCB9KTtcblxuICAgICAgcmV0dXJuIGtpbGw7XG4gICAgfSk7XG4gIH1cbn0iXSwiZmlsZSI6Im15ci9teXItY2xpZW50LmpzIn0=
@@ -1,8 +0,0 @@
1
- import { Builder, Command } from '../command';
2
- export declare class MyrCommand extends Command {
3
- readonly name = "myr";
4
- readonly description = "Interact with myr server";
5
- readonly commands: readonly Command[];
6
- protected define<T, U>(builder: Builder<T, U>): Builder<T, U>;
7
- protected run(): number;
8
- }
@@ -1,46 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.MyrCommand = void 0;
7
-
8
- var _command = require("../command");
9
-
10
- var _kill = require("./commands/kill.command");
11
-
12
- var _list = require("./commands/list.command");
13
-
14
- var _logs = require("./commands/logs.command");
15
-
16
- var _spawn = require("./commands/spawn.command");
17
-
18
- var _stop = require("./commands/stop.command");
19
-
20
- 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; }
21
-
22
- // Command
23
- class MyrCommand extends _command.Command {
24
- constructor(...args) {
25
- super(...args);
26
-
27
- _defineProperty(this, "name", 'myr');
28
-
29
- _defineProperty(this, "description", 'Interact with myr server');
30
-
31
- _defineProperty(this, "commands", [new _kill.KillCommand(), new _list.ListCommand(), new _logs.LogsCommand(), new _spawn.SpawnCommand(), new _stop.StopCommand()]);
32
- }
33
-
34
- // Methods
35
- define(builder) {
36
- return yargs => this.commands.reduce((y, cmd) => cmd.setup(y), builder(yargs));
37
- }
38
-
39
- run() {
40
- return 0;
41
- }
42
-
43
- }
44
-
45
- exports.MyrCommand = MyrCommand;
46
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm15ci9teXIuY29tbWFuZC50cyJdLCJuYW1lcyI6WyJNeXJDb21tYW5kIiwiQ29tbWFuZCIsIktpbGxDb21tYW5kIiwiTGlzdENvbW1hbmQiLCJMb2dzQ29tbWFuZCIsIlNwYXduQ29tbWFuZCIsIlN0b3BDb21tYW5kIiwiZGVmaW5lIiwiYnVpbGRlciIsInlhcmdzIiwiY29tbWFuZHMiLCJyZWR1Y2UiLCJ5IiwiY21kIiwic2V0dXAiLCJydW4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7OztBQUVBO0FBQ08sTUFBTUEsVUFBTixTQUF5QkMsZ0JBQXpCLENBQWlDO0FBQUE7QUFBQTs7QUFBQSxrQ0FFdEIsS0FGc0I7O0FBQUEseUNBR2YsMEJBSGU7O0FBQUEsc0NBS0UsQ0FDdEMsSUFBSUMsaUJBQUosRUFEc0MsRUFFdEMsSUFBSUMsaUJBQUosRUFGc0MsRUFHdEMsSUFBSUMsaUJBQUosRUFIc0MsRUFJdEMsSUFBSUMsbUJBQUosRUFKc0MsRUFLdEMsSUFBSUMsaUJBQUosRUFMc0MsQ0FMRjtBQUFBOztBQWF0QztBQUNVQyxFQUFBQSxNQUFNLENBQU9DLE9BQVAsRUFBOEM7QUFDNUQsV0FBT0MsS0FBSyxJQUFJLEtBQUtDLFFBQUwsQ0FBY0MsTUFBZCxDQUFxQixDQUFDQyxDQUFELEVBQUlDLEdBQUosS0FBWUEsR0FBRyxDQUFDQyxLQUFKLENBQVVGLENBQVYsQ0FBakMsRUFBK0NKLE9BQU8sQ0FBQ0MsS0FBRCxDQUF0RCxDQUFoQjtBQUNEOztBQUVTTSxFQUFBQSxHQUFHLEdBQVc7QUFDdEIsV0FBTyxDQUFQO0FBQ0Q7O0FBcEJxQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJ1aWxkZXIsIENvbW1hbmQgfSBmcm9tICcuLi9jb21tYW5kJztcbmltcG9ydCB7IEtpbGxDb21tYW5kIH0gZnJvbSAnLi9jb21tYW5kcy9raWxsLmNvbW1hbmQnO1xuaW1wb3J0IHsgTGlzdENvbW1hbmQgfSBmcm9tICcuL2NvbW1hbmRzL2xpc3QuY29tbWFuZCc7XG5pbXBvcnQgeyBMb2dzQ29tbWFuZCB9IGZyb20gJy4vY29tbWFuZHMvbG9ncy5jb21tYW5kJztcbmltcG9ydCB7IFNwYXduQ29tbWFuZCB9IGZyb20gJy4vY29tbWFuZHMvc3Bhd24uY29tbWFuZCc7XG5pbXBvcnQgeyBTdG9wQ29tbWFuZCB9IGZyb20gJy4vY29tbWFuZHMvc3RvcC5jb21tYW5kJztcblxuLy8gQ29tbWFuZFxuZXhwb3J0IGNsYXNzIE15ckNvbW1hbmQgZXh0ZW5kcyBDb21tYW5kIHtcbiAgLy8gUHJvcGVydGllc1xuICByZWFkb25seSBuYW1lID0gJ215cic7XG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uID0gJ0ludGVyYWN0IHdpdGggbXlyIHNlcnZlcic7XG5cbiAgcmVhZG9ubHkgY29tbWFuZHM6IHJlYWRvbmx5IENvbW1hbmRbXSA9IFtcbiAgICBuZXcgS2lsbENvbW1hbmQoKSxcbiAgICBuZXcgTGlzdENvbW1hbmQoKSxcbiAgICBuZXcgTG9nc0NvbW1hbmQoKSxcbiAgICBuZXcgU3Bhd25Db21tYW5kKCksXG4gICAgbmV3IFN0b3BDb21tYW5kKCksXG4gIF07XG5cbiAgLy8gTWV0aG9kc1xuICBwcm90ZWN0ZWQgZGVmaW5lPFQsIFU+KGJ1aWxkZXI6IEJ1aWxkZXI8VCwgVT4pOiBCdWlsZGVyPFQsIFU+IHtcbiAgICByZXR1cm4geWFyZ3MgPT4gdGhpcy5jb21tYW5kcy5yZWR1Y2UoKHksIGNtZCkgPT4gY21kLnNldHVwKHkpLCBidWlsZGVyKHlhcmdzKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgcnVuKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIDA7XG4gIH1cbn0iXSwiZmlsZSI6Im15ci9teXIuY29tbWFuZC5qcyJ9
@@ -1 +0,0 @@
1
- export {};
@@ -1,43 +0,0 @@
1
- "use strict";
2
-
3
- var _jillCore = require("@jujulego/jill-core");
4
-
5
- var _jillMyr = require("@jujulego/jill-myr");
6
-
7
- var _winston = _interopRequireWildcard(require("winston"));
8
-
9
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
10
-
11
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
12
-
13
- // Setup logger
14
- const trans = new _winston.default.transports.Console({
15
- level: 'debug',
16
- format: _winston.format.combine(_winston.format.timestamp({
17
- format: () => new Date().toLocaleString()
18
- }), _winston.format.errors(), _winston.format.json()),
19
- consoleWarnLevels: [],
20
- stderrLevels: []
21
- });
22
-
23
- _jillCore.logger.add(trans); // Start server when parent is ready
24
-
25
-
26
- process.once('message', async () => {
27
- try {
28
- // Start server
29
- const server = await _jillMyr.MyrServer.createServer();
30
- await server.start();
31
-
32
- _jillCore.logger.remove(trans);
33
-
34
- process.send?.('started');
35
- } catch (error) {
36
- process.send?.({
37
- name: error.name,
38
- message: error.message
39
- });
40
- process.exit(1);
41
- }
42
- });
43
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm15ci9teXIucHJvY2Vzcy50cyJdLCJuYW1lcyI6WyJ0cmFucyIsIndpbnN0b24iLCJ0cmFuc3BvcnRzIiwiQ29uc29sZSIsImxldmVsIiwiZm9ybWF0IiwiY29tYmluZSIsInRpbWVzdGFtcCIsIkRhdGUiLCJ0b0xvY2FsZVN0cmluZyIsImVycm9ycyIsImpzb24iLCJjb25zb2xlV2FybkxldmVscyIsInN0ZGVyckxldmVscyIsImxvZ2dlciIsImFkZCIsInByb2Nlc3MiLCJvbmNlIiwic2VydmVyIiwiTXlyU2VydmVyIiwiY3JlYXRlU2VydmVyIiwic3RhcnQiLCJyZW1vdmUiLCJzZW5kIiwiZXJyb3IiLCJuYW1lIiwibWVzc2FnZSIsImV4aXQiXSwibWFwcGluZ3MiOiI7O0FBQUE7O0FBQ0E7O0FBQ0E7Ozs7OztBQUVBO0FBQ0EsTUFBTUEsS0FBSyxHQUFHLElBQUlDLGlCQUFRQyxVQUFSLENBQW1CQyxPQUF2QixDQUErQjtBQUMzQ0MsRUFBQUEsS0FBSyxFQUFFLE9BRG9DO0FBRTNDQyxFQUFBQSxNQUFNLEVBQUVBLGdCQUFPQyxPQUFQLENBQ05ELGdCQUFPRSxTQUFQLENBQWlCO0FBQUVGLElBQUFBLE1BQU0sRUFBRSxNQUFNLElBQUlHLElBQUosR0FBV0MsY0FBWDtBQUFoQixHQUFqQixDQURNLEVBRU5KLGdCQUFPSyxNQUFQLEVBRk0sRUFHTkwsZ0JBQU9NLElBQVAsRUFITSxDQUZtQztBQU8zQ0MsRUFBQUEsaUJBQWlCLEVBQUUsRUFQd0I7QUFRM0NDLEVBQUFBLFlBQVksRUFBRTtBQVI2QixDQUEvQixDQUFkOztBQVVBQyxpQkFBT0MsR0FBUCxDQUFXZixLQUFYLEUsQ0FFQTs7O0FBQ0FnQixPQUFPLENBQUNDLElBQVIsQ0FBYSxTQUFiLEVBQXdCLFlBQVk7QUFDbEMsTUFBSTtBQUNGO0FBQ0EsVUFBTUMsTUFBTSxHQUFHLE1BQU1DLG1CQUFVQyxZQUFWLEVBQXJCO0FBQ0EsVUFBTUYsTUFBTSxDQUFDRyxLQUFQLEVBQU47O0FBRUFQLHFCQUFPUSxNQUFQLENBQWN0QixLQUFkOztBQUNBZ0IsSUFBQUEsT0FBTyxDQUFDTyxJQUFSLEdBQWUsU0FBZjtBQUNELEdBUEQsQ0FPRSxPQUFPQyxLQUFQLEVBQWM7QUFDZFIsSUFBQUEsT0FBTyxDQUFDTyxJQUFSLEdBQWU7QUFBRUUsTUFBQUEsSUFBSSxFQUFFRCxLQUFLLENBQUNDLElBQWQ7QUFBb0JDLE1BQUFBLE9BQU8sRUFBRUYsS0FBSyxDQUFDRTtBQUFuQyxLQUFmO0FBQ0FWLElBQUFBLE9BQU8sQ0FBQ1csSUFBUixDQUFhLENBQWI7QUFDRDtBQUNGLENBWkQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBsb2dnZXIgfSBmcm9tICdAanVqdWxlZ28vamlsbC1jb3JlJztcbmltcG9ydCB7IE15clNlcnZlciB9IGZyb20gJ0BqdWp1bGVnby9qaWxsLW15cic7XG5pbXBvcnQgd2luc3RvbiwgeyBmb3JtYXQgfSBmcm9tICd3aW5zdG9uJztcblxuLy8gU2V0dXAgbG9nZ2VyXG5jb25zdCB0cmFucyA9IG5ldyB3aW5zdG9uLnRyYW5zcG9ydHMuQ29uc29sZSh7XG4gIGxldmVsOiAnZGVidWcnLFxuICBmb3JtYXQ6IGZvcm1hdC5jb21iaW5lKFxuICAgIGZvcm1hdC50aW1lc3RhbXAoeyBmb3JtYXQ6ICgpID0+IG5ldyBEYXRlKCkudG9Mb2NhbGVTdHJpbmcoKSB9KSxcbiAgICBmb3JtYXQuZXJyb3JzKCksXG4gICAgZm9ybWF0Lmpzb24oKVxuICApLFxuICBjb25zb2xlV2FybkxldmVsczogW10sXG4gIHN0ZGVyckxldmVsczogW11cbn0pO1xubG9nZ2VyLmFkZCh0cmFucyk7XG5cbi8vIFN0YXJ0IHNlcnZlciB3aGVuIHBhcmVudCBpcyByZWFkeVxucHJvY2Vzcy5vbmNlKCdtZXNzYWdlJywgYXN5bmMgKCkgPT4ge1xuICB0cnkge1xuICAgIC8vIFN0YXJ0IHNlcnZlclxuICAgIGNvbnN0IHNlcnZlciA9IGF3YWl0IE15clNlcnZlci5jcmVhdGVTZXJ2ZXIoKTtcbiAgICBhd2FpdCBzZXJ2ZXIuc3RhcnQoKTtcblxuICAgIGxvZ2dlci5yZW1vdmUodHJhbnMpO1xuICAgIHByb2Nlc3Muc2VuZD8uKCdzdGFydGVkJyk7XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgcHJvY2Vzcy5zZW5kPy4oeyBuYW1lOiBlcnJvci5uYW1lLCBtZXNzYWdlOiBlcnJvci5tZXNzYWdlIH0pO1xuICAgIHByb2Nlc3MuZXhpdCgxKTtcbiAgfVxufSk7Il0sImZpbGUiOiJteXIvbXlyLnByb2Nlc3MuanMifQ==
@@ -1,13 +0,0 @@
1
- import { Arguments, Builder } from '../command';
2
- import { WorkspaceArgs, WorkspaceCommand } from '../workspace.command';
3
- export interface WatchArgs extends WorkspaceArgs {
4
- script: string;
5
- daemon: boolean;
6
- }
7
- export declare class WatchCommand extends WorkspaceCommand<WatchArgs> {
8
- readonly name = "watch <script>";
9
- readonly description = "Run script with watcher inside workspace and watch over deps";
10
- private spawnDepsTree;
11
- protected define<T, U>(builder: Builder<T, U>): Builder<T, U & WatchArgs>;
12
- protected run(args: Arguments<WatchArgs>): Promise<number>;
13
- }
@@ -1,87 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.WatchCommand = void 0;
7
-
8
- var _jillCore = require("@jujulego/jill-core");
9
-
10
- var _workspace = require("../workspace.command");
11
-
12
- var _myrClient = require("./myr-client");
13
-
14
- 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; }
15
-
16
- // Command
17
- class WatchCommand extends _workspace.WorkspaceCommand {
18
- constructor(...args) {
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');
24
- }
25
-
26
- // Methods
27
- async spawnDepsTree(myr, wks, set) {
28
- let count = 0;
29
-
30
- for await (const ws of (0, _jillCore.combine)(wks.dependencies(), wks.devDependencies())) {
31
- if (set.has(ws.cwd)) continue;
32
- set.add(ws.cwd); // Spawn dependencies
33
-
34
- count += await this.spawnDepsTree(myr, ws, set); // Spawn task
35
-
36
- const tsk = await myr.spawnScript(ws, 'watch');
37
- this.logger.log('info', `Task ${tsk.id} spawned`, {
38
- label: ws.name
39
- });
40
- count++;
41
- }
42
-
43
- return count;
44
- }
45
-
46
- define(builder) {
47
- return super.define(y => builder(y).positional('script', {
48
- type: 'string',
49
- demandOption: true
50
- }).option('daemon', {
51
- alias: 'd',
52
- boolean: true,
53
- default: false,
54
- desc: 'Run watch script also in background'
55
- }));
56
- }
57
-
58
- async run(args) {
59
- await super.run(args); // Spawn watch
60
-
61
- this.spinner.start('Spawning dependencies watch tasks');
62
- const myr = new _myrClient.MyrClient(this.project);
63
- const count = await this.spawnDepsTree(myr, this.workspace, new Set()); // Spawn task
64
-
65
- if (args.daemon) {
66
- this.spinner.start(`Spawning ${args.script} task`);
67
- const tsk = await myr.spawnScript(this.workspace, args.script, args['--']?.map(arg => arg.toString()));
68
- this.logger.log('info', `Task ${tsk.id} spawned`, {
69
- label: this.workspace.name
70
- });
71
- this.spinner.succeed(`${count + 1} watch tasks spawned`);
72
- return 0;
73
- } else {
74
- this.spinner.succeed(`${count} watch tasks spawned`);
75
- const tsk = await this.workspace.run(args.script, args['--']?.map(arg => arg.toString()), {
76
- buildDeps: 'none'
77
- });
78
- tsk.start();
79
- await tsk.waitFor('done', 'failed');
80
- return tsk.exitCode === 0 ? 0 : 1;
81
- }
82
- }
83
-
84
- }
85
-
86
- exports.WatchCommand = WatchCommand;
87
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm15ci93YXRjaC5jb21tYW5kLnRzIl0sIm5hbWVzIjpbIldhdGNoQ29tbWFuZCIsIldvcmtzcGFjZUNvbW1hbmQiLCJzcGF3bkRlcHNUcmVlIiwibXlyIiwid2tzIiwic2V0IiwiY291bnQiLCJ3cyIsImRlcGVuZGVuY2llcyIsImRldkRlcGVuZGVuY2llcyIsImhhcyIsImN3ZCIsImFkZCIsInRzayIsInNwYXduU2NyaXB0IiwibG9nZ2VyIiwibG9nIiwiaWQiLCJsYWJlbCIsIm5hbWUiLCJkZWZpbmUiLCJidWlsZGVyIiwieSIsInBvc2l0aW9uYWwiLCJ0eXBlIiwiZGVtYW5kT3B0aW9uIiwib3B0aW9uIiwiYWxpYXMiLCJib29sZWFuIiwiZGVmYXVsdCIsImRlc2MiLCJydW4iLCJhcmdzIiwic3Bpbm5lciIsInN0YXJ0IiwiTXlyQ2xpZW50IiwicHJvamVjdCIsIndvcmtzcGFjZSIsIlNldCIsImRhZW1vbiIsInNjcmlwdCIsIm1hcCIsImFyZyIsInRvU3RyaW5nIiwic3VjY2VlZCIsImJ1aWxkRGVwcyIsIndhaXRGb3IiLCJleGl0Q29kZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOztBQUdBOztBQUNBOzs7O0FBUUE7QUFDTyxNQUFNQSxZQUFOLFNBQTJCQywyQkFBM0IsQ0FBdUQ7QUFBQTtBQUFBOztBQUFBLGtDQUU1QyxnQkFGNEM7O0FBQUEseUNBR3JDLDhEQUhxQztBQUFBOztBQUs1RDtBQUMyQixRQUFiQyxhQUFhLENBQUNDLEdBQUQsRUFBaUJDLEdBQWpCLEVBQWlDQyxHQUFqQyxFQUFvRTtBQUM3RixRQUFJQyxLQUFLLEdBQUcsQ0FBWjs7QUFFQSxlQUFXLE1BQU1DLEVBQWpCLElBQXVCLHVCQUFRSCxHQUFHLENBQUNJLFlBQUosRUFBUixFQUE0QkosR0FBRyxDQUFDSyxlQUFKLEVBQTVCLENBQXZCLEVBQTJFO0FBQ3pFLFVBQUlKLEdBQUcsQ0FBQ0ssR0FBSixDQUFRSCxFQUFFLENBQUNJLEdBQVgsQ0FBSixFQUFxQjtBQUNyQk4sTUFB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Q0FBQ3FCLEtBQUo7QUFFQSxZQUFNckIsR0FBRyxDQUFDaUMsT0FBSixDQUFZLE1BQVosRUFBb0IsUUFBcEIsQ0FBTjtBQUNBLGFBQU9qQyxHQUFHLENBQUNrQyxRQUFKLEtBQWlCLENBQWpCLEdBQXFCLENBQXJCLEdBQXlCLENBQWhDO0FBQ0Q7QUFDRjs7QUEvRDJEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29tYmluZSwgV29ya3NwYWNlIH0gZnJvbSAnQGp1anVsZWdvL2ppbGwtY29yZSc7XG5cbmltcG9ydCB7IEFyZ3VtZW50cywgQnVpbGRlciB9IGZyb20gJy4uL2NvbW1hbmQnO1xuaW1wb3J0IHsgV29ya3NwYWNlQXJncywgV29ya3NwYWNlQ29tbWFuZCB9IGZyb20gJy4uL3dvcmtzcGFjZS5jb21tYW5kJztcbmltcG9ydCB7IE15ckNsaWVudCB9IGZyb20gJy4vbXlyLWNsaWVudCc7XG5cbi8vIFR5cGVzXG5leHBvcnQgaW50ZXJmYWNlIFdhdGNoQXJncyBleHRlbmRzIFdvcmtzcGFjZUFyZ3Mge1xuICBzY3JpcHQ6IHN0cmluZztcbiAgZGFlbW9uOiBib29sZWFuO1xufVxuXG4vLyBDb21tYW5kXG5leHBvcnQgY2xhc3MgV2F0Y2hDb21tYW5kIGV4dGVuZHMgV29ya3NwYWNlQ29tbWFuZDxXYXRjaEFyZ3M+IHtcbiAgLy8gQXR0cmlidXRlc1xuICByZWFkb25seSBuYW1lID0gJ3dhdGNoIDxzY3JpcHQ+JztcbiAgcmVhZG9ubHkgZGVzY3JpcHRpb24gPSAnUnVuIHNjcmlwdCB3aXRoIHdhdGNoZXIgaW5zaWRlIHdvcmtzcGFjZSBhbmQgd2F0Y2ggb3ZlciBkZXBzJztcblxuICAvLyBNZXRob2RzXG4gIHByaXZhdGUgYXN5bmMgc3Bhd25EZXBzVHJlZShteXI6IE15ckNsaWVudCwgd2tzOiBXb3Jrc3BhY2UsIHNldDogU2V0PHN0cmluZz4pOiBQcm9taXNlPG51bWJlcj4ge1xuICAgIGxldCBjb3VudCA9IDA7XG5cbiAgICBmb3IgYXdhaXQgKGNvbnN0IHdzIG9mIGNvbWJpbmUod2tzLmRlcGVuZGVuY2llcygpLCB3a3MuZGV2RGVwZW5kZW5jaWVzKCkpKSB7XG4gICAgICBpZiAoc2V0Lmhhcyh3cy5jd2QpKSBjb250aW51ZTtcbiAgICAgIHNldC5hZGQod3MuY3dkKTtcblxuICAgICAgLy8gU3Bhd24gZGVwZW5kZW5jaWVzXG4gICAgICBjb3VudCArPSBhd2FpdCB0aGlzLnNwYXduRGVwc1RyZWUobXlyLCB3cywgc2V0KTtcblxuICAgICAgLy8gU3Bhd24gdGFza1xuICAgICAgY29uc3QgdHNrID0gYXdhaXQgbXlyLnNwYXduU2NyaXB0KHdzLCAnd2F0Y2gnKTtcbiAgICAgIHRoaXMubG9nZ2VyLmxvZygnaW5mbycsIGBUYXNrICR7dHNrLmlkfSBzcGF3bmVkYCwgeyBsYWJlbDogd3MubmFtZSB9KTtcblxuICAgICAgY291bnQrKztcbiAgICB9XG5cbiAgICByZXR1cm4gY291bnQ7XG4gIH1cblxuICBwcm90ZWN0ZWQgZGVmaW5lPFQsIFU+KGJ1aWxkZXI6IEJ1aWxkZXI8VCwgVT4pOiBCdWlsZGVyPFQsIFUgJiBXYXRjaEFyZ3M+IHtcbiAgICByZXR1cm4gc3VwZXIuZGVmaW5lKHkgPT4gYnVpbGRlcih5KVxuICAgICAgLnBvc2l0aW9uYWwoJ3NjcmlwdCcsIHsgdHlwZTogJ3N0cmluZycsIGRlbWFuZE9wdGlvbjogdHJ1ZSB9KVxuICAgICAgLm9wdGlvbignZGFlbW9uJywge1xuICAgICAgICBhbGlhczogJ2QnLFxuICAgICAgICBib29sZWFuOiB0cnVlLFxuICAgICAgICBkZWZhdWx0OiBmYWxzZSxcbiAgICAgICAgZGVzYzogJ1J1biB3YXRjaCBzY3JpcHQgYWxzbyBpbiBiYWNrZ3JvdW5kJ1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIHJ1bihhcmdzOiBBcmd1bWVudHM8V2F0Y2hBcmdzPik6IFByb21pc2U8bnVtYmVyPiB7XG4gICAgYXdhaXQgc3VwZXIucnVuKGFyZ3MpO1xuXG4gICAgLy8gU3Bhd24gd2F0Y2hcbiAgICB0aGlzLnNwaW5uZXIuc3RhcnQoJ1NwYXduaW5nIGRlcGVuZGVuY2llcyB3YXRjaCB0YXNrcycpO1xuICAgIGNvbnN0IG15ciA9IG5ldyBNeXJDbGllbnQodGhpcy5wcm9qZWN0KTtcbiAgICBjb25zdCBjb3VudCA9IGF3YWl0IHRoaXMuc3Bhd25EZXBzVHJlZShteXIsIHRoaXMud29ya3NwYWNlLCBuZXcgU2V0KCkpO1xuXG4gICAgLy8gU3Bhd24gdGFza1xuICAgIGlmIChhcmdzLmRhZW1vbikge1xuICAgICAgdGhpcy5zcGlubmVyLnN0YXJ0KGBTcGF3bmluZyAke2FyZ3Muc2NyaXB0fSB0YXNrYCk7XG4gICAgICBjb25zdCB0c2sgPSBhd2FpdCBteXIuc3Bhd25TY3JpcHQodGhpcy53b3Jrc3BhY2UsIGFyZ3Muc2NyaXB0LCBhcmdzWyctLSddPy5tYXAoYXJnID0+IGFyZy50b1N0cmluZygpKSk7XG4gICAgICB0aGlzLmxvZ2dlci5sb2coJ2luZm8nLCBgVGFzayAke3Rzay5pZH0gc3Bhd25lZGAsIHsgbGFiZWw6IHRoaXMud29ya3NwYWNlLm5hbWUgfSk7XG4gICAgICB0aGlzLnNwaW5uZXIuc3VjY2VlZChgJHtjb3VudCArIDF9IHdhdGNoIHRhc2tzIHNwYXduZWRgKTtcblxuICAgICAgcmV0dXJuIDA7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc3Bpbm5lci5zdWNjZWVkKGAke2NvdW50fSB3YXRjaCB0YXNrcyBzcGF3bmVkYCk7XG5cbiAgICAgIGNvbnN0IHRzayA9IGF3YWl0IHRoaXMud29ya3NwYWNlLnJ1bihhcmdzLnNjcmlwdCwgYXJnc1snLS0nXT8ubWFwKGFyZyA9PiBhcmcudG9TdHJpbmcoKSksIHsgYnVpbGREZXBzOiAnbm9uZScgfSk7XG4gICAgICB0c2suc3RhcnQoKTtcblxuICAgICAgYXdhaXQgdHNrLndhaXRGb3IoJ2RvbmUnLCAnZmFpbGVkJyk7XG4gICAgICByZXR1cm4gdHNrLmV4aXRDb2RlID09PSAwID8gMCA6IDE7XG4gICAgfVxuICB9XG59Il0sImZpbGUiOiJteXIvd2F0Y2guY29tbWFuZC5qcyJ9
@@ -1,9 +0,0 @@
1
- import { Workspace } from '@jujulego/jill-core';
2
- import { Repeater } from '@repeaterjs/repeater';
3
- import { Filter } from './filters';
4
- export declare class Pipeline {
5
- private _filters;
6
- add(filter: Filter): void;
7
- private _test;
8
- filter(workspaces: AsyncGenerator<Workspace>): Repeater<Workspace>;
9
- }
package/dist/pipeline.js DELETED
@@ -1,53 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.Pipeline = void 0;
7
-
8
- var _repeater = require("@repeaterjs/repeater");
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; }
11
-
12
- // Class
13
- class Pipeline {
14
- constructor() {
15
- _defineProperty(this, "_filters", []);
16
- }
17
-
18
- // Methods
19
- add(filter) {
20
- this._filters.push(filter);
21
- }
22
-
23
- async _test(workspace) {
24
- for (const filter of this._filters) {
25
- const res = await filter.test(workspace);
26
-
27
- if (!res) {
28
- return false;
29
- }
30
- }
31
-
32
- return true;
33
- }
34
-
35
- filter(workspaces) {
36
- return new _repeater.Repeater(async (push, stop) => {
37
- const proms = [];
38
-
39
- for await (const wks of workspaces) {
40
- proms.push(this._test(wks).then(res => {
41
- if (res) push(wks);
42
- }));
43
- }
44
-
45
- await Promise.all(proms);
46
- stop();
47
- });
48
- }
49
-
50
- }
51
-
52
- exports.Pipeline = Pipeline;
53
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInBpcGVsaW5lLnRzIl0sIm5hbWVzIjpbIlBpcGVsaW5lIiwiYWRkIiwiZmlsdGVyIiwiX2ZpbHRlcnMiLCJwdXNoIiwiX3Rlc3QiLCJ3b3Jrc3BhY2UiLCJyZXMiLCJ0ZXN0Iiwid29ya3NwYWNlcyIsIlJlcGVhdGVyIiwic3RvcCIsInByb21zIiwid2tzIiwidGhlbiIsIlByb21pc2UiLCJhbGwiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFDQTs7OztBQUlBO0FBQ08sTUFBTUEsUUFBTixDQUFlO0FBQUE7QUFBQSxzQ0FFUyxFQUZUO0FBQUE7O0FBSXBCO0FBQ0FDLEVBQUFBLEdBQUcsQ0FBQ0MsTUFBRCxFQUF1QjtBQUN4QixTQUFLQyxRQUFMLENBQWNDLElBQWQsQ0FBbUJGLE1BQW5CO0FBQ0Q7O0FBRWtCLFFBQUxHLEtBQUssQ0FBQ0MsU0FBRCxFQUF5QztBQUMxRCxTQUFLLE1BQU1KLE1BQVgsSUFBcUIsS0FBS0MsUUFBMUIsRUFBb0M7QUFDbEMsWUFBTUksR0FBRyxHQUFHLE1BQU1MLE1BQU0sQ0FBQ00sSUFBUCxDQUFZRixTQUFaLENBQWxCOztBQUVBLFVBQUksQ0FBQ0MsR0FBTCxFQUFVO0FBQ1IsZUFBTyxLQUFQO0FBQ0Q7QUFDRjs7QUFFRCxXQUFPLElBQVA7QUFDRDs7QUFFREwsRUFBQUEsTUFBTSxDQUFDTyxVQUFELEVBQTZEO0FBQ2pFLFdBQU8sSUFBSUMsa0JBQUosQ0FBYSxPQUFPTixJQUFQLEVBQWFPLElBQWIsS0FBc0I7QUFDeEMsWUFBTUMsS0FBeUIsR0FBRyxFQUFsQzs7QUFFQSxpQkFBVyxNQUFNQyxHQUFqQixJQUF3QkosVUFBeEIsRUFBb0M7QUFDbENHLFFBQUFBLEtBQUssQ0FBQ1IsSUFBTixDQUFXLEtBQUtDLEtBQUwsQ0FBV1EsR0FBWCxFQUNSQyxJQURRLENBQ0ZQLEdBQUQsSUFBUztBQUNiLGNBQUlBLEdBQUosRUFBU0gsSUFBSSxDQUFDUyxHQUFELENBQUo7QUFDVixTQUhRLENBQVg7QUFLRDs7QUFFRCxZQUFNRSxPQUFPLENBQUNDLEdBQVIsQ0FBWUosS0FBWixDQUFOO0FBQ0FELE1BQUFBLElBQUk7QUFDTCxLQWJNLENBQVA7QUFjRDs7QUFwQ21CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgV29ya3NwYWNlIH0gZnJvbSAnQGp1anVsZWdvL2ppbGwtY29yZSc7XG5pbXBvcnQgeyBSZXBlYXRlciB9IGZyb20gJ0ByZXBlYXRlcmpzL3JlcGVhdGVyJztcblxuaW1wb3J0IHsgRmlsdGVyIH0gZnJvbSAnLi9maWx0ZXJzJztcblxuLy8gQ2xhc3NcbmV4cG9ydCBjbGFzcyBQaXBlbGluZSB7XG4gIC8vIEF0dHJpYnV0ZXNcbiAgcHJpdmF0ZSBfZmlsdGVyczogRmlsdGVyW10gPSBbXTtcblxuICAvLyBNZXRob2RzXG4gIGFkZChmaWx0ZXI6IEZpbHRlcik6IHZvaWQge1xuICAgIHRoaXMuX2ZpbHRlcnMucHVzaChmaWx0ZXIpO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBfdGVzdCh3b3Jrc3BhY2U6IFdvcmtzcGFjZSk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGZvciAoY29uc3QgZmlsdGVyIG9mIHRoaXMuX2ZpbHRlcnMpIHtcbiAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IGZpbHRlci50ZXN0KHdvcmtzcGFjZSk7XG5cbiAgICAgIGlmICghcmVzKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIGZpbHRlcih3b3Jrc3BhY2VzOiBBc3luY0dlbmVyYXRvcjxXb3Jrc3BhY2U+KTogUmVwZWF0ZXI8V29ya3NwYWNlPiB7XG4gICAgcmV0dXJuIG5ldyBSZXBlYXRlcihhc3luYyAocHVzaCwgc3RvcCkgPT4ge1xuICAgICAgY29uc3QgcHJvbXM6IFByb21pc2U8dW5rbm93bj5bXSA9IFtdO1xuXG4gICAgICBmb3IgYXdhaXQgKGNvbnN0IHdrcyBvZiB3b3Jrc3BhY2VzKSB7XG4gICAgICAgIHByb21zLnB1c2godGhpcy5fdGVzdCh3a3MpXG4gICAgICAgICAgLnRoZW4oKHJlcykgPT4ge1xuICAgICAgICAgICAgaWYgKHJlcykgcHVzaCh3a3MpO1xuICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIGF3YWl0IFByb21pc2UuYWxsKHByb21zKTtcbiAgICAgIHN0b3AoKTtcbiAgICB9KTtcbiAgfVxufSJdLCJmaWxlIjoicGlwZWxpbmUuanMifQ==
package/dist/plugin.d.ts DELETED
@@ -1,11 +0,0 @@
1
- import yargs from 'yargs';
2
- import { Command } from './command';
3
- export declare type CommandType = {
4
- new (): Command;
5
- };
6
- export declare abstract class Plugin {
7
- static createPlugin(name: string, commands: CommandType[]): Plugin;
8
- setup<T>(yargs: yargs.Argv<T>): yargs.Argv<T>;
9
- abstract get name(): string;
10
- abstract get commands(): readonly Command[];
11
- }
package/dist/plugin.js DELETED
@@ -1,40 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.Plugin = void 0;
7
-
8
- 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; }
9
-
10
- // Types
11
- // Class
12
- class Plugin {
13
- // Statics
14
- static createPlugin(name, commands) {
15
- return new class extends Plugin {
16
- constructor(...args) {
17
- super(...args);
18
-
19
- _defineProperty(this, "name", name);
20
-
21
- _defineProperty(this, "commands", commands.map(Cmd => new Cmd()));
22
- }
23
-
24
- }();
25
- } // Methods
26
-
27
-
28
- setup(yargs) {
29
- for (const cmd of this.commands) {
30
- cmd.setup(yargs);
31
- }
32
-
33
- return yargs;
34
- } // Properties
35
-
36
-
37
- }
38
-
39
- exports.Plugin = Plugin;
40
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInBsdWdpbi50cyJdLCJuYW1lcyI6WyJQbHVnaW4iLCJjcmVhdGVQbHVnaW4iLCJuYW1lIiwiY29tbWFuZHMiLCJtYXAiLCJDbWQiLCJzZXR1cCIsInlhcmdzIiwiY21kIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFJQTtBQUdBO0FBQ08sTUFBZUEsTUFBZixDQUFzQjtBQUMzQjtBQUNtQixTQUFaQyxZQUFZLENBQUNDLElBQUQsRUFBZUMsUUFBZixFQUFnRDtBQUNqRSxXQUFPLElBQUksY0FBY0gsTUFBZCxDQUFxQjtBQUFBO0FBQUE7O0FBQUEsc0NBQ2RFLElBRGM7O0FBQUEsMENBRVZDLFFBQVEsQ0FBQ0MsR0FBVCxDQUFhQyxHQUFHLElBQUksSUFBSUEsR0FBSixFQUFwQixDQUZVO0FBQUE7O0FBQUEsS0FBekIsRUFBUDtBQUlELEdBUDBCLENBUzNCOzs7QUFDQUMsRUFBQUEsS0FBSyxDQUFJQyxLQUFKLEVBQXlDO0FBQzVDLFNBQUssTUFBTUMsR0FBWCxJQUFrQixLQUFLTCxRQUF2QixFQUFpQztBQUMvQkssTUFBQUEsR0FBRyxDQUFDRixLQUFKLENBQVVDLEtBQVY7QUFDRDs7QUFFRCxXQUFPQSxLQUFQO0FBQ0QsR0FoQjBCLENBa0IzQjs7O0FBbEIyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB5YXJncyBmcm9tICd5YXJncyc7XG5cbmltcG9ydCB7IENvbW1hbmQgfSBmcm9tICcuL2NvbW1hbmQnO1xuXG4vLyBUeXBlc1xuZXhwb3J0IHR5cGUgQ29tbWFuZFR5cGUgPSB7IG5ldygpOiBDb21tYW5kIH07XG5cbi8vIENsYXNzXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgUGx1Z2luIHtcbiAgLy8gU3RhdGljc1xuICBzdGF0aWMgY3JlYXRlUGx1Z2luKG5hbWU6IHN0cmluZywgY29tbWFuZHM6IENvbW1hbmRUeXBlW10pOiBQbHVnaW4ge1xuICAgIHJldHVybiBuZXcgY2xhc3MgZXh0ZW5kcyBQbHVnaW4ge1xuICAgICAgcmVhZG9ubHkgbmFtZSA9IG5hbWU7XG4gICAgICByZWFkb25seSBjb21tYW5kcyA9IGNvbW1hbmRzLm1hcChDbWQgPT4gbmV3IENtZCgpKTtcbiAgICB9O1xuICB9XG5cbiAgLy8gTWV0aG9kc1xuICBzZXR1cDxUPih5YXJnczogeWFyZ3MuQXJndjxUPik6IHlhcmdzLkFyZ3Y8VD4ge1xuICAgIGZvciAoY29uc3QgY21kIG9mIHRoaXMuY29tbWFuZHMpIHtcbiAgICAgIGNtZC5zZXR1cCh5YXJncyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHlhcmdzO1xuICB9XG5cbiAgLy8gUHJvcGVydGllc1xuICBhYnN0cmFjdCBnZXQgbmFtZSgpOiBzdHJpbmc7XG4gIGFic3RyYWN0IGdldCBjb21tYW5kcygpOiByZWFkb25seSBDb21tYW5kW107XG59Il0sImZpbGUiOiJwbHVnaW4uanMifQ==
@@ -1,13 +0,0 @@
1
- import { PackageManager, Project } from '@jujulego/jill-core';
2
- import { Arguments, Builder } from './command';
3
- import { BaseArgs, BaseCommand } from './base.command';
4
- export interface ProjectArgs extends BaseArgs {
5
- project: string | undefined;
6
- 'package-manager': PackageManager | undefined;
7
- }
8
- export declare abstract class ProjectCommand<A extends ProjectArgs = ProjectArgs> extends BaseCommand<A> {
9
- private _project?;
10
- protected define<T, U>(builder: Builder<T, U>): Builder<T, U & ProjectArgs>;
11
- protected run(args: Arguments<A>): Promise<number | void>;
12
- get project(): Project;
13
- }