@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.
Files changed (82) hide show
  1. package/dist/commands/each.command.d.ts +1 -2
  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 +1 -2
  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 +1 -2
  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/index.d.ts.map +1 -0
  18. package/dist/index.js +1 -1
  19. package/dist/index.js.map +1 -0
  20. package/dist/main.d.ts.map +1 -0
  21. package/dist/main.js +41 -9
  22. package/dist/main.js.map +1 -0
  23. package/dist/myr/commands/kill.command.d.ts +1 -2
  24. package/dist/myr/commands/kill.command.d.ts.map +1 -0
  25. package/dist/myr/commands/kill.command.js +60 -23
  26. package/dist/myr/commands/kill.command.js.map +1 -0
  27. package/dist/myr/commands/list.command.d.ts +2 -3
  28. package/dist/myr/commands/list.command.d.ts.map +1 -0
  29. package/dist/myr/commands/list.command.js +77 -37
  30. package/dist/myr/commands/list.command.js.map +1 -0
  31. package/dist/myr/commands/logs.command.d.ts +1 -2
  32. package/dist/myr/commands/logs.command.d.ts.map +1 -0
  33. package/dist/myr/commands/logs.command.js +110 -28
  34. package/dist/myr/commands/logs.command.js.map +1 -0
  35. package/dist/myr/commands/spawn.command.d.ts +1 -2
  36. package/dist/myr/commands/spawn.command.d.ts.map +1 -0
  37. package/dist/myr/commands/spawn.command.js +56 -17
  38. package/dist/myr/commands/spawn.command.js.map +1 -0
  39. package/dist/myr/commands/stop.command.d.ts +1 -2
  40. package/dist/myr/commands/stop.command.d.ts.map +1 -0
  41. package/dist/myr/commands/stop.command.js +58 -21
  42. package/dist/myr/commands/stop.command.js.map +1 -0
  43. package/dist/myr/myr-client.d.ts.map +1 -0
  44. package/dist/myr/myr-client.js +224 -80
  45. package/dist/myr/myr-client.js.map +1 -0
  46. package/dist/myr/myr.command.d.ts +1 -1
  47. package/dist/myr/myr.command.d.ts.map +1 -0
  48. package/dist/myr/myr.command.js +9 -13
  49. package/dist/myr/myr.command.js.map +1 -0
  50. package/dist/myr/myr.process.d.ts.map +1 -0
  51. package/dist/myr/myr.process.js +41 -7
  52. package/dist/myr/myr.process.js.map +1 -0
  53. package/dist/myr/watch.command.d.ts +1 -2
  54. package/dist/myr/watch.command.d.ts.map +1 -0
  55. package/dist/myr/watch.command.js +132 -50
  56. package/dist/myr/watch.command.js.map +1 -0
  57. package/dist/task-logger.d.ts.map +1 -0
  58. package/dist/task-logger.js +27 -17
  59. package/dist/task-logger.js.map +1 -0
  60. package/package.json +8 -12
  61. package/dist/base.command.d.ts +0 -8
  62. package/dist/base.command.js +0 -33
  63. package/dist/command.d.ts +0 -21
  64. package/dist/command.js +0 -69
  65. package/dist/filters/affected.d.ts +0 -10
  66. package/dist/filters/affected.js +0 -80
  67. package/dist/filters/filter.d.ts +0 -8
  68. package/dist/filters/filter.js +0 -36
  69. package/dist/filters/index.d.ts +0 -2
  70. package/dist/filters/index.js +0 -22
  71. package/dist/logger.d.ts +0 -15
  72. package/dist/logger.js +0 -99
  73. package/dist/pipeline.d.ts +0 -9
  74. package/dist/pipeline.js +0 -53
  75. package/dist/plugin.d.ts +0 -11
  76. package/dist/plugin.js +0 -40
  77. package/dist/project.command.d.ts +0 -13
  78. package/dist/project.command.js +0 -58
  79. package/dist/utils/cli-list.d.ts +0 -15
  80. package/dist/utils/cli-list.js +0 -87
  81. package/dist/workspace.command.d.ts +0 -12
  82. package/dist/workspace.command.js +0 -55
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["commands/list.command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,SAAS,EAAE,OAAO,EAA6B,WAAW,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAOnI,oBAAY,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;AAC7D,oBAAY,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;AAItD,MAAM,WAAW,QAAS,SAAQ,WAAW;IAC3C,OAAO,EAAE,OAAO,GAAG,SAAS,CAAC;IAC7B,aAAa,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAEpC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,mBAAmB,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,uBAAuB,EAAE,MAAM,CAAC;IAEhC,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,OAAO,EAAE,OAAO,GAAG,SAAS,CAAC;IAC7B,IAAI,EAAE,OAAO,GAAG,SAAS,CAAC;IAC1B,IAAI,EAAE,OAAO,GAAG,SAAS,CAAC;CAC3B;AAeD,qBAAa,WAAY,SAAQ,cAAc,CAAC,QAAQ,CAAC;IAEvD,QAAQ,CAAC,IAAI,WAAkB;IAC/B,QAAQ,CAAC,WAAW,qBAAqB;IAGzC,OAAO,CAAC,cAAc;IAYtB,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC;cA0DxD,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;CAyEvE","file":"list.command.d.ts","sourcesContent":["import { AffectedFilter, Arguments, Builder, CliList, Filter, Pipeline, ProjectArgs, ProjectCommand } from '@jujulego/jill-common';\nimport { Workspace } from '@jujulego/jill-core';\nimport chalk from 'chalk';\nimport slugify from 'slugify';\nimport path from 'path';\n\n// Types\nexport type Attribute = 'name' | 'version' | 'root' | 'slug';\nexport type Data = Partial<Record<Attribute, string>>;\n\ntype Extractor<T> = (wks: Workspace, json: boolean) => T;\n\nexport interface ListArgs extends ProjectArgs {\n private: boolean | undefined;\n 'with-script': string[] | undefined;\n\n affected: string | undefined;\n 'affected-rev-sort': string | undefined;\n 'affected-rev-fallback': string;\n\n attrs: Attribute[];\n headers: boolean | undefined;\n long: boolean | undefined;\n json: boolean | undefined;\n}\n\n// Constants\nconst LONG_ATTRIBUTES: Attribute[] = ['name', 'version', 'root'];\nconst JSON_ATTRIBUTES: Attribute[] = ['name', 'version', 'slug', 'root'];\nconst DEFAULT_ATTRIBUTES: Attribute[] = ['name'];\n\nconst EXTRACTORS: Record<Attribute, Extractor<string | undefined>> = {\n name: wks => wks.name,\n version: (wks, json) => wks.manifest.version || (json ? undefined : chalk.grey('unset')),\n root: wks => wks.cwd,\n slug: wks => slugify(wks.name)\n};\n\n// Command\nexport class ListCommand extends ProjectCommand<ListArgs> {\n // Attributes\n readonly name = ['list', 'ls'];\n readonly description = 'List workspaces';\n\n // Methods\n private buildExtractor(attrs: Attribute[]): Extractor<Data> {\n return (wks, json: boolean) => {\n const data: Data = {};\n\n for (const attr of attrs) {\n data[attr] = EXTRACTORS[attr](wks, json);\n }\n\n return data;\n };\n }\n\n protected define<T, U>(builder: Builder<T, U>): Builder<T, U & ListArgs> {\n return super.define(y => builder(y)\n .option('private', {\n type: 'boolean',\n group: 'Filters:',\n desc: 'Print only private workspaces',\n })\n .option('with-script', {\n type: 'array',\n string: true,\n group: 'Filters:',\n desc: 'Print only workspaces having the given script',\n })\n .option('affected', {\n alias: 'a',\n type: 'string',\n coerce: (rev: string) => rev === '' ? 'master' : rev,\n group: 'Affected:',\n desc: 'Print only affected workspaces towards given git revision. If no revision is given, it will check towards master.\\n' +\n 'Replaces %name by workspace name.',\n })\n .option('affected-rev-sort', {\n type: 'string',\n group: 'Affected:',\n desc: 'Sort applied to git tag / git branch command',\n })\n .option('affected-rev-fallback', {\n type: 'string',\n default: 'master',\n group: 'Affected:',\n desc: 'Fallback revision, used if no revision matching the given format is found',\n })\n .option('attrs', {\n type: 'array',\n choices: ['name', 'version', 'root', 'slug'],\n default: [] as Attribute[],\n group: 'Format:',\n desc: 'Select printed attributes'\n })\n .option('headers', {\n type: 'boolean',\n group: 'Format:',\n desc: 'Prints columns headers'\n })\n .option('long', {\n alias: 'l',\n type: 'boolean',\n group: 'Format:',\n desc: 'Prints name, version and root of all workspaces',\n })\n .option('json', {\n type: 'boolean',\n group: 'Format:',\n desc: 'Prints data as a JSON array',\n })\n );\n }\n\n protected async run(args: Arguments<ListArgs>): Promise<number | void> {\n await super.run(args);\n\n // Setup pipeline\n const pipeline = new Pipeline();\n\n if (args.private !== undefined) {\n pipeline.add(Filter.privateWorkspace(args.private));\n }\n\n if (args['with-script'] !== undefined) {\n pipeline.add(Filter.scripts(args['with-script']));\n }\n\n if (args.affected !== undefined) {\n pipeline.add(new AffectedFilter(\n args.affected,\n args['affected-rev-fallback'],\n args['affected-rev-sort']\n ));\n }\n\n // Filter\n const workspaces: Workspace[] = [];\n\n for await (const wks of pipeline.filter(this.project.workspaces())) {\n workspaces.push(wks);\n }\n\n this.spinner.stop();\n\n // Build data\n let attrs = args.attrs;\n\n if (args.attrs.length === 0) {\n if (args.long) {\n attrs = LONG_ATTRIBUTES;\n } else if (args.json) {\n attrs = JSON_ATTRIBUTES;\n } else {\n attrs = DEFAULT_ATTRIBUTES;\n }\n }\n\n const data = workspaces.map(wks => this.buildExtractor(attrs)(wks, args.json || false));\n\n // Print data\n if (args.json) {\n if (process.stdout.isTTY) { // Pretty print for ttys\n this.log(JSON.stringify(data, null, 2));\n } else {\n this.log(JSON.stringify(data));\n }\n } else {\n const list = new CliList();\n\n if (args.headers ?? (attrs.length > 1)) {\n list.setHeaders(attrs);\n }\n\n for (const d of data) {\n if (d.root) {\n d.root = path.relative(process.cwd(), d.root) || '.';\n }\n\n list.add(attrs.map(attr => d[attr] || ''));\n }\n\n for (const d of list.lines()) {\n this.log(d);\n }\n }\n }\n}\n"]}
@@ -5,23 +5,73 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.ListCommand = void 0;
7
7
 
8
+ var _jillCommon = require("@jujulego/jill-common");
9
+
8
10
  var _chalk = _interopRequireDefault(require("chalk"));
9
11
 
10
12
  var _slugify = _interopRequireDefault(require("slugify"));
11
13
 
12
14
  var _path = _interopRequireDefault(require("path"));
13
15
 
14
- var _project = require("../project.command");
16
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
17
 
