ice-render 0.0.1 → 0.0.4
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.
- package/README.md +5 -1
- package/dist/index.cjs.js +25 -1
- package/dist/index.esm.js +25 -1
- package/dist/index.umd.js +25 -1
- package/package.json +34 -15
- package/dist/index.cjs.js.map +0 -1
- package/dist/index.esm.js.map +0 -1
- package/dist/index.umd.js.map +0 -1
- package/dist/types/core/FrameController.d.ts +0 -11
- package/dist/types/core/RenderList.d.ts +0 -0
- package/dist/types/core/Timeline.d.ts +0 -0
- package/dist/types/core/Tween.d.ts +0 -0
- package/dist/types/index.d.ts +0 -3
- package/dist/types/temp/test.d.ts +0 -1
package/dist/index.umd.js
CHANGED
|
@@ -1 +1,25 @@
|
|
|
1
|
-
!function(t){"function"==typeof define&&define.amd?define(t):t()}((function(){"use strict";function t(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function e(e){for(var n=1;n<arguments.length;n++){var r=null!=arguments[n]?arguments[n]:{};n%2?t(Object(r),!0).forEach((function(t){o(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):t(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function r(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function i(t,e,n){return e&&r(t.prototype,e),n&&r(t,n),t}function o(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function a(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&u(t,e)}function s(t){return(s=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function u(t,e){return(u=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function c(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function l(t,e){if(e&&("object"==typeof e||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return c(t)}function h(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,r=s(t);if(e){var i=s(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return l(this,n)}}function f(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=s(t)););return t}function v(){return(v="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){var r=f(t,e);if(r){var i=Object.getOwnPropertyDescriptor(r,e);return i.get?i.get.call(arguments.length<3?t:n):i.value}}).apply(this,arguments)}var d="BEFORE_RENDER",p="AFTER_RENDER",y="BEFORE_ADD",g="AFTER_ADD",b="BEFORE_REMOVE",x="AFTER_REMOVE",O=Array.isArray,m="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function w(t,e){return t(e={exports:{}},e.exports),e.exports}var M="object"==typeof m&&m&&m.Object===Object&&m,P="object"==typeof self&&self&&self.Object===Object&&self,k=M||P||Function("return this")(),_=k.Symbol,D=Object.prototype,j=D.hasOwnProperty,S=D.toString,E=_?_.toStringTag:void 0;var R=function(t){var e=j.call(t,E),n=t[E];try{t[E]=void 0;var r=!0}catch(t){}var i=S.call(t);return r&&(e?t[E]=n:delete t[E]),i},T=Object.prototype.toString;var B=function(t){return T.call(t)},A=_?_.toStringTag:void 0;var N=function(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":A&&A in Object(t)?R(t):B(t)};var C=function(t){return null!=t&&"object"==typeof t};var L=function(t){return"symbol"==typeof t||C(t)&&"[object Symbol]"==N(t)},z=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,F=/^\w*$/;var I=function(t,e){if(O(t))return!1;var n=typeof t;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=t&&!L(t))||(F.test(t)||!z.test(t)||null!=e&&t in Object(e))};var X=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)};var Y,H=function(t){if(!X(t))return!1;var e=N(t);return"[object Function]"==e||"[object GeneratorFunction]"==e||"[object AsyncFunction]"==e||"[object Proxy]"==e},U=k["__core-js_shared__"],$=(Y=/[^.]+$/.exec(U&&U.keys&&U.keys.IE_PROTO||""))?"Symbol(src)_1."+Y:"";var q=function(t){return!!$&&$ in t},W=Function.prototype.toString;var G=function(t){if(null!=t){try{return W.call(t)}catch(t){}try{return t+""}catch(t){}}return""},V=/^\[object .+?Constructor\]$/,J=Function.prototype,K=Object.prototype,Q=J.toString,Z=K.hasOwnProperty,tt=RegExp("^"+Q.call(Z).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");var et=function(t){return!(!X(t)||q(t))&&(H(t)?tt:V).test(G(t))};var nt=function(t,e){return null==t?void 0:t[e]};var rt=function(t,e){var n=nt(t,e);return et(n)?n:void 0},it=rt(Object,"create");var ot=function(){this.__data__=it?it(null):{},this.size=0};var at=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e},st=Object.prototype.hasOwnProperty;var ut=function(t){var e=this.__data__;if(it){var n=e[t];return"__lodash_hash_undefined__"===n?void 0:n}return st.call(e,t)?e[t]:void 0},ct=Object.prototype.hasOwnProperty;var lt=function(t){var e=this.__data__;return it?void 0!==e[t]:ct.call(e,t)};var ht=function(t,e){var n=this.__data__;return this.size+=this.has(t)?0:1,n[t]=it&&void 0===e?"__lodash_hash_undefined__":e,this};function ft(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}ft.prototype.clear=ot,ft.prototype.delete=at,ft.prototype.get=ut,ft.prototype.has=lt,ft.prototype.set=ht;var vt=ft;var dt=function(){this.__data__=[],this.size=0};var pt=function(t,e){return t===e||t!=t&&e!=e};var yt=function(t,e){for(var n=t.length;n--;)if(pt(t[n][0],e))return n;return-1},gt=Array.prototype.splice;var bt=function(t){var e=this.__data__,n=yt(e,t);return!(n<0)&&(n==e.length-1?e.pop():gt.call(e,n,1),--this.size,!0)};var xt=function(t){var e=this.__data__,n=yt(e,t);return n<0?void 0:e[n][1]};var Ot=function(t){return yt(this.__data__,t)>-1};var mt=function(t,e){var n=this.__data__,r=yt(n,t);return r<0?(++this.size,n.push([t,e])):n[r][1]=e,this};function wt(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}wt.prototype.clear=dt,wt.prototype.delete=bt,wt.prototype.get=xt,wt.prototype.has=Ot,wt.prototype.set=mt;var Mt=wt,Pt=rt(k,"Map");var kt=function(){this.size=0,this.__data__={hash:new vt,map:new(Pt||Mt),string:new vt}};var _t=function(t){var e=typeof t;return"string"==e||"number"==e||"symbol"==e||"boolean"==e?"__proto__"!==t:null===t};var Dt=function(t,e){var n=t.__data__;return _t(e)?n["string"==typeof e?"string":"hash"]:n.map};var jt=function(t){var e=Dt(this,t).delete(t);return this.size-=e?1:0,e};var St=function(t){return Dt(this,t).get(t)};var Et=function(t){return Dt(this,t).has(t)};var Rt=function(t,e){var n=Dt(this,t),r=n.size;return n.set(t,e),this.size+=n.size==r?0:1,this};function Tt(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}Tt.prototype.clear=kt,Tt.prototype.delete=jt,Tt.prototype.get=St,Tt.prototype.has=Et,Tt.prototype.set=Rt;var Bt=Tt;function At(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new TypeError("Expected a function");var n=function(){var r=arguments,i=e?e.apply(this,r):r[0],o=n.cache;if(o.has(i))return o.get(i);var a=t.apply(this,r);return n.cache=o.set(i,a)||o,a};return n.cache=new(At.Cache||Bt),n}At.Cache=Bt;var Nt=At;var Ct=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Lt=/\\(\\)?/g,zt=function(t){var e=Nt(t,(function(t){return 500===n.size&&n.clear(),t})),n=e.cache;return e}((function(t){var e=[];return 46===t.charCodeAt(0)&&e.push(""),t.replace(Ct,(function(t,n,r,i){e.push(r?i.replace(Lt,"$1"):n||t)})),e}));var Ft=function(t,e){for(var n=-1,r=null==t?0:t.length,i=Array(r);++n<r;)i[n]=e(t[n],n,t);return i},It=_?_.prototype:void 0,Xt=It?It.toString:void 0;var Yt=function t(e){if("string"==typeof e)return e;if(O(e))return Ft(e,t)+"";if(L(e))return Xt?Xt.call(e):"";var n=e+"";return"0"==n&&1/e==-1/0?"-0":n};var Ht=function(t){return null==t?"":Yt(t)};var Ut=function(t,e){return O(t)?t:I(t,e)?[t]:zt(Ht(t))};var $t=function(t){if("string"==typeof t||L(t))return t;var e=t+"";return"0"==e&&1/t==-1/0?"-0":e};var qt=function(t,e){for(var n=0,r=(e=Ut(e,t)).length;null!=t&&n<r;)t=t[$t(e[n++])];return n&&n==r?t:void 0};var Wt=function(t,e,n){var r=null==t?void 0:qt(t,e);return void 0===r?n:r};var Gt=function(){this.__data__=new Mt,this.size=0};var Vt=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n};var Jt=function(t){return this.__data__.get(t)};var Kt=function(t){return this.__data__.has(t)};var Qt=function(t,e){var n=this.__data__;if(n instanceof Mt){var r=n.__data__;if(!Pt||r.length<199)return r.push([t,e]),this.size=++n.size,this;n=this.__data__=new Bt(r)}return n.set(t,e),this.size=n.size,this};function Zt(t){var e=this.__data__=new Mt(t);this.size=e.size}Zt.prototype.clear=Gt,Zt.prototype.delete=Vt,Zt.prototype.get=Jt,Zt.prototype.has=Kt,Zt.prototype.set=Qt;var te=Zt,ee=function(){try{var t=rt(Object,"defineProperty");return t({},"",{}),t}catch(t){}}();var ne=function(t,e,n){"__proto__"==e&&ee?ee(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0}):t[e]=n};var re=function(t,e,n){(void 0!==n&&!pt(t[e],n)||void 0===n&&!(e in t))&&ne(t,e,n)};var ie=function(t){return function(e,n,r){for(var i=-1,o=Object(e),a=r(e),s=a.length;s--;){var u=a[t?s:++i];if(!1===n(o[u],u,o))break}return e}}(),oe=w((function(t,e){var n=e&&!e.nodeType&&e,r=n&&t&&!t.nodeType&&t,i=r&&r.exports===n?k.Buffer:void 0,o=i?i.allocUnsafe:void 0;t.exports=function(t,e){if(e)return t.slice();var n=t.length,r=o?o(n):new t.constructor(n);return t.copy(r),r}})),ae=k.Uint8Array;var se=function(t){var e=new t.constructor(t.byteLength);return new ae(e).set(new ae(t)),e};var ue=function(t,e){var n=e?se(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)};var ce=function(t,e){var n=-1,r=t.length;for(e||(e=Array(r));++n<r;)e[n]=t[n];return e},le=Object.create,he=function(){function t(){}return function(e){if(!X(e))return{};if(le)return le(e);t.prototype=e;var n=new t;return t.prototype=void 0,n}}();var fe=function(t,e){return function(n){return t(e(n))}}(Object.getPrototypeOf,Object),ve=Object.prototype;var de=function(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||ve)};var pe=function(t){return"function"!=typeof t.constructor||de(t)?{}:he(fe(t))};var ye=function(t){return C(t)&&"[object Arguments]"==N(t)},ge=Object.prototype,be=ge.hasOwnProperty,xe=ge.propertyIsEnumerable,Oe=ye(function(){return arguments}())?ye:function(t){return C(t)&&be.call(t,"callee")&&!xe.call(t,"callee")};var me=function(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991};var we=function(t){return null!=t&&me(t.length)&&!H(t)};var Me=function(t){return C(t)&&we(t)};var Pe=function(){return!1},ke=w((function(t,e){var n=e&&!e.nodeType&&e,r=n&&t&&!t.nodeType&&t,i=r&&r.exports===n?k.Buffer:void 0,o=(i?i.isBuffer:void 0)||Pe;t.exports=o})),_e=Function.prototype,De=Object.prototype,je=_e.toString,Se=De.hasOwnProperty,Ee=je.call(Object);var Re=function(t){if(!C(t)||"[object Object]"!=N(t))return!1;var e=fe(t);if(null===e)return!0;var n=Se.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&je.call(n)==Ee},Te={};Te["[object Float32Array]"]=Te["[object Float64Array]"]=Te["[object Int8Array]"]=Te["[object Int16Array]"]=Te["[object Int32Array]"]=Te["[object Uint8Array]"]=Te["[object Uint8ClampedArray]"]=Te["[object Uint16Array]"]=Te["[object Uint32Array]"]=!0,Te["[object Arguments]"]=Te["[object Array]"]=Te["[object ArrayBuffer]"]=Te["[object Boolean]"]=Te["[object DataView]"]=Te["[object Date]"]=Te["[object Error]"]=Te["[object Function]"]=Te["[object Map]"]=Te["[object Number]"]=Te["[object Object]"]=Te["[object RegExp]"]=Te["[object Set]"]=Te["[object String]"]=Te["[object WeakMap]"]=!1;var Be=function(t){return C(t)&&me(t.length)&&!!Te[N(t)]};var Ae=function(t){return function(e){return t(e)}},Ne=w((function(t,e){var n=e&&!e.nodeType&&e,r=n&&t&&!t.nodeType&&t,i=r&&r.exports===n&&M.process,o=function(){try{var t=r&&r.require&&r.require("util").types;return t||i&&i.binding&&i.binding("util")}catch(t){}}();t.exports=o})),Ce=Ne&&Ne.isTypedArray,Le=Ce?Ae(Ce):Be;var ze=function(t,e){if(("constructor"!==e||"function"!=typeof t[e])&&"__proto__"!=e)return t[e]},Fe=Object.prototype.hasOwnProperty;var Ie=function(t,e,n){var r=t[e];Fe.call(t,e)&&pt(r,n)&&(void 0!==n||e in t)||ne(t,e,n)};var Xe=function(t,e,n,r){var i=!n;n||(n={});for(var o=-1,a=e.length;++o<a;){var s=e[o],u=r?r(n[s],t[s],s,n,t):void 0;void 0===u&&(u=t[s]),i?ne(n,s,u):Ie(n,s,u)}return n};var Ye=function(t,e){for(var n=-1,r=Array(t);++n<t;)r[n]=e(n);return r},He=/^(?:0|[1-9]\d*)$/;var Ue=function(t,e){var n=typeof t;return!!(e=null==e?9007199254740991:e)&&("number"==n||"symbol"!=n&&He.test(t))&&t>-1&&t%1==0&&t<e},$e=Object.prototype.hasOwnProperty;var qe=function(t,e){var n=O(t),r=!n&&Oe(t),i=!n&&!r&&ke(t),o=!n&&!r&&!i&&Le(t),a=n||r||i||o,s=a?Ye(t.length,String):[],u=s.length;for(var c in t)!e&&!$e.call(t,c)||a&&("length"==c||i&&("offset"==c||"parent"==c)||o&&("buffer"==c||"byteLength"==c||"byteOffset"==c)||Ue(c,u))||s.push(c);return s};var We=function(t){var e=[];if(null!=t)for(var n in Object(t))e.push(n);return e},Ge=Object.prototype.hasOwnProperty;var Ve=function(t){if(!X(t))return We(t);var e=de(t),n=[];for(var r in t)("constructor"!=r||!e&&Ge.call(t,r))&&n.push(r);return n};var Je=function(t){return we(t)?qe(t,!0):Ve(t)};var Ke=function(t){return Xe(t,Je(t))};var Qe=function(t,e,n,r,i,o,a){var s=ze(t,n),u=ze(e,n),c=a.get(u);if(c)re(t,n,c);else{var l=o?o(s,u,n+"",t,e,a):void 0,h=void 0===l;if(h){var f=O(u),v=!f&&ke(u),d=!f&&!v&&Le(u);l=u,f||v||d?O(s)?l=s:Me(s)?l=ce(s):v?(h=!1,l=oe(u,!0)):d?(h=!1,l=ue(u,!0)):l=[]:Re(u)||Oe(u)?(l=s,Oe(s)?l=Ke(s):X(s)&&!H(s)||(l=pe(u))):h=!1}h&&(a.set(u,l),i(l,u,r,o,a),a.delete(u)),re(t,n,l)}};var Ze=function t(e,n,r,i,o){e!==n&&ie(n,(function(a,s){if(o||(o=new te),X(a))Qe(e,n,s,r,t,i,o);else{var u=i?i(ze(e,s),a,s+"",e,n,o):void 0;void 0===u&&(u=a),re(e,s,u)}}),Je)};var tn=function(t){return t};var en=function(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)},nn=Math.max;var rn=function(t,e,n){return e=nn(void 0===e?t.length-1:e,0),function(){for(var r=arguments,i=-1,o=nn(r.length-e,0),a=Array(o);++i<o;)a[i]=r[e+i];i=-1;for(var s=Array(e+1);++i<e;)s[i]=r[i];return s[e]=n(a),en(t,this,s)}};var on=function(t){return function(){return t}},an=ee?function(t,e){return ee(t,"toString",{configurable:!0,enumerable:!1,value:on(e),writable:!0})}:tn,sn=Date.now;var un=function(t){var e=0,n=0;return function(){var r=sn(),i=16-(r-n);if(n=r,i>0){if(++e>=800)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}(an);var cn=function(t,e){return un(rn(t,e,tn),t+"")};var ln=function(t,e,n){if(!X(n))return!1;var r=typeof e;return!!("number"==r?we(n)&&Ue(e,n.length):"string"==r&&e in n)&&pt(n[e],t)};var hn=function(t){return cn((function(e,n){var r=-1,i=n.length,o=i>1?n[i-1]:void 0,a=i>2?n[2]:void 0;for(o=t.length>3&&"function"==typeof o?(i--,o):void 0,a&&ln(n[0],n[1],a)&&(o=i<3?void 0:o,i=1),e=Object(e);++r<i;){var s=n[r];s&&t(e,s,r,o)}return e}))}((function(t,e,n){Ze(t,e,n)})),fn=window||global||{},vn=function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};for(var i in n(this,t),o(this,"originalEvent",void 0),o(this,"target",void 0),e)this[i]=e[i];for(var a in r)this[a]=r[a]},dn=function(){function t(){n(this,t),o(this,"listeners",{}),o(this,"suspendedEventNames",[])}return i(t,[{key:"on",value:function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:fn;this.listeners[t]||(this.listeners[t]=[]),this.off(t,e,n),this.listeners[t].push({callback:e,scope:n})}},{key:"off",value:function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:fn,r=this.listeners[t];if(r)for(var i=0;i<r.length;i++){var o=r[i];if(o.callback===e&&o.scope===n)return void this.listeners[t].splice(i,1)}}},{key:"once",value:function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:fn;function r(i){this.off(t,r,n),e.call(n,i)}this.on(t,r,n)}},{key:"trigger",value:function(t){var e,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return!!this.listeners[t]&&(!this.suspendedEventNames.includes(t)&&(n?(e=new vn(n)).originalEvent=n:e=new vn({type:t,timeStamp:(new Date).getTime()}),this.listeners[t].forEach((function(t){var n=t.callback,r=t.scope;n.call(r,e)})),!0))}},{key:"suspend",value:function(t,e){t&&!this.suspendedEventNames.includes(t)&&this.suspendedEventNames.push(t),e&&(e.prototype.suspended=!0)}},{key:"resume",value:function(t,e){t&&this.suspendedEventNames.includes(t)&&this.suspendedEventNames.splice(this.suspendedEventNames.findIndex(t),1),e&&(e.prototype.suspended=!1)}},{key:"purge",value:function(){this.listeners={}}}]),t}();dn.prototype.addEventListener=dn.prototype.on,dn.prototype.removeEventListener=dn.prototype.off,dn.prototype.dispatchEvent=dn.prototype.trigger;var pn=/\s/;var yn=function(t){for(var e=t.length;e--&&pn.test(t.charAt(e)););return e},gn=/^\s+/;var bn=function(t){return t?t.slice(0,yn(t)+1).replace(gn,""):t},xn=/^[-+]0x[0-9a-f]+$/i,On=/^0b[01]+$/i,mn=/^0o[0-7]+$/i,wn=parseInt;var Mn=function(t){if("number"==typeof t)return t;if(L(t))return NaN;if(X(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=X(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=bn(t);var n=On.test(t);return n||mn.test(t)?wn(t.slice(2),n?2:8):xn.test(t)?NaN:+t};var Pn=function(t){return t?(t=Mn(t))===1/0||t===-1/0?17976931348623157e292*(t<0?-1:1):t==t?t:0:0===t?t:0};var kn=function(t){var e=Pn(t),n=e%1;return e==e?n?e-n:e:0},_n=k.isFinite,Dn=Math.min;var jn=function(t){var e=Math[t];return function(t,n){if(t=Mn(t),(n=null==n?0:Dn(kn(n),292))&&_n(t)){var r=(Ht(t)+"e").split("e"),i=e(r[0]+"e"+(+r[1]+n));return+((r=(Ht(i)+"e").split("e"))[0]+"e"+(+r[1]-n))}return e(t)}}("round"),Sn=function(){function t(){throw n(this,t),new Error("GeoUtil is a static util class.")}return i(t,null,[{key:"containsPoint",value:function(t,e){return!1}},{key:"isIntersect",value:function(t,e){return!1}},{key:"getLength",value:function(t,e,n,r){return Math.sqrt((n-t)*(n-t)+(r-e)*(r-e))}},{key:"calcRotateAngle",value:function(t,e,n,r){var i=t-n,o=e-r,a=i/Math.sqrt(i*i+o*o),s=(o/Math.sqrt(i*i+o*o)<0?-1:1)*Math.acos(a)*180/Math.PI+360;return s%=360}},{key:"crossProduct",value:function(t,e,n,r){return jn(t*r-n*e,2)}},{key:"dotProduct",value:function(t,e,n,r){return jn(t*n+e*r,2)}}]),t}(),En=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[0,0,0,0,0,0,0,0,0,0];n(this,t),o(this,"tl",new DOMPoint),o(this,"tr",new DOMPoint),o(this,"bl",new DOMPoint),o(this,"br",new DOMPoint),o(this,"center",new DOMPoint),this.tl=new DOMPoint(e[0],e[1]),this.tr=new DOMPoint(e[2],e[3]),this.bl=new DOMPoint(e[4],e[5]),this.br=new DOMPoint(e[6],e[7]),this.center=new DOMPoint(e[8],e[9])}return i(t,[{key:"clone",value:function(){var e=DOMPoint.fromPoint(this.tl),n=DOMPoint.fromPoint(this.tr),r=DOMPoint.fromPoint(this.bl),i=DOMPoint.fromPoint(this.br),o=DOMPoint.fromPoint(this.center);return new t([e.x,e.y,n.x,n.y,r.x,r.y,i.x,i.y,o.x,o.y])}},{key:"containsPoint",value:function(t){var e=this.getMinAndMaxPoint(),n=e.minX,r=e.minY,i=e.maxX,o=e.maxY;if(t.x<n||t.x>i||t.y<r||t.y>o)return!1;for(var a,s=0,u=this.getBoundingLines(),c=0;c<u.length;c++){var l=u[c];if(!(t.y>l.o.y&&t.y>l.d.y)&&!(t.y<l.o.y&&t.y<l.d.y)){if(l.o.x===l.d.x&&l.o.x>=t.x)a=l.o.x;else{var h=(l.d.y-l.o.y)/(l.d.x-l.o.x);a=l.o.x+(t.y-l.o.y)/h}a>t.x&&s++}}return 0!==s&&s%2==1}},{key:"getBoundingLines",value:function(){return[{o:DOMPoint.fromPoint(this.tl),d:DOMPoint.fromPoint(this.tr)},{o:DOMPoint.fromPoint(this.tr),d:DOMPoint.fromPoint(this.br)},{o:DOMPoint.fromPoint(this.br),d:DOMPoint.fromPoint(this.bl)},{o:DOMPoint.fromPoint(this.bl),d:DOMPoint.fromPoint(this.tl)}]}},{key:"getMinAndMaxPoint",value:function(){var t=this.tl.x,e=this.tl.y,n=this.tl.x,r=this.tl.y;return[this.tr,this.bl,this.br].forEach((function(i){i.x<t&&(t=i.x),i.x>n&&(n=i.x),i.y<e&&(e=i.y),i.y>r&&(r=i.y)})),{minX:t,minY:e,maxX:n,maxY:r}}},{key:"containsBox",value:function(t){return!1}},{key:"isIntersect",value:function(t){var e=this.tl.x,n=this.br.x,r=this.tl.y,i=this.br.y,o=t.tl.x,a=t.br.x,s=t.tl.y,u=t.br.y,c=!(e>a||r>u||n<o||i<s);return c}},{key:"transform",value:function(e){var n=DOMPoint.fromPoint(this.tl).matrixTransform(e),r=DOMPoint.fromPoint(this.tr).matrixTransform(e),i=DOMPoint.fromPoint(this.bl).matrixTransform(e),o=DOMPoint.fromPoint(this.br).matrixTransform(e),a=DOMPoint.fromPoint(this.center).matrixTransform(e);return new t([n.x,n.y,r.x,r.y,i.x,i.y,o.x,o.y,a.x,a.y])}},{key:"union",value:function(t){return null}},{key:"width",get:function(){return Sn.getLength(this.br.x,this.br.y,this.bl.x,this.bl.y)}},{key:"height",get:function(){return Sn.getLength(this.br.x,this.br.y,this.tr.x,this.tr.y)}},{key:"left",get:function(){return this.tl.x},set:function(t){throw new Error("Can not set left to ICEBoundingBox directly.")}},{key:"top",get:function(){return this.tl.y},set:function(t){throw new Error("Can not set top to ICEBoundingBox directly.")}},{key:"centerX",get:function(){return this.center.x}},{key:"centerY",get:function(){return this.center.y}},{key:"centerPoint",get:function(){return this.center}}],[{key:"fromDimension",value:function(e,n,r,i){return new t([].concat([e,n],[e+r,n],[e,n+i],[e+r,n+i],[e+r/2,n+i/2]))}}]),t}(),Rn=function(){function t(){n(this,t)}return i(t,null,[{key:"calcRotateAngleFromMatrix",value:function(t){var e=0,n=t.a,r=t.b,i=r/Math.sqrt(n*n+r*r),o=n/Math.sqrt(n*n+r*r);return e=Math.acos(o),i<0&&(e+=Math.PI/2),e*(180/Math.PI)}},{key:"calcScaleFromMatrix",value:function(t){return[Math.sqrt(t.a*t.a+t.b*t.b)/t.a,Math.sqrt(t.c*t.c+t.d*t.d)/t.d]}}]),t}(),Tn=function(t){a(s,t);var r=h(s);function s(){var t,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return n(this,s),o(c(t=r.call(this)),"root",void 0),o(c(t),"ctx",void 0),o(c(t),"evtBus",void 0),o(c(t),"parentNode",void 0),o(c(t),"props",{id:"ICE_"+Math.floor(1e10*Math.random()),left:0,top:0,width:0,height:0,style:{fillStyle:"red",strokeStyle:"blue",lineWidth:1},animations:{},transform:{translate:[0,0],scale:[1,1],skew:[0,0],rotate:0},translationMatrix:new DOMMatrix,linearMatrix:new DOMMatrix,composedMatrix:new DOMMatrix,origin:"localCenter",localOrigin:new DOMPoint(0,0),absoluteOrigin:new DOMPoint(0,0),zIndex:s.instanceCounter++,isRendering:!1,display:!0,draggable:!0,transformable:!0,linkable:!0,interactive:!0,showMinBoundingBox:!0,showMaxBoundingBox:!0}),o(c(t),"state",e({},t.props)),t.props=hn(t.props,i),t.state=JSON.parse(JSON.stringify(t.props)),t.initEvents(),t}return i(s,[{key:"render",value:function(){this.state.isRendering=!0,this.calcOriginalDimension(),this.applyStyle(),this.applyTransformToCtx(),this.doRender(),this.ctx.setTransform(new DOMMatrix),this.state.isRendering=!1}},{key:"applyStyle",value:function(){Object.assign(this.ctx,e(e({},this.props.style),this.state.style))}},{key:"calcOriginalDimension",value:function(){return{width:this.state.width,height:this.state.height}}},{key:"calcLocalOrigin",value:function(){var t=new DOMPoint(0,0),e=this.state.origin;if(!e||"localCenter"===e){var n=this.state.width/2,r=this.state.height/2;t.x=n,t.y=r}return this.state.localOrigin=t,t}},{key:"calcAbsoluteOrigin",value:function(){var t=Wt(this,"state.transform.translate.0")+this.state.left,e=Wt(this,"state.transform.translate.1")+this.state.top,n=DOMPoint.fromPoint(this.calcLocalOrigin());if(n.x+=t,n.y+=e,this.parentNode){var r=this.parentNode.state.localOrigin.x,i=this.parentNode.state.localOrigin.y;n=n.matrixTransform(new DOMMatrix([1,0,0,1,-r,-i]));var o=this.parentNode.state.composedMatrix;n=n.matrixTransform(o)}return this.state.absoluteOrigin=n,n}},{key:"calcLinearMatrix",value:function(){var t=new DOMMatrix,e=Wt(this,"state.transform.skew.0"),n=Wt(this,"state.transform.skew.1");t.skewXSelf(e),t.skewYSelf(n);var r=Wt(this,"state.transform.rotate");t.rotateSelf(r);var i=Wt(this,"state.transform.scale.0"),o=Wt(this,"state.transform.scale.1");return t.scaleSelf(i,o),this.state.linearMatrix=t,t}},{key:"calcAbsoluteLinearMatrix",value:function(){for(var t=this,e=DOMMatrix.fromMatrix(t.calcLinearMatrix());t.parentNode;)e.multiplySelf(t.parentNode.state.linearMatrix),t=t.parentNode;return this.state.absoluteLinearMatrix=DOMMatrix.fromMatrix(e),e}},{key:"composeMatrix",value:function(){var t=this.calcAbsoluteOrigin(),e=new DOMMatrix([1,0,0,1,t.x,t.y]),n=this.calcAbsoluteLinearMatrix(),r=e.multiplySelf(n);return this.state.composedMatrix=DOMMatrix.fromMatrix(r),r}},{key:"applyTransformToCtx",value:function(){this.ctx.setTransform(this.composeMatrix())}},{key:"doRender",value:function(){if(this.state.showMinBoundingBox){var t=this.getMinBoundingBox();this.ctx.setTransform(new DOMMatrix),this.ctx.lineWidth=1,this.ctx.strokeStyle="#ff0000",this.ctx.fillStyle="rgba(0,0,0,0)",this.ctx.beginPath(),this.ctx.moveTo(t.tl.x,t.tl.y),this.ctx.lineTo(t.tr.x,t.tr.y),this.ctx.lineTo(t.br.x,t.br.y),this.ctx.lineTo(t.bl.x,t.bl.y),this.ctx.closePath(),this.ctx.stroke(),this.ctx.fill()}if(this.state.showMaxBoundingBox){var e=this.getMaxBoundingBox();this.ctx.setTransform(new DOMMatrix),this.ctx.lineWidth=1,this.ctx.strokeStyle="#0000ff",this.ctx.fillStyle="rgba(0,0,0,0)",this.ctx.beginPath(),this.ctx.moveTo(e.tl.x,e.tl.y),this.ctx.lineTo(e.tr.x,e.tr.y),this.ctx.lineTo(e.br.x,e.br.y),this.ctx.lineTo(e.bl.x,e.bl.y),this.ctx.closePath(),this.ctx.stroke(),this.ctx.fill()}}},{key:"getMinBoundingBox",value:function(){var t=this.state.localOrigin.x,e=this.state.localOrigin.y,n=this.state.width,r=this.state.height,i=new En([0-t,0-e,0-t+n,0-e,0-t,0-e+r,0-t+n,0-e+r,0,0]);return i=i.transform(this.composeMatrix())}},{key:"getMaxBoundingBox",value:function(){var t=this.getMinBoundingBox(),e=t.getMinAndMaxPoint(),n=e.minX,r=e.minY,i=e.maxX,o=e.maxY,a=t.centerPoint;return t=new En([n,r,i,r,n,o,i,o,a.x,a.y])}},{key:"setState",value:function(t){hn(this.state,t)}},{key:"setPosition",value:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:new vn;this.trigger("before-move",e(e({},r),{},{left:t,top:n})),this.setState({left:t,top:n}),this.trigger("after-move",e(e({},r),{},{left:t,top:n}))}},{key:"moveGlobalPosition",value:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:new vn;if(this.parentNode){var i=new DOMPoint(t,n),o=this.parentNode.state.absoluteLinearMatrix.inverse();t=(i=i.matrixTransform(o)).x,n=i.y}this.setPosition(this.state.left+t,this.state.top+n,e(e({},r),{},{tx:t,ty:n}))}},{key:"setGlobalPosition",value:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:new vn;if(this.parentNode){var i=new DOMPoint(t,n),o=this.parentNode.state.absoluteLinearMatrix.inverse();t=(i=i.matrixTransform(o)).x,n=i.y}this.setPosition(t,n,e(e({},r),{},{left:t,top:n}))}},{key:"setGlobalRotate",value:function(t){if(this.parentNode){var e=this.parentNode.state.absoluteLinearMatrix;t-=Rn.calcRotateAngleFromMatrix(e)}this.setState({transform:{rotate:t}})}},{key:"localToGlobal",value:function(t,e){var n=new DOMPoint(t,e),r=this.state.composedMatrix;return n=n.matrixTransform(r)}},{key:"globalToLocal",value:function(t,e){var n=new DOMPoint(t,e),r=this.state.composedMatrix.inverse();return n=n.matrixTransform(r)}},{key:"getRotateAngle",value:function(){var t=this.state.composedMatrix;return Rn.calcRotateAngleFromMatrix(t)}},{key:"getLocalLeftTop",value:function(){var t=this.getMinBoundingBox(),e=t.width,n=t.height;return{left:t.centerX-t.width/2,top:t.centerY-t.height/2,width:e,height:n}}},{key:"toJSON",value:function(){return"{}"}},{key:"fromJSON",value:function(t){return{}}},{key:"destory",value:function(){}}]),s}(dn);o(Tn,"instanceCounter",0);var Bn=function(t){a(u,t);var r=h(u);function u(){var t,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return n(this,u),o(c(t=r.call(this,e({closePath:!0},i))),"path2D",new Path2D),t}return i(u,[{key:"initEvents",value:function(){}},{key:"doRender",value:function(){this.createPathObject(),this.ctx.beginPath(),this.state.closePath&&this.ctx.fill(this.path2D),this.ctx.stroke(this.path2D),v(s(u.prototype),"doRender",this).call(this)}}]),u}(Tn),An=function(t){a(o,t);var r=h(o);function o(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return n(this,o),r.call(this,e({width:10,height:10},t))}return i(o,[{key:"calcDots",value:function(){var t=new DOMPoint(0,0),e=new DOMPoint(this.state.width,0),n=new DOMPoint(this.state.width,this.state.height),r=new DOMPoint(0,this.state.height);return this.state.dots=[t,e,n,r],this.state.dots}}]),o}(function(t){a(o,t);var r=h(o);function o(t){return n(this,o),r.call(this,e({dots:[],closePath:!0},t))}return i(o,[{key:"calcOriginalDimension",value:function(){this.calcDots();var t=this.calc4VertexPoints(),e=Math.abs(t[1].x-t[0].x),n=Math.abs(t[2].y-t[0].y);return this.state.width=e,this.state.height=n,{width:this.state.width,height:this.state.height}}},{key:"calcLocalOrigin",value:function(){for(var t=v(s(o.prototype),"calcLocalOrigin",this).call(this),e=0;e<this.state.dots.length;e++){var n=this.state.dots[e];n=n.matrixTransform(new DOMMatrix([1,0,0,1,-t.x,-t.y])),this.state.dots[e]=n}return t}},{key:"createPathObject",value:function(){this.path2D=new Path2D;for(var t=0;t<this.state.dots.length;t++){var e=this.state.dots[t];0===t?this.path2D.moveTo(e.x,e.y):this.path2D.lineTo(e.x,e.y)}return this.state.closePath&&this.path2D.closePath(),this.path2D}},{key:"calcDots",value:function(){return this.state.dots=[],this.state.dots}},{key:"calc4VertexPoints",value:function(){for(var t=0,e=0,n=0,r=0,i=0;i<this.state.dots.length;i++){var o=this.state.dots[i];0===i?(t=o.x,n=o.x,e=o.y,r=o.y):(o.x<t&&(t=o.x),o.x>n&&(n=o.x),o.y<e&&(e=o.y),o.y>r&&(r=o.y))}var a=n,s=e,u=t,c=r,l=n,h=r;return[new DOMPoint(t,e),new DOMPoint(a,s),new DOMPoint(u,c),new DOMPoint(l,h)]}}]),o}(Bn)),Nn=function(t){a(r,t);var e=h(r);function r(t){var i;return n(this,r),o(c(i=e.call(this,t)),"parentNode",null),o(c(i),"childNodes",[]),i}return i(r,[{key:"addChild",value:function(t){t.trigger(y),t.parentNode=this,this.childNodes.push(t),t.trigger(g)}},{key:"addChildren",value:function(t){var e=this;t.forEach((function(t){e.addChild(t)}))}},{key:"removeChild",value:function(t){t.trigger(b),t.parentNode=null,t.root=null,t.ctx=null,t.evtBus=null,this.childNodes.splice(this.childNodes.indexOf(t),1),t.trigger(x)}},{key:"removeChildren",value:function(t){var e=this;t.forEach((function(t){e.removeChild(t)}))}},{key:"renderChildren",value:function(){var t=this;this.childNodes.forEach((function(e){e.root=t.root,e.ctx=t.ctx,e.evtBus=t.evtBus,e.trigger(d),e.state.isRendering||e.state.display&&(e.render(),e.trigger(p))}))}},{key:"render",value:function(){v(s(r.prototype),"render",this).call(this),this.renderChildren()}}]),r}(An);var Cn=function(t){return null==t},Ln=function(t){a(i,t);var r=h(i);function i(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};n(this,i);var o=e({radius:10},t);return o.radiusX=o.radius,o.radiusY=o.radius,r.call(this,o)}return i}(function(t){a(o,t);var r=h(o);function o(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};n(this,o);var i=e({radiusX:20,radiusY:10,rotation:0,startAngle:0,endAngle:2*Math.PI,counterclockwise:!0},t);return i.width=2*i.radiusX,i.height=2*i.radiusY,r.call(this,i)}return i(o,[{key:"createPathObject",value:function(){return this.path2D=new Path2D,this.path2D.ellipse(this.state.radiusX-this.state.localOrigin.x,this.state.radiusY-this.state.localOrigin.y,this.state.radiusX,this.state.radiusY,this.state.rotation,this.state.startAngle,this.state.endAngle,this.state.counterclockwise),this.path2D.closePath(),this.path2D}},{key:"setState",value:function(t){Cn(t.radiusX)?Cn(t.width)||(t.radiusX=t.width/2):t.width=2*t.radiusX,Cn(t.radiusY)?Cn(t.height)||(t.radiusY=t.height/2):t.height=2*t.radiusY,v(s(o.prototype),"setState",this).call(this,t)}}]),o}(Bn));var zn,Fn=function(t){a(r,t);var e=h(r);function r(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return n(this,r),e.call(this,t)}return r}(Nn),In=function(t){a(o,t);var r=h(o);function o(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return n(this,o),r.call(this,e({linkable:!1,position:"T"},t))}return i(o,[{key:"initEvents",value:function(){v(s(o.prototype),"initEvents",this).call(this),this.on("mouseover",this.mouseOverHandler,this),this.on("mouseup",this.mosueUpHandler,this),this.once(d,this.afterAddHandler,this),this.once(b,this.beforeRemoveHandler,this)}},{key:"afterAddHandler",value:function(t){this.evtBus.on("hook-mousedown",this.hookMouseDownHandler,this),this.evtBus.on("hook-mouseup",this.hookMouseUpHandler,this)}},{key:"beforeRemoveHandler",value:function(t){this.evtBus.off("hook-mousedown",this.hookMouseDownHandler,this),this.evtBus.off("hook-mouseup",this.hookMouseUpHandler,this)}},{key:"hookMouseDownHandler",value:function(t){this.setState({display:!0})}},{key:"hookMouseUpHandler",value:function(t){var e=t.target,n=this.getMaxBoundingBox(),r=e.getMaxBoundingBox();if(n.isIntersect(r)){var i=e.parentNode.targetComponent,o=e.state.position;"start"===o?i.setStartSlot(this):"end"===o&&i.setEndSlot(this)}this.setState({display:!1})}},{key:"mouseOverHandler",value:function(t){console.log("mouse over...")}},{key:"mosueUpHandler",value:function(t){console.log("mouse up...")}}]),o}(Ln),Xn=function(){function t(){n(this,t),o(this,"linkSlots",[]),o(this,"slotRadius",10)}return i(t,[{key:"createLinkSlots",value:function(){var t=new In({display:!1,transformable:!1,radius:this.slotRadius,position:"T",style:{strokeStyle:"#0c09d4",fillStyle:"#3ce92c",lineWidth:1}}),e=new In({display:!1,transformable:!1,radius:this.slotRadius,position:"R",style:{strokeStyle:"#0c09d4",fillStyle:"#3ce92c",lineWidth:1}}),n=new In({display:!1,transformable:!1,radius:this.slotRadius,position:"B",style:{strokeStyle:"#0c09d4",fillStyle:"#3ce92c",lineWidth:1}}),r=new In({display:!1,transformable:!1,radius:this.slotRadius,position:"L",style:{strokeStyle:"#0c09d4",fillStyle:"#3ce92c",lineWidth:1}});this.linkSlots=[t,e,n,r],this.addChildren([t,e,n,r])}},{key:"setSlotPositions",value:function(){var t=this.state.width,e=this.state.height,n=t/2,r=e/2,i={T:{left:n-this.slotRadius,top:-this.slotRadius},R:{left:t-this.slotRadius,top:r-this.slotRadius},B:{left:n-this.slotRadius,top:e-this.slotRadius},L:{left:-this.slotRadius,top:r-this.slotRadius}};this.linkSlots.forEach((function(t){var e=i[t.state.position],n=e.left,r=e.top;t.setState({left:n,top:r})}))}}]),t}();zn=function(t){a(r,t);var e=h(r);function r(){var t,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};n(this,r);var a=hn({},i);a.style={strokeStyle:"#8b0000",fillStyle:"rgba(255, 255, 49, 0.2)",lineWidth:1},o(c(t=e.call(this,a)),"linkSlots",[]),o(c(t),"slotRadius",10);var s=i.width,u=i.height,l=i.style;return t.addChild(new An({width:s,height:u,style:l,interactive:!1})),t.createLinkSlots(),t}return i(r,[{key:"renderChildren",value:function(){this.setSlotPositions(),v(s(r.prototype),"renderChildren",this).call(this)}}]),r}(Fn),[Xn].forEach((function(t){Object.getOwnPropertyNames(t.prototype).forEach((function(e){"constructor"!=e&&Object.defineProperty(zn.prototype,e,Object.getOwnPropertyDescriptor(t.prototype,e)||Object.create(null))}))}))}));
|
|
1
|
+
/**
|
|
2
|
+
* MIT License
|
|
3
|
+
*
|
|
4
|
+
* Copyright (c) 2022 大漠穷秋
|
|
5
|
+
*
|
|
6
|
+
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
7
|
+
* of this software and associated documentation files (the "Software"), to deal
|
|
8
|
+
* in the Software without restriction, including without limitation the rights
|
|
9
|
+
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
10
|
+
* copies of the Software, and to permit persons to whom the Software is
|
|
11
|
+
* furnished to do so, subject to the following conditions:
|
|
12
|
+
*
|
|
13
|
+
* The above copyright notice and this permission notice shall be included in all
|
|
14
|
+
* copies or substantial portions of the Software.
|
|
15
|
+
*
|
|
16
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
17
|
+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
18
|
+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
19
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
20
|
+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
21
|
+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
22
|
+
* SOFTWARE.
|
|
23
|
+
*/
|
|
24
|
+
|
|
25
|
+
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).ICE={})}(this,function(t){"use strict";function z(e,t){var i,n=Object.keys(e);return Object.getOwnPropertySymbols&&(i=Object.getOwnPropertySymbols(e),t&&(i=i.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,i)),n}function l(e){for(var t=1;t<arguments.length;t++){var i=null!=arguments[t]?arguments[t]:{};t%2?z(Object(i),!0).forEach(function(t){n(e,t,i[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):z(Object(i)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(i,t))})}return e}function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function T(t,e){for(var i=0;i<e.length;i++){var n=e[i];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,n.key,n)}}function e(t,e,i){return e&&T(t.prototype,e),i&&T(t,i),Object.defineProperty(t,"prototype",{writable:!1}),t}function n(t,e,i){e in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i}function i(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&L(t,e)}function r(t){return(r=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function L(t,e){return(L=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function s(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function a(i){var n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(t){return!1}}();return function(){var t,e=r(i),e=(t=n?(t=r(this).constructor,Reflect.construct(e,arguments,t)):e.apply(this,arguments),this);if(t&&("object"==typeof t||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return s(e)}}function h(){return(h="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,i){var n=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=r(t)););return t}(t,e);if(n)return(n=Object.getOwnPropertyDescriptor(n,e)).get?n.get.call(arguments.length<3?t:i):n.value}).apply(this,arguments)}function u(t){return function(t){if(Array.isArray(t))return R(t)}(t)||function(){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}()||function(t){if(t){if("string"==typeof t)return R(t,void 0);var e=Object.prototype.toString.call(t).slice(8,-1);return"Map"===(e="Object"===e&&t.constructor?t.constructor.name:e)||"Set"===e?Array.from(t):"Arguments"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e)?R(t,void 0):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function R(t,e){(null==e||e>t.length)&&(e=t.length);for(var i=0,n=new Array(e);i<e;i++)n[i]=t[i];return n}function H(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":G&&G in Object(t)?Q(t):Z.call(t)}function V(t){return null!=t&&"object"==typeof t}function q(t){return"string"==typeof t||!$(t)&&tt(t)&&"[object String]"==Y(t)}function X(t){return void 0===t}var c="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},c="object"==typeof c&&c&&c.Object===Object&&c,d="object"==typeof self&&self&&self.Object===Object&&self,d=c||d||Function("return this")(),W=d.Symbol,J=Object.prototype,U=J.hasOwnProperty,F=J.toString,K=W?W.toStringTag:void 0,Z=Object.prototype.toString,Q=function(t){var e=U.call(t,K),i=t[K];try{var n=!(t[K]=void 0)}catch(t){}var s=F.call(t);return n&&(e?t[K]=i:delete t[K]),s},G=W?W.toStringTag:void 0,J=Array.isArray,Y=H,$=J,tt=V,et="ICE_FRAME_EVENT",it="BEFORE_RENDER",nt="AFTER_RENDER",st="BEFORE_ADD",ot="AFTER_ADD",rt="BEFORE_REMOVE",at="ROUND_FINISH",ht="HOOK_MOUSEDOWN",lt="HOOK_MOUSEMOVE",ut="HOOK_MOUSEUP",ct="BEFORE_RESIZE",f="AFTER_RESIZE",dt="AFTER_ROTATE",p="AFTER_MOVE",ft={linear:function(t,e,i,n){return t+(e-t)/i*(Date.now()-n)},easeInQuad:function(t,e,i,n){n=Date.now()-n;return t+(e-t)/i*(n/i)*n},easeOutQuad:function(t,e,i,n){n=Date.now()-n;return-(e-t)*(n/=i)*(n-2)+t},easeInOutQuad:function(t,e,i,n){n=Date.now()-n,e-=t;return(n/=i/2)<1?e/2*n*n+t:-e/2*(--n*(n-2)-1)+t},easeInQuart:function(t,e,i,n){n=Date.now()-n;return(e-t)*(n/=i)*n*n*n+t},easeOutQuart:function(t,e,i,n){return-(e-t)*((e=(Date.now()-n)/i-1)*e*e*e-1)+t},easeInOutQuart:function(t,e,i,n){n=Date.now()-n,e-=t;return(n/=i/2)<1?e/2*n*n*n*n+t:-e/2*((n-=2)*n*n*n-2)+t},easeInCubic:function(t,e,i,n){n=Date.now()-n;return(e-t)*(n/=i)*n*n+t},easeOutCubic:function(t,e,i,n){return(e-t)*((e=(Date.now()-n)/i-1)*e*e+1)+t},easeInOutCubic:function(t,e,i,n){n=Date.now()-n,e-=t;return(n/=i/2)<1?e/2*n*n*n+t:e/2*((n-=2)*n*n+2)+t}},pt=(e(gt,[{key:"start",value:function(){return this.ice.evtBus.on(et,this.frameEventHandler,this),this}},{key:"stop",value:function(){return this.ice.evtBus.off(et,this.frameEventHandler,this),this}},{key:"frameEventHandler",value:function(t){for(var e=u(this.animationMap.values()),i=0;i<e.length;i++){var n=e[i];n.state.interactive=!1,this.tween(n),n.state.interactive=!0}}},{key:"tween",value:function(t){var e,i={},n=t.props.animations,s=1;for(e in n){var o=n[e];if(o.finished){if(++s===Object.keys(n).length){this.remove(t);break}}else{var r=o.from,a=o.to,h=o.duration,r=(X(o.startTime)&&(o.startTime=Date.now()),X(o.easing)&&(o.easing="linear"),ft[o.easing](r,a,h,o.startTime));a<r&&(r=a,o.finished=!0),i[e]=Math.floor(r)}}return t.setState(l({},i)),t}},{key:"add",value:function(t){this.animationMap.set(t.props.id,t)}},{key:"remove",value:function(t){q(t)?this.animationMap.delete(t):this.animationMap.delete(t.props.id)}}]),gt),vt="undefined"!=typeof Float32Array?Float32Array:Array,yt=Math.PI/180;function gt(t){o(this,gt),n(this,"animationMap",new Map),this.ice=t}function mt(t){return t*yt}function bt(t,e){var i=e[0],n=e[1],s=e[2],o=e[3],r=e[4],e=e[5],a=i*o-n*s;return a?(t[0]=o*(a=1/a),t[1]=-n*a,t[2]=-s*a,t[3]=i*a,t[4]=(s*e-o*r)*a,t[5]=(n*r-i*e)*a,t):null}function kt(t,e,i){var n=e[0],s=e[1],o=e[2],r=e[3],a=e[4],e=e[5],h=i[0],l=i[1],u=i[2],c=i[3],d=i[4],i=i[5];return t[0]=n*h+o*l,t[1]=s*h+r*l,t[2]=n*u+o*c,t[3]=s*u+r*c,t[4]=n*d+o*i+a,t[5]=s*d+r*i+e,t}function v(t,e,i){var n=e[0],e=e[1];return t[0]=i[0]*n+i[2]*e+i[4],t[1]=i[1]*n+i[3]*e+i[5],t}Math.hypot||(Math.hypot=function(){for(var t=0,e=arguments.length;e--;)t+=arguments[e]*arguments[e];return Math.sqrt(t)}),y=new vt(2),vt!=Float32Array&&(y[0]=0,y[1]=0);function wt(t,e){return t===e||t!=t&&e!=e}function xt(t,e){for(var i=t.length;i--;)if(Ct(t[i][0],e))return i;return-1}var Ct=wt,Pt=xt,St=Array.prototype.splice,Mt=xt,Ot=xt,Et=xt;function Bt(t){var e=-1,i=null==t?0:t.length;for(this.clear();++e<i;){var n=t[e];this.set(n[0],n[1])}}Bt.prototype.clear=function(){this.__data__=[],this.size=0},Bt.prototype.delete=function(t){var e=this.__data__,t=Pt(e,t);return!(t<0||(t==e.length-1?e.pop():St.call(e,t,1),--this.size,0))},Bt.prototype.get=function(t){var e=this.__data__,t=Mt(e,t);return t<0?void 0:e[t][1]},Bt.prototype.has=function(t){return-1<Ot(this.__data__,t)},Bt.prototype.set=function(t,e){var i=this.__data__,n=Et(i,t);return n<0?(++this.size,i.push([t,e])):i[n][1]=e,this};function _t(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function At(t){return!!Lt(t)&&("[object Function]"==(t=Tt(t))||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t)}function It(t){if(null!=t){try{return Ht.call(t)}catch(t){}try{return t+""}catch(t){}}return""}function Nt(t,e){return e=e,t=null==(t=t)?void 0:t[e],!Xt(e=t)||qt(e)||!(Vt(e)?Ut:Jt).test(Wt(e))?void 0:t}function jt(t){return t=this.has(t)&&delete this.__data__[t],this.size-=t?1:0,t}function Dt(t){var e,i=this.__data__;return Kt?"__lodash_hash_undefined__"===(e=i[t])?void 0:e:Zt.call(i,t)?i[t]:void 0}var y=Bt,zt=y,Tt=H,Lt=_t,g=d["__core-js_shared__"],Rt=(g=/[^.]+$/.exec(g&&g.keys&&g.keys.IE_PROTO||""))?"Symbol(src)_1."+g:"",Ht=Function.prototype.toString,Vt=At,qt=function(t){return!!Rt&&Rt in t},Xt=_t,Wt=It,Jt=/^\[object .+?Constructor\]$/,g=Function.prototype,m=Object.prototype,g=g.toString,m=m.hasOwnProperty,Ut=RegExp("^"+g.call(m).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),g=Nt(d,"Map"),m=Nt(Object,"create"),Ft=m,Kt=m,Zt=Object.prototype.hasOwnProperty,Qt=m,Gt=Object.prototype.hasOwnProperty,Yt=m;function $t(t){var e=-1,i=null==t?0:t.length;for(this.clear();++e<i;){var n=t[e];this.set(n[0],n[1])}}$t.prototype.clear=function(){this.__data__=Ft?Ft(null):{},this.size=0},$t.prototype.delete=jt,$t.prototype.get=Dt,$t.prototype.has=function(t){var e=this.__data__;return Qt?void 0!==e[t]:Gt.call(e,t)},$t.prototype.set=function(t,e){var i=this.__data__;return this.size+=this.has(t)?0:1,i[t]=Yt&&void 0===e?"__lodash_hash_undefined__":e,this};function te(t,e){var i,n,t=t.__data__;return("string"==(n=typeof(i=e))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==i:null===i)?t["string"==typeof e?"string":"hash"]:t.map}var ee=$t,ie=y,ne=g,se=te,oe=te,re=te,ae=te;function he(t){var e=-1,i=null==t?0:t.length;for(this.clear();++e<i;){var n=t[e];this.set(n[0],n[1])}}he.prototype.clear=function(){this.size=0,this.__data__={hash:new ee,map:new(ne||ie),string:new ee}},he.prototype.delete=function(t){t=se(this,t).delete(t);return this.size-=t?1:0,t},he.prototype.get=function(t){return oe(this,t).get(t)},he.prototype.has=function(t){return re(this,t).has(t)},he.prototype.set=function(t,e){var i=ae(this,t),n=i.size;return i.set(t,e),this.size+=i.size==n?0:1,this};function le(t){var e=this.__data__,t=e.delete(t);return this.size=e.size,t}function ue(t){return this.__data__.get(t)}function ce(t){return this.__data__.has(t)}var de=y,fe=g,pe=he,ve=y;function ye(t){t=this.__data__=new ve(t);this.size=t.size}ye.prototype.clear=function(){this.__data__=new zt,this.size=0},ye.prototype.delete=le,ye.prototype.get=ue,ye.prototype.has=ce,ye.prototype.set=function(t,e){var i=this.__data__;if(i instanceof de){var n=i.__data__;if(!fe||n.length<199)return n.push([t,e]),this.size=++i.size,this;i=this.__data__=new pe(n)}return i.set(t,e),this.size=i.size,this};function ge(t,e,i){"__proto__"==e&&xe?xe(t,e,{configurable:!0,enumerable:!0,value:i,writable:!0}):t[e]=i}function me(t,e,i){(void 0===i||Pe(t[e],i))&&(void 0!==i||e in t)||Ce(t,e,i)}function be(t,e,i){for(var n=-1,s=Object(t),o=i(t),r=o.length;r--;){var a=o[++n];if(!1===e(s[a],a,s))break}return t}var ke,m=ye,we=Nt,y=function(){try{var t=we(Object,"defineProperty");return t({},"",{}),t}catch(t){}}(),xe=y,Ce=ge,Pe=wt,b={exports:{}},Se=(k=(k=(x=b).exports)&&!k.nodeType&&k,w=(w=k&&x&&!x.nodeType&&x)&&w.exports===k?d.Buffer:void 0,ke=w?w.allocUnsafe:void 0,x.exports=function(t,e){if(e)return t.slice();e=t.length,e=ke?ke(e):new t.constructor(e);return t.copy(e),e},d.Uint8Array),Me=_t,Oe=Object.create;function Ee(){}function Be(e,i){return function(t){return e(i(t))}}function _e(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||Ve)}function Ae(t){return Ue(t)&&"[object Arguments]"==Je(t)}function Ie(t){return"number"==typeof t&&-1<t&&t%1==0&&t<=9007199254740991}function Ne(t){return null!=t&&Ge(t.length)&&!Qe(t)}function je(t){return hi(t)&&ai(t.length)&&!!S[ri(t)]}function De(t,e){if(("constructor"!==e||"function"!=typeof t[e])&&"__proto__"!=e)return t[e]}function ze(t,e){var i=typeof t;return!!(e=null==e?9007199254740991:e)&&("number"==i||"symbol"!=i&&fi.test(t))&&-1<t&&t%1==0&&t<e}function Te(t){if(Si(t))return Pi(t,!0);var e=t;if(!ki(e))return xi(e);var i,n=wi(e),s=[];for(i in e)("constructor"!=i||!n&&Ci.call(e,i))&&s.push(i);return s}function Le(t){return t}var Re,He,k=Be(Object.getPrototypeOf,Object),Ve=Object.prototype,qe=function(t){if(!Me(t))return{};if(Oe)return Oe(t);Ee.prototype=t;t=new Ee;return Ee.prototype=void 0,t},Xe=k,We=_e,Je=H,Ue=V,Fe=V,w=Object.prototype,Ke=w.hasOwnProperty,Ze=w.propertyIsEnumerable,x=Ae(function(){return arguments}())?Ae:function(t){return Fe(t)&&Ke.call(t,"callee")&&!Ze.call(t,"callee")},Qe=At,Ge=Ie,Ye=Ne,$e=V,w={exports:{}},ti=(M=(M=(P=w).exports)&&!M.nodeType&&M,C=(C=M&&P&&!P.nodeType&&P)&&C.exports===M?d.Buffer:void 0,M=(C?C.isBuffer:void 0)||function(){return!1},P.exports=M,H),ei=k,ii=V,C=Function.prototype,P=Object.prototype,ni=C.toString,si=P.hasOwnProperty,oi=ni.call(Object),ri=H,ai=Ie,hi=V,S={},M=(S["[object Float32Array]"]=S["[object Float64Array]"]=S["[object Int8Array]"]=S["[object Int16Array]"]=S["[object Int32Array]"]=S["[object Uint8Array]"]=S["[object Uint8ClampedArray]"]=S["[object Uint16Array]"]=S["[object Uint32Array]"]=!0,S["[object Arguments]"]=S["[object Array]"]=S["[object ArrayBuffer]"]=S["[object Boolean]"]=S["[object DataView]"]=S["[object Date]"]=S["[object Error]"]=S["[object Function]"]=S["[object Map]"]=S["[object Number]"]=S["[object Object]"]=S["[object RegExp]"]=S["[object Set]"]=S["[object String]"]=S["[object WeakMap]"]=!1,{exports:{}}),P=(C=(C=(k=M).exports)&&!C.nodeType&&C,Re=C&&k&&!k.nodeType&&k,He=Re&&Re.exports===C&&c.process,C=function(){try{return Re&&Re.require&&Re.require("util").types||He&&He.binding&&He.binding("util")}catch(t){}}(),k.exports=C,function(e){return function(t){return e(t)}}),c=M.exports,k=c&&c.isTypedArray,C=k?P(k):je,li=ge,ui=wt,ci=Object.prototype.hasOwnProperty,di=ge,fi=/^(?:0|[1-9]\d*)$/,pi=x,vi=J,yi=w.exports,gi=ze,mi=C,bi=Object.prototype.hasOwnProperty,ki=_t,wi=_e,xi=function(t){var e=[];if(null!=t)for(var i in Object(t))e.push(i);return e},Ci=Object.prototype.hasOwnProperty,Pi=function(t,e){var i,n=vi(t),s=!n&&pi(t),o=!n&&!s&&yi(t),r=!n&&!s&&!o&&mi(t),a=n||s||o||r,h=a?function(t,e){for(var i=-1,n=Array(t);++i<t;)n[i]=e(i);return n}(t.length,String):[],l=h.length;for(i in t)!e&&!bi.call(t,i)||a&&("length"==i||o&&("offset"==i||"parent"==i)||r&&("buffer"==i||"byteLength"==i||"byteOffset"==i)||gi(i,l))||h.push(i);return h},Si=Ne,Mi=function(t,e,i,n){var s=!i;i=i||{};for(var o,r,a=-1,h=e.length;++a<h;){var l=e[a],u=n?n(i[l],t[l],l,i,t):void 0;void 0===u&&(u=t[l]),s?di(i,l,u):(u=u,r=void 0,r=(o=i)[l=l],ci.call(o,l)&&ui(r,u)&&(void 0!==u||l in o)||li(o,l,u))}return i},Oi=Te,Ei=me,Bi=b.exports,_i=function(t,e){var i,e=e?(e=t.buffer,i=new e.constructor(e.byteLength),new Se(i).set(new Se(e)),i):t.buffer;return new t.constructor(e,t.byteOffset,t.length)},Ai=function(t,e){var i=-1,n=t.length;for(e=e||Array(n);++i<n;)e[i]=t[i];return e},Ii=function(t){return"function"!=typeof t.constructor||We(t)?{}:qe(Xe(t))},Ni=x,ji=J,Di=function(t){return $e(t)&&Ye(t)},zi=w.exports,Ti=At,Li=_t,Ri=function(t){if(!ii(t)||"[object Object]"!=ti(t))return!1;t=ei(t);if(null===t)return!0;t=si.call(t,"constructor")&&t.constructor;return"function"==typeof t&&t instanceof t&&ni.call(t)==oi},Hi=C,Vi=De,qi=function(t){return Mi(t,Oi(t))},Xi=m,Wi=me,Ji=be,Ui=_t,Fi=Te,Ki=De,Zi=Math.max,Qi=y,Gi=Date.now;Yi=Qi?function(t,e){return Qi(t,"toString",{configurable:!0,enumerable:!1,value:(i=e,function(){return i}),writable:!0});var i}:Le,tn=$i=0;var Yi,$i,tn,en,nn=wt,sn=Ne,on=ze,rn=_t,an=function v(y,g,m,b,k){y!==g&&Ji(g,function(t,e){var i,n,s,o,r,a,h,l,u,c,d,f,p;k=k||new Xi,Ui(t)?(n=g,o=m,r=v,a=b,h=k,d=Vi(i=y,s=e),f=Vi(n,s),(p=h.get(f))?Ei(i,s,p):((n=void 0===(p=a?a(d,f,s+"",i,n,h):void 0))&&(u=!(l=ji(f))&&zi(f),c=!l&&!u&&Hi(f),p=f,l||u||c?p=ji(d)?d:Di(d)?Ai(d):u?Bi(f,!(n=!1)):c?_i(f,!(n=!1)):[]:Ri(f)||Ni(f)?Ni(p=d)?p=qi(d):Li(d)&&!Ti(d)||(p=Ii(f)):n=!1),n&&(h.set(f,p),r(p,f,o,a,h),h.delete(f)),Ei(i,s,p))):(l=b?b(Ki(y,e),t,e+"",y,g,k):void 0,Wi(y,e,l=void 0===l?t:l))},Fi)},hn=(en=function(t,e,i){an(t,e,i)},function(){var t=Gi(),e=16-(t-tn);if(tn=t,0<e){if(800<=++$i)return arguments[0]}else $i=0;return Yi.apply(void 0,arguments)}(function(h,l,u){return l=Zi(void 0===l?h.length-1:l,0),function(){for(var t=arguments,e=-1,i=Zi(t.length-l,0),n=Array(i);++e<i;)n[e]=t[l+e];for(var e=-1,s=Array(l+1);++e<l;)s[e]=t[e];s[l]=u(n);var o=h,r=this,a=s;switch(a.length){case 0:return o.call(r);case 1:return o.call(r,a[0]);case 2:return o.call(r,a[0],a[1]);case 3:return o.call(r,a[0],a[1],a[2])}return o.apply(r,a)}}(M=function(t,e){var i=-1,n=e.length,s=1<n?e[n-1]:void 0,o=2<n?e[2]:void 0,s=3<en.length&&"function"==typeof s?(n--,s):void 0;for(o&&function(t,e,i){if(!rn(i))return!1;var n=typeof e;return!!("number"==n?sn(i)&&on(e,i.length):"string"==n&&e in i)&&nn(i[e],t)}(e[0],e[1],o)&&(s=n<3?void 0:s,n=1),t=Object(t);++i<n;){var r=e[i];r&&en(t,r,i)}return t},E,Le),M+"")),O=e(function t(){var e,i,n=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},s=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{};for(e in o(this,t),n)this[e]=n[e];for(i in s)this[i]=s[i]}),c=Be(Object.keys,Object),ln=_e,un=c,cn=Object.prototype.hasOwnProperty,P=Nt(d,"DataView"),k=g,b=Nt(d,"Promise"),m=Nt(d,"Set"),y=Nt(d,"WeakMap"),dn=H,fn=It,pn=fn(P),vn=fn(k),yn=fn(b),gn=fn(m),mn=fn(y),E=dn,bn=((P&&"[object DataView]"!=E(new P(new ArrayBuffer(1)))||k&&"[object Map]"!=E(new k)||b&&"[object Promise]"!=E(b.resolve())||m&&"[object Set]"!=E(new m)||y&&"[object WeakMap]"!=E(new y))&&(E=function(t){var e=dn(t),t="[object Object]"==e?t.constructor:void 0,t=t?fn(t):"";if(t)switch(t){case pn:return"[object DataView]";case vn:return"[object Map]";case yn:return"[object Promise]";case gn:return"[object Set]";case mn:return"[object WeakMap]"}return e}),function(t){if(!ln(t))return un(t);var e,i=[];for(e in Object(t))cn.call(t,e)&&"constructor"!=e&&i.push(e);return i}),kn=E,wn=x,xn=J,Cn=Ne,Pn=w.exports,Sn=_e,Mn=C,On=Object.prototype.hasOwnProperty,M=null,B=((M=window||global||{}).requestFrame=M.requestAnimationFrame||M.webkitRequestAnimationFrame||M.mozRequestAnimationFrame||M.oRequestAnimationFrame||M.msRequestAnimationFrame,M),c=(e(En,[{key:"on",value:function(t,e){var i=2<arguments.length&&void 0!==arguments[2]?arguments[2]:B;this.listeners[t]||(this.listeners[t]=[]),this.off(t,e,i),this.listeners[t].push({callback:e,scope:i})}},{key:"off",value:function(t,e){var i=2<arguments.length&&void 0!==arguments[2]?arguments[2]:B;if(n=this.listeners[t])for(var n=u(n),s=0;s<n.length;s++){var o=n[s];if(o.callback===e&&o.scope===i)return void this.listeners[t].splice(s,1)}}},{key:"once",value:function(i,n){var s=2<arguments.length&&void 0!==arguments[2]?arguments[2]:B,o=this;o.on(i,function t(e){o.off(i,t,s),n.call(s,e)},s)}},{key:"trigger",value:function(t){var e,i=1<arguments.length&&void 0!==arguments[1]?arguments[1]:null,n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};if(function(t){if(null==t)return!0;if(Cn(t)&&(xn(t)||"string"==typeof t||"function"==typeof t.splice||Pn(t)||Mn(t)||wn(t)))return!t.length;var e,i=kn(t);if("[object Map]"==i||"[object Set]"==i)return!t.size;if(Sn(t))return!bn(t).length;for(e in t)if(On.call(t,e))return!1;return!0}(this.listeners[t]))return!1;if(this.suspendedEventNames.includes(t))return!1;i?((e=new O(i)).originalEvent=i.originalEvent||i,e.param=l({},n)):e=new O({type:t,timeStamp:Date.now(),param:l({},n)});for(var s=this.listeners[t],o=0;o<s.length;o++){var r=s[o];r.callback.call(r.scope,e)}return!0}},{key:"suspend",value:function(t){t&&!this.suspendedEventNames.includes(t)&&this.suspendedEventNames.push(t)}},{key:"resume",value:function(e){this.suspendedEventNames.splice(this.suspendedEventNames.findIndex(function(t){return t===e}),1)}},{key:"purgeEvents",value:function(){this.listeners={},this.suspendedEventNames=[]}},{key:"hasListener",value:function(t,e){var i=2<arguments.length&&void 0!==arguments[2]?arguments[2]:B;if(!this.listeners[t])return!1;var n=this.listeners[t];if(!n)return!1;for(var s=0;s<n.length;s++){var o=n[s];if(o.callback===e&&o.scope===i)return!0}return!1}}]),En);function En(){o(this,En),n(this,"listeners",{}),n(this,"suspendedEventNames",[])}c.prototype.addEventListener=c.prototype.on,c.prototype.removeEventListener=c.prototype.off,c.prototype.dispatchEvent=c.prototype.trigger;e(In,[{key:"containsPoint",value:function(t){var e=this.getMinAndMaxPoint(),i=e.minX,n=e.minY,s=e.maxX,e=e.maxY;if(t[0]<i||t[0]>s||t[1]<n||t[1]>e)return!1;for(var o=0,r=this.getBoundingLines(),a=0;a<r.length;a++){var h,l=r[a];t[1]>l.o[1]&&t[1]>l.d[1]||t[1]<l.o[1]&&t[1]<l.d[1]||(l.o[0]===l.d[0]&&l.o[0]>=t[0]?l.o[0]:(h=(l.d[1]-l.o[1])/(l.d[0]-l.o[0]),l.o[0]+(t[1]-l.o[1])/h))>t[0]&&o++}return 0!==o&&o%2==1}},{key:"getBoundingLines",value:function(){return[{o:u(this.tl),d:u(this.tr)},{o:u(this.tr),d:u(this.br)},{o:u(this.br),d:u(this.bl)},{o:u(this.bl),d:u(this.tl)}]}},{key:"getMinAndMaxPoint",value:function(){for(var t=this.tl[0],e=this.tl[1],i=this.tl[0],n=this.tl[1],s=[this.tr,this.bl,this.br],o=0;o<s.length;o++){var r=s[o];r[0]<t&&(t=r[0]),r[0]>i&&(i=r[0]),r[1]<e&&(e=r[1]),r[1]>n&&(n=r[1])}return{minX:t,minY:e,maxX:i,maxY:n}}},{key:"containsBox",value:function(t){return!1}},{key:"isIntersect",value:function(t){var e=this.tl[0],i=this.br[0],n=this.tl[1],s=this.br[1],o=t.tl[0],r=t.br[0],a=t.tl[1],t=t.br[1];return!(r<e||t<n||i<o||s<a)}},{key:"transform",value:function(t){var e=v([],this.tl,t),i=v([],this.tr,t),n=v([],this.bl,t),s=v([],this.br,t),t=v([],this.center,t);return new In([].concat(u(e),u(i),u(n),u(s),u(t)))}},{key:"union",value:function(t){return null}},{key:"width",get:function(){var t=this.br[0]-this.bl[0],e=this.br[1]-this.bl[1];return Math.hypot(t,e)}},{key:"height",get:function(){var t=this.br[0]-this.tr[0],e=this.br[1]-this.tr[1];return Math.hypot(t,e)}},{key:"left",get:function(){return this.tl[0]},set:function(t){throw new Error("Can not set left to ICEBoundingBox directly.")}},{key:"top",get:function(){return this.tl[1]},set:function(t){throw new Error("Can not set top to ICEBoundingBox directly.")}},{key:"centerX",get:function(){return this.center[0]}},{key:"centerY",get:function(){return this.center[1]}},{key:"centerPoint",get:function(){return this.center}}],[{key:"fromDimension",value:function(t,e,i,n){return new In([].concat([t,e],[t+i,e],[t,e+n],[t+i,e+n],[t+i/2,e+n/2]))}}]);var Bn=In,_n=(e(An,null,[{key:"calcRotateAngleFromMatrix",value:function(t){var e=0,i=t[0],t=t[1],n=Math.hypot(i,t),t=t/n,e=Math.acos(i/n);return t<0&&(e+=Math.PI/2),e*(180/Math.PI)}},{key:"calcScaleFromMatrix",value:function(t){var e=t[0],i=t[1],n=t[2],t=t[3];return[Math.hypot(e,i)/e,Math.hypot(n,t)/t]}}]),An);function An(){o(this,An)}function In(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:[0,0,0,0,0,0,0,0,0,0];o(this,In),n(this,"tl",[0,0]),n(this,"tr",[0,0]),n(this,"bl",[0,0]),n(this,"br",[0,0]),n(this,"tc",[0,0]),n(this,"rc",[0,0]),n(this,"bc",[0,0]),n(this,"lc",[0,0]),n(this,"center",[0,0]),this.tl=[t[0],t[1]],this.tr=[t[2],t[3]],this.bl=[t[4],t[5]],this.br=[t[6],t[7]],this.tc=[(this.tr[0]+this.tl[0])/2,(this.tr[1]+this.tl[1])/2],this.bc=[(this.br[0]+this.bl[0])/2,(this.br[1]+this.bl[1])/2],this.lc=[(this.bl[0]+this.tl[0])/2,(this.bl[1]+this.tl[1])/2],this.rc=[(this.br[0]+this.tr[0])/2,(this.br[1]+this.tr[1])/2],this.center=[t[8],t[9]]}function Nn(t,e){return e.split(".").reduce(function(t,e){return t[e]},t)}function jn(t,e,i,n){for(var s=0<arguments.length&&void 0!==t?t:[],o=1<arguments.length&&void 0!==e?e:[],r=2<arguments.length&&void 0!==i?i:1,a=3<arguments.length&&void 0!==n?n:null,h=0;h<o.length;h++){var l=o[h];l._level=r,l._pid=a,s.push(l),jn(s,l.childNodes||[],r+1,l.id)}return s}i(Tn,c),Dn=a(Tn),e(Tn,[{key:"initEvents",value:function(){}},{key:"render",value:function(){this.trigger(it),this.state.display&&(this.calcComponentParams(),this.applyStyleToCtx(),this.applyTransformToCtx(),this.doRender(),this.trigger(nt),this.dirty=!1)}},{key:"applyStyleToCtx",value:function(){var t,e=l(l({},this.props.style),this.state.style);for(t in e)this.ctx[t]=e[t]}},{key:"calcComponentParams",value:function(){return{width:this.state.width,height:this.state.height}}},{key:"calcLocalOrigin",value:function(){var t=[0,0],e=this.state.origin;return e&&"localCenter"!==e||(t[0]=this.state.width/2,t[1]=this.state.height/2),this.state.localOrigin=t}},{key:"calcAbsoluteOrigin",value:function(){var t=Nn(this,"state.transform.translate.0")+this.state.left,e=Nn(this,"state.transform.translate.1")+this.state.top,i=u(this.calcLocalOrigin());return i[0]+=t,i[1]+=e,this.parentNode&&(i=v([],i,[1,0,0,1,-this.parentNode.state.localOrigin[0],-this.parentNode.state.localOrigin[1]]),i=v([],i,this.parentNode.state.composedMatrix)),this.state.absoluteOrigin=i}},{key:"calcLinearMatrix",value:function(){h=new vt(6),vt!=Float32Array&&(h[1]=0,h[2]=0,h[4]=0,h[5]=0),h[0]=1,h[3]=1;var t,e,i,n,s,o,r,a,h,l=Nn(this,"state.transform.skew.0"),u=Nn(this,"state.transform.skew.1");return t=[],e=[],l=h=function(t,e,i,n){i=Math.tan(i),n=Math.tan(n);return t[0]=e[0],t[1]=e[1]+i,t[2]=e[2]+n,t[3]=e[3],t[4]=e[4],t[5]=e[5],t}([],h,l*yt,u*yt),u=mt(Nn(this,"state.transform.rotate")),i=l[0],n=l[1],s=l[2],o=l[3],r=l[4],l=l[5],a=Math.sin(u),u=Math.cos(u),e[0]=i*u+s*a,e[1]=n*u+o*a,e[2]=i*-a+s*u,e[3]=n*-a+o*u,e[4]=r,e[5]=l,i=h=e,s=[Nn(this,"state.transform.scale.0"),Nn(this,"state.transform.scale.1")],n=i[0],a=i[1],o=i[2],u=i[3],r=i[4],i=i[5],l=s[0],s=s[1],t[0]=n*l,t[1]=a*l,t[2]=o*s,t[3]=u*s,t[4]=r,t[5]=i,h=t,this.state.linearMatrix=h}},{key:"calcAbsoluteLinearMatrix",value:function(){for(var t=this,e=t.calcLinearMatrix();t.parentNode;)e=kt([],t.parentNode.state.linearMatrix,e),t=t.parentNode;return this.state.absoluteLinearMatrix=e}},{key:"composeMatrix",value:function(){var t=this.calcAbsoluteOrigin(),t=kt([],[1,0,0,1,t[0],t[1]],this.calcAbsoluteLinearMatrix());return this.state.composedMatrix=t}},{key:"applyTransformToCtx",value:function(){var t,e=this.dirty?this.composeMatrix():this.state.composedMatrix;(t=this.ctx).setTransform.apply(t,u(e))}},{key:"doRender",value:function(){var t;this.ctx.setTransform(1,0,0,1,0,0),this.ctx.lineWidth=1,this.state.showMinBoundingBox&&(t=this.getMinBoundingBox(),this.ctx.strokeStyle="#ff0000",this.ctx.fillStyle="rgba(0,0,0,0)",this.ctx.beginPath(),this.ctx.moveTo(t.tl[0],t.tl[1]),this.ctx.lineTo(t.tr[0],t.tr[1]),this.ctx.lineTo(t.br[0],t.br[1]),this.ctx.lineTo(t.bl[0],t.bl[1]),this.ctx.closePath(),this.ctx.stroke(),this.ctx.fill()),this.state.showMaxBoundingBox&&(t=this.getMaxBoundingBox(),this.ctx.strokeStyle="#0000ff",this.ctx.fillStyle="rgba(0,0,0,0)",this.ctx.beginPath(),this.ctx.moveTo(t.tl[0],t.tl[1]),this.ctx.lineTo(t.tr[0],t.tr[1]),this.ctx.lineTo(t.br[0],t.br[1]),this.ctx.lineTo(t.bl[0],t.bl[1]),this.ctx.closePath(),this.ctx.stroke(),this.ctx.fill())}},{key:"getMinBoundingBox",value:function(){var t=0<arguments.length&&void 0!==arguments[0]&&arguments[0],e=this.state.localOrigin[0],i=this.state.localOrigin[1],n=this.state.width,s=this.state.height,e=new Bn([0-e,0-i,0-e+n,0-i,0-e,0-i+s,0-e+n,0-i+s,0,0]),n=t?this.composeMatrix():this.state.composedMatrix;return e.transform(n)}},{key:"getMaxBoundingBox",value:function(){var t=this.getMinBoundingBox(0<arguments.length&&void 0!==arguments[0]&&arguments[0]),e=t.getMinAndMaxPoint(),i=e.minX,n=e.minY,s=e.maxX,e=e.maxY,t=t.centerPoint;return new Bn([i,n,s,n,i,e,s,e,t[0],t[1]])}},{key:"setState",value:function(t){hn(this.state,t),this.dirty=!0,this.ice&&(this.ice.dirty=!0)}},{key:"dirty",get:function(){return this.__dirty},set:function(t){this.__dirty=t}},{key:"setPosition",value:function(t,e){var i=2<arguments.length&&void 0!==arguments[2]?arguments[2]:new O;this.trigger("BEFORE_MOVE",l(l({},i),{},{left:t,top:e})),this.setState({left:t,top:e}),this.trigger(p,l(l({},i),{},{left:t,top:e}))}},{key:"moveGlobalPosition",value:function(t,e){var i,n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:new O;this.parentNode&&(t=(i=v([],[t,e],bt([],this.parentNode.state.absoluteLinearMatrix)))[0],e=i[1]),this.setPosition(this.state.left+t,this.state.top+e,l(l({},n),{},{tx:t,ty:e}))}},{key:"setGlobalPosition",value:function(t,e){var i,n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:new O;this.parentNode&&(t=(i=v([],[t,e],bt([],this.parentNode.state.absoluteLinearMatrix)))[0],e=i[1]),this.setPosition(t,e,l(l({},n),{},{left:t,top:e}))}},{key:"setGlobalRotate",value:function(t){var e;this.parentNode&&(e=this.parentNode.state.absoluteLinearMatrix,t-=_n.calcRotateAngleFromMatrix(e)),this.setState({transform:{rotate:t}})}},{key:"localToGlobal",value:function(t,e){t=[t,e];return v([],t,this.state.composedMatrix)}},{key:"globalToLocal",value:function(t,e){t=[t,e];return v([],t,bt([],this.state.composedMatrix))}},{key:"getRotateAngle",value:function(){return this.state.transform.rotate}},{key:"getLocalLeftTop",value:function(){var t=this.getMinBoundingBox(!0),e=t.width,i=t.height;return{left:t.centerX-t.width/2,top:t.centerY-t.height/2,width:e,height:i}}},{key:"containsPoint",value:function(t,e){return this.getMinBoundingBox().containsPoint([t,e])}},{key:"destory",value:function(){this.trigger(rt,null,{component:this}),this.purgeEvents(),this.ice=null,this.ctx=null,this.root=null,this.evtBus=null,this.parentNode=null}}]);var Dn,zn=Tn;function Tn(){var t,e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{};return o(this,Tn),n(s(t=Dn.call(this)),"__dirty",!0),n(s(t),"props",{id:"ICE_"+function(){if(B.crypto)return B.crypto.randomUUID();var i=Date.now();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(t){var e=(i+16*Math.random())%16|0;return i=Math.floor(i/16),("x"==t?e:3&e|8).toString(16)})}(),left:0,top:0,width:0,height:0,style:{fillStyle:"red",strokeStyle:"blue",lineWidth:1},fill:!0,stroke:!0,animations:{},transform:{translate:[0,0],scale:[1,1],skew:[0,0],rotate:0},linearMatrix:[],composedMatrix:[],origin:"localCenter",localOrigin:[0,0],absoluteOrigin:[0,0],zIndex:Tn.instanceCounter++,display:!0,draggable:!0,transformable:!0,interactive:!0,linkable:!0,showMinBoundingBox:!1,showMaxBoundingBox:!1}),n(s(t),"state",l({},t.props)),t.props=hn(t.props,e),t.state=JSON.parse(JSON.stringify(t.props)),t.initEvents(),t}n(zn,"instanceCounter",0);i(Un,zn),Vn=a(Un),e(Un,[{key:"doRender",value:function(){this.dirty&&(this.ctx.beginPath(),this.createPathObject()),this.state.closePath&&this.path2D.closePath(),this.state.fill&&this.ctx.fill(this.path2D),this.state.stroke&&this.ctx.stroke(this.path2D),h(r(Un.prototype),"doRender",this).call(this)}}]);var Ln,Rn,Hn,Vn,g=Un,P=(i(Jn,g),Hn=a(Jn),e(Jn,[{key:"createPathObject",value:function(){return this.path2D=new Path2D,this.path2D.rect(0-this.state.localOrigin[0],0-this.state.localOrigin[1],this.state.width,this.state.height),this.path2D}}]),Jn),k=(i(Wn,P),Rn=a(Wn),e(Wn,[{key:"addChild",value:function(t){t.trigger(st),(t.parentNode=this).childNodes.push(t),t.trigger(ot)}},{key:"addChildren",value:function(t){for(var e=0;e<t.length;e++){var i=t[e];this.addChild(i)}}},{key:"removeChild",value:function(t){t.destory(),this.childNodes.splice(this.childNodes.indexOf(t),1)}},{key:"removeChildren",value:function(t){for(var e=0;e<t.length;e++){var i=t[e];this.removeChild(i)}}},{key:"destory",value:function(){this.removeChildren(this.childNodes),h(r(Wn.prototype),"destory",this).call(this)}}]),Wn),qn=(i(Xn,k),Ln=a(Xn),e(Xn,[{key:"doRender",value:function(){h(r(Xn.prototype),"doRender",this).call(this),this.setControlPositions()}},{key:"moveGlobalPosition",value:function(t,e,i){h(r(Xn.prototype),"moveGlobalPosition",this).call(this,t,e,i),this._targetComponent&&this._targetComponent.moveGlobalPosition(t,e,i)}}]),Xn);function Xn(t){return o(this,Xn),Ln.call(this,l(l({},t),{},{linkable:!1}))}function Wn(t){return o(this,Wn),n(s(t=Rn.call(this,t)),"parentNode",null),n(s(t),"childNodes",[]),t}function Jn(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{};return o(this,Jn),Hn.call(this,l({width:10,height:10},t))}function Un(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{};return o(this,Un),n(s(t=Vn.call(this,l({closePath:!0},t))),"path2D",new Path2D),t}function _(t){return null==t}function Fn(t){return"symbol"==typeof t||ks(t)&&"[object Symbol]"==bs(t)}function Kn(t){if("number"==typeof t)return t;if(xs(t))return NaN;var e;if(ws(t)&&(e="function"==typeof t.valueOf?t.valueOf():t,t=ws(e)?e+"":e),"string"!=typeof t)return 0===t?t:+t;t=(e=t)&&e.slice(0,gs(e)+1).replace(ms,"");var i=Ps.test(t);return i||Ss.test(t)?Ms(t.slice(2),i?2:8):Cs.test(t)?NaN:+t}function Zn(t){if("string"==typeof t)return t;if(Bs(t))return Es(t,Zn)+"";if(_s(t))return As?As.call(t):"";var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function Qn(t){return null==t?"":Zn(t)}var Gn,Yn,$n,ts,es,is,ns,ss,os,rs,as,hs,ls,us,cs,ds,fs,ps,vs,ys=/\s/,gs=function(t){for(var e=t.length;e--&&ys.test(t.charAt(e)););return e},ms=/^\s+/,bs=H,ks=V,ws=_t,xs=Fn,Cs=/^[-+]0x[0-9a-f]+$/i,Ps=/^0b[01]+$/i,Ss=/^0o[0-7]+$/i,Ms=parseInt,Os=Kn,Es=function(t,e){for(var i=-1,n=null==t?0:t.length,s=Array(n);++i<n;)s[i]=e(t[i],i,t);return s},Bs=J,_s=Fn,b=W?W.prototype:void 0,As=b?b.toString:void 0,Is=function(t){var t=(t=t)?(t=Os(t))===1/0||t===-1/0?17976931348623157e292*(t<0?-1:1):t==t?t:0:0===t?t:0,e=t%1;return t==t?e?t-e:t:0},Ns=Kn,js=d.isFinite,Ds=Math.min,A=(vs=Math.round,function(t,e){var i,n;return t=Ns(t),(e=null==e?0:Ds(Is(e),292))&&js(t)?(i=(Qn(t)+"e").split("e"),n=vs(i[0]+"e"+(+i[1]+e)),+((i=(Qn(n)+"e").split("e"))[0]+"e"+(+i[1]-e))):vs(t)}),zs=(e(Bo,null,[{key:"calcRotateAngle",value:function(t,e,i,n){t-=i,i=e-n,e=Math.hypot(t,i);return((i/e<0?-1:1)*Math.acos(t/e)*180/Math.PI+360)%360}}]),Bo),m=(i(Eo,g),ps=a(Eo),e(Eo,[{key:"calcComponentParams",value:function(){if(!this.dirty)return{width:this.state.width,height:this.state.height};this.calcDots();var t=this.calc4VertexPoints(),e=Math.abs(t[1][0]-t[0][0]),t=Math.abs(t[2][1]-t[0][1]);return this.state.width=e,this.state.height=t,{width:this.state.width,height:this.state.height}}},{key:"calcLocalOrigin",value:function(){for(var t=h(r(Eo.prototype),"calcLocalOrigin",this).call(this),e=0;e<this.state.dots.length;e++){var i=v([],this.state.dots[e],[1,0,0,1,-t[0],-t[1]]);this.state.dots[e]=i}return t}},{key:"createPathObject",value:function(){this.path2D=new Path2D,this.path2D.moveTo(this.state.dots[0][0],this.state.dots[0][1]);for(var t=1;t<this.state.dots.length;t++){var e=this.state.dots[t];this.path2D.lineTo(e[0],e[1])}return this.path2D}},{key:"calcDots",value:function(){return this.state.dots=[],this.state.dots}},{key:"calc4VertexPoints",value:function(){for(var t=this.state.dots[0][0],e=this.state.dots[0][1],i=this.state.dots[0][0],n=this.state.dots[0][1],s=1;s<this.state.dots.length;s++){var o=this.state.dots[s];o[0]<t&&(t=o[0]),o[0]>i&&(i=o[0]),o[1]<e&&(e=o[1]),o[1]>n&&(n=o[1])}return[[t,e],[i,e],[t,n],[i,n]]}},{key:"applyTransformToCtx",value:function(){if(h(r(Eo.prototype),"applyTransformToCtx",this).call(this),this.dirty){var t=this.state.composedMatrix,e=this.state.dots;this.state.transformedDots=[];for(var i=0;i<e.length;i++){var n=v([],e[i],t);this.state.transformedDots.push(n)}}}}]),Eo),Ts=(i(D,m),fs=a(D),e(D,[{key:"initEvents",value:function(){h(r(D.prototype),"initEvents",this).call(this),this.once(ot,this.afterAddHandler,this)}},{key:"afterAddHandler",value:function(t){this.evtBus.once(at,this.makeConnection,this)}},{key:"makeConnection",value:function(){var t,e,i=this.props.links;i&&(i.start&&(t=i.start.id,e=i.start.position,t&&e&&(t=this.ice.findComponent(t),this.setLink("start",t,e))),i.end&&(t=i.end.id,e=i.end.position,t&&e&&(i=this.ice.findComponent(t),this.setLink("end",i,e)))),this.ice.dirty=!0}},{key:"setLink",value:function(t,e,i){this.removeLink(t,e,i),this.links[t]={component:e,position:i},e.on(p,this.followComponent,this),e.on(f,this.followComponent,this),e.on(dt,this.followComponent,this),e.once(nt,this.followComponent,this),this.followComponent();var n,s={};for(n in this.links){var o=this.links[n];o.component&&o.position&&(s[n]={id:o.component.props.id,position:o.position})}this.setState({links:l({},s),draggable:!1})}},{key:"removeLink",value:function(t,e,i){var n=this.links[t].component,s=this.links[t].position;n===e&&s===i&&(n&&n.off(p,this.followComponent,this),n&&n.off(f,this.followComponent,this),n&&n.off(dt,this.followComponent,this),this.links[t]={},this.state.links[t]={}),this.links.start.component||this.links.end.component||this.setState({draggable:!0})}},{key:"followComponent",value:function(t){for(var e in this.links){var i=this.links[e].position,n=this.links[e].component;if(i&&n){var s=n.getMinBoundingBox(),o=[0,0];switch(i){case"T":o=s.tc;break;case"R":o=s.rc;break;case"B":o=s.bc;break;case"L":o=s.lc}switch(e){case"start":this.setState({startPoint:u(o)});break;case"end":this.setState({endPoint:u(o)})}}}}},{key:"calcLocalOrigin",value:function(){var t=[0,0];return this.state.localOrigin=t}},{key:"calcDots",value:function(){var t=this.state.left,e=this.state.top;this.state.dots=[];for(var i=0;i<this.state.points.length;i++){var n=this.state.points[i],s=n[0]-t,n=n[1]-e;this.state.dots.push([s,n])}return this.calcArrowPoints(),this.state.dots}},{key:"calcArrowPoints",value:function(){var t,e,i;"start"!==this.state.arrowPosition&&"both"!==this.state.arrowPosition||(i=u(this.state.dots[0]),e=[u(this.state.dots[0]),u(this.state.dots[1])],e=this.doCalcArrowPoints(e),(t=this.state.dots).unshift.apply(t,u(e)),this.state.dots.unshift(u(i))),"end"!==this.state.arrowPosition&&"both"!==this.state.arrowPosition||(t=this.state.dots.length,e=u(this.state.dots[t-1]),i=[u(this.state.dots[t-1]),u(this.state.dots[t-2])],i=this.doCalcArrowPoints(i),(t=this.state.dots).push.apply(t,u(i)),this.state.dots.push(u(e)))}},{key:"doCalcArrowPoints",value:function(t){var e=t[0],t=t[1],i=(t[0]=t[0]-e[0],t[1]=t[1]-e[1],t[0]/Math.hypot.apply(Math,u(t))),t=t[1]/Math.hypot.apply(Math,u(t)),n=Math.cos(this.state.arrowAngel),s=Math.sin(this.state.arrowAngel),o=this.state.arrowLength*(i*n-t*s),r=this.state.arrowLength*(t*n+i*s),a=this.state.arrowLength*(i*n+t*s),t=this.state.arrowLength*(t*n-i*s);return[[o+=e[0],r+=e[1]],[a+=e[0],t+=e[1]]]}},{key:"addDot",value:function(t,e){this.state.points.splice(e,0,t),this.state.dots.splice(e,0,[t[0],t[1]])}},{key:"rmDot",value:function(t){return!(this.state.points.length<3||(this.state.points.splice(t,1),this.state.dots.splice(t,1),0))}},{key:"calcComponentParams",value:function(){if(!this.dirty)return{width:this.state.width,height:this.state.height};this.calcDots();var t=this.calc4VertexPoints(),e=Math.abs(t[1][0]-t[0][0]),i=this.state.style.lineWidth;return this.isDotsOnSameLine()||(i=Math.abs(t[2][1]-t[0][1])),this.state.width=e,this.state.height=i,{width:this.state.width,height:this.state.height}}},{key:"isDotsOnSameLine",value:function(){for(var t,e,i=this.state.points.length,n=A(this.state.points[0][0],2),s=A(this.state.points[0][1],2),o=0,r=[A(this.state.points[i-1][0],2)-n,A(this.state.points[i-1][1],2)-s],a=0;a<i;a++){var h=this.state.points[a];0===(t=[],e=r,h=[h[0]-n,h[1]-s],e=r[0]*h[1]-r[1]*h[0],t[0]=t[1]=0,t[2]=e,t[2])&&o++}return o===i}},{key:"calc4VertexPoints",value:function(){return this.isDotsOnSameLine()?this.splitEndpointsTo4Points():h(r(D.prototype),"calc4VertexPoints",this).call(this)}},{key:"splitEndpointsTo4Points",value:function(){var t=this.state.points.length,e=this.state.points[t-1][0]-this.state.points[0][0],t=this.state.points[t-1][1]-this.state.points[0][1],i=this.getRotateAngle(),n=this.state.height,s=Math.cos(i*Math.PI/180)*n/2,i=Math.sin(i*Math.PI/180)*n/2;return[[0+(s=A(s,3)),0+(i=A(i,3))],[0-s,0-i],[e+s,t+i],[e-s,t-i]]}},{key:"getMinBoundingBox",value:function(){var t=this.state.localOrigin[0],e=this.state.localOrigin[1],i=this.calc4VertexPoints(),t=new Bn([i[0][0]-t,i[0][1]-e,i[1][0]-t,i[1][1]-e,i[2][0]-t,i[2][1]-e,i[3][0]-t,i[3][1]-e,0,0]);return t.transform(this.state.composedMatrix)}},{key:"setState",value:function(t){if(_(t.width)||delete t.width,_(t.height)||delete t.height,_(t.transform)||delete t.transform,!_(t.left))for(var e=t.left-this.state.points[0][0],i=0;i<this.state.points.length;i++)this.state.points[i][0]+=e;if(!_(t.top))for(var n=t.top-this.state.points[0][1],s=0;s<this.state.points.length;s++)this.state.points[s][1]+=n;var o;_(t.startPoint)||(this.state.points[0]=u(t.startPoint),this.state.left=this.state.points[0][0],this.state.top=this.state.points[0][1]),_(t.endPoint)||(o=this.state.points.length,this.state.points[o-1]=u(t.endPoint)),h(r(D.prototype),"setState",this).call(this,t)}},{key:"getRotateAngle",value:function(){var t,e;return this.isDotsOnSameLine()?(e=this.state.points.length,t=this.state.points[e-1][0]-this.state.points[0][0],e=this.state.points[e-1][1]-this.state.points[0][1],zs.calcRotateAngle(t,e,0,0)+90):h(r(D.prototype),"getRotateAngle",this).call(this)}},{key:"containsPoint",value:function(t,e){for(var i=this.getLines(),n=0;n<i.length;n++){var s=i[n],o=s.o[0],r=s.o[1],a=s.d[0],s=s.d[1],h=Math.hypot(a-o,s-r),o=Math.hypot(o-t,r-e),r=Math.hypot(a-t,s-e);if(h-3<=o+r&&o+r<=h+3)return!0}return!1}},{key:"getLines",value:function(){var t=[],e=this.state.transformedDots;if(!e||e.length<2)return t;for(var i=0;i<e.length-1;i++){var n={o:[e[i][0],e[i][1]],d:[e[i+1][0],e[i+1][1]]};t.push(n)}return t}}],[{key:"arrangeParam",value:function(t){var e=hn({},{lineType:"solid",lineWidth:1,arrowPosition:"both",arrowLength:15,arrowAngel:30*yt,points:[],showMinBoundingBox:!1,showMaxBoundingBox:!1,links:{},style:{lineJoin:"round"}},t,{linkable:!1,closePath:!1,fill:!1}),i=e.points.length;return i<2&&(0===i?(e.points.push([0,0]),e.points.push([10,10])):1===i&&e.points.push([10,10])),(e=l(l({},e),{left:t.points[0][0],top:t.points[0][1],transform:{translate:[0,0],scale:[1,1],skew:[0,0],rotate:0}})).style.lineWidth<1&&(e.style.lineWidth=1),e}}]),D),y=(i(Oo,g),ds=a(Oo),e(Oo,[{key:"createPathObject",value:function(){return this.path2D=new Path2D,this.path2D.ellipse(this.state.radiusX-this.state.localOrigin[0],this.state.radiusY-this.state.localOrigin[1],this.state.radiusX,this.state.radiusY,this.state.rotation,this.state.startAngle,this.state.endAngle,this.state.counterclockwise),this.path2D.closePath(),this.path2D}},{key:"setState",value:function(t){_(t.radiusX)?_(t.width)||(t.radiusX=t.width/2):t.width=2*t.radiusX,_(t.radiusY)?_(t.height)||(t.radiusY=t.height/2):t.height=2*t.radiusY,h(r(Oo.prototype),"setState",this).call(this,t)}}]),Oo),E=(i(Mo,y),cs=a(Mo),e(Mo)),Ls=(i(So,E),us=a(So),e(So,[{key:"initEvents",value:function(){h(r(So.prototype),"initEvents",this).call(this),this.on("mousedown",this.mosueDownHandler,this),this.on("mousemove",this.mosueMoveHandler,this),this.on("mouseup",this.mosueUpHandler,this),this.on(p,this.resizeEvtHandler,this)}},{key:"mosueDownHandler",value:function(t){this.evtBus.trigger(ht,new O({target:this}))}},{key:"mosueMoveHandler",value:function(t){this.evtBus.trigger(lt,new O({target:this}))}},{key:"mosueUpHandler",value:function(t){this.evtBus.trigger(ut,new O({target:this}))}},{key:"resizeEvtHandler",value:function(t){var e;this.parentNode&&(e=this.props.position,this.parentNode.trigger(ct,new O(t,{position:e})),this.parentNode.trigger(f,new O(t,{position:e})))}}]),So),Rs=(i(Po,qn),ls=a(Po),e(Po,[{key:"initControls",value:function(){var t=this.state.width,e=this.state.height,i=this.controlSize/2;this.startControl=new Ls({zIndex:10000011,display:!1,left:-i,top:-i,width:this.controlSize,height:this.controlSize,style:{strokeStyle:"#0c09d4",fillStyle:"#3ce92c",lineWidth:1},position:"start"}),this.addChild(this.startControl),this.endControl=new Ls({zIndex:10000012,display:!1,left:t-i,top:e-i,width:this.controlSize,height:this.controlSize,style:{strokeStyle:"#0c09d4",fillStyle:"#3ce92c",lineWidth:1},position:"end"}),this.addChild(this.endControl)}},{key:"initEvents",value:function(){this.on(f,this.resizeEvtHandler,this)}},{key:"enable",value:function(){this.setState({display:!0}),this.resume(f),this.showHooks()}},{key:"disable",value:function(){this.setState({display:!1}),this.suspend(f),this.hideHooks()}},{key:"setControlPositions",value:function(){}},{key:"resizeEvtHandler",value:function(t){if(this.targetComponent){var e=t.position,i=t.movementX,n=t.movementY,t=this.targetComponent.state,s=t.points.length,o=t.points[0][0],r=t.points[0][1],a=t.points[s-1][0],h=t.points[s-1][1],s=v([],[i,n],bt([],t.absoluteLinearMatrix)),i=s[0],n=s[1];switch(e){case"start":o+=i,r+=n;break;case"end":a+=i,h+=n}this.targetComponent.setState({startPoint:[o,r],endPoint:[a,h]})}}},{key:"updatePosition",value:function(){var t,e,i;this.targetComponent&&(this.setState({left:0,top:-5,width:3,height:3,transform:{translate:[0,0],scale:[1,1],skew:[0,0],rotate:0}}),t=this.controlSize/2,i=this.targetComponent.state.points.length,e=this.targetComponent.state.points[0],i=this.targetComponent.state.points[i-1],e=[e[0],e[1]],i=[i[0],i[1]],this.startControl.setState({left:e[0]-t,top:e[1]-t}),this.endControl.setState({left:i[0]-t,top:i[1]-t}))}},{key:"targetComponent",get:function(){return this._targetComponent},set:function(t){var e=this;this._targetComponent&&this._targetComponent.off(p,this.updatePosition,this),this._targetComponent=t,this._targetComponent&&this._targetComponent.on(p,this.updatePosition,this),this._targetComponent&&this._targetComponent.once(rt,function(){e.targetComponent=null,e.disable()},this),this.updatePosition()}},{key:"showHooks",value:function(){this.startControl.setState({display:!0}),this.endControl.setState({display:!0})}},{key:"hideHooks",value:function(){this.startControl.setState({display:!1}),this.endControl.setState({display:!1})}}]),Po),Hs=(i(Co,P),hs=a(Co),e(Co,[{key:"initEvents",value:function(){h(r(Co.prototype),"initEvents",this).call(this),this.on(p,this.resizeEvtHandler,this)}},{key:"resizeEvtHandler",value:function(t){if(this.parentNode){var e=t.quadrant,i=t.movementX,n=t.movementY,s=this.parentNode.state,o=s.left,r=s.top,a=s.width,h=s.height,s=v([],[i,n],bt([],s.absoluteLinearMatrix)),i=s[0],n=s[1];switch(e){case 1:o-=i,r+=n,a+=2*i,h-=2*n;break;case 2:o+=i,r+=n,a-=2*i,h-=2*n;break;case 3:o+=i,r-=n,a-=2*i,h+=2*n;break;case 4:o-=i,r-=n,a+=2*i,h+=2*n;break;case 5:r+=n,h-=2*n;break;case 6:r-=n,h+=2*n;break;case 7:o+=i,a-=2*i;break;case 8:o-=i,a+=2*i}s={top:r,left:o,width:Math.abs(a),height:Math.abs(h)};this.parentNode.trigger(ct,new O(t,{quadrant:e})),this.parentNode.setState(s),this.parentNode.trigger(f,new O(t,{quadrant:e}))}}},{key:"moveGlobalPosition",value:function(t,e){var i=2<arguments.length&&void 0!==arguments[2]?arguments[2]:new O,n=0<t?1:-1,s=0<e?1:-1,o=this.parentNode.state,r=o.localOrigin,a=o.width,h=o.height,o=v([],[t,e],bt([],o.absoluteLinearMatrix)),o=(t=o[0],e=o[1],this.state),l=o.left,u=o.top,o=o.quadrant,c=this.state.width/2,d=0;"x"===this.state.direction?d=0<(l=0===A(l+=t)?.5*n:l)+c-r[0]?8:7:"y"===this.state.direction?d=0<(u=0===A(u+=e)?.5*s:u)+c-r[1]?6:5:"xy"===this.state.direction&&(s=-h/2/(s=0===A(s=-a/2)?.5*n:s),0===A(a=a/2)&&(a=.5*n),u+=e=2===o||4==o?s*(l+c-r[0]+t)-(u+c-r[1]):-h/2/a*(l+c-r[0]+t)-(u+c-r[1]),d=0<(l+=t)+c-r[0]?0<u+c-r[1]?4:1:0<u+c-r[1]?3:2),o!==d&&this.parentNode.toggleControlQuadrant(this,d),this.setPosition(l,u,new O(i,{left:l,top:u,tx:t,ty:e,quadrant:d}))}}]),Co),Vs=(i(xo,E),as=a(xo),e(xo,[{key:"initEvents",value:function(){h(r(xo.prototype),"initEvents",this).call(this),this.on(p,this.rotateEvtHandler,this)}},{key:"rotateEvtHandler",value:function(t){var e;this.parentNode&&(e=this.parentNode.state.absoluteOrigin,t={transform:{rotate:zs.calcRotateAngle(t.offsetX,t.offsetY,e[0],e[1])+90}},this.parentNode.trigger("BEFORE_ROTATE",new O(t)),this.parentNode.setState(t),this.parentNode.trigger(dt,new O(t)))}}]),xo),qs=(i(wo,qn),rs=a(wo),e(wo,[{key:"initControls",value:function(){var t=this.state.width,e=this.state.height,i=t/2,n=e/2,s=this.resizeControlSize/2,o=[{direction:"xy",quadrant:2,position:[-s,-s]},{direction:"y",quadrant:5,position:[i-s,-s]},{direction:"xy",quadrant:1,position:[t-s,-s]},{direction:"x",quadrant:8,position:[t-s,n-s]},{direction:"xy",quadrant:4,position:[t-s,e-s]},{direction:"y",quadrant:6,position:[i-s,e-s]},{direction:"xy",quadrant:3,position:[-s,e-s]},{direction:"x",quadrant:7,position:[-s,n-s]}];this.resizeControlInstanceCache=[];for(var r=0;r<o.length;r++){var a=o[r],a=new Hs({zIndex:10000002,display:!1,left:a.position[0],top:a.position[1],width:this.resizeControlSize,height:this.resizeControlSize,style:{strokeStyle:"#8b0000",fillStyle:"#CC3300",lineWidth:1},direction:a.direction,quadrant:a.quadrant});this.addChild(a),this.resizeControlInstanceCache.push(a)}t=this.state.width/2-this.rotateControlSize,i=-this.rotateControlffsetY;this.rotateControlInstance=new Vs({zIndex:10000003,display:!1,left:t,top:i,radius:this.rotateControlSize,style:{strokeStyle:"#8b0000",fillStyle:"#CC3300",lineWidth:1}}),this.addChild(this.rotateControlInstance)}},{key:"initEvents",value:function(){h(r(wo.prototype),"initEvents",this).call(this),this.on(f,this.resizeEvtHandler,this),this.on(dt,this.rotateEvtHandler,this)}},{key:"enable",value:function(){this.rotateControlInstance.setState({display:!0});for(var t=0;t<this.resizeControlInstanceCache.length;t++)this.resizeControlInstanceCache[t].setState({display:!0});this.setState({display:!0}),this.resume(f),this.resume(dt)}},{key:"disable",value:function(){this.rotateControlInstance.setState({display:!1});for(var t=0;t<this.resizeControlInstanceCache.length;t++)this.resizeControlInstanceCache[t].setState({display:!1});this.setState({display:!1}),this.suspend(f),this.suspend(dt)}},{key:"setControlPositions",value:function(){for(var t=this.state.width,e=this.state.height,i=t/2,n=e/2,s=this.resizeControlSize/2,o=0;o<this.resizeControlInstanceCache.length;o++){var r=this.resizeControlInstanceCache[o],a=[0,0];switch(r.state.quadrant){case 1:a=[t-s,-s];break;case 2:a=[-s,-s];break;case 3:a=[-s,e-s];break;case 4:a=[t-s,e-s];break;case 5:a=[i-s,-s];break;case 6:a=[i-s,e-s];break;case 7:a=[-s,n-s];break;case 8:a=[t-s,n-s]}r.setState({left:a[0],top:a[1]})}var h=this.state.width/2-this.rotateControlSize,l=-this.rotateControlffsetY;this.rotateControlInstance.setState({left:h,top:l})}},{key:"rotateEvtHandler",value:function(t){var e;this.targetComponent&&(e=this.state.transform.rotate,this.targetComponent.setGlobalRotate(e),this.targetComponent.trigger(dt))}},{key:"resizeEvtHandler",value:function(t){if(this.targetComponent){var e=t.quadrant,i=t.movementX,n=t.movementY,t=this.targetComponent.state,s=t.left,o=t.top,r=t.width,a=t.height,t=v([],[i,n],bt([],t.absoluteLinearMatrix)),i=t[0],n=t[1];switch(e){case 1:s-=i,o+=n,r+=2*i,a-=2*n;break;case 2:s+=i,o+=n,r-=2*i,a-=2*n;break;case 3:s+=i,o-=n,r-=2*i,a+=2*n;break;case 4:s-=i,o-=n,r+=2*i,a+=2*n;break;case 5:o+=n,a-=2*n;break;case 6:o-=n,a+=2*n;break;case 7:s+=i,r-=2*i;break;case 8:s-=i,r+=2*i}this.targetComponent.setState({left:s,top:o,width:Math.abs(r),height:Math.abs(a)}),this.targetComponent.trigger(f)}}},{key:"updatePanel",value:function(){var t,e,i,n,s;this.targetComponent&&(t=this.targetComponent.getRotateAngle(),e=(s=this.targetComponent.getLocalLeftTop()).left,i=s.top,n=s.width,s=s.height,this.setState({left:e,top:i,width:n,height:s,transform:{rotate:t}}))}},{key:"targetComponent",get:function(){return this._targetComponent},set:function(t){var e=this;this._targetComponent&&this._targetComponent.off(p,this.updatePanel,this),this._targetComponent=t,this._targetComponent&&this._targetComponent.on(p,this.updatePanel,this),this._targetComponent&&this._targetComponent.once(rt,function(){e.targetComponent=null,e.disable()},this),this.updatePanel()}},{key:"toggleControlQuadrant",value:function(t,e){for(var i=0;i<this.resizeControlInstanceCache.length;i++){var n=this.resizeControlInstanceCache[i];if(n.state.quadrant===e){var s=0;switch(e){case 1:s=3;break;case 2:s=4;break;case 3:s=1;break;case 4:s=2;break;case 5:s=6;break;case 6:s=5;break;case 7:s=8;break;case 8:s=7}n.setState({quadrant:s})}}t.setState({quadrant:e})}}]),wo),Xs=(e(ko,[{key:"start",value:function(){return this.ice.evtBus.on("mousedown",this.mouseDownHandler,this),this}},{key:"stop",value:function(){return this.ice.evtBus.off("mousedown",this.mouseDownHandler,this),this}},{key:"mouseDownHandler",value:function(t){t=t.target;if(!(t instanceof zn&&t.state.interactive&&t.state.transformable))return this.lineControlPanel.disable(),void this.transformControlPanel.disable();t&&(t instanceof qn||t.parentNode instanceof qn)||(this.ice.selectionList=[t],this.lineControlPanel.disable(),this.transformControlPanel.disable(),t instanceof Ts?(this.lineControlPanel.targetComponent=t,this.lineControlPanel.enable()):(this.transformControlPanel.targetComponent=t,this.transformControlPanel.enable()))}}]),ko),Ws=[["mousedown","ICE_MOUSEDOWN"],["mouseup","ICE_MOUSEUP"],["mousemove","ICE_MOUSEMOVE"],["click","ICE_CLICK"],["dbclick","ICE_DBCLICK"],["contextmenu","ICE_CONTEXTMENU"]],Js=(e(bo,[{key:"start",value:function(){for(var n=this,s=null,t=0;t<Ws.length;t++)!function(t){var t=Ws[t],e=t[1],i=t[0];n.ice.evtBus.on(e,function(t){n._stopped||((s="ICE_MOUSEMOVE"!==e?n.findTargetComponent(t):s)&&(t.target=s).trigger(i,t),n.ice.evtBus.trigger(i,t))})}(t);return this}},{key:"stopped",get:function(){return this._stopped},set:function(t){this._stopped=t}},{key:"findTargetComponent",value:function(t){if(this._stopped)return null;var e=t.offsetX,i=t.offsetY,t=jn([],this.ice.toolNodes),n=jn([],this.ice.childNodes),s=[].concat(u(t),u(n));s.sort(function(t,e){return t.state.zIndex-e.state.zIndex});for(var o=0;o<s.length;o++){var r=s[o],a=r.state,h=a.interactive,a=a.display;r.containsPoint(e,i)&&h&&a&&this.selectionCandidates.push(r)}t=this.selectionCandidates.pop();return this.selectionCandidates=[],t}}]),bo),Us=(i(mo,c),os=a(mo),e(mo)),Fs=(e(go,[{key:"contains",value:function(t,e){var i=Math.hypot(this.endPoint.x-this.startPoint.x,this.endPoint.y-this.startPoint.y),n=Math.hypot(t-this.startPoint.x,e-this.startPoint.y),t=Math.hypot(t-this.endPoint.x,e-this.endPoint.y);return i-3<=n+t&&n+t<=i+3}}]),go),I=(e(yo,[{key:"equals",value:function(t){return this.x==t.x&&this.y==t.y}},{key:"clone",value:function(){return new yo(this.x,this.y)}}],[{key:"load",value:function(t){return new yo(Number(t.x),Number(t.y))}},{key:"cloneArray",value:function(t){for(var e=[],i=0;i<t.length;i++)e.push(t[i].clone());return e}}]),yo),x=(i(vo,zn),ss=a(vo),e(vo,[{key:"doRender",value:function(){var t,e;this.state.src&&(t=(e=this.ice.imageCache.setImage(this.state.src)).loaded,e=e.image,t&&this.ctx.drawImage(e,0-this.state.localOrigin[0],0-this.state.localOrigin[1],this.state.width,this.state.height)),h(r(vo.prototype),"doRender",this).call(this)}}]),vo),w=e(function t(){o(this,t)}),Ks=(i(po,E),ns=a(po),e(po,[{key:"initEvents",value:function(){h(r(po.prototype),"initEvents",this).call(this),this.once(it,this.beforeRenderHandler,this),this.once(rt,this.beforeRemoveHandler,this)}},{key:"beforeRenderHandler",value:function(t){this.evtBus.on(ht,this.hookMouseDownHandler,this),this.evtBus.on(lt,this.hookMouseMoveHandler,this),this.evtBus.on(ut,this.hookMouseUpHandler,this),this.evtBus.on("mouseup",this.globalMouseUpHandler,this)}},{key:"beforeRemoveHandler",value:function(t){this.evtBus.off(ht,this.hookMouseDownHandler,this),this.evtBus.off(lt,this.hookMouseMoveHandler,this),this.evtBus.off(ut,this.hookMouseUpHandler,this),this.evtBus.off("mouseup",this.globalMouseUpHandler,this),this._hostComponent=null}},{key:"globalMouseUpHandler",value:function(){this.setState({display:!1})}},{key:"hookMouseDownHandler",value:function(t){console.log("linkslot, hook mousedown event..."),this._hostComponent&&this.setState({display:!0})}},{key:"hookMouseMoveHandler",value:function(t){t=t.target;this.isIntersectWithHook(t)?(this.setState({style:{fillStyle:"#fffb00"}}),t._currentAboveSlot=this,t.setState({style:{fillStyle:"#fffb00"}})):(this.setState({style:{fillStyle:"#3ce92c"}}),t._currentAboveSlot===this&&t.setState({style:{fillStyle:"#3ce92c"}}))}},{key:"hookMouseUpHandler",value:function(t){var e,i;this._hostComponent&&(e=(t=t.target).parentNode.targetComponent,i=t.state.position,this.isIntersectWithHook(t)?e&&e.setLink(i,this._hostComponent,this.props.position):e&&e.removeLink(i,this._hostComponent,this.props.position),this.setState({display:!1,style:{fillStyle:"#3ce92c"}}),t.setState({style:{fillStyle:"#3ce92c"}}))}},{key:"isIntersectWithHook",value:function(t){var e=this.getMaxBoundingBox(),t=t.getMaxBoundingBox();return!!e.isIntersect(t)}},{key:"updatePosition",value:function(){console.log("link slot update position ...");var t=this._hostComponent.getMinBoundingBox(),e=0,i=0;switch(this.state.position){case"T":e=t.tc[0]-this.state.radius,i=t.tc[1]-this.state.radius;break;case"R":e=t.rc[0]-this.state.radius,i=t.rc[1]-this.state.radius;break;case"B":e=t.bc[0]-this.state.radius,i=t.bc[1]-this.state.radius;break;case"L":e=t.lc[0]-this.state.radius,i=t.lc[1]-this.state.radius}this.setState({left:e,top:i})}},{key:"hostComponent",get:function(){return this._hostComponent},set:function(t){var e=this;this._hostComponent&&this._hostComponent.off(nt,this.updatePosition,this),this._hostComponent=t,this._hostComponent&&this._hostComponent.on(nt,this.updatePosition,this),this._hostComponent&&this._hostComponent.once(rt,function(){e._hostComponent=null,e.setState({display:!1})},this),this._hostComponent&&this.setState({display:!0})}}]),po),C=(i(fo,Ts),is=a(fo),e(fo,[{key:"calcDots",value:function(){var t=this.interpolate(),e=this.state,i=e.left,n=e.top,s=t[0][2];this.state.points=[],this.state.dots=[];for(var o=0;o<s.length;o++){var r=s[o];this.state.points.push([r.x,r.y]),this.state.dots.push([r.x-i,r.y-n])}return this.calcArrowPoints(),this.state.dots}},{key:"interpolate",value:function(){var t=this.state.points.length,e=this.state.points[0][0],i=this.state.points[0][1],n=this.state.points[t-1][0],t=this.state.points[t-1][1],s=new I(e,i),o=new I(n,t),r=[],a=null,h=null,l=[],u=new Bn,c=new Bn,e=this.links.start.component;if(e){u=e.getMinBoundingBox(),r[0]=new I(s.x,u.tl[1]-this.state.escapeDistance),r[1]=new I(u.tr[0]+this.state.escapeDistance,s.y),r[2]=new I(s.x,u.br[1]+this.state.escapeDistance),r[3]=new I(u.tl[0]-this.state.escapeDistance,s.y);for(var a=r[0],d=1;d<r.length;d++)this.distance(s,r[d])<this.distance(s,a)&&(a=r[d])}i=this.links.end.component;if(i){c=i.getMinBoundingBox(),r[0]=new I(o.x,c.tl[1]-this.state.escapeDistance),r[1]=new I(c.tr[0]+this.state.escapeDistance,o.y),r[2]=new I(o.x,c.br[1]+this.state.escapeDistance),r[3]=new I(c.tl[0]-this.state.escapeDistance,o.y);for(var h=r[0],f=1;f<r.length;f++)this.distance(o,r[f])<this.distance(o,h)&&(h=r[f])}var n=0,t=[s],e=(a&&(t.push(a),n=1),h&&t.push(h),t.push(o),I.cloneArray(t)),i=(l.push(["s0","s0",e]),I.cloneArray(t)),e=I.cloneArray(i),t=(e.splice(n+1,0,new I(e[n].x,e[n+1].y)),l.push(["s1","s1_1",e]),I.cloneArray(i)),e=(t.splice(n+1,0,new I(t[n+1].x,t[n].y)),l.push(["s1","s1_2",t]),I.cloneArray(i)),t=new I((e[n].x+e[n+1].x)/2,e[n].y),p=new I((e[n].x+e[n+1].x)/2,e[n+1].y),t=(e.splice(n+1,0,t,p),l.push(["s2","s2_1",e]),I.cloneArray(i)),p=new I(t[n].x,(t[n].y+t[n+1].y)/2),e=new I(t[n+1].x,(t[n].y+t[n+1].y)/2),p=(t.splice(n+1,0,p,e),l.push(["s2","s2_2",t]),I.cloneArray(i)),e=[p[n].x+20,p[n+1].x+20],t=(u&&e.push(u.br[0]+20),c&&e.push(c.br[0]+20),this.max(e)),e=new I(t,p[n].y),t=new I(t,p[n+1].y),e=(p.splice(n+1,0,e,t),l.push(["s2","s2_3",p]),I.cloneArray(i)),t=[e[n].y-20,e[n+1].y-20],p=(u&&t.push(u.tl[1]-20),c&&t.push(c.tl[1]-20),this.min(t)),t=new I(e[n].x,p),p=new I(e[n+1].x,p),t=(e.splice(n+1,0,t,p),l.push(["s2","s2_4",e]),I.cloneArray(i)),p=[t[n].x-20,t[n+1].x-20],e=(u&&p.push(u.tl[0]-20),c&&p.push(c.tl[0]-20),this.min(p)),p=new I(e,t[n].y),e=new I(e,t[n+1].y),p=(t.splice(n+1,0,p,e),l.push(["s2","s2_5",t]),I.cloneArray(i)),e=[p[n].y+20,p[n+1].y+20],t=(u&&e.push(u.tl[1]+u.height+20),c&&e.push(c.tl[1]+c.height+20),this.max(e)),i=new I(p[n].x,t),e=new I(p[n+1].x,t);p.splice(n+1,0,i,e),l.push(["s2","s2_6",p]);for(var v=[],y=0;y<l.length;y++){var g=l[y][2];this.orthogonalPath(g)&&v.push(l[y])}if(l=v,!s.equals(o)){for(var m=[],b=0;b<l.length;b++){var k=l[b][2];this.forwardPath(k)&&m.push(l[b])}(l=m).length}for(var w=[],x=0;x<l.length;x++){var C=!1,P=l[x][2].slice();(c||u)&&(P=P.slice(1,P.length-1)),u&&(C=C||this.polylineIntersectsRectangle(P,u)),(C=c?C||this.polylineIntersectsRectangle(P,c):C)||w.push(l[x])}(l=0!=w.length?w:l).length;for(var S=l[0][2].length,M=[],O=0;O<l.length;O++)l[O][2].length==S&&M.push(l[O]);for(var l=M,E=0,B=0;B<l.length;B++)this.scorePath(l[E][2])<this.scorePath(l[B][2])&&(E=B);return[l[E]]}},{key:"orthogonalPath",value:function(t){if(t.length<=1)return!0;for(var e=0;e<t.length-1;e++)if(t[e].x!=t[e+1].x&&t[e].y!=t[e+1].y)return!1;return!0}},{key:"lineIntersectsLine",value:function(t,e){if(t.startPoint.x==t.endPoint.x&&e.startPoint.x==e.endPoint.x)return t.startPoint.x==e.startPoint.x&&(t.contains(e.startPoint.x,e.startPoint.y)||t.contains(e.endPoint.x,e.endPoint.y));if(t.startPoint.x==t.endPoint.x||e.startPoint.x==e.endPoint.x)return t.startPoint.x==t.endPoint.x&&(s=t,t=e,e=s),s=(t.endPoint.y-t.startPoint.y)/(t.endPoint.x-t.startPoint.x),i=t.startPoint.y-s*t.startPoint.x,n=e.startPoint.x,t.contains(n,s=s*n+i)&&e.contains(n,s);var i=(t.endPoint.y-t.startPoint.y)/(t.endPoint.x-t.startPoint.x),n=t.startPoint.y-i*t.startPoint.x,s=(e.endPoint.y-e.startPoint.y)/(e.endPoint.x-e.startPoint.x),o=e.startPoint.y-s*e.startPoint.x;if(i==s)return n==o&&(t.contains(e.startPoint.x,e.startPoint.y)||t.contains(e.endPoint.x,e.endPoint.y));o=(o-n)/(i-s),s=i*o+n;return t.contains(o,s)&&e.contains(o,s)}},{key:"polylineIntersectsRectangle",value:function(t,e){var i=2<arguments.length&&void 0!==arguments[2]&&arguments[2],n=[];n.push(new Fs(new I(e.x1,e.y1),new I(e.x2,e.y1))),n.push(new Fs(new I(e.x2,e.y1),new I(e.x2,e.y2))),n.push(new Fs(new I(e.x2,e.y2),new I(e.x1,e.y2))),n.push(new Fs(new I(e.x1,e.y2),new I(e.x1,e.y1)));for(var s=0;s<t.length-1;s++)for(var o=new Fs(t[s],t[s+1]),r=0;r<n.length;r++)if(this.lineIntersectsLine(o,n[r]))return!0;if(i)for(var a=new Fs(t[t.length-1],t[0]),h=0;h<n.length;h++)if(this.lineIntersectsLine(a,n[h]))return!0;return!1}},{key:"scorePath",value:function(t){if(t.length<=2)return-1;for(var e=0,i=1;i<t.length-1;i++)if(t[i-1].x==t[i].x&&t[i].x==t[i+1].x){if(this.signum(t[i+1].y-t[i].y)!=this.signum(t[i].y-t[i-1].y))return-1;e++}else if(t[i-1].y==t[i].y&&t[i].y==t[i+1].y){if(this.signum(t[i+1].x-t[i].x)!=this.signum(t[i].x-t[i-1].x))return-1;e++}else e--;return e}},{key:"signum",value:function(t){return 0<t?1:t<0?-1:0}},{key:"forwardPath",value:function(t){if(t.length<=2)return!0;for(var e=0;e<t.length-2;e++)if(t[e].x==t[e+1].x&&t[e+1].x==t[e+2].x){if(0!=this.signum(t[e+1].y-t[e].y)&&this.signum(t[e+1].y-t[e].y)==-1*this.signum(t[e+2].y-t[e+1].y))return!1}else if(t[e].y==t[e+1].y&&t[e+1].y==t[e+2].y&&0!=this.signum(t[e+1].x-t[e].x)&&this.signum(t[e+1].x-t[e].x)==-1*this.signum(t[e+2].x-t[e+1].x))return!1;return!0}},{key:"distance",value:function(t,e){return Math.hypot(e.x-t.x,e.y-t.y)}},{key:"max",value:function(t){if(0==t.lenght)return NaN;for(var e=t[0],i=0;i<t.length;i++)e<t[i]&&(e=t[i]);return e}},{key:"min",value:function(t){if(0==t.lenght)return NaN;for(var e=t[0],i=0;i<t.length;i++)e>t[i]&&(e=t[i]);return e}},{key:"addDot",value:function(t,e){throw new Error("Can NOT add dot to ICEVisioLink mannually.")}},{key:"rmDot",value:function(t){throw new Error("Can NOT remove dot from ICEVisioLink mannually.")}}],[{key:"arrangeParam",value:function(t){return _(t.startPoint)&&(t.startPoint=[0,0]),_(t.endPoint)&&(t.endPoint=[10,10]),t.points=[u(t.startPoint),u(t.endPoint)],l({escapeDistance:30},t)}}]),fo),M=(i(co,m),es=a(co),e(co,[{key:"calcDots",value:function(){this.state.dots=[];for(var t=2*Math.PI/this.state.edges,e=this.state.radius,i=0;i<this.state.edges;i++){var n=t*i-mt(this.state.startAngle),s=Math.floor(e*Math.cos(n)+e),n=Math.floor(e*Math.sin(n)+e);this.state.dots.push([s,n])}return this.state.dots}},{key:"calcComponentParams",value:function(){return this.dirty&&(this.calcDots(),this.state.width=2*this.state.radius,this.state.height=2*this.state.radius),{width:this.state.width,height:this.state.height}}},{key:"setState",value:function(t){_(t.radius)?_(t.width)?_(t.height)||(t.radius=t.height/2):t.radius=t.width/2:(t.width=2*t.radius,t.height=2*t.radius),h(r(co.prototype),"setState",this).call(this,t)}}]),co),J=(i(uo,m),ts=a(uo),e(uo,[{key:"calcDots",value:function(){var t=this.state.radius,e=this.state.leafNum;this.state.dots=[];for(var i,n,s=Math.PI/this.state.pointNumber,o=0;i=t+t*Math.sin(e*o)*Math.cos(o),n=t+t*Math.sin(e*o)*Math.sin(o),this.state.dots.push([i,n]),!((o+=s)>=2*Math.PI););return this.state.dots}},{key:"calcComponentParams",value:function(){return this.dirty&&(this.calcDots(),this.state.width=2*this.state.radius,this.state.height=2*this.state.radius),{width:this.state.width,height:this.state.height}}},{key:"setState",value:function(t){_(t.radius)?_(t.width)?_(t.height)||(t.radius=t.height/2,t.width=t.height):(t.radius=t.width/2,t.height=t.width):(t.width=2*t.radius,t.height=2*t.radius),h(r(uo.prototype),"setState",this).call(this,t)}}]),uo),W=(i(lo,m),$n=a(lo),e(lo,[{key:"calcDots",value:function(){this.state.dots=[];for(var t,e,i=mt(this.state.startAngle),n=Math.PI/this.state.spikes,s=this.state.outerRadius,o=this.state.innerRadius,r=0;r<this.state.spikes;r++)t=Math.cos(i)*s+s,e=Math.sin(i)*s+s,this.state.dots.push([t,e]),i+=n,t=Math.cos(i)*o+s,e=Math.sin(i)*o+s,this.state.dots.push([t,e]),i+=n;return this.state.dots}},{key:"calcComponentParams",value:function(){return this.dirty&&(this.calcDots(),this.state.width=2*this.state.outerRadius,this.state.height=2*this.state.outerRadius),{width:this.state.width,height:this.state.height}}},{key:"setState",value:function(t){_(t.outerRadius)?_(t.width)?_(t.height)||(t.outerRadius=t.height/2):t.outerRadius=t.width/2:(t.width=2*t.outerRadius,t.height=2*t.outerRadius),h(r(lo.prototype),"setState",this).call(this,t)}}]),lo),b=(i(ho,zn),Yn=a(ho),e(ho,[{key:"initEvents",value:function(){this.on(ot,this.measureText,this)}},{key:"measureText",value:function(t){try{var e,i=this.root.document.createElement("div"),n={padding:"0",margin:"0",border:"none",position:"absolute",top:"0",left:"0",fontFamily:this.state.style.fontFamily,fontWeight:this.state.style.fontWeight,fontSize:this.state.style.fontSize+"px"};for(e in n)i.style[e]=n[e];i.contenteditable=!1,i.innerHTML=this.state.text,this.root.document.body.appendChild(i);var s={width:i.offsetWidth,height:i.offsetHeight};this.props.width=s.width,this.props.height=s.height,this.state.width=s.width,this.state.height=s.height}finally{this.root.document.body.removeChild(i)}}},{key:"doRender",value:function(){this.state.stroke&&this.ctx.strokeText(this.state.text,0-this.state.localOrigin[0],0-this.state.localOrigin[1]+this.state.height,this.state.width),this.state.fill&&this.ctx.fillText(this.state.text,0-this.state.localOrigin[0],0-this.state.localOrigin[1]+this.state.height,this.state.width),h(r(ho.prototype),"doRender",this).call(this)}}]),ho),Zs=(e(ao,[{key:"start",value:function(){return this.ice.evtBus.on("mousedown",this.mouseDownHandler,this),this}},{key:"stop",value:function(){return this.ice.evtBus.off("mousedown",this.mouseDownHandler,this),this.ice.evtBus.off("mousemove",this.mouseMoveHandler,this),this.ice.evtBus.off("mouseup",this.mouseUpHandler,this),this}},{key:"mouseDownHandler",value:function(t){t=t.target;t instanceof zn?t.state.interactive&&t.state.draggable&&(this.currentObj=t,this.ice.evtBus.on("mousemove",this.mouseMoveHandler,this),this.ice.evtBus.on("mouseup",this.mouseUpHandler,this)):console.warn("DDManager: 点击在 canvas 画布上,没有点击任何图形。")}},{key:"mouseMoveHandler",value:function(t){var e=t.movementX,i=t.movementY;return this.currentObj.moveGlobalPosition(e,i,t),!0}},{key:"mouseUpHandler",value:function(t){this.ice.evtBus.off("mousemove",this.mouseMoveHandler,this),this.ice.evtBus.off("mouseup",this.mouseUpHandler,this)}}]),ao),N={evtBuses:[],start:function(){if(B&&B.addEventListener)for(var t=0;t<N.evtBuses.length;t++)!function(t){for(var i=N.evtBuses[t],e=0;e<Ws.length;e++)!function(t){var e=Ws[t];B.addEventListener(e[0],function(t){i.trigger(e[1],t)})}(e)}(t)},regitserEvtBus:function(t){N.evtBuses.includes(t)||N.evtBuses.push(t)},delEvtBus:function(t){N.evtBuses.includes(t)&&N.evtBuses.splice(N.evtBuses.indexOf(t),1)}},j={evtBuses:[],stopped:!1,frameCallback:function(){for(var t=0;t<j.evtBuses.length;t++){if(j.stopped)return;j.evtBuses[t].trigger(et)}j.stopped||B.requestFrame(j.frameCallback)},start:function(){j.stopped=!1,B.requestFrame(j.frameCallback)},stop:function(){j.stopped=!0},pause:function(){},resume:function(){},regitserEvtBus:function(t){j.evtBuses.includes(t)||j.evtBuses.push(t)},delEvtBus:function(t){j.evtBuses.includes(t)&&j.evtBuses.splice(j.evtBuses.indexOf(t),1)}},Qs=(e(ro,[{key:"start",value:function(){return this.createLinkSlots(),this.ice.evtBus.on(lt,this.hookMouseMoveHandler,this),this}},{key:"stop",value:function(){return this.ice.evtBus.off(lt,this.hookMouseMoveHandler,this),this}},{key:"hookMouseMoveHandler",value:function(t){for(var e=t.target.getMaxBoundingBox(),i=u(this.ice.childNodes),n=0;n<i.length;n++){var s=i[n];if(s&&s.state.linkable&&s.getMaxBoundingBox().isIntersect(e)){for(var o=0;o<this.ice._linkSlots.length;o++)this.ice._linkSlots[o].hostComponent=s;return}}}},{key:"createLinkSlots",value:function(){var t,e,i,n;this.ice._linkSlots&&this.ice._linkSlots.length||(t=new Ks({zIndex:1e7,display:!1,transformable:!1,draggable:!1,radius:this.slotRadius,position:"T",style:{strokeStyle:"#0c09d4",fillStyle:"#3ce92c",lineWidth:1}}),this.ice.addTool(t),e=new Ks({zIndex:1e7,display:!1,transformable:!1,draggable:!1,radius:this.slotRadius,position:"R",style:{strokeStyle:"#0c09d4",fillStyle:"#3ce92c",lineWidth:1}}),this.ice.addTool(e),i=new Ks({zIndex:1e7,display:!1,transformable:!1,draggable:!1,radius:this.slotRadius,position:"B",style:{strokeStyle:"#0c09d4",fillStyle:"#3ce92c",lineWidth:1}}),this.ice.addTool(i),n=new Ks({zIndex:1e7,display:!1,transformable:!1,draggable:!1,radius:this.slotRadius,position:"L",style:{strokeStyle:"#0c09d4",fillStyle:"#3ce92c",lineWidth:1}}),this.ice.addTool(n),this.ice._linkSlots=[t,e,i,n])}}]),ro),Gs=Object.fromEntries(new Map([["ICERect",P],["ICECircle",E],["ICEEllipse",y],["ICEStar",W],["ICEIsogon",M],["ICEText",b],["ICEImage",x],["ICEGroup",k],["ICEVisioLink",C],["ICEPolyLine",Ts]])),Ys=(e(oo,[{key:"fromJSON",value:function(t){for(var e=JSON.parse(t).childNodes,i=0;i<e.length;i++)this.decodeRecursively(this.ice,e[i])}},{key:"decodeRecursively",value:function(t,e){var i=new Gs[e.type](e.state),n=(t.addChild(i),e.childNodes);if(n&&n.length)for(var s=0;s<n.length;s++)this.decodeRecursively(i,n[s])}}]),oo),$s=(e(so,[{key:"toJSON",value:function(){for(var t={createTime:(new Date).toLocaleString(),lastModifyTime:(new Date).toLocaleString(),childNodes:[]},e=0;e<this.ice.childNodes.length;e++){var i=this.ice.childNodes[e];this.encodeRecursively(i,t)}return console.log(t),JSON.stringify(t)}},{key:"encodeRecursively",value:function(t,e){var i={state:t.state,type:t.constructor.name,childNodes:[]};if(e.childNodes.push(i),t.childNodes&&t.childNodes.length)for(var n=0;n<t.childNodes.length;n++)this.encodeRecursively(t.childNodes[n],i)}}]),so),to=(i(no,c),Gn=a(no),e(no,[{key:"start",value:function(){return this.stopped=!1,this.ice.evtBus.on(et,this.frameEvtHandler,this),this}},{key:"stop",value:function(){return this.stopped=!0,this.ice.evtBus.off(et,this.frameEvtHandler,this),this}},{key:"frameEvtHandler",value:function(t){this.ice.dirty?this.doRender():console.log("没有需要渲染的组件...")}},{key:"refreshQueue",value:function(){this.componentQueue=jn([],this.ice.childNodes),this.componentQueue.sort(function(t,e){return t.state.zIndex-e.state.zIndex}),console.log("Component Queue length> ".concat(this.componentQueue.length)),this.toolsQueue=jn([],this.ice.toolNodes),console.log("Tool Queue length> ".concat(this.ice.toolNodes.length))}},{key:"doRender",value:function(){var t=Date.now();this.refreshQueue(),this.ice.ctx.clearRect(0,0,this.ice.canvasWidth,this.ice.canvasHeight);for(var e=0;e<this.componentQueue.length;e++){var i=this.componentQueue[e];i.root=this.ice.root,i.ctx=this.ice.ctx,i.evtBus=this.ice.evtBus,i.ice=this.ice,i.render()}for(var n=0;n<this.toolsQueue.length;n++){var s=this.toolsQueue[n];s.root=this.ice.root,s.ctx=this.ice.ctx,s.evtBus=this.ice.evtBus,s.ice=this.ice,s.render()}console.log("Render time ".concat(Date.now()-t," ms.")),this.ice.dirty=!1,this.ice.evtBus.trigger(at)}}]),no),eo=(e(io,[{key:"setImage",value:function(t){var e=this,i=this.imageCache.get(t);return i||((i=new Image).onload=function(){e.ice.dirty=!0},i.onerror=function(){console.error("ImageCache: 图片加载失败:",t)},i.src=t,this.imageCache.size>io.CACHE_SIZE&&this.imageCache.delete(this.imageCache.keys().next().value),this.imageCache.set(t,i)),{loaded:this.loaded(i),image:i}}},{key:"loaded",value:function(t){return t.complete&&0<t.naturalWidth}}]),io);function io(t){o(this,io),n(this,"imageCache",new Map),this.ice=t}function no(t){var e;return o(this,no),n(s(e=Gn.call(this)),"stopped",!1),n(s(e),"componentQueue",[]),n(s(e),"toolsQueue",[]),e.ice=t,e}function so(t){o(this,so),this.ice=t}function oo(t){o(this,oo),this.ice=t}function ro(t){o(this,ro),n(this,"slotRadius",10),this.ice=t}function ao(t){o(this,ao),this.ice=t}function ho(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},t=(o(this,ho),hn({text:"",left:0,top:0,width:10,height:10,style:{fontWeight:"bold",fontSize:32,fontFamily:"Arial",lineWidth:1}},t));return t.style=l(l({},t.style),{},{font:"".concat(t.style.fontWeight," ").concat(t.style.fontSize,"px ").concat(t.style.fontFamily),textBaseline:"bottom"}),Yn.call(this,t)}function lo(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},t=(o(this,lo),l({outerRadius:50,innerRadius:20,startAngle:90,spikes:5},t));return t.spikes=Math.floor(1<=t.spikes?t.spikes:1),t.width=2*t.outerRadius,t.height=2*t.outerRadius,$n.call(this,t)}function uo(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},t=(o(this,uo),l({radius:50,leafNum:2,pointNumber:100},t));return t.leafNum=Math.floor(2<=t.leafNum?t.leafNum:2),t.width=2*t.radius,t.height=2*t.radius,ts.call(this,t)}function co(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},t=(o(this,co),l({radius:10,edges:3,startAngle:90},t));return t.edges=Math.floor(3<=t.edges?t.edges:3),t.width=2*t.radius,t.height=2*t.radius,es.call(this,t)}function fo(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{};return o(this,fo),t=fo.arrangeParam(t),is.call(this,t)}function po(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{};return o(this,po),ns.call(this,l({linkable:!1,draggable:!1,position:"T"},t))}function vo(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{};return o(this,vo),ss.call(this,l({width:100,height:100,src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALkAAAC2CAYAAACF+yyJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAtoSURBVHhe7Z3tj15FHYb9VxUVo7zFUBWC8YXoF9++GENMRAWRKAkxGj8pihpjFBVF1CBlKaUU+wK0pYVqt12fn+6xs7PXnDPzO3O2Z+a5r+T6ss995nm2vXf3vM68570vXNuTsmdVctm9KrnsXpVcdq9KLrtXJZfdq5LL7lXJZfeq5LJ7VXLZvSq57F6VXHavSi67VyWX3auSy+5VyWX3quSye1Vy2b0quexelVx2r0ouu1cll92rksvuVcll96rksntVctm9KrnsXpVcdq9KLrtXJZfdq5LL7lXJZfeq5LJ7VfIjcIy7j/M2sp4q+YKWQNvLOqrkC+nhodO7OJacp0q+gHO4/2UVvbYqeWXH+O2lG3sf29nd++Eb1/e/wtC40q9KXtGfX+Dy3v4PzpspKCt9quQVJSgXS1BO+lTJK0pQLvab/zz8F+CjL3FWlquSV/KBE7v79bwJ5VISlJPlquSV/AXsj1MuJUE5Wa5KXsmfvKWSr1WVvJJ2BiWGciljLm/2figny1XJK0pQLvbS4d15zEmfKnlFicfPXsdsKEE56VMlr+hdx7mwqV2P75/ji0dvboahvPSpkle2BjSu9KuSL+AcaDw5T5V8IT3QOHK+KvmCni/oOm0v66iSO/zz5Rv71cwr56Nn+ADzmUs3MB8bQq/LcVVyhzHvg0wsQbnYmCfPTZ+SlAdVyQv92mm4crPhzokHkgnKhaagrEyrkjtM8eAr6UfXCMoNpqCsHFcld5rC7g3PzVPOTPHZkR8imbbpkqeg7BKm+NXFw0Un4swH4CavgTuOaH6Wd/gYGbOt2GTJc8k5IJxrileuHjxzQoSv37uTHutWfh8x9zU4m0BTJd959+apu1z+tdmExgoN+euVvNN6oSnCe1aI4bUvneKDWWPI5PrhFw++F2VC6dG7HGistdpMyc/9u7zgA/bfSGMOxlBmyhT2qVOv29efSNykZYTj5xrz2Jn0KcdvOQs+QGOu0SZKbn+u5/LAyJ/ZGO/uQSnPvp3+waXxc4x57nL6L9Ncnh0Ze002UfIUlDVTUNYkKJdjDWjcHD938vBuD+XMFJQ1U1B2ba6+5HZWgaBsKPFwhdN7Oc6BxsuVoJxJUC6UuJi4V35Nrr7kBOVIYk6uRA80TonEnBxJUG5NquQbbZLNGMqVWgJtX2rMcNA7lTMoR9JRBOXWZHMlt4d+KUc+VTBNRIydzaFcqTnQdqXeVjBbAEE5ki5YUW5NNlfy+CLLmN876y+5QTmPYyc/Ke+RoJxJUC5lDGXWpHZX9iUo55WgnFeCciZBOfL5K4d/ZCm3JlXyfR+BBxso55WgnFeCciZBOZKg3Jpcfcl/nJiwnrKhqWt5x3byLwr98kK9BxQIynmNscn+KWemoGxo6uIVZdfk6ktupqCseW1sJ3gf2o6gnEeCch4vwPCUy4G2M/8OuykGZddmEyW3ZUjG+PSJ3f9etr+eUe6Y8H2I8PU5EpTzSISv0370FF8+tbv38c1fA/oBCgnfZ602UXJzSexGJXsPe7A4Jv4cXgnKeSTs6zXu+Rkj/hxrtZmSm15yt6Xc11+vc/80QTmPMXb7Qg60bS7xZ1izTZXcLLmn/Orm/zrc1vubLRzDK0G5Un9zsXxXxB7GDsewSUlLCLdtweZKPjh2f/m7Ublj/zhyiytBY5RKUK7UEuy7pjEGfwZXiENomxZstuQ1zIW2LfE1ezwpAeVLzIW23Ra3uuSDOdB2U9rzkDn8yfnwQQ73ahU5/SYv4Y3NJjQO6eGDI4vahqYmOBpjm5dM3KqSp66elnL3yPQQNaBxB2twttIdlq3YfcmXJHyfF96ZPpgdzvb84HzeD1s4/pJ8pvNJi7or+e8Lz5wQdrXPxqIFaGNy/zbEn9PM4W8ZVyvte7bxPhRNR+Hh7YL79Vuxq5J7ic+nx6ZmlcqBxoudA403+LuJ2yHGoPFadWtL/qnNb2kaY8wShlsFch2bIo6gMcYsvRBmD5zQOC26NSWvdbD1/oky2k1itF2uT8Py5SHfrVS+qYNw2qZVuyq5FSDkngVPmxGU80pQrpYhdqsyZVq1uwPPo5KgnFeCcnJaldwpQTmvBOXktCq5U4JyXgnKyWlVcqcE5bwSlJPTquROCcp5JSgnp1XJnRKU80pQTk6rkjslKOeVoJycViV3SlDOK0E5Oa1K7pSgnFeCcnJaldwpQTmvBOXktF2VPL6sP/Zww1wJynklKFfLkKm7Mluzq5KPUesGram7Be3mVtou119PTDGhG7TK3ZqSx3xy4VttHx1ZWpC05ztLoDHG1K22nehl6mkYPTTRtt0deP6hwuNvX3z1f7/l7bf9FLmTjMaf08zBVoiewiZLsvFqPP4WriLdi92VPPQoJ7zMeZB5WAJdDzIfrV2XPLbWlBR3aUqKptyqkseWcqagHB40udAybnXJB3Og7ab8ROY0cXaASNtPmXM4oGni9Js8C9q2xFOa8POW2mzJbdchhZ3yo20GS8/A0BilEpQrtQT7rmmMQVsIbAzapgWbK/lLmoT/gJ5J+L/62sGzKY/B8o5jhNu2YFMl95K7LeVaXE7lG6/nlZa2zSX+DGu2mZIvyTDbFV0hjD+HV4JyHgn7+lFeJ1izTZQ8Z4lDuzqpJQ5vEr6ec9U05guv7u7d//Lu3lsTPyfh+6zVJkqegrLmyDHp/6HtCMp5JCjn8SgWq039oFB2ba6+5LWXHS9ZjrvlZceP7XDOTEHZ0NRZKcquydWXnKAcSVDOfATOMFDOK0E5rwTlTIJyJEG5NamS70tQzitBOa8E5UyCcuRzlw//Nqfcmmyu5Ceu5l8Ctxv/YyhnEpTzOHZCj/IeCcqZBOVSxlBmTTZX8pLlPmjxVcqZMbYYLuVKzYG2K5XmTaecSVCOLHmftajdlY12qiyGcqWWQNuXGmM7Fjk5g3IkHXpSbk2q5AW5Ej3QOCUSc3IkQbk1ufqS33Hc9w9LfDuxjg9BuVznQOPlSlDOJCgXStg5esquydWX3ExBWTMFZU2CcjnWgMbN8fMn83e7UlDWTEHZtdlEyUtXRiPGpqCIsXs+KDdlKc+PXG6n8XOMsVN+lDPnYldBady12UTJTVvX3kvqAGwwhjJTphjem7CvP3EufYIxHD/XmO+MzP9iN6bNgcZco82U3Bx7wibF1AMUZshfRn7zpUxxJXhvYnjtK6fSj8kNmVzvjI5hKBP6sLPoNNZabarkg7l4dztKTHEyumhFhK8f20kX/VZ+HzH23Cptv2abLPlgCsouYQqbzzAnG2duHzn2+MiLB7NLaWt4Ekfxg7aUTZf8VpoitQ9MUM5M4VkqXarkLlM8ODITFUG5wRSUleOq5IWmJvaxAz7KDxKUC01BWZlWJXcYcxtkYgnKxcY8ea7egxzbokruMLynml6PtbnKiWcyZ84KodfluCr5gp5P73EcgraXdVTJF9IDjSPnq5Iv4BxoPDlPlbyyNaBxpV+VvKK2pCJxaZeL+zg8g2q8uRmG8tKnSl5RImdJQoJy0qdKXlGCcrEX4foS5aRPlbySdHMV5VLGlMxKIMdVySv504LpL0iCcrJclbyStEoD5VISlJPlquSVpIVtKZeSoJwsVyWvKEG5WHrWcpuXJKytSl5RgnKxBOWkT5W8ok8nVk+zNe8pb6agrPSpkld2DLu11hYB+NHE8uc0rvSrki/gHO5r8Gn4tauSL6SHh06r4Euoki9oCbS9rKNKfgSOcY9OFS6uSi67VyWX3auSy+5VyWX3quSye1Vy2b0quexelVx2r0ouu1cll92rksvuVcll96rksntVctm9KrnsXpVcdq9KLrtXJZfdq5LL7lXJZfeq5LJ7VXLZvSq57F6VXHavSi67VyWX3auSy+5VyWX3quSye1Vy2b0quezca3v/AeMnvtkH1pHJAAAAAElFTkSuQmCC"},t))}function yo(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:0,e=1<arguments.length&&void 0!==arguments[1]?arguments[1]:0;o(this,yo),this.x=t,this.y=e}function go(t,e){o(this,go),this.startPoint=t,this.endPoint=e}function mo(){return o(this,mo),os.call(this)}function bo(t){o(this,bo),n(this,"selectionCandidates",[]),n(this,"_stopped",!1),this.ice=t}function ko(t){o(this,ko),this.ice=t,this.transformControlPanel=new qs({left:500,top:100,width:100,height:100,style:{strokeStyle:"#8b0000",fillStyle:"rgba(255, 255, 49, 0.2)",lineWidth:1},transform:{rotate:45}}),this.ice.addTool(this.transformControlPanel),this.transformControlPanel.disable(),this.lineControlPanel=new Rs({left:700,top:50,width:100,height:100,style:{strokeStyle:"rgba(255, 255, 49, 0)",fillStyle:"rgba(255, 255, 49, 0)",lineWidth:1}}),this.ice.addTool(this.lineControlPanel),this.lineControlPanel.disable()}function wo(t){return o(this,wo),n(s(t=rs.call(this,l(l({},t),{},{zIndex:10000001,linkable:!1,showMinBoundingBox:!1,showMaxBoundingBox:!1}))),"rotateControlSize",8),n(s(t),"rotateControlffsetY",60),n(s(t),"resizeControlInstanceCache",[]),n(s(t),"resizeControlSize",16),t.initControls(),t}function xo(t){return o(this,xo),as.call(this,l(l({},t),{},{linkable:!1}))}function Co(t){return o(this,Co),hs.call(this,l(l({position:"l",direction:"x",quadrant:1},t),{},{linkable:!1}))}function Po(t){return o(this,Po),n(s(t=ls.call(this,l(l({},t),{},{zIndex:10000010,linkable:!1,showMinBoundingBox:!1,showMaxBoundingBox:!1}))),"controlSize",16),t.initControls(),t}function So(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{};return o(this,So),us.call(this,l({linkable:!1},t))}function Mo(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},t=(o(this,Mo),l({radius:10},t));return t.radiusX=t.radius,t.radiusY=t.radius,cs.call(this,t)}function Oo(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},t=(o(this,Oo),l({radiusX:20,radiusY:10,rotation:0,startAngle:0,endAngle:2*Math.PI,counterclockwise:!0},t));return t.width=2*t.radiusX,t.height=2*t.radiusY,ds.call(this,t)}function D(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},t=(o(this,D),D.arrangeParam(t));return console.log(t),n(s(t=fs.call(this,t)),"links",{start:{},end:{}}),t}function Eo(t){return o(this,Eo),ps.call(this,l({dots:[],transformedDots:[],closePath:!0},t))}function Bo(){throw o(this,Bo),new Error("GeoUtil is a static util class.")}n(eo,"CACHE_SIZE",100);e(_o,[{key:"init",value:function(t){if(!t)throw new Error("ICE.init() failed...");if(this.ctx===t)throw new Error("同一个 canvas 实例只能 init 一次...");return this.root=B,q(t)?(this.canvasEl=this.root.document.getElementById(t),this.canvasEl.oncontextmenu=function(t){t.preventDefault(),t.stopPropagation()},this.canvasWidth=this.canvasEl.width,this.canvasHeight=this.canvasEl.height,this.canvasBoundingClientRect=this.canvasEl.getBoundingClientRect(),this.ctx=this.canvasEl.getContext("2d")):this.ctx=t,this.evtBus=new Us,j.regitserEvtBus(this.evtBus),j.start(),N.regitserEvtBus(this.evtBus),N.start(),this.eventBridge=new Js(this).start(),this.animationManager=new pt(this).start(),this.ddManager=new Zs(this).start(),this.controlPanelManager=new Xs(this).start(),this.renderer=new to(this).start(),this.linkSlotManager=new Qs(this).start(),this.serializer=new $s(this),this.deserializer=new Ys(this),this.imageCache=new eo(this),this}},{key:"addTool",value:function(t){-1===this.childNodes.indexOf(t)&&(this.evtBus.trigger(st,null,{component:t}),t.trigger(st),t.ice=this,t.root=this.root,t.ctx=this.ctx,t.evtBus=this.evtBus,this.toolNodes.push(t),this.dirty=!0,this.evtBus.trigger(ot,null,{component:t}),t.trigger(ot))}},{key:"removeTool",value:function(t){this.evtBus.trigger(rt,null,{component:t}),t.destory(),this.toolNodes.splice(this.toolNodes.indexOf(t),1),this.dirty=!0}},{key:"addChild",value:function(t){var e=!(1<arguments.length&&void 0!==arguments[1])||arguments[1];-1===this.childNodes.indexOf(t)&&(this.evtBus.trigger(st,null,{component:t}),t.trigger(st),t.ice=this,t.root=this.root,t.ctx=this.ctx,t.evtBus=this.evtBus,t.parentNode=null,this.childNodes.push(t),Object.keys(t.props.animations).length&&this.animationManager.add(t),this.dirty=e,this.evtBus.trigger(ot,null,{component:t}),t.trigger(ot))}},{key:"addChildren",value:function(t){for(var e=0;e<t.length;e++)this.addChild(t[e],!1);this.dirty=!0}},{key:"removeChild",value:function(t){var e=!(1<arguments.length&&void 0!==arguments[1])||arguments[1];this.evtBus.trigger(rt,null,{component:t}),t.destory(),this.childNodes.splice(this.childNodes.indexOf(t),1),this.dirty=e}},{key:"removeChildren",value:function(t){for(var e=0;e<t.length;e++)this.removeChild(t[e],!1);this.dirty=!0}},{key:"clearAll",value:function(){this.removeChildren(u(this.childNodes))}},{key:"findComponent",value:function(e){return this.childNodes.filter(function(t){return t.props.id===e})[0]}},{key:"dirty",get:function(){return this.__dirty},set:function(t){this.__dirty=t}},{key:"toJSON",value:function(){return this.serializer.toJSON()}},{key:"fromJSON",value:function(t){var e=this,i=Date.now(),t=(j.stop(),this.renderer.stop(),this.eventBridge.stopped=!0,this.animationManager.stop(),this.ddManager.stop(),this.controlPanelManager.stop(),this.linkSlotManager.stop(),this.clearAll(),this.deserializer.fromJSON(t),j.start(),this.renderer.start(),this.animationManager.start(),this.ddManager.start(),this.controlPanelManager.start(),this.linkSlotManager.start(),setTimeout(function(){e.eventBridge.stopped=!1},300),Date.now());console.log("fromJSON> ".concat(t-i," ms"))}}]);d=_o;function _o(){o(this,_o),n(this,"childNodes",[]),n(this,"toolNodes",[]),n(this,"canvasWidth",0),n(this,"canvasHeight",0),n(this,"selectionList",[]),n(this,"__dirty",!0),n(this,"_lastUpdateTime",Date.now())}t.AnimationManager=pt,t.CanvasRenderer=to,t.DOMEventBridge=Js,t.EventBus=Us,t.GeoLine=Fs,t.GeoPoint=I,t.GeoUtil=zs,t.ICE=d,t.ICEBezier=w,t.ICEBoundingBox=Bn,t.ICECircle=E,t.ICEComponent=zn,t.ICEControlPanel=qn,t.ICEControlPanelManager=Xs,t.ICEDotPath=m,t.ICEEllipse=y,t.ICEEventTarget=c,t.ICEGroup=k,t.ICEImage=x,t.ICEIsogon=M,t.ICELinkHook=Ls,t.ICELinkSlot=Ks,t.ICEMatrix=_n,t.ICEPath=g,t.ICEPolyLine=Ts,t.ICERect=P,t.ICERose=J,t.ICEStar=W,t.ICEText=b,t.ICEVisioLink=C,t.LineControlPanel=Rs,t.ResizeControl=Hs,t.RotateControl=Vs,t.TransformControlPanel=qs,Object.defineProperty(t,"__esModule",{value:!0})});
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"author": "大漠穷秋",
|
|
3
3
|
"name": "ice-render",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.4",
|
|
5
5
|
"description": "A canvas engine for interactive graphics.",
|
|
6
6
|
"repository": "https://gitee.com/ice-render/ice-render",
|
|
7
7
|
"browser": "dist/index.umd.js",
|
|
@@ -12,31 +12,32 @@
|
|
|
12
12
|
"dist"
|
|
13
13
|
],
|
|
14
14
|
"scripts": {
|
|
15
|
-
"
|
|
16
|
-
"build
|
|
15
|
+
"start": "rollup -c -w --environment NODE_ENV:development",
|
|
16
|
+
"build": "npm run clean && npm run build:js",
|
|
17
|
+
"build:js": "rollup -c --environment NODE_ENV:production",
|
|
17
18
|
"build:types": "tsc --emitDeclarationOnly",
|
|
18
19
|
"clean": "rimraf dist",
|
|
19
20
|
"pretty": "prettier src/**/* --write",
|
|
20
|
-
"start": "rollup -c -w",
|
|
21
21
|
"types:check": "tsc --noEmit",
|
|
22
22
|
"types:watch": "npm run types:check -- --watch"
|
|
23
23
|
},
|
|
24
24
|
"dependencies": {
|
|
25
|
-
"gl-matrix": "3.3
|
|
25
|
+
"gl-matrix": "3.4.3",
|
|
26
26
|
"lodash": "4.17.21"
|
|
27
27
|
},
|
|
28
28
|
"devDependencies": {
|
|
29
|
-
"@babel/core": "7.
|
|
30
|
-
"@babel/plugin-proposal-class-properties": "7.16.
|
|
31
|
-
"@babel/
|
|
29
|
+
"@babel/core": "7.17.8",
|
|
30
|
+
"@babel/plugin-proposal-class-properties": "7.16.7",
|
|
31
|
+
"@babel/plugin-proposal-decorators": "7.17.8",
|
|
32
|
+
"@babel/preset-env": "7.16.11",
|
|
32
33
|
"@babel/preset-typescript": "7.9.0",
|
|
33
34
|
"@commitlint/cli": "8.3.5",
|
|
34
35
|
"@commitlint/config-conventional": "8.3.4",
|
|
35
|
-
"@rollup/plugin-commonjs": "
|
|
36
|
-
"@rollup/plugin-json": "4.0
|
|
37
|
-
"@rollup/plugin-node-resolve": "
|
|
36
|
+
"@rollup/plugin-commonjs": "21.0.2",
|
|
37
|
+
"@rollup/plugin-json": "4.1.0",
|
|
38
|
+
"@rollup/plugin-node-resolve": "13.1.3",
|
|
38
39
|
"@types/jest": "25.2.1",
|
|
39
|
-
"@types/lodash": "4.14.
|
|
40
|
+
"@types/lodash": "4.14.180",
|
|
40
41
|
"@typescript-eslint/eslint-plugin": "2.29.0",
|
|
41
42
|
"@typescript-eslint/parser": "2.29.0",
|
|
42
43
|
"eslint": "6.8.0",
|
|
@@ -47,11 +48,13 @@
|
|
|
47
48
|
"jest": "25.4.0",
|
|
48
49
|
"lint-staged": "10.1.7",
|
|
49
50
|
"rimraf": "3.0.2",
|
|
50
|
-
"rollup": "2.
|
|
51
|
+
"rollup": "2.70.1",
|
|
51
52
|
"rollup-plugin-babel": "4.4.0",
|
|
53
|
+
"rollup-plugin-license": "2.3.0",
|
|
52
54
|
"rollup-plugin-terser": "5.3.0",
|
|
53
|
-
"
|
|
54
|
-
"
|
|
55
|
+
"rollup-plugin-uglify": "6.0.4",
|
|
56
|
+
"rollup-plugin-visualizer": "5.5.0",
|
|
57
|
+
"typescript": "4.6.2"
|
|
55
58
|
},
|
|
56
59
|
"commitlint": {
|
|
57
60
|
"extends": [
|
|
@@ -72,5 +75,21 @@
|
|
|
72
75
|
"canvas",
|
|
73
76
|
"graphic"
|
|
74
77
|
],
|
|
78
|
+
"browserslist": {
|
|
79
|
+
"production": [
|
|
80
|
+
">0.2%",
|
|
81
|
+
"not dead",
|
|
82
|
+
"not op_mini all"
|
|
83
|
+
],
|
|
84
|
+
"development": [
|
|
85
|
+
"last 1 chrome version",
|
|
86
|
+
"last 1 firefox version",
|
|
87
|
+
"last 1 safari version"
|
|
88
|
+
]
|
|
89
|
+
},
|
|
90
|
+
"engines": {
|
|
91
|
+
"npm": ">=6.4.1",
|
|
92
|
+
"node": ">=10.13.0"
|
|
93
|
+
},
|
|
75
94
|
"license": "MIT"
|
|
76
95
|
}
|