Merge branch '21128-toolbar-context-menu'
[arvados-workbench2.git] / src / components / confirmation-dialog / confirmation-dialog.tsx
index 9ca3454a61e7c304ef703f32f84ef734662837f6..fa09ffc62dc48ac476ca88cc75850a2e9d0bde4c 100644 (file)
@@ -2,13 +2,15 @@
 //
 // SPDX-License-Identifier: AGPL-3.0
 
-import * as React from "react";
+import React from "react";
 import { Dialog, DialogTitle, DialogContent, DialogActions, Button, DialogContentText } from "@material-ui/core";
-import { WithDialogProps } from "../../store/dialog/with-dialog";
+import { WithDialogProps } from "store/dialog/with-dialog";
+import { WarningIcon } from 'components/icon/icon';
 
 export interface ConfirmationDialogDataProps {
     title: string;
     text: string;
+    info?: string;
     cancelButtonLabel?: string;
     confirmButtonLabel?: string;
 }
@@ -19,25 +21,31 @@ export interface ConfirmationDialogProps {
 
 export const ConfirmationDialog = (props: ConfirmationDialogProps & WithDialogProps<ConfirmationDialogDataProps>) =>
     <Dialog open={props.open}>
-        <DialogTitle>{props.data.title}</DialogTitle>
-        <DialogContent>
-            <DialogContentText>
-                {props.data.text}
-            </DialogContentText>
-        </DialogContent>
-        <DialogActions>
-            <Button
-                variant='flat'
-                color='primary'
-                onClick={props.closeDialog}>
-                {props.data.cancelButtonLabel || 'Cancel'}
-            </Button>
-            <Button
-                variant='contained'
-                color='primary'
-                type='submit'
-                onClick={props.onConfirm}>
-                {props.data.confirmButtonLabel || 'Ok'}
-            </Button>
-        </DialogActions>
+        <div data-cy='confirmation-dialog'>
+            <DialogTitle>{props.data.title}</DialogTitle>
+            <DialogContent style={{ display: 'flex', alignItems: 'center' }}>
+                <WarningIcon />
+                <DialogContentText style={{ paddingLeft: '8px' }}>
+                    <span style={{display: 'block'}}>{props.data.text}</span>
+                    <span style={{display: 'block'}}>{props.data.info}</span>
+                </DialogContentText>
+            </DialogContent>
+            <DialogActions style={{ margin: '0px 24px 24px' }}>
+                <Button
+                    data-cy='confirmation-dialog-cancel-btn'
+                    variant='text'
+                    color='primary'
+                    onClick={props.closeDialog}>
+                    {props.data.cancelButtonLabel || 'Cancel'}
+                </Button>
+                <Button
+                    data-cy='confirmation-dialog-ok-btn'
+                    variant='contained'
+                    color='primary'
+                    type='submit'
+                    onClick={props.onConfirm}>
+                    {props.data.confirmButtonLabel || 'Ok'}
+                </Button>
+            </DialogActions>
+        </div>
     </Dialog>;