X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/7486a3262490a384017ee6c826a408a017a79f55..e6e51406134e71d493f5258917915136709bcda2:/src/views-components/dialog-copy/dialog-copy.tsx?ds=sidebyside diff --git a/src/views-components/dialog-copy/dialog-copy.tsx b/src/views-components/dialog-copy/dialog-copy.tsx index 415541595c..8e37ac3216 100644 --- a/src/views-components/dialog-copy/dialog-copy.tsx +++ b/src/views-components/dialog-copy/dialog-copy.tsx @@ -2,33 +2,63 @@ // // SPDX-License-Identifier: AGPL-3.0 -import * as React from "react"; -import { InjectedFormProps, Field } from 'redux-form'; -import { WithDialogProps } from '~/store/dialog/with-dialog'; -import { FormDialog } from '~/components/form-dialog/form-dialog'; -import { ProjectTreePickerField } from '~/views-components/project-tree-picker/project-tree-picker'; -import { COPY_NAME_VALIDATION, COPY_FILE_VALIDATION } from '~/validators/validators'; -import { TextField } from "~/components/text-field/text-field"; -import { CopyFormDialogData } from '~/store/copy-dialog/copy-dialog'; +import React from "react"; +import { memoize } from "lodash/fp"; +import { InjectedFormProps, Field } from "redux-form"; +import { WithDialogProps } from "store/dialog/with-dialog"; +import { FormDialog } from "components/form-dialog/form-dialog"; +import { ProjectTreePickerField } from "views-components/projects-tree-picker/tree-picker-field"; +import { COPY_NAME_VALIDATION, COPY_FILE_VALIDATION } from "validators/validators"; +import { TextField } from "components/text-field/text-field"; +import { CopyFormDialogData } from "store/copy-dialog/copy-dialog"; +import { PickerIdProp } from "store/tree-picker/picker-id"; type CopyFormDialogProps = WithDialogProps & InjectedFormProps; -export const DialogCopy = (props: CopyFormDialogProps) => - ; +export const DialogCopy = (props: CopyFormDialogProps & PickerIdProp) => { + return ( + + ); +}; -const CopyDialogFields = () => - +const CopyDialogFields = memoize((pickerId: string) => () => ( + <> + + + +)); + +export const DialogMultiCopy = (props: CopyFormDialogProps & PickerIdProp) => { + return ( + + ); +}; + +const CopyMultiDialogFields = memoize((pickerId: string) => () => ( -; + validate={COPY_FILE_VALIDATION} + pickerId={pickerId} + /> +));