From c4fe8489d9df1d4f968c3ceff0c0a4df75fce9de Mon Sep 17 00:00:00 2001 From: Lukas Hollaender Date: Mon, 7 Dec 2020 15:59:37 +0100 Subject: [PATCH] 2.1.0 --- dist/svg2pdf.es.js | 396 +++++++++++++++++++++++------------ dist/svg2pdf.es.js.map | 2 +- dist/svg2pdf.es.min.js | 2 +- dist/svg2pdf.es.min.js.map | 2 +- dist/svg2pdf.umd.js | 400 ++++++++++++++++++++++++------------ dist/svg2pdf.umd.js.map | 2 +- dist/svg2pdf.umd.min.js | 2 +- dist/svg2pdf.umd.min.js.map | 2 +- package.json | 2 +- 9 files changed, 537 insertions(+), 273 deletions(-) diff --git a/dist/svg2pdf.es.js b/dist/svg2pdf.es.js index 2a3c61e6..4cdc9b76 100644 --- a/dist/svg2pdf.es.js +++ b/dist/svg2pdf.es.js @@ -108,6 +108,7 @@ function __generator(thisArg, body) { } } +/* eslint-disable @typescript-eslint/no-explicit-any,@typescript-eslint/explicit-module-boundary-types */ var RGBColor = /** @class */ (function () { function RGBColor(colorString) { this.a = undefined; @@ -115,6 +116,7 @@ var RGBColor = /** @class */ (function () { this.g = 0; this.b = 0; this.simpleColors = {}; + // eslint-disable-next-line @typescript-eslint/ban-types this.colorDefs = []; this.ok = false; if (!colorString) { @@ -336,6 +338,9 @@ var RGBColor = /** @class */ (function () { RGBColor.prototype.toRGB = function () { return 'rgb(' + this.r + ', ' + this.g + ', ' + this.b + ')'; }; + RGBColor.prototype.toRGBA = function () { + return 'rgba(' + this.r + ', ' + this.g + ', ' + this.b + ', ' + (this.a || '1') + ')'; + }; RGBColor.prototype.toHex = function () { var r = this.r.toString(16); var g = this.g.toString(16); @@ -394,6 +399,7 @@ var ColorFill = /** @class */ (function () { function ColorFill(color) { this.color = color; } + // eslint-disable-next-line @typescript-eslint/no-unused-vars ColorFill.prototype.getFillData = function (forNode, context) { return __awaiter(this, void 0, void 0, function () { return __generator(this, function (_a) { @@ -428,6 +434,7 @@ var AttributeState = /** @class */ (function () { this.alignmentBaseline = ''; this.textAnchor = ''; this.visibility = ''; + this.color = null; } AttributeState.prototype.clone = function () { var clone = new AttributeState(); @@ -453,6 +460,7 @@ var AttributeState = /** @class */ (function () { clone.textAnchor = this.textAnchor; clone.alignmentBaseline = this.alignmentBaseline; clone.visibility = this.visibility; + clone.color = this.color; return clone; }; AttributeState.default = function () { @@ -479,6 +487,7 @@ var AttributeState = /** @class */ (function () { attributeState.alignmentBaseline = 'baseline'; attributeState.textAnchor = 'start'; attributeState.visibility = 'visible'; + attributeState.color = new RGBColor('rgb(0, 0, 0)'); return attributeState; }; return AttributeState; @@ -649,17 +658,18 @@ var ReferencesHandler = /** @class */ (function () { this.renderedElements = {}; this.idMap = idMap; } - ReferencesHandler.prototype.getRendered = function (id, renderCallback) { + ReferencesHandler.prototype.getRendered = function (id, color, renderCallback) { return __awaiter(this, void 0, void 0, function () { - var svgNode; + var key, svgNode; return __generator(this, function (_a) { switch (_a.label) { case 0: - if (this.renderedElements.hasOwnProperty(id)) { + key = ReferencesHandler.generateKey(id, color); + if (this.renderedElements.hasOwnProperty(key)) { return [2 /*return*/, this.renderedElements[id]]; } svgNode = this.get(id); - this.renderedElements[id] = svgNode; + this.renderedElements[key] = svgNode; return [4 /*yield*/, renderCallback(svgNode)]; case 1: _a.sent(); @@ -671,6 +681,9 @@ var ReferencesHandler = /** @class */ (function () { ReferencesHandler.prototype.get = function (id) { return this.idMap[cssEsc(id, { isIdentifier: true })]; }; + ReferencesHandler.generateKey = function (id, color) { + return id + '|' + (color || new RGBColor('rgb(0,0,0)')).toRGBA(); + }; return ReferencesHandler; }()); @@ -812,14 +825,17 @@ function getAttribute(node, styleSheets, propertyNode, propertyCss) { if (attribute) { return attribute; } - else if (styleSheets.getPropertyValue(node, propertyCss)) { - return styleSheets.getPropertyValue(node, propertyCss); - } - else if (node.hasAttribute(propertyNode)) { - return node.getAttribute(propertyNode) || undefined; - } else { - return undefined; + var propertyValue = styleSheets.getPropertyValue(node, propertyCss); + if (propertyValue) { + return propertyValue; + } + else if (node.hasAttribute(propertyNode)) { + return node.getAttribute(propertyNode) || undefined; + } + else { + return undefined; + } } } function svgNodeIsVisible(svgNode, parentVisible, context) { @@ -880,7 +896,9 @@ var MarkerList = /** @class */ (function () { // as the marker is already scaled by the current line width we must not apply the line width twice! context.pdf.saveGraphicsState(); context.pdf.setLineWidth(1.0); - return [4 /*yield*/, context.refsHandler.getRendered(marker.id, function (node) { return node.apply(context); })]; + return [4 /*yield*/, context.refsHandler.getRendered(marker.id, null, function (node) { + return node.apply(context); + })]; case 2: _a.sent(); context.pdf.doFormObject(marker.id, tf); @@ -903,8 +921,6 @@ var MarkerList = /** @class */ (function () { */ var Marker = /** @class */ (function () { function Marker(id, anchor, angle) { - // eslint-disable-next-line @typescript-eslint/ban-ts-ignore - // @ts-ignore this.id = id; this.anchor = anchor; this.angle = angle; @@ -948,13 +964,19 @@ function parseFloats(str) { } return floats; } -// extends RGBColor by rgba colors as RGBColor is not capable of it -function parseColor(colorString) { +/** + * extends RGBColor by rgba colors as RGBColor is not capable of it + * currentcolor: the color to return if colorString === 'currentcolor' + */ +function parseColor(colorString, currentcolor) { if (colorString === 'transparent') { var transparent = new RGBColor('rgb(0,0,0)'); transparent.a = 0; return transparent; } + if (colorString.toLowerCase() === 'currentcolor') { + return currentcolor || new RGBColor('rgb(0,0,0)'); + } var match = /\s*rgba\(((?:[^,\)]*,){3}[^,\)]*)\)\s*/.exec(colorString); if (match) { var floats = parseFloats(match[1]); @@ -1029,6 +1051,7 @@ function getBoundingBoxByChildren(context, svgnode) { return boundingBox; } function defaultBoundingBox(element, context) { + // eslint-disable-next-line @typescript-eslint/no-explicit-any var pf = parseFloat; // TODO: check if there are other possible coordinate attributes var x1 = pf(element.getAttribute('x1')) || @@ -1116,7 +1139,7 @@ function computeViewBoxTransform(node, viewBox, eX, eY, eWidth, eHeight, context function parseTransform(transformString, context) { if (!transformString || transformString === 'none') return context.pdf.unitMatrix; - var mRegex = /^[\s,]*matrix\(([^\)]+)\)\s*/, tRegex = /^[\s,]*translate\(([^\)]+)\)\s*/, rRegex = /^[\s,]*rotate\(([^\)]+)\)\s*/, sRegex = /^[\s,]*scale\(([^\)]+)\)\s*/, sXRegex = /^[\s,]*skewX\(([^\)]+)\)\s*/, sYRegex = /^[\s,]*skewY\(([^\)]+)\)\s*/; + var mRegex = /^[\s,]*matrix\(([^)]+)\)\s*/, tRegex = /^[\s,]*translate\(([^)]+)\)\s*/, rRegex = /^[\s,]*rotate\(([^)]+)\)\s*/, sRegex = /^[\s,]*scale\(([^)]+)\)\s*/, sXRegex = /^[\s,]*skewX\(([^)]+)\)\s*/, sYRegex = /^[\s,]*skewY\(([^)]+)\)\s*/; var resultMatrix = context.pdf.unitMatrix; var m; var tSLength; @@ -1176,7 +1199,14 @@ var SvgNode = /** @class */ (function () { function SvgNode(element, children) { this.element = element; this.children = children; + this.parent = null; } + SvgNode.prototype.setParent = function (parent) { + this.parent = parent; + }; + SvgNode.prototype.getParent = function () { + return this.parent; + }; SvgNode.prototype.getBoundingBox = function (context) { if (getAttribute(this.element, context.styleSheets, 'display') === 'none') { return [0, 0, 0, 0]; @@ -1199,9 +1229,11 @@ var NonRenderedNode = /** @class */ (function (_super) { function NonRenderedNode() { return _super !== null && _super.apply(this, arguments) || this; } + // eslint-disable-next-line @typescript-eslint/no-unused-vars NonRenderedNode.prototype.render = function (parentContext) { return Promise.resolve(); }; + // eslint-disable-next-line @typescript-eslint/no-unused-vars NonRenderedNode.prototype.getBoundingBoxCore = function (context) { return []; }; @@ -1216,22 +1248,38 @@ var Gradient = /** @class */ (function (_super) { function Gradient(pdfGradientType, element, children) { var _this = _super.call(this, element, children) || this; _this.pdfGradientType = pdfGradientType; + _this.contextColor = undefined; return _this; } Gradient.prototype.apply = function (context) { return __awaiter(this, void 0, void 0, function () { - var id, colors, opacitySum, hasOpacity, gState, pattern; + var id, ancestor, colorAttr, colors, opacitySum, hasOpacity, gState, pattern; + var _this = this; return __generator(this, function (_a) { id = this.element.getAttribute('id'); if (!id) { return [2 /*return*/]; } + // Only need to calculate contextColor once + if (this.contextColor === undefined) { + this.contextColor = null; + ancestor = this; + while (ancestor) { + colorAttr = getAttribute(ancestor.element, context.styleSheets, 'color'); + if (colorAttr) { + this.contextColor = parseColor(colorAttr, null); + break; + } + ancestor = ancestor.getParent(); + } + } colors = []; opacitySum = 0; hasOpacity = false; this.children.forEach(function (stop) { if (stop.element.tagName.toLowerCase() === 'stop') { - var color = new RGBColor(getAttribute(stop.element, context.styleSheets, 'stop-color')); + var colorAttr = getAttribute(stop.element, context.styleSheets, 'color'); + var color = parseColor(getAttribute(stop.element, context.styleSheets, 'stop-color') || '', colorAttr ? parseColor(colorAttr, null) : _this.contextColor); colors.push({ offset: Gradient.parseGradientOffset(stop.element.getAttribute('offset') || '0'), color: [color.r, color.g, color.b] @@ -1322,7 +1370,7 @@ var GradientFill = /** @class */ (function () { var gradientUnitsMatrix, bBox, gradientTransform; return __generator(this, function (_a) { switch (_a.label) { - case 0: return [4 /*yield*/, context.refsHandler.getRendered(this.key, function (node) { + case 0: return [4 /*yield*/, context.refsHandler.getRendered(this.key, null, function (node) { return node.apply(new Context(context.pdf, { refsHandler: context.refsHandler, textMeasure: context.textMeasure, @@ -1338,8 +1386,6 @@ var GradientFill = /** @class */ (function () { case 1: _a.sent(); if (!this.gradient.element.hasAttribute('gradientUnits') || - // eslint-disable-next-line @typescript-eslint/ban-ts-ignore - // @ts-ignore this.gradient.element.getAttribute('gradientUnits').toLowerCase() === 'objectboundingbox') { bBox = forNode.getBoundingBox(context); gradientUnitsMatrix = context.pdf.Matrix(bBox[2], 0, 0, bBox[3], bBox[0], bBox[1]); @@ -1424,7 +1470,7 @@ var PatternFill = /** @class */ (function () { var patternData, bBox, patternUnitsMatrix, fillBBox, x, y, width, height, patternContentUnitsMatrix, fillBBox, x, y, width, height, patternTransformMatrix, patternTransform, matrix; return __generator(this, function (_a) { switch (_a.label) { - case 0: return [4 /*yield*/, context.refsHandler.getRendered(this.key, function (node) { + case 0: return [4 /*yield*/, context.refsHandler.getRendered(this.key, null, function (node) { return node.apply(new Context(context.pdf, { refsHandler: context.refsHandler, textMeasure: context.textMeasure, @@ -1507,7 +1553,7 @@ function parseFill(fill, context) { } else { // plain color - var fillColor = parseColor(fill); + var fillColor = parseColor(fill, context.attributeState.color); if (fillColor.ok) { return new ColorFill(fillColor); } @@ -1522,6 +1568,18 @@ function parseFill(fill, context) { function parseAttributes(context, svgNode, node) { var domNode = node || svgNode.element; + // update color first so currentColor becomes available for this node + var color = getAttribute(domNode, context.styleSheets, 'color'); + if (color) { + var fillColor = parseColor(color, context.attributeState.color); + if (fillColor.ok) { + context.attributeState.color = fillColor; + } + else { + // invalid color passed, reset to black + context.attributeState.color = new RGBColor('rgb(0,0,0)'); + } + } var visibility = getAttribute(domNode, context.styleSheets, 'visibility'); if (visibility) { context.attributeState.visibility = visibility; @@ -1547,8 +1605,7 @@ function parseAttributes(context, svgNode, node) { // stroke mode var strokeWidth = getAttribute(domNode, context.styleSheets, 'stroke-width'); if (strokeWidth !== void 0 && strokeWidth !== '') { - strokeWidth = Math.abs(parseFloat(strokeWidth)); - context.attributeState.strokeWidth = strokeWidth; + context.attributeState.strokeWidth = Math.abs(parseFloat(strokeWidth)); } var stroke = getAttribute(domNode, context.styleSheets, 'stroke'); if (stroke) { @@ -1557,7 +1614,7 @@ function parseAttributes(context, svgNode, node) { } else { // gradients, patterns not supported for strokes ... - var strokeRGB = parseColor(stroke); + var strokeRGB = parseColor(stroke, context.attributeState.color); if (strokeRGB.ok) { context.attributeState.stroke = new ColorFill(strokeRGB); } @@ -1573,9 +1630,8 @@ function parseAttributes(context, svgNode, node) { } var dashArray = getAttribute(domNode, context.styleSheets, 'stroke-dasharray'); if (dashArray) { - dashArray = parseFloats(dashArray); var dashOffset = parseInt(getAttribute(domNode, context.styleSheets, 'stroke-dashoffset') || '0'); - context.attributeState.strokeDasharray = dashArray; + context.attributeState.strokeDasharray = parseFloats(dashArray); context.attributeState.strokeDashoffset = dashOffset; } var miterLimit = getAttribute(domNode, context.styleSheets, 'stroke-miterlimit'); @@ -2209,7 +2265,7 @@ var Use = /** @class */ (function (_super) { } Use.prototype.renderCore = function (context) { return __awaiter(this, void 0, void 0, function () { - var pf, url, id, refNode, refNodeOpensViewport, x, y, width, height, t, viewBox, refContext; + var pf, url, id, refNode, refNodeOpensViewport, x, y, width, height, t, viewBox, refContext, color; return __generator(this, function (_a) { switch (_a.label) { case 0: @@ -2251,7 +2307,10 @@ var Use = /** @class */ (function (_super) { viewport: refNodeOpensViewport ? new Viewport(width, height) : context.viewport, svg2pdfParameters: context.svg2pdfParameters }); - return [4 /*yield*/, context.refsHandler.getRendered(id, function (node) { return Use.renderReferencedNode(node, refContext); })]; + color = context.attributeState.color; + return [4 /*yield*/, context.refsHandler.getRendered(id, color, function (node) { + return Use.renderReferencedNode(node, id, color, refContext); + })]; case 1: _a.sent(); context.pdf.saveGraphicsState(); @@ -2262,14 +2321,14 @@ var Use = /** @class */ (function (_super) { context.pdf.rect(x, y, width, height); context.pdf.clip().discardPath(); } - context.pdf.doFormObject(id, t); + context.pdf.doFormObject(ReferencesHandler.generateKey(id, color), t); context.pdf.restoreGraphicsState(); return [2 /*return*/]; } }); }); }; - Use.renderReferencedNode = function (node, refContext) { + Use.renderReferencedNode = function (node, id, color, refContext) { return __awaiter(this, void 0, void 0, function () { var bBox; return __generator(this, function (_a) { @@ -2281,6 +2340,8 @@ var Use = /** @class */ (function (_super) { // So, make the bBox a lot larger than it needs to be and hope any thick strokes are // still within. bBox = [bBox[0] - 0.5 * bBox[2], bBox[1] - 0.5 * bBox[3], bBox[2] * 2, bBox[3] * 2]; + // set the color to use for the referenced node + refContext.attributeState.color = color; refContext.pdf.beginFormObject(bBox[0], bBox[1], bBox[2], bBox[3], refContext.pdf.unitMatrix); if (!(node instanceof Symbol$1)) return [3 /*break*/, 2]; return [4 /*yield*/, node.apply(refContext)]; @@ -2292,7 +2353,7 @@ var Use = /** @class */ (function (_super) { _a.sent(); _a.label = 4; case 4: - refContext.pdf.endFormObject(node.element.getAttribute('id')); + refContext.pdf.endFormObject(ReferencesHandler.generateKey(id, color)); return [2 /*return*/]; } }); @@ -2464,56 +2525,74 @@ var TextChunk = /** @class */ (function () { this.textNode = parent; this.texts = []; this.textNodes = []; + this.contexts = []; this.textAnchor = textAnchor; this.originX = originX; this.originY = originY; + this.textMeasures = []; } - TextChunk.prototype.add = function (tSpan, text) { + TextChunk.prototype.setX = function (originX) { + this.originX = originX; + }; + TextChunk.prototype.setY = function (originY) { + this.originY = originY; + }; + TextChunk.prototype.add = function (tSpan, text, context) { this.texts.push(text); this.textNodes.push(tSpan); + this.contexts.push(context); + }; + TextChunk.prototype.rightTrimText = function () { + for (var r = this.texts.length - 1; r >= 0; r--) { + if (this.contexts[r].attributeState.xmlSpace === 'default') { + this.texts[r] = trimRight(this.texts[r]); + } + // If find a letter, stop right-trimming + if (this.texts[r].match(/[^\s]/)) { + return false; + } + } + return true; + }; + TextChunk.prototype.measureText = function (context) { + for (var i = 0; i < this.texts.length; i++) { + this.textMeasures.push({ + width: context.textMeasure.measureTextWidth(this.texts[i], this.contexts[i].attributeState), + length: this.texts[i].length + }); + } }; - TextChunk.prototype.put = function (context) { - var i, textNode; - var strokeRGB; - var xs = [], ys = [], textNodeContexts = []; + TextChunk.prototype.put = function (context, charSpace) { + var i, textNode, textNodeContext, textMeasure; + var alreadySeen = []; + var xs = [], ys = []; var currentTextX = this.originX, currentTextY = this.originY; var minX = currentTextX, maxX = currentTextX; for (i = 0; i < this.textNodes.length; i++) { textNode = this.textNodes[i]; + textNodeContext = this.contexts[i]; + textMeasure = this.textMeasures[i] || { + width: context.textMeasure.measureTextWidth(this.texts[i], this.contexts[i].attributeState), + length: this.texts[i].length + }; var x = currentTextX; var y = currentTextY; - var textNodeContext = void 0; - if (textNode.nodeName === '#text') { - textNodeContext = context; - } - else { - textNodeContext = context.clone(); - parseAttributes(textNodeContext, this.textNode, textNode); - var tSpanStrokeColor = getAttribute(textNode, context.styleSheets, 'stroke'); - if (tSpanStrokeColor) { - strokeRGB = new RGBColor(tSpanStrokeColor); - if (strokeRGB.ok) { - textNodeContext.attributeState.stroke = new ColorFill(strokeRGB); + if (textNode.nodeName !== '#text') { + if (!alreadySeen.includes(textNode)) { + alreadySeen.push(textNode); + var tSpanDx = textNode.getAttribute('dx'); + if (tSpanDx !== null) { + x += toPixels(tSpanDx, textNodeContext.attributeState.fontSize); + } + var tSpanDy = textNode.getAttribute('dy'); + if (tSpanDy !== null) { + y += toPixels(tSpanDy, textNodeContext.attributeState.fontSize); } - } - var strokeWidth = getAttribute(textNode, context.styleSheets, 'stroke-width'); - if (strokeWidth !== void 0) { - textNodeContext.attributeState.strokeWidth = parseFloat(strokeWidth); - } - var tSpanDx = textNode.getAttribute('dx'); - if (tSpanDx !== null) { - x += toPixels(tSpanDx, textNodeContext.attributeState.fontSize); - } - var tSpanDy = textNode.getAttribute('dy'); - if (tSpanDy !== null) { - y += toPixels(tSpanDy, textNodeContext.attributeState.fontSize); } } - textNodeContexts[i] = textNodeContext; xs[i] = x; ys[i] = y; - currentTextX = - x + context.textMeasure.measureTextWidth(this.texts[i], textNodeContext.attributeState); + currentTextX = x + textMeasure.width + textMeasure.length * charSpace; currentTextY = y; minX = Math.min(minX, x); maxX = Math.max(maxX, currentTextX); @@ -2532,21 +2611,21 @@ var TextChunk = /** @class */ (function () { } for (i = 0; i < this.textNodes.length; i++) { textNode = this.textNodes[i]; + textNodeContext = this.contexts[i]; if (textNode.nodeName !== '#text') { - var tSpanVisibility = getAttribute(textNode, context.styleSheets, 'visibility') || - context.attributeState.visibility; - if (tSpanVisibility === 'hidden') { + if (textNodeContext.attributeState.visibility === 'hidden') { continue; } } context.pdf.saveGraphicsState(); - applyAttributes(textNodeContexts[i], context, textNode); - var alignmentBaseline = textNodeContexts[i].attributeState.alignmentBaseline; - var textRenderingMode = getTextRenderingMode(textNodeContexts[i].attributeState); + applyAttributes(textNodeContext, context, textNode); + var alignmentBaseline = textNodeContext.attributeState.alignmentBaseline; + var textRenderingMode = getTextRenderingMode(textNodeContext.attributeState); context.pdf.text(this.texts[i], xs[i] - textOffset, ys[i], { baseline: mapAlignmentBaseline(alignmentBaseline), angle: context.transform, - renderingMode: textRenderingMode === 'fill' ? void 0 : textRenderingMode + renderingMode: textRenderingMode === 'fill' ? void 0 : textRenderingMode, + charSpace: charSpace === 0 ? void 0 : charSpace }); context.pdf.restoreGraphicsState(); } @@ -2560,92 +2639,141 @@ var TextNode = /** @class */ (function (_super) { function TextNode() { return _super !== null && _super.apply(this, arguments) || this; } + TextNode.prototype.processTSpans = function (textNode, node, context, textChunks, currentTextSegment, trimInfo) { + var pdfFontSize = context.pdf.getFontSize(); + var xmlSpace = context.attributeState.xmlSpace; + var firstText = true, initialSpace = false; + for (var i = 0; i < node.childNodes.length; i++) { + var childNode = node.childNodes[i]; + if (!childNode.textContent) { + continue; + } + var textContent = childNode.textContent; + if (childNode.nodeName === '#text') { + var trimmedText = removeNewlines(textContent); + trimmedText = replaceTabsBySpace(trimmedText); + if (xmlSpace === 'default') { + trimmedText = consolidateSpaces(trimmedText); + // If first text in tspan and starts with a space + if (firstText && trimmedText.match(/^\s/)) { + initialSpace = true; + } + // No longer the first text if we've found a letter + if (trimmedText.match(/[^\s]/)) { + firstText = false; + } + // Consolidate spaces across different children + if (trimInfo.prevText.match(/\s$/)) { + trimmedText = trimLeft(trimmedText); + } + } + var transformedText = transformText(node, trimmedText, context); + currentTextSegment.add(node, transformedText, context); + trimInfo.prevText = textContent; + trimInfo.prevContext = context; + } + else if (nodeIs(childNode, 'title')) ; + else if (nodeIs(childNode, 'tspan')) { + var tSpan = childNode; + var tSpanAbsX = tSpan.getAttribute('x'); + if (tSpanAbsX !== null) { + var x = toPixels(tSpanAbsX, pdfFontSize); + currentTextSegment = new TextChunk(this, getAttribute(tSpan, context.styleSheets, 'text-anchor') || + context.attributeState.textAnchor, x, 0); + textChunks.push({ type: 'y', chunk: currentTextSegment }); + } + var tSpanAbsY = tSpan.getAttribute('y'); + if (tSpanAbsY !== null) { + var y = toPixels(tSpanAbsY, pdfFontSize); + currentTextSegment = new TextChunk(this, getAttribute(tSpan, context.styleSheets, 'text-anchor') || + context.attributeState.textAnchor, 0, y); + textChunks.push({ type: 'x', chunk: currentTextSegment }); + } + var childContext = context.clone(); + parseAttributes(childContext, textNode, tSpan); + this.processTSpans(textNode, tSpan, childContext, textChunks, currentTextSegment, trimInfo); + } + } + return initialSpace; + }; TextNode.prototype.renderCore = function (context) { return __awaiter(this, void 0, void 0, function () { - var xOffset, pdfFontSize, textX, textY, dx, dy, visibility, tSpanCount, trimmedText, transformedText, alignmentBaseline, textRenderingMode, currentTextSegment, i, textNode, xmlSpace, textContent, tSpan, j, lastPositions, tSpanAbsX, x, tSpanAbsY, y, tSpanXmlSpace, trimmedText, transformedText; + var xOffset, charSpace, lengthAdjustment, pdfFontSize, textX, textY, dx, dy, textLength, visibility, tSpanCount, textContent, trimmedText, transformedText, defaultSize, alignmentBaseline, textRenderingMode, textChunks, currentTextSegment, initialSpace, trimRight, r, totalDefaultWidth_1, totalLength_1; return __generator(this, function (_a) { context.pdf.saveGraphicsState(); xOffset = 0; + charSpace = 0; + lengthAdjustment = 1; pdfFontSize = context.pdf.getFontSize(); textX = toPixels(this.element.getAttribute('x'), pdfFontSize); textY = toPixels(this.element.getAttribute('y'), pdfFontSize); dx = toPixels(this.element.getAttribute('dx'), pdfFontSize); dy = toPixels(this.element.getAttribute('dy'), pdfFontSize); + textLength = parseFloat(this.element.getAttribute('textLength') || '0'); visibility = context.attributeState.visibility; tSpanCount = this.element.childElementCount; if (tSpanCount === 0) { - trimmedText = transformXmlSpace(this.element.textContent || '', context.attributeState); + textContent = this.element.textContent || ''; + trimmedText = transformXmlSpace(textContent, context.attributeState); transformedText = transformText(this.element, trimmedText, context); xOffset = context.textMeasure.getTextOffset(transformedText, context.attributeState); + if (textLength > 0) { + defaultSize = context.textMeasure.measureTextWidth(transformedText, context.attributeState); + if (context.attributeState.xmlSpace === 'default' && textContent.match(/^\s/)) { + lengthAdjustment = 0; + } + charSpace = (textLength - defaultSize) / (transformedText.length - lengthAdjustment) || 0; + } if (visibility === 'visible') { alignmentBaseline = context.attributeState.alignmentBaseline; textRenderingMode = getTextRenderingMode(context.attributeState); context.pdf.text(transformedText, textX + dx - xOffset, textY + dy, { baseline: mapAlignmentBaseline(alignmentBaseline), angle: context.transform, - renderingMode: textRenderingMode === 'fill' ? void 0 : textRenderingMode + renderingMode: textRenderingMode === 'fill' ? void 0 : textRenderingMode, + charSpace: charSpace === 0 ? void 0 : charSpace }); } } else { + textChunks = []; currentTextSegment = new TextChunk(this, context.attributeState.textAnchor, textX + dx, textY + dy); - for (i = 0; i < this.element.childNodes.length; i++) { - textNode = this.element.childNodes[i]; - if (!textNode.textContent) { - continue; + textChunks.push({ type: '', chunk: currentTextSegment }); + initialSpace = this.processTSpans(this, this.element, context, textChunks, currentTextSegment, + // Set prevText to ' ' so any spaces on left of are trimmed + { prevText: ' ', prevContext: context }); + lengthAdjustment = initialSpace ? 0 : 1; + trimRight = true; + for (r = textChunks.length - 1; r >= 0; r--) { + if (trimRight) { + trimRight = textChunks[r].chunk.rightTrimText(); } - xmlSpace = context.attributeState.xmlSpace; - textContent = textNode.textContent; - if (textNode.nodeName === '#text') ; - else if (nodeIs(textNode, 'title')) { - continue; - } - else if (nodeIs(textNode, 'tspan')) { - tSpan = textNode; - if (tSpan.childElementCount > 0) { - // filter elements... - textContent = ''; - for (j = 0; j < tSpan.childNodes.length; j++) { - if (tSpan.childNodes[j].nodeName === '#text') { - textContent += tSpan.childNodes[j].textContent; - } - } - } - lastPositions = void 0; - tSpanAbsX = tSpan.getAttribute('x'); - if (tSpanAbsX !== null) { - x = toPixels(tSpanAbsX, pdfFontSize); - lastPositions = currentTextSegment.put(context); - currentTextSegment = new TextChunk(this, getAttribute(tSpan, context.styleSheets, 'text-anchor') || - context.attributeState.textAnchor, x, lastPositions[1]); - } - tSpanAbsY = tSpan.getAttribute('y'); - if (tSpanAbsY !== null) { - y = toPixels(tSpanAbsY, pdfFontSize); - lastPositions = currentTextSegment.put(context); - currentTextSegment = new TextChunk(this, getAttribute(tSpan, context.styleSheets, 'text-anchor') || - context.attributeState.textAnchor, lastPositions[0], y); - } - tSpanXmlSpace = tSpan.getAttribute('xml:space'); - if (tSpanXmlSpace) { - xmlSpace = tSpanXmlSpace; - } + } + if (textLength > 0) { + totalDefaultWidth_1 = 0; + totalLength_1 = 0; + textChunks.forEach(function (_a) { + var chunk = _a.chunk; + chunk.measureText(context); + chunk.textMeasures.forEach(function (_a) { + var width = _a.width, length = _a.length; + totalDefaultWidth_1 += width; + totalLength_1 += length; + }); + }); + charSpace = (textLength - totalDefaultWidth_1) / (totalLength_1 - lengthAdjustment); + } + // Put the textchunks + textChunks.reduce(function (lastPositions, _a) { + var type = _a.type, chunk = _a.chunk; + if (type === 'x') { + chunk.setX(lastPositions[0]); } - trimmedText = removeNewlines(textContent); - trimmedText = replaceTabsBySpace(trimmedText); - if (xmlSpace === 'default') { - if (i === 0) { - trimmedText = trimLeft(trimmedText); - } - if (i === tSpanCount - 1) { - trimmedText = trimRight(trimmedText); - } - trimmedText = consolidateSpaces(trimmedText); + else if (type === 'y') { + chunk.setY(lastPositions[1]); } - transformedText = transformText(this.element, trimmedText, context); - currentTextSegment.add(textNode, transformedText); - } - currentTextSegment.put(context); + return chunk.put(context, charSpace); + }, [0, 0]); } context.pdf.restoreGraphicsState(); return [2 /*return*/]; @@ -2683,7 +2811,7 @@ var PathNode = /** @class */ (function (_super) { var path = new Path(); var prevX; var prevY; - svgPath.iterate(function (seg, i) { + svgPath.iterate(function (seg) { var type = seg[0]; switch (type) { case 'M': @@ -2894,11 +3022,11 @@ var Traverse = /** @class */ (function (_super) { _this.closed = closed; return _this; } + // eslint-disable-next-line @typescript-eslint/no-unused-vars Traverse.prototype.getPath = function (context) { if (!this.element.hasAttribute('points') || this.element.getAttribute('points') === '') { return null; } - // eslint-disable-next-line @typescript-eslint/ban-ts-ignore // @ts-ignore var points = Traverse.parsePointsString(this.element.getAttribute('points')); var path = new Path(); @@ -2946,9 +3074,11 @@ var VoidNode = /** @class */ (function (_super) { function VoidNode() { return _super !== null && _super.apply(this, arguments) || this; } + // eslint-disable-next-line @typescript-eslint/no-unused-vars VoidNode.prototype.render = function (parentContext) { return Promise.resolve(); }; + // eslint-disable-next-line @typescript-eslint/no-unused-vars VoidNode.prototype.getBoundingBoxCore = function (context) { return [0, 0, 0, 0]; }; @@ -2999,6 +3129,7 @@ var MarkerNode = /** @class */ (function (_super) { }); }); }; + // eslint-disable-next-line @typescript-eslint/no-unused-vars MarkerNode.prototype.getBoundingBoxCore = function (context) { var viewBox = this.element.getAttribute('viewBox'); var vb; @@ -3417,6 +3548,7 @@ function parse(node, idMap) { var id = cssEsc(svgnode.element.id, { isIdentifier: true }); idMap[id] = idMap[id] || svgnode; } + svgnode.children.forEach(function (c) { return c.setParent(svgnode); }); return svgnode; } diff --git a/dist/svg2pdf.es.js.map b/dist/svg2pdf.es.js.map index 02b80290..57154037 100644 --- a/dist/svg2pdf.es.js.map +++ b/dist/svg2pdf.es.js.map @@ -1 +1 @@ -{"version":3,"file":"svg2pdf.es.js","sources":["../node_modules/tslib/tslib.es6.js","../src/utils/rgbcolor.ts","../src/fill/ColorFill.ts","../src/context/attributestate.ts","../src/utils/constants.ts","../src/context/textmeasure.ts","../src/context/context.ts","../src/context/referenceshandler.ts","../src/utils/geometry.ts","../src/utils/path.ts","../src/utils/node.ts","../src/markerlist.ts","../src/utils/misc.ts","../src/utils/parsing.ts","../src/utils/fonts.ts","../src/utils/bbox.ts","../src/utils/transform.ts","../src/nodes/svgnode.ts","../src/nodes/nonrenderednode.ts","../src/nodes/gradient.ts","../src/nodes/lineargradient.ts","../src/nodes/radialgradient.ts","../src/fill/GradientFill.ts","../src/nodes/pattern.ts","../src/fill/PatternFill.ts","../src/fill/parseFill.ts","../src/applyparseattributes.ts","../src/utils/applyclippath.ts","../src/nodes/renderednode.ts","../src/nodes/graphicsnode.ts","../src/nodes/geometrynode.ts","../src/nodes/line.ts","../src/nodes/symbol.ts","../src/context/viewport.ts","../src/nodes/use.ts","../src/nodes/rect.ts","../src/nodes/ellipsebase.ts","../src/nodes/ellipse.ts","../src/utils/text.ts","../src/textchunk.ts","../src/nodes/text.ts","../src/nodes/path.ts","../src/nodes/image.ts","../src/nodes/traverse.ts","../src/nodes/polygon.ts","../src/nodes/void.ts","../src/nodes/marker.ts","../src/nodes/circle.ts","../src/nodes/polyline.ts","../src/nodes/containernode.ts","../src/nodes/svg.ts","../src/nodes/group.ts","../src/nodes/clippath.ts","../src/parse.ts","../src/context/stylesheets.ts","../src/svg2pdf.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["Symbol","cssesc","compare","compareSpecificity"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"svg2pdf.es.js","sources":["../node_modules/tslib/tslib.es6.js","../src/utils/rgbcolor.ts","../src/fill/ColorFill.ts","../src/context/attributestate.ts","../src/utils/constants.ts","../src/context/textmeasure.ts","../src/context/context.ts","../src/context/referenceshandler.ts","../src/utils/geometry.ts","../src/utils/path.ts","../src/utils/node.ts","../src/markerlist.ts","../src/utils/misc.ts","../src/utils/parsing.ts","../src/utils/fonts.ts","../src/utils/bbox.ts","../src/utils/transform.ts","../src/nodes/svgnode.ts","../src/nodes/nonrenderednode.ts","../src/nodes/gradient.ts","../src/nodes/lineargradient.ts","../src/nodes/radialgradient.ts","../src/fill/GradientFill.ts","../src/nodes/pattern.ts","../src/fill/PatternFill.ts","../src/fill/parseFill.ts","../src/applyparseattributes.ts","../src/utils/applyclippath.ts","../src/nodes/renderednode.ts","../src/nodes/graphicsnode.ts","../src/nodes/geometrynode.ts","../src/nodes/line.ts","../src/nodes/symbol.ts","../src/context/viewport.ts","../src/nodes/use.ts","../src/nodes/rect.ts","../src/nodes/ellipsebase.ts","../src/nodes/ellipse.ts","../src/utils/text.ts","../src/textchunk.ts","../src/nodes/text.ts","../src/nodes/path.ts","../src/nodes/image.ts","../src/nodes/traverse.ts","../src/nodes/polygon.ts","../src/nodes/void.ts","../src/nodes/marker.ts","../src/nodes/circle.ts","../src/nodes/polyline.ts","../src/nodes/containernode.ts","../src/nodes/svg.ts","../src/nodes/group.ts","../src/nodes/clippath.ts","../src/parse.ts","../src/context/stylesheets.ts","../src/svg2pdf.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["Symbol","cssesc","compare","compareSpecificity"],"mappings":"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"} \ No newline at end of file diff --git a/dist/svg2pdf.es.min.js b/dist/svg2pdf.es.min.js index 4fe1cbc6..6e9eec61 100644 --- a/dist/svg2pdf.es.min.js +++ b/dist/svg2pdf.es.min.js @@ -38,5 +38,5 @@ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. -***************************************************************************** */var l=function(t,e){return(l=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)};function u(t,e){function r(){this.constructor=t}l(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}var h=function(){return(h=Object.assign||function(t){for(var e,r=1,i=arguments.length;r<i;r++)for(var n in e=arguments[r])Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t}).apply(this,arguments)};function f(t,e,r,i){return new(r||(r=Promise))((function(n,a){function s(t){try{l(i.next(t))}catch(t){a(t)}}function o(t){try{l(i.throw(t))}catch(t){a(t)}}function l(t){var e;t.done?n(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(s,o)}l((i=i.apply(t,e||[])).next())}))}function c(t,e){var r,i,n,a,s={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return a={next:o(0),throw:o(1),return:o(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function o(a){return function(o){return function(a){if(r)throw new TypeError("Generator is already executing.");for(;s;)try{if(r=1,i&&(n=2&a[0]?i.return:a[0]?i.throw||((n=i.return)&&n.call(i),0):i.next)&&!(n=n.call(i,a[1])).done)return n;switch(i=0,n&&(a=[2&a[0],n.value]),a[0]){case 0:case 1:n=a;break;case 4:return s.label++,{value:a[1],done:!1};case 5:s.label++,i=a[1],a=[0];continue;case 7:a=s.ops.pop(),s.trys.pop();continue;default:if(!(n=s.trys,(n=n.length>0&&n[n.length-1])||6!==a[0]&&2!==a[0])){s=0;continue}if(3===a[0]&&(!n||a[1]>n[0]&&a[1]<n[3])){s.label=a[1];break}if(6===a[0]&&s.label<n[1]){s.label=n[1],n=a;break}if(n&&s.label<n[2]){s.label=n[2],s.ops.push(a);break}n[2]&&s.ops.pop(),s.trys.pop();continue}a=e.call(t,s)}catch(t){a=[6,t],i=0}finally{r=n=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,o])}}}var p=function(){function t(t){if(this.a=void 0,this.r=0,this.g=0,this.b=0,this.simpleColors={},this.colorDefs=[],this.ok=!1,t){for(var e in"#"==t.charAt(0)&&(t=t.substr(1,6)),t=(t=t.replace(/ /g,"")).toLowerCase(),this.simpleColors={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"00ffff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000000",blanchedalmond:"ffebcd",blue:"0000ff",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"00ffff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgrey:"a9a9a9",darkgreen:"006400",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",feldspar:"d19275",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"ff00ff",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",grey:"808080",green:"008000",greenyellow:"adff2f",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgrey:"d3d3d3",lightgreen:"90ee90",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslateblue:"8470ff",lightslategray:"778899",lightslategrey:"778899",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"00ff00",limegreen:"32cd32",linen:"faf0e6",magenta:"ff00ff",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370d8",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"d87093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",red:"ff0000",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",violetred:"d02090",wheat:"f5deb3",white:"ffffff",whitesmoke:"f5f5f5",yellow:"ffff00",yellowgreen:"9acd32"},this.simpleColors)t==e&&(t=this.simpleColors[e]);this.colorDefs=[{re:/^rgb\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3})\)$/,example:["rgb(123, 234, 45)","rgb(255,234,245)"],process:function(t){return[parseInt(t[1]),parseInt(t[2]),parseInt(t[3])]}},{re:/^(\w{2})(\w{2})(\w{2})$/,example:["#00ff00","336699"],process:function(t){return[parseInt(t[1],16),parseInt(t[2],16),parseInt(t[3],16)]}},{re:/^(\w{1})(\w{1})(\w{1})$/,example:["#fb0","f0f"],process:function(t){return[parseInt(t[1]+t[1],16),parseInt(t[2]+t[2],16),parseInt(t[3]+t[3],16)]}}];for(var r=0;r<this.colorDefs.length;r++){var i=this.colorDefs[r].re,n=this.colorDefs[r].process,a=i.exec(t);if(a){var s=n(a);this.r=s[0],this.g=s[1],this.b=s[2],this.ok=!0}}this.r=this.r<0||isNaN(this.r)?0:this.r>255?255:this.r,this.g=this.g<0||isNaN(this.g)?0:this.g>255?255:this.g,this.b=this.b<0||isNaN(this.b)?0:this.b>255?255:this.b}}return t.prototype.toRGB=function(){return"rgb("+this.r+", "+this.g+", "+this.b+")"},t.prototype.toHex=function(){var t=this.r.toString(16),e=this.g.toString(16),r=this.b.toString(16);return 1==t.length&&(t="0"+t),1==e.length&&(e="0"+e),1==r.length&&(r="0"+r),"#"+t+e+r},t.prototype.getHelpXML=function(){for(var e=[],r=0;r<this.colorDefs.length;r++)for(var i=this.colorDefs[r].example,n=0;n<i.length;n++)e[e.length]=i[n];for(var a in this.simpleColors)e[e.length]=a;var s=document.createElement("ul");s.setAttribute("id","rgbcolor-examples");for(r=0;r<e.length;r++)try{var o=document.createElement("li"),l=new t(e[r]),u=document.createElement("div");u.style.cssText="margin: 3px; border: 1px solid black; background:"+l.toHex()+"; color:"+l.toHex(),u.appendChild(document.createTextNode("test"));var h=document.createTextNode(" "+e[r]+" -> "+l.toRGB()+" -> "+l.toHex());o.appendChild(u),o.appendChild(h),s.appendChild(o)}catch(t){}return s},t}(),d=function(){function t(t){this.color=t}return t.prototype.getFillData=function(t,e){return f(this,void 0,void 0,(function(){return c(this,(function(t){return[2,void 0]}))}))},t}(),m=function(){function t(){this.xmlSpace="",this.fill=null,this.fillOpacity=1,this.fontFamily="",this.fontSize=16,this.fontStyle="",this.fontWeight="",this.opacity=1,this.stroke=null,this.strokeDasharray=null,this.strokeDashoffset=0,this.strokeLinecap="",this.strokeLinejoin="",this.strokeMiterlimit=4,this.strokeOpacity=1,this.strokeWidth=1,this.alignmentBaseline="",this.textAnchor="",this.visibility=""}return t.prototype.clone=function(){var e=new t;return e.xmlSpace=this.xmlSpace,e.fill=this.fill,e.fillOpacity=this.fillOpacity,e.fontFamily=this.fontFamily,e.fontSize=this.fontSize,e.fontStyle=this.fontStyle,e.fontWeight=this.fontWeight,e.opacity=this.opacity,e.stroke=this.stroke,e.strokeDasharray=this.strokeDasharray,e.strokeDashoffset=this.strokeDashoffset,e.strokeLinecap=this.strokeLinecap,e.strokeLinejoin=this.strokeLinejoin,e.strokeMiterlimit=this.strokeMiterlimit,e.strokeOpacity=this.strokeOpacity,e.strokeWidth=this.strokeWidth,e.textAnchor=this.textAnchor,e.alignmentBaseline=this.alignmentBaseline,e.visibility=this.visibility,e},t.default=function(){var e=new t;return e.xmlSpace="default",e.fill=new d(new p("rgb(0, 0, 0)")),e.fillOpacity=1,e.fontFamily="times",e.fontSize=16,e.fontStyle="normal",e.fontWeight="normal",e.opacity=1,e.stroke=null,e.strokeDasharray=null,e.strokeDashoffset=0,e.strokeLinecap="butt",e.strokeLinejoin="miter",e.strokeMiterlimit=4,e.strokeOpacity=1,e.strokeWidth=1,e.alignmentBaseline="baseline",e.textAnchor="start",e.visibility="visible",e},t}(),g=/url\(["']?#([^"']+)["']?\)/,y={bottom:"bottom","text-bottom":"bottom",top:"top","text-top":"top",hanging:"hanging",middle:"middle",central:"middle",center:"middle",mathematical:"middle",ideographic:"ideographic",alphabetic:"alphabetic",baseline:"alphabetic"},b=function(){function t(){this.measureMethods={}}return t.prototype.getTextOffset=function(t,e){var r=e.textAnchor;if("start"===r)return 0;var i=this.measureTextWidth(t,e),n=0;switch(r){case"end":n=i;break;case"middle":n=i/2}return n},t.prototype.measureTextWidth=function(t,e){if(0===t.length)return 0;var r=e.fontFamily;return this.getMeasureFunction(r).call(this,t,e.fontFamily,e.fontSize+"px",e.fontStyle,e.fontWeight)},t.prototype.getMeasurementTextNode=function(){if(!this.textMeasuringTextElement){this.textMeasuringTextElement=document.createElementNS("http://www.w3.org/2000/svg","text");var t=document.createElementNS("http://www.w3.org/2000/svg","svg");t.appendChild(this.textMeasuringTextElement),t.style.setProperty("position","absolute"),t.style.setProperty("visibility","hidden"),document.body.appendChild(t)}return this.textMeasuringTextElement},t.prototype.canvasTextMeasure=function(t,e,r,i,n){var a=document.createElement("canvas").getContext("2d");return null!=a?(a.font=[i,n,r,e].join(" "),a.measureText(t).width):0},t.prototype.svgTextMeasure=function(t,e,r,i,n,a){void 0===a&&(a=this.getMeasurementTextNode());var s=a;return s.setAttribute("font-family",e),s.setAttribute("font-size",r),s.setAttribute("font-style",i),s.setAttribute("font-weight",n),s.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),s.textContent=t,s.getBBox().width},t.prototype.getMeasureFunction=function(e){var r=this.measureMethods[e];if(!r){var i=this.canvasTextMeasure(t.testString,e,"16px","normal","normal"),n=this.svgTextMeasure(t.testString,e,"16px","normal","normal");r=Math.abs(i-n)<t.epsilon?this.canvasTextMeasure:this.svgTextMeasure,this.measureMethods[e]=r}return r},t.prototype.cleanupTextMeasuring=function(){if(this.textMeasuringTextElement){var t=this.textMeasuringTextElement.parentNode;t&&document.body.removeChild(t),this.textMeasuringTextElement=void 0}},t.testString="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789!\"$%&/()=?'\\+*-_.:,;^}][{#~|<>",t.epsilon=.1,t}(),v=function(){function t(t,e){var r,i,n,a,s,o;this.pdf=t,this.svg2pdfParameters=e.svg2pdfParameters,this.attributeState=e.attributeState?e.attributeState.clone():m.default(),this.viewport=e.viewport,this.refsHandler=null!==(r=e.refsHandler)&&void 0!==r?r:null,this.styleSheets=null!==(i=e.styleSheets)&&void 0!==i?i:null,this.textMeasure=null!==(n=e.textMeasure)&&void 0!==n?n:new b,this.transform=null!==(a=e.transform)&&void 0!==a?a:this.pdf.unitMatrix,this.withinClipPath=null!==(s=e.withinClipPath)&&void 0!==s&&s,this.withinUse=null!==(o=e.withinUse)&&void 0!==o&&o}return t.prototype.clone=function(e){var r,i,n,a,s,o,l,u;return void 0===e&&(e={}),new t(this.pdf,{svg2pdfParameters:null!==(r=e.svg2pdfParameters)&&void 0!==r?r:this.svg2pdfParameters,attributeState:e.attributeState?e.attributeState.clone():this.attributeState.clone(),viewport:null!==(i=e.viewport)&&void 0!==i?i:this.viewport,refsHandler:null!==(n=e.refsHandler)&&void 0!==n?n:this.refsHandler,styleSheets:null!==(a=e.styleSheets)&&void 0!==a?a:this.styleSheets,textMeasure:null!==(s=e.textMeasure)&&void 0!==s?s:this.textMeasure,transform:null!==(o=e.transform)&&void 0!==o?o:this.transform,withinClipPath:null!==(l=e.withinClipPath)&&void 0!==l?l:this.withinClipPath,withinUse:null!==(u=e.withinUse)&&void 0!==u?u:this.withinUse})},t}(),x=function(){function e(t){this.renderedElements={},this.idMap=t}return e.prototype.getRendered=function(t,e){return f(this,void 0,void 0,(function(){var r;return c(this,(function(i){switch(i.label){case 0:return this.renderedElements.hasOwnProperty(t)?[2,this.renderedElements[t]]:(r=this.get(t),this.renderedElements[t]=r,[4,e(r)]);case 1:return i.sent(),[2,r]}}))}))},e.prototype.get=function(e){return this.idMap[t(e,{isIdentifier:!0})]},e}();function S(t,e){return Math.atan2(e[1]-t[1],e[0]-t[0])}function w(t,e){return[2/3*(e[0]-t[0])+t[0],2/3*(e[1]-t[1])+t[1]]}function k(t){var e=Math.sqrt(t[0]*t[0]+t[1]*t[1]);return[t[0]/e,t[1]/e]}function M(t,e){return k([e[0]-t[0],e[1]-t[1]])}function T(t,e){return[t[0]+e[0],t[1]+e[1]]}function C(t,e){var r=t[0],i=t[1];return[e.a*r+e.c*i+e.e,e.b*r+e.d*i+e.f]}var F=function(){function t(){this.segments=[]}return t.prototype.moveTo=function(t,e){return this.segments.push(new A(t,e)),this},t.prototype.lineTo=function(t,e){return this.segments.push(new P(t,e)),this},t.prototype.curveTo=function(t,e,r,i,n,a){return this.segments.push(new N(t,e,r,i,n,a)),this},t.prototype.close=function(){return this.segments.push(new B),this},t.prototype.transform=function(t){this.segments.forEach((function(e){if(e instanceof A||e instanceof P||e instanceof N){var r=C([e.x,e.y],t);e.x=r[0],e.y=r[1]}if(e instanceof N){var i=C([e.x1,e.y1],t),n=C([e.x2,e.y2],t);e.x1=i[0],e.y1=i[1],e.x2=n[0],e.y2=n[1]}}))},t.prototype.draw=function(t){var e=t.pdf;this.segments.forEach((function(t){t instanceof A?e.moveTo(t.x,t.y):t instanceof P?e.lineTo(t.x,t.y):t instanceof N?e.curveTo(t.x1,t.y1,t.x2,t.y2,t.x,t.y):e.close()}))},t}(),A=function(t,e){this.x=t,this.y=e},P=function(t,e){this.x=t,this.y=e},N=function(t,e,r,i,n,a){this.x1=t,this.y1=e,this.x2=r,this.y2=i,this.x=n,this.y=a},B=function(){};function O(t,e){return e.split(",").indexOf((t.nodeName||t.tagName).toLowerCase())>=0}function E(t,e,r,i){void 0===i&&(i=r);var n=t.style.getPropertyValue(i);return n||(e.getPropertyValue(t,i)?e.getPropertyValue(t,i):t.hasAttribute(r)&&t.getAttribute(r)||void 0)}function I(t,e,r){if("none"===E(t.element,r.styleSheets,"display"))return!1;var i=e,n=E(t.element,r.styleSheets,"visibility");return n&&(i="hidden"!==n),i}function L(t,e,r){var i=I(t,e,r);return 0!==t.element.childNodes.length&&(t.children.forEach((function(t){t.isVisible(i,r)&&(i=!0)})),i)}var H=function(){function t(){this.markers=[]}return t.prototype.addMarker=function(t){this.markers.push(t)},t.prototype.draw=function(t){return f(this,void 0,void 0,(function(){var e,r,i,n,a,s,o;return c(this,(function(l){switch(l.label){case 0:e=0,l.label=1;case 1:return e<this.markers.length?(r=this.markers[e],i=void 0,n=r.angle,a=r.anchor,s=Math.cos(n),o=Math.sin(n),i=t.pdf.Matrix(s,o,-o,s,a[0],a[1]),i=t.pdf.matrixMult(t.pdf.Matrix(t.attributeState.strokeWidth,0,0,t.attributeState.strokeWidth,0,0),i),i=t.pdf.matrixMult(i,t.transform),t.pdf.saveGraphicsState(),t.pdf.setLineWidth(1),[4,t.refsHandler.getRendered(r.id,(function(e){return e.apply(t)}))]):[3,4];case 2:l.sent(),t.pdf.doFormObject(r.id,i),t.pdf.restoreGraphicsState(),l.label=3;case 3:return e++,[3,1];case 4:return[2]}}))}))},t}(),V=function(t,e,r){this.id=t,this.anchor=e,this.angle=r};function D(t,e){var r;return(r=t&&t.toString().match(/^([\-0-9.]+)em$/))?parseFloat(r[1])*e:(r=t&&t.toString().match(/^([\-0-9.]+)(px|)$/))?parseFloat(r[1]):0}function R(t){return y[t]||"alphabetic"}function W(t){for(var e,r=[],i=/[+-]?(?:(?:\d+\.?\d*)|(?:\d*\.?\d+))(?:[eE][+-]?\d+)?/g;e=i.exec(t);)r.push(parseFloat(e[0]));return r}function j(t){if("transparent"===t){var e=new p("rgb(0,0,0)");return e.a=0,e}var r=/\s*rgba\(((?:[^,\)]*,){3}[^,\)]*)\)\s*/.exec(t);if(r){var i=W(r[1]),n=new p("rgb("+i.slice(0,3).join(",")+")");return n.a=i[3],n}return new p(t)}var G={"sans-serif":"helvetica",verdana:"helvetica",arial:"helvetica",fixed:"courier",monospace:"courier",terminal:"courier",serif:"times",cursive:"times",fantasy:"times"};function U(t,e){if("none"===E(e.element,t.styleSheets,"display"))return[0,0,0,0];var r=[0,0,0,0];return e.children.forEach((function(e){var i=e.getBoundingBox(t);r=[Math.min(r[0],i[0]),Math.min(r[1],i[1]),Math.max(r[0]+r[2],i[0]+i[2])-Math.min(r[0],i[0]),Math.max(r[1]+r[3],i[1]+i[3])-Math.min(r[1],i[1])]})),r}function z(t,e){var r=parseFloat,i=r(t.getAttribute("x1"))||r(E(t,e.styleSheets,"x"))||r(E(t,e.styleSheets,"cx"))-r(E(t,e.styleSheets,"r"))||0,n=r(t.getAttribute("x2"))||i+r(E(t,e.styleSheets,"width"))||r(E(t,e.styleSheets,"cx"))+r(E(t,e.styleSheets,"r"))||0,a=r(t.getAttribute("y1"))||r(E(t,e.styleSheets,"y"))||r(E(t,e.styleSheets,"cy"))-r(E(t,e.styleSheets,"r"))||0,s=r(t.getAttribute("y2"))||a+r(E(t,e.styleSheets,"height"))||r(E(t,e.styleSheets,"cy"))+r(E(t,e.styleSheets,"r"))||0;return[Math.min(i,n),Math.min(a,s),Math.max(i,n)-Math.min(i,n),Math.max(a,s)-Math.min(a,s)]}function Y(t,e,r,i,n,a,s,o){void 0===o&&(o=!1);var l,u,h=e[0],f=e[1],c=e[2],p=e[3],d=n/c,m=a/p,g=t.getAttribute("preserveAspectRatio");if(g){var y=g.split(" ");"defer"===y[0]&&(y=y.slice(1)),l=y[0],u=y[1]||"meet"}else l="xMidYMid",u="meet";if("none"!==l&&("meet"===u?d=m=Math.min(d,m):"slice"===u&&(d=m=Math.max(d,m))),o)return s.pdf.Matrix(d,0,0,m,0,0);var b=r-h*d,v=i-f*m;l.indexOf("xMid")>=0?b+=(n-c*d)/2:l.indexOf("xMax")>=0&&(b+=n-c*d),l.indexOf("YMid")>=0?v+=(a-p*m)/2:l.indexOf("YMax")>=0&&(v+=a-p*m);var x=s.pdf.Matrix(1,0,0,1,b,v),S=s.pdf.Matrix(d,0,0,m,0,0);return s.pdf.matrixMult(S,x)}function q(t,e){if(!t||"none"===t)return e.pdf.unitMatrix;for(var r,i,n=/^[\s,]*matrix\(([^\)]+)\)\s*/,a=/^[\s,]*translate\(([^\)]+)\)\s*/,s=/^[\s,]*rotate\(([^\)]+)\)\s*/,o=/^[\s,]*scale\(([^\)]+)\)\s*/,l=/^[\s,]*skewX\(([^\)]+)\)\s*/,u=/^[\s,]*skewY\(([^\)]+)\)\s*/,h=e.pdf.unitMatrix;t.length>0&&t.length!==i;){i=t.length;var f=n.exec(t);if(f&&(r=W(f[1]),h=e.pdf.matrixMult(e.pdf.Matrix(r[0],r[1],r[2],r[3],r[4],r[5]),h),t=t.substr(f[0].length)),f=s.exec(t)){r=W(f[1]);var c=Math.PI*r[0]/180;if(h=e.pdf.matrixMult(e.pdf.Matrix(Math.cos(c),Math.sin(c),-Math.sin(c),Math.cos(c),0,0),h),r[1]||r[2]){var p=e.pdf.Matrix(1,0,0,1,r[1],r[2]),d=e.pdf.Matrix(1,0,0,1,-r[1],-r[2]);h=e.pdf.matrixMult(d,e.pdf.matrixMult(h,p))}t=t.substr(f[0].length)}(f=a.exec(t))&&(r=W(f[1]),h=e.pdf.matrixMult(e.pdf.Matrix(1,0,0,1,r[0],r[1]||0),h),t=t.substr(f[0].length)),(f=o.exec(t))&&((r=W(f[1]))[1]||(r[1]=r[0]),h=e.pdf.matrixMult(e.pdf.Matrix(r[0],0,0,r[1],0,0),h),t=t.substr(f[0].length)),(f=l.exec(t))&&(r=parseFloat(f[1]),r*=Math.PI/180,h=e.pdf.matrixMult(e.pdf.Matrix(1,0,Math.tan(r),1,0,0),h),t=t.substr(f[0].length)),(f=u.exec(t))&&(r=parseFloat(f[1]),r*=Math.PI/180,h=e.pdf.matrixMult(e.pdf.Matrix(1,Math.tan(r),0,1,0,0),h),t=t.substr(f[0].length))}return h}var _=function(){function t(t,e){this.element=t,this.children=e}return t.prototype.getBoundingBox=function(t){return"none"===E(this.element,t.styleSheets,"display")?[0,0,0,0]:this.getBoundingBoxCore(t)},t.prototype.computeNodeTransform=function(t){var e=this.computeNodeTransformCore(t),r=E(this.element,t.styleSheets,"transform");return r?t.pdf.matrixMult(e,q(r,t)):e},t}(),X=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return u(e,t),e.prototype.render=function(t){return Promise.resolve()},e.prototype.getBoundingBoxCore=function(t){return[]},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e}(_),Q=function(t){function e(e,r,i){var n=t.call(this,r,i)||this;return n.pdfGradientType=e,n}return u(e,t),e.prototype.apply=function(t){return f(this,void 0,void 0,(function(){var n,a,s,o,l,u;return c(this,(function(h){return(n=this.element.getAttribute("id"))?(a=[],s=0,o=!1,this.children.forEach((function(r){if("stop"===r.element.tagName.toLowerCase()){var i=new p(E(r.element,t.styleSheets,"stop-color"));a.push({offset:e.parseGradientOffset(r.element.getAttribute("offset")||"0"),color:[i.r,i.g,i.b]});var n=E(r.element,t.styleSheets,"stop-opacity");n&&"1"!==n&&(s+=parseFloat(n),o=!0)}})),o&&(l=new r({opacity:s/a.length})),u=new i(this.pdfGradientType,this.getCoordinates(),a,l),t.pdf.addShadingPattern(n,u),[2]):[2]}))}))},e.prototype.getBoundingBoxCore=function(t){return z(this.element,t)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.prototype.isVisible=function(t,e){return L(this,t,e)},e.parseGradientOffset=function(t){var e=parseFloat(t);return!isNaN(e)&&t.indexOf("%")>=0?e/100:e},e}(X),$=function(t){function e(e,r){return t.call(this,"axial",e,r)||this}return u(e,t),e.prototype.getCoordinates=function(){return[parseFloat(this.element.getAttribute("x1")||"0"),parseFloat(this.element.getAttribute("y1")||"0"),parseFloat(this.element.getAttribute("x2")||"1"),parseFloat(this.element.getAttribute("y2")||"0")]},e}(Q),J=function(t){function e(e,r){return t.call(this,"radial",e,r)||this}return u(e,t),e.prototype.getCoordinates=function(){var t=this.element.getAttribute("cx"),e=this.element.getAttribute("cy"),r=this.element.getAttribute("fx"),i=this.element.getAttribute("fy");return[parseFloat(r||t||"0.5"),parseFloat(i||e||"0.5"),0,parseFloat(t||"0.5"),parseFloat(e||"0.5"),parseFloat(this.element.getAttribute("r")||"0.5")]},e}(Q),Z=function(){function t(t,e){this.key=t,this.gradient=e}return t.prototype.getFillData=function(t,e){return f(this,void 0,void 0,(function(){var r,i,n;return c(this,(function(a){switch(a.label){case 0:return[4,e.refsHandler.getRendered(this.key,(function(t){return t.apply(new v(e.pdf,{refsHandler:e.refsHandler,textMeasure:e.textMeasure,styleSheets:e.styleSheets,viewport:e.viewport,svg2pdfParameters:e.svg2pdfParameters}))}))];case 1:return a.sent(),this.gradient.element.hasAttribute("gradientUnits")&&"objectboundingbox"!==this.gradient.element.getAttribute("gradientUnits").toLowerCase()?r=e.pdf.unitMatrix:(i=t.getBoundingBox(e),r=e.pdf.Matrix(i[2],0,0,i[3],i[0],i[1])),n=q(E(this.gradient.element,e.styleSheets,"gradientTransform","transform"),e),[2,{key:this.key,matrix:e.pdf.matrixMult(n,r)}]}}))}))},t}(),K=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return u(e,t),e.prototype.apply=function(t){return f(this,void 0,void 0,(function(){var e,r,i,a,s;return c(this,(function(o){switch(o.label){case 0:if(!(e=this.element.getAttribute("id")))return[2];r=this.getBoundingBox(t),i=new n([r[0],r[1],r[0]+r[2],r[1]+r[3]],r[2],r[3]),t.pdf.beginTilingPattern(i),a=0,s=this.children,o.label=1;case 1:return a<s.length?[4,s[a].render(new v(t.pdf,{attributeState:t.attributeState,refsHandler:t.refsHandler,styleSheets:t.styleSheets,viewport:t.viewport,svg2pdfParameters:t.svg2pdfParameters}))]:[3,4];case 2:o.sent(),o.label=3;case 3:return a++,[3,1];case 4:return t.pdf.endTilingPattern(e,i),[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){return z(this.element,t)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.prototype.isVisible=function(t,e){return L(this,t,e)},e}(X),tt=function(){function t(t,e){this.key=t,this.pattern=e}return t.prototype.getFillData=function(t,e){return f(this,void 0,void 0,(function(){var r,i,n,a,s,o,l,u,h,f,p,d;return c(this,(function(c){switch(c.label){case 0:return[4,e.refsHandler.getRendered(this.key,(function(t){return t.apply(new v(e.pdf,{refsHandler:e.refsHandler,textMeasure:e.textMeasure,styleSheets:e.styleSheets,viewport:e.viewport,svg2pdfParameters:e.svg2pdfParameters}))}))];case 1:return c.sent(),r={key:this.key,boundingBox:void 0,xStep:0,yStep:0,matrix:void 0},n=e.pdf.unitMatrix,this.pattern.element.hasAttribute("patternUnits")&&"objectboundingbox"!==this.pattern.element.getAttribute("patternUnits").toLowerCase()||(i=t.getBoundingBox(e),n=e.pdf.Matrix(1,0,0,1,i[0],i[1]),s=this.pattern.getBoundingBox(e),o=s[0]*i[0]||0,l=s[1]*i[1]||0,u=s[2]*i[2]||0,h=s[3]*i[3]||0,r.boundingBox=[o,l,o+u,l+h],r.xStep=u,r.yStep=h),a=e.pdf.unitMatrix,this.pattern.element.hasAttribute("patternContentUnits")&&"objectboundingbox"===this.pattern.element.getAttribute("patternContentUnits").toLowerCase()&&(i||(i=t.getBoundingBox(e)),a=e.pdf.Matrix(i[2],0,0,i[3],0,0),s=r.boundingBox||this.pattern.getBoundingBox(e),o=s[0]/i[0]||0,l=s[1]/i[1]||0,u=s[2]/i[2]||0,h=s[3]/i[3]||0,r.boundingBox=[o,l,o+u,l+h],r.xStep=u,r.yStep=h),f=e.pdf.unitMatrix,(p=E(this.pattern.element,e.styleSheets,"patternTransform","transform"))&&(f=q(p,e)),d=a,d=e.pdf.matrixMult(d,n),d=e.pdf.matrixMult(d,f),d=e.pdf.matrixMult(d,e.transform),r.matrix=d,[2,r]}}))}))},t}();function et(t,r,i){var n=i||r.element,a=E(n,t.styleSheets,"visibility");a&&(t.attributeState.visibility=a);var s=E(n,t.styleSheets,"fill");s&&(t.attributeState.fill=function(t,e){var r=g.exec(t);if(r){var i=r[1],n=e.refsHandler.get(i);return n&&(n instanceof $||n instanceof J)?new Z(i,n):n&&n instanceof K?new tt(i,n):new d(new p("rgb(0, 0, 0)"))}var a=j(t);return a.ok?new d(a):null}(s,t));var o=E(n,t.styleSheets,"fill-opacity");o&&(t.attributeState.fillOpacity=parseFloat(o));var l=E(n,t.styleSheets,"stroke-opacity");l&&(t.attributeState.strokeOpacity=parseFloat(l));var u=E(n,t.styleSheets,"opacity");u&&(t.attributeState.opacity=parseFloat(u));var h=E(n,t.styleSheets,"stroke-width");void 0!==h&&""!==h&&(h=Math.abs(parseFloat(h)),t.attributeState.strokeWidth=h);var f=E(n,t.styleSheets,"stroke");if(f)if("none"===f)t.attributeState.stroke=null;else{var c=j(f);c.ok&&(t.attributeState.stroke=new d(c))}var m=E(n,t.styleSheets,"stroke-linecap");m&&(t.attributeState.strokeLinecap=m);var y=E(n,t.styleSheets,"stroke-linejoin");y&&(t.attributeState.strokeLinejoin=y);var b=E(n,t.styleSheets,"stroke-dasharray");if(b){b=W(b);var v=parseInt(E(n,t.styleSheets,"stroke-dashoffset")||"0");t.attributeState.strokeDasharray=b,t.attributeState.strokeDashoffset=v}var x=E(n,t.styleSheets,"stroke-miterlimit");void 0!==x&&""!==x&&(t.attributeState.strokeMiterlimit=parseFloat(x));var S=n.getAttribute("xml:space");S&&(t.attributeState.xmlSpace=S);var w=E(n,t.styleSheets,"font-weight");w&&(t.attributeState.fontWeight=w);var k=E(n,t.styleSheets,"font-style");k&&(t.attributeState.fontStyle=k);var M=E(n,t.styleSheets,"font-family");if(M){var T=e.parse(M);t.attributeState.fontFamily=function(t,e,r){var i="";"bold"===t.fontWeight&&(i="bold"),"italic"===t.fontStyle&&(i+="italic"),""===i&&(i="normal");var n=r.pdf.getFontList(),a="";return e.some((function(t){var e=n[t];return e&&e.indexOf(i)>=0?(a=t,!0):(t=t.toLowerCase(),!!G.hasOwnProperty(t)&&(a=t,!0))}))||(a="times"),a}(t.attributeState,T,t)}var C=E(n,t.styleSheets,"font-size");if(C){var F=t.pdf.getFontSize();t.attributeState.fontSize=D(C,F)}var A=E(n,t.styleSheets,"vertical-align")||E(n,t.styleSheets,"alignment-baseline");if(A){var P=A.match(/(baseline|text-bottom|alphabetic|ideographic|middle|central|mathematical|text-top|bottom|center|top|hanging)/);P&&(t.attributeState.alignmentBaseline=P[0])}var N=E(n,t.styleSheets,"text-anchor");N&&(t.attributeState.textAnchor=N)}function rt(t,e,i){var n=1,a=1;n*=t.attributeState.fillOpacity,n*=t.attributeState.opacity,t.attributeState.fill instanceof d&&void 0!==t.attributeState.fill.color.a&&(n*=t.attributeState.fill.color.a),a*=t.attributeState.strokeOpacity,a*=t.attributeState.opacity,t.attributeState.stroke instanceof d&&void 0!==t.attributeState.stroke.color.a&&(a*=t.attributeState.stroke.color.a);var s,o,l=n<1,u=a<1;if(O(i,"use")?(l=!0,u=!0,n*=t.attributeState.fill?1:0,a*=t.attributeState.stroke?1:0):t.withinUse&&(t.attributeState.fill!==e.attributeState.fill?(l=!0,n*=t.attributeState.fill?1:0):l&&!t.attributeState.fill&&(n=0),t.attributeState.stroke!==e.attributeState.stroke?(u=!0,a*=t.attributeState.stroke?1:0):u&&!t.attributeState.stroke&&(a=0)),l||u){var h={};l&&(h.opacity=n),u&&(h["stroke-opacity"]=a),t.pdf.setGState(new r(h))}if(t.attributeState.fill&&t.attributeState.fill!==e.attributeState.fill&&t.attributeState.fill instanceof d&&t.attributeState.fill.color.ok&&!O(i,"text")&&t.pdf.setFillColor(t.attributeState.fill.color.r,t.attributeState.fill.color.g,t.attributeState.fill.color.b),t.attributeState.strokeWidth!==e.attributeState.strokeWidth&&t.pdf.setLineWidth(t.attributeState.strokeWidth),t.attributeState.stroke!==e.attributeState.stroke&&t.attributeState.stroke instanceof d&&t.pdf.setDrawColor(t.attributeState.stroke.color.r,t.attributeState.stroke.color.g,t.attributeState.stroke.color.b),t.attributeState.strokeLinecap!==e.attributeState.strokeLinecap&&t.pdf.setLineCap(t.attributeState.strokeLinecap),t.attributeState.strokeLinejoin!==e.attributeState.strokeLinejoin&&t.pdf.setLineJoin(t.attributeState.strokeLinejoin),t.attributeState.strokeDasharray===e.attributeState.strokeDasharray&&t.attributeState.strokeDashoffset===e.attributeState.strokeDashoffset||!t.attributeState.strokeDasharray||t.pdf.setLineDashPattern(t.attributeState.strokeDasharray,t.attributeState.strokeDashoffset),t.attributeState.strokeMiterlimit!==e.attributeState.strokeMiterlimit&&t.pdf.setLineMiterLimit(t.attributeState.strokeMiterlimit),t.attributeState.fontFamily!==e.attributeState.fontFamily&&(s=G.hasOwnProperty(t.attributeState.fontFamily)?G[t.attributeState.fontFamily]:t.attributeState.fontFamily),t.attributeState.fill&&t.attributeState.fill!==e.attributeState.fill&&t.attributeState.fill instanceof d&&t.attributeState.fill.color.ok){var f=t.attributeState.fill.color;t.pdf.setTextColor(f.r,f.g,f.b)}t.attributeState.fontWeight===e.attributeState.fontWeight&&t.attributeState.fontStyle===e.attributeState.fontStyle||(o="","bold"===t.attributeState.fontWeight&&(o="bold"),"italic"===t.attributeState.fontStyle&&(o+="italic"),""===o&&(o="normal")),void 0===s&&void 0===o||(void 0===s&&(s=G.hasOwnProperty(t.attributeState.fontFamily)?G[t.attributeState.fontFamily]:t.attributeState.fontFamily),t.pdf.setFont(s,o)),t.attributeState.fontSize!==e.attributeState.fontSize&&t.pdf.setFontSize(t.attributeState.fontSize*t.pdf.internal.scaleFactor)}function it(t,e){var r=E(t.element,e.styleSheets,"clip-path");if(r){var i=g.exec(r);if(i){var n=i[1];return e.refsHandler.get(n)||void 0}}}function nt(t,e,r){return f(this,void 0,void 0,(function(){var i,n;return c(this,(function(a){switch(a.label){case 0:return i=r.clone(),e.element.hasAttribute("clipPathUnits")&&"objectboundingbox"===e.element.getAttribute("clipPathUnits").toLowerCase()&&(n=t.getBoundingBox(r),i.transform=r.pdf.matrixMult(r.pdf.Matrix(n[2],0,0,n[3],n[0],n[1]),r.transform)),[4,e.apply(i)];case 1:return a.sent(),[2]}}))}))}var at=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return u(e,t),e.prototype.render=function(t){return f(this,void 0,void 0,(function(){var e,r,i;return c(this,(function(n){switch(n.label){case 0:return this.isVisible("hidden"!==t.attributeState.visibility,t)?((e=t.clone()).transform=e.pdf.matrixMult(this.computeNodeTransform(e),t.transform),et(e,this),(r=this.element.hasAttribute("clip-path")&&"none"!==E(this.element,e.styleSheets,"clip-path"))?(i=it(this,e))&&i.isVisible(!0,e)?(e.pdf.saveGraphicsState(),[4,nt(this,i,e)]):[3,2]:[3,3]):[2];case 1:return n.sent(),[3,3];case 2:return[2];case 3:return e.withinClipPath||e.pdf.saveGraphicsState(),rt(e,t,this.element),[4,this.renderCore(e)];case 4:return n.sent(),e.withinClipPath||e.pdf.restoreGraphicsState(),r&&e.pdf.restoreGraphicsState(),[2]}}))}))},e}(_),st=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return u(e,t),e}(at),ot=function(t){function e(e,r,i){var n=t.call(this,r,i)||this;return n.cachedPath=null,n.hasMarkers=e,n}return u(e,t),e.prototype.renderCore=function(t){return f(this,void 0,void 0,(function(){var e;return c(this,(function(r){switch(r.label){case 0:return null===(e=this.getCachedPath(t))||0===e.segments.length?[2]:(t.withinClipPath?e.transform(t.transform):t.pdf.setCurrentTransformationMatrix(t.transform),e.draw(t),[4,this.fillOrStroke(t)]);case 1:return r.sent(),this.hasMarkers?[4,this.drawMarkers(t,e)]:[3,3];case 2:r.sent(),r.label=3;case 3:return[2]}}))}))},e.prototype.getCachedPath=function(t){return this.cachedPath||(this.cachedPath=this.getPath(t))},e.prototype.drawMarkers=function(t,e){return f(this,void 0,void 0,(function(){return c(this,(function(r){switch(r.label){case 0:return[4,this.getMarkers(e,t).draw(t.clone({transform:t.pdf.unitMatrix}))];case 1:return r.sent(),[2]}}))}))},e.prototype.fillOrStroke=function(t){return f(this,void 0,void 0,(function(){var e,r,i,n,a;return c(this,(function(s){switch(s.label){case 0:return t.withinClipPath?[2]:(e=t.attributeState.fill,r=t.attributeState.stroke&&0!==t.attributeState.strokeWidth,e?[4,e.getFillData(this,t)]:[3,2]);case 1:return n=s.sent(),[3,3];case 2:n=void 0,s.label=3;case 3:return i=n,a="evenodd"===E(this.element,t.styleSheets,"fill-rule"),e&&r||t.withinUse?a?t.pdf.fillStrokeEvenOdd(i):t.pdf.fillStroke(i):e?a?t.pdf.fillEvenOdd(i):t.pdf.fill(i):r?t.pdf.stroke():t.pdf.discardPath(),[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){var e=this.getCachedPath(t);if(!e)return[0,0,0,0];for(var r=Number.POSITIVE_INFINITY,i=Number.POSITIVE_INFINITY,n=Number.NEGATIVE_INFINITY,a=Number.NEGATIVE_INFINITY,s=0,o=0,l=0;l<e.segments.length;l++){var u=e.segments[l];(u instanceof A||u instanceof P||u instanceof N)&&(s=u.x,o=u.y),u instanceof N?(r=Math.min(r,s,u.x1,u.x2,u.x),n=Math.max(n,s,u.x1,u.x2,u.x),i=Math.min(i,o,u.y1,u.y2,u.y),a=Math.max(a,o,u.y1,u.y2,u.y)):(r=Math.min(r,s),n=Math.max(n,s),i=Math.min(i,o),a=Math.max(a,o))}return[r,i,n-r,a-i]},e.prototype.getMarkers=function(t,e){var r=E(this.element,e.styleSheets,"marker-start"),i=E(this.element,e.styleSheets,"marker-mid"),n=E(this.element,e.styleSheets,"marker-end"),a=new H;if(r||i||n){n&&(n=lt(n)),r&&(r=lt(r)),i&&(i=lt(i));for(var s=t.segments,o=[1,0],l=void 0,u=!1,h=[1,0],f=!1,c=function(t){var e=s[t],c=r&&(1===t||!(s[t]instanceof A)&&s[t-1]instanceof A);c&&s.forEach((function(e,r){if(!f&&e instanceof B&&r>t){var i=s[r-1];f=(i instanceof A||i instanceof P||i instanceof N)&&i}}));var p=n&&(t===s.length-1||!(s[t]instanceof A)&&s[t+1]instanceof A),d=i&&t>0&&!(1===t&&s[t-1]instanceof A),m=s[t-1]||null;if(m instanceof A||m instanceof P||m instanceof N){if(e instanceof N)c&&a.addMarker(new V(r,[m.x,m.y],S(f?[f.x,f.y]:[m.x,m.y],[e.x1,e.y1]))),p&&a.addMarker(new V(n,[e.x,e.y],S([e.x2,e.y2],[e.x,e.y]))),d&&(l=M([m.x,m.y],[e.x1,e.y1]),l=m instanceof A?l:k(T(o,l)),a.addMarker(new V(i,[m.x,m.y],Math.atan2(l[1],l[0])))),o=M([e.x2,e.y2],[e.x,e.y]);else if(e instanceof A||e instanceof P){if(l=M([m.x,m.y],[e.x,e.y]),c){var g=f?M([f.x,f.y],[e.x,e.y]):l;a.addMarker(new V(r,[m.x,m.y],Math.atan2(g[1],g[0])))}if(p&&a.addMarker(new V(n,[e.x,e.y],Math.atan2(l[1],l[0]))),d){g=e instanceof A?o:m instanceof A?l:k(T(o,l));a.addMarker(new V(i,[m.x,m.y],Math.atan2(g[1],g[0])))}o=l}else if(e instanceof B){if(l=M([m.x,m.y],[u.x,u.y]),d){g=m instanceof A?l:k(T(o,l));a.addMarker(new V(i,[m.x,m.y],Math.atan2(g[1],g[0])))}if(p){g=k(T(l,h));a.addMarker(new V(n,[u.x,u.y],Math.atan2(g[1],g[0])))}o=l}}else{u=e instanceof A&&e;var y=s[t+1];(y instanceof A||y instanceof P||y instanceof N)&&(h=M([u.x,u.y],[y.x,y.y]))}},p=0;p<s.length;p++)c(p)}return a},e}(st);function lt(t){var e=g.exec(t);return e&&e[1]||void 0}var ut=function(t){function e(e,r){return t.call(this,!0,e,r)||this}return u(e,t),e.prototype.getPath=function(t){if(t.withinClipPath||null===t.attributeState.stroke)return null;var e=parseFloat(this.element.getAttribute("x1")||"0"),r=parseFloat(this.element.getAttribute("y1")||"0"),i=parseFloat(this.element.getAttribute("x2")||"0"),n=parseFloat(this.element.getAttribute("y2")||"0");return e||i||r||n?(new F).moveTo(e,r).lineTo(i,n):null},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.prototype.isVisible=function(t,e){return I(this,t,e)},e.prototype.fillOrStroke=function(e){return f(this,void 0,void 0,(function(){return c(this,(function(r){switch(r.label){case 0:return e.attributeState.fill=null,[4,t.prototype.fillOrStroke.call(this,e)];case 1:return r.sent(),[2]}}))}))},e}(ot),ht=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return u(e,t),e.prototype.apply=function(t){return f(this,void 0,void 0,(function(){var e,r,i,n;return c(this,(function(a){switch(a.label){case 0:return this.isVisible("hidden"!==t.attributeState.visibility,t)?((e=t.clone()).transform=e.pdf.unitMatrix,et(e,this),this.element.hasAttribute("clip-path")&&"none"!==E(this.element,e.styleSheets,"clip-path")?(r=it(this,e))&&r.isVisible(!0,e)?[4,nt(this,r,e)]:[3,2]:[3,3]):[2];case 1:return a.sent(),[3,3];case 2:return[2];case 3:rt(e,t,this.element),i=0,n=this.children,a.label=4;case 4:return i<n.length?[4,n[i].render(e)]:[3,7];case 5:a.sent(),a.label=6;case 6:return i++,[3,4];case 7:return[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){return U(t,this)},e.prototype.isVisible=function(t,e){return L(this,t,e)},e.prototype.computeNodeTransformCore=function(t){var e=parseFloat(E(this.element,t.styleSheets,"x")||"0"),r=parseFloat(E(this.element,t.styleSheets,"y")||"0"),i=this.element.getAttribute("viewBox");if(i){var n=W(i),a=parseFloat(E(this.element,t.styleSheets,"width")||E(this.element.ownerSVGElement,t.styleSheets,"width")||i[2]),s=parseFloat(E(this.element,t.styleSheets,"height")||E(this.element.ownerSVGElement,t.styleSheets,"height")||i[3]);return Y(this.element,n,e,r,a,s,t)}return t.pdf.Matrix(1,0,0,1,e,r)},e}(X),ft=function(t,e){this.width=t,this.height=e},ct=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return u(e,t),e.prototype.renderCore=function(t){return f(this,void 0,void 0,(function(){var r,i,n,a,s,o,l,u,h,f,p,d;return c(this,(function(c){switch(c.label){case 0:return r=parseFloat,(i=this.element.getAttribute("href")||this.element.getAttribute("xlink:href"))?(n=i.substring(1),a=t.refsHandler.get(n),s=O(a.element,"symbol,svg")&&a.element.hasAttribute("viewBox"),o=r(E(this.element,t.styleSheets,"x")||"0"),l=r(E(this.element,t.styleSheets,"y")||"0"),u=void 0,h=void 0,s?(u=r(E(this.element,t.styleSheets,"width")||E(a.element,t.styleSheets,"width")||"0"),h=r(E(this.element,t.styleSheets,"height")||E(a.element,t.styleSheets,"height")||"0"),o+=r(E(a.element,t.styleSheets,"x")||"0"),l+=r(E(a.element,t.styleSheets,"y")||"0"),p=W(a.element.getAttribute("viewBox")),f=Y(a.element,p,o,l,u,h,t)):f=t.pdf.Matrix(1,0,0,1,o,l),d=new v(t.pdf,{refsHandler:t.refsHandler,styleSheets:t.styleSheets,withinUse:!0,viewport:s?new ft(u,h):t.viewport,svg2pdfParameters:t.svg2pdfParameters}),[4,t.refsHandler.getRendered(n,(function(t){return e.renderReferencedNode(t,d)}))]):[2];case 1:return c.sent(),t.pdf.saveGraphicsState(),t.pdf.setCurrentTransformationMatrix(t.transform),s&&"visible"!==E(a.element,t.styleSheets,"overflow")&&(t.pdf.rect(o,l,u,h),t.pdf.clip().discardPath()),t.pdf.doFormObject(n,f),t.pdf.restoreGraphicsState(),[2]}}))}))},e.renderReferencedNode=function(t,e){return f(this,void 0,void 0,(function(){var r;return c(this,(function(i){switch(i.label){case 0:return r=[(r=t.getBoundingBox(e))[0]-.5*r[2],r[1]-.5*r[3],2*r[2],2*r[3]],e.pdf.beginFormObject(r[0],r[1],r[2],r[3],e.pdf.unitMatrix),t instanceof ht?[4,t.apply(e)]:[3,2];case 1:return i.sent(),[3,4];case 2:return[4,t.render(e)];case 3:i.sent(),i.label=4;case 4:return e.pdf.endFormObject(t.element.getAttribute("id")),[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){return z(this.element,t)},e.prototype.isVisible=function(t,e){return I(this,t,e)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e}(st),pt=function(t){function e(e,r){return t.call(this,!1,e,r)||this}return u(e,t),e.prototype.getPath=function(t){var e=parseFloat(E(this.element,t.styleSheets,"width")||"0"),r=parseFloat(E(this.element,t.styleSheets,"height")||"0");if(!isFinite(e)||e<=0||!isFinite(r)||r<=0)return null;var i=E(this.element,t.styleSheets,"rx"),n=E(this.element,t.styleSheets,"ry"),a=Math.min(parseFloat(i||n||"0"),.5*e),s=Math.min(parseFloat(n||i||"0"),.5*r),o=parseFloat(E(this.element,t.styleSheets,"x")||"0"),l=parseFloat(E(this.element,t.styleSheets,"y")||"0"),u=4/3*(Math.SQRT2-1);return 0===a&&0===s?(new F).moveTo(o,l).lineTo(o+e,l).lineTo(o+e,l+r).lineTo(o,l+r).close():(new F).moveTo(o+=a,l).lineTo(o+=e-2*a,l).curveTo(o+a*u,l,o+a,l+(s-s*u),o+=a,l+=s).lineTo(o,l+=r-2*s).curveTo(o,l+s*u,o-a*u,l+s,o-=a,l+=s).lineTo(o+=2*a-e,l).curveTo(o-a*u,l,o-a,l-s*u,o-=a,l-=s).lineTo(o,l+=2*s-r).curveTo(o,l-s*u,o+a*u,l-s,o+=a,l-=s).close()},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.prototype.isVisible=function(t,e){return I(this,t,e)},e}(ot),dt=function(t){function e(e,r){return t.call(this,!1,e,r)||this}return u(e,t),e.prototype.getPath=function(t){var e=this.getRx(t),r=this.getRy(t);if(!isFinite(e)||r<=0||!isFinite(r)||r<=0)return null;var i=parseFloat(E(this.element,t.styleSheets,"cx")||"0"),n=parseFloat(E(this.element,t.styleSheets,"cy")||"0"),a=4/3*(Math.SQRT2-1)*e,s=4/3*(Math.SQRT2-1)*r;return(new F).moveTo(i+e,n).curveTo(i+e,n-s,i+a,n-r,i,n-r).curveTo(i-a,n-r,i-e,n-s,i-e,n).curveTo(i-e,n+s,i-a,n+r,i,n+r).curveTo(i+a,n+r,i+e,n+s,i+e,n)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.prototype.isVisible=function(t,e){return I(this,t,e)},e}(ot),mt=function(t){function e(e,r){return t.call(this,e,r)||this}return u(e,t),e.prototype.getRx=function(t){return parseFloat(E(this.element,t.styleSheets,"rx")||"0")},e.prototype.getRy=function(t){return parseFloat(E(this.element,t.styleSheets,"ry")||"0")},e}(dt);function gt(t){var e="invisible";return t.fill&&t.stroke?e="fillThenStroke":t.fill?e="fill":t.stroke&&(e="stroke"),e}function yt(t){return t.replace(/[\n\r]/g,"")}function bt(t){return t.replace(/[\t]/g," ")}function vt(t){return t.replace(/ +/g," ")}function xt(t,e,r){switch(E(t,r.styleSheets,"text-transform")){case"uppercase":return e.toUpperCase();case"lowercase":return e.toLowerCase();default:return e}}function St(t){return t.replace(/\s+$/,"")}var wt=function(){function t(t,e,r,i){this.textNode=t,this.texts=[],this.textNodes=[],this.textAnchor=e,this.originX=r,this.originY=i}return t.prototype.add=function(t,e){this.texts.push(e),this.textNodes.push(t)},t.prototype.put=function(t){var e,r,i,n=[],a=[],s=[],o=this.originX,l=this.originY,u=o,h=o;for(e=0;e<this.textNodes.length;e++){var f=o,c=l,m=void 0;if("#text"===(r=this.textNodes[e]).nodeName)m=t;else{et(m=t.clone(),this.textNode,r);var g=E(r,t.styleSheets,"stroke");g&&(i=new p(g)).ok&&(m.attributeState.stroke=new d(i));var y=E(r,t.styleSheets,"stroke-width");void 0!==y&&(m.attributeState.strokeWidth=parseFloat(y));var b=r.getAttribute("dx");null!==b&&(f+=D(b,m.attributeState.fontSize));var v=r.getAttribute("dy");null!==v&&(c+=D(v,m.attributeState.fontSize))}s[e]=m,n[e]=f,a[e]=c,o=f+t.textMeasure.measureTextWidth(this.texts[e],m.attributeState),l=c,u=Math.min(u,f),h=Math.max(h,o)}var x=0;switch(this.textAnchor){case"start":x=0;break;case"middle":x=(h-u)/2;break;case"end":x=h-u}for(e=0;e<this.textNodes.length;e++){if("#text"!==(r=this.textNodes[e]).nodeName)if("hidden"===(E(r,t.styleSheets,"visibility")||t.attributeState.visibility))continue;t.pdf.saveGraphicsState(),rt(s[e],t,r);var S=s[e].attributeState.alignmentBaseline,w=gt(s[e].attributeState);t.pdf.text(this.texts[e],n[e]-x,a[e],{baseline:R(S),angle:t.transform,renderingMode:"fill"===w?void 0:w}),t.pdf.restoreGraphicsState()}return[o,l]},t}(),kt=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return u(e,t),e.prototype.renderCore=function(t){return f(this,void 0,void 0,(function(){var e,r,i,n,a,s,o,l,u,h,f,p,d,m,g,y,b,v,x,S,w,k,M,T,C;return c(this,(function(c){if(t.pdf.saveGraphicsState(),e=0,r=t.pdf.getFontSize(),i=D(this.element.getAttribute("x"),r),n=D(this.element.getAttribute("y"),r),a=D(this.element.getAttribute("dx"),r),s=D(this.element.getAttribute("dy"),r),o=t.attributeState.visibility,0===(l=this.element.childElementCount))T=function(t,e){return t=bt(t=yt(t)),"default"===e.xmlSpace&&(t=vt(t=t.trim())),t}(this.element.textContent||"",t.attributeState),C=xt(this.element,T,t),e=t.textMeasure.getTextOffset(C,t.attributeState),"visible"===o&&(u=t.attributeState.alignmentBaseline,h=gt(t.attributeState),t.pdf.text(C,i+a-e,n+s,{baseline:R(u),angle:t.transform,renderingMode:"fill"===h?void 0:h}));else{for(f=new wt(this,t.attributeState.textAnchor,i+a,n+s),p=0;p<this.element.childNodes.length;p++)if((d=this.element.childNodes[p]).textContent){if(m=t.attributeState.xmlSpace,g=d.textContent,"#text"===d.nodeName);else{if(O(d,"title"))continue;if(O(d,"tspan")){if((y=d).childElementCount>0)for(g="",b=0;b<y.childNodes.length;b++)"#text"===y.childNodes[b].nodeName&&(g+=y.childNodes[b].textContent);v=void 0,null!==(x=y.getAttribute("x"))&&(S=D(x,r),v=f.put(t),f=new wt(this,E(y,t.styleSheets,"text-anchor")||t.attributeState.textAnchor,S,v[1])),null!==(w=y.getAttribute("y"))&&(k=D(w,r),v=f.put(t),f=new wt(this,E(y,t.styleSheets,"text-anchor")||t.attributeState.textAnchor,v[0],k)),(M=y.getAttribute("xml:space"))&&(m=M)}}T=bt(T=yt(g)),"default"===m&&(0===p&&(T=T.replace(/^\s+/,"")),p===l-1&&(T=St(T)),T=vt(T)),C=xt(this.element,T,t),f.add(d,C)}f.put(t)}return t.pdf.restoreGraphicsState(),[2]}))}))},e.prototype.isVisible=function(t,e){return L(this,t,e)},e.prototype.getBoundingBoxCore=function(t){return z(this.element,t)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e}(st),Mt=function(t){function e(e,r){return t.call(this,!0,e,r)||this}return u(e,t),e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.prototype.isVisible=function(t,e){return I(this,t,e)},e.prototype.getPath=function(t){var e,r,i=new s(E(this.element,t.styleSheets,"d")||"").unshort().unarc().abs(),n=new F;return i.iterate((function(t,i){var a=t[0];switch(a){case"M":n.moveTo(t[1],t[2]);break;case"L":n.lineTo(t[1],t[2]);break;case"H":n.lineTo(t[1],r);break;case"V":n.lineTo(e,t[1]);break;case"C":n.curveTo(t[1],t[2],t[3],t[4],t[5],t[6]);break;case"Q":var s=w([e,r],[t[1],t[2]]),o=w([t[3],t[4]],[t[1],t[2]]);n.curveTo(s[0],s[1],o[0],o[1],t[3],t[4]);break;case"Z":n.close()}switch(a){case"M":case"L":e=t[1],r=t[2];break;case"H":e=t[1];break;case"V":r=t[1];break;case"C":e=t[5],r=t[6];break;case"Q":e=t[3],r=t[4]}})),n},e}(ot),Tt=/^\s*data:(([^/,;]+\/[^/,;]+)(?:;([^,;=]+=[^,;=]+))?)?(?:;(base64))?,(.*\s*)$/i,Ct=function(t){function e(r,i){var n=t.call(this,r,i)||this;return n.imageLoadingPromise=null,n.imageUrl=n.element.getAttribute("xlink:href")||n.element.getAttribute("href"),n.imageUrl&&(n.imageLoadingPromise=e.fetchImageData(n.imageUrl)),n}return u(e,t),e.prototype.renderCore=function(t){return f(this,void 0,void 0,(function(){var e,r,i,n,a,s,o,l,u,h,f,p;return c(this,(function(c){switch(c.label){case 0:return this.imageLoadingPromise?(t.pdf.setCurrentTransformationMatrix(t.transform),e=parseFloat(E(this.element,t.styleSheets,"width")||"0"),r=parseFloat(E(this.element,t.styleSheets,"height")||"0"),i=parseFloat(E(this.element,t.styleSheets,"x")||"0"),n=parseFloat(E(this.element,t.styleSheets,"y")||"0"),!isFinite(e)||e<=0||!isFinite(r)||r<=0?[2]:[4,this.imageLoadingPromise]):[2];case 1:return a=c.sent(),s=a.data,0!==(o=a.format).indexOf("svg")?[3,3]:(l=new DOMParser,u=l.parseFromString(s,"image/svg+xml").firstElementChild,(!(h=this.element.getAttribute("preserveAspectRatio"))||h.indexOf("defer")<0||!u.getAttribute("preserveAspectRatio"))&&u.setAttribute("preserveAspectRatio",h||""),u.setAttribute("x",String(i)),u.setAttribute("y",String(n)),u.setAttribute("width",String(e)),u.setAttribute("height",String(r)),[4,Vt(u,f={}).render(new v(t.pdf,{refsHandler:new x(f),styleSheets:t.styleSheets,viewport:new ft(e,r),svg2pdfParameters:t.svg2pdfParameters}))]);case 2:return c.sent(),[2];case 3:p="data:image/"+o+";base64,"+btoa(s);try{t.pdf.addImage(p,"",i,n,e,r)}catch(t){"object"==typeof console&&console.warn&&console.warn("Could not load image "+this.imageUrl+".\n"+t)}c.label=4;case 4:return[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){return z(this.element,t)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.prototype.isVisible=function(t,e){return I(this,t,e)},e.fetchImageData=function(t){return f(this,void 0,void 0,(function(){var r,i,n,a,s;return c(this,(function(o){switch(o.label){case 0:if(!(n=t.match(Tt)))return[3,1];if(a=n[2],"image"!==(s=a.split("/"))[0])throw new Error("Unsupported image URL: "+t);return i=s[1],r=n[5],r="base64"===n[4]?atob(r):decodeURIComponent(r),[3,3];case 1:return[4,e.fetchImage(t)];case 2:r=o.sent(),i=t.substring(t.lastIndexOf(".")+1),o.label=3;case 3:return[2,{data:r,format:i}]}}))}))},e.fetchImage=function(t){return new Promise((function(e,r){var i=new XMLHttpRequest;i.open("GET",t,!0),i.responseType="arraybuffer",i.onload=function(){if(200!==i.status)throw new Error("Error "+i.status+": Failed to load image '"+t+"'");for(var r=new Uint8Array(i.response),n="",a=0;a<r.length;a++)n+=String.fromCharCode(r[a]);e(n)},i.onerror=r,i.onabort=r,i.send(null)}))},e.getMimeType=function(t){switch(t=t.toLowerCase()){case"jpg":case"jpeg":return"image/jpeg";default:return"image/"+t}},e}(st),Ft=function(t){function e(e,r,i){var n=t.call(this,!0,r,i)||this;return n.closed=e,n}return u(e,t),e.prototype.getPath=function(t){if(!this.element.hasAttribute("points")||""===this.element.getAttribute("points"))return null;var r=e.parsePointsString(this.element.getAttribute("points")),i=new F;if(r.length<1)return i;i.moveTo(r[0][0],r[0][1]);for(var n=1;n<r.length;n++)i.lineTo(r[n][0],r[n][1]);return this.closed&&i.close(),i},e.prototype.isVisible=function(t,e){return I(this,t,e)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.parsePointsString=function(t){for(var e=W(t),r=[],i=0;i<e.length-1;i+=2){var n=e[i],a=e[i+1];r.push([n,a])}return r},e}(ot),At=function(t){function e(e,r){return t.call(this,!0,e,r)||this}return u(e,t),e}(Ft),Pt=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return u(e,t),e.prototype.render=function(t){return Promise.resolve()},e.prototype.getBoundingBoxCore=function(t){return[0,0,0,0]},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.prototype.isVisible=function(t,e){return I(this,t,e)},e}(_),Nt=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return u(e,t),e.prototype.apply=function(t){return f(this,void 0,void 0,(function(){var e,r,i,n;return c(this,(function(a){switch(a.label){case 0:e=this.computeNodeTransform(t),r=this.getBoundingBox(t),t.pdf.beginFormObject(r[0],r[1],r[2],r[3],e),i=0,n=this.children,a.label=1;case 1:return i<n.length?[4,n[i].render(new v(t.pdf,{refsHandler:t.refsHandler,styleSheets:t.styleSheets,viewport:t.viewport,svg2pdfParameters:t.svg2pdfParameters}))]:[3,4];case 2:a.sent(),a.label=3;case 3:return i++,[3,1];case 4:return t.pdf.endFormObject(this.element.getAttribute("id")),[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){var e,r=this.element.getAttribute("viewBox");return r&&(e=W(r)),[e&&e[0]||0,e&&e[1]||0,e&&e[2]||parseFloat(this.element.getAttribute("marker-width")||"0"),e&&e[3]||parseFloat(this.element.getAttribute("marker-height")||"0")]},e.prototype.computeNodeTransformCore=function(t){var e,r=parseFloat(this.element.getAttribute("refX")||"0"),i=parseFloat(this.element.getAttribute("refY")||"0"),n=this.element.getAttribute("viewBox");if(n){var a=W(n);e=Y(this.element,a,0,0,parseFloat(this.element.getAttribute("markerWidth")||"3"),parseFloat(this.element.getAttribute("markerHeight")||"3"),t,!0),e=t.pdf.matrixMult(t.pdf.Matrix(1,0,0,1,-r,-i),e)}else e=t.pdf.Matrix(1,0,0,1,-r,-i);return e},e.prototype.isVisible=function(t,e){return L(this,t,e)},e}(X),Bt=function(t){function e(e,r){return t.call(this,e,r)||this}return u(e,t),e.prototype.getR=function(t){var e;return null!==(e=this.r)&&void 0!==e?e:this.r=parseFloat(E(this.element,t.styleSheets,"r")||"0")},e.prototype.getRx=function(t){return this.getR(t)},e.prototype.getRy=function(t){return this.getR(t)},e}(dt),Ot=function(t){function e(e,r){return t.call(this,!1,e,r)||this}return u(e,t),e}(Ft),Et=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return u(e,t),e.prototype.renderCore=function(t){return f(this,void 0,void 0,(function(){var e,r;return c(this,(function(i){switch(i.label){case 0:e=0,r=this.children,i.label=1;case 1:return e<r.length?[4,r[e].render(t)]:[3,4];case 2:i.sent(),i.label=3;case 3:return e++,[3,1];case 4:return[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){return U(t,this)},e}(at),It=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return u(e,t),e.prototype.isVisible=function(t,e){return L(this,t,e)},e.prototype.render=function(e){return f(this,void 0,void 0,(function(){var r,i,n,a,s;return c(this,(function(o){switch(o.label){case 0:return this.isVisible("hidden"!==e.attributeState.visibility,e)?(r=this.getX(e),i=this.getY(e),n=this.getWidth(e),a=this.getHeight(e),e.pdf.saveGraphicsState(),s=e.transform,this.element.hasAttribute("transform")&&(s=e.pdf.matrixMult(q(this.element.getAttribute("transform"),e),s)),e.pdf.setCurrentTransformationMatrix(s),e.withinUse||"visible"===E(this.element,e.styleSheets,"overflow")||e.pdf.rect(r,i,n,a).clip().discardPath(),[4,t.prototype.render.call(this,e.clone({transform:e.pdf.unitMatrix,viewport:e.withinUse?e.viewport:new ft(n,a)}))]):[2];case 1:return o.sent(),e.pdf.restoreGraphicsState(),[2]}}))}))},e.prototype.computeNodeTransform=function(t){return this.computeNodeTransformCore(t)},e.prototype.computeNodeTransformCore=function(t){if(t.withinUse)return t.pdf.unitMatrix;var e,r=this.getX(t),i=this.getY(t),n=this.getViewBox();if(n){var a=this.getWidth(t),s=this.getHeight(t);e=Y(this.element,n,r,i,a,s,t)}else e=t.pdf.Matrix(1,0,0,1,r,i);return e},e.prototype.getWidth=function(t){if(void 0!==this.width)return this.width;var e,r,i=t.svg2pdfParameters;if(this.isOutermostSvg(t))if(null!=i.width)e=i.width;else if(r=E(this.element,t.styleSheets,"width"))e=parseFloat(r);else{var n=this.getViewBox();if(n&&(null!=i.height||E(this.element,t.styleSheets,"height"))){var a=n[2]/n[3];e=this.getHeight(t)*a}else e=Math.min(300,t.viewport.width,2*t.viewport.height)}else e=(r=E(this.element,t.styleSheets,"width"))?parseFloat(r):t.viewport.width;return this.width=e},e.prototype.getHeight=function(t){if(void 0!==this.height)return this.height;var e,r,i=t.svg2pdfParameters;if(this.isOutermostSvg(t))if(null!=i.height)e=i.height;else if(r=E(this.element,t.styleSheets,"height"))e=parseFloat(r);else{var n=this.getViewBox();if(n){var a=n[2]/n[3];e=this.getWidth(t)/a}else e=Math.min(150,t.viewport.width/2,t.viewport.height)}else e=(r=E(this.element,t.styleSheets,"height"))?parseFloat(r):t.viewport.height;return this.height=e},e.prototype.getX=function(t){if(void 0!==this.x)return this.x;if(this.isOutermostSvg(t))return this.x=0;var e=E(this.element,t.styleSheets,"x");return this.x=e?parseFloat(e):0},e.prototype.getY=function(t){if(void 0!==this.y)return this.y;if(this.isOutermostSvg(t))return this.y=0;var e=E(this.element,t.styleSheets,"y");return this.y=e?parseFloat(e):0},e.prototype.getViewBox=function(){if(void 0!==this.viewBox)return this.viewBox;var t=this.element.getAttribute("viewBox");return this.viewBox=t?W(t):void 0},e.prototype.isOutermostSvg=function(t){return t.svg2pdfParameters.element===this.element},e}(Et),Lt=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return u(e,t),e.prototype.isVisible=function(t,e){return L(this,t,e)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e}(Et),Ht=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return u(e,t),e.prototype.apply=function(t){return f(this,void 0,void 0,(function(){var e,r,i;return c(this,(function(n){switch(n.label){case 0:if(!this.isVisible(!0,t))return[2];e=t.pdf.matrixMult(this.computeNodeTransform(t),t.transform),t.pdf.setCurrentTransformationMatrix(e),r=0,i=this.children,n.label=1;case 1:return r<i.length?[4,i[r].render(new v(t.pdf,{refsHandler:t.refsHandler,styleSheets:t.styleSheets,viewport:t.viewport,withinClipPath:!0,svg2pdfParameters:t.svg2pdfParameters}))]:[3,4];case 2:n.sent(),n.label=3;case 3:return r++,[3,1];case 4:return t.pdf.clip().discardPath(),t.pdf.setCurrentTransformationMatrix(e.inversed()),[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){return U(t,this)},e.prototype.isVisible=function(t,e){return L(this,t,e)},e}(X);function Vt(e,r){var i,n=[];switch(function(t,e){for(var r=[],i=0;i<t.childNodes.length;i++){var n=t.childNodes[i];"#"!==n.nodeName.charAt(0)&&r.push(n)}for(i=0;i<r.length;i++)e(i,r[i])}(e,(function(t,e){return n.push(Vt(e,r))})),e.tagName.toLowerCase()){case"a":case"g":i=new Lt(e,n);break;case"circle":i=new Bt(e,n);break;case"clippath":i=new Ht(e,n);break;case"ellipse":i=new mt(e,n);break;case"lineargradient":i=new $(e,n);break;case"image":i=new Ct(e,n);break;case"line":i=new ut(e,n);break;case"marker":i=new Nt(e,n);break;case"path":i=new Mt(e,n);break;case"pattern":i=new K(e,n);break;case"polygon":i=new At(e,n);break;case"polyline":i=new Ot(e,n);break;case"radialgradient":i=new J(e,n);break;case"rect":i=new pt(e,n);break;case"svg":i=new It(e,n);break;case"symbol":i=new ht(e,n);break;case"text":i=new kt(e,n);break;case"use":i=new ct(e,n);break;default:i=new Pt(e,n)}if(null!=r&&i.element.hasAttribute("id")){var a=t(i.element.id,{isIdentifier:!0});r[a]=r[a]||i}return i}var Dt=function(){function t(t,e){this.rootSvg=t,this.loadExternalSheets=e,this.styleSheets=[]}return t.prototype.load=function(){return f(this,void 0,void 0,(function(){var t;return c(this,(function(e){switch(e.label){case 0:return[4,this.collectStyleSheetTexts()];case 1:return t=e.sent(),this.parseCssSheets(t),[2]}}))}))},t.prototype.collectStyleSheetTexts=function(){return f(this,void 0,void 0,(function(){var e,r,i,n,a;return c(this,(function(s){switch(s.label){case 0:if(e=[],this.loadExternalSheets&&this.rootSvg.ownerDocument)for(n=0;n<this.rootSvg.ownerDocument.childNodes.length;n++)"xml-stylesheet"===(r=this.rootSvg.ownerDocument.childNodes[n]).nodeName&&"string"==typeof r.data&&e.push(t.loadSheet(r.data.match(/href=["'].*?["']/)[0].split("=")[1].slice(1,-1)));for(i=this.rootSvg.querySelectorAll("style,link"),n=0;n<i.length;n++)O(a=i[n],"style")?e.push(a.textContent):this.loadExternalSheets&&O(a,"link")&&"stylesheet"===a.getAttribute("rel")&&a.hasAttribute("href")&&e.push(t.loadSheet(a.getAttribute("href")));return[4,Promise.all(e)];case 1:return[2,s.sent().filter((function(t){return null!==t}))]}}))}))},t.prototype.parseCssSheets=function(e){for(var r=document.implementation.createHTMLDocument(""),i=0,n=e;i<n.length;i++){var a=n[i],s=r.createElement("style");s.textContent=a,r.body.appendChild(s);var o=s.sheet;if(o instanceof CSSStyleSheet){for(var l=o.cssRules.length-1;l>=0;l--){var u=o.cssRules[l];u instanceof CSSStyleRule||o.deleteRule(l);var h=u;if(h.selectorText.indexOf(",")>=0){o.deleteRule(l);for(var f=h.cssText.substring(h.selectorText.length),c=t.splitSelectorAtCommas(h.selectorText),p=0;p<c.length;p++)o.insertRule(c[p]+f,l+p)}}this.styleSheets.push(o)}}},t.splitSelectorAtCommas=function(t){for(var e,r=/,|["']/g,i=/[^\\]["]/g,n=/[^\\][']/g,a=[],s="initial",o=-1,l=i,u=0;u<t.length;)switch(s){case"initial":r.lastIndex=u,(e=r.exec(t))?(","===e[0]?(a.push(t.substring(o+1,r.lastIndex-1).trim()),o=r.lastIndex-1):(s="withinQuotes",l='"'===e[0]?i:n),u=r.lastIndex):(a.push(t.substring(o+1).trim()),u=t.length);break;case"withinQuotes":l.lastIndex=u,(e=l.exec(t))&&(u=l.lastIndex,s="initial")}return a},t.loadSheet=function(t){return new Promise((function(e,r){var i=new XMLHttpRequest;i.open("GET",t,!0),i.responseType="text",i.onload=function(){200!==i.status&&r(new Error("Error "+i.status+": Failed to load '"+t+"'")),e(i.responseText)},i.onerror=r,i.onabort=r,i.send(null)})).catch((function(){return null}))},t.prototype.getPropertyValue=function(t,e){for(var r=[],i=0,n=this.styleSheets;i<n.length;i++)for(var a=n[i],s=0;s<a.cssRules.length;s++){var l=a.cssRules[s];l.style.getPropertyValue(e)&&t.matches(l.selectorText)&&r.push(l)}if(0!==r.length){return r.reduce((function(t,r){return 1===(n=r,(a=(i=t).style.getPropertyPriority(e))!==n.style.getPropertyPriority(e)?"important"===a?1:-1:o(i.selectorText,n.selectorText))?t:r;var i,n,a})).style.getPropertyValue(e)||void 0}},t}();function Rt(t,e,r){var i,n,a;return void 0===r&&(r={}),f(this,void 0,void 0,(function(){var s,o,l,u,f,p,d,m,g,y;return c(this,(function(c){switch(c.label){case 0:return s=null!==(i=r.x)&&void 0!==i?i:0,o=null!==(n=r.y)&&void 0!==n?n:0,l=null!==(a=r.loadExternalStyleSheets)&&void 0!==a&&a,f=new x(u={}),[4,(p=new Dt(t,l)).load()];case 1:return c.sent(),d=new ft(e.internal.pageSize.getWidth(),e.internal.pageSize.getHeight()),m=h(h({},r),{element:t}),g=new v(e,{refsHandler:f,styleSheets:p,viewport:d,svg2pdfParameters:m}),e.advancedAPI(),e.saveGraphicsState(),e.setCurrentTransformationMatrix(e.Matrix(1,0,0,1,s,o)),e.setLineWidth(g.attributeState.strokeWidth),y=g.attributeState.fill.color,e.setFillColor(y.r,y.g,y.b),e.setFont(g.attributeState.fontFamily),e.setFontSize(g.attributeState.fontSize*e.internal.scaleFactor),[4,Vt(t,u).render(g)];case 2:return c.sent(),e.restoreGraphicsState(),e.compatAPI(),g.textMeasure.cleanupTextMeasuring(),[2,e]}}))}))}a.API.svg=function(t,e){return void 0===e&&(e={}),Rt(t,this,e)};export{Rt as svg2pdf}; +***************************************************************************** */var l=function(t,e){return(l=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)};function u(t,e){function r(){this.constructor=t}l(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}var h=function(){return(h=Object.assign||function(t){for(var e,r=1,i=arguments.length;r<i;r++)for(var n in e=arguments[r])Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t}).apply(this,arguments)};function f(t,e,r,i){return new(r||(r=Promise))((function(n,a){function s(t){try{l(i.next(t))}catch(t){a(t)}}function o(t){try{l(i.throw(t))}catch(t){a(t)}}function l(t){var e;t.done?n(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(s,o)}l((i=i.apply(t,e||[])).next())}))}function c(t,e){var r,i,n,a,s={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return a={next:o(0),throw:o(1),return:o(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function o(a){return function(o){return function(a){if(r)throw new TypeError("Generator is already executing.");for(;s;)try{if(r=1,i&&(n=2&a[0]?i.return:a[0]?i.throw||((n=i.return)&&n.call(i),0):i.next)&&!(n=n.call(i,a[1])).done)return n;switch(i=0,n&&(a=[2&a[0],n.value]),a[0]){case 0:case 1:n=a;break;case 4:return s.label++,{value:a[1],done:!1};case 5:s.label++,i=a[1],a=[0];continue;case 7:a=s.ops.pop(),s.trys.pop();continue;default:if(!(n=s.trys,(n=n.length>0&&n[n.length-1])||6!==a[0]&&2!==a[0])){s=0;continue}if(3===a[0]&&(!n||a[1]>n[0]&&a[1]<n[3])){s.label=a[1];break}if(6===a[0]&&s.label<n[1]){s.label=n[1],n=a;break}if(n&&s.label<n[2]){s.label=n[2],s.ops.push(a);break}n[2]&&s.ops.pop(),s.trys.pop();continue}a=e.call(t,s)}catch(t){a=[6,t],i=0}finally{r=n=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,o])}}}var p=function(){function t(t){if(this.a=void 0,this.r=0,this.g=0,this.b=0,this.simpleColors={},this.colorDefs=[],this.ok=!1,t){for(var e in"#"==t.charAt(0)&&(t=t.substr(1,6)),t=(t=t.replace(/ /g,"")).toLowerCase(),this.simpleColors={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"00ffff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000000",blanchedalmond:"ffebcd",blue:"0000ff",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"00ffff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgrey:"a9a9a9",darkgreen:"006400",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",feldspar:"d19275",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"ff00ff",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",grey:"808080",green:"008000",greenyellow:"adff2f",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgrey:"d3d3d3",lightgreen:"90ee90",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslateblue:"8470ff",lightslategray:"778899",lightslategrey:"778899",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"00ff00",limegreen:"32cd32",linen:"faf0e6",magenta:"ff00ff",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370d8",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"d87093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",red:"ff0000",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",violetred:"d02090",wheat:"f5deb3",white:"ffffff",whitesmoke:"f5f5f5",yellow:"ffff00",yellowgreen:"9acd32"},this.simpleColors)t==e&&(t=this.simpleColors[e]);this.colorDefs=[{re:/^rgb\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3})\)$/,example:["rgb(123, 234, 45)","rgb(255,234,245)"],process:function(t){return[parseInt(t[1]),parseInt(t[2]),parseInt(t[3])]}},{re:/^(\w{2})(\w{2})(\w{2})$/,example:["#00ff00","336699"],process:function(t){return[parseInt(t[1],16),parseInt(t[2],16),parseInt(t[3],16)]}},{re:/^(\w{1})(\w{1})(\w{1})$/,example:["#fb0","f0f"],process:function(t){return[parseInt(t[1]+t[1],16),parseInt(t[2]+t[2],16),parseInt(t[3]+t[3],16)]}}];for(var r=0;r<this.colorDefs.length;r++){var i=this.colorDefs[r].re,n=this.colorDefs[r].process,a=i.exec(t);if(a){var s=n(a);this.r=s[0],this.g=s[1],this.b=s[2],this.ok=!0}}this.r=this.r<0||isNaN(this.r)?0:this.r>255?255:this.r,this.g=this.g<0||isNaN(this.g)?0:this.g>255?255:this.g,this.b=this.b<0||isNaN(this.b)?0:this.b>255?255:this.b}}return t.prototype.toRGB=function(){return"rgb("+this.r+", "+this.g+", "+this.b+")"},t.prototype.toRGBA=function(){return"rgba("+this.r+", "+this.g+", "+this.b+", "+(this.a||"1")+")"},t.prototype.toHex=function(){var t=this.r.toString(16),e=this.g.toString(16),r=this.b.toString(16);return 1==t.length&&(t="0"+t),1==e.length&&(e="0"+e),1==r.length&&(r="0"+r),"#"+t+e+r},t.prototype.getHelpXML=function(){for(var e=[],r=0;r<this.colorDefs.length;r++)for(var i=this.colorDefs[r].example,n=0;n<i.length;n++)e[e.length]=i[n];for(var a in this.simpleColors)e[e.length]=a;var s=document.createElement("ul");s.setAttribute("id","rgbcolor-examples");for(r=0;r<e.length;r++)try{var o=document.createElement("li"),l=new t(e[r]),u=document.createElement("div");u.style.cssText="margin: 3px; border: 1px solid black; background:"+l.toHex()+"; color:"+l.toHex(),u.appendChild(document.createTextNode("test"));var h=document.createTextNode(" "+e[r]+" -> "+l.toRGB()+" -> "+l.toHex());o.appendChild(u),o.appendChild(h),s.appendChild(o)}catch(t){}return s},t}(),d=function(){function t(t){this.color=t}return t.prototype.getFillData=function(t,e){return f(this,void 0,void 0,(function(){return c(this,(function(t){return[2,void 0]}))}))},t}(),m=function(){function t(){this.xmlSpace="",this.fill=null,this.fillOpacity=1,this.fontFamily="",this.fontSize=16,this.fontStyle="",this.fontWeight="",this.opacity=1,this.stroke=null,this.strokeDasharray=null,this.strokeDashoffset=0,this.strokeLinecap="",this.strokeLinejoin="",this.strokeMiterlimit=4,this.strokeOpacity=1,this.strokeWidth=1,this.alignmentBaseline="",this.textAnchor="",this.visibility="",this.color=null}return t.prototype.clone=function(){var e=new t;return e.xmlSpace=this.xmlSpace,e.fill=this.fill,e.fillOpacity=this.fillOpacity,e.fontFamily=this.fontFamily,e.fontSize=this.fontSize,e.fontStyle=this.fontStyle,e.fontWeight=this.fontWeight,e.opacity=this.opacity,e.stroke=this.stroke,e.strokeDasharray=this.strokeDasharray,e.strokeDashoffset=this.strokeDashoffset,e.strokeLinecap=this.strokeLinecap,e.strokeLinejoin=this.strokeLinejoin,e.strokeMiterlimit=this.strokeMiterlimit,e.strokeOpacity=this.strokeOpacity,e.strokeWidth=this.strokeWidth,e.textAnchor=this.textAnchor,e.alignmentBaseline=this.alignmentBaseline,e.visibility=this.visibility,e.color=this.color,e},t.default=function(){var e=new t;return e.xmlSpace="default",e.fill=new d(new p("rgb(0, 0, 0)")),e.fillOpacity=1,e.fontFamily="times",e.fontSize=16,e.fontStyle="normal",e.fontWeight="normal",e.opacity=1,e.stroke=null,e.strokeDasharray=null,e.strokeDashoffset=0,e.strokeLinecap="butt",e.strokeLinejoin="miter",e.strokeMiterlimit=4,e.strokeOpacity=1,e.strokeWidth=1,e.alignmentBaseline="baseline",e.textAnchor="start",e.visibility="visible",e.color=new p("rgb(0, 0, 0)"),e},t}(),g=/url\(["']?#([^"']+)["']?\)/,y={bottom:"bottom","text-bottom":"bottom",top:"top","text-top":"top",hanging:"hanging",middle:"middle",central:"middle",center:"middle",mathematical:"middle",ideographic:"ideographic",alphabetic:"alphabetic",baseline:"alphabetic"},b=function(){function t(){this.measureMethods={}}return t.prototype.getTextOffset=function(t,e){var r=e.textAnchor;if("start"===r)return 0;var i=this.measureTextWidth(t,e),n=0;switch(r){case"end":n=i;break;case"middle":n=i/2}return n},t.prototype.measureTextWidth=function(t,e){if(0===t.length)return 0;var r=e.fontFamily;return this.getMeasureFunction(r).call(this,t,e.fontFamily,e.fontSize+"px",e.fontStyle,e.fontWeight)},t.prototype.getMeasurementTextNode=function(){if(!this.textMeasuringTextElement){this.textMeasuringTextElement=document.createElementNS("http://www.w3.org/2000/svg","text");var t=document.createElementNS("http://www.w3.org/2000/svg","svg");t.appendChild(this.textMeasuringTextElement),t.style.setProperty("position","absolute"),t.style.setProperty("visibility","hidden"),document.body.appendChild(t)}return this.textMeasuringTextElement},t.prototype.canvasTextMeasure=function(t,e,r,i,n){var a=document.createElement("canvas").getContext("2d");return null!=a?(a.font=[i,n,r,e].join(" "),a.measureText(t).width):0},t.prototype.svgTextMeasure=function(t,e,r,i,n,a){void 0===a&&(a=this.getMeasurementTextNode());var s=a;return s.setAttribute("font-family",e),s.setAttribute("font-size",r),s.setAttribute("font-style",i),s.setAttribute("font-weight",n),s.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),s.textContent=t,s.getBBox().width},t.prototype.getMeasureFunction=function(e){var r=this.measureMethods[e];if(!r){var i=this.canvasTextMeasure(t.testString,e,"16px","normal","normal"),n=this.svgTextMeasure(t.testString,e,"16px","normal","normal");r=Math.abs(i-n)<t.epsilon?this.canvasTextMeasure:this.svgTextMeasure,this.measureMethods[e]=r}return r},t.prototype.cleanupTextMeasuring=function(){if(this.textMeasuringTextElement){var t=this.textMeasuringTextElement.parentNode;t&&document.body.removeChild(t),this.textMeasuringTextElement=void 0}},t.testString="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789!\"$%&/()=?'\\+*-_.:,;^}][{#~|<>",t.epsilon=.1,t}(),v=function(){function t(t,e){var r,i,n,a,s,o;this.pdf=t,this.svg2pdfParameters=e.svg2pdfParameters,this.attributeState=e.attributeState?e.attributeState.clone():m.default(),this.viewport=e.viewport,this.refsHandler=null!==(r=e.refsHandler)&&void 0!==r?r:null,this.styleSheets=null!==(i=e.styleSheets)&&void 0!==i?i:null,this.textMeasure=null!==(n=e.textMeasure)&&void 0!==n?n:new b,this.transform=null!==(a=e.transform)&&void 0!==a?a:this.pdf.unitMatrix,this.withinClipPath=null!==(s=e.withinClipPath)&&void 0!==s&&s,this.withinUse=null!==(o=e.withinUse)&&void 0!==o&&o}return t.prototype.clone=function(e){var r,i,n,a,s,o,l,u;return void 0===e&&(e={}),new t(this.pdf,{svg2pdfParameters:null!==(r=e.svg2pdfParameters)&&void 0!==r?r:this.svg2pdfParameters,attributeState:e.attributeState?e.attributeState.clone():this.attributeState.clone(),viewport:null!==(i=e.viewport)&&void 0!==i?i:this.viewport,refsHandler:null!==(n=e.refsHandler)&&void 0!==n?n:this.refsHandler,styleSheets:null!==(a=e.styleSheets)&&void 0!==a?a:this.styleSheets,textMeasure:null!==(s=e.textMeasure)&&void 0!==s?s:this.textMeasure,transform:null!==(o=e.transform)&&void 0!==o?o:this.transform,withinClipPath:null!==(l=e.withinClipPath)&&void 0!==l?l:this.withinClipPath,withinUse:null!==(u=e.withinUse)&&void 0!==u?u:this.withinUse})},t}(),x=function(){function e(t){this.renderedElements={},this.idMap=t}return e.prototype.getRendered=function(t,r,i){return f(this,void 0,void 0,(function(){var n,a;return c(this,(function(s){switch(s.label){case 0:return n=e.generateKey(t,r),this.renderedElements.hasOwnProperty(n)?[2,this.renderedElements[t]]:(a=this.get(t),this.renderedElements[n]=a,[4,i(a)]);case 1:return s.sent(),[2,a]}}))}))},e.prototype.get=function(e){return this.idMap[t(e,{isIdentifier:!0})]},e.generateKey=function(t,e){return t+"|"+(e||new p("rgb(0,0,0)")).toRGBA()},e}();function S(t,e){return Math.atan2(e[1]-t[1],e[0]-t[0])}function w(t,e){return[2/3*(e[0]-t[0])+t[0],2/3*(e[1]-t[1])+t[1]]}function k(t){var e=Math.sqrt(t[0]*t[0]+t[1]*t[1]);return[t[0]/e,t[1]/e]}function M(t,e){return k([e[0]-t[0],e[1]-t[1]])}function T(t,e){return[t[0]+e[0],t[1]+e[1]]}function C(t,e){var r=t[0],i=t[1];return[e.a*r+e.c*i+e.e,e.b*r+e.d*i+e.f]}var F=function(){function t(){this.segments=[]}return t.prototype.moveTo=function(t,e){return this.segments.push(new A(t,e)),this},t.prototype.lineTo=function(t,e){return this.segments.push(new P(t,e)),this},t.prototype.curveTo=function(t,e,r,i,n,a){return this.segments.push(new B(t,e,r,i,n,a)),this},t.prototype.close=function(){return this.segments.push(new N),this},t.prototype.transform=function(t){this.segments.forEach((function(e){if(e instanceof A||e instanceof P||e instanceof B){var r=C([e.x,e.y],t);e.x=r[0],e.y=r[1]}if(e instanceof B){var i=C([e.x1,e.y1],t),n=C([e.x2,e.y2],t);e.x1=i[0],e.y1=i[1],e.x2=n[0],e.y2=n[1]}}))},t.prototype.draw=function(t){var e=t.pdf;this.segments.forEach((function(t){t instanceof A?e.moveTo(t.x,t.y):t instanceof P?e.lineTo(t.x,t.y):t instanceof B?e.curveTo(t.x1,t.y1,t.x2,t.y2,t.x,t.y):e.close()}))},t}(),A=function(t,e){this.x=t,this.y=e},P=function(t,e){this.x=t,this.y=e},B=function(t,e,r,i,n,a){this.x1=t,this.y1=e,this.x2=r,this.y2=i,this.x=n,this.y=a},N=function(){};function O(t,e){return e.split(",").indexOf((t.nodeName||t.tagName).toLowerCase())>=0}function E(t,e,r,i){void 0===i&&(i=r);var n=t.style.getPropertyValue(i);if(n)return n;var a=e.getPropertyValue(t,i);return a||(t.hasAttribute(r)&&t.getAttribute(r)||void 0)}function L(t,e,r){if("none"===E(t.element,r.styleSheets,"display"))return!1;var i=e,n=E(t.element,r.styleSheets,"visibility");return n&&(i="hidden"!==n),i}function I(t,e,r){var i=L(t,e,r);return 0!==t.element.childNodes.length&&(t.children.forEach((function(t){t.isVisible(i,r)&&(i=!0)})),i)}var H=function(){function t(){this.markers=[]}return t.prototype.addMarker=function(t){this.markers.push(t)},t.prototype.draw=function(t){return f(this,void 0,void 0,(function(){var e,r,i,n,a,s,o;return c(this,(function(l){switch(l.label){case 0:e=0,l.label=1;case 1:return e<this.markers.length?(r=this.markers[e],i=void 0,n=r.angle,a=r.anchor,s=Math.cos(n),o=Math.sin(n),i=t.pdf.Matrix(s,o,-o,s,a[0],a[1]),i=t.pdf.matrixMult(t.pdf.Matrix(t.attributeState.strokeWidth,0,0,t.attributeState.strokeWidth,0,0),i),i=t.pdf.matrixMult(i,t.transform),t.pdf.saveGraphicsState(),t.pdf.setLineWidth(1),[4,t.refsHandler.getRendered(r.id,null,(function(e){return e.apply(t)}))]):[3,4];case 2:l.sent(),t.pdf.doFormObject(r.id,i),t.pdf.restoreGraphicsState(),l.label=3;case 3:return e++,[3,1];case 4:return[2]}}))}))},t}(),V=function(t,e,r){this.id=t,this.anchor=e,this.angle=r};function R(t,e){var r;return(r=t&&t.toString().match(/^([\-0-9.]+)em$/))?parseFloat(r[1])*e:(r=t&&t.toString().match(/^([\-0-9.]+)(px|)$/))?parseFloat(r[1]):0}function D(t){return y[t]||"alphabetic"}function W(t){for(var e,r=[],i=/[+-]?(?:(?:\d+\.?\d*)|(?:\d*\.?\d+))(?:[eE][+-]?\d+)?/g;e=i.exec(t);)r.push(parseFloat(e[0]));return r}function G(t,e){if("transparent"===t){var r=new p("rgb(0,0,0)");return r.a=0,r}if("currentcolor"===t.toLowerCase())return e||new p("rgb(0,0,0)");var i=/\s*rgba\(((?:[^,\)]*,){3}[^,\)]*)\)\s*/.exec(t);if(i){var n=W(i[1]),a=new p("rgb("+n.slice(0,3).join(",")+")");return a.a=n[3],a}return new p(t)}var j={"sans-serif":"helvetica",verdana:"helvetica",arial:"helvetica",fixed:"courier",monospace:"courier",terminal:"courier",serif:"times",cursive:"times",fantasy:"times"};function U(t,e){if("none"===E(e.element,t.styleSheets,"display"))return[0,0,0,0];var r=[0,0,0,0];return e.children.forEach((function(e){var i=e.getBoundingBox(t);r=[Math.min(r[0],i[0]),Math.min(r[1],i[1]),Math.max(r[0]+r[2],i[0]+i[2])-Math.min(r[0],i[0]),Math.max(r[1]+r[3],i[1]+i[3])-Math.min(r[1],i[1])]})),r}function z(t,e){var r=parseFloat,i=r(t.getAttribute("x1"))||r(E(t,e.styleSheets,"x"))||r(E(t,e.styleSheets,"cx"))-r(E(t,e.styleSheets,"r"))||0,n=r(t.getAttribute("x2"))||i+r(E(t,e.styleSheets,"width"))||r(E(t,e.styleSheets,"cx"))+r(E(t,e.styleSheets,"r"))||0,a=r(t.getAttribute("y1"))||r(E(t,e.styleSheets,"y"))||r(E(t,e.styleSheets,"cy"))-r(E(t,e.styleSheets,"r"))||0,s=r(t.getAttribute("y2"))||a+r(E(t,e.styleSheets,"height"))||r(E(t,e.styleSheets,"cy"))+r(E(t,e.styleSheets,"r"))||0;return[Math.min(i,n),Math.min(a,s),Math.max(i,n)-Math.min(i,n),Math.max(a,s)-Math.min(a,s)]}function Y(t,e,r,i,n,a,s,o){void 0===o&&(o=!1);var l,u,h=e[0],f=e[1],c=e[2],p=e[3],d=n/c,m=a/p,g=t.getAttribute("preserveAspectRatio");if(g){var y=g.split(" ");"defer"===y[0]&&(y=y.slice(1)),l=y[0],u=y[1]||"meet"}else l="xMidYMid",u="meet";if("none"!==l&&("meet"===u?d=m=Math.min(d,m):"slice"===u&&(d=m=Math.max(d,m))),o)return s.pdf.Matrix(d,0,0,m,0,0);var b=r-h*d,v=i-f*m;l.indexOf("xMid")>=0?b+=(n-c*d)/2:l.indexOf("xMax")>=0&&(b+=n-c*d),l.indexOf("YMid")>=0?v+=(a-p*m)/2:l.indexOf("YMax")>=0&&(v+=a-p*m);var x=s.pdf.Matrix(1,0,0,1,b,v),S=s.pdf.Matrix(d,0,0,m,0,0);return s.pdf.matrixMult(S,x)}function X(t,e){if(!t||"none"===t)return e.pdf.unitMatrix;for(var r,i,n=/^[\s,]*matrix\(([^)]+)\)\s*/,a=/^[\s,]*translate\(([^)]+)\)\s*/,s=/^[\s,]*rotate\(([^)]+)\)\s*/,o=/^[\s,]*scale\(([^)]+)\)\s*/,l=/^[\s,]*skewX\(([^)]+)\)\s*/,u=/^[\s,]*skewY\(([^)]+)\)\s*/,h=e.pdf.unitMatrix;t.length>0&&t.length!==i;){i=t.length;var f=n.exec(t);if(f&&(r=W(f[1]),h=e.pdf.matrixMult(e.pdf.Matrix(r[0],r[1],r[2],r[3],r[4],r[5]),h),t=t.substr(f[0].length)),f=s.exec(t)){r=W(f[1]);var c=Math.PI*r[0]/180;if(h=e.pdf.matrixMult(e.pdf.Matrix(Math.cos(c),Math.sin(c),-Math.sin(c),Math.cos(c),0,0),h),r[1]||r[2]){var p=e.pdf.Matrix(1,0,0,1,r[1],r[2]),d=e.pdf.Matrix(1,0,0,1,-r[1],-r[2]);h=e.pdf.matrixMult(d,e.pdf.matrixMult(h,p))}t=t.substr(f[0].length)}(f=a.exec(t))&&(r=W(f[1]),h=e.pdf.matrixMult(e.pdf.Matrix(1,0,0,1,r[0],r[1]||0),h),t=t.substr(f[0].length)),(f=o.exec(t))&&((r=W(f[1]))[1]||(r[1]=r[0]),h=e.pdf.matrixMult(e.pdf.Matrix(r[0],0,0,r[1],0,0),h),t=t.substr(f[0].length)),(f=l.exec(t))&&(r=parseFloat(f[1]),r*=Math.PI/180,h=e.pdf.matrixMult(e.pdf.Matrix(1,0,Math.tan(r),1,0,0),h),t=t.substr(f[0].length)),(f=u.exec(t))&&(r=parseFloat(f[1]),r*=Math.PI/180,h=e.pdf.matrixMult(e.pdf.Matrix(1,Math.tan(r),0,1,0,0),h),t=t.substr(f[0].length))}return h}var q=function(){function t(t,e){this.element=t,this.children=e,this.parent=null}return t.prototype.setParent=function(t){this.parent=t},t.prototype.getParent=function(){return this.parent},t.prototype.getBoundingBox=function(t){return"none"===E(this.element,t.styleSheets,"display")?[0,0,0,0]:this.getBoundingBoxCore(t)},t.prototype.computeNodeTransform=function(t){var e=this.computeNodeTransformCore(t),r=E(this.element,t.styleSheets,"transform");return r?t.pdf.matrixMult(e,X(r,t)):e},t}(),_=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return u(e,t),e.prototype.render=function(t){return Promise.resolve()},e.prototype.getBoundingBoxCore=function(t){return[]},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e}(q),$=function(t){function e(e,r,i){var n=t.call(this,r,i)||this;return n.pdfGradientType=e,n.contextColor=void 0,n}return u(e,t),e.prototype.apply=function(t){return f(this,void 0,void 0,(function(){var n,a,s,o,l,u,h,f,p=this;return c(this,(function(c){if(!(n=this.element.getAttribute("id")))return[2];if(void 0===this.contextColor)for(this.contextColor=null,a=this;a;){if(s=E(a.element,t.styleSheets,"color")){this.contextColor=G(s,null);break}a=a.getParent()}return o=[],l=0,u=!1,this.children.forEach((function(r){if("stop"===r.element.tagName.toLowerCase()){var i=E(r.element,t.styleSheets,"color"),n=G(E(r.element,t.styleSheets,"stop-color")||"",i?G(i,null):p.contextColor);o.push({offset:e.parseGradientOffset(r.element.getAttribute("offset")||"0"),color:[n.r,n.g,n.b]});var a=E(r.element,t.styleSheets,"stop-opacity");a&&"1"!==a&&(l+=parseFloat(a),u=!0)}})),u&&(h=new r({opacity:l/o.length})),f=new i(this.pdfGradientType,this.getCoordinates(),o,h),t.pdf.addShadingPattern(n,f),[2]}))}))},e.prototype.getBoundingBoxCore=function(t){return z(this.element,t)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.prototype.isVisible=function(t,e){return I(this,t,e)},e.parseGradientOffset=function(t){var e=parseFloat(t);return!isNaN(e)&&t.indexOf("%")>=0?e/100:e},e}(_),Q=function(t){function e(e,r){return t.call(this,"axial",e,r)||this}return u(e,t),e.prototype.getCoordinates=function(){return[parseFloat(this.element.getAttribute("x1")||"0"),parseFloat(this.element.getAttribute("y1")||"0"),parseFloat(this.element.getAttribute("x2")||"1"),parseFloat(this.element.getAttribute("y2")||"0")]},e}($),K=function(t){function e(e,r){return t.call(this,"radial",e,r)||this}return u(e,t),e.prototype.getCoordinates=function(){var t=this.element.getAttribute("cx"),e=this.element.getAttribute("cy"),r=this.element.getAttribute("fx"),i=this.element.getAttribute("fy");return[parseFloat(r||t||"0.5"),parseFloat(i||e||"0.5"),0,parseFloat(t||"0.5"),parseFloat(e||"0.5"),parseFloat(this.element.getAttribute("r")||"0.5")]},e}($),J=function(){function t(t,e){this.key=t,this.gradient=e}return t.prototype.getFillData=function(t,e){return f(this,void 0,void 0,(function(){var r,i,n;return c(this,(function(a){switch(a.label){case 0:return[4,e.refsHandler.getRendered(this.key,null,(function(t){return t.apply(new v(e.pdf,{refsHandler:e.refsHandler,textMeasure:e.textMeasure,styleSheets:e.styleSheets,viewport:e.viewport,svg2pdfParameters:e.svg2pdfParameters}))}))];case 1:return a.sent(),this.gradient.element.hasAttribute("gradientUnits")&&"objectboundingbox"!==this.gradient.element.getAttribute("gradientUnits").toLowerCase()?r=e.pdf.unitMatrix:(i=t.getBoundingBox(e),r=e.pdf.Matrix(i[2],0,0,i[3],i[0],i[1])),n=X(E(this.gradient.element,e.styleSheets,"gradientTransform","transform"),e),[2,{key:this.key,matrix:e.pdf.matrixMult(n,r)}]}}))}))},t}(),Z=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return u(e,t),e.prototype.apply=function(t){return f(this,void 0,void 0,(function(){var e,r,i,a,s;return c(this,(function(o){switch(o.label){case 0:if(!(e=this.element.getAttribute("id")))return[2];r=this.getBoundingBox(t),i=new n([r[0],r[1],r[0]+r[2],r[1]+r[3]],r[2],r[3]),t.pdf.beginTilingPattern(i),a=0,s=this.children,o.label=1;case 1:return a<s.length?[4,s[a].render(new v(t.pdf,{attributeState:t.attributeState,refsHandler:t.refsHandler,styleSheets:t.styleSheets,viewport:t.viewport,svg2pdfParameters:t.svg2pdfParameters}))]:[3,4];case 2:o.sent(),o.label=3;case 3:return a++,[3,1];case 4:return t.pdf.endTilingPattern(e,i),[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){return z(this.element,t)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.prototype.isVisible=function(t,e){return I(this,t,e)},e}(_),tt=function(){function t(t,e){this.key=t,this.pattern=e}return t.prototype.getFillData=function(t,e){return f(this,void 0,void 0,(function(){var r,i,n,a,s,o,l,u,h,f,p,d;return c(this,(function(c){switch(c.label){case 0:return[4,e.refsHandler.getRendered(this.key,null,(function(t){return t.apply(new v(e.pdf,{refsHandler:e.refsHandler,textMeasure:e.textMeasure,styleSheets:e.styleSheets,viewport:e.viewport,svg2pdfParameters:e.svg2pdfParameters}))}))];case 1:return c.sent(),r={key:this.key,boundingBox:void 0,xStep:0,yStep:0,matrix:void 0},n=e.pdf.unitMatrix,this.pattern.element.hasAttribute("patternUnits")&&"objectboundingbox"!==this.pattern.element.getAttribute("patternUnits").toLowerCase()||(i=t.getBoundingBox(e),n=e.pdf.Matrix(1,0,0,1,i[0],i[1]),s=this.pattern.getBoundingBox(e),o=s[0]*i[0]||0,l=s[1]*i[1]||0,u=s[2]*i[2]||0,h=s[3]*i[3]||0,r.boundingBox=[o,l,o+u,l+h],r.xStep=u,r.yStep=h),a=e.pdf.unitMatrix,this.pattern.element.hasAttribute("patternContentUnits")&&"objectboundingbox"===this.pattern.element.getAttribute("patternContentUnits").toLowerCase()&&(i||(i=t.getBoundingBox(e)),a=e.pdf.Matrix(i[2],0,0,i[3],0,0),s=r.boundingBox||this.pattern.getBoundingBox(e),o=s[0]/i[0]||0,l=s[1]/i[1]||0,u=s[2]/i[2]||0,h=s[3]/i[3]||0,r.boundingBox=[o,l,o+u,l+h],r.xStep=u,r.yStep=h),f=e.pdf.unitMatrix,(p=E(this.pattern.element,e.styleSheets,"patternTransform","transform"))&&(f=X(p,e)),d=a,d=e.pdf.matrixMult(d,n),d=e.pdf.matrixMult(d,f),d=e.pdf.matrixMult(d,e.transform),r.matrix=d,[2,r]}}))}))},t}();function et(t,r,i){var n=i||r.element,a=E(n,t.styleSheets,"color");if(a){var s=G(a,t.attributeState.color);s.ok?t.attributeState.color=s:t.attributeState.color=new p("rgb(0,0,0)")}var o=E(n,t.styleSheets,"visibility");o&&(t.attributeState.visibility=o);var l=E(n,t.styleSheets,"fill");l&&(t.attributeState.fill=function(t,e){var r=g.exec(t);if(r){var i=r[1],n=e.refsHandler.get(i);return n&&(n instanceof Q||n instanceof K)?new J(i,n):n&&n instanceof Z?new tt(i,n):new d(new p("rgb(0, 0, 0)"))}var a=G(t,e.attributeState.color);return a.ok?new d(a):null}(l,t));var u=E(n,t.styleSheets,"fill-opacity");u&&(t.attributeState.fillOpacity=parseFloat(u));var h=E(n,t.styleSheets,"stroke-opacity");h&&(t.attributeState.strokeOpacity=parseFloat(h));var f=E(n,t.styleSheets,"opacity");f&&(t.attributeState.opacity=parseFloat(f));var c=E(n,t.styleSheets,"stroke-width");void 0!==c&&""!==c&&(t.attributeState.strokeWidth=Math.abs(parseFloat(c)));var m=E(n,t.styleSheets,"stroke");if(m)if("none"===m)t.attributeState.stroke=null;else{var y=G(m,t.attributeState.color);y.ok&&(t.attributeState.stroke=new d(y))}var b=E(n,t.styleSheets,"stroke-linecap");b&&(t.attributeState.strokeLinecap=b);var v=E(n,t.styleSheets,"stroke-linejoin");v&&(t.attributeState.strokeLinejoin=v);var x=E(n,t.styleSheets,"stroke-dasharray");if(x){var S=parseInt(E(n,t.styleSheets,"stroke-dashoffset")||"0");t.attributeState.strokeDasharray=W(x),t.attributeState.strokeDashoffset=S}var w=E(n,t.styleSheets,"stroke-miterlimit");void 0!==w&&""!==w&&(t.attributeState.strokeMiterlimit=parseFloat(w));var k=n.getAttribute("xml:space");k&&(t.attributeState.xmlSpace=k);var M=E(n,t.styleSheets,"font-weight");M&&(t.attributeState.fontWeight=M);var T=E(n,t.styleSheets,"font-style");T&&(t.attributeState.fontStyle=T);var C=E(n,t.styleSheets,"font-family");if(C){var F=e.parse(C);t.attributeState.fontFamily=function(t,e,r){var i="";"bold"===t.fontWeight&&(i="bold"),"italic"===t.fontStyle&&(i+="italic"),""===i&&(i="normal");var n=r.pdf.getFontList(),a="";return e.some((function(t){var e=n[t];return e&&e.indexOf(i)>=0?(a=t,!0):(t=t.toLowerCase(),!!j.hasOwnProperty(t)&&(a=t,!0))}))||(a="times"),a}(t.attributeState,F,t)}var A=E(n,t.styleSheets,"font-size");if(A){var P=t.pdf.getFontSize();t.attributeState.fontSize=R(A,P)}var B=E(n,t.styleSheets,"vertical-align")||E(n,t.styleSheets,"alignment-baseline");if(B){var N=B.match(/(baseline|text-bottom|alphabetic|ideographic|middle|central|mathematical|text-top|bottom|center|top|hanging)/);N&&(t.attributeState.alignmentBaseline=N[0])}var O=E(n,t.styleSheets,"text-anchor");O&&(t.attributeState.textAnchor=O)}function rt(t,e,i){var n=1,a=1;n*=t.attributeState.fillOpacity,n*=t.attributeState.opacity,t.attributeState.fill instanceof d&&void 0!==t.attributeState.fill.color.a&&(n*=t.attributeState.fill.color.a),a*=t.attributeState.strokeOpacity,a*=t.attributeState.opacity,t.attributeState.stroke instanceof d&&void 0!==t.attributeState.stroke.color.a&&(a*=t.attributeState.stroke.color.a);var s,o,l=n<1,u=a<1;if(O(i,"use")?(l=!0,u=!0,n*=t.attributeState.fill?1:0,a*=t.attributeState.stroke?1:0):t.withinUse&&(t.attributeState.fill!==e.attributeState.fill?(l=!0,n*=t.attributeState.fill?1:0):l&&!t.attributeState.fill&&(n=0),t.attributeState.stroke!==e.attributeState.stroke?(u=!0,a*=t.attributeState.stroke?1:0):u&&!t.attributeState.stroke&&(a=0)),l||u){var h={};l&&(h.opacity=n),u&&(h["stroke-opacity"]=a),t.pdf.setGState(new r(h))}if(t.attributeState.fill&&t.attributeState.fill!==e.attributeState.fill&&t.attributeState.fill instanceof d&&t.attributeState.fill.color.ok&&!O(i,"text")&&t.pdf.setFillColor(t.attributeState.fill.color.r,t.attributeState.fill.color.g,t.attributeState.fill.color.b),t.attributeState.strokeWidth!==e.attributeState.strokeWidth&&t.pdf.setLineWidth(t.attributeState.strokeWidth),t.attributeState.stroke!==e.attributeState.stroke&&t.attributeState.stroke instanceof d&&t.pdf.setDrawColor(t.attributeState.stroke.color.r,t.attributeState.stroke.color.g,t.attributeState.stroke.color.b),t.attributeState.strokeLinecap!==e.attributeState.strokeLinecap&&t.pdf.setLineCap(t.attributeState.strokeLinecap),t.attributeState.strokeLinejoin!==e.attributeState.strokeLinejoin&&t.pdf.setLineJoin(t.attributeState.strokeLinejoin),t.attributeState.strokeDasharray===e.attributeState.strokeDasharray&&t.attributeState.strokeDashoffset===e.attributeState.strokeDashoffset||!t.attributeState.strokeDasharray||t.pdf.setLineDashPattern(t.attributeState.strokeDasharray,t.attributeState.strokeDashoffset),t.attributeState.strokeMiterlimit!==e.attributeState.strokeMiterlimit&&t.pdf.setLineMiterLimit(t.attributeState.strokeMiterlimit),t.attributeState.fontFamily!==e.attributeState.fontFamily&&(s=j.hasOwnProperty(t.attributeState.fontFamily)?j[t.attributeState.fontFamily]:t.attributeState.fontFamily),t.attributeState.fill&&t.attributeState.fill!==e.attributeState.fill&&t.attributeState.fill instanceof d&&t.attributeState.fill.color.ok){var f=t.attributeState.fill.color;t.pdf.setTextColor(f.r,f.g,f.b)}t.attributeState.fontWeight===e.attributeState.fontWeight&&t.attributeState.fontStyle===e.attributeState.fontStyle||(o="","bold"===t.attributeState.fontWeight&&(o="bold"),"italic"===t.attributeState.fontStyle&&(o+="italic"),""===o&&(o="normal")),void 0===s&&void 0===o||(void 0===s&&(s=j.hasOwnProperty(t.attributeState.fontFamily)?j[t.attributeState.fontFamily]:t.attributeState.fontFamily),t.pdf.setFont(s,o)),t.attributeState.fontSize!==e.attributeState.fontSize&&t.pdf.setFontSize(t.attributeState.fontSize*t.pdf.internal.scaleFactor)}function it(t,e){var r=E(t.element,e.styleSheets,"clip-path");if(r){var i=g.exec(r);if(i){var n=i[1];return e.refsHandler.get(n)||void 0}}}function nt(t,e,r){return f(this,void 0,void 0,(function(){var i,n;return c(this,(function(a){switch(a.label){case 0:return i=r.clone(),e.element.hasAttribute("clipPathUnits")&&"objectboundingbox"===e.element.getAttribute("clipPathUnits").toLowerCase()&&(n=t.getBoundingBox(r),i.transform=r.pdf.matrixMult(r.pdf.Matrix(n[2],0,0,n[3],n[0],n[1]),r.transform)),[4,e.apply(i)];case 1:return a.sent(),[2]}}))}))}var at=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return u(e,t),e.prototype.render=function(t){return f(this,void 0,void 0,(function(){var e,r,i;return c(this,(function(n){switch(n.label){case 0:return this.isVisible("hidden"!==t.attributeState.visibility,t)?((e=t.clone()).transform=e.pdf.matrixMult(this.computeNodeTransform(e),t.transform),et(e,this),(r=this.element.hasAttribute("clip-path")&&"none"!==E(this.element,e.styleSheets,"clip-path"))?(i=it(this,e))&&i.isVisible(!0,e)?(e.pdf.saveGraphicsState(),[4,nt(this,i,e)]):[3,2]:[3,3]):[2];case 1:return n.sent(),[3,3];case 2:return[2];case 3:return e.withinClipPath||e.pdf.saveGraphicsState(),rt(e,t,this.element),[4,this.renderCore(e)];case 4:return n.sent(),e.withinClipPath||e.pdf.restoreGraphicsState(),r&&e.pdf.restoreGraphicsState(),[2]}}))}))},e}(q),st=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return u(e,t),e}(at),ot=function(t){function e(e,r,i){var n=t.call(this,r,i)||this;return n.cachedPath=null,n.hasMarkers=e,n}return u(e,t),e.prototype.renderCore=function(t){return f(this,void 0,void 0,(function(){var e;return c(this,(function(r){switch(r.label){case 0:return null===(e=this.getCachedPath(t))||0===e.segments.length?[2]:(t.withinClipPath?e.transform(t.transform):t.pdf.setCurrentTransformationMatrix(t.transform),e.draw(t),[4,this.fillOrStroke(t)]);case 1:return r.sent(),this.hasMarkers?[4,this.drawMarkers(t,e)]:[3,3];case 2:r.sent(),r.label=3;case 3:return[2]}}))}))},e.prototype.getCachedPath=function(t){return this.cachedPath||(this.cachedPath=this.getPath(t))},e.prototype.drawMarkers=function(t,e){return f(this,void 0,void 0,(function(){return c(this,(function(r){switch(r.label){case 0:return[4,this.getMarkers(e,t).draw(t.clone({transform:t.pdf.unitMatrix}))];case 1:return r.sent(),[2]}}))}))},e.prototype.fillOrStroke=function(t){return f(this,void 0,void 0,(function(){var e,r,i,n,a;return c(this,(function(s){switch(s.label){case 0:return t.withinClipPath?[2]:(e=t.attributeState.fill,r=t.attributeState.stroke&&0!==t.attributeState.strokeWidth,e?[4,e.getFillData(this,t)]:[3,2]);case 1:return n=s.sent(),[3,3];case 2:n=void 0,s.label=3;case 3:return i=n,a="evenodd"===E(this.element,t.styleSheets,"fill-rule"),e&&r||t.withinUse?a?t.pdf.fillStrokeEvenOdd(i):t.pdf.fillStroke(i):e?a?t.pdf.fillEvenOdd(i):t.pdf.fill(i):r?t.pdf.stroke():t.pdf.discardPath(),[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){var e=this.getCachedPath(t);if(!e)return[0,0,0,0];for(var r=Number.POSITIVE_INFINITY,i=Number.POSITIVE_INFINITY,n=Number.NEGATIVE_INFINITY,a=Number.NEGATIVE_INFINITY,s=0,o=0,l=0;l<e.segments.length;l++){var u=e.segments[l];(u instanceof A||u instanceof P||u instanceof B)&&(s=u.x,o=u.y),u instanceof B?(r=Math.min(r,s,u.x1,u.x2,u.x),n=Math.max(n,s,u.x1,u.x2,u.x),i=Math.min(i,o,u.y1,u.y2,u.y),a=Math.max(a,o,u.y1,u.y2,u.y)):(r=Math.min(r,s),n=Math.max(n,s),i=Math.min(i,o),a=Math.max(a,o))}return[r,i,n-r,a-i]},e.prototype.getMarkers=function(t,e){var r=E(this.element,e.styleSheets,"marker-start"),i=E(this.element,e.styleSheets,"marker-mid"),n=E(this.element,e.styleSheets,"marker-end"),a=new H;if(r||i||n){n&&(n=lt(n)),r&&(r=lt(r)),i&&(i=lt(i));for(var s=t.segments,o=[1,0],l=void 0,u=!1,h=[1,0],f=!1,c=function(t){var e=s[t],c=r&&(1===t||!(s[t]instanceof A)&&s[t-1]instanceof A);c&&s.forEach((function(e,r){if(!f&&e instanceof N&&r>t){var i=s[r-1];f=(i instanceof A||i instanceof P||i instanceof B)&&i}}));var p=n&&(t===s.length-1||!(s[t]instanceof A)&&s[t+1]instanceof A),d=i&&t>0&&!(1===t&&s[t-1]instanceof A),m=s[t-1]||null;if(m instanceof A||m instanceof P||m instanceof B){if(e instanceof B)c&&a.addMarker(new V(r,[m.x,m.y],S(f?[f.x,f.y]:[m.x,m.y],[e.x1,e.y1]))),p&&a.addMarker(new V(n,[e.x,e.y],S([e.x2,e.y2],[e.x,e.y]))),d&&(l=M([m.x,m.y],[e.x1,e.y1]),l=m instanceof A?l:k(T(o,l)),a.addMarker(new V(i,[m.x,m.y],Math.atan2(l[1],l[0])))),o=M([e.x2,e.y2],[e.x,e.y]);else if(e instanceof A||e instanceof P){if(l=M([m.x,m.y],[e.x,e.y]),c){var g=f?M([f.x,f.y],[e.x,e.y]):l;a.addMarker(new V(r,[m.x,m.y],Math.atan2(g[1],g[0])))}if(p&&a.addMarker(new V(n,[e.x,e.y],Math.atan2(l[1],l[0]))),d){g=e instanceof A?o:m instanceof A?l:k(T(o,l));a.addMarker(new V(i,[m.x,m.y],Math.atan2(g[1],g[0])))}o=l}else if(e instanceof N){if(l=M([m.x,m.y],[u.x,u.y]),d){g=m instanceof A?l:k(T(o,l));a.addMarker(new V(i,[m.x,m.y],Math.atan2(g[1],g[0])))}if(p){g=k(T(l,h));a.addMarker(new V(n,[u.x,u.y],Math.atan2(g[1],g[0])))}o=l}}else{u=e instanceof A&&e;var y=s[t+1];(y instanceof A||y instanceof P||y instanceof B)&&(h=M([u.x,u.y],[y.x,y.y]))}},p=0;p<s.length;p++)c(p)}return a},e}(st);function lt(t){var e=g.exec(t);return e&&e[1]||void 0}var ut=function(t){function e(e,r){return t.call(this,!0,e,r)||this}return u(e,t),e.prototype.getPath=function(t){if(t.withinClipPath||null===t.attributeState.stroke)return null;var e=parseFloat(this.element.getAttribute("x1")||"0"),r=parseFloat(this.element.getAttribute("y1")||"0"),i=parseFloat(this.element.getAttribute("x2")||"0"),n=parseFloat(this.element.getAttribute("y2")||"0");return e||i||r||n?(new F).moveTo(e,r).lineTo(i,n):null},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.prototype.isVisible=function(t,e){return L(this,t,e)},e.prototype.fillOrStroke=function(e){return f(this,void 0,void 0,(function(){return c(this,(function(r){switch(r.label){case 0:return e.attributeState.fill=null,[4,t.prototype.fillOrStroke.call(this,e)];case 1:return r.sent(),[2]}}))}))},e}(ot),ht=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return u(e,t),e.prototype.apply=function(t){return f(this,void 0,void 0,(function(){var e,r,i,n;return c(this,(function(a){switch(a.label){case 0:return this.isVisible("hidden"!==t.attributeState.visibility,t)?((e=t.clone()).transform=e.pdf.unitMatrix,et(e,this),this.element.hasAttribute("clip-path")&&"none"!==E(this.element,e.styleSheets,"clip-path")?(r=it(this,e))&&r.isVisible(!0,e)?[4,nt(this,r,e)]:[3,2]:[3,3]):[2];case 1:return a.sent(),[3,3];case 2:return[2];case 3:rt(e,t,this.element),i=0,n=this.children,a.label=4;case 4:return i<n.length?[4,n[i].render(e)]:[3,7];case 5:a.sent(),a.label=6;case 6:return i++,[3,4];case 7:return[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){return U(t,this)},e.prototype.isVisible=function(t,e){return I(this,t,e)},e.prototype.computeNodeTransformCore=function(t){var e=parseFloat(E(this.element,t.styleSheets,"x")||"0"),r=parseFloat(E(this.element,t.styleSheets,"y")||"0"),i=this.element.getAttribute("viewBox");if(i){var n=W(i),a=parseFloat(E(this.element,t.styleSheets,"width")||E(this.element.ownerSVGElement,t.styleSheets,"width")||i[2]),s=parseFloat(E(this.element,t.styleSheets,"height")||E(this.element.ownerSVGElement,t.styleSheets,"height")||i[3]);return Y(this.element,n,e,r,a,s,t)}return t.pdf.Matrix(1,0,0,1,e,r)},e}(_),ft=function(t,e){this.width=t,this.height=e},ct=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return u(e,t),e.prototype.renderCore=function(t){return f(this,void 0,void 0,(function(){var r,i,n,a,s,o,l,u,h,f,p,d,m;return c(this,(function(c){switch(c.label){case 0:return r=parseFloat,(i=this.element.getAttribute("href")||this.element.getAttribute("xlink:href"))?(n=i.substring(1),a=t.refsHandler.get(n),s=O(a.element,"symbol,svg")&&a.element.hasAttribute("viewBox"),o=r(E(this.element,t.styleSheets,"x")||"0"),l=r(E(this.element,t.styleSheets,"y")||"0"),u=void 0,h=void 0,s?(u=r(E(this.element,t.styleSheets,"width")||E(a.element,t.styleSheets,"width")||"0"),h=r(E(this.element,t.styleSheets,"height")||E(a.element,t.styleSheets,"height")||"0"),o+=r(E(a.element,t.styleSheets,"x")||"0"),l+=r(E(a.element,t.styleSheets,"y")||"0"),p=W(a.element.getAttribute("viewBox")),f=Y(a.element,p,o,l,u,h,t)):f=t.pdf.Matrix(1,0,0,1,o,l),d=new v(t.pdf,{refsHandler:t.refsHandler,styleSheets:t.styleSheets,withinUse:!0,viewport:s?new ft(u,h):t.viewport,svg2pdfParameters:t.svg2pdfParameters}),m=t.attributeState.color,[4,t.refsHandler.getRendered(n,m,(function(t){return e.renderReferencedNode(t,n,m,d)}))]):[2];case 1:return c.sent(),t.pdf.saveGraphicsState(),t.pdf.setCurrentTransformationMatrix(t.transform),s&&"visible"!==E(a.element,t.styleSheets,"overflow")&&(t.pdf.rect(o,l,u,h),t.pdf.clip().discardPath()),t.pdf.doFormObject(x.generateKey(n,m),f),t.pdf.restoreGraphicsState(),[2]}}))}))},e.renderReferencedNode=function(t,e,r,i){return f(this,void 0,void 0,(function(){var n;return c(this,(function(a){switch(a.label){case 0:return n=[(n=t.getBoundingBox(i))[0]-.5*n[2],n[1]-.5*n[3],2*n[2],2*n[3]],i.attributeState.color=r,i.pdf.beginFormObject(n[0],n[1],n[2],n[3],i.pdf.unitMatrix),t instanceof ht?[4,t.apply(i)]:[3,2];case 1:return a.sent(),[3,4];case 2:return[4,t.render(i)];case 3:a.sent(),a.label=4;case 4:return i.pdf.endFormObject(x.generateKey(e,r)),[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){return z(this.element,t)},e.prototype.isVisible=function(t,e){return L(this,t,e)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e}(st),pt=function(t){function e(e,r){return t.call(this,!1,e,r)||this}return u(e,t),e.prototype.getPath=function(t){var e=parseFloat(E(this.element,t.styleSheets,"width")||"0"),r=parseFloat(E(this.element,t.styleSheets,"height")||"0");if(!isFinite(e)||e<=0||!isFinite(r)||r<=0)return null;var i=E(this.element,t.styleSheets,"rx"),n=E(this.element,t.styleSheets,"ry"),a=Math.min(parseFloat(i||n||"0"),.5*e),s=Math.min(parseFloat(n||i||"0"),.5*r),o=parseFloat(E(this.element,t.styleSheets,"x")||"0"),l=parseFloat(E(this.element,t.styleSheets,"y")||"0"),u=4/3*(Math.SQRT2-1);return 0===a&&0===s?(new F).moveTo(o,l).lineTo(o+e,l).lineTo(o+e,l+r).lineTo(o,l+r).close():(new F).moveTo(o+=a,l).lineTo(o+=e-2*a,l).curveTo(o+a*u,l,o+a,l+(s-s*u),o+=a,l+=s).lineTo(o,l+=r-2*s).curveTo(o,l+s*u,o-a*u,l+s,o-=a,l+=s).lineTo(o+=2*a-e,l).curveTo(o-a*u,l,o-a,l-s*u,o-=a,l-=s).lineTo(o,l+=2*s-r).curveTo(o,l-s*u,o+a*u,l-s,o+=a,l-=s).close()},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.prototype.isVisible=function(t,e){return L(this,t,e)},e}(ot),dt=function(t){function e(e,r){return t.call(this,!1,e,r)||this}return u(e,t),e.prototype.getPath=function(t){var e=this.getRx(t),r=this.getRy(t);if(!isFinite(e)||r<=0||!isFinite(r)||r<=0)return null;var i=parseFloat(E(this.element,t.styleSheets,"cx")||"0"),n=parseFloat(E(this.element,t.styleSheets,"cy")||"0"),a=4/3*(Math.SQRT2-1)*e,s=4/3*(Math.SQRT2-1)*r;return(new F).moveTo(i+e,n).curveTo(i+e,n-s,i+a,n-r,i,n-r).curveTo(i-a,n-r,i-e,n-s,i-e,n).curveTo(i-e,n+s,i-a,n+r,i,n+r).curveTo(i+a,n+r,i+e,n+s,i+e,n)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.prototype.isVisible=function(t,e){return L(this,t,e)},e}(ot),mt=function(t){function e(e,r){return t.call(this,e,r)||this}return u(e,t),e.prototype.getRx=function(t){return parseFloat(E(this.element,t.styleSheets,"rx")||"0")},e.prototype.getRy=function(t){return parseFloat(E(this.element,t.styleSheets,"ry")||"0")},e}(dt);function gt(t){var e="invisible";return t.fill&&t.stroke?e="fillThenStroke":t.fill?e="fill":t.stroke&&(e="stroke"),e}function yt(t){return t.replace(/[\n\r]/g,"")}function bt(t){return t.replace(/[\t]/g," ")}function vt(t){return t.replace(/ +/g," ")}function xt(t,e,r){switch(E(t,r.styleSheets,"text-transform")){case"uppercase":return e.toUpperCase();case"lowercase":return e.toLowerCase();default:return e}}var St=function(){function t(t,e,r,i){this.textNode=t,this.texts=[],this.textNodes=[],this.contexts=[],this.textAnchor=e,this.originX=r,this.originY=i,this.textMeasures=[]}return t.prototype.setX=function(t){this.originX=t},t.prototype.setY=function(t){this.originY=t},t.prototype.add=function(t,e,r){this.texts.push(e),this.textNodes.push(t),this.contexts.push(r)},t.prototype.rightTrimText=function(){for(var t=this.texts.length-1;t>=0;t--)if("default"===this.contexts[t].attributeState.xmlSpace&&(this.texts[t]=this.texts[t].replace(/\s+$/,"")),this.texts[t].match(/[^\s]/))return!1;return!0},t.prototype.measureText=function(t){for(var e=0;e<this.texts.length;e++)this.textMeasures.push({width:t.textMeasure.measureTextWidth(this.texts[e],this.contexts[e].attributeState),length:this.texts[e].length})},t.prototype.put=function(t,e){var r,i,n,a,s=[],o=[],l=[],u=this.originX,h=this.originY,f=u,c=u;for(r=0;r<this.textNodes.length;r++){i=this.textNodes[r],n=this.contexts[r],a=this.textMeasures[r]||{width:t.textMeasure.measureTextWidth(this.texts[r],this.contexts[r].attributeState),length:this.texts[r].length};var p=u,d=h;if("#text"!==i.nodeName&&!s.includes(i)){s.push(i);var m=i.getAttribute("dx");null!==m&&(p+=R(m,n.attributeState.fontSize));var g=i.getAttribute("dy");null!==g&&(d+=R(g,n.attributeState.fontSize))}o[r]=p,l[r]=d,u=p+a.width+a.length*e,h=d,f=Math.min(f,p),c=Math.max(c,u)}var y=0;switch(this.textAnchor){case"start":y=0;break;case"middle":y=(c-f)/2;break;case"end":y=c-f}for(r=0;r<this.textNodes.length;r++)if(i=this.textNodes[r],n=this.contexts[r],"#text"===i.nodeName||"hidden"!==n.attributeState.visibility){t.pdf.saveGraphicsState(),rt(n,t,i);var b=n.attributeState.alignmentBaseline,v=gt(n.attributeState);t.pdf.text(this.texts[r],o[r]-y,l[r],{baseline:D(b),angle:t.transform,renderingMode:"fill"===v?void 0:v,charSpace:0===e?void 0:e}),t.pdf.restoreGraphicsState()}return[u,h]},t}(),wt=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return u(e,t),e.prototype.processTSpans=function(t,e,r,i,n,a){for(var s=r.pdf.getFontSize(),o=r.attributeState.xmlSpace,l=!0,u=!1,h=0;h<e.childNodes.length;h++){var f=e.childNodes[h];if(f.textContent){var c=f.textContent;if("#text"===f.nodeName){var p=yt(c);p=bt(p),"default"===o&&(p=vt(p),l&&p.match(/^\s/)&&(u=!0),p.match(/[^\s]/)&&(l=!1),a.prevText.match(/\s$/)&&(p=p.replace(/^\s+/,"")));var d=xt(e,p,r);n.add(e,d,r),a.prevText=c,a.prevContext=r}else if(O(f,"title"));else if(O(f,"tspan")){var m=f,g=m.getAttribute("x");if(null!==g){var y=R(g,s);n=new St(this,E(m,r.styleSheets,"text-anchor")||r.attributeState.textAnchor,y,0),i.push({type:"y",chunk:n})}var b=m.getAttribute("y");if(null!==b){var v=R(b,s);n=new St(this,E(m,r.styleSheets,"text-anchor")||r.attributeState.textAnchor,0,v),i.push({type:"x",chunk:n})}var x=r.clone();et(x,t,m),this.processTSpans(t,m,x,i,n,a)}}}return u},e.prototype.renderCore=function(t){return f(this,void 0,void 0,(function(){var e,r,i,n,a,s,o,l,u,h,f,p,d,m,g,y,b,v,x,S,w,k,M;return c(this,(function(c){if(t.pdf.saveGraphicsState(),e=0,r=0,i=1,n=t.pdf.getFontSize(),a=R(this.element.getAttribute("x"),n),s=R(this.element.getAttribute("y"),n),o=R(this.element.getAttribute("dx"),n),l=R(this.element.getAttribute("dy"),n),u=parseFloat(this.element.getAttribute("textLength")||"0"),h=t.attributeState.visibility,0===this.element.childElementCount)f=this.element.textContent||"",p=function(t,e){return t=bt(t=yt(t)),"default"===e.xmlSpace&&(t=vt(t=t.trim())),t}(f,t.attributeState),d=xt(this.element,p,t),e=t.textMeasure.getTextOffset(d,t.attributeState),u>0&&(m=t.textMeasure.measureTextWidth(d,t.attributeState),"default"===t.attributeState.xmlSpace&&f.match(/^\s/)&&(i=0),r=(u-m)/(d.length-i)||0),"visible"===h&&(g=t.attributeState.alignmentBaseline,y=gt(t.attributeState),t.pdf.text(d,a+o-e,s+l,{baseline:D(g),angle:t.transform,renderingMode:"fill"===y?void 0:y,charSpace:0===r?void 0:r}));else{for(b=[],v=new St(this,t.attributeState.textAnchor,a+o,s+l),b.push({type:"",chunk:v}),x=this.processTSpans(this,this.element,t,b,v,{prevText:" ",prevContext:t}),i=x?0:1,S=!0,w=b.length-1;w>=0;w--)S&&(S=b[w].chunk.rightTrimText());u>0&&(k=0,M=0,b.forEach((function(e){var r=e.chunk;r.measureText(t),r.textMeasures.forEach((function(t){var e=t.width,r=t.length;k+=e,M+=r}))})),r=(u-k)/(M-i)),b.reduce((function(e,i){var n=i.type,a=i.chunk;return"x"===n?a.setX(e[0]):"y"===n&&a.setY(e[1]),a.put(t,r)}),[0,0])}return t.pdf.restoreGraphicsState(),[2]}))}))},e.prototype.isVisible=function(t,e){return I(this,t,e)},e.prototype.getBoundingBoxCore=function(t){return z(this.element,t)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e}(st),kt=function(t){function e(e,r){return t.call(this,!0,e,r)||this}return u(e,t),e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.prototype.isVisible=function(t,e){return L(this,t,e)},e.prototype.getPath=function(t){var e,r,i=new s(E(this.element,t.styleSheets,"d")||"").unshort().unarc().abs(),n=new F;return i.iterate((function(t){var i=t[0];switch(i){case"M":n.moveTo(t[1],t[2]);break;case"L":n.lineTo(t[1],t[2]);break;case"H":n.lineTo(t[1],r);break;case"V":n.lineTo(e,t[1]);break;case"C":n.curveTo(t[1],t[2],t[3],t[4],t[5],t[6]);break;case"Q":var a=w([e,r],[t[1],t[2]]),s=w([t[3],t[4]],[t[1],t[2]]);n.curveTo(a[0],a[1],s[0],s[1],t[3],t[4]);break;case"Z":n.close()}switch(i){case"M":case"L":e=t[1],r=t[2];break;case"H":e=t[1];break;case"V":r=t[1];break;case"C":e=t[5],r=t[6];break;case"Q":e=t[3],r=t[4]}})),n},e}(ot),Mt=/^\s*data:(([^/,;]+\/[^/,;]+)(?:;([^,;=]+=[^,;=]+))?)?(?:;(base64))?,(.*\s*)$/i,Tt=function(t){function e(r,i){var n=t.call(this,r,i)||this;return n.imageLoadingPromise=null,n.imageUrl=n.element.getAttribute("xlink:href")||n.element.getAttribute("href"),n.imageUrl&&(n.imageLoadingPromise=e.fetchImageData(n.imageUrl)),n}return u(e,t),e.prototype.renderCore=function(t){return f(this,void 0,void 0,(function(){var e,r,i,n,a,s,o,l,u,h,f,p;return c(this,(function(c){switch(c.label){case 0:return this.imageLoadingPromise?(t.pdf.setCurrentTransformationMatrix(t.transform),e=parseFloat(E(this.element,t.styleSheets,"width")||"0"),r=parseFloat(E(this.element,t.styleSheets,"height")||"0"),i=parseFloat(E(this.element,t.styleSheets,"x")||"0"),n=parseFloat(E(this.element,t.styleSheets,"y")||"0"),!isFinite(e)||e<=0||!isFinite(r)||r<=0?[2]:[4,this.imageLoadingPromise]):[2];case 1:return a=c.sent(),s=a.data,0!==(o=a.format).indexOf("svg")?[3,3]:(l=new DOMParser,u=l.parseFromString(s,"image/svg+xml").firstElementChild,(!(h=this.element.getAttribute("preserveAspectRatio"))||h.indexOf("defer")<0||!u.getAttribute("preserveAspectRatio"))&&u.setAttribute("preserveAspectRatio",h||""),u.setAttribute("x",String(i)),u.setAttribute("y",String(n)),u.setAttribute("width",String(e)),u.setAttribute("height",String(r)),[4,Ht(u,f={}).render(new v(t.pdf,{refsHandler:new x(f),styleSheets:t.styleSheets,viewport:new ft(e,r),svg2pdfParameters:t.svg2pdfParameters}))]);case 2:return c.sent(),[2];case 3:p="data:image/"+o+";base64,"+btoa(s);try{t.pdf.addImage(p,"",i,n,e,r)}catch(t){"object"==typeof console&&console.warn&&console.warn("Could not load image "+this.imageUrl+".\n"+t)}c.label=4;case 4:return[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){return z(this.element,t)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.prototype.isVisible=function(t,e){return L(this,t,e)},e.fetchImageData=function(t){return f(this,void 0,void 0,(function(){var r,i,n,a,s;return c(this,(function(o){switch(o.label){case 0:if(!(n=t.match(Mt)))return[3,1];if(a=n[2],"image"!==(s=a.split("/"))[0])throw new Error("Unsupported image URL: "+t);return i=s[1],r=n[5],r="base64"===n[4]?atob(r):decodeURIComponent(r),[3,3];case 1:return[4,e.fetchImage(t)];case 2:r=o.sent(),i=t.substring(t.lastIndexOf(".")+1),o.label=3;case 3:return[2,{data:r,format:i}]}}))}))},e.fetchImage=function(t){return new Promise((function(e,r){var i=new XMLHttpRequest;i.open("GET",t,!0),i.responseType="arraybuffer",i.onload=function(){if(200!==i.status)throw new Error("Error "+i.status+": Failed to load image '"+t+"'");for(var r=new Uint8Array(i.response),n="",a=0;a<r.length;a++)n+=String.fromCharCode(r[a]);e(n)},i.onerror=r,i.onabort=r,i.send(null)}))},e.getMimeType=function(t){switch(t=t.toLowerCase()){case"jpg":case"jpeg":return"image/jpeg";default:return"image/"+t}},e}(st),Ct=function(t){function e(e,r,i){var n=t.call(this,!0,r,i)||this;return n.closed=e,n}return u(e,t),e.prototype.getPath=function(t){if(!this.element.hasAttribute("points")||""===this.element.getAttribute("points"))return null;var r=e.parsePointsString(this.element.getAttribute("points")),i=new F;if(r.length<1)return i;i.moveTo(r[0][0],r[0][1]);for(var n=1;n<r.length;n++)i.lineTo(r[n][0],r[n][1]);return this.closed&&i.close(),i},e.prototype.isVisible=function(t,e){return L(this,t,e)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.parsePointsString=function(t){for(var e=W(t),r=[],i=0;i<e.length-1;i+=2){var n=e[i],a=e[i+1];r.push([n,a])}return r},e}(ot),Ft=function(t){function e(e,r){return t.call(this,!0,e,r)||this}return u(e,t),e}(Ct),At=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return u(e,t),e.prototype.render=function(t){return Promise.resolve()},e.prototype.getBoundingBoxCore=function(t){return[0,0,0,0]},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.prototype.isVisible=function(t,e){return L(this,t,e)},e}(q),Pt=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return u(e,t),e.prototype.apply=function(t){return f(this,void 0,void 0,(function(){var e,r,i,n;return c(this,(function(a){switch(a.label){case 0:e=this.computeNodeTransform(t),r=this.getBoundingBox(t),t.pdf.beginFormObject(r[0],r[1],r[2],r[3],e),i=0,n=this.children,a.label=1;case 1:return i<n.length?[4,n[i].render(new v(t.pdf,{refsHandler:t.refsHandler,styleSheets:t.styleSheets,viewport:t.viewport,svg2pdfParameters:t.svg2pdfParameters}))]:[3,4];case 2:a.sent(),a.label=3;case 3:return i++,[3,1];case 4:return t.pdf.endFormObject(this.element.getAttribute("id")),[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){var e,r=this.element.getAttribute("viewBox");return r&&(e=W(r)),[e&&e[0]||0,e&&e[1]||0,e&&e[2]||parseFloat(this.element.getAttribute("marker-width")||"0"),e&&e[3]||parseFloat(this.element.getAttribute("marker-height")||"0")]},e.prototype.computeNodeTransformCore=function(t){var e,r=parseFloat(this.element.getAttribute("refX")||"0"),i=parseFloat(this.element.getAttribute("refY")||"0"),n=this.element.getAttribute("viewBox");if(n){var a=W(n);e=Y(this.element,a,0,0,parseFloat(this.element.getAttribute("markerWidth")||"3"),parseFloat(this.element.getAttribute("markerHeight")||"3"),t,!0),e=t.pdf.matrixMult(t.pdf.Matrix(1,0,0,1,-r,-i),e)}else e=t.pdf.Matrix(1,0,0,1,-r,-i);return e},e.prototype.isVisible=function(t,e){return I(this,t,e)},e}(_),Bt=function(t){function e(e,r){return t.call(this,e,r)||this}return u(e,t),e.prototype.getR=function(t){var e;return null!==(e=this.r)&&void 0!==e?e:this.r=parseFloat(E(this.element,t.styleSheets,"r")||"0")},e.prototype.getRx=function(t){return this.getR(t)},e.prototype.getRy=function(t){return this.getR(t)},e}(dt),Nt=function(t){function e(e,r){return t.call(this,!1,e,r)||this}return u(e,t),e}(Ct),Ot=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return u(e,t),e.prototype.renderCore=function(t){return f(this,void 0,void 0,(function(){var e,r;return c(this,(function(i){switch(i.label){case 0:e=0,r=this.children,i.label=1;case 1:return e<r.length?[4,r[e].render(t)]:[3,4];case 2:i.sent(),i.label=3;case 3:return e++,[3,1];case 4:return[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){return U(t,this)},e}(at),Et=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return u(e,t),e.prototype.isVisible=function(t,e){return I(this,t,e)},e.prototype.render=function(e){return f(this,void 0,void 0,(function(){var r,i,n,a,s;return c(this,(function(o){switch(o.label){case 0:return this.isVisible("hidden"!==e.attributeState.visibility,e)?(r=this.getX(e),i=this.getY(e),n=this.getWidth(e),a=this.getHeight(e),e.pdf.saveGraphicsState(),s=e.transform,this.element.hasAttribute("transform")&&(s=e.pdf.matrixMult(X(this.element.getAttribute("transform"),e),s)),e.pdf.setCurrentTransformationMatrix(s),e.withinUse||"visible"===E(this.element,e.styleSheets,"overflow")||e.pdf.rect(r,i,n,a).clip().discardPath(),[4,t.prototype.render.call(this,e.clone({transform:e.pdf.unitMatrix,viewport:e.withinUse?e.viewport:new ft(n,a)}))]):[2];case 1:return o.sent(),e.pdf.restoreGraphicsState(),[2]}}))}))},e.prototype.computeNodeTransform=function(t){return this.computeNodeTransformCore(t)},e.prototype.computeNodeTransformCore=function(t){if(t.withinUse)return t.pdf.unitMatrix;var e,r=this.getX(t),i=this.getY(t),n=this.getViewBox();if(n){var a=this.getWidth(t),s=this.getHeight(t);e=Y(this.element,n,r,i,a,s,t)}else e=t.pdf.Matrix(1,0,0,1,r,i);return e},e.prototype.getWidth=function(t){if(void 0!==this.width)return this.width;var e,r,i=t.svg2pdfParameters;if(this.isOutermostSvg(t))if(null!=i.width)e=i.width;else if(r=E(this.element,t.styleSheets,"width"))e=parseFloat(r);else{var n=this.getViewBox();if(n&&(null!=i.height||E(this.element,t.styleSheets,"height"))){var a=n[2]/n[3];e=this.getHeight(t)*a}else e=Math.min(300,t.viewport.width,2*t.viewport.height)}else e=(r=E(this.element,t.styleSheets,"width"))?parseFloat(r):t.viewport.width;return this.width=e},e.prototype.getHeight=function(t){if(void 0!==this.height)return this.height;var e,r,i=t.svg2pdfParameters;if(this.isOutermostSvg(t))if(null!=i.height)e=i.height;else if(r=E(this.element,t.styleSheets,"height"))e=parseFloat(r);else{var n=this.getViewBox();if(n){var a=n[2]/n[3];e=this.getWidth(t)/a}else e=Math.min(150,t.viewport.width/2,t.viewport.height)}else e=(r=E(this.element,t.styleSheets,"height"))?parseFloat(r):t.viewport.height;return this.height=e},e.prototype.getX=function(t){if(void 0!==this.x)return this.x;if(this.isOutermostSvg(t))return this.x=0;var e=E(this.element,t.styleSheets,"x");return this.x=e?parseFloat(e):0},e.prototype.getY=function(t){if(void 0!==this.y)return this.y;if(this.isOutermostSvg(t))return this.y=0;var e=E(this.element,t.styleSheets,"y");return this.y=e?parseFloat(e):0},e.prototype.getViewBox=function(){if(void 0!==this.viewBox)return this.viewBox;var t=this.element.getAttribute("viewBox");return this.viewBox=t?W(t):void 0},e.prototype.isOutermostSvg=function(t){return t.svg2pdfParameters.element===this.element},e}(Ot),Lt=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return u(e,t),e.prototype.isVisible=function(t,e){return I(this,t,e)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e}(Ot),It=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return u(e,t),e.prototype.apply=function(t){return f(this,void 0,void 0,(function(){var e,r,i;return c(this,(function(n){switch(n.label){case 0:if(!this.isVisible(!0,t))return[2];e=t.pdf.matrixMult(this.computeNodeTransform(t),t.transform),t.pdf.setCurrentTransformationMatrix(e),r=0,i=this.children,n.label=1;case 1:return r<i.length?[4,i[r].render(new v(t.pdf,{refsHandler:t.refsHandler,styleSheets:t.styleSheets,viewport:t.viewport,withinClipPath:!0,svg2pdfParameters:t.svg2pdfParameters}))]:[3,4];case 2:n.sent(),n.label=3;case 3:return r++,[3,1];case 4:return t.pdf.clip().discardPath(),t.pdf.setCurrentTransformationMatrix(e.inversed()),[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){return U(t,this)},e.prototype.isVisible=function(t,e){return I(this,t,e)},e}(_);function Ht(e,r){var i,n=[];switch(function(t,e){for(var r=[],i=0;i<t.childNodes.length;i++){var n=t.childNodes[i];"#"!==n.nodeName.charAt(0)&&r.push(n)}for(i=0;i<r.length;i++)e(i,r[i])}(e,(function(t,e){return n.push(Ht(e,r))})),e.tagName.toLowerCase()){case"a":case"g":i=new Lt(e,n);break;case"circle":i=new Bt(e,n);break;case"clippath":i=new It(e,n);break;case"ellipse":i=new mt(e,n);break;case"lineargradient":i=new Q(e,n);break;case"image":i=new Tt(e,n);break;case"line":i=new ut(e,n);break;case"marker":i=new Pt(e,n);break;case"path":i=new kt(e,n);break;case"pattern":i=new Z(e,n);break;case"polygon":i=new Ft(e,n);break;case"polyline":i=new Nt(e,n);break;case"radialgradient":i=new K(e,n);break;case"rect":i=new pt(e,n);break;case"svg":i=new Et(e,n);break;case"symbol":i=new ht(e,n);break;case"text":i=new wt(e,n);break;case"use":i=new ct(e,n);break;default:i=new At(e,n)}if(null!=r&&i.element.hasAttribute("id")){var a=t(i.element.id,{isIdentifier:!0});r[a]=r[a]||i}return i.children.forEach((function(t){return t.setParent(i)})),i}var Vt=function(){function t(t,e){this.rootSvg=t,this.loadExternalSheets=e,this.styleSheets=[]}return t.prototype.load=function(){return f(this,void 0,void 0,(function(){var t;return c(this,(function(e){switch(e.label){case 0:return[4,this.collectStyleSheetTexts()];case 1:return t=e.sent(),this.parseCssSheets(t),[2]}}))}))},t.prototype.collectStyleSheetTexts=function(){return f(this,void 0,void 0,(function(){var e,r,i,n,a;return c(this,(function(s){switch(s.label){case 0:if(e=[],this.loadExternalSheets&&this.rootSvg.ownerDocument)for(n=0;n<this.rootSvg.ownerDocument.childNodes.length;n++)"xml-stylesheet"===(r=this.rootSvg.ownerDocument.childNodes[n]).nodeName&&"string"==typeof r.data&&e.push(t.loadSheet(r.data.match(/href=["'].*?["']/)[0].split("=")[1].slice(1,-1)));for(i=this.rootSvg.querySelectorAll("style,link"),n=0;n<i.length;n++)O(a=i[n],"style")?e.push(a.textContent):this.loadExternalSheets&&O(a,"link")&&"stylesheet"===a.getAttribute("rel")&&a.hasAttribute("href")&&e.push(t.loadSheet(a.getAttribute("href")));return[4,Promise.all(e)];case 1:return[2,s.sent().filter((function(t){return null!==t}))]}}))}))},t.prototype.parseCssSheets=function(e){for(var r=document.implementation.createHTMLDocument(""),i=0,n=e;i<n.length;i++){var a=n[i],s=r.createElement("style");s.textContent=a,r.body.appendChild(s);var o=s.sheet;if(o instanceof CSSStyleSheet){for(var l=o.cssRules.length-1;l>=0;l--){var u=o.cssRules[l];u instanceof CSSStyleRule||o.deleteRule(l);var h=u;if(h.selectorText.indexOf(",")>=0){o.deleteRule(l);for(var f=h.cssText.substring(h.selectorText.length),c=t.splitSelectorAtCommas(h.selectorText),p=0;p<c.length;p++)o.insertRule(c[p]+f,l+p)}}this.styleSheets.push(o)}}},t.splitSelectorAtCommas=function(t){for(var e,r=/,|["']/g,i=/[^\\]["]/g,n=/[^\\][']/g,a=[],s="initial",o=-1,l=i,u=0;u<t.length;)switch(s){case"initial":r.lastIndex=u,(e=r.exec(t))?(","===e[0]?(a.push(t.substring(o+1,r.lastIndex-1).trim()),o=r.lastIndex-1):(s="withinQuotes",l='"'===e[0]?i:n),u=r.lastIndex):(a.push(t.substring(o+1).trim()),u=t.length);break;case"withinQuotes":l.lastIndex=u,(e=l.exec(t))&&(u=l.lastIndex,s="initial")}return a},t.loadSheet=function(t){return new Promise((function(e,r){var i=new XMLHttpRequest;i.open("GET",t,!0),i.responseType="text",i.onload=function(){200!==i.status&&r(new Error("Error "+i.status+": Failed to load '"+t+"'")),e(i.responseText)},i.onerror=r,i.onabort=r,i.send(null)})).catch((function(){return null}))},t.prototype.getPropertyValue=function(t,e){for(var r=[],i=0,n=this.styleSheets;i<n.length;i++)for(var a=n[i],s=0;s<a.cssRules.length;s++){var l=a.cssRules[s];l.style.getPropertyValue(e)&&t.matches(l.selectorText)&&r.push(l)}if(0!==r.length){return r.reduce((function(t,r){return 1===(n=r,(a=(i=t).style.getPropertyPriority(e))!==n.style.getPropertyPriority(e)?"important"===a?1:-1:o(i.selectorText,n.selectorText))?t:r;var i,n,a})).style.getPropertyValue(e)||void 0}},t}();function Rt(t,e,r){var i,n,a;return void 0===r&&(r={}),f(this,void 0,void 0,(function(){var s,o,l,u,f,p,d,m,g,y;return c(this,(function(c){switch(c.label){case 0:return s=null!==(i=r.x)&&void 0!==i?i:0,o=null!==(n=r.y)&&void 0!==n?n:0,l=null!==(a=r.loadExternalStyleSheets)&&void 0!==a&&a,f=new x(u={}),[4,(p=new Vt(t,l)).load()];case 1:return c.sent(),d=new ft(e.internal.pageSize.getWidth(),e.internal.pageSize.getHeight()),m=h(h({},r),{element:t}),g=new v(e,{refsHandler:f,styleSheets:p,viewport:d,svg2pdfParameters:m}),e.advancedAPI(),e.saveGraphicsState(),e.setCurrentTransformationMatrix(e.Matrix(1,0,0,1,s,o)),e.setLineWidth(g.attributeState.strokeWidth),y=g.attributeState.fill.color,e.setFillColor(y.r,y.g,y.b),e.setFont(g.attributeState.fontFamily),e.setFontSize(g.attributeState.fontSize*e.internal.scaleFactor),[4,Ht(t,u).render(g)];case 2:return c.sent(),e.restoreGraphicsState(),e.compatAPI(),g.textMeasure.cleanupTextMeasuring(),[2,e]}}))}))}a.API.svg=function(t,e){return void 0===e&&(e={}),Rt(t,this,e)};export{Rt as svg2pdf}; //# sourceMappingURL=svg2pdf.es.min.js.map diff --git a/dist/svg2pdf.es.min.js.map b/dist/svg2pdf.es.min.js.map index be90e701..7b184c25 100644 --- a/dist/svg2pdf.es.min.js.map +++ b/dist/svg2pdf.es.min.js.map @@ -1 +1 @@ -{"version":3,"file":"svg2pdf.es.min.js","sources":["../node_modules/tslib/tslib.es6.js","../src/utils/rgbcolor.ts","../src/fill/ColorFill.ts","../src/context/attributestate.ts","../src/utils/constants.ts","../src/context/textmeasure.ts","../src/context/context.ts","../src/context/referenceshandler.ts","../src/utils/geometry.ts","../src/utils/path.ts","../src/utils/node.ts","../src/markerlist.ts","../src/utils/misc.ts","../src/utils/parsing.ts","../src/utils/fonts.ts","../src/utils/bbox.ts","../src/utils/transform.ts","../src/nodes/svgnode.ts","../src/nodes/nonrenderednode.ts","../src/nodes/gradient.ts","../src/nodes/lineargradient.ts","../src/nodes/radialgradient.ts","../src/fill/GradientFill.ts","../src/nodes/pattern.ts","../src/fill/PatternFill.ts","../src/applyparseattributes.ts","../src/fill/parseFill.ts","../src/utils/applyclippath.ts","../src/nodes/renderednode.ts","../src/nodes/graphicsnode.ts","../src/nodes/geometrynode.ts","../src/nodes/line.ts","../src/nodes/symbol.ts","../src/context/viewport.ts","../src/nodes/use.ts","../src/nodes/rect.ts","../src/nodes/ellipsebase.ts","../src/nodes/ellipse.ts","../src/utils/text.ts","../src/textchunk.ts","../src/nodes/text.ts","../src/nodes/path.ts","../src/nodes/image.ts","../src/nodes/traverse.ts","../src/nodes/polygon.ts","../src/nodes/void.ts","../src/nodes/marker.ts","../src/nodes/circle.ts","../src/nodes/polyline.ts","../src/nodes/containernode.ts","../src/nodes/svg.ts","../src/nodes/group.ts","../src/nodes/clippath.ts","../src/parse.ts","../src/context/stylesheets.ts","../src/svg2pdf.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","hasOwnProperty","__extends","__","this","constructor","prototype","create","__assign","assign","t","s","i","n","arguments","length","call","apply","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","__generator","body","f","y","g","_","label","sent","trys","ops","verb","throw","return","Symbol","iterator","v","op","TypeError","pop","push","colorString","undefined","ok","key","charAt","substr","replace","toLowerCase","simpleColors","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgrey","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","feldspar","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgrey","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslateblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","violetred","wheat","white","whitesmoke","yellow","yellowgreen","colorDefs","re","example","process","bits","parseInt","processor","exec","channels","r","isNaN","RGBColor","toString","examples","j","sc","xml","document","createElement","setAttribute","listItem","listColor","exampleDiv","style","cssText","toHex","appendChild","createTextNode","listItemValue","toRGB","color","ColorFill","forNode","context","AttributeState","clone","xmlSpace","fill","fillOpacity","fontFamily","fontSize","fontStyle","fontWeight","opacity","stroke","strokeDasharray","strokeDashoffset","strokeLinecap","strokeLinejoin","strokeMiterlimit","strokeOpacity","strokeWidth","textAnchor","alignmentBaseline","visibility","attributeState","iriReference","alignmentBaselineMap","bottom","text-bottom","top","text-top","hanging","middle","central","center","mathematical","ideographic","alphabetic","baseline","TextMeasure","text","width","measureTextWidth","xOffset","getMeasureFunction","textMeasuringTextElement","createElementNS","svg","setProperty","getContext","font","join","measureText","measurementTextNode","getMeasurementTextNode","textNode","setAttributeNS","textContent","getBBox","method","measureMethods","canvasWidth","canvasTextMeasure","testString","svgWidth","svgTextMeasure","Math","abs","epsilon","parentNode","removeChild","pdf","values","svg2pdfParameters","default","viewport","refsHandler","styleSheets","textMeasure","transform","unitMatrix","withinClipPath","withinUse","Context","idMap","renderedElements","ReferencesHandler","id","renderCallback","svgNode","get","_a","cssEsc","isIdentifier","getAngle","from","to","atan2","toCubic","normalize","sqrt","getDirectionVector","addVectors","v1","v2","multVecMatrix","vec","matrix","x","a","c","segments","Path","MoveTo","LineTo","x1","y1","x2","y2","CurveTo","Close","forEach","seg","p1","p2","moveTo","lineTo","curveTo","close","nodeIs","node","tagsString","split","indexOf","nodeName","tagName","getAttribute","propertyNode","propertyCss","attribute","getPropertyValue","hasAttribute","svgNodeIsVisible","parentVisible","element","visible","svgNodeAndChildrenVisible","childNodes","children","child","isVisible","markers","MarkerList","marker","tf","angle","anchor","cos","sin","Matrix","matrixMult","saveGraphicsState","setLineWidth","getRendered","doFormObject","restoreGraphicsState","toPixels","pdfFontSize","match","parseFloat","mapAlignmentBaseline","parseFloats","str","floats","regex","parseColor","transparent","slice","fontAliases","sans-serif","verdana","arial","fixed","monospace","terminal","serif","cursive","fantasy","getBoundingBoxByChildren","svgnode","boundingBox","nodeBox","getBoundingBox","min","max","defaultBoundingBox","pf","computeViewBoxTransform","viewBox","eX","eY","eWidth","eHeight","noTranslate","align","meetOrSlice","vbX","vbY","vbWidth","vbHeight","scaleX","scaleY","preserveAspectRatio","alignAndMeetOrSlice","translateX","translateY","translate","scale","parseTransform","transformString","m","tSLength","mRegex","tRegex","rRegex","sRegex","sXRegex","sYRegex","resultMatrix","PI","t1","t2","SvgNode","getBoundingBoxCore","nodeTransform","computeNodeTransformCore","NonRenderedNode","parentContext","pdfGradientType","_super","_this","Gradient","colors","opacitySum","hasOpacity","stop","offset","parseGradientOffset","gState","GState","pattern","ShadingPattern","getCoordinates","addShadingPattern","parsedValue","LinearGradient","RadialGradient","cx","cy","fx","fy","gradient","GradientFill","gradientUnitsMatrix","bBox","gradientTransform","Pattern","TilingPattern","beginTilingPattern","_i","render","_b","endTilingPattern","PatternFill","patternData","xStep","yStep","patternUnitsMatrix","fillBBox","height","patternContentUnitsMatrix","patternTransformMatrix","patternTransform","parseAttributes","domNode","url","fillUrl","fillNode","fillColor","parseFill","strokeRGB","lineCap","lineJoin","dashArray","dashOffset","miterLimit","fontFamilies","FontFamily","parse","fontType","availableFonts","getFontList","firstAvailable","some","availableStyles","findFirstAvailableFontFamily","getFontSize","matchArr","applyAttributes","childContext","hasFillOpacity","hasStrokeOpacity","setGState","setFillColor","setDrawColor","setLineCap","setLineJoin","setLineDashPattern","setLineMiterLimit","setTextColor","setFont","setFontSize","internal","scaleFactor","getClipPathNode","targetNode","clipPathAttr","clipPathId","applyClipPath","clipPathNode","clipContext","RenderedNode","computeNodeTransform","hasClipPath","clipNode","renderCore","hasMarkers","GeometryNode","path","getCachedPath","setCurrentTransformationMatrix","draw","fillOrStroke","drawMarkers","cachedPath","getPath","getMarkers","getFillData","fillData","isNodeFillRuleEvenOdd","fillStrokeEvenOdd","fillStroke","fillEvenOdd","discardPath","minX","Number","POSITIVE_INFINITY","minY","maxX","NEGATIVE_INFINITY","maxY","markerStart","markerMid","markerEnd","iri","list_1","prevAngle","curAngle","first","firstAngle","last_1","curr","hasStartMarker","index","tmp","hasEndMarker","hasMidMarker","prev","addMarker","Marker","GraphicsNode","Line","box","ownerSVGElement","Use","substring","refNode","refNodeOpensViewport","refContext","Viewport","renderReferencedNode","rect","clip","beginFormObject","endFormObject","Rect","w","h","isFinite","rxAttr","ryAttr","rx","ry","arc","SQRT2","EllipseBase","getRx","getRy","lx","ly","Ellipse","getTextRenderingMode","renderingMode","removeNewlines","replaceTabsBySpace","consolidateSpaces","transformText","toUpperCase","trimRight","parent","originX","originY","texts","textNodes","TextChunk","tSpan","xs","ys","textNodeContexts","currentTextX","currentTextY","textNodeContext","tSpanStrokeColor","tSpanDx","tSpanDy","textOffset","textRenderingMode","TextNode","textX","textY","dx","dy","tSpanCount","childElementCount","trimmedText","trim","transformXmlSpace","transformedText","getTextOffset","currentTextSegment","lastPositions","tSpanAbsX","put","tSpanAbsY","tSpanXmlSpace","add","PathNode","prevX","prevY","svgPath","SvgPath","unshort","unarc","iterate","type","p3","dataUriRegex","imageUrl","imageLoadingPromise","ImageNode","fetchImageData","data","format","parser","DOMParser","svgElement","parseFromString","firstElementChild","String","dataUri","btoa","addImage","console","warn","mimeType","mimeTypeParts","Error","atob","decodeURIComponent","fetchImage","lastIndexOf","xhr","XMLHttpRequest","open","responseType","onload","status","bytes","Uint8Array","response","fromCharCode","onerror","onabort","send","closed","Traverse","points","parsePointsString","string","VoidNode","MarkerNode","tfMatrix","vb","refX","refY","bounds","Circle","getR","ContainerNode","Svg","getX","getY","getWidth","getHeight","getViewBox","widthAttr","parameters","isOutermostSvg","aspectRatio","heightAttr","xAttr","yAttr","Group","ClipPath","clipPathMatrix","inversed","fn","childNode","forEachChild","Polygon","Polyline","cssesc","rootSvg","loadExtSheets","loadExternalSheets","StyleSheets","collectStyleSheetTexts","sheetTexts","parseCssSheets","ownerDocument","loadSheet","styleElements","querySelectorAll","styleElement","all","filter","sheet","styleDoc","implementation","createHTMLDocument","sheetTexts_1","sheetText","CSSStyleSheet","cssRules","cssRule","CSSStyleRule","deleteRule","cssStyleRule","selectorText","selectors","splitSelectorAtCommas","insertRule","initialRegex","closingDoubleQuotesRegex","closingSingleQuotesRegex","parts","state","lastCommaIndex","closingQuotesRegex","lastIndex","responseText","catch","matchingRules","rule","matches","reduce","previousValue","currentValue","priorityA","getPropertyPriority","compareSpecificity","svg2pdf","options","extCss","loadExternalStyleSheets","load","_d","pageSize","advancedAPI","compatAPI","cleanupTextMeasuring","jsPDF","API"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"svg2pdf.es.min.js","sources":["../node_modules/tslib/tslib.es6.js","../src/utils/rgbcolor.ts","../src/fill/ColorFill.ts","../src/context/attributestate.ts","../src/utils/constants.ts","../src/context/textmeasure.ts","../src/context/context.ts","../src/context/referenceshandler.ts","../src/utils/geometry.ts","../src/utils/path.ts","../src/utils/node.ts","../src/markerlist.ts","../src/utils/misc.ts","../src/utils/parsing.ts","../src/utils/fonts.ts","../src/utils/bbox.ts","../src/utils/transform.ts","../src/nodes/svgnode.ts","../src/nodes/nonrenderednode.ts","../src/nodes/gradient.ts","../src/nodes/lineargradient.ts","../src/nodes/radialgradient.ts","../src/fill/GradientFill.ts","../src/nodes/pattern.ts","../src/fill/PatternFill.ts","../src/applyparseattributes.ts","../src/fill/parseFill.ts","../src/utils/applyclippath.ts","../src/nodes/renderednode.ts","../src/nodes/graphicsnode.ts","../src/nodes/geometrynode.ts","../src/nodes/line.ts","../src/nodes/symbol.ts","../src/context/viewport.ts","../src/nodes/use.ts","../src/nodes/rect.ts","../src/nodes/ellipsebase.ts","../src/nodes/ellipse.ts","../src/utils/text.ts","../src/textchunk.ts","../src/nodes/text.ts","../src/nodes/path.ts","../src/nodes/image.ts","../src/nodes/traverse.ts","../src/nodes/polygon.ts","../src/nodes/void.ts","../src/nodes/marker.ts","../src/nodes/circle.ts","../src/nodes/polyline.ts","../src/nodes/containernode.ts","../src/nodes/svg.ts","../src/nodes/group.ts","../src/nodes/clippath.ts","../src/parse.ts","../src/context/stylesheets.ts","../src/svg2pdf.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","hasOwnProperty","__extends","__","this","constructor","prototype","create","__assign","assign","t","s","i","n","arguments","length","call","apply","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","__generator","body","f","y","g","_","label","sent","trys","ops","verb","throw","return","Symbol","iterator","v","op","TypeError","pop","push","colorString","undefined","ok","key","charAt","substr","replace","toLowerCase","simpleColors","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgrey","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","feldspar","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgrey","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslateblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","violetred","wheat","white","whitesmoke","yellow","yellowgreen","colorDefs","re","example","process","bits","parseInt","processor","exec","channels","r","isNaN","RGBColor","a","toString","examples","j","sc","xml","document","createElement","setAttribute","listItem","listColor","exampleDiv","style","cssText","toHex","appendChild","createTextNode","listItemValue","toRGB","color","ColorFill","forNode","context","AttributeState","clone","xmlSpace","fill","fillOpacity","fontFamily","fontSize","fontStyle","fontWeight","opacity","stroke","strokeDasharray","strokeDashoffset","strokeLinecap","strokeLinejoin","strokeMiterlimit","strokeOpacity","strokeWidth","textAnchor","alignmentBaseline","visibility","attributeState","iriReference","alignmentBaselineMap","bottom","text-bottom","top","text-top","hanging","middle","central","center","mathematical","ideographic","alphabetic","baseline","TextMeasure","text","width","measureTextWidth","xOffset","getMeasureFunction","textMeasuringTextElement","createElementNS","svg","setProperty","getContext","font","join","measureText","measurementTextNode","getMeasurementTextNode","textNode","setAttributeNS","textContent","getBBox","method","measureMethods","canvasWidth","canvasTextMeasure","testString","svgWidth","svgTextMeasure","Math","abs","epsilon","parentNode","removeChild","pdf","values","svg2pdfParameters","default","viewport","refsHandler","styleSheets","textMeasure","transform","unitMatrix","withinClipPath","withinUse","Context","idMap","renderedElements","ReferencesHandler","id","renderCallback","generateKey","svgNode","get","_a","cssEsc","isIdentifier","toRGBA","getAngle","from","to","atan2","toCubic","normalize","sqrt","getDirectionVector","addVectors","v1","v2","multVecMatrix","vec","matrix","x","c","segments","Path","MoveTo","LineTo","x1","y1","x2","y2","CurveTo","Close","forEach","seg","p1","p2","moveTo","lineTo","curveTo","close","nodeIs","node","tagsString","split","indexOf","nodeName","tagName","getAttribute","propertyNode","propertyCss","attribute","getPropertyValue","propertyValue","hasAttribute","svgNodeIsVisible","parentVisible","element","visible","svgNodeAndChildrenVisible","childNodes","children","child","isVisible","markers","MarkerList","marker","tf","angle","anchor","cos","sin","Matrix","matrixMult","saveGraphicsState","setLineWidth","getRendered","doFormObject","restoreGraphicsState","toPixels","pdfFontSize","match","parseFloat","mapAlignmentBaseline","parseFloats","str","floats","regex","parseColor","currentcolor","transparent","slice","fontAliases","sans-serif","verdana","arial","fixed","monospace","terminal","serif","cursive","fantasy","getBoundingBoxByChildren","svgnode","boundingBox","nodeBox","getBoundingBox","min","max","defaultBoundingBox","pf","computeViewBoxTransform","viewBox","eX","eY","eWidth","eHeight","noTranslate","align","meetOrSlice","vbX","vbY","vbWidth","vbHeight","scaleX","scaleY","preserveAspectRatio","alignAndMeetOrSlice","translateX","translateY","translate","scale","parseTransform","transformString","m","tSLength","mRegex","tRegex","rRegex","sRegex","sXRegex","sYRegex","resultMatrix","PI","t1","t2","parent","SvgNode","getBoundingBoxCore","nodeTransform","computeNodeTransformCore","NonRenderedNode","parentContext","pdfGradientType","_super","_this","contextColor","Gradient","ancestor","colorAttr","getParent","colors","opacitySum","hasOpacity","stop","offset","parseGradientOffset","gState","GState","pattern","ShadingPattern","getCoordinates","addShadingPattern","parsedValue","LinearGradient","RadialGradient","cx","cy","fx","fy","gradient","GradientFill","gradientUnitsMatrix","bBox","gradientTransform","Pattern","TilingPattern","beginTilingPattern","_i","render","_b","endTilingPattern","PatternFill","patternData","xStep","yStep","patternUnitsMatrix","fillBBox","height","patternContentUnitsMatrix","patternTransformMatrix","patternTransform","parseAttributes","domNode","fillColor","url","fillUrl","fillNode","parseFill","strokeRGB","lineCap","lineJoin","dashArray","dashOffset","miterLimit","fontFamilies","FontFamily","parse","fontType","availableFonts","getFontList","firstAvailable","some","availableStyles","findFirstAvailableFontFamily","getFontSize","matchArr","applyAttributes","childContext","hasFillOpacity","hasStrokeOpacity","setGState","setFillColor","setDrawColor","setLineCap","setLineJoin","setLineDashPattern","setLineMiterLimit","setTextColor","setFont","setFontSize","internal","scaleFactor","getClipPathNode","targetNode","clipPathAttr","clipPathId","applyClipPath","clipPathNode","clipContext","RenderedNode","computeNodeTransform","hasClipPath","clipNode","renderCore","hasMarkers","GeometryNode","path","getCachedPath","setCurrentTransformationMatrix","draw","fillOrStroke","drawMarkers","cachedPath","getPath","getMarkers","getFillData","fillData","isNodeFillRuleEvenOdd","fillStrokeEvenOdd","fillStroke","fillEvenOdd","discardPath","minX","Number","POSITIVE_INFINITY","minY","maxX","NEGATIVE_INFINITY","maxY","markerStart","markerMid","markerEnd","iri","list_1","prevAngle","curAngle","first","firstAngle","last_1","curr","hasStartMarker","index","tmp","hasEndMarker","hasMidMarker","prev","addMarker","Marker","GraphicsNode","Line","box","ownerSVGElement","Use","substring","refNode","refNodeOpensViewport","refContext","Viewport","renderReferencedNode","rect","clip","beginFormObject","endFormObject","Rect","w","h","isFinite","rxAttr","ryAttr","rx","ry","arc","SQRT2","EllipseBase","getRx","getRy","lx","ly","Ellipse","getTextRenderingMode","renderingMode","removeNewlines","replaceTabsBySpace","consolidateSpaces","transformText","toUpperCase","originX","originY","texts","textNodes","contexts","textMeasures","TextChunk","tSpan","charSpace","textNodeContext","alreadySeen","xs","ys","currentTextX","currentTextY","includes","tSpanDx","tSpanDy","textOffset","textRenderingMode","TextNode","textChunks","currentTextSegment","trimInfo","firstText","initialSpace","childNode","trimmedText","prevText","transformedText","add","prevContext","tSpanAbsX","type","chunk","tSpanAbsY","processTSpans","lengthAdjustment","textX","textY","dx","dy","textLength","childElementCount","trim","transformXmlSpace","getTextOffset","defaultSize","trimRight","rightTrimText","totalDefaultWidth_1","totalLength_1","reduce","lastPositions","setX","setY","put","PathNode","prevX","prevY","svgPath","SvgPath","unshort","unarc","iterate","p3","dataUriRegex","imageUrl","imageLoadingPromise","ImageNode","fetchImageData","data","format","parser","DOMParser","svgElement","parseFromString","firstElementChild","String","dataUri","btoa","addImage","console","warn","mimeType","mimeTypeParts","Error","atob","decodeURIComponent","fetchImage","lastIndexOf","xhr","XMLHttpRequest","open","responseType","onload","status","bytes","Uint8Array","response","fromCharCode","onerror","onabort","send","closed","Traverse","points","parsePointsString","string","VoidNode","MarkerNode","tfMatrix","vb","refX","refY","bounds","Circle","getR","ContainerNode","Svg","getX","getY","getWidth","getHeight","getViewBox","widthAttr","parameters","isOutermostSvg","aspectRatio","heightAttr","xAttr","yAttr","Group","ClipPath","clipPathMatrix","inversed","fn","forEachChild","Polygon","Polyline","cssesc","setParent","rootSvg","loadExtSheets","loadExternalSheets","StyleSheets","collectStyleSheetTexts","sheetTexts","parseCssSheets","ownerDocument","loadSheet","styleElements","querySelectorAll","styleElement","all","filter","sheet","styleDoc","implementation","createHTMLDocument","sheetTexts_1","sheetText","CSSStyleSheet","cssRules","cssRule","CSSStyleRule","deleteRule","cssStyleRule","selectorText","selectors","splitSelectorAtCommas","insertRule","initialRegex","closingDoubleQuotesRegex","closingSingleQuotesRegex","parts","state","lastCommaIndex","closingQuotesRegex","lastIndex","responseText","catch","matchingRules","rule","matches","previousValue","currentValue","priorityA","getPropertyPriority","compareSpecificity","svg2pdf","options","extCss","loadExternalStyleSheets","load","_d","pageSize","advancedAPI","compatAPI","cleanupTextMeasuring","jsPDF","API"],"mappings":"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"} \ No newline at end of file diff --git a/dist/svg2pdf.umd.js b/dist/svg2pdf.umd.js index 17bc8731..baff4bd8 100644 --- a/dist/svg2pdf.umd.js +++ b/dist/svg2pdf.umd.js @@ -108,6 +108,7 @@ } } + /* eslint-disable @typescript-eslint/no-explicit-any,@typescript-eslint/explicit-module-boundary-types */ var RGBColor = /** @class */ (function () { function RGBColor(colorString) { this.a = undefined; @@ -115,6 +116,7 @@ this.g = 0; this.b = 0; this.simpleColors = {}; + // eslint-disable-next-line @typescript-eslint/ban-types this.colorDefs = []; this.ok = false; if (!colorString) { @@ -336,6 +338,9 @@ RGBColor.prototype.toRGB = function () { return 'rgb(' + this.r + ', ' + this.g + ', ' + this.b + ')'; }; + RGBColor.prototype.toRGBA = function () { + return 'rgba(' + this.r + ', ' + this.g + ', ' + this.b + ', ' + (this.a || '1') + ')'; + }; RGBColor.prototype.toHex = function () { var r = this.r.toString(16); var g = this.g.toString(16); @@ -394,6 +399,7 @@ function ColorFill(color) { this.color = color; } + // eslint-disable-next-line @typescript-eslint/no-unused-vars ColorFill.prototype.getFillData = function (forNode, context) { return __awaiter(this, void 0, void 0, function () { return __generator(this, function (_a) { @@ -428,6 +434,7 @@ this.alignmentBaseline = ''; this.textAnchor = ''; this.visibility = ''; + this.color = null; } AttributeState.prototype.clone = function () { var clone = new AttributeState(); @@ -453,6 +460,7 @@ clone.textAnchor = this.textAnchor; clone.alignmentBaseline = this.alignmentBaseline; clone.visibility = this.visibility; + clone.color = this.color; return clone; }; AttributeState.default = function () { @@ -479,6 +487,7 @@ attributeState.alignmentBaseline = 'baseline'; attributeState.textAnchor = 'start'; attributeState.visibility = 'visible'; + attributeState.color = new RGBColor('rgb(0, 0, 0)'); return attributeState; }; return AttributeState; @@ -758,17 +767,18 @@ this.renderedElements = {}; this.idMap = idMap; } - ReferencesHandler.prototype.getRendered = function (id, renderCallback) { + ReferencesHandler.prototype.getRendered = function (id, color, renderCallback) { return __awaiter(this, void 0, void 0, function () { - var svgNode; + var key, svgNode; return __generator(this, function (_a) { switch (_a.label) { case 0: - if (this.renderedElements.hasOwnProperty(id)) { + key = ReferencesHandler.generateKey(id, color); + if (this.renderedElements.hasOwnProperty(key)) { return [2 /*return*/, this.renderedElements[id]]; } svgNode = this.get(id); - this.renderedElements[id] = svgNode; + this.renderedElements[key] = svgNode; return [4 /*yield*/, renderCallback(svgNode)]; case 1: _a.sent(); @@ -780,6 +790,9 @@ ReferencesHandler.prototype.get = function (id) { return this.idMap[cssesc_1(id, { isIdentifier: true })]; }; + ReferencesHandler.generateKey = function (id, color) { + return id + '|' + (color || new RGBColor('rgb(0,0,0)')).toRGBA(); + }; return ReferencesHandler; }()); @@ -921,14 +934,17 @@ if (attribute) { return attribute; } - else if (styleSheets.getPropertyValue(node, propertyCss)) { - return styleSheets.getPropertyValue(node, propertyCss); - } - else if (node.hasAttribute(propertyNode)) { - return node.getAttribute(propertyNode) || undefined; - } else { - return undefined; + var propertyValue = styleSheets.getPropertyValue(node, propertyCss); + if (propertyValue) { + return propertyValue; + } + else if (node.hasAttribute(propertyNode)) { + return node.getAttribute(propertyNode) || undefined; + } + else { + return undefined; + } } } function svgNodeIsVisible(svgNode, parentVisible, context) { @@ -989,7 +1005,9 @@ // as the marker is already scaled by the current line width we must not apply the line width twice! context.pdf.saveGraphicsState(); context.pdf.setLineWidth(1.0); - return [4 /*yield*/, context.refsHandler.getRendered(marker.id, function (node) { return node.apply(context); })]; + return [4 /*yield*/, context.refsHandler.getRendered(marker.id, null, function (node) { + return node.apply(context); + })]; case 2: _a.sent(); context.pdf.doFormObject(marker.id, tf); @@ -1012,8 +1030,6 @@ */ var Marker = /** @class */ (function () { function Marker(id, anchor, angle) { - // eslint-disable-next-line @typescript-eslint/ban-ts-ignore - // @ts-ignore this.id = id; this.anchor = anchor; this.angle = angle; @@ -1057,13 +1073,19 @@ } return floats; } - // extends RGBColor by rgba colors as RGBColor is not capable of it - function parseColor(colorString) { + /** + * extends RGBColor by rgba colors as RGBColor is not capable of it + * currentcolor: the color to return if colorString === 'currentcolor' + */ + function parseColor(colorString, currentcolor) { if (colorString === 'transparent') { var transparent = new RGBColor('rgb(0,0,0)'); transparent.a = 0; return transparent; } + if (colorString.toLowerCase() === 'currentcolor') { + return currentcolor || new RGBColor('rgb(0,0,0)'); + } var match = /\s*rgba\(((?:[^,\)]*,){3}[^,\)]*)\)\s*/.exec(colorString); if (match) { var floats = parseFloats(match[1]); @@ -1309,7 +1331,7 @@ // export // ====== - var C__Users_hollaender_Documents_svg2pdf_svg2pdf_js_node_modules_fontFamilyPapandreou = { + var C__Users_hollaender_Documents_github_svg2pdf_node_modules_fontFamilyPapandreou = { parse: parse, stringify: stringify, }; @@ -1376,6 +1398,7 @@ return boundingBox; } function defaultBoundingBox(element, context) { + // eslint-disable-next-line @typescript-eslint/no-explicit-any var pf = parseFloat; // TODO: check if there are other possible coordinate attributes var x1 = pf(element.getAttribute('x1')) || @@ -1463,7 +1486,7 @@ function parseTransform(transformString, context) { if (!transformString || transformString === 'none') return context.pdf.unitMatrix; - var mRegex = /^[\s,]*matrix\(([^\)]+)\)\s*/, tRegex = /^[\s,]*translate\(([^\)]+)\)\s*/, rRegex = /^[\s,]*rotate\(([^\)]+)\)\s*/, sRegex = /^[\s,]*scale\(([^\)]+)\)\s*/, sXRegex = /^[\s,]*skewX\(([^\)]+)\)\s*/, sYRegex = /^[\s,]*skewY\(([^\)]+)\)\s*/; + var mRegex = /^[\s,]*matrix\(([^)]+)\)\s*/, tRegex = /^[\s,]*translate\(([^)]+)\)\s*/, rRegex = /^[\s,]*rotate\(([^)]+)\)\s*/, sRegex = /^[\s,]*scale\(([^)]+)\)\s*/, sXRegex = /^[\s,]*skewX\(([^)]+)\)\s*/, sYRegex = /^[\s,]*skewY\(([^)]+)\)\s*/; var resultMatrix = context.pdf.unitMatrix; var m; var tSLength; @@ -1523,7 +1546,14 @@ function SvgNode(element, children) { this.element = element; this.children = children; + this.parent = null; } + SvgNode.prototype.setParent = function (parent) { + this.parent = parent; + }; + SvgNode.prototype.getParent = function () { + return this.parent; + }; SvgNode.prototype.getBoundingBox = function (context) { if (getAttribute(this.element, context.styleSheets, 'display') === 'none') { return [0, 0, 0, 0]; @@ -1546,9 +1576,11 @@ function NonRenderedNode() { return _super !== null && _super.apply(this, arguments) || this; } + // eslint-disable-next-line @typescript-eslint/no-unused-vars NonRenderedNode.prototype.render = function (parentContext) { return Promise.resolve(); }; + // eslint-disable-next-line @typescript-eslint/no-unused-vars NonRenderedNode.prototype.getBoundingBoxCore = function (context) { return []; }; @@ -1563,22 +1595,38 @@ function Gradient(pdfGradientType, element, children) { var _this = _super.call(this, element, children) || this; _this.pdfGradientType = pdfGradientType; + _this.contextColor = undefined; return _this; } Gradient.prototype.apply = function (context) { return __awaiter(this, void 0, void 0, function () { - var id, colors, opacitySum, hasOpacity, gState, pattern; + var id, ancestor, colorAttr, colors, opacitySum, hasOpacity, gState, pattern; + var _this = this; return __generator(this, function (_a) { id = this.element.getAttribute('id'); if (!id) { return [2 /*return*/]; } + // Only need to calculate contextColor once + if (this.contextColor === undefined) { + this.contextColor = null; + ancestor = this; + while (ancestor) { + colorAttr = getAttribute(ancestor.element, context.styleSheets, 'color'); + if (colorAttr) { + this.contextColor = parseColor(colorAttr, null); + break; + } + ancestor = ancestor.getParent(); + } + } colors = []; opacitySum = 0; hasOpacity = false; this.children.forEach(function (stop) { if (stop.element.tagName.toLowerCase() === 'stop') { - var color = new RGBColor(getAttribute(stop.element, context.styleSheets, 'stop-color')); + var colorAttr = getAttribute(stop.element, context.styleSheets, 'color'); + var color = parseColor(getAttribute(stop.element, context.styleSheets, 'stop-color') || '', colorAttr ? parseColor(colorAttr, null) : _this.contextColor); colors.push({ offset: Gradient.parseGradientOffset(stop.element.getAttribute('offset') || '0'), color: [color.r, color.g, color.b] @@ -1669,7 +1717,7 @@ var gradientUnitsMatrix, bBox, gradientTransform; return __generator(this, function (_a) { switch (_a.label) { - case 0: return [4 /*yield*/, context.refsHandler.getRendered(this.key, function (node) { + case 0: return [4 /*yield*/, context.refsHandler.getRendered(this.key, null, function (node) { return node.apply(new Context(context.pdf, { refsHandler: context.refsHandler, textMeasure: context.textMeasure, @@ -1685,8 +1733,6 @@ case 1: _a.sent(); if (!this.gradient.element.hasAttribute('gradientUnits') || - // eslint-disable-next-line @typescript-eslint/ban-ts-ignore - // @ts-ignore this.gradient.element.getAttribute('gradientUnits').toLowerCase() === 'objectboundingbox') { bBox = forNode.getBoundingBox(context); gradientUnitsMatrix = context.pdf.Matrix(bBox[2], 0, 0, bBox[3], bBox[0], bBox[1]); @@ -1771,7 +1817,7 @@ var patternData, bBox, patternUnitsMatrix, fillBBox, x, y, width, height, patternContentUnitsMatrix, fillBBox, x, y, width, height, patternTransformMatrix, patternTransform, matrix; return __generator(this, function (_a) { switch (_a.label) { - case 0: return [4 /*yield*/, context.refsHandler.getRendered(this.key, function (node) { + case 0: return [4 /*yield*/, context.refsHandler.getRendered(this.key, null, function (node) { return node.apply(new Context(context.pdf, { refsHandler: context.refsHandler, textMeasure: context.textMeasure, @@ -1854,7 +1900,7 @@ } else { // plain color - var fillColor = parseColor(fill); + var fillColor = parseColor(fill, context.attributeState.color); if (fillColor.ok) { return new ColorFill(fillColor); } @@ -1869,6 +1915,18 @@ function parseAttributes(context, svgNode, node) { var domNode = node || svgNode.element; + // update color first so currentColor becomes available for this node + var color = getAttribute(domNode, context.styleSheets, 'color'); + if (color) { + var fillColor = parseColor(color, context.attributeState.color); + if (fillColor.ok) { + context.attributeState.color = fillColor; + } + else { + // invalid color passed, reset to black + context.attributeState.color = new RGBColor('rgb(0,0,0)'); + } + } var visibility = getAttribute(domNode, context.styleSheets, 'visibility'); if (visibility) { context.attributeState.visibility = visibility; @@ -1894,8 +1952,7 @@ // stroke mode var strokeWidth = getAttribute(domNode, context.styleSheets, 'stroke-width'); if (strokeWidth !== void 0 && strokeWidth !== '') { - strokeWidth = Math.abs(parseFloat(strokeWidth)); - context.attributeState.strokeWidth = strokeWidth; + context.attributeState.strokeWidth = Math.abs(parseFloat(strokeWidth)); } var stroke = getAttribute(domNode, context.styleSheets, 'stroke'); if (stroke) { @@ -1904,7 +1961,7 @@ } else { // gradients, patterns not supported for strokes ... - var strokeRGB = parseColor(stroke); + var strokeRGB = parseColor(stroke, context.attributeState.color); if (strokeRGB.ok) { context.attributeState.stroke = new ColorFill(strokeRGB); } @@ -1920,9 +1977,8 @@ } var dashArray = getAttribute(domNode, context.styleSheets, 'stroke-dasharray'); if (dashArray) { - dashArray = parseFloats(dashArray); var dashOffset = parseInt(getAttribute(domNode, context.styleSheets, 'stroke-dashoffset') || '0'); - context.attributeState.strokeDasharray = dashArray; + context.attributeState.strokeDasharray = parseFloats(dashArray); context.attributeState.strokeDashoffset = dashOffset; } var miterLimit = getAttribute(domNode, context.styleSheets, 'stroke-miterlimit'); @@ -1943,7 +1999,7 @@ } var fontFamily = getAttribute(domNode, context.styleSheets, 'font-family'); if (fontFamily) { - var fontFamilies = C__Users_hollaender_Documents_svg2pdf_svg2pdf_js_node_modules_fontFamilyPapandreou.parse(fontFamily); + var fontFamilies = C__Users_hollaender_Documents_github_svg2pdf_node_modules_fontFamilyPapandreou.parse(fontFamily); context.attributeState.fontFamily = findFirstAvailableFontFamily(context.attributeState, fontFamilies, context); } var fontSize = getAttribute(domNode, context.styleSheets, 'font-size'); @@ -2556,7 +2612,7 @@ } Use.prototype.renderCore = function (context) { return __awaiter(this, void 0, void 0, function () { - var pf, url, id, refNode, refNodeOpensViewport, x, y, width, height, t, viewBox, refContext; + var pf, url, id, refNode, refNodeOpensViewport, x, y, width, height, t, viewBox, refContext, color; return __generator(this, function (_a) { switch (_a.label) { case 0: @@ -2598,7 +2654,10 @@ viewport: refNodeOpensViewport ? new Viewport(width, height) : context.viewport, svg2pdfParameters: context.svg2pdfParameters }); - return [4 /*yield*/, context.refsHandler.getRendered(id, function (node) { return Use.renderReferencedNode(node, refContext); })]; + color = context.attributeState.color; + return [4 /*yield*/, context.refsHandler.getRendered(id, color, function (node) { + return Use.renderReferencedNode(node, id, color, refContext); + })]; case 1: _a.sent(); context.pdf.saveGraphicsState(); @@ -2609,14 +2668,14 @@ context.pdf.rect(x, y, width, height); context.pdf.clip().discardPath(); } - context.pdf.doFormObject(id, t); + context.pdf.doFormObject(ReferencesHandler.generateKey(id, color), t); context.pdf.restoreGraphicsState(); return [2 /*return*/]; } }); }); }; - Use.renderReferencedNode = function (node, refContext) { + Use.renderReferencedNode = function (node, id, color, refContext) { return __awaiter(this, void 0, void 0, function () { var bBox; return __generator(this, function (_a) { @@ -2628,6 +2687,8 @@ // So, make the bBox a lot larger than it needs to be and hope any thick strokes are // still within. bBox = [bBox[0] - 0.5 * bBox[2], bBox[1] - 0.5 * bBox[3], bBox[2] * 2, bBox[3] * 2]; + // set the color to use for the referenced node + refContext.attributeState.color = color; refContext.pdf.beginFormObject(bBox[0], bBox[1], bBox[2], bBox[3], refContext.pdf.unitMatrix); if (!(node instanceof Symbol$1)) return [3 /*break*/, 2]; return [4 /*yield*/, node.apply(refContext)]; @@ -2639,7 +2700,7 @@ _a.sent(); _a.label = 4; case 4: - refContext.pdf.endFormObject(node.element.getAttribute('id')); + refContext.pdf.endFormObject(ReferencesHandler.generateKey(id, color)); return [2 /*return*/]; } }); @@ -2811,56 +2872,74 @@ this.textNode = parent; this.texts = []; this.textNodes = []; + this.contexts = []; this.textAnchor = textAnchor; this.originX = originX; this.originY = originY; + this.textMeasures = []; } - TextChunk.prototype.add = function (tSpan, text) { + TextChunk.prototype.setX = function (originX) { + this.originX = originX; + }; + TextChunk.prototype.setY = function (originY) { + this.originY = originY; + }; + TextChunk.prototype.add = function (tSpan, text, context) { this.texts.push(text); this.textNodes.push(tSpan); + this.contexts.push(context); + }; + TextChunk.prototype.rightTrimText = function () { + for (var r = this.texts.length - 1; r >= 0; r--) { + if (this.contexts[r].attributeState.xmlSpace === 'default') { + this.texts[r] = trimRight(this.texts[r]); + } + // If find a letter, stop right-trimming + if (this.texts[r].match(/[^\s]/)) { + return false; + } + } + return true; + }; + TextChunk.prototype.measureText = function (context) { + for (var i = 0; i < this.texts.length; i++) { + this.textMeasures.push({ + width: context.textMeasure.measureTextWidth(this.texts[i], this.contexts[i].attributeState), + length: this.texts[i].length + }); + } }; - TextChunk.prototype.put = function (context) { - var i, textNode; - var strokeRGB; - var xs = [], ys = [], textNodeContexts = []; + TextChunk.prototype.put = function (context, charSpace) { + var i, textNode, textNodeContext, textMeasure; + var alreadySeen = []; + var xs = [], ys = []; var currentTextX = this.originX, currentTextY = this.originY; var minX = currentTextX, maxX = currentTextX; for (i = 0; i < this.textNodes.length; i++) { textNode = this.textNodes[i]; + textNodeContext = this.contexts[i]; + textMeasure = this.textMeasures[i] || { + width: context.textMeasure.measureTextWidth(this.texts[i], this.contexts[i].attributeState), + length: this.texts[i].length + }; var x = currentTextX; var y = currentTextY; - var textNodeContext = void 0; - if (textNode.nodeName === '#text') { - textNodeContext = context; - } - else { - textNodeContext = context.clone(); - parseAttributes(textNodeContext, this.textNode, textNode); - var tSpanStrokeColor = getAttribute(textNode, context.styleSheets, 'stroke'); - if (tSpanStrokeColor) { - strokeRGB = new RGBColor(tSpanStrokeColor); - if (strokeRGB.ok) { - textNodeContext.attributeState.stroke = new ColorFill(strokeRGB); + if (textNode.nodeName !== '#text') { + if (!alreadySeen.includes(textNode)) { + alreadySeen.push(textNode); + var tSpanDx = textNode.getAttribute('dx'); + if (tSpanDx !== null) { + x += toPixels(tSpanDx, textNodeContext.attributeState.fontSize); + } + var tSpanDy = textNode.getAttribute('dy'); + if (tSpanDy !== null) { + y += toPixels(tSpanDy, textNodeContext.attributeState.fontSize); } - } - var strokeWidth = getAttribute(textNode, context.styleSheets, 'stroke-width'); - if (strokeWidth !== void 0) { - textNodeContext.attributeState.strokeWidth = parseFloat(strokeWidth); - } - var tSpanDx = textNode.getAttribute('dx'); - if (tSpanDx !== null) { - x += toPixels(tSpanDx, textNodeContext.attributeState.fontSize); - } - var tSpanDy = textNode.getAttribute('dy'); - if (tSpanDy !== null) { - y += toPixels(tSpanDy, textNodeContext.attributeState.fontSize); } } - textNodeContexts[i] = textNodeContext; xs[i] = x; ys[i] = y; - currentTextX = - x + context.textMeasure.measureTextWidth(this.texts[i], textNodeContext.attributeState); + currentTextX = x + textMeasure.width + textMeasure.length * charSpace; currentTextY = y; minX = Math.min(minX, x); maxX = Math.max(maxX, currentTextX); @@ -2879,21 +2958,21 @@ } for (i = 0; i < this.textNodes.length; i++) { textNode = this.textNodes[i]; + textNodeContext = this.contexts[i]; if (textNode.nodeName !== '#text') { - var tSpanVisibility = getAttribute(textNode, context.styleSheets, 'visibility') || - context.attributeState.visibility; - if (tSpanVisibility === 'hidden') { + if (textNodeContext.attributeState.visibility === 'hidden') { continue; } } context.pdf.saveGraphicsState(); - applyAttributes(textNodeContexts[i], context, textNode); - var alignmentBaseline = textNodeContexts[i].attributeState.alignmentBaseline; - var textRenderingMode = getTextRenderingMode(textNodeContexts[i].attributeState); + applyAttributes(textNodeContext, context, textNode); + var alignmentBaseline = textNodeContext.attributeState.alignmentBaseline; + var textRenderingMode = getTextRenderingMode(textNodeContext.attributeState); context.pdf.text(this.texts[i], xs[i] - textOffset, ys[i], { baseline: mapAlignmentBaseline(alignmentBaseline), angle: context.transform, - renderingMode: textRenderingMode === 'fill' ? void 0 : textRenderingMode + renderingMode: textRenderingMode === 'fill' ? void 0 : textRenderingMode, + charSpace: charSpace === 0 ? void 0 : charSpace }); context.pdf.restoreGraphicsState(); } @@ -2907,92 +2986,141 @@ function TextNode() { return _super !== null && _super.apply(this, arguments) || this; } + TextNode.prototype.processTSpans = function (textNode, node, context, textChunks, currentTextSegment, trimInfo) { + var pdfFontSize = context.pdf.getFontSize(); + var xmlSpace = context.attributeState.xmlSpace; + var firstText = true, initialSpace = false; + for (var i = 0; i < node.childNodes.length; i++) { + var childNode = node.childNodes[i]; + if (!childNode.textContent) { + continue; + } + var textContent = childNode.textContent; + if (childNode.nodeName === '#text') { + var trimmedText = removeNewlines(textContent); + trimmedText = replaceTabsBySpace(trimmedText); + if (xmlSpace === 'default') { + trimmedText = consolidateSpaces(trimmedText); + // If first text in tspan and starts with a space + if (firstText && trimmedText.match(/^\s/)) { + initialSpace = true; + } + // No longer the first text if we've found a letter + if (trimmedText.match(/[^\s]/)) { + firstText = false; + } + // Consolidate spaces across different children + if (trimInfo.prevText.match(/\s$/)) { + trimmedText = trimLeft(trimmedText); + } + } + var transformedText = transformText(node, trimmedText, context); + currentTextSegment.add(node, transformedText, context); + trimInfo.prevText = textContent; + trimInfo.prevContext = context; + } + else if (nodeIs(childNode, 'title')) ; + else if (nodeIs(childNode, 'tspan')) { + var tSpan = childNode; + var tSpanAbsX = tSpan.getAttribute('x'); + if (tSpanAbsX !== null) { + var x = toPixels(tSpanAbsX, pdfFontSize); + currentTextSegment = new TextChunk(this, getAttribute(tSpan, context.styleSheets, 'text-anchor') || + context.attributeState.textAnchor, x, 0); + textChunks.push({ type: 'y', chunk: currentTextSegment }); + } + var tSpanAbsY = tSpan.getAttribute('y'); + if (tSpanAbsY !== null) { + var y = toPixels(tSpanAbsY, pdfFontSize); + currentTextSegment = new TextChunk(this, getAttribute(tSpan, context.styleSheets, 'text-anchor') || + context.attributeState.textAnchor, 0, y); + textChunks.push({ type: 'x', chunk: currentTextSegment }); + } + var childContext = context.clone(); + parseAttributes(childContext, textNode, tSpan); + this.processTSpans(textNode, tSpan, childContext, textChunks, currentTextSegment, trimInfo); + } + } + return initialSpace; + }; TextNode.prototype.renderCore = function (context) { return __awaiter(this, void 0, void 0, function () { - var xOffset, pdfFontSize, textX, textY, dx, dy, visibility, tSpanCount, trimmedText, transformedText, alignmentBaseline, textRenderingMode, currentTextSegment, i, textNode, xmlSpace, textContent, tSpan, j, lastPositions, tSpanAbsX, x, tSpanAbsY, y, tSpanXmlSpace, trimmedText, transformedText; + var xOffset, charSpace, lengthAdjustment, pdfFontSize, textX, textY, dx, dy, textLength, visibility, tSpanCount, textContent, trimmedText, transformedText, defaultSize, alignmentBaseline, textRenderingMode, textChunks, currentTextSegment, initialSpace, trimRight, r, totalDefaultWidth_1, totalLength_1; return __generator(this, function (_a) { context.pdf.saveGraphicsState(); xOffset = 0; + charSpace = 0; + lengthAdjustment = 1; pdfFontSize = context.pdf.getFontSize(); textX = toPixels(this.element.getAttribute('x'), pdfFontSize); textY = toPixels(this.element.getAttribute('y'), pdfFontSize); dx = toPixels(this.element.getAttribute('dx'), pdfFontSize); dy = toPixels(this.element.getAttribute('dy'), pdfFontSize); + textLength = parseFloat(this.element.getAttribute('textLength') || '0'); visibility = context.attributeState.visibility; tSpanCount = this.element.childElementCount; if (tSpanCount === 0) { - trimmedText = transformXmlSpace(this.element.textContent || '', context.attributeState); + textContent = this.element.textContent || ''; + trimmedText = transformXmlSpace(textContent, context.attributeState); transformedText = transformText(this.element, trimmedText, context); xOffset = context.textMeasure.getTextOffset(transformedText, context.attributeState); + if (textLength > 0) { + defaultSize = context.textMeasure.measureTextWidth(transformedText, context.attributeState); + if (context.attributeState.xmlSpace === 'default' && textContent.match(/^\s/)) { + lengthAdjustment = 0; + } + charSpace = (textLength - defaultSize) / (transformedText.length - lengthAdjustment) || 0; + } if (visibility === 'visible') { alignmentBaseline = context.attributeState.alignmentBaseline; textRenderingMode = getTextRenderingMode(context.attributeState); context.pdf.text(transformedText, textX + dx - xOffset, textY + dy, { baseline: mapAlignmentBaseline(alignmentBaseline), angle: context.transform, - renderingMode: textRenderingMode === 'fill' ? void 0 : textRenderingMode + renderingMode: textRenderingMode === 'fill' ? void 0 : textRenderingMode, + charSpace: charSpace === 0 ? void 0 : charSpace }); } } else { + textChunks = []; currentTextSegment = new TextChunk(this, context.attributeState.textAnchor, textX + dx, textY + dy); - for (i = 0; i < this.element.childNodes.length; i++) { - textNode = this.element.childNodes[i]; - if (!textNode.textContent) { - continue; + textChunks.push({ type: '', chunk: currentTextSegment }); + initialSpace = this.processTSpans(this, this.element, context, textChunks, currentTextSegment, + // Set prevText to ' ' so any spaces on left of <text> are trimmed + { prevText: ' ', prevContext: context }); + lengthAdjustment = initialSpace ? 0 : 1; + trimRight = true; + for (r = textChunks.length - 1; r >= 0; r--) { + if (trimRight) { + trimRight = textChunks[r].chunk.rightTrimText(); } - xmlSpace = context.attributeState.xmlSpace; - textContent = textNode.textContent; - if (textNode.nodeName === '#text') ; - else if (nodeIs(textNode, 'title')) { - continue; - } - else if (nodeIs(textNode, 'tspan')) { - tSpan = textNode; - if (tSpan.childElementCount > 0) { - // filter <title> elements... - textContent = ''; - for (j = 0; j < tSpan.childNodes.length; j++) { - if (tSpan.childNodes[j].nodeName === '#text') { - textContent += tSpan.childNodes[j].textContent; - } - } - } - lastPositions = void 0; - tSpanAbsX = tSpan.getAttribute('x'); - if (tSpanAbsX !== null) { - x = toPixels(tSpanAbsX, pdfFontSize); - lastPositions = currentTextSegment.put(context); - currentTextSegment = new TextChunk(this, getAttribute(tSpan, context.styleSheets, 'text-anchor') || - context.attributeState.textAnchor, x, lastPositions[1]); - } - tSpanAbsY = tSpan.getAttribute('y'); - if (tSpanAbsY !== null) { - y = toPixels(tSpanAbsY, pdfFontSize); - lastPositions = currentTextSegment.put(context); - currentTextSegment = new TextChunk(this, getAttribute(tSpan, context.styleSheets, 'text-anchor') || - context.attributeState.textAnchor, lastPositions[0], y); - } - tSpanXmlSpace = tSpan.getAttribute('xml:space'); - if (tSpanXmlSpace) { - xmlSpace = tSpanXmlSpace; - } + } + if (textLength > 0) { + totalDefaultWidth_1 = 0; + totalLength_1 = 0; + textChunks.forEach(function (_a) { + var chunk = _a.chunk; + chunk.measureText(context); + chunk.textMeasures.forEach(function (_a) { + var width = _a.width, length = _a.length; + totalDefaultWidth_1 += width; + totalLength_1 += length; + }); + }); + charSpace = (textLength - totalDefaultWidth_1) / (totalLength_1 - lengthAdjustment); + } + // Put the textchunks + textChunks.reduce(function (lastPositions, _a) { + var type = _a.type, chunk = _a.chunk; + if (type === 'x') { + chunk.setX(lastPositions[0]); } - trimmedText = removeNewlines(textContent); - trimmedText = replaceTabsBySpace(trimmedText); - if (xmlSpace === 'default') { - if (i === 0) { - trimmedText = trimLeft(trimmedText); - } - if (i === tSpanCount - 1) { - trimmedText = trimRight(trimmedText); - } - trimmedText = consolidateSpaces(trimmedText); + else if (type === 'y') { + chunk.setY(lastPositions[1]); } - transformedText = transformText(this.element, trimmedText, context); - currentTextSegment.add(textNode, transformedText); - } - currentTextSegment.put(context); + return chunk.put(context, charSpace); + }, [0, 0]); } context.pdf.restoreGraphicsState(); return [2 /*return*/]; @@ -4485,7 +4613,7 @@ var path = new Path(); var prevX; var prevY; - svgPath.iterate(function (seg, i) { + svgPath.iterate(function (seg) { var type = seg[0]; switch (type) { case 'M': @@ -4696,11 +4824,11 @@ _this.closed = closed; return _this; } + // eslint-disable-next-line @typescript-eslint/no-unused-vars Traverse.prototype.getPath = function (context) { if (!this.element.hasAttribute('points') || this.element.getAttribute('points') === '') { return null; } - // eslint-disable-next-line @typescript-eslint/ban-ts-ignore // @ts-ignore var points = Traverse.parsePointsString(this.element.getAttribute('points')); var path = new Path(); @@ -4748,9 +4876,11 @@ function VoidNode() { return _super !== null && _super.apply(this, arguments) || this; } + // eslint-disable-next-line @typescript-eslint/no-unused-vars VoidNode.prototype.render = function (parentContext) { return Promise.resolve(); }; + // eslint-disable-next-line @typescript-eslint/no-unused-vars VoidNode.prototype.getBoundingBoxCore = function (context) { return [0, 0, 0, 0]; }; @@ -4801,6 +4931,7 @@ }); }); }; + // eslint-disable-next-line @typescript-eslint/no-unused-vars MarkerNode.prototype.getBoundingBoxCore = function (context) { var viewBox = this.element.getAttribute('viewBox'); var vb; @@ -5219,6 +5350,7 @@ var id = cssesc_1(svgnode.element.id, { isIdentifier: true }); idMap[id] = idMap[id] || svgnode; } + svgnode.children.forEach(function (c) { return c.setParent(svgnode); }); return svgnode; } diff --git a/dist/svg2pdf.umd.js.map b/dist/svg2pdf.umd.js.map index cf22bf0b..e939ad5c 100644 --- a/dist/svg2pdf.umd.js.map +++ b/dist/svg2pdf.umd.js.map @@ -1 +1 @@ -{"version":3,"file":"svg2pdf.umd.js","sources":["../node_modules/tslib/tslib.es6.js","../src/utils/rgbcolor.ts","../src/fill/ColorFill.ts","../src/context/attributestate.ts","../src/utils/constants.ts","../src/context/textmeasure.ts","../src/context/context.ts","../node_modules/cssesc/cssesc.js","../src/context/referenceshandler.ts","../src/utils/geometry.ts","../src/utils/path.ts","../src/utils/node.ts","../src/markerlist.ts","../src/utils/misc.ts","../src/utils/parsing.ts","../node_modules/font-family-papandreou/index.js","../src/utils/fonts.ts","../src/utils/bbox.ts","../src/utils/transform.ts","../src/nodes/svgnode.ts","../src/nodes/nonrenderednode.ts","../src/nodes/gradient.ts","../src/nodes/lineargradient.ts","../src/nodes/radialgradient.ts","../src/fill/GradientFill.ts","../src/nodes/pattern.ts","../src/fill/PatternFill.ts","../src/fill/parseFill.ts","../src/applyparseattributes.ts","../src/utils/applyclippath.ts","../src/nodes/renderednode.ts","../src/nodes/graphicsnode.ts","../src/nodes/geometrynode.ts","../src/nodes/line.ts","../src/nodes/symbol.ts","../src/context/viewport.ts","../src/nodes/use.ts","../src/nodes/rect.ts","../src/nodes/ellipsebase.ts","../src/nodes/ellipse.ts","../src/utils/text.ts","../src/textchunk.ts","../src/nodes/text.ts","../node_modules/svgpath/lib/path_parse.js","../node_modules/svgpath/lib/matrix.js","../node_modules/svgpath/lib/transform_parse.js","../node_modules/svgpath/lib/a2c.js","../node_modules/svgpath/lib/ellipse.js","../node_modules/svgpath/lib/svgpath.js","../node_modules/svgpath/index.js","../src/nodes/path.ts","../src/nodes/image.ts","../src/nodes/traverse.ts","../src/nodes/polygon.ts","../src/nodes/void.ts","../src/nodes/marker.ts","../src/nodes/circle.ts","../src/nodes/polyline.ts","../src/nodes/containernode.ts","../src/nodes/svg.ts","../src/nodes/group.ts","../src/nodes/clippath.ts","../src/parse.ts","../node_modules/specificity/dist/specificity.mjs","../src/context/stylesheets.ts","../src/svg2pdf.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n",null,null,null,null,null,null,"/*! https://mths.be/cssesc v3.0.0 by @mathias */\n'use strict';\n\nvar object = {};\nvar hasOwnProperty = object.hasOwnProperty;\nvar merge = function merge(options, defaults) {\n\tif (!options) {\n\t\treturn defaults;\n\t}\n\tvar result = {};\n\tfor (var key in defaults) {\n\t\t// `if (defaults.hasOwnProperty(key) { … }` is not needed here, since\n\t\t// only recognized option names are used.\n\t\tresult[key] = hasOwnProperty.call(options, key) ? options[key] : defaults[key];\n\t}\n\treturn result;\n};\n\nvar regexAnySingleEscape = /[ -,\\.\\/:-@\\[-\\^`\\{-~]/;\nvar regexSingleEscape = /[ -,\\.\\/:-@\\[\\]\\^`\\{-~]/;\nvar regexAlwaysEscape = /['\"\\\\]/;\nvar regexExcessiveSpaces = /(^|\\\\+)?(\\\\[A-F0-9]{1,6})\\x20(?![a-fA-F0-9\\x20])/g;\n\n// https://mathiasbynens.be/notes/css-escapes#css\nvar cssesc = function cssesc(string, options) {\n\toptions = merge(options, cssesc.options);\n\tif (options.quotes != 'single' && options.quotes != 'double') {\n\t\toptions.quotes = 'single';\n\t}\n\tvar quote = options.quotes == 'double' ? '\"' : '\\'';\n\tvar isIdentifier = options.isIdentifier;\n\n\tvar firstChar = string.charAt(0);\n\tvar output = '';\n\tvar counter = 0;\n\tvar length = string.length;\n\twhile (counter < length) {\n\t\tvar character = string.charAt(counter++);\n\t\tvar codePoint = character.charCodeAt();\n\t\tvar value = void 0;\n\t\t// If it’s not a printable ASCII character…\n\t\tif (codePoint < 0x20 || codePoint > 0x7E) {\n\t\t\tif (codePoint >= 0xD800 && codePoint <= 0xDBFF && counter < length) {\n\t\t\t\t// It’s a high surrogate, and there is a next character.\n\t\t\t\tvar extra = string.charCodeAt(counter++);\n\t\t\t\tif ((extra & 0xFC00) == 0xDC00) {\n\t\t\t\t\t// next character is low surrogate\n\t\t\t\t\tcodePoint = ((codePoint & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000;\n\t\t\t\t} else {\n\t\t\t\t\t// It’s an unmatched surrogate; only append this code unit, in case\n\t\t\t\t\t// the next code unit is the high surrogate of a surrogate pair.\n\t\t\t\t\tcounter--;\n\t\t\t\t}\n\t\t\t}\n\t\t\tvalue = '\\\\' + codePoint.toString(16).toUpperCase() + ' ';\n\t\t} else {\n\t\t\tif (options.escapeEverything) {\n\t\t\t\tif (regexAnySingleEscape.test(character)) {\n\t\t\t\t\tvalue = '\\\\' + character;\n\t\t\t\t} else {\n\t\t\t\t\tvalue = '\\\\' + codePoint.toString(16).toUpperCase() + ' ';\n\t\t\t\t}\n\t\t\t} else if (/[\\t\\n\\f\\r\\x0B]/.test(character)) {\n\t\t\t\tvalue = '\\\\' + codePoint.toString(16).toUpperCase() + ' ';\n\t\t\t} else if (character == '\\\\' || !isIdentifier && (character == '\"' && quote == character || character == '\\'' && quote == character) || isIdentifier && regexSingleEscape.test(character)) {\n\t\t\t\tvalue = '\\\\' + character;\n\t\t\t} else {\n\t\t\t\tvalue = character;\n\t\t\t}\n\t\t}\n\t\toutput += value;\n\t}\n\n\tif (isIdentifier) {\n\t\tif (/^-[-\\d]/.test(output)) {\n\t\t\toutput = '\\\\-' + output.slice(1);\n\t\t} else if (/\\d/.test(firstChar)) {\n\t\t\toutput = '\\\\3' + firstChar + ' ' + output.slice(1);\n\t\t}\n\t}\n\n\t// Remove spaces after `\\HEX` escapes that are not followed by a hex digit,\n\t// since they’re redundant. Note that this is only possible if the escape\n\t// sequence isn’t preceded by an odd number of backslashes.\n\toutput = output.replace(regexExcessiveSpaces, function ($0, $1, $2) {\n\t\tif ($1 && $1.length % 2) {\n\t\t\t// It’s not safe to remove the space, so don’t.\n\t\t\treturn $0;\n\t\t}\n\t\t// Strip the space.\n\t\treturn ($1 || '') + $2;\n\t});\n\n\tif (!isIdentifier && options.wrap) {\n\t\treturn quote + output + quote;\n\t}\n\treturn output;\n};\n\n// Expose default options (so they can be overridden globally).\ncssesc.options = {\n\t'escapeEverything': false,\n\t'isIdentifier': false,\n\t'quotes': 'single',\n\t'wrap': false\n};\n\ncssesc.version = '3.0.0';\n\nmodule.exports = cssesc;\n",null,null,null,null,null,null,null,"// parse\n// =====\n\n// states\n// ------\n\nvar PLAIN = 0;\nvar STRINGS = 1;\nvar ESCAPING = 2;\nvar IDENTIFIER = 3;\nvar SEPARATING = 4;\nvar SPACEAFTERIDENTIFIER = 5;\n\n// patterns\n// --------\n\nvar identifierPattern = /[a-z0-9_-]/i;\nvar spacePattern = /[\\s\\t]/;\n\n// ---\n\nvar parse = function(str) {\n\n // vars\n // ----\n\n var starting = true;\n var state = PLAIN;\n var buffer = '';\n var i = 0;\n var quote;\n var c;\n\n // result\n // ------\n\n var names = [];\n\n // parse\n // -----\n\n while (true) {\n\n c = str[i];\n\n if (state === PLAIN) {\n\n if (!c && starting) {\n\n break;\n\n } else if (!c && !starting) {\n\n throw new Error('Parse error');\n\n } else if (c === '\"' || c === \"'\") {\n\n quote = c;\n state = STRINGS;\n starting = false;\n\n } else if (spacePattern.test(c)) {\n } else if (identifierPattern.test(c)) {\n\n state = IDENTIFIER;\n starting = false;\n i--;\n\n } else {\n\n throw new Error('Parse error');\n\n }\n\n } else if (state === STRINGS) {\n\n if (!c) {\n\n throw new Error('Parse Error');\n\n } else if (c === \"\\\\\") {\n\n state = ESCAPING;\n\n } else if (c === quote) {\n\n names.push(buffer);\n buffer = '';\n state = SEPARATING;\n\n } else {\n\n buffer += c;\n\n }\n\n } else if (state === ESCAPING) {\n\n if (c === quote || c === \"\\\\\") {\n\n buffer += c;\n state = STRINGS;\n\n } else {\n\n throw new Error('Parse error');\n\n }\n\n } else if (state === IDENTIFIER) {\n\n if (!c) {\n\n names.push(buffer);\n break;\n\n } else if (identifierPattern.test(c)) {\n\n buffer += c;\n\n } else if (c === ',') {\n\n names.push(buffer);\n buffer = '';\n state = PLAIN;\n\n } else if (spacePattern.test(c)) {\n\n state = SPACEAFTERIDENTIFIER;\n } else {\n\n throw new Error('Parse error');\n\n }\n } else if (state === SPACEAFTERIDENTIFIER) {\n\n if (!c) {\n\n names.push(buffer);\n break;\n\n } else if (identifierPattern.test(c)) {\n\n buffer += ' ' + c;\n state = IDENTIFIER;\n\n } else if (c === ',') {\n\n names.push(buffer);\n buffer = '';\n state = PLAIN;\n\n } else if (spacePattern.test(c)) {\n } else {\n\n throw new Error('Parse error');\n\n }\n\n } else if (state === SEPARATING) {\n\n if (!c) {\n\n break;\n\n } else if (c === ',') {\n\n state = PLAIN;\n\n } else if (spacePattern.test(c)) {\n } else {\n\n throw new Error('Parse error');\n\n }\n\n }\n\n i++;\n\n }\n\n // result\n // ------\n\n return names;\n\n};\n\n// stringify\n// =========\n\n// pattern\n// -------\n\nvar stringsPattern = /[^a-z0-9_-]/i;\n\n// ---\n\nvar stringify = function(names, options) {\n\n // quote\n // -----\n\n var quote = options && options.quote || '\"';\n if (quote !== '\"' && quote !== \"'\") {\n throw new Error('Quote must be `\\'` or `\"`');\n }\n var quotePattern = new RegExp(quote, 'g');\n\n // stringify\n // ---------\n\n var safeNames = [];\n\n for (var i = 0; i < names.length; ++i) {\n var name = names[i];\n\n if (stringsPattern.test(name)) {\n name = name\n .replace(/\\\\/g, \"\\\\\\\\\")\n .replace(quotePattern, \"\\\\\" + quote);\n name = quote + name + quote;\n }\n safeNames.push(name);\n }\n\n // result\n // ------\n\n return safeNames.join(', ');\n};\n\n// export\n// ======\n\nmodule.exports = {\n parse: parse,\n stringify: stringify,\n};\n",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"'use strict';\n\n\nvar paramCounts = { a: 7, c: 6, h: 1, l: 2, m: 2, r: 4, q: 4, s: 4, t: 2, v: 1, z: 0 };\n\nvar SPECIAL_SPACES = [\n 0x1680, 0x180E, 0x2000, 0x2001, 0x2002, 0x2003, 0x2004, 0x2005, 0x2006,\n 0x2007, 0x2008, 0x2009, 0x200A, 0x202F, 0x205F, 0x3000, 0xFEFF\n];\n\nfunction isSpace(ch) {\n return (ch === 0x0A) || (ch === 0x0D) || (ch === 0x2028) || (ch === 0x2029) || // Line terminators\n // White spaces\n (ch === 0x20) || (ch === 0x09) || (ch === 0x0B) || (ch === 0x0C) || (ch === 0xA0) ||\n (ch >= 0x1680 && SPECIAL_SPACES.indexOf(ch) >= 0);\n}\n\nfunction isCommand(code) {\n /*eslint-disable no-bitwise*/\n switch (code | 0x20) {\n case 0x6D/* m */:\n case 0x7A/* z */:\n case 0x6C/* l */:\n case 0x68/* h */:\n case 0x76/* v */:\n case 0x63/* c */:\n case 0x73/* s */:\n case 0x71/* q */:\n case 0x74/* t */:\n case 0x61/* a */:\n case 0x72/* r */:\n return true;\n }\n return false;\n}\n\nfunction isArc(code) {\n return (code | 0x20) === 0x61;\n}\n\nfunction isDigit(code) {\n return (code >= 48 && code <= 57); // 0..9\n}\n\nfunction isDigitStart(code) {\n return (code >= 48 && code <= 57) || /* 0..9 */\n code === 0x2B || /* + */\n code === 0x2D || /* - */\n code === 0x2E; /* . */\n}\n\n\nfunction State(path) {\n this.index = 0;\n this.path = path;\n this.max = path.length;\n this.result = [];\n this.param = 0.0;\n this.err = '';\n this.segmentStart = 0;\n this.data = [];\n}\n\nfunction skipSpaces(state) {\n while (state.index < state.max && isSpace(state.path.charCodeAt(state.index))) {\n state.index++;\n }\n}\n\n\nfunction scanFlag(state) {\n var ch = state.path.charCodeAt(state.index);\n\n if (ch === 0x30/* 0 */) {\n state.param = 0;\n state.index++;\n return;\n }\n\n if (ch === 0x31/* 1 */) {\n state.param = 1;\n state.index++;\n return;\n }\n\n state.err = 'SvgPath: arc flag can be 0 or 1 only (at pos ' + state.index + ')';\n}\n\n\nfunction scanParam(state) {\n var start = state.index,\n index = start,\n max = state.max,\n zeroFirst = false,\n hasCeiling = false,\n hasDecimal = false,\n hasDot = false,\n ch;\n\n if (index >= max) {\n state.err = 'SvgPath: missed param (at pos ' + index + ')';\n return;\n }\n ch = state.path.charCodeAt(index);\n\n if (ch === 0x2B/* + */ || ch === 0x2D/* - */) {\n index++;\n ch = (index < max) ? state.path.charCodeAt(index) : 0;\n }\n\n // This logic is shamelessly borrowed from Esprima\n // https://github.com/ariya/esprimas\n //\n if (!isDigit(ch) && ch !== 0x2E/* . */) {\n state.err = 'SvgPath: param should start with 0..9 or `.` (at pos ' + index + ')';\n return;\n }\n\n if (ch !== 0x2E/* . */) {\n zeroFirst = (ch === 0x30/* 0 */);\n index++;\n\n ch = (index < max) ? state.path.charCodeAt(index) : 0;\n\n if (zeroFirst && index < max) {\n // decimal number starts with '0' such as '09' is illegal.\n if (ch && isDigit(ch)) {\n state.err = 'SvgPath: numbers started with `0` such as `09` are illegal (at pos ' + start + ')';\n return;\n }\n }\n\n while (index < max && isDigit(state.path.charCodeAt(index))) {\n index++;\n hasCeiling = true;\n }\n ch = (index < max) ? state.path.charCodeAt(index) : 0;\n }\n\n if (ch === 0x2E/* . */) {\n hasDot = true;\n index++;\n while (isDigit(state.path.charCodeAt(index))) {\n index++;\n hasDecimal = true;\n }\n ch = (index < max) ? state.path.charCodeAt(index) : 0;\n }\n\n if (ch === 0x65/* e */ || ch === 0x45/* E */) {\n if (hasDot && !hasCeiling && !hasDecimal) {\n state.err = 'SvgPath: invalid float exponent (at pos ' + index + ')';\n return;\n }\n\n index++;\n\n ch = (index < max) ? state.path.charCodeAt(index) : 0;\n if (ch === 0x2B/* + */ || ch === 0x2D/* - */) {\n index++;\n }\n if (index < max && isDigit(state.path.charCodeAt(index))) {\n while (index < max && isDigit(state.path.charCodeAt(index))) {\n index++;\n }\n } else {\n state.err = 'SvgPath: invalid float exponent (at pos ' + index + ')';\n return;\n }\n }\n\n state.index = index;\n state.param = parseFloat(state.path.slice(start, index)) + 0.0;\n}\n\n\nfunction finalizeSegment(state) {\n var cmd, cmdLC;\n\n // Process duplicated commands (without comand name)\n\n // This logic is shamelessly borrowed from Raphael\n // https://github.com/DmitryBaranovskiy/raphael/\n //\n cmd = state.path[state.segmentStart];\n cmdLC = cmd.toLowerCase();\n\n var params = state.data;\n\n if (cmdLC === 'm' && params.length > 2) {\n state.result.push([ cmd, params[0], params[1] ]);\n params = params.slice(2);\n cmdLC = 'l';\n cmd = (cmd === 'm') ? 'l' : 'L';\n }\n\n if (cmdLC === 'r') {\n state.result.push([ cmd ].concat(params));\n } else {\n\n while (params.length >= paramCounts[cmdLC]) {\n state.result.push([ cmd ].concat(params.splice(0, paramCounts[cmdLC])));\n if (!paramCounts[cmdLC]) {\n break;\n }\n }\n }\n}\n\n\nfunction scanSegment(state) {\n var max = state.max,\n cmdCode, is_arc, comma_found, need_params, i;\n\n state.segmentStart = state.index;\n cmdCode = state.path.charCodeAt(state.index);\n is_arc = isArc(cmdCode);\n\n if (!isCommand(cmdCode)) {\n state.err = 'SvgPath: bad command ' + state.path[state.index] + ' (at pos ' + state.index + ')';\n return;\n }\n\n need_params = paramCounts[state.path[state.index].toLowerCase()];\n\n state.index++;\n skipSpaces(state);\n\n state.data = [];\n\n if (!need_params) {\n // Z\n finalizeSegment(state);\n return;\n }\n\n comma_found = false;\n\n for (;;) {\n for (i = need_params; i > 0; i--) {\n if (is_arc && (i === 3 || i === 4)) scanFlag(state);\n else scanParam(state);\n\n if (state.err.length) {\n return;\n }\n state.data.push(state.param);\n\n skipSpaces(state);\n comma_found = false;\n\n if (state.index < max && state.path.charCodeAt(state.index) === 0x2C/* , */) {\n state.index++;\n skipSpaces(state);\n comma_found = true;\n }\n }\n\n // after ',' param is mandatory\n if (comma_found) {\n continue;\n }\n\n if (state.index >= state.max) {\n break;\n }\n\n // Stop on next segment\n if (!isDigitStart(state.path.charCodeAt(state.index))) {\n break;\n }\n }\n\n finalizeSegment(state);\n}\n\n\n/* Returns array of segments:\n *\n * [\n * [ command, coord1, coord2, ... ]\n * ]\n */\nmodule.exports = function pathParse(svgPath) {\n var state = new State(svgPath);\n var max = state.max;\n\n skipSpaces(state);\n\n while (state.index < max && !state.err.length) {\n scanSegment(state);\n }\n\n if (state.err.length) {\n state.result = [];\n\n } else if (state.result.length) {\n\n if ('mM'.indexOf(state.result[0][0]) < 0) {\n state.err = 'SvgPath: string should start with `M` or `m`';\n state.result = [];\n } else {\n state.result[0][0] = 'M';\n }\n }\n\n return {\n err: state.err,\n segments: state.result\n };\n};\n","'use strict';\n\n// combine 2 matrixes\n// m1, m2 - [a, b, c, d, e, g]\n//\nfunction combine(m1, m2) {\n return [\n m1[0] * m2[0] + m1[2] * m2[1],\n m1[1] * m2[0] + m1[3] * m2[1],\n m1[0] * m2[2] + m1[2] * m2[3],\n m1[1] * m2[2] + m1[3] * m2[3],\n m1[0] * m2[4] + m1[2] * m2[5] + m1[4],\n m1[1] * m2[4] + m1[3] * m2[5] + m1[5]\n ];\n}\n\n\nfunction Matrix() {\n if (!(this instanceof Matrix)) { return new Matrix(); }\n this.queue = []; // list of matrixes to apply\n this.cache = null; // combined matrix cache\n}\n\n\nMatrix.prototype.matrix = function (m) {\n if (m[0] === 1 && m[1] === 0 && m[2] === 0 && m[3] === 1 && m[4] === 0 && m[5] === 0) {\n return this;\n }\n this.cache = null;\n this.queue.push(m);\n return this;\n};\n\n\nMatrix.prototype.translate = function (tx, ty) {\n if (tx !== 0 || ty !== 0) {\n this.cache = null;\n this.queue.push([ 1, 0, 0, 1, tx, ty ]);\n }\n return this;\n};\n\n\nMatrix.prototype.scale = function (sx, sy) {\n if (sx !== 1 || sy !== 1) {\n this.cache = null;\n this.queue.push([ sx, 0, 0, sy, 0, 0 ]);\n }\n return this;\n};\n\n\nMatrix.prototype.rotate = function (angle, rx, ry) {\n var rad, cos, sin;\n\n if (angle !== 0) {\n this.translate(rx, ry);\n\n rad = angle * Math.PI / 180;\n cos = Math.cos(rad);\n sin = Math.sin(rad);\n\n this.queue.push([ cos, sin, -sin, cos, 0, 0 ]);\n this.cache = null;\n\n this.translate(-rx, -ry);\n }\n return this;\n};\n\n\nMatrix.prototype.skewX = function (angle) {\n if (angle !== 0) {\n this.cache = null;\n this.queue.push([ 1, 0, Math.tan(angle * Math.PI / 180), 1, 0, 0 ]);\n }\n return this;\n};\n\n\nMatrix.prototype.skewY = function (angle) {\n if (angle !== 0) {\n this.cache = null;\n this.queue.push([ 1, Math.tan(angle * Math.PI / 180), 0, 1, 0, 0 ]);\n }\n return this;\n};\n\n\n// Flatten queue\n//\nMatrix.prototype.toArray = function () {\n if (this.cache) {\n return this.cache;\n }\n\n if (!this.queue.length) {\n this.cache = [ 1, 0, 0, 1, 0, 0 ];\n return this.cache;\n }\n\n this.cache = this.queue[0];\n\n if (this.queue.length === 1) {\n return this.cache;\n }\n\n for (var i = 1; i < this.queue.length; i++) {\n this.cache = combine(this.cache, this.queue[i]);\n }\n\n return this.cache;\n};\n\n\n// Apply list of matrixes to (x,y) point.\n// If `isRelative` set, `translate` component of matrix will be skipped\n//\nMatrix.prototype.calc = function (x, y, isRelative) {\n var m;\n\n // Don't change point on empty transforms queue\n if (!this.queue.length) { return [ x, y ]; }\n\n // Calculate final matrix, if not exists\n //\n // NB. if you deside to apply transforms to point one-by-one,\n // they should be taken in reverse order\n\n if (!this.cache) {\n this.cache = this.toArray();\n }\n\n m = this.cache;\n\n // Apply matrix to point\n return [\n x * m[0] + y * m[2] + (isRelative ? 0 : m[4]),\n x * m[1] + y * m[3] + (isRelative ? 0 : m[5])\n ];\n};\n\n\nmodule.exports = Matrix;\n","'use strict';\n\n\nvar Matrix = require('./matrix');\n\nvar operations = {\n matrix: true,\n scale: true,\n rotate: true,\n translate: true,\n skewX: true,\n skewY: true\n};\n\nvar CMD_SPLIT_RE = /\\s*(matrix|translate|scale|rotate|skewX|skewY)\\s*\\(\\s*(.+?)\\s*\\)[\\s,]*/;\nvar PARAMS_SPLIT_RE = /[\\s,]+/;\n\n\nmodule.exports = function transformParse(transformString) {\n var matrix = new Matrix();\n var cmd, params;\n\n // Split value into ['', 'translate', '10 50', '', 'scale', '2', '', 'rotate', '-45', '']\n transformString.split(CMD_SPLIT_RE).forEach(function (item) {\n\n // Skip empty elements\n if (!item.length) { return; }\n\n // remember operation\n if (typeof operations[item] !== 'undefined') {\n cmd = item;\n return;\n }\n\n // extract params & att operation to matrix\n params = item.split(PARAMS_SPLIT_RE).map(function (i) {\n return +i || 0;\n });\n\n // If params count is not correct - ignore command\n switch (cmd) {\n case 'matrix':\n if (params.length === 6) {\n matrix.matrix(params);\n }\n return;\n\n case 'scale':\n if (params.length === 1) {\n matrix.scale(params[0], params[0]);\n } else if (params.length === 2) {\n matrix.scale(params[0], params[1]);\n }\n return;\n\n case 'rotate':\n if (params.length === 1) {\n matrix.rotate(params[0], 0, 0);\n } else if (params.length === 3) {\n matrix.rotate(params[0], params[1], params[2]);\n }\n return;\n\n case 'translate':\n if (params.length === 1) {\n matrix.translate(params[0], 0);\n } else if (params.length === 2) {\n matrix.translate(params[0], params[1]);\n }\n return;\n\n case 'skewX':\n if (params.length === 1) {\n matrix.skewX(params[0]);\n }\n return;\n\n case 'skewY':\n if (params.length === 1) {\n matrix.skewY(params[0]);\n }\n return;\n }\n });\n\n return matrix;\n};\n","// Convert an arc to a sequence of cubic bézier curves\n//\n'use strict';\n\n\nvar TAU = Math.PI * 2;\n\n\n/* eslint-disable space-infix-ops */\n\n// Calculate an angle between two unit vectors\n//\n// Since we measure angle between radii of circular arcs,\n// we can use simplified math (without length normalization)\n//\nfunction unit_vector_angle(ux, uy, vx, vy) {\n var sign = (ux * vy - uy * vx < 0) ? -1 : 1;\n var dot = ux * vx + uy * vy;\n\n // Add this to work with arbitrary vectors:\n // dot /= Math.sqrt(ux * ux + uy * uy) * Math.sqrt(vx * vx + vy * vy);\n\n // rounding errors, e.g. -1.0000000000000002 can screw up this\n if (dot > 1.0) { dot = 1.0; }\n if (dot < -1.0) { dot = -1.0; }\n\n return sign * Math.acos(dot);\n}\n\n\n// Convert from endpoint to center parameterization,\n// see http://www.w3.org/TR/SVG11/implnote.html#ArcImplementationNotes\n//\n// Return [cx, cy, theta1, delta_theta]\n//\nfunction get_arc_center(x1, y1, x2, y2, fa, fs, rx, ry, sin_phi, cos_phi) {\n // Step 1.\n //\n // Moving an ellipse so origin will be the middlepoint between our two\n // points. After that, rotate it to line up ellipse axes with coordinate\n // axes.\n //\n var x1p = cos_phi*(x1-x2)/2 + sin_phi*(y1-y2)/2;\n var y1p = -sin_phi*(x1-x2)/2 + cos_phi*(y1-y2)/2;\n\n var rx_sq = rx * rx;\n var ry_sq = ry * ry;\n var x1p_sq = x1p * x1p;\n var y1p_sq = y1p * y1p;\n\n // Step 2.\n //\n // Compute coordinates of the centre of this ellipse (cx', cy')\n // in the new coordinate system.\n //\n var radicant = (rx_sq * ry_sq) - (rx_sq * y1p_sq) - (ry_sq * x1p_sq);\n\n if (radicant < 0) {\n // due to rounding errors it might be e.g. -1.3877787807814457e-17\n radicant = 0;\n }\n\n radicant /= (rx_sq * y1p_sq) + (ry_sq * x1p_sq);\n radicant = Math.sqrt(radicant) * (fa === fs ? -1 : 1);\n\n var cxp = radicant * rx/ry * y1p;\n var cyp = radicant * -ry/rx * x1p;\n\n // Step 3.\n //\n // Transform back to get centre coordinates (cx, cy) in the original\n // coordinate system.\n //\n var cx = cos_phi*cxp - sin_phi*cyp + (x1+x2)/2;\n var cy = sin_phi*cxp + cos_phi*cyp + (y1+y2)/2;\n\n // Step 4.\n //\n // Compute angles (theta1, delta_theta).\n //\n var v1x = (x1p - cxp) / rx;\n var v1y = (y1p - cyp) / ry;\n var v2x = (-x1p - cxp) / rx;\n var v2y = (-y1p - cyp) / ry;\n\n var theta1 = unit_vector_angle(1, 0, v1x, v1y);\n var delta_theta = unit_vector_angle(v1x, v1y, v2x, v2y);\n\n if (fs === 0 && delta_theta > 0) {\n delta_theta -= TAU;\n }\n if (fs === 1 && delta_theta < 0) {\n delta_theta += TAU;\n }\n\n return [ cx, cy, theta1, delta_theta ];\n}\n\n//\n// Approximate one unit arc segment with bézier curves,\n// see http://math.stackexchange.com/questions/873224\n//\nfunction approximate_unit_arc(theta1, delta_theta) {\n var alpha = 4/3 * Math.tan(delta_theta/4);\n\n var x1 = Math.cos(theta1);\n var y1 = Math.sin(theta1);\n var x2 = Math.cos(theta1 + delta_theta);\n var y2 = Math.sin(theta1 + delta_theta);\n\n return [ x1, y1, x1 - y1*alpha, y1 + x1*alpha, x2 + y2*alpha, y2 - x2*alpha, x2, y2 ];\n}\n\nmodule.exports = function a2c(x1, y1, x2, y2, fa, fs, rx, ry, phi) {\n var sin_phi = Math.sin(phi * TAU / 360);\n var cos_phi = Math.cos(phi * TAU / 360);\n\n // Make sure radii are valid\n //\n var x1p = cos_phi*(x1-x2)/2 + sin_phi*(y1-y2)/2;\n var y1p = -sin_phi*(x1-x2)/2 + cos_phi*(y1-y2)/2;\n\n if (x1p === 0 && y1p === 0) {\n // we're asked to draw line to itself\n return [];\n }\n\n if (rx === 0 || ry === 0) {\n // one of the radii is zero\n return [];\n }\n\n\n // Compensate out-of-range radii\n //\n rx = Math.abs(rx);\n ry = Math.abs(ry);\n\n var lambda = (x1p * x1p) / (rx * rx) + (y1p * y1p) / (ry * ry);\n if (lambda > 1) {\n rx *= Math.sqrt(lambda);\n ry *= Math.sqrt(lambda);\n }\n\n\n // Get center parameters (cx, cy, theta1, delta_theta)\n //\n var cc = get_arc_center(x1, y1, x2, y2, fa, fs, rx, ry, sin_phi, cos_phi);\n\n var result = [];\n var theta1 = cc[2];\n var delta_theta = cc[3];\n\n // Split an arc to multiple segments, so each segment\n // will be less than τ/4 (= 90°)\n //\n var segments = Math.max(Math.ceil(Math.abs(delta_theta) / (TAU / 4)), 1);\n delta_theta /= segments;\n\n for (var i = 0; i < segments; i++) {\n result.push(approximate_unit_arc(theta1, delta_theta));\n theta1 += delta_theta;\n }\n\n // We have a bezier approximation of a unit circle,\n // now need to transform back to the original ellipse\n //\n return result.map(function (curve) {\n for (var i = 0; i < curve.length; i += 2) {\n var x = curve[i + 0];\n var y = curve[i + 1];\n\n // scale\n x *= rx;\n y *= ry;\n\n // rotate\n var xp = cos_phi*x - sin_phi*y;\n var yp = sin_phi*x + cos_phi*y;\n\n // translate\n curve[i + 0] = xp + cc[0];\n curve[i + 1] = yp + cc[1];\n }\n\n return curve;\n });\n};\n","'use strict';\n\n/* eslint-disable space-infix-ops */\n\n// The precision used to consider an ellipse as a circle\n//\nvar epsilon = 0.0000000001;\n\n// To convert degree in radians\n//\nvar torad = Math.PI / 180;\n\n// Class constructor :\n// an ellipse centred at 0 with radii rx,ry and x - axis - angle ax.\n//\nfunction Ellipse(rx, ry, ax) {\n if (!(this instanceof Ellipse)) { return new Ellipse(rx, ry, ax); }\n this.rx = rx;\n this.ry = ry;\n this.ax = ax;\n}\n\n// Apply a linear transform m to the ellipse\n// m is an array representing a matrix :\n// - -\n// | m[0] m[2] |\n// | m[1] m[3] |\n// - -\n//\nEllipse.prototype.transform = function (m) {\n // We consider the current ellipse as image of the unit circle\n // by first scale(rx,ry) and then rotate(ax) ...\n // So we apply ma = m x rotate(ax) x scale(rx,ry) to the unit circle.\n var c = Math.cos(this.ax * torad), s = Math.sin(this.ax * torad);\n var ma = [\n this.rx * (m[0]*c + m[2]*s),\n this.rx * (m[1]*c + m[3]*s),\n this.ry * (-m[0]*s + m[2]*c),\n this.ry * (-m[1]*s + m[3]*c)\n ];\n\n // ma * transpose(ma) = [ J L ]\n // [ L K ]\n // L is calculated later (if the image is not a circle)\n var J = ma[0]*ma[0] + ma[2]*ma[2],\n K = ma[1]*ma[1] + ma[3]*ma[3];\n\n // the discriminant of the characteristic polynomial of ma * transpose(ma)\n var D = ((ma[0]-ma[3])*(ma[0]-ma[3]) + (ma[2]+ma[1])*(ma[2]+ma[1])) *\n ((ma[0]+ma[3])*(ma[0]+ma[3]) + (ma[2]-ma[1])*(ma[2]-ma[1]));\n\n // the \"mean eigenvalue\"\n var JK = (J + K) / 2;\n\n // check if the image is (almost) a circle\n if (D < epsilon * JK) {\n // if it is\n this.rx = this.ry = Math.sqrt(JK);\n this.ax = 0;\n return this;\n }\n\n // if it is not a circle\n var L = ma[0]*ma[1] + ma[2]*ma[3];\n\n D = Math.sqrt(D);\n\n // {l1,l2} = the two eigen values of ma * transpose(ma)\n var l1 = JK + D/2,\n l2 = JK - D/2;\n // the x - axis - rotation angle is the argument of the l1 - eigenvector\n /*eslint-disable indent*/\n this.ax = (Math.abs(L) < epsilon && Math.abs(l1 - K) < epsilon) ?\n 90\n :\n Math.atan(Math.abs(L) > Math.abs(l1 - K) ?\n (l1 - J) / L\n :\n L / (l1 - K)\n ) * 180 / Math.PI;\n /*eslint-enable indent*/\n\n // if ax > 0 => rx = sqrt(l1), ry = sqrt(l2), else exchange axes and ax += 90\n if (this.ax >= 0) {\n // if ax in [0,90]\n this.rx = Math.sqrt(l1);\n this.ry = Math.sqrt(l2);\n } else {\n // if ax in ]-90,0[ => exchange axes\n this.ax += 90;\n this.rx = Math.sqrt(l2);\n this.ry = Math.sqrt(l1);\n }\n\n return this;\n};\n\n// Check if the ellipse is (almost) degenerate, i.e. rx = 0 or ry = 0\n//\nEllipse.prototype.isDegenerate = function () {\n return (this.rx < epsilon * this.ry || this.ry < epsilon * this.rx);\n};\n\nmodule.exports = Ellipse;\n","// SVG Path transformations library\n//\n// Usage:\n//\n// SvgPath('...')\n// .translate(-150, -100)\n// .scale(0.5)\n// .translate(-150, -100)\n// .toFixed(1)\n// .toString()\n//\n\n'use strict';\n\n\nvar pathParse = require('./path_parse');\nvar transformParse = require('./transform_parse');\nvar matrix = require('./matrix');\nvar a2c = require('./a2c');\nvar ellipse = require('./ellipse');\n\n\n// Class constructor\n//\nfunction SvgPath(path) {\n if (!(this instanceof SvgPath)) { return new SvgPath(path); }\n\n var pstate = pathParse(path);\n\n // Array of path segments.\n // Each segment is array [command, param1, param2, ...]\n this.segments = pstate.segments;\n\n // Error message on parse error.\n this.err = pstate.err;\n\n // Transforms stack for lazy evaluation\n this.__stack = [];\n}\n\nSvgPath.from = function (src) {\n if (typeof src === 'string') return new SvgPath(src);\n\n if (src instanceof SvgPath) {\n // Create empty object\n var s = new SvgPath('');\n\n // Clone properies\n s.err = src.err;\n s.segments = src.segments.map(function (sgm) { return sgm.slice(); });\n s.__stack = src.__stack.map(function (m) {\n return matrix().matrix(m.toArray());\n });\n\n return s;\n }\n\n throw new Error('SvgPath.from: invalid param type ' + src);\n};\n\n\nSvgPath.prototype.__matrix = function (m) {\n var self = this, i;\n\n // Quick leave for empty matrix\n if (!m.queue.length) { return; }\n\n this.iterate(function (s, index, x, y) {\n var p, result, name, isRelative;\n\n switch (s[0]) {\n\n // Process 'assymetric' commands separately\n case 'v':\n p = m.calc(0, s[1], true);\n result = (p[0] === 0) ? [ 'v', p[1] ] : [ 'l', p[0], p[1] ];\n break;\n\n case 'V':\n p = m.calc(x, s[1], false);\n result = (p[0] === m.calc(x, y, false)[0]) ? [ 'V', p[1] ] : [ 'L', p[0], p[1] ];\n break;\n\n case 'h':\n p = m.calc(s[1], 0, true);\n result = (p[1] === 0) ? [ 'h', p[0] ] : [ 'l', p[0], p[1] ];\n break;\n\n case 'H':\n p = m.calc(s[1], y, false);\n result = (p[1] === m.calc(x, y, false)[1]) ? [ 'H', p[0] ] : [ 'L', p[0], p[1] ];\n break;\n\n case 'a':\n case 'A':\n // ARC is: ['A', rx, ry, x-axis-rotation, large-arc-flag, sweep-flag, x, y]\n\n // Drop segment if arc is empty (end point === start point)\n /*if ((s[0] === 'A' && s[6] === x && s[7] === y) ||\n (s[0] === 'a' && s[6] === 0 && s[7] === 0)) {\n return [];\n }*/\n\n // Transform rx, ry and the x-axis-rotation\n var ma = m.toArray();\n var e = ellipse(s[1], s[2], s[3]).transform(ma);\n\n // flip sweep-flag if matrix is not orientation-preserving\n if (ma[0] * ma[3] - ma[1] * ma[2] < 0) {\n s[5] = s[5] ? '0' : '1';\n }\n\n // Transform end point as usual (without translation for relative notation)\n p = m.calc(s[6], s[7], s[0] === 'a');\n\n // Empty arcs can be ignored by renderer, but should not be dropped\n // to avoid collisions with `S A S` and so on. Replace with empty line.\n if ((s[0] === 'A' && s[6] === x && s[7] === y) ||\n (s[0] === 'a' && s[6] === 0 && s[7] === 0)) {\n result = [ s[0] === 'a' ? 'l' : 'L', p[0], p[1] ];\n break;\n }\n\n // if the resulting ellipse is (almost) a segment ...\n if (e.isDegenerate()) {\n // replace the arc by a line\n result = [ s[0] === 'a' ? 'l' : 'L', p[0], p[1] ];\n } else {\n // if it is a real ellipse\n // s[0], s[4] and s[5] are not modified\n result = [ s[0], e.rx, e.ry, e.ax, s[4], s[5], p[0], p[1] ];\n }\n\n break;\n\n case 'm':\n // Edge case. The very first `m` should be processed as absolute, if happens.\n // Make sense for coord shift transforms.\n isRelative = index > 0;\n\n p = m.calc(s[1], s[2], isRelative);\n result = [ 'm', p[0], p[1] ];\n break;\n\n default:\n name = s[0];\n result = [ name ];\n isRelative = (name.toLowerCase() === name);\n\n // Apply transformations to the segment\n for (i = 1; i < s.length; i += 2) {\n p = m.calc(s[i], s[i + 1], isRelative);\n result.push(p[0], p[1]);\n }\n }\n\n self.segments[index] = result;\n }, true);\n};\n\n\n// Apply stacked commands\n//\nSvgPath.prototype.__evaluateStack = function () {\n var m, i;\n\n if (!this.__stack.length) { return; }\n\n if (this.__stack.length === 1) {\n this.__matrix(this.__stack[0]);\n this.__stack = [];\n return;\n }\n\n m = matrix();\n i = this.__stack.length;\n\n while (--i >= 0) {\n m.matrix(this.__stack[i].toArray());\n }\n\n this.__matrix(m);\n this.__stack = [];\n};\n\n\n// Convert processed SVG Path back to string\n//\nSvgPath.prototype.toString = function () {\n var elements = [], skipCmd, cmd;\n\n this.__evaluateStack();\n\n for (var i = 0; i < this.segments.length; i++) {\n // remove repeating commands names\n cmd = this.segments[i][0];\n skipCmd = i > 0 && cmd !== 'm' && cmd !== 'M' && cmd === this.segments[i - 1][0];\n elements = elements.concat(skipCmd ? this.segments[i].slice(1) : this.segments[i]);\n }\n\n return elements.join(' ')\n // Optimizations: remove spaces around commands & before `-`\n //\n // We could also remove leading zeros for `0.5`-like values,\n // but their count is too small to spend time for.\n .replace(/ ?([achlmqrstvz]) ?/gi, '$1')\n .replace(/ \\-/g, '-')\n // workaround for FontForge SVG importing bug\n .replace(/zm/g, 'z m');\n};\n\n\n// Translate path to (x [, y])\n//\nSvgPath.prototype.translate = function (x, y) {\n this.__stack.push(matrix().translate(x, y || 0));\n return this;\n};\n\n\n// Scale path to (sx [, sy])\n// sy = sx if not defined\n//\nSvgPath.prototype.scale = function (sx, sy) {\n this.__stack.push(matrix().scale(sx, (!sy && (sy !== 0)) ? sx : sy));\n return this;\n};\n\n\n// Rotate path around point (sx [, sy])\n// sy = sx if not defined\n//\nSvgPath.prototype.rotate = function (angle, rx, ry) {\n this.__stack.push(matrix().rotate(angle, rx || 0, ry || 0));\n return this;\n};\n\n\n// Skew path along the X axis by `degrees` angle\n//\nSvgPath.prototype.skewX = function (degrees) {\n this.__stack.push(matrix().skewX(degrees));\n return this;\n};\n\n\n// Skew path along the Y axis by `degrees` angle\n//\nSvgPath.prototype.skewY = function (degrees) {\n this.__stack.push(matrix().skewY(degrees));\n return this;\n};\n\n\n// Apply matrix transform (array of 6 elements)\n//\nSvgPath.prototype.matrix = function (m) {\n this.__stack.push(matrix().matrix(m));\n return this;\n};\n\n\n// Transform path according to \"transform\" attr of SVG spec\n//\nSvgPath.prototype.transform = function (transformString) {\n if (!transformString.trim()) {\n return this;\n }\n this.__stack.push(transformParse(transformString));\n return this;\n};\n\n\n// Round coords with given decimal precition.\n// 0 by default (to integers)\n//\nSvgPath.prototype.round = function (d) {\n var contourStartDeltaX = 0, contourStartDeltaY = 0, deltaX = 0, deltaY = 0, l;\n\n d = d || 0;\n\n this.__evaluateStack();\n\n this.segments.forEach(function (s) {\n var isRelative = (s[0].toLowerCase() === s[0]);\n\n switch (s[0]) {\n case 'H':\n case 'h':\n if (isRelative) { s[1] += deltaX; }\n deltaX = s[1] - s[1].toFixed(d);\n s[1] = +s[1].toFixed(d);\n return;\n\n case 'V':\n case 'v':\n if (isRelative) { s[1] += deltaY; }\n deltaY = s[1] - s[1].toFixed(d);\n s[1] = +s[1].toFixed(d);\n return;\n\n case 'Z':\n case 'z':\n deltaX = contourStartDeltaX;\n deltaY = contourStartDeltaY;\n return;\n\n case 'M':\n case 'm':\n if (isRelative) {\n s[1] += deltaX;\n s[2] += deltaY;\n }\n\n deltaX = s[1] - s[1].toFixed(d);\n deltaY = s[2] - s[2].toFixed(d);\n\n contourStartDeltaX = deltaX;\n contourStartDeltaY = deltaY;\n\n s[1] = +s[1].toFixed(d);\n s[2] = +s[2].toFixed(d);\n return;\n\n case 'A':\n case 'a':\n // [cmd, rx, ry, x-axis-rotation, large-arc-flag, sweep-flag, x, y]\n if (isRelative) {\n s[6] += deltaX;\n s[7] += deltaY;\n }\n\n deltaX = s[6] - s[6].toFixed(d);\n deltaY = s[7] - s[7].toFixed(d);\n\n s[1] = +s[1].toFixed(d);\n s[2] = +s[2].toFixed(d);\n s[3] = +s[3].toFixed(d + 2); // better precision for rotation\n s[6] = +s[6].toFixed(d);\n s[7] = +s[7].toFixed(d);\n return;\n\n default:\n // a c l q s t\n l = s.length;\n\n if (isRelative) {\n s[l - 2] += deltaX;\n s[l - 1] += deltaY;\n }\n\n deltaX = s[l - 2] - s[l - 2].toFixed(d);\n deltaY = s[l - 1] - s[l - 1].toFixed(d);\n\n s.forEach(function (val, i) {\n if (!i) { return; }\n s[i] = +s[i].toFixed(d);\n });\n return;\n }\n });\n\n return this;\n};\n\n\n// Apply iterator function to all segments. If function returns result,\n// current segment will be replaced to array of returned segments.\n// If empty array is returned, current regment will be deleted.\n//\nSvgPath.prototype.iterate = function (iterator, keepLazyStack) {\n var segments = this.segments,\n replacements = {},\n needReplace = false,\n lastX = 0,\n lastY = 0,\n countourStartX = 0,\n countourStartY = 0;\n var i, j, newSegments;\n\n if (!keepLazyStack) {\n this.__evaluateStack();\n }\n\n segments.forEach(function (s, index) {\n\n var res = iterator(s, index, lastX, lastY);\n\n if (Array.isArray(res)) {\n replacements[index] = res;\n needReplace = true;\n }\n\n var isRelative = (s[0] === s[0].toLowerCase());\n\n // calculate absolute X and Y\n switch (s[0]) {\n case 'm':\n case 'M':\n lastX = s[1] + (isRelative ? lastX : 0);\n lastY = s[2] + (isRelative ? lastY : 0);\n countourStartX = lastX;\n countourStartY = lastY;\n return;\n\n case 'h':\n case 'H':\n lastX = s[1] + (isRelative ? lastX : 0);\n return;\n\n case 'v':\n case 'V':\n lastY = s[1] + (isRelative ? lastY : 0);\n return;\n\n case 'z':\n case 'Z':\n // That make sence for multiple contours\n lastX = countourStartX;\n lastY = countourStartY;\n return;\n\n default:\n lastX = s[s.length - 2] + (isRelative ? lastX : 0);\n lastY = s[s.length - 1] + (isRelative ? lastY : 0);\n }\n });\n\n // Replace segments if iterator return results\n\n if (!needReplace) { return this; }\n\n newSegments = [];\n\n for (i = 0; i < segments.length; i++) {\n if (typeof replacements[i] !== 'undefined') {\n for (j = 0; j < replacements[i].length; j++) {\n newSegments.push(replacements[i][j]);\n }\n } else {\n newSegments.push(segments[i]);\n }\n }\n\n this.segments = newSegments;\n\n return this;\n};\n\n\n// Converts segments from relative to absolute\n//\nSvgPath.prototype.abs = function () {\n\n this.iterate(function (s, index, x, y) {\n var name = s[0],\n nameUC = name.toUpperCase(),\n i;\n\n // Skip absolute commands\n if (name === nameUC) { return; }\n\n s[0] = nameUC;\n\n switch (name) {\n case 'v':\n // v has shifted coords parity\n s[1] += y;\n return;\n\n case 'a':\n // ARC is: ['A', rx, ry, x-axis-rotation, large-arc-flag, sweep-flag, x, y]\n // touch x, y only\n s[6] += x;\n s[7] += y;\n return;\n\n default:\n for (i = 1; i < s.length; i++) {\n s[i] += i % 2 ? x : y; // odd values are X, even - Y\n }\n }\n }, true);\n\n return this;\n};\n\n\n// Converts segments from absolute to relative\n//\nSvgPath.prototype.rel = function () {\n\n this.iterate(function (s, index, x, y) {\n var name = s[0],\n nameLC = name.toLowerCase(),\n i;\n\n // Skip relative commands\n if (name === nameLC) { return; }\n\n // Don't touch the first M to avoid potential confusions.\n if (index === 0 && name === 'M') { return; }\n\n s[0] = nameLC;\n\n switch (name) {\n case 'V':\n // V has shifted coords parity\n s[1] -= y;\n return;\n\n case 'A':\n // ARC is: ['A', rx, ry, x-axis-rotation, large-arc-flag, sweep-flag, x, y]\n // touch x, y only\n s[6] -= x;\n s[7] -= y;\n return;\n\n default:\n for (i = 1; i < s.length; i++) {\n s[i] -= i % 2 ? x : y; // odd values are X, even - Y\n }\n }\n }, true);\n\n return this;\n};\n\n\n// Converts arcs to cubic bézier curves\n//\nSvgPath.prototype.unarc = function () {\n this.iterate(function (s, index, x, y) {\n var new_segments, nextX, nextY, result = [], name = s[0];\n\n // Skip anything except arcs\n if (name !== 'A' && name !== 'a') { return null; }\n\n if (name === 'a') {\n // convert relative arc coordinates to absolute\n nextX = x + s[6];\n nextY = y + s[7];\n } else {\n nextX = s[6];\n nextY = s[7];\n }\n\n new_segments = a2c(x, y, nextX, nextY, s[4], s[5], s[1], s[2], s[3]);\n\n // Degenerated arcs can be ignored by renderer, but should not be dropped\n // to avoid collisions with `S A S` and so on. Replace with empty line.\n if (new_segments.length === 0) {\n return [ [ s[0] === 'a' ? 'l' : 'L', s[6], s[7] ] ];\n }\n\n new_segments.forEach(function (s) {\n result.push([ 'C', s[2], s[3], s[4], s[5], s[6], s[7] ]);\n });\n\n return result;\n });\n\n return this;\n};\n\n\n// Converts smooth curves (with missed control point) to generic curves\n//\nSvgPath.prototype.unshort = function () {\n var segments = this.segments;\n var prevControlX, prevControlY, prevSegment;\n var curControlX, curControlY;\n\n // TODO: add lazy evaluation flag when relative commands supported\n\n this.iterate(function (s, idx, x, y) {\n var name = s[0], nameUC = name.toUpperCase(), isRelative;\n\n // First command MUST be M|m, it's safe to skip.\n // Protect from access to [-1] for sure.\n if (!idx) { return; }\n\n if (nameUC === 'T') { // quadratic curve\n isRelative = (name === 't');\n\n prevSegment = segments[idx - 1];\n\n if (prevSegment[0] === 'Q') {\n prevControlX = prevSegment[1] - x;\n prevControlY = prevSegment[2] - y;\n } else if (prevSegment[0] === 'q') {\n prevControlX = prevSegment[1] - prevSegment[3];\n prevControlY = prevSegment[2] - prevSegment[4];\n } else {\n prevControlX = 0;\n prevControlY = 0;\n }\n\n curControlX = -prevControlX;\n curControlY = -prevControlY;\n\n if (!isRelative) {\n curControlX += x;\n curControlY += y;\n }\n\n segments[idx] = [\n isRelative ? 'q' : 'Q',\n curControlX, curControlY,\n s[1], s[2]\n ];\n\n } else if (nameUC === 'S') { // cubic curve\n isRelative = (name === 's');\n\n prevSegment = segments[idx - 1];\n\n if (prevSegment[0] === 'C') {\n prevControlX = prevSegment[3] - x;\n prevControlY = prevSegment[4] - y;\n } else if (prevSegment[0] === 'c') {\n prevControlX = prevSegment[3] - prevSegment[5];\n prevControlY = prevSegment[4] - prevSegment[6];\n } else {\n prevControlX = 0;\n prevControlY = 0;\n }\n\n curControlX = -prevControlX;\n curControlY = -prevControlY;\n\n if (!isRelative) {\n curControlX += x;\n curControlY += y;\n }\n\n segments[idx] = [\n isRelative ? 'c' : 'C',\n curControlX, curControlY,\n s[1], s[2], s[3], s[4]\n ];\n }\n });\n\n return this;\n};\n\n\nmodule.exports = SvgPath;\n","'use strict';\n\nmodule.exports = require('./lib/svgpath');\n",null,null,null,null,null,null,null,null,null,null,null,null,null,"// Calculate the specificity for a selector by dividing it into simple selectors and counting them\nvar calculate = function(input) {\n\tvar selectors,\n\t\tselector,\n\t\ti,\n\t\tlen,\n\t\tresults = [];\n\n\t// Separate input by commas\n\tselectors = input.split(',');\n\n\tfor (i = 0, len = selectors.length; i < len; i += 1) {\n\t\tselector = selectors[i];\n\t\tif (selector.length > 0) {\n\t\t\tresults.push(calculateSingle(selector));\n\t\t}\n\t}\n\n\treturn results;\n};\n\n/**\n * Calculates the specificity of CSS selectors\n * http://www.w3.org/TR/css3-selectors/#specificity\n *\n * Returns an object with the following properties:\n * - selector: the input\n * - specificity: e.g. 0,1,0,0\n * - parts: array with details about each part of the selector that counts towards the specificity\n * - specificityArray: e.g. [0, 1, 0, 0]\n */\nvar calculateSingle = function(input) {\n\tvar selector = input,\n\t\tfindMatch,\n\t\ttypeCount = {\n\t\t\t'a': 0,\n\t\t\t'b': 0,\n\t\t\t'c': 0\n\t\t},\n\t\tparts = [],\n\t\t// The following regular expressions assume that selectors matching the preceding regular expressions have been removed\n\t\tattributeRegex = /(\\[[^\\]]+\\])/g,\n\t\tidRegex = /(#[^\\#\\s\\+>~\\.\\[:\\)]+)/g,\n\t\tclassRegex = /(\\.[^\\s\\+>~\\.\\[:\\)]+)/g,\n\t\tpseudoElementRegex = /(::[^\\s\\+>~\\.\\[:]+|:first-line|:first-letter|:before|:after)/gi,\n\t\t// A regex for pseudo classes with brackets - :nth-child(), :nth-last-child(), :nth-of-type(), :nth-last-type(), :lang()\n\t\t// The negation psuedo class (:not) is filtered out because specificity is calculated on its argument\n\t\t// :global and :local are filtered out - they look like psuedo classes but are an identifier for CSS Modules\n\t\tpseudoClassWithBracketsRegex = /(:(?!not|global|local)[\\w-]+\\([^\\)]*\\))/gi,\n\t\t// A regex for other pseudo classes, which don't have brackets\n\t\tpseudoClassRegex = /(:(?!not|global|local)[^\\s\\+>~\\.\\[:]+)/g,\n\t\telementRegex = /([^\\s\\+>~\\.\\[:]+)/g;\n\n\t// Find matches for a regular expression in a string and push their details to parts\n\t// Type is \"a\" for IDs, \"b\" for classes, attributes and pseudo-classes and \"c\" for elements and pseudo-elements\n\tfindMatch = function(regex, type) {\n\t\tvar matches, i, len, match, index, length;\n\t\tif (regex.test(selector)) {\n\t\t\tmatches = selector.match(regex);\n\t\t\tfor (i = 0, len = matches.length; i < len; i += 1) {\n\t\t\t\ttypeCount[type] += 1;\n\t\t\t\tmatch = matches[i];\n\t\t\t\tindex = selector.indexOf(match);\n\t\t\t\tlength = match.length;\n\t\t\t\tparts.push({\n\t\t\t\t\tselector: input.substr(index, length),\n\t\t\t\t\ttype: type,\n\t\t\t\t\tindex: index,\n\t\t\t\t\tlength: length\n\t\t\t\t});\n\t\t\t\t// Replace this simple selector with whitespace so it won't be counted in further simple selectors\n\t\t\t\tselector = selector.replace(match, Array(length + 1).join(' '));\n\t\t\t}\n\t\t}\n\t};\n\n\t// Replace escaped characters with plain text, using the \"A\" character\n\t// https://www.w3.org/TR/CSS21/syndata.html#characters\n\t(function() {\n\t\tvar replaceWithPlainText = function(regex) {\n\t\t\t\tvar matches, i, len, match;\n\t\t\t\tif (regex.test(selector)) {\n\t\t\t\t\tmatches = selector.match(regex);\n\t\t\t\t\tfor (i = 0, len = matches.length; i < len; i += 1) {\n\t\t\t\t\t\tmatch = matches[i];\n\t\t\t\t\t\tselector = selector.replace(match, Array(match.length + 1).join('A'));\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\t// Matches a backslash followed by six hexadecimal digits followed by an optional single whitespace character\n\t\t\tescapeHexadecimalRegex = /\\\\[0-9A-Fa-f]{6}\\s?/g,\n\t\t\t// Matches a backslash followed by fewer than six hexadecimal digits followed by a mandatory single whitespace character\n\t\t\tescapeHexadecimalRegex2 = /\\\\[0-9A-Fa-f]{1,5}\\s/g,\n\t\t\t// Matches a backslash followed by any character\n\t\t\tescapeSpecialCharacter = /\\\\./g;\n\n\t\treplaceWithPlainText(escapeHexadecimalRegex);\n\t\treplaceWithPlainText(escapeHexadecimalRegex2);\n\t\treplaceWithPlainText(escapeSpecialCharacter);\n\t}());\n\n\t// Remove anything after a left brace in case a user has pasted in a rule, not just a selector\n\t(function() {\n\t\tvar regex = /{[^]*/gm,\n\t\t\tmatches, i, len, match;\n\t\tif (regex.test(selector)) {\n\t\t\tmatches = selector.match(regex);\n\t\t\tfor (i = 0, len = matches.length; i < len; i += 1) {\n\t\t\t\tmatch = matches[i];\n\t\t\t\tselector = selector.replace(match, Array(match.length + 1).join(' '));\n\t\t\t}\n\t\t}\n\t}());\n\n\t// Add attribute selectors to parts collection (type b)\n\tfindMatch(attributeRegex, 'b');\n\n\t// Add ID selectors to parts collection (type a)\n\tfindMatch(idRegex, 'a');\n\n\t// Add class selectors to parts collection (type b)\n\tfindMatch(classRegex, 'b');\n\n\t// Add pseudo-element selectors to parts collection (type c)\n\tfindMatch(pseudoElementRegex, 'c');\n\n\t// Add pseudo-class selectors to parts collection (type b)\n\tfindMatch(pseudoClassWithBracketsRegex, 'b');\n\tfindMatch(pseudoClassRegex, 'b');\n\n\t// Remove universal selector and separator characters\n\tselector = selector.replace(/[\\*\\s\\+>~]/g, ' ');\n\n\t// Remove any stray dots or hashes which aren't attached to words\n\t// These may be present if the user is live-editing this selector\n\tselector = selector.replace(/[#\\.]/g, ' ');\n\n\t// Remove the negation psuedo-class (:not) but leave its argument because specificity is calculated on its argument\n \t// Remove non-standard :local and :global CSS Module identifiers because they do not effect the specificity\n\tselector = selector.replace(/:not/g, ' ');\n\tselector = selector.replace(/:local/g, ' ');\n\tselector = selector.replace(/:global/g, ' ');\n\tselector = selector.replace(/[\\(\\)]/g, ' ');\n\n\t// The only things left should be element selectors (type c)\n\tfindMatch(elementRegex, 'c');\n\n\t// Order the parts in the order they appear in the original selector\n\t// This is neater for external apps to deal with\n\tparts.sort(function(a, b) {\n\t\treturn a.index - b.index;\n\t});\n\n\treturn {\n\t\tselector: input,\n\t\tspecificity: '0,' + typeCount.a.toString() + ',' + typeCount.b.toString() + ',' + typeCount.c.toString(),\n\t\tspecificityArray: [0, typeCount.a, typeCount.b, typeCount.c],\n\t\tparts: parts\n\t};\n};\n\n/**\n * Compares two CSS selectors for specificity\n * Alternatively you can replace one of the CSS selectors with a specificity array\n *\n * - it returns -1 if a has a lower specificity than b\n * - it returns 1 if a has a higher specificity than b\n * - it returns 0 if a has the same specificity than b\n */\nvar compare = function(a, b) {\n\tvar aSpecificity,\n\t\tbSpecificity,\n\t\ti;\n\n\tif (typeof a ==='string') {\n\t\tif (a.indexOf(',') !== -1) {\n\t\t\tthrow 'Invalid CSS selector';\n\t\t} else {\n\t\t\taSpecificity = calculateSingle(a)['specificityArray'];\n\t\t}\n\t} else if (Array.isArray(a)) {\n\t\tif (a.filter(function(e) { return (typeof e === 'number'); }).length !== 4) {\n\t\t\tthrow 'Invalid specificity array';\n\t\t} else {\n\t\t\taSpecificity = a;\n\t\t}\n\t} else {\n\t\tthrow 'Invalid CSS selector or specificity array';\n\t}\n\n\tif (typeof b ==='string') {\n\t\tif (b.indexOf(',') !== -1) {\n\t\t\tthrow 'Invalid CSS selector';\n\t\t} else {\n\t\t\tbSpecificity = calculateSingle(b)['specificityArray'];\n\t\t}\n\t} else if (Array.isArray(b)) {\n\t\tif (b.filter(function(e) { return (typeof e === 'number'); }).length !== 4) {\n\t\t\tthrow 'Invalid specificity array';\n\t\t} else {\n\t\t\tbSpecificity = b;\n\t\t}\n\t} else {\n\t\tthrow 'Invalid CSS selector or specificity array';\n\t}\n\n\tfor (i = 0; i < 4; i += 1) {\n\t\tif (aSpecificity[i] < bSpecificity[i]) {\n\t\t\treturn -1;\n\t\t} else if (aSpecificity[i] > bSpecificity[i]) {\n\t\t\treturn 1;\n\t\t}\n\t}\n\n\treturn 0;\n};\n\nexport { calculate, compare };\n",null,null],"names":["cssEsc","GState","ShadingPattern","TilingPattern","FontFamily","Symbol","matrix","Matrix","Ellipse","pathParse","transformParse","require$$0","SvgPath","parse","cssesc","compare","compareSpecificity","jsPDF"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"svg2pdf.umd.js","sources":["../node_modules/tslib/tslib.es6.js","../src/utils/rgbcolor.ts","../src/fill/ColorFill.ts","../src/context/attributestate.ts","../src/utils/constants.ts","../src/context/textmeasure.ts","../src/context/context.ts","../node_modules/cssesc/cssesc.js","../src/context/referenceshandler.ts","../src/utils/geometry.ts","../src/utils/path.ts","../src/utils/node.ts","../src/markerlist.ts","../src/utils/misc.ts","../src/utils/parsing.ts","../node_modules/font-family-papandreou/index.js","../src/utils/fonts.ts","../src/utils/bbox.ts","../src/utils/transform.ts","../src/nodes/svgnode.ts","../src/nodes/nonrenderednode.ts","../src/nodes/gradient.ts","../src/nodes/lineargradient.ts","../src/nodes/radialgradient.ts","../src/fill/GradientFill.ts","../src/nodes/pattern.ts","../src/fill/PatternFill.ts","../src/fill/parseFill.ts","../src/applyparseattributes.ts","../src/utils/applyclippath.ts","../src/nodes/renderednode.ts","../src/nodes/graphicsnode.ts","../src/nodes/geometrynode.ts","../src/nodes/line.ts","../src/nodes/symbol.ts","../src/context/viewport.ts","../src/nodes/use.ts","../src/nodes/rect.ts","../src/nodes/ellipsebase.ts","../src/nodes/ellipse.ts","../src/utils/text.ts","../src/textchunk.ts","../src/nodes/text.ts","../node_modules/svgpath/lib/path_parse.js","../node_modules/svgpath/lib/matrix.js","../node_modules/svgpath/lib/transform_parse.js","../node_modules/svgpath/lib/a2c.js","../node_modules/svgpath/lib/ellipse.js","../node_modules/svgpath/lib/svgpath.js","../node_modules/svgpath/index.js","../src/nodes/path.ts","../src/nodes/image.ts","../src/nodes/traverse.ts","../src/nodes/polygon.ts","../src/nodes/void.ts","../src/nodes/marker.ts","../src/nodes/circle.ts","../src/nodes/polyline.ts","../src/nodes/containernode.ts","../src/nodes/svg.ts","../src/nodes/group.ts","../src/nodes/clippath.ts","../src/parse.ts","../node_modules/specificity/dist/specificity.mjs","../src/context/stylesheets.ts","../src/svg2pdf.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n",null,null,null,null,null,null,"/*! https://mths.be/cssesc v3.0.0 by @mathias */\n'use strict';\n\nvar object = {};\nvar hasOwnProperty = object.hasOwnProperty;\nvar merge = function merge(options, defaults) {\n\tif (!options) {\n\t\treturn defaults;\n\t}\n\tvar result = {};\n\tfor (var key in defaults) {\n\t\t// `if (defaults.hasOwnProperty(key) { … }` is not needed here, since\n\t\t// only recognized option names are used.\n\t\tresult[key] = hasOwnProperty.call(options, key) ? options[key] : defaults[key];\n\t}\n\treturn result;\n};\n\nvar regexAnySingleEscape = /[ -,\\.\\/:-@\\[-\\^`\\{-~]/;\nvar regexSingleEscape = /[ -,\\.\\/:-@\\[\\]\\^`\\{-~]/;\nvar regexAlwaysEscape = /['\"\\\\]/;\nvar regexExcessiveSpaces = /(^|\\\\+)?(\\\\[A-F0-9]{1,6})\\x20(?![a-fA-F0-9\\x20])/g;\n\n// https://mathiasbynens.be/notes/css-escapes#css\nvar cssesc = function cssesc(string, options) {\n\toptions = merge(options, cssesc.options);\n\tif (options.quotes != 'single' && options.quotes != 'double') {\n\t\toptions.quotes = 'single';\n\t}\n\tvar quote = options.quotes == 'double' ? '\"' : '\\'';\n\tvar isIdentifier = options.isIdentifier;\n\n\tvar firstChar = string.charAt(0);\n\tvar output = '';\n\tvar counter = 0;\n\tvar length = string.length;\n\twhile (counter < length) {\n\t\tvar character = string.charAt(counter++);\n\t\tvar codePoint = character.charCodeAt();\n\t\tvar value = void 0;\n\t\t// If it’s not a printable ASCII character…\n\t\tif (codePoint < 0x20 || codePoint > 0x7E) {\n\t\t\tif (codePoint >= 0xD800 && codePoint <= 0xDBFF && counter < length) {\n\t\t\t\t// It’s a high surrogate, and there is a next character.\n\t\t\t\tvar extra = string.charCodeAt(counter++);\n\t\t\t\tif ((extra & 0xFC00) == 0xDC00) {\n\t\t\t\t\t// next character is low surrogate\n\t\t\t\t\tcodePoint = ((codePoint & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000;\n\t\t\t\t} else {\n\t\t\t\t\t// It’s an unmatched surrogate; only append this code unit, in case\n\t\t\t\t\t// the next code unit is the high surrogate of a surrogate pair.\n\t\t\t\t\tcounter--;\n\t\t\t\t}\n\t\t\t}\n\t\t\tvalue = '\\\\' + codePoint.toString(16).toUpperCase() + ' ';\n\t\t} else {\n\t\t\tif (options.escapeEverything) {\n\t\t\t\tif (regexAnySingleEscape.test(character)) {\n\t\t\t\t\tvalue = '\\\\' + character;\n\t\t\t\t} else {\n\t\t\t\t\tvalue = '\\\\' + codePoint.toString(16).toUpperCase() + ' ';\n\t\t\t\t}\n\t\t\t} else if (/[\\t\\n\\f\\r\\x0B]/.test(character)) {\n\t\t\t\tvalue = '\\\\' + codePoint.toString(16).toUpperCase() + ' ';\n\t\t\t} else if (character == '\\\\' || !isIdentifier && (character == '\"' && quote == character || character == '\\'' && quote == character) || isIdentifier && regexSingleEscape.test(character)) {\n\t\t\t\tvalue = '\\\\' + character;\n\t\t\t} else {\n\t\t\t\tvalue = character;\n\t\t\t}\n\t\t}\n\t\toutput += value;\n\t}\n\n\tif (isIdentifier) {\n\t\tif (/^-[-\\d]/.test(output)) {\n\t\t\toutput = '\\\\-' + output.slice(1);\n\t\t} else if (/\\d/.test(firstChar)) {\n\t\t\toutput = '\\\\3' + firstChar + ' ' + output.slice(1);\n\t\t}\n\t}\n\n\t// Remove spaces after `\\HEX` escapes that are not followed by a hex digit,\n\t// since they’re redundant. Note that this is only possible if the escape\n\t// sequence isn’t preceded by an odd number of backslashes.\n\toutput = output.replace(regexExcessiveSpaces, function ($0, $1, $2) {\n\t\tif ($1 && $1.length % 2) {\n\t\t\t// It’s not safe to remove the space, so don’t.\n\t\t\treturn $0;\n\t\t}\n\t\t// Strip the space.\n\t\treturn ($1 || '') + $2;\n\t});\n\n\tif (!isIdentifier && options.wrap) {\n\t\treturn quote + output + quote;\n\t}\n\treturn output;\n};\n\n// Expose default options (so they can be overridden globally).\ncssesc.options = {\n\t'escapeEverything': false,\n\t'isIdentifier': false,\n\t'quotes': 'single',\n\t'wrap': false\n};\n\ncssesc.version = '3.0.0';\n\nmodule.exports = cssesc;\n",null,null,null,null,null,null,null,"// parse\n// =====\n\n// states\n// ------\n\nvar PLAIN = 0;\nvar STRINGS = 1;\nvar ESCAPING = 2;\nvar IDENTIFIER = 3;\nvar SEPARATING = 4;\nvar SPACEAFTERIDENTIFIER = 5;\n\n// patterns\n// --------\n\nvar identifierPattern = /[a-z0-9_-]/i;\nvar spacePattern = /[\\s\\t]/;\n\n// ---\n\nvar parse = function(str) {\n\n // vars\n // ----\n\n var starting = true;\n var state = PLAIN;\n var buffer = '';\n var i = 0;\n var quote;\n var c;\n\n // result\n // ------\n\n var names = [];\n\n // parse\n // -----\n\n while (true) {\n\n c = str[i];\n\n if (state === PLAIN) {\n\n if (!c && starting) {\n\n break;\n\n } else if (!c && !starting) {\n\n throw new Error('Parse error');\n\n } else if (c === '\"' || c === \"'\") {\n\n quote = c;\n state = STRINGS;\n starting = false;\n\n } else if (spacePattern.test(c)) {\n } else if (identifierPattern.test(c)) {\n\n state = IDENTIFIER;\n starting = false;\n i--;\n\n } else {\n\n throw new Error('Parse error');\n\n }\n\n } else if (state === STRINGS) {\n\n if (!c) {\n\n throw new Error('Parse Error');\n\n } else if (c === \"\\\\\") {\n\n state = ESCAPING;\n\n } else if (c === quote) {\n\n names.push(buffer);\n buffer = '';\n state = SEPARATING;\n\n } else {\n\n buffer += c;\n\n }\n\n } else if (state === ESCAPING) {\n\n if (c === quote || c === \"\\\\\") {\n\n buffer += c;\n state = STRINGS;\n\n } else {\n\n throw new Error('Parse error');\n\n }\n\n } else if (state === IDENTIFIER) {\n\n if (!c) {\n\n names.push(buffer);\n break;\n\n } else if (identifierPattern.test(c)) {\n\n buffer += c;\n\n } else if (c === ',') {\n\n names.push(buffer);\n buffer = '';\n state = PLAIN;\n\n } else if (spacePattern.test(c)) {\n\n state = SPACEAFTERIDENTIFIER;\n } else {\n\n throw new Error('Parse error');\n\n }\n } else if (state === SPACEAFTERIDENTIFIER) {\n\n if (!c) {\n\n names.push(buffer);\n break;\n\n } else if (identifierPattern.test(c)) {\n\n buffer += ' ' + c;\n state = IDENTIFIER;\n\n } else if (c === ',') {\n\n names.push(buffer);\n buffer = '';\n state = PLAIN;\n\n } else if (spacePattern.test(c)) {\n } else {\n\n throw new Error('Parse error');\n\n }\n\n } else if (state === SEPARATING) {\n\n if (!c) {\n\n break;\n\n } else if (c === ',') {\n\n state = PLAIN;\n\n } else if (spacePattern.test(c)) {\n } else {\n\n throw new Error('Parse error');\n\n }\n\n }\n\n i++;\n\n }\n\n // result\n // ------\n\n return names;\n\n};\n\n// stringify\n// =========\n\n// pattern\n// -------\n\nvar stringsPattern = /[^a-z0-9_-]/i;\n\n// ---\n\nvar stringify = function(names, options) {\n\n // quote\n // -----\n\n var quote = options && options.quote || '\"';\n if (quote !== '\"' && quote !== \"'\") {\n throw new Error('Quote must be `\\'` or `\"`');\n }\n var quotePattern = new RegExp(quote, 'g');\n\n // stringify\n // ---------\n\n var safeNames = [];\n\n for (var i = 0; i < names.length; ++i) {\n var name = names[i];\n\n if (stringsPattern.test(name)) {\n name = name\n .replace(/\\\\/g, \"\\\\\\\\\")\n .replace(quotePattern, \"\\\\\" + quote);\n name = quote + name + quote;\n }\n safeNames.push(name);\n }\n\n // result\n // ------\n\n return safeNames.join(', ');\n};\n\n// export\n// ======\n\nmodule.exports = {\n parse: parse,\n stringify: stringify,\n};\n",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"'use strict';\n\n\nvar paramCounts = { a: 7, c: 6, h: 1, l: 2, m: 2, r: 4, q: 4, s: 4, t: 2, v: 1, z: 0 };\n\nvar SPECIAL_SPACES = [\n 0x1680, 0x180E, 0x2000, 0x2001, 0x2002, 0x2003, 0x2004, 0x2005, 0x2006,\n 0x2007, 0x2008, 0x2009, 0x200A, 0x202F, 0x205F, 0x3000, 0xFEFF\n];\n\nfunction isSpace(ch) {\n return (ch === 0x0A) || (ch === 0x0D) || (ch === 0x2028) || (ch === 0x2029) || // Line terminators\n // White spaces\n (ch === 0x20) || (ch === 0x09) || (ch === 0x0B) || (ch === 0x0C) || (ch === 0xA0) ||\n (ch >= 0x1680 && SPECIAL_SPACES.indexOf(ch) >= 0);\n}\n\nfunction isCommand(code) {\n /*eslint-disable no-bitwise*/\n switch (code | 0x20) {\n case 0x6D/* m */:\n case 0x7A/* z */:\n case 0x6C/* l */:\n case 0x68/* h */:\n case 0x76/* v */:\n case 0x63/* c */:\n case 0x73/* s */:\n case 0x71/* q */:\n case 0x74/* t */:\n case 0x61/* a */:\n case 0x72/* r */:\n return true;\n }\n return false;\n}\n\nfunction isArc(code) {\n return (code | 0x20) === 0x61;\n}\n\nfunction isDigit(code) {\n return (code >= 48 && code <= 57); // 0..9\n}\n\nfunction isDigitStart(code) {\n return (code >= 48 && code <= 57) || /* 0..9 */\n code === 0x2B || /* + */\n code === 0x2D || /* - */\n code === 0x2E; /* . */\n}\n\n\nfunction State(path) {\n this.index = 0;\n this.path = path;\n this.max = path.length;\n this.result = [];\n this.param = 0.0;\n this.err = '';\n this.segmentStart = 0;\n this.data = [];\n}\n\nfunction skipSpaces(state) {\n while (state.index < state.max && isSpace(state.path.charCodeAt(state.index))) {\n state.index++;\n }\n}\n\n\nfunction scanFlag(state) {\n var ch = state.path.charCodeAt(state.index);\n\n if (ch === 0x30/* 0 */) {\n state.param = 0;\n state.index++;\n return;\n }\n\n if (ch === 0x31/* 1 */) {\n state.param = 1;\n state.index++;\n return;\n }\n\n state.err = 'SvgPath: arc flag can be 0 or 1 only (at pos ' + state.index + ')';\n}\n\n\nfunction scanParam(state) {\n var start = state.index,\n index = start,\n max = state.max,\n zeroFirst = false,\n hasCeiling = false,\n hasDecimal = false,\n hasDot = false,\n ch;\n\n if (index >= max) {\n state.err = 'SvgPath: missed param (at pos ' + index + ')';\n return;\n }\n ch = state.path.charCodeAt(index);\n\n if (ch === 0x2B/* + */ || ch === 0x2D/* - */) {\n index++;\n ch = (index < max) ? state.path.charCodeAt(index) : 0;\n }\n\n // This logic is shamelessly borrowed from Esprima\n // https://github.com/ariya/esprimas\n //\n if (!isDigit(ch) && ch !== 0x2E/* . */) {\n state.err = 'SvgPath: param should start with 0..9 or `.` (at pos ' + index + ')';\n return;\n }\n\n if (ch !== 0x2E/* . */) {\n zeroFirst = (ch === 0x30/* 0 */);\n index++;\n\n ch = (index < max) ? state.path.charCodeAt(index) : 0;\n\n if (zeroFirst && index < max) {\n // decimal number starts with '0' such as '09' is illegal.\n if (ch && isDigit(ch)) {\n state.err = 'SvgPath: numbers started with `0` such as `09` are illegal (at pos ' + start + ')';\n return;\n }\n }\n\n while (index < max && isDigit(state.path.charCodeAt(index))) {\n index++;\n hasCeiling = true;\n }\n ch = (index < max) ? state.path.charCodeAt(index) : 0;\n }\n\n if (ch === 0x2E/* . */) {\n hasDot = true;\n index++;\n while (isDigit(state.path.charCodeAt(index))) {\n index++;\n hasDecimal = true;\n }\n ch = (index < max) ? state.path.charCodeAt(index) : 0;\n }\n\n if (ch === 0x65/* e */ || ch === 0x45/* E */) {\n if (hasDot && !hasCeiling && !hasDecimal) {\n state.err = 'SvgPath: invalid float exponent (at pos ' + index + ')';\n return;\n }\n\n index++;\n\n ch = (index < max) ? state.path.charCodeAt(index) : 0;\n if (ch === 0x2B/* + */ || ch === 0x2D/* - */) {\n index++;\n }\n if (index < max && isDigit(state.path.charCodeAt(index))) {\n while (index < max && isDigit(state.path.charCodeAt(index))) {\n index++;\n }\n } else {\n state.err = 'SvgPath: invalid float exponent (at pos ' + index + ')';\n return;\n }\n }\n\n state.index = index;\n state.param = parseFloat(state.path.slice(start, index)) + 0.0;\n}\n\n\nfunction finalizeSegment(state) {\n var cmd, cmdLC;\n\n // Process duplicated commands (without comand name)\n\n // This logic is shamelessly borrowed from Raphael\n // https://github.com/DmitryBaranovskiy/raphael/\n //\n cmd = state.path[state.segmentStart];\n cmdLC = cmd.toLowerCase();\n\n var params = state.data;\n\n if (cmdLC === 'm' && params.length > 2) {\n state.result.push([ cmd, params[0], params[1] ]);\n params = params.slice(2);\n cmdLC = 'l';\n cmd = (cmd === 'm') ? 'l' : 'L';\n }\n\n if (cmdLC === 'r') {\n state.result.push([ cmd ].concat(params));\n } else {\n\n while (params.length >= paramCounts[cmdLC]) {\n state.result.push([ cmd ].concat(params.splice(0, paramCounts[cmdLC])));\n if (!paramCounts[cmdLC]) {\n break;\n }\n }\n }\n}\n\n\nfunction scanSegment(state) {\n var max = state.max,\n cmdCode, is_arc, comma_found, need_params, i;\n\n state.segmentStart = state.index;\n cmdCode = state.path.charCodeAt(state.index);\n is_arc = isArc(cmdCode);\n\n if (!isCommand(cmdCode)) {\n state.err = 'SvgPath: bad command ' + state.path[state.index] + ' (at pos ' + state.index + ')';\n return;\n }\n\n need_params = paramCounts[state.path[state.index].toLowerCase()];\n\n state.index++;\n skipSpaces(state);\n\n state.data = [];\n\n if (!need_params) {\n // Z\n finalizeSegment(state);\n return;\n }\n\n comma_found = false;\n\n for (;;) {\n for (i = need_params; i > 0; i--) {\n if (is_arc && (i === 3 || i === 4)) scanFlag(state);\n else scanParam(state);\n\n if (state.err.length) {\n return;\n }\n state.data.push(state.param);\n\n skipSpaces(state);\n comma_found = false;\n\n if (state.index < max && state.path.charCodeAt(state.index) === 0x2C/* , */) {\n state.index++;\n skipSpaces(state);\n comma_found = true;\n }\n }\n\n // after ',' param is mandatory\n if (comma_found) {\n continue;\n }\n\n if (state.index >= state.max) {\n break;\n }\n\n // Stop on next segment\n if (!isDigitStart(state.path.charCodeAt(state.index))) {\n break;\n }\n }\n\n finalizeSegment(state);\n}\n\n\n/* Returns array of segments:\n *\n * [\n * [ command, coord1, coord2, ... ]\n * ]\n */\nmodule.exports = function pathParse(svgPath) {\n var state = new State(svgPath);\n var max = state.max;\n\n skipSpaces(state);\n\n while (state.index < max && !state.err.length) {\n scanSegment(state);\n }\n\n if (state.err.length) {\n state.result = [];\n\n } else if (state.result.length) {\n\n if ('mM'.indexOf(state.result[0][0]) < 0) {\n state.err = 'SvgPath: string should start with `M` or `m`';\n state.result = [];\n } else {\n state.result[0][0] = 'M';\n }\n }\n\n return {\n err: state.err,\n segments: state.result\n };\n};\n","'use strict';\n\n// combine 2 matrixes\n// m1, m2 - [a, b, c, d, e, g]\n//\nfunction combine(m1, m2) {\n return [\n m1[0] * m2[0] + m1[2] * m2[1],\n m1[1] * m2[0] + m1[3] * m2[1],\n m1[0] * m2[2] + m1[2] * m2[3],\n m1[1] * m2[2] + m1[3] * m2[3],\n m1[0] * m2[4] + m1[2] * m2[5] + m1[4],\n m1[1] * m2[4] + m1[3] * m2[5] + m1[5]\n ];\n}\n\n\nfunction Matrix() {\n if (!(this instanceof Matrix)) { return new Matrix(); }\n this.queue = []; // list of matrixes to apply\n this.cache = null; // combined matrix cache\n}\n\n\nMatrix.prototype.matrix = function (m) {\n if (m[0] === 1 && m[1] === 0 && m[2] === 0 && m[3] === 1 && m[4] === 0 && m[5] === 0) {\n return this;\n }\n this.cache = null;\n this.queue.push(m);\n return this;\n};\n\n\nMatrix.prototype.translate = function (tx, ty) {\n if (tx !== 0 || ty !== 0) {\n this.cache = null;\n this.queue.push([ 1, 0, 0, 1, tx, ty ]);\n }\n return this;\n};\n\n\nMatrix.prototype.scale = function (sx, sy) {\n if (sx !== 1 || sy !== 1) {\n this.cache = null;\n this.queue.push([ sx, 0, 0, sy, 0, 0 ]);\n }\n return this;\n};\n\n\nMatrix.prototype.rotate = function (angle, rx, ry) {\n var rad, cos, sin;\n\n if (angle !== 0) {\n this.translate(rx, ry);\n\n rad = angle * Math.PI / 180;\n cos = Math.cos(rad);\n sin = Math.sin(rad);\n\n this.queue.push([ cos, sin, -sin, cos, 0, 0 ]);\n this.cache = null;\n\n this.translate(-rx, -ry);\n }\n return this;\n};\n\n\nMatrix.prototype.skewX = function (angle) {\n if (angle !== 0) {\n this.cache = null;\n this.queue.push([ 1, 0, Math.tan(angle * Math.PI / 180), 1, 0, 0 ]);\n }\n return this;\n};\n\n\nMatrix.prototype.skewY = function (angle) {\n if (angle !== 0) {\n this.cache = null;\n this.queue.push([ 1, Math.tan(angle * Math.PI / 180), 0, 1, 0, 0 ]);\n }\n return this;\n};\n\n\n// Flatten queue\n//\nMatrix.prototype.toArray = function () {\n if (this.cache) {\n return this.cache;\n }\n\n if (!this.queue.length) {\n this.cache = [ 1, 0, 0, 1, 0, 0 ];\n return this.cache;\n }\n\n this.cache = this.queue[0];\n\n if (this.queue.length === 1) {\n return this.cache;\n }\n\n for (var i = 1; i < this.queue.length; i++) {\n this.cache = combine(this.cache, this.queue[i]);\n }\n\n return this.cache;\n};\n\n\n// Apply list of matrixes to (x,y) point.\n// If `isRelative` set, `translate` component of matrix will be skipped\n//\nMatrix.prototype.calc = function (x, y, isRelative) {\n var m;\n\n // Don't change point on empty transforms queue\n if (!this.queue.length) { return [ x, y ]; }\n\n // Calculate final matrix, if not exists\n //\n // NB. if you deside to apply transforms to point one-by-one,\n // they should be taken in reverse order\n\n if (!this.cache) {\n this.cache = this.toArray();\n }\n\n m = this.cache;\n\n // Apply matrix to point\n return [\n x * m[0] + y * m[2] + (isRelative ? 0 : m[4]),\n x * m[1] + y * m[3] + (isRelative ? 0 : m[5])\n ];\n};\n\n\nmodule.exports = Matrix;\n","'use strict';\n\n\nvar Matrix = require('./matrix');\n\nvar operations = {\n matrix: true,\n scale: true,\n rotate: true,\n translate: true,\n skewX: true,\n skewY: true\n};\n\nvar CMD_SPLIT_RE = /\\s*(matrix|translate|scale|rotate|skewX|skewY)\\s*\\(\\s*(.+?)\\s*\\)[\\s,]*/;\nvar PARAMS_SPLIT_RE = /[\\s,]+/;\n\n\nmodule.exports = function transformParse(transformString) {\n var matrix = new Matrix();\n var cmd, params;\n\n // Split value into ['', 'translate', '10 50', '', 'scale', '2', '', 'rotate', '-45', '']\n transformString.split(CMD_SPLIT_RE).forEach(function (item) {\n\n // Skip empty elements\n if (!item.length) { return; }\n\n // remember operation\n if (typeof operations[item] !== 'undefined') {\n cmd = item;\n return;\n }\n\n // extract params & att operation to matrix\n params = item.split(PARAMS_SPLIT_RE).map(function (i) {\n return +i || 0;\n });\n\n // If params count is not correct - ignore command\n switch (cmd) {\n case 'matrix':\n if (params.length === 6) {\n matrix.matrix(params);\n }\n return;\n\n case 'scale':\n if (params.length === 1) {\n matrix.scale(params[0], params[0]);\n } else if (params.length === 2) {\n matrix.scale(params[0], params[1]);\n }\n return;\n\n case 'rotate':\n if (params.length === 1) {\n matrix.rotate(params[0], 0, 0);\n } else if (params.length === 3) {\n matrix.rotate(params[0], params[1], params[2]);\n }\n return;\n\n case 'translate':\n if (params.length === 1) {\n matrix.translate(params[0], 0);\n } else if (params.length === 2) {\n matrix.translate(params[0], params[1]);\n }\n return;\n\n case 'skewX':\n if (params.length === 1) {\n matrix.skewX(params[0]);\n }\n return;\n\n case 'skewY':\n if (params.length === 1) {\n matrix.skewY(params[0]);\n }\n return;\n }\n });\n\n return matrix;\n};\n","// Convert an arc to a sequence of cubic bézier curves\n//\n'use strict';\n\n\nvar TAU = Math.PI * 2;\n\n\n/* eslint-disable space-infix-ops */\n\n// Calculate an angle between two unit vectors\n//\n// Since we measure angle between radii of circular arcs,\n// we can use simplified math (without length normalization)\n//\nfunction unit_vector_angle(ux, uy, vx, vy) {\n var sign = (ux * vy - uy * vx < 0) ? -1 : 1;\n var dot = ux * vx + uy * vy;\n\n // Add this to work with arbitrary vectors:\n // dot /= Math.sqrt(ux * ux + uy * uy) * Math.sqrt(vx * vx + vy * vy);\n\n // rounding errors, e.g. -1.0000000000000002 can screw up this\n if (dot > 1.0) { dot = 1.0; }\n if (dot < -1.0) { dot = -1.0; }\n\n return sign * Math.acos(dot);\n}\n\n\n// Convert from endpoint to center parameterization,\n// see http://www.w3.org/TR/SVG11/implnote.html#ArcImplementationNotes\n//\n// Return [cx, cy, theta1, delta_theta]\n//\nfunction get_arc_center(x1, y1, x2, y2, fa, fs, rx, ry, sin_phi, cos_phi) {\n // Step 1.\n //\n // Moving an ellipse so origin will be the middlepoint between our two\n // points. After that, rotate it to line up ellipse axes with coordinate\n // axes.\n //\n var x1p = cos_phi*(x1-x2)/2 + sin_phi*(y1-y2)/2;\n var y1p = -sin_phi*(x1-x2)/2 + cos_phi*(y1-y2)/2;\n\n var rx_sq = rx * rx;\n var ry_sq = ry * ry;\n var x1p_sq = x1p * x1p;\n var y1p_sq = y1p * y1p;\n\n // Step 2.\n //\n // Compute coordinates of the centre of this ellipse (cx', cy')\n // in the new coordinate system.\n //\n var radicant = (rx_sq * ry_sq) - (rx_sq * y1p_sq) - (ry_sq * x1p_sq);\n\n if (radicant < 0) {\n // due to rounding errors it might be e.g. -1.3877787807814457e-17\n radicant = 0;\n }\n\n radicant /= (rx_sq * y1p_sq) + (ry_sq * x1p_sq);\n radicant = Math.sqrt(radicant) * (fa === fs ? -1 : 1);\n\n var cxp = radicant * rx/ry * y1p;\n var cyp = radicant * -ry/rx * x1p;\n\n // Step 3.\n //\n // Transform back to get centre coordinates (cx, cy) in the original\n // coordinate system.\n //\n var cx = cos_phi*cxp - sin_phi*cyp + (x1+x2)/2;\n var cy = sin_phi*cxp + cos_phi*cyp + (y1+y2)/2;\n\n // Step 4.\n //\n // Compute angles (theta1, delta_theta).\n //\n var v1x = (x1p - cxp) / rx;\n var v1y = (y1p - cyp) / ry;\n var v2x = (-x1p - cxp) / rx;\n var v2y = (-y1p - cyp) / ry;\n\n var theta1 = unit_vector_angle(1, 0, v1x, v1y);\n var delta_theta = unit_vector_angle(v1x, v1y, v2x, v2y);\n\n if (fs === 0 && delta_theta > 0) {\n delta_theta -= TAU;\n }\n if (fs === 1 && delta_theta < 0) {\n delta_theta += TAU;\n }\n\n return [ cx, cy, theta1, delta_theta ];\n}\n\n//\n// Approximate one unit arc segment with bézier curves,\n// see http://math.stackexchange.com/questions/873224\n//\nfunction approximate_unit_arc(theta1, delta_theta) {\n var alpha = 4/3 * Math.tan(delta_theta/4);\n\n var x1 = Math.cos(theta1);\n var y1 = Math.sin(theta1);\n var x2 = Math.cos(theta1 + delta_theta);\n var y2 = Math.sin(theta1 + delta_theta);\n\n return [ x1, y1, x1 - y1*alpha, y1 + x1*alpha, x2 + y2*alpha, y2 - x2*alpha, x2, y2 ];\n}\n\nmodule.exports = function a2c(x1, y1, x2, y2, fa, fs, rx, ry, phi) {\n var sin_phi = Math.sin(phi * TAU / 360);\n var cos_phi = Math.cos(phi * TAU / 360);\n\n // Make sure radii are valid\n //\n var x1p = cos_phi*(x1-x2)/2 + sin_phi*(y1-y2)/2;\n var y1p = -sin_phi*(x1-x2)/2 + cos_phi*(y1-y2)/2;\n\n if (x1p === 0 && y1p === 0) {\n // we're asked to draw line to itself\n return [];\n }\n\n if (rx === 0 || ry === 0) {\n // one of the radii is zero\n return [];\n }\n\n\n // Compensate out-of-range radii\n //\n rx = Math.abs(rx);\n ry = Math.abs(ry);\n\n var lambda = (x1p * x1p) / (rx * rx) + (y1p * y1p) / (ry * ry);\n if (lambda > 1) {\n rx *= Math.sqrt(lambda);\n ry *= Math.sqrt(lambda);\n }\n\n\n // Get center parameters (cx, cy, theta1, delta_theta)\n //\n var cc = get_arc_center(x1, y1, x2, y2, fa, fs, rx, ry, sin_phi, cos_phi);\n\n var result = [];\n var theta1 = cc[2];\n var delta_theta = cc[3];\n\n // Split an arc to multiple segments, so each segment\n // will be less than τ/4 (= 90°)\n //\n var segments = Math.max(Math.ceil(Math.abs(delta_theta) / (TAU / 4)), 1);\n delta_theta /= segments;\n\n for (var i = 0; i < segments; i++) {\n result.push(approximate_unit_arc(theta1, delta_theta));\n theta1 += delta_theta;\n }\n\n // We have a bezier approximation of a unit circle,\n // now need to transform back to the original ellipse\n //\n return result.map(function (curve) {\n for (var i = 0; i < curve.length; i += 2) {\n var x = curve[i + 0];\n var y = curve[i + 1];\n\n // scale\n x *= rx;\n y *= ry;\n\n // rotate\n var xp = cos_phi*x - sin_phi*y;\n var yp = sin_phi*x + cos_phi*y;\n\n // translate\n curve[i + 0] = xp + cc[0];\n curve[i + 1] = yp + cc[1];\n }\n\n return curve;\n });\n};\n","'use strict';\n\n/* eslint-disable space-infix-ops */\n\n// The precision used to consider an ellipse as a circle\n//\nvar epsilon = 0.0000000001;\n\n// To convert degree in radians\n//\nvar torad = Math.PI / 180;\n\n// Class constructor :\n// an ellipse centred at 0 with radii rx,ry and x - axis - angle ax.\n//\nfunction Ellipse(rx, ry, ax) {\n if (!(this instanceof Ellipse)) { return new Ellipse(rx, ry, ax); }\n this.rx = rx;\n this.ry = ry;\n this.ax = ax;\n}\n\n// Apply a linear transform m to the ellipse\n// m is an array representing a matrix :\n// - -\n// | m[0] m[2] |\n// | m[1] m[3] |\n// - -\n//\nEllipse.prototype.transform = function (m) {\n // We consider the current ellipse as image of the unit circle\n // by first scale(rx,ry) and then rotate(ax) ...\n // So we apply ma = m x rotate(ax) x scale(rx,ry) to the unit circle.\n var c = Math.cos(this.ax * torad), s = Math.sin(this.ax * torad);\n var ma = [\n this.rx * (m[0]*c + m[2]*s),\n this.rx * (m[1]*c + m[3]*s),\n this.ry * (-m[0]*s + m[2]*c),\n this.ry * (-m[1]*s + m[3]*c)\n ];\n\n // ma * transpose(ma) = [ J L ]\n // [ L K ]\n // L is calculated later (if the image is not a circle)\n var J = ma[0]*ma[0] + ma[2]*ma[2],\n K = ma[1]*ma[1] + ma[3]*ma[3];\n\n // the discriminant of the characteristic polynomial of ma * transpose(ma)\n var D = ((ma[0]-ma[3])*(ma[0]-ma[3]) + (ma[2]+ma[1])*(ma[2]+ma[1])) *\n ((ma[0]+ma[3])*(ma[0]+ma[3]) + (ma[2]-ma[1])*(ma[2]-ma[1]));\n\n // the \"mean eigenvalue\"\n var JK = (J + K) / 2;\n\n // check if the image is (almost) a circle\n if (D < epsilon * JK) {\n // if it is\n this.rx = this.ry = Math.sqrt(JK);\n this.ax = 0;\n return this;\n }\n\n // if it is not a circle\n var L = ma[0]*ma[1] + ma[2]*ma[3];\n\n D = Math.sqrt(D);\n\n // {l1,l2} = the two eigen values of ma * transpose(ma)\n var l1 = JK + D/2,\n l2 = JK - D/2;\n // the x - axis - rotation angle is the argument of the l1 - eigenvector\n /*eslint-disable indent*/\n this.ax = (Math.abs(L) < epsilon && Math.abs(l1 - K) < epsilon) ?\n 90\n :\n Math.atan(Math.abs(L) > Math.abs(l1 - K) ?\n (l1 - J) / L\n :\n L / (l1 - K)\n ) * 180 / Math.PI;\n /*eslint-enable indent*/\n\n // if ax > 0 => rx = sqrt(l1), ry = sqrt(l2), else exchange axes and ax += 90\n if (this.ax >= 0) {\n // if ax in [0,90]\n this.rx = Math.sqrt(l1);\n this.ry = Math.sqrt(l2);\n } else {\n // if ax in ]-90,0[ => exchange axes\n this.ax += 90;\n this.rx = Math.sqrt(l2);\n this.ry = Math.sqrt(l1);\n }\n\n return this;\n};\n\n// Check if the ellipse is (almost) degenerate, i.e. rx = 0 or ry = 0\n//\nEllipse.prototype.isDegenerate = function () {\n return (this.rx < epsilon * this.ry || this.ry < epsilon * this.rx);\n};\n\nmodule.exports = Ellipse;\n","// SVG Path transformations library\n//\n// Usage:\n//\n// SvgPath('...')\n// .translate(-150, -100)\n// .scale(0.5)\n// .translate(-150, -100)\n// .toFixed(1)\n// .toString()\n//\n\n'use strict';\n\n\nvar pathParse = require('./path_parse');\nvar transformParse = require('./transform_parse');\nvar matrix = require('./matrix');\nvar a2c = require('./a2c');\nvar ellipse = require('./ellipse');\n\n\n// Class constructor\n//\nfunction SvgPath(path) {\n if (!(this instanceof SvgPath)) { return new SvgPath(path); }\n\n var pstate = pathParse(path);\n\n // Array of path segments.\n // Each segment is array [command, param1, param2, ...]\n this.segments = pstate.segments;\n\n // Error message on parse error.\n this.err = pstate.err;\n\n // Transforms stack for lazy evaluation\n this.__stack = [];\n}\n\nSvgPath.from = function (src) {\n if (typeof src === 'string') return new SvgPath(src);\n\n if (src instanceof SvgPath) {\n // Create empty object\n var s = new SvgPath('');\n\n // Clone properies\n s.err = src.err;\n s.segments = src.segments.map(function (sgm) { return sgm.slice(); });\n s.__stack = src.__stack.map(function (m) {\n return matrix().matrix(m.toArray());\n });\n\n return s;\n }\n\n throw new Error('SvgPath.from: invalid param type ' + src);\n};\n\n\nSvgPath.prototype.__matrix = function (m) {\n var self = this, i;\n\n // Quick leave for empty matrix\n if (!m.queue.length) { return; }\n\n this.iterate(function (s, index, x, y) {\n var p, result, name, isRelative;\n\n switch (s[0]) {\n\n // Process 'assymetric' commands separately\n case 'v':\n p = m.calc(0, s[1], true);\n result = (p[0] === 0) ? [ 'v', p[1] ] : [ 'l', p[0], p[1] ];\n break;\n\n case 'V':\n p = m.calc(x, s[1], false);\n result = (p[0] === m.calc(x, y, false)[0]) ? [ 'V', p[1] ] : [ 'L', p[0], p[1] ];\n break;\n\n case 'h':\n p = m.calc(s[1], 0, true);\n result = (p[1] === 0) ? [ 'h', p[0] ] : [ 'l', p[0], p[1] ];\n break;\n\n case 'H':\n p = m.calc(s[1], y, false);\n result = (p[1] === m.calc(x, y, false)[1]) ? [ 'H', p[0] ] : [ 'L', p[0], p[1] ];\n break;\n\n case 'a':\n case 'A':\n // ARC is: ['A', rx, ry, x-axis-rotation, large-arc-flag, sweep-flag, x, y]\n\n // Drop segment if arc is empty (end point === start point)\n /*if ((s[0] === 'A' && s[6] === x && s[7] === y) ||\n (s[0] === 'a' && s[6] === 0 && s[7] === 0)) {\n return [];\n }*/\n\n // Transform rx, ry and the x-axis-rotation\n var ma = m.toArray();\n var e = ellipse(s[1], s[2], s[3]).transform(ma);\n\n // flip sweep-flag if matrix is not orientation-preserving\n if (ma[0] * ma[3] - ma[1] * ma[2] < 0) {\n s[5] = s[5] ? '0' : '1';\n }\n\n // Transform end point as usual (without translation for relative notation)\n p = m.calc(s[6], s[7], s[0] === 'a');\n\n // Empty arcs can be ignored by renderer, but should not be dropped\n // to avoid collisions with `S A S` and so on. Replace with empty line.\n if ((s[0] === 'A' && s[6] === x && s[7] === y) ||\n (s[0] === 'a' && s[6] === 0 && s[7] === 0)) {\n result = [ s[0] === 'a' ? 'l' : 'L', p[0], p[1] ];\n break;\n }\n\n // if the resulting ellipse is (almost) a segment ...\n if (e.isDegenerate()) {\n // replace the arc by a line\n result = [ s[0] === 'a' ? 'l' : 'L', p[0], p[1] ];\n } else {\n // if it is a real ellipse\n // s[0], s[4] and s[5] are not modified\n result = [ s[0], e.rx, e.ry, e.ax, s[4], s[5], p[0], p[1] ];\n }\n\n break;\n\n case 'm':\n // Edge case. The very first `m` should be processed as absolute, if happens.\n // Make sense for coord shift transforms.\n isRelative = index > 0;\n\n p = m.calc(s[1], s[2], isRelative);\n result = [ 'm', p[0], p[1] ];\n break;\n\n default:\n name = s[0];\n result = [ name ];\n isRelative = (name.toLowerCase() === name);\n\n // Apply transformations to the segment\n for (i = 1; i < s.length; i += 2) {\n p = m.calc(s[i], s[i + 1], isRelative);\n result.push(p[0], p[1]);\n }\n }\n\n self.segments[index] = result;\n }, true);\n};\n\n\n// Apply stacked commands\n//\nSvgPath.prototype.__evaluateStack = function () {\n var m, i;\n\n if (!this.__stack.length) { return; }\n\n if (this.__stack.length === 1) {\n this.__matrix(this.__stack[0]);\n this.__stack = [];\n return;\n }\n\n m = matrix();\n i = this.__stack.length;\n\n while (--i >= 0) {\n m.matrix(this.__stack[i].toArray());\n }\n\n this.__matrix(m);\n this.__stack = [];\n};\n\n\n// Convert processed SVG Path back to string\n//\nSvgPath.prototype.toString = function () {\n var elements = [], skipCmd, cmd;\n\n this.__evaluateStack();\n\n for (var i = 0; i < this.segments.length; i++) {\n // remove repeating commands names\n cmd = this.segments[i][0];\n skipCmd = i > 0 && cmd !== 'm' && cmd !== 'M' && cmd === this.segments[i - 1][0];\n elements = elements.concat(skipCmd ? this.segments[i].slice(1) : this.segments[i]);\n }\n\n return elements.join(' ')\n // Optimizations: remove spaces around commands & before `-`\n //\n // We could also remove leading zeros for `0.5`-like values,\n // but their count is too small to spend time for.\n .replace(/ ?([achlmqrstvz]) ?/gi, '$1')\n .replace(/ \\-/g, '-')\n // workaround for FontForge SVG importing bug\n .replace(/zm/g, 'z m');\n};\n\n\n// Translate path to (x [, y])\n//\nSvgPath.prototype.translate = function (x, y) {\n this.__stack.push(matrix().translate(x, y || 0));\n return this;\n};\n\n\n// Scale path to (sx [, sy])\n// sy = sx if not defined\n//\nSvgPath.prototype.scale = function (sx, sy) {\n this.__stack.push(matrix().scale(sx, (!sy && (sy !== 0)) ? sx : sy));\n return this;\n};\n\n\n// Rotate path around point (sx [, sy])\n// sy = sx if not defined\n//\nSvgPath.prototype.rotate = function (angle, rx, ry) {\n this.__stack.push(matrix().rotate(angle, rx || 0, ry || 0));\n return this;\n};\n\n\n// Skew path along the X axis by `degrees` angle\n//\nSvgPath.prototype.skewX = function (degrees) {\n this.__stack.push(matrix().skewX(degrees));\n return this;\n};\n\n\n// Skew path along the Y axis by `degrees` angle\n//\nSvgPath.prototype.skewY = function (degrees) {\n this.__stack.push(matrix().skewY(degrees));\n return this;\n};\n\n\n// Apply matrix transform (array of 6 elements)\n//\nSvgPath.prototype.matrix = function (m) {\n this.__stack.push(matrix().matrix(m));\n return this;\n};\n\n\n// Transform path according to \"transform\" attr of SVG spec\n//\nSvgPath.prototype.transform = function (transformString) {\n if (!transformString.trim()) {\n return this;\n }\n this.__stack.push(transformParse(transformString));\n return this;\n};\n\n\n// Round coords with given decimal precition.\n// 0 by default (to integers)\n//\nSvgPath.prototype.round = function (d) {\n var contourStartDeltaX = 0, contourStartDeltaY = 0, deltaX = 0, deltaY = 0, l;\n\n d = d || 0;\n\n this.__evaluateStack();\n\n this.segments.forEach(function (s) {\n var isRelative = (s[0].toLowerCase() === s[0]);\n\n switch (s[0]) {\n case 'H':\n case 'h':\n if (isRelative) { s[1] += deltaX; }\n deltaX = s[1] - s[1].toFixed(d);\n s[1] = +s[1].toFixed(d);\n return;\n\n case 'V':\n case 'v':\n if (isRelative) { s[1] += deltaY; }\n deltaY = s[1] - s[1].toFixed(d);\n s[1] = +s[1].toFixed(d);\n return;\n\n case 'Z':\n case 'z':\n deltaX = contourStartDeltaX;\n deltaY = contourStartDeltaY;\n return;\n\n case 'M':\n case 'm':\n if (isRelative) {\n s[1] += deltaX;\n s[2] += deltaY;\n }\n\n deltaX = s[1] - s[1].toFixed(d);\n deltaY = s[2] - s[2].toFixed(d);\n\n contourStartDeltaX = deltaX;\n contourStartDeltaY = deltaY;\n\n s[1] = +s[1].toFixed(d);\n s[2] = +s[2].toFixed(d);\n return;\n\n case 'A':\n case 'a':\n // [cmd, rx, ry, x-axis-rotation, large-arc-flag, sweep-flag, x, y]\n if (isRelative) {\n s[6] += deltaX;\n s[7] += deltaY;\n }\n\n deltaX = s[6] - s[6].toFixed(d);\n deltaY = s[7] - s[7].toFixed(d);\n\n s[1] = +s[1].toFixed(d);\n s[2] = +s[2].toFixed(d);\n s[3] = +s[3].toFixed(d + 2); // better precision for rotation\n s[6] = +s[6].toFixed(d);\n s[7] = +s[7].toFixed(d);\n return;\n\n default:\n // a c l q s t\n l = s.length;\n\n if (isRelative) {\n s[l - 2] += deltaX;\n s[l - 1] += deltaY;\n }\n\n deltaX = s[l - 2] - s[l - 2].toFixed(d);\n deltaY = s[l - 1] - s[l - 1].toFixed(d);\n\n s.forEach(function (val, i) {\n if (!i) { return; }\n s[i] = +s[i].toFixed(d);\n });\n return;\n }\n });\n\n return this;\n};\n\n\n// Apply iterator function to all segments. If function returns result,\n// current segment will be replaced to array of returned segments.\n// If empty array is returned, current regment will be deleted.\n//\nSvgPath.prototype.iterate = function (iterator, keepLazyStack) {\n var segments = this.segments,\n replacements = {},\n needReplace = false,\n lastX = 0,\n lastY = 0,\n countourStartX = 0,\n countourStartY = 0;\n var i, j, newSegments;\n\n if (!keepLazyStack) {\n this.__evaluateStack();\n }\n\n segments.forEach(function (s, index) {\n\n var res = iterator(s, index, lastX, lastY);\n\n if (Array.isArray(res)) {\n replacements[index] = res;\n needReplace = true;\n }\n\n var isRelative = (s[0] === s[0].toLowerCase());\n\n // calculate absolute X and Y\n switch (s[0]) {\n case 'm':\n case 'M':\n lastX = s[1] + (isRelative ? lastX : 0);\n lastY = s[2] + (isRelative ? lastY : 0);\n countourStartX = lastX;\n countourStartY = lastY;\n return;\n\n case 'h':\n case 'H':\n lastX = s[1] + (isRelative ? lastX : 0);\n return;\n\n case 'v':\n case 'V':\n lastY = s[1] + (isRelative ? lastY : 0);\n return;\n\n case 'z':\n case 'Z':\n // That make sence for multiple contours\n lastX = countourStartX;\n lastY = countourStartY;\n return;\n\n default:\n lastX = s[s.length - 2] + (isRelative ? lastX : 0);\n lastY = s[s.length - 1] + (isRelative ? lastY : 0);\n }\n });\n\n // Replace segments if iterator return results\n\n if (!needReplace) { return this; }\n\n newSegments = [];\n\n for (i = 0; i < segments.length; i++) {\n if (typeof replacements[i] !== 'undefined') {\n for (j = 0; j < replacements[i].length; j++) {\n newSegments.push(replacements[i][j]);\n }\n } else {\n newSegments.push(segments[i]);\n }\n }\n\n this.segments = newSegments;\n\n return this;\n};\n\n\n// Converts segments from relative to absolute\n//\nSvgPath.prototype.abs = function () {\n\n this.iterate(function (s, index, x, y) {\n var name = s[0],\n nameUC = name.toUpperCase(),\n i;\n\n // Skip absolute commands\n if (name === nameUC) { return; }\n\n s[0] = nameUC;\n\n switch (name) {\n case 'v':\n // v has shifted coords parity\n s[1] += y;\n return;\n\n case 'a':\n // ARC is: ['A', rx, ry, x-axis-rotation, large-arc-flag, sweep-flag, x, y]\n // touch x, y only\n s[6] += x;\n s[7] += y;\n return;\n\n default:\n for (i = 1; i < s.length; i++) {\n s[i] += i % 2 ? x : y; // odd values are X, even - Y\n }\n }\n }, true);\n\n return this;\n};\n\n\n// Converts segments from absolute to relative\n//\nSvgPath.prototype.rel = function () {\n\n this.iterate(function (s, index, x, y) {\n var name = s[0],\n nameLC = name.toLowerCase(),\n i;\n\n // Skip relative commands\n if (name === nameLC) { return; }\n\n // Don't touch the first M to avoid potential confusions.\n if (index === 0 && name === 'M') { return; }\n\n s[0] = nameLC;\n\n switch (name) {\n case 'V':\n // V has shifted coords parity\n s[1] -= y;\n return;\n\n case 'A':\n // ARC is: ['A', rx, ry, x-axis-rotation, large-arc-flag, sweep-flag, x, y]\n // touch x, y only\n s[6] -= x;\n s[7] -= y;\n return;\n\n default:\n for (i = 1; i < s.length; i++) {\n s[i] -= i % 2 ? x : y; // odd values are X, even - Y\n }\n }\n }, true);\n\n return this;\n};\n\n\n// Converts arcs to cubic bézier curves\n//\nSvgPath.prototype.unarc = function () {\n this.iterate(function (s, index, x, y) {\n var new_segments, nextX, nextY, result = [], name = s[0];\n\n // Skip anything except arcs\n if (name !== 'A' && name !== 'a') { return null; }\n\n if (name === 'a') {\n // convert relative arc coordinates to absolute\n nextX = x + s[6];\n nextY = y + s[7];\n } else {\n nextX = s[6];\n nextY = s[7];\n }\n\n new_segments = a2c(x, y, nextX, nextY, s[4], s[5], s[1], s[2], s[3]);\n\n // Degenerated arcs can be ignored by renderer, but should not be dropped\n // to avoid collisions with `S A S` and so on. Replace with empty line.\n if (new_segments.length === 0) {\n return [ [ s[0] === 'a' ? 'l' : 'L', s[6], s[7] ] ];\n }\n\n new_segments.forEach(function (s) {\n result.push([ 'C', s[2], s[3], s[4], s[5], s[6], s[7] ]);\n });\n\n return result;\n });\n\n return this;\n};\n\n\n// Converts smooth curves (with missed control point) to generic curves\n//\nSvgPath.prototype.unshort = function () {\n var segments = this.segments;\n var prevControlX, prevControlY, prevSegment;\n var curControlX, curControlY;\n\n // TODO: add lazy evaluation flag when relative commands supported\n\n this.iterate(function (s, idx, x, y) {\n var name = s[0], nameUC = name.toUpperCase(), isRelative;\n\n // First command MUST be M|m, it's safe to skip.\n // Protect from access to [-1] for sure.\n if (!idx) { return; }\n\n if (nameUC === 'T') { // quadratic curve\n isRelative = (name === 't');\n\n prevSegment = segments[idx - 1];\n\n if (prevSegment[0] === 'Q') {\n prevControlX = prevSegment[1] - x;\n prevControlY = prevSegment[2] - y;\n } else if (prevSegment[0] === 'q') {\n prevControlX = prevSegment[1] - prevSegment[3];\n prevControlY = prevSegment[2] - prevSegment[4];\n } else {\n prevControlX = 0;\n prevControlY = 0;\n }\n\n curControlX = -prevControlX;\n curControlY = -prevControlY;\n\n if (!isRelative) {\n curControlX += x;\n curControlY += y;\n }\n\n segments[idx] = [\n isRelative ? 'q' : 'Q',\n curControlX, curControlY,\n s[1], s[2]\n ];\n\n } else if (nameUC === 'S') { // cubic curve\n isRelative = (name === 's');\n\n prevSegment = segments[idx - 1];\n\n if (prevSegment[0] === 'C') {\n prevControlX = prevSegment[3] - x;\n prevControlY = prevSegment[4] - y;\n } else if (prevSegment[0] === 'c') {\n prevControlX = prevSegment[3] - prevSegment[5];\n prevControlY = prevSegment[4] - prevSegment[6];\n } else {\n prevControlX = 0;\n prevControlY = 0;\n }\n\n curControlX = -prevControlX;\n curControlY = -prevControlY;\n\n if (!isRelative) {\n curControlX += x;\n curControlY += y;\n }\n\n segments[idx] = [\n isRelative ? 'c' : 'C',\n curControlX, curControlY,\n s[1], s[2], s[3], s[4]\n ];\n }\n });\n\n return this;\n};\n\n\nmodule.exports = SvgPath;\n","'use strict';\n\nmodule.exports = require('./lib/svgpath');\n",null,null,null,null,null,null,null,null,null,null,null,null,null,"// Calculate the specificity for a selector by dividing it into simple selectors and counting them\nvar calculate = function(input) {\n\tvar selectors,\n\t\tselector,\n\t\ti,\n\t\tlen,\n\t\tresults = [];\n\n\t// Separate input by commas\n\tselectors = input.split(',');\n\n\tfor (i = 0, len = selectors.length; i < len; i += 1) {\n\t\tselector = selectors[i];\n\t\tif (selector.length > 0) {\n\t\t\tresults.push(calculateSingle(selector));\n\t\t}\n\t}\n\n\treturn results;\n};\n\n/**\n * Calculates the specificity of CSS selectors\n * http://www.w3.org/TR/css3-selectors/#specificity\n *\n * Returns an object with the following properties:\n * - selector: the input\n * - specificity: e.g. 0,1,0,0\n * - parts: array with details about each part of the selector that counts towards the specificity\n * - specificityArray: e.g. [0, 1, 0, 0]\n */\nvar calculateSingle = function(input) {\n\tvar selector = input,\n\t\tfindMatch,\n\t\ttypeCount = {\n\t\t\t'a': 0,\n\t\t\t'b': 0,\n\t\t\t'c': 0\n\t\t},\n\t\tparts = [],\n\t\t// The following regular expressions assume that selectors matching the preceding regular expressions have been removed\n\t\tattributeRegex = /(\\[[^\\]]+\\])/g,\n\t\tidRegex = /(#[^\\#\\s\\+>~\\.\\[:\\)]+)/g,\n\t\tclassRegex = /(\\.[^\\s\\+>~\\.\\[:\\)]+)/g,\n\t\tpseudoElementRegex = /(::[^\\s\\+>~\\.\\[:]+|:first-line|:first-letter|:before|:after)/gi,\n\t\t// A regex for pseudo classes with brackets - :nth-child(), :nth-last-child(), :nth-of-type(), :nth-last-type(), :lang()\n\t\t// The negation psuedo class (:not) is filtered out because specificity is calculated on its argument\n\t\t// :global and :local are filtered out - they look like psuedo classes but are an identifier for CSS Modules\n\t\tpseudoClassWithBracketsRegex = /(:(?!not|global|local)[\\w-]+\\([^\\)]*\\))/gi,\n\t\t// A regex for other pseudo classes, which don't have brackets\n\t\tpseudoClassRegex = /(:(?!not|global|local)[^\\s\\+>~\\.\\[:]+)/g,\n\t\telementRegex = /([^\\s\\+>~\\.\\[:]+)/g;\n\n\t// Find matches for a regular expression in a string and push their details to parts\n\t// Type is \"a\" for IDs, \"b\" for classes, attributes and pseudo-classes and \"c\" for elements and pseudo-elements\n\tfindMatch = function(regex, type) {\n\t\tvar matches, i, len, match, index, length;\n\t\tif (regex.test(selector)) {\n\t\t\tmatches = selector.match(regex);\n\t\t\tfor (i = 0, len = matches.length; i < len; i += 1) {\n\t\t\t\ttypeCount[type] += 1;\n\t\t\t\tmatch = matches[i];\n\t\t\t\tindex = selector.indexOf(match);\n\t\t\t\tlength = match.length;\n\t\t\t\tparts.push({\n\t\t\t\t\tselector: input.substr(index, length),\n\t\t\t\t\ttype: type,\n\t\t\t\t\tindex: index,\n\t\t\t\t\tlength: length\n\t\t\t\t});\n\t\t\t\t// Replace this simple selector with whitespace so it won't be counted in further simple selectors\n\t\t\t\tselector = selector.replace(match, Array(length + 1).join(' '));\n\t\t\t}\n\t\t}\n\t};\n\n\t// Replace escaped characters with plain text, using the \"A\" character\n\t// https://www.w3.org/TR/CSS21/syndata.html#characters\n\t(function() {\n\t\tvar replaceWithPlainText = function(regex) {\n\t\t\t\tvar matches, i, len, match;\n\t\t\t\tif (regex.test(selector)) {\n\t\t\t\t\tmatches = selector.match(regex);\n\t\t\t\t\tfor (i = 0, len = matches.length; i < len; i += 1) {\n\t\t\t\t\t\tmatch = matches[i];\n\t\t\t\t\t\tselector = selector.replace(match, Array(match.length + 1).join('A'));\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\t// Matches a backslash followed by six hexadecimal digits followed by an optional single whitespace character\n\t\t\tescapeHexadecimalRegex = /\\\\[0-9A-Fa-f]{6}\\s?/g,\n\t\t\t// Matches a backslash followed by fewer than six hexadecimal digits followed by a mandatory single whitespace character\n\t\t\tescapeHexadecimalRegex2 = /\\\\[0-9A-Fa-f]{1,5}\\s/g,\n\t\t\t// Matches a backslash followed by any character\n\t\t\tescapeSpecialCharacter = /\\\\./g;\n\n\t\treplaceWithPlainText(escapeHexadecimalRegex);\n\t\treplaceWithPlainText(escapeHexadecimalRegex2);\n\t\treplaceWithPlainText(escapeSpecialCharacter);\n\t}());\n\n\t// Remove anything after a left brace in case a user has pasted in a rule, not just a selector\n\t(function() {\n\t\tvar regex = /{[^]*/gm,\n\t\t\tmatches, i, len, match;\n\t\tif (regex.test(selector)) {\n\t\t\tmatches = selector.match(regex);\n\t\t\tfor (i = 0, len = matches.length; i < len; i += 1) {\n\t\t\t\tmatch = matches[i];\n\t\t\t\tselector = selector.replace(match, Array(match.length + 1).join(' '));\n\t\t\t}\n\t\t}\n\t}());\n\n\t// Add attribute selectors to parts collection (type b)\n\tfindMatch(attributeRegex, 'b');\n\n\t// Add ID selectors to parts collection (type a)\n\tfindMatch(idRegex, 'a');\n\n\t// Add class selectors to parts collection (type b)\n\tfindMatch(classRegex, 'b');\n\n\t// Add pseudo-element selectors to parts collection (type c)\n\tfindMatch(pseudoElementRegex, 'c');\n\n\t// Add pseudo-class selectors to parts collection (type b)\n\tfindMatch(pseudoClassWithBracketsRegex, 'b');\n\tfindMatch(pseudoClassRegex, 'b');\n\n\t// Remove universal selector and separator characters\n\tselector = selector.replace(/[\\*\\s\\+>~]/g, ' ');\n\n\t// Remove any stray dots or hashes which aren't attached to words\n\t// These may be present if the user is live-editing this selector\n\tselector = selector.replace(/[#\\.]/g, ' ');\n\n\t// Remove the negation psuedo-class (:not) but leave its argument because specificity is calculated on its argument\n \t// Remove non-standard :local and :global CSS Module identifiers because they do not effect the specificity\n\tselector = selector.replace(/:not/g, ' ');\n\tselector = selector.replace(/:local/g, ' ');\n\tselector = selector.replace(/:global/g, ' ');\n\tselector = selector.replace(/[\\(\\)]/g, ' ');\n\n\t// The only things left should be element selectors (type c)\n\tfindMatch(elementRegex, 'c');\n\n\t// Order the parts in the order they appear in the original selector\n\t// This is neater for external apps to deal with\n\tparts.sort(function(a, b) {\n\t\treturn a.index - b.index;\n\t});\n\n\treturn {\n\t\tselector: input,\n\t\tspecificity: '0,' + typeCount.a.toString() + ',' + typeCount.b.toString() + ',' + typeCount.c.toString(),\n\t\tspecificityArray: [0, typeCount.a, typeCount.b, typeCount.c],\n\t\tparts: parts\n\t};\n};\n\n/**\n * Compares two CSS selectors for specificity\n * Alternatively you can replace one of the CSS selectors with a specificity array\n *\n * - it returns -1 if a has a lower specificity than b\n * - it returns 1 if a has a higher specificity than b\n * - it returns 0 if a has the same specificity than b\n */\nvar compare = function(a, b) {\n\tvar aSpecificity,\n\t\tbSpecificity,\n\t\ti;\n\n\tif (typeof a ==='string') {\n\t\tif (a.indexOf(',') !== -1) {\n\t\t\tthrow 'Invalid CSS selector';\n\t\t} else {\n\t\t\taSpecificity = calculateSingle(a)['specificityArray'];\n\t\t}\n\t} else if (Array.isArray(a)) {\n\t\tif (a.filter(function(e) { return (typeof e === 'number'); }).length !== 4) {\n\t\t\tthrow 'Invalid specificity array';\n\t\t} else {\n\t\t\taSpecificity = a;\n\t\t}\n\t} else {\n\t\tthrow 'Invalid CSS selector or specificity array';\n\t}\n\n\tif (typeof b ==='string') {\n\t\tif (b.indexOf(',') !== -1) {\n\t\t\tthrow 'Invalid CSS selector';\n\t\t} else {\n\t\t\tbSpecificity = calculateSingle(b)['specificityArray'];\n\t\t}\n\t} else if (Array.isArray(b)) {\n\t\tif (b.filter(function(e) { return (typeof e === 'number'); }).length !== 4) {\n\t\t\tthrow 'Invalid specificity array';\n\t\t} else {\n\t\t\tbSpecificity = b;\n\t\t}\n\t} else {\n\t\tthrow 'Invalid CSS selector or specificity array';\n\t}\n\n\tfor (i = 0; i < 4; i += 1) {\n\t\tif (aSpecificity[i] < bSpecificity[i]) {\n\t\t\treturn -1;\n\t\t} else if (aSpecificity[i] > bSpecificity[i]) {\n\t\t\treturn 1;\n\t\t}\n\t}\n\n\treturn 0;\n};\n\nexport { calculate, compare };\n",null,null],"names":["cssEsc","GState","ShadingPattern","TilingPattern","FontFamily","Symbol","matrix","Matrix","Ellipse","pathParse","transformParse","require$$0","SvgPath","parse","cssesc","compare","compareSpecificity","jsPDF"],"mappings":"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"} \ No newline at end of file diff --git a/dist/svg2pdf.umd.min.js b/dist/svg2pdf.umd.min.js index e738dde5..49247eed 100644 --- a/dist/svg2pdf.umd.min.js +++ b/dist/svg2pdf.umd.min.js @@ -38,5 +38,5 @@ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - ***************************************************************************** */var r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)};function i(t,e){function i(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}var n=function(){return(n=Object.assign||function(t){for(var e,r=1,i=arguments.length;r<i;r++)for(var n in e=arguments[r])Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t}).apply(this,arguments)};function a(t,e,r,i){return new(r||(r=Promise))((function(n,a){function s(t){try{l(i.next(t))}catch(t){a(t)}}function o(t){try{l(i.throw(t))}catch(t){a(t)}}function l(t){var e;t.done?n(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(s,o)}l((i=i.apply(t,e||[])).next())}))}function s(t,e){var r,i,n,a,s={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return a={next:o(0),throw:o(1),return:o(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function o(a){return function(o){return function(a){if(r)throw new TypeError("Generator is already executing.");for(;s;)try{if(r=1,i&&(n=2&a[0]?i.return:a[0]?i.throw||((n=i.return)&&n.call(i),0):i.next)&&!(n=n.call(i,a[1])).done)return n;switch(i=0,n&&(a=[2&a[0],n.value]),a[0]){case 0:case 1:n=a;break;case 4:return s.label++,{value:a[1],done:!1};case 5:s.label++,i=a[1],a=[0];continue;case 7:a=s.ops.pop(),s.trys.pop();continue;default:if(!(n=s.trys,(n=n.length>0&&n[n.length-1])||6!==a[0]&&2!==a[0])){s=0;continue}if(3===a[0]&&(!n||a[1]>n[0]&&a[1]<n[3])){s.label=a[1];break}if(6===a[0]&&s.label<n[1]){s.label=n[1],n=a;break}if(n&&s.label<n[2]){s.label=n[2],s.ops.push(a);break}n[2]&&s.ops.pop(),s.trys.pop();continue}a=e.call(t,s)}catch(t){a=[6,t],i=0}finally{r=n=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,o])}}}var o=function(){function t(t){if(this.a=void 0,this.r=0,this.g=0,this.b=0,this.simpleColors={},this.colorDefs=[],this.ok=!1,t){for(var e in"#"==t.charAt(0)&&(t=t.substr(1,6)),t=(t=t.replace(/ /g,"")).toLowerCase(),this.simpleColors={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"00ffff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000000",blanchedalmond:"ffebcd",blue:"0000ff",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"00ffff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgrey:"a9a9a9",darkgreen:"006400",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",feldspar:"d19275",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"ff00ff",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",grey:"808080",green:"008000",greenyellow:"adff2f",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgrey:"d3d3d3",lightgreen:"90ee90",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslateblue:"8470ff",lightslategray:"778899",lightslategrey:"778899",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"00ff00",limegreen:"32cd32",linen:"faf0e6",magenta:"ff00ff",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370d8",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"d87093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",red:"ff0000",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",violetred:"d02090",wheat:"f5deb3",white:"ffffff",whitesmoke:"f5f5f5",yellow:"ffff00",yellowgreen:"9acd32"},this.simpleColors)t==e&&(t=this.simpleColors[e]);this.colorDefs=[{re:/^rgb\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3})\)$/,example:["rgb(123, 234, 45)","rgb(255,234,245)"],process:function(t){return[parseInt(t[1]),parseInt(t[2]),parseInt(t[3])]}},{re:/^(\w{2})(\w{2})(\w{2})$/,example:["#00ff00","336699"],process:function(t){return[parseInt(t[1],16),parseInt(t[2],16),parseInt(t[3],16)]}},{re:/^(\w{1})(\w{1})(\w{1})$/,example:["#fb0","f0f"],process:function(t){return[parseInt(t[1]+t[1],16),parseInt(t[2]+t[2],16),parseInt(t[3]+t[3],16)]}}];for(var r=0;r<this.colorDefs.length;r++){var i=this.colorDefs[r].re,n=this.colorDefs[r].process,a=i.exec(t);if(a){var s=n(a);this.r=s[0],this.g=s[1],this.b=s[2],this.ok=!0}}this.r=this.r<0||isNaN(this.r)?0:this.r>255?255:this.r,this.g=this.g<0||isNaN(this.g)?0:this.g>255?255:this.g,this.b=this.b<0||isNaN(this.b)?0:this.b>255?255:this.b}}return t.prototype.toRGB=function(){return"rgb("+this.r+", "+this.g+", "+this.b+")"},t.prototype.toHex=function(){var t=this.r.toString(16),e=this.g.toString(16),r=this.b.toString(16);return 1==t.length&&(t="0"+t),1==e.length&&(e="0"+e),1==r.length&&(r="0"+r),"#"+t+e+r},t.prototype.getHelpXML=function(){for(var e=[],r=0;r<this.colorDefs.length;r++)for(var i=this.colorDefs[r].example,n=0;n<i.length;n++)e[e.length]=i[n];for(var a in this.simpleColors)e[e.length]=a;var s=document.createElement("ul");s.setAttribute("id","rgbcolor-examples");for(r=0;r<e.length;r++)try{var o=document.createElement("li"),l=new t(e[r]),u=document.createElement("div");u.style.cssText="margin: 3px; border: 1px solid black; background:"+l.toHex()+"; color:"+l.toHex(),u.appendChild(document.createTextNode("test"));var h=document.createTextNode(" "+e[r]+" -> "+l.toRGB()+" -> "+l.toHex());o.appendChild(u),o.appendChild(h),s.appendChild(o)}catch(t){}return s},t}(),l=function(){function t(t){this.color=t}return t.prototype.getFillData=function(t,e){return a(this,void 0,void 0,(function(){return s(this,(function(t){return[2,void 0]}))}))},t}(),u=function(){function t(){this.xmlSpace="",this.fill=null,this.fillOpacity=1,this.fontFamily="",this.fontSize=16,this.fontStyle="",this.fontWeight="",this.opacity=1,this.stroke=null,this.strokeDasharray=null,this.strokeDashoffset=0,this.strokeLinecap="",this.strokeLinejoin="",this.strokeMiterlimit=4,this.strokeOpacity=1,this.strokeWidth=1,this.alignmentBaseline="",this.textAnchor="",this.visibility=""}return t.prototype.clone=function(){var e=new t;return e.xmlSpace=this.xmlSpace,e.fill=this.fill,e.fillOpacity=this.fillOpacity,e.fontFamily=this.fontFamily,e.fontSize=this.fontSize,e.fontStyle=this.fontStyle,e.fontWeight=this.fontWeight,e.opacity=this.opacity,e.stroke=this.stroke,e.strokeDasharray=this.strokeDasharray,e.strokeDashoffset=this.strokeDashoffset,e.strokeLinecap=this.strokeLinecap,e.strokeLinejoin=this.strokeLinejoin,e.strokeMiterlimit=this.strokeMiterlimit,e.strokeOpacity=this.strokeOpacity,e.strokeWidth=this.strokeWidth,e.textAnchor=this.textAnchor,e.alignmentBaseline=this.alignmentBaseline,e.visibility=this.visibility,e},t.default=function(){var e=new t;return e.xmlSpace="default",e.fill=new l(new o("rgb(0, 0, 0)")),e.fillOpacity=1,e.fontFamily="times",e.fontSize=16,e.fontStyle="normal",e.fontWeight="normal",e.opacity=1,e.stroke=null,e.strokeDasharray=null,e.strokeDashoffset=0,e.strokeLinecap="butt",e.strokeLinejoin="miter",e.strokeMiterlimit=4,e.strokeOpacity=1,e.strokeWidth=1,e.alignmentBaseline="baseline",e.textAnchor="start",e.visibility="visible",e},t}(),h=/url\(["']?#([^"']+)["']?\)/,f={bottom:"bottom","text-bottom":"bottom",top:"top","text-top":"top",hanging:"hanging",middle:"middle",central:"middle",center:"middle",mathematical:"middle",ideographic:"ideographic",alphabetic:"alphabetic",baseline:"alphabetic"},c=function(){function t(){this.measureMethods={}}return t.prototype.getTextOffset=function(t,e){var r=e.textAnchor;if("start"===r)return 0;var i=this.measureTextWidth(t,e),n=0;switch(r){case"end":n=i;break;case"middle":n=i/2}return n},t.prototype.measureTextWidth=function(t,e){if(0===t.length)return 0;var r=e.fontFamily;return this.getMeasureFunction(r).call(this,t,e.fontFamily,e.fontSize+"px",e.fontStyle,e.fontWeight)},t.prototype.getMeasurementTextNode=function(){if(!this.textMeasuringTextElement){this.textMeasuringTextElement=document.createElementNS("http://www.w3.org/2000/svg","text");var t=document.createElementNS("http://www.w3.org/2000/svg","svg");t.appendChild(this.textMeasuringTextElement),t.style.setProperty("position","absolute"),t.style.setProperty("visibility","hidden"),document.body.appendChild(t)}return this.textMeasuringTextElement},t.prototype.canvasTextMeasure=function(t,e,r,i,n){var a=document.createElement("canvas").getContext("2d");return null!=a?(a.font=[i,n,r,e].join(" "),a.measureText(t).width):0},t.prototype.svgTextMeasure=function(t,e,r,i,n,a){void 0===a&&(a=this.getMeasurementTextNode());var s=a;return s.setAttribute("font-family",e),s.setAttribute("font-size",r),s.setAttribute("font-style",i),s.setAttribute("font-weight",n),s.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),s.textContent=t,s.getBBox().width},t.prototype.getMeasureFunction=function(e){var r=this.measureMethods[e];if(!r){var i=this.canvasTextMeasure(t.testString,e,"16px","normal","normal"),n=this.svgTextMeasure(t.testString,e,"16px","normal","normal");r=Math.abs(i-n)<t.epsilon?this.canvasTextMeasure:this.svgTextMeasure,this.measureMethods[e]=r}return r},t.prototype.cleanupTextMeasuring=function(){if(this.textMeasuringTextElement){var t=this.textMeasuringTextElement.parentNode;t&&document.body.removeChild(t),this.textMeasuringTextElement=void 0}},t.testString="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789!\"$%&/()=?'\\+*-_.:,;^}][{#~|<>",t.epsilon=.1,t}(),p=function(){function t(t,e){var r,i,n,a,s,o;this.pdf=t,this.svg2pdfParameters=e.svg2pdfParameters,this.attributeState=e.attributeState?e.attributeState.clone():u.default(),this.viewport=e.viewport,this.refsHandler=null!==(r=e.refsHandler)&&void 0!==r?r:null,this.styleSheets=null!==(i=e.styleSheets)&&void 0!==i?i:null,this.textMeasure=null!==(n=e.textMeasure)&&void 0!==n?n:new c,this.transform=null!==(a=e.transform)&&void 0!==a?a:this.pdf.unitMatrix,this.withinClipPath=null!==(s=e.withinClipPath)&&void 0!==s&&s,this.withinUse=null!==(o=e.withinUse)&&void 0!==o&&o}return t.prototype.clone=function(e){var r,i,n,a,s,o,l,u;return void 0===e&&(e={}),new t(this.pdf,{svg2pdfParameters:null!==(r=e.svg2pdfParameters)&&void 0!==r?r:this.svg2pdfParameters,attributeState:e.attributeState?e.attributeState.clone():this.attributeState.clone(),viewport:null!==(i=e.viewport)&&void 0!==i?i:this.viewport,refsHandler:null!==(n=e.refsHandler)&&void 0!==n?n:this.refsHandler,styleSheets:null!==(a=e.styleSheets)&&void 0!==a?a:this.styleSheets,textMeasure:null!==(s=e.textMeasure)&&void 0!==s?s:this.textMeasure,transform:null!==(o=e.transform)&&void 0!==o?o:this.transform,withinClipPath:null!==(l=e.withinClipPath)&&void 0!==l?l:this.withinClipPath,withinUse:null!==(u=e.withinUse)&&void 0!==u?u:this.withinUse})},t}(),d={}.hasOwnProperty,m=/[ -,\.\/:-@\[-\^`\{-~]/,g=/[ -,\.\/:-@\[\]\^`\{-~]/,y=/(^|\\+)?(\\[A-F0-9]{1,6})\x20(?![a-fA-F0-9\x20])/g,v=function t(e,r){"single"!=(r=function(t,e){if(!t)return e;var r={};for(var i in e)r[i]=d.call(t,i)?t[i]:e[i];return r}(r,t.options)).quotes&&"double"!=r.quotes&&(r.quotes="single");for(var i="double"==r.quotes?'"':"'",n=r.isIdentifier,a=e.charAt(0),s="",o=0,l=e.length;o<l;){var u=e.charAt(o++),h=u.charCodeAt(),f=void 0;if(h<32||h>126){if(h>=55296&&h<=56319&&o<l){var c=e.charCodeAt(o++);56320==(64512&c)?h=((1023&h)<<10)+(1023&c)+65536:o--}f="\\"+h.toString(16).toUpperCase()+" "}else f=r.escapeEverything?m.test(u)?"\\"+u:"\\"+h.toString(16).toUpperCase()+" ":/[\t\n\f\r\x0B]/.test(u)?"\\"+h.toString(16).toUpperCase()+" ":"\\"==u||!n&&('"'==u&&i==u||"'"==u&&i==u)||n&&g.test(u)?"\\"+u:u;s+=f}return n&&(/^-[-\d]/.test(s)?s="\\-"+s.slice(1):/\d/.test(a)&&(s="\\3"+a+" "+s.slice(1))),s=s.replace(y,(function(t,e,r){return e&&e.length%2?t:(e||"")+r})),!n&&r.wrap?i+s+i:s};v.options={escapeEverything:!1,isIdentifier:!1,quotes:"single",wrap:!1},v.version="3.0.0";var b=v,x=function(){function t(t){this.renderedElements={},this.idMap=t}return t.prototype.getRendered=function(t,e){return a(this,void 0,void 0,(function(){var r;return s(this,(function(i){switch(i.label){case 0:return this.renderedElements.hasOwnProperty(t)?[2,this.renderedElements[t]]:(r=this.get(t),this.renderedElements[t]=r,[4,e(r)]);case 1:return i.sent(),[2,r]}}))}))},t.prototype.get=function(t){return this.idMap[b(t,{isIdentifier:!0})]},t}();function S(t,e){return Math.atan2(e[1]-t[1],e[0]-t[0])}function w(t,e){return[2/3*(e[0]-t[0])+t[0],2/3*(e[1]-t[1])+t[1]]}function k(t){var e=Math.sqrt(t[0]*t[0]+t[1]*t[1]);return[t[0]/e,t[1]/e]}function M(t,e){return k([e[0]-t[0],e[1]-t[1]])}function A(t,e){return[t[0]+e[0],t[1]+e[1]]}function C(t,e){var r=t[0],i=t[1];return[e.a*r+e.c*i+e.e,e.b*r+e.d*i+e.f]}var F=function(){function t(){this.segments=[]}return t.prototype.moveTo=function(t,e){return this.segments.push(new T(t,e)),this},t.prototype.lineTo=function(t,e){return this.segments.push(new P(t,e)),this},t.prototype.curveTo=function(t,e,r,i,n,a){return this.segments.push(new N(t,e,r,i,n,a)),this},t.prototype.close=function(){return this.segments.push(new B),this},t.prototype.transform=function(t){this.segments.forEach((function(e){if(e instanceof T||e instanceof P||e instanceof N){var r=C([e.x,e.y],t);e.x=r[0],e.y=r[1]}if(e instanceof N){var i=C([e.x1,e.y1],t),n=C([e.x2,e.y2],t);e.x1=i[0],e.y1=i[1],e.x2=n[0],e.y2=n[1]}}))},t.prototype.draw=function(t){var e=t.pdf;this.segments.forEach((function(t){t instanceof T?e.moveTo(t.x,t.y):t instanceof P?e.lineTo(t.x,t.y):t instanceof N?e.curveTo(t.x1,t.y1,t.x2,t.y2,t.x,t.y):e.close()}))},t}(),T=function(t,e){this.x=t,this.y=e},P=function(t,e){this.x=t,this.y=e},N=function(t,e,r,i,n,a){this.x1=t,this.y1=e,this.x2=r,this.y2=i,this.x=n,this.y=a},B=function(){};function E(t,e){return e.split(",").indexOf((t.nodeName||t.tagName).toLowerCase())>=0}function O(t,e,r,i){void 0===i&&(i=r);var n=t.style.getPropertyValue(i);return n||(e.getPropertyValue(t,i)?e.getPropertyValue(t,i):t.hasAttribute(r)&&t.getAttribute(r)||void 0)}function I(t,e,r){if("none"===O(t.element,r.styleSheets,"display"))return!1;var i=e,n=O(t.element,r.styleSheets,"visibility");return n&&(i="hidden"!==n),i}function _(t,e,r){var i=I(t,e,r);return 0!==t.element.childNodes.length&&(t.children.forEach((function(t){t.isVisible(i,r)&&(i=!0)})),i)}var L=function(){function t(){this.markers=[]}return t.prototype.addMarker=function(t){this.markers.push(t)},t.prototype.draw=function(t){return a(this,void 0,void 0,(function(){var e,r,i,n,a,o,l;return s(this,(function(s){switch(s.label){case 0:e=0,s.label=1;case 1:return e<this.markers.length?(r=this.markers[e],i=void 0,n=r.angle,a=r.anchor,o=Math.cos(n),l=Math.sin(n),i=t.pdf.Matrix(o,l,-l,o,a[0],a[1]),i=t.pdf.matrixMult(t.pdf.Matrix(t.attributeState.strokeWidth,0,0,t.attributeState.strokeWidth,0,0),i),i=t.pdf.matrixMult(i,t.transform),t.pdf.saveGraphicsState(),t.pdf.setLineWidth(1),[4,t.refsHandler.getRendered(r.id,(function(e){return e.apply(t)}))]):[3,4];case 2:s.sent(),t.pdf.doFormObject(r.id,i),t.pdf.restoreGraphicsState(),s.label=3;case 3:return e++,[3,1];case 4:return[2]}}))}))},t}(),q=function(t,e,r){this.id=t,this.anchor=e,this.angle=r};function H(t,e){var r;return(r=t&&t.toString().match(/^([\-0-9.]+)em$/))?parseFloat(r[1])*e:(r=t&&t.toString().match(/^([\-0-9.]+)(px|)$/))?parseFloat(r[1]):0}function V(t){return f[t]||"alphabetic"}function j(t){for(var e,r=[],i=/[+-]?(?:(?:\d+\.?\d*)|(?:\d*\.?\d+))(?:[eE][+-]?\d+)?/g;e=i.exec(t);)r.push(parseFloat(e[0]));return r}function D(t){if("transparent"===t){var e=new o("rgb(0,0,0)");return e.a=0,e}var r=/\s*rgba\(((?:[^,\)]*,){3}[^,\)]*)\)\s*/.exec(t);if(r){var i=j(r[1]),n=new o("rgb("+i.slice(0,3).join(",")+")");return n.a=i[3],n}return new o(t)}var R=/[a-z0-9_-]/i,W=/[\s\t]/,U=function(t){for(var e,r,i=!0,n=0,a="",s=0,o=[];;){if(r=t[s],0===n){if(!r&&i)break;if(!r&&!i)throw new Error("Parse error");if('"'===r||"'"===r)e=r,n=1,i=!1;else if(W.test(r));else{if(!R.test(r))throw new Error("Parse error");n=3,i=!1,s--}}else if(1===n){if(!r)throw new Error("Parse Error");"\\"===r?n=2:r===e?(o.push(a),a="",n=4):a+=r}else if(2===n){if(r!==e&&"\\"!==r)throw new Error("Parse error");a+=r,n=1}else if(3===n){if(!r){o.push(a);break}if(R.test(r))a+=r;else if(","===r)o.push(a),a="",n=0;else{if(!W.test(r))throw new Error("Parse error");n=5}}else if(5===n){if(!r){o.push(a);break}if(R.test(r))a+=" "+r,n=3;else if(","===r)o.push(a),a="",n=0;else if(!W.test(r))throw new Error("Parse error")}else if(4===n){if(!r)break;if(","===r)n=0;else if(!W.test(r))throw new Error("Parse error")}s++}return o},G={"sans-serif":"helvetica",verdana:"helvetica",arial:"helvetica",fixed:"courier",monospace:"courier",terminal:"courier",serif:"times",cursive:"times",fantasy:"times"};function z(t,e){if("none"===O(e.element,t.styleSheets,"display"))return[0,0,0,0];var r=[0,0,0,0];return e.children.forEach((function(e){var i=e.getBoundingBox(t);r=[Math.min(r[0],i[0]),Math.min(r[1],i[1]),Math.max(r[0]+r[2],i[0]+i[2])-Math.min(r[0],i[0]),Math.max(r[1]+r[3],i[1]+i[3])-Math.min(r[1],i[1])]})),r}function Y(t,e){var r=parseFloat,i=r(t.getAttribute("x1"))||r(O(t,e.styleSheets,"x"))||r(O(t,e.styleSheets,"cx"))-r(O(t,e.styleSheets,"r"))||0,n=r(t.getAttribute("x2"))||i+r(O(t,e.styleSheets,"width"))||r(O(t,e.styleSheets,"cx"))+r(O(t,e.styleSheets,"r"))||0,a=r(t.getAttribute("y1"))||r(O(t,e.styleSheets,"y"))||r(O(t,e.styleSheets,"cy"))-r(O(t,e.styleSheets,"r"))||0,s=r(t.getAttribute("y2"))||a+r(O(t,e.styleSheets,"height"))||r(O(t,e.styleSheets,"cy"))+r(O(t,e.styleSheets,"r"))||0;return[Math.min(i,n),Math.min(a,s),Math.max(i,n)-Math.min(i,n),Math.max(a,s)-Math.min(a,s)]}function X(t,e,r,i,n,a,s,o){void 0===o&&(o=!1);var l,u,h=e[0],f=e[1],c=e[2],p=e[3],d=n/c,m=a/p,g=t.getAttribute("preserveAspectRatio");if(g){var y=g.split(" ");"defer"===y[0]&&(y=y.slice(1)),l=y[0],u=y[1]||"meet"}else l="xMidYMid",u="meet";if("none"!==l&&("meet"===u?d=m=Math.min(d,m):"slice"===u&&(d=m=Math.max(d,m))),o)return s.pdf.Matrix(d,0,0,m,0,0);var v=r-h*d,b=i-f*m;l.indexOf("xMid")>=0?v+=(n-c*d)/2:l.indexOf("xMax")>=0&&(v+=n-c*d),l.indexOf("YMid")>=0?b+=(a-p*m)/2:l.indexOf("YMax")>=0&&(b+=a-p*m);var x=s.pdf.Matrix(1,0,0,1,v,b),S=s.pdf.Matrix(d,0,0,m,0,0);return s.pdf.matrixMult(S,x)}function Q(t,e){if(!t||"none"===t)return e.pdf.unitMatrix;for(var r,i,n=/^[\s,]*matrix\(([^\)]+)\)\s*/,a=/^[\s,]*translate\(([^\)]+)\)\s*/,s=/^[\s,]*rotate\(([^\)]+)\)\s*/,o=/^[\s,]*scale\(([^\)]+)\)\s*/,l=/^[\s,]*skewX\(([^\)]+)\)\s*/,u=/^[\s,]*skewY\(([^\)]+)\)\s*/,h=e.pdf.unitMatrix;t.length>0&&t.length!==i;){i=t.length;var f=n.exec(t);if(f&&(r=j(f[1]),h=e.pdf.matrixMult(e.pdf.Matrix(r[0],r[1],r[2],r[3],r[4],r[5]),h),t=t.substr(f[0].length)),f=s.exec(t)){r=j(f[1]);var c=Math.PI*r[0]/180;if(h=e.pdf.matrixMult(e.pdf.Matrix(Math.cos(c),Math.sin(c),-Math.sin(c),Math.cos(c),0,0),h),r[1]||r[2]){var p=e.pdf.Matrix(1,0,0,1,r[1],r[2]),d=e.pdf.Matrix(1,0,0,1,-r[1],-r[2]);h=e.pdf.matrixMult(d,e.pdf.matrixMult(h,p))}t=t.substr(f[0].length)}(f=a.exec(t))&&(r=j(f[1]),h=e.pdf.matrixMult(e.pdf.Matrix(1,0,0,1,r[0],r[1]||0),h),t=t.substr(f[0].length)),(f=o.exec(t))&&((r=j(f[1]))[1]||(r[1]=r[0]),h=e.pdf.matrixMult(e.pdf.Matrix(r[0],0,0,r[1],0,0),h),t=t.substr(f[0].length)),(f=l.exec(t))&&(r=parseFloat(f[1]),r*=Math.PI/180,h=e.pdf.matrixMult(e.pdf.Matrix(1,0,Math.tan(r),1,0,0),h),t=t.substr(f[0].length)),(f=u.exec(t))&&(r=parseFloat(f[1]),r*=Math.PI/180,h=e.pdf.matrixMult(e.pdf.Matrix(1,Math.tan(r),0,1,0,0),h),t=t.substr(f[0].length))}return h}var $=function(){function t(t,e){this.element=t,this.children=e}return t.prototype.getBoundingBox=function(t){return"none"===O(this.element,t.styleSheets,"display")?[0,0,0,0]:this.getBoundingBoxCore(t)},t.prototype.computeNodeTransform=function(t){var e=this.computeNodeTransformCore(t),r=O(this.element,t.styleSheets,"transform");return r?t.pdf.matrixMult(e,Q(r,t)):e},t}(),Z=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.render=function(t){return Promise.resolve()},e.prototype.getBoundingBoxCore=function(t){return[]},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e}($),J=function(t){function r(e,r,i){var n=t.call(this,r,i)||this;return n.pdfGradientType=e,n}return i(r,t),r.prototype.apply=function(t){return a(this,void 0,void 0,(function(){var i,n,a,l,u,h;return s(this,(function(s){return(i=this.element.getAttribute("id"))?(n=[],a=0,l=!1,this.children.forEach((function(e){if("stop"===e.element.tagName.toLowerCase()){var i=new o(O(e.element,t.styleSheets,"stop-color"));n.push({offset:r.parseGradientOffset(e.element.getAttribute("offset")||"0"),color:[i.r,i.g,i.b]});var s=O(e.element,t.styleSheets,"stop-opacity");s&&"1"!==s&&(a+=parseFloat(s),l=!0)}})),l&&(u=new e.GState({opacity:a/n.length})),h=new e.ShadingPattern(this.pdfGradientType,this.getCoordinates(),n,u),t.pdf.addShadingPattern(i,h),[2]):[2]}))}))},r.prototype.getBoundingBoxCore=function(t){return Y(this.element,t)},r.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},r.prototype.isVisible=function(t,e){return _(this,t,e)},r.parseGradientOffset=function(t){var e=parseFloat(t);return!isNaN(e)&&t.indexOf("%")>=0?e/100:e},r}(Z),K=function(t){function e(e,r){return t.call(this,"axial",e,r)||this}return i(e,t),e.prototype.getCoordinates=function(){return[parseFloat(this.element.getAttribute("x1")||"0"),parseFloat(this.element.getAttribute("y1")||"0"),parseFloat(this.element.getAttribute("x2")||"1"),parseFloat(this.element.getAttribute("y2")||"0")]},e}(J),tt=function(t){function e(e,r){return t.call(this,"radial",e,r)||this}return i(e,t),e.prototype.getCoordinates=function(){var t=this.element.getAttribute("cx"),e=this.element.getAttribute("cy"),r=this.element.getAttribute("fx"),i=this.element.getAttribute("fy");return[parseFloat(r||t||"0.5"),parseFloat(i||e||"0.5"),0,parseFloat(t||"0.5"),parseFloat(e||"0.5"),parseFloat(this.element.getAttribute("r")||"0.5")]},e}(J),et=function(){function t(t,e){this.key=t,this.gradient=e}return t.prototype.getFillData=function(t,e){return a(this,void 0,void 0,(function(){var r,i,n;return s(this,(function(a){switch(a.label){case 0:return[4,e.refsHandler.getRendered(this.key,(function(t){return t.apply(new p(e.pdf,{refsHandler:e.refsHandler,textMeasure:e.textMeasure,styleSheets:e.styleSheets,viewport:e.viewport,svg2pdfParameters:e.svg2pdfParameters}))}))];case 1:return a.sent(),this.gradient.element.hasAttribute("gradientUnits")&&"objectboundingbox"!==this.gradient.element.getAttribute("gradientUnits").toLowerCase()?r=e.pdf.unitMatrix:(i=t.getBoundingBox(e),r=e.pdf.Matrix(i[2],0,0,i[3],i[0],i[1])),n=Q(O(this.gradient.element,e.styleSheets,"gradientTransform","transform"),e),[2,{key:this.key,matrix:e.pdf.matrixMult(n,r)}]}}))}))},t}(),rt=function(t){function r(){return null!==t&&t.apply(this,arguments)||this}return i(r,t),r.prototype.apply=function(t){return a(this,void 0,void 0,(function(){var r,i,n,a,o;return s(this,(function(s){switch(s.label){case 0:if(!(r=this.element.getAttribute("id")))return[2];i=this.getBoundingBox(t),n=new e.TilingPattern([i[0],i[1],i[0]+i[2],i[1]+i[3]],i[2],i[3]),t.pdf.beginTilingPattern(n),a=0,o=this.children,s.label=1;case 1:return a<o.length?[4,o[a].render(new p(t.pdf,{attributeState:t.attributeState,refsHandler:t.refsHandler,styleSheets:t.styleSheets,viewport:t.viewport,svg2pdfParameters:t.svg2pdfParameters}))]:[3,4];case 2:s.sent(),s.label=3;case 3:return a++,[3,1];case 4:return t.pdf.endTilingPattern(r,n),[2]}}))}))},r.prototype.getBoundingBoxCore=function(t){return Y(this.element,t)},r.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},r.prototype.isVisible=function(t,e){return _(this,t,e)},r}(Z),it=function(){function t(t,e){this.key=t,this.pattern=e}return t.prototype.getFillData=function(t,e){return a(this,void 0,void 0,(function(){var r,i,n,a,o,l,u,h,f,c,d,m;return s(this,(function(s){switch(s.label){case 0:return[4,e.refsHandler.getRendered(this.key,(function(t){return t.apply(new p(e.pdf,{refsHandler:e.refsHandler,textMeasure:e.textMeasure,styleSheets:e.styleSheets,viewport:e.viewport,svg2pdfParameters:e.svg2pdfParameters}))}))];case 1:return s.sent(),r={key:this.key,boundingBox:void 0,xStep:0,yStep:0,matrix:void 0},n=e.pdf.unitMatrix,this.pattern.element.hasAttribute("patternUnits")&&"objectboundingbox"!==this.pattern.element.getAttribute("patternUnits").toLowerCase()||(i=t.getBoundingBox(e),n=e.pdf.Matrix(1,0,0,1,i[0],i[1]),o=this.pattern.getBoundingBox(e),l=o[0]*i[0]||0,u=o[1]*i[1]||0,h=o[2]*i[2]||0,f=o[3]*i[3]||0,r.boundingBox=[l,u,l+h,u+f],r.xStep=h,r.yStep=f),a=e.pdf.unitMatrix,this.pattern.element.hasAttribute("patternContentUnits")&&"objectboundingbox"===this.pattern.element.getAttribute("patternContentUnits").toLowerCase()&&(i||(i=t.getBoundingBox(e)),a=e.pdf.Matrix(i[2],0,0,i[3],0,0),o=r.boundingBox||this.pattern.getBoundingBox(e),l=o[0]/i[0]||0,u=o[1]/i[1]||0,h=o[2]/i[2]||0,f=o[3]/i[3]||0,r.boundingBox=[l,u,l+h,u+f],r.xStep=h,r.yStep=f),c=e.pdf.unitMatrix,(d=O(this.pattern.element,e.styleSheets,"patternTransform","transform"))&&(c=Q(d,e)),m=a,m=e.pdf.matrixMult(m,n),m=e.pdf.matrixMult(m,c),m=e.pdf.matrixMult(m,e.transform),r.matrix=m,[2,r]}}))}))},t}();function nt(t,e,r){var i=r||e.element,n=O(i,t.styleSheets,"visibility");n&&(t.attributeState.visibility=n);var a=O(i,t.styleSheets,"fill");a&&(t.attributeState.fill=function(t,e){var r=h.exec(t);if(r){var i=r[1],n=e.refsHandler.get(i);return n&&(n instanceof K||n instanceof tt)?new et(i,n):n&&n instanceof rt?new it(i,n):new l(new o("rgb(0, 0, 0)"))}var a=D(t);return a.ok?new l(a):null}(a,t));var s=O(i,t.styleSheets,"fill-opacity");s&&(t.attributeState.fillOpacity=parseFloat(s));var u=O(i,t.styleSheets,"stroke-opacity");u&&(t.attributeState.strokeOpacity=parseFloat(u));var f=O(i,t.styleSheets,"opacity");f&&(t.attributeState.opacity=parseFloat(f));var c=O(i,t.styleSheets,"stroke-width");void 0!==c&&""!==c&&(c=Math.abs(parseFloat(c)),t.attributeState.strokeWidth=c);var p=O(i,t.styleSheets,"stroke");if(p)if("none"===p)t.attributeState.stroke=null;else{var d=D(p);d.ok&&(t.attributeState.stroke=new l(d))}var m=O(i,t.styleSheets,"stroke-linecap");m&&(t.attributeState.strokeLinecap=m);var g=O(i,t.styleSheets,"stroke-linejoin");g&&(t.attributeState.strokeLinejoin=g);var y=O(i,t.styleSheets,"stroke-dasharray");if(y){y=j(y);var v=parseInt(O(i,t.styleSheets,"stroke-dashoffset")||"0");t.attributeState.strokeDasharray=y,t.attributeState.strokeDashoffset=v}var b=O(i,t.styleSheets,"stroke-miterlimit");void 0!==b&&""!==b&&(t.attributeState.strokeMiterlimit=parseFloat(b));var x=i.getAttribute("xml:space");x&&(t.attributeState.xmlSpace=x);var S=O(i,t.styleSheets,"font-weight");S&&(t.attributeState.fontWeight=S);var w=O(i,t.styleSheets,"font-style");w&&(t.attributeState.fontStyle=w);var k=O(i,t.styleSheets,"font-family");if(k){var M=U(k);t.attributeState.fontFamily=function(t,e,r){var i="";"bold"===t.fontWeight&&(i="bold"),"italic"===t.fontStyle&&(i+="italic"),""===i&&(i="normal");var n=r.pdf.getFontList(),a="";return e.some((function(t){var e=n[t];return e&&e.indexOf(i)>=0?(a=t,!0):(t=t.toLowerCase(),!!G.hasOwnProperty(t)&&(a=t,!0))}))||(a="times"),a}(t.attributeState,M,t)}var A=O(i,t.styleSheets,"font-size");if(A){var C=t.pdf.getFontSize();t.attributeState.fontSize=H(A,C)}var F=O(i,t.styleSheets,"vertical-align")||O(i,t.styleSheets,"alignment-baseline");if(F){var T=F.match(/(baseline|text-bottom|alphabetic|ideographic|middle|central|mathematical|text-top|bottom|center|top|hanging)/);T&&(t.attributeState.alignmentBaseline=T[0])}var P=O(i,t.styleSheets,"text-anchor");P&&(t.attributeState.textAnchor=P)}function at(t,r,i){var n=1,a=1;n*=t.attributeState.fillOpacity,n*=t.attributeState.opacity,t.attributeState.fill instanceof l&&void 0!==t.attributeState.fill.color.a&&(n*=t.attributeState.fill.color.a),a*=t.attributeState.strokeOpacity,a*=t.attributeState.opacity,t.attributeState.stroke instanceof l&&void 0!==t.attributeState.stroke.color.a&&(a*=t.attributeState.stroke.color.a);var s,o,u=n<1,h=a<1;if(E(i,"use")?(u=!0,h=!0,n*=t.attributeState.fill?1:0,a*=t.attributeState.stroke?1:0):t.withinUse&&(t.attributeState.fill!==r.attributeState.fill?(u=!0,n*=t.attributeState.fill?1:0):u&&!t.attributeState.fill&&(n=0),t.attributeState.stroke!==r.attributeState.stroke?(h=!0,a*=t.attributeState.stroke?1:0):h&&!t.attributeState.stroke&&(a=0)),u||h){var f={};u&&(f.opacity=n),h&&(f["stroke-opacity"]=a),t.pdf.setGState(new e.GState(f))}if(t.attributeState.fill&&t.attributeState.fill!==r.attributeState.fill&&t.attributeState.fill instanceof l&&t.attributeState.fill.color.ok&&!E(i,"text")&&t.pdf.setFillColor(t.attributeState.fill.color.r,t.attributeState.fill.color.g,t.attributeState.fill.color.b),t.attributeState.strokeWidth!==r.attributeState.strokeWidth&&t.pdf.setLineWidth(t.attributeState.strokeWidth),t.attributeState.stroke!==r.attributeState.stroke&&t.attributeState.stroke instanceof l&&t.pdf.setDrawColor(t.attributeState.stroke.color.r,t.attributeState.stroke.color.g,t.attributeState.stroke.color.b),t.attributeState.strokeLinecap!==r.attributeState.strokeLinecap&&t.pdf.setLineCap(t.attributeState.strokeLinecap),t.attributeState.strokeLinejoin!==r.attributeState.strokeLinejoin&&t.pdf.setLineJoin(t.attributeState.strokeLinejoin),t.attributeState.strokeDasharray===r.attributeState.strokeDasharray&&t.attributeState.strokeDashoffset===r.attributeState.strokeDashoffset||!t.attributeState.strokeDasharray||t.pdf.setLineDashPattern(t.attributeState.strokeDasharray,t.attributeState.strokeDashoffset),t.attributeState.strokeMiterlimit!==r.attributeState.strokeMiterlimit&&t.pdf.setLineMiterLimit(t.attributeState.strokeMiterlimit),t.attributeState.fontFamily!==r.attributeState.fontFamily&&(s=G.hasOwnProperty(t.attributeState.fontFamily)?G[t.attributeState.fontFamily]:t.attributeState.fontFamily),t.attributeState.fill&&t.attributeState.fill!==r.attributeState.fill&&t.attributeState.fill instanceof l&&t.attributeState.fill.color.ok){var c=t.attributeState.fill.color;t.pdf.setTextColor(c.r,c.g,c.b)}t.attributeState.fontWeight===r.attributeState.fontWeight&&t.attributeState.fontStyle===r.attributeState.fontStyle||(o="","bold"===t.attributeState.fontWeight&&(o="bold"),"italic"===t.attributeState.fontStyle&&(o+="italic"),""===o&&(o="normal")),void 0===s&&void 0===o||(void 0===s&&(s=G.hasOwnProperty(t.attributeState.fontFamily)?G[t.attributeState.fontFamily]:t.attributeState.fontFamily),t.pdf.setFont(s,o)),t.attributeState.fontSize!==r.attributeState.fontSize&&t.pdf.setFontSize(t.attributeState.fontSize*t.pdf.internal.scaleFactor)}function st(t,e){var r=O(t.element,e.styleSheets,"clip-path");if(r){var i=h.exec(r);if(i){var n=i[1];return e.refsHandler.get(n)||void 0}}}function ot(t,e,r){return a(this,void 0,void 0,(function(){var i,n;return s(this,(function(a){switch(a.label){case 0:return i=r.clone(),e.element.hasAttribute("clipPathUnits")&&"objectboundingbox"===e.element.getAttribute("clipPathUnits").toLowerCase()&&(n=t.getBoundingBox(r),i.transform=r.pdf.matrixMult(r.pdf.Matrix(n[2],0,0,n[3],n[0],n[1]),r.transform)),[4,e.apply(i)];case 1:return a.sent(),[2]}}))}))}var lt=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.render=function(t){return a(this,void 0,void 0,(function(){var e,r,i;return s(this,(function(n){switch(n.label){case 0:return this.isVisible("hidden"!==t.attributeState.visibility,t)?((e=t.clone()).transform=e.pdf.matrixMult(this.computeNodeTransform(e),t.transform),nt(e,this),(r=this.element.hasAttribute("clip-path")&&"none"!==O(this.element,e.styleSheets,"clip-path"))?(i=st(this,e))&&i.isVisible(!0,e)?(e.pdf.saveGraphicsState(),[4,ot(this,i,e)]):[3,2]:[3,3]):[2];case 1:return n.sent(),[3,3];case 2:return[2];case 3:return e.withinClipPath||e.pdf.saveGraphicsState(),at(e,t,this.element),[4,this.renderCore(e)];case 4:return n.sent(),e.withinClipPath||e.pdf.restoreGraphicsState(),r&&e.pdf.restoreGraphicsState(),[2]}}))}))},e}($),ut=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e}(lt),ht=function(t){function e(e,r,i){var n=t.call(this,r,i)||this;return n.cachedPath=null,n.hasMarkers=e,n}return i(e,t),e.prototype.renderCore=function(t){return a(this,void 0,void 0,(function(){var e;return s(this,(function(r){switch(r.label){case 0:return null===(e=this.getCachedPath(t))||0===e.segments.length?[2]:(t.withinClipPath?e.transform(t.transform):t.pdf.setCurrentTransformationMatrix(t.transform),e.draw(t),[4,this.fillOrStroke(t)]);case 1:return r.sent(),this.hasMarkers?[4,this.drawMarkers(t,e)]:[3,3];case 2:r.sent(),r.label=3;case 3:return[2]}}))}))},e.prototype.getCachedPath=function(t){return this.cachedPath||(this.cachedPath=this.getPath(t))},e.prototype.drawMarkers=function(t,e){return a(this,void 0,void 0,(function(){return s(this,(function(r){switch(r.label){case 0:return[4,this.getMarkers(e,t).draw(t.clone({transform:t.pdf.unitMatrix}))];case 1:return r.sent(),[2]}}))}))},e.prototype.fillOrStroke=function(t){return a(this,void 0,void 0,(function(){var e,r,i,n,a;return s(this,(function(s){switch(s.label){case 0:return t.withinClipPath?[2]:(e=t.attributeState.fill,r=t.attributeState.stroke&&0!==t.attributeState.strokeWidth,e?[4,e.getFillData(this,t)]:[3,2]);case 1:return n=s.sent(),[3,3];case 2:n=void 0,s.label=3;case 3:return i=n,a="evenodd"===O(this.element,t.styleSheets,"fill-rule"),e&&r||t.withinUse?a?t.pdf.fillStrokeEvenOdd(i):t.pdf.fillStroke(i):e?a?t.pdf.fillEvenOdd(i):t.pdf.fill(i):r?t.pdf.stroke():t.pdf.discardPath(),[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){var e=this.getCachedPath(t);if(!e)return[0,0,0,0];for(var r=Number.POSITIVE_INFINITY,i=Number.POSITIVE_INFINITY,n=Number.NEGATIVE_INFINITY,a=Number.NEGATIVE_INFINITY,s=0,o=0,l=0;l<e.segments.length;l++){var u=e.segments[l];(u instanceof T||u instanceof P||u instanceof N)&&(s=u.x,o=u.y),u instanceof N?(r=Math.min(r,s,u.x1,u.x2,u.x),n=Math.max(n,s,u.x1,u.x2,u.x),i=Math.min(i,o,u.y1,u.y2,u.y),a=Math.max(a,o,u.y1,u.y2,u.y)):(r=Math.min(r,s),n=Math.max(n,s),i=Math.min(i,o),a=Math.max(a,o))}return[r,i,n-r,a-i]},e.prototype.getMarkers=function(t,e){var r=O(this.element,e.styleSheets,"marker-start"),i=O(this.element,e.styleSheets,"marker-mid"),n=O(this.element,e.styleSheets,"marker-end"),a=new L;if(r||i||n){n&&(n=ft(n)),r&&(r=ft(r)),i&&(i=ft(i));for(var s=t.segments,o=[1,0],l=void 0,u=!1,h=[1,0],f=!1,c=function(t){var e=s[t],c=r&&(1===t||!(s[t]instanceof T)&&s[t-1]instanceof T);c&&s.forEach((function(e,r){if(!f&&e instanceof B&&r>t){var i=s[r-1];f=(i instanceof T||i instanceof P||i instanceof N)&&i}}));var p=n&&(t===s.length-1||!(s[t]instanceof T)&&s[t+1]instanceof T),d=i&&t>0&&!(1===t&&s[t-1]instanceof T),m=s[t-1]||null;if(m instanceof T||m instanceof P||m instanceof N){if(e instanceof N)c&&a.addMarker(new q(r,[m.x,m.y],S(f?[f.x,f.y]:[m.x,m.y],[e.x1,e.y1]))),p&&a.addMarker(new q(n,[e.x,e.y],S([e.x2,e.y2],[e.x,e.y]))),d&&(l=M([m.x,m.y],[e.x1,e.y1]),l=m instanceof T?l:k(A(o,l)),a.addMarker(new q(i,[m.x,m.y],Math.atan2(l[1],l[0])))),o=M([e.x2,e.y2],[e.x,e.y]);else if(e instanceof T||e instanceof P){if(l=M([m.x,m.y],[e.x,e.y]),c){var g=f?M([f.x,f.y],[e.x,e.y]):l;a.addMarker(new q(r,[m.x,m.y],Math.atan2(g[1],g[0])))}if(p&&a.addMarker(new q(n,[e.x,e.y],Math.atan2(l[1],l[0]))),d){g=e instanceof T?o:m instanceof T?l:k(A(o,l));a.addMarker(new q(i,[m.x,m.y],Math.atan2(g[1],g[0])))}o=l}else if(e instanceof B){if(l=M([m.x,m.y],[u.x,u.y]),d){g=m instanceof T?l:k(A(o,l));a.addMarker(new q(i,[m.x,m.y],Math.atan2(g[1],g[0])))}if(p){g=k(A(l,h));a.addMarker(new q(n,[u.x,u.y],Math.atan2(g[1],g[0])))}o=l}}else{u=e instanceof T&&e;var y=s[t+1];(y instanceof T||y instanceof P||y instanceof N)&&(h=M([u.x,u.y],[y.x,y.y]))}},p=0;p<s.length;p++)c(p)}return a},e}(ut);function ft(t){var e=h.exec(t);return e&&e[1]||void 0}var ct=function(t){function e(e,r){return t.call(this,!0,e,r)||this}return i(e,t),e.prototype.getPath=function(t){if(t.withinClipPath||null===t.attributeState.stroke)return null;var e=parseFloat(this.element.getAttribute("x1")||"0"),r=parseFloat(this.element.getAttribute("y1")||"0"),i=parseFloat(this.element.getAttribute("x2")||"0"),n=parseFloat(this.element.getAttribute("y2")||"0");return e||i||r||n?(new F).moveTo(e,r).lineTo(i,n):null},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.prototype.isVisible=function(t,e){return I(this,t,e)},e.prototype.fillOrStroke=function(e){return a(this,void 0,void 0,(function(){return s(this,(function(r){switch(r.label){case 0:return e.attributeState.fill=null,[4,t.prototype.fillOrStroke.call(this,e)];case 1:return r.sent(),[2]}}))}))},e}(ht),pt=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.apply=function(t){return a(this,void 0,void 0,(function(){var e,r,i,n;return s(this,(function(a){switch(a.label){case 0:return this.isVisible("hidden"!==t.attributeState.visibility,t)?((e=t.clone()).transform=e.pdf.unitMatrix,nt(e,this),this.element.hasAttribute("clip-path")&&"none"!==O(this.element,e.styleSheets,"clip-path")?(r=st(this,e))&&r.isVisible(!0,e)?[4,ot(this,r,e)]:[3,2]:[3,3]):[2];case 1:return a.sent(),[3,3];case 2:return[2];case 3:at(e,t,this.element),i=0,n=this.children,a.label=4;case 4:return i<n.length?[4,n[i].render(e)]:[3,7];case 5:a.sent(),a.label=6;case 6:return i++,[3,4];case 7:return[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){return z(t,this)},e.prototype.isVisible=function(t,e){return _(this,t,e)},e.prototype.computeNodeTransformCore=function(t){var e=parseFloat(O(this.element,t.styleSheets,"x")||"0"),r=parseFloat(O(this.element,t.styleSheets,"y")||"0"),i=this.element.getAttribute("viewBox");if(i){var n=j(i),a=parseFloat(O(this.element,t.styleSheets,"width")||O(this.element.ownerSVGElement,t.styleSheets,"width")||i[2]),s=parseFloat(O(this.element,t.styleSheets,"height")||O(this.element.ownerSVGElement,t.styleSheets,"height")||i[3]);return X(this.element,n,e,r,a,s,t)}return t.pdf.Matrix(1,0,0,1,e,r)},e}(Z),dt=function(t,e){this.width=t,this.height=e},mt=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.renderCore=function(t){return a(this,void 0,void 0,(function(){var r,i,n,a,o,l,u,h,f,c,d,m;return s(this,(function(s){switch(s.label){case 0:return r=parseFloat,(i=this.element.getAttribute("href")||this.element.getAttribute("xlink:href"))?(n=i.substring(1),a=t.refsHandler.get(n),o=E(a.element,"symbol,svg")&&a.element.hasAttribute("viewBox"),l=r(O(this.element,t.styleSheets,"x")||"0"),u=r(O(this.element,t.styleSheets,"y")||"0"),h=void 0,f=void 0,o?(h=r(O(this.element,t.styleSheets,"width")||O(a.element,t.styleSheets,"width")||"0"),f=r(O(this.element,t.styleSheets,"height")||O(a.element,t.styleSheets,"height")||"0"),l+=r(O(a.element,t.styleSheets,"x")||"0"),u+=r(O(a.element,t.styleSheets,"y")||"0"),d=j(a.element.getAttribute("viewBox")),c=X(a.element,d,l,u,h,f,t)):c=t.pdf.Matrix(1,0,0,1,l,u),m=new p(t.pdf,{refsHandler:t.refsHandler,styleSheets:t.styleSheets,withinUse:!0,viewport:o?new dt(h,f):t.viewport,svg2pdfParameters:t.svg2pdfParameters}),[4,t.refsHandler.getRendered(n,(function(t){return e.renderReferencedNode(t,m)}))]):[2];case 1:return s.sent(),t.pdf.saveGraphicsState(),t.pdf.setCurrentTransformationMatrix(t.transform),o&&"visible"!==O(a.element,t.styleSheets,"overflow")&&(t.pdf.rect(l,u,h,f),t.pdf.clip().discardPath()),t.pdf.doFormObject(n,c),t.pdf.restoreGraphicsState(),[2]}}))}))},e.renderReferencedNode=function(t,e){return a(this,void 0,void 0,(function(){var r;return s(this,(function(i){switch(i.label){case 0:return r=[(r=t.getBoundingBox(e))[0]-.5*r[2],r[1]-.5*r[3],2*r[2],2*r[3]],e.pdf.beginFormObject(r[0],r[1],r[2],r[3],e.pdf.unitMatrix),t instanceof pt?[4,t.apply(e)]:[3,2];case 1:return i.sent(),[3,4];case 2:return[4,t.render(e)];case 3:i.sent(),i.label=4;case 4:return e.pdf.endFormObject(t.element.getAttribute("id")),[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){return Y(this.element,t)},e.prototype.isVisible=function(t,e){return I(this,t,e)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e}(ut),gt=function(t){function e(e,r){return t.call(this,!1,e,r)||this}return i(e,t),e.prototype.getPath=function(t){var e=parseFloat(O(this.element,t.styleSheets,"width")||"0"),r=parseFloat(O(this.element,t.styleSheets,"height")||"0");if(!isFinite(e)||e<=0||!isFinite(r)||r<=0)return null;var i=O(this.element,t.styleSheets,"rx"),n=O(this.element,t.styleSheets,"ry"),a=Math.min(parseFloat(i||n||"0"),.5*e),s=Math.min(parseFloat(n||i||"0"),.5*r),o=parseFloat(O(this.element,t.styleSheets,"x")||"0"),l=parseFloat(O(this.element,t.styleSheets,"y")||"0"),u=4/3*(Math.SQRT2-1);return 0===a&&0===s?(new F).moveTo(o,l).lineTo(o+e,l).lineTo(o+e,l+r).lineTo(o,l+r).close():(new F).moveTo(o+=a,l).lineTo(o+=e-2*a,l).curveTo(o+a*u,l,o+a,l+(s-s*u),o+=a,l+=s).lineTo(o,l+=r-2*s).curveTo(o,l+s*u,o-a*u,l+s,o-=a,l+=s).lineTo(o+=2*a-e,l).curveTo(o-a*u,l,o-a,l-s*u,o-=a,l-=s).lineTo(o,l+=2*s-r).curveTo(o,l-s*u,o+a*u,l-s,o+=a,l-=s).close()},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.prototype.isVisible=function(t,e){return I(this,t,e)},e}(ht),yt=function(t){function e(e,r){return t.call(this,!1,e,r)||this}return i(e,t),e.prototype.getPath=function(t){var e=this.getRx(t),r=this.getRy(t);if(!isFinite(e)||r<=0||!isFinite(r)||r<=0)return null;var i=parseFloat(O(this.element,t.styleSheets,"cx")||"0"),n=parseFloat(O(this.element,t.styleSheets,"cy")||"0"),a=4/3*(Math.SQRT2-1)*e,s=4/3*(Math.SQRT2-1)*r;return(new F).moveTo(i+e,n).curveTo(i+e,n-s,i+a,n-r,i,n-r).curveTo(i-a,n-r,i-e,n-s,i-e,n).curveTo(i-e,n+s,i-a,n+r,i,n+r).curveTo(i+a,n+r,i+e,n+s,i+e,n)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.prototype.isVisible=function(t,e){return I(this,t,e)},e}(ht),vt=function(t){function e(e,r){return t.call(this,e,r)||this}return i(e,t),e.prototype.getRx=function(t){return parseFloat(O(this.element,t.styleSheets,"rx")||"0")},e.prototype.getRy=function(t){return parseFloat(O(this.element,t.styleSheets,"ry")||"0")},e}(yt);function bt(t){var e="invisible";return t.fill&&t.stroke?e="fillThenStroke":t.fill?e="fill":t.stroke&&(e="stroke"),e}function xt(t){return t.replace(/[\n\r]/g,"")}function St(t){return t.replace(/[\t]/g," ")}function wt(t){return t.replace(/ +/g," ")}function kt(t,e,r){switch(O(t,r.styleSheets,"text-transform")){case"uppercase":return e.toUpperCase();case"lowercase":return e.toLowerCase();default:return e}}function Mt(t){return t.replace(/\s+$/,"")}var At=function(){function t(t,e,r,i){this.textNode=t,this.texts=[],this.textNodes=[],this.textAnchor=e,this.originX=r,this.originY=i}return t.prototype.add=function(t,e){this.texts.push(e),this.textNodes.push(t)},t.prototype.put=function(t){var e,r,i,n=[],a=[],s=[],u=this.originX,h=this.originY,f=u,c=u;for(e=0;e<this.textNodes.length;e++){var p=u,d=h,m=void 0;if("#text"===(r=this.textNodes[e]).nodeName)m=t;else{nt(m=t.clone(),this.textNode,r);var g=O(r,t.styleSheets,"stroke");g&&(i=new o(g)).ok&&(m.attributeState.stroke=new l(i));var y=O(r,t.styleSheets,"stroke-width");void 0!==y&&(m.attributeState.strokeWidth=parseFloat(y));var v=r.getAttribute("dx");null!==v&&(p+=H(v,m.attributeState.fontSize));var b=r.getAttribute("dy");null!==b&&(d+=H(b,m.attributeState.fontSize))}s[e]=m,n[e]=p,a[e]=d,u=p+t.textMeasure.measureTextWidth(this.texts[e],m.attributeState),h=d,f=Math.min(f,p),c=Math.max(c,u)}var x=0;switch(this.textAnchor){case"start":x=0;break;case"middle":x=(c-f)/2;break;case"end":x=c-f}for(e=0;e<this.textNodes.length;e++){if("#text"!==(r=this.textNodes[e]).nodeName)if("hidden"===(O(r,t.styleSheets,"visibility")||t.attributeState.visibility))continue;t.pdf.saveGraphicsState(),at(s[e],t,r);var S=s[e].attributeState.alignmentBaseline,w=bt(s[e].attributeState);t.pdf.text(this.texts[e],n[e]-x,a[e],{baseline:V(S),angle:t.transform,renderingMode:"fill"===w?void 0:w}),t.pdf.restoreGraphicsState()}return[u,h]},t}(),Ct=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.renderCore=function(t){return a(this,void 0,void 0,(function(){var e,r,i,n,a,o,l,u,h,f,c,p,d,m,g,y,v,b,x,S,w,k,M,A,C;return s(this,(function(s){if(t.pdf.saveGraphicsState(),e=0,r=t.pdf.getFontSize(),i=H(this.element.getAttribute("x"),r),n=H(this.element.getAttribute("y"),r),a=H(this.element.getAttribute("dx"),r),o=H(this.element.getAttribute("dy"),r),l=t.attributeState.visibility,0===(u=this.element.childElementCount))A=function(t,e){return t=St(t=xt(t)),"default"===e.xmlSpace&&(t=wt(t=t.trim())),t}(this.element.textContent||"",t.attributeState),C=kt(this.element,A,t),e=t.textMeasure.getTextOffset(C,t.attributeState),"visible"===l&&(h=t.attributeState.alignmentBaseline,f=bt(t.attributeState),t.pdf.text(C,i+a-e,n+o,{baseline:V(h),angle:t.transform,renderingMode:"fill"===f?void 0:f}));else{for(c=new At(this,t.attributeState.textAnchor,i+a,n+o),p=0;p<this.element.childNodes.length;p++)if((d=this.element.childNodes[p]).textContent){if(m=t.attributeState.xmlSpace,g=d.textContent,"#text"===d.nodeName);else{if(E(d,"title"))continue;if(E(d,"tspan")){if((y=d).childElementCount>0)for(g="",v=0;v<y.childNodes.length;v++)"#text"===y.childNodes[v].nodeName&&(g+=y.childNodes[v].textContent);b=void 0,null!==(x=y.getAttribute("x"))&&(S=H(x,r),b=c.put(t),c=new At(this,O(y,t.styleSheets,"text-anchor")||t.attributeState.textAnchor,S,b[1])),null!==(w=y.getAttribute("y"))&&(k=H(w,r),b=c.put(t),c=new At(this,O(y,t.styleSheets,"text-anchor")||t.attributeState.textAnchor,b[0],k)),(M=y.getAttribute("xml:space"))&&(m=M)}}A=St(A=xt(g)),"default"===m&&(0===p&&(A=A.replace(/^\s+/,"")),p===u-1&&(A=Mt(A)),A=wt(A)),C=kt(this.element,A,t),c.add(d,C)}c.put(t)}return t.pdf.restoreGraphicsState(),[2]}))}))},e.prototype.isVisible=function(t,e){return _(this,t,e)},e.prototype.getBoundingBoxCore=function(t){return Y(this.element,t)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e}(ut),Ft={a:7,c:6,h:1,l:2,m:2,r:4,q:4,s:4,t:2,v:1,z:0},Tt=[5760,6158,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279];function Pt(t){return t>=48&&t<=57}function Nt(t){return t>=48&&t<=57||43===t||45===t||46===t}function Bt(t){this.index=0,this.path=t,this.max=t.length,this.result=[],this.param=0,this.err="",this.segmentStart=0,this.data=[]}function Et(t){for(;t.index<t.max&&(10===(e=t.path.charCodeAt(t.index))||13===e||8232===e||8233===e||32===e||9===e||11===e||12===e||160===e||e>=5760&&Tt.indexOf(e)>=0);)t.index++;var e}function Ot(t){var e=t.path.charCodeAt(t.index);return 48===e?(t.param=0,void t.index++):49===e?(t.param=1,void t.index++):void(t.err="SvgPath: arc flag can be 0 or 1 only (at pos "+t.index+")")}function It(t){var e,r=t.index,i=r,n=t.max,a=!1,s=!1,o=!1,l=!1;if(i>=n)t.err="SvgPath: missed param (at pos "+i+")";else if(43!==(e=t.path.charCodeAt(i))&&45!==e||(e=++i<n?t.path.charCodeAt(i):0),Pt(e)||46===e){if(46!==e){if(a=48===e,e=++i<n?t.path.charCodeAt(i):0,a&&i<n&&e&&Pt(e))return void(t.err="SvgPath: numbers started with `0` such as `09` are illegal (at pos "+r+")");for(;i<n&&Pt(t.path.charCodeAt(i));)i++,s=!0;e=i<n?t.path.charCodeAt(i):0}if(46===e){for(l=!0,i++;Pt(t.path.charCodeAt(i));)i++,o=!0;e=i<n?t.path.charCodeAt(i):0}if(101===e||69===e){if(l&&!s&&!o)return void(t.err="SvgPath: invalid float exponent (at pos "+i+")");if(43!==(e=++i<n?t.path.charCodeAt(i):0)&&45!==e||i++,!(i<n&&Pt(t.path.charCodeAt(i))))return void(t.err="SvgPath: invalid float exponent (at pos "+i+")");for(;i<n&&Pt(t.path.charCodeAt(i));)i++}t.index=i,t.param=parseFloat(t.path.slice(r,i))+0}else t.err="SvgPath: param should start with 0..9 or `.` (at pos "+i+")"}function _t(t){var e,r;r=(e=t.path[t.segmentStart]).toLowerCase();var i=t.data;if("m"===r&&i.length>2&&(t.result.push([e,i[0],i[1]]),i=i.slice(2),r="l",e="m"===e?"l":"L"),"r"===r)t.result.push([e].concat(i));else for(;i.length>=Ft[r]&&(t.result.push([e].concat(i.splice(0,Ft[r]))),Ft[r]););}function Lt(t){var e,r,i,n,a,s=t.max;if(t.segmentStart=t.index,e=t.path.charCodeAt(t.index),r=97==(32|e),function(t){switch(32|t){case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}(e))if(n=Ft[t.path[t.index].toLowerCase()],t.index++,Et(t),t.data=[],n){for(i=!1;;){for(a=n;a>0;a--){if(!r||3!==a&&4!==a?It(t):Ot(t),t.err.length)return;t.data.push(t.param),Et(t),i=!1,t.index<s&&44===t.path.charCodeAt(t.index)&&(t.index++,Et(t),i=!0)}if(!i){if(t.index>=t.max)break;if(!Nt(t.path.charCodeAt(t.index)))break}}_t(t)}else _t(t);else t.err="SvgPath: bad command "+t.path[t.index]+" (at pos "+t.index+")"}function qt(){if(!(this instanceof qt))return new qt;this.queue=[],this.cache=null}qt.prototype.matrix=function(t){return 1===t[0]&&0===t[1]&&0===t[2]&&1===t[3]&&0===t[4]&&0===t[5]||(this.cache=null,this.queue.push(t)),this},qt.prototype.translate=function(t,e){return 0===t&&0===e||(this.cache=null,this.queue.push([1,0,0,1,t,e])),this},qt.prototype.scale=function(t,e){return 1===t&&1===e||(this.cache=null,this.queue.push([t,0,0,e,0,0])),this},qt.prototype.rotate=function(t,e,r){var i,n,a;return 0!==t&&(this.translate(e,r),i=t*Math.PI/180,n=Math.cos(i),a=Math.sin(i),this.queue.push([n,a,-a,n,0,0]),this.cache=null,this.translate(-e,-r)),this},qt.prototype.skewX=function(t){return 0!==t&&(this.cache=null,this.queue.push([1,0,Math.tan(t*Math.PI/180),1,0,0])),this},qt.prototype.skewY=function(t){return 0!==t&&(this.cache=null,this.queue.push([1,Math.tan(t*Math.PI/180),0,1,0,0])),this},qt.prototype.toArray=function(){if(this.cache)return this.cache;if(!this.queue.length)return this.cache=[1,0,0,1,0,0],this.cache;if(this.cache=this.queue[0],1===this.queue.length)return this.cache;for(var t=1;t<this.queue.length;t++)this.cache=(e=this.cache,r=this.queue[t],[e[0]*r[0]+e[2]*r[1],e[1]*r[0]+e[3]*r[1],e[0]*r[2]+e[2]*r[3],e[1]*r[2]+e[3]*r[3],e[0]*r[4]+e[2]*r[5]+e[4],e[1]*r[4]+e[3]*r[5]+e[5]]);var e,r;return this.cache},qt.prototype.calc=function(t,e,r){var i;return this.queue.length?(this.cache||(this.cache=this.toArray()),[t*(i=this.cache)[0]+e*i[2]+(r?0:i[4]),t*i[1]+e*i[3]+(r?0:i[5])]):[t,e]};var Ht=qt,Vt={matrix:!0,scale:!0,rotate:!0,translate:!0,skewX:!0,skewY:!0},jt=/\s*(matrix|translate|scale|rotate|skewX|skewY)\s*\(\s*(.+?)\s*\)[\s,]*/,Dt=/[\s,]+/,Rt=2*Math.PI;function Wt(t,e,r,i){var n=t*r+e*i;return n>1&&(n=1),n<-1&&(n=-1),(t*i-e*r<0?-1:1)*Math.acos(n)}function Ut(t,e){var r=4/3*Math.tan(e/4),i=Math.cos(t),n=Math.sin(t),a=Math.cos(t+e),s=Math.sin(t+e);return[i,n,i-n*r,n+i*r,a+s*r,s-a*r,a,s]}var Gt=function(t,e,r,i,n,a,s,o,l){var u=Math.sin(l*Rt/360),h=Math.cos(l*Rt/360),f=h*(t-r)/2+u*(e-i)/2,c=-u*(t-r)/2+h*(e-i)/2;if(0===f&&0===c)return[];if(0===s||0===o)return[];s=Math.abs(s),o=Math.abs(o);var p=f*f/(s*s)+c*c/(o*o);p>1&&(s*=Math.sqrt(p),o*=Math.sqrt(p));var d=function(t,e,r,i,n,a,s,o,l,u){var h=u*(t-r)/2+l*(e-i)/2,f=-l*(t-r)/2+u*(e-i)/2,c=s*s,p=o*o,d=h*h,m=f*f,g=c*p-c*m-p*d;g<0&&(g=0),g/=c*m+p*d;var y=(g=Math.sqrt(g)*(n===a?-1:1))*s/o*f,v=g*-o/s*h,b=u*y-l*v+(t+r)/2,x=l*y+u*v+(e+i)/2,S=(h-y)/s,w=(f-v)/o,k=(-h-y)/s,M=(-f-v)/o,A=Wt(1,0,S,w),C=Wt(S,w,k,M);return 0===a&&C>0&&(C-=Rt),1===a&&C<0&&(C+=Rt),[b,x,A,C]}(t,e,r,i,n,a,s,o,u,h),m=[],g=d[2],y=d[3],v=Math.max(Math.ceil(Math.abs(y)/(Rt/4)),1);y/=v;for(var b=0;b<v;b++)m.push(Ut(g,y)),g+=y;return m.map((function(t){for(var e=0;e<t.length;e+=2){var r=t[e+0],i=t[e+1],n=h*(r*=s)-u*(i*=o),a=u*r+h*i;t[e+0]=n+d[0],t[e+1]=a+d[1]}return t}))},zt=Math.PI/180;function Yt(t,e,r){if(!(this instanceof Yt))return new Yt(t,e,r);this.rx=t,this.ry=e,this.ax=r}Yt.prototype.transform=function(t){var e=Math.cos(this.ax*zt),r=Math.sin(this.ax*zt),i=[this.rx*(t[0]*e+t[2]*r),this.rx*(t[1]*e+t[3]*r),this.ry*(-t[0]*r+t[2]*e),this.ry*(-t[1]*r+t[3]*e)],n=i[0]*i[0]+i[2]*i[2],a=i[1]*i[1]+i[3]*i[3],s=((i[0]-i[3])*(i[0]-i[3])+(i[2]+i[1])*(i[2]+i[1]))*((i[0]+i[3])*(i[0]+i[3])+(i[2]-i[1])*(i[2]-i[1])),o=(n+a)/2;if(s<1e-10*o)return this.rx=this.ry=Math.sqrt(o),this.ax=0,this;var l=i[0]*i[1]+i[2]*i[3],u=o+(s=Math.sqrt(s))/2,h=o-s/2;return this.ax=Math.abs(l)<1e-10&&Math.abs(u-a)<1e-10?90:180*Math.atan(Math.abs(l)>Math.abs(u-a)?(u-n)/l:l/(u-a))/Math.PI,this.ax>=0?(this.rx=Math.sqrt(u),this.ry=Math.sqrt(h)):(this.ax+=90,this.rx=Math.sqrt(h),this.ry=Math.sqrt(u)),this},Yt.prototype.isDegenerate=function(){return this.rx<1e-10*this.ry||this.ry<1e-10*this.rx};var Xt=Yt;function Qt(t){if(!(this instanceof Qt))return new Qt(t);var e=function(t){var e=new Bt(t),r=e.max;for(Et(e);e.index<r&&!e.err.length;)Lt(e);return e.err.length?e.result=[]:e.result.length&&("mM".indexOf(e.result[0][0])<0?(e.err="SvgPath: string should start with `M` or `m`",e.result=[]):e.result[0][0]="M"),{err:e.err,segments:e.result}}(t);this.segments=e.segments,this.err=e.err,this.__stack=[]}Qt.from=function(t){if("string"==typeof t)return new Qt(t);if(t instanceof Qt){var e=new Qt("");return e.err=t.err,e.segments=t.segments.map((function(t){return t.slice()})),e.__stack=t.__stack.map((function(t){return Ht().matrix(t.toArray())})),e}throw new Error("SvgPath.from: invalid param type "+t)},Qt.prototype.__matrix=function(t){var e,r=this;t.queue.length&&this.iterate((function(i,n,a,s){var o,l,u,h;switch(i[0]){case"v":l=0===(o=t.calc(0,i[1],!0))[0]?["v",o[1]]:["l",o[0],o[1]];break;case"V":l=(o=t.calc(a,i[1],!1))[0]===t.calc(a,s,!1)[0]?["V",o[1]]:["L",o[0],o[1]];break;case"h":l=0===(o=t.calc(i[1],0,!0))[1]?["h",o[0]]:["l",o[0],o[1]];break;case"H":l=(o=t.calc(i[1],s,!1))[1]===t.calc(a,s,!1)[1]?["H",o[0]]:["L",o[0],o[1]];break;case"a":case"A":var f=t.toArray(),c=Xt(i[1],i[2],i[3]).transform(f);if(f[0]*f[3]-f[1]*f[2]<0&&(i[5]=i[5]?"0":"1"),o=t.calc(i[6],i[7],"a"===i[0]),"A"===i[0]&&i[6]===a&&i[7]===s||"a"===i[0]&&0===i[6]&&0===i[7]){l=["a"===i[0]?"l":"L",o[0],o[1]];break}l=c.isDegenerate()?["a"===i[0]?"l":"L",o[0],o[1]]:[i[0],c.rx,c.ry,c.ax,i[4],i[5],o[0],o[1]];break;case"m":h=n>0,l=["m",(o=t.calc(i[1],i[2],h))[0],o[1]];break;default:for(l=[u=i[0]],h=u.toLowerCase()===u,e=1;e<i.length;e+=2)o=t.calc(i[e],i[e+1],h),l.push(o[0],o[1])}r.segments[n]=l}),!0)},Qt.prototype.__evaluateStack=function(){var t,e;if(this.__stack.length){if(1===this.__stack.length)return this.__matrix(this.__stack[0]),void(this.__stack=[]);for(t=Ht(),e=this.__stack.length;--e>=0;)t.matrix(this.__stack[e].toArray());this.__matrix(t),this.__stack=[]}},Qt.prototype.toString=function(){var t,e,r=[];this.__evaluateStack();for(var i=0;i<this.segments.length;i++)e=this.segments[i][0],t=i>0&&"m"!==e&&"M"!==e&&e===this.segments[i-1][0],r=r.concat(t?this.segments[i].slice(1):this.segments[i]);return r.join(" ").replace(/ ?([achlmqrstvz]) ?/gi,"$1").replace(/ \-/g,"-").replace(/zm/g,"z m")},Qt.prototype.translate=function(t,e){return this.__stack.push(Ht().translate(t,e||0)),this},Qt.prototype.scale=function(t,e){return this.__stack.push(Ht().scale(t,e||0===e?e:t)),this},Qt.prototype.rotate=function(t,e,r){return this.__stack.push(Ht().rotate(t,e||0,r||0)),this},Qt.prototype.skewX=function(t){return this.__stack.push(Ht().skewX(t)),this},Qt.prototype.skewY=function(t){return this.__stack.push(Ht().skewY(t)),this},Qt.prototype.matrix=function(t){return this.__stack.push(Ht().matrix(t)),this},Qt.prototype.transform=function(t){return t.trim()?(this.__stack.push(function(t){var e,r,i=new Ht;return t.split(jt).forEach((function(t){if(t.length)if(void 0===Vt[t])switch(r=t.split(Dt).map((function(t){return+t||0})),e){case"matrix":return void(6===r.length&&i.matrix(r));case"scale":return void(1===r.length?i.scale(r[0],r[0]):2===r.length&&i.scale(r[0],r[1]));case"rotate":return void(1===r.length?i.rotate(r[0],0,0):3===r.length&&i.rotate(r[0],r[1],r[2]));case"translate":return void(1===r.length?i.translate(r[0],0):2===r.length&&i.translate(r[0],r[1]));case"skewX":return void(1===r.length&&i.skewX(r[0]));case"skewY":return void(1===r.length&&i.skewY(r[0]))}else e=t})),i}(t)),this):this},Qt.prototype.round=function(t){var e,r=0,i=0,n=0,a=0;return t=t||0,this.__evaluateStack(),this.segments.forEach((function(s){var o=s[0].toLowerCase()===s[0];switch(s[0]){case"H":case"h":return o&&(s[1]+=n),n=s[1]-s[1].toFixed(t),void(s[1]=+s[1].toFixed(t));case"V":case"v":return o&&(s[1]+=a),a=s[1]-s[1].toFixed(t),void(s[1]=+s[1].toFixed(t));case"Z":case"z":return n=r,void(a=i);case"M":case"m":return o&&(s[1]+=n,s[2]+=a),n=s[1]-s[1].toFixed(t),a=s[2]-s[2].toFixed(t),r=n,i=a,s[1]=+s[1].toFixed(t),void(s[2]=+s[2].toFixed(t));case"A":case"a":return o&&(s[6]+=n,s[7]+=a),n=s[6]-s[6].toFixed(t),a=s[7]-s[7].toFixed(t),s[1]=+s[1].toFixed(t),s[2]=+s[2].toFixed(t),s[3]=+s[3].toFixed(t+2),s[6]=+s[6].toFixed(t),void(s[7]=+s[7].toFixed(t));default:return e=s.length,o&&(s[e-2]+=n,s[e-1]+=a),n=s[e-2]-s[e-2].toFixed(t),a=s[e-1]-s[e-1].toFixed(t),void s.forEach((function(e,r){r&&(s[r]=+s[r].toFixed(t))}))}})),this},Qt.prototype.iterate=function(t,e){var r,i,n,a=this.segments,s={},o=!1,l=0,u=0,h=0,f=0;if(e||this.__evaluateStack(),a.forEach((function(e,r){var i=t(e,r,l,u);Array.isArray(i)&&(s[r]=i,o=!0);var n=e[0]===e[0].toLowerCase();switch(e[0]){case"m":case"M":return l=e[1]+(n?l:0),u=e[2]+(n?u:0),h=l,void(f=u);case"h":case"H":return void(l=e[1]+(n?l:0));case"v":case"V":return void(u=e[1]+(n?u:0));case"z":case"Z":return l=h,void(u=f);default:l=e[e.length-2]+(n?l:0),u=e[e.length-1]+(n?u:0)}})),!o)return this;for(n=[],r=0;r<a.length;r++)if(void 0!==s[r])for(i=0;i<s[r].length;i++)n.push(s[r][i]);else n.push(a[r]);return this.segments=n,this},Qt.prototype.abs=function(){return this.iterate((function(t,e,r,i){var n,a=t[0],s=a.toUpperCase();if(a!==s)switch(t[0]=s,a){case"v":return void(t[1]+=i);case"a":return t[6]+=r,void(t[7]+=i);default:for(n=1;n<t.length;n++)t[n]+=n%2?r:i}}),!0),this},Qt.prototype.rel=function(){return this.iterate((function(t,e,r,i){var n,a=t[0],s=a.toLowerCase();if(a!==s&&(0!==e||"M"!==a))switch(t[0]=s,a){case"V":return void(t[1]-=i);case"A":return t[6]-=r,void(t[7]-=i);default:for(n=1;n<t.length;n++)t[n]-=n%2?r:i}}),!0),this},Qt.prototype.unarc=function(){return this.iterate((function(t,e,r,i){var n,a,s,o=[],l=t[0];return"A"!==l&&"a"!==l?null:("a"===l?(a=r+t[6],s=i+t[7]):(a=t[6],s=t[7]),0===(n=Gt(r,i,a,s,t[4],t[5],t[1],t[2],t[3])).length?[["a"===t[0]?"l":"L",t[6],t[7]]]:(n.forEach((function(t){o.push(["C",t[2],t[3],t[4],t[5],t[6],t[7]])})),o))})),this},Qt.prototype.unshort=function(){var t,e,r,i,n,a=this.segments;return this.iterate((function(s,o,l,u){var h,f=s[0],c=f.toUpperCase();o&&("T"===c?(h="t"===f,"Q"===(r=a[o-1])[0]?(t=r[1]-l,e=r[2]-u):"q"===r[0]?(t=r[1]-r[3],e=r[2]-r[4]):(t=0,e=0),i=-t,n=-e,h||(i+=l,n+=u),a[o]=[h?"q":"Q",i,n,s[1],s[2]]):"S"===c&&(h="s"===f,"C"===(r=a[o-1])[0]?(t=r[3]-l,e=r[4]-u):"c"===r[0]?(t=r[3]-r[5],e=r[4]-r[6]):(t=0,e=0),i=-t,n=-e,h||(i+=l,n+=u),a[o]=[h?"c":"C",i,n,s[1],s[2],s[3],s[4]]))})),this};var $t=Qt,Zt=function(t){function e(e,r){return t.call(this,!0,e,r)||this}return i(e,t),e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.prototype.isVisible=function(t,e){return I(this,t,e)},e.prototype.getPath=function(t){var e,r,i=new $t(O(this.element,t.styleSheets,"d")||"").unshort().unarc().abs(),n=new F;return i.iterate((function(t,i){var a=t[0];switch(a){case"M":n.moveTo(t[1],t[2]);break;case"L":n.lineTo(t[1],t[2]);break;case"H":n.lineTo(t[1],r);break;case"V":n.lineTo(e,t[1]);break;case"C":n.curveTo(t[1],t[2],t[3],t[4],t[5],t[6]);break;case"Q":var s=w([e,r],[t[1],t[2]]),o=w([t[3],t[4]],[t[1],t[2]]);n.curveTo(s[0],s[1],o[0],o[1],t[3],t[4]);break;case"Z":n.close()}switch(a){case"M":case"L":e=t[1],r=t[2];break;case"H":e=t[1];break;case"V":r=t[1];break;case"C":e=t[5],r=t[6];break;case"Q":e=t[3],r=t[4]}})),n},e}(ht),Jt=/^\s*data:(([^/,;]+\/[^/,;]+)(?:;([^,;=]+=[^,;=]+))?)?(?:;(base64))?,(.*\s*)$/i,Kt=function(t){function e(r,i){var n=t.call(this,r,i)||this;return n.imageLoadingPromise=null,n.imageUrl=n.element.getAttribute("xlink:href")||n.element.getAttribute("href"),n.imageUrl&&(n.imageLoadingPromise=e.fetchImageData(n.imageUrl)),n}return i(e,t),e.prototype.renderCore=function(t){return a(this,void 0,void 0,(function(){var e,r,i,n,a,o,l,u,h,f,c,d;return s(this,(function(s){switch(s.label){case 0:return this.imageLoadingPromise?(t.pdf.setCurrentTransformationMatrix(t.transform),e=parseFloat(O(this.element,t.styleSheets,"width")||"0"),r=parseFloat(O(this.element,t.styleSheets,"height")||"0"),i=parseFloat(O(this.element,t.styleSheets,"x")||"0"),n=parseFloat(O(this.element,t.styleSheets,"y")||"0"),!isFinite(e)||e<=0||!isFinite(r)||r<=0?[2]:[4,this.imageLoadingPromise]):[2];case 1:return a=s.sent(),o=a.data,0!==(l=a.format).indexOf("svg")?[3,3]:(u=new DOMParser,h=u.parseFromString(o,"image/svg+xml").firstElementChild,(!(f=this.element.getAttribute("preserveAspectRatio"))||f.indexOf("defer")<0||!h.getAttribute("preserveAspectRatio"))&&h.setAttribute("preserveAspectRatio",f||""),h.setAttribute("x",String(i)),h.setAttribute("y",String(n)),h.setAttribute("width",String(e)),h.setAttribute("height",String(r)),[4,he(h,c={}).render(new p(t.pdf,{refsHandler:new x(c),styleSheets:t.styleSheets,viewport:new dt(e,r),svg2pdfParameters:t.svg2pdfParameters}))]);case 2:return s.sent(),[2];case 3:d="data:image/"+l+";base64,"+btoa(o);try{t.pdf.addImage(d,"",i,n,e,r)}catch(t){"object"==typeof console&&console.warn&&console.warn("Could not load image "+this.imageUrl+".\n"+t)}s.label=4;case 4:return[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){return Y(this.element,t)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.prototype.isVisible=function(t,e){return I(this,t,e)},e.fetchImageData=function(t){return a(this,void 0,void 0,(function(){var r,i,n,a,o;return s(this,(function(s){switch(s.label){case 0:if(!(n=t.match(Jt)))return[3,1];if(a=n[2],"image"!==(o=a.split("/"))[0])throw new Error("Unsupported image URL: "+t);return i=o[1],r=n[5],r="base64"===n[4]?atob(r):decodeURIComponent(r),[3,3];case 1:return[4,e.fetchImage(t)];case 2:r=s.sent(),i=t.substring(t.lastIndexOf(".")+1),s.label=3;case 3:return[2,{data:r,format:i}]}}))}))},e.fetchImage=function(t){return new Promise((function(e,r){var i=new XMLHttpRequest;i.open("GET",t,!0),i.responseType="arraybuffer",i.onload=function(){if(200!==i.status)throw new Error("Error "+i.status+": Failed to load image '"+t+"'");for(var r=new Uint8Array(i.response),n="",a=0;a<r.length;a++)n+=String.fromCharCode(r[a]);e(n)},i.onerror=r,i.onabort=r,i.send(null)}))},e.getMimeType=function(t){switch(t=t.toLowerCase()){case"jpg":case"jpeg":return"image/jpeg";default:return"image/"+t}},e}(ut),te=function(t){function e(e,r,i){var n=t.call(this,!0,r,i)||this;return n.closed=e,n}return i(e,t),e.prototype.getPath=function(t){if(!this.element.hasAttribute("points")||""===this.element.getAttribute("points"))return null;var r=e.parsePointsString(this.element.getAttribute("points")),i=new F;if(r.length<1)return i;i.moveTo(r[0][0],r[0][1]);for(var n=1;n<r.length;n++)i.lineTo(r[n][0],r[n][1]);return this.closed&&i.close(),i},e.prototype.isVisible=function(t,e){return I(this,t,e)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.parsePointsString=function(t){for(var e=j(t),r=[],i=0;i<e.length-1;i+=2){var n=e[i],a=e[i+1];r.push([n,a])}return r},e}(ht),ee=function(t){function e(e,r){return t.call(this,!0,e,r)||this}return i(e,t),e}(te),re=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.render=function(t){return Promise.resolve()},e.prototype.getBoundingBoxCore=function(t){return[0,0,0,0]},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.prototype.isVisible=function(t,e){return I(this,t,e)},e}($),ie=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.apply=function(t){return a(this,void 0,void 0,(function(){var e,r,i,n;return s(this,(function(a){switch(a.label){case 0:e=this.computeNodeTransform(t),r=this.getBoundingBox(t),t.pdf.beginFormObject(r[0],r[1],r[2],r[3],e),i=0,n=this.children,a.label=1;case 1:return i<n.length?[4,n[i].render(new p(t.pdf,{refsHandler:t.refsHandler,styleSheets:t.styleSheets,viewport:t.viewport,svg2pdfParameters:t.svg2pdfParameters}))]:[3,4];case 2:a.sent(),a.label=3;case 3:return i++,[3,1];case 4:return t.pdf.endFormObject(this.element.getAttribute("id")),[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){var e,r=this.element.getAttribute("viewBox");return r&&(e=j(r)),[e&&e[0]||0,e&&e[1]||0,e&&e[2]||parseFloat(this.element.getAttribute("marker-width")||"0"),e&&e[3]||parseFloat(this.element.getAttribute("marker-height")||"0")]},e.prototype.computeNodeTransformCore=function(t){var e,r=parseFloat(this.element.getAttribute("refX")||"0"),i=parseFloat(this.element.getAttribute("refY")||"0"),n=this.element.getAttribute("viewBox");if(n){var a=j(n);e=X(this.element,a,0,0,parseFloat(this.element.getAttribute("markerWidth")||"3"),parseFloat(this.element.getAttribute("markerHeight")||"3"),t,!0),e=t.pdf.matrixMult(t.pdf.Matrix(1,0,0,1,-r,-i),e)}else e=t.pdf.Matrix(1,0,0,1,-r,-i);return e},e.prototype.isVisible=function(t,e){return _(this,t,e)},e}(Z),ne=function(t){function e(e,r){return t.call(this,e,r)||this}return i(e,t),e.prototype.getR=function(t){var e;return null!==(e=this.r)&&void 0!==e?e:this.r=parseFloat(O(this.element,t.styleSheets,"r")||"0")},e.prototype.getRx=function(t){return this.getR(t)},e.prototype.getRy=function(t){return this.getR(t)},e}(yt),ae=function(t){function e(e,r){return t.call(this,!1,e,r)||this}return i(e,t),e}(te),se=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.renderCore=function(t){return a(this,void 0,void 0,(function(){var e,r;return s(this,(function(i){switch(i.label){case 0:e=0,r=this.children,i.label=1;case 1:return e<r.length?[4,r[e].render(t)]:[3,4];case 2:i.sent(),i.label=3;case 3:return e++,[3,1];case 4:return[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){return z(t,this)},e}(lt),oe=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.isVisible=function(t,e){return _(this,t,e)},e.prototype.render=function(e){return a(this,void 0,void 0,(function(){var r,i,n,a,o;return s(this,(function(s){switch(s.label){case 0:return this.isVisible("hidden"!==e.attributeState.visibility,e)?(r=this.getX(e),i=this.getY(e),n=this.getWidth(e),a=this.getHeight(e),e.pdf.saveGraphicsState(),o=e.transform,this.element.hasAttribute("transform")&&(o=e.pdf.matrixMult(Q(this.element.getAttribute("transform"),e),o)),e.pdf.setCurrentTransformationMatrix(o),e.withinUse||"visible"===O(this.element,e.styleSheets,"overflow")||e.pdf.rect(r,i,n,a).clip().discardPath(),[4,t.prototype.render.call(this,e.clone({transform:e.pdf.unitMatrix,viewport:e.withinUse?e.viewport:new dt(n,a)}))]):[2];case 1:return s.sent(),e.pdf.restoreGraphicsState(),[2]}}))}))},e.prototype.computeNodeTransform=function(t){return this.computeNodeTransformCore(t)},e.prototype.computeNodeTransformCore=function(t){if(t.withinUse)return t.pdf.unitMatrix;var e,r=this.getX(t),i=this.getY(t),n=this.getViewBox();if(n){var a=this.getWidth(t),s=this.getHeight(t);e=X(this.element,n,r,i,a,s,t)}else e=t.pdf.Matrix(1,0,0,1,r,i);return e},e.prototype.getWidth=function(t){if(void 0!==this.width)return this.width;var e,r,i=t.svg2pdfParameters;if(this.isOutermostSvg(t))if(null!=i.width)e=i.width;else if(r=O(this.element,t.styleSheets,"width"))e=parseFloat(r);else{var n=this.getViewBox();if(n&&(null!=i.height||O(this.element,t.styleSheets,"height"))){var a=n[2]/n[3];e=this.getHeight(t)*a}else e=Math.min(300,t.viewport.width,2*t.viewport.height)}else e=(r=O(this.element,t.styleSheets,"width"))?parseFloat(r):t.viewport.width;return this.width=e},e.prototype.getHeight=function(t){if(void 0!==this.height)return this.height;var e,r,i=t.svg2pdfParameters;if(this.isOutermostSvg(t))if(null!=i.height)e=i.height;else if(r=O(this.element,t.styleSheets,"height"))e=parseFloat(r);else{var n=this.getViewBox();if(n){var a=n[2]/n[3];e=this.getWidth(t)/a}else e=Math.min(150,t.viewport.width/2,t.viewport.height)}else e=(r=O(this.element,t.styleSheets,"height"))?parseFloat(r):t.viewport.height;return this.height=e},e.prototype.getX=function(t){if(void 0!==this.x)return this.x;if(this.isOutermostSvg(t))return this.x=0;var e=O(this.element,t.styleSheets,"x");return this.x=e?parseFloat(e):0},e.prototype.getY=function(t){if(void 0!==this.y)return this.y;if(this.isOutermostSvg(t))return this.y=0;var e=O(this.element,t.styleSheets,"y");return this.y=e?parseFloat(e):0},e.prototype.getViewBox=function(){if(void 0!==this.viewBox)return this.viewBox;var t=this.element.getAttribute("viewBox");return this.viewBox=t?j(t):void 0},e.prototype.isOutermostSvg=function(t){return t.svg2pdfParameters.element===this.element},e}(se),le=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.isVisible=function(t,e){return _(this,t,e)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e}(se),ue=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.apply=function(t){return a(this,void 0,void 0,(function(){var e,r,i;return s(this,(function(n){switch(n.label){case 0:if(!this.isVisible(!0,t))return[2];e=t.pdf.matrixMult(this.computeNodeTransform(t),t.transform),t.pdf.setCurrentTransformationMatrix(e),r=0,i=this.children,n.label=1;case 1:return r<i.length?[4,i[r].render(new p(t.pdf,{refsHandler:t.refsHandler,styleSheets:t.styleSheets,viewport:t.viewport,withinClipPath:!0,svg2pdfParameters:t.svg2pdfParameters}))]:[3,4];case 2:n.sent(),n.label=3;case 3:return r++,[3,1];case 4:return t.pdf.clip().discardPath(),t.pdf.setCurrentTransformationMatrix(e.inversed()),[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){return z(t,this)},e.prototype.isVisible=function(t,e){return _(this,t,e)},e}(Z);function he(t,e){var r,i=[];switch(function(t,e){for(var r=[],i=0;i<t.childNodes.length;i++){var n=t.childNodes[i];"#"!==n.nodeName.charAt(0)&&r.push(n)}for(i=0;i<r.length;i++)e(i,r[i])}(t,(function(t,r){return i.push(he(r,e))})),t.tagName.toLowerCase()){case"a":case"g":r=new le(t,i);break;case"circle":r=new ne(t,i);break;case"clippath":r=new ue(t,i);break;case"ellipse":r=new vt(t,i);break;case"lineargradient":r=new K(t,i);break;case"image":r=new Kt(t,i);break;case"line":r=new ct(t,i);break;case"marker":r=new ie(t,i);break;case"path":r=new Zt(t,i);break;case"pattern":r=new rt(t,i);break;case"polygon":r=new ee(t,i);break;case"polyline":r=new ae(t,i);break;case"radialgradient":r=new tt(t,i);break;case"rect":r=new gt(t,i);break;case"svg":r=new oe(t,i);break;case"symbol":r=new pt(t,i);break;case"text":r=new Ct(t,i);break;case"use":r=new mt(t,i);break;default:r=new re(t,i)}if(null!=e&&r.element.hasAttribute("id")){var n=b(r.element.id,{isIdentifier:!0});e[n]=e[n]||r}return r}var fe=function(t){var e,r,i=t,n={a:0,b:0,c:0},a=[];return e=function(e,r){var s,o,l,u,h,f;if(e.test(i))for(o=0,l=(s=i.match(e)).length;o<l;o+=1)n[r]+=1,u=s[o],h=i.indexOf(u),f=u.length,a.push({selector:t.substr(h,f),type:r,index:h,length:f}),i=i.replace(u,Array(f+1).join(" "))},(r=function(t){var e,r,n,a;if(t.test(i))for(r=0,n=(e=i.match(t)).length;r<n;r+=1)a=e[r],i=i.replace(a,Array(a.length+1).join("A"))})(/\\[0-9A-Fa-f]{6}\s?/g),r(/\\[0-9A-Fa-f]{1,5}\s/g),r(/\\./g),function(){var t,e,r,n,a=/{[^]*/gm;if(a.test(i))for(e=0,r=(t=i.match(a)).length;e<r;e+=1)n=t[e],i=i.replace(n,Array(n.length+1).join(" "))}(),e(/(\[[^\]]+\])/g,"b"),e(/(#[^\#\s\+>~\.\[:\)]+)/g,"a"),e(/(\.[^\s\+>~\.\[:\)]+)/g,"b"),e(/(::[^\s\+>~\.\[:]+|:first-line|:first-letter|:before|:after)/gi,"c"),e(/(:(?!not|global|local)[\w-]+\([^\)]*\))/gi,"b"),e(/(:(?!not|global|local)[^\s\+>~\.\[:]+)/g,"b"),i=(i=(i=(i=(i=(i=i.replace(/[\*\s\+>~]/g," ")).replace(/[#\.]/g," ")).replace(/:not/g," ")).replace(/:local/g," ")).replace(/:global/g," ")).replace(/[\(\)]/g," "),e(/([^\s\+>~\.\[:]+)/g,"c"),a.sort((function(t,e){return t.index-e.index})),{selector:t,specificity:"0,"+n.a.toString()+","+n.b.toString()+","+n.c.toString(),specificityArray:[0,n.a,n.b,n.c],parts:a}},ce=function(){function t(t,e){this.rootSvg=t,this.loadExternalSheets=e,this.styleSheets=[]}return t.prototype.load=function(){return a(this,void 0,void 0,(function(){var t;return s(this,(function(e){switch(e.label){case 0:return[4,this.collectStyleSheetTexts()];case 1:return t=e.sent(),this.parseCssSheets(t),[2]}}))}))},t.prototype.collectStyleSheetTexts=function(){return a(this,void 0,void 0,(function(){var e,r,i,n,a;return s(this,(function(s){switch(s.label){case 0:if(e=[],this.loadExternalSheets&&this.rootSvg.ownerDocument)for(n=0;n<this.rootSvg.ownerDocument.childNodes.length;n++)"xml-stylesheet"===(r=this.rootSvg.ownerDocument.childNodes[n]).nodeName&&"string"==typeof r.data&&e.push(t.loadSheet(r.data.match(/href=["'].*?["']/)[0].split("=")[1].slice(1,-1)));for(i=this.rootSvg.querySelectorAll("style,link"),n=0;n<i.length;n++)E(a=i[n],"style")?e.push(a.textContent):this.loadExternalSheets&&E(a,"link")&&"stylesheet"===a.getAttribute("rel")&&a.hasAttribute("href")&&e.push(t.loadSheet(a.getAttribute("href")));return[4,Promise.all(e)];case 1:return[2,s.sent().filter((function(t){return null!==t}))]}}))}))},t.prototype.parseCssSheets=function(e){for(var r=document.implementation.createHTMLDocument(""),i=0,n=e;i<n.length;i++){var a=n[i],s=r.createElement("style");s.textContent=a,r.body.appendChild(s);var o=s.sheet;if(o instanceof CSSStyleSheet){for(var l=o.cssRules.length-1;l>=0;l--){var u=o.cssRules[l];u instanceof CSSStyleRule||o.deleteRule(l);var h=u;if(h.selectorText.indexOf(",")>=0){o.deleteRule(l);for(var f=h.cssText.substring(h.selectorText.length),c=t.splitSelectorAtCommas(h.selectorText),p=0;p<c.length;p++)o.insertRule(c[p]+f,l+p)}}this.styleSheets.push(o)}}},t.splitSelectorAtCommas=function(t){for(var e,r=/,|["']/g,i=/[^\\]["]/g,n=/[^\\][']/g,a=[],s="initial",o=-1,l=i,u=0;u<t.length;)switch(s){case"initial":r.lastIndex=u,(e=r.exec(t))?(","===e[0]?(a.push(t.substring(o+1,r.lastIndex-1).trim()),o=r.lastIndex-1):(s="withinQuotes",l='"'===e[0]?i:n),u=r.lastIndex):(a.push(t.substring(o+1).trim()),u=t.length);break;case"withinQuotes":l.lastIndex=u,(e=l.exec(t))&&(u=l.lastIndex,s="initial")}return a},t.loadSheet=function(t){return new Promise((function(e,r){var i=new XMLHttpRequest;i.open("GET",t,!0),i.responseType="text",i.onload=function(){200!==i.status&&r(new Error("Error "+i.status+": Failed to load '"+t+"'")),e(i.responseText)},i.onerror=r,i.onabort=r,i.send(null)})).catch((function(){return null}))},t.prototype.getPropertyValue=function(t,e){for(var r=[],i=0,n=this.styleSheets;i<n.length;i++)for(var a=n[i],s=0;s<a.cssRules.length;s++){var o=a.cssRules[s];o.style.getPropertyValue(e)&&t.matches(o.selectorText)&&r.push(o)}if(0!==r.length){var l=function(t,r){var i=t.style.getPropertyPriority(e);return i!==r.style.getPropertyPriority(e)?"important"===i?1:-1:function(t,e){var r,i,n;if("string"==typeof t){if(-1!==t.indexOf(","))throw"Invalid CSS selector";r=fe(t).specificityArray}else{if(!Array.isArray(t))throw"Invalid CSS selector or specificity array";if(4!==t.filter((function(t){return"number"==typeof t})).length)throw"Invalid specificity array";r=t}if("string"==typeof e){if(-1!==e.indexOf(","))throw"Invalid CSS selector";i=fe(e).specificityArray}else{if(!Array.isArray(e))throw"Invalid CSS selector or specificity array";if(4!==e.filter((function(t){return"number"==typeof t})).length)throw"Invalid specificity array";i=e}for(n=0;n<4;n+=1){if(r[n]<i[n])return-1;if(r[n]>i[n])return 1}return 0}(t.selectorText,r.selectorText)};return r.reduce((function(t,e){return 1===l(t,e)?t:e})).style.getPropertyValue(e)||void 0}},t}();function pe(t,e,r){var i,o,l;return void 0===r&&(r={}),a(this,void 0,void 0,(function(){var a,u,h,f,c,d,m,g,y,v;return s(this,(function(s){switch(s.label){case 0:return a=null!==(i=r.x)&&void 0!==i?i:0,u=null!==(o=r.y)&&void 0!==o?o:0,h=null!==(l=r.loadExternalStyleSheets)&&void 0!==l&&l,c=new x(f={}),[4,(d=new ce(t,h)).load()];case 1:return s.sent(),m=new dt(e.internal.pageSize.getWidth(),e.internal.pageSize.getHeight()),g=n(n({},r),{element:t}),y=new p(e,{refsHandler:c,styleSheets:d,viewport:m,svg2pdfParameters:g}),e.advancedAPI(),e.saveGraphicsState(),e.setCurrentTransformationMatrix(e.Matrix(1,0,0,1,a,u)),e.setLineWidth(y.attributeState.strokeWidth),v=y.attributeState.fill.color,e.setFillColor(v.r,v.g,v.b),e.setFont(y.attributeState.fontFamily),e.setFontSize(y.attributeState.fontSize*e.internal.scaleFactor),[4,he(t,f).render(y)];case 2:return s.sent(),e.restoreGraphicsState(),e.compatAPI(),y.textMeasure.cleanupTextMeasuring(),[2,e]}}))}))}e.jsPDF.API.svg=function(t,e){return void 0===e&&(e={}),pe(t,this,e)},t.svg2pdf=pe,Object.defineProperty(t,"__esModule",{value:!0})})); + ***************************************************************************** */var r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)};function i(t,e){function i(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}var n=function(){return(n=Object.assign||function(t){for(var e,r=1,i=arguments.length;r<i;r++)for(var n in e=arguments[r])Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t}).apply(this,arguments)};function a(t,e,r,i){return new(r||(r=Promise))((function(n,a){function s(t){try{l(i.next(t))}catch(t){a(t)}}function o(t){try{l(i.throw(t))}catch(t){a(t)}}function l(t){var e;t.done?n(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(s,o)}l((i=i.apply(t,e||[])).next())}))}function s(t,e){var r,i,n,a,s={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return a={next:o(0),throw:o(1),return:o(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function o(a){return function(o){return function(a){if(r)throw new TypeError("Generator is already executing.");for(;s;)try{if(r=1,i&&(n=2&a[0]?i.return:a[0]?i.throw||((n=i.return)&&n.call(i),0):i.next)&&!(n=n.call(i,a[1])).done)return n;switch(i=0,n&&(a=[2&a[0],n.value]),a[0]){case 0:case 1:n=a;break;case 4:return s.label++,{value:a[1],done:!1};case 5:s.label++,i=a[1],a=[0];continue;case 7:a=s.ops.pop(),s.trys.pop();continue;default:if(!(n=s.trys,(n=n.length>0&&n[n.length-1])||6!==a[0]&&2!==a[0])){s=0;continue}if(3===a[0]&&(!n||a[1]>n[0]&&a[1]<n[3])){s.label=a[1];break}if(6===a[0]&&s.label<n[1]){s.label=n[1],n=a;break}if(n&&s.label<n[2]){s.label=n[2],s.ops.push(a);break}n[2]&&s.ops.pop(),s.trys.pop();continue}a=e.call(t,s)}catch(t){a=[6,t],i=0}finally{r=n=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,o])}}}var o=function(){function t(t){if(this.a=void 0,this.r=0,this.g=0,this.b=0,this.simpleColors={},this.colorDefs=[],this.ok=!1,t){for(var e in"#"==t.charAt(0)&&(t=t.substr(1,6)),t=(t=t.replace(/ /g,"")).toLowerCase(),this.simpleColors={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"00ffff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000000",blanchedalmond:"ffebcd",blue:"0000ff",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"00ffff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgrey:"a9a9a9",darkgreen:"006400",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",feldspar:"d19275",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"ff00ff",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",grey:"808080",green:"008000",greenyellow:"adff2f",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgrey:"d3d3d3",lightgreen:"90ee90",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslateblue:"8470ff",lightslategray:"778899",lightslategrey:"778899",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"00ff00",limegreen:"32cd32",linen:"faf0e6",magenta:"ff00ff",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370d8",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"d87093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",red:"ff0000",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",violetred:"d02090",wheat:"f5deb3",white:"ffffff",whitesmoke:"f5f5f5",yellow:"ffff00",yellowgreen:"9acd32"},this.simpleColors)t==e&&(t=this.simpleColors[e]);this.colorDefs=[{re:/^rgb\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3})\)$/,example:["rgb(123, 234, 45)","rgb(255,234,245)"],process:function(t){return[parseInt(t[1]),parseInt(t[2]),parseInt(t[3])]}},{re:/^(\w{2})(\w{2})(\w{2})$/,example:["#00ff00","336699"],process:function(t){return[parseInt(t[1],16),parseInt(t[2],16),parseInt(t[3],16)]}},{re:/^(\w{1})(\w{1})(\w{1})$/,example:["#fb0","f0f"],process:function(t){return[parseInt(t[1]+t[1],16),parseInt(t[2]+t[2],16),parseInt(t[3]+t[3],16)]}}];for(var r=0;r<this.colorDefs.length;r++){var i=this.colorDefs[r].re,n=this.colorDefs[r].process,a=i.exec(t);if(a){var s=n(a);this.r=s[0],this.g=s[1],this.b=s[2],this.ok=!0}}this.r=this.r<0||isNaN(this.r)?0:this.r>255?255:this.r,this.g=this.g<0||isNaN(this.g)?0:this.g>255?255:this.g,this.b=this.b<0||isNaN(this.b)?0:this.b>255?255:this.b}}return t.prototype.toRGB=function(){return"rgb("+this.r+", "+this.g+", "+this.b+")"},t.prototype.toRGBA=function(){return"rgba("+this.r+", "+this.g+", "+this.b+", "+(this.a||"1")+")"},t.prototype.toHex=function(){var t=this.r.toString(16),e=this.g.toString(16),r=this.b.toString(16);return 1==t.length&&(t="0"+t),1==e.length&&(e="0"+e),1==r.length&&(r="0"+r),"#"+t+e+r},t.prototype.getHelpXML=function(){for(var e=[],r=0;r<this.colorDefs.length;r++)for(var i=this.colorDefs[r].example,n=0;n<i.length;n++)e[e.length]=i[n];for(var a in this.simpleColors)e[e.length]=a;var s=document.createElement("ul");s.setAttribute("id","rgbcolor-examples");for(r=0;r<e.length;r++)try{var o=document.createElement("li"),l=new t(e[r]),u=document.createElement("div");u.style.cssText="margin: 3px; border: 1px solid black; background:"+l.toHex()+"; color:"+l.toHex(),u.appendChild(document.createTextNode("test"));var h=document.createTextNode(" "+e[r]+" -> "+l.toRGB()+" -> "+l.toHex());o.appendChild(u),o.appendChild(h),s.appendChild(o)}catch(t){}return s},t}(),l=function(){function t(t){this.color=t}return t.prototype.getFillData=function(t,e){return a(this,void 0,void 0,(function(){return s(this,(function(t){return[2,void 0]}))}))},t}(),u=function(){function t(){this.xmlSpace="",this.fill=null,this.fillOpacity=1,this.fontFamily="",this.fontSize=16,this.fontStyle="",this.fontWeight="",this.opacity=1,this.stroke=null,this.strokeDasharray=null,this.strokeDashoffset=0,this.strokeLinecap="",this.strokeLinejoin="",this.strokeMiterlimit=4,this.strokeOpacity=1,this.strokeWidth=1,this.alignmentBaseline="",this.textAnchor="",this.visibility="",this.color=null}return t.prototype.clone=function(){var e=new t;return e.xmlSpace=this.xmlSpace,e.fill=this.fill,e.fillOpacity=this.fillOpacity,e.fontFamily=this.fontFamily,e.fontSize=this.fontSize,e.fontStyle=this.fontStyle,e.fontWeight=this.fontWeight,e.opacity=this.opacity,e.stroke=this.stroke,e.strokeDasharray=this.strokeDasharray,e.strokeDashoffset=this.strokeDashoffset,e.strokeLinecap=this.strokeLinecap,e.strokeLinejoin=this.strokeLinejoin,e.strokeMiterlimit=this.strokeMiterlimit,e.strokeOpacity=this.strokeOpacity,e.strokeWidth=this.strokeWidth,e.textAnchor=this.textAnchor,e.alignmentBaseline=this.alignmentBaseline,e.visibility=this.visibility,e.color=this.color,e},t.default=function(){var e=new t;return e.xmlSpace="default",e.fill=new l(new o("rgb(0, 0, 0)")),e.fillOpacity=1,e.fontFamily="times",e.fontSize=16,e.fontStyle="normal",e.fontWeight="normal",e.opacity=1,e.stroke=null,e.strokeDasharray=null,e.strokeDashoffset=0,e.strokeLinecap="butt",e.strokeLinejoin="miter",e.strokeMiterlimit=4,e.strokeOpacity=1,e.strokeWidth=1,e.alignmentBaseline="baseline",e.textAnchor="start",e.visibility="visible",e.color=new o("rgb(0, 0, 0)"),e},t}(),h=/url\(["']?#([^"']+)["']?\)/,f={bottom:"bottom","text-bottom":"bottom",top:"top","text-top":"top",hanging:"hanging",middle:"middle",central:"middle",center:"middle",mathematical:"middle",ideographic:"ideographic",alphabetic:"alphabetic",baseline:"alphabetic"},c=function(){function t(){this.measureMethods={}}return t.prototype.getTextOffset=function(t,e){var r=e.textAnchor;if("start"===r)return 0;var i=this.measureTextWidth(t,e),n=0;switch(r){case"end":n=i;break;case"middle":n=i/2}return n},t.prototype.measureTextWidth=function(t,e){if(0===t.length)return 0;var r=e.fontFamily;return this.getMeasureFunction(r).call(this,t,e.fontFamily,e.fontSize+"px",e.fontStyle,e.fontWeight)},t.prototype.getMeasurementTextNode=function(){if(!this.textMeasuringTextElement){this.textMeasuringTextElement=document.createElementNS("http://www.w3.org/2000/svg","text");var t=document.createElementNS("http://www.w3.org/2000/svg","svg");t.appendChild(this.textMeasuringTextElement),t.style.setProperty("position","absolute"),t.style.setProperty("visibility","hidden"),document.body.appendChild(t)}return this.textMeasuringTextElement},t.prototype.canvasTextMeasure=function(t,e,r,i,n){var a=document.createElement("canvas").getContext("2d");return null!=a?(a.font=[i,n,r,e].join(" "),a.measureText(t).width):0},t.prototype.svgTextMeasure=function(t,e,r,i,n,a){void 0===a&&(a=this.getMeasurementTextNode());var s=a;return s.setAttribute("font-family",e),s.setAttribute("font-size",r),s.setAttribute("font-style",i),s.setAttribute("font-weight",n),s.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),s.textContent=t,s.getBBox().width},t.prototype.getMeasureFunction=function(e){var r=this.measureMethods[e];if(!r){var i=this.canvasTextMeasure(t.testString,e,"16px","normal","normal"),n=this.svgTextMeasure(t.testString,e,"16px","normal","normal");r=Math.abs(i-n)<t.epsilon?this.canvasTextMeasure:this.svgTextMeasure,this.measureMethods[e]=r}return r},t.prototype.cleanupTextMeasuring=function(){if(this.textMeasuringTextElement){var t=this.textMeasuringTextElement.parentNode;t&&document.body.removeChild(t),this.textMeasuringTextElement=void 0}},t.testString="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789!\"$%&/()=?'\\+*-_.:,;^}][{#~|<>",t.epsilon=.1,t}(),p=function(){function t(t,e){var r,i,n,a,s,o;this.pdf=t,this.svg2pdfParameters=e.svg2pdfParameters,this.attributeState=e.attributeState?e.attributeState.clone():u.default(),this.viewport=e.viewport,this.refsHandler=null!==(r=e.refsHandler)&&void 0!==r?r:null,this.styleSheets=null!==(i=e.styleSheets)&&void 0!==i?i:null,this.textMeasure=null!==(n=e.textMeasure)&&void 0!==n?n:new c,this.transform=null!==(a=e.transform)&&void 0!==a?a:this.pdf.unitMatrix,this.withinClipPath=null!==(s=e.withinClipPath)&&void 0!==s&&s,this.withinUse=null!==(o=e.withinUse)&&void 0!==o&&o}return t.prototype.clone=function(e){var r,i,n,a,s,o,l,u;return void 0===e&&(e={}),new t(this.pdf,{svg2pdfParameters:null!==(r=e.svg2pdfParameters)&&void 0!==r?r:this.svg2pdfParameters,attributeState:e.attributeState?e.attributeState.clone():this.attributeState.clone(),viewport:null!==(i=e.viewport)&&void 0!==i?i:this.viewport,refsHandler:null!==(n=e.refsHandler)&&void 0!==n?n:this.refsHandler,styleSheets:null!==(a=e.styleSheets)&&void 0!==a?a:this.styleSheets,textMeasure:null!==(s=e.textMeasure)&&void 0!==s?s:this.textMeasure,transform:null!==(o=e.transform)&&void 0!==o?o:this.transform,withinClipPath:null!==(l=e.withinClipPath)&&void 0!==l?l:this.withinClipPath,withinUse:null!==(u=e.withinUse)&&void 0!==u?u:this.withinUse})},t}(),d={}.hasOwnProperty,g=/[ -,\.\/:-@\[-\^`\{-~]/,m=/[ -,\.\/:-@\[\]\^`\{-~]/,y=/(^|\\+)?(\\[A-F0-9]{1,6})\x20(?![a-fA-F0-9\x20])/g,v=function t(e,r){"single"!=(r=function(t,e){if(!t)return e;var r={};for(var i in e)r[i]=d.call(t,i)?t[i]:e[i];return r}(r,t.options)).quotes&&"double"!=r.quotes&&(r.quotes="single");for(var i="double"==r.quotes?'"':"'",n=r.isIdentifier,a=e.charAt(0),s="",o=0,l=e.length;o<l;){var u=e.charAt(o++),h=u.charCodeAt(),f=void 0;if(h<32||h>126){if(h>=55296&&h<=56319&&o<l){var c=e.charCodeAt(o++);56320==(64512&c)?h=((1023&h)<<10)+(1023&c)+65536:o--}f="\\"+h.toString(16).toUpperCase()+" "}else f=r.escapeEverything?g.test(u)?"\\"+u:"\\"+h.toString(16).toUpperCase()+" ":/[\t\n\f\r\x0B]/.test(u)?"\\"+h.toString(16).toUpperCase()+" ":"\\"==u||!n&&('"'==u&&i==u||"'"==u&&i==u)||n&&m.test(u)?"\\"+u:u;s+=f}return n&&(/^-[-\d]/.test(s)?s="\\-"+s.slice(1):/\d/.test(a)&&(s="\\3"+a+" "+s.slice(1))),s=s.replace(y,(function(t,e,r){return e&&e.length%2?t:(e||"")+r})),!n&&r.wrap?i+s+i:s};v.options={escapeEverything:!1,isIdentifier:!1,quotes:"single",wrap:!1},v.version="3.0.0";var b=v,x=function(){function t(t){this.renderedElements={},this.idMap=t}return t.prototype.getRendered=function(e,r,i){return a(this,void 0,void 0,(function(){var n,a;return s(this,(function(s){switch(s.label){case 0:return n=t.generateKey(e,r),this.renderedElements.hasOwnProperty(n)?[2,this.renderedElements[e]]:(a=this.get(e),this.renderedElements[n]=a,[4,i(a)]);case 1:return s.sent(),[2,a]}}))}))},t.prototype.get=function(t){return this.idMap[b(t,{isIdentifier:!0})]},t.generateKey=function(t,e){return t+"|"+(e||new o("rgb(0,0,0)")).toRGBA()},t}();function S(t,e){return Math.atan2(e[1]-t[1],e[0]-t[0])}function w(t,e){return[2/3*(e[0]-t[0])+t[0],2/3*(e[1]-t[1])+t[1]]}function k(t){var e=Math.sqrt(t[0]*t[0]+t[1]*t[1]);return[t[0]/e,t[1]/e]}function M(t,e){return k([e[0]-t[0],e[1]-t[1]])}function A(t,e){return[t[0]+e[0],t[1]+e[1]]}function C(t,e){var r=t[0],i=t[1];return[e.a*r+e.c*i+e.e,e.b*r+e.d*i+e.f]}var T=function(){function t(){this.segments=[]}return t.prototype.moveTo=function(t,e){return this.segments.push(new F(t,e)),this},t.prototype.lineTo=function(t,e){return this.segments.push(new P(t,e)),this},t.prototype.curveTo=function(t,e,r,i,n,a){return this.segments.push(new B(t,e,r,i,n,a)),this},t.prototype.close=function(){return this.segments.push(new N),this},t.prototype.transform=function(t){this.segments.forEach((function(e){if(e instanceof F||e instanceof P||e instanceof B){var r=C([e.x,e.y],t);e.x=r[0],e.y=r[1]}if(e instanceof B){var i=C([e.x1,e.y1],t),n=C([e.x2,e.y2],t);e.x1=i[0],e.y1=i[1],e.x2=n[0],e.y2=n[1]}}))},t.prototype.draw=function(t){var e=t.pdf;this.segments.forEach((function(t){t instanceof F?e.moveTo(t.x,t.y):t instanceof P?e.lineTo(t.x,t.y):t instanceof B?e.curveTo(t.x1,t.y1,t.x2,t.y2,t.x,t.y):e.close()}))},t}(),F=function(t,e){this.x=t,this.y=e},P=function(t,e){this.x=t,this.y=e},B=function(t,e,r,i,n,a){this.x1=t,this.y1=e,this.x2=r,this.y2=i,this.x=n,this.y=a},N=function(){};function E(t,e){return e.split(",").indexOf((t.nodeName||t.tagName).toLowerCase())>=0}function O(t,e,r,i){void 0===i&&(i=r);var n=t.style.getPropertyValue(i);if(n)return n;var a=e.getPropertyValue(t,i);return a||(t.hasAttribute(r)&&t.getAttribute(r)||void 0)}function I(t,e,r){if("none"===O(t.element,r.styleSheets,"display"))return!1;var i=e,n=O(t.element,r.styleSheets,"visibility");return n&&(i="hidden"!==n),i}function _(t,e,r){var i=I(t,e,r);return 0!==t.element.childNodes.length&&(t.children.forEach((function(t){t.isVisible(i,r)&&(i=!0)})),i)}var L=function(){function t(){this.markers=[]}return t.prototype.addMarker=function(t){this.markers.push(t)},t.prototype.draw=function(t){return a(this,void 0,void 0,(function(){var e,r,i,n,a,o,l;return s(this,(function(s){switch(s.label){case 0:e=0,s.label=1;case 1:return e<this.markers.length?(r=this.markers[e],i=void 0,n=r.angle,a=r.anchor,o=Math.cos(n),l=Math.sin(n),i=t.pdf.Matrix(o,l,-l,o,a[0],a[1]),i=t.pdf.matrixMult(t.pdf.Matrix(t.attributeState.strokeWidth,0,0,t.attributeState.strokeWidth,0,0),i),i=t.pdf.matrixMult(i,t.transform),t.pdf.saveGraphicsState(),t.pdf.setLineWidth(1),[4,t.refsHandler.getRendered(r.id,null,(function(e){return e.apply(t)}))]):[3,4];case 2:s.sent(),t.pdf.doFormObject(r.id,i),t.pdf.restoreGraphicsState(),s.label=3;case 3:return e++,[3,1];case 4:return[2]}}))}))},t}(),q=function(t,e,r){this.id=t,this.anchor=e,this.angle=r};function H(t,e){var r;return(r=t&&t.toString().match(/^([\-0-9.]+)em$/))?parseFloat(r[1])*e:(r=t&&t.toString().match(/^([\-0-9.]+)(px|)$/))?parseFloat(r[1]):0}function V(t){return f[t]||"alphabetic"}function j(t){for(var e,r=[],i=/[+-]?(?:(?:\d+\.?\d*)|(?:\d*\.?\d+))(?:[eE][+-]?\d+)?/g;e=i.exec(t);)r.push(parseFloat(e[0]));return r}function D(t,e){if("transparent"===t){var r=new o("rgb(0,0,0)");return r.a=0,r}if("currentcolor"===t.toLowerCase())return e||new o("rgb(0,0,0)");var i=/\s*rgba\(((?:[^,\)]*,){3}[^,\)]*)\)\s*/.exec(t);if(i){var n=j(i[1]),a=new o("rgb("+n.slice(0,3).join(",")+")");return a.a=n[3],a}return new o(t)}var R=/[a-z0-9_-]/i,W=/[\s\t]/,G=function(t){for(var e,r,i=!0,n=0,a="",s=0,o=[];;){if(r=t[s],0===n){if(!r&&i)break;if(!r&&!i)throw new Error("Parse error");if('"'===r||"'"===r)e=r,n=1,i=!1;else if(W.test(r));else{if(!R.test(r))throw new Error("Parse error");n=3,i=!1,s--}}else if(1===n){if(!r)throw new Error("Parse Error");"\\"===r?n=2:r===e?(o.push(a),a="",n=4):a+=r}else if(2===n){if(r!==e&&"\\"!==r)throw new Error("Parse error");a+=r,n=1}else if(3===n){if(!r){o.push(a);break}if(R.test(r))a+=r;else if(","===r)o.push(a),a="",n=0;else{if(!W.test(r))throw new Error("Parse error");n=5}}else if(5===n){if(!r){o.push(a);break}if(R.test(r))a+=" "+r,n=3;else if(","===r)o.push(a),a="",n=0;else if(!W.test(r))throw new Error("Parse error")}else if(4===n){if(!r)break;if(","===r)n=0;else if(!W.test(r))throw new Error("Parse error")}s++}return o},U={"sans-serif":"helvetica",verdana:"helvetica",arial:"helvetica",fixed:"courier",monospace:"courier",terminal:"courier",serif:"times",cursive:"times",fantasy:"times"};function z(t,e){if("none"===O(e.element,t.styleSheets,"display"))return[0,0,0,0];var r=[0,0,0,0];return e.children.forEach((function(e){var i=e.getBoundingBox(t);r=[Math.min(r[0],i[0]),Math.min(r[1],i[1]),Math.max(r[0]+r[2],i[0]+i[2])-Math.min(r[0],i[0]),Math.max(r[1]+r[3],i[1]+i[3])-Math.min(r[1],i[1])]})),r}function Y(t,e){var r=parseFloat,i=r(t.getAttribute("x1"))||r(O(t,e.styleSheets,"x"))||r(O(t,e.styleSheets,"cx"))-r(O(t,e.styleSheets,"r"))||0,n=r(t.getAttribute("x2"))||i+r(O(t,e.styleSheets,"width"))||r(O(t,e.styleSheets,"cx"))+r(O(t,e.styleSheets,"r"))||0,a=r(t.getAttribute("y1"))||r(O(t,e.styleSheets,"y"))||r(O(t,e.styleSheets,"cy"))-r(O(t,e.styleSheets,"r"))||0,s=r(t.getAttribute("y2"))||a+r(O(t,e.styleSheets,"height"))||r(O(t,e.styleSheets,"cy"))+r(O(t,e.styleSheets,"r"))||0;return[Math.min(i,n),Math.min(a,s),Math.max(i,n)-Math.min(i,n),Math.max(a,s)-Math.min(a,s)]}function X(t,e,r,i,n,a,s,o){void 0===o&&(o=!1);var l,u,h=e[0],f=e[1],c=e[2],p=e[3],d=n/c,g=a/p,m=t.getAttribute("preserveAspectRatio");if(m){var y=m.split(" ");"defer"===y[0]&&(y=y.slice(1)),l=y[0],u=y[1]||"meet"}else l="xMidYMid",u="meet";if("none"!==l&&("meet"===u?d=g=Math.min(d,g):"slice"===u&&(d=g=Math.max(d,g))),o)return s.pdf.Matrix(d,0,0,g,0,0);var v=r-h*d,b=i-f*g;l.indexOf("xMid")>=0?v+=(n-c*d)/2:l.indexOf("xMax")>=0&&(v+=n-c*d),l.indexOf("YMid")>=0?b+=(a-p*g)/2:l.indexOf("YMax")>=0&&(b+=a-p*g);var x=s.pdf.Matrix(1,0,0,1,v,b),S=s.pdf.Matrix(d,0,0,g,0,0);return s.pdf.matrixMult(S,x)}function Q(t,e){if(!t||"none"===t)return e.pdf.unitMatrix;for(var r,i,n=/^[\s,]*matrix\(([^)]+)\)\s*/,a=/^[\s,]*translate\(([^)]+)\)\s*/,s=/^[\s,]*rotate\(([^)]+)\)\s*/,o=/^[\s,]*scale\(([^)]+)\)\s*/,l=/^[\s,]*skewX\(([^)]+)\)\s*/,u=/^[\s,]*skewY\(([^)]+)\)\s*/,h=e.pdf.unitMatrix;t.length>0&&t.length!==i;){i=t.length;var f=n.exec(t);if(f&&(r=j(f[1]),h=e.pdf.matrixMult(e.pdf.Matrix(r[0],r[1],r[2],r[3],r[4],r[5]),h),t=t.substr(f[0].length)),f=s.exec(t)){r=j(f[1]);var c=Math.PI*r[0]/180;if(h=e.pdf.matrixMult(e.pdf.Matrix(Math.cos(c),Math.sin(c),-Math.sin(c),Math.cos(c),0,0),h),r[1]||r[2]){var p=e.pdf.Matrix(1,0,0,1,r[1],r[2]),d=e.pdf.Matrix(1,0,0,1,-r[1],-r[2]);h=e.pdf.matrixMult(d,e.pdf.matrixMult(h,p))}t=t.substr(f[0].length)}(f=a.exec(t))&&(r=j(f[1]),h=e.pdf.matrixMult(e.pdf.Matrix(1,0,0,1,r[0],r[1]||0),h),t=t.substr(f[0].length)),(f=o.exec(t))&&((r=j(f[1]))[1]||(r[1]=r[0]),h=e.pdf.matrixMult(e.pdf.Matrix(r[0],0,0,r[1],0,0),h),t=t.substr(f[0].length)),(f=l.exec(t))&&(r=parseFloat(f[1]),r*=Math.PI/180,h=e.pdf.matrixMult(e.pdf.Matrix(1,0,Math.tan(r),1,0,0),h),t=t.substr(f[0].length)),(f=u.exec(t))&&(r=parseFloat(f[1]),r*=Math.PI/180,h=e.pdf.matrixMult(e.pdf.Matrix(1,Math.tan(r),0,1,0,0),h),t=t.substr(f[0].length))}return h}var $=function(){function t(t,e){this.element=t,this.children=e,this.parent=null}return t.prototype.setParent=function(t){this.parent=t},t.prototype.getParent=function(){return this.parent},t.prototype.getBoundingBox=function(t){return"none"===O(this.element,t.styleSheets,"display")?[0,0,0,0]:this.getBoundingBoxCore(t)},t.prototype.computeNodeTransform=function(t){var e=this.computeNodeTransformCore(t),r=O(this.element,t.styleSheets,"transform");return r?t.pdf.matrixMult(e,Q(r,t)):e},t}(),K=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.render=function(t){return Promise.resolve()},e.prototype.getBoundingBoxCore=function(t){return[]},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e}($),Z=function(t){function r(e,r,i){var n=t.call(this,r,i)||this;return n.pdfGradientType=e,n.contextColor=void 0,n}return i(r,t),r.prototype.apply=function(t){return a(this,void 0,void 0,(function(){var i,n,a,o,l,u,h,f,c=this;return s(this,(function(s){if(!(i=this.element.getAttribute("id")))return[2];if(void 0===this.contextColor)for(this.contextColor=null,n=this;n;){if(a=O(n.element,t.styleSheets,"color")){this.contextColor=D(a,null);break}n=n.getParent()}return o=[],l=0,u=!1,this.children.forEach((function(e){if("stop"===e.element.tagName.toLowerCase()){var i=O(e.element,t.styleSheets,"color"),n=D(O(e.element,t.styleSheets,"stop-color")||"",i?D(i,null):c.contextColor);o.push({offset:r.parseGradientOffset(e.element.getAttribute("offset")||"0"),color:[n.r,n.g,n.b]});var a=O(e.element,t.styleSheets,"stop-opacity");a&&"1"!==a&&(l+=parseFloat(a),u=!0)}})),u&&(h=new e.GState({opacity:l/o.length})),f=new e.ShadingPattern(this.pdfGradientType,this.getCoordinates(),o,h),t.pdf.addShadingPattern(i,f),[2]}))}))},r.prototype.getBoundingBoxCore=function(t){return Y(this.element,t)},r.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},r.prototype.isVisible=function(t,e){return _(this,t,e)},r.parseGradientOffset=function(t){var e=parseFloat(t);return!isNaN(e)&&t.indexOf("%")>=0?e/100:e},r}(K),J=function(t){function e(e,r){return t.call(this,"axial",e,r)||this}return i(e,t),e.prototype.getCoordinates=function(){return[parseFloat(this.element.getAttribute("x1")||"0"),parseFloat(this.element.getAttribute("y1")||"0"),parseFloat(this.element.getAttribute("x2")||"1"),parseFloat(this.element.getAttribute("y2")||"0")]},e}(Z),tt=function(t){function e(e,r){return t.call(this,"radial",e,r)||this}return i(e,t),e.prototype.getCoordinates=function(){var t=this.element.getAttribute("cx"),e=this.element.getAttribute("cy"),r=this.element.getAttribute("fx"),i=this.element.getAttribute("fy");return[parseFloat(r||t||"0.5"),parseFloat(i||e||"0.5"),0,parseFloat(t||"0.5"),parseFloat(e||"0.5"),parseFloat(this.element.getAttribute("r")||"0.5")]},e}(Z),et=function(){function t(t,e){this.key=t,this.gradient=e}return t.prototype.getFillData=function(t,e){return a(this,void 0,void 0,(function(){var r,i,n;return s(this,(function(a){switch(a.label){case 0:return[4,e.refsHandler.getRendered(this.key,null,(function(t){return t.apply(new p(e.pdf,{refsHandler:e.refsHandler,textMeasure:e.textMeasure,styleSheets:e.styleSheets,viewport:e.viewport,svg2pdfParameters:e.svg2pdfParameters}))}))];case 1:return a.sent(),this.gradient.element.hasAttribute("gradientUnits")&&"objectboundingbox"!==this.gradient.element.getAttribute("gradientUnits").toLowerCase()?r=e.pdf.unitMatrix:(i=t.getBoundingBox(e),r=e.pdf.Matrix(i[2],0,0,i[3],i[0],i[1])),n=Q(O(this.gradient.element,e.styleSheets,"gradientTransform","transform"),e),[2,{key:this.key,matrix:e.pdf.matrixMult(n,r)}]}}))}))},t}(),rt=function(t){function r(){return null!==t&&t.apply(this,arguments)||this}return i(r,t),r.prototype.apply=function(t){return a(this,void 0,void 0,(function(){var r,i,n,a,o;return s(this,(function(s){switch(s.label){case 0:if(!(r=this.element.getAttribute("id")))return[2];i=this.getBoundingBox(t),n=new e.TilingPattern([i[0],i[1],i[0]+i[2],i[1]+i[3]],i[2],i[3]),t.pdf.beginTilingPattern(n),a=0,o=this.children,s.label=1;case 1:return a<o.length?[4,o[a].render(new p(t.pdf,{attributeState:t.attributeState,refsHandler:t.refsHandler,styleSheets:t.styleSheets,viewport:t.viewport,svg2pdfParameters:t.svg2pdfParameters}))]:[3,4];case 2:s.sent(),s.label=3;case 3:return a++,[3,1];case 4:return t.pdf.endTilingPattern(r,n),[2]}}))}))},r.prototype.getBoundingBoxCore=function(t){return Y(this.element,t)},r.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},r.prototype.isVisible=function(t,e){return _(this,t,e)},r}(K),it=function(){function t(t,e){this.key=t,this.pattern=e}return t.prototype.getFillData=function(t,e){return a(this,void 0,void 0,(function(){var r,i,n,a,o,l,u,h,f,c,d,g;return s(this,(function(s){switch(s.label){case 0:return[4,e.refsHandler.getRendered(this.key,null,(function(t){return t.apply(new p(e.pdf,{refsHandler:e.refsHandler,textMeasure:e.textMeasure,styleSheets:e.styleSheets,viewport:e.viewport,svg2pdfParameters:e.svg2pdfParameters}))}))];case 1:return s.sent(),r={key:this.key,boundingBox:void 0,xStep:0,yStep:0,matrix:void 0},n=e.pdf.unitMatrix,this.pattern.element.hasAttribute("patternUnits")&&"objectboundingbox"!==this.pattern.element.getAttribute("patternUnits").toLowerCase()||(i=t.getBoundingBox(e),n=e.pdf.Matrix(1,0,0,1,i[0],i[1]),o=this.pattern.getBoundingBox(e),l=o[0]*i[0]||0,u=o[1]*i[1]||0,h=o[2]*i[2]||0,f=o[3]*i[3]||0,r.boundingBox=[l,u,l+h,u+f],r.xStep=h,r.yStep=f),a=e.pdf.unitMatrix,this.pattern.element.hasAttribute("patternContentUnits")&&"objectboundingbox"===this.pattern.element.getAttribute("patternContentUnits").toLowerCase()&&(i||(i=t.getBoundingBox(e)),a=e.pdf.Matrix(i[2],0,0,i[3],0,0),o=r.boundingBox||this.pattern.getBoundingBox(e),l=o[0]/i[0]||0,u=o[1]/i[1]||0,h=o[2]/i[2]||0,f=o[3]/i[3]||0,r.boundingBox=[l,u,l+h,u+f],r.xStep=h,r.yStep=f),c=e.pdf.unitMatrix,(d=O(this.pattern.element,e.styleSheets,"patternTransform","transform"))&&(c=Q(d,e)),g=a,g=e.pdf.matrixMult(g,n),g=e.pdf.matrixMult(g,c),g=e.pdf.matrixMult(g,e.transform),r.matrix=g,[2,r]}}))}))},t}();function nt(t,e,r){var i=r||e.element,n=O(i,t.styleSheets,"color");if(n){var a=D(n,t.attributeState.color);a.ok?t.attributeState.color=a:t.attributeState.color=new o("rgb(0,0,0)")}var s=O(i,t.styleSheets,"visibility");s&&(t.attributeState.visibility=s);var u=O(i,t.styleSheets,"fill");u&&(t.attributeState.fill=function(t,e){var r=h.exec(t);if(r){var i=r[1],n=e.refsHandler.get(i);return n&&(n instanceof J||n instanceof tt)?new et(i,n):n&&n instanceof rt?new it(i,n):new l(new o("rgb(0, 0, 0)"))}var a=D(t,e.attributeState.color);return a.ok?new l(a):null}(u,t));var f=O(i,t.styleSheets,"fill-opacity");f&&(t.attributeState.fillOpacity=parseFloat(f));var c=O(i,t.styleSheets,"stroke-opacity");c&&(t.attributeState.strokeOpacity=parseFloat(c));var p=O(i,t.styleSheets,"opacity");p&&(t.attributeState.opacity=parseFloat(p));var d=O(i,t.styleSheets,"stroke-width");void 0!==d&&""!==d&&(t.attributeState.strokeWidth=Math.abs(parseFloat(d)));var g=O(i,t.styleSheets,"stroke");if(g)if("none"===g)t.attributeState.stroke=null;else{var m=D(g,t.attributeState.color);m.ok&&(t.attributeState.stroke=new l(m))}var y=O(i,t.styleSheets,"stroke-linecap");y&&(t.attributeState.strokeLinecap=y);var v=O(i,t.styleSheets,"stroke-linejoin");v&&(t.attributeState.strokeLinejoin=v);var b=O(i,t.styleSheets,"stroke-dasharray");if(b){var x=parseInt(O(i,t.styleSheets,"stroke-dashoffset")||"0");t.attributeState.strokeDasharray=j(b),t.attributeState.strokeDashoffset=x}var S=O(i,t.styleSheets,"stroke-miterlimit");void 0!==S&&""!==S&&(t.attributeState.strokeMiterlimit=parseFloat(S));var w=i.getAttribute("xml:space");w&&(t.attributeState.xmlSpace=w);var k=O(i,t.styleSheets,"font-weight");k&&(t.attributeState.fontWeight=k);var M=O(i,t.styleSheets,"font-style");M&&(t.attributeState.fontStyle=M);var A=O(i,t.styleSheets,"font-family");if(A){var C=G(A);t.attributeState.fontFamily=function(t,e,r){var i="";"bold"===t.fontWeight&&(i="bold"),"italic"===t.fontStyle&&(i+="italic"),""===i&&(i="normal");var n=r.pdf.getFontList(),a="";return e.some((function(t){var e=n[t];return e&&e.indexOf(i)>=0?(a=t,!0):(t=t.toLowerCase(),!!U.hasOwnProperty(t)&&(a=t,!0))}))||(a="times"),a}(t.attributeState,C,t)}var T=O(i,t.styleSheets,"font-size");if(T){var F=t.pdf.getFontSize();t.attributeState.fontSize=H(T,F)}var P=O(i,t.styleSheets,"vertical-align")||O(i,t.styleSheets,"alignment-baseline");if(P){var B=P.match(/(baseline|text-bottom|alphabetic|ideographic|middle|central|mathematical|text-top|bottom|center|top|hanging)/);B&&(t.attributeState.alignmentBaseline=B[0])}var N=O(i,t.styleSheets,"text-anchor");N&&(t.attributeState.textAnchor=N)}function at(t,r,i){var n=1,a=1;n*=t.attributeState.fillOpacity,n*=t.attributeState.opacity,t.attributeState.fill instanceof l&&void 0!==t.attributeState.fill.color.a&&(n*=t.attributeState.fill.color.a),a*=t.attributeState.strokeOpacity,a*=t.attributeState.opacity,t.attributeState.stroke instanceof l&&void 0!==t.attributeState.stroke.color.a&&(a*=t.attributeState.stroke.color.a);var s,o,u=n<1,h=a<1;if(E(i,"use")?(u=!0,h=!0,n*=t.attributeState.fill?1:0,a*=t.attributeState.stroke?1:0):t.withinUse&&(t.attributeState.fill!==r.attributeState.fill?(u=!0,n*=t.attributeState.fill?1:0):u&&!t.attributeState.fill&&(n=0),t.attributeState.stroke!==r.attributeState.stroke?(h=!0,a*=t.attributeState.stroke?1:0):h&&!t.attributeState.stroke&&(a=0)),u||h){var f={};u&&(f.opacity=n),h&&(f["stroke-opacity"]=a),t.pdf.setGState(new e.GState(f))}if(t.attributeState.fill&&t.attributeState.fill!==r.attributeState.fill&&t.attributeState.fill instanceof l&&t.attributeState.fill.color.ok&&!E(i,"text")&&t.pdf.setFillColor(t.attributeState.fill.color.r,t.attributeState.fill.color.g,t.attributeState.fill.color.b),t.attributeState.strokeWidth!==r.attributeState.strokeWidth&&t.pdf.setLineWidth(t.attributeState.strokeWidth),t.attributeState.stroke!==r.attributeState.stroke&&t.attributeState.stroke instanceof l&&t.pdf.setDrawColor(t.attributeState.stroke.color.r,t.attributeState.stroke.color.g,t.attributeState.stroke.color.b),t.attributeState.strokeLinecap!==r.attributeState.strokeLinecap&&t.pdf.setLineCap(t.attributeState.strokeLinecap),t.attributeState.strokeLinejoin!==r.attributeState.strokeLinejoin&&t.pdf.setLineJoin(t.attributeState.strokeLinejoin),t.attributeState.strokeDasharray===r.attributeState.strokeDasharray&&t.attributeState.strokeDashoffset===r.attributeState.strokeDashoffset||!t.attributeState.strokeDasharray||t.pdf.setLineDashPattern(t.attributeState.strokeDasharray,t.attributeState.strokeDashoffset),t.attributeState.strokeMiterlimit!==r.attributeState.strokeMiterlimit&&t.pdf.setLineMiterLimit(t.attributeState.strokeMiterlimit),t.attributeState.fontFamily!==r.attributeState.fontFamily&&(s=U.hasOwnProperty(t.attributeState.fontFamily)?U[t.attributeState.fontFamily]:t.attributeState.fontFamily),t.attributeState.fill&&t.attributeState.fill!==r.attributeState.fill&&t.attributeState.fill instanceof l&&t.attributeState.fill.color.ok){var c=t.attributeState.fill.color;t.pdf.setTextColor(c.r,c.g,c.b)}t.attributeState.fontWeight===r.attributeState.fontWeight&&t.attributeState.fontStyle===r.attributeState.fontStyle||(o="","bold"===t.attributeState.fontWeight&&(o="bold"),"italic"===t.attributeState.fontStyle&&(o+="italic"),""===o&&(o="normal")),void 0===s&&void 0===o||(void 0===s&&(s=U.hasOwnProperty(t.attributeState.fontFamily)?U[t.attributeState.fontFamily]:t.attributeState.fontFamily),t.pdf.setFont(s,o)),t.attributeState.fontSize!==r.attributeState.fontSize&&t.pdf.setFontSize(t.attributeState.fontSize*t.pdf.internal.scaleFactor)}function st(t,e){var r=O(t.element,e.styleSheets,"clip-path");if(r){var i=h.exec(r);if(i){var n=i[1];return e.refsHandler.get(n)||void 0}}}function ot(t,e,r){return a(this,void 0,void 0,(function(){var i,n;return s(this,(function(a){switch(a.label){case 0:return i=r.clone(),e.element.hasAttribute("clipPathUnits")&&"objectboundingbox"===e.element.getAttribute("clipPathUnits").toLowerCase()&&(n=t.getBoundingBox(r),i.transform=r.pdf.matrixMult(r.pdf.Matrix(n[2],0,0,n[3],n[0],n[1]),r.transform)),[4,e.apply(i)];case 1:return a.sent(),[2]}}))}))}var lt=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.render=function(t){return a(this,void 0,void 0,(function(){var e,r,i;return s(this,(function(n){switch(n.label){case 0:return this.isVisible("hidden"!==t.attributeState.visibility,t)?((e=t.clone()).transform=e.pdf.matrixMult(this.computeNodeTransform(e),t.transform),nt(e,this),(r=this.element.hasAttribute("clip-path")&&"none"!==O(this.element,e.styleSheets,"clip-path"))?(i=st(this,e))&&i.isVisible(!0,e)?(e.pdf.saveGraphicsState(),[4,ot(this,i,e)]):[3,2]:[3,3]):[2];case 1:return n.sent(),[3,3];case 2:return[2];case 3:return e.withinClipPath||e.pdf.saveGraphicsState(),at(e,t,this.element),[4,this.renderCore(e)];case 4:return n.sent(),e.withinClipPath||e.pdf.restoreGraphicsState(),r&&e.pdf.restoreGraphicsState(),[2]}}))}))},e}($),ut=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e}(lt),ht=function(t){function e(e,r,i){var n=t.call(this,r,i)||this;return n.cachedPath=null,n.hasMarkers=e,n}return i(e,t),e.prototype.renderCore=function(t){return a(this,void 0,void 0,(function(){var e;return s(this,(function(r){switch(r.label){case 0:return null===(e=this.getCachedPath(t))||0===e.segments.length?[2]:(t.withinClipPath?e.transform(t.transform):t.pdf.setCurrentTransformationMatrix(t.transform),e.draw(t),[4,this.fillOrStroke(t)]);case 1:return r.sent(),this.hasMarkers?[4,this.drawMarkers(t,e)]:[3,3];case 2:r.sent(),r.label=3;case 3:return[2]}}))}))},e.prototype.getCachedPath=function(t){return this.cachedPath||(this.cachedPath=this.getPath(t))},e.prototype.drawMarkers=function(t,e){return a(this,void 0,void 0,(function(){return s(this,(function(r){switch(r.label){case 0:return[4,this.getMarkers(e,t).draw(t.clone({transform:t.pdf.unitMatrix}))];case 1:return r.sent(),[2]}}))}))},e.prototype.fillOrStroke=function(t){return a(this,void 0,void 0,(function(){var e,r,i,n,a;return s(this,(function(s){switch(s.label){case 0:return t.withinClipPath?[2]:(e=t.attributeState.fill,r=t.attributeState.stroke&&0!==t.attributeState.strokeWidth,e?[4,e.getFillData(this,t)]:[3,2]);case 1:return n=s.sent(),[3,3];case 2:n=void 0,s.label=3;case 3:return i=n,a="evenodd"===O(this.element,t.styleSheets,"fill-rule"),e&&r||t.withinUse?a?t.pdf.fillStrokeEvenOdd(i):t.pdf.fillStroke(i):e?a?t.pdf.fillEvenOdd(i):t.pdf.fill(i):r?t.pdf.stroke():t.pdf.discardPath(),[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){var e=this.getCachedPath(t);if(!e)return[0,0,0,0];for(var r=Number.POSITIVE_INFINITY,i=Number.POSITIVE_INFINITY,n=Number.NEGATIVE_INFINITY,a=Number.NEGATIVE_INFINITY,s=0,o=0,l=0;l<e.segments.length;l++){var u=e.segments[l];(u instanceof F||u instanceof P||u instanceof B)&&(s=u.x,o=u.y),u instanceof B?(r=Math.min(r,s,u.x1,u.x2,u.x),n=Math.max(n,s,u.x1,u.x2,u.x),i=Math.min(i,o,u.y1,u.y2,u.y),a=Math.max(a,o,u.y1,u.y2,u.y)):(r=Math.min(r,s),n=Math.max(n,s),i=Math.min(i,o),a=Math.max(a,o))}return[r,i,n-r,a-i]},e.prototype.getMarkers=function(t,e){var r=O(this.element,e.styleSheets,"marker-start"),i=O(this.element,e.styleSheets,"marker-mid"),n=O(this.element,e.styleSheets,"marker-end"),a=new L;if(r||i||n){n&&(n=ft(n)),r&&(r=ft(r)),i&&(i=ft(i));for(var s=t.segments,o=[1,0],l=void 0,u=!1,h=[1,0],f=!1,c=function(t){var e=s[t],c=r&&(1===t||!(s[t]instanceof F)&&s[t-1]instanceof F);c&&s.forEach((function(e,r){if(!f&&e instanceof N&&r>t){var i=s[r-1];f=(i instanceof F||i instanceof P||i instanceof B)&&i}}));var p=n&&(t===s.length-1||!(s[t]instanceof F)&&s[t+1]instanceof F),d=i&&t>0&&!(1===t&&s[t-1]instanceof F),g=s[t-1]||null;if(g instanceof F||g instanceof P||g instanceof B){if(e instanceof B)c&&a.addMarker(new q(r,[g.x,g.y],S(f?[f.x,f.y]:[g.x,g.y],[e.x1,e.y1]))),p&&a.addMarker(new q(n,[e.x,e.y],S([e.x2,e.y2],[e.x,e.y]))),d&&(l=M([g.x,g.y],[e.x1,e.y1]),l=g instanceof F?l:k(A(o,l)),a.addMarker(new q(i,[g.x,g.y],Math.atan2(l[1],l[0])))),o=M([e.x2,e.y2],[e.x,e.y]);else if(e instanceof F||e instanceof P){if(l=M([g.x,g.y],[e.x,e.y]),c){var m=f?M([f.x,f.y],[e.x,e.y]):l;a.addMarker(new q(r,[g.x,g.y],Math.atan2(m[1],m[0])))}if(p&&a.addMarker(new q(n,[e.x,e.y],Math.atan2(l[1],l[0]))),d){m=e instanceof F?o:g instanceof F?l:k(A(o,l));a.addMarker(new q(i,[g.x,g.y],Math.atan2(m[1],m[0])))}o=l}else if(e instanceof N){if(l=M([g.x,g.y],[u.x,u.y]),d){m=g instanceof F?l:k(A(o,l));a.addMarker(new q(i,[g.x,g.y],Math.atan2(m[1],m[0])))}if(p){m=k(A(l,h));a.addMarker(new q(n,[u.x,u.y],Math.atan2(m[1],m[0])))}o=l}}else{u=e instanceof F&&e;var y=s[t+1];(y instanceof F||y instanceof P||y instanceof B)&&(h=M([u.x,u.y],[y.x,y.y]))}},p=0;p<s.length;p++)c(p)}return a},e}(ut);function ft(t){var e=h.exec(t);return e&&e[1]||void 0}var ct=function(t){function e(e,r){return t.call(this,!0,e,r)||this}return i(e,t),e.prototype.getPath=function(t){if(t.withinClipPath||null===t.attributeState.stroke)return null;var e=parseFloat(this.element.getAttribute("x1")||"0"),r=parseFloat(this.element.getAttribute("y1")||"0"),i=parseFloat(this.element.getAttribute("x2")||"0"),n=parseFloat(this.element.getAttribute("y2")||"0");return e||i||r||n?(new T).moveTo(e,r).lineTo(i,n):null},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.prototype.isVisible=function(t,e){return I(this,t,e)},e.prototype.fillOrStroke=function(e){return a(this,void 0,void 0,(function(){return s(this,(function(r){switch(r.label){case 0:return e.attributeState.fill=null,[4,t.prototype.fillOrStroke.call(this,e)];case 1:return r.sent(),[2]}}))}))},e}(ht),pt=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.apply=function(t){return a(this,void 0,void 0,(function(){var e,r,i,n;return s(this,(function(a){switch(a.label){case 0:return this.isVisible("hidden"!==t.attributeState.visibility,t)?((e=t.clone()).transform=e.pdf.unitMatrix,nt(e,this),this.element.hasAttribute("clip-path")&&"none"!==O(this.element,e.styleSheets,"clip-path")?(r=st(this,e))&&r.isVisible(!0,e)?[4,ot(this,r,e)]:[3,2]:[3,3]):[2];case 1:return a.sent(),[3,3];case 2:return[2];case 3:at(e,t,this.element),i=0,n=this.children,a.label=4;case 4:return i<n.length?[4,n[i].render(e)]:[3,7];case 5:a.sent(),a.label=6;case 6:return i++,[3,4];case 7:return[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){return z(t,this)},e.prototype.isVisible=function(t,e){return _(this,t,e)},e.prototype.computeNodeTransformCore=function(t){var e=parseFloat(O(this.element,t.styleSheets,"x")||"0"),r=parseFloat(O(this.element,t.styleSheets,"y")||"0"),i=this.element.getAttribute("viewBox");if(i){var n=j(i),a=parseFloat(O(this.element,t.styleSheets,"width")||O(this.element.ownerSVGElement,t.styleSheets,"width")||i[2]),s=parseFloat(O(this.element,t.styleSheets,"height")||O(this.element.ownerSVGElement,t.styleSheets,"height")||i[3]);return X(this.element,n,e,r,a,s,t)}return t.pdf.Matrix(1,0,0,1,e,r)},e}(K),dt=function(t,e){this.width=t,this.height=e},gt=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.renderCore=function(t){return a(this,void 0,void 0,(function(){var r,i,n,a,o,l,u,h,f,c,d,g,m;return s(this,(function(s){switch(s.label){case 0:return r=parseFloat,(i=this.element.getAttribute("href")||this.element.getAttribute("xlink:href"))?(n=i.substring(1),a=t.refsHandler.get(n),o=E(a.element,"symbol,svg")&&a.element.hasAttribute("viewBox"),l=r(O(this.element,t.styleSheets,"x")||"0"),u=r(O(this.element,t.styleSheets,"y")||"0"),h=void 0,f=void 0,o?(h=r(O(this.element,t.styleSheets,"width")||O(a.element,t.styleSheets,"width")||"0"),f=r(O(this.element,t.styleSheets,"height")||O(a.element,t.styleSheets,"height")||"0"),l+=r(O(a.element,t.styleSheets,"x")||"0"),u+=r(O(a.element,t.styleSheets,"y")||"0"),d=j(a.element.getAttribute("viewBox")),c=X(a.element,d,l,u,h,f,t)):c=t.pdf.Matrix(1,0,0,1,l,u),g=new p(t.pdf,{refsHandler:t.refsHandler,styleSheets:t.styleSheets,withinUse:!0,viewport:o?new dt(h,f):t.viewport,svg2pdfParameters:t.svg2pdfParameters}),m=t.attributeState.color,[4,t.refsHandler.getRendered(n,m,(function(t){return e.renderReferencedNode(t,n,m,g)}))]):[2];case 1:return s.sent(),t.pdf.saveGraphicsState(),t.pdf.setCurrentTransformationMatrix(t.transform),o&&"visible"!==O(a.element,t.styleSheets,"overflow")&&(t.pdf.rect(l,u,h,f),t.pdf.clip().discardPath()),t.pdf.doFormObject(x.generateKey(n,m),c),t.pdf.restoreGraphicsState(),[2]}}))}))},e.renderReferencedNode=function(t,e,r,i){return a(this,void 0,void 0,(function(){var n;return s(this,(function(a){switch(a.label){case 0:return n=[(n=t.getBoundingBox(i))[0]-.5*n[2],n[1]-.5*n[3],2*n[2],2*n[3]],i.attributeState.color=r,i.pdf.beginFormObject(n[0],n[1],n[2],n[3],i.pdf.unitMatrix),t instanceof pt?[4,t.apply(i)]:[3,2];case 1:return a.sent(),[3,4];case 2:return[4,t.render(i)];case 3:a.sent(),a.label=4;case 4:return i.pdf.endFormObject(x.generateKey(e,r)),[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){return Y(this.element,t)},e.prototype.isVisible=function(t,e){return I(this,t,e)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e}(ut),mt=function(t){function e(e,r){return t.call(this,!1,e,r)||this}return i(e,t),e.prototype.getPath=function(t){var e=parseFloat(O(this.element,t.styleSheets,"width")||"0"),r=parseFloat(O(this.element,t.styleSheets,"height")||"0");if(!isFinite(e)||e<=0||!isFinite(r)||r<=0)return null;var i=O(this.element,t.styleSheets,"rx"),n=O(this.element,t.styleSheets,"ry"),a=Math.min(parseFloat(i||n||"0"),.5*e),s=Math.min(parseFloat(n||i||"0"),.5*r),o=parseFloat(O(this.element,t.styleSheets,"x")||"0"),l=parseFloat(O(this.element,t.styleSheets,"y")||"0"),u=4/3*(Math.SQRT2-1);return 0===a&&0===s?(new T).moveTo(o,l).lineTo(o+e,l).lineTo(o+e,l+r).lineTo(o,l+r).close():(new T).moveTo(o+=a,l).lineTo(o+=e-2*a,l).curveTo(o+a*u,l,o+a,l+(s-s*u),o+=a,l+=s).lineTo(o,l+=r-2*s).curveTo(o,l+s*u,o-a*u,l+s,o-=a,l+=s).lineTo(o+=2*a-e,l).curveTo(o-a*u,l,o-a,l-s*u,o-=a,l-=s).lineTo(o,l+=2*s-r).curveTo(o,l-s*u,o+a*u,l-s,o+=a,l-=s).close()},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.prototype.isVisible=function(t,e){return I(this,t,e)},e}(ht),yt=function(t){function e(e,r){return t.call(this,!1,e,r)||this}return i(e,t),e.prototype.getPath=function(t){var e=this.getRx(t),r=this.getRy(t);if(!isFinite(e)||r<=0||!isFinite(r)||r<=0)return null;var i=parseFloat(O(this.element,t.styleSheets,"cx")||"0"),n=parseFloat(O(this.element,t.styleSheets,"cy")||"0"),a=4/3*(Math.SQRT2-1)*e,s=4/3*(Math.SQRT2-1)*r;return(new T).moveTo(i+e,n).curveTo(i+e,n-s,i+a,n-r,i,n-r).curveTo(i-a,n-r,i-e,n-s,i-e,n).curveTo(i-e,n+s,i-a,n+r,i,n+r).curveTo(i+a,n+r,i+e,n+s,i+e,n)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.prototype.isVisible=function(t,e){return I(this,t,e)},e}(ht),vt=function(t){function e(e,r){return t.call(this,e,r)||this}return i(e,t),e.prototype.getRx=function(t){return parseFloat(O(this.element,t.styleSheets,"rx")||"0")},e.prototype.getRy=function(t){return parseFloat(O(this.element,t.styleSheets,"ry")||"0")},e}(yt);function bt(t){var e="invisible";return t.fill&&t.stroke?e="fillThenStroke":t.fill?e="fill":t.stroke&&(e="stroke"),e}function xt(t){return t.replace(/[\n\r]/g,"")}function St(t){return t.replace(/[\t]/g," ")}function wt(t){return t.replace(/ +/g," ")}function kt(t,e,r){switch(O(t,r.styleSheets,"text-transform")){case"uppercase":return e.toUpperCase();case"lowercase":return e.toLowerCase();default:return e}}var Mt=function(){function t(t,e,r,i){this.textNode=t,this.texts=[],this.textNodes=[],this.contexts=[],this.textAnchor=e,this.originX=r,this.originY=i,this.textMeasures=[]}return t.prototype.setX=function(t){this.originX=t},t.prototype.setY=function(t){this.originY=t},t.prototype.add=function(t,e,r){this.texts.push(e),this.textNodes.push(t),this.contexts.push(r)},t.prototype.rightTrimText=function(){for(var t=this.texts.length-1;t>=0;t--)if("default"===this.contexts[t].attributeState.xmlSpace&&(this.texts[t]=this.texts[t].replace(/\s+$/,"")),this.texts[t].match(/[^\s]/))return!1;return!0},t.prototype.measureText=function(t){for(var e=0;e<this.texts.length;e++)this.textMeasures.push({width:t.textMeasure.measureTextWidth(this.texts[e],this.contexts[e].attributeState),length:this.texts[e].length})},t.prototype.put=function(t,e){var r,i,n,a,s=[],o=[],l=[],u=this.originX,h=this.originY,f=u,c=u;for(r=0;r<this.textNodes.length;r++){i=this.textNodes[r],n=this.contexts[r],a=this.textMeasures[r]||{width:t.textMeasure.measureTextWidth(this.texts[r],this.contexts[r].attributeState),length:this.texts[r].length};var p=u,d=h;if("#text"!==i.nodeName&&!s.includes(i)){s.push(i);var g=i.getAttribute("dx");null!==g&&(p+=H(g,n.attributeState.fontSize));var m=i.getAttribute("dy");null!==m&&(d+=H(m,n.attributeState.fontSize))}o[r]=p,l[r]=d,u=p+a.width+a.length*e,h=d,f=Math.min(f,p),c=Math.max(c,u)}var y=0;switch(this.textAnchor){case"start":y=0;break;case"middle":y=(c-f)/2;break;case"end":y=c-f}for(r=0;r<this.textNodes.length;r++)if(i=this.textNodes[r],n=this.contexts[r],"#text"===i.nodeName||"hidden"!==n.attributeState.visibility){t.pdf.saveGraphicsState(),at(n,t,i);var v=n.attributeState.alignmentBaseline,b=bt(n.attributeState);t.pdf.text(this.texts[r],o[r]-y,l[r],{baseline:V(v),angle:t.transform,renderingMode:"fill"===b?void 0:b,charSpace:0===e?void 0:e}),t.pdf.restoreGraphicsState()}return[u,h]},t}(),At=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.processTSpans=function(t,e,r,i,n,a){for(var s=r.pdf.getFontSize(),o=r.attributeState.xmlSpace,l=!0,u=!1,h=0;h<e.childNodes.length;h++){var f=e.childNodes[h];if(f.textContent){var c=f.textContent;if("#text"===f.nodeName){var p=xt(c);p=St(p),"default"===o&&(p=wt(p),l&&p.match(/^\s/)&&(u=!0),p.match(/[^\s]/)&&(l=!1),a.prevText.match(/\s$/)&&(p=p.replace(/^\s+/,"")));var d=kt(e,p,r);n.add(e,d,r),a.prevText=c,a.prevContext=r}else if(E(f,"title"));else if(E(f,"tspan")){var g=f,m=g.getAttribute("x");if(null!==m){var y=H(m,s);n=new Mt(this,O(g,r.styleSheets,"text-anchor")||r.attributeState.textAnchor,y,0),i.push({type:"y",chunk:n})}var v=g.getAttribute("y");if(null!==v){var b=H(v,s);n=new Mt(this,O(g,r.styleSheets,"text-anchor")||r.attributeState.textAnchor,0,b),i.push({type:"x",chunk:n})}var x=r.clone();nt(x,t,g),this.processTSpans(t,g,x,i,n,a)}}}return u},e.prototype.renderCore=function(t){return a(this,void 0,void 0,(function(){var e,r,i,n,a,o,l,u,h,f,c,p,d,g,m,y,v,b,x,S,w,k,M;return s(this,(function(s){if(t.pdf.saveGraphicsState(),e=0,r=0,i=1,n=t.pdf.getFontSize(),a=H(this.element.getAttribute("x"),n),o=H(this.element.getAttribute("y"),n),l=H(this.element.getAttribute("dx"),n),u=H(this.element.getAttribute("dy"),n),h=parseFloat(this.element.getAttribute("textLength")||"0"),f=t.attributeState.visibility,0===this.element.childElementCount)c=this.element.textContent||"",p=function(t,e){return t=St(t=xt(t)),"default"===e.xmlSpace&&(t=wt(t=t.trim())),t}(c,t.attributeState),d=kt(this.element,p,t),e=t.textMeasure.getTextOffset(d,t.attributeState),h>0&&(g=t.textMeasure.measureTextWidth(d,t.attributeState),"default"===t.attributeState.xmlSpace&&c.match(/^\s/)&&(i=0),r=(h-g)/(d.length-i)||0),"visible"===f&&(m=t.attributeState.alignmentBaseline,y=bt(t.attributeState),t.pdf.text(d,a+l-e,o+u,{baseline:V(m),angle:t.transform,renderingMode:"fill"===y?void 0:y,charSpace:0===r?void 0:r}));else{for(v=[],b=new Mt(this,t.attributeState.textAnchor,a+l,o+u),v.push({type:"",chunk:b}),x=this.processTSpans(this,this.element,t,v,b,{prevText:" ",prevContext:t}),i=x?0:1,S=!0,w=v.length-1;w>=0;w--)S&&(S=v[w].chunk.rightTrimText());h>0&&(k=0,M=0,v.forEach((function(e){var r=e.chunk;r.measureText(t),r.textMeasures.forEach((function(t){var e=t.width,r=t.length;k+=e,M+=r}))})),r=(h-k)/(M-i)),v.reduce((function(e,i){var n=i.type,a=i.chunk;return"x"===n?a.setX(e[0]):"y"===n&&a.setY(e[1]),a.put(t,r)}),[0,0])}return t.pdf.restoreGraphicsState(),[2]}))}))},e.prototype.isVisible=function(t,e){return _(this,t,e)},e.prototype.getBoundingBoxCore=function(t){return Y(this.element,t)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e}(ut),Ct={a:7,c:6,h:1,l:2,m:2,r:4,q:4,s:4,t:2,v:1,z:0},Tt=[5760,6158,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279];function Ft(t){return t>=48&&t<=57}function Pt(t){return t>=48&&t<=57||43===t||45===t||46===t}function Bt(t){this.index=0,this.path=t,this.max=t.length,this.result=[],this.param=0,this.err="",this.segmentStart=0,this.data=[]}function Nt(t){for(;t.index<t.max&&(10===(e=t.path.charCodeAt(t.index))||13===e||8232===e||8233===e||32===e||9===e||11===e||12===e||160===e||e>=5760&&Tt.indexOf(e)>=0);)t.index++;var e}function Et(t){var e=t.path.charCodeAt(t.index);return 48===e?(t.param=0,void t.index++):49===e?(t.param=1,void t.index++):void(t.err="SvgPath: arc flag can be 0 or 1 only (at pos "+t.index+")")}function Ot(t){var e,r=t.index,i=r,n=t.max,a=!1,s=!1,o=!1,l=!1;if(i>=n)t.err="SvgPath: missed param (at pos "+i+")";else if(43!==(e=t.path.charCodeAt(i))&&45!==e||(e=++i<n?t.path.charCodeAt(i):0),Ft(e)||46===e){if(46!==e){if(a=48===e,e=++i<n?t.path.charCodeAt(i):0,a&&i<n&&e&&Ft(e))return void(t.err="SvgPath: numbers started with `0` such as `09` are illegal (at pos "+r+")");for(;i<n&&Ft(t.path.charCodeAt(i));)i++,s=!0;e=i<n?t.path.charCodeAt(i):0}if(46===e){for(l=!0,i++;Ft(t.path.charCodeAt(i));)i++,o=!0;e=i<n?t.path.charCodeAt(i):0}if(101===e||69===e){if(l&&!s&&!o)return void(t.err="SvgPath: invalid float exponent (at pos "+i+")");if(43!==(e=++i<n?t.path.charCodeAt(i):0)&&45!==e||i++,!(i<n&&Ft(t.path.charCodeAt(i))))return void(t.err="SvgPath: invalid float exponent (at pos "+i+")");for(;i<n&&Ft(t.path.charCodeAt(i));)i++}t.index=i,t.param=parseFloat(t.path.slice(r,i))+0}else t.err="SvgPath: param should start with 0..9 or `.` (at pos "+i+")"}function It(t){var e,r;r=(e=t.path[t.segmentStart]).toLowerCase();var i=t.data;if("m"===r&&i.length>2&&(t.result.push([e,i[0],i[1]]),i=i.slice(2),r="l",e="m"===e?"l":"L"),"r"===r)t.result.push([e].concat(i));else for(;i.length>=Ct[r]&&(t.result.push([e].concat(i.splice(0,Ct[r]))),Ct[r]););}function _t(t){var e,r,i,n,a,s=t.max;if(t.segmentStart=t.index,e=t.path.charCodeAt(t.index),r=97==(32|e),function(t){switch(32|t){case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:case 114:return!0}return!1}(e))if(n=Ct[t.path[t.index].toLowerCase()],t.index++,Nt(t),t.data=[],n){for(i=!1;;){for(a=n;a>0;a--){if(!r||3!==a&&4!==a?Ot(t):Et(t),t.err.length)return;t.data.push(t.param),Nt(t),i=!1,t.index<s&&44===t.path.charCodeAt(t.index)&&(t.index++,Nt(t),i=!0)}if(!i){if(t.index>=t.max)break;if(!Pt(t.path.charCodeAt(t.index)))break}}It(t)}else It(t);else t.err="SvgPath: bad command "+t.path[t.index]+" (at pos "+t.index+")"}function Lt(){if(!(this instanceof Lt))return new Lt;this.queue=[],this.cache=null}Lt.prototype.matrix=function(t){return 1===t[0]&&0===t[1]&&0===t[2]&&1===t[3]&&0===t[4]&&0===t[5]||(this.cache=null,this.queue.push(t)),this},Lt.prototype.translate=function(t,e){return 0===t&&0===e||(this.cache=null,this.queue.push([1,0,0,1,t,e])),this},Lt.prototype.scale=function(t,e){return 1===t&&1===e||(this.cache=null,this.queue.push([t,0,0,e,0,0])),this},Lt.prototype.rotate=function(t,e,r){var i,n,a;return 0!==t&&(this.translate(e,r),i=t*Math.PI/180,n=Math.cos(i),a=Math.sin(i),this.queue.push([n,a,-a,n,0,0]),this.cache=null,this.translate(-e,-r)),this},Lt.prototype.skewX=function(t){return 0!==t&&(this.cache=null,this.queue.push([1,0,Math.tan(t*Math.PI/180),1,0,0])),this},Lt.prototype.skewY=function(t){return 0!==t&&(this.cache=null,this.queue.push([1,Math.tan(t*Math.PI/180),0,1,0,0])),this},Lt.prototype.toArray=function(){if(this.cache)return this.cache;if(!this.queue.length)return this.cache=[1,0,0,1,0,0],this.cache;if(this.cache=this.queue[0],1===this.queue.length)return this.cache;for(var t=1;t<this.queue.length;t++)this.cache=(e=this.cache,r=this.queue[t],[e[0]*r[0]+e[2]*r[1],e[1]*r[0]+e[3]*r[1],e[0]*r[2]+e[2]*r[3],e[1]*r[2]+e[3]*r[3],e[0]*r[4]+e[2]*r[5]+e[4],e[1]*r[4]+e[3]*r[5]+e[5]]);var e,r;return this.cache},Lt.prototype.calc=function(t,e,r){var i;return this.queue.length?(this.cache||(this.cache=this.toArray()),[t*(i=this.cache)[0]+e*i[2]+(r?0:i[4]),t*i[1]+e*i[3]+(r?0:i[5])]):[t,e]};var qt=Lt,Ht={matrix:!0,scale:!0,rotate:!0,translate:!0,skewX:!0,skewY:!0},Vt=/\s*(matrix|translate|scale|rotate|skewX|skewY)\s*\(\s*(.+?)\s*\)[\s,]*/,jt=/[\s,]+/,Dt=2*Math.PI;function Rt(t,e,r,i){var n=t*r+e*i;return n>1&&(n=1),n<-1&&(n=-1),(t*i-e*r<0?-1:1)*Math.acos(n)}function Wt(t,e){var r=4/3*Math.tan(e/4),i=Math.cos(t),n=Math.sin(t),a=Math.cos(t+e),s=Math.sin(t+e);return[i,n,i-n*r,n+i*r,a+s*r,s-a*r,a,s]}var Gt=function(t,e,r,i,n,a,s,o,l){var u=Math.sin(l*Dt/360),h=Math.cos(l*Dt/360),f=h*(t-r)/2+u*(e-i)/2,c=-u*(t-r)/2+h*(e-i)/2;if(0===f&&0===c)return[];if(0===s||0===o)return[];s=Math.abs(s),o=Math.abs(o);var p=f*f/(s*s)+c*c/(o*o);p>1&&(s*=Math.sqrt(p),o*=Math.sqrt(p));var d=function(t,e,r,i,n,a,s,o,l,u){var h=u*(t-r)/2+l*(e-i)/2,f=-l*(t-r)/2+u*(e-i)/2,c=s*s,p=o*o,d=h*h,g=f*f,m=c*p-c*g-p*d;m<0&&(m=0),m/=c*g+p*d;var y=(m=Math.sqrt(m)*(n===a?-1:1))*s/o*f,v=m*-o/s*h,b=u*y-l*v+(t+r)/2,x=l*y+u*v+(e+i)/2,S=(h-y)/s,w=(f-v)/o,k=(-h-y)/s,M=(-f-v)/o,A=Rt(1,0,S,w),C=Rt(S,w,k,M);return 0===a&&C>0&&(C-=Dt),1===a&&C<0&&(C+=Dt),[b,x,A,C]}(t,e,r,i,n,a,s,o,u,h),g=[],m=d[2],y=d[3],v=Math.max(Math.ceil(Math.abs(y)/(Dt/4)),1);y/=v;for(var b=0;b<v;b++)g.push(Wt(m,y)),m+=y;return g.map((function(t){for(var e=0;e<t.length;e+=2){var r=t[e+0],i=t[e+1],n=h*(r*=s)-u*(i*=o),a=u*r+h*i;t[e+0]=n+d[0],t[e+1]=a+d[1]}return t}))},Ut=Math.PI/180;function zt(t,e,r){if(!(this instanceof zt))return new zt(t,e,r);this.rx=t,this.ry=e,this.ax=r}zt.prototype.transform=function(t){var e=Math.cos(this.ax*Ut),r=Math.sin(this.ax*Ut),i=[this.rx*(t[0]*e+t[2]*r),this.rx*(t[1]*e+t[3]*r),this.ry*(-t[0]*r+t[2]*e),this.ry*(-t[1]*r+t[3]*e)],n=i[0]*i[0]+i[2]*i[2],a=i[1]*i[1]+i[3]*i[3],s=((i[0]-i[3])*(i[0]-i[3])+(i[2]+i[1])*(i[2]+i[1]))*((i[0]+i[3])*(i[0]+i[3])+(i[2]-i[1])*(i[2]-i[1])),o=(n+a)/2;if(s<1e-10*o)return this.rx=this.ry=Math.sqrt(o),this.ax=0,this;var l=i[0]*i[1]+i[2]*i[3],u=o+(s=Math.sqrt(s))/2,h=o-s/2;return this.ax=Math.abs(l)<1e-10&&Math.abs(u-a)<1e-10?90:180*Math.atan(Math.abs(l)>Math.abs(u-a)?(u-n)/l:l/(u-a))/Math.PI,this.ax>=0?(this.rx=Math.sqrt(u),this.ry=Math.sqrt(h)):(this.ax+=90,this.rx=Math.sqrt(h),this.ry=Math.sqrt(u)),this},zt.prototype.isDegenerate=function(){return this.rx<1e-10*this.ry||this.ry<1e-10*this.rx};var Yt=zt;function Xt(t){if(!(this instanceof Xt))return new Xt(t);var e=function(t){var e=new Bt(t),r=e.max;for(Nt(e);e.index<r&&!e.err.length;)_t(e);return e.err.length?e.result=[]:e.result.length&&("mM".indexOf(e.result[0][0])<0?(e.err="SvgPath: string should start with `M` or `m`",e.result=[]):e.result[0][0]="M"),{err:e.err,segments:e.result}}(t);this.segments=e.segments,this.err=e.err,this.__stack=[]}Xt.from=function(t){if("string"==typeof t)return new Xt(t);if(t instanceof Xt){var e=new Xt("");return e.err=t.err,e.segments=t.segments.map((function(t){return t.slice()})),e.__stack=t.__stack.map((function(t){return qt().matrix(t.toArray())})),e}throw new Error("SvgPath.from: invalid param type "+t)},Xt.prototype.__matrix=function(t){var e,r=this;t.queue.length&&this.iterate((function(i,n,a,s){var o,l,u,h;switch(i[0]){case"v":l=0===(o=t.calc(0,i[1],!0))[0]?["v",o[1]]:["l",o[0],o[1]];break;case"V":l=(o=t.calc(a,i[1],!1))[0]===t.calc(a,s,!1)[0]?["V",o[1]]:["L",o[0],o[1]];break;case"h":l=0===(o=t.calc(i[1],0,!0))[1]?["h",o[0]]:["l",o[0],o[1]];break;case"H":l=(o=t.calc(i[1],s,!1))[1]===t.calc(a,s,!1)[1]?["H",o[0]]:["L",o[0],o[1]];break;case"a":case"A":var f=t.toArray(),c=Yt(i[1],i[2],i[3]).transform(f);if(f[0]*f[3]-f[1]*f[2]<0&&(i[5]=i[5]?"0":"1"),o=t.calc(i[6],i[7],"a"===i[0]),"A"===i[0]&&i[6]===a&&i[7]===s||"a"===i[0]&&0===i[6]&&0===i[7]){l=["a"===i[0]?"l":"L",o[0],o[1]];break}l=c.isDegenerate()?["a"===i[0]?"l":"L",o[0],o[1]]:[i[0],c.rx,c.ry,c.ax,i[4],i[5],o[0],o[1]];break;case"m":h=n>0,l=["m",(o=t.calc(i[1],i[2],h))[0],o[1]];break;default:for(l=[u=i[0]],h=u.toLowerCase()===u,e=1;e<i.length;e+=2)o=t.calc(i[e],i[e+1],h),l.push(o[0],o[1])}r.segments[n]=l}),!0)},Xt.prototype.__evaluateStack=function(){var t,e;if(this.__stack.length){if(1===this.__stack.length)return this.__matrix(this.__stack[0]),void(this.__stack=[]);for(t=qt(),e=this.__stack.length;--e>=0;)t.matrix(this.__stack[e].toArray());this.__matrix(t),this.__stack=[]}},Xt.prototype.toString=function(){var t,e,r=[];this.__evaluateStack();for(var i=0;i<this.segments.length;i++)e=this.segments[i][0],t=i>0&&"m"!==e&&"M"!==e&&e===this.segments[i-1][0],r=r.concat(t?this.segments[i].slice(1):this.segments[i]);return r.join(" ").replace(/ ?([achlmqrstvz]) ?/gi,"$1").replace(/ \-/g,"-").replace(/zm/g,"z m")},Xt.prototype.translate=function(t,e){return this.__stack.push(qt().translate(t,e||0)),this},Xt.prototype.scale=function(t,e){return this.__stack.push(qt().scale(t,e||0===e?e:t)),this},Xt.prototype.rotate=function(t,e,r){return this.__stack.push(qt().rotate(t,e||0,r||0)),this},Xt.prototype.skewX=function(t){return this.__stack.push(qt().skewX(t)),this},Xt.prototype.skewY=function(t){return this.__stack.push(qt().skewY(t)),this},Xt.prototype.matrix=function(t){return this.__stack.push(qt().matrix(t)),this},Xt.prototype.transform=function(t){return t.trim()?(this.__stack.push(function(t){var e,r,i=new qt;return t.split(Vt).forEach((function(t){if(t.length)if(void 0===Ht[t])switch(r=t.split(jt).map((function(t){return+t||0})),e){case"matrix":return void(6===r.length&&i.matrix(r));case"scale":return void(1===r.length?i.scale(r[0],r[0]):2===r.length&&i.scale(r[0],r[1]));case"rotate":return void(1===r.length?i.rotate(r[0],0,0):3===r.length&&i.rotate(r[0],r[1],r[2]));case"translate":return void(1===r.length?i.translate(r[0],0):2===r.length&&i.translate(r[0],r[1]));case"skewX":return void(1===r.length&&i.skewX(r[0]));case"skewY":return void(1===r.length&&i.skewY(r[0]))}else e=t})),i}(t)),this):this},Xt.prototype.round=function(t){var e,r=0,i=0,n=0,a=0;return t=t||0,this.__evaluateStack(),this.segments.forEach((function(s){var o=s[0].toLowerCase()===s[0];switch(s[0]){case"H":case"h":return o&&(s[1]+=n),n=s[1]-s[1].toFixed(t),void(s[1]=+s[1].toFixed(t));case"V":case"v":return o&&(s[1]+=a),a=s[1]-s[1].toFixed(t),void(s[1]=+s[1].toFixed(t));case"Z":case"z":return n=r,void(a=i);case"M":case"m":return o&&(s[1]+=n,s[2]+=a),n=s[1]-s[1].toFixed(t),a=s[2]-s[2].toFixed(t),r=n,i=a,s[1]=+s[1].toFixed(t),void(s[2]=+s[2].toFixed(t));case"A":case"a":return o&&(s[6]+=n,s[7]+=a),n=s[6]-s[6].toFixed(t),a=s[7]-s[7].toFixed(t),s[1]=+s[1].toFixed(t),s[2]=+s[2].toFixed(t),s[3]=+s[3].toFixed(t+2),s[6]=+s[6].toFixed(t),void(s[7]=+s[7].toFixed(t));default:return e=s.length,o&&(s[e-2]+=n,s[e-1]+=a),n=s[e-2]-s[e-2].toFixed(t),a=s[e-1]-s[e-1].toFixed(t),void s.forEach((function(e,r){r&&(s[r]=+s[r].toFixed(t))}))}})),this},Xt.prototype.iterate=function(t,e){var r,i,n,a=this.segments,s={},o=!1,l=0,u=0,h=0,f=0;if(e||this.__evaluateStack(),a.forEach((function(e,r){var i=t(e,r,l,u);Array.isArray(i)&&(s[r]=i,o=!0);var n=e[0]===e[0].toLowerCase();switch(e[0]){case"m":case"M":return l=e[1]+(n?l:0),u=e[2]+(n?u:0),h=l,void(f=u);case"h":case"H":return void(l=e[1]+(n?l:0));case"v":case"V":return void(u=e[1]+(n?u:0));case"z":case"Z":return l=h,void(u=f);default:l=e[e.length-2]+(n?l:0),u=e[e.length-1]+(n?u:0)}})),!o)return this;for(n=[],r=0;r<a.length;r++)if(void 0!==s[r])for(i=0;i<s[r].length;i++)n.push(s[r][i]);else n.push(a[r]);return this.segments=n,this},Xt.prototype.abs=function(){return this.iterate((function(t,e,r,i){var n,a=t[0],s=a.toUpperCase();if(a!==s)switch(t[0]=s,a){case"v":return void(t[1]+=i);case"a":return t[6]+=r,void(t[7]+=i);default:for(n=1;n<t.length;n++)t[n]+=n%2?r:i}}),!0),this},Xt.prototype.rel=function(){return this.iterate((function(t,e,r,i){var n,a=t[0],s=a.toLowerCase();if(a!==s&&(0!==e||"M"!==a))switch(t[0]=s,a){case"V":return void(t[1]-=i);case"A":return t[6]-=r,void(t[7]-=i);default:for(n=1;n<t.length;n++)t[n]-=n%2?r:i}}),!0),this},Xt.prototype.unarc=function(){return this.iterate((function(t,e,r,i){var n,a,s,o=[],l=t[0];return"A"!==l&&"a"!==l?null:("a"===l?(a=r+t[6],s=i+t[7]):(a=t[6],s=t[7]),0===(n=Gt(r,i,a,s,t[4],t[5],t[1],t[2],t[3])).length?[["a"===t[0]?"l":"L",t[6],t[7]]]:(n.forEach((function(t){o.push(["C",t[2],t[3],t[4],t[5],t[6],t[7]])})),o))})),this},Xt.prototype.unshort=function(){var t,e,r,i,n,a=this.segments;return this.iterate((function(s,o,l,u){var h,f=s[0],c=f.toUpperCase();o&&("T"===c?(h="t"===f,"Q"===(r=a[o-1])[0]?(t=r[1]-l,e=r[2]-u):"q"===r[0]?(t=r[1]-r[3],e=r[2]-r[4]):(t=0,e=0),i=-t,n=-e,h||(i+=l,n+=u),a[o]=[h?"q":"Q",i,n,s[1],s[2]]):"S"===c&&(h="s"===f,"C"===(r=a[o-1])[0]?(t=r[3]-l,e=r[4]-u):"c"===r[0]?(t=r[3]-r[5],e=r[4]-r[6]):(t=0,e=0),i=-t,n=-e,h||(i+=l,n+=u),a[o]=[h?"c":"C",i,n,s[1],s[2],s[3],s[4]]))})),this};var Qt=Xt,$t=function(t){function e(e,r){return t.call(this,!0,e,r)||this}return i(e,t),e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.prototype.isVisible=function(t,e){return I(this,t,e)},e.prototype.getPath=function(t){var e,r,i=new Qt(O(this.element,t.styleSheets,"d")||"").unshort().unarc().abs(),n=new T;return i.iterate((function(t){var i=t[0];switch(i){case"M":n.moveTo(t[1],t[2]);break;case"L":n.lineTo(t[1],t[2]);break;case"H":n.lineTo(t[1],r);break;case"V":n.lineTo(e,t[1]);break;case"C":n.curveTo(t[1],t[2],t[3],t[4],t[5],t[6]);break;case"Q":var a=w([e,r],[t[1],t[2]]),s=w([t[3],t[4]],[t[1],t[2]]);n.curveTo(a[0],a[1],s[0],s[1],t[3],t[4]);break;case"Z":n.close()}switch(i){case"M":case"L":e=t[1],r=t[2];break;case"H":e=t[1];break;case"V":r=t[1];break;case"C":e=t[5],r=t[6];break;case"Q":e=t[3],r=t[4]}})),n},e}(ht),Kt=/^\s*data:(([^/,;]+\/[^/,;]+)(?:;([^,;=]+=[^,;=]+))?)?(?:;(base64))?,(.*\s*)$/i,Zt=function(t){function e(r,i){var n=t.call(this,r,i)||this;return n.imageLoadingPromise=null,n.imageUrl=n.element.getAttribute("xlink:href")||n.element.getAttribute("href"),n.imageUrl&&(n.imageLoadingPromise=e.fetchImageData(n.imageUrl)),n}return i(e,t),e.prototype.renderCore=function(t){return a(this,void 0,void 0,(function(){var e,r,i,n,a,o,l,u,h,f,c,d;return s(this,(function(s){switch(s.label){case 0:return this.imageLoadingPromise?(t.pdf.setCurrentTransformationMatrix(t.transform),e=parseFloat(O(this.element,t.styleSheets,"width")||"0"),r=parseFloat(O(this.element,t.styleSheets,"height")||"0"),i=parseFloat(O(this.element,t.styleSheets,"x")||"0"),n=parseFloat(O(this.element,t.styleSheets,"y")||"0"),!isFinite(e)||e<=0||!isFinite(r)||r<=0?[2]:[4,this.imageLoadingPromise]):[2];case 1:return a=s.sent(),o=a.data,0!==(l=a.format).indexOf("svg")?[3,3]:(u=new DOMParser,h=u.parseFromString(o,"image/svg+xml").firstElementChild,(!(f=this.element.getAttribute("preserveAspectRatio"))||f.indexOf("defer")<0||!h.getAttribute("preserveAspectRatio"))&&h.setAttribute("preserveAspectRatio",f||""),h.setAttribute("x",String(i)),h.setAttribute("y",String(n)),h.setAttribute("width",String(e)),h.setAttribute("height",String(r)),[4,ue(h,c={}).render(new p(t.pdf,{refsHandler:new x(c),styleSheets:t.styleSheets,viewport:new dt(e,r),svg2pdfParameters:t.svg2pdfParameters}))]);case 2:return s.sent(),[2];case 3:d="data:image/"+l+";base64,"+btoa(o);try{t.pdf.addImage(d,"",i,n,e,r)}catch(t){"object"==typeof console&&console.warn&&console.warn("Could not load image "+this.imageUrl+".\n"+t)}s.label=4;case 4:return[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){return Y(this.element,t)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.prototype.isVisible=function(t,e){return I(this,t,e)},e.fetchImageData=function(t){return a(this,void 0,void 0,(function(){var r,i,n,a,o;return s(this,(function(s){switch(s.label){case 0:if(!(n=t.match(Kt)))return[3,1];if(a=n[2],"image"!==(o=a.split("/"))[0])throw new Error("Unsupported image URL: "+t);return i=o[1],r=n[5],r="base64"===n[4]?atob(r):decodeURIComponent(r),[3,3];case 1:return[4,e.fetchImage(t)];case 2:r=s.sent(),i=t.substring(t.lastIndexOf(".")+1),s.label=3;case 3:return[2,{data:r,format:i}]}}))}))},e.fetchImage=function(t){return new Promise((function(e,r){var i=new XMLHttpRequest;i.open("GET",t,!0),i.responseType="arraybuffer",i.onload=function(){if(200!==i.status)throw new Error("Error "+i.status+": Failed to load image '"+t+"'");for(var r=new Uint8Array(i.response),n="",a=0;a<r.length;a++)n+=String.fromCharCode(r[a]);e(n)},i.onerror=r,i.onabort=r,i.send(null)}))},e.getMimeType=function(t){switch(t=t.toLowerCase()){case"jpg":case"jpeg":return"image/jpeg";default:return"image/"+t}},e}(ut),Jt=function(t){function e(e,r,i){var n=t.call(this,!0,r,i)||this;return n.closed=e,n}return i(e,t),e.prototype.getPath=function(t){if(!this.element.hasAttribute("points")||""===this.element.getAttribute("points"))return null;var r=e.parsePointsString(this.element.getAttribute("points")),i=new T;if(r.length<1)return i;i.moveTo(r[0][0],r[0][1]);for(var n=1;n<r.length;n++)i.lineTo(r[n][0],r[n][1]);return this.closed&&i.close(),i},e.prototype.isVisible=function(t,e){return I(this,t,e)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.parsePointsString=function(t){for(var e=j(t),r=[],i=0;i<e.length-1;i+=2){var n=e[i],a=e[i+1];r.push([n,a])}return r},e}(ht),te=function(t){function e(e,r){return t.call(this,!0,e,r)||this}return i(e,t),e}(Jt),ee=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.render=function(t){return Promise.resolve()},e.prototype.getBoundingBoxCore=function(t){return[0,0,0,0]},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.prototype.isVisible=function(t,e){return I(this,t,e)},e}($),re=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.apply=function(t){return a(this,void 0,void 0,(function(){var e,r,i,n;return s(this,(function(a){switch(a.label){case 0:e=this.computeNodeTransform(t),r=this.getBoundingBox(t),t.pdf.beginFormObject(r[0],r[1],r[2],r[3],e),i=0,n=this.children,a.label=1;case 1:return i<n.length?[4,n[i].render(new p(t.pdf,{refsHandler:t.refsHandler,styleSheets:t.styleSheets,viewport:t.viewport,svg2pdfParameters:t.svg2pdfParameters}))]:[3,4];case 2:a.sent(),a.label=3;case 3:return i++,[3,1];case 4:return t.pdf.endFormObject(this.element.getAttribute("id")),[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){var e,r=this.element.getAttribute("viewBox");return r&&(e=j(r)),[e&&e[0]||0,e&&e[1]||0,e&&e[2]||parseFloat(this.element.getAttribute("marker-width")||"0"),e&&e[3]||parseFloat(this.element.getAttribute("marker-height")||"0")]},e.prototype.computeNodeTransformCore=function(t){var e,r=parseFloat(this.element.getAttribute("refX")||"0"),i=parseFloat(this.element.getAttribute("refY")||"0"),n=this.element.getAttribute("viewBox");if(n){var a=j(n);e=X(this.element,a,0,0,parseFloat(this.element.getAttribute("markerWidth")||"3"),parseFloat(this.element.getAttribute("markerHeight")||"3"),t,!0),e=t.pdf.matrixMult(t.pdf.Matrix(1,0,0,1,-r,-i),e)}else e=t.pdf.Matrix(1,0,0,1,-r,-i);return e},e.prototype.isVisible=function(t,e){return _(this,t,e)},e}(K),ie=function(t){function e(e,r){return t.call(this,e,r)||this}return i(e,t),e.prototype.getR=function(t){var e;return null!==(e=this.r)&&void 0!==e?e:this.r=parseFloat(O(this.element,t.styleSheets,"r")||"0")},e.prototype.getRx=function(t){return this.getR(t)},e.prototype.getRy=function(t){return this.getR(t)},e}(yt),ne=function(t){function e(e,r){return t.call(this,!1,e,r)||this}return i(e,t),e}(Jt),ae=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.renderCore=function(t){return a(this,void 0,void 0,(function(){var e,r;return s(this,(function(i){switch(i.label){case 0:e=0,r=this.children,i.label=1;case 1:return e<r.length?[4,r[e].render(t)]:[3,4];case 2:i.sent(),i.label=3;case 3:return e++,[3,1];case 4:return[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){return z(t,this)},e}(lt),se=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.isVisible=function(t,e){return _(this,t,e)},e.prototype.render=function(e){return a(this,void 0,void 0,(function(){var r,i,n,a,o;return s(this,(function(s){switch(s.label){case 0:return this.isVisible("hidden"!==e.attributeState.visibility,e)?(r=this.getX(e),i=this.getY(e),n=this.getWidth(e),a=this.getHeight(e),e.pdf.saveGraphicsState(),o=e.transform,this.element.hasAttribute("transform")&&(o=e.pdf.matrixMult(Q(this.element.getAttribute("transform"),e),o)),e.pdf.setCurrentTransformationMatrix(o),e.withinUse||"visible"===O(this.element,e.styleSheets,"overflow")||e.pdf.rect(r,i,n,a).clip().discardPath(),[4,t.prototype.render.call(this,e.clone({transform:e.pdf.unitMatrix,viewport:e.withinUse?e.viewport:new dt(n,a)}))]):[2];case 1:return s.sent(),e.pdf.restoreGraphicsState(),[2]}}))}))},e.prototype.computeNodeTransform=function(t){return this.computeNodeTransformCore(t)},e.prototype.computeNodeTransformCore=function(t){if(t.withinUse)return t.pdf.unitMatrix;var e,r=this.getX(t),i=this.getY(t),n=this.getViewBox();if(n){var a=this.getWidth(t),s=this.getHeight(t);e=X(this.element,n,r,i,a,s,t)}else e=t.pdf.Matrix(1,0,0,1,r,i);return e},e.prototype.getWidth=function(t){if(void 0!==this.width)return this.width;var e,r,i=t.svg2pdfParameters;if(this.isOutermostSvg(t))if(null!=i.width)e=i.width;else if(r=O(this.element,t.styleSheets,"width"))e=parseFloat(r);else{var n=this.getViewBox();if(n&&(null!=i.height||O(this.element,t.styleSheets,"height"))){var a=n[2]/n[3];e=this.getHeight(t)*a}else e=Math.min(300,t.viewport.width,2*t.viewport.height)}else e=(r=O(this.element,t.styleSheets,"width"))?parseFloat(r):t.viewport.width;return this.width=e},e.prototype.getHeight=function(t){if(void 0!==this.height)return this.height;var e,r,i=t.svg2pdfParameters;if(this.isOutermostSvg(t))if(null!=i.height)e=i.height;else if(r=O(this.element,t.styleSheets,"height"))e=parseFloat(r);else{var n=this.getViewBox();if(n){var a=n[2]/n[3];e=this.getWidth(t)/a}else e=Math.min(150,t.viewport.width/2,t.viewport.height)}else e=(r=O(this.element,t.styleSheets,"height"))?parseFloat(r):t.viewport.height;return this.height=e},e.prototype.getX=function(t){if(void 0!==this.x)return this.x;if(this.isOutermostSvg(t))return this.x=0;var e=O(this.element,t.styleSheets,"x");return this.x=e?parseFloat(e):0},e.prototype.getY=function(t){if(void 0!==this.y)return this.y;if(this.isOutermostSvg(t))return this.y=0;var e=O(this.element,t.styleSheets,"y");return this.y=e?parseFloat(e):0},e.prototype.getViewBox=function(){if(void 0!==this.viewBox)return this.viewBox;var t=this.element.getAttribute("viewBox");return this.viewBox=t?j(t):void 0},e.prototype.isOutermostSvg=function(t){return t.svg2pdfParameters.element===this.element},e}(ae),oe=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.isVisible=function(t,e){return _(this,t,e)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e}(ae),le=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.apply=function(t){return a(this,void 0,void 0,(function(){var e,r,i;return s(this,(function(n){switch(n.label){case 0:if(!this.isVisible(!0,t))return[2];e=t.pdf.matrixMult(this.computeNodeTransform(t),t.transform),t.pdf.setCurrentTransformationMatrix(e),r=0,i=this.children,n.label=1;case 1:return r<i.length?[4,i[r].render(new p(t.pdf,{refsHandler:t.refsHandler,styleSheets:t.styleSheets,viewport:t.viewport,withinClipPath:!0,svg2pdfParameters:t.svg2pdfParameters}))]:[3,4];case 2:n.sent(),n.label=3;case 3:return r++,[3,1];case 4:return t.pdf.clip().discardPath(),t.pdf.setCurrentTransformationMatrix(e.inversed()),[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){return z(t,this)},e.prototype.isVisible=function(t,e){return _(this,t,e)},e}(K);function ue(t,e){var r,i=[];switch(function(t,e){for(var r=[],i=0;i<t.childNodes.length;i++){var n=t.childNodes[i];"#"!==n.nodeName.charAt(0)&&r.push(n)}for(i=0;i<r.length;i++)e(i,r[i])}(t,(function(t,r){return i.push(ue(r,e))})),t.tagName.toLowerCase()){case"a":case"g":r=new oe(t,i);break;case"circle":r=new ie(t,i);break;case"clippath":r=new le(t,i);break;case"ellipse":r=new vt(t,i);break;case"lineargradient":r=new J(t,i);break;case"image":r=new Zt(t,i);break;case"line":r=new ct(t,i);break;case"marker":r=new re(t,i);break;case"path":r=new $t(t,i);break;case"pattern":r=new rt(t,i);break;case"polygon":r=new te(t,i);break;case"polyline":r=new ne(t,i);break;case"radialgradient":r=new tt(t,i);break;case"rect":r=new mt(t,i);break;case"svg":r=new se(t,i);break;case"symbol":r=new pt(t,i);break;case"text":r=new At(t,i);break;case"use":r=new gt(t,i);break;default:r=new ee(t,i)}if(null!=e&&r.element.hasAttribute("id")){var n=b(r.element.id,{isIdentifier:!0});e[n]=e[n]||r}return r.children.forEach((function(t){return t.setParent(r)})),r}var he=function(t){var e,r,i=t,n={a:0,b:0,c:0},a=[];return e=function(e,r){var s,o,l,u,h,f;if(e.test(i))for(o=0,l=(s=i.match(e)).length;o<l;o+=1)n[r]+=1,u=s[o],h=i.indexOf(u),f=u.length,a.push({selector:t.substr(h,f),type:r,index:h,length:f}),i=i.replace(u,Array(f+1).join(" "))},(r=function(t){var e,r,n,a;if(t.test(i))for(r=0,n=(e=i.match(t)).length;r<n;r+=1)a=e[r],i=i.replace(a,Array(a.length+1).join("A"))})(/\\[0-9A-Fa-f]{6}\s?/g),r(/\\[0-9A-Fa-f]{1,5}\s/g),r(/\\./g),function(){var t,e,r,n,a=/{[^]*/gm;if(a.test(i))for(e=0,r=(t=i.match(a)).length;e<r;e+=1)n=t[e],i=i.replace(n,Array(n.length+1).join(" "))}(),e(/(\[[^\]]+\])/g,"b"),e(/(#[^\#\s\+>~\.\[:\)]+)/g,"a"),e(/(\.[^\s\+>~\.\[:\)]+)/g,"b"),e(/(::[^\s\+>~\.\[:]+|:first-line|:first-letter|:before|:after)/gi,"c"),e(/(:(?!not|global|local)[\w-]+\([^\)]*\))/gi,"b"),e(/(:(?!not|global|local)[^\s\+>~\.\[:]+)/g,"b"),i=(i=(i=(i=(i=(i=i.replace(/[\*\s\+>~]/g," ")).replace(/[#\.]/g," ")).replace(/:not/g," ")).replace(/:local/g," ")).replace(/:global/g," ")).replace(/[\(\)]/g," "),e(/([^\s\+>~\.\[:]+)/g,"c"),a.sort((function(t,e){return t.index-e.index})),{selector:t,specificity:"0,"+n.a.toString()+","+n.b.toString()+","+n.c.toString(),specificityArray:[0,n.a,n.b,n.c],parts:a}},fe=function(){function t(t,e){this.rootSvg=t,this.loadExternalSheets=e,this.styleSheets=[]}return t.prototype.load=function(){return a(this,void 0,void 0,(function(){var t;return s(this,(function(e){switch(e.label){case 0:return[4,this.collectStyleSheetTexts()];case 1:return t=e.sent(),this.parseCssSheets(t),[2]}}))}))},t.prototype.collectStyleSheetTexts=function(){return a(this,void 0,void 0,(function(){var e,r,i,n,a;return s(this,(function(s){switch(s.label){case 0:if(e=[],this.loadExternalSheets&&this.rootSvg.ownerDocument)for(n=0;n<this.rootSvg.ownerDocument.childNodes.length;n++)"xml-stylesheet"===(r=this.rootSvg.ownerDocument.childNodes[n]).nodeName&&"string"==typeof r.data&&e.push(t.loadSheet(r.data.match(/href=["'].*?["']/)[0].split("=")[1].slice(1,-1)));for(i=this.rootSvg.querySelectorAll("style,link"),n=0;n<i.length;n++)E(a=i[n],"style")?e.push(a.textContent):this.loadExternalSheets&&E(a,"link")&&"stylesheet"===a.getAttribute("rel")&&a.hasAttribute("href")&&e.push(t.loadSheet(a.getAttribute("href")));return[4,Promise.all(e)];case 1:return[2,s.sent().filter((function(t){return null!==t}))]}}))}))},t.prototype.parseCssSheets=function(e){for(var r=document.implementation.createHTMLDocument(""),i=0,n=e;i<n.length;i++){var a=n[i],s=r.createElement("style");s.textContent=a,r.body.appendChild(s);var o=s.sheet;if(o instanceof CSSStyleSheet){for(var l=o.cssRules.length-1;l>=0;l--){var u=o.cssRules[l];u instanceof CSSStyleRule||o.deleteRule(l);var h=u;if(h.selectorText.indexOf(",")>=0){o.deleteRule(l);for(var f=h.cssText.substring(h.selectorText.length),c=t.splitSelectorAtCommas(h.selectorText),p=0;p<c.length;p++)o.insertRule(c[p]+f,l+p)}}this.styleSheets.push(o)}}},t.splitSelectorAtCommas=function(t){for(var e,r=/,|["']/g,i=/[^\\]["]/g,n=/[^\\][']/g,a=[],s="initial",o=-1,l=i,u=0;u<t.length;)switch(s){case"initial":r.lastIndex=u,(e=r.exec(t))?(","===e[0]?(a.push(t.substring(o+1,r.lastIndex-1).trim()),o=r.lastIndex-1):(s="withinQuotes",l='"'===e[0]?i:n),u=r.lastIndex):(a.push(t.substring(o+1).trim()),u=t.length);break;case"withinQuotes":l.lastIndex=u,(e=l.exec(t))&&(u=l.lastIndex,s="initial")}return a},t.loadSheet=function(t){return new Promise((function(e,r){var i=new XMLHttpRequest;i.open("GET",t,!0),i.responseType="text",i.onload=function(){200!==i.status&&r(new Error("Error "+i.status+": Failed to load '"+t+"'")),e(i.responseText)},i.onerror=r,i.onabort=r,i.send(null)})).catch((function(){return null}))},t.prototype.getPropertyValue=function(t,e){for(var r=[],i=0,n=this.styleSheets;i<n.length;i++)for(var a=n[i],s=0;s<a.cssRules.length;s++){var o=a.cssRules[s];o.style.getPropertyValue(e)&&t.matches(o.selectorText)&&r.push(o)}if(0!==r.length){var l=function(t,r){var i=t.style.getPropertyPriority(e);return i!==r.style.getPropertyPriority(e)?"important"===i?1:-1:function(t,e){var r,i,n;if("string"==typeof t){if(-1!==t.indexOf(","))throw"Invalid CSS selector";r=he(t).specificityArray}else{if(!Array.isArray(t))throw"Invalid CSS selector or specificity array";if(4!==t.filter((function(t){return"number"==typeof t})).length)throw"Invalid specificity array";r=t}if("string"==typeof e){if(-1!==e.indexOf(","))throw"Invalid CSS selector";i=he(e).specificityArray}else{if(!Array.isArray(e))throw"Invalid CSS selector or specificity array";if(4!==e.filter((function(t){return"number"==typeof t})).length)throw"Invalid specificity array";i=e}for(n=0;n<4;n+=1){if(r[n]<i[n])return-1;if(r[n]>i[n])return 1}return 0}(t.selectorText,r.selectorText)};return r.reduce((function(t,e){return 1===l(t,e)?t:e})).style.getPropertyValue(e)||void 0}},t}();function ce(t,e,r){var i,o,l;return void 0===r&&(r={}),a(this,void 0,void 0,(function(){var a,u,h,f,c,d,g,m,y,v;return s(this,(function(s){switch(s.label){case 0:return a=null!==(i=r.x)&&void 0!==i?i:0,u=null!==(o=r.y)&&void 0!==o?o:0,h=null!==(l=r.loadExternalStyleSheets)&&void 0!==l&&l,c=new x(f={}),[4,(d=new fe(t,h)).load()];case 1:return s.sent(),g=new dt(e.internal.pageSize.getWidth(),e.internal.pageSize.getHeight()),m=n(n({},r),{element:t}),y=new p(e,{refsHandler:c,styleSheets:d,viewport:g,svg2pdfParameters:m}),e.advancedAPI(),e.saveGraphicsState(),e.setCurrentTransformationMatrix(e.Matrix(1,0,0,1,a,u)),e.setLineWidth(y.attributeState.strokeWidth),v=y.attributeState.fill.color,e.setFillColor(v.r,v.g,v.b),e.setFont(y.attributeState.fontFamily),e.setFontSize(y.attributeState.fontSize*e.internal.scaleFactor),[4,ue(t,f).render(y)];case 2:return s.sent(),e.restoreGraphicsState(),e.compatAPI(),y.textMeasure.cleanupTextMeasuring(),[2,e]}}))}))}e.jsPDF.API.svg=function(t,e){return void 0===e&&(e={}),ce(t,this,e)},t.svg2pdf=ce,Object.defineProperty(t,"__esModule",{value:!0})})); //# sourceMappingURL=svg2pdf.umd.min.js.map diff --git a/dist/svg2pdf.umd.min.js.map b/dist/svg2pdf.umd.min.js.map index c1ee32dd..1f7af9da 100644 --- a/dist/svg2pdf.umd.min.js.map +++ b/dist/svg2pdf.umd.min.js.map @@ -1 +1 @@ -{"version":3,"file":"svg2pdf.umd.min.js","sources":["../node_modules/tslib/tslib.es6.js","../src/utils/rgbcolor.ts","../src/fill/ColorFill.ts","../src/context/attributestate.ts","../src/utils/constants.ts","../src/context/textmeasure.ts","../src/context/context.ts","../node_modules/cssesc/cssesc.js","../src/context/referenceshandler.ts","../src/utils/geometry.ts","../src/utils/path.ts","../src/utils/node.ts","../src/markerlist.ts","../src/utils/misc.ts","../src/utils/parsing.ts","../node_modules/font-family-papandreou/index.js","../src/utils/fonts.ts","../src/utils/bbox.ts","../src/utils/transform.ts","../src/nodes/svgnode.ts","../src/nodes/nonrenderednode.ts","../src/nodes/gradient.ts","../src/nodes/lineargradient.ts","../src/nodes/radialgradient.ts","../src/fill/GradientFill.ts","../src/nodes/pattern.ts","../src/fill/PatternFill.ts","../src/applyparseattributes.ts","../src/fill/parseFill.ts","../src/utils/applyclippath.ts","../src/nodes/renderednode.ts","../src/nodes/graphicsnode.ts","../src/nodes/geometrynode.ts","../src/nodes/line.ts","../src/nodes/symbol.ts","../src/context/viewport.ts","../src/nodes/use.ts","../src/nodes/rect.ts","../src/nodes/ellipsebase.ts","../src/nodes/ellipse.ts","../src/utils/text.ts","../src/textchunk.ts","../src/nodes/text.ts","../node_modules/svgpath/lib/path_parse.js","../node_modules/svgpath/lib/matrix.js","../node_modules/svgpath/lib/transform_parse.js","../node_modules/svgpath/lib/a2c.js","../node_modules/svgpath/lib/ellipse.js","../node_modules/svgpath/lib/svgpath.js","../src/nodes/path.ts","../src/nodes/image.ts","../src/nodes/traverse.ts","../src/nodes/polygon.ts","../src/nodes/void.ts","../src/nodes/marker.ts","../src/nodes/circle.ts","../src/nodes/polyline.ts","../src/nodes/containernode.ts","../src/nodes/svg.ts","../src/nodes/group.ts","../src/nodes/clippath.ts","../src/parse.ts","../node_modules/specificity/dist/specificity.mjs","../src/context/stylesheets.ts","../src/svg2pdf.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n",null,null,null,null,null,null,"/*! https://mths.be/cssesc v3.0.0 by @mathias */\n'use strict';\n\nvar object = {};\nvar hasOwnProperty = object.hasOwnProperty;\nvar merge = function merge(options, defaults) {\n\tif (!options) {\n\t\treturn defaults;\n\t}\n\tvar result = {};\n\tfor (var key in defaults) {\n\t\t// `if (defaults.hasOwnProperty(key) { … }` is not needed here, since\n\t\t// only recognized option names are used.\n\t\tresult[key] = hasOwnProperty.call(options, key) ? options[key] : defaults[key];\n\t}\n\treturn result;\n};\n\nvar regexAnySingleEscape = /[ -,\\.\\/:-@\\[-\\^`\\{-~]/;\nvar regexSingleEscape = /[ -,\\.\\/:-@\\[\\]\\^`\\{-~]/;\nvar regexAlwaysEscape = /['\"\\\\]/;\nvar regexExcessiveSpaces = /(^|\\\\+)?(\\\\[A-F0-9]{1,6})\\x20(?![a-fA-F0-9\\x20])/g;\n\n// https://mathiasbynens.be/notes/css-escapes#css\nvar cssesc = function cssesc(string, options) {\n\toptions = merge(options, cssesc.options);\n\tif (options.quotes != 'single' && options.quotes != 'double') {\n\t\toptions.quotes = 'single';\n\t}\n\tvar quote = options.quotes == 'double' ? '\"' : '\\'';\n\tvar isIdentifier = options.isIdentifier;\n\n\tvar firstChar = string.charAt(0);\n\tvar output = '';\n\tvar counter = 0;\n\tvar length = string.length;\n\twhile (counter < length) {\n\t\tvar character = string.charAt(counter++);\n\t\tvar codePoint = character.charCodeAt();\n\t\tvar value = void 0;\n\t\t// If it’s not a printable ASCII character…\n\t\tif (codePoint < 0x20 || codePoint > 0x7E) {\n\t\t\tif (codePoint >= 0xD800 && codePoint <= 0xDBFF && counter < length) {\n\t\t\t\t// It’s a high surrogate, and there is a next character.\n\t\t\t\tvar extra = string.charCodeAt(counter++);\n\t\t\t\tif ((extra & 0xFC00) == 0xDC00) {\n\t\t\t\t\t// next character is low surrogate\n\t\t\t\t\tcodePoint = ((codePoint & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000;\n\t\t\t\t} else {\n\t\t\t\t\t// It’s an unmatched surrogate; only append this code unit, in case\n\t\t\t\t\t// the next code unit is the high surrogate of a surrogate pair.\n\t\t\t\t\tcounter--;\n\t\t\t\t}\n\t\t\t}\n\t\t\tvalue = '\\\\' + codePoint.toString(16).toUpperCase() + ' ';\n\t\t} else {\n\t\t\tif (options.escapeEverything) {\n\t\t\t\tif (regexAnySingleEscape.test(character)) {\n\t\t\t\t\tvalue = '\\\\' + character;\n\t\t\t\t} else {\n\t\t\t\t\tvalue = '\\\\' + codePoint.toString(16).toUpperCase() + ' ';\n\t\t\t\t}\n\t\t\t} else if (/[\\t\\n\\f\\r\\x0B]/.test(character)) {\n\t\t\t\tvalue = '\\\\' + codePoint.toString(16).toUpperCase() + ' ';\n\t\t\t} else if (character == '\\\\' || !isIdentifier && (character == '\"' && quote == character || character == '\\'' && quote == character) || isIdentifier && regexSingleEscape.test(character)) {\n\t\t\t\tvalue = '\\\\' + character;\n\t\t\t} else {\n\t\t\t\tvalue = character;\n\t\t\t}\n\t\t}\n\t\toutput += value;\n\t}\n\n\tif (isIdentifier) {\n\t\tif (/^-[-\\d]/.test(output)) {\n\t\t\toutput = '\\\\-' + output.slice(1);\n\t\t} else if (/\\d/.test(firstChar)) {\n\t\t\toutput = '\\\\3' + firstChar + ' ' + output.slice(1);\n\t\t}\n\t}\n\n\t// Remove spaces after `\\HEX` escapes that are not followed by a hex digit,\n\t// since they’re redundant. Note that this is only possible if the escape\n\t// sequence isn’t preceded by an odd number of backslashes.\n\toutput = output.replace(regexExcessiveSpaces, function ($0, $1, $2) {\n\t\tif ($1 && $1.length % 2) {\n\t\t\t// It’s not safe to remove the space, so don’t.\n\t\t\treturn $0;\n\t\t}\n\t\t// Strip the space.\n\t\treturn ($1 || '') + $2;\n\t});\n\n\tif (!isIdentifier && options.wrap) {\n\t\treturn quote + output + quote;\n\t}\n\treturn output;\n};\n\n// Expose default options (so they can be overridden globally).\ncssesc.options = {\n\t'escapeEverything': false,\n\t'isIdentifier': false,\n\t'quotes': 'single',\n\t'wrap': false\n};\n\ncssesc.version = '3.0.0';\n\nmodule.exports = cssesc;\n",null,null,null,null,null,null,null,"// parse\n// =====\n\n// states\n// ------\n\nvar PLAIN = 0;\nvar STRINGS = 1;\nvar ESCAPING = 2;\nvar IDENTIFIER = 3;\nvar SEPARATING = 4;\nvar SPACEAFTERIDENTIFIER = 5;\n\n// patterns\n// --------\n\nvar identifierPattern = /[a-z0-9_-]/i;\nvar spacePattern = /[\\s\\t]/;\n\n// ---\n\nvar parse = function(str) {\n\n // vars\n // ----\n\n var starting = true;\n var state = PLAIN;\n var buffer = '';\n var i = 0;\n var quote;\n var c;\n\n // result\n // ------\n\n var names = [];\n\n // parse\n // -----\n\n while (true) {\n\n c = str[i];\n\n if (state === PLAIN) {\n\n if (!c && starting) {\n\n break;\n\n } else if (!c && !starting) {\n\n throw new Error('Parse error');\n\n } else if (c === '\"' || c === \"'\") {\n\n quote = c;\n state = STRINGS;\n starting = false;\n\n } else if (spacePattern.test(c)) {\n } else if (identifierPattern.test(c)) {\n\n state = IDENTIFIER;\n starting = false;\n i--;\n\n } else {\n\n throw new Error('Parse error');\n\n }\n\n } else if (state === STRINGS) {\n\n if (!c) {\n\n throw new Error('Parse Error');\n\n } else if (c === \"\\\\\") {\n\n state = ESCAPING;\n\n } else if (c === quote) {\n\n names.push(buffer);\n buffer = '';\n state = SEPARATING;\n\n } else {\n\n buffer += c;\n\n }\n\n } else if (state === ESCAPING) {\n\n if (c === quote || c === \"\\\\\") {\n\n buffer += c;\n state = STRINGS;\n\n } else {\n\n throw new Error('Parse error');\n\n }\n\n } else if (state === IDENTIFIER) {\n\n if (!c) {\n\n names.push(buffer);\n break;\n\n } else if (identifierPattern.test(c)) {\n\n buffer += c;\n\n } else if (c === ',') {\n\n names.push(buffer);\n buffer = '';\n state = PLAIN;\n\n } else if (spacePattern.test(c)) {\n\n state = SPACEAFTERIDENTIFIER;\n } else {\n\n throw new Error('Parse error');\n\n }\n } else if (state === SPACEAFTERIDENTIFIER) {\n\n if (!c) {\n\n names.push(buffer);\n break;\n\n } else if (identifierPattern.test(c)) {\n\n buffer += ' ' + c;\n state = IDENTIFIER;\n\n } else if (c === ',') {\n\n names.push(buffer);\n buffer = '';\n state = PLAIN;\n\n } else if (spacePattern.test(c)) {\n } else {\n\n throw new Error('Parse error');\n\n }\n\n } else if (state === SEPARATING) {\n\n if (!c) {\n\n break;\n\n } else if (c === ',') {\n\n state = PLAIN;\n\n } else if (spacePattern.test(c)) {\n } else {\n\n throw new Error('Parse error');\n\n }\n\n }\n\n i++;\n\n }\n\n // result\n // ------\n\n return names;\n\n};\n\n// stringify\n// =========\n\n// pattern\n// -------\n\nvar stringsPattern = /[^a-z0-9_-]/i;\n\n// ---\n\nvar stringify = function(names, options) {\n\n // quote\n // -----\n\n var quote = options && options.quote || '\"';\n if (quote !== '\"' && quote !== \"'\") {\n throw new Error('Quote must be `\\'` or `\"`');\n }\n var quotePattern = new RegExp(quote, 'g');\n\n // stringify\n // ---------\n\n var safeNames = [];\n\n for (var i = 0; i < names.length; ++i) {\n var name = names[i];\n\n if (stringsPattern.test(name)) {\n name = name\n .replace(/\\\\/g, \"\\\\\\\\\")\n .replace(quotePattern, \"\\\\\" + quote);\n name = quote + name + quote;\n }\n safeNames.push(name);\n }\n\n // result\n // ------\n\n return safeNames.join(', ');\n};\n\n// export\n// ======\n\nmodule.exports = {\n parse: parse,\n stringify: stringify,\n};\n",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"'use strict';\n\n\nvar paramCounts = { a: 7, c: 6, h: 1, l: 2, m: 2, r: 4, q: 4, s: 4, t: 2, v: 1, z: 0 };\n\nvar SPECIAL_SPACES = [\n 0x1680, 0x180E, 0x2000, 0x2001, 0x2002, 0x2003, 0x2004, 0x2005, 0x2006,\n 0x2007, 0x2008, 0x2009, 0x200A, 0x202F, 0x205F, 0x3000, 0xFEFF\n];\n\nfunction isSpace(ch) {\n return (ch === 0x0A) || (ch === 0x0D) || (ch === 0x2028) || (ch === 0x2029) || // Line terminators\n // White spaces\n (ch === 0x20) || (ch === 0x09) || (ch === 0x0B) || (ch === 0x0C) || (ch === 0xA0) ||\n (ch >= 0x1680 && SPECIAL_SPACES.indexOf(ch) >= 0);\n}\n\nfunction isCommand(code) {\n /*eslint-disable no-bitwise*/\n switch (code | 0x20) {\n case 0x6D/* m */:\n case 0x7A/* z */:\n case 0x6C/* l */:\n case 0x68/* h */:\n case 0x76/* v */:\n case 0x63/* c */:\n case 0x73/* s */:\n case 0x71/* q */:\n case 0x74/* t */:\n case 0x61/* a */:\n case 0x72/* r */:\n return true;\n }\n return false;\n}\n\nfunction isArc(code) {\n return (code | 0x20) === 0x61;\n}\n\nfunction isDigit(code) {\n return (code >= 48 && code <= 57); // 0..9\n}\n\nfunction isDigitStart(code) {\n return (code >= 48 && code <= 57) || /* 0..9 */\n code === 0x2B || /* + */\n code === 0x2D || /* - */\n code === 0x2E; /* . */\n}\n\n\nfunction State(path) {\n this.index = 0;\n this.path = path;\n this.max = path.length;\n this.result = [];\n this.param = 0.0;\n this.err = '';\n this.segmentStart = 0;\n this.data = [];\n}\n\nfunction skipSpaces(state) {\n while (state.index < state.max && isSpace(state.path.charCodeAt(state.index))) {\n state.index++;\n }\n}\n\n\nfunction scanFlag(state) {\n var ch = state.path.charCodeAt(state.index);\n\n if (ch === 0x30/* 0 */) {\n state.param = 0;\n state.index++;\n return;\n }\n\n if (ch === 0x31/* 1 */) {\n state.param = 1;\n state.index++;\n return;\n }\n\n state.err = 'SvgPath: arc flag can be 0 or 1 only (at pos ' + state.index + ')';\n}\n\n\nfunction scanParam(state) {\n var start = state.index,\n index = start,\n max = state.max,\n zeroFirst = false,\n hasCeiling = false,\n hasDecimal = false,\n hasDot = false,\n ch;\n\n if (index >= max) {\n state.err = 'SvgPath: missed param (at pos ' + index + ')';\n return;\n }\n ch = state.path.charCodeAt(index);\n\n if (ch === 0x2B/* + */ || ch === 0x2D/* - */) {\n index++;\n ch = (index < max) ? state.path.charCodeAt(index) : 0;\n }\n\n // This logic is shamelessly borrowed from Esprima\n // https://github.com/ariya/esprimas\n //\n if (!isDigit(ch) && ch !== 0x2E/* . */) {\n state.err = 'SvgPath: param should start with 0..9 or `.` (at pos ' + index + ')';\n return;\n }\n\n if (ch !== 0x2E/* . */) {\n zeroFirst = (ch === 0x30/* 0 */);\n index++;\n\n ch = (index < max) ? state.path.charCodeAt(index) : 0;\n\n if (zeroFirst && index < max) {\n // decimal number starts with '0' such as '09' is illegal.\n if (ch && isDigit(ch)) {\n state.err = 'SvgPath: numbers started with `0` such as `09` are illegal (at pos ' + start + ')';\n return;\n }\n }\n\n while (index < max && isDigit(state.path.charCodeAt(index))) {\n index++;\n hasCeiling = true;\n }\n ch = (index < max) ? state.path.charCodeAt(index) : 0;\n }\n\n if (ch === 0x2E/* . */) {\n hasDot = true;\n index++;\n while (isDigit(state.path.charCodeAt(index))) {\n index++;\n hasDecimal = true;\n }\n ch = (index < max) ? state.path.charCodeAt(index) : 0;\n }\n\n if (ch === 0x65/* e */ || ch === 0x45/* E */) {\n if (hasDot && !hasCeiling && !hasDecimal) {\n state.err = 'SvgPath: invalid float exponent (at pos ' + index + ')';\n return;\n }\n\n index++;\n\n ch = (index < max) ? state.path.charCodeAt(index) : 0;\n if (ch === 0x2B/* + */ || ch === 0x2D/* - */) {\n index++;\n }\n if (index < max && isDigit(state.path.charCodeAt(index))) {\n while (index < max && isDigit(state.path.charCodeAt(index))) {\n index++;\n }\n } else {\n state.err = 'SvgPath: invalid float exponent (at pos ' + index + ')';\n return;\n }\n }\n\n state.index = index;\n state.param = parseFloat(state.path.slice(start, index)) + 0.0;\n}\n\n\nfunction finalizeSegment(state) {\n var cmd, cmdLC;\n\n // Process duplicated commands (without comand name)\n\n // This logic is shamelessly borrowed from Raphael\n // https://github.com/DmitryBaranovskiy/raphael/\n //\n cmd = state.path[state.segmentStart];\n cmdLC = cmd.toLowerCase();\n\n var params = state.data;\n\n if (cmdLC === 'm' && params.length > 2) {\n state.result.push([ cmd, params[0], params[1] ]);\n params = params.slice(2);\n cmdLC = 'l';\n cmd = (cmd === 'm') ? 'l' : 'L';\n }\n\n if (cmdLC === 'r') {\n state.result.push([ cmd ].concat(params));\n } else {\n\n while (params.length >= paramCounts[cmdLC]) {\n state.result.push([ cmd ].concat(params.splice(0, paramCounts[cmdLC])));\n if (!paramCounts[cmdLC]) {\n break;\n }\n }\n }\n}\n\n\nfunction scanSegment(state) {\n var max = state.max,\n cmdCode, is_arc, comma_found, need_params, i;\n\n state.segmentStart = state.index;\n cmdCode = state.path.charCodeAt(state.index);\n is_arc = isArc(cmdCode);\n\n if (!isCommand(cmdCode)) {\n state.err = 'SvgPath: bad command ' + state.path[state.index] + ' (at pos ' + state.index + ')';\n return;\n }\n\n need_params = paramCounts[state.path[state.index].toLowerCase()];\n\n state.index++;\n skipSpaces(state);\n\n state.data = [];\n\n if (!need_params) {\n // Z\n finalizeSegment(state);\n return;\n }\n\n comma_found = false;\n\n for (;;) {\n for (i = need_params; i > 0; i--) {\n if (is_arc && (i === 3 || i === 4)) scanFlag(state);\n else scanParam(state);\n\n if (state.err.length) {\n return;\n }\n state.data.push(state.param);\n\n skipSpaces(state);\n comma_found = false;\n\n if (state.index < max && state.path.charCodeAt(state.index) === 0x2C/* , */) {\n state.index++;\n skipSpaces(state);\n comma_found = true;\n }\n }\n\n // after ',' param is mandatory\n if (comma_found) {\n continue;\n }\n\n if (state.index >= state.max) {\n break;\n }\n\n // Stop on next segment\n if (!isDigitStart(state.path.charCodeAt(state.index))) {\n break;\n }\n }\n\n finalizeSegment(state);\n}\n\n\n/* Returns array of segments:\n *\n * [\n * [ command, coord1, coord2, ... ]\n * ]\n */\nmodule.exports = function pathParse(svgPath) {\n var state = new State(svgPath);\n var max = state.max;\n\n skipSpaces(state);\n\n while (state.index < max && !state.err.length) {\n scanSegment(state);\n }\n\n if (state.err.length) {\n state.result = [];\n\n } else if (state.result.length) {\n\n if ('mM'.indexOf(state.result[0][0]) < 0) {\n state.err = 'SvgPath: string should start with `M` or `m`';\n state.result = [];\n } else {\n state.result[0][0] = 'M';\n }\n }\n\n return {\n err: state.err,\n segments: state.result\n };\n};\n","'use strict';\n\n// combine 2 matrixes\n// m1, m2 - [a, b, c, d, e, g]\n//\nfunction combine(m1, m2) {\n return [\n m1[0] * m2[0] + m1[2] * m2[1],\n m1[1] * m2[0] + m1[3] * m2[1],\n m1[0] * m2[2] + m1[2] * m2[3],\n m1[1] * m2[2] + m1[3] * m2[3],\n m1[0] * m2[4] + m1[2] * m2[5] + m1[4],\n m1[1] * m2[4] + m1[3] * m2[5] + m1[5]\n ];\n}\n\n\nfunction Matrix() {\n if (!(this instanceof Matrix)) { return new Matrix(); }\n this.queue = []; // list of matrixes to apply\n this.cache = null; // combined matrix cache\n}\n\n\nMatrix.prototype.matrix = function (m) {\n if (m[0] === 1 && m[1] === 0 && m[2] === 0 && m[3] === 1 && m[4] === 0 && m[5] === 0) {\n return this;\n }\n this.cache = null;\n this.queue.push(m);\n return this;\n};\n\n\nMatrix.prototype.translate = function (tx, ty) {\n if (tx !== 0 || ty !== 0) {\n this.cache = null;\n this.queue.push([ 1, 0, 0, 1, tx, ty ]);\n }\n return this;\n};\n\n\nMatrix.prototype.scale = function (sx, sy) {\n if (sx !== 1 || sy !== 1) {\n this.cache = null;\n this.queue.push([ sx, 0, 0, sy, 0, 0 ]);\n }\n return this;\n};\n\n\nMatrix.prototype.rotate = function (angle, rx, ry) {\n var rad, cos, sin;\n\n if (angle !== 0) {\n this.translate(rx, ry);\n\n rad = angle * Math.PI / 180;\n cos = Math.cos(rad);\n sin = Math.sin(rad);\n\n this.queue.push([ cos, sin, -sin, cos, 0, 0 ]);\n this.cache = null;\n\n this.translate(-rx, -ry);\n }\n return this;\n};\n\n\nMatrix.prototype.skewX = function (angle) {\n if (angle !== 0) {\n this.cache = null;\n this.queue.push([ 1, 0, Math.tan(angle * Math.PI / 180), 1, 0, 0 ]);\n }\n return this;\n};\n\n\nMatrix.prototype.skewY = function (angle) {\n if (angle !== 0) {\n this.cache = null;\n this.queue.push([ 1, Math.tan(angle * Math.PI / 180), 0, 1, 0, 0 ]);\n }\n return this;\n};\n\n\n// Flatten queue\n//\nMatrix.prototype.toArray = function () {\n if (this.cache) {\n return this.cache;\n }\n\n if (!this.queue.length) {\n this.cache = [ 1, 0, 0, 1, 0, 0 ];\n return this.cache;\n }\n\n this.cache = this.queue[0];\n\n if (this.queue.length === 1) {\n return this.cache;\n }\n\n for (var i = 1; i < this.queue.length; i++) {\n this.cache = combine(this.cache, this.queue[i]);\n }\n\n return this.cache;\n};\n\n\n// Apply list of matrixes to (x,y) point.\n// If `isRelative` set, `translate` component of matrix will be skipped\n//\nMatrix.prototype.calc = function (x, y, isRelative) {\n var m;\n\n // Don't change point on empty transforms queue\n if (!this.queue.length) { return [ x, y ]; }\n\n // Calculate final matrix, if not exists\n //\n // NB. if you deside to apply transforms to point one-by-one,\n // they should be taken in reverse order\n\n if (!this.cache) {\n this.cache = this.toArray();\n }\n\n m = this.cache;\n\n // Apply matrix to point\n return [\n x * m[0] + y * m[2] + (isRelative ? 0 : m[4]),\n x * m[1] + y * m[3] + (isRelative ? 0 : m[5])\n ];\n};\n\n\nmodule.exports = Matrix;\n","'use strict';\n\n\nvar Matrix = require('./matrix');\n\nvar operations = {\n matrix: true,\n scale: true,\n rotate: true,\n translate: true,\n skewX: true,\n skewY: true\n};\n\nvar CMD_SPLIT_RE = /\\s*(matrix|translate|scale|rotate|skewX|skewY)\\s*\\(\\s*(.+?)\\s*\\)[\\s,]*/;\nvar PARAMS_SPLIT_RE = /[\\s,]+/;\n\n\nmodule.exports = function transformParse(transformString) {\n var matrix = new Matrix();\n var cmd, params;\n\n // Split value into ['', 'translate', '10 50', '', 'scale', '2', '', 'rotate', '-45', '']\n transformString.split(CMD_SPLIT_RE).forEach(function (item) {\n\n // Skip empty elements\n if (!item.length) { return; }\n\n // remember operation\n if (typeof operations[item] !== 'undefined') {\n cmd = item;\n return;\n }\n\n // extract params & att operation to matrix\n params = item.split(PARAMS_SPLIT_RE).map(function (i) {\n return +i || 0;\n });\n\n // If params count is not correct - ignore command\n switch (cmd) {\n case 'matrix':\n if (params.length === 6) {\n matrix.matrix(params);\n }\n return;\n\n case 'scale':\n if (params.length === 1) {\n matrix.scale(params[0], params[0]);\n } else if (params.length === 2) {\n matrix.scale(params[0], params[1]);\n }\n return;\n\n case 'rotate':\n if (params.length === 1) {\n matrix.rotate(params[0], 0, 0);\n } else if (params.length === 3) {\n matrix.rotate(params[0], params[1], params[2]);\n }\n return;\n\n case 'translate':\n if (params.length === 1) {\n matrix.translate(params[0], 0);\n } else if (params.length === 2) {\n matrix.translate(params[0], params[1]);\n }\n return;\n\n case 'skewX':\n if (params.length === 1) {\n matrix.skewX(params[0]);\n }\n return;\n\n case 'skewY':\n if (params.length === 1) {\n matrix.skewY(params[0]);\n }\n return;\n }\n });\n\n return matrix;\n};\n","// Convert an arc to a sequence of cubic bézier curves\n//\n'use strict';\n\n\nvar TAU = Math.PI * 2;\n\n\n/* eslint-disable space-infix-ops */\n\n// Calculate an angle between two unit vectors\n//\n// Since we measure angle between radii of circular arcs,\n// we can use simplified math (without length normalization)\n//\nfunction unit_vector_angle(ux, uy, vx, vy) {\n var sign = (ux * vy - uy * vx < 0) ? -1 : 1;\n var dot = ux * vx + uy * vy;\n\n // Add this to work with arbitrary vectors:\n // dot /= Math.sqrt(ux * ux + uy * uy) * Math.sqrt(vx * vx + vy * vy);\n\n // rounding errors, e.g. -1.0000000000000002 can screw up this\n if (dot > 1.0) { dot = 1.0; }\n if (dot < -1.0) { dot = -1.0; }\n\n return sign * Math.acos(dot);\n}\n\n\n// Convert from endpoint to center parameterization,\n// see http://www.w3.org/TR/SVG11/implnote.html#ArcImplementationNotes\n//\n// Return [cx, cy, theta1, delta_theta]\n//\nfunction get_arc_center(x1, y1, x2, y2, fa, fs, rx, ry, sin_phi, cos_phi) {\n // Step 1.\n //\n // Moving an ellipse so origin will be the middlepoint between our two\n // points. After that, rotate it to line up ellipse axes with coordinate\n // axes.\n //\n var x1p = cos_phi*(x1-x2)/2 + sin_phi*(y1-y2)/2;\n var y1p = -sin_phi*(x1-x2)/2 + cos_phi*(y1-y2)/2;\n\n var rx_sq = rx * rx;\n var ry_sq = ry * ry;\n var x1p_sq = x1p * x1p;\n var y1p_sq = y1p * y1p;\n\n // Step 2.\n //\n // Compute coordinates of the centre of this ellipse (cx', cy')\n // in the new coordinate system.\n //\n var radicant = (rx_sq * ry_sq) - (rx_sq * y1p_sq) - (ry_sq * x1p_sq);\n\n if (radicant < 0) {\n // due to rounding errors it might be e.g. -1.3877787807814457e-17\n radicant = 0;\n }\n\n radicant /= (rx_sq * y1p_sq) + (ry_sq * x1p_sq);\n radicant = Math.sqrt(radicant) * (fa === fs ? -1 : 1);\n\n var cxp = radicant * rx/ry * y1p;\n var cyp = radicant * -ry/rx * x1p;\n\n // Step 3.\n //\n // Transform back to get centre coordinates (cx, cy) in the original\n // coordinate system.\n //\n var cx = cos_phi*cxp - sin_phi*cyp + (x1+x2)/2;\n var cy = sin_phi*cxp + cos_phi*cyp + (y1+y2)/2;\n\n // Step 4.\n //\n // Compute angles (theta1, delta_theta).\n //\n var v1x = (x1p - cxp) / rx;\n var v1y = (y1p - cyp) / ry;\n var v2x = (-x1p - cxp) / rx;\n var v2y = (-y1p - cyp) / ry;\n\n var theta1 = unit_vector_angle(1, 0, v1x, v1y);\n var delta_theta = unit_vector_angle(v1x, v1y, v2x, v2y);\n\n if (fs === 0 && delta_theta > 0) {\n delta_theta -= TAU;\n }\n if (fs === 1 && delta_theta < 0) {\n delta_theta += TAU;\n }\n\n return [ cx, cy, theta1, delta_theta ];\n}\n\n//\n// Approximate one unit arc segment with bézier curves,\n// see http://math.stackexchange.com/questions/873224\n//\nfunction approximate_unit_arc(theta1, delta_theta) {\n var alpha = 4/3 * Math.tan(delta_theta/4);\n\n var x1 = Math.cos(theta1);\n var y1 = Math.sin(theta1);\n var x2 = Math.cos(theta1 + delta_theta);\n var y2 = Math.sin(theta1 + delta_theta);\n\n return [ x1, y1, x1 - y1*alpha, y1 + x1*alpha, x2 + y2*alpha, y2 - x2*alpha, x2, y2 ];\n}\n\nmodule.exports = function a2c(x1, y1, x2, y2, fa, fs, rx, ry, phi) {\n var sin_phi = Math.sin(phi * TAU / 360);\n var cos_phi = Math.cos(phi * TAU / 360);\n\n // Make sure radii are valid\n //\n var x1p = cos_phi*(x1-x2)/2 + sin_phi*(y1-y2)/2;\n var y1p = -sin_phi*(x1-x2)/2 + cos_phi*(y1-y2)/2;\n\n if (x1p === 0 && y1p === 0) {\n // we're asked to draw line to itself\n return [];\n }\n\n if (rx === 0 || ry === 0) {\n // one of the radii is zero\n return [];\n }\n\n\n // Compensate out-of-range radii\n //\n rx = Math.abs(rx);\n ry = Math.abs(ry);\n\n var lambda = (x1p * x1p) / (rx * rx) + (y1p * y1p) / (ry * ry);\n if (lambda > 1) {\n rx *= Math.sqrt(lambda);\n ry *= Math.sqrt(lambda);\n }\n\n\n // Get center parameters (cx, cy, theta1, delta_theta)\n //\n var cc = get_arc_center(x1, y1, x2, y2, fa, fs, rx, ry, sin_phi, cos_phi);\n\n var result = [];\n var theta1 = cc[2];\n var delta_theta = cc[3];\n\n // Split an arc to multiple segments, so each segment\n // will be less than τ/4 (= 90°)\n //\n var segments = Math.max(Math.ceil(Math.abs(delta_theta) / (TAU / 4)), 1);\n delta_theta /= segments;\n\n for (var i = 0; i < segments; i++) {\n result.push(approximate_unit_arc(theta1, delta_theta));\n theta1 += delta_theta;\n }\n\n // We have a bezier approximation of a unit circle,\n // now need to transform back to the original ellipse\n //\n return result.map(function (curve) {\n for (var i = 0; i < curve.length; i += 2) {\n var x = curve[i + 0];\n var y = curve[i + 1];\n\n // scale\n x *= rx;\n y *= ry;\n\n // rotate\n var xp = cos_phi*x - sin_phi*y;\n var yp = sin_phi*x + cos_phi*y;\n\n // translate\n curve[i + 0] = xp + cc[0];\n curve[i + 1] = yp + cc[1];\n }\n\n return curve;\n });\n};\n","'use strict';\n\n/* eslint-disable space-infix-ops */\n\n// The precision used to consider an ellipse as a circle\n//\nvar epsilon = 0.0000000001;\n\n// To convert degree in radians\n//\nvar torad = Math.PI / 180;\n\n// Class constructor :\n// an ellipse centred at 0 with radii rx,ry and x - axis - angle ax.\n//\nfunction Ellipse(rx, ry, ax) {\n if (!(this instanceof Ellipse)) { return new Ellipse(rx, ry, ax); }\n this.rx = rx;\n this.ry = ry;\n this.ax = ax;\n}\n\n// Apply a linear transform m to the ellipse\n// m is an array representing a matrix :\n// - -\n// | m[0] m[2] |\n// | m[1] m[3] |\n// - -\n//\nEllipse.prototype.transform = function (m) {\n // We consider the current ellipse as image of the unit circle\n // by first scale(rx,ry) and then rotate(ax) ...\n // So we apply ma = m x rotate(ax) x scale(rx,ry) to the unit circle.\n var c = Math.cos(this.ax * torad), s = Math.sin(this.ax * torad);\n var ma = [\n this.rx * (m[0]*c + m[2]*s),\n this.rx * (m[1]*c + m[3]*s),\n this.ry * (-m[0]*s + m[2]*c),\n this.ry * (-m[1]*s + m[3]*c)\n ];\n\n // ma * transpose(ma) = [ J L ]\n // [ L K ]\n // L is calculated later (if the image is not a circle)\n var J = ma[0]*ma[0] + ma[2]*ma[2],\n K = ma[1]*ma[1] + ma[3]*ma[3];\n\n // the discriminant of the characteristic polynomial of ma * transpose(ma)\n var D = ((ma[0]-ma[3])*(ma[0]-ma[3]) + (ma[2]+ma[1])*(ma[2]+ma[1])) *\n ((ma[0]+ma[3])*(ma[0]+ma[3]) + (ma[2]-ma[1])*(ma[2]-ma[1]));\n\n // the \"mean eigenvalue\"\n var JK = (J + K) / 2;\n\n // check if the image is (almost) a circle\n if (D < epsilon * JK) {\n // if it is\n this.rx = this.ry = Math.sqrt(JK);\n this.ax = 0;\n return this;\n }\n\n // if it is not a circle\n var L = ma[0]*ma[1] + ma[2]*ma[3];\n\n D = Math.sqrt(D);\n\n // {l1,l2} = the two eigen values of ma * transpose(ma)\n var l1 = JK + D/2,\n l2 = JK - D/2;\n // the x - axis - rotation angle is the argument of the l1 - eigenvector\n /*eslint-disable indent*/\n this.ax = (Math.abs(L) < epsilon && Math.abs(l1 - K) < epsilon) ?\n 90\n :\n Math.atan(Math.abs(L) > Math.abs(l1 - K) ?\n (l1 - J) / L\n :\n L / (l1 - K)\n ) * 180 / Math.PI;\n /*eslint-enable indent*/\n\n // if ax > 0 => rx = sqrt(l1), ry = sqrt(l2), else exchange axes and ax += 90\n if (this.ax >= 0) {\n // if ax in [0,90]\n this.rx = Math.sqrt(l1);\n this.ry = Math.sqrt(l2);\n } else {\n // if ax in ]-90,0[ => exchange axes\n this.ax += 90;\n this.rx = Math.sqrt(l2);\n this.ry = Math.sqrt(l1);\n }\n\n return this;\n};\n\n// Check if the ellipse is (almost) degenerate, i.e. rx = 0 or ry = 0\n//\nEllipse.prototype.isDegenerate = function () {\n return (this.rx < epsilon * this.ry || this.ry < epsilon * this.rx);\n};\n\nmodule.exports = Ellipse;\n","// SVG Path transformations library\n//\n// Usage:\n//\n// SvgPath('...')\n// .translate(-150, -100)\n// .scale(0.5)\n// .translate(-150, -100)\n// .toFixed(1)\n// .toString()\n//\n\n'use strict';\n\n\nvar pathParse = require('./path_parse');\nvar transformParse = require('./transform_parse');\nvar matrix = require('./matrix');\nvar a2c = require('./a2c');\nvar ellipse = require('./ellipse');\n\n\n// Class constructor\n//\nfunction SvgPath(path) {\n if (!(this instanceof SvgPath)) { return new SvgPath(path); }\n\n var pstate = pathParse(path);\n\n // Array of path segments.\n // Each segment is array [command, param1, param2, ...]\n this.segments = pstate.segments;\n\n // Error message on parse error.\n this.err = pstate.err;\n\n // Transforms stack for lazy evaluation\n this.__stack = [];\n}\n\nSvgPath.from = function (src) {\n if (typeof src === 'string') return new SvgPath(src);\n\n if (src instanceof SvgPath) {\n // Create empty object\n var s = new SvgPath('');\n\n // Clone properies\n s.err = src.err;\n s.segments = src.segments.map(function (sgm) { return sgm.slice(); });\n s.__stack = src.__stack.map(function (m) {\n return matrix().matrix(m.toArray());\n });\n\n return s;\n }\n\n throw new Error('SvgPath.from: invalid param type ' + src);\n};\n\n\nSvgPath.prototype.__matrix = function (m) {\n var self = this, i;\n\n // Quick leave for empty matrix\n if (!m.queue.length) { return; }\n\n this.iterate(function (s, index, x, y) {\n var p, result, name, isRelative;\n\n switch (s[0]) {\n\n // Process 'assymetric' commands separately\n case 'v':\n p = m.calc(0, s[1], true);\n result = (p[0] === 0) ? [ 'v', p[1] ] : [ 'l', p[0], p[1] ];\n break;\n\n case 'V':\n p = m.calc(x, s[1], false);\n result = (p[0] === m.calc(x, y, false)[0]) ? [ 'V', p[1] ] : [ 'L', p[0], p[1] ];\n break;\n\n case 'h':\n p = m.calc(s[1], 0, true);\n result = (p[1] === 0) ? [ 'h', p[0] ] : [ 'l', p[0], p[1] ];\n break;\n\n case 'H':\n p = m.calc(s[1], y, false);\n result = (p[1] === m.calc(x, y, false)[1]) ? [ 'H', p[0] ] : [ 'L', p[0], p[1] ];\n break;\n\n case 'a':\n case 'A':\n // ARC is: ['A', rx, ry, x-axis-rotation, large-arc-flag, sweep-flag, x, y]\n\n // Drop segment if arc is empty (end point === start point)\n /*if ((s[0] === 'A' && s[6] === x && s[7] === y) ||\n (s[0] === 'a' && s[6] === 0 && s[7] === 0)) {\n return [];\n }*/\n\n // Transform rx, ry and the x-axis-rotation\n var ma = m.toArray();\n var e = ellipse(s[1], s[2], s[3]).transform(ma);\n\n // flip sweep-flag if matrix is not orientation-preserving\n if (ma[0] * ma[3] - ma[1] * ma[2] < 0) {\n s[5] = s[5] ? '0' : '1';\n }\n\n // Transform end point as usual (without translation for relative notation)\n p = m.calc(s[6], s[7], s[0] === 'a');\n\n // Empty arcs can be ignored by renderer, but should not be dropped\n // to avoid collisions with `S A S` and so on. Replace with empty line.\n if ((s[0] === 'A' && s[6] === x && s[7] === y) ||\n (s[0] === 'a' && s[6] === 0 && s[7] === 0)) {\n result = [ s[0] === 'a' ? 'l' : 'L', p[0], p[1] ];\n break;\n }\n\n // if the resulting ellipse is (almost) a segment ...\n if (e.isDegenerate()) {\n // replace the arc by a line\n result = [ s[0] === 'a' ? 'l' : 'L', p[0], p[1] ];\n } else {\n // if it is a real ellipse\n // s[0], s[4] and s[5] are not modified\n result = [ s[0], e.rx, e.ry, e.ax, s[4], s[5], p[0], p[1] ];\n }\n\n break;\n\n case 'm':\n // Edge case. The very first `m` should be processed as absolute, if happens.\n // Make sense for coord shift transforms.\n isRelative = index > 0;\n\n p = m.calc(s[1], s[2], isRelative);\n result = [ 'm', p[0], p[1] ];\n break;\n\n default:\n name = s[0];\n result = [ name ];\n isRelative = (name.toLowerCase() === name);\n\n // Apply transformations to the segment\n for (i = 1; i < s.length; i += 2) {\n p = m.calc(s[i], s[i + 1], isRelative);\n result.push(p[0], p[1]);\n }\n }\n\n self.segments[index] = result;\n }, true);\n};\n\n\n// Apply stacked commands\n//\nSvgPath.prototype.__evaluateStack = function () {\n var m, i;\n\n if (!this.__stack.length) { return; }\n\n if (this.__stack.length === 1) {\n this.__matrix(this.__stack[0]);\n this.__stack = [];\n return;\n }\n\n m = matrix();\n i = this.__stack.length;\n\n while (--i >= 0) {\n m.matrix(this.__stack[i].toArray());\n }\n\n this.__matrix(m);\n this.__stack = [];\n};\n\n\n// Convert processed SVG Path back to string\n//\nSvgPath.prototype.toString = function () {\n var elements = [], skipCmd, cmd;\n\n this.__evaluateStack();\n\n for (var i = 0; i < this.segments.length; i++) {\n // remove repeating commands names\n cmd = this.segments[i][0];\n skipCmd = i > 0 && cmd !== 'm' && cmd !== 'M' && cmd === this.segments[i - 1][0];\n elements = elements.concat(skipCmd ? this.segments[i].slice(1) : this.segments[i]);\n }\n\n return elements.join(' ')\n // Optimizations: remove spaces around commands & before `-`\n //\n // We could also remove leading zeros for `0.5`-like values,\n // but their count is too small to spend time for.\n .replace(/ ?([achlmqrstvz]) ?/gi, '$1')\n .replace(/ \\-/g, '-')\n // workaround for FontForge SVG importing bug\n .replace(/zm/g, 'z m');\n};\n\n\n// Translate path to (x [, y])\n//\nSvgPath.prototype.translate = function (x, y) {\n this.__stack.push(matrix().translate(x, y || 0));\n return this;\n};\n\n\n// Scale path to (sx [, sy])\n// sy = sx if not defined\n//\nSvgPath.prototype.scale = function (sx, sy) {\n this.__stack.push(matrix().scale(sx, (!sy && (sy !== 0)) ? sx : sy));\n return this;\n};\n\n\n// Rotate path around point (sx [, sy])\n// sy = sx if not defined\n//\nSvgPath.prototype.rotate = function (angle, rx, ry) {\n this.__stack.push(matrix().rotate(angle, rx || 0, ry || 0));\n return this;\n};\n\n\n// Skew path along the X axis by `degrees` angle\n//\nSvgPath.prototype.skewX = function (degrees) {\n this.__stack.push(matrix().skewX(degrees));\n return this;\n};\n\n\n// Skew path along the Y axis by `degrees` angle\n//\nSvgPath.prototype.skewY = function (degrees) {\n this.__stack.push(matrix().skewY(degrees));\n return this;\n};\n\n\n// Apply matrix transform (array of 6 elements)\n//\nSvgPath.prototype.matrix = function (m) {\n this.__stack.push(matrix().matrix(m));\n return this;\n};\n\n\n// Transform path according to \"transform\" attr of SVG spec\n//\nSvgPath.prototype.transform = function (transformString) {\n if (!transformString.trim()) {\n return this;\n }\n this.__stack.push(transformParse(transformString));\n return this;\n};\n\n\n// Round coords with given decimal precition.\n// 0 by default (to integers)\n//\nSvgPath.prototype.round = function (d) {\n var contourStartDeltaX = 0, contourStartDeltaY = 0, deltaX = 0, deltaY = 0, l;\n\n d = d || 0;\n\n this.__evaluateStack();\n\n this.segments.forEach(function (s) {\n var isRelative = (s[0].toLowerCase() === s[0]);\n\n switch (s[0]) {\n case 'H':\n case 'h':\n if (isRelative) { s[1] += deltaX; }\n deltaX = s[1] - s[1].toFixed(d);\n s[1] = +s[1].toFixed(d);\n return;\n\n case 'V':\n case 'v':\n if (isRelative) { s[1] += deltaY; }\n deltaY = s[1] - s[1].toFixed(d);\n s[1] = +s[1].toFixed(d);\n return;\n\n case 'Z':\n case 'z':\n deltaX = contourStartDeltaX;\n deltaY = contourStartDeltaY;\n return;\n\n case 'M':\n case 'm':\n if (isRelative) {\n s[1] += deltaX;\n s[2] += deltaY;\n }\n\n deltaX = s[1] - s[1].toFixed(d);\n deltaY = s[2] - s[2].toFixed(d);\n\n contourStartDeltaX = deltaX;\n contourStartDeltaY = deltaY;\n\n s[1] = +s[1].toFixed(d);\n s[2] = +s[2].toFixed(d);\n return;\n\n case 'A':\n case 'a':\n // [cmd, rx, ry, x-axis-rotation, large-arc-flag, sweep-flag, x, y]\n if (isRelative) {\n s[6] += deltaX;\n s[7] += deltaY;\n }\n\n deltaX = s[6] - s[6].toFixed(d);\n deltaY = s[7] - s[7].toFixed(d);\n\n s[1] = +s[1].toFixed(d);\n s[2] = +s[2].toFixed(d);\n s[3] = +s[3].toFixed(d + 2); // better precision for rotation\n s[6] = +s[6].toFixed(d);\n s[7] = +s[7].toFixed(d);\n return;\n\n default:\n // a c l q s t\n l = s.length;\n\n if (isRelative) {\n s[l - 2] += deltaX;\n s[l - 1] += deltaY;\n }\n\n deltaX = s[l - 2] - s[l - 2].toFixed(d);\n deltaY = s[l - 1] - s[l - 1].toFixed(d);\n\n s.forEach(function (val, i) {\n if (!i) { return; }\n s[i] = +s[i].toFixed(d);\n });\n return;\n }\n });\n\n return this;\n};\n\n\n// Apply iterator function to all segments. If function returns result,\n// current segment will be replaced to array of returned segments.\n// If empty array is returned, current regment will be deleted.\n//\nSvgPath.prototype.iterate = function (iterator, keepLazyStack) {\n var segments = this.segments,\n replacements = {},\n needReplace = false,\n lastX = 0,\n lastY = 0,\n countourStartX = 0,\n countourStartY = 0;\n var i, j, newSegments;\n\n if (!keepLazyStack) {\n this.__evaluateStack();\n }\n\n segments.forEach(function (s, index) {\n\n var res = iterator(s, index, lastX, lastY);\n\n if (Array.isArray(res)) {\n replacements[index] = res;\n needReplace = true;\n }\n\n var isRelative = (s[0] === s[0].toLowerCase());\n\n // calculate absolute X and Y\n switch (s[0]) {\n case 'm':\n case 'M':\n lastX = s[1] + (isRelative ? lastX : 0);\n lastY = s[2] + (isRelative ? lastY : 0);\n countourStartX = lastX;\n countourStartY = lastY;\n return;\n\n case 'h':\n case 'H':\n lastX = s[1] + (isRelative ? lastX : 0);\n return;\n\n case 'v':\n case 'V':\n lastY = s[1] + (isRelative ? lastY : 0);\n return;\n\n case 'z':\n case 'Z':\n // That make sence for multiple contours\n lastX = countourStartX;\n lastY = countourStartY;\n return;\n\n default:\n lastX = s[s.length - 2] + (isRelative ? lastX : 0);\n lastY = s[s.length - 1] + (isRelative ? lastY : 0);\n }\n });\n\n // Replace segments if iterator return results\n\n if (!needReplace) { return this; }\n\n newSegments = [];\n\n for (i = 0; i < segments.length; i++) {\n if (typeof replacements[i] !== 'undefined') {\n for (j = 0; j < replacements[i].length; j++) {\n newSegments.push(replacements[i][j]);\n }\n } else {\n newSegments.push(segments[i]);\n }\n }\n\n this.segments = newSegments;\n\n return this;\n};\n\n\n// Converts segments from relative to absolute\n//\nSvgPath.prototype.abs = function () {\n\n this.iterate(function (s, index, x, y) {\n var name = s[0],\n nameUC = name.toUpperCase(),\n i;\n\n // Skip absolute commands\n if (name === nameUC) { return; }\n\n s[0] = nameUC;\n\n switch (name) {\n case 'v':\n // v has shifted coords parity\n s[1] += y;\n return;\n\n case 'a':\n // ARC is: ['A', rx, ry, x-axis-rotation, large-arc-flag, sweep-flag, x, y]\n // touch x, y only\n s[6] += x;\n s[7] += y;\n return;\n\n default:\n for (i = 1; i < s.length; i++) {\n s[i] += i % 2 ? x : y; // odd values are X, even - Y\n }\n }\n }, true);\n\n return this;\n};\n\n\n// Converts segments from absolute to relative\n//\nSvgPath.prototype.rel = function () {\n\n this.iterate(function (s, index, x, y) {\n var name = s[0],\n nameLC = name.toLowerCase(),\n i;\n\n // Skip relative commands\n if (name === nameLC) { return; }\n\n // Don't touch the first M to avoid potential confusions.\n if (index === 0 && name === 'M') { return; }\n\n s[0] = nameLC;\n\n switch (name) {\n case 'V':\n // V has shifted coords parity\n s[1] -= y;\n return;\n\n case 'A':\n // ARC is: ['A', rx, ry, x-axis-rotation, large-arc-flag, sweep-flag, x, y]\n // touch x, y only\n s[6] -= x;\n s[7] -= y;\n return;\n\n default:\n for (i = 1; i < s.length; i++) {\n s[i] -= i % 2 ? x : y; // odd values are X, even - Y\n }\n }\n }, true);\n\n return this;\n};\n\n\n// Converts arcs to cubic bézier curves\n//\nSvgPath.prototype.unarc = function () {\n this.iterate(function (s, index, x, y) {\n var new_segments, nextX, nextY, result = [], name = s[0];\n\n // Skip anything except arcs\n if (name !== 'A' && name !== 'a') { return null; }\n\n if (name === 'a') {\n // convert relative arc coordinates to absolute\n nextX = x + s[6];\n nextY = y + s[7];\n } else {\n nextX = s[6];\n nextY = s[7];\n }\n\n new_segments = a2c(x, y, nextX, nextY, s[4], s[5], s[1], s[2], s[3]);\n\n // Degenerated arcs can be ignored by renderer, but should not be dropped\n // to avoid collisions with `S A S` and so on. Replace with empty line.\n if (new_segments.length === 0) {\n return [ [ s[0] === 'a' ? 'l' : 'L', s[6], s[7] ] ];\n }\n\n new_segments.forEach(function (s) {\n result.push([ 'C', s[2], s[3], s[4], s[5], s[6], s[7] ]);\n });\n\n return result;\n });\n\n return this;\n};\n\n\n// Converts smooth curves (with missed control point) to generic curves\n//\nSvgPath.prototype.unshort = function () {\n var segments = this.segments;\n var prevControlX, prevControlY, prevSegment;\n var curControlX, curControlY;\n\n // TODO: add lazy evaluation flag when relative commands supported\n\n this.iterate(function (s, idx, x, y) {\n var name = s[0], nameUC = name.toUpperCase(), isRelative;\n\n // First command MUST be M|m, it's safe to skip.\n // Protect from access to [-1] for sure.\n if (!idx) { return; }\n\n if (nameUC === 'T') { // quadratic curve\n isRelative = (name === 't');\n\n prevSegment = segments[idx - 1];\n\n if (prevSegment[0] === 'Q') {\n prevControlX = prevSegment[1] - x;\n prevControlY = prevSegment[2] - y;\n } else if (prevSegment[0] === 'q') {\n prevControlX = prevSegment[1] - prevSegment[3];\n prevControlY = prevSegment[2] - prevSegment[4];\n } else {\n prevControlX = 0;\n prevControlY = 0;\n }\n\n curControlX = -prevControlX;\n curControlY = -prevControlY;\n\n if (!isRelative) {\n curControlX += x;\n curControlY += y;\n }\n\n segments[idx] = [\n isRelative ? 'q' : 'Q',\n curControlX, curControlY,\n s[1], s[2]\n ];\n\n } else if (nameUC === 'S') { // cubic curve\n isRelative = (name === 's');\n\n prevSegment = segments[idx - 1];\n\n if (prevSegment[0] === 'C') {\n prevControlX = prevSegment[3] - x;\n prevControlY = prevSegment[4] - y;\n } else if (prevSegment[0] === 'c') {\n prevControlX = prevSegment[3] - prevSegment[5];\n prevControlY = prevSegment[4] - prevSegment[6];\n } else {\n prevControlX = 0;\n prevControlY = 0;\n }\n\n curControlX = -prevControlX;\n curControlY = -prevControlY;\n\n if (!isRelative) {\n curControlX += x;\n curControlY += y;\n }\n\n segments[idx] = [\n isRelative ? 'c' : 'C',\n curControlX, curControlY,\n s[1], s[2], s[3], s[4]\n ];\n }\n });\n\n return this;\n};\n\n\nmodule.exports = SvgPath;\n",null,null,null,null,null,null,null,null,null,null,null,null,null,"// Calculate the specificity for a selector by dividing it into simple selectors and counting them\nvar calculate = function(input) {\n\tvar selectors,\n\t\tselector,\n\t\ti,\n\t\tlen,\n\t\tresults = [];\n\n\t// Separate input by commas\n\tselectors = input.split(',');\n\n\tfor (i = 0, len = selectors.length; i < len; i += 1) {\n\t\tselector = selectors[i];\n\t\tif (selector.length > 0) {\n\t\t\tresults.push(calculateSingle(selector));\n\t\t}\n\t}\n\n\treturn results;\n};\n\n/**\n * Calculates the specificity of CSS selectors\n * http://www.w3.org/TR/css3-selectors/#specificity\n *\n * Returns an object with the following properties:\n * - selector: the input\n * - specificity: e.g. 0,1,0,0\n * - parts: array with details about each part of the selector that counts towards the specificity\n * - specificityArray: e.g. [0, 1, 0, 0]\n */\nvar calculateSingle = function(input) {\n\tvar selector = input,\n\t\tfindMatch,\n\t\ttypeCount = {\n\t\t\t'a': 0,\n\t\t\t'b': 0,\n\t\t\t'c': 0\n\t\t},\n\t\tparts = [],\n\t\t// The following regular expressions assume that selectors matching the preceding regular expressions have been removed\n\t\tattributeRegex = /(\\[[^\\]]+\\])/g,\n\t\tidRegex = /(#[^\\#\\s\\+>~\\.\\[:\\)]+)/g,\n\t\tclassRegex = /(\\.[^\\s\\+>~\\.\\[:\\)]+)/g,\n\t\tpseudoElementRegex = /(::[^\\s\\+>~\\.\\[:]+|:first-line|:first-letter|:before|:after)/gi,\n\t\t// A regex for pseudo classes with brackets - :nth-child(), :nth-last-child(), :nth-of-type(), :nth-last-type(), :lang()\n\t\t// The negation psuedo class (:not) is filtered out because specificity is calculated on its argument\n\t\t// :global and :local are filtered out - they look like psuedo classes but are an identifier for CSS Modules\n\t\tpseudoClassWithBracketsRegex = /(:(?!not|global|local)[\\w-]+\\([^\\)]*\\))/gi,\n\t\t// A regex for other pseudo classes, which don't have brackets\n\t\tpseudoClassRegex = /(:(?!not|global|local)[^\\s\\+>~\\.\\[:]+)/g,\n\t\telementRegex = /([^\\s\\+>~\\.\\[:]+)/g;\n\n\t// Find matches for a regular expression in a string and push their details to parts\n\t// Type is \"a\" for IDs, \"b\" for classes, attributes and pseudo-classes and \"c\" for elements and pseudo-elements\n\tfindMatch = function(regex, type) {\n\t\tvar matches, i, len, match, index, length;\n\t\tif (regex.test(selector)) {\n\t\t\tmatches = selector.match(regex);\n\t\t\tfor (i = 0, len = matches.length; i < len; i += 1) {\n\t\t\t\ttypeCount[type] += 1;\n\t\t\t\tmatch = matches[i];\n\t\t\t\tindex = selector.indexOf(match);\n\t\t\t\tlength = match.length;\n\t\t\t\tparts.push({\n\t\t\t\t\tselector: input.substr(index, length),\n\t\t\t\t\ttype: type,\n\t\t\t\t\tindex: index,\n\t\t\t\t\tlength: length\n\t\t\t\t});\n\t\t\t\t// Replace this simple selector with whitespace so it won't be counted in further simple selectors\n\t\t\t\tselector = selector.replace(match, Array(length + 1).join(' '));\n\t\t\t}\n\t\t}\n\t};\n\n\t// Replace escaped characters with plain text, using the \"A\" character\n\t// https://www.w3.org/TR/CSS21/syndata.html#characters\n\t(function() {\n\t\tvar replaceWithPlainText = function(regex) {\n\t\t\t\tvar matches, i, len, match;\n\t\t\t\tif (regex.test(selector)) {\n\t\t\t\t\tmatches = selector.match(regex);\n\t\t\t\t\tfor (i = 0, len = matches.length; i < len; i += 1) {\n\t\t\t\t\t\tmatch = matches[i];\n\t\t\t\t\t\tselector = selector.replace(match, Array(match.length + 1).join('A'));\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\t// Matches a backslash followed by six hexadecimal digits followed by an optional single whitespace character\n\t\t\tescapeHexadecimalRegex = /\\\\[0-9A-Fa-f]{6}\\s?/g,\n\t\t\t// Matches a backslash followed by fewer than six hexadecimal digits followed by a mandatory single whitespace character\n\t\t\tescapeHexadecimalRegex2 = /\\\\[0-9A-Fa-f]{1,5}\\s/g,\n\t\t\t// Matches a backslash followed by any character\n\t\t\tescapeSpecialCharacter = /\\\\./g;\n\n\t\treplaceWithPlainText(escapeHexadecimalRegex);\n\t\treplaceWithPlainText(escapeHexadecimalRegex2);\n\t\treplaceWithPlainText(escapeSpecialCharacter);\n\t}());\n\n\t// Remove anything after a left brace in case a user has pasted in a rule, not just a selector\n\t(function() {\n\t\tvar regex = /{[^]*/gm,\n\t\t\tmatches, i, len, match;\n\t\tif (regex.test(selector)) {\n\t\t\tmatches = selector.match(regex);\n\t\t\tfor (i = 0, len = matches.length; i < len; i += 1) {\n\t\t\t\tmatch = matches[i];\n\t\t\t\tselector = selector.replace(match, Array(match.length + 1).join(' '));\n\t\t\t}\n\t\t}\n\t}());\n\n\t// Add attribute selectors to parts collection (type b)\n\tfindMatch(attributeRegex, 'b');\n\n\t// Add ID selectors to parts collection (type a)\n\tfindMatch(idRegex, 'a');\n\n\t// Add class selectors to parts collection (type b)\n\tfindMatch(classRegex, 'b');\n\n\t// Add pseudo-element selectors to parts collection (type c)\n\tfindMatch(pseudoElementRegex, 'c');\n\n\t// Add pseudo-class selectors to parts collection (type b)\n\tfindMatch(pseudoClassWithBracketsRegex, 'b');\n\tfindMatch(pseudoClassRegex, 'b');\n\n\t// Remove universal selector and separator characters\n\tselector = selector.replace(/[\\*\\s\\+>~]/g, ' ');\n\n\t// Remove any stray dots or hashes which aren't attached to words\n\t// These may be present if the user is live-editing this selector\n\tselector = selector.replace(/[#\\.]/g, ' ');\n\n\t// Remove the negation psuedo-class (:not) but leave its argument because specificity is calculated on its argument\n \t// Remove non-standard :local and :global CSS Module identifiers because they do not effect the specificity\n\tselector = selector.replace(/:not/g, ' ');\n\tselector = selector.replace(/:local/g, ' ');\n\tselector = selector.replace(/:global/g, ' ');\n\tselector = selector.replace(/[\\(\\)]/g, ' ');\n\n\t// The only things left should be element selectors (type c)\n\tfindMatch(elementRegex, 'c');\n\n\t// Order the parts in the order they appear in the original selector\n\t// This is neater for external apps to deal with\n\tparts.sort(function(a, b) {\n\t\treturn a.index - b.index;\n\t});\n\n\treturn {\n\t\tselector: input,\n\t\tspecificity: '0,' + typeCount.a.toString() + ',' + typeCount.b.toString() + ',' + typeCount.c.toString(),\n\t\tspecificityArray: [0, typeCount.a, typeCount.b, typeCount.c],\n\t\tparts: parts\n\t};\n};\n\n/**\n * Compares two CSS selectors for specificity\n * Alternatively you can replace one of the CSS selectors with a specificity array\n *\n * - it returns -1 if a has a lower specificity than b\n * - it returns 1 if a has a higher specificity than b\n * - it returns 0 if a has the same specificity than b\n */\nvar compare = function(a, b) {\n\tvar aSpecificity,\n\t\tbSpecificity,\n\t\ti;\n\n\tif (typeof a ==='string') {\n\t\tif (a.indexOf(',') !== -1) {\n\t\t\tthrow 'Invalid CSS selector';\n\t\t} else {\n\t\t\taSpecificity = calculateSingle(a)['specificityArray'];\n\t\t}\n\t} else if (Array.isArray(a)) {\n\t\tif (a.filter(function(e) { return (typeof e === 'number'); }).length !== 4) {\n\t\t\tthrow 'Invalid specificity array';\n\t\t} else {\n\t\t\taSpecificity = a;\n\t\t}\n\t} else {\n\t\tthrow 'Invalid CSS selector or specificity array';\n\t}\n\n\tif (typeof b ==='string') {\n\t\tif (b.indexOf(',') !== -1) {\n\t\t\tthrow 'Invalid CSS selector';\n\t\t} else {\n\t\t\tbSpecificity = calculateSingle(b)['specificityArray'];\n\t\t}\n\t} else if (Array.isArray(b)) {\n\t\tif (b.filter(function(e) { return (typeof e === 'number'); }).length !== 4) {\n\t\t\tthrow 'Invalid specificity array';\n\t\t} else {\n\t\t\tbSpecificity = b;\n\t\t}\n\t} else {\n\t\tthrow 'Invalid CSS selector or specificity array';\n\t}\n\n\tfor (i = 0; i < 4; i += 1) {\n\t\tif (aSpecificity[i] < bSpecificity[i]) {\n\t\t\treturn -1;\n\t\t} else if (aSpecificity[i] > bSpecificity[i]) {\n\t\t\treturn 1;\n\t\t}\n\t}\n\n\treturn 0;\n};\n\nexport { calculate, compare };\n",null,null],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","hasOwnProperty","__extends","__","this","constructor","prototype","create","__assign","assign","t","s","i","n","arguments","length","call","apply","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","__generator","body","f","y","g","_","label","sent","trys","ops","verb","throw","return","Symbol","iterator","v","op","TypeError","pop","push","colorString","undefined","ok","key","charAt","substr","replace","toLowerCase","simpleColors","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgrey","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","feldspar","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgrey","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslateblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","violetred","wheat","white","whitesmoke","yellow","yellowgreen","colorDefs","re","example","process","bits","parseInt","processor","exec","channels","r","isNaN","RGBColor","toString","examples","j","sc","xml","document","createElement","setAttribute","listItem","listColor","exampleDiv","style","cssText","toHex","appendChild","createTextNode","listItemValue","toRGB","color","ColorFill","forNode","context","AttributeState","clone","xmlSpace","fill","fillOpacity","fontFamily","fontSize","fontStyle","fontWeight","opacity","stroke","strokeDasharray","strokeDashoffset","strokeLinecap","strokeLinejoin","strokeMiterlimit","strokeOpacity","strokeWidth","textAnchor","alignmentBaseline","visibility","attributeState","iriReference","alignmentBaselineMap","bottom","text-bottom","top","text-top","hanging","middle","central","center","mathematical","ideographic","alphabetic","baseline","TextMeasure","text","width","measureTextWidth","xOffset","getMeasureFunction","textMeasuringTextElement","createElementNS","svg","setProperty","getContext","font","join","measureText","measurementTextNode","getMeasurementTextNode","textNode","setAttributeNS","textContent","getBBox","method","measureMethods","canvasWidth","canvasTextMeasure","testString","svgWidth","svgTextMeasure","Math","abs","epsilon","parentNode","removeChild","pdf","values","svg2pdfParameters","default","viewport","refsHandler","styleSheets","textMeasure","transform","unitMatrix","withinClipPath","withinUse","Context","regexAnySingleEscape","regexSingleEscape","regexExcessiveSpaces","cssesc","string","options","defaults","merge","quotes","quote","isIdentifier","firstChar","output","counter","character","codePoint","charCodeAt","extra","toUpperCase","escapeEverything","test","slice","$0","$1","$2","wrap","version","idMap","renderedElements","ReferencesHandler","id","renderCallback","svgNode","get","_a","cssEsc","getAngle","from","to","atan2","toCubic","normalize","sqrt","getDirectionVector","addVectors","v1","v2","multVecMatrix","vec","matrix","x","a","c","segments","Path","MoveTo","LineTo","x1","y1","x2","y2","CurveTo","Close","forEach","seg","p1","p2","moveTo","lineTo","curveTo","close","nodeIs","node","tagsString","split","indexOf","nodeName","tagName","getAttribute","propertyNode","propertyCss","attribute","getPropertyValue","hasAttribute","svgNodeIsVisible","parentVisible","element","visible","svgNodeAndChildrenVisible","childNodes","children","child","isVisible","markers","MarkerList","marker","tf","angle","anchor","cos","sin","Matrix","matrixMult","saveGraphicsState","setLineWidth","getRendered","doFormObject","restoreGraphicsState","toPixels","pdfFontSize","match","parseFloat","mapAlignmentBaseline","parseFloats","str","floats","regex","parseColor","transparent","identifierPattern","spacePattern","starting","state","buffer","names","Error","fontAliases","sans-serif","verdana","arial","fixed","monospace","terminal","serif","cursive","fantasy","getBoundingBoxByChildren","svgnode","boundingBox","nodeBox","getBoundingBox","min","max","defaultBoundingBox","pf","computeViewBoxTransform","viewBox","eX","eY","eWidth","eHeight","noTranslate","align","meetOrSlice","vbX","vbY","vbWidth","vbHeight","scaleX","scaleY","preserveAspectRatio","alignAndMeetOrSlice","translateX","translateY","translate","scale","parseTransform","transformString","m","tSLength","mRegex","tRegex","rRegex","sRegex","sXRegex","sYRegex","resultMatrix","PI","t1","t2","SvgNode","getBoundingBoxCore","nodeTransform","computeNodeTransformCore","NonRenderedNode","parentContext","pdfGradientType","_super","_this","Gradient","colors","opacitySum","hasOpacity","stop","offset","parseGradientOffset","gState","GState","pattern","ShadingPattern","getCoordinates","addShadingPattern","parsedValue","LinearGradient","RadialGradient","cx","cy","fx","fy","gradient","GradientFill","gradientUnitsMatrix","bBox","gradientTransform","Pattern","TilingPattern","beginTilingPattern","_i","render","_b","endTilingPattern","PatternFill","patternData","xStep","yStep","patternUnitsMatrix","fillBBox","height","patternContentUnitsMatrix","patternTransformMatrix","patternTransform","parseAttributes","domNode","url","fillUrl","fillNode","fillColor","parseFill","strokeRGB","lineCap","lineJoin","dashArray","dashOffset","miterLimit","fontFamilies","FontFamily","fontType","availableFonts","getFontList","firstAvailable","some","availableStyles","findFirstAvailableFontFamily","getFontSize","matchArr","applyAttributes","childContext","hasFillOpacity","hasStrokeOpacity","setGState","setFillColor","setDrawColor","setLineCap","setLineJoin","setLineDashPattern","setLineMiterLimit","setTextColor","setFont","setFontSize","internal","scaleFactor","getClipPathNode","targetNode","clipPathAttr","clipPathId","applyClipPath","clipPathNode","clipContext","RenderedNode","computeNodeTransform","hasClipPath","clipNode","renderCore","hasMarkers","GeometryNode","path","getCachedPath","setCurrentTransformationMatrix","draw","fillOrStroke","drawMarkers","cachedPath","getPath","getMarkers","getFillData","fillData","isNodeFillRuleEvenOdd","fillStrokeEvenOdd","fillStroke","fillEvenOdd","discardPath","minX","Number","POSITIVE_INFINITY","minY","maxX","NEGATIVE_INFINITY","maxY","markerStart","markerMid","markerEnd","iri","list_1","prevAngle","curAngle","first","firstAngle","last_1","curr","hasStartMarker","index","tmp","hasEndMarker","hasMidMarker","prev","addMarker","Marker","GraphicsNode","Line","box","ownerSVGElement","Use","substring","refNode","refNodeOpensViewport","refContext","Viewport","renderReferencedNode","rect","clip","beginFormObject","endFormObject","Rect","w","h","isFinite","rxAttr","ryAttr","rx","ry","arc","SQRT2","EllipseBase","getRx","getRy","lx","ly","Ellipse","getTextRenderingMode","renderingMode","removeNewlines","replaceTabsBySpace","consolidateSpaces","transformText","trimRight","parent","originX","originY","texts","textNodes","TextChunk","tSpan","xs","ys","textNodeContexts","currentTextX","currentTextY","textNodeContext","tSpanStrokeColor","tSpanDx","tSpanDy","textOffset","textRenderingMode","TextNode","textX","textY","dx","dy","tSpanCount","childElementCount","trimmedText","trim","transformXmlSpace","transformedText","getTextOffset","currentTextSegment","lastPositions","tSpanAbsX","put","tSpanAbsY","tSpanXmlSpace","add","paramCounts","l","q","z","SPECIAL_SPACES","isDigit","code","isDigitStart","State","param","err","segmentStart","data","skipSpaces","ch","scanFlag","scanParam","start","zeroFirst","hasCeiling","hasDecimal","hasDot","finalizeSegment","cmd","cmdLC","params","concat","splice","scanSegment","cmdCode","is_arc","comma_found","need_params","isCommand","queue","cache","tx","ty","sx","sy","rotate","rad","skewX","skewY","toArray","m1","m2","calc","isRelative","operations","CMD_SPLIT_RE","PARAMS_SPLIT_RE","TAU","unit_vector_angle","ux","uy","vx","vy","dot","acos","approximate_unit_arc","theta1","delta_theta","alpha","fa","fs","phi","sin_phi","cos_phi","x1p","y1p","lambda","cc","rx_sq","ry_sq","x1p_sq","y1p_sq","radicant","cxp","cyp","v1x","v1y","v2x","v2y","get_arc_center","ceil","map","curve","xp","yp","torad","ax","ma","J","K","D","JK","L","l1","l2","atan","isDegenerate","SvgPath","pstate","svgPath","pathParse","__stack","src","sgm","__matrix","self","iterate","name","ellipse","__evaluateStack","skipCmd","elements","degrees","item","transformParse","round","contourStartDeltaX","contourStartDeltaY","deltaX","deltaY","toFixed","val","keepLazyStack","newSegments","replacements","needReplace","lastX","lastY","countourStartX","countourStartY","res","isArray","nameUC","rel","nameLC","unarc","new_segments","nextX","nextY","a2c","unshort","prevControlX","prevControlY","prevSegment","curControlX","curControlY","idx","PathNode","prevX","prevY","type","p3","dataUriRegex","imageUrl","imageLoadingPromise","ImageNode","fetchImageData","format","parser","DOMParser","svgElement","parseFromString","firstElementChild","String","parse","dataUri","btoa","addImage","console","warn","mimeType","mimeTypeParts","atob","decodeURIComponent","fetchImage","lastIndexOf","xhr","XMLHttpRequest","open","responseType","onload","status","bytes","Uint8Array","response","fromCharCode","onerror","onabort","send","closed","Traverse","points","parsePointsString","VoidNode","MarkerNode","tfMatrix","vb","refX","refY","bounds","Circle","getR","ContainerNode","Svg","getX","getY","getWidth","getHeight","getViewBox","widthAttr","parameters","isOutermostSvg","aspectRatio","heightAttr","xAttr","yAttr","Group","ClipPath","clipPathMatrix","inversed","fn","childNode","forEachChild","Polygon","Polyline","calculateSingle","input","findMatch","replaceWithPlainText","selector","typeCount","parts","matches","len","sort","specificity","specificityArray","rootSvg","loadExtSheets","loadExternalSheets","StyleSheets","collectStyleSheetTexts","sheetTexts","parseCssSheets","ownerDocument","loadSheet","styleElements","querySelectorAll","styleElement","all","filter","sheet","styleDoc","implementation","createHTMLDocument","sheetTexts_1","sheetText","CSSStyleSheet","cssRules","cssRule","CSSStyleRule","deleteRule","cssStyleRule","selectorText","selectors","splitSelectorAtCommas","insertRule","initialRegex","closingDoubleQuotesRegex","closingSingleQuotesRegex","lastCommaIndex","closingQuotesRegex","lastIndex","responseText","catch","matchingRules","rule","compare","priorityA","getPropertyPriority","aSpecificity","bSpecificity","compareSpecificity","reduce","previousValue","currentValue","svg2pdf","extCss","loadExternalStyleSheets","load","_d","pageSize","advancedAPI","compatAPI","cleanupTextMeasuring","API"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"svg2pdf.umd.min.js","sources":["../node_modules/tslib/tslib.es6.js","../src/utils/rgbcolor.ts","../src/fill/ColorFill.ts","../src/context/attributestate.ts","../src/utils/constants.ts","../src/context/textmeasure.ts","../src/context/context.ts","../node_modules/cssesc/cssesc.js","../src/context/referenceshandler.ts","../src/utils/geometry.ts","../src/utils/path.ts","../src/utils/node.ts","../src/markerlist.ts","../src/utils/misc.ts","../src/utils/parsing.ts","../node_modules/font-family-papandreou/index.js","../src/utils/fonts.ts","../src/utils/bbox.ts","../src/utils/transform.ts","../src/nodes/svgnode.ts","../src/nodes/nonrenderednode.ts","../src/nodes/gradient.ts","../src/nodes/lineargradient.ts","../src/nodes/radialgradient.ts","../src/fill/GradientFill.ts","../src/nodes/pattern.ts","../src/fill/PatternFill.ts","../src/applyparseattributes.ts","../src/fill/parseFill.ts","../src/utils/applyclippath.ts","../src/nodes/renderednode.ts","../src/nodes/graphicsnode.ts","../src/nodes/geometrynode.ts","../src/nodes/line.ts","../src/nodes/symbol.ts","../src/context/viewport.ts","../src/nodes/use.ts","../src/nodes/rect.ts","../src/nodes/ellipsebase.ts","../src/nodes/ellipse.ts","../src/utils/text.ts","../src/textchunk.ts","../src/nodes/text.ts","../node_modules/svgpath/lib/path_parse.js","../node_modules/svgpath/lib/matrix.js","../node_modules/svgpath/lib/transform_parse.js","../node_modules/svgpath/lib/a2c.js","../node_modules/svgpath/lib/ellipse.js","../node_modules/svgpath/lib/svgpath.js","../src/nodes/path.ts","../src/nodes/image.ts","../src/nodes/traverse.ts","../src/nodes/polygon.ts","../src/nodes/void.ts","../src/nodes/marker.ts","../src/nodes/circle.ts","../src/nodes/polyline.ts","../src/nodes/containernode.ts","../src/nodes/svg.ts","../src/nodes/group.ts","../src/nodes/clippath.ts","../src/parse.ts","../node_modules/specificity/dist/specificity.mjs","../src/context/stylesheets.ts","../src/svg2pdf.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n",null,null,null,null,null,null,"/*! https://mths.be/cssesc v3.0.0 by @mathias */\n'use strict';\n\nvar object = {};\nvar hasOwnProperty = object.hasOwnProperty;\nvar merge = function merge(options, defaults) {\n\tif (!options) {\n\t\treturn defaults;\n\t}\n\tvar result = {};\n\tfor (var key in defaults) {\n\t\t// `if (defaults.hasOwnProperty(key) { … }` is not needed here, since\n\t\t// only recognized option names are used.\n\t\tresult[key] = hasOwnProperty.call(options, key) ? options[key] : defaults[key];\n\t}\n\treturn result;\n};\n\nvar regexAnySingleEscape = /[ -,\\.\\/:-@\\[-\\^`\\{-~]/;\nvar regexSingleEscape = /[ -,\\.\\/:-@\\[\\]\\^`\\{-~]/;\nvar regexAlwaysEscape = /['\"\\\\]/;\nvar regexExcessiveSpaces = /(^|\\\\+)?(\\\\[A-F0-9]{1,6})\\x20(?![a-fA-F0-9\\x20])/g;\n\n// https://mathiasbynens.be/notes/css-escapes#css\nvar cssesc = function cssesc(string, options) {\n\toptions = merge(options, cssesc.options);\n\tif (options.quotes != 'single' && options.quotes != 'double') {\n\t\toptions.quotes = 'single';\n\t}\n\tvar quote = options.quotes == 'double' ? '\"' : '\\'';\n\tvar isIdentifier = options.isIdentifier;\n\n\tvar firstChar = string.charAt(0);\n\tvar output = '';\n\tvar counter = 0;\n\tvar length = string.length;\n\twhile (counter < length) {\n\t\tvar character = string.charAt(counter++);\n\t\tvar codePoint = character.charCodeAt();\n\t\tvar value = void 0;\n\t\t// If it’s not a printable ASCII character…\n\t\tif (codePoint < 0x20 || codePoint > 0x7E) {\n\t\t\tif (codePoint >= 0xD800 && codePoint <= 0xDBFF && counter < length) {\n\t\t\t\t// It’s a high surrogate, and there is a next character.\n\t\t\t\tvar extra = string.charCodeAt(counter++);\n\t\t\t\tif ((extra & 0xFC00) == 0xDC00) {\n\t\t\t\t\t// next character is low surrogate\n\t\t\t\t\tcodePoint = ((codePoint & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000;\n\t\t\t\t} else {\n\t\t\t\t\t// It’s an unmatched surrogate; only append this code unit, in case\n\t\t\t\t\t// the next code unit is the high surrogate of a surrogate pair.\n\t\t\t\t\tcounter--;\n\t\t\t\t}\n\t\t\t}\n\t\t\tvalue = '\\\\' + codePoint.toString(16).toUpperCase() + ' ';\n\t\t} else {\n\t\t\tif (options.escapeEverything) {\n\t\t\t\tif (regexAnySingleEscape.test(character)) {\n\t\t\t\t\tvalue = '\\\\' + character;\n\t\t\t\t} else {\n\t\t\t\t\tvalue = '\\\\' + codePoint.toString(16).toUpperCase() + ' ';\n\t\t\t\t}\n\t\t\t} else if (/[\\t\\n\\f\\r\\x0B]/.test(character)) {\n\t\t\t\tvalue = '\\\\' + codePoint.toString(16).toUpperCase() + ' ';\n\t\t\t} else if (character == '\\\\' || !isIdentifier && (character == '\"' && quote == character || character == '\\'' && quote == character) || isIdentifier && regexSingleEscape.test(character)) {\n\t\t\t\tvalue = '\\\\' + character;\n\t\t\t} else {\n\t\t\t\tvalue = character;\n\t\t\t}\n\t\t}\n\t\toutput += value;\n\t}\n\n\tif (isIdentifier) {\n\t\tif (/^-[-\\d]/.test(output)) {\n\t\t\toutput = '\\\\-' + output.slice(1);\n\t\t} else if (/\\d/.test(firstChar)) {\n\t\t\toutput = '\\\\3' + firstChar + ' ' + output.slice(1);\n\t\t}\n\t}\n\n\t// Remove spaces after `\\HEX` escapes that are not followed by a hex digit,\n\t// since they’re redundant. Note that this is only possible if the escape\n\t// sequence isn’t preceded by an odd number of backslashes.\n\toutput = output.replace(regexExcessiveSpaces, function ($0, $1, $2) {\n\t\tif ($1 && $1.length % 2) {\n\t\t\t// It’s not safe to remove the space, so don’t.\n\t\t\treturn $0;\n\t\t}\n\t\t// Strip the space.\n\t\treturn ($1 || '') + $2;\n\t});\n\n\tif (!isIdentifier && options.wrap) {\n\t\treturn quote + output + quote;\n\t}\n\treturn output;\n};\n\n// Expose default options (so they can be overridden globally).\ncssesc.options = {\n\t'escapeEverything': false,\n\t'isIdentifier': false,\n\t'quotes': 'single',\n\t'wrap': false\n};\n\ncssesc.version = '3.0.0';\n\nmodule.exports = cssesc;\n",null,null,null,null,null,null,null,"// parse\n// =====\n\n// states\n// ------\n\nvar PLAIN = 0;\nvar STRINGS = 1;\nvar ESCAPING = 2;\nvar IDENTIFIER = 3;\nvar SEPARATING = 4;\nvar SPACEAFTERIDENTIFIER = 5;\n\n// patterns\n// --------\n\nvar identifierPattern = /[a-z0-9_-]/i;\nvar spacePattern = /[\\s\\t]/;\n\n// ---\n\nvar parse = function(str) {\n\n // vars\n // ----\n\n var starting = true;\n var state = PLAIN;\n var buffer = '';\n var i = 0;\n var quote;\n var c;\n\n // result\n // ------\n\n var names = [];\n\n // parse\n // -----\n\n while (true) {\n\n c = str[i];\n\n if (state === PLAIN) {\n\n if (!c && starting) {\n\n break;\n\n } else if (!c && !starting) {\n\n throw new Error('Parse error');\n\n } else if (c === '\"' || c === \"'\") {\n\n quote = c;\n state = STRINGS;\n starting = false;\n\n } else if (spacePattern.test(c)) {\n } else if (identifierPattern.test(c)) {\n\n state = IDENTIFIER;\n starting = false;\n i--;\n\n } else {\n\n throw new Error('Parse error');\n\n }\n\n } else if (state === STRINGS) {\n\n if (!c) {\n\n throw new Error('Parse Error');\n\n } else if (c === \"\\\\\") {\n\n state = ESCAPING;\n\n } else if (c === quote) {\n\n names.push(buffer);\n buffer = '';\n state = SEPARATING;\n\n } else {\n\n buffer += c;\n\n }\n\n } else if (state === ESCAPING) {\n\n if (c === quote || c === \"\\\\\") {\n\n buffer += c;\n state = STRINGS;\n\n } else {\n\n throw new Error('Parse error');\n\n }\n\n } else if (state === IDENTIFIER) {\n\n if (!c) {\n\n names.push(buffer);\n break;\n\n } else if (identifierPattern.test(c)) {\n\n buffer += c;\n\n } else if (c === ',') {\n\n names.push(buffer);\n buffer = '';\n state = PLAIN;\n\n } else if (spacePattern.test(c)) {\n\n state = SPACEAFTERIDENTIFIER;\n } else {\n\n throw new Error('Parse error');\n\n }\n } else if (state === SPACEAFTERIDENTIFIER) {\n\n if (!c) {\n\n names.push(buffer);\n break;\n\n } else if (identifierPattern.test(c)) {\n\n buffer += ' ' + c;\n state = IDENTIFIER;\n\n } else if (c === ',') {\n\n names.push(buffer);\n buffer = '';\n state = PLAIN;\n\n } else if (spacePattern.test(c)) {\n } else {\n\n throw new Error('Parse error');\n\n }\n\n } else if (state === SEPARATING) {\n\n if (!c) {\n\n break;\n\n } else if (c === ',') {\n\n state = PLAIN;\n\n } else if (spacePattern.test(c)) {\n } else {\n\n throw new Error('Parse error');\n\n }\n\n }\n\n i++;\n\n }\n\n // result\n // ------\n\n return names;\n\n};\n\n// stringify\n// =========\n\n// pattern\n// -------\n\nvar stringsPattern = /[^a-z0-9_-]/i;\n\n// ---\n\nvar stringify = function(names, options) {\n\n // quote\n // -----\n\n var quote = options && options.quote || '\"';\n if (quote !== '\"' && quote !== \"'\") {\n throw new Error('Quote must be `\\'` or `\"`');\n }\n var quotePattern = new RegExp(quote, 'g');\n\n // stringify\n // ---------\n\n var safeNames = [];\n\n for (var i = 0; i < names.length; ++i) {\n var name = names[i];\n\n if (stringsPattern.test(name)) {\n name = name\n .replace(/\\\\/g, \"\\\\\\\\\")\n .replace(quotePattern, \"\\\\\" + quote);\n name = quote + name + quote;\n }\n safeNames.push(name);\n }\n\n // result\n // ------\n\n return safeNames.join(', ');\n};\n\n// export\n// ======\n\nmodule.exports = {\n parse: parse,\n stringify: stringify,\n};\n",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"'use strict';\n\n\nvar paramCounts = { a: 7, c: 6, h: 1, l: 2, m: 2, r: 4, q: 4, s: 4, t: 2, v: 1, z: 0 };\n\nvar SPECIAL_SPACES = [\n 0x1680, 0x180E, 0x2000, 0x2001, 0x2002, 0x2003, 0x2004, 0x2005, 0x2006,\n 0x2007, 0x2008, 0x2009, 0x200A, 0x202F, 0x205F, 0x3000, 0xFEFF\n];\n\nfunction isSpace(ch) {\n return (ch === 0x0A) || (ch === 0x0D) || (ch === 0x2028) || (ch === 0x2029) || // Line terminators\n // White spaces\n (ch === 0x20) || (ch === 0x09) || (ch === 0x0B) || (ch === 0x0C) || (ch === 0xA0) ||\n (ch >= 0x1680 && SPECIAL_SPACES.indexOf(ch) >= 0);\n}\n\nfunction isCommand(code) {\n /*eslint-disable no-bitwise*/\n switch (code | 0x20) {\n case 0x6D/* m */:\n case 0x7A/* z */:\n case 0x6C/* l */:\n case 0x68/* h */:\n case 0x76/* v */:\n case 0x63/* c */:\n case 0x73/* s */:\n case 0x71/* q */:\n case 0x74/* t */:\n case 0x61/* a */:\n case 0x72/* r */:\n return true;\n }\n return false;\n}\n\nfunction isArc(code) {\n return (code | 0x20) === 0x61;\n}\n\nfunction isDigit(code) {\n return (code >= 48 && code <= 57); // 0..9\n}\n\nfunction isDigitStart(code) {\n return (code >= 48 && code <= 57) || /* 0..9 */\n code === 0x2B || /* + */\n code === 0x2D || /* - */\n code === 0x2E; /* . */\n}\n\n\nfunction State(path) {\n this.index = 0;\n this.path = path;\n this.max = path.length;\n this.result = [];\n this.param = 0.0;\n this.err = '';\n this.segmentStart = 0;\n this.data = [];\n}\n\nfunction skipSpaces(state) {\n while (state.index < state.max && isSpace(state.path.charCodeAt(state.index))) {\n state.index++;\n }\n}\n\n\nfunction scanFlag(state) {\n var ch = state.path.charCodeAt(state.index);\n\n if (ch === 0x30/* 0 */) {\n state.param = 0;\n state.index++;\n return;\n }\n\n if (ch === 0x31/* 1 */) {\n state.param = 1;\n state.index++;\n return;\n }\n\n state.err = 'SvgPath: arc flag can be 0 or 1 only (at pos ' + state.index + ')';\n}\n\n\nfunction scanParam(state) {\n var start = state.index,\n index = start,\n max = state.max,\n zeroFirst = false,\n hasCeiling = false,\n hasDecimal = false,\n hasDot = false,\n ch;\n\n if (index >= max) {\n state.err = 'SvgPath: missed param (at pos ' + index + ')';\n return;\n }\n ch = state.path.charCodeAt(index);\n\n if (ch === 0x2B/* + */ || ch === 0x2D/* - */) {\n index++;\n ch = (index < max) ? state.path.charCodeAt(index) : 0;\n }\n\n // This logic is shamelessly borrowed from Esprima\n // https://github.com/ariya/esprimas\n //\n if (!isDigit(ch) && ch !== 0x2E/* . */) {\n state.err = 'SvgPath: param should start with 0..9 or `.` (at pos ' + index + ')';\n return;\n }\n\n if (ch !== 0x2E/* . */) {\n zeroFirst = (ch === 0x30/* 0 */);\n index++;\n\n ch = (index < max) ? state.path.charCodeAt(index) : 0;\n\n if (zeroFirst && index < max) {\n // decimal number starts with '0' such as '09' is illegal.\n if (ch && isDigit(ch)) {\n state.err = 'SvgPath: numbers started with `0` such as `09` are illegal (at pos ' + start + ')';\n return;\n }\n }\n\n while (index < max && isDigit(state.path.charCodeAt(index))) {\n index++;\n hasCeiling = true;\n }\n ch = (index < max) ? state.path.charCodeAt(index) : 0;\n }\n\n if (ch === 0x2E/* . */) {\n hasDot = true;\n index++;\n while (isDigit(state.path.charCodeAt(index))) {\n index++;\n hasDecimal = true;\n }\n ch = (index < max) ? state.path.charCodeAt(index) : 0;\n }\n\n if (ch === 0x65/* e */ || ch === 0x45/* E */) {\n if (hasDot && !hasCeiling && !hasDecimal) {\n state.err = 'SvgPath: invalid float exponent (at pos ' + index + ')';\n return;\n }\n\n index++;\n\n ch = (index < max) ? state.path.charCodeAt(index) : 0;\n if (ch === 0x2B/* + */ || ch === 0x2D/* - */) {\n index++;\n }\n if (index < max && isDigit(state.path.charCodeAt(index))) {\n while (index < max && isDigit(state.path.charCodeAt(index))) {\n index++;\n }\n } else {\n state.err = 'SvgPath: invalid float exponent (at pos ' + index + ')';\n return;\n }\n }\n\n state.index = index;\n state.param = parseFloat(state.path.slice(start, index)) + 0.0;\n}\n\n\nfunction finalizeSegment(state) {\n var cmd, cmdLC;\n\n // Process duplicated commands (without comand name)\n\n // This logic is shamelessly borrowed from Raphael\n // https://github.com/DmitryBaranovskiy/raphael/\n //\n cmd = state.path[state.segmentStart];\n cmdLC = cmd.toLowerCase();\n\n var params = state.data;\n\n if (cmdLC === 'm' && params.length > 2) {\n state.result.push([ cmd, params[0], params[1] ]);\n params = params.slice(2);\n cmdLC = 'l';\n cmd = (cmd === 'm') ? 'l' : 'L';\n }\n\n if (cmdLC === 'r') {\n state.result.push([ cmd ].concat(params));\n } else {\n\n while (params.length >= paramCounts[cmdLC]) {\n state.result.push([ cmd ].concat(params.splice(0, paramCounts[cmdLC])));\n if (!paramCounts[cmdLC]) {\n break;\n }\n }\n }\n}\n\n\nfunction scanSegment(state) {\n var max = state.max,\n cmdCode, is_arc, comma_found, need_params, i;\n\n state.segmentStart = state.index;\n cmdCode = state.path.charCodeAt(state.index);\n is_arc = isArc(cmdCode);\n\n if (!isCommand(cmdCode)) {\n state.err = 'SvgPath: bad command ' + state.path[state.index] + ' (at pos ' + state.index + ')';\n return;\n }\n\n need_params = paramCounts[state.path[state.index].toLowerCase()];\n\n state.index++;\n skipSpaces(state);\n\n state.data = [];\n\n if (!need_params) {\n // Z\n finalizeSegment(state);\n return;\n }\n\n comma_found = false;\n\n for (;;) {\n for (i = need_params; i > 0; i--) {\n if (is_arc && (i === 3 || i === 4)) scanFlag(state);\n else scanParam(state);\n\n if (state.err.length) {\n return;\n }\n state.data.push(state.param);\n\n skipSpaces(state);\n comma_found = false;\n\n if (state.index < max && state.path.charCodeAt(state.index) === 0x2C/* , */) {\n state.index++;\n skipSpaces(state);\n comma_found = true;\n }\n }\n\n // after ',' param is mandatory\n if (comma_found) {\n continue;\n }\n\n if (state.index >= state.max) {\n break;\n }\n\n // Stop on next segment\n if (!isDigitStart(state.path.charCodeAt(state.index))) {\n break;\n }\n }\n\n finalizeSegment(state);\n}\n\n\n/* Returns array of segments:\n *\n * [\n * [ command, coord1, coord2, ... ]\n * ]\n */\nmodule.exports = function pathParse(svgPath) {\n var state = new State(svgPath);\n var max = state.max;\n\n skipSpaces(state);\n\n while (state.index < max && !state.err.length) {\n scanSegment(state);\n }\n\n if (state.err.length) {\n state.result = [];\n\n } else if (state.result.length) {\n\n if ('mM'.indexOf(state.result[0][0]) < 0) {\n state.err = 'SvgPath: string should start with `M` or `m`';\n state.result = [];\n } else {\n state.result[0][0] = 'M';\n }\n }\n\n return {\n err: state.err,\n segments: state.result\n };\n};\n","'use strict';\n\n// combine 2 matrixes\n// m1, m2 - [a, b, c, d, e, g]\n//\nfunction combine(m1, m2) {\n return [\n m1[0] * m2[0] + m1[2] * m2[1],\n m1[1] * m2[0] + m1[3] * m2[1],\n m1[0] * m2[2] + m1[2] * m2[3],\n m1[1] * m2[2] + m1[3] * m2[3],\n m1[0] * m2[4] + m1[2] * m2[5] + m1[4],\n m1[1] * m2[4] + m1[3] * m2[5] + m1[5]\n ];\n}\n\n\nfunction Matrix() {\n if (!(this instanceof Matrix)) { return new Matrix(); }\n this.queue = []; // list of matrixes to apply\n this.cache = null; // combined matrix cache\n}\n\n\nMatrix.prototype.matrix = function (m) {\n if (m[0] === 1 && m[1] === 0 && m[2] === 0 && m[3] === 1 && m[4] === 0 && m[5] === 0) {\n return this;\n }\n this.cache = null;\n this.queue.push(m);\n return this;\n};\n\n\nMatrix.prototype.translate = function (tx, ty) {\n if (tx !== 0 || ty !== 0) {\n this.cache = null;\n this.queue.push([ 1, 0, 0, 1, tx, ty ]);\n }\n return this;\n};\n\n\nMatrix.prototype.scale = function (sx, sy) {\n if (sx !== 1 || sy !== 1) {\n this.cache = null;\n this.queue.push([ sx, 0, 0, sy, 0, 0 ]);\n }\n return this;\n};\n\n\nMatrix.prototype.rotate = function (angle, rx, ry) {\n var rad, cos, sin;\n\n if (angle !== 0) {\n this.translate(rx, ry);\n\n rad = angle * Math.PI / 180;\n cos = Math.cos(rad);\n sin = Math.sin(rad);\n\n this.queue.push([ cos, sin, -sin, cos, 0, 0 ]);\n this.cache = null;\n\n this.translate(-rx, -ry);\n }\n return this;\n};\n\n\nMatrix.prototype.skewX = function (angle) {\n if (angle !== 0) {\n this.cache = null;\n this.queue.push([ 1, 0, Math.tan(angle * Math.PI / 180), 1, 0, 0 ]);\n }\n return this;\n};\n\n\nMatrix.prototype.skewY = function (angle) {\n if (angle !== 0) {\n this.cache = null;\n this.queue.push([ 1, Math.tan(angle * Math.PI / 180), 0, 1, 0, 0 ]);\n }\n return this;\n};\n\n\n// Flatten queue\n//\nMatrix.prototype.toArray = function () {\n if (this.cache) {\n return this.cache;\n }\n\n if (!this.queue.length) {\n this.cache = [ 1, 0, 0, 1, 0, 0 ];\n return this.cache;\n }\n\n this.cache = this.queue[0];\n\n if (this.queue.length === 1) {\n return this.cache;\n }\n\n for (var i = 1; i < this.queue.length; i++) {\n this.cache = combine(this.cache, this.queue[i]);\n }\n\n return this.cache;\n};\n\n\n// Apply list of matrixes to (x,y) point.\n// If `isRelative` set, `translate` component of matrix will be skipped\n//\nMatrix.prototype.calc = function (x, y, isRelative) {\n var m;\n\n // Don't change point on empty transforms queue\n if (!this.queue.length) { return [ x, y ]; }\n\n // Calculate final matrix, if not exists\n //\n // NB. if you deside to apply transforms to point one-by-one,\n // they should be taken in reverse order\n\n if (!this.cache) {\n this.cache = this.toArray();\n }\n\n m = this.cache;\n\n // Apply matrix to point\n return [\n x * m[0] + y * m[2] + (isRelative ? 0 : m[4]),\n x * m[1] + y * m[3] + (isRelative ? 0 : m[5])\n ];\n};\n\n\nmodule.exports = Matrix;\n","'use strict';\n\n\nvar Matrix = require('./matrix');\n\nvar operations = {\n matrix: true,\n scale: true,\n rotate: true,\n translate: true,\n skewX: true,\n skewY: true\n};\n\nvar CMD_SPLIT_RE = /\\s*(matrix|translate|scale|rotate|skewX|skewY)\\s*\\(\\s*(.+?)\\s*\\)[\\s,]*/;\nvar PARAMS_SPLIT_RE = /[\\s,]+/;\n\n\nmodule.exports = function transformParse(transformString) {\n var matrix = new Matrix();\n var cmd, params;\n\n // Split value into ['', 'translate', '10 50', '', 'scale', '2', '', 'rotate', '-45', '']\n transformString.split(CMD_SPLIT_RE).forEach(function (item) {\n\n // Skip empty elements\n if (!item.length) { return; }\n\n // remember operation\n if (typeof operations[item] !== 'undefined') {\n cmd = item;\n return;\n }\n\n // extract params & att operation to matrix\n params = item.split(PARAMS_SPLIT_RE).map(function (i) {\n return +i || 0;\n });\n\n // If params count is not correct - ignore command\n switch (cmd) {\n case 'matrix':\n if (params.length === 6) {\n matrix.matrix(params);\n }\n return;\n\n case 'scale':\n if (params.length === 1) {\n matrix.scale(params[0], params[0]);\n } else if (params.length === 2) {\n matrix.scale(params[0], params[1]);\n }\n return;\n\n case 'rotate':\n if (params.length === 1) {\n matrix.rotate(params[0], 0, 0);\n } else if (params.length === 3) {\n matrix.rotate(params[0], params[1], params[2]);\n }\n return;\n\n case 'translate':\n if (params.length === 1) {\n matrix.translate(params[0], 0);\n } else if (params.length === 2) {\n matrix.translate(params[0], params[1]);\n }\n return;\n\n case 'skewX':\n if (params.length === 1) {\n matrix.skewX(params[0]);\n }\n return;\n\n case 'skewY':\n if (params.length === 1) {\n matrix.skewY(params[0]);\n }\n return;\n }\n });\n\n return matrix;\n};\n","// Convert an arc to a sequence of cubic bézier curves\n//\n'use strict';\n\n\nvar TAU = Math.PI * 2;\n\n\n/* eslint-disable space-infix-ops */\n\n// Calculate an angle between two unit vectors\n//\n// Since we measure angle between radii of circular arcs,\n// we can use simplified math (without length normalization)\n//\nfunction unit_vector_angle(ux, uy, vx, vy) {\n var sign = (ux * vy - uy * vx < 0) ? -1 : 1;\n var dot = ux * vx + uy * vy;\n\n // Add this to work with arbitrary vectors:\n // dot /= Math.sqrt(ux * ux + uy * uy) * Math.sqrt(vx * vx + vy * vy);\n\n // rounding errors, e.g. -1.0000000000000002 can screw up this\n if (dot > 1.0) { dot = 1.0; }\n if (dot < -1.0) { dot = -1.0; }\n\n return sign * Math.acos(dot);\n}\n\n\n// Convert from endpoint to center parameterization,\n// see http://www.w3.org/TR/SVG11/implnote.html#ArcImplementationNotes\n//\n// Return [cx, cy, theta1, delta_theta]\n//\nfunction get_arc_center(x1, y1, x2, y2, fa, fs, rx, ry, sin_phi, cos_phi) {\n // Step 1.\n //\n // Moving an ellipse so origin will be the middlepoint between our two\n // points. After that, rotate it to line up ellipse axes with coordinate\n // axes.\n //\n var x1p = cos_phi*(x1-x2)/2 + sin_phi*(y1-y2)/2;\n var y1p = -sin_phi*(x1-x2)/2 + cos_phi*(y1-y2)/2;\n\n var rx_sq = rx * rx;\n var ry_sq = ry * ry;\n var x1p_sq = x1p * x1p;\n var y1p_sq = y1p * y1p;\n\n // Step 2.\n //\n // Compute coordinates of the centre of this ellipse (cx', cy')\n // in the new coordinate system.\n //\n var radicant = (rx_sq * ry_sq) - (rx_sq * y1p_sq) - (ry_sq * x1p_sq);\n\n if (radicant < 0) {\n // due to rounding errors it might be e.g. -1.3877787807814457e-17\n radicant = 0;\n }\n\n radicant /= (rx_sq * y1p_sq) + (ry_sq * x1p_sq);\n radicant = Math.sqrt(radicant) * (fa === fs ? -1 : 1);\n\n var cxp = radicant * rx/ry * y1p;\n var cyp = radicant * -ry/rx * x1p;\n\n // Step 3.\n //\n // Transform back to get centre coordinates (cx, cy) in the original\n // coordinate system.\n //\n var cx = cos_phi*cxp - sin_phi*cyp + (x1+x2)/2;\n var cy = sin_phi*cxp + cos_phi*cyp + (y1+y2)/2;\n\n // Step 4.\n //\n // Compute angles (theta1, delta_theta).\n //\n var v1x = (x1p - cxp) / rx;\n var v1y = (y1p - cyp) / ry;\n var v2x = (-x1p - cxp) / rx;\n var v2y = (-y1p - cyp) / ry;\n\n var theta1 = unit_vector_angle(1, 0, v1x, v1y);\n var delta_theta = unit_vector_angle(v1x, v1y, v2x, v2y);\n\n if (fs === 0 && delta_theta > 0) {\n delta_theta -= TAU;\n }\n if (fs === 1 && delta_theta < 0) {\n delta_theta += TAU;\n }\n\n return [ cx, cy, theta1, delta_theta ];\n}\n\n//\n// Approximate one unit arc segment with bézier curves,\n// see http://math.stackexchange.com/questions/873224\n//\nfunction approximate_unit_arc(theta1, delta_theta) {\n var alpha = 4/3 * Math.tan(delta_theta/4);\n\n var x1 = Math.cos(theta1);\n var y1 = Math.sin(theta1);\n var x2 = Math.cos(theta1 + delta_theta);\n var y2 = Math.sin(theta1 + delta_theta);\n\n return [ x1, y1, x1 - y1*alpha, y1 + x1*alpha, x2 + y2*alpha, y2 - x2*alpha, x2, y2 ];\n}\n\nmodule.exports = function a2c(x1, y1, x2, y2, fa, fs, rx, ry, phi) {\n var sin_phi = Math.sin(phi * TAU / 360);\n var cos_phi = Math.cos(phi * TAU / 360);\n\n // Make sure radii are valid\n //\n var x1p = cos_phi*(x1-x2)/2 + sin_phi*(y1-y2)/2;\n var y1p = -sin_phi*(x1-x2)/2 + cos_phi*(y1-y2)/2;\n\n if (x1p === 0 && y1p === 0) {\n // we're asked to draw line to itself\n return [];\n }\n\n if (rx === 0 || ry === 0) {\n // one of the radii is zero\n return [];\n }\n\n\n // Compensate out-of-range radii\n //\n rx = Math.abs(rx);\n ry = Math.abs(ry);\n\n var lambda = (x1p * x1p) / (rx * rx) + (y1p * y1p) / (ry * ry);\n if (lambda > 1) {\n rx *= Math.sqrt(lambda);\n ry *= Math.sqrt(lambda);\n }\n\n\n // Get center parameters (cx, cy, theta1, delta_theta)\n //\n var cc = get_arc_center(x1, y1, x2, y2, fa, fs, rx, ry, sin_phi, cos_phi);\n\n var result = [];\n var theta1 = cc[2];\n var delta_theta = cc[3];\n\n // Split an arc to multiple segments, so each segment\n // will be less than τ/4 (= 90°)\n //\n var segments = Math.max(Math.ceil(Math.abs(delta_theta) / (TAU / 4)), 1);\n delta_theta /= segments;\n\n for (var i = 0; i < segments; i++) {\n result.push(approximate_unit_arc(theta1, delta_theta));\n theta1 += delta_theta;\n }\n\n // We have a bezier approximation of a unit circle,\n // now need to transform back to the original ellipse\n //\n return result.map(function (curve) {\n for (var i = 0; i < curve.length; i += 2) {\n var x = curve[i + 0];\n var y = curve[i + 1];\n\n // scale\n x *= rx;\n y *= ry;\n\n // rotate\n var xp = cos_phi*x - sin_phi*y;\n var yp = sin_phi*x + cos_phi*y;\n\n // translate\n curve[i + 0] = xp + cc[0];\n curve[i + 1] = yp + cc[1];\n }\n\n return curve;\n });\n};\n","'use strict';\n\n/* eslint-disable space-infix-ops */\n\n// The precision used to consider an ellipse as a circle\n//\nvar epsilon = 0.0000000001;\n\n// To convert degree in radians\n//\nvar torad = Math.PI / 180;\n\n// Class constructor :\n// an ellipse centred at 0 with radii rx,ry and x - axis - angle ax.\n//\nfunction Ellipse(rx, ry, ax) {\n if (!(this instanceof Ellipse)) { return new Ellipse(rx, ry, ax); }\n this.rx = rx;\n this.ry = ry;\n this.ax = ax;\n}\n\n// Apply a linear transform m to the ellipse\n// m is an array representing a matrix :\n// - -\n// | m[0] m[2] |\n// | m[1] m[3] |\n// - -\n//\nEllipse.prototype.transform = function (m) {\n // We consider the current ellipse as image of the unit circle\n // by first scale(rx,ry) and then rotate(ax) ...\n // So we apply ma = m x rotate(ax) x scale(rx,ry) to the unit circle.\n var c = Math.cos(this.ax * torad), s = Math.sin(this.ax * torad);\n var ma = [\n this.rx * (m[0]*c + m[2]*s),\n this.rx * (m[1]*c + m[3]*s),\n this.ry * (-m[0]*s + m[2]*c),\n this.ry * (-m[1]*s + m[3]*c)\n ];\n\n // ma * transpose(ma) = [ J L ]\n // [ L K ]\n // L is calculated later (if the image is not a circle)\n var J = ma[0]*ma[0] + ma[2]*ma[2],\n K = ma[1]*ma[1] + ma[3]*ma[3];\n\n // the discriminant of the characteristic polynomial of ma * transpose(ma)\n var D = ((ma[0]-ma[3])*(ma[0]-ma[3]) + (ma[2]+ma[1])*(ma[2]+ma[1])) *\n ((ma[0]+ma[3])*(ma[0]+ma[3]) + (ma[2]-ma[1])*(ma[2]-ma[1]));\n\n // the \"mean eigenvalue\"\n var JK = (J + K) / 2;\n\n // check if the image is (almost) a circle\n if (D < epsilon * JK) {\n // if it is\n this.rx = this.ry = Math.sqrt(JK);\n this.ax = 0;\n return this;\n }\n\n // if it is not a circle\n var L = ma[0]*ma[1] + ma[2]*ma[3];\n\n D = Math.sqrt(D);\n\n // {l1,l2} = the two eigen values of ma * transpose(ma)\n var l1 = JK + D/2,\n l2 = JK - D/2;\n // the x - axis - rotation angle is the argument of the l1 - eigenvector\n /*eslint-disable indent*/\n this.ax = (Math.abs(L) < epsilon && Math.abs(l1 - K) < epsilon) ?\n 90\n :\n Math.atan(Math.abs(L) > Math.abs(l1 - K) ?\n (l1 - J) / L\n :\n L / (l1 - K)\n ) * 180 / Math.PI;\n /*eslint-enable indent*/\n\n // if ax > 0 => rx = sqrt(l1), ry = sqrt(l2), else exchange axes and ax += 90\n if (this.ax >= 0) {\n // if ax in [0,90]\n this.rx = Math.sqrt(l1);\n this.ry = Math.sqrt(l2);\n } else {\n // if ax in ]-90,0[ => exchange axes\n this.ax += 90;\n this.rx = Math.sqrt(l2);\n this.ry = Math.sqrt(l1);\n }\n\n return this;\n};\n\n// Check if the ellipse is (almost) degenerate, i.e. rx = 0 or ry = 0\n//\nEllipse.prototype.isDegenerate = function () {\n return (this.rx < epsilon * this.ry || this.ry < epsilon * this.rx);\n};\n\nmodule.exports = Ellipse;\n","// SVG Path transformations library\n//\n// Usage:\n//\n// SvgPath('...')\n// .translate(-150, -100)\n// .scale(0.5)\n// .translate(-150, -100)\n// .toFixed(1)\n// .toString()\n//\n\n'use strict';\n\n\nvar pathParse = require('./path_parse');\nvar transformParse = require('./transform_parse');\nvar matrix = require('./matrix');\nvar a2c = require('./a2c');\nvar ellipse = require('./ellipse');\n\n\n// Class constructor\n//\nfunction SvgPath(path) {\n if (!(this instanceof SvgPath)) { return new SvgPath(path); }\n\n var pstate = pathParse(path);\n\n // Array of path segments.\n // Each segment is array [command, param1, param2, ...]\n this.segments = pstate.segments;\n\n // Error message on parse error.\n this.err = pstate.err;\n\n // Transforms stack for lazy evaluation\n this.__stack = [];\n}\n\nSvgPath.from = function (src) {\n if (typeof src === 'string') return new SvgPath(src);\n\n if (src instanceof SvgPath) {\n // Create empty object\n var s = new SvgPath('');\n\n // Clone properies\n s.err = src.err;\n s.segments = src.segments.map(function (sgm) { return sgm.slice(); });\n s.__stack = src.__stack.map(function (m) {\n return matrix().matrix(m.toArray());\n });\n\n return s;\n }\n\n throw new Error('SvgPath.from: invalid param type ' + src);\n};\n\n\nSvgPath.prototype.__matrix = function (m) {\n var self = this, i;\n\n // Quick leave for empty matrix\n if (!m.queue.length) { return; }\n\n this.iterate(function (s, index, x, y) {\n var p, result, name, isRelative;\n\n switch (s[0]) {\n\n // Process 'assymetric' commands separately\n case 'v':\n p = m.calc(0, s[1], true);\n result = (p[0] === 0) ? [ 'v', p[1] ] : [ 'l', p[0], p[1] ];\n break;\n\n case 'V':\n p = m.calc(x, s[1], false);\n result = (p[0] === m.calc(x, y, false)[0]) ? [ 'V', p[1] ] : [ 'L', p[0], p[1] ];\n break;\n\n case 'h':\n p = m.calc(s[1], 0, true);\n result = (p[1] === 0) ? [ 'h', p[0] ] : [ 'l', p[0], p[1] ];\n break;\n\n case 'H':\n p = m.calc(s[1], y, false);\n result = (p[1] === m.calc(x, y, false)[1]) ? [ 'H', p[0] ] : [ 'L', p[0], p[1] ];\n break;\n\n case 'a':\n case 'A':\n // ARC is: ['A', rx, ry, x-axis-rotation, large-arc-flag, sweep-flag, x, y]\n\n // Drop segment if arc is empty (end point === start point)\n /*if ((s[0] === 'A' && s[6] === x && s[7] === y) ||\n (s[0] === 'a' && s[6] === 0 && s[7] === 0)) {\n return [];\n }*/\n\n // Transform rx, ry and the x-axis-rotation\n var ma = m.toArray();\n var e = ellipse(s[1], s[2], s[3]).transform(ma);\n\n // flip sweep-flag if matrix is not orientation-preserving\n if (ma[0] * ma[3] - ma[1] * ma[2] < 0) {\n s[5] = s[5] ? '0' : '1';\n }\n\n // Transform end point as usual (without translation for relative notation)\n p = m.calc(s[6], s[7], s[0] === 'a');\n\n // Empty arcs can be ignored by renderer, but should not be dropped\n // to avoid collisions with `S A S` and so on. Replace with empty line.\n if ((s[0] === 'A' && s[6] === x && s[7] === y) ||\n (s[0] === 'a' && s[6] === 0 && s[7] === 0)) {\n result = [ s[0] === 'a' ? 'l' : 'L', p[0], p[1] ];\n break;\n }\n\n // if the resulting ellipse is (almost) a segment ...\n if (e.isDegenerate()) {\n // replace the arc by a line\n result = [ s[0] === 'a' ? 'l' : 'L', p[0], p[1] ];\n } else {\n // if it is a real ellipse\n // s[0], s[4] and s[5] are not modified\n result = [ s[0], e.rx, e.ry, e.ax, s[4], s[5], p[0], p[1] ];\n }\n\n break;\n\n case 'm':\n // Edge case. The very first `m` should be processed as absolute, if happens.\n // Make sense for coord shift transforms.\n isRelative = index > 0;\n\n p = m.calc(s[1], s[2], isRelative);\n result = [ 'm', p[0], p[1] ];\n break;\n\n default:\n name = s[0];\n result = [ name ];\n isRelative = (name.toLowerCase() === name);\n\n // Apply transformations to the segment\n for (i = 1; i < s.length; i += 2) {\n p = m.calc(s[i], s[i + 1], isRelative);\n result.push(p[0], p[1]);\n }\n }\n\n self.segments[index] = result;\n }, true);\n};\n\n\n// Apply stacked commands\n//\nSvgPath.prototype.__evaluateStack = function () {\n var m, i;\n\n if (!this.__stack.length) { return; }\n\n if (this.__stack.length === 1) {\n this.__matrix(this.__stack[0]);\n this.__stack = [];\n return;\n }\n\n m = matrix();\n i = this.__stack.length;\n\n while (--i >= 0) {\n m.matrix(this.__stack[i].toArray());\n }\n\n this.__matrix(m);\n this.__stack = [];\n};\n\n\n// Convert processed SVG Path back to string\n//\nSvgPath.prototype.toString = function () {\n var elements = [], skipCmd, cmd;\n\n this.__evaluateStack();\n\n for (var i = 0; i < this.segments.length; i++) {\n // remove repeating commands names\n cmd = this.segments[i][0];\n skipCmd = i > 0 && cmd !== 'm' && cmd !== 'M' && cmd === this.segments[i - 1][0];\n elements = elements.concat(skipCmd ? this.segments[i].slice(1) : this.segments[i]);\n }\n\n return elements.join(' ')\n // Optimizations: remove spaces around commands & before `-`\n //\n // We could also remove leading zeros for `0.5`-like values,\n // but their count is too small to spend time for.\n .replace(/ ?([achlmqrstvz]) ?/gi, '$1')\n .replace(/ \\-/g, '-')\n // workaround for FontForge SVG importing bug\n .replace(/zm/g, 'z m');\n};\n\n\n// Translate path to (x [, y])\n//\nSvgPath.prototype.translate = function (x, y) {\n this.__stack.push(matrix().translate(x, y || 0));\n return this;\n};\n\n\n// Scale path to (sx [, sy])\n// sy = sx if not defined\n//\nSvgPath.prototype.scale = function (sx, sy) {\n this.__stack.push(matrix().scale(sx, (!sy && (sy !== 0)) ? sx : sy));\n return this;\n};\n\n\n// Rotate path around point (sx [, sy])\n// sy = sx if not defined\n//\nSvgPath.prototype.rotate = function (angle, rx, ry) {\n this.__stack.push(matrix().rotate(angle, rx || 0, ry || 0));\n return this;\n};\n\n\n// Skew path along the X axis by `degrees` angle\n//\nSvgPath.prototype.skewX = function (degrees) {\n this.__stack.push(matrix().skewX(degrees));\n return this;\n};\n\n\n// Skew path along the Y axis by `degrees` angle\n//\nSvgPath.prototype.skewY = function (degrees) {\n this.__stack.push(matrix().skewY(degrees));\n return this;\n};\n\n\n// Apply matrix transform (array of 6 elements)\n//\nSvgPath.prototype.matrix = function (m) {\n this.__stack.push(matrix().matrix(m));\n return this;\n};\n\n\n// Transform path according to \"transform\" attr of SVG spec\n//\nSvgPath.prototype.transform = function (transformString) {\n if (!transformString.trim()) {\n return this;\n }\n this.__stack.push(transformParse(transformString));\n return this;\n};\n\n\n// Round coords with given decimal precition.\n// 0 by default (to integers)\n//\nSvgPath.prototype.round = function (d) {\n var contourStartDeltaX = 0, contourStartDeltaY = 0, deltaX = 0, deltaY = 0, l;\n\n d = d || 0;\n\n this.__evaluateStack();\n\n this.segments.forEach(function (s) {\n var isRelative = (s[0].toLowerCase() === s[0]);\n\n switch (s[0]) {\n case 'H':\n case 'h':\n if (isRelative) { s[1] += deltaX; }\n deltaX = s[1] - s[1].toFixed(d);\n s[1] = +s[1].toFixed(d);\n return;\n\n case 'V':\n case 'v':\n if (isRelative) { s[1] += deltaY; }\n deltaY = s[1] - s[1].toFixed(d);\n s[1] = +s[1].toFixed(d);\n return;\n\n case 'Z':\n case 'z':\n deltaX = contourStartDeltaX;\n deltaY = contourStartDeltaY;\n return;\n\n case 'M':\n case 'm':\n if (isRelative) {\n s[1] += deltaX;\n s[2] += deltaY;\n }\n\n deltaX = s[1] - s[1].toFixed(d);\n deltaY = s[2] - s[2].toFixed(d);\n\n contourStartDeltaX = deltaX;\n contourStartDeltaY = deltaY;\n\n s[1] = +s[1].toFixed(d);\n s[2] = +s[2].toFixed(d);\n return;\n\n case 'A':\n case 'a':\n // [cmd, rx, ry, x-axis-rotation, large-arc-flag, sweep-flag, x, y]\n if (isRelative) {\n s[6] += deltaX;\n s[7] += deltaY;\n }\n\n deltaX = s[6] - s[6].toFixed(d);\n deltaY = s[7] - s[7].toFixed(d);\n\n s[1] = +s[1].toFixed(d);\n s[2] = +s[2].toFixed(d);\n s[3] = +s[3].toFixed(d + 2); // better precision for rotation\n s[6] = +s[6].toFixed(d);\n s[7] = +s[7].toFixed(d);\n return;\n\n default:\n // a c l q s t\n l = s.length;\n\n if (isRelative) {\n s[l - 2] += deltaX;\n s[l - 1] += deltaY;\n }\n\n deltaX = s[l - 2] - s[l - 2].toFixed(d);\n deltaY = s[l - 1] - s[l - 1].toFixed(d);\n\n s.forEach(function (val, i) {\n if (!i) { return; }\n s[i] = +s[i].toFixed(d);\n });\n return;\n }\n });\n\n return this;\n};\n\n\n// Apply iterator function to all segments. If function returns result,\n// current segment will be replaced to array of returned segments.\n// If empty array is returned, current regment will be deleted.\n//\nSvgPath.prototype.iterate = function (iterator, keepLazyStack) {\n var segments = this.segments,\n replacements = {},\n needReplace = false,\n lastX = 0,\n lastY = 0,\n countourStartX = 0,\n countourStartY = 0;\n var i, j, newSegments;\n\n if (!keepLazyStack) {\n this.__evaluateStack();\n }\n\n segments.forEach(function (s, index) {\n\n var res = iterator(s, index, lastX, lastY);\n\n if (Array.isArray(res)) {\n replacements[index] = res;\n needReplace = true;\n }\n\n var isRelative = (s[0] === s[0].toLowerCase());\n\n // calculate absolute X and Y\n switch (s[0]) {\n case 'm':\n case 'M':\n lastX = s[1] + (isRelative ? lastX : 0);\n lastY = s[2] + (isRelative ? lastY : 0);\n countourStartX = lastX;\n countourStartY = lastY;\n return;\n\n case 'h':\n case 'H':\n lastX = s[1] + (isRelative ? lastX : 0);\n return;\n\n case 'v':\n case 'V':\n lastY = s[1] + (isRelative ? lastY : 0);\n return;\n\n case 'z':\n case 'Z':\n // That make sence for multiple contours\n lastX = countourStartX;\n lastY = countourStartY;\n return;\n\n default:\n lastX = s[s.length - 2] + (isRelative ? lastX : 0);\n lastY = s[s.length - 1] + (isRelative ? lastY : 0);\n }\n });\n\n // Replace segments if iterator return results\n\n if (!needReplace) { return this; }\n\n newSegments = [];\n\n for (i = 0; i < segments.length; i++) {\n if (typeof replacements[i] !== 'undefined') {\n for (j = 0; j < replacements[i].length; j++) {\n newSegments.push(replacements[i][j]);\n }\n } else {\n newSegments.push(segments[i]);\n }\n }\n\n this.segments = newSegments;\n\n return this;\n};\n\n\n// Converts segments from relative to absolute\n//\nSvgPath.prototype.abs = function () {\n\n this.iterate(function (s, index, x, y) {\n var name = s[0],\n nameUC = name.toUpperCase(),\n i;\n\n // Skip absolute commands\n if (name === nameUC) { return; }\n\n s[0] = nameUC;\n\n switch (name) {\n case 'v':\n // v has shifted coords parity\n s[1] += y;\n return;\n\n case 'a':\n // ARC is: ['A', rx, ry, x-axis-rotation, large-arc-flag, sweep-flag, x, y]\n // touch x, y only\n s[6] += x;\n s[7] += y;\n return;\n\n default:\n for (i = 1; i < s.length; i++) {\n s[i] += i % 2 ? x : y; // odd values are X, even - Y\n }\n }\n }, true);\n\n return this;\n};\n\n\n// Converts segments from absolute to relative\n//\nSvgPath.prototype.rel = function () {\n\n this.iterate(function (s, index, x, y) {\n var name = s[0],\n nameLC = name.toLowerCase(),\n i;\n\n // Skip relative commands\n if (name === nameLC) { return; }\n\n // Don't touch the first M to avoid potential confusions.\n if (index === 0 && name === 'M') { return; }\n\n s[0] = nameLC;\n\n switch (name) {\n case 'V':\n // V has shifted coords parity\n s[1] -= y;\n return;\n\n case 'A':\n // ARC is: ['A', rx, ry, x-axis-rotation, large-arc-flag, sweep-flag, x, y]\n // touch x, y only\n s[6] -= x;\n s[7] -= y;\n return;\n\n default:\n for (i = 1; i < s.length; i++) {\n s[i] -= i % 2 ? x : y; // odd values are X, even - Y\n }\n }\n }, true);\n\n return this;\n};\n\n\n// Converts arcs to cubic bézier curves\n//\nSvgPath.prototype.unarc = function () {\n this.iterate(function (s, index, x, y) {\n var new_segments, nextX, nextY, result = [], name = s[0];\n\n // Skip anything except arcs\n if (name !== 'A' && name !== 'a') { return null; }\n\n if (name === 'a') {\n // convert relative arc coordinates to absolute\n nextX = x + s[6];\n nextY = y + s[7];\n } else {\n nextX = s[6];\n nextY = s[7];\n }\n\n new_segments = a2c(x, y, nextX, nextY, s[4], s[5], s[1], s[2], s[3]);\n\n // Degenerated arcs can be ignored by renderer, but should not be dropped\n // to avoid collisions with `S A S` and so on. Replace with empty line.\n if (new_segments.length === 0) {\n return [ [ s[0] === 'a' ? 'l' : 'L', s[6], s[7] ] ];\n }\n\n new_segments.forEach(function (s) {\n result.push([ 'C', s[2], s[3], s[4], s[5], s[6], s[7] ]);\n });\n\n return result;\n });\n\n return this;\n};\n\n\n// Converts smooth curves (with missed control point) to generic curves\n//\nSvgPath.prototype.unshort = function () {\n var segments = this.segments;\n var prevControlX, prevControlY, prevSegment;\n var curControlX, curControlY;\n\n // TODO: add lazy evaluation flag when relative commands supported\n\n this.iterate(function (s, idx, x, y) {\n var name = s[0], nameUC = name.toUpperCase(), isRelative;\n\n // First command MUST be M|m, it's safe to skip.\n // Protect from access to [-1] for sure.\n if (!idx) { return; }\n\n if (nameUC === 'T') { // quadratic curve\n isRelative = (name === 't');\n\n prevSegment = segments[idx - 1];\n\n if (prevSegment[0] === 'Q') {\n prevControlX = prevSegment[1] - x;\n prevControlY = prevSegment[2] - y;\n } else if (prevSegment[0] === 'q') {\n prevControlX = prevSegment[1] - prevSegment[3];\n prevControlY = prevSegment[2] - prevSegment[4];\n } else {\n prevControlX = 0;\n prevControlY = 0;\n }\n\n curControlX = -prevControlX;\n curControlY = -prevControlY;\n\n if (!isRelative) {\n curControlX += x;\n curControlY += y;\n }\n\n segments[idx] = [\n isRelative ? 'q' : 'Q',\n curControlX, curControlY,\n s[1], s[2]\n ];\n\n } else if (nameUC === 'S') { // cubic curve\n isRelative = (name === 's');\n\n prevSegment = segments[idx - 1];\n\n if (prevSegment[0] === 'C') {\n prevControlX = prevSegment[3] - x;\n prevControlY = prevSegment[4] - y;\n } else if (prevSegment[0] === 'c') {\n prevControlX = prevSegment[3] - prevSegment[5];\n prevControlY = prevSegment[4] - prevSegment[6];\n } else {\n prevControlX = 0;\n prevControlY = 0;\n }\n\n curControlX = -prevControlX;\n curControlY = -prevControlY;\n\n if (!isRelative) {\n curControlX += x;\n curControlY += y;\n }\n\n segments[idx] = [\n isRelative ? 'c' : 'C',\n curControlX, curControlY,\n s[1], s[2], s[3], s[4]\n ];\n }\n });\n\n return this;\n};\n\n\nmodule.exports = SvgPath;\n",null,null,null,null,null,null,null,null,null,null,null,null,null,"// Calculate the specificity for a selector by dividing it into simple selectors and counting them\nvar calculate = function(input) {\n\tvar selectors,\n\t\tselector,\n\t\ti,\n\t\tlen,\n\t\tresults = [];\n\n\t// Separate input by commas\n\tselectors = input.split(',');\n\n\tfor (i = 0, len = selectors.length; i < len; i += 1) {\n\t\tselector = selectors[i];\n\t\tif (selector.length > 0) {\n\t\t\tresults.push(calculateSingle(selector));\n\t\t}\n\t}\n\n\treturn results;\n};\n\n/**\n * Calculates the specificity of CSS selectors\n * http://www.w3.org/TR/css3-selectors/#specificity\n *\n * Returns an object with the following properties:\n * - selector: the input\n * - specificity: e.g. 0,1,0,0\n * - parts: array with details about each part of the selector that counts towards the specificity\n * - specificityArray: e.g. [0, 1, 0, 0]\n */\nvar calculateSingle = function(input) {\n\tvar selector = input,\n\t\tfindMatch,\n\t\ttypeCount = {\n\t\t\t'a': 0,\n\t\t\t'b': 0,\n\t\t\t'c': 0\n\t\t},\n\t\tparts = [],\n\t\t// The following regular expressions assume that selectors matching the preceding regular expressions have been removed\n\t\tattributeRegex = /(\\[[^\\]]+\\])/g,\n\t\tidRegex = /(#[^\\#\\s\\+>~\\.\\[:\\)]+)/g,\n\t\tclassRegex = /(\\.[^\\s\\+>~\\.\\[:\\)]+)/g,\n\t\tpseudoElementRegex = /(::[^\\s\\+>~\\.\\[:]+|:first-line|:first-letter|:before|:after)/gi,\n\t\t// A regex for pseudo classes with brackets - :nth-child(), :nth-last-child(), :nth-of-type(), :nth-last-type(), :lang()\n\t\t// The negation psuedo class (:not) is filtered out because specificity is calculated on its argument\n\t\t// :global and :local are filtered out - they look like psuedo classes but are an identifier for CSS Modules\n\t\tpseudoClassWithBracketsRegex = /(:(?!not|global|local)[\\w-]+\\([^\\)]*\\))/gi,\n\t\t// A regex for other pseudo classes, which don't have brackets\n\t\tpseudoClassRegex = /(:(?!not|global|local)[^\\s\\+>~\\.\\[:]+)/g,\n\t\telementRegex = /([^\\s\\+>~\\.\\[:]+)/g;\n\n\t// Find matches for a regular expression in a string and push their details to parts\n\t// Type is \"a\" for IDs, \"b\" for classes, attributes and pseudo-classes and \"c\" for elements and pseudo-elements\n\tfindMatch = function(regex, type) {\n\t\tvar matches, i, len, match, index, length;\n\t\tif (regex.test(selector)) {\n\t\t\tmatches = selector.match(regex);\n\t\t\tfor (i = 0, len = matches.length; i < len; i += 1) {\n\t\t\t\ttypeCount[type] += 1;\n\t\t\t\tmatch = matches[i];\n\t\t\t\tindex = selector.indexOf(match);\n\t\t\t\tlength = match.length;\n\t\t\t\tparts.push({\n\t\t\t\t\tselector: input.substr(index, length),\n\t\t\t\t\ttype: type,\n\t\t\t\t\tindex: index,\n\t\t\t\t\tlength: length\n\t\t\t\t});\n\t\t\t\t// Replace this simple selector with whitespace so it won't be counted in further simple selectors\n\t\t\t\tselector = selector.replace(match, Array(length + 1).join(' '));\n\t\t\t}\n\t\t}\n\t};\n\n\t// Replace escaped characters with plain text, using the \"A\" character\n\t// https://www.w3.org/TR/CSS21/syndata.html#characters\n\t(function() {\n\t\tvar replaceWithPlainText = function(regex) {\n\t\t\t\tvar matches, i, len, match;\n\t\t\t\tif (regex.test(selector)) {\n\t\t\t\t\tmatches = selector.match(regex);\n\t\t\t\t\tfor (i = 0, len = matches.length; i < len; i += 1) {\n\t\t\t\t\t\tmatch = matches[i];\n\t\t\t\t\t\tselector = selector.replace(match, Array(match.length + 1).join('A'));\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\t// Matches a backslash followed by six hexadecimal digits followed by an optional single whitespace character\n\t\t\tescapeHexadecimalRegex = /\\\\[0-9A-Fa-f]{6}\\s?/g,\n\t\t\t// Matches a backslash followed by fewer than six hexadecimal digits followed by a mandatory single whitespace character\n\t\t\tescapeHexadecimalRegex2 = /\\\\[0-9A-Fa-f]{1,5}\\s/g,\n\t\t\t// Matches a backslash followed by any character\n\t\t\tescapeSpecialCharacter = /\\\\./g;\n\n\t\treplaceWithPlainText(escapeHexadecimalRegex);\n\t\treplaceWithPlainText(escapeHexadecimalRegex2);\n\t\treplaceWithPlainText(escapeSpecialCharacter);\n\t}());\n\n\t// Remove anything after a left brace in case a user has pasted in a rule, not just a selector\n\t(function() {\n\t\tvar regex = /{[^]*/gm,\n\t\t\tmatches, i, len, match;\n\t\tif (regex.test(selector)) {\n\t\t\tmatches = selector.match(regex);\n\t\t\tfor (i = 0, len = matches.length; i < len; i += 1) {\n\t\t\t\tmatch = matches[i];\n\t\t\t\tselector = selector.replace(match, Array(match.length + 1).join(' '));\n\t\t\t}\n\t\t}\n\t}());\n\n\t// Add attribute selectors to parts collection (type b)\n\tfindMatch(attributeRegex, 'b');\n\n\t// Add ID selectors to parts collection (type a)\n\tfindMatch(idRegex, 'a');\n\n\t// Add class selectors to parts collection (type b)\n\tfindMatch(classRegex, 'b');\n\n\t// Add pseudo-element selectors to parts collection (type c)\n\tfindMatch(pseudoElementRegex, 'c');\n\n\t// Add pseudo-class selectors to parts collection (type b)\n\tfindMatch(pseudoClassWithBracketsRegex, 'b');\n\tfindMatch(pseudoClassRegex, 'b');\n\n\t// Remove universal selector and separator characters\n\tselector = selector.replace(/[\\*\\s\\+>~]/g, ' ');\n\n\t// Remove any stray dots or hashes which aren't attached to words\n\t// These may be present if the user is live-editing this selector\n\tselector = selector.replace(/[#\\.]/g, ' ');\n\n\t// Remove the negation psuedo-class (:not) but leave its argument because specificity is calculated on its argument\n \t// Remove non-standard :local and :global CSS Module identifiers because they do not effect the specificity\n\tselector = selector.replace(/:not/g, ' ');\n\tselector = selector.replace(/:local/g, ' ');\n\tselector = selector.replace(/:global/g, ' ');\n\tselector = selector.replace(/[\\(\\)]/g, ' ');\n\n\t// The only things left should be element selectors (type c)\n\tfindMatch(elementRegex, 'c');\n\n\t// Order the parts in the order they appear in the original selector\n\t// This is neater for external apps to deal with\n\tparts.sort(function(a, b) {\n\t\treturn a.index - b.index;\n\t});\n\n\treturn {\n\t\tselector: input,\n\t\tspecificity: '0,' + typeCount.a.toString() + ',' + typeCount.b.toString() + ',' + typeCount.c.toString(),\n\t\tspecificityArray: [0, typeCount.a, typeCount.b, typeCount.c],\n\t\tparts: parts\n\t};\n};\n\n/**\n * Compares two CSS selectors for specificity\n * Alternatively you can replace one of the CSS selectors with a specificity array\n *\n * - it returns -1 if a has a lower specificity than b\n * - it returns 1 if a has a higher specificity than b\n * - it returns 0 if a has the same specificity than b\n */\nvar compare = function(a, b) {\n\tvar aSpecificity,\n\t\tbSpecificity,\n\t\ti;\n\n\tif (typeof a ==='string') {\n\t\tif (a.indexOf(',') !== -1) {\n\t\t\tthrow 'Invalid CSS selector';\n\t\t} else {\n\t\t\taSpecificity = calculateSingle(a)['specificityArray'];\n\t\t}\n\t} else if (Array.isArray(a)) {\n\t\tif (a.filter(function(e) { return (typeof e === 'number'); }).length !== 4) {\n\t\t\tthrow 'Invalid specificity array';\n\t\t} else {\n\t\t\taSpecificity = a;\n\t\t}\n\t} else {\n\t\tthrow 'Invalid CSS selector or specificity array';\n\t}\n\n\tif (typeof b ==='string') {\n\t\tif (b.indexOf(',') !== -1) {\n\t\t\tthrow 'Invalid CSS selector';\n\t\t} else {\n\t\t\tbSpecificity = calculateSingle(b)['specificityArray'];\n\t\t}\n\t} else if (Array.isArray(b)) {\n\t\tif (b.filter(function(e) { return (typeof e === 'number'); }).length !== 4) {\n\t\t\tthrow 'Invalid specificity array';\n\t\t} else {\n\t\t\tbSpecificity = b;\n\t\t}\n\t} else {\n\t\tthrow 'Invalid CSS selector or specificity array';\n\t}\n\n\tfor (i = 0; i < 4; i += 1) {\n\t\tif (aSpecificity[i] < bSpecificity[i]) {\n\t\t\treturn -1;\n\t\t} else if (aSpecificity[i] > bSpecificity[i]) {\n\t\t\treturn 1;\n\t\t}\n\t}\n\n\treturn 0;\n};\n\nexport { calculate, compare };\n",null,null],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","hasOwnProperty","__extends","__","this","constructor","prototype","create","__assign","assign","t","s","i","n","arguments","length","call","apply","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","__generator","body","f","y","g","_","label","sent","trys","ops","verb","throw","return","Symbol","iterator","v","op","TypeError","pop","push","colorString","undefined","ok","key","charAt","substr","replace","toLowerCase","simpleColors","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgrey","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","feldspar","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgrey","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslateblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","violetred","wheat","white","whitesmoke","yellow","yellowgreen","colorDefs","re","example","process","bits","parseInt","processor","exec","channels","r","isNaN","RGBColor","a","toString","examples","j","sc","xml","document","createElement","setAttribute","listItem","listColor","exampleDiv","style","cssText","toHex","appendChild","createTextNode","listItemValue","toRGB","color","ColorFill","forNode","context","AttributeState","clone","xmlSpace","fill","fillOpacity","fontFamily","fontSize","fontStyle","fontWeight","opacity","stroke","strokeDasharray","strokeDashoffset","strokeLinecap","strokeLinejoin","strokeMiterlimit","strokeOpacity","strokeWidth","textAnchor","alignmentBaseline","visibility","attributeState","iriReference","alignmentBaselineMap","bottom","text-bottom","top","text-top","hanging","middle","central","center","mathematical","ideographic","alphabetic","baseline","TextMeasure","text","width","measureTextWidth","xOffset","getMeasureFunction","textMeasuringTextElement","createElementNS","svg","setProperty","getContext","font","join","measureText","measurementTextNode","getMeasurementTextNode","textNode","setAttributeNS","textContent","getBBox","method","measureMethods","canvasWidth","canvasTextMeasure","testString","svgWidth","svgTextMeasure","Math","abs","epsilon","parentNode","removeChild","pdf","values","svg2pdfParameters","default","viewport","refsHandler","styleSheets","textMeasure","transform","unitMatrix","withinClipPath","withinUse","Context","regexAnySingleEscape","regexSingleEscape","regexExcessiveSpaces","cssesc","string","options","defaults","merge","quotes","quote","isIdentifier","firstChar","output","counter","character","codePoint","charCodeAt","extra","toUpperCase","escapeEverything","test","slice","$0","$1","$2","wrap","version","idMap","renderedElements","ReferencesHandler","id","renderCallback","generateKey","svgNode","get","_a","cssEsc","toRGBA","getAngle","from","to","atan2","toCubic","normalize","sqrt","getDirectionVector","addVectors","v1","v2","multVecMatrix","vec","matrix","x","c","segments","Path","MoveTo","LineTo","x1","y1","x2","y2","CurveTo","Close","forEach","seg","p1","p2","moveTo","lineTo","curveTo","close","nodeIs","node","tagsString","split","indexOf","nodeName","tagName","getAttribute","propertyNode","propertyCss","attribute","getPropertyValue","propertyValue","hasAttribute","svgNodeIsVisible","parentVisible","element","visible","svgNodeAndChildrenVisible","childNodes","children","child","isVisible","markers","MarkerList","marker","tf","angle","anchor","cos","sin","Matrix","matrixMult","saveGraphicsState","setLineWidth","getRendered","doFormObject","restoreGraphicsState","toPixels","pdfFontSize","match","parseFloat","mapAlignmentBaseline","parseFloats","str","floats","regex","parseColor","currentcolor","transparent","identifierPattern","spacePattern","starting","state","buffer","names","Error","fontAliases","sans-serif","verdana","arial","fixed","monospace","terminal","serif","cursive","fantasy","getBoundingBoxByChildren","svgnode","boundingBox","nodeBox","getBoundingBox","min","max","defaultBoundingBox","pf","computeViewBoxTransform","viewBox","eX","eY","eWidth","eHeight","noTranslate","align","meetOrSlice","vbX","vbY","vbWidth","vbHeight","scaleX","scaleY","preserveAspectRatio","alignAndMeetOrSlice","translateX","translateY","translate","scale","parseTransform","transformString","m","tSLength","mRegex","tRegex","rRegex","sRegex","sXRegex","sYRegex","resultMatrix","PI","t1","t2","parent","SvgNode","getBoundingBoxCore","nodeTransform","computeNodeTransformCore","NonRenderedNode","parentContext","pdfGradientType","_super","_this","contextColor","Gradient","ancestor","colorAttr","getParent","colors","opacitySum","hasOpacity","stop","offset","parseGradientOffset","gState","GState","pattern","ShadingPattern","getCoordinates","addShadingPattern","parsedValue","LinearGradient","RadialGradient","cx","cy","fx","fy","gradient","GradientFill","gradientUnitsMatrix","bBox","gradientTransform","Pattern","TilingPattern","beginTilingPattern","_i","render","_b","endTilingPattern","PatternFill","patternData","xStep","yStep","patternUnitsMatrix","fillBBox","height","patternContentUnitsMatrix","patternTransformMatrix","patternTransform","parseAttributes","domNode","fillColor","url","fillUrl","fillNode","parseFill","strokeRGB","lineCap","lineJoin","dashArray","dashOffset","miterLimit","fontFamilies","FontFamily","fontType","availableFonts","getFontList","firstAvailable","some","availableStyles","findFirstAvailableFontFamily","getFontSize","matchArr","applyAttributes","childContext","hasFillOpacity","hasStrokeOpacity","setGState","setFillColor","setDrawColor","setLineCap","setLineJoin","setLineDashPattern","setLineMiterLimit","setTextColor","setFont","setFontSize","internal","scaleFactor","getClipPathNode","targetNode","clipPathAttr","clipPathId","applyClipPath","clipPathNode","clipContext","RenderedNode","computeNodeTransform","hasClipPath","clipNode","renderCore","hasMarkers","GeometryNode","path","getCachedPath","setCurrentTransformationMatrix","draw","fillOrStroke","drawMarkers","cachedPath","getPath","getMarkers","getFillData","fillData","isNodeFillRuleEvenOdd","fillStrokeEvenOdd","fillStroke","fillEvenOdd","discardPath","minX","Number","POSITIVE_INFINITY","minY","maxX","NEGATIVE_INFINITY","maxY","markerStart","markerMid","markerEnd","iri","list_1","prevAngle","curAngle","first","firstAngle","last_1","curr","hasStartMarker","index","tmp","hasEndMarker","hasMidMarker","prev","addMarker","Marker","GraphicsNode","Line","box","ownerSVGElement","Use","substring","refNode","refNodeOpensViewport","refContext","Viewport","renderReferencedNode","rect","clip","beginFormObject","endFormObject","Rect","w","h","isFinite","rxAttr","ryAttr","rx","ry","arc","SQRT2","EllipseBase","getRx","getRy","lx","ly","Ellipse","getTextRenderingMode","renderingMode","removeNewlines","replaceTabsBySpace","consolidateSpaces","transformText","originX","originY","texts","textNodes","contexts","textMeasures","TextChunk","tSpan","charSpace","textNodeContext","alreadySeen","xs","ys","currentTextX","currentTextY","includes","tSpanDx","tSpanDy","textOffset","textRenderingMode","TextNode","textChunks","currentTextSegment","trimInfo","firstText","initialSpace","childNode","trimmedText","prevText","transformedText","add","prevContext","tSpanAbsX","type","chunk","tSpanAbsY","processTSpans","lengthAdjustment","textX","textY","dx","dy","textLength","childElementCount","trim","transformXmlSpace","getTextOffset","defaultSize","trimRight","rightTrimText","totalDefaultWidth_1","totalLength_1","reduce","lastPositions","setX","setY","put","paramCounts","l","q","z","SPECIAL_SPACES","isDigit","code","isDigitStart","State","param","err","segmentStart","data","skipSpaces","ch","scanFlag","scanParam","start","zeroFirst","hasCeiling","hasDecimal","hasDot","finalizeSegment","cmd","cmdLC","params","concat","splice","scanSegment","cmdCode","is_arc","comma_found","need_params","isCommand","queue","cache","tx","ty","sx","sy","rotate","rad","skewX","skewY","toArray","m1","m2","calc","isRelative","operations","CMD_SPLIT_RE","PARAMS_SPLIT_RE","TAU","unit_vector_angle","ux","uy","vx","vy","dot","acos","approximate_unit_arc","theta1","delta_theta","alpha","fa","fs","phi","sin_phi","cos_phi","x1p","y1p","lambda","cc","rx_sq","ry_sq","x1p_sq","y1p_sq","radicant","cxp","cyp","v1x","v1y","v2x","v2y","get_arc_center","ceil","map","curve","xp","yp","torad","ax","ma","J","K","D","JK","L","l1","l2","atan","isDegenerate","SvgPath","pstate","svgPath","pathParse","__stack","src","sgm","__matrix","self","iterate","name","ellipse","__evaluateStack","skipCmd","elements","degrees","item","transformParse","round","contourStartDeltaX","contourStartDeltaY","deltaX","deltaY","toFixed","val","keepLazyStack","newSegments","replacements","needReplace","lastX","lastY","countourStartX","countourStartY","res","isArray","nameUC","rel","nameLC","unarc","new_segments","nextX","nextY","a2c","unshort","prevControlX","prevControlY","prevSegment","curControlX","curControlY","idx","PathNode","prevX","prevY","p3","dataUriRegex","imageUrl","imageLoadingPromise","ImageNode","fetchImageData","format","parser","DOMParser","svgElement","parseFromString","firstElementChild","String","parse","dataUri","btoa","addImage","console","warn","mimeType","mimeTypeParts","atob","decodeURIComponent","fetchImage","lastIndexOf","xhr","XMLHttpRequest","open","responseType","onload","status","bytes","Uint8Array","response","fromCharCode","onerror","onabort","send","closed","Traverse","points","parsePointsString","VoidNode","MarkerNode","tfMatrix","vb","refX","refY","bounds","Circle","getR","ContainerNode","Svg","getX","getY","getWidth","getHeight","getViewBox","widthAttr","parameters","isOutermostSvg","aspectRatio","heightAttr","xAttr","yAttr","Group","ClipPath","clipPathMatrix","inversed","fn","forEachChild","Polygon","Polyline","setParent","calculateSingle","input","findMatch","replaceWithPlainText","selector","typeCount","parts","matches","len","sort","specificity","specificityArray","rootSvg","loadExtSheets","loadExternalSheets","StyleSheets","collectStyleSheetTexts","sheetTexts","parseCssSheets","ownerDocument","loadSheet","styleElements","querySelectorAll","styleElement","all","filter","sheet","styleDoc","implementation","createHTMLDocument","sheetTexts_1","sheetText","CSSStyleSheet","cssRules","cssRule","CSSStyleRule","deleteRule","cssStyleRule","selectorText","selectors","splitSelectorAtCommas","insertRule","initialRegex","closingDoubleQuotesRegex","closingSingleQuotesRegex","lastCommaIndex","closingQuotesRegex","lastIndex","responseText","catch","matchingRules","rule","compare","priorityA","getPropertyPriority","aSpecificity","bSpecificity","compareSpecificity","previousValue","currentValue","svg2pdf","extCss","loadExternalStyleSheets","load","_d","pageSize","advancedAPI","compatAPI","cleanupTextMeasuring","API"],"mappings":"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"} \ No newline at end of file diff --git a/package.json b/package.json index c298d774..e4ce505b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "svg2pdf.js", - "version": "2.0.0", + "version": "2.1.0", "description": "A javascript-only SVG to PDF conversion utility that runs in the browser leveraging jsPDF", "main": "dist/svg2pdf.umd.min.js", "module": "dist/svg2pdf.es.min.js",