UNPKG

4.47 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC53YXRjaGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jb21tYW5kLndhdGNoZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSw2Q0FBMkQ7QUFHM0QscUNBQXdDO0FBQ3hDLHVCQUEwQjtBQUMxQiw2Q0FBK0M7QUFDL0MsaURBQThEO0FBQzlELCtDQUFnRTtBQUNoRSx1REFBK0M7QUFZL0MsaUJBQWlCLE9BQXVCO0lBQzdCLElBQUEscUJBQUssRUFBRSx1QkFBTSxFQUFFLDJCQUFRLENBQVk7SUFDMUMsSUFBTSxnQkFBZ0IsR0FBWSw4QkFBZ0IsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBRTdFLEVBQUUsQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUMzQixRQUFRLENBQUM7WUFDTCxJQUFJLEVBQUUsOEJBQVcsQ0FBQyxtQkFBbUI7U0FDeEMsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDO1lBQ3RCLEtBQUssRUFBRTtnQkFDSCxNQUFNLEVBQUUsQ0FBQyxFQUFDLElBQUksRUFBRSw4QkFBVyxDQUFDLG1CQUFtQixFQUFDLENBQUM7YUFDcEQ7U0FDSixDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsSUFBTSxVQUFVLEdBQUcsaUNBQWlCLENBQUMsZ0JBQWdCLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDaEUsSUFBTSxPQUFPLEdBQU0saUNBQWtCLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBRTNEOztPQUVHO0lBQ0gsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ3pCOztXQUVHO1FBQ0gsT0FBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsVUFBQSxNQUFNO1lBQzFCLFFBQVEsQ0FBQyxFQUFDLElBQUksRUFBRSw4QkFBVyxDQUFDLG9CQUFvQixFQUFFLElBQUksRUFBRSxFQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxNQUFNLFFBQUEsRUFBRSxNQUFNLFFBQUEsRUFBQyxFQUFDLENBQUMsQ0FBQztRQUN6RyxDQUFDLENBQUMsQ0FBQztRQUVILE1BQU0sQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQztZQUN0QixLQUFLLEVBQUU7Z0JBQ0gsVUFBVSxZQUFBO2dCQUNWLE9BQU8sU0FBQTtnQkFDUCxNQUFNLEVBQUUsQ0FBQyxFQUFDLElBQUksRUFBRSw4QkFBVyxDQUFDLG9CQUFvQixFQUFDLENBQUM7YUFDckQ7U0FDSixDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsTUFBTSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDO1FBQ3RCLEtBQUssRUFBRTtZQUNILFVBQVUsWUFBQTtZQUNWLE9BQU8sU0FBQTtZQUNQLE1BQU0sRUFBRSxFQUFFO1NBQ2I7S0FDSixDQUFDLENBQUM7QUFDUCxDQUFDO0FBRUQsdUNBQXNELEdBQVEsRUFBRSxLQUFvQixFQUFFLE1BQTZCLEVBQUUsUUFBMEI7SUFDM0ksTUFBTSxDQUFDLE9BQU8sQ0FBQztRQUNYLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNqRCxHQUFHLEtBQUE7UUFDSCxLQUFLLE9BQUE7UUFDTCxNQUFNLFFBQUE7UUFDTixRQUFRLFVBQUE7UUFDUixJQUFJLEVBQUUsMEJBQVksQ0FBQyxPQUFPO0tBQzdCLENBQUMsQ0FBQztBQUNQLENBQUM7O0FBVEQsZ0RBU0MifQ==
\No newline at end of file