X-Git-Url: https://git.arvados.org/arvados-workbench2.git/blobdiff_plain/30e3140a2a78465e14017219fbf9baece57554bb..0e3d1681d9ed60bae0b91b368efb1325f5aee239:/src/views-components/side-panel-tree/side-panel-tree.tsx
diff --git a/src/views-components/side-panel-tree/side-panel-tree.tsx b/src/views-components/side-panel-tree/side-panel-tree.tsx
index 33ee97f9..e8294834 100644
--- a/src/views-components/side-panel-tree/side-panel-tree.tsx
+++ b/src/views-components/side-panel-tree/side-panel-tree.tsx
@@ -2,18 +2,22 @@
//
// SPDX-License-Identifier: AGPL-3.0
-import * as React from "react";
+import React from "react";
import { Dispatch } from "redux";
import { connect } from "react-redux";
import { TreePicker, TreePickerProps } from "../tree-picker/tree-picker";
-import { TreeItem } from "~/components/tree/tree";
-import { ProjectResource } from "~/models/project";
-import { ListItemTextIcon } from "~/components/list-item-text-icon/list-item-text-icon";
-import { ProjectIcon, FavoriteIcon, ProjectsIcon, ShareMeIcon, TrashIcon } from '~/components/icon/icon';
-import { RecentIcon, WorkflowIcon } from '~/components/icon/icon';
-import { activateSidePanelTreeItem, toggleSidePanelTreeItemCollapse, SIDE_PANEL_TREE, SidePanelTreeCategory } from '~/store/side-panel-tree/side-panel-tree-actions';
-import { openSidePanelContextMenu } from '~/store/context-menu/context-menu-actions';
+import { TreeItem } from "components/tree/tree";
+import { ProjectResource } from "models/project";
+import { ListItemTextIcon } from "components/list-item-text-icon/list-item-text-icon";
+import { ProcessIcon, ProjectIcon, FilterGroupIcon, FavoriteIcon, ProjectsIcon, ShareMeIcon, TrashIcon, PublicFavoriteIcon, GroupsIcon } from 'components/icon/icon';
+import { WorkflowIcon } from 'components/icon/icon';
+import { activateSidePanelTreeItem, toggleSidePanelTreeItemCollapse, SIDE_PANEL_TREE, SidePanelTreeCategory } from 'store/side-panel-tree/side-panel-tree-actions';
+import { openSidePanelContextMenu } from 'store/context-menu/context-menu-actions';
import { noop } from 'lodash';
+import { ResourceKind } from "models/resource";
+import { IllegalNamingWarning } from "components/warning/warning";
+import { GroupClass } from "models/group";
+
export interface SidePanelTreeProps {
onItemActivation: (id: string) => void;
sidePanelProgress?: boolean;
@@ -37,21 +41,30 @@ const mapDispatchToProps = (dispatch: Dispatch, props: SidePanelTreeProps): Side
export const SidePanelTree = connect(undefined, mapDispatchToProps)(
(props: SidePanelTreeActionProps) =>
- );
+
+
+ );
-const renderSidePanelItem = (item: TreeItem) =>
- ) => {
+ const name = typeof item.data === 'string' ? item.data : item.data.name;
+ const warn = typeof item.data !== 'string' && item.data.kind === ResourceKind.PROJECT
+ ?
+ : undefined;
+ return ;
+};
const getProjectPickerIcon = (item: TreeItem) =>
typeof item.data === 'string'
? getSidePanelIcon(item.data)
- : ProjectIcon;
+ : (item.data && item.data.groupClass === GroupClass.FILTER)
+ ? FilterGroupIcon
+ : ProjectIcon;
const getSidePanelIcon = (category: string) => {
switch (category) {
@@ -59,14 +72,18 @@ const getSidePanelIcon = (category: string) => {
return FavoriteIcon;
case SidePanelTreeCategory.PROJECTS:
return ProjectsIcon;
- case SidePanelTreeCategory.RECENT_OPEN:
- return RecentIcon;
case SidePanelTreeCategory.SHARED_WITH_ME:
return ShareMeIcon;
case SidePanelTreeCategory.TRASH:
return TrashIcon;
case SidePanelTreeCategory.WORKFLOWS:
return WorkflowIcon;
+ case SidePanelTreeCategory.PUBLIC_FAVORITES:
+ return PublicFavoriteIcon;
+ case SidePanelTreeCategory.ALL_PROCESSES:
+ return ProcessIcon;
+ case SidePanelTreeCategory.GROUPS:
+ return GroupsIcon;
default:
return ProjectIcon;
}