PluginProbe
Extendify / 0.5.0
Extendify v0.5.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.5.0, at src/pages/layout/Toolbar.js

38 lines 1.7 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 import { Button } from '@wordpress/components'
2 import { memo } from '@wordpress/element'
3 import { __ } from '@wordpress/i18n'
4 import { Icon, close } from '@wordpress/icons'
5 import { TypeSelect } from '@extendify/components/TypeSelect'
6 import { user } from '@extendify/components/icons/'
7 import { SettingsModal } from '@extendify/components/modals/settings/SettingsModal'
8 import { useGlobalStore } from '@extendify/state/GlobalState'
9 import { useUserStore } from '@extendify/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 h-full items-center justify-between">
19 <div className="flex-1"></div>
20 <TypeSelect className="flex flex-1 items-center justify-center" />
21 <div className="flex flex-1 items-center justify-end">
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