1 // Copyright (C) The Arvados Authors. All rights reserved.
3 // SPDX-License-Identifier: AGPL-3.0
5 import * as React from "react";
6 import { Field, InjectedFormProps, WrappedFieldProps } from "redux-form";
7 import { Dialog, DialogTitle, DialogContent, DialogActions, Button, CircularProgress } from "@material-ui/core";
9 import { WithDialogProps } from "~/store/dialog/with-dialog";
10 import { ProjectTreePicker } from "~/views-components/project-tree-picker/project-tree-picker";
11 import { MOVE_TO_VALIDATION } from "~/validators/validators";
13 export const MoveToDialog = (props: WithDialogProps<string> & InjectedFormProps<{ name: string }>) =>
15 <Dialog open={props.open}
16 disableBackdropClick={true}
17 disableEscapeKeyDown={true}>
18 <DialogTitle>Move to</DialogTitle>
23 validate={MOVE_TO_VALIDATION} />
29 disabled={props.submitting}
30 onClick={props.closeDialog}>
37 onClick={props.handleSubmit}
38 disabled={props.pristine || props.invalid || props.submitting}>
39 {props.submitting ? <CircularProgress size={20} /> : 'Move'}
45 const Picker = (props: WrappedFieldProps) =>
46 <div style={{ width: '400px', height: '144px', display: 'flex', flexDirection: 'column' }}>
47 <ProjectTreePicker onChange={projectUuid => props.input.onChange(projectUuid)} />