| Total Complexity | 3 |
| Total Lines | 26 |
| Duplicated Lines | 0 % |
| Coverage | 100% |
| Changes | 0 | ||
| 1 | import {IObserver} from '../Observer/Observer'; |
||
| 3 | |||
| 4 | export default class Action { |
||
| 5 | menuOpenState: IObserver<boolean>; |
||
| 6 | |||
| 7 | constructor(menuOpenState: IObserver<boolean>) { |
||
| 8 | 4 | this.menuOpenState = menuOpenState; |
|
| 9 | } |
||
| 10 | |||
| 11 | get adapter(): IAdapter { |
||
| 12 | 4 | return { |
|
| 13 | onGithubClick: this.openGithubWindow.bind(this), |
||
| 14 | onMenuClick: this.switchMenuState.bind(this), |
||
| 15 | onClose: this.closeMenu.bind(this) |
||
| 16 | }; |
||
| 17 | } |
||
| 18 | |||
| 19 | protected openGithubWindow(): void { |
||
| 20 | 1 | window.open('https://github.com/enbock/Time-Tracker/', '_blank'); |
|
| 21 | } |
||
| 22 | |||
| 23 | protected switchMenuState(): void { |
||
| 24 | 1 | this.menuOpenState.value = !this.menuOpenState.value; |
|
| 25 | } |
||
| 26 | |||
| 27 | protected closeMenu(): void { |
||
| 28 | 2 | this.menuOpenState.value = false; |
|
| 29 | } |
||
| 31 |