From 51961188199987d16c154771724ae37d57cad85b Mon Sep 17 00:00:00 2001 From: MathieuG-P Date: Sat, 23 Jul 2022 11:32:45 +0200 Subject: [PATCH] omg that was shitty code --- .../services/configuration.service.ts | 21 +++++++------------ 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/src/renderer/services/configuration.service.ts b/src/renderer/services/configuration.service.ts index 67406025..7d60bc88 100644 --- a/src/renderer/services/configuration.service.ts +++ b/src/renderer/services/configuration.service.ts @@ -4,16 +4,16 @@ import { DefaultConfigKey, defaultConfiguration } from "renderer/config/default- export class ConfigurationService { private static instance: ConfigurationService; - private subscribers: Map[]>; + private observers: Map>; private constructor(){ - this.subscribers = new Map[]>(); + this.observers = new Map>(); } private emitChange(key: string){ - if(this.subscribers.has(key)){ + if(this.observers.has(key)){ const val = this.get(key); - this.subscribers.get(key).forEach(sub => sub.next(val)); + this.observers.get(key).next(val); } } @@ -42,14 +42,9 @@ export class ConfigurationService { } public watch(key: DefaultConfigKey | string): BehaviorSubject{ - const newSub = new BehaviorSubject(this.get(key)); - if(!this.subscribers.has(key)){ this.subscribers.set(key, []); } - this.subscribers.get(key).push(newSub); - return newSub; + if(this.observers.has(key)){ return this.observers.get(key); } + this.observers.set(key, new BehaviorSubject(this.get(key))); + console.log(this.observers); + return this.observers.get(key); } - - public stopWatch(key: string, obs: BehaviorSubject){ - const subs = this.subscribers.get(key); - subs.splice(subs.indexOf(obs), 1); - }; } \ No newline at end of file