diff --git a/plugins/techdocs/src/reader/components/TechDocsReaderPageContent/dom.tsx b/plugins/techdocs/src/reader/components/TechDocsReaderPageContent/dom.tsx index 901a2f56a9..3656d22326 100644 --- a/plugins/techdocs/src/reader/components/TechDocsReaderPageContent/dom.tsx +++ b/plugins/techdocs/src/reader/components/TechDocsReaderPageContent/dom.tsx @@ -187,7 +187,7 @@ export const useTechDocsReaderDom = ( const postRender = useCallback( async (transformedElement: Element) => transformer(transformedElement, [ - handleMetaRedirects(entityRef.name), + handleMetaRedirects(navigate, entityRef.name), scrollIntoNavigation(), copyToClipboard(theme), addLinkClickListener({ diff --git a/plugins/techdocs/src/reader/transformers/handleMetaRedirects.tsx b/plugins/techdocs/src/reader/transformers/handleMetaRedirects.tsx index 99adbee1bd..04b7b27ba2 100644 --- a/plugins/techdocs/src/reader/transformers/handleMetaRedirects.tsx +++ b/plugins/techdocs/src/reader/transformers/handleMetaRedirects.tsx @@ -20,7 +20,10 @@ import React from 'react'; import { renderReactElement } from './renderReactElement'; import { TechDocsRedirectNotification } from '../components/TechDocsRedirectNotification'; -export const handleMetaRedirects = (entityName: string): Transformer => { +export const handleMetaRedirects = ( + navigate: (to: string) => void, + entityName: string, +): Transformer => { const redirectAfterMs = 3000; const determineRedirectURL = (metaUrl: string) => { @@ -52,6 +55,7 @@ export const handleMetaRedirects = (entityName: string): Transformer => { if (!metaContentParameters || metaContentParameters.length < 2) { return dom; } + const metaUrl = metaContentParameters[1]; const redirectURL = determineRedirectURL(metaUrl); @@ -65,9 +69,7 @@ export const handleMetaRedirects = (entityName: string): Transformer => { renderReactElement( { - window.location.href = redirectURL; - }} + handleButtonClick={() => navigate(redirectURL)} autoHideDuration={redirectAfterMs} />, container, @@ -75,7 +77,7 @@ export const handleMetaRedirects = (entityName: string): Transformer => { document.body.appendChild(container); setTimeout(() => { - window.location.href = redirectURL; + navigate(redirectURL); }, redirectAfterMs); return dom;