15856: Adds a conditional warning icon on the breadcrumbs and collection panel.
[arvados.git] / src / views / groups-panel / groups-panel.tsx
index 0d318bc02b07ad7f03a05219df1db60c80c12cf8..f50a344bfd2d869dbda48900d1f98e5e7fce9cfe 100644 (file)
@@ -5,7 +5,6 @@
 import * as React from 'react';
 import { connect } from 'react-redux';
 import { Grid, Button, Typography } from "@material-ui/core";
-
 import { DataExplorer } from "~/views-components/data-explorer/data-explorer";
 import { DataColumns } from '~/components/data-table/data-table';
 import { SortDirection } from '~/components/data-table/data-column';
@@ -19,10 +18,10 @@ import { ContextMenuKind } from '~/views-components/context-menu/context-menu';
 import { getResource, ResourcesState, filterResources } from '~/store/resources/resources';
 import { GroupResource } from '~/models/group';
 import { RootState } from '~/store/store';
-import { Dispatch } from 'redux';
 import { openContextMenu } from '~/store/context-menu/context-menu-actions';
 import { ResourceKind } from '~/models/resource';
 import { LinkClass, LinkResource } from '~/models/link';
+import { navigateToGroupDetails } from '~/store/navigation/navigation-action';
 
 export enum GroupsPanelColumnNames {
     GROUP = "Name",
@@ -61,14 +60,17 @@ const mapStateToProps = (state: RootState) => {
     };
 };
 
-const mapDispatchToProps = (dispatch: Dispatch) => ({
-    onContextMenu: (event: React.MouseEvent<HTMLElement>, item: any) => dispatch<any>(openContextMenu(event, item)),
-    onNewGroup: () => dispatch<any>(openCreateGroupDialog()),
-});
+const mapDispatchToProps = {
+    onContextMenu: openContextMenu,
+    onRowDoubleClick: (uuid: string) =>
+        navigateToGroupDetails(uuid),
+    onNewGroup: openCreateGroupDialog,
+};
 
 export interface GroupsPanelProps {
     onNewGroup: () => void;
     onContextMenu: (event: React.MouseEvent<HTMLElement>, item: any) => void;
+    onRowDoubleClick: (item: string) => void;
     resources: ResourcesState;
 }
 
@@ -82,7 +84,7 @@ export const GroupsPanel = connect(
                 <DataExplorer
                     id={GROUPS_PANEL_ID}
                     onRowClick={noop}
-                    onRowDoubleClick={noop}
+                    onRowDoubleClick={this.props.onRowDoubleClick}
                     onContextMenu={this.handleContextMenu}
                     contextMenuColumn={true}
                     hideColumnSelector
@@ -120,7 +122,7 @@ const GroupMembersCount = connect(
         const permissions = filterResources((resource: LinkResource) =>
             resource.kind === ResourceKind.LINK &&
             resource.linkClass === LinkClass.PERMISSION &&
-            resource.headUuid === props.uuid
+            resource.tailUuid === props.uuid
         )(state.resources);
 
         return {