@jujulego/jill 1.1.17 → 1.1.18

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 (68) hide show
  1. package/dist/base.command.d.ts +8 -0
  2. package/dist/base.command.js +33 -0
  3. package/dist/command.d.ts +21 -0
  4. package/dist/command.js +69 -0
  5. package/dist/commands/each.command.d.ts +17 -0
  6. package/dist/commands/each.command.js +115 -0
  7. package/dist/commands/info.command.d.ts +9 -0
  8. package/dist/commands/info.command.js +83 -0
  9. package/dist/commands/list.command.d.ts +22 -0
  10. package/dist/commands/list.command.js +177 -0
  11. package/dist/commands/run.command.d.ts +13 -0
  12. package/dist/commands/run.command.js +60 -0
  13. package/dist/filters/affected.js +2 -4
  14. package/dist/index.d.ts +4 -9
  15. package/dist/index.js +13 -27
  16. package/dist/logger.d.ts +6 -23
  17. package/dist/logger.js +28 -119
  18. package/dist/main.js +18 -132
  19. package/dist/myr/commands/kill.command.d.ts +11 -0
  20. package/dist/myr/commands/kill.command.js +52 -0
  21. package/dist/myr/commands/list.command.d.ts +18 -0
  22. package/dist/myr/commands/list.command.js +127 -0
  23. package/dist/myr/commands/logs.command.d.ts +11 -0
  24. package/dist/myr/commands/logs.command.js +83 -0
  25. package/dist/myr/commands/spawn.command.d.ts +11 -0
  26. package/dist/myr/commands/spawn.command.js +45 -0
  27. package/dist/myr/commands/stop.command.d.ts +7 -0
  28. package/dist/myr/commands/stop.command.js +43 -0
  29. package/dist/myr/myr-client.js +38 -391
  30. package/dist/myr/myr.command.d.ts +8 -0
  31. package/dist/myr/myr.command.js +46 -0
  32. package/dist/myr/watch.command.d.ts +13 -0
  33. package/dist/myr/watch.command.js +87 -0
  34. package/dist/plugin.d.ts +11 -0
  35. package/dist/plugin.js +40 -0
  36. package/dist/project.command.d.ts +13 -0
  37. package/dist/project.command.js +58 -0
  38. package/dist/task-logger.js +5 -5
  39. package/dist/workspace.command.d.ts +12 -0
  40. package/dist/workspace.command.js +55 -0
  41. package/package.json +19 -16
  42. package/dist/commands/each.d.ts +0 -12
  43. package/dist/commands/each.js +0 -75
  44. package/dist/commands/info.d.ts +0 -5
  45. package/dist/commands/info.js +0 -43
  46. package/dist/commands/list.d.ts +0 -15
  47. package/dist/commands/list.js +0 -120
  48. package/dist/commands/run.d.ts +0 -9
  49. package/dist/commands/run.js +0 -44
  50. package/dist/myr/command.d.ts +0 -2
  51. package/dist/myr/command.js +0 -62
  52. package/dist/myr/commands/kill.d.ts +0 -5
  53. package/dist/myr/commands/kill.js +0 -35
  54. package/dist/myr/commands/list.d.ts +0 -10
  55. package/dist/myr/commands/list.js +0 -92
  56. package/dist/myr/commands/logs.d.ts +0 -5
  57. package/dist/myr/commands/logs.js +0 -65
  58. package/dist/myr/commands/spawn.d.ts +0 -7
  59. package/dist/myr/commands/spawn.js +0 -40
  60. package/dist/myr/commands/stop.d.ts +0 -2
  61. package/dist/myr/commands/stop.js +0 -32
  62. package/dist/myr/watch.d.ts +0 -8
  63. package/dist/myr/watch.js +0 -80
  64. package/dist/utils/deps-tree.d.ts +0 -2
  65. package/dist/utils/deps-tree.js +0 -52
  66. package/dist/wrapper.d.ts +0 -9
  67. package/dist/wrapper.js +0 -39
  68. package/gulpfile.ts +0 -43
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.MyrCommand = void 0;
7
+
8
+ var _command = require("../command");
9
+
10
+ var _kill = require("./commands/kill.command");
11
+
12
+ var _list = require("./commands/list.command");
13
+
14
+ var _logs = require("./commands/logs.command");
15
+
16
+ var _spawn = require("./commands/spawn.command");
17
+
18
+ var _stop = require("./commands/stop.command");
19
+
20
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
21
+
22
+ // Command
23
+ class MyrCommand extends _command.Command {
24
+ constructor(...args) {
25
+ super(...args);
26
+
27
+ _defineProperty(this, "name", 'myr');
28
+
29
+ _defineProperty(this, "description", 'Interact with myr server');
30
+
31
+ _defineProperty(this, "commands", [new _kill.KillCommand(), new _list.ListCommand(), new _logs.LogsCommand(), new _spawn.SpawnCommand(), new _stop.StopCommand()]);
32
+ }
33
+
34
+ // Methods
35
+ define(builder) {
36
+ return yargs => this.commands.reduce((y, cmd) => cmd.setup(y), builder(yargs));
37
+ }
38
+
39
+ run() {
40
+ return 0;
41
+ }
42
+
43
+ }
44
+
45
+ exports.MyrCommand = MyrCommand;
46
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm15ci9teXIuY29tbWFuZC50cyJdLCJuYW1lcyI6WyJNeXJDb21tYW5kIiwiQ29tbWFuZCIsIktpbGxDb21tYW5kIiwiTGlzdENvbW1hbmQiLCJMb2dzQ29tbWFuZCIsIlNwYXduQ29tbWFuZCIsIlN0b3BDb21tYW5kIiwiZGVmaW5lIiwiYnVpbGRlciIsInlhcmdzIiwiY29tbWFuZHMiLCJyZWR1Y2UiLCJ5IiwiY21kIiwic2V0dXAiLCJydW4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7OztBQUVBO0FBQ08sTUFBTUEsVUFBTixTQUF5QkMsZ0JBQXpCLENBQWlDO0FBQUE7QUFBQTs7QUFBQSxrQ0FFdEIsS0FGc0I7O0FBQUEseUNBR2YsMEJBSGU7O0FBQUEsc0NBS0UsQ0FDdEMsSUFBSUMsaUJBQUosRUFEc0MsRUFFdEMsSUFBSUMsaUJBQUosRUFGc0MsRUFHdEMsSUFBSUMsaUJBQUosRUFIc0MsRUFJdEMsSUFBSUMsbUJBQUosRUFKc0MsRUFLdEMsSUFBSUMsaUJBQUosRUFMc0MsQ0FMRjtBQUFBOztBQWF0QztBQUNVQyxFQUFBQSxNQUFNLENBQU9DLE9BQVAsRUFBOEM7QUFDNUQsV0FBT0MsS0FBSyxJQUFJLEtBQUtDLFFBQUwsQ0FBY0MsTUFBZCxDQUFxQixDQUFDQyxDQUFELEVBQUlDLEdBQUosS0FBWUEsR0FBRyxDQUFDQyxLQUFKLENBQVVGLENBQVYsQ0FBakMsRUFBK0NKLE9BQU8sQ0FBQ0MsS0FBRCxDQUF0RCxDQUFoQjtBQUNEOztBQUVTTSxFQUFBQSxHQUFHLEdBQVc7QUFDdEIsV0FBTyxDQUFQO0FBQ0Q7O0FBcEJxQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJ1aWxkZXIsIENvbW1hbmQgfSBmcm9tICcuLi9jb21tYW5kJztcbmltcG9ydCB7IEtpbGxDb21tYW5kIH0gZnJvbSAnLi9jb21tYW5kcy9raWxsLmNvbW1hbmQnO1xuaW1wb3J0IHsgTGlzdENvbW1hbmQgfSBmcm9tICcuL2NvbW1hbmRzL2xpc3QuY29tbWFuZCc7XG5pbXBvcnQgeyBMb2dzQ29tbWFuZCB9IGZyb20gJy4vY29tbWFuZHMvbG9ncy5jb21tYW5kJztcbmltcG9ydCB7IFNwYXduQ29tbWFuZCB9IGZyb20gJy4vY29tbWFuZHMvc3Bhd24uY29tbWFuZCc7XG5pbXBvcnQgeyBTdG9wQ29tbWFuZCB9IGZyb20gJy4vY29tbWFuZHMvc3RvcC5jb21tYW5kJztcblxuLy8gQ29tbWFuZFxuZXhwb3J0IGNsYXNzIE15ckNvbW1hbmQgZXh0ZW5kcyBDb21tYW5kIHtcbiAgLy8gUHJvcGVydGllc1xuICByZWFkb25seSBuYW1lID0gJ215cic7XG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uID0gJ0ludGVyYWN0IHdpdGggbXlyIHNlcnZlcic7XG5cbiAgcmVhZG9ubHkgY29tbWFuZHM6IHJlYWRvbmx5IENvbW1hbmRbXSA9IFtcbiAgICBuZXcgS2lsbENvbW1hbmQoKSxcbiAgICBuZXcgTGlzdENvbW1hbmQoKSxcbiAgICBuZXcgTG9nc0NvbW1hbmQoKSxcbiAgICBuZXcgU3Bhd25Db21tYW5kKCksXG4gICAgbmV3IFN0b3BDb21tYW5kKCksXG4gIF07XG5cbiAgLy8gTWV0aG9kc1xuICBwcm90ZWN0ZWQgZGVmaW5lPFQsIFU+KGJ1aWxkZXI6IEJ1aWxkZXI8VCwgVT4pOiBCdWlsZGVyPFQsIFU+IHtcbiAgICByZXR1cm4geWFyZ3MgPT4gdGhpcy5jb21tYW5kcy5yZWR1Y2UoKHksIGNtZCkgPT4gY21kLnNldHVwKHkpLCBidWlsZGVyKHlhcmdzKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgcnVuKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIDA7XG4gIH1cbn0iXSwiZmlsZSI6Im15ci9teXIuY29tbWFuZC5qcyJ9
@@ -0,0 +1,13 @@
1
+ import { Arguments, Builder } from '../command';
2
+ import { WorkspaceArgs, WorkspaceCommand } from '../workspace.command';
3
+ export interface WatchArgs extends WorkspaceArgs {
4
+ script: string;
5
+ daemon: boolean;
6
+ }
7
+ export declare class WatchCommand extends WorkspaceCommand<WatchArgs> {
8
+ readonly name = "watch <script>";
9
+ readonly description = "Run script with watcher inside workspace and watch over deps";
10
+ private spawnDepsTree;
11
+ protected define<T, U>(builder: Builder<T, U>): Builder<T, U & WatchArgs>;
12
+ protected run(args: Arguments<WatchArgs>): Promise<number>;
13
+ }
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.WatchCommand = void 0;
7
+
8
+ var _jillCore = require("@jujulego/jill-core");
9
+
10
+ var _workspace = require("../workspace.command");
11
+
12
+ var _myrClient = require("./myr-client");
13
+
14
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
15
+
16
+ // Command
17
+ class WatchCommand extends _workspace.WorkspaceCommand {
18
+ constructor(...args) {
19
+ super(...args);
20
+
21
+ _defineProperty(this, "name", 'watch <script>');
22
+
23
+ _defineProperty(this, "description", 'Run script with watcher inside workspace and watch over deps');
24
+ }
25
+
26
+ // Methods
27
+ async spawnDepsTree(myr, wks, set) {
28
+ let count = 0;
29
+
30
+ for await (const ws of (0, _jillCore.combine)(wks.dependencies(), wks.devDependencies())) {
31
+ if (set.has(ws.cwd)) continue;
32
+ set.add(ws.cwd); // Spawn dependencies
33
+
34
+ count += await this.spawnDepsTree(myr, ws, set); // Spawn task
35
+
36
+ const tsk = await myr.spawnScript(ws, 'watch');
37
+ this.logger.log('info', `Task ${tsk.id} spawned`, {
38
+ label: ws.name
39
+ });
40
+ count++;
41
+ }
42
+
43
+ return count;
44
+ }
45
+
46
+ define(builder) {
47
+ return super.define(y => builder(y).positional('script', {
48
+ type: 'string',
49
+ demandOption: true
50
+ }).option('daemon', {
51
+ alias: 'd',
52
+ boolean: true,
53
+ default: false,
54
+ desc: 'Run watch script also in background'
55
+ }));
56
+ }
57
+
58
+ async run(args) {
59
+ await super.run(args); // Spawn watch
60
+
61
+ this.spinner.start('Spawning dependencies watch tasks');
62
+ const myr = new _myrClient.MyrClient(this.project);
63
+ const count = await this.spawnDepsTree(myr, this.workspace, new Set()); // Spawn task
64
+
65
+ if (args.daemon) {
66
+ this.spinner.start(`Spawning ${args.script} task`);
67
+ const tsk = await myr.spawnScript(this.workspace, args.script, args['--']?.map(arg => arg.toString()));
68
+ this.logger.log('info', `Task ${tsk.id} spawned`, {
69
+ label: this.workspace.name
70
+ });
71
+ this.spinner.succeed(`${count + 1} watch tasks spawned`);
72
+ return 0;
73
+ } else {
74
+ this.spinner.succeed(`${count} watch tasks spawned`);
75
+ const tsk = await this.workspace.run(args.script, args['--']?.map(arg => arg.toString()), {
76
+ buildDeps: 'none'
77
+ });
78
+ tsk.start();
79
+ await tsk.waitFor('done', 'failed');
80
+ return tsk.exitCode === 0 ? 0 : 1;
81
+ }
82
+ }
83
+
84
+ }
85
+
86
+ exports.WatchCommand = WatchCommand;
87
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm15ci93YXRjaC5jb21tYW5kLnRzIl0sIm5hbWVzIjpbIldhdGNoQ29tbWFuZCIsIldvcmtzcGFjZUNvbW1hbmQiLCJzcGF3bkRlcHNUcmVlIiwibXlyIiwid2tzIiwic2V0IiwiY291bnQiLCJ3cyIsImRlcGVuZGVuY2llcyIsImRldkRlcGVuZGVuY2llcyIsImhhcyIsImN3ZCIsImFkZCIsInRzayIsInNwYXduU2NyaXB0IiwibG9nZ2VyIiwibG9nIiwiaWQiLCJsYWJlbCIsIm5hbWUiLCJkZWZpbmUiLCJidWlsZGVyIiwieSIsInBvc2l0aW9uYWwiLCJ0eXBlIiwiZGVtYW5kT3B0aW9uIiwib3B0aW9uIiwiYWxpYXMiLCJib29sZWFuIiwiZGVmYXVsdCIsImRlc2MiLCJydW4iLCJhcmdzIiwic3Bpbm5lciIsInN0YXJ0IiwiTXlyQ2xpZW50IiwicHJvamVjdCIsIndvcmtzcGFjZSIsIlNldCIsImRhZW1vbiIsInNjcmlwdCIsIm1hcCIsImFyZyIsInRvU3RyaW5nIiwic3VjY2VlZCIsImJ1aWxkRGVwcyIsIndhaXRGb3IiLCJleGl0Q29kZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOztBQUdBOztBQUNBOzs7O0FBUUE7QUFDTyxNQUFNQSxZQUFOLFNBQTJCQywyQkFBM0IsQ0FBdUQ7QUFBQTtBQUFBOztBQUFBLGtDQUU1QyxnQkFGNEM7O0FBQUEseUNBR3JDLDhEQUhxQztBQUFBOztBQUs1RDtBQUMyQixRQUFiQyxhQUFhLENBQUNDLEdBQUQsRUFBaUJDLEdBQWpCLEVBQWlDQyxHQUFqQyxFQUFvRTtBQUM3RixRQUFJQyxLQUFLLEdBQUcsQ0FBWjs7QUFFQSxlQUFXLE1BQU1DLEVBQWpCLElBQXVCLHVCQUFRSCxHQUFHLENBQUNJLFlBQUosRUFBUixFQUE0QkosR0FBRyxDQUFDSyxlQUFKLEVBQTVCLENBQXZCLEVBQTJFO0FBQ3pFLFVBQUlKLEdBQUcsQ0FBQ0ssR0FBSixDQUFRSCxFQUFFLENBQUNJLEdBQVgsQ0FBSixFQUFxQjtBQUNyQk4sTUFB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Q0FBQ3FCLEtBQUo7QUFFQSxZQUFNckIsR0FBRyxDQUFDaUMsT0FBSixDQUFZLE1BQVosRUFBb0IsUUFBcEIsQ0FBTjtBQUNBLGFBQU9qQyxHQUFHLENBQUNrQyxRQUFKLEtBQWlCLENBQWpCLEdBQXFCLENBQXJCLEdBQXlCLENBQWhDO0FBQ0Q7QUFDRjs7QUEvRDJEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29tYmluZSwgV29ya3NwYWNlIH0gZnJvbSAnQGp1anVsZWdvL2ppbGwtY29yZSc7XG5cbmltcG9ydCB7IEFyZ3VtZW50cywgQnVpbGRlciB9IGZyb20gJy4uL2NvbW1hbmQnO1xuaW1wb3J0IHsgV29ya3NwYWNlQXJncywgV29ya3NwYWNlQ29tbWFuZCB9IGZyb20gJy4uL3dvcmtzcGFjZS5jb21tYW5kJztcbmltcG9ydCB7IE15ckNsaWVudCB9IGZyb20gJy4vbXlyLWNsaWVudCc7XG5cbi8vIFR5cGVzXG5leHBvcnQgaW50ZXJmYWNlIFdhdGNoQXJncyBleHRlbmRzIFdvcmtzcGFjZUFyZ3Mge1xuICBzY3JpcHQ6IHN0cmluZztcbiAgZGFlbW9uOiBib29sZWFuO1xufVxuXG4vLyBDb21tYW5kXG5leHBvcnQgY2xhc3MgV2F0Y2hDb21tYW5kIGV4dGVuZHMgV29ya3NwYWNlQ29tbWFuZDxXYXRjaEFyZ3M+IHtcbiAgLy8gQXR0cmlidXRlc1xuICByZWFkb25seSBuYW1lID0gJ3dhdGNoIDxzY3JpcHQ+JztcbiAgcmVhZG9ubHkgZGVzY3JpcHRpb24gPSAnUnVuIHNjcmlwdCB3aXRoIHdhdGNoZXIgaW5zaWRlIHdvcmtzcGFjZSBhbmQgd2F0Y2ggb3ZlciBkZXBzJztcblxuICAvLyBNZXRob2RzXG4gIHByaXZhdGUgYXN5bmMgc3Bhd25EZXBzVHJlZShteXI6IE15ckNsaWVudCwgd2tzOiBXb3Jrc3BhY2UsIHNldDogU2V0PHN0cmluZz4pOiBQcm9taXNlPG51bWJlcj4ge1xuICAgIGxldCBjb3VudCA9IDA7XG5cbiAgICBmb3IgYXdhaXQgKGNvbnN0IHdzIG9mIGNvbWJpbmUod2tzLmRlcGVuZGVuY2llcygpLCB3a3MuZGV2RGVwZW5kZW5jaWVzKCkpKSB7XG4gICAgICBpZiAoc2V0Lmhhcyh3cy5jd2QpKSBjb250aW51ZTtcbiAgICAgIHNldC5hZGQod3MuY3dkKTtcblxuICAgICAgLy8gU3Bhd24gZGVwZW5kZW5jaWVzXG4gICAgICBjb3VudCArPSBhd2FpdCB0aGlzLnNwYXduRGVwc1RyZWUobXlyLCB3cywgc2V0KTtcblxuICAgICAgLy8gU3Bhd24gdGFza1xuICAgICAgY29uc3QgdHNrID0gYXdhaXQgbXlyLnNwYXduU2NyaXB0KHdzLCAnd2F0Y2gnKTtcbiAgICAgIHRoaXMubG9nZ2VyLmxvZygnaW5mbycsIGBUYXNrICR7dHNrLmlkfSBzcGF3bmVkYCwgeyBsYWJlbDogd3MubmFtZSB9KTtcblxuICAgICAgY291bnQrKztcbiAgICB9XG5cbiAgICByZXR1cm4gY291bnQ7XG4gIH1cblxuICBwcm90ZWN0ZWQgZGVmaW5lPFQsIFU+KGJ1aWxkZXI6IEJ1aWxkZXI8VCwgVT4pOiBCdWlsZGVyPFQsIFUgJiBXYXRjaEFyZ3M+IHtcbiAgICByZXR1cm4gc3VwZXIuZGVmaW5lKHkgPT4gYnVpbGRlcih5KVxuICAgICAgLnBvc2l0aW9uYWwoJ3NjcmlwdCcsIHsgdHlwZTogJ3N0cmluZycsIGRlbWFuZE9wdGlvbjogdHJ1ZSB9KVxuICAgICAgLm9wdGlvbignZGFlbW9uJywge1xuICAgICAgICBhbGlhczogJ2QnLFxuICAgICAgICBib29sZWFuOiB0cnVlLFxuICAgICAgICBkZWZhdWx0OiBmYWxzZSxcbiAgICAgICAgZGVzYzogJ1J1biB3YXRjaCBzY3JpcHQgYWxzbyBpbiBiYWNrZ3JvdW5kJ1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIHJ1bihhcmdzOiBBcmd1bWVudHM8V2F0Y2hBcmdzPik6IFByb21pc2U8bnVtYmVyPiB7XG4gICAgYXdhaXQgc3VwZXIucnVuKGFyZ3MpO1xuXG4gICAgLy8gU3Bhd24gd2F0Y2hcbiAgICB0aGlzLnNwaW5uZXIuc3RhcnQoJ1NwYXduaW5nIGRlcGVuZGVuY2llcyB3YXRjaCB0YXNrcycpO1xuICAgIGNvbnN0IG15ciA9IG5ldyBNeXJDbGllbnQodGhpcy5wcm9qZWN0KTtcbiAgICBjb25zdCBjb3VudCA9IGF3YWl0IHRoaXMuc3Bhd25EZXBzVHJlZShteXIsIHRoaXMud29ya3NwYWNlLCBuZXcgU2V0KCkpO1xuXG4gICAgLy8gU3Bhd24gdGFza1xuICAgIGlmIChhcmdzLmRhZW1vbikge1xuICAgICAgdGhpcy5zcGlubmVyLnN0YXJ0KGBTcGF3bmluZyAke2FyZ3Muc2NyaXB0fSB0YXNrYCk7XG4gICAgICBjb25zdCB0c2sgPSBhd2FpdCBteXIuc3Bhd25TY3JpcHQodGhpcy53b3Jrc3BhY2UsIGFyZ3Muc2NyaXB0LCBhcmdzWyctLSddPy5tYXAoYXJnID0+IGFyZy50b1N0cmluZygpKSk7XG4gICAgICB0aGlzLmxvZ2dlci5sb2coJ2luZm8nLCBgVGFzayAke3Rzay5pZH0gc3Bhd25lZGAsIHsgbGFiZWw6IHRoaXMud29ya3NwYWNlLm5hbWUgfSk7XG4gICAgICB0aGlzLnNwaW5uZXIuc3VjY2VlZChgJHtjb3VudCArIDF9IHdhdGNoIHRhc2tzIHNwYXduZWRgKTtcblxuICAgICAgcmV0dXJuIDA7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc3Bpbm5lci5zdWNjZWVkKGAke2NvdW50fSB3YXRjaCB0YXNrcyBzcGF3bmVkYCk7XG5cbiAgICAgIGNvbnN0IHRzayA9IGF3YWl0IHRoaXMud29ya3NwYWNlLnJ1bihhcmdzLnNjcmlwdCwgYXJnc1snLS0nXT8ubWFwKGFyZyA9PiBhcmcudG9TdHJpbmcoKSksIHsgYnVpbGREZXBzOiAnbm9uZScgfSk7XG4gICAgICB0c2suc3RhcnQoKTtcblxuICAgICAgYXdhaXQgdHNrLndhaXRGb3IoJ2RvbmUnLCAnZmFpbGVkJyk7XG4gICAgICByZXR1cm4gdHNrLmV4aXRDb2RlID09PSAwID8gMCA6IDE7XG4gICAgfVxuICB9XG59Il0sImZpbGUiOiJteXIvd2F0Y2guY29tbWFuZC5qcyJ9
@@ -0,0 +1,11 @@
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 ADDED
@@ -0,0 +1,40 @@
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==
@@ -0,0 +1,13 @@
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
+ }
@@ -0,0 +1,58 @@
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==
@@ -25,11 +25,11 @@ class TaskLogger {
25
25
  // Methods
26
26
  _refreshSpinner() {
27
27
  if (this._running.size > 1) {
28
- _logger.logger.spin(this._formats['spin-multiple'](this._running.size));
28
+ _logger.transport.spin(this._formats['spin-multiple'](this._running.size));
29
29
  } else if (this._running.size > 0) {
30
30
  const tsk = this._running.values().next().value;
31
31
 
32
- _logger.logger.spin(this._formats['spin-simple'](tsk));
32
+ _logger.transport.spin(this._formats['spin-simple'](tsk));
33
33
  }
34
34
  }
35
35
 
@@ -43,9 +43,9 @@ class TaskLogger {
43
43
  this._running.delete(task);
44
44
 
45
45
  if (task.status === 'failed') {
46
- _logger.logger.fail(this._formats['fail'](task));
46
+ _logger.transport.fail(this._formats['fail'](task));
47
47
  } else {
48
- _logger.logger.succeed(this._formats['succeed'](task));
48
+ _logger.transport.succeed(this._formats['succeed'](task));
49
49
  }
50
50
 
51
51
  this._refreshSpinner();
@@ -63,4 +63,4 @@ class TaskLogger {
63
63
  }
64
64
 
65
65
  exports.TaskLogger = TaskLogger;
66
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRhc2stbG9nZ2VyLnRzIl0sIm5hbWVzIjpbIlRhc2tMb2dnZXIiLCJTZXQiLCJjb3VudCIsInRzayIsImNvbnRleHQiLCJ3b3Jrc3BhY2UiLCJuYW1lIiwiX3JlZnJlc2hTcGlubmVyIiwiX3J1bm5pbmciLCJzaXplIiwibG9nZ2VyIiwic3BpbiIsIl9mb3JtYXRzIiwidmFsdWVzIiwibmV4dCIsInZhbHVlIiwiX2hhbmRsZVN0YXJ0ZWQiLCJ0YXNrIiwiYWRkIiwiX2hhbmRsZUNvbXBsZXRlZCIsImRlbGV0ZSIsInN0YXR1cyIsImZhaWwiLCJzdWNjZWVkIiwiY29ubmVjdCIsInNldCIsIm9uIiwic3RhdGUiLCJmb3JtYXQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFFQTs7OztBQUtBO0FBQ08sTUFBTUEsVUFBTixDQUFpQjtBQUFBO0FBQUEsc0NBRU0sSUFBSUMsR0FBSixFQUZOOztBQUFBLHNDQUdNO0FBQzFCLHVCQUFrQkMsS0FBRCxJQUFvQixZQUFXQSxLQUFNLGlCQUQ1QjtBQUUxQixxQkFBZ0JDLEdBQUQsSUFBZ0IsWUFBV0EsR0FBRyxDQUFDQyxPQUFKLENBQVlDLFNBQVosRUFBdUJDLElBQUssTUFGNUM7QUFHMUIsY0FBU0gsR0FBRCxJQUFnQixtQkFBa0JBLEdBQUcsQ0FBQ0MsT0FBSixDQUFZQyxTQUFaLEVBQXVCQyxJQUFLLEVBSDVDO0FBSTFCLGlCQUFZSCxHQUFELElBQWdCLEdBQUVBLEdBQUcsQ0FBQ0MsT0FBSixDQUFZQyxTQUFaLEVBQXVCQyxJQUFLO0FBSi9CLEtBSE47QUFBQTs7QUFVdEI7QUFDUUMsRUFBQUEsZUFBZSxHQUFHO0FBQ3hCLFFBQUksS0FBS0MsUUFBTCxDQUFjQyxJQUFkLEdBQXFCLENBQXpCLEVBQTRCO0FBQzFCQyxxQkFBT0MsSUFBUCxDQUFZLEtBQUtDLFFBQUwsQ0FBYyxlQUFkLEVBQStCLEtBQUtKLFFBQUwsQ0FBY0MsSUFBN0MsQ0FBWjtBQUNELEtBRkQsTUFFTyxJQUFJLEtBQUtELFFBQUwsQ0FBY0MsSUFBZCxHQUFxQixDQUF6QixFQUE0QjtBQUNqQyxZQUFNTixHQUFHLEdBQUcsS0FBS0ssUUFBTCxDQUFjSyxNQUFkLEdBQXVCQyxJQUF2QixHQUE4QkMsS0FBMUM7O0FBQ0FMLHFCQUFPQyxJQUFQLENBQVksS0FBS0MsUUFBTCxDQUFjLGFBQWQsRUFBNkJULEdBQTdCLENBQVo7QUFDRDtBQUNGOztBQUVPYSxFQUFBQSxjQUFjLENBQUNDLElBQUQsRUFBYTtBQUNqQyxTQUFLVCxRQUFMLENBQWNVLEdBQWQsQ0FBa0JELElBQWxCOztBQUVBLFNBQUtWLGVBQUw7QUFDRDs7QUFFT1ksRUFBQUEsZ0JBQWdCLENBQUNGLElBQUQsRUFBYTtBQUNuQyxTQUFLVCxRQUFMLENBQWNZLE1BQWQsQ0FBcUJILElBQXJCOztBQUVBLFFBQUlBLElBQUksQ0FBQ0ksTUFBTCxLQUFnQixRQUFwQixFQUE4QjtBQUM1QlgscUJBQU9ZLElBQVAsQ0FBWSxLQUFLVixRQUFMLENBQWMsTUFBZCxFQUFzQkssSUFBdEIsQ0FBWjtBQUNELEtBRkQsTUFFTztBQUNMUCxxQkFBT2EsT0FBUCxDQUFlLEtBQUtYLFFBQUwsQ0FBYyxTQUFkLEVBQXlCSyxJQUF6QixDQUFmO0FBQ0Q7O0FBRUQsU0FBS1YsZUFBTDtBQUNEOztBQUVEaUIsRUFBQUEsT0FBTyxDQUFDQyxHQUFELEVBQXFCO0FBQzFCQSxJQUFBQSxHQUFHLENBQUNDLEVBQUosQ0FBTyxTQUFQLEVBQW1CVCxJQUFELElBQVUsS0FBS0QsY0FBTCxDQUFvQkMsSUFBcEIsQ0FBNUI7QUFDQVEsSUFBQUEsR0FBRyxDQUFDQyxFQUFKLENBQU8sV0FBUCxFQUFxQlQsSUFBRCxJQUFVLEtBQUtFLGdCQUFMLENBQXNCRixJQUF0QixDQUE5QjtBQUNEOztBQU1EUyxFQUFBQSxFQUFFLENBQUNDLEtBQUQsRUFBeUJDLE1BQXpCLEVBQStEO0FBQy9ELFNBQUtoQixRQUFMLENBQWNlLEtBQWQsSUFBdUJDLE1BQXZCO0FBQ0Q7O0FBakRxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRhc2ssIFRhc2tTZXQgfSBmcm9tICdAanVqdWxlZ28vamlsbC1jb3JlJztcblxuaW1wb3J0IHsgbG9nZ2VyIH0gZnJvbSAnLi9sb2dnZXInO1xuXG4vLyBUeXBlc1xuZXhwb3J0IHR5cGUgVGFza0xvZ2dlclN0YXRlID0gJ3NwaW4tbXVsdGlwbGUnIHwgJ3NwaW4tc2ltcGxlJyB8ICdmYWlsJyB8ICdzdWNjZWVkJztcblxuLy8gQ2xhc3NcbmV4cG9ydCBjbGFzcyBUYXNrTG9nZ2VyIHtcbiAgLy8gQXR0cmlidXRlc1xuICBwcml2YXRlIHJlYWRvbmx5IF9ydW5uaW5nID0gbmV3IFNldDxUYXNrPigpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9mb3JtYXRzID0ge1xuICAgICdzcGluLW11bHRpcGxlJzogKGNvdW50OiBudW1iZXIpID0+IGBCdWlsZGluZyAke2NvdW50fSB3b3Jrc3BhY2VzIC4uLmAsXG4gICAgJ3NwaW4tc2ltcGxlJzogKHRzazogVGFzaykgPT4gYEJ1aWxkaW5nICR7dHNrLmNvbnRleHQud29ya3NwYWNlPy5uYW1lfSAuLi5gLFxuICAgICdmYWlsJzogKHRzazogVGFzaykgPT4gYEZhaWxlZCB0byBidWlsZCAke3Rzay5jb250ZXh0LndvcmtzcGFjZT8ubmFtZX1gLFxuICAgICdzdWNjZWVkJzogKHRzazogVGFzaykgPT4gYCR7dHNrLmNvbnRleHQud29ya3NwYWNlPy5uYW1lfSBidWlsdGAsXG4gIH07XG5cbiAgLy8gTWV0aG9kc1xuICBwcml2YXRlIF9yZWZyZXNoU3Bpbm5lcigpIHtcbiAgICBpZiAodGhpcy5fcnVubmluZy5zaXplID4gMSkge1xuICAgICAgbG9nZ2VyLnNwaW4odGhpcy5fZm9ybWF0c1snc3Bpbi1tdWx0aXBsZSddKHRoaXMuX3J1bm5pbmcuc2l6ZSkpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5fcnVubmluZy5zaXplID4gMCkge1xuICAgICAgY29uc3QgdHNrID0gdGhpcy5fcnVubmluZy52YWx1ZXMoKS5uZXh0KCkudmFsdWU7XG4gICAgICBsb2dnZXIuc3Bpbih0aGlzLl9mb3JtYXRzWydzcGluLXNpbXBsZSddKHRzaykpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZVN0YXJ0ZWQodGFzazogVGFzaykge1xuICAgIHRoaXMuX3J1bm5pbmcuYWRkKHRhc2spO1xuXG4gICAgdGhpcy5fcmVmcmVzaFNwaW5uZXIoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZUNvbXBsZXRlZCh0YXNrOiBUYXNrKSB7XG4gICAgdGhpcy5fcnVubmluZy5kZWxldGUodGFzayk7XG5cbiAgICBpZiAodGFzay5zdGF0dXMgPT09ICdmYWlsZWQnKSB7XG4gICAgICBsb2dnZXIuZmFpbCh0aGlzLl9mb3JtYXRzWydmYWlsJ10odGFzaykpO1xuICAgIH0gZWxzZSB7XG4gICAgICBsb2dnZXIuc3VjY2VlZCh0aGlzLl9mb3JtYXRzWydzdWNjZWVkJ10odGFzaykpO1xuICAgIH1cblxuICAgIHRoaXMuX3JlZnJlc2hTcGlubmVyKCk7XG4gIH1cblxuICBjb25uZWN0KHNldDogVGFza1NldCk6IHZvaWQge1xuICAgIHNldC5vbignc3RhcnRlZCcsICh0YXNrKSA9PiB0aGlzLl9oYW5kbGVTdGFydGVkKHRhc2spKTtcbiAgICBzZXQub24oJ2NvbXBsZXRlZCcsICh0YXNrKSA9PiB0aGlzLl9oYW5kbGVDb21wbGV0ZWQodGFzaykpO1xuICB9XG5cbiAgb24oc3RhdGU6ICdzcGluLW11bHRpcGxlJywgZm9ybWF0OiAoY291bnQ6IG51bWJlcikgPT4gc3RyaW5nKTogdm9pZDtcbiAgb24oc3RhdGU6ICdzcGluLXNpbXBsZScsIGZvcm1hdDogKHRzazogVGFzaykgPT4gc3RyaW5nKTogdm9pZDtcbiAgb24oc3RhdGU6ICdmYWlsJywgZm9ybWF0OiAodHNrOiBUYXNrKSA9PiBzdHJpbmcpOiB2b2lkO1xuICBvbihzdGF0ZTogJ3N1Y2NlZWQnLCBmb3JtYXQ6ICh0c2s6IFRhc2spID0+IHN0cmluZyk6IHZvaWQ7XG4gIG9uKHN0YXRlOiBUYXNrTG9nZ2VyU3RhdGUsIGZvcm1hdDogKGFyZzogbmV2ZXIpID0+IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuX2Zvcm1hdHNbc3RhdGVdID0gZm9ybWF0O1xuICB9XG59XG4iXSwiZmlsZSI6InRhc2stbG9nZ2VyLmpzIn0=
66
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRhc2stbG9nZ2VyLnRzIl0sIm5hbWVzIjpbIlRhc2tMb2dnZXIiLCJTZXQiLCJjb3VudCIsInRzayIsImNvbnRleHQiLCJ3b3Jrc3BhY2UiLCJuYW1lIiwiX3JlZnJlc2hTcGlubmVyIiwiX3J1bm5pbmciLCJzaXplIiwidHJhbnNwb3J0Iiwic3BpbiIsIl9mb3JtYXRzIiwidmFsdWVzIiwibmV4dCIsInZhbHVlIiwiX2hhbmRsZVN0YXJ0ZWQiLCJ0YXNrIiwiYWRkIiwiX2hhbmRsZUNvbXBsZXRlZCIsImRlbGV0ZSIsInN0YXR1cyIsImZhaWwiLCJzdWNjZWVkIiwiY29ubmVjdCIsInNldCIsIm9uIiwic3RhdGUiLCJmb3JtYXQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFFQTs7OztBQUtBO0FBQ08sTUFBTUEsVUFBTixDQUFpQjtBQUFBO0FBQUEsc0NBRU0sSUFBSUMsR0FBSixFQUZOOztBQUFBLHNDQUdNO0FBQzFCLHVCQUFrQkMsS0FBRCxJQUFvQixZQUFXQSxLQUFNLGlCQUQ1QjtBQUUxQixxQkFBZ0JDLEdBQUQsSUFBZ0IsWUFBV0EsR0FBRyxDQUFDQyxPQUFKLENBQVlDLFNBQVosRUFBdUJDLElBQUssTUFGNUM7QUFHMUIsY0FBU0gsR0FBRCxJQUFnQixtQkFBa0JBLEdBQUcsQ0FBQ0MsT0FBSixDQUFZQyxTQUFaLEVBQXVCQyxJQUFLLEVBSDVDO0FBSTFCLGlCQUFZSCxHQUFELElBQWdCLEdBQUVBLEdBQUcsQ0FBQ0MsT0FBSixDQUFZQyxTQUFaLEVBQXVCQyxJQUFLO0FBSi9CLEtBSE47QUFBQTs7QUFVdEI7QUFDUUMsRUFBQUEsZUFBZSxHQUFHO0FBQ3hCLFFBQUksS0FBS0MsUUFBTCxDQUFjQyxJQUFkLEdBQXFCLENBQXpCLEVBQTRCO0FBQzFCQyx3QkFBVUMsSUFBVixDQUFlLEtBQUtDLFFBQUwsQ0FBYyxlQUFkLEVBQStCLEtBQUtKLFFBQUwsQ0FBY0MsSUFBN0MsQ0FBZjtBQUNELEtBRkQsTUFFTyxJQUFJLEtBQUtELFFBQUwsQ0FBY0MsSUFBZCxHQUFxQixDQUF6QixFQUE0QjtBQUNqQyxZQUFNTixHQUFHLEdBQUcsS0FBS0ssUUFBTCxDQUFjSyxNQUFkLEdBQXVCQyxJQUF2QixHQUE4QkMsS0FBMUM7O0FBQ0FMLHdCQUFVQyxJQUFWLENBQWUsS0FBS0MsUUFBTCxDQUFjLGFBQWQsRUFBNkJULEdBQTdCLENBQWY7QUFDRDtBQUNGOztBQUVPYSxFQUFBQSxjQUFjLENBQUNDLElBQUQsRUFBYTtBQUNqQyxTQUFLVCxRQUFMLENBQWNVLEdBQWQsQ0FBa0JELElBQWxCOztBQUVBLFNBQUtWLGVBQUw7QUFDRDs7QUFFT1ksRUFBQUEsZ0JBQWdCLENBQUNGLElBQUQsRUFBYTtBQUNuQyxTQUFLVCxRQUFMLENBQWNZLE1BQWQsQ0FBcUJILElBQXJCOztBQUVBLFFBQUlBLElBQUksQ0FBQ0ksTUFBTCxLQUFnQixRQUFwQixFQUE4QjtBQUM1Qlgsd0JBQVVZLElBQVYsQ0FBZSxLQUFLVixRQUFMLENBQWMsTUFBZCxFQUFzQkssSUFBdEIsQ0FBZjtBQUNELEtBRkQsTUFFTztBQUNMUCx3QkFBVWEsT0FBVixDQUFrQixLQUFLWCxRQUFMLENBQWMsU0FBZCxFQUF5QkssSUFBekIsQ0FBbEI7QUFDRDs7QUFFRCxTQUFLVixlQUFMO0FBQ0Q7O0FBRURpQixFQUFBQSxPQUFPLENBQUNDLEdBQUQsRUFBcUI7QUFDMUJBLElBQUFBLEdBQUcsQ0FBQ0MsRUFBSixDQUFPLFNBQVAsRUFBbUJULElBQUQsSUFBVSxLQUFLRCxjQUFMLENBQW9CQyxJQUFwQixDQUE1QjtBQUNBUSxJQUFBQSxHQUFHLENBQUNDLEVBQUosQ0FBTyxXQUFQLEVBQXFCVCxJQUFELElBQVUsS0FBS0UsZ0JBQUwsQ0FBc0JGLElBQXRCLENBQTlCO0FBQ0Q7O0FBTURTLEVBQUFBLEVBQUUsQ0FBQ0MsS0FBRCxFQUF5QkMsTUFBekIsRUFBK0Q7QUFDL0QsU0FBS2hCLFFBQUwsQ0FBY2UsS0FBZCxJQUF1QkMsTUFBdkI7QUFDRDs7QUFqRHFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGFzaywgVGFza1NldCB9IGZyb20gJ0BqdWp1bGVnby9qaWxsLWNvcmUnO1xuXG5pbXBvcnQgeyB0cmFuc3BvcnQgfSBmcm9tICcuL2xvZ2dlcic7XG5cbi8vIFR5cGVzXG5leHBvcnQgdHlwZSBUYXNrTG9nZ2VyU3RhdGUgPSAnc3Bpbi1tdWx0aXBsZScgfCAnc3Bpbi1zaW1wbGUnIHwgJ2ZhaWwnIHwgJ3N1Y2NlZWQnO1xuXG4vLyBDbGFzc1xuZXhwb3J0IGNsYXNzIFRhc2tMb2dnZXIge1xuICAvLyBBdHRyaWJ1dGVzXG4gIHByaXZhdGUgcmVhZG9ubHkgX3J1bm5pbmcgPSBuZXcgU2V0PFRhc2s+KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2Zvcm1hdHMgPSB7XG4gICAgJ3NwaW4tbXVsdGlwbGUnOiAoY291bnQ6IG51bWJlcikgPT4gYEJ1aWxkaW5nICR7Y291bnR9IHdvcmtzcGFjZXMgLi4uYCxcbiAgICAnc3Bpbi1zaW1wbGUnOiAodHNrOiBUYXNrKSA9PiBgQnVpbGRpbmcgJHt0c2suY29udGV4dC53b3Jrc3BhY2U/Lm5hbWV9IC4uLmAsXG4gICAgJ2ZhaWwnOiAodHNrOiBUYXNrKSA9PiBgRmFpbGVkIHRvIGJ1aWxkICR7dHNrLmNvbnRleHQud29ya3NwYWNlPy5uYW1lfWAsXG4gICAgJ3N1Y2NlZWQnOiAodHNrOiBUYXNrKSA9PiBgJHt0c2suY29udGV4dC53b3Jrc3BhY2U/Lm5hbWV9IGJ1aWx0YCxcbiAgfTtcblxuICAvLyBNZXRob2RzXG4gIHByaXZhdGUgX3JlZnJlc2hTcGlubmVyKCkge1xuICAgIGlmICh0aGlzLl9ydW5uaW5nLnNpemUgPiAxKSB7XG4gICAgICB0cmFuc3BvcnQuc3Bpbih0aGlzLl9mb3JtYXRzWydzcGluLW11bHRpcGxlJ10odGhpcy5fcnVubmluZy5zaXplKSk7XG4gICAgfSBlbHNlIGlmICh0aGlzLl9ydW5uaW5nLnNpemUgPiAwKSB7XG4gICAgICBjb25zdCB0c2sgPSB0aGlzLl9ydW5uaW5nLnZhbHVlcygpLm5leHQoKS52YWx1ZTtcbiAgICAgIHRyYW5zcG9ydC5zcGluKHRoaXMuX2Zvcm1hdHNbJ3NwaW4tc2ltcGxlJ10odHNrKSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlU3RhcnRlZCh0YXNrOiBUYXNrKSB7XG4gICAgdGhpcy5fcnVubmluZy5hZGQodGFzayk7XG5cbiAgICB0aGlzLl9yZWZyZXNoU3Bpbm5lcigpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlQ29tcGxldGVkKHRhc2s6IFRhc2spIHtcbiAgICB0aGlzLl9ydW5uaW5nLmRlbGV0ZSh0YXNrKTtcblxuICAgIGlmICh0YXNrLnN0YXR1cyA9PT0gJ2ZhaWxlZCcpIHtcbiAgICAgIHRyYW5zcG9ydC5mYWlsKHRoaXMuX2Zvcm1hdHNbJ2ZhaWwnXSh0YXNrKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRyYW5zcG9ydC5zdWNjZWVkKHRoaXMuX2Zvcm1hdHNbJ3N1Y2NlZWQnXSh0YXNrKSk7XG4gICAgfVxuXG4gICAgdGhpcy5fcmVmcmVzaFNwaW5uZXIoKTtcbiAgfVxuXG4gIGNvbm5lY3Qoc2V0OiBUYXNrU2V0KTogdm9pZCB7XG4gICAgc2V0Lm9uKCdzdGFydGVkJywgKHRhc2spID0+IHRoaXMuX2hhbmRsZVN0YXJ0ZWQodGFzaykpO1xuICAgIHNldC5vbignY29tcGxldGVkJywgKHRhc2spID0+IHRoaXMuX2hhbmRsZUNvbXBsZXRlZCh0YXNrKSk7XG4gIH1cblxuICBvbihzdGF0ZTogJ3NwaW4tbXVsdGlwbGUnLCBmb3JtYXQ6IChjb3VudDogbnVtYmVyKSA9PiBzdHJpbmcpOiB2b2lkO1xuICBvbihzdGF0ZTogJ3NwaW4tc2ltcGxlJywgZm9ybWF0OiAodHNrOiBUYXNrKSA9PiBzdHJpbmcpOiB2b2lkO1xuICBvbihzdGF0ZTogJ2ZhaWwnLCBmb3JtYXQ6ICh0c2s6IFRhc2spID0+IHN0cmluZyk6IHZvaWQ7XG4gIG9uKHN0YXRlOiAnc3VjY2VlZCcsIGZvcm1hdDogKHRzazogVGFzaykgPT4gc3RyaW5nKTogdm9pZDtcbiAgb24oc3RhdGU6IFRhc2tMb2dnZXJTdGF0ZSwgZm9ybWF0OiAoYXJnOiBuZXZlcikgPT4gc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5fZm9ybWF0c1tzdGF0ZV0gPSBmb3JtYXQ7XG4gIH1cbn1cbiJdLCJmaWxlIjoidGFzay1sb2dnZXIuanMifQ==
@@ -0,0 +1,12 @@
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
+ }
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.WorkspaceCommand = void 0;
7
+
8
+ var _command = require("./command");
9
+
10
+ var _project = require("./project.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 WorkspaceCommand extends _project.ProjectCommand {
16
+ constructor(...args) {
17
+ super(...args);
18
+
19
+ _defineProperty(this, "_workspace", void 0);
20
+ }
21
+
22
+ // Methods
23
+ define(builder) {
24
+ return super.define(y => builder(y).option('workspace', {
25
+ alias: 'w',
26
+ type: 'string',
27
+ desc: 'Workspace to use'
28
+ }));
29
+ }
30
+
31
+ async run(args) {
32
+ await super.run(args); // Load workspace
33
+
34
+ this.spinner.start(`Loading "${args.workspace || '.'}" workspace`);
35
+ this._workspace = await (args.workspace ? this.project.workspace(args.workspace) : this.project.currentWorkspace());
36
+
37
+ if (!this._workspace) {
38
+ this.spinner.fail(`Workspace "${args.workspace || '.'}" not found`);
39
+ throw new _command.Exit(1);
40
+ }
41
+ } // Properties
42
+
43
+
44
+ get workspace() {
45
+ if (!this._workspace) {
46
+ throw new Error('Workspace not yet loaded !');
47
+ }
48
+
49
+ return this._workspace;
50
+ }
51
+
52
+ }
53
+
54
+ exports.WorkspaceCommand = WorkspaceCommand;
55
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndvcmtzcGFjZS5jb21tYW5kLnRzIl0sIm5hbWVzIjpbIldvcmtzcGFjZUNvbW1hbmQiLCJQcm9qZWN0Q29tbWFuZCIsImRlZmluZSIsImJ1aWxkZXIiLCJ5Iiwib3B0aW9uIiwiYWxpYXMiLCJ0eXBlIiwiZGVzYyIsInJ1biIsImFyZ3MiLCJzcGlubmVyIiwic3RhcnQiLCJ3b3Jrc3BhY2UiLCJfd29ya3NwYWNlIiwicHJvamVjdCIsImN1cnJlbnRXb3Jrc3BhY2UiLCJmYWlsIiwiRXhpdCIsIkVycm9yIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBRUE7O0FBQ0E7Ozs7QUFPQTtBQUNPLE1BQWVBLGdCQUFmLFNBQWlGQyx1QkFBakYsQ0FBK0c7QUFBQTtBQUFBOztBQUFBO0FBQUE7O0FBSXBIO0FBQ1VDLEVBQUFBLE1BQU0sQ0FBT0MsT0FBUCxFQUE4RDtBQUM1RSxXQUFPLE1BQU1ELE1BQU4sQ0FBYUUsQ0FBQyxJQUFJRCxPQUFPLENBQUNDLENBQUQsQ0FBUCxDQUN0QkMsTUFEc0IsQ0FDZixXQURlLEVBQ0Y7QUFDbkJDLE1BQUFBLEtBQUssRUFBRSxHQURZO0FBRW5CQyxNQUFBQSxJQUFJLEVBQUUsUUFGYTtBQUduQkMsTUFBQUEsSUFBSSxFQUFFO0FBSGEsS0FERSxDQUFsQixDQUFQO0FBT0Q7O0FBRWtCLFFBQUhDLEdBQUcsQ0FBQ0MsSUFBRCxFQUE2QztBQUM5RCxVQUFNLE1BQU1ELEdBQU4sQ0FBVUMsSUFBVixDQUFOLENBRDhELENBRzlEOztBQUNBLFNBQUtDLE9BQUwsQ0FBYUMsS0FBYixDQUFvQixZQUFXRixJQUFJLENBQUNHLFNBQUwsSUFBa0IsR0FBSSxhQUFyRDtBQUNBLFNBQUtDLFVBQUwsR0FBa0IsT0FBT0osSUFBSSxDQUFDRyxTQUFMLEdBQWlCLEtBQUtFLE9BQUwsQ0FBYUYsU0FBYixDQUF1QkgsSUFBSSxDQUFDRyxTQUE1QixDQUFqQixHQUEwRCxLQUFLRSxPQUFMLENBQWFDLGdCQUFiLEVBQWpFLENBQWxCOztBQUVBLFFBQUksQ0FBQyxLQUFLRixVQUFWLEVBQXNCO0FBQ3BCLFdBQUtILE9BQUwsQ0FBYU0sSUFBYixDQUFtQixjQUFhUCxJQUFJLENBQUNHLFNBQUwsSUFBa0IsR0FBSSxhQUF0RDtBQUNBLFlBQU0sSUFBSUssYUFBSixDQUFTLENBQVQsQ0FBTjtBQUNEO0FBQ0YsR0ExQm1ILENBNEJwSDs7O0FBQ2EsTUFBVEwsU0FBUyxHQUFjO0FBQ3pCLFFBQUksQ0FBQyxLQUFLQyxVQUFWLEVBQXNCO0FBQ3BCLFlBQU0sSUFBSUssS0FBSixDQUFVLDRCQUFWLENBQU47QUFDRDs7QUFFRCxXQUFPLEtBQUtMLFVBQVo7QUFDRDs7QUFuQ21IIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgV29ya3NwYWNlIH0gZnJvbSAnQGp1anVsZWdvL2ppbGwtY29yZSc7XG5cbmltcG9ydCB7IEFyZ3VtZW50cywgQnVpbGRlciwgRXhpdCB9IGZyb20gJy4vY29tbWFuZCc7XG5pbXBvcnQgeyBQcm9qZWN0QXJncywgUHJvamVjdENvbW1hbmQgfSBmcm9tICcuL3Byb2plY3QuY29tbWFuZCc7XG5cbi8vIFR5cGVzXG5leHBvcnQgaW50ZXJmYWNlIFdvcmtzcGFjZUFyZ3MgZXh0ZW5kcyBQcm9qZWN0QXJncyB7XG4gIHdvcmtzcGFjZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xufVxuXG4vLyBDb21tYW5kXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgV29ya3NwYWNlQ29tbWFuZDxBIGV4dGVuZHMgV29ya3NwYWNlQXJncyA9IFdvcmtzcGFjZUFyZ3M+IGV4dGVuZHMgUHJvamVjdENvbW1hbmQ8V29ya3NwYWNlQXJncz4ge1xuICAvLyBBdHRyaWJ1dGVzXG4gIHByaXZhdGUgX3dvcmtzcGFjZT86IFdvcmtzcGFjZSB8IG51bGw7XG5cbiAgLy8gTWV0aG9kc1xuICBwcm90ZWN0ZWQgZGVmaW5lPFQsIFU+KGJ1aWxkZXI6IEJ1aWxkZXI8VCwgVT4pOiBCdWlsZGVyPFQsIFUgJiBXb3Jrc3BhY2VBcmdzPiB7XG4gICAgcmV0dXJuIHN1cGVyLmRlZmluZSh5ID0+IGJ1aWxkZXIoeSlcbiAgICAgIC5vcHRpb24oJ3dvcmtzcGFjZScsIHtcbiAgICAgICAgYWxpYXM6ICd3JyxcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIGRlc2M6ICdXb3Jrc3BhY2UgdG8gdXNlJ1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIHJ1bihhcmdzOiBBcmd1bWVudHM8QT4pOiBQcm9taXNlPG51bWJlciB8IHZvaWQ+IHtcbiAgICBhd2FpdCBzdXBlci5ydW4oYXJncyk7XG5cbiAgICAvLyBMb2FkIHdvcmtzcGFjZVxuICAgIHRoaXMuc3Bpbm5lci5zdGFydChgTG9hZGluZyBcIiR7YXJncy53b3Jrc3BhY2UgfHwgJy4nfVwiIHdvcmtzcGFjZWApO1xuICAgIHRoaXMuX3dvcmtzcGFjZSA9IGF3YWl0IChhcmdzLndvcmtzcGFjZSA/IHRoaXMucHJvamVjdC53b3Jrc3BhY2UoYXJncy53b3Jrc3BhY2UpIDogdGhpcy5wcm9qZWN0LmN1cnJlbnRXb3Jrc3BhY2UoKSk7XG5cbiAgICBpZiAoIXRoaXMuX3dvcmtzcGFjZSkge1xuICAgICAgdGhpcy5zcGlubmVyLmZhaWwoYFdvcmtzcGFjZSBcIiR7YXJncy53b3Jrc3BhY2UgfHwgJy4nfVwiIG5vdCBmb3VuZGApO1xuICAgICAgdGhyb3cgbmV3IEV4aXQoMSk7XG4gICAgfVxuICB9XG5cbiAgLy8gUHJvcGVydGllc1xuICBnZXQgd29ya3NwYWNlKCk6IFdvcmtzcGFjZSB7XG4gICAgaWYgKCF0aGlzLl93b3Jrc3BhY2UpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignV29ya3NwYWNlIG5vdCB5ZXQgbG9hZGVkICEnKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5fd29ya3NwYWNlO1xuICB9XG59Il0sImZpbGUiOiJ3b3Jrc3BhY2UuY29tbWFuZC5qcyJ9
package/package.json CHANGED
@@ -1,14 +1,18 @@
1
1
  {
2
2
  "name": "@jujulego/jill",
3
- "version": "1.1.17",
3
+ "version": "1.1.18",
4
4
  "license": "MIT",
5
- "bin": "./bin/jill.js",
6
- "main": "./dist/main.js",
7
5
  "repository": {
8
6
  "type": "git",
9
7
  "url": "https://github.com/Jujulego/jill",
10
8
  "directory": "packages/cli"
11
9
  },
10
+ "bin": "./bin/jill.js",
11
+ "main": "./dist/main.js",
12
+ "files": [
13
+ "bin",
14
+ "dist"
15
+ ],
12
16
  "scripts": {
13
17
  "lint": "eslint {src,tests}/**/*.*",
14
18
  "clean": "gulp clean",
@@ -27,6 +31,7 @@
27
31
  "chalk": "^4.1.1",
28
32
  "graphql": "^15.7.2",
29
33
  "graphql-request": "^3.6.1",
34
+ "graphql-tag": "^2.12.6",
30
35
  "graphql-ws": "^5.5.5",
31
36
  "ora": "^5.4.1",
32
37
  "slugify": "^1.6.0",
@@ -36,35 +41,33 @@
36
41
  "yargs": "^17.0.1"
37
42
  },
38
43
  "devDependencies": {
39
- "@babel/core": "7.16.0",
40
- "@babel/plugin-proposal-class-properties": "7.16.0",
41
- "@babel/preset-env": "7.16.4",
42
- "@babel/preset-typescript": "7.16.0",
43
- "@babel/runtime": "7.16.3",
44
+ "@babel/core": "7.16.5",
45
+ "@babel/plugin-proposal-class-properties": "7.16.5",
46
+ "@babel/preset-env": "7.16.5",
47
+ "@babel/preset-typescript": "7.16.5",
48
+ "@babel/runtime": "7.16.5",
44
49
  "@types/gulp": "4.0.9",
45
50
  "@types/gulp-babel": "6.1.30",
46
51
  "@types/gulp-sourcemaps": "0.0.35",
47
52
  "@types/jest": "27.0.3",
48
- "@types/node": "14.18.0",
53
+ "@types/node": "14.18.1",
49
54
  "@types/ws": "8.2.1",
50
55
  "@types/yargs": "17.0.7",
51
- "@typescript-eslint/eslint-plugin": "5.6.0",
52
- "@typescript-eslint/parser": "5.6.0",
53
- "babel-jest": "27.4.2",
54
- "babel-plugin-macros": "3.1.0",
56
+ "@typescript-eslint/eslint-plugin": "5.8.0",
57
+ "@typescript-eslint/parser": "5.8.0",
55
58
  "del": "6.0.0",
56
59
  "eslint": "7.32.0",
57
60
  "eslint-plugin-jest": "25.3.0",
58
61
  "eslint-plugin-workspaces": "0.7.0",
59
- "graphql.macro": "1.4.2",
60
62
  "gulp": "4.0.2",
61
63
  "gulp-babel": "8.0.0",
62
64
  "gulp-cli": "2.3.0",
63
65
  "gulp-sourcemaps": "3.0.0",
64
66
  "gulp-typescript": "6.0.0-alpha.1",
65
- "jest": "27.4.3",
67
+ "jest": "27.4.5",
66
68
  "msw": "0.36.3",
69
+ "ts-jest": "27.1.1",
67
70
  "ts-node": "10.4.0",
68
- "typescript": "4.5.2"
71
+ "typescript": "4.5.4"
69
72
  }
70
73
  }
@@ -1,12 +0,0 @@
1
- import { WorkspaceDepsMode } from '@jujulego/jill-core';
2
- import { CommandHandler } from '../wrapper';
3
- export interface EachArgs {
4
- script: string;
5
- 'deps-mode': WorkspaceDepsMode;
6
- '--': (string | number)[] | undefined;
7
- private: boolean | undefined;
8
- affected: string | undefined;
9
- 'affected-rev-fallback': string;
10
- 'affected-rev-sort': string | undefined;
11
- }
12
- export declare const eachCommand: CommandHandler<EachArgs>;
@@ -1,75 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.eachCommand = void 0;
7
-
8
- var _jillCore = require("@jujulego/jill-core");
9
-
10
- var _filters = require("../filters");
11
-
12
- var _logger = require("../logger");
13
-
14
- var _taskLogger = require("../task-logger");
15
-
16
- var _pipeline = require("../pipeline");
17
-
18
- // Handler
19
- const eachCommand = async (prj, argv) => {
20
- _logger.logger.spin('Loading project'); // Setup pipeline
21
-
22
-
23
- const pipeline = new _pipeline.Pipeline();
24
- pipeline.add(_filters.Filter.scripts([argv.script]));
25
-
26
- if (argv.private !== undefined) {
27
- pipeline.add(_filters.Filter.privateWorkspace(argv.private));
28
- }
29
-
30
- if (argv.affected !== undefined) {
31
- pipeline.add(new _filters.AffectedFilter(argv.affected, argv['affected-rev-fallback'], argv['affected-rev-sort']));
32
- } // Filter
33
-
34
-
35
- const workspaces = [];
36
-
37
- for await (const wks of pipeline.filter(prj.workspaces())) {
38
- workspaces.push(wks);
39
- }
40
-
41
- _logger.logger.stop();
42
-
43
- if (workspaces.length === 0) {
44
- _logger.logger.fail('No workspace found !');
45
-
46
- return 1;
47
- }
48
-
49
- _logger.logger.verbose(`Will run ${argv.script} in ${workspaces.map(wks => wks.name).join(', ')}`); // Run tasks
50
-
51
-
52
- const set = new _jillCore.TaskSet();
53
- const tasks = [];
54
-
55
- for (const wks of workspaces) {
56
- const task = await wks.run(argv.script, argv['--']?.map(arg => arg.toString()), {
57
- buildDeps: argv['deps-mode']
58
- });
59
- tasks.push(task);
60
- set.add(task);
61
- }
62
-
63
- const tlogger = new _taskLogger.TaskLogger();
64
- tlogger.on('spin-multiple', count => `Working in ${count} packages ...`);
65
- tlogger.on('spin-simple', tsk => tasks.includes(tsk) ? `Running ${argv.script} in ${tsk.context.workspace?.name} ...` : `Building ${tsk.context.workspace?.name} ...`);
66
- tlogger.on('fail', tsk => tasks.includes(tsk) ? `${tsk.context.workspace?.name} ${argv.script} failed` : `Failed to build ${tsk.context.workspace?.name}`);
67
- tlogger.on('succeed', tsk => tasks.includes(tsk) ? `${tsk.context.workspace?.name} ${argv.script} done` : `${tsk.context.workspace?.name} built`);
68
- tlogger.connect(set);
69
- set.start();
70
- const [result] = await set.waitFor('finished');
71
- return result.failed === 0 ? 0 : 1;
72
- };
73
-
74
- exports.eachCommand = eachCommand;
75
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbW1hbmRzL2VhY2gudHMiXSwibmFtZXMiOlsiZWFjaENvbW1hbmQiLCJwcmoiLCJhcmd2IiwibG9nZ2VyIiwic3BpbiIsInBpcGVsaW5lIiwiUGlwZWxpbmUiLCJhZGQiLCJGaWx0ZXIiLCJzY3JpcHRzIiwic2NyaXB0IiwicHJpdmF0ZSIsInVuZGVmaW5lZCIsInByaXZhdGVXb3Jrc3BhY2UiLCJhZmZlY3RlZCIsIkFmZmVjdGVkRmlsdGVyIiwid29ya3NwYWNlcyIsIndrcyIsImZpbHRlciIsInB1c2giLCJzdG9wIiwibGVuZ3RoIiwiZmFpbCIsInZlcmJvc2UiLCJtYXAiLCJuYW1lIiwiam9pbiIsInNldCIsIlRhc2tTZXQiLCJ0YXNrcyIsInRhc2siLCJydW4iLCJhcmciLCJ0b1N0cmluZyIsImJ1aWxkRGVwcyIsInRsb2dnZXIiLCJUYXNrTG9nZ2VyIiwib24iLCJjb3VudCIsInRzayIsImluY2x1ZGVzIiwiY29udGV4dCIsIndvcmtzcGFjZSIsImNvbm5lY3QiLCJzdGFydCIsInJlc3VsdCIsIndhaXRGb3IiLCJmYWlsZWQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTs7QUFFQTs7QUFDQTs7QUFFQTs7QUFDQTs7QUFpQkE7QUFDTyxNQUFNQSxXQUFxQyxHQUFHLE9BQU9DLEdBQVAsRUFBWUMsSUFBWixLQUFxQjtBQUN4RUMsaUJBQU9DLElBQVAsQ0FBWSxpQkFBWixFQUR3RSxDQUd4RTs7O0FBQ0EsUUFBTUMsUUFBUSxHQUFHLElBQUlDLGtCQUFKLEVBQWpCO0FBQ0FELEVBQUFBLFFBQVEsQ0FBQ0UsR0FBVCxDQUFhQyxnQkFBT0MsT0FBUCxDQUFlLENBQUNQLElBQUksQ0FBQ1EsTUFBTixDQUFmLENBQWI7O0FBRUEsTUFBSVIsSUFBSSxDQUFDUyxPQUFMLEtBQWlCQyxTQUFyQixFQUFnQztBQUM5QlAsSUFBQUEsUUFBUSxDQUFDRSxHQUFULENBQWFDLGdCQUFPSyxnQkFBUCxDQUF3QlgsSUFBSSxDQUFDUyxPQUE3QixDQUFiO0FBQ0Q7O0FB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U0FBWixFQUF1QmpCLElBQUssUUFBM0k7QUFDQVUsRUFBQUEsT0FBTyxDQUFDUSxPQUFSLENBQWdCaEIsR0FBaEI7QUFFQUEsRUFBQUEsR0FBRyxDQUFDaUIsS0FBSjtBQUNBLFFBQU0sQ0FBQ0MsTUFBRCxJQUFXLE1BQU1sQixHQUFHLENBQUNtQixPQUFKLENBQVksVUFBWixDQUF2QjtBQUNBLFNBQU9ELE1BQU0sQ0FBQ0UsTUFBUCxLQUFrQixDQUFsQixHQUFzQixDQUF0QixHQUEwQixDQUFqQztBQUNELENBMURNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGFzaywgVGFza1NldCwgV29ya3NwYWNlLCBXb3Jrc3BhY2VEZXBzTW9kZSB9IGZyb20gJ0BqdWp1bGVnby9qaWxsLWNvcmUnO1xuXG5pbXBvcnQgeyBBZmZlY3RlZEZpbHRlciwgRmlsdGVyIH0gZnJvbSAnLi4vZmlsdGVycyc7XG5pbXBvcnQgeyBsb2dnZXIgfSBmcm9tICcuLi9sb2dnZXInO1xuaW1wb3J0IHsgQ29tbWFuZEhhbmRsZXIgfSBmcm9tICcuLi93cmFwcGVyJztcbmltcG9ydCB7IFRhc2tMb2dnZXIgfSBmcm9tICcuLi90YXNrLWxvZ2dlcic7XG5pbXBvcnQgeyBQaXBlbGluZSB9IGZyb20gJy4uL3BpcGVsaW5lJztcblxuLy8gVHlwZXNcbmV4cG9ydCBpbnRlcmZhY2UgRWFjaEFyZ3Mge1xuICBzY3JpcHQ6IHN0cmluZztcbiAgJ2RlcHMtbW9kZSc6IFdvcmtzcGFjZURlcHNNb2RlO1xuICAnLS0nOiAoc3RyaW5nIHwgbnVtYmVyKVtdIHwgdW5kZWZpbmVkO1xuXG4gIC8vIEZpbHRlcnNcbiAgcHJpdmF0ZTogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuICAvLyBBZmZlY3RlZFxuICBhZmZlY3RlZDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAnYWZmZWN0ZWQtcmV2LWZhbGxiYWNrJzogc3RyaW5nO1xuICAnYWZmZWN0ZWQtcmV2LXNvcnQnOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG59XG5cbi8vIEhhbmRsZXJcbmV4cG9ydCBjb25zdCBlYWNoQ29tbWFuZDogQ29tbWFuZEhhbmRsZXI8RWFjaEFyZ3M+ID0gYXN5bmMgKHByaiwgYXJndikgPT4ge1xuICBsb2dnZXIuc3BpbignTG9hZGluZyBwcm9qZWN0Jyk7XG5cbiAgLy8gU2V0dXAgcGlwZWxpbmVcbiAgY29uc3QgcGlwZWxpbmUgPSBuZXcgUGlwZWxpbmUoKTtcbiAgcGlwZWxpbmUuYWRkKEZpbHRlci5zY3JpcHRzKFthcmd2LnNjcmlwdF0pKTtcblxuICBpZiAoYXJndi5wcml2YXRlICE9PSB1bmRlZmluZWQpIHtcbiAgICBwaXBlbGluZS5hZGQoRmlsdGVyLnByaXZhdGVXb3Jrc3BhY2UoYXJndi5wcml2YXRlKSk7XG4gIH1cblxuICBpZiAoYXJndi5hZmZlY3RlZCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgcGlwZWxpbmUuYWRkKG5ldyBBZmZlY3RlZEZpbHRlcihcbiAgICAgIGFyZ3YuYWZmZWN0ZWQsXG4gICAgICBhcmd2WydhZmZlY3RlZC1yZXYtZmFsbGJhY2snXSxcbiAgICAgIGFyZ3ZbJ2FmZmVjdGVkLXJldi1zb3J0J11cbiAgICApKTtcbiAgfVxuXG4gIC8vIEZpbHRlclxuICBjb25zdCB3b3Jrc3BhY2VzOiBXb3Jrc3BhY2VbXSA9IFtdO1xuXG4gIGZvciBhd2FpdCAoY29uc3Qgd2tzIG9mIHBpcGVsaW5lLmZpbHRlcihwcmoud29ya3NwYWNlcygpKSkge1xuICAgIHdvcmtzcGFjZXMucHVzaCh3a3MpO1xuICB9XG5cbiAgbG9nZ2VyLnN0b3AoKTtcblxuICBpZiAod29ya3NwYWNlcy5sZW5ndGggPT09IDApIHtcbiAgICBsb2dnZXIuZmFpbCgnTm8gd29ya3NwYWNlIGZvdW5kICEnKTtcbiAgICByZXR1cm4gMTtcbiAgfVxuXG4gIGxvZ2dlci52ZXJib3NlKGBXaWxsIHJ1biAke2FyZ3Yuc2NyaXB0fSBpbiAke3dvcmtzcGFjZXMubWFwKHdrcyA9PiB3a3MubmFtZSkuam9pbignLCAnKX1gKTtcblxuICAvLyBSdW4gdGFza3NcbiAgY29uc3Qgc2V0ID0gbmV3IFRhc2tTZXQoKTtcbiAgY29uc3QgdGFza3M6IFRhc2tbXSA9IFtdO1xuXG4gIGZvciAoY29uc3Qgd2tzIG9mIHdvcmtzcGFjZXMpIHtcbiAgICBjb25zdCB0YXNrID0gYXdhaXQgd2tzLnJ1bihhcmd2LnNjcmlwdCwgYXJndlsnLS0nXT8ubWFwKGFyZyA9PiBhcmcudG9TdHJpbmcoKSksIHtcbiAgICAgIGJ1aWxkRGVwczogYXJndlsnZGVwcy1tb2RlJ11cbiAgICB9KTtcblxuICAgIHRhc2tzLnB1c2godGFzayk7XG4gICAgc2V0LmFkZCh0YXNrKTtcbiAgfVxuXG4gIGNvbnN0IHRsb2dnZXIgPSBuZXcgVGFza0xvZ2dlcigpO1xuICB0bG9nZ2VyLm9uKCdzcGluLW11bHRpcGxlJywgKGNvdW50KSA9PiBgV29ya2luZyBpbiAke2NvdW50fSBwYWNrYWdlcyAuLi5gKTtcbiAgdGxvZ2dlci5vbignc3Bpbi1zaW1wbGUnLCAodHNrKSA9PiB0YXNrcy5pbmNsdWRlcyh0c2spID8gYFJ1bm5pbmcgJHthcmd2LnNjcmlwdH0gaW4gJHt0c2suY29udGV4dC53b3Jrc3BhY2U/Lm5hbWV9IC4uLmAgOiBgQnVpbGRpbmcgJHt0c2suY29udGV4dC53b3Jrc3BhY2U/Lm5hbWV9IC4uLmApO1xuICB0bG9nZ2VyLm9uKCdmYWlsJywgKHRzaykgPT4gdGFza3MuaW5jbHVkZXModHNrKSA/IGAke3Rzay5jb250ZXh0LndvcmtzcGFjZT8ubmFtZX0gJHthcmd2LnNjcmlwdH0gZmFpbGVkYCA6IGBGYWlsZWQgdG8gYnVpbGQgJHt0c2suY29udGV4dC53b3Jrc3BhY2U/Lm5hbWV9YCk7XG4gIHRsb2dnZXIub24oJ3N1Y2NlZWQnLCAodHNrKSA9PiB0YXNrcy5pbmNsdWRlcyh0c2spID8gYCR7dHNrLmNvbnRleHQud29ya3NwYWNlPy5uYW1lfSAke2FyZ3Yuc2NyaXB0fSBkb25lYCA6IGAke3Rzay5jb250ZXh0LndvcmtzcGFjZT8ubmFtZX0gYnVpbHRgKTtcbiAgdGxvZ2dlci5jb25uZWN0KHNldCk7XG5cbiAgc2V0LnN0YXJ0KCk7XG4gIGNvbnN0IFtyZXN1bHRdID0gYXdhaXQgc2V0LndhaXRGb3IoJ2ZpbmlzaGVkJyk7XG4gIHJldHVybiByZXN1bHQuZmFpbGVkID09PSAwID8gMCA6IDE7XG59O1xuIl0sImZpbGUiOiJjb21tYW5kcy9lYWNoLmpzIn0=
@@ -1,5 +0,0 @@
1
- import { CommandHandler } from '../wrapper';
2
- export interface InfoArgs {
3
- workspace: string | undefined;
4
- }
5
- export declare const infoCommand: CommandHandler<InfoArgs>;