Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@antv/g-canvas

Package Overview
Dependencies
Maintainers
66
Versions
352
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@antv/g-canvas - npm Package Compare versions

Comparing version 2.0.14 to 2.0.15-alpha.1

10

dist/index.esm.js

@@ -50,2 +50,3 @@ import { __awaiter, __generator, __extends, __spreadArray, __read } from 'tslib';

this.resize(this.canvasConfig.width, this.canvasConfig.height);
applyCanvasImageSmoothingConfig(this.context, this.canvasConfig.renderer.getConfig());
};

@@ -110,2 +111,11 @@ Canvas2DContextService.prototype.getContext = function () {

}());
function applyCanvasImageSmoothingConfig(context, config) {
var imageSmoothingEnabled = config.imageSmoothingEnabled, imageSmoothingQuality = config.imageSmoothingQuality;
if (imageSmoothingEnabled !== undefined) {
context.imageSmoothingEnabled = imageSmoothingEnabled;
}
if (imageSmoothingQuality !== undefined) {
context.imageSmoothingQuality = imageSmoothingQuality;
}
}

@@ -112,0 +122,0 @@ var ContextRegisterPlugin = /** @class */ (function (_super) {

@@ -70,2 +70,3 @@ 'use strict';

this.resize(this.canvasConfig.width, this.canvasConfig.height);
applyCanvasImageSmoothingConfig(this.context, this.canvasConfig.renderer.getConfig());
};

@@ -130,2 +131,11 @@ Canvas2DContextService.prototype.getContext = function () {

}());
function applyCanvasImageSmoothingConfig(context, config) {
var imageSmoothingEnabled = config.imageSmoothingEnabled, imageSmoothingQuality = config.imageSmoothingQuality;
if (imageSmoothingEnabled !== undefined) {
context.imageSmoothingEnabled = imageSmoothingEnabled;
}
if (imageSmoothingQuality !== undefined) {
context.imageSmoothingQuality = imageSmoothingQuality;
}
}

