You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

115 lines
132 KiB
JavaScript

"use strict";
/*
* ATTENTION: An "eval-source-map" devtool has been used.
* This devtool is neither made for production nor for readable output files.
* It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools.
* If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/)
* or disable the default devtool with "devtool: false".
* If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/).
*/
exports.id = "vendor-chunks/html-to-image";
exports.ids = ["vendor-chunks/html-to-image"];
exports.modules = {
/***/ "(ssr)/./node_modules/html-to-image/es/apply-style.js":
/*!******************************************************!*\
!*** ./node_modules/html-to-image/es/apply-style.js ***!
\******************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ applyStyle: () => (/* binding */ applyStyle)\n/* harmony export */ });\nfunction applyStyle(node, options) {\n const { style } = node;\n if (options.backgroundColor) {\n style.backgroundColor = options.backgroundColor;\n }\n if (options.width) {\n style.width = `${options.width}px`;\n }\n if (options.height) {\n style.height = `${options.height}px`;\n }\n const manual = options.style;\n if (manual != null) {\n Object.keys(manual).forEach((key)=>{\n style[key] = manual[key];\n });\n }\n return node;\n} //# sourceMappingURL=apply-style.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvaHRtbC10by1pbWFnZS9lcy9hcHBseS1zdHlsZS5qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQU8sU0FBU0EsV0FBV0MsSUFBSSxFQUFFQyxPQUFPO0lBQ3BDLE1BQU0sRUFBRUMsS0FBSyxFQUFFLEdBQUdGO0lBQ2xCLElBQUlDLFFBQVFFLGVBQWUsRUFBRTtRQUN6QkQsTUFBTUMsZUFBZSxHQUFHRixRQUFRRSxlQUFlO0lBQ25EO0lBQ0EsSUFBSUYsUUFBUUcsS0FBSyxFQUFFO1FBQ2ZGLE1BQU1FLEtBQUssR0FBRyxDQUFDLEVBQUVILFFBQVFHLEtBQUssQ0FBQyxFQUFFLENBQUM7SUFDdEM7SUFDQSxJQUFJSCxRQUFRSSxNQUFNLEVBQUU7UUFDaEJILE1BQU1HLE1BQU0sR0FBRyxDQUFDLEVBQUVKLFFBQVFJLE1BQU0sQ0FBQyxFQUFFLENBQUM7SUFDeEM7SUFDQSxNQUFNQyxTQUFTTCxRQUFRQyxLQUFLO0lBQzVCLElBQUlJLFVBQVUsTUFBTTtRQUNoQkMsT0FBT0MsSUFBSSxDQUFDRixRQUFRRyxPQUFPLENBQUMsQ0FBQ0M7WUFDekJSLEtBQUssQ0FBQ1EsSUFBSSxHQUFHSixNQUFNLENBQUNJLElBQUk7UUFDNUI7SUFDSjtJQUNBLE9BQU9WO0FBQ1gsRUFDQSx1Q0FBdUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9uZXh0Y2hhdC8uL25vZGVfbW9kdWxlcy9odG1sLXRvLWltYWdlL2VzL2FwcGx5LXN0eWxlLmpzP2JlNTQiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIGFwcGx5U3R5bGUobm9kZSwgb3B0aW9ucykge1xuICAgIGNvbnN0IHsgc3R5bGUgfSA9IG5vZGU7XG4gICAgaWYgKG9wdGlvbnMuYmFja2dyb3VuZENvbG9yKSB7XG4gICAgICAgIHN0eWxlLmJhY2tncm91bmRDb2xvciA9IG9wdGlvbnMuYmFja2dyb3VuZENvbG9yO1xuICAgIH1cbiAgICBpZiAob3B0aW9ucy53aWR0aCkge1xuICAgICAgICBzdHlsZS53aWR0aCA9IGAke29wdGlvbnMud2lkdGh9cHhgO1xuICAgIH1cbiAgICBpZiAob3B0aW9ucy5oZWlnaHQpIHtcbiAgICAgICAgc3R5bGUuaGVpZ2h0ID0gYCR7b3B0aW9ucy5oZWlnaHR9cHhgO1xuICAgIH1cbiAgICBjb25zdCBtYW51YWwgPSBvcHRpb25zLnN0eWxlO1xuICAgIGlmIChtYW51YWwgIT0gbnVsbCkge1xuICAgICAgICBPYmplY3Qua2V5cyhtYW51YWwpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgICAgICAgc3R5bGVba2V5XSA9IG1hbnVhbFtrZXldO1xuICAgICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIG5vZGU7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1hcHBseS1zdHlsZS5qcy5tYXAiXSwibmFtZXMiOlsiYXBwbHlTdHlsZSIsIm5vZGUiLCJvcHRpb25zIiwic3R5bGUiLCJiYWNrZ3JvdW5kQ29sb3IiLCJ3aWR0aCIsImhlaWdodCIsIm1hbnVhbCIsIk9iamVjdCIsImtleXMiLCJmb3JFYWNoIiwia2V5Il0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/html-to-image/es/apply-style.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/html-to-image/es/clone-node.js":
/*!*****************************************************!*\
!*** ./node_modules/html-to-image/es/clone-node.js ***!
\*****************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ cloneNode: () => (/* binding */ cloneNode)\n/* harmony export */ });\n/* harmony import */ var _clone_pseudos__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./clone-pseudos */ \"(ssr)/./node_modules/html-to-image/es/clone-pseudos.js\");\n/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./util */ \"(ssr)/./node_modules/html-to-image/es/util.js\");\n/* harmony import */ var _mimes__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./mimes */ \"(ssr)/./node_modules/html-to-image/es/mimes.js\");\n/* harmony import */ var _dataurl__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./dataurl */ \"(ssr)/./node_modules/html-to-image/es/dataurl.js\");\n\n\n\n\nasync function cloneCanvasElement(canvas) {\n const dataURL = canvas.toDataURL();\n if (dataURL === \"data:,\") {\n return canvas.cloneNode(false);\n }\n return (0,_util__WEBPACK_IMPORTED_MODULE_1__.createImage)(dataURL);\n}\nasync function cloneVideoElement(video, options) {\n if (video.currentSrc) {\n const canvas = document.createElement(\"canvas\");\n const ctx = canvas.getContext(\"2d\");\n canvas.width = video.clientWidth;\n canvas.height = video.clientHeight;\n ctx === null || ctx === void 0 ? void 0 : ctx.drawImage(video, 0, 0, canvas.width, canvas.height);\n const dataURL = canvas.toDataURL();\n return (0,_util__WEBPACK_IMPORTED_MODULE_1__.createImage)(dataURL);\n }\n const poster = video.poster;\n const contentType = (0,_mimes__WEBPACK_IMPORTED_MODULE_2__.getMimeType)(poster);\n const dataURL = await (0,_dataurl__WEBPACK_IMPORTED_MODULE_3__.resourceToDataURL)(poster, contentType, options);\n return (0,_util__WEBPACK_IMPORTED_MODULE_1__.createImage)(dataURL);\n}\nasync function cloneIFrameElement(iframe) {\n var _a;\n try {\n if ((_a = iframe === null || iframe === void 0 ? void 0 : iframe.contentDocument) === null || _a === void 0 ? void 0 : _a.body) {\n return await cloneNode(iframe.contentDocument.body, {}, true);\n }\n } catch (_b) {\n // Failed to clone iframe\n }\n return iframe.cloneNode(false);\n}\nasync function cloneSingleNode(node, options) {\n if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(node, HTMLCanvasElement)) {\n return cloneCanvasElement(node);\n }\n if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(node, HTMLVideoElement)) {\n return cloneVideoElement(node, options);\n }\n if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(node, HTMLIFrameElement)) {\n return cloneIFrameElement(node);\n }\n return node.cloneNode(false);\n}\nconst isSlotElement = (node)=>node.tagName != null && node.tagName.toUpperCase() === \"SLOT\";\nasync function cloneChildren(nativeNode, clonedNode, options) {\n var _a, _b;\n let children = [];\n if (isSlotElement(nativeNode) && nativeNode.assignedNodes) {\n children = (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(nativeNode.assignedNodes());\n } else if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLIFrameElement) && ((_a = nativeNode.contentDocument) === null || _a === void 0 ? void 0 : _a.body)) {\n children = (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(nativeNode.contentDocument.body.childNodes);\n } else {\n children = (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(((_b = nativeNode.shadowRoot) !== null && _b !== void 0 ? _b : nativeNode).childNodes);\n }\n if (children.length === 0 || (0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLVideoElement)) {\n return clonedNode;\n }\n await children.reduce((deferred, child)=>deferred.then(()=>cloneNode(child, options)).then((clonedChild)=>{\n if (clonedChild) {\n clonedNode.appendChild(clonedChild);\n }\n }), Promise.resolve());\n return clonedNode;\n}\nfunction cloneCSSStyle(nativeNode, clonedNode) {\n const targetStyle = clonedNode.style;\n if (!targetStyle) {\n return;\n }\n const sourceStyle = window.getComputedStyle(nativeNode);\n if (sourceStyle.cssText) {\n targetStyle.cssText = sourceStyle.cssText;\n targetStyle.transformOrigin = sourceStyle.transformOrigin;\n } else {\n (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(sourceStyle).forEach((name)=>{\n let value = sourceStyle.getPropertyValue(name);\n if (name === \"font-size\" && value.endsWith(\"px\")) {\n const reducedFont = Math.floor(parseFloat(value.substring(0, value.length - 2))) - 0.1;\n value = `${reducedFont}px`;\n }\n if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLIFrameElement) && name === \"display\" && value === \"inline\") {\n value = \"block\";\n }\n if (name === \"d\" && clonedNode.getAttribute(\"d\")) {\n value = `path(${clonedNode.getAttribute(\"d\")})`;\n }\n targetStyle.setProperty(name, value, sourceStyle.getPropertyPriority(name));\n });\n }\n}\nfunction cloneInputValue(nativeNode, clonedNode) {\n if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLTextAreaElement)) {\n clonedNode.innerHTML = nativeNode.value;\n }\n if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLInputElement)) {\n clonedNode.setAttribute(\"value\", nativeNode.value);\n }\n}\nfunction cloneSelectValue(nativeNode, clonedNode) {\n if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLSelectElement)) {\n const clonedSelect = clonedNode;\n const selectedOption = Array.from(clonedSelect.children).find((child)=>nativeNode.value === child.getAttribute(\"value\"));\n if (selectedOption) {\n selectedOption.setAttribute(\"selected\", \"\");\n }\n }\n}\nfunction decorate(nativeNode, clonedNode) {\n if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(clonedNode, Element)) {\n cloneCSSStyle(nativeNode, clonedNode);\n (0,_clone_pseudos__WEBPACK_IMPORTED_MODULE_0__.clonePseudoElements)(nativeNode, clonedNode);\n cloneInputValue(nativeNode, clonedNode);\n cloneSelectValue(nativeNode, clonedNode);\n }\n return clonedNode;\n}\nasync function ensureSVGSymbols(clone, options) {\n const uses = clone.querySelectorAll ? clone.querySelectorAll(\"use\") : [];\n if (uses.length === 0) {\n return clone;\n }\n const processedDefs = {};\n for(let i = 0; i < uses.length; i++){\n const use = uses[i];\n const id = use.getAttribute(\"xlink:href\");\n if (id) {\n const exist = clone.querySelector(id);\n const definition = document.querySelector(id);\n if (!exist && definition && !processedDefs[id]) {\n // eslint-disable-next-line no-await-in-loop\n processedDefs[id] = await cloneNode(definition, options, true);\n }\n }\n }\n const nodes = Object.values(processedDefs);\n if (nodes.length) {\n const ns = \"http://www.w3.org/1999/xhtml\";\n const svg = document.createElementNS(ns, \"svg\");\n svg.setAttribute(\"xmlns\", ns);\n svg.style.position = \"absolute\";\n svg.style.width = \"0\";\n svg.style.height = \"0\";\n svg.style.overflow = \"hidden\";\n svg.style.display = \"none\";\n const defs = document.createElementNS(ns, \"defs\");\n svg.appendChild(defs);\n for(let i = 0; i < nodes.length; i++){\n defs.appendChild(nodes[i]);\n }\n clone.appendChild(svg);\n }\n return clone;\n}\nasync function cloneNode(node, options, isRoot) {\n if (!isRoot && options.filter && !options.filter(node)) {\n return null;\n }\n return Promise.resolve(node).then((clonedNode)=>cloneSingleNode(clonedNode, options)).then((clonedNode)=>cloneChildren(node, clonedNode, options)).then((clonedNode)=>decorate(node, clonedNode)).then((clonedNode)=>ensureSVGSymbols(clonedNode, options));\n} //# sourceMappingURL=clone-node.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvaHRtbC10by1pbWFnZS9lcy9jbG9uZS1ub2RlLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQXNEO0FBQ2E7QUFDN0I7QUFDUTtBQUM5QyxlQUFlTSxtQkFBbUJDLE1BQU07SUFDcEMsTUFBTUMsVUFBVUQsT0FBT0UsU0FBUztJQUNoQyxJQUFJRCxZQUFZLFVBQVU7UUFDdEIsT0FBT0QsT0FBT0csU0FBUyxDQUFDO0lBQzVCO0lBQ0EsT0FBT1Qsa0RBQVdBLENBQUNPO0FBQ3ZCO0FBQ0EsZUFBZUcsa0JBQWtCQyxLQUFLLEVBQUVDLE9BQU87SUFDM0MsSUFBSUQsTUFBTUUsVUFBVSxFQUFFO1FBQ2xCLE1BQU1QLFNBQVNRLFNBQVNDLGFBQWEsQ0FBQztRQUN0QyxNQUFNQyxNQUFNVixPQUFPVyxVQUFVLENBQUM7UUFDOUJYLE9BQU9ZLEtBQUssR0FBR1AsTUFBTVEsV0FBVztRQUNoQ2IsT0FBT2MsTUFBTSxHQUFHVCxNQUFNVSxZQUFZO1FBQ2xDTCxRQUFRLFFBQVFBLFFBQVEsS0FBSyxJQUFJLEtBQUssSUFBSUEsSUFBSU0sU0FBUyxDQUFDWCxPQUFPLEdBQUcsR0FBR0wsT0FBT1ksS0FBSyxFQUFFWixPQUFPYyxNQUFNO1FBQ2hHLE1BQU1iLFVBQVVELE9BQU9FLFNBQVM7UUFDaEMsT0FBT1Isa0RBQVdBLENBQUNPO0lBQ3ZCO0lBQ0EsTUFBTWdCLFNBQVNaLE1BQU1ZLE1BQU07SUFDM0IsTUFBTUMsY0FBY3JCLG1EQUFXQSxDQUFDb0I7SUFDaEMsTUFBTWhCLFVBQVUsTUFBTUgsMkRBQWlCQSxDQUFDbUIsUUFBUUMsYUFBYVo7SUFDN0QsT0FBT1osa0RBQVdBLENBQUNPO0FBQ3ZCO0FBQ0EsZUFBZWtCLG1CQUFtQkMsTUFBTTtJQUNwQyxJQUFJQztJQUNKLElBQUk7UUFDQSxJQUFJLENBQUNBLEtBQUtELFdBQVcsUUFBUUEsV0FBVyxLQUFLLElBQUksS0FBSyxJQUFJQSxPQUFPRSxlQUFlLE1BQU0sUUFBUUQsT0FBTyxL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QixNQUFNQyxPQUFPaEcsU0FBUzRGLGVBQWUsQ0FBQ0YsSUFBSTtRQUMxQ0MsSUFBSXJELFdBQVcsQ0FBQzBEO1FBQ2hCLElBQUssSUFBSWYsSUFBSSxHQUFHQSxJQUFJTSxNQUFNdkQsTUFBTSxFQUFFaUQsSUFBSztZQUNuQ2UsS0FBSzFELFdBQVcsQ0FBQ2lELEtBQUssQ0FBQ04sRUFBRTtRQUM3QjtRQUNBSixNQUFNdkMsV0FBVyxDQUFDcUQ7SUFDdEI7SUFDQSxPQUFPZDtBQUNYO0FBQ08sZUFBZWxGLFVBQVV1QixJQUFJLEVBQUVwQixPQUFPLEVBQUVtRyxNQUFNO0lBQ2pELElBQUksQ0FBQ0EsVUFBVW5HLFFBQVFvRyxNQUFNLElBQUksQ0FBQ3BHLFFBQVFvRyxNQUFNLENBQUNoRixPQUFPO1FBQ3BELE9BQU87SUFDWDtJQUNBLE9BQU9xQixRQUFRQyxPQUFPLENBQUN0QixNQUNsQmtCLElBQUksQ0FBQyxDQUFDVCxhQUFlVixnQkFBZ0JVLFlBQVk3QixVQUNqRHNDLElBQUksQ0FBQyxDQUFDVCxhQUFlRixjQUFjUCxNQUFNUyxZQUFZN0IsVUFDckRzQyxJQUFJLENBQUMsQ0FBQ1QsYUFBZStDLFNBQVN4RCxNQUFNUyxhQUNwQ1MsSUFBSSxDQUFDLENBQUNULGFBQWVpRCxpQkFBaUJqRCxZQUFZN0I7QUFDM0QsRUFDQSxzQ0FBc0MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9uZXh0Y2hhdC8uL25vZGVfbW9kdWxlcy9odG1sLXRvLWltYWdlL2VzL2Nsb25lLW5vZGUuanM/ZTU3YSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjbG9uZVBzZXVkb0VsZW1lbnRzIH0gZnJvbSAnLi9jbG9uZS1wc2V1ZG9zJztcbmltcG9ydCB7IGNyZWF0ZUltYWdlLCB0b0FycmF5LCBpc0luc3RhbmNlT2ZFbGVtZW50IH0gZnJvbSAnLi91dGlsJztcbmltcG9ydCB7IGdldE1pbWVUeXBlIH0gZnJvbSAnLi9taW1lcyc7XG5pbXBvcnQgeyByZXNvdXJjZVRvRGF0YVVSTCB9IGZyb20gJy4vZGF0YXVybCc7XG5hc3luYyBmdW5jdGlvbiBjbG9uZUNhbnZhc0VsZW1lbnQoY2FudmFzKSB7XG4gICAgY29uc3QgZGF0YVVSTCA9IGNhbnZhcy50b0RhdGFVUkwoKTtcbiAgICBpZiAoZGF0YVVSTCA9PT0gJ2RhdGE6LCcpIHtcbiAgICAgICAgcmV0dXJuIGNhbnZhcy5jbG9uZU5vZGUoZmFsc2UpO1xuICAgIH1cbiAgICByZXR1cm4gY3JlYXRlSW1hZ2UoZGF0YVVSTCk7XG59XG5hc3luYyBmdW5jdGlvbiBjbG9uZVZpZGVvRWxlbWVudCh2aWRlbywgb3B0aW9ucykge1xuICAgIGlmICh2aWRlby5jdXJyZW50U3JjKSB7XG4gICAgICAgIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpO1xuICAgICAgICBjb25zdCBjdHggPSBjYW52YXMuZ2V0Q29udGV4dCgnMmQnKTtcbiAgICAgICAgY2FudmFzLndpZHRoID0gdmlkZW8uY2xpZW50V2lkdGg7XG4gICAgICAgIGNhbnZhcy5oZWlnaHQgPSB2aWRlby5jbGllbnRIZWlnaHQ7XG4gICAgICAgIGN0eCA9PT0gbnVsbCB8fCBjdHggPT09IHZvaWQgMCA/IHZvaWQgMCA6IGN0eC5kcmF3SW1hZ2UodmlkZW8sIDAsIDAsIGNhbnZhcy53aWR0aCwgY2FudmFzLmhlaWdodCk7XG4gICAgICAgIGNvbnN0IGRhdGFVUkwgPSBjYW52YXMudG9EYXRhVVJMKCk7XG4gICAgICAgIHJldHVybiBjcmVhdGVJbWFnZShkYXRhVVJMKTtcbiAgICB9XG4gICAgY29uc3QgcG9zdGVyID0gdmlkZW8ucG9zdGVyO1xuICAgIGNvbnN0IGNvbnRlbnRUeXBlID0gZ2V0TWltZVR5cGUocG9zdGVyKTtcbiAgICBjb25zdCBkYXRhVVJMID0gYXdhaXQgcmVzb3VyY2VUb0RhdGFVUkwocG9zdGVyLCBjb250ZW50VHlwZSwgb3B0aW9ucyk7XG4gICAgcmV0dXJuIGNyZWF0ZUltYWdlKGRhdGFVUkwpO1xufVxuYXN5bmMgZnVuY3Rpb24gY2xvbmVJRnJhbWVFbGVtZW50KGlmcmFtZSkge1xuICAgIHZhciBfYTtcbiAgICB0cnkge1xuICAgICAgICBpZiAoKF9hID0gaWZyYW1lID09PSBudWxsIHx8IGlmcmFtZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogaWZyYW1lLmNvbnRlbnREb2N1bWVudCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmJvZHkpIHtcbiAgICAgICAgICAgIHJldHVybiAoYXdhaXQgY2xvbmVOb2RlKGlmcmFtZS5jb250ZW50RG9jdW1lbnQuYm9keSwge30sIHRydWUpKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBjYXRjaCAoX2IpIHtcbiAgICAgICAgLy8gRmFpbGVkIHRvIGNsb25lIGlmcmFtZVxuICAgIH1cbiAgICByZXR1cm4gaWZyYW1lLmNsb25lTm9kZShmYWxzZSk7XG59XG5hc3luYyBmdW5jdGlvbiBjbG9uZVNpbmdsZU5vZGUobm9kZSwgb3B0aW9ucykge1xuICAgIGlmIChpc0luc3RhbmNlT2ZFbGVtZW50KG5vZGUsIEhUTUxDYW52YXNFbGVtZW50KSkge1xuICAgICAgICByZXR1cm4gY2xvbmVDYW52YXNFbGVtZW50KG5vZGUpO1xuICAgIH1cbiAgICBpZiAoaXNJbnN0YW5jZU9mRWxlbWVudChub2RlLCBIVE1MVmlkZW9FbGVtZW50KSkge1xuICAgICAgICByZXR1cm4gY2xvbmVWaWRlb0VsZW1lbnQobm9kZSwgb3B0aW9ucyk7XG4gICAgfVxuICAgIGlmIChpc0luc3RhbmNlT2ZFbGVtZW50KG5vZGUsIEhUTUxJRnJhbWVFbGVtZW50KSkge1xuICAgICAgICByZXR1cm4gY2xvbmVJRnJhbWVFbGVtZW50KG5vZGUpO1xuICAgIH1cbiAgICByZXR1cm4gbm9kZS5jbG9uZU5vZGUoZmFsc2UpO1xufVxuY29uc3QgaXNTbG90RWxlbWVudCA9IChub2RlKSA9PiBub2RlLnRhZ05hbWUgIT0gbnVsbCAmJiBub2RlLnRhZ05hbWUudG9VcHBlckNhc2UoKSA9PT0gJ1NMT1QnO1xuYXN5bmMgZnVuY3Rpb24gY2xvbmVDaGlsZHJlbihuYXRpdmVOb2RlLCBjbG9uZWROb2RlLCBvcHRpb25zKSB7XG4gICAgdmFyIF9hLCBfYjtcbiAgICBsZXQgY2hpbGRyZW4gPSBbXTtcbiAgICBpZiAoaXNTbG90RWxlbWVudChuYXRpdmVOb2RlKSAmJiBuYXRpdmVOb2RlLmFzc2lnbmVkTm9kZXMpIHtcbiAgICAgICAgY2hpbGRyZW4gPSB0b0FycmF5KG5hdGl2ZU5vZGUuYXNzaWduZWROb2RlcygpKTtcbiAgICB9XG4gICAgZWxzZSBpZiAoaXNJbnN0YW5jZU9mRWxlbWVudChuYXRpdmVOb2RlLCBIVE1MSUZyYW1lRWxlbWVudCkgJiZcbiAgICAgICAgKChfYSA9IG5hdGl2ZU5vZGUuY29udGVudERvY3VtZW50KSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuYm9keSkpIHtcbiAgICAgICAgY2hpbGRyZW4gPSB0b0FycmF5KG5hdGl2ZU5vZGUuY29udGVudERvY3VtZW50LmJvZHkuY2hpbGROb2Rlcyk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBjaGlsZHJlbiA9IHRvQXJyYXkoKChfYiA9IG5hdGl2ZU5vZGUuc2hhZG93Um9vdCkgIT09IG51bGwgJiYgX2IgIT09IHZvaWQgMCA/IF9iIDogbmF0aXZlTm9kZSkuY2hpbGROb2Rlcyk7XG4gICAgfVxuICAgIGlmIChjaGlsZHJlbi5sZW5ndGggPT09IDAgfHxcbiAgICAgICAgaXNJbnN0YW5jZU9mRWxlbWVudChuYXRpdmVOb2RlLCBIVE1MVmlkZW9FbGVtZW50KSkge1xuICAgICAgICByZXR1cm4gY2xvbmVkTm9kZTtcbiAgICB9XG4gICAgYXdhaXQgY2hpbGRyZW4ucmVkdWNlKChkZWZlcnJlZCwgY2hpbGQpID0+IGRlZmVycmVkXG4gICAgICAgIC50aGVuKCgpID0+IGNsb25lTm9kZShjaGlsZCwgb3B0aW9ucykpXG4gICAgICAgIC50aGVuKChjbG9uZWRDaGlsZCkgPT4ge1xuICAgICAgICBpZiAoY2xvbmVkQ2hpbGQpIHtcbiAgICAgICAgICAgIGNsb25lZE5vZGUuYXBwZW5kQ2hpbGQoY2xvbmVkQ2hpbGQpO1xuICAgICAgICB9XG4gICAgfSksIFByb21pc2UucmVzb2x2ZSgpKTtcbiAgICByZXR1cm4gY2xvbmVkTm9kZTtcbn1cbmZ1bmN0aW9uIGNsb25lQ1NTU3R5bGUobmF0aXZlTm9kZSwgY2xvbmVkTm9kZSkge1xuICAgIGNvbnN0IHRhcmdldFN0eWxlID0gY2xvbmVkTm9kZS5zdHlsZTtcbiAgICBpZiAoIXRhcmdldFN0eWxlKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3Qgc291cmNlU3R5bGUgPSB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShuYXRpdmVOb2RlKTtcbiAgICBpZiAoc291cmNlU3R5bGUuY3NzVGV4dCkge1xuICAgICAgICB0YXJnZXRTdHlsZS5jc3NUZXh0ID0gc291cmNlU3R5bGUuY3NzVGV4dDtcbiAgICAgICAgdGFyZ2V0U3R5bGUudHJhbnNmb3JtT3JpZ2luID0gc291cmNlU3R5bGUudHJhbnNmb3JtT3JpZ2luO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgdG9BcnJheShzb3VyY2VTdHlsZSkuZm9yRWFjaCgobmFtZSkgPT4ge1xuICAgICAgICAgICAgbGV0IHZhbHVlID0gc291cmNlU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZShuYW1lKTtcbiAgICAgICAgICAgIGlmIChuYW1lID09PSAnZm9udC1zaXplJyAmJiB2YWx1ZS5lbmRzV2l0aCgncHgnKSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlZHVjZWRGb250ID0gTWF0aC5mbG9vcihwYXJzZUZsb2F0KHZhbHVlLnN1YnN0cmluZygwLCB2YWx1ZS5sZW5ndGggLSAyKSkpIC0gMC4xO1xuICAgICAgICAgICAgICAgIHZhbHVlID0gYCR7cmVkdWNlZEZvbnR9cHhgO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGlzSW5zdGFuY2VPZkVsZW1lbnQobmF0aXZlTm9kZSwgSFRNTElGcmFtZUVsZW1lbnQpICYmXG4gICAgICAgICAgICAgICAgbmFtZSA9PT0gJ2Rpc3BsYXknICYmXG4gICAgICAgICAgICAgICAgdmFsdWUgPT09ICdpbmxpbmUnKSB7XG4gICAgICAgICAgICAgICAgdmFsdWUgPSAnYmxvY2snO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKG5hbWUgPT09ICdkJyAmJiBjbG9uZWROb2RlLmdldEF0dHJpYnV0ZSgnZCcpKSB7XG4gICAgICAgICAgICAgICAgdmFsdWUgPSBgcGF0aCgke2Nsb25lZE5vZGUuZ2V0QXR0cmlidXRlKCdkJyl9KWA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0YXJnZXRTdHlsZS5zZXRQcm9wZXJ0eShuYW1lLCB2YWx1ZSwgc291cmNlU3R5bGUuZ2V0UHJvcGVydHlQcmlvcml0eShuYW1lKSk7XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbmZ1bmN0aW9uIGNsb25lSW5wdXRWYWx1ZShuYXRpdmVOb2RlLCBjbG9uZWROb2RlKSB7XG4gICAgaWYgKGlzSW5zdGFuY2VPZkVsZW1lbnQobmF0aXZlTm9kZSwgSFRNTFRleHRBcmVhRWxlbWVudCkpIHtcbiAgICAgICAgY2xvbmVkTm9kZS5pbm5lckhUTUwgPSBuYXRpdmVOb2RlLnZhbHVlO1xuICAgIH1cbiAgICBpZiAoaXNJbnN0YW5jZU9mRWxlbWVudChuYXRpdmVOb2RlLCBIVE1MSW5wdXRFbGVtZW50KSkge1xuICAgICAgICBjbG9uZWROb2RlLnNldEF0dHJpYnV0ZSgndmFsdWUnLCBuYXRpdmVOb2RlLnZhbHVlKTtcbiAgICB9XG59XG5mdW5jdGlvbiBjbG9uZVNlbGVjdFZhbHVlKG5hdGl2ZU5vZGUsIGNsb25lZE5vZGUpIHtcbiAgICBpZiAoaXNJbnN0YW5jZU9mRWxlbWVudChuYXRpdmVOb2RlLCBIVE1MU2VsZWN0RWxlbWVudCkpIHtcbiAgICAgICAgY29uc3QgY2xvbmVkU2VsZWN0ID0gY2xvbmVkTm9kZTtcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWRPcHRpb24gPSBBcnJheS5mcm9tKGNsb25lZFNlbGVjdC5jaGlsZHJlbikuZmluZCgoY2hpbGQpID0+IG5hdGl2ZU5vZGUudmFsdWUgPT09IGNoaWxkLmdldEF0dHJpYnV0ZSgndmFsdWUnKSk7XG4gICAgICAgIGlmIChzZWxlY3RlZE9wdGlvbikge1xuICAgICAgICAgICAgc2VsZWN0ZWRPcHRpb24uc2V0QXR0cmlidXRlKCdzZWxlY3RlZCcsICcnKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbmZ1bmN0aW9uIGRlY29yYXRlKG5hdGl2ZU5vZGUsIGNsb25lZE5vZGUpIHtcbiAgICBpZiAoaXNJbnN0YW5jZU9mRWxlbWVudChjbG9uZWROb2RlLCBFbGVtZW50KSkge1xuICAgICAgICBjbG9uZUNTU1N0eWxlKG5hdGl2ZU5vZGUsIGNsb25lZE5vZGUpO1xuICAgICAgICBjbG9uZVBzZXVkb0VsZW1lbnRzKG5hdGl2ZU5vZGUsIGNsb25lZE5vZGUpO1xuICAgICAgICBjbG9uZUlucHV0VmFsdWUobmF0aXZlTm9kZSwgY2xvbmVkTm9kZSk7XG4gICAgICAgIGNsb25lU2VsZWN0VmFsdWUobmF0aXZlTm9kZSwgY2xvbmVkTm9kZSk7XG4gICAgfVxuICAgIHJldHVybiBjbG9uZWROb2RlO1xufVxuYXN5bmMgZnVuY3Rpb24gZW5zdXJlU1ZHU3ltYm9scyhjbG9uZSwgb3B0aW9ucykge1xuICAgIGNvbnN0IHVzZXMgPSBjbG9uZS5xdWVyeVNlbGVjdG9yQWxsID8gY2xvbmUucXVlcnlTZWxlY3RvckFsbCgndXNlJykgOiBbXTtcbiAgICBpZiAodXNlcy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgcmV0dXJuIGNsb25lO1xuICAgIH1cbiAgICBjb25zdCBwcm9jZXNzZWREZWZzID0ge307XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB1c2VzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGNvbnN0IHVzZSA9IHVzZXNbaV07XG4gICAgICAgIGNvbnN0IGlkID0gdXNlLmdldEF0dHJpYnV0ZSgneGxpbms6aHJlZicpO1xuICAgICAgICBpZiAoaWQpIHtcbiAgICAgICAgICAgIGNvbnN0IGV4aXN0ID0gY2xvbmUucXVlcnlTZWxlY3RvcihpZCk7XG4gICAgICAgICAgICBjb25zdCBkZWZpbml0aW9uID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihpZCk7XG4gICAgICAgICAgICBpZiAoIWV4aXN0ICYmIGRlZmluaXRpb24gJiYgIXByb2Nlc3NlZERlZnNbaWRdKSB7XG4gICAgICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWF3YWl0LWluLWxvb3BcbiAgICAgICAgICAgICAgICBwcm9jZXNzZWREZWZzW2lkXSA9IChhd2FpdCBjbG9uZU5vZGUoZGVmaW5pdGlvbiwgb3B0aW9ucywgdHJ1ZSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIGNvbnN0IG5vZGVzID0gT2JqZWN0LnZhbHVlcyhwcm9jZXNzZWREZWZzKTtcbiAgICBpZiAobm9kZXMubGVuZ3RoKSB7XG4gICAgICAgIGNvbnN0IG5zID0gJ2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwnO1xuICAgICAgICBjb25zdCBzdmcgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMobnMsICdzdmcnKTtcbiAgICAgICAgc3ZnLnNldEF0dHJpYnV0ZSgneG1sbnMnLCBucyk7XG4gICAgICAgIHN2Zy5zdHlsZS5wb3NpdGlvbiA9ICdhYnNvbHV0ZSc7XG4gICAgICAgIHN2Zy5zdHlsZS53aWR0aCA9ICcwJztcbiAgICAgICAgc3ZnLnN0eWxlLmhlaWdodCA9ICcwJztcbiAgICAgICAgc3ZnLnN0eWxlLm92ZXJmbG93ID0gJ2hpZGRlbic7XG4gICAgICAgIHN2Zy5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xuICAgICAgICBjb25zdCBkZWZzID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKG5zLCAnZGVmcycpO1xuICAgICAgICBzdmcuYXBwZW5kQ2hpbGQoZGVmcyk7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbm9kZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGRlZnMuYXBwZW5kQ2hpbGQobm9kZXNbaV0pO1xuICAgICAgICB9XG4gICAgICAgIGNsb25lLmFwcGVuZENoaWxkKHN2Zyk7XG4gICAgfVxuICAgIHJldHVybiBjbG9uZTtcbn1cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjbG9uZU5vZGUobm9kZSwgb3B0aW9ucywgaXNSb290KSB7XG4gICAgaWYgKCFpc1Jvb3QgJiYgb3B0aW9ucy5maWx0ZXIgJiYgIW9wdGlvbnMuZmlsdGVyKG5vZGUpKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG5vZGUpXG4gICAgICAgIC50aGVuKChjbG9uZWROb2RlKSA9PiBjbG9uZVNpbmdsZU5vZGUoY2xvbmVkTm9kZSwgb3B0aW9ucykpXG4gICAgICAgIC50aGVuKChjbG9uZWROb2RlKSA9PiBjbG9uZUNoaWxkcmVuKG5vZGUsIGNsb25lZE5vZGUsIG9wdGlvbnMpKVxuICAgICAgICAudGhlbigoY2xvbmVkTm9kZSkgPT4gZGVjb3JhdGUobm9kZSwgY2xvbmVkTm9kZSkpXG4gICAgICAgIC50aGVuKChjbG9uZWROb2RlKSA9PiBlbnN1cmVTVkdTeW1ib2xzKGNsb25lZE5vZGUsIG9wdGlvbnMpKTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWNsb25lLW5vZGUuanMubWFwIl0sIm5hbWVzIjpbImNsb25lUHNldWRvRWxlbWVudHMiLCJjcmVhdGVJbWFnZSIsInRvQXJyYXkiLCJpc0luc3RhbmNlT2ZFbGVtZW50IiwiZ2V0TWltZVR5cGUiLCJyZXNvdXJjZVRvRGF0YVVSTCIsImNsb25lQ2FudmFzRWxlbWVudCIsImNhbnZhcyIsImRhdGFVUkwiLCJ0b0RhdGFVUkwiLCJjbG9uZU5vZGUiLCJjbG9uZVZpZGVvRWxlbWVudCIsInZpZGVvIiwib3B0aW9ucyIsImN1cnJlbnRTcmMiLCJkb2N1bWVudCIsImNyZWF0ZUVsZW1lbnQiLCJjdHgiLCJnZXRDb250ZXh0Iiwid2lkdGgiLCJjbGllbnRXaWR0aCIsImhlaWdodCIsImNsaWVudEhlaWdodCIsImRyYXdJbWFnZSIsInBvc3RlciIsImNvbnRlbnRUeXBlIiwiY2xvbmVJRnJhbWVFbGVtZW50IiwiaWZyYW1lIiwiX2EiLCJjb250ZW50RG9jdW1lbnQiLCJib2R5IiwiX2IiLCJjbG9uZVNpbmdsZU5vZGUiLCJub2RlIiwiSFRNTENhbnZhc0VsZW1lbnQiLCJIVE1MVmlkZW9FbGVtZW50IiwiSFRNTElGcmFtZUVsZW1lbnQiLCJpc1Nsb3RFbGVtZW50IiwidGFnTmFtZSIsInRvVXBwZXJDYXNlIiwiY2xvbmVDaGlsZHJlbiIsIm5hdGl2ZU5vZGUiLCJjbG9uZWROb2RlIiwiY2hpbGRyZW4iLCJhc3NpZ25lZE5vZGVzIiwiY2hpbGROb2RlcyIsInNoYWRvd1Jvb3QiLCJsZW5ndGgiLCJyZWR1Y2UiLCJkZWZlcnJlZCIsImNoaWxkIiwidGhlbiIsImNsb25lZENoaWxkIiwiYXBwZW5kQ2hpbGQiLCJQcm9taXNlIiwicmVzb2x2ZSIsImNsb25lQ1NTU3R5bGUiLCJ0YXJnZXRTdHlsZSIsInN0eWxlIiwic291cmNlU3R5bGUiLCJ3aW5kb3ciLCJnZXRDb21wdXRlZFN0eWxlIiwiY3NzVGV4dCIsInRyYW5zZm9ybU9yaWdpbiIsImZvckVhY2giLCJuYW1lIiwidmFsdWUiLCJnZXRQcm9wZXJ0eVZhbHVlIiwiZW5kc1dpdGgiLCJyZWR1Y2VkRm9udCIsIk1hdGgiLCJmbG9vciIsInBhcnNlRmxvYXQiLCJzdWJzdHJpbmciLCJnZXRBdHRyaWJ1dGUiLCJzZXRQcm9wZXJ0eSIsImdldFByb3BlcnR5UHJpb3JpdHkiLCJjbG9uZUlucHV0VmFsdWUiLCJIVE1MVGV4dEFyZWFFbGVtZW50IiwiaW5uZXJIVE1MIiwiSFRNTElucHV0RWxlbWVudCIsInNldEF0dHJpYnV0ZSIsImNsb25lU2VsZWN0VmFsdWUiLCJIVE1MU2VsZWN0RWxlbWVudCIsImNsb25lZFNlbGVjdCIsInNlbGVjdGVkT3B0aW9uIiwiQXJyYXkiLCJmcm9tIiwiZmluZCIsImRlY29yYXRlIiwiRWxlbWVudCIsImVuc3VyZVNWR1N5bWJvbHMiLCJjbG9uZSIsInVzZXMiLCJxdWVyeVNlbGVjdG9yQWxsIiwicHJvY2Vzc2VkRGVmcyIsImkiLCJ1c2UiLCJpZCIsImV4aXN0IiwicXVlcnlTZWxlY3RvciIsImRlZmluaXRpb24iLCJub2RlcyIsIk9iamVjdCIsInZhbHVlcyIsIm5zIiwic3ZnIiwiY3JlYXRlRWxlbWVudE5TIiwicG9zaXRpb24iLCJvdmVyZmxvdyIsImRpc3BsYXkiLCJkZWZzIiwiaXNSb290IiwiZmlsdGVyIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/html-to-image/es/clone-node.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/html-to-image/es/clone-pseudos.js":
/*!********************************************************!*\
!*** ./node_modules/html-to-image/es/clone-pseudos.js ***!
\********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ clonePseudoElements: () => (/* binding */ clonePseudoElements)\n/* harmony export */ });\n/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ \"(ssr)/./node_modules/html-to-image/es/util.js\");\n\nfunction formatCSSText(style) {\n const content = style.getPropertyValue(\"content\");\n return `${style.cssText} content: '${content.replace(/'|\"/g, \"\")}';`;\n}\nfunction formatCSSProperties(style) {\n return (0,_util__WEBPACK_IMPORTED_MODULE_0__.toArray)(style).map((name)=>{\n const value = style.getPropertyValue(name);\n const priority = style.getPropertyPriority(name);\n return `${name}: ${value}${priority ? \" !important\" : \"\"};`;\n }).join(\" \");\n}\nfunction getPseudoElementStyle(className, pseudo, style) {\n const selector = `.${className}:${pseudo}`;\n const cssText = style.cssText ? formatCSSText(style) : formatCSSProperties(style);\n return document.createTextNode(`${selector}{${cssText}}`);\n}\nfunction clonePseudoElement(nativeNode, clonedNode, pseudo) {\n const style = window.getComputedStyle(nativeNode, pseudo);\n const content = style.getPropertyValue(\"content\");\n if (content === \"\" || content === \"none\") {\n return;\n }\n const className = (0,_util__WEBPACK_IMPORTED_MODULE_0__.uuid)();\n try {\n clonedNode.className = `${clonedNode.className} ${className}`;\n } catch (err) {\n return;\n }\n const styleElement = document.createElement(\"style\");\n styleElement.appendChild(getPseudoElementStyle(className, pseudo, style));\n clonedNode.appendChild(styleElement);\n}\nfunction clonePseudoElements(nativeNode, clonedNode) {\n clonePseudoElement(nativeNode, clonedNode, \":before\");\n clonePseudoElement(nativeNode, clonedNode, \":after\");\n} //# sourceMappingURL=clone-pseudos.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvaHRtbC10by1pbWFnZS9lcy9jbG9uZS1wc2V1ZG9zLmpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQXVDO0FBQ3ZDLFNBQVNFLGNBQWNDLEtBQUs7SUFDeEIsTUFBTUMsVUFBVUQsTUFBTUUsZ0JBQWdCLENBQUM7SUFDdkMsT0FBTyxDQUFDLEVBQUVGLE1BQU1HLE9BQU8sQ0FBQyxXQUFXLEVBQUVGLFFBQVFHLE9BQU8sQ0FBQyxRQUFRLElBQUksRUFBRSxDQUFDO0FBQ3hFO0FBQ0EsU0FBU0Msb0JBQW9CTCxLQUFLO0lBQzlCLE9BQU9GLDhDQUFPQSxDQUFDRSxPQUNWTSxHQUFHLENBQUMsQ0FBQ0M7UUFDTixNQUFNQyxRQUFRUixNQUFNRSxnQkFBZ0IsQ0FBQ0s7UUFDckMsTUFBTUUsV0FBV1QsTUFBTVUsbUJBQW1CLENBQUNIO1FBQzNDLE9BQU8sQ0FBQyxFQUFFQSxLQUFLLEVBQUUsRUFBRUMsTUFBTSxFQUFFQyxXQUFXLGdCQUFnQixHQUFHLENBQUMsQ0FBQztJQUMvRCxHQUNLRSxJQUFJLENBQUM7QUFDZDtBQUNBLFNBQVNDLHNCQUFzQkMsU0FBUyxFQUFFQyxNQUFNLEVBQUVkLEtBQUs7SUFDbkQsTUFBTWUsV0FBVyxDQUFDLENBQUMsRUFBRUYsVUFBVSxDQUFDLEVBQUVDLE9BQU8sQ0FBQztJQUMxQyxNQUFNWCxVQUFVSCxNQUFNRyxPQUFPLEdBQ3ZCSixjQUFjQyxTQUNkSyxvQkFBb0JMO0lBQzFCLE9BQU9nQixTQUFTQyxjQUFjLENBQUMsQ0FBQyxFQUFFRixTQUFTLENBQUMsRUFBRVosUUFBUSxDQUFDLENBQUM7QUFDNUQ7QUFDQSxTQUFTZSxtQkFBbUJDLFVBQVUsRUFBRUMsVUFBVSxFQUFFTixNQUFNO0lBQ3RELE1BQU1kLFFBQVFxQixPQUFPQyxnQkFBZ0IsQ0FBQ0gsWUFBWUw7SUFDbEQsTUFBTWIsVUFBVUQsTUFBTUUsZ0JBQWdCLENBQUM7SUFDdkMsSUFBSUQsWUFBWSxNQUFNQSxZQUFZLFFBQVE7UUFDdEM7SUFDSjtJQUNBLE1BQU1ZLFlBQVloQiwyQ0FBSUE7SUFDdEIsSUFBSTtRQUNBdUIsV0FBV1AsU0FBUyxHQUFHLENBQUMsRUFBRU8sV0FBV1AsU0FBUyxDQUFDLENBQUMsRUFBRUEsVUFBVSxDQUFDO0lBQ2pFLEVBQ0EsT0FBT1UsS0FBSztRQUNSO0lBQ0o7SUFDQSxNQUFNQyxlQUFlUixTQUFTUyxhQUFhLENBQUM7SUFDNUNELGFBQWFFLFdBQVcsQ0FBQ2Qsc0JBQXNCQyxXQUFXQyxRQUFRZDtJQUNsRW9CLFdBQVdNLFdBQVcsQ0FBQ0Y7QUFDM0I7QUFDTyxTQUFTRyxvQkFBb0JSLFVBQVUsRUFBRUMsVUFBVTtJQUN0REYsbUJBQW1CQyxZQUFZQyxZQUFZO0lBQzNDRixtQkFBbUJDLFlBQVlDLFlBQVk7QUFDL0MsRUFDQSx5Q0FBeUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9uZXh0Y2hhdC8uL25vZGVfbW9kdWxlcy9odG1sLXRvLWltYWdlL2VzL2Nsb25lLXBzZXVkb3MuanM/MTc5MyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1dWlkLCB0b0FycmF5IH0gZnJvbSAnLi91dGlsJztcbmZ1bmN0aW9uIGZvcm1hdENTU1RleHQoc3R5bGUpIHtcbiAgICBjb25zdCBjb250ZW50ID0gc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnY29udGVudCcpO1xuICAgIHJldHVybiBgJHtzdHlsZS5jc3NUZXh0fSBjb250ZW50OiAnJHtjb250ZW50LnJlcGxhY2UoLyd8XCIvZywgJycpfSc7YDtcbn1cbmZ1bmN0aW9uIGZvcm1hdENTU1Byb3BlcnRpZXMoc3R5bGUpIHtcbiAgICByZXR1cm4gdG9BcnJheShzdHlsZSlcbiAgICAgICAgLm1hcCgobmFtZSkgPT4ge1xuICAgICAgICBjb25zdCB2YWx1ZSA9IHN0eWxlLmdldFByb3BlcnR5VmFsdWUobmFtZSk7XG4gICAgICAgIGNvbnN0IHByaW9yaXR5ID0gc3R5bGUuZ2V0UHJvcGVydHlQcmlvcml0eShuYW1lKTtcbiAgICAgICAgcmV0dXJuIGAke25hbWV9OiAke3ZhbHVlfSR7cHJpb3JpdHkgPyAnICFpbXBvcnRhbnQnIDogJyd9O2A7XG4gICAgfSlcbiAgICAgICAgLmpvaW4oJyAnKTtcbn1cbmZ1bmN0aW9uIGdldFBzZXVkb0VsZW1lbnRTdHlsZShjbGFzc05hbWUsIHBzZXVkbywgc3R5bGUpIHtcbiAgICBjb25zdCBzZWxlY3RvciA9IGAuJHtjbGFzc05hbWV9OiR7cHNldWRvfWA7XG4gICAgY29uc3QgY3NzVGV4dCA9IHN0eWxlLmNzc1RleHRcbiAgICAgICAgPyBmb3JtYXRDU1NUZXh0KHN0eWxlKVxuICAgICAgICA6IGZvcm1hdENTU1Byb3BlcnRpZXMoc3R5bGUpO1xuICAgIHJldHVybiBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShgJHtzZWxlY3Rvcn17JHtjc3NUZXh0fX1gKTtcbn1cbmZ1bmN0aW9uIGNsb25lUHNldWRvRWxlbWVudChuYXRpdmVOb2RlLCBjbG9uZWROb2RlLCBwc2V1ZG8pIHtcbiAgICBjb25zdCBzdHlsZSA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKG5hdGl2ZU5vZGUsIHBzZXVkbyk7XG4gICAgY29uc3QgY29udGVudCA9IHN0eWxlLmdldFByb3BlcnR5VmFsdWUoJ2NvbnRlbnQnKTtcbiAgICBpZiAoY29udGVudCA9PT0gJycgfHwgY29udGVudCA9PT0gJ25vbmUnKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgY2xhc3NOYW1lID0gdXVpZCgpO1xuICAgIHRyeSB7XG4gICAgICAgIGNsb25lZE5vZGUuY2xhc3NOYW1lID0gYCR7Y2xvbmVkTm9kZS5jbGFzc05hbWV9ICR7Y2xhc3NOYW1lfWA7XG4gICAgfVxuICAgIGNhdGNoIChlcnIpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBzdHlsZUVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzdHlsZScpO1xuICAgIHN0eWxlRWxlbWVudC5hcHBlbmRDaGlsZChnZXRQc2V1ZG9FbGVtZW50U3R5bGUoY2xhc3NOYW1lLCBwc2V1ZG8sIHN0eWxlKSk7XG4gICAgY2xvbmVkTm9kZS5hcHBlbmRDaGlsZChzdHlsZUVsZW1lbnQpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGNsb25lUHNldWRvRWxlbWVudHMobmF0aXZlTm9kZSwgY2xvbmVkTm9kZSkge1xuICAgIGNsb25lUHNldWRvRWxlbWVudChuYXRpdmVOb2RlLCBjbG9uZWROb2RlLCAnOmJlZm9yZScpO1xuICAgIGNsb25lUHNldWRvRWxlbWVudChuYXRpdmVOb2RlLCBjbG9uZWROb2RlLCAnOmFmdGVyJyk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1jbG9uZS1wc2V1ZG9zLmpzLm1hcCJdLCJuYW1lcyI6WyJ1dWlkIiwidG9BcnJheSIsImZvcm1hdENTU1RleHQiLCJzdHlsZSIsImNvbnRlbnQiLCJnZXRQcm9wZXJ0eVZhbHVlIiwiY3NzVGV4dCIsInJlcGxhY2UiLCJmb3JtYXRDU1NQcm9wZXJ0aWVzIiwibWFwIiwibmFtZSIsInZhbHVlIiwicHJpb3JpdHkiLCJnZXRQcm9wZXJ0eVByaW9yaXR5Iiwiam9pbiIsImdldFBzZXVkb0VsZW1lbnRTdHlsZSIsImNsYXNzTmFtZSIsInBzZXVkbyIsInNlbGVjdG9yIiwiZG9jdW1lbnQiLCJjcmVhdGVUZXh0Tm9kZSIsImNsb25lUHNldWRvRWxlbWVudCIsIm5hdGl2ZU5vZGUiLCJjbG9uZWROb2RlIiwid2luZG93IiwiZ2V0Q29tcHV0ZWRTdHlsZSIsImVyciIsInN0eWxlRWxlbWVudCIsImNyZWF0ZUVsZW1lbnQiLCJhcHBlbmRDaGlsZCIsImNsb25lUHNldWRvRWxlbWVudHMiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/html-to-image/es/clone-pseudos.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/html-to-image/es/dataurl.js":
/*!**************************************************!*\
!*** ./node_modules/html-to-image/es/dataurl.js ***!
\**************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ fetchAsDataURL: () => (/* binding */ fetchAsDataURL),\n/* harmony export */ isDataUrl: () => (/* binding */ isDataUrl),\n/* harmony export */ makeDataUrl: () => (/* binding */ makeDataUrl),\n/* harmony export */ resourceToDataURL: () => (/* binding */ resourceToDataURL)\n/* harmony export */ });\nfunction getContentFromDataUrl(dataURL) {\n return dataURL.split(/,/)[1];\n}\nfunction isDataUrl(url) {\n return url.search(/^(data:)/) !== -1;\n}\nfunction makeDataUrl(content, mimeType) {\n return `data:${mimeType};base64,${content}`;\n}\nasync function fetchAsDataURL(url, init, process) {\n const res = await fetch(url, init);\n if (res.status === 404) {\n throw new Error(`Resource \"${res.url}\" not found`);\n }\n const blob = await res.blob();\n return new Promise((resolve, reject)=>{\n const reader = new FileReader();\n reader.onerror = reject;\n reader.onloadend = ()=>{\n try {\n resolve(process({\n res,\n result: reader.result\n }));\n } catch (error) {\n reject(error);\n }\n };\n reader.readAsDataURL(blob);\n });\n}\nconst cache = {};\nfunction getCacheKey(url, contentType, includeQueryParams) {\n let key = url.replace(/\\?.*/, \"\");\n if (includeQueryParams) {\n key = url;\n }\n // font resource\n if (/ttf|otf|eot|woff2?/i.test(key)) {\n key = key.replace(/.*\\//, \"\");\n }\n return contentType ? `[${contentType}]${key}` : key;\n}\nasync function resourceToDataURL(resourceUrl, contentType, options) {\n const cacheKey = getCacheKey(resourceUrl, contentType, options.includeQueryParams);\n if (cache[cacheKey] != null) {\n return cache[cacheKey];\n }\n // ref: https://developer.mozilla.org/en/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest#Bypassing_the_cache\n if (options.cacheBust) {\n // eslint-disable-next-line no-param-reassign\n resourceUrl += (/\\?/.test(resourceUrl) ? \"&\" : \"?\") + new Date().getTime();\n }\n let dataURL;\n try {\n const content = await fetchAsDataURL(resourceUrl, options.fetchRequestInit, ({ res, result })=>{\n if (!contentType) {\n // eslint-disable-next-line no-param-reassign\n contentType = res.headers.get(\"Content-Type\") || \"\";\n }\n return getContentFromDataUrl(result);\n });\n dataURL = makeDataUrl(content, contentType);\n } catch (error) {\n dataURL = options.imagePlaceholder || \"\";\n let msg = `Failed to fetch resource: ${resourceUrl}`;\n if (error) {\n msg = typeof error === \"string\" ? error : error.message;\n }\n if (msg) {\n console.warn(msg);\n }\n }\n cache[cacheKey] = dataURL;\n return dataURL;\n} //# sourceMappingURL=dataurl.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvaHRtbC10by1pbWFnZS9lcy9kYXRhdXJsLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQSxTQUFTQSxzQkFBc0JDLE9BQU87SUFDbEMsT0FBT0EsUUFBUUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFO0FBQ2hDO0FBQ08sU0FBU0MsVUFBVUMsR0FBRztJQUN6QixPQUFPQSxJQUFJQyxNQUFNLENBQUMsZ0JBQWdCLENBQUM7QUFDdkM7QUFDTyxTQUFTQyxZQUFZQyxPQUFPLEVBQUVDLFFBQVE7SUFDekMsT0FBTyxDQUFDLEtBQUssRUFBRUEsU0FBUyxRQUFRLEVBQUVELFFBQVEsQ0FBQztBQUMvQztBQUNPLGVBQWVFLGVBQWVMLEdBQUcsRUFBRU0sSUFBSSxFQUFFQyxPQUFPO0lBQ25ELE1BQU1DLE1BQU0sTUFBTUMsTUFBTVQsS0FBS007SUFDN0IsSUFBSUUsSUFBSUUsTUFBTSxLQUFLLEtBQUs7UUFDcEIsTUFBTSxJQUFJQyxNQUFNLENBQUMsVUFBVSxFQUFFSCxJQUFJUixHQUFHLENBQUMsV0FBVyxDQUFDO0lBQ3JEO0lBQ0EsTUFBTVksT0FBTyxNQUFNSixJQUFJSSxJQUFJO0lBQzNCLE9BQU8sSUFBSUMsUUFBUSxDQUFDQyxTQUFTQztRQUN6QixNQUFNQyxTQUFTLElBQUlDO1FBQ25CRCxPQUFPRSxPQUFPLEdBQUdIO1FBQ2pCQyxPQUFPRyxTQUFTLEdBQUc7WUFDZixJQUFJO2dCQUNBTCxRQUFRUCxRQUFRO29CQUFFQztvQkFBS1ksUUFBUUosT0FBT0ksTUFBTTtnQkFBQztZQUNqRCxFQUNBLE9BQU9DLE9BQU87Z0JBQ1ZOLE9BQU9NO1lBQ1g7UUFDSjtRQUNBTCxPQUFPTSxhQUFhLENBQUNWO0lBQ3pCO0FBQ0o7QUFDQSxNQUFNVyxRQUFRLENBQUM7QUFDZixTQUFTQyxZQUFZeEIsR0FBRyxFQUFFeUIsV0FBVyxFQUFFQyxrQkFBa0I7SUFDckQsSUFBSUMsTUFBTTNCLElBQUk0QixPQUFPLENBQUMsUUFBUTtJQUM5QixJQUFJRixvQkFBb0I7UUFDcEJDLE1BQU0zQjtJQUNWO0lBQ0EsZ0JBQWdCO0lBQ2hCLElBQUksc0JBQXNCNkIsSUFBSSxDQUFDRixNQUFNO1FBQ2pDQSxNQUFNQSxJQUFJQyxPQUFPLENBQUMsUUFBUTtJQUM5QjtJQUNBLE9BQU9ILGNBQWMsQ0FBQyxDQUFDLEVBQUVBLFlBQVksQ0FBQyxFQUFFRSxJQUFJLENBQUMsR0FBR0E7QUFDcEQ7QUFDTyxlQUFlRyxrQkFBa0JDLFdBQVcsRUFBRU4sV0FBVyxFQUFFTyxPQUFPO0lBQ3JFLE1BQU1DLFdBQVdULFlBQVlPLGFBQWFOLGFBQWFPLFFBQVFOLGtCQUFrQjtJQUNqRixJQUFJSCxLQUFLLENBQUNVLFNBQVMsSUFBSSxNQUFNO1FBQ3pCLE9BQU9WLEtBQUssQ0FBQ1UsU0FBUztJQUMxQjtJQUNBLDZHQUE2RztJQUM3RyxJQUFJRCxRQUFRRSxTQUFTLEVBQUU7UUFDbkIsNkNBQTZDO1FBQzdDSCxlQUFlLENBQUMsS0FBS0YsSUFBSSxDQUFDRSxlQUFlLE1BQU0sR0FBRSxJQUFLLElBQUlJLE9BQU9DLE9BQU87SUFDNUU7SUFDQSxJQUFJdkM7SUFDSixJQUFJO1FBQ0EsTUFBTU0sVUFBVSxNQUFNRSxlQUFlMEIsYUFBYUMsUUFBUUssZ0JBQWdCLEVBQUUsQ0FBQyxFQUFFN0IsR0FBRyxFQUFFWSxNQUFNLEVBQUU7WUFDeEYsSUFBSSxDQUFDSyxhQUFhO2dCQUNkLDZDQUE2QztnQkFDN0NBLGNBQWNqQixJQUFJOEIsT0FBTyxDQUFDQyxHQUFHLENBQUMsbUJBQW1CO1lBQ3JEO1lBQ0EsT0FBTzNDLHNCQUFzQndCO1FBQ2pDO1FBQ0F2QixVQUFVSyxZQUFZQyxTQUFTc0I7SUFDbkMsRUFDQSxPQUFPSixPQUFPO1FBQ1Z4QixVQUFVbUMsUUFBUVEsZ0JBQWdCLElBQUk7UUFDdEMsSUFBSUMsTUFBTSxDQUFDLDBCQUEwQixFQUFFVixZQUFZLENBQUM7UUFDcEQsSUFBSVYsT0FBTztZQUNQb0IsTUFBTSxPQUFPcEIsVUFBVSxXQUFXQSxRQUFRQSxNQUFNcUIsT0FBTztRQUMzRDtRQUNBLElBQUlELEtBQUs7WUFDTEUsUUFBUUMsSUFBSSxDQUFDSDtRQUNqQjtJQUNKO0lBQ0FsQixLQUFLLENBQUNVLFNBQVMsR0FBR3BDO0lBQ2xCLE9BQU9BO0FBQ1gsRUFDQSxtQ0FBbUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9uZXh0Y2hhdC8uL25vZGVfbW9kdWxlcy9odG1sLXRvLWltYWdlL2VzL2RhdGF1cmwuanM/Njc4MyJdLCJzb3VyY2VzQ29udGVudCI6WyJmdW5jdGlvbiBnZXRDb250ZW50RnJvbURhdGFVcmwoZGF0YVVSTCkge1xuICAgIHJldHVybiBkYXRhVVJMLnNwbGl0KC8sLylbMV07XG59XG5leHBvcnQgZnVuY3Rpb24gaXNEYXRhVXJsKHVybCkge1xuICAgIHJldHVybiB1cmwuc2VhcmNoKC9eKGRhdGE6KS8pICE9PSAtMTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBtYWtlRGF0YVVybChjb250ZW50LCBtaW1lVHlwZSkge1xuICAgIHJldHVybiBgZGF0YToke21pbWVUeXBlfTtiYXNlNjQsJHtjb250ZW50fWA7XG59XG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZmV0Y2hBc0RhdGFVUkwodXJsLCBpbml0LCBwcm9jZXNzKSB7XG4gICAgY29uc3QgcmVzID0gYXdhaXQgZmV0Y2godXJsLCBpbml0KTtcbiAgICBpZiAocmVzLnN0YXR1cyA9PT0gNDA0KSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgUmVzb3VyY2UgXCIke3Jlcy51cmx9XCIgbm90IGZvdW5kYCk7XG4gICAgfVxuICAgIGNvbnN0IGJsb2IgPSBhd2FpdCByZXMuYmxvYigpO1xuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgIGNvbnN0IHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XG4gICAgICAgIHJlYWRlci5vbmVycm9yID0gcmVqZWN0O1xuICAgICAgICByZWFkZXIub25sb2FkZW5kID0gKCkgPT4ge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICByZXNvbHZlKHByb2Nlc3MoeyByZXMsIHJlc3VsdDogcmVhZGVyLnJlc3VsdCB9KSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgICAgICByZWplY3QoZXJyb3IpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgICByZWFkZXIucmVhZEFzRGF0YVVSTChibG9iKTtcbiAgICB9KTtcbn1cbmNvbnN0IGNhY2hlID0ge307XG5mdW5jdGlvbiBnZXRDYWNoZUtleSh1cmwsIGNvbnRlbnRUeXBlLCBpbmNsdWRlUXVlcnlQYXJhbXMpIHtcbiAgICBsZXQga2V5ID0gdXJsLnJlcGxhY2UoL1xcPy4qLywgJycpO1xuICAgIGlmIChpbmNsdWRlUXVlcnlQYXJhbXMpIHtcbiAgICAgICAga2V5ID0gdXJsO1xuICAgIH1cbiAgICAvLyBmb250IHJlc291cmNlXG4gICAgaWYgKC90dGZ8b3RmfGVvdHx3b2ZmMj8vaS50ZXN0KGtleSkpIHtcbiAgICAgICAga2V5ID0ga2V5LnJlcGxhY2UoLy4qXFwvLywgJycpO1xuICAgIH1cbiAgICByZXR1cm4gY29udGVudFR5cGUgPyBgWyR7Y29udGVudFR5cGV9XSR7a2V5fWAgOiBrZXk7XG59XG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcmVzb3VyY2VUb0RhdGFVUkwocmVzb3VyY2VVcmwsIGNvbnRlbnRUeXBlLCBvcHRpb25zKSB7XG4gICAgY29uc3QgY2FjaGVLZXkgPSBnZXRDYWNoZUtleShyZXNvdXJjZVVybCwgY29udGVudFR5cGUsIG9wdGlvbnMuaW5jbHVkZVF1ZXJ5UGFyYW1zKTtcbiAgICBpZiAoY2FjaGVbY2FjaGVLZXldICE9IG51bGwpIHtcbiAgICAgICAgcmV0dXJuIGNhY2hlW2NhY2hlS2V5XTtcbiAgICB9XG4gICAgLy8gcmVmOiBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi9kb2NzL1dlYi9BUEkvWE1MSHR0cFJlcXVlc3QvVXNpbmdfWE1MSHR0cFJlcXVlc3QjQnlwYXNzaW5nX3RoZV9jYWNoZVxuICAgIGlmIChvcHRpb25zLmNhY2hlQnVzdCkge1xuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcGFyYW0tcmVhc3NpZ25cbiAgICAgICAgcmVzb3VyY2VVcmwgKz0gKC9cXD8vLnRlc3QocmVzb3VyY2VVcmwpID8gJyYnIDogJz8nKSArIG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xuICAgIH1cbiAgICBsZXQgZGF0YVVSTDtcbiAgICB0cnkge1xuICAgICAgICBjb25zdCBjb250ZW50ID0gYXdhaXQgZmV0Y2hBc0RhdGFVUkwocmVzb3VyY2VVcmwsIG9wdGlvbnMuZmV0Y2hSZXF1ZXN0SW5pdCwgKHsgcmVzLCByZXN1bHQgfSkgPT4ge1xuICAgICAgICAgICAgaWYgKCFjb250ZW50VHlwZSkge1xuICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1wYXJhbS1yZWFzc2lnblxuICAgICAgICAgICAgICAgIGNvbnRlbnRUeXBlID0gcmVzLmhlYWRlcnMuZ2V0KCdDb250ZW50LVR5cGUnKSB8fCAnJztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBnZXRDb250ZW50RnJvbURhdGFVcmwocmVzdWx0KTtcbiAgICAgICAgfSk7XG4gICAgICAgIGRhdGFVUkwgPSBtYWtlRGF0YVVybChjb250ZW50LCBjb250ZW50VHlwZSk7XG4gICAgfVxuICAgIGNhdGNoIChlcnJvcikge1xuICAgICAgICBkYXRhVVJMID0gb3B0aW9ucy5pbWFnZVBsYWNlaG9sZGVyIHx8ICcnO1xuICAgICAgICBsZXQgbXNnID0gYEZhaWxlZCB0byBmZXRjaCByZXNvdXJjZTogJHtyZXNvdXJjZVVybH1gO1xuICAgICAgICBpZiAoZXJyb3IpIHtcbiAgICAgICAgICAgIG1zZyA9IHR5cGVvZiBlcnJvciA9PT0gJ3N0cmluZycgPyBlcnJvciA6IGVycm9yLm1lc3NhZ2U7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG1zZykge1xuICAgICAgICAgICAgY29uc29sZS53YXJuKG1zZyk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgY2FjaGVbY2FjaGVLZXldID0gZGF0YVVSTDtcbiAgICByZXR1cm4gZGF0YVVSTDtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGF1cmwuanMubWFwIl0sIm5hbWVzIjpbImdldENvbnRlbnRGcm9tRGF0YVVybCIsImRhdGFVUkwiLCJzcGxpdCIsImlzRGF0YVVybCIsInVybCIsInNlYXJjaCIsIm1ha2VEYXRhVXJsIiwiY29udGVudCIsIm1pbWVUeXBlIiwiZmV0Y2hBc0RhdGFVUkwiLCJpbml0IiwicHJvY2VzcyIsInJlcyIsImZldGNoIiwic3RhdHVzIiwiRXJyb3IiLCJibG9iIiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJyZWFkZXIiLCJGaWxlUmVhZGVyIiwib25lcnJvciIsIm9ubG9hZGVuZCIsInJlc3VsdCIsImVycm9yIiwicmVhZEFzRGF0YVVSTCIsImNhY2hlIiwiZ2V0Q2FjaGVLZXkiLCJjb250ZW50VHlwZSIsImluY2x1ZGVRdWVyeVBhcmFtcyIsImtleSIsInJlcGxhY2UiLCJ0ZXN0IiwicmVzb3VyY2VUb0RhdGFVUkwiLCJyZXNvdXJjZVVybCIsIm9wdGlvbnMiLCJjYWNoZUtleSIsImNhY2hlQnVzdCIsIkRhdGUiLCJnZXRUaW1lIiwiZmV0Y2hSZXF1ZXN0SW5pdCIsImhlYWRlcnMiLCJnZXQiLCJpbWFnZVBsYWNlaG9sZGVyIiwibXNnIiwibWVzc2FnZSIsImNvbnNvbGUiLCJ3YXJuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/html-to-image/es/dataurl.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/html-to-image/es/embed-images.js":
/*!*******************************************************!*\
!*** ./node_modules/html-to-image/es/embed-images.js ***!
\*******************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ embedImages: () => (/* binding */ embedImages)\n/* harmony export */ });\n/* harmony import */ var _embed_resources__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./embed-resources */ \"(ssr)/./node_modules/html-to-image/es/embed-resources.js\");\n/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./util */ \"(ssr)/./node_modules/html-to-image/es/util.js\");\n/* harmony import */ var _dataurl__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./dataurl */ \"(ssr)/./node_modules/html-to-image/es/dataurl.js\");\n/* harmony import */ var _mimes__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./mimes */ \"(ssr)/./node_modules/html-to-image/es/mimes.js\");\n\n\n\n\nasync function embedProp(propName, node, options) {\n var _a;\n const propValue = (_a = node.style) === null || _a === void 0 ? void 0 : _a.getPropertyValue(propName);\n if (propValue) {\n const cssString = await (0,_embed_resources__WEBPACK_IMPORTED_MODULE_0__.embedResources)(propValue, null, options);\n node.style.setProperty(propName, cssString, node.style.getPropertyPriority(propName));\n return true;\n }\n return false;\n}\nasync function embedBackground(clonedNode, options) {\n if (!await embedProp(\"background\", clonedNode, options)) {\n await embedProp(\"background-image\", clonedNode, options);\n }\n if (!await embedProp(\"mask\", clonedNode, options)) {\n await embedProp(\"mask-image\", clonedNode, options);\n }\n}\nasync function embedImageNode(clonedNode, options) {\n const isImageElement = (0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(clonedNode, HTMLImageElement);\n if (!(isImageElement && !(0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.isDataUrl)(clonedNode.src)) && !((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(clonedNode, SVGImageElement) && !(0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.isDataUrl)(clonedNode.href.baseVal))) {\n return;\n }\n const url = isImageElement ? clonedNode.src : clonedNode.href.baseVal;\n const dataURL = await (0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.resourceToDataURL)(url, (0,_mimes__WEBPACK_IMPORTED_MODULE_3__.getMimeType)(url), options);\n await new Promise((resolve, reject)=>{\n clonedNode.onload = resolve;\n clonedNode.onerror = reject;\n const image = clonedNode;\n if (image.decode) {\n image.decode = resolve;\n }\n if (image.loading === \"lazy\") {\n image.loading = \"eager\";\n }\n if (isImageElement) {\n clonedNode.srcset = \"\";\n clonedNode.src = dataURL;\n } else {\n clonedNode.href.baseVal = dataURL;\n }\n });\n}\nasync function embedChildren(clonedNode, options) {\n const children = (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(clonedNode.childNodes);\n const deferreds = children.map((child)=>embedImages(child, options));\n await Promise.all(deferreds).then(()=>clonedNode);\n}\nasync function embedImages(clonedNode, options) {\n if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(clonedNode, Element)) {\n await embedBackground(clonedNode, options);\n await embedImageNode(clonedNode, options);\n await embedChildren(clonedNode, options);\n }\n} //# sourceMappingURL=embed-images.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvaHRtbC10by1pbWFnZS9lcy9lbWJlZC1pbWFnZXMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBbUQ7QUFDRztBQUNHO0FBQ25CO0FBQ3RDLGVBQWVNLFVBQVVDLFFBQVEsRUFBRUMsSUFBSSxFQUFFQyxPQUFPO0lBQzVDLElBQUlDO0lBQ0osTUFBTUMsWUFBWSxDQUFDRCxLQUFLRixLQUFLSSxLQUFLLE1BQU0sUUFBUUYsT0FBTyxLQUFLLElBQUksS0FBSyxJQUFJQSxHQUFHRyxnQkFBZ0IsQ0FBQ047SUFDN0YsSUFBSUksV0FBVztRQUNYLE1BQU1HLFlBQVksTUFBTWQsZ0VBQWNBLENBQUNXLFdBQVcsTUFBTUY7UUFDeERELEtBQUtJLEtBQUssQ0FBQ0csV0FBVyxDQUFDUixVQUFVTyxXQUFXTixLQUFLSSxLQUFLLENBQUNJLG1CQUFtQixDQUFDVDtRQUMzRSxPQUFPO0lBQ1g7SUFDQSxPQUFPO0FBQ1g7QUFDQSxlQUFlVSxnQkFBZ0JDLFVBQVUsRUFBRVQsT0FBTztJQUM5QyxJQUFJLENBQUUsTUFBTUgsVUFBVSxjQUFjWSxZQUFZVCxVQUFXO1FBQ3ZELE1BQU1ILFVBQVUsb0JBQW9CWSxZQUFZVDtJQUNwRDtJQUNBLElBQUksQ0FBRSxNQUFNSCxVQUFVLFFBQVFZLFlBQVlULFVBQVc7UUFDakQsTUFBTUgsVUFBVSxjQUFjWSxZQUFZVDtJQUM5QztBQUNKO0FBQ0EsZUFBZVUsZUFBZUQsVUFBVSxFQUFFVCxPQUFPO0lBQzdDLE1BQU1XLGlCQUFpQmxCLDBEQUFtQkEsQ0FBQ2dCLFlBQVlHO0lBQ3ZELElBQUksQ0FBRUQsQ0FBQUEsa0JBQWtCLENBQUNqQixtREFBU0EsQ0FBQ2UsV0FBV0ksR0FBRyxNQUM3QyxDQUFFcEIsQ0FBQUEsMERBQW1CQSxDQUFDZ0IsWUFBWUssb0JBQzlCLENBQUNwQixtREFBU0EsQ0FBQ2UsV0FBV00sSUFBSSxDQUFDQyxPQUFPLElBQUk7UUFDMUM7SUFDSjtJQUNBLE1BQU1DLE1BQU1OLGlCQUFpQkYsV0FBV0ksR0FBRyxHQUFHSixXQUFXTSxJQUFJLENBQUNDLE9BQU87SUFDckUsTUFBTUUsVUFBVSxNQUFNdkIsMkRBQWlCQSxDQUFDc0IsS0FBS3JCLG1EQUFXQSxDQUFDcUIsTUFBTWpCO0lBQy9ELE1BQU0sSUFBSW1CLFFBQVEsQ0FBQ0MsU0FBU0M7UUFDeEJaLFdBQVdhLE1BQU0sR0FBR0Y7UUFDcEJYLFdBQVdjLE9BQU8sR0FBR0Y7UUFDckIsTUFBTUcsUUFBUWY7UUFDZCxJQUFJZSxNQUFNQyxNQUFNLEVBQUU7WUFDZEQsTUFBTUMsTUFBTSxHQUFHTDtRQUNuQjtRQUNBLElBQUlJLE1BQU1FLE9BQU8sS0FBSyxRQUFRO1lBQzFCRixNQUFNRSxPQUFPLEdBQUc7UUFDcEI7UUFDQSxJQUFJZixnQkFBZ0I7WUFDaEJGLFdBQVdrQixNQUFNLEdBQUc7WUFDcEJsQixXQUFXSSxHQUFHLEdBQUdLO1FBQ3JCLE9BQ0s7WUFDRFQsV0FBV00sSUFBSSxDQUFDQyxPQUFPLEdBQUdFO1FBQzlCO0lBQ0o7QUFDSjtBQUNBLGVBQWVVLGNBQWNuQixVQUFVLEVBQUVULE9BQU87SUFDNUMsTUFBTTZCLFdBQVdyQyw4Q0FBT0EsQ0FBQ2lCLFdBQVdxQixVQUFVO0lBQzlDLE1BQU1DLFlBQVlGLFNBQVNHLEdBQUcsQ0FBQyxDQUFDQyxRQUFVQyxZQUFZRCxPQUFPakM7SUFDN0QsTUFBTW1CLFFBQVFnQixHQUFHLENBQUNKLFdBQVdLLElBQUksQ0FBQyxJQUFNM0I7QUFDNUM7QUFDTyxlQUFleUIsWUFBWXpCLFVBQVUsRUFBRVQsT0FBTztJQUNqRCxJQUFJUCwwREFBbUJBLENBQUNnQixZQUFZNEIsVUFBVTtRQUMxQyxNQUFNN0IsZ0JBQWdCQyxZQUFZVDtRQUNsQyxNQUFNVSxlQUFlRCxZQUFZVDtRQUNqQyxNQUFNNEIsY0FBY25CLFlBQVlUO0lBQ3BDO0FBQ0osRUFDQSx3Q0FBd0MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9uZXh0Y2hhdC8uL25vZGVfbW9kdWxlcy9odG1sLXRvLWltYWdlL2VzL2VtYmVkLWltYWdlcy5qcz84MDQ0Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGVtYmVkUmVzb3VyY2VzIH0gZnJvbSAnLi9lbWJlZC1yZXNvdXJjZXMnO1xuaW1wb3J0IHsgdG9BcnJheSwgaXNJbnN0YW5jZU9mRWxlbWVudCB9IGZyb20gJy4vdXRpbCc7XG5pbXBvcnQgeyBpc0RhdGFVcmwsIHJlc291cmNlVG9EYXRhVVJMIH0gZnJvbSAnLi9kYXRhdXJsJztcbmltcG9ydCB7IGdldE1pbWVUeXBlIH0gZnJvbSAnLi9taW1lcyc7XG5hc3luYyBmdW5jdGlvbiBlbWJlZFByb3AocHJvcE5hbWUsIG5vZGUsIG9wdGlvbnMpIHtcbiAgICB2YXIgX2E7XG4gICAgY29uc3QgcHJvcFZhbHVlID0gKF9hID0gbm9kZS5zdHlsZSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmdldFByb3BlcnR5VmFsdWUocHJvcE5hbWUpO1xuICAgIGlmIChwcm9wVmFsdWUpIHtcbiAgICAgICAgY29uc3QgY3NzU3RyaW5nID0gYXdhaXQgZW1iZWRSZXNvdXJjZXMocHJvcFZhbHVlLCBudWxsLCBvcHRpb25zKTtcbiAgICAgICAgbm9kZS5zdHlsZS5zZXRQcm9wZXJ0eShwcm9wTmFtZSwgY3NzU3RyaW5nLCBub2RlLnN0eWxlLmdldFByb3BlcnR5UHJpb3JpdHkocHJvcE5hbWUpKTtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbn1cbmFzeW5jIGZ1bmN0aW9uIGVtYmVkQmFja2dyb3VuZChjbG9uZWROb2RlLCBvcHRpb25zKSB7XG4gICAgaWYgKCEoYXdhaXQgZW1iZWRQcm9wKCdiYWNrZ3JvdW5kJywgY2xvbmVkTm9kZSwgb3B0aW9ucykpKSB7XG4gICAgICAgIGF3YWl0IGVtYmVkUHJvcCgnYmFja2dyb3VuZC1pbWFnZScsIGNsb25lZE5vZGUsIG9wdGlvbnMpO1xuICAgIH1cbiAgICBpZiAoIShhd2FpdCBlbWJlZFByb3AoJ21hc2snLCBjbG9uZWROb2RlLCBvcHRpb25zKSkpIHtcbiAgICAgICAgYXdhaXQgZW1iZWRQcm9wKCdtYXNrLWltYWdlJywgY2xvbmVkTm9kZSwgb3B0aW9ucyk7XG4gICAgfVxufVxuYXN5bmMgZnVuY3Rpb24gZW1iZWRJbWFnZU5vZGUoY2xvbmVkTm9kZSwgb3B0aW9ucykge1xuICAgIGNvbnN0IGlzSW1hZ2VFbGVtZW50ID0gaXNJbnN0YW5jZU9mRWxlbWVudChjbG9uZWROb2RlLCBIVE1MSW1hZ2VFbGVtZW50KTtcbiAgICBpZiAoIShpc0ltYWdlRWxlbWVudCAmJiAhaXNEYXRhVXJsKGNsb25lZE5vZGUuc3JjKSkgJiZcbiAgICAgICAgIShpc0luc3RhbmNlT2ZFbGVtZW50KGNsb25lZE5vZGUsIFNWR0ltYWdlRWxlbWVudCkgJiZcbiAgICAgICAgICAgICFpc0RhdGFVcmwoY2xvbmVkTm9kZS5ocmVmLmJhc2VWYWwpKSkge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IHVybCA9IGlzSW1hZ2VFbGVtZW50ID8gY2xvbmVkTm9kZS5zcmMgOiBjbG9uZWROb2RlLmhyZWYuYmFzZVZhbDtcbiAgICBjb25zdCBkYXRhVVJMID0gYXdhaXQgcmVzb3VyY2VUb0RhdGFVUkwodXJsLCBnZXRNaW1lVHlwZSh1cmwpLCBvcHRpb25zKTtcbiAgICBhd2FpdCBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgIGNsb25lZE5vZGUub25sb2FkID0gcmVzb2x2ZTtcbiAgICAgICAgY2xvbmVkTm9kZS5vbmVycm9yID0gcmVqZWN0O1xuICAgICAgICBjb25zdCBpbWFnZSA9IGNsb25lZE5vZGU7XG4gICAgICAgIGlmIChpbWFnZS5kZWNvZGUpIHtcbiAgICAgICAgICAgIGltYWdlLmRlY29kZSA9IHJlc29sdmU7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGltYWdlLmxvYWRpbmcgPT09ICdsYXp5Jykge1xuICAgICAgICAgICAgaW1hZ2UubG9hZGluZyA9ICdlYWdlcic7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlzSW1hZ2VFbGVtZW50KSB7XG4gICAgICAgICAgICBjbG9uZWROb2RlLnNyY3NldCA9ICcnO1xuICAgICAgICAgICAgY2xvbmVkTm9kZS5zcmMgPSBkYXRhVVJMO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgY2xvbmVkTm9kZS5ocmVmLmJhc2VWYWwgPSBkYXRhVVJMO1xuICAgICAgICB9XG4gICAgfSk7XG59XG5hc3luYyBmdW5jdGlvbiBlbWJlZENoaWxkcmVuKGNsb25lZE5vZGUsIG9wdGlvbnMpIHtcbiAgICBjb25zdCBjaGlsZHJlbiA9IHRvQXJyYXkoY2xvbmVkTm9kZS5jaGlsZE5vZGVzKTtcbiAgICBjb25zdCBkZWZlcnJlZHMgPSBjaGlsZHJlbi5tYXAoKGNoaWxkKSA9PiBlbWJlZEltYWdlcyhjaGlsZCwgb3B0aW9ucykpO1xuICAgIGF3YWl0IFByb21pc2UuYWxsKGRlZmVycmVkcykudGhlbigoKSA9PiBjbG9uZWROb2RlKTtcbn1cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBlbWJlZEltYWdlcyhjbG9uZWROb2RlLCBvcHRpb25zKSB7XG4gICAgaWYgKGlzSW5zdGFuY2VPZkVsZW1lbnQoY2xvbmVkTm9kZSwgRWxlbWVudCkpIHtcbiAgICAgICAgYXdhaXQgZW1iZWRCYWNrZ3JvdW5kKGNsb25lZE5vZGUsIG9wdGlvbnMpO1xuICAgICAgICBhd2FpdCBlbWJlZEltYWdlTm9kZShjbG9uZWROb2RlLCBvcHRpb25zKTtcbiAgICAgICAgYXdhaXQgZW1iZWRDaGlsZHJlbihjbG9uZWROb2RlLCBvcHRpb25zKTtcbiAgICB9XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1lbWJlZC1pbWFnZXMuanMubWFwIl0sIm5hbWVzIjpbImVtYmVkUmVzb3VyY2VzIiwidG9BcnJheSIsImlzSW5zdGFuY2VPZkVsZW1lbnQiLCJpc0RhdGFVcmwiLCJyZXNvdXJjZVRvRGF0YVVSTCIsImdldE1pbWVUeXBlIiwiZW1iZWRQcm9wIiwicHJvcE5hbWUiLCJub2RlIiwib3B0aW9ucyIsIl9hIiwicHJvcFZhbHVlIiwic3R5bGUiLCJnZXRQcm9wZXJ0eVZhbHVlIiwiY3NzU3RyaW5nIiwic2V0UHJvcGVydHkiLCJnZXRQcm9wZXJ0eVByaW9yaXR5IiwiZW1iZWRCYWNrZ3JvdW5kIiwiY2xvbmVkTm9kZSIsImVtYmVkSW1hZ2VOb2RlIiwiaXNJbWFnZUVsZW1lbnQiLCJIVE1MSW1hZ2VFbGVtZW50Iiwic3JjIiwiU1ZHSW1hZ2VFbGVtZW50IiwiaHJlZiIsImJhc2VWYWwiLCJ1cmwiLCJkYXRhVVJMIiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJvbmxvYWQiLCJvbmVycm9yIiwiaW1hZ2UiLCJkZWNvZGUiLCJsb2FkaW5nIiwic3Jjc2V0IiwiZW1iZWRDaGlsZHJlbiIsImNoaWxkcmVuIiwiY2hpbGROb2RlcyIsImRlZmVycmVkcyIsIm1hcCIsImNoaWxkIiwiZW1iZWRJbWFnZXMiLCJhbGwiLCJ0aGVuIiwiRWxlbWVudCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/html-to-image/es/embed-images.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/html-to-image/es/embed-resources.js":
/*!**********************************************************!*\
!*** ./node_modules/html-to-image/es/embed-resources.js ***!
\**********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ embed: () => (/* binding */ embed),\n/* harmony export */ embedResources: () => (/* binding */ embedResources),\n/* harmony export */ parseURLs: () => (/* binding */ parseURLs),\n/* harmony export */ shouldEmbed: () => (/* binding */ shouldEmbed)\n/* harmony export */ });\n/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ \"(ssr)/./node_modules/html-to-image/es/util.js\");\n/* harmony import */ var _mimes__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./mimes */ \"(ssr)/./node_modules/html-to-image/es/mimes.js\");\n/* harmony import */ var _dataurl__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./dataurl */ \"(ssr)/./node_modules/html-to-image/es/dataurl.js\");\n\n\n\nconst URL_REGEX = /url\\((['\"]?)([^'\"]+?)\\1\\)/g;\nconst URL_WITH_FORMAT_REGEX = /url\\([^)]+\\)\\s*format\\(([\"']?)([^\"']+)\\1\\)/g;\nconst FONT_SRC_REGEX = /src:\\s*(?:url\\([^)]+\\)\\s*format\\([^)]+\\)[,;]\\s*)+/g;\nfunction toRegex(url) {\n // eslint-disable-next-line no-useless-escape\n const escaped = url.replace(/([.*+?^${}()|\\[\\]\\/\\\\])/g, \"\\\\$1\");\n return new RegExp(`(url\\\\(['\"]?)(${escaped})(['\"]?\\\\))`, \"g\");\n}\nfunction parseURLs(cssText) {\n const urls = [];\n cssText.replace(URL_REGEX, (raw, quotation, url)=>{\n urls.push(url);\n return raw;\n });\n return urls.filter((url)=>!(0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.isDataUrl)(url));\n}\nasync function embed(cssText, resourceURL, baseURL, options, getContentFromUrl) {\n try {\n const resolvedURL = baseURL ? (0,_util__WEBPACK_IMPORTED_MODULE_0__.resolveUrl)(resourceURL, baseURL) : resourceURL;\n const contentType = (0,_mimes__WEBPACK_IMPORTED_MODULE_1__.getMimeType)(resourceURL);\n let dataURL;\n if (getContentFromUrl) {\n const content = await getContentFromUrl(resolvedURL);\n dataURL = (0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.makeDataUrl)(content, contentType);\n } else {\n dataURL = await (0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.resourceToDataURL)(resolvedURL, contentType, options);\n }\n return cssText.replace(toRegex(resourceURL), `$1${dataURL}$3`);\n } catch (error) {\n // pass\n }\n return cssText;\n}\nfunction filterPreferredFontFormat(str, { preferredFontFormat }) {\n return !preferredFontFormat ? str : str.replace(FONT_SRC_REGEX, (match)=>{\n // eslint-disable-next-line no-constant-condition\n while(true){\n const [src, , format] = URL_WITH_FORMAT_REGEX.exec(match) || [];\n if (!format) {\n return \"\";\n }\n if (format === preferredFontFormat) {\n return `src: ${src};`;\n }\n }\n });\n}\nfunction shouldEmbed(url) {\n return url.search(URL_REGEX) !== -1;\n}\nasync function embedResources(cssText, baseUrl, options) {\n if (!shouldEmbed(cssText)) {\n return cssText;\n }\n const filteredCSSText = filterPreferredFontFormat(cssText, options);\n const urls = parseURLs(filteredCSSText);\n return urls.reduce((deferred, url)=>deferred.then((css)=>embed(css, url, baseUrl, options)), Promise.resolve(filteredCSSText));\n} //# sourceMappingURL=embed-resources.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvaHRtbC10by1pbWFnZS9lcy9lbWJlZC1yZXNvdXJjZXMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUFvQztBQUNFO0FBQ2dDO0FBQ3RFLE1BQU1LLFlBQVk7QUFDbEIsTUFBTUMsd0JBQXdCO0FBQzlCLE1BQU1DLGlCQUFpQjtBQUN2QixTQUFTQyxRQUFRQyxHQUFHO0lBQ2hCLDZDQUE2QztJQUM3QyxNQUFNQyxVQUFVRCxJQUFJRSxPQUFPLENBQUMsNEJBQTRCO0lBQ3hELE9BQU8sSUFBSUMsT0FBTyxDQUFDLGNBQWMsRUFBRUYsUUFBUSxXQUFXLENBQUMsRUFBRTtBQUM3RDtBQUNPLFNBQVNHLFVBQVVDLE9BQU87SUFDN0IsTUFBTUMsT0FBTyxFQUFFO0lBQ2ZELFFBQVFILE9BQU8sQ0FBQ04sV0FBVyxDQUFDVyxLQUFLQyxXQUFXUjtRQUN4Q00sS0FBS0csSUFBSSxDQUFDVDtRQUNWLE9BQU9PO0lBQ1g7SUFDQSxPQUFPRCxLQUFLSSxNQUFNLENBQUMsQ0FBQ1YsTUFBUSxDQUFDUCxtREFBU0EsQ0FBQ087QUFDM0M7QUFDTyxlQUFlVyxNQUFNTixPQUFPLEVBQUVPLFdBQVcsRUFBRUMsT0FBTyxFQUFFQyxPQUFPLEVBQUVDLGlCQUFpQjtJQUNqRixJQUFJO1FBQ0EsTUFBTUMsY0FBY0gsVUFBVXRCLGlEQUFVQSxDQUFDcUIsYUFBYUMsV0FBV0Q7UUFDakUsTUFBTUssY0FBY3pCLG1EQUFXQSxDQUFDb0I7UUFDaEMsSUFBSU07UUFDSixJQUFJSCxtQkFBbUI7WUFDbkIsTUFBTUksVUFBVSxNQUFNSixrQkFBa0JDO1lBQ3hDRSxVQUFVeEIscURBQVdBLENBQUN5QixTQUFTRjtRQUNuQyxPQUNLO1lBQ0RDLFVBQVUsTUFBTXZCLDJEQUFpQkEsQ0FBQ3FCLGFBQWFDLGFBQWFIO1FBQ2hFO1FBQ0EsT0FBT1QsUUFBUUgsT0FBTyxDQUFDSCxRQUFRYSxjQUFjLENBQUMsRUFBRSxFQUFFTSxRQUFRLEVBQUUsQ0FBQztJQUNqRSxFQUNBLE9BQU9FLE9BQU87SUFDVixPQUFPO0lBQ1g7SUFDQSxPQUFPZjtBQUNYO0FBQ0EsU0FBU2dCLDBCQUEwQkMsR0FBRyxFQUFFLEVBQUVDLG1CQUFtQixFQUFFO0lBQzNELE9BQU8sQ0FBQ0Esc0JBQ0ZELE1BQ0FBLElBQUlwQixPQUFPLENBQUNKLGdCQUFnQixDQUFDMEI7UUFDM0IsaURBQWlEO1FBQ2pELE1BQU8sS0FBTTtZQUNULE1BQU0sQ0FBQ0MsT0FBT0MsT0FBTyxHQUFHN0Isc0JBQXNCOEIsSUFBSSxDQUFDSCxVQUFVLEVBQUU7WUFDL0QsSUFBSSxDQUFDRSxRQUFRO2dCQUNULE9BQU87WUFDWDtZQUNBLElBQUlBLFdBQVdILHFCQUFxQjtnQkFDaEMsT0FBTyxDQUFDLEtBQUssRUFBRUUsSUFBSSxDQUFDLENBQUM7WUFDekI7UUFDSjtJQUNKO0FBQ1I7QUFDTyxTQUFTRyxZQUFZNUIsR0FBRztJQUMzQixPQUFPQSxJQUFJNkIsTUFBTSxDQUFDakMsZUFBZSxDQUFDO0FBQ3RDO0FBQ08sZUFBZWtDLGVBQWV6QixPQUFPLEVBQUUwQixPQUFPLEVBQUVqQixPQUFPO0lBQzFELElBQUksQ0FBQ2MsWUFBWXZCLFVBQVU7UUFDdkIsT0FBT0E7SUFDWDtJQUNBLE1BQU0yQixrQkFBa0JYLDBCQUEwQmhCLFNBQVNTO0lBQzNELE1BQU1SLE9BQU9GLFVBQVU0QjtJQUN2QixPQUFPMUIsS0FBSzJCLE1BQU0sQ0FBQyxDQUFDQyxVQUFVbEMsTUFBUWtDLFNBQVNDLElBQUksQ0FBQyxDQUFDQyxNQUFRekIsTUFBTXlCLEtBQUtwQyxLQUFLK0IsU0FBU2pCLFdBQVd1QixRQUFRQyxPQUFPLENBQUNOO0FBQ3JILEVBQ0EsMkNBQTJDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vbmV4dGNoYXQvLi9ub2RlX21vZHVsZXMvaHRtbC10by1pbWFnZS9lcy9lbWJlZC1yZXNvdXJjZXMuanM/ZmM5ZiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByZXNvbHZlVXJsIH0gZnJvbSAnLi91dGlsJztcbmltcG9ydCB7IGdldE1pbWVUeXBlIH0gZnJvbSAnLi9taW1lcyc7XG5pbXBvcnQgeyBpc0RhdGFVcmwsIG1ha2VEYXRhVXJsLCByZXNvdXJjZVRvRGF0YVVSTCB9IGZyb20gJy4vZGF0YXVybCc7XG5jb25zdCBVUkxfUkVHRVggPSAvdXJsXFwoKFsnXCJdPykoW14nXCJdKz8pXFwxXFwpL2c7XG5jb25zdCBVUkxfV0lUSF9GT1JNQVRfUkVHRVggPSAvdXJsXFwoW14pXStcXClcXHMqZm9ybWF0XFwoKFtcIiddPykoW15cIiddKylcXDFcXCkvZztcbmNvbnN0IEZPTlRfU1JDX1JFR0VYID0gL3NyYzpcXHMqKD86dXJsXFwoW14pXStcXClcXHMqZm9ybWF0XFwoW14pXStcXClbLDtdXFxzKikrL2c7XG5mdW5jdGlvbiB0b1JlZ2V4KHVybCkge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11c2VsZXNzLWVzY2FwZVxuICAgIGNvbnN0IGVzY2FwZWQgPSB1cmwucmVwbGFjZSgvKFsuKis/XiR7fSgpfFxcW1xcXVxcL1xcXFxdKS9nLCAnXFxcXCQxJyk7XG4gICAgcmV0dXJuIG5ldyBSZWdFeHAoYCh1cmxcXFxcKFsnXCJdPykoJHtlc2NhcGVkfSkoWydcIl0/XFxcXCkpYCwgJ2cnKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZVVSTHMoY3NzVGV4dCkge1xuICAgIGNvbnN0IHVybHMgPSBbXTtcbiAgICBjc3NUZXh0LnJlcGxhY2UoVVJMX1JFR0VYLCAocmF3LCBxdW90YXRpb24sIHVybCkgPT4ge1xuICAgICAgICB1cmxzLnB1c2godXJsKTtcbiAgICAgICAgcmV0dXJuIHJhdztcbiAgICB9KTtcbiAgICByZXR1cm4gdXJscy5maWx0ZXIoKHVybCkgPT4gIWlzRGF0YVVybCh1cmwpKTtcbn1cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBlbWJlZChjc3NUZXh0LCByZXNvdXJjZVVSTCwgYmFzZVVSTCwgb3B0aW9ucywgZ2V0Q29udGVudEZyb21VcmwpIHtcbiAgICB0cnkge1xuICAgICAgICBjb25zdCByZXNvbHZlZFVSTCA9IGJhc2VVUkwgPyByZXNvbHZlVXJsKHJlc291cmNlVVJMLCBiYXNlVVJMKSA6IHJlc291cmNlVVJMO1xuICAgICAgICBjb25zdCBjb250ZW50VHlwZSA9IGdldE1pbWVUeXBlKHJlc291cmNlVVJMKTtcbiAgICAgICAgbGV0IGRhdGFVUkw7XG4gICAgICAgIGlmIChnZXRDb250ZW50RnJvbVVybCkge1xuICAgICAgICAgICAgY29uc3QgY29udGVudCA9IGF3YWl0IGdldENvbnRlbnRGcm9tVXJsKHJlc29sdmVkVVJMKTtcbiAgICAgICAgICAgIGRhdGFVUkwgPSBtYWtlRGF0YVVybChjb250ZW50LCBjb250ZW50VHlwZSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBkYXRhVVJMID0gYXdhaXQgcmVzb3VyY2VUb0RhdGFVUkwocmVzb2x2ZWRVUkwsIGNvbnRlbnRUeXBlLCBvcHRpb25zKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gY3NzVGV4dC5yZXBsYWNlKHRvUmVnZXgocmVzb3VyY2VVUkwpLCBgJDEke2RhdGFVUkx9JDNgKTtcbiAgICB9XG4gICAgY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIC8vIHBhc3NcbiAgICB9XG4gICAgcmV0dXJuIGNzc1RleHQ7XG59XG5mdW5jdGlvbiBmaWx0ZXJQcmVmZXJyZWRGb250Rm9ybWF0KHN0ciwgeyBwcmVmZXJyZWRGb250Rm9ybWF0IH0pIHtcbiAgICByZXR1cm4gIXByZWZlcnJlZEZvbnRGb3JtYXRcbiAgICAgICAgPyBzdHJcbiAgICAgICAgOiBzdHIucmVwbGFjZShGT05UX1NSQ19SRUdFWCwgKG1hdGNoKSA9PiB7XG4gICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc3RhbnQtY29uZGl0aW9uXG4gICAgICAgICAgICB3aGlsZSAodHJ1ZSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IFtzcmMsICwgZm9ybWF0XSA9IFVSTF9XSVRIX0ZPUk1BVF9SRUdFWC5leGVjKG1hdGNoKSB8fCBbXTtcbiAgICAgICAgICAgICAgICBpZiAoIWZvcm1hdCkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gJyc7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChmb3JtYXQgPT09IHByZWZlcnJlZEZvbnRGb3JtYXQpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGBzcmM6ICR7c3JjfTtgO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG59XG5leHBvcnQgZnVuY3Rpb24gc2hvdWxkRW1iZWQodXJsKSB7XG4gICAgcmV0dXJuIHVybC5zZWFyY2goVVJMX1JFR0VYKSAhPT0gLTE7XG59XG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZW1iZWRSZXNvdXJjZXMoY3NzVGV4dCwgYmFzZVVybCwgb3B0aW9ucykge1xuICAgIGlmICghc2hvdWxkRW1iZWQoY3NzVGV4dCkpIHtcbiAgICAgICAgcmV0dXJuIGNzc1RleHQ7XG4gICAgfVxuICAgIGNvbnN0IGZpbHRlcmVkQ1NTVGV4dCA9IGZpbHRlclByZWZlcnJlZEZvbnRGb3JtYXQoY3NzVGV4dCwgb3B0aW9ucyk7XG4gICAgY29uc3QgdXJscyA9IHBhcnNlVVJMcyhmaWx0ZXJlZENTU1RleHQpO1xuICAgIHJldHVybiB1cmxzLnJlZHVjZSgoZGVmZXJyZWQsIHVybCkgPT4gZGVmZXJyZWQudGhlbigoY3NzKSA9PiBlbWJlZChjc3MsIHVybCwgYmFzZVVybCwgb3B0aW9ucykpLCBQcm9taXNlLnJlc29sdmUoZmlsdGVyZWRDU1NUZXh0KSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1lbWJlZC1yZXNvdXJjZXMuanMubWFwIl0sIm5hbWVzIjpbInJlc29sdmVVcmwiLCJnZXRNaW1lVHlwZSIsImlzRGF0YVVybCIsIm1ha2VEYXRhVXJsIiwicmVzb3VyY2VUb0RhdGFVUkwiLCJVUkxfUkVHRVgiLCJVUkxfV0lUSF9GT1JNQVRfUkVHRVgiLCJGT05UX1NSQ19SRUdFWCIsInRvUmVnZXgiLCJ1cmwiLCJlc2NhcGVkIiwicmVwbGFjZSIsIlJlZ0V4cCIsInBhcnNlVVJMcyIsImNzc1RleHQiLCJ1cmxzIiwicmF3IiwicXVvdGF0aW9uIiwicHVzaCIsImZpbHRlciIsImVtYmVkIiwicmVzb3VyY2VVUkwiLCJiYXNlVVJMIiwib3B0aW9ucyIsImdldENvbnRlbnRGcm9tVXJsIiwicmVzb2x2ZWRVUkwiLCJjb250ZW50VHlwZSIsImRhdGFVUkwiLCJjb250ZW50IiwiZXJyb3IiLCJmaWx0ZXJQcmVmZXJyZWRGb250Rm9ybWF0Iiwic3RyIiwicHJlZmVycmVkRm9udEZvcm1hdCIsIm1hdGNoIiwic3JjIiwiZm9ybWF0IiwiZXhlYyIsInNob3VsZEVtYmVkIiwic2VhcmNoIiwiZW1iZWRSZXNvdXJjZXMiLCJiYXNlVXJsIiwiZmlsdGVyZWRDU1NUZXh0IiwicmVkdWNlIiwiZGVmZXJyZWQiLCJ0aGVuIiwiY3NzIiwiUHJvbWlzZSIsInJlc29sdmUiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/html-to-image/es/embed-resources.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/html-to-image/es/embed-webfonts.js":
/*!*********************************************************!*\
!*** ./node_modules/html-to-image/es/embed-webfonts.js ***!
\*********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ embedWebFonts: () => (/* binding */ embedWebFonts),\n/* harmony export */ getWebFontCSS: () => (/* binding */ getWebFontCSS)\n/* harmony export */ });\n/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ \"(ssr)/./node_modules/html-to-image/es/util.js\");\n/* harmony import */ var _dataurl__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./dataurl */ \"(ssr)/./node_modules/html-to-image/es/dataurl.js\");\n/* harmony import */ var _embed_resources__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./embed-resources */ \"(ssr)/./node_modules/html-to-image/es/embed-resources.js\");\n\n\n\nconst cssFetchCache = {};\nasync function fetchCSS(url) {\n let cache = cssFetchCache[url];\n if (cache != null) {\n return cache;\n }\n const res = await fetch(url);\n const cssText = await res.text();\n cache = {\n url,\n cssText\n };\n cssFetchCache[url] = cache;\n return cache;\n}\nasync function embedFonts(data, options) {\n let cssText = data.cssText;\n const regexUrl = /url\\([\"']?([^\"')]+)[\"']?\\)/g;\n const fontLocs = cssText.match(/url\\([^)]+\\)/g) || [];\n const loadFonts = fontLocs.map(async (loc)=>{\n let url = loc.replace(regexUrl, \"$1\");\n if (!url.startsWith(\"https://\")) {\n url = new URL(url, data.url).href;\n }\n return (0,_dataurl__WEBPACK_IMPORTED_MODULE_1__.fetchAsDataURL)(url, options.fetchRequestInit, ({ result })=>{\n cssText = cssText.replace(loc, `url(${result})`);\n return [\n loc,\n result\n ];\n });\n });\n return Promise.all(loadFonts).then(()=>cssText);\n}\nfunction parseCSS(source) {\n if (source == null) {\n return [];\n }\n const result = [];\n const commentsRegex = /(\\/\\*[\\s\\S]*?\\*\\/)/gi;\n // strip out comments\n let cssText = source.replace(commentsRegex, \"\");\n // eslint-disable-next-line prefer-regex-literals\n const keyframesRegex = new RegExp(\"((@.*?keyframes [\\\\s\\\\S]*?){([\\\\s\\\\S]*?}\\\\s*?)})\", \"gi\");\n // eslint-disable-next-line no-constant-condition\n while(true){\n const matches = keyframesRegex.exec(cssText);\n if (matches === null) {\n break;\n }\n result.push(matches[0]);\n }\n cssText = cssText.replace(keyframesRegex, \"\");\n const importRegex = /@import[\\s\\S]*?url\\([^)]*\\)[\\s\\S]*?;/gi;\n // to match css & media queries together\n const combinedCSSRegex = \"((\\\\s*?(?:\\\\/\\\\*[\\\\s\\\\S]*?\\\\*\\\\/)?\\\\s*?@media[\\\\s\\\\S]\" + \"*?){([\\\\s\\\\S]*?)}\\\\s*?})|(([\\\\s\\\\S]*?){([\\\\s\\\\S]*?)})\";\n // unified regex\n const unifiedRegex = new RegExp(combinedCSSRegex, \"gi\");\n // eslint-disable-next-line no-constant-condition\n while(true){\n let matches = importRegex.exec(cssText);\n if (matches === null) {\n matches = unifiedRegex.exec(cssText);\n if (matches === null) {\n break;\n } else {\n importRegex.lastIndex = unifiedRegex.lastIndex;\n }\n } else {\n unifiedRegex.lastIndex = importRegex.lastIndex;\n }\n result.push(matches[0]);\n }\n return result;\n}\nasync function getCSSRules(styleSheets, options) {\n const ret = [];\n const deferreds = [];\n // First loop inlines imports\n styleSheets.forEach((sheet)=>{\n if (\"cssRules\" in sheet) {\n try {\n (0,_util__WEBPACK_IMPORTED_MODULE_0__.toArray)(sheet.cssRules || []).forEach((item, index)=>{\n if (item.type === CSSRule.IMPORT_RULE) {\n let importIndex = index + 1;\n const url = item.href;\n const deferred = fetchCSS(url).then((metadata)=>embedFonts(metadata, options)).then((cssText)=>parseCSS(cssText).forEach((rule)=>{\n try {\n sheet.insertRule(rule, rule.startsWith(\"@import\") ? importIndex += 1 : sheet.cssRules.length);\n } catch (error) {\n console.error(\"Error inserting rule from remote css\", {\n rule,\n error\n });\n }\n })).catch((e)=>{\n console.error(\"Error loading remote css\", e.toString());\n });\n deferreds.push(deferred);\n }\n });\n } catch (e) {\n const inline = styleSheets.find((a)=>a.href == null) || document.styleSheets[0];\n if (sheet.href != null) {\n deferreds.push(fetchCSS(sheet.href).then((metadata)=>embedFonts(metadata, options)).then((cssText)=>parseCSS(cssText).forEach((rule)=>{\n inline.insertRule(rule, sheet.cssRules.length);\n })).catch((err)=>{\n console.error(\"Error loading remote stylesheet\", err);\n }));\n }\n console.error(\"Error inlining remote css file\", e);\n }\n }\n });\n return Promise.all(deferreds).then(()=>{\n // Second loop parses rules\n styleSheets.forEach((sheet)=>{\n if (\"cssRules\" in sheet) {\n try {\n (0,_util__WEBPACK_IMPORTED_MODULE_0__.toArray)(sheet.cssRules || []).forEach((item)=>{\n ret.push(item);\n });\n } catch (e) {\n console.error(`Error while reading CSS rules from ${sheet.href}`, e);\n }\n }\n });\n return ret;\n });\n}\nfunction getWebFontRules(cssRules) {\n return cssRules.filter((rule)=>rule.type === CSSRule.FONT_FACE_RULE).filter((rule)=>(0,_embed_resources__WEBPACK_IMPORTED_MODULE_2__.shouldEmbed)(rule.style.getPropertyValue(\"src\")));\n}\nasync function parseWebFontRules(node, options) {\n if (node.ownerDocument == null) {\n throw new Error(\"Provided element is not within a Document\");\n }\n const styleSheets = (0,_util__WEBPACK_IMPORTED_MODULE_0__.toArray)(node.ownerDocument.styleSheets);\n const cssRules = await getCSSRules(styleSheets, options);\n return getWebFontRules(cssRules);\n}\nasync function getWebFontCSS(node, options) {\n const rules = await parseWebFontRules(node, options);\n const cssTexts = await Promise.all(rules.map((rule)=>{\n const baseUrl = rule.parentStyleSheet ? rule.parentStyleSheet.href : null;\n return (0,_embed_resources__WEBPACK_IMPORTED_MODULE_2__.embedResources)(rule.cssText, baseUrl, options);\n }));\n return cssTexts.join(\"\\n\");\n}\nasync function embedWebFonts(clonedNode, options) {\n const cssText = options.fontEmbedCSS != null ? options.fontEmbedCSS : options.skipFonts ? null : await getWebFontCSS(clonedNode, options);\n if (cssText) {\n const styleNode = document.createElement(\"style\");\n const sytleContent = document.createTextNode(cssText);\n styleNode.appendChild(sytleContent);\n if (clonedNode.firstChild) {\n clonedNode.insertBefore(styleNode, clonedNode.firstChild);\n } else {\n clonedNode.appendChild(styleNode);\n }\n }\n} //# sourceMappingURL=embed-webfonts.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvaHRtbC10by1pbWFnZS9lcy9lbWJlZC13ZWJmb250cy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFpQztBQUNVO0FBQ3FCO0FBQ2hFLE1BQU1JLGdCQUFnQixDQUFDO0FBQ3ZCLGVBQWVDLFNBQVNDLEdBQUc7SUFDdkIsSUFBSUMsUUFBUUgsYUFBYSxDQUFDRSxJQUFJO0lBQzlCLElBQUlDLFNBQVMsTUFBTTtRQUNmLE9BQU9BO0lBQ1g7SUFDQSxNQUFNQyxNQUFNLE1BQU1DLE1BQU1IO0lBQ3hCLE1BQU1JLFVBQVUsTUFBTUYsSUFBSUcsSUFBSTtJQUM5QkosUUFBUTtRQUFFRDtRQUFLSTtJQUFRO0lBQ3ZCTixhQUFhLENBQUNFLElBQUksR0FBR0M7SUFDckIsT0FBT0E7QUFDWDtBQUNBLGVBQWVLLFdBQVdDLElBQUksRUFBRUMsT0FBTztJQUNuQyxJQUFJSixVQUFVRyxLQUFLSCxPQUFPO0lBQzFCLE1BQU1LLFdBQVc7SUFDakIsTUFBTUMsV0FBV04sUUFBUU8sS0FBSyxDQUFDLG9CQUFvQixFQUFFO0lBQ3JELE1BQU1DLFlBQVlGLFNBQVNHLEdBQUcsQ0FBQyxPQUFPQztRQUNsQyxJQUFJZCxNQUFNYyxJQUFJQyxPQUFPLENBQUNOLFVBQVU7UUFDaEMsSUFBSSxDQUFDVCxJQUFJZ0IsVUFBVSxDQUFDLGFBQWE7WUFDN0JoQixNQUFNLElBQUlpQixJQUFJakIsS0FBS08sS0FBS1AsR0FBRyxFQUFFa0IsSUFBSTtRQUNyQztRQUNBLE9BQU92Qix3REFBY0EsQ0FBQ0ssS0FBS1EsUUFBUVcsZ0JBQWdCLEVBQUUsQ0FBQyxFQUFFQyxNQUFNLEVBQUU7WUFDNURoQixVQUFVQSxRQUFRVyxPQUFPLENBQUNELEtBQUssQ0FBQyxJQUFJLEVBQUVNLE9BQU8sQ0FBQyxDQUFDO1lBQy9DLE9BQU87Z0JBQUNOO2dCQUFLTTthQUFPO1FBQ3hCO0lBQ0o7SUFDQSxPQUFPQyxRQUFRQyxHQUFHLENBQUNWLFdBQVdXLElBQUksQ0FBQyxJ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QUFDNEUsS0FBS0MsYUFBYSxDQUFDbEMsV0FBVztJQUMxRCxNQUFNSyxXQUFXLE1BQU1OLFlBQVlDLGFBQWE3QjtJQUNoRCxPQUFPd0QsZ0JBQWdCdEI7QUFDM0I7QUFDTyxlQUFlK0IsY0FBY0gsSUFBSSxFQUFFOUQsT0FBTztJQUM3QyxNQUFNa0UsUUFBUSxNQUFNTCxrQkFBa0JDLE1BQU05RDtJQUM1QyxNQUFNbUUsV0FBVyxNQUFNdEQsUUFBUUMsR0FBRyxDQUFDb0QsTUFBTTdELEdBQUcsQ0FBQyxDQUFDc0M7UUFDMUMsTUFBTXlCLFVBQVV6QixLQUFLMEIsZ0JBQWdCLEdBQUcxQixLQUFLMEIsZ0JBQWdCLENBQUMzRCxJQUFJLEdBQUc7UUFDckUsT0FBT3JCLGdFQUFjQSxDQUFDc0QsS0FBSy9DLE9BQU8sRUFBRXdFLFNBQVNwRTtJQUNqRDtJQUNBLE9BQU9tRSxTQUFTRyxJQUFJLENBQUM7QUFDekI7QUFDTyxlQUFlQyxjQUFjQyxVQUFVLEVBQUV4RSxPQUFPO0lBQ25ELE1BQU1KLFVBQVVJLFFBQVF5RSxZQUFZLElBQUksT0FDbEN6RSxRQUFReUUsWUFBWSxHQUNwQnpFLFFBQVEwRSxTQUFTLEdBQ2IsT0FDQSxNQUFNVCxjQUFjTyxZQUFZeEU7SUFDMUMsSUFBSUosU0FBUztRQUNULE1BQU0rRSxZQUFZckIsU0FBU3NCLGFBQWEsQ0FBQztRQUN6QyxNQUFNQyxlQUFldkIsU0FBU3dCLGNBQWMsQ0FBQ2xGO1FBQzdDK0UsVUFBVUksV0FBVyxDQUFDRjtRQUN0QixJQUFJTCxXQUFXUSxVQUFVLEVBQUU7WUFDdkJSLFdBQVdTLFlBQVksQ0FBQ04sV0FBV0gsV0FBV1EsVUFBVTtRQUM1RCxPQUNLO1lBQ0RSLFdBQVdPLFdBQVcsQ0FBQ0o7UUFDM0I7SUFDSjtBQUNKLEVBQ0EsMENBQTBDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vbmV4dGNoYXQvLi9ub2RlX21vZHVsZXMvaHRtbC10by1pbWFnZS9lcy9lbWJlZC13ZWJmb250cy5qcz9lOTFkIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHRvQXJyYXkgfSBmcm9tICcuL3V0aWwnO1xuaW1wb3J0IHsgZmV0Y2hBc0RhdGFVUkwgfSBmcm9tICcuL2RhdGF1cmwnO1xuaW1wb3J0IHsgc2hvdWxkRW1iZWQsIGVtYmVkUmVzb3VyY2VzIH0gZnJvbSAnLi9lbWJlZC1yZXNvdXJjZXMnO1xuY29uc3QgY3NzRmV0Y2hDYWNoZSA9IHt9O1xuYXN5bmMgZnVuY3Rpb24gZmV0Y2hDU1ModXJsKSB7XG4gICAgbGV0IGNhY2hlID0gY3NzRmV0Y2hDYWNoZVt1cmxdO1xuICAgIGlmIChjYWNoZSAhPSBudWxsKSB7XG4gICAgICAgIHJldHVybiBjYWNoZTtcbiAgICB9XG4gICAgY29uc3QgcmVzID0gYXdhaXQgZmV0Y2godXJsKTtcbiAgICBjb25zdCBjc3NUZXh0ID0gYXdhaXQgcmVzLnRleHQoKTtcbiAgICBjYWNoZSA9IHsgdXJsLCBjc3NUZXh0IH07XG4gICAgY3NzRmV0Y2hDYWNoZVt1cmxdID0gY2FjaGU7XG4gICAgcmV0dXJuIGNhY2hlO1xufVxuYXN5bmMgZnVuY3Rpb24gZW1iZWRGb250cyhkYXRhLCBvcHRpb25zKSB7XG4gICAgbGV0IGNzc1RleHQgPSBkYXRhLmNzc1RleHQ7XG4gICAgY29uc3QgcmVnZXhVcmwgPSAvdXJsXFwoW1wiJ10/KFteXCInKV0rKVtcIiddP1xcKS9nO1xuICAgIGNvbnN0IGZvbnRMb2NzID0gY3NzVGV4dC5tYXRjaCgvdXJsXFwoW14pXStcXCkvZykgfHwgW107XG4gICAgY29uc3QgbG9hZEZvbnRzID0gZm9udExvY3MubWFwKGFzeW5jIChsb2MpID0+IHtcbiAgICAgICAgbGV0IHVybCA9IGxvYy5yZXBsYWNlKHJlZ2V4VXJsLCAnJDEnKTtcbiAgICAgICAgaWYgKCF1cmwuc3RhcnRzV2l0aCgnaHR0cHM6Ly8nKSkge1xuICAgICAgICAgICAgdXJsID0gbmV3IFVSTCh1cmwsIGRhdGEudXJsKS5ocmVmO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmZXRjaEFzRGF0YVVSTCh1cmwsIG9wdGlvbnMuZmV0Y2hSZXF1ZXN0SW5pdCwgKHsgcmVzdWx0IH0pID0+IHtcbiAgICAgICAgICAgIGNzc1RleHQgPSBjc3NUZXh0LnJlcGxhY2UobG9jLCBgdXJsKCR7cmVzdWx0fSlgKTtcbiAgICAgICAgICAgIHJldHVybiBbbG9jLCByZXN1bHRdO1xuICAgICAgICB9KTtcbiAgICB9KTtcbiAgICByZXR1cm4gUHJvbWlzZS5hbGwobG9hZEZvbnRzKS50aGVuKCgpID0+IGNzc1RleHQpO1xufVxuZnVuY3Rpb24gcGFyc2VDU1Moc291cmNlKSB7XG4gICAgaWYgKHNvdXJjZSA9PSBudWxsKSB7XG4gICAgICAgIHJldHVybiBbXTtcbiAgICB9XG4gICAgY29uc3QgcmVzdWx0ID0gW107XG4gICAgY29uc3QgY29tbWVudHNSZWdleCA9IC8oXFwvXFwqW1xcc1xcU10qP1xcKlxcLykvZ2k7XG4gICAgLy8gc3RyaXAgb3V0IGNvbW1lbnRzXG4gICAgbGV0IGNzc1RleHQgPSBzb3VyY2UucmVwbGFjZShjb21tZW50c1JlZ2V4LCAnJyk7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHByZWZlci1yZWdleC1saXRlcmFsc1xuICAgIGNvbnN0IGtleWZyYW1lc1JlZ2V4ID0gbmV3IFJlZ0V4cCgnKChALio/a2V5ZnJhbWVzIFtcXFxcc1xcXFxTXSo/KXsoW1xcXFxzXFxcXFNdKj99XFxcXHMqPyl9KScsICdnaScpO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zdGFudC1jb25kaXRpb25cbiAgICB3aGlsZSAodHJ1ZSkge1xuICAgICAgICBjb25zdCBtYXRjaGVzID0ga2V5ZnJhbWVzUmVnZXguZXhlYyhjc3NUZXh0KTtcbiAgICAgICAgaWYgKG1hdGNoZXMgPT09IG51bGwpIHtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIHJlc3VsdC5wdXNoKG1hdGNoZXNbMF0pO1xuICAgIH1cbiAgICBjc3NUZXh0ID0gY3NzVGV4dC5yZXBsYWNlKGtleWZyYW1lc1JlZ2V4LCAnJyk7XG4gICAgY29uc3QgaW1wb3J0UmVnZXggPSAvQGltcG9ydFtcXHNcXFNdKj91cmxcXChbXildKlxcKVtcXHNcXFNdKj87L2dpO1xuICAgIC8vIHRvIG1hdGNoIGNzcyAmIG1lZGlhIHF1ZXJpZXMgdG9nZXRoZXJcbiAgICBjb25zdCBjb21iaW5lZENTU1JlZ2V4ID0gJygoXFxcXHMqPyg/OlxcXFwvXFxcXCpbXFxcXHNcXFxcU10qP1xcXFwqXFxcXC8pP1xcXFxzKj9AbWVkaWFbXFxcXHNcXFxcU10nICtcbiAgICAgICAgJyo/KXsoW1xcXFxzXFxcXFNdKj8pfVxcXFxzKj99KXwoKFtcXFxcc1xcXFxTXSo/KXsoW1xcXFxzXFxcXFNdKj8pfSknO1xuICAgIC8vIHVuaWZpZWQgcmVnZXhcbiAgICBjb25zdCB1bmlmaWVkUmVnZXggPSBuZXcgUmVnRXhwKGNvbWJpbmVkQ1NTUmVnZXgsICdnaScpO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zdGFudC1jb25kaXRpb25cbiAgICB3aGlsZSAodHJ1ZSkge1xuICAgICAgICBsZXQgbWF0Y2hlcyA9IGltcG9ydFJlZ2V4LmV4ZWMoY3NzVGV4dCk7XG4gICAgICAgIGlmIChtYXRjaGVzID09PSBudWxsKSB7XG4gICAgICAgICAgICBtYXRjaGVzID0gdW5pZmllZFJlZ2V4LmV4ZWMoY3NzVGV4dCk7XG4gICAgICAgICAgICBpZiAobWF0Y2hlcyA9PT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgaW1wb3J0UmVnZXgubGFzdEluZGV4ID0gdW5pZmllZFJlZ2V4Lmxhc3RJbmRleDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHVuaWZpZWRSZWdleC5sYXN0SW5kZXggPSBpbXBvcnRSZWdleC5sYXN0SW5kZXg7XG4gICAgICAgIH1cbiAgICAgICAgcmVzdWx0LnB1c2gobWF0Y2hlc1swXSk7XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG59XG5hc3luYyBmdW5jdGlvbiBnZXRDU1NSdWxlcyhzdHlsZVNoZWV0cywgb3B0aW9ucykge1xuICAgIGNvbnN0IHJldCA9IFtdO1xuICAgIGNvbnN0IGRlZmVycmVkcyA9IFtdO1xuICAgIC8vIEZpcnN0IGxvb3AgaW5saW5lcyBpbXBvcnRzXG4gICAgc3R5bGVTaGVldHMuZm9yRWFjaCgoc2hlZXQpID0+IHtcbiAgICAgICAgaWYgKCdjc3NSdWxlcycgaW4gc2hlZXQpIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgdG9BcnJheShzaGVldC5jc3NSdWxlcyB8fCBbXSkuZm9yRWFjaCgoaXRlbSwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGl0ZW0udHlwZSA9PT0gQ1NTUnVsZS5JTVBPUlRfUlVMRSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGltcG9ydEluZGV4ID0gaW5kZXggKyAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdXJsID0gaXRlbS5ocmVmO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZGVmZXJyZWQgPSBmZXRjaENTUyh1cmwpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4oKG1ldGFkYXRhKSA9PiBlbWJlZEZvbnRzKG1ldGFkYXRhLCBvcHRpb25zKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGhlbigoY3NzVGV4dCkgPT4gcGFyc2VDU1MoY3NzVGV4dCkuZm9yRWFjaCgocnVsZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNoZWV0Lmluc2VydFJ1bGUocnVsZSwgcnVsZS5zdGFydHNXaXRoKCdAaW1wb3J0JylcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gKGltcG9ydEluZGV4ICs9IDEpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IHNoZWV0LmNzc1J1bGVzLmxlbmd0aCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhdGNoIChlcnJvcikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBpbnNlcnRpbmcgcnVsZSBmcm9tIHJlbW90ZSBjc3MnLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBydWxlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3IsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH0pKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5jYXRjaCgoZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGxvYWRpbmcgcmVtb3RlIGNzcycsIGUudG9TdHJpbmcoKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlZmVycmVkcy5wdXNoKGRlZmVycmVkKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBpbmxpbmUgPSBzdHlsZVNoZWV0cy5maW5kKChhKSA9PiBhLmhyZWYgPT0gbnVsbCkgfHwgZG9jdW1lbnQuc3R5bGVTaGVldHNbMF07XG4gICAgICAgICAgICAgICAgaWYgKHNoZWV0LmhyZWYgIT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICAgICBkZWZlcnJlZHMucHVzaChmZXRjaENTUyhzaGVldC5ocmVmKVxuICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4oKG1ldGFkYXRhKSA9PiBlbWJlZEZvbnRzKG1ldGFkYXRhLCBvcHRpb25zKSlcbiAgICAgICAgICAgICAgICAgICAgICAgIC50aGVuKChjc3NUZXh0KSA9PiBwYXJzZUNTUyhjc3NUZXh0KS5mb3JFYWNoKChydWxlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpbmxpbmUuaW5zZXJ0UnVsZShydWxlLCBzaGVldC5jc3NSdWxlcy5sZW5ndGgpO1xuICAgICAgICAgICAgICAgICAgICB9KSlcbiAgICAgICAgICAgICAgICAgICAgICAgIC5jYXRjaCgoZXJyKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBsb2FkaW5nIHJlbW90ZSBzdHlsZXNoZWV0JywgZXJyKTtcbiAgICAgICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBpbmxpbmluZyByZW1vdGUgY3NzIGZpbGUnLCBlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiBQcm9taXNlLmFsbChkZWZlcnJlZHMpLnRoZW4oKCkgPT4ge1xuICAgICAgICAvLyBTZWNvbmQgbG9vcCBwYXJzZXMgcnVsZXNcbiAgICAgICAgc3R5bGVTaGVldHMuZm9yRWFjaCgoc2hlZXQpID0+IHtcbiAgICAgICAgICAgIGlmICgnY3NzUnVsZXMnIGluIHNoZWV0KSB7XG4gICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgdG9BcnJheShzaGVldC5jc3NSdWxlcyB8fCBbXSkuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0LnB1c2goaXRlbSk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjYXRjaCAoZSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKGBFcnJvciB3aGlsZSByZWFkaW5nIENTUyBydWxlcyBmcm9tICR7c2hlZXQuaHJlZn1gLCBlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gcmV0O1xuICAgIH0pO1xufVxuZnVuY3Rpb24gZ2V0V2ViRm9udFJ1bGVzKGNzc1J1bGVzKSB7XG4gICAgcmV0dXJuIGNzc1J1bGVzXG4gICAgICAgIC5maWx0ZXIoKHJ1bGUpID0+IHJ1bGUudHlwZSA9PT0gQ1NTUnVsZS5GT05UX0ZBQ0VfUlVMRSlcbiAgICAgICAgLmZpbHRlcigocnVsZSkgPT4gc2hvdWxkRW1iZWQocnVsZS5zdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSkpO1xufVxuYXN5bmMgZnVuY3Rpb24gcGFyc2VXZWJGb250UnVsZXMobm9kZSwgb3B0aW9ucykge1xuICAgIGlmIChub2RlLm93bmVyRG9jdW1lbnQgPT0gbnVsbCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1Byb3ZpZGVkIGVsZW1lbnQgaXMgbm90IHdpdGhpbiBhIERvY3VtZW50Jyk7XG4gICAgfVxuICAgIGNvbnN0IHN0eWxlU2hlZXRzID0gdG9BcnJheShub2RlLm93bmVyRG9jdW1lbnQuc3R5bGVTaGVldHMpO1xuICAgIGNvbnN0IGNzc1J1bGVzID0gYXdhaXQgZ2V0Q1NTUnVsZXMoc3R5bGVTaGVldHMsIG9wdGlvbnMpO1xuICAgIHJldHVybiBnZXRXZWJGb250UnVsZXMoY3NzUnVsZXMpO1xufVxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldFdlYkZvbnRDU1Mobm9kZSwgb3B0aW9ucykge1xuICAgIGNvbnN0IHJ1bGVzID0gYXdhaXQgcGFyc2VXZWJGb250UnVsZXMobm9kZSwgb3B0aW9ucyk7XG4gICAgY29uc3QgY3NzVGV4dHMgPSBhd2FpdCBQcm9taXNlLmFsbChydWxlcy5tYXAoKHJ1bGUpID0+IHtcbiAgICAgICAgY29uc3QgYmFzZVVybCA9IHJ1bGUucGFyZW50U3R5bGVTaGVldCA/IHJ1bGUucGFyZW50U3R5bGVTaGVldC5ocmVmIDogbnVsbDtcbiAgICAgICAgcmV0dXJuIGVtYmVkUmVzb3VyY2VzKHJ1bGUuY3NzVGV4dCwgYmFzZVVybCwgb3B0aW9ucyk7XG4gICAgfSkpO1xuICAgIHJldHVybiBjc3NUZXh0cy5qb2luKCdcXG4nKTtcbn1cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBlbWJlZFdlYkZvbnRzKGNsb25lZE5vZGUsIG9wdGlvbnMpIHtcbiAgICBjb25zdCBjc3NUZXh0ID0gb3B0aW9ucy5mb250RW1iZWRDU1MgIT0gbnVsbFxuICAgICAgICA/IG9wdGlvbnMuZm9udEVtYmVkQ1NTXG4gICAgICAgIDogb3B0aW9ucy5za2lwRm9udHNcbiAgICAgICAgICAgID8gbnVsbFxuICAgICAgICAgICAgOiBhd2FpdCBnZXRXZWJGb250Q1NTKGNsb25lZE5vZGUsIG9wdGlvbnMpO1xuICAgIGlmIChjc3NUZXh0KSB7XG4gICAgICAgIGNvbnN0IHN0eWxlTm9kZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3N0eWxlJyk7XG4gICAgICAgIGNvbnN0IHN5dGxlQ29udGVudCA9IGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKGNzc1RleHQpO1xuICAgICAgICBzdHlsZU5vZGUuYXBwZW5kQ2hpbGQoc3l0bGVDb250ZW50KTtcbiAgICAgICAgaWYgKGNsb25lZE5vZGUuZmlyc3RDaGlsZCkge1xuICAgICAgICAgICAgY2xvbmVkTm9kZS5pbnNlcnRCZWZvcmUoc3R5bGVOb2RlLCBjbG9uZWROb2RlLmZpcnN0Q2hpbGQpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgY2xvbmVkTm9kZS5hcHBlbmRDaGlsZChzdHlsZU5vZGUpO1xuICAgICAgICB9XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZW1iZWQtd2ViZm9udHMuanMubWFwIl0sIm5hbWVzIjpbInRvQXJyYXkiLCJmZXRjaEFzRGF0YVVSTCIsInNob3VsZEVtYmVkIiwiZW1iZWRSZXNvdXJjZXMiLCJjc3NGZXRjaENhY2hlIiwiZmV0Y2hDU1MiLCJ1cmwiLCJjYWNoZSIsInJlcyIsImZldGNoIiwiY3NzVGV4dCIsInRleHQiLCJlbWJlZEZvbnRzIiwiZGF0YSIsIm9wdGlvbnMiLCJyZWdleFVybCIsImZvbnRMb2NzIiwibWF0Y2giLCJsb2FkRm9udHMiLCJtYXAiLCJsb2MiLCJyZXBsYWNlIiwic3RhcnRzV2l0aCIsIlVSTCIsImhyZWYiLCJmZXRjaFJlcXVlc3RJbml0IiwicmVzdWx0IiwiUHJvbWlzZSIsImFsbCIsInRoZW4iLCJwYXJzZUNTUyIsInNvdXJjZSIsImNvbW1lbnRzUmVnZXgiLCJrZXlmcmFtZXNSZWdleCIsIlJlZ0V4cCIsIm1hdGNoZXMiLCJleGVjIiwicHVzaCIsImltcG9ydFJlZ2V4IiwiY29tYmluZWRDU1NSZWdleCIsInVuaWZpZWRSZWdleCIsImxhc3RJbmRleCIsImdldENTU1J1bGVzIiwic3R5bGVTaGVldHMiLCJyZXQiLCJkZWZlcnJlZHMiLCJmb3JFYWNoIiwic2hlZXQiLCJjc3NSdWxlcyIsIml0ZW0iLCJpbmRleCIsInR5cGUiLCJDU1NSdWxlIiwiSU1QT1JUX1JVTEUiLCJpbXBvcnRJbmRleCIsImRlZmVycmVkIiwibWV0YWRhdGEiLCJydWxlIiwiaW5zZXJ0UnVsZSIsImxlbmd0aCIsImVycm9yIiwiY29uc29sZSIsImNhdGNoIiwiZSIsInRvU3RyaW5nIiwiaW5saW5lIiwiZmluZCIsImEiLCJkb2N1bWVudCIsImVyciIsImdldFdlYkZvbnRSdWxlcyIsImZpbHRlciIsIkZPTlRfRkFDRV9SVUxFIiwic3R5bGUiLCJnZXRQcm9wZXJ0eVZhbHVlIiwicGFyc2VXZWJGb250UnVsZXMiLCJub2RlIiwib3duZXJEb2N1bWVudCIsIkVycm9yIiwiZ2V0V2ViRm9udENTUyIsInJ1bGVzIiwiY3NzVGV4dHMiLCJiYXNlVXJsIiwicGFyZW50U3R5bGVTaGVldCIsImpvaW4iLCJlbWJlZFdlYkZvbnRzIiwiY2xvbmVkTm9kZSIsImZvbnRFbWJlZENTUyIsInNraXBGb250cyIsInN0eWxlTm9kZSIsImNyZWF0ZUVsZW1lbnQiLCJzeXRsZUNvbnRlbnQiLCJjcmVhdGVUZXh0Tm9kZSIsImFwcGVuZENoaWxkIiwiZmlyc3RDaGlsZCIsImluc2VydEJlZm9yZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/html-to-image/es/embed-webfonts.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/html-to-image/es/index.js":
/*!************************************************!*\
!*** ./node_modules/html-to-image/es/index.js ***!
\************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFontEmbedCSS: () => (/* binding */ getFontEmbedCSS),\n/* harmony export */ toBlob: () => (/* binding */ toBlob),\n/* harmony export */ toCanvas: () => (/* binding */ toCanvas),\n/* harmony export */ toJpeg: () => (/* binding */ toJpeg),\n/* harmony export */ toPixelData: () => (/* binding */ toPixelData),\n/* harmony export */ toPng: () => (/* binding */ toPng),\n/* harmony export */ toSvg: () => (/* binding */ toSvg)\n/* harmony export */ });\n/* harmony import */ var _clone_node__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./clone-node */ \"(ssr)/./node_modules/html-to-image/es/clone-node.js\");\n/* harmony import */ var _embed_images__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./embed-images */ \"(ssr)/./node_modules/html-to-image/es/embed-images.js\");\n/* harmony import */ var _apply_style__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./apply-style */ \"(ssr)/./node_modules/html-to-image/es/apply-style.js\");\n/* harmony import */ var _embed_webfonts__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./embed-webfonts */ \"(ssr)/./node_modules/html-to-image/es/embed-webfonts.js\");\n/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./util */ \"(ssr)/./node_modules/html-to-image/es/util.js\");\n\n\n\n\n\nasync function toSvg(node, options = {}) {\n const { width, height } = (0,_util__WEBPACK_IMPORTED_MODULE_4__.getImageSize)(node, options);\n const clonedNode = await (0,_clone_node__WEBPACK_IMPORTED_MODULE_0__.cloneNode)(node, options, true);\n await (0,_embed_webfonts__WEBPACK_IMPORTED_MODULE_3__.embedWebFonts)(clonedNode, options);\n await (0,_embed_images__WEBPACK_IMPORTED_MODULE_1__.embedImages)(clonedNode, options);\n (0,_apply_style__WEBPACK_IMPORTED_MODULE_2__.applyStyle)(clonedNode, options);\n const datauri = await (0,_util__WEBPACK_IMPORTED_MODULE_4__.nodeToDataURL)(clonedNode, width, height);\n return datauri;\n}\nasync function toCanvas(node, options = {}) {\n const { width, height } = (0,_util__WEBPACK_IMPORTED_MODULE_4__.getImageSize)(node, options);\n const svg = await toSvg(node, options);\n const img = await (0,_util__WEBPACK_IMPORTED_MODULE_4__.createImage)(svg);\n const canvas = document.createElement(\"canvas\");\n const context = canvas.getContext(\"2d\");\n const ratio = options.pixelRatio || (0,_util__WEBPACK_IMPORTED_MODULE_4__.getPixelRatio)();\n const canvasWidth = options.canvasWidth || width;\n const canvasHeight = options.canvasHeight || height;\n canvas.width = canvasWidth * ratio;\n canvas.height = canvasHeight * ratio;\n if (!options.skipAutoScale) {\n (0,_util__WEBPACK_IMPORTED_MODULE_4__.checkCanvasDimensions)(canvas);\n }\n canvas.style.width = `${canvasWidth}`;\n canvas.style.height = `${canvasHeight}`;\n if (options.backgroundColor) {\n context.fillStyle = options.backgroundColor;\n context.fillRect(0, 0, canvas.width, canvas.height);\n }\n context.drawImage(img, 0, 0, canvas.width, canvas.height);\n return canvas;\n}\nasync function toPixelData(node, options = {}) {\n const { width, height } = (0,_util__WEBPACK_IMPORTED_MODULE_4__.getImageSize)(node, options);\n const canvas = await toCanvas(node, options);\n const ctx = canvas.getContext(\"2d\");\n return ctx.getImageData(0, 0, width, height).data;\n}\nasync function toPng(node, options = {}) {\n const canvas = await toCanvas(node, options);\n return canvas.toDataURL();\n}\nasync function toJpeg(node, options = {}) {\n const canvas = await toCanvas(node, options);\n return canvas.toDataURL(\"image/jpeg\", options.quality || 1);\n}\nasync function toBlob(node, options = {}) {\n const canvas = await toCanvas(node, options);\n const blob = await (0,_util__WEBPACK_IMPORTED_MODULE_4__.canvasToBlob)(canvas);\n return blob;\n}\nasync function getFontEmbedCSS(node, options = {}) {\n return (0,_embed_webfonts__WEBPACK_IMPORTED_MODULE_3__.getWebFontCSS)(node, options);\n} //# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvaHRtbC10by1pbWFnZS9lcy9pbmRleC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFBeUM7QUFDSTtBQUNGO0FBQ3FCO0FBQ3VEO0FBQ2hILGVBQWVXLE1BQU1DLElBQUksRUFBRUMsVUFBVSxDQUFDLENBQUM7SUFDMUMsTUFBTSxFQUFFQyxLQUFLLEVBQUVDLE1BQU0sRUFBRSxHQUFHVixtREFBWUEsQ0FBQ08sTUFBTUM7SUFDN0MsTUFBTUcsYUFBYyxNQUFNaEIsc0RBQVNBLENBQUNZLE1BQU1DLFNBQVM7SUFDbkQsTUFBTVYsOERBQWFBLENBQUNhLFlBQVlIO0lBQ2hDLE1BQU1aLDBEQUFXQSxDQUFDZSxZQUFZSDtJQUM5Qlgsd0RBQVVBLENBQUNjLFlBQVlIO0lBQ3ZCLE1BQU1JLFVBQVUsTUFBTVIsb0RBQWFBLENBQUNPLFlBQVlGLE9BQU9DO0lBQ3ZELE9BQU9FO0FBQ1g7QUFDTyxlQUFlQyxTQUFTTixJQUFJLEVBQUVDLFVBQVUsQ0FBQyxDQUFDO0lBQzdDLE1BQU0sRUFBRUMsS0FBSyxFQUFFQyxNQUFNLEVBQUUsR0FBR1YsbURBQVlBLENBQUNPLE1BQU1DO0lBQzdDLE1BQU1NLE1BQU0sTUFBTVIsTUFBTUMsTUFBTUM7SUFDOUIsTUFBTU8sTUFBTSxNQUFNYixrREFBV0EsQ0FBQ1k7SUFDOUIsTUFBTUUsU0FBU0MsU0FBU0MsYUFBYSxDQUFDO0lBQ3RDLE1BQU1DLFVBQVVILE9BQU9JLFVBQVUsQ0FBQztJQUNsQyxNQUFNQyxRQUFRYixRQUFRYyxVQUFVLElBQUlyQixvREFBYUE7SUFDakQsTUFBTXNCLGNBQWNmLFFBQVFlLFdBQVcsSUFBSWQ7SUFDM0MsTUFBTWUsZUFBZWhCLFFBQVFnQixZQUFZLElBQUlkO0lBQzdDTSxPQUFPUCxLQUFLLEdBQUdjLGNBQWNGO0lBQzdCTCxPQUFPTixNQUFNLEdBQUdjLGVBQWVIO0lBQy9CLElBQUksQ0FBQ2IsUUFBUWlCLGFBQWEsRUFBRTtRQUN4QnBCLDREQUFxQkEsQ0FBQ1c7SUFDMUI7SUFDQUEsT0FBT1UsS0FBSyxDQUFDakIsS0FBSyxHQUFHLENBQUMsRUFBRWMsWUFBWSxDQUFDO0lBQ3JDUCxPQUFPVSxLQUFLLENBQUNoQixNQUFNLEdBQUcsQ0FBQyxFQUFFYyxhQUFhLENBQUM7SUFDdkMsSUFBSWhCLFFBQVFtQixlQUFlLEVBQUU7UUFDekJSLFFBQVFTLFNBQVMsR0FBR3BCLFFBQVFtQixlQUFlO1FBQzNDUixRQUFRVSxRQUFRLENBQUMsR0FBRyxHQUFHYixPQUFPUCxLQUFLLEVBQUVPLE9BQU9OLE1BQU07SUFDdEQ7SUFDQVMsUUFBUVcsU0FBUyxDQUFDZixLQUFLLEdBQUcsR0FBR0MsT0FBT1AsS0FBSyxFQUFFTyxPQUFPTixNQUFNO0lBQ3hELE9BQU9NO0FBQ1g7QUFDTyxlQUFlZSxZQUFZeEIsSUFBSSxFQUFFQyxVQUFVLENBQUMsQ0FBQztJQUNoRCxNQUFNLEVBQUVDLEtBQUssRUFBRUMsTUFBTSxFQUFFLEdBQUdWLG1EQUFZQSxDQUFDTyxNQUFNQztJQUM3QyxNQUFNUSxTQUFTLE1BQU1ILFNBQVNOLE1BQU1DO0lBQ3BDLE1BQU13QixNQUFNaEIsT0FBT0ksVUFBVSxDQUFDO0lBQzlCLE9BQU9ZLElBQUlDLFlBQVksQ0FBQyxHQUFHLEdBQUd4QixPQUFPQyxRQUFRd0IsSUFBSTtBQUNyRDtBQUNPLGVBQWVDLE1BQU01QixJQUFJLEVBQUVDLFVBQVUsQ0FBQyxDQUFDO0lBQzFDLE1BQU1RLFNBQVMsTUFBTUgsU0FBU04sTUFBTUM7SUFDcEMsT0FBT1EsT0FBT29CLFNBQVM7QUFDM0I7QUFDTyxlQUFlQyxPQUFPOUIsSUFBSSxFQUFFQyxVQUFVLENBQUMsQ0FBQztJQUMzQyxNQUFNUSxTQUFTLE1BQU1ILFNBQVNOLE1BQU1DO0lBQ3BDLE9BQU9RLE9BQU9vQixTQUFTLENBQUMsY0FBYzVCLFFBQVE4QixPQUFPLElBQUk7QUFDN0Q7QUFDTyxlQUFlQyxPQUFPaEMsSUFBSSxFQUFFQyxVQUFVLENBQUMsQ0FBQztJQUMzQyxNQUFNUSxTQUFTLE1BQU1ILFNBQVNOLE1BQU1DO0lBQ3BDLE1BQU1nQyxPQUFPLE1BQU1yQyxtREFBWUEsQ0FBQ2E7SUFDaEMsT0FBT3dCO0FBQ1g7QUFDTyxlQUFlQyxnQkFBZ0JsQyxJQUFJLEVBQUVDLFVBQVUsQ0FBQyxDQUFDO0lBQ3BELE9BQU9ULDhEQUFhQSxDQUFDUSxNQUFNQztBQUMvQixFQUNBLGlDQUFpQyIsInNvdXJjZXMiOlsid2VicGFjazovL25leHRjaGF0Ly4vbm9kZV9tb2R1bGVzL2h0bWwtdG8taW1hZ2UvZXMvaW5kZXguanM/NzYzOCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjbG9uZU5vZGUgfSBmcm9tICcuL2Nsb25lLW5vZGUnO1xuaW1wb3J0IHsgZW1iZWRJbWFnZXMgfSBmcm9tICcuL2VtYmVkLWltYWdlcyc7XG5pbXBvcnQgeyBhcHBseVN0eWxlIH0gZnJvbSAnLi9hcHBseS1zdHlsZSc7XG5pbXBvcnQgeyBlbWJlZFdlYkZvbnRzLCBnZXRXZWJGb250Q1NTIH0gZnJvbSAnLi9lbWJlZC13ZWJmb250cyc7XG5pbXBvcnQgeyBnZXRJbWFnZVNpemUsIGdldFBpeGVsUmF0aW8sIGNyZWF0ZUltYWdlLCBjYW52YXNUb0Jsb2IsIG5vZGVUb0RhdGFVUkwsIGNoZWNrQ2FudmFzRGltZW5zaW9ucywgfSBmcm9tICcuL3V0aWwnO1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHRvU3ZnKG5vZGUsIG9wdGlvbnMgPSB7fSkge1xuICAgIGNvbnN0IHsgd2lkdGgsIGhlaWdodCB9ID0gZ2V0SW1hZ2VTaXplKG5vZGUsIG9wdGlvbnMpO1xuICAgIGNvbnN0IGNsb25lZE5vZGUgPSAoYXdhaXQgY2xvbmVOb2RlKG5vZGUsIG9wdGlvbnMsIHRydWUpKTtcbiAgICBhd2FpdCBlbWJlZFdlYkZvbnRzKGNsb25lZE5vZGUsIG9wdGlvbnMpO1xuICAgIGF3YWl0IGVtYmVkSW1hZ2VzKGNsb25lZE5vZGUsIG9wdGlvbnMpO1xuICAgIGFwcGx5U3R5bGUoY2xvbmVkTm9kZSwgb3B0aW9ucyk7XG4gICAgY29uc3QgZGF0YXVyaSA9IGF3YWl0IG5vZGVUb0RhdGFVUkwoY2xvbmVkTm9kZSwgd2lkdGgsIGhlaWdodCk7XG4gICAgcmV0dXJuIGRhdGF1cmk7XG59XG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gdG9DYW52YXMobm9kZSwgb3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3QgeyB3aWR0aCwgaGVpZ2h0IH0gPSBnZXRJbWFnZVNpemUobm9kZSwgb3B0aW9ucyk7XG4gICAgY29uc3Qgc3ZnID0gYXdhaXQgdG9Tdmcobm9kZSwgb3B0aW9ucyk7XG4gICAgY29uc3QgaW1nID0gYXdhaXQgY3JlYXRlSW1hZ2Uoc3ZnKTtcbiAgICBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTtcbiAgICBjb25zdCBjb250ZXh0ID0gY2FudmFzLmdldENvbnRleHQoJzJkJyk7XG4gICAgY29uc3QgcmF0aW8gPSBvcHRpb25zLnBpeGVsUmF0aW8gfHwgZ2V0UGl4ZWxSYXRpbygpO1xuICAgIGNvbnN0IGNhbnZhc1dpZHRoID0gb3B0aW9ucy5jYW52YXNXaWR0aCB8fCB3aWR0aDtcbiAgICBjb25zdCBjYW52YXNIZWlnaHQgPSBvcHRpb25zLmNhbnZhc0hlaWdodCB8fCBoZWlnaHQ7XG4gICAgY2FudmFzLndpZHRoID0gY2FudmFzV2lkdGggKiByYXRpbztcbiAgICBjYW52YXMuaGVpZ2h0ID0gY2FudmFzSGVpZ2h0ICogcmF0aW87XG4gICAgaWYgKCFvcHRpb25zLnNraXBBdXRvU2NhbGUpIHtcbiAgICAgICAgY2hlY2tDYW52YXNEaW1lbnNpb25zKGNhbnZhcyk7XG4gICAgfVxuICAgIGNhbnZhcy5zdHlsZS53aWR0aCA9IGAke2NhbnZhc1dpZHRofWA7XG4gICAgY2FudmFzLnN0eWxlLmhlaWdodCA9IGAke2NhbnZhc0hlaWdodH1gO1xuICAgIGlmIChvcHRpb25zLmJhY2tncm91bmRDb2xvcikge1xuICAgICAgICBjb250ZXh0LmZpbGxTdHlsZSA9IG9wdGlvbnMuYmFja2dyb3VuZENvbG9yO1xuICAgICAgICBjb250ZXh0LmZpbGxSZWN0KDAsIDAsIGNhbnZhcy53aWR0aCwgY2FudmFzLmhlaWdodCk7XG4gICAgfVxuICAgIGNvbnRleHQuZHJhd0ltYWdlKGltZywgMCwgMCwgY2FudmFzLndpZHRoLCBjYW52YXMuaGVpZ2h0KTtcbiAgICByZXR1cm4gY2FudmFzO1xufVxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHRvUGl4ZWxEYXRhKG5vZGUsIG9wdGlvbnMgPSB7fSkge1xuICAgIGNvbnN0IHsgd2lkdGgsIGhlaWdodCB9ID0gZ2V0SW1hZ2VTaXplKG5vZGUsIG9wdGlvbnMpO1xuICAgIGNvbnN0IGNhbnZhcyA9IGF3YWl0IHRvQ2FudmFzKG5vZGUsIG9wdGlvbnMpO1xuICAgIGNvbnN0IGN0eCA9IGNhbnZhcy5nZXRDb250ZXh0KCcyZCcpO1xuICAgIHJldHVybiBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIHdpZHRoLCBoZWlnaHQpLmRhdGE7XG59XG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gdG9Qbmcobm9kZSwgb3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3QgY2FudmFzID0gYXdhaXQgdG9DYW52YXMobm9kZSwgb3B0aW9ucyk7XG4gICAgcmV0dXJuIGNhbnZhcy50b0RhdGFVUkwoKTtcbn1cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiB0b0pwZWcobm9kZSwgb3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3QgY2FudmFzID0gYXdhaXQgdG9DYW52YXMobm9kZSwgb3B0aW9ucyk7XG4gICAgcmV0dXJuIGNhbnZhcy50b0RhdGFVUkwoJ2ltYWdlL2pwZWcnLCBvcHRpb25zLnF1YWxpdHkgfHwgMSk7XG59XG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gdG9CbG9iKG5vZGUsIG9wdGlvbnMgPSB7fSkge1xuICAgIGNvbnN0IGNhbnZhcyA9IGF3YWl0IHRvQ2FudmFzKG5vZGUsIG9wdGlvbnMpO1xuICAgIGNvbnN0IGJsb2IgPSBhd2FpdCBjYW52YXNUb0Jsb2IoY2FudmFzKTtcbiAgICByZXR1cm4gYmxvYjtcbn1cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRGb250RW1iZWRDU1Mobm9kZSwgb3B0aW9ucyA9IHt9KSB7XG4gICAgcmV0dXJuIGdldFdlYkZvbnRDU1Mobm9kZSwgb3B0aW9ucyk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbmRleC5qcy5tYXAiXSwibmFtZXMiOlsiY2xvbmVOb2RlIiwiZW1iZWRJbWFnZXMiLCJhcHBseVN0eWxlIiwiZW1iZWRXZWJGb250cyIsImdldFdlYkZvbnRDU1MiLCJnZXRJbWFnZVNpemUiLCJnZXRQaXhlbFJhdGlvIiwiY3JlYXRlSW1hZ2UiLCJjYW52YXNUb0Jsb2IiLCJub2RlVG9EYXRhVVJMIiwiY2hlY2tDYW52YXNEaW1lbnNpb25zIiwidG9TdmciLCJub2RlIiwib3B0aW9ucyIsIndpZHRoIiwiaGVpZ2h0IiwiY2xvbmVkTm9kZSIsImRhdGF1cmkiLCJ0b0NhbnZhcyIsInN2ZyIsImltZyIsImNhbnZhcyIsImRvY3VtZW50IiwiY3JlYXRlRWxlbWVudCIsImNvbnRleHQiLCJnZXRDb250ZXh0IiwicmF0aW8iLCJwaXhlbFJhdGlvIiwiY2FudmFzV2lkdGgiLCJjYW52YXNIZWlnaHQiLCJza2lwQXV0b1NjYWxlIiwic3R5bGUiLCJiYWNrZ3JvdW5kQ29sb3IiLCJmaWxsU3R5bGUiLCJmaWxsUmVjdCIsImRyYXdJbWFnZSIsInRvUGl4ZWxEYXRhIiwiY3R4IiwiZ2V0SW1hZ2VEYXRhIiwiZGF0YSIsInRvUG5nIiwidG9EYXRhVVJMIiwidG9KcGVnIiwicXVhbGl0eSIsInRvQmxvYiIsImJsb2IiLCJnZXRGb250RW1iZWRDU1MiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/html-to-image/es/index.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/html-to-image/es/mimes.js":
/*!************************************************!*\
!*** ./node_modules/html-to-image/es/mimes.js ***!
\************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getMimeType: () => (/* binding */ getMimeType)\n/* harmony export */ });\nconst WOFF = \"application/font-woff\";\nconst JPEG = \"image/jpeg\";\nconst mimes = {\n woff: WOFF,\n woff2: WOFF,\n ttf: \"application/font-truetype\",\n eot: \"application/vnd.ms-fontobject\",\n png: \"image/png\",\n jpg: JPEG,\n jpeg: JPEG,\n gif: \"image/gif\",\n tiff: \"image/tiff\",\n svg: \"image/svg+xml\",\n webp: \"image/webp\"\n};\nfunction getExtension(url) {\n const match = /\\.([^./]*?)$/g.exec(url);\n return match ? match[1] : \"\";\n}\nfunction getMimeType(url) {\n const extension = getExtension(url).toLowerCase();\n return mimes[extension] || \"\";\n} //# sourceMappingURL=mimes.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvaHRtbC10by1pbWFnZS9lcy9taW1lcy5qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUEsTUFBTUEsT0FBTztBQUNiLE1BQU1DLE9BQU87QUFDYixNQUFNQyxRQUFRO0lBQ1ZDLE1BQU1IO0lBQ05JLE9BQU9KO0lBQ1BLLEtBQUs7SUFDTEMsS0FBSztJQUNMQyxLQUFLO0lBQ0xDLEtBQUtQO0lBQ0xRLE1BQU1SO0lBQ05TLEtBQUs7SUFDTEMsTUFBTTtJQUNOQyxLQUFLO0lBQ0xDLE1BQU07QUFDVjtBQUNBLFNBQVNDLGFBQWFDLEdBQUc7SUFDckIsTUFBTUMsUUFBUSxnQkFBZ0JDLElBQUksQ0FBQ0Y7SUFDbkMsT0FBT0MsUUFBUUEsS0FBSyxDQUFDLEVBQUUsR0FBRztBQUM5QjtBQUNPLFNBQVNFLFlBQVlILEdBQUc7SUFDM0IsTUFBTUksWUFBWUwsYUFBYUMsS0FBS0ssV0FBVztJQUMvQyxPQUFPbEIsS0FBSyxDQUFDaUIsVUFBVSxJQUFJO0FBQy9CLEVBQ0EsaUNBQWlDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vbmV4dGNoYXQvLi9ub2RlX21vZHVsZXMvaHRtbC10by1pbWFnZS9lcy9taW1lcy5qcz9mMDQ4Il0sInNvdXJjZXNDb250ZW50IjpbImNvbnN0IFdPRkYgPSAnYXBwbGljYXRpb24vZm9udC13b2ZmJztcbmNvbnN0IEpQRUcgPSAnaW1hZ2UvanBlZyc7XG5jb25zdCBtaW1lcyA9IHtcbiAgICB3b2ZmOiBXT0ZGLFxuICAgIHdvZmYyOiBXT0ZGLFxuICAgIHR0ZjogJ2FwcGxpY2F0aW9uL2ZvbnQtdHJ1ZXR5cGUnLFxuICAgIGVvdDogJ2FwcGxpY2F0aW9uL3ZuZC5tcy1mb250b2JqZWN0JyxcbiAgICBwbmc6ICdpbWFnZS9wbmcnLFxuICAgIGpwZzogSlBFRyxcbiAgICBqcGVnOiBKUEVHLFxuICAgIGdpZjogJ2ltYWdlL2dpZicsXG4gICAgdGlmZjogJ2ltYWdlL3RpZmYnLFxuICAgIHN2ZzogJ2ltYWdlL3N2Zyt4bWwnLFxuICAgIHdlYnA6ICdpbWFnZS93ZWJwJyxcbn07XG5mdW5jdGlvbiBnZXRFeHRlbnNpb24odXJsKSB7XG4gICAgY29uc3QgbWF0Y2ggPSAvXFwuKFteLi9dKj8pJC9nLmV4ZWModXJsKTtcbiAgICByZXR1cm4gbWF0Y2ggPyBtYXRjaFsxXSA6ICcnO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGdldE1pbWVUeXBlKHVybCkge1xuICAgIGNvbnN0IGV4dGVuc2lvbiA9IGdldEV4dGVuc2lvbih1cmwpLnRvTG93ZXJDYXNlKCk7XG4gICAgcmV0dXJuIG1pbWVzW2V4dGVuc2lvbl0gfHwgJyc7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1taW1lcy5qcy5tYXAiXSwibmFtZXMiOlsiV09GRiIsIkpQRUciLCJtaW1lcyIsIndvZmYiLCJ3b2ZmMiIsInR0ZiIsImVvdCIsInBuZyIsImpwZyIsImpwZWciLCJnaWYiLCJ0aWZmIiwic3ZnIiwid2VicCIsImdldEV4dGVuc2lvbiIsInVybCIsIm1hdGNoIiwiZXhlYyIsImdldE1pbWVUeXBlIiwiZXh0ZW5zaW9uIiwidG9Mb3dlckNhc2UiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/html-to-image/es/mimes.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/html-to-image/es/util.js":
/*!***********************************************!*\
!*** ./node_modules/html-to-image/es/util.js ***!
\***********************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ canvasToBlob: () => (/* binding */ canvasToBlob),\n/* harmony export */ checkCanvasDimensions: () => (/* binding */ checkCanvasDimensions),\n/* harmony export */ createImage: () => (/* binding */ createImage),\n/* harmony export */ delay: () => (/* binding */ delay),\n/* harmony export */ getImageSize: () => (/* binding */ getImageSize),\n/* harmony export */ getPixelRatio: () => (/* binding */ getPixelRatio),\n/* harmony export */ isInstanceOfElement: () => (/* binding */ isInstanceOfElement),\n/* harmony export */ nodeToDataURL: () => (/* binding */ nodeToDataURL),\n/* harmony export */ resolveUrl: () => (/* binding */ resolveUrl),\n/* harmony export */ svgToDataURL: () => (/* binding */ svgToDataURL),\n/* harmony export */ toArray: () => (/* binding */ toArray),\n/* harmony export */ uuid: () => (/* binding */ uuid)\n/* harmony export */ });\nfunction resolveUrl(url, baseUrl) {\n // url is absolute already\n if (url.match(/^[a-z]+:\\/\\//i)) {\n return url;\n }\n // url is absolute already, without protocol\n if (url.match(/^\\/\\//)) {\n return window.location.protocol + url;\n }\n // dataURI, mailto:, tel:, etc.\n if (url.match(/^[a-z]+:/i)) {\n return url;\n }\n const doc = document.implementation.createHTMLDocument();\n const base = doc.createElement(\"base\");\n const a = doc.createElement(\"a\");\n doc.head.appendChild(base);\n doc.body.appendChild(a);\n if (baseUrl) {\n base.href = baseUrl;\n }\n a.href = url;\n return a.href;\n}\nconst uuid = (()=>{\n // generate uuid for className of pseudo elements.\n // We should not use GUIDs, otherwise pseudo elements sometimes cannot be captured.\n let counter = 0;\n // ref: http://stackoverflow.com/a/6248722/2519373\n const random = ()=>// eslint-disable-next-line no-bitwise\n `0000${(Math.random() * 36 ** 4 << 0).toString(36)}`.slice(-4);\n return ()=>{\n counter += 1;\n return `u${random()}${counter}`;\n };\n})();\nfunction delay(ms) {\n return (args)=>new Promise((resolve)=>{\n setTimeout(()=>resolve(args), ms);\n });\n}\nfunction toArray(arrayLike) {\n const arr = [];\n for(let i = 0, l = arrayLike.length; i < l; i++){\n arr.push(arrayLike[i]);\n }\n return arr;\n}\nfunction px(node, styleProperty) {\n const win = node.ownerDocument.defaultView || window;\n const val = win.getComputedStyle(node).getPropertyValue(styleProperty);\n return val ? parseFloat(val.replace(\"px\", \"\")) : 0;\n}\nfunction getNodeWidth(node) {\n const leftBorder = px(node, \"border-left-width\");\n const rightBorder = px(node, \"border-right-width\");\n return node.clientWidth + leftBorder + rightBorder;\n}\nfunction getNodeHeight(node) {\n const topBorder = px(node, \"border-top-width\");\n const bottomBorder = px(node, \"border-bottom-width\");\n return node.clientHeight + topBorder + bottomBorder;\n}\nfunction getImageSize(targetNode, options = {}) {\n const width = options.width || getNodeWidth(targetNode);\n const height = options.height || getNodeHeight(targetNode);\n return {\n width,\n height\n };\n}\nfunction getPixelRatio() {\n let ratio;\n let FINAL_PROCESS;\n try {\n FINAL_PROCESS = process;\n } catch (e) {\n // pass\n }\n const val = FINAL_PROCESS && FINAL_PROCESS.env ? FINAL_PROCESS.env.devicePixelRatio : null;\n if (val) {\n ratio = parseInt(val, 10);\n if (Number.isNaN(ratio)) {\n ratio = 1;\n }\n }\n return ratio || window.devicePixelRatio || 1;\n}\n// @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/canvas#maximum_canvas_size\nconst canvasDimensionLimit = 16384;\nfunction checkCanvasDimensions(canvas) {\n if (canvas.width > canvasDimensionLimit || canvas.height > canvasDimensionLimit) {\n if (canvas.width > canvasDimensionLimit && canvas.height > canvasDimensionLimit) {\n if (canvas.width > canvas.height) {\n canvas.height *= canvasDimensionLimit / canvas.width;\n canvas.width = canvasDimensionLimit;\n } else {\n canvas.width *= canvasDimensionLimit / canvas.height;\n canvas.height = canvasDimensionLimit;\n }\n } else if (canvas.width > canvasDimensionLimit) {\n canvas.height *= canvasDimensionLimit / canvas.width;\n canvas.width = canvasDimensionLimit;\n } else {\n canvas.width *= canvasDimensionLimit / canvas.height;\n canvas.height = canvasDimensionLimit;\n }\n }\n}\nfunction canvasToBlob(canvas, options = {}) {\n if (canvas.toBlob) {\n return new Promise((resolve)=>{\n canvas.toBlob(resolve, options.type ? options.type : \"image/png\", options.quality ? options.quality : 1);\n });\n }\n return new Promise((resolve)=>{\n const binaryString = window.atob(canvas.toDataURL(options.type ? options.type : undefined, options.quality ? options.quality : undefined).split(\",\")[1]);\n const len = binaryString.length;\n const binaryArray = new Uint8Array(len);\n for(let i = 0; i < len; i += 1){\n binaryArray[i] = binaryString.charCodeAt(i);\n }\n resolve(new Blob([\n binaryArray\n ], {\n type: options.type ? options.type : \"image/png\"\n }));\n });\n}\nfunction createImage(url) {\n return new Promise((resolve, reject)=>{\n const img = new Image();\n img.decode = ()=>resolve(img);\n img.onload = ()=>resolve(img);\n img.onerror = reject;\n img.crossOrigin = \"anonymous\";\n img.decoding = \"async\";\n img.src = url;\n });\n}\nasync function svgToDataURL(svg) {\n return Promise.resolve().then(()=>new XMLSerializer().serializeToString(svg)).then(encodeURIComponent).then((html)=>`data:image/svg+xml;charset=utf-8,${html}`);\n}\nasync function nodeToDataURL(node, width, height) {\n const xmlns = \"http://www.w3.org/2000/svg\";\n const svg = document.createElementNS(xmlns, \"svg\");\n const foreignObject = document.createElementNS(xmlns, \"foreignObject\");\n svg.setAttribute(\"width\", `${width}`);\n svg.setAttribute(\"height\", `${height}`);\n svg.setAttribute(\"viewBox\", `0 0 ${width} ${height}`);\n foreignObject.setAttribute(\"width\", \"100%\");\n foreignObject.setAttribute(\"height\", \"100%\");\n foreignObject.setAttribute(\"x\", \"0\");\n foreignObject.setAttribute(\"y\", \"0\");\n foreignObject.setAttribute(\"externalResourcesRequired\", \"true\");\n svg.appendChild(foreignObject);\n foreignObject.appendChild(node);\n return svgToDataURL(svg);\n}\nconst isInstanceOfElement = (node, instance)=>{\n if (node instanceof instance) return true;\n const nodePrototype = Object.getPrototypeOf(node);\n if (nodePrototype === null) return false;\n return nodePrototype.constructor.name === instance.name || isInstanceOfElement(nodePrototype, instance);\n}; //# sourceMappingURL=util.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvaHRtbC10by1pbWFnZS9lcy91dGlsLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7OztBQUFPLFNBQVNBLFdBQVdDLEdBQUcsRUFBRUMsT0FBTztJQUNuQywwQkFBMEI7SUFDMUIsSUFBSUQsSUFBSUUsS0FBSyxDQUFDLGtCQUFrQjtRQUM1QixPQUFPRjtJQUNYO0lBQ0EsNENBQTRDO0lBQzVDLElBQUlBLElBQUlFLEtBQUssQ0FBQyxVQUFVO1FBQ3BCLE9BQU9DLE9BQU9DLFFBQVEsQ0FBQ0MsUUFBUSxHQUFHTDtJQUN0QztJQUNBLCtCQUErQjtJQUMvQixJQUFJQSxJQUFJRSxLQUFLLENBQUMsY0FBYztRQUN4QixPQUFPRjtJQUNYO0lBQ0EsTUFBTU0sTUFBTUMsU0FBU0MsY0FBYyxDQUFDQyxrQkFBa0I7SUFDdEQsTUFBTUMsT0FBT0osSUFBSUssYUFBYSxDQUFDO0lBQy9CLE1BQU1DLElBQUlOLElBQUlLLGFBQWEsQ0FBQztJQUM1QkwsSUFBSU8sSUFBSSxDQUFDQyxXQUFXLENBQUNKO0lBQ3JCSixJQUFJUyxJQUFJLENBQUNELFdBQVcsQ0FBQ0Y7SUFDckIsSUFBSVgsU0FBUztRQUNUUyxLQUFLTSxJQUFJLEdBQUdmO0lBQ2hCO0lBQ0FXLEVBQUVJLElBQUksR0FBR2hCO0lBQ1QsT0FBT1ksRUFBRUksSUFBSTtBQUNqQjtBQUNPLE1BQU1DLE9BQU8sQ0FBQztJQUNqQixrREFBa0Q7SUFDbEQsbUZBQW1GO0lBQ25GLElBQUlDLFVBQVU7SUFDZCxrREFBa0Q7SUFDbEQsTUFBTUMsU0FBUyxJQUNmLHNDQUFzQztRQUN0QyxDQUFDLElBQUksRUFBRSxDQUFDLEtBQU1BLE1BQU0sS0FBSyxNQUFNLEtBQU0sR0FBR0UsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDQyxLQUFLLENBQUMsQ0FBQztJQUM5RCxPQUFPO1FBQ0hKLFdBQVc7UUFDWCxPQUFPLENBQUMsQ0FBQyxFQUFFQyxTQUFTLEVBQUVELFFBQVEsQ0FBQztJQUNu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QUNDLElBQUksS0FBS0wsU0FBU0ssSUFBSSxJQUNwRE4sb0JBQW9CRSxlQUFlRDtBQUMzQyxFQUFFLENBQ0YsZ0NBQWdDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vbmV4dGNoYXQvLi9ub2RlX21vZHVsZXMvaHRtbC10by1pbWFnZS9lcy91dGlsLmpzP2MwYzUiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIHJlc29sdmVVcmwodXJsLCBiYXNlVXJsKSB7XG4gICAgLy8gdXJsIGlzIGFic29sdXRlIGFscmVhZHlcbiAgICBpZiAodXJsLm1hdGNoKC9eW2Etel0rOlxcL1xcLy9pKSkge1xuICAgICAgICByZXR1cm4gdXJsO1xuICAgIH1cbiAgICAvLyB1cmwgaXMgYWJzb2x1dGUgYWxyZWFkeSwgd2l0aG91dCBwcm90b2NvbFxuICAgIGlmICh1cmwubWF0Y2goL15cXC9cXC8vKSkge1xuICAgICAgICByZXR1cm4gd2luZG93LmxvY2F0aW9uLnByb3RvY29sICsgdXJsO1xuICAgIH1cbiAgICAvLyBkYXRhVVJJLCBtYWlsdG86LCB0ZWw6LCBldGMuXG4gICAgaWYgKHVybC5tYXRjaCgvXlthLXpdKzovaSkpIHtcbiAgICAgICAgcmV0dXJuIHVybDtcbiAgICB9XG4gICAgY29uc3QgZG9jID0gZG9jdW1lbnQuaW1wbGVtZW50YXRpb24uY3JlYXRlSFRNTERvY3VtZW50KCk7XG4gICAgY29uc3QgYmFzZSA9IGRvYy5jcmVhdGVFbGVtZW50KCdiYXNlJyk7XG4gICAgY29uc3QgYSA9IGRvYy5jcmVhdGVFbGVtZW50KCdhJyk7XG4gICAgZG9jLmhlYWQuYXBwZW5kQ2hpbGQoYmFzZSk7XG4gICAgZG9jLmJvZHkuYXBwZW5kQ2hpbGQoYSk7XG4gICAgaWYgKGJhc2VVcmwpIHtcbiAgICAgICAgYmFzZS5ocmVmID0gYmFzZVVybDtcbiAgICB9XG4gICAgYS5ocmVmID0gdXJsO1xuICAgIHJldHVybiBhLmhyZWY7XG59XG5leHBvcnQgY29uc3QgdXVpZCA9ICgoKSA9PiB7XG4gICAgLy8gZ2VuZXJhdGUgdXVpZCBmb3IgY2xhc3NOYW1lIG9mIHBzZXVkbyBlbGVtZW50cy5cbiAgICAvLyBXZSBzaG91bGQgbm90IHVzZSBHVUlEcywgb3RoZXJ3aXNlIHBzZXVkbyBlbGVtZW50cyBzb21ldGltZXMgY2Fubm90IGJlIGNhcHR1cmVkLlxuICAgIGxldCBjb3VudGVyID0gMDtcbiAgICAvLyByZWY6IGh0dHA6Ly9zdGFja292ZXJmbG93LmNvbS9hLzYyNDg3MjIvMjUxOTM3M1xuICAgIGNvbnN0IHJhbmRvbSA9ICgpID0+IFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1iaXR3aXNlXG4gICAgYDAwMDAkeygoTWF0aC5yYW5kb20oKSAqIDM2ICoqIDQpIDw8IDApLnRvU3RyaW5nKDM2KX1gLnNsaWNlKC00KTtcbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICBjb3VudGVyICs9IDE7XG4gICAgICAgIHJldHVybiBgdSR7cmFuZG9tKCl9JHtjb3VudGVyfWA7XG4gICAgfTtcbn0pKCk7XG5leHBvcnQgZnVuY3Rpb24gZGVsYXkobXMpIHtcbiAgICByZXR1cm4gKGFyZ3MpID0+IG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4gcmVzb2x2ZShhcmdzKSwgbXMpO1xuICAgIH0pO1xufVxuZXhwb3J0IGZ1bmN0aW9uIHRvQXJyYXkoYXJyYXlMaWtlKSB7XG4gICAgY29uc3QgYXJyID0gW107XG4gICAgZm9yIChsZXQgaSA9IDAsIGwgPSBhcnJheUxpa2UubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICAgIGFyci5wdXNoKGFycmF5TGlrZVtpXSk7XG4gICAgfVxuICAgIHJldHVybiBhcnI7XG59XG5mdW5jdGlvbiBweChub2RlLCBzdHlsZVByb3BlcnR5KSB7XG4gICAgY29uc3Qgd2luID0gbm9kZS5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3IHx8IHdpbmRvdztcbiAgICBjb25zdCB2YWwgPSB3aW4uZ2V0Q29tcHV0ZWRTdHlsZShub2RlKS5nZXRQcm9wZXJ0eVZhbHVlKHN0eWxlUHJvcGVydHkpO1xuICAgIHJldHVybiB2YWwgPyBwYXJzZUZsb2F0KHZhbC5yZXBsYWNlKCdweCcsICcnKSkgOiAwO1xufVxuZnVuY3Rpb24gZ2V0Tm9kZVdpZHRoKG5vZGUpIHtcbiAgICBjb25zdCBsZWZ0Qm9yZGVyID0gcHgobm9kZSwgJ2JvcmRlci1sZWZ0LXdpZHRoJyk7XG4gICAgY29uc3QgcmlnaHRCb3JkZXIgPSBweChub2RlLCAnYm9yZGVyLXJpZ2h0LXdpZHRoJyk7XG4gICAgcmV0dXJuIG5vZGUuY2xpZW50V2lkdGggKyBsZWZ0Qm9yZGVyICsgcmlnaHRCb3JkZXI7XG59XG5mdW5jdGlvbiBnZXROb2RlSGVpZ2h0KG5vZGUpIHtcbiAgICBjb25zdCB0b3BCb3JkZXIgPSBweChub2RlLCAnYm9yZGVyLXRvcC13aWR0aCcpO1xuICAgIGNvbnN0IGJvdHRvbUJvcmRlciA9IHB4KG5vZGUsICdib3JkZXItYm90dG9tLXdpZHRoJyk7XG4gICAgcmV0dXJuIG5vZGUuY2xpZW50SGVpZ2h0ICsgdG9wQm9yZGVyICsgYm90dG9tQm9yZGVyO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGdldEltYWdlU2l6ZSh0YXJnZXROb2RlLCBvcHRpb25zID0ge30pIHtcbiAgICBjb25zdCB3aWR0aCA9IG9wdGlvbnMud2lkdGggfHwgZ2V0Tm9kZVdpZHRoKHRhcmdldE5vZGUpO1xuICAgIGNvbnN0IGhlaWdodCA9IG9wdGlvbnMuaGVpZ2h0IHx8IGdldE5vZGVIZWlnaHQodGFyZ2V0Tm9kZSk7XG4gICAgcmV0dXJuIHsgd2lkdGgsIGhlaWdodCB9O1xufVxuZXhwb3J0IGZ1bmN0aW9uIGdldFBpeGVsUmF0aW8oKSB7XG4gICAgbGV0IHJhdGlvO1xuICAgIGxldCBGSU5BTF9QUk9DRVNTO1xuICAgIHRyeSB7XG4gICAgICAgIEZJTkFMX1BST0NFU1MgPSBwcm9jZXNzO1xuICAgIH1cbiAgICBjYXRjaCAoZSkge1xuICAgICAgICAvLyBwYXNzXG4gICAgfVxuICAgIGNvbnN0IHZhbCA9IEZJTkFMX1BST0NFU1MgJiYgRklOQUxfUFJPQ0VTUy5lbnZcbiAgICAgICAgPyBGSU5BTF9QUk9DRVNTLmVudi5kZXZpY2VQaXhlbFJhdGlvXG4gICAgICAgIDogbnVsbDtcbiAgICBpZiAodmFsKSB7XG4gICAgICAgIHJhdGlvID0gcGFyc2VJbnQodmFsLCAxMCk7XG4gICAgICAgIGlmIChOdW1iZXIuaXNOYU4ocmF0aW8pKSB7XG4gICAgICAgICAgICByYXRpbyA9IDE7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJhdGlvIHx8IHdpbmRvdy5kZXZpY2VQaXhlbFJhdGlvIHx8IDE7XG59XG4vLyBAc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0hUTUwvRWxlbWVudC9jYW52YXMjbWF4aW11bV9jYW52YXNfc2l6ZVxuY29uc3QgY2FudmFzRGltZW5zaW9uTGltaXQgPSAxNjM4NDtcbmV4cG9ydCBmdW5jdGlvbiBjaGVja0NhbnZhc0RpbWVuc2lvbnMoY2FudmFzKSB7XG4gICAgaWYgKGNhbnZhcy53aWR0aCA+IGNhbnZhc0RpbWVuc2lvbkxpbWl0IHx8XG4gICAgICAgIGNhbnZhcy5oZWlnaHQgPiBjYW52YXNEaW1lbnNpb25MaW1pdCkge1xuICAgICAgICBpZiAoY2FudmFzLndpZHRoID4gY2FudmFzRGltZW5zaW9uTGltaXQgJiZcbiAgICAgICAgICAgIGNhbnZhcy5oZWlnaHQgPiBjYW52YXNEaW1lbnNpb25MaW1pdCkge1xuICAgICAgICAgICAgaWYgKGNhbnZhcy53aWR0aCA+IGNhbnZhcy5oZWlnaHQpIHtcbiAgICAgICAgICAgICAgICBjYW52YXMuaGVpZ2h0ICo9IGNhbnZhc0RpbWVuc2lvbkxpbWl0IC8gY2FudmFzLndpZHRoO1xuICAgICAgICAgICAgICAgIGNhbnZhcy53aWR0aCA9IGNhbnZhc0RpbWVuc2lvbkxpbWl0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgY2FudmFzLndpZHRoICo9IGNhbnZhc0RpbWVuc2lvbkxpbWl0IC8gY2FudmFzLmhlaWdodDtcbiAgICAgICAgICAgICAgICBjYW52YXMuaGVpZ2h0ID0gY2FudmFzRGltZW5zaW9uTGltaXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoY2FudmFzLndpZHRoID4gY2FudmFzRGltZW5zaW9uTGltaXQpIHtcbiAgICAgICAgICAgIGNhbnZhcy5oZWlnaHQgKj0gY2FudmFzRGltZW5zaW9uTGltaXQgLyBjYW52YXMud2lkdGg7XG4gICAgICAgICAgICBjYW52YXMud2lkdGggPSBjYW52YXNEaW1lbnNpb25MaW1pdDtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGNhbnZhcy53aWR0aCAqPSBjYW52YXNEaW1lbnNpb25MaW1pdCAvIGNhbnZhcy5oZWlnaHQ7XG4gICAgICAgICAgICBjYW52YXMuaGVpZ2h0ID0gY2FudmFzRGltZW5zaW9uTGltaXQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5leHBvcnQgZnVuY3Rpb24gY2FudmFzVG9CbG9iKGNhbnZhcywgb3B0aW9ucyA9IHt9KSB7XG4gICAgaWYgKGNhbnZhcy50b0Jsb2IpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgICAgICAgICBjYW52YXMudG9CbG9iKHJlc29sdmUsIG9wdGlvbnMudHlwZSA/IG9wdGlvbnMudHlwZSA6ICdpbWFnZS9wbmcnLCBvcHRpb25zLnF1YWxpdHkgPyBvcHRpb25zLnF1YWxpdHkgOiAxKTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgICAgICBjb25zdCBiaW5hcnlTdHJpbmcgPSB3aW5kb3cuYXRvYihjYW52YXNcbiAgICAgICAgICAgIC50b0RhdGFVUkwob3B0aW9ucy50eXBlID8gb3B0aW9ucy50eXBlIDogdW5kZWZpbmVkLCBvcHRpb25zLnF1YWxpdHkgPyBvcHRpb25zLnF1YWxpdHkgOiB1bmRlZmluZWQpXG4gICAgICAgICAgICAuc3BsaXQoJywnKVsxXSk7XG4gICAgICAgIGNvbnN0IGxlbiA9IGJpbmFyeVN0cmluZy5sZW5ndGg7XG4gICAgICAgIGNvbnN0IGJpbmFyeUFycmF5ID0gbmV3IFVpbnQ4QXJyYXkobGVuKTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsZW47IGkgKz0gMSkge1xuICAgICAgICAgICAgYmluYXJ5QXJyYXlbaV0gPSBiaW5hcnlTdHJpbmcuY2hhckNvZGVBdChpKTtcbiAgICAgICAgfVxuICAgICAgICByZXNvbHZlKG5ldyBCbG9iKFtiaW5hcnlBcnJheV0sIHtcbiAgICAgICAgICAgIHR5cGU6IG9wdGlvbnMudHlwZSA/IG9wdGlvbnMudHlwZSA6ICdpbWFnZS9wbmcnLFxuICAgICAgICB9KSk7XG4gICAgfSk7XG59XG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlSW1hZ2UodXJsKSB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgY29uc3QgaW1nID0gbmV3IEltYWdlKCk7XG4gICAgICAgIGltZy5kZWNvZGUgPSAoKSA9PiByZXNvbHZlKGltZyk7XG4gICAgICAgIGltZy5vbmxvYWQgPSAoKSA9PiByZXNvbHZlKGltZyk7XG4gICAgICAgIGltZy5vbmVycm9yID0gcmVqZWN0O1xuICAgICAgICBpbWcuY3Jvc3NPcmlnaW4gPSAnYW5vbnltb3VzJztcbiAgICAgICAgaW1nLmRlY29kaW5nID0gJ2FzeW5jJztcbiAgICAgICAgaW1nLnNyYyA9IHVybDtcbiAgICB9KTtcbn1cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBzdmdUb0RhdGFVUkwoc3ZnKSB7XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpXG4gICAgICAgIC50aGVuKCgpID0+IG5ldyBYTUxTZXJpYWxpemVyKCkuc2VyaWFsaXplVG9TdHJpbmcoc3ZnKSlcbiAgICAgICAgLnRoZW4oZW5jb2RlVVJJQ29tcG9uZW50KVxuICAgICAgICAudGhlbigoaHRtbCkgPT4gYGRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCR7aHRtbH1gKTtcbn1cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBub2RlVG9EYXRhVVJMKG5vZGUsIHdpZHRoLCBoZWlnaHQpIHtcbiAgICBjb25zdCB4bWxucyA9ICdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zyc7XG4gICAgY29uc3Qgc3ZnID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKHhtbG5zLCAnc3ZnJyk7XG4gICAgY29uc3QgZm9yZWlnbk9iamVjdCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUyh4bWxucywgJ2ZvcmVpZ25PYmplY3QnKTtcbiAgICBzdmcuc2V0QXR0cmlidXRlKCd3aWR0aCcsIGAke3dpZHRofWApO1xuICAgIHN2Zy5zZXRBdHRyaWJ1dGUoJ2hlaWdodCcsIGAke2hlaWdodH1gKTtcbiAgICBzdmcuc2V0QXR0cmlidXRlKCd2aWV3Qm94JywgYDAgMCAke3dpZHRofSAke2hlaWdodH1gKTtcbiAgICBmb3JlaWduT2JqZWN0LnNldEF0dHJpYnV0ZSgnd2lkdGgnLCAnMTAwJScpO1xuICAgIGZvcmVpZ25PYmplY3Quc2V0QXR0cmlidXRlKCdoZWlnaHQnLCAnMTAwJScpO1xuICAgIGZvcmVpZ25PYmplY3Quc2V0QXR0cmlidXRlKCd4JywgJzAnKTtcbiAgICBmb3JlaWduT2JqZWN0LnNldEF0dHJpYnV0ZSgneScsICcwJyk7XG4gICAgZm9yZWlnbk9iamVjdC5zZXRBdHRyaWJ1dGUoJ2V4dGVybmFsUmVzb3VyY2VzUmVxdWlyZWQnLCAndHJ1ZScpO1xuICAgIHN2Zy5hcHBlbmRDaGlsZChmb3JlaWduT2JqZWN0KTtcbiAgICBmb3JlaWduT2JqZWN0LmFwcGVuZENoaWxkKG5vZGUpO1xuICAgIHJldHVybiBzdmdUb0RhdGFVUkwoc3ZnKTtcbn1cbmV4cG9ydCBjb25zdCBpc0luc3RhbmNlT2ZFbGVtZW50ID0gKG5vZGUsIGluc3RhbmNlKSA9PiB7XG4gICAgaWYgKG5vZGUgaW5zdGFuY2VvZiBpbnN0YW5jZSlcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgY29uc3Qgbm9kZVByb3RvdHlwZSA9IE9iamVjdC5nZXRQcm90b3R5cGVPZihub2RlKTtcbiAgICBpZiAobm9kZVByb3RvdHlwZSA9PT0gbnVsbClcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIHJldHVybiAobm9kZVByb3RvdHlwZS5jb25zdHJ1Y3Rvci5uYW1lID09PSBpbnN0YW5jZS5uYW1lIHx8XG4gICAgICAgIGlzSW5zdGFuY2VPZkVsZW1lbnQobm9kZVByb3RvdHlwZSwgaW5zdGFuY2UpKTtcbn07XG4vLyMgc291cmNlTWFwcGluZ1VSTD11dGlsLmpzLm1hcCJdLCJuYW1lcyI6WyJyZXNvbHZlVXJsIiwidXJsIiwiYmFzZVVybCIsIm1hdGNoIiwid2luZG93IiwibG9jYXRpb24iLCJwcm90b2NvbCIsImRvYyIsImRvY3VtZW50IiwiaW1wbGVtZW50YXRpb24iLCJjcmVhdGVIVE1MRG9jdW1lbnQiLCJiYXNlIiwiY3JlYXRlRWxlbWVudCIsImEiLCJoZWFkIiwiYXBwZW5kQ2hpbGQiLCJib2R5IiwiaHJlZiIsInV1aWQiLCJjb3VudGVyIiwicmFuZG9tIiwiTWF0aCIsInRvU3RyaW5nIiwic2xpY2UiLCJkZWxheSIsIm1zIiwiYXJncyIsIlByb21pc2UiLCJyZXNvbHZlIiwic2V0VGltZW91dCIsInRvQXJyYXkiLCJhcnJheUxpa2UiLCJhcnIiLCJpIiwibCIsImxlbmd0aCIsInB1c2giLCJweCIsIm5vZGUiLCJzdHlsZVByb3BlcnR5Iiwid2luIiwib3duZXJEb2N1bWVudCIsImRlZmF1bHRWaWV3IiwidmFsIiwiZ2V0Q29tcHV0ZWRTdHlsZSIsImdldFByb3BlcnR5VmFsdWUiLCJwYXJzZUZsb2F0IiwicmVwbGFjZSIsImdldE5vZGVXaWR0aCIsImxlZnRCb3JkZXIiLCJyaWdodEJvcmRlciIsImNsaWVudFdpZHRoIiwiZ2V0Tm9kZUhlaWdodCIsInRvcEJvcmRlciIsImJvdHRvbUJvcmRlciIsImNsaWVudEhlaWdodCIsImdldEltYWdlU2l6ZSIsInRhcmdldE5vZGUiLCJvcHRpb25zIiwid2lkdGgiLCJoZWlnaHQiLCJnZXRQaXhlbFJhdGlvIiwicmF0aW8iLCJGSU5BTF9QUk9DRVNTIiwicHJvY2VzcyIsImUiLCJlbnYiLCJkZXZpY2VQaXhlbFJhdGlvIiwicGFyc2VJbnQiLCJOdW1iZXIiLCJpc05hTiIsImNhbnZhc0RpbWVuc2lvbkxpbWl0IiwiY2hlY2tDYW52YXNEaW1lbnNpb25zIiwiY2FudmFzIiwiY2FudmFzVG9CbG9iIiwidG9CbG9iIiwidHlwZSIsInF1YWxpdHkiLCJiaW5hcnlTdHJpbmciLCJhdG9iIiwidG9EYXRhVVJMIiwidW5kZWZpbmVkIiwic3BsaXQiLCJsZW4iLCJiaW5hcnlBcnJheSIsIlVpbnQ4QXJyYXkiLCJjaGFyQ29kZUF0IiwiQmxvYiIsImNyZWF0ZUltYWdlIiwicmVqZWN0IiwiaW1nIiwiSW1hZ2UiLCJkZWNvZGUiLCJvbmxvYWQiLCJvbmVycm9yIiwiY3Jvc3NPcmlnaW4iLCJkZWNvZGluZyIsInNyYyIsInN2Z1RvRGF0YVVSTCIsInN2ZyIsInRoZW4iLCJYTUxTZXJpYWxpemVyIiwic2VyaWFsaXplVG9TdHJpbmciLCJlbmNvZGVVUklDb21wb25lbnQiLCJodG1sIiwibm9kZVRvRGF0YVVSTCIsInhtbG5zIiwiY3JlYXRlRWxlbWVudE5TIiwiZm9yZWlnbk9iamVjdCIsInNldEF0dHJpYnV0ZSIsImlzSW5zdGFuY2VPZkVsZW1lbnQiLCJpbnN0YW5jZSIsIm5vZGVQcm90b3R5cGUiLCJPYmplY3QiLCJnZXRQcm90b3R5cGVPZiIsImNvbnN0cnVjdG9yIiwibmFtZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/html-to-image/es/util.js\n");
/***/ })
};
;