refs #master Merge branch 'origin/master' into 13986-projects-list-and-default-routing
authorDaniel Kos <daniel.kos@contractors.roche.com>
Fri, 17 Aug 2018 06:55:56 +0000 (08:55 +0200)
committerDaniel Kos <daniel.kos@contractors.roche.com>
Fri, 17 Aug 2018 06:55:56 +0000 (08:55 +0200)
# Conflicts:
# src/store/navigation/navigation-action.ts

Arvados-DCO-1.1-Signed-off-by: Daniel Kos <daniel.kos@contractors.roche.com>

1  2 
src/store/navigation/navigation-action.ts
src/store/side-panel/side-panel-reducer.ts

index dfffb9cf0d843a2c9ac8d96f4e266f4ddf8cf05c,79d24471491fcd5e2ced64a8bdcd8edb6b38bd87..981b852fc606037be5fb2c40e3fb65fca659e361
@@@ -3,27 -3,26 +3,27 @@@
  // SPDX-License-Identifier: AGPL-3.0
  
  import { Dispatch } from "redux";
 -import { projectActions, getProjectList } from "../project/project-action";
 +import { getProjectList, projectActions } from "../project/project-action";
  import { push } from "react-router-redux";
- import { TreeItemStatus } from "../../components/tree/tree";
+ import { TreeItemStatus } from "~/components/tree/tree";
  import { findTreeItem } from "../project/project-reducer";
  import { RootState } from "../store";
- import { ResourceKind } from "../../models/resource";
+ import { Resource, ResourceKind } from "~/models/resource";
  import { projectPanelActions } from "../project-panel/project-panel-action";
- import { getCollectionUrl } from "../../models/collection";
- import { getProjectUrl, ProjectResource } from "../../models/project";
- import { ProjectService } from "../../services/project-service/project-service";
- import { ServiceRepository } from "../../services/services";
+ import { getCollectionUrl } from "~/models/collection";
+ import { getProjectUrl, ProjectResource } from "~/models/project";
+ import { ProjectService } from "~/services/project-service/project-service";
+ import { ServiceRepository } from "~/services/services";
  import { sidePanelActions } from "../side-panel/side-panel-action";
  import { SidePanelIdentifiers } from "../side-panel/side-panel-reducer";
- import { getUuidObjectType, ObjectTypes } from "../../models/object-types";
+ import { getUuidObjectType, ObjectTypes } from "~/models/object-types";
  
 -export const getResourceUrl = <T extends Resource>(resource: T): string => {
 -    switch (resource.kind) {
 -        case ResourceKind.PROJECT: return getProjectUrl(resource.uuid);
 -        case ResourceKind.COLLECTION: return getCollectionUrl(resource.uuid);
 -        default: return resource.href;
 +export const getResourceUrl = (resourceKind: ResourceKind, resourceUuid: string): string => {
 +    switch (resourceKind) {
 +        case ResourceKind.PROJECT: return getProjectUrl(resourceUuid);
 +        case ResourceKind.COLLECTION: return getCollectionUrl(resourceUuid);
 +        default:
 +            return '';
      }
  };
  
@@@ -35,13 -34,11 +35,13 @@@ export enum ItemMode 
  
  export const setProjectItem = (itemId: string, itemMode: ItemMode) =>
      (dispatch: Dispatch, getState: () => RootState, services: ServiceRepository) => {
 +        console.log("SetProjectItem!!", itemId);
 +        debugger;
          const { projects, router } = getState();
          const treeItem = findTreeItem(projects.items, itemId);
  
          if (treeItem) {
 -            const resourceUrl = getResourceUrl(treeItem.data);
 +            const resourceUrl = getResourceUrl(treeItem.data.kind, treeItem.data.uuid);
  
              if (itemMode === ItemMode.ACTIVE || itemMode === ItemMode.BOTH) {
                  if (router.location && !router.location.pathname.includes(resourceUrl)) {
@@@ -62,7 -59,6 +62,6 @@@
                      dispatch(projectPanelActions.RESET_PAGINATION());
                      dispatch(projectPanelActions.REQUEST_ITEMS());
                  }));
          } else {
              const uuid = services.authService.getUuid();
              if (itemId === uuid) {
index 08231def6642588d305ba9242f9e3f056b5ba118,8c73a8f596b6c9a96d0359dd804e7838ce307827..bda6965e2d7e65597a3cea46690df4e0275ddc8b
@@@ -4,16 -4,14 +4,16 @@@
  
  import * as _ from "lodash";
  import { sidePanelActions, SidePanelAction } from './side-panel-action';
- import { SidePanelItem } from '../../components/side-panel/side-panel';
- import { ProjectsIcon, ShareMeIcon, WorkflowIcon, RecentIcon, FavoriteIcon, TrashIcon } from "../../components/icon/icon";
+ import { SidePanelItem } from '~/components/side-panel/side-panel';
+ import { ProjectsIcon, ShareMeIcon, WorkflowIcon, RecentIcon, FavoriteIcon, TrashIcon } from "~/components/icon/icon";
  import { Dispatch } from "redux";
  import { push } from "react-router-redux";
  import { favoritePanelActions } from "../favorite-panel/favorite-panel-action";
  import { projectPanelActions } from "../project-panel/project-panel-action";
  import { projectActions } from "../project/project-action";
  import { getProjectUrl } from "../../models/project";
 +import { columns as projectPanelColumns } from "../../views/project-panel/project-panel";
 +import { columns as favoritePanelColumns } from "../../views/favorite-panel/favorite-panel";
  
  export type SidePanelState = SidePanelItem[];
  
@@@ -65,9 -63,8 +65,9 @@@ export const sidePanelData = 
          activeAction: (dispatch: Dispatch, uuid: string) => {
              dispatch(projectActions.TOGGLE_PROJECT_TREE_ITEM_ACTIVE(uuid));
              dispatch(push(getProjectUrl(uuid)));
 +            dispatch(projectPanelActions.SET_COLUMNS({ columns: projectPanelColumns }));
              dispatch(projectPanelActions.RESET_PAGINATION());
 -            dispatch(projectPanelActions.REQUEST_ITEMS()); 
 +            dispatch(projectPanelActions.REQUEST_ITEMS());
          }
      },
      {
@@@ -95,7 -92,6 +95,7 @@@
          active: false,
          activeAction: (dispatch: Dispatch) => {
              dispatch(push("/favorites"));
 +            dispatch(favoritePanelActions.SET_COLUMNS({ columns: favoritePanelColumns }));
              dispatch(favoritePanelActions.RESET_PAGINATION());
              dispatch(favoritePanelActions.REQUEST_ITEMS());
          }