-
-
Notifications
You must be signed in to change notification settings - Fork 5.3k
/
Copy pathVisitorEdit.tsx
120 lines (111 loc) · 5.07 KB
/
VisitorEdit.tsx
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
import * as React from 'react';
import {
DateInput,
Edit,
NullableBooleanInput,
TextInput,
PasswordInput,
SimpleForm,
useTranslate,
} from 'react-admin';
import { Grid, Box, Typography } from '@mui/material';
import Aside from './Aside';
import FullNameField from './FullNameField';
import SegmentsInput from './SegmentsInput';
import { validateForm } from './VisitorCreate';
const VisitorEdit = () => {
const translate = useTranslate();
return (
<Edit title={<VisitorTitle />} aside={<Aside />}>
<SimpleForm validate={validateForm}>
<div>
<Grid container width={{ xs: '100%', xl: 800 }} spacing={2}>
<Grid item xs={12} md={8}>
<Typography variant="h6" gutterBottom>
{translate(
'resources.customers.fieldGroups.identity'
)}
</Typography>
<Box display={{ xs: 'block', sm: 'flex' }}>
<Box flex={1} mr={{ xs: 0, sm: '0.5em' }}>
<TextInput source="first_name" isRequired />
</Box>
<Box flex={1} ml={{ xs: 0, sm: '0.5em' }}>
<TextInput source="last_name" isRequired />
</Box>
</Box>
<TextInput type="email" source="email" isRequired />
<Box display={{ xs: 'block', sm: 'flex' }}>
<Box flex={1} mr={{ xs: 0, sm: '0.5em' }}>
<DateInput
source="birthday"
helperText={false}
/>
</Box>
<Box flex={2} ml={{ xs: 0, sm: '0.5em' }} />
</Box>
<Box mt="1em" />
<Typography variant="h6" gutterBottom>
{translate(
'resources.customers.fieldGroups.address'
)}
</Typography>
<TextInput
source="address"
multiline
helperText={false}
/>
<Box display={{ xs: 'block', sm: 'flex' }}>
<Box flex={2} mr={{ xs: 0, sm: '0.5em' }}>
<TextInput
source="city"
helperText={false}
/>
</Box>
<Box flex={1} mr={{ xs: 0, sm: '0.5em' }}>
<TextInput
source="stateAbbr"
helperText={false}
/>
</Box>
<Box flex={2}>
<TextInput
source="zipcode"
helperText={false}
/>
</Box>
</Box>
<Box mt="1em" />
<Typography variant="h6" gutterBottom>
{translate(
'resources.customers.fieldGroups.change_password'
)}
</Typography>
<Box display={{ xs: 'block', sm: 'flex' }}>
<Box flex={1} mr={{ xs: 0, sm: '0.5em' }}>
<PasswordInput source="password" />
</Box>
<Box flex={1} ml={{ xs: 0, sm: '0.5em' }}>
<PasswordInput source="confirm_password" />
</Box>
</Box>
</Grid>
<Grid item xs={12} md={4}>
<Typography variant="h6" gutterBottom>
{translate(
'resources.customers.fieldGroups.stats'
)}
</Typography>
<SegmentsInput />
<NullableBooleanInput source="has_newsletter" />
</Grid>
</Grid>
</div>
</SimpleForm>
</Edit>
);
};
const VisitorTitle = () => (
<FullNameField source="last_name" size="32" sx={{ margin: '5px 0' }} />
);
export default VisitorEdit;