| Server IP : 62.60.133.156 / Your IP : 216.73.217.51 Web Server : LiteSpeed System : Linux linux24.centraldnserver.com 4.18.0-553.141.2.lve.el8.x86_64 #1 SMP Wed Jul 8 16:10:02 UTC 2026 x86_64 User : mimradmin ( 1166) PHP Version : 7.4.33 Disable Function : show_source, system, shell_exec, passthru, exec, popen, proc_open MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /proc/thread-self/cwd/wp-content/plugins/really-simple-ssl/settings/src/utils/ |
Upload File : |
import { Component } from '@wordpress/element';
import PropTypes from 'prop-types';
class ErrorBoundary extends Component {
constructor(props) {
super(props);
this.state = { hasError: false, error: null, errorInfo: null };
this.resetError = this.resetError.bind(this);
}
static getDerivedStateFromError(error) {
return { hasError: true };
}
componentDidCatch(error, errorInfo) {
this.setState({ error, errorInfo });
// You can also log the error to an error reporting service
console.log('ErrorBoundary', error, errorInfo);
}
resetError() {
this.setState({ hasError: false, error: null, errorInfo: null });
}
render() {
if (this.state.hasError) {
return (
<div>
<h1>Something went wrong.</h1>
{/* You can render any custom fallback UI */}
<p>{this.props.fallback}</p>
<button onClick={this.resetError}>Try Again</button>
</div>
);
}
return this.props.children;
}
}
ErrorBoundary.propTypes = {
children: PropTypes.node,
fallback: PropTypes.node,
};
export default ErrorBoundary;