Merge remote-tracking branch 'origin/main' into 18207-Workbench2-is-not-clearing...
[arvados-workbench2.git] / src / views-components / dialog-create / dialog-project-create.tsx
1 // Copyright (C) The Arvados Authors. All rights reserved.
2 //
3 // SPDX-License-Identifier: AGPL-3.0
4
5 import React from 'react';
6 import { InjectedFormProps } from 'redux-form';
7 import { WithDialogProps } from 'store/dialog/with-dialog';
8 import { ProjectCreateFormDialogData } from 'store/projects/project-create-actions';
9 import { FormDialog } from 'components/form-dialog/form-dialog';
10 import { ProjectNameField, ProjectDescriptionField } from 'views-components/form-fields/project-form-fields';
11 import { CreateProjectPropertiesForm } from 'views-components/project-properties/create-project-properties-form';
12 import { CreateProjectPropertiesList } from 'views-components/project-properties/create-project-properties-list';
13 import { ResourceParentField } from '../form-fields/resource-form-fields';
14
15 type DialogProjectProps = WithDialogProps<{}> & InjectedFormProps<ProjectCreateFormDialogData>;
16
17 export const DialogProjectCreate = (props: DialogProjectProps) =>
18     <FormDialog
19         dialogTitle='New project'
20         formFields={ProjectAddFields}
21         submitLabel='Create a Project'
22         {...props}
23     />;
24
25 const ProjectAddFields = () => <span>
26     <ResourceParentField />
27     <ProjectNameField />
28     <ProjectDescriptionField />
29     <CreateProjectPropertiesForm />
30     <CreateProjectPropertiesList />
31 </span>;