{"version":3,"file":"static/js/sections-embed-longpage-Longpage.9dbc20507680aae255a0.js","mappings":"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","sources":["components/SectionComponents/embed/HTMLEmbed.tsx","components/SectionComponents/embed/longpage/Longpage.tsx","components/SectionComponents/helpers/DangerouslySetInnerHTMLHelper.ts","stateManagement/atoms/admin.ts"],"sourcesContent":["import React, { useEffect } from 'react';\nimport {\n addScriptsToDOM,\n removeScriptTags,\n removeLinkTags,\n addLinksToDOM,\n} from '../helpers/DangerouslySetInnerHTMLHelper';\nimport { isEditingAtom } from '@atoms/admin';\nimport { useAtom } from 'jotai';\nimport { Text } from '@web-for-marketing/react-ui';\nimport { Grid } from '@mui/material';\n\ninterface HTMLEmbedProps {\n html: string;\n}\n\nexport function HTMLEmbed({ html }: HTMLEmbedProps): JSX.Element {\n const [isEditing] = useAtom(isEditingAtom);\n const { sanitizedHtml: htmlWithoutScripts, scriptTags } = removeScriptTags(html);\n const { sanitizedHtml, linkTags } = removeLinkTags(htmlWithoutScripts);\n\n useEffect(() => {\n if (!isEditing) {\n addLinksToDOM(linkTags);\n addScriptsToDOM(scriptTags);\n document.documentElement.style.fontSize = 'initial';\n }\n }, [scriptTags, isEditing, linkTags]);\n\n return isEditing ? (\n \n Embedded pages are not available to preview.\n \n ) : (\n
\n );\n}\n","import React from 'react';\nimport html from './index.html';\nimport { HTMLEmbed } from '../HTMLEmbed';\n\nexport default function Longpage(): JSX.Element {\n return ;\n}\n","import { isInternalOrBaseLink } from '@helpers/string';\n\nexport const getDangerouslySetInnerHTML = (\n html: string,\n baseUrl: string,\n parseLinks?: boolean,\n hideLinks?: boolean\n): string => {\n if (parseLinks) {\n const spliHtml = html.split(' {\n if (index === 0) {\n return str;\n }\n const match = str.match(/href=\"(.*?)\"/);\n if (match) {\n let linkAttributes = '';\n if (hideLinks) {\n linkAttributes += ' tabIndex=\"-1\"';\n }\n if (match[1] && !isInternalOrBaseLink(match[1], baseUrl)) {\n linkAttributes += ' target=\"_blank\" rel=\"noopener noreferrer\"';\n }\n return ` {\n const domParser = new DOMParser();\n const parsedScriptTags = domParser.parseFromString(scriptTags, 'text/html').querySelectorAll('script');\n\n parsedScriptTags.forEach((scriptTag) => {\n const newScriptTag = document.createElement('script');\n newScriptTag.innerHTML = scriptTag.innerHTML;\n const attributes = scriptTag.attributes;\n for (let i = 0; i < attributes.length; i++) {\n const { name, value } = attributes[i];\n newScriptTag.setAttribute(name, value);\n }\n document.body.appendChild(newScriptTag);\n });\n};\n\nexport const addLinksToDOM = (linkTags: string): void => {\n const domParser = new DOMParser();\n const parsedLinkTags = domParser.parseFromString(linkTags, 'text/html').querySelectorAll('link');\n\n parsedLinkTags.forEach((linkTag) => {\n const newLinkTag = document.createElement('link');\n newLinkTag.innerHTML = linkTag.innerHTML;\n const attributes = linkTag.attributes;\n for (let i = 0; i < attributes.length; i++) {\n const { name, value } = attributes[i];\n newLinkTag.setAttribute(name, value);\n }\n document.head.appendChild(newLinkTag);\n });\n};\n\nexport const removeScriptTags = (html: string): { sanitizedHtml: string; scriptTags: string } => {\n const scriptTags: string[] = [];\n\n const sanitizedHtml = html.replace(\n /]*<\\/script>)(?:(?!\\/\\/)(?!\\/\\*)[^'\"]|\"(?:\\\\.|[^\"\\\\])*\"|'(?:\\\\.|[^'\\\\])*'|\\/\\/.*(?:\\n)|\\/\\*(?:(?:.|\\s))*?\\*\\/)*?<\\/script>/gi,\n (match) => {\n scriptTags.push(match);\n return '';\n }\n );\n\n return { sanitizedHtml, scriptTags: scriptTags.join('') };\n};\n\nexport const removeLinkTags = (html: string): { sanitizedHtml: string; linkTags: string } => {\n const linkTags: string[] = [];\n\n const sanitizedHtml = html.replace(/]*?(?:\\/>|>)/gi, (match) => {\n linkTags.push(match);\n return '';\n });\n\n return { sanitizedHtml, linkTags: linkTags.join('') };\n};\n","import { atom } from 'jotai';\nimport { getLanguageByCode } from '@helpers/languages';\nimport { LanguageCode } from '@models/languageCode';\n\nexport const isEditorExpandedAtom = atom(false);\n\nexport const isNavbarExpandedAtom = atom(false);\n\nexport const enableNavbarExpansionAtom = atom(true);\n\nexport const adminLanguageAtom = atom(getLanguageByCode(LanguageCode.en));\n\nexport const isEditingAtom = atom(false);\n\nexport const isSideNavbarVisibleAtom = atom(true);\n"],"names":["HTMLEmbed","html","isEditing","useAtom","isEditingAtom","sanitizedHtml","htmlWithoutScripts","scriptTags","removeScriptTags","linkTags","removeLinkTags","useEffect","addLinksToDOM","addScriptsToDOM","document","documentElement","style","fontSize","_jsx","Grid","container","alignItems","justifyContent","children","Text","dangerouslySetInnerHTML","__html","Longpage","getDangerouslySetInnerHTML","baseUrl","parseLinks","hideLinks","split","map","str","index","match","linkAttributes","isInternalOrBaseLink","join","DOMParser","parseFromString","querySelectorAll","forEach","scriptTag","newScriptTag","createElement","innerHTML","attributes","i","length","name","value","setAttribute","body","appendChild","linkTag","newLinkTag","head","replace","push","isEditorExpandedAtom","atom","isNavbarExpandedAtom","enableNavbarExpansionAtom","adminLanguageAtom","getLanguageByCode","LanguageCode","en","isSideNavbarVisibleAtom"],"sourceRoot":""}