vislite 1.2.0-alpha.7 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (141) hide show
  1. package/AUTHORS.txt +6 -6
  2. package/CHANGELOG +3 -1
  3. package/LICENSE +20 -20
  4. package/README.md +2 -1
  5. package/lib/Buffer/index.es.js +1 -1
  6. package/lib/Buffer/index.es.min.js +1 -1
  7. package/lib/Canvas/index.es.js +47 -21
  8. package/lib/Canvas/index.es.min.js +2 -2
  9. package/lib/Cardinal/index.es.js +1 -1
  10. package/lib/Cardinal/index.es.min.js +1 -1
  11. package/lib/Eoap/index.es.js +1 -1
  12. package/lib/Eoap/index.es.min.js +1 -1
  13. package/lib/Hermite/index.es.js +1 -1
  14. package/lib/Hermite/index.es.min.js +1 -1
  15. package/lib/Matrix4/index.es.js +1 -1
  16. package/lib/Matrix4/index.es.min.js +1 -1
  17. package/lib/Mercator/index.es.js +1 -1
  18. package/lib/Mercator/index.es.min.js +1 -1
  19. package/lib/RawCanvas/index.es.js +47 -21
  20. package/lib/RawCanvas/index.es.min.js +2 -2
  21. package/lib/SVG/index.es.js +23 -15
  22. package/lib/SVG/index.es.min.js +2 -2
  23. package/lib/Shader/index.es.js +1 -1
  24. package/lib/Shader/index.es.min.js +1 -1
  25. package/lib/Texture/index.es.js +1 -1
  26. package/lib/Texture/index.es.min.js +1 -1
  27. package/lib/TreeLayout/index.es.js +1 -1
  28. package/lib/TreeLayout/index.es.min.js +1 -1
  29. package/lib/animation/index.es.js +1 -1
  30. package/lib/animation/index.es.min.js +1 -1
  31. package/lib/assemble/index.es.js +1 -1
  32. package/lib/assemble/index.es.min.js +1 -1
  33. package/lib/getLoopColors/index.es.js +1 -1
  34. package/lib/getLoopColors/index.es.min.js +1 -1
  35. package/lib/getWebGLContext/index.es.js +1 -1
  36. package/lib/getWebGLContext/index.es.min.js +1 -1
  37. package/lib/index.umd.js +69 -35
  38. package/lib/index.umd.min.js +2 -2
  39. package/lib/initOption/index.es.js +1 -1
  40. package/lib/initOption/index.es.min.js +1 -1
  41. package/lib/mergeOption/index.es.js +1 -1
  42. package/lib/mergeOption/index.es.min.js +1 -1
  43. package/lib/move/index.es.js +1 -1
  44. package/lib/move/index.es.min.js +1 -1
  45. package/lib/rotate/index.es.js +1 -1
  46. package/lib/rotate/index.es.min.js +1 -1
  47. package/lib/ruler/index.es.js +1 -1
  48. package/lib/ruler/index.es.min.js +1 -1
  49. package/lib/scale/index.es.js +1 -1
  50. package/lib/scale/index.es.min.js +1 -1
  51. package/lib/throttle/index.es.js +1 -1
  52. package/lib/throttle/index.es.min.js +1 -1
  53. package/miniprogram/ui-canvas/drawImage.js +35 -35
  54. package/miniprogram/ui-canvas/index.json +4 -4
  55. package/miniprogram/ui-canvas/index.wxml +4 -4
  56. package/miniprogram/ui-canvas/index.wxss +5 -5
  57. package/package/Buffer/index.ts +2 -2
  58. package/package/Canvas/index.ts +2 -2
  59. package/package/Cardinal/index.ts +2 -2
  60. package/package/Eoap/index.ts +2 -2
  61. package/package/Hermite/index.ts +2 -2
  62. package/package/Matrix4/index.ts +2 -2
  63. package/package/Mercator/index.ts +2 -2
  64. package/package/RawCanvas/index.ts +2 -2
  65. package/package/SVG/index.ts +2 -2
  66. package/package/Shader/index.ts +2 -2
  67. package/package/Texture/index.ts +2 -2
  68. package/package/TreeLayout/index.ts +2 -2
  69. package/package/animation/index.ts +2 -2
  70. package/package/assemble/index.ts +2 -2
  71. package/package/getLoopColors/index.ts +2 -2
  72. package/package/getWebGLContext/index.ts +40 -40
  73. package/package/index.ts +75 -75
  74. package/package/initOption/index.ts +2 -2
  75. package/package/mergeOption/index.ts +2 -2
  76. package/package/move/index.ts +2 -2
  77. package/package/rotate/index.ts +2 -2
  78. package/package/ruler/index.ts +2 -2
  79. package/package/scale/index.ts +2 -2
  80. package/package/throttle/index.ts +2 -2
  81. package/package.json +78 -78
  82. package/src/Eoap.ts +66 -66
  83. package/src/Matrix4/index.ts +84 -84
  84. package/src/Matrix4/move.ts +12 -12
  85. package/src/Matrix4/rotate.ts +15 -15
  86. package/src/Matrix4/scale.ts +11 -11
  87. package/src/Matrix4/transform.ts +64 -64
  88. package/src/Mercator.ts +27 -27
  89. package/src/SVG.ts +24 -24
  90. package/src/common/assemble.ts +22 -22
  91. package/src/common/canvas/arc.ts +51 -51
  92. package/src/common/canvas/config.ts +158 -158
  93. package/src/common/canvas/default.ts +62 -0
  94. package/src/common/canvas/index.ts +13 -7
  95. package/src/common/canvas/painter.ts +3 -54
  96. package/src/common/canvas/texts.ts +18 -18
  97. package/src/common/option.ts +29 -29
  98. package/src/common/setStyle.ts +5 -5
  99. package/src/common/svg/default.ts +27 -0
  100. package/src/common/svg/gradient.ts +53 -53
  101. package/src/common/svg/index.ts +8 -26
  102. package/src/common/tree/index.ts +25 -25
  103. package/src/common/tree/toInnerTree.ts +59 -59
  104. package/src/common/tree/toPlainTree.ts +132 -132
  105. package/src/common/webgl/buffer.ts +79 -79
  106. package/src/common/webgl/getWebGLContext.ts +45 -45
  107. package/src/common/webgl/shader.ts +75 -75
  108. package/src/common/webgl/texture.ts +97 -97
  109. package/src/interpolation/Cardinal.ts +110 -110
  110. package/src/interpolation/Hermite.ts +65 -65
  111. package/src/layout/TreeLayout.ts +188 -188
  112. package/src/move.ts +7 -7
  113. package/src/rotate.ts +7 -7
  114. package/src/ruler.ts +209 -209
  115. package/src/scale.ts +6 -6
  116. package/types/Buffer.d.ts +23 -23
  117. package/types/Canvas.d.ts +5 -0
  118. package/types/CanvasOption.d.ts +8 -8
  119. package/types/CanvasOpts.d.ts +9 -9
  120. package/types/Cardinal.d.ts +13 -13
  121. package/types/Gradient.d.ts +14 -14
  122. package/types/Hermite.d.ts +18 -18
  123. package/types/Map.d.ts +9 -9
  124. package/types/Matrix4.d.ts +47 -47
  125. package/types/SVG.d.ts +243 -238
  126. package/types/Shader.d.ts +16 -16
  127. package/types/Texture.d.ts +16 -16
  128. package/types/Tree.d.ts +69 -69
  129. package/types/TreeConfig.d.ts +36 -36
  130. package/types/TreeLayout.d.ts +54 -54
  131. package/types/TreeOption.d.ts +48 -48
  132. package/types/animation.d.ts +5 -5
  133. package/types/getWebGLContext.d.ts +7 -7
  134. package/types/move.d.ts +5 -5
  135. package/types/rotate.d.ts +5 -5
  136. package/types/ruler.d.ts +10 -10
  137. package/types/scale.d.ts +5 -5
  138. package/types/throttle.d.ts +5 -5
  139. package/types/ui-canvas.d.ts +4 -4
  140. package/uni-app/drawImage.js +19 -19
  141. package/uni-app/ui-canvas.vue +284 -284
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * SVG of VISLite JavaScript Library v1.2.0-alpha.7
2
+ * SVG of VISLite JavaScript Library v1.2.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
- var t=function(e,i){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])},t(e,i)};"function"==typeof SuppressedError&&SuppressedError;var e=["href","title","show","type","role","actuate"];function i(t){return document.createElementNS("http://www.w3.org/2000/svg",t)}var n=function(t,i,n){e.indexOf(i)>-1?t.setAttributeNS("http://www.w3.org/1999/xlink","xlink:"+i,n+""):t.setAttribute(i,n+"")},r=n;function o(t,e){n(t,"stroke",e.strokeStyle),n(t,"fill",e.fillStyle)}function s(t,e){n(t,"fill",e.fillStyle)}function h(t,e){n(t,"stroke",e.strokeStyle),n(t,"fill","none")}var u=function(t,e,i,n,r){var o=Math.cos(i),s=Math.sin(i);return[+((n-t)*o-(r-e)*s+t).toFixed(7),+((n-t)*s+(r-e)*o+e).toFixed(7)]};var _=function(t){var e=t.getElementsByTagName("defs");if(e.length<=0){var n=i("defs");return t.appendChild(n),n}return e[0]},a=function(t,e,i,n,o){if("text"!==t.nodeName.toLowerCase())throw new Error("Need a <text> !");r(t,"dy",{top:.5*e.fontSize,middle:0,bottom:.5*-e.fontSize}[e.textBaseline]),function(t,e){for(var i in e)t.style[i]=e[i]}(t,{"text-anchor":{left:"start",right:"end",center:"middle"}[e.textAlign],"dominant-baseline":"central","font-size":e.fontSize+"px","font-family":e.fontFamily}),r(t,"x",i),r(t,"y",n),"number"==typeof o&&r(t,"transform","rotate("+(o%=360)+","+i+","+n+")")},l=function(t,e,i,n){if("circle"!==t.nodeName.toLowerCase())throw new Error("Need a <circle> !");r(t,"cx",e),r(t,"cy",i),r(t,"r",n)},c=function(t,e,i){if("path"!==t.nodeName.toLowerCase())throw new Error("Need a <path> !");r(t,"d",e),r(t,"stroke-dasharray",i.lineDash.join(",")),r(t,"stroke-width",i.lineWidth+""),r(t,"stroke-linecap",i.lineCap+""),r(t,"stroke-linejoin",i.lineJoin+"")},f=function(t,e,i,n,o){if("rect"!==t.nodeName.toLowerCase())throw new Error("Need a <rect> !");o<0&&(i-=o*=-1),n<0&&(e-=n*=-1),r(t,"x",e),r(t,"y",i),r(t,"width",n),r(t,"height",o)},p=function(t,e,i,n,o,s,h,_){if("path"!==t.nodeName.toLowerCase())throw new Error("Need a <path> !");if(h=h/180*Math.PI,_=_/180*Math.PI,h%=2*Math.PI,o>s){var a=o;o=s,s=a}_>=1.999999*Math.PI||_<=1.999999*-Math.PI?_=1.999999*Math.PI:_%=2*Math.PI,function(t,e,i,n,r,o,s){e<0&&(t+=e,e*=-1);var h,_=[];h=u(0,0,t,r,0),_[0]=h[0],_[1]=h[1],h=u(0,0,e,h[0],h[1]),_[2]=h[0],_[3]=h[1],h=u(0,0,t,o,0),_[4]=h[0],_[5]=h[1],h=u(0,0,e,h[0],h[1]),_[6]=h[0],_[7]=h[1],s(t,t+e,_[0]+i,_[1]+n,_[4]+i,_[5]+n,_[2]+i,_[3]+n,_[6]+i,_[7]+n,.5*(o-r))}(h,_,i,n,o,s,(function(i,n,h,u,_,a,l,c,f,p,d){var y=n-i>Math.PI?1:0,E="M"+h+" "+u;d<0&&(d=-d),E+="A"+o+" "+o+" 0 "+y+" 1 "+l+" "+c,"round"==e.arcEndCap?E+="A"+d+" "+d+" 0 1 0 "+f+" "+p:"-round"==e.arcEndCap?E+="A"+d+" "+d+" 0 1 1 "+f+" "+p:E+="L"+f+" "+p,E+="A"+s+" "+s+" 0 "+y+" 0 "+_+" "+a,"round"==e.arcStartCap?E+="A"+d+" "+d+" 0 1 0 "+h+" "+u:"-round"==e.arcStartCap?E+="A"+d+" "+d+" 0 1 1 "+h+" "+u:E+="L"+h+" "+u,"butt"==e.arcStartCap&&(E+="Z"),r(t,"d",E)}))};function d(t,e,i,n,r){var o=Math.cos(i),s=Math.sin(i);return[(n-t)*o-(r-e)*s+t,(n-t)*s+(r-e)*o+e]}var y=function(t,e){var n={value:function(){return"url(#"+e+")"},setColor:function(e,o){var s=i("stop");return t.appendChild(s),r(s,"offset",100*e+"%"),r(s,"style","stop-color:"+o+";"),n}};return n},E=function(){function t(t){this.name="SVG",this.__config={fillStyle:"#000",strokeStyle:"#000",textAlign:"left",textBaseline:"middle",fontSize:16,fontFamily:"sans-serif",arcStartCap:"butt",arcEndCap:"butt",lineDash:[],lineWidth:1,lineCap:"butt",lineJoin:"miter"},this.__path="",this.__currentPosition=[],this.__svg=t}return t.prototype.config=function(t){if("object"!=typeof t)return this.__config[t];for(var e in t)this.__config[e]=t[e];return this},t.prototype.useEl=function(t){return this.__useEl=t,this},t.prototype.getEl=function(){return this.__useEl},t.prototype.appendEl=function(t,e){return e=e||this.__svg,"string"==typeof t&&(t=i(t)),e.appendChild(t),this.__useEl=t,this},t.prototype.appendBoard=function(t,e){var i=t;if("string"==typeof t&&(i={text:"text",path:"path",arc:"path",circle:"circle",rect:"rect"}[t]||""),""==i)throw new Error("Unsupported drawing method:"+t);return this.appendEl(i,e)},t.prototype.remove=function(){if(!this.__useEl)throw new Error("Currently, no node can be deleted.");return this.__useEl.parentNode.removeChild(this.__useEl),this},t.prototype.attr=function(t){if(!this.__useEl)throw new Error("Currently, no node can be modified or viewed.");if("object"!=typeof t)return function(t,i){return e.indexOf(i)>-1&&(i="xlink:"+i),t.getAttribute(i)}(this.__useEl,t);for(var i in t)r(this.__useEl,i,t[i]);return this},t.prototype.fillText=function(t,e,i,n){return void 0===n&&(n=0),a(this.__useEl,this.__config,e,i,n),this.__useEl.textContent=t,s(this.__useEl,this.__config),this},t.prototype.strokeText=function(t,e,i,n){return void 0===n&&(n=0),a(this.__useEl,this.__config,e,i,n),this.__useEl.textContent=t,h(this.__useEl,this.__config),this},t.prototype.fullText=function(t,e,i,n){return void 0===n&&(n=0),a(this.__useEl,this.__config,e,i,n),this.__useEl.textContent=t,o(this.__useEl,this.__config),this},t.prototype.fillArc=function(t,e,i,n,r,o){return p(this.__useEl,this.__config,t,e,i,n,r,o),s(this.__useEl,this.__config),this},t.prototype.strokeArc=function(t,e,i,n,r,o){return p(this.__useEl,this.__config,t,e,i,n,r,o),h(this.__useEl,this.__config),this},t.prototype.fullArc=function(t,e,i,n,r,s){return p(this.__useEl,this.__config,t,e,i,n,r,s),o(this.__useEl,this.__config),this},t.prototype.fillCircle=function(t,e,i){return l(this.__useEl,t,e,i),s(this.__useEl,this.__config),this},t.prototype.strokeCircle=function(t,e,i){return l(this.__useEl,t,e,i),h(this.__useEl,this.__config),this},t.prototype.fullCircle=function(t,e,i){return l(this.__useEl,t,e,i),o(this.__useEl,this.__config),this},t.prototype.fillRect=function(t,e,i,n){return f(this.__useEl,t,e,i,n),s(this.__useEl,this.__config),this},t.prototype.strokeRect=function(t,e,i,n){return f(this.__useEl,t,e,i,n),h(this.__useEl,this.__config),this},t.prototype.fullRect=function(t,e,i,n){return f(this.__useEl,t,e,i,n),o(this.__useEl,this.__config),this},t.prototype.beginPath=function(){return this.__currentPosition=[],this.__path="",this},t.prototype.closePath=function(){return this.__path+="Z",this},t.prototype.moveTo=function(t,e){return this.__currentPosition=[t,e],this.__path+="M"+t+" "+e,this},t.prototype.lineTo=function(t,e){return this.__currentPosition=[t,e],this.__path+=(""==this.__path?"M":"L")+t+" "+e,this},t.prototype.fill=function(){return c(this.__useEl,this.__path,this.__config),s(this.__useEl,this.__config),this},t.prototype.stroke=function(){return c(this.__useEl,this.__path,this.__config),h(this.__useEl,this.__config),this},t.prototype.full=function(){return c(this.__useEl,this.__path,this.__config),o(this.__useEl,this.__config),this},t.prototype.arc=function(t,e,i,n,r){var o=d(t,e,n/180*Math.PI,t+i,e),s=d(t,e,(n+r)/180*Math.PI,t+i,e);return""==this.__path?this.__path+="M"+o[0]+","+o[1]:o[0]==this.__currentPosition[0]&&o[1]==this.__currentPosition[1]||(this.__path+="L"+o[0]+","+o[1]),this.__path+="A"+i+","+i+" 0 "+(r>180||r<-180?1:0)+","+(r>0?1:0)+" "+s[0]+","+s[1],this},t.prototype.quadraticCurveTo=function(t,e,i,n){return this.__path+="Q"+t+" "+e+","+i+" "+n,this},t.prototype.bezierCurveTo=function(t,e,i,n,r,o){return this.__path+="C"+t+" "+e+","+i+" "+n+","+r+" "+o,this},t.prototype.bind=function(t,e){return this.__useEl.addEventListener(t,(function(t){e.call(this,t,this)}),!1),this},t.prototype.createLinearGradient=function(t,e,n,o){return function(t,e,n,o,s){var h=_(t),u="vislite-lg-"+(new Date).valueOf()+"-"+Math.random(),a=i("linearGradient");return h.appendChild(a),r(a,"id",u),r(a,"x1",e+"%"),r(a,"y1",n+"%"),r(a,"x2",o+"%"),r(a,"y2",s+"%"),y(a,u)}(this.__svg,t,e,n,o)},t.prototype.createRadialGradient=function(t,e,n){return function(t,e,n,o){var s=_(t),h="vislite-rg-"+(new Date).valueOf()+"-"+Math.random(),u=i("radialGradient");return s.appendChild(u),r(u,"id",h),r(u,"cx",e+"%"),r(u,"cy",n+"%"),r(u,"r",o+"%"),y(u,h)}(this.__svg,t,e,n)},t}(),g=function(e){function i(t){if(!t)throw new Error("VISLite SVG:The mount point requires an HTMLElement type but encountered null.");var i=t.clientWidth,n=t.clientHeight,r=document.createElementNS("http://www.w3.org/2000/svg","svg");return t.appendChild(r),r.setAttribute("width",i+""),r.setAttribute("height",n+""),r.setAttribute("viewBox","0 0 "+i+" "+n),e.call(this,r)||this}return function(e,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function n(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(n.prototype=i.prototype,new n)}(i,e),i}(E);export{g as default};
5
+ var t=function(e,i){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])},t(e,i)};"function"==typeof SuppressedError&&SuppressedError;var e=["href","title","show","type","role","actuate"];function i(t){return document.createElementNS("http://www.w3.org/2000/svg",t)}var n=function(t,i,n){e.indexOf(i)>-1?t.setAttributeNS("http://www.w3.org/1999/xlink","xlink:"+i,n+""):t.setAttribute(i,n+"")},r=n;function o(t,e){n(t,"stroke",e.strokeStyle),n(t,"fill",e.fillStyle)}function s(t,e){n(t,"fill",e.fillStyle)}function u(t,e){n(t,"stroke",e.strokeStyle),n(t,"fill","none")}var h=function(t,e,i,n,r){var o=Math.cos(i),s=Math.sin(i);return[+((n-t)*o-(r-e)*s+t).toFixed(7),+((n-t)*s+(r-e)*o+e).toFixed(7)]};var _=function(t){var e=t.getElementsByTagName("defs");if(e.length<=0){var n=i("defs");return t.appendChild(n),n}return e[0]},a=function(t,e,i,n,o){if("text"!==t.nodeName.toLowerCase())throw new Error("Need a <text> !");r(t,"dy",{top:.5*e.fontSize,middle:0,bottom:.5*-e.fontSize}[e.textBaseline]),function(t,e){for(var i in e)t.style[i]=e[i]}(t,{"text-anchor":{left:"start",right:"end",center:"middle"}[e.textAlign],"dominant-baseline":"central","font-size":e.fontSize+"px","font-family":e.fontFamily}),r(t,"x",i),r(t,"y",n),"number"==typeof o&&r(t,"transform","rotate("+(o%=360)+","+i+","+n+")")},l=function(t,e,i,n){if("circle"!==t.nodeName.toLowerCase())throw new Error("Need a <circle> !");r(t,"cx",e),r(t,"cy",i),r(t,"r",n)},c=function(t,e,i){if("path"!==t.nodeName.toLowerCase())throw new Error("Need a <path> !");r(t,"d",e),r(t,"stroke-dasharray",i.lineDash.join(",")),r(t,"stroke-width",i.lineWidth+""),r(t,"stroke-linecap",i.lineCap+""),r(t,"stroke-linejoin",i.lineJoin+"")},f=function(t,e,i,n,o){if("rect"!==t.nodeName.toLowerCase())throw new Error("Need a <rect> !");o<0&&(i-=o*=-1),n<0&&(e-=n*=-1),r(t,"x",e),r(t,"y",i),r(t,"width",n),r(t,"height",o)},p=function(t,e,i,n,o,s,u,_){if("path"!==t.nodeName.toLowerCase())throw new Error("Need a <path> !");if(u=u/180*Math.PI,_=_/180*Math.PI,u%=2*Math.PI,o>s){var a=o;o=s,s=a}_>=1.999999*Math.PI||_<=1.999999*-Math.PI?_=1.999999*Math.PI:_%=2*Math.PI,function(t,e,i,n,r,o,s){e<0&&(t+=e,e*=-1);var u,_=[];u=h(0,0,t,r,0),_[0]=u[0],_[1]=u[1],u=h(0,0,e,u[0],u[1]),_[2]=u[0],_[3]=u[1],u=h(0,0,t,o,0),_[4]=u[0],_[5]=u[1],u=h(0,0,e,u[0],u[1]),_[6]=u[0],_[7]=u[1],s(t,t+e,_[0]+i,_[1]+n,_[4]+i,_[5]+n,_[2]+i,_[3]+n,_[6]+i,_[7]+n,.5*(o-r))}(u,_,i,n,o,s,(function(i,n,u,h,_,a,l,c,f,p,d){var y=n-i>Math.PI?1:0,E="M"+u+" "+h;d<0&&(d=-d),E+="A"+o+" "+o+" 0 "+y+" 1 "+l+" "+c,"round"==e.arcEndCap?E+="A"+d+" "+d+" 0 1 0 "+f+" "+p:"-round"==e.arcEndCap?E+="A"+d+" "+d+" 0 1 1 "+f+" "+p:E+="L"+f+" "+p,E+="A"+s+" "+s+" 0 "+y+" 0 "+_+" "+a,"round"==e.arcStartCap?E+="A"+d+" "+d+" 0 1 0 "+u+" "+h:"-round"==e.arcStartCap?E+="A"+d+" "+d+" 0 1 1 "+u+" "+h:E+="L"+u+" "+h,"butt"==e.arcStartCap&&(E+="Z"),r(t,"d",E)}))};function d(t,e,i,n,r){var o=Math.cos(i),s=Math.sin(i);return[(n-t)*o-(r-e)*s+t,(n-t)*s+(r-e)*o+e]}var y=function(t,e){var n={value:function(){return"url(#"+e+")"},setColor:function(e,o){var s=i("stop");return t.appendChild(s),r(s,"offset",100*e+"%"),r(s,"style","stop-color:"+o+";"),n}};return n};var E=function(){function t(t){this.name="SVG",this.__config={fillStyle:"#000",strokeStyle:"#000",textAlign:"left",textBaseline:"middle",fontSize:16,fontFamily:"sans-serif",arcStartCap:"butt",arcEndCap:"butt",lineDash:[],lineWidth:1,lineCap:"butt",lineJoin:"miter"},this.__path="",this.__currentPosition=[],this.__svg=t}return t.prototype.config=function(t){if("object"!=typeof t)return this.__config[t];for(var e in t)this.__config[e]=t[e];return this},t.prototype.reset=function(){return this.config({fillStyle:"#000",strokeStyle:"#000",textAlign:"left",textBaseline:"middle",fontSize:16,fontFamily:"sans-serif",arcStartCap:"butt",arcEndCap:"butt",lineDash:[],lineWidth:1,lineCap:"butt",lineJoin:"miter"}),this},t.prototype.useEl=function(t){return this.__useEl=t,this},t.prototype.getEl=function(){return this.__useEl},t.prototype.appendEl=function(t,e){return e=e||this.__svg,"string"==typeof t&&(t=i(t)),e.appendChild(t),this.__useEl=t,this},t.prototype.appendBoard=function(t,e){var i=t;if("string"==typeof t&&(i={text:"text",path:"path",arc:"path",circle:"circle",rect:"rect"}[t]||""),""==i)throw new Error("Unsupported drawing method:"+t);return this.appendEl(i,e)},t.prototype.remove=function(){if(!this.__useEl)throw new Error("Currently, no node can be deleted.");return this.__useEl.parentNode.removeChild(this.__useEl),this},t.prototype.attr=function(t){if(!this.__useEl)throw new Error("Currently, no node can be modified or viewed.");if("object"!=typeof t)return function(t,i){return e.indexOf(i)>-1&&(i="xlink:"+i),t.getAttribute(i)}(this.__useEl,t);for(var i in t)r(this.__useEl,i,t[i]);return this},t.prototype.fillText=function(t,e,i,n){return void 0===n&&(n=0),a(this.__useEl,this.__config,e,i,n),this.__useEl.textContent=t,s(this.__useEl,this.__config),this},t.prototype.strokeText=function(t,e,i,n){return void 0===n&&(n=0),a(this.__useEl,this.__config,e,i,n),this.__useEl.textContent=t,u(this.__useEl,this.__config),this},t.prototype.fullText=function(t,e,i,n){return void 0===n&&(n=0),a(this.__useEl,this.__config,e,i,n),this.__useEl.textContent=t,o(this.__useEl,this.__config),this},t.prototype.fillArc=function(t,e,i,n,r,o){return p(this.__useEl,this.__config,t,e,i,n,r,o),s(this.__useEl,this.__config),this},t.prototype.strokeArc=function(t,e,i,n,r,o){return p(this.__useEl,this.__config,t,e,i,n,r,o),u(this.__useEl,this.__config),this},t.prototype.fullArc=function(t,e,i,n,r,s){return p(this.__useEl,this.__config,t,e,i,n,r,s),o(this.__useEl,this.__config),this},t.prototype.fillCircle=function(t,e,i){return l(this.__useEl,t,e,i),s(this.__useEl,this.__config),this},t.prototype.strokeCircle=function(t,e,i){return l(this.__useEl,t,e,i),u(this.__useEl,this.__config),this},t.prototype.fullCircle=function(t,e,i){return l(this.__useEl,t,e,i),o(this.__useEl,this.__config),this},t.prototype.fillRect=function(t,e,i,n){return f(this.__useEl,t,e,i,n),s(this.__useEl,this.__config),this},t.prototype.strokeRect=function(t,e,i,n){return f(this.__useEl,t,e,i,n),u(this.__useEl,this.__config),this},t.prototype.fullRect=function(t,e,i,n){return f(this.__useEl,t,e,i,n),o(this.__useEl,this.__config),this},t.prototype.beginPath=function(){return this.__currentPosition=[],this.__path="",this},t.prototype.closePath=function(){return this.__path+="Z",this},t.prototype.moveTo=function(t,e){return this.__currentPosition=[t,e],this.__path+="M"+t+" "+e,this},t.prototype.lineTo=function(t,e){return this.__currentPosition=[t,e],this.__path+=(""==this.__path?"M":"L")+t+" "+e,this},t.prototype.fill=function(){return c(this.__useEl,this.__path,this.__config),s(this.__useEl,this.__config),this},t.prototype.stroke=function(){return c(this.__useEl,this.__path,this.__config),u(this.__useEl,this.__config),this},t.prototype.full=function(){return c(this.__useEl,this.__path,this.__config),o(this.__useEl,this.__config),this},t.prototype.arc=function(t,e,i,n,r){var o=d(t,e,n/180*Math.PI,t+i,e),s=d(t,e,(n+r)/180*Math.PI,t+i,e);return""==this.__path?this.__path+="M"+o[0]+","+o[1]:o[0]==this.__currentPosition[0]&&o[1]==this.__currentPosition[1]||(this.__path+="L"+o[0]+","+o[1]),this.__path+="A"+i+","+i+" 0 "+(r>180||r<-180?1:0)+","+(r>0?1:0)+" "+s[0]+","+s[1],this},t.prototype.quadraticCurveTo=function(t,e,i,n){return this.__path+="Q"+t+" "+e+","+i+" "+n,this},t.prototype.bezierCurveTo=function(t,e,i,n,r,o){return this.__path+="C"+t+" "+e+","+i+" "+n+","+r+" "+o,this},t.prototype.bind=function(t,e){return this.__useEl.addEventListener(t,(function(t){e.call(this,t,this)}),!1),this},t.prototype.createLinearGradient=function(t,e,n,o){return function(t,e,n,o,s){var u=_(t),h="vislite-lg-"+(new Date).valueOf()+"-"+Math.random(),a=i("linearGradient");return u.appendChild(a),r(a,"id",h),r(a,"x1",e+"%"),r(a,"y1",n+"%"),r(a,"x2",o+"%"),r(a,"y2",s+"%"),y(a,h)}(this.__svg,t,e,n,o)},t.prototype.createRadialGradient=function(t,e,n){return function(t,e,n,o){var s=_(t),u="vislite-rg-"+(new Date).valueOf()+"-"+Math.random(),h=i("radialGradient");return s.appendChild(h),r(h,"id",u),r(h,"cx",e+"%"),r(h,"cy",n+"%"),r(h,"r",o+"%"),y(h,u)}(this.__svg,t,e,n)},t}(),g=function(e){function i(t){if(!t)throw new Error("VISLite SVG:The mount point requires an HTMLElement type but encountered null.");var i=t.clientWidth,n=t.clientHeight,r=document.createElementNS("http://www.w3.org/2000/svg","svg");return t.appendChild(r),r.setAttribute("width",i+""),r.setAttribute("height",n+""),r.setAttribute("viewBox","0 0 "+i+" "+n),e.call(this,r)||this}return function(e,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function n(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(n.prototype=i.prototype,new n)}(i,e),i}(E);export{g as default};
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Shader of VISLite JavaScript Library v1.2.0-alpha.7
2
+ * Shader of VISLite JavaScript Library v1.2.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  var loadShader = function (painter, type, source) {
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Shader of VISLite JavaScript Library v1.2.0-alpha.7
2
+ * Shader of VISLite JavaScript Library v1.2.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  var r=function(r,e,t){var a=r.createShader(e);if(null==a)throw new Error("Unable to create shader!");if(r.shaderSource(a,t),r.compileShader(a),!r.getShaderParameter(a,r.COMPILE_STATUS))throw new Error("Failed to compile shader:"+r.getShaderInfoLog(a));return a},e=function(){function e(r){this.__painter=r}return e.prototype.use=function(){return this.__painter.useProgram(this.program),this},e.prototype.compile=function(e,t){return this.program=function(e,t,a){var o=r(e,e.VERTEX_SHADER,t),n=r(e,e.FRAGMENT_SHADER,a),i=e.createProgram();if(e.attachShader(i,o),e.attachShader(i,n),e.linkProgram(i),!e.getProgramParameter(i,e.LINK_STATUS))throw new Error("Failed to link program: "+e.getProgramInfoLog(i));return i}(this.__painter,e,t),this},e}();export{e as default};
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Texture of VISLite JavaScript Library v1.2.0-alpha.7
2
+ * Texture of VISLite JavaScript Library v1.2.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  var initTexture = function (painter, type, unit) {
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Texture of VISLite JavaScript Library v1.2.0-alpha.7
2
+ * Texture of VISLite JavaScript Library v1.2.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  var _=function(){function _(_,t,e){void 0===e&&(e=0),this.__painter=_,this.__type={"2d":_.TEXTURE_2D,cube:_.TEXTURE_CUBE_MAP}[t],this.__texture=function(_,t,e){var E=_.createTexture();return _.activeTexture(_["TEXTURE"+e]),_.bindTexture(t,E),E}(_,this.__type,e),_.texParameteri(this.__type,_.TEXTURE_MIN_FILTER,_.NEAREST),_.texParameteri(this.__type,_.TEXTURE_MAG_FILTER,_.NEAREST),_.texParameteri(this.__type,_.TEXTURE_WRAP_S,_.CLAMP_TO_EDGE),_.texParameteri(this.__type,_.TEXTURE_WRAP_T,_.CLAMP_TO_EDGE)}return _.prototype.useImage=function(_){return function(_,t,e,E,T,i){_.texImage2D(t,e,E,E,T,i)}(this.__painter,this.__type,0,this.__painter.RGBA,this.__painter.UNSIGNED_BYTE,_),this},_.prototype.useCube=function(_,t,e){return function(_,t,e,E,T,i,r,n,a){for(var u,p=[_.TEXTURE_CUBE_MAP_POSITIVE_X,_.TEXTURE_CUBE_MAP_NEGATIVE_X,_.TEXTURE_CUBE_MAP_POSITIVE_Y,_.TEXTURE_CUBE_MAP_NEGATIVE_Y,_.TEXTURE_CUBE_MAP_POSITIVE_Z,_.TEXTURE_CUBE_MAP_NEGATIVE_Z],s=0;s<p.length;s++)i[s]&&(u=p[s],_.texImage2D(u,e,E,r,n,0,E,T,null),_.bindTexture(t,a),_.texImage2D(u,e,E,E,T,i[s]));_.generateMipmap(t)}(this.__painter,this.__type,0,this.__painter.RGBA,this.__painter.UNSIGNED_BYTE,_,t,e,this.__texture),this},_}();export{_ as default};
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * TreeLayout of VISLite JavaScript Library v1.2.0-alpha.7
2
+ * TreeLayout of VISLite JavaScript Library v1.2.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  /******************************************************************************
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * TreeLayout of VISLite JavaScript Library v1.2.0-alpha.7
2
+ * TreeLayout of VISLite JavaScript Library v1.2.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  var t=function(o,e){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,o){t.__proto__=o}||function(t,o){for(var e in o)Object.prototype.hasOwnProperty.call(o,e)&&(t[e]=o[e])},t(o,e)};"function"==typeof SuppressedError&&SuppressedError;function o(t,o){for(var e in t)o[e]=t[e];return o}var e,n=function(){function t(t){void 0===t&&(t={}),this.name="Tree",this.__config=o(t,{root:function(t){return t},children:function(t){return t.children},id:function(t){return t.name}})}return t.prototype.use=function(t,o){return void 0===o&&(o={}),function(t,o,e){var n=function(t,o){var e,n,i={},r=o.root(t);e=n=o.id(r),i[e]={data:r,pid:null,id:e,isOpen:!0,show:!0,children:[]};var p=1;return function n(r,s){var _=o.children(r,t);p+=_?_.length:0;for(var h=0;_&&h<_.length;h++)e=o.id(_[h]),i[s].children.push(e),i[e]={data:_[h],pid:s,id:e,isOpen:!0,show:!0,children:[]},n(_[h],e)}(r,e),{rid:n,value:i,num:p}}(t,o),i=n.value,r=n.rid;if(1==n.num)return i[r].left=.5,i[r].top=.5,i[r].show=!0,{deep:1,node:i,root:r,size:1};var p=[],s=0,_=0;for(var h in e[r]?(i[r].left=.5,i[r].top=.5,i[r].show=!0,s=1):function t(o,n){n>_&&(_=n);var r=0;if(!e[o.id])for(r=0;r<o.children.length;r++)t(i[o.children[r]],n+1);if(i[o.id].left=n+.5,0==r?(null==p[n]&&(p[n]=-.5),null==p[n-1]&&(p[n-1]=-.5),i[o.id].top=p[n]+1,p[n]+1+.5*(i[o.pid].children.length-1)-1<p[n-1]&&(i[o.id].top=p[n-1]+1-.5*(i[o.pid].children.length-1))):i[o.id].top=.5*(i[o.children[0]].top+i[o.children[r-1]].top),i[o.id].top<=p[n])var h=p[n]+1-i[o.id].top((function t(o,e){i[o].top+=h,p[e]<i[o].top&&(p[e]=i[o].top);for(var n=0;n<i[o].children.length;n++)t(i[o].children[n],e+1)}))(o.id,n);p[n]=i[o.id].top,i[o.id].top+.5>s&&(s=i[o.id].top+.5)}(i[r],0),e)e[h]&&(i[h].isOpen=!1,function t(o,e,n){for(var r=0;r<i[o].children.length;r++)i[i[o].children[r]].left=e,i[i[o].children[r]].top=n,i[i[o].children[r]].show=!1,t(i[o].children[r],e,n)}(h,i[h].left,i[h].top));return{node:i,root:r,size:s,deep:_+1}}(t,this.__config,o)},t}(),i=[];function r(t,o,e,n,i){var r=Math.cos(e),p=Math.sin(e);return[(n-t)*r-(i-o)*p+t,(n-t)*p+(i-o)*r+o]}var p=function(n){function p(){var t=null!==n&&n.apply(this,arguments)||this;return t.name="TreeLayout",t.__option={offsetX:0,offsetY:0,duration:500,type:"plain",direction:"LR",x:100,y:100,width:100,height:100,radius:100},t.__noOpens={},t}return function(o,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function n(){this.constructor=o}t(o,e),o.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}(p,n),p.prototype.setOption=function(t){return o(t,this.__option),this},p.prototype.use=function(t,o){void 0===o&&(o={});var e=n.prototype.use.call(this,t,o);if(0!=this.__option.offsetX||0!=this.__option.offsetY)for(var i in e.node)if(!e.node[i].show){var p=0,s=i;do{s=e.node[s].pid,p++}while(!e.node[s].show);e.node[i].left+=this.__option.offsetX*p,e.node[i].top+=this.__option.offsetY*p}if("rect"==this.__option.type){if("LR"==this.__option.direction||"RL"==this.__option.direction){var _=this.__option.height/e.size,h=this.__option.width/(e.deep-1),d=this.__option.y-.5*this.__option.height,f="LR"==this.__option.direction?1:-1;for(var i in e.node)1==e.deep?(e.node[i].left=this.__option.x+.5*this.__option.width*f,e.node[i].top=this.__option.y):(e.node[i].left=this.__option.x+(e.node[i].left-.5)*h*f,e.node[i].top=e.node[i].top*_+d)}else if("TB"==this.__option.direction||"BT"==this.__option.direction){_=this.__option.width/e.size,h=this.__option.height/(e.deep-1),d=this.__option.x-.5*this.__option.width,f="TB"==this.__option.direction?1:-1;for(var i in e.node)if(1==e.deep)e.node[i].left=this.__option.x,e.node[i].top=this.__option.y+.5*this.__option.height*f;else{var l=e.node[i].left;e.node[i].left=e.node[i].top*_+d,e.node[i].top=this.__option.y+(l-.5)*h*f}}}else if("circle"==this.__option.type){var u=this.__option.x,c=this.__option.y,a=2*Math.PI/e.size,v=this.__option.radius/(e.deep-1);for(var i in e.node)if(.5==e.node[i].left)e.node[i].left=u,e.node[i].top=c;else{var y=r(u,c,a*e.node[i].top,u+(e.node[i].left-.5)*v,c);e.node[i].left=y[0],e.node[i].top=y[1]}}return e},p.prototype.bind=function(t,o,e){return void 0===e&&(e={}),this.__rback=o,this.__oralTree=t,this.__noOpens=e,this.__preTree=this.use(this.__oralTree,this.__noOpens),this.__rback(this.__preTree),this},p.prototype.unbind=function(){return this.__rback=function(){return null},this.__oralTree=null,this.__preTree=null,this.__noOpens={},this},p.prototype.doUpdate=function(){var t=this,o=this.use(this.__oralTree,this.__noOpens),n=JSON.parse(JSON.stringify(o));!function(t,o,n){arguments.length<2&&(o=400),arguments.length<3&&(n=function(){});var r={timer:function(t,o,e){if(!t)throw new Error("Tick is required!");var n=(new Date).valueOf()+"_"+(1e3*Math.random()).toFixed(0);return i.push({id:n,createTime:new Date,tick:t,duration:o,callback:e}),r.start(),n},start:function(){e||(e=setInterval(r.tick,13))},tick:function(){var t,o,e,n,p,s,_,h=i;for((i=[]).length=0,o=0;o<h.length;o++)t=(p=h[o]).createTime,e=p.tick,s=p.duration,n=p.callback,e(_=(_=(+(new Date).valueOf()-t.valueOf())/s)>1?1:_),_<1&&p.id?i.push(p):n(_);i.length<=0&&r.stop()},stop:function(){e&&(clearInterval(e),e=null)}},p=r.timer((function(o){t(o)}),o,n)}((function(e){if(t.__preTree)for(var i in n.node)(o.node[i].show||t.__preTree.node[i].show)&&(n.node[i].show=!0,n.node[i].left=t.__preTree.node[i].left+(o.node[i].left-t.__preTree.node[i].left)*e,n.node[i].top=t.__preTree.node[i].top+(o.node[i].top-t.__preTree.node[i].top)*e);t.__rback(n)}),this.__option.duration,(function(){t.__preTree=o,t.__rback(t.__preTree)}))},p.prototype.closeNode=function(t){return this.__preTree?(this.__noOpens[t]=!0,this.doUpdate(),this):this},p.prototype.openNode=function(t){return this.__preTree?(this.__noOpens[t]=!1,this.doUpdate(),this):this},p.prototype.toggleNode=function(t){return this.__preTree?(this.__noOpens[t]=!this.__noOpens[t],this.doUpdate(),this):this},p}(n);export{p as default};
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * animation of VISLite JavaScript Library v1.2.0-alpha.7
2
+ * animation of VISLite JavaScript Library v1.2.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  //当前正在运动的动画的tick函数堆栈
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * animation of VISLite JavaScript Library v1.2.0-alpha.7
2
+ * animation of VISLite JavaScript Library v1.2.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  var t,e=[];function n(n,r,i){arguments.length<2&&(r=400),arguments.length<3&&(i=function(){});var a={timer:function(t,n,r){if(!t)throw new Error("Tick is required!");var i=(new Date).valueOf()+"_"+(1e3*Math.random()).toFixed(0);return e.push({id:i,createTime:new Date,tick:t,duration:n,callback:r}),a.start(),i},start:function(){t||(t=setInterval(a.tick,13))},tick:function(){var t,n,r,i,o,u,c,l=e;for((e=[]).length=0,n=0;n<l.length;n++)t=(o=l[n]).createTime,r=o.tick,u=o.duration,i=o.callback,r(c=(c=(+(new Date).valueOf()-t.valueOf())/u)>1?1:c),c<1&&o.id?e.push(o):i(c);e.length<=0&&a.stop()},stop:function(){t&&(clearInterval(t),t=null)}},o=a.timer((function(t){n(t)}),r,i);return function(){var t;for(t in e)if(e[t].id==o)return void(e[t].id=void 0)}}export{n as default};
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * assemble of VISLite JavaScript Library v1.2.0-alpha.7
2
+ * assemble of VISLite JavaScript Library v1.2.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  function assemble (begin, end, step, count) {
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * assemble of VISLite JavaScript Library v1.2.0-alpha.7
2
+ * assemble of VISLite JavaScript Library v1.2.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  function r(r,t,e,f){for(var n=[],o=0;o<f;o++)n[o]=r;return function(){for(var o=0;o<f;o++){if(n[o]+e<t){n[o]=+(n[o]+e).toFixed(7);break}o<f-1&&(n[o]=r)}return n}}export{r as default};
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * getLoopColors of VISLite JavaScript Library v1.2.0-alpha.7
2
+ * getLoopColors of VISLite JavaScript Library v1.2.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  function getLoopColors (num, alpha, colorsFactory) {
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * getLoopColors of VISLite JavaScript Library v1.2.0-alpha.7
2
+ * getLoopColors of VISLite JavaScript Library v1.2.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  function r(r,a,g){void 0===a&&(a=1);var t=g?g(a):["rgba(84,112,198,"+a+")","rgba(145,204,117,"+a+")","rgba(250,200,88,"+a+")","rgba(238,102,102,"+a+")","rgba(115,192,222,"+a+")","rgba(59,162,114,"+a+")","rgba(252,132,82,"+a+")","rgba(154,96,180,"+a+")","rgba(234,124,204,"+a+")"],e=[];if(r<=t.length)return t;if(r%t.length==0)for(var n=0;n<r/t.length;n++)e=e.concat(t);else{for(var o=1;o<r/t.length;o++)e=e.concat(t);if(r%t.length==1)e=e.concat(t[4]);else for(var b=0;b<r%t.length;b++)e=e.concat(t[b])}return e}export{r as default};
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * getWebGLContext of VISLite JavaScript Library v1.2.0-alpha.7
2
+ * getWebGLContext of VISLite JavaScript Library v1.2.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  function getWebGLContext (canvas, scale, opts, mode) {
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * getWebGLContext of VISLite JavaScript Library v1.2.0-alpha.7
2
+ * getWebGLContext of VISLite JavaScript Library v1.2.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  var e=function(e,t,i){if(void 0===t&&(t=1),!e)throw new Error("VISLite getWebGLContext:The mount point requires an HTMLElement type but encountered null.");var n,r=e.clientWidth,a=e.clientHeight,o=e;return o._vislite_canvas_?n=o._vislite_canvas_:(n=document.createElement("canvas"),e.appendChild(n),o._vislite_canvas_=n,e.setAttribute("vislite","WebGL")),n.style.width=r+"px",n.setAttribute("width",r+""),n.style.height=a+"px",n.setAttribute("height",a+""),function(e,t,i,n){void 0===i&&(i={}),void 0===n&&(n="scaleToFill");for(var r=["experimental-webgl","webkit-3d","moz-webgl"],a=e.getContext("webgl",i),o=0;o<r.length;o++){try{a=e.getContext(r[o],i)}catch(e){}if(a)break}if(!a)throw new Error("Non canvas or browser does not support webgl.");var l=a.canvas.width,s=a.canvas.height,c=t,v=t;"aspectFit"==n?l>s?c*=s/l:s>l&&(v*=l/s):"aspectFill"==n&&(l>s?v*=l/s:s>l&&(c*=s/l));var h=l*c,u=s*v;return a.viewport(.5*(l-h),.5*(s-u),h,u),a.depthFunc(a.LEQUAL),a.enable(a.DEPTH_TEST),a}(n,t,{},i)};export{e as default};
package/lib/index.umd.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * VISLite JavaScript Library v1.2.0-alpha.7
2
+ * VISLite JavaScript Library v1.2.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  (function (global, factory) {
@@ -565,6 +565,17 @@
565
565
  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
566
566
  }
567
567
 
568
+ var __assign = function() {
569
+ __assign = Object.assign || function __assign(t) {
570
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
571
+ s = arguments[i];
572
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
573
+ }
574
+ return t;
575
+ };
576
+ return __assign.apply(this, arguments);
577
+ };
578
+
568
579
  typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
569
580
  var e = new Error(message);
570
581
  return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
@@ -787,23 +798,27 @@
787
798
  return enhanceGradient$1(radialGradient, gradientId);
788
799
  };
789
800
 
801
+ function defaultFactory$1 () {
802
+ return {
803
+ fillStyle: "#000",
804
+ strokeStyle: "#000",
805
+ textAlign: "left",
806
+ textBaseline: "middle",
807
+ "fontSize": 16,
808
+ "fontFamily": "sans-serif",
809
+ "arcStartCap": "butt",
810
+ "arcEndCap": "butt",
811
+ lineDash: [],
812
+ lineWidth: 1,
813
+ lineCap: "butt",
814
+ lineJoin: "miter"
815
+ };
816
+ }
817
+
790
818
  var SVG$1 = (function () {
791
819
  function SVG(svg) {
792
820
  this.name = "SVG";
793
- this.__config = {
794
- fillStyle: "#000",
795
- strokeStyle: "#000",
796
- textAlign: "left",
797
- textBaseline: "middle",
798
- "fontSize": 16,
799
- "fontFamily": "sans-serif",
800
- "arcStartCap": "butt",
801
- "arcEndCap": "butt",
802
- lineDash: [],
803
- lineWidth: 1,
804
- lineCap: "butt",
805
- lineJoin: "miter"
806
- };
821
+ this.__config = defaultFactory$1();
807
822
  this.__path = "";
808
823
  this.__currentPosition = [];
809
824
  this.__svg = svg;
@@ -819,6 +834,10 @@
819
834
  }
820
835
  return this;
821
836
  };
837
+ SVG.prototype.reset = function () {
838
+ this.config(defaultFactory$1());
839
+ return this;
840
+ };
822
841
  SVG.prototype.useEl = function (el) {
823
842
  this.__useEl = el;
824
843
  return this;
@@ -1119,6 +1138,35 @@
1119
1138
  return lineNumber * height;
1120
1139
  }
1121
1140
 
1141
+ function defaultFactory (type) {
1142
+ var special = {
1143
+ "fontSize": 16,
1144
+ "fontFamily": "sans-serif",
1145
+ "fontWeight": 400,
1146
+ "fontStyle": "normal",
1147
+ "arcStartCap": 'butt',
1148
+ "arcEndCap": 'butt'
1149
+ };
1150
+ var init = {
1151
+ "fillStyle": 'black',
1152
+ "strokeStyle": 'black',
1153
+ "lineWidth": 1,
1154
+ "lineCap": "butt",
1155
+ "lineJoin": "miter",
1156
+ "lineDash": [],
1157
+ "textAlign": 'left',
1158
+ "textBaseline": 'middle',
1159
+ "shadowBlur": 0,
1160
+ "shadowColor": "black"
1161
+ };
1162
+ if (type == 'special')
1163
+ return special;
1164
+ else if (type == 'init')
1165
+ return init;
1166
+ else
1167
+ return __assign(__assign({}, special), init);
1168
+ }
1169
+
1122
1170
  var Painter = (function () {
1123
1171
  function Painter(canvas, opts, region, isPainter, scaleSize) {
1124
1172
  if (opts === void 0) { opts = {}; }
@@ -1126,26 +1174,8 @@
1126
1174
  this.__region = null;
1127
1175
  this.__onlyRegion = false;
1128
1176
  this.__onlyView = false;
1129
- this.__specialConfig = {
1130
- "fontSize": 16,
1131
- "fontFamily": "sans-serif",
1132
- "fontWeight": 400,
1133
- "fontStyle": "normal",
1134
- "arcStartCap": 'butt',
1135
- "arcEndCap": 'butt'
1136
- };
1137
- this.__initConfig = {
1138
- "fillStyle": 'black',
1139
- "strokeStyle": 'black',
1140
- "lineWidth": 1,
1141
- "lineCap": "butt",
1142
- "lineJoin": "miter",
1143
- "lineDash": [],
1144
- "textAlign": 'left',
1145
- "textBaseline": 'middle',
1146
- "shadowBlur": 0,
1147
- "shadowColor": "black"
1148
- };
1177
+ this.__specialConfig = defaultFactory("special");
1178
+ this.__initConfig = defaultFactory("init");
1149
1179
  this.painter = canvas.getContext("2d", opts);
1150
1180
  this.__region = region;
1151
1181
  this.__isPainter = isPainter;
@@ -1578,6 +1608,10 @@
1578
1608
  }
1579
1609
  return this;
1580
1610
  };
1611
+ Canvas.prototype.reset = function () {
1612
+ this.config(defaultFactory());
1613
+ return this;
1614
+ };
1581
1615
  Canvas.prototype.onlyRegion = function (flag) {
1582
1616
  this.__onlyRegion = flag;
1583
1617
  return this;
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * VISLite JavaScript Library v1.2.0-alpha.7
2
+ * VISLite JavaScript Library v1.2.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
- var t,i;t=this,i=function(){"use strict";var t=function(){function t(t){void 0===t&&(t=.5),this.name="Hermite",this.__u=t}return t.prototype.setP=function(t,i,e,n,r,o){if(!(t<e))throw new Error("The point x-position should be increamented!");this.__a=t,this.__b=e;var s=this.__u*r,_=this.__u*o;return i/=e-t,n/=e-t,this.__MR=[2*i-2*n+s+_,3*n-3*i-2*s-_,s,i],this},t.prototype.use=function(t){if(this.__MR){var i=(t-this.__a)/(this.__b-this.__a),e=i*i;return(i*e*this.__MR[0]+e*this.__MR[1]+i*this.__MR[2]+this.__MR[3])*(this.__b-this.__a)}throw new Error("You shoud first set the position!")},t}(),i=function(){function i(t){void 0===t&&(t=0),this.name="Cardinal",this.__t=t}return i.prototype.setP=function(i){this.__HS={x:[],h:[]};var e,n,r=(i[1][1]-i[0][1])/(i[1][0]-i[0][0]);for(this.__HS.x[0]=i[0][0],e=1;e<i.length;e++){if(i[e][0]<=i[e-1][0])throw new Error("The point position should be increamented!");this.__HS.x[e]=i[e][0],n=e<i.length-1?i[e+1][1]>i[e][1]&&i[e-1][1]>i[e][1]||i[e+1][1]<i[e][1]&&i[e-1][1]<i[e][1]||i[e+1][1]==i[e][1]||i[e-1][1]==i[e][1]?0:(i[e+1][1]-i[e-1][1])/(i[e+1][0]-i[e-1][0]):(i[e][1]-i[e-1][1])/(i[e][0]-i[e-1][0]),this.__HS.h[e-1]=new t(.5*(1-this.__t)).setP(i[e-1][0],i[e-1][1],i[e][0],i[e][1],r,n),r=n}return this},i.prototype.use=function(t){if(this.__HS){for(this.__i=-1;this.__i+1<this.__HS.x.length&&(t>this.__HS.x[this.__i+1]||-1==this.__i&&t>=this.__HS.x[this.__i+1]);)this.__i+=1;return this.__i<0?this.__HS.h[0].use(this.__HS.x[0]):this.__i>=this.__HS.h.length?this.__HS.h[this.__HS.h.length-1].use(this.__HS.x[this.__HS.x.length-1]):this.__HS.h[this.__i].use(t)}throw new Error("You shoud first set the position!")},i}(),e=function(t,i){for(var e=[],n=0;n<4;n++)for(var r=0;r<i.length/4;r++)e[4*r+n]=t[n]*i[4*r]+t[n+4]*i[4*r+1]+t[n+8]*i[4*r+2]+t[n+12]*i[4*r+3];return e},n=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],r=function(){function t(t){void 0===t&&(t=n),this.name="Matrix4",this.__matrix4=t}return t.prototype.setValue=function(t){return void 0===t&&(t=n),this.__matrix4=t,this},t.prototype.move=function(t,i,n,r){return void 0===r&&(r=0),this.__matrix4=e(function(t,i,e,n){void 0===n&&(n=0);var r=Math.sqrt(i*i+e*e+n*n);return[1,0,0,0,0,1,0,0,0,0,1,0,i*t/r,e*t/r,n*t/r,1]}(t,i,n,r),this.__matrix4),this},t.prototype.rotate=function(t,i,n,r,o,s,_){var h=function(t,i,e,n,r,o){if("number"==typeof t&&"number"==typeof i){if("number"!=typeof e?(e=0,n=t,r=i,o=1):"number"==typeof n&&"number"==typeof r&&"number"==typeof o||(n=t,r=i,o=e,t=0,i=0,e=0),t==n&&i==r&&e==o)throw new Error("It's not a legitimate ray!");var s=Math.sqrt((n-t)*(n-t)+(r-i)*(r-i)),_=0!=s?(r-i)/s:1,h=0!=s?(n-t)/s:0,a=(n-t)*h+(r-i)*_,u=o-e,l=Math.sqrt(a*a+u*u),p=0!=l?u/l:1,f=0!=l?a/l:0;return[[_,p*h,h*f,0,-h,_*p,_*f,0,0,-f,p,0,i*h-t*_,e*f-t*h*p-i*_*p,-t*h*f-i*_*f-e*p,1],[_,-h,0,0,p*h,p*_,-f,0,h*f,_*f,p,0,t,i,e,1]]}throw new Error("a1 and b1 is required!")}(i,n,r,o,s,_);return this.__matrix4=e(e(e(h[1],function(t){var i=Math.sin(t),e=Math.cos(t);return[e,i,0,0,-i,e,0,0,0,0,1,0,0,0,0,1]}(t)),h[0]),this.__matrix4),this},t.prototype.scale=function(t,i,n,r,o,s){return void 0===r&&(r=0),void 0===o&&(o=0),void 0===s&&(s=0),this.__matrix4=e(function(t,i,e,n,r,o){return void 0===n&&(n=0),void 0===r&&(r=0),void 0===o&&(o=0),[t,0,0,0,0,i,0,0,0,0,e,0,n-n*t,r-r*i,o-o*e,1]}(t,i,n,r,o,s),this.__matrix4),this},t.prototype.multiply=function(t,i){return void 0===i&&(i=!1),this.__matrix4=i?e(this.__matrix4,t):e(t,this.__matrix4),this},t.prototype.use=function(t,i,n,r){return void 0===n&&(n=0),void 0===r&&(r=1),e(this.__matrix4,[t,i,n,r])},t.prototype.value=function(){return this.__matrix4},t}();function o(t,i,e,n,r){var o=Math.cos(e),s=Math.sin(e);return[(n-t)*o-(r-i)*s+t,(n-t)*s+(r-i)*o+i]}var s,_=[];function h(t,i,e){arguments.length<2&&(i=400),arguments.length<3&&(e=function(){});var n={timer:function(t,i,e){if(!t)throw new Error("Tick is required!");var r=(new Date).valueOf()+"_"+(1e3*Math.random()).toFixed(0);return _.push({id:r,createTime:new Date,tick:t,duration:i,callback:e}),n.start(),r},start:function(){s||(s=setInterval(n.tick,13))},tick:function(){var t,i,e,r,o,s,h,a=_;for((_=[]).length=0,i=0;i<a.length;i++)t=(o=a[i]).createTime,e=o.tick,s=o.duration,r=o.callback,e(h=(h=(+(new Date).valueOf()-t.valueOf())/s)>1?1:h),h<1&&o.id?_.push(o):r(h);_.length<=0&&n.stop()},stop:function(){s&&(clearInterval(s),s=null)}},r=n.timer((function(i){t(i)}),i,e);return function(){var t;for(t in _)if(_[t].id==r)return void(_[t].id=void 0)}}var a=function(t,i){return a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,i){t.__proto__=i}||function(t,i){for(var e in i)Object.prototype.hasOwnProperty.call(i,e)&&(t[e]=i[e])},a(t,i)};function u(t,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function e(){this.constructor=t}a(t,i),t.prototype=null===i?Object.create(i):(e.prototype=i.prototype,new e)}"function"==typeof SuppressedError&&SuppressedError;var l=["href","title","show","type","role","actuate"];function p(t){return document.createElementNS("http://www.w3.org/2000/svg",t)}var f=function(t,i,e){l.indexOf(i)>-1?t.setAttributeNS("http://www.w3.org/1999/xlink","xlink:"+i,e+""):t.setAttribute(i,e+"")},c=f;function d(t,i){f(t,"stroke",i.strokeStyle),f(t,"fill",i.fillStyle)}function g(t,i){f(t,"fill",i.fillStyle)}function v(t,i){f(t,"stroke",i.strokeStyle),f(t,"fill","none")}var y=function(t,i,e,n,r){var o=Math.cos(e),s=Math.sin(e);return[+((n-t)*o-(r-i)*s+t).toFixed(7),+((n-t)*s+(r-i)*o+i).toFixed(7)]};function E(t,i,e,n,r,o,s){i<0&&(t+=i,i*=-1);var _,h=[];_=y(0,0,t,r,0),h[0]=_[0],h[1]=_[1],_=y(0,0,i,_[0],_[1]),h[2]=_[0],h[3]=_[1],_=y(0,0,t,o,0),h[4]=_[0],h[5]=_[1],_=y(0,0,i,_[0],_[1]),h[6]=_[0],h[7]=_[1],s(t,t+i,h[0]+e,h[1]+n,h[4]+e,h[5]+n,h[2]+e,h[3]+n,h[6]+e,h[7]+n,.5*(o-r))}var w=function(t){var i=t.getElementsByTagName("defs");if(i.length<=0){var e=p("defs");return t.appendChild(e),e}return i[0]},m=function(t,i,e,n,r){if("text"!==t.nodeName.toLowerCase())throw new Error("Need a <text> !");c(t,"dy",{top:.5*i.fontSize,middle:0,bottom:.5*-i.fontSize}[i.textBaseline]),function(t,i){for(var e in i)t.style[e]=i[e]}(t,{"text-anchor":{left:"start",right:"end",center:"middle"}[i.textAlign],"dominant-baseline":"central","font-size":i.fontSize+"px","font-family":i.fontFamily}),c(t,"x",e),c(t,"y",n),"number"==typeof r&&c(t,"transform","rotate("+(r%=360)+","+e+","+n+")")},T=function(t,i,e,n){if("circle"!==t.nodeName.toLowerCase())throw new Error("Need a <circle> !");c(t,"cx",i),c(t,"cy",e),c(t,"r",n)},x=function(t,i,e){if("path"!==t.nodeName.toLowerCase())throw new Error("Need a <path> !");c(t,"d",i),c(t,"stroke-dasharray",e.lineDash.join(",")),c(t,"stroke-width",e.lineWidth+""),c(t,"stroke-linecap",e.lineCap+""),c(t,"stroke-linejoin",e.lineJoin+"")},b=function(t,i,e,n,r){if("rect"!==t.nodeName.toLowerCase())throw new Error("Need a <rect> !");r<0&&(e-=r*=-1),n<0&&(i-=n*=-1),c(t,"x",i),c(t,"y",e),c(t,"width",n),c(t,"height",r)},P=function(t,i,e,n,r,o,s,_){if("path"!==t.nodeName.toLowerCase())throw new Error("Need a <path> !");if(s=s/180*Math.PI,_=_/180*Math.PI,s%=2*Math.PI,r>o){var h=r;r=o,o=h}_>=1.999999*Math.PI||_<=1.999999*-Math.PI?_=1.999999*Math.PI:_%=2*Math.PI,E(s,_,e,n,r,o,(function(e,n,s,_,h,a,u,l,p,f,d){var g=n-e>Math.PI?1:0,v="M"+s+" "+_;d<0&&(d=-d),v+="A"+r+" "+r+" 0 "+g+" 1 "+u+" "+l,"round"==i.arcEndCap?v+="A"+d+" "+d+" 0 1 0 "+p+" "+f:"-round"==i.arcEndCap?v+="A"+d+" "+d+" 0 1 1 "+p+" "+f:v+="L"+p+" "+f,v+="A"+o+" "+o+" 0 "+g+" 0 "+h+" "+a,"round"==i.arcStartCap?v+="A"+d+" "+d+" 0 1 0 "+s+" "+_:"-round"==i.arcStartCap?v+="A"+d+" "+d+" 0 1 1 "+s+" "+_:v+="L"+s+" "+_,"butt"==i.arcStartCap&&(v+="Z"),c(t,"d",v)}))},C=function(t,i){var e={value:function(){return"url(#"+i+")"},setColor:function(i,n){var r=p("stop");return t.appendChild(r),c(r,"offset",100*i+"%"),c(r,"style","stop-color:"+n+";"),e}};return e},R=function(){function t(t){this.name="SVG",this.__config={fillStyle:"#000",strokeStyle:"#000",textAlign:"left",textBaseline:"middle",fontSize:16,fontFamily:"sans-serif",arcStartCap:"butt",arcEndCap:"butt",lineDash:[],lineWidth:1,lineCap:"butt",lineJoin:"miter"},this.__path="",this.__currentPosition=[],this.__svg=t}return t.prototype.config=function(t){if("object"!=typeof t)return this.__config[t];for(var i in t)this.__config[i]=t[i];return this},t.prototype.useEl=function(t){return this.__useEl=t,this},t.prototype.getEl=function(){return this.__useEl},t.prototype.appendEl=function(t,i){return i=i||this.__svg,"string"==typeof t&&(t=p(t)),i.appendChild(t),this.__useEl=t,this},t.prototype.appendBoard=function(t,i){var e=t;if("string"==typeof t&&(e={text:"text",path:"path",arc:"path",circle:"circle",rect:"rect"}[t]||""),""==e)throw new Error("Unsupported drawing method:"+t);return this.appendEl(e,i)},t.prototype.remove=function(){if(!this.__useEl)throw new Error("Currently, no node can be deleted.");return this.__useEl.parentNode.removeChild(this.__useEl),this},t.prototype.attr=function(t){if(!this.__useEl)throw new Error("Currently, no node can be modified or viewed.");if("object"!=typeof t)return function(t,i){return l.indexOf(i)>-1&&(i="xlink:"+i),t.getAttribute(i)}(this.__useEl,t);for(var i in t)c(this.__useEl,i,t[i]);return this},t.prototype.fillText=function(t,i,e,n){return void 0===n&&(n=0),m(this.__useEl,this.__config,i,e,n),this.__useEl.textContent=t,g(this.__useEl,this.__config),this},t.prototype.strokeText=function(t,i,e,n){return void 0===n&&(n=0),m(this.__useEl,this.__config,i,e,n),this.__useEl.textContent=t,v(this.__useEl,this.__config),this},t.prototype.fullText=function(t,i,e,n){return void 0===n&&(n=0),m(this.__useEl,this.__config,i,e,n),this.__useEl.textContent=t,d(this.__useEl,this.__config),this},t.prototype.fillArc=function(t,i,e,n,r,o){return P(this.__useEl,this.__config,t,i,e,n,r,o),g(this.__useEl,this.__config),this},t.prototype.strokeArc=function(t,i,e,n,r,o){return P(this.__useEl,this.__config,t,i,e,n,r,o),v(this.__useEl,this.__config),this},t.prototype.fullArc=function(t,i,e,n,r,o){return P(this.__useEl,this.__config,t,i,e,n,r,o),d(this.__useEl,this.__config),this},t.prototype.fillCircle=function(t,i,e){return T(this.__useEl,t,i,e),g(this.__useEl,this.__config),this},t.prototype.strokeCircle=function(t,i,e){return T(this.__useEl,t,i,e),v(this.__useEl,this.__config),this},t.prototype.fullCircle=function(t,i,e){return T(this.__useEl,t,i,e),d(this.__useEl,this.__config),this},t.prototype.fillRect=function(t,i,e,n){return b(this.__useEl,t,i,e,n),g(this.__useEl,this.__config),this},t.prototype.strokeRect=function(t,i,e,n){return b(this.__useEl,t,i,e,n),v(this.__useEl,this.__config),this},t.prototype.fullRect=function(t,i,e,n){return b(this.__useEl,t,i,e,n),d(this.__useEl,this.__config),this},t.prototype.beginPath=function(){return this.__currentPosition=[],this.__path="",this},t.prototype.closePath=function(){return this.__path+="Z",this},t.prototype.moveTo=function(t,i){return this.__currentPosition=[t,i],this.__path+="M"+t+" "+i,this},t.prototype.lineTo=function(t,i){return this.__currentPosition=[t,i],this.__path+=(""==this.__path?"M":"L")+t+" "+i,this},t.prototype.fill=function(){return x(this.__useEl,this.__path,this.__config),g(this.__useEl,this.__config),this},t.prototype.stroke=function(){return x(this.__useEl,this.__path,this.__config),v(this.__useEl,this.__config),this},t.prototype.full=function(){return x(this.__useEl,this.__path,this.__config),d(this.__useEl,this.__config),this},t.prototype.arc=function(t,i,e,n,r){var s=o(t,i,n/180*Math.PI,t+e,i),_=o(t,i,(n+r)/180*Math.PI,t+e,i);return""==this.__path?this.__path+="M"+s[0]+","+s[1]:s[0]==this.__currentPosition[0]&&s[1]==this.__currentPosition[1]||(this.__path+="L"+s[0]+","+s[1]),this.__path+="A"+e+","+e+" 0 "+(r>180||r<-180?1:0)+","+(r>0?1:0)+" "+_[0]+","+_[1],this},t.prototype.quadraticCurveTo=function(t,i,e,n){return this.__path+="Q"+t+" "+i+","+e+" "+n,this},t.prototype.bezierCurveTo=function(t,i,e,n,r,o){return this.__path+="C"+t+" "+i+","+e+" "+n+","+r+" "+o,this},t.prototype.bind=function(t,i){return this.__useEl.addEventListener(t,(function(t){i.call(this,t,this)}),!1),this},t.prototype.createLinearGradient=function(t,i,e,n){return function(t,i,e,n,r){var o=w(t),s="vislite-lg-"+(new Date).valueOf()+"-"+Math.random(),_=p("linearGradient");return o.appendChild(_),c(_,"id",s),c(_,"x1",i+"%"),c(_,"y1",e+"%"),c(_,"x2",n+"%"),c(_,"y2",r+"%"),C(_,s)}(this.__svg,t,i,e,n)},t.prototype.createRadialGradient=function(t,i,e){return function(t,i,e,n){var r=w(t),o="vislite-rg-"+(new Date).valueOf()+"-"+Math.random(),s=p("radialGradient");return r.appendChild(s),c(s,"id",o),c(s,"cx",i+"%"),c(s,"cy",e+"%"),c(s,"r",n+"%"),C(s,o)}(this.__svg,t,i,e)},t}(),S=function(t){function i(i){if(!i)throw new Error("VISLite SVG:The mount point requires an HTMLElement type but encountered null.");var e=i.clientWidth,n=i.clientHeight,r=document.createElementNS("http://www.w3.org/2000/svg","svg");return i.appendChild(r),r.setAttribute("width",e+""),r.setAttribute("height",n+""),r.setAttribute("viewBox","0 0 "+e+" "+n),t.call(this,r)||this}return u(i,t),i}(R),M=function(t,i,e,n,r){return t.beginPath(),t.translate(e,n),t.rotate(r),t.font=i.fontStyle+" "+i.fontWeight+" "+i.fontSize+"px "+i.fontFamily,t},A=function(t,i,e,n,r,o,s,_){if(r>o){var h=r;r=o,o=h}return s%=2*Math.PI,_>=1.999999*Math.PI||_<=1.999999*-Math.PI?_=2*Math.PI:_%=2*Math.PI,E(s,_,e,n,r,o,(function(s,_,h,a,u,l,p,f,c,d,g){g<0&&(g=-g),t.beginPath(),t.moveTo(h,a),t.arc(e,n,r,s,_,!1),"round"==i.arcEndCap?t.arc(.5*(p+c),.5*(f+d),g,_-Math.PI,_,!0):"-round"==i.arcEndCap?t.arc(.5*(p+c),.5*(f+d),g,_-Math.PI,_,!1):t.lineTo(c,d),t.arc(e,n,o,_,s,!0),"round"==i.arcStartCap?t.arc(.5*(h+u),.5*(a+l),g,s,s-Math.PI,!0):"-round"==i.arcStartCap?t.arc(.5*(h+u),.5*(a+l),g,s,s-Math.PI,!1):t.lineTo(h,a)})),"butt"==i.arcStartCap&&t.closePath(),t},I=function(t,i,e,n){return t.beginPath(),t.moveTo(i+n,e),t.arc(i,e,n,0,2*Math.PI),t},k=function(t,i,e,n,r){return t.beginPath(),t.rect(i,e,n,r),t};function L(t,i,e,n,r){for(var o=0,s="",_=0;_<i.length;_++)t.measureText(s+i[_]).width>e||/\n$/.test(s)?(r(s,((o+=1)-.5)*n),s=i[_]):_==i.length-1?(o+=1,r(s+i[_],(o-.5)*n)):s+=i[_];return o*n}var V=function(){function t(t,i,e,n,r){void 0===i&&(i={}),void 0===n&&(n=!1),this.__region=null,this.__onlyRegion=!1,this.__onlyView=!1,this.__specialConfig={fontSize:16,fontFamily:"sans-serif",fontWeight:400,fontStyle:"normal",arcStartCap:"butt",arcEndCap:"butt"},this.__initConfig={fillStyle:"black",strokeStyle:"black",lineWidth:1,lineCap:"butt",lineJoin:"miter",lineDash:[],textAlign:"left",textBaseline:"middle",shadowBlur:0,shadowColor:"black"},this.painter=t.getContext("2d",i),this.__region=e,this.__isPainter=n,this.painter.textBaseline="middle",this.painter.textAlign="left"}return t.prototype.useConfig=function(t,i){if(this.__region&&!this.__onlyView&&["fillStyle","strokeStyle","shadowBlur","shadowColor"].indexOf(t)<0&&this.__region.useConfig(t,i),this.__isPainter&&this.__onlyRegion)return this;if("lineDash"==t)this.painter.setLineDash&&this.painter.setLineDash(i);else if(t in this.__specialConfig)"fontSize"==t&&(i=Math.round(i)),this.__specialConfig[t]=i;else{if(!(t in this.__initConfig))throw new Error("Illegal configuration item of painter : "+t+" !");this.painter[t]=i}return this},t.prototype.fillText=function(t,i,e,n){return void 0===n&&(n=0),this.__region&&!this.__onlyView&&this.__region.fillText(t,i,e,n),this.__isPainter&&this.__onlyRegion||(this.painter.save(),M(this.painter,this.__specialConfig,i,e,n).fillText(t,0,0),this.painter.restore()),this},t.prototype.strokeText=function(t,i,e,n){return void 0===n&&(n=0),this.__region&&!this.__onlyView&&this.__region.strokeText(t,i,e,n),this.__isPainter&&this.__onlyRegion||(this.painter.save(),M(this.painter,this.__specialConfig,i,e,n).strokeText(t,0,0),this.painter.restore()),this},t.prototype.fullText=function(t,i,e,n){return void 0===n&&(n=0),this.__region&&!this.__onlyView&&this.__region.fullText(t,i,e,n),this.__isPainter&&this.__onlyRegion||(this.painter.save(),M(this.painter,this.__specialConfig,i,e,n),this.painter.fillText(t,0,0),this.painter.strokeText(t,0,0),this.painter.restore()),this},t.prototype.fillTexts=function(t,i,e,n,r,o){var s=this;void 0===r&&(r=1.2),void 0===o&&(o=0);var _=0;if(this.__region&&!this.__onlyView&&(_=this.__region.fillTexts(t,i,e,n,r)),this.__isPainter&&this.__onlyRegion)return _;this.painter.save(),M(this.painter,this.__specialConfig,i,e,o);var h=L(this.painter,t,n,this.__specialConfig.fontSize*r,(function(t,i){s.painter.fillText(t,0,i)}));return this.painter.restore(),h},t.prototype.strokeTexts=function(t,i,e,n,r,o){var s=this;void 0===r&&(r=1.2),void 0===o&&(o=0);var _=0;if(this.__region&&!this.__onlyView&&(_=this.__region.fillTexts(t,i,e,n,r)),this.__isPainter&&this.__onlyRegion)return _;this.painter.save(),M(this.painter,this.__specialConfig,i,e,o);var h=L(this.painter,t,n,this.__specialConfig.fontSize*r,(function(t,i){s.painter.strokeText(t,0,i)}));return this.painter.restore(),h},t.prototype.fullTexts=function(t,i,e,n,r,o){var s=this;void 0===r&&(r=1.2),void 0===o&&(o=0);var _=0;if(this.__region&&!this.__onlyView&&(_=this.__region.fillTexts(t,i,e,n,r)),this.__isPainter&&this.__onlyRegion)return _;this.painter.save(),M(this.painter,this.__specialConfig,i,e,o);var h=L(this.painter,t,n,this.__specialConfig.fontSize*r,(function(t,i){s.painter.fillText(t,0,i),s.painter.strokeText(t,0,i)}));return this.painter.restore(),h},t.prototype.beginPath=function(){return this.__region&&!this.__onlyView&&this.__region.beginPath(),this.__isPainter&&this.__onlyRegion||this.painter.beginPath(),this},t.prototype.closePath=function(){return this.__region&&!this.__onlyView&&this.__region.closePath(),this.__isPainter&&this.__onlyRegion||this.painter.closePath(),this},t.prototype.moveTo=function(t,i){return this.__region&&!this.__onlyView&&this.__region.moveTo(t,i),this.__isPainter&&this.__onlyRegion||this.painter.moveTo(Math.round(t)+.5,Math.round(i)+.5),this},t.prototype.lineTo=function(t,i){return this.__region&&!this.__onlyView&&this.__region.lineTo(t,i),this.__isPainter&&this.__onlyRegion||this.painter.lineTo(Math.round(t)+.5,Math.round(i)+.5),this},t.prototype.arc=function(t,i,e,n,r){return this.__region&&!this.__onlyView&&this.__region.arc(t,i,e,n,r),this.__isPainter&&this.__onlyRegion||this.painter.arc(t,i,e,n,n+r,r<0),this},t.prototype.fill=function(){return this.__region&&!this.__onlyView&&this.__region.fill(),this.__isPainter&&this.__onlyRegion||this.painter.fill(),this},t.prototype.stroke=function(){return this.__region&&!this.__onlyView&&this.__region.stroke(),this.__isPainter&&this.__onlyRegion||this.painter.stroke(),this},t.prototype.full=function(){return this.__region&&!this.__onlyView&&this.__region.full(),this.__isPainter&&this.__onlyRegion||(this.painter.fill(),this.painter.stroke()),this},t.prototype.save=function(){return this.__region&&!this.__onlyView&&this.__region.save(),this.__isPainter&&this.__onlyRegion||this.painter.save(),this},t.prototype.restore=function(){return this.__region&&!this.__onlyView&&this.__region.restore(),this.__isPainter&&this.__onlyRegion||this.painter.restore(),this},t.prototype.clip=function(){return this.__region&&!this.__onlyView&&this.__region.clip(),this.__isPainter&&this.__onlyRegion||this.painter.clip(),this},t.prototype.quadraticCurveTo=function(t,i,e,n){return this.__region&&!this.__onlyView&&this.__region.quadraticCurveTo(t,i,e,n),this.__isPainter&&this.__onlyRegion||this.painter.quadraticCurveTo(t,i,e,n),this},t.prototype.bezierCurveTo=function(t,i,e,n,r,o){return this.__region&&!this.__onlyView&&this.__region.bezierCurveTo(t,i,e,n,r,o),this.__isPainter&&this.__onlyRegion||this.painter.bezierCurveTo(t,i,e,n,r,o),this},t.prototype.clearRect=function(t,i,e,n){return this.__region&&!this.__onlyView&&this.__region.clearRect(t,i,e,n),this.__isPainter&&this.__onlyRegion||this.painter.clearRect(t,i,e,n),this},t.prototype.fillArc=function(t,i,e,n,r,o){return this.__region&&!this.__onlyView&&this.__region.fillArc(t,i,e,n,r,o),this.__isPainter&&this.__onlyRegion||A(this.painter,this.__specialConfig,t,i,e,n,r,o).fill(),this},t.prototype.strokeArc=function(t,i,e,n,r,o){return this.__region&&!this.__onlyView&&this.__region.strokeArc(t,i,e,n,r,o),this.__isPainter&&this.__onlyRegion||A(this.painter,this.__specialConfig,t,i,e,n,r,o).stroke(),this},t.prototype.fullArc=function(t,i,e,n,r,o){return this.__region&&!this.__onlyView&&this.__region.fullArc(t,i,e,n,r,o),this.__isPainter&&this.__onlyRegion||(A(this.painter,this.__specialConfig,t,i,e,n,r,o),this.painter.fill(),this.painter.stroke()),this},t.prototype.fillCircle=function(t,i,e){return this.__region&&!this.__onlyView&&this.__region.fillCircle(t,i,e),this.__isPainter&&this.__onlyRegion||I(this.painter,t,i,e).fill(),this},t.prototype.strokeCircle=function(t,i,e){return this.__region&&!this.__onlyView&&this.__region.strokeCircle(t,i,e),this.__isPainter&&this.__onlyRegion||I(this.painter,t,i,e).stroke(),this},t.prototype.fullCircle=function(t,i,e){return this.__region&&!this.__onlyView&&this.__region.fullCircle(t,i,e),this.__isPainter&&this.__onlyRegion||(I(this.painter,t,i,e),this.painter.fill(),this.painter.stroke()),this},t.prototype.fillRect=function(t,i,e,n){return this.__region&&!this.__onlyView&&this.__region.fillRect(t,i,e,n),this.__isPainter&&this.__onlyRegion||k(this.painter,t,i,e,n).fill(),this},t.prototype.strokeRect=function(t,i,e,n){return this.__region&&!this.__onlyView&&this.__region.strokeRect(t,i,e,n),this.__isPainter&&this.__onlyRegion||k(this.painter,t,i,e,n).stroke(),this},t.prototype.fullRect=function(t,i,e,n){return this.__region&&!this.__onlyView&&this.__region.fullRect(t,i,e,n),this.__isPainter&&this.__onlyRegion||(k(this.painter,t,i,e,n),this.painter.fill(),this.painter.stroke()),this},t.prototype.draw=function(){return Promise.resolve()},t.prototype.drawImage=function(t,i,e,n,r,o){var s=this;return void 0===o&&(o=!1),new Promise((function(_){if(s.__region&&!s.__onlyView&&s.__region.fillRect(i,e,n,r),s.__isPainter&&s.__onlyRegion)_({});else if("string"!=typeof t||o)s.painter.drawImage(t,i,e,n,r),_({});else{var h=new Image;h.onload=function(){s.painter.drawImage(h,i,e,n,r),_({})},h.src=t}}))},t.prototype.install=function(t){var i=this,e=function(e){if(e in n)throw new Error("VISLite Canvas:Method already exists and cannot be overwritten.");n[e]=function(){for(var n=[],r=0;r<arguments.length;r++)n[r]=arguments[r];var o=t[e].apply(i,n);return null!=o?o:i}},n=this;for(var r in t)e(r);return this},t}();function O(t,i,e,n){for(var r=[],o=0;o<n;o++)r[o]=t;return function(){for(var o=0;o<n;o++){if(r[o]+e<i){r[o]=+(r[o]+e).toFixed(7);break}o<n-1&&(r[o]=t)}return r}}var U=function(t,i){var e={value:function(){return t},setColor:function(n,r){return t.addColorStop(i?i(n):n,r),e}};return e},N=function(t){function i(i,e,n,r){void 0===n&&(n={}),void 0===r&&(r=1);var o=t.call(this,i,n,e?new V(e,{willReadFrequently:!0}):void 0,!0,r)||this;return o.name="Canvas",o.__regionList={},o.__regionAssemble=O(0,255,10,3),o.__scaleSize=r,o.setRegion(""),o}return u(i,t),i.prototype.config=function(t){for(var i in t)this.useConfig(i,t[i]);return this},i.prototype.onlyRegion=function(t){return this.__onlyRegion=t,this},i.prototype.onlyView=function(t){return this.__onlyView=t,this},i.prototype.setRegion=function(t){if(this.__region)if(t){if(null==this.__regionList[t]){var i=this.__regionAssemble();this.__regionList[t]="rgb("+i[0]+","+i[1]+","+i[2]+")"}this.__region.useConfig("fillStyle",this.__regionList[t])&&this.__region.useConfig("strokeStyle",this.__regionList[t])}else this.__region.useConfig("fillStyle","#000000")&&this.__region.useConfig("strokeStyle","#000000");return this},i.prototype.getRegion=function(t,i){var e=this;return new Promise((function(n){var r=e.__region?e.__region.painter.getImageData(t-.5,i-.5,1,1):{data:[0,0,0,0]},o=r.data,s=function(){if(e.__region)for(var t in e.__regionList)if("rgb("+o[0]+","+o[1]+","+o[2]+")"==e.__regionList[t]){n(t);break}n("")};o?s():r.then((function(t){o=t,s()}))}))},i.prototype.textWidth=function(t){this.painter.save(),M(this.painter,this.__specialConfig,0,0,0);var i=this.painter.measureText(t+"").width;return this.painter.restore(),i},i.prototype.getContext=function(t){return void 0===t&&(t=!1),t?this.__region?this.__region.painter:null:this.painter},i.prototype.getInfo=function(){return{width:this.painter.canvas.width/this.__scaleSize,height:this.painter.canvas.height/this.__scaleSize}},i.prototype.createLinearGradient=function(t,i,e,n){return function(t,i,e,n,r){var o=t.createLinearGradient(i,e,n,r);return U(o)}(this.painter,t,i,e,n)},i.prototype.createRadialGradient=function(t,i,e){return function(t,i,e,n){var r=t.createRadialGradient(i,e,0,i,e,n);return U(r)}(this.painter,t,i,e)},i.prototype.createConicGradient=function(t,i,e,n){return function(t,i,e,n,r){var o=t.createConicGradient(n,i,e);return U(o,r?function(t){return r/(2*Math.PI)*t}:void 0)}(this.painter,t,i,e,n)},i.prototype.getColor=function(t,i){t*=this.__scaleSize,i*=this.__scaleSize;var e=this.painter.getImageData(t-.5,i-.5,1,1).data;return"rgba("+e[0]+","+e[1]+","+e[2]+","+e[3]+")"},i}(V),B=Object.prototype.toString;function F(t){if(null===t||"object"!=typeof t||"[object Object]"!=function(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":B.call(t)}(t))return!1;if(null===Object.getPrototypeOf(t))return!0;for(var i=t;null!==Object.getPrototypeOf(i);)i=Object.getPrototypeOf(i);return Object.getPrototypeOf(t)===i}function z(t,i){for(var e in t)i[e]=t[e];return i}var D=function(t){function i(i,e,n,r){void 0===e&&(e={}),void 0===n&&(n=0),void 0===r&&(r=0);var o=this;if(!i)throw new Error("VISLite Canvas:The mount point requires an HTMLElement type but encountered null.");e=z(e,{region:!0,willReadFrequently:!1}),n=n||i.clientWidth,r=r||i.clientHeight;var s,_=null,h=i;h._vislite_canvas_?(s=h._vislite_canvas_[0],_=h._vislite_canvas_[1]):(s=document.createElement("canvas"),i.appendChild(s),e.region&&(_=document.createElement("canvas")),h._vislite_canvas_=[s,_],i.setAttribute("vislite","Canvas"));for(var a=[_,s],u=0;u<a.length;u++){var l=a[u];l&&(l.style.width=n+"px",l.setAttribute("width",u*n+n+""),l.style.height=r+"px",l.setAttribute("height",u*r+r+""))}return(o=t.call(this,s,_,{willReadFrequently:e.willReadFrequently},2)||this).__canvas=s,o.__el=i,o.painter.scale(2,2),o}return u(i,t),i.prototype.toDataURL=function(){var t=this;return new Promise((function(i){i(t.__canvas.toDataURL())}))},i.prototype.bind=function(t,i){var e=this;return this.__el.addEventListener(t,(function(t){e.getRegion(t.offsetX,t.offsetY).then((function(e){i(e,t.offsetX,t.offsetY)}))})),this},i}(N),G=function(t,i,e){var n=t.createShader(i);if(null==n)throw new Error("Unable to create shader!");if(t.shaderSource(n,e),t.compileShader(n),!t.getShaderParameter(n,t.COMPILE_STATUS))throw new Error("Failed to compile shader:"+t.getShaderInfoLog(n));return n},H=function(){function t(t){this.__painter=t}return t.prototype.use=function(){return this.__painter.useProgram(this.program),this},t.prototype.compile=function(t,i){return this.program=function(t,i,e){var n=G(t,t.VERTEX_SHADER,i),r=G(t,t.FRAGMENT_SHADER,e),o=t.createProgram();if(t.attachShader(o,n),t.attachShader(o,r),t.linkProgram(o),!t.getProgramParameter(o,t.LINK_STATUS))throw new Error("Failed to link program: "+t.getProgramInfoLog(o));return o}(this.__painter,t,i),this},t}(),X=function(){function t(t,i,e){void 0===e&&(e=0),this.__painter=t,this.__type={"2d":t.TEXTURE_2D,cube:t.TEXTURE_CUBE_MAP}[i],this.__texture=function(t,i,e){var n=t.createTexture();return t.activeTexture(t["TEXTURE"+e]),t.bindTexture(i,n),n}(t,this.__type,e),t.texParameteri(this.__type,t.TEXTURE_MIN_FILTER,t.NEAREST),t.texParameteri(this.__type,t.TEXTURE_MAG_FILTER,t.NEAREST),t.texParameteri(this.__type,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(this.__type,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE)}return t.prototype.useImage=function(t){return function(t,i,e,n,r,o){t.texImage2D(i,e,n,n,r,o)}(this.__painter,this.__type,0,this.__painter.RGBA,this.__painter.UNSIGNED_BYTE,t),this},t.prototype.useCube=function(t,i,e){return function(t,i,e,n,r,o,s,_,h){for(var a,u=[t.TEXTURE_CUBE_MAP_POSITIVE_X,t.TEXTURE_CUBE_MAP_NEGATIVE_X,t.TEXTURE_CUBE_MAP_POSITIVE_Y,t.TEXTURE_CUBE_MAP_NEGATIVE_Y,t.TEXTURE_CUBE_MAP_POSITIVE_Z,t.TEXTURE_CUBE_MAP_NEGATIVE_Z],l=0;l<u.length;l++)o[l]&&(a=u[l],t.texImage2D(a,e,n,s,_,0,n,r,null),t.bindTexture(i,h),t.texImage2D(a,e,n,n,r,o[l]));t.generateMipmap(i)}(this.__painter,this.__type,0,this.__painter.RGBA,this.__painter.UNSIGNED_BYTE,t,i,e,this.__texture),this},t}(),j=function(){function t(t,i){void 0===i&&(i=!1),this.__painter=t,this.__isElement=i,this.__buffer=function(t){return t.createBuffer()}(t),this.__type=i?t.ELEMENT_ARRAY_BUFFER:t.ARRAY_BUFFER}return t.prototype.use=function(){return this.__painter.bindBuffer(this.__type,this.__buffer),this},t.prototype.write=function(t){return function(t,i,e,n){var r=e?t.ELEMENT_ARRAY_BUFFER:t.ARRAY_BUFFER;t.bufferData(r,i,n)}(this.__painter,t,this.__isElement,this.__painter.STATIC_DRAW),this.__fsize=t.BYTES_PER_ELEMENT,this},t.prototype.divide=function(t,i,e,n){return void 0===n&&(n=0),function(t,i,e,n,r,o,s){t.vertexAttribPointer(i,e,n,s,r,o),t.enableVertexAttribArray(i)}(this.__painter,t,i,this.__painter.FLOAT,e*this.__fsize,n*this.__fsize,!1),this},t}(),q=function(t,i,e,n){var r=Math.cos(t),o=Math.sin(t);return[i*r-e*o,i*o+e*r,n]},Y=function(){function t(t,i){void 0===t&&(t=7),void 0===i&&(i=[107,36]),this.name="Eoap",this.__scale=t,this.__center=i}return t.prototype.use=function(t,i){var e,n,r,o,s,_,h=(e=(360-i)/180*Math.PI,n=100*this.__scale,r=0,o=0,s=Math.cos(e),_=Math.sin(e),[o*_+n*s,r,o*s-n*_]);return h=q(t/180*Math.PI,h[0],h[1],h[2]),h=q((90-this.__center[0])/180*Math.PI,h[0],h[1],h[2]),h=function(t,i,e,n){var r=Math.cos(t),o=Math.sin(t);return[i,e*r-n*o,e*o+n*r]}((90-this.__center[1])/180*Math.PI,h[0],h[1],h[2]),[-h[0],h[1],h[2]]},t}(),W=function(t,i){void 0===t&&(t=7),void 0===i&&(i=[107,36]),this.name="Mercator";var e=100*t*Math.PI/180,n=e*i[0],r=-1*e*i[1];this.use=function(t,i){return[.8*(e*t-n),-1*e*i-r,0]}},J=function(){function t(t){void 0===t&&(t={}),this.name="Tree",this.__config=z(t,{root:function(t){return t},children:function(t){return t.children},id:function(t){return t.name}})}return t.prototype.use=function(t,i){return void 0===i&&(i={}),function(t,i,e){var n=function(t,i){var e,n,r={},o=i.root(t);e=n=i.id(o),r[e]={data:o,pid:null,id:e,isOpen:!0,show:!0,children:[]};var s=1;return function n(o,_){var h=i.children(o,t);s+=h?h.length:0;for(var a=0;h&&a<h.length;a++)e=i.id(h[a]),r[_].children.push(e),r[e]={data:h[a],pid:_,id:e,isOpen:!0,show:!0,children:[]},n(h[a],e)}(o,e),{rid:n,value:r,num:s}}(t,i),r=n.value,o=n.rid;if(1==n.num)return r[o].left=.5,r[o].top=.5,r[o].show=!0,{deep:1,node:r,root:o,size:1};var s=[],_=0,h=0;for(var a in e[o]?(r[o].left=.5,r[o].top=.5,r[o].show=!0,_=1):function t(i,n){n>h&&(h=n);var o=0;if(!e[i.id])for(o=0;o<i.children.length;o++)t(r[i.children[o]],n+1);if(r[i.id].left=n+.5,0==o?(null==s[n]&&(s[n]=-.5),null==s[n-1]&&(s[n-1]=-.5),r[i.id].top=s[n]+1,s[n]+1+.5*(r[i.pid].children.length-1)-1<s[n-1]&&(r[i.id].top=s[n-1]+1-.5*(r[i.pid].children.length-1))):r[i.id].top=.5*(r[i.children[0]].top+r[i.children[o-1]].top),r[i.id].top<=s[n])var a=s[n]+1-r[i.id].top((function t(i,e){r[i].top+=a,s[e]<r[i].top&&(s[e]=r[i].top);for(var n=0;n<r[i].children.length;n++)t(r[i].children[n],e+1)}))(i.id,n);s[n]=r[i.id].top,r[i.id].top+.5>_&&(_=r[i.id].top+.5)}(r[o],0),e)e[a]&&(r[a].isOpen=!1,function t(i,e,n){for(var o=0;o<r[i].children.length;o++)r[r[i].children[o]].left=e,r[r[i].children[o]].top=n,r[r[i].children[o]].show=!1,t(r[i].children[o],e,n)}(a,r[a].left,r[a].top));return{node:r,root:o,size:_,deep:h+1}}(t,this.__config,i)},t}(),$=function(t){function i(){var i=null!==t&&t.apply(this,arguments)||this;return i.name="TreeLayout",i.__option={offsetX:0,offsetY:0,duration:500,type:"plain",direction:"LR",x:100,y:100,width:100,height:100,radius:100},i.__noOpens={},i}return u(i,t),i.prototype.setOption=function(t){return z(t,this.__option),this},i.prototype.use=function(i,e){void 0===e&&(e={});var n=t.prototype.use.call(this,i,e);if(0!=this.__option.offsetX||0!=this.__option.offsetY)for(var r in n.node)if(!n.node[r].show){var s=0,_=r;do{_=n.node[_].pid,s++}while(!n.node[_].show);n.node[r].left+=this.__option.offsetX*s,n.node[r].top+=this.__option.offsetY*s}if("rect"==this.__option.type){if("LR"==this.__option.direction||"RL"==this.__option.direction){var h=this.__option.height/n.size,a=this.__option.width/(n.deep-1),u=this.__option.y-.5*this.__option.height,l="LR"==this.__option.direction?1:-1;for(var r in n.node)1==n.deep?(n.node[r].left=this.__option.x+.5*this.__option.width*l,n.node[r].top=this.__option.y):(n.node[r].left=this.__option.x+(n.node[r].left-.5)*a*l,n.node[r].top=n.node[r].top*h+u)}else if("TB"==this.__option.direction||"BT"==this.__option.direction)for(var r in h=this.__option.width/n.size,a=this.__option.height/(n.deep-1),u=this.__option.x-.5*this.__option.width,l="TB"==this.__option.direction?1:-1,n.node)if(1==n.deep)n.node[r].left=this.__option.x,n.node[r].top=this.__option.y+.5*this.__option.height*l;else{var p=n.node[r].left;n.node[r].left=n.node[r].top*h+u,n.node[r].top=this.__option.y+(p-.5)*a*l}}else if("circle"==this.__option.type){var f=this.__option.x,c=this.__option.y,d=2*Math.PI/n.size,g=this.__option.radius/(n.deep-1);for(var r in n.node)if(.5==n.node[r].left)n.node[r].left=f,n.node[r].top=c;else{var v=o(f,c,d*n.node[r].top,f+(n.node[r].left-.5)*g,c);n.node[r].left=v[0],n.node[r].top=v[1]}}return n},i.prototype.bind=function(t,i,e){return void 0===e&&(e={}),this.__rback=i,this.__oralTree=t,this.__noOpens=e,this.__preTree=this.use(this.__oralTree,this.__noOpens),this.__rback(this.__preTree),this},i.prototype.unbind=function(){return this.__rback=function(){return null},this.__oralTree=null,this.__preTree=null,this.__noOpens={},this},i.prototype.doUpdate=function(){var t=this,i=this.use(this.__oralTree,this.__noOpens),e=JSON.parse(JSON.stringify(i));h((function(n){if(t.__preTree)for(var r in e.node)(i.node[r].show||t.__preTree.node[r].show)&&(e.node[r].show=!0,e.node[r].left=t.__preTree.node[r].left+(i.node[r].left-t.__preTree.node[r].left)*n,e.node[r].top=t.__preTree.node[r].top+(i.node[r].top-t.__preTree.node[r].top)*n);t.__rback(e)}),this.__option.duration,(function(){t.__preTree=i,t.__rback(t.__preTree)}))},i.prototype.closeNode=function(t){return this.__preTree?(this.__noOpens[t]=!0,this.doUpdate(),this):this},i.prototype.openNode=function(t){return this.__preTree?(this.__noOpens[t]=!1,this.doUpdate(),this):this},i.prototype.toggleNode=function(t){return this.__preTree?(this.__noOpens[t]=!this.__noOpens[t],this.doUpdate(),this):this},i}(J),Z={Cardinal:i,Hermite:t,Matrix4:r,rotate:o,move:function(t,i,e,n,r){var o=Math.sqrt(t*t+i*i);return[t*e/o+n,i*e/o+r]},scale:function(t,i,e,n,r){return[e*(n-t)+t,e*(r-i)+i]},getLoopColors:function(t,i,e){void 0===i&&(i=1);var n=e?e(i):["rgba(84,112,198,"+i+")","rgba(145,204,117,"+i+")","rgba(250,200,88,"+i+")","rgba(238,102,102,"+i+")","rgba(115,192,222,"+i+")","rgba(59,162,114,"+i+")","rgba(252,132,82,"+i+")","rgba(154,96,180,"+i+")","rgba(234,124,204,"+i+")"],r=[];if(t<=n.length)return n;if(t%n.length==0)for(var o=0;o<t/n.length;o++)r=r.concat(n);else{for(var s=1;s<t/n.length;s++)r=r.concat(n);if(t%n.length==1)r=r.concat(n[4]);else for(var _=0;_<t%n.length;_++)r=r.concat(n[_])}return r},animation:h,ruler:function(t,i,e,n){if(t<i){var r=i;i=t,t=r}else if(t==i)return[t];var o=function(t){for(var i=t<100&&t>-100?10:.1,e=-1,n=t;10==i?n>=-100&&n<=100:n<=-100||n>=100;)e+=1,n*=i;if(10==i)return Math.pow(10,e);for(var r="0.",o=1;o<e;o++)r+="0";return+(r+"1")}(t-i),s=Math.ceil((t-i)*o/e),_=function(e){var n=({3:2,4:5,6:5,7:5,8:10,9:10,11:10,12:10,13:15,14:15,16:15,17:15,18:20,19:20,21:20,22:20,23:25,24:25,26:25,27:25}[s+e]||s+e)/o,r=Math.floor(i/n)*n,_=[];_.push(r);for(var h=1;_[_.length-1]<t;h++)_.push(r+n*h);return _},h=_(0),a=function(){for(var t=[],e=h[h.length-1]-(null==n?void 0:n.max),r=0;r<h.length;r++)r+1<h.length&&h[r+1]-e<i||t.push(h[r]-e);return t},u=function(){for(var i=[],e=h[0]-(null==n?void 0:n.min),r=0;r<h.length&&(i[r]=h[r]-e,!(t<=i[r]));r++);return i};if(n){if("max"in n&&"min"in n&&n.max>=t&&n.min<=i){var l=function(){if(h[0]>=n.min&&h[h.length-1]<=n.max)return!0;var t=a();if(t[0]>=n.min&&t[t.length-1]<=n.max)return h=t,!0;var i=u();return i[0]>=n.min&&i[t.length-1]<=n.max?(h=i,!0):void 0};if(l())return h;for(var p=1;p<100;p++){if(h=_(p),l())return h;if(h=_(-p),l())return h}}"max"in n&&n.max>=t?n.max<h[h.length-1]&&(h=a()):"min"in n&&n.min<=i&&n.min>h[0]&&(h=u())}for(var f=0;f<h.length;f++){var c=h[f]+"";/\./.test(c)&&(/9{7,}$/.test(c)?(c=c.replace(/9{7,}$/,""),h[f]=+(c.substring(0,c.length-1)+(+c[c.length-1]+1))):/0{7,}\d$/.test(c)&&(h[f]=+c.replace(/0{7,}\d$/,"")))}return h},SVG:S,Canvas:D,RawCanvas:N,getWebGLContext:function(t,i,e){if(void 0===i&&(i=1),!t)throw new Error("VISLite getWebGLContext:The mount point requires an HTMLElement type but encountered null.");var n,r=t.clientWidth,o=t.clientHeight,s=t;return s._vislite_canvas_?n=s._vislite_canvas_:(n=document.createElement("canvas"),t.appendChild(n),s._vislite_canvas_=n,t.setAttribute("vislite","WebGL")),n.style.width=r+"px",n.setAttribute("width",r+""),n.style.height=o+"px",n.setAttribute("height",o+""),function(t,i,e,n){void 0===e&&(e={}),void 0===n&&(n="scaleToFill");for(var r=["experimental-webgl","webkit-3d","moz-webgl"],o=t.getContext("webgl",e),s=0;s<r.length;s++){try{o=t.getContext(r[s],e)}catch(t){}if(o)break}if(!o)throw new Error("Non canvas or browser does not support webgl.");var _=o.canvas.width,h=o.canvas.height,a=i,u=i;"aspectFit"==n?_>h?a*=h/_:h>_&&(u*=_/h):"aspectFill"==n&&(_>h?u*=_/h:h>_&&(a*=h/_));var l=_*a,p=h*u;return o.viewport(.5*(_-l),.5*(h-p),l,p),o.depthFunc(o.LEQUAL),o.enable(o.DEPTH_TEST),o}(n,i,{},e)},Shader:H,Texture:X,Buffer:j,Eoap:Y,Mercator:W,throttle:function(t,i){var e={time:200,keep:!1,opportunity:"end"};if(i)for(var n in i)e[n]=i[n];var r,o=!1,s=!1,_=!1;return function(){const i=this;if(r=arguments,o)s=!0,_=!0;else{"end"!=e.opportunity&&t.apply(i,r),o=!0;var n=setInterval((()=>{s?e.keep||t.apply(i,r):("begin"!=e.opportunity&&(_||"end"==e.opportunity)&&t.apply(i,r),o=!1,_=!1,clearInterval(n)),s=!1}),e.time)}}},assemble:O,TreeLayout:$,initOption:z,mergeOption:function(t,i){!function t(i,e){for(var n in e){var r=e[n];F(r)?(i[n]||(i[n]={}),t(i[n],e[n])):i[n]=r}}(t,i)}};return Z},"object"==typeof exports&&"undefined"!=typeof module?module.exports=i():"function"==typeof define&&define.amd?define(i):(t="undefined"!=typeof globalThis?globalThis:t||self).VISLite=i();
5
+ var t,i;t=this,i=function(){"use strict";var t=function(){function t(t){void 0===t&&(t=.5),this.name="Hermite",this.__u=t}return t.prototype.setP=function(t,i,e,n,r,o){if(!(t<e))throw new Error("The point x-position should be increamented!");this.__a=t,this.__b=e;var s=this.__u*r,_=this.__u*o;return i/=e-t,n/=e-t,this.__MR=[2*i-2*n+s+_,3*n-3*i-2*s-_,s,i],this},t.prototype.use=function(t){if(this.__MR){var i=(t-this.__a)/(this.__b-this.__a),e=i*i;return(i*e*this.__MR[0]+e*this.__MR[1]+i*this.__MR[2]+this.__MR[3])*(this.__b-this.__a)}throw new Error("You shoud first set the position!")},t}(),i=function(){function i(t){void 0===t&&(t=0),this.name="Cardinal",this.__t=t}return i.prototype.setP=function(i){this.__HS={x:[],h:[]};var e,n,r=(i[1][1]-i[0][1])/(i[1][0]-i[0][0]);for(this.__HS.x[0]=i[0][0],e=1;e<i.length;e++){if(i[e][0]<=i[e-1][0])throw new Error("The point position should be increamented!");this.__HS.x[e]=i[e][0],n=e<i.length-1?i[e+1][1]>i[e][1]&&i[e-1][1]>i[e][1]||i[e+1][1]<i[e][1]&&i[e-1][1]<i[e][1]||i[e+1][1]==i[e][1]||i[e-1][1]==i[e][1]?0:(i[e+1][1]-i[e-1][1])/(i[e+1][0]-i[e-1][0]):(i[e][1]-i[e-1][1])/(i[e][0]-i[e-1][0]),this.__HS.h[e-1]=new t(.5*(1-this.__t)).setP(i[e-1][0],i[e-1][1],i[e][0],i[e][1],r,n),r=n}return this},i.prototype.use=function(t){if(this.__HS){for(this.__i=-1;this.__i+1<this.__HS.x.length&&(t>this.__HS.x[this.__i+1]||-1==this.__i&&t>=this.__HS.x[this.__i+1]);)this.__i+=1;return this.__i<0?this.__HS.h[0].use(this.__HS.x[0]):this.__i>=this.__HS.h.length?this.__HS.h[this.__HS.h.length-1].use(this.__HS.x[this.__HS.x.length-1]):this.__HS.h[this.__i].use(t)}throw new Error("You shoud first set the position!")},i}(),e=function(t,i){for(var e=[],n=0;n<4;n++)for(var r=0;r<i.length/4;r++)e[4*r+n]=t[n]*i[4*r]+t[n+4]*i[4*r+1]+t[n+8]*i[4*r+2]+t[n+12]*i[4*r+3];return e},n=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],r=function(){function t(t){void 0===t&&(t=n),this.name="Matrix4",this.__matrix4=t}return t.prototype.setValue=function(t){return void 0===t&&(t=n),this.__matrix4=t,this},t.prototype.move=function(t,i,n,r){return void 0===r&&(r=0),this.__matrix4=e(function(t,i,e,n){void 0===n&&(n=0);var r=Math.sqrt(i*i+e*e+n*n);return[1,0,0,0,0,1,0,0,0,0,1,0,i*t/r,e*t/r,n*t/r,1]}(t,i,n,r),this.__matrix4),this},t.prototype.rotate=function(t,i,n,r,o,s,_){var h=function(t,i,e,n,r,o){if("number"==typeof t&&"number"==typeof i){if("number"!=typeof e?(e=0,n=t,r=i,o=1):"number"==typeof n&&"number"==typeof r&&"number"==typeof o||(n=t,r=i,o=e,t=0,i=0,e=0),t==n&&i==r&&e==o)throw new Error("It's not a legitimate ray!");var s=Math.sqrt((n-t)*(n-t)+(r-i)*(r-i)),_=0!=s?(r-i)/s:1,h=0!=s?(n-t)/s:0,a=(n-t)*h+(r-i)*_,u=o-e,l=Math.sqrt(a*a+u*u),p=0!=l?u/l:1,f=0!=l?a/l:0;return[[_,p*h,h*f,0,-h,_*p,_*f,0,0,-f,p,0,i*h-t*_,e*f-t*h*p-i*_*p,-t*h*f-i*_*f-e*p,1],[_,-h,0,0,p*h,p*_,-f,0,h*f,_*f,p,0,t,i,e,1]]}throw new Error("a1 and b1 is required!")}(i,n,r,o,s,_);return this.__matrix4=e(e(e(h[1],function(t){var i=Math.sin(t),e=Math.cos(t);return[e,i,0,0,-i,e,0,0,0,0,1,0,0,0,0,1]}(t)),h[0]),this.__matrix4),this},t.prototype.scale=function(t,i,n,r,o,s){return void 0===r&&(r=0),void 0===o&&(o=0),void 0===s&&(s=0),this.__matrix4=e(function(t,i,e,n,r,o){return void 0===n&&(n=0),void 0===r&&(r=0),void 0===o&&(o=0),[t,0,0,0,0,i,0,0,0,0,e,0,n-n*t,r-r*i,o-o*e,1]}(t,i,n,r,o,s),this.__matrix4),this},t.prototype.multiply=function(t,i){return void 0===i&&(i=!1),this.__matrix4=i?e(this.__matrix4,t):e(t,this.__matrix4),this},t.prototype.use=function(t,i,n,r){return void 0===n&&(n=0),void 0===r&&(r=1),e(this.__matrix4,[t,i,n,r])},t.prototype.value=function(){return this.__matrix4},t}();function o(t,i,e,n,r){var o=Math.cos(e),s=Math.sin(e);return[(n-t)*o-(r-i)*s+t,(n-t)*s+(r-i)*o+i]}var s,_=[];function h(t,i,e){arguments.length<2&&(i=400),arguments.length<3&&(e=function(){});var n={timer:function(t,i,e){if(!t)throw new Error("Tick is required!");var r=(new Date).valueOf()+"_"+(1e3*Math.random()).toFixed(0);return _.push({id:r,createTime:new Date,tick:t,duration:i,callback:e}),n.start(),r},start:function(){s||(s=setInterval(n.tick,13))},tick:function(){var t,i,e,r,o,s,h,a=_;for((_=[]).length=0,i=0;i<a.length;i++)t=(o=a[i]).createTime,e=o.tick,s=o.duration,r=o.callback,e(h=(h=(+(new Date).valueOf()-t.valueOf())/s)>1?1:h),h<1&&o.id?_.push(o):r(h);_.length<=0&&n.stop()},stop:function(){s&&(clearInterval(s),s=null)}},r=n.timer((function(i){t(i)}),i,e);return function(){var t;for(t in _)if(_[t].id==r)return void(_[t].id=void 0)}}var a=function(t,i){return a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,i){t.__proto__=i}||function(t,i){for(var e in i)Object.prototype.hasOwnProperty.call(i,e)&&(t[e]=i[e])},a(t,i)};function u(t,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function e(){this.constructor=t}a(t,i),t.prototype=null===i?Object.create(i):(e.prototype=i.prototype,new e)}var l=function(){return l=Object.assign||function(t){for(var i,e=1,n=arguments.length;e<n;e++)for(var r in i=arguments[e])Object.prototype.hasOwnProperty.call(i,r)&&(t[r]=i[r]);return t},l.apply(this,arguments)};"function"==typeof SuppressedError&&SuppressedError;var p=["href","title","show","type","role","actuate"];function f(t){return document.createElementNS("http://www.w3.org/2000/svg",t)}var c=function(t,i,e){p.indexOf(i)>-1?t.setAttributeNS("http://www.w3.org/1999/xlink","xlink:"+i,e+""):t.setAttribute(i,e+"")},d=c;function g(t,i){c(t,"stroke",i.strokeStyle),c(t,"fill",i.fillStyle)}function v(t,i){c(t,"fill",i.fillStyle)}function y(t,i){c(t,"stroke",i.strokeStyle),c(t,"fill","none")}var E=function(t,i,e,n,r){var o=Math.cos(e),s=Math.sin(e);return[+((n-t)*o-(r-i)*s+t).toFixed(7),+((n-t)*s+(r-i)*o+i).toFixed(7)]};function w(t,i,e,n,r,o,s){i<0&&(t+=i,i*=-1);var _,h=[];_=E(0,0,t,r,0),h[0]=_[0],h[1]=_[1],_=E(0,0,i,_[0],_[1]),h[2]=_[0],h[3]=_[1],_=E(0,0,t,o,0),h[4]=_[0],h[5]=_[1],_=E(0,0,i,_[0],_[1]),h[6]=_[0],h[7]=_[1],s(t,t+i,h[0]+e,h[1]+n,h[4]+e,h[5]+n,h[2]+e,h[3]+n,h[6]+e,h[7]+n,.5*(o-r))}var m=function(t){var i=t.getElementsByTagName("defs");if(i.length<=0){var e=f("defs");return t.appendChild(e),e}return i[0]},T=function(t,i,e,n,r){if("text"!==t.nodeName.toLowerCase())throw new Error("Need a <text> !");d(t,"dy",{top:.5*i.fontSize,middle:0,bottom:.5*-i.fontSize}[i.textBaseline]),function(t,i){for(var e in i)t.style[e]=i[e]}(t,{"text-anchor":{left:"start",right:"end",center:"middle"}[i.textAlign],"dominant-baseline":"central","font-size":i.fontSize+"px","font-family":i.fontFamily}),d(t,"x",e),d(t,"y",n),"number"==typeof r&&d(t,"transform","rotate("+(r%=360)+","+e+","+n+")")},x=function(t,i,e,n){if("circle"!==t.nodeName.toLowerCase())throw new Error("Need a <circle> !");d(t,"cx",i),d(t,"cy",e),d(t,"r",n)},b=function(t,i,e){if("path"!==t.nodeName.toLowerCase())throw new Error("Need a <path> !");d(t,"d",i),d(t,"stroke-dasharray",e.lineDash.join(",")),d(t,"stroke-width",e.lineWidth+""),d(t,"stroke-linecap",e.lineCap+""),d(t,"stroke-linejoin",e.lineJoin+"")},P=function(t,i,e,n,r){if("rect"!==t.nodeName.toLowerCase())throw new Error("Need a <rect> !");r<0&&(e-=r*=-1),n<0&&(i-=n*=-1),d(t,"x",i),d(t,"y",e),d(t,"width",n),d(t,"height",r)},C=function(t,i,e,n,r,o,s,_){if("path"!==t.nodeName.toLowerCase())throw new Error("Need a <path> !");if(s=s/180*Math.PI,_=_/180*Math.PI,s%=2*Math.PI,r>o){var h=r;r=o,o=h}_>=1.999999*Math.PI||_<=1.999999*-Math.PI?_=1.999999*Math.PI:_%=2*Math.PI,w(s,_,e,n,r,o,(function(e,n,s,_,h,a,u,l,p,f,c){var g=n-e>Math.PI?1:0,v="M"+s+" "+_;c<0&&(c=-c),v+="A"+r+" "+r+" 0 "+g+" 1 "+u+" "+l,"round"==i.arcEndCap?v+="A"+c+" "+c+" 0 1 0 "+p+" "+f:"-round"==i.arcEndCap?v+="A"+c+" "+c+" 0 1 1 "+p+" "+f:v+="L"+p+" "+f,v+="A"+o+" "+o+" 0 "+g+" 0 "+h+" "+a,"round"==i.arcStartCap?v+="A"+c+" "+c+" 0 1 0 "+s+" "+_:"-round"==i.arcStartCap?v+="A"+c+" "+c+" 0 1 1 "+s+" "+_:v+="L"+s+" "+_,"butt"==i.arcStartCap&&(v+="Z"),d(t,"d",v)}))},R=function(t,i){var e={value:function(){return"url(#"+i+")"},setColor:function(i,n){var r=f("stop");return t.appendChild(r),d(r,"offset",100*i+"%"),d(r,"style","stop-color:"+n+";"),e}};return e},S=function(){function t(t){this.name="SVG",this.__config={fillStyle:"#000",strokeStyle:"#000",textAlign:"left",textBaseline:"middle",fontSize:16,fontFamily:"sans-serif",arcStartCap:"butt",arcEndCap:"butt",lineDash:[],lineWidth:1,lineCap:"butt",lineJoin:"miter"},this.__path="",this.__currentPosition=[],this.__svg=t}return t.prototype.config=function(t){if("object"!=typeof t)return this.__config[t];for(var i in t)this.__config[i]=t[i];return this},t.prototype.reset=function(){return this.config({fillStyle:"#000",strokeStyle:"#000",textAlign:"left",textBaseline:"middle",fontSize:16,fontFamily:"sans-serif",arcStartCap:"butt",arcEndCap:"butt",lineDash:[],lineWidth:1,lineCap:"butt",lineJoin:"miter"}),this},t.prototype.useEl=function(t){return this.__useEl=t,this},t.prototype.getEl=function(){return this.__useEl},t.prototype.appendEl=function(t,i){return i=i||this.__svg,"string"==typeof t&&(t=f(t)),i.appendChild(t),this.__useEl=t,this},t.prototype.appendBoard=function(t,i){var e=t;if("string"==typeof t&&(e={text:"text",path:"path",arc:"path",circle:"circle",rect:"rect"}[t]||""),""==e)throw new Error("Unsupported drawing method:"+t);return this.appendEl(e,i)},t.prototype.remove=function(){if(!this.__useEl)throw new Error("Currently, no node can be deleted.");return this.__useEl.parentNode.removeChild(this.__useEl),this},t.prototype.attr=function(t){if(!this.__useEl)throw new Error("Currently, no node can be modified or viewed.");if("object"!=typeof t)return function(t,i){return p.indexOf(i)>-1&&(i="xlink:"+i),t.getAttribute(i)}(this.__useEl,t);for(var i in t)d(this.__useEl,i,t[i]);return this},t.prototype.fillText=function(t,i,e,n){return void 0===n&&(n=0),T(this.__useEl,this.__config,i,e,n),this.__useEl.textContent=t,v(this.__useEl,this.__config),this},t.prototype.strokeText=function(t,i,e,n){return void 0===n&&(n=0),T(this.__useEl,this.__config,i,e,n),this.__useEl.textContent=t,y(this.__useEl,this.__config),this},t.prototype.fullText=function(t,i,e,n){return void 0===n&&(n=0),T(this.__useEl,this.__config,i,e,n),this.__useEl.textContent=t,g(this.__useEl,this.__config),this},t.prototype.fillArc=function(t,i,e,n,r,o){return C(this.__useEl,this.__config,t,i,e,n,r,o),v(this.__useEl,this.__config),this},t.prototype.strokeArc=function(t,i,e,n,r,o){return C(this.__useEl,this.__config,t,i,e,n,r,o),y(this.__useEl,this.__config),this},t.prototype.fullArc=function(t,i,e,n,r,o){return C(this.__useEl,this.__config,t,i,e,n,r,o),g(this.__useEl,this.__config),this},t.prototype.fillCircle=function(t,i,e){return x(this.__useEl,t,i,e),v(this.__useEl,this.__config),this},t.prototype.strokeCircle=function(t,i,e){return x(this.__useEl,t,i,e),y(this.__useEl,this.__config),this},t.prototype.fullCircle=function(t,i,e){return x(this.__useEl,t,i,e),g(this.__useEl,this.__config),this},t.prototype.fillRect=function(t,i,e,n){return P(this.__useEl,t,i,e,n),v(this.__useEl,this.__config),this},t.prototype.strokeRect=function(t,i,e,n){return P(this.__useEl,t,i,e,n),y(this.__useEl,this.__config),this},t.prototype.fullRect=function(t,i,e,n){return P(this.__useEl,t,i,e,n),g(this.__useEl,this.__config),this},t.prototype.beginPath=function(){return this.__currentPosition=[],this.__path="",this},t.prototype.closePath=function(){return this.__path+="Z",this},t.prototype.moveTo=function(t,i){return this.__currentPosition=[t,i],this.__path+="M"+t+" "+i,this},t.prototype.lineTo=function(t,i){return this.__currentPosition=[t,i],this.__path+=(""==this.__path?"M":"L")+t+" "+i,this},t.prototype.fill=function(){return b(this.__useEl,this.__path,this.__config),v(this.__useEl,this.__config),this},t.prototype.stroke=function(){return b(this.__useEl,this.__path,this.__config),y(this.__useEl,this.__config),this},t.prototype.full=function(){return b(this.__useEl,this.__path,this.__config),g(this.__useEl,this.__config),this},t.prototype.arc=function(t,i,e,n,r){var s=o(t,i,n/180*Math.PI,t+e,i),_=o(t,i,(n+r)/180*Math.PI,t+e,i);return""==this.__path?this.__path+="M"+s[0]+","+s[1]:s[0]==this.__currentPosition[0]&&s[1]==this.__currentPosition[1]||(this.__path+="L"+s[0]+","+s[1]),this.__path+="A"+e+","+e+" 0 "+(r>180||r<-180?1:0)+","+(r>0?1:0)+" "+_[0]+","+_[1],this},t.prototype.quadraticCurveTo=function(t,i,e,n){return this.__path+="Q"+t+" "+i+","+e+" "+n,this},t.prototype.bezierCurveTo=function(t,i,e,n,r,o){return this.__path+="C"+t+" "+i+","+e+" "+n+","+r+" "+o,this},t.prototype.bind=function(t,i){return this.__useEl.addEventListener(t,(function(t){i.call(this,t,this)}),!1),this},t.prototype.createLinearGradient=function(t,i,e,n){return function(t,i,e,n,r){var o=m(t),s="vislite-lg-"+(new Date).valueOf()+"-"+Math.random(),_=f("linearGradient");return o.appendChild(_),d(_,"id",s),d(_,"x1",i+"%"),d(_,"y1",e+"%"),d(_,"x2",n+"%"),d(_,"y2",r+"%"),R(_,s)}(this.__svg,t,i,e,n)},t.prototype.createRadialGradient=function(t,i,e){return function(t,i,e,n){var r=m(t),o="vislite-rg-"+(new Date).valueOf()+"-"+Math.random(),s=f("radialGradient");return r.appendChild(s),d(s,"id",o),d(s,"cx",i+"%"),d(s,"cy",e+"%"),d(s,"r",n+"%"),R(s,o)}(this.__svg,t,i,e)},t}(),M=function(t){function i(i){if(!i)throw new Error("VISLite SVG:The mount point requires an HTMLElement type but encountered null.");var e=i.clientWidth,n=i.clientHeight,r=document.createElementNS("http://www.w3.org/2000/svg","svg");return i.appendChild(r),r.setAttribute("width",e+""),r.setAttribute("height",n+""),r.setAttribute("viewBox","0 0 "+e+" "+n),t.call(this,r)||this}return u(i,t),i}(S),A=function(t,i,e,n,r){return t.beginPath(),t.translate(e,n),t.rotate(r),t.font=i.fontStyle+" "+i.fontWeight+" "+i.fontSize+"px "+i.fontFamily,t},k=function(t,i,e,n,r,o,s,_){if(r>o){var h=r;r=o,o=h}return s%=2*Math.PI,_>=1.999999*Math.PI||_<=1.999999*-Math.PI?_=2*Math.PI:_%=2*Math.PI,w(s,_,e,n,r,o,(function(s,_,h,a,u,l,p,f,c,d,g){g<0&&(g=-g),t.beginPath(),t.moveTo(h,a),t.arc(e,n,r,s,_,!1),"round"==i.arcEndCap?t.arc(.5*(p+c),.5*(f+d),g,_-Math.PI,_,!0):"-round"==i.arcEndCap?t.arc(.5*(p+c),.5*(f+d),g,_-Math.PI,_,!1):t.lineTo(c,d),t.arc(e,n,o,_,s,!0),"round"==i.arcStartCap?t.arc(.5*(h+u),.5*(a+l),g,s,s-Math.PI,!0):"-round"==i.arcStartCap?t.arc(.5*(h+u),.5*(a+l),g,s,s-Math.PI,!1):t.lineTo(h,a)})),"butt"==i.arcStartCap&&t.closePath(),t},I=function(t,i,e,n){return t.beginPath(),t.moveTo(i+n,e),t.arc(i,e,n,0,2*Math.PI),t},L=function(t,i,e,n,r){return t.beginPath(),t.rect(i,e,n,r),t};function V(t,i,e,n,r){for(var o=0,s="",_=0;_<i.length;_++)t.measureText(s+i[_]).width>e||/\n$/.test(s)?(r(s,((o+=1)-.5)*n),s=i[_]):_==i.length-1?(o+=1,r(s+i[_],(o-.5)*n)):s+=i[_];return o*n}function O(t){var i={fontSize:16,fontFamily:"sans-serif",fontWeight:400,fontStyle:"normal",arcStartCap:"butt",arcEndCap:"butt"},e={fillStyle:"black",strokeStyle:"black",lineWidth:1,lineCap:"butt",lineJoin:"miter",lineDash:[],textAlign:"left",textBaseline:"middle",shadowBlur:0,shadowColor:"black"};return"special"==t?i:"init"==t?e:l(l({},i),e)}var U=function(){function t(t,i,e,n,r){void 0===i&&(i={}),void 0===n&&(n=!1),this.__region=null,this.__onlyRegion=!1,this.__onlyView=!1,this.__specialConfig=O("special"),this.__initConfig=O("init"),this.painter=t.getContext("2d",i),this.__region=e,this.__isPainter=n,this.painter.textBaseline="middle",this.painter.textAlign="left"}return t.prototype.useConfig=function(t,i){if(this.__region&&!this.__onlyView&&["fillStyle","strokeStyle","shadowBlur","shadowColor"].indexOf(t)<0&&this.__region.useConfig(t,i),this.__isPainter&&this.__onlyRegion)return this;if("lineDash"==t)this.painter.setLineDash&&this.painter.setLineDash(i);else if(t in this.__specialConfig)"fontSize"==t&&(i=Math.round(i)),this.__specialConfig[t]=i;else{if(!(t in this.__initConfig))throw new Error("Illegal configuration item of painter : "+t+" !");this.painter[t]=i}return this},t.prototype.fillText=function(t,i,e,n){return void 0===n&&(n=0),this.__region&&!this.__onlyView&&this.__region.fillText(t,i,e,n),this.__isPainter&&this.__onlyRegion||(this.painter.save(),A(this.painter,this.__specialConfig,i,e,n).fillText(t,0,0),this.painter.restore()),this},t.prototype.strokeText=function(t,i,e,n){return void 0===n&&(n=0),this.__region&&!this.__onlyView&&this.__region.strokeText(t,i,e,n),this.__isPainter&&this.__onlyRegion||(this.painter.save(),A(this.painter,this.__specialConfig,i,e,n).strokeText(t,0,0),this.painter.restore()),this},t.prototype.fullText=function(t,i,e,n){return void 0===n&&(n=0),this.__region&&!this.__onlyView&&this.__region.fullText(t,i,e,n),this.__isPainter&&this.__onlyRegion||(this.painter.save(),A(this.painter,this.__specialConfig,i,e,n),this.painter.fillText(t,0,0),this.painter.strokeText(t,0,0),this.painter.restore()),this},t.prototype.fillTexts=function(t,i,e,n,r,o){var s=this;void 0===r&&(r=1.2),void 0===o&&(o=0);var _=0;if(this.__region&&!this.__onlyView&&(_=this.__region.fillTexts(t,i,e,n,r)),this.__isPainter&&this.__onlyRegion)return _;this.painter.save(),A(this.painter,this.__specialConfig,i,e,o);var h=V(this.painter,t,n,this.__specialConfig.fontSize*r,(function(t,i){s.painter.fillText(t,0,i)}));return this.painter.restore(),h},t.prototype.strokeTexts=function(t,i,e,n,r,o){var s=this;void 0===r&&(r=1.2),void 0===o&&(o=0);var _=0;if(this.__region&&!this.__onlyView&&(_=this.__region.fillTexts(t,i,e,n,r)),this.__isPainter&&this.__onlyRegion)return _;this.painter.save(),A(this.painter,this.__specialConfig,i,e,o);var h=V(this.painter,t,n,this.__specialConfig.fontSize*r,(function(t,i){s.painter.strokeText(t,0,i)}));return this.painter.restore(),h},t.prototype.fullTexts=function(t,i,e,n,r,o){var s=this;void 0===r&&(r=1.2),void 0===o&&(o=0);var _=0;if(this.__region&&!this.__onlyView&&(_=this.__region.fillTexts(t,i,e,n,r)),this.__isPainter&&this.__onlyRegion)return _;this.painter.save(),A(this.painter,this.__specialConfig,i,e,o);var h=V(this.painter,t,n,this.__specialConfig.fontSize*r,(function(t,i){s.painter.fillText(t,0,i),s.painter.strokeText(t,0,i)}));return this.painter.restore(),h},t.prototype.beginPath=function(){return this.__region&&!this.__onlyView&&this.__region.beginPath(),this.__isPainter&&this.__onlyRegion||this.painter.beginPath(),this},t.prototype.closePath=function(){return this.__region&&!this.__onlyView&&this.__region.closePath(),this.__isPainter&&this.__onlyRegion||this.painter.closePath(),this},t.prototype.moveTo=function(t,i){return this.__region&&!this.__onlyView&&this.__region.moveTo(t,i),this.__isPainter&&this.__onlyRegion||this.painter.moveTo(Math.round(t)+.5,Math.round(i)+.5),this},t.prototype.lineTo=function(t,i){return this.__region&&!this.__onlyView&&this.__region.lineTo(t,i),this.__isPainter&&this.__onlyRegion||this.painter.lineTo(Math.round(t)+.5,Math.round(i)+.5),this},t.prototype.arc=function(t,i,e,n,r){return this.__region&&!this.__onlyView&&this.__region.arc(t,i,e,n,r),this.__isPainter&&this.__onlyRegion||this.painter.arc(t,i,e,n,n+r,r<0),this},t.prototype.fill=function(){return this.__region&&!this.__onlyView&&this.__region.fill(),this.__isPainter&&this.__onlyRegion||this.painter.fill(),this},t.prototype.stroke=function(){return this.__region&&!this.__onlyView&&this.__region.stroke(),this.__isPainter&&this.__onlyRegion||this.painter.stroke(),this},t.prototype.full=function(){return this.__region&&!this.__onlyView&&this.__region.full(),this.__isPainter&&this.__onlyRegion||(this.painter.fill(),this.painter.stroke()),this},t.prototype.save=function(){return this.__region&&!this.__onlyView&&this.__region.save(),this.__isPainter&&this.__onlyRegion||this.painter.save(),this},t.prototype.restore=function(){return this.__region&&!this.__onlyView&&this.__region.restore(),this.__isPainter&&this.__onlyRegion||this.painter.restore(),this},t.prototype.clip=function(){return this.__region&&!this.__onlyView&&this.__region.clip(),this.__isPainter&&this.__onlyRegion||this.painter.clip(),this},t.prototype.quadraticCurveTo=function(t,i,e,n){return this.__region&&!this.__onlyView&&this.__region.quadraticCurveTo(t,i,e,n),this.__isPainter&&this.__onlyRegion||this.painter.quadraticCurveTo(t,i,e,n),this},t.prototype.bezierCurveTo=function(t,i,e,n,r,o){return this.__region&&!this.__onlyView&&this.__region.bezierCurveTo(t,i,e,n,r,o),this.__isPainter&&this.__onlyRegion||this.painter.bezierCurveTo(t,i,e,n,r,o),this},t.prototype.clearRect=function(t,i,e,n){return this.__region&&!this.__onlyView&&this.__region.clearRect(t,i,e,n),this.__isPainter&&this.__onlyRegion||this.painter.clearRect(t,i,e,n),this},t.prototype.fillArc=function(t,i,e,n,r,o){return this.__region&&!this.__onlyView&&this.__region.fillArc(t,i,e,n,r,o),this.__isPainter&&this.__onlyRegion||k(this.painter,this.__specialConfig,t,i,e,n,r,o).fill(),this},t.prototype.strokeArc=function(t,i,e,n,r,o){return this.__region&&!this.__onlyView&&this.__region.strokeArc(t,i,e,n,r,o),this.__isPainter&&this.__onlyRegion||k(this.painter,this.__specialConfig,t,i,e,n,r,o).stroke(),this},t.prototype.fullArc=function(t,i,e,n,r,o){return this.__region&&!this.__onlyView&&this.__region.fullArc(t,i,e,n,r,o),this.__isPainter&&this.__onlyRegion||(k(this.painter,this.__specialConfig,t,i,e,n,r,o),this.painter.fill(),this.painter.stroke()),this},t.prototype.fillCircle=function(t,i,e){return this.__region&&!this.__onlyView&&this.__region.fillCircle(t,i,e),this.__isPainter&&this.__onlyRegion||I(this.painter,t,i,e).fill(),this},t.prototype.strokeCircle=function(t,i,e){return this.__region&&!this.__onlyView&&this.__region.strokeCircle(t,i,e),this.__isPainter&&this.__onlyRegion||I(this.painter,t,i,e).stroke(),this},t.prototype.fullCircle=function(t,i,e){return this.__region&&!this.__onlyView&&this.__region.fullCircle(t,i,e),this.__isPainter&&this.__onlyRegion||(I(this.painter,t,i,e),this.painter.fill(),this.painter.stroke()),this},t.prototype.fillRect=function(t,i,e,n){return this.__region&&!this.__onlyView&&this.__region.fillRect(t,i,e,n),this.__isPainter&&this.__onlyRegion||L(this.painter,t,i,e,n).fill(),this},t.prototype.strokeRect=function(t,i,e,n){return this.__region&&!this.__onlyView&&this.__region.strokeRect(t,i,e,n),this.__isPainter&&this.__onlyRegion||L(this.painter,t,i,e,n).stroke(),this},t.prototype.fullRect=function(t,i,e,n){return this.__region&&!this.__onlyView&&this.__region.fullRect(t,i,e,n),this.__isPainter&&this.__onlyRegion||(L(this.painter,t,i,e,n),this.painter.fill(),this.painter.stroke()),this},t.prototype.draw=function(){return Promise.resolve()},t.prototype.drawImage=function(t,i,e,n,r,o){var s=this;return void 0===o&&(o=!1),new Promise((function(_){if(s.__region&&!s.__onlyView&&s.__region.fillRect(i,e,n,r),s.__isPainter&&s.__onlyRegion)_({});else if("string"!=typeof t||o)s.painter.drawImage(t,i,e,n,r),_({});else{var h=new Image;h.onload=function(){s.painter.drawImage(h,i,e,n,r),_({})},h.src=t}}))},t.prototype.install=function(t){var i=this,e=function(e){if(e in n)throw new Error("VISLite Canvas:Method already exists and cannot be overwritten.");n[e]=function(){for(var n=[],r=0;r<arguments.length;r++)n[r]=arguments[r];var o=t[e].apply(i,n);return null!=o?o:i}},n=this;for(var r in t)e(r);return this},t}();function N(t,i,e,n){for(var r=[],o=0;o<n;o++)r[o]=t;return function(){for(var o=0;o<n;o++){if(r[o]+e<i){r[o]=+(r[o]+e).toFixed(7);break}o<n-1&&(r[o]=t)}return r}}var B=function(t,i){var e={value:function(){return t},setColor:function(n,r){return t.addColorStop(i?i(n):n,r),e}};return e},F=function(t){function i(i,e,n,r){void 0===n&&(n={}),void 0===r&&(r=1);var o=t.call(this,i,n,e?new U(e,{willReadFrequently:!0}):void 0,!0,r)||this;return o.name="Canvas",o.__regionList={},o.__regionAssemble=N(0,255,10,3),o.__scaleSize=r,o.setRegion(""),o}return u(i,t),i.prototype.config=function(t){for(var i in t)this.useConfig(i,t[i]);return this},i.prototype.reset=function(){return this.config(O()),this},i.prototype.onlyRegion=function(t){return this.__onlyRegion=t,this},i.prototype.onlyView=function(t){return this.__onlyView=t,this},i.prototype.setRegion=function(t){if(this.__region)if(t){if(null==this.__regionList[t]){var i=this.__regionAssemble();this.__regionList[t]="rgb("+i[0]+","+i[1]+","+i[2]+")"}this.__region.useConfig("fillStyle",this.__regionList[t])&&this.__region.useConfig("strokeStyle",this.__regionList[t])}else this.__region.useConfig("fillStyle","#000000")&&this.__region.useConfig("strokeStyle","#000000");return this},i.prototype.getRegion=function(t,i){var e=this;return new Promise((function(n){var r=e.__region?e.__region.painter.getImageData(t-.5,i-.5,1,1):{data:[0,0,0,0]},o=r.data,s=function(){if(e.__region)for(var t in e.__regionList)if("rgb("+o[0]+","+o[1]+","+o[2]+")"==e.__regionList[t]){n(t);break}n("")};o?s():r.then((function(t){o=t,s()}))}))},i.prototype.textWidth=function(t){this.painter.save(),A(this.painter,this.__specialConfig,0,0,0);var i=this.painter.measureText(t+"").width;return this.painter.restore(),i},i.prototype.getContext=function(t){return void 0===t&&(t=!1),t?this.__region?this.__region.painter:null:this.painter},i.prototype.getInfo=function(){return{width:this.painter.canvas.width/this.__scaleSize,height:this.painter.canvas.height/this.__scaleSize}},i.prototype.createLinearGradient=function(t,i,e,n){return function(t,i,e,n,r){var o=t.createLinearGradient(i,e,n,r);return B(o)}(this.painter,t,i,e,n)},i.prototype.createRadialGradient=function(t,i,e){return function(t,i,e,n){var r=t.createRadialGradient(i,e,0,i,e,n);return B(r)}(this.painter,t,i,e)},i.prototype.createConicGradient=function(t,i,e,n){return function(t,i,e,n,r){var o=t.createConicGradient(n,i,e);return B(o,r?function(t){return r/(2*Math.PI)*t}:void 0)}(this.painter,t,i,e,n)},i.prototype.getColor=function(t,i){t*=this.__scaleSize,i*=this.__scaleSize;var e=this.painter.getImageData(t-.5,i-.5,1,1).data;return"rgba("+e[0]+","+e[1]+","+e[2]+","+e[3]+")"},i}(U),z=Object.prototype.toString;function D(t){if(null===t||"object"!=typeof t||"[object Object]"!=function(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":z.call(t)}(t))return!1;if(null===Object.getPrototypeOf(t))return!0;for(var i=t;null!==Object.getPrototypeOf(i);)i=Object.getPrototypeOf(i);return Object.getPrototypeOf(t)===i}function G(t,i){for(var e in t)i[e]=t[e];return i}var H=function(t){function i(i,e,n,r){void 0===e&&(e={}),void 0===n&&(n=0),void 0===r&&(r=0);var o=this;if(!i)throw new Error("VISLite Canvas:The mount point requires an HTMLElement type but encountered null.");e=G(e,{region:!0,willReadFrequently:!1}),n=n||i.clientWidth,r=r||i.clientHeight;var s,_=null,h=i;h._vislite_canvas_?(s=h._vislite_canvas_[0],_=h._vislite_canvas_[1]):(s=document.createElement("canvas"),i.appendChild(s),e.region&&(_=document.createElement("canvas")),h._vislite_canvas_=[s,_],i.setAttribute("vislite","Canvas"));for(var a=[_,s],u=0;u<a.length;u++){var l=a[u];l&&(l.style.width=n+"px",l.setAttribute("width",u*n+n+""),l.style.height=r+"px",l.setAttribute("height",u*r+r+""))}return(o=t.call(this,s,_,{willReadFrequently:e.willReadFrequently},2)||this).__canvas=s,o.__el=i,o.painter.scale(2,2),o}return u(i,t),i.prototype.toDataURL=function(){var t=this;return new Promise((function(i){i(t.__canvas.toDataURL())}))},i.prototype.bind=function(t,i){var e=this;return this.__el.addEventListener(t,(function(t){e.getRegion(t.offsetX,t.offsetY).then((function(e){i(e,t.offsetX,t.offsetY)}))})),this},i}(F),X=function(t,i,e){var n=t.createShader(i);if(null==n)throw new Error("Unable to create shader!");if(t.shaderSource(n,e),t.compileShader(n),!t.getShaderParameter(n,t.COMPILE_STATUS))throw new Error("Failed to compile shader:"+t.getShaderInfoLog(n));return n},j=function(){function t(t){this.__painter=t}return t.prototype.use=function(){return this.__painter.useProgram(this.program),this},t.prototype.compile=function(t,i){return this.program=function(t,i,e){var n=X(t,t.VERTEX_SHADER,i),r=X(t,t.FRAGMENT_SHADER,e),o=t.createProgram();if(t.attachShader(o,n),t.attachShader(o,r),t.linkProgram(o),!t.getProgramParameter(o,t.LINK_STATUS))throw new Error("Failed to link program: "+t.getProgramInfoLog(o));return o}(this.__painter,t,i),this},t}(),q=function(){function t(t,i,e){void 0===e&&(e=0),this.__painter=t,this.__type={"2d":t.TEXTURE_2D,cube:t.TEXTURE_CUBE_MAP}[i],this.__texture=function(t,i,e){var n=t.createTexture();return t.activeTexture(t["TEXTURE"+e]),t.bindTexture(i,n),n}(t,this.__type,e),t.texParameteri(this.__type,t.TEXTURE_MIN_FILTER,t.NEAREST),t.texParameteri(this.__type,t.TEXTURE_MAG_FILTER,t.NEAREST),t.texParameteri(this.__type,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(this.__type,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE)}return t.prototype.useImage=function(t){return function(t,i,e,n,r,o){t.texImage2D(i,e,n,n,r,o)}(this.__painter,this.__type,0,this.__painter.RGBA,this.__painter.UNSIGNED_BYTE,t),this},t.prototype.useCube=function(t,i,e){return function(t,i,e,n,r,o,s,_,h){for(var a,u=[t.TEXTURE_CUBE_MAP_POSITIVE_X,t.TEXTURE_CUBE_MAP_NEGATIVE_X,t.TEXTURE_CUBE_MAP_POSITIVE_Y,t.TEXTURE_CUBE_MAP_NEGATIVE_Y,t.TEXTURE_CUBE_MAP_POSITIVE_Z,t.TEXTURE_CUBE_MAP_NEGATIVE_Z],l=0;l<u.length;l++)o[l]&&(a=u[l],t.texImage2D(a,e,n,s,_,0,n,r,null),t.bindTexture(i,h),t.texImage2D(a,e,n,n,r,o[l]));t.generateMipmap(i)}(this.__painter,this.__type,0,this.__painter.RGBA,this.__painter.UNSIGNED_BYTE,t,i,e,this.__texture),this},t}(),W=function(){function t(t,i){void 0===i&&(i=!1),this.__painter=t,this.__isElement=i,this.__buffer=function(t){return t.createBuffer()}(t),this.__type=i?t.ELEMENT_ARRAY_BUFFER:t.ARRAY_BUFFER}return t.prototype.use=function(){return this.__painter.bindBuffer(this.__type,this.__buffer),this},t.prototype.write=function(t){return function(t,i,e,n){var r=e?t.ELEMENT_ARRAY_BUFFER:t.ARRAY_BUFFER;t.bufferData(r,i,n)}(this.__painter,t,this.__isElement,this.__painter.STATIC_DRAW),this.__fsize=t.BYTES_PER_ELEMENT,this},t.prototype.divide=function(t,i,e,n){return void 0===n&&(n=0),function(t,i,e,n,r,o,s){t.vertexAttribPointer(i,e,n,s,r,o),t.enableVertexAttribArray(i)}(this.__painter,t,i,this.__painter.FLOAT,e*this.__fsize,n*this.__fsize,!1),this},t}(),Y=function(t,i,e,n){var r=Math.cos(t),o=Math.sin(t);return[i*r-e*o,i*o+e*r,n]},J=function(){function t(t,i){void 0===t&&(t=7),void 0===i&&(i=[107,36]),this.name="Eoap",this.__scale=t,this.__center=i}return t.prototype.use=function(t,i){var e,n,r,o,s,_,h=(e=(360-i)/180*Math.PI,n=100*this.__scale,r=0,o=0,s=Math.cos(e),_=Math.sin(e),[o*_+n*s,r,o*s-n*_]);return h=Y(t/180*Math.PI,h[0],h[1],h[2]),h=Y((90-this.__center[0])/180*Math.PI,h[0],h[1],h[2]),h=function(t,i,e,n){var r=Math.cos(t),o=Math.sin(t);return[i,e*r-n*o,e*o+n*r]}((90-this.__center[1])/180*Math.PI,h[0],h[1],h[2]),[-h[0],h[1],h[2]]},t}(),$=function(t,i){void 0===t&&(t=7),void 0===i&&(i=[107,36]),this.name="Mercator";var e=100*t*Math.PI/180,n=e*i[0],r=-1*e*i[1];this.use=function(t,i){return[.8*(e*t-n),-1*e*i-r,0]}},Z=function(){function t(t){void 0===t&&(t={}),this.name="Tree",this.__config=G(t,{root:function(t){return t},children:function(t){return t.children},id:function(t){return t.name}})}return t.prototype.use=function(t,i){return void 0===i&&(i={}),function(t,i,e){var n=function(t,i){var e,n,r={},o=i.root(t);e=n=i.id(o),r[e]={data:o,pid:null,id:e,isOpen:!0,show:!0,children:[]};var s=1;return function n(o,_){var h=i.children(o,t);s+=h?h.length:0;for(var a=0;h&&a<h.length;a++)e=i.id(h[a]),r[_].children.push(e),r[e]={data:h[a],pid:_,id:e,isOpen:!0,show:!0,children:[]},n(h[a],e)}(o,e),{rid:n,value:r,num:s}}(t,i),r=n.value,o=n.rid;if(1==n.num)return r[o].left=.5,r[o].top=.5,r[o].show=!0,{deep:1,node:r,root:o,size:1};var s=[],_=0,h=0;for(var a in e[o]?(r[o].left=.5,r[o].top=.5,r[o].show=!0,_=1):function t(i,n){n>h&&(h=n);var o=0;if(!e[i.id])for(o=0;o<i.children.length;o++)t(r[i.children[o]],n+1);if(r[i.id].left=n+.5,0==o?(null==s[n]&&(s[n]=-.5),null==s[n-1]&&(s[n-1]=-.5),r[i.id].top=s[n]+1,s[n]+1+.5*(r[i.pid].children.length-1)-1<s[n-1]&&(r[i.id].top=s[n-1]+1-.5*(r[i.pid].children.length-1))):r[i.id].top=.5*(r[i.children[0]].top+r[i.children[o-1]].top),r[i.id].top<=s[n])var a=s[n]+1-r[i.id].top((function t(i,e){r[i].top+=a,s[e]<r[i].top&&(s[e]=r[i].top);for(var n=0;n<r[i].children.length;n++)t(r[i].children[n],e+1)}))(i.id,n);s[n]=r[i.id].top,r[i.id].top+.5>_&&(_=r[i.id].top+.5)}(r[o],0),e)e[a]&&(r[a].isOpen=!1,function t(i,e,n){for(var o=0;o<r[i].children.length;o++)r[r[i].children[o]].left=e,r[r[i].children[o]].top=n,r[r[i].children[o]].show=!1,t(r[i].children[o],e,n)}(a,r[a].left,r[a].top));return{node:r,root:o,size:_,deep:h+1}}(t,this.__config,i)},t}(),Q=function(t){function i(){var i=null!==t&&t.apply(this,arguments)||this;return i.name="TreeLayout",i.__option={offsetX:0,offsetY:0,duration:500,type:"plain",direction:"LR",x:100,y:100,width:100,height:100,radius:100},i.__noOpens={},i}return u(i,t),i.prototype.setOption=function(t){return G(t,this.__option),this},i.prototype.use=function(i,e){void 0===e&&(e={});var n=t.prototype.use.call(this,i,e);if(0!=this.__option.offsetX||0!=this.__option.offsetY)for(var r in n.node)if(!n.node[r].show){var s=0,_=r;do{_=n.node[_].pid,s++}while(!n.node[_].show);n.node[r].left+=this.__option.offsetX*s,n.node[r].top+=this.__option.offsetY*s}if("rect"==this.__option.type){if("LR"==this.__option.direction||"RL"==this.__option.direction){var h=this.__option.height/n.size,a=this.__option.width/(n.deep-1),u=this.__option.y-.5*this.__option.height,l="LR"==this.__option.direction?1:-1;for(var r in n.node)1==n.deep?(n.node[r].left=this.__option.x+.5*this.__option.width*l,n.node[r].top=this.__option.y):(n.node[r].left=this.__option.x+(n.node[r].left-.5)*a*l,n.node[r].top=n.node[r].top*h+u)}else if("TB"==this.__option.direction||"BT"==this.__option.direction)for(var r in h=this.__option.width/n.size,a=this.__option.height/(n.deep-1),u=this.__option.x-.5*this.__option.width,l="TB"==this.__option.direction?1:-1,n.node)if(1==n.deep)n.node[r].left=this.__option.x,n.node[r].top=this.__option.y+.5*this.__option.height*l;else{var p=n.node[r].left;n.node[r].left=n.node[r].top*h+u,n.node[r].top=this.__option.y+(p-.5)*a*l}}else if("circle"==this.__option.type){var f=this.__option.x,c=this.__option.y,d=2*Math.PI/n.size,g=this.__option.radius/(n.deep-1);for(var r in n.node)if(.5==n.node[r].left)n.node[r].left=f,n.node[r].top=c;else{var v=o(f,c,d*n.node[r].top,f+(n.node[r].left-.5)*g,c);n.node[r].left=v[0],n.node[r].top=v[1]}}return n},i.prototype.bind=function(t,i,e){return void 0===e&&(e={}),this.__rback=i,this.__oralTree=t,this.__noOpens=e,this.__preTree=this.use(this.__oralTree,this.__noOpens),this.__rback(this.__preTree),this},i.prototype.unbind=function(){return this.__rback=function(){return null},this.__oralTree=null,this.__preTree=null,this.__noOpens={},this},i.prototype.doUpdate=function(){var t=this,i=this.use(this.__oralTree,this.__noOpens),e=JSON.parse(JSON.stringify(i));h((function(n){if(t.__preTree)for(var r in e.node)(i.node[r].show||t.__preTree.node[r].show)&&(e.node[r].show=!0,e.node[r].left=t.__preTree.node[r].left+(i.node[r].left-t.__preTree.node[r].left)*n,e.node[r].top=t.__preTree.node[r].top+(i.node[r].top-t.__preTree.node[r].top)*n);t.__rback(e)}),this.__option.duration,(function(){t.__preTree=i,t.__rback(t.__preTree)}))},i.prototype.closeNode=function(t){return this.__preTree?(this.__noOpens[t]=!0,this.doUpdate(),this):this},i.prototype.openNode=function(t){return this.__preTree?(this.__noOpens[t]=!1,this.doUpdate(),this):this},i.prototype.toggleNode=function(t){return this.__preTree?(this.__noOpens[t]=!this.__noOpens[t],this.doUpdate(),this):this},i}(Z),K={Cardinal:i,Hermite:t,Matrix4:r,rotate:o,move:function(t,i,e,n,r){var o=Math.sqrt(t*t+i*i);return[t*e/o+n,i*e/o+r]},scale:function(t,i,e,n,r){return[e*(n-t)+t,e*(r-i)+i]},getLoopColors:function(t,i,e){void 0===i&&(i=1);var n=e?e(i):["rgba(84,112,198,"+i+")","rgba(145,204,117,"+i+")","rgba(250,200,88,"+i+")","rgba(238,102,102,"+i+")","rgba(115,192,222,"+i+")","rgba(59,162,114,"+i+")","rgba(252,132,82,"+i+")","rgba(154,96,180,"+i+")","rgba(234,124,204,"+i+")"],r=[];if(t<=n.length)return n;if(t%n.length==0)for(var o=0;o<t/n.length;o++)r=r.concat(n);else{for(var s=1;s<t/n.length;s++)r=r.concat(n);if(t%n.length==1)r=r.concat(n[4]);else for(var _=0;_<t%n.length;_++)r=r.concat(n[_])}return r},animation:h,ruler:function(t,i,e,n){if(t<i){var r=i;i=t,t=r}else if(t==i)return[t];var o=function(t){for(var i=t<100&&t>-100?10:.1,e=-1,n=t;10==i?n>=-100&&n<=100:n<=-100||n>=100;)e+=1,n*=i;if(10==i)return Math.pow(10,e);for(var r="0.",o=1;o<e;o++)r+="0";return+(r+"1")}(t-i),s=Math.ceil((t-i)*o/e),_=function(e){var n=({3:2,4:5,6:5,7:5,8:10,9:10,11:10,12:10,13:15,14:15,16:15,17:15,18:20,19:20,21:20,22:20,23:25,24:25,26:25,27:25}[s+e]||s+e)/o,r=Math.floor(i/n)*n,_=[];_.push(r);for(var h=1;_[_.length-1]<t;h++)_.push(r+n*h);return _},h=_(0),a=function(){for(var t=[],e=h[h.length-1]-(null==n?void 0:n.max),r=0;r<h.length;r++)r+1<h.length&&h[r+1]-e<i||t.push(h[r]-e);return t},u=function(){for(var i=[],e=h[0]-(null==n?void 0:n.min),r=0;r<h.length&&(i[r]=h[r]-e,!(t<=i[r]));r++);return i};if(n){if("max"in n&&"min"in n&&n.max>=t&&n.min<=i){var l=function(){if(h[0]>=n.min&&h[h.length-1]<=n.max)return!0;var t=a();if(t[0]>=n.min&&t[t.length-1]<=n.max)return h=t,!0;var i=u();return i[0]>=n.min&&i[t.length-1]<=n.max?(h=i,!0):void 0};if(l())return h;for(var p=1;p<100;p++){if(h=_(p),l())return h;if(h=_(-p),l())return h}}"max"in n&&n.max>=t?n.max<h[h.length-1]&&(h=a()):"min"in n&&n.min<=i&&n.min>h[0]&&(h=u())}for(var f=0;f<h.length;f++){var c=h[f]+"";/\./.test(c)&&(/9{7,}$/.test(c)?(c=c.replace(/9{7,}$/,""),h[f]=+(c.substring(0,c.length-1)+(+c[c.length-1]+1))):/0{7,}\d$/.test(c)&&(h[f]=+c.replace(/0{7,}\d$/,"")))}return h},SVG:M,Canvas:H,RawCanvas:F,getWebGLContext:function(t,i,e){if(void 0===i&&(i=1),!t)throw new Error("VISLite getWebGLContext:The mount point requires an HTMLElement type but encountered null.");var n,r=t.clientWidth,o=t.clientHeight,s=t;return s._vislite_canvas_?n=s._vislite_canvas_:(n=document.createElement("canvas"),t.appendChild(n),s._vislite_canvas_=n,t.setAttribute("vislite","WebGL")),n.style.width=r+"px",n.setAttribute("width",r+""),n.style.height=o+"px",n.setAttribute("height",o+""),function(t,i,e,n){void 0===e&&(e={}),void 0===n&&(n="scaleToFill");for(var r=["experimental-webgl","webkit-3d","moz-webgl"],o=t.getContext("webgl",e),s=0;s<r.length;s++){try{o=t.getContext(r[s],e)}catch(t){}if(o)break}if(!o)throw new Error("Non canvas or browser does not support webgl.");var _=o.canvas.width,h=o.canvas.height,a=i,u=i;"aspectFit"==n?_>h?a*=h/_:h>_&&(u*=_/h):"aspectFill"==n&&(_>h?u*=_/h:h>_&&(a*=h/_));var l=_*a,p=h*u;return o.viewport(.5*(_-l),.5*(h-p),l,p),o.depthFunc(o.LEQUAL),o.enable(o.DEPTH_TEST),o}(n,i,{},e)},Shader:j,Texture:q,Buffer:W,Eoap:J,Mercator:$,throttle:function(t,i){var e={time:200,keep:!1,opportunity:"end"};if(i)for(var n in i)e[n]=i[n];var r,o=!1,s=!1,_=!1;return function(){const i=this;if(r=arguments,o)s=!0,_=!0;else{"end"!=e.opportunity&&t.apply(i,r),o=!0;var n=setInterval((()=>{s?e.keep||t.apply(i,r):("begin"!=e.opportunity&&(_||"end"==e.opportunity)&&t.apply(i,r),o=!1,_=!1,clearInterval(n)),s=!1}),e.time)}}},assemble:N,TreeLayout:Q,initOption:G,mergeOption:function(t,i){!function t(i,e){for(var n in e){var r=e[n];D(r)?(i[n]||(i[n]={}),t(i[n],e[n])):i[n]=r}}(t,i)}};return K},"object"==typeof exports&&"undefined"!=typeof module?module.exports=i():"function"==typeof define&&define.amd?define(i):(t="undefined"!=typeof globalThis?globalThis:t||self).VISLite=i();
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * initOption of VISLite JavaScript Library v1.2.0-alpha.7
2
+ * initOption of VISLite JavaScript Library v1.2.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  function initOption(setOption, defaultOption) {
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * initOption of VISLite JavaScript Library v1.2.0-alpha.7
2
+ * initOption of VISLite JavaScript Library v1.2.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  function r(r,n){for(var t in r)n[t]=r[t];return n}export{r as default};
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * mergeOption of VISLite JavaScript Library v1.2.0-alpha.7
2
+ * mergeOption of VISLite JavaScript Library v1.2.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  var toString = Object.prototype.toString;
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * mergeOption of VISLite JavaScript Library v1.2.0-alpha.7
2
+ * mergeOption of VISLite JavaScript Library v1.2.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  var t=Object.prototype.toString;function e(e){if(null===e||"object"!=typeof e||"[object Object]"!=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":t.call(e)}(e))return!1;if(null===Object.getPrototypeOf(e))return!0;for(var o=e;null!==Object.getPrototypeOf(o);)o=Object.getPrototypeOf(o);return Object.getPrototypeOf(e)===o}function o(t,o){!function t(o,r){for(var n in r){var c=r[n];e(c)?(o[n]||(o[n]={}),t(o[n],r[n])):o[n]=c}}(t,o)}export{o as default};
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * move of VISLite JavaScript Library v1.2.0-alpha.7
2
+ * move of VISLite JavaScript Library v1.2.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  function move (ax, ay, d, x, y) {
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * move of VISLite JavaScript Library v1.2.0-alpha.7
2
+ * move of VISLite JavaScript Library v1.2.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  function t(t,r,a,e,n){var u=Math.sqrt(t*t+r*r);return[t*a/u+e,r*a/u+n]}export{t as default};
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * rotate of VISLite JavaScript Library v1.2.0-alpha.7
2
+ * rotate of VISLite JavaScript Library v1.2.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  function rotate (cx, cy, deg, x, y) {