-
Notifications
You must be signed in to change notification settings - Fork 95
/
Copy pathextension.ts
52 lines (49 loc) · 1.97 KB
/
extension.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
import * as vscode from "vscode";
import { Coverage } from "./coverage-system/coverage";
import { Config } from "./extension/config";
import { Gutters } from "./extension/gutters";
import { StatusBarToggler } from "./extension/statusbartoggler";
export function activate(context: vscode.ExtensionContext) {
const outputChannel = vscode.window.createOutputChannel("coverage-gutters");
const configStore = new Config(context);
const statusBarToggler = new StatusBarToggler(configStore);
const coverage = new Coverage(configStore);
const gutters = new Gutters(
configStore,
coverage,
outputChannel,
statusBarToggler,
);
const previewCoverageReport = vscode.commands.registerCommand(
"coverage-gutters.previewCoverageReport",
gutters.previewCoverageReport.bind(gutters),
);
const display = vscode.commands.registerCommand(
"coverage-gutters.displayCoverage",
gutters.displayCoverageForActiveFile.bind(gutters),
);
const toggle = vscode.commands.registerCommand(
"coverage-gutters.toggleCoverage",
gutters.toggleCoverageForActiveFile.bind(gutters),
);
const watch = vscode.commands.registerCommand(
"coverage-gutters.watchCoverageAndVisibleEditors",
gutters.watchCoverageAndVisibleEditors.bind(gutters),
);
const removeWatch = vscode.commands.registerCommand(
"coverage-gutters.removeWatch",
gutters.removeWatch.bind(gutters),
);
const remove = vscode.commands.registerCommand(
"coverage-gutters.removeCoverage",
gutters.removeCoverageForActiveFile.bind(gutters),
);
context.subscriptions.push(previewCoverageReport);
context.subscriptions.push(remove);
context.subscriptions.push(display);
context.subscriptions.push(toggle);
context.subscriptions.push(watch);
context.subscriptions.push(removeWatch);
context.subscriptions.push(gutters);
context.subscriptions.push(outputChannel);
}