ÿØÿà JFIF ` ` ÿáfExif MM * i >ê 2 ê ê P ê ÿþ ?CREATOR: gd-jpeg v1.0 (usi
|
Server : Apache System : Linux gains.enterpriseappscloud.com 4.18.0-553.62.1.lve.el8.x86_64 #1 SMP Mon Jul 21 17:50:35 UTC 2025 x86_64 User : beyondlimi ( 2438) PHP Version : 7.4.33 Disable Function : allow_url_include, show_source, symlink, system, passthru, exec, popen, pclose, proc_open, proc_terminate,proc_get_status, proc_close, proc_nice, allow_url_fopen, shell-exec, shell_exec, fpassthru, base64_encodem, escapeshellcmd, escapeshellarg, crack_check,crack_closedict, crack_getlastmessage, crack_opendict, posix_kill, posix_mkfifo, posix_setpgid, posix_setsid, posix_setuid, dl, escap, phpinfo Directory : /home/beyondlimi/public_html/admin/assets/libs/apexcharts/src/utils/ |
Upload File : |
// Helpers to react to element resizes, regardless of what caused them
// TODO Currently this creates a new ResizeObserver every time we want to observe an element for resizes
// Ideally, we should be able to use a single observer for all elements
let ros = new WeakMap() // Map callbacks to ResizeObserver instances for easy removal
export function addResizeListener(el, fn) {
let called = false
if (el.nodeType !== Node.DOCUMENT_FRAGMENT_NODE) {
const elRect = el.getBoundingClientRect()
if (el.style.display === 'none' || elRect.width === 0) {
// if elRect.width=0, the chart is not rendered at all
// (it has either display none or hidden in a different tab)
// fixes https://github.com/apexcharts/apexcharts.js/issues/2825
// fixes https://github.com/apexcharts/apexcharts.js/issues/2991
// fixes https://github.com/apexcharts/apexcharts.js/issues/2992
called = true
}
}
let ro = new ResizeObserver((r) => {
// ROs fire immediately after being created,
// per spec: https://drafts.csswg.org/resize-observer/#ref-for-element%E2%91%A3
// we don't want that so we just discard the first run
if (called) {
fn.call(el, r)
}
called = true
})
if (el.nodeType === Node.DOCUMENT_FRAGMENT_NODE) {
// Document fragment, observe children instead (needed for Shadow DOM, see #1332)
Array.from(el.children).forEach((c) => ro.observe(c))
} else {
ro.observe(el)
}
ros.set(fn, ro)
}
export function removeResizeListener(el, fn) {
let ro = ros.get(fn)
if (ro) {
ro.disconnect()
ros.delete(fn)
}
}