PluginProbe
Extendify / 0.4.0
Extendify v0.4.0
3.2.1 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 All 127 releases
extendify / src / pages / layout / Toolbar.js

Toolbar.js in Extendify 0.4.0, at src/pages/layout/Toolbar.js

38 lines 1.6 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 import { __ } from '@wordpress/i18n'
2 import { Icon, close } from '@wordpress/icons'
3 import { memo } from '@wordpress/element'
4 import { Button } from '@wordpress/components'
5 import { TypeSelect } from '../../components/TypeSelect'
6 import { useGlobalStore } from '../../state/GlobalState'
7 import { user } from '../../components/icons/'
8 import SettingsModal from '../../components/modals/SettingsModal'
9 import { useUserStore } from '../../state/User'
10
11 export const Toolbar = memo(function Toolbar({ className }) {
12 const setOpen = useGlobalStore((state) => state.setOpen)
13 const pushModal = useGlobalStore((state) => state.pushModal)
14 const loggedIn = useUserStore((state) => state.apiKey.length)
15
16 return (
17 <div className={className}>
18 <div className="flex justify-between items-center h-full">
19 <div className="flex-1"></div>
20 <TypeSelect className="flex-1 flex items-center justify-center" />
21 <div className="flex-1 flex justify-end items-center">
22 <Button
23 onClick={() => pushModal(<SettingsModal />)}
24 icon={<Icon icon={user} size={24} />}
25 label={__('Login and settings area', 'extendify')}>
26 {loggedIn ? '' : __('Sign in', 'extendify')}
27 </Button>
28 <Button
29 onClick={() => setOpen(false)}
30 icon={<Icon icon={close} size={24} />}
31 label={__('Close library', 'extendify')}
32 />
33 </div>
34 </div>
35 </div>
36 )
37 })
38