materialuiupgraded
Version:
Material-UI's workspace package
79 lines (68 loc) • 2 kB
JavaScript
// @flow
import React from 'react';
import Button from '@material-ui/core/Button';
import Dialog from '@material-ui/core/Dialog';
import DialogTitle from '@material-ui/core/DialogTitle';
import DialogContent from '@material-ui/core/DialogContent';
import DialogContentText from '@material-ui/core/DialogContentText';
import DialogActions from '@material-ui/core/DialogActions';
import Typography from '@material-ui/core/Typography';
import { withStyles } from '@material-ui/core/styles';
import withRoot from '../withRoot';
const styles = (theme: Object) => ({
root: {
textAlign: 'center',
paddingTop: theme.spacing.unit * 20,
},
});
type ProvidedProps = {
classes: Object,
};
type Props = {
classes: Object,
};
type State = {
open: boolean,
};
class Index extends React.Component<ProvidedProps & Props, State> {
state = {
open: false,
};
handleClose = () => {
this.setState({
open: false,
});
};
handleClick = () => {
this.setState({
open: true,
});
};
render() {
return (
<div className={this.props.classes.root}>
<Dialog open={this.state.open} onClose={this.handleClose}>
<DialogTitle>Super Secret Password</DialogTitle>
<DialogContent>
<DialogContentText>1-2-3-4-5</DialogContentText>
</DialogContent>
<DialogActions>
<Button color="primary" onClick={this.handleClose}>
OK
</Button>
</DialogActions>
</Dialog>
<Typography variant="h4" gutterBottom>
Material-UI
</Typography>
<Typography variant="subtitle1" gutterBottom>
example project
</Typography>
<Button variant="contained" color="secondary" onClick={this.handleClick}>
Super Secret Password
</Button>
</div>
);
}
}
export default withRoot(withStyles(styles)(Index));