UNPKG

@automattic/social-previews

Version:

A suite of components to generate previews for a post for both social and search engines.

26 lines 894 B
import { __ } from '@wordpress/i18n'; import { useCallback, useState } from 'react'; import { LANDSCAPE_MODE, PORTRAIT_MODE } from '../../constants'; const useImage = ({ mode: initialMode }) => { const [mode, setMode] = useState(initialMode); const [isLoadingImage, setLoadingImage] = useState(true); const onLoad = useCallback(({ target }) => { if (!mode) { const image = target; setMode(image.naturalWidth > image.naturalHeight ? LANDSCAPE_MODE : PORTRAIT_MODE); } setLoadingImage(false); }, [mode]); const onError = useCallback(() => setLoadingImage(false), []); return [ mode, isLoadingImage, { alt: __('Facebook Preview Thumbnail', 'social-previews'), onLoad, onError, }, ]; }; export default useImage; //# sourceMappingURL=use-image-hook.js.map