1 | class BearerContext {
|
2 | private state: { [key: string]: any } = {}
|
3 | private subscribers: Array<any> = []
|
4 |
|
5 | private _setupId: string
|
6 |
|
7 | get setupId(): string {
|
8 | return this._setupId
|
9 | }
|
10 |
|
11 | set setupId(setupId) {
|
12 | this._setupId = setupId
|
13 | }
|
14 |
|
15 | subscribe = (component: any) => {
|
16 | this.subscribers.push(component)
|
17 | }
|
18 |
|
19 | unsubscribe = (component: any) => {
|
20 | this.subscribers.filter(subscriber => subscriber === component)
|
21 | }
|
22 |
|
23 | update = (field, value) => {
|
24 | this.state[field] = value
|
25 | this.subscribers.map(component => {
|
26 | component.bearerUpdateFromState(this.state)
|
27 | })
|
28 | }
|
29 | }
|
30 |
|
31 | export default new BearerContext()
|