diff --git a/new-lamassu-admin/src/pages/OperatorInfo/OperatorInfo.styles.js b/new-lamassu-admin/src/pages/OperatorInfo/OperatorInfo.styles.js index 80cada18..756b864b 100644 --- a/new-lamassu-admin/src/pages/OperatorInfo/OperatorInfo.styles.js +++ b/new-lamassu-admin/src/pages/OperatorInfo/OperatorInfo.styles.js @@ -95,4 +95,51 @@ const termsConditionsStyles = { } } -export { styles, contactInfoStyles, termsConditionsStyles } +const fieldStyles = { + field: { + position: 'relative', + width: 280, + padding: [[0, 4, 4, 0]] + }, + notEditing: { + display: 'flex', + flexDirection: 'column' + }, + notEditingSingleLine: { + '& > p:first-child': { + height: 16, + lineHeight: '16px', + transform: 'scale(0.75)', + transformOrigin: 'left', + paddingLeft: 0, + margin: [[1, 0, 6, 0]] + }, + '& > p:last-child': { + overflow: 'hidden', + whiteSpace: 'nowrap', + textOverflow: 'ellipsis', + height: 25, + margin: 0 + } + }, + notEditingMultiline: { + '& > p:first-child': { + height: 16, + lineHeight: '16px', + transform: 'scale(0.75)', + transformOrigin: 'left', + paddingLeft: 0, + margin: [[1, 0, 5, 0]] + }, + '& > p:last-child': { + width: 502, + height: 121, + overflowY: 'auto', + lineHeight: '19px', + wordWrap: 'anywhere', + margin: 0 + } + } +} + +export { styles, contactInfoStyles, termsConditionsStyles, fieldStyles } diff --git a/new-lamassu-admin/src/pages/OperatorInfo/TermsConditions.js b/new-lamassu-admin/src/pages/OperatorInfo/TermsConditions.js index 9aaf16da..7e7167e8 100644 --- a/new-lamassu-admin/src/pages/OperatorInfo/TermsConditions.js +++ b/new-lamassu-admin/src/pages/OperatorInfo/TermsConditions.js @@ -1,24 +1,77 @@ import { useQuery, useMutation } from '@apollo/react-hooks' import { makeStyles } from '@material-ui/core' import classnames from 'classnames' -import { Form, Formik, Field } from 'formik' +import { Form, Formik, Field as FormikField } from 'formik' import gql from 'graphql-tag' import * as R from 'ramda' import React, { useState } from 'react' import * as Yup from 'yup' import ErrorMessage from 'src/components/ErrorMessage' -import { Button } from 'src/components/buttons' +import { Link } from 'src/components/buttons' import { Switch } from 'src/components/inputs' import { TextInput } from 'src/components/inputs/formik' -import { Info2, Label2 } from 'src/components/typography' +import { Info2, Info3, Label2, Label3 } from 'src/components/typography' +import { ReactComponent as EditIcon } from 'src/styling/icons/action/edit/enabled.svg' import { fromNamespace, toNamespace, namespaces } from 'src/utils/config' import { styles as globalStyles, - termsConditionsStyles + termsConditionsStyles, + fieldStyles } from './OperatorInfo.styles' +const useFieldStyles = makeStyles(fieldStyles) + +const Field = ({ + editing, + name, + width, + placeholder, + label, + value, + multiline = false, + rows, + onFocus, + ...props +}) => { + const classes = useFieldStyles() + + const classNames = { + [classes.field]: true, + [classes.notEditing]: !editing, + [classes.notEditingSingleLine]: !editing && !multiline, + [classes.notEditingMultiline]: !editing && multiline + } + + return ( +