@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
@@ -1,80 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.AffectedFilter = void 0;
7
-
8
- var _jillCore = require("@jujulego/jill-core");
9
-
10
- var _filter = require("./filter");
11
-
12
- // Class
13
- class AffectedFilter extends _filter.Filter {
14
- // Constructor
15
- constructor(format, fallback, sort) {
16
- super();
17
- this.format = format;
18
- this.fallback = fallback;
19
- this.sort = sort;
20
- } // Methods
21
-
22
-
23
- async _formatRevision(wks) {
24
- const log = _jillCore.logger.child({
25
- label: wks.name
26
- }); // Format revision
27
-
28
-
29
- let result = this.format;
30
- result = result.replace(/(?<!\\)((?:\\\\)*)%name/g, `$1${wks.name}`);
31
- result = result.replace(/\\(.)/g, '$1'); // Ask git to complete it
32
-
33
- const sortArgs = this.sort ? ['--sort', this.sort] : []; // - search in branches
34
-
35
- if (result.includes('*')) {
36
- const branches = await _jillCore.git.listBranches([...sortArgs, result], {
37
- cwd: wks.cwd,
38
- logger: log,
39
- streamLogLevel: 'debug'
40
- });
41
-
42
- if (branches.length > 0) {
43
- result = branches[branches.length - 1];
44
- }
45
- } // - search in tags
46
-
47
-
48
- if (result.includes('*')) {
49
- const tags = await _jillCore.git.listTags([...sortArgs, result], {
50
- cwd: wks.cwd,
51
- logger: log,
52
- streamLogLevel: 'debug'
53
- });
54
-
55
- if (tags.length > 0) {
56
- result = tags[tags.length - 1];
57
- }
58
- }
59
-
60
- if (result !== this.format) {
61
- log.verbose(`Resolved ${this.format} into ${result}`);
62
- }
63
-
64
- if (result.includes('*')) {
65
- log.warn(`No revision found matching ${result}, using fallback ${this.fallback}`);
66
- return this.fallback;
67
- }
68
-
69
- return result;
70
- }
71
-
72
- async test(workspace) {
73
- const rev = await this._formatRevision(workspace);
74
- return await workspace.isAffected(rev);
75
- }
76
-
77
- }
78
-
79
- exports.AffectedFilter = AffectedFilter;
80
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImZpbHRlcnMvYWZmZWN0ZWQudHMiXSwibmFtZXMiOlsiQWZmZWN0ZWRGaWx0ZXIiLCJGaWx0ZXIiLCJjb25zdHJ1Y3RvciIsImZvcm1hdCIsImZhbGxiYWNrIiwic29ydCIsIl9mb3JtYXRSZXZpc2lvbiIsIndrcyIsImxvZyIsImxvZ2dlciIsImNoaWxkIiwibGFiZWwiLCJuYW1lIiwicmVzdWx0IiwicmVwbGFjZSIsInNvcnRBcmdzIiwiaW5jbHVkZXMiLCJicmFuY2hlcyIsImdpdCIsImxpc3RCcmFuY2hlcyIsImN3ZCIsInN0cmVhbUxvZ0xldmVsIiwibGVuZ3RoIiwidGFncyIsImxpc3RUYWdzIiwidmVyYm9zZSIsIndhcm4iLCJ0ZXN0Iiwid29ya3NwYWNlIiwicmV2IiwiaXNBZmZlY3RlZCJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOztBQUVBOztBQUVBO0FBQ08sTUFBTUEsY0FBTixTQUE2QkMsY0FBN0IsQ0FBb0M7QUFDekM7QUFDQUMsRUFBQUEsV0FBVyxDQUNBQyxNQURBLEVBRUFDLFFBRkEsRUFHQUMsSUFIQSxFQUlUO0FBQ0E7QUFEQSxTQUhTRixNQUdULEdBSFNBLE1BR1Q7QUFBQSxTQUZTQyxRQUVULEdBRlNBLFFBRVQ7QUFBQSxTQURTQyxJQUNULEdBRFNBLElBQ1Q7QUFFRCxHQVJ3QyxDQVV6Qzs7O0FBQzZCLFFBQWZDLGVBQWUsQ0FBQ0MsR0FBRCxFQUFrQztBQUM3RCxVQUFNQyxHQUFHLEdBQUdDLGlCQUFPQyxLQUFQLENBQWE7QUFBRUMsTUFBQUEsS0FBSyxFQUFFSixHQUFHLENBQUNLO0FBQWIsS0FBYixDQUFaLENBRDZELENBRzdEOzs7QUFDQSxRQUFJQyxNQUFNLEdBQUcsS0FBS1YsTUFBbEI7QUFDQVUsSUFBQUEsTUFBTSxHQUFHQSxNQUFNLENBQUNDLE9BQVAsQ0FBZSwwQkFBZixFQUE0QyxLQUFJUCxHQUFHLENBQUNLLElBQUssRUFBekQsQ0FBVDtBQUNBQyxJQUFBQSxNQUFNLEdBQUdBLE1BQU0sQ0FBQ0MsT0FBUCxDQUFlLFFBQWYsRUFBeUIsSUFBekIsQ0FBVCxDQU42RCxDQVE3RDs7QUFDQSxVQUFNQyxRQUFRLEdBQUcsS0FBS1YsSUFBTCxHQUFZLENBQUMsUUFBRCxFQUFXLEtBQUtBLElBQWhCLENBQVosR0FBb0MsRUFBckQsQ0FUNkQsQ0FXN0Q7O0FBQ0EsUUFBSVEsTUFBTSxDQUFDRyxRQUFQLENBQWdCLEdBQWhCLENBQUosRUFBMEI7QUFDeEIsWUFBTUMsUUFBUSxHQUFHLE1BQU1DLGNBQUlDLFlBQUosQ0FBaUIsQ0FBQyxHQUFHSixRQUFKLEVBQWNGLE1BQWQsQ0FBakIsRUFBd0M7QUFBRU8sUUFBQUEsR0FBRyxFQUFFYixHQUFHLENBQUNhLEdBQVg7QUFBZ0JYLFFBQUFBLE1BQU0sRUFBRUQsR0FBeEI7QUFBNkJhLFFBQUFBLGNBQWMsRUFBRTtBQUE3QyxPQUF4QyxDQUF2Qjs7QUFFQSxVQUFJSixRQUFRLENBQUNLLE1BQVQsR0FBa0IsQ0FBdEIsRUFBeUI7QUFDdkJULFFBQUFBLE1BQU0sR0FBR0ksUUFBUSxDQUFDQSxRQUFRLENBQUNLLE1BQVQsR0FBa0IsQ0FBbkIsQ0FBakI7QUFDRDtBQUNGLEtBbEI0RCxDQW9CN0Q7OztBQUNBLFFBQUlULE1BQU0sQ0FBQ0csUUFBUCxDQUFnQixHQUFoQixDQUFKLEVBQTBCO0FBQ3hCLFlBQU1PLElBQUksR0FBRyxNQUFNTCxjQUFJTSxRQUFKLENBQWEsQ0FBQyxHQUFHVCxRQUFKLEVBQWNGLE1BQWQsQ0FBYixFQUFvQztBQUFFTyxRQUFBQSxHQUFHLEVBQUViLEdBQUcsQ0FBQ2EsR0FBWDtBQUFnQlgsUUFBQUEsTUFBTSxFQUFFRCxHQUF4QjtBQUE2QmEsUUFBQUEsY0FBYyxFQUFFO0FBQTdDLE9BQXBDLENBQW5COztBQUVBLFVBQUlFLElBQUksQ0FBQ0QsTUFBTCxHQUFjLENBQWxCLEVBQXFCO0FBQ25CVCxRQUFBQSxNQUFNLEdBQUdVLElBQUksQ0FBQ0EsSUFBSSxDQUFDRCxNQUFMLEdBQWMsQ0FBZixDQUFiO0FBQ0Q7QUFDRjs7QUFFRCxRQUFJVCxNQUFNLEtBQUssS0FBS1YsTUFBcEIsRUFBNEI7QUFDMUJLLE1BQUFBLEdBQUcsQ0FBQ2lCLE9BQUosQ0FBYSxZQUFXLEtBQUt0QixNQUFPLFNBQVFVLE1BQU8sRUFBbkQ7QUFDRDs7QUFFRCxRQUFJQSxNQUFNLENBQUNHLFFBQVAsQ0FBZ0IsR0FBaEIsQ0FBSixFQUEwQjtBQUN4QlIsTUFBQUEsR0FBRyxDQUFDa0IsSUFBSixDQUFVLDhCQUE2QmIsTUFBTyxvQkFBbUIsS0FBS1QsUUFBUyxFQUEvRTtBQUVBLGFBQU8sS0FBS0EsUUFBWjtBQUNEOztBQUVELFdBQU9TLE1BQVA7QUFDRDs7QUFFUyxRQUFKYyxJQUFJLENBQUNDLFNBQUQsRUFBeUM7QUFDakQsVUFBTUMsR0FBRyxHQUFHLE1BQU0sS0FBS3ZCLGVBQUwsQ0FBcUJzQixTQUFyQixDQUFsQjtBQUNBLFdBQU8sTUFBTUEsU0FBUyxDQUFDRSxVQUFWLENBQXFCRCxHQUFyQixDQUFiO0FBQ0Q7O0FBeER3QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdpdCwgbG9nZ2VyLCBXb3Jrc3BhY2UgfSBmcm9tICdAanVqdWxlZ28vamlsbC1jb3JlJztcblxuaW1wb3J0IHsgRmlsdGVyIH0gZnJvbSAnLi9maWx0ZXInO1xuXG4vLyBDbGFzc1xuZXhwb3J0IGNsYXNzIEFmZmVjdGVkRmlsdGVyIGV4dGVuZHMgRmlsdGVyIHtcbiAgLy8gQ29uc3RydWN0b3JcbiAgY29uc3RydWN0b3IoXG4gICAgcmVhZG9ubHkgZm9ybWF0OiBzdHJpbmcsXG4gICAgcmVhZG9ubHkgZmFsbGJhY2s6IHN0cmluZyxcbiAgICByZWFkb25seSBzb3J0Pzogc3RyaW5nLFxuICApIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgLy8gTWV0aG9kc1xuICBwcml2YXRlIGFzeW5jIF9mb3JtYXRSZXZpc2lvbih3a3M6IFdvcmtzcGFjZSk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgY29uc3QgbG9nID0gbG9nZ2VyLmNoaWxkKHsgbGFiZWw6IHdrcy5uYW1lIH0pO1xuXG4gICAgLy8gRm9ybWF0IHJldmlzaW9uXG4gICAgbGV0IHJlc3VsdCA9IHRoaXMuZm9ybWF0O1xuICAgIHJlc3VsdCA9IHJlc3VsdC5yZXBsYWNlKC8oPzwhXFxcXCkoKD86XFxcXFxcXFwpKiklbmFtZS9nLCBgJDEke3drcy5uYW1lfWApO1xuICAgIHJlc3VsdCA9IHJlc3VsdC5yZXBsYWNlKC9cXFxcKC4pL2csICckMScpO1xuXG4gICAgLy8gQXNrIGdpdCB0byBjb21wbGV0ZSBpdFxuICAgIGNvbnN0IHNvcnRBcmdzID0gdGhpcy5zb3J0ID8gWyctLXNvcnQnLCB0aGlzLnNvcnRdIDogW107XG5cbiAgICAvLyAtIHNlYXJjaCBpbiBicmFuY2hlc1xuICAgIGlmIChyZXN1bHQuaW5jbHVkZXMoJyonKSkge1xuICAgICAgY29uc3QgYnJhbmNoZXMgPSBhd2FpdCBnaXQubGlzdEJyYW5jaGVzKFsuLi5zb3J0QXJncywgcmVzdWx0XSwgeyBjd2Q6IHdrcy5jd2QsIGxvZ2dlcjogbG9nLCBzdHJlYW1Mb2dMZXZlbDogJ2RlYnVnJyB9KTtcblxuICAgICAgaWYgKGJyYW5jaGVzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgcmVzdWx0ID0gYnJhbmNoZXNbYnJhbmNoZXMubGVuZ3RoIC0gMV07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gLSBzZWFyY2ggaW4gdGFnc1xuICAgIGlmIChyZXN1bHQuaW5jbHVkZXMoJyonKSkge1xuICAgICAgY29uc3QgdGFncyA9IGF3YWl0IGdpdC5saXN0VGFncyhbLi4uc29ydEFyZ3MsIHJlc3VsdF0sIHsgY3dkOiB3a3MuY3dkLCBsb2dnZXI6IGxvZywgc3RyZWFtTG9nTGV2ZWw6ICdkZWJ1ZycgfSk7XG5cbiAgICAgIGlmICh0YWdzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgcmVzdWx0ID0gdGFnc1t0YWdzLmxlbmd0aCAtIDFdO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChyZXN1bHQgIT09IHRoaXMuZm9ybWF0KSB7XG4gICAgICBsb2cudmVyYm9zZShgUmVzb2x2ZWQgJHt0aGlzLmZvcm1hdH0gaW50byAke3Jlc3VsdH1gKTtcbiAgICB9XG5cbiAgICBpZiAocmVzdWx0LmluY2x1ZGVzKCcqJykpIHtcbiAgICAgIGxvZy53YXJuKGBObyByZXZpc2lvbiBmb3VuZCBtYXRjaGluZyAke3Jlc3VsdH0sIHVzaW5nIGZhbGxiYWNrICR7dGhpcy5mYWxsYmFja31gKTtcblxuICAgICAgcmV0dXJuIHRoaXMuZmFsbGJhY2s7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIGFzeW5jIHRlc3Qod29ya3NwYWNlOiBXb3Jrc3BhY2UpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCByZXYgPSBhd2FpdCB0aGlzLl9mb3JtYXRSZXZpc2lvbih3b3Jrc3BhY2UpO1xuICAgIHJldHVybiBhd2FpdCB3b3Jrc3BhY2UuaXNBZmZlY3RlZChyZXYpO1xuICB9XG59Il0sImZpbGUiOiJmaWx0ZXJzL2FmZmVjdGVkLmpzIn0=
@@ -1,8 +0,0 @@
1
- import { Workspace } from '@jujulego/jill-core';
2
- export declare class Filter {
3
- private _predicate?;
4
- constructor(_predicate?: ((workspace: Workspace) => boolean) | undefined);
5
- static privateWorkspace(value: boolean): Filter;
6
- static scripts(values: string[]): Filter;
7
- test(workspace: Workspace): Promise<boolean>;
8
- }
@@ -1,36 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.Filter = void 0;
7
-
8
- // Class
9
- class Filter {
10
- // Constructor
11
- constructor(_predicate) {
12
- this._predicate = _predicate;
13
- } // Statics
14
-
15
-
16
- static privateWorkspace(value) {
17
- return new Filter(wks => (wks.manifest.private ?? false) === value);
18
- }
19
-
20
- static scripts(values) {
21
- return new Filter(wks => {
22
- const scripts = Object.keys(wks.manifest.scripts || {});
23
- return values.some(scr => scripts.includes(scr));
24
- });
25
- } // Methods
26
-
27
-
28
- async test(workspace) {
29
- if (!this._predicate) return true;
30
- return this._predicate(workspace);
31
- }
32
-
33
- }
34
-
35
- exports.Filter = Filter;
36
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImZpbHRlcnMvZmlsdGVyLnRzIl0sIm5hbWVzIjpbIkZpbHRlciIsImNvbnN0cnVjdG9yIiwiX3ByZWRpY2F0ZSIsInByaXZhdGVXb3Jrc3BhY2UiLCJ2YWx1ZSIsIndrcyIsIm1hbmlmZXN0IiwicHJpdmF0ZSIsInNjcmlwdHMiLCJ2YWx1ZXMiLCJPYmplY3QiLCJrZXlzIiwic29tZSIsInNjciIsImluY2x1ZGVzIiwidGVzdCIsIndvcmtzcGFjZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUVBO0FBQ08sTUFBTUEsTUFBTixDQUFhO0FBQ2xCO0FBQ0FDLEVBQUFBLFdBQVcsQ0FDREMsVUFEQyxFQUVUO0FBQUEsU0FEUUEsVUFDUixHQURRQSxVQUNSO0FBQUUsR0FKYyxDQU1sQjs7O0FBQ3VCLFNBQWhCQyxnQkFBZ0IsQ0FBQ0MsS0FBRCxFQUF5QjtBQUM5QyxXQUFPLElBQUlKLE1BQUosQ0FBWUssR0FBRCxJQUFTLENBQUNBLEdBQUcsQ0FBQ0MsUUFBSixDQUFhQyxPQUFiLElBQXdCLEtBQXpCLE1BQW9DSCxLQUF4RCxDQUFQO0FBQ0Q7O0FBRWEsU0FBUEksT0FBTyxDQUFDQyxNQUFELEVBQTJCO0FBQ3ZDLFdBQU8sSUFBSVQsTUFBSixDQUFZSyxHQUFELElBQVM7QUFDekIsWUFBTUcsT0FBTyxHQUFHRSxNQUFNLENBQUNDLElBQVAsQ0FBWU4sR0FBRyxDQUFDQyxRQUFKLENBQWFFLE9BQWIsSUFBd0IsRUFBcEMsQ0FBaEI7QUFDQSxhQUFPQyxNQUFNLENBQUNHLElBQVAsQ0FBWUMsR0FBRyxJQUFJTCxPQUFPLENBQUNNLFFBQVIsQ0FBaUJELEdBQWpCLENBQW5CLENBQVA7QUFDRCxLQUhNLENBQVA7QUFJRCxHQWhCaUIsQ0FrQmxCOzs7QUFDVSxRQUFKRSxJQUFJLENBQUNDLFNBQUQsRUFBeUM7QUFDakQsUUFBSSxDQUFDLEtBQUtkLFVBQVYsRUFBc0IsT0FBTyxJQUFQO0FBQ3RCLFdBQU8sS0FBS0EsVUFBTCxDQUFnQmMsU0FBaEIsQ0FBUDtBQUNEOztBQXRCaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBXb3Jrc3BhY2UgfSBmcm9tICdAanVqdWxlZ28vamlsbC1jb3JlJztcblxuLy8gQ2xhc3NcbmV4cG9ydCBjbGFzcyBGaWx0ZXIge1xuICAvLyBDb25zdHJ1Y3RvclxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9wcmVkaWNhdGU/OiAod29ya3NwYWNlOiBXb3Jrc3BhY2UpID0+IGJvb2xlYW5cbiAgKSB7fVxuXG4gIC8vIFN0YXRpY3NcbiAgc3RhdGljIHByaXZhdGVXb3Jrc3BhY2UodmFsdWU6IGJvb2xlYW4pOiBGaWx0ZXIge1xuICAgIHJldHVybiBuZXcgRmlsdGVyKCh3a3MpID0+ICh3a3MubWFuaWZlc3QucHJpdmF0ZSA/PyBmYWxzZSkgPT09IHZhbHVlKTtcbiAgfVxuXG4gIHN0YXRpYyBzY3JpcHRzKHZhbHVlczogc3RyaW5nW10pOiBGaWx0ZXIge1xuICAgIHJldHVybiBuZXcgRmlsdGVyKCh3a3MpID0+IHtcbiAgICAgIGNvbnN0IHNjcmlwdHMgPSBPYmplY3Qua2V5cyh3a3MubWFuaWZlc3Quc2NyaXB0cyB8fCB7fSk7XG4gICAgICByZXR1cm4gdmFsdWVzLnNvbWUoc2NyID0+IHNjcmlwdHMuaW5jbHVkZXMoc2NyKSk7XG4gICAgfSk7XG4gIH1cblxuICAvLyBNZXRob2RzXG4gIGFzeW5jIHRlc3Qod29ya3NwYWNlOiBXb3Jrc3BhY2UpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBpZiAoIXRoaXMuX3ByZWRpY2F0ZSkgcmV0dXJuIHRydWU7XG4gICAgcmV0dXJuIHRoaXMuX3ByZWRpY2F0ZSh3b3Jrc3BhY2UpO1xuICB9XG59Il0sImZpbGUiOiJmaWx0ZXJzL2ZpbHRlci5qcyJ9
@@ -1,2 +0,0 @@
1
- export { AffectedFilter } from './affected';
2
- export { Filter } from './filter';
@@ -1,22 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- Object.defineProperty(exports, "AffectedFilter", {
7
- enumerable: true,
8
- get: function () {
9
- return _affected.AffectedFilter;
10
- }
11
- });
12
- Object.defineProperty(exports, "Filter", {
13
- enumerable: true,
14
- get: function () {
15
- return _filter.Filter;
16
- }
17
- });
18
-
19
- var _affected = require("./affected");
20
-
21
- var _filter = require("./filter");
22
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImZpbHRlcnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0EiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBBZmZlY3RlZEZpbHRlciB9IGZyb20gJy4vYWZmZWN0ZWQnO1xuZXhwb3J0IHsgRmlsdGVyIH0gZnJvbSAnLi9maWx0ZXInOyJdLCJmaWxlIjoiZmlsdGVycy9pbmRleC5qcyJ9
package/dist/logger.d.ts DELETED
@@ -1,15 +0,0 @@
1
- import ora from 'ora';
2
- import Transport from 'winston-transport';
3
- export declare class OraTransport extends Transport {
4
- readonly spinner: ora.Ora;
5
- log(info: any, next: () => void): void;
6
- /** @deprecated */
7
- spin(message: string): void;
8
- /** @deprecated */
9
- succeed(log: string): void;
10
- /** @deprecated */
11
- fail(log: Error | string): void;
12
- /** @deprecated */
13
- stop(): void;
14
- }
15
- export declare const transport: OraTransport;
package/dist/logger.js DELETED
@@ -1,99 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.transport = exports.OraTransport = void 0;
7
-
8
- var _jillCore = require("@jujulego/jill-core");
9
-
10
- var _chalk = _interopRequireDefault(require("chalk"));
11
-
12
- var _process = _interopRequireDefault(require("process"));
13
-
14
- var _ora = _interopRequireDefault(require("ora"));
15
-
16
- var _winston = require("winston");
17
-
18
- var _winstonTransport = _interopRequireDefault(require("winston-transport"));
19
-
20
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
21
-
22
- 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; }
23
-
24
- // Constants
25
- const MESSAGE = Symbol.for('message'); // Transport
26
-
27
- class OraTransport extends _winstonTransport.default {
28
- constructor(...args) {
29
- super(...args);
30
-
31
- _defineProperty(this, "spinner", (0, _ora.default)());
32
- }
33
-
34
- // Methods
35
- log(info, next) {
36
- // Print message
37
- const msg = info[MESSAGE]; // Clear out spinner before printing logs
38
-
39
- if (this.spinner.isSpinning) {
40
- this.spinner.clear();
41
- }
42
-
43
- for (const line of msg.split('\n')) {
44
- _process.default.stderr.write(line + '\n');
45
- }
46
-
47
- next();
48
- }
49
- /** @deprecated */
50
-
51
-
52
- spin(message) {
53
- this.spinner.start(message);
54
- }
55
- /** @deprecated */
56
-
57
-
58
- succeed(log) {
59
- this.spinner.succeed(log);
60
- }
61
- /** @deprecated */
62
-
63
-
64
- fail(log) {
65
- if (typeof log === 'string') {
66
- this.spinner.fail(log);
67
- } else {
68
- this.spinner.fail(log.stack || log.toString());
69
- }
70
- }
71
- /** @deprecated */
72
-
73
-
74
- stop() {
75
- this.spinner.stop();
76
- }
77
-
78
- } // Setup
79
-
80
-
81
- exports.OraTransport = OraTransport;
82
- const transport = new OraTransport({
83
- format: _winston.format.combine(_winston.format.errors(), _winston.format.colorize({
84
- message: true,
85
- colors: {
86
- debug: 'grey',
87
- verbose: 'blue',
88
- info: 'white',
89
- error: 'red'
90
- }
91
- }), _winston.format.printf(({
92
- label,
93
- message
94
- }) => message.split('\n').map(line => [label && _chalk.default.grey(`[${label}]`), line].filter(p => p).join(' ')).join('\n')))
95
- });
96
- exports.transport = transport;
97
-
98
- _jillCore.logger.add(transport);
99
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxvZ2dlci50cyJdLCJuYW1lcyI6WyJNRVNTQUdFIiwiU3ltYm9sIiwiZm9yIiwiT3JhVHJhbnNwb3J0IiwiVHJhbnNwb3J0IiwibG9nIiwiaW5mbyIsIm5leHQiLCJtc2ciLCJzcGlubmVyIiwiaXNTcGlubmluZyIsImNsZWFyIiwibGluZSIsInNwbGl0IiwicHJvY2VzcyIsInN0ZGVyciIsIndyaXRlIiwic3BpbiIsIm1lc3NhZ2UiLCJzdGFydCIsInN1Y2NlZWQiLCJmYWlsIiwic3RhY2siLCJ0b1N0cmluZyIsInN0b3AiLCJ0cmFuc3BvcnQiLCJmb3JtYXQiLCJjb21iaW5lIiwiZXJyb3JzIiwiY29sb3JpemUiLCJjb2xvcnMiLCJkZWJ1ZyIsInZlcmJvc2UiLCJlcnJvciIsInByaW50ZiIsImxhYmVsIiwibWFwIiwiY2hhbGsiLCJncmV5IiwiZmlsdGVyIiwicCIsImpvaW4iLCJjb3JlTG9nZ2VyIiwiYWRkIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7OztBQUVBO0FBQ0EsTUFBTUEsT0FBTyxHQUFHQyxNQUFNLENBQUNDLEdBQVAsQ0FBVyxTQUFYLENBQWhCLEMsQ0FFQTs7QUFDTyxNQUFNQyxZQUFOLFNBQTJCQyx5QkFBM0IsQ0FBcUM7QUFBQTtBQUFBOztBQUFBLHFDQUV2QixtQkFGdUI7QUFBQTs7QUFJMUM7QUFDQUMsRUFBQUEsR0FBRyxDQUFDQyxJQUFELEVBQVlDLElBQVosRUFBb0M7QUFDckM7QUFDQSxVQUFNQyxHQUFHLEdBQUdGLElBQUksQ0FBQ04sT0FBRCxDQUFoQixDQUZxQyxDQUlyQzs7QUFDQSxRQUFJLEtBQUtTLE9BQUwsQ0FBYUMsVUFBakIsRUFBNkI7QUFDM0IsV0FBS0QsT0FBTCxDQUFhRSxLQUFiO0FBQ0Q7O0FBRUQsU0FBSyxNQUFNQyxJQUFYLElBQW1CSixHQUFHLENBQUNLLEtBQUosQ0FBVSxJQUFWLENBQW5CLEVBQW9DO0FBQ2xDQyx1QkFBUUMsTUFBUixDQUFlQyxLQUFmLENBQXFCSixJQUFJLEdBQUcsSUFBNUI7QUFDRDs7QUFFREwsSUFBQUEsSUFBSTtBQUNMO0FBRUQ7OztBQUNBVSxFQUFBQSxJQUFJLENBQUNDLE9BQUQsRUFBd0I7QUFDMUIsU0FBS1QsT0FBTCxDQUFhVSxLQUFiLENBQW1CRCxPQUFuQjtBQUNEO0FBRUQ7OztBQUNBRSxFQUFBQSxPQUFPLENBQUNmLEdBQUQsRUFBb0I7QUFDekIsU0FBS0ksT0FBTCxDQUFhVyxPQUFiLENBQXFCZixHQUFyQjtBQUNEO0FBRUQ7OztBQUNBZ0IsRUFBQUEsSUFBSSxDQUFDaEIsR0FBRCxFQUE0QjtBQUM5QixRQUFJLE9BQU9BLEdBQVAsS0FBZSxRQUFuQixFQUE2QjtBQUMzQixXQUFLSSxPQUFMLENBQWFZLElBQWIsQ0FBa0JoQixHQUFsQjtBQUNELEtBRkQsTUFFTztBQUNMLFdBQUtJLE9BQUwsQ0FBYVksSUFBYixDQUFrQmhCLEdBQUcsQ0FBQ2lCLEtBQUosSUFBYWpCLEdBQUcsQ0FBQ2tCLFFBQUosRUFBL0I7QUFDRDtBQUNGO0FBRUQ7OztBQUNBQyxFQUFBQSxJQUFJLEdBQVM7QUFDWCxTQUFLZixPQUFMLENBQWFlLElBQWI7QUFDRDs7QUEzQ3lDLEMsQ0E4QzVDOzs7O0FBQ08sTUFBTUMsU0FBUyxHQUFHLElBQUl0QixZQUFKLENBQWlCO0FBQ3hDdUIsRUFBQUEsTUFBTSxFQUFFQSxnQkFBT0MsT0FBUCxDQUNORCxnQkFBT0UsTUFBUCxFQURNLEVBRU5GLGdCQUFPRyxRQUFQLENBQWdCO0FBQUVYLElBQUFBLE9BQU8sRUFBRSxJQUFYO0FBQWlCWSxJQUFBQSxNQUFNLEVBQUU7QUFBRUMsTUFBQUEsS0FBSyxFQUFFLE1BQVQ7QUFBaUJDLE1BQUFBLE9BQU8sRUFBRSxNQUExQjtBQUFrQzFCLE1BQUFBLElBQUksRUFBRSxPQUF4QztBQUFpRDJCLE1BQUFBLEtBQUssRUFBRTtBQUF4RDtBQUF6QixHQUFoQixDQUZNLEVBR05QLGdCQUFPUSxNQUFQLENBQWMsQ0FBQztBQUFFQyxJQUFBQSxLQUFGO0FBQVNqQixJQUFBQTtBQUFULEdBQUQsS0FBd0JBLE9BQU8sQ0FBQ0wsS0FBUixDQUFjLElBQWQsRUFBb0J1QixHQUFwQixDQUF3QnhCLElBQUksSUFBSSxDQUFDdUIsS0FBSyxJQUFJRSxlQUFNQyxJQUFOLENBQVksSUFBR0gsS0FBTSxHQUFyQixDQUFWLEVBQW9DdkIsSUFBcEMsRUFBMEMyQixNQUExQyxDQUFpREMsQ0FBQyxJQUFJQSxDQUF0RCxFQUF5REMsSUFBekQsQ0FBOEQsR0FBOUQsQ0FBaEMsRUFBb0dBLElBQXBHLENBQXlHLElBQXpHLENBQXRDLENBSE07QUFEZ0MsQ0FBakIsQ0FBbEI7OztBQVFQQyxpQkFBV0MsR0FBWCxDQUFlbEIsU0FBZiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGxvZ2dlciBhcyBjb3JlTG9nZ2VyIH0gZnJvbSAnQGp1anVsZWdvL2ppbGwtY29yZSc7XG5pbXBvcnQgY2hhbGsgZnJvbSAnY2hhbGsnO1xuaW1wb3J0IHByb2Nlc3MgZnJvbSAncHJvY2Vzcyc7XG5pbXBvcnQgb3JhIGZyb20gJ29yYSc7XG5pbXBvcnQgeyBmb3JtYXQgfSBmcm9tICd3aW5zdG9uJztcbmltcG9ydCBUcmFuc3BvcnQgZnJvbSAnd2luc3Rvbi10cmFuc3BvcnQnO1xuXG4vLyBDb25zdGFudHNcbmNvbnN0IE1FU1NBR0UgPSBTeW1ib2wuZm9yKCdtZXNzYWdlJyk7XG5cbi8vIFRyYW5zcG9ydFxuZXhwb3J0IGNsYXNzIE9yYVRyYW5zcG9ydCBleHRlbmRzIFRyYW5zcG9ydCB7XG4gIC8vIEF0dHJpYnV0ZXNcbiAgcmVhZG9ubHkgc3Bpbm5lciA9IG9yYSgpO1xuXG4gIC8vIE1ldGhvZHNcbiAgbG9nKGluZm86IGFueSwgbmV4dDogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgIC8vIFByaW50IG1lc3NhZ2VcbiAgICBjb25zdCBtc2cgPSBpbmZvW01FU1NBR0VdIGFzIHN0cmluZztcblxuICAgIC8vIENsZWFyIG91dCBzcGlubmVyIGJlZm9yZSBwcmludGluZyBsb2dzXG4gICAgaWYgKHRoaXMuc3Bpbm5lci5pc1NwaW5uaW5nKSB7XG4gICAgICB0aGlzLnNwaW5uZXIuY2xlYXIoKTtcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IGxpbmUgb2YgbXNnLnNwbGl0KCdcXG4nKSkge1xuICAgICAgcHJvY2Vzcy5zdGRlcnIud3JpdGUobGluZSArICdcXG4nKTtcbiAgICB9XG5cbiAgICBuZXh0KCk7XG4gIH1cblxuICAvKiogQGRlcHJlY2F0ZWQgKi9cbiAgc3BpbihtZXNzYWdlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLnNwaW5uZXIuc3RhcnQobWVzc2FnZSk7XG4gIH1cblxuICAvKiogQGRlcHJlY2F0ZWQgKi9cbiAgc3VjY2VlZChsb2c6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuc3Bpbm5lci5zdWNjZWVkKGxvZyk7XG4gIH1cblxuICAvKiogQGRlcHJlY2F0ZWQgKi9cbiAgZmFpbChsb2c6IEVycm9yIHwgc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKHR5cGVvZiBsb2cgPT09ICdzdHJpbmcnKSB7XG4gICAgICB0aGlzLnNwaW5uZXIuZmFpbChsb2cpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNwaW5uZXIuZmFpbChsb2cuc3RhY2sgfHwgbG9nLnRvU3RyaW5nKCkpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAZGVwcmVjYXRlZCAqL1xuICBzdG9wKCk6IHZvaWQge1xuICAgIHRoaXMuc3Bpbm5lci5zdG9wKCk7XG4gIH1cbn1cblxuLy8gU2V0dXBcbmV4cG9ydCBjb25zdCB0cmFuc3BvcnQgPSBuZXcgT3JhVHJhbnNwb3J0KHtcbiAgZm9ybWF0OiBmb3JtYXQuY29tYmluZShcbiAgICBmb3JtYXQuZXJyb3JzKCksXG4gICAgZm9ybWF0LmNvbG9yaXplKHsgbWVzc2FnZTogdHJ1ZSwgY29sb3JzOiB7IGRlYnVnOiAnZ3JleScsIHZlcmJvc2U6ICdibHVlJywgaW5mbzogJ3doaXRlJywgZXJyb3I6ICdyZWQnIH0gfSksXG4gICAgZm9ybWF0LnByaW50ZigoeyBsYWJlbCwgbWVzc2FnZSB9KSA9PiBtZXNzYWdlLnNwbGl0KCdcXG4nKS5tYXAobGluZSA9PiBbbGFiZWwgJiYgY2hhbGsuZ3JleShgWyR7bGFiZWx9XWApLCBsaW5lXS5maWx0ZXIocCA9PiBwKS5qb2luKCcgJykpLmpvaW4oJ1xcbicpKSxcbiAgKVxufSk7XG5cbmNvcmVMb2dnZXIuYWRkKHRyYW5zcG9ydCk7XG4iXSwiZmlsZSI6ImxvZ2dlci5qcyJ9
@@ -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
- }
@@ -1,58 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.ProjectCommand = void 0;
7
-
8
- var _jillCore = require("@jujulego/jill-core");
9
-
10
- var _base = require("./base.command");
11
-
12
- 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; }
13
-
14
- // Command
15
- class ProjectCommand extends _base.BaseCommand {
16
- constructor(...args) {
17
- super(...args);
18
-
19
- _defineProperty(this, "_project", void 0);
20
- }
21
-
22
- // Methods
23
- define(builder) {
24
- return super.define(y => builder(y).option('project', {
25
- alias: 'p',
26
- type: 'string',
27
- description: 'Project root directory'
28
- }).option('package-manager', {
29
- choices: ['yarn', 'npm'],
30
- default: undefined,
31
- type: 'string',
32
- description: 'Force package manager'
33
- }));
34
- }
35
-
36
- async run(args) {
37
- super.run(args); // Load project
38
-
39
- this.spinner.start('Loading project');
40
- const dir = args.project ?? (await _jillCore.Project.searchProjectRoot(process.cwd()));
41
- this._project = new _jillCore.Project(dir, {
42
- packageManager: args['package-manager']
43
- });
44
- } // Properties
45
-
46
-
47
- get project() {
48
- if (!this._project) {
49
- throw new Error('Project not yet loaded !');
50
- }
51
-
52
- return this._project;
53
- }
54
-
55
- }
56
-
57
- exports.ProjectCommand = ProjectCommand;
58
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInByb2plY3QuY29tbWFuZC50cyJdLCJuYW1lcyI6WyJQcm9qZWN0Q29tbWFuZCIsIkJhc2VDb21tYW5kIiwiZGVmaW5lIiwiYnVpbGRlciIsInkiLCJvcHRpb24iLCJhbGlhcyIsInR5cGUiLCJkZXNjcmlwdGlvbiIsImNob2ljZXMiLCJkZWZhdWx0IiwidW5kZWZpbmVkIiwicnVuIiwiYXJncyIsInNwaW5uZXIiLCJzdGFydCIsImRpciIsInByb2plY3QiLCJQcm9qZWN0Iiwic2VhcmNoUHJvamVjdFJvb3QiLCJwcm9jZXNzIiwiY3dkIiwiX3Byb2plY3QiLCJwYWNrYWdlTWFuYWdlciIsIkVycm9yIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7O0FBR0E7Ozs7QUFRQTtBQUNPLE1BQWVBLGNBQWYsU0FBMkVDLGlCQUEzRSxDQUEwRjtBQUFBO0FBQUE7O0FBQUE7QUFBQTs7QUFJL0Y7QUFDVUMsRUFBQUEsTUFBTSxDQUFPQyxPQUFQLEVBQTREO0FBQzFFLFdBQU8sTUFBTUQsTUFBTixDQUFhRSxDQUFDLElBQUlELE9BQU8sQ0FBQ0MsQ0FBRCxDQUFQLENBQ3RCQyxNQURzQixDQUNmLFNBRGUsRUFDSjtBQUNqQkMsTUFBQUEsS0FBSyxFQUFFLEdBRFU7QUFFakJDLE1BQUFBLElBQUksRUFBRSxRQUZXO0FBR2pCQyxNQUFBQSxXQUFXLEVBQUU7QUFISSxLQURJLEVBTXRCSCxNQU5zQixDQU1mLGlCQU5lLEVBTUk7QUFDekJJLE1BQUFBLE9BQU8sRUFBRSxDQUFDLE1BQUQsRUFBUyxLQUFULENBRGdCO0FBRXpCQyxNQUFBQSxPQUFPLEVBQUVDLFNBRmdCO0FBR3pCSixNQUFBQSxJQUFJLEVBQUUsUUFIbUI7QUFJekJDLE1BQUFBLFdBQVcsRUFBRTtBQUpZLEtBTkosQ0FBbEIsQ0FBUDtBQWFEOztBQUVrQixRQUFISSxHQUFHLENBQUNDLElBQUQsRUFBNkM7QUFDOUQsVUFBTUQsR0FBTixDQUFVQyxJQUFWLEVBRDhELENBRzlEOztBQUNBLFNBQUtDLE9BQUwsQ0FBYUMsS0FBYixDQUFtQixpQkFBbkI7QUFDQSxVQUFNQyxHQUFHLEdBQUdILElBQUksQ0FBQ0ksT0FBTCxLQUFnQixNQUFNQyxrQkFBUUMsaUJBQVIsQ0FBMEJDLE9BQU8sQ0FBQ0MsR0FBUixFQUExQixDQUF0QixDQUFaO0FBRUEsU0FBS0MsUUFBTCxHQUFnQixJQUFJSixpQkFBSixDQUFZRixHQUFaLEVBQWlCO0FBQy9CTyxNQUFBQSxjQUFjLEVBQUVWLElBQUksQ0FBQyxpQkFBRDtBQURXLEtBQWpCLENBQWhCO0FBR0QsR0EvQjhGLENBaUMvRjs7O0FBQ1csTUFBUEksT0FBTyxHQUFZO0FBQ3JCLFFBQUksQ0FBQyxLQUFLSyxRQUFWLEVBQW9CO0FBQ2xCLFlBQU0sSUFBSUUsS0FBSixDQUFVLDBCQUFWLENBQU47QUFDRDs7QUFFRCxXQUFPLEtBQUtGLFFBQVo7QUFDRDs7QUF4QzhGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGFja2FnZU1hbmFnZXIsIFByb2plY3QgfSBmcm9tICdAanVqdWxlZ28vamlsbC1jb3JlJztcblxuaW1wb3J0IHsgQXJndW1lbnRzLCBCdWlsZGVyIH0gZnJvbSAnLi9jb21tYW5kJztcbmltcG9ydCB7IEJhc2VBcmdzLCBCYXNlQ29tbWFuZCB9IGZyb20gJy4vYmFzZS5jb21tYW5kJztcblxuLy8gVHlwZXNcbmV4cG9ydCBpbnRlcmZhY2UgUHJvamVjdEFyZ3MgZXh0ZW5kcyBCYXNlQXJncyB7XG4gIHByb2plY3Q6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgJ3BhY2thZ2UtbWFuYWdlcic6IFBhY2thZ2VNYW5hZ2VyIHwgdW5kZWZpbmVkO1xufVxuXG4vLyBDb21tYW5kXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgUHJvamVjdENvbW1hbmQ8QSBleHRlbmRzIFByb2plY3RBcmdzID0gUHJvamVjdEFyZ3M+IGV4dGVuZHMgQmFzZUNvbW1hbmQ8QT4ge1xuICAvLyBBdHRyaWJ1dGVzXG4gIHByaXZhdGUgX3Byb2plY3Q/OiBQcm9qZWN0O1xuXG4gIC8vIE1ldGhvZHNcbiAgcHJvdGVjdGVkIGRlZmluZTxULCBVPihidWlsZGVyOiBCdWlsZGVyPFQsIFU+KTogQnVpbGRlcjxULCBVICYgUHJvamVjdEFyZ3M+IHtcbiAgICByZXR1cm4gc3VwZXIuZGVmaW5lKHkgPT4gYnVpbGRlcih5KVxuICAgICAgLm9wdGlvbigncHJvamVjdCcsIHtcbiAgICAgICAgYWxpYXM6ICdwJyxcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnUHJvamVjdCByb290IGRpcmVjdG9yeSdcbiAgICAgIH0pXG4gICAgICAub3B0aW9uKCdwYWNrYWdlLW1hbmFnZXInLCB7XG4gICAgICAgIGNob2ljZXM6IFsneWFybicsICducG0nXSxcbiAgICAgICAgZGVmYXVsdDogdW5kZWZpbmVkIGFzIFBhY2thZ2VNYW5hZ2VyIHwgdW5kZWZpbmVkLFxuICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdGb3JjZSBwYWNrYWdlIG1hbmFnZXInXG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBwcm90ZWN0ZWQgYXN5bmMgcnVuKGFyZ3M6IEFyZ3VtZW50czxBPik6IFByb21pc2U8bnVtYmVyIHwgdm9pZD4ge1xuICAgIHN1cGVyLnJ1bihhcmdzKTtcblxuICAgIC8vIExvYWQgcHJvamVjdFxuICAgIHRoaXMuc3Bpbm5lci5zdGFydCgnTG9hZGluZyBwcm9qZWN0Jyk7XG4gICAgY29uc3QgZGlyID0gYXJncy5wcm9qZWN0ID8/IGF3YWl0IFByb2plY3Quc2VhcmNoUHJvamVjdFJvb3QocHJvY2Vzcy5jd2QoKSk7XG5cbiAgICB0aGlzLl9wcm9qZWN0ID0gbmV3IFByb2plY3QoZGlyLCB7XG4gICAgICBwYWNrYWdlTWFuYWdlcjogYXJnc1sncGFja2FnZS1tYW5hZ2VyJ11cbiAgICB9KTtcbiAgfVxuXG4gIC8vIFByb3BlcnRpZXNcbiAgZ2V0IHByb2plY3QoKTogUHJvamVjdCB7XG4gICAgaWYgKCF0aGlzLl9wcm9qZWN0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1Byb2plY3Qgbm90IHlldCBsb2FkZWQgIScpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLl9wcm9qZWN0O1xuICB9XG59Il0sImZpbGUiOiJwcm9qZWN0LmNvbW1hbmQuanMifQ==
@@ -1,15 +0,0 @@
1
- export declare class CliList {
2
- private _headers?;
3
- private readonly _data;
4
- private readonly _columns;
5
- private static _capitalize;
6
- private static _length;
7
- private _updateColumns;
8
- private _formatValue;
9
- setHeaders(headers: string[]): void;
10
- add(data: string[]): void;
11
- lines(): Generator<string, void>;
12
- get columns(): number[];
13
- get headers(): string[];
14
- get data(): string[][];
15
- }
@@ -1,87 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.CliList = void 0;
7
-
8
- var _chalk = _interopRequireDefault(require("chalk"));
9
-
10
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
-
12
- 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; }
13
-
14
- // Class
15
- class CliList {
16
- constructor() {
17
- _defineProperty(this, "_headers", void 0);
18
-
19
- _defineProperty(this, "_data", []);
20
-
21
- _defineProperty(this, "_columns", []);
22
- }
23
-
24
- // Methods
25
- static _capitalize(txt) {
26
- return txt.charAt(0).toUpperCase() + txt.substring(1).toLowerCase();
27
- }
28
-
29
- static _length(txt) {
30
- return txt.replace(/\033\[[^m]*m/g, '').length;
31
- }
32
-
33
- _updateColumns(data) {
34
- // Add missing columns
35
- while (data.length > this._columns.length) {
36
- this._columns.push(0);
37
- } // Update columns
38
-
39
-
40
- for (let i = 0; i < data.length; ++i) {
41
- this._columns[i] = Math.max(this._columns[i], CliList._length(data[i]));
42
- }
43
- }
44
-
45
- _formatValue(value, idx) {
46
- return value + ' '.repeat(this._columns[idx] - CliList._length(value));
47
- }
48
-
49
- setHeaders(headers) {
50
- this._updateColumns(headers);
51
-
52
- this._headers = headers.map(CliList._capitalize);
53
- }
54
-
55
- add(data) {
56
- this._updateColumns(data);
57
-
58
- this._data.push(data);
59
- }
60
-
61
- *lines() {
62
- if (this._headers) {
63
- yield this._headers.map((v, i) => _chalk.default.bold(this._formatValue(v, i))).join(' ');
64
- }
65
-
66
- for (const data of this._data) {
67
- yield data.map((v, i) => this._formatValue(v, i)).join(' ');
68
- }
69
- } // Properties
70
-
71
-
72
- get columns() {
73
- return this._columns;
74
- }
75
-
76
- get headers() {
77
- return this._headers || [];
78
- }
79
-
80
- get data() {
81
- return this._data;
82
- }
83
-
84
- }
85
-
86
- exports.CliList = CliList;
87
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInV0aWxzL2NsaS1saXN0LnRzIl0sIm5hbWVzIjpbIkNsaUxpc3QiLCJfY2FwaXRhbGl6ZSIsInR4dCIsImNoYXJBdCIsInRvVXBwZXJDYXNlIiwic3Vic3RyaW5nIiwidG9Mb3dlckNhc2UiLCJfbGVuZ3RoIiwicmVwbGFjZSIsImxlbmd0aCIsIl91cGRhdGVDb2x1bW5zIiwiZGF0YSIsIl9jb2x1bW5zIiwicHVzaCIsImkiLCJNYXRoIiwibWF4IiwiX2Zvcm1hdFZhbHVlIiwidmFsdWUiLCJpZHgiLCJyZXBlYXQiLCJzZXRIZWFkZXJzIiwiaGVhZGVycyIsIl9oZWFkZXJzIiwibWFwIiwiYWRkIiwiX2RhdGEiLCJsaW5lcyIsInYiLCJjaGFsayIsImJvbGQiLCJqb2luIiwiY29sdW1ucyJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOzs7Ozs7QUFFQTtBQUNPLE1BQU1BLE9BQU4sQ0FBYztBQUFBO0FBQUE7O0FBQUEsbUNBR2tCLEVBSGxCOztBQUFBLHNDQUltQixFQUpuQjtBQUFBOztBQU1uQjtBQUMwQixTQUFYQyxXQUFXLENBQUNDLEdBQUQsRUFBc0I7QUFDOUMsV0FBT0EsR0FBRyxDQUFDQyxNQUFKLENBQVcsQ0FBWCxFQUFjQyxXQUFkLEtBQThCRixHQUFHLENBQUNHLFNBQUosQ0FBYyxDQUFkLEVBQWlCQyxXQUFqQixFQUFyQztBQUNEOztBQUVxQixTQUFQQyxPQUFPLENBQUNMLEdBQUQsRUFBc0I7QUFDMUMsV0FBT0EsR0FBRyxDQUFDTSxPQUFKLENBQVksZUFBWixFQUE2QixFQUE3QixFQUFpQ0MsTUFBeEM7QUFDRDs7QUFFT0MsRUFBQUEsY0FBYyxDQUFDQyxJQUFELEVBQXVCO0FBQzNDO0FBQ0EsV0FBT0EsSUFBSSxDQUFDRixNQUFMLEdBQWMsS0FBS0csUUFBTCxDQUFjSCxNQUFuQyxFQUEyQztBQUN6QyxXQUFLRyxRQUFMLENBQWNDLElBQWQsQ0FBbUIsQ0FBbkI7QUFDRCxLQUowQyxDQU0zQzs7O0FBQ0EsU0FBSyxJQUFJQyxDQUFDLEdBQUcsQ0FBYixFQUFnQkEsQ0FBQyxHQUFHSCxJQUFJLENBQUNGLE1BQXpCLEVBQWlDLEVBQUVLLENBQW5DLEVBQXNDO0FBQ3BDLFdBQUtGLFFBQUwsQ0FBY0UsQ0FBZCxJQUFtQkMsSUFBSSxDQUFDQyxHQUFMLENBQVMsS0FBS0osUUFBTCxDQUFjRSxDQUFkLENBQVQsRUFBMkJkLE9BQU8sQ0FBQ08sT0FBUixDQUFnQkksSUFBSSxDQUFDRyxDQUFELENBQXBCLENBQTNCLENBQW5CO0FBQ0Q7QUFDRjs7QUFFT0csRUFBQUEsWUFBWSxDQUFDQyxLQUFELEVBQWdCQyxHQUFoQixFQUFxQztBQUN2RCxXQUFPRCxLQUFLLEdBQUcsSUFBSUUsTUFBSixDQUFXLEtBQUtSLFFBQUwsQ0FBY08sR0FBZCxJQUFxQm5CLE9BQU8sQ0FBQ08sT0FBUixDQUFnQlcsS0FBaEIsQ0FBaEMsQ0FBZjtBQUNEOztBQUVERyxFQUFBQSxVQUFVLENBQUNDLE9BQUQsRUFBMEI7QUFDbEMsU0FBS1osY0FBTCxDQUFvQlksT0FBcEI7O0FBQ0EsU0FBS0MsUUFBTCxHQUFnQkQsT0FBTyxDQUFDRSxHQUFSLENBQVl4QixPQUFPLENBQUNDLFdBQXBCLENBQWhCO0FBQ0Q7O0FBRUR3QixFQUFBQSxHQUFHLENBQUNkLElBQUQsRUFBdUI7QUFDeEIsU0FBS0QsY0FBTCxDQUFvQkMsSUFBcEI7O0FBQ0EsU0FBS2UsS0FBTCxDQUFXYixJQUFYLENBQWdCRixJQUFoQjtBQUNEOztBQUVLLEdBQUxnQixLQUFLLEdBQTRCO0FBQ2hDLFFBQUksS0FBS0osUUFBVCxFQUFtQjtBQUNqQixZQUFNLEtBQUtBLFFBQUwsQ0FBY0MsR0FBZCxDQUFrQixDQUFDSSxDQUFELEVBQUlkLENBQUosS0FBVWUsZUFBTUMsSUFBTixDQUFXLEtBQUtiLFlBQUwsQ0FBa0JXLENBQWxCLEVBQXFCZCxDQUFyQixDQUFYLENBQTVCLEVBQ0RpQixJQURDLENBQ0ksSUFESixDQUFOO0FBRUQ7O0FBRUQsU0FBSyxNQUFNcEIsSUFBWCxJQUFtQixLQUFLZSxLQUF4QixFQUErQjtBQUM3QixZQUFNZixJQUFJLENBQUNhLEdBQUwsQ0FBUyxDQUFDSSxDQUFELEVBQUlkLENBQUosS0FBVSxLQUFLRyxZQUFMLENBQWtCVyxDQUFsQixFQUFxQmQsQ0FBckIsQ0FBbkIsRUFDSGlCLElBREcsQ0FDRSxJQURGLENBQU47QUFFRDtBQUNGLEdBbkRrQixDQXFEbkI7OztBQUNXLE1BQVBDLE9BQU8sR0FBYTtBQUN0QixXQUFPLEtBQUtwQixRQUFaO0FBQ0Q7O0FBRVUsTUFBUFUsT0FBTyxHQUFhO0FBQ3RCLFdBQU8sS0FBS0MsUUFBTCxJQUFpQixFQUF4QjtBQUNEOztBQUVPLE1BQUpaLElBQUksR0FBZTtBQUNyQixXQUFPLEtBQUtlLEtBQVo7QUFDRDs7QUFoRWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGNoYWxrIGZyb20gJ2NoYWxrJztcblxuLy8gQ2xhc3NcbmV4cG9ydCBjbGFzcyBDbGlMaXN0IHtcbiAgLy8gQXR0cmlidXRlc1xuICBwcml2YXRlIF9oZWFkZXJzPzogc3RyaW5nW107XG4gIHByaXZhdGUgcmVhZG9ubHkgX2RhdGE6IHN0cmluZ1tdW10gPSBbXTtcbiAgcHJpdmF0ZSByZWFkb25seSBfY29sdW1uczogbnVtYmVyW10gPSBbXTtcblxuICAvLyBNZXRob2RzXG4gIHByaXZhdGUgc3RhdGljIF9jYXBpdGFsaXplKHR4dDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdHh0LmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsgdHh0LnN1YnN0cmluZygxKS50b0xvd2VyQ2FzZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgX2xlbmd0aCh0eHQ6IHN0cmluZyk6IG51bWJlciB7XG4gICAgcmV0dXJuIHR4dC5yZXBsYWNlKC9cXDAzM1xcW1tebV0qbS9nLCAnJykubGVuZ3RoO1xuICB9XG5cbiAgcHJpdmF0ZSBfdXBkYXRlQ29sdW1ucyhkYXRhOiBzdHJpbmdbXSk6IHZvaWQge1xuICAgIC8vIEFkZCBtaXNzaW5nIGNvbHVtbnNcbiAgICB3aGlsZSAoZGF0YS5sZW5ndGggPiB0aGlzLl9jb2x1bW5zLmxlbmd0aCkge1xuICAgICAgdGhpcy5fY29sdW1ucy5wdXNoKDApO1xuICAgIH1cblxuICAgIC8vIFVwZGF0ZSBjb2x1bW5zXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkYXRhLmxlbmd0aDsgKytpKSB7XG4gICAgICB0aGlzLl9jb2x1bW5zW2ldID0gTWF0aC5tYXgodGhpcy5fY29sdW1uc1tpXSwgQ2xpTGlzdC5fbGVuZ3RoKGRhdGFbaV0pKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9mb3JtYXRWYWx1ZSh2YWx1ZTogc3RyaW5nLCBpZHg6IG51bWJlcik6IHN0cmluZyB7XG4gICAgcmV0dXJuIHZhbHVlICsgJyAnLnJlcGVhdCh0aGlzLl9jb2x1bW5zW2lkeF0gLSBDbGlMaXN0Ll9sZW5ndGgodmFsdWUpKTtcbiAgfVxuICBcbiAgc2V0SGVhZGVycyhoZWFkZXJzOiBzdHJpbmdbXSk6IHZvaWQge1xuICAgIHRoaXMuX3VwZGF0ZUNvbHVtbnMoaGVhZGVycyk7XG4gICAgdGhpcy5faGVhZGVycyA9IGhlYWRlcnMubWFwKENsaUxpc3QuX2NhcGl0YWxpemUpO1xuICB9XG4gIFxuICBhZGQoZGF0YTogc3RyaW5nW10pOiB2b2lkIHtcbiAgICB0aGlzLl91cGRhdGVDb2x1bW5zKGRhdGEpO1xuICAgIHRoaXMuX2RhdGEucHVzaChkYXRhKTtcbiAgfVxuXG4gICpsaW5lcygpOiBHZW5lcmF0b3I8c3RyaW5nLCB2b2lkPiB7XG4gICAgaWYgKHRoaXMuX2hlYWRlcnMpIHtcbiAgICAgIHlpZWxkIHRoaXMuX2hlYWRlcnMubWFwKCh2LCBpKSA9PiBjaGFsay5ib2xkKHRoaXMuX2Zvcm1hdFZhbHVlKHYsIGkpKSlcbiAgICAgICAgICAuam9pbignICAnKTtcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IGRhdGEgb2YgdGhpcy5fZGF0YSkge1xuICAgICAgeWllbGQgZGF0YS5tYXAoKHYsIGkpID0+IHRoaXMuX2Zvcm1hdFZhbHVlKHYsIGkpKVxuICAgICAgICAuam9pbignICAnKTtcbiAgICB9XG4gIH1cblxuICAvLyBQcm9wZXJ0aWVzXG4gIGdldCBjb2x1bW5zKCk6IG51bWJlcltdIHtcbiAgICByZXR1cm4gdGhpcy5fY29sdW1ucztcbiAgfVxuXG4gIGdldCBoZWFkZXJzKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gdGhpcy5faGVhZGVycyB8fCBbXTtcbiAgfVxuXG4gIGdldCBkYXRhKCk6IHN0cmluZ1tdW10ge1xuICAgIHJldHVybiB0aGlzLl9kYXRhO1xuICB9XG59Il0sImZpbGUiOiJ1dGlscy9jbGktbGlzdC5qcyJ9
@@ -1,12 +0,0 @@
1
- import { Workspace } from '@jujulego/jill-core';
2
- import { Arguments, Builder } from './command';
3
- import { ProjectArgs, ProjectCommand } from './project.command';
4
- export interface WorkspaceArgs extends ProjectArgs {
5
- workspace: string | undefined;
6
- }
7
- export declare abstract class WorkspaceCommand<A extends WorkspaceArgs = WorkspaceArgs> extends ProjectCommand<WorkspaceArgs> {
8
- private _workspace?;
9
- protected define<T, U>(builder: Builder<T, U>): Builder<T, U & WorkspaceArgs>;
10
- protected run(args: Arguments<A>): Promise<number | void>;
11
- get workspace(): Workspace;
12
- }