import { Button } from '@wordpress/components' import { useRef, useEffect, useState, useCallback } from '@wordpress/element' import { __ } from '@wordpress/i18n' import { useWhenIdle } from '@extendify/hooks/helpers' import { GridView } from '@extendify/pages/GridView' import { Sidebar } from '@extendify/pages/Sidebar' import { useTemplatesStore } from '@extendify/state/Templates' import HasSidebar from './HasSidebar' import { Toolbar } from './Toolbar' export const Layout = ({ setOpen }) => { const gridContainer = useRef() const searchParams = useTemplatesStore((state) => state.searchParams) const [showIdleScreen, setShowIdleScreen] = useState(false) const resetTemplates = useTemplatesStore((state) => state.resetTemplates) const idle = useWhenIdle(300_000) // 5 minutes const removeIdleScreen = useCallback(() => { setShowIdleScreen(false) resetTemplates() }, [resetTemplates]) useEffect(() => { if (idle) setShowIdleScreen(true) }, [idle]) useEffect(() => { setShowIdleScreen(false) }, [searchParams]) useEffect(() => { if (!gridContainer.current) return gridContainer.current.scrollTop = 0 }, [searchParams]) return (
setOpen(false)} />
{showIdleScreen ? ( ) : ( )}
) } const IdleScreen = ({ callback }) => (

{__("We've added new stuff while you were away.", 'extendify')}

)