@carbon/charts 1.7.0 → 1.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +0,0 @@
1
- {"version":3,"file":"dom-to-image.js","sourceRoot":"","sources":["dom-to-image.js"],"names":[],"mappings":"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","sourcesContent":["/**\nThe MIT License (MIT)\n\nCopyright 2015 Anatolii Saienko\nhttps://github.com/tsayen\n\nCopyright 2012 Paul Bakaus\nhttp://paulbakaus.com/\n\nPermission is hereby granted, free of charge, to any person obtaining\na copy of this software and associated documentation files (the\n\"Software\"), to deal in the Software without restriction, including\nwithout limitation the rights to use, copy, modify, merge, publish,\ndistribute, sublicense, and/or sell copies of the Software, and to\npermit persons to whom the Software is furnished to do so, subject to\nthe following conditions:\n\nThe above copyright notice and this permission notice shall be\nincluded in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\nEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\nMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\nNONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\nLIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\nOF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\nWITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n*/\n\n(function (global) {\n\t'use strict';\n\n\tvar util = newUtil();\n\tvar inliner = newInliner();\n\tvar fontFaces = newFontFaces();\n\tvar images = newImages();\n\n\t// Default impl options\n\tvar defaultOptions = {\n\t\t// Default is to fail on error, no placeholder\n\t\timagePlaceholder: undefined,\n\t\t// Default cache bust is false, it will use the cache\n\t\tcacheBust: false,\n\t};\n\n\tvar domtoimage = {\n\t\ttoSvg: toSvg,\n\t\ttoPng: toPng,\n\t\ttoJpeg: toJpeg,\n\t\ttoBlob: toBlob,\n\t\ttoPixelData: toPixelData,\n\t\timpl: {\n\t\t\tfontFaces: fontFaces,\n\t\t\timages: images,\n\t\t\tutil: util,\n\t\t\tinliner: inliner,\n\t\t\toptions: {},\n\t\t},\n\t};\n\n\tif (typeof module !== 'undefined') module.exports = domtoimage;\n\telse global.domtoimage = domtoimage;\n\n\t/**\n\t * @param {Node} node - The DOM Node object to render\n\t * @param {Object} options - Rendering options\n\t * @param {Function} options.filter - Should return true if passed node should be included in the output\n\t * (excluding node means excluding it's children as well). Not called on the root node.\n\t * @param {String} options.bgcolor - color for the background, any valid CSS color value.\n\t * @param {Number} options.width - width to be applied to node before rendering.\n\t * @param {Number} options.height - height to be applied to node before rendering.\n\t * @param {Object} options.style - an object whose properties to be copied to node's style before rendering.\n\t * @param {Number} options.quality - a Number between 0 and 1 indicating image quality (applicable to JPEG only),\n\t\t\t\tdefaults to 1.0.\n\t * @param {String} options.imagePlaceholder - dataURL to use as a placeholder for failed images, default behaviour is to fail fast on images we can't fetch\n\t * @param {Boolean} options.cacheBust - set to true to cache bust by appending the time to the request url\n\t * @return {Promise} - A promise that is fulfilled with a SVG image data URL\n\t * */\n\tfunction toSvg(node, options) {\n\t\toptions = options || {};\n\t\tcopyOptions(options);\n\t\treturn Promise.resolve(node)\n\t\t\t.then(function (node) {\n\t\t\t\treturn cloneNode(node, options.filter, true);\n\t\t\t})\n\t\t\t.then(embedFonts)\n\t\t\t.then(inlineImages)\n\t\t\t.then(applyOptions)\n\t\t\t.then(function (clone) {\n\t\t\t\treturn makeSvgDataUri(\n\t\t\t\t\tclone,\n\t\t\t\t\toptions.width || util.width(node),\n\t\t\t\t\toptions.height || util.height(node)\n\t\t\t\t);\n\t\t\t});\n\n\t\tfunction applyOptions(clone) {\n\t\t\tif (options.bgcolor) clone.style.backgroundColor = options.bgcolor;\n\n\t\t\tif (options.width) clone.style.width = options.width + 'px';\n\t\t\tif (options.height) clone.style.height = options.height + 'px';\n\n\t\t\tif (options.style)\n\t\t\t\tObject.keys(options.style).forEach(function (property) {\n\t\t\t\t\tclone.style[property] = options.style[property];\n\t\t\t\t});\n\n\t\t\treturn clone;\n\t\t}\n\t}\n\n\t/**\n\t * @param {Node} node - The DOM Node object to render\n\t * @param {Object} options - Rendering options, @see {@link toSvg}\n\t * @return {Promise} - A promise that is fulfilled with a Uint8Array containing RGBA pixel data.\n\t * */\n\tfunction toPixelData(node, options) {\n\t\treturn draw(node, options || {}).then(function (canvas) {\n\t\t\treturn canvas\n\t\t\t\t.getContext('2d')\n\t\t\t\t.getImageData(0, 0, util.width(node), util.height(node)).data;\n\t\t});\n\t}\n\n\t/**\n\t * @param {Node} node - The DOM Node object to render\n\t * @param {Object} options - Rendering options, @see {@link toSvg}\n\t * @return {Promise} - A promise that is fulfilled with a PNG image data URL\n\t * */\n\tfunction toPng(node, options) {\n\t\treturn draw(node, options || {}).then(function (canvas) {\n\t\t\treturn canvas.toDataURL();\n\t\t});\n\t}\n\n\t/**\n\t * @param {Node} node - The DOM Node object to render\n\t * @param {Object} options - Rendering options, @see {@link toSvg}\n\t * @return {Promise} - A promise that is fulfilled with a JPEG image data URL\n\t * */\n\tfunction toJpeg(node, options) {\n\t\toptions = options || {};\n\t\treturn draw(node, options).then(function (canvas) {\n\t\t\treturn canvas.toDataURL('image/jpeg', options.quality || 1.0);\n\t\t});\n\t}\n\n\t/**\n\t * @param {Node} node - The DOM Node object to render\n\t * @param {Object} options - Rendering options, @see {@link toSvg}\n\t * @return {Promise} - A promise that is fulfilled with a PNG image blob\n\t * */\n\tfunction toBlob(node, options) {\n\t\treturn draw(node, options || {}).then(util.canvasToBlob);\n\t}\n\n\tfunction copyOptions(options) {\n\t\t// Copy options to impl options for use in impl\n\t\tif (typeof options.imagePlaceholder === 'undefined') {\n\t\t\tdomtoimage.impl.options.imagePlaceholder =\n\t\t\t\tdefaultOptions.imagePlaceholder;\n\t\t} else {\n\t\t\tdomtoimage.impl.options.imagePlaceholder = options.imagePlaceholder;\n\t\t}\n\n\t\tif (typeof options.cacheBust === 'undefined') {\n\t\t\tdomtoimage.impl.options.cacheBust = defaultOptions.cacheBust;\n\t\t} else {\n\t\t\tdomtoimage.impl.options.cacheBust = options.cacheBust;\n\t\t}\n\t}\n\n\tfunction draw(domNode, options) {\n\t\treturn toSvg(domNode, options)\n\t\t\t.then(util.makeImage)\n\t\t\t.then(util.delay(100))\n\t\t\t.then(function (image) {\n\t\t\t\tvar canvas = newCanvas(domNode);\n\t\t\t\tcanvas.getContext('2d').drawImage(image, 0, 0);\n\t\t\t\treturn canvas;\n\t\t\t});\n\n\t\tfunction newCanvas(domNode) {\n\t\t\tvar canvas = document.createElement('canvas');\n\t\t\tcanvas.width = options.width || util.width(domNode);\n\t\t\tcanvas.height = options.height || util.height(domNode);\n\n\t\t\tif (options.bgcolor) {\n\t\t\t\tvar ctx = canvas.getContext('2d');\n\t\t\t\tctx.fillStyle = options.bgcolor;\n\t\t\t\tctx.fillRect(0, 0, canvas.width, canvas.height);\n\t\t\t}\n\n\t\t\treturn canvas;\n\t\t}\n\t}\n\n\tfunction cloneNode(node, filter, root) {\n\t\tif (!root && filter && !filter(node)) return Promise.resolve();\n\n\t\treturn Promise.resolve(node)\n\t\t\t.then(makeNodeCopy)\n\t\t\t.then(function (clone) {\n\t\t\t\treturn cloneChildren(node, clone, filter);\n\t\t\t})\n\t\t\t.then(function (clone) {\n\t\t\t\treturn processClone(node, clone);\n\t\t\t});\n\n\t\tfunction makeNodeCopy(node) {\n\t\t\tif (node instanceof HTMLCanvasElement)\n\t\t\t\treturn util.makeImage(node.toDataURL());\n\t\t\treturn node.cloneNode(false);\n\t\t}\n\n\t\tfunction cloneChildren(original, clone, filter) {\n\t\t\tvar children = original.childNodes;\n\t\t\tif (children.length === 0) return Promise.resolve(clone);\n\n\t\t\treturn cloneChildrenInOrder(\n\t\t\t\tclone,\n\t\t\t\tutil.asArray(children),\n\t\t\t\tfilter\n\t\t\t).then(function () {\n\t\t\t\treturn clone;\n\t\t\t});\n\n\t\t\tfunction cloneChildrenInOrder(parent, children, filter) {\n\t\t\t\tvar done = Promise.resolve();\n\t\t\t\tchildren.forEach(function (child) {\n\t\t\t\t\tdone = done\n\t\t\t\t\t\t.then(function () {\n\t\t\t\t\t\t\treturn cloneNode(child, filter);\n\t\t\t\t\t\t})\n\t\t\t\t\t\t.then(function (childClone) {\n\t\t\t\t\t\t\tif (childClone) parent.appendChild(childClone);\n\t\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t\treturn done;\n\t\t\t}\n\t\t}\n\n\t\tfunction processClone(original, clone) {\n\t\t\tif (!(clone instanceof Element)) return clone;\n\n\t\t\treturn Promise.resolve()\n\t\t\t\t.then(cloneStyle)\n\t\t\t\t.then(clonePseudoElements)\n\t\t\t\t.then(copyUserInput)\n\t\t\t\t.then(fixSvg)\n\t\t\t\t.then(function () {\n\t\t\t\t\treturn clone;\n\t\t\t\t});\n\n\t\t\tfunction cloneStyle() {\n\t\t\t\tcopyStyle(window.getComputedStyle(original), clone.style);\n\n\t\t\t\tfunction copyStyle(source, target) {\n\t\t\t\t\tif (source.cssText) target.cssText = source.cssText;\n\t\t\t\t\telse copyProperties(source, target);\n\n\t\t\t\t\tfunction copyProperties(source, target) {\n\t\t\t\t\t\tutil.asArray(source).forEach(function (name) {\n\t\t\t\t\t\t\ttarget.setProperty(\n\t\t\t\t\t\t\t\tname,\n\t\t\t\t\t\t\t\tsource.getPropertyValue(name),\n\t\t\t\t\t\t\t\tsource.getPropertyPriority(name)\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tfunction clonePseudoElements() {\n\t\t\t\t[':before', ':after'].forEach(function (element) {\n\t\t\t\t\tclonePseudoElement(element);\n\t\t\t\t});\n\n\t\t\t\tfunction clonePseudoElement(element) {\n\t\t\t\t\tvar style = window.getComputedStyle(original, element);\n\t\t\t\t\tvar content = style.getPropertyValue('content');\n\n\t\t\t\t\tif (content === '' || content === 'none') return;\n\n\t\t\t\t\tvar className = util.uid();\n\t\t\t\t\tclone.className = clone.className + ' ' + className;\n\t\t\t\t\tvar styleElement = document.createElement('style');\n\t\t\t\t\tstyleElement.appendChild(\n\t\t\t\t\t\tformatPseudoElementStyle(className, element, style)\n\t\t\t\t\t);\n\t\t\t\t\tclone.appendChild(styleElement);\n\n\t\t\t\t\tfunction formatPseudoElementStyle(\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t\telement,\n\t\t\t\t\t\tstyle\n\t\t\t\t\t) {\n\t\t\t\t\t\tvar selector = '.' + className + ':' + element;\n\t\t\t\t\t\tvar cssText = style.cssText\n\t\t\t\t\t\t\t? formatCssText(style)\n\t\t\t\t\t\t\t: formatCssProperties(style);\n\t\t\t\t\t\treturn document.createTextNode(\n\t\t\t\t\t\t\tselector + '{' + cssText + '}'\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\tfunction formatCssText(style) {\n\t\t\t\t\t\t\tvar content = style.getPropertyValue('content');\n\t\t\t\t\t\t\treturn style.cssText + ' content: ' + content + ';';\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tfunction formatCssProperties(style) {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\tutil\n\t\t\t\t\t\t\t\t\t.asArray(style)\n\t\t\t\t\t\t\t\t\t.map(formatProperty)\n\t\t\t\t\t\t\t\t\t.join('; ') + ';'\n\t\t\t\t\t\t\t);\n\n\t\t\t\t\t\t\tfunction formatProperty(name) {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\tname +\n\t\t\t\t\t\t\t\t\t': ' +\n\t\t\t\t\t\t\t\t\tstyle.getPropertyValue(name) +\n\t\t\t\t\t\t\t\t\t(style.getPropertyPriority(name)\n\t\t\t\t\t\t\t\t\t\t? ' !important'\n\t\t\t\t\t\t\t\t\t\t: '')\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tfunction copyUserInput() {\n\t\t\t\tif (original instanceof HTMLTextAreaElement)\n\t\t\t\t\tclone.innerHTML = original.value;\n\t\t\t\tif (original instanceof HTMLInputElement)\n\t\t\t\t\tclone.setAttribute('value', original.value);\n\t\t\t}\n\n\t\t\tfunction fixSvg() {\n\t\t\t\tif (!(clone instanceof SVGElement)) return;\n\t\t\t\tclone.setAttribute('xmlns', 'http://www.w3.org/2000/svg');\n\n\t\t\t\tif (!(clone instanceof SVGRectElement)) return;\n\t\t\t\t['width', 'height'].forEach(function (attribute) {\n\t\t\t\t\tvar value = clone.getAttribute(attribute);\n\t\t\t\t\tif (!value) return;\n\n\t\t\t\t\tclone.style.setProperty(attribute, value);\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction embedFonts(node) {\n\t\treturn fontFaces.resolveAll().then(function (cssText) {\n\t\t\tvar styleNode = document.createElement('style');\n\t\t\tnode.appendChild(styleNode);\n\t\t\tstyleNode.appendChild(document.createTextNode(cssText));\n\t\t\treturn node;\n\t\t});\n\t}\n\n\tfunction inlineImages(node) {\n\t\treturn images.inlineAll(node).then(function () {\n\t\t\treturn node;\n\t\t});\n\t}\n\n\tfunction makeSvgDataUri(node, width, height) {\n\t\treturn Promise.resolve(node)\n\t\t\t.then(function (node) {\n\t\t\t\tnode.setAttribute('xmlns', 'http://www.w3.org/1999/xhtml');\n\t\t\t\treturn new XMLSerializer().serializeToString(node);\n\t\t\t})\n\t\t\t.then(util.escapeXhtml)\n\t\t\t.then(function (xhtml) {\n\t\t\t\treturn (\n\t\t\t\t\t'<foreignObject x=\"0\" y=\"0\" width=\"100%\" height=\"100%\">' +\n\t\t\t\t\txhtml +\n\t\t\t\t\t'</foreignObject>'\n\t\t\t\t);\n\t\t\t})\n\t\t\t.then(function (foreignObject) {\n\t\t\t\treturn (\n\t\t\t\t\t'<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"' +\n\t\t\t\t\twidth +\n\t\t\t\t\t'\" height=\"' +\n\t\t\t\t\theight +\n\t\t\t\t\t'\">' +\n\t\t\t\t\tforeignObject +\n\t\t\t\t\t'</svg>'\n\t\t\t\t);\n\t\t\t})\n\t\t\t.then(function (svg) {\n\t\t\t\treturn 'data:image/svg+xml;charset=utf-8,' + svg;\n\t\t\t});\n\t}\n\n\tfunction newUtil() {\n\t\treturn {\n\t\t\tescape: escape,\n\t\t\tparseExtension: parseExtension,\n\t\t\tmimeType: mimeType,\n\t\t\tdataAsUrl: dataAsUrl,\n\t\t\tisDataUrl: isDataUrl,\n\t\t\tcanvasToBlob: canvasToBlob,\n\t\t\tresolveUrl: resolveUrl,\n\t\t\tgetAndEncode: getAndEncode,\n\t\t\tuid: uid(),\n\t\t\tdelay: delay,\n\t\t\tasArray: asArray,\n\t\t\tescapeXhtml: escapeXhtml,\n\t\t\tmakeImage: makeImage,\n\t\t\twidth: width,\n\t\t\theight: height,\n\t\t};\n\n\t\tfunction mimes() {\n\t\t\t/*\n\t\t\t * Only WOFF and EOT mime types for fonts are 'real'\n\t\t\t * see http://www.iana.org/assignments/media-types/media-types.xhtml\n\t\t\t */\n\t\t\tvar WOFF = 'application/font-woff';\n\t\t\tvar JPEG = 'image/jpeg';\n\n\t\t\treturn {\n\t\t\t\twoff: WOFF,\n\t\t\t\twoff2: WOFF,\n\t\t\t\tttf: 'application/font-truetype',\n\t\t\t\teot: 'application/vnd.ms-fontobject',\n\t\t\t\tpng: 'image/png',\n\t\t\t\tjpg: JPEG,\n\t\t\t\tjpeg: JPEG,\n\t\t\t\tgif: 'image/gif',\n\t\t\t\ttiff: 'image/tiff',\n\t\t\t\tsvg: 'image/svg+xml',\n\t\t\t};\n\t\t}\n\n\t\tfunction parseExtension(url) {\n\t\t\tvar match = /\\.([^\\.\\/]*?)$/g.exec(url);\n\t\t\tif (match) return match[1];\n\t\t\telse return '';\n\t\t}\n\n\t\tfunction mimeType(url) {\n\t\t\tvar extension = parseExtension(url).toLowerCase();\n\t\t\treturn mimes()[extension] || '';\n\t\t}\n\n\t\tfunction isDataUrl(url) {\n\t\t\treturn url.search(/^(data:)/) !== -1;\n\t\t}\n\n\t\tfunction toBlob(canvas) {\n\t\t\treturn new Promise(function (resolve) {\n\t\t\t\tvar binaryString = window.atob(\n\t\t\t\t\tcanvas.toDataURL().split(',')[1]\n\t\t\t\t);\n\t\t\t\tvar length = binaryString.length;\n\t\t\t\tvar binaryArray = new Uint8Array(length);\n\n\t\t\t\tfor (var i = 0; i < length; i++)\n\t\t\t\t\tbinaryArray[i] = binaryString.charCodeAt(i);\n\n\t\t\t\tresolve(\n\t\t\t\t\tnew Blob([binaryArray], {\n\t\t\t\t\t\ttype: 'image/png',\n\t\t\t\t\t})\n\t\t\t\t);\n\t\t\t});\n\t\t}\n\n\t\tfunction canvasToBlob(canvas) {\n\t\t\tif (canvas.toBlob)\n\t\t\t\treturn new Promise(function (resolve) {\n\t\t\t\t\tcanvas.toBlob(resolve);\n\t\t\t\t});\n\n\t\t\treturn toBlob(canvas);\n\t\t}\n\n\t\tfunction resolveUrl(url, baseUrl) {\n\t\t\tvar doc = document.implementation.createHTMLDocument();\n\t\t\tvar base = doc.createElement('base');\n\t\t\tdoc.head.appendChild(base);\n\t\t\tvar a = doc.createElement('a');\n\t\t\tdoc.body.appendChild(a);\n\t\t\tbase.href = baseUrl;\n\t\t\ta.href = url;\n\t\t\treturn a.href;\n\t\t}\n\n\t\tfunction uid() {\n\t\t\tvar index = 0;\n\n\t\t\treturn function () {\n\t\t\t\treturn 'u' + fourRandomChars() + index++;\n\n\t\t\t\tfunction fourRandomChars() {\n\t\t\t\t\t/* see http://stackoverflow.com/a/6248722/2519373 */\n\t\t\t\t\treturn (\n\t\t\t\t\t\t'0000' +\n\t\t\t\t\t\t((Math.random() * Math.pow(36, 4)) << 0).toString(36)\n\t\t\t\t\t).slice(-4);\n\t\t\t\t}\n\t\t\t};\n\t\t}\n\n\t\tfunction makeImage(uri) {\n\t\t\treturn new Promise(function (resolve, reject) {\n\t\t\t\tvar image = new Image();\n\t\t\t\timage.onload = function () {\n\t\t\t\t\tresolve(image);\n\t\t\t\t};\n\t\t\t\timage.onerror = reject;\n\t\t\t\timage.src = uri;\n\t\t\t});\n\t\t}\n\n\t\tfunction getAndEncode(url) {\n\t\t\tvar TIMEOUT = 30000;\n\t\t\tif (domtoimage.impl.options.cacheBust) {\n\t\t\t\t// Cache bypass so we dont have CORS issues with cached images\n\t\t\t\t// Source: https://developer.mozilla.org/en/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest#Bypassing_the_cache\n\t\t\t\turl += (/\\?/.test(url) ? '&' : '?') + new Date().getTime();\n\t\t\t}\n\n\t\t\treturn new Promise(function (resolve) {\n\t\t\t\tvar request = new XMLHttpRequest();\n\n\t\t\t\trequest.onreadystatechange = done;\n\t\t\t\trequest.ontimeout = timeout;\n\t\t\t\trequest.responseType = 'blob';\n\t\t\t\trequest.timeout = TIMEOUT;\n\t\t\t\trequest.open('GET', url, true);\n\t\t\t\trequest.send();\n\n\t\t\t\tvar placeholder;\n\t\t\t\tif (domtoimage.impl.options.imagePlaceholder) {\n\t\t\t\t\tvar split = domtoimage.impl.options.imagePlaceholder.split(\n\t\t\t\t\t\t/,/\n\t\t\t\t\t);\n\t\t\t\t\tif (split && split[1]) {\n\t\t\t\t\t\tplaceholder = split[1];\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tfunction done() {\n\t\t\t\t\tif (request.readyState !== 4) return;\n\n\t\t\t\t\tif (request.status !== 200) {\n\t\t\t\t\t\tif (placeholder) {\n\t\t\t\t\t\t\tresolve(placeholder);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tfail(\n\t\t\t\t\t\t\t\t'cannot fetch resource: ' +\n\t\t\t\t\t\t\t\t\turl +\n\t\t\t\t\t\t\t\t\t', status: ' +\n\t\t\t\t\t\t\t\t\trequest.status\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tvar encoder = new FileReader();\n\t\t\t\t\tencoder.onloadend = function () {\n\t\t\t\t\t\tvar content = encoder.result.split(/,/)[1];\n\t\t\t\t\t\tresolve(content);\n\t\t\t\t\t};\n\t\t\t\t\tencoder.readAsDataURL(request.response);\n\t\t\t\t}\n\n\t\t\t\tfunction timeout() {\n\t\t\t\t\tif (placeholder) {\n\t\t\t\t\t\tresolve(placeholder);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tfail(\n\t\t\t\t\t\t\t'timeout of ' +\n\t\t\t\t\t\t\t\tTIMEOUT +\n\t\t\t\t\t\t\t\t'ms occured while fetching resource: ' +\n\t\t\t\t\t\t\t\turl\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tfunction fail(message) {\n\t\t\t\t\tconsole.error(message);\n\t\t\t\t\tresolve('');\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tfunction dataAsUrl(content, type) {\n\t\t\treturn 'data:' + type + ';base64,' + content;\n\t\t}\n\n\t\tfunction escape(string) {\n\t\t\treturn string.replace(/([.*+?^${}()|\\[\\]\\/\\\\])/g, '\\\\$1');\n\t\t}\n\n\t\tfunction delay(ms) {\n\t\t\treturn function (arg) {\n\t\t\t\treturn new Promise(function (resolve) {\n\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\tresolve(arg);\n\t\t\t\t\t}, ms);\n\t\t\t\t});\n\t\t\t};\n\t\t}\n\n\t\tfunction asArray(arrayLike) {\n\t\t\tvar array = [];\n\t\t\tvar length = arrayLike.length;\n\t\t\tfor (var i = 0; i < length; i++) array.push(arrayLike[i]);\n\t\t\treturn array;\n\t\t}\n\n\t\tfunction escapeXhtml(string) {\n\t\t\treturn string.replace(/#/g, '%23').replace(/\\n/g, '%0A');\n\t\t}\n\n\t\tfunction width(node) {\n\t\t\tvar leftBorder = px(node, 'border-left-width');\n\t\t\tvar rightBorder = px(node, 'border-right-width');\n\t\t\treturn node.scrollWidth + leftBorder + rightBorder;\n\t\t}\n\n\t\tfunction height(node) {\n\t\t\tvar topBorder = px(node, 'border-top-width');\n\t\t\tvar bottomBorder = px(node, 'border-bottom-width');\n\t\t\treturn node.scrollHeight + topBorder + bottomBorder;\n\t\t}\n\n\t\tfunction px(node, styleProperty) {\n\t\t\tvar value = window\n\t\t\t\t.getComputedStyle(node)\n\t\t\t\t.getPropertyValue(styleProperty);\n\t\t\treturn parseFloat(value.replace('px', ''));\n\t\t}\n\t}\n\n\tfunction newInliner() {\n\t\tvar URL_REGEX = /url\\(['\"]?([^'\"]+?)['\"]?\\)/g;\n\n\t\treturn {\n\t\t\tinlineAll: inlineAll,\n\t\t\tshouldProcess: shouldProcess,\n\t\t\timpl: {\n\t\t\t\treadUrls: readUrls,\n\t\t\t\tinline: inline,\n\t\t\t},\n\t\t};\n\n\t\tfunction shouldProcess(string) {\n\t\t\treturn string.search(URL_REGEX) !== -1;\n\t\t}\n\n\t\tfunction readUrls(string) {\n\t\t\tvar result = [];\n\t\t\tvar match;\n\t\t\twhile ((match = URL_REGEX.exec(string)) !== null) {\n\t\t\t\tresult.push(match[1]);\n\t\t\t}\n\t\t\treturn result.filter(function (url) {\n\t\t\t\treturn !util.isDataUrl(url);\n\t\t\t});\n\t\t}\n\n\t\tfunction inline(string, url, baseUrl, get) {\n\t\t\treturn Promise.resolve(url)\n\t\t\t\t.then(function (url) {\n\t\t\t\t\treturn baseUrl ? util.resolveUrl(url, baseUrl) : url;\n\t\t\t\t})\n\t\t\t\t.then(get || util.getAndEncode)\n\t\t\t\t.then(function (data) {\n\t\t\t\t\treturn util.dataAsUrl(data, util.mimeType(url));\n\t\t\t\t})\n\t\t\t\t.then(function (dataUrl) {\n\t\t\t\t\treturn string.replace(\n\t\t\t\t\t\turlAsRegex(url),\n\t\t\t\t\t\t'$1' + dataUrl + '$3'\n\t\t\t\t\t);\n\t\t\t\t});\n\n\t\t\tfunction urlAsRegex(url) {\n\t\t\t\treturn new RegExp(\n\t\t\t\t\t'(url\\\\([\\'\"]?)(' + util.escape(url) + ')([\\'\"]?\\\\))',\n\t\t\t\t\t'g'\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\tfunction inlineAll(string, baseUrl, get) {\n\t\t\tif (nothingToInline()) return Promise.resolve(string);\n\n\t\t\treturn Promise.resolve(string)\n\t\t\t\t.then(readUrls)\n\t\t\t\t.then(function (urls) {\n\t\t\t\t\tvar done = Promise.resolve(string);\n\t\t\t\t\turls.forEach(function (url) {\n\t\t\t\t\t\tdone = done.then(function (string) {\n\t\t\t\t\t\t\treturn inline(string, url, baseUrl, get);\n\t\t\t\t\t\t});\n\t\t\t\t\t});\n\t\t\t\t\treturn done;\n\t\t\t\t});\n\n\t\t\tfunction nothingToInline() {\n\t\t\t\treturn !shouldProcess(string);\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction newFontFaces() {\n\t\treturn {\n\t\t\tresolveAll: resolveAll,\n\t\t\timpl: {\n\t\t\t\treadAll: readAll,\n\t\t\t},\n\t\t};\n\n\t\tfunction resolveAll() {\n\t\t\treturn readAll(document)\n\t\t\t\t.then(function (webFonts) {\n\t\t\t\t\treturn Promise.all(\n\t\t\t\t\t\twebFonts.map(function (webFont) {\n\t\t\t\t\t\t\treturn webFont.resolve();\n\t\t\t\t\t\t})\n\t\t\t\t\t);\n\t\t\t\t})\n\t\t\t\t.then(function (cssStrings) {\n\t\t\t\t\treturn cssStrings.join('\\n');\n\t\t\t\t});\n\t\t}\n\n\t\tfunction readAll() {\n\t\t\treturn Promise.resolve(util.asArray(document.styleSheets))\n\t\t\t\t.then(getCssRules)\n\t\t\t\t.then(selectWebFontRules)\n\t\t\t\t.then(function (rules) {\n\t\t\t\t\treturn rules.map(newWebFont);\n\t\t\t\t});\n\n\t\t\tfunction selectWebFontRules(cssRules) {\n\t\t\t\treturn cssRules\n\t\t\t\t\t.filter(function (rule) {\n\t\t\t\t\t\treturn rule.type === CSSRule.FONT_FACE_RULE;\n\t\t\t\t\t})\n\t\t\t\t\t.filter(function (rule) {\n\t\t\t\t\t\treturn inliner.shouldProcess(\n\t\t\t\t\t\t\trule.style.getPropertyValue('src')\n\t\t\t\t\t\t);\n\t\t\t\t\t});\n\t\t\t}\n\n\t\t\tfunction getCssRules(styleSheets) {\n\t\t\t\tvar cssRules = [];\n\t\t\t\tstyleSheets.forEach(function (sheet) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tutil.asArray(sheet.cssRules || []).forEach(\n\t\t\t\t\t\t\tcssRules.push.bind(cssRules)\n\t\t\t\t\t\t);\n\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\tconsole.log(\n\t\t\t\t\t\t\t'Error while reading CSS rules from ' + sheet.href,\n\t\t\t\t\t\t\te.toString()\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\treturn cssRules;\n\t\t\t}\n\n\t\t\tfunction newWebFont(webFontRule) {\n\t\t\t\treturn {\n\t\t\t\t\tresolve: function resolve() {\n\t\t\t\t\t\tvar baseUrl = (webFontRule.parentStyleSheet || {}).href;\n\t\t\t\t\t\treturn inliner.inlineAll(webFontRule.cssText, baseUrl);\n\t\t\t\t\t},\n\t\t\t\t\tsrc: function () {\n\t\t\t\t\t\treturn webFontRule.style.getPropertyValue('src');\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction newImages() {\n\t\treturn {\n\t\t\tinlineAll: inlineAll,\n\t\t\timpl: {\n\t\t\t\tnewImage: newImage,\n\t\t\t},\n\t\t};\n\n\t\tfunction newImage(element) {\n\t\t\treturn {\n\t\t\t\tinline: inline,\n\t\t\t};\n\n\t\t\tfunction inline(get) {\n\t\t\t\tif (util.isDataUrl(element.src)) return Promise.resolve();\n\n\t\t\t\treturn Promise.resolve(element.src)\n\t\t\t\t\t.then(get || util.getAndEncode)\n\t\t\t\t\t.then(function (data) {\n\t\t\t\t\t\treturn util.dataAsUrl(data, util.mimeType(element.src));\n\t\t\t\t\t})\n\t\t\t\t\t.then(function (dataUrl) {\n\t\t\t\t\t\treturn new Promise(function (resolve, reject) {\n\t\t\t\t\t\t\telement.onload = resolve;\n\t\t\t\t\t\t\telement.onerror = reject;\n\t\t\t\t\t\t\telement.src = dataUrl;\n\t\t\t\t\t\t});\n\t\t\t\t\t});\n\t\t\t}\n\t\t}\n\n\t\tfunction inlineAll(node) {\n\t\t\tif (!(node instanceof Element)) return Promise.resolve(node);\n\n\t\t\treturn inlineBackground(node).then(function () {\n\t\t\t\tif (node instanceof HTMLImageElement)\n\t\t\t\t\treturn newImage(node).inline();\n\t\t\t\telse\n\t\t\t\t\treturn Promise.all(\n\t\t\t\t\t\tutil.asArray(node.childNodes).map(function (child) {\n\t\t\t\t\t\t\treturn inlineAll(child);\n\t\t\t\t\t\t})\n\t\t\t\t\t);\n\t\t\t});\n\n\t\t\tfunction inlineBackground(node) {\n\t\t\t\tvar background = node.style.getPropertyValue('background');\n\n\t\t\t\tif (!background) return Promise.resolve(node);\n\n\t\t\t\treturn inliner\n\t\t\t\t\t.inlineAll(background)\n\t\t\t\t\t.then(function (inlined) {\n\t\t\t\t\t\tnode.style.setProperty(\n\t\t\t\t\t\t\t'background',\n\t\t\t\t\t\t\tinlined,\n\t\t\t\t\t\t\tnode.style.getPropertyPriority('background')\n\t\t\t\t\t\t);\n\t\t\t\t\t})\n\t\t\t\t\t.then(function () {\n\t\t\t\t\t\treturn node;\n\t\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n})(this);\n"]}