qauMaWeb/node_modules/.cache/babel-loader/b869881c1fc3e3534971749c2f6...

1 line
26 KiB
JSON

{"ast":null,"code":"import * as matrix from './matrix.js';\nimport * as vector from './vector.js';\nvar mIdentity = matrix.identity;\nvar EPSILON = 5e-5;\n\nfunction isNotAroundZero(val) {\n return val > EPSILON || val < -EPSILON;\n}\n\nvar scaleTmp = [];\nvar tmpTransform = [];\nvar originTransform = matrix.create();\nvar abs = Math.abs;\n\nvar Transformable = function () {\n function Transformable() {}\n\n Transformable.prototype.getLocalTransform = function (m) {\n return Transformable.getLocalTransform(this, m);\n };\n\n Transformable.prototype.setPosition = function (arr) {\n this.x = arr[0];\n this.y = arr[1];\n };\n\n Transformable.prototype.setScale = function (arr) {\n this.scaleX = arr[0];\n this.scaleY = arr[1];\n };\n\n Transformable.prototype.setSkew = function (arr) {\n this.skewX = arr[0];\n this.skewY = arr[1];\n };\n\n Transformable.prototype.setOrigin = function (arr) {\n this.originX = arr[0];\n this.originY = arr[1];\n };\n\n Transformable.prototype.needLocalTransform = function () {\n return isNotAroundZero(this.rotation) || isNotAroundZero(this.x) || isNotAroundZero(this.y) || isNotAroundZero(this.scaleX - 1) || isNotAroundZero(this.scaleY - 1) || isNotAroundZero(this.skewX) || isNotAroundZero(this.skewY);\n };\n\n Transformable.prototype.updateTransform = function () {\n var parentTransform = this.parent && this.parent.transform;\n var needLocalTransform = this.needLocalTransform();\n var m = this.transform;\n\n if (!(needLocalTransform || parentTransform)) {\n m && mIdentity(m);\n return;\n }\n\n m = m || matrix.create();\n\n if (needLocalTransform) {\n this.getLocalTransform(m);\n } else {\n mIdentity(m);\n }\n\n if (parentTransform) {\n if (needLocalTransform) {\n matrix.mul(m, parentTransform, m);\n } else {\n matrix.copy(m, parentTransform);\n }\n }\n\n this.transform = m;\n\n this._resolveGlobalScaleRatio(m);\n };\n\n Transformable.prototype._resolveGlobalScaleRatio = function (m) {\n var globalScaleRatio = this.globalScaleRatio;\n\n if (globalScaleRatio != null && globalScaleRatio !== 1) {\n this.getGlobalScale(scaleTmp);\n var relX = scaleTmp[0] < 0 ? -1 : 1;\n var relY = scaleTmp[1] < 0 ? -1 : 1;\n var sx = ((scaleTmp[0] - relX) * globalScaleRatio + relX) / scaleTmp[0] || 0;\n var sy = ((scaleTmp[1] - relY) * globalScaleRatio + relY) / scaleTmp[1] || 0;\n m[0] *= sx;\n m[1] *= sx;\n m[2] *= sy;\n m[3] *= sy;\n }\n\n this.invTransform = this.invTransform || matrix.create();\n matrix.invert(this.invTransform, m);\n };\n\n Transformable.prototype.getComputedTransform = function () {\n var transformNode = this;\n var ancestors = [];\n\n while (transformNode) {\n ancestors.push(transformNode);\n transformNode = transformNode.parent;\n }\n\n while (transformNode = ancestors.pop()) {\n transformNode.updateTransform();\n }\n\n return this.transform;\n };\n\n Transformable.prototype.setLocalTransform = function (m) {\n if (!m) {\n return;\n }\n\n var sx = m[0] * m[0] + m[1] * m[1];\n var sy = m[2] * m[2] + m[3] * m[3];\n var rotation = Math.atan2(m[1], m[0]);\n var shearX = Math.PI / 2 + rotation - Math.atan2(m[3], m[2]);\n sy = Math.sqrt(sy) * Math.cos(shearX);\n sx = Math.sqrt(sx);\n this.skewX = shearX;\n this.skewY = 0;\n this.rotation = -rotation;\n this.x = +m[4];\n this.y = +m[5];\n this.scaleX = sx;\n this.scaleY = sy;\n this.originX = 0;\n this.originY = 0;\n };\n\n Transformable.prototype.decomposeTransform = function () {\n if (!this.transform) {\n return;\n }\n\n var parent = this.parent;\n var m = this.transform;\n\n if (parent && parent.transform) {\n matrix.mul(tmpTransform, parent.invTransform, m);\n m = tmpTransform;\n }\n\n var ox = this.originX;\n var oy = this.originY;\n\n if (ox || oy) {\n originTransform[4] = ox;\n originTransform[5] = oy;\n matrix.mul(tmpTransform, m, originTransform);\n tmpTransform[4] -= ox;\n tmpTransform[5] -= oy;\n m = tmpTransform;\n }\n\n this.setLocalTransform(m);\n };\n\n Transformable.prototype.getGlobalScale = function (out) {\n var m = this.transform;\n out = out || [];\n\n if (!m) {\n out[0] = 1;\n out[1] = 1;\n return out;\n }\n\n out[0] = Math.sqrt(m[0] * m[0] + m[1] * m[1]);\n out[1] = Math.sqrt(m[2] * m[2] + m[3] * m[3]);\n\n if (m[0] < 0) {\n out[0] = -out[0];\n }\n\n if (m[3] < 0) {\n out[1] = -out[1];\n }\n\n return out;\n };\n\n Transformable.prototype.transformCoordToLocal = function (x, y) {\n var v2 = [x, y];\n var invTransform = this.invTransform;\n\n if (invTransform) {\n vector.applyTransform(v2, v2, invTransform);\n }\n\n return v2;\n };\n\n Transformable.prototype.transformCoordToGlobal = function (x, y) {\n var v2 = [x, y];\n var transform = this.transform;\n\n if (transform) {\n vector.applyTransform(v2, v2, transform);\n }\n\n return v2;\n };\n\n Transformable.prototype.getLineScale = function () {\n var m = this.transform;\n return m && abs(m[0] - 1) > 1e-10 && abs(m[3] - 1) > 1e-10 ? Math.sqrt(abs(m[0] * m[3] - m[2] * m[1])) : 1;\n };\n\n Transformable.prototype.copyTransform = function (source) {\n copyTransform(this, source);\n };\n\n Transformable.getLocalTransform = function (target, m) {\n m = m || [];\n var ox = target.originX || 0;\n var oy = target.originY || 0;\n var sx = target.scaleX;\n var sy = target.scaleY;\n var ax = target.anchorX;\n var ay = target.anchorY;\n var rotation = target.rotation || 0;\n var x = target.x;\n var y = target.y;\n var skewX = target.skewX ? Math.tan(target.skewX) : 0;\n var skewY = target.skewY ? Math.tan(-target.skewY) : 0;\n\n if (ox || oy || ax || ay) {\n var dx = ox + ax;\n var dy = oy + ay;\n m[4] = -dx * sx - skewX * dy * sy;\n m[5] = -dy * sy - skewY * dx * sx;\n } else {\n m[4] = m[5] = 0;\n }\n\n m[0] = sx;\n m[3] = sy;\n m[1] = skewY * sx;\n m[2] = skewX * sy;\n rotation && matrix.rotate(m, m, rotation);\n m[4] += ox + x;\n m[5] += oy + y;\n return m;\n };\n\n Transformable.initDefaultProps = function () {\n var proto = Transformable.prototype;\n proto.scaleX = proto.scaleY = proto.globalScaleRatio = 1;\n proto.x = proto.y = proto.originX = proto.originY = proto.skewX = proto.skewY = proto.rotation = proto.anchorX = proto.anchorY = 0;\n }();\n\n return Transformable;\n}();\n\n;\nexport var TRANSFORMABLE_PROPS = ['x', 'y', 'originX', 'originY', 'anchorX', 'anchorY', 'rotation', 'scaleX', 'scaleY', 'skewX', 'skewY'];\nexport function copyTransform(target, source) {\n for (var i = 0; i < TRANSFORMABLE_PROPS.length; i++) {\n var propName = TRANSFORMABLE_PROPS[i];\n target[propName] = source[propName];\n }\n}\nexport default Transformable;","map":{"version":3,"sources":["D:/Work/WorkSpace/GitWorkSpace/TenShop/resource/ElectronicMall/src/ElectronicMallVue/node_modules/zrender/lib/core/Transformable.js"],"names":["matrix","vector","mIdentity","identity","EPSILON","isNotAroundZero","val","scaleTmp","tmpTransform","originTransform","create","abs","Math","Transformable","prototype","getLocalTransform","m","setPosition","arr","x","y","setScale","scaleX","scaleY","setSkew","skewX","skewY","setOrigin","originX","originY","needLocalTransform","rotation","updateTransform","parentTransform","parent","transform","mul","copy","_resolveGlobalScaleRatio","globalScaleRatio","getGlobalScale","relX","relY","sx","sy","invTransform","invert","getComputedTransform","transformNode","ancestors","push","pop","setLocalTransform","atan2","shearX","PI","sqrt","cos","decomposeTransform","ox","oy","out","transformCoordToLocal","v2","applyTransform","transformCoordToGlobal","getLineScale","copyTransform","source","target","ax","anchorX","ay","anchorY","tan","dx","dy","rotate","initDefaultProps","proto","TRANSFORMABLE_PROPS","i","length","propName"],"mappings":"AAAA,OAAO,KAAKA,MAAZ,MAAwB,aAAxB;AACA,OAAO,KAAKC,MAAZ,MAAwB,aAAxB;AACA,IAAIC,SAAS,GAAGF,MAAM,CAACG,QAAvB;AACA,IAAIC,OAAO,GAAG,IAAd;;AACA,SAASC,eAAT,CAAyBC,GAAzB,EAA8B;AAC1B,SAAOA,GAAG,GAAGF,OAAN,IAAiBE,GAAG,GAAG,CAACF,OAA/B;AACH;;AACD,IAAIG,QAAQ,GAAG,EAAf;AACA,IAAIC,YAAY,GAAG,EAAnB;AACA,IAAIC,eAAe,GAAGT,MAAM,CAACU,MAAP,EAAtB;AACA,IAAIC,GAAG,GAAGC,IAAI,CAACD,GAAf;;AACA,IAAIE,aAAa,GAAI,YAAY;AAC7B,WAASA,aAAT,GAAyB,CACxB;;AACDA,EAAAA,aAAa,CAACC,SAAd,CAAwBC,iBAAxB,GAA4C,UAAUC,CAAV,EAAa;AACrD,WAAOH,aAAa,CAACE,iBAAd,CAAgC,IAAhC,EAAsCC,CAAtC,CAAP;AACH,GAFD;;AAGAH,EAAAA,aAAa,CAACC,SAAd,CAAwBG,WAAxB,GAAsC,UAAUC,GAAV,EAAe;AACjD,SAAKC,CAAL,GAASD,GAAG,CAAC,CAAD,CAAZ;AACA,SAAKE,CAAL,GAASF,GAAG,CAAC,CAAD,CAAZ;AACH,GAHD;;AAIAL,EAAAA,aAAa,CAACC,SAAd,CAAwBO,QAAxB,GAAmC,UAAUH,GAAV,EAAe;AAC9C,SAAKI,MAAL,GAAcJ,GAAG,CAAC,CAAD,CAAjB;AACA,SAAKK,MAAL,GAAcL,GAAG,CAAC,CAAD,CAAjB;AACH,GAHD;;AAIAL,EAAAA,aAAa,CAACC,SAAd,CAAwBU,OAAxB,GAAkC,UAAUN,GAAV,EAAe;AAC7C,SAAKO,KAAL,GAAaP,GAAG,CAAC,CAAD,CAAhB;AACA,SAAKQ,KAAL,GAAaR,GAAG,CAAC,CAAD,CAAhB;AACH,GAHD;;AAIAL,EAAAA,aAAa,CAACC,SAAd,CAAwBa,SAAxB,GAAoC,UAAUT,GAAV,EAAe;AAC/C,SAAKU,OAAL,GAAeV,GAAG,CAAC,CAAD,CAAlB;AACA,SAAKW,OAAL,GAAeX,GAAG,CAAC,CAAD,CAAlB;AACH,GAHD;;AAIAL,EAAAA,aAAa,CAACC,SAAd,CAAwBgB,kBAAxB,GAA6C,YAAY;AACrD,WAAOzB,eAAe,CAAC,KAAK0B,QAAN,CAAf,IACA1B,eAAe,CAAC,KAAKc,CAAN,CADf,IAEAd,eAAe,CAAC,KAAKe,CAAN,CAFf,IAGAf,eAAe,CAAC,KAAKiB,MAAL,GAAc,CAAf,CAHf,IAIAjB,eAAe,CAAC,KAAKkB,MAAL,GAAc,CAAf,CAJf,IAKAlB,eAAe,CAAC,KAAKoB,KAAN,CALf,IAMApB,eAAe,CAAC,KAAKqB,KAAN,CANtB;AAOH,GARD;;AASAb,EAAAA,aAAa,CAACC,SAAd,CAAwBkB,eAAxB,GAA0C,YAAY;AAClD,QAAIC,eAAe,GAAG,KAAKC,MAAL,IAAe,KAAKA,MAAL,CAAYC,SAAjD;AACA,QAAIL,kBAAkB,GAAG,KAAKA,kBAAL,EAAzB;AACA,QAAId,CAAC,GAAG,KAAKmB,SAAb;;AACA,QAAI,EAAEL,kBAAkB,IAAIG,eAAxB,CAAJ,EAA8C;AAC1CjB,MAAAA,CAAC,IAAId,SAAS,CAACc,CAAD,CAAd;AACA;AACH;;AACDA,IAAAA,CAAC,GAAGA,CAAC,IAAIhB,MAAM,CAACU,MAAP,EAAT;;AACA,QAAIoB,kBAAJ,EAAwB;AACpB,WAAKf,iBAAL,CAAuBC,CAAvB;AACH,KAFD,MAGK;AACDd,MAAAA,SAAS,CAACc,CAAD,CAAT;AACH;;AACD,QAAIiB,eAAJ,EAAqB;AACjB,UAAIH,kBAAJ,EAAwB;AACpB9B,QAAAA,MAAM,CAACoC,GAAP,CAAWpB,CAAX,EAAciB,eAAd,EAA+BjB,CAA/B;AACH,OAFD,MAGK;AACDhB,QAAAA,MAAM,CAACqC,IAAP,CAAYrB,CAAZ,EAAeiB,eAAf;AACH;AACJ;;AACD,SAAKE,SAAL,GAAiBnB,CAAjB;;AACA,SAAKsB,wBAAL,CAA8BtB,CAA9B;AACH,GAzBD;;AA0BAH,EAAAA,aAAa,CAACC,SAAd,CAAwBwB,wBAAxB,GAAmD,UAAUtB,CAAV,EAAa;AAC5D,QAAIuB,gBAAgB,GAAG,KAAKA,gBAA5B;;AACA,QAAIA,gBAAgB,IAAI,IAApB,IAA4BA,gBAAgB,KAAK,CAArD,EAAwD;AACpD,WAAKC,cAAL,CAAoBjC,QAApB;AACA,UAAIkC,IAAI,GAAGlC,QAAQ,CAAC,CAAD,CAAR,GAAc,CAAd,GAAkB,CAAC,CAAnB,GAAuB,CAAlC;AACA,UAAImC,IAAI,GAAGnC,QAAQ,CAAC,CAAD,CAAR,GAAc,CAAd,GAAkB,CAAC,CAAnB,GAAuB,CAAlC;AACA,UAAIoC,EAAE,GAAG,CAAC,CAACpC,QAAQ,CAAC,CAAD,CAAR,GAAckC,IAAf,IAAuBF,gBAAvB,GAA0CE,IAA3C,IAAmDlC,QAAQ,CAAC,CAAD,CAA3D,IAAkE,CAA3E;AACA,UAAIqC,EAAE,GAAG,CAAC,CAACrC,QAAQ,CAAC,CAAD,CAAR,GAAcmC,IAAf,IAAuBH,gBAAvB,GAA0CG,IAA3C,IAAmDnC,QAAQ,CAAC,CAAD,CAA3D,IAAkE,CAA3E;AACAS,MAAAA,CAAC,CAAC,CAAD,CAAD,IAAQ2B,EAAR;AACA3B,MAAAA,CAAC,CAAC,CAAD,CAAD,IAAQ2B,EAAR;AACA3B,MAAAA,CAAC,CAAC,CAAD,CAAD,IAAQ4B,EAAR;AACA5B,MAAAA,CAAC,CAAC,CAAD,CAAD,IAAQ4B,EAAR;AACH;;AACD,SAAKC,YAAL,GAAoB,KAAKA,YAAL,IAAqB7C,MAAM,CAACU,MAAP,EAAzC;AACAV,IAAAA,MAAM,CAAC8C,MAAP,CAAc,KAAKD,YAAnB,EAAiC7B,CAAjC;AACH,GAfD;;AAgBAH,EAAAA,aAAa,CAACC,SAAd,CAAwBiC,oBAAxB,GAA+C,YAAY;AACvD,QAAIC,aAAa,GAAG,IAApB;AACA,QAAIC,SAAS,GAAG,EAAhB;;AACA,WAAOD,aAAP,EAAsB;AAClBC,MAAAA,SAAS,CAACC,IAAV,CAAeF,aAAf;AACAA,MAAAA,aAAa,GAAGA,aAAa,CAACd,MAA9B;AACH;;AACD,WAAOc,aAAa,GAAGC,SAAS,CAACE,GAAV,EAAvB,EAAwC;AACpCH,MAAAA,aAAa,CAAChB,eAAd;AACH;;AACD,WAAO,KAAKG,SAAZ;AACH,GAXD;;AAYAtB,EAAAA,aAAa,CAACC,SAAd,CAAwBsC,iBAAxB,GAA4C,UAAUpC,CAAV,EAAa;AACrD,QAAI,CAACA,CAAL,EAAQ;AACJ;AACH;;AACD,QAAI2B,EAAE,GAAG3B,CAAC,CAAC,CAAD,CAAD,GAAOA,CAAC,CAAC,CAAD,CAAR,GAAcA,CAAC,CAAC,CAAD,CAAD,GAAOA,CAAC,CAAC,CAAD,CAA/B;AACA,QAAI4B,EAAE,GAAG5B,CAAC,CAAC,CAAD,CAAD,GAAOA,CAAC,CAAC,CAAD,CAAR,GAAcA,CAAC,CAAC,CAAD,CAAD,GAAOA,CAAC,CAAC,CAAD,CAA/B;AACA,QAAIe,QAAQ,GAAGnB,IAAI,CAACyC,KAAL,CAAWrC,CAAC,CAAC,CAAD,CAAZ,EAAiBA,CAAC,CAAC,CAAD,CAAlB,CAAf;AACA,QAAIsC,MAAM,GAAG1C,IAAI,CAAC2C,EAAL,GAAU,CAAV,GAAcxB,QAAd,GAAyBnB,IAAI,CAACyC,KAAL,CAAWrC,CAAC,CAAC,CAAD,CAAZ,EAAiBA,CAAC,CAAC,CAAD,CAAlB,CAAtC;AACA4B,IAAAA,EAAE,GAAGhC,IAAI,CAAC4C,IAAL,CAAUZ,EAAV,IAAgBhC,IAAI,CAAC6C,GAAL,CAASH,MAAT,CAArB;AACAX,IAAAA,EAAE,GAAG/B,IAAI,CAAC4C,IAAL,CAAUb,EAAV,CAAL;AACA,SAAKlB,KAAL,GAAa6B,MAAb;AACA,SAAK5B,KAAL,GAAa,CAAb;AACA,SAAKK,QAAL,GAAgB,CAACA,QAAjB;AACA,SAAKZ,CAAL,GAAS,CAACH,CAAC,CAAC,CAAD,CAAX;AACA,SAAKI,CAAL,GAAS,CAACJ,CAAC,CAAC,CAAD,CAAX;AACA,SAAKM,MAAL,GAAcqB,EAAd;AACA,SAAKpB,MAAL,GAAcqB,EAAd;AACA,SAAKhB,OAAL,GAAe,CAAf;AACA,SAAKC,OAAL,GAAe,CAAf;AACH,GAnBD;;AAoBAhB,EAAAA,aAAa,CAACC,SAAd,CAAwB4C,kBAAxB,GAA6C,YAAY;AACrD,QAAI,CAAC,KAAKvB,SAAV,EAAqB;AACjB;AACH;;AACD,QAAID,MAAM,GAAG,KAAKA,MAAlB;AACA,QAAIlB,CAAC,GAAG,KAAKmB,SAAb;;AACA,QAAID,MAAM,IAAIA,MAAM,CAACC,SAArB,EAAgC;AAC5BnC,MAAAA,MAAM,CAACoC,GAAP,CAAW5B,YAAX,EAAyB0B,MAAM,CAACW,YAAhC,EAA8C7B,CAA9C;AACAA,MAAAA,CAAC,GAAGR,YAAJ;AACH;;AACD,QAAImD,EAAE,GAAG,KAAK/B,OAAd;AACA,QAAIgC,EAAE,GAAG,KAAK/B,OAAd;;AACA,QAAI8B,EAAE,IAAIC,EAAV,EAAc;AACVnD,MAAAA,eAAe,CAAC,CAAD,CAAf,GAAqBkD,EAArB;AACAlD,MAAAA,eAAe,CAAC,CAAD,CAAf,GAAqBmD,EAArB;AACA5D,MAAAA,MAAM,CAACoC,GAAP,CAAW5B,YAAX,EAAyBQ,CAAzB,EAA4BP,eAA5B;AACAD,MAAAA,YAAY,CAAC,CAAD,CAAZ,IAAmBmD,EAAnB;AACAnD,MAAAA,YAAY,CAAC,CAAD,CAAZ,IAAmBoD,EAAnB;AACA5C,MAAAA,CAAC,GAAGR,YAAJ;AACH;;AACD,SAAK4C,iBAAL,CAAuBpC,CAAvB;AACH,GArBD;;AAsBAH,EAAAA,aAAa,CAACC,SAAd,CAAwB0B,cAAxB,GAAyC,UAAUqB,GAAV,EAAe;AACpD,QAAI7C,CAAC,GAAG,KAAKmB,SAAb;AACA0B,IAAAA,GAAG,GAAGA,GAAG,IAAI,EAAb;;AACA,QAAI,CAAC7C,CAAL,EAAQ;AACJ6C,MAAAA,GAAG,CAAC,CAAD,CAAH,GAAS,CAAT;AACAA,MAAAA,GAAG,CAAC,CAAD,CAAH,GAAS,CAAT;AACA,aAAOA,GAAP;AACH;;AACDA,IAAAA,GAAG,CAAC,CAAD,CAAH,GAASjD,IAAI,CAAC4C,IAAL,CAAUxC,CAAC,CAAC,CAAD,CAAD,GAAOA,CAAC,CAAC,CAAD,CAAR,GAAcA,CAAC,CAAC,CAAD,CAAD,GAAOA,CAAC,CAAC,CAAD,CAAhC,CAAT;AACA6C,IAAAA,GAAG,CAAC,CAAD,CAAH,GAASjD,IAAI,CAAC4C,IAAL,CAAUxC,CAAC,CAAC,CAAD,CAAD,GAAOA,CAAC,CAAC,CAAD,CAAR,GAAcA,CAAC,CAAC,CAAD,CAAD,GAAOA,CAAC,CAAC,CAAD,CAAhC,CAAT;;AACA,QAAIA,CAAC,CAAC,CAAD,CAAD,GAAO,CAAX,EAAc;AACV6C,MAAAA,GAAG,CAAC,CAAD,CAAH,GAAS,CAACA,GAAG,CAAC,CAAD,CAAb;AACH;;AACD,QAAI7C,CAAC,CAAC,CAAD,CAAD,GAAO,CAAX,EAAc;AACV6C,MAAAA,GAAG,CAAC,CAAD,CAAH,GAAS,CAACA,GAAG,CAAC,CAAD,CAAb;AACH;;AACD,WAAOA,GAAP;AACH,GAjBD;;AAkBAhD,EAAAA,aAAa,CAACC,SAAd,CAAwBgD,qBAAxB,GAAgD,UAAU3C,CAAV,EAAaC,CAAb,EAAgB;AAC5D,QAAI2C,EAAE,GAAG,CAAC5C,CAAD,EAAIC,CAAJ,CAAT;AACA,QAAIyB,YAAY,GAAG,KAAKA,YAAxB;;AACA,QAAIA,YAAJ,EAAkB;AACd5C,MAAAA,MAAM,CAAC+D,cAAP,CAAsBD,EAAtB,EAA0BA,EAA1B,EAA8BlB,YAA9B;AACH;;AACD,WAAOkB,EAAP;AACH,GAPD;;AAQAlD,EAAAA,aAAa,CAACC,SAAd,CAAwBmD,sBAAxB,GAAiD,UAAU9C,CAAV,EAAaC,CAAb,EAAgB;AAC7D,QAAI2C,EAAE,GAAG,CAAC5C,CAAD,EAAIC,CAAJ,CAAT;AACA,QAAIe,SAAS,GAAG,KAAKA,SAArB;;AACA,QAAIA,SAAJ,EAAe;AACXlC,MAAAA,MAAM,CAAC+D,cAAP,CAAsBD,EAAtB,EAA0BA,EAA1B,EAA8B5B,SAA9B;AACH;;AACD,WAAO4B,EAAP;AACH,GAPD;;AAQAlD,EAAAA,aAAa,CAACC,SAAd,CAAwBoD,YAAxB,GAAuC,YAAY;AAC/C,QAAIlD,CAAC,GAAG,KAAKmB,SAAb;AACA,WAAOnB,CAAC,IAAIL,GAAG,CAACK,CAAC,CAAC,CAAD,CAAD,GAAO,CAAR,CAAH,GAAgB,KAArB,IAA8BL,GAAG,CAACK,CAAC,CAAC,CAAD,CAAD,GAAO,CAAR,CAAH,GAAgB,KAA9C,GACDJ,IAAI,CAAC4C,IAAL,CAAU7C,GAAG,CAACK,CAAC,CAAC,CAAD,CAAD,GAAOA,CAAC,CAAC,CAAD,CAAR,GAAcA,CAAC,CAAC,CAAD,CAAD,GAAOA,CAAC,CAAC,CAAD,CAAvB,CAAb,CADC,GAED,CAFN;AAGH,GALD;;AAMAH,EAAAA,aAAa,CAACC,SAAd,CAAwBqD,aAAxB,GAAwC,UAAUC,MAAV,EAAkB;AACtDD,IAAAA,aAAa,CAAC,IAAD,EAAOC,MAAP,CAAb;AACH,GAFD;;AAGAvD,EAAAA,aAAa,CAACE,iBAAd,GAAkC,UAAUsD,MAAV,EAAkBrD,CAAlB,EAAqB;AACnDA,IAAAA,CAAC,GAAGA,CAAC,IAAI,EAAT;AACA,QAAI2C,EAAE,GAAGU,MAAM,CAACzC,OAAP,IAAkB,CAA3B;AACA,QAAIgC,EAAE,GAAGS,MAAM,CAACxC,OAAP,IAAkB,CAA3B;AACA,QAAIc,EAAE,GAAG0B,MAAM,CAAC/C,MAAhB;AACA,QAAIsB,EAAE,GAAGyB,MAAM,CAAC9C,MAAhB;AACA,QAAI+C,EAAE,GAAGD,MAAM,CAACE,OAAhB;AACA,QAAIC,EAAE,GAAGH,MAAM,CAACI,OAAhB;AACA,QAAI1C,QAAQ,GAAGsC,MAAM,CAACtC,QAAP,IAAmB,CAAlC;AACA,QAAIZ,CAAC,GAAGkD,MAAM,CAAClD,CAAf;AACA,QAAIC,CAAC,GAAGiD,MAAM,CAACjD,CAAf;AACA,QAAIK,KAAK,GAAG4C,MAAM,CAAC5C,KAAP,GAAeb,IAAI,CAAC8D,GAAL,CAASL,MAAM,CAAC5C,KAAhB,CAAf,GAAwC,CAApD;AACA,QAAIC,KAAK,GAAG2C,MAAM,CAAC3C,KAAP,GAAed,IAAI,CAAC8D,GAAL,CAAS,CAACL,MAAM,CAAC3C,KAAjB,CAAf,GAAyC,CAArD;;AACA,QAAIiC,EAAE,IAAIC,EAAN,IAAYU,EAAZ,IAAkBE,EAAtB,EAA0B;AACtB,UAAIG,EAAE,GAAGhB,EAAE,GAAGW,EAAd;AACA,UAAIM,EAAE,GAAGhB,EAAE,GAAGY,EAAd;AACAxD,MAAAA,CAAC,CAAC,CAAD,CAAD,GAAO,CAAC2D,EAAD,GAAMhC,EAAN,GAAWlB,KAAK,GAAGmD,EAAR,GAAahC,EAA/B;AACA5B,MAAAA,CAAC,CAAC,CAAD,CAAD,GAAO,CAAC4D,EAAD,GAAMhC,EAAN,GAAWlB,KAAK,GAAGiD,EAAR,GAAahC,EAA/B;AACH,KALD,MAMK;AACD3B,MAAAA,CAAC,CAAC,CAAD,CAAD,GAAOA,CAAC,CAAC,CAAD,CAAD,GAAO,CAAd;AACH;;AACDA,IAAAA,CAAC,CAAC,CAAD,CAAD,GAAO2B,EAAP;AACA3B,IAAAA,CAAC,CAAC,CAAD,CAAD,GAAO4B,EAAP;AACA5B,IAAAA,CAAC,CAAC,CAAD,CAAD,GAAOU,KAAK,GAAGiB,EAAf;AACA3B,IAAAA,CAAC,CAAC,CAAD,CAAD,GAAOS,KAAK,GAAGmB,EAAf;AACAb,IAAAA,QAAQ,IAAI/B,MAAM,CAAC6E,MAAP,CAAc7D,CAAd,EAAiBA,CAAjB,EAAoBe,QAApB,CAAZ;AACAf,IAAAA,CAAC,CAAC,CAAD,CAAD,IAAQ2C,EAAE,GAAGxC,CAAb;AACAH,IAAAA,CAAC,CAAC,CAAD,CAAD,IAAQ4C,EAAE,GAAGxC,CAAb;AACA,WAAOJ,CAAP;AACH,GA9BD;;AA+BAH,EAAAA,aAAa,CAACiE,gBAAd,GAAkC,YAAY;AAC1C,QAAIC,KAAK,GAAGlE,aAAa,CAACC,SAA1B;AACAiE,IAAAA,KAAK,CAACzD,MAAN,GACIyD,KAAK,CAACxD,MAAN,GACIwD,KAAK,CAACxC,gBAAN,GAAyB,CAFjC;AAGAwC,IAAAA,KAAK,CAAC5D,CAAN,GACI4D,KAAK,CAAC3D,CAAN,GACI2D,KAAK,CAACnD,OAAN,GACImD,KAAK,CAAClD,OAAN,GACIkD,KAAK,CAACtD,KAAN,GACIsD,KAAK,CAACrD,KAAN,GACIqD,KAAK,CAAChD,QAAN,GACIgD,KAAK,CAACR,OAAN,GACIQ,KAAK,CAACN,OAAN,GAAgB,CARhD;AASH,GAdgC,EAAjC;;AAeA,SAAO5D,aAAP;AACH,CAzNoB,EAArB;;AA0NA;AACA,OAAO,IAAImE,mBAAmB,GAAG,CAC7B,GAD6B,EACxB,GADwB,EACnB,SADmB,EACR,SADQ,EACG,SADH,EACc,SADd,EACyB,UADzB,EACqC,QADrC,EAC+C,QAD/C,EACyD,OADzD,EACkE,OADlE,CAA1B;AAGP,OAAO,SAASb,aAAT,CAAuBE,MAAvB,EAA+BD,MAA/B,EAAuC;AAC1C,OAAK,IAAIa,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGD,mBAAmB,CAACE,MAAxC,EAAgDD,CAAC,EAAjD,EAAqD;AACjD,QAAIE,QAAQ,GAAGH,mBAAmB,CAACC,CAAD,CAAlC;AACAZ,IAAAA,MAAM,CAACc,QAAD,CAAN,GAAmBf,MAAM,CAACe,QAAD,CAAzB;AACH;AACJ;AACD,eAAetE,aAAf","sourcesContent":["import * as matrix from './matrix.js';\nimport * as vector from './vector.js';\nvar mIdentity = matrix.identity;\nvar EPSILON = 5e-5;\nfunction isNotAroundZero(val) {\n return val > EPSILON || val < -EPSILON;\n}\nvar scaleTmp = [];\nvar tmpTransform = [];\nvar originTransform = matrix.create();\nvar abs = Math.abs;\nvar Transformable = (function () {\n function Transformable() {\n }\n Transformable.prototype.getLocalTransform = function (m) {\n return Transformable.getLocalTransform(this, m);\n };\n Transformable.prototype.setPosition = function (arr) {\n this.x = arr[0];\n this.y = arr[1];\n };\n Transformable.prototype.setScale = function (arr) {\n this.scaleX = arr[0];\n this.scaleY = arr[1];\n };\n Transformable.prototype.setSkew = function (arr) {\n this.skewX = arr[0];\n this.skewY = arr[1];\n };\n Transformable.prototype.setOrigin = function (arr) {\n this.originX = arr[0];\n this.originY = arr[1];\n };\n Transformable.prototype.needLocalTransform = function () {\n return isNotAroundZero(this.rotation)\n || isNotAroundZero(this.x)\n || isNotAroundZero(this.y)\n || isNotAroundZero(this.scaleX - 1)\n || isNotAroundZero(this.scaleY - 1)\n || isNotAroundZero(this.skewX)\n || isNotAroundZero(this.skewY);\n };\n Transformable.prototype.updateTransform = function () {\n var parentTransform = this.parent && this.parent.transform;\n var needLocalTransform = this.needLocalTransform();\n var m = this.transform;\n if (!(needLocalTransform || parentTransform)) {\n m && mIdentity(m);\n return;\n }\n m = m || matrix.create();\n if (needLocalTransform) {\n this.getLocalTransform(m);\n }\n else {\n mIdentity(m);\n }\n if (parentTransform) {\n if (needLocalTransform) {\n matrix.mul(m, parentTransform, m);\n }\n else {\n matrix.copy(m, parentTransform);\n }\n }\n this.transform = m;\n this._resolveGlobalScaleRatio(m);\n };\n Transformable.prototype._resolveGlobalScaleRatio = function (m) {\n var globalScaleRatio = this.globalScaleRatio;\n if (globalScaleRatio != null && globalScaleRatio !== 1) {\n this.getGlobalScale(scaleTmp);\n var relX = scaleTmp[0] < 0 ? -1 : 1;\n var relY = scaleTmp[1] < 0 ? -1 : 1;\n var sx = ((scaleTmp[0] - relX) * globalScaleRatio + relX) / scaleTmp[0] || 0;\n var sy = ((scaleTmp[1] - relY) * globalScaleRatio + relY) / scaleTmp[1] || 0;\n m[0] *= sx;\n m[1] *= sx;\n m[2] *= sy;\n m[3] *= sy;\n }\n this.invTransform = this.invTransform || matrix.create();\n matrix.invert(this.invTransform, m);\n };\n Transformable.prototype.getComputedTransform = function () {\n var transformNode = this;\n var ancestors = [];\n while (transformNode) {\n ancestors.push(transformNode);\n transformNode = transformNode.parent;\n }\n while (transformNode = ancestors.pop()) {\n transformNode.updateTransform();\n }\n return this.transform;\n };\n Transformable.prototype.setLocalTransform = function (m) {\n if (!m) {\n return;\n }\n var sx = m[0] * m[0] + m[1] * m[1];\n var sy = m[2] * m[2] + m[3] * m[3];\n var rotation = Math.atan2(m[1], m[0]);\n var shearX = Math.PI / 2 + rotation - Math.atan2(m[3], m[2]);\n sy = Math.sqrt(sy) * Math.cos(shearX);\n sx = Math.sqrt(sx);\n this.skewX = shearX;\n this.skewY = 0;\n this.rotation = -rotation;\n this.x = +m[4];\n this.y = +m[5];\n this.scaleX = sx;\n this.scaleY = sy;\n this.originX = 0;\n this.originY = 0;\n };\n Transformable.prototype.decomposeTransform = function () {\n if (!this.transform) {\n return;\n }\n var parent = this.parent;\n var m = this.transform;\n if (parent && parent.transform) {\n matrix.mul(tmpTransform, parent.invTransform, m);\n m = tmpTransform;\n }\n var ox = this.originX;\n var oy = this.originY;\n if (ox || oy) {\n originTransform[4] = ox;\n originTransform[5] = oy;\n matrix.mul(tmpTransform, m, originTransform);\n tmpTransform[4] -= ox;\n tmpTransform[5] -= oy;\n m = tmpTransform;\n }\n this.setLocalTransform(m);\n };\n Transformable.prototype.getGlobalScale = function (out) {\n var m = this.transform;\n out = out || [];\n if (!m) {\n out[0] = 1;\n out[1] = 1;\n return out;\n }\n out[0] = Math.sqrt(m[0] * m[0] + m[1] * m[1]);\n out[1] = Math.sqrt(m[2] * m[2] + m[3] * m[3]);\n if (m[0] < 0) {\n out[0] = -out[0];\n }\n if (m[3] < 0) {\n out[1] = -out[1];\n }\n return out;\n };\n Transformable.prototype.transformCoordToLocal = function (x, y) {\n var v2 = [x, y];\n var invTransform = this.invTransform;\n if (invTransform) {\n vector.applyTransform(v2, v2, invTransform);\n }\n return v2;\n };\n Transformable.prototype.transformCoordToGlobal = function (x, y) {\n var v2 = [x, y];\n var transform = this.transform;\n if (transform) {\n vector.applyTransform(v2, v2, transform);\n }\n return v2;\n };\n Transformable.prototype.getLineScale = function () {\n var m = this.transform;\n return m && abs(m[0] - 1) > 1e-10 && abs(m[3] - 1) > 1e-10\n ? Math.sqrt(abs(m[0] * m[3] - m[2] * m[1]))\n : 1;\n };\n Transformable.prototype.copyTransform = function (source) {\n copyTransform(this, source);\n };\n Transformable.getLocalTransform = function (target, m) {\n m = m || [];\n var ox = target.originX || 0;\n var oy = target.originY || 0;\n var sx = target.scaleX;\n var sy = target.scaleY;\n var ax = target.anchorX;\n var ay = target.anchorY;\n var rotation = target.rotation || 0;\n var x = target.x;\n var y = target.y;\n var skewX = target.skewX ? Math.tan(target.skewX) : 0;\n var skewY = target.skewY ? Math.tan(-target.skewY) : 0;\n if (ox || oy || ax || ay) {\n var dx = ox + ax;\n var dy = oy + ay;\n m[4] = -dx * sx - skewX * dy * sy;\n m[5] = -dy * sy - skewY * dx * sx;\n }\n else {\n m[4] = m[5] = 0;\n }\n m[0] = sx;\n m[3] = sy;\n m[1] = skewY * sx;\n m[2] = skewX * sy;\n rotation && matrix.rotate(m, m, rotation);\n m[4] += ox + x;\n m[5] += oy + y;\n return m;\n };\n Transformable.initDefaultProps = (function () {\n var proto = Transformable.prototype;\n proto.scaleX =\n proto.scaleY =\n proto.globalScaleRatio = 1;\n proto.x =\n proto.y =\n proto.originX =\n proto.originY =\n proto.skewX =\n proto.skewY =\n proto.rotation =\n proto.anchorX =\n proto.anchorY = 0;\n })();\n return Transformable;\n}());\n;\nexport var TRANSFORMABLE_PROPS = [\n 'x', 'y', 'originX', 'originY', 'anchorX', 'anchorY', 'rotation', 'scaleX', 'scaleY', 'skewX', 'skewY'\n];\nexport function copyTransform(target, source) {\n for (var i = 0; i < TRANSFORMABLE_PROPS.length; i++) {\n var propName = TRANSFORMABLE_PROPS[i];\n target[propName] = source[propName];\n }\n}\nexport default Transformable;\n"]},"metadata":{},"sourceType":"module"}