summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/jetpack/extensions/blocks/tiled-gallery/view.js')
-rw-r--r--plugins/jetpack/extensions/blocks/tiled-gallery/view.js64
1 files changed, 0 insertions, 64 deletions
diff --git a/plugins/jetpack/extensions/blocks/tiled-gallery/view.js b/plugins/jetpack/extensions/blocks/tiled-gallery/view.js
deleted file mode 100644
index 1f45b13d..00000000
--- a/plugins/jetpack/extensions/blocks/tiled-gallery/view.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * Internal dependencies
- */
-import './view.scss';
-import ResizeObserver from 'resize-observer-polyfill';
-import { handleRowResize } from './layout/mosaic/resize';
-
-/**
- * Handler for Gallery ResizeObserver
- *
- * @param {Array<ResizeObserverEntry>} galleries Resized galleries
- */
-function handleObservedResize( galleries ) {
- if ( handleObservedResize.pendingRaf ) {
- cancelAnimationFrame( handleObservedResize.pendingRaf );
- }
- handleObservedResize.pendingRaf = requestAnimationFrame( () => {
- handleObservedResize.pendingRaf = null;
- for ( const gallery of galleries ) {
- const { width: galleryWidth } = gallery.contentRect;
- // We can't use childNodes becuase post content may contain unexpected text nodes
- const rows = Array.from( gallery.target.querySelectorAll( '.tiled-gallery__row' ) );
- rows.forEach( row => handleRowResize( row, galleryWidth ) );
- }
- } );
-}
-
-/**
- * Get all the galleries on the document
- *
- * @return {Array} List of gallery nodes
- */
-function getGalleries() {
- return Array.from(
- document.querySelectorAll(
- '.wp-block-jetpack-tiled-gallery.is-style-rectangular > .tiled-gallery__gallery,' +
- '.wp-block-jetpack-tiled-gallery.is-style-columns > .tiled-gallery__gallery'
- )
- );
-}
-
-/**
- * Setup ResizeObserver to follow each gallery on the page
- */
-const observeGalleries = () => {
- const galleries = getGalleries();
-
- if ( galleries.length === 0 ) {
- return;
- }
-
- const observer = new ResizeObserver( handleObservedResize );
-
- galleries.forEach( gallery => observer.observe( gallery ) );
-};
-
-if ( typeof window !== 'undefined' && typeof document !== 'undefined' ) {
- // `DOMContentLoaded` may fire before the script has a chance to run
- if ( document.readyState === 'loading' ) {
- document.addEventListener( 'DOMContentLoaded', observeGalleries );
- } else {
- observeGalleries();
- }
-}