diff --git a/src/core/components/operation-tag.jsx b/src/core/components/operation-tag.jsx index 1e71c587..b656714a 100644 --- a/src/core/components/operation-tag.jsx +++ b/src/core/components/operation-tag.jsx @@ -4,6 +4,7 @@ import ImPropTypes from "react-immutable-proptypes" import Im from "immutable" import { createDeepLinkPath, escapeDeepLinkPath, sanitizeUrl } from "core/utils" import { buildUrl } from "core/utils/url" +import { isFunc } from "core/utils" export default class OperationTag extends React.Component { @@ -55,8 +56,11 @@ export default class OperationTag extends React.Component { let tagDescription = tagObj.getIn(["tagDetails", "description"], null) let tagExternalDocsDescription = tagObj.getIn(["tagDetails", "externalDocs", "description"]) - let rawTagExternalDocsUrl = tagObj.getIn(["tagDetails", "externalDocs", "url"]) - let tagExternalDocsUrl = buildUrl( rawTagExternalDocsUrl, specUrl, {selectedServer: oas3Selectors.selectedServer()} ) + let rawTagExternalDocsUrl = tagObj.getIn(["tagDetails", "externalDocs", "url"]) + let tagExternalDocsUrl + if (isFunc(oas3Selectors) && isFunc(oas3Selectors.selectedServer)) { + tagExternalDocsUrl = buildUrl( rawTagExternalDocsUrl, specUrl, { selectedServer: oas3Selectors.selectedServer() } ) + } let isShownKey = ["operations-tag", tag] let showTag = layoutSelectors.isShown(isShownKey, docExpansion === "full" || docExpansion === "list")