()
| 127 | function ensureObservers() { |
| 128 | if (typeof document === 'undefined') { |
| 129 | return |
| 130 | } |
| 131 | if (!observer) { |
| 132 | observer = new MutationObserver(() => notify()) |
| 133 | observer.observe(document.documentElement, { attributes: true, attributeFilter: ['class'] }) |
| 134 | } |
| 135 | if (!storageHandler) { |
| 136 | storageHandler = (e: StorageEvent) => { |
| 137 | if (e.key === 'theme') { |
| 138 | notify() |
| 139 | } |
| 140 | } |
| 141 | window.addEventListener('storage', storageHandler) |
no test coverage detected