SYMBOL INDEX (359 symbols across 64 files) FILE: .github/scripts/classify-issues.js constant CRITICAL_KEYWORDS (line 21) | const CRITICAL_KEYWORDS = [ constant HIGH_PRIORITY_KEYWORDS (line 27) | const HIGH_PRIORITY_KEYWORDS = [ constant LOW_KEYWORDS (line 44) | const LOW_KEYWORDS = [ constant SAFARI_KEYWORDS (line 54) | const SAFARI_KEYWORDS = ['safari', 'ios', 'webkit', 'iphone', 'ipad', 'a... constant FIREFOX_KEYWORDS (line 55) | const FIREFOX_KEYWORDS = ['firefox', 'mozilla', 'gecko']; function classifyPriority (line 61) | function classifyPriority(issue) { function classifyExtra (line 84) | function classifyExtra(issue) { function request (line 98) | function request(method, path, body) { function fetchOpenIssues (line 129) | async function fetchOpenIssues() { function addLabels (line 143) | async function addLabels(issueNumber, labels) { FILE: .github/scripts/update-contributors.js function fetchContributors (line 8) | function fetchContributors() { function buildHTML (line 32) | function buildHTML(contributors) { function updateReadmes (line 45) | function updateReadmes(contributorHTML) { FILE: __tests__/core.cache.test.js function snapshotRefs (line 8) | function snapshotRefs() { function seedSomeData (line 23) | function seedSomeData() { FILE: __tests__/core.capture.more.test.js function decodeSvg (line 8) | function decodeSvg(dataUrl) { function rect (line 21) | function rect(x, y, w, h) { method get (line 513) | get(prop) { FILE: __tests__/core.clone.test.js function runClone (line 13) | async function runClone(node) { FILE: __tests__/exporter.download.test.js constant DATA_PNG (line 8) | const DATA_PNG = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAB... constant DATA_SVG (line 9) | const DATA_SVG = 'data:image/svg+xml;charset=utf-8,' + encodeURIComponen... FILE: __tests__/exporter.toCanvas.more.test.js constant ONE_BY_ONE_PNG (line 8) | const ONE_BY_ONE_PNG = FILE: __tests__/exporter.toCanvas.test.js constant ONE_BY_ONE_PNG (line 11) | const ONE_BY_ONE_PNG = FILE: __tests__/exporter.toImg.test.js constant DATA_PNG (line 11) | const DATA_PNG = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAB... constant DATA_SVG (line 12) | const DATA_SVG = 'data:image/svg+xml;charset=utf-8,' + encodeURIComponen... FILE: __tests__/exporters.jpg-png-svg-webp.test.js constant DATA_PNG (line 4) | const DATA_PNG = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAB... FILE: __tests__/module.fonts.katex.test.js function addLink (line 56) | function addLink(href) { FILE: __tests__/module.fonts.more.more.test.js method blob (line 15) | async blob () { return new Blob([new Uint8Array([0x77, 0x6F, 0x32])], { ... method text (line 16) | async text () { return '' } function addStyle (line 51) | function addStyle (css) { function cleanInjectedStuff (line 58) | function cleanInjectedStuff () { function setDocumentFonts (line 69) | function setDocumentFonts (fontsArray = []) { FILE: __tests__/module.fonts.more.test.js function addLink (line 44) | function addLink(href) { function addStyle (line 51) | function addStyle(css) { method add (line 391) | add(ff) { items.push(ff) } FILE: __tests__/module.fonts.test.js function cleanFontEnvironment (line 6) | function cleanFontEnvironment() { function addStyleTag (line 12) | function addStyleTag(css) { function makeRequired (line 21) | function makeRequired(family, weight='400', style='normal', stretchPct=1... function makeUsedCodepoints (line 26) | function makeUsedCodepoints(text='A') { function setDocumentFonts (line 36) | function setDocumentFonts(fontsArray = []) { FILE: __tests__/module.snapFetch.test.js function importFresh (line 10) | async function importFresh() { constant ORIGIN (line 16) | const ORIGIN = globalThis.location?.origin || 'http://localhost' constant SAME (line 17) | const SAME = `${ORIGIN}/assets/a.css` constant CROSS (line 18) | const CROSS = 'https://cdn.example/x.png' function mockFetchOnce (line 21) | function mockFetchOnce(status = 200, body = 'ok', headers = {}) { function mockFetchNetworkError (line 26) | function mockFetchNetworkError() { function mockFetchTimeoutAware (line 33) | function mockFetchTimeoutAware() { function deferred (line 45) | function deferred() { FILE: __tests__/module.styles.test.js function loadInlineAllStylesFresh (line 4) | async function loadInlineAllStylesFresh() { class MOStub (line 11) | class MOStub { method constructor (line 13) | constructor(/* cb */) { method observe (line 16) | observe() {} method disconnect (line 17) | disconnect() {} method takeRecords (line 18) | takeRecords() { return [] } function freshSession (line 21) | function freshSession() { FILE: __tests__/module.svg.test.js constant SVG_NS (line 4) | const SVG_NS = 'http://www.w3.org/2000/svg' function createGlobalSvg (line 7) | function createGlobalSvg() { function createRootContainer (line 13) | function createRootContainer() { function createLocalUse (line 19) | function createLocalUse(hrefValue) { FILE: __tests__/snapdom.benchmark.js function loadHtml2Canvas (line 10) | async function loadHtml2Canvas() { function setupContainer (line 36) | async function setupContainer() { FILE: __tests__/snapdom.complex.benchmark.js function loadHtml2Canvas (line 9) | async function loadHtml2Canvas() { function setupContainer (line 35) | async function setupContainer() { FILE: __tests__/snapdom.precache.perf.test.js function createContainer (line 11) | function createContainer(size) { function waitForNextFrame (line 66) | function waitForNextFrame() { FILE: __tests__/snapdom.vs.htm2canvas.outputfilesize.test.js function dataUrlBytes (line 6) | function dataUrlBytes(dataUrl) { FILE: __tests__/three-shake.test.js method defineExports (line 84) | async defineExports(ctx) { FILE: __tests__/utils.image.test.js function clearCaches (line 21) | function clearCaches() { method constructor (line 77) | constructor() { setTimeout(() => this.onload && this.onload(), 0) } method src (line 78) | set src(_) {} method decode (line 79) | decode() { return Promise.resolve() } method naturalWidth (line 80) | get naturalWidth() { return 2 } method naturalHeight (line 81) | get naturalHeight() { return 2 } method width (line 82) | get width() { return 2 } method height (line 83) | get height() { return 2 } method crossOrigin (line 84) | set crossOrigin(_) {} method onload (line 85) | set onload(_) {} method onerror (line 86) | set onerror(_) {} method constructor (line 96) | constructor() { setTimeout(() => this.onerror && this.onerror(), 0) } method src (line 97) | set src(_) {} method crossOrigin (line 98) | set crossOrigin(_) {} method onload (line 99) | set onload(_) {} method onerror (line 100) | set onerror(_) {} function expectOkDataURL (line 119) | function expectOkDataURL(r) { function expectOkText (line 128) | function expectOkText(r) { method constructor (line 139) | constructor() { setTimeout(() => this.onload && this.onload(), 0) } method src (line 140) | set src(_) {} method decode (line 141) | decode() { return Promise.resolve() } method naturalWidth (line 142) | get naturalWidth() { return 3 } method naturalHeight (line 143) | get naturalHeight() { return 4 } method crossOrigin (line 144) | set crossOrigin(_) {} method onload (line 145) | set onload(_) {} method onerror (line 146) | set onerror(_) {} FILE: esbuild.config.mjs function buildLegacy (line 27) | async function buildLegacy() { function buildESM (line 44) | async function buildESM() { function buildSubpaths (line 60) | async function buildSubpaths() { function main (line 76) | async function main() { FILE: plugins/html-in-canvas.js constant PLUGIN_NAME (line 10) | const PLUGIN_NAME = 'html-in-canvas' function isDrawElementImageAvailable (line 12) | function isDrawElementImageAvailable() { function htmlInCanvasPlugin (line 25) | function htmlInCanvasPlugin() { FILE: src/api/preCache.js function preCache (line 20) | async function preCache(root = document, options = {}) { FILE: src/api/snapdom.js function plugins (line 12) | function plugins(...defs) { registerPlugins(...defs); return snapdom } constant INTERNAL_TOKEN (line 16) | const INTERNAL_TOKEN = Symbol('snapdom.internal') constant INTERNAL_EXPORT_TOKEN (line 18) | const INTERNAL_EXPORT_TOKEN = Symbol('snapdom.internal.silent') function main (line 40) | async function main(element, userOptions) { function normalizeExportOptions (line 159) | function normalizeExportOptions(type, opts) { function runExport (line 171) | async function runExport(type, opts) { function safariWarmup (line 294) | async function safariWarmup(element, baseOptions) { function hasBackgroundOrMask (line 368) | function hasBackgroundOrMask(el) { FILE: src/core/cache.js constant MAX_IMAGE (line 2) | const MAX_IMAGE = 100 constant MAX_BACKGROUND (line 3) | const MAX_BACKGROUND = 100 constant MAX_RESOURCE (line 4) | const MAX_RESOURCE = 150 constant MAX_BASE_STYLE (line 5) | const MAX_BASE_STYLE = 50 constant MAX_DEFAULT_STYLE (line 6) | const MAX_DEFAULT_STYLE = 30 class EvictingMap (line 12) | class EvictingMap extends Map { method constructor (line 13) | constructor(maxSize = 100, ...args) { method set (line 17) | set(key, value) { function normalizeCachePolicy (line 56) | function normalizeCachePolicy(v) { function applyCachePolicy (line 72) | function applyCachePolicy(policy = 'soft') { FILE: src/core/capture.js function captureDOM (line 49) | async function captureDOM(element, options) { function hasTFBBox (line 363) | function hasTFBBox(el) { FILE: src/core/clone.js function deepClone (line 28) | async function deepClone(node, sessionCache, options) { FILE: src/core/context.js function createContext (line 38) | function createContext(options = {}) { FILE: src/core/exporters.js function normalizeExporter (line 18) | function normalizeExporter(spec) { function registerExporters (line 37) | function registerExporters(...defs) { function getExporter (line 56) | function getExporter(format) { function _exportersMap (line 63) | function _exportersMap() { return new Map(__exporters) } function _clearExporters (line 64) | function _clearExporters() { __exporters.clear() } function runExportHooks (line 86) | async function runExportHooks(ctx, work) { FILE: src/core/plugins.js function normalizePlugin (line 28) | function normalizePlugin(spec) { function registerPlugins (line 46) | function registerPlugins(...defs) { function getContextPlugins (line 65) | function getContextPlugins(context) { function runHook (line 77) | async function runHook(name, context, payload) { function runAll (line 97) | async function runAll(name, context, payload) { function pluginsList (line 113) | function pluginsList() { return __plugins.slice() } function clearPlugins (line 116) | function clearPlugins() { __plugins.length = 0 } function mergePlugins (line 130) | function mergePlugins(localDefs) { function attachSessionPlugins (line 163) | function attachSessionPlugins(context, localDefs, force = false) { function getGlobalPlugins (line 173) | function getGlobalPlugins() { FILE: src/core/prepare.js function prepareClone (line 26) | async function prepareClone(element, options = {}) { FILE: src/exporters/download.js function shareFile (line 12) | async function shareFile(blob, filename) { function download (line 33) | async function download(url, options) { FILE: src/exporters/toBlob.js function toBlob (line 13) | async function toBlob(url, options) { FILE: src/exporters/toCanvas.js function isSvgDataURL (line 13) | function isSvgDataURL(u) { function decodeSvgFromDataURL (line 16) | function decodeSvgFromDataURL(u) { function encodeSvgToDataURL (line 20) | function encodeSvgToDataURL(svgText) { function splitDecls (line 23) | function splitDecls(s) { function boxShadowToDropShadow (line 34) | function boxShadowToDropShadow(value) { function rewriteDeclList (line 61) | function rewriteDeclList(list) { function rewriteCssBlock (line 89) | function rewriteCssBlock(css) { function rewriteSvgBoxShadowToDropShadow (line 92) | function rewriteSvgBoxShadowToDropShadow(svgText) { function maybeConvertBoxShadowForSafari (line 103) | function maybeConvertBoxShadowForSafari(url) { function toCanvas (line 128) | async function toCanvas(url, options) { FILE: src/exporters/toImg.js function toImg (line 11) | async function toImg(url, options) { FILE: src/exporters/toJpg.js function toJpg (line 4) | async function toJpg(elOrUrl, opts = {}) { FILE: src/exporters/toPng.js function toPng (line 10) | async function toPng(elOrUrl, opts = {}) { FILE: src/exporters/toWebp.js function toWebp (line 4) | async function toWebp(elOrUrl, opts = {}) { FILE: src/modules/CSSVar.js constant KEY_PROPS (line 4) | const KEY_PROPS = ['fill', 'stroke', 'color', 'background-color', 'stop-... function getBaselineComputed (line 10) | function getBaselineComputed(tagName, ns) { function resolveCSSVars (line 43) | function resolveCSSVars(sourceEl, cloneEl) { FILE: src/modules/background.js function inlineBackgroundImages (line 31) | async function inlineBackgroundImages(source, clone, styleCache, options... FILE: src/modules/changeCSS.js function freezeSticky (line 14) | function freezeSticky(originalRoot, cloneRoot) { function _toPx (line 98) | function _toPx(v) { function _pathOf (line 104) | function _pathOf(el, root) { function _findByPathIgnoringPlaceholders (line 125) | function _findByPathIgnoringPlaceholders(root, path, phAttr) { function _childrenWithoutPlaceholders (line 140) | function _childrenWithoutPlaceholders(el, phAttr) { FILE: src/modules/counter.js function hasCounters (line 14) | function hasCounters(input) { function unquoteDoubleStrings (line 19) | function unquoteDoubleStrings(s) { function alpha (line 29) | function alpha(n, upper = false) { function roman (line 41) | function roman(n, upper = true) { function formatCounter (line 55) | function formatCounter(value, style) { function buildCounterContext (line 81) | function buildCounterContext(root) { function resolveCountersInContent (line 224) | function resolveCountersInContent(raw, node, ctx) { function deriveCounterCtxForPseudo (line 260) | function deriveCounterCtxForPseudo(node, pseudoStyle, baseCtx) { function resolvePseudoContent (line 330) | function resolvePseudoContent(node, pseudo, baseCtx) { FILE: src/modules/fonts.js function iconToImage (line 22) | async function iconToImage(unicodeChar, fontFamily, fontWeight, fontSize... constant GENERIC_FAMILIES (line 68) | const GENERIC_FAMILIES = new Set([ constant FONT_LIBRARIES (line 74) | const FONT_LIBRARIES = ['katex', 'mathjax', 'mathml'] function pickPrimaryFamily (line 82) | function pickPrimaryFamily(familyList) { function normWeight (line 96) | function normWeight(w) { function normStyle (line 109) | function normStyle(s) { function normStretchPct (line 121) | function normStretchPct(st) { function parseWeightSpec (line 126) | function parseWeightSpec(spec) { function parseStyleSpec (line 137) | function parseStyleSpec(spec) { function parseStretchSpec (line 144) | function parseStretchSpec(spec) { function baseFamilyToken (line 168) | function baseFamilyToken(family) { function isLikelyFontStylesheet (line 177) | function isLikelyFontStylesheet(href, requiredFamilies, allowedDomains =... function familiesFromRequired (line 217) | function familiesFromRequired(required) { function rewriteRelativeUrls (line 231) | function rewriteRelativeUrls(cssText, baseHref) { constant IMPORT_ANY_RE (line 246) | const IMPORT_ANY_RE = /@import\s+(?:url\(\s*(['"]?)([^)"']+)\1\s*\)|(['"... constant MAX_IMPORT_DEPTH (line 248) | const MAX_IMPORT_DEPTH = 4 function inlineImportsAndRewrite (line 258) | async function inlineImportsAndRewrite(cssText, ownerHref, useProxy) { constant URL_RE (line 316) | const URL_RE = /url\((["']?)([^"')]+)\1\)/g constant FACE_RE (line 317) | const FACE_RE = /@font-face[^{}]*\{[^}]*\}/g function parseUnicodeRange (line 320) | function parseUnicodeRange(ur) { function unicodeIntersects (line 349) | function unicodeIntersects(used, ranges) { function extractSrcUrls (line 359) | function extractSrcUrls(srcValue, baseHref) { function inlineUrlsInCssBlock (line 374) | async function inlineUrlsInCssBlock(cssBlock, baseHref, useProxy = '') { function subsetFromRanges (line 408) | function subsetFromRanges(ranges) { function buildSimpleExcluder (line 424) | function buildSimpleExcluder(ex = {}) { function dedupeFontFaces (line 443) | function dedupeFontFaces(cssText) { function buildFontsCacheKey (line 485) | function buildFontsCacheKey(required, exclude, localFonts, useProxy, fon... function collectFacesFromSheet (line 520) | async function collectFacesFromSheet(sheet, baseHref, emitFace, ctx) { function embedCustomFonts (line 601) | async function embedCustomFonts({ function collectUsedFontVariants (line 924) | function collectUsedFontVariants(root) { function collectUsedCodepoints (line 956) | function collectUsedCodepoints(root) { function ensureFontsReady (line 999) | async function ensureFontsReady(families, warmupRepetitions = 2) { FILE: src/modules/iconFonts.js constant ICON_FONT_URLS (line 21) | const ICON_FONT_URLS = Object.assign({ function extendIconFonts (line 30) | function extendIconFonts(fonts) { function isIconFont (line 39) | function isIconFont(input) { function isMaterialFamily (line 52) | function isMaterialFamily(family = '') { function parseAxes (line 59) | function parseAxes(variation = '') { function ensureLigatureCanvasFont (line 82) | async function ensureLigatureCanvasFont(cssFamily, className, axes) { function ensureMaterialFontsReady (line 140) | async function ensureMaterialFontsReady(family = 'Material Icons', px = ... function resolvePaintColor (line 149) | function resolvePaintColor(cs) { function materialIconToImage (line 157) | async function materialIconToImage( function ligatureIconToImage (line 223) | async function ligatureIconToImage(cloneRoot, sourceRoot) { FILE: src/modules/images.js constant XLINK_NS (line 9) | const XLINK_NS = 'http://www.w3.org/1999/xlink' function getSvgImageHref (line 11) | function getSvgImageHref(el) { function extractImageDimensions (line 21) | function extractImageDimensions(img) { function inlineImages (line 46) | async function inlineImages(clone, options = {}) { FILE: src/modules/lineClamp.js function lineClampTree (line 10) | function lineClampTree(el) { function lineClamp (line 31) | function lineClamp(el) { function getClamp (line 75) | function getClamp(el) { function usedLineHeightPx (line 83) | function usedLineHeightPx(cs) { function vpad (line 93) | function vpad(cs) { function isPlainTextContainer (line 98) | function isPlainTextContainer(el) { FILE: src/modules/pseudo.js constant CSS_RULE_SCAN_BUDGET (line 30) | const CSS_RULE_SCAN_BUDGET = 300 function preflightWithFp (line 39) | function preflightWithFp(doc, sessionCache) { function safeRules (line 54) | function safeRules(sheet) { function styleFingerprint (line 71) | function styleFingerprint(doc) { function sheetHasNeedles (line 108) | function sheetHasNeedles(sheet, needles, state) { function shouldProcessPseudos (line 155) | function shouldProcessPseudos(doc = document) { function unquoteDoubleStrings (line 228) | function unquoteDoubleStrings(s) { function collapseCssContent (line 237) | function collapseCssContent(raw) { function withSiblingOverrides (line 253) | function withSiblingOverrides(node, base) { function deriveCounterCtxForPseudo (line 285) | function deriveCounterCtxForPseudo(node, pseudoStyle, baseCtx) { function resolvePseudoContentAndIncs (line 351) | function resolvePseudoContentAndIncs(node, pseudo, baseCtx) { function inlinePseudoElements (line 382) | async function inlinePseudoElements(source, clone, sessionCache, options) { FILE: src/modules/rasterize.js function rasterize (line 10) | async function rasterize(url, options) { FILE: src/modules/snapFetch.js function createSnapLogger (line 38) | function createSnapLogger(prefix = '[snapDOM]', { ttlMs = 5 * 60_000, ma... function isSpecialURL (line 74) | function isSpecialURL(url) { function isAlreadyProxied (line 79) | function isAlreadyProxied(url, useProxy) { function shouldProxy (line 97) | function shouldProxy(url, useProxy) { function applyProxy (line 119) | function applyProxy(url, useProxy) { function blobToDataURL (line 148) | function blobToDataURL(blob) { function makeKey (line 157) | function makeKey(url, o) { function snapFetch (line 177) | async function snapFetch(url, options = {}) { FILE: src/modules/styles.js function bumpEpoch (line 7) | function bumpEpoch() { __epoch++ } function notifyStyleEpoch (line 9) | function notifyStyleEpoch() { bumpEpoch() } function setupInvalidationOnce (line 12) | function setupInvalidationOnce(root = document.documentElement) { function snapshotComputedStyleFull (line 32) | function snapshotComputedStyleFull(style, options = {}) { function styleSignature (line 127) | function styleSignature(snap) { function getSnapshot (line 135) | function getSnapshot(el, preStyle = null, options = {}) { function _resolveCtx (line 145) | function _resolveCtx(sessionOrCtx, opts) { function normalizeInlineStyleToComputed (line 186) | function normalizeInlineStyleToComputed(source, clone, computed) { function inlineAllStyles (line 195) | async function inlineAllStyles(source, clone, sessionOrCtx, opts) { function isReplaced (line 237) | function isReplaced(el) { function hasBox (line 251) | function hasBox(cs) { function isFlexOrGridItem (line 266) | function isFlexOrGridItem(el) { function hasFlowFast (line 281) | function hasFlowFast(el, cs) { function stripHeightForWrappers (line 303) | function stripHeightForWrappers(el, cs, snap) { FILE: src/modules/svgDefs.js function inlineExternalDefsAndSymbols (line 13) | function inlineExternalDefsAndSymbols(element, lookupRoot) { FILE: src/utils/browser.js function idle (line 7) | function idle(fn, { fast = false } = {}) { function isIOS (line 16) | function isIOS() { function isSafari (line 30) | function isSafari() { function isFirefox (line 67) | function isFirefox() { FILE: src/utils/capture.helpers.js function stripRootShadows (line 15) | function stripRootShadows(originalEl, cloneRoot, opts = {}) { function removeAllComments (line 33) | function removeAllComments(root) { function sanitizeAttributesForXHTML (line 45) | function sanitizeAttributesForXHTML(root, opts = {}) { function sanitizeCloneForXHTML (line 84) | function sanitizeCloneForXHTML(root, opts = {}) { function authorHasExplicitSize (line 95) | function authorHasExplicitSize(el) { function isReplacedElement (line 107) | function isReplacedElement(el) { function shouldShrinkBox (line 123) | function shouldShrinkBox(srcEl, cs) { function shrinkAutoSizeBoxes (line 152) | function shrinkAutoSizeBoxes(sourceRoot, cloneRoot, styleCache = new Map... function contributesToParentHeight (line 204) | function contributesToParentHeight(el) { function willBeExcluded (line 217) | function willBeExcluded(el, options) { function estimateKeptHeight (line 239) | function estimateKeptHeight(container, options) { constant SCROLLBAR_PSEUDO (line 278) | const SCROLLBAR_PSEUDO = /::-webkit-scrollbar(-[a-z]+)?\b/i function collectScrollbarRulesFromRules (line 287) | function collectScrollbarRulesFromRules(rules, seen = new Set()) { function collectScrollbarCSS (line 325) | function collectScrollbarCSS(doc) { FILE: src/utils/clone.helpers.js function idleCallback (line 19) | function idleCallback(childList, callback, fast) { function addNotSlottedRightmost (line 45) | function addNotSlottedRightmost(sel) { function wrapWithScope (line 57) | function wrapWithScope(selectorList, scopeSelector, excludeSlotted = tru... function rewriteShadowCSS (line 84) | function rewriteShadowCSS(cssText, scopeSelector) { function nextShadowScopeId (line 118) | function nextShadowScopeId(sessionCache) { function extractShadowCSS (line 128) | function extractShadowCSS(sr) { function injectScopedStyle (line 151) | function injectScopedStyle(hostClone, cssText, scopeId) { function freezeImgSrcset (line 168) | function freezeImgSrcset(original, cloned) { function collectCustomPropsFromCSS (line 186) | function collectCustomPropsFromCSS(cssText) { function resolveCustomProp (line 202) | function resolveCustomProp(el, name) { function buildSeedCustomPropsRule (line 224) | function buildSeedCustomPropsRule(hostEl, names, scopeSelector) { function markSlottedSubtree (line 238) | function markSlottedSubtree(root) { function getAccessibleIframeDocument (line 255) | async function getAccessibleIframeDocument(iframe, attempts = 3) { function measureContentBox (line 274) | function measureContentBox(el) { function getUnscaledDimensions (line 304) | function getUnscaledDimensions(el) { function pinIframeViewport (line 360) | function pinIframeViewport(doc, w, h) { function rasterizeIframe (line 379) | async function rasterizeIframe(iframe, sessionCache, options) { function createCheckboxRadioReplacement (line 436) | function createCheckboxRadioReplacement(node) { function blobUrlToDataUrl (line 545) | async function blobUrlToDataUrl(blobUrl) { function replaceBlobUrlsInCssText (line 577) | async function replaceBlobUrlsInCssText(cssText) { function isBlobUrl (line 591) | function isBlobUrl(u) { function parseSrcset (line 595) | function parseSrcset(srcset) { function stringifySrcset (line 607) | function stringifySrcset(parts) { function resolveBlobUrlsInTree (line 611) | async function resolveBlobUrlsInTree(root, sessionCache = null) { FILE: src/utils/css.js constant NO_CAPTURE_TAGS (line 6) | const NO_CAPTURE_TAGS = new Set([ constant NO_DEFAULTS_TAGS (line 11) | const NO_DEFAULTS_TAGS = new Set([ function precacheCommonTags (line 29) | function precacheCommonTags() { function getDefaultStyleForTag (line 46) | function getDefaultStyleForTag(tagName) { constant NO_PAINT_TOKEN (line 93) | const NO_PAINT_TOKEN = /(?:^|-)(animation|transition)(?:-|$)/i constant NO_PAINT_PREFIX (line 96) | const NO_PAINT_PREFIX = /^(--.+|view-timeline|scroll-timeline|animation-... constant NO_PAINT_EXACT (line 99) | const NO_PAINT_EXACT = new Set([ function shouldIgnoreProp (line 126) | function shouldIgnoreProp(prop /*, tag */) { function getStyleKey (line 142) | function getStyleKey(snapshot, tagName) { function collectUsedTagNames (line 172) | function collectUsedTagNames(root) { function generateDedupedBaseCSS (line 195) | function generateDedupedBaseCSS(usedTagNames) { function generateCSSClasses (line 234) | function generateCSSClasses(styleMap) { function getWindowForElement (line 252) | function getWindowForElement(el) { function getStyle (line 278) | function getStyle(el, pseudo = null) { function parseContent (line 346) | function parseContent(content) { function snapshotComputedStyle (line 363) | function snapshotComputedStyle(style) { function splitBackgroundImage (line 376) | function splitBackgroundImage(bg) { FILE: src/utils/debug.js function debugWarn (line 13) | function debugWarn(ctx, msg, err) { FILE: src/utils/helpers.js function extractURL (line 8) | function extractURL(value) { function isIconFont (line 23) | function isIconFont(familyOrUrl) { function stripTranslate (line 39) | function stripTranslate(transform) { function safeEncodeURI (line 63) | function safeEncodeURI(uri) { function resolveURL (line 74) | function resolveURL(url, base) { FILE: src/utils/image.js function inlineSingleBackgroundEntry (line 15) | async function inlineSingleBackgroundEntry(entry, options = {}) { FILE: src/utils/prepare.helpers.js function stabilizeLayout (line 10) | function stabilizeLayout(element) { FILE: src/utils/transforms.helpers.js function parseBoxShadow (line 13) | function parseBoxShadow(cs) { function parseFilterBlur (line 37) | function parseFilterBlur(cs) { function parseOutline (line 48) | function parseOutline(cs) { function parseFilterDropShadows (line 59) | function parseFilterDropShadows(cs) { function normalizeRootTransforms (line 98) | function normalizeRootTransforms(originalEl, cloneRoot) { function bboxWithOriginFull (line 173) | function bboxWithOriginFull(w2, h2, M, ox2, oy2) { function parseTransformOriginPx (line 200) | function parseTransformOriginPx(cs, w, h) { function readIndividualTransforms (line 229) | function readIndividualTransforms(el) { function getMeasureHost (line 304) | function getMeasureHost() { function readTotalTransformMatrix (line 330) | function readTotalTransformMatrix(t) { function hasBBoxAffectingTransform (line 348) | function hasBBoxAffectingTransform(el) { function matrixFromComputed (line 372) | function matrixFromComputed(el) { FILE: types/snapdom.d.ts type RasterMime (line 15) | type RasterMime = "png" | "jpg" | "jpeg" | "webp"; type BlobType (line 16) | type BlobType = "svg" | RasterMime; type IconFontMatcher (line 18) | type IconFontMatcher = string | RegExp; type CachePolicy (line 19) | type CachePolicy = "disabled" | "full" | "auto" | "soft"; type LocalFont (line 25) | interface LocalFont { type ExcludeFonts (line 32) | interface ExcludeFonts { type SnapdomOptions (line 45) | interface SnapdomOptions { type CaptureContext (line 120) | interface CaptureContext extends SnapdomOptions { type Exporter (line 152) | type Exporter = (ctx: CaptureContext, opts?: any) => Promise; type ExportMap (line 155) | type ExportMap = Record; type SnapdomPlugin (line 161) | interface SnapdomPlugin { type PluginFactory (line 190) | type PluginFactory = (options?: any) => SnapdomPlugin; type PluginUse (line 192) | type PluginUse = type DownloadOptions (line 202) | interface DownloadOptions { type BlobOptions (line 213) | interface BlobOptions { type CaptureResult (line 220) | interface CaptureResult { type PreCacheOptions (line 332) | interface PreCacheOptions {