@@ -10,7 +10,7 @@ import {
1010 Tab ,
1111 Tabs ,
1212} from "@mui/material" ;
13- import { downloadResource } from "../../utils/common" ;
13+ import { authCheck , downloadResource } from "../../utils/common" ;
1414import { PreviewConfiguration , RootState } from "../../types/data" ;
1515import { useParams , useSearchParams } from "react-router-dom" ;
1616import { useDispatch , useSelector } from "react-redux" ;
@@ -95,9 +95,6 @@ export const File = (): JSX.Element => {
9595 ) ;
9696 const folderPath = useSelector ( ( state : RootState ) => state . folder . folderPath ) ;
9797 const fileRole = useSelector ( ( state : RootState ) => state . file . fileRole ) ;
98- const datasetRole = useSelector (
99- ( state : RootState ) => state . dataset . datasetRole
100- ) ;
10198 const storageType = useSelector (
10299 ( state : RootState ) => state . file . fileSummary . storage_type
103100 ) ;
@@ -345,19 +342,18 @@ export const File = (): JSX.Element => {
345342 { ...a11yProps ( 2 ) }
346343 disabled = { false }
347344 />
348- < AuthWrapper
349- currRole = { datasetRole . role }
350- allowedRoles = { [ "owner" , "editor" ] }
351- >
352- < Tab
353- icon = { < BuildIcon /> }
354- iconPosition = "start"
355- sx = { TabStyle }
356- label = "Analysis"
357- { ...a11yProps ( 3 ) }
358- disabled = { false }
359- />
360- </ AuthWrapper >
345+ < Tab
346+ icon = { < BuildIcon /> }
347+ iconPosition = "start"
348+ sx = {
349+ authCheck ( adminMode , fileRole , [ "owner" , "editor" , "uploader" ] )
350+ ? TabStyle
351+ : { display : "none" }
352+ }
353+ label = "Analysis"
354+ { ...a11yProps ( 3 ) }
355+ disabled = { false }
356+ />
361357 < Tab
362358 icon = { < HistoryIcon /> }
363359 iconPosition = "start"
@@ -415,7 +411,10 @@ export const File = (): JSX.Element => {
415411 resourceId = { fileId }
416412 publicView = { false }
417413 />
418- { fileRole !== undefined && fileRole !== "viewer" ? (
414+ < AuthWrapper
415+ currRole = { fileRole }
416+ allowedRoles = { [ "owner" , "editor" , "uploader" ] }
417+ >
419418 < Box textAlign = "center" >
420419 < Button
421420 variant = "contained"
@@ -427,9 +426,7 @@ export const File = (): JSX.Element => {
427426 Add Metadata
428427 </ Button >
429428 </ Box >
430- ) : (
431- < > </ >
432- ) }
429+ </ AuthWrapper >
433430 </ >
434431 ) }
435432 </ TabPanel >
@@ -442,14 +439,9 @@ export const File = (): JSX.Element => {
442439 version = { fileSummary . version_num }
443440 />
444441 </ TabPanel >
445- < AuthWrapper
446- currRole = { datasetRole . role }
447- allowedRoles = { [ "owner" , "editor" ] }
448- >
449- < TabPanel value = { selectedTabIndex } index = { 3 } >
450- < Listeners fileId = { fileId } datasetId = { datasetId } />
451- </ TabPanel >
452- </ AuthWrapper >
442+ < TabPanel value = { selectedTabIndex } index = { 3 } >
443+ < Listeners fileId = { fileId } datasetId = { datasetId } />
444+ </ TabPanel >
453445 < TabPanel value = { selectedTabIndex } index = { 4 } >
454446 < ExtractionHistoryTab fileId = { fileId } />
455447 </ TabPanel >
0 commit comments