PluginProbe
Extendify / 1.9.3
Extendify v1.9.3
3.2.0 3.1.6 3.1.5 3.1.4 3.1.3 3.1.2 3.1.1 3.1.0 3.0.6 3.0.5 3.0.4 trunk 0.1.0 0.10.0 0.10.1 0.10.2 0.11.0 0.11.1 0.2.0 0.3.0 0.3.1 0.4.0 0.5.0 0.6.0 0.7.0 All 126 releases
extendify / src / Library / pages / layout / Layout.js

Layout.js in Extendify 1.9.3, at src/Library/pages/layout/Layout.js

51 lines 2.0 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 import { useRef, useEffect } from '@wordpress/element'
2 import { __ } from '@wordpress/i18n'
3 import { GridView } from '@library/pages/GridView'
4 import { Sidebar } from '@library/pages/Sidebar'
5 import { useTemplatesStore } from '@library/state/Templates'
6 import HasSidebar from './HasSidebar'
7 import { Toolbar } from './Toolbar'
8
9 export const Layout = ({ setOpen }) => {
10 const gridContainer = useRef()
11 const searchParams = useTemplatesStore((state) => state.searchParams)
12
13 useEffect(() => {
14 if (!gridContainer.current) return
15 gridContainer.current.scrollTop = 0
16 }, [searchParams])
17
18 return (
19 <div className="relative mx-auto flex h-full max-w-screen-4xl flex-col items-center">
20 <div className="w-full flex-grow overflow-hidden">
21 <button
22 onClick={() =>
23 document
24 .getElementById('extendify-templates')
25 .querySelector('button')
26 .focus()
27 }
28 className="extendify-skip-to-sr-link sr-only focus:not-sr-only focus:text-blue-500">
29 {__('Skip to templates', 'extendify')}
30 </button>
31 <div className="relative mx-auto h-full sm:flex">
32 <HasSidebar>
33 <Sidebar />
34 <div className="relative z-30 flex h-full flex-col">
35 <Toolbar
36 className="hidden h-12 w-full flex-shrink-0 px-6 sm:block md:px-8"
37 hideLibrary={() => setOpen(false)}
38 />
39 <div
40 ref={gridContainer}
41 className="z-20 flex-grow overflow-y-auto px-6 md:px-8">
42 <GridView />
43 </div>
44 </div>
45 </HasSidebar>
46 </div>
47 </div>
48 </div>
49 )
50 }
51