Prepare for PR to html2canvas repo

This commit is contained in:
Yuri Papouski 2022-09-09 13:56:49 +00:00
parent 313bd4e4c6
commit 3d559c79df
3 changed files with 5 additions and 16 deletions

View File

@ -22,6 +22,5 @@
"@typescript-eslint/no-unused-vars": "off",
"@typescript-eslint/class-name-casing": "off",
"prettier/prettier": "error"
},
"root": true
}
}

View File

@ -29,8 +29,6 @@ export interface CloneOptions {
ignoreElements?: (element: Element) => boolean;
onclone?: (document: Document, element: HTMLElement) => void;
allowTaint?: boolean;
hide_selector?: string;
masked_class?: string;
}
export interface WindowOptions {
@ -276,21 +274,15 @@ export class DocumentCloner {
}
appendChildNode(clone: HTMLElement | SVGElement, child: Node, copyStyles: boolean): void {
const {ignoreElements, hide_selector, masked_class = ''} = this.options;
if (
!isElementNode(child) ||
(!isScriptElement(child) &&
!child.hasAttribute(IGNORE_ATTRIBUTE) &&
(typeof ignoreElements !== 'function' || !ignoreElements(child)))
(typeof this.options.ignoreElements !== 'function' || !this.options.ignoreElements(child)))
) {
const clonedNode = this.cloneNode(child, copyStyles);
if (hide_selector && isElementNode(clonedNode) && clonedNode.matches(hide_selector)) {
if (isImageElement(clonedNode)) {
clonedNode.style.visibility = 'hidden';
}
clonedNode.classList.add(masked_class);
if (!this.options.copyStyles || !isElementNode(child) || !isStyleElement(child)) {
clone.appendChild(this.cloneNode(child, copyStyles));
}
clone.appendChild(clonedNode);
}
}

View File

@ -78,9 +78,7 @@ const renderElement = async (element: HTMLElement, opts: Partial<Options>): Prom
onclone: opts.onclone,
ignoreElements: opts.ignoreElements,
inlineImages: foreignObjectRendering,
copyStyles: foreignObjectRendering,
hide_selector: opts.hide_selector,
masked_class: opts.masked_class
copyStyles: foreignObjectRendering
};
context.logger.debug(