Uname: Linux premium294.web-hosting.com 4.18.0-553.45.1.lve.el8.x86_64 #1 SMP Wed Mar 26 12:08:09 UTC 2025 x86_64
Software: LiteSpeed
PHP version: 8.1.32 [ PHP INFO ] PHP os: Linux
Server Ip: 104.21.32.1
Your Ip: 216.73.216.209
User: mjbynoyq (1574) | Group: mjbynoyq (1570)
Safe Mode: OFF
Disable Function:
NONE

name : access.js
import { LabelControl } from './label';
import { useState, useRef, useEffect } from '@wordpress/element';
import { ColorPicker } from '@wordpress/components';

export const AccessControl = (props) => {
	const { children } = props;

	const [isAccessVisible, setIsAccessVisible] = useState(false);
	const accessRef = useRef(null);

	useEffect(() => {
		const handleDocumentClick = (e) => {

			// Access Modal Handler
			if (
				accessRef.current &&
				!accessRef.current.contains(e.target)
			) {
				setIsAccessVisible(false);
			}
		};

		document.addEventListener('click', handleDocumentClick);
		return () => {
			document.removeEventListener('click', handleDocumentClick);
		};
	}, []);
	
	const openCaret = isAccessVisible ? 'pli-caret-open': '';
	
	return (
		<div className="components-base-control pagelayer-base-control">
			<LabelControl {...props} />
			<div className="pagelayer-elp-access-div" ref={accessRef}>
				<span
					className="pagelayer-elp-access"
					onClick={() => setIsAccessVisible(!isAccessVisible)}
				>
					<i className={`pli pli-caret-right ${openCaret}`}></i>
				</span>
				{isAccessVisible &&
					<div className="pagelayer-elp-access-holder">
						{ children }
					</div>
				}
			</div>
		</div>
	)
}
© 2025 XylotrechusZ