@wordpress/block-library
Version:
Block library for the WordPress editor.
26 lines (23 loc) • 766 B
JavaScript
/**
* WordPress dependencies
*/
import { useState, useEffect } from '@wordpress/element';
export default function useClientWidth(ref, dependencies) {
const [clientWidth, setClientWidth] = useState();
function calculateClientWidth() {
var _ref$current;
setClientWidth((_ref$current = ref.current) === null || _ref$current === void 0 ? void 0 : _ref$current.clientWidth);
}
useEffect(calculateClientWidth, dependencies);
useEffect(() => {
const {
defaultView
} = ref.current.ownerDocument;
defaultView.addEventListener('resize', calculateClientWidth);
return () => {
defaultView.removeEventListener('resize', calculateClientWidth);
};
}, []);
return clientWidth;
}
//# sourceMappingURL=use-client-width.js.map