From 4ce58318da0bd4b64939d9ed348102a418b2bf40 Mon Sep 17 00:00:00 2001 From: Gabriel Dugny Date: Fri, 1 Aug 2025 14:47:56 +0200 Subject: [PATCH] fix(techdocs): support dompurify 3.2.6 Element.tagName is uppercased, see https://developer.mozilla.org/fr/docs/Web/API/Element/tagName Signed-off-by: Gabriel Dugny --- .changeset/stupid-areas-share.md | 5 +++++ plugins/techdocs/src/reader/transformers/html/transformer.ts | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 .changeset/stupid-areas-share.md diff --git a/.changeset/stupid-areas-share.md b/.changeset/stupid-areas-share.md new file mode 100644 index 0000000000..2238f9d942 --- /dev/null +++ b/.changeset/stupid-areas-share.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-techdocs': patch +--- + +Support Techdocs redirect with dompurify 3.2.6+ diff --git a/plugins/techdocs/src/reader/transformers/html/transformer.ts b/plugins/techdocs/src/reader/transformers/html/transformer.ts index 7c341c783e..d4b31a34e5 100644 --- a/plugins/techdocs/src/reader/transformers/html/transformer.ts +++ b/plugins/techdocs/src/reader/transformers/html/transformer.ts @@ -65,7 +65,7 @@ export const useSanitizerTransformer = (): Transformer => { // Only allow http-equiv and content attributes on meta tags. They are required for the redirect feature. DOMPurify.addHook('uponSanitizeAttribute', (currNode, data) => { - if (currNode.tagName !== 'meta') { + if (currNode.tagName !== 'META') { if (data.attrName === 'http-equiv' || data.attrName === 'content') { currNode.removeAttribute(data.attrName); }