UNPKG

4.58 kBJavaScriptView Raw
1"use strict";
2var command_run_1 = require("./command.run");
3var Immutable = require("immutable");
4var Rx = require("rx");
5var watch_utils_1 = require("./watch.utils");
6var watch_resolve_1 = require("./watch.resolve");
7var watch_runner_1 = require("./watch.runner");
8var reporter_resolve_1 = require("./reporter.resolve");
9function execute(trigger) {
10 var input = trigger.input, config = trigger.config, reporter = trigger.reporter;
11 var topLevelWatchers = watch_utils_1.stripBlacklisted(Object.keys(input.watch));
12 if (!topLevelWatchers.length) {
13 reporter({
14 type: reporter_resolve_1.ReportTypes.NoWatchersAvailable
15 });
16 return Rx.Observable.just({
17 setup: {
18 errors: [{ type: reporter_resolve_1.ReportTypes.NoWatchersAvailable }]
19 }
20 });
21 }
22 var watchTasks = watch_resolve_1.resolveWatchTasks(topLevelWatchers, trigger);
23 var runners = watch_runner_1.createWatchRunners(watchTasks, trigger);
24 /**
25 * Never continue if any runners are invalid
26 */
27 if (runners.invalid.length) {
28 /**
29 * Now log the invalid runners
30 */
31 runners.invalid.forEach(function (runner) {
32 reporter({ type: reporter_resolve_1.ReportTypes.WatchTaskTasksErrors, data: { tasks: runner._tasks.all, runner: runner, config: config } });
33 });
34 return Rx.Observable.just({
35 setup: {
36 watchTasks: watchTasks,
37 runners: runners,
38 errors: [{ type: reporter_resolve_1.ReportTypes.WatchTaskTasksErrors }]
39 }
40 });
41 }
42 return Rx.Observable.just({
43 setup: {
44 watchTasks: watchTasks,
45 runners: runners,
46 errors: []
47 }
48 });
49}
50function handleIncomingWatchersCommand(cli, input, config, reporter) {
51 return execute({
52 shared: new Rx.BehaviorSubject(Immutable.Map({})),
53 cli: cli,
54 input: input,
55 config: config,
56 reporter: reporter,
57 type: command_run_1.TriggerTypes.command
58 });
59}
60Object.defineProperty(exports, "__esModule", { value: true });
61exports.default = handleIncomingWatchersCommand;
62//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC53YXRjaGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jb21tYW5kLndhdGNoZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSw0QkFBMkMsZUFBZSxDQUFDLENBQUE7QUFHM0QsSUFBTyxTQUFTLFdBQVcsV0FBVyxDQUFDLENBQUM7QUFDeEMsSUFBTyxFQUFFLFdBQVcsSUFBSSxDQUFDLENBQUM7QUFDMUIsNEJBQStCLGVBQWUsQ0FBQyxDQUFBO0FBQy9DLDhCQUE0QyxpQkFBaUIsQ0FBQyxDQUFBO0FBQzlELDZCQUErQyxnQkFBZ0IsQ0FBQyxDQUFBO0FBQ2hFLGlDQUEwQixvQkFBb0IsQ0FBQyxDQUFBO0FBWS9DLGlCQUFpQixPQUF1QjtJQUM3Qix5QkFBSyxFQUFFLHVCQUFNLEVBQUUsMkJBQVEsQ0FBWTtJQUMxQyxJQUFNLGdCQUFnQixHQUFZLDhCQUFnQixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFFN0UsRUFBRSxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQzNCLFFBQVEsQ0FBQztZQUNMLElBQUksRUFBRSw4QkFBVyxDQUFDLG1CQUFtQjtTQUN4QyxDQUFDLENBQUM7UUFDSCxNQUFNLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUM7WUFDdEIsS0FBSyxFQUFFO2dCQUNILE1BQU0sRUFBRSxDQUFDLEVBQUMsSUFBSSxFQUFFLDhCQUFXLENBQUMsbUJBQW1CLEVBQUMsQ0FBQzthQUNwRDtTQUNKLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxJQUFNLFVBQVUsR0FBRyxpQ0FBaUIsQ0FBQyxnQkFBZ0IsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNoRSxJQUFNLE9BQU8sR0FBTSxpQ0FBa0IsQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFFM0Q7O09BRUc7SUFDSCxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDekI7O1dBRUc7UUFDSCxPQUFPLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxVQUFBLE1BQU07WUFDMUIsUUFBUSxDQUFDLEVBQUMsSUFBSSxFQUFFLDhCQUFXLENBQUMsb0JBQW9CLEVBQUUsSUFBSSxFQUFFLEVBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLGNBQU0sRUFBRSxjQUFNLEVBQUMsRUFBQyxDQUFDLENBQUM7UUFDekcsQ0FBQyxDQUFDLENBQUM7UUFFSCxNQUFNLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUM7WUFDdEIsS0FBSyxFQUFFO2dCQUNILHNCQUFVO2dCQUNWLGdCQUFPO2dCQUNQLE1BQU0sRUFBRSxDQUFDLEVBQUMsSUFBSSxFQUFFLDhCQUFXLENBQUMsb0JBQW9CLEVBQUMsQ0FBQzthQUNyRDtTQUNKLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxNQUFNLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUM7UUFDdEIsS0FBSyxFQUFFO1lBQ0gsc0JBQVU7WUFDVixnQkFBTztZQUNQLE1BQU0sRUFBRSxFQUFFO1NBQ2I7S0FDSixDQUFDLENBQUM7QUFDUCxDQUFDO0FBRUQsdUNBQXNELEdBQVEsRUFBRSxLQUFvQixFQUFFLE1BQTZCLEVBQUUsUUFBMEI7SUFDM0ksTUFBTSxDQUFDLE9BQU8sQ0FBQztRQUNYLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNqRCxRQUFHO1FBQ0gsWUFBSztRQUNMLGNBQU07UUFDTixrQkFBUTtRQUNSLElBQUksRUFBRSwwQkFBWSxDQUFDLE9BQU87S0FDN0IsQ0FBQyxDQUFDO0FBQ1AsQ0FBQztBQVREOytDQVNDLENBQUEifQ==
\No newline at end of file