21357: fixed public fave filtering for admin Arvados-DCO-1.1-Signed-off-by: Lisa...
authorLisa Knox <lisaknox83@gmail.com>
Fri, 8 Mar 2024 19:37:02 +0000 (14:37 -0500)
committerLisa Knox <lisaknox83@gmail.com>
Fri, 8 Mar 2024 19:37:02 +0000 (14:37 -0500)
services/workbench2/src/components/tree/tree.tsx
services/workbench2/src/store/side-panel-tree/side-panel-tree-actions.ts

index 11a9540290cc21eb9aa3995f93124608775f0254..1f7aa8326d2774720d782469cf27bdfb7af01846 100644 (file)
@@ -252,7 +252,7 @@ const FlatTree = (props: FlatTreeProps) =>
     >
         {
             (props.it.items || [])
-                .map((item: any) => <div key={item.id} data-id={item.id}
+                .map((item: any, index: number) => <div key={item.id || index} data-id={item.id}
                     className={classnames(props.classes.childItem, { [props.classes.active]: item.active })}
                     style={{ paddingLeft: `${item.depth * props.levelIndentation}px` }}>
                     {isInFavoritesTree(props.it) ? 
index 8b8b7cc7d10c195ad21e3f19f7a8dc84e9b772cd..a136e2c1e40a867a5bab8286466a360cfca93055 100644 (file)
@@ -201,9 +201,11 @@ export const loadPublicFavoritesTree = () => async (dispatch: Dispatch, getState
             .getFilters()
     });
 
-    const filtereditems = groupItems.items.concat(collectionItems.items).concat(processItems.items);
+    const responseItems = groupItems.items.concat(collectionItems.items).concat(processItems.items);
 
-    for(const item of filtereditems) {
+    const filteredItems = items.filter(item => responseItems.some(responseItem => responseItem.uuid === item.headUuid));
+
+    for(const item of filteredItems) {
         const verifiedName = await verifyAndUpdateLinkName(item, dispatch, getState, services);
         item.name = verifiedName;
     }
@@ -212,11 +214,11 @@ export const loadPublicFavoritesTree = () => async (dispatch: Dispatch, getState
         treePickerActions.LOAD_TREE_PICKER_NODE_SUCCESS({
             id: SidePanelTreeCategory.PUBLIC_FAVORITES,
             pickerId: SIDE_PANEL_TREE,
-            nodes: filtereditems.map(item => initTreeNode({ id: item.headUuid, value: item })),
+            nodes: filteredItems.map(item => initTreeNode({ id: item.headUuid, value: item })),
         })
     );
 
-    dispatch(resourcesActions.SET_RESOURCES(filtereditems));
+    dispatch(resourcesActions.SET_RESOURCES(responseItems));
 };
 
 export const activateSidePanelTreeItem = (id: string) =>