£Á°èZ¨Ä…–K§‚«“ô4“ÒÙ´dîfUÙÃÅ WKbyʦ•ꎅȮFÒ¿ÊÎóCozá¬S@6{Í:›œêZÌ:Š•_%:¢¾¾~;‘Ã~芩ÊÇí`ÔÑ©ú뙵'5I¿fš×WO%ø9¾«¾DK|€ùÍD”Ýs]nHÕ¶ê×Ӽ㞪éUWŸÈË%DÒÕ¬ï‘]/Åcx ‰ï2ß]ä6G[]S£Ôϯrs{úëóµmÒï#UQxo·õÞCe]"±/aÙ&Eã4ú9Jé_ÞåëdãöKë)AÞ ¯¹ægƒÛowÐø^d™ý½ßB7áyMä9ÜÖUã !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! import { LabelControl } from './label'; import { useState, useRef, useEffect } from '@wordpress/element'; export const FilterControl = (props) =>{ const { prop, value, setAttributes } = props; const { name } = prop['c']; const [isFilterVisible, setFilterVisible] = useState(false); var values = !pagelayer_empty(value) ? value : [0,100,100,0,0,100,100]; if(pagelayer_is_string(values)){ values = values.split(','); } const filterRef = useRef(null); const filters = [['blur','10','0.1'],['brightness','200','1'],['contrast','200','1'],['grayscale','200','1'],['hue','360','1'],['opacity','100','1'],['saturate','200','1']]; useEffect(() => { const handleDocumentClick = (e) => { if( filterRef.current && !filterRef.current.contains(e.target) ){ setFilterVisible(false); } }; document.addEventListener('click', handleDocumentClick); return () => { document.removeEventListener('click', handleDocumentClick); }; }, []); // Convert the jQuery function to a React method const handleInputChange = (index,e) => { const newValue = parseFloat(e.target.value); let newValues = [...values]; newValues[index] = newValue; setAttributes({[name]: newValues}); }; return (