Passed
Push — develop ( 6405a0...9011bf )
by Endre
03:30
created

src/Application/ApplicationAction.ts   A

Complexity

Total Complexity 2
Complexity/F 1

Size

Lines of Code 26
Function Count 2

Duplication

Duplicated Lines 0
Ratio 0 %

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
eloc 19
dl 0
loc 26
ccs 4
cts 4
cp 1
rs 10
c 0
b 0
f 0
wmc 2
mnd 0
bc 0
fnc 2
bpm 0
cpm 1
noi 0

2 Functions

Rating   Name   Duplication   Size   Complexity  
A ApplicationAction.openGithubWindow 0 3 1
A ApplicationAction.switchMenuState 0 3 1
1
import {IObserver} from '../Observer/Observer';
2
import {IAdapter} from './View/Application';
3
4
export default class ApplicationAction {
5
  menuOpenState: IObserver<boolean>;
6
7
  constructor(menuOpenState: IObserver<boolean>) {
8 3
    this.menuOpenState = menuOpenState;
9
  }
10
11
  get adapter(): IAdapter {
12 2
    return {
13
      onGithubClick: this.openGithubWindow.bind(this),
14
      onMenuClick: this.switchMenuState.bind(this)
15
    };
16
  }
17
18
  protected openGithubWindow(): void {
19 1
    window.open('https://github.com/enbock/Time-Tracker/', '_blank');
20
  }
21
22
  protected switchMenuState(): void {
23 1
    this.menuOpenState.value = !this.menuOpenState.value;
24
  }
25
}
26