diff options
Diffstat (limited to 'src/shared/observe-dom.ts')
| -rw-r--r-- | src/shared/observe-dom.ts | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/shared/observe-dom.ts b/src/shared/observe-dom.ts index 6ba1db4..ee6a51f 100644 --- a/src/shared/observe-dom.ts +++ b/src/shared/observe-dom.ts @@ -1,6 +1,6 @@ type ObserveDOMCallback = () => boolean; -let callbacks: ObserveDOMCallback[] = []; +const callbacks: ObserveDOMCallback[] = []; /** * Starts a MutationObserver on the document that invokes each @@ -11,9 +11,8 @@ let callbacks: ObserveDOMCallback[] = []; const observer = new MutationObserver(() => { for (let i = 0; i < callbacks.length; i++) { const callback = callbacks[i]; - if (callback && callback()) { + if (callback()) callbacks.splice(i, 1); - } if (callbacks.length <= 0) { observer.disconnect(); @@ -36,6 +35,6 @@ observer.observe(document, { * * @param callback - Function that returns `true` when done. */ -export function observeDOM(callback: ObserveDOMCallback) { +export function observeDOM(callback: ObserveDOMCallback): void { callbacks.push(callback); }; |
