d6cbd8d3abd588f7e91ceb24881a12cffcc974b5
[arvados-workbench2.git] / src / views-components / form-fields / collection-form-fields.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 { Field, WrappedFieldProps } from "redux-form";
7 import { TextField } from "~/components/text-field/text-field";
8 import { COLLECTION_NAME_VALIDATION, COLLECTION_DESCRIPTION_VALIDATION, COLLECTION_PROJECT_VALIDATION } from "~/validators/validators";
9 import { ProjectTreePicker, ProjectTreePickerField } from "~/views-components/project-tree-picker/project-tree-picker";
10
11 export const CollectionNameField = () =>
12     <Field
13         name='name'
14         component={TextField}
15         validate={COLLECTION_NAME_VALIDATION}
16         label="Collection Name"
17         autoFocus={true} />;
18
19 export const CollectionDescriptionField = () =>
20     <Field
21         name='description'
22         component={TextField}
23         validate={COLLECTION_DESCRIPTION_VALIDATION}
24         label="Description - optional" />;
25
26 export const CollectionProjectPickerField = (props: { pickerId: string }) =>
27     <Field
28         name="projectUuid"
29         pickerId={props.pickerId}
30         component={ProjectTreePickerField}
31         validate={COLLECTION_PROJECT_VALIDATION} />;