18368: Notification banner first implementation
[arvados-workbench2.git] / src / views / workbench / workbench.tsx
index ae8a8f842d16f505d2c2fae3b84af665e59a39b5..b6ce07aebaf961c0c84f90051afef3432adf44bf 100644 (file)
@@ -2,7 +2,7 @@
 //
 // SPDX-License-Identifier: AGPL-3.0
 
-import React, { useState, useCallback } from 'react';
+import React from 'react';
 import { StyleRulesCallback, WithStyles, withStyles } from '@material-ui/core/styles';
 import { Route, Switch } from "react-router";
 import { ProjectPanel } from "views/project-panel/project-panel";
@@ -99,6 +99,7 @@ import { RestoreCollectionVersionDialog } from 'views-components/collections-dia
 import { WebDavS3InfoDialog } from 'views-components/webdav-s3-dialog/webdav-s3-dialog';
 import { pluginConfig } from 'plugins';
 import { ElementListReducer } from 'common/plugintypes';
+import { Banner } from 'views-components/baner/banner';
 
 type CssRules = 'root' | 'container' | 'splitter' | 'asidePanel' | 'contentWrapper' | 'content';
 
@@ -185,18 +186,6 @@ const reduceRoutesFn: (a: React.ReactElement[],
 
 routes = React.createElement(React.Fragment, null, pluginConfig.centerPanelList.reduce(reduceRoutesFn, React.Children.toArray(routes.props.children)));
 
-const Banner = () => {
-    const [visible, setVisible] = useState(true);
-    const hideBanner = useCallback(() => setVisible(false), []);
-
-    return visible ? 
-        <div id="banner" onClick={hideBanner} className="app-banner">
-            <span>
-            This is important message
-            </span>
-        </div> : null;
-}
-
 export const WorkbenchPanel =
     withStyles(styles)((props: WorkbenchPanelProps) =>
         <Grid container item xs className={props.classes.root}>