X-Git-Url: https://git.arvados.org/arvados-workbench2.git/blobdiff_plain/d4afb5d44f63394461ff1571039a74b3462d8ae6..63bcd4762a60500b6a445b16b33ea31533fdf25d:/src/views/site-manager-panel/site-manager-panel-root.tsx?ds=sidebyside diff --git a/src/views/site-manager-panel/site-manager-panel-root.tsx b/src/views/site-manager-panel/site-manager-panel-root.tsx index f4022111..223e373c 100644 --- a/src/views/site-manager-panel/site-manager-panel-root.tsx +++ b/src/views/site-manager-panel/site-manager-panel-root.tsx @@ -8,6 +8,7 @@ import { CardContent, CircularProgress, Grid, + IconButton, StyleRulesCallback, Table, TableBody, @@ -28,6 +29,7 @@ import { addSession } from "~/store/auth/auth-action-session"; import { SITE_MANAGER_REMOTE_HOST_VALIDATION } from "~/validators/validators"; import { Config } from '~/common/config'; import { ResourceCluster } from '~/views-components/data-explorer/renderers'; +import { TrashIcon } from "~/components/icon/icon"; type CssRules = 'root' | 'link' | 'buttonContainer' | 'table' | 'tableRow' | 'remoteSiteInfo' | 'buttonAdd' | 'buttonLoggedIn' | 'buttonLoggedOut' | @@ -86,11 +88,13 @@ const styles: StyleRulesCallback = (theme: ArvadosTheme) => ({ export interface SiteManagerPanelRootActionProps { toggleSession: (session: Session) => void; + removeSession: (session: Session) => void; } export interface SiteManagerPanelRootDataProps { sessions: Session[]; remoteHostsConfig: { [key: string]: Config }; + localClusterConfig: Config; } type SiteManagerPanelRootProps = SiteManagerPanelRootDataProps & SiteManagerPanelRootActionProps & WithStyles & InjectedFormProps; @@ -117,7 +121,7 @@ export const SiteManagerPanelRoot = compose( } }), withStyles(styles)) - (({ classes, sessions, handleSubmit, toggleSession, remoteHostsConfig }: SiteManagerPanelRootProps) => + (({ classes, sessions, handleSubmit, toggleSession, removeSession, localClusterConfig, remoteHostsConfig }: SiteManagerPanelRootProps) => @@ -136,6 +140,7 @@ export const SiteManagerPanelRoot = compose( Email UUID Status + Actions @@ -156,6 +161,13 @@ export const SiteManagerPanelRoot = compose( {validating ? "Validating" : (session.loggedIn ? "Logged in" : "Logged out")} + + {session.clusterId !== localClusterConfig.uuidPrefix && + !localClusterConfig.clusterConfig.RemoteClusters[session.clusterId] && + removeSession(session)}> + + } + ; })}