import CardContent from '@mui/material/CardContent' import Card from '@mui/material/Card' import Grid from '@mui/material/Grid' import { makeStyles } from '@mui/styles' import classnames from 'classnames' import { Form, Formik, Field as FormikField } from 'formik' import * as R from 'ramda' import { useState, React, useRef } from 'react' // import { HelpTooltip } from 'src/components/Tooltip' import ErrorMessage from 'src/components/ErrorMessage' import PromptWhenDirty from 'src/components/PromptWhenDirty' import { MainStatus } from 'src/components/Status' import { Label1, P, H3 } from 'src/components/typography' import DeleteIcon from 'src/styling/icons/action/delete/enabled.svg?react' import DeleteReversedIcon from 'src/styling/icons/action/delete/white.svg?react' import EditIcon from 'src/styling/icons/action/edit/enabled.svg?react' import EditReversedIcon from 'src/styling/icons/action/edit/white.svg?react' import AuthorizeIcon from 'src/styling/icons/button/authorize/white.svg?react' import BlockIcon from 'src/styling/icons/button/block/white.svg?react' import CancelReversedIcon from 'src/styling/icons/button/cancel/white.svg?react' import DataReversedIcon from 'src/styling/icons/button/data/white.svg?react' import DataIcon from 'src/styling/icons/button/data/zodiac.svg?react' import ReplaceReversedIcon from 'src/styling/icons/button/replace/white.svg?react' import SaveReversedIcon from 'src/styling/icons/circle buttons/save/white.svg?react' import { ActionButton } from 'src/components/buttons' import { OVERRIDE_AUTHORIZED, OVERRIDE_REJECTED, OVERRIDE_PENDING } from 'src/pages/Customers/components/propertyCard' import { comet } from 'src/styling/variables' import styles from './EditableCard.styles' const useStyles = makeStyles(styles) const fieldStyles = { field: { position: 'relative', width: 280, height: 48, padding: [[0, 4, 4, 0]], marginTop: 2 }, label: { color: comet, margin: [[0, 0, 0, 0]] }, notEditing: { display: 'flex', flexDirection: 'column', '& > p:first-child': { height: 16, lineHeight: '16px', transformOrigin: 'left', paddingLeft: 0, margin: [[3, 0, 3, 0]] }, '& > p:last-child': { overflow: 'hidden', whiteSpace: 'nowrap', textOverflow: 'ellipsis', margin: 0 } }, editing: { '& > div': { '& > input': { padding: 0, fontSize: 14 } } }, readOnlyLabel: { color: comet, margin: [[3, 0, 3, 0]] }, readOnlyValue: { margin: 0 } } const fieldUseStyles = makeStyles(fieldStyles) const EditableField = ({ editing, field, value, size, ...props }) => { const classes = fieldUseStyles() const classNames = { [classes.field]: true, [classes.notEditing]: !editing } return (
{value}
> )} {editing && ( <>{value}