|
|
@ -23,15 +23,14 @@ function loadPolyfills() {
|
|
|
|
);
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
|
|
// Latest version of Firefox and Safari do not have IntersectionObserver.
|
|
|
|
// Latest version of Firefox and Safari do not have IntersectionObserver.
|
|
|
|
// Edge does not have requestIdleCallback and object-fit CSS property.
|
|
|
|
// Edge does not have requestIdleCallback.
|
|
|
|
// This avoids shipping them all the polyfills.
|
|
|
|
// This avoids shipping them all the polyfills.
|
|
|
|
const needsExtraPolyfills = !(
|
|
|
|
const needsExtraPolyfills = !(
|
|
|
|
window.AbortController &&
|
|
|
|
window.AbortController &&
|
|
|
|
window.IntersectionObserver &&
|
|
|
|
window.IntersectionObserver &&
|
|
|
|
window.IntersectionObserverEntry &&
|
|
|
|
window.IntersectionObserverEntry &&
|
|
|
|
'isIntersecting' in IntersectionObserverEntry.prototype &&
|
|
|
|
'isIntersecting' in IntersectionObserverEntry.prototype &&
|
|
|
|
window.requestIdleCallback &&
|
|
|
|
window.requestIdleCallback
|
|
|
|
'object-fit' in (new Image()).style
|
|
|
|
|
|
|
|
);
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
|
|
return Promise.all([
|
|
|
|
return Promise.all([
|
|
|
|