X-Git-Url: https://git.arvados.org/arvados-workbench2.git/blobdiff_plain/b6ac7fe88d347582d39fffa002e300af222c578f..5a2f4597393f94b9fa7984f4445d4b599c139f27:/src/views-components/context-menu/actions/collection-file-viewer-action.tsx diff --git a/src/views-components/context-menu/actions/collection-file-viewer-action.tsx b/src/views-components/context-menu/actions/collection-file-viewer-action.tsx index 27a65018..f736f0bf 100644 --- a/src/views-components/context-menu/actions/collection-file-viewer-action.tsx +++ b/src/views-components/context-menu/actions/collection-file-viewer-action.tsx @@ -7,7 +7,7 @@ import { RootState } from "../../../store/store"; import { FileViewerAction } from 'views-components/context-menu/actions/file-viewer-action'; import { getNodeValue } from "models/tree"; import { ContextMenuKind } from 'views-components/context-menu/context-menu'; -import { getInlineFileUrl, sanitizeToken } from "./helpers"; +import { getInlineFileUrl, sanitizeToken, isInlineFileUrlSafe } from "./helpers"; const mapStateToProps = (state: RootState) => { const { resource } = state.contextMenu; @@ -18,7 +18,12 @@ const mapStateToProps = (state: RootState) => { ContextMenuKind.COLLECTION_DIRECTORY_ITEM, ContextMenuKind.READONLY_COLLECTION_DIRECTORY_ITEM ].indexOf(resource.menuKind as ContextMenuKind) > -1) { const file = getNodeValue(resource.uuid)(state.collectionPanelFiles); - if (file) { + const shouldShowInlineUrl = isInlineFileUrlSafe( + file ? file.url : "", + state.auth.config.keepWebServiceUrl, + state.auth.config.keepWebInlineServiceUrl + ) || state.auth.config.clusterConfig.Collections.TrustAllContent; + if (file && shouldShowInlineUrl) { const fileUrl = sanitizeToken(getInlineFileUrl( file.url, state.auth.config.keepWebServiceUrl,