X-Git-Url: https://git.arvados.org/arvados-workbench2.git/blobdiff_plain/90786154d588ebb341fc9e3cc8d4954a3c6f8794..62cb779efb0b098c05053e957c765a807467b28b:/src/components/form-dialog/form-dialog.tsx diff --git a/src/components/form-dialog/form-dialog.tsx b/src/components/form-dialog/form-dialog.tsx index 8c847ca4..b50504a6 100644 --- a/src/components/form-dialog/form-dialog.tsx +++ b/src/components/form-dialog/form-dialog.tsx @@ -2,13 +2,13 @@ // // SPDX-License-Identifier: AGPL-3.0 -import * as React from 'react'; +import React from 'react'; import { InjectedFormProps } from 'redux-form'; import { Dialog, DialogActions, DialogContent, DialogTitle } from '@material-ui/core/'; import { Button, StyleRulesCallback, WithStyles, withStyles, CircularProgress } from '@material-ui/core'; -import { WithDialogProps } from '~/store/dialog/with-dialog'; +import { WithDialogProps } from 'store/dialog/with-dialog'; -type CssRules = "button" | "lastButton" | "formContainer" | "dialogTitle" | "progressIndicator" | "dialogActions"; +type CssRules = "button" | "lastButton" | "form" | "formContainer" | "dialogTitle" | "progressIndicator" | "dialogActions"; const styles: StyleRulesCallback = theme => ({ button: { @@ -18,6 +18,12 @@ const styles: StyleRulesCallback = theme => ({ marginLeft: theme.spacing.unit, marginRight: "0", }, + form: { + display: 'flex', + overflowY: 'auto', + flexDirection: 'column', + flex: '0 1 auto', + }, formContainer: { display: "flex", flexDirection: "column", @@ -42,6 +48,9 @@ interface DialogProjectDataProps { dialogTitle: string; formFields: React.ComponentType & WithDialogProps>; submitLabel?: string; + cancelCallback?: Function; + enableWhenPristine?: boolean; + doNotDisableCancel?: boolean; } type DialogProjectProps = DialogProjectDataProps & WithDialogProps<{}> & InjectedFormProps & WithStyles; @@ -54,7 +63,7 @@ export const FormDialog = withStyles(styles)((props: DialogProjectProps) => disableEscapeKeyDown={props.submitting} fullWidth maxWidth='md'> -
+ {props.dialogTitle} @@ -64,10 +73,18 @@ export const FormDialog = withStyles(styles)((props: DialogProjectProps) =>