UNPKG

image-exporter

Version:

Easily download one or more DOM elements as images

44 lines (36 loc) 1.29 kB
import { log } from "../logger"; /** * cleanUpCorsProxy * * Restores the CSS and images to their original state. */ export async function cleanUpCorsProxy() { await restoreCSS(); await restoreImages(); } async function restoreCSS() { const styleElements = document.querySelectorAll("style[original-link-element]"); for (let styleElement of styleElements) { const originalLinkElementHTML = decodeURIComponent( styleElement.getAttribute("original-link-element")! ); // Create a temporary container to parse the HTML string const tempContainer = document.createElement("div"); tempContainer.innerHTML = originalLinkElementHTML; // Insert the parsed HTML before the style element styleElement.parentNode!.insertBefore(tempContainer.firstChild!, styleElement); styleElement.remove(); log.verbose("Restored: ", originalLinkElementHTML); } } async function restoreImages() { const imageElements = document.querySelectorAll( "img[original-src]" ) as NodeListOf<HTMLImageElement>; for (let imageElement of imageElements) { const originalSrc = imageElement.getAttribute("original-src")!; imageElement.src = originalSrc; imageElement.removeAttribute("original-src"); log.verbose("Restored: ", originalSrc); } }