HEX
Server: Apache/2.4.41 (Ubuntu)
System: Linux wordpress-ubuntu-s-2vcpu-4gb-fra1-01 5.4.0-169-generic #187-Ubuntu SMP Thu Nov 23 14:52:28 UTC 2023 x86_64
User: root (0)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/delta/wp-content/plugins/wp-smushit/_src/react/bulk/media-library-scanner.js
import React, {useState} from "react";
import domReady from '@wordpress/dom-ready';
import ReactDOM from "react-dom";
import Button from "../common/button";
import FloatingNoticePlaceholder from "../common/floating-notice-placeholder";
import {showSuccessNotice} from "../utils/notices";
import AjaxMediaLibraryScannerModal from "./ajax-media-library-scanner-modal";
import BackgroundMediaLibraryScannerModal from "./background-media-library-scanner-modal";

const {__} = wp.i18n;

function MediaLibraryScanner({}) {
	const [modalOpen, setModalOpen] = useState(false);

	return <>
		<FloatingNoticePlaceholder id="wp-smush-media-library-scanner-notice"/>

		{modalOpen &&
			<BackgroundMediaLibraryScannerModal
				focusAfterClose="wp-smush-open-media-library-scanner"
				nonce={mediaLibraryScan.nonce}
				onScanCompleted={() => {
					showSuccessNotice(
						'wp-smush-media-library-scanner-notice',
						__('Scan completed successfully!', 'wp-smushit'),
						true
					);
					setModalOpen(false);
					window.location.reload();
				}}
				onClose={() => setModalOpen(false)}
			/>
		}

		<Button id="wp-smush-open-media-library-scanner" text={__('Re-Check Images', 'wp-smushit')}
				className="wp-smush-scan"
				icon="sui-icon-update"
				disabled={modalOpen}
				onClick={() => setModalOpen(true)}
		/>
	</>;
}

domReady(function () {
	const scannerContainer = document.getElementById('wp-smush-media-library-scanner');
	if (scannerContainer) {
		ReactDOM.render(
			<MediaLibraryScanner/>,
			scannerContainer
		);
	}
});