Reviewed By: passy Differential Revision: D17863711 fbshipit-source-id: 259dc77826fb803ff1b88c88529d7f679d3b74d8
48 lines
1.2 KiB
TypeScript
48 lines
1.2 KiB
TypeScript
/**
|
|
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
*
|
|
* This source code is licensed under the MIT license found in the
|
|
* LICENSE file in the root directory of this source tree.
|
|
*
|
|
* @format
|
|
*/
|
|
|
|
import React, {useState} from 'react';
|
|
import {FlexColumn, Button, styled, Tab, Tabs, TabsContainer} from 'flipper';
|
|
import PluginDebugger from './PluginDebugger';
|
|
import PluginInstaller from './PluginInstaller';
|
|
|
|
const Container = styled(FlexColumn)({
|
|
padding: 15,
|
|
width: 700,
|
|
});
|
|
|
|
const Row = styled(FlexColumn)({
|
|
alignItems: 'flex-end',
|
|
});
|
|
|
|
type Tabs = 'Plugin Status' | 'Install Plugins';
|
|
|
|
export default function(props: {onHide: () => any}) {
|
|
const [tab, setTab] = useState<Tabs>('Plugin Status');
|
|
return (
|
|
<Container>
|
|
<TabsContainer>
|
|
<Tabs
|
|
active={tab}
|
|
onActive={setTab as (s: string | null | undefined) => void}>
|
|
<Tab label="Plugin Status" />
|
|
<Tab label="Install Plugins" />
|
|
</Tabs>
|
|
{tab === 'Plugin Status' && <PluginDebugger />}
|
|
{tab === 'Install Plugins' && <PluginInstaller />}
|
|
</TabsContainer>
|
|
<Row>
|
|
<Button compact padded onClick={props.onHide}>
|
|
Close
|
|
</Button>
|
|
</Row>
|
|
</Container>
|
|
);
|
|
}
|