From b38c7cfb4d68785f130e0c674b4139f1f9fc0a0c Mon Sep 17 00:00:00 2001 From: James Tsay <65299136+TsayAdobe@users.noreply.github.com> Date: Fri, 13 Dec 2024 12:22:04 -0800 Subject: [PATCH] MWPW-163902 Fix edge snippet fallback (#916) * Fix edge snippet fallback --- .../dc-converter-widget/dc-converter-widget.js | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/acrobat/blocks/dc-converter-widget/dc-converter-widget.js b/acrobat/blocks/dc-converter-widget/dc-converter-widget.js index 5a0ef3b3..bc3eed82 100644 --- a/acrobat/blocks/dc-converter-widget/dc-converter-widget.js +++ b/acrobat/blocks/dc-converter-widget/dc-converter-widget.js @@ -234,7 +234,7 @@ export default async function init(element) { const preRenderDropZone = !isLimitExhausted && !isRedirection; const INLINE_SNIPPET = widget.querySelector(':scope > section#edge-snippet'); - if (INLINE_SNIPPET) { + if (INLINE_SNIPPET && INLINE_SNIPPET.childNodes.length > 0) { if (!isLimitExhausted) { widgetContainer.dataset.rendered = 'true'; widgetContainer.appendChild(...INLINE_SNIPPET.childNodes); @@ -247,11 +247,16 @@ export default async function init(element) { case 200: { const template = await response.text(); if (!('rendered' in widgetContainer.dataset)) { - widgetContainer.dataset.rendered = 'true'; - const doc = new DOMParser().parseFromString(template, 'text/html'); - document.head.appendChild(doc.head.getElementsByTagName('Style')[0]); - widgetContainer.appendChild(doc.body.firstElementChild); - performance.mark('milo-insert-snippet'); + try { + widgetContainer.dataset.rendered = 'true'; + const doc = new DOMParser().parseFromString(template, 'text/html'); + document.head.appendChild(doc.head.getElementsByTagName('Style')[0]); + widgetContainer.appendChild(doc.body.firstElementChild); + performance.mark('milo-insert-snippet'); + } catch (e) { + // eslint-disable-next-line no-console + console.error(`Error: ${e.message}`); + } } break; }