[arvados-workbench2] updated: 2.7.0-223-g85899f6c

git repository hosting git at public.arvados.org
Tue Nov 28 14:40:26 UTC 2023


Summary of changes:
 src/components/multiselect-toolbar/MultiselectToolbar.tsx       | 8 +++++---
 src/components/multiselect-toolbar/ms-toolbar-action-filters.ts | 4 +++-
 2 files changed, 8 insertions(+), 4 deletions(-)

       via  85899f6ce61b01a87c09af6d0983d337a50d4955 (commit)
      from  e7a3f670ea3fa984fb704b204772ba98a5cf4451 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.


commit 85899f6ce61b01a87c09af6d0983d337a50d4955
Author: Lisa Knox <lisaknox83 at gmail.com>
Date:   Tue Nov 28 09:40:18 2023 -0500

    21128: readonly projects works Arvados-DCO-1.1-Signed-off-by: Lisa Knox <lisa.knox at curii.com>

diff --git a/src/components/multiselect-toolbar/MultiselectToolbar.tsx b/src/components/multiselect-toolbar/MultiselectToolbar.tsx
index 8a7c0ab4..689384da 100644
--- a/src/components/multiselect-toolbar/MultiselectToolbar.tsx
+++ b/src/components/multiselect-toolbar/MultiselectToolbar.tsx
@@ -22,6 +22,7 @@ import { copyToClipboardAction } from "store/open-in-new-tab/open-in-new-tab.act
 import { ContainerRequestResource } from "models/container-request";
 import { FavoritesState } from "store/favorites/favorites-reducer";
 import { resourceIsFrozen } from "common/frozen-resources";
+import { ProjectResource } from "models/project";
 
 type CssRules = "root" | "button";
 
@@ -60,7 +61,7 @@ export const MultiselectToolbar = connect(
     withStyles(styles)((props: MultiselectToolbarProps & WithStyles<CssRules>) => {
         const { classes, checkedList, selectedUuid: singleSelectedUuid, iconProps } = props;
         const singleProjectKind = singleSelectedUuid ? resourceSubKind(singleSelectedUuid, iconProps.resources) : ''
-        const currentResourceKinds = singleProjectKind ? singleProjectKind :Array.from(selectedToKindSet(checkedList));
+        const currentResourceKinds = singleProjectKind ? singleProjectKind : Array.from(selectedToKindSet(checkedList));
 
         const currentPathIsTrash = window.location.pathname === "/trash";
 
@@ -68,7 +69,7 @@ export const MultiselectToolbar = connect(
         const actions =
             currentPathIsTrash && selectedToKindSet(checkedList).size
                 ? [msToggleTrashAction]
-                : selectActionsByKind([currentResourceKinds] as string[], multiselectActionsFilters)
+                : selectActionsByKind(currentResourceKinds as string[], multiselectActionsFilters)
                 .filter((action) => (singleSelectedUuid === null ? action.isForMulti : true));
 
         return (
@@ -149,9 +150,10 @@ const resourceSubKind = (uuid: string, resources: ResourcesState) => {
     switch (resource.kind) {
         case ResourceKind.PROJECT:
             if(resourceIsFrozen(resource, resources)) return [msResourceKind.PROJECT_FROZEN]
+            if((resource as ProjectResource).canWrite === false) return [msResourceKind.PROJECT_READONLY]
             return [msResourceKind.PROJECT]
         default:
-            return resource.kind
+            return [resource.kind]
     }
 }; 
 
diff --git a/src/components/multiselect-toolbar/ms-toolbar-action-filters.ts b/src/components/multiselect-toolbar/ms-toolbar-action-filters.ts
index 4f4a60b8..de6cbc61 100644
--- a/src/components/multiselect-toolbar/ms-toolbar-action-filters.ts
+++ b/src/components/multiselect-toolbar/ms-toolbar-action-filters.ts
@@ -66,6 +66,7 @@ export enum msResourceKind {
     PROCESS = "arvados#containerRequest",
     PROJECT = "arvados#group",
     PROJECT_FROZEN = "arvados#group_frozen",
+    PROJECT_READONLY = "arvados#group_readonly",
     REPOSITORY = "arvados#repository",
     SSH_KEY = "arvados#authorizedKeys",
     KEEP_SERVICE = "arvados#keepService",
@@ -75,13 +76,14 @@ export enum msResourceKind {
     NONE = "arvados#none"
 }
 
-const { COLLECTION, PROCESS, PROJECT, PROJECT_FROZEN, WORKFLOW } = msResourceKind;
+const { COLLECTION, PROCESS, PROJECT, PROJECT_FROZEN, PROJECT_READONLY, WORKFLOW } = msResourceKind;
 
 export const multiselectActionsFilters: TMultiselectActionsFilters = {
     [COLLECTION]: [msCollectionActionSet, allActionNames(msCollectionActionSet)],
     [PROCESS]: [msProcessActionSet, processResourceMSActionsFilter],
     [PROJECT]: [msProjectActionSet, projectMSActionsFilter],
     [PROJECT_FROZEN]: [msProjectActionSet, allActionNames(msFrozenActionSet)],
+    [PROJECT_READONLY]: [msProjectActionSet, allActionNames(msReadOnlyProjectActionSet)],
     [WORKFLOW]: [msWorkflowActionSet, workflowMSActionFilter]
 };
 

-----------------------------------------------------------------------


hooks/post-receive
-- 




More information about the arvados-commits mailing list