16
- var _pipeline = require("../pipeline");
18
+ var __awaiter = void 0 && (void 0).__awaiter || function (thisArg, _arguments, P, generator) {
19
+ function adopt(value) {
20
+ return value instanceof P ? value : new P(function (resolve) {
21
+ resolve(value);
22
+ });
23
+ }
17
24
 
18
- var _filters = require("../filters");
25
+ return new (P || (P = Promise))(function (resolve, reject) {
26
+ function fulfilled(value) {
27
+ try {
28
+ step(generator.next(value));
29
+ } catch (e) {
30
+ reject(e);
31
+ }
32
+ }
19
33
 
20
- var _cliList = require("../utils/cli-list");
34
+ function rejected(value) {
35
+ try {
36
+ step(generator["throw"](value));
37
+ } catch (e) {
38
+ reject(e);
39
+ }
40
+ }
21
41
 
22
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
42
+ function step(result) {
43
+ result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);
44
+ }
23
45
 
24
- 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; }
46
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
47
+ });
48
+ };
49
+
50
+ var __asyncValues = void 0 && (void 0).__asyncValues || function (o) {
51
+ if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
52
+ var m = o[Symbol.asyncIterator],
53
+ i;
54
+ 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 () {
55
+ return this;
56
+ }, i);
57
+
58
+ function verb(n) {
59
+ i[n] = o[n] && function (v) {
60
+ return new Promise(function (resolve, reject) {
61
+ v = o[n](v), settle(resolve, reject, v.done, v.value);
62
+ });
63
+ };
64
+ }
65
+
66
+ function settle(resolve, reject, d, v) {
67
+ Promise.resolve(v).then(function (v) {
68
+ resolve({
69
+ value: v,
70
+ done: d
71
+ });
72
+ }, reject);
73
+ }
74
+ };
25
75
 
26
76
  // Constants
27
77
  const LONG_ATTRIBUTES = ['name', 'version', 'root'];
@@ -34,16 +84,15 @@ const EXTRACTORS = {
34
84
  slug: wks => (0, _slugify.default)(wks.name)
35
85
  }; // Command
36
86
 
