Complete User CRUD

This commit is contained in:
Deluan
2020-01-19 21:39:37 -05:00
parent 1c04a19910
commit 2ab0cecd48
11 changed files with 201 additions and 45 deletions
+21
View File
@@ -0,0 +1,21 @@
import React from 'react'
import {
BooleanInput,
Create,
TextInput,
PasswordInput,
required,
SimpleForm
} from 'react-admin'
const UserCreate = (props) => (
<Create {...props}>
<SimpleForm redirect="list">
<TextInput source="name" validate={[required()]} />
<PasswordInput source="password" validate={[required()]} />
<BooleanInput source="isAdmin" initialValue={false} />
</SimpleForm>
</Create>
)
export default UserCreate
+26
View File
@@ -0,0 +1,26 @@
import React from 'react'
import {
TextInput,
BooleanInput,
DateField,
PasswordInput,
Edit,
required,
SimpleForm
} from 'react-admin'
const UserEdit = (props) => (
<Edit {...props}>
<SimpleForm>
<TextInput source="name" validate={[required()]} />
<PasswordInput source="password" validate={[required()]} />
<BooleanInput source="isAdmin" initialValue={false} />
<DateField source="lastLoginAt" />
<DateField source="lastAccessAt" />
<DateField source="updatedAt" />
<DateField source="createdAt" />
</SimpleForm>
</Edit>
)
export default UserEdit
+4 -4
View File
@@ -2,8 +2,8 @@ import React from 'react'
import {
BooleanField,
Datagrid,
DateField,
Filter,
DateField,
List,
SearchInput,
SimpleList,
@@ -13,7 +13,7 @@ import { useMediaQuery } from '@material-ui/core'
const UserFilter = (props) => (
<Filter {...props}>
<SearchInput source="q" alwaysOn />
<SearchInput source="name" alwaysOn />
</Filter>
)
@@ -30,10 +30,10 @@ const UserList = (props) => {
{isXsmall ? (
<SimpleList
primaryText={(record) => record.name}
secondaryText={(record) => record.email}
tertiaryText={(record) => (record.isAdmin ? '[admin]' : '')}
/>
) : (
<Datagrid>
<Datagrid rowClick="edit">
<TextField source="name" />
<BooleanField source="isAdmin" />
<DateField source="lastLoginAt" locales="pt-BR" />
+5 -5
View File
@@ -1,11 +1,11 @@
import SupervisedUserCircleIcon from '@material-ui/icons/SupervisedUserCircle'
import SupervisedUserCircleIcon from '@material-ui/icons/Group'
import UserList from './UserList'
// import UserEdit from './UserEdit'
// import UserCreate from './UserCreate'
import UserEdit from './UserEdit'
import UserCreate from './UserCreate'
export default {
list: UserList,
// edit: UserEdit,
// create: UserCreate,
edit: UserEdit,
create: UserCreate,
icon: SupervisedUserCircleIcon
}