From ec2b924fdac0b609c2bda4e857113674965732af Mon Sep 17 00:00:00 2001 From: Elizabeth Hunt Date: Thu, 16 Nov 2023 14:56:56 -0700 Subject: godel init foo --- godel/js/observable.js | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 godel/js/observable.js (limited to 'godel/js/observable.js') diff --git a/godel/js/observable.js b/godel/js/observable.js new file mode 100644 index 0000000..1299fc6 --- /dev/null +++ b/godel/js/observable.js @@ -0,0 +1,14 @@ +class Observable { + constructor() { + this.observers = []; + } + subscribe(f) { + this.observers.push(f); + } + unsubscribe(f) { + this.observers = this.observers.filter((subscriber) => subscriber !== f); + } + notify(data) { + this.observers.forEach((observer) => observer(data)); + } +} -- cgit v1.2.3-70-g09d2