HEX
Server: Apache
System: Linux efa57bbe-abb1-400d-2985-3b056fbc2701.secureserver.net 6.1.147-1.el9.elrepo.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Jul 24 12:33:32 EDT 2025 x86_64
User: root (0)
PHP: 8.0.30.4
Disabled: NONE
Upload Files
File: //var/www/wp-content/mu-plugins/vendor/wpex/expert-banner/src/settings.js
/**
 * WordPress dependencies
 */
import { registerPlugin } from '@wordpress/plugins';
import { check } from '@wordpress/icons';
import { MenuItem } from '@wordpress/components';
import { PluginMoreMenuItem } from '@wordpress/edit-post';
import { __ } from '@wordpress/i18n';
import { useEntityProp } from '@wordpress/core-data';
import { useDispatch } from '@wordpress/data';

export const HIRE_EXPERT_SETTINGS_ID = 'wpex-expert-banner-hidden';

export function HireExpertSettings() {
    const { saveEditedEntityRecord } = useDispatch( 'core' );

    const [ hireExpertHidden, setHireExpertHidden ] = useEntityProp( 'root', 'site', wpexExpertBanner.optionHidden );

    const handleHireExpertClick = () => {
        setHireExpertHidden( !hireExpertHidden );
        saveEditedEntityRecord( 'root', 'site' );
    };

    return (
        <PluginMoreMenuItem
            as={ MenuItem }
            id={ HIRE_EXPERT_SETTINGS_ID }
            icon={ !!hireExpertHidden ? null : check }
            onClick={ handleHireExpertClick }
        >
            { __( 'Hire an expert', 'gd-system-plugin' ) }
        </PluginMoreMenuItem>
    );
};

registerPlugin( 'wpex-eb-settings-plugin', {
    icon: '',
    render: HireExpertSettings,
} );