UNPKG

materialuiupgraded

Version:

Material-UI's workspace package

66 lines (57 loc) 1.78 kB
import React from 'react'; import PropTypes from 'prop-types'; import { withStyles } from '@material-ui/core/styles'; import MobileStepper from '@material-ui/core/MobileStepper'; import Button from '@material-ui/core/Button'; import KeyboardArrowLeft from '@material-ui/icons/KeyboardArrowLeft'; import KeyboardArrowRight from '@material-ui/icons/KeyboardArrowRight'; const styles = { root: { maxWidth: 400, flexGrow: 1, }, }; class ProgressMobileStepper extends React.Component { state = { activeStep: 0, }; handleNext = () => { this.setState(state => ({ activeStep: state.activeStep + 1, })); }; handleBack = () => { this.setState(state => ({ activeStep: state.activeStep - 1, })); }; render() { const { classes, theme } = this.props; return ( <MobileStepper variant="progress" steps={6} position="static" activeStep={this.state.activeStep} className={classes.root} nextButton={ <Button size="small" onClick={this.handleNext} disabled={this.state.activeStep === 5}> Next {theme.direction === 'rtl' ? <KeyboardArrowLeft /> : <KeyboardArrowRight />} </Button> } backButton={ <Button size="small" onClick={this.handleBack} disabled={this.state.activeStep === 0}> {theme.direction === 'rtl' ? <KeyboardArrowRight /> : <KeyboardArrowLeft />} Back </Button> } /> ); } } ProgressMobileStepper.propTypes = { classes: PropTypes.object.isRequired, theme: PropTypes.object.isRequired, }; export default withStyles(styles, { withTheme: true })(ProgressMobileStepper);