@@ -132,0 +142,0 @@ var ContextRegisterPlugin = /** @class */ (function (_super) {

2

dist/index.umd.min.js

@@ -1,2 +0,2 @@

!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@antv/g-lite")):"function"==typeof define&&define.amd?define(["exports","@antv/g-lite"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).G=e.G||{},e.G.Canvas2D={}),e.window.G)}(this,(function(e,t){"use strict";var n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},n(e,t)};function r(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+t+" is not a constructor or null");function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var i=function(){return i=Object.assign||function(e){for(var t,n=1,r=arguments.length;r>n;n++)for(var i in t=arguments[n])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},i.apply(this,arguments)};function a(e,t,n,r){return new(n||(n=Promise))((function(i,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(o,s)}c((r=r.apply(e,t||[])).next())}))}function o(e,t){var n,r,i,a,o={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(s){return function(c){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;a&&(a=0,s[0]&&(o=0)),o;)try{if(n=1,r&&(i=2&s[0]?r.return:s[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,s[1])).done)return i;switch(r=0,i&&(s=[2&s[0],i.value]),s[0]){case 0:case 1:i=s;break;case 4:return o.label++,{value:s[1],done:!1};case 5:o.label++,r=s[1],s=[0];continue;case 7:s=o.ops.pop(),o.trys.pop();continue;default:if(!(i=o.trys,(i=i.length>0&&i[i.length-1])||6!==s[0]&&2!==s[0])){o=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&i[3]>s[1])){o.label=s[1];break}if(6===s[0]&&i[1]>o.label){o.label=i[1],i=s;break}if(i&&i[2]>o.label){o.label=i[2],o.ops.push(s);break}i[2]&&o.ops.pop(),o.trys.pop();continue}s=t.call(e,o)}catch(e){s=[6,e],r=0}finally{n=i=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,c])}}}function s(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,i,a=n.call(e),o=[];try{for(;(void 0===t||t-- >0)&&!(r=a.next()).done;)o.push(r.value)}catch(e){i={error:e}}finally{try{r&&!r.done&&(n=a.return)&&n.call(a)}finally{if(i)throw i.error}}return o}function c(e,t,n){if(n||2===arguments.length)for(var r,i=0,a=t.length;a>i;i++)!r&&i in t||(r||(r=Array.prototype.slice.call(t,0,i)),r[i]=t[i]);return e.concat(r||Array.prototype.slice.call(t))}"function"==typeof SuppressedError&&SuppressedError;var l=function(e){return null==e},h={}.toString,u=function(e,t){return h.call(e)==="[object "+t+"]"},d=function(e){return u(e,"String")},p=function(e,t,n){return t>e?t:e>n?n:e},f=function(e){return u(e,"Number")},v="undefined"!=typeof Float32Array?Float32Array:Array;function y(){var e=new v(16);return v!=Float32Array&&(e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0),e[0]=1,e[5]=1,e[10]=1,e[15]=1,e}function g(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}function m(e,t,n){var r=t[0],i=t[1],a=t[2],o=t[3],s=t[4],c=t[5],l=t[6],h=t[7],u=t[8],d=t[9],p=t[10],f=t[11],v=t[12],y=t[13],g=t[14],m=t[15],E=n[0],x=n[1],b=n[2],M=n[3];return e[0]=E*r+x*s+b*u+M*v,e[1]=E*i+x*c+b*d+M*y,e[2]=E*a+x*l+b*p+M*g,e[3]=E*o+x*h+b*f+M*m,e[4]=(E=n[4])*r+(x=n[5])*s+(b=n[6])*u+(M=n[7])*v,e[5]=E*i+x*c+b*d+M*y,e[6]=E*a+x*l+b*p+M*g,e[7]=E*o+x*h+b*f+M*m,e[8]=(E=n[8])*r+(x=n[9])*s+(b=n[10])*u+(M=n[11])*v,e[9]=E*i+x*c+b*d+M*y,e[10]=E*a+x*l+b*p+M*g,e[11]=E*o+x*h+b*f+M*m,e[12]=(E=n[12])*r+(x=n[13])*s+(b=n[14])*u+(M=n[15])*v,e[13]=E*i+x*c+b*d+M*y,e[14]=E*a+x*l+b*p+M*g,e[15]=E*o+x*h+b*f+M*m,e}function E(){var e=new v(3);return v!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0),e}function x(e,t,n,r){return e[0]=t,e[1]=n,e[2]=r,e}function b(e,t,n){var r=t[0],i=t[1],a=t[2],o=n[3]*r+n[7]*i+n[11]*a+n[15];return e[0]=(n[0]*r+n[4]*i+n[8]*a+n[12])/(o=o||1),e[1]=(n[1]*r+n[5]*i+n[9]*a+n[13])/o,e[2]=(n[2]*r+n[6]*i+n[10]*a+n[14])/o,e}function M(e,t,n){return{x:e*Math.cos(n)-t*Math.sin(n),y:e*Math.sin(n)+t*Math.cos(n)}}function S(e,t,n,r,i,a,o,s,c,l){var h,u,d,p,f,v=e,y=t,g=n,m=r,E=s,x=c,b=120*Math.PI/180,P=Math.PI/180*(+i||0),C=[];if(l)u=l[0],d=l[1],p=l[2],f=l[3];else{y=(h=M(v,y,-P)).y;var T=((v=h.x)-(E=(h=M(E,x,-P)).x))/2,A=(y-(x=h.y))/2,w=T*T/(g*g)+A*A/(m*m);w>1&&(g*=w=Math.sqrt(w),m*=w);var O=g*g,k=m*m,L=(a===o?-1:1)*Math.sqrt(Math.abs((O*k-O*A*A-k*T*T)/(O*A*A+k*T*T)));p=L*g*A/m+(v+E)/2,u=Math.asin(((y-(f=L*-m*T/g+(y+x)/2))/m*1e9>>0)/1e9),d=Math.asin(((x-f)/m*1e9>>0)/1e9),0>(u=p>v?Math.PI-u:u)&&(u=2*Math.PI+u),0>(d=p>E?Math.PI-d:d)&&(d=2*Math.PI+d),o&&u>d&&(u-=2*Math.PI),!o&&d>u&&(d-=2*Math.PI)}var R=d-u;if(Math.abs(R)>b){var I=d,N=E,B=x;C=S(E=p+g*Math.cos(d=u+b*(o&&d>u?1:-1)),x=f+m*Math.sin(d),g,m,i,0,o,N,B,[d,I,p,f])}R=d-u;var D=Math.cos(u),F=Math.sin(u),G=Math.cos(d),j=Math.sin(d),_=Math.tan(R/4),H=4/3*g*_,$=4/3*m*_,W=[v,y],U=[v+H*F,y-$*D],z=[E+H*j,x-$*G],Y=[E,x];if(U[0]=2*W[0]-U[0],U[1]=2*W[1]-U[1],l)return U.concat(z,Y,C);for(var q=[],Q=0,X=(C=U.concat(z,Y,C)).length;X>Q;Q+=1)q[Q]=Q%2?M(C[Q-1],C[Q],P).y:M(C[Q],C[Q+1],P).x;return q}function P(e,t){var n=t.cx,r=t.cy;e.arc(void 0===n?0:n,void 0===r?0:r,t.r,0,2*Math.PI,!1)}function C(e,t){var n=t.cx,r=void 0===n?0:n,i=t.cy,a=void 0===i?0:i,o=t.rx,s=t.ry;if(e.ellipse)e.ellipse(r,a,o,s,0,0,2*Math.PI,!1);else{var c=o>s?o:s,l=o>s?1:o/s,h=o>s?s/o:1;e.save(),e.scale(l,h),e.arc(r,a,c,0,2*Math.PI)}}function T(e,n){var r=n.x1,i=n.y1,a=n.x2,o=n.y2,s=n.markerStart,c=n.markerEnd,l=n.markerStartOffset,h=n.markerEndOffset,u=0,d=0,p=0,f=0,v=0;s&&t.isDisplayObject(s)&&l&&(u=Math.cos(v=Math.atan2(o-i,a-r))*(l||0),d=Math.sin(v)*(l||0)),c&&t.isDisplayObject(c)&&h&&(p=Math.cos(v=Math.atan2(i-o,r-a))*(h||0),f=Math.sin(v)*(h||0)),e.moveTo(r+u,i+d),e.lineTo(a+p,o+f)}function A(e,n){var r=n.markerStart,i=n.markerEnd,a=n.markerStartOffset,o=n.markerEndOffset,c=n.d,l=c.absolutePath,h=c.segments,u=0,d=0,p=0,f=0,v=0;if(r&&t.isDisplayObject(r)&&a){var y=s(r.parentNode.getStartTangent(),2);u=Math.cos(v=Math.atan2((g=y[0])[1]-(m=y[1])[1],g[0]-m[0]))*(a||0),d=Math.sin(v)*(a||0)}if(i&&t.isDisplayObject(i)&&o){var g,m,E=s(i.parentNode.getEndTangent(),2);p=Math.cos(v=Math.atan2((g=E[0])[1]-(m=E[1])[1],g[0]-m[0]))*(o||0),f=Math.sin(v)*(o||0)}for(var x=0;l.length>x;x++){var b=l[x],M=l[x+1],S=0===x&&(0!==u||0!==d),P=(x===l.length-1||M&&("M"===M[0]||"Z"===M[0]))&&0!==p&&0!==f;switch(b[0]){case"M":S?e.moveTo(b[1]+u,b[2]+d):e.moveTo(b[1],b[2]);break;case"L":P?e.lineTo(b[1]+p,b[2]+f):e.lineTo(b[1],b[2]);break;case"Q":e.quadraticCurveTo(b[1],b[2],b[3],b[4]),P&&e.lineTo(b[3]+p,b[4]+f);break;case"C":e.bezierCurveTo(b[1],b[2],b[3],b[4],b[5],b[6]),P&&e.lineTo(b[5]+p,b[6]+f);break;case"A":var C=h[x].arcParams,T=C.cx,A=C.cy,w=C.rx,O=C.ry,k=C.startAngle,L=C.endAngle,R=C.xRotation,I=C.sweepFlag;if(e.ellipse)e.ellipse(T,A,w,O,R,k,L,!!(1-I));else{var N=w>O?w:O,B=w>O?1:w/O,D=w>O?O/w:1;e.translate(T,A),e.rotate(R),e.scale(B,D),e.arc(0,0,N,k,L,!!(1-I)),e.scale(1/B,1/D),e.rotate(-R),e.translate(-T,-A)}P&&e.lineTo(b[6]+p,b[7]+f);break;case"Z":e.closePath()}}}function w(e,n){var r=n.markerStart,i=n.markerEnd,a=n.markerStartOffset,o=n.markerEndOffset,s=n.points.points,c=s.length,l=s[0][0],h=s[0][1],u=s[c-1][0],d=s[c-1][1],p=0,f=0,v=0,y=0,g=0;r&&t.isDisplayObject(r)&&a&&(p=Math.cos(g=Math.atan2(s[1][1]-s[0][1],s[1][0]-s[0][0]))*(a||0),f=Math.sin(g)*(a||0)),i&&t.isDisplayObject(i)&&o&&(v=Math.cos(g=Math.atan2(s[c-1][1]-s[0][1],s[c-1][0]-s[0][0]))*(o||0),y=Math.sin(g)*(o||0)),e.moveTo(l+(p||v),h+(f||y));for(var m=1;c-1>m;m++){var E=s[m];e.lineTo(E[0],E[1])}e.lineTo(u,d)}function O(e,n){var r=n.markerStart,i=n.markerEnd,a=n.markerStartOffset,o=n.markerEndOffset,s=n.points.points,c=s.length,l=s[0][0],h=s[0][1],u=s[c-1][0],d=s[c-1][1],p=0,f=0,v=0,y=0,g=0;r&&t.isDisplayObject(r)&&a&&(p=Math.cos(g=Math.atan2(s[1][1]-s[0][1],s[1][0]-s[0][0]))*(a||0),f=Math.sin(g)*(a||0)),i&&t.isDisplayObject(i)&&o&&(v=Math.cos(g=Math.atan2(s[c-2][1]-s[c-1][1],s[c-2][0]-s[c-1][0]))*(o||0),y=Math.sin(g)*(o||0)),e.moveTo(l+p,h+f);for(var m=1;c-1>m;m++){var E=s[m];e.lineTo(E[0],E[1])}e.lineTo(u+v,d+y)}function k(e,t){var n=t.x,r=void 0===n?0:n,i=t.y,a=void 0===i?0:i,o=t.radius,c=t.width,l=t.height,h=c,u=l;if(o&&o.some((function(e){return 0!==e}))){var d=c>0?1:-1,f=l>0?1:-1,v=d+f===0,y=s(o.map((function(e){return p(e,0,Math.min(Math.abs(h)/2,Math.abs(u)/2))})),4),g=y[0],m=y[1],E=y[2],x=y[3];e.moveTo(d*g+r,a),e.lineTo(h-d*m+r,a),0!==m&&e.arc(h-d*m+r,f*m+a,m,-f*Math.PI/2,d>0?0:Math.PI,v),e.lineTo(h+r,u-f*E+a),0!==E&&e.arc(h-d*E+r,u-f*E+a,E,d>0?0:Math.PI,f>0?Math.PI/2:1.5*Math.PI,v),e.lineTo(d*x+r,u+a),0!==x&&e.arc(d*x+r,u-f*x+a,x,f>0?Math.PI/2:-Math.PI/2,d>0?Math.PI:0,v),e.lineTo(r,f*g+a),0!==g&&e.arc(d*g+r,f*g+a,g,d>0?Math.PI:0,f>0?1.5*Math.PI:Math.PI/2,v)}else e.rect(r,a,h,u)}Math.hypot||(Math.hypot=function(){for(var e=0,t=arguments.length;t--;)e+=arguments[t]*arguments[t];return Math.sqrt(e)}),E(),function(){var e,t=(e=new v(2),v!=Float32Array&&(e[0]=0,e[1]=0),e)}();var L=function(e){function n(){var t=e.apply(this,c([],s(arguments),!1))||this;return t.name="canvas-path-generator",t}return r(n,e),n.prototype.init=function(){var e,n=((e={})[t.Shape.CIRCLE]=P,e[t.Shape.ELLIPSE]=C,e[t.Shape.RECT]=k,e[t.Shape.LINE]=T,e[t.Shape.POLYLINE]=O,e[t.Shape.POLYGON]=w,e[t.Shape.PATH]=A,e[t.Shape.TEXT]=void 0,e[t.Shape.GROUP]=void 0,e[t.Shape.IMAGE]=void 0,e[t.Shape.HTML]=void 0,e[t.Shape.MESH]=void 0,e);this.context.pathGeneratorFactory=n},n.prototype.destroy=function(){delete this.context.pathGeneratorFactory},n}(t.AbstractRendererPlugin),R=Object.freeze({__proto__:null,Plugin:L});function I(e,t,n,r){var i=e-n,a=t-r;return Math.sqrt(i*i+a*a)}var N=1e-4;function B(e,t,n,r,i,a){var o=-1,l=1/0,h=[n,r],u=20;a&&a>200&&(u=a/10);for(var d=1/u,p=d/10,f=0;u>=f;f++){var v=f*d,y=[i.apply(void 0,c([],s(e.concat([v])),!1)),i.apply(void 0,c([],s(t.concat([v])),!1))];l>(x=I(h[0],h[1],y[0],y[1]))&&(o=v,l=x)}if(0===o)return{x:e[0],y:t[0]};if(1===o){var g=e.length;return{x:e[g-1],y:t[g-1]}}l=1/0;for(f=0;32>f&&N<=p;f++){var m=o-p,E=o+p,x=(y=[i.apply(void 0,c([],s(e.concat([m])),!1)),i.apply(void 0,c([],s(t.concat([m])),!1))],I(h[0],h[1],y[0],y[1]));if(m>=0&&l>x)o=m,l=x;else{var b=[i.apply(void 0,c([],s(e.concat([E])),!1)),i.apply(void 0,c([],s(t.concat([E])),!1))],M=I(h[0],h[1],b[0],b[1]);1>=E&&l>M?(o=E,l=M):p*=.5}}return{x:i.apply(void 0,c([],s(e.concat([o])),!1)),y:i.apply(void 0,c([],s(t.concat([o])),!1))}}function D(e,t,n,r,i,a){var o=[n-e,r-t];if(function(e,t){return e[0]===t[0]&&e[1]===t[1]}(o,[0,0]))return Math.sqrt((i-e)*(i-e)+(a-t)*(a-t));var s=[-o[1],o[0]];return function(e,t){var n=t[0],r=t[1],i=n*n+r*r;i>0&&(i=1/Math.sqrt(i)),e[0]=t[0]*i,e[1]=t[1]*i}(s,s),Math.abs(function(e,t){return e[0]*t[0]+e[1]*t[1]}([i-e,a-t],s))}function F(e,t,n,r,i){var a=1-i;return a*a*a*e+3*t*i*a*a+3*n*i*i*a+r*i*i*i}function G(e,t,n,r,i,a,o,s,c,l,h){var u=function(e,t,n,r,i,a,o,s,c,l,h){return B([e,n,i,o],[t,r,a,s],c,l,F,h)}(e,t,n,r,i,a,o,s,c,l,h);return I(u.x,u.y,c,l)}function j(e,t,n,r){var i=1-r;return i*i*e+2*r*i*t+r*r*n}function _(e,t,n,r,i,a,o,s){var c=function(e,t,n,r,i,a,o,s){return B([e,n,i],[t,r,a],o,s,j)}(e,t,n,r,i,a,o,s);return I(c.x,c.y,o,s)}var H=E(),$=E(),W=E(),U=y(),z=function(){function e(){var e=this;this.isHit=function(n,r,i,a){var o,s,c,l,h,u,d,p,f,v,y,g,m,E,M,S,P,C,T,A,w,O,k,L,R,I,N,B,D,F,G,j=e.context.pointInPathPickerFactory[n.nodeName];if(j){var _=(o=U,(G=(T=(c=(s=i)[0])*(p=s[5])-(l=s[1])*(d=s[4]))*(F=(m=s[10])*(C=s[15])-(E=s[11])*(P=s[14]))-(A=c*(f=s[6])-(h=s[2])*d)*(D=(g=s[9])*C-E*(S=s[13]))+(w=c*(v=s[7])-(u=s[3])*d)*(B=g*P-m*S)+(O=l*f-h*p)*(N=(y=s[8])*C-E*(M=s[12]))-(k=l*v-u*p)*(I=y*P-m*M)+(L=h*v-u*f)*(R=y*S-g*M))?(o[0]=(p*F-f*D+v*B)*(G=1/G),o[1]=(h*D-l*F-u*B)*G,o[2]=(S*L-P*k+C*O)*G,o[3]=(m*k-g*L-E*O)*G,o[4]=(f*N-d*F-v*I)*G,o[5]=(c*F-h*N+u*I)*G,o[6]=(P*w-M*L-C*A)*G,o[7]=(y*L-m*w+E*A)*G,o[8]=(d*D-p*N+v*R)*G,o[9]=(l*N-c*D-u*R)*G,o[10]=(M*k-S*w+C*T)*G,o[11]=(g*w-y*k-E*T)*G,o[12]=(p*I-d*B-f*R)*G,o[13]=(c*B-l*I+h*R)*G,o[14]=(S*A-M*O-P*T)*G,o[15]=(y*O-g*A+m*T)*G,o):null),H=b($,x(W,r[0],r[1],0),_);if(j(n,new t.Point(H[0],H[1]),a,e.isPointInPath,e.context,e.runtime))return!0}return!1},this.isPointInPath=function(t,n){var r=e.runtime.offscreenCanvasCreator.getOrCreateContext(e.context.config.offscreenCanvas),i=e.context.pathGeneratorFactory[t.nodeName];return i&&(r.beginPath(),i(r,t.parsedStyle),r.closePath()),r.isPointInPath(n.x,n.y)}}return e.prototype.apply=function(t,n){var r,i=this,s=t.renderingService,c=t.renderingContext;this.context=t,this.runtime=n;var l=null===(r=c.root)||void 0===r?void 0:r.ownerDocument;s.hooks.pick.tapPromise(e.tag,(function(e){return a(i,void 0,void 0,(function(){return o(this,(function(t){return[2,this.pick(l,e)]}))}))})),s.hooks.pickSync.tap(e.tag,(function(e){return i.pick(l,e)}))},e.prototype.pick=function(e,n){var r,i,a=n.topmost,o=n.position,s=x(H,o.x,o.y,0),c=e.elementsFromBBox(s[0],s[1],s[0],s[1]),l=[];try{for(var h=function(e){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}(c),u=h.next();!u.done;u=h.next()){var d=u.value,p=d.getWorldTransform();if(this.isHit(d,s,p,!1)){var f=t.findClosestClipPathTarget(d);if(f){var v=f.parsedStyle.clipPath;if(this.isHit(v,s,v.getWorldTransform(),!0)){if(a)return n.picked=[d],n;l.push(d)}}else{if(a)return n.picked=[d],n;l.push(d)}}}}catch(e){r={error:e}}finally{try{u&&!u.done&&(i=h.return)&&i.call(h)}finally{if(r)throw r.error}}return n.picked=l,n},e.tag="CanvasPicker",e}();function Y(e,n,r){var i=e.parsedStyle,a=i.cx,o=i.cy,c=i.r,l=i.fill,h=i.stroke,u=i.lineWidth,d=i.increasedLineWidthForHitTesting,p=i.pointerEvents,f=void 0===p?"auto":p,v=((void 0===u?1:u)+(void 0===d?0:d))/2,y=I(void 0===a?0:a,void 0===o?0:o,n.x,n.y),g=s(t.isFillOrStrokeAffected(f,l,h),2),m=g[0],E=g[1];return m&&E||r?c+v>=y:m?c>=y:!!E&&(y>=c-v&&c+v>=y)}function q(e,t,n,r){return e/(n*n)+t/(r*r)}function Q(e,n,r){var i=e.parsedStyle,a=i.cx,o=void 0===a?0:a,c=i.cy,l=void 0===c?0:c,h=i.rx,u=i.ry,d=i.lineWidth,p=void 0===d?1:d,f=i.increasedLineWidthForHitTesting,v=void 0===f?0:f,y=i.pointerEvents,g=n.x,m=n.y,E=s(t.isFillOrStrokeAffected(void 0===y?"auto":y,i.fill,i.stroke),2),x=E[0],b=E[1],M=(p+v)/2,S=(g-o)*(g-o),P=(m-l)*(m-l);return x&&b||r?1>=q(S,P,h+M,u+M):x?1>=q(S,P,h,u):!!b&&(q(S,P,h-M,u-M)>=1&&1>=q(S,P,h+M,u+M))}function X(e,t,n,r,i,a){return!(e>i||i>e+n||t>a||a>t+r)}function V(e,t,n,r,i,a,o,s){var c=(Math.atan2(s-t,o-e)+2*Math.PI)%(2*Math.PI),l={x:e+n*Math.cos(c),y:t+n*Math.sin(c)};return I(l.x,l.y,o,s)<=a/2}function Z(e,t,n,r,i,a,o){var s=i/2;return!(Math.min(e,n)-s>a||a>Math.max(e,n)+s||Math.min(t,r)-s>o||o>Math.max(t,r)+s)&&D(e,t,n,r,a,o)<=i/2}function J(e,t,n,r,i){var a=e.length;if(2>a)return!1;for(var o=0;a-1>o;o++){if(Z(e[o][0],e[o][1],e[o+1][0],e[o+1][1],t,n,r))return!0}if(i){var s=e[0],c=e[a-1];if(Z(s[0],s[1],c[0],c[1],t,n,r))return!0}return!1}var K=1e-6;function ee(e){return K>Math.abs(e)?0:0>e?-1:1}function te(e,t,n){return!((n[0]-e[0])*(t[1]-e[1])!=(t[0]-e[0])*(n[1]-e[1])||Math.min(e[0],t[0])>n[0]||n[0]>Math.max(e[0],t[0])||Math.min(e[1],t[1])>n[1]||n[1]>Math.max(e[1],t[1]))}function ne(e,t,n){var r=!1,i=e.length;if(2>=i)return!1;for(var a=0;i>a;a++){var o=e[a],s=e[(a+1)%i];if(te(o,s,[t,n]))return!0;ee(o[1]-n)>0!=ee(s[1]-n)>0&&0>ee(t-(n-o[1])*(o[0]-s[0])/(o[1]-s[1])-o[0])&&(r=!r)}return r}function re(e,t,n){for(var r=!1,i=0;e.length>i;i++){if(r=ne(e[i],t,n))break}return r}function ie(e,n,r){var i=e.parsedStyle,a=i.x1,o=i.y1,c=i.x2,l=i.y2,h=i.lineWidth,u=void 0===h?1:h,d=i.increasedLineWidthForHitTesting,p=void 0===d?0:d,f=i.pointerEvents;return!(!s(t.isFillOrStrokeAffected(void 0===f?"auto":f,i.fill,i.stroke),2)[1]&&!r||!u)&&Z(a,o,c,l,u+p,n.x,n.y)}function ae(e,n,r,i,a,o){var c=e.parsedStyle,l=c.lineWidth,h=void 0===l?1:l,u=c.increasedLineWidthForHitTesting,d=void 0===u?0:u,p=c.d,f=c.pointerEvents,v=p.segments,y=p.hasArc,g=p.polylines,m=p.polygons,E=s(t.isFillOrStrokeAffected(void 0===f?"auto":f,(null==m?void 0:m.length)&&c.fill,c.stroke),2),x=E[0],b=E[1],M=t.getOrCalculatePathTotalLength(e),P=!1;return x||r?P=y?i(e,n):re(m,n.x,n.y)||re(g,n.x,n.y):((b||r)&&(P=function(e,t,n,r,i){for(var a=!1,o=t/2,s=0;e.length>s;s++){var c=e[s],l=c.currentPoint,h=c.params,u=c.prePoint,d=c.box;if(!d||X(d.x-o,d.y-o,d.width+t,d.height+t,n,r))switch(c.command){case"L":case"Z":if(a=Z(u[0],u[1],l[0],l[1],t,n,r))return!0;break;case"Q":if(a=t/2>=_(u[0],u[1],h[1],h[2],h[3],h[4],n,r))return!0;break;case"C":if(a=t/2>=G(u[0],u[1],h[1],h[2],h[3],h[4],h[5],h[6],n,r,i))return!0;break;case"A":c.cubicParams||(c.cubicParams=S(u[0],u[1],h[1],h[2],h[3],h[4],h[5],h[6],h[7],void 0));for(var p=c.cubicParams,f=u,v=0;p.length>v;v+=6){var y=G(f[0],f[1],p[v],p[v+1],p[v+2],p[v+3],p[v+4],p[v+5],n,r,i);if(f=[p[v+4],p[v+5]],a=t/2>=y)return!0}}}return a}(v,h+d,n.x,n.y,M)),P)}function oe(e,n,r){var i=e.parsedStyle,a=i.lineWidth,o=void 0===a?1:a,c=i.increasedLineWidthForHitTesting,l=void 0===c?0:c,h=i.points,u=i.pointerEvents,d=s(t.isFillOrStrokeAffected(void 0===u?"auto":u,i.fill,i.stroke),2),p=d[0],f=!1;return(d[1]||r)&&(f=J(h.points,o+l,n.x,n.y,!0)),f||!p&&!r||(f=ne(h.points,n.x,n.y)),f}function se(e,n,r){var i=e.parsedStyle,a=i.lineWidth,o=void 0===a?1:a,c=i.increasedLineWidthForHitTesting,l=void 0===c?0:c,h=i.points,u=i.pointerEvents;return!(!s(t.isFillOrStrokeAffected(void 0===u?"auto":u,i.fill,i.stroke),2)[1]&&!r||!o)&&J(h.points,o+l,n.x,n.y,!1)}function ce(e,n,r,i,a){var o=e.parsedStyle,c=o.radius,l=o.lineWidth,h=void 0===l?1:l,u=o.increasedLineWidthForHitTesting,d=void 0===u?0:u,f=o.x,v=void 0===f?0:f,y=o.y,g=void 0===y?0:y,m=o.width,E=o.height,x=o.pointerEvents,b=s(t.isFillOrStrokeAffected(void 0===x?"auto":x,o.fill,o.stroke),2),M=b[0],S=b[1],P=h+d;if(c&&c.some((function(e){return 0!==e}))){var C=!1;return(S||r)&&(C=function(e,t,n,r,i,a,o,c){var l=s(i,4),h=l[0],u=l[1],d=l[2],p=l[3];return Z(e+h,t,e+n-u,t,a,o,c)||Z(e+n,t+u,e+n,t+r-d,a,o,c)||Z(e+n-d,t+r,e+p,t+r,a,o,c)||Z(e,t+r-p,e,t+h,a,o,c)||V(e+n-u,t+u,u,0,0,a,o,c)||V(e+n-d,t+r-d,d,0,0,a,o,c)||V(e+p,t+r-p,p,0,0,a,o,c)||V(e+h,t+h,h,0,0,a,o,c)}(v,g,m,E,c.map((function(e){return p(e,0,Math.min(Math.abs(m)/2,Math.abs(E)/2))})),P,n.x,n.y)),C||!M&&!r||(C=i(e,n)),C}var T=P/2;return M&&S||r?X(v-T,g-T,m+T,E+T,n.x,n.y):M?X(v,g,m,E,n.x,n.y):!!S&&function(e,t,n,r,i,a,o){var s=i/2;return X(e-s,t-s,n,i,a,o)||X(e+n-s,t-s,i,r,a,o)||X(e+s,t+r-s,n,i,a,o)||X(e-s,t+s,i,r,a,o)}(v,g,m,E,P,n.x,n.y)}function le(e,n,r,a,o,s){var c=e.parsedStyle,l=c.pointerEvents,h=c.x,u=void 0===h?0:h,d=c.y,p=void 0===d?0:d,f=c.width,v=c.height;if("non-transparent-pixel"===(void 0===l?"auto":l)){var y=o.config.offscreenCanvas,g=s.offscreenCanvasCreator.getOrCreateCanvas(y),m=s.offscreenCanvasCreator.getOrCreateContext(y,{willReadFrequently:!0});return g.width=f,g.height=v,o.defaultStyleRendererFactory[t.Shape.IMAGE].render(m,i(i({},e.parsedStyle),{x:0,y:0}),e,void 0,void 0,void 0),m.getImageData(n.x-u,n.y-p,1,1).data.every((function(e){return 0!==e}))}return!0}function he(e,t,n,r){var i=e.getGeometryBounds();return!(i.min[0]>t.x||i.min[1]>t.y||t.x>i.max[0]||t.y>i.max[1])}var ue=function(e){function n(){var t=e.apply(this,c([],s(arguments),!1))||this;return t.name="canvas-picker",t}return r(n,e),n.prototype.init=function(){var e,n=((e={})[t.Shape.CIRCLE]=Y,e[t.Shape.ELLIPSE]=Q,e[t.Shape.RECT]=ce,e[t.Shape.LINE]=ie,e[t.Shape.POLYLINE]=se,e[t.Shape.POLYGON]=oe,e[t.Shape.PATH]=ae,e[t.Shape.TEXT]=he,e[t.Shape.GROUP]=null,e[t.Shape.IMAGE]=le,e[t.Shape.HTML]=null,e[t.Shape.MESH]=null,e);this.context.pointInPathPickerFactory=n,this.addRenderingPlugin(new z)},n.prototype.destroy=function(){delete this.context.pointInPathPickerFactory,this.removeAllRenderingPlugins()},n}(t.AbstractRendererPlugin),de=Object.freeze({__proto__:null,Plugin:ue}),pe=function(){function e(e){this.canvasRendererPluginOptions=e,this.removedRBushNodeAABBs=[],this.renderQueue=[],this.restoreStack=[],this.clearFullScreenLastFrame=!1,this.clearFullScreen=!1,this.vpMatrix=y(),this.dprMatrix=y(),this.tmpMat4=y(),this.vec3a=E(),this.vec3b=E(),this.vec3c=E(),this.vec3d=E()}return e.prototype.apply=function(n,r){var i=this;this.context=n;var a=n.config,o=n.camera,l=n.renderingService,h=n.renderingContext,u=n.pathGeneratorFactory;this.rBush=n.rBushRoot,this.pathGeneratorFactory=u;var d=n.contextService,p=h.root.ownerDocument.defaultView,f=function(e){var t=e.target.rBushNode;t.aabb&&i.removedRBushNodeAABBs.push(t.aabb)},v=function(e){var t=e.target.rBushNode;t.aabb&&i.removedRBushNodeAABBs.push(t.aabb)};l.hooks.init.tap(e.tag,(function(){p.addEventListener(t.ElementEvent.UNMOUNTED,f),p.addEventListener(t.ElementEvent.CULLED,v);var e=d.getDPR(),n=a.width,r=a.height,o=d.getContext();i.clearRect(o,0,0,n*e,r*e,a.background)})),l.hooks.destroy.tap(e.tag,(function(){p.removeEventListener(t.ElementEvent.UNMOUNTED,f),p.removeEventListener(t.ElementEvent.CULLED,v),i.renderQueue=[],i.removedRBushNodeAABBs=[],i.restoreStack=[]})),l.hooks.beginFrame.tap(e.tag,(function(){var e,t=d.getContext(),n=d.getDPR(),r=a.width,o=a.height,s=i.canvasRendererPluginOptions,c=s.dirtyObjectNumThreshold,h=s.dirtyObjectRatioThreshold,u=l.getStats(),f=u.rendered,v=f/u.total;i.clearFullScreen=i.clearFullScreenLastFrame||!(null===(e=p.context.renderingPlugins[1])||void 0===e?void 0:e.isFirstTimeRenderingFinished)||l.disableDirtyRectangleRendering()||f>c&&v>h,t&&(t.resetTransform?t.resetTransform():t.setTransform(1,0,0,1,0,0),i.clearFullScreen&&i.clearRect(t,0,0,r*n,o*n,a.background))}));var y=function(e,t){e.isVisible()&&!e.isCulled()&&i.renderDisplayObject(e,t,i.context,i.restoreStack,r),(e.sortable.sorted||e.childNodes).forEach((function(e){y(e,t)}))};l.hooks.endFrame.tap(e.tag,(function(){if(0!==h.root.childNodes.length){i.clearFullScreenLastFrame=!1;var e,n,l=d.getContext(),u=d.getDPR();if((e=i.dprMatrix)[0]=(n=[u,u,1])[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=n[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=n[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,m(i.vpMatrix,i.dprMatrix,o.getOrthoMatrix()),i.clearFullScreen)y(h.root,l);else{var f=i.safeMergeAABB.apply(i,c([i.mergeDirtyAABBs(i.renderQueue)],s(i.removedRBushNodeAABBs.map((function(e){var n=e.minX,r=e.minY,i=e.maxX,a=e.maxY,o=new t.AABB;return o.setMinMax([n,r,0],[i,a,0]),o}))),!1));if(i.removedRBushNodeAABBs=[],t.AABB.isEmpty(f))return void(i.renderQueue=[]);var v=i.convertAABB2Rect(f),g=v.x,E=v.y,x=v.width,M=v.height,S=b(i.vec3a,[g,E,0],i.vpMatrix),P=b(i.vec3b,[g+x,E,0],i.vpMatrix),C=b(i.vec3c,[g,E+M,0],i.vpMatrix),T=b(i.vec3d,[g+x,E+M,0],i.vpMatrix),A=Math.min(S[0],P[0],T[0],C[0]),w=Math.min(S[1],P[1],T[1],C[1]),O=Math.max(S[0],P[0],T[0],C[0]),k=Math.max(S[1],P[1],T[1],C[1]),L=Math.floor(A),R=Math.floor(w),I=Math.ceil(O-A),N=Math.ceil(k-w);l.save(),i.clearRect(l,L,R,I,N,a.background),l.beginPath(),l.rect(L,R,I,N),l.clip(),l.setTransform(i.vpMatrix[0],i.vpMatrix[1],i.vpMatrix[4],i.vpMatrix[5],i.vpMatrix[12],i.vpMatrix[13]),a.renderer.getConfig().enableDirtyRectangleRenderingDebug&&p.dispatchEvent(new t.CustomEvent(t.CanvasEvent.DIRTY_RECTANGLE,{dirtyRect:{x:L,y:R,width:I,height:N}})),i.searchDirtyObjects(f).sort((function(e,t){return e.sortable.renderOrder-t.sortable.renderOrder})).forEach((function(e){e&&e.isVisible()&&!e.isCulled()&&i.renderDisplayObject(e,l,i.context,i.restoreStack,r)})),l.restore(),i.renderQueue.forEach((function(e){i.saveDirtyAABB(e)})),i.renderQueue=[]}i.restoreStack.forEach((function(){l.restore()})),i.restoreStack=[]}else i.clearFullScreenLastFrame=!0})),l.hooks.render.tap(e.tag,(function(e){i.clearFullScreen||i.renderQueue.push(e)}))},e.prototype.clearRect=function(e,t,n,r,i,a){e.clearRect(t,n,r,i),a&&(e.fillStyle=a,e.fillRect(t,n,r,i))},e.prototype.renderDisplayObject=function(e,n,r,i,a){var o=e.nodeName,s=i[i.length-1];!s||e.compareDocumentPosition(s)&t.Node.DOCUMENT_POSITION_CONTAINS||(n.restore(),i.pop());var c=this.context.styleRendererFactory[o],l=this.pathGeneratorFactory[o],h=e.parsedStyle.clipPath;if(h){this.applyWorldTransform(n,h);var u=this.pathGeneratorFactory[h.nodeName];u&&(n.save(),i.push(e),n.beginPath(),u(n,h.parsedStyle),n.closePath(),n.clip())}c&&(this.applyWorldTransform(n,e),n.save(),this.applyAttributesToContext(n,e)),l&&(n.beginPath(),l(n,e.parsedStyle),e.nodeName!==t.Shape.LINE&&e.nodeName!==t.Shape.PATH&&e.nodeName!==t.Shape.POLYLINE&&n.closePath()),c&&(c.render(n,e.parsedStyle,e,r,this,a),n.restore()),e.renderable.dirty=!1},e.prototype.convertAABB2Rect=function(e){var t=e.getMin(),n=e.getMax(),r=Math.floor(t[0]),i=Math.floor(t[1]);return{x:r,y:i,width:Math.ceil(n[0])-r,height:Math.ceil(n[1])-i}},e.prototype.mergeDirtyAABBs=function(e){var n=new t.AABB;return e.forEach((function(e){var t=e.getRenderBounds();n.add(t);var r=e.renderable.dirtyRenderBounds;r&&n.add(r)})),n},e.prototype.searchDirtyObjects=function(e){var t=s(e.getMin(),2),n=t[0],r=t[1],i=s(e.getMax(),2);return this.rBush.search({minX:n,minY:r,maxX:i[0],maxY:i[1]}).map((function(e){return e.displayObject}))},e.prototype.saveDirtyAABB=function(e){var n=e.renderable;n.dirtyRenderBounds||(n.dirtyRenderBounds=new t.AABB);var r=e.getRenderBounds();r&&n.dirtyRenderBounds.update(r.center,r.halfExtents)},e.prototype.applyAttributesToContext=function(e,t){var n=t.parsedStyle,r=n.stroke,i=n.fill,a=n.opacity,o=n.lineDash,s=n.lineDashOffset;o&&e.setLineDash(o),l(s)||(e.lineDashOffset=s),l(a)||(e.globalAlpha*=a),l(r)||Array.isArray(r)||r.isNone||(e.strokeStyle=t.attributes.stroke),l(i)||Array.isArray(i)||i.isNone||(e.fillStyle=t.attributes.fill)},e.prototype.applyWorldTransform=function(e,t,n){n?(g(this.tmpMat4,t.getLocalTransform()),m(this.tmpMat4,n,this.tmpMat4),m(this.tmpMat4,this.vpMatrix,this.tmpMat4)):(g(this.tmpMat4,t.getWorldTransform()),m(this.tmpMat4,this.vpMatrix,this.tmpMat4)),e.setTransform(this.tmpMat4[0],this.tmpMat4[1],this.tmpMat4[4],this.tmpMat4[5],this.tmpMat4[12],this.tmpMat4[13])},e.prototype.safeMergeAABB=function(){for(var e=[],n=0;arguments.length>n;n++)e[n]=arguments[n];var r=new t.AABB;return e.forEach((function(e){r.add(e)})),r},e.tag="CanvasRenderer",e}(),fe=function(){function e(e){this.imagePool=e}return e.prototype.render=function(e,n,r,i,a,o){var s=n.fill,c=n.fillRule,h=n.opacity,u=void 0===h?1:h,d=n.fillOpacity,p=void 0===d?1:d,f=n.stroke,v=n.strokeOpacity,y=void 0===v?1:v,g=n.lineWidth,m=void 0===g?1:g,E=n.lineCap,x=n.lineJoin,b=n.shadowType,M=n.shadowBlur,S=n.filter,P=n.miterLimit,C=s&&!s.isNone,T=f&&!f.isNone&&m>0,A=0===(null==s?void 0:s.alpha),w=!(!S||!S.length),O=!l(n.shadowColor)&&M>0,k=r.nodeName,L="inner"===b,R=T&&O&&(k===t.Shape.PATH||k===t.Shape.LINE||k===t.Shape.POLYLINE||A||L);C&&(e.globalAlpha=u*p,R||ve(r,e,O),me(e,r,s,c,i,a,o,this.imagePool),R||this.clearShadowAndFilter(e,w,O)),T&&(e.globalAlpha=u*y,e.lineWidth=m,l(P)||(e.miterLimit=P),l(E)||(e.lineCap=E),l(x)||(e.lineJoin=x),R&&(L&&(e.globalCompositeOperation="source-atop"),ve(r,e,!0),L&&(Ee(e,r,f,i,a,o,this.imagePool),e.globalCompositeOperation="source-over",this.clearShadowAndFilter(e,w,!0))),Ee(e,r,f,i,a,o,this.imagePool))},e.prototype.clearShadowAndFilter=function(e,t,n){if(n&&(e.shadowColor="transparent",e.shadowBlur=0),t){var r=e.filter;!l(r)&&r.indexOf("drop-shadow")>-1&&(e.filter=r.replace(/drop-shadow\([^)]*\)/,"").trim()||"none")}},e}();function ve(e,t,n){var r=e.parsedStyle,i=r.filter,a=r.shadowColor,o=r.shadowBlur,s=r.shadowOffsetX,c=r.shadowOffsetY;i&&i.length&&(t.filter=e.style.filter),n&&(t.shadowColor=""+a,t.shadowBlur=o||0,t.shadowOffsetX=s||0,t.shadowOffsetY=c||0)}function ye(e,t,n,r,i,a,o){var s,c;if("rect"===e.image.nodeName){var l=e.image.parsedStyle,h=l.width,u=l.height;c=r.contextService.getDPR();var d=r.config.offscreenCanvas;(s=a.offscreenCanvasCreator.getOrCreateCanvas(d)).width=h*c,s.height=u*c;var p=a.offscreenCanvasCreator.getOrCreateContext(d),f=[];e.image.forEach((function(e){i.renderDisplayObject(e,p,r,f,a)})),f.forEach((function(){p.restore()}))}return o.getOrCreatePatternSync(e,n,s,c,t.getGeometryBounds().min,(function(){t.renderable.dirty=!0,r.renderingService.dirtify()}))}function ge(e,n,r,a){var o;if(e.type===t.GradientType.LinearGradient||e.type===t.GradientType.RadialGradient){var s=n.getGeometryBounds(),c=s&&2*s.halfExtents[0]||1,l=s&&2*s.halfExtents[1]||1,h=s&&s.min||[0,0];o=a.getOrCreateGradient(i(i({type:e.type},e.value),{min:h,width:c,height:l}),r)}return o}function me(e,n,r,i,a,o,s,c,l){void 0===l&&(l=!1),Array.isArray(r)?r.forEach((function(t){e.fillStyle=ge(t,n,e,c),l||(i?e.fill(i):e.fill())})):(t.isPattern(r)&&(e.fillStyle=ye(r,n,e,a,o,s,c)),l||(i?e.fill(i):e.fill()))}function Ee(e,n,r,i,a,o,s,c){void 0===c&&(c=!1),Array.isArray(r)?r.forEach((function(t){e.strokeStyle=ge(t,n,e,s),c||e.stroke()})):(t.isPattern(r)&&(e.strokeStyle=ye(r,n,e,i,a,o,s)),c||e.stroke())}var xe=function(){function e(e){this.imagePool=e}return e.prototype.render=function(e,t,n){var r,i=t.x,a=void 0===i?0:i,o=t.y,s=void 0===o?0:o,c=t.src,h=t.shadowColor,u=t.shadowBlur,p=t.width,f=t.height;if(d(c)?r=this.imagePool.getImageSync(c):(p||(p=c.width),f||(f=c.height),r=c),r){ve(n,e,!l(h)&&u>0);try{e.drawImage(r,a,s,p,f)}catch(e){}}},e}(),be=function(){function e(e){this.imagePool=e}return e.prototype.render=function(e,t,n,r,i,a){n.getBounds();var o=t.lineWidth,s=void 0===o?1:o,c=t.textAlign,h=void 0===c?"start":c,u=t.textBaseline,d=void 0===u?"alphabetic":u,p=t.lineJoin,f=void 0===p?"miter":p,v=t.miterLimit,y=void 0===v?10:v,g=t.letterSpacing,m=void 0===g?0:g,E=t.stroke,x=t.fill,b=t.fillRule,M=t.fillOpacity,S=void 0===M?1:M,P=t.strokeOpacity,C=void 0===P?1:P,T=t.opacity,A=void 0===T?1:T,w=t.metrics,O=t.x,k=void 0===O?0:O,L=t.y,R=void 0===L?0:L,I=t.dx,N=t.dy,B=t.shadowColor,D=t.shadowBlur,F=w.lines,G=w.height,j=w.lineHeight,_=w.lineMetrics;e.font=w.font,e.lineWidth=s,e.textAlign="middle"===h?"center":h;var H=d;a.enableCSSParsing||"alphabetic"!==H||(H="bottom"),e.lineJoin=f,l(y)||(e.miterLimit=y);var $=R;"middle"===d?$+=-G/2-j/2:"bottom"===d||"alphabetic"===d||"ideographic"===d?$+=-G:"top"!==d&&"hanging"!==d||($+=-j);var W=k+(I||0);$+=N||0,1===F.length&&("bottom"===H?(H="middle",$-=.5*G):"top"===H&&(H="middle",$+=.5*G)),e.textBaseline=H,ve(n,e,!l(B)&&D>0);for(var U=0;F.length>U;U++){var z=s/2+W;$+=j,l(E)||E.isNone||!s||this.drawLetterSpacing(e,n,F[U],_[U],h,z,$,m,x,b,S,E,C,A,!0,r,i,a),l(x)||this.drawLetterSpacing(e,n,F[U],_[U],h,z,$,m,x,b,S,E,C,A,!1,r,i,a)}},e.prototype.drawLetterSpacing=function(e,t,n,r,i,a,o,s,c,l,h,u,d,p,f,v,y,g){if(0!==s){var m=e.textAlign;e.textAlign="left";var E=a;"center"===i||"middle"===i?E=a-r.width/2:"right"!==i&&"end"!==i||(E=a-r.width);for(var x=Array.from(n),b=e.measureText(n).width,M=0,S=0;x.length>S;++S){var P=x[S];f?this.strokeText(e,t,P,E,o,u,d,v,y,g):this.fillText(e,t,P,E,o,c,l,h,p,v,y,g),E+=b-(M=e.measureText(n.substring(S+1)).width)+s,b=M}e.textAlign=m}else f?this.strokeText(e,t,n,a,o,u,d,v,y,g):this.fillText(e,t,n,a,o,c,l,h,p,v,y,g)},e.prototype.fillText=function(e,t,n,r,i,a,o,s,c,h,u,d){var p;me(e,t,a,o,h,u,d,this.imagePool,!0);var f=!l(s)&&1!==s;f&&(p=e.globalAlpha,e.globalAlpha=s*c),e.fillText(n,r,i),f&&(e.globalAlpha=p)},e.prototype.strokeText=function(e,t,n,r,i,a,o,s,c,h){var u;Ee(e,t,a,s,c,h,this.imagePool,!0);var d=!l(o)&&1!==o;d&&(u=e.globalAlpha,e.globalAlpha=o),e.strokeText(n,r,i),d&&(e.globalAlpha=u)},e}(),Me=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return r(t,e),t}(fe),Se=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return r(t,e),t}(fe),Pe=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return r(t,e),t}(fe),Ce=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return r(t,e),t}(fe),Te=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return r(t,e),t}(fe),Ae=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return r(t,e),t}(fe),we=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return r(t,e),t}(fe),Oe=function(e){function n(t){void 0===t&&(t={});var n=e.call(this)||this;return n.options=t,n.name="canvas-renderer",n}return r(n,e),n.prototype.init=function(){var e,n=i({dirtyObjectNumThreshold:500,dirtyObjectRatioThreshold:.8},this.options),r=this.context.imagePool,a=new fe(r),o=((e={})[t.Shape.CIRCLE]=a,e[t.Shape.ELLIPSE]=a,e[t.Shape.RECT]=a,e[t.Shape.IMAGE]=new xe(r),e[t.Shape.TEXT]=new be(r),e[t.Shape.LINE]=a,e[t.Shape.POLYLINE]=a,e[t.Shape.POLYGON]=a,e[t.Shape.PATH]=a,e[t.Shape.GROUP]=void 0,e[t.Shape.HTML]=void 0,e[t.Shape.MESH]=void 0,e);this.context.defaultStyleRendererFactory=o,this.context.styleRendererFactory=o,this.addRenderingPlugin(new pe(n))},n.prototype.destroy=function(){this.removeAllRenderingPlugins(),delete this.context.defaultStyleRendererFactory,delete this.context.styleRendererFactory},n}(t.AbstractRendererPlugin),ke=Object.freeze({__proto__:null,CircleRenderer:Se,EllipseRenderer:Pe,ImageRenderer:xe,LineRenderer:Ce,PathRenderer:we,Plugin:Oe,PolygonRenderer:Ae,PolylineRenderer:Te,RectRenderer:Me,TextRenderer:be}),Le=function(){function e(){}return e.prototype.apply=function(t,n){var r=this,i=t.renderingService,a=t.renderingContext,o=t.config;this.context=t;var s=a.root.ownerDocument.defaultView,c=function(e){i.hooks.pointerMove.call(e)},l=function(e){i.hooks.pointerUp.call(e)},h=function(e){i.hooks.pointerDown.call(e)},u=function(e){i.hooks.pointerOver.call(e)},d=function(e){i.hooks.pointerOut.call(e)},p=function(e){i.hooks.pointerCancel.call(e)},f=function(e){i.hooks.pointerWheel.call(e)},v=function(e){i.hooks.click.call(e)};i.hooks.init.tap(e.tag,(function(){var e=r.context.contextService.getDomElement();n.globalThis.navigator.msPointerEnabled?(e.style.msContentZooming="none",e.style.msTouchAction="none"):s.supportsPointerEvents&&(e.style.touchAction="none"),s.supportsPointerEvents?function(e){n.globalThis.document.addEventListener("pointermove",c,!0),e.addEventListener("pointerdown",h,!0),e.addEventListener("pointerleave",d,!0),e.addEventListener("pointerover",u,!0),n.globalThis.addEventListener("pointerup",l,!0),n.globalThis.addEventListener("pointercancel",p,!0)}(e):function(e){n.globalThis.document.addEventListener("mousemove",c,!0),e.addEventListener("mousedown",h,!0),e.addEventListener("mouseout",d,!0),e.addEventListener("mouseover",u,!0),n.globalThis.addEventListener("mouseup",l,!0)}(e),s.supportsTouchEvents&&function(e){e.addEventListener("touchstart",h,!0),e.addEventListener("touchend",l,!0),e.addEventListener("touchmove",c,!0),e.addEventListener("touchcancel",p,!0)}(e),o.useNativeClickEvent&&e.addEventListener("click",v,!0),e.addEventListener("wheel",f,{passive:!0,capture:!0})})),i.hooks.destroy.tap(e.tag,(function(){var e=r.context.contextService.getDomElement();n.globalThis.navigator.msPointerEnabled?(e.style.msContentZooming="",e.style.msTouchAction=""):s.supportsPointerEvents&&(e.style.touchAction=""),s.supportsPointerEvents?function(e){n.globalThis.document.removeEventListener("pointermove",c,!0),e.removeEventListener("pointerdown",h,!0),e.removeEventListener("pointerleave",d,!0),e.removeEventListener("pointerover",u,!0),n.globalThis.removeEventListener("pointerup",l,!0)}(e):function(e){n.globalThis.document.removeEventListener("mousemove",c,!0),e.removeEventListener("mousedown",h,!0),e.removeEventListener("mouseout",d,!0),e.removeEventListener("mouseover",u,!0),n.globalThis.removeEventListener("mouseup",l,!0)}(e),s.supportsTouchEvents&&function(e){e.removeEventListener("touchstart",h,!0),e.removeEventListener("touchend",l,!0),e.removeEventListener("touchmove",c,!0),e.removeEventListener("touchcancel",p,!0)}(e),o.useNativeClickEvent&&e.removeEventListener("click",v,!0),e.removeEventListener("wheel",f,!0)}))},e.tag="DOMInteraction",e}(),Re=function(e){function t(){var t=e.apply(this,c([],s(arguments),!1))||this;return t.name="dom-interaction",t}return r(t,e),t.prototype.init=function(){this.addRenderingPlugin(new Le)},t.prototype.destroy=function(){this.removeAllRenderingPlugins()},t}(t.AbstractRendererPlugin),Ie=Object.freeze({__proto__:null,Plugin:Re}),Ne=function(){function e(){this.displayObjectHTMLElementMap=new WeakMap}return e.prototype.joinTransformMatrix=function(e,t){return void 0===t&&(t=[0,0,0]),"matrix(".concat([e[0],e[1],e[4],e[5],e[12]+t[0],e[13]+t[1]].join(","),")")},e.prototype.apply=function(n,r){var i=this,a=n.camera,o=n.renderingContext,s=n.renderingService;this.context=n;var c=o.root.ownerDocument.defaultView,l=c.context.eventService.nativeHTMLMap,h=function(e,t){t.style.transform=i.joinTransformMatrix(e.getWorldTransform(),e.getOrigin())},u=function(e){var n=e.target;if(n.nodeName===t.Shape.HTML){i.$camera||(i.$camera=i.createCamera(a));var o=i.getOrCreateEl(n);if(i.$camera.appendChild(o),r.enableCSSParsing){var s=n.ownerDocument.documentElement.attributes;Object.keys(s).forEach((function(e){o.style[e]=s[e]}))}Object.keys(n.attributes).forEach((function(e){i.updateAttribute(e,n)})),h(n,o),l.set(o,n)}},d=function(e){var n=e.target;if(n.nodeName===t.Shape.HTML&&i.$camera){var r=i.getOrCreateEl(n);r&&(r.remove(),l.delete(r))}},p=function(e){var n=e.target;n.nodeName===t.Shape.HTML&&i.updateAttribute(e.attrName,n)},f=function(e){var n=e.target;if(n.nodeName===t.Shape.HTML){var r=i.getOrCreateEl(n);h(n,r)}},v=function(){if(i.$camera){var e=i.context.config,t=e.height;i.$camera.parentElement.style.width="".concat(e.width||0,"px"),i.$camera.parentElement.style.height="".concat(t||0,"px")}};s.hooks.init.tap(e.tag,(function(){c.addEventListener(t.CanvasEvent.RESIZE,v),c.addEventListener(t.ElementEvent.MOUNTED,u),c.addEventListener(t.ElementEvent.UNMOUNTED,d),c.addEventListener(t.ElementEvent.ATTR_MODIFIED,p),c.addEventListener(t.ElementEvent.BOUNDS_CHANGED,f)})),s.hooks.endFrame.tap(e.tag,(function(){i.$camera&&o.renderReasons.has(t.RenderReason.CAMERA_CHANGED)&&(i.$camera.style.transform=i.joinTransformMatrix(a.getOrthoMatrix()))})),s.hooks.destroy.tap(e.tag,(function(){i.$camera&&i.$camera.remove(),c.removeEventListener(t.CanvasEvent.RESIZE,v),c.removeEventListener(t.ElementEvent.MOUNTED,u),c.removeEventListener(t.ElementEvent.UNMOUNTED,d),c.removeEventListener(t.ElementEvent.ATTR_MODIFIED,p),c.removeEventListener(t.ElementEvent.BOUNDS_CHANGED,f)}))},e.prototype.createCamera=function(e){var t=this.context.config,n=t.document,r=t.width,i=t.height,a=this.context.contextService.getDomElement(),o=a.parentNode;if(o){var s="g-canvas-camera",c=o.querySelector("#"+s);if(!c){var l=(n||document).createElement("div");l.style.overflow="hidden",l.style.pointerEvents="none",l.style.position="absolute",l.style.left="0px",l.style.top="0px",l.style.width="".concat(r||0,"px"),l.style.height="".concat(i||0,"px");var h=(n||document).createElement("div");c=h,h.id=s,h.style.position="absolute",h.style.left="".concat(a.offsetLeft||0,"px"),h.style.top="".concat(a.offsetTop||0,"px"),h.style.transformOrigin="left top",h.style.transform=this.joinTransformMatrix(e.getOrthoMatrix()),h.style.pointerEvents="none",h.style.width="100%",h.style.height="100%",l.appendChild(h),o.appendChild(l)}return c}return null},e.prototype.getOrCreateEl=function(e){var t=this.context.config.document,n=this.displayObjectHTMLElementMap.get(e);return n||(n=(t||document).createElement("div"),e.parsedStyle.$el=n,this.displayObjectHTMLElementMap.set(e,n),e.id&&(n.id=e.id),e.name&&n.setAttribute("name",e.name),e.className&&(n.className=e.className),n.style.position="absolute",n.style["will-change"]="transform",n.style.transform=this.joinTransformMatrix(e.getWorldTransform(),e.getOrigin())),n},e.prototype.updateAttribute=function(e,n){var r=this.getOrCreateEl(n);switch(e){case"innerHTML":var i=n.parsedStyle.innerHTML;d(i)?r.innerHTML=i:(r.innerHTML="",r.appendChild(i));break;case"x":r.style.left="".concat(n.parsedStyle.x,"px");break;case"y":r.style.top="".concat(n.parsedStyle.y,"px");break;case"transformOrigin":var a=n.parsedStyle.transformOrigin;r.style["transform-origin"]="".concat(a[0].buildCSSText(null,null,"")," ").concat(a[1].buildCSSText(null,null,""));break;case"width":if(this.context.enableCSSParsing){var o=n.computedStyleMap().get("width");r.style.width=""+o}else{r.style.width=f(o=n.parsedStyle.width)?"".concat(o,"px"):""+o}break;case"height":if(this.context.enableCSSParsing){var s=n.computedStyleMap().get("height");r.style.height=""+s}else{r.style.height=f(s=n.parsedStyle.height)?"".concat(s,"px"):""+s}break;case"zIndex":r.style["z-index"]="".concat(n.parsedStyle.zIndex);break;case"visibility":r.style.visibility=n.parsedStyle.visibility;break;case"pointerEvents":var c=n.parsedStyle.pointerEvents;r.style.pointerEvents=void 0===c?"auto":c;break;case"opacity":r.style.opacity="".concat(n.parsedStyle.opacity);break;case"fill":var h=n.parsedStyle.fill,u="";t.isCSSRGB(h)?u=h.isNone?"transparent":n.getAttribute("fill"):Array.isArray(h)?u=n.getAttribute("fill"):t.isPattern(h),r.style.background=u;break;case"stroke":var p=n.parsedStyle.stroke,v="";t.isCSSRGB(p)?v=p.isNone?"transparent":n.getAttribute("stroke"):Array.isArray(p)?v=n.getAttribute("stroke"):t.isPattern(p),r.style["border-color"]=v,r.style["border-style"]="solid";break;case"lineWidth":r.style["border-width"]="".concat(n.parsedStyle.lineWidth||0,"px");break;case"lineDash":r.style["border-style"]="dashed";break;case"filter":r.style.filter=n.style.filter;break;default:l(n.style[e])||""===n.style[e]||(r.style[e]=n.style[e])}},e.tag="HTMLRendering",e}(),Be=function(e){function t(){var t=e.apply(this,c([],s(arguments),!1))||this;return t.name="html-renderer",t}return r(t,e),t.prototype.init=function(){this.addRenderingPlugin(new Ne)},t.prototype.destroy=function(){this.removeAllRenderingPlugins()},t}(t.AbstractRendererPlugin),De=Object.freeze({__proto__:null,Plugin:Be}),Fe=function(){function e(e){this.canvasConfig=e,this.imageCache={},this.gradientCache={},this.patternCache={}}return e.prototype.getImageSync=function(e,t){return this.imageCache[e]?t&&t(this.imageCache[e]):this.getOrCreateImage(e).then((function(e){t&&t(e)})),this.imageCache[e]},e.prototype.getOrCreateImage=function(e){var n=this;if(this.imageCache[e])return Promise.resolve(this.imageCache[e]);var r=this.canvasConfig.createImage;return new Promise((function(i,a){var o;r?o=r(e):t.isBrowser&&(o=new window.Image),o&&(o.onload=function(){n.imageCache[e]=o,i(o)},o.onerror=function(e){a(e)},o.crossOrigin="Anonymous",o.src=e)}))},e.prototype.getOrCreatePatternSync=function(e,n,r,i,a,o){var s=this.generatePatternKey(e);if(s&&this.patternCache[s])return this.patternCache[s];var c,l=e.image,h=e.repetition,u=e.transform,p=!1;d(l)?c=this.getImageSync(l,o):r?(c=r,p=!0):c=l;var f,v=c&&n.createPattern(c,h);if(v){var g=void 0;u?g=t.parsedTransformToMat4(t.parseTransform(u),new t.DisplayObject({})):((f=y())[0]=1,f[1]=0,f[2]=0,f[3]=0,f[4]=0,f[5]=1,f[6]=0,f[7]=0,f[8]=0,f[9]=0,f[10]=1,f[11]=0,f[12]=0,f[13]=0,f[14]=0,f[15]=1,g=f),p&&function(e,t,n){var r=n[0],i=n[1],a=n[2];e[0]=t[0]*r,e[1]=t[1]*r,e[2]=t[2]*r,e[3]=t[3]*r,e[4]=t[4]*i,e[5]=t[5]*i,e[6]=t[6]*i,e[7]=t[7]*i,e[8]=t[8]*a,e[9]=t[9]*a,e[10]=t[10]*a,e[11]=t[11]*a,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]}(g,g,[1/i,1/i,1]),v.setTransform({a:g[0],b:g[1],c:g[4],d:g[5],e:g[12]+a[0],f:g[13]+a[1]})}return s&&v&&(this.patternCache[s]=v),v},e.prototype.getOrCreateGradient=function(e,n){var r=this.generateGradientKey(e),i=e.type,a=e.steps,o=e.min,s=e.width,c=e.height,l=e.cx,h=e.cy,u=e.size;if(this.gradientCache[r])return this.gradientCache[r];var d=null;if(i===t.GradientType.LinearGradient){var p=t.computeLinearGradient(o,s,c,e.angle);d=n.createLinearGradient(p.x1,p.y1,p.x2,p.y2)}else if(i===t.GradientType.RadialGradient){var f=t.computeRadialGradient(o,s,c,l,h,u),v=f.x,y=f.y;d=n.createRadialGradient(v,y,0,v,y,f.r)}return d&&(a.forEach((function(e){var n=e.offset;n.unit===t.UnitType.kPercentage&&(null==d||d.addColorStop(n.value/100,""+e.color))})),this.gradientCache[r]=d),this.gradientCache[r]},e.prototype.generateGradientKey=function(e){var t=e.min,n=e.width,r=e.height,i=e.steps,a=e.angle,o=e.cx,s=e.cy,c=e.size;return"gradient-".concat(e.type,"-").concat((null==a?void 0:""+a)||0,"-").concat((null==o?void 0:""+o)||0,"-").concat((null==s?void 0:""+s)||0,"-").concat((null==c?void 0:""+c)||0,"-").concat(t[0],"-").concat(t[1],"-").concat(n,"-").concat(r,"-").concat(i.map((function(e){var t=e.color;return"".concat(e.offset).concat(t)})).join("-"))},e.prototype.generatePatternKey=function(e){var t=e.image,n=e.repetition;return d(t)?"pattern-".concat(t,"-").concat(n):"rect"===t.nodeName?"pattern-".concat(t.entity,"-").concat(n):void 0},e}(),Ge=function(){function e(){}return e.prototype.apply=function(n){var r=n.renderingService,i=n.imagePool,a=n.renderingContext.root.ownerDocument.defaultView,o=function(e,t,n){var r=e.parsedStyle,i=r.width,a=r.height;i&&!a?e.setAttribute("height",n/t*i):!i&&a&&e.setAttribute("width",t/n*a)},s=function(e){var n=e.target,a=n.attributes;if(n.nodeName===t.Shape.IMAGE){var s=a.src,c=a.keepAspectRatio;d(s)&&i.getImageSync(s,(function(e){c&&o(n,e.width,e.height),n.renderable.dirty=!0,r.dirtify()}))}},c=function(e){var n=e.target,a=e.newValue;n.nodeName===t.Shape.IMAGE&&"src"===e.attrName&&d(a)&&i.getOrCreateImage(a).then((function(e){n.attributes.keepAspectRatio&&o(n,e.width,e.height),n.renderable.dirty=!0,r.dirtify()}))};r.hooks.init.tap(e.tag,(function(){a.addEventListener(t.ElementEvent.MOUNTED,s),a.addEventListener(t.ElementEvent.ATTR_MODIFIED,c)})),r.hooks.destroy.tap(e.tag,(function(){a.removeEventListener(t.ElementEvent.MOUNTED,s),a.removeEventListener(t.ElementEvent.ATTR_MODIFIED,c)}))},e.tag="LoadImage",e}(),je=function(e){function t(){var t=e.apply(this,c([],s(arguments),!1))||this;return t.name="image-loader",t}return r(t,e),t.prototype.init=function(){this.context.imagePool=new Fe(this.context.config),this.addRenderingPlugin(new Ge)},t.prototype.destroy=function(){this.removeAllRenderingPlugins()},t}(t.AbstractRendererPlugin),_e=Object.freeze({__proto__:null,ImagePool:Fe,Plugin:je}),He=function(){function e(e){this.renderingContext=e.renderingContext,this.canvasConfig=e.config}return e.prototype.init=function(){var e=this.canvasConfig,t=e.container,n=e.canvas;if(n)this.$canvas=n,t&&n.parentElement!==t&&t.appendChild(n),this.$container=n.parentElement,this.canvasConfig.container=this.$container;else if(t&&(this.$container=d(t)?document.getElementById(t):t,this.$container)){var r=document.createElement("canvas");this.$container.appendChild(r),this.$container.style.position||(this.$container.style.position="relative"),this.$canvas=r}this.context=this.$canvas.getContext("2d"),this.resize(this.canvasConfig.width,this.canvasConfig.height)},e.prototype.getContext=function(){return this.context},e.prototype.getDomElement=function(){return this.$canvas},e.prototype.getDPR=function(){return this.dpr},e.prototype.getBoundingClientRect=function(){if(this.$canvas.getBoundingClientRect)return this.$canvas.getBoundingClientRect()},e.prototype.destroy=function(){this.$container&&this.$canvas&&this.$canvas.parentNode&&this.$container.removeChild(this.$canvas)},e.prototype.resize=function(e,n){var r=this.canvasConfig.devicePixelRatio||t.isBrowser&&window.devicePixelRatio||1;this.dpr=r=1>r?1:Math.ceil(r),this.$canvas&&(this.$canvas.width=this.dpr*e,this.$canvas.height=this.dpr*n,t.setDOMSize(this.$canvas,e,n)),this.renderingContext.renderReasons.add(t.RenderReason.CAMERA_CHANGED)},e.prototype.applyCursorStyle=function(e){this.$container&&this.$container.style&&(this.$container.style.cursor=e)},e.prototype.toDataURL=function(){return a(this,arguments,void 0,(function(e){return void 0===e&&(e={}),o(this,(function(t){return[2,this.context.canvas.toDataURL(e.type,e.encoderOptions)]}))}))},e}(),$e=function(e){function t(){var t=e.apply(this,c([],s(arguments),!1))||this;return t.name="canvas-context-register",t}return r(t,e),t.prototype.init=function(){this.context.ContextService=He},t.prototype.destroy=function(){delete this.context.ContextService},t}(t.AbstractRendererPlugin),We=function(e){function t(t){var n=e.call(this,t)||this;return n.registerPlugin(new $e),n.registerPlugin(new je),n.registerPlugin(new L),n.registerPlugin(new Oe),n.registerPlugin(new Re),n.registerPlugin(new ue),n.registerPlugin(new Be),n}return r(t,e),t}(t.AbstractRenderer);e.CanvasPathGenerator=R,e.CanvasPicker=de,e.CanvasRenderer=ke,e.DomInteraction=Ie,e.HTMLRenderer=De,e.ImageLoader=_e,e.Renderer=We}));
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@antv/g-lite")):"function"==typeof define&&define.amd?define(["exports","@antv/g-lite"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).G=e.G||{},e.G.Canvas2D={}),e.window.G)}(this,(function(e,t){"use strict";var n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},n(e,t)};function r(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+t+" is not a constructor or null");function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var i=function(){return i=Object.assign||function(e){for(var t,n=1,r=arguments.length;r>n;n++)for(var i in t=arguments[n])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},i.apply(this,arguments)};function a(e,t,n,r){return new(n||(n=Promise))((function(i,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(o,s)}c((r=r.apply(e,t||[])).next())}))}function o(e,t){var n,r,i,a,o={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(s){return function(c){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;a&&(a=0,s[0]&&(o=0)),o;)try{if(n=1,r&&(i=2&s[0]?r.return:s[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,s[1])).done)return i;switch(r=0,i&&(s=[2&s[0],i.value]),s[0]){case 0:case 1:i=s;break;case 4:return o.label++,{value:s[1],done:!1};case 5:o.label++,r=s[1],s=[0];continue;case 7:s=o.ops.pop(),o.trys.pop();continue;default:if(!(i=o.trys,(i=i.length>0&&i[i.length-1])||6!==s[0]&&2!==s[0])){o=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&i[3]>s[1])){o.label=s[1];break}if(6===s[0]&&i[1]>o.label){o.label=i[1],i=s;break}if(i&&i[2]>o.label){o.label=i[2],o.ops.push(s);break}i[2]&&o.ops.pop(),o.trys.pop();continue}s=t.call(e,o)}catch(e){s=[6,e],r=0}finally{n=i=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,c])}}}function s(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,i,a=n.call(e),o=[];try{for(;(void 0===t||t-- >0)&&!(r=a.next()).done;)o.push(r.value)}catch(e){i={error:e}}finally{try{r&&!r.done&&(n=a.return)&&n.call(a)}finally{if(i)throw i.error}}return o}function c(e,t,n){if(n||2===arguments.length)for(var r,i=0,a=t.length;a>i;i++)!r&&i in t||(r||(r=Array.prototype.slice.call(t,0,i)),r[i]=t[i]);return e.concat(r||Array.prototype.slice.call(t))}"function"==typeof SuppressedError&&SuppressedError;var l=function(e){return null==e},u={}.toString,h=function(e,t){return u.call(e)==="[object "+t+"]"},d=function(e){return h(e,"String")},p=function(e,t,n){return t>e?t:e>n?n:e},v=function(e){return h(e,"Number")},f="undefined"!=typeof Float32Array?Float32Array:Array;function y(){var e=new f(16);return f!=Float32Array&&(e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0),e[0]=1,e[5]=1,e[10]=1,e[15]=1,e}function g(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}function m(e,t,n){var r=t[0],i=t[1],a=t[2],o=t[3],s=t[4],c=t[5],l=t[6],u=t[7],h=t[8],d=t[9],p=t[10],v=t[11],f=t[12],y=t[13],g=t[14],m=t[15],x=n[0],E=n[1],b=n[2],S=n[3];return e[0]=x*r+E*s+b*h+S*f,e[1]=x*i+E*c+b*d+S*y,e[2]=x*a+E*l+b*p+S*g,e[3]=x*o+E*u+b*v+S*m,e[4]=(x=n[4])*r+(E=n[5])*s+(b=n[6])*h+(S=n[7])*f,e[5]=x*i+E*c+b*d+S*y,e[6]=x*a+E*l+b*p+S*g,e[7]=x*o+E*u+b*v+S*m,e[8]=(x=n[8])*r+(E=n[9])*s+(b=n[10])*h+(S=n[11])*f,e[9]=x*i+E*c+b*d+S*y,e[10]=x*a+E*l+b*p+S*g,e[11]=x*o+E*u+b*v+S*m,e[12]=(x=n[12])*r+(E=n[13])*s+(b=n[14])*h+(S=n[15])*f,e[13]=x*i+E*c+b*d+S*y,e[14]=x*a+E*l+b*p+S*g,e[15]=x*o+E*u+b*v+S*m,e}function x(){var e=new f(3);return f!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0),e}function E(e,t,n,r){return e[0]=t,e[1]=n,e[2]=r,e}function b(e,t,n){var r=t[0],i=t[1],a=t[2],o=n[3]*r+n[7]*i+n[11]*a+n[15];return e[0]=(n[0]*r+n[4]*i+n[8]*a+n[12])/(o=o||1),e[1]=(n[1]*r+n[5]*i+n[9]*a+n[13])/o,e[2]=(n[2]*r+n[6]*i+n[10]*a+n[14])/o,e}function S(e,t,n){return{x:e*Math.cos(n)-t*Math.sin(n),y:e*Math.sin(n)+t*Math.cos(n)}}function M(e,t,n,r,i,a,o,s,c,l){var u,h,d,p,v,f=e,y=t,g=n,m=r,x=s,E=c,b=120*Math.PI/180,C=Math.PI/180*(+i||0),T=[];if(l)h=l[0],d=l[1],p=l[2],v=l[3];else{y=(u=S(f,y,-C)).y;var P=((f=u.x)-(x=(u=S(x,E,-C)).x))/2,A=(y-(E=u.y))/2,w=P*P/(g*g)+A*A/(m*m);w>1&&(g*=w=Math.sqrt(w),m*=w);var O=g*g,k=m*m,L=(a===o?-1:1)*Math.sqrt(Math.abs((O*k-O*A*A-k*P*P)/(O*A*A+k*P*P)));p=L*g*A/m+(f+x)/2,h=Math.asin(((y-(v=L*-m*P/g+(y+E)/2))/m*1e9>>0)/1e9),d=Math.asin(((E-v)/m*1e9>>0)/1e9),0>(h=p>f?Math.PI-h:h)&&(h=2*Math.PI+h),0>(d=p>x?Math.PI-d:d)&&(d=2*Math.PI+d),o&&h>d&&(h-=2*Math.PI),!o&&d>h&&(d-=2*Math.PI)}var R=d-h;if(Math.abs(R)>b){var N=d,B=x,D=E;T=M(x=p+g*Math.cos(d=h+b*(o&&d>h?1:-1)),E=v+m*Math.sin(d),g,m,i,0,o,B,D,[d,N,p,v])}R=d-h;var I=Math.cos(h),F=Math.sin(h),G=Math.cos(d),j=Math.sin(d),_=Math.tan(R/4),H=4/3*g*_,$=4/3*m*_,W=[f,y],U=[f+H*F,y-$*I],z=[x+H*j,E-$*G],Y=[x,E];if(U[0]=2*W[0]-U[0],U[1]=2*W[1]-U[1],l)return U.concat(z,Y,T);for(var Q=[],q=0,X=(T=U.concat(z,Y,T)).length;X>q;q+=1)Q[q]=q%2?S(T[q-1],T[q],C).y:S(T[q],T[q+1],C).x;return Q}Math.hypot||(Math.hypot=function(){for(var e=0,t=arguments.length;t--;)e+=arguments[t]*arguments[t];return Math.sqrt(e)}),x(),function(){var e,t=(e=new f(2),f!=Float32Array&&(e[0]=0,e[1]=0),e)}();var C=Math.PI,T=C/2,P=1.5*C,A=2*C;function w(e,t){var n=t.cx,r=t.cy;e.arc(void 0===n?0:n,void 0===r?0:r,t.r,0,A,!1)}function O(e,t){var n=t.cx,r=void 0===n?0:n,i=t.cy,a=void 0===i?0:i,o=t.rx,s=t.ry;if(e.ellipse)e.ellipse(r,a,o,s,0,0,A,!1);else{var c=void 0,l=void 0,u=void 0;o>s?(c=o,l=1,u=s/o):(c=s,l=o/s,u=1),e.save(),e.scale(l,u),e.arc(r,a,c,0,A)}}function k(e,n){var r,i=n.x1,a=n.y1,o=n.x2,s=n.y2,c=n.markerEnd,l=n.markerStartOffset,u=void 0===l?0:l,h=n.markerEndOffset,d=void 0===h?0:h,p=0,v=0,f=0,y=0;t.isDisplayObject(n.markerStart)&&u&&(p=Math.cos(r=Math.atan2(s-a,o-i))*u,v=Math.sin(r)*u);t.isDisplayObject(c)&&d&&(f=Math.cos(r=Math.atan2(a-s,i-o))*d,y=Math.sin(r)*d);e.moveTo(i+p,a+v),e.lineTo(o+f,s+y)}function L(e,n){var r=n.markerStart,i=n.markerEnd,a=n.markerStartOffset,o=void 0===a?0:a,c=n.markerEndOffset,l=void 0===c?0:c,u=n.d,h=u.absolutePath,d=u.segments,p=0,v=0,f=0,y=0;if(t.isDisplayObject(r)&&o){var g=s(r.parentNode.getStartTangent(),2),m=s(g[0],2),x=m[0],E=m[1],b=s(g[1],2);p=Math.cos(S=Math.atan2(E-b[1],x-b[0]))*o,v=Math.sin(S)*o}if(t.isDisplayObject(i)&&l){var S,M=s(i.parentNode.getEndTangent(),2),C=s(M[0],2),T=(x=C[0],E=C[1],s(M[1],2));f=Math.cos(S=Math.atan2(E-T[1],x-T[0]))*l,y=Math.sin(S)*l}for(var P=h.length,A=P-1,w=0;P>w;w++){var O=h[w],k=h[w+1],L=0===w&&(0!==p||0!==v),R=(w===A||k&&("M"===k[0]||"Z"===k[0]))&&0!==f&&0!==y;switch(O[0]){case"M":L?e.moveTo(O[1]+p,O[2]+v):e.moveTo(O[1],O[2]);break;case"L":R?e.lineTo(O[1]+f,O[2]+y):e.lineTo(O[1],O[2]);break;case"Q":e.quadraticCurveTo(O[1],O[2],O[3],O[4]),R&&e.lineTo(O[3]+f,O[4]+y);break;case"C":e.bezierCurveTo(O[1],O[2],O[3],O[4],O[5],O[6]),R&&e.lineTo(O[5]+f,O[6]+y);break;case"A":var N=d[w].arcParams,B=N.cx,D=N.cy,I=N.rx,F=N.ry,G=N.startAngle,j=N.endAngle,_=N.xRotation,H=N.sweepFlag;if(e.ellipse)e.ellipse(B,D,I,F,_,G,j,!!(1-H));else{var $=void 0,W=void 0,U=void 0;I>F?($=I,W=1,U=F/I):($=F,W=I/F,U=1),e.translate(B,D),e.rotate(_),e.scale(W,U),e.arc(0,0,$,G,j,!!(1-H)),e.scale(1/W,1/U),e.rotate(-_),e.translate(-B,-D)}R&&e.lineTo(O[6]+f,O[7]+y);break;case"Z":e.closePath()}}}function R(e,n){var r,i=n.markerEnd,a=n.markerStartOffset,o=void 0===a?0:a,s=n.markerEndOffset,c=void 0===s?0:s,l=n.points.points,u=l.length-1,h=l[0][0],d=l[0][1],p=l[u][0],v=l[u][1],f=0,y=0,g=0,m=0;t.isDisplayObject(n.markerStart)&&o&&(f=Math.cos(r=Math.atan2(l[1][1]-l[0][1],l[1][0]-l[0][0]))*o,y=Math.sin(r)*o);t.isDisplayObject(i)&&c&&(g=Math.cos(r=Math.atan2(l[u][1]-l[0][1],l[u][0]-l[0][0]))*c,m=Math.sin(r)*c);e.moveTo(h+(f||g),d+(y||m));for(var x=1;u>x;x++)e.lineTo(l[x][0],l[x][1]);e.lineTo(p,v)}function N(e,n){var r,i=n.markerEnd,a=n.markerStartOffset,o=void 0===a?0:a,s=n.markerEndOffset,c=void 0===s?0:s,l=n.points.points,u=l.length,h=u-1,d=u-2,p=l[0][0],v=l[0][1],f=l[h][0],y=l[h][1],g=0,m=0,x=0,E=0;t.isDisplayObject(n.markerStart)&&o&&(g=Math.cos(r=Math.atan2(l[1][1]-l[0][1],l[1][0]-l[0][0]))*o,m=Math.sin(r)*o);t.isDisplayObject(i)&&c&&(x=Math.cos(r=Math.atan2(l[d][1]-l[h][1],l[d][0]-l[h][0]))*c,E=Math.sin(r)*c);e.moveTo(p+g,v+m);for(var b=1;h>b;b++)e.lineTo(l[b][0],l[b][1]);e.lineTo(f+x,y+E)}function B(e,t){var n=t.x,r=void 0===n?0:n,i=t.y,a=void 0===i?0:i,o=t.radius,c=t.width,l=t.height;if(o&&o.some((function(e){return 0!==e}))){var u=c>0?1:-1,h=l>0?1:-1,d=u+h===0,v=s(o.map((function(e){return p(e,0,Math.min(Math.abs(c)/2,Math.abs(l)/2))})),4),f=v[0],y=v[1],g=v[2],m=v[3],x=u*f+r,E=c-u*y+r;e.moveTo(x,a),e.lineTo(E,a),0!==y&&e.arc(E,h*y+a,y,-h*T,u>0?0:C,d);var b=l-h*g+a;e.lineTo(c+r,b),0!==g&&e.arc(c-u*g+r,b,g,u>0?0:C,h>0?T:P,d);var S=u*m+r;e.lineTo(S,l+a),0!==m&&e.arc(S,l-h*m+a,m,h>0?T:-T,u>0?C:0,d);var M=h*f+a;e.lineTo(r,M),0!==f&&e.arc(x,M,f,u>0?C:0,h>0?P:T,d)}else e.rect(r,a,c,l)}var D=function(e){function n(){var t=e.apply(this,c([],s(arguments),!1))||this;return t.name="canvas-path-generator",t}return r(n,e),n.prototype.init=function(){var e;this.context.pathGeneratorFactory=((e={})[t.Shape.CIRCLE]=w,e[t.Shape.ELLIPSE]=O,e[t.Shape.RECT]=B,e[t.Shape.LINE]=k,e[t.Shape.POLYLINE]=N,e[t.Shape.POLYGON]=R,e[t.Shape.PATH]=L,e[t.Shape.TEXT]=void 0,e[t.Shape.GROUP]=void 0,e[t.Shape.IMAGE]=void 0,e[t.Shape.HTML]=void 0,e[t.Shape.MESH]=void 0,e)},n.prototype.destroy=function(){delete this.context.pathGeneratorFactory},n}(t.AbstractRendererPlugin),I=Object.freeze({__proto__:null,Plugin:D});function F(e,t,n,r){var i=e-n,a=t-r;return Math.sqrt(i*i+a*a)}var G=1e-4;function j(e,t,n,r,i,a){var o=-1,l=1/0,u=[n,r],h=20;a&&a>200&&(h=a/10);for(var d=1/h,p=d/10,v=0;h>=v;v++){var f=v*d,y=[i.apply(void 0,c([],s(e.concat([f])),!1)),i.apply(void 0,c([],s(t.concat([f])),!1))];l>(E=F(u[0],u[1],y[0],y[1]))&&(o=f,l=E)}if(0===o)return{x:e[0],y:t[0]};if(1===o){var g=e.length;return{x:e[g-1],y:t[g-1]}}l=1/0;for(v=0;32>v&&G<=p;v++){var m=o-p,x=o+p,E=(y=[i.apply(void 0,c([],s(e.concat([m])),!1)),i.apply(void 0,c([],s(t.concat([m])),!1))],F(u[0],u[1],y[0],y[1]));if(m>=0&&l>E)o=m,l=E;else{var b=[i.apply(void 0,c([],s(e.concat([x])),!1)),i.apply(void 0,c([],s(t.concat([x])),!1))],S=F(u[0],u[1],b[0],b[1]);1>=x&&l>S?(o=x,l=S):p*=.5}}return{x:i.apply(void 0,c([],s(e.concat([o])),!1)),y:i.apply(void 0,c([],s(t.concat([o])),!1))}}function _(e,t,n,r,i,a){var o=[n-e,r-t];if(function(e,t){return e[0]===t[0]&&e[1]===t[1]}(o,[0,0]))return Math.sqrt((i-e)*(i-e)+(a-t)*(a-t));var s=[-o[1],o[0]];return function(e,t){var n=t[0],r=t[1],i=n*n+r*r;i>0&&(i=1/Math.sqrt(i)),e[0]=t[0]*i,e[1]=t[1]*i}(s,s),Math.abs(function(e,t){return e[0]*t[0]+e[1]*t[1]}([i-e,a-t],s))}function H(e,t,n,r,i){var a=1-i;return a*a*a*e+3*t*i*a*a+3*n*i*i*a+r*i*i*i}function $(e,t,n,r,i,a,o,s,c,l,u){var h=function(e,t,n,r,i,a,o,s,c,l,u){return j([e,n,i,o],[t,r,a,s],c,l,H,u)}(e,t,n,r,i,a,o,s,c,l,u);return F(h.x,h.y,c,l)}function W(e,t,n,r){var i=1-r;return i*i*e+2*r*i*t+r*r*n}function U(e,t,n,r,i,a,o,s){var c=function(e,t,n,r,i,a,o,s){return j([e,n,i],[t,r,a],o,s,W)}(e,t,n,r,i,a,o,s);return F(c.x,c.y,o,s)}var z=x(),Y=x(),Q=x(),q=y(),X=function(){function e(){var e=this;this.isHit=function(n,r,i,a){var o,s,c,l,u,h,d,p,v,f,y,g,m,x,S,M,C,T,P,A,w,O,k,L,R,N,B,D,I,F,G,j=e.context.pointInPathPickerFactory[n.nodeName];if(j){var _=(o=q,(G=(P=(c=(s=i)[0])*(p=s[5])-(l=s[1])*(d=s[4]))*(F=(m=s[10])*(T=s[15])-(x=s[11])*(C=s[14]))-(A=c*(v=s[6])-(u=s[2])*d)*(I=(g=s[9])*T-x*(M=s[13]))+(w=c*(f=s[7])-(h=s[3])*d)*(D=g*C-m*M)+(O=l*v-u*p)*(B=(y=s[8])*T-x*(S=s[12]))-(k=l*f-h*p)*(N=y*C-m*S)+(L=u*f-h*v)*(R=y*M-g*S))?(o[0]=(p*F-v*I+f*D)*(G=1/G),o[1]=(u*I-l*F-h*D)*G,o[2]=(M*L-C*k+T*O)*G,o[3]=(m*k-g*L-x*O)*G,o[4]=(v*B-d*F-f*N)*G,o[5]=(c*F-u*B+h*N)*G,o[6]=(C*w-S*L-T*A)*G,o[7]=(y*L-m*w+x*A)*G,o[8]=(d*I-p*B+f*R)*G,o[9]=(l*B-c*I-h*R)*G,o[10]=(S*k-M*w+T*P)*G,o[11]=(g*w-y*k-x*P)*G,o[12]=(p*N-d*D-v*R)*G,o[13]=(c*D-l*N+u*R)*G,o[14]=(M*A-S*O-C*P)*G,o[15]=(y*O-g*A+m*P)*G,o):null),H=b(Y,E(Q,r[0],r[1],0),_);if(j(n,new t.Point(H[0],H[1]),a,e.isPointInPath,e.context,e.runtime))return!0}return!1},this.isPointInPath=function(t,n){var r=e.runtime.offscreenCanvasCreator.getOrCreateContext(e.context.config.offscreenCanvas),i=e.context.pathGeneratorFactory[t.nodeName];return i&&(r.beginPath(),i(r,t.parsedStyle),r.closePath()),r.isPointInPath(n.x,n.y)}}return e.prototype.apply=function(t,n){var r,i=this,s=t.renderingService,c=t.renderingContext;this.context=t,this.runtime=n;var l=null===(r=c.root)||void 0===r?void 0:r.ownerDocument;s.hooks.pick.tapPromise(e.tag,(function(e){return a(i,void 0,void 0,(function(){return o(this,(function(t){return[2,this.pick(l,e)]}))}))})),s.hooks.pickSync.tap(e.tag,(function(e){return i.pick(l,e)}))},e.prototype.pick=function(e,n){var r,i,a=n.topmost,o=n.position,s=E(z,o.x,o.y,0),c=e.elementsFromBBox(s[0],s[1],s[0],s[1]),l=[];try{for(var u=function(e){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}(c),h=u.next();!h.done;h=u.next()){var d=h.value,p=d.getWorldTransform();if(this.isHit(d,s,p,!1)){var v=t.findClosestClipPathTarget(d);if(v){var f=v.parsedStyle.clipPath;if(this.isHit(f,s,f.getWorldTransform(),!0)){if(a)return n.picked=[d],n;l.push(d)}}else{if(a)return n.picked=[d],n;l.push(d)}}}}catch(e){r={error:e}}finally{try{h&&!h.done&&(i=u.return)&&i.call(u)}finally{if(r)throw r.error}}return n.picked=l,n},e.tag="CanvasPicker",e}();function V(e,n,r){var i=e.parsedStyle,a=i.cx,o=i.cy,c=i.r,l=i.fill,u=i.stroke,h=i.lineWidth,d=i.increasedLineWidthForHitTesting,p=i.pointerEvents,v=void 0===p?"auto":p,f=((void 0===h?1:h)+(void 0===d?0:d))/2,y=F(void 0===a?0:a,void 0===o?0:o,n.x,n.y),g=s(t.isFillOrStrokeAffected(v,l,u),2),m=g[0],x=g[1];return m&&x||r?c+f>=y:m?c>=y:!!x&&(y>=c-f&&c+f>=y)}function Z(e,t,n,r){return e/(n*n)+t/(r*r)}function J(e,n,r){var i=e.parsedStyle,a=i.cx,o=void 0===a?0:a,c=i.cy,l=void 0===c?0:c,u=i.rx,h=i.ry,d=i.lineWidth,p=void 0===d?1:d,v=i.increasedLineWidthForHitTesting,f=void 0===v?0:v,y=i.pointerEvents,g=n.x,m=n.y,x=s(t.isFillOrStrokeAffected(void 0===y?"auto":y,i.fill,i.stroke),2),E=x[0],b=x[1],S=(p+f)/2,M=(g-o)*(g-o),C=(m-l)*(m-l);return E&&b||r?1>=Z(M,C,u+S,h+S):E?1>=Z(M,C,u,h):!!b&&(Z(M,C,u-S,h-S)>=1&&1>=Z(M,C,u+S,h+S))}function K(e,t,n,r,i,a){return!(e>i||i>e+n||t>a||a>t+r)}function ee(e,t,n,r,i,a,o,s){var c=(Math.atan2(s-t,o-e)+2*Math.PI)%(2*Math.PI),l={x:e+n*Math.cos(c),y:t+n*Math.sin(c)};return F(l.x,l.y,o,s)<=a/2}function te(e,t,n,r,i,a,o){var s=i/2;return!(Math.min(e,n)-s>a||a>Math.max(e,n)+s||Math.min(t,r)-s>o||o>Math.max(t,r)+s)&&_(e,t,n,r,a,o)<=i/2}function ne(e,t,n,r,i){var a=e.length;if(2>a)return!1;for(var o=0;a-1>o;o++){if(te(e[o][0],e[o][1],e[o+1][0],e[o+1][1],t,n,r))return!0}if(i){var s=e[0],c=e[a-1];if(te(s[0],s[1],c[0],c[1],t,n,r))return!0}return!1}var re=1e-6;function ie(e){return re>Math.abs(e)?0:0>e?-1:1}function ae(e,t,n){return!((n[0]-e[0])*(t[1]-e[1])!=(t[0]-e[0])*(n[1]-e[1])||Math.min(e[0],t[0])>n[0]||n[0]>Math.max(e[0],t[0])||Math.min(e[1],t[1])>n[1]||n[1]>Math.max(e[1],t[1]))}function oe(e,t,n){var r=!1,i=e.length;if(2>=i)return!1;for(var a=0;i>a;a++){var o=e[a],s=e[(a+1)%i];if(ae(o,s,[t,n]))return!0;ie(o[1]-n)>0!=ie(s[1]-n)>0&&0>ie(t-(n-o[1])*(o[0]-s[0])/(o[1]-s[1])-o[0])&&(r=!r)}return r}function se(e,t,n){for(var r=!1,i=0;e.length>i;i++){if(r=oe(e[i],t,n))break}return r}function ce(e,n,r){var i=e.parsedStyle,a=i.x1,o=i.y1,c=i.x2,l=i.y2,u=i.lineWidth,h=void 0===u?1:u,d=i.increasedLineWidthForHitTesting,p=void 0===d?0:d,v=i.pointerEvents;return!(!s(t.isFillOrStrokeAffected(void 0===v?"auto":v,i.fill,i.stroke),2)[1]&&!r||!h)&&te(a,o,c,l,h+p,n.x,n.y)}function le(e,n,r,i,a,o){var c=e.parsedStyle,l=c.lineWidth,u=void 0===l?1:l,h=c.increasedLineWidthForHitTesting,d=void 0===h?0:h,p=c.d,v=c.pointerEvents,f=p.segments,y=p.hasArc,g=p.polylines,m=p.polygons,x=s(t.isFillOrStrokeAffected(void 0===v?"auto":v,(null==m?void 0:m.length)&&c.fill,c.stroke),2),E=x[0],b=x[1],S=t.getOrCalculatePathTotalLength(e),C=!1;return E||r?C=y?i(e,n):se(m,n.x,n.y)||se(g,n.x,n.y):((b||r)&&(C=function(e,t,n,r,i){for(var a=!1,o=t/2,s=0;e.length>s;s++){var c=e[s],l=c.currentPoint,u=c.params,h=c.prePoint,d=c.box;if(!d||K(d.x-o,d.y-o,d.width+t,d.height+t,n,r))switch(c.command){case"L":case"Z":if(a=te(h[0],h[1],l[0],l[1],t,n,r))return!0;break;case"Q":if(a=t/2>=U(h[0],h[1],u[1],u[2],u[3],u[4],n,r))return!0;break;case"C":if(a=t/2>=$(h[0],h[1],u[1],u[2],u[3],u[4],u[5],u[6],n,r,i))return!0;break;case"A":c.cubicParams||(c.cubicParams=M(h[0],h[1],u[1],u[2],u[3],u[4],u[5],u[6],u[7],void 0));for(var p=c.cubicParams,v=h,f=0;p.length>f;f+=6){var y=$(v[0],v[1],p[f],p[f+1],p[f+2],p[f+3],p[f+4],p[f+5],n,r,i);if(v=[p[f+4],p[f+5]],a=t/2>=y)return!0}}}return a}(f,u+d,n.x,n.y,S)),C)}function ue(e,n,r){var i=e.parsedStyle,a=i.lineWidth,o=void 0===a?1:a,c=i.increasedLineWidthForHitTesting,l=void 0===c?0:c,u=i.points,h=i.pointerEvents,d=s(t.isFillOrStrokeAffected(void 0===h?"auto":h,i.fill,i.stroke),2),p=d[0],v=!1;return(d[1]||r)&&(v=ne(u.points,o+l,n.x,n.y,!0)),v||!p&&!r||(v=oe(u.points,n.x,n.y)),v}function he(e,n,r){var i=e.parsedStyle,a=i.lineWidth,o=void 0===a?1:a,c=i.increasedLineWidthForHitTesting,l=void 0===c?0:c,u=i.points,h=i.pointerEvents;return!(!s(t.isFillOrStrokeAffected(void 0===h?"auto":h,i.fill,i.stroke),2)[1]&&!r||!o)&&ne(u.points,o+l,n.x,n.y,!1)}function de(e,n,r,i,a){var o=e.parsedStyle,c=o.radius,l=o.lineWidth,u=void 0===l?1:l,h=o.increasedLineWidthForHitTesting,d=void 0===h?0:h,v=o.x,f=void 0===v?0:v,y=o.y,g=void 0===y?0:y,m=o.width,x=o.height,E=o.pointerEvents,b=s(t.isFillOrStrokeAffected(void 0===E?"auto":E,o.fill,o.stroke),2),S=b[0],M=b[1],C=u+d;if(c&&c.some((function(e){return 0!==e}))){var T=!1;return(M||r)&&(T=function(e,t,n,r,i,a,o,c){var l=s(i,4),u=l[0],h=l[1],d=l[2],p=l[3];return te(e+u,t,e+n-h,t,a,o,c)||te(e+n,t+h,e+n,t+r-d,a,o,c)||te(e+n-d,t+r,e+p,t+r,a,o,c)||te(e,t+r-p,e,t+u,a,o,c)||ee(e+n-h,t+h,h,0,0,a,o,c)||ee(e+n-d,t+r-d,d,0,0,a,o,c)||ee(e+p,t+r-p,p,0,0,a,o,c)||ee(e+u,t+u,u,0,0,a,o,c)}(f,g,m,x,c.map((function(e){return p(e,0,Math.min(Math.abs(m)/2,Math.abs(x)/2))})),C,n.x,n.y)),T||!S&&!r||(T=i(e,n)),T}var P=C/2;return S&&M||r?K(f-P,g-P,m+P,x+P,n.x,n.y):S?K(f,g,m,x,n.x,n.y):!!M&&function(e,t,n,r,i,a,o){var s=i/2;return K(e-s,t-s,n,i,a,o)||K(e+n-s,t-s,i,r,a,o)||K(e+s,t+r-s,n,i,a,o)||K(e-s,t+s,i,r,a,o)}(f,g,m,x,C,n.x,n.y)}function pe(e,n,r,a,o,s){var c=e.parsedStyle,l=c.pointerEvents,u=c.x,h=void 0===u?0:u,d=c.y,p=void 0===d?0:d,v=c.width,f=c.height;if("non-transparent-pixel"===(void 0===l?"auto":l)){var y=o.config.offscreenCanvas,g=s.offscreenCanvasCreator.getOrCreateCanvas(y),m=s.offscreenCanvasCreator.getOrCreateContext(y,{willReadFrequently:!0});return g.width=v,g.height=f,o.defaultStyleRendererFactory[t.Shape.IMAGE].render(m,i(i({},e.parsedStyle),{x:0,y:0}),e,void 0,void 0,void 0),m.getImageData(n.x-h,n.y-p,1,1).data.every((function(e){return 0!==e}))}return!0}function ve(e,t,n,r){var i=e.getGeometryBounds();return!(i.min[0]>t.x||i.min[1]>t.y||t.x>i.max[0]||t.y>i.max[1])}var fe=function(e){function n(){var t=e.apply(this,c([],s(arguments),!1))||this;return t.name="canvas-picker",t}return r(n,e),n.prototype.init=function(){var e,n=((e={})[t.Shape.CIRCLE]=V,e[t.Shape.ELLIPSE]=J,e[t.Shape.RECT]=de,e[t.Shape.LINE]=ce,e[t.Shape.POLYLINE]=he,e[t.Shape.POLYGON]=ue,e[t.Shape.PATH]=le,e[t.Shape.TEXT]=ve,e[t.Shape.GROUP]=null,e[t.Shape.IMAGE]=pe,e[t.Shape.HTML]=null,e[t.Shape.MESH]=null,e);this.context.pointInPathPickerFactory=n,this.addRenderingPlugin(new X)},n.prototype.destroy=function(){delete this.context.pointInPathPickerFactory,this.removeAllRenderingPlugins()},n}(t.AbstractRendererPlugin),ye=Object.freeze({__proto__:null,Plugin:fe}),ge=function(){function e(e){this.canvasRendererPluginOptions=e,this.removedRBushNodeAABBs=[],this.renderQueue=[],this.restoreStack=[],this.clearFullScreenLastFrame=!1,this.clearFullScreen=!1,this.vpMatrix=y(),this.dprMatrix=y(),this.tmpMat4=y(),this.vec3a=x(),this.vec3b=x(),this.vec3c=x(),this.vec3d=x()}return e.prototype.apply=function(n,r){var i=this;this.context=n;var a=n.config,o=n.camera,l=n.renderingService,u=n.renderingContext,h=n.pathGeneratorFactory;this.rBush=n.rBushRoot,this.pathGeneratorFactory=h;var d=n.contextService,p=u.root.ownerDocument.defaultView,v=function(e){var t=e.target.rBushNode;t.aabb&&i.removedRBushNodeAABBs.push(t.aabb)},f=function(e){var t=e.target.rBushNode;t.aabb&&i.removedRBushNodeAABBs.push(t.aabb)};l.hooks.init.tap(e.tag,(function(){p.addEventListener(t.ElementEvent.UNMOUNTED,v),p.addEventListener(t.ElementEvent.CULLED,f);var e=d.getDPR(),n=a.width,r=a.height,o=d.getContext();i.clearRect(o,0,0,n*e,r*e,a.background)})),l.hooks.destroy.tap(e.tag,(function(){p.removeEventListener(t.ElementEvent.UNMOUNTED,v),p.removeEventListener(t.ElementEvent.CULLED,f),i.renderQueue=[],i.removedRBushNodeAABBs=[],i.restoreStack=[]})),l.hooks.beginFrame.tap(e.tag,(function(){var e,t=d.getContext(),n=d.getDPR(),r=a.width,o=a.height,s=i.canvasRendererPluginOptions,c=s.dirtyObjectNumThreshold,u=s.dirtyObjectRatioThreshold,h=l.getStats(),v=h.rendered,f=v/h.total;i.clearFullScreen=i.clearFullScreenLastFrame||!(null===(e=p.context.renderingPlugins[1])||void 0===e?void 0:e.isFirstTimeRenderingFinished)||l.disableDirtyRectangleRendering()||v>c&&f>u,t&&(t.resetTransform?t.resetTransform():t.setTransform(1,0,0,1,0,0),i.clearFullScreen&&i.clearRect(t,0,0,r*n,o*n,a.background))}));var y=function(e,t){e.isVisible()&&!e.isCulled()&&i.renderDisplayObject(e,t,i.context,i.restoreStack,r);for(var n=e.sortable.sorted||e.childNodes,a=n.length,o=0;a>o;o++)y(n[o],t)};l.hooks.endFrame.tap(e.tag,(function(){if(0!==u.root.childNodes.length){i.clearFullScreenLastFrame=!1;var e,n,l=d.getContext(),h=d.getDPR();if((e=i.dprMatrix)[0]=(n=[h,h,1])[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=n[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=n[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,m(i.vpMatrix,i.dprMatrix,o.getOrthoMatrix()),i.clearFullScreen)y(u.root,l);else{var p=i.safeMergeAABB.apply(i,c([i.mergeDirtyAABBs(i.renderQueue)],s(i.removedRBushNodeAABBs.map((function(e){var n=e.minX,r=e.minY,i=e.maxX,a=e.maxY,o=new t.AABB;return o.setMinMax([n,r,0],[i,a,0]),o}))),!1));if(i.removedRBushNodeAABBs=[],t.AABB.isEmpty(p))return void(i.renderQueue=[]);var v=i.convertAABB2Rect(p),f=v.x,g=v.y,x=v.width,E=v.height,S=b(i.vec3a,[f,g,0],i.vpMatrix),M=b(i.vec3b,[f+x,g,0],i.vpMatrix),C=b(i.vec3c,[f,g+E,0],i.vpMatrix),T=b(i.vec3d,[f+x,g+E,0],i.vpMatrix),P=Math.min(S[0],M[0],T[0],C[0]),A=Math.min(S[1],M[1],T[1],C[1]),w=Math.max(S[0],M[0],T[0],C[0]),O=Math.max(S[1],M[1],T[1],C[1]),k=Math.floor(P),L=Math.floor(A),R=Math.ceil(w-P),N=Math.ceil(O-A);l.save(),i.clearRect(l,k,L,R,N,a.background),l.beginPath(),l.rect(k,L,R,N),l.clip(),l.setTransform(i.vpMatrix[0],i.vpMatrix[1],i.vpMatrix[4],i.vpMatrix[5],i.vpMatrix[12],i.vpMatrix[13]),i.searchDirtyObjects(p).sort((function(e,t){return e.sortable.renderOrder-t.sortable.renderOrder})).forEach((function(e){e&&e.isVisible()&&!e.isCulled()&&i.renderDisplayObject(e,l,i.context,i.restoreStack,r)})),l.restore();for(var B=i.renderQueue.length,D=0;B>D;D++)i.saveDirtyAABB(i.renderQueue[D]);i.renderQueue.length=0}var I=i.restoreStack.length;for(D=0;I>D;D++)l.restore();i.restoreStack.length=0}else i.clearFullScreenLastFrame=!0})),l.hooks.render.tap(e.tag,(function(e){i.clearFullScreen||i.renderQueue.push(e)}))},e.prototype.clearRect=function(e,t,n,r,i,a){e.clearRect(t,n,r,i),a&&(e.fillStyle=a,e.fillRect(t,n,r,i))},e.prototype.renderDisplayObject=function(e,n,r,i,a){var o=e.nodeName,s=i[i.length-1];!s||e.compareDocumentPosition(s)&t.Node.DOCUMENT_POSITION_CONTAINS||(n.restore(),i.pop());var c=this.context.styleRendererFactory[o],l=this.pathGeneratorFactory[o],u=e.parsedStyle.clipPath;if(u){this.applyWorldTransform(n,u);var h=this.pathGeneratorFactory[u.nodeName];h&&(n.save(),i.push(e),n.beginPath(),h(n,u.parsedStyle),n.closePath(),n.clip())}c&&(this.applyWorldTransform(n,e),n.save(),this.applyAttributesToContext(n,e)),l&&(n.beginPath(),l(n,e.parsedStyle),e.nodeName!==t.Shape.LINE&&e.nodeName!==t.Shape.PATH&&e.nodeName!==t.Shape.POLYLINE&&n.closePath()),c&&(c.render(n,e.parsedStyle,e,r,this,a),n.restore()),e.renderable.dirty=!1},e.prototype.convertAABB2Rect=function(e){var t=e.getMin(),n=e.getMax(),r=Math.floor(t[0]),i=Math.floor(t[1]);return{x:r,y:i,width:Math.ceil(n[0])-r,height:Math.ceil(n[1])-i}},e.prototype.mergeDirtyAABBs=function(e){var n=new t.AABB;return e.forEach((function(e){var t=e.getRenderBounds();n.add(t);var r=e.renderable.dirtyRenderBounds;r&&n.add(r)})),n},e.prototype.searchDirtyObjects=function(e){var t=s(e.getMin(),2),n=t[0],r=t[1],i=s(e.getMax(),2);return this.rBush.search({minX:n,minY:r,maxX:i[0],maxY:i[1]}).map((function(e){return e.displayObject}))},e.prototype.saveDirtyAABB=function(e){var n=e.renderable;n.dirtyRenderBounds||(n.dirtyRenderBounds=new t.AABB);var r=e.getRenderBounds();r&&n.dirtyRenderBounds.update(r.center,r.halfExtents)},e.prototype.applyAttributesToContext=function(e,t){var n=t.parsedStyle,r=n.stroke,i=n.fill,a=n.opacity,o=n.lineDash,s=n.lineDashOffset;o&&e.setLineDash(o),v(s)&&(e.lineDashOffset=s),v(a)&&(e.globalAlpha*=a),l(r)||Array.isArray(r)||r.isNone||(e.strokeStyle=t.attributes.stroke),l(i)||Array.isArray(i)||i.isNone||(e.fillStyle=t.attributes.fill)},e.prototype.applyWorldTransform=function(e,t,n){n?(g(this.tmpMat4,t.getLocalTransform()),m(this.tmpMat4,n,this.tmpMat4),m(this.tmpMat4,this.vpMatrix,this.tmpMat4)):(g(this.tmpMat4,t.getWorldTransform()),m(this.tmpMat4,this.vpMatrix,this.tmpMat4)),e.setTransform(this.tmpMat4[0],this.tmpMat4[1],this.tmpMat4[4],this.tmpMat4[5],this.tmpMat4[12],this.tmpMat4[13])},e.prototype.safeMergeAABB=function(){for(var e=[],n=0;arguments.length>n;n++)e[n]=arguments[n];var r=new t.AABB;return e.forEach((function(e){r.add(e)})),r},e.tag="CanvasRenderer",e}(),me=function(){function e(e){this.imagePool=e}return e.prototype.render=function(e,n,r,i,a,o){var s=n.fill,c=n.fillRule,u=n.opacity,h=void 0===u?1:u,p=n.fillOpacity,f=void 0===p?1:p,y=n.stroke,g=n.strokeOpacity,m=void 0===g?1:g,x=n.lineWidth,E=void 0===x?1:x,b=n.lineCap,S=n.lineJoin,M=n.shadowType,C=n.shadowBlur,T=n.filter,P=n.miterLimit,A=s&&!s.isNone,w=y&&!y.isNone&&E>0,O=0===(null==s?void 0:s.alpha),k=!(!T||!T.length),L=!l(n.shadowColor)&&C>0,R=r.nodeName,N="inner"===M,B=w&&L&&(R===t.Shape.PATH||R===t.Shape.LINE||R===t.Shape.POLYLINE||O||N);A&&(e.globalAlpha=h*f,B||xe(r,e,L),Se(e,r,s,c,i,a,o,this.imagePool),B||this.clearShadowAndFilter(e,k,L)),w&&(e.globalAlpha=h*m,e.lineWidth=E,v(P)&&(e.miterLimit=P),d(b)&&(e.lineCap=b),d(S)&&(e.lineJoin=S),B&&(N&&(e.globalCompositeOperation="source-atop"),xe(r,e,!0),N&&(Me(e,r,y,i,a,o,this.imagePool),e.globalCompositeOperation="source-over",this.clearShadowAndFilter(e,k,!0))),Me(e,r,y,i,a,o,this.imagePool))},e.prototype.clearShadowAndFilter=function(e,t,n){if(n&&(e.shadowColor="transparent",e.shadowBlur=0),t){var r=e.filter;!l(r)&&r.indexOf("drop-shadow")>-1&&(e.filter=r.replace(/drop-shadow\([^)]*\)/,"").trim()||"none")}},e}();function xe(e,t,n){var r=e.parsedStyle,i=r.filter,a=r.shadowColor,o=r.shadowBlur,s=r.shadowOffsetX,c=r.shadowOffsetY;i&&i.length&&(t.filter=e.style.filter),n&&(t.shadowColor=""+a,t.shadowBlur=o||0,t.shadowOffsetX=s||0,t.shadowOffsetY=c||0)}function Ee(e,t,n,r,i,a,o){var s,c;if("rect"===e.image.nodeName){var l=e.image.parsedStyle,u=l.width,h=l.height;c=r.contextService.getDPR();var d=r.config.offscreenCanvas;(s=a.offscreenCanvasCreator.getOrCreateCanvas(d)).width=u*c,s.height=h*c;var p=a.offscreenCanvasCreator.getOrCreateContext(d),v=[];e.image.forEach((function(e){i.renderDisplayObject(e,p,r,v,a)})),v.forEach((function(){p.restore()}))}return o.getOrCreatePatternSync(e,n,s,c,t.getGeometryBounds().min,(function(){t.renderable.dirty=!0,r.renderingService.dirtify()}))}function be(e,n,r,a){var o;if(e.type===t.GradientType.LinearGradient||e.type===t.GradientType.RadialGradient){var s=n.getGeometryBounds(),c=s&&2*s.halfExtents[0]||1,l=s&&2*s.halfExtents[1]||1,u=s&&s.min||[0,0];o=a.getOrCreateGradient(i(i({type:e.type},e.value),{min:u,width:c,height:l}),r)}return o}function Se(e,n,r,i,a,o,s,c,l){void 0===l&&(l=!1),Array.isArray(r)?r.forEach((function(t){e.fillStyle=be(t,n,e,c),l||(i?e.fill(i):e.fill())})):(t.isPattern(r)&&(e.fillStyle=Ee(r,n,e,a,o,s,c)),l||(i?e.fill(i):e.fill()))}function Me(e,n,r,i,a,o,s,c){void 0===c&&(c=!1),Array.isArray(r)?r.forEach((function(t){e.strokeStyle=be(t,n,e,s),c||e.stroke()})):(t.isPattern(r)&&(e.strokeStyle=Ee(r,n,e,i,a,o,s)),c||e.stroke())}var Ce=function(){function e(e){this.imagePool=e}return e.prototype.render=function(e,t,n){var r,i=t.x,a=void 0===i?0:i,o=t.y,s=void 0===o?0:o,c=t.src,u=t.shadowColor,h=t.shadowBlur,p=t.width,v=t.height;if(d(c)?r=this.imagePool.getImageSync(c):(p||(p=c.width),v||(v=c.height),r=c),r){xe(n,e,!l(u)&&h>0);try{e.drawImage(r,a,s,p,v)}catch(e){}}},e}(),Te=function(){function e(e){this.imagePool=e}return e.prototype.render=function(e,t,n,r,i,a){n.getBounds();var o=t.lineWidth,s=void 0===o?1:o,c=t.textAlign,u=void 0===c?"start":c,h=t.textBaseline,d=void 0===h?"alphabetic":h,p=t.lineJoin,v=void 0===p?"miter":p,f=t.miterLimit,y=void 0===f?10:f,g=t.letterSpacing,m=void 0===g?0:g,x=t.stroke,E=t.fill,b=t.fillRule,S=t.fillOpacity,M=void 0===S?1:S,C=t.strokeOpacity,T=void 0===C?1:C,P=t.opacity,A=void 0===P?1:P,w=t.metrics,O=t.x,k=void 0===O?0:O,L=t.y,R=void 0===L?0:L,N=t.dx,B=t.dy,D=t.shadowColor,I=t.shadowBlur,F=w.lines,G=w.height,j=w.lineHeight,_=w.lineMetrics;e.font=w.font,e.lineWidth=s,e.textAlign="middle"===u?"center":u;var H=d;a.enableCSSParsing||"alphabetic"!==H||(H="bottom"),e.lineJoin=v,l(y)||(e.miterLimit=y);var $=R;"middle"===d?$+=-G/2-j/2:"bottom"===d||"alphabetic"===d||"ideographic"===d?$+=-G:"top"!==d&&"hanging"!==d||($+=-j);var W=k+(N||0);$+=B||0,1===F.length&&("bottom"===H?(H="middle",$-=.5*G):"top"===H&&(H="middle",$+=.5*G)),e.textBaseline=H,xe(n,e,!l(D)&&I>0);for(var U=0;F.length>U;U++){var z=s/2+W;$+=j,l(x)||x.isNone||!s||this.drawLetterSpacing(e,n,F[U],_[U],u,z,$,m,E,b,M,x,T,A,!0,r,i,a),l(E)||this.drawLetterSpacing(e,n,F[U],_[U],u,z,$,m,E,b,M,x,T,A,!1,r,i,a)}},e.prototype.drawLetterSpacing=function(e,t,n,r,i,a,o,s,c,l,u,h,d,p,v,f,y,g){if(0!==s){var m=e.textAlign;e.textAlign="left";var x=a;"center"===i||"middle"===i?x=a-r.width/2:"right"!==i&&"end"!==i||(x=a-r.width);for(var E=Array.from(n),b=e.measureText(n).width,S=0,M=0;E.length>M;++M){var C=E[M];v?this.strokeText(e,t,C,x,o,h,d,f,y,g):this.fillText(e,t,C,x,o,c,l,u,p,f,y,g),x+=b-(S=e.measureText(n.substring(M+1)).width)+s,b=S}e.textAlign=m}else v?this.strokeText(e,t,n,a,o,h,d,f,y,g):this.fillText(e,t,n,a,o,c,l,u,p,f,y,g)},e.prototype.fillText=function(e,t,n,r,i,a,o,s,c,u,h,d){var p;Se(e,t,a,o,u,h,d,this.imagePool,!0);var v=!l(s)&&1!==s;v&&(p=e.globalAlpha,e.globalAlpha=s*c),e.fillText(n,r,i),v&&(e.globalAlpha=p)},e.prototype.strokeText=function(e,t,n,r,i,a,o,s,c,u){var h;Me(e,t,a,s,c,u,this.imagePool,!0);var d=!l(o)&&1!==o;d&&(h=e.globalAlpha,e.globalAlpha=o),e.strokeText(n,r,i),d&&(e.globalAlpha=h)},e}(),Pe=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return r(t,e),t}(me),Ae=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return r(t,e),t}(me),we=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return r(t,e),t}(me),Oe=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return r(t,e),t}(me),ke=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return r(t,e),t}(me),Le=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return r(t,e),t}(me),Re=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return r(t,e),t}(me),Ne=function(e){function n(t){void 0===t&&(t={});var n=e.call(this)||this;return n.options=t,n.name="canvas-renderer",n}return r(n,e),n.prototype.init=function(){var e,n=i({dirtyObjectNumThreshold:500,dirtyObjectRatioThreshold:.8,imageSmoothingEnabled:!0,imageSmoothingQuality:"high"},this.options),r=this.context.imagePool,a=new me(r),o=((e={})[t.Shape.CIRCLE]=a,e[t.Shape.ELLIPSE]=a,e[t.Shape.RECT]=a,e[t.Shape.IMAGE]=new Ce(r),e[t.Shape.TEXT]=new Te(r),e[t.Shape.LINE]=a,e[t.Shape.POLYLINE]=a,e[t.Shape.POLYGON]=a,e[t.Shape.PATH]=a,e[t.Shape.GROUP]=void 0,e[t.Shape.HTML]=void 0,e[t.Shape.MESH]=void 0,e);this.context.defaultStyleRendererFactory=o,this.context.styleRendererFactory=o,this.addRenderingPlugin(new ge(n))},n.prototype.destroy=function(){this.removeAllRenderingPlugins(),delete this.context.defaultStyleRendererFactory,delete this.context.styleRendererFactory},n}(t.AbstractRendererPlugin),Be=Object.freeze({__proto__:null,CircleRenderer:Ae,EllipseRenderer:we,ImageRenderer:Ce,LineRenderer:Oe,PathRenderer:Re,Plugin:Ne,PolygonRenderer:Le,PolylineRenderer:ke,RectRenderer:Pe,TextRenderer:Te}),De=function(){function e(){}return e.prototype.apply=function(t,n){var r=this,i=t.renderingService,a=t.renderingContext,o=t.config;this.context=t;var s=a.root.ownerDocument.defaultView,c=function(e){i.hooks.pointerMove.call(e)},l=function(e){i.hooks.pointerUp.call(e)},u=function(e){i.hooks.pointerDown.call(e)},h=function(e){i.hooks.pointerOver.call(e)},d=function(e){i.hooks.pointerOut.call(e)},p=function(e){i.hooks.pointerCancel.call(e)},v=function(e){i.hooks.pointerWheel.call(e)},f=function(e){i.hooks.click.call(e)};i.hooks.init.tap(e.tag,(function(){var e=r.context.contextService.getDomElement();n.globalThis.navigator.msPointerEnabled?(e.style.msContentZooming="none",e.style.msTouchAction="none"):s.supportsPointerEvents&&(e.style.touchAction="none"),s.supportsPointerEvents?function(e){n.globalThis.document.addEventListener("pointermove",c,!0),e.addEventListener("pointerdown",u,!0),e.addEventListener("pointerleave",d,!0),e.addEventListener("pointerover",h,!0),n.globalThis.addEventListener("pointerup",l,!0),n.globalThis.addEventListener("pointercancel",p,!0)}(e):function(e){n.globalThis.document.addEventListener("mousemove",c,!0),e.addEventListener("mousedown",u,!0),e.addEventListener("mouseout",d,!0),e.addEventListener("mouseover",h,!0),n.globalThis.addEventListener("mouseup",l,!0)}(e),s.supportsTouchEvents&&function(e){e.addEventListener("touchstart",u,!0),e.addEventListener("touchend",l,!0),e.addEventListener("touchmove",c,!0),e.addEventListener("touchcancel",p,!0)}(e),o.useNativeClickEvent&&e.addEventListener("click",f,!0),e.addEventListener("wheel",v,{passive:!0,capture:!0})})),i.hooks.destroy.tap(e.tag,(function(){var e=r.context.contextService.getDomElement();n.globalThis.navigator.msPointerEnabled?(e.style.msContentZooming="",e.style.msTouchAction=""):s.supportsPointerEvents&&(e.style.touchAction=""),s.supportsPointerEvents?function(e){n.globalThis.document.removeEventListener("pointermove",c,!0),e.removeEventListener("pointerdown",u,!0),e.removeEventListener("pointerleave",d,!0),e.removeEventListener("pointerover",h,!0),n.globalThis.removeEventListener("pointerup",l,!0)}(e):function(e){n.globalThis.document.removeEventListener("mousemove",c,!0),e.removeEventListener("mousedown",u,!0),e.removeEventListener("mouseout",d,!0),e.removeEventListener("mouseover",h,!0),n.globalThis.removeEventListener("mouseup",l,!0)}(e),s.supportsTouchEvents&&function(e){e.removeEventListener("touchstart",u,!0),e.removeEventListener("touchend",l,!0),e.removeEventListener("touchmove",c,!0),e.removeEventListener("touchcancel",p,!0)}(e),o.useNativeClickEvent&&e.removeEventListener("click",f,!0),e.removeEventListener("wheel",v,!0)}))},e.tag="DOMInteraction",e}(),Ie=function(e){function t(){var t=e.apply(this,c([],s(arguments),!1))||this;return t.name="dom-interaction",t}return r(t,e),t.prototype.init=function(){this.addRenderingPlugin(new De)},t.prototype.destroy=function(){this.removeAllRenderingPlugins()},t}(t.AbstractRendererPlugin),Fe=Object.freeze({__proto__:null,Plugin:Ie}),Ge=function(){function e(){this.displayObjectHTMLElementMap=new WeakMap}return e.prototype.joinTransformMatrix=function(e,t){return void 0===t&&(t=[0,0,0]),"matrix(".concat([e[0],e[1],e[4],e[5],e[12]+t[0],e[13]+t[1]].join(","),")")},e.prototype.apply=function(n,r){var i=this,a=n.camera,o=n.renderingContext,s=n.renderingService;this.context=n;var c=o.root.ownerDocument.defaultView,l=c.context.eventService.nativeHTMLMap,u=function(e,t){t.style.transform=i.joinTransformMatrix(e.getWorldTransform(),e.getOrigin())},h=function(e){var n=e.target;if(n.nodeName===t.Shape.HTML){i.$camera||(i.$camera=i.createCamera(a));var o=i.getOrCreateEl(n);if(i.$camera.appendChild(o),r.enableCSSParsing){var s=n.ownerDocument.documentElement.attributes;Object.keys(s).forEach((function(e){o.style[e]=s[e]}))}Object.keys(n.attributes).forEach((function(e){i.updateAttribute(e,n)})),u(n,o),l.set(o,n)}},d=function(e){var n=e.target;if(n.nodeName===t.Shape.HTML&&i.$camera){var r=i.getOrCreateEl(n);r&&(r.remove(),l.delete(r))}},p=function(e){var n=e.target;n.nodeName===t.Shape.HTML&&i.updateAttribute(e.attrName,n)},v=function(e){var n=e.target;if(n.nodeName===t.Shape.HTML){var r=i.getOrCreateEl(n);u(n,r)}},f=function(){if(i.$camera){var e=i.context.config,t=e.height;i.$camera.parentElement.style.width="".concat(e.width||0,"px"),i.$camera.parentElement.style.height="".concat(t||0,"px")}};s.hooks.init.tap(e.tag,(function(){c.addEventListener(t.CanvasEvent.RESIZE,f),c.addEventListener(t.ElementEvent.MOUNTED,h),c.addEventListener(t.ElementEvent.UNMOUNTED,d),c.addEventListener(t.ElementEvent.ATTR_MODIFIED,p),c.addEventListener(t.ElementEvent.BOUNDS_CHANGED,v)})),s.hooks.endFrame.tap(e.tag,(function(){i.$camera&&o.renderReasons.has(t.RenderReason.CAMERA_CHANGED)&&(i.$camera.style.transform=i.joinTransformMatrix(a.getOrthoMatrix()))})),s.hooks.destroy.tap(e.tag,(function(){i.$camera&&i.$camera.remove(),c.removeEventListener(t.CanvasEvent.RESIZE,f),c.removeEventListener(t.ElementEvent.MOUNTED,h),c.removeEventListener(t.ElementEvent.UNMOUNTED,d),c.removeEventListener(t.ElementEvent.ATTR_MODIFIED,p),c.removeEventListener(t.ElementEvent.BOUNDS_CHANGED,v)}))},e.prototype.createCamera=function(e){var t=this.context.config,n=t.document,r=t.width,i=t.height,a=this.context.contextService.getDomElement(),o=a.parentNode;if(o){var s="g-canvas-camera",c=o.querySelector("#"+s);if(!c){var l=(n||document).createElement("div");l.style.overflow="hidden",l.style.pointerEvents="none",l.style.position="absolute",l.style.left="0px",l.style.top="0px",l.style.width="".concat(r||0,"px"),l.style.height="".concat(i||0,"px");var u=(n||document).createElement("div");c=u,u.id=s,u.style.position="absolute",u.style.left="".concat(a.offsetLeft||0,"px"),u.style.top="".concat(a.offsetTop||0,"px"),u.style.transformOrigin="left top",u.style.transform=this.joinTransformMatrix(e.getOrthoMatrix()),u.style.pointerEvents="none",u.style.width="100%",u.style.height="100%",l.appendChild(u),o.appendChild(l)}return c}return null},e.prototype.getOrCreateEl=function(e){var t=this.context.config.document,n=this.displayObjectHTMLElementMap.get(e);return n||(n=(t||document).createElement("div"),e.parsedStyle.$el=n,this.displayObjectHTMLElementMap.set(e,n),e.id&&(n.id=e.id),e.name&&n.setAttribute("name",e.name),e.className&&(n.className=e.className),n.style.position="absolute",n.style["will-change"]="transform",n.style.transform=this.joinTransformMatrix(e.getWorldTransform(),e.getOrigin())),n},e.prototype.updateAttribute=function(e,n){var r=this.getOrCreateEl(n);switch(e){case"innerHTML":var i=n.parsedStyle.innerHTML;d(i)?r.innerHTML=i:(r.innerHTML="",r.appendChild(i));break;case"x":r.style.left="".concat(n.parsedStyle.x,"px");break;case"y":r.style.top="".concat(n.parsedStyle.y,"px");break;case"transformOrigin":var a=n.parsedStyle.transformOrigin;r.style["transform-origin"]="".concat(a[0].buildCSSText(null,null,"")," ").concat(a[1].buildCSSText(null,null,""));break;case"width":if(this.context.enableCSSParsing){var o=n.computedStyleMap().get("width");r.style.width=""+o}else{r.style.width=v(o=n.parsedStyle.width)?"".concat(o,"px"):""+o}break;case"height":if(this.context.enableCSSParsing){var s=n.computedStyleMap().get("height");r.style.height=""+s}else{r.style.height=v(s=n.parsedStyle.height)?"".concat(s,"px"):""+s}break;case"zIndex":r.style["z-index"]="".concat(n.parsedStyle.zIndex);break;case"visibility":r.style.visibility=n.parsedStyle.visibility;break;case"pointerEvents":var c=n.parsedStyle.pointerEvents;r.style.pointerEvents=void 0===c?"auto":c;break;case"opacity":r.style.opacity="".concat(n.parsedStyle.opacity);break;case"fill":var u=n.parsedStyle.fill,h="";t.isCSSRGB(u)?h=u.isNone?"transparent":n.getAttribute("fill"):Array.isArray(u)?h=n.getAttribute("fill"):t.isPattern(u),r.style.background=h;break;case"stroke":var p=n.parsedStyle.stroke,f="";t.isCSSRGB(p)?f=p.isNone?"transparent":n.getAttribute("stroke"):Array.isArray(p)?f=n.getAttribute("stroke"):t.isPattern(p),r.style["border-color"]=f,r.style["border-style"]="solid";break;case"lineWidth":r.style["border-width"]="".concat(n.parsedStyle.lineWidth||0,"px");break;case"lineDash":r.style["border-style"]="dashed";break;case"filter":r.style.filter=n.style.filter;break;default:l(n.style[e])||""===n.style[e]||(r.style[e]=n.style[e])}},e.tag="HTMLRendering",e}(),je=function(e){function t(){var t=e.apply(this,c([],s(arguments),!1))||this;return t.name="html-renderer",t}return r(t,e),t.prototype.init=function(){this.addRenderingPlugin(new Ge)},t.prototype.destroy=function(){this.removeAllRenderingPlugins()},t}(t.AbstractRendererPlugin),_e=Object.freeze({__proto__:null,Plugin:je}),He=function(){function e(e){this.canvasConfig=e,this.imageCache={},this.gradientCache={},this.patternCache={}}return e.prototype.getImageSync=function(e,t){return this.imageCache[e]?t&&t(this.imageCache[e]):this.getOrCreateImage(e).then((function(e){t&&t(e)})),this.imageCache[e]},e.prototype.getOrCreateImage=function(e){var n=this;if(this.imageCache[e])return Promise.resolve(this.imageCache[e]);var r=this.canvasConfig.createImage;return new Promise((function(i,a){var o;r?o=r(e):t.isBrowser&&(o=new window.Image),o&&(o.onload=function(){n.imageCache[e]=o,i(o)},o.onerror=function(e){a(e)},o.crossOrigin="Anonymous",o.src=e)}))},e.prototype.getOrCreatePatternSync=function(e,n,r,i,a,o){var s=this.generatePatternKey(e);if(s&&this.patternCache[s])return this.patternCache[s];var c,l=e.image,u=e.repetition,h=e.transform,p=!1;d(l)?c=this.getImageSync(l,o):r?(c=r,p=!0):c=l;var v,f=c&&n.createPattern(c,u);if(f){var g=void 0;h?g=t.parsedTransformToMat4(t.parseTransform(h),new t.DisplayObject({})):((v=y())[0]=1,v[1]=0,v[2]=0,v[3]=0,v[4]=0,v[5]=1,v[6]=0,v[7]=0,v[8]=0,v[9]=0,v[10]=1,v[11]=0,v[12]=0,v[13]=0,v[14]=0,v[15]=1,g=v),p&&function(e,t,n){var r=n[0],i=n[1],a=n[2];e[0]=t[0]*r,e[1]=t[1]*r,e[2]=t[2]*r,e[3]=t[3]*r,e[4]=t[4]*i,e[5]=t[5]*i,e[6]=t[6]*i,e[7]=t[7]*i,e[8]=t[8]*a,e[9]=t[9]*a,e[10]=t[10]*a,e[11]=t[11]*a,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]}(g,g,[1/i,1/i,1]),f.setTransform({a:g[0],b:g[1],c:g[4],d:g[5],e:g[12]+a[0],f:g[13]+a[1]})}return s&&f&&(this.patternCache[s]=f),f},e.prototype.getOrCreateGradient=function(e,n){var r=this.generateGradientKey(e),i=e.type,a=e.steps,o=e.min,s=e.width,c=e.height,l=e.cx,u=e.cy,h=e.size;if(this.gradientCache[r])return this.gradientCache[r];var d=null;if(i===t.GradientType.LinearGradient){var p=t.computeLinearGradient(o,s,c,e.angle);d=n.createLinearGradient(p.x1,p.y1,p.x2,p.y2)}else if(i===t.GradientType.RadialGradient){var v=t.computeRadialGradient(o,s,c,l,u,h),f=v.x,y=v.y;d=n.createRadialGradient(f,y,0,f,y,v.r)}return d&&(a.forEach((function(e){var n=e.offset;n.unit===t.UnitType.kPercentage&&(null==d||d.addColorStop(n.value/100,""+e.color))})),this.gradientCache[r]=d),this.gradientCache[r]},e.prototype.generateGradientKey=function(e){var t=e.min,n=e.width,r=e.height,i=e.steps,a=e.angle,o=e.cx,s=e.cy,c=e.size;return"gradient-".concat(e.type,"-").concat((null==a?void 0:""+a)||0,"-").concat((null==o?void 0:""+o)||0,"-").concat((null==s?void 0:""+s)||0,"-").concat((null==c?void 0:""+c)||0,"-").concat(t[0],"-").concat(t[1],"-").concat(n,"-").concat(r,"-").concat(i.map((function(e){var t=e.color;return"".concat(e.offset).concat(t)})).join("-"))},e.prototype.generatePatternKey=function(e){var t=e.image,n=e.repetition;return d(t)?"pattern-".concat(t,"-").concat(n):"rect"===t.nodeName?"pattern-".concat(t.entity,"-").concat(n):void 0},e}(),$e=function(){function e(){}return e.prototype.apply=function(n){var r=n.renderingService,i=n.imagePool,a=n.renderingContext.root.ownerDocument.defaultView,o=function(e,t,n){var r=e.parsedStyle,i=r.width,a=r.height;i&&!a?e.setAttribute("height",n/t*i):!i&&a&&e.setAttribute("width",t/n*a)},s=function(e){var n=e.target,a=n.attributes;if(n.nodeName===t.Shape.IMAGE){var s=a.src,c=a.keepAspectRatio;d(s)&&i.getImageSync(s,(function(e){c&&o(n,e.width,e.height),n.renderable.dirty=!0,r.dirtify()}))}},c=function(e){var n=e.target,a=e.newValue;n.nodeName===t.Shape.IMAGE&&"src"===e.attrName&&d(a)&&i.getOrCreateImage(a).then((function(e){n.attributes.keepAspectRatio&&o(n,e.width,e.height),n.renderable.dirty=!0,r.dirtify()}))};r.hooks.init.tap(e.tag,(function(){a.addEventListener(t.ElementEvent.MOUNTED,s),a.addEventListener(t.ElementEvent.ATTR_MODIFIED,c)})),r.hooks.destroy.tap(e.tag,(function(){a.removeEventListener(t.ElementEvent.MOUNTED,s),a.removeEventListener(t.ElementEvent.ATTR_MODIFIED,c)}))},e.tag="LoadImage",e}(),We=function(e){function t(){var t=e.apply(this,c([],s(arguments),!1))||this;return t.name="image-loader",t}return r(t,e),t.prototype.init=function(){this.context.imagePool=new He(this.context.config),this.addRenderingPlugin(new $e)},t.prototype.destroy=function(){this.removeAllRenderingPlugins()},t}(t.AbstractRendererPlugin),Ue=Object.freeze({__proto__:null,ImagePool:He,Plugin:We}),ze=function(){function e(e){this.renderingContext=e.renderingContext,this.canvasConfig=e.config}return e.prototype.init=function(){var e=this.canvasConfig,t=e.container,n=e.canvas;if(n)this.$canvas=n,t&&n.parentElement!==t&&t.appendChild(n),this.$container=n.parentElement,this.canvasConfig.container=this.$container;else if(t&&(this.$container=d(t)?document.getElementById(t):t,this.$container)){var r=document.createElement("canvas");this.$container.appendChild(r),this.$container.style.position||(this.$container.style.position="relative"),this.$canvas=r}this.context=this.$canvas.getContext("2d"),this.resize(this.canvasConfig.width,this.canvasConfig.height),function(e,t){var n=t.imageSmoothingEnabled,r=t.imageSmoothingQuality;void 0!==n&&(e.imageSmoothingEnabled=n);void 0!==r&&(e.imageSmoothingQuality=r)}(this.context,this.canvasConfig.renderer.getConfig())},e.prototype.getContext=function(){return this.context},e.prototype.getDomElement=function(){return this.$canvas},e.prototype.getDPR=function(){return this.dpr},e.prototype.getBoundingClientRect=function(){if(this.$canvas.getBoundingClientRect)return this.$canvas.getBoundingClientRect()},e.prototype.destroy=function(){this.$container&&this.$canvas&&this.$canvas.parentNode&&this.$container.removeChild(this.$canvas)},e.prototype.resize=function(e,n){var r=this.canvasConfig.devicePixelRatio||t.isBrowser&&window.devicePixelRatio||1;this.dpr=r=1>r?1:Math.ceil(r),this.$canvas&&(this.$canvas.width=this.dpr*e,this.$canvas.height=this.dpr*n,t.setDOMSize(this.$canvas,e,n)),this.renderingContext.renderReasons.add(t.RenderReason.CAMERA_CHANGED)},e.prototype.applyCursorStyle=function(e){this.$container&&this.$container.style&&(this.$container.style.cursor=e)},e.prototype.toDataURL=function(){return a(this,arguments,void 0,(function(e){return void 0===e&&(e={}),o(this,(function(t){return[2,this.context.canvas.toDataURL(e.type,e.encoderOptions)]}))}))},e}();var Ye=function(e){function t(){var t=e.apply(this,c([],s(arguments),!1))||this;return t.name="canvas-context-register",t}return r(t,e),t.prototype.init=function(){this.context.ContextService=ze},t.prototype.destroy=function(){delete this.context.ContextService},t}(t.AbstractRendererPlugin),Qe=function(e){function t(t){var n=e.call(this,t)||this;return n.registerPlugin(new Ye),n.registerPlugin(new We),n.registerPlugin(new D),n.registerPlugin(new Ne),n.registerPlugin(new Ie),n.registerPlugin(new fe),n.registerPlugin(new je),n}return r(t,e),t}(t.AbstractRenderer);e.CanvasPathGenerator=I,e.CanvasPicker=ye,e.CanvasRenderer=Be,e.DomInteraction=Fe,e.HTMLRenderer=_e,e.ImageLoader=Ue,e.Renderer=Qe}));
//# sourceMappingURL=index.umd.min.js.map
{
"name": "@antv/g-canvas",
"version": "2.0.14",
"version": "2.0.15-alpha.1",
"description": "A renderer implemented by Canvas 2D API",

@@ -40,9 +40,9 @@ "keywords": [

"tslib": "^2.5.3",
"@antv/g-lite": "2.0.10",
"@antv/g-plugin-canvas-path-generator": "2.0.9",
"@antv/g-plugin-canvas-picker": "2.0.11",
"@antv/g-plugin-canvas-renderer": "2.0.11",
"@antv/g-plugin-dom-interaction": "2.0.9",
"@antv/g-plugin-html-renderer": "2.0.11",
"@antv/g-plugin-image-loader": "2.0.9"
"@antv/g-lite": "2.0.11-alpha.1",
"@antv/g-plugin-canvas-path-generator": "2.0.10-alpha.1",
"@antv/g-plugin-canvas-picker": "2.0.12",
"@antv/g-plugin-dom-interaction": "2.0.10",
"@antv/g-plugin-canvas-renderer": "2.0.12-alpha.1",
"@antv/g-plugin-html-renderer": "2.0.12",
"@antv/g-plugin-image-loader": "2.0.10"
},

@@ -49,0 +49,0 @@ "devDependencies": {

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc