2021-07-05 03:19:04 +00:00
|
|
|
import { debounce } from '../_thirdparty/lodash/timers.js'
|
2018-04-01 00:42:52 +00:00
|
|
|
|
|
|
|
const DEBOUNCE_DELAY = 700
|
|
|
|
|
|
|
|
const listeners = new Set()
|
|
|
|
|
2019-11-24 03:11:15 +00:00
|
|
|
if (process.browser) {
|
|
|
|
window.__resizeListeners = listeners
|
2018-04-01 00:42:52 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
if (process.browser) {
|
|
|
|
window.addEventListener('resize', debounce(() => {
|
|
|
|
console.log('resize')
|
|
|
|
listeners.forEach(listener => listener())
|
|
|
|
}, DEBOUNCE_DELAY))
|
|
|
|
}
|
|
|
|
|
|
|
|
export function registerResizeListener (listener) {
|
|
|
|
listeners.add(listener)
|
|
|
|
}
|
|
|
|
|
|
|
|
export function unregisterResizeListener (listener) {
|
|
|
|
listeners.delete(listener)
|
|
|
|
}
|