+
+// Copyright (C) The Arvados Authors. All rights reserved.
+//
+// SPDX-License-Identifier: AGPL-3.0
+
+import * as React from 'react';
+import * as classNames from 'classnames';
+import { withRouter, RouteComponentProps } from 'react-router';
+import { StyleRulesCallback, Button, WithStyles, withStyles } from "@material-ui/core";
+import { ReRunProcessIcon } from '~/components/icon/icon';
+
+type CssRules = 'button' | 'buttonRight';
+
+const styles: StyleRulesCallback<CssRules> = theme => ({
+ button: {
+ boxShadow: 'none',
+ padding: '2px 10px 2px 5px',
+ fontSize: '0.75rem'
+ },
+ buttonRight: {
+ marginLeft: 'auto',
+ },
+});
+
+export const RefreshButton = ({ history, classes }: RouteComponentProps & WithStyles<CssRules>) =>
+ <Button
+ color="primary"
+ size="small"
+ variant="contained"
+ onClick={() => {
+ history.push(window.location.pathname);
+ }}
+ className={classNames(classes.buttonRight, classes.button)}>
+ <ReRunProcessIcon />
+ Refresh
+ </Button>;
+
+export default withStyles(styles)(withRouter(RefreshButton));
\ No newline at end of file