13a29ad4b679a9561af978fe01bb947770cb335c
[arvados-workbench2.git] / src / views-components / collection-properties / update-collection-properties-form.tsx
1 // Copyright (C) The Arvados Authors. All rights reserved.
2 //
3 // SPDX-License-Identifier: AGPL-3.0
4
5 import { reduxForm, reset } from 'redux-form';
6 import { withStyles } from '@material-ui/core';
7 import {
8     COLLECTION_UPDATE_PROPERTIES_FORM_NAME
9 } from 'store/collections/collection-update-actions';
10 import {
11     ResourcePropertiesForm,
12     ResourcePropertiesFormData
13 } from 'views-components/resource-properties-form/resource-properties-form';
14 import { addPropertyToResourceForm } from 'store/resources/resources-actions';
15
16 const Form = withStyles(
17     ({ spacing }) => (
18         { container:
19             {
20                 paddingTop: spacing.unit,
21                 margin: 0,
22             }
23         })
24     )(ResourcePropertiesForm);
25
26 export const UpdateCollectionPropertiesForm = reduxForm<ResourcePropertiesFormData>({
27     form: COLLECTION_UPDATE_PROPERTIES_FORM_NAME,
28     onSubmit: (data, dispatch) => {
29         dispatch(addPropertyToResourceForm(data, COLLECTION_UPDATE_PROPERTIES_FORM_NAME));
30         dispatch(reset(COLLECTION_UPDATE_PROPERTIES_FORM_NAME));
31     }
32 })(Form);