feat: add operator info page

feat: save/load operator info

feat: add formik switch component

feat: add input validation

fix: correct formik switch behaviour

fix: change infoCardEnabled to a radio input

style: move styles out of js

feat: add error feedback
This commit is contained in:
Luis Félix 2020-01-15 22:41:47 +00:00 committed by Josh Harvey
parent b9d2341cd1
commit 7b59e36cb4
10 changed files with 516 additions and 18 deletions

View file

@ -0,0 +1,58 @@
import React, { useState } from 'react'
import * as R from 'ramda'
import { makeStyles } from '@material-ui/core'
import Sidebar from 'src/components/Sidebar'
import Title from 'src/components/Title'
import logsStyles from '../Logs.styles'
import ContactInfo from './ContactInfo'
const localStyles = {
contentWrapper: {
marginLeft: 48,
paddingTop: 15
}
}
const styles = R.merge(logsStyles, localStyles)
const useStyles = makeStyles(styles)
const CONTACT_INFORMATION = 'Contact information'
const RECEIPT = 'Receipt'
const COIN_ATM_RADAR = 'Coin ATM Radar'
const TERMS_CONDITIONS = 'Terms & Conditions'
const pages = [CONTACT_INFORMATION, RECEIPT, COIN_ATM_RADAR, TERMS_CONDITIONS]
const OperatorInfo = () => {
const [selected, setSelected] = useState(CONTACT_INFORMATION)
const classes = useStyles()
const isSelected = it => selected === it
return (
<>
<div className={classes.titleWrapper}>
<div className={classes.titleAndButtonsContainer}>
<Title>Operator information</Title>
</div>
</div>
<div className={classes.wrapper}>
<Sidebar
data={pages}
isSelected={isSelected}
displayName={it => it}
onClick={it => setSelected(it)}
/>
<div className={classes.contentWrapper}>
{isSelected(CONTACT_INFORMATION) && <ContactInfo />}
</div>
</div>
</>
)
}
export default OperatorInfo