Extract collection partial copy dialog
[arvados-workbench2.git] / src / views-components / dialog-copy / collection-partial-copy-dialog.tsx
1 // Copyright (C) The Arvados Authors. All rights reserved.
2 //
3 // SPDX-License-Identifier: AGPL-3.0
4
5 import * as React from "react";
6 import { FormDialog } from '~/components/form-dialog/form-dialog';
7 import { CollectionNameField, CollectionDescriptionField, CollectionProjectPickerField } from '../form-fields/collection-form-fields';
8 import { WithDialogProps } from '~/store/dialog/with-dialog';
9 import { InjectedFormProps } from 'redux-form';
10 import { CollectionPartialCopyFormData } from '../../store/collections/collection-partial-copy-actions';
11
12 type PartialCopyFormDialogProps = WithDialogProps<string> & InjectedFormProps<CollectionPartialCopyFormData>;
13
14 export const CollectionPartialCopyDialog = (props: PartialCopyFormDialogProps) =>
15     <FormDialog
16         dialogTitle='Create a collection'
17         formFields={CollectionPartialCopyFields}
18         submitLabel='Create a collection'
19         {...props}
20     />;
21
22 export const CollectionPartialCopyFields = () => <div style={{ display: 'flex' }}>
23     <div>
24         <CollectionNameField />
25         <CollectionDescriptionField />
26     </div>
27     <CollectionProjectPickerField />
28 </div>;