37
- class ListCommand extends _project.ProjectCommand {
38
- constructor(...args) {
39
- super(...args);
87
+ class ListCommand extends _jillCommon.ProjectCommand {
88
+ constructor() {
89
+ super(...arguments); // Attributes
40
90
 
41
- _defineProperty(this, "name", ['list', 'ls']);
91
+ this.name = ['list', 'ls'];
92
+ this.description = 'List workspaces';
93
+ } // Methods
42
94
 
43
- _defineProperty(this, "description", 'List workspaces');
44
- }
45
95
 
46
- // Methods
47
96
  buildExtractor(attrs) {
48
97
  return (wks, json) => {
49
98
  const data = {};
@@ -103,75 +152,100 @@ class ListCommand extends _project.ProjectCommand {
103
152
  }));
104
153
  }
105
154
 
106
- async run(args) {
107
- await super.run(args); // Setup pipeline
155
+ run(args) {
156
+ const _super = Object.create(null, {
157
+ run: {
158
+ get: () => super.run
159
+ }
160
+ });
108
161
 
109
- const pipeline = new _pipeline.Pipeline();
162
+ var e_1, _a;
110
163
 
111
- if (args.private !== undefined) {
112
- pipeline.add(_filters.Filter.privateWorkspace(args.private));
113
- }
164
+ var _b;
114
165
 
115
- if (args['with-script'] !== undefined) {
116
- pipeline.add(_filters.Filter.scripts(args['with-script']));
117
- }
166
+ return __awaiter(this, void 0, void 0, function* () {
167
+ yield _super.run.call(this, args); // Setup pipeline
118
168
 
119
- if (args.affected !== undefined) {
120
- pipeline.add(new _filters.AffectedFilter(args.affected, args['affected-rev-fallback'], args['affected-rev-sort']));
121
- } // Filter
169
+ const pipeline = new _jillCommon.Pipeline();
122
170
 
171
+ if (args.private !== undefined) {
172
+ pipeline.add(_jillCommon.Filter.privateWorkspace(args.private));
173
+ }
123
174
 
124
- const workspaces = [];
175
+ if (args['with-script'] !== undefined) {
176
+ pipeline.add(_jillCommon.Filter.scripts(args['with-script']));
177
+ }
125
178
 
126
- for await (const wks of pipeline.filter(this.project.workspaces())) {
127
- workspaces.push(wks);
128
- }
179
+ if (args.affected !== undefined) {
180
+ pipeline.add(new _jillCommon.AffectedFilter(args.affected, args['affected-rev-fallback'], args['affected-rev-sort']));
181
+ } // Filter
129
182
 
130
- this.spinner.stop(); // Build data
131
183
 
132
- let attrs = args.attrs;
184
+ const workspaces = [];
133
185
 
134
- if (args.attrs.length === 0) {
135
- if (args.long) {
136
- attrs = LONG_ATTRIBUTES;
137
- } else if (args.json) {
138
- attrs = JSON_ATTRIBUTES;
139
- } else {
140
- attrs = DEFAULT_ATTRIBUTES;
186
+ try {
187
+ for (var _c = __asyncValues(pipeline.filter(this.project.workspaces())), _d; _d = yield _c.next(), !_d.done;) {
188
+ const wks = _d.value;
189
+ workspaces.push(wks);
190
+ }
191
+ } catch (e_1_1) {
192
+ e_1 = {
193
+ error: e_1_1
194
+ };
195
+ } finally {
196
+ try {
197
+ if (_d && !_d.done && (_a = _c.return)) yield _a.call(_c);
198
+ } finally {
199
+ if (e_1) throw e_1.error;
200
+ }
141
201
  }
142
- }
143
202
 
144
- const data = workspaces.map(wks => this.buildExtractor(attrs)(wks, args.json || false)); // Print data
203
+ this.spinner.stop(); // Build data
145
204
 
146
- if (args.json) {
147
- if (process.stdout.isTTY) {
148
- // Pretty print for ttys
149
- this.log(JSON.stringify(data, null, 2));
150
- } else {
151
- this.log(JSON.stringify(data));
152
- }
153
- } else {
154
- const list = new _cliList.CliList();
205
+ let attrs = args.attrs;
155
206
 
156
- if (args.headers ?? attrs.length > 1) {
157
- list.setHeaders(attrs);
207
+ if (args.attrs.length === 0) {
208
+ if (args.long) {
209
+ attrs = LONG_ATTRIBUTES;
210
+ } else if (args.json) {
211
+ attrs = JSON_ATTRIBUTES;
212
+ } else {
213
+ attrs = DEFAULT_ATTRIBUTES;
214
+ }
158
215
  }
159
216
 
160
- for (const d of data) {
161
- if (d.root) {
162
- d.root = _path.default.relative(process.cwd(), d.root) || '.';
217
+ const data = workspaces.map(wks => this.buildExtractor(attrs)(wks, args.json || false)); // Print data
218
+
219
+ if (args.json) {
220
+ if (process.stdout.isTTY) {
221
+ // Pretty print for ttys
222
+ this.log(JSON.stringify(data, null, 2));
223
+ } else {
224
+ this.log(JSON.stringify(data));
163
225
  }
226
+ } else {
227
+ const list = new _jillCommon.CliList();
164
228
 
165
- list.add(attrs.map(attr => d[attr] || ''));
166
- }
229
+ if ((_b = args.headers) !== null && _b !== void 0 ? _b : attrs.length > 1) {
230
+ list.setHeaders(attrs);
231
+ }
232
+
233
+ for (const d of data) {
234
+ if (d.root) {
235
+ d.root = _path.default.relative(process.cwd(), d.root) || '.';
236
+ }
167
237
 
168
- for (const d of list.lines()) {
169
- this.log(d);
238
+ list.add(attrs.map(attr => d[attr] || ''));
239
+ }
240
+
241
+ for (const d of list.lines()) {
242
+ this.log(d);
243
+ }
170
244
  }
171
- }
245
+ });
172
246
  }
173
247
 
174
248
  }
175
249
 
176
250
  exports.ListCommand = ListCommand;
177
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbW1hbmRzL2xpc3QuY29tbWFuZC50cyJdLCJuYW1lcyI6WyJMT05HX0FUVFJJQlVURVMiLCJKU09OX0FUVFJJQlVURVMiLCJERUZBVUxUX0FUVFJJQlVURVMiLCJFWFRSQUNUT1JTIiwibmFtZSIsIndrcyIsInZlcnNpb24iLCJqc29uIiwibWFuaWZlc3QiLCJ1bmRlZmluZWQiLCJjaGFsayIsImdyZXkiLCJyb290IiwiY3dkIiwic2x1ZyIsIkxpc3RDb21tYW5kIiwiUHJvamVjdENvbW1hbmQiLCJidWlsZEV4dHJhY3RvciIsImF0dHJzIiwiZGF0YSIsImF0dHIiLCJkZWZpbmUiLCJidWlsZGVyIiwieSIsIm9wdGlvbiIsInR5cGUiLCJncm91cCIsImRlc2MiLCJzdHJpbmciLCJhbGlhcyIsImNvZXJjZSIsInJldiIsImRlZmF1bHQiLCJjaG9pY2VzIiwicnVuIiwiYXJncyIsInBpcGVsaW5lIiwiUGlwZWxpbmUiLCJwcml2YXRlIiwiYWRkIiwiRmlsdGVyIiwicHJpdmF0ZVdvcmtzcGFjZSIsInNjcmlwdHMiLCJhZmZlY3RlZCIsIkFmZmVjdGVkRmlsdGVyIiwid29ya3NwYWNlcyIsImZpbHRlciIsInByb2plY3QiLCJwdXNoIiwic3Bpbm5lciIsInN0b3AiLCJsZW5ndGgiLCJsb25nIiwibWFwIiwicHJvY2VzcyIsInN0ZG91dCIsImlzVFRZIiwibG9nIiwiSlNPTiIsInN0cmluZ2lmeSIsImxpc3QiLCJDbGlMaXN0IiwiaGVhZGVycyIsInNldEhlYWRlcnMiLCJkIiwicGF0aCIsInJlbGF0aXZlIiwibGluZXMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7O0FBdUJBO0FBQ0EsTUFBTUEsZUFBNEIsR0FBRyxDQUFDLE1BQUQsRUFBUyxTQUFULEVBQW9CLE1BQXBCLENBQXJDO0FBQ0EsTUFBTUMsZUFBNEIsR0FBRyxDQUFDLE1BQUQsRUFBUyxTQUFULEVBQW9CLE1BQXBCLEVBQTRCLE1BQTVCLENBQXJDO0FBQ0EsTUFBTUMsa0JBQStCLEdBQUcsQ0FBQyxNQUFELENBQXhDO0FBRUEsTUFBTUMsVUFBNEQsR0FBRztBQUNuRUMsRUFBQUEsSUFBSSxFQUFFQyxHQUFHLElBQUlBLEdBQUcsQ0FBQ0QsSUFEa0Q7QUFFbkVFLEVBQUFBLE9BQU8sRUFBRSxDQUFDRCxHQUFELEVBQU1FLElBQU4sS0FBZUYsR0FBRyxDQUFDRyxRQUFKLENBQWFGLE9BQWIsS0FBeUJDLElBQUksR0FBR0UsU0FBSCxHQUFlQyxlQUFNQyxJQUFOLENBQVcsT0FBWCxDQUE1QyxDQUYyQztBQUduRUMsRUFBQUEsSUFBSSxFQUFFUCxHQUFHLElBQUlBLEdBQUcsQ0FBQ1EsR0FIa0Q7QUFJbkVDLEVBQUFBLElBQUksRUFBRVQsR0FBRyxJQUFJLHNCQUFRQSxHQUFHLENBQUNELElBQVo7QUFKc0QsQ0FBckUsQyxDQU9BOztBQUNPLE1BQU1XLFdBQU4sU0FBMEJDLHVCQUExQixDQUFtRDtBQUFBO0FBQUE7O0FBQUEsa0NBRXhDLENBQUMsTUFBRCxFQUFTLElBQVQsQ0FGd0M7O0FBQUEseUNBR2pDLGlCQUhpQztBQUFBOztBQUt4RDtBQUNRQyxFQUFBQSxjQUFjLENBQUNDLEtBQUQsRUFBc0M7QUFDMUQsV0FBTyxDQUFDYixHQUFELEVBQU1FLElBQU4sS0FBd0I7QUFDN0IsWUFBTVksSUFBVSxHQUFHLEVBQW5COztBQUVBLFdBQUssTUFBTUMsSUFBWCxJQUFtQkYsS0FBbkIsRUFBMEI7QUFDeEJDLFFBQUFBLElBQUksQ0FBQ0MsSUFBRCxDQUFKLEdBQWFqQixVQUFVLENBQUNpQixJQUFELENBQVYsQ0FBaUJmLEdBQWpCLEVBQXNCRSxJQUF0QixDQUFiO0FBQ0Q7O0FBRUQsYUFBT1ksSUFBUDtBQUNELEtBUkQ7QUFTRDs7QUFFU0UsRUFBQUEsTUFBTSxDQUFPQyxPQUFQLEVBQXlEO0FBQ3ZFLFdBQU8sTUFBTUQsTUFBTixDQUFhRSxDQUFDLElBQUlELE9BQU8sQ0FBQ0MsQ0FBRCxDQUFQLENBQ3RCQyxNQURzQixDQUNmLFNBRGUsRUFDSjtBQUNqQkMsTUFBQUEsSUFBSSxFQUFFLFNBRFc7QUFFakJDLE1BQUFBLEtBQUssRUFBRSxVQUZVO0FBR2pCQyxNQUFBQSxJQUFJLEVBQUU7QUFIVyxLQURJLEVBTXRCSCxNQU5zQixDQU1mLGFBTmUsRUFNQTtBQUNyQkMsTUFBQUEsSUFBSSxFQUFFLE9BRGU7QUFFckJHLE1BQUFBLE1BQU0sRUFBRSxJQUZhO0FBR3JCRixNQUFBQSxLQUFLLEVBQUUsVUFIYztBQUlyQkMsTUFBQUEsSUFBSSxFQUFFO0FBSmUsS0FOQSxFQVl0QkgsTUFac0IsQ0FZZixVQVplLEVBWUg7QUFDbEJLLE1BQUFBLEtBQUssRUFBRSxHQURXO0FBRWxCSixNQUFBQSxJQUFJLEVBQUUsUUFGWTtBQUdsQkssTUFBQUEsTUFBTSxFQUFHQyxHQUFELElBQWlCQSxHQUFHLEtBQUssRUFBUixHQUFhLFFBQWIsR0FBd0JBLEdBSC9CO0FBSWxCTCxNQUFBQSxLQUFLLEVBQUUsV0FKVztBQUtsQkMsTUFBQUEsSUFBSSxFQUFFLHdIQUNKO0FBTmdCLEtBWkcsRUFvQnRCSCxNQXBCc0IsQ0FvQmYsbUJBcEJlLEVBb0JNO0FBQzNCQyxNQUFBQSxJQUFJLEVBQUUsUUFEcUI7QUFFM0JDLE1BQUFBLEtBQUssRUFBRSxXQUZvQjtBQUczQkMsTUFBQUEsSUFBSSxFQUFFO0FBSHFCLEtBcEJOLEVBeUJ0QkgsTUF6QnNCLENBeUJmLHVCQXpCZSxFQXlCVTtBQUMvQkMsTUFBQUEsSUFBSSxFQUFFLFFBRHlCO0FBRS9CTyxNQUFBQSxPQUFPLEVBQUUsUUFGc0I7QUFHL0JOLE1BQUFBLEtBQUssRUFBRSxXQUh3QjtBQUkvQkMsTUFBQUEsSUFBSSxFQUFFO0FBSnlCLEtBekJWLEVBK0J0QkgsTUEvQnNCLENBK0JmLE9BL0JlLEVBK0JOO0FBQ2ZDLE1BQUFBLElBQUksRUFBRSxPQURTO0FBRWZRLE1BQUFBLE9BQU8sRUFBRSxDQUFDLE1BQUQsRUFBUyxTQUFULEVBQW9CLE1BQXBCLEVBQTRCLE1BQTVCLENBRk07QUFHZkQsTUFBQUEsT0FBTyxFQUFFLEVBSE07QUFJZk4sTUFBQUEsS0FBSyxFQUFFLFNBSlE7QUFLZkMsTUFBQUEsSUFBSSxFQUFFO0FBTFMsS0EvQk0sRUFzQ3RCSCxNQXRDc0IsQ0FzQ2YsU0F0Q2UsRUFzQ0o7QUFDakJDLE1BQUFBLElBQUksRUFBRSxTQURXO0FBRWpCQyxNQUFBQSxLQUFLLEVBQUUsU0FGVTtBQUdqQkMsTUFBQUEsSUFBSSxFQUFFO0FBSFcsS0F0Q0ksRUEyQ3RCSCxNQTNDc0IsQ0EyQ2YsTUEzQ2UsRUEyQ1A7QUFDZEssTUFBQUEsS0FBSyxFQUFFLEdBRE87QUFFZEosTUFBQUEsSUFBSSxFQUFFLFNBRlE7QUFHZEMsTUFBQUEsS0FBSyxFQUFFLFNBSE87QUFJZEMsTUFBQUEsSUFBSSxFQUFFO0FBSlEsS0EzQ08sRUFpRHRCSCxNQWpEc0IsQ0FpRGYsTUFqRGUsRUFpRFA7QUFDZEMsTUFBQUEsSUFBSSxFQUFFLFNBRFE7QUFFZEMsTUFBQUEsS0FBSyxFQUFFLFNBRk87QUFHZEMsTUFBQUEsSUFBSSxFQUFFO0FBSFEsS0FqRE8sQ0FBbEIsQ0FBUDtBQXVERDs7QUFFa0IsUUFBSE8sR0FBRyxDQUFDQyxJQUFELEVBQW9EO0FBQ3JFLFVBQU0sTUFBTUQsR0FBTixDQUFVQyxJQUFWLENBQU4sQ0FEcUUsQ0FHckU7O0FBQ0EsVUFBTUMsUUFBUSxHQUFHLElBQUlDLGtCQUFKLEVBQWpCOztBQUVBLFFBQUlGLElBQUksQ0FBQ0csT0FBTCxLQUFpQjdCLFNBQXJCLEVBQWdDO0FBQzlCMkIsTUFBQUEsUUFBUSxDQUFDRyxHQUFULENBQWFDLGdCQUFPQyxnQkFBUCxDQUF3Qk4sSUFBSSxDQUFDRyxPQUE3QixDQUFiO0FBQ0Q7O0FBRUQsUUFBSUgsSUFBSSxDQUFDLGFBQUQsQ0FBSixLQUF3QjFCLFNBQTVCLEVBQXVDO0FBQ3JDMkIsTUFBQUEsUUFBUSxDQUFDRyxHQUFULENBQWFDLGdCQUFPRSxPQUFQLENBQWVQLElBQUksQ0FBQyxhQUFELENBQW5CLENBQWI7QUFDRDs7QUFFRCxRQUFJQSxJQUFJLENBQUNRLFFBQUwsS0FBa0JsQyxTQUF0QixFQUFpQztBQUMvQjJCLE1BQUFBLFFBQVEsQ0FBQ0csR0FBVCxDQUFhLElBQUlLLHVCQUFKLENBQ1hULElBQUksQ0FBQ1EsUUFETSxFQUVYUixJQUFJLENBQUMsdUJBQUQsQ0FGTyxFQUdYQSxJQUFJLENBQUMsbUJBQUQsQ0FITyxDQUFiO0FBS0QsS0FwQm9FLENBc0JyRTs7O0FBQ0EsVUFBTVUsVUFBdUIsR0FBRyxFQUFoQzs7QUFFQSxlQUFXLE1BQU14QyxHQUFqQixJQUF3QitCLFFBQVEsQ0FBQ1UsTUFBVCxDQUFnQixLQUFLQyxPQUFMLENBQWFGLFVBQWIsRUFBaEIsQ0FBeEIsRUFBb0U7QUFDbEVBLE1BQUFBLFVBQVUsQ0FBQ0csSUFBWCxDQUFnQjNDLEdBQWhCO0FBQ0Q7O0FBRUQsU0FBSzRDLE9BQUwsQ0FBYUMsSUFBYixHQTdCcUUsQ0ErQnJFOztBQUNBLFFBQUloQyxLQUFLLEdBQUdpQixJQUFJLENBQUNqQixLQUFqQjs7QUFFQSxRQUFJaUIsSUFBSSxDQUFDakIsS0FBTCxDQUFXaUMsTUFBWCxLQUFzQixDQUExQixFQUE2QjtBQUMzQixVQUFJaEIsSUFBSSxDQUFDaUIsSUFBVCxFQUFlO0FBQ2JsQyxRQUFBQSxLQUFLLEdBQUdsQixlQUFSO0FBQ0QsT0FGRCxNQUVPLElBQUltQyxJQUFJLENBQUM1QixJQUFULEVBQWU7QUFDcEJXLFFBQUFBLEtBQUssR0FBR2pCLGVBQVI7QUFDRCxPQUZNLE1BRUE7QUFDTGlCLFFBQUFBLEtBQUssR0FBR2hCLGtCQUFSO0FBQ0Q7QUFDRjs7QUFFRCxVQUFNaUIsSUFBSSxHQUFHMEIsVUFBVSxDQUFDUSxHQUFYLENBQWVoRCxHQUFHLElBQUksS0FBS1ksY0FBTCxDQUFvQkMsS0FBcEIsRUFBMkJiLEdBQTNCLEVBQWdDOEIsSUFBSSxDQUFDNUIsSUFBTCxJQUFhLEtBQTdDLENBQXRCLENBQWIsQ0E1Q3FFLENBOENyRTs7QUFDQSxRQUFJNEIsSUFBSSxDQUFDNUIsSUFBVCxFQUFlO0FBQ2IsVUFBSStDLE9BQU8sQ0FBQ0MsTUFBUixDQUFlQyxLQUFuQixFQUEwQjtBQUFFO0FBQzFCLGFBQUtDLEdBQUwsQ0FBU0MsSUFBSSxDQUFDQyxTQUFMLENBQWV4QyxJQUFmLEVBQXFCLElBQXJCLEVBQTJCLENBQTNCLENBQVQ7QUFDRCxPQUZELE1BRU87QUFDTCxhQUFLc0MsR0FBTCxDQUFTQyxJQUFJLENBQUNDLFNBQUwsQ0FBZXhDLElBQWYsQ0FBVDtBQUNEO0FBQ0YsS0FORCxNQU1PO0FBQ0wsWUFBTXlDLElBQUksR0FBRyxJQUFJQyxnQkFBSixFQUFiOztBQUVBLFVBQUkxQixJQUFJLENBQUMyQixPQUFMLElBQWlCNUMsS0FBSyxDQUFDaUMsTUFBTixHQUFlLENBQXBDLEVBQXdDO0FBQ3RDUyxRQUFBQSxJQUFJLENBQUNHLFVBQUwsQ0FBZ0I3QyxLQUFoQjtBQUNEOztBQUVELFdBQUssTUFBTThDLENBQVgsSUFBZ0I3QyxJQUFoQixFQUFzQjtBQUNwQixZQUFJNkMsQ0FBQyxDQUFDcEQsSUFBTixFQUFZO0FBQ1ZvRCxVQUFBQSxDQUFDLENBQUNwRCxJQUFGLEdBQVNxRCxjQUFLQyxRQUFMLENBQWNaLE9BQU8sQ0FBQ3pDLEdBQVIsRUFBZCxFQUE2Qm1ELENBQUMsQ0FBQ3BELElBQS9CLEtBQXdDLEdBQWpEO0FBQ0Q7O0FBRURnRCxRQUFBQSxJQUFJLENBQUNyQixHQUFMLENBQVNyQixLQUFLLENBQUNtQyxHQUFOLENBQVVqQyxJQUFJLElBQUk0QyxDQUFDLENBQUM1QyxJQUFELENBQUQsSUFBVyxFQUE3QixDQUFUO0FBQ0Q7O0FBRUQsV0FBSyxNQUFNNEMsQ0FBWCxJQUFnQkosSUFBSSxDQUFDTyxLQUFMLEVBQWhCLEVBQThCO0FBQzVCLGFBQUtWLEdBQUwsQ0FBU08sQ0FBVDtBQUNEO0FBQ0Y7QUFDRjs7QUFwSnVEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgV29ya3NwYWNlIH0gZnJvbSAnQGp1anVsZWdvL2ppbGwtY29yZSc7XG5pbXBvcnQgY2hhbGsgZnJvbSAnY2hhbGsnO1xuaW1wb3J0IHNsdWdpZnkgZnJvbSAnc2x1Z2lmeSc7XG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJztcblxuaW1wb3J0IHsgUHJvamVjdEFyZ3MsIFByb2plY3RDb21tYW5kIH0gZnJvbSAnLi4vcHJvamVjdC5jb21tYW5kJztcbmltcG9ydCB7IFBpcGVsaW5lIH0gZnJvbSAnLi4vcGlwZWxpbmUnO1xuaW1wb3J0IHsgQWZmZWN0ZWRGaWx0ZXIsIEZpbHRlciB9IGZyb20gJy4uL2ZpbHRlcnMnO1xuaW1wb3J0IHsgQ2xpTGlzdCB9IGZyb20gJy4uL3V0aWxzL2NsaS1saXN0JztcbmltcG9ydCB7IEFyZ3VtZW50cywgQnVpbGRlciB9IGZyb20gJy4uL2NvbW1hbmQnO1xuXG4vLyBUeXBlc1xuZXhwb3J0IHR5cGUgQXR0cmlidXRlID0gJ25hbWUnIHwgJ3ZlcnNpb24nIHwgJ3Jvb3QnIHwgJ3NsdWcnO1xuZXhwb3J0IHR5cGUgRGF0YSA9IFBhcnRpYWw8UmVjb3JkPEF0dHJpYnV0ZSwgc3RyaW5nPj47XG5cbnR5cGUgRXh0cmFjdG9yPFQ+ID0gKHdrczogV29ya3NwYWNlLCBqc29uOiBib29sZWFuKSA9PiBUO1xuXG5leHBvcnQgaW50ZXJmYWNlIExpc3RBcmdzIGV4dGVuZHMgUHJvamVjdEFyZ3Mge1xuICBwcml2YXRlOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuICAnd2l0aC1zY3JpcHQnOiBzdHJpbmdbXSB8IHVuZGVmaW5lZDtcblxuICBhZmZlY3RlZDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAnYWZmZWN0ZWQtcmV2LXNvcnQnOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICdhZmZlY3RlZC1yZXYtZmFsbGJhY2snOiBzdHJpbmc7XG5cbiAgYXR0cnM6IEF0dHJpYnV0ZVtdO1xuICBoZWFkZXJzOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuICBsb25nOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuICBqc29uOiBib29sZWFuIHwgdW5kZWZpbmVkO1xufVxuXG4vLyBDb25zdGFudHNcbmNvbnN0IExPTkdfQVRUUklCVVRFUzogQXR0cmlidXRlW10gPSBbJ25hbWUnLCAndmVyc2lvbicsICdyb290J107XG5jb25zdCBKU09OX0FUVFJJQlVURVM6IEF0dHJpYnV0ZVtdID0gWyduYW1lJywgJ3ZlcnNpb24nLCAnc2x1ZycsICdyb290J107XG5jb25zdCBERUZBVUxUX0FUVFJJQlVURVM6IEF0dHJpYnV0ZVtdID0gWyduYW1lJ107XG5cbmNvbnN0IEVYVFJBQ1RPUlM6IFJlY29yZDxBdHRyaWJ1dGUsIEV4dHJhY3RvcjxzdHJpbmcgfCB1bmRlZmluZWQ+PiA9IHtcbiAgbmFtZTogd2tzID0+IHdrcy5uYW1lLFxuICB2ZXJzaW9uOiAod2tzLCBqc29uKSA9PiB3a3MubWFuaWZlc3QudmVyc2lvbiB8fCAoanNvbiA/IHVuZGVmaW5lZCA6IGNoYWxrLmdyZXkoJ3Vuc2V0JykpLFxuICByb290OiB3a3MgPT4gd2tzLmN3ZCxcbiAgc2x1Zzogd2tzID0+IHNsdWdpZnkod2tzLm5hbWUpXG59O1xuXG4vLyBDb21tYW5kXG5leHBvcnQgY2xhc3MgTGlzdENvbW1hbmQgZXh0ZW5kcyBQcm9qZWN0Q29tbWFuZDxMaXN0QXJncz4ge1xuICAvLyBBdHRyaWJ1dGVzXG4gIHJlYWRvbmx5IG5hbWUgPSBbJ2xpc3QnLCAnbHMnXTtcbiAgcmVhZG9ubHkgZGVzY3JpcHRpb24gPSAnTGlzdCB3b3Jrc3BhY2VzJztcblxuICAvLyBNZXRob2RzXG4gIHByaXZhdGUgYnVpbGRFeHRyYWN0b3IoYXR0cnM6IEF0dHJpYnV0ZVtdKTogRXh0cmFjdG9yPERhdGE+IHtcbiAgICByZXR1cm4gKHdrcywganNvbjogYm9vbGVhbikgPT4ge1xuICAgICAgY29uc3QgZGF0YTogRGF0YSA9IHt9O1xuXG4gICAgICBmb3IgKGNvbnN0IGF0dHIgb2YgYXR0cnMpIHtcbiAgICAgICAgZGF0YVthdHRyXSA9IEVYVFJBQ1RPUlNbYXR0cl0od2tzLCBqc29uKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGRhdGE7XG4gICAgfTtcbiAgfVxuXG4gIHByb3RlY3RlZCBkZWZpbmU8VCwgVT4oYnVpbGRlcjogQnVpbGRlcjxULCBVPik6IEJ1aWxkZXI8VCwgVSAmIExpc3RBcmdzPiB7XG4gICAgcmV0dXJuIHN1cGVyLmRlZmluZSh5ID0+IGJ1aWxkZXIoeSlcbiAgICAgIC5vcHRpb24oJ3ByaXZhdGUnLCB7XG4gICAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICAgICAgZ3JvdXA6ICdGaWx0ZXJzOicsXG4gICAgICAgIGRlc2M6ICdQcmludCBvbmx5IHByaXZhdGUgd29ya3NwYWNlcycsXG4gICAgICB9KVxuICAgICAgLm9wdGlvbignd2l0aC1zY3JpcHQnLCB7XG4gICAgICAgIHR5cGU6ICdhcnJheScsXG4gICAgICAgIHN0cmluZzogdHJ1ZSxcbiAgICAgICAgZ3JvdXA6ICdGaWx0ZXJzOicsXG4gICAgICAgIGRlc2M6ICdQcmludCBvbmx5IHdvcmtzcGFjZXMgaGF2aW5nIHRoZSBnaXZlbiBzY3JpcHQnLFxuICAgICAgfSlcbiAgICAgIC5vcHRpb24oJ2FmZmVjdGVkJywge1xuICAgICAgICBhbGlhczogJ2EnLFxuICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgY29lcmNlOiAocmV2OiBzdHJpbmcpID0+IHJldiA9PT0gJycgPyAnbWFzdGVyJyA6IHJldixcbiAgICAgICAgZ3JvdXA6ICdBZmZlY3RlZDonLFxuICAgICAgICBkZXNjOiAnUHJpbnQgb25seSBhZmZlY3RlZCB3b3Jrc3BhY2VzIHRvd2FyZHMgZ2l2ZW4gZ2l0IHJldmlzaW9uLiBJZiBubyByZXZpc2lvbiBpcyBnaXZlbiwgaXQgd2lsbCBjaGVjayB0b3dhcmRzIG1hc3Rlci5cXG4nICtcbiAgICAgICAgICAnUmVwbGFjZXMgJW5hbWUgYnkgd29ya3NwYWNlIG5hbWUuJyxcbiAgICAgIH0pXG4gICAgICAub3B0aW9uKCdhZmZlY3RlZC1yZXYtc29ydCcsIHtcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIGdyb3VwOiAnQWZmZWN0ZWQ6JyxcbiAgICAgICAgZGVzYzogJ1NvcnQgYXBwbGllZCB0byBnaXQgdGFnIC8gZ2l0IGJyYW5jaCBjb21tYW5kJyxcbiAgICAgIH0pXG4gICAgICAub3B0aW9uKCdhZmZlY3RlZC1yZXYtZmFsbGJhY2snLCB7XG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICBkZWZhdWx0OiAnbWFzdGVyJyxcbiAgICAgICAgZ3JvdXA6ICdBZmZlY3RlZDonLFxuICAgICAgICBkZXNjOiAnRmFsbGJhY2sgcmV2aXNpb24sIHVzZWQgaWYgbm8gcmV2aXNpb24gbWF0Y2hpbmcgdGhlIGdpdmVuIGZvcm1hdCBpcyBmb3VuZCcsXG4gICAgICB9KVxuICAgICAgLm9wdGlvbignYXR0cnMnLCB7XG4gICAgICAgIHR5cGU6ICdhcnJheScsXG4gICAgICAgIGNob2ljZXM6IFsnbmFtZScsICd2ZXJzaW9uJywgJ3Jvb3QnLCAnc2x1ZyddLFxuICAgICAgICBkZWZhdWx0OiBbXSBhcyBBdHRyaWJ1dGVbXSxcbiAgICAgICAgZ3JvdXA6ICdGb3JtYXQ6JyxcbiAgICAgICAgZGVzYzogJ1NlbGVjdCBwcmludGVkIGF0dHJpYnV0ZXMnXG4gICAgICB9KVxuICAgICAgLm9wdGlvbignaGVhZGVycycsIHtcbiAgICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgICBncm91cDogJ0Zvcm1hdDonLFxuICAgICAgICBkZXNjOiAnUHJpbnRzIGNvbHVtbnMgaGVhZGVycydcbiAgICAgIH0pXG4gICAgICAub3B0aW9uKCdsb25nJywge1xuICAgICAgICBhbGlhczogJ2wnLFxuICAgICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgICAgIGdyb3VwOiAnRm9ybWF0OicsXG4gICAgICAgIGRlc2M6ICdQcmludHMgbmFtZSwgdmVyc2lvbiBhbmQgcm9vdCBvZiBhbGwgd29ya3NwYWNlcycsXG4gICAgICB9KVxuICAgICAgLm9wdGlvbignanNvbicsIHtcbiAgICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgICBncm91cDogJ0Zvcm1hdDonLFxuICAgICAgICBkZXNjOiAnUHJpbnRzIGRhdGEgYXMgYSBKU09OIGFycmF5JyxcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBydW4oYXJnczogQXJndW1lbnRzPExpc3RBcmdzPik6IFByb21pc2U8bnVtYmVyIHwgdm9pZD4ge1xuICAgIGF3YWl0IHN1cGVyLnJ1bihhcmdzKTtcblxuICAgIC8vIFNldHVwIHBpcGVsaW5lXG4gICAgY29uc3QgcGlwZWxpbmUgPSBuZXcgUGlwZWxpbmUoKTtcblxuICAgIGlmIChhcmdzLnByaXZhdGUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcGlwZWxpbmUuYWRkKEZpbHRlci5wcml2YXRlV29ya3NwYWNlKGFyZ3MucHJpdmF0ZSkpO1xuICAgIH1cblxuICAgIGlmIChhcmdzWyd3aXRoLXNjcmlwdCddICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHBpcGVsaW5lLmFkZChGaWx0ZXIuc2NyaXB0cyhhcmdzWyd3aXRoLXNjcmlwdCddKSk7XG4gICAgfVxuXG4gICAgaWYgKGFyZ3MuYWZmZWN0ZWQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcGlwZWxpbmUuYWRkKG5ldyBBZmZlY3RlZEZpbHRlcihcbiAgICAgICAgYXJncy5hZmZlY3RlZCxcbiAgICAgICAgYXJnc1snYWZmZWN0ZWQtcmV2LWZhbGxiYWNrJ10sXG4gICAgICAgIGFyZ3NbJ2FmZmVjdGVkLXJldi1zb3J0J11cbiAgICAgICkpO1xuICAgIH1cblxuICAgIC8vIEZpbHRlclxuICAgIGNvbnN0IHdvcmtzcGFjZXM6IFdvcmtzcGFjZVtdID0gW107XG5cbiAgICBmb3IgYXdhaXQgKGNvbnN0IHdrcyBvZiBwaXBlbGluZS5maWx0ZXIodGhpcy5wcm9qZWN0LndvcmtzcGFjZXMoKSkpIHtcbiAgICAgIHdvcmtzcGFjZXMucHVzaCh3a3MpO1xuICAgIH1cblxuICAgIHRoaXMuc3Bpbm5lci5zdG9wKCk7XG5cbiAgICAvLyBCdWlsZCBkYXRhXG4gICAgbGV0IGF0dHJzID0gYXJncy5hdHRycztcblxuICAgIGlmIChhcmdzLmF0dHJzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgaWYgKGFyZ3MubG9uZykge1xuICAgICAgICBhdHRycyA9IExPTkdfQVRUUklCVVRFUztcbiAgICAgIH0gZWxzZSBpZiAoYXJncy5qc29uKSB7XG4gICAgICAgIGF0dHJzID0gSlNPTl9BVFRSSUJVVEVTO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgYXR0cnMgPSBERUZBVUxUX0FUVFJJQlVURVM7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgZGF0YSA9IHdvcmtzcGFjZXMubWFwKHdrcyA9PiB0aGlzLmJ1aWxkRXh0cmFjdG9yKGF0dHJzKSh3a3MsIGFyZ3MuanNvbiB8fCBmYWxzZSkpO1xuXG4gICAgLy8gUHJpbnQgZGF0YVxuICAgIGlmIChhcmdzLmpzb24pIHtcbiAgICAgIGlmIChwcm9jZXNzLnN0ZG91dC5pc1RUWSkgeyAvLyBQcmV0dHkgcHJpbnQgZm9yIHR0eXNcbiAgICAgICAgdGhpcy5sb2coSlNPTi5zdHJpbmdpZnkoZGF0YSwgbnVsbCwgMikpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5sb2coSlNPTi5zdHJpbmdpZnkoZGF0YSkpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBsaXN0ID0gbmV3IENsaUxpc3QoKTtcblxuICAgICAgaWYgKGFyZ3MuaGVhZGVycyA/PyAoYXR0cnMubGVuZ3RoID4gMSkpIHtcbiAgICAgICAgbGlzdC5zZXRIZWFkZXJzKGF0dHJzKTtcbiAgICAgIH1cblxuICAgICAgZm9yIChjb25zdCBkIG9mIGRhdGEpIHtcbiAgICAgICAgaWYgKGQucm9vdCkge1xuICAgICAgICAgIGQucm9vdCA9IHBhdGgucmVsYXRpdmUocHJvY2Vzcy5jd2QoKSwgZC5yb290KSB8fCAnLic7XG4gICAgICAgIH1cblxuICAgICAgICBsaXN0LmFkZChhdHRycy5tYXAoYXR0ciA9PiBkW2F0dHJdIHx8ICcnKSk7XG4gICAgICB9XG5cbiAgICAgIGZvciAoY29uc3QgZCBvZiBsaXN0LmxpbmVzKCkpIHtcbiAgICAgICAgdGhpcy5sb2coZCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59Il0sImZpbGUiOiJjb21tYW5kcy9saXN0LmNvbW1hbmQuanMifQ==
251
+ //# sourceMappingURL=list.command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["commands/list.command.ts","commands/list.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","LONG_ATTRIBUTES","JSON_ATTRIBUTES","DEFAULT_ATTRIBUTES","EXTRACTORS","name","wks","version","json","manifest","undefined","chalk","grey","root","cwd","slug","ListCommand","ProjectCommand","constructor","arguments","description","buildExtractor","attrs","data","attr","define","builder","y","option","type","group","desc","string","alias","coerce","rev","default","choices","run","args","_super","Object","create","get","e_1","_a","_b","pipeline","Pipeline","private","add","Filter","privateWorkspace","scripts","affected","AffectedFilter","workspaces","_c","filter","project","_d","push","e_1_1","error","return","spinner","stop","length","long","map","process","stdout","isTTY","log","JSON","stringify","list","CliList","headers","setHeaders","path","relative","lines"],"mappings":"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","file":"list.command.js","sourcesContent":["import { AffectedFilter, Arguments, Builder, CliList, Filter, Pipeline, ProjectArgs, ProjectCommand } from '@jujulego/jill-common';\nimport { Workspace } from '@jujulego/jill-core';\nimport chalk from 'chalk';\nimport slugify from 'slugify';\nimport path from 'path';\n\n// Types\nexport type Attribute = 'name' | 'version' | 'root' | 'slug';\nexport type Data = Partial<Record<Attribute, string>>;\n\ntype Extractor<T> = (wks: Workspace, json: boolean) => T;\n\nexport interface ListArgs extends ProjectArgs {\n private: boolean | undefined;\n 'with-script': string[] | undefined;\n\n affected: string | undefined;\n 'affected-rev-sort': string | undefined;\n 'affected-rev-fallback': string;\n\n attrs: Attribute[];\n headers: boolean | undefined;\n long: boolean | undefined;\n json: boolean | undefined;\n}\n\n// Constants\nconst LONG_ATTRIBUTES: Attribute[] = ['name', 'version', 'root'];\nconst JSON_ATTRIBUTES: Attribute[] = ['name', 'version', 'slug', 'root'];\nconst DEFAULT_ATTRIBUTES: Attribute[] = ['name'];\n\nconst EXTRACTORS: Record<Attribute, Extractor<string | undefined>> = {\n name: wks => wks.name,\n version: (wks, json) => wks.manifest.version || (json ? undefined : chalk.grey('unset')),\n root: wks => wks.cwd,\n slug: wks => slugify(wks.name)\n};\n\n// Command\nexport class ListCommand extends ProjectCommand<ListArgs> {\n // Attributes\n readonly name = ['list', 'ls'];\n readonly description = 'List workspaces';\n\n // Methods\n private buildExtractor(attrs: Attribute[]): Extractor<Data> {\n return (wks, json: boolean) => {\n const data: Data = {};\n\n for (const attr of attrs) {\n data[attr] = EXTRACTORS[attr](wks, json);\n }\n\n return data;\n };\n }\n\n protected define<T, U>(builder: Builder<T, U>): Builder<T, U & ListArgs> {\n return super.define(y => builder(y)\n .option('private', {\n type: 'boolean',\n group: 'Filters:',\n desc: 'Print only private workspaces',\n })\n .option('with-script', {\n type: 'array',\n string: true,\n group: 'Filters:',\n desc: 'Print only workspaces having the given script',\n })\n .option('affected', {\n alias: 'a',\n type: 'string',\n coerce: (rev: string) => rev === '' ? 'master' : rev,\n group: 'Affected:',\n desc: 'Print only affected workspaces towards given git revision. If no revision is given, it will check towards master.\\n' +\n 'Replaces %name by workspace name.',\n })\n .option('affected-rev-sort', {\n type: 'string',\n group: 'Affected:',\n desc: 'Sort applied to git tag / git branch command',\n })\n .option('affected-rev-fallback', {\n type: 'string',\n default: 'master',\n group: 'Affected:',\n desc: 'Fallback revision, used if no revision matching the given format is found',\n })\n .option('attrs', {\n type: 'array',\n choices: ['name', 'version', 'root', 'slug'],\n default: [] as Attribute[],\n group: 'Format:',\n desc: 'Select printed attributes'\n })\n .option('headers', {\n type: 'boolean',\n group: 'Format:',\n desc: 'Prints columns headers'\n })\n .option('long', {\n alias: 'l',\n type: 'boolean',\n group: 'Format:',\n desc: 'Prints name, version and root of all workspaces',\n })\n .option('json', {\n type: 'boolean',\n group: 'Format:',\n desc: 'Prints data as a JSON array',\n })\n );\n }\n\n protected async run(args: Arguments<ListArgs>): Promise<number | void> {\n await super.run(args);\n\n // Setup pipeline\n const pipeline = new Pipeline();\n\n if (args.private !== undefined) {\n pipeline.add(Filter.privateWorkspace(args.private));\n }\n\n if (args['with-script'] !== undefined) {\n pipeline.add(Filter.scripts(args['with-script']));\n }\n\n if (args.affected !== undefined) {\n pipeline.add(new AffectedFilter(\n args.affected,\n args['affected-rev-fallback'],\n args['affected-rev-sort']\n ));\n }\n\n // Filter\n const workspaces: Workspace[] = [];\n\n for await (const wks of pipeline.filter(this.project.workspaces())) {\n workspaces.push(wks);\n }\n\n this.spinner.stop();\n\n // Build data\n let attrs = args.attrs;\n\n if (args.attrs.length === 0) {\n if (args.long) {\n attrs = LONG_ATTRIBUTES;\n } else if (args.json) {\n attrs = JSON_ATTRIBUTES;\n } else {\n attrs = DEFAULT_ATTRIBUTES;\n }\n }\n\n const data = workspaces.map(wks => this.buildExtractor(attrs)(wks, args.json || false));\n\n // Print data\n if (args.json) {\n if (process.stdout.isTTY) { // Pretty print for ttys\n this.log(JSON.stringify(data, null, 2));\n } else {\n this.log(JSON.stringify(data));\n }\n } else {\n const list = new CliList();\n\n if (args.headers ?? (attrs.length > 1)) {\n list.setHeaders(attrs);\n }\n\n for (const d of data) {\n if (d.root) {\n d.root = path.relative(process.cwd(), d.root) || '.';\n }\n\n list.add(attrs.map(attr => d[attr] || ''));\n }\n\n for (const d of list.lines()) {\n this.log(d);\n }\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 { AffectedFilter, CliList, Filter, Pipeline, ProjectCommand } from '@jujulego/jill-common';\nimport chalk from 'chalk';\nimport slugify from 'slugify';\nimport path from 'path';\n// Constants\nconst LONG_ATTRIBUTES = ['name', 'version', 'root'];\nconst JSON_ATTRIBUTES = ['name', 'version', 'slug', 'root'];\nconst DEFAULT_ATTRIBUTES = ['name'];\nconst EXTRACTORS = {\n name: wks => wks.name,\n version: (wks, json) => wks.manifest.version || (json ? undefined : chalk.grey('unset')),\n root: wks => wks.cwd,\n slug: wks => slugify(wks.name)\n};\n// Command\nexport class ListCommand extends ProjectCommand {\n constructor() {\n super(...arguments);\n // Attributes\n this.name = ['list', 'ls'];\n this.description = 'List workspaces';\n }\n // Methods\n buildExtractor(attrs) {\n return (wks, json) => {\n const data = {};\n for (const attr of attrs) {\n data[attr] = EXTRACTORS[attr](wks, json);\n }\n return data;\n };\n }\n define(builder) {\n return super.define(y => builder(y)\n .option('private', {\n type: 'boolean',\n group: 'Filters:',\n desc: 'Print only private workspaces',\n })\n .option('with-script', {\n type: 'array',\n string: true,\n group: 'Filters:',\n desc: 'Print only workspaces having the given script',\n })\n .option('affected', {\n alias: 'a',\n type: 'string',\n coerce: (rev) => rev === '' ? 'master' : rev,\n group: 'Affected:',\n desc: 'Print only affected workspaces towards given git revision. If no revision is given, it will check towards master.\\n' +\n 'Replaces %name by workspace name.',\n })\n .option('affected-rev-sort', {\n type: 'string',\n group: 'Affected:',\n desc: 'Sort applied to git tag / git branch command',\n })\n .option('affected-rev-fallback', {\n type: 'string',\n default: 'master',\n group: 'Affected:',\n desc: 'Fallback revision, used if no revision matching the given format is found',\n })\n .option('attrs', {\n type: 'array',\n choices: ['name', 'version', 'root', 'slug'],\n default: [],\n group: 'Format:',\n desc: 'Select printed attributes'\n })\n .option('headers', {\n type: 'boolean',\n group: 'Format:',\n desc: 'Prints columns headers'\n })\n .option('long', {\n alias: 'l',\n type: 'boolean',\n group: 'Format:',\n desc: 'Prints name, version and root of all workspaces',\n })\n .option('json', {\n type: 'boolean',\n group: 'Format:',\n desc: 'Prints data as a JSON array',\n }));\n }\n run(args) {\n const _super = Object.create(null, {\n run: { get: () => super.run }\n });\n var e_1, _a;\n var _b;\n return __awaiter(this, void 0, void 0, function* () {\n yield _super.run.call(this, args);\n // Setup pipeline\n const pipeline = new Pipeline();\n if (args.private !== undefined) {\n pipeline.add(Filter.privateWorkspace(args.private));\n }\n if (args['with-script'] !== undefined) {\n pipeline.add(Filter.scripts(args['with-script']));\n }\n if (args.affected !== undefined) {\n pipeline.add(new AffectedFilter(args.affected, args['affected-rev-fallback'], args['affected-rev-sort']));\n }\n // Filter\n const workspaces = [];\n try {\n for (var _c = __asyncValues(pipeline.filter(this.project.workspaces())), _d; _d = yield _c.next(), !_d.done;) {\n const wks = _d.value;\n workspaces.push(wks);\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_d && !_d.done && (_a = _c.return)) yield _a.call(_c);\n }\n finally { if (e_1) throw e_1.error; }\n }\n this.spinner.stop();\n // Build data\n let attrs = args.attrs;\n if (args.attrs.length === 0) {\n if (args.long) {\n attrs = LONG_ATTRIBUTES;\n }\n else if (args.json) {\n attrs = JSON_ATTRIBUTES;\n }\n else {\n attrs = DEFAULT_ATTRIBUTES;\n }\n }\n const data = workspaces.map(wks => this.buildExtractor(attrs)(wks, args.json || false));\n // Print data\n if (args.json) {\n if (process.stdout.isTTY) { // Pretty print for ttys\n this.log(JSON.stringify(data, null, 2));\n }\n else {\n this.log(JSON.stringify(data));\n }\n }\n else {\n const list = new CliList();\n if ((_b = args.headers) !== null && _b !== void 0 ? _b : (attrs.length > 1)) {\n list.setHeaders(attrs);\n }\n for (const d of data) {\n if (d.root) {\n d.root = path.relative(process.cwd(), d.root) || '.';\n }\n list.add(attrs.map(attr => d[attr] || ''));\n }\n for (const d of list.lines()) {\n this.log(d);\n }\n }\n });\n }\n}"]}
@@ -1,6 +1,5 @@
1
+ import { Arguments, Builder, WorkspaceArgs, WorkspaceCommand } from '@jujulego/jill-common';
1
2
  import { WorkspaceDepsMode } from '@jujulego/jill-core';
2
- import { Arguments, Builder } from '../command';
3
- import { WorkspaceArgs, WorkspaceCommand } from '../workspace.command';
4
3
  export interface RunArgs extends WorkspaceArgs {
5
4
  script: string;
6
5
  'deps-mode': WorkspaceDepsMode;
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["commands/run.command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC5F,OAAO,EAAW,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAKjE,MAAM,WAAW,OAAQ,SAAQ,aAAa;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,iBAAiB,CAAC;CAChC;AAGD,qBAAa,UAAW,SAAQ,gBAAgB,CAAC,OAAO,CAAC;IAEvD,QAAQ,CAAC,IAAI,kBAAkB;IAC/B,QAAQ,CAAC,WAAW,iCAAiC;IAGrD,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC;cAcvD,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;CAqB/D","file":"run.command.d.ts","sourcesContent":["import { Arguments, Builder, WorkspaceArgs, WorkspaceCommand } from '@jujulego/jill-common';\nimport { TaskSet, WorkspaceDepsMode } from '@jujulego/jill-core';\n\nimport { TaskLogger } from '../task-logger';\n\n// Types\nexport interface RunArgs extends WorkspaceArgs {\n script: string;\n 'deps-mode': WorkspaceDepsMode;\n}\n\n// Command\nexport class RunCommand extends WorkspaceCommand<RunArgs> {\n // Attributes\n readonly name = 'run <script>';\n readonly description = 'Run script inside workspace';\n\n // Methods\n protected define<T, U>(builder: Builder<T, U>): Builder<T, U & RunArgs> {\n return super.define(y => builder(y)\n .positional('script', { type: 'string', demandOption: true })\n .option('deps-mode', {\n choice: ['all', 'prod', 'none'],\n default: 'all' as WorkspaceDepsMode,\n desc: 'Dependency selection mode:\\n' +\n ' - all = dependencies AND devDependencies\\n' +\n ' - prod = dependencies\\n' +\n ' - none = nothing'\n })\n );\n }\n\n protected async run(args: Arguments<RunArgs>): Promise<number> {\n await super.run(args);\n this.spinner.stop();\n\n // Run build task\n const set = new TaskSet();\n const task = await this.workspace.run(args.script, args['--']?.map(arg => arg.toString()), {\n buildDeps: args['deps-mode']\n });\n set.add(task);\n\n const tlogger = new TaskLogger();\n tlogger.on('spin-simple', (tsk) => tsk === task ? `Running ${args.script} in ${this.workspace.name} ...` : `Building ${tsk.context.workspace?.name} ...`);\n tlogger.on('fail', (tsk) => tsk === task ? `${args.script} failed` : `Failed to build ${tsk.context.workspace?.name}`);\n tlogger.on('succeed', (tsk) => tsk === task ? `${this.workspace.name} ${args.script} done` : `${tsk.context.workspace?.name} built`);\n tlogger.connect(set);\n\n set.start();\n const [result] = await set.waitFor('finished');\n return result.failed === 0 ? 0 : 1;\n }\n}\n"]}
@@ -5,25 +5,54 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.RunCommand = void 0;
7
7
 
8
- var _jillCore = require("@jujulego/jill-core");
8
+ var _jillCommon = require("@jujulego/jill-common");
9
9
 
10
- var _workspace = require("../workspace.command");
10
+ var _jillCore = require("@jujulego/jill-core");
11
11
 
12
12
  var _taskLogger = require("../task-logger");
13
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; }
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
+ });
19
+ }
20
+
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
+
30
+ function rejected(value) {
31
+ try {
32
+ step(generator["throw"](value));
33
+ } catch (e) {
34
+ reject(e);
35
+ }
36
+ }
37
+
38
+ function step(result) {
39
+ result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);
40
+ }
41
+
42
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
43
+ });
44
+ };
15
45
 
