diff --git a/packages/common/misc/browser-check.js b/packages/common/misc/browser-check.js index 1527c587b18b3eb6dd6046281c04699dd0343b7d..3981e39f119c8fe33fd566bd5939a649ad260679 100644 --- a/packages/common/misc/browser-check.js +++ b/packages/common/misc/browser-check.js @@ -82,6 +82,18 @@ Example usage: return !!window.AbortController && Request.prototype.hasOwnProperty('signal'); } + // check for safari 13.1+ and safari on iOS 13.4+ + // https://caniuse.com/resizeobserver + function supportsResizeObserver() { + try { + eval('new ResizeObserver(items => {})'); + } catch (e) { + return false; + } + + return true; + } + function isBrowserSupported() { if (!supportsEval()) { console.log('Eval support disabled, skipping browser feature detection.'); @@ -123,6 +135,11 @@ Example usage: return false; } + if (!supportsResizeObserver()) { + console.log('ResizeObserver not supported'); + return false; + } + return true; }