UNPKG

svg2pdf.js

Version:

A javascript-only SVG to PDF conversion utility that runs in the browser leveraging jsPDF

1 lines 69.3 kB
import t from"cssesc";import e from"font-family-papandreou";import{jsPDF as r,GState as i,ShadingPattern as n,TilingPattern as a}from"jspdf";import s from"svgpath";import{compare as o}from"specificity";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)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r])},l(t,e)};function u(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");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},h.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:/^rgb\(([0-9.]+)%,\s*([0-9.]+)%,\s*([0-9.]+)%\)$/,example:["rgb(50.5%, 25.75%, 75.5%)","rgb(100%,0%,0%)"],process:function(t){return[Math.round(2.55*parseFloat(t[1])),Math.round(2.55*parseFloat(t[2])),Math.round(2.55*parseFloat(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,this.contextFill=null,this.contextStroke=null,this.fillRule=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.fillRule=this.fillRule,e.contextFill=this.contextFill,e.contextStroke=this.contextStroke,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.fillRule="nonzero",e.contextFill=null,e.contextStroke=null,e},t.getContextColors=function(t,e){void 0===e&&(e=!1);var r={};return t.attributeState.contextFill&&(r.contextFill=t.attributeState.contextFill),t.attributeState.contextStroke&&(r.contextStroke=t.attributeState.contextStroke),e&&t.attributeState.color&&(r.color=t.attributeState.color),r},t}(),g=function(){function t(t,e){var r,i,n;this.pdf=t,this.svg2pdfParameters=e.svg2pdfParameters,this.attributeState=e.attributeState?e.attributeState.clone():m.default(),this.viewport=e.viewport,this.refsHandler=e.refsHandler,this.styleSheets=e.styleSheets,this.textMeasure=e.textMeasure,this.transform=null!==(r=e.transform)&&void 0!==r?r:this.pdf.unitMatrix,this.withinClipPath=null!==(i=e.withinClipPath)&&void 0!==i&&i,this.withinUse=null!==(n=e.withinUse)&&void 0!==n&&n}return t.prototype.clone=function(e){var r,i,n,a;return void 0===e&&(e={}),new t(this.pdf,{svg2pdfParameters:this.svg2pdfParameters,attributeState:e.attributeState?e.attributeState.clone():this.attributeState.clone(),viewport:null!==(r=e.viewport)&&void 0!==r?r:this.viewport,refsHandler:this.refsHandler,styleSheets:this.styleSheets,textMeasure:this.textMeasure,transform:null!==(i=e.transform)&&void 0!==i?i:this.transform,withinClipPath:null!==(n=e.withinClipPath)&&void 0!==n?n:this.withinClipPath,withinUse:null!==(a=e.withinUse)&&void 0!==a?a:this.withinUse})},t}(),y=function(){function e(t){this.renderedElements={},this.idMap=t,this.idPrefix=String(e.instanceCounter++)}return e.prototype.getRendered=function(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=this.generateKey(t,e),this.renderedElements.hasOwnProperty(i)?[2,this.renderedElements[t]]:(n=this.get(t),this.renderedElements[i]=n,[4,r(n)]);case 1:return a.sent(),[2,n]}}))}))},e.prototype.get=function(e){return this.idMap[t(e,{isIdentifier:!0})]},e.prototype.generateKey=function(t,e){var r="";return e&&(r=["color","contextFill","contextStroke"].map((function(t){var r,i;return null!==(i=null===(r=e[t])||void 0===r?void 0:r.toRGBA())&&void 0!==i?i:""})).join("|")),this.idPrefix+"|"+t+"|"+r},e.instanceCounter=0,e}();function b(t,e){return Math.atan2(e[1]-t[1],e[0]-t[0])}var v=2/3;function x(t,e){return[v*(e[0]-t[0])+t[0],v*(e[1]-t[1])+t[1]]}function S(t){var e=Math.sqrt(t[0]*t[0]+t[1]*t[1]);return[t[0]/e,t[1]/e]}function w(t,e){return S([e[0]-t[0],e[1]-t[1]])}function k(t,e){return[t[0]+e[0],t[1]+e[1]]}function M(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 C=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 F(t,e)),this},t.prototype.curveTo=function(t,e,r,i,n,a){return this.segments.push(new A(t,e,r,i,n,a)),this},t.prototype.close=function(){return this.segments.push(new P),this},t.prototype.transform=function(t){this.segments.forEach((function(e){if(e instanceof T||e instanceof F||e instanceof A){var r=M([e.x,e.y],t);e.x=r[0],e.y=r[1]}if(e instanceof A){var i=M([e.x1,e.y1],t),n=M([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 F?e.lineTo(t.x,t.y):t instanceof A?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},F=function(t,e){this.x=t,this.y=e},A=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},P=function(){};function B(t,e){return e.split(",").indexOf((t.nodeName||t.tagName).toLowerCase())>=0}function N(t,e,r,i){var n;void 0===i&&(i=r);var a=null===(n=t.style)||void 0===n?void 0:n.getPropertyValue(i);if(a)return a;var s=e.getPropertyValue(t,i);return s||(t.hasAttribute(r)&&t.getAttribute(r)||void 0)}function O(t,e,r){if("none"===N(t.element,r.styleSheets,"display"))return!1;var i=e,n=N(t.element,r.styleSheets,"visibility");return n&&(i="hidden"!==n),i}function L(t,e,r){var i=O(t,e,r);return 0!==t.element.childNodes.length&&(t.children.forEach((function(t){t.isVisible(i,r)&&(i=!0)})),i)}var E=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,l;return c(this,(function(u){switch(u.label){case 0:e=0,u.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(),l=m.getContextColors(t),[4,t.refsHandler.getRendered(r.id,l,(function(e){return e.apply(t)}))]):[3,4];case 2:u.sent(),t.pdf.doFormObject(t.refsHandler.generateKey(r.id,l),i),t.pdf.restoreGraphicsState(),u.label=3;case 3:return e++,[3,1];case 4:return[2]}}))}))},t}(),I=function(t,e,r,i){void 0===i&&(i=!1),this.id=t,this.anchor=e,this.angle=r,this.isStartMarker=i},R=/url\(["']?#([^"']+)["']?\)/,H={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"},D="http://www.w3.org/2000/svg";function W(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 H[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 G(t,e){if("transparent"===t){var r=new p("rgb(0,0,0)");return r.a=0,r}if(e&&"currentcolor"===t.toLowerCase())return e.color||new p("rgb(0,0,0)");if(e&&"context-stroke"===t.toLowerCase())return e.contextStroke||new p("rgb(0,0,0)");if(e&&"context-fill"===t.toLowerCase())return e.contextFill||new p("rgb(0,0,0)");var i=/\s*rgba\(((?:[^,\)]*,){3}[^,\)]*)\)\s*/.exec(t);if(i){var n=j(i[1]),a=new p("rgb("+n.slice(0,3).join(",")+")");return a.a=n[3],a}return new p(t)}var U={"sans-serif":"helvetica",verdana:"helvetica",arial:"helvetica",fixed:"courier",monospace:"courier",terminal:"courier",serif:"times",cursive:"times",fantasy:"times"};var z,Y=(z=r.version.split("."),2===parseFloat(z[0])&&3===parseFloat(z[1]));function X(t,e){return Y?400==e?"italic"==t?"italic":"normal":700==e&&"italic"!==t?"bold":t+""+e:400==e||"normal"===e?"italic"===t?"italic":"normal":700!=e&&"bold"!==e||"normal"!==t?(700==e?"bold":e)+""+t:"bold"}function q(t,e){if("none"===N(e.element,t.styleSheets,"display"))return[0,0,0,0];var r=[];return e.children.forEach((function(e){var i=e.getBoundingBox(t);if(0!==i[0]||0!==i[1]||0!==i[2]||0!==i[3]){var n=e.computeNodeTransform(t);i[0]=i[0]*n.sx+n.tx,i[1]=i[1]*n.sy+n.ty,i[2]=i[2]*n.sx,i[3]=i[3]*n.sy,r=0===r.length?i:[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])]}})),0===r.length?[0,0,0,0]:r}function _(t,e){var r=parseFloat,i=r(t.getAttribute("x1"))||r(N(t,e.styleSheets,"x"))||r(N(t,e.styleSheets,"cx"))-r(N(t,e.styleSheets,"r"))||0,n=r(t.getAttribute("x2"))||i+r(N(t,e.styleSheets,"width"))||r(N(t,e.styleSheets,"cx"))+r(N(t,e.styleSheets,"r"))||0,a=r(t.getAttribute("y1"))||r(N(t,e.styleSheets,"y"))||r(N(t,e.styleSheets,"cy"))-r(N(t,e.styleSheets,"r"))||0,s=r(t.getAttribute("y2"))||a+r(N(t,e.styleSheets,"height"))||r(N(t,e.styleSheets,"cy"))+r(N(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 $(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=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 K=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"===N(this.element,t.styleSheets,"display")?[0,0,0,0]:this.getBoundingBoxCore(t)},t.prototype.computeNodeTransform=function(t){var e=this.computeNodeTransformCore(t),r=N(this.element,t.styleSheets,"transform");return r?t.pdf.matrixMult(e,Q(r,t)):e},t}(),J=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}(K),Z=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 e,r,a,s,o,l;return c(this,(function(u){return(e=this.element.getAttribute("id"))?(r=this.getStops(t.styleSheets),a=0,s=!1,r.forEach((function(t){var e=t.opacity;e&&1!==e&&(a+=e,s=!0)})),s&&(o=new i({opacity:a/r.length})),l=new n(this.pdfGradientType,this.getCoordinates(),r,o),t.pdf.addShadingPattern(e,l),[2]):[2]}))}))},e.prototype.getStops=function(t){var r=this;if(this.stops)return this.stops;if(void 0===this.contextColor){this.contextColor=null;for(var i=this;i;){var n=N(i.element,t,"color");if(n){this.contextColor=G(n,null);break}i=i.getParent()}}var a=[];return this.children.forEach((function(i){if("stop"===i.element.tagName.toLowerCase()){var n=N(i.element,t,"color"),s=G(N(i.element,t,"stop-color")||"",n?{color:G(n,null)}:{color:r.contextColor}),o=parseFloat(N(i.element,t,"stop-opacity")||"1");a.push({offset:e.parseGradientOffset(i.element.getAttribute("offset")||"0"),color:[s.r,s.g,s.b],opacity:o})}})),this.stops=a},e.prototype.getBoundingBoxCore=function(t){return _(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}(J),tt=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}(Z),et=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}(Z),rt=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 g(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(N(this.gradient.element,e.styleSheets,"gradientTransform","transform"),e),[2,{key:this.key,matrix:e.pdf.matrixMult(n,r)}]}}))}))},t}(),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,n,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 a([r[0],r[1],r[0]+r[2],r[1]+r[3]],r[2],r[3]),t.pdf.beginTilingPattern(i),n=0,s=this.children,o.label=1;case 1:return n<s.length?[4,s[n].render(new g(t.pdf,{attributeState:t.attributeState,refsHandler:t.refsHandler,styleSheets:t.styleSheets,viewport:t.viewport,svg2pdfParameters:t.svg2pdfParameters,textMeasure:t.textMeasure}))]:[3,4];case 2:o.sent(),o.label=3;case 3:return n++,[3,1];case 4:return t.pdf.endTilingPattern(e,i),[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){return _(this.element,t)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.prototype.isVisible=function(t,e){return L(this,t,e)},e}(J),nt=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 g(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=N(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 at(t,e){var r=R.exec(t);if(r){var i=r[1],n=e.refsHandler.get(i);return n&&(n instanceof tt||n instanceof et)?function(t,e,r){var i=e.getStops(r.styleSheets);if(0===i.length)return null;if(1===i.length){var n=i[0].color,a=new p;return a.ok=!0,a.r=n[0],a.g=n[1],a.b=n[2],a.a=i[0].opacity,new d(a)}return new rt(t,e)}(i,n,e):n&&n instanceof it?new nt(i,n):new d(new p("rgb(0, 0, 0)"))}var a=G(t,e.attributeState);return a.ok?new d(a):null}function st(t,r,i){var n=i||r.element,a=N(n,t.styleSheets,"color");if(a){var s=G(a,t.attributeState);s.ok?t.attributeState.color=s:t.attributeState.color=new p("rgb(0,0,0)")}var o=N(n,t.styleSheets,"visibility");o&&(t.attributeState.visibility=o);var l=N(n,t.styleSheets,"fill");l&&(t.attributeState.fill=at(l,t));var u=N(n,t.styleSheets,"fill-opacity");u&&(t.attributeState.fillOpacity=parseFloat(u));var h=N(n,t.styleSheets,"stroke-opacity");h&&(t.attributeState.strokeOpacity=parseFloat(h));var f=N(n,t.styleSheets,"opacity");f&&(t.attributeState.opacity=parseFloat(f));var c=N(n,t.styleSheets,"stroke-width");void 0!==c&&""!==c&&(t.attributeState.strokeWidth=Math.abs(parseFloat(c)));var m=N(n,t.styleSheets,"stroke");if(m)if("none"===m)t.attributeState.stroke=null;else{var g=G(m,t.attributeState);g.ok&&(t.attributeState.stroke=new d(g))}m&&t.attributeState.stroke instanceof d&&(t.attributeState.contextStroke=t.attributeState.stroke.color),l&&t.attributeState.fill instanceof d&&(t.attributeState.contextFill=t.attributeState.fill.color);var y=N(n,t.styleSheets,"stroke-linecap");y&&(t.attributeState.strokeLinecap=y);var b=N(n,t.styleSheets,"stroke-linejoin");b&&(t.attributeState.strokeLinejoin=b);var v=N(n,t.styleSheets,"stroke-dasharray");if(v){var x=parseInt(N(n,t.styleSheets,"stroke-dashoffset")||"0");t.attributeState.strokeDasharray=j(v),t.attributeState.strokeDashoffset=x}var S=N(n,t.styleSheets,"stroke-miterlimit");void 0!==S&&""!==S&&(t.attributeState.strokeMiterlimit=parseFloat(S));var w=n.getAttribute("xml:space");w&&(t.attributeState.xmlSpace=w);var k=N(n,t.styleSheets,"font-weight");k&&(t.attributeState.fontWeight=k);var M=N(n,t.styleSheets,"font-style");M&&(t.attributeState.fontStyle=M);var C=N(n,t.styleSheets,"font-family");if(C){var T=e.parse(C);t.attributeState.fontFamily=function(t,e,r){var i=X(t.fontStyle,t.fontWeight),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,T,t)}var F=N(n,t.styleSheets,"font-size");if(F){var A=t.pdf.getFontSize();t.attributeState.fontSize=W(F,A)}var P=N(n,t.styleSheets,"vertical-align")||N(n,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 O=N(n,t.styleSheets,"text-anchor");O&&(t.attributeState.textAnchor=O);var L=N(n,t.styleSheets,"fill-rule");L&&(t.attributeState.fillRule=L)}function ot(t,e,r){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(B(r,"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 i(h))}if(t.attributeState.fill&&t.attributeState.fill!==e.attributeState.fill&&t.attributeState.fill instanceof d&&t.attributeState.fill.color.ok&&!B(r,"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=U.hasOwnProperty(t.attributeState.fontFamily)?U[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=X(t.attributeState.fontStyle,t.attributeState.fontWeight)),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!==e.attributeState.fontSize&&t.pdf.setFontSize(t.attributeState.fontSize*t.pdf.internal.scaleFactor)}function lt(t,e,r){var i=R.exec(t);if(i){var n=i[1];return r.refsHandler.get(n)||void 0}}function ut(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 ht=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,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.matrixMult(this.computeNodeTransform(e),t.transform),st(e,this),r=N(this.element,e.styleSheets,"clip-path"),(i=r&&"none"!==r)?(n=lt(r,0,e))?n.isVisible(!0,e)?(e.pdf.saveGraphicsState(),[4,ut(this,n,e)]):[3,2]:[3,4]:[3,5]):[2];case 1:return a.sent(),[3,3];case 2:return[2];case 3:return[3,5];case 4:i=!1,a.label=5;case 5:return e.withinClipPath||e.pdf.saveGraphicsState(),ot(e,t,this.element),[4,this.renderCore(e)];case 6:return a.sent(),e.withinClipPath||e.pdf.restoreGraphicsState(),i&&e.pdf.restoreGraphicsState(),[2]}}))}))},e}(K),ft=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return u(e,t),e}(ht),ct=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"===t.attributeState.fillRule,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||!e.segments.length)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 F||u instanceof A)&&(s=u.x,o=u.y),u instanceof A?(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=N(this.element,e.styleSheets,"marker-start"),i=N(this.element,e.styleSheets,"marker-mid"),n=N(this.element,e.styleSheets,"marker-end"),a=new E;if(r||i||n){n&&(n=pt(n)),r&&(r=pt(r)),i&&(i=pt(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 P&&r>t){var i=s[r-1];f=(i instanceof T||i instanceof F||i instanceof A)&&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 F||m instanceof A){if(e instanceof A)c&&a.addMarker(new I(r,[m.x,m.y],b(f?[f.x,f.y]:[m.x,m.y],[e.x1,e.y1]),!0)),p&&a.addMarker(new I(n,[e.x,e.y],b([e.x2,e.y2],[e.x,e.y]))),d&&(l=w([m.x,m.y],[e.x1,e.y1]),l=m instanceof T?l:S(k(o,l)),a.addMarker(new I(i,[m.x,m.y],Math.atan2(l[1],l[0])))),o=w([e.x2,e.y2],[e.x,e.y]);else if(e instanceof T||e instanceof F){if(l=w([m.x,m.y],[e.x,e.y]),c){var g=f?w([f.x,f.y],[e.x,e.y]):l;a.addMarker(new I(r,[m.x,m.y],Math.atan2(g[1],g[0]),!0))}if(p&&a.addMarker(new I(n,[e.x,e.y],Math.atan2(l[1],l[0]))),d){g=e instanceof T?o:m instanceof T?l:S(k(o,l));a.addMarker(new I(i,[m.x,m.y],Math.atan2(g[1],g[0])))}o=l}else if(e instanceof P){if(l=w([m.x,m.y],[u.x,u.y]),d){g=m instanceof T?l:S(k(o,l));a.addMarker(new I(i,[m.x,m.y],Math.atan2(g[1],g[0])))}if(p){g=S(k(l,h));a.addMarker(new I(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 F||y instanceof A)&&(h=w([u.x,u.y],[y.x,y.y]))}},p=0;p<s.length;p++)c(p)}return a.markers.forEach((function(t){var r=e.refsHandler.get(t.id);if(r){var i=N(r.element,e.styleSheets,"orient");null!=i&&(t.isStartMarker&&"auto-start-reverse"===i&&(t.angle+=Math.PI),isNaN(Number(i))||(t.angle=parseFloat(i)/180*Math.PI))}})),a},e}(ft);function pt(t){var e=R.exec(t);return e&&e[1]||void 0}var dt=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 C).moveTo(e,r).lineTo(i,n):null},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e.prototype.isVisible=function(t,e){return O(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}(ct),mt=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,a;return c(this,(function(s){switch(s.label){case 0:return this.isVisible("hidden"!==t.attributeState.visibility,t)?((e=t.clone()).transform=e.pdf.unitMatrix,st(e,this),r=N(this.element,e.styleSheets,"clip-path"),r&&"none"!==r&&(i=lt(r,0,e))?i.isVisible(!0,e)?[4,ut(this,i,e)]:[3,2]:[3,3]):[2];case 1:return s.sent(),[3,3];case 2:return[2];case 3:ot(e,t,this.element),n=0,a=this.children,s.label=4;case 4:return n<a.length?[4,a[n].render(e)]:[3,7];case 5:s.sent(),s.label=6;case 6:return n++,[3,4];case 7:return[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){return q(t,this)},e.prototype.isVisible=function(t,e){return L(this,t,e)},e.prototype.computeNodeTransformCore=function(t){var e=parseFloat(N(this.element,t.styleSheets,"x")||"0"),r=parseFloat(N(this.element,t.styleSheets,"y")||"0"),i=this.element.getAttribute("viewBox");if(i){var n=j(i),a=parseFloat(N(this.element,t.styleSheets,"width")||N(this.element.ownerSVGElement,t.styleSheets,"width")||i[2]),s=parseFloat(N(this.element,t.styleSheets,"height")||N(this.element.ownerSVGElement,t.styleSheets,"height")||i[3]);return $(this.element,n,e,r,a,s,t)}return t.pdf.Matrix(1,0,0,1,e,r)},e}(J),gt=function(t,e){this.width=t,this.height=e},yt=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,y;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=B(a.element,"symbol,svg")&&a.element.hasAttribute("viewBox"),o=r(N(this.element,t.styleSheets,"x")||"0"),l=r(N(this.element,t.styleSheets,"y")||"0"),u=void 0,h=void 0,s?(u=r(N(this.element,t.styleSheets,"width")||N(a.element,t.styleSheets,"width")||"0"),h=r(N(this.element,t.styleSheets,"height")||N(a.element,t.styleSheets,"height")||"0"),o+=r(N(a.element,t.styleSheets,"x")||"0"),l+=r(N(a.element,t.styleSheets,"y")||"0"),p=j(a.element.getAttribute("viewBox")),f=$(a.element,p,o,l,u,h,t)):f=t.pdf.Matrix(1,0,0,1,o,l),d=m.getContextColors(t,!0),y=new g(t.pdf,{refsHandler:t.refsHandler,styleSheets:t.styleSheets,withinUse:!0,viewport:s?new gt(u,h):t.viewport,svg2pdfParameters:t.svg2pdfParameters,textMeasure:t.textMeasure,attributeState:Object.assign(m.default(),d)}),[4,t.refsHandler.getRendered(n,d,(function(t){return e.renderReferencedNode(t,n,y)}))]):[2];case 1:return c.sent(),t.pdf.saveGraphicsState(),t.pdf.setCurrentTransformationMatrix(t.transform),s&&"visible"!==N(a.element,t.styleSheets,"overflow")&&(t.pdf.rect(o,l,u,h),t.pdf.clip().discardPath()),t.pdf.doFormObject(t.refsHandler.generateKey(n,d),f),t.pdf.restoreGraphicsState(),[2]}}))}))},e.renderReferencedNode=function(t,e,r){return f(this,void 0,void 0,(function(){var i;return c(this,(function(n){switch(n.label){case 0:return i=[(i=t.getBoundingBox(r))[0]-.5*i[2],i[1]-.5*i[3],2*i[2],2*i[3]],r.pdf.beginFormObject(i[0],i[1],i[2],i[3],r.pdf.unitMatrix),t instanceof mt?[4,t.apply(r)]:[3,2];case 1:return n.sent(),[3,4];case 2:return[4,t.render(r)];case 3:n.sent(),n.label=4;case 4:return r.pdf.endFormObject(r.refsHandler.generateKey(e,r.attributeState)),[2]}}))}))},e.prototype.getBoundingBoxCore=function(t){return _(this.element,t)},e.prototype.isVisible=function(t,e){return O(this,t,e)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e}(ft),bt=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(N(this.element,t.styleSheets,"width")||"0"),r=parseFloat(N(this.element,t.styleSheets,"height")||"0");if(!isFinite(e)||e<=0||!isFinite(r)||r<=0)return null;var i=N(this.element,t.styleSheets,"rx"),n=N(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(N(this.element,t.styleSheets,"x")||"0"),l=parseFloat(N(this.element,t.styleSheets,"y")||"0"),u=4/3*(Math.SQRT2-1);return 0===a&&0===s?(new C).moveTo(o,l).lineTo(o+e,l).lineTo(o+e,l+r).lineTo(o,l+r).close():(new C).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 O(this,t,e)},e}(ct),vt=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(N(this.element,t.styleSheets,"cx")||"0"),n=parseFloat(N(this.element,t.styleSheets,"cy")||"0"),a=4/3*(Math.SQRT2-1)*e,s=4/3*(Math.SQRT2-1)*r;return(new C).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 O(this,t,e)},e}(ct),xt=function(t){function e(e,r){return t.call(this,e,r)||this}return u(e,t),e.prototype.getRx=function(t){return parseFloat(N(this.element,t.styleSheets,"rx")||"0")},e.prototype.getRy=function(t){return parseFloat(N(this.element,t.styleSheets,"ry")||"0")},e}(vt);function St(t){var e="invisible",r=t.stroke&&0!==t.strokeWidth,i=t.fill;return i&&r?e="fillThenStroke":i?e="fill":r&&(e="stroke"),e}function wt(t){return t.replace(/[\n\r]/g,"")}function kt(t){return t.replace(/[\t]/g," ")}function Mt(t){return t.replace(/ +/g," ")}function Ct(t,e,r){switch(N(t,r.styleSheets,"text-transform")){case"uppercase":return e.toUpperCase();case"lowercase":return e.toLowerCase();default:return e}}var Tt=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(e,r){var i,n,a,s,o=[],l=[],u=[],h=this.originX,f=this.originY,c=h,p=h;for(i=0;i<this.textNodes.length;i++){n=this.textNodes[i],a=this.contexts[i],s=this.textMeasures[i]||{width:e.textMeasure.measureTextWidth(this.texts[i],this.contexts[i].attributeState),length:this.texts[i].length};var d=h,m=f;if("#text"!==n.nodeName&&!o.includes(n)){o.push(n);var g=t.resolveRelativePositionAttribute(n,"dx");null!==g&&(d+=W(g,a.attributeState.fontSize));var y=t.resolveRelativePositionAttribute(n,"dy");null!==y&&(m+=W(y,a.attributeState.fontSize))}l[i]=d,u[i]=m,h=d+s.width+s.length*r,f=m,c=Math.min(c,d),p=Math.max(p,h)}var b=0;switch(this.textAnchor){case"start":b=0;break;case"middle":b=(p-c)/2;break;case"end":b=p-c}for(i=0;i<this.textNodes.length;i++)if(n=this.textNodes[i],a=this.contexts[i],"#text"===n.nodeName||"hidden"!==a.attributeState.visibility){e.pdf.saveGraphicsState(),ot(a,e,n);var v=a.attributeState.alignmentBaseline,x=St(a.attributeState);e.pdf.text(this.texts[i],l[i]-b,u[i],{baseline:V(v),angle:e.transform,renderingMode:"fill"===x?void 0:x,charSpace:0===r?void 0:r}),e.pdf.restoreGraphicsState()}return[h,f]},t.resolveRelativePositionAttribute=function(t,e){for(var r,i=t;i&&B(i,"tspan");){if(i.hasAttribute(e))return i.getAttribute(e);if((null===(r=t.parentElement)||void 0===r?void 0:r.firstChild)!==t)break;i=i.parentElement}return null},t}(),Ft=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.boundingBox=[],e}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=wt(c);p=kt(p),"default"===o&&(p=Mt(p),l&&p.match(/^\s/)&&(u=!0),p.match(/[^\s]/)&&(l=!1),a.prevText.match(/\s$/)&&(p=p.replace(/^\s+/,"")));var d=Ct(e,p,r);n.add(e,d,r),a.prevText=c,a.prevContext=r}else if(B(f,"title"));else if(B(f,"tspan")){var m=f,g=m.getAttribute("x");if(null!==g){var y=W(g,s);n=new Tt(this,N(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=W(b,s);n=new Tt(this,N(m,r.styleSheets,"text-anchor")||r.attributeState.textAnchor,0,v),i.push({type:"x",chunk:n})}var x=r.clone();st(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=W(this.element.getAttribute("x"),n),s=W(this.element.getAttribute("y"),n),o=W(this.element.getAttribute("dx"),n),l=W(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=kt(t=wt(t)),"default"===e.xmlSpace&&(t=Mt(t=t.trim())),t}(f,t.attributeState),d=Ct(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=St(t.attributeState),t.pdf.text(d,a+o-e,s+l,{baseline:V(g),angle:t.transform,renderingMode:"fill"===y?void 0:y,charSpace:0===r?void 0:r}),this.boundingBox=[a+o-e,s+l+.1*n,t.textMeasure.measureTextWidth(d,t.attributeState),n]);else{for(b=[],v=new Tt(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 L(this,t,e)},e.prototype.getBoundingBoxCore=function(t){return this.boundingBox.length>0?this.boundingBox:_(this.element,t)},e.prototype.computeNodeTransformCore=function(t){return t.pdf.unitMatrix},e}(ft),At=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 O(this,t,e)},e.prototype.getPath=function(t){var e,r,i=new s(N(this.element,t.styleSheets,"d")||"").unshort().unarc().abs(),n=new C;return i.iterate((function(t){switch(t[0]){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 i=x([e,r],[t[1],t[2]]),a=x([t[3],t[4]],[t[1],t[2]]);n.curveTo(i[0],i[1],a[0],a[1],t[3],t[4]);break;case"Z":n.close()}switch(t[0]){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}(ct),Pt=/^\s*data:(([^/,;]+\/[^/,;]+)(?:;([^,;=]+=[^,;=]+))?)?(?:;(base64))?,((?:.|\s)*)$/i,Bt=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 r,i,n,a,s,o,l,u,h,f,p,d,m,b,v,x,S,w;return c(this,(function(c){switch(c.label){case 0:return this.imageLoadingPromise?(t.pdf.setCurrentTransformationMatrix(t.transform),r=parseFloat(N(this.element,t.styleSheets,"width")||"0"),i=parseFloat(N(this.element,t.styleSheets,"height")||"0"),n=parseFloat(N(this.element,t.styleSheets,"x")||"0"),a=pars