HEX
Server: LiteSpeed
System: Linux ragasnapis.serveriai.lt 5.14.0-687.26.1.el9_8.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Jul 14 16:32:02 EDT 2026 x86_64
User: odxqitalt (1170)
PHP: 8.3.19
Disabled: link, symlink, exec, passthru, proc_close, proc_get_status, proc_open, shell_exec, system, popen, pclose, dl, show_source, highlight_file, pcntl_exec, ini_restore, ini_alter, chgrp
Upload Files
File: /home/odxqitalt/domains/oirdata.lt/private_html/wp-content/plugins/extendify/src/Agent/lib/media.js
import { applyFilters } from '@wordpress/hooks';

export const getMediaDetails = (media) => {
	if (!media) return {};

	const defaultSize = applyFilters(
		'editor.PostFeaturedImage.imageSize',
		'large',
		media.id,
	);
	if (defaultSize in (media?.media_details?.sizes ?? {})) {
		return {
			mediaWidth: media.media_details.sizes[defaultSize].width,
			mediaHeight: media.media_details.sizes[defaultSize].height,
			mediaSourceUrl: media.media_details.sizes[defaultSize].source_url,
		};
	}

	const mediumSize = applyFilters(
		'editor.PostFeaturedImage.imageSize',
		'medium',
		media.id,
	);
	if (mediumSize in (media?.media_details?.sizes ?? {})) {
		return {
			mediaWidth: media.media_details.sizes[mediumSize].width,
			mediaHeight: media.media_details.sizes[mediumSize].height,
			mediaSourceUrl: media.media_details.sizes[mediumSize].source_url,
		};
	}

	// Use fallbackSize when defaultSize is not available.
	const fallbackSize = applyFilters(
		'editor.PostFeaturedImage.imageSize',
		'thumbnail',
		media.id,
	);
	if (fallbackSize in (media?.media_details?.sizes ?? {})) {
		return {
			mediaWidth: media.media_details.sizes[fallbackSize].width,
			mediaHeight: media.media_details.sizes[fallbackSize].height,
			mediaSourceUrl: media.media_details.sizes[fallbackSize].source_url,
		};
	}

	// Use full image size when fallbackSize and defaultSize are not available.
	return {
		mediaWidth: media.media_details.width,
		mediaHeight: media.media_details.height,
		mediaSourceUrl: media.source_url,
	};
};