X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/e90926e12f0d64e435475a7c9c025df4f824b608..cd7f6fd81788f459642408df05be2daf214ef437:/src/views/process-panel/process-io-card.tsx diff --git a/src/views/process-panel/process-io-card.tsx b/src/views/process-panel/process-io-card.tsx index 71b831b44f..7284159ebf 100644 --- a/src/views/process-panel/process-io-card.tsx +++ b/src/views/process-panel/process-io-card.tsx @@ -24,6 +24,7 @@ import { Paper, Grid, Chip, + CircularProgress, } from '@material-ui/core'; import { ArvadosTheme } from 'common/custom-theme'; import { CloseIcon, ImageIcon, InputIcon, ImageOffIcon, OutputIcon, MaximizeIcon } from 'components/icon/icon'; @@ -192,7 +193,7 @@ export enum ProcessIOCardType { export interface ProcessIOCardDataProps { process: Process; label: ProcessIOCardType; - params: ProcessIOParameter[]; + params?: ProcessIOParameter[]; raw?: any; mounts?: InputCollectionMount[]; outputUuid?: string; @@ -251,7 +252,10 @@ export const ProcessIOCard = withStyles(styles)(connect(null, mapDispatchToProps {mainProcess ? (<> - {params.length ? + {params === undefined && + + } + {params && params.length > 0 && <> @@ -263,12 +267,12 @@ export const ProcessIOCard = withStyles(styles)(connect(null, mapDispatchToProps {mainProcTabState === 1 &&
} - : - - - - } + } + {params && params.length === 0 && + + } ) : + // Subprocess (<> {((mounts && mounts.length) || outputUuid) ? <> @@ -553,9 +557,14 @@ export const getIOParamDisplayValue = (auth: AuthState, input: CommandInputParam } }; +/* + * @returns keep url without keep: prefix + */ const getKeepUrl = (file: File | Directory, pdh?: string): string => { const isKeepUrl = file.location?.startsWith('keep:') || false; - const keepUrl = isKeepUrl ? file.location : pdh ? `keep:${pdh}/${file.location}` : file.location; + const keepUrl = isKeepUrl ? + file.location?.replace('keep:', '') : + pdh ? `${pdh}/${file.location}` : file.location; return keepUrl || ''; }; @@ -569,7 +578,7 @@ const KeepUrlBase = withStyles(styles)(({auth, res, pdh, classes}: KeepUrlProps const keepUrl = getKeepUrl(res, pdh); const pdhUrl = keepUrl ? keepUrl.split('/').slice(0, 1)[0] : ''; // Passing a pdh always returns a relative wb2 collection url - const pdhWbPath = getNavUrl(pdhUrl.replace('keep:', ''), auth); + const pdhWbPath = getNavUrl(pdhUrl, auth); return pdhUrl && pdhWbPath ? {pdhUrl} : <>; @@ -582,18 +591,18 @@ const KeepUrlPath = withStyles(styles)(({auth, res, pdh, classes}: KeepUrlProps const keepUrlPathNav = getKeepNavUrl(auth, res, pdh); return keepUrlPath && keepUrlPathNav ? - handleClick(keepUrlPathNav)}>{keepUrlPath} : + {keepUrlPath} : // Show No value for root collection io that lacks path part ; }); const getKeepNavUrl = (auth: AuthState, file: File | Directory, pdh?: string): string => { - let keepUrl = getKeepUrl(file, pdh).replace('keep:', ''); + let keepUrl = getKeepUrl(file, pdh); return (getInlineFileUrl(`${auth.config.keepWebServiceUrl}/c=${keepUrl}?api_token=${auth.apiToken}`, auth.config.keepWebServiceUrl, auth.config.keepWebInlineServiceUrl)); }; const getImageUrl = (auth: AuthState, file: File, pdh?: string): string => { - const keepUrl = getKeepUrl(file, pdh).replace('keep:', ''); + const keepUrl = getKeepUrl(file, pdh); return getInlineFileUrl(`${auth.config.keepWebServiceUrl}/c=${keepUrl}?api_token=${auth.apiToken}`, auth.config.keepWebServiceUrl, auth.config.keepWebInlineServiceUrl); };