17782: Merge branch 'main' into 17782-react-scripts-ts-migration 17782-react-scripts-ts-migration
authorLucas Di Pentima <lucas.dipentima@curii.com>
Tue, 13 Jul 2021 12:56:50 +0000 (09:56 -0300)
committerLucas Di Pentima <lucas.dipentima@curii.com>
Tue, 13 Jul 2021 12:56:50 +0000 (09:56 -0300)
Arvados-DCO-1.1-Signed-off-by: Lucas Di Pentima <lucas.dipentima@curii.com>

1  2 
cypress/integration/sharing.spec.js
src/store/context-menu/context-menu-actions.ts
src/views/favorite-panel/favorite-panel.tsx
src/views/project-panel/project-panel.tsx
src/views/public-favorites-panel/public-favorites-panel.tsx
src/views/shared-with-me-panel/shared-with-me-panel.tsx

Simple merge
index 19f1713812753a0a60a996869364b62012a0512c,dcae68074aeb9f6561d841f14028c25e5095e8a6..82336b4a64e2d2b469782bcf35634122c17c26aa
@@@ -25,16 -25,20 +25,20 @@@ import { FavoriteIcon } from 'component
  import {
      openContextMenu,
      resourceUuidToContextMenuKind
 -} from '~/store/context-menu/context-menu-actions';
 -import { loadDetailsPanel } from '~/store/details-panel/details-panel-action';
 -import { navigateTo } from '~/store/navigation/navigation-action';
 -import { ContainerRequestState } from "~/models/container-request";
 -import { FavoritesState } from '~/store/favorites/favorites-reducer';
 -import { RootState } from '~/store/store';
 -import { DataTableDefaultView } from '~/components/data-table-default-view/data-table-default-view';
 -import { createTree } from '~/models/tree';
 -import { getSimpleObjectTypeFilters } from '~/store/resource-type-filters/resource-type-filters';
 -import { getResource, ResourcesState } from '~/store/resources/resources';
 -import { GroupContentsResource } from '~/services/groups-service/groups-service';
 -import { GroupClass, GroupResource } from '~/models/group';
 -import { getProperty } from '~/store/properties/properties';
 -import { PROJECT_PANEL_CURRENT_UUID } from '~/store/project-panel/project-panel-action';
 +} from 'store/context-menu/context-menu-actions';
 +import { loadDetailsPanel } from 'store/details-panel/details-panel-action';
 +import { navigateTo } from 'store/navigation/navigation-action';
 +import { ContainerRequestState } from "models/container-request";
 +import { FavoritesState } from 'store/favorites/favorites-reducer';
 +import { RootState } from 'store/store';
 +import { DataTableDefaultView } from 'components/data-table-default-view/data-table-default-view';
 +import { createTree } from 'models/tree';
 +import { getSimpleObjectTypeFilters } from 'store/resource-type-filters/resource-type-filters';
- import { ResourcesState } from 'store/resources/resources';
++import { getResource, ResourcesState } from 'store/resources/resources';
++import { GroupContentsResource } from 'services/groups-service/groups-service';
++import { GroupClass, GroupResource } from 'models/group';
++import { getProperty } from 'store/properties/properties';
++import { PROJECT_PANEL_CURRENT_UUID } from 'store/project-panel/project-panel-action';
  
  type CssRules = "toolbar" | "button";
  
@@@ -133,14 -139,27 +139,27 @@@ export const FavoritePanel = withStyles
          class extends React.Component<FavoritePanelProps> {
  
              handleContextMenu = (event: React.MouseEvent<HTMLElement>, resourceUuid: string) => {
-                 const menuKind = this.props.dispatch<any>(resourceUuidToContextMenuKind(resourceUuid));
-                 if (menuKind) {
+                 const { resources } = this.props;
+                 const resource = getResource<GroupContentsResource>(resourceUuid)(resources);
 -                
++
+                 let readonly = false;
+                 const project = getResource<GroupResource>(this.props.currentItemId)(resources);
 -                
++
+                 if (project && project.groupClass === GroupClass.FILTER) {
+                     readonly = true;
+                 }
+                 const menuKind = this.props.dispatch<any>(resourceUuidToContextMenuKind(resourceUuid, readonly));
+                 if (menuKind&& resource) {
                      this.props.dispatch<any>(openContextMenu(event, {
-                         name: '',
-                         uuid: resourceUuid,
-                         ownerUuid: '',
-                         kind: ResourceKind.NONE,
-                         menuKind
+                         name: resource.name,
+                         uuid: resource.uuid,
+                         ownerUuid: resource.ownerUuid,
+                         isTrashed: ('isTrashed' in resource) ? resource.isTrashed: false,
+                         kind: resource.kind,
+                         menuKind,
+                         description: resource.description,
                      }));
                  }
                  this.props.dispatch<any>(loadDetailsPanel(resourceUuid));
index c174bca4c1060cf262661ea728faf6de4f8aa3b5,7e845d6cc8a5ebb71f40e930bda85a7eafa65dc9..1b7185deb1a747d661d82078925016fd88dad37a
@@@ -25,16 -25,18 +25,18 @@@ import { Dispatch } from 'redux'
  import {
      openContextMenu,
      resourceUuidToContextMenuKind
 -} from '~/store/context-menu/context-menu-actions';
 -import { loadDetailsPanel } from '~/store/details-panel/details-panel-action';
 -import { navigateTo } from '~/store/navigation/navigation-action';
 -import { ContainerRequestState } from "~/models/container-request";
 -import { RootState } from '~/store/store';
 -import { DataTableDefaultView } from '~/components/data-table-default-view/data-table-default-view';
 -import { createTree } from '~/models/tree';
 -import { getSimpleObjectTypeFilters } from '~/store/resource-type-filters/resource-type-filters';
 -import { PUBLIC_FAVORITE_PANEL_ID } from '~/store/public-favorites-panel/public-favorites-action';
 -import { PublicFavoritesState } from '~/store/public-favorites/public-favorites-reducer';
 -import { getResource, ResourcesState } from '~/store/resources/resources';
 -import { GroupContentsResource } from '~/services/groups-service/groups-service';
 +} from 'store/context-menu/context-menu-actions';
 +import { loadDetailsPanel } from 'store/details-panel/details-panel-action';
 +import { navigateTo } from 'store/navigation/navigation-action';
 +import { ContainerRequestState } from "models/container-request";
 +import { RootState } from 'store/store';
 +import { DataTableDefaultView } from 'components/data-table-default-view/data-table-default-view';
 +import { createTree } from 'models/tree';
 +import { getSimpleObjectTypeFilters } from 'store/resource-type-filters/resource-type-filters';
 +import { PUBLIC_FAVORITE_PANEL_ID } from 'store/public-favorites-panel/public-favorites-action';
 +import { PublicFavoritesState } from 'store/public-favorites/public-favorites-reducer';
++import { getResource, ResourcesState } from 'store/resources/resources';
++import { GroupContentsResource } from 'services/groups-service/groups-service';
  
  type CssRules = "toolbar" | "button";