export const CustomModal = () => {
const [open, setOpen] = React.useState(false)
const [isVisible, setIsVisible] = useState(false)
{/* Other code content */}
useEffect(() => {
const handleMessage = (
request: Request,
sender: any,
sendResponse: any
) => {
if (request.action === "toggleModal") {
setIsVisible(!isVisible)
}
}
chrome.runtime.onMessage.addListener(handleMessage)
return () => chrome.runtime.onMessage.removeListener(handleMessage)
}, [isVisible])
if (!isVisible) return null
return (
<div>
{open && (
<div
ref={modalRef}
style={{
cursor: "grab",
position: "absolute",
top: "50%",
left: "50%",
transform: "translate(-50%, -50%)"
}}
onMouseDown={onMouseDown}>
{/* Other modal content */}
export const CustomModal = () => {
const [open, setOpen] = React.useState(false)
const [isVisible, setIsVisible] = useState(false)
{/* Other code content */}
useEffect(() => {
const handleMessage = (
request: Request,
sender: any,
sendResponse: any
) => {
if (request.action === "toggleModal") {
setIsVisible(!isVisible)
}
}
chrome.runtime.onMessage.addListener(handleMessage)
return () => chrome.runtime.onMessage.removeListener(handleMessage)
}, [isVisible])
if (!isVisible) return null
return (
<div>
{open && (
<div
ref={modalRef}
style={{
cursor: "grab",
position: "absolute",
top: "50%",
left: "50%",
transform: "translate(-50%, -50%)"
}}
onMouseDown={onMouseDown}>
{/* Other modal content */}