diff --git a/desktop/plugins/public/databases/ButtonNavigation.tsx b/desktop/plugins/public/databases/ButtonNavigation.tsx index 5e7e52a05..fa662ff0a 100644 --- a/desktop/plugins/public/databases/ButtonNavigation.tsx +++ b/desktop/plugins/public/databases/ButtonNavigation.tsx @@ -7,8 +7,9 @@ * @format */ -import {Button, ButtonGroup, Glyph, colors} from 'flipper'; +import {Radio} from 'antd'; import React from 'react'; +import {LeftOutlined, RightOutlined} from '@ant-design/icons'; export default React.memo( (props: { @@ -22,30 +23,14 @@ export default React.memo( onForward: () => void; }) => { return ( - - - - + + + + + + + + ); }, ); diff --git a/desktop/plugins/public/databases/index.tsx b/desktop/plugins/public/databases/index.tsx index b905cd6ca..004de674b 100644 --- a/desktop/plugins/public/databases/index.tsx +++ b/desktop/plugins/public/databases/index.tsx @@ -48,7 +48,14 @@ import { Layout, useMemoize, } from 'flipper-plugin'; -import {Select} from 'antd'; +import {Select, Radio, RadioChangeEvent, Typography} from 'antd'; +import { + ConsoleSqlOutlined, + DatabaseOutlined, + HistoryOutlined, + SettingOutlined, + TableOutlined, +} from '@ant-design/icons'; const {Option} = Select; @@ -822,6 +829,13 @@ export function Component() { const instance = usePlugin(plugin); const state = useValue(instance.state); + const onViewModeChanged = useCallback( + (evt: RadioChangeEvent) => { + instance.updateViewMode({viewMode: evt.target.value ?? 'data'}); + }, + [instance], + ); + const onDataClicked = useCallback(() => { instance.updateViewMode({viewMode: 'data'}); }, [instance]); @@ -1090,39 +1104,28 @@ export function Component() { return ( - - - - - - - + + + + Data + + + + Structure + + + + SQL + + + + Table Info + + + + Query History + + {state.viewMode === 'data' || state.viewMode === 'structure' ||