|
1 | 1 | import { |
2 | 2 | Admin, Create, Datagrid, DatagridConfigurable, Edit, EditButton, List, HttpError, Resource, SimpleForm, |
3 | 3 | SelectColumnsButton, CreateButton, FilterButton, ExportButton, TopToolbar, |
| 4 | + DeleteButton, SaveButton, Toolbar, |
4 | 5 | AppBar, InspectorButton, Layout, TitlePortal, |
5 | 6 | BulkDeleteButton, BulkExportButton, BulkUpdateButton, |
6 | 7 | SimpleShowLayout, Show, |
@@ -237,17 +238,28 @@ const AiohttpShow = (resource, name, permissions) => ( |
237 | 238 | </Show> |
238 | 239 | ); |
239 | 240 |
|
240 | | -const AiohttpEdit = (resource, name, permissions) => ( |
241 | | - <Edit> |
242 | | - <SimpleForm> |
243 | | - {createInputs(resource, name, "edit", permissions)} |
244 | | - </SimpleForm> |
245 | | - </Edit> |
246 | | -); |
| 241 | +const AiohttpEdit = (resource, name, permissions) => { |
| 242 | + const AiohttpEditToolbar = props => ( |
| 243 | + <Toolbar {...props} sx={{ display: "flex", justifyContent: "space-between" }}> |
| 244 | + <SaveButton /> |
| 245 | + <WithRecord render={ |
| 246 | + (record) => hasPermission(`${name}.delete`, permissions, record) && <DeleteButton /> |
| 247 | + } /> |
| 248 | + </Toolbar> |
| 249 | + ); |
| 250 | + |
| 251 | + return( |
| 252 | + <Edit mutationMode="pessimistic"> |
| 253 | + <SimpleForm toolbar={<AiohttpEditToolbar />} sanitizeEmptyValues> |
| 254 | + {createInputs(resource, name, "edit", permissions)} |
| 255 | + </SimpleForm> |
| 256 | + </Edit> |
| 257 | + ); |
| 258 | +} |
247 | 259 |
|
248 | 260 | const AiohttpCreate = (resource, name, permissions) => ( |
249 | 261 | <Create> |
250 | | - <SimpleForm> |
| 262 | + <SimpleForm sanitizeEmptyValues> |
251 | 263 | {createInputs(resource, name, "add", permissions)} |
252 | 264 | </SimpleForm> |
253 | 265 | </Create> |
|
0 commit comments