16
46
  // Command
17
- class RunCommand extends _workspace.WorkspaceCommand {
18
- constructor(...args) {
19
- super(...args);
47
+ class RunCommand extends _jillCommon.WorkspaceCommand {
48
+ constructor() {
49
+ super(...arguments); // Attributes
20
50
 
21
- _defineProperty(this, "name", 'run <script>');
51
+ this.name = 'run <script>';
52
+ this.description = 'Run script inside workspace';
53
+ } // Methods
22
54
 
23
- _defineProperty(this, "description", 'Run script inside workspace');
24
- }
25
55
 
26
- // Methods
27
56
  define(builder) {
28
57
  return super.define(y => builder(y).positional('script', {
29
58
  type: 'string',
@@ -35,26 +64,48 @@ class RunCommand extends _workspace.WorkspaceCommand {
35
64
  }));
36
65
  }
37
66
 
38
- async run(args) {
39
- await super.run(args);
40
- this.spinner.stop(); // Run build task
67
+ run(args) {
68
+ const _super = Object.create(null, {
69
+ run: {
70
+ get: () => super.run
71
+ }
72
+ });
73
+
74
+ var _a;
75
+
76
+ return __awaiter(this, void 0, void 0, function* () {
77
+ yield _super.run.call(this, args);
78
+ this.spinner.stop(); // Run build task
79
+
80
+ const set = new _jillCore.TaskSet();
81
+ const task = yield this.workspace.run(args.script, (_a = args['--']) === null || _a === void 0 ? void 0 : _a.map(arg => arg.toString()), {
82
+ buildDeps: args['deps-mode']
83
+ });
84
+ set.add(task);
85
+ const tlogger = new _taskLogger.TaskLogger();
86
+ tlogger.on('spin-simple', tsk => {
87
+ var _a;
88
+
89
+ return tsk === task ? `Running ${args.script} in ${this.workspace.name} ...` : `Building ${(_a = tsk.context.workspace) === null || _a === void 0 ? void 0 : _a.name} ...`;
90
+ });
91
+ tlogger.on('fail', tsk => {
92
+ var _a;
93
+
94
+ return tsk === task ? `${args.script} failed` : `Failed to build ${(_a = tsk.context.workspace) === null || _a === void 0 ? void 0 : _a.name}`;
95
+ });
96
+ tlogger.on('succeed', tsk => {
97
+ var _a;
41
98
 
42
- const set = new _jillCore.TaskSet();
43
- const task = await this.workspace.run(args.script, args['--']?.map(arg => arg.toString()), {
44
- buildDeps: args['deps-mode']
99
+ return tsk === task ? `${this.workspace.name} ${args.script} done` : `${(_a = tsk.context.workspace) === null || _a === void 0 ? void 0 : _a.name} built`;
100
+ });
101
+ tlogger.connect(set);
102
+ set.start();
103
+ const [result] = yield set.waitFor('finished');
104
+ return result.failed === 0 ? 0 : 1;
45
105
  });
46
- set.add(task);
47
- const tlogger = new _taskLogger.TaskLogger();
48
- tlogger.on('spin-simple', tsk => tsk === task ? `Running ${args.script} in ${this.workspace.name} ...` : `Building ${tsk.context.workspace?.name} ...`);
49
- tlogger.on('fail', tsk => tsk === task ? `${args.script} failed` : `Failed to build ${tsk.context.workspace?.name}`);
50
- tlogger.on('succeed', tsk => tsk === task ? `${this.workspace.name} ${args.script} done` : `${tsk.context.workspace?.name} built`);
51
- tlogger.connect(set);
52
- set.start();
53
- const [result] = await set.waitFor('finished');
54
- return result.failed === 0 ? 0 : 1;
55
106
  }
56
107
 
57
108
  }
58
109
 
59
110
  exports.RunCommand = RunCommand;
60
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbW1hbmRzL3J1bi5jb21tYW5kLnRzIl0sIm5hbWVzIjpbIlJ1bkNvbW1hbmQiLCJXb3Jrc3BhY2VDb21tYW5kIiwiZGVmaW5lIiwiYnVpbGRlciIsInkiLCJwb3NpdGlvbmFsIiwidHlwZSIsImRlbWFuZE9wdGlvbiIsIm9wdGlvbiIsImNob2ljZSIsImRlZmF1bHQiLCJkZXNjIiwicnVuIiwiYXJncyIsInNwaW5uZXIiLCJzdG9wIiwic2V0IiwiVGFza1NldCIsInRhc2siLCJ3b3Jrc3BhY2UiLCJzY3JpcHQiLCJtYXAiLCJhcmciLCJ0b1N0cmluZyIsImJ1aWxkRGVwcyIsImFkZCIsInRsb2dnZXIiLCJUYXNrTG9nZ2VyIiwib24iLCJ0c2siLCJuYW1lIiwiY29udGV4dCIsImNvbm5lY3QiLCJzdGFydCIsInJlc3VsdCIsIndhaXRGb3IiLCJmYWlsZWQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTs7QUFHQTs7QUFDQTs7OztBQVFBO0FBQ08sTUFBTUEsVUFBTixTQUF5QkMsMkJBQXpCLENBQW1EO0FBQUE7QUFBQTs7QUFBQSxrQ0FFeEMsY0FGd0M7O0FBQUEseUNBR2pDLDZCQUhpQztBQUFBOztBQUt4RDtBQUNVQyxFQUFBQSxNQUFNLENBQU9DLE9BQVAsRUFBd0Q7QUFDdEUsV0FBTyxNQUFNRCxNQUFOLENBQWFFLENBQUMsSUFBSUQsT0FBTyxDQUFDQyxDQUFELENBQVAsQ0FDdEJDLFVBRHNCLENBQ1gsUUFEVyxFQUNEO0FBQUVDLE1BQUFBLElBQUksRUFBRSxRQUFSO0FBQWtCQyxNQUFBQSxZQUFZLEVBQUU7QUFBaEMsS0FEQyxFQUV0QkMsTUFGc0IsQ0FFZixXQUZlLEVBRUY7QUFDbkJDLE1BQUFBLE1BQU0sRUFBRSxDQUFDLEtBQUQsRUFBUSxNQUFSLEVBQWdCLE1BQWhCLENBRFc7QUFFbkJDLE1BQUFBLE9BQU8sRUFBRSxLQUZVO0FBR25CQyxNQUFBQSxJQUFJLEVBQUUsaUNBQ0osNkNBREksR0FFSiwwQkFGSSxHQUdKO0FBTmlCLEtBRkUsQ0FBbEIsQ0FBUDtBQVdEOztBQUVrQixRQUFIQyxHQUFHLENBQUNDLElBQUQsRUFBNEM7QUFDN0QsVUFBTSxNQUFNRCxHQUFOLENBQVVDLElBQVYsQ0FBTjtBQUNBLFNBQUtDLE9BQUwsQ0FBYUMsSUFBYixHQUY2RCxDQUk3RDs7QUFDQSxVQUFNQyxHQUFHLEdBQUcsSUFBSUMsaUJBQUosRUFBWjtBQUNBLFVBQU1DLElBQUksR0FBRyxNQUFNLEtBQUtDLFNBQUwsQ0FBZVAsR0FBZixDQUFtQkMsSUFBSSxDQUFDTyxNQUF4QixFQUFnQ1AsSUFBSSxDQUFDLElBQUQsQ0FBSixFQUFZUSxHQUFaLENBQWdCQyxHQUFHLElBQUlBLEdBQUcsQ0FBQ0MsUUFBSixFQUF2QixDQUFoQyxFQUF3RTtBQUN6RkMsTUFBQUEsU0FBUyxFQUFFWCxJQUFJLENBQUMsV0FBRDtBQUQwRSxLQUF4RSxDQUFuQjtBQUdBRyxJQUFBQSxHQUFHLENBQUNTLEdBQUosQ0FBUVAsSUFBUjtBQUVBLFVBQU1RLE9BQU8sR0FBRyxJQUFJQyxzQkFBSixFQUFoQjtBQUNBRCxJQUFBQSxPQUFPLENBQUNFLEVBQVIsQ0FBVyxhQUFYLEVBQTJCQyxHQUFELElBQVNBLEdBQUcsS0FBS1gsSUFBUixHQUFnQixXQUFVTCxJQUFJLENBQUNPLE1BQU8sT0FBTSxLQUFLRCxTQUFMLENBQWVXLElBQUssTUFBaEUsR0FBeUUsWUFBV0QsR0FBRyxDQUFDRSxPQUFKLENBQVlaLFNBQVosRUFBdUJXLElBQUssTUFBbko7QUFDQUosSUFBQUEsT0FBTyxDQUFDRSxFQUFSLENBQVcsTUFBWCxFQUFvQkMsR0FBRCxJQUFTQSxHQUFHLEtBQUtYLElBQVIsR0FBZ0IsR0FBRUwsSUFBSSxDQUFDTyxNQUFPLFNBQTlCLEdBQTBDLG1CQUFrQlMsR0FBRyxDQUFDRSxPQUFKLENBQVlaLFNBQVosRUFBdUJXLElBQUssRUFBcEg7QUFDQUosSUFBQUEsT0FBTyxDQUFDRSxFQUFSLENBQVcsU0FBWCxFQUF1QkMsR0FBRCxJQUFTQSxHQUFHLEtBQUtYLElBQVIsR0FBZ0IsR0FBRSxLQUFLQyxTQUFMLENBQWVXLElBQUssSUFBR2pCLElBQUksQ0FBQ08sTUFBTyxPQUFyRCxHQUErRCxHQUFFUyxHQUFHLENBQUNFLE9BQUosQ0FBWVosU0FBWixFQUF1QlcsSUFBSyxRQUE1SDtBQUNBSixJQUFBQSxPQUFPLENBQUNNLE9BQVIsQ0FBZ0JoQixHQUFoQjtBQUVBQSxJQUFBQSxHQUFHLENBQUNpQixLQUFKO0FBQ0EsVUFBTSxDQUFDQyxNQUFELElBQVcsTUFBTWxCLEdBQUcsQ0FBQ21CLE9BQUosQ0FBWSxVQUFaLENBQXZCO0FBQ0EsV0FBT0QsTUFBTSxDQUFDRSxNQUFQLEtBQWtCLENBQWxCLEdBQXNCLENBQXRCLEdBQTBCLENBQWpDO0FBQ0Q7O0FBeEN1RCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRhc2tTZXQsIFdvcmtzcGFjZURlcHNNb2RlIH0gZnJvbSAnQGp1anVsZWdvL2ppbGwtY29yZSc7XG5cbmltcG9ydCB7IEFyZ3VtZW50cywgQnVpbGRlciB9IGZyb20gJy4uL2NvbW1hbmQnO1xuaW1wb3J0IHsgV29ya3NwYWNlQXJncywgV29ya3NwYWNlQ29tbWFuZCB9IGZyb20gJy4uL3dvcmtzcGFjZS5jb21tYW5kJztcbmltcG9ydCB7IFRhc2tMb2dnZXIgfSBmcm9tICcuLi90YXNrLWxvZ2dlcic7XG5cbi8vIFR5cGVzXG5leHBvcnQgaW50ZXJmYWNlIFJ1bkFyZ3MgZXh0ZW5kcyBXb3Jrc3BhY2VBcmdzIHtcbiAgc2NyaXB0OiBzdHJpbmc7XG4gICdkZXBzLW1vZGUnOiBXb3Jrc3BhY2VEZXBzTW9kZTtcbn1cblxuLy8gQ29tbWFuZFxuZXhwb3J0IGNsYXNzIFJ1bkNvbW1hbmQgZXh0ZW5kcyBXb3Jrc3BhY2VDb21tYW5kPFJ1bkFyZ3M+IHtcbiAgLy8gQXR0cmlidXRlc1xuICByZWFkb25seSBuYW1lID0gJ3J1biA8c2NyaXB0Pic7XG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uID0gJ1J1biBzY3JpcHQgaW5zaWRlIHdvcmtzcGFjZSc7XG5cbiAgLy8gTWV0aG9kc1xuICBwcm90ZWN0ZWQgZGVmaW5lPFQsIFU+KGJ1aWxkZXI6IEJ1aWxkZXI8VCwgVT4pOiBCdWlsZGVyPFQsIFUgJiBSdW5BcmdzPiB7XG4gICAgcmV0dXJuIHN1cGVyLmRlZmluZSh5ID0+IGJ1aWxkZXIoeSlcbiAgICAgIC5wb3NpdGlvbmFsKCdzY3JpcHQnLCB7IHR5cGU6ICdzdHJpbmcnLCBkZW1hbmRPcHRpb246IHRydWUgfSlcbiAgICAgIC5vcHRpb24oJ2RlcHMtbW9kZScsIHtcbiAgICAgICAgY2hvaWNlOiBbJ2FsbCcsICdwcm9kJywgJ25vbmUnXSxcbiAgICAgICAgZGVmYXVsdDogJ2FsbCcgYXMgV29ya3NwYWNlRGVwc01vZGUsXG4gICAgICAgIGRlc2M6ICdEZXBlbmRlbmN5IHNlbGVjdGlvbiBtb2RlOlxcbicgK1xuICAgICAgICAgICcgLSBhbGwgPSBkZXBlbmRlbmNpZXMgQU5EIGRldkRlcGVuZGVuY2llc1xcbicgK1xuICAgICAgICAgICcgLSBwcm9kID0gZGVwZW5kZW5jaWVzXFxuJyArXG4gICAgICAgICAgJyAtIG5vbmUgPSBub3RoaW5nJ1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIHJ1bihhcmdzOiBBcmd1bWVudHM8UnVuQXJncz4pOiBQcm9taXNlPG51bWJlcj4ge1xuICAgIGF3YWl0IHN1cGVyLnJ1bihhcmdzKTtcbiAgICB0aGlzLnNwaW5uZXIuc3RvcCgpO1xuXG4gICAgLy8gUnVuIGJ1aWxkIHRhc2tcbiAgICBjb25zdCBzZXQgPSBuZXcgVGFza1NldCgpO1xuICAgIGNvbnN0IHRhc2sgPSBhd2FpdCB0aGlzLndvcmtzcGFjZS5ydW4oYXJncy5zY3JpcHQsIGFyZ3NbJy0tJ10/Lm1hcChhcmcgPT4gYXJnLnRvU3RyaW5nKCkpLCB7XG4gICAgICBidWlsZERlcHM6IGFyZ3NbJ2RlcHMtbW9kZSddXG4gICAgfSk7XG4gICAgc2V0LmFkZCh0YXNrKTtcblxuICAgIGNvbnN0IHRsb2dnZXIgPSBuZXcgVGFza0xvZ2dlcigpO1xuICAgIHRsb2dnZXIub24oJ3NwaW4tc2ltcGxlJywgKHRzaykgPT4gdHNrID09PSB0YXNrID8gYFJ1bm5pbmcgJHthcmdzLnNjcmlwdH0gaW4gJHt0aGlzLndvcmtzcGFjZS5uYW1lfSAuLi5gIDogYEJ1aWxkaW5nICR7dHNrLmNvbnRleHQud29ya3NwYWNlPy5uYW1lfSAuLi5gKTtcbiAgICB0bG9nZ2VyLm9uKCdmYWlsJywgKHRzaykgPT4gdHNrID09PSB0YXNrID8gYCR7YXJncy5zY3JpcHR9IGZhaWxlZGAgOiBgRmFpbGVkIHRvIGJ1aWxkICR7dHNrLmNvbnRleHQud29ya3NwYWNlPy5uYW1lfWApO1xuICAgIHRsb2dnZXIub24oJ3N1Y2NlZWQnLCAodHNrKSA9PiB0c2sgPT09IHRhc2sgPyBgJHt0aGlzLndvcmtzcGFjZS5uYW1lfSAke2FyZ3Muc2NyaXB0fSBkb25lYCA6IGAke3Rzay5jb250ZXh0LndvcmtzcGFjZT8ubmFtZX0gYnVpbHRgKTtcbiAgICB0bG9nZ2VyLmNvbm5lY3Qoc2V0KTtcblxuICAgIHNldC5zdGFydCgpO1xuICAgIGNvbnN0IFtyZXN1bHRdID0gYXdhaXQgc2V0LndhaXRGb3IoJ2ZpbmlzaGVkJyk7XG4gICAgcmV0dXJuIHJlc3VsdC5mYWlsZWQgPT09IDAgPyAwIDogMTtcbiAgfVxufSJdLCJmaWxlIjoiY29tbWFuZHMvcnVuLmNvbW1hbmQuanMifQ==
111
+ //# sourceMappingURL=run.command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["commands/run.command.ts","commands/run.command.js"],"names":["__awaiter","thisArg","_arguments","P","generator","adopt","value","resolve","Promise","reject","fulfilled","step","next","e","rejected","result","done","then","apply","RunCommand","WorkspaceCommand","constructor","arguments","name","description","define","builder","y","positional","type","demandOption","option","choice","default","desc","run","args","_super","Object","create","get","_a","call","spinner","stop","set","TaskSet","task","workspace","script","map","arg","toString","buildDeps","add","tlogger","TaskLogger","on","tsk","context","connect","start","waitFor","failed"],"mappings":"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","file":"run.command.js","sourcesContent":["import { Arguments, Builder, WorkspaceArgs, WorkspaceCommand } from '@jujulego/jill-common';\nimport { TaskSet, WorkspaceDepsMode } from '@jujulego/jill-core';\n\nimport { TaskLogger } from '../task-logger';\n\n// Types\nexport interface RunArgs extends WorkspaceArgs {\n script: string;\n 'deps-mode': WorkspaceDepsMode;\n}\n\n// Command\nexport class RunCommand extends WorkspaceCommand<RunArgs> {\n // Attributes\n readonly name = 'run <script>';\n readonly description = 'Run script inside workspace';\n\n // Methods\n protected define<T, U>(builder: Builder<T, U>): Builder<T, U & RunArgs> {\n return super.define(y => builder(y)\n .positional('script', { type: 'string', demandOption: true })\n .option('deps-mode', {\n choice: ['all', 'prod', 'none'],\n default: 'all' as WorkspaceDepsMode,\n desc: 'Dependency selection mode:\\n' +\n ' - all = dependencies AND devDependencies\\n' +\n ' - prod = dependencies\\n' +\n ' - none = nothing'\n })\n );\n }\n\n protected async run(args: Arguments<RunArgs>): Promise<number> {\n await super.run(args);\n this.spinner.stop();\n\n // Run build task\n const set = new TaskSet();\n const task = await this.workspace.run(args.script, args['--']?.map(arg => arg.toString()), {\n buildDeps: args['deps-mode']\n });\n set.add(task);\n\n const tlogger = new TaskLogger();\n tlogger.on('spin-simple', (tsk) => tsk === task ? `Running ${args.script} in ${this.workspace.name} ...` : `Building ${tsk.context.workspace?.name} ...`);\n tlogger.on('fail', (tsk) => tsk === task ? `${args.script} failed` : `Failed to build ${tsk.context.workspace?.name}`);\n tlogger.on('succeed', (tsk) => tsk === task ? `${this.workspace.name} ${args.script} done` : `${tsk.context.workspace?.name} built`);\n tlogger.connect(set);\n\n set.start();\n const [result] = await set.waitFor('finished');\n return result.failed === 0 ? 0 : 1;\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};\nimport { WorkspaceCommand } from '@jujulego/jill-common';\nimport { TaskSet } from '@jujulego/jill-core';\nimport { TaskLogger } from '../task-logger';\n// Command\nexport class RunCommand extends WorkspaceCommand {\n constructor() {\n super(...arguments);\n // Attributes\n this.name = 'run <script>';\n this.description = 'Run script inside workspace';\n }\n // Methods\n define(builder) {\n return super.define(y => builder(y)\n .positional('script', { type: 'string', demandOption: true })\n .option('deps-mode', {\n choice: ['all', 'prod', 'none'],\n default: 'all',\n desc: 'Dependency selection mode:\\n' +\n ' - all = dependencies AND devDependencies\\n' +\n ' - prod = dependencies\\n' +\n ' - none = nothing'\n }));\n }\n run(args) {\n const _super = Object.create(null, {\n run: { get: () => super.run }\n });\n var _a;\n return __awaiter(this, void 0, void 0, function* () {\n yield _super.run.call(this, args);\n this.spinner.stop();\n // Run build task\n const set = new TaskSet();\n const task = yield this.workspace.run(args.script, (_a = args['--']) === null || _a === void 0 ? void 0 : _a.map(arg => arg.toString()), {\n buildDeps: args['deps-mode']\n });\n set.add(task);\n const tlogger = new TaskLogger();\n tlogger.on('spin-simple', (tsk) => { var _a; return tsk === task ? `Running ${args.script} in ${this.workspace.name} ...` : `Building ${(_a = tsk.context.workspace) === null || _a === void 0 ? void 0 : _a.name} ...`; });\n tlogger.on('fail', (tsk) => { var _a; return tsk === task ? `${args.script} failed` : `Failed to build ${(_a = tsk.context.workspace) === null || _a === void 0 ? void 0 : _a.name}`; });\n tlogger.on('succeed', (tsk) => { var _a; return tsk === task ? `${this.workspace.name} ${args.script} done` : `${(_a = tsk.context.workspace) === null || _a === void 0 ? void 0 : _a.name} built`; });\n tlogger.connect(set);\n set.start();\n const [result] = yield set.waitFor('finished');\n return result.failed === 0 ? 0 : 1;\n });\n }\n}"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC","file":"index.d.ts","sourcesContent":["export { EachCommand } from './commands/each.command';\nexport { InfoCommand } from './commands/info.command';\nexport { ListCommand } from './commands/list.command';\nexport { RunCommand } from './commands/run.command';\n"]}
package/dist/index.js CHANGED
@@ -35,4 +35,4 @@ var _info = require("./commands/info.command");
35
35
  var _list = require("./commands/list.command");
36
36
 
37
37
  var _run = require("./commands/run.command");
38
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgRWFjaENvbW1hbmQgfSBmcm9tICcuL2NvbW1hbmRzL2VhY2guY29tbWFuZCc7XG5leHBvcnQgeyBJbmZvQ29tbWFuZCB9IGZyb20gJy4vY29tbWFuZHMvaW5mby5jb21tYW5kJztcbmV4cG9ydCB7IExpc3RDb21tYW5kIH0gZnJvbSAnLi9jb21tYW5kcy9saXN0LmNvbW1hbmQnO1xuZXhwb3J0IHsgUnVuQ29tbWFuZCB9IGZyb20gJy4vY29tbWFuZHMvcnVuLmNvbW1hbmQnO1xuIl0sImZpbGUiOiJpbmRleC5qcyJ9
38
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA","file":"index.js","sourcesContent":["export { EachCommand } from './commands/each.command';\nexport { InfoCommand } from './commands/info.command';\nexport { ListCommand } from './commands/list.command';\nexport { RunCommand } from './commands/run.command';\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["main.ts"],"names":[],"mappings":"","file":"main.d.ts","sourcesContent":["import { Plugin } from '@jujulego/jill-common';\nimport { hideBin } from 'yargs/helpers';\nimport yargs from 'yargs';\n\nimport { EachCommand } from './commands/each.command';\nimport { InfoCommand } from './commands/info.command';\nimport { ListCommand } from './commands/list.command';\nimport { RunCommand } from './commands/run.command';\nimport { MyrCommand } from './myr/myr.command';\nimport { WatchCommand } from './myr/watch.command';\n\n// Bootstrap\n(async () => {\n // Options\n const parser = await yargs(hideBin(process.argv))\n .scriptName('jill')\n .parserConfiguration({\n 'populate--': true,\n })\n .strictCommands()\n .help();\n\n const core = Plugin.createPlugin('core', [\n InfoCommand,\n ListCommand,\n RunCommand,\n EachCommand,\n ]);\n\n const myr = Plugin.createPlugin('myr', [\n MyrCommand,\n WatchCommand,\n ]);\n\n core.setup(parser);\n myr.setup(parser);\n\n await parser.parse();\n})();\n"]}