UNPKG

nehan

Version:

Html layout engine for paged-media written in Typescript

35 lines 1.1 kB
import { Config, Display, WhiteSpace, PseudoElement, } from './public-api'; export class ValidBlockSelector { constructor() { } visit(element) { if (element.isTextElement()) { return true; } if (Config.ignoredTags.includes(element.tagName)) { return false; } if (["br", "hr", "img", "wbr", "video", "iframe"].includes(element.tagName)) { return true; } if (PseudoElement.isPseudoElement(element)) { return true; } const display = Display.load(element); if (display.isNone()) { return false; } if (!display.isBlockLevel()) { return true; } element.acceptChildFilter(this); if (element.childNodes.length === 0) { return false; } if (element.childNodes.every(child => WhiteSpace.isWhiteSpaceElement(child))) { return false; } return true; } } ValidBlockSelector.instance = new ValidBlockSelector(); //# sourceMappingURL=child-node-filter.js.map