18219: Fixes collection edit dialog. Adds test.
[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_FORM_NAME,
9     COLLECTION_UPDATE_PROPERTIES_FORM_NAME
10 } from 'store/collections/collection-update-actions';
11 import {
12     ResourcePropertiesForm,
13     ResourcePropertiesFormData
14 } from 'views-components/resource-properties-form/resource-properties-form';
15 import { addPropertyToResourceForm } from 'store/resources/resources-actions';
16
17 const Form = withStyles(
18     ({ spacing }) => (
19         { container:
20             {
21                 paddingTop: spacing.unit,
22                 margin: 0,
23             }
24         })
25     )(ResourcePropertiesForm);
26
27 export const UpdateCollectionPropertiesForm = reduxForm<ResourcePropertiesFormData>({
28     form: COLLECTION_UPDATE_PROPERTIES_FORM_NAME,
29     onSubmit: (data, dispatch) => {
30         dispatch(addPropertyToResourceForm(data, COLLECTION_UPDATE_FORM_NAME));
31         dispatch(reset(COLLECTION_UPDATE_PROPERTIES_FORM_NAME));
32     }
33 })(Form);