@galacean/effects-plugin-editor-gizmo 2.11.0-alpha.0 → 2.11.0-alpha.1
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/dist/index.js +2 -2
- package/dist/index.min.js +2 -2
- package/dist/index.mjs +2 -2
- package/package.json +6 -6
package/dist/index.min.js
CHANGED
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
* Description: Galacean Effects player editor gizmo plugin
|
|
4
4
|
* Author: Ant Group CO., Ltd.
|
|
5
5
|
* Contributors: 茂安,旻诺
|
|
6
|
-
* Version: v2.11.0-alpha.
|
|
7
|
-
*/function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@galacean/effects"),require("@galacean/effects-plugin-multimedia"),require("@galacean/effects-plugin-rich-text"),require("@galacean/effects-plugin-gui")):"function"==typeof define&&define.amd?define(["exports","@galacean/effects","@galacean/effects-plugin-multimedia","@galacean/effects-plugin-rich-text","@galacean/effects-plugin-gui"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).ge=e.ge||{},e.ge.editorGizmoPlugin={}),e.ge,e.ge.multimediaPlugin,e.ge.richTextPlugin,e.ge.gui)}(this,function(e,t,n,i,r){"use strict";var o,s,a,c,l,u,h,d,m,f,p,g,v,y,x,w,A,M,I,C,S,T,b,E=function(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach(function(n){if("default"!==n){var i=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,i.get?i:{enumerable:!0,get:function(){return e[n]}})}}),t.default=e,Object.freeze(t)}(t);function P(e,t,n,i,r,o,s){try{var a=e[o](s),c=a.value}catch(e){n(e);return}a.done?t(c):Promise.resolve(c).then(i,r)}function z(e){return function(){var t=this,n=arguments;return new Promise(function(i,r){var o=e.apply(t,n);function s(e){P(o,i,r,s,a,"next",e)}function a(e){P(o,i,r,s,a,"throw",e)}s(void 0)})}}function B(e,t){return(B=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function G(e,t){if("function"!=typeof t&&null!==t)throw TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&B(e,t)}function L(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(L=function(){return!!e})()}function k(e,t,n){return(k=L()?Reflect.construct:function(e,t,n){var i=[null];i.push.apply(i,t);var r=new(Function.bind.apply(e,i));return n&&B(r,n.prototype),r}).apply(null,arguments)}function R(e){return(R=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function F(e){var t="function"==typeof Map?new Map:void 0;return(F=function(e){if(null===e||-1===Function.toString.call(e).indexOf("[native code]"))return e;if("function"!=typeof e)throw TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return k(e,arguments,R(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),B(n,e)})(e)}function V(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,i=Array(t);n<t;n++)i[n]=e[n];return i}function D(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(n)return(n=n.call(e)).next.bind(n);if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return V(e,void 0);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return V(e,void 0)}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var i=0;return function(){return i>=e.length?{done:!0}:{done:!1,value:e[i++]}}}throw TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function O(e,t){return null!=t&&"undefined"!=typeof Symbol&&t[Symbol.hasInstance]?!!t[Symbol.hasInstance](e):O(e,t)}function Y(e,t){var n,i,r,o={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]},s=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return s.next=a(0),s.throw=a(1),s.return=a(2),"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function a(a){return function(c){return function(a){if(n)throw TypeError("Generator is already executing.");for(;s&&(s=0,a[0]&&(o=0)),o;)try{if(n=1,i&&(r=2&a[0]?i.return:a[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,a[1])).done)return r;switch(i=0,r&&(a=[2&a[0],r.value]),a[0]){case 0:case 1:r=a;break;case 4:return o.label++,{value:a[1],done:!1};case 5:o.label++,i=a[1],a=[0];continue;case 7:a=o.ops.pop(),o.trys.pop();continue;default:if(!(r=(r=o.trys).length>0&&r[r.length-1])&&(6===a[0]||2===a[0])){o=0;continue}if(3===a[0]&&(!r||a[1]>r[0]&&a[1]<r[3])){o.label=a[1];break}if(6===a[0]&&o.label<r[1]){o.label=r[1],r=a;break}if(r&&o.label<r[2]){o.label=r[2],o.ops.push(a);break}r[2]&&o.ops.pop(),o.trys.pop();continue}a=t.call(e,o)}catch(e){a=[6,e],i=0}finally{n=r=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,c])}}}"function"==typeof SuppressedError&&SuppressedError;var N={xAxisColor:[216/255,178/255,76/255],yAxisColor:[38/255,149/255,235/255],zAxisColor:[134/255,74/255,245/255]},H=t.glContext.TRIANGLES,U=new Map;function j(){return(j=z(function(e){var t;return Y(this,function(n){return(t=new Image).src=e,[2,new Promise(function(e,n){t.onload=function(){e(t)},t.onerror=n})]})})).apply(this,arguments)}function W(e,t){var n=t.clone().subtract(e),i=n.clone().normalize().clone().multiply(20),r=n.clone().subtract(i).clone().multiply(-1);return t.clone().add(r)}U.set("light","data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEwAAABMCAYAAAGwkGG9AAABYWlDQ1BrQ0dDb2xvc\n lNwYWNlRGlzcGxheVAzAAAokWNgYFJJLCjIYWFgYMjNKykKcndSiIiMUmB/yMAOhLwMYgwKicnFBY4BAT5AJQwwGhV8u8bACK\n Iv64LMOiU1tUm1XsDXYqbw1YuvRJsw1aMArpTU4mQg/QeIU5MLikoYGBhTgGzl8pICELsDyBYpAjoKyJ4DYqdD2BtA7CQI+wh\n YTUiQM5B9A8hWSM5IBJrB+API1klCEk9HYkPtBQFul8zigpzESoUAYwKuJQOUpFaUgGjn/ILKosz0jBIFR2AopSp45iXr6SgY\n GRiaMzCAwhyi+nMgOCwZxc4gxJrvMzDY7v////9uhJjXfgaGjUCdXDsRYhoWDAyC3AwMJ3YWJBYlgoWYgZgpLY2B4dNyBgbeS\n AYG4QtAPdHFacZGYHlGHicGBtZ7//9/VmNgYJ/MwPB3wv//vxf9//93MVDzHQaGA3kAFSFl7jXH0fsAAAA4ZVhJZk1NACoAAA\n AIAAGHaQAEAAAAAQAAABoAAAAAAAKgAgAEAAAAAQAAAEygAwAEAAAAAQAAAEwAAAAANXHl2gAADOxJREFUeAHtXAuMVcUZPuf\n cu8uyC+626wOM8hBsLY192FJN1QKpmIJRxNZt2qahW2qxlCCwu/fa2lZpKPTeZYGlUN1YlfSRVIi80qqxpCjW1vqqrY0hBtyF\n YqNphV0q7HL3Pvr9lzuH/8ydmXPuayPkngTOP/9r/vln5p85/8xdy5KeeHzdjFgsflBCWw5HgCGTyaRmR6ORKQTH4/FxnJ6Fi\n SAjOc6jUWbk5cCMYS4Vi61tq60NPS5wicSwAC3bhQCsXbv2CrwmC1x7e/sTAnbfXV1dH3cLOoC3jnh4WcBOLNbZbdvWl3RK4F\n NbMHt44vHO/6xbt260BykK0PqskALj3wUs6Nm3jATjA/F415eJqHVyJNJxJ/r6t0amrPrcf55eWL9+/UcEMZFI7kbL+6ks98A\n cwVRfX//84sWLj4myBQ1NboEBnZ2dm6mYNRyd60rwVqbTVk22zJEkpSinPDYRk3gwvDdkMtZdoszfTU2NTYsWLRrgOC1Mtco1\n c2Y/ussblFHFp+1pV3sBQFmVKTvA5C9uKM0bXi4r7GrGqGtIpzPvkXa5RmGpHz7rM2ImRZgQ42UBk+k53jdFz7qW6YQweHdhv\n s3BAL4/Gu1QDmIhq1UmmiYY+VtnvXJocEWILA4J19SELxcKOV3g6J1n2RlGew2a9X3OTDBiWxprlI3nMVTkCbdKy0hIpYjwZC\n m9ofCL9OaPR5mIz7btLONMQWGPMgh9kAQdx9ppUoAmHlXRZWUqnsC4968y7dCora2Zpmrf8LA1OpMZfplo8uD1LF5cGCvM67w\n sw5jHu/NwMkKUseVwFzyBozfG13BHR8cejqs8jKmyXVULrJyowiMG3sPx7tCgOYlnPhhu4gwIQT2pVLqP4wgmfsTAVTDgeUHL\n KjszuS0L/vi9INIbc3oULwtY9CQMuBoV3k14B5rdfYFgEAJ+b8GPwLkG8/pKB5qzOxFB8FMg04Xc8HDyH3mDVmZWlWGAjRYdA\n O0yFd2Lc9qj0fYuL86/VJBh8PN+uOfD/mrVHI5jfx79+0c11YsNZBiG7AKMtC1cFOFxDwL4bI6T4Y0bN44aHBwakvGiy2Q8L/\n sahr35jzFufyiEYNBBGDRVlIO8c12f5rx+xrnzkgt5YY9Rg4UaRbrQmIxsCKZvv7ceb8lo2IYNGy7i7KGQcwMvlwg3muSNhqX\n Tac/qgC55y6TMj6ZbtlVyRsNUAiOFOzsNg+tPcA/hM/FWXi4UxlDI7tSCyAUIF/FeKJoURFkhPNgOTV6+fHmfTsbXMCGI6U3p\n octEudg3bZIjkfbuYuWrcjoPKLsSKaxLk8nUYSHU0FB//pIlS94VZfnd09PT2N8/ICJ5AlFeufESctiZvIeJ0JArHwH/pYIm3\n p5wQWsa7fS4UcRoMoro/f3H+ZipJZzpwdacf/VeQnVi5/JrLuN6DK1IwrAQJ44eXVe3dOnSUxyngrHQb8FCv0DQ5HVR4OU3jH\n ka26gZXnxoXjTatjsMpVEo/SmMcunhcOiqtra2v7mICgGRSGQmqYZTBlD/eaerSe2CBy18unfERCDFRu5b1NqRMOq0Eaf/x46\n lkerFM0gYssPtSs4YFN66dWuor+/wKnicVoTJ+EcrxUsYQz/HThWZlOKfogyj/KxIv/pUfQzjdHyQcSrrKcgw8lBvb19SVuJX\n Rhc9ie5SfvfqZAMbFo93X57JnHpDp8gPD+OOwrhmPz5BD2QYPFULT6nCxhHLCs+PRle8JBTSG2GgHZO8k+NysDKYKvjy82QqJ\n gqAMh7b7Atw8vFfGc/LlHLH9/pijsMi/jMs4ks5TgX7egzKvwflq7lw0ABKMvDe7fDe1kLlPUsSFxawbJRlNecCoeAwvxFEty\n F8uAdRxI2g/juzVO5gQ8eEhMRUTsMAfjEaXfg/jgsCwzhPqgZxTyrnazF6bHg49RAXwVIlrWucaobhtVc4x969e8O8LMNGw9C\n yz3GBFStWZJcMjgsKO47DdxTWCy+8Mtck62OYSbQwWnNzsyek2HZKmQIVWkfMsNbWVjm5MlYYoXqPmGGqyk24qmEm76hoVY+p\n vGLCVT2GPO51Xg+FKOWgfYzLApKU+3j0x/bnKD4UbgqHw+LjVquYE5LJ5GeRXP4Fx02fftUveVmGjYZNnjxxtrRB/AB2G3/mV\n 1VkhQHLiVmzZhm36MYx1tLSkoDXVgasLDAbtth1fsy+G0VSEIt13WJZqZI+x3KGHMMmM1DyLpBhonXYzeKegPOZUCjj22IhQ2\n /sLI5gZ/Iax1Xhqgcwnu6hz6+gnsCB1gVBeeluGzI823U3rUiPcvAjkP4LtEuyDEipY3qPIVj3cH4E4CuRUPmnjnfTpk3NJ06\n cdL9H8R0xAdklqs/z5MUxtIQOk7NGESfyViIl6RGUCpz/EYnmKQ4ODl7DEZS9pNnOcQR7DKN0Iwy5mjNRroqX/WB83Brzr/JB\n OenDakI5WU/vuYbBqLuh9Gveiu0HocjzCeelF1dSfcmjpzznmVnDKLLDqDW8GnwHPoNs47c5rpww5XdlfTDOXT8dOv5XLDdvi\n vyoLFyuMiXz0PjxXB+6MwTjjhHOoasEnIg0wHG4egrHVQpG49+mRDTXD+OaKGHtjrEcMY3Q0MgZKw1TIhqe81z7Qp0XY309Pe\n vgqUF4ypPnr7RRQj889xjyZndQGXacwNi+yzNFBWMl36ezk4fnwkvzMpn0zagrcPozZ9dJyD4Fj+4cO3bszsCXYMvUqBFxGAL\n 7TIzpTkSkT5fJbo8a9P4hOPEHyLz+BnBeVtbDXGKhYg6jfQMC0aNw1I0l2liQOBy2HwHoZuyXDxQkGJC57A6jTRluGVGGbkJA\n G7JsaOhbGIEU6f9N/3AhdBjOvhgw/tkfAnxFljHgf9A3iDh4PUbdywFFArGV1WHYnTyIRgfZIg3ACWsuvPD87tb8LKPRcDgOF\n +q6voqZ9xPAE43MIMJxf6mrGzWrmEM2le6yOIzuHCM1cQDOohGhfbDibJ4+/VPL/DIDWgUKAjrpO6h3I0imTEcS0/SjWJLfUK\n goCFWyw3KfFZRM0u5HEJB3Yw98K3q7YgEZm6T78G1yr6n1mKLXwI6/mnj8aPJGzI8/j37y5OA+IE3OasF+Zl4lnUVGYY90H0Y\n RXTV19+WE5w++dvYhxhZ0OsflCS7JYfSbM8QRw5GLMx/O2iZXWqkyTTkc7E416K8dGhp6wED3JZXkMMywlboaMKJ24QbzTh29\n UnisiocQK7VTE/HuK7HYBhqJRT1FO2z16tXNGF15mYYzVmR+dQYeWQgdaazbthM3FGtR0Q6rw+NT6as+9IqREdh7oRxbF+0zT\n kvxIRTtMB+9lJ3WBl8/2XLQERJSBj1Ft7toQYMx5zSp6rACu7fqsKrDCvRAgezVETZSDsPHtmkVwqFLqNBMaoGm69kpq4s9ou\n EYzin+1pu+WjOlsbHxXfPSnfxDd3d3QTkxc43BqPiFQ31v7yE6LqzVSSDXtk9H88OXlK3At+RiHOAFPvH1M2Zk6PZD+FAPkrN\n TmlOSw0gj8vU4zLB2YAqUrEtpYVmR9krKapSisiyNJGfhwtWP4Lh734+OQz7uUdzVai3lxq5wclkcJpTRmwIufjDyDUzVFjhw\n BlCmTCiJlP1BbEUe394+Zkz9/Z6/nVP2mqoKqx6oeqDqgbPLAwUFfayE03CQ8DhWwomimbR5xSLZinS0Mcsp+E1v+otoOC1/B\n PrFdbA+nPTcgYTgHpNcEBr2jF9HJpZ0uxdbYPsh6J+LtLbxD9hw/YEcRkdpOB36EyoznD47+Jlb8Tl8nC9+F6vqJm6cgLEteB\n iHKQtFudA3nIWfeKZ36OTguP319aOv8/s5Mskbl3x8ZtQMDBzfjeuMX9BVlsMPNDTUPevDYyRjlE7HuaKSB44ErfiHbEMbKGW\n tPA6kgUBXNnE77cnGxvNuwY2gM39yUapWm63Aweh6/Oo8AWVGZ6H3V+H+VlOQ3pHqHrEi2UY2kq2mSqmt1GZqu44vb0ri3sI3\n 8cNg35uaGMY7Jk2aeHtLS4sxa6GrWMbDyC0YYQtkfK78Ghr8MQ2tIDQ21vgl9qFtcM58P0HbDi2MRNoe5nzulMRfNL0+k0k+B\n WfVcQYZhqNexeWOGbjccVymnQ3lXAffRifgQ0OnnoHjPqGzmwYObmNvtu3wjZHIimzICdMtZqx8r8NZfqmYdzCkr8WdzoO6Cs\n 4mfK7DP4nFZgpi5HOw/SKN/XXwzT447jBW1Glh/NkYGnJaZ2FEncpknDn4Ow57NQrPajRWXxoA43Bne5Ztp5/AiNPdUJ9Avgq\n HQvbaVCpzG4Tc6Sk8AI/eiT1Qjyify+/cgKjDjFuEGae6f5EkX4WxaXsRjqjB0KTT4GstKxTGHzV+etmyZe+cyw7StS03QHro\n j4QlEqmZuJRPB9LPYSS+TTL/B5JA5hg3+BSjAAAAAElFTkSuQmCC"),U.set("camera","data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALwAAAC8CAYAAAG1TvQ9AAABYWlDQ1BrQ0dDb2xv\n clNwYWNlRGlzcGxheVAzAAAokWNgYFJJLCjIYWFgYMjNKykKcndSiIiMUmB/yMAOhLwMYgwKicnFBY4BAT5AJQwwGhV8u8bAC\n KIv64LMOiU1tUm1XsDXYqbw1YuvRJsw1aMArpTU4mQg/QeIU5MLikoYGBhTgGzl8pICELsDyBYpAjoKyJ4DYqdD2BtA7CQI+w\n hYTUiQM5B9A8hWSM5IBJrB+API1klCEk9HYkPtBQFul8zigpzESoUAYwKuJQOUpFaUgGjn/ILKosz0jBIFR2AopSp45iXr6Sg\n YGRiaMzCAwhyi+nMgOCwZxc4gxJrvMzDY7v////9uhJjXfgaGjUCdXDsRYhoWDAyC3AwMJ3YWJBYlgoWYgZgpLY2B4dNyBgbe\n SAYG4QtAPdHFacZGYHlGHicGBtZ7//9/VmNgYJ/MwPB3wv//vxf9//93MVDzHQaGA3kAFSFl7jXH0fsAAAA4ZVhJZk1NACoAA\n AAIAAGHaQAEAAAAAQAAABoAAAAAAAKgAgAEAAAAAQAAALygAwAEAAAAAQAAALwAAAAAo32wHAAAIEBJREFUeAHtXQuUHEW5np\n 6Z3SQbQ5A3CGYDgXCuYA4YIldAbwIERXlcDwQUIe4VzRFibsLuzqIiiQdRdjcJOYEo0SAheo8QQEVeciEGRa6QRBEOcLheMIk\n QHvKQGMK+Zqbv99V0TXpmume6Z6Znemb/Omfm76qu+uuvr/+urudfkYi4eiNgUICVK1fuNTAwuLNMYXb29CT2dkurMujt7TMZ\n wTCMv4Pw58mZpnmMFfFZZKKvc9P29fVv0hnk3vHmY9r89EREp45DihO0R9P169fH5syZk9J+rxTC/hf4fR5wR5ApEIncEc1Pj\n BtPb926LUmp+vv7F+ffd/MzPpnzPhhPITXNyPkFGSD8WN6kS6fNJerC89++e+FZGIlE4kWdpCADRtA37dc6zI0ybk/Pl3bl34\n /nB9Dvh7FTentYQQnsN6tx3TgZ9Pb2/9mpxFUsgTmNqorfH+wZVS2DGTNOaLEYn8iMdCZRvBSvaE8ldObMmUlq37hxY8eSD+o\n 1k36D1QLfXAb6Vc++vr678baeXSyteqkQ8XlEnMqI5Ti/gpWTh6QRBBoJgZxmSjmCF3upDHslhLriGR8ZTMUHXVVmrhlYVWm2\n lvPBPLJ8+fJxTN/Xt+xMezq0OibT71glI1G29WBPlH99xRVXDDDMNNMzSLWgaHH8ldcFzBk4MpJ8mpQJvDlzsS3+cDRqTGM6x\n xaDN4YFsV4H9gcxdNWqVe97993djrCkrWSvFyR3DTC+rRnboxRIjkgxe4RKrgswr4RZftpGYG46tqarJjlV0aaOCqEqMTe+DW\n 7byJEZQA1VK7kqzFEnvQwtm4wfKkLjBWbS0hI/Mltx4a36Snd39494w4tD/2kMujiDjJthWpiq4ioXQl0Noa4pZC0hgoAg0CA\n IqHrALmtf3/XHRyIjy9HH4bhLm/1eFa9fR623AbXc5YsWLXqnXL5KeDSI9kG75a1ymVQjnVstW4y3gWbeLLTGNtgiPQ5G/2rz\n B3aJkbA02rbZp++3AAYYJMEg2zTyy6DSktk/84YR/VYi0fUdO0+Mo9yAxu98exhU7p5EovtsjilmBbdHsF+DAUYrzIN1GBI/j\n MSna3+1KGSJI69fI68z9vAsbIEj3lksdMkmRwaZPYKTKRKfZkdsT0aVXrFFt0dwDPHsQsPgQGoDf+973/gJ9hwKWtf2m7wGym\n 9C2P0KwyM/yw+r1I+8tk+cuNeR8+bNG/HCq6TwUI/9yWjZsmXTUqnUya2trXcuXLjQR5/EixiZOKie13oVnClKCq+z7uzsfAr\n X/IXGldT50EjqIEhDC+9ZbRwKHkCQGm1QfUjUNFswCVIwNWTPNGTCRzgwrWTCyzvdXh2jMI/u3v3eVrvwIVMb41pdp0+e3D4G\n VedLWlgU5hRU2ZdofywW/UQcn+RVGHm6XAdef/317WjpbdP+IGlf39KVyDubRTQa+b72zJkzZxjXH9R+J6oaRWjfbECpZjlFq\n F1YbFZPT+dGP/llW3RMhLmKT+LxPOCHQYVxB8ePbzt0/vz5dW2OV1gGSS4ICAKCgCAgCDQZAjnNA5aNK5zQRLgYbZ0jAiprGq\n 3Fp9G178MYTUWd+KzwaJz9EgKfE5DArmwxtHEu5jzudo1Q5IbVquz7C9A+ski8QG+hAF9DAW70mwmG+5ZdYJqp2/IT4tH6mU/\n PT17Eb7YAqKn5ESZPbo+jDe9r5R+G+3IFHzOm9aCgxmXsAi9dunRuKpVeq8O2bdvGtvzHtd8LzesGGlfWQnAK1tXVdSvIP7SQ\n eBqn6GsnisIevXHjxpw+d46ntTW+2ilhUGHoVK+D0P/pxh+jdIclk6m/4P5YPKXIpk2b1aJQdGD2YwcmT/hWtazMiRn7trFYb\n PeCBQvecLpfZphjfqiuj0Gh/gzBHUewMYrwJvIzcoR3EgCMPo3Jh3uHhzn2OaJKjgV1h6EQLzvFryQMqnEyEH4U+ZVkg6HwNX\n k6n5uGk9sUPDc0EsGEd3ZIIv9eJX4K7pQe6rWGQyL2ewj7fFHhBwaGMCvh7PBE/s35TvVCMSzTR6ExcvblfK74oI4rqjYYRxm\n b3jOskpMeidVazJzAKnmAag8E7ivFrqjw+FBdgZmKi52YgDmmX6rrgPSX0d5Z45VrUbVBXYy32rgmn5lhxH19TPLTu/n9CE4e\n RZFnhJ6e7qtBrsaA1CWgu4H4XQwPgyspvBYSQq/T12GhRdUmLEK6ySHCuyETdLggHzTCbvxDhTznoHp7l57rJmx+eKiEzwiX/\n gULwdZsvrD5/hAKbxUBrVkWAh/H2flCa7/nj5ROUE2KdUJo5hZvu6NT8iAKwZ1vHbi2u9frijw2B+WIw+YvhkEutUuorxHzFn\n 2dodEldRU+V5iMD+M3N2c6HtGvOt23woZ7erpuyhF+aGhoUpEEVb8FtXHNj8KxEFCXBfaM4b8D4WMYlqPz6PD+D8Im2iMHe22\n eZ+Pv2O1Bg5C9OcceHYXfhl87flx+tRfGLN+Kx2Mfxr6MHQwLwqGjfQL6q5vsvKHrX7H7vVyrTi2rJC+Rg4oD3UhhRVWOFnjJ\n S+k89GiKl8hBxIHgZjmCU5ac4QR8EP6IKgnLcWvjANoy6HRXbXKTXAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQcAfAjnDBvak3\n AEA/7W1HEaw51+D60GMt9zY1jbuunrsOsgBHmAfgQLfB7ALFq7VAIi6ZcEBL4wdLa6lOYgs8OHYqFM37FXGHCo1zejpfjcLlS\n O1trL2AhK3uzGAQG9DI67Esrj7gxzwdsu/GuFcaDY8PPzhdDp9Fd5oZRnOjS8nlDgv43a/GuFYg7v0RvueOjtTAP5PWFOYVqs\n 9dva8g7629vN9zSWfNMA/GOD/3eV+xcGYgUj/uxsXTOl8rBlBZ3kxFbAA6zFhAiFnLkxDEcUEH98KT2vcVqxYceDwcHIepsIu\n Ar+jNBPQ91BTPBKJxFYlEp3328IjWLgdOcQeYL8eM2bMdru/2a7xTd2O8js6gHio4w0EwhzKlJGR1JUA9RLEaxka4oZXR9cG/\n mdGIqkzOXGPuaenWlpis1Bdv+17zs2RPQKxNHpv2Gb5LgS5EN7363iorp6HgEuDrjN1fkHQ3t7l0w0j+U0Adw7KZ6CcKhu3h+\n YugzmN9mvQejy5YuCxEAYfLHMzlnW3OmUIQY+GgGvwxPnaboKx1pNoT9Upbq3Dii8zMRdC5sUZmZI0rAzn8nrYBM+0jMzfgE5\n D2Q+w3bJf3pyzUMJ+x8s1N8cAdJrMcATdgceMzZu3vEP7jw73ah6Uv0QmTwBPay4A8ADWPN/APQRc2MEJcNDZ2E3BPpGjw0Oc\n WqHGp/Ex8eegBeNhnOUcpCrYzeSPU31iA2g2rVeOHz9+5WWXXfaPcqWoEHjzQWR8lp/M+Srio73BT5p6xoW8L6GK6Y/H42u0M\n dVqyFMR8FiesQqrfF7FKh9PC+ihKa+giXostvW8XQ3hg+VBk6zdS4LKoyLgKRS2YfwchIbbPsqPKKqSnEMRoDH8Iv0EgC9iM4\n ppxOUt5KsEEDQXn0D6YyvhMZrSVtSqGU1AVbusAny1EfXIT4D3CFS1ownw1UbUIz8B3iNQ1Y4mwLsj+jn0UT6L5nF2ls49qv8\n 7Fbfj/WfZKCnMo1Ip8y5MiSp7DuiqPIlN+5yXvacaJRDgPaNoHgdLCb/KjKurRJvQE1+M3ntZhgYEeM/AF0ScgZ76A/pBoIf+\n GCbKF2OiXI1DYUtcsRHbtABfgKcOMK7FaMcLAPdbCDlch7pRfAtOwkzTw/pB6MkSp/h4U3LNCDlFGsVhSVQja1F+/iKrV69u2\n blzVwdGKr8BkCcxrByHN2P7/vvv9xlY7uVaEmf7+FgO0exvhGv5gEvOLJllfP2HAJu/CA4fbN269W+X4q3gg/hAqYcALd8Fnh\n fpjzMz/hN+jhatOXOOe72lmDbifc6CoTqgXRgXZxAXVzcnY9KZJp6zZp5h2+tETPJ8BGeoHYoHMogHshXW+B90Mp7mdA5Hfma\n Pw2TcuU6J8yM2ih/t87mYsrwFwDi20aGdj6Ka+XiQ5VEZuxkWdMoYrwsX+QS20Mcpz8rDeICgcTiABi3pnp08uX0aNDpVMmYF\n EbJPnEfnJJPJx/EVP7ICfg2dFKvHyjKJWU6hs8DrxDzpenBwCHYKa2/MVMtQY7oTgM/FR+/uWuZbALw9c9aB/f0rjsMH/ixcz\n 8TreigoT/5ps8drgGuaqXgD1eSroM+hHPdiRdcDlZyw1QBlFhEFAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBA\n QBQUAQEAQEAUFAEBAEBIHqIlB0lQGz6uu7/nhZZVBd0MnNFXgxf1h9sO0cC4CXBU12eIK7jtlZ0+4klvE9gmV8WGQ/ahwOHDU\n umD17dvqhhx76Xa1KnQWeaydhGpCgH1WrzEOUD0/VmnnGGbPfAvibaiFXdrslToK6YzQvWCXYKP+K3t5lWKoYvFN1vCzTzgG6\n Jsu049hSEtu6ddt1OVnnebDYczRZWv3Q9u3bvwgIbs6DoareODL5BDi2F+H6eGtrS8PvCIFVqCGUcTN+55TaEYIV0XMRL1Dga\n VH0s26gQ9P/CdA/10zbcFhWWJW6FS2ZG93Kjbr+JFiccjNd6JbMVzg2n5kz3FJAgO82q4nbeDzaMzKS/gLKnjVOasMBChmdDv\n /9tjBPl+wHYbfkIXhrhqZPn/6Sm41NAu+6VRCL9+/1lFsDRqJFPdgW3oDyn+csvulq+jc/vt228MDAYLY5vmnT5vfQN3rE0bY\n wXrkDkXk+L+VHVbPD8UaTBGJL5A681W7uILcbOhzbKw9LJtMJ2Ba+FGHoiBW4rG1hGKO4B6czdOjTGfBKOW8uJgvs0czZZFvA\n tvEDXMsHXLgH2NGhszkFb8samH18EUo7H5GcQM9JC35n7d49sIEdVd5wZZ6TyoeHzdMdO3YchowmwEjma2hNvOEjeaij4oN7D\n N6Qr6OzeQEAjxV5W1zKYU7DkMxNuDmnasBra9roE2StadOQAl6xprGmDaCVNW0XVD0Fg8f5qPdPqgrw0IRPY/v9j6AF3BGY46\n D5ypo2HsCFY8eO6cAb8HJOhBB70N4/GcaCropEkmdktNv9g+CnGGjCd2THavwktMcF6DRjDmurhaDb4+EBnIYv/l0bN4bHYgg\n AUEMmdjn3XJsLUYc/inKdsSes9BUaJCnEegjUdfc7PuonVwQ8DzwB6D9FRsWM4tilnbFly5Zv2gPqeQ0AiqmwJzPmNvmH8RjX\n 4EFNpRlzXJ9uu5d3aXywIuAHB0fOBUdfZm1R1G582UNhPz4PjbK80GxtP/4IGJ74Mn5o6WAHdlvbX90Y4u0fV1Edj9N0TnVj7\n haOTGk//qO4/4hbnEYIh0bvgnmUH+CtWdbd3eVarbiVpSLgkflBRV9Wt1wjkZKdE/ek9b0DDa+/4X4A/045wEPr36kvfGXl/j\n rKu9w09/lBIvElaHtlriKNB4A0XX6xHxH41Uez8o9+0tQzLuR9CR/McJ2YEI1Gb0erZgkewH7ewTHXN0JvFoBvxzjWdyZOnHC\n rZY/MexE9xKyoVYNx7Tdh64V2yzw5vKo4qiLOsY3QO1Sha3E62pogQGfhKwKeDDJHVRjX4JI2YYq51zE0dKEcV5GBqGLgyQaH\n mFwNzf8YXs9n8pFHGPqHxjoc1vgvicQV6AmKIwIVfVztEOozQjBGPQ3t9Gm4NwG/1zB1+Ptmmzq0l7vc66oBrwXo7OzkSWj8i\n SuCQFWqmiL85ZYLAgK8CzBBBwvwQSPswl+AdwEm6GABPmiEXfgL8C7ABB0swAeNsAt/Ad4FmKCDBfigEXbhL8C7ABN0sAAfNM\n Iu/AV4F2AQHOiRcwK8K/A8ci6NI+eWPtnbu5TLWKrqBPiScJoY4k7/AquD/4RVc2eVjO4xggDvEShMeOOsP/NXWHC6mWtFPSd\n ziSjAuwDjFoy52Ol4APfiaLkn8BA+6RavVLgAXwoh9/v6kMU/4AHMdo/mfEeAd8bFT+iJeAsexDL032NXeHZJo5xuWQTCzDJt\n 1wXD3KbjeWoUa4tgeCP1MLSfE/o/xq6RmUWyfsMz4yJMGvYWl2m7L0E0enHf87GiGgTwOwXX+Lk+0AjWFz0jVY1GrJCqY0Vnz\n DhhKpauXIrb2wqjlBeCPbR3CvAlsOMGYSxduXnvvSceZRjReZmlfSUSFbnN9AccsO9aAb4ISPZbXMqHJX0/bG+fhA3E0a8CwJ\n fs9z1eD+PtuaSjo2MwCgYpt0RykG4hMjzHtaen6yY8gCl4AJcDP0+bsFGv7wLo52HJ4+/IFRpvYk2js8OXx3W7vXOKxgpFq6Z\n Y+V4rVhrrAXwfS86PAKgLsLL4Baf4eDDc4nYHFuser08vZjy0avjEnPftj4ykPoM4zzoxbPQw7sPCPtxsu7uwPMYrhWGFIVhy\n TnMsN/DnfIJxi+MJxgQeNrhMx6Oj8aS+gY3DtzejBQ/YIOgFWE6WO4hu2jDSW3jhx2H54uOIz19Jhzqee1SdHaoamAAZ+RmtU\n zjHaMxQGgqCsrmu04fCPYZqwfeGMj9oxCdNmvRbbIPfhkTtLglPBPjPYUTuylgsdj/Wt3v6mLjwqlsw9+SisYDN0OmrMM5+dj\n FBUC/fWux+Ne4ZZCLG4HKgrIkxOAV8Bvz+DahaZuWIMMo8bFqjV3l6T0/nxqCLnu1AxeOx81G3/V/QGYaZP8q/sBagE4Ms8Nb\n epE8h8/8NMzhByMa2Njo3V+ODemMQ/J14ZqsafVOMOmskgqUFwOvsrGmtazHMebwOazI6iLd7FYw9fE/bCatl+VyBpxD42Br9\n /SuOE8P9tXwkkpcgIAgIAoKAICAICAKCgCAgCAgCgoAgIAgIAoKAICAICAKCgCAgCAgCgoAgIAgIAoKAICAICAKCgCAgCAgCg\n oAgIAgIAoKAICAICAKCgCAgCAgCgoAgIAgIAoKAICAICAKCgCAgCAgCgkC5CBTdRO+FaV/f9cq6ATfaMz423s/MpDMOtfwHZ/\n yRNosKCQYBfWb0G2QPGySvWtk8l6HGvaQtLbEHSGFZ7h3S0eZ8K7zNOv21BKuJzXk0qy4MsmB4IZQxnra2cdfRXw+TJcy31q6\n kwtNQEIUaHBxaR4oa/BxScU2DwE6WBBapYAIyEoFVqrtJm9W5Kjxq8iOsQt9Hipp8arOCIOVSNb46WABGqhYTDyj+Nc2IS4HC\n w7TxPixoMplUFnGh6Ec2Y8GlTMURQI3/NcaopR3C4hJV526BwuMMnQ1kPdpNrFYH3sblQhOzGT2Ink5aK6unQSOWVXgacc4UM\n HVbNTMFcNr0t6bVZC+8sgiYLZlL43BSVFiWPxuh3At1SMPkye04WDISwakQrseYlJtBLdPF169fH2OGMBeveuvlZg7Ffptp0Q\n a8kpRm5Ukb1bQ8ZW9ER5P4lJtm8UlpGp8UTdOi5vEZx8V9iOHbt2//onX/Zos2JImjIJ+wJG8vswSqrd/a2qLO8124cKHreTp\n l8pdkPhCwjoVhis1WMjWqljmIgy+AeQvD8QXIft2teEUJ4s+1IjS0whs4fFqNx5pm+vKiJc67iRr9nwxqaYmrT10zHpGTV+Sm\n 8OJ5r2RB8LxVp9RHodTEFjqzaiIRndmGbKLivCdzho9CZ6PiE/ldekTRs5A0xEU8Hu2hoCMj6S9YArudeZVfHnWKBs5KmW7dU\n E3W/EjV9ut5IDTRDiFvfGl4sFlk+vTpL5HysEtSr44KX+xYO1c+mKJWU9WuEeRGKBFAn2qAgvX2Zkbj8PzP8yeo8ymE/ngUxt\n ZnuQ0PJ+fxLhT7ItKBgUEcGlroNm3a/B5DMV/0SOZubBVpItFZ9EXkiX4HZhKYGeLxH02aHR6jSrQQIoDjftTzw5farzvIbwK\n n+Dh28jCG42TFBOnQ0PClpHBjM6Tkv1qbBfnPzMRMKYph9Xvox5KJDtL8JRNxvElqlIY3/bjW1lZfnxI/vCVuTRAo6/lBX1BJ\n +neY0JzCVDiPVo3i4VDFSzJcqjZ8qthBPrWIcffugQ0MQL6zSK3DzHhYbridHjbdsWOHqhFQoAmUGKf+vkaKUQm1OpDX4sKDA\n E48PYbSoAb+OmkymVLzPAhRFWwZXxay8eFMNZiCFQM3WYnmkIZO4XEo8t4UDCc3q04x5gcupB8up3OF+yoQn7DneYHx/6WkGD\n 1o6GEzlqERXW/vctWZxTLxb1J+KLQaDkUF5Wv4s9plhxznkyfa+ieRhkbhUSN8mgKh0/IjUkCm19FnvC7/APRoFduMrCHFC6B\n eEJwPr9pw+AK87JJUgitAAOP6JzN5KmVelWGTPIN0T83tv3OQ4RPMP947pQ91V3goujUjmD2VvbWSIuMFOI3p0bu/i3Tjxo3q\n zfY7fMW0zeygAFbN61cxzYXEBYq+uBb4YHAkxXzwXH9DCr9qqsB/AP1eHTrp6gWtm8LrKXAo5k8toStSdIeCz2DYli1b1CcWl\n 992iDNqg6AAStP31MieoZjoOWZ5EYeZDK/jukxy8zrSnp7Ei6S6goTcT9Hv3RkfZNy6Kfzg4IhaigAZjvUutP+YAKabqdBb7y\n PV49C8Fld/BFBjq3kBqLhqko4d26qek1tTFAdK/5VSv/vubl/C44swjgnqpvCY2j7Vl8RlRkZBxzNpKpX6qMXiEYsKqQMCqLl\n 3ZbKN/oAUX5plpN3dXX8nDdrVTeFR8INYuDI+qeViovIrN7GkKw8B1OB6Fa1awzN+/HhFL7vssn+Ux7GyVPVU+Hcoeq0UHjW9\n yq8yuCS1BwTUallUaMsZ1zT3UTV5IvElq2b3wCHAKHVTeCjgE1a5Lg6wfOzVq14+hin/GGQ+o5U38FWLuKDa/cQAE4KqLR7Wv\n lLdFD4ajd5OgLA+ewkpXoD9SKvvzPXkKTOy1UEWCr49w8n4DunEiRNuJZ03b94Iadhd3RS+q6vrTYKDCQy1Og7jumrcvFqA4Z\n P6CnmhxplfLZ7CRzVB1xKHnp4uVZM3GiZ1U3gNFBT/57zGctVrMmGmHjdX6691PB9UtSGh6mrGVS8a8pFeojYxAnVXeI1tT0/\n 31bzGxMJ9pOjMqhoETR21CIlhTg6fWD1V+BPej8dji0hF0YmCuHwEQqPwWjAs/tKdWTUhhXXTaioZ4+iKIt4EK65aLYm9tL+n\n X/bSWqgIKYpA6BQ+X9rOzk49haxpfhTxCwKeESi3new5A4koCIQJAVH4MD0NkSVwBEThA4dYMggTAqLwYXoaIkvgCIjCBw6xZ\n BAmBEThw/Q0RJbAERCFDxxiySBMCIjCh+lpiCyBIyAKHzjEkkGYEBCFD9PTEFkCR0AUPnCIJYMwIRD6tTRhAktkUQh8jv/Yx/\n A0KdY6/YLUtmqV3tA6UfjQPpqwCmYeRcn0hh0csKAW9fX2Ll3CcGwM+SVpWJ0ofFifTMPIlTFaih0MqqbHRp4nKXo0mj3vVZm\n vDktxROHD8iSaRg7zOBYlnY78ihRGTLeQosmzhBT7HdQGH17Xw4nC1wP1UZQndq4pq8LYuXYvi93b27eJFHuOlW3KRCLxa/pr\n 5UTha4W05KMRUDY/8SI8wAC8AI+T2l6A/6Y/KCcKHxSywtcrAicyIl6AB0lh7vyxjD+qvgA4AXwD/doNDQ2Va3Q3TR6i8BrJU\n UbLN5cdSVpQBaI7aPqclOGfepgUfYBHrfx+TIqTRGZafr9EnRQTiNB+JZH4tUegfHPZRi+lRfoXSFEzf4sU7vAMqe4/+J9icb\n SoNlLhLx80mZ5hClF4f7hJbFSyBAGdzbWkOHDip6Swwz+XFJbkriKFa1f/IfnD+bJ3UhRR+JA8kEYVw3ayys0sw+rVq9eR7ty\n 5q4MU34BvqH/TnKS8Nf7TpgH333/ftcxaFL7GD6DZs7PZmPwhy4pTGNeSbt36t/8gRVNIvwCH0R+gGybvaNS4hLSjo2OQNI43\n IMULdBZipF4djgKXl8UrWOGMV9bzg76oJo3XIs2ZM0cpHuLfxDR4AVTnEy/ApfTbXoAP0F+pQ1tdmeWGnBeRF0w5/s7OE4U2L\n VuMkUPsN0pd4wXRAord9VJghfA+Rmms5+e7E6gsvpVbJNsL8H3ywFlfqik0ODj4Ffoh1wJSXE3J0OL/UGyrAGamjR6Pqy8ITC\n 2qTnV+aii8PkLe9KXwOFH5MxazZ/OZij+8COCsq3GUDufcnlqelIayylxe2sJUMGM+ZIXeYKcwsajG52Fi8SOZ8OihpNBv1TR\n BhbuVfphaVOP3Xk0tUuHVVC/eqBPIwKvDp0O9SThI+HamWbRo0TavaSVe/RBIJtNqWBESvN+nFGrixjDSam2Mz7S+o2PZsZqB\n RUJNffNwSmDAWu8s3sBw0ganCB7ClEBjxrSey7he3zQPfCVKFRHA+vW5ZIfnfAspakiD1KtDBacmgDAc+XGvacIYLz5p0qTfU\n jAc8b7NErDdol6J+vQMD488xwR4ga4kjcVi95OiLbWDVFxtENDn32JQ4cPMMZ1Oq3HxVCp9diUSoK18ayXpw5I2+5b39S27gE\n KZZuq2agoHoPRxhJpWk73wyiJgtmQujcNJUYNb/myEci9UH23y5PZpZIBOpxrVK5dZvdNlFV4LgsU7qmkDwFRTR4cLHV0IoKJ\n Sio0ZytNZcizi2tgMCKDTmutwgsb5DEkmk6ptjrUMR+bGEN9oQABt9oUsZyLRHIqun1lBDa9vYJXaEdb1faRQ/Kn6ntDmQ0CP\n Z0PRF7N02Jl0TfOVEmOSpQqFTtBejDM4OLSOFE2dc0jFNQ0CO1kSTMGrURwo+t1NUzKHgpRU+Pw0qPk/aYVdS4qa//j8OOIPN\n QJq4gY1+SpK2dbW9j3S+fPnv0Xa7M63wmtA9Dhuf/8KtWkXSyzO4j2Ez8zEMdTMGPwHW2naLCokGATUxBBYq40OaKK8amWjho\n vxMVd7SltaYmprHSYKZUlIMM9BuAoCgoAgIAgIAoKAICAICAKCgCAgCAgCgoAgIAgIAoKAICAICAKCgCAgCAgCgoAgIAgIAoK\n AICAICAKCgCAgCAgCgoAgUEcE/h/4WiPpwxa/owAAAABJRU5ErkJggg=="),U.set("posX","data:image/png;base64,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\n RK5CYII="),U.set("posY","data:image/png;base64,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"),U.set("posZ","data:image/png;base64,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"),U.set("negX","data:image/png;base64,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\n 5ErkJggg=="),U.set("negY","data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGYAAABmCAYAAAFO2NT0AAABYWlDQ1BrQ0dDb2xvcl\n NwYWNlRGlzcGxheVAzAAAokWNgYFJJLCjIYWFgYMjNKykKcndSiIiMUmB/yMAOhLwMYgwKicnFBY4BAT5AJQwwGhV8u8bACKI\n v64LMOiU1tUm1XsDXYqbw1YuvRJsw1aMArpTU4mQg/QeIU5MLikoYGBhTgGzl8pICELsDyBYpAjoKyJ4DYqdD2BtA7CQI+whY\n TUiQM5B9A8hWSM5IBJrB+API1klCEk9HYkPtBQFul8zigpzESoUAYwKuJQOUpFaUgGjn/ILKosz0jBIFR2AopSp45iXr6SgYG\n RiaMzCAwhyi+nMgOCwZxc4gxJrvMzDY7v////9uhJjXfgaGjUCdXDsRYhoWDAyC3AwMJ3YWJBYlgoWYgZgpLY2B4dNyBgbeSA\n YG4QtAPdHFacZGYHlGHicGBtZ7//9/VmNgYJ/MwPB3wv//vxf9//93MVDzHQaGA3kAFSFl7jXH0fsAAAA4ZVhJZk1NACoAAAA\n IAAGHaQAEAAAAAQAAABoAAAAAAAKgAgAEAAAAAQAAAGagAwAEAAAAAQAAAGYAAAAAoo8/3AAAFixJREFUeAHtXQ2YVcV5nplz\n 7y7Ln7J7NyFYq7U8u/yJQWuraVoVGvwrWlGpUh8jIIXdjfiIWK1p2lWTaqomsYZliUESIcHwE42lRiUK0iiJKbUqyC6o+CgNk\n L27gBBgd++Z6TuHncM5c+ace+7du7sX3PM8u3Pmm+9nvvnOzHzzewnJ46E6TdXCFqHDZHx7XaWL675UN6TbhRAllLKZ1OY7vY\n Sc0ZcJEUwRMpUoCRgnl+gEMp1xMYlyOknlwpF0LMLqGeevKiamkDOy3mGiErMROMjIiY9IEccJXZ3iICuc7hEpJRU3UyhxKCU\n 7HEmq/InFrjQhS5hi2lxbWeUaVyYoO0h7ybh6FIFi7iOSSIpQERwL6TPb61JT/bAcYz5JZimEAOlQc13lEMXbJVIEuj4S0ahT\n FIHi7iV0jWuSoAhk6E2ncaQoYkcaY/MdSV4uCiE05PxbDhFqazIUyZDgENmUv2RIM4LkV+HWeyNGCNAtPVWkIXiOrZLJxASZH\n jCuIHSTxcW9ithlRum722tTY31ECkmZQMVlqL5uBXMlKYAe1gvBftyQtnW4N04pfaW5NjXJC9PfjYKqF6ZfF0Rc6EOm5HfMJn\n /rgzHrAk7sB30wRHRtZLpPUFVDy38QQf5aEeb0cYGI0cQpGZp5VtF7BbqCvOWcqwDFWIXoYr6MLuYWGaclybOaZ5+60/mECil\n EMke39EM0qDXyXXR0fuDA5D/PM9/z3q1XapMmxUAq4lYKCUSRvakSCx36BHGLfLvQArr4bXQEMdbVpQjy+UIJcms6GOLru8gR\n 1FRTuYES+k9SiESAZgu6I1AT4nzZ7uetGHu/QNSyo6ikl6u0bKFXgOzGZa+saAKCVIJPoALGCFW90VFDBemIlz8vSj/4MP2ME\n Mc1hG0XoNgf1XH7LJ5VG3iyy+CY3hSVw2RlasjWafRQGE6oENhmB4hGhhGa4CPGpJIbLqEZPc0oxGR8RuhDhIsXvQxsRp4AAz\n 0je1FXhnvxAkJ0AbFabkaGcEKe8zI2dgkSwSuAMlpLM2KblzDbu1ZndqPOjJA0bpvmE0DY9bkKcJh5vGB87p+T3b0rBF+PW2x\n obt6hnKdlYj6Pt3iVP+Ew92rhRcpHiKSBMzLMpuKn8v2P/yg1wC0uJ1HQpTLs7oOS2ad4vL8zfZSNW5gerQBUiKfUe3dDFNEe\n xYN1UvKMihQ4nK74MahWrSKFDCmHI9b1+GyigIUOe0cIo9T1ygupAbfYjYqfr57IuQRKBJqh7j/eJsZXXIIJzHQU9kHF/KYjB\n I1hQyFZe7XAMOQeR0hzTapOCfEiKFguIWfsIhefkv+S725xDUmkBqnEfAVh+IoOjNcrPttrK/9SvrtCNs+hhxFfoRCkIDTUbu\n us4GEht+hyDHefUOmhnZZEwKhsOUZlf6eQZWiJ5GQhOju9MPWOjMxH1Z6i4jL0CpBxY04vXCnKWlvSUrOcH12AZGAUojhXN7Q\n +LASP5SebmCs+kUIUkgyrG1rmogNdKGcMu+Abk6Ul12y99ZQ2L57pPbYQE7EJNqohfRtsVJe9dae7GBFLrMrUv8Ix7DDxyhWW\n tzJnN+wf1kEy7yHT5bkKjcKHL5PBdNH4LXWpnDwyyTMnZUY3tF1pC3ttVGYKnYZv7b6musr6OHxjKYPmII3moCKKIaPsTmLz/\n 4nCCU2j9AzORCPcgwEROALzXKoeGdEilcFE0F4I+IyJkhL2S7i2XzOldReGqn8T6t0sMx/KMXlsmdKMyoxuaL3AFnyTicBiia\n kik3G9UhNOoWCYjWRhHoKclmiuS33DKyugDIamr6BSX+JFku+UWHdTbr+hw3sj7h03+ORRegCf3qkK5lMGirwBRc5XiSosxEB\n G8epOiH7/FeIZxXXxakcH59Q1t0JVL0rXFLMiMuPMFhPxeek+SCmM8DMnvUs7OMci4GAWi0VUHmVIuZjsjct3GOEq/FHHMvBZ\n /k1HANm6IKw4IBiX+Cq+zNWohta3nDrjHeir7BajVVTeZGhy6N0640U8Ud9PQmUo/ZVuDU6JM57S4cUQF4wZ3R7HMkMsdlkgk\n 5TcF4AVCUBQHpihoha73lFm85zyA+hlD+p5FRbtEd9Ll5NTPEEvNTmkzXMrVrt1BpMNQ3WmaLsnCkq/osP7Ki6Y9aeci3t0+W\n qI63NnJJKpmQb4CJrqK3QmvRlHU7xYZk+XifmXEkyPOF5BQBmJHKIQoYI9TAV/XmfYo3FGz8Q86FKTDGURleZ+ZgogQ4kktyZ\n 5YfIdFe8u2Vnh7249rdBxm5KrHVkGRWCBlboiUr7RMt6MVTWkN8H5ucAL875jcWKtJUhB1t+ERaaBn7P27ZWh3lHCbajboSPe\n rMooRvBMb0KDsEzFo0IstexgnD1rEfYaF5kDXlzZR2DZ9ELwuhJD8fO8aaHvlD6Occu80PSuhNjKeBmNWtRyJ+fkES+s8O/0B\n xgez8iFb17K6AJGNbScxwX5OeCVelrMeDusNQ0Ldr6Vwpi0JydaQSyjimbM91rHZjLifjCdgjoRvvWLUky+kJctZj2wbe6wjY\n q+u2G3lRnd2PolbvNnkDt38SD3TFEsTJBZTTWpH+ROe5wib2WqFrX+C+HHVy2Os+zeG5rfZWh+b86HS87KVDe2XiZsLit7jz7\n 57B/JSZk407SF1ZDy6bUVyXqKld0YTyxlzlmUPu0IF7ti8IPLQ1+E/7aUcbo3FJ9ag+Ea3YzO9TrDPFiADJmciF226wMJGiCr\n MlFTtYoXevJNWMP7qndlXKXFCeUwQ1BxbRQu1lpvx1Lov0fiRCVWNaYnEVv8IgLnbQwNbo9IzykJg8E70KRfFUYEhb4BhZytb\n yacUMuM/f6BkZ3tHTtMRBIGd/sqwklgdBqGHxcul2lhqXX4/Iwz/ZB8w/a6ip+Y+BmHACgdGqoIPFdnTq0HFJEZlJ8qpmH/Cq\n 9vmzKMGbOnxy86aFxmMSozalFru4kR3PP3ICjy2zbR5QPr+nz/00R7lB81Ni4BZeDqPxTiiuzFuGW2iXlPwaDQIxgkvmbiX72\n wZbMOD9QZ45AZvpScgdeJeyuOObw1GEYGFoJLSsqGb5k92LWSzzKwyjumDFKakN9wnz1MEOOn3dlx1Nf3+ZTB5zUumGPxFM10\n xuqBg7SFhNDbdG7o3xLVS1pGKLirDMb6axTQG6InN86MeHF64x1747dATrBhaqcS7jyuMmjXpyqgCpmggbMKKq0vQqxwB7YB4\n 2sapvLiKDNq0b4zFcAXCvGSL97HkbBdqJiTmCOz5igjhB1YicK+TGNj0Mf6yLmxJXoeBKdO/ruUEdMDCEQ8rMOKIQ4PYbmeD7\n V75Hid0TCwm+BjDVT00VBlijrnlHTo+Zvw5O5KNv6pPcGJCCGO6MjFFMfcTmArzOH2srOZtV8MDGSU0Z0BWBEBsKcmmD9ql7O\n OUlEWyKcgrQFYEQGwgzCQP+xbLmcWKw24KtA8UUR5D2TFNuSP8UyG2TRxWMfGDogKHVZMcfQ1gfxlGGtjfzhi6O+DGaUjg7Di\n gUCZ0XpuMO5pYT+/ggadt+PbcHWaooib1nUGs6Nvnpj9jKFIN88ZcfiYMhTnQbUHJxjP1UBFEcUGutDGyVEGCz2PBnNKvxqEF\n QFE0H/Qc4H8OzM5jjLlFRX1OgLGN4ExdwCnTwD8S7pYweh8CXOU2TSNmt0XRrMuiuqMezTOqHHVe/vc1MuuMvIF6yJf1zOC+b\n hrdFhfxpGfwMgXn9hmladjDQBiWOAxbvrB/O/jCrkvQ0zZGhegxqdSf6by5SojAbBOYPJCztjwBD1dEfRFiA4xiVWCGbps5Pe\n jVdOOt8ToTP2PcRIQKM78sh+112Jy24lJmL7lxGcZSWBRGmgtJDyMoUzryQf93XNm/izQnQQsIwkxh7YVTfOYABN0rl0z9IGk\n ngCgg1wT0kW4u8y9co3KSISwz02mYV8MtkFyg08nUwvzoO94CT5Y0sRN/7wUTuAzUwlo3ULTOOMv2Iz+jcItZCgSdLz8pMMUG\n VQ2wLg2I/MQahmZOHalGNzZkj4o380PxneC3ogF2d+Z0+ND5W4nQfgqUAwOo6LUOqe5ttxxXUw4kcpIgvMWi+TBTDowG+JnJp\n e26QO4dGuDH549xhPWOGyOeAhb84ITKx7yASXs9LdnV+zygAKvWZVRFFjcOSgiSk3hobNCl8DXCJZ4lWVsd1JbpaPPGGkz8UV\n U7BsAK1XwqBBXSZTGOTEYWxkprHphayM+BWdeN0p4wdKweRyb5i6Myy8nZSTTi9eLxO530/tiWSluLnQ8WHfQgNLPvjlzSIue\n FBXPWRnFbOzSQ8Mzh4/sKKhScrmRiPObaitd51HJixPmrYyXOfbUPIamNO/hAk4rrR6cqJiu9id7eefyXhBlvALHNLT9hU3sq\n bDYVdjmfpY3retdLqg+Z1HrZ9tqy41L4waaWKCCKxNLap5I168UVvOets91JsgfwJsfgV5yCDYTDUT7WYa5voG4h2EgnMt2wT\n NHYO3D2LeASQ6EFtmDC9t2VQ6s3LVhBj2ap/heJSsqw0iHg7e0ToVXcQW+0kvwlYZ6LoUqJQxUYUD6GpqedUnBnt5SV1EUy1J\n 9ZhhphExLay2++HnwBU4rVEEXio80GKZ1l5ES65vyprxC8Y3Lp9cMI28ke//DtrvR5CxAMzQkbgaLBw+eNBUryyhd8FZN6v96\n Ol89ahi5SfWoII/BENf2tCK9zR+zQluExWq2zyn/ZU/ILrhhHId6W9uDcNPuRBNVcP7geQTDpY/R/3yM60B3obk5iP7hiOD8C\n O5+wmZlXP1s0TLHEcBYD33VcBTc6aA5HbTuFptCFiaMtD5RNmD61hmD9xSKb8EKTt6E1kHJi1C+APOetAWF/gtsyHoJF/99WC\n hldT7w3E61LYLbBQRuOSLVenqucRiokzL25aa55StypdXxu22Yqoa2yymxV0Ox4K4IXZoxjqkdKjZik85yfPXvG1F6ESjv5LV\n JZhpm6K/ONrsSmS1KH8RY/95InIjEvA0zevH+c7md2ZBXR07pPkzA47Kc4tqUZyonXM1ZjbHQHWia86pRaF7nNdWmcl4Oytkw\n OBpQ3tnR8ZuQkbBJNweGZiODHmcx5ttXhyIVeYKcMSacfg2zbKlcsoomDq28NbmpdtircelyMsyohS0LMPv6cFzmXXi/Re24C\n ++/zZGuaNEpTSY5tf8ZBvpibpmk63A+67L6GOezYhlm/FNiUPuh1i1ots7MISM7mbAweLQP5UBzwqFizUV+dFfEzjhW6ZKUfG\n FrTeqNKJqshpHeFq6FfQtGMa5cBZnTT7A94issI4piaiOYvx6AMFaCPugR/J0dlztj9DYcrP1uGH6kYaoXtU6Dp/STMGIdjrb\n 0x9QWT+jwT0sctWcC1tlwm4B7U2ak6iivpVhhnWlCCjVMdWP6amEL96ccTMQuTHZugs3EXXQ9PlXhyizSF5FIMsE75cdpWiYI\n 5BpnTRY311XM1ROM6+GjFrZOjmsUWHY3DtZM6TfKsaKVx77g7MyC1/qCXtimuFxHhVP1LT0tUGOkO5zp6NyNPqVER9bjWAf5C\n BN7t8iDoXpafxwNWowz2qqcGGPXNdVUrHHj6kWFmfbOtbGMIi+NtxIz+o2iSi4Y4jDYd7GYF2tlE2W+omrxJ+74yNeUVTW03g\n rPItaWAQyY5hfHac1ggRQTBD8tIw8wf5QtT9LrpXZHo8LzGQYbXB5QCVEhzp88Rri9OwqnP+14CaDJv+d4LPwNxrl2bOO+cyS\n Gaxi4xjO7psjDKZECLyKN9fN43lokp09R4rGP+Pk4Gme47RxRcA2DCUXMpmZ/4EUsy47VjxEoAWbFKjd0JVPq67EFUjKQLwgu\n DzAzALB28boB3A/KUgLY/ygX0T7IggZXjgxY8Zl94xzDPHvG/qGy88lKROmHWD1JZ8XrRzCWAMYm/21M0ICM2Kc7hmnvyJRpa\n eaoCJ5QNSP2Q00lAKcp1kdtU5z6lQwET5SaGOkwzO0c0GH98fglgML+JA62JfhQxzCJRIf5mJzGBR1TuQbqj+ZQAlhDj1V+2M\n PS5hhm0JFELMPgGoThOeSjH1UrAThO8cpPHpOXtL+eV/EJmql9Gp9A1BnnMHpmIKEfEKsE4GDFmlVJsMx7jmEkVxT6c3G4Y2n\n 5ojh4/Tj+EsB+gdGAVPqhxtjeLXM++75rGPxE1Gojmg6kZDrBip0O7o9HlwC2d82IxjiWil01jh1cwzTVlK9Fc/abrMRYDhDE\n np0Vrx/BLQHsDjofMyvnu4CwF2yw41ZJvUx2DSMjMIzxmLxM8z7wx6+jFnWPpnvT+t/9JSCSJQMwr3K/H2qOwTl4bPucoc5Yx\n 2cYLNS8iP1fT5rJ/FBcJv91/KJTj59f8Us98WI80/G4nGbJnnO668aa1J0KL7CCCc+B4nendmLMcoZCCg1xJRouebmht348Lz\n QfRZqAmwoWwihj4mQvabGxW+dWvKtwfTVGAtGcicTAARdgfv+oQgoNBSnBj2euQs05KxTnU5ggL/TAjpnlcY2CHz+40WsUWWQ\n Bw0igPE5glSRGwUidMh754DZrXKy+BGdF4m96i2R4gida1gib8bXQ4rQ4muB0wKxtNeVP67iBpsyLIG9o5Twjq1e8SU5MazPC\n anAPQZZ7DrxSTp53nB2dhyYn9gVJcI1vwYbzH5pKINIwkgBnJUsyLel3MACtMjEwwXB+8fu4gedHprSTEcYZHYch+iPQLd5kM\n DbYY1fMBNSULWHlkdUwihB3gT8Jx2CGimcNnWvq6P3M5huz4p64CCNglO/AKHFG9I6W+Gh3JFKpc3HZx6EotWMbRjKRv+hjZz\n h+TDe3Q0roDJdQmy+PysiJlIYB4+exZwz3vEVfG6PrBKPU4PemGnW4KZ6TYRQD/EDwd/C7urereOwQK6BM4Bcre/D4Xuy85Ig\n IZ3Ugasdd+CgvzpEU3Q7ZjFpycbZa4uWbl2EkA3mZ0SG7VW4OnOxlGPcdA9lmbOD8tsVJc1ya3saDVzoMvwExF2O6/HSkZDdJ\n Jv88n3sC8jaMKqSuszNrYKBLFSzX8NhpM7GOCutHfbkHGutNgzAovAaOznXQ4ZRc9XDxcaoaE4qXbqlLbXNhOb502zBKnpwxG\n N2QfhTLAncoWLdCKjtH8SpOEfyaEv6/hfxlIWcAiBE5RmDnYXJxEvI5olt57SJGDXs9UZKcsvXWU9q6y69ghvFmpLqhpRo7ql\n ehCYh9kMdLH/+d/h4K4Co1eQE+PQxDytmKpHRO8PtTZfhYBiH91Pj88sGk+zFKn9VUl/ppPtRhND1iGK+wY1dL8QYUEnz9k+N\n BzcBqr7gXk47fq49xnjIfrXvcMN5MyStM2gX5R3T68vxIjBlXL3XfvqOgXsBi4n3bait+1Rs56VXD6Ao5R9M7O/8eRroZbb1c\n ei2KB+5tGmtOK5KMNuqTi72VwT41jElJeRfN3m1tf4J+YyL6iokIvwC8uHN1JpYhMOc2pbfQP6zHkZJXeKm9sXlWZcTlrCFse\n ghcdIaJq6fcb72KvJsYOmaM1XYwnShjCetwx5FE6eCB9sBW286UlmcOtL9nTxg+MuO9Ozsu/77G+3+04346/NDWWAAAAABJRU\n 5ErkJggg=="),U.set("negZ","data:image/png;base64,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"),e.GizmoSubType=void 0,(o=e.GizmoSubType||(e.GizmoSubType={}))[o.particleEmitter=1]="particleEmitter",o[o.modelWireframe=2]="modelWireframe",o[o.box=3]="box",o[o.sphere=4]="sphere",o[o.cylinder=5]="cylinder",o[o.cone=6]="cone",o[o.torus=7]="torus",o[o.sprite=8]="sprite",o[o.plane=9]="plane",o[o.rotation=10]="rotation",o[o.translation=11]="translation",o[o.scale=12]="scale",o[o.viewHelper=13]="viewHelper",o[o.camera=14]="camera",o[o.frustum=15]="frustum",o[o.light=16]="light",o[o.directionLight=17]="directionLight",o[o.pointLight=18]="pointLight",o[o.spotLight=19]="spotLight",o[o.boundingBox=20]="boundingBox",o[o.floorGrid=21]="floorGrid",t.math.Vector3,t.math.Ray,(s=M||(M={}))[s.box=0]="box",s[s.sphere=1]="sphere",s[s.triangle=2]="triangle",s[s.line=3]="line";var Q=t.math.Matrix4,K=t.math.Vector2;function Z(e,t,n,i,r,o){var s=1/(t-e),a=1/(i-n),c=1/(o-r),l=-(t+e)*s,u=-(i+n)*a,h=-(o+r)*c;return new Q(s*=2,0,0,0,0,a*=2,0,0,0,0,c*=-2,0,l,u,h,1)}function X(){return(X=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e}).apply(this,arguments)}var J=function(){function e(){this.points=[],this.uvs=[],this.normals=[],this.indices=[]}var t=e.prototype;return t.createXYPlaneCircle=function(e,t,n,i,r,o,s,a){for(var c=0;c<n;c++){var l=i+c*r/n,u=e*Math.cos(l),h=e*Math.sin(l);s.push(u,h,t),a.push(o+c,o+(c+1)%n)}},t.createXZPlaneCircle=function(e,t,n,i,r,o,s,a){for(var c=0;c<n;c++){var l=i+c*r/n,u=e*Math.cos(l),h=e*Math.sin(l);s.push(u,t,h),a.push(o+c,o+(c+1)%n)}},t.createYZPlaneCircle=function(e,t,n,i,r,o,s,a){for(var c=0;c<n;c++){var l=i+c*r/n,u=e*Math.cos(l),h=e*Math.sin(l);s.push(t,h,u),a.push(o+c,o+(c+1)%n)}},e}(),q=t.math.Vector3,_=function(e){function t(t,n,i,r,o,s,a){void 0===t&&(t=1),void 0===n&&(n=8),void 0===i&&(i=6),void 0===r&&(r=0),void 0===o&&(o=2*Math.PI),void 0===s&&(s=0),void 0===a&&(a=Math.PI),g=e.call(this)||this,n=Math.max(3,Math.floor(n)),i=Math.max(2,Math.floor(i));for(var c=Math.min(s+a,Math.PI),l=[],u=0,h=0;h<=i;h++){var d=[],m=h/i,f=0;0==h&&0==s?f=.5/n:h==i&&c==Math.PI&&(f=-.5/n);for(var p=0;p<=n;p++){var g,v,y=p/n,x=-t*Math.cos(r+y*o)*Math.sin(s+m*a),w=t*Math.cos(s+m*a),A=t*Math.sin(r+y*o)*Math.sin(s+m*a);g.points.push(x,w,A);var M=new q(x,w,A).normalize();(v=g.normals).push.apply(v,[].concat(M.toArray())),g.uvs.push(y+f,1-m),d.push(u++)}l.push(d)}for(var I=0;I<i;I++)for(var C=0;C<n;C++){var S=l[I][C+1],T=l[I][C],b=l[I+1][C],E=l[I+1][C+1];(0!==I||s>0)&&g.indices.push(S,T,E),(I!==i-1||c<Math.PI)&&g.indices.push(T,b,E)}return g}return G(t,e),t}(J),$=function(e){function t(t,n,i){void 0===t&&(t=1),void 0===n&&(n=1),void 0===i&&(i=1);var r,o=function(e,t,n,i,r,o,a,c,l,u,h,d){for(var m=o/2,f=a/2,p=c/2,g=[0,0,0],v=0,y=0;y<2;y++)for(var x=y*a-f,w=0;w<2;w++){var A=w*o-m;g[e]=A*i,g[t]=x*r,g[n]=p,l.push.apply(l,[].concat(g)),g[e]=0,g[t]=0,g[n]=c>0?1:-1,h.push.apply(h,[].concat(g)),u.push(w),u.push(1-y),v+=1}for(var M=0;M<1;M++)for(var I=0;I<1;I++){var C=s+I+2*M,S=s+I+2*(M+1),T=s+(I+1)+2*(M+1),b=s+(I+1)+2*M;d.push(C,S,b),d.push(S,T,b)}s+=v};r=e.call(this)||this;var s=0;return o(2,1,0,-1,-1,i,n,t,r.points,r.uvs,r.normals,r.indices),o(2,1,0,1,-1,i,n,-t,r.points,r.uvs,r.normals,r.indices),o(0,2,1,1,1,t,i,n,r.points,r.uvs,r.normals,r.indices),o(0,2,1,1,-1,t,i,-n,r.points,r.uvs,r.normals,r.indices),o(0,1,2,1,-1,t,n,i,r.points,r.uvs,r.normals,r.indices),o(0,1,2,-1,-1,t,n,-i,r.points,r.uvs,r.normals,r.indices),r}return G(t,e),t}(J),ee=t.math.Vector3,et=function(e){function t(t,n,i,r,o,s,a,c){void 0===t&&(t=1),void 0===n&&(n=1),void 0===i&&(i=1),void 0===r&&(r=8),void 0===o&&(o=1),void 0===s&&(s=!1),void 0===a&&(a=0),void 0===c&&(c=2*Math.PI);var l,u=function(e,i,o,s,l){for(var u=h,d=!0===e?t:n,f=!0===e?1:-1,p=1;p<=r;p++)i.push(0,m*f,0),s.push(0,f,0),o.push(.5,.5),h++;for(var g=h,v=0;v<=r;v++){var y=v/r*c+a,x=Math.cos(y),w=Math.sin(y),A=d*w,M=m*f,I=d*x;i.push(A,M,I),s.push(0,f,0);var C=.5*x+.5,S=.5*w*f+.5;o.push(C,S),h++}for(var T=0;T<r;T++){var b=u+T,E=g+T;!0===e?l.push(E,E+1,b):l.push(E+1,E,b)}};l=e.call(this)||this,r=Math.floor(r),o=Math.floor(o);var h=0,d=[],m=i/2;return!function(e,s,l,u){for(var f=(n-t)/i,p=0;p<=o;p++){for(var g=[],v=p/o,y=v*(n-t)+t,x=0;x<=r;x++){var w=x/r,A=w*c+a,M=Math.sin(A),I=Math.cos(A),C=y*M,S=-v*i+m,T=y*I;e.push(C,S,T);var b=new ee(M,f,I).normalize();l.push.apply(l,[].concat(b.toArray())),s.push(w,1-v),g.push(h++)}d.push(g)}for(var E=0;E<r;E++)for(var P=0;P<o;P++){var z=d[P][E],B=d[P+1][E],G=d[P+1][E+1],L=d[P][E+1];u.push(z,B,L),u.push(B,G,L)}}(l.points,l.uvs,l.normals,l.indices),!1===s&&(t>0&&u(!0,l.points,l.uvs,l.normals,l.indices),n>0&&u(!1,l.points,l.uvs,l.normals,l.indices)),l}return G(t,e),t}(J),en=function(e){function t(t,n,i,r,o,s,a){return void 0===t&&(t=1),void 0===n&&(n=1),void 0===i&&(i=8),void 0===r&&(r=1),void 0===o&&(o=!1),void 0===s&&(s=0),void 0===a&&(a=2*Math.PI),e.call(this,0,t,n,i,r,o,s,a)}return G(t,e),t}(et),ei=t.math.Vector3,er=function(e){function t(t,n,i,r,o){void 0===t&&(t=1),void 0===n&&(n=.4),void 0===i&&(i=64),void 0===r&&(r=64),void 0===o&&(o=2*Math.PI),c=e.call(this)||this,i=Math.floor(i),r=Math.floor(r);for(var s=0;s<=i;s++)for(var a=0;a<=r;a++){var c,l,u=a/r*o,h=s/i*Math.PI*2,d=(t+n*Math.cos(h))*Math.cos(u),m=(t+n*Math.cos(h))*Math.sin(u),f=n*Math.sin(h);c.points.push(d,m,f);var p=t*Math.cos(u),g=t*Math.sin(u),v=new ei(d,m,f),y=new ei(p,g,0),x=v.subtract(y).normalize();(l=c.normals).push.apply(l,[].concat(x.toArray())),c.uvs.push(a/r),c.uvs.push(s/i)}for(var w=1;w<=i;w++)for(var A=1;A<=r;A++){var M=(r+1)*w+A-1,I=(r+1)*(w-1)+A-1,C=(r+1)*(w-1)+A,S=(r+1)*w+A;c.indices.push(M,I,S),c.indices.push(I,C,S)}return c}return G(t,e),t}(J),eo=function(e){function t(t,n,i,r){void 0===t&&(t=1),void 0===n&&(n=1),void 0===i&&(i=1),void 0===r&&(r=1),o=e.call(this)||this;for(var o,s=t/2,a=n/2,c=Math.floor(i),l=Math.floor(r),u=c+1,h=l+1,d=t/c,m=n/l,f=0;f<h;f++)for(var p=f*m-a,g=0;g<u;g++){var v=g*d-s;o.points.push(v,-p,0),o.normals.push(0,0,1),o.uvs.push(g/c),o.uvs.push(1-f/l)}for(var y=0;y<l;y++)for(var x=0;x<c;x++){var w=x+u*y,A=x+u*(y+1),M=x+1+u*(y+1),I=x+1+u*y;o.indices.push(w,A,I),o.indices.push(A,M,I)}return o}return G(t,e),t}(J),es=t.math.Euler,ea=t.math.Vector3,ec=t.math.Matrix4,el=function(e){function t(t,n,i,r,o,s){c=e.call(this)||this;var a,c,l=s*Math.tan(i/180*Math.PI/2),u=l*r,h=new ea(u,l,s),d=new ea(-u,l,s),m=new ea(-u,-l,s),f=new ea(u,-l,s),p=es.fromArray(n).toMatrix4(new ec),g=p.transformPoint(h).add(t),v=p.transformPoint(d).add(t),y=p.transformPoint(m).add(t),x=p.transformPoint(f).add(t);return(a=c.points).push.apply(a,[].concat(t,g.toArray(),v.toArray(),y.toArray(),x.toArray())),c.indices.push(0,1,0,2,0,3,0,4,1,2,2,3,3,4,4,1),c}return G(t,e),t}(J),eu=function(e){function t(t,n,i,r,o,s){void 0===t&&(t=1),void 0===n&&(n=2),void 0===i&&(i=64),void 0===r&&(r=8),void 0===o&&(o=0),void 0===s&&(s=2*Math.PI),(a=e.call(this)||this).createXYPlaneCircle(t,0,i,o,s,0,a.points,a.indices);for(var a,c=i%r/2,l=i/r,u=0;u<r;u++){var h=c+u*l,d=a.points[3*h],m=a.points[3*h+1],f=-n;a.points.push(d,m,f),a.indices.push(h,i+u)}return a}return G(t,e),t}(J),eh=function(e){function t(t,n,i,r){var o;return void 0===t&&(t=10),void 0===n&&(n=64),void 0===i&&(i=0),void 0===r&&(r=2*Math.PI),(o=e.call(this)||this).createXYPlaneCircle(t,0,n,i,r,0,o.points,o.indices),o.createXZPlaneCircle(t,0,n,i,r,n,o.points,o.indices),o.createYZPlaneCircle(t,0,n,i,r,2*n,o.points,o.indices),o}return G(t,e),t}(J),ed=function(e){function t(t,n,i,r,o){void 0===t&&(t=10),void 0===n&&(n=30),void 0===i&&(i=64),void 0===r&&(r=0),void 0===o&&(o=2*Math.PI),s=e.call(this)||this;var s,a=t*Math.tan(n/2/180*Math.PI);s.createXYPlaneCircle(a,-t,i,r,o,0,s.points,s.indices),s.points.push(0,0,0);for(var c=i/4,l=i%4/2,u=0;u<4;u++)s.indices.push(i,l+u*c);return s}return G(t,e),t}(J),em=function(e){function t(t,n){void 0===t&&(t=12),void 0===n&&(n=6),i=e.call(this)||this;for(var i,r=0,o=t/2,s=-t/2,a=0;a<=n;a++){var c=s+a*t/n;i.points.push(c,s,0,c,o,0,s,c,0,o,c,0),i.indices.push(r,r+1,r+2,r+3),r+=4}return i}return G(t,e),t}(J);function ef(e,n,i,r){var o;switch(n){case 1:o=new _(i.radius,i.widthSegments,i.heightSegments);break;case 2:o=new et(i.radius,i.radius,i.height);break;case 3:o=new en(i.radius,i.height);break;case 4:o=new er(i.radius,i.tube,i.radialSegments,i.tubularSegments,i.arc);break;case 6:case 7:o=new eo(i.width,i.height);break;case 5:o=new el(i.position,i.rotation,i.fov,i.aspect,i.near,i.far);break;case 8:o=new eu(i.radius,i.length,i.segments4,i.linesNumber,i.thetaStart,i.thetaLength);break;case 10:o=new eh(i.range,i.segments,i.thetaStart,i.thetaLength);break;case 9:o=new ed(i.range,i.spotAngle,i.segments,i.thetaStart,i.thetaLength);break;case 11:o=new em(i.sideLength,i.parts);break;default:o=new $(i.width,i.height,i.depth)}return t.Geometry.create(e,{attributes:{a_Position:{size:3,data:new Float32Array(o.points)},a_Normal:{size:3,data:new Float32Array(o.normals)},a_UV1:{size:2,data:new Float32Array(o.uvs)}},indices:{data:new Uint16Array(o.indices)},mode:r,drawCount:o.indices.length})}e.GeometryType=void 0,(a=e.GeometryType||(e.GeometryType={}))[a.Box=0]="Box",a[a.Sphere=1]="Sphere",a[a.Cylinder=2]="Cylinder",a[a.Cone=3]="Cone",a[a.Torus=4]="Torus",a[a.Frustum=5]="Frustum",a[a.Sprite=6]="Sprite",a[a.Plane=7]="Plane",a[a.DirectionLight=8]="DirectionLight",a[a.SpotLight=9]="SpotLight",a[a.PointLight=10]="PointLight",a[a.FloorGrid=11]="FloorGrid";var ep=t.math.Vector2,eg=t.math.Vector3,ev=t.math.Matrix4;function ey(n,i,r,o,s){var a,c,l,u,h,d,m,f,p,g,v,y,x,w,A,I,C,S;switch(s||(s={size:0,renderMode:WebGLRenderingContext.TRIANGLES}),i){case e.GizmoSubType.sprite:a=eM(n,s);break;case e.GizmoSubType.camera:a=eM(n,s,o?o.get("camera"):void 0,r);break;case e.GizmoSubType.light:a=eM(n,s,o?o.get("light"):void 0,r);break;case e.GizmoSubType.translation:a=function(n,i,r){for(var o,s=new Map,a=i.size.scale||1,c={width:.8*a,height:.02*a,depth:.02*a},l="translation",u=ew(n,c,!1,l),h=D(u);!(o=h()).done;){var d=o.value,m=d[0],f=d[1];s.set(m,f)}var p={radius:.05*a,height:.2*a},g=eA(n,e.GizmoSubType.cone,{size:p,color:N.xAxisColor,renderMode:H,depthTest:!0,name:l},"blend"),v=eA(n,e.GizmoSubType.cone,{size:p,color:N.yAxisColor,renderMode:H,depthTest:!0,name:l},"blend"),y=eA(n,e.GizmoSubType.cone,{size:p,color:N.zAxisColor,renderMode:H,name:l,depthTest:!0},"blend"),x=new t.Transform({valid:!0}),w=new t.Transform({valid:!0}),A=new t.Transform({valid:!0});x.setRotation(0,0,90),w.setRotation(0,0,0),A.setRotation(-90,0,0),x.translate(c.width,0,0),w.translate(0,c.width,0),A.translate(0,0,c.width);var I={width:.2*a,height:.2*a},C=eA(n,e.GizmoSubType.plane,{size:I,color:N.zAxisColor,renderMode:H,depthTest:!0,name:l}),S=eA(n,e.GizmoSubType.plane,{size:I,color:N.xAxisColor,renderMode:H,depthTest:!0,name:l}),T=eA(n,e.GizmoSubType.plane,{size:I,color:N.yAxisColor,renderMode:H,depthTest:!0,name:l}),b=new t.Transform({valid:!0}),E=new t.Transform({valid:!0}),P=new t.Transform({valid:!0}),z=c.width/8;return b.translate(I.width/2+z,I.height/2+z,0),E.setRotation(0,90,0),E.translate(0,I.height/2+z,I.width/2+z),P.setRotation(-90,0,0),P.translate(I.width/2+z,0,I.height/2+z),s.set(g,x),s.set(v,w),s.set(y,A),s.set(C,b),s.set(S,E),s.set(T,P),eI({width:2.4*p.radius,length:c.width+p.height/2},r),r.set("xyPlane",{type:M.triangle,triangles:C.firstGeometry()?ex(C.firstGeometry(),b):[],backfaceCulling:!1}),r.set("yzPlane",{type:M.triangle,triangles:S.firstGeometry()?ex(S.firstGeometry(),E):[],backfaceCulling:!1}),r.set("zxPlane",{type:M.triangle,triangles:T.firstGeometry()?ex(T.firstGeometry(),P):[],backfaceCulling:!1}),s}(n,s,r);break;case e.GizmoSubType.scale:a=function(n,i,r){for(var o,s=new Map,a=i.size.scale||1,c={width:.8*a,height:.02*a,depth:.02*a},l="scale",u=ew(n,c,!1,l),h=D(u);!(o=h()).done;){var d=o.value,m=d[0],f=d[1];s.set(m,f)}var p={width:.1*a,height:.1*a,depth:.1*a},g={width:.2*a,height:.2*a,depth:.2*a},v=eA(n,e.GizmoSubType.box,{size:p,color:N.xAxisColor,renderMode:H,depthTest:!0,name:l},"blend"),y=eA(n,e.GizmoSubType.box,{size:p,color:N.yAxisColor,renderMode:H,depthTest:!0,name:l},"blend"),x=eA(n,e.GizmoSubType.box,{size:p,color:N.zAxisColor,renderMode:H,depthTest:!0,name:l},"blend"),w=eA(n,e.GizmoSubType.box,{size:g,color:[.8,.8,.8],renderMode:H,depthTest:!0,name:l},"blend"),A=new t.Transform({valid:!0}),I=new t.Transform({valid:!0}),C=new t.Transform({valid:!0}),S=new t.Transform({valid:!0});return A.translate(c.width,0,0),I.translate(0,c.width,0),C.translate(0,0,c.width),s.set(w,S),s.set(v,A),s.set(y,I),s.set(x,C),eI({width:1.2*p.width,length:c.width+p.width/2},r),r.set("center",{type:M.sphere,center:new eg,radius:Math.pow(Math.pow(g.width,2)+Math.pow(g.height,2)+Math.pow(g.depth,2),.5)/2}),s}(n,s,r);break;case e.GizmoSubType.viewHelper:a=function(e,n,i,r){for(var o,s=new Map,a=n.size.scale||1,c={width:.8*a,height:.02*a,depth:.02*a},l=ew(e,c,!0),u=D(l);!(o=u()).done;){var h=o.value,d=h[0],m=h[1];s.set(d,m)}var f={width:.14*a,height:.14*a},p=(c.width+f.width)/2,g=eM(e,{size:f,renderMode:H,depthTest:!0},r.get("posX")),v=eM(e,{size:f,renderMode:H,depthTest:!0},r.get("posY")),y=eM(e,{size:f,renderMode:H,depthTest:!0},r.get("posZ")),x=new t.Transform({valid:!0}),w=new t.Transform({valid:!0}),A=new t.Transform({valid:!0});x.translate(p,0,0),w.translate(0,p,0),A.translate(0,0,p);var I=eM(e,{size:f,renderMode:H,depthTest:!0},r.get("negX")),C=eM(e,{size:f,renderMode:H,depthTest:!0},r.get("negY")),S=eM(e,{size:f,renderMode:H,depthTest:!0},r.get("negZ")),T=new t.Transform({valid:!0}),b=new t.Transform({valid:!0}),E=new t.Transform({valid:!0});T.translate(-p,0,0),b.translate(0,-p,0),E.translate(0,0,-p),s.set(g,x),s.set(v,w),s.set(y,A),s.set(I,T),s.set(C,b),s.set(S,E);var P=f.height/2*1.2;return i.set("posX",{type:M.sphere,center:x.position,radius:P}),i.set("posY",{type:M.sphere,center:w.position,radius:P}),i.set("posZ",{type:M.sphere,center:A.position,radius:P}),i.set("negX",{type:M.sphere,center:T.position,radius:P}),i.set("negY",{type:M.sphere,center:b.position,radius:P}),i.set("negZ",{type:M.sphere,center:E.position,radius:P}),s}(n,s,r,o);break;case e.GizmoSubType.rotation:c=s,l=new Map,h={radius:.8*(u=c.size.scale||1),tube:.02*u,radiusSegments:10*u,widthSegments:20,heightSegments:20},d=X({},h,{tube:2*h.tube}),m="rotation",f=eA(n,e.GizmoSubType.torus,{size:h,color:N.xAxisColor,renderMode:H,name:m},"hideBack"),p=eA(n,e.GizmoSubType.torus,{size:h,color:N.yAxisColor,renderMode:H,name:m},"hideBack"),g=eA(n,e.GizmoSubType.torus,{size:h,color:N.zAxisColor,renderMode:H,name:m},"hideBack"),v=eA(n,e.GizmoSubType.sphere,{size:h,color:[.3,.3,.3],alpha:.1,renderMode:H,name:m},"blend"),y=eA(n,e.GizmoSubType.torus,{size:d,color:N.xAxisColor,renderMode:H}),x=eA(n,e.GizmoSubType.torus,{size:d,color:N.yAxisColor,renderMode:H}),w=eA(n,e.GizmoSubType.torus,{size:d,color:N.zAxisColor,renderMode:H}),A=new t.Transform({valid:!0}),I=new t.Transform({valid:!0}),C=new t.Transform({valid:!0}),S=new t.Transform({valid:!0}),A.setRotation(0,90,0),I.setRotation(-90,0,0),C.setRotation(0,0,0),l.set(v,S),l.set(f,A),l.set(p,I),l.set(g,C),r.set("xAxis",{type:M.triangle,triangles:y.firstGeometry()?ex(y.firstGeometry(),A):[],backfaceCulling:!0}),r.set("yAxis",{type:M.triangle,triangles:x.firstGeometry()?ex(x.firstGeometry(),I):[],backfaceCulling:!0}),r.set("zAxis",{type:M.triangle,triangles:w.firstGeometry()?ex(w.firstGeometry(),C):[],backfaceCulling:!0}),a=l;break;default:a=eA(n,i,s)}return a}function ex(e,t){var n=[],i=e.getIndexData(),r=e.getAttributeData("a_Position"),o=t.getWorldMatrix();if(r&&i&&i.length>0)for(var s=0;s<i.length;s+=3){var a=3*i[s],c=3*i[s+1],l=3*i[s+2],u=new eg(r[a],r[a+1],r[a+2]),h=new eg(r[c],r[c+1],r[c+2]),d=new eg(r[l],r[l+1],r[l+2]);n.push({p0:o.projectPoint(u),p1:o.projectPoint(h),p2:o.projectPoint(d)})}return n}function ew(n,i,r,o){void 0===r&&(r=!1);var s=new Map,a=eA(n,e.GizmoSubType.box,{size:i,color:N.xAxisColor,renderMode:H,depthTest:!0,name:o}),c=eA(n,e.GizmoSubType.box,{size:i,color:N.yAxisColor,renderMode:H,depthTest:!0,name:o}),l=eA(n,e.GizmoSubType.box,{size:i,color:N.zAxisColor,renderMode:H,depthTest:!0,name:o}),u=new t.Transform({valid:!0}),h=new t.Transform({valid:!0}),d=new t.Transform({valid:!0});return h.setRotation(0,0,90),d.setRotation(0,-90,0),r||(u.translate(i.width/2,0,0),h.translate(0,i.width/2,0),d.translate(0,0,i.width/2)),s.set(a,u),s.set(c,h),s.set(l,d),s}function eA(n,i,r,o){void 0===o&&(o="default");var s,a,c,l,u,h,d,m,f,p=r.size,g=r.color,v=r.alpha,y=r.renderMode,x=r.depthTest,w=r.name;switch(i){case e.GizmoSubType.sphere:m=e.GeometryType.Sphere;break;case e.GizmoSubType.cylinder:m=e.GeometryType.Cylinder;break;case e.GizmoSubType.cone:m=e.GeometryType.Cone;break;case e.GizmoSubType.torus:m=e.GeometryType.Torus;break;case e.GizmoSubType.sprite:m=e.GeometryType.Sprite;break;case e.GizmoSubType.plane:m=e.GeometryType.Plane;break;case e.GizmoSubType.frustum:m=e.GeometryType.Frustum;break;case e.GizmoSubType.directionLight:m=e.GeometryType.DirectionLight;break;case e.GizmoSubType.spotLight:m=e.GeometryType.SpotLight;break;case e.GizmoSubType.pointLight:m=e.GeometryType.PointLight;break;case e.GizmoSubType.floorGrid:m=e.GeometryType.FloorGrid;break;default:m=e.GeometryType.Box}var A=ef(n,m,p,y);switch(o){case"blend":s=g?eg.fromArray(g):new eg(255,255,255),a=v||1,(c=t.Material.create(n,{uniformValues:{u_color:new Float32Array(s.toArray()),u_alpha:new Float32Array([a,0]),u_model:new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])},shader:{shared:!0,fragment:"\n precision mediump float;\n\n uniform vec3 u_color;\n uniform vec2 u_alpha;\n\n void main(){\n gl_FragColor = vec4(u_color,u_alpha);\n }",vertex:"\n precision highp float;\n\n attribute vec3 a_Position;\n\n uniform mat4 u_model;\n uniform mat4 effects_MatrixV;\n uniform mat4 _MatrixP;\n void main(){\n gl_Position = _MatrixP * effects_MatrixV * u_model * vec4(a_Position,1.0);\n }"}})).setVector3("u_color",s),c.setVector2("u_alpha",new ep(a,0)),c.setMatrix("u_model",ev.IDENTITY),c.depthTest=!!x&&x,c.stencilTest=!1,c.blending=!0,c.blendEquation=[t.glContext.FUNC_ADD,t.glContext.FUNC_ADD],c.blendFunction=[t.glContext.SRC_ALPHA,t.glContext.ONE_MINUS_SRC_ALPHA,t.glContext.SRC_ALPHA,t.glContext.ONE_MINUS_SRC_ALPHA],c.depthMask=!0,f=c;break;case"hideBack":l=g?eg.fromArray(g):new eg(255,255,255),(u=t.Material.create(n,{uniformValues:{u_color:new Float32Array(l.toArray()),u_model:new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),u_cameraPos:new Float32Array([0,0,0]),u_center:new Float32Array([0,0,0])},shader:{fragment:"\n precision mediump float;\n\n uniform vec3 u_color;\n\n varying float flag;\n\n void main(){\n if(flag > 0.0) {\n discard;\n }\n\n gl_FragColor = vec4(u_color,1.0);\n }",vertex:"\n precision highp float;\n\n attribute vec3 a_Position;\n\n uniform mat4 u_model;\n uniform mat4 effects_MatrixV;\n uniform mat4 _MatrixP;\n\n uniform vec3 u_cameraPos;\n uniform vec3 u_center;\n\n varying float flag;\n void main(){\n float distance = length(u_cameraPos - u_center);\n vec3 worldPosition = (u_model * vec4(a_Position,1.0)).xyz;\n flag = length(u_cameraPos - worldPosition) - distance;\n gl_Position = _MatrixP * effects_MatrixV * u_model * vec4(a_Position,1.0);\n }",shared:!0}})).setVector3("u_color",l),u.setMatrix("u_model",ev.IDENTITY),u.setVector3("u_cameraPos",eg.ZERO),u.setVector3("u_center",eg.ZERO),u.depthTest=!!x&&x,u.stencilTest=!1,u.blending=!1,u.depthMask=!0,f=u;break;default:h=g?eg.fromArray(g):new eg(255,255,255),(d=t.Material.create(n,{uniformValues:{u_color:new Float32Array(h.toArray()),u_model:new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])},shader:{fragment:"\n precision mediump float;\n\n uniform vec3 u_color;\n\n void main(){\n gl_FragColor = vec4(u_color,1.0);\n }",vertex:"\n precision highp float;\n\n attribute vec3 a_Position;\n\n uniform mat4 u_model;\n uniform mat4 effects_MatrixV;\n uniform mat4 _MatrixP;\n\n void main(){\n gl_Position = _MatrixP * effects_MatrixV * u_model * vec4(a_Position,1.0);\n }",shared:!0}})).setVector3("u_color",h),d.setMatrix("u_model",ev.IDENTITY),d.depthTest=!!x&&x,d.stencilTest=!1,d.blending=!1,d.depthMask=!0,f=d}return t.Mesh.create(n,{name:w||m.toString(),geometry:A,material:f,priority:3e3})}function eM(n,i,r,o){var s,a,c,l,u,h=ef(n,e.GeometryType.Sprite,i.size,H),d=(s=r||i.color,a=i.depthTest,l={u_model:new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),u_alpha:new Float32Array([1,0])},(u=t.Material.create(n,{uniformValues:l,shader:{shared:!0,fragment:"\n precision highp float;\n\n uniform vec2 u_alpha;\n uniform vec3 u_color;\n uniform sampler2D u_iconTex;\n\n varying vec2 v_uv;\n\n void main(){\n vec4 color = texture2D(u_iconTex, vec2(v_uv.x, 1.0 - v_uv.y));\n if(color.a < 0.001)\n {\n discard;\n }\n gl_FragColor = vec4(color.xyz, color.w * u_alpha.x);\n }",vertex:"\n precision highp float;\n\n attribute vec3 a_Position;\n attribute vec2 a_UV1;\n\n uniform mat4 u_model;\n uniform mat4 effects_MatrixV;\n uniform mat4 _MatrixP;\n uniform mat4 effects_MatrixInvV;\n varying vec2 v_uv;\n\n void main(){\n v_uv = a_UV1;\n vec4 pos = u_model * vec4(0., 0., 0., 1.0);\n // vec4 pos = u_model * vec4(a_Position,1.0);\n\n pos.xyz += effects_MatrixInvV[0].xyz * a_Position.x + effects_MatrixInvV[1].xyz * a_Position.y;\n gl_Position = _MatrixP * effects_MatrixV * pos;\n }"}})).setMatrix("u_model",ev.IDENTITY),u.setVector2("u_alpha",new ep(1,0)),O(s,t.Texture)?u.setTexture("u_iconTex",s):(c=void 0===s?new eg(255,255,255):eg.fromArray(s),u.setVector3("u_color",c)),u.depthTest=!!a&&a,u.stencilTest=!1,u.blending=!0,u.blendEquation=[t.glContext.FUNC_ADD,t.glContext.FUNC_ADD],u.blendFunction=[t.glContext.SRC_ALPHA,t.glContext.ONE_MINUS_SRC_ALPHA,t.glContext.SRC_ALPHA,t.glContext.ONE_MINUS_SRC_ALPHA],u);return o&&o.set("sprite",{type:M.sphere,radius:Math.pow(Math.pow(i.size.width,2)+Math.pow(i.size.height,2),.5)/2}),t.Mesh.create(n,{name:i.name||"sprite",geometry:h,material:d,priority:3e3})}function eI(e,t){t.set("xAxis",{type:M.line,points:[new eg(0,0,0),new eg(e.length,0,0)],width:e.width}),t.set("yAxis",{type:M.line,points:[new eg(0,0,0),new eg(0,e.length,0)],width:e.width}),t.set("zAxis",{type:M.line,points:[new eg(0,0,0),new eg(0,0,e.length)],width:e.width})}var eC=t.math.Matrix4;t.math.Vector2;var eS=t.math.Vector3,eT=t.math.Euler,eb=t.math.Vector3,eE=t.math.Matrix4,eP=Math.PI/180;function ez(e,t,n){void 0===n&&(n={});var i=n.plane,r=n.translate,o=void 0===r?[0,0,0]:r,s=n.rotate,a=eT.fromArray(void 0===s?[0,0,0]:s).negate().toMatrix4(new eE),c=[],l=[];d(e,0);for(var u=1;u<=t;u++){var h=u*eP;l.push(u-1,u),d(Math.cos(h)*e,Math.sin(h)*e)}return{points:c,indices:l};function d(e,t){var n=new eb;"xz"===i?n.set(e,0,t):"yz"===i?n.set(0,e,t):n.set(e,t,0),a.transformNormal(n),c.push(n.add(o))}}function eB(e,t){return{points:[eb.fromArray(e),eb.fromArray(t)],indices:[0,1]}}function eG(e,t,n){var i=e/2,r=t/2,o=[new eb(-i,r,0),new eb(i,r,0),new eb(i,-r,0),new eb(-i,-r,0)];return n&&o.forEach(function(e){e.add(n)}),{points:o,indices:[0,1,1,2,2,3,3,0]}}var eL={Texture:function(e){var t=[];if(e.detail)for(var n=e.detail.anchors,i=e.detail.block,r=e.width,o=e.height,s=0;s<n.length;s+=2)t.push(eG(i[0]*r,i[1]*o,[r*(n[s]-.5),o*(n[s+1]-.5),0]));else t.unshift(eL.Rectangle(e)[0]);return t},Circle:function(e){var t=e.radius,n=e.arc;return[ez(t,n),360!==n&&eB([0,0,0],[t,0,0]),360!==n&&eB([0,0,0],[Math.cos(n*eP)*t,Math.sin(n*eP)*t,0])]},Box:function(e){var t,n,i,r,o=e.width,s=e.height,a=e.depth,c=e.center;return[(t=o/2,n=s/2,i=a/2,r=null!=c?c:[0,0,0],{points:[[-t,n,-i],[-t,-n,-i],[-t,n,i],[-t,-n,i],[t,n,-i],[t,-n,-i],[t,n,i],[t,-n,i]].map(function(e){return new eb(e[0]+r[0],e[1]+r[1],e[2]+r[2])}),indices:[0,1,1,3,3,2,2,0,4,5,5,7,7,6,6,4,0,4,2,6,3,7,1,5]})]},Sphere:function(e){var t=e.radius,n=e.arc,i=[eB([0,0,-t],[0,0,t]),ez(t,n>180?360:180,{plane:"xz",rotate:[0,90,0]}),ez(t,n,{plane:"xy"}),ez(t,180,{plane:"xz",rotate:[0,90,n]})];return n>90&&i.push(ez(t,n>270?360:180,{plane:"yz",rotate:[-90,0,0]})),i},Hemisphere:function(e){var t=e.radius,n=e.arc,i=[eB([0,0,t],[0,0,0]),eB([n>180?-t:0,0,0],[t,0,0]),e>90&&eB([0,n>270?-t:0,0],[0,t,0]),ez(t,(n>180?360:180)/2,{plane:"xz"}),ez(t,n,{plane:"xy"}),ez(t,90,{plane:"xz",rotate:[0,0,n]}),eB([0,0,0],[Math.cos(n*eP)*t,Math.sin(n*eP)*t,0])];return n>90&&i.push(ez(t,n>270?180:90,{plane:"yz"})),i},Cone:function(e){var t=e.radius,n=e.arc,i=t*Math.tan(e.angle*eP)+t;return[ez(i,n,{translate:[0,0,t]}),eB([t,0,0],[i,0,t]),n>90&&eB([0,t,0],[0,i,t]),n>180&&eB([-t,0,0],[-i,0,t]),n>270&&eB([0,-t,0],[0,-i,t]),eB([Math.cos(n*eP)*t,Math.sin(n*eP)*t,0],[Math.cos(n*eP)*i,Math.sin(n*eP)*i,t])].concat(eL.Circle(e))},Edge:function(e){var t=e.width/2;return[eB([-t,0,0],[t,0,0])]},Rectangle:function(e){return[eG(e.width,e.height)]},RectangleEdge:function(e){return[eG(e.width,e.height)]},Donut:function(e){var t=e.arc,n=e.radius,i=e.donutRadius;return[ez(i,360,{translate:[n,0,0],rotate:[90,0,0]}),ez(n-i,t),ez(n+i,t),ez(n,t,{translate:[0,0,i]}),ez(n,t,{translate:[0,0,-i]}),t%360==0?ez(i,360,{translate:[-n,0,0],rotate:[90,0,0]}):ez(i,360,{translate:[Math.cos(t*eP)*n,Math.sin(t*eP)*n,0],rotate:[90,0,t]})]},path:function(e){for(var t=e.keys,n=[],i=0;i<t.length-1;i++)n.push(eG(.04,.04,t[i])),n.push(eB(t[i],t[i+1]));return n.push(eG(.04,.04,t[t.length-1])),n}};function ek(e,n,i){var r,o,s,a,c,l,u,h=function(e){for(var t=function(t,r){var s=e[t];s&&(s.points.forEach(function(e){n.push(e.x,e.y,e.z)}),s.indices.forEach(function(e){return i.push(e+r)}),r+=s.points.length),o=r},n=[],i=[],r=0,o=0;r<e.length;r++)t(r,o);return{points:new Float32Array(n),indices:new Uint16Array(i)}}(eL[n.type||n.shape](n));return r=h.points,o=h.indices,s=i.color||[1,0,0],a=i.depthTest,c=n.shape,void 0===a&&(a=!1),(l=t.Material.create(e,{uniformValues:{u_color:new Float32Array(s),u_model:new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])},shader:{shared:!0,fragment:"\n precision mediump float;\n\n uniform vec3 u_color;\n\n void main(){\n gl_FragColor = vec4(u_color,1.0);\n }",vertex:"precision highp float;\n\n attribute vec3 a_Position;\n\n uniform mat4 u_model;\n uniform mat4 effects_MatrixVP;\n void main(){\n gl_Position = effects_MatrixVP * u_model * vec4(a_Position,1.0);\n }"}})).setVector3("u_color",eb.fromArray(s)),l.setMatrix("u_model",eE.IDENTITY),l.depthTest=a,l.stencilTest=!1,l.blending=!1,l.depthMask=!0,u=t.Geometry.create(e,{attributes:{a_Position:{size:3,data:r}},indices:{data:o},mode:t.glContext.LINES,drawCount:o.length}),t.Mesh.create(e,{name:c,geometry:u,material:l,priority:3e3})}eL["0"]=eL.None,eL["1"]=eL.Sphere,eL["2"]=eL.Cone,eL["3"]=eL.Hemisphere,eL["4"]=eL.Circle,eL["5"]=eL.Donut,eL["6"]=eL.Rectangle,eL["7"]=eL.RectangleEdge,eL["8"]=eL.Edge,eL["9"]=eL.Texture;var eR=t.math.Vector4;function eF(e){var n;null==(n=e.geometry)||n.dispose(),e.dispose({geometries:t.DestroyOptions.keep})}function eV(e,t,n,i){n.material.cloneUniforms(t);for(var r,o=n.firstGeometry(),s=D(Object.keys(t.enabledMacros));!(r=s()).done;){var a=r.value;n.material.enableMacro(a,t.enabledMacros[a])}if(0===i){var c=Math.abs(e.getDrawCount());if(0!==c&&c!==o.getDrawCount()/2){var l=e.getIndexData(),u=l?function(e){for(var t=e.length/3,n=new Uint32Array(6*t),i=0;i<t;i++){var r=6*i,o=3*i,s=e[o],a=e[o+1],c=e[o+2];n[r]=s,n[r+1]=a,n[r+2]=a,n[r+3]=c,n[r+4]=c,n[r+5]=s}return n}(l):function(e){for(var t=e/3,n=new Uint32Array(6*t),i=0;i<t;i++){var r=6*i,o=3*i,s=o+1,a=o+2;n[r]=o,n[r+1]=s,n[r+2]=s,n[r+3]=a,n[r+4]=a,n[r+5]=o}return n}(c);o.setIndexData(u),o.setDrawCount(u.length)}}else if(1===i&&e.getDrawCount()/6!=o.getDrawCount()/8){var h=function(e,t){for(var n=new Uint16Array(8*e),i=0;i<e;i++){var r=8*i,o=4*i;n[r]=o,n[r+1]=1+o,n[r+2]=1+o,n[r+3]=3+o,n[r+4]=3+o,n[r+5]=2+o,n[r+6]=2+o,n[r+7]=o}return n}(e.getDrawCount()/6,e.getIndexData());o.setIndexData(h),o.setDrawCount(h.length)}return n}(c=I||(I={}))[c.triangle=0]="triangle",c[c.quad=1]="quad";var eD=function(e){function t(t,n){var i,r,o,s,a,c,l=n.geometry,u=null!=(o=null==(r=n.index)?void 0:r.data)?o:l.getIndexData(),h=null==u?void 0:u.slice();i=e.call(this,t,{name:n.name,attributes:{},indices:h?{data:h}:void 0,drawStart:null!=(s=n.drawStart)?s:0,drawCount:null!=(a=n.drawCount)?a:0,mode:null!=(c=n.mode)?c:0})||this;var d=l.getVertexLayout();return d&&i.setVertexBuffers(l.getVertexBuffers(),d),i}return G(t,e),t}(t.Geometry),eO="editor-gizmo",eY="front-gizmo",eN="behind-gizmo",eH=t.math.Vector2,eU=t.math.Vector3,ej=t.math.Matrix4,eW=t.math.Quaternion,eQ=t.glContext;e.GizmoComponent=function(n){function i(){var r;return r=n.apply(this,arguments)||this,r.boundingMap=new Map,r.coordinateSpace=0,r.mat=ej.fromIdentity(),r.wireframeMeshes=[],r.meshes=[],r.mesh=null,r.getHitTestParams=function(){var n=r.item,o=r.boundingMap;if(o.size>0){var s,a=o.keys();if(s=r.transform.getWorldMatrix(),r.targetItem){var c=new eU,l=new eW,u=new eU(1,1,1),h=r.subType;0==r.coordinateSpace||h===e.GizmoSubType.scale?r.targetItem.transform.assignWorldTRS(c,l):r.targetItem.transform.assignWorldTRS(c);var d=new t.Transform({position:c,quat:l,scale:u,valid:!0});if(h===e.GizmoSubType.rotation||h===e.GizmoSubType.scale||h===e.GizmoSubType.translation||h===e.GizmoSubType.camera||h===e.GizmoSubType.light){var m=W(n.composition.camera.position||[0,0,0],d.position);d.setPosition(m.x,m.y,m.z),s=d.getWorldMatrix()}else s=d.getWorldMatrix()}return{type:t.HitTestType.custom,clipMasks:r.frameClipMasks,collect:function(r,c){var l=[],u=n.getComponent(i);u.hitBounding=void 0;for(var h,d=D(a);!(h=d()).done;)!function(){var i=h.value,a=o.get(i),d=new eU,m=new eU;((null==a?void 0:a.type)===M.box||(null==a?void 0:a.type)===M.sphere)&&((null==a?void 0:a.center)&&d.copyFrom(null==a?void 0:a.center),s.projectPoint(d,m));var f=void 0;switch(null==a?void 0:a.type){case M.box:var p=a.size.clone().multiply(.5),g=d.clone().add(p),v=d.clone().subtract(p);f=r.intersectBox({min:v,max:g},new eU);break;case M.sphere:if(u.subType===e.GizmoSubType.viewHelper){var y=n.composition.camera.getViewMatrix(),x=n.composition.renderer.getWidth(),w=n.composition.renderer.getHeight(),A=2*Math.tan(30*Math.PI/360)*16,I=A/(x/w),C=Z(-A/2,A/2,-I/2,I/2,-16,16),S=n.composition.camera.getInverseViewMatrix(),T=new t.Transform({valid:!0});T.cloneFromMatrix(s);var b=T.position,E=u.size.padding||1;T.setPosition(b.x+A/2-E,b.y+I/2-E,b.z);var P=T.getWorldMatrix(),z=S.clone().multiply(P);z.projectPoint(d,m);var B=C.clone().multiply(y).clone().multiply(z),G=B.projectPoint(d,new eU),L=a.radius,k=new eU(P.elements[1],P.elements[5],P.elements[9]).normalize().clone().multiply(L);k.add(d);var R=B.projectPoint(k,new eU),F=G.toVector2(),V=R.toVector2(),D=F.distance(V);c.distance(F)<1.2*D&&(f=m)}else f=r.intersectSphere({center:m,radius:a.radius},new eU);break;case M.triangle:for(var O=a.triangles,Y=a.backfaceCulling,N=[],H=void 0,U=0;U<O.length;U++){var j=O[U],W={p0:s.projectPoint(j.p0,new eU),p1:s.projectPoint(j.p1,new eU),p2:s.projectPoint(j.p2,new eU)};(H=r.intersectTriangle(W,new eU,Y))&&N.push(H)}if(N.length>0){var Q=void 0;N.forEach(function(e){var t=r.origin.distanceSquared(e);(!Q||t<Q)&&(Q=t,f=e)})}break;case M.line:var X=a.points,J=a.width;f=function(e,t,n,i,r,o){var s=new eS(r.elements[1],r.elements[5],r.elements[9]).normalize().clone().multiply(i);s.add(n[0]);var a=o.getModelViewProjection(new eC,r),c=a.projectPoint(n[0],new eS),l=a.projectPoint(n[1],new eS),u=a.projectPoint(s,new eS).clone().subtract(c).length(),h=(f=[c.toVector2(),l.toVector2()],p=new K,g=new K,v=new K,p.subtractVectors(t,f[0]),g.subtractVectors(t,f[1]),v.subtractVectors(f[1],f[0]),M=2*Math.abs(Math.sqrt((A=((y=p.length())+(x=g.length())+(w=v.length()))/2)*(A-y)*(A-x)*(A-w)))/w,I=!1,Math.sqrt(Math.pow(y,2)-Math.pow(M,2))<=w&&Math.sqrt(Math.pow(x,2)-Math.pow(M,2))<=w&&(I=!0),{distance:M,isInLine:I}),d=h.distance,m=h.isInLine;if(d<=u&&m){var f,p,g,v,y,x,w,A,M,I,C,S,T,b,E,P,z,B,G,L,k,R,F,V=(C=[c,l],S=new K,T=new K,b=new K,E=C[0].toVector2(),P=C[1].toVector2(),S.subtractVectors(t,E),T.subtractVectors(t,P),b.subtractVectors(P,E),k=2*Math.abs(Math.sqrt((L=((z=S.length())+(B=T.length())+(G=b.length()))/2)*(L-z)*(L-B)*(L-G)))/G,R=Math.sqrt(Math.pow(z,2)-Math.pow(k,2)),F=C[1].clone().subtract(C[0]).clone().multiply(R/(R+Math.sqrt(Math.pow(B,2)-Math.pow(k,2)))),C[0].clone().add(F));return o.getInverseViewProjectionMatrix().projectPoint(V,e),e}}(new eU,c,X,J/2,s,n.composition.camera)}f&&(l.push(f),u.hitBounding?r.origin.distanceSquared(f)<r.origin.distanceSquared(u.hitBounding.position)&&(u.hitBounding.key=i,u.hitBounding.position=f):u.hitBounding={key:i,position:f})}();return 0===l.length&&(u.hitBounding=void 0),l},behavior:t.spec.InteractBehavior.NOTIFY}}},r}G(i,n);var r=i.prototype;return r.onStart=function(){this.item.getHitTestParams=this.getHitTestParams;for(var n,i,r,o=D(null!=(i=null==(n=this.item.composition)?void 0:n.items)?i:[]);!(r=o()).done;){var s=r.value;s.id===this.target&&(this.targetItem=s)}var a=this.targetItem;if(a){for(var c,l,u=this.item.composition,h=D(null!=(c=t.PluginSystem.getPlugins())?c:[]);!(l=h()).done;){var d=l.value;"editor-gizmo"===d.name&&(this.gizmoPlugin=d)}var m=this.gizmoPlugin;if("7"!==a.type&&m){var f=this.subType;switch(f){case e.GizmoSubType.particleEmitter:this.createParticleContent(a);break;case e.GizmoSubType.modelWireframe:this.needCreateModelContent=!0,this.createModelContent(a);break;case e.GizmoSubType.box:case e.GizmoSubType.sphere:case e.GizmoSubType.cylinder:case e.GizmoSubType.cone:case e.GizmoSubType.torus:case e.GizmoSubType.sprite:case e.GizmoSubType.frustum:case e.GizmoSubType.directionLight:case e.GizmoSubType.pointLight:case e.GizmoSubType.spotLight:case e.GizmoSubType.floorGrid:this.createBasicContent(a,f);break;case e.GizmoSubType.camera:case e.GizmoSubType.light:this.createBasicContent(a,f,e_);break;case e.GizmoSubType.rotation:case e.GizmoSubType.scale:case e.GizmoSubType.translation:this.createCombinationContent(a,f);break;case e.GizmoSubType.viewHelper:this.createCombinationContent(a,f,e_);break;case e.GizmoSubType.boundingBox:this.createBoundingBoxContent(a)}null==u||u.loaderData.gizmoItems.push(this.item)}}},r.onEnable=function(){if(n.prototype.onEnable.call(this),this.item.composition){var t=this.item.composition.sceneRendering,i=this.engine.renderer;i.rendererFeatures.some(function(e){return O(e,eK)})||i.addRendererFeature(new eK);for(var r,o=D(this.meshes);!(r=o()).done;){var s=r.value;s.name===e.GeometryType.FloorGrid.toString()||"Box"===s.name?t.addRenderer(s,eY):"translation"===s.name||"scale"===s.name||"rotation"===s.name?t.addRenderer(s,eN):t.addRenderer(s,eO)}}},r.onDisable=function(){if(n.prototype.onDisable.call(this),this.item.composition)for(var t,i=this.item.composition.sceneRendering,r=D(this.meshes);!(t=r()).done;){var o=t.value;o.name===e.GeometryType.FloorGrid.toString()||"Box"===o.name?i.removeRenderer(o,eY):"translation"===o.name||"scale"===o.name||"rotation"===o.name?i.removeRenderer(o,eN):i.removeRenderer(o,eO)}},r.onUpdate=function(e){this.updateRenderData()},r.onDestroy=function(){var t=this.mesh,n=this.item.composition;if(n){if(t&&!t.isDestroyed&&(t.dispose(),t.name===e.GeometryType.FloorGrid.toString()||"Box"===t.name?n.sceneRendering.removeRenderer(t,eY):n.sceneRendering.removeRenderer(t,eO)),this.contents)for(var i,r=D(this.contents);!(i=r()).done;){var o=i.value[0];o.isDestroyed||(o.dispose(),"translation"===o.name||"scale"===o.name||"rotation"===o.name?n.sceneRendering.removeRenderer(o,eN):n.sceneRendering.removeRenderer(o,eO))}if(this&&this.wireframeMeshes.length>0)this.wireframeMeshes.forEach(function(e){e.isDestroyed||(eF(e),n.sceneRendering.removeRenderer(e,eO))});else{var s=this.wireframeMesh;s&&!s.isDestroyed&&(eF(s),n.sceneRendering.removeRenderer(s,eO))}var a=n.loaderData.gizmoItems,c=a.indexOf(this.item);c>-1&&a.splice(c,1)}},r.render=function(n){if(this.subType===e.GizmoSubType.modelWireframe&&this.wireframeMesh&&this.targetItem){var i,r=null==(i=this.targetItem.getComponent(t.RendererComponent))?void 0:i.content,o=r.subMeshes,s=this.wireframeMeshes;(null==o?void 0:o.length)>0&&(s[0].worldMatrix.copyFrom(r.matrix),eV(o[0].geometry.geometry,o[0].material.effectMaterial,s[0],I.triangle))}},r.updateRenderData=function(){var n=this.item,i=this.subType;if(i===e.GizmoSubType.particleEmitter){if(this.targetItem&&this.mesh&&(this.mat=this.targetItem.transform.getWorldMatrix(),this.mesh.material.setMatrix("u_model",this.mat)),this.wireframeMesh&&this.targetItem){var r=this.targetItem.getComponent(t.ParticleSystemRenderer);r&&(eV(r.particleMesh.mesh.geometry,r.particleMesh.mesh.material,this.wireframeMesh,I.quad),this.wireframeMesh.worldMatrix=r.particleMesh.mesh.worldMatrix)}}else if(this.targetItem){if(this.contents){var o=new eU,s=new eW,a=new eU(1,1,1);0==this.coordinateSpace||i===e.GizmoSubType.scale?this.targetItem.transform.assignWorldTRS(o,s):this.targetItem.transform.assignWorldTRS(o);var c=new t.Transform({position:o,quat:s,scale:a,valid:!0});if(i===e.GizmoSubType.rotation||i===e.GizmoSubType.scale||i===e.GizmoSubType.translation){var l=W(n.composition.camera.position||new eU,c.position);c.setPosition(l.x,l.y,l.z)}this.mat=c.getWorldMatrix();for(var u,h=c.position,d=D(this.contents);!(u=d()).done;){var m=u.value,f=m[0],p=m[1],g=void 0;p.parentTransform=c;var v=new eU;p.assignWorldTRS(v);var y=100,x=1;if(i===e.GizmoSubType.viewHelper){"sprite"===f.name&&(y=v.toVector2().distance(h.toVector2()),x=this.boundingMap.get("posX").radius);var w=n.composition.renderer.getWidth(),A=n.composition.renderer.getHeight(),M=2*Math.tan(30*Math.PI/360)*16,C=M/(w/A),S=n.composition.camera.getInverseViewMatrix(),T=this.size.padding||1,b=void 0;b=p.getWorldMatrix();var E=new t.Transform({valid:!0});E.cloneFromMatrix(b),E.setPosition(v.x+M/2-T,v.y+C/2-T,v.z),b=E.getWorldMatrix(),g=S.clone().multiply(b);var P=Z(-M/2,M/2,-C/2,C/2,-16,16);f.material.setMatrix("_MatrixP",P)}else{if(i===e.GizmoSubType.rotation){var z=n.composition.camera.position||[0,0,0];f.material.setVector3("u_cameraPos",z),f.material.setVector3("u_center",h)}g=p.getWorldMatrix()}f.material.setMatrix("u_model",g),y<x&&(y<.5*x?f.material.setVector2("u_alpha",new eH(0,0)):f.material.setVector2("u_alpha",new eH(2/x*y-1,0)))}}if(this.mesh){var B=new eU,G=new eW,L=new eU(1,1,1);this.targetItem.transform.assignWorldTRS(B,G);var k=new t.Transform({position:B,quat:G,scale:L,valid:!0});if(i===e.GizmoSubType.light||i===e.GizmoSubType.camera){var R=W(n.composition.camera.position||new eU(0,0,0),k.position);k.setPosition(R.x,R.y,R.z)}this.mat=k.getWorldMatrix(),this.mesh.material.setMatrix("u_model",k.getWorldMatrix())}}},r.getDefaultRenderMode=function(){var t;switch(this.subType){case e.GizmoSubType.particleEmitter:case e.GizmoSubType.modelWireframe:case e.GizmoSubType.frustum:case e.GizmoSubType.directionLight:case e.GizmoSubType.spotLight:case e.GizmoSubType.pointLight:case e.GizmoSubType.floorGrid:t=eQ.LINES;break;default:t=eQ.TRIANGLES}return t},r.getDefaultSize=function(){var t={};switch(this.subType){case e.GizmoSubType.box:t={width:1,height:1,depth:1};break;case e.GizmoSubType.sphere:t={radius:1};break;case e.GizmoSubType.cylinder:case e.GizmoSubType.cone:t={radius:1,height:1};break;default:t={}}return t},r.createModelContent=function(e){var n=e.getComponent(t.RendererComponent).content.subMeshes[0],i=null==(r=e.composition)?void 0:r.renderer.engine;if(t.assertExist(i),n){this.targetItem=e,this.wireframeMeshes=[];var r,o,s,a,c,l,u,h,d,m=t.Mesh.create(i,{geometry:n.geometry.geometry,material:n.material.effectMaterial,priority:3e3}),f=this.wireframeMesh=(o=this.color,a=new eD(i,{geometry:m.firstGeometry(),mode:t.glContext.LINES,index:{data:new Uint32Array(0)}}),l=(c=m.material.shader.shaderData).vertex,u=c.fragment,(h=X({},m.material.props)).shader={vertex:l,fragment:u,macros:[["PREVIEW_BORDER",1]],shared:!0,name:(null!=(s=m.name)?s:"unamedmesh")+"_wireframe",glslVersion:2===i.displayServer.renderingDevice.gpuCapability.level?t.GLSLVersion.GLSL3:t.GLSLVersion.GLSL1},(d=t.Material.create(i,h)).depthTest=!0,d.setVector4("uPreviewColor",new eR(o[0],o[1],o[2],1)),eV(m.geometry,m.material,t.Mesh.create(i,{geometry:a,material:d,priority:3e3,name:h.shader.name}),0));this.wireframeMeshes.push(f),this.meshes.push(f)}},r.createParticleContent=function(e){var n,i=e.getComponent(t.ParticleSystem);if(i){var r=i.definition.shape,o=null==(n=this.item.composition)?void 0:n.renderer.engine;if(t.assertExist(o),this.targetItem=e,r&&r.type){var s=this.mesh=ek(o,r,{color:this.color});this.meshes.push(s)}}},r.createBoundingBoxContent=function(e){var n,i=this.item,r={shape:"Box",width:this.size.width,height:this.size.height,depth:this.size.depth,center:this.size.center},o=null==(n=i.composition)?void 0:n.renderer.engine;if(t.assertExist(o),this.targetItem=e,r){var s=this.mesh=ek(o,r,{color:this.color,depthTest:this.depthTest});this.meshes.push(s)}},r.createBasicContent=function(e,n,i){var r,o=this.item,s={size:this.size,color:this.color,renderMode:this.renderMode,depthTest:this.depthTest},a=null==(r=o.composition)?void 0:r.renderer.engine;t.assertExist(a);var c=this.mesh=ey(a,n,this.boundingMap,i,s);this.targetItem=e,this.meshes.push(c)},r.createCombinationContent=function(e,n,i){var r=this.item,o={size:this.size,renderMode:this.renderMode},s=null==(a=r.composition)?void 0:a.renderer.engine;t.assertExist(s),this.contents=ey(s,n,this.boundingMap,i,o);for(var a,c,l=D(this.contents.keys());!(c=l()).done;){var u=c.value;this.meshes.push(u)}this.targetItem=e},r.fromData=function(e){n.prototype.fromData.call(this,e),void 0!==e.coordinateSpace&&(this.coordinateSpace=e.coordinateSpace);var i=this.item;i.duration=999;var r=e.options,o=r.target,s=r.subType,a=r.renderMode,c=r.size,l=r.depthTest,u=r.color,h=void 0===u?[255,255,255]:u;this.target=o,this.subType=s,this.renderMode=a||this.getDefaultRenderMode(),this.size=c||this.getDefaultSize(),this.depthTest=l;var d=h[0],m=h[1],f=h[2];this.color=[d/255,m/255,f/255],e&&(i.transform=new t.Transform(e.transform))},i}(t.RendererComponent),e.GizmoComponent=function(e,t,n,i){var r,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(s=(o<3?r(s):o>3?r(t,n,s):r(t,n))||s);return o>3&&s&&Object.defineProperty(t,n,s),s}([t.effectsClass("GizmoComponent")],e.GizmoComponent),e.CoordinateSpace=void 0,(l=e.CoordinateSpace||(e.CoordinateSpace={}))[l.Local=0]="Local",l[l.World=1]="World";var eK=function(e){function t(){var t;return t=e.apply(this,arguments)||this,t.passes=[],t}G(t,e);var n=t.prototype;return n.create=function(e){this.passes=[new eX(e),new eJ(e),new eZ(e)]},n.addRenderPasses=function(e,t){for(var n,i=D(this.passes);!(n=i()).done;){var r=n.value;t.renderList.groups.has(r.name)&&e.enqueuePass(r)}},n.dispose=function(){for(var e,t=D(this.passes);!(e=t()).done;)e.value.dispose();this.passes.length=0},t}(t.RendererFeature),eZ=function(e){function n(n){var i;return(i=e.call(this,n)||this).renderPassEvent=t.RenderPassEvent.AfterRendering,i.name=eN,i}return G(n,e),n.prototype.execute=function(e,n){var i;e.clear({depthAction:t.TextureLoadAction.clear}),e.renderMeshes(null!=(i=n.renderList.groups.get(this.name))?i:[])},n}(t.RenderPass),eX=function(e){function n(n){var i;return(i=e.call(this,n)||this).renderPassEvent=t.RenderPassEvent.BeforeRendering,i.name=eY,i}return G(n,e),n.prototype.execute=function(e,t){var n;e.renderMeshes(null!=(n=t.renderList.groups.get(this.name))?n:[])},n}(t.RenderPass),eJ=function(e){function n(n){var i;return(i=e.call(this,n)||this).renderPassEvent=t.RenderPassEvent.AfterRenderingObjects,i.name=eO,i}return G(n,e),n.prototype.execute=function(e,t){var n;e.renderMeshes(null!=(n=t.renderList.groups.get(this.name))?n:[])},n}(t.RenderPass),eq=new Map,e_=new Map,e$=function(n){function i(){var e;return e=n.apply(this,arguments)||this,e.order=1001,e}G(i,n);var r=i.prototype;return r.onAssetsLoadStart=function(e,t){return z(function(){var e,t,n,i,r,o,s;return Y(this,function(a){switch(a.label){case 0:if(e_.clear(),!(eq.size!==U.size))return[3,4];e=D(U),a.label=1;case 1:if((t=e()).done)return[3,4];return i=(n=t.value)[0],r=n[1],o=eq.set,s=[i],[4,function(e){return j.apply(this,arguments)}(r)];case 2:o.apply(eq,s.concat([a.sent()])),a.label=3;case 3:return[3,1];case 4:return[2]}})})()},r.onCompositionCreated=function(n,i){var r=n.renderer.engine;eq.forEach(function(e,n){var i;e_.set(n,t.Texture.create(r,{image:e}))}),eq.clear();for(var o=n.items,s={},a=0;a<o.length;a++){var c=o[a],l=c.getComponent(e.GizmoComponent);l&&(s[l.target]||(s[l.target]=[]),s[l.target].push(c))}n.loaderData.gizmoTarget=s,n.loaderData.gizmoItems=[]},i}(F(t.Plugin)),e0=t.math.Color,e1=t.math.Euler,e2=t.math.EulerOrder,e4=t.math.Matrix3,e3=t.math.Matrix4,e5=t.math.Quaternion,e8=t.math.Ray,e6=t.math.Vector2,e9=t.math.Vector3,e7=t.math.DEG2RAD,te=t.math.RAD2DEG,tt=t.math.clamp,tn=t.math.isEqual,ti=t.math.isZero,tr=function(){function e(e,t){void 0===e&&(e=0),void 0===t&&(t=0),this.x=e,this.y=t}var t=e.prototype;return t.set=function(e,t){return this.x=e,this.y=t,this},t.setZero=function(){return this.x=0,this.y=0,this},t.setFromNumber=function(e){return this.x=e,this.y=e,this},t.setFromArray=function(e,t){var n,i;return void 0===t&&(t=0),this.x=null!=(n=e[t])?n:0,this.y=null!=(i=e[t+1])?i:0,this},t.copyFrom=function(e){return this.x=e.x,this.y=e.y,this},t.clone=function(){return new e(this.x,this.y)},t.setElement=function(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;default:console.error("index is out of range: "+e)}return this},t.getElement=function(e){switch(e){case 0:return this.x;case 1:return this.y;default:console.error("index is out of range: "+e)}return 0},t.add=function(e){return"number"==typeof e?(this.x+=e,this.y+=e):O(e,Array)?(this.x+=e[0],this.y+=e[1]):(this.x+=e.x,this.y+=e.y),this},t.addVectors=function(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this},t.subtract=function(e){return"number"==typeof e?(this.x-=e,this.y-=e):O(e,Array)?(this.x-=e[0],this.y-=e[1]):(this.x-=e.x,this.y-=e.y),this},t.subtractVectors=function(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this},t.multiply=function(e){return"number"==typeof e?(this.x*=e,this.y*=e):O(e,Array)?(this.x*=e[0],this.y*=e[1]):(this.x*=e.x,this.y*=e.y),this},t.multiplyVectors=function(e,t){return this.x=e.x*t.x,this.y=e.y*t.y,this},t.divide=function(e){return"number"==typeof e?(this.x/=e,this.y/=e):O(e,Array)?(this.x/=e[0],this.y/=e[1]):(this.x/=e.x,this.y/=e.y),this},t.scale=function(e){return this.x*=e,this.y*=e,this},t.sum=function(){return this.x+this.y},t.min=function(e){return"number"==typeof e?(this.x=Math.min(this.x,e),this.y=Math.min(this.y,e)):(this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y)),this},t.max=function(e){return"number"==typeof e?(this.x=Math.max(this.x,e),this.y=Math.max(this.y,e)):(this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y)),this},t.clamp=function(e,t){return this.max(e).min(t)},t.floor=function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this},t.ceil=function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this},t.round=function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this},t.abs=function(){return this.x=Math.abs(this.x),this.y=Math.abs(this.y),this},t.negate=function(){return this.x=-this.x,this.y=-this.y,this},t.length=function(){return Math.sqrt(this.x*this.x+this.y*this.y)},t.lengthSquared=function(){return this.x*this.x+this.y*this.y},t.normalize=function(){return this.divide(this.length()||1)},t.setLength=function(e){return this.normalize().multiply(e)},t.lerp=function(e,t){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this},t.lerpVectors=function(e,t,n){return this.x=e.x+(t.x-e.x)*n,this.y=e.y+(t.y-e.y)*n,this},t.dot=function(e){return this.x*e.x+this.y*e.y},t.cross=function(e){return this.x*e.y-this.y*e.x},t.distance=function(e){var t=this.x-e.x,n=this.y-e.y;return Math.sqrt(t*t+n*n)},t.distanceSquared=function(e){var t=this.x-e.x,n=this.y-e.y;return t*t+n*n},t.equals=function(e){return this.x===e.x&&this.y===e.y},t.isZero=function(){var e=this.x,t=this.y;return 1e-6>=Math.abs(e)&&1e-6>=Math.abs(t)},t.toArray=function(){return[this.x,this.y]},t.fill=function(e,t){void 0===t&&(t=0),e[t]=this.x,e[t+1]=this.y},t.angle=function(){return Math.atan2(-this.y,-this.x)+Math.PI},t.rotateAround=function(e,t){var n=Math.cos(t),i=Math.sin(t),r=this.x-e.x,o=this.y-e.y;return this.x=r*n-o*i+e.x,this.y=r*i+o*n+e.y,this},t.random=function(){return this.x=Math.random(),this.y=Math.random(),this},e.fromNumber=function(t){return new e().setFromNumber(t)},e.fromArray=function(t,n){return void 0===n&&(n=0),new e().setFromArray(t,n)},e}();tr.ONE=new tr(1,1),tr.ZERO=new tr(0,0);var to=function(){function e(e,t){void 0===e&&(e=new tr(Infinity,Infinity)),void 0===t&&(t=new tr(-1/0,-1/0)),this.min=e.clone(),this.max=t.clone()}var t=e.prototype;return t.set=function(e,t){return this.min.copyFrom(e),this.max.copyFrom(t),this},t.setFromPoints=function(e){this.makeEmpty();for(var t=0,n=e.length;t<n;t++)this.expandByPoint(e[t]);return this},t.setFromCenterAndSize=function(e,t){var n=t.clone().multiply(.5);return this.min.copyFrom(e).subtract(n),this.max.copyFrom(e).add(n),this},t.clone=function(){return new e().copyFrom(this)},t.copyFrom=function(e){return this.min.copyFrom(e.min),this.max.copyFrom(e.max),this},t.makeEmpty=function(){return this.min.x=this.min.y=Infinity,this.max.x=this.max.y=-1/0,this},t.isEmpty=function(){return this.max.x<this.min.x||this.max.y<this.min.y},t.getCenter=function(e){return void 0===e&&(e=new tr),this.isEmpty()?e.set(0,0):e.addVectors(this.min,this.max).multiply(.5)},t.getSize=function(e){return void 0===e&&(e=new tr),this.isEmpty()?e.set(0,0):e.subtractVectors(this.max,this.min)},t.expandByPoint=function(e){return this.min.min(e),this.max.max(e),this},t.expandByVector=function(e){return this.min.subtract(e),this.max.add(e),this},t.expandByScalar=function(e){return this.min.add(-e),this.max.add(e),this},t.containsPoint=function(e){return e.x>=this.min.x&&e.x<=this.max.x&&e.y>=this.min.y&&e.y<=this.max.y},t.containsBox=function(e){return this.min.x<=e.min.x&&e.max.x<=this.max.x&&this.min.y<=e.min.y&&e.max.y<=this.max.y},t.getParameter=function(e,t){return void 0===t&&(t=new tr),t.set((e.x-this.min.x)/(this.max.x-this.min.x),(e.y-this.min.y)/(this.max.y-this.min.y))},t.intersectsBox=function(e){return e.max.x>=this.min.x&&e.min.x<=this.max.x&&e.max.y>=this.min.y&&e.min.y<=this.max.y},t.clampPoint=function(e,t){return void 0===t&&(t=new tr),t.copyFrom(e).clamp(this.min,this.max)},t.distanceToPoint=function(e){return e.clone().clamp(this.min,this.max).subtract(e).length()},t.intersect=function(e){return this.min.max(e.min),this.max.min(e.max),this.isEmpty()&&this.makeEmpty(),this},t.union=function(e){return this.min.min(e.min),this.max.max(e.max),this},t.translate=function(e){return this.min.add(e),this.max.add(e),this},t.equals=function(e){return e.min.equals(this.min)&&e.max.equals(this.max)},e}(),ts=function(){function e(e,t){void 0===e&&(e=tr.ZERO),void 0===t&&(t=0),this.center=e.clone(),this.radius=t}var t=e.prototype;return t.set=function(e,t){return this.center=e.clone(),this.radius=t,this},t.clone=function(){return new e().copyFrom(this)},t.copyFrom=function(e){return this.center.copyFrom(e.center),this.radius=e.radius,this},t.makeEmpty=function(){return this.center.set(0,0),this.radius=-1,this},t.isEmpty=function(){return this.radius<0},t.getCenter=function(e){return void 0===e&&(e=new tr),e.copyFrom(this.center),e},t.getRadius=function(){return this.radius},t.expandByPoint=function(t){if(this.isEmpty())return this.set(t,0);var n=e.tempVec0.subtractVectors(t,this.center),i=n.length();if(i>this.radius){var r=(this.radius+i)*.5;this.center.add(n.multiply((r-this.radius)/i)),this.radius=r}return this},t.expandByScalar=function(e){return this.radius+=e,this},t.containsPoint=function(e){return!this.isEmpty()&&this.center.distanceSquared(e)<=this.radius*this.radius},t.containsBox=function(e){if(this.isEmpty()||e.isEmpty())return!1;var t=Math.max(Math.abs(e.min.x-this.center.x),Math.abs(e.max.x-this.center.x)),n=Math.max(Math.abs(e.min.y-this.center.y),Math.abs(e.max.y-this.center.y));return t*t+n*n<=this.radius*this.radius},t.intersectsBox=function(e){return!this.isEmpty()&&!e.isEmpty()&&e.distanceToPoint(this.center)<=this.radius},t.distanceToPoint=function(e){return this.isEmpty()?1/0:this.center.distance(e)-this.radius},t.intersect=function(e){if(this.isEmpty()||e.isEmpty())return this.makeEmpty();var t=this.center.distance(e.center);return t>this.radius+e.radius?this.makeEmpty():this.radius>=t+e.radius?this.copyFrom(e):e.radius>=t+this.radius?this:this.radius<=e.radius?this:this.copyFrom(e)},t.union=function(t){if(t.isEmpty())return this;if(this.isEmpty())return this.copyFrom(t);if(this.center.equals(t.center))this.radius=Math.max(this.radius,t.radius);else{var n=e.tempVec0,i=e.tempVec1.subtractVectors(t.center,this.center).setLength(t.radius);this.expandByPoint(n.copyFrom(t.center).add(i)),this.expandByPoint(n.copyFrom(t.center).subtract(i))}return this},t.translate=function(e){return this.center.add(e),this},t.equals=function(e){return this.center.equals(e.center)&&this.radius===e.radius},e}();function ta(e,t,n){return(t.x-e.x)*(n.y-e.y)-(t.y-e.y)*(n.x-e.x)}function tc(e,t,n){return n.x>=Math.min(e.x,t.x)&&n.x<=Math.max(e.x,t.x)&&n.y>=Math.min(e.y,t.y)&&n.y<=Math.max(e.y,t.y)}ts.tempVec0=new tr,ts.tempVec1=new tr;var tl=function(){function e(e,t){void 0===e&&(e=tr.ZERO),void 0===t&&(t=tr.ZERO),this.start=e.clone(),this.end=t.clone()}var t=e.prototype;return t.set=function(e,t){return this.start.copyFrom(e),this.end.copyFrom(t),this},t.copyFrom=function(e){return this.start.copyFrom(e.start),this.end.copyFrom(e.end),this},t.direction=function(){return new tr().subtractVectors(this.end,this.start).normalize()},t.getCenter=function(e){return void 0===e&&(e=new tr),e.addVectors(this.start,this.end).multiply(.5)},t.delta=function(e){return void 0===e&&(e=new tr),e.subtractVectors(this.end,this.start)},t.distanceSq=function(){return this.start.distanceSquared(this.end)},t.distance=function(){return this.start.distance(this.end)},t.at=function(e,t){return void 0===t&&(t=new tr),this.delta(t).multiply(e).add(this.start)},t.closestPointToPointParameter=function(t,n){var i,r,o=e.tempVec0,s=e.tempVec1;o.subtractVectors(t,this.start),s.subtractVectors(this.end,this.start);var a=s.dot(s);if(0===a)return 0;var c=s.dot(o)/a;return n&&(c=Math.min(Math.max(c,Math.min(i=isNaN(0)?-1/0:0,r=isNaN(1)?1/0:1)),Math.max(i,r))),c},t.closestPointToPoint=function(e,t,n){void 0===n&&(n=new tr);var i=this.closestPointToPointParameter(e,t);return this.delta(n).multiply(i).add(this.start)},t.equals=function(e){return e.start.equals(this.start)&&e.end.equals(this.end)},t.clone=function(){return new e().copyFrom(this)},t.length=function(){return new tr().subtractVectors(this.end,this.start).length()},t.crossWithLine=function(e){var t=ta(this.start,this.end,e.start),n=ta(this.start,this.end,e.end),i=ta(e.start,e.end,this.start),r=ta(e.start,e.end,this.end);return(t>0&&n<0||t<0&&n>0)&&(i>0&&r<0||i<0&&r>0)||0===t&&tc(this.start,this.end,e.start)||0===n&&tc(this.start,this.end,e.end)||0===i&&tc(e.start,e.end,this.start)||0===r&&tc(e.start,e.end,this.end)},e}();tl.tempVec0=new tr,tl.tempVec1=new tr;var tu=function(){function e(e,t,n){void 0===e&&(e=0),void 0===t&&(t=0),void 0===n&&(n=0),this.x=e,this.y=t,this.z=n}var t=e.prototype;return t.set=function(e,t,n){return this.x=e,this.y=t,this.z=n,this},t.setZero=function(){return this.x=0,this.y=0,this.z=0,this},t.setFromNumber=function(e){return this.x=e,this.y=e,this.z=e,this},t.setFromArray=function(e,t){var n,i,r;return void 0===t&&(t=0),this.x=null!=(n=e[t])?n:0,this.y=null!=(i=e[t+1])?i:0,this.z=null!=(r=e[t+2])?r:0,this},t.copyFrom=function(e){return this.x=e.x,this.y=e.y,this.z=e.z,this},t.clone=function(){return new e(this.x,this.y,this.z)},t.setElement=function(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;case 2:this.z=t;break;default:console.error("index is out of range: "+e)}return this},t.getElement=function(e){switch(e){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:console.error("index is out of range: "+e)}return 0},t.add=function(e){return"number"==typeof e?(this.x+=e,this.y+=e,this.z+=e):O(e,Array)?(this.x+=e[0],this.y+=e[1],this.z+=e[2]):(this.x+=e.x,this.y+=e.y,this.z+=e.z),this},t.addVectors=function(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this.z=e.z+t.z,this},t.addScaledVector=function(e,t){return this.x+=e.x*t,this.y+=e.y*t,this.z+=e.z*t,this},t.subtract=function(e){return"number"==typeof e?(this.x-=e,this.y-=e,this.z-=e):O(e,Array)?(this.x-=e[0],this.y-=e[1],this.z-=e[2]):(this.x-=e.x,this.y-=e.y,this.z-=e.z),this},t.subtractVectors=function(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this.z=e.z-t.z,this},t.multiply=function(e){return"number"==typeof e?(this.x*=e,this.y*=e,this.z*=e):O(e,Array)?(this.x*=e[0],this.y*=e[1],this.z*=e[2]):(this.x*=e.x,this.y*=e.y,this.z*=e.z),this},t.multiplyVectors=function(e,t){return this.x=e.x*t.x,this.y=e.y*t.y,this.z=e.z*t.z,this},t.divide=function(e){return"number"==typeof e?(this.x/=e,this.y/=e,this.z/=e):O(e,Array)?(this.x/=e[0],this.y/=e[1],this.z/=e[2]):(this.x/=e.x,this.y/=e.y,this.z/=e.z),this},t.scale=function(e){return this.x*=e,this.y*=e,this.z*=e,this},t.sum=function(){return this.x+this.y+this.z},t.min=function(e){return"number"==typeof e?(this.x=Math.min(this.x,e),this.y=Math.min(this.y,e),this.z=Math.min(this.z,e)):(this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this.z=Math.min(this.z,e.z)),this},t.max=function(e){return"number"==typeof e?(this.x=Math.max(this.x,e),this.y=Math.max(this.y,e),this.z=Math.max(this.z,e)):(this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this.z=Math.max(this.z,e.z)),this},t.clamp=function(e,t){return this.max(e).min(t)},t.floor=function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this},t.ceil=function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this},t.round=function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this},t.abs=function(){return this.x=Math.abs(this.x),this.y=Math.abs(this.y),this.z=Math.abs(this.z),this},t.negate=function(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this},t.length=function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)},t.lengthSquared=function(){return this.x*this.x+this.y*this.y+this.z*this.z},t.normalize=function(){return this.divide(this.length()||1)},t.setLength=function(e){return this.normalize().multiply(e)},t.lerp=function(e,t){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this.z+=(e.z-this.z)*t,this},t.lerpVectors=function(e,t,n){return this.x=e.x+(t.x-e.x)*n,this.y=e.y+(t.y-e.y)*n,this.z=e.z+(t.z-e.z)*n,this},t.dot=function(e){return this.x*e.x+this.y*e.y+this.z*e.z},t.cross=function(e){return this.crossVectors(this,e)},t.crossVectors=function(e,t){var n=e.x,i=e.y,r=e.z,o=t.x,s=t.y,a=t.z;return this.x=i*a-r*s,this.y=r*o-n*a,this.z=n*s-i*o,this},t.reflect=function(e){return this.subtract(e.clone().multiply(2*this.dot(e)))},t.distance=function(e){return Math.sqrt(this.distanceSquared(e))},t.distanceSquared=function(e){var t=this.x-e.x,n=this.y-e.y,i=this.z-e.z;return t*t+n*n+i*i},t.equals=function(e){return e.x===this.x&&e.y===this.y&&e.z===this.z},t.isZero=function(){var e=this.x,t=this.y,n=this.z;return 1e-6>=Math.abs(e)&&1e-6>=Math.abs(t)&&1e-6>=Math.abs(n)},t.toArray=function(){return[this.x,this.y,this.z]},t.toVector2=function(){return new tr(this.x,this.y)},t.fill=function(e,t){void 0===t&&(t=0),e[t]=this.x,e[t+1]=this.y,e[t+2]=this.z},t.random=function(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this},t.applyEuler=function(e,t){return e.rotateVector3(this,t)},t.applyQuaternion=function(e,t){return e.rotateVector3(this,t)},t.applyMatrix=function(e,t){return e.transformPoint(this,t)},t.applyNormalMatrix=function(e,t){return e.transformNormal(this,t)},t.applyProjectionMatrix=function(e,t){return e.projectPoint(this,t)},t.setFromMatrixPosition=function(e){var t=e.elements;return this.x=t[12],this.y=t[13],this.z=t[14],this},t.setFromMatrixColumn=function(e,t){return this.setFromArray(e.elements,4*t)},e.fromNumber=function(t){return new e().setFromNumber(t)},e.fromArray=function(t,n){return void 0===n&&(n=0),new e().setFromArray(t,n)},e}();tu.X=new tu(1,0,0),tu.Y=new tu(0,1,0),tu.Z=new tu(0,0,1),tu.ONE=new tu(1,1,1),tu.ZERO=new tu(0,0,0),new tu,new tu;var th=function(){function e(e,t){void 0===e&&(e=0),void 0===t&&(t=tu.Z),this.distance=e,this.normal=t.clone(),this.set(e,t)}var t=e.prototype;return t.set=function(e,t){this.normal.copyFrom(t);var n=this.normal.length();return 0===n?(this.normal.set(0,0,1),this.distance=e):(this.distance=e/n,this.normal.normalize()),this},t.copyFrom=function(e){return this.distance=e.distance,this.normal.copyFrom(e.normal),this},t.setFromNormalAndCoplanarPoint=function(e,t){return this.normal.copyFrom(t),this.distance=-e.dot(this.normal),this},t.clone=function(){return new e(this.distance,this.normal.clone())},t.distanceToPoint=function(e){return this.normal.dot(e)+this.distance},e.setFromNormalAndCoplanarPoint=function(t,n){return new e(-t.dot(n),n)},e}();function td(e,t,n){if(void 0===n&&(n=Math.round),Number.isInteger(e))return e;var i=Math.pow(10,t);return n(e*i)/i}(u=C||(C={}))[u.OPEN=0]="OPEN",u[u.CLOSE=1]="CLOSE",u[u.LEFT_CLOSE=2]="LEFT_CLOSE",u[u.RIGHT_CLOSE=3]="RIGHT_CLOSE";var tm=new to(new e6,new e6(1,1));function tf(e){return[e.min.clone(),new e6(e.max.x,e.min.y),e.max.clone(),new e6(e.min.x,e.max.y)]}function tp(e){if(4===e.length){var t=e[0],n=e[1],i=e[3],r=new e4().setFromRowMajorData(n.x-t.x,i.x-t.x,t.x,n.y-t.y,i.y-t.y,t.y,0,0,1);return 1e-8>=Math.abs(r.determinant())?void 0:r}}function tg(e){if(!e.isEmpty()){var t=e.getSize();return new e4().setFromRowMajorData(t.x,0,e.min.x,0,t.y,e.min.y,0,0,1)}}function tv(e,t){var n=e.transformPoint(new e9(t.x,t.y,1));return new e6(n.x,n.y)}function ty(e,t){return tv(e.clone().invert(),t)}function tx(e,t){return void 0===t&&(t=tm),tf(t).map(function(t){return tv(e,t)})}function tw(e,t){return void 0===t&&(t=tm),tI(new to,tx(e,t))}function tA(e,t,n){if(void 0===n&&(n=tm),n.isEmpty()||t.isEmpty())return!1;var i=tx(e,n),r=tf(t);return[i,r].reduce(function(e,t){return e.concat(t.map(function(e,n){var i=t[(n+1)%t.length];return new e6(-(i.y-e.y),i.x-e.x)}))},[]).every(function(e){var t,n,o,s,a=i.map(function(t){return t.dot(e)}),c=r.map(function(t){return t.dot(e)});return(t=Math).max.apply(t,[].concat(a))>=(n=Math).min.apply(n,[].concat(c))&&(o=Math).max.apply(o,[].concat(c))>=(s=Math).min.apply(s,[].concat(a))})}function tM(e,t,n){return void 0===n&&(n=tm),n.containsPoint(ty(e,t))}function tI(e,t){if(0===t.length)return e.makeEmpty();var n=t[0].clone(),i=t[0].clone();return t.forEach(function(e){n.min(e),i.max(e)}),e.set(n,i)}function tC(e,t,n){if(void 0===n&&(n=e.getCenter()),e.isEmpty())return e;var i="number"==typeof t?new e6(t,t):new e6(t.x,t.y);return tI(e,[e.min,e.max].map(function(e){return e.clone().subtract(n).multiply(i).add(n)}))}function tS(e){return Math.atan2(-e.y,-e.x)+Math.PI}function tT(e,t){var n=Math.acos(Math.min(Math.max(e.dot(t)/e.length()/t.length(),-1),1));return e.x*t.y-e.y*t.x>0?n:-n}function tb(e,t){var n=new to,i=e.min,r=e.max,o=t.min,s=t.max,a=i.clone().add(new e6().subtractVectors(r,i).multiply(o)),c=i.clone().add(new e6().subtractVectors(r,i).multiply(s));return n.set(a,c),n}function tE(e,t){var n=new to,i=e.min,r=e.max,o=t.min,s=t.max,a=new e6().subtractVectors(o,i).divide(new e6().subtractVectors(r,i)),c=new e6().subtractVectors(s,i).divide(new e6().subtractVectors(r,i));return n.set(a,c),n}var tP=function(){function e(e){void 0===e&&(e=new e8),this.ray=e.clone()}var t=e.prototype;return t.setFromCamera=function(e,t){var n=t.position,i=new e9(e.x,e.y,.5).applyProjectionMatrix(t.inverseViewProjectMatrix).subtract(n).normalize();return this.ray.set(n,i),this},t.rayCastPlane=function(e){var t=this.ray.distanceToPlane(e);if(null!==t)return{distance:t,point:new e9().copyFrom(this.ray.at(t))}},e}();function tz(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}function tB(e,t,n){return t&&tz(e.prototype,t),n&&tz(e,n),e}var tG=function(){function e(){this.layoutKey="",this.caretPositions=[]}var t=e.prototype;return t.reset=function(){this.layout=void 0},t.sync=function(e){var t=JSON.stringify([e.text,e.width,e.fontFamily,e.fontSize,e.fontWeight,e.letterSpacing,e.lineHeight,e.textAlign,e.keepWordIntact]);t!==this.layoutKey&&(this.layoutKey=t,this.caretPositions=this.measureCaretPositions(e)),this.layout={left:e.left,top:e.top,width:e.width,height:e.height,rotation:e.rotation,caretPositions:this.caretPositions}},t.resolve=function(e){var t=this.layout;if(t&&0!==t.caretPositions.length){for(var n,i=e.x-t.left,r=e.y-t.top,o=Math.cos(t.rotation),s=Math.sin(t.rotation),a=i*o+r*s,c=-i*s+r*o,l=Number.POSITIVE_INFINITY,u=D(t.caretPositions);!(n=u()).done;){var h=n.value;l=Math.min(l,Math.abs(c-(h.y+h.height/2)))}for(var d,m=t.caretPositions[0],f=Number.POSITIVE_INFINITY,p=D(t.caretPositions);!(d=p()).done;){var g=d.value;if(!(Math.abs(c-(g.y+g.height/2))>l+1)){var v=Math.abs(a-g.x);v<f&&(m=g,f=v)}}return m.index}},t.measureCaretPositions=function(e){var t=document.createElement("div");Object.assign(t.style,{position:"fixed",left:"-10000px",top:"0",visibility:"hidden",pointerEvents:"none",boxSizing:"border-box",width:""+e.width+"px",margin:"0",padding:"0",border:"0",whiteSpace:"pre-wrap",overflowWrap:"break-word",wordBreak:e.keepWordIntact?"normal":"break-all",fontFamily:e.fontFamily,fontSize:""+e.fontSize+"px",fontWeight:""+e.fontWeight,letterSpacing:""+e.letterSpacing+"px",lineHeight:""+e.lineHeight+"px",textAlign:e.textAlign,fontVariantLigatures:"none",fontKerning:"none"});var n=document.createTextNode(e.text||"");t.appendChild(n),document.body.appendChild(t);for(var i=[],r=document.createRange(),o=t.getBoundingClientRect(),s=0;s<=e.text.length;s++){r.setStart(n,s),r.collapse(!0);var a=r.getBoundingClientRect();i.push({index:s,x:a.left-o.left,y:a.top-o.top,height:a.height})}return t.remove(),i},e}(),tL="text-gizmo-custom-style",tk="rgba(59, 130, 246, 0.35)";function tR(e,t,n){var i=document.createElement("style");return i.textContent="\n ."+t+" {\n "+n.replace(/&/g,"."+t)+"\n }\n ",document.head.appendChild(i),e.classList.add(t),function(){e.classList.remove(t),i.remove()}}var tF=function(e){function n(n){var i,r,o,s,a,c,l;return(i=e.call(this)||this).interactionParam={type:"none"},i.attachedProjections=new Set,i.disposed=!1,i.selectionStart=null,i.selectionEnd=null,i.caretMapper=new tG,i.handleInput=function(e){var n,r,o,s=i._editingItem,a=null==s?void 0:s.getComponent(t.TextComponent),c=null==(n=i.owner.getEngine())?void 0:n.sceneServer.compositions[0];if(s&&a&&c){var l=e.target.value,u=null!=(o=null==(r=a.textStyle)?void 0:r.fontFamily)?o:"";a.setText(l);var h=a.getLineCount(l),d=Math.ceil(a.textLayout.lineHeight*h);a.setTextHeight(d),c.gotoAndStop(c.time),i.emit("textInput",{itemId:s.getInstanceId(),text:l,fontFamily:u})}},i.handleKeyDown=function(e){if("escape"===e.code.toLocaleLowerCase()){e.preventDefault();return}e.stopPropagation()},i.handleMouseDown=function(e){0===e.button&&i.textAreaElement.selectionStart!==i.textAreaElement.selectionEnd&&i.textAreaElement.setSelectionRange(i.textAreaElement.selectionStart,i.textAreaElement.selectionStart)},i.handleDragStart=function(e){e.preventDefault()},i.owner=n,i.textAreaElement=document.createElement("textarea"),i.pointerSelectionPreviewElement=document.createElement("div"),null==(o=n.getEngine())||null==(r=o.canvas.parentElement)||r.appendChild(i.textAreaElement),null==(a=n.getEngine())||null==(s=a.canvas.parentElement)||s.appendChild(i.pointerSelectionPreviewElement),i.removeTextAreaStyle=tR(i.textAreaElement,tL,"\n word-break: normal;\n position: absolute;\n z-index: 3;\n border: none;\n margin: 0;\n padding: 0;\n outline: none !important;\n overflow: hidden;\n resize: none;\n display: none;\n background: transparent;\n opacity: .8;\n cursor: text;\n -webkit-user-drag: none;\n color: transparent;\n caret-color: #000000;\n -webkit-text-fill-color: transparent;\n text-fill-color: transparent;\n /* canvas 按单字符 measureText+fillText 排版(无 kerning、无 ligature,含 ff/fi/fl 等 f 连字);\n DOM 默认会施加 kerning 与 f 连字 → 字序列比 canvas 窄 → 长行累积往左偏(尤其 f)。关闭二者以横向同源。 */\n font-variant-ligatures: none;\n font-kerning: none;\n"),i.removeTextSelectionStyle=(c="\n ."+tL+"::selection {\n background-color: "+tk+";\n color: transparent;\n -webkit-text-fill-color: transparent;\n }\n ",(l=document.createElement("style")).textContent=c,document.head.appendChild(l),function(){l.remove()}),i.removePointerSelectionPreviewStyle=tR(i.pointerSelectionPreviewElement,"text-gizmo-pointer-selection-preview","\n position: absolute;\n z-index: 2;\n box-sizing: border-box;\n border: none;\n margin: 0;\n padding: 0;\n overflow: hidden;\n display: none;\n pointer-events: none;\n opacity: .8;\n color: transparent;\n -webkit-text-fill-color: transparent;\n font-variant-ligatures: none;\n font-kerning: none;\n"),i.textAreaElement.addEventListener("keydown",i.handleKeyDown),i.textAreaElement.addEventListener("mousedown",i.handleMouseDown),i.textAreaElement.addEventListener("dragstart",i.handleDragStart),i}G(n,e);var i=n.prototype;return i.selectAllText=function(){if(this.disposed)return!1;var e,n,i=null==(e=this._editingItem)?void 0:e.getComponent(t.TextComponent);if(!i)return!1;var r="block"===this.textAreaElement.style.display?this.textAreaElement.value.length:(null!=(n=i.text)?n:"").length;return this.selectionStart=0,this.selectionEnd=r,"block"===this.textAreaElement.style.display&&(this.textAreaElement.focus(),this.textAreaElement.select(),this.textAreaElement.scrollTop=0),!0},i.beginFromCurrentSelection=function(e){if(this.disposed)return!1;var n=this.owner.getSelection().getSelectedPlayerItems(),i=1===n.length?n[0]:void 0;return!!((null==i?void 0:i.type)===t.spec.ItemType.text&&i.getComponent(t.TextComponent))&&(this._editingItem=i,this.interactionParam={type:"edit",textareaType:e},!0)},i.retarget=function(e,n){return void 0===n&&(n="focus"),!this.disposed&&e.type===t.spec.ItemType.text&&!!e.getComponent(t.TextComponent)&&(e===this._editingItem||(this.hideTextArea(),this.selectionStart=null,this.selectionEnd=null,this.cancelPointerSelection(),this.caretMapper.reset(),this.textAreaElement.setSelectionRange(0,0),this._editingItem=e,this.interactionParam={type:"edit",textareaType:n},!0))},i.beginPointerSelection=function(e){this.textAreaElement.style.pointerEvents="none",this.pointerSelection={anchor:X({},e),focus:X({},e),active:!0},this.applyPointerSelection()},i.updatePointerSelection=function(e){var t;(null==(t=this.pointerSelection)?void 0:t.active)&&(this.pointerSelection.focus=X({},e),this.applyPointerSelection())},i.finishPointerSelection=function(e){this.pointerSelection&&(this.pointerSelection.focus=X({},e),this.pointerSelection.active=!1,this.textAreaElement.style.pointerEvents="",this.applyPointerSelection()&&(this.pointerSelection=void 0))},i.cancelPointerSelection=function(){this.textAreaElement.style.pointerEvents="",this.pointerSelection=void 0,this.hidePointerSelectionPreview()},i.attachProjection=function(e){this.disposed||this.attachedProjections.add(e)},i.detachProjection=function(e){this.attachedProjections.delete(e)&&!(this.attachedProjections.size>0)&&(this.saveSelectionRange(),this.hideTextArea())},i.dispose=function(){this.disposed||(this.disposed=!0,this.attachedProjections.clear(),this._editingItem=void 0,this.interactionParam={type:"none"},this.cancelPointerSelection(),this.caretMapper.reset(),this.hideTextArea(),this.textAreaElement.removeEventListener("keydown",this.handleKeyDown),this.textAreaElement.removeEventListener("mousedown",this.handleMouseDown),this.textAreaElement.removeEventListener("dragstart",this.handleDragStart),this.textAreaElement.remove(),this.pointerSelectionPreviewElement.remove(),this.removeTextAreaStyle(),this.removeTextSelectionStyle(),this.removePointerSelectionPreviewStyle())},i.syncTextArea=function(e,n){var i,r=this._editingItem;if(0!==this.attachedProjections.size&&r&&"empty"!==e.type){var o=r.getComponent(t.TextComponent);if(!o){this.hideTextArea();return}var s="block"!==this.textAreaElement.style.display,a=o.textLayout,c=a.lineHeight,l=a.letterSpace,u=a.textAlign,h=a.height,d=a.keepWordIntact,m=o.textStyle,f=m.fontSize,p=m.textWeight,g=m.fontFamily,v=o.text,y=tx(e.transform),x=y[0],w=y[1],A=y[3],M=x.distance(w),I=x.distance(A),C=Math.atan2(w.y-x.y,w.x-x.x),S=h>0?I/h:n;s&&(this.textAreaElement.value=null!=v?v:"",this.textAreaElement.setSelectionRange(0,0),this.textAreaElement.style.display="block",this.textAreaElement.style.wordBreak=d?"normal":"break-all",this.textAreaElement.style.whiteSpace="pre-wrap",this.textAreaElement.style.overflowWrap="break-word",this.textAreaElement.style.fontWeight=p,this.textAreaElement.style.letterSpacing=""+l*S+"px",this.textAreaElement.style.transformOrigin="0 0",this.textAreaElement.style.paintOrder="stroke fill",this.textAreaElement.addEventListener("input",this.handleInput)),this.textAreaElement.style.left=""+x.x+"px",this.textAreaElement.style.top=""+x.y+"px",this.textAreaElement.style.width=""+M+"px",this.textAreaElement.style.height=""+I+"px",this.textAreaElement.style.fontFamily=g,this.textAreaElement.style.textAlign=this.getTextAlign(u),this.textAreaElement.style.fontSize=""+f*S+"px",this.textAreaElement.style.lineHeight=""+c*S+"px",this.textAreaElement.style.transform="rotateZ("+C+"rad)",Object.assign(this.pointerSelectionPreviewElement.style,{left:""+x.x+"px",top:""+x.y+"px",width:""+M+"px",height:""+I+"px",fontFamily:g,textAlign:this.getTextAlign(u),fontSize:""+f*S+"px",fontWeight:p,letterSpacing:""+l*S+"px",lineHeight:""+c*S+"px",transform:"rotateZ("+C+"rad)",transformOrigin:"0 0",wordBreak:d?"normal":"break-all",whiteSpace:"pre-wrap",overflowWrap:"break-word"}),this.syncPointerLayout({left:x.x,top:x.y,width:M,height:I,rotation:C,text:null!=v?v:"",fontFamily:g,fontSize:f*S,fontWeight:p,letterSpacing:l*S,lineHeight:c*S,textAlign:this.getTextAlign(u),keepWordIntact:d}),this.textAreaElement.scrollTop=0,!s||(null==(i=this.pointerSelection)?void 0:i.active)||("select"===this.interactionParam.textareaType?(this.textAreaElement.focus(),this.textAreaElement.select()):(this.textAreaElement.focus(),null!==this.selectionStart&&null!==this.selectionEnd&&this.textAreaElement.setSelectionRange(this.selectionStart,this.selectionEnd)),this.textAreaElement.scrollTop=0)}},i.saveSelectionRange=function(){this.selectionStart=this.textAreaElement.selectionStart,this.selectionEnd=this.textAreaElement.selectionEnd},i.hideTextArea=function(){this.textAreaElement.removeEventListener("input",this.handleInput),this.textAreaElement.style.display="none",this.hidePointerSelectionPreview()},i.syncPointerLayout=function(e){this.pointerSelection&&(this.caretMapper.sync(e),this.applyPointerSelection()&&!this.pointerSelection.active&&(this.pointerSelection=void 0))},i.applyPointerSelection=function(){var e=this.pointerSelection;if(!e)return!1;null!=e.anchorIndex||(e.anchorIndex=this.caretMapper.resolve(e.anchor));var t=this.caretMapper.resolve(e.focus);if(void 0===e.anchorIndex||void 0===t)return!1;var n=Math.min(e.anchorIndex,t),i=Math.max(e.anchorIndex,t);return e.active||this.textAreaElement.focus(),this.textAreaElement.setSelectionRange(n,i,t<e.anchorIndex?"backward":"forward"),this.textAreaElement.scrollTop=0,e.active?this.renderPointerSelectionPreview(n,i):this.hidePointerSelectionPreview(),!0},i.renderPointerSelectionPreview=function(e,t){if(e===t){this.hidePointerSelectionPreview();return}var n=this.textAreaElement.value,i=document.createElement("span");i.style.backgroundColor=tk,i.textContent=n.slice(e,t),this.pointerSelectionPreviewElement.replaceChildren(document.createTextNode(n.slice(0,e)),i,document.createTextNode(n.slice(t))),this.pointerSelectionPreviewElement.style.display="block"},i.hidePointerSelectionPreview=function(){this.pointerSelectionPreviewElement.style.display="none",this.pointerSelectionPreviewElement.replaceChildren()},i.getTextAlign=function(e){switch(e){case t.spec.TextAlignment.middle:return"center";case t.spec.TextAlignment.right:return"right";default:return"left"}},tB(n,[{key:"editingItem",get:function(){return this._editingItem}},{key:"isEditing",get:function(){return void 0!==this._editingItem}}]),n}(t.EventEmitter),tV=function(){function e(e){this.owner=e}return e.prototype.createGizmos=function(){return[]},e}(),tD=function(e){function t(){return e.apply(this,arguments)}return G(t,e),t}(tV),tO=function(e){function t(){return e.apply(this,arguments)}return G(t,e),t.prototype.createGizmos=function(){return this.owner.getActiveEditMode().createGizmos()},t}(tV);e.GestureCursorType=void 0,(h=e.GestureCursorType||(e.GestureCursorType={})).NORMAL="normal",h.ROTATION="rotation",h.SCALE="scale",h.TEXT_ROTATION="text-rotation",h.CIRCLE="circle",h.HAND="hand",h.ACTIVE_HAND="active-hand",h.POINTER="pointer",h.TEXT="text",h.TEXT_CREATE="text-create",h.FRAME_CREATE="frame-create",h.BOX_SELECT="box-select";var tY=function(){function e(e){this._owner=e}var t=e.prototype;return t.dispose=function(){},t.onUpdate=function(){},t.prepareForDispatch=function(){},t.requiresDragThreshold=function(){return!0},t.draw=function(e){},t.onMouseDown=function(e){},t.onMouseUp=function(e){},t.onMouseMove=function(e){},t.onMouseDrag=function(e){},t.onMouseLeave=function(){},t.onKeyDown=function(e){},t.onKeyUp=function(e){},e}();e.GizmoType=void 0,(d=e.GizmoType||(e.GizmoType={})).NULL="null",d.HAND="hand",d.CHANGE_SELECTION="change-selection",d.MOVE_SELECTION="move-selection",d.BOX_SELECTION="box-selection",d.CLICK_DRAG_MULTIPLEX="click-drag-multiplex",d.CORNER_ROTATION="corner-rotation",d.RESIZE_SELECTION="resize-selection",d.VIEWPORT_OVERLAY="viewport-overlay",d.IMAGE_CUT="image-cut",d.TEXT="text",d.MASK="mask",d.LOADING="loading",d.IMAGE_EXPAND="image-expand",d.SPRITE_TEXT_EDIT="sprite-text-edit",d.ICON="icon",d.ITEM_CREATE="item-create";var tN=function(){function e(){}return e.createVFXItem=function(e,n,i){void 0===n&&(n=null),void 0===i&&(i="NewVFXItem");for(var r=arguments.length,o=Array(r>3?r-3:0),s=3;s<r;s++)o[s-3]=arguments[s];var a=new t.VFXItem(e.engine);a.name=i;for(var c,l=D(o);!(c=l()).done;){var u=c.value;a.addComponent(u)}return e.addItem(a),e.rootComposition.items.push(a),n&&a.setParent(n),a},e}(),tH=function(){function e(){}return e.createEmpty=function(e,n,i){void 0===n&&(n=null),void 0===i&&(i="NewVFXItem");var r=tN.createVFXItem(e,n,i);return r.type=t.spec.ItemType.null,r},e.createSprite=function(e,n,i){void 0===n&&(n=null),void 0===i&&(i="NewSprite");var r=tN.createVFXItem(e,n,i,t.SpriteComponent);return r.type=t.spec.ItemType.sprite,r},e.createText=function(e,n,i){void 0===n&&(n=null),void 0===i&&(i="NewText");var r=tN.createVFXItem(e,n,i,t.TextComponent);return r.type=t.spec.ItemType.text,r},e.createVideo=function(e,i,r){void 0===i&&(i=null),void 0===r&&(r="NewVideo");var o=tN.createVFXItem(e,i,r,n.VideoComponent);return o.type=t.spec.ItemType.video,o},e.createEffects=function(e,n,i,r){return void 0===i&&(i=null),void 0===r&&(r="NewEffects"),z(function(){var o,s;return Y(this,function(a){switch(a.label){case 0:return[4,t.AssetManager.loadPrecomposition(n,{autoplay:!1})];case 1:return o=a.sent(),(s=t.PrecompositionManager.instantiate(o,e)).name=r,s.type=t.spec.ItemType.composition,s.getComponent(t.CompositionComponent).endBehavior=s.endBehavior,i&&s.setParent(i),[2,s]}})})()},e}();function tU(e,t,n){var i=function(e){var t=e.composition;if(!(null==t?void 0:t.camera))return console.warn("The composition of the item does not have a camera, using identity matrix instead."),new e3;var n=t.camera.getProjectionMatrix(),i=t.camera.getViewMatrix();return new e3().copyFrom(n.multiply(i))}(t);return new e6().copyFrom(e.applyProjectionMatrix(i).toVector2()).add(new e6(1,-1)).multiply(new e6(n.x/2,-n.y/2))}function tj(e,t){return new e6(e.x/t.x*2-1,1-e.y/t.y*2)}function tW(e,t){return new e6(e.x/t.x*2,-(e.y/t.y*2))}function tQ(e,t){return new e6(e.x/2*t.x,-e.y/2*t.y)}function tK(e,t,n,i){var r=t.position,o=t.matrix,s=tj(e,i),a=new tP().setFromCamera(s,{position:r,inverseViewProjectMatrix:o}).rayCastPlane(n);return null==a?void 0:a.point}function tZ(e,t,n,i,r){var o=tU(new e9().clone(),n,t),s=tK(o,i,r,t),a=tK(o.clone().add(e),i,r,t);return s&&a?a.subtract(s):(console.warn("size is out of bounds."),new e9(0,0,0))}function tX(e,t,n){var i=new e6,r=n.composition.camera,o=n.transform.getWorldPosition().z,s=r.getInverseVPRatio(o),a=s.x,c=s.y;return i.x=Math.abs(e.x*t.x/a/2),i.y=Math.abs(-(e.y*t.y/c/2)),i}function tJ(e,t){return e.clone().divide(t)}function tq(e,t,n,i){var r=tQ(i,t),o=new e6(t.x/2,t.y/2);return e.clone().subtract(r).subtract(o).multiply(new e6(1/n,1/n)).add(o)}function t_(e,t){var n=new e9(0,0,1).applyEuler(t),i=new th;return i.setFromNormalAndCoplanarPoint(e,n),i}function t$(e){return e.type===t.spec.ItemType.null&&void 0!==e.getComponent(t.FrameComponent)&&"画板"===e.name}function t0(e){return e.type===t.spec.ItemType.null&&void 0!==e.getComponent(t.FrameComponent)&&"动效"===e.name}function t1(e){if(e.type!==t.spec.ItemType.sprite)return!1;var n,i=null==(n=e.definition)?void 0:n.content;return e.name.includes("生成器")||(null==i?void 0:i.generatorType)==="image"||(null==i?void 0:i.generatorType)==="video"||(null==i?void 0:i.isVideoGenerator)===!0}function t2(e){if(!t1(e))return!1;var t,n=null==(t=e.definition)?void 0:t.content;return(null==n?void 0:n.generatorType)==="video"||(null==n?void 0:n.isVideoGenerator)===!0||e.name.includes("视频")}function t4(e){return e.type===t.spec.ItemType.null&&!e.getComponent(t.FrameComponent)}function t3(e,t){var n=t5(e,t);return n?tw(n):new to}function t5(e,n){if(e.isVisible&&(e.type===t.spec.ItemType.sprite||e.type===t.spec.ItemType.plugin||e.type===t.spec.ItemType.video||e.type===t.spec.ItemType.richtext||e.type===t.spec.ItemType.text||e.type===t.spec.ItemType.null||e.type===t.spec.ItemType.shape)){var i=!!e.getComponent(t.FrameComponent);if(e.type!==t.spec.ItemType.null||i){var r,o,s=e.transform,a=e.composition;s.updateLocalMatrix();var c=s.size.clone().divide(2),l=c.x,u=c.y,h=new e3().copyFrom(null!=(o=null==a?void 0:a.transform.getWorldMatrix())?o:new e3).invert().multiply(s.getWorldMatrix());r=tp([new e9(-l,u,0),new e9(l,u,0),new e9(l,-u,0),new e9(-l,-u,0)].map(function(t){return tU(t.applyMatrix(h),e,n)}))}if(i)return r;for(var d,m,f=r?tw(r):new to,p=!1,g=D(null!=(d=e.children)?d:[]);!(m=g()).done;){var v=t3(m.value,n);v.isEmpty()||(f.union(v),p=!0)}return p?tg(f):r}}function t8(e,t){var n,i=null!=(n=e.transform.anchor)?n:e.transform.position;return tU(new e9().copyFrom(i).applyMatrix(new e3().copyFrom(e.transform.getWorldMatrix())),e,t).multiply(100).round().divide(100)}function t6(e){var t,n,i={matrix:new e3,parentMatrix:new e3};return void 0!==e.transform&&(e.transform.updateLocalMatrix(),i.matrix.copyFrom(e.transform.getWorldMatrix()),i.parentMatrix.copyFrom(null!=(n=null==(t=e.transform.parentTransform)?void 0:t.getWorldMatrix())?n:new e3)),i}function t9(e){var t=t6(e),n=t.matrix,i=t.parentMatrix,r=new e9,o=new e5,s=new e9;return e.transform.assignWorldTRS(r,o,s),{matrix:n,parentMatrix:i,position:r,rotation:new e1(0,0,0,e2.XYZ).setFromQuaternion(o),scale:s}}function t7(e){var t,n=e.transform,i=e.composition;n.updateLocalMatrix();var r=new e3().copyFrom(null!=(t=null==i?void 0:i.transform.getWorldMatrix())?t:new e3).invert().multiply(n.getWorldMatrix()),o=new e9;return r.decompose(new e9,new e5,o),new e6(Math.abs(n.size.x*o.x),Math.abs(n.size.y*o.y))}function ne(e){return(null==e?void 0:e.isVisible)!==!1}function nt(e){for(var t=e;t;){if(t0(t))return t;t=t.parent}}function nn(e){for(var t=[],n=e.parent;n;)t$(n)&&t.push(n),n=n.parent;return t}function ni(e){var t=[],n=t$(e);if(t0(e))return t;function i(e){for(var t,n=[],r=D(e);!(t=r()).done;){var o=t.value;n.push(o),o.children&&o.children.length>0&&n.push.apply(n,[].concat(i(o.children)))}return n}return n?i(e.children):e.children&&e.children.length>0?i(e.children):t}function nr(e,t){if(e){var n=function(e,t){for(var i,r=D(e);!(i=r()).done;){var o=i.value;if(o.getInstanceId()===t)return o;var s=n(o.children,t);if(s)return s}};return n(e.items,t)}}var no=new WeakMap;function ns(e){no.delete(e),e.playVideo()}function na(e){var t=e.playPromise;if(!t){no.delete(e),e.pauseVideo();return}var n=Symbol("pause-video");no.set(e,n);var i=function(){no.get(e)===n&&(no.delete(e),e.pauseVideo())};t.then(i,i)}function nc(e,i){var r=nr(e.sceneServer.compositions[0],i);if((null==r?void 0:r.type)===t.spec.ItemType.video){var o=r.getComponent(n.VideoComponent);o&&ns(o)}}function nl(e,i){var r=nr(e.sceneServer.compositions[0],i);if((null==r?void 0:r.type)===t.spec.ItemType.video){var o=r.getComponent(n.VideoComponent);o&&na(o)}}function nu(e,n){var i,r=nr(e.sceneServer.compositions[0],n),o=null==r?void 0:null==(i=r.children)?void 0:i[0];(null==o?void 0:o.type)===t.spec.ItemType.composition&&o.getComponent(t.CompositionComponent).play()}function nh(e,n){var i,r=nr(e.sceneServer.compositions[0],n),o=null==r?void 0:null==(i=r.children)?void 0:i[0];(null==o?void 0:o.type)===t.spec.ItemType.composition&&o.getComponent(t.CompositionComponent).pause()}e.TransformType=void 0,(m=e.TransformType||(e.TransformType={})).NULL="null",m.TRANSLATION="translation",m.ROTATION="rotation",m.SCALE="scale",m.WIDTH_SCALE="width-scale";var nd=function(){function e(){}return e.getViewScale=function(e){var t,n=null==(t=e.sceneServer.compositions[0])?void 0:t.camera;return n?n.getViewportMatrix().elements[0]:1},e.getViewportTranslation=function(e){var t,n=null==(t=e.sceneServer.compositions[0])?void 0:t.camera;if(!n)return new e6;var i=n.getViewportMatrix().elements;return new e6(i[12],i[13])},e.getCameraInfo=function(e){var t,n=null==(t=e.sceneServer.compositions[0])?void 0:t.camera;return n?{position:new e9().copyFrom(n.position),matrix:new e3().copyFrom(n.getInverseViewProjectionMatrix())}:{position:new e9,matrix:new e3}},e.getContainerSize=function(e){return new e6(e.offsetWidth,e.offsetHeight)},e}();function nm(e){return Array.isArray(e)?e.map(function(e){return nm(e)}):e&&"object"==typeof e?Object.fromEntries(Object.entries(e).map(function(e){return[e[0],nm(e[1])]})):e}function nf(e){if(e&&"object"==typeof e){for(var t,n=D(Object.values(e));!(t=n()).done;)nf(t.value);Object.freeze(e)}return e}function np(e){return Object.freeze(X({},e,{defaults:nf(nm(e.defaults))}))}var ng="\n// Shadertoy Fragment Shader\n// Diagonal background gradient + wider colorful transparent shimmer\n\nprecision highp float;\n\nvarying vec2 vUV;\n\nuniform vec4 _Time;\n\n// ------------------------------------------------------------\n// Background\n// ------------------------------------------------------------\nvec3 background(vec2 uv) {\n vec3 topLeft = vec3(0.88, 0.85, 1.00);\n vec3 bottomRight = vec3(0.98, 0.98, 0.98);\n\n float d = (uv.x + (1.0 - uv.y)) * 0.5;\n d = smoothstep(0.0, 1.0, d);\n\n vec3 col = mix(topLeft, bottomRight, d);\n\n vec2 p1 = uv - vec2(1.13, 1.40);\n float r1 = length(p1 / vec2(0.85, 0.85));\n float g1 = 1.0 - smoothstep(0.0, 0.96, r1);\n col += vec3(172.0/255.0, 183.0/255.0, 1.0) * g1 * 0.28;\n\n vec2 p2 = uv - vec2(0.25, 0.23);\n float r2 = length(p2 / vec2(0.74, 0.64));\n float g2 = 1.0 - smoothstep(0.0, 1.0, r2);\n col += vec3(147.0/255.0, 108.0/255.0, 1.0) * g2 * 0.10;\n\n return col;\n}\n\n// ------------------------------------------------------------\n// Easing: slow at start, fast at end\n// ------------------------------------------------------------\nfloat easeInQuad(float x) {\n return x * x;\n}\n\n// ------------------------------------------------------------\n// Color palette helper\n// ------------------------------------------------------------\nvec3 palette(float t) {\n // 柔和的彩色条:蓝 -> 青 -> 紫 -> 粉 -> 蓝\n vec3 a = vec3(0.62, 0.82, 1.00);\n vec3 b = vec3(0.72, 0.95, 1.00);\n vec3 c = vec3(0.83, 0.76, 1.00);\n vec3 d = vec3(1.00, 0.82, 0.95);\n\n t = fract(t);\n\n if (t < 0.33) {\n float k = smoothstep(0.0, 0.33, t);\n return mix(a, b, k);\n } else if (t < 0.66) {\n float k = smoothstep(0.33, 0.66, t);\n return mix(b, c, k);\n } else {\n float k = smoothstep(0.66, 1.0, t);\n return mix(c, d, k);\n }\n}\n\n// ------------------------------------------------------------\n// Wider colorful transparent left-to-right shimmer\n// ------------------------------------------------------------\nvec4 shimmerBand(vec2 uv, float t) {\n float cycle = fract(t * 0.70);\n cycle = easeInQuad(cycle);\n\n float x = cycle * 1.55 - 0.25; // sweep from left to right\n\n float d = abs(uv.x - x);\n float band = 1.0 - smoothstep(0.0, 0.30, d);\n float core = 1.0 - smoothstep(0.0, 0.10, d);\n\n float x2 = x + (uv.y - 0.5) * 0.18;\n float d2 = abs(uv.x - x2);\n float band2 = 1.0 - smoothstep(0.0, 0.20, d2);\n\n float s = max(band * 0.85, band2 * 0.60);\n s = max(s, core * 0.95);\n s = clamp(s, 0.0, 1.0);\n\n // 颜色沿条带变化,模拟彩色渐变\n float hueT = uv.y * 0.25 + uv.x * 0.60 + t * 0.10;\n vec3 color1 = palette(hueT);\n\n // 中间更亮一点,边缘更淡\n vec3 color2 = mix(color1, vec3(1.0), core * 0.35);\n\n return vec4(color2, s);\n}\n\n// ------------------------------------------------------------\n// Main\n// ------------------------------------------------------------\nvoid main() {\n vec2 uv = vUV;\n\n vec3 col = background(uv);\n\n vec4 sh = shimmerBand(uv, _Time.y);\n\n // 可选:增加一点柔光感\n col += sh.rgb * sh.a * 0.06;\n\n gl_FragColor = vec4(col, 1.0);\n}",nv=np({id:"feedback.loading",defaults:{loadingFragment:ng}}),ny=np({id:"mode.effects-edit",defaults:{allowTransform:!0}}),nx=np({id:"viewport.navigation",defaults:{scrollWheelZoom:!1,invertZoom:!1,zoomStep:.1}}),nw=np({id:"viewport.overlay",defaults:{boxColor:16711680,boxWidth:1,outerMaskEnabled:!0,markColor:0,markAlpha:.17,safeAreaEnabled:!0,safeAreaBoxColor:65280,safeAreaBoxAlpha:.3}}),nA=np({id:"selection.preview",defaults:{videoPreSelectedPlay:!0,preSelectedColor:3900150,preSelectedWidth:2,regionBoxColor:3900150,regionBoxAlpha:.17,regionWireframeColor:3900150,regionWireframeAlpha:.78,regionWireframeWidth:1}}),nM=np({id:"selection.snap",defaults:{enabled:!0,lineWidth:.8,lineColor:15878178,distance:5}}),nI=np({id:"resize-selection",defaults:{pixelRatio:1,contentRatio:1,wireframeColor:3900150,wireframeAlpha:1,wireframeWidth:1.5,cornerFillColor:16777215,cornerLineColor:3900150,cornerLineWidth:1.5,cornerLineAlpha:1,scaleCircleSize:4,rotationCircleSize:7,infoShowEnabled:!0,sizeTextColor:6710886,nameTextColor:6710886,frameMoveLineColor:3900150,frameMoveLineWidth:2,imageLogoUrl:"https://mdn.alipayobjects.com/huamei_ixsp8m/afts/img/A*F2wVS7x0MfIAAAAAQBAAAAgAev-aAQ/original",groupLogoUrl:"https://mdn.alipayobjects.com/huamei_ppzin5/afts/img/Yo69Sr7boqYAAAAAH3AAAAgADjdkAQFr/original",textLogoUrl:"https://mdn.alipayobjects.com/huamei_ppzin5/afts/img/Yo69Sr7boqYAAAAAH3AAAAgADjdkAQFr/original",videoLogoUrl:"https://mdn.alipayobjects.com/huamei_ixsp8m/afts/img/A*w1fnS4mq0VgAAAAAQCAAAAgAev-aAQ/original",frameLogoUrl:"https://mdn.alipayobjects.com/huamei_ixsp8m/afts/img/A*DRF_RpndkjUAAAAAQDAAAAgAev-aAQ/original",effectsLogoUrl:"https://mdn.alipayobjects.com/huamei_ixsp8m/afts/img/A*RMewR4ruUnYAAAAAQGAAAAgAev-aAQ/original"}}),nC=np({id:"tool.image-cut",defaults:{maskColor:16777215,maskAlpha:.5,cutBoxLineWidth:2,cutBoxLineColor:6960383,cutBoxLineAlpha:1,itemBoxLineWidth:1,itemBoxLineColor:6960383,itemBoxLineAlpha:1,cutBoxCornerRadius:5,cutBoxCornerFillColor:16777215,cutBoxCornerLineWidth:2,cutBoxCornerLineColor:6960383,cutBoxCornerLineAlpha:1,scaleInteractionDistance:8,directionScaleInteractionDistance:5,gridLineWidth:1,gridLineColor:16777215,gridLineAlpha:1,gridCount:2}}),nS=np({id:"tool.image-expand",defaults:{maskColor:6960383,maskAlpha:.2,expandBoxLineWidth:2,expandBoxLineColor:6960383,expandBoxLineAlpha:1,expandBoxCornerRadius:5,expandBoxCornerLineWidth:2,expandBoxCornerLineColor:6960383,expandBoxCornerLineAlpha:1,expandBoxCornerFillColor:16777215,scaleInteractionDistance:8,directionScaleInteractionDistance:5,gridLineWidth:1,gridLineColor:16777215,gridLineAlpha:1,gridCount:2}}),nT=np({id:"tool.mask",defaults:{maskImage:"",brushSize:20,brushColor:6960383,brushAlpha:.5,maskColor:65280,maskBackgroundColor:16777215,maskAlpha:1,boxLineWidth:1,boxLineColor:6960383,boxLineAlpha:1}}),nb=np({id:"tool.sprite-text-edit",defaults:{textColor:16777215,preSelectedTextColor:16777215,boxLineWidth:3,dashLineDash:8,dashLineGap:8,editBoxAlpha:.15,editBoxColor:3900150,editBoxLineAlpha:1,editBoxLineColor:3900150,editBoxPreSelectedAlpha:.25,editBoxPreSelectedColor:3900150,editBoxLinePreSelectedAlpha:1,editBoxLinePreSelectedColor:3900150,hasChangedEditBoxAlpha:.2,hasChangedEditBoxColor:2278750,hasChangedEditBoxLineAlpha:1,hasChangedEditBoxLineColor:2278750,hasChangedEditBoxPreSelectedAlpha:.3,hasChangedEditBoxPreSelectedColor:2278750,hasChangedEditBoxLinePreSelectedAlpha:1,hasChangedEditBoxLinePreSelectedColor:2278750,editBoxSelectedAlpha:.6,editBoxSelectedColor:16776960}}),nE=np({id:"feedback.icon",defaults:{autoShow:!0,videoPlayUrl:"https://mdn.alipayobjects.com/huamei_ixsp8m/afts/img/A*ORMmSYYHIHUAAAAAJbAAAAgAev-aAQ/original",videoPlayShift:[20,20],videoPlayWidth:20,videoPlayHeight:20,imageGeneratorUrl:"https://mdn.alipayobjects.com/huamei_ixsp8m/afts/img/A*bYB-TIEWLBkAAAAAQGAAAAgAev-aAQ/original",videoGeneratorUrl:"https://mdn.alipayobjects.com/huamei_ixsp8m/afts/img/A*6cTFT44CuKEAAAAAQCAAAAgAev-aAQ/original",generatorWidth:200,generatorHeight:200}}),nP=np({id:"tool.item-create",defaults:{frameBorderColor:2193663,frameBorderWidth:1,frameBorderAlpha:.8,frameFillColor:2193663,frameFillAlpha:.15,frameChildBoxAlpha:.35,frameChildBoxColor:2193663}});function nz(e,t,n){void 0===n&&(n=new e6);var i=e.sceneServer.compositions[0];if(i){var r=i.camera,o=r.getViewportMatrix().elements[0],s=new e6(r.getViewportMatrix().elements[12],r.getViewportMatrix().elements[13]),a=o+t,c=(n.x-s.x)/o,l=(n.y-s.y)/o,u=new e6(n.x-c*a,n.y-l*a),h=new e3().compose(new e9(u.x,u.y,0),new e5,new e9(a,a,1));i.camera.setViewportMatrix(h)}}function nB(e,t){var n=e.sceneServer.compositions[0];if(n){var i=n.camera,r=i.getViewportMatrix().elements[0],o=new e6(i.getViewportMatrix().elements[12],i.getViewportMatrix().elements[13]).add(t),s=new e3().compose(new e9(o.x,o.y,0),new e5,new e9(r,r,1));i.setViewportMatrix(s)}}function nG(e,t,n){var i=e.min.clone().multiply(-t).subtract(n.clone().divide(2)),r=e.max.clone().multiply(-t).add(n.clone().divide(2));return new to(new e6(Math.min(i.x,r.x),Math.min(i.y,r.y)),new e6(Math.max(i.x,r.x),Math.max(i.y,r.y)))}var nL=function(e){function n(t){var n;return(n=e.call(this)||this).minScale=.01,n.maxScale=20,n.minTranslation=new e6(-1/0,-1/0),n.maxTranslation=new e6(1/0,1/0),n.owner=t,n}G(n,e);var i=n.prototype;return i.setScaleRange=function(e,t){if(!Number.isFinite(e)||!Number.isFinite(t)||e<=0||t<=0||e>t)throw RangeError("Viewport scale range must be finite, positive, and ordered.");this.minScale=e,this.maxScale=t,this.clampCurrentViewport()},i.setViewportRange=function(e){var t,n,i,r,o,s,a,c=null!=(r=e.minScale)?r:this.minScale,l=null!=(o=e.maxScale)?o:this.maxScale;if(!Number.isFinite(c)||!Number.isFinite(l)||c<=0||l<=0||c>l)throw RangeError("Viewport scale range must be finite, positive, and ordered.");var u=null!=(s=null==(t=e.minTranslation)?void 0:t.clone())?s:new e6(-1/0,-1/0),h=null!=(a=null==(n=e.maxTranslation)?void 0:n.clone())?a:new e6(1/0,1/0);if(!this.isTranslationRangeValid(u,h))throw RangeError("Viewport translation range must be ordered and finite or infinite.");var d=null==(i=e.translationBounds)?void 0:i.clone();if(d&&(d.isEmpty()||!d.min.toArray().every(Number.isFinite)||!d.max.toArray().every(Number.isFinite)))throw RangeError("Viewport content bounds must be finite and ordered.");this.translationBounds=d,this.minScale=c,this.maxScale=l,this.minTranslation=u,this.maxTranslation=h,this.clampCurrentViewport()},i.resetViewportRange=function(){this.translationBounds=void 0,this.minScale=.01,this.maxScale=20,this.minTranslation=new e6(-1/0,-1/0),this.maxTranslation=new e6(1/0,1/0),this.clampCurrentViewport()},i.handleWheel=function(e,n){if(!this.hasViewport()||(e.accept(),e.buttonMask!==t.MouseButtonMask.None))return!1;var i=this.normalizeWheel(e),r=this.classifyWheel(e),o=new e6(e.position.x,e.position.y);if("zoom"===r){if(0===i.y)return!1;var s=this.config.invertZoom?-i.y:i.y,a=this.config.zoomStep,c=tt(.01*s,-a,a);return this.zoomByFactor(1+c,o,e.ctrlPressed?"pinch-zoom":"wheel-zoom")}return(0!==i.x||0!==i.y)&&this.panByViewDelta(i,o,"wheel-pan")},i.panByViewDelta=function(e,t,n){if(!this.hasViewport()||0===e.x&&0===e.y)return!1;var i=this.containerSize();return!(i.x<=0)&&!(i.y<=0)&&(nB(this.engine,tW(e,i)),this.clampCurrentTranslation(i),this.emitChange(t,n),!0)},i.zoomByFactor=function(e,t,n){if(!this.hasViewport()||!Number.isFinite(e)||e<=0)return!1;var i=nd.getViewScale(this.engine),r=tt(i*e,this.minScale,this.maxScale);if(r===i)return!1;var o=this.containerSize();return!(o.x<=0)&&!(o.y<=0)&&(nz(this.engine,r-i,tj(t,o)),this.clampCurrentTranslation(o),this.emitChange(t,n),!0)},i.dispose=function(){for(var e,t=D(this.getListeners("change").slice());!(e=t()).done;){var n=e.value;this.off("change",n)}},i.classifyWheel=function(e){return e.ctrlPressed||e.metaPressed||this.config.scrollWheelZoom?"zoom":"pan"},i.normalizeWheel=function(e){var n=new e6,i=100*e.factor;switch(e.buttonIndex){case t.MouseButton.WheelUp:n.y=i;break;case t.MouseButton.WheelDown:n.y=-i;break;case t.MouseButton.WheelLeft:n.x=i;break;case t.MouseButton.WheelRight:n.x=-i}return!("undefined"!=typeof navigator&&/Mac|iPhone|iPad|iPod/.test(navigator.platform))&&e.shiftPressed&&0===n.x&&(n.x=n.y,n.y=0),n},i.emitChange=function(e,t){var n=this.containerSize();this.emit("change",{source:t,scale:nd.getViewScale(this.engine),translation:tQ(nd.getViewportTranslation(this.engine),n),center:e.clone()})},i.containerSize=function(){return nd.getContainerSize(this.engine.canvas.parentElement)},i.clampCurrentTranslation=function(e){var t,n,i=tQ(nd.getViewportTranslation(this.engine),e),r=this.translationBounds?nG(this.translationBounds,nd.getViewScale(this.engine),e):void 0,o=null!=(t=null==r?void 0:r.min)?t:this.minTranslation,s=null!=(n=null==r?void 0:r.max)?n:this.maxTranslation,a=new e6(tt(i.x,o.x,s.x),tt(i.y,o.y,s.y)).subtract(i);(0!==a.x||0!==a.y)&&nB(this.engine,tW(a,e))},i.clampCurrentViewport=function(){if(this.hasViewport()){var e=nd.getViewScale(this.engine),t=tt(e,this.minScale,this.maxScale);t!==e&&nz(this.engine,t-e),this.clampCurrentTranslation(this.containerSize())}},i.isTranslationRangeValid=function(e,t){return!Number.isNaN(e.x)&&!Number.isNaN(e.y)&&!Number.isNaN(t.x)&&!Number.isNaN(t.y)&&e.x<=t.x&&e.y<=t.y},i.hasViewport=function(){var e;return!!(this.engine.canvas.parentElement&&(null==(e=this.engine.sceneServer.compositions[0])?void 0:e.camera))},tB(n,[{key:"config",get:function(){return this.owner.getConfigManager().get(nx)}},{key:"engine",get:function(){return this.owner.getEngine()}},{key:"viewportRange",get:function(){var e,t,n=this.translationBounds&&this.hasViewport()?nG(this.translationBounds,nd.getViewScale(this.engine),this.containerSize()):void 0;return X({minScale:this.minScale,maxScale:this.maxScale,minTranslation:null!=(e=null==n?void 0:n.min)?e:this.minTranslation.clone(),maxTranslation:null!=(t=null==n?void 0:n.max)?t:this.maxTranslation.clone()},this.translationBounds?{translationBounds:this.translationBounds.clone()}:{})}}]),n}(t.EventEmitter);function nk(e,t,n,i){if(!t$(e)){console.warn("Item "+e.getInstanceId()+" is not a frame item.");return}var r,o,s,a=null!=(o=null==i?void 0:i.worldSize)?o:t7(e),c=null!=(s=null==i?void 0:i.localSize)?s:e.transform.size,l=0===a.x?t.x:c.x*t.x/a.x,u=0===a.y?t.y:c.y*t.y/a.y;if(e.transform.setSize(l,u),n&&(0!==n.x||0!==n.y)){var h=e.transform.position;e.setPosition(h.x+n.x,h.y+n.y,h.z)}var d=null==e?void 0:null==(r=e.children)?void 0:r[0];d&&n&&d.children.forEach(function(e){var t,i=new e3().copyFrom(null!=(t=e.transform.getParentMatrix())?t:new e3);i.setPosition(new e9);var r=n.clone().applyMatrix(i.invert()).negate();e.translate.apply(e,[].concat(r.toArray())),e.transform.updateLocalMatrix()})}var nR="sans-serif",nF="|\xc9q\xc5",nV=new Map;function nD(e,t){void 0===t&&(t=1);var n=e+"_"+t,i=nV.get(n);if(i)return i;var r=new e0((e>>16&255)/255,(e>>8&255)/255,(255&e)/255,t);return nV.set(n,r),r}var nO=null;function nY(e,t,n,i,r){if(void 0===t&&(t=14),void 0===n&&(n=nR),null!=nO||(nO=document.createElement("canvas").getContext("2d")),!nO)return{width:0,actualBoundingBoxAscent:0,actualBoundingBoxDescent:0};nO.font=(r?""+r+" ":"")+(i?""+i+" ":"")+t+"px "+n;var o,s,a=nO.measureText(e);return{width:a.width,actualBoundingBoxAscent:null!=(o=a.actualBoundingBoxAscent)?o:0,actualBoundingBoxDescent:null!=(s=a.actualBoundingBoxDescent)?s:0}}function nN(e,t,n,i,r){void 0===e&&(e=14),void 0===t&&(t=nR),void 0===r&&(r=1);var o=Number.isFinite(r)&&r>0?r:1,s=e*o,a=nY(nF+"M",s,t,n,i);return Math.ceil((a.actualBoundingBoxAscent||.8*s)+(a.actualBoundingBoxDescent||.2*s)+8*o)/o}function nH(e,t,n,i){return void 0===t&&(t=14),void 0===n&&(n=nR),nY(e,t,n,i).width}function nU(e,t,n,i){if(void 0===n&&(n=14),void 0===i&&(i=nR),nH(e,n,i)<=t)return e;for(var r,o="",s=D(e);!(r=s()).done;){var a=r.value;if(nH(o+a,n,i)>t)return o.length>2?o.slice(0,-2)+"...":"...";o+=a}return o}function nj(e,t,n,i,r){void 0===i&&(i=14),void 0===r&&(r=nR);for(var o=[],s="",a=e.split(""),c=0;c<a.length;c++){var l=a[c],u=s+l;if(nH(u,i,r)>t){if(o.push(s),o.length>=n){var h=o[n-1];o[n-1]=h.length>2?h.slice(0,-2)+"...":"...";break}s=l}else s=u;c===a.length-1&&s&&o.push(s)}return o.slice(0,n)}function nW(e,t,n,i){if(!(t.length<4))for(var r=0;r<4;r++){var o=t[r],s=t[(r+1)%4];e.drawLine(o.x,o.y,s.x,s.y,n,i)}}function nQ(e,t,n,i,r,o){if(!(t.length<4)&&!(r<=0)&&!(o<0))for(var s=r+o,a=0,c=0;c<4;c++){var l=t[c],u=t[(c+1)%4],h=u.x-l.x,d=u.y-l.y,m=Math.hypot(h,d);if(!(m<=Number.EPSILON))for(var f=0;f<m;){var p=a%s,g=0===o||p<r,v=Math.min(g?r-p:s-p,m-f);if(g&&v>Number.EPSILON){var y=f/m,x=(f+v)/m;e.drawLine(l.x+h*y,l.y+d*y,l.x+h*x,l.y+d*x,n,i)}f+=v,a+=v}}}function nK(e,t,n,i){t.isEmpty()||nW(e,tf(t),n,i)}function nZ(e,t,n){if(!t.isEmpty()){var i=t.getSize();e.fillRect(t.min.x,t.min.y,i.x,i.y,n)}}function nX(e,t,n){if(4===t.length){var i=t[0],r=t[1],o=t[2],s=t[3];e.fillTriangle(i.x,i.y,r.x,r.y,o.x,o.y,n),e.fillTriangle(i.x,i.y,o.x,o.y,s.x,s.y,n)}}function nJ(e,t,n,i,r){var o=t.clone().multiply(i),s=n.clone().multiply(r);return[e.clone().subtract(o).subtract(s),e.clone().add(o).subtract(s),e.clone().add(o).add(s),e.clone().subtract(o).add(s)]}function nq(e,t,n,i,r,o,s){var a=n.clone(),c=i.clone();n_(e,t.clone(),a,c,function(){e.fillRect(-r/2,-o/2,r,o,s)})}function n_(e,t,n,i,r){var o=e.engine.renderingServer.graphics,s=e4.fromColumnVectors(new e9(n.x,n.y,0),new e9(i.x,i.y,0),new e9(t.x,t.y,1));o.pushTransform(s),r(),o.popTransform()}function n$(e){return"resize-x"===e?"x":"resize-y"===e?"y":"both"}e.ResizeSelectionIconType=void 0,(f=e.ResizeSelectionIconType||(e.ResizeSelectionIconType={})).IMAGE="image",f.GROUP="group",f.TEXT="text",f.VIDEO="video",f.EFFECTS="effects",f.FRAME="frame",f.NULL="null";var n0=function(n){function i(t,i){var r;return void 0===i&&(i={}),(r=n.call(this,t)||this).type=e.GizmoType.RESIZE_SELECTION,r.cursorResult={type:e.GestureCursorType.NORMAL,angle:0},r.cursorPoint=new e6,r.lastPoint=new e6,r.activeType=e.TransformType.NULL,r.lastWorldPosition=new e9,r._isLockScale=!0,r.handlesActive=!1,r._ignoreInteraction=!1,r.iconTextures=new Map,r.iconTexturePromises=new Map,r.scaleEnabled=!0,r.interactionEnabled=!1!==i.interactive,r.configOff=t.getConfigManager().onChange(nI,function(e){r.onConfigChange(e)}),r.wireframe={edges:[],transform:void 0,anchor:new e6,scaleCorners:[],widthScaleAreas:[],interactive:!0,cornerEnable:!0,box:new to,totalBox:new to,childrenTransforms:[],activeType:e.TransformType.NULL,interactiveDirection:new e6,scaleCorner:new e6,scaleEdgeCorners:[]},r}G(i,n);var r=i.prototype;return r.onKeyDown=function(e){},r.onKeyUp=function(e){},r.onMouseMove=function(n){if(!this.isApplicableSelection()){this.handlesActive||this.clearHandleHover();return}if(this.handlesActive){var i=this.updateHandleDrag(n);this._owner.setCursor(this.cursorResult),i&&n.accept();return}var r=this._owner.getMousePosition();this.refreshTransformType(r),this.refreshCursorResult(this.activeType,tS(this.wireframe.interactiveDirection)),this._owner.setCursor(this.cursorResult),n.buttonMask===t.MouseButtonMask.None&&(this.activeType===e.TransformType.SCALE||this.activeType===e.TransformType.WIDTH_SCALE)&&n.accept()},r.onMouseDrag=function(e){if(this.isApplicableSelection()&&this.handlesActive){var t=this.updateHandleDrag(e);this._owner.setCursor(this.cursorResult),t&&e.accept()}},r.onMouseLeave=function(){if(!this.isApplicableSelection()){this.handlesActive||this.clearHandleHover();return}if(this.handlesActive){this._owner.setCursor(this.cursorResult);return}this.clearHandleHover()},r.onMouseDown=function(n){if(this.isApplicableSelection()&&n.buttonIndex===t.MouseButton.Left&&(this.cursorPoint=new e6(n.position.x,n.position.y),!n.doubleClick)&&(this.refreshWireframeBySelectedItems(),this.refreshTransformType(this.cursorPoint),this.refreshCursorResult(this.activeType,tS(this.wireframe.interactiveDirection)),this._owner.setCursor(this.cursorResult),this.activeType!==e.TransformType.NULL&&this.activeType!==e.TransformType.TRANSLATION)){if(this._owner.getSnapManager().reset(),this._owner.getSnapManager().enabled&&(this.activeType===e.TransformType.SCALE||this.activeType===e.TransformType.WIDTH_SCALE)){var i,r=nd.getContainerSize(this._owner.getEngine().canvas.parentElement),o=this._owner.getEngine().sceneServer.compositions[0];this._owner.getSnapManager().cacheSnapTargetsForSelection(null!=(i=null==o?void 0:o.items)?i:[],this.selectedItems,r)}this.lastPoint=new e6(n.position.x,n.position.y),this.handlesActive=!0,this.beginTransformOperation(),this._owner.emit("actionstart",{source:this,transformType:this.wireframe.activeType}),n.accept()}},r.onMouseUp=function(e){this.handlesActive&&this.finishHandleDrag(e)&&e.accept()},r.refreshCursorResult=function(t,n){switch(void 0===n&&(n=0),t){case e.TransformType.SCALE:case e.TransformType.WIDTH_SCALE:this.cursorResult={type:e.GestureCursorType.SCALE,angle:(n+Math.PI/4)*te};break;case e.TransformType.TRANSLATION:case e.TransformType.ROTATION:case e.TransformType.NULL:this.cursorResult={type:e.GestureCursorType.NORMAL,angle:0}}},r.onUpdate=function(){var e=this.wireframe.activeType;this.refreshWireframeBySelectedItems(),e!==this.wireframe.activeType&&this.refreshCursorResult(this.wireframe.activeType)},r.refreshTransformType=function(t){this.activeType=e.TransformType.NULL,this.wireframe.interactiveDirection=new e6,this.wireframe.scaleCorner=void 0,this.wireframe.scaleEdgeCorners=void 0;var n=this.computeTransformType(t);if(n!==e.TransformType.NULL){if(this.activeType=n,this.wireframe.activeType=n,n===e.TransformType.WIDTH_SCALE){var i=this.wireframe.widthScaleAreas.find(function(e){return tM(e,t)});if(i){var r=tv(i,new e6(.5,.5));this.wireframe.scaleCorner=r,this.wireframe.interactiveDirection.copyFrom(r).subtract(this.wireframe.box.getCenter())}}else if(n===e.TransformType.SCALE){var o=this.findScaleCorner(t);if(o&&(this.wireframe.scaleCorner=o.center.clone(),this.wireframe.interactiveDirection.copyFrom(o.center).subtract(this.wireframe.box.getCenter())),!this.wireframe.scaleCorner){var s=this.findScaleEdge(t,this.isSingleTextSelection());if(s){var a=s.getCenter();this.wireframe.scaleCorner=a,this.wireframe.scaleEdgeCorners=[s.start.clone(),s.end.clone()],this.wireframe.interactiveDirection.copyFrom(a).subtract(this.wireframe.box.getCenter())}}}}},r.refreshWireframeBySelectedItems=function(){var n=this,i=this.selectedItems,r=this.scaleEnabled,o=1===i.length&&i[0].type===t.spec.ItemType.text,s=this.interactionEnabled&&!this.hasLoadingSelection(i);this.iconType=1===i.length?this.getIconType(i[0]):"null";var a=new to;this.wireframe.edges=[],this.wireframe.transform=void 0,this.wireframe.scaleCorners=[],this.wireframe.widthScaleAreas=[],this.wireframe.childrenTransforms=[],this.wireframe.cornerEnable=r&&s,this.wireframe.interactive=s,s||(this.activeType=e.TransformType.NULL,this.wireframe.activeType=e.TransformType.NULL);var c=nd.getContainerSize(this._owner.getEngine().canvas.parentElement);if(i.length>1)i.forEach(function(e){if(e.isVisible){var t=t3(e,c),i=t5(e,c);t.isEmpty()||a.union(t),i&&n.wireframe.childrenTransforms.push(i)}}),l=tg(a),this.wireframe.anchor=a.getCenter(),this.wireframe.interactive=s;else if(1===i.length){var l,u,h=i[0];h.isVisible&&(l=t5(h,c),a.copyFrom(t3(h,c)),this.wireframe.anchor=o?a.getCenter():null!=(u=t8(h,c))?u:a.getCenter())}var d=a.isEmpty();this.wireframe.activeType=i.length?this.wireframe.activeType:e.TransformType.NULL,this.wireframe.box.copyFrom(a).expandByScalar(d||o?0:1),this.wireframe.totalBox.copyFrom(a).expandByScalar(d?0:16),this.wireframe.transform=l;var m=l?tx(l):void 0;if(null==m||m.forEach(function(e,t){n.wireframe.edges.push(new tl(e.clone(),m[(t+1)%4].clone()))}),1===i.length&&s){var f=this.config.scaleCircleSize;if(o){if(!m)return;var p=m[1].distance(m[2]);if(p>14){var g=this.boxLocalAxes(),v=g.xAxis,y=g.yAxis,x=p/2-7,w=function(e){return tp(nJ(e,v,y,4,x))},A=[w(new tl(m[1],m[2]).at(.5)),w(new tl(m[3],m[0]).at(.5))];this.wireframe.widthScaleAreas=A.filter(function(e){return!!e})}}null==m||m.forEach(function(e){n.wireframe.scaleCorners.push(new ts(e,f))})}},r.initInteractionPlane=function(t){var n=this.selectedItems;switch(this.wireframe.activeType){case e.TransformType.SCALE:var i=n[0];if(!i){this.resizeSession=void 0;break}var r=this.wireframe,o=r.scaleCorner,s=r.scaleEdgeCorners,a=t9(i),c=new e9().copyFrom(i.transform.anchor).applyMatrix(a.matrix);if(this.interactionPlane=t_(a.position,a.rotation),(null==s?void 0:s.length)===2){var l=new tl(s[0],s[1]).getCenter(),u=this.oppositeScaleEdgeCenter(s);this.resizeSession=u?this.createAnchoredResizeSession(i,a.matrix,c,t,l,u,"edge"):void 0}else if(o){var h=this.oppositeScaleCorner(o);this.resizeSession=h?this.createAnchoredResizeSession(i,a.matrix,c,t,o,h,"corner"):void 0}else this.resizeSession=void 0;break;case e.TransformType.TRANSLATION:this.interactionPlane=t_(new e9,new e1(0,0,0,e2.XYZ));break;case e.TransformType.WIDTH_SCALE:var d=n[0],m=t9(d),f=new e9().copyFrom(d.transform.anchor).applyMatrix(m.matrix),p=this.draggedWidthEdge(this.wireframe.box.getCenter(),this.wireframe.interactiveDirection);this.interactionPlane=t_(m.position,m.rotation);var g=p?this.oppositeScaleEdgeCenter([p.start,p.end]):void 0;this.resizeSession=p&&g?this.createAnchoredResizeSession(d,m.matrix,f,t,p.getCenter(),g,"edge","width"):void 0}},r.draw=function(e){if(!this.wireframe.box.isEmpty()&&"move"!==this._owner.getSelectionTransformKind()){var n=this.config,i=n.wireframeAlpha,r=n.wireframeColor,o=n.wireframeWidth,s=n.cornerFillColor,a=n.cornerLineWidth,c=n.cornerLineColor,l=n.cornerLineAlpha,u=n.infoShowEnabled,h=n.sizeTextColor,d=n.nameTextColor,m=nD(r,i);if(this.wireframe.edges.forEach(function(t){e.drawLine(t.start.x,t.start.y,t.end.x,t.end.y,m,o)}),this.wireframe.childrenTransforms.forEach(function(t){nW(e,tx(t),m,o)}),this.wireframe.cornerEnable){var f=nD(s,1),p=nD(c,l),g=this.boxLocalAxes(),v=g.xAxis,y=g.yAxis;this.wireframe.scaleCorners.forEach(function(t){var n=t.radius;nq(e,t.center,v,y,2*n,2*n,f),nW(e,nJ(t.center,v,y,n,n),p,a)})}var x=1===this.selectedItems.length&&this.selectedItems[0].type===t.spec.ItemType.text;1===this.selectedItems.length&&u&&!x&&this.renderItemInfo(e,h,d)}},r.dispose=function(){null==this.configOff||this.configOff.call(this),this.configOff=void 0,n.prototype.dispose.call(this)},r.isApplicableSelection=function(){var e=this.selectedItems;return e.length>=1&&!this.hasLoadingSelection(e)},r.hasLoadingSelection=function(e){void 0===e&&(e=this.selectedItems);var t=this._owner.getLoadingManager();return e.some(function(e){return void 0!==t.get(e.getInstanceId())})},r.clearHandleHover=function(){this.activeType=e.TransformType.NULL,this.wireframe.activeType=e.TransformType.NULL,this.wireframe.interactiveDirection=new e6,this.wireframe.scaleCorner=void 0,this.wireframe.scaleEdgeCorners=void 0,this.refreshCursorResult(e.TransformType.NULL),this._owner.setCursor(this.cursorResult)},r.updateHandleDrag=function(t){if(!this.handlesActive)return!1;var n=new e6(t.position.x,t.position.y),i=new e6().subtractVectors(n,this.lastPoint);if(!this.wireframe.interactive||0>=i.length())return!0;this._owner.setSelectionTransformKind("resize");var r=this.wireframe,o=r.activeType,s=r.interactiveDirection,a=0;switch(o){case e.TransformType.SCALE:a=this.handleScale(i,s,t);break;case e.TransformType.WIDTH_SCALE:a=this.handleWidthScale(i,s,t)}return this.refreshCursorResult(o,a),this.lastPoint.copyFrom(n),this._owner.emit("actionupdate",{source:this,transformType:this.wireframe.activeType}),!0},r.beginTransformOperation=function(){var e,t=this.cursorPoint.clone();this.initInteractionPlane(t),this.lastWorldPosition=null!=(e=tK(t,nd.getCameraInfo(this._owner.getEngine()),this.interactionPlane,nd.getContainerSize(this._owner.getEngine().canvas.parentElement)))?e:new e9},r.resetTransformOperation=function(){"resize"===this._owner.getSelectionTransformKind()&&this._owner.setSelectionTransformKind("idle"),this.handlesActive=!1,this._owner.getSnapManager().reset(),this.resizeSession=void 0,this.lastPoint=new e6,this.cursorPoint=new e6},r.finishHandleDrag=function(t){var n=new e6(t.position.x,t.position.y),i=new e6().subtractVectors(n,this.lastPoint);this.cursorPoint.add(i),this.wireframe.activeType===e.TransformType.SCALE&&t0(this.selectedItems[0])&&this._owner.emit("framerefreshchildren",{source:this,frameId:this.selectedItems[0].getInstanceId()}),this.refreshAfterPointerUp(t);var r=this.wireframe.activeType;return this.resetTransformOperation(),this._owner.emit("actioncommit",{source:this,transformType:r}),!0},r.refreshAfterPointerUp=function(e){this.refreshTransformType(this.cursorPoint);var t=this.wireframe,n=t.activeType,i=t.interactiveDirection;this.refreshCursorResult(n,tS(i)),this._owner.setCursor(this.cursorResult)},r.getIconType=function(e){if(t$(e))return"frame";if(t0(e))return"effects";if(t4(e))return"group";if(t1(e))return t2(e)?"video":"image";switch(e.type){case t.spec.ItemType.video:return"video";case t.spec.ItemType.text:return"text";default:return"image"}},r.getItemInfoName=function(e){return"生成器"!==e.name?e.name:t2(e)?"视频生成器":"图片生成器"},r.boxLocalAxes=function(){var e=this.wireframe.transform?tx(this.wireframe.transform):void 0;if(!(null==e?void 0:e.length))return{xAxis:new e6(1,0),yAxis:new e6(0,1)};var t=new e6().subtractVectors(e[1],e[0]),n=new e6().subtractVectors(e[3],e[0]);return{xAxis:t.length()>0?t.normalize():new e6(1,0),yAxis:n.length()>0?n.normalize():new e6(0,1)}},r.draggedWidthEdge=function(e,t){var n=this.wireframe.transform?tx(this.wireframe.transform):void 0;if(null==n?void 0:n.length){var i=new tl(n[1],n[2]),r=new tl(n[3],n[0]);return new e6().subtractVectors(i.getCenter(),e).dot(t)>=new e6().subtractVectors(r.getCenter(),e).dot(t)?i:r}},r.isSingleTextSelection=function(){return 1===this.selectedItems.length&&this.selectedItems[0].type===t.spec.ItemType.text},r.findScaleEdge=function(e,t){if(void 0===t&&(t=!1),this.scaleEnabled&&1===this.selectedItems.length){for(var n=0;n<this.wireframe.edges.length;n++)if(!t||n%2!=1){var i=this.wireframe.edges[n];if(i.closestPointToPoint(e,!0).distance(e)<=this.config.scaleCircleSize)return i}}},r.findScaleCorner=function(e){if(this.wireframe.scaleCorners.length){var t=this.boxLocalAxes(),n=t.xAxis,i=t.yAxis;return this.wireframe.scaleCorners.find(function(t){var r=new e6().subtractVectors(e,t.center);return 7>=Math.abs(r.dot(n))&&7>=Math.abs(r.dot(i))})}},r.oppositeScaleEdgeCenter=function(e){var t=this.wireframe.edges;if(2===e.length&&4===t.length){var n=new tl(e[0],e[1]),i=new tl(e[1],e[0]),r=t.findIndex(function(e){return e.equals(n)||e.equals(i)});if(!(r<0))return t[(r+2)%t.length].getCenter()}},r.oppositeScaleCorner=function(e){var t=this.wireframe.transform?tx(this.wireframe.transform):void 0;if(null==t?void 0:t.length){var n=t.findIndex(function(t){return t.equals(e)});return n<0?void 0:t[(n+2)%t.length].clone()}},r.createAnchoredResizeSession=function(e,n,i,r,o,s,a,c){void 0===c&&(c="font");var l,u,h=nd.getCameraInfo(this._owner.getEngine()),d=nd.getContainerSize(this._owner.getEngine().canvas.parentElement),m=tK(o,h,this.interactionPlane,d),f=tK(s,h,this.interactionPlane,d);if(m&&f){var p=new e3().copyFrom(null!=(l=e.transform.getParentMatrix())?l:new e3);p.setPosition(new e9).invert();var g=e.type===t.spec.ItemType.text?e.getComponent(t.TextComponent):void 0,v=t$(e),y=g||v?m.clone().add(f).multiply(.5):i.clone(),x=g?{component:g,mode:c,fontSize:g.textStyle.fontSize,fontOffset:g.textStyle.fontOffset,lineHeight:g.textLayout.lineHeight,width:g.textLayout.width,height:g.textLayout.height}:void 0;return{item:e,handleKind:a,geometry:{initialHandle:m,fixedPoint:f,resizeOrigin:y,worldToLocalRotation:new e3().extractRotation(n).invert()},initialHandleView:o,fixedPointView:s,pointerToHandleView:r.clone().subtract(o),initialPosition:new e9().copyFrom(e.transform.position),initialScale:new e9().copyFrom(e.transform.scale),parentWorldToLocal:p,initialWorldSize:v?t7(e):void 0,initialLocalSize:v?new e6().copyFrom(e.transform.size):void 0,text:x,frameAppliedTranslation:new e9,resizeBehavior:null!=(u=null==this.config.resolveResizeBehavior?void 0:this.config.resolveResizeBehavior.call(this.config,e.getInstanceId()))?u:"scale",externalTranslation:new e9}}},r.getIconUrl=function(e){return({null:"",image:this.config.imageLogoUrl,group:this.config.groupLogoUrl,text:this.config.textLogoUrl,video:this.config.videoLogoUrl,frame:this.config.frameLogoUrl,effects:this.config.effectsLogoUrl})[e]},r.refreshIconSprites=function(e,t){for(var n,i=D([{type:"image",key:"imageLogoUrl"},{type:"group",key:"groupLogoUrl"},{type:"text",key:"textLogoUrl"},{type:"video",key:"videoLogoUrl"},{type:"frame",key:"frameLogoUrl"},{type:"effects",key:"effectsLogoUrl"}]);!(n=i()).done;){var r=n.value,o=r.type,s=r.key;if(e[s]!==t[s]){var a=this.iconTextures.get(o);a&&!a.isDestroyed&&a.offloadData(),this.iconTextures.delete(o),this.iconTexturePromises.delete(o)}}},r.onConfigChange=function(e){this.refreshIconSprites(e.previous,e.current)},r.getIconTexture=function(e,n){var i=this;if("null"!==e){var r=this.iconTextures.get(e);if(r&&!r.isDestroyed)return r;if(!this.iconTexturePromises.has(e)){var o=this.getIconUrl(e);if(!o)return;var s=t.Texture.fromImage(o,n).then(function(t){return i.iconTextures.set(e,t),t});this.iconTexturePromises.set(e,s)}}},r.renderItemInfo=function(e,t,n){var i=this.selectedItems[0],r=this.getItemInfoName(i),o=this.wireframe.transform?tx(this.wireframe.transform):tf(this.wireframe.box),s=Math.round(o[0].distance(o[1])/this.viewScale*this.config.contentRatio/this.config.pixelRatio),a=Math.round(o[1].distance(o[2])/this.viewScale*this.config.contentRatio/this.config.pixelRatio),c=this.getIconTexture(this.iconType,e.engine),l=o[0].clone(),u=new e6;o.forEach(function(e){e.y<l.y&&l.copyFrom(e)});var h=!1;o.forEach(function(e){!e.equals(l)&&(h?e.y-l.y<=u.y-l.y&&u.copyFrom(e):(u.copyFrom(e),h=!0))});var d=l.x<u.x?l:u,m=l.x>u.x?l:u,f=new e6().subtractVectors(m,d).angle(),p=d.distance(m),g=[s,a].map(function(e){return td(e,0)}).join(" * "),v=nH(g);p<2*v&&(g="");var y=" "+r;20+nH(y)+v>p&&(p<2*v?(g="",y=nU(y,p-20)):y=nU(y,p-20-v-5));var x=Math.cos(f),w=Math.sin(f),A=new e6(x,w),M=new e6(-w,x),I=-1-nN(14,nR,void 0,void 0,e.engine.displayServer.pixelRatio);if(c&&!c.isDestroyed&&n_(e,d.clone().subtract(M.clone().multiply(20.5)),A,M,function(){e.drawTexture(0,0,15,15,c)}),g){var C=m.clone(),S=nH(g);n_(e,C,A,M,function(){e.drawText(-S,I,g,14,nD(t,1),nR)})}y&&n_(e,d.clone().add(A.clone().multiply(20)),A,M,function(){e.drawText(0,I,y,14,nD(n,1),nR)})},r.computeTransformType=function(t){if(!this.wireframe.interactive||!this.wireframe.totalBox.containsPoint(t))return e.TransformType.NULL;if(this.scaleEnabled&&this.findScaleCorner(t))return e.TransformType.SCALE;for(var n,i=D(this.wireframe.widthScaleAreas);!(n=i()).done;)if(tM(n.value,t))return e.TransformType.WIDTH_SCALE;return this.scaleEnabled&&this.findScaleEdge(t,this.isSingleTextSelection())?e.TransformType.SCALE:this.wireframe.transform&&tM(this.wireframe.transform,t)?e.TransformType.TRANSLATION:e.TransformType.NULL},r.handleScale=function(e,t,n){var i=this.cursorPoint.add(e).clone();return this.handleAnchoredResize(i,t,n)},r.handleAnchoredResize=function(e,t,n){var i,r=this.resizeSession;if(!r)return tS(t);var o=e.clone().subtract(r.pointerToHandleView),s=this.snapHandlePoint(o),a=s;if("edge"===r.handleKind){var c=new e6().subtractVectors(r.initialHandleView,r.fixedPointView),l=c.length();if(tn(l,0))return tS(t);c.divide(l);var u=new e6().subtractVectors(s,r.fixedPointView).dot(c);a=r.fixedPointView.clone().add(c.multiply(u))}var h=new e6().subtractVectors(a,r.fixedPointView),d=tn(h.length(),0)?t:h,m=tK(a,nd.getCameraInfo(this._owner.getEngine()),this.interactionPlane,nd.getContainerSize(this._owner.getEngine().canvas.parentElement));if(!m)return tS(d);var f=null!=(i=r.resizeBehavior)?i:"scale",p=n$(f),g=t$(r.item)||"resize"===f?!n.shiftPressed:n.shiftPressed,v=r.text?"font"===r.text.mode:"both"===p&&this.isLockScale&&!g,y=function(e,t,n){var i,r=e.initialHandle,o=e.fixedPoint,s=e.resizeOrigin,a=e.worldToLocalRotation,c=n.handleKind,l=n.lockAspectRatio,u=n.lockedAxis,h=new e9().subtractVectors(r,o).applyMatrix(a),d=new e9().subtractVectors(t,o).applyMatrix(a);if("edge"===c){var m=Math.abs(h.x)>=Math.abs(h.y)?0:1,f=h.toArray()[m],p=d.toArray()[m],g=tn(f,0)?1:p/f;i=l?0===m?new e9(g,Math.abs(g),Math.abs(g)):new e9(Math.abs(g),g,Math.abs(g)):0===m?new e9(g,1,1):new e9(1,g,1)}else{var v=tn(h.x,0)?1:d.x/h.x,y=tn(h.y,0)?1:d.y/h.y;i=new e9(v,y,1),l&&(Math.abs(v)>Math.abs(y)?i.y=Math.abs(v)*(y<0?-1:1):i.x=Math.abs(y)*(v<0?-1:1),i.z=Math.max(Math.abs(i.x),Math.abs(i.y)))}"x"===u?i.x=1:"y"===u&&(i.y=1);var x=new e9().subtractVectors(o,s).applyMatrix(a).multiply(i),w=s.clone().add(x.applyMatrix(a.clone().invert()));return{totalScalar:i,totalTranslation:o.clone().subtract(w)}}(r.geometry,m,{handleKind:r.handleKind,lockAspectRatio:v,lockedAxis:"x"===p?"y":"y"===p?"x":void 0});return this.applyAnchoredResize(r,y),this.lastWorldPosition.copyFrom(m),tS(d)},r.applyAnchoredResize=function(e,t){var n=e.item,i=e.initialScale,r=e.initialWorldSize,o=e.initialLocalSize,s=e.text;if(s){if("width"===s.mode){var a=t.totalScalar.x,c=s.width*Math.abs(a);s.component.setTextWidth(c);var l=s.component.getLineCount(s.component.text);s.component.setTextHeight(Math.ceil(s.lineHeight*l));var u=s.width+s.fontOffset,h=c+s.fontOffset,d=tn(u,0)?Math.abs(a):h/u,m=tn(d,0)?0:Math.abs(a)/d;n.transform.setScale(i.x*m,i.y,i.z),this.setResizePosition(e,t.totalTranslation);var f=this._owner.getEngine().sceneServer.compositions[0];null==f||f.gotoAndStop(f.time);return}var p=Math.max(Math.abs(t.totalScalar.x),Math.abs(t.totalScalar.y)),g=Math.max(p,1/s.fontSize),v=Math.max(0,(s.width+s.fontOffset)*g-s.fontOffset),y=s.height*g;s.component.setFontSize(s.fontSize*g),s.component.setLineHeight(s.lineHeight*g),s.component.setTextWidth(v),s.component.setTextHeight(y);var x=p/g;n.transform.setScale(i.x*x,i.y*x,i.z),this.setResizePosition(e,t.totalTranslation);var w=this._owner.getEngine().sceneServer.compositions[0];null==w||w.gotoAndStop(w.time);return}if(t$(n)&&r&&o){var A=t.totalTranslation.clone().subtract(e.frameAppliedTranslation);nk(n,new e6(r.x*t.totalScalar.x,r.y*t.totalScalar.y),A,{localSize:o,worldSize:r}),e.frameAppliedTranslation.copyFrom(t.totalTranslation);return}n.transform.setScale(i.x*t.totalScalar.x,i.y*t.totalScalar.y,i.z*t.totalScalar.z),this.setResizePosition(e,t.totalTranslation)},r.setResizePosition=function(e,t){var n,i,r,o=t.clone().applyMatrix(e.parentWorldToLocal),s=n$(null!=(i=e.resizeBehavior)?i:"scale"),a=null!=(r=e.externalTranslation)?r:e.externalTranslation=new e9;"both"!==s&&e.lastAppliedPosition&&a.add(new e9().subtractVectors(e.item.transform.position,e.lastAppliedPosition));var c=e.initialPosition.clone().add(o).add(a);(n=e.item.transform).setPosition.apply(n,[].concat(c.toArray())),e.lastAppliedPosition=c},r.handleWidthScale=function(e,t,n){var i=this.cursorPoint.add(e).clone();return this.handleAnchoredResize(i,t,n)},r.snapHandlePoint=function(e){var t,n,i=this._owner.getSnapManager();return(i.clearSnappingVisualizations(),i.enabled)?(i.preparePoint(new e6,e),e.clone().subtract(new e6(null!=(t=i.result.x)?t:0,null!=(n=i.result.y)?n:0))):e},tB(i,[{key:"selectedItems",get:function(){return this._owner.getSelection().getSelectedPlayerItems()}},{key:"config",get:function(){return this._owner.getConfigManager().get(nI)}},{key:"isLockScale",get:function(){return this._isLockScale},set:function(e){e!==this.isLockScale&&(this._isLockScale=e)}},{key:"viewScale",get:function(){var e=this._owner.getEngine().sceneServer.compositions[0].camera.getViewportMatrix(),t=new e9;return e.decompose(new e9,new e5,t),e.elements[0]}},{key:"ignoreInteraction",get:function(){return this._ignoreInteraction},set:function(e){e!==this._ignoreInteraction&&(this._ignoreInteraction=e,this.wireframe.cornerEnable=e)}}]),i}(tY),n1=function(n){function i(t,i){var r;return(r=n.call(this,t)||this).resizeSelection=i,r.type=e.GizmoType.CORNER_ROTATION,r.cursorResult={type:e.GestureCursorType.NORMAL,angle:0},r.cursorPoint=new e6,r.lastPoint=new e6,r.rotationAngle=0,r.rotationActive=!1,r.anchor=new e6,r.interactiveDirection=new e6,r.rawRotationAngle=0,r.initialSelectionAngle=0,r.rotationItems=[],r}G(i,n);var r=i.prototype;return r.onMouseMove=function(e){if(this.rotationActive){var n=this.updateRotationDrag(e);this._owner.setCursor(this.cursorResult),n&&e.accept();return}if(!this.isApplicableSelection()){this.clearHover();return}var i=this.refreshHover(this._owner.getMousePosition());e.buttonMask===t.MouseButtonMask.None&&i&&e.accept()},r.onMouseDrag=function(e){if(this.rotationActive){var t=this.updateRotationDrag(e);this._owner.setCursor(this.cursorResult),t&&e.accept()}},r.onMouseDown=function(n){if(this.isApplicableSelection()&&n.buttonIndex===t.MouseButton.Left&&!n.doubleClick){this.resizeSelection.refreshWireframeBySelectedItems();var i=new e6(n.position.x,n.position.y),r=this.refreshHover(i);r&&(this.cursorPoint.copyFrom(i),this.lastPoint.copyFrom(n.position),this.rotationAngle=0,this.rawRotationAngle=0,this.anchor.copyFrom(this.resizeSelection.wireframe.anchor),this.interactiveDirection.copyFrom(r.direction),this.rotationItems=[].concat(this.selectedItems),this.initialSelectionAngle=this.resolveInitialSelectionAngle(),this.rotationActive=!0,this._owner.emit("actionstart",{source:this,transformType:e.TransformType.ROTATION,itemIds:this.rotationItems.map(function(e){return e.getInstanceId()})}),n.accept())}},r.onMouseUp=function(t){if(this.rotationActive){var n=new e6(t.position.x,t.position.y);this.cursorPoint.add(new e6().subtractVectors(n,this.lastPoint)),this.resetOperation(),this._owner.emit("actioncommit",{source:this,transformType:e.TransformType.ROTATION}),this.resizeSelection.refreshWireframeBySelectedItems(),this.refreshHover(this._owner.getMousePosition()),t.accept()}},r.onMouseLeave=function(){if(this.rotationActive){this._owner.setCursor(this.cursorResult);return}this.clearHover()},r.isApplicableSelection=function(){var e=this.selectedItems,t=this._owner.getLoadingManager();return e.length>=1&&e.every(function(e){return void 0===t.get(e.getInstanceId())})},r.updateRotationDrag=function(e){if(!this.rotationActive)return!1;var t=new e6(e.position.x,e.position.y),n=new e6().subtractVectors(t,this.lastPoint);if(!this.resizeSelection.wireframe.interactive)return!0;if(n.length()>0){this._owner.setSelectionTransformKind("resize");var i=new e6().subtractVectors(this.cursorPoint,this.anchor);this.cursorPoint.add(n);var r=tT(i,new e6().subtractVectors(this.cursorPoint,this.anchor))*te;Number.isFinite(r)&&(this.rawRotationAngle+=r),this.lastPoint.copyFrom(t)}return this.applyRotation(e),!0},r.applyRotation=function(t){var n=td(t.shiftPressed?15*Math.round((this.initialSelectionAngle+this.rawRotationAngle)/15)-this.initialSelectionAngle:this.rawRotationAngle,3),i=td(n-this.rotationAngle,3);if(this.setRotationCursor(tS(this.interactiveDirection)+n*e7),0!==i){this._owner.setSelectionTransformKind("resize");var r=new e9(0,0,i);this.rotationItems.forEach(function(e){e.rotate.apply(e,[].concat(r.toArray()))}),this.rotationAngle=n,this._owner.emit("actionupdate",{source:this,transformType:e.TransformType.ROTATION})}},r.resetOperation=function(){"resize"===this._owner.getSelectionTransformKind()&&this._owner.setSelectionTransformKind("idle"),this.rotationActive=!1,this.rotationAngle=0,this.lastPoint.set(0,0),this.cursorPoint.set(0,0),this.anchor.set(0,0),this.interactiveDirection.set(0,0),this.rawRotationAngle=0,this.initialSelectionAngle=0,this.rotationItems=[]},r.findRotationHit=function(e){var t=this.resizeSelection.wireframe;if(t.interactive&&t.totalBox.containsPoint(e)&&t.scaleCorners.length)for(var n,i=this.boxLocalAxes(),r=i.xAxis,o=i.yAxis,s=t.box.getCenter(),a=this.resizeSelection.config.rotationCircleSize,c=D(t.scaleCorners);!(n=c()).done;){var l=n.value,u=new e6().subtractVectors(e,l.center);if(!(7>=Math.abs(u.dot(r))&&7>=Math.abs(u.dot(o)))){var h=new e6().subtractVectors(l.center,s),d=h.dot(r)>=0?1:-1,m=h.dot(o)>=0?1:-1,f=l.center.clone().add(r.clone().multiply(d*a)).add(o.clone().multiply(m*a)),p=new e6().subtractVectors(e,f);if(Math.abs(p.dot(r))<=a&&Math.abs(p.dot(o))<=a)return{direction:h}}}},r.boxLocalAxes=function(){var e=this.resizeSelection.wireframe.transform,t=e?tx(e):void 0;if(!(null==t?void 0:t.length))return{xAxis:new e6(1,0),yAxis:new e6(0,1)};var n=new e6().subtractVectors(t[1],t[0]),i=new e6().subtractVectors(t[3],t[0]);return{xAxis:n.length()>0?n.normalize():new e6(1,0),yAxis:i.length()>0?i.normalize():new e6(0,1)}},r.resolveInitialSelectionAngle=function(){if(0===this.rotationItems.length)return 0;var e=this.rotationItems.map(function(e){return td(t9(e).rotation.z,3)}),t=e[0];return Number.isFinite(t)&&e.every(function(e){return e===t})?t:0},r.refreshHover=function(e){var t=this.findRotationHit(e);if(!t){this.clearHover();return}return this.interactiveDirection.copyFrom(t.direction),this.setRotationCursor(tS(t.direction)),t},r.setRotationCursor=function(t){this.cursorResult={type:e.GestureCursorType.ROTATION,angle:(t+Math.PI/4)*te},this._owner.setCursor(this.cursorResult)},r.clearHover=function(){this.interactiveDirection.set(0,0),this.cursorResult={type:e.GestureCursorType.NORMAL,angle:0},this._owner.setCursor(this.cursorResult)},tB(i,[{key:"selectedItems",get:function(){return this._owner.getSelection().getSelectedPlayerItems()}}]),i}(tY),n2=function(e){function n(){var t;return t=e.apply(this,arguments)||this,t.type="leave-effects-edit",t}return G(n,e),n.prototype.onMouseDown=function(e){if(e.buttonIndex===t.MouseButton.Left){var n=new e6(e.position.x,e.position.y),i=this._owner.getSelection();i.hitTest(n).length>0||i.isPointInEffectsEditScope(n)||(this._owner.resetEditMode(),e.accept())}},n}(tY),n4=function(e){function n(t,n){var i;return void 0===n&&(n=!0),(i=e.call(this,t)||this).deferToHitTarget=n,i.type="box-selection",i.overlay={type:"none",box:new to},i.cursorPoint=new e6,i.startPoint=new e6,i.isBoxSelecting=!1,i.mouseGrabbed=!1,i}G(n,e);var i=n.prototype;return i.onMouseMove=function(e){},i.onMouseDrag=function(e){this.mouseGrabbed&&(this.isBoxSelecting?this.updateGrab(e):e.accept())},i.onMouseDown=function(e){if(e.buttonIndex===t.MouseButton.Left){var n=this.selection.filterSelectedItems(this.selection.hitTest(new e6(e.position.x,e.position.y)));this.deferToHitTarget&&n.length>0||(e.shiftPressed||this.selection.commitSelectedItems([]),this.startPoint.copyFrom(e.position),this.cursorPoint.set(e.position.x,e.position.y),this.isBoxSelecting=!0,this.mouseGrabbed=!0,this._owner.emit("actionstart",{source:this,selectedIds:[].concat(this.selection.getSelectedIds())}),e.accept())}},i.onMouseUp=function(e){if(this.mouseGrabbed){var t=this.isBoxSelecting;this.mouseGrabbed=!1,this.isBoxSelecting=!1,this.overlay.type="none",this.emitMouseUpIfChanged(t),e.accept()}},i.draw=function(e){var t=this.config;this.isBoxSelecting&&"region"===this.overlay.type&&!this.overlay.box.isEmpty()&&(nK(e,this.overlay.box,nD(t.regionWireframeColor,t.regionWireframeAlpha),t.regionWireframeWidth),nZ(e,this.overlay.box,nD(t.regionBoxColor,t.regionBoxAlpha)))},i.updateGrab=function(e){if(this.isBoxSelecting){var n=new e6().addVectors(this.cursorPoint,new e6().subtractVectors(new e6(e.position.x,e.position.y),this.startPoint)),i=new e6().subtractVectors(this.cursorPoint,n),r=new e6().addVectors(this.cursorPoint,n).multiply(.5);i.x=Math.abs(i.x),i.y=Math.abs(i.y);var o=new to().setFromCenterAndSize(r,i);this.overlay.type="region",this.overlay.box=o;var s=[];if(i.length()>0){var a=this._owner.getEngine().sceneServer.compositions[0],c=new Map;if(a)for(var l,u=D(a.items);!(l=u()).done;){var h=l.value;if(ne(h)){var d=this.selection.resolveMarqueeSelectableItem(h);d&&c.set(d.getInstanceId(),d)}}for(var m,f=nd.getContainerSize(this._owner.getEngine().canvas.parentElement),p=new Map,g=new Set,v=D(c.values());!(m=v()).done;){var y=m.value;if(!(this.selection.ignoreIds.includes(y.getInstanceId())||this.selection.ignoreNames.includes(y.name))&&y.type!==t.spec.ItemType.composition){var x=y.getInstanceId(),w=t5(y,f);p.set(x,w),w&&t$(y)&&tx(w).every(function(e){return o.containsPoint(e)})&&g.add(x)}}for(var A,M=D(c.values());!(A=M()).done;){var I=A.value,C=I.getInstanceId(),S=p.get(C);if(S){var T=nn(I);if(!T.some(function(e){return g.has(e.getInstanceId())})){if(t$(I)){g.has(C)&&s.push(C);continue}tA(S,o)&&T.every(function(e){var t=p.get(e.getInstanceId());return!!t&&tA(t,o)})&&s.push(C)}}}}var b=this.selection.filterSelectedItems(s),E=e.shiftPressed?Array.from(new Set([].concat(this.selection.interactionStartSelectedIds,b))):b;this.selection.commitSelectedItems(E),e.accept()}},i.emitMouseUpIfChanged=function(e){void 0===e&&(e=!1),!e&&this.sameIds(this.selection.getSelectedIds(),this.selection.interactionStartSelectedIds)||this._owner.emit("actioncommit",{source:this,selectedIds:[].concat(this.selection.getSelectedIds()),oldSelectedIds:[].concat(this.selection.interactionStartSelectedIds)})},i.sameIds=function(e,t){return e.length===t.length&&e.every(function(e,n){return e===t[n]})},tB(n,[{key:"config",get:function(){return this._owner.getConfigManager().get(nA)}},{key:"selection",get:function(){return this._owner.getSelection()}}]),n}(tY),n3=function(e){function n(){var t;return t=e.apply(this,arguments)||this,t.type="change-selection",t}G(n,e);var i=n.prototype;return i.onMouseMove=function(e){var t=this._owner.getSelection();t.commitHoverTarget(new e6(e.position.x,e.position.y)),this.hoverItemId=t.preSelectedId,e.accept()},i.onMouseDrag=function(e){},i.onMouseDown=function(e){if(this._owner.getSelection().setHoverOverlayTarget(this.hoverItemId),e.buttonIndex===t.MouseButton.Right){var n=[].concat(this._owner.getSelection().getSelectedIds());if(this.resolveContextSelection(e)){var i=[].concat(this._owner.getSelection().getSelectedIds());this._owner.emit("actionstart",{source:this,selectedIds:i}),this._owner.emit("actioncommit",{source:this,selectedIds:i,oldSelectedIds:n})}return}if(e.buttonIndex===t.MouseButton.Left){var r=this._owner.getSelection(),o=new e6(e.position.x,e.position.y),s=r.createHitSnapshot(o),a=[].concat(r.getSelectedIds());r.interactionStartSelectedIds=[].concat(a);var c={initialSelectedIds:a,pressHit:s,pressTarget:s.topmostId,mode:"none",shiftKey:e.shiftPressed},l=this.resolvePressSelection(e,c);l&&(c.mode="immediate",r.commitSelectedItems(l)),this.session=c,this._owner.emit("actionstart",{source:this,selectedIds:[].concat(this._owner.getSelection().getSelectedIds())}),e.accept()}},i.onMouseUp=function(e){var t=this.session,n=this._owner.getSelection();if(e.isCanceled()){this.resetSession(),t&&e.accept();return}if(t){e.accept();var i=new e6(e.position.x,e.position.y);if("deferred"===t.mode&&t.deferredTarget){var r=n.createHitSnapshot(i);nr(this._owner.getEngine().sceneServer.compositions[0],t.deferredTarget)&&r.topmostId===t.deferredTarget&&n.commitSelectedItems([t.deferredTarget])}else if("none"===t.mode&&!t.shiftKey&&t.pressHit.drillTargetId&&t.pressHit.drillTargetId!==t.pressTarget){var o=n.createHitSnapshot(i),s=t.pressHit.drillTargetId;nr(this._owner.getEngine().sceneServer.compositions[0],s)&&o.drillTargetId===s&&n.commitSelectedItems([s])}else!t.pressTarget&&!t.shiftKey&&n.getFocusedGroupId()&&!n.isPointInFocusedGroup(i)&&n.setFocusedGroup(null);this.resetSession(),this._owner.emit("actioncommit",{source:this,selectedIds:[].concat(this._owner.getSelection().getSelectedIds()),oldSelectedIds:t.initialSelectedIds})}},i.dispose=function(){this.hoverItemId=void 0,this.resetSession(),e.prototype.dispose.call(this)},i.resolvePressSelection=function(e,t){var n=this._owner.getSelection(),i=t.initialSelectedIds,r=t.pressTarget;if(e.doubleClick&&!e.shiftPressed&&t.pressHit.drillTargetId)return[t.pressHit.drillTargetId];if(e.shiftPressed){if(!r)return;return i.includes(r)?i.filter(function(e){return e!==r}):[].concat(i,[r])}if(!r)return this._owner.getSelection().isPointInSelectedViewBox(t.pressHit.point)?void 0:[];if(t.pressHit.selectedScopeHitIds.includes(r)||t.pressHit.selectedScopeHitIds.length>0){n.isItemSelected(r)||(t.mode="deferred",t.deferredTarget=r);return}return[r]},i.resolveContextSelection=function(e){var t=this,n=this._owner.getSelection(),i=n.createHitSnapshot(new e6(e.position.x,e.position.y)).topmostId,r=[].concat(n.getSelectedIds()),o=new Set([].concat(r,r.flatMap(function(e){var n=nr(t._owner.getEngine().sceneServer.compositions[0],e);return n?ni(n).map(function(e){return e.getInstanceId()}):[]})));return!!i&&!o.has(i)&&n.commitSelectedItems(e.shiftPressed?[].concat(r,[i]):[i])},i.resetSession=function(){this.session=void 0},n}(tY);function n5(e){var n=new t.InputEventMouseButton;return n.device=e.device,n.pressed=e.pressed,n.canceled=e.isCanceled(),n.commandOrControlAutoremap=e.commandOrControlAutoremap,n.shiftPressed=e.shiftPressed,n.altPressed=e.altPressed,n.metaPressed=e.metaPressed,n.ctrlPressed=e.ctrlPressed,n.buttonMask=e.buttonMask,n.position.copyFrom(e.position),n.globalPosition.copyFrom(e.globalPosition),n.factor=e.factor,n.buttonIndex=e.buttonIndex,n.doubleClick=e.doubleClick,n}var n8=function(e){function t(t,n){var i;return(i=e.call(this,t)||this).type="click-drag-multiplex",i.clickCandidateList=[].concat(n.clickCandidates),i.dragCandidateList=[].concat(n.dragCandidates),i.auxiliaryBehaviorGizmo=n.auxiliaryBehavior,i}G(t,e);var n=t.prototype;return n.clickCandidates=function(){return this.clickCandidateList},n.dragCandidates=function(){return this.dragCandidateList},n.auxiliaryBehavior=function(){return this.auxiliaryBehaviorGizmo},n.onMouseDown=function(e){var t=this.invokeMouseDown(this.clickCandidateList,e);t&&(this.clickWinner=t),this.downSnapshot=n5(e),this.dragWinner=void 0},n.onMouseMove=function(e){for(var t,n=D(this.clickCandidateList);!(t=n()).done;){var i=t.value;this.invoke(i,e,"move")}this.dragWinner=void 0},n.onMouseDrag=function(e){for(var t,n=D(this.clickCandidateList);!(t=n()).done;){var i=t.value;if(this.invoke(i,e,"drag"))return}if(this.downSnapshot){if(!this.dragWinner){if(this.downSnapshot.clearAccepted(),("undefined"!=typeof navigator&&/Mac|iPhone|iPad|iPod/.test(navigator.platform)?e.metaPressed:e.ctrlPressed)&&(this.dragWinner=this.resolveDragCandidate(this.auxiliaryBehaviorGizmo)),!this.dragWinner)for(var r,o=D(this.dragCandidateList);!(r=o()).done;){var s=r.value;if(this.dragWinner=this.resolveDragCandidate(s),this.dragWinner)break}if(!this.dragWinner)return;for(var a,c,l=((a=n5(this.downSnapshot)).pressed=!1,a.canceled=!0,a.buttonMask=e.buttonMask,a.position.copyFrom(e.position),a.shiftPressed=e.shiftPressed,a.altPressed=e.altPressed,a.metaPressed=e.metaPressed,a.ctrlPressed=e.ctrlPressed,a),u=D(this.clickCandidateList);!(c=u()).done;){var h=c.value;this.invoke(h,l,"up")}}this.invoke(this.dragWinner,e,"drag")}},n.onMouseUp=function(e){if(this.clickWinner&&(this.clickWinner=void 0),this.dragWinner)this.invoke(this.dragWinner,e,"up"),this.dragWinner=void 0;else for(var t,n=D(this.clickCandidateList);!(t=n()).done;){var i=t.value;if(this.invoke(i,e,"up"))break}},n.onUpdate=function(){for(var e,t=D([].concat(this.clickCandidateList,this.dragCandidateList));!(e=t()).done;)e.value.onUpdate()},n.draw=function(e){var t=[].concat(this.clickCandidateList,this.dragCandidateList);this.auxiliaryBehaviorGizmo&&t.push(this.auxiliaryBehaviorGizmo);for(var n,i=D(t);!(n=i()).done;)n.value.draw(e)},n.dispose=function(){this.clearWinners(),this.downSnapshot=void 0;for(var t,n=D(this.allChildren());!(t=n()).done;)t.value.dispose();e.prototype.dispose.call(this)},n.invokeMouseDown=function(e,t){for(var n,i=D(e);!(n=i()).done;){var r=n.value;if(this.invoke(r,t,"down"))return r}},n.resolveDragCandidate=function(e){if(e&&this.downSnapshot)return this.invoke(e,this.downSnapshot,"down")?e:void 0},n.allChildren=function(){var e=[].concat(this.clickCandidateList,this.dragCandidateList);return this.auxiliaryBehaviorGizmo&&e.push(this.auxiliaryBehaviorGizmo),e},n.clearWinners=function(){this.dragWinner=void 0,this.clickWinner&&(this.clickWinner=void 0)},n.invoke=function(e,t,n){switch(n){case"down":e.onMouseDown(t);break;case"move":e.onMouseMove(t);break;case"drag":e.onMouseDrag(t);break;case"up":e.onMouseUp(t)}return t.isAccepted()},t}(tY);function n6(e){for(var t,n=new Map,i=D(e);!(t=i()).done;){var r,o=t.value,s=null!=(r=o.row)?r:0,a=n.get(s);a?a.push(o):n.set(s,[o])}return n}function n9(e){var t;if((null==(t=e.rowChange)?void 0:t.isRowChange)&&e.rowChange.rowBounds){var n=e.rowChange.rowBounds,i=e.rowChange.toRow<e.rowChange.fromRow?n.minY:n.maxY;return new tl(new e6(n.minX-20,i),new e6(n.maxX+20,i))}if(e.box){var r=e.box;return"before"===e.direction?new tl(new e6(r.min.x-5,r.min.y-10),new e6(r.min.x-5,r.max.y+10)):new tl(new e6(r.max.x+5,r.min.y-10),new e6(r.max.x+5,r.max.y+10))}return new tl}function n7(e,t){if(0===t.length)return{row:0,column:0};for(var n,i,r=e.y,o=e.x,s=n6(t.map(function(e){var t;return X({},e,{row:(null==(t=e.layoutInfo)?void 0:t.row)!==void 0?Math.floor(e.layoutInfo.row):0})})),a=0,c=0,l=D(s.keys());!(i=l()).done;){var u=i.value;a=Math.max(a,u),c=Math.min(c,u)}for(var h,d=[],m=D(s);!(h=m()).done;){var f,p,g=h.value,v=g[0],y=g[1],x=(f=Math).min.apply(f,[].concat(y.map(function(e){return e.box.min.y}))),w=(p=Math).max.apply(p,[].concat(y.map(function(e){return e.box.max.y}))),A=(x+w)/2,M=w-x;d.push({row:v,centerY:A,minY:x,maxY:w,height:M})}d.sort(function(e,t){return e.centerY-t.centerY});for(var I,C=0,S=!1,T=D(d);!(I=T()).done;){var b=I.value;if(r>=b.minY&&r<=b.maxY){C=b.row,S=!0;break}}if(!S&&d.length>0){var E=d[0];E&&r<E.minY&&(C=c-1,S=!0)}if(!S&&d.length>0){var P=d[d.length-1];P&&r>P.maxY&&(C=a+1,S=!0)}if(!S)for(var z,B=1/0,G=D(d);!(z=G()).done;){var L=z.value,k=Math.abs(r-L.centerY);k<B&&(B=k,C=L.row)}var R=null!=(n=s.get(C))?n:[];if(0===R.length)return{row:C,column:0};R.sort(function(e,t){return e.center.x-t.center.x});for(var F=0;F<R.length;F++){var V=R[F];if(V&&o<V.center.x)return{row:C,column:F}}return{row:C,column:R.length}}function ie(e,t,n,i){var r=e.x,o=e.y;if(0===t.length)return{index:0,direction:"after",row:-1,column:0};for(var s,a=n6(t),c=new Map,l=D(a);!(s=l()).done;){var u,h,d,m,f=s.value,p=f[0],g=f[1],v=(u=Math).min.apply(u,[].concat(g.map(function(e){return e.box.min.y}))),y=(h=Math).max.apply(h,[].concat(g.map(function(e){return e.box.max.y}))),x=(d=Math).min.apply(d,[].concat(g.map(function(e){return e.box.min.x}))),w=(m=Math).max.apply(m,[].concat(g.map(function(e){return e.box.max.x})));c.set(p,{minY:v,maxY:y,minX:x,maxX:w})}for(var A,M=Array.from(a.keys()).sort(function(e,t){return e-t}),I=-1,C=D(M);!(A=C()).done;){var S=A.value,T=c.get(S);if(T&&o>=T.minY&&o<=T.maxY){I=S;break}}if(-1===I&&M.length>0){var b=M[0];if(void 0===b)I=-1;else{var E,P=c.get(b);I=P&&o<P.minY?-1:null!=(E=M[M.length-1])?E:-1}}var z=c.get(i),B=I!==i,G=null!=(L=a.get(I))?L:[];if(0===G.length){for(var L,k,R=null,F=D(a);!(k=F()).done;){var V=k.value,O=V[0],Y=V[1];if(O>I&&Y.length>0){var N=Y[0];if(N){R=N.id;break}}}if(!R){var H,U,j,W=M[M.length-1],Q=void 0!==W&&null!=(U=a.get(W))?U:[];R=null!=(j=null==(H=Q[Q.length-1])?void 0:H.id)?j:null}if(R){var K,Z,X,J=n.indexOf(R);if(-1!==J)return{index:-1===I?J:J+1,direction:-1===I?"before":"after",siblingId:R,row:I,column:-1===I?0:null!=(X=null==(K=a.get(I))?void 0:K.length)?X:0,rowChange:B&&z?{fromRow:i,toRow:I,rowBounds:z,isRowChange:B}:void 0,box:null==(Z=t.find(function(e){return e.id===R}))?void 0:Z.box}}return{index:0,direction:"after",row:I,column:0,rowChange:B&&z?{fromRow:i,toRow:I,rowBounds:z,isRowChange:B}:void 0}}G.sort(function(e,t){return e.centerX-t.centerX});for(var q,_=D(G);!(q=_()).done;){var $=q.value;if(r<$.centerX){var ee=n.indexOf($.id);if(-1!==ee)return{index:ee,direction:"before",siblingId:$.id,row:I,column:$.column,rowChange:B&&z?{fromRow:i,toRow:I,rowBounds:z,isRowChange:!0}:void 0,box:$.box}}}var et=G[G.length-1];if(et){var en=n.indexOf(et.id);if(-1!==en)return{index:en+1,direction:"after",siblingId:et.id,row:I,column:et.column+1,rowChange:B&&z?{fromRow:i,toRow:I,rowBounds:z,isRowChange:!0}:void 0,box:et.box}}return{index:0,direction:"after",row:-1,column:0,rowChange:B&&z?{fromRow:i,toRow:I,rowBounds:z,isRowChange:!0}:void 0}}e.FrameLayoutMode=void 0,(p=e.FrameLayoutMode||(e.FrameLayoutMode={})).AUTO="auto",p.FREE="free";var it=function(){function t(e){this.selectedItems=[],this.selectedFrameIds=new Set,this.currentFrameIds=new Map,this.pendingGroupDetaches=new Map,this.autoLayoutIndicator=null,this.autoLayoutDragOriginalPosition=null,this.autoLayoutDragFrameId=null,this.autoLayoutDragItemId=null,this.pendingLayoutPosition=null,this.owner=e,this.engine=e.getEngine()}var n=t.prototype;return n.begin=function(e){this.cancel(),this.selectedItems=[].concat(e);for(var t,n=D(e);!(t=n()).done;){var i,r=t.value,o=r.getInstanceId();t$(r)&&this.selectedFrameIds.add(o);var s=null==(i=this.owner.getFrameManager().getParentFrame(o))?void 0:i.id;this.currentFrameIds.set(o,s)}},n.resolveReparent=function(e){var t=this.owner.getFrameManager();t.updateViewBoxes();for(var n,i,r=t.getViewInfos(),o=nd.getContainerSize(this.engine.canvas.parentElement),s=[],a=D(this.selectedItems);!(i=a()).done;){var c=i.value,l=this.resolveItemReparent(c,e,r,o);l.change&&s.push(l.change),void 0!==l.targetFrameId&&(n=l.targetFrameId)}return this.targetFrameId=n,s},n.updateAutoLayout=function(t){var n=1===this.selectedItems.length?this.selectedItems[0]:void 0;if(!n||t$(n)||t0(n)){this.clearAutoLayoutVisualState();return}var i=this.owner.getFrameManager().findFrameAt(t);if((null==i?void 0:i.layoutMode)!==e.FrameLayoutMode.AUTO){this.clearAutoLayoutVisualState();return}var r=i.id,o=n.getInstanceId();if(null===this.autoLayoutDragOriginalPosition||this.autoLayoutDragFrameId!==r||this.autoLayoutDragItemId!==o){var s,a,c,l=null==(s=i.layoutInfos)?void 0:s[o];this.autoLayoutDragOriginalPosition={row:null!=(a=null==l?void 0:l.row)?a:0,column:null!=(c=null==l?void 0:l.column)?c:0},this.autoLayoutDragFrameId=r,this.autoLayoutDragItemId=o}var u=nd.getContainerSize(this.engine.canvas.parentElement),h=this.engine.sceneServer.compositions[0],d=i.children.reduce(function(e,t){if(t===o)return e;var n,r,s=nr(h,t);if(!s)return e;var a=t3(s,u);if(a.isEmpty())return e;var c=null!=(r=null==(n=i.layoutInfos)?void 0:n[t])?r:{row:0,column:0};return e.push({id:t,box:a,center:a.getCenter(),centerX:a.getCenter().x,layoutInfo:c,row:c.row,column:c.column}),e},[]),m=n7(t,d);if(!m){this.autoLayoutIndicator=null,this.pendingLayoutPosition=null;return}this.pendingLayoutPosition=X({},m);var f=ie(t,d,i.children,this.autoLayoutDragOriginalPosition.row),p=f.siblingId?n9(f):this.createFallbackIndicatorLine(i.box,m);this.autoLayoutIndicator={frameId:r,insertIndex:f.siblingId?f.index:i.children.length,insertDirection:f.siblingId?f.direction:"after",targetSiblingId:f.siblingId,line:p,targetRow:m.row,targetColumn:m.column}},n.finish=function(){for(var e,t,n=[],i=D(this.pendingGroupDetaches.values());!(t=i()).done;){var r=t.value;r.childrenOutOfFrame.length>0&&n.push({type:"detachGroupChildren",groupId:r.groupId,itemIds:[].concat(r.childrenOutOfFrame),originalFrameId:r.frameId})}return this.autoLayoutDragFrameId&&this.autoLayoutDragItemId&&this.autoLayoutDragOriginalPosition&&this.pendingLayoutPosition&&(e={frameId:this.autoLayoutDragFrameId,draggedItemId:this.autoLayoutDragItemId,fromRow:this.autoLayoutDragOriginalPosition.row,fromColumn:this.autoLayoutDragOriginalPosition.column,toRow:this.pendingLayoutPosition.row,toColumn:this.pendingLayoutPosition.column}),{placementChanges:n,autoLayoutChange:e}},n.draw=function(e){if(this.targetFrameId){var t=this.owner.getFrameManager().getViewInfo(this.targetFrameId);(null==t?void 0:t.box)&&!t.box.isEmpty()&&nW(e,tf(t.box),nD(16711680,1),1)}var n=this.autoLayoutIndicator;if(n&&0!==n.line.distanceSq()){var i=nD(3900150,1),r=n.line,o=r.start,s=r.end;e.drawLine(o.x,o.y,s.x,s.y,i,2),e.fillCircle(o.x,o.y,3,i),e.fillCircle(s.x,s.y,3,i)}},n.cancel=function(){this.selectedItems=[],this.selectedFrameIds.clear(),this.currentFrameIds.clear(),this.pendingGroupDetaches.clear(),this.targetFrameId=void 0,this.clearAutoLayoutState()},n.resolveItemReparent=function(e,t,n,i){var r=this;if(t$(e)||t0(e))return{};var o=e.getInstanceId(),s=this.currentFrameIds.get(o),a=n.find(function(e){return e.id===s}),c=n.find(function(e){return!r.selectedFrameIds.has(e.id)&&e.box.containsPoint(t)});if(!c&&a){var l=[o];return t4(e)&&l.push.apply(l,[].concat(ni(e).map(function(e){return e.getInstanceId()}))),this.pendingGroupDetaches.delete(o),this.currentFrameIds.set(o,void 0),{change:{type:"moveOut",itemIds:l,originalFrameId:a.id}}}if(!c||(null==a?void 0:a.id)===c.id)return{targetFrameId:null==c?void 0:c.id};var u=[o];if(t4(e)){var h=ni(e);if(u.push.apply(u,[].concat(h.map(function(e){return e.getInstanceId()}))),h.length>0){for(var d,m=[],f=[],p=D(h);!(d=p()).done;){var g=d.value,v=t3(g,i);!v.isEmpty()&&c.box.intersectsBox(v)?m.push(g.getInstanceId()):f.push(g.getInstanceId())}if(0===m.length)return this.pendingGroupDetaches.delete(o),{};f.length>0?this.pendingGroupDetaches.set(o,{groupId:o,frameId:c.id,childrenOutOfFrame:f}):this.pendingGroupDetaches.delete(o)}}return this.currentFrameIds.set(o,c.id),{targetFrameId:c.id,change:{type:"moveIn",itemIds:u,targetFrameId:c.id}}},n.clearAutoLayoutVisualState=function(){this.autoLayoutIndicator=null,this.pendingLayoutPosition=null},n.clearAutoLayoutState=function(){this.clearAutoLayoutVisualState(),this.autoLayoutDragOriginalPosition=null,this.autoLayoutDragFrameId=null,this.autoLayoutDragItemId=null},n.createFallbackIndicatorLine=function(e,t){if(e.isEmpty())return new tl;var n=Math.min(e.min.x+10,e.max.x),i=Math.max(e.max.x-10,e.min.x),r=Math.min(e.min.y+10,e.max.y),o=Math.max(e.max.y-10,e.min.y);if(t.row<0)return new tl(new e6(n,r),new e6(i,r));if(t.row>0&&0===t.column)return new tl(new e6(n,o),new e6(i,o));var s=t.column<=0?n:i;return new tl(new e6(s,r),new e6(s,o))},t}(),ii=function(n){function i(){var e;return e=n.apply(this,arguments)||this,e.type="move-selection",e.active=!1,e.selectedItems=[],e.selectionBox=new to,e.startPoint=new e6,e.lastPoint=new e6,e.cursorPoint=new e6,e.lastWorldPosition=new e9,e}G(i,n);var r=i.prototype;return r.onMouseDown=function(n){if(n.buttonIndex===t.MouseButton.Left&&!n.doubleClick&&!n.shiftPressed){var i=new e6(n.position.x,n.position.y);if(this._owner.getSelection().isPointInSelectedViewBox(i)){var r=this._owner.getSelection().getSelectedPlayerItems();0!==r.length&&(this.selectedItems=[].concat(r),this.cursorPoint.copyFrom(i),this.active=!0,this.startPoint=new e6(n.position.x,n.position.y),this.lastPoint.copyFrom(this.startPoint),this._owner.setSelectionTransformKind("move"),this._owner.emit("actionstart",{source:this,transformType:e.TransformType.TRANSLATION,itemIds:this.selectedItems.map(function(e){return e.getInstanceId()})}),this.assistedLayout=new it(this._owner),this.assistedLayout.begin(this.selectedItems),n.accept())}}},r.onMouseMove=function(e){},r.onMouseDrag=function(t){if(this.active){var n=new e6(t.position.x,t.position.y);this._owner.setCursor({type:e.GestureCursorType.NORMAL,angle:0});var i=new e6().subtractVectors(n,this.lastPoint);if(this.applyTranslation(i)){this.lastPoint.copyFrom(n);for(var r,o,s,a,c=new e6(t.position.x,t.position.y),l=null!=(s=null==(r=this.assistedLayout)?void 0:r.resolveReparent(c))?s:[],u=D(l);!(a=u()).done;){var h=a.value;this._owner.emit("placementchange",X({source:this},h))}l.length>0&&this.cacheSnapTargets(),null==(o=this.assistedLayout)||o.updateAutoLayout(c),this._owner.emit("actionupdate",{source:this,transformType:e.TransformType.TRANSLATION})}t.accept()}},r.onMouseUp=function(t){if(this.active){for(var n,i,r,o=null==(n=this.assistedLayout)?void 0:n.finish(),s=D(null!=(i=null==o?void 0:o.placementChanges)?i:[]);!(r=s()).done;){var a=r.value;this._owner.emit("placementchange",X({source:this},a))}var c={source:this,transformType:e.TransformType.TRANSLATION,autoLayoutChange:null==o?void 0:o.autoLayoutChange};this._owner.emit("actioncommit",c),this.resetDragState(),t.accept()}},r.draw=function(e){var t;null==(t=this.assistedLayout)||t.draw(e)},r.applyTranslation=function(e){if(0>=e.length()||!this.interactionPlane&&!this.prepareTranslationGeometry())return!1;var t=e.clone(),n=nd.getContainerSize(this._owner.getEngine().canvas.parentElement),i=this.computeSelectionBox(n);if(i.isEmpty())return!1;if(this.selectionBox.copyFrom(i),this._owner.getSnapManager().enabled){var r,o,s,a,c=new e6(null!=(r=this._owner.getSnapManager().result.x)?r:0,null!=(o=this._owner.getSnapManager().result.y)?o:0);this._owner.getSnapManager().prepareBox(t,this.selectionBox);var l=new e6(null!=(s=this._owner.getSnapManager().result.x)?s:0,null!=(a=this._owner.getSnapManager().result.y)?a:0);t.add(c).subtract(l)}var u=tK(this.cursorPoint.add(t).clone(),nd.getCameraInfo(this._owner.getEngine()),this.interactionPlane,n);if(!u)return!1;var h=u.clone().subtract(this.lastWorldPosition);h.x=td(h.x,5),h.y=td(h.y,5),h.z=td(h.z,5);for(var d,m=D(this.selectedItems);!(d=m()).done;){var f,p=d.value,g=new e3().copyFrom(null!=(f=p.transform.getParentMatrix())?f:new e3);g.setPosition(new e9);var v=h.clone().applyMatrix(g.invert());p.translate.apply(p,[].concat(v.toArray())),p.transform.updateLocalMatrix()}return this.lastWorldPosition.copyFrom(u),!0},r.prepareTranslationGeometry=function(){var e,t=nd.getContainerSize(this._owner.getEngine().canvas.parentElement),n=this.computeSelectionBox(t);return!n.isEmpty()&&(this.selectionBox.copyFrom(n),this.cacheSnapTargets(t),this.interactionPlane=t_(new e9,new e1(0,0,0,e2.XYZ)),this.lastWorldPosition=null!=(e=tK(this.cursorPoint,nd.getCameraInfo(this._owner.getEngine()),this.interactionPlane,t))?e:new e9,!0)},r.computeSelectionBox=function(e){for(var t,n=new to,i=D(this.selectedItems);!(t=i()).done;){var r=t.value;if(r.isVisible){var o=t3(r,e);o.isEmpty()||n.union(o)}}return n},r.cacheSnapTargets=function(e){var t,n,i=this._owner.getSnapManager();if(i.enabled){var r=this._owner.getEngine();i.cacheSnapTargetsForSelection(null!=(n=null==(t=r.sceneServer.compositions[0])?void 0:t.items)?n:[],this.selectedItems,null!=e?e:nd.getContainerSize(r.canvas.parentElement))}},r.resetDragState=function(){var e;"move"===this._owner.getSelectionTransformKind()&&this._owner.setSelectionTransformKind("idle"),this.active=!1,this.selectedItems=[],this.selectionBox=new to,this.interactionPlane=void 0,this.startPoint=new e6,this.lastPoint=new e6,this.cursorPoint=new e6,this.lastWorldPosition=new e9,null==(e=this.assistedLayout)||e.cancel(),this.assistedLayout=void 0,this._owner.getSnapManager().reset()},i}(tY);function ir(e,t){void 0===t&&(t={});var n=!1===t.allowTransform?[new n4(e)]:[new ii(e),new n4(e)];return new n8(e,{clickCandidates:[new n3(e)],dragCandidates:n,auxiliaryBehavior:new n4(e,!1)})}var io=function(){function e(e,t,n){void 0===n&&(n={}),this.owner=e,this.effectsItemId=t,this.id="effects-edit",this.allowTransform=!1!==n.allowTransform}var t=e.prototype;return t.canRemainActiveForTool=function(e){return O(e,tO)||O(e,tD)},t.onEnter=function(){this.owner.getSelection().enterEffectsEditScope(this.effectsItemId)},t.onExit=function(){var e=this.owner.getSelection();e.leaveEffectsEditScope(),nr(this.owner.getEngine().sceneServer.compositions[0],this.effectsItemId)?e.commitSelectedItems([this.effectsItemId]):e.clearSelectedItems()},t.createGizmos=function(){var e=new n0(this.owner,{interactive:this.allowTransform}),t=this.allowTransform?new n1(this.owner,e):void 0;return[].concat(t?[t]:[],[e,new n2(this.owner),ir(this.owner,{allowTransform:this.allowTransform})])},e}(),is=function(e){function n(){var t;return t=e.apply(this,arguments)||this,t.type="leave-text-edit",t}return G(n,e),n.prototype.onMouseDown=function(e){e.buttonIndex===t.MouseButton.Left&&(this._owner.resetEditMode(),e.accept())},n}(tY);function ia(e){if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}var ic=function(n){function i(t,i){var r;return(r=n.call(this,t)||this).type=e.GizmoType.TEXT,r.result={type:"empty"},r.projectionToken={},r.forwardTextInput=function(e){r._owner.emit("textinput",X({source:ia(r)},e))},r.session=i,r.session.attachProjection(r.projectionToken),r.session.on("textInput",r.forwardTextInput),r}G(i,n);var r=i.prototype;return r.onMouseDown=function(e){},r.onMouseUp=function(e){this.isEditing&&e.accept()},r.onUpdate=function(){var e=this.session.editingItem;if((null==e?void 0:e.type)!==t.spec.ItemType.text||!e.isVisible){this.result={type:"empty"},this.textAreaElement.style.display="none";return}var n=nd.getContainerSize(this._owner.getEngine().canvas.parentElement),i=t3(e,n),r=t5(e,n);this.result=!r||i.isEmpty()?{type:"empty"}:{type:"valid",box:i,transform:r}},r.draw=function(e){this.drawEditBox(e),this.session.syncTextArea(this.result,this.viewScale)},r.selectAllText=function(){return this.session.selectAllText()},r.dispose=function(){this.session.off("textInput",this.forwardTextInput),this.session.detachProjection(this.projectionToken),n.prototype.dispose.call(this)},r.drawEditBox=function(e){e&&"valid"===this.result.type&&nW(e,tx(this.result.transform),nD(3900150,1),2)},tB(i,[{key:"textAreaElement",get:function(){return this.session.textAreaElement}},{key:"interactionParam",get:function(){return this.session.interactionParam}},{key:"isEditing",get:function(){return this.session.isEditing}},{key:"viewScale",get:function(){return this._owner.getEngine().sceneServer.compositions[0].camera.getViewportMatrix().elements[0]}}]),i}(tY),il=function(n){function i(e,t){var i;return(i=n.call(this,e)||this).session=t,i.type="select-text",i.pointerSelecting=!1,i}G(i,n);var r=i.prototype;return r.onMouseMove=function(e){if(this.pointerSelecting&&(e.buttonMask&t.MouseButtonMask.Left)!=0){this.session.updatePointerSelection({x:e.position.x,y:e.position.y}),this.setTextCursor(e),e.accept();return}var n=this.resolveTextTarget(new e6(e.position.x,e.position.y),!0);if(!n){this.clearHover();return}this._hoverTextId=n.getInstanceId(),this.setTextCursor(e),e.accept()},r.onMouseDown=function(e){if(e.buttonIndex===t.MouseButton.Left){var n=this.resolveTextTarget(new e6(e.position.x,e.position.y),!1,!1);n&&this.session.retarget(n,"focus")&&(this._hoverTextId=void 0,this.pointerSelecting=!0,this.session.beginPointerSelection({x:e.position.x,y:e.position.y}),this._owner.getSelection().commitSelectedItems([n.getInstanceId()]),this.setTextCursor(e),e.accept())}},r.onMouseDrag=function(e){this.pointerSelecting&&(this.session.updatePointerSelection({x:e.position.x,y:e.position.y}),this.setTextCursor(e),e.accept())},r.onMouseUp=function(e){this.pointerSelecting&&(this.session.finishPointerSelection({x:e.position.x,y:e.position.y}),this.pointerSelecting=!1,this._hoverTextId=void 0,this.setTextCursor(e),e.accept())},r.onMouseLeave=function(){this.clearHover(),this._owner.setCursor({type:e.GestureCursorType.NORMAL,angle:0})},r.onUpdate=function(){if(this._hoverTextId){var e=nr(this._owner.getEngine().sceneServer.compositions[0],this._hoverTextId);this.isTextCandidate(e,!0)||this.clearHover()}},r.draw=function(e){if(this._hoverTextId){var t=nr(this._owner.getEngine().sceneServer.compositions[0],this._hoverTextId);if(this.isTextCandidate(t,!0)){var n=t5(t,nd.getContainerSize(this._owner.getEngine().canvas.parentElement));n&&nQ(e,tx(n),nD(3900150,1),i.HOVER_LINE_WIDTH,i.HOVER_DASH_LENGTH,i.HOVER_GAP_LENGTH)}}},r.dispose=function(){this.pointerSelecting=!1,this.session.cancelPointerSelection(),this.clearHover(),n.prototype.dispose.call(this)},r.resolveTextTarget=function(e,t,n){var r=this;void 0===n&&(n=!0);for(var o,s=i.HOVER_HIT_RADIUS,a=s/Math.SQRT2,c=n?[[0,0],[s,0],[-s,0],[0,s],[0,-s],[a,a],[a,-a],[-a,a],[-a,-a]]:[[0,0]],l=this._owner.getEngine().sceneServer.compositions[0],u=D(c);!(o=u()).done;){var h=o.value,d=h[0],m=h[1],f=new e6(e.x+d,e.y+m),p=this._owner.getSelection().hitTest(f).map(function(e){return nr(l,e)}).find(function(e){return r.isTextCandidate(e,t)});if(p)return p}},r.isTextCandidate=function(e,n){return!!e&&e.isVisible&&e.type===t.spec.ItemType.text&&!!e.getComponent(t.TextComponent)&&(!n||e!==this.session.editingItem)},r.clearHover=function(){this._hoverTextId=void 0},r.setTextCursor=function(t){this._owner.setCursor({type:e.GestureCursorType.TEXT,angle:0})},tB(i,[{key:"hoverTextId",get:function(){return this._hoverTextId}}]),i}(tY);il.HOVER_HIT_RADIUS=4,il.HOVER_LINE_WIDTH=1,il.HOVER_DASH_LENGTH=4,il.HOVER_GAP_LENGTH=4;var iu=function(){function e(e,t,n){void 0===n&&(n="focus"),this.owner=e,this.target=t,this.activation=n,this.id="text-edit",this.session=new tF(e)}var t=e.prototype;return t.canRemainActiveForTool=function(e){return O(e,tO)||O(e,tD)},t.onEnter=function(){this.session.retarget(this.target,this.activation)&&this.owner.getSelection().commitSelectedItems([this.target.getInstanceId()])},t.onExit=function(){this.session.dispose()},t.createGizmos=function(){return[new ic(this.owner,this.session),new il(this.owner,this.session),new is(this.owner)]},tB(e,[{key:"editingItem",get:function(){return this.session.editingItem}}]),e}(),ih=function(n){function i(){var e;return e=n.apply(this,arguments)||this,e.type="enter-edit-mode",e}return G(i,n),i.prototype.onMouseDown=function(n){if(n.buttonIndex===t.MouseButton.Left&&n.doubleClick){var i=this._owner.getSelection().getSelectedPlayerItems(),r=1===i.length?i[0]:void 0;if(r){var o=this._owner.getSelection();if(o.filterSelectedItems(o.hitTest(new e6(n.position.x,n.position.y))).includes(r.getInstanceId())){if(r.type===t.spec.ItemType.text&&r.getComponent(t.TextComponent))this._owner.setActiveEditMode(new iu(this._owner,r,"select")),this._owner.setCursor({type:e.GestureCursorType.TEXT,angle:0});else{if(!t0(r))return;this._owner.setActiveEditMode(new io(this._owner,r.getInstanceId(),this._owner.getConfigManager().get(ny)))}n.accept()}}}},i}(tY),id=function(){function e(e){this.owner=e,this.id="default-selection"}var t=e.prototype;return t.canRemainActiveForTool=function(e){return O(e,tO)||O(e,tD)},t.createGizmos=function(){var e=new n0(this.owner);return[new n1(this.owner,e),e,new ih(this.owner),ir(this.owner)]},e}();e.ImageInteractionType=void 0,(g=e.ImageInteractionType||(e.ImageInteractionType={})).NONE="none",g.SCALE="scale",g.DIRECTION_SCALE="direction-scale",g.MOVE="move";var im=function(n){function i(){var t;return t=n.apply(this,arguments)||this,t.result={normalizeCutBox:new to(new e6,new e6(1,1))},t.interactionParam={type:e.ImageInteractionType.NONE},t.type=e.GizmoType.IMAGE_CUT,t.cursorResult={type:e.GestureCursorType.NORMAL,angle:0},t._isLockScale=!1,t.mouseGrabbed=!1,t}G(i,n);var r=i.prototype;return r.onMouseMove=function(n){if(this.isApplicableSelection()){if(this.mouseGrabbed){var i=this.updateGrab(n);this._owner.setCursor(this.cursorResult),i&&n.accept();return}var r=this._owner.getMousePosition(),o=new e6(n.position.x,n.position.y);this.refreshInteractionType(r,o),this._owner.setCursor(this.cursorResult),n.buttonMask===t.MouseButtonMask.None&&(this.interactionParam.type===e.ImageInteractionType.SCALE||this.interactionParam.type===e.ImageInteractionType.DIRECTION_SCALE)&&n.accept()}},r.onMouseDrag=function(e){if(this.isApplicableSelection()&&this.mouseGrabbed){var t=this.updateGrab(e);this._owner.setCursor(this.cursorResult),this._owner.emit("actionupdate",{source:this}),t&&e.accept()}},r.onMouseLeave=function(){if(this.isApplicableSelection()){if(this.mouseGrabbed){this._owner.setCursor(this.cursorResult);return}this.interactionParam={type:e.ImageInteractionType.NONE},this.refreshCursorResult(e.ImageInteractionType.NONE),this._owner.setCursor(this.cursorResult)}},r.onMouseDown=function(n){if(this.isApplicableSelection()&&n.buttonIndex===t.MouseButton.Left){var i=new e6(n.position.x,n.position.y),r=new e6(n.position.x,n.position.y);this.refreshInteractionType(i,r),this._owner.setCursor(this.cursorResult),this.interactionParam.type!==e.ImageInteractionType.NONE&&(this.mouseGrabbed=!0,this._owner.emit("actionstart",{source:this}),n.accept())}},r.onMouseUp=function(e){if(this.mouseGrabbed){this.mouseGrabbed=!1;var t=new e6(e.position.x,e.position.y),n=new e6(e.position.x,e.position.y);this.refreshInteractionType(t,n),this._owner.setCursor(this.cursorResult),this._owner.emit("actioncommit",{source:this}),e.accept()}},r.onKeyUp=function(e){"lockedAspect"in this.interactionParam&&delete this.interactionParam.lockedAspect},r.onUpdate=function(){this.renderGeometry=this.getSelectionGeometry()},r.draw=function(e){var t=this.renderGeometry;if(t){var n=this.config,i=n.maskColor,r=n.maskAlpha,o=n.cutBoxLineWidth,s=n.cutBoxLineColor,a=n.cutBoxLineAlpha,c=n.itemBoxLineWidth,l=n.itemBoxLineColor,u=n.itemBoxLineAlpha,h=n.cutBoxCornerRadius,d=n.cutBoxCornerFillColor,m=n.cutBoxCornerLineWidth,f=n.cutBoxCornerLineColor,p=n.cutBoxCornerLineAlpha,g=n.gridLineWidth,v=n.gridLineColor,y=n.gridLineAlpha,x=n.gridCount,w=tx(t.boxTransform),A=tx(t.boxTransform,this.result.normalizeCutBox),M=nD(i,r);nX(e,[w[0],w[1],A[1],A[0]],M),nX(e,[w[1],w[2],A[2],A[1]],M),nX(e,[w[2],w[3],A[3],A[2]],M),nX(e,[w[3],w[0],A[0],A[3]],M);for(var I=nD(v,y),C=1;C<=x;C++){var S=C/(x+1),T=A[0].clone().add(A[1].clone().subtract(A[0]).multiply(S)),b=A[3].clone().add(A[2].clone().subtract(A[3]).multiply(S)),E=A[0].clone().add(A[3].clone().subtract(A[0]).multiply(S)),P=A[1].clone().add(A[2].clone().subtract(A[1]).multiply(S));e.drawLine(T.x,T.y,b.x,b.y,I,g),e.drawLine(E.x,E.y,P.x,P.y,I,g)}nW(e,w,nD(l,u),c),nW(e,A,nD(s,a),o);var z=nD(d,1),B=nD(f,p);A.forEach(function(t){e.fillCircle(t.x,t.y,h,z),e.drawCircle(t.x,t.y,h,B,m)})}},r.refreshCursorResult=function(t,n){switch(void 0===n&&(n=0),t){case e.ImageInteractionType.SCALE:case e.ImageInteractionType.DIRECTION_SCALE:this.cursorResult={type:e.GestureCursorType.SCALE,angle:n};break;case e.ImageInteractionType.MOVE:case e.ImageInteractionType.NONE:this.cursorResult={type:e.GestureCursorType.NORMAL,angle:0}}},r.getCutInfo=function(){var e=this.getSelectionGeometry();if(e)return{cutBox:this.result.normalizeCutBox.clone(),itemBox:e.itemBox}},r.getCutBox=function(){if(this.isApplicableSelection())return this.result.normalizeCutBox.clone()},r.setCutBox=function(e){if(this.isApplicableSelection())return this.result.normalizeCutBox.copyFrom(e),this.result.normalizeCutBox.clone()},r.isApplicableSelection=function(){return 1===this._owner.getSelection().getSelectedPlayerItems().length},r.updateGrab=function(t){if(!this.mouseGrabbed)return!1;if(this.interactionParam.type===e.ImageInteractionType.NONE)return!0;var n=this.getSelectionGeometry();if(!n)return!0;var i=ty(n.boxTransform,new e6(t.position.x,t.position.y)),r=this.interactionParam,o=r.startMouse,s=r.box,a=new e6().subtractVectors(i,o),c=new e6,l=new e6(1,1);switch(this.interactionParam.type){case e.ImageInteractionType.MOVE:var u=s.min,h=s.max,d=c.x-u.x,m=l.x-h.x,f=c.y-u.y,p=l.y-h.y;a.x=Math.min(Math.max(a.x,d),m),a.y=Math.min(Math.max(a.y,f),p);var g=s.clone().translate(a);this.result.normalizeCutBox=g;break;case e.ImageInteractionType.SCALE:var v=this.interactionParam,y=v.startCorner,x=v.anchor,w=new e6;if(w.x=Math.min(Math.max(y.x+a.x,c.x),l.x),w.y=Math.min(Math.max(y.y+a.y,c.y),l.y),t.shiftPressed||this.isLockScale){var A,M=(y.x-x.x)*(y.y-x.y)>=0?1:-1,I=this.result.normalizeCutBox.getSize(),C=I.x,S=I.y,T=s.getSize(),b=T.x,E=T.y;if(null!=(A=this.interactionParam).lockedAspect||(A.lockedAspect=C/S),Math.abs(w.x-x.x)/b>Math.abs(w.y-x.y)/E){var P=Math.abs(w.x-x.x)/(w.x-x.x),z=Math.abs(w.x-x.x)/this.interactionParam.lockedAspect;tn(y.y,x.y)?w.y=y.y:w.y=P*M*z+x.y,w.y=Math.min(Math.max(w.y,c.y),l.y);var B=w.y-x.y;tn(y.y,x.y)?w.x=y.x:w.x=M*B*this.interactionParam.lockedAspect+x.x}else{var G=Math.abs(w.y-x.y)*this.interactionParam.lockedAspect,L=Math.abs(w.y-x.y)/(w.y-x.y);tn(y.x,x.x)?w.x=y.x:w.x=L*M*G+x.x,w.x=Math.min(Math.max(w.x,c.x),l.x);var k=w.x-x.x;tn(y.x,x.x)?w.y=y.y:w.y=M*k/this.interactionParam.lockedAspect+x.y}}if(tn(y.x,x.x)||tn(y.y,x.y)){var R=tf(s),F=R[0].clone(),V=F.distance(y);R.forEach(function(e){e.distance(y)>V&&(F.copyFrom(e),V=e.distance(y))}),this.result.normalizeCutBox=tI(new to,[F,w])}else{var D=new e6((w.x-x.x)/(y.x-x.x),(w.y-x.y)/(y.y-x.y));this.result.normalizeCutBox=tC(s.clone(),D,x)}break;case e.ImageInteractionType.DIRECTION_SCALE:var O,Y=this.interactionParam.index,N=this.result.normalizeCutBox.getSize(),H=N.x,U=N.y;null!=(O=this.interactionParam).lockedAspect||(O.lockedAspect=H/U);var j=tf(s),W=j[Y].clone(),Q=j[(Y+1)%4].clone(),K=Y%2==0?"y":"x";if("x"===K){if(a.x=Math.min(Math.max(W.x+a.x,c.x),l.x)-W.x,t.shiftPressed||this.isLockScale){a.y=a.x/this.interactionParam.lockedAspect;var Z=Math.min(Math.max(Q.y+a.y,c.y),l.y);a.y=Z-Q.y,a.x=a.y*this.interactionParam.lockedAspect}else a.y=0}else if(a.y=Math.min(Math.max(W.y+a.y,c.y),l.y)-W.y,t.shiftPressed||this.isLockScale){a.x=-a.y*this.interactionParam.lockedAspect;var X=Math.min(Math.max(Q.x+a.x,c.x),l.x);a.x=X-Q.x,a.y=-a.x/this.interactionParam.lockedAspect}else a.x=0;var J=[];j.forEach(function(e,t){var n=new e6;Y===t?"y"===K?n.copyFrom(e.clone().add(new e6(0,a.y))):n.copyFrom(e.clone().add(new e6(a.x,0))):Y===(t+3)%4?n.copyFrom(e.clone().add(a)):Y===(t+2)%4?"x"===K?n.copyFrom(e.clone().add(new e6(0,a.y))):n.copyFrom(e.clone().add(new e6(a.x,0))):n.copyFrom(e.clone()),J.push(n)}),this.result.normalizeCutBox=tI(new to,J)}return!0},r.getSelectionGeometry=function(){var e=this.selectedItems;if(1===e.length){var t=nd.getContainerSize(this._owner.getEngine().canvas.parentElement),n=t5(e[0],t);if(n)return{itemBox:t3(e[0],t),boxTransform:n}}},r.refreshInteractionType=function(t,n){var i=this;this.interactionParam={type:e.ImageInteractionType.NONE};var r=this.getSelectionGeometry();if(r){var o=tx(r.boxTransform),s=tx(r.boxTransform,this.result.normalizeCutBox),a=!1,c=0;s.forEach(function(s,l){!a&&s.distance(t)<i.config.scaleInteractionDistance&&(a=!0,i.interactionParam={type:e.ImageInteractionType.SCALE,box:i.result.normalizeCutBox.clone(),startMouse:ty(r.boxTransform,n),startCorner:tf(i.result.normalizeCutBox)[l],anchor:tf(i.result.normalizeCutBox)[(l+2)%4]},c=Math.PI/2*((l+3)%4)+Math.atan2(o[1].y-o[0].y,o[1].x-o[0].x))}),s.forEach(function(l,u){if(!a){var h=new tl(l.clone(),s[(u+1)%4]),d=0===h.distanceSq()?0:h.closestPointToPointParameter(t,!0),m={d:h.at(d).distance(t),t:d};m.d>=0&&m.d<=8&&m.t>=0&&m.t<=1&&(a=!0,i.interactionParam={type:e.ImageInteractionType.DIRECTION_SCALE,index:u,box:i.result.normalizeCutBox.clone(),startMouse:ty(r.boxTransform,n)},c=Math.PI/2*((u+3)%4)+Math.PI/4+Math.atan2(o[1].y-o[0].y,o[1].x-o[0].x))}}),tM(r.boxTransform,t,this.result.normalizeCutBox)&&!a&&(this.interactionParam={type:e.ImageInteractionType.MOVE,box:this.result.normalizeCutBox.clone(),startMouse:ty(r.boxTransform,n)},a=!0),this.refreshCursorResult(this.interactionParam.type,c*te)}},tB(i,[{key:"config",get:function(){return this._owner.getConfigManager().get(nC)}},{key:"selectedItems",get:function(){return this._owner.getSelection().getSelectedPlayerItems()}},{key:"isLockScale",get:function(){return this._isLockScale},set:function(e){e!==this.isLockScale&&(this._isLockScale=e)}}]),i}(tY),ip=function(e){function t(){return e.apply(this,arguments)}return G(t,e),t.prototype.createGizmos=function(){return[new im(this.owner)]},t}(tV),ig=function(n){function i(){var t;return t=n.apply(this,arguments)||this,t.result={normalizeExpandBox:new to(new e6,new e6(1,1))},t.interactionParam={type:e.ImageInteractionType.NONE},t.type=e.GizmoType.IMAGE_EXPAND,t.cursorResult={type:e.GestureCursorType.NORMAL,angle:0},t._isLockScale=!1,t.mouseGrabbed=!1,t}G(i,n);var r=i.prototype;return r.onMouseMove=function(n){if(this.isApplicableSelection()){if(this.mouseGrabbed){var i=this.updateGrab(n);this._owner.setCursor(this.cursorResult),i&&n.accept();return}var r=this._owner.getMousePosition(),o=new e6(n.position.x,n.position.y);this.refreshInteractionType(r,o),this._owner.setCursor(this.cursorResult),n.buttonMask===t.MouseButtonMask.None&&(this.interactionParam.type===e.ImageInteractionType.SCALE||this.interactionParam.type===e.ImageInteractionType.DIRECTION_SCALE)&&n.accept()}},r.onMouseDrag=function(e){if(this.isApplicableSelection()&&this.mouseGrabbed){var t=this.updateGrab(e);this._owner.setCursor(this.cursorResult),this._owner.emit("actionupdate",{source:this}),t&&e.accept()}},r.onMouseLeave=function(){if(this.isApplicableSelection()){if(this.mouseGrabbed){this._owner.setCursor(this.cursorResult);return}this.interactionParam={type:e.ImageInteractionType.NONE},this.refreshCursorResult(e.ImageInteractionType.NONE),this._owner.setCursor(this.cursorResult)}},r.onMouseDown=function(n){if(this.isApplicableSelection()&&n.buttonIndex===t.MouseButton.Left){var i=new e6(n.position.x,n.position.y),r=new e6(n.position.x,n.position.y);this.refreshInteractionType(i,r),this._owner.setCursor(this.cursorResult),this.interactionParam.type!==e.ImageInteractionType.NONE&&(this.mouseGrabbed=!0,this._owner.emit("actionstart",{source:this}),n.accept())}},r.onMouseUp=function(e){if(this.mouseGrabbed){this.mouseGrabbed=!1;var t=new e6(e.position.x,e.position.y),n=new e6(e.position.x,e.position.y);this.refreshInteractionType(t,n),this._owner.setCursor(this.cursorResult),this._owner.emit("actioncommit",{source:this}),e.accept()}},r.onKeyUp=function(e){"lockedAspect"in this.interactionParam&&delete this.interactionParam.lockedAspect},r.onUpdate=function(){this.renderGeometry=this.getSelectionGeometry()},r.draw=function(e){var t=this.renderGeometry;if(t){var n=this.config,i=n.maskColor,r=n.maskAlpha,o=n.expandBoxLineWidth,s=n.expandBoxLineColor,a=n.expandBoxLineAlpha,c=n.expandBoxCornerRadius,l=n.expandBoxCornerFillColor,u=n.expandBoxCornerLineWidth,h=n.expandBoxCornerLineColor,d=n.expandBoxCornerLineAlpha,m=n.gridLineWidth,f=n.gridLineColor,p=n.gridLineAlpha,g=n.gridCount,v=tx(t.boxTransform,this.result.normalizeExpandBox);nX(e,v,nD(i,r));for(var y=nD(f,p),x=1;x<=g;x++){var w=x/(g+1),A=v[0].clone().add(v[1].clone().subtract(v[0]).multiply(w)),M=v[3].clone().add(v[2].clone().subtract(v[3]).multiply(w)),I=v[0].clone().add(v[3].clone().subtract(v[0]).multiply(w)),C=v[1].clone().add(v[2].clone().subtract(v[1]).multiply(w));e.drawLine(A.x,A.y,M.x,M.y,y,m),e.drawLine(I.x,I.y,C.x,C.y,y,m)}nW(e,v,nD(s,a),o);var S=nD(l,1),T=nD(h,d);v.forEach(function(t){e.fillCircle(t.x,t.y,c,S),e.drawCircle(t.x,t.y,c,T,u)})}},r.refreshCursorResult=function(t,n){switch(void 0===n&&(n=0),t){case e.ImageInteractionType.SCALE:case e.ImageInteractionType.DIRECTION_SCALE:this.cursorResult={type:e.GestureCursorType.SCALE,angle:n};break;case e.ImageInteractionType.MOVE:case e.ImageInteractionType.NONE:this.cursorResult={type:e.GestureCursorType.NORMAL,angle:0}}},r.getExpandInfo=function(){var e=this.getSelectionGeometry();if(e)return{expandBox:this.result.normalizeExpandBox.clone(),itemBox:e.itemBox}},r.getExpandBox=function(){if(this.isApplicableSelection())return this.result.normalizeExpandBox.clone()},r.setExpandBox=function(e){if(this.isApplicableSelection())return this.result.normalizeExpandBox.copyFrom(e),this.result.normalizeExpandBox.clone()},r.isApplicableSelection=function(){return 1===this._owner.getSelection().getSelectedPlayerItems().length},r.updateGrab=function(t){if(!this.mouseGrabbed)return!1;if(this.interactionParam.type===e.ImageInteractionType.NONE)return!0;var n=this.getSelectionGeometry();if(!n)return!0;var i=ty(n.boxTransform,new e6(t.position.x,t.position.y)),r=this.interactionParam,o=r.startMouse,s=r.box,a=new e6().subtractVectors(i,o),c=new e6,l=new e6(1,1);switch(this.interactionParam.type){case e.ImageInteractionType.MOVE:var u=s.min,h=s.max,d=l.x-h.x,m=c.x-u.x,f=l.y-h.y,p=c.y-u.y;a.x=Math.min(Math.max(a.x,d),m),a.y=Math.min(Math.max(a.y,f),p);var g=s.clone().translate(a);this.result.normalizeExpandBox=g;break;case e.ImageInteractionType.SCALE:var v=this.interactionParam.index,y=s.min,x=s.max,w=tf(s),A=w[v],M=w[(v+2)%4],I=new e6(A.x+a.x,A.y+a.y);if(A.x>=x.x?I.x=Math.max(I.x,l.x):A.x<=y.x?I.x=Math.min(I.x,c.x):(console.warn("resultCorner has wrong, we have move it to the nearest corner"),I.x=Math.abs(I.x-y.x)>Math.abs(I.x-x.x)?x.x:y.x),A.y>=x.y?I.y=Math.max(I.y,l.y):A.y<=y.y?I.y=Math.min(I.y,c.y):(console.warn("resultCorner has wrong, we have move it to the nearest corner"),I.y=Math.abs(I.y-y.y)>Math.abs(I.y-x.y)?x.y:y.y),t.shiftPressed||this.isLockScale){var C,S=this.result.normalizeExpandBox.getSize(),T=S.x,b=S.y,E=s.getSize(),P=E.x,z=E.y;if(null!=(C=this.interactionParam).lockedAspect||(C.lockedAspect=T/b),Math.abs(I.x-M.x)/P>Math.abs(I.y-M.y)/z){var B=Math.abs(I.x-M.x)/this.interactionParam.lockedAspect;I.y=(A.y-M.y)/Math.abs(A.y-M.y)*B+M.y,A.y>=x.y?I.y=Math.max(I.y,l.y):A.y<=y.y?I.y=Math.min(I.y,c.y):(console.warn("resultCorner has wrong, we have move it to the nearest corner"),I.y=Math.abs(I.y-y.y)>Math.abs(I.y-x.y)?x.y:y.y)}else{var G=Math.abs(I.y-M.y)*this.interactionParam.lockedAspect;I.x=(A.x-M.x)/Math.abs(A.x-M.x)*G+M.x,A.x>=x.x?I.x=Math.max(I.x,l.x):A.x<=y.x?I.x=Math.min(I.x,c.x):(console.warn("resultCorner has wrong, we have move it to the nearest corner"),I.x=Math.abs(I.x-y.x)>Math.abs(I.x-x.x)?x.x:y.x)}}this.result.normalizeExpandBox=tI(new to,[I,M]);break;case e.ImageInteractionType.DIRECTION_SCALE:var L=this.interactionParam.index,k=tf(s),R=k[L].clone(),F=this.result.normalizeExpandBox.getSize(),V=F.x,D=F.y;null!=(N=this.interactionParam).lockedAspect||(N.lockedAspect=V/D);var O=k[(L+1)%4].clone(),Y=L%2==0?"y":"x";if("x"===Y){if(1===L){if(a.x=Math.max(k[L].x+a.x,l.x)-R.x,t.shiftPressed||this.isLockScale){var N,H,U=this.result.normalizeExpandBox.getSize(),j=U.x,W=U.y;null!=(H=this.interactionParam).lockedAspect||(H.lockedAspect=j/W),a.y=a.x/this.interactionParam.lockedAspect;var Q=Math.max(O.y+a.y,l.y);a.y=Q-O.y,a.x=a.y*this.interactionParam.lockedAspect}else a.y=0}else if(3===L){if(a.x=Math.min(k[L].x+a.x,c.x)-R.x,t.shiftPressed||this.isLockScale){var K,Z=this.result.normalizeExpandBox.getSize(),X=Z.x,J=Z.y;null!=(K=this.interactionParam).lockedAspect||(K.lockedAspect=X/J),a.y=a.x/this.interactionParam.lockedAspect;var q=Math.min(O.y+a.y,c.y);a.y=q-O.y,a.x=a.y*this.interactionParam.lockedAspect}else a.y=0}}else if(2===L){if(a.y=Math.max(k[L].y+a.y,l.y)-R.y,t.shiftPressed||this.isLockScale){var _,$=this.result.normalizeExpandBox.getSize(),ee=$.x,et=$.y;null!=(_=this.interactionParam).lockedAspect||(_.lockedAspect=ee/et),a.x=-a.y*this.interactionParam.lockedAspect;var en=Math.min(O.x+a.x,c.x);a.x=en-O.x,a.y=-a.x/this.interactionParam.lockedAspect}else a.x=0}else if(0===L){if(a.y=Math.min(k[L].y+a.y,c.y)-R.y,t.shiftPressed||this.isLockScale){var ei,er=this.result.normalizeExpandBox.getSize(),eo=er.x,es=er.y;null!=(ei=this.interactionParam).lockedAspect||(ei.lockedAspect=eo/es),a.x=-a.y*this.interactionParam.lockedAspect;var ea=Math.max(O.x+a.x,l.x);a.x=ea-O.x,a.y=-a.x/this.interactionParam.lockedAspect}else a.x=0}var ec=[];k.forEach(function(e,t){var n=new e6;L===t?"y"===Y?n.copyFrom(e.clone().add(new e6(0,a.y))):n.copyFrom(e.clone().add(new e6(a.x,0))):L===(t+3)%4?n.copyFrom(e.clone().add(a)):L===(t+2)%4?"x"===Y?n.copyFrom(e.clone().add(new e6(0,a.y))):n.copyFrom(e.clone().add(new e6(a.x,0))):n.copyFrom(e.clone()),ec.push(n)}),this.result.normalizeExpandBox=tI(new to,ec)}return!0},r.getSelectionGeometry=function(){var e=this.selectedItems;if(1===e.length){var t=nd.getContainerSize(this._owner.getEngine().canvas.parentElement),n=t5(e[0],t);if(n)return{itemBox:t3(e[0],t),boxTransform:n}}},r.refreshInteractionType=function(t,n){var i=this;this.interactionParam.type=e.ImageInteractionType.NONE;var r=this.getSelectionGeometry();if(r){var o=tx(r.boxTransform),s=tx(r.boxTransform,this.result.normalizeExpandBox),a=!1,c=0;s.forEach(function(s,l){!a&&20>s.distance(t)&&(a=!0,i.interactionParam={type:e.ImageInteractionType.SCALE,index:l,box:i.result.normalizeExpandBox.clone(),startMouse:ty(r.boxTransform,n)},c=Math.PI/2*((l+3)%4)+Math.atan2(o[1].y-o[0].y,o[1].x-o[0].x))}),s.forEach(function(l,u){if(!a){var h=new tl(l.clone(),s[(u+1)%4]),d=0===h.distanceSq()?0:h.closestPointToPointParameter(t,!0),m={d:h.at(d).distance(t),t:d};m.d>=0&&m.d<=8&&m.t>=0&&m.t<=1&&(a=!0,i.interactionParam={type:e.ImageInteractionType.DIRECTION_SCALE,index:u,box:i.result.normalizeExpandBox.clone(),startMouse:ty(r.boxTransform,n)},c=Math.PI/2*((u+3)%4)+Math.PI/4+Math.atan2(o[1].y-o[0].y,o[1].x-o[0].x))}}),tM(r.boxTransform,t,this.result.normalizeExpandBox)&&!a&&(this.interactionParam={type:e.ImageInteractionType.MOVE,box:this.result.normalizeExpandBox.clone(),startMouse:ty(r.boxTransform,n)},a=!0),this.refreshCursorResult(this.interactionParam.type,c*te)}},tB(i,[{key:"config",get:function(){return this._owner.getConfigManager().get(nS)}},{key:"selectedItems",get:function(){return this._owner.getSelection().getSelectedPlayerItems()}},{key:"isLockScale",get:function(){return this._isLockScale},set:function(e){e!==this.isLockScale&&(this._isLockScale=e)}}]),i}(tY),iv=function(e){function t(){return e.apply(this,arguments)}return G(t,e),t.prototype.createGizmos=function(){return[new ig(this.owner)]},t}(tV),iy="sans-serif",ix=function(n){function i(){var t;return t=n.apply(this,arguments)||this,t.type=e.GizmoType.SPRITE_TEXT_EDIT,t.result=[],t.interactionParam={preSelected:-1,selected:-1},t.cachedCoords=null,t}G(i,n);var r=i.prototype;return r.onMouseMove=function(e){var t,n,i=this._owner.getMousePosition();((null==(t=this.cachedCoords)?void 0:t.x)!==i.x||(null==(n=this.cachedCoords)?void 0:n.y)!==i.y)&&(this.interactionParam.preSelected=this.computePreSelected(i),this.cachedCoords=i.clone())},r.onMouseLeave=function(){this.interactionParam.preSelected=-1,this.cachedCoords=null},r.onMouseDown=function(e){if(e.buttonIndex===t.MouseButton.Left&&!e.doubleClick){this.interactionParam.preSelected=this.computePreSelected(new e6(e.position.x,e.position.y));var n=this.result[this.interactionParam.preSelected];this.result.forEach(function(e){e.isEditing=e.id===(null==n?void 0:n.id)&&e.index===n.index}),this.interactionParam.preSelected=-1;var i=n?{id:n.id,index:n.index,text:n.text}:void 0;this._owner.emit("spritetextclick",{source:this,info:i}),e.accept()}},r.initResult=function(e){var t=this;e.forEach(function(e){var n,i=null!=(n=e.originBox)?n:t.getItemOriginBox(e.id);i&&e.info.forEach(function(n,r){var o=n.text,s=n.box,a=n.hasChanged,c=s.map(function(e){return k(e6,[].concat(e)).add(i.min)}),l=tE(i,tI(new to,c));t.result.push({id:e.id,index:r,hasChanged:a,text:o,box:l,isEditing:!1})})})},r.clearResultData=function(){this.result=[]},r.setSelected=function(e,t){var n=this.result.findIndex(function(n){return n.id===e&&n.index===t});if(n<0){console.warn("item "+e+" does not have index "+t+" text info.");return}this.interactionParam.selected=n},r.setText=function(e,t,n){var i=this.result.find(function(n){return n.id===e&&n.index===t});if(!i){console.warn("item "+e+" does not have index "+t+" text info.");return}i.text=n},r.setChangedState=function(e,t,n){var i=this.result.find(function(n){return n.id===e&&n.index===t});if(!i){console.warn("item "+e+" does not have index "+t+" text info.");return}i.hasChanged=n},r.setEditState=function(e,t,n){var i=this.result.find(function(n){return n.id===e&&n.index===t});if(!i){console.warn("item "+e+" does not have index "+t+" text info.");return}i.isEditing=n},r.draw=function(e){var t=this;if(0!==this.result.length){for(var n=nd.getViewScale(this._owner.getEngine()),i=this.config,r=i.editBoxColor,o=i.editBoxAlpha,s=i.editBoxPreSelectedColor,a=i.editBoxPreSelectedAlpha,c=i.hasChangedEditBoxColor,l=i.hasChangedEditBoxAlpha,u=i.hasChangedEditBoxPreSelectedColor,h=i.hasChangedEditBoxPreSelectedAlpha,d=i.editBoxLineColor,m=i.editBoxLineAlpha,f=i.editBoxLinePreSelectedAlpha,p=i.editBoxLinePreSelectedColor,g=i.hasChangedEditBoxLineColor,v=i.hasChangedEditBoxLineAlpha,y=i.hasChangedEditBoxLinePreSelectedColor,x=i.hasChangedEditBoxLinePreSelectedAlpha,w=i.textColor,A=this.interactionParam.preSelected,M=this.result.map(function(e,n){var i=nr(t._owner.getEngine().sceneServer.compositions[0],e.id);if(i){var r=t5(i,nd.getContainerSize(t._owner.getEngine().canvas.parentElement));if(r){var o=tx(r,e.box);return{value:e,viewCorners:o,isPreSelected:n===A}}}}).filter(function(e){return!!e}),I=function(t,n,i,r,o){nX(e,t,nD(n,i)),nW(e,t,nD(r,o),1)},C=0,S=[!1,!0];C<S.length;C++)!function(e,t){var n=t[e];M.filter(function(e){return e.value.hasChanged===n}).forEach(function(e){var t=e.viewCorners,i=e.isPreSelected;n?I(t,i?u:c,i?h:l,i?y:g,i?x:v):I(t,i?s:r,i?a:o,i?p:d,i?f:m)})}(C,S);var T=nD(w,1),b=14*n,E=16*n;M.forEach(function(t){var i=t.value,r=t.viewCorners;if(i.isEditing){var o=r[0],s=r[1],a=r[3],c=o.distance(s),l=o.distance(a),u=nj(i.text,c/n,Math.max(1,Math.floor(l/E)),14,iy);if(0!==u.length){var h=u.length*E,d=s.clone().subtract(o).normalize(),m=a.clone().subtract(o).normalize();n_(e,o,d,m,function(){var t=(l-h)/2;u.forEach(function(n,i){var r=nH(n,b,iy);e.drawText((c-r)/2,t+i*E,n,b,T,iy)})})}}})}},r.getItemOriginBox=function(e){var t=nr(this._owner.getEngine().sceneServer.compositions[0],e);if(t)return t3(t,nd.getContainerSize(this._owner.getEngine().canvas.parentElement))},r.computePreSelected=function(e){for(var t=0;t<this.result.length;t++){var n=this.result[t],i=nr(this._owner.getEngine().sceneServer.compositions[0],n.id);if(i){var r=t5(i,nd.getContainerSize(this._owner.getEngine().canvas.parentElement));if(r&&tM(r,e,n.box))return t}}return -1},tB(i,[{key:"config",get:function(){return this._owner.getConfigManager().get(nb)}}]),i}(tY),iw=function(e){function t(){return e.apply(this,arguments)}return G(t,e),t.prototype.createGizmos=function(){return[new ix(this.owner)]},t}(tV),iA=function(n){function i(t){var i;return(i=n.call(this,t)||this).type=e.GizmoType.MASK,i.mode="paint",i.cursorResult={type:e.GestureCursorType.NORMAL,angle:0},i.result={lines:[]},i.maskImageLoadVersion=0,i.previewCanvas=null,i.maskTexture=null,i.mouseGrabbed=!1,i.configOff=t.getConfigManager().onChange(nT,function(e){i.onConfigChange(e)}),i.refreshMaskImage(i.config.maskImage),i}G(i,n);var r=i.prototype;return r.onMouseMove=function(e){var t=this.getSelectionTransform();if(this.mouseGrabbed){var n=this.updateGrab(e,t);this.refreshCursorResult(t),this._owner.setCursor(this.cursorResult),n&&e.accept();return}this.refreshCursorResult(t),this._owner.setCursor(this.cursorResult)},r.onMouseDrag=function(e){if(this.mouseGrabbed){var t=this.getSelectionTransform(),n=this.updateGrab(e,t);this.refreshCursorResult(t),this._owner.setCursor(this.cursorResult),n&&e.accept()}},r.onMouseDown=function(e){if(e.buttonIndex===t.MouseButton.Left&&!e.doubleClick){var n=this.getSelectionTransform();if(n){var i=new e6(e.position.x,e.position.y);if(tM(n,i)){if("box-paint"===this.mode||"box-erase"===this.mode){this._owner.setCursor(this.cursorResult),this.mouseGrabbed=!0,this._owner.emit("actionstart",{source:this});var r=this.toNormalized(i,n);this.result.lines.push({type:"box-paint"===this.mode?"paint":"erase",shape:"rect",brushSize:0,points:[r,r.clone()]}),e.accept();return}this._owner.setCursor(this.cursorResult),this.mouseGrabbed=!0,this._owner.emit("actionstart",{source:this}),this.result.lines.push({type:this.mode,brushSize:this.config.brushSize,points:[]}),e.accept()}}}},r.onMouseUp=function(e){if(this.mouseGrabbed){this.mouseGrabbed=!1;var t=this.result.lines[this.result.lines.length-1];if((null==t?void 0:t.shape)==="rect"){var n,i,r,o,s,a,c=t.points,l=c[0],u=c[1],h=this.getSelectionTransform(),d=h?tx(h):void 0,m=Math.abs((null!=(n=null==l?void 0:l.x)?n:0)-(null!=(i=null==u?void 0:u.x)?i:0))*(null!=(r=null==d?void 0:d[0].distance(d[1]))?r:0),f=Math.abs((null!=(o=null==l?void 0:l.y)?o:0)-(null!=(s=null==u?void 0:u.y)?s:0))*(null!=(a=null==d?void 0:d[0].distance(d[3]))?a:0);m<.5&&f<.5&&this.result.lines.pop()}else(null==t?void 0:t.points.length)===0&&this.result.lines.pop();this._owner.emit("actioncommit",{source:this}),this._owner.setCursor(this.cursorResult),e.accept()}},r.dispose=function(){null==this.configOff||this.configOff.call(this),this.configOff=void 0,this.maskImageLoadVersion++,this.maskImage=void 0,this.clearRenderObjects(),n.prototype.dispose.call(this)},r.onUpdate=function(){this.renderTransform=this.getSelectionTransform(),this.refreshCursorResult(this.renderTransform)},r.draw=function(e){var n=this,i=this.renderTransform;if(i){var r=this.config,o=r.brushAlpha,s=r.boxLineWidth,a=r.boxLineColor,c=r.boxLineAlpha,l=tx(i),u=l[0],h=l[1],d=l[3],m=Math.ceil(u.distance(h)),f=Math.ceil(u.distance(d)),p=h.clone().subtract(u).normalize(),g=d.clone().subtract(u).normalize();if(m>0&&f>0){var v=this.renderPreviewToCanvas(m,f);if(v&&(this.maskTexture&&(this.maskTexture.width!==m||this.maskTexture.height!==f)&&this.clearRenderObjects(),!this.maskTexture||this.maskTexture.isDestroyed?this.maskTexture=t.Texture.create(e.engine,{sourceType:t.TextureSourceType.image,image:v,flipY:!0}):this.maskTexture.updateSource({sourceType:t.TextureSourceType.image,image:v,flipY:!0}),this.maskTexture.width=m,this.maskTexture.height=f,n_(e,u,p,g,function(){e.drawTexture(0,0,m,f,n.maskTexture,void 0,nD(16777215,o))})),this.maskImage){var y=this.getMask();y&&(this.maskTexture&&(this.maskTexture.width!==m||this.maskTexture.height!==f)&&this.clearRenderObjects(),!this.maskTexture||this.maskTexture.isDestroyed?this.maskTexture=t.Texture.create(e.engine,{sourceType:t.TextureSourceType.image,image:y,flipY:!0}):this.maskTexture.updateSource({sourceType:t.TextureSourceType.image,image:y,flipY:!0}),this.maskTexture.width=m,this.maskTexture.height=f,n_(e,u,p,g,function(){e.drawTexture(0,0,m,f,n.maskTexture,void 0,nD(16777215,o))}))}}if(nW(e,l,nD(a,c),s),this.mouseGrabbed){var x=this.result.lines[this.result.lines.length-1];if((null==x?void 0:x.shape)==="rect"&&x.points.length>=2){var w=x.points,A=w[0],M=w[1];A&&M&&nW(e,tx(i,new to(new e6(Math.min(A.x,M.x),Math.min(A.y,M.y)),new e6(Math.max(A.x,M.x),Math.max(A.y,M.y)))),nD(a,c),s)}}}},r.setMode=function(e){this.mode=e},r.close=function(){this._owner.getConfigManager().set(nT,{maskImage:""}),this.result.lines=[],this.clearRenderObjects()},r.clearMask=function(){this.result.lines=[],this.maskImage=void 0},r.loadMaskImage=function(e){return new Promise(function(t,n){var i=new Image;i.crossOrigin="anonymous",i.onload=function(){t(i)},i.onerror=function(e){n(Error("Failed to load mask image."))},i.src=e})},r.getMask=function(){var e=this.getSelectionTransform();if(!e)return null;var t=tx(e),n=Math.ceil(t[0].distance(t[1])),i=Math.ceil(t[0].distance(t[3])),r=document.createElement("canvas");r.width=n,r.height=i;var o=r.getContext("2d");if(!o)return null;var s=this.config,a=s.maskColor,c=s.maskBackgroundColor,l=this.maskImage;if(0===this.result.lines.length&&!l)return null;var u="#"+a.toString(16).padStart(6,"0"),h="#"+c.toString(16).padStart(6,"0");if(o.fillStyle=h,o.fillRect(0,0,n,i),l)try{o.drawImage(l,0,0,n,i);for(var d=o.getImageData(0,0,n,i),m=d.data,f=a>>16&255,p=a>>8&255,g=255&a,v=c>>16&255,y=c>>8&255,x=255&c,w=0;w<m.length;w+=4){var A=m[w],M=m[w+1],I=m[w+2];(A+M+I)/3>128?(m[w]=f,m[w+1]=p,m[w+2]=g):(m[w]=v,m[w+1]=y,m[w+2]=x)}o.putImageData(d,0,0)}catch(e){console.warn("Failed to load mask image:",e)}for(var C,S=nd.getViewScale(this._owner.getEngine()),T=D(this.result.lines);!(C=T()).done;){var b=C.value;if(b&&0!==b.points.length){if("rect"===b.shape){var E=b.points[0],P=b.points[1];if(!E||!P)continue;var z=Math.min(E.x,P.x)*n,B=Math.min(E.y,P.y)*i,G=Math.max(E.x,P.x)*n,L=Math.max(E.y,P.y)*i;o.globalCompositeOperation="source-over",o.fillStyle="paint"===b.type?u:h,o.fillRect(z,B,Math.max(1,G-z),Math.max(1,L-B));continue}o.lineWidth=b.brushSize*S,o.lineCap="round",o.lineJoin="round",o.globalCompositeOperation="source-over","paint"===b.type?o.strokeStyle=u:o.strokeStyle=h,o.beginPath();for(var k=0;k<b.points.length;k++){var R=b.points[k];if(R){var F=R.x*n,V=R.y*i;0===k?o.moveTo(F,V):o.lineTo(F,V)}}o.stroke()}}return r},r.getMaskDataUrl=function(){var e;return null==(e=this.getMask())?void 0:e.toDataURL()},r.onConfigChange=function(e){e.previous.maskImage!==e.current.maskImage&&this.refreshMaskImage(e.current.maskImage)},r.refreshMaskImage=function(e){var t=this;return z(function(){var n,i,r;return Y(this,function(o){switch(o.label){case 0:if(n=++t.maskImageLoadVersion,t.maskImage=void 0,t.clearRenderObjects(),!e)return[2];o.label=1;case 1:return o.trys.push([1,3,,4]),[4,t.loadMaskImage(e)];case 2:if(i=o.sent(),n!==t.maskImageLoadVersion||t.config.maskImage!==e)return[2];return t.maskImage=i,[3,4];case 3:return r=o.sent(),n===t.maskImageLoadVersion&&console.warn("[MaskGizmo] Failed to load mask image.",r),[3,4];case 4:return[2]}})})()},r.updateGrab=function(e,t){if(!this.mouseGrabbed)return!1;if(!t)return!0;var n=this.result.lines[this.result.lines.length-1];if((null==n?void 0:n.shape)==="rect")return n.points[1]=this.toNormalized(new e6(e.position.x,e.position.y),t),!0;var i=ty(t,new e6(e.position.x,e.position.y));return null==n||n.points.push(i),!0},r.toNormalized=function(e,t){return ty(t,e).clamp(new e6,new e6(1,1))},r.getSelectionTransform=function(){var e=this.selectedItems;if(1===e.length){var t=nd.getContainerSize(this._owner.getEngine().canvas.parentElement);return t5(e[0],t)}},r.clearRenderObjects=function(){this.maskTexture&&!this.maskTexture.isDestroyed&&this.maskTexture.dispose(),this.maskTexture=null,this.previewCanvas=null},r.renderPreviewToCanvas=function(e,t){null!=this.previewCanvas||(this.previewCanvas=document.createElement("canvas"));var n=this.previewCanvas;(n.width!==e||n.height!==t)&&(n.width=e,n.height=t);var i=n.getContext("2d");if(!i)return null;var r="#"+this.config.brushColor.toString(16).padStart(6,"0"),o=nd.getViewScale(this._owner.getEngine());i.clearRect(0,0,e,t),this.maskImage&&(i.save(),i.fillStyle=r,i.fillRect(0,0,e,t),i.globalCompositeOperation="destination-in",i.drawImage(this.maskImage,0,0,e,t),i.restore());for(var s,a=D(this.result.lines);!(s=a()).done;){var c=s.value;if(c&&0!==c.points.length){if("rect"===c.shape){var l=c.points[0],u=c.points[1];if(l&&u){var h=Math.min(l.x,u.x)*e,d=Math.min(l.y,u.y)*t,m=Math.max(l.x,u.x)*e,f=Math.max(l.y,u.y)*t;(m-h>.5||f-d>.5)&&(i.save(),i.fillStyle=r,i.globalCompositeOperation="paint"===c.type?"source-over":"destination-out",i.fillRect(h,d,m-h,f-d),i.restore())}continue}i.save(),i.lineWidth=c.brushSize*o,i.lineCap="round",i.lineJoin="round",i.strokeStyle=r,i.globalCompositeOperation="paint"===c.type?"source-over":"destination-out",i.beginPath();for(var p=0;p<c.points.length;p++){var g=c.points[p];if(g){var v=g.x*e,y=g.y*t;0===p?i.moveTo(v,y):i.lineTo(v,y)}}i.stroke(),i.restore()}}return n},r.refreshCursorResult=function(t){var n=this._owner.getMousePosition();if(this.cursorResult={type:e.GestureCursorType.NORMAL,angle:0},n&&t&&tM(t,n)){if("box-paint"===this.mode||"box-erase"===this.mode){this.cursorResult={type:e.GestureCursorType.BOX_SELECT,angle:0};return}this.cursorResult={type:e.GestureCursorType.CIRCLE,angle:0,radius:this.config.brushSize*nd.getViewScale(this._owner.getEngine())/2}}},tB(i,[{key:"selectedItems",get:function(){return this._owner.getSelection().getSelectedPlayerItems()}},{key:"config",get:function(){return this._owner.getConfigManager().get(nT)}}]),i}(tY),iM=function(e){function t(){return e.apply(this,arguments)}return G(t,e),t.prototype.createGizmos=function(){return[new iA(this.owner)]},t}(tV);function iI(e,t,n,i){return Math.hypot(n-e,i-t)>=5}e.ItemCreateType=void 0,(v=e.ItemCreateType||(e.ItemCreateType={})).NONE="none",v.TEXT="text",v.VIDEO_GENERATOR="video-generator",v.IMAGE_GENERATOR="image-generator",v.FRAME="frame";var iC=function(n){function i(){var t;return t=n.apply(this,arguments)||this,t.type="item-create",t._createType="none",t.cursorResult={type:e.GestureCursorType.NORMAL,angle:0},t.dragStartPoint=null,t.dragStartViewPoint=null,t.pressStartedAt=0,t.mouseGrabbed=!1,t.frameBox=null,t.frameChildren=[],t.interactiveChildrenBoxes=new Map,t.isFixedWidthText=!1,t.textDragDirection=1,t.textBox=null,t.createItemId=null,t.dragCreationStarted=!1,t}G(i,n);var r=i.prototype;return r.onMouseMove=function(e){if(this.mouseGrabbed){var t=this.updateGrab(e);this._owner.setCursor(this.cursorResult),t&&e.accept();return}this._owner.setCursor(this.cursorResult)},r.onMouseDrag=function(e){if(this.mouseGrabbed){var t=this.updateGrab(e);this._owner.setCursor(this.cursorResult),t&&e.accept()}},r.onMouseDown=function(e){e.buttonIndex===t.MouseButton.Left&&(this._owner.setCursor(this.cursorResult),this.mouseGrabbed=!0,this.dragStartViewPoint=new e6(e.position.x,e.position.y),this.dragStartPoint=new e6(e.position.x,e.position.y),this.pressStartedAt=Date.now(),this.frameBox=null,this.frameChildren=[],this.isFixedWidthText=!1,this.textDragDirection=1,this.textBox=null,this.createItemId=t.generateGUID(),this.dragCreationStarted=!1,"frame"===this._createType&&this.refreshInteractiveChildrenBoxes(),e.accept())},r.onMouseUp=function(e){if(this.mouseGrabbed){if(e.isCanceled()){var t=this.getCurrentDragCreateInfo();this.dragCreationStarted&&t&&this._owner.emit("actioncommit",{source:this,createInfo:t,canceled:!0}),this.resetInteractionState(),this._owner.setCursor(this.cursorResult),e.accept();return}"text"===this._createType&&this.updateTextDrag(e,!0);var n=this.getCurrentDragCreateInfo();if(this.dragCreationStarted&&n){this._owner.emit("actioncommit",{source:this,createInfo:n}),this.resetInteractionState(),this._owner.setCursor(this.cursorResult),e.accept();return}var i=this.createItemId;switch(this._createType){case"frame":if(this.frameBox){this._owner.emit("actioncommit",{source:this,createInfo:this.getFrameDragCreateInfo()});break}var r=this.viewPositionToPixel(this.dragStartViewPoint),o={position:[r.x,r.y],size:[1024,1024],children:[]};this._owner.emit("actioncommit",{source:this,createInfo:{info:o,type:"frame",id:i,position:o.position}});break;case"text":var s=this.viewPositionToPixel(this.dragStartViewPoint);this._owner.emit("actioncommit",{source:this,createInfo:{type:"text",id:i,position:[s.x,s.y]}});break;case"image-generator":case"video-generator":var a=tq(new e6(e.position.x,e.position.y),nd.getContainerSize(this._owner.getEngine().canvas.parentElement),nd.getViewScale(this._owner.getEngine()),nd.getViewportTranslation(this._owner.getEngine())),c=[a.x,a.y];this._owner.emit("actioncommit",{source:this,createInfo:{type:this._createType,id:i,position:c}})}this.resetInteractionState(),this._owner.setCursor(this.cursorResult),e.accept()}},r.refreshCursorResult=function(){switch(this._createType){case"text":this.cursorResult={type:e.GestureCursorType.TEXT_CREATE,angle:0};break;case"frame":this.cursorResult={type:e.GestureCursorType.FRAME_CREATE,angle:0};break;case"none":case"image-generator":case"video-generator":this.cursorResult={type:e.GestureCursorType.NORMAL,angle:0}}},r.refreshInteractiveChildrenBoxes=function(){var e=this;this.interactiveChildrenBoxes.clear();var n=this._owner.getEngine().sceneServer.compositions[0];if(null==n?void 0:n.items.length){var i=[],r=[];n.items.forEach(function(e){if("ModelPluginItem"!==e.name&&("动效"===e.name&&void 0!==e.getComponent(t.FrameComponent)&&i.push(e.getInstanceId()),t$(e))){var n;r.push(e.getInstanceId()),null==(n=e.children)||n.forEach(function(e){r.push(e.getInstanceId())})}});var o=[].concat(i,r);n.items.forEach(function(t){var n=t.getInstanceId();if(!o.includes(n)){var i=t3(t,nd.getContainerSize(e._owner.getEngine().canvas.parentElement));e.interactiveChildrenBoxes.set(n,i)}})}},r.draw=function(e){var t=this,n="text"===this._createType,i="frame"===this._createType?this.frameBox:n?this.getTextPreviewBox():null;if(!(!this.mouseGrabbed||!i||i.isEmpty())){var r=this.config,o=r.frameBorderAlpha,s=r.frameBorderColor,a=r.frameBorderWidth;if(nK(e,i,n?nD(3900150,1):nD(s,o),n?2:a),"frame"===this._createType){var c=this._owner.getConfigManager().get(nA),l=nD(c.preSelectedColor,1);this.frameChildren.forEach(function(n){var i=t.interactiveChildrenBoxes.get(n);i&&nK(e,i,l,c.preSelectedWidth)})}}},r.dispose=function(){this.resetInteractionState(),n.prototype.dispose.call(this)},r.updateGrab=function(e){if(!this.mouseGrabbed)return!1;switch(this._createType){case"frame":this.updateFrameDrag(e);break;case"text":this.updateTextDrag(e)}return!0},r.updateFrameDrag=function(e){var t=this;if(this.dragStartPoint&&this.dragStartViewPoint){var n=this.getCurrentViewPoint(e),i=n.x-this.dragStartViewPoint.x,r=n.y-this.dragStartViewPoint.y,o=new e6(this.dragStartViewPoint.x+Math.sign(i||1)*Math.max(Math.abs(i),1),this.dragStartViewPoint.y+Math.sign(r||1)*Math.max(Math.abs(r),1));this.frameBox=this.createBox(this.dragStartViewPoint,o),this.frameChildren=[],this.interactiveChildrenBoxes.forEach(function(e,n){var i;(null==(i=t.frameBox)?void 0:i.containsBox(e))&&"ModelPluginItem"!==n&&t.frameChildren.push(n)})}},r.updateTextDrag=function(e,t){if(void 0===t&&(t=!1),this.dragStartPoint&&this.dragStartViewPoint){var n=this.getCurrentViewPoint(e),i=Math.abs(n.x-this.dragStartViewPoint.x);if(!this.isFixedWidthText){if(!t&&Date.now()-this.pressStartedAt<150||i<=30)return;this.isFixedWidthText=!0}var r=n.x-this.dragStartViewPoint.x;0!==r&&(this.textDragDirection=Math.sign(r));var o=this.dragStartViewPoint.x+this.textDragDirection*Math.max(i,1),s=60*nd.getViewScale(this._owner.getEngine());this.textBox=this.createBox(new e6(this.dragStartViewPoint.x,this.dragStartViewPoint.y-s/2),new e6(o,this.dragStartViewPoint.y+s/2)),this.emitDragCreate(this.getTextDragCreateInfo())}},r.emitDragCreate=function(e){var t=this.dragCreationStarted?"actionupdate":"actionstart";this.dragCreationStarted=!0,this._owner.emit(t,{source:this,createInfo:e})},r.getFrameDragCreateInfo=function(){var e=this.frameBox,t=this.viewPositionToPixel(e.getCenter()),n=tJ(e.getSize(),nd.getViewScale(this._owner.getEngine())),i={position:[t.x,t.y],size:[n.x,n.y],children:[].concat(this.frameChildren)};return{type:"frame",id:this.createItemId,position:i.position,info:i}},r.getTextDragCreateInfo=function(){var e=this.textBox,t=this.viewPositionToPixel(e.getCenter()),n=tJ(e.getSize(),nd.getViewScale(this._owner.getEngine())).x,i={position:[t.x,t.y],width:n};return{type:"text",id:this.createItemId,position:i.position,info:i}},r.getCurrentDragCreateInfo=function(){if("text"===this._createType&&this.textBox)return this.getTextDragCreateInfo()},r.getTextPreviewBox=function(){if(this.dragCreationStarted){var e=this._owner.getSelection().getSelectedPlayerItems(),n=1===e.length?e[0]:void 0;if((null==n?void 0:n.type)===t.spec.ItemType.text){var i=t3(n,nd.getContainerSize(this._owner.getEngine().canvas.parentElement));if(!i.isEmpty())return i}}return this.textBox},r.getCurrentViewPoint=function(e){var t=new e6(e.position.x-this.dragStartPoint.x,e.position.y-this.dragStartPoint.y);return this.dragStartViewPoint.clone().add(t)},r.createBox=function(e,t){return new to(new e6(Math.min(e.x,t.x),Math.min(e.y,t.y)),new e6(Math.max(e.x,t.x),Math.max(e.y,t.y)))},r.viewPositionToPixel=function(e){var t=this._owner.getEngine();return tq(e,nd.getContainerSize(t.canvas.parentElement),nd.getViewScale(t),nd.getViewportTranslation(t))},r.resetInteractionState=function(){this.mouseGrabbed=!1,this.dragStartPoint=null,this.dragStartViewPoint=null,this.pressStartedAt=0,this.frameBox=null,this.frameChildren=[],this.interactiveChildrenBoxes.clear(),this.isFixedWidthText=!1,this.textDragDirection=1,this.textBox=null,this.createItemId=null,this.dragCreationStarted=!1},tB(i,[{key:"config",get:function(){return this._owner.getConfigManager().get(nP)}},{key:"createType",get:function(){return this._createType},set:function(e){e!==this._createType&&(this._createType=e,this.refreshCursorResult())}}]),i}(tY),iS=function(t){function n(){var n;return n=t.apply(this,arguments)||this,n.createType=e.ItemCreateType.NONE,n}return G(n,t),n.prototype.createGizmos=function(){var e=new iC(this.owner);return e.createType=this.createType,[e]},n}(tV);function iT(e,t){if(Object.is(e,t))return!0;if(Array.isArray(e)||Array.isArray(t))return Array.isArray(e)&&Array.isArray(t)&&e.length===t.length&&e.every(function(e,n){return iT(e,t[n])});if(!e||!t||"object"!=typeof e||"object"!=typeof t)return!1;var n=Object.keys(e);return n.length===Object.keys(t).length&&n.every(function(n){return iT(e[n],t[n])})}var ib=function(e){function t(){var t;return t=e.apply(this,arguments)||this,t.values=new Map,t.definitions=new Map,t}G(t,e);var n=t.prototype;return n.get=function(e){this.assertDefinition(e);var t=this.values.get(e.id);return t||(t=nf(nm(e.defaults)),this.values.set(e.id,t)),t},n.set=function(e,t){this.assertDefinition(e);var n=this.get(e),i=null==e.validate?void 0:e.validate.call(e,t);if(!e.validate||i){var r=null!=i?i:t,o=nf(nm(X({},n,r)));if(!iT(n,o)){this.values.set(e.id,o);var s={id:e.id,partial:nf(nm(r)),previous:n,current:o};this.emit("configChange",s)}}},n.reset=function(e){this.assertDefinition(e);var t=this.get(e),n=nf(nm(e.defaults));if(!iT(t,n)){this.values.set(e.id,n);var i={id:e.id,partial:{},previous:t,current:n};this.emit("configChange",i)}},n.onChange=function(e,t){return this.assertDefinition(e),this.on("configChange",function(n){n.id===e.id&&t({partial:n.partial,previous:n.previous,current:n.current})})},n.assertDefinition=function(e){var t=this.definitions.get(e.id);if(t&&t!==e)throw Error('[ConfigManager] Duplicate config id "'+e.id+'".');this.definitions.set(e.id,e)},t}(t.EventEmitter),iE=function(){function e(){this.configs=new ib,this._activeGizmos=[]}var t=e.prototype;return t.get=function(e){return this.findGizmosByType(e)[0]},t.onUpdate=function(){for(var e,t=D(this._activeGizmos);!(e=t()).done;)e.value.onUpdate()},t.dispose=function(){for(var e,t=D(this._activeGizmos);!(e=t()).done;)e.value.dispose();this._activeGizmos=[]},t.findGizmosByType=function(e){return this.getAllManagedGizmos().filter(function(t){return t.type===e})},t.getAllManagedGizmos=function(){return Array.from(new Set([].concat(this._activeGizmos,this.getMultiplexCandidates())))},t.getMultiplexCandidates=function(){var e=this._activeGizmos.find(function(e){return"click-drag-multiplex"===e.type});if(!e)return[];var t=e.auxiliaryBehavior();return Array.from(new Set([].concat(e.clickCandidates(),e.dragCandidates(),t?[t]:[])))},tB(e,[{key:"activeGizmos",get:function(){return this._activeGizmos},set:function(e){this._activeGizmos=[].concat(e)}}]),e}(),iP=function(e){function t(){var t;return t=e.apply(this,arguments)||this,t.items=new Map,t}G(t,e);var n=t.prototype;return n.get=function(e){return this.items.get(e)},n.add=function(e,t){var n,i;!this.items.has(e)&&(this.items.set(e,{tip:{text:null!=(i=null==t?void 0:t.text)?i:"",position:(null==t?void 0:t.position)?new e6(t.position.x,t.position.y):void 0},loadingBox:null==t?void 0:null==(n=t.loadingBox)?void 0:n.clone()}),this.emitChange({addedIds:[e],removedIds:[],updatedIds:[]}),(null==t?void 0:t.clearSelected)&&this.emit("removeselecteditems",[e]))},n.delete=function(e){this.items.delete(e)&&this.emitChange({addedIds:[],removedIds:[e],updatedIds:[]})},n.update=function(e,t){var n=this.items.get(e);if(!n){console.warn("Loading item "+e+" not found.");return}void 0!==t.text&&(n.tip.text=t.text),void 0!==t.position&&(n.tip.position=new e6(t.position.x,t.position.y)),this.emitChange({addedIds:[],removedIds:[],updatedIds:[e]})},n.emitChange=function(e){this.emit("change",X({ids:this.ids},e))},tB(t,[{key:"ids",get:function(){return Array.from(this.items.keys())}}]),t}(t.EventEmitter);function iz(e){for(var t,n=new Map,i=D(e);!(t=i()).done;){var r,o=t.value,s=null!=(r=o.row)?r:0,a=n.get(s);a?a.push(o):n.set(s,[o])}return n}function iB(e,t){void 0===t&&(t={});var n,i,r=null!=(n=t.padding)?n:20,o=null!=(i=t.gap)?i:5;if(0===e.length)return{items:[],size:[2*r,2*r]};var s=e.some(function(e){return void 0!==e.row})?function(e,t,n){for(var i,r=[],o=iz(e),s=Array.from(o.keys()).sort(function(e,t){return e-t}),a=t,c=t,l=D(s);!(i=l()).done;)!function(){for(var e,s,l,u=i.value,h=null!=(s=o.get(u))?s:[],d=h.filter(function(e){return void 0!==e.column}),m=h.filter(function(e){return void 0===e.column}),f=(e=Math).max.apply(e,[].concat(h.map(function(e){return e.box.getSize().y}),[0])),p=new Map,g=D([].concat(d).sort(function(e,t){var n,i;return(null!=(n=e.column)?n:0)-(null!=(i=t.column)?i:0)}));!(l=g()).done;){for(var v,y=l.value,x=null!=(v=y.column)?v:0;p.has(x);)x++;p.set(x,y)}for(var w,A=0,M=D(m);!(w=M()).done;){for(var I=w.value;p.has(A);)A++;p.set(A++,I)}for(var C,S=t,T=D(Array.from(p.keys()).sort(function(e,t){return e-t}));!(C=T()).done;){var b=C.value,E=p.get(b),P=E.box.getSize(),z=P.x,B=P.y;r.push({id:E.id,position:[S+z/2,a+B/2],x:S+z/2,y:a+B/2,row:u,column:b}),c=Math.max(c,S+z+t),S+=z+n}a+=f+n}();return{items:r,size:[Math.max(c,2*t),Math.max(a-n+t,2*t)]}}(e,r,o):function(e,t,n,i){for(var r,o=[],s=iz(e),a=Array.from(s.keys()).sort(function(e,t){return e-t}),c=t,l=t,u=D(a);!(r=u()).done;){for(var h,d,m=r.value,f=null!=(h=s.get(m))?h:[],p=t,g=0,v=0,y=1,x=D(f);!(d=x()).done;){var w=d.value,A=w.box.getSize(),M=A.x,I=A.y,C=(null==i?void 0:i.maxRowWidth)!==void 0&&p+M+t>i.maxRowWidth&&p>t;C&&(null==i?void 0:i.maxRowCount)!==void 0&&y>=i.maxRowCount&&(C=!1),C?(c+=g+n,p=t,g=I,v=0,y++):g=Math.max(g,I),o.push({id:w.id,position:[p+M/2,c+I/2],x:p+M/2,y:c+I/2,row:m,column:v}),l=Math.max(l,p+M+t),p+=M+n,v++}f.length>0&&(c+=g+n)}return{items:o,size:[Math.max(l,2*t),Math.max(c-n+t,2*t)]}}(e,r,o,t.config);return{items:s.items.map(function(e){return{id:e.id,position:e.position,row:e.row,column:e.column}}),size:s.size}}function iG(e){return{row:e.row,column:e.column,position:e.position?[].concat(e.position):void 0}}function iL(e){for(var t,n={},i=null!=e?e:{},r=D(Object.keys(i));!(t=r()).done;){var o=t.value;n[o]=iG(i[o])}return n}function ik(t){var n,i;return{id:t.id,layoutMode:null!=(n=t.layoutMode)?n:e.FrameLayoutMode.FREE,children:[].concat(null!=(i=t.children)?i:[]),autoLayoutConfig:t.autoLayoutConfig?X({},t.autoLayoutConfig):void 0,layoutInfos:iL(t.layoutInfos)}}var iR=function(){function e(e){this.records=new Map,this.boxes=new Map,this.engine=e}var t=e.prototype;return t.upsertFrame=function(e){var t=ik(e);return this.records.set(t.id,t),t},t.ensureFrame=function(e){var t;return null!=(t=this.records.get(e.id))?t:this.upsertFrame(e)},t.deleteFrame=function(e){return this.boxes.delete(e),this.records.delete(e)},t.clear=function(){this.records.clear(),this.boxes.clear()},t.hydrate=function(e){this.clear();for(var t,n=D(e);!(t=n()).done;){var i=t.value;this.upsertFrame(i)}},t.snapshot=function(){return Array.from(this.records.values(),ik)},t.getFrame=function(e){return this.records.get(e)},t.getFrames=function(){return Array.from(this.records.values())},t.setLayoutMode=function(e,t){var n=this.records.get(e);n&&(n.layoutMode=t)},t.setChildren=function(e,t){var n=this.records.get(e);n&&(n.children=[].concat(t))},t.addChild=function(e,t){var n=this.records.get(e);return!(!n||n.children.includes(t))&&(n.children.push(t),!0)},t.removeChild=function(e,t){var n=this.records.get(e);if(!n)return!1;var i=n.children.indexOf(t);if(i<0)return!1;n.children.splice(i,1);var r=X({},n.layoutInfos);return delete r[t],n.layoutInfos=r,!0},t.setLayoutInfos=function(e,t){var n=this.records.get(e);n&&(n.layoutInfos=iL(t))},t.setChildLayoutInfo=function(e,t,n){var i=this.records.get(e);i&&(i.layoutInfos[t]=iG(n))},t.setAutoLayoutConfig=function(e,t){var n=this.records.get(e);n&&(n.autoLayoutConfig=t?X({},t):void 0)},t.computeAutoLayout=function(e,t,n){void 0===n&&(n={});var i=this.records.get(e);if(i)return iB(t.map(function(e){var t,n;return X({},e,{row:null==(t=i.layoutInfos[e.id])?void 0:t.row,column:null==(n=i.layoutInfos[e.id])?void 0:n.column})}),X({},n,{config:i.autoLayoutConfig}))},t.computeLayoutInfosAfterReorder=function(e,t,n,i,r,o){var s=this.records.get(e);if(null==s?void 0:s.children.includes(t)){var a=iL(s.layoutInfos);if(n!==r||i!==o){if(n===r)for(var c,l=D(Object.entries(a));!(c=l()).done;){var u=c.value,h=u[0],d=u[1];h!==t&&d.row===n&&(i<o&&d.column>i&&d.column<=o?d.column--:i>o&&d.column>=o&&d.column<i&&d.column++)}else{for(var m,f=D(Object.entries(a));!(m=f()).done;){var p=m.value,g=p[0],v=p[1];g!==t&&v.row===n&&v.column>i&&v.column--}for(var y,x=Object.entries(a).filter(function(e){var n=e[0],i=e[1];return n!==t&&i.row===r&&i.column>=o}).sort(function(e,t){return t[1].column-e[1].column}),w=D(x);!(y=w()).done;){var A=y.value[1];A.column++}}}return a[t]=X({},a[t],{row:r,column:o}),a}},t.onUpdate=function(){this.updateViewBoxes()},t.updateViewBoxes=function(){for(var e,t=this.engine,n=nd.getContainerSize(t.canvas.parentElement),i=D(this.records.values());!(e=i()).done;){var r=e.value,o=nr(t.sceneServer.compositions[0],r.id);this.boxes.set(r.id,o&&t$(o)?t3(o,n):new to)}for(var s,a=D(Array.from(this.boxes.keys()));!(s=a()).done;){var c=s.value;this.records.has(c)||this.boxes.delete(c)}},t.getViewInfos=function(){var e=this;return Array.from(this.records.values(),function(t){return e.toViewInfo(t)})},t.getViewInfo=function(e){var t=this.records.get(e);return t?this.toViewInfo(t):void 0},t.getParentFrame=function(e){return Array.from(this.records.values()).find(function(t){return t.children.includes(e)})},t.findFrameAt=function(e){return this.getViewInfos().find(function(t){return t.box.containsPoint(e)})},t.toViewInfo=function(e){var t;return{id:e.id,box:null!=(t=this.boxes.get(e.id))?t:new to,layoutMode:e.layoutMode,children:[].concat(e.children),layoutInfos:iL(e.layoutInfos)}},e}(),iF=function(e){function r(t,n){var i;return void 0===n&&(n={}),(i=e.call(this)||this).interactionStartSelectedIds=[],i.ignoreIds=["sceneRoot"],i.ignoreNames=[],i._selectedIds=[],i.engine=t,i.hoveringResults=n,i}G(r,e);var o=r.prototype;return o.getEffectsEditItemId=function(){return this._effectsEditItemId},o.getFocusedGroupId=function(){return this._focusedGroupId},o.setFocusedGroup=function(e){if(!e){var t=void 0!==this._focusedGroupId;this._focusedGroupId=void 0,t&&this.emit("focuschange");return}var n=nr(this.engine.sceneServer.compositions[0],e);if(!n||!this.isSelectableGroup(n))throw Error("Selection.setFocusedGroup: Group with id "+e+" does not exist");this._focusedGroupId!==e&&(this._focusedGroupId=e,this.emit("focuschange"))},o.enterEffectsEditScope=function(e){var t=this._effectsEditItemId!==e;this._effectsEditItemId=e,this.setFocusedGroup(),t&&this.emit("focuschange")},o.leaveEffectsEditScope=function(){var e=void 0!==this._effectsEditItemId;this._effectsEditItemId=void 0,this.setFocusedGroup(),e&&this.emit("focuschange")},o.getSelectedIds=function(){return this._selectedIds},o.getSelectedPlayerItems=function(){var e=this;return this._selectedIds.map(function(t){return nr(e.engine.sceneServer.compositions[0],t)}).filter(function(e){return!!e})},o.isItemSelected=function(e){return this._selectedIds.includes(e)},o.addSelectedItems=function(e){var t=this.normalizeHierarchySelection([].concat(this._selectedIds,e));if(!this.sameIds(this._selectedIds,t)){var n=[].concat(this._selectedIds);this._selectedIds=t,this.updateFocusedGroupFromSelection(t),this.emit("selectionchange",{oldSelectedIds:n,newSelectedIds:[].concat(this._selectedIds)})}},o.removeSelectedItems=function(e){var t=[].concat(this._selectedIds);this._selectedIds=this._selectedIds.filter(function(t){return!e.includes(t)}),this._selectedIds.length!==t.length&&(this.updateFocusedGroupFromSelection(this._selectedIds),this.emit("selectionchange",{oldSelectedIds:t,newSelectedIds:[].concat(this._selectedIds)}))},o.clearSelectedItems=function(){if(0!==this._selectedIds.length){var e=[].concat(this._selectedIds);this._selectedIds=[],this.emit("selectionchange",{oldSelectedIds:e,newSelectedIds:[]})}},o.setSelectedItems=function(e){this.commitSelectedItems(e)},o.commitSelectedItems=function(e){var t=this.normalizeHierarchySelection(e);if(this.sameIds(this._selectedIds,t))return!1;var n=[].concat(this._selectedIds);return this._selectedIds=t,this.updateFocusedGroupFromSelection(t),this.emit("selectionchange",{oldSelectedIds:n,newSelectedIds:[].concat(t)}),!0},o.addSelectedItem=function(e){return this._selectedIds=this.normalizeHierarchySelection([].concat(this._selectedIds,[e])),this.updateFocusedGroupFromSelection(this._selectedIds),this._selectedIds},o.clear=function(){this._selectedIds=[]},o.setSelectedIds=function(e){this._selectedIds=this.normalizeHierarchySelection(e),this.updateFocusedGroupFromSelection(this._selectedIds)},o.pickOnDoubleClick=function(e){var t=this;this.interactionStartSelectedIds=[].concat(this._selectedIds);var n=new e6(e.position.x,e.position.y),i=this.hitTest(n),r=this.filterItemsByHierarchy(i,function(e){return!t.isItemSelected(e.getInstanceId())});if(0!==r.length){var o=r[0];if(e.shiftPressed){var s,a=null==(s=nr(this.engine.sceneServer.compositions[0],o))?void 0:s.parent;a&&(this._selectedIds=this._selectedIds.filter(function(e){return e!==a.getInstanceId()}))}else this._selectedIds=[];return this.addSelectedItem(o),o}},o.pickOnClick=function(e){var t,n=this;this.interactionStartSelectedIds=[].concat(this._selectedIds);var i=new e6(e.position.x,e.position.y),r=this.hitTest(i),o=this.filterSelectedItems(r);if(0===o.length){e.shiftPressed||(this._selectedIds=[]);return}var s=o[0];return!e.shiftPressed&&this.isItemSelected(s)&&(s=null!=(t=this.filterItemsByHierarchy(r,function(e){return!n.isItemSelected(e.getInstanceId())})[0])?t:s),e.shiftPressed?this.isItemSelected(s)?this._selectedIds=this._selectedIds.filter(function(e){return e!==s}):this.addSelectedItem(s):(this._selectedIds=[],this.addSelectedItem(s)),s},o.hitTest=function(e){var n=this,i=this.engine.sceneServer.compositions[0];if(!(null==i?void 0:i.items))return[];var r=tj(e,nd.getContainerSize(this.engine.canvas.parentElement)),o=r.x,s=r.y,a={ray:new e8,regions:[]};try{a.regions=i.hitTest(o,s,!0),a.ray=i.getHitTestRay(o,s)}catch(e){console.warn(e)}a.regions=a.regions.filter(function(e){return ne(nr(n.engine.sceneServer.compositions[0],e.id))}),this.refreshResultRegions(a);var c=this.reorderHitTestResult(a,i).filter(function(e){var i;return"extra-camera"!==e&&!n.ignoreIds.includes(e)&&!n.isIgnoredNameById(e)&&(null==(i=nr(n.engine.sceneServer.compositions[0],e))?void 0:i.type)!==t.spec.ItemType.composition});return this.preSelectedFrameOutBound(e,c)},o.resolveHoverTarget=function(e){return this.filterSelectedItems(this.hitTest(e))[0]},o.commitHoverTarget=function(e){var t=this.resolveHoverTarget(e);this.setHoverOverlayTarget(t),this.commitHover(t)},o.setHoverOverlayTarget=function(e){this.hoveringResults.overlayItemId=e},o.clearHover=function(){this.setHoverOverlayTarget(void 0),this.commitHover(void 0)},o.filterSelectedItems=function(e){return this.filterItemsByHierarchy(e)},o.addIgnoreIds=function(e){var n=this;e.forEach(function(e){return t.addItem(n.ignoreIds,e)})},o.deleteIgnoreIds=function(e){var t=this;e.forEach(function(e){var n=t.ignoreIds.indexOf(e);n>=0&&t.ignoreIds.splice(n,1)})},o.addIgnoreNames=function(e){var n=this;e.forEach(function(e){return t.addItem(n.ignoreNames,e)})},o.deleteIgnoreNames=function(e){var t=this;e.forEach(function(e){var n=t.ignoreNames.indexOf(e);n>=0&&t.ignoreNames.splice(n,1)})},o.setIgnoreNames=function(e){this.ignoreNames=[].concat(e)},o.findUnselectedItem=function(e){var t,n=null!=(t=this.filterSelectedItems(this.hitTest(e))[0])?t:"";if(n)return this.getSelectedScopeIdSet().has(n)?void 0:n},o.createHitSnapshot=function(e){var t=this,n=this.hitTest(e),i=this.filterSelectedItems(n),r=this.filterItemsByHierarchy(n,function(e){return!t.isItemSelected(e.getInstanceId())}),o=this.getSelectedScopeIdSet();return{point:e.clone(),selectableIds:[].concat(i),topmostId:i[0],selectedScopeHitIds:i.filter(function(e){return o.has(e)}),drillTargetId:r[0]}},o.isPointInFocusedGroup=function(e){if(!this._focusedGroupId)return!1;var t=nr(this.engine.sceneServer.compositions[0],this._focusedGroupId);if(!t)return!1;var n=t5(t,nd.getContainerSize(this.engine.canvas.parentElement));return!!n&&tM(n,e)},o.isPointInSelectedViewBox=function(e){var t=this.getSelectedPlayerItems();if(0===t.length)return!1;var n=nd.getContainerSize(this.engine.canvas.parentElement);if(1===t.length){var i=t5(t[0],n);return!!i&&tM(i,e)}for(var r,o=new to,s=D(t);!(r=s()).done;){var a=t3(r.value,n);a.isEmpty()||o.union(a)}return!o.isEmpty()&&o.containsPoint(e)},o.isPointInEffectsEditScope=function(e){if(!this._effectsEditItemId)return!1;var t=nr(this.engine.sceneServer.compositions[0],this._effectsEditItemId);if(!t)return!1;var n=t5(t,nd.getContainerSize(this.engine.canvas.parentElement));return!!n&&tM(n,e)},o.resolveMarqueeSelectableItem=function(e){var n=nt(e);return this._effectsEditItemId?(null==n?void 0:n.getInstanceId())===this._effectsEditItemId&&e.getInstanceId()!==this._effectsEditItemId&&e.type!==t.spec.ItemType.composition?e:void 0:null!=n?n:e},o.commitHover=function(e){e!==this.hoveringResults.itemId&&(this.hoveringResults.itemId=e,this.emit("preselectchange",{preSelectedId:e}))},o.filterItemsByHierarchy=function(e,n){var i=this,r=[];return e.forEach(function(e){var o=nr(i.engine.sceneServer.compositions[0],e);if(o){var s=nt(o);if(!i._effectsEditItemId||(null==s?void 0:s.getInstanceId())===i._effectsEditItemId){if(s){var a=s.getInstanceId();if(!i._effectsEditItemId){i.ignoreIds.includes(a)||i.isIgnoredNameById(a)||t.addItem(r,a);return}if(a!==i._effectsEditItemId||e===a)return}var c=i.getOutermostSelectableItem(o,n);c&&t.addItem(r,c.getInstanceId())}}}),r},o.getOutermostSelectableItem=function(e,t){for(var n,i=nt(e),r=this._focusedGroupId?nr(this.engine.sceneServer.compositions[0],this._focusedGroupId):void 0,o=this.isDirectlySelectable(e)?e:void 0,s=e;s&&(!i||s!==i)&&(null==r?void 0:r.getInstanceId())!==s.getInstanceId();)this.isSelectableGroup(s)&&!this.isRuntimeAncestor(s,r)&&(null==(n=null==t?void 0:t(s))||n)&&(o=s),s=s.parent;return o},o.isIgnoredNameById=function(e){if(0===this.ignoreNames.length)return!1;var t=nr(this.engine.sceneServer.compositions[0],e);return!!t&&this.ignoreNames.includes(t.name)},o.getSelectedScopeIdSet=function(){for(var e,t=this,n=new Set(this._selectedIds),i=this._selectedIds.map(function(e){return nr(t.engine.sceneServer.compositions[0],e)}).filter(function(e){return!!e}),r=D(i);!(e=r()).done;)for(var o,s=e.value,a=D(ni(s));!(o=a()).done;){var c=o.value;n.add(c.getInstanceId())}return n},o.refreshResultRegions=function(e){var n=this.engine.sceneServer.compositions[0];if(n&&!this._effectsEditItemId){var i=n.items.filter(function(e){return"动效"===e.name&&void 0!==e.getComponent(t.FrameComponent)}),r=new Map;i.forEach(function(e){var n,i=null==(n=e.children)?void 0:n[0];(null==i?void 0:i.type)===t.spec.ItemType.composition&&i.children.forEach(function(t){r.set(t.getInstanceId(),e.getInstanceId())})}),e.regions.forEach(function(e){var t;e.id=null!=(t=r.get(e.id))?t:e.id})}},o.reorderHitTestResult=function(e,r){if(0===e.regions.length||!r)return[];var o=e.ray,s=e.regions.reverse(),a=[];return s.forEach(function(e){var s,c,l,u,h,d,m,f,p,g=function(e,t){for(var n,i=D(e);!(n=i()).done;){var r=n.value;if(r.getInstanceId()===t&&(p=r),p)return;g(r.children,t)}};if(g(r.items,e.id),p&&ne(p)){var v=p.getInstanceId(),y=o.origin.clone().distance(e.position.clone());if((p.type===t.spec.ItemType.mesh||(null==(c=p.getComponent(t.SpriteComponent))?void 0:null==(s=c.renderer)?void 0:s.occlusion)||(null==(u=p.getComponent(t.TextComponent))?void 0:null==(l=u.renderer)?void 0:l.occlusion)||(null==(d=p.getComponent(n.VideoComponent))?void 0:null==(h=d.renderer)?void 0:h.occlusion)||(null==(f=p.getComponent(i.RichTextComponent))?void 0:null==(m=f.renderer)?void 0:m.occlusion))&&a.length>0){var x=!0;a.forEach(function(e,t){if(x){if(y<=e[1]){a.splice(t,0,[v,y]),x=!1;return}t===a.length-1&&a.push([v,y])}})}else a.push([v,y])}}),a.map(function(e){return e[0]})},o.preSelectedFrameOutBound=function(e,t){var n=this.engine.sceneServer.compositions[0];if(!n)return t;var i=n.items.filter(function(e){return t$(e)&&ne(e)}),r=nd.getContainerSize(this.engine.canvas.parentElement),o=i.map(function(e){return{id:e.getInstanceId(),box:t3(e,r)}});if(!(null==o?void 0:o.length))return t;var s=!1;return o.forEach(function(n){if(!s){var i=n.box.min;tI(new to,[i.clone(),i.clone().add(new e6(40,-20))]).containsPoint(e)&&(s=!0,t.splice(0,0,n.id))}}),t},o.updateFocusedGroupFromSelection=function(e){var t,n=this;if(0!==e.length){var i=e.map(function(e){return nr(n.engine.sceneServer.compositions[0],e)}).filter(function(e){return!!e});if(i.length!==e.length){this._focusedGroupId=void 0;return}var r=i.map(function(e){return n.getGroupAncestors(e)}),o=null==(t=r[0])?void 0:t.find(function(e){return r.slice(1).every(function(t){return t.some(function(t){return t.getInstanceId()===e.getInstanceId()})})});this._focusedGroupId=null==o?void 0:o.getInstanceId()}},o.getGroupAncestors=function(e){for(var t=[],n=e.parent;n&&(!this._effectsEditItemId||n.getInstanceId()!==this._effectsEditItemId);)this.isSelectableGroup(n)&&t.push(n),n=n.parent;return t},o.isSelectableGroup=function(e){var t=e.getInstanceId();return t4(e)&&!this.ignoreIds.includes(t)&&!this.isIgnoredNameById(t)},o.isDirectlySelectable=function(e){var n=e.getInstanceId();return e.type!==t.spec.ItemType.composition&&!this.ignoreIds.includes(n)&&!this.isIgnoredNameById(n)},o.isRuntimeAncestor=function(e,t){for(var n=null==t?void 0:t.parent;n;){if(n.getInstanceId()===e.getInstanceId())return!0;n=n.parent}return!1},o.normalizeHierarchySelection=function(e){var t,n,i=Array.from(new Set(e)),r=new Map,o=function(e){for(var t,n=D(e);!(t=n()).done;){var i=t.value,s=i.getInstanceId();r.has(s)||(r.set(s,i),o(i.children))}};o(null!=(n=null==(t=this.engine.sceneServer.compositions[0])?void 0:t.items)?n:[]);for(var s=[],a=new Set,c=new Set,l=i.length-1;l>=0;l--)!function(e){for(var t,n=i[e],o=[],l=null==(t=r.get(n))?void 0:t.parent;l;)o.push(l.getInstanceId()),l=l.parent;var u=o.some(function(e){return a.has(e)}),h=c.has(n);!u&&!h&&(s.push(n),a.add(n),o.forEach(function(e){return c.add(e)}))}(l);return s.reverse()},o.sameIds=function(e,t){return e.length===t.length&&e.every(function(e,n){return e===t[n]})},tB(r,[{key:"selectedIds",get:function(){return[].concat(this._selectedIds)},set:function(e){var t=[].concat(this._selectedIds);this._selectedIds=this.normalizeHierarchySelection(e),this.updateFocusedGroupFromSelection(this._selectedIds),this.emit("selectionchange",{oldSelectedIds:t,newSelectedIds:[].concat(this._selectedIds)})}},{key:"preSelectedId",get:function(){return this.hoveringResults.itemId}},{key:"hoverOverlayItemId",get:function(){return this.hoveringResults.overlayItemId}}]),r}(t.EventEmitter),iV=function(){function e(e){this.result={},this.results=[],this.targetBoxes=[],this.axisSelections={},this.owner=e}var t=e.prototype;return t.cacheSnapTargetsForSelection=function(e,t,n){var i=this;if(0===t.length){this.clearCache();return}var r=new Set(t.map(function(e){return e.getInstanceId()})),o=this.getAncestorIdSet(t),s=this.getCommonSnapScopeId(t);this.cacheSnapTargetBoxes(e.filter(function(e){return e.isVisible&&!o.has(e.getInstanceId())&&!i.isSelectedOrDescendant(e,r)&&i.getNearestSnapScopeId(e)===s}).map(function(e){return t3(e,n)}).filter(function(e){return!e.isEmpty()}))},t.cacheSnapTargetBoxes=function(e){this.targetBoxes=e.filter(function(e){return!e.isEmpty()}).map(function(e){return e.clone()})},t.clearCache=function(){this.targetBoxes=[]},t.getSnapTargetBoxes=function(){return this.targetBoxes},t.getSnapTargetPoints=function(){return this.targetBoxes.flatMap(function(e){return[].concat(tf(e),[e.getCenter()])})},t.prepareBox=function(e,t,n,i,r){void 0===n&&(n=this.targetBoxes),void 0===i&&(i=!0),void 0===r&&(r=!0);var o=this.result;if(this.clearFrameState(),!t.isEmpty()){var s=new e6(null!=(c=o.x)?c:0,null!=(l=o.y)?l:0).add(e),a=t.clone().translate(s);this.sourceBox=a;for(var c,l,u,h=D(n);!(u=h()).done;){var d=u.value;d.isEmpty()||(this.considerBoxAlignment(a,d,"x",i),this.considerBoxAlignment(a,d,"y",r))}i&&this.considerGapSnaps(a,n,"x"),r&&this.considerGapSnaps(a,n,"y"),this.publishResult()}},t.preparePoint=function(e,t,n,i,r){void 0===n&&(n=this.getSnapTargetPoints()),void 0===i&&(i=!0),void 0===r&&(r=!0);var o=this.result;this.clearFrameState();for(var s,a,c,l=new e6(null!=(s=o.x)?s:0,null!=(a=o.y)?a:0).add(e),u=t.clone().add(l),h=D(n);!(c=h()).done;){var d=c.value;i&&this.considerAxisCandidate("x",{distance:u.x-d.x,point:u,target:d}),r&&this.considerAxisCandidate("y",{distance:u.y-d.y,point:u,target:d})}this.publishResult()},t.getSnappingVisualizations=function(){return this.update(),this.results},t.clearSnappingVisualizations=function(){this.clearFrameState()},t.reset=function(){this.clearCache(),this.clearSnappingVisualizations()},t.update=function(){var e,t,n,i=[],r=new e6(null!=(t=this.result.x)?t:0,null!=(n=this.result.y)?n:0),o=null==(e=this.sourceBox)?void 0:e.clone().translate(r.clone().multiply(-1));this.appendAlignmentLines(i,"x",r,o),this.appendAlignmentLines(i,"y",r,o),this.appendGapLines(i,"x"),this.appendGapLines(i,"y"),this.results=this.deduplicateLines(i)},t.isSelectedOrDescendant=function(e,t){for(var n=e;n;){if(t.has(n.getInstanceId()))return!0;n=n.parent}return!1},t.getAncestorIdSet=function(e){for(var t,n=new Set,i=D(e);!(t=i()).done;)for(var r=t.value.parent;r;)n.add(r.getInstanceId()),r=r.parent;return n},t.getNearestSnapScopeId=function(e){for(var t=e.parent;t;){if(this.isSnapScopeItem(t))return t.getInstanceId();t=t.parent}},t.getCommonSnapScopeId=function(e){var t=this,n=e.map(function(e){for(var n=[],i=e.parent;i;)t.isSnapScopeItem(i)&&n.push(i.getInstanceId()),i=i.parent;return n}),i=n[0],r=n.slice(1);return(void 0===i?[]:i).find(function(e){return r.every(function(t){return t.includes(e)})})},t.isSnapScopeItem=function(e){return t$(e)||t0(e)},t.considerBoxAlignment=function(e,t,n,i){if(i)for(var r,o="x"===n?"y":"x",s=e.getCenter(),a=t.getCenter(),c=[e.min[n],s[n],e.max[n]],l=[t.min[n],a[n],t.max[n]],u=D(c);!(r=u()).done;)for(var h,d=r.value,m=D(l);!(h=m()).done;){var f=h.value,p=new e6;p[n]=d,p[o]=s[o];var g=new e6;g[n]=f,g[o]=a[o],this.considerAxisCandidate(n,{distance:d-f,point:p,target:g,targetBox:t})}},t.considerGapSnaps=function(e,t,n){for(var i=t.filter(function(e){return!e.isEmpty()}),r="x"===n?"y":"x",o=e.max[n]-e.min[n],s=0;s<i.length;s++)for(var a=s+1;a<i.length;a++){var c,l=i[s],u=i[a];l.min[n]>u.min[n]&&(l=(c=[u,l])[0],u=c[1]);var h=u.min[n]-l.max[n];if(!(h<=1e-6||!this.rangesOverlap(l,u,r)||this.hasInterveningBox(l,u,i,n,r))){var d=this.createGapSegment(l,u,n);if(h+1e-6>=o){var m=l.max[n]+(h-o)/2,f=this.moveBoxAlongAxis(e,n,m);(this.rangesOverlap(f,l,r)||this.rangesOverlap(f,u,r))&&this.considerAxisCandidate(n,{distance:e.min[n]-m,gaps:[this.createGapSegment(l,f,n,d.cross),this.createGapSegment(f,u,n,d.cross)]})}var p=l.min[n]-h-o,g=this.moveBoxAlongAxis(e,n,p);this.rangesOverlap(g,l,r)&&this.considerAxisCandidate(n,{distance:e.min[n]-p,gaps:[d,this.createGapSegment(g,l,n,d.cross)]});var v=u.max[n]+h,y=this.moveBoxAlongAxis(e,n,v);this.rangesOverlap(y,u,r)&&this.considerAxisCandidate(n,{distance:e.min[n]-v,gaps:[d,this.createGapSegment(u,y,n,d.cross)]})}}},t.considerAxisCandidate=function(e,t){if(!(Math.abs(t.distance)>this.config.distance+1e-6)){var n=this.axisSelections[e];if(!n||Math.abs(t.distance)<Math.abs(n.distance)-1e-6){this.axisSelections[e]={distance:t.distance,candidates:[t]};return}1e-6>=Math.abs(t.distance-n.distance)&&n.candidates.push(t)}},t.publishResult=function(){for(var e,t=this,n=0,i=["x","y"];n<i.length;n++)e=this,function(n,i){var r=i[n],o=e.axisSelections[r];if(o){e.result[r]=o.distance;var s=o.candidates.filter(function(e){return void 0!==e.point&&void 0!==e.target});if(0!==s.length){for(var a,c=[],l=D(s);!(a=l()).done;)!function(){var e=a.value,n=c.find(function(n){return t.pointsEqual(n.point,e.point)});n||c.push(n={point:e.point,targets:[]}),n.targets.some(function(n){return t.pointsEqual(n,e.target)})||n.targets.push(e.target)}();e.result["x"===r?"xPoints":"yPoints"]=c}}}(n,i)},t.appendAlignmentLines=function(e,t,n,i){var r=this.axisSelections[t];if(r){for(var o,s="x"===t?"y":"x",a=r.candidates.filter(function(e){return void 0!==e.point&&void 0!==e.target}),c=new Map,l=D(a);!(o=l()).done;){var u,h=o.value,d=h.target[t].toFixed(6),m=null!=(u=c.get(d))?u:[];m.push(h),c.set(d,m)}for(var f,p=D(c.values());!(f=p()).done;){var g=f.value,v=g[0].target[t],y=null!=(A=null==i?void 0:i.min[s])?A:Number.POSITIVE_INFINITY,x=null!=(M=null==i?void 0:i.max[s])?M:Number.NEGATIVE_INFINITY,w=[];i&&w.push(this.createAxisPoint(t,v,i.min[s]),this.createAxisPoint(t,v,i.max[s]));for(var A,M,I,C=D(g);!(I=C()).done;){var S=I.value,T=S.point.clone().subtract(n);y=Math.min(y,T[s],S.target[s]),x=Math.max(x,T[s],S.target[s]),S.targetBox?(y=Math.min(y,S.targetBox.min[s]),x=Math.max(x,S.targetBox.max[s]),w.push(this.createAxisPoint(t,v,S.targetBox.min[s]),this.createAxisPoint(t,v,S.targetBox.max[s]))):w.push(this.createAxisPoint(t,v,T[s]),this.createAxisPoint(t,v,S.target[s]))}if(Number.isFinite(y)&&Number.isFinite(x)){var b=new e6,E=new e6;b[t]=v,E[t]=v,b[s]=y,E[s]=x,e.push(new tl(b,E));for(var P,z=D(this.deduplicatePoints(w));!(P=z()).done;){var B=P.value;this.appendSnapMarker(e,B)}}}}},t.appendSnapMarker=function(e,t){e.push(new tl(new e6(t.x-2,t.y-2),new e6(t.x+2,t.y+2)),new tl(new e6(t.x-2,t.y+2),new e6(t.x+2,t.y-2)))},t.createAxisPoint=function(e,t,n){return"x"===e?new e6(t,n):new e6(n,t)},t.appendGapLines=function(e,t){var n=this.axisSelections[t];if(n)for(var i,r=D(n.candidates);!(i=r()).done;)for(var o,s,a=i.value,c=D(null!=(o=a.gaps)?o:[]);!(s=c()).done;){var l=s.value;1e-6>=Math.abs(l.end-l.start)||("x"===t?e.push(new tl(new e6(l.start,l.cross),new e6(l.end,l.cross))):e.push(new tl(new e6(l.cross,l.start),new e6(l.cross,l.end))))}},t.createGapSegment=function(e,t,n,i){var r="x"===n?"y":"x",o=Math.max(e.min[r],t.min[r]),s=Math.min(e.max[r],t.max[r]),a=null!=i?i:o<=s?(o+s)/2:(e.getCenter()[r]+t.getCenter()[r])/2;return{axis:n,start:e.max[n],end:t.min[n],cross:a}},t.moveBoxAlongAxis=function(e,t,n){var i=new e6;return i[t]=n-e.min[t],e.clone().translate(i)},t.rangesOverlap=function(e,t,n){return Math.min(e.max[n],t.max[n])+1e-6>=Math.max(e.min[n],t.min[n])},t.pointsEqual=function(e,t){return 1e-6>=Math.abs(e.x-t.x)&&1e-6>=Math.abs(e.y-t.y)},t.deduplicatePoints=function(e){for(var t,n=this,i=[],r=D(e);!(t=r()).done;)!function(){var e=t.value;i.some(function(t){return n.pointsEqual(t,e)})||i.push(e)}();return i},t.hasInterveningBox=function(e,t,n,i,r){var o=this;return n.some(function(n){return n!==e&&n!==t&&n.min[i]<t.min[i]-1e-6&&n.max[i]>e.max[i]+1e-6&&o.rangesOverlap(n,e,r)&&o.rangesOverlap(n,t,r)})},t.deduplicateLines=function(e){for(var t,n=new Map,i=D(e);!(t=i()).done;){var r=t.value,o=r.start.x.toFixed(4)+","+r.start.y.toFixed(4)+":"+r.end.x.toFixed(4)+","+r.end.y.toFixed(4),s=r.end.x.toFixed(4)+","+r.end.y.toFixed(4)+":"+r.start.x.toFixed(4)+","+r.start.y.toFixed(4);n.has(o)||n.has(s)||n.set(o,r)}return Array.from(n.values())},t.clearFrameState=function(){this.results=[],this.result={},this.axisSelections={},this.sourceBox=void 0},tB(e,[{key:"enabled",get:function(){return this.config.enabled}},{key:"config",get:function(){return this.owner.getConfigManager().get(nM)}}]),e}(),iD="https://mdn.alipayobjects.com/rms/uri/file/as/0.0.6",iO={normal:{type:"preset",content:"default"},rotation:{type:"svg",content:"default",url:""+iD+"/icons/cursor-rotate-32.svg"},circle:{type:"svg",content:"default",url:""+iD+"/icons/cursor-rotate-32.svg"},scale:{type:"svg",content:"default",url:""+iD+"/icons/cursor-scale-32.svg"},hand:{type:"preset",content:"grab"},pointer:{type:"preset",content:"pointer"},text:{type:"preset",content:"text"},"text-create":{type:"preset",content:"text"},"active-hand":{type:"preset",content:"grabbing"},"frame-create":{type:"preset",content:"crosshair"},"box-select":{type:"preset",content:"crosshair"},"text-rotation":{type:"svg",content:"default",url:"https://mdn.alipayobjects.com/huamei_ixsp8m/afts/img/A*R722QoloC44AAAAAKkAAAAgAev-aAQ/original"}};function iY(){return iN.apply(this,arguments)}function iN(){return(iN=z(function(){var e;return Y(this,function(n){switch(n.label){case 0:return e=new t.Downloader,[4,Promise.all(Object.keys(iO).filter(function(e){return!!iO[e].url}).map(function(t){return new Promise(function(n,i){e.downloadText(iO[t].url,n,function(e,t){i(Error("Failed to load cursor icon ("+e+"): "+t))})}).then(function(e){return iO[t]=X({},iO[t],{content:e})})})).catch(function(e){console.error(e)})];case 1:return n.sent(),[2]}})})).apply(this,arguments)}var iH="sans-serif",iU=function(e){function n(t,n){var i;return(i=e.call(this,t)||this).type="loading",i.loadingBoxSize=new e6,i._idMap=new Map,i.manager=n,i.configOff=t.getConfigManager().onChange(nv,function(e){i.onConfigChange(e)}),i.managerOff=i.manager.on("change",function(){i.syncManager()}),i.syncManager(),i}G(n,e);var i=n.prototype;return i.onLoadingChange=function(e){return this.manager.on("change",function(t){(t.addedIds.length>0||t.removedIds.length>0)&&e(t.ids)})},i.add=function(e,t){this.manager.add(e,t)},i.delete=function(e){this.manager.delete(e)},i.updateItem=function(e,t){this.manager.update(e,t)},i.onUpdate=function(){if(0!==this._idMap.size)for(var e,t=D(this._idMap);!(e=t()).done;){var n=e.value,i=n[0],r=n[1];this.updateLoadingVFXItemTransform(i,r)}},i.draw=function(e){if(0!==this._idMap.size)for(var t,n=D(this._idMap);!(t=n()).done;){var i,r=t.value,o=r[0],s=r[1];if(null==(i=s.tip)?void 0:i.text){var a=nr(this._owner.getEngine().sceneServer.compositions[0],o),c=a?t3(a,nd.getContainerSize(this._owner.getEngine().canvas.parentElement)):new to,l=tb(c,s.loadingBox);this.drawLoadingTip(e,l,c,s.tip)}}},i.dispose=function(){var t=this;null==this.configOff||this.configOff.call(this),this.configOff=void 0,null==this.managerOff||this.managerOff.call(this),this.managerOff=void 0,this._idMap.forEach(function(e){t.disposeLoadingVFXItem(e.loadingVFXItem)}),this._idMap.clear(),e.prototype.dispose.call(this)},i.onConfigChange=function(e){if(e.previous.loadingFragment!==e.current.loadingFragment)for(var t,n=D(this._idMap);!(t=n()).done;){var i=t.value,r=i[0],o=i[1];this.disposeLoadingVFXItem(o.loadingVFXItem),o.loadingVFXItem=this.createLoadingVFXItem(),this.updateLoadingVFXItemTransform(r,o)}},i.drawLoadingTip=function(e,t,n,i){var r=t.getSize(this.loadingBoxSize),o=r.x,s=r.y;if(i.text&&Number.isFinite(o)&&!(o<=0)){var a=i.position?n.min.x+(Number.isFinite(i.position.x)?i.position.x:0):t.min.x,c=i.position?Math.min(Math.max(a,t.min.x),t.max.x):t.min.x,l=i.position?t.max.x-c:o;if(!(l<=0)){var u=function(e,t){var n=nY(e,t,iH,"bold");return{width:n.width||Array.from(e).length*t,actualBoundingBoxAscent:n.actualBoundingBoxAscent||.8*t,actualBoundingBoxDescent:n.actualBoundingBoxDescent||.2*t}},h=u(i.text,16),d=h.width>l?16*l/h.width:16,m=u(i.text,d);m.width>l&&(d*=l/m.width,m=u(i.text,d));var f=i.position?c:t.min.x+(o-m.width)/2,p=m.actualBoundingBoxAscent+m.actualBoundingBoxDescent,g=i.position?n.min.y+(Number.isFinite(i.position.y)?i.position.y:0):t.min.y+(s-p)/2,v=4+u(nF+"M",d).actualBoundingBoxAscent-m.actualBoundingBoxAscent;e.drawText(f,g-v,i.text,d,nD(0,1),iH,"bold")}}},i.syncManager=function(){for(var e,t=new Set(this.manager.ids),n=D(this._idMap);!(e=n()).done;){var i=e.value,r=i[0],o=i[1];t.has(r)||(this.disposeLoadingVFXItem(o.loadingVFXItem),this._idMap.delete(r))}for(var s,a=D(t);!(s=a()).done;){var c=s.value,l=this.manager.get(c);if(l){var u=this._idMap.get(c);u?u.tip=X({},l.tip,{position:l.tip.position?l.tip.position.clone():void 0}):this.createProjection(c,l)}}},i.createProjection=function(e,t){var n=nr(this._owner.getEngine().sceneServer.compositions[0],e),i=n?t3(n,nd.getContainerSize(this._owner.getEngine().canvas.parentElement)):new to,r=t.loadingBox?this.getViewBoxByPixelBox(t.loadingBox):i;this._idMap.set(e,{loadingBox:tE(i,r),loadingVFXItem:this.createLoadingVFXItem(),tip:X({},t.tip,{position:t.tip.position?t.tip.position.clone():void 0})}),this.updateLoadingVFXItemTransform(e,this._idMap.get(e))},i.getCameraInfo=function(){return nd.getCameraInfo(this._owner.getEngine())},i.getViewportParams=function(){var e=this._owner.getEngine().sceneServer.compositions[0],t=null==e?void 0:e.camera;if(t){var n=t.getViewportMatrix();return{scale:n.elements[0],translation:new e6(n.elements[12],n.elements[13]),width:nd.getContainerSize(this._owner.getEngine().canvas.parentElement).x,height:nd.getContainerSize(this._owner.getEngine().canvas.parentElement).y}}return{scale:1,translation:new e6,width:nd.getContainerSize(this._owner.getEngine().canvas.parentElement).x,height:nd.getContainerSize(this._owner.getEngine().canvas.parentElement).y}},i.getViewBoxByPixelBox=function(e){var t=this.getViewportParams(),n=t.scale,i=t.translation,r=new e6(t.width/2,t.height/2);return tC(e.clone(),n,r).translate(i)},i.createLoadingVFXItem=function(){var e=this._owner.getEngine().sceneServer.compositions[0],n=tN.createVFXItem(e,null,"LoadingVFXItem",t.EffectComponent);this._owner.getSelection().addIgnoreIds([n.getInstanceId()]),n.type=t.spec.ItemType.effect;var i=n.getComponent(t.EffectComponent),r=this._owner.getEngine(),o=t.Geometry.create(r,{attributes:{aPos:{size:3,data:new Float32Array([-.5,-.5,0,.5,-.5,0,.5,.5,0,-.5,.5,0])},aUV:{size:2,data:new Float32Array([0,0,1,0,1,1,0,1])}},indices:{data:new Uint16Array([0,1,2,0,2,3])},mode:t.glContext.TRIANGLES,drawCount:6}),s=t.Material.create(r,{shader:{vertex:"\nprecision highp float;\nattribute vec3 aPos;\nattribute vec2 aUV;\nuniform mat4 effects_MatrixVP;\nuniform mat4 effects_ObjectToWorld;\nvarying vec2 vUV;\nvoid main() {\n vUV = aUV;\n gl_Position = effects_MatrixVP * effects_ObjectToWorld * vec4(aPos, 1.0);\n}",fragment:this.config.loadingFragment}});return i.geometry=o,i.material=s,n},i.disposeLoadingVFXItem=function(e){this._owner.getSelection().deleteIgnoreIds([e.getInstanceId()]),e.dispose()},i.updateLoadingVFXItemTransform=function(e,t){var n=nr(this._owner.getEngine().sceneServer.compositions[0],e),i=nd.getContainerSize(this._owner.getEngine().canvas.parentElement),r=tb(n?t3(n,i):new to,t.loadingBox),o=new e6((r.max.x+r.min.x)/2,(r.max.y+r.min.y)/2),s=this.getCameraInfo(),a=new th(0,new e9(0,0,1)),c=tK(o,s,a,i),l=tZ(new e6(r.max.x-r.min.x,r.max.y-r.min.y),i,t.loadingVFXItem,s,a);c&&t.loadingVFXItem.transform.setPosition(c.x,c.y,0),t.loadingVFXItem.transform.setScale(l.x,l.y,1)},tB(n,[{key:"idMap",get:function(){return this._idMap}},{key:"loadingIds",get:function(){return this.manager.ids}},{key:"config",get:function(){return this._owner.getConfigManager().get(nv)}}]),n}(tY);(y=S||(S={})).NONE="none",y.PAN="pan";var ij=function(n){function i(){var e;return e=n.apply(this,arguments)||this,e.type="hand",e.panKeyPressed=!1,e.dragType="none",e.lastPoint=new e6,e}G(i,n);var r=i.prototype;return r.isPanning=function(){return"pan"===this.dragType||this.panKeyPressed},r.onKeyDown=function(e){if("space"===e.physicalKeycode.toLocaleLowerCase()){this.panKeyPressed?e.accept():this._owner.isMouseButtonPressed()||(this.panKeyPressed=!0,e.accept());return}},r.onKeyUp=function(e){"space"===e.physicalKeycode.toLocaleLowerCase()&&this.panKeyPressed&&(this.panKeyPressed=!1,e.accept())},r.onMouseDown=function(e){var n=e.buttonIndex;if(!(n===t.MouseButton.Middle||(this._owner.isHandToolMode()||this.panKeyPressed)&&n===t.MouseButton.Left)){(this._owner.isHandToolMode()||this.isPanning())&&(this._owner.setCursor(this.cursorResult),e.accept());return}this.beginPan(e),this._owner.setCursor(this.cursorResult),e.accept()},r.onMouseMove=function(e){this.handlePointerMove(e)},r.onMouseDrag=function(e){this.handlePointerMove(e)},r.onMouseUp=function(e){(this.endPan()||this._owner.isHandToolMode()||this.isPanning())&&(this._owner.setCursor(this.cursorResult),e.accept())},r.dispose=function(){this.endPan(),n.prototype.dispose.call(this)},r.handlePointerMove=function(e){(this.pan(e)||this._owner.isHandToolMode()||this.isPanning())&&(this._owner.setCursor(this.cursorResult),e.accept())},r.beginPan=function(e){this.dragType="pan",this.lastPoint=new e6(e.position.x,e.position.y)},r.pan=function(e){if("pan"!==this.dragType)return!1;var t=new e6(e.position.x,e.position.y),n=new e6().subtractVectors(t,this.lastPoint),i=e.shiftPressed;n.x=i&&0!==n.y?Math.sqrt(Math.pow(n.x,2)+Math.pow(n.y,2))*n.y/Math.abs(n.y):n.x,n.y=i?0:n.y;var r=this._owner.getViewportNavigation().panByViewDelta(n,new e6(e.position.x,e.position.y),"hand-pan");return this.lastPoint.copyFrom(t),r},r.endPan=function(){var e="pan"===this.dragType;return this.dragType="none",e},tB(i,[{key:"cursorResult",get:function(){var t=this._owner.isHandToolMode()||this.isPanning();return{type:"pan"===this.dragType?e.GestureCursorType.ACTIVE_HAND:t?e.GestureCursorType.HAND:e.GestureCursorType.NORMAL,angle:0}}}]),i}(tY);e.IconType=void 0,(x=e.IconType||(e.IconType={})).VIDEO_PLAY="video-play",x.VIDEO_GENERATOR="video-generator",x.IMAGE_GENERATOR="image-generator";var iW=function(i){function r(t){var n;return(n=i.call(this,t)||this).type=e.GizmoType.ICON,n.results=[],n.interactionParam={},n.cursorResult={type:e.GestureCursorType.NORMAL,angle:0},n.iconTextures=new Map,n.iconTexturePromises=new Map,n.configOff=t.getConfigManager().onChange(nE,function(e){n.onConfigChange(e)}),n}G(r,i);var o=r.prototype;return o.onMouseMove=function(n){var i=this._owner.getMousePosition();this.interactionParam.hoverVideoId=this.computeHoverVideoId(i);var r=this.results.find(function(e){return"video-play"===e.type}),o=!!(null==r?void 0:r.box.containsPoint(i));this.cursorResult=o?{type:e.GestureCursorType.POINTER,angle:0}:{type:e.GestureCursorType.NORMAL,angle:0},this._owner.setCursor(this.cursorResult),n.buttonMask===t.MouseButtonMask.None&&o&&n.accept()},o.onMouseLeave=function(){this.interactionParam.hoverVideoId=void 0,this.cursorResult={type:e.GestureCursorType.NORMAL,angle:0},this._owner.setCursor(this.cursorResult)},o.onMouseDown=function(e){if(e.buttonIndex===t.MouseButton.Left){this.refreshVideoIconId(new e6(e.position.x,e.position.y));var i=this.results.find(function(e){return"video-play"===e.type});if(null==i?void 0:i.box.containsPoint(new e6(e.position.x,e.position.y))){if(i){var r=nr(this._owner.getEngine().sceneServer.compositions[0],i.id),o=0;if((null==r?void 0:r.type)===t.spec.ItemType.video){var s,a=r.getComponent(n.VideoComponent);o=null!=(s=null==a?void 0:a.getCurrentTime())?s:0}this._owner.emit("videoplay",{source:this,id:i.id,time:o}),this.refreshCursorResult(),this._owner.setCursor(this.cursorResult)}e.accept()}}},o.refreshCursorResult=function(){var t=this._owner.getMousePosition(),n=this.results.find(function(e){return"video-play"===e.type}),i=!!t&&!!(null==n?void 0:n.box.containsPoint(t));this.cursorResult=i?{type:e.GestureCursorType.POINTER,angle:0}:{type:e.GestureCursorType.NORMAL,angle:0}},o.refreshVideoIconId=function(e){this.interactionParam.hoverVideoId=this.computeHoverVideoId(e),this.refreshResults()},o.onUpdate=function(){this.refreshResults()},o.draw=function(e){var t=this;this.results.length&&this.results.forEach(function(n){var i=t.getIconTexture(n.type,e.engine);if(i&&!i.isDestroyed){var r=n.box.getCenter(),o=n.box.getSize();e.drawTexture(r.x-o.x/2,r.y-o.y/2,o.x,o.y,i)}})},o.dispose=function(){null==this.configOff||this.configOff.call(this),this.configOff=void 0,i.prototype.dispose.call(this)},o.onConfigChange=function(e){for(var t,n=D([{type:"video-play",key:"videoPlayUrl"},{type:"image-generator",key:"imageGeneratorUrl"},{type:"video-generator",key:"videoGeneratorUrl"}]);!(t=n()).done;){var i=t.value,r=i.type,o=i.key;if(e.previous[o]!==e.current[o]){var s=this.iconTextures.get(r);s&&!s.isDestroyed&&s.offloadData(),this.iconTextures.delete(r),this.iconTexturePromises.delete(r)}}},o.refreshResults=function(){var e=this,t=this._owner.getEngine().sceneServer.compositions[0];if(t){this.results=[];var n=this.config,i=n.videoPlayWidth,r=n.videoPlayHeight,o=n.videoPlayShift,s=n.generatorWidth,a=n.generatorHeight,c=this.interactionParam.hoverVideoId;if(c){var l=nr(this._owner.getEngine().sceneServer.compositions[0],c);if(l){var u=t3(l,nd.getContainerSize(this._owner.getEngine().canvas.parentElement)),h=u.getSize();if(!(h.x<50||h.y<100)){var d=u.max,m=new e6(d.x-o[0],d.y-o[1]),f=new e6(i,r);this.results.push({id:c,type:"video-play",box:new to().setFromCenterAndSize(m,f)})}}}t.items.filter(function(e){return t1(e)}).forEach(function(t){var n=t3(t,nd.getContainerSize(e._owner.getEngine().canvas.parentElement)).getCenter(),i=new e6(s,a).multiply(nd.getViewScale(e._owner.getEngine()));e.results.push({id:t.getInstanceId(),type:t2(t)?"video-generator":"image-generator",box:new to().setFromCenterAndSize(n,i)})})}},o.getIconUrl=function(e){var t=this.config,n=t.videoPlayUrl,i=t.imageGeneratorUrl,r=t.videoGeneratorUrl;switch(e){case"video-play":return n;case"image-generator":return i;case"video-generator":return r;default:return""}},o.getIconTexture=function(e,n){var i=this,r=this.iconTextures.get(e);if(r&&!r.isDestroyed)return r;if(!this.iconTexturePromises.has(e)){var o=this.getIconUrl(e);if(!o)return;var s=t.Texture.fromImage(o,n).then(function(t){return i.iconTextures.set(e,t),t});this.iconTexturePromises.set(e,s)}},o.computeHoverVideoId=function(e){var n=this._owner.getEngine().sceneServer.compositions[0];if(n)for(var i,r=n.items.filter(function(e){return e.type===t.spec.ItemType.video}).reverse(),o=D(r);!(i=o()).done;){var s=i.value;if(t3(s,nd.getContainerSize(this._owner.getEngine().canvas.parentElement)).containsPoint(e))return s.getInstanceId()}},tB(r,[{key:"config",get:function(){return this._owner.getConfigManager().get(nE)}}]),r}(tY);(w=T||(T={}))[w.Idle=0]="Idle",w[w.Pending=1]="Pending",w[w.Crossed=2]="Crossed";var iQ=function(e){function n(n){var i;return(i=e.call(this,n)||this).onMouseEnterCallback=null,i.onMouseMoveCallback=null,i.onMouseDragCallback=null,i.onMouseLeaveCallback=null,i.onMouseWheelCallback=null,i.onMouseDownCallback=null,i.onMouseUpCallback=null,i.onKeyDownCallback=null,i.onKeyUpCallback=null,i.onUpdateCallback=null,i.drawCallBack=null,i.mousePosition=new e6,i.globalMousePosition=new e6,i.dragStart=new e6,i.mouseInside=!1,i.mouseButtonMask=t.MouseButtonMask.None,i.dragThresholdState=0,i.shiftPressed=!1,i.altPressed=!1,i.metaPressed=!1,i.ctrlPressed=!1,i.mouseFilter=r.MouseFilter.Pass,i.focusMode=r.FocusMode.Click,i.mouseForcePassScrollEvents=!1,i.setAnchorsAndOffsetsPreset("fullRect"),i}G(n,e);var i=n.prototype;return i.update=function(e){null==this.onUpdateCallback||this.onUpdateCallback.call(this)},i.draw=function(){null==this.drawCallBack||this.drawCallBack.call(this)},i.onMouseEnter=function(e){this.mouseInside=!0,this.mousePosition.copyFrom(e),null==this.onMouseEnterCallback||this.onMouseEnterCallback.call(this,e)},i.onMouseMove=function(e){this.recordMouseInput(e);var n=e.buttonMask!==t.MouseButtonMask.None;n&&1===this.dragThresholdState&&iI(this.dragStart.x,this.dragStart.y,e.position.x,e.position.y)&&(this.dragThresholdState=2),n?null==this.onMouseDragCallback||this.onMouseDragCallback.call(this,e):null==this.onMouseMoveCallback||this.onMouseMoveCallback.call(this,e)},i.onMouseLeave=function(){this.mouseInside=!1,null==this.onMouseLeaveCallback||this.onMouseLeaveCallback.call(this)},i.onMouseWheel=function(e){this.recordMouseInput(e),null==this.onMouseWheelCallback||this.onMouseWheelCallback.call(this,e)},i.onMouseDown=function(e){this.recordMouseInput(e),this.dragStart.copyFrom(e.position),this.dragThresholdState=1,null==this.onMouseDownCallback||this.onMouseDownCallback.call(this,e)},i.onMouseUp=function(e){this.recordMouseInput(e),this.dragThresholdState=0,null==this.onMouseUpCallback||this.onMouseUpCallback.call(this,e)},i.onKeyDown=function(e){this.recordModifiers(e),null==this.onKeyDownCallback||this.onKeyDownCallback.call(this,e)},i.onKeyUp=function(e){this.recordModifiers(e),null==this.onKeyUpCallback||this.onKeyUpCallback.call(this,e)},i.getMousePosition=function(){return this.mousePosition},i.isMouseInside=function(){return this.mouseInside},i.isMouseButtonPressed=function(){return this.mouseButtonMask!==t.MouseButtonMask.None},i.hasCrossedDragThreshold=function(){return 2===this.dragThresholdState},i.createMouseEventAtCurrentPosition=function(){var e=new t.InputEventMouseMotion;return e.position.copyFrom(this.mousePosition),e.globalPosition.copyFrom(this.globalMousePosition),e.buttonMask=this.mouseButtonMask,e.pressed=this.isMouseButtonPressed(),e.shiftPressed=this.shiftPressed,e.altPressed=this.altPressed,e.metaPressed=this.metaPressed,e.ctrlPressed=this.ctrlPressed,e},i.onDestroy=function(){this.onMouseEnterCallback=null,this.onMouseMoveCallback=null,this.onMouseDragCallback=null,this.onMouseLeaveCallback=null,this.onMouseWheelCallback=null,this.onMouseDownCallback=null,this.onMouseUpCallback=null,this.onKeyDownCallback=null,this.onKeyUpCallback=null,this.onUpdateCallback=null,this.drawCallBack=null,this.mousePosition.setZero(),this.globalMousePosition.setZero(),this.mouseInside=!1,this.mouseButtonMask=t.MouseButtonMask.None,this.dragThresholdState=0,this.dragStart.setZero(),this.shiftPressed=!1,this.altPressed=!1,this.metaPressed=!1,this.ctrlPressed=!1,e.prototype.onDestroy.call(this)},i.recordMouseInput=function(e){this.mousePosition.copyFrom(e.position),this.globalMousePosition.copyFrom(e.globalPosition),this.mouseButtonMask=e.buttonMask,this.recordModifiers(e)},i.recordModifiers=function(e){this.shiftPressed=e.shiftPressed,this.altPressed=e.altPressed,this.metaPressed=e.metaPressed,this.ctrlPressed=e.ctrlPressed},n}(r.Control);(A=b||(b={}))[A.MouseEnter=0]="MouseEnter",A[A.MouseMove=1]="MouseMove",A[A.MouseDrag=2]="MouseDrag",A[A.MouseLeave=3]="MouseLeave",A[A.MouseWheel=4]="MouseWheel",A[A.MouseDown=5]="MouseDown",A[A.MouseUp=6]="MouseUp",A[A.KeyDown=7]="KeyDown",A[A.KeyUp=8]="KeyUp";var iK=function(t){function n(e){var n;return(n=t.call(this,e)||this).hoveringResults={},n.loadingManager=new iP,n.activeGizmoTool=new tV(ia(n)),n._ignoreInteraction=!1,n.selectionTransformKind="idle",n.gizmosToDispose=[],n.onPreselectChange=function(e){var t=e.preSelectedId,i=n.hoveredMediaItemId,r=n.gizmoManager.configs.get(nA).videoPreSelectedPlay;t&&r&&(nc(n.engine,t),nu(n.engine,t)),i&&(nl(n.engine,i),nh(n.engine,i)),n.hoveredMediaItemId=t},n.mouseFilter=r.MouseFilter.Pass,n.mouseForcePassScrollEvents=!1,n.setAnchorsAndOffsetsPreset("fullRect"),n.frameManager=new iR(e),n.gizmoManager=new iE,n.viewportNavigation=new nL(ia(n)),n.selection=new iF(e,n.hoveringResults),n.snapManager=new iV(ia(n)),n.editMode=n.createDefaultEditMode(),n.selection.on("preselectchange",n.onPreselectChange),n.createViewport(),iY(),n}G(n,t);var i=n.prototype;return i.on=function(e,n){var i=this;return t.prototype.on.call(this,e,n),function(){i.off(e,n)}},i.off=function(e,n){t.prototype.off.call(this,e,n)},i.emit=function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];var r=this.eventEmitter;r.emit.apply(r,[].concat([e],n))},i.getSelection=function(){return this.selection},i.getFrameManager=function(){return this.frameManager},i.getSnapManager=function(){return this.snapManager},i.getLoadingManager=function(){return this.loadingManager},i.getViewportNavigation=function(){return this.viewportNavigation},i.getSelectionTransformKind=function(){return this.selectionTransformKind},i.setSelectionTransformKind=function(e){this.selectionTransformKind=e},i.getActiveEditMode=function(){return this.editMode},i.setActiveEditMode=function(e){e!==this.editMode&&(this.commitEditMode(e),this.redispatchMouseAtCurrentPosition())},i.resetEditMode=function(){O(this.editMode,id)||this.setActiveEditMode(this.createDefaultEditMode())},i.init=function(){try{this.rebuildGizmos()}catch(t){var e;throw null==(e=this.errorMonitor)||e.report(t,"gizmo-init",{gizmoType:"unknown"}),t}},i.getMousePosition=function(){var e,t;return null!=(t=null==(e=this.gizmoViewport)?void 0:e.getMousePosition())?t:new e6},i.setCursor=function(t){var n=this.gizmoViewport;if(n){var i="default";if(t.type===e.GestureCursorType.CIRCLE){var r=t.radius||10;i='url("data:image/svg+xml,'+encodeURIComponent('<svg width="'+2*r+'" height="'+2*r+'" xmlns="http://www.w3.org/2000/svg"><circle cx="'+r+'" cy="'+r+'" r="'+r+'" fill="rgba(255, 255, 255, 0.6)" stroke="#6A34FF" stroke-width="1" /></svg>')+'") '+r+" "+r+", auto"}else{var o,s=iO[t.type];(null==s?void 0:s.type)==="svg"?i='url("data:image/svg+xml,'+encodeURIComponent(s.content.replace("rotate(0.00)","rotate("+(null!=(o=t.angle)?o:0)+")"))+'") 16 16, auto':(null==s?void 0:s.type)==="preset"&&(i=s.content)}n.defaultCursorShape=i}},i.getGizmoManager=function(){return this.gizmoManager},i.getEngine=function(){return this.engine},i.getConfigManager=function(){return this.gizmoManager.configs},i.isHandToolMode=function(){return O(this.activeGizmoTool,tD)},i.isMouseButtonPressed=function(){var e,t;return null!=(t=null==(e=this.gizmoViewport)?void 0:e.isMouseButtonPressed())&&t},i.rebuildGizmos=function(){var e,t=this.activeGizmoTool.createGizmos();(e=this.gizmosToDispose).push.apply(e,[].concat(this.gizmoManager.activeGizmos)),this.gizmoManager.activeGizmos=[].concat(this.createCommonBeforeToolSwitch(),t)},i.setActiveTool=function(e){this.activeGizmoTool=e,this.commitEditMode(this.resolveEditModeForTool(e)),this.disposeQueuedGizmos()},i.setErrorMonitor=function(e){this.errorMonitor=e},i.onDestroy=function(){null==this.editMode.onExit||this.editMode.onExit.call(this.editMode),this.clearCapturedGizmo(),this.selection.off("preselectchange",this.onPreselectChange),this.hoveredMediaItemId&&(nl(this.engine,this.hoveredMediaItemId),nh(this.engine,this.hoveredMediaItemId),this.hoveredMediaItemId=void 0),this.clearCapturedGizmo(),this.disposeQueuedGizmos(),this.gizmoManager.dispose(),this.viewportNavigation.dispose(),this.selectionTransformKind="idle",this.setCursor({type:e.GestureCursorType.NORMAL,angle:0}),this.gizmoViewport=void 0,t.prototype.onDestroy.call(this)},i.update=function(e){this.frameManager.onUpdate(),this.gizmoManager.onUpdate(),t.prototype.update.call(this,e)},i.createViewport=function(){var e=this,t=this.addChild(new iQ(this.engine));t.onMouseEnterCallback=function(){e.dispatchInput(0,t.createMouseEventAtCurrentPosition())},t.onMouseMoveCallback=function(t){e.dispatchInput(1,t)},t.onMouseDragCallback=function(t){e.dispatchInput(2,t)},t.onMouseLeaveCallback=function(){e.dispatchInput(3,t.createMouseEventAtCurrentPosition())},t.onMouseWheelCallback=function(t){e.dispatchInput(4,t)},t.onMouseDownCallback=function(t){e.dispatchInput(5,t)},t.onMouseUpCallback=function(t){e.dispatchInput(6,t)},t.onKeyDownCallback=function(t){e.dispatchInput(7,t)},t.onKeyUpCallback=function(t){e.dispatchInput(8,t)},t.drawCallBack=function(){e.drawGizmos(t)},this.gizmoViewport=t},i.commitEditMode=function(e){var t=this.editMode,n=t!==e;n&&(null==t.onExit||t.onExit.call(t),this.editMode=e),this.rebuildGizmos(),n&&(null==e.onEnter||e.onEnter.call(e))},i.resolveEditModeForTool=function(e){return this.editMode.canRemainActiveForTool(e)||O(this.editMode,id)?this.editMode:this.createDefaultEditMode()},i.createDefaultEditMode=function(){return new id(this)},i.dispatchInput=function(e,t){if(!this.ignoreInteraction&&!t.isAccepted())switch(e){case 4:this.viewportNavigation.handleWheel(t,!!this.capturedGizmo)&&this.redispatchMouseAtCurrentPosition();break;case 0:case 1:case 2:case 3:case 5:case 6:this.handleMouseInput(e,t);break;case 7:this.emit("keyDown",t),t.isAccepted()||this.handleKeyboardEvent(t,"down");break;case 8:this.emit("keyUp",t),t.isAccepted()||this.handleKeyboardEvent(t,"up")}this.disposeQueuedGizmos()},i.createCommonBeforeToolSwitch=function(){return[new ij(this),new iW(this),new iU(this,this.loadingManager)]},i.isPanning=function(){var e,t;return null!=(t=null==(e=this.gizmoManager.get("hand"))?void 0:e.isPanning())&&t},i.handleMouseInput=function(t,n){5===t&&this.clearCapturedGizmo();var i,r=this.capturedGizmo;6===t&&this.clearCapturedGizmo(),this.canDispatchMouseEvent(t,r)&&(this.setCursor({type:e.GestureCursorType.NORMAL,angle:0}),i=this.dispatchMouseEvent(r,t,n)),5===t&&(this.capturedGizmo=i),6===t&&this.redispatchMouseAtCurrentPosition()},i.dispatchMouseEvent=function(e,t,n){if(this.selection.clearHover(),e)return this.invoke(e,t,n),e;for(var i,r=[].concat(this.gizmoManager.activeGizmos),o=D(r);!(i=o()).done;){var s=i.value;this.prepareForDispatch(s,t)}for(var a,c=D(r);!(a=c()).done;){var l=a.value;if(this.invoke(l,t,n))return l}},i.canDispatchMouseEvent=function(e,t){var n;if(2===e&&!(null==(n=this.gizmoViewport)?void 0:n.hasCrossedDragThreshold())&&(!t||t.requiresDragThreshold()))return!1;if(t)return!0;switch(e){case 5:case 1:case 3:return!0;case 0:case 2:case 6:case 4:case 7:case 8:return!1}},i.clearCapturedGizmo=function(){this.capturedGizmo=void 0},i.redispatchMouseAtCurrentPosition=function(){var t=this.capturedGizmo,n=this.gizmoViewport;if(n&&(t||n.isMouseInside())){var i=n.createMouseEventAtCurrentPosition();this.setCursor({type:e.GestureCursorType.NORMAL,angle:0}),this.dispatchMouseEvent(t,t?2:1,i)}},i.disposeQueuedGizmos=function(){if(!(this.capturedGizmo&&this.gizmosToDispose.includes(this.capturedGizmo))){var e=this.gizmosToDispose;this.gizmosToDispose=[];for(var t,n=D(e);!(t=n()).done;)t.value.dispose()}},i.prepareForDispatch=function(e,t){try{null==e.prepareForDispatch||e.prepareForDispatch.call(e)}catch(n){this.handleGizmoError(n,this.errorPhaseFor(t),e.type)}},i.invoke=function(e,t,n){try{switch(t){case 0:break;case 5:e.onMouseDown(n);break;case 1:e.onMouseMove(n);break;case 2:e.onMouseDrag(n);break;case 6:e.onMouseUp(n);break;case 3:e.onMouseLeave()}}catch(i){n.clearAccepted(),this.handleGizmoError(i,this.errorPhaseFor(t),e.type)}return n.isAccepted()},i.handleKeyboardEvent=function(e,t){for(var n,i=D([].concat(this.gizmoManager.activeGizmos));!(n=i()).done;){var r=n.value;try{"down"===t?r.onKeyDown(e):r.onKeyUp(e)}catch(t){e.clearAccepted(),this.handleGizmoError(t,"gizmo-key",r.type)}if(e.isAccepted())break}this.redispatchMouseAtCurrentPosition()},i.errorPhaseFor=function(e){switch(e){case 5:return"gizmo-actionstart";case 0:case 1:case 2:case 3:case 4:return"gizmo-actionupdate";case 6:return"gizmo-actioncommit";case 7:case 8:return"gizmo-key"}},i.drawGizmos=function(e){this.drawHoverOverlay(e);for(var t,n,i=D(null!=(t=this.gizmoManager.activeGizmos)?t:[]);!(n=i()).done;){var r=n.value;this.drawGizmo(r,e)}this.drawSnappingVisualizations(e)},i.drawHoverOverlay=function(e){if(!this.isPanning()){var t=this.selection.hoverOverlayItemId;if(t){var n=nr(this.engine.sceneServer.compositions[0],t),i=n?t5(n,nd.getContainerSize(this.engine.canvas.parentElement)):void 0;if(i){var r=this.getConfigManager().get(nA);nW(e,tx(i),nD(r.preSelectedColor,1),r.preSelectedWidth)}}}},i.drawGizmo=function(e,t){try{e.draw(t)}catch(t){var n;null==(n=this.errorMonitor)||n.report(t,"gizmo-draw",{gizmoType:e.type})}},i.drawSnappingVisualizations=function(e){var t=this.snapManager.getSnappingVisualizations();if(0!==t.length)for(var n,i=this.snapManager.config,r=i.lineWidth,o=nD(i.lineColor,1),s=D(t);!(n=s()).done;){var a=n.value;e.drawLine(a.start.x,a.start.y,a.end.x,a.end.y,o,r)}},i.handleGizmoError=function(e,t,n){var i;null==(i=this.errorMonitor)||i.report(e,t,{gizmoType:n}),this.clearCapturedGizmo(),this.selectionTransformKind="idle",this.snapManager.reset()},tB(n,[{key:"ignoreInteraction",get:function(){return this._ignoreInteraction},set:function(e){e!==this._ignoreInteraction&&(this._ignoreInteraction=e)}}]),n}(r.Control),iZ=function(n){function i(){var t;return t=n.apply(this,arguments)||this,t.type=e.GizmoType.VIEWPORT_OVERLAY,t.box=new to,t.safeAreaTextures=new Map,t.safeAreaTexturePromises=new Map,t}G(i,n);var r=i.prototype;return r.onUpdate=function(){if(this.mainViewportBoxProvider){var e;this.box=null!=(e=this.mainViewportBoxProvider())?e:new to,this.transform=tg(this.box);return}var n=this._owner.getEngine().sceneServer.compositions[0],i=null==n?void 0:n.items.find(function(e){return e.type===t.spec.ItemType.null&&void 0!==e.getComponent(t.FrameComponent)&&"主合成蒙版"===e.name});if(i){var r=nd.getContainerSize(this._owner.getEngine().canvas.parentElement);this.box=t3(i,r),this.transform=t5(i,r);return}var o=null==n?void 0:n.items.find(function(e){return t$(e)});if(o){var s=nd.getContainerSize(this._owner.getEngine().canvas.parentElement);this.box=t3(o,s),this.transform=t5(o,s);return}if(!this.viewProperty){this.box=new to,this.transform=void 0;return}var a=null==n?void 0:n.items.find(function(e){var t;return null==(t=e.composition)?void 0:t.camera});if(!(null==n?void 0:n.camera)||!a){this.box=new to,this.transform=void 0;return}this.transform=this.projectPreviewBox(a,this.viewProperty.size),this.box=this.transform?tw(this.transform):new to},r.draw=function(e){var t=this.transform;if(!this.box.isEmpty()&&t){var n=tx(t),i=this.config,r=i.boxWidth,o=i.boxColor,s=i.outerMaskEnabled,a=i.markColor,c=i.markAlpha,l=i.safeAreaEnabled,u=i.safeAreaBoxColor,h=i.safeAreaBoxAlpha;if(s){var d=nD(a,c),m=nd.getContainerSize(this._owner.getEngine().canvas.parentElement),f=[new e6,new e6(m.x,0),m.clone(),new e6(0,m.y)];nX(e,[f[0],f[1],n[1],n[0]],d),nX(e,[f[1],f[2],n[2],n[1]],d),nX(e,[f[2],f[3],n[3],n[2]],d),nX(e,[f[3],f[0],n[0],n[3]],d)}if(l&&this.viewProperty){var p=this.viewProperty,g=p.size,v=p.safeArea,y=v[0],x=v[1],w=v[2],A=v[3],M=nD(u,h),I=y/g[1],C=x/g[1],S=w/g[0],T=A/g[0];nX(e,tx(t,new to(new e6(0,0),new e6(1,I))),M),nX(e,tx(t,new to(new e6(0,I),new e6(S,1))),M),nX(e,tx(t,new to(new e6(1-T,I),new e6(1,1))),M),nX(e,tx(t,new to(new e6(S,1-C),new e6(1-T,1))),M);for(var b,E,P=D(this.viewProperty.previewSafeAreas);!(E=P()).done;)b=this,function(){var n=E.value,i=n.box,r=i[0],o=i[1],s=i[2],a=i[3],c=n.color,l=n.url;if(!1!==n.visible){var u=tx(t,new to(new e6(r/g[0],o/g[1]),new e6((r+s)/g[0],(o+a)/g[1])));if(l){var h=b.getSafeAreaTexture(l,e.engine);if(!h)return;var d=u[0],m=u[1],f=u[3],p=m.clone().subtract(d),v=f.clone().subtract(d);n_(e,d,p,v,function(){e.drawTexture(0,0,1,1,h)})}else{var y,x,w,A,M=null!=(y=null==c?void 0:c[3])?y:.3;nX(e,u,nD((null!=(x=null==c?void 0:c[0])?x:255)<<16|(null!=(w=null==c?void 0:c[1])?w:0)<<8|(null!=(A=null==c?void 0:c[2])?A:0),M))}}}()}nW(e,n,nD(o,1),r)}},r.dispose=function(){this.safeAreaTextures.forEach(function(e){e.isDestroyed||e.dispose()}),this.safeAreaTextures.clear(),this.safeAreaTexturePromises.clear(),n.prototype.dispose.call(this)},r.projectPreviewBox=function(e,t){var n=nd.getContainerSize(this._owner.getEngine().canvas.parentElement),i=t[0]/2,r=t[1]/2;return tp([new e9(-i,r,0),new e9(i,r,0),new e9(i,-r,0),new e9(-i,-r,0)].map(function(t){return tU(t,e,n)}))},r.getSafeAreaTexture=function(e,n){var i=this,r=this.safeAreaTextures.get(e);if(r&&!r.isDestroyed)return r;if(!this.safeAreaTexturePromises.has(e)){var o=t.Texture.fromImage(e,n).then(function(t){return i.safeAreaTextures.set(e,t),t});this.safeAreaTexturePromises.set(e,o)}},tB(i,[{key:"config",get:function(){return this._owner.getConfigManager().get(nw)}}]),i}(tY);t.registerPlugin("editor-gizmo",e$);var iX="2.11.0-alpha.0";t.logger.info("Plugin editor gizmo version: "+iX+"."),iX!==E.version&&console.error("注意:请统一 Editor Gizmo 插件与 Player 版本,不统一的版本混用会有不可预知的后果!","\nAttention: Please ensure the Editor Gizmo plugin is synchronized with the Player version. Mixing and matching incompatible versions may result in unpredictable consequences!"),e.BASELINE_SYMBOL="M",e.BoxSelectionGizmo=n4,e.CONTROL_TEXT_GLYPH_PADDING=4,e.ChangeSelectionGizmo=n3,e.ClickDragMultiplexGizmo=n8,e.Color=e0,e.ConfigManager=ib,e.CornerRotationGizmo=n1,e.DEFAULT_LOADING_FRAGMENT=ng,e.DEG2RAD=e7,e.DRAG_THRESHOLD_PX=5,e.DefaultSelectionMode=id,e.DefaultVFXItems=tH,e.DirectionLightData=eu,e.EffectsEditMode=io,e.EnterEditModeGizmo=ih,e.Euler=e1,e.EulerOrder=e2,e.FrameManager=iR,e.GestureHandler=iK,e.Gizmo=tY,e.GizmoManager=iE,e.GizmoTool=tV,e.GizmoViewportUtils=nd,e.HandGizmo=ij,e.HandGizmoTool=tD,e.INFO_TEXT_FONT_FAMILY=nR,e.INFO_TEXT_FONT_SIZE=14,e.IconGizmo=iW,e.ImageCutGizmo=im,e.ImageCutGizmoTool=ip,e.ImageExpandGizmo=ig,e.ImageExpandGizmoTool=iv,e.ItemCreateGizmo=iC,e.ItemCreateGizmoTool=iS,e.LeaveEffectsEditGizmo=n2,e.LeaveTextEditGizmo=is,e.LoadingGizmo=iU,e.LoadingManager=iP,e.METRICS_STRING=nF,e.MaskGizmo=iA,e.MaskGizmoTool=iM,e.Matrix3=e4,e.Matrix4=e3,e.MoveGizmoTool=tO,e.MoveSelectionGizmo=ii,e.Quaternion=e5,e.RAD2DEG=te,e.Ray=e8,e.RayCaster=tP,e.ResizeSelectionGizmo=n0,e.SCALE_CORNER_HIT_SIZE=14,e.SelectTextGizmo=il,e.Selection=iF,e.SnapManager=iV,e.SpriteTextEditGizmo=ix,e.SpriteTextEditGizmoTool=iw,e.TEXT_EDIT_BOX_LINE_COLOR=3900150,e.TEXT_EDIT_BOX_LINE_WIDTH=2,e.TextEditMode=iu,e.TextEditSession=tF,e.TextGizmo=ic,e.VFXItemFactory=tN,e.Vector2=e6,e.Vector3=e9,e.ViewportNavigationController=nL,e.ViewportOverlayGizmo=iZ,e.calculateAutoLayoutIndicatorLine=n9,e.calculateAutoLayoutPositionByMouse=n7,e.calculateInsertPositionFromLayout=ie,e.clamp=tt,e.cloneConfigValue=nm,e.computeFrameAutoLayout=iB,e.createGeometry=ef,e.createInteractionPlane=t_,e.createSelectionInteractionGizmo=ir,e.cursorMap=iO,e.decomposeItemTransform=t9,e.defineConfig=np,e.drawBox=nK,e.drawCorners=nW,e.drawDashedCorners=nQ,e.drawWithBoxTransform=n_,e.effectsEditModeConfig=ny,e.fillBox=nZ,e.fillBoxByCorners=nX,e.fillRotatedRect=nq,e.freezeConfigValue=nf,e.getAbsMaxIndex=function(e){var t,n=0;return e.forEach(function(e,i){if(0===i)t=Math.abs(e);else{var r=Math.abs(e);t<r&&(t=r,n=i)}}),n},e.getAngleByVectors=tT,e.getBoxByNormalizeBox=tb,e.getBoxCorners=tf,e.getBoxTransform=tp,e.getBoxTransformFromBox=tg,e.getEffectsPlayerItemOwner=nt,e.getFramePlayerItemAncestors=nn,e.getItemChildren=ni,e.getItemTransform=t6,e.getItemViewAnchor=t8,e.getItemViewBox=t3,e.getItemViewSize=function(e,t){return t$(e)?tX(t7(e),t,e):t3(e,t).getSize()},e.getItemViewTransform=t5,e.getItemWorldSize=t7,e.getNormalizeBoxByBoxes=tE,e.getPlayerItemById=nr,e.getRotatedBoxCorners=nJ,e.getTransformedBox=tw,e.getTransformedBoxCorners=tx,e.getVector2Angle=tS,e.getViewportTranslationRange=nG,e.iconConfig=nE,e.imageCutConfig=nC,e.imageExpandConfig=nS,e.inverseTransformBoxPoint=ty,e.isDragThresholdReached=iI,e.isEffectsPlayerItem=t0,e.isEqual=tn,e.isFramePlayerItem=t$,e.isGeneratorPlayerItem=t1,e.isGroupPlayerItem=t4,e.isPlayerItemVisible=ne,e.isVideoGeneratorPlayerItem=t2,e.isZero=ti,e.itemCreateConfig=nP,e.loadCursorIcons=iY,e.loadingConfig=nv,e.maskConfig=nT,e.measureControlTextCellHeight=nN,e.measureTextMetrics=nY,e.measureTextWidth=nH,e.ndcSizeToViewSize=tQ,e.panView=nB,e.pauseEffectsItem=nh,e.pauseVideoComponent=na,e.pauseVideoItem=nl,e.playEffectsItem=nu,e.playVideoComponent=ns,e.playVideoItem=nc,e.projectPoint=tU,e.resizeFrameItem=nk,e.resizeSelectionConfig=nI,e.rotateBox=function(e,t,n){var i,r;return(void 0===n&&(n=e.getCenter()),e.isEmpty())?e:tI(e,(i=tf(e),r=n,i.map(function(e){return e.clone().rotateAround(r,t)})))},e.scaleBox=tC,e.selectionPreviewConfig=nA,e.selectionSnapConfig=nM,e.setBoxFromPoints=tI,e.spriteTextEditConfig=nb,e.toColor=nD,e.transformBoxPoint=tv,e.transformedBoxContainsPoint=tM,e.transformedBoxIntersectsBox=tA,e.truncateText=nU,e.version=iX,e.viewPositionToNDC=tj,e.viewPositionToPixel=tq,e.viewPositionToWorld=tK,e.viewSizeToNDC=tW,e.viewSizeToPixel=tJ,e.viewSizeToWorld=tZ,e.viewportNavigationConfig=nx,e.viewportOverlayConfig=nw,e.worldSizeToViewSize=tX,e.wrapText=nj,e.zoomView=nz,Object.defineProperty(e,"__esModule",{value:!0})});
|
|
6
|
+
* Version: v2.11.0-alpha.1
|
|
7
|
+
*/function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@galacean/effects"),require("@galacean/effects-plugin-multimedia"),require("@galacean/effects-plugin-rich-text"),require("@galacean/effects-plugin-gui")):"function"==typeof define&&define.amd?define(["exports","@galacean/effects","@galacean/effects-plugin-multimedia","@galacean/effects-plugin-rich-text","@galacean/effects-plugin-gui"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).ge=e.ge||{},e.ge.editorGizmoPlugin={}),e.ge,e.ge.multimediaPlugin,e.ge.richTextPlugin,e.ge.gui)}(this,function(e,t,n,i,r){"use strict";var o,s,a,c,l,u,h,d,m,f,p,g,v,y,x,w,A,M,I,C,S,T,b,E=function(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach(function(n){if("default"!==n){var i=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,i.get?i:{enumerable:!0,get:function(){return e[n]}})}}),t.default=e,Object.freeze(t)}(t);function P(e,t,n,i,r,o,s){try{var a=e[o](s),c=a.value}catch(e){n(e);return}a.done?t(c):Promise.resolve(c).then(i,r)}function z(e){return function(){var t=this,n=arguments;return new Promise(function(i,r){var o=e.apply(t,n);function s(e){P(o,i,r,s,a,"next",e)}function a(e){P(o,i,r,s,a,"throw",e)}s(void 0)})}}function B(e,t){return(B=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function G(e,t){if("function"!=typeof t&&null!==t)throw TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&B(e,t)}function L(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(L=function(){return!!e})()}function k(e,t,n){return(k=L()?Reflect.construct:function(e,t,n){var i=[null];i.push.apply(i,t);var r=new(Function.bind.apply(e,i));return n&&B(r,n.prototype),r}).apply(null,arguments)}function R(e){return(R=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function F(e){var t="function"==typeof Map?new Map:void 0;return(F=function(e){if(null===e||-1===Function.toString.call(e).indexOf("[native code]"))return e;if("function"!=typeof e)throw TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return k(e,arguments,R(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),B(n,e)})(e)}function V(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,i=Array(t);n<t;n++)i[n]=e[n];return i}function D(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(n)return(n=n.call(e)).next.bind(n);if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return V(e,void 0);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return V(e,void 0)}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var i=0;return function(){return i>=e.length?{done:!0}:{done:!1,value:e[i++]}}}throw TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function O(e,t){return null!=t&&"undefined"!=typeof Symbol&&t[Symbol.hasInstance]?!!t[Symbol.hasInstance](e):O(e,t)}function Y(e,t){var n,i,r,o={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]},s=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return s.next=a(0),s.throw=a(1),s.return=a(2),"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function a(a){return function(c){return function(a){if(n)throw TypeError("Generator is already executing.");for(;s&&(s=0,a[0]&&(o=0)),o;)try{if(n=1,i&&(r=2&a[0]?i.return:a[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,a[1])).done)return r;switch(i=0,r&&(a=[2&a[0],r.value]),a[0]){case 0:case 1:r=a;break;case 4:return o.label++,{value:a[1],done:!1};case 5:o.label++,i=a[1],a=[0];continue;case 7:a=o.ops.pop(),o.trys.pop();continue;default:if(!(r=(r=o.trys).length>0&&r[r.length-1])&&(6===a[0]||2===a[0])){o=0;continue}if(3===a[0]&&(!r||a[1]>r[0]&&a[1]<r[3])){o.label=a[1];break}if(6===a[0]&&o.label<r[1]){o.label=r[1],r=a;break}if(r&&o.label<r[2]){o.label=r[2],o.ops.push(a);break}r[2]&&o.ops.pop(),o.trys.pop();continue}a=t.call(e,o)}catch(e){a=[6,e],i=0}finally{n=r=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,c])}}}"function"==typeof SuppressedError&&SuppressedError;var N={xAxisColor:[216/255,178/255,76/255],yAxisColor:[38/255,149/255,235/255],zAxisColor:[134/255,74/255,245/255]},H=t.glContext.TRIANGLES,U=new Map;function j(){return(j=z(function(e){var t;return Y(this,function(n){return(t=new Image).src=e,[2,new Promise(function(e,n){t.onload=function(){e(t)},t.onerror=n})]})})).apply(this,arguments)}function W(e,t){var n=t.clone().subtract(e),i=n.clone().normalize().clone().multiply(20),r=n.clone().subtract(i).clone().multiply(-1);return t.clone().add(r)}U.set("light","data:image/png;base64,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"),U.set("camera","data:image/png;base64,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"),U.set("posX","data:image/png;base64,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\n RK5CYII="),U.set("posY","data:image/png;base64,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"),U.set("posZ","data:image/png;base64,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"),U.set("negX","data:image/png;base64,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\n 5ErkJggg=="),U.set("negY","data:image/png;base64,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\n 5ErkJggg=="),U.set("negZ","data:image/png;base64,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"),e.GizmoSubType=void 0,(o=e.GizmoSubType||(e.GizmoSubType={}))[o.particleEmitter=1]="particleEmitter",o[o.modelWireframe=2]="modelWireframe",o[o.box=3]="box",o[o.sphere=4]="sphere",o[o.cylinder=5]="cylinder",o[o.cone=6]="cone",o[o.torus=7]="torus",o[o.sprite=8]="sprite",o[o.plane=9]="plane",o[o.rotation=10]="rotation",o[o.translation=11]="translation",o[o.scale=12]="scale",o[o.viewHelper=13]="viewHelper",o[o.camera=14]="camera",o[o.frustum=15]="frustum",o[o.light=16]="light",o[o.directionLight=17]="directionLight",o[o.pointLight=18]="pointLight",o[o.spotLight=19]="spotLight",o[o.boundingBox=20]="boundingBox",o[o.floorGrid=21]="floorGrid",t.math.Vector3,t.math.Ray,(s=M||(M={}))[s.box=0]="box",s[s.sphere=1]="sphere",s[s.triangle=2]="triangle",s[s.line=3]="line";var Q=t.math.Matrix4,K=t.math.Vector2;function Z(e,t,n,i,r,o){var s=1/(t-e),a=1/(i-n),c=1/(o-r),l=-(t+e)*s,u=-(i+n)*a,h=-(o+r)*c;return new Q(s*=2,0,0,0,0,a*=2,0,0,0,0,c*=-2,0,l,u,h,1)}function X(){return(X=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e}).apply(this,arguments)}var J=function(){function e(){this.points=[],this.uvs=[],this.normals=[],this.indices=[]}var t=e.prototype;return t.createXYPlaneCircle=function(e,t,n,i,r,o,s,a){for(var c=0;c<n;c++){var l=i+c*r/n,u=e*Math.cos(l),h=e*Math.sin(l);s.push(u,h,t),a.push(o+c,o+(c+1)%n)}},t.createXZPlaneCircle=function(e,t,n,i,r,o,s,a){for(var c=0;c<n;c++){var l=i+c*r/n,u=e*Math.cos(l),h=e*Math.sin(l);s.push(u,t,h),a.push(o+c,o+(c+1)%n)}},t.createYZPlaneCircle=function(e,t,n,i,r,o,s,a){for(var c=0;c<n;c++){var l=i+c*r/n,u=e*Math.cos(l),h=e*Math.sin(l);s.push(t,h,u),a.push(o+c,o+(c+1)%n)}},e}(),q=t.math.Vector3,_=function(e){function t(t,n,i,r,o,s,a){void 0===t&&(t=1),void 0===n&&(n=8),void 0===i&&(i=6),void 0===r&&(r=0),void 0===o&&(o=2*Math.PI),void 0===s&&(s=0),void 0===a&&(a=Math.PI),g=e.call(this)||this,n=Math.max(3,Math.floor(n)),i=Math.max(2,Math.floor(i));for(var c=Math.min(s+a,Math.PI),l=[],u=0,h=0;h<=i;h++){var d=[],m=h/i,f=0;0==h&&0==s?f=.5/n:h==i&&c==Math.PI&&(f=-.5/n);for(var p=0;p<=n;p++){var g,v,y=p/n,x=-t*Math.cos(r+y*o)*Math.sin(s+m*a),w=t*Math.cos(s+m*a),A=t*Math.sin(r+y*o)*Math.sin(s+m*a);g.points.push(x,w,A);var M=new q(x,w,A).normalize();(v=g.normals).push.apply(v,[].concat(M.toArray())),g.uvs.push(y+f,1-m),d.push(u++)}l.push(d)}for(var I=0;I<i;I++)for(var C=0;C<n;C++){var S=l[I][C+1],T=l[I][C],b=l[I+1][C],E=l[I+1][C+1];(0!==I||s>0)&&g.indices.push(S,T,E),(I!==i-1||c<Math.PI)&&g.indices.push(T,b,E)}return g}return G(t,e),t}(J),$=function(e){function t(t,n,i){void 0===t&&(t=1),void 0===n&&(n=1),void 0===i&&(i=1);var r,o=function(e,t,n,i,r,o,a,c,l,u,h,d){for(var m=o/2,f=a/2,p=c/2,g=[0,0,0],v=0,y=0;y<2;y++)for(var x=y*a-f,w=0;w<2;w++){var A=w*o-m;g[e]=A*i,g[t]=x*r,g[n]=p,l.push.apply(l,[].concat(g)),g[e]=0,g[t]=0,g[n]=c>0?1:-1,h.push.apply(h,[].concat(g)),u.push(w),u.push(1-y),v+=1}for(var M=0;M<1;M++)for(var I=0;I<1;I++){var C=s+I+2*M,S=s+I+2*(M+1),T=s+(I+1)+2*(M+1),b=s+(I+1)+2*M;d.push(C,S,b),d.push(S,T,b)}s+=v};r=e.call(this)||this;var s=0;return o(2,1,0,-1,-1,i,n,t,r.points,r.uvs,r.normals,r.indices),o(2,1,0,1,-1,i,n,-t,r.points,r.uvs,r.normals,r.indices),o(0,2,1,1,1,t,i,n,r.points,r.uvs,r.normals,r.indices),o(0,2,1,1,-1,t,i,-n,r.points,r.uvs,r.normals,r.indices),o(0,1,2,1,-1,t,n,i,r.points,r.uvs,r.normals,r.indices),o(0,1,2,-1,-1,t,n,-i,r.points,r.uvs,r.normals,r.indices),r}return G(t,e),t}(J),ee=t.math.Vector3,et=function(e){function t(t,n,i,r,o,s,a,c){void 0===t&&(t=1),void 0===n&&(n=1),void 0===i&&(i=1),void 0===r&&(r=8),void 0===o&&(o=1),void 0===s&&(s=!1),void 0===a&&(a=0),void 0===c&&(c=2*Math.PI);var l,u=function(e,i,o,s,l){for(var u=h,d=!0===e?t:n,f=!0===e?1:-1,p=1;p<=r;p++)i.push(0,m*f,0),s.push(0,f,0),o.push(.5,.5),h++;for(var g=h,v=0;v<=r;v++){var y=v/r*c+a,x=Math.cos(y),w=Math.sin(y),A=d*w,M=m*f,I=d*x;i.push(A,M,I),s.push(0,f,0);var C=.5*x+.5,S=.5*w*f+.5;o.push(C,S),h++}for(var T=0;T<r;T++){var b=u+T,E=g+T;!0===e?l.push(E,E+1,b):l.push(E+1,E,b)}};l=e.call(this)||this,r=Math.floor(r),o=Math.floor(o);var h=0,d=[],m=i/2;return!function(e,s,l,u){for(var f=(n-t)/i,p=0;p<=o;p++){for(var g=[],v=p/o,y=v*(n-t)+t,x=0;x<=r;x++){var w=x/r,A=w*c+a,M=Math.sin(A),I=Math.cos(A),C=y*M,S=-v*i+m,T=y*I;e.push(C,S,T);var b=new ee(M,f,I).normalize();l.push.apply(l,[].concat(b.toArray())),s.push(w,1-v),g.push(h++)}d.push(g)}for(var E=0;E<r;E++)for(var P=0;P<o;P++){var z=d[P][E],B=d[P+1][E],G=d[P+1][E+1],L=d[P][E+1];u.push(z,B,L),u.push(B,G,L)}}(l.points,l.uvs,l.normals,l.indices),!1===s&&(t>0&&u(!0,l.points,l.uvs,l.normals,l.indices),n>0&&u(!1,l.points,l.uvs,l.normals,l.indices)),l}return G(t,e),t}(J),en=function(e){function t(t,n,i,r,o,s,a){return void 0===t&&(t=1),void 0===n&&(n=1),void 0===i&&(i=8),void 0===r&&(r=1),void 0===o&&(o=!1),void 0===s&&(s=0),void 0===a&&(a=2*Math.PI),e.call(this,0,t,n,i,r,o,s,a)}return G(t,e),t}(et),ei=t.math.Vector3,er=function(e){function t(t,n,i,r,o){void 0===t&&(t=1),void 0===n&&(n=.4),void 0===i&&(i=64),void 0===r&&(r=64),void 0===o&&(o=2*Math.PI),c=e.call(this)||this,i=Math.floor(i),r=Math.floor(r);for(var s=0;s<=i;s++)for(var a=0;a<=r;a++){var c,l,u=a/r*o,h=s/i*Math.PI*2,d=(t+n*Math.cos(h))*Math.cos(u),m=(t+n*Math.cos(h))*Math.sin(u),f=n*Math.sin(h);c.points.push(d,m,f);var p=t*Math.cos(u),g=t*Math.sin(u),v=new ei(d,m,f),y=new ei(p,g,0),x=v.subtract(y).normalize();(l=c.normals).push.apply(l,[].concat(x.toArray())),c.uvs.push(a/r),c.uvs.push(s/i)}for(var w=1;w<=i;w++)for(var A=1;A<=r;A++){var M=(r+1)*w+A-1,I=(r+1)*(w-1)+A-1,C=(r+1)*(w-1)+A,S=(r+1)*w+A;c.indices.push(M,I,S),c.indices.push(I,C,S)}return c}return G(t,e),t}(J),eo=function(e){function t(t,n,i,r){void 0===t&&(t=1),void 0===n&&(n=1),void 0===i&&(i=1),void 0===r&&(r=1),o=e.call(this)||this;for(var o,s=t/2,a=n/2,c=Math.floor(i),l=Math.floor(r),u=c+1,h=l+1,d=t/c,m=n/l,f=0;f<h;f++)for(var p=f*m-a,g=0;g<u;g++){var v=g*d-s;o.points.push(v,-p,0),o.normals.push(0,0,1),o.uvs.push(g/c),o.uvs.push(1-f/l)}for(var y=0;y<l;y++)for(var x=0;x<c;x++){var w=x+u*y,A=x+u*(y+1),M=x+1+u*(y+1),I=x+1+u*y;o.indices.push(w,A,I),o.indices.push(A,M,I)}return o}return G(t,e),t}(J),es=t.math.Euler,ea=t.math.Vector3,ec=t.math.Matrix4,el=function(e){function t(t,n,i,r,o,s){c=e.call(this)||this;var a,c,l=s*Math.tan(i/180*Math.PI/2),u=l*r,h=new ea(u,l,s),d=new ea(-u,l,s),m=new ea(-u,-l,s),f=new ea(u,-l,s),p=es.fromArray(n).toMatrix4(new ec),g=p.transformPoint(h).add(t),v=p.transformPoint(d).add(t),y=p.transformPoint(m).add(t),x=p.transformPoint(f).add(t);return(a=c.points).push.apply(a,[].concat(t,g.toArray(),v.toArray(),y.toArray(),x.toArray())),c.indices.push(0,1,0,2,0,3,0,4,1,2,2,3,3,4,4,1),c}return G(t,e),t}(J),eu=function(e){function t(t,n,i,r,o,s){void 0===t&&(t=1),void 0===n&&(n=2),void 0===i&&(i=64),void 0===r&&(r=8),void 0===o&&(o=0),void 0===s&&(s=2*Math.PI),(a=e.call(this)||this).createXYPlaneCircle(t,0,i,o,s,0,a.points,a.indices);for(var a,c=i%r/2,l=i/r,u=0;u<r;u++){var h=c+u*l,d=a.points[3*h],m=a.points[3*h+1],f=-n;a.points.push(d,m,f),a.indices.push(h,i+u)}return a}return G(t,e),t}(J),eh=function(e){function t(t,n,i,r){var o;return void 0===t&&(t=10),void 0===n&&(n=64),void 0===i&&(i=0),void 0===r&&(r=2*Math.PI),(o=e.call(this)||this).createXYPlaneCircle(t,0,n,i,r,0,o.points,o.indices),o.createXZPlaneCircle(t,0,n,i,r,n,o.points,o.indices),o.createYZPlaneCircle(t,0,n,i,r,2*n,o.points,o.indices),o}return G(t,e),t}(J),ed=function(e){function t(t,n,i,r,o){void 0===t&&(t=10),void 0===n&&(n=30),void 0===i&&(i=64),void 0===r&&(r=0),void 0===o&&(o=2*Math.PI),s=e.call(this)||this;var s,a=t*Math.tan(n/2/180*Math.PI);s.createXYPlaneCircle(a,-t,i,r,o,0,s.points,s.indices),s.points.push(0,0,0);for(var c=i/4,l=i%4/2,u=0;u<4;u++)s.indices.push(i,l+u*c);return s}return G(t,e),t}(J),em=function(e){function t(t,n){void 0===t&&(t=12),void 0===n&&(n=6),i=e.call(this)||this;for(var i,r=0,o=t/2,s=-t/2,a=0;a<=n;a++){var c=s+a*t/n;i.points.push(c,s,0,c,o,0,s,c,0,o,c,0),i.indices.push(r,r+1,r+2,r+3),r+=4}return i}return G(t,e),t}(J);function ef(e,n,i,r){var o;switch(n){case 1:o=new _(i.radius,i.widthSegments,i.heightSegments);break;case 2:o=new et(i.radius,i.radius,i.height);break;case 3:o=new en(i.radius,i.height);break;case 4:o=new er(i.radius,i.tube,i.radialSegments,i.tubularSegments,i.arc);break;case 6:case 7:o=new eo(i.width,i.height);break;case 5:o=new el(i.position,i.rotation,i.fov,i.aspect,i.near,i.far);break;case 8:o=new eu(i.radius,i.length,i.segments4,i.linesNumber,i.thetaStart,i.thetaLength);break;case 10:o=new eh(i.range,i.segments,i.thetaStart,i.thetaLength);break;case 9:o=new ed(i.range,i.spotAngle,i.segments,i.thetaStart,i.thetaLength);break;case 11:o=new em(i.sideLength,i.parts);break;default:o=new $(i.width,i.height,i.depth)}return t.Geometry.create(e,{attributes:{a_Position:{size:3,data:new Float32Array(o.points)},a_Normal:{size:3,data:new Float32Array(o.normals)},a_UV1:{size:2,data:new Float32Array(o.uvs)}},indices:{data:new Uint16Array(o.indices)},mode:r,drawCount:o.indices.length})}e.GeometryType=void 0,(a=e.GeometryType||(e.GeometryType={}))[a.Box=0]="Box",a[a.Sphere=1]="Sphere",a[a.Cylinder=2]="Cylinder",a[a.Cone=3]="Cone",a[a.Torus=4]="Torus",a[a.Frustum=5]="Frustum",a[a.Sprite=6]="Sprite",a[a.Plane=7]="Plane",a[a.DirectionLight=8]="DirectionLight",a[a.SpotLight=9]="SpotLight",a[a.PointLight=10]="PointLight",a[a.FloorGrid=11]="FloorGrid";var ep=t.math.Vector2,eg=t.math.Vector3,ev=t.math.Matrix4;function ey(n,i,r,o,s){var a,c,l,u,h,d,m,f,p,g,v,y,x,w,A,I,C,S;switch(s||(s={size:0,renderMode:WebGLRenderingContext.TRIANGLES}),i){case e.GizmoSubType.sprite:a=eM(n,s);break;case e.GizmoSubType.camera:a=eM(n,s,o?o.get("camera"):void 0,r);break;case e.GizmoSubType.light:a=eM(n,s,o?o.get("light"):void 0,r);break;case e.GizmoSubType.translation:a=function(n,i,r){for(var o,s=new Map,a=i.size.scale||1,c={width:.8*a,height:.02*a,depth:.02*a},l="translation",u=ew(n,c,!1,l),h=D(u);!(o=h()).done;){var d=o.value,m=d[0],f=d[1];s.set(m,f)}var p={radius:.05*a,height:.2*a},g=eA(n,e.GizmoSubType.cone,{size:p,color:N.xAxisColor,renderMode:H,depthTest:!0,name:l},"blend"),v=eA(n,e.GizmoSubType.cone,{size:p,color:N.yAxisColor,renderMode:H,depthTest:!0,name:l},"blend"),y=eA(n,e.GizmoSubType.cone,{size:p,color:N.zAxisColor,renderMode:H,name:l,depthTest:!0},"blend"),x=new t.Transform({valid:!0}),w=new t.Transform({valid:!0}),A=new t.Transform({valid:!0});x.setRotation(0,0,90),w.setRotation(0,0,0),A.setRotation(-90,0,0),x.translate(c.width,0,0),w.translate(0,c.width,0),A.translate(0,0,c.width);var I={width:.2*a,height:.2*a},C=eA(n,e.GizmoSubType.plane,{size:I,color:N.zAxisColor,renderMode:H,depthTest:!0,name:l}),S=eA(n,e.GizmoSubType.plane,{size:I,color:N.xAxisColor,renderMode:H,depthTest:!0,name:l}),T=eA(n,e.GizmoSubType.plane,{size:I,color:N.yAxisColor,renderMode:H,depthTest:!0,name:l}),b=new t.Transform({valid:!0}),E=new t.Transform({valid:!0}),P=new t.Transform({valid:!0}),z=c.width/8;return b.translate(I.width/2+z,I.height/2+z,0),E.setRotation(0,90,0),E.translate(0,I.height/2+z,I.width/2+z),P.setRotation(-90,0,0),P.translate(I.width/2+z,0,I.height/2+z),s.set(g,x),s.set(v,w),s.set(y,A),s.set(C,b),s.set(S,E),s.set(T,P),eI({width:2.4*p.radius,length:c.width+p.height/2},r),r.set("xyPlane",{type:M.triangle,triangles:C.firstGeometry()?ex(C.firstGeometry(),b):[],backfaceCulling:!1}),r.set("yzPlane",{type:M.triangle,triangles:S.firstGeometry()?ex(S.firstGeometry(),E):[],backfaceCulling:!1}),r.set("zxPlane",{type:M.triangle,triangles:T.firstGeometry()?ex(T.firstGeometry(),P):[],backfaceCulling:!1}),s}(n,s,r);break;case e.GizmoSubType.scale:a=function(n,i,r){for(var o,s=new Map,a=i.size.scale||1,c={width:.8*a,height:.02*a,depth:.02*a},l="scale",u=ew(n,c,!1,l),h=D(u);!(o=h()).done;){var d=o.value,m=d[0],f=d[1];s.set(m,f)}var p={width:.1*a,height:.1*a,depth:.1*a},g={width:.2*a,height:.2*a,depth:.2*a},v=eA(n,e.GizmoSubType.box,{size:p,color:N.xAxisColor,renderMode:H,depthTest:!0,name:l},"blend"),y=eA(n,e.GizmoSubType.box,{size:p,color:N.yAxisColor,renderMode:H,depthTest:!0,name:l},"blend"),x=eA(n,e.GizmoSubType.box,{size:p,color:N.zAxisColor,renderMode:H,depthTest:!0,name:l},"blend"),w=eA(n,e.GizmoSubType.box,{size:g,color:[.8,.8,.8],renderMode:H,depthTest:!0,name:l},"blend"),A=new t.Transform({valid:!0}),I=new t.Transform({valid:!0}),C=new t.Transform({valid:!0}),S=new t.Transform({valid:!0});return A.translate(c.width,0,0),I.translate(0,c.width,0),C.translate(0,0,c.width),s.set(w,S),s.set(v,A),s.set(y,I),s.set(x,C),eI({width:1.2*p.width,length:c.width+p.width/2},r),r.set("center",{type:M.sphere,center:new eg,radius:Math.pow(Math.pow(g.width,2)+Math.pow(g.height,2)+Math.pow(g.depth,2),.5)/2}),s}(n,s,r);break;case e.GizmoSubType.viewHelper:a=function(e,n,i,r){for(var o,s=new Map,a=n.size.scale||1,c={width:.8*a,height:.02*a,depth:.02*a},l=ew(e,c,!0),u=D(l);!(o=u()).done;){var h=o.value,d=h[0],m=h[1];s.set(d,m)}var f={width:.14*a,height:.14*a},p=(c.width+f.width)/2,g=eM(e,{size:f,renderMode:H,depthTest:!0},r.get("posX")),v=eM(e,{size:f,renderMode:H,depthTest:!0},r.get("posY")),y=eM(e,{size:f,renderMode:H,depthTest:!0},r.get("posZ")),x=new t.Transform({valid:!0}),w=new t.Transform({valid:!0}),A=new t.Transform({valid:!0});x.translate(p,0,0),w.translate(0,p,0),A.translate(0,0,p);var I=eM(e,{size:f,renderMode:H,depthTest:!0},r.get("negX")),C=eM(e,{size:f,renderMode:H,depthTest:!0},r.get("negY")),S=eM(e,{size:f,renderMode:H,depthTest:!0},r.get("negZ")),T=new t.Transform({valid:!0}),b=new t.Transform({valid:!0}),E=new t.Transform({valid:!0});T.translate(-p,0,0),b.translate(0,-p,0),E.translate(0,0,-p),s.set(g,x),s.set(v,w),s.set(y,A),s.set(I,T),s.set(C,b),s.set(S,E);var P=f.height/2*1.2;return i.set("posX",{type:M.sphere,center:x.position,radius:P}),i.set("posY",{type:M.sphere,center:w.position,radius:P}),i.set("posZ",{type:M.sphere,center:A.position,radius:P}),i.set("negX",{type:M.sphere,center:T.position,radius:P}),i.set("negY",{type:M.sphere,center:b.position,radius:P}),i.set("negZ",{type:M.sphere,center:E.position,radius:P}),s}(n,s,r,o);break;case e.GizmoSubType.rotation:c=s,l=new Map,h={radius:.8*(u=c.size.scale||1),tube:.02*u,radiusSegments:10*u,widthSegments:20,heightSegments:20},d=X({},h,{tube:2*h.tube}),m="rotation",f=eA(n,e.GizmoSubType.torus,{size:h,color:N.xAxisColor,renderMode:H,name:m},"hideBack"),p=eA(n,e.GizmoSubType.torus,{size:h,color:N.yAxisColor,renderMode:H,name:m},"hideBack"),g=eA(n,e.GizmoSubType.torus,{size:h,color:N.zAxisColor,renderMode:H,name:m},"hideBack"),v=eA(n,e.GizmoSubType.sphere,{size:h,color:[.3,.3,.3],alpha:.1,renderMode:H,name:m},"blend"),y=eA(n,e.GizmoSubType.torus,{size:d,color:N.xAxisColor,renderMode:H}),x=eA(n,e.GizmoSubType.torus,{size:d,color:N.yAxisColor,renderMode:H}),w=eA(n,e.GizmoSubType.torus,{size:d,color:N.zAxisColor,renderMode:H}),A=new t.Transform({valid:!0}),I=new t.Transform({valid:!0}),C=new t.Transform({valid:!0}),S=new t.Transform({valid:!0}),A.setRotation(0,90,0),I.setRotation(-90,0,0),C.setRotation(0,0,0),l.set(v,S),l.set(f,A),l.set(p,I),l.set(g,C),r.set("xAxis",{type:M.triangle,triangles:y.firstGeometry()?ex(y.firstGeometry(),A):[],backfaceCulling:!0}),r.set("yAxis",{type:M.triangle,triangles:x.firstGeometry()?ex(x.firstGeometry(),I):[],backfaceCulling:!0}),r.set("zAxis",{type:M.triangle,triangles:w.firstGeometry()?ex(w.firstGeometry(),C):[],backfaceCulling:!0}),a=l;break;default:a=eA(n,i,s)}return a}function ex(e,t){var n=[],i=e.getIndexData(),r=e.getAttributeData("a_Position"),o=t.getWorldMatrix();if(r&&i&&i.length>0)for(var s=0;s<i.length;s+=3){var a=3*i[s],c=3*i[s+1],l=3*i[s+2],u=new eg(r[a],r[a+1],r[a+2]),h=new eg(r[c],r[c+1],r[c+2]),d=new eg(r[l],r[l+1],r[l+2]);n.push({p0:o.projectPoint(u),p1:o.projectPoint(h),p2:o.projectPoint(d)})}return n}function ew(n,i,r,o){void 0===r&&(r=!1);var s=new Map,a=eA(n,e.GizmoSubType.box,{size:i,color:N.xAxisColor,renderMode:H,depthTest:!0,name:o}),c=eA(n,e.GizmoSubType.box,{size:i,color:N.yAxisColor,renderMode:H,depthTest:!0,name:o}),l=eA(n,e.GizmoSubType.box,{size:i,color:N.zAxisColor,renderMode:H,depthTest:!0,name:o}),u=new t.Transform({valid:!0}),h=new t.Transform({valid:!0}),d=new t.Transform({valid:!0});return h.setRotation(0,0,90),d.setRotation(0,-90,0),r||(u.translate(i.width/2,0,0),h.translate(0,i.width/2,0),d.translate(0,0,i.width/2)),s.set(a,u),s.set(c,h),s.set(l,d),s}function eA(n,i,r,o){void 0===o&&(o="default");var s,a,c,l,u,h,d,m,f,p=r.size,g=r.color,v=r.alpha,y=r.renderMode,x=r.depthTest,w=r.name;switch(i){case e.GizmoSubType.sphere:m=e.GeometryType.Sphere;break;case e.GizmoSubType.cylinder:m=e.GeometryType.Cylinder;break;case e.GizmoSubType.cone:m=e.GeometryType.Cone;break;case e.GizmoSubType.torus:m=e.GeometryType.Torus;break;case e.GizmoSubType.sprite:m=e.GeometryType.Sprite;break;case e.GizmoSubType.plane:m=e.GeometryType.Plane;break;case e.GizmoSubType.frustum:m=e.GeometryType.Frustum;break;case e.GizmoSubType.directionLight:m=e.GeometryType.DirectionLight;break;case e.GizmoSubType.spotLight:m=e.GeometryType.SpotLight;break;case e.GizmoSubType.pointLight:m=e.GeometryType.PointLight;break;case e.GizmoSubType.floorGrid:m=e.GeometryType.FloorGrid;break;default:m=e.GeometryType.Box}var A=ef(n,m,p,y);switch(o){case"blend":s=g?eg.fromArray(g):new eg(255,255,255),a=v||1,(c=t.Material.create(n,{uniformValues:{u_color:new Float32Array(s.toArray()),u_alpha:new Float32Array([a,0]),u_model:new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])},shader:{shared:!0,fragment:"\n precision mediump float;\n\n uniform vec3 u_color;\n uniform vec2 u_alpha;\n\n void main(){\n gl_FragColor = vec4(u_color,u_alpha);\n }",vertex:"\n precision highp float;\n\n attribute vec3 a_Position;\n\n uniform mat4 u_model;\n uniform mat4 effects_MatrixV;\n uniform mat4 _MatrixP;\n void main(){\n gl_Position = _MatrixP * effects_MatrixV * u_model * vec4(a_Position,1.0);\n }"}})).setVector3("u_color",s),c.setVector2("u_alpha",new ep(a,0)),c.setMatrix("u_model",ev.IDENTITY),c.depthTest=!!x&&x,c.stencilTest=!1,c.blending=!0,c.blendEquation=[t.glContext.FUNC_ADD,t.glContext.FUNC_ADD],c.blendFunction=[t.glContext.SRC_ALPHA,t.glContext.ONE_MINUS_SRC_ALPHA,t.glContext.SRC_ALPHA,t.glContext.ONE_MINUS_SRC_ALPHA],c.depthMask=!0,f=c;break;case"hideBack":l=g?eg.fromArray(g):new eg(255,255,255),(u=t.Material.create(n,{uniformValues:{u_color:new Float32Array(l.toArray()),u_model:new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),u_cameraPos:new Float32Array([0,0,0]),u_center:new Float32Array([0,0,0])},shader:{fragment:"\n precision mediump float;\n\n uniform vec3 u_color;\n\n varying float flag;\n\n void main(){\n if(flag > 0.0) {\n discard;\n }\n\n gl_FragColor = vec4(u_color,1.0);\n }",vertex:"\n precision highp float;\n\n attribute vec3 a_Position;\n\n uniform mat4 u_model;\n uniform mat4 effects_MatrixV;\n uniform mat4 _MatrixP;\n\n uniform vec3 u_cameraPos;\n uniform vec3 u_center;\n\n varying float flag;\n void main(){\n float distance = length(u_cameraPos - u_center);\n vec3 worldPosition = (u_model * vec4(a_Position,1.0)).xyz;\n flag = length(u_cameraPos - worldPosition) - distance;\n gl_Position = _MatrixP * effects_MatrixV * u_model * vec4(a_Position,1.0);\n }",shared:!0}})).setVector3("u_color",l),u.setMatrix("u_model",ev.IDENTITY),u.setVector3("u_cameraPos",eg.ZERO),u.setVector3("u_center",eg.ZERO),u.depthTest=!!x&&x,u.stencilTest=!1,u.blending=!1,u.depthMask=!0,f=u;break;default:h=g?eg.fromArray(g):new eg(255,255,255),(d=t.Material.create(n,{uniformValues:{u_color:new Float32Array(h.toArray()),u_model:new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])},shader:{fragment:"\n precision mediump float;\n\n uniform vec3 u_color;\n\n void main(){\n gl_FragColor = vec4(u_color,1.0);\n }",vertex:"\n precision highp float;\n\n attribute vec3 a_Position;\n\n uniform mat4 u_model;\n uniform mat4 effects_MatrixV;\n uniform mat4 _MatrixP;\n\n void main(){\n gl_Position = _MatrixP * effects_MatrixV * u_model * vec4(a_Position,1.0);\n }",shared:!0}})).setVector3("u_color",h),d.setMatrix("u_model",ev.IDENTITY),d.depthTest=!!x&&x,d.stencilTest=!1,d.blending=!1,d.depthMask=!0,f=d}return t.Mesh.create(n,{name:w||m.toString(),geometry:A,material:f,priority:3e3})}function eM(n,i,r,o){var s,a,c,l,u,h=ef(n,e.GeometryType.Sprite,i.size,H),d=(s=r||i.color,a=i.depthTest,l={u_model:new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),u_alpha:new Float32Array([1,0])},(u=t.Material.create(n,{uniformValues:l,shader:{shared:!0,fragment:"\n precision highp float;\n\n uniform vec2 u_alpha;\n uniform vec3 u_color;\n uniform sampler2D u_iconTex;\n\n varying vec2 v_uv;\n\n void main(){\n vec4 color = texture2D(u_iconTex, vec2(v_uv.x, 1.0 - v_uv.y));\n if(color.a < 0.001)\n {\n discard;\n }\n gl_FragColor = vec4(color.xyz, color.w * u_alpha.x);\n }",vertex:"\n precision highp float;\n\n attribute vec3 a_Position;\n attribute vec2 a_UV1;\n\n uniform mat4 u_model;\n uniform mat4 effects_MatrixV;\n uniform mat4 _MatrixP;\n uniform mat4 effects_MatrixInvV;\n varying vec2 v_uv;\n\n void main(){\n v_uv = a_UV1;\n vec4 pos = u_model * vec4(0., 0., 0., 1.0);\n // vec4 pos = u_model * vec4(a_Position,1.0);\n\n pos.xyz += effects_MatrixInvV[0].xyz * a_Position.x + effects_MatrixInvV[1].xyz * a_Position.y;\n gl_Position = _MatrixP * effects_MatrixV * pos;\n }"}})).setMatrix("u_model",ev.IDENTITY),u.setVector2("u_alpha",new ep(1,0)),O(s,t.Texture)?u.setTexture("u_iconTex",s):(c=void 0===s?new eg(255,255,255):eg.fromArray(s),u.setVector3("u_color",c)),u.depthTest=!!a&&a,u.stencilTest=!1,u.blending=!0,u.blendEquation=[t.glContext.FUNC_ADD,t.glContext.FUNC_ADD],u.blendFunction=[t.glContext.SRC_ALPHA,t.glContext.ONE_MINUS_SRC_ALPHA,t.glContext.SRC_ALPHA,t.glContext.ONE_MINUS_SRC_ALPHA],u);return o&&o.set("sprite",{type:M.sphere,radius:Math.pow(Math.pow(i.size.width,2)+Math.pow(i.size.height,2),.5)/2}),t.Mesh.create(n,{name:i.name||"sprite",geometry:h,material:d,priority:3e3})}function eI(e,t){t.set("xAxis",{type:M.line,points:[new eg(0,0,0),new eg(e.length,0,0)],width:e.width}),t.set("yAxis",{type:M.line,points:[new eg(0,0,0),new eg(0,e.length,0)],width:e.width}),t.set("zAxis",{type:M.line,points:[new eg(0,0,0),new eg(0,0,e.length)],width:e.width})}var eC=t.math.Matrix4;t.math.Vector2;var eS=t.math.Vector3,eT=t.math.Euler,eb=t.math.Vector3,eE=t.math.Matrix4,eP=Math.PI/180;function ez(e,t,n){void 0===n&&(n={});var i=n.plane,r=n.translate,o=void 0===r?[0,0,0]:r,s=n.rotate,a=eT.fromArray(void 0===s?[0,0,0]:s).negate().toMatrix4(new eE),c=[],l=[];d(e,0);for(var u=1;u<=t;u++){var h=u*eP;l.push(u-1,u),d(Math.cos(h)*e,Math.sin(h)*e)}return{points:c,indices:l};function d(e,t){var n=new eb;"xz"===i?n.set(e,0,t):"yz"===i?n.set(0,e,t):n.set(e,t,0),a.transformNormal(n),c.push(n.add(o))}}function eB(e,t){return{points:[eb.fromArray(e),eb.fromArray(t)],indices:[0,1]}}function eG(e,t,n){var i=e/2,r=t/2,o=[new eb(-i,r,0),new eb(i,r,0),new eb(i,-r,0),new eb(-i,-r,0)];return n&&o.forEach(function(e){e.add(n)}),{points:o,indices:[0,1,1,2,2,3,3,0]}}var eL={Texture:function(e){var t=[];if(e.detail)for(var n=e.detail.anchors,i=e.detail.block,r=e.width,o=e.height,s=0;s<n.length;s+=2)t.push(eG(i[0]*r,i[1]*o,[r*(n[s]-.5),o*(n[s+1]-.5),0]));else t.unshift(eL.Rectangle(e)[0]);return t},Circle:function(e){var t=e.radius,n=e.arc;return[ez(t,n),360!==n&&eB([0,0,0],[t,0,0]),360!==n&&eB([0,0,0],[Math.cos(n*eP)*t,Math.sin(n*eP)*t,0])]},Box:function(e){var t,n,i,r,o=e.width,s=e.height,a=e.depth,c=e.center;return[(t=o/2,n=s/2,i=a/2,r=null!=c?c:[0,0,0],{points:[[-t,n,-i],[-t,-n,-i],[-t,n,i],[-t,-n,i],[t,n,-i],[t,-n,-i],[t,n,i],[t,-n,i]].map(function(e){return new eb(e[0]+r[0],e[1]+r[1],e[2]+r[2])}),indices:[0,1,1,3,3,2,2,0,4,5,5,7,7,6,6,4,0,4,2,6,3,7,1,5]})]},Sphere:function(e){var t=e.radius,n=e.arc,i=[eB([0,0,-t],[0,0,t]),ez(t,n>180?360:180,{plane:"xz",rotate:[0,90,0]}),ez(t,n,{plane:"xy"}),ez(t,180,{plane:"xz",rotate:[0,90,n]})];return n>90&&i.push(ez(t,n>270?360:180,{plane:"yz",rotate:[-90,0,0]})),i},Hemisphere:function(e){var t=e.radius,n=e.arc,i=[eB([0,0,t],[0,0,0]),eB([n>180?-t:0,0,0],[t,0,0]),e>90&&eB([0,n>270?-t:0,0],[0,t,0]),ez(t,(n>180?360:180)/2,{plane:"xz"}),ez(t,n,{plane:"xy"}),ez(t,90,{plane:"xz",rotate:[0,0,n]}),eB([0,0,0],[Math.cos(n*eP)*t,Math.sin(n*eP)*t,0])];return n>90&&i.push(ez(t,n>270?180:90,{plane:"yz"})),i},Cone:function(e){var t=e.radius,n=e.arc,i=t*Math.tan(e.angle*eP)+t;return[ez(i,n,{translate:[0,0,t]}),eB([t,0,0],[i,0,t]),n>90&&eB([0,t,0],[0,i,t]),n>180&&eB([-t,0,0],[-i,0,t]),n>270&&eB([0,-t,0],[0,-i,t]),eB([Math.cos(n*eP)*t,Math.sin(n*eP)*t,0],[Math.cos(n*eP)*i,Math.sin(n*eP)*i,t])].concat(eL.Circle(e))},Edge:function(e){var t=e.width/2;return[eB([-t,0,0],[t,0,0])]},Rectangle:function(e){return[eG(e.width,e.height)]},RectangleEdge:function(e){return[eG(e.width,e.height)]},Donut:function(e){var t=e.arc,n=e.radius,i=e.donutRadius;return[ez(i,360,{translate:[n,0,0],rotate:[90,0,0]}),ez(n-i,t),ez(n+i,t),ez(n,t,{translate:[0,0,i]}),ez(n,t,{translate:[0,0,-i]}),t%360==0?ez(i,360,{translate:[-n,0,0],rotate:[90,0,0]}):ez(i,360,{translate:[Math.cos(t*eP)*n,Math.sin(t*eP)*n,0],rotate:[90,0,t]})]},path:function(e){for(var t=e.keys,n=[],i=0;i<t.length-1;i++)n.push(eG(.04,.04,t[i])),n.push(eB(t[i],t[i+1]));return n.push(eG(.04,.04,t[t.length-1])),n}};function ek(e,n,i){var r,o,s,a,c,l,u,h=function(e){for(var t=function(t,r){var s=e[t];s&&(s.points.forEach(function(e){n.push(e.x,e.y,e.z)}),s.indices.forEach(function(e){return i.push(e+r)}),r+=s.points.length),o=r},n=[],i=[],r=0,o=0;r<e.length;r++)t(r,o);return{points:new Float32Array(n),indices:new Uint16Array(i)}}(eL[n.type||n.shape](n));return r=h.points,o=h.indices,s=i.color||[1,0,0],a=i.depthTest,c=n.shape,void 0===a&&(a=!1),(l=t.Material.create(e,{uniformValues:{u_color:new Float32Array(s),u_model:new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])},shader:{shared:!0,fragment:"\n precision mediump float;\n\n uniform vec3 u_color;\n\n void main(){\n gl_FragColor = vec4(u_color,1.0);\n }",vertex:"precision highp float;\n\n attribute vec3 a_Position;\n\n uniform mat4 u_model;\n uniform mat4 effects_MatrixVP;\n void main(){\n gl_Position = effects_MatrixVP * u_model * vec4(a_Position,1.0);\n }"}})).setVector3("u_color",eb.fromArray(s)),l.setMatrix("u_model",eE.IDENTITY),l.depthTest=a,l.stencilTest=!1,l.blending=!1,l.depthMask=!0,u=t.Geometry.create(e,{attributes:{a_Position:{size:3,data:r}},indices:{data:o},mode:t.glContext.LINES,drawCount:o.length}),t.Mesh.create(e,{name:c,geometry:u,material:l,priority:3e3})}eL["0"]=eL.None,eL["1"]=eL.Sphere,eL["2"]=eL.Cone,eL["3"]=eL.Hemisphere,eL["4"]=eL.Circle,eL["5"]=eL.Donut,eL["6"]=eL.Rectangle,eL["7"]=eL.RectangleEdge,eL["8"]=eL.Edge,eL["9"]=eL.Texture;var eR=t.math.Vector4;function eF(e){var n;null==(n=e.geometry)||n.dispose(),e.dispose({geometries:t.DestroyOptions.keep})}function eV(e,t,n,i){n.material.cloneUniforms(t);for(var r,o=n.firstGeometry(),s=D(Object.keys(t.enabledMacros));!(r=s()).done;){var a=r.value;n.material.enableMacro(a,t.enabledMacros[a])}if(0===i){var c=Math.abs(e.getDrawCount());if(0!==c&&c!==o.getDrawCount()/2){var l=e.getIndexData(),u=l?function(e){for(var t=e.length/3,n=new Uint32Array(6*t),i=0;i<t;i++){var r=6*i,o=3*i,s=e[o],a=e[o+1],c=e[o+2];n[r]=s,n[r+1]=a,n[r+2]=a,n[r+3]=c,n[r+4]=c,n[r+5]=s}return n}(l):function(e){for(var t=e/3,n=new Uint32Array(6*t),i=0;i<t;i++){var r=6*i,o=3*i,s=o+1,a=o+2;n[r]=o,n[r+1]=s,n[r+2]=s,n[r+3]=a,n[r+4]=a,n[r+5]=o}return n}(c);o.setIndexData(u),o.setDrawCount(u.length)}}else if(1===i&&e.getDrawCount()/6!=o.getDrawCount()/8){var h=function(e,t){for(var n=new Uint16Array(8*e),i=0;i<e;i++){var r=8*i,o=4*i;n[r]=o,n[r+1]=1+o,n[r+2]=1+o,n[r+3]=3+o,n[r+4]=3+o,n[r+5]=2+o,n[r+6]=2+o,n[r+7]=o}return n}(e.getDrawCount()/6,e.getIndexData());o.setIndexData(h),o.setDrawCount(h.length)}return n}(c=I||(I={}))[c.triangle=0]="triangle",c[c.quad=1]="quad";var eD=function(e){function t(t,n){var i,r,o,s,a,c,l=n.geometry,u=null!=(o=null==(r=n.index)?void 0:r.data)?o:l.getIndexData(),h=null==u?void 0:u.slice();i=e.call(this,t,{name:n.name,attributes:{},indices:h?{data:h}:void 0,drawStart:null!=(s=n.drawStart)?s:0,drawCount:null!=(a=n.drawCount)?a:0,mode:null!=(c=n.mode)?c:0})||this;var d=l.getVertexLayout();return d&&i.setVertexBuffers(l.getVertexBuffers(),d),i}return G(t,e),t}(t.Geometry),eO="editor-gizmo",eY="front-gizmo",eN="behind-gizmo",eH=t.math.Vector2,eU=t.math.Vector3,ej=t.math.Matrix4,eW=t.math.Quaternion,eQ=t.glContext;e.GizmoComponent=function(n){function i(){var r;return r=n.apply(this,arguments)||this,r.boundingMap=new Map,r.coordinateSpace=0,r.mat=ej.fromIdentity(),r.wireframeMeshes=[],r.meshes=[],r.mesh=null,r.getHitTestParams=function(){var n=r.item,o=r.boundingMap;if(o.size>0){var s,a=o.keys();if(s=r.transform.getWorldMatrix(),r.targetItem){var c=new eU,l=new eW,u=new eU(1,1,1),h=r.subType;0==r.coordinateSpace||h===e.GizmoSubType.scale?r.targetItem.transform.assignWorldTRS(c,l):r.targetItem.transform.assignWorldTRS(c);var d=new t.Transform({position:c,quat:l,scale:u,valid:!0});if(h===e.GizmoSubType.rotation||h===e.GizmoSubType.scale||h===e.GizmoSubType.translation||h===e.GizmoSubType.camera||h===e.GizmoSubType.light){var m=W(n.composition.camera.position||[0,0,0],d.position);d.setPosition(m.x,m.y,m.z),s=d.getWorldMatrix()}else s=d.getWorldMatrix()}return{type:t.HitTestType.custom,clipMasks:r.frameClipMasks,collect:function(r,c){var l=[],u=n.getComponent(i);u.hitBounding=void 0;for(var h,d=D(a);!(h=d()).done;)!function(){var i=h.value,a=o.get(i),d=new eU,m=new eU;((null==a?void 0:a.type)===M.box||(null==a?void 0:a.type)===M.sphere)&&((null==a?void 0:a.center)&&d.copyFrom(null==a?void 0:a.center),s.projectPoint(d,m));var f=void 0;switch(null==a?void 0:a.type){case M.box:var p=a.size.clone().multiply(.5),g=d.clone().add(p),v=d.clone().subtract(p);f=r.intersectBox({min:v,max:g},new eU);break;case M.sphere:if(u.subType===e.GizmoSubType.viewHelper){var y=n.composition.camera.getViewMatrix(),x=n.composition.renderer.getWidth(),w=n.composition.renderer.getHeight(),A=2*Math.tan(30*Math.PI/360)*16,I=A/(x/w),C=Z(-A/2,A/2,-I/2,I/2,-16,16),S=n.composition.camera.getInverseViewMatrix(),T=new t.Transform({valid:!0});T.cloneFromMatrix(s);var b=T.position,E=u.size.padding||1;T.setPosition(b.x+A/2-E,b.y+I/2-E,b.z);var P=T.getWorldMatrix(),z=S.clone().multiply(P);z.projectPoint(d,m);var B=C.clone().multiply(y).clone().multiply(z),G=B.projectPoint(d,new eU),L=a.radius,k=new eU(P.elements[1],P.elements[5],P.elements[9]).normalize().clone().multiply(L);k.add(d);var R=B.projectPoint(k,new eU),F=G.toVector2(),V=R.toVector2(),D=F.distance(V);c.distance(F)<1.2*D&&(f=m)}else f=r.intersectSphere({center:m,radius:a.radius},new eU);break;case M.triangle:for(var O=a.triangles,Y=a.backfaceCulling,N=[],H=void 0,U=0;U<O.length;U++){var j=O[U],W={p0:s.projectPoint(j.p0,new eU),p1:s.projectPoint(j.p1,new eU),p2:s.projectPoint(j.p2,new eU)};(H=r.intersectTriangle(W,new eU,Y))&&N.push(H)}if(N.length>0){var Q=void 0;N.forEach(function(e){var t=r.origin.distanceSquared(e);(!Q||t<Q)&&(Q=t,f=e)})}break;case M.line:var X=a.points,J=a.width;f=function(e,t,n,i,r,o){var s=new eS(r.elements[1],r.elements[5],r.elements[9]).normalize().clone().multiply(i);s.add(n[0]);var a=o.getModelViewProjection(new eC,r),c=a.projectPoint(n[0],new eS),l=a.projectPoint(n[1],new eS),u=a.projectPoint(s,new eS).clone().subtract(c).length(),h=(f=[c.toVector2(),l.toVector2()],p=new K,g=new K,v=new K,p.subtractVectors(t,f[0]),g.subtractVectors(t,f[1]),v.subtractVectors(f[1],f[0]),M=2*Math.abs(Math.sqrt((A=((y=p.length())+(x=g.length())+(w=v.length()))/2)*(A-y)*(A-x)*(A-w)))/w,I=!1,Math.sqrt(Math.pow(y,2)-Math.pow(M,2))<=w&&Math.sqrt(Math.pow(x,2)-Math.pow(M,2))<=w&&(I=!0),{distance:M,isInLine:I}),d=h.distance,m=h.isInLine;if(d<=u&&m){var f,p,g,v,y,x,w,A,M,I,C,S,T,b,E,P,z,B,G,L,k,R,F,V=(C=[c,l],S=new K,T=new K,b=new K,E=C[0].toVector2(),P=C[1].toVector2(),S.subtractVectors(t,E),T.subtractVectors(t,P),b.subtractVectors(P,E),k=2*Math.abs(Math.sqrt((L=((z=S.length())+(B=T.length())+(G=b.length()))/2)*(L-z)*(L-B)*(L-G)))/G,R=Math.sqrt(Math.pow(z,2)-Math.pow(k,2)),F=C[1].clone().subtract(C[0]).clone().multiply(R/(R+Math.sqrt(Math.pow(B,2)-Math.pow(k,2)))),C[0].clone().add(F));return o.getInverseViewProjectionMatrix().projectPoint(V,e),e}}(new eU,c,X,J/2,s,n.composition.camera)}f&&(l.push(f),u.hitBounding?r.origin.distanceSquared(f)<r.origin.distanceSquared(u.hitBounding.position)&&(u.hitBounding.key=i,u.hitBounding.position=f):u.hitBounding={key:i,position:f})}();return 0===l.length&&(u.hitBounding=void 0),l},behavior:t.spec.InteractBehavior.NOTIFY}}},r}G(i,n);var r=i.prototype;return r.onStart=function(){this.item.getHitTestParams=this.getHitTestParams;for(var n,i,r,o=D(null!=(i=null==(n=this.item.composition)?void 0:n.items)?i:[]);!(r=o()).done;){var s=r.value;s.id===this.target&&(this.targetItem=s)}var a=this.targetItem;if(a){for(var c,l,u=this.item.composition,h=D(null!=(c=t.PluginSystem.getPlugins())?c:[]);!(l=h()).done;){var d=l.value;"editor-gizmo"===d.name&&(this.gizmoPlugin=d)}var m=this.gizmoPlugin;if("7"!==a.type&&m){var f=this.subType;switch(f){case e.GizmoSubType.particleEmitter:this.createParticleContent(a);break;case e.GizmoSubType.modelWireframe:this.needCreateModelContent=!0,this.createModelContent(a);break;case e.GizmoSubType.box:case e.GizmoSubType.sphere:case e.GizmoSubType.cylinder:case e.GizmoSubType.cone:case e.GizmoSubType.torus:case e.GizmoSubType.sprite:case e.GizmoSubType.frustum:case e.GizmoSubType.directionLight:case e.GizmoSubType.pointLight:case e.GizmoSubType.spotLight:case e.GizmoSubType.floorGrid:this.createBasicContent(a,f);break;case e.GizmoSubType.camera:case e.GizmoSubType.light:this.createBasicContent(a,f,e_);break;case e.GizmoSubType.rotation:case e.GizmoSubType.scale:case e.GizmoSubType.translation:this.createCombinationContent(a,f);break;case e.GizmoSubType.viewHelper:this.createCombinationContent(a,f,e_);break;case e.GizmoSubType.boundingBox:this.createBoundingBoxContent(a)}null==u||u.loaderData.gizmoItems.push(this.item)}}},r.onEnable=function(){if(n.prototype.onEnable.call(this),this.item.composition){var t=this.item.composition.sceneRendering,i=this.engine.renderer;i.rendererFeatures.some(function(e){return O(e,eK)})||i.addRendererFeature(new eK);for(var r,o=D(this.meshes);!(r=o()).done;){var s=r.value;s.name===e.GeometryType.FloorGrid.toString()||"Box"===s.name?t.addRenderer(s,eY):"translation"===s.name||"scale"===s.name||"rotation"===s.name?t.addRenderer(s,eN):t.addRenderer(s,eO)}}},r.onDisable=function(){if(n.prototype.onDisable.call(this),this.item.composition)for(var t,i=this.item.composition.sceneRendering,r=D(this.meshes);!(t=r()).done;){var o=t.value;o.name===e.GeometryType.FloorGrid.toString()||"Box"===o.name?i.removeRenderer(o,eY):"translation"===o.name||"scale"===o.name||"rotation"===o.name?i.removeRenderer(o,eN):i.removeRenderer(o,eO)}},r.onUpdate=function(e){this.updateRenderData()},r.onDestroy=function(){var t=this.mesh,n=this.item.composition;if(n){if(t&&!t.isDestroyed&&(t.dispose(),t.name===e.GeometryType.FloorGrid.toString()||"Box"===t.name?n.sceneRendering.removeRenderer(t,eY):n.sceneRendering.removeRenderer(t,eO)),this.contents)for(var i,r=D(this.contents);!(i=r()).done;){var o=i.value[0];o.isDestroyed||(o.dispose(),"translation"===o.name||"scale"===o.name||"rotation"===o.name?n.sceneRendering.removeRenderer(o,eN):n.sceneRendering.removeRenderer(o,eO))}if(this&&this.wireframeMeshes.length>0)this.wireframeMeshes.forEach(function(e){e.isDestroyed||(eF(e),n.sceneRendering.removeRenderer(e,eO))});else{var s=this.wireframeMesh;s&&!s.isDestroyed&&(eF(s),n.sceneRendering.removeRenderer(s,eO))}var a=n.loaderData.gizmoItems,c=a.indexOf(this.item);c>-1&&a.splice(c,1)}},r.render=function(n){if(this.subType===e.GizmoSubType.modelWireframe&&this.wireframeMesh&&this.targetItem){var i,r=null==(i=this.targetItem.getComponent(t.RendererComponent))?void 0:i.content,o=r.subMeshes,s=this.wireframeMeshes;(null==o?void 0:o.length)>0&&(s[0].worldMatrix.copyFrom(r.matrix),eV(o[0].geometry.geometry,o[0].material.effectMaterial,s[0],I.triangle))}},r.updateRenderData=function(){var n=this.item,i=this.subType;if(i===e.GizmoSubType.particleEmitter){if(this.targetItem&&this.mesh&&(this.mat=this.targetItem.transform.getWorldMatrix(),this.mesh.material.setMatrix("u_model",this.mat)),this.wireframeMesh&&this.targetItem){var r=this.targetItem.getComponent(t.ParticleSystemRenderer);r&&(eV(r.particleMesh.mesh.geometry,r.particleMesh.mesh.material,this.wireframeMesh,I.quad),this.wireframeMesh.worldMatrix=r.particleMesh.mesh.worldMatrix)}}else if(this.targetItem){if(this.contents){var o=new eU,s=new eW,a=new eU(1,1,1);0==this.coordinateSpace||i===e.GizmoSubType.scale?this.targetItem.transform.assignWorldTRS(o,s):this.targetItem.transform.assignWorldTRS(o);var c=new t.Transform({position:o,quat:s,scale:a,valid:!0});if(i===e.GizmoSubType.rotation||i===e.GizmoSubType.scale||i===e.GizmoSubType.translation){var l=W(n.composition.camera.position||new eU,c.position);c.setPosition(l.x,l.y,l.z)}this.mat=c.getWorldMatrix();for(var u,h=c.position,d=D(this.contents);!(u=d()).done;){var m=u.value,f=m[0],p=m[1],g=void 0;p.parentTransform=c;var v=new eU;p.assignWorldTRS(v);var y=100,x=1;if(i===e.GizmoSubType.viewHelper){"sprite"===f.name&&(y=v.toVector2().distance(h.toVector2()),x=this.boundingMap.get("posX").radius);var w=n.composition.renderer.getWidth(),A=n.composition.renderer.getHeight(),M=2*Math.tan(30*Math.PI/360)*16,C=M/(w/A),S=n.composition.camera.getInverseViewMatrix(),T=this.size.padding||1,b=void 0;b=p.getWorldMatrix();var E=new t.Transform({valid:!0});E.cloneFromMatrix(b),E.setPosition(v.x+M/2-T,v.y+C/2-T,v.z),b=E.getWorldMatrix(),g=S.clone().multiply(b);var P=Z(-M/2,M/2,-C/2,C/2,-16,16);f.material.setMatrix("_MatrixP",P)}else{if(i===e.GizmoSubType.rotation){var z=n.composition.camera.position||[0,0,0];f.material.setVector3("u_cameraPos",z),f.material.setVector3("u_center",h)}g=p.getWorldMatrix()}f.material.setMatrix("u_model",g),y<x&&(y<.5*x?f.material.setVector2("u_alpha",new eH(0,0)):f.material.setVector2("u_alpha",new eH(2/x*y-1,0)))}}if(this.mesh){var B=new eU,G=new eW,L=new eU(1,1,1);this.targetItem.transform.assignWorldTRS(B,G);var k=new t.Transform({position:B,quat:G,scale:L,valid:!0});if(i===e.GizmoSubType.light||i===e.GizmoSubType.camera){var R=W(n.composition.camera.position||new eU(0,0,0),k.position);k.setPosition(R.x,R.y,R.z)}this.mat=k.getWorldMatrix(),this.mesh.material.setMatrix("u_model",k.getWorldMatrix())}}},r.getDefaultRenderMode=function(){var t;switch(this.subType){case e.GizmoSubType.particleEmitter:case e.GizmoSubType.modelWireframe:case e.GizmoSubType.frustum:case e.GizmoSubType.directionLight:case e.GizmoSubType.spotLight:case e.GizmoSubType.pointLight:case e.GizmoSubType.floorGrid:t=eQ.LINES;break;default:t=eQ.TRIANGLES}return t},r.getDefaultSize=function(){var t={};switch(this.subType){case e.GizmoSubType.box:t={width:1,height:1,depth:1};break;case e.GizmoSubType.sphere:t={radius:1};break;case e.GizmoSubType.cylinder:case e.GizmoSubType.cone:t={radius:1,height:1};break;default:t={}}return t},r.createModelContent=function(e){var n=e.getComponent(t.RendererComponent).content.subMeshes[0],i=null==(r=e.composition)?void 0:r.renderer.engine;if(t.assertExist(i),n){this.targetItem=e,this.wireframeMeshes=[];var r,o,s,a,c,l,u,h,d,m=t.Mesh.create(i,{geometry:n.geometry.geometry,material:n.material.effectMaterial,priority:3e3}),f=this.wireframeMesh=(o=this.color,a=new eD(i,{geometry:m.firstGeometry(),mode:t.glContext.LINES,index:{data:new Uint32Array(0)}}),l=(c=m.material.shader.shaderData).vertex,u=c.fragment,(h=X({},m.material.props)).shader={vertex:l,fragment:u,macros:[["PREVIEW_BORDER",1]],shared:!0,name:(null!=(s=m.name)?s:"unamedmesh")+"_wireframe",glslVersion:2===i.displayServer.renderingDevice.gpuCapability.level?t.GLSLVersion.GLSL3:t.GLSLVersion.GLSL1},(d=t.Material.create(i,h)).depthTest=!0,d.setVector4("uPreviewColor",new eR(o[0],o[1],o[2],1)),eV(m.geometry,m.material,t.Mesh.create(i,{geometry:a,material:d,priority:3e3,name:h.shader.name}),0));this.wireframeMeshes.push(f),this.meshes.push(f)}},r.createParticleContent=function(e){var n,i=e.getComponent(t.ParticleSystem);if(i){var r=i.definition.shape,o=null==(n=this.item.composition)?void 0:n.renderer.engine;if(t.assertExist(o),this.targetItem=e,r&&r.type){var s=this.mesh=ek(o,r,{color:this.color});this.meshes.push(s)}}},r.createBoundingBoxContent=function(e){var n,i=this.item,r={shape:"Box",width:this.size.width,height:this.size.height,depth:this.size.depth,center:this.size.center},o=null==(n=i.composition)?void 0:n.renderer.engine;if(t.assertExist(o),this.targetItem=e,r){var s=this.mesh=ek(o,r,{color:this.color,depthTest:this.depthTest});this.meshes.push(s)}},r.createBasicContent=function(e,n,i){var r,o=this.item,s={size:this.size,color:this.color,renderMode:this.renderMode,depthTest:this.depthTest},a=null==(r=o.composition)?void 0:r.renderer.engine;t.assertExist(a);var c=this.mesh=ey(a,n,this.boundingMap,i,s);this.targetItem=e,this.meshes.push(c)},r.createCombinationContent=function(e,n,i){var r=this.item,o={size:this.size,renderMode:this.renderMode},s=null==(a=r.composition)?void 0:a.renderer.engine;t.assertExist(s),this.contents=ey(s,n,this.boundingMap,i,o);for(var a,c,l=D(this.contents.keys());!(c=l()).done;){var u=c.value;this.meshes.push(u)}this.targetItem=e},r.fromData=function(e){n.prototype.fromData.call(this,e),void 0!==e.coordinateSpace&&(this.coordinateSpace=e.coordinateSpace);var i=this.item;i.duration=999;var r=e.options,o=r.target,s=r.subType,a=r.renderMode,c=r.size,l=r.depthTest,u=r.color,h=void 0===u?[255,255,255]:u;this.target=o,this.subType=s,this.renderMode=a||this.getDefaultRenderMode(),this.size=c||this.getDefaultSize(),this.depthTest=l;var d=h[0],m=h[1],f=h[2];this.color=[d/255,m/255,f/255],e&&(i.transform=new t.Transform(e.transform))},i}(t.RendererComponent),e.GizmoComponent=function(e,t,n,i){var r,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(s=(o<3?r(s):o>3?r(t,n,s):r(t,n))||s);return o>3&&s&&Object.defineProperty(t,n,s),s}([t.effectsClass("GizmoComponent")],e.GizmoComponent),e.CoordinateSpace=void 0,(l=e.CoordinateSpace||(e.CoordinateSpace={}))[l.Local=0]="Local",l[l.World=1]="World";var eK=function(e){function t(){var t;return t=e.apply(this,arguments)||this,t.passes=[],t}G(t,e);var n=t.prototype;return n.create=function(e){this.passes=[new eX(e),new eJ(e),new eZ(e)]},n.addRenderPasses=function(e,t){for(var n,i=D(this.passes);!(n=i()).done;){var r=n.value;t.renderList.groups.has(r.name)&&e.enqueuePass(r)}},n.dispose=function(){for(var e,t=D(this.passes);!(e=t()).done;)e.value.dispose();this.passes.length=0},t}(t.RendererFeature),eZ=function(e){function n(n){var i;return(i=e.call(this,n)||this).renderPassEvent=t.RenderPassEvent.AfterRendering,i.name=eN,i}return G(n,e),n.prototype.execute=function(e,n){var i;e.clear({depthAction:t.TextureLoadAction.clear}),e.renderMeshes(null!=(i=n.renderList.groups.get(this.name))?i:[])},n}(t.RenderPass),eX=function(e){function n(n){var i;return(i=e.call(this,n)||this).renderPassEvent=t.RenderPassEvent.BeforeRendering,i.name=eY,i}return G(n,e),n.prototype.execute=function(e,t){var n;e.renderMeshes(null!=(n=t.renderList.groups.get(this.name))?n:[])},n}(t.RenderPass),eJ=function(e){function n(n){var i;return(i=e.call(this,n)||this).renderPassEvent=t.RenderPassEvent.AfterRenderingObjects,i.name=eO,i}return G(n,e),n.prototype.execute=function(e,t){var n;e.renderMeshes(null!=(n=t.renderList.groups.get(this.name))?n:[])},n}(t.RenderPass),eq=new Map,e_=new Map,e$=function(n){function i(){var e;return e=n.apply(this,arguments)||this,e.order=1001,e}G(i,n);var r=i.prototype;return r.onAssetsLoadStart=function(e,t){return z(function(){var e,t,n,i,r,o,s;return Y(this,function(a){switch(a.label){case 0:if(e_.clear(),!(eq.size!==U.size))return[3,4];e=D(U),a.label=1;case 1:if((t=e()).done)return[3,4];return i=(n=t.value)[0],r=n[1],o=eq.set,s=[i],[4,function(e){return j.apply(this,arguments)}(r)];case 2:o.apply(eq,s.concat([a.sent()])),a.label=3;case 3:return[3,1];case 4:return[2]}})})()},r.onCompositionCreated=function(n,i){var r=n.renderer.engine;eq.forEach(function(e,n){var i;e_.set(n,t.Texture.create(r,{image:e}))}),eq.clear();for(var o=n.items,s={},a=0;a<o.length;a++){var c=o[a],l=c.getComponent(e.GizmoComponent);l&&(s[l.target]||(s[l.target]=[]),s[l.target].push(c))}n.loaderData.gizmoTarget=s,n.loaderData.gizmoItems=[]},i}(F(t.Plugin)),e0=t.math.Color,e1=t.math.Euler,e2=t.math.EulerOrder,e4=t.math.Matrix3,e3=t.math.Matrix4,e5=t.math.Quaternion,e8=t.math.Ray,e6=t.math.Vector2,e9=t.math.Vector3,e7=t.math.DEG2RAD,te=t.math.RAD2DEG,tt=t.math.clamp,tn=t.math.isEqual,ti=t.math.isZero,tr=function(){function e(e,t){void 0===e&&(e=0),void 0===t&&(t=0),this.x=e,this.y=t}var t=e.prototype;return t.set=function(e,t){return this.x=e,this.y=t,this},t.setZero=function(){return this.x=0,this.y=0,this},t.setFromNumber=function(e){return this.x=e,this.y=e,this},t.setFromArray=function(e,t){var n,i;return void 0===t&&(t=0),this.x=null!=(n=e[t])?n:0,this.y=null!=(i=e[t+1])?i:0,this},t.copyFrom=function(e){return this.x=e.x,this.y=e.y,this},t.clone=function(){return new e(this.x,this.y)},t.setElement=function(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;default:console.error("index is out of range: "+e)}return this},t.getElement=function(e){switch(e){case 0:return this.x;case 1:return this.y;default:console.error("index is out of range: "+e)}return 0},t.add=function(e){return"number"==typeof e?(this.x+=e,this.y+=e):O(e,Array)?(this.x+=e[0],this.y+=e[1]):(this.x+=e.x,this.y+=e.y),this},t.addVectors=function(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this},t.subtract=function(e){return"number"==typeof e?(this.x-=e,this.y-=e):O(e,Array)?(this.x-=e[0],this.y-=e[1]):(this.x-=e.x,this.y-=e.y),this},t.subtractVectors=function(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this},t.multiply=function(e){return"number"==typeof e?(this.x*=e,this.y*=e):O(e,Array)?(this.x*=e[0],this.y*=e[1]):(this.x*=e.x,this.y*=e.y),this},t.multiplyVectors=function(e,t){return this.x=e.x*t.x,this.y=e.y*t.y,this},t.divide=function(e){return"number"==typeof e?(this.x/=e,this.y/=e):O(e,Array)?(this.x/=e[0],this.y/=e[1]):(this.x/=e.x,this.y/=e.y),this},t.scale=function(e){return this.x*=e,this.y*=e,this},t.sum=function(){return this.x+this.y},t.min=function(e){return"number"==typeof e?(this.x=Math.min(this.x,e),this.y=Math.min(this.y,e)):(this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y)),this},t.max=function(e){return"number"==typeof e?(this.x=Math.max(this.x,e),this.y=Math.max(this.y,e)):(this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y)),this},t.clamp=function(e,t){return this.max(e).min(t)},t.floor=function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this},t.ceil=function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this},t.round=function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this},t.abs=function(){return this.x=Math.abs(this.x),this.y=Math.abs(this.y),this},t.negate=function(){return this.x=-this.x,this.y=-this.y,this},t.length=function(){return Math.sqrt(this.x*this.x+this.y*this.y)},t.lengthSquared=function(){return this.x*this.x+this.y*this.y},t.normalize=function(){return this.divide(this.length()||1)},t.setLength=function(e){return this.normalize().multiply(e)},t.lerp=function(e,t){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this},t.lerpVectors=function(e,t,n){return this.x=e.x+(t.x-e.x)*n,this.y=e.y+(t.y-e.y)*n,this},t.dot=function(e){return this.x*e.x+this.y*e.y},t.cross=function(e){return this.x*e.y-this.y*e.x},t.distance=function(e){var t=this.x-e.x,n=this.y-e.y;return Math.sqrt(t*t+n*n)},t.distanceSquared=function(e){var t=this.x-e.x,n=this.y-e.y;return t*t+n*n},t.equals=function(e){return this.x===e.x&&this.y===e.y},t.isZero=function(){var e=this.x,t=this.y;return 1e-6>=Math.abs(e)&&1e-6>=Math.abs(t)},t.toArray=function(){return[this.x,this.y]},t.fill=function(e,t){void 0===t&&(t=0),e[t]=this.x,e[t+1]=this.y},t.angle=function(){return Math.atan2(-this.y,-this.x)+Math.PI},t.rotateAround=function(e,t){var n=Math.cos(t),i=Math.sin(t),r=this.x-e.x,o=this.y-e.y;return this.x=r*n-o*i+e.x,this.y=r*i+o*n+e.y,this},t.random=function(){return this.x=Math.random(),this.y=Math.random(),this},e.fromNumber=function(t){return new e().setFromNumber(t)},e.fromArray=function(t,n){return void 0===n&&(n=0),new e().setFromArray(t,n)},e}();tr.ONE=new tr(1,1),tr.ZERO=new tr(0,0);var to=function(){function e(e,t){void 0===e&&(e=new tr(Infinity,Infinity)),void 0===t&&(t=new tr(-1/0,-1/0)),this.min=e.clone(),this.max=t.clone()}var t=e.prototype;return t.set=function(e,t){return this.min.copyFrom(e),this.max.copyFrom(t),this},t.setFromPoints=function(e){this.makeEmpty();for(var t=0,n=e.length;t<n;t++)this.expandByPoint(e[t]);return this},t.setFromCenterAndSize=function(e,t){var n=t.clone().multiply(.5);return this.min.copyFrom(e).subtract(n),this.max.copyFrom(e).add(n),this},t.clone=function(){return new e().copyFrom(this)},t.copyFrom=function(e){return this.min.copyFrom(e.min),this.max.copyFrom(e.max),this},t.makeEmpty=function(){return this.min.x=this.min.y=Infinity,this.max.x=this.max.y=-1/0,this},t.isEmpty=function(){return this.max.x<this.min.x||this.max.y<this.min.y},t.getCenter=function(e){return void 0===e&&(e=new tr),this.isEmpty()?e.set(0,0):e.addVectors(this.min,this.max).multiply(.5)},t.getSize=function(e){return void 0===e&&(e=new tr),this.isEmpty()?e.set(0,0):e.subtractVectors(this.max,this.min)},t.expandByPoint=function(e){return this.min.min(e),this.max.max(e),this},t.expandByVector=function(e){return this.min.subtract(e),this.max.add(e),this},t.expandByScalar=function(e){return this.min.add(-e),this.max.add(e),this},t.containsPoint=function(e){return e.x>=this.min.x&&e.x<=this.max.x&&e.y>=this.min.y&&e.y<=this.max.y},t.containsBox=function(e){return this.min.x<=e.min.x&&e.max.x<=this.max.x&&this.min.y<=e.min.y&&e.max.y<=this.max.y},t.getParameter=function(e,t){return void 0===t&&(t=new tr),t.set((e.x-this.min.x)/(this.max.x-this.min.x),(e.y-this.min.y)/(this.max.y-this.min.y))},t.intersectsBox=function(e){return e.max.x>=this.min.x&&e.min.x<=this.max.x&&e.max.y>=this.min.y&&e.min.y<=this.max.y},t.clampPoint=function(e,t){return void 0===t&&(t=new tr),t.copyFrom(e).clamp(this.min,this.max)},t.distanceToPoint=function(e){return e.clone().clamp(this.min,this.max).subtract(e).length()},t.intersect=function(e){return this.min.max(e.min),this.max.min(e.max),this.isEmpty()&&this.makeEmpty(),this},t.union=function(e){return this.min.min(e.min),this.max.max(e.max),this},t.translate=function(e){return this.min.add(e),this.max.add(e),this},t.equals=function(e){return e.min.equals(this.min)&&e.max.equals(this.max)},e}(),ts=function(){function e(e,t){void 0===e&&(e=tr.ZERO),void 0===t&&(t=0),this.center=e.clone(),this.radius=t}var t=e.prototype;return t.set=function(e,t){return this.center=e.clone(),this.radius=t,this},t.clone=function(){return new e().copyFrom(this)},t.copyFrom=function(e){return this.center.copyFrom(e.center),this.radius=e.radius,this},t.makeEmpty=function(){return this.center.set(0,0),this.radius=-1,this},t.isEmpty=function(){return this.radius<0},t.getCenter=function(e){return void 0===e&&(e=new tr),e.copyFrom(this.center),e},t.getRadius=function(){return this.radius},t.expandByPoint=function(t){if(this.isEmpty())return this.set(t,0);var n=e.tempVec0.subtractVectors(t,this.center),i=n.length();if(i>this.radius){var r=(this.radius+i)*.5;this.center.add(n.multiply((r-this.radius)/i)),this.radius=r}return this},t.expandByScalar=function(e){return this.radius+=e,this},t.containsPoint=function(e){return!this.isEmpty()&&this.center.distanceSquared(e)<=this.radius*this.radius},t.containsBox=function(e){if(this.isEmpty()||e.isEmpty())return!1;var t=Math.max(Math.abs(e.min.x-this.center.x),Math.abs(e.max.x-this.center.x)),n=Math.max(Math.abs(e.min.y-this.center.y),Math.abs(e.max.y-this.center.y));return t*t+n*n<=this.radius*this.radius},t.intersectsBox=function(e){return!this.isEmpty()&&!e.isEmpty()&&e.distanceToPoint(this.center)<=this.radius},t.distanceToPoint=function(e){return this.isEmpty()?1/0:this.center.distance(e)-this.radius},t.intersect=function(e){if(this.isEmpty()||e.isEmpty())return this.makeEmpty();var t=this.center.distance(e.center);return t>this.radius+e.radius?this.makeEmpty():this.radius>=t+e.radius?this.copyFrom(e):e.radius>=t+this.radius?this:this.radius<=e.radius?this:this.copyFrom(e)},t.union=function(t){if(t.isEmpty())return this;if(this.isEmpty())return this.copyFrom(t);if(this.center.equals(t.center))this.radius=Math.max(this.radius,t.radius);else{var n=e.tempVec0,i=e.tempVec1.subtractVectors(t.center,this.center).setLength(t.radius);this.expandByPoint(n.copyFrom(t.center).add(i)),this.expandByPoint(n.copyFrom(t.center).subtract(i))}return this},t.translate=function(e){return this.center.add(e),this},t.equals=function(e){return this.center.equals(e.center)&&this.radius===e.radius},e}();function ta(e,t,n){return(t.x-e.x)*(n.y-e.y)-(t.y-e.y)*(n.x-e.x)}function tc(e,t,n){return n.x>=Math.min(e.x,t.x)&&n.x<=Math.max(e.x,t.x)&&n.y>=Math.min(e.y,t.y)&&n.y<=Math.max(e.y,t.y)}ts.tempVec0=new tr,ts.tempVec1=new tr;var tl=function(){function e(e,t){void 0===e&&(e=tr.ZERO),void 0===t&&(t=tr.ZERO),this.start=e.clone(),this.end=t.clone()}var t=e.prototype;return t.set=function(e,t){return this.start.copyFrom(e),this.end.copyFrom(t),this},t.copyFrom=function(e){return this.start.copyFrom(e.start),this.end.copyFrom(e.end),this},t.direction=function(){return new tr().subtractVectors(this.end,this.start).normalize()},t.getCenter=function(e){return void 0===e&&(e=new tr),e.addVectors(this.start,this.end).multiply(.5)},t.delta=function(e){return void 0===e&&(e=new tr),e.subtractVectors(this.end,this.start)},t.distanceSq=function(){return this.start.distanceSquared(this.end)},t.distance=function(){return this.start.distance(this.end)},t.at=function(e,t){return void 0===t&&(t=new tr),this.delta(t).multiply(e).add(this.start)},t.closestPointToPointParameter=function(t,n){var i,r,o=e.tempVec0,s=e.tempVec1;o.subtractVectors(t,this.start),s.subtractVectors(this.end,this.start);var a=s.dot(s);if(0===a)return 0;var c=s.dot(o)/a;return n&&(c=Math.min(Math.max(c,Math.min(i=isNaN(0)?-1/0:0,r=isNaN(1)?1/0:1)),Math.max(i,r))),c},t.closestPointToPoint=function(e,t,n){void 0===n&&(n=new tr);var i=this.closestPointToPointParameter(e,t);return this.delta(n).multiply(i).add(this.start)},t.equals=function(e){return e.start.equals(this.start)&&e.end.equals(this.end)},t.clone=function(){return new e().copyFrom(this)},t.length=function(){return new tr().subtractVectors(this.end,this.start).length()},t.crossWithLine=function(e){var t=ta(this.start,this.end,e.start),n=ta(this.start,this.end,e.end),i=ta(e.start,e.end,this.start),r=ta(e.start,e.end,this.end);return(t>0&&n<0||t<0&&n>0)&&(i>0&&r<0||i<0&&r>0)||0===t&&tc(this.start,this.end,e.start)||0===n&&tc(this.start,this.end,e.end)||0===i&&tc(e.start,e.end,this.start)||0===r&&tc(e.start,e.end,this.end)},e}();tl.tempVec0=new tr,tl.tempVec1=new tr;var tu=function(){function e(e,t,n){void 0===e&&(e=0),void 0===t&&(t=0),void 0===n&&(n=0),this.x=e,this.y=t,this.z=n}var t=e.prototype;return t.set=function(e,t,n){return this.x=e,this.y=t,this.z=n,this},t.setZero=function(){return this.x=0,this.y=0,this.z=0,this},t.setFromNumber=function(e){return this.x=e,this.y=e,this.z=e,this},t.setFromArray=function(e,t){var n,i,r;return void 0===t&&(t=0),this.x=null!=(n=e[t])?n:0,this.y=null!=(i=e[t+1])?i:0,this.z=null!=(r=e[t+2])?r:0,this},t.copyFrom=function(e){return this.x=e.x,this.y=e.y,this.z=e.z,this},t.clone=function(){return new e(this.x,this.y,this.z)},t.setElement=function(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;case 2:this.z=t;break;default:console.error("index is out of range: "+e)}return this},t.getElement=function(e){switch(e){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:console.error("index is out of range: "+e)}return 0},t.add=function(e){return"number"==typeof e?(this.x+=e,this.y+=e,this.z+=e):O(e,Array)?(this.x+=e[0],this.y+=e[1],this.z+=e[2]):(this.x+=e.x,this.y+=e.y,this.z+=e.z),this},t.addVectors=function(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this.z=e.z+t.z,this},t.addScaledVector=function(e,t){return this.x+=e.x*t,this.y+=e.y*t,this.z+=e.z*t,this},t.subtract=function(e){return"number"==typeof e?(this.x-=e,this.y-=e,this.z-=e):O(e,Array)?(this.x-=e[0],this.y-=e[1],this.z-=e[2]):(this.x-=e.x,this.y-=e.y,this.z-=e.z),this},t.subtractVectors=function(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this.z=e.z-t.z,this},t.multiply=function(e){return"number"==typeof e?(this.x*=e,this.y*=e,this.z*=e):O(e,Array)?(this.x*=e[0],this.y*=e[1],this.z*=e[2]):(this.x*=e.x,this.y*=e.y,this.z*=e.z),this},t.multiplyVectors=function(e,t){return this.x=e.x*t.x,this.y=e.y*t.y,this.z=e.z*t.z,this},t.divide=function(e){return"number"==typeof e?(this.x/=e,this.y/=e,this.z/=e):O(e,Array)?(this.x/=e[0],this.y/=e[1],this.z/=e[2]):(this.x/=e.x,this.y/=e.y,this.z/=e.z),this},t.scale=function(e){return this.x*=e,this.y*=e,this.z*=e,this},t.sum=function(){return this.x+this.y+this.z},t.min=function(e){return"number"==typeof e?(this.x=Math.min(this.x,e),this.y=Math.min(this.y,e),this.z=Math.min(this.z,e)):(this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this.z=Math.min(this.z,e.z)),this},t.max=function(e){return"number"==typeof e?(this.x=Math.max(this.x,e),this.y=Math.max(this.y,e),this.z=Math.max(this.z,e)):(this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this.z=Math.max(this.z,e.z)),this},t.clamp=function(e,t){return this.max(e).min(t)},t.floor=function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this},t.ceil=function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this},t.round=function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this},t.abs=function(){return this.x=Math.abs(this.x),this.y=Math.abs(this.y),this.z=Math.abs(this.z),this},t.negate=function(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this},t.length=function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)},t.lengthSquared=function(){return this.x*this.x+this.y*this.y+this.z*this.z},t.normalize=function(){return this.divide(this.length()||1)},t.setLength=function(e){return this.normalize().multiply(e)},t.lerp=function(e,t){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this.z+=(e.z-this.z)*t,this},t.lerpVectors=function(e,t,n){return this.x=e.x+(t.x-e.x)*n,this.y=e.y+(t.y-e.y)*n,this.z=e.z+(t.z-e.z)*n,this},t.dot=function(e){return this.x*e.x+this.y*e.y+this.z*e.z},t.cross=function(e){return this.crossVectors(this,e)},t.crossVectors=function(e,t){var n=e.x,i=e.y,r=e.z,o=t.x,s=t.y,a=t.z;return this.x=i*a-r*s,this.y=r*o-n*a,this.z=n*s-i*o,this},t.reflect=function(e){return this.subtract(e.clone().multiply(2*this.dot(e)))},t.distance=function(e){return Math.sqrt(this.distanceSquared(e))},t.distanceSquared=function(e){var t=this.x-e.x,n=this.y-e.y,i=this.z-e.z;return t*t+n*n+i*i},t.equals=function(e){return e.x===this.x&&e.y===this.y&&e.z===this.z},t.isZero=function(){var e=this.x,t=this.y,n=this.z;return 1e-6>=Math.abs(e)&&1e-6>=Math.abs(t)&&1e-6>=Math.abs(n)},t.toArray=function(){return[this.x,this.y,this.z]},t.toVector2=function(){return new tr(this.x,this.y)},t.fill=function(e,t){void 0===t&&(t=0),e[t]=this.x,e[t+1]=this.y,e[t+2]=this.z},t.random=function(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this},t.applyEuler=function(e,t){return e.rotateVector3(this,t)},t.applyQuaternion=function(e,t){return e.rotateVector3(this,t)},t.applyMatrix=function(e,t){return e.transformPoint(this,t)},t.applyNormalMatrix=function(e,t){return e.transformNormal(this,t)},t.applyProjectionMatrix=function(e,t){return e.projectPoint(this,t)},t.setFromMatrixPosition=function(e){var t=e.elements;return this.x=t[12],this.y=t[13],this.z=t[14],this},t.setFromMatrixColumn=function(e,t){return this.setFromArray(e.elements,4*t)},e.fromNumber=function(t){return new e().setFromNumber(t)},e.fromArray=function(t,n){return void 0===n&&(n=0),new e().setFromArray(t,n)},e}();tu.X=new tu(1,0,0),tu.Y=new tu(0,1,0),tu.Z=new tu(0,0,1),tu.ONE=new tu(1,1,1),tu.ZERO=new tu(0,0,0),new tu,new tu;var th=function(){function e(e,t){void 0===e&&(e=0),void 0===t&&(t=tu.Z),this.distance=e,this.normal=t.clone(),this.set(e,t)}var t=e.prototype;return t.set=function(e,t){this.normal.copyFrom(t);var n=this.normal.length();return 0===n?(this.normal.set(0,0,1),this.distance=e):(this.distance=e/n,this.normal.normalize()),this},t.copyFrom=function(e){return this.distance=e.distance,this.normal.copyFrom(e.normal),this},t.setFromNormalAndCoplanarPoint=function(e,t){return this.normal.copyFrom(t),this.distance=-e.dot(this.normal),this},t.clone=function(){return new e(this.distance,this.normal.clone())},t.distanceToPoint=function(e){return this.normal.dot(e)+this.distance},e.setFromNormalAndCoplanarPoint=function(t,n){return new e(-t.dot(n),n)},e}();function td(e,t,n){if(void 0===n&&(n=Math.round),Number.isInteger(e))return e;var i=Math.pow(10,t);return n(e*i)/i}(u=C||(C={}))[u.OPEN=0]="OPEN",u[u.CLOSE=1]="CLOSE",u[u.LEFT_CLOSE=2]="LEFT_CLOSE",u[u.RIGHT_CLOSE=3]="RIGHT_CLOSE";var tm=new to(new e6,new e6(1,1));function tf(e){return[e.min.clone(),new e6(e.max.x,e.min.y),e.max.clone(),new e6(e.min.x,e.max.y)]}function tp(e){if(4===e.length){var t=e[0],n=e[1],i=e[3],r=new e4().setFromRowMajorData(n.x-t.x,i.x-t.x,t.x,n.y-t.y,i.y-t.y,t.y,0,0,1);return 1e-8>=Math.abs(r.determinant())?void 0:r}}function tg(e){if(!e.isEmpty()){var t=e.getSize();return new e4().setFromRowMajorData(t.x,0,e.min.x,0,t.y,e.min.y,0,0,1)}}function tv(e,t){var n=e.transformPoint(new e9(t.x,t.y,1));return new e6(n.x,n.y)}function ty(e,t){return tv(e.clone().invert(),t)}function tx(e,t){return void 0===t&&(t=tm),tf(t).map(function(t){return tv(e,t)})}function tw(e,t){return void 0===t&&(t=tm),tI(new to,tx(e,t))}function tA(e,t,n){if(void 0===n&&(n=tm),n.isEmpty()||t.isEmpty())return!1;var i=tx(e,n),r=tf(t);return[i,r].reduce(function(e,t){return e.concat(t.map(function(e,n){var i=t[(n+1)%t.length];return new e6(-(i.y-e.y),i.x-e.x)}))},[]).every(function(e){var t,n,o,s,a=i.map(function(t){return t.dot(e)}),c=r.map(function(t){return t.dot(e)});return(t=Math).max.apply(t,[].concat(a))>=(n=Math).min.apply(n,[].concat(c))&&(o=Math).max.apply(o,[].concat(c))>=(s=Math).min.apply(s,[].concat(a))})}function tM(e,t,n){return void 0===n&&(n=tm),n.containsPoint(ty(e,t))}function tI(e,t){if(0===t.length)return e.makeEmpty();var n=t[0].clone(),i=t[0].clone();return t.forEach(function(e){n.min(e),i.max(e)}),e.set(n,i)}function tC(e,t,n){if(void 0===n&&(n=e.getCenter()),e.isEmpty())return e;var i="number"==typeof t?new e6(t,t):new e6(t.x,t.y);return tI(e,[e.min,e.max].map(function(e){return e.clone().subtract(n).multiply(i).add(n)}))}function tS(e){return Math.atan2(-e.y,-e.x)+Math.PI}function tT(e,t){var n=Math.acos(Math.min(Math.max(e.dot(t)/e.length()/t.length(),-1),1));return e.x*t.y-e.y*t.x>0?n:-n}function tb(e,t){var n=new to,i=e.min,r=e.max,o=t.min,s=t.max,a=i.clone().add(new e6().subtractVectors(r,i).multiply(o)),c=i.clone().add(new e6().subtractVectors(r,i).multiply(s));return n.set(a,c),n}function tE(e,t){var n=new to,i=e.min,r=e.max,o=t.min,s=t.max,a=new e6().subtractVectors(o,i).divide(new e6().subtractVectors(r,i)),c=new e6().subtractVectors(s,i).divide(new e6().subtractVectors(r,i));return n.set(a,c),n}var tP=function(){function e(e){void 0===e&&(e=new e8),this.ray=e.clone()}var t=e.prototype;return t.setFromCamera=function(e,t){var n=t.position,i=new e9(e.x,e.y,.5).applyProjectionMatrix(t.inverseViewProjectMatrix).subtract(n).normalize();return this.ray.set(n,i),this},t.rayCastPlane=function(e){var t=this.ray.distanceToPlane(e);if(null!==t)return{distance:t,point:new e9().copyFrom(this.ray.at(t))}},e}();function tz(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}function tB(e,t,n){return t&&tz(e.prototype,t),n&&tz(e,n),e}var tG=function(){function e(){this.layoutKey="",this.caretPositions=[]}var t=e.prototype;return t.reset=function(){this.layout=void 0},t.sync=function(e){var t=JSON.stringify([e.text,e.width,e.fontFamily,e.fontSize,e.fontWeight,e.letterSpacing,e.lineHeight,e.textAlign,e.keepWordIntact]);t!==this.layoutKey&&(this.layoutKey=t,this.caretPositions=this.measureCaretPositions(e)),this.layout={left:e.left,top:e.top,width:e.width,height:e.height,rotation:e.rotation,caretPositions:this.caretPositions}},t.resolve=function(e){var t=this.layout;if(t&&0!==t.caretPositions.length){for(var n,i=e.x-t.left,r=e.y-t.top,o=Math.cos(t.rotation),s=Math.sin(t.rotation),a=i*o+r*s,c=-i*s+r*o,l=Number.POSITIVE_INFINITY,u=D(t.caretPositions);!(n=u()).done;){var h=n.value;l=Math.min(l,Math.abs(c-(h.y+h.height/2)))}for(var d,m=t.caretPositions[0],f=Number.POSITIVE_INFINITY,p=D(t.caretPositions);!(d=p()).done;){var g=d.value;if(!(Math.abs(c-(g.y+g.height/2))>l+1)){var v=Math.abs(a-g.x);v<f&&(m=g,f=v)}}return m.index}},t.measureCaretPositions=function(e){var t=document.createElement("div");Object.assign(t.style,{position:"fixed",left:"-10000px",top:"0",visibility:"hidden",pointerEvents:"none",boxSizing:"border-box",width:""+e.width+"px",margin:"0",padding:"0",border:"0",whiteSpace:"pre-wrap",overflowWrap:"break-word",wordBreak:e.keepWordIntact?"normal":"break-all",fontFamily:e.fontFamily,fontSize:""+e.fontSize+"px",fontWeight:""+e.fontWeight,letterSpacing:""+e.letterSpacing+"px",lineHeight:""+e.lineHeight+"px",textAlign:e.textAlign,fontVariantLigatures:"none",fontKerning:"none"});var n=document.createTextNode(e.text||"");t.appendChild(n),document.body.appendChild(t);for(var i=[],r=document.createRange(),o=t.getBoundingClientRect(),s=0;s<=e.text.length;s++){r.setStart(n,s),r.collapse(!0);var a=r.getBoundingClientRect();i.push({index:s,x:a.left-o.left,y:a.top-o.top,height:a.height})}return t.remove(),i},e}(),tL="text-gizmo-custom-style",tk="rgba(59, 130, 246, 0.35)";function tR(e,t,n){var i=document.createElement("style");return i.textContent="\n ."+t+" {\n "+n.replace(/&/g,"."+t)+"\n }\n ",document.head.appendChild(i),e.classList.add(t),function(){e.classList.remove(t),i.remove()}}var tF=function(e){function n(n){var i,r,o,s,a,c,l;return(i=e.call(this)||this).interactionParam={type:"none"},i.attachedProjections=new Set,i.disposed=!1,i.selectionStart=null,i.selectionEnd=null,i.caretMapper=new tG,i.handleInput=function(e){var n,r,o,s=i._editingItem,a=null==s?void 0:s.getComponent(t.TextComponent),c=null==(n=i.owner.getEngine())?void 0:n.sceneServer.compositions[0];if(s&&a&&c){var l=e.target.value,u=null!=(o=null==(r=a.textStyle)?void 0:r.fontFamily)?o:"";a.setText(l);var h=a.getLineCount(l),d=Math.ceil(a.textLayout.lineHeight*h);a.setTextHeight(d),c.gotoAndStop(c.time),i.emit("textInput",{itemId:s.getInstanceId(),text:l,fontFamily:u})}},i.handleKeyDown=function(e){if("escape"===e.code.toLocaleLowerCase()){e.preventDefault();return}e.stopPropagation()},i.handleMouseDown=function(e){0===e.button&&i.textAreaElement.selectionStart!==i.textAreaElement.selectionEnd&&i.textAreaElement.setSelectionRange(i.textAreaElement.selectionStart,i.textAreaElement.selectionStart)},i.handleDragStart=function(e){e.preventDefault()},i.owner=n,i.textAreaElement=document.createElement("textarea"),i.pointerSelectionPreviewElement=document.createElement("div"),null==(o=n.getEngine())||null==(r=o.canvas.parentElement)||r.appendChild(i.textAreaElement),null==(a=n.getEngine())||null==(s=a.canvas.parentElement)||s.appendChild(i.pointerSelectionPreviewElement),i.removeTextAreaStyle=tR(i.textAreaElement,tL,"\n word-break: normal;\n position: absolute;\n z-index: 3;\n border: none;\n margin: 0;\n padding: 0;\n outline: none !important;\n overflow: hidden;\n resize: none;\n display: none;\n background: transparent;\n opacity: .8;\n cursor: text;\n -webkit-user-drag: none;\n color: transparent;\n caret-color: #000000;\n -webkit-text-fill-color: transparent;\n text-fill-color: transparent;\n /* canvas 按单字符 measureText+fillText 排版(无 kerning、无 ligature,含 ff/fi/fl 等 f 连字);\n DOM 默认会施加 kerning 与 f 连字 → 字序列比 canvas 窄 → 长行累积往左偏(尤其 f)。关闭二者以横向同源。 */\n font-variant-ligatures: none;\n font-kerning: none;\n"),i.removeTextSelectionStyle=(c="\n ."+tL+"::selection {\n background-color: "+tk+";\n color: transparent;\n -webkit-text-fill-color: transparent;\n }\n ",(l=document.createElement("style")).textContent=c,document.head.appendChild(l),function(){l.remove()}),i.removePointerSelectionPreviewStyle=tR(i.pointerSelectionPreviewElement,"text-gizmo-pointer-selection-preview","\n position: absolute;\n z-index: 2;\n box-sizing: border-box;\n border: none;\n margin: 0;\n padding: 0;\n overflow: hidden;\n display: none;\n pointer-events: none;\n opacity: .8;\n color: transparent;\n -webkit-text-fill-color: transparent;\n font-variant-ligatures: none;\n font-kerning: none;\n"),i.textAreaElement.addEventListener("keydown",i.handleKeyDown),i.textAreaElement.addEventListener("mousedown",i.handleMouseDown),i.textAreaElement.addEventListener("dragstart",i.handleDragStart),i}G(n,e);var i=n.prototype;return i.selectAllText=function(){if(this.disposed)return!1;var e,n,i=null==(e=this._editingItem)?void 0:e.getComponent(t.TextComponent);if(!i)return!1;var r="block"===this.textAreaElement.style.display?this.textAreaElement.value.length:(null!=(n=i.text)?n:"").length;return this.selectionStart=0,this.selectionEnd=r,"block"===this.textAreaElement.style.display&&(this.textAreaElement.focus(),this.textAreaElement.select(),this.textAreaElement.scrollTop=0),!0},i.beginFromCurrentSelection=function(e){if(this.disposed)return!1;var n=this.owner.getSelection().getSelectedPlayerItems(),i=1===n.length?n[0]:void 0;return!!((null==i?void 0:i.type)===t.spec.ItemType.text&&i.getComponent(t.TextComponent))&&(this._editingItem=i,this.interactionParam={type:"edit",textareaType:e},!0)},i.retarget=function(e,n){return void 0===n&&(n="focus"),!this.disposed&&e.type===t.spec.ItemType.text&&!!e.getComponent(t.TextComponent)&&(e===this._editingItem||(this.hideTextArea(),this.selectionStart=null,this.selectionEnd=null,this.cancelPointerSelection(),this.caretMapper.reset(),this.textAreaElement.setSelectionRange(0,0),this._editingItem=e,this.interactionParam={type:"edit",textareaType:n},!0))},i.beginPointerSelection=function(e){this.textAreaElement.style.pointerEvents="none",this.pointerSelection={anchor:X({},e),focus:X({},e),active:!0},this.applyPointerSelection()},i.updatePointerSelection=function(e){var t;(null==(t=this.pointerSelection)?void 0:t.active)&&(this.pointerSelection.focus=X({},e),this.applyPointerSelection())},i.finishPointerSelection=function(e){this.pointerSelection&&(this.pointerSelection.focus=X({},e),this.pointerSelection.active=!1,this.textAreaElement.style.pointerEvents="",this.applyPointerSelection()&&(this.pointerSelection=void 0))},i.cancelPointerSelection=function(){this.textAreaElement.style.pointerEvents="",this.pointerSelection=void 0,this.hidePointerSelectionPreview()},i.attachProjection=function(e){this.disposed||this.attachedProjections.add(e)},i.detachProjection=function(e){this.attachedProjections.delete(e)&&!(this.attachedProjections.size>0)&&(this.saveSelectionRange(),this.hideTextArea())},i.dispose=function(){this.disposed||(this.disposed=!0,this.attachedProjections.clear(),this._editingItem=void 0,this.interactionParam={type:"none"},this.cancelPointerSelection(),this.caretMapper.reset(),this.hideTextArea(),this.textAreaElement.removeEventListener("keydown",this.handleKeyDown),this.textAreaElement.removeEventListener("mousedown",this.handleMouseDown),this.textAreaElement.removeEventListener("dragstart",this.handleDragStart),this.textAreaElement.remove(),this.pointerSelectionPreviewElement.remove(),this.removeTextAreaStyle(),this.removeTextSelectionStyle(),this.removePointerSelectionPreviewStyle())},i.syncTextArea=function(e,n){var i,r=this._editingItem;if(0!==this.attachedProjections.size&&r&&"empty"!==e.type){var o=r.getComponent(t.TextComponent);if(!o){this.hideTextArea();return}var s="block"!==this.textAreaElement.style.display,a=o.textLayout,c=a.lineHeight,l=a.letterSpace,u=a.textAlign,h=a.height,d=a.keepWordIntact,m=o.textStyle,f=m.fontSize,p=m.textWeight,g=m.fontFamily,v=o.text,y=tx(e.transform),x=y[0],w=y[1],A=y[3],M=x.distance(w),I=x.distance(A),C=Math.atan2(w.y-x.y,w.x-x.x),S=h>0?I/h:n;s&&(this.textAreaElement.value=null!=v?v:"",this.textAreaElement.setSelectionRange(0,0),this.textAreaElement.style.display="block",this.textAreaElement.style.wordBreak=d?"normal":"break-all",this.textAreaElement.style.whiteSpace="pre-wrap",this.textAreaElement.style.overflowWrap="break-word",this.textAreaElement.style.fontWeight=p,this.textAreaElement.style.letterSpacing=""+l*S+"px",this.textAreaElement.style.transformOrigin="0 0",this.textAreaElement.style.paintOrder="stroke fill",this.textAreaElement.addEventListener("input",this.handleInput)),this.textAreaElement.style.left=""+x.x+"px",this.textAreaElement.style.top=""+x.y+"px",this.textAreaElement.style.width=""+M+"px",this.textAreaElement.style.height=""+I+"px",this.textAreaElement.style.fontFamily=g,this.textAreaElement.style.textAlign=this.getTextAlign(u),this.textAreaElement.style.fontSize=""+f*S+"px",this.textAreaElement.style.lineHeight=""+c*S+"px",this.textAreaElement.style.transform="rotateZ("+C+"rad)",Object.assign(this.pointerSelectionPreviewElement.style,{left:""+x.x+"px",top:""+x.y+"px",width:""+M+"px",height:""+I+"px",fontFamily:g,textAlign:this.getTextAlign(u),fontSize:""+f*S+"px",fontWeight:p,letterSpacing:""+l*S+"px",lineHeight:""+c*S+"px",transform:"rotateZ("+C+"rad)",transformOrigin:"0 0",wordBreak:d?"normal":"break-all",whiteSpace:"pre-wrap",overflowWrap:"break-word"}),this.syncPointerLayout({left:x.x,top:x.y,width:M,height:I,rotation:C,text:null!=v?v:"",fontFamily:g,fontSize:f*S,fontWeight:p,letterSpacing:l*S,lineHeight:c*S,textAlign:this.getTextAlign(u),keepWordIntact:d}),this.textAreaElement.scrollTop=0,!s||(null==(i=this.pointerSelection)?void 0:i.active)||("select"===this.interactionParam.textareaType?(this.textAreaElement.focus(),this.textAreaElement.select()):(this.textAreaElement.focus(),null!==this.selectionStart&&null!==this.selectionEnd&&this.textAreaElement.setSelectionRange(this.selectionStart,this.selectionEnd)),this.textAreaElement.scrollTop=0)}},i.saveSelectionRange=function(){this.selectionStart=this.textAreaElement.selectionStart,this.selectionEnd=this.textAreaElement.selectionEnd},i.hideTextArea=function(){this.textAreaElement.removeEventListener("input",this.handleInput),this.textAreaElement.style.display="none",this.hidePointerSelectionPreview()},i.syncPointerLayout=function(e){this.pointerSelection&&(this.caretMapper.sync(e),this.applyPointerSelection()&&!this.pointerSelection.active&&(this.pointerSelection=void 0))},i.applyPointerSelection=function(){var e=this.pointerSelection;if(!e)return!1;null!=e.anchorIndex||(e.anchorIndex=this.caretMapper.resolve(e.anchor));var t=this.caretMapper.resolve(e.focus);if(void 0===e.anchorIndex||void 0===t)return!1;var n=Math.min(e.anchorIndex,t),i=Math.max(e.anchorIndex,t);return e.active||this.textAreaElement.focus(),this.textAreaElement.setSelectionRange(n,i,t<e.anchorIndex?"backward":"forward"),this.textAreaElement.scrollTop=0,e.active?this.renderPointerSelectionPreview(n,i):this.hidePointerSelectionPreview(),!0},i.renderPointerSelectionPreview=function(e,t){if(e===t){this.hidePointerSelectionPreview();return}var n=this.textAreaElement.value,i=document.createElement("span");i.style.backgroundColor=tk,i.textContent=n.slice(e,t),this.pointerSelectionPreviewElement.replaceChildren(document.createTextNode(n.slice(0,e)),i,document.createTextNode(n.slice(t))),this.pointerSelectionPreviewElement.style.display="block"},i.hidePointerSelectionPreview=function(){this.pointerSelectionPreviewElement.style.display="none",this.pointerSelectionPreviewElement.replaceChildren()},i.getTextAlign=function(e){switch(e){case t.spec.TextAlignment.middle:return"center";case t.spec.TextAlignment.right:return"right";default:return"left"}},tB(n,[{key:"editingItem",get:function(){return this._editingItem}},{key:"isEditing",get:function(){return void 0!==this._editingItem}}]),n}(t.EventEmitter),tV=function(){function e(e){this.owner=e}return e.prototype.createGizmos=function(){return[]},e}(),tD=function(e){function t(){return e.apply(this,arguments)}return G(t,e),t}(tV),tO=function(e){function t(){return e.apply(this,arguments)}return G(t,e),t.prototype.createGizmos=function(){return this.owner.getActiveEditMode().createGizmos()},t}(tV);e.GestureCursorType=void 0,(h=e.GestureCursorType||(e.GestureCursorType={})).NORMAL="normal",h.ROTATION="rotation",h.SCALE="scale",h.TEXT_ROTATION="text-rotation",h.CIRCLE="circle",h.HAND="hand",h.ACTIVE_HAND="active-hand",h.POINTER="pointer",h.TEXT="text",h.TEXT_CREATE="text-create",h.FRAME_CREATE="frame-create",h.BOX_SELECT="box-select";var tY=function(){function e(e){this._owner=e}var t=e.prototype;return t.dispose=function(){},t.onUpdate=function(){},t.prepareForDispatch=function(){},t.requiresDragThreshold=function(){return!0},t.draw=function(e){},t.onMouseDown=function(e){},t.onMouseUp=function(e){},t.onMouseMove=function(e){},t.onMouseDrag=function(e){},t.onMouseLeave=function(){},t.onKeyDown=function(e){},t.onKeyUp=function(e){},e}();e.GizmoType=void 0,(d=e.GizmoType||(e.GizmoType={})).NULL="null",d.HAND="hand",d.CHANGE_SELECTION="change-selection",d.MOVE_SELECTION="move-selection",d.BOX_SELECTION="box-selection",d.CLICK_DRAG_MULTIPLEX="click-drag-multiplex",d.CORNER_ROTATION="corner-rotation",d.RESIZE_SELECTION="resize-selection",d.VIEWPORT_OVERLAY="viewport-overlay",d.IMAGE_CUT="image-cut",d.TEXT="text",d.MASK="mask",d.LOADING="loading",d.IMAGE_EXPAND="image-expand",d.SPRITE_TEXT_EDIT="sprite-text-edit",d.ICON="icon",d.ITEM_CREATE="item-create";var tN=function(){function e(){}return e.createVFXItem=function(e,n,i){void 0===n&&(n=null),void 0===i&&(i="NewVFXItem");for(var r=arguments.length,o=Array(r>3?r-3:0),s=3;s<r;s++)o[s-3]=arguments[s];var a=new t.VFXItem(e.engine);a.name=i;for(var c,l=D(o);!(c=l()).done;){var u=c.value;a.addComponent(u)}return e.addItem(a),e.rootComposition.items.push(a),n&&a.setParent(n),a},e}(),tH=function(){function e(){}return e.createEmpty=function(e,n,i){void 0===n&&(n=null),void 0===i&&(i="NewVFXItem");var r=tN.createVFXItem(e,n,i);return r.type=t.spec.ItemType.null,r},e.createSprite=function(e,n,i){void 0===n&&(n=null),void 0===i&&(i="NewSprite");var r=tN.createVFXItem(e,n,i,t.SpriteComponent);return r.type=t.spec.ItemType.sprite,r},e.createText=function(e,n,i){void 0===n&&(n=null),void 0===i&&(i="NewText");var r=tN.createVFXItem(e,n,i,t.TextComponent);return r.type=t.spec.ItemType.text,r},e.createVideo=function(e,i,r){void 0===i&&(i=null),void 0===r&&(r="NewVideo");var o=tN.createVFXItem(e,i,r,n.VideoComponent);return o.type=t.spec.ItemType.video,o},e.createEffects=function(e,n,i,r){return void 0===i&&(i=null),void 0===r&&(r="NewEffects"),z(function(){var o,s;return Y(this,function(a){switch(a.label){case 0:return[4,t.AssetManager.loadPrecomposition(n,{autoplay:!1})];case 1:return o=a.sent(),(s=t.PrecompositionManager.instantiate(o,e)).name=r,s.type=t.spec.ItemType.composition,s.getComponent(t.CompositionComponent).endBehavior=s.endBehavior,i&&s.setParent(i),[2,s]}})})()},e}();function tU(e,t,n){var i=function(e){var t=e.composition;if(!(null==t?void 0:t.camera))return console.warn("The composition of the item does not have a camera, using identity matrix instead."),new e3;var n=t.camera.getProjectionMatrix(),i=t.camera.getViewMatrix();return new e3().copyFrom(n.multiply(i))}(t);return new e6().copyFrom(e.applyProjectionMatrix(i).toVector2()).add(new e6(1,-1)).multiply(new e6(n.x/2,-n.y/2))}function tj(e,t){return new e6(e.x/t.x*2-1,1-e.y/t.y*2)}function tW(e,t){return new e6(e.x/t.x*2,-(e.y/t.y*2))}function tQ(e,t){return new e6(e.x/2*t.x,-e.y/2*t.y)}function tK(e,t,n,i){var r=t.position,o=t.matrix,s=tj(e,i),a=new tP().setFromCamera(s,{position:r,inverseViewProjectMatrix:o}).rayCastPlane(n);return null==a?void 0:a.point}function tZ(e,t,n,i,r){var o=tU(new e9().clone(),n,t),s=tK(o,i,r,t),a=tK(o.clone().add(e),i,r,t);return s&&a?a.subtract(s):(console.warn("size is out of bounds."),new e9(0,0,0))}function tX(e,t,n){var i=new e6,r=n.composition.camera,o=n.transform.getWorldPosition().z,s=r.getInverseVPRatio(o),a=s.x,c=s.y;return i.x=Math.abs(e.x*t.x/a/2),i.y=Math.abs(-(e.y*t.y/c/2)),i}function tJ(e,t){return e.clone().divide(t)}function tq(e,t,n,i){var r=tQ(i,t),o=new e6(t.x/2,t.y/2);return e.clone().subtract(r).subtract(o).multiply(new e6(1/n,1/n)).add(o)}function t_(e,t){var n=new e9(0,0,1).applyEuler(t),i=new th;return i.setFromNormalAndCoplanarPoint(e,n),i}function t$(e){return e.type===t.spec.ItemType.null&&void 0!==e.getComponent(t.FrameComponent)&&"画板"===e.name}function t0(e){return e.type===t.spec.ItemType.null&&void 0!==e.getComponent(t.FrameComponent)&&"动效"===e.name}function t1(e){if(e.type!==t.spec.ItemType.sprite)return!1;var n,i=null==(n=e.definition)?void 0:n.content;return e.name.includes("生成器")||(null==i?void 0:i.generatorType)==="image"||(null==i?void 0:i.generatorType)==="video"||(null==i?void 0:i.isVideoGenerator)===!0}function t2(e){if(!t1(e))return!1;var t,n=null==(t=e.definition)?void 0:t.content;return(null==n?void 0:n.generatorType)==="video"||(null==n?void 0:n.isVideoGenerator)===!0||e.name.includes("视频")}function t4(e){return e.type===t.spec.ItemType.null&&!e.getComponent(t.FrameComponent)}function t3(e,t){var n=t5(e,t);return n?tw(n):new to}function t5(e,n){if(e.isVisible&&(e.type===t.spec.ItemType.sprite||e.type===t.spec.ItemType.plugin||e.type===t.spec.ItemType.video||e.type===t.spec.ItemType.richtext||e.type===t.spec.ItemType.text||e.type===t.spec.ItemType.null||e.type===t.spec.ItemType.shape)){var i=!!e.getComponent(t.FrameComponent);if(e.type!==t.spec.ItemType.null||i){var r,o,s=e.transform,a=e.composition;s.updateLocalMatrix();var c=s.size.clone().divide(2),l=c.x,u=c.y,h=new e3().copyFrom(null!=(o=null==a?void 0:a.transform.getWorldMatrix())?o:new e3).invert().multiply(s.getWorldMatrix());r=tp([new e9(-l,u,0),new e9(l,u,0),new e9(l,-u,0),new e9(-l,-u,0)].map(function(t){return tU(t.applyMatrix(h),e,n)}))}if(i)return r;for(var d,m,f=r?tw(r):new to,p=!1,g=D(null!=(d=e.children)?d:[]);!(m=g()).done;){var v=t3(m.value,n);v.isEmpty()||(f.union(v),p=!0)}return p?tg(f):r}}function t8(e,t){var n,i=null!=(n=e.transform.anchor)?n:e.transform.position;return tU(new e9().copyFrom(i).applyMatrix(new e3().copyFrom(e.transform.getWorldMatrix())),e,t).multiply(100).round().divide(100)}function t6(e){var t,n,i={matrix:new e3,parentMatrix:new e3};return void 0!==e.transform&&(e.transform.updateLocalMatrix(),i.matrix.copyFrom(e.transform.getWorldMatrix()),i.parentMatrix.copyFrom(null!=(n=null==(t=e.transform.parentTransform)?void 0:t.getWorldMatrix())?n:new e3)),i}function t9(e){var t=t6(e),n=t.matrix,i=t.parentMatrix,r=new e9,o=new e5,s=new e9;return e.transform.assignWorldTRS(r,o,s),{matrix:n,parentMatrix:i,position:r,rotation:new e1(0,0,0,e2.XYZ).setFromQuaternion(o),scale:s}}function t7(e){var t,n=e.transform,i=e.composition;n.updateLocalMatrix();var r=new e3().copyFrom(null!=(t=null==i?void 0:i.transform.getWorldMatrix())?t:new e3).invert().multiply(n.getWorldMatrix()),o=new e9;return r.decompose(new e9,new e5,o),new e6(Math.abs(n.size.x*o.x),Math.abs(n.size.y*o.y))}function ne(e){return(null==e?void 0:e.isVisible)!==!1}function nt(e){for(var t=e;t;){if(t0(t))return t;t=t.parent}}function nn(e){for(var t=[],n=e.parent;n;)t$(n)&&t.push(n),n=n.parent;return t}function ni(e){var t=[],n=t$(e);if(t0(e))return t;function i(e){for(var t,n=[],r=D(e);!(t=r()).done;){var o=t.value;n.push(o),o.children&&o.children.length>0&&n.push.apply(n,[].concat(i(o.children)))}return n}return n?i(e.children):e.children&&e.children.length>0?i(e.children):t}function nr(e,t){if(e){var n=function(e,t){for(var i,r=D(e);!(i=r()).done;){var o=i.value;if(o.getInstanceId()===t)return o;var s=n(o.children,t);if(s)return s}};return n(e.items,t)}}var no=new WeakMap;function ns(e){no.delete(e),e.playVideo()}function na(e){var t=e.playPromise;if(!t){no.delete(e),e.pauseVideo();return}var n=Symbol("pause-video");no.set(e,n);var i=function(){no.get(e)===n&&(no.delete(e),e.pauseVideo())};t.then(i,i)}function nc(e,i){var r=nr(e.sceneServer.compositions[0],i);if((null==r?void 0:r.type)===t.spec.ItemType.video){var o=r.getComponent(n.VideoComponent);o&&ns(o)}}function nl(e,i){var r=nr(e.sceneServer.compositions[0],i);if((null==r?void 0:r.type)===t.spec.ItemType.video){var o=r.getComponent(n.VideoComponent);o&&na(o)}}function nu(e,n){var i,r=nr(e.sceneServer.compositions[0],n),o=null==r?void 0:null==(i=r.children)?void 0:i[0];(null==o?void 0:o.type)===t.spec.ItemType.composition&&o.getComponent(t.CompositionComponent).play()}function nh(e,n){var i,r=nr(e.sceneServer.compositions[0],n),o=null==r?void 0:null==(i=r.children)?void 0:i[0];(null==o?void 0:o.type)===t.spec.ItemType.composition&&o.getComponent(t.CompositionComponent).pause()}e.TransformType=void 0,(m=e.TransformType||(e.TransformType={})).NULL="null",m.TRANSLATION="translation",m.ROTATION="rotation",m.SCALE="scale",m.WIDTH_SCALE="width-scale";var nd=function(){function e(){}return e.getViewScale=function(e){var t,n=null==(t=e.sceneServer.compositions[0])?void 0:t.camera;return n?n.getViewportMatrix().elements[0]:1},e.getViewportTranslation=function(e){var t,n=null==(t=e.sceneServer.compositions[0])?void 0:t.camera;if(!n)return new e6;var i=n.getViewportMatrix().elements;return new e6(i[12],i[13])},e.getCameraInfo=function(e){var t,n=null==(t=e.sceneServer.compositions[0])?void 0:t.camera;return n?{position:new e9().copyFrom(n.position),matrix:new e3().copyFrom(n.getInverseViewProjectionMatrix())}:{position:new e9,matrix:new e3}},e.getContainerSize=function(e){return new e6(e.offsetWidth,e.offsetHeight)},e}();function nm(e){return Array.isArray(e)?e.map(function(e){return nm(e)}):e&&"object"==typeof e?Object.fromEntries(Object.entries(e).map(function(e){return[e[0],nm(e[1])]})):e}function nf(e){if(e&&"object"==typeof e){for(var t,n=D(Object.values(e));!(t=n()).done;)nf(t.value);Object.freeze(e)}return e}function np(e){return Object.freeze(X({},e,{defaults:nf(nm(e.defaults))}))}var ng="\n// Shadertoy Fragment Shader\n// Diagonal background gradient + wider colorful transparent shimmer\n\nprecision highp float;\n\nvarying vec2 vUV;\n\nuniform vec4 _Time;\n\n// ------------------------------------------------------------\n// Background\n// ------------------------------------------------------------\nvec3 background(vec2 uv) {\n vec3 topLeft = vec3(0.88, 0.85, 1.00);\n vec3 bottomRight = vec3(0.98, 0.98, 0.98);\n\n float d = (uv.x + (1.0 - uv.y)) * 0.5;\n d = smoothstep(0.0, 1.0, d);\n\n vec3 col = mix(topLeft, bottomRight, d);\n\n vec2 p1 = uv - vec2(1.13, 1.40);\n float r1 = length(p1 / vec2(0.85, 0.85));\n float g1 = 1.0 - smoothstep(0.0, 0.96, r1);\n col += vec3(172.0/255.0, 183.0/255.0, 1.0) * g1 * 0.28;\n\n vec2 p2 = uv - vec2(0.25, 0.23);\n float r2 = length(p2 / vec2(0.74, 0.64));\n float g2 = 1.0 - smoothstep(0.0, 1.0, r2);\n col += vec3(147.0/255.0, 108.0/255.0, 1.0) * g2 * 0.10;\n\n return col;\n}\n\n// ------------------------------------------------------------\n// Easing: slow at start, fast at end\n// ------------------------------------------------------------\nfloat easeInQuad(float x) {\n return x * x;\n}\n\n// ------------------------------------------------------------\n// Color palette helper\n// ------------------------------------------------------------\nvec3 palette(float t) {\n // 柔和的彩色条:蓝 -> 青 -> 紫 -> 粉 -> 蓝\n vec3 a = vec3(0.62, 0.82, 1.00);\n vec3 b = vec3(0.72, 0.95, 1.00);\n vec3 c = vec3(0.83, 0.76, 1.00);\n vec3 d = vec3(1.00, 0.82, 0.95);\n\n t = fract(t);\n\n if (t < 0.33) {\n float k = smoothstep(0.0, 0.33, t);\n return mix(a, b, k);\n } else if (t < 0.66) {\n float k = smoothstep(0.33, 0.66, t);\n return mix(b, c, k);\n } else {\n float k = smoothstep(0.66, 1.0, t);\n return mix(c, d, k);\n }\n}\n\n// ------------------------------------------------------------\n// Wider colorful transparent left-to-right shimmer\n// ------------------------------------------------------------\nvec4 shimmerBand(vec2 uv, float t) {\n float cycle = fract(t * 0.70);\n cycle = easeInQuad(cycle);\n\n float x = cycle * 1.55 - 0.25; // sweep from left to right\n\n float d = abs(uv.x - x);\n float band = 1.0 - smoothstep(0.0, 0.30, d);\n float core = 1.0 - smoothstep(0.0, 0.10, d);\n\n float x2 = x + (uv.y - 0.5) * 0.18;\n float d2 = abs(uv.x - x2);\n float band2 = 1.0 - smoothstep(0.0, 0.20, d2);\n\n float s = max(band * 0.85, band2 * 0.60);\n s = max(s, core * 0.95);\n s = clamp(s, 0.0, 1.0);\n\n // 颜色沿条带变化,模拟彩色渐变\n float hueT = uv.y * 0.25 + uv.x * 0.60 + t * 0.10;\n vec3 color1 = palette(hueT);\n\n // 中间更亮一点,边缘更淡\n vec3 color2 = mix(color1, vec3(1.0), core * 0.35);\n\n return vec4(color2, s);\n}\n\n// ------------------------------------------------------------\n// Main\n// ------------------------------------------------------------\nvoid main() {\n vec2 uv = vUV;\n\n vec3 col = background(uv);\n\n vec4 sh = shimmerBand(uv, _Time.y);\n\n // 可选:增加一点柔光感\n col += sh.rgb * sh.a * 0.06;\n\n gl_FragColor = vec4(col, 1.0);\n}",nv=np({id:"feedback.loading",defaults:{loadingFragment:ng}}),ny=np({id:"mode.effects-edit",defaults:{allowTransform:!0}}),nx=np({id:"viewport.navigation",defaults:{scrollWheelZoom:!1,invertZoom:!1,zoomStep:.1}}),nw=np({id:"viewport.overlay",defaults:{boxColor:16711680,boxWidth:1,outerMaskEnabled:!0,markColor:0,markAlpha:.17,safeAreaEnabled:!0,safeAreaBoxColor:65280,safeAreaBoxAlpha:.3}}),nA=np({id:"selection.preview",defaults:{videoPreSelectedPlay:!0,preSelectedColor:3900150,preSelectedWidth:2,regionBoxColor:3900150,regionBoxAlpha:.17,regionWireframeColor:3900150,regionWireframeAlpha:.78,regionWireframeWidth:1}}),nM=np({id:"selection.snap",defaults:{enabled:!0,lineWidth:.8,lineColor:15878178,distance:5}}),nI=np({id:"resize-selection",defaults:{pixelRatio:1,contentRatio:1,wireframeColor:3900150,wireframeAlpha:1,wireframeWidth:1.5,cornerFillColor:16777215,cornerLineColor:3900150,cornerLineWidth:1.5,cornerLineAlpha:1,scaleCircleSize:4,rotationCircleSize:7,infoShowEnabled:!0,sizeTextColor:6710886,nameTextColor:6710886,frameMoveLineColor:3900150,frameMoveLineWidth:2,imageLogoUrl:"https://mdn.alipayobjects.com/huamei_ixsp8m/afts/img/A*F2wVS7x0MfIAAAAAQBAAAAgAev-aAQ/original",groupLogoUrl:"https://mdn.alipayobjects.com/huamei_ppzin5/afts/img/Yo69Sr7boqYAAAAAH3AAAAgADjdkAQFr/original",textLogoUrl:"https://mdn.alipayobjects.com/huamei_ppzin5/afts/img/Yo69Sr7boqYAAAAAH3AAAAgADjdkAQFr/original",videoLogoUrl:"https://mdn.alipayobjects.com/huamei_ixsp8m/afts/img/A*w1fnS4mq0VgAAAAAQCAAAAgAev-aAQ/original",frameLogoUrl:"https://mdn.alipayobjects.com/huamei_ixsp8m/afts/img/A*DRF_RpndkjUAAAAAQDAAAAgAev-aAQ/original",effectsLogoUrl:"https://mdn.alipayobjects.com/huamei_ixsp8m/afts/img/A*RMewR4ruUnYAAAAAQGAAAAgAev-aAQ/original"}}),nC=np({id:"tool.image-cut",defaults:{maskColor:16777215,maskAlpha:.5,cutBoxLineWidth:2,cutBoxLineColor:6960383,cutBoxLineAlpha:1,itemBoxLineWidth:1,itemBoxLineColor:6960383,itemBoxLineAlpha:1,cutBoxCornerRadius:5,cutBoxCornerFillColor:16777215,cutBoxCornerLineWidth:2,cutBoxCornerLineColor:6960383,cutBoxCornerLineAlpha:1,scaleInteractionDistance:8,directionScaleInteractionDistance:5,gridLineWidth:1,gridLineColor:16777215,gridLineAlpha:1,gridCount:2}}),nS=np({id:"tool.image-expand",defaults:{maskColor:6960383,maskAlpha:.2,expandBoxLineWidth:2,expandBoxLineColor:6960383,expandBoxLineAlpha:1,expandBoxCornerRadius:5,expandBoxCornerLineWidth:2,expandBoxCornerLineColor:6960383,expandBoxCornerLineAlpha:1,expandBoxCornerFillColor:16777215,scaleInteractionDistance:8,directionScaleInteractionDistance:5,gridLineWidth:1,gridLineColor:16777215,gridLineAlpha:1,gridCount:2}}),nT=np({id:"tool.mask",defaults:{maskImage:"",brushSize:20,brushColor:6960383,brushAlpha:.5,maskColor:65280,maskBackgroundColor:16777215,maskAlpha:1,boxLineWidth:1,boxLineColor:6960383,boxLineAlpha:1}}),nb=np({id:"tool.sprite-text-edit",defaults:{textColor:16777215,preSelectedTextColor:16777215,boxLineWidth:3,dashLineDash:8,dashLineGap:8,editBoxAlpha:.15,editBoxColor:3900150,editBoxLineAlpha:1,editBoxLineColor:3900150,editBoxPreSelectedAlpha:.25,editBoxPreSelectedColor:3900150,editBoxLinePreSelectedAlpha:1,editBoxLinePreSelectedColor:3900150,hasChangedEditBoxAlpha:.2,hasChangedEditBoxColor:2278750,hasChangedEditBoxLineAlpha:1,hasChangedEditBoxLineColor:2278750,hasChangedEditBoxPreSelectedAlpha:.3,hasChangedEditBoxPreSelectedColor:2278750,hasChangedEditBoxLinePreSelectedAlpha:1,hasChangedEditBoxLinePreSelectedColor:2278750,editBoxSelectedAlpha:.6,editBoxSelectedColor:16776960}}),nE=np({id:"feedback.icon",defaults:{autoShow:!0,videoPlayUrl:"https://mdn.alipayobjects.com/huamei_ixsp8m/afts/img/A*ORMmSYYHIHUAAAAAJbAAAAgAev-aAQ/original",videoPlayShift:[20,20],videoPlayWidth:20,videoPlayHeight:20,imageGeneratorUrl:"https://mdn.alipayobjects.com/huamei_ixsp8m/afts/img/A*bYB-TIEWLBkAAAAAQGAAAAgAev-aAQ/original",videoGeneratorUrl:"https://mdn.alipayobjects.com/huamei_ixsp8m/afts/img/A*6cTFT44CuKEAAAAAQCAAAAgAev-aAQ/original",generatorWidth:200,generatorHeight:200}}),nP=np({id:"tool.item-create",defaults:{frameBorderColor:2193663,frameBorderWidth:1,frameBorderAlpha:.8,frameFillColor:2193663,frameFillAlpha:.15,frameChildBoxAlpha:.35,frameChildBoxColor:2193663}});function nz(e,t,n){void 0===n&&(n=new e6);var i=e.sceneServer.compositions[0];if(i){var r=i.camera,o=r.getViewportMatrix().elements[0],s=new e6(r.getViewportMatrix().elements[12],r.getViewportMatrix().elements[13]),a=o+t,c=(n.x-s.x)/o,l=(n.y-s.y)/o,u=new e6(n.x-c*a,n.y-l*a),h=new e3().compose(new e9(u.x,u.y,0),new e5,new e9(a,a,1));i.camera.setViewportMatrix(h)}}function nB(e,t){var n=e.sceneServer.compositions[0];if(n){var i=n.camera,r=i.getViewportMatrix().elements[0],o=new e6(i.getViewportMatrix().elements[12],i.getViewportMatrix().elements[13]).add(t),s=new e3().compose(new e9(o.x,o.y,0),new e5,new e9(r,r,1));i.setViewportMatrix(s)}}function nG(e,t,n){var i=e.min.clone().multiply(-t).subtract(n.clone().divide(2)),r=e.max.clone().multiply(-t).add(n.clone().divide(2));return new to(new e6(Math.min(i.x,r.x),Math.min(i.y,r.y)),new e6(Math.max(i.x,r.x),Math.max(i.y,r.y)))}var nL=function(e){function n(t){var n;return(n=e.call(this)||this).minScale=.01,n.maxScale=20,n.minTranslation=new e6(-1/0,-1/0),n.maxTranslation=new e6(1/0,1/0),n.owner=t,n}G(n,e);var i=n.prototype;return i.setScaleRange=function(e,t){if(!Number.isFinite(e)||!Number.isFinite(t)||e<=0||t<=0||e>t)throw RangeError("Viewport scale range must be finite, positive, and ordered.");this.minScale=e,this.maxScale=t,this.clampCurrentViewport()},i.setViewportRange=function(e){var t,n,i,r,o,s,a,c=null!=(r=e.minScale)?r:this.minScale,l=null!=(o=e.maxScale)?o:this.maxScale;if(!Number.isFinite(c)||!Number.isFinite(l)||c<=0||l<=0||c>l)throw RangeError("Viewport scale range must be finite, positive, and ordered.");var u=null!=(s=null==(t=e.minTranslation)?void 0:t.clone())?s:new e6(-1/0,-1/0),h=null!=(a=null==(n=e.maxTranslation)?void 0:n.clone())?a:new e6(1/0,1/0);if(!this.isTranslationRangeValid(u,h))throw RangeError("Viewport translation range must be ordered and finite or infinite.");var d=null==(i=e.translationBounds)?void 0:i.clone();if(d&&(d.isEmpty()||!d.min.toArray().every(Number.isFinite)||!d.max.toArray().every(Number.isFinite)))throw RangeError("Viewport content bounds must be finite and ordered.");this.translationBounds=d,this.minScale=c,this.maxScale=l,this.minTranslation=u,this.maxTranslation=h,this.clampCurrentViewport()},i.resetViewportRange=function(){this.translationBounds=void 0,this.minScale=.01,this.maxScale=20,this.minTranslation=new e6(-1/0,-1/0),this.maxTranslation=new e6(1/0,1/0),this.clampCurrentViewport()},i.handleWheel=function(e,n){if(!this.hasViewport()||(e.accept(),e.buttonMask!==t.MouseButtonMask.None))return!1;var i=this.normalizeWheel(e),r=this.classifyWheel(e),o=new e6(e.position.x,e.position.y);if("zoom"===r){if(0===i.y)return!1;var s=this.config.invertZoom?-i.y:i.y,a=this.config.zoomStep,c=tt(.01*s,-a,a);return this.zoomByFactor(1+c,o,e.ctrlPressed?"pinch-zoom":"wheel-zoom")}return(0!==i.x||0!==i.y)&&this.panByViewDelta(i,o,"wheel-pan")},i.panByViewDelta=function(e,t,n){if(!this.hasViewport()||0===e.x&&0===e.y)return!1;var i=this.containerSize();return!(i.x<=0)&&!(i.y<=0)&&(nB(this.engine,tW(e,i)),this.clampCurrentTranslation(i),this.emitChange(t,n),!0)},i.zoomByFactor=function(e,t,n){if(!this.hasViewport()||!Number.isFinite(e)||e<=0)return!1;var i=nd.getViewScale(this.engine),r=tt(i*e,this.minScale,this.maxScale);if(r===i)return!1;var o=this.containerSize();return!(o.x<=0)&&!(o.y<=0)&&(nz(this.engine,r-i,tj(t,o)),this.clampCurrentTranslation(o),this.emitChange(t,n),!0)},i.dispose=function(){for(var e,t=D(this.getListeners("change").slice());!(e=t()).done;){var n=e.value;this.off("change",n)}},i.classifyWheel=function(e){return e.ctrlPressed||e.metaPressed||this.config.scrollWheelZoom?"zoom":"pan"},i.normalizeWheel=function(e){var n=new e6,i=100*e.factor;switch(e.buttonIndex){case t.MouseButton.WheelUp:n.y=i;break;case t.MouseButton.WheelDown:n.y=-i;break;case t.MouseButton.WheelLeft:n.x=i;break;case t.MouseButton.WheelRight:n.x=-i}return!("undefined"!=typeof navigator&&/Mac|iPhone|iPad|iPod/.test(navigator.platform))&&e.shiftPressed&&0===n.x&&(n.x=n.y,n.y=0),n},i.emitChange=function(e,t){var n=this.containerSize();this.emit("change",{source:t,scale:nd.getViewScale(this.engine),translation:tQ(nd.getViewportTranslation(this.engine),n),center:e.clone()})},i.containerSize=function(){return nd.getContainerSize(this.engine.canvas.parentElement)},i.clampCurrentTranslation=function(e){var t,n,i=tQ(nd.getViewportTranslation(this.engine),e),r=this.translationBounds?nG(this.translationBounds,nd.getViewScale(this.engine),e):void 0,o=null!=(t=null==r?void 0:r.min)?t:this.minTranslation,s=null!=(n=null==r?void 0:r.max)?n:this.maxTranslation,a=new e6(tt(i.x,o.x,s.x),tt(i.y,o.y,s.y)).subtract(i);(0!==a.x||0!==a.y)&&nB(this.engine,tW(a,e))},i.clampCurrentViewport=function(){if(this.hasViewport()){var e=nd.getViewScale(this.engine),t=tt(e,this.minScale,this.maxScale);t!==e&&nz(this.engine,t-e),this.clampCurrentTranslation(this.containerSize())}},i.isTranslationRangeValid=function(e,t){return!Number.isNaN(e.x)&&!Number.isNaN(e.y)&&!Number.isNaN(t.x)&&!Number.isNaN(t.y)&&e.x<=t.x&&e.y<=t.y},i.hasViewport=function(){var e;return!!(this.engine.canvas.parentElement&&(null==(e=this.engine.sceneServer.compositions[0])?void 0:e.camera))},tB(n,[{key:"config",get:function(){return this.owner.getConfigManager().get(nx)}},{key:"engine",get:function(){return this.owner.getEngine()}},{key:"viewportRange",get:function(){var e,t,n=this.translationBounds&&this.hasViewport()?nG(this.translationBounds,nd.getViewScale(this.engine),this.containerSize()):void 0;return X({minScale:this.minScale,maxScale:this.maxScale,minTranslation:null!=(e=null==n?void 0:n.min)?e:this.minTranslation.clone(),maxTranslation:null!=(t=null==n?void 0:n.max)?t:this.maxTranslation.clone()},this.translationBounds?{translationBounds:this.translationBounds.clone()}:{})}}]),n}(t.EventEmitter);function nk(e,t,n,i){if(!t$(e)){console.warn("Item "+e.getInstanceId()+" is not a frame item.");return}var r,o,s,a=null!=(o=null==i?void 0:i.worldSize)?o:t7(e),c=null!=(s=null==i?void 0:i.localSize)?s:e.transform.size,l=0===a.x?t.x:c.x*t.x/a.x,u=0===a.y?t.y:c.y*t.y/a.y;if(e.transform.setSize(l,u),n&&(0!==n.x||0!==n.y)){var h=e.transform.position;e.setPosition(h.x+n.x,h.y+n.y,h.z)}var d=null==e?void 0:null==(r=e.children)?void 0:r[0];d&&n&&d.children.forEach(function(e){var t,i=new e3().copyFrom(null!=(t=e.transform.getParentMatrix())?t:new e3);i.setPosition(new e9);var r=n.clone().applyMatrix(i.invert()).negate();e.translate.apply(e,[].concat(r.toArray())),e.transform.updateLocalMatrix()})}var nR="sans-serif",nF="|\xc9q\xc5",nV=new Map;function nD(e,t){void 0===t&&(t=1);var n=e+"_"+t,i=nV.get(n);if(i)return i;var r=new e0((e>>16&255)/255,(e>>8&255)/255,(255&e)/255,t);return nV.set(n,r),r}var nO=null;function nY(e,t,n,i,r){if(void 0===t&&(t=14),void 0===n&&(n=nR),null!=nO||(nO=document.createElement("canvas").getContext("2d")),!nO)return{width:0,actualBoundingBoxAscent:0,actualBoundingBoxDescent:0};nO.font=(r?""+r+" ":"")+(i?""+i+" ":"")+t+"px "+n;var o,s,a=nO.measureText(e);return{width:a.width,actualBoundingBoxAscent:null!=(o=a.actualBoundingBoxAscent)?o:0,actualBoundingBoxDescent:null!=(s=a.actualBoundingBoxDescent)?s:0}}function nN(e,t,n,i,r){void 0===e&&(e=14),void 0===t&&(t=nR),void 0===r&&(r=1);var o=Number.isFinite(r)&&r>0?r:1,s=e*o,a=nY(nF+"M",s,t,n,i);return Math.ceil((a.actualBoundingBoxAscent||.8*s)+(a.actualBoundingBoxDescent||.2*s)+8*o)/o}function nH(e,t,n,i){return void 0===t&&(t=14),void 0===n&&(n=nR),nY(e,t,n,i).width}function nU(e,t,n,i){if(void 0===n&&(n=14),void 0===i&&(i=nR),nH(e,n,i)<=t)return e;for(var r,o="",s=D(e);!(r=s()).done;){var a=r.value;if(nH(o+a,n,i)>t)return o.length>2?o.slice(0,-2)+"...":"...";o+=a}return o}function nj(e,t,n,i,r){void 0===i&&(i=14),void 0===r&&(r=nR);for(var o=[],s="",a=e.split(""),c=0;c<a.length;c++){var l=a[c],u=s+l;if(nH(u,i,r)>t){if(o.push(s),o.length>=n){var h=o[n-1];o[n-1]=h.length>2?h.slice(0,-2)+"...":"...";break}s=l}else s=u;c===a.length-1&&s&&o.push(s)}return o.slice(0,n)}function nW(e,t,n,i){if(!(t.length<4))for(var r=0;r<4;r++){var o=t[r],s=t[(r+1)%4];e.drawLine(o.x,o.y,s.x,s.y,n,i)}}function nQ(e,t,n,i,r,o){if(!(t.length<4)&&!(r<=0)&&!(o<0))for(var s=r+o,a=0,c=0;c<4;c++){var l=t[c],u=t[(c+1)%4],h=u.x-l.x,d=u.y-l.y,m=Math.hypot(h,d);if(!(m<=Number.EPSILON))for(var f=0;f<m;){var p=a%s,g=0===o||p<r,v=Math.min(g?r-p:s-p,m-f);if(g&&v>Number.EPSILON){var y=f/m,x=(f+v)/m;e.drawLine(l.x+h*y,l.y+d*y,l.x+h*x,l.y+d*x,n,i)}f+=v,a+=v}}}function nK(e,t,n,i){t.isEmpty()||nW(e,tf(t),n,i)}function nZ(e,t,n){if(!t.isEmpty()){var i=t.getSize();e.fillRect(t.min.x,t.min.y,i.x,i.y,n)}}function nX(e,t,n){if(4===t.length){var i=t[0],r=t[1],o=t[2],s=t[3];e.fillTriangle(i.x,i.y,r.x,r.y,o.x,o.y,n),e.fillTriangle(i.x,i.y,o.x,o.y,s.x,s.y,n)}}function nJ(e,t,n,i,r){var o=t.clone().multiply(i),s=n.clone().multiply(r);return[e.clone().subtract(o).subtract(s),e.clone().add(o).subtract(s),e.clone().add(o).add(s),e.clone().subtract(o).add(s)]}function nq(e,t,n,i,r,o,s){var a=n.clone(),c=i.clone();n_(e,t.clone(),a,c,function(){e.fillRect(-r/2,-o/2,r,o,s)})}function n_(e,t,n,i,r){var o=e.engine.renderingServer.graphics,s=e4.fromColumnVectors(new e9(n.x,n.y,0),new e9(i.x,i.y,0),new e9(t.x,t.y,1));o.pushTransform(s),r(),o.popTransform()}function n$(e){return"resize-x"===e?"x":"resize-y"===e?"y":"both"}e.ResizeSelectionIconType=void 0,(f=e.ResizeSelectionIconType||(e.ResizeSelectionIconType={})).IMAGE="image",f.GROUP="group",f.TEXT="text",f.VIDEO="video",f.EFFECTS="effects",f.FRAME="frame",f.NULL="null";var n0=function(n){function i(t,i){var r;return void 0===i&&(i={}),(r=n.call(this,t)||this).type=e.GizmoType.RESIZE_SELECTION,r.cursorResult={type:e.GestureCursorType.NORMAL,angle:0},r.cursorPoint=new e6,r.lastPoint=new e6,r.activeType=e.TransformType.NULL,r.lastWorldPosition=new e9,r._isLockScale=!0,r.handlesActive=!1,r._ignoreInteraction=!1,r.iconTextures=new Map,r.iconTexturePromises=new Map,r.scaleEnabled=!0,r.interactionEnabled=!1!==i.interactive,r.configOff=t.getConfigManager().onChange(nI,function(e){r.onConfigChange(e)}),r.wireframe={edges:[],transform:void 0,anchor:new e6,scaleCorners:[],widthScaleAreas:[],interactive:!0,cornerEnable:!0,box:new to,totalBox:new to,childrenTransforms:[],activeType:e.TransformType.NULL,interactiveDirection:new e6,scaleCorner:new e6,scaleEdgeCorners:[]},r}G(i,n);var r=i.prototype;return r.onKeyDown=function(e){},r.onKeyUp=function(e){},r.onMouseMove=function(n){if(!this.isApplicableSelection()){this.handlesActive||this.clearHandleHover();return}if(this.handlesActive){var i=this.updateHandleDrag(n);this._owner.setCursor(this.cursorResult),i&&n.accept();return}var r=this._owner.getMousePosition();this.refreshTransformType(r),this.refreshCursorResult(this.activeType,tS(this.wireframe.interactiveDirection)),this._owner.setCursor(this.cursorResult),n.buttonMask===t.MouseButtonMask.None&&(this.activeType===e.TransformType.SCALE||this.activeType===e.TransformType.WIDTH_SCALE)&&n.accept()},r.onMouseDrag=function(e){if(this.isApplicableSelection()&&this.handlesActive){var t=this.updateHandleDrag(e);this._owner.setCursor(this.cursorResult),t&&e.accept()}},r.onMouseLeave=function(){if(!this.isApplicableSelection()){this.handlesActive||this.clearHandleHover();return}if(this.handlesActive){this._owner.setCursor(this.cursorResult);return}this.clearHandleHover()},r.onMouseDown=function(n){if(this.isApplicableSelection()&&n.buttonIndex===t.MouseButton.Left&&(this.cursorPoint=new e6(n.position.x,n.position.y),!n.doubleClick)&&(this.refreshWireframeBySelectedItems(),this.refreshTransformType(this.cursorPoint),this.refreshCursorResult(this.activeType,tS(this.wireframe.interactiveDirection)),this._owner.setCursor(this.cursorResult),this.activeType!==e.TransformType.NULL&&this.activeType!==e.TransformType.TRANSLATION)){if(this._owner.getSnapManager().reset(),this._owner.getSnapManager().enabled&&(this.activeType===e.TransformType.SCALE||this.activeType===e.TransformType.WIDTH_SCALE)){var i,r=nd.getContainerSize(this._owner.getEngine().canvas.parentElement),o=this._owner.getEngine().sceneServer.compositions[0];this._owner.getSnapManager().cacheSnapTargetsForSelection(null!=(i=null==o?void 0:o.items)?i:[],this.selectedItems,r)}this.lastPoint=new e6(n.position.x,n.position.y),this.handlesActive=!0,this.beginTransformOperation(),this._owner.emit("actionstart",{source:this,transformType:this.wireframe.activeType}),n.accept()}},r.onMouseUp=function(e){this.handlesActive&&this.finishHandleDrag(e)&&e.accept()},r.refreshCursorResult=function(t,n){switch(void 0===n&&(n=0),t){case e.TransformType.SCALE:case e.TransformType.WIDTH_SCALE:this.cursorResult={type:e.GestureCursorType.SCALE,angle:(n+Math.PI/4)*te};break;case e.TransformType.TRANSLATION:case e.TransformType.ROTATION:case e.TransformType.NULL:this.cursorResult={type:e.GestureCursorType.NORMAL,angle:0}}},r.onUpdate=function(){var e=this.wireframe.activeType;this.refreshWireframeBySelectedItems(),e!==this.wireframe.activeType&&this.refreshCursorResult(this.wireframe.activeType)},r.refreshTransformType=function(t){this.activeType=e.TransformType.NULL,this.wireframe.interactiveDirection=new e6,this.wireframe.scaleCorner=void 0,this.wireframe.scaleEdgeCorners=void 0;var n=this.computeTransformType(t);if(n!==e.TransformType.NULL){if(this.activeType=n,this.wireframe.activeType=n,n===e.TransformType.WIDTH_SCALE){var i=this.wireframe.widthScaleAreas.find(function(e){return tM(e,t)});if(i){var r=tv(i,new e6(.5,.5));this.wireframe.scaleCorner=r,this.wireframe.interactiveDirection.copyFrom(r).subtract(this.wireframe.box.getCenter())}}else if(n===e.TransformType.SCALE){var o=this.findScaleCorner(t);if(o&&(this.wireframe.scaleCorner=o.center.clone(),this.wireframe.interactiveDirection.copyFrom(o.center).subtract(this.wireframe.box.getCenter())),!this.wireframe.scaleCorner){var s=this.findScaleEdge(t,this.isSingleTextSelection());if(s){var a=s.getCenter();this.wireframe.scaleCorner=a,this.wireframe.scaleEdgeCorners=[s.start.clone(),s.end.clone()],this.wireframe.interactiveDirection.copyFrom(a).subtract(this.wireframe.box.getCenter())}}}}},r.refreshWireframeBySelectedItems=function(){var n=this,i=this.selectedItems,r=this.scaleEnabled,o=1===i.length&&i[0].type===t.spec.ItemType.text,s=this.interactionEnabled&&!this.hasLoadingSelection(i);this.iconType=1===i.length?this.getIconType(i[0]):"null";var a=new to;this.wireframe.edges=[],this.wireframe.transform=void 0,this.wireframe.scaleCorners=[],this.wireframe.widthScaleAreas=[],this.wireframe.childrenTransforms=[],this.wireframe.cornerEnable=r&&s,this.wireframe.interactive=s,s||(this.activeType=e.TransformType.NULL,this.wireframe.activeType=e.TransformType.NULL);var c=nd.getContainerSize(this._owner.getEngine().canvas.parentElement);if(i.length>1)i.forEach(function(e){if(e.isVisible){var t=t3(e,c),i=t5(e,c);t.isEmpty()||a.union(t),i&&n.wireframe.childrenTransforms.push(i)}}),l=tg(a),this.wireframe.anchor=a.getCenter(),this.wireframe.interactive=s;else if(1===i.length){var l,u,h=i[0];h.isVisible&&(l=t5(h,c),a.copyFrom(t3(h,c)),this.wireframe.anchor=o?a.getCenter():null!=(u=t8(h,c))?u:a.getCenter())}var d=a.isEmpty();this.wireframe.activeType=i.length?this.wireframe.activeType:e.TransformType.NULL,this.wireframe.box.copyFrom(a).expandByScalar(d||o?0:1),this.wireframe.totalBox.copyFrom(a).expandByScalar(d?0:16),this.wireframe.transform=l;var m=l?tx(l):void 0;if(null==m||m.forEach(function(e,t){n.wireframe.edges.push(new tl(e.clone(),m[(t+1)%4].clone()))}),1===i.length&&s){var f=this.config.scaleCircleSize;if(o){if(!m)return;var p=m[1].distance(m[2]);if(p>14){var g=this.boxLocalAxes(),v=g.xAxis,y=g.yAxis,x=p/2-7,w=function(e){return tp(nJ(e,v,y,4,x))},A=[w(new tl(m[1],m[2]).at(.5)),w(new tl(m[3],m[0]).at(.5))];this.wireframe.widthScaleAreas=A.filter(function(e){return!!e})}}null==m||m.forEach(function(e){n.wireframe.scaleCorners.push(new ts(e,f))})}},r.initInteractionPlane=function(t){var n=this.selectedItems;switch(this.wireframe.activeType){case e.TransformType.SCALE:var i=n[0];if(!i){this.resizeSession=void 0;break}var r=this.wireframe,o=r.scaleCorner,s=r.scaleEdgeCorners,a=t9(i),c=new e9().copyFrom(i.transform.anchor).applyMatrix(a.matrix);if(this.interactionPlane=t_(a.position,a.rotation),(null==s?void 0:s.length)===2){var l=new tl(s[0],s[1]).getCenter(),u=this.oppositeScaleEdgeCenter(s);this.resizeSession=u?this.createAnchoredResizeSession(i,a.matrix,c,t,l,u,"edge"):void 0}else if(o){var h=this.oppositeScaleCorner(o);this.resizeSession=h?this.createAnchoredResizeSession(i,a.matrix,c,t,o,h,"corner"):void 0}else this.resizeSession=void 0;break;case e.TransformType.TRANSLATION:this.interactionPlane=t_(new e9,new e1(0,0,0,e2.XYZ));break;case e.TransformType.WIDTH_SCALE:var d=n[0],m=t9(d),f=new e9().copyFrom(d.transform.anchor).applyMatrix(m.matrix),p=this.draggedWidthEdge(this.wireframe.box.getCenter(),this.wireframe.interactiveDirection);this.interactionPlane=t_(m.position,m.rotation);var g=p?this.oppositeScaleEdgeCenter([p.start,p.end]):void 0;this.resizeSession=p&&g?this.createAnchoredResizeSession(d,m.matrix,f,t,p.getCenter(),g,"edge","width"):void 0}},r.draw=function(e){if(!this.wireframe.box.isEmpty()&&"move"!==this._owner.getSelectionTransformKind()){var n=this.config,i=n.wireframeAlpha,r=n.wireframeColor,o=n.wireframeWidth,s=n.cornerFillColor,a=n.cornerLineWidth,c=n.cornerLineColor,l=n.cornerLineAlpha,u=n.infoShowEnabled,h=n.sizeTextColor,d=n.nameTextColor,m=nD(r,i);if(this.wireframe.edges.forEach(function(t){e.drawLine(t.start.x,t.start.y,t.end.x,t.end.y,m,o)}),this.wireframe.childrenTransforms.forEach(function(t){nW(e,tx(t),m,o)}),this.wireframe.cornerEnable){var f=nD(s,1),p=nD(c,l),g=this.boxLocalAxes(),v=g.xAxis,y=g.yAxis;this.wireframe.scaleCorners.forEach(function(t){var n=t.radius;nq(e,t.center,v,y,2*n,2*n,f),nW(e,nJ(t.center,v,y,n,n),p,a)})}var x=1===this.selectedItems.length&&this.selectedItems[0].type===t.spec.ItemType.text;1===this.selectedItems.length&&u&&!x&&this.renderItemInfo(e,h,d)}},r.dispose=function(){null==this.configOff||this.configOff.call(this),this.configOff=void 0,n.prototype.dispose.call(this)},r.isApplicableSelection=function(){var e=this.selectedItems;return e.length>=1&&!this.hasLoadingSelection(e)},r.hasLoadingSelection=function(e){void 0===e&&(e=this.selectedItems);var t=this._owner.getLoadingManager();return e.some(function(e){return void 0!==t.get(e.getInstanceId())})},r.clearHandleHover=function(){this.activeType=e.TransformType.NULL,this.wireframe.activeType=e.TransformType.NULL,this.wireframe.interactiveDirection=new e6,this.wireframe.scaleCorner=void 0,this.wireframe.scaleEdgeCorners=void 0,this.refreshCursorResult(e.TransformType.NULL),this._owner.setCursor(this.cursorResult)},r.updateHandleDrag=function(t){if(!this.handlesActive)return!1;var n=new e6(t.position.x,t.position.y),i=new e6().subtractVectors(n,this.lastPoint);if(!this.wireframe.interactive||0>=i.length())return!0;this._owner.setSelectionTransformKind("resize");var r=this.wireframe,o=r.activeType,s=r.interactiveDirection,a=0;switch(o){case e.TransformType.SCALE:a=this.handleScale(i,s,t);break;case e.TransformType.WIDTH_SCALE:a=this.handleWidthScale(i,s,t)}return this.refreshCursorResult(o,a),this.lastPoint.copyFrom(n),this._owner.emit("actionupdate",{source:this,transformType:this.wireframe.activeType}),!0},r.beginTransformOperation=function(){var e,t=this.cursorPoint.clone();this.initInteractionPlane(t),this.lastWorldPosition=null!=(e=tK(t,nd.getCameraInfo(this._owner.getEngine()),this.interactionPlane,nd.getContainerSize(this._owner.getEngine().canvas.parentElement)))?e:new e9},r.resetTransformOperation=function(){"resize"===this._owner.getSelectionTransformKind()&&this._owner.setSelectionTransformKind("idle"),this.handlesActive=!1,this._owner.getSnapManager().reset(),this.resizeSession=void 0,this.lastPoint=new e6,this.cursorPoint=new e6},r.finishHandleDrag=function(t){var n=new e6(t.position.x,t.position.y),i=new e6().subtractVectors(n,this.lastPoint);this.cursorPoint.add(i),this.wireframe.activeType===e.TransformType.SCALE&&t0(this.selectedItems[0])&&this._owner.emit("framerefreshchildren",{source:this,frameId:this.selectedItems[0].getInstanceId()}),this.refreshAfterPointerUp(t);var r=this.wireframe.activeType;return this.resetTransformOperation(),this._owner.emit("actioncommit",{source:this,transformType:r}),!0},r.refreshAfterPointerUp=function(e){this.refreshTransformType(this.cursorPoint);var t=this.wireframe,n=t.activeType,i=t.interactiveDirection;this.refreshCursorResult(n,tS(i)),this._owner.setCursor(this.cursorResult)},r.getIconType=function(e){if(t$(e))return"frame";if(t0(e))return"effects";if(t4(e))return"group";if(t1(e))return t2(e)?"video":"image";switch(e.type){case t.spec.ItemType.video:return"video";case t.spec.ItemType.text:return"text";default:return"image"}},r.getItemInfoName=function(e){return"生成器"!==e.name?e.name:t2(e)?"视频生成器":"图片生成器"},r.boxLocalAxes=function(){var e=this.wireframe.transform?tx(this.wireframe.transform):void 0;if(!(null==e?void 0:e.length))return{xAxis:new e6(1,0),yAxis:new e6(0,1)};var t=new e6().subtractVectors(e[1],e[0]),n=new e6().subtractVectors(e[3],e[0]);return{xAxis:t.length()>0?t.normalize():new e6(1,0),yAxis:n.length()>0?n.normalize():new e6(0,1)}},r.draggedWidthEdge=function(e,t){var n=this.wireframe.transform?tx(this.wireframe.transform):void 0;if(null==n?void 0:n.length){var i=new tl(n[1],n[2]),r=new tl(n[3],n[0]);return new e6().subtractVectors(i.getCenter(),e).dot(t)>=new e6().subtractVectors(r.getCenter(),e).dot(t)?i:r}},r.isSingleTextSelection=function(){return 1===this.selectedItems.length&&this.selectedItems[0].type===t.spec.ItemType.text},r.findScaleEdge=function(e,t){if(void 0===t&&(t=!1),this.scaleEnabled&&1===this.selectedItems.length){for(var n=0;n<this.wireframe.edges.length;n++)if(!t||n%2!=1){var i=this.wireframe.edges[n];if(i.closestPointToPoint(e,!0).distance(e)<=this.config.scaleCircleSize)return i}}},r.findScaleCorner=function(e){if(this.wireframe.scaleCorners.length){var t=this.boxLocalAxes(),n=t.xAxis,i=t.yAxis;return this.wireframe.scaleCorners.find(function(t){var r=new e6().subtractVectors(e,t.center);return 7>=Math.abs(r.dot(n))&&7>=Math.abs(r.dot(i))})}},r.oppositeScaleEdgeCenter=function(e){var t=this.wireframe.edges;if(2===e.length&&4===t.length){var n=new tl(e[0],e[1]),i=new tl(e[1],e[0]),r=t.findIndex(function(e){return e.equals(n)||e.equals(i)});if(!(r<0))return t[(r+2)%t.length].getCenter()}},r.oppositeScaleCorner=function(e){var t=this.wireframe.transform?tx(this.wireframe.transform):void 0;if(null==t?void 0:t.length){var n=t.findIndex(function(t){return t.equals(e)});return n<0?void 0:t[(n+2)%t.length].clone()}},r.createAnchoredResizeSession=function(e,n,i,r,o,s,a,c){void 0===c&&(c="font");var l,u,h=nd.getCameraInfo(this._owner.getEngine()),d=nd.getContainerSize(this._owner.getEngine().canvas.parentElement),m=tK(o,h,this.interactionPlane,d),f=tK(s,h,this.interactionPlane,d);if(m&&f){var p=new e3().copyFrom(null!=(l=e.transform.getParentMatrix())?l:new e3);p.setPosition(new e9).invert();var g=e.type===t.spec.ItemType.text?e.getComponent(t.TextComponent):void 0,v=t$(e),y=g||v?m.clone().add(f).multiply(.5):i.clone(),x=g?{component:g,mode:c,fontSize:g.textStyle.fontSize,fontOffset:g.textStyle.fontOffset,lineHeight:g.textLayout.lineHeight,width:g.textLayout.width,height:g.textLayout.height}:void 0;return{item:e,handleKind:a,geometry:{initialHandle:m,fixedPoint:f,resizeOrigin:y,worldToLocalRotation:new e3().extractRotation(n).invert()},initialHandleView:o,fixedPointView:s,pointerToHandleView:r.clone().subtract(o),initialPosition:new e9().copyFrom(e.transform.position),initialScale:new e9().copyFrom(e.transform.scale),parentWorldToLocal:p,initialWorldSize:v?t7(e):void 0,initialLocalSize:v?new e6().copyFrom(e.transform.size):void 0,text:x,frameAppliedTranslation:new e9,resizeBehavior:null!=(u=null==this.config.resolveResizeBehavior?void 0:this.config.resolveResizeBehavior.call(this.config,e.getInstanceId()))?u:"scale",externalTranslation:new e9}}},r.getIconUrl=function(e){return({null:"",image:this.config.imageLogoUrl,group:this.config.groupLogoUrl,text:this.config.textLogoUrl,video:this.config.videoLogoUrl,frame:this.config.frameLogoUrl,effects:this.config.effectsLogoUrl})[e]},r.refreshIconSprites=function(e,t){for(var n,i=D([{type:"image",key:"imageLogoUrl"},{type:"group",key:"groupLogoUrl"},{type:"text",key:"textLogoUrl"},{type:"video",key:"videoLogoUrl"},{type:"frame",key:"frameLogoUrl"},{type:"effects",key:"effectsLogoUrl"}]);!(n=i()).done;){var r=n.value,o=r.type,s=r.key;if(e[s]!==t[s]){var a=this.iconTextures.get(o);a&&!a.isDestroyed&&a.offloadData(),this.iconTextures.delete(o),this.iconTexturePromises.delete(o)}}},r.onConfigChange=function(e){this.refreshIconSprites(e.previous,e.current)},r.getIconTexture=function(e,n){var i=this;if("null"!==e){var r=this.iconTextures.get(e);if(r&&!r.isDestroyed)return r;if(!this.iconTexturePromises.has(e)){var o=this.getIconUrl(e);if(!o)return;var s=t.Texture.fromImage(o,n).then(function(t){return i.iconTextures.set(e,t),t});this.iconTexturePromises.set(e,s)}}},r.renderItemInfo=function(e,t,n){var i=this.selectedItems[0],r=this.getItemInfoName(i),o=this.wireframe.transform?tx(this.wireframe.transform):tf(this.wireframe.box),s=Math.round(o[0].distance(o[1])/this.viewScale*this.config.contentRatio/this.config.pixelRatio),a=Math.round(o[1].distance(o[2])/this.viewScale*this.config.contentRatio/this.config.pixelRatio),c=this.getIconTexture(this.iconType,e.engine),l=o[0].clone(),u=new e6;o.forEach(function(e){e.y<l.y&&l.copyFrom(e)});var h=!1;o.forEach(function(e){!e.equals(l)&&(h?e.y-l.y<=u.y-l.y&&u.copyFrom(e):(u.copyFrom(e),h=!0))});var d=l.x<u.x?l:u,m=l.x>u.x?l:u,f=new e6().subtractVectors(m,d).angle(),p=d.distance(m),g=[s,a].map(function(e){return td(e,0)}).join(" * "),v=nH(g);p<2*v&&(g="");var y=" "+r;20+nH(y)+v>p&&(p<2*v?(g="",y=nU(y,p-20)):y=nU(y,p-20-v-5));var x=Math.cos(f),w=Math.sin(f),A=new e6(x,w),M=new e6(-w,x),I=-1-nN(14,nR,void 0,void 0,e.engine.displayServer.pixelRatio);if(c&&!c.isDestroyed&&n_(e,d.clone().subtract(M.clone().multiply(20.5)),A,M,function(){e.drawTexture(0,0,15,15,c)}),g){var C=m.clone(),S=nH(g);n_(e,C,A,M,function(){e.drawText(-S,I,g,14,nD(t,1),nR)})}y&&n_(e,d.clone().add(A.clone().multiply(20)),A,M,function(){e.drawText(0,I,y,14,nD(n,1),nR)})},r.computeTransformType=function(t){if(!this.wireframe.interactive||!this.wireframe.totalBox.containsPoint(t))return e.TransformType.NULL;if(this.scaleEnabled&&this.findScaleCorner(t))return e.TransformType.SCALE;for(var n,i=D(this.wireframe.widthScaleAreas);!(n=i()).done;)if(tM(n.value,t))return e.TransformType.WIDTH_SCALE;return this.scaleEnabled&&this.findScaleEdge(t,this.isSingleTextSelection())?e.TransformType.SCALE:this.wireframe.transform&&tM(this.wireframe.transform,t)?e.TransformType.TRANSLATION:e.TransformType.NULL},r.handleScale=function(e,t,n){var i=this.cursorPoint.add(e).clone();return this.handleAnchoredResize(i,t,n)},r.handleAnchoredResize=function(e,t,n){var i,r=this.resizeSession;if(!r)return tS(t);var o=e.clone().subtract(r.pointerToHandleView),s=this.snapHandlePoint(o),a=s;if("edge"===r.handleKind){var c=new e6().subtractVectors(r.initialHandleView,r.fixedPointView),l=c.length();if(tn(l,0))return tS(t);c.divide(l);var u=new e6().subtractVectors(s,r.fixedPointView).dot(c);a=r.fixedPointView.clone().add(c.multiply(u))}var h=new e6().subtractVectors(a,r.fixedPointView),d=tn(h.length(),0)?t:h,m=tK(a,nd.getCameraInfo(this._owner.getEngine()),this.interactionPlane,nd.getContainerSize(this._owner.getEngine().canvas.parentElement));if(!m)return tS(d);var f=null!=(i=r.resizeBehavior)?i:"scale",p=n$(f),g=t$(r.item)||"resize"===f?!n.shiftPressed:n.shiftPressed,v=r.text?"font"===r.text.mode:"both"===p&&this.isLockScale&&!g,y=function(e,t,n){var i,r=e.initialHandle,o=e.fixedPoint,s=e.resizeOrigin,a=e.worldToLocalRotation,c=n.handleKind,l=n.lockAspectRatio,u=n.lockedAxis,h=new e9().subtractVectors(r,o).applyMatrix(a),d=new e9().subtractVectors(t,o).applyMatrix(a);if("edge"===c){var m=Math.abs(h.x)>=Math.abs(h.y)?0:1,f=h.toArray()[m],p=d.toArray()[m],g=tn(f,0)?1:p/f;i=l?0===m?new e9(g,Math.abs(g),Math.abs(g)):new e9(Math.abs(g),g,Math.abs(g)):0===m?new e9(g,1,1):new e9(1,g,1)}else{var v=tn(h.x,0)?1:d.x/h.x,y=tn(h.y,0)?1:d.y/h.y;i=new e9(v,y,1),l&&(Math.abs(v)>Math.abs(y)?i.y=Math.abs(v)*(y<0?-1:1):i.x=Math.abs(y)*(v<0?-1:1),i.z=Math.max(Math.abs(i.x),Math.abs(i.y)))}"x"===u?i.x=1:"y"===u&&(i.y=1);var x=new e9().subtractVectors(o,s).applyMatrix(a).multiply(i),w=s.clone().add(x.applyMatrix(a.clone().invert()));return{totalScalar:i,totalTranslation:o.clone().subtract(w)}}(r.geometry,m,{handleKind:r.handleKind,lockAspectRatio:v,lockedAxis:"x"===p?"y":"y"===p?"x":void 0});return this.applyAnchoredResize(r,y),this.lastWorldPosition.copyFrom(m),tS(d)},r.applyAnchoredResize=function(e,t){var n=e.item,i=e.initialScale,r=e.initialWorldSize,o=e.initialLocalSize,s=e.text;if(s){if("width"===s.mode){var a=t.totalScalar.x,c=s.width*Math.abs(a);s.component.setTextWidth(c);var l=s.component.getLineCount(s.component.text);s.component.setTextHeight(Math.ceil(s.lineHeight*l));var u=s.width+s.fontOffset,h=c+s.fontOffset,d=tn(u,0)?Math.abs(a):h/u,m=tn(d,0)?0:Math.abs(a)/d;n.transform.setScale(i.x*m,i.y,i.z),this.setResizePosition(e,t.totalTranslation);var f=this._owner.getEngine().sceneServer.compositions[0];null==f||f.gotoAndStop(f.time);return}var p=Math.max(Math.abs(t.totalScalar.x),Math.abs(t.totalScalar.y)),g=Math.max(p,1/s.fontSize),v=Math.max(0,(s.width+s.fontOffset)*g-s.fontOffset),y=s.height*g;s.component.setFontSize(s.fontSize*g),s.component.setLineHeight(s.lineHeight*g),s.component.setTextWidth(v),s.component.setTextHeight(y);var x=p/g;n.transform.setScale(i.x*x,i.y*x,i.z),this.setResizePosition(e,t.totalTranslation);var w=this._owner.getEngine().sceneServer.compositions[0];null==w||w.gotoAndStop(w.time);return}if(t$(n)&&r&&o){var A=t.totalTranslation.clone().subtract(e.frameAppliedTranslation);nk(n,new e6(r.x*t.totalScalar.x,r.y*t.totalScalar.y),A,{localSize:o,worldSize:r}),e.frameAppliedTranslation.copyFrom(t.totalTranslation);return}n.transform.setScale(i.x*t.totalScalar.x,i.y*t.totalScalar.y,i.z*t.totalScalar.z),this.setResizePosition(e,t.totalTranslation)},r.setResizePosition=function(e,t){var n,i,r,o=t.clone().applyMatrix(e.parentWorldToLocal),s=n$(null!=(i=e.resizeBehavior)?i:"scale"),a=null!=(r=e.externalTranslation)?r:e.externalTranslation=new e9;"both"!==s&&e.lastAppliedPosition&&a.add(new e9().subtractVectors(e.item.transform.position,e.lastAppliedPosition));var c=e.initialPosition.clone().add(o).add(a);(n=e.item.transform).setPosition.apply(n,[].concat(c.toArray())),e.lastAppliedPosition=c},r.handleWidthScale=function(e,t,n){var i=this.cursorPoint.add(e).clone();return this.handleAnchoredResize(i,t,n)},r.snapHandlePoint=function(e){var t,n,i=this._owner.getSnapManager();return(i.clearSnappingVisualizations(),i.enabled)?(i.preparePoint(new e6,e),e.clone().subtract(new e6(null!=(t=i.result.x)?t:0,null!=(n=i.result.y)?n:0))):e},tB(i,[{key:"selectedItems",get:function(){return this._owner.getSelection().getSelectedPlayerItems()}},{key:"config",get:function(){return this._owner.getConfigManager().get(nI)}},{key:"isLockScale",get:function(){return this._isLockScale},set:function(e){e!==this.isLockScale&&(this._isLockScale=e)}},{key:"viewScale",get:function(){var e=this._owner.getEngine().sceneServer.compositions[0].camera.getViewportMatrix(),t=new e9;return e.decompose(new e9,new e5,t),e.elements[0]}},{key:"ignoreInteraction",get:function(){return this._ignoreInteraction},set:function(e){e!==this._ignoreInteraction&&(this._ignoreInteraction=e,this.wireframe.cornerEnable=e)}}]),i}(tY),n1=function(n){function i(t,i){var r;return(r=n.call(this,t)||this).resizeSelection=i,r.type=e.GizmoType.CORNER_ROTATION,r.cursorResult={type:e.GestureCursorType.NORMAL,angle:0},r.cursorPoint=new e6,r.lastPoint=new e6,r.rotationAngle=0,r.rotationActive=!1,r.anchor=new e6,r.interactiveDirection=new e6,r.rawRotationAngle=0,r.initialSelectionAngle=0,r.rotationItems=[],r}G(i,n);var r=i.prototype;return r.onMouseMove=function(e){if(this.rotationActive){var n=this.updateRotationDrag(e);this._owner.setCursor(this.cursorResult),n&&e.accept();return}if(!this.isApplicableSelection()){this.clearHover();return}var i=this.refreshHover(this._owner.getMousePosition());e.buttonMask===t.MouseButtonMask.None&&i&&e.accept()},r.onMouseDrag=function(e){if(this.rotationActive){var t=this.updateRotationDrag(e);this._owner.setCursor(this.cursorResult),t&&e.accept()}},r.onMouseDown=function(n){if(this.isApplicableSelection()&&n.buttonIndex===t.MouseButton.Left&&!n.doubleClick){this.resizeSelection.refreshWireframeBySelectedItems();var i=new e6(n.position.x,n.position.y),r=this.refreshHover(i);r&&(this.cursorPoint.copyFrom(i),this.lastPoint.copyFrom(n.position),this.rotationAngle=0,this.rawRotationAngle=0,this.anchor.copyFrom(this.resizeSelection.wireframe.anchor),this.interactiveDirection.copyFrom(r.direction),this.rotationItems=[].concat(this.selectedItems),this.initialSelectionAngle=this.resolveInitialSelectionAngle(),this.rotationActive=!0,this._owner.emit("actionstart",{source:this,transformType:e.TransformType.ROTATION,itemIds:this.rotationItems.map(function(e){return e.getInstanceId()})}),n.accept())}},r.onMouseUp=function(t){if(this.rotationActive){var n=new e6(t.position.x,t.position.y);this.cursorPoint.add(new e6().subtractVectors(n,this.lastPoint)),this.resetOperation(),this._owner.emit("actioncommit",{source:this,transformType:e.TransformType.ROTATION}),this.resizeSelection.refreshWireframeBySelectedItems(),this.refreshHover(this._owner.getMousePosition()),t.accept()}},r.onMouseLeave=function(){if(this.rotationActive){this._owner.setCursor(this.cursorResult);return}this.clearHover()},r.isApplicableSelection=function(){var e=this.selectedItems,t=this._owner.getLoadingManager();return e.length>=1&&e.every(function(e){return void 0===t.get(e.getInstanceId())})},r.updateRotationDrag=function(e){if(!this.rotationActive)return!1;var t=new e6(e.position.x,e.position.y),n=new e6().subtractVectors(t,this.lastPoint);if(!this.resizeSelection.wireframe.interactive)return!0;if(n.length()>0){this._owner.setSelectionTransformKind("resize");var i=new e6().subtractVectors(this.cursorPoint,this.anchor);this.cursorPoint.add(n);var r=tT(i,new e6().subtractVectors(this.cursorPoint,this.anchor))*te;Number.isFinite(r)&&(this.rawRotationAngle+=r),this.lastPoint.copyFrom(t)}return this.applyRotation(e),!0},r.applyRotation=function(t){var n=td(t.shiftPressed?15*Math.round((this.initialSelectionAngle+this.rawRotationAngle)/15)-this.initialSelectionAngle:this.rawRotationAngle,3),i=td(n-this.rotationAngle,3);if(this.setRotationCursor(tS(this.interactiveDirection)+n*e7),0!==i){this._owner.setSelectionTransformKind("resize");var r=new e9(0,0,i);this.rotationItems.forEach(function(e){e.rotate.apply(e,[].concat(r.toArray()))}),this.rotationAngle=n,this._owner.emit("actionupdate",{source:this,transformType:e.TransformType.ROTATION})}},r.resetOperation=function(){"resize"===this._owner.getSelectionTransformKind()&&this._owner.setSelectionTransformKind("idle"),this.rotationActive=!1,this.rotationAngle=0,this.lastPoint.set(0,0),this.cursorPoint.set(0,0),this.anchor.set(0,0),this.interactiveDirection.set(0,0),this.rawRotationAngle=0,this.initialSelectionAngle=0,this.rotationItems=[]},r.findRotationHit=function(e){var t=this.resizeSelection.wireframe;if(t.interactive&&t.totalBox.containsPoint(e)&&t.scaleCorners.length)for(var n,i=this.boxLocalAxes(),r=i.xAxis,o=i.yAxis,s=t.box.getCenter(),a=this.resizeSelection.config.rotationCircleSize,c=D(t.scaleCorners);!(n=c()).done;){var l=n.value,u=new e6().subtractVectors(e,l.center);if(!(7>=Math.abs(u.dot(r))&&7>=Math.abs(u.dot(o)))){var h=new e6().subtractVectors(l.center,s),d=h.dot(r)>=0?1:-1,m=h.dot(o)>=0?1:-1,f=l.center.clone().add(r.clone().multiply(d*a)).add(o.clone().multiply(m*a)),p=new e6().subtractVectors(e,f);if(Math.abs(p.dot(r))<=a&&Math.abs(p.dot(o))<=a)return{direction:h}}}},r.boxLocalAxes=function(){var e=this.resizeSelection.wireframe.transform,t=e?tx(e):void 0;if(!(null==t?void 0:t.length))return{xAxis:new e6(1,0),yAxis:new e6(0,1)};var n=new e6().subtractVectors(t[1],t[0]),i=new e6().subtractVectors(t[3],t[0]);return{xAxis:n.length()>0?n.normalize():new e6(1,0),yAxis:i.length()>0?i.normalize():new e6(0,1)}},r.resolveInitialSelectionAngle=function(){if(0===this.rotationItems.length)return 0;var e=this.rotationItems.map(function(e){return td(t9(e).rotation.z,3)}),t=e[0];return Number.isFinite(t)&&e.every(function(e){return e===t})?t:0},r.refreshHover=function(e){var t=this.findRotationHit(e);if(!t){this.clearHover();return}return this.interactiveDirection.copyFrom(t.direction),this.setRotationCursor(tS(t.direction)),t},r.setRotationCursor=function(t){this.cursorResult={type:e.GestureCursorType.ROTATION,angle:(t+Math.PI/4)*te},this._owner.setCursor(this.cursorResult)},r.clearHover=function(){this.interactiveDirection.set(0,0),this.cursorResult={type:e.GestureCursorType.NORMAL,angle:0},this._owner.setCursor(this.cursorResult)},tB(i,[{key:"selectedItems",get:function(){return this._owner.getSelection().getSelectedPlayerItems()}}]),i}(tY),n2=function(e){function n(){var t;return t=e.apply(this,arguments)||this,t.type="leave-effects-edit",t}return G(n,e),n.prototype.onMouseDown=function(e){if(e.buttonIndex===t.MouseButton.Left){var n=new e6(e.position.x,e.position.y),i=this._owner.getSelection();i.hitTest(n).length>0||i.isPointInEffectsEditScope(n)||(this._owner.resetEditMode(),e.accept())}},n}(tY),n4=function(e){function n(t,n){var i;return void 0===n&&(n=!0),(i=e.call(this,t)||this).deferToHitTarget=n,i.type="box-selection",i.overlay={type:"none",box:new to},i.cursorPoint=new e6,i.startPoint=new e6,i.isBoxSelecting=!1,i.mouseGrabbed=!1,i}G(n,e);var i=n.prototype;return i.onMouseMove=function(e){},i.onMouseDrag=function(e){this.mouseGrabbed&&(this.isBoxSelecting?this.updateGrab(e):e.accept())},i.onMouseDown=function(e){if(e.buttonIndex===t.MouseButton.Left){var n=this.selection.filterSelectedItems(this.selection.hitTest(new e6(e.position.x,e.position.y)));this.deferToHitTarget&&n.length>0||(e.shiftPressed||this.selection.commitSelectedItems([]),this.startPoint.copyFrom(e.position),this.cursorPoint.set(e.position.x,e.position.y),this.isBoxSelecting=!0,this.mouseGrabbed=!0,this._owner.emit("actionstart",{source:this,selectedIds:[].concat(this.selection.getSelectedIds())}),e.accept())}},i.onMouseUp=function(e){if(this.mouseGrabbed){var t=this.isBoxSelecting;this.mouseGrabbed=!1,this.isBoxSelecting=!1,this.overlay.type="none",this.emitMouseUpIfChanged(t),e.accept()}},i.draw=function(e){var t=this.config;this.isBoxSelecting&&"region"===this.overlay.type&&!this.overlay.box.isEmpty()&&(nK(e,this.overlay.box,nD(t.regionWireframeColor,t.regionWireframeAlpha),t.regionWireframeWidth),nZ(e,this.overlay.box,nD(t.regionBoxColor,t.regionBoxAlpha)))},i.updateGrab=function(e){if(this.isBoxSelecting){var n=new e6().addVectors(this.cursorPoint,new e6().subtractVectors(new e6(e.position.x,e.position.y),this.startPoint)),i=new e6().subtractVectors(this.cursorPoint,n),r=new e6().addVectors(this.cursorPoint,n).multiply(.5);i.x=Math.abs(i.x),i.y=Math.abs(i.y);var o=new to().setFromCenterAndSize(r,i);this.overlay.type="region",this.overlay.box=o;var s=[];if(i.length()>0){var a=this._owner.getEngine().sceneServer.compositions[0],c=new Map;if(a)for(var l,u=D(a.items);!(l=u()).done;){var h=l.value;if(ne(h)){var d=this.selection.resolveMarqueeSelectableItem(h);d&&c.set(d.getInstanceId(),d)}}for(var m,f=nd.getContainerSize(this._owner.getEngine().canvas.parentElement),p=new Map,g=new Set,v=D(c.values());!(m=v()).done;){var y=m.value;if(!(this.selection.ignoreIds.includes(y.getInstanceId())||this.selection.ignoreNames.includes(y.name))&&y.type!==t.spec.ItemType.composition){var x=y.getInstanceId(),w=t5(y,f);p.set(x,w),w&&t$(y)&&tx(w).every(function(e){return o.containsPoint(e)})&&g.add(x)}}for(var A,M=D(c.values());!(A=M()).done;){var I=A.value,C=I.getInstanceId(),S=p.get(C);if(S){var T=nn(I);if(!T.some(function(e){return g.has(e.getInstanceId())})){if(t$(I)){g.has(C)&&s.push(C);continue}tA(S,o)&&T.every(function(e){var t=p.get(e.getInstanceId());return!!t&&tA(t,o)})&&s.push(C)}}}}var b=this.selection.filterSelectedItems(s),E=e.shiftPressed?Array.from(new Set([].concat(this.selection.interactionStartSelectedIds,b))):b;this.selection.commitSelectedItems(E),e.accept()}},i.emitMouseUpIfChanged=function(e){void 0===e&&(e=!1),!e&&this.sameIds(this.selection.getSelectedIds(),this.selection.interactionStartSelectedIds)||this._owner.emit("actioncommit",{source:this,selectedIds:[].concat(this.selection.getSelectedIds()),oldSelectedIds:[].concat(this.selection.interactionStartSelectedIds)})},i.sameIds=function(e,t){return e.length===t.length&&e.every(function(e,n){return e===t[n]})},tB(n,[{key:"config",get:function(){return this._owner.getConfigManager().get(nA)}},{key:"selection",get:function(){return this._owner.getSelection()}}]),n}(tY),n3=function(e){function n(){var t;return t=e.apply(this,arguments)||this,t.type="change-selection",t}G(n,e);var i=n.prototype;return i.onMouseMove=function(e){var t=this._owner.getSelection();t.commitHoverTarget(new e6(e.position.x,e.position.y)),this.hoverItemId=t.preSelectedId,e.accept()},i.onMouseDrag=function(e){},i.onMouseDown=function(e){if(this._owner.getSelection().setHoverOverlayTarget(this.hoverItemId),e.buttonIndex===t.MouseButton.Right){var n=[].concat(this._owner.getSelection().getSelectedIds());if(this.resolveContextSelection(e)){var i=[].concat(this._owner.getSelection().getSelectedIds());this._owner.emit("actionstart",{source:this,selectedIds:i}),this._owner.emit("actioncommit",{source:this,selectedIds:i,oldSelectedIds:n})}return}if(e.buttonIndex===t.MouseButton.Left){var r=this._owner.getSelection(),o=new e6(e.position.x,e.position.y),s=r.createHitSnapshot(o),a=[].concat(r.getSelectedIds());r.interactionStartSelectedIds=[].concat(a);var c={initialSelectedIds:a,pressHit:s,pressTarget:s.topmostId,mode:"none",shiftKey:e.shiftPressed},l=this.resolvePressSelection(e,c);l&&(c.mode="immediate",r.commitSelectedItems(l)),this.session=c,this._owner.emit("actionstart",{source:this,selectedIds:[].concat(this._owner.getSelection().getSelectedIds())}),e.accept()}},i.onMouseUp=function(e){var t=this.session,n=this._owner.getSelection();if(e.isCanceled()){this.resetSession(),t&&e.accept();return}if(t){e.accept();var i=new e6(e.position.x,e.position.y);if("deferred"===t.mode&&t.deferredTarget){var r=n.createHitSnapshot(i);nr(this._owner.getEngine().sceneServer.compositions[0],t.deferredTarget)&&r.topmostId===t.deferredTarget&&n.commitSelectedItems([t.deferredTarget])}else if("none"===t.mode&&!t.shiftKey&&t.pressHit.drillTargetId&&t.pressHit.drillTargetId!==t.pressTarget){var o=n.createHitSnapshot(i),s=t.pressHit.drillTargetId;nr(this._owner.getEngine().sceneServer.compositions[0],s)&&o.drillTargetId===s&&n.commitSelectedItems([s])}else!t.pressTarget&&!t.shiftKey&&n.getFocusedGroupId()&&!n.isPointInFocusedGroup(i)&&n.setFocusedGroup(null);this.resetSession(),this._owner.emit("actioncommit",{source:this,selectedIds:[].concat(this._owner.getSelection().getSelectedIds()),oldSelectedIds:t.initialSelectedIds})}},i.dispose=function(){this.hoverItemId=void 0,this.resetSession(),e.prototype.dispose.call(this)},i.resolvePressSelection=function(e,t){var n=this._owner.getSelection(),i=t.initialSelectedIds,r=t.pressTarget;if(e.doubleClick&&!e.shiftPressed&&t.pressHit.drillTargetId)return[t.pressHit.drillTargetId];if(e.shiftPressed){if(!r)return;return i.includes(r)?i.filter(function(e){return e!==r}):[].concat(i,[r])}if(!r)return this._owner.getSelection().isPointInSelectedViewBox(t.pressHit.point)?void 0:[];if(t.pressHit.selectedScopeHitIds.includes(r)||t.pressHit.selectedScopeHitIds.length>0){n.isItemSelected(r)||(t.mode="deferred",t.deferredTarget=r);return}return[r]},i.resolveContextSelection=function(e){var t=this,n=this._owner.getSelection(),i=n.createHitSnapshot(new e6(e.position.x,e.position.y)).topmostId,r=[].concat(n.getSelectedIds()),o=new Set([].concat(r,r.flatMap(function(e){var n=nr(t._owner.getEngine().sceneServer.compositions[0],e);return n?ni(n).map(function(e){return e.getInstanceId()}):[]})));return!!i&&!o.has(i)&&n.commitSelectedItems(e.shiftPressed?[].concat(r,[i]):[i])},i.resetSession=function(){this.session=void 0},n}(tY);function n5(e){var n=new t.InputEventMouseButton;return n.device=e.device,n.pressed=e.pressed,n.canceled=e.isCanceled(),n.commandOrControlAutoremap=e.commandOrControlAutoremap,n.shiftPressed=e.shiftPressed,n.altPressed=e.altPressed,n.metaPressed=e.metaPressed,n.ctrlPressed=e.ctrlPressed,n.buttonMask=e.buttonMask,n.position.copyFrom(e.position),n.globalPosition.copyFrom(e.globalPosition),n.factor=e.factor,n.buttonIndex=e.buttonIndex,n.doubleClick=e.doubleClick,n}var n8=function(e){function t(t,n){var i;return(i=e.call(this,t)||this).type="click-drag-multiplex",i.clickCandidateList=[].concat(n.clickCandidates),i.dragCandidateList=[].concat(n.dragCandidates),i.auxiliaryBehaviorGizmo=n.auxiliaryBehavior,i}G(t,e);var n=t.prototype;return n.clickCandidates=function(){return this.clickCandidateList},n.dragCandidates=function(){return this.dragCandidateList},n.auxiliaryBehavior=function(){return this.auxiliaryBehaviorGizmo},n.onMouseDown=function(e){var t=this.invokeMouseDown(this.clickCandidateList,e);t&&(this.clickWinner=t),this.downSnapshot=n5(e),this.dragWinner=void 0},n.onMouseMove=function(e){for(var t,n=D(this.clickCandidateList);!(t=n()).done;){var i=t.value;this.invoke(i,e,"move")}this.dragWinner=void 0},n.onMouseDrag=function(e){for(var t,n=D(this.clickCandidateList);!(t=n()).done;){var i=t.value;if(this.invoke(i,e,"drag"))return}if(this.downSnapshot){if(!this.dragWinner){if(this.downSnapshot.clearAccepted(),("undefined"!=typeof navigator&&/Mac|iPhone|iPad|iPod/.test(navigator.platform)?e.metaPressed:e.ctrlPressed)&&(this.dragWinner=this.resolveDragCandidate(this.auxiliaryBehaviorGizmo)),!this.dragWinner)for(var r,o=D(this.dragCandidateList);!(r=o()).done;){var s=r.value;if(this.dragWinner=this.resolveDragCandidate(s),this.dragWinner)break}if(!this.dragWinner)return;for(var a,c,l=((a=n5(this.downSnapshot)).pressed=!1,a.canceled=!0,a.buttonMask=e.buttonMask,a.position.copyFrom(e.position),a.shiftPressed=e.shiftPressed,a.altPressed=e.altPressed,a.metaPressed=e.metaPressed,a.ctrlPressed=e.ctrlPressed,a),u=D(this.clickCandidateList);!(c=u()).done;){var h=c.value;this.invoke(h,l,"up")}}this.invoke(this.dragWinner,e,"drag")}},n.onMouseUp=function(e){if(this.clickWinner&&(this.clickWinner=void 0),this.dragWinner)this.invoke(this.dragWinner,e,"up"),this.dragWinner=void 0;else for(var t,n=D(this.clickCandidateList);!(t=n()).done;){var i=t.value;if(this.invoke(i,e,"up"))break}},n.onUpdate=function(){for(var e,t=D([].concat(this.clickCandidateList,this.dragCandidateList));!(e=t()).done;)e.value.onUpdate()},n.draw=function(e){var t=[].concat(this.clickCandidateList,this.dragCandidateList);this.auxiliaryBehaviorGizmo&&t.push(this.auxiliaryBehaviorGizmo);for(var n,i=D(t);!(n=i()).done;)n.value.draw(e)},n.dispose=function(){this.clearWinners(),this.downSnapshot=void 0;for(var t,n=D(this.allChildren());!(t=n()).done;)t.value.dispose();e.prototype.dispose.call(this)},n.invokeMouseDown=function(e,t){for(var n,i=D(e);!(n=i()).done;){var r=n.value;if(this.invoke(r,t,"down"))return r}},n.resolveDragCandidate=function(e){if(e&&this.downSnapshot)return this.invoke(e,this.downSnapshot,"down")?e:void 0},n.allChildren=function(){var e=[].concat(this.clickCandidateList,this.dragCandidateList);return this.auxiliaryBehaviorGizmo&&e.push(this.auxiliaryBehaviorGizmo),e},n.clearWinners=function(){this.dragWinner=void 0,this.clickWinner&&(this.clickWinner=void 0)},n.invoke=function(e,t,n){switch(n){case"down":e.onMouseDown(t);break;case"move":e.onMouseMove(t);break;case"drag":e.onMouseDrag(t);break;case"up":e.onMouseUp(t)}return t.isAccepted()},t}(tY);function n6(e){for(var t,n=new Map,i=D(e);!(t=i()).done;){var r,o=t.value,s=null!=(r=o.row)?r:0,a=n.get(s);a?a.push(o):n.set(s,[o])}return n}function n9(e){var t;if((null==(t=e.rowChange)?void 0:t.isRowChange)&&e.rowChange.rowBounds){var n=e.rowChange.rowBounds,i=e.rowChange.toRow<e.rowChange.fromRow?n.minY:n.maxY;return new tl(new e6(n.minX-20,i),new e6(n.maxX+20,i))}if(e.box){var r=e.box;return"before"===e.direction?new tl(new e6(r.min.x-5,r.min.y-10),new e6(r.min.x-5,r.max.y+10)):new tl(new e6(r.max.x+5,r.min.y-10),new e6(r.max.x+5,r.max.y+10))}return new tl}function n7(e,t){if(0===t.length)return{row:0,column:0};for(var n,i,r=e.y,o=e.x,s=n6(t.map(function(e){var t;return X({},e,{row:(null==(t=e.layoutInfo)?void 0:t.row)!==void 0?Math.floor(e.layoutInfo.row):0})})),a=0,c=0,l=D(s.keys());!(i=l()).done;){var u=i.value;a=Math.max(a,u),c=Math.min(c,u)}for(var h,d=[],m=D(s);!(h=m()).done;){var f,p,g=h.value,v=g[0],y=g[1],x=(f=Math).min.apply(f,[].concat(y.map(function(e){return e.box.min.y}))),w=(p=Math).max.apply(p,[].concat(y.map(function(e){return e.box.max.y}))),A=(x+w)/2,M=w-x;d.push({row:v,centerY:A,minY:x,maxY:w,height:M})}d.sort(function(e,t){return e.centerY-t.centerY});for(var I,C=0,S=!1,T=D(d);!(I=T()).done;){var b=I.value;if(r>=b.minY&&r<=b.maxY){C=b.row,S=!0;break}}if(!S&&d.length>0){var E=d[0];E&&r<E.minY&&(C=c-1,S=!0)}if(!S&&d.length>0){var P=d[d.length-1];P&&r>P.maxY&&(C=a+1,S=!0)}if(!S)for(var z,B=1/0,G=D(d);!(z=G()).done;){var L=z.value,k=Math.abs(r-L.centerY);k<B&&(B=k,C=L.row)}var R=null!=(n=s.get(C))?n:[];if(0===R.length)return{row:C,column:0};R.sort(function(e,t){return e.center.x-t.center.x});for(var F=0;F<R.length;F++){var V=R[F];if(V&&o<V.center.x)return{row:C,column:F}}return{row:C,column:R.length}}function ie(e,t,n,i){var r=e.x,o=e.y;if(0===t.length)return{index:0,direction:"after",row:-1,column:0};for(var s,a=n6(t),c=new Map,l=D(a);!(s=l()).done;){var u,h,d,m,f=s.value,p=f[0],g=f[1],v=(u=Math).min.apply(u,[].concat(g.map(function(e){return e.box.min.y}))),y=(h=Math).max.apply(h,[].concat(g.map(function(e){return e.box.max.y}))),x=(d=Math).min.apply(d,[].concat(g.map(function(e){return e.box.min.x}))),w=(m=Math).max.apply(m,[].concat(g.map(function(e){return e.box.max.x})));c.set(p,{minY:v,maxY:y,minX:x,maxX:w})}for(var A,M=Array.from(a.keys()).sort(function(e,t){return e-t}),I=-1,C=D(M);!(A=C()).done;){var S=A.value,T=c.get(S);if(T&&o>=T.minY&&o<=T.maxY){I=S;break}}if(-1===I&&M.length>0){var b=M[0];if(void 0===b)I=-1;else{var E,P=c.get(b);I=P&&o<P.minY?-1:null!=(E=M[M.length-1])?E:-1}}var z=c.get(i),B=I!==i,G=null!=(L=a.get(I))?L:[];if(0===G.length){for(var L,k,R=null,F=D(a);!(k=F()).done;){var V=k.value,O=V[0],Y=V[1];if(O>I&&Y.length>0){var N=Y[0];if(N){R=N.id;break}}}if(!R){var H,U,j,W=M[M.length-1],Q=void 0!==W&&null!=(U=a.get(W))?U:[];R=null!=(j=null==(H=Q[Q.length-1])?void 0:H.id)?j:null}if(R){var K,Z,X,J=n.indexOf(R);if(-1!==J)return{index:-1===I?J:J+1,direction:-1===I?"before":"after",siblingId:R,row:I,column:-1===I?0:null!=(X=null==(K=a.get(I))?void 0:K.length)?X:0,rowChange:B&&z?{fromRow:i,toRow:I,rowBounds:z,isRowChange:B}:void 0,box:null==(Z=t.find(function(e){return e.id===R}))?void 0:Z.box}}return{index:0,direction:"after",row:I,column:0,rowChange:B&&z?{fromRow:i,toRow:I,rowBounds:z,isRowChange:B}:void 0}}G.sort(function(e,t){return e.centerX-t.centerX});for(var q,_=D(G);!(q=_()).done;){var $=q.value;if(r<$.centerX){var ee=n.indexOf($.id);if(-1!==ee)return{index:ee,direction:"before",siblingId:$.id,row:I,column:$.column,rowChange:B&&z?{fromRow:i,toRow:I,rowBounds:z,isRowChange:!0}:void 0,box:$.box}}}var et=G[G.length-1];if(et){var en=n.indexOf(et.id);if(-1!==en)return{index:en+1,direction:"after",siblingId:et.id,row:I,column:et.column+1,rowChange:B&&z?{fromRow:i,toRow:I,rowBounds:z,isRowChange:!0}:void 0,box:et.box}}return{index:0,direction:"after",row:-1,column:0,rowChange:B&&z?{fromRow:i,toRow:I,rowBounds:z,isRowChange:!0}:void 0}}e.FrameLayoutMode=void 0,(p=e.FrameLayoutMode||(e.FrameLayoutMode={})).AUTO="auto",p.FREE="free";var it=function(){function t(e){this.selectedItems=[],this.selectedFrameIds=new Set,this.currentFrameIds=new Map,this.pendingGroupDetaches=new Map,this.autoLayoutIndicator=null,this.autoLayoutDragOriginalPosition=null,this.autoLayoutDragFrameId=null,this.autoLayoutDragItemId=null,this.pendingLayoutPosition=null,this.owner=e,this.engine=e.getEngine()}var n=t.prototype;return n.begin=function(e){this.cancel(),this.selectedItems=[].concat(e);for(var t,n=D(e);!(t=n()).done;){var i,r=t.value,o=r.getInstanceId();t$(r)&&this.selectedFrameIds.add(o);var s=null==(i=this.owner.getFrameManager().getParentFrame(o))?void 0:i.id;this.currentFrameIds.set(o,s)}},n.resolveReparent=function(e){var t=this.owner.getFrameManager();t.updateViewBoxes();for(var n,i,r=t.getViewInfos(),o=nd.getContainerSize(this.engine.canvas.parentElement),s=[],a=D(this.selectedItems);!(i=a()).done;){var c=i.value,l=this.resolveItemReparent(c,e,r,o);l.change&&s.push(l.change),void 0!==l.targetFrameId&&(n=l.targetFrameId)}return this.targetFrameId=n,s},n.updateAutoLayout=function(t){var n=1===this.selectedItems.length?this.selectedItems[0]:void 0;if(!n||t$(n)||t0(n)){this.clearAutoLayoutVisualState();return}var i=this.owner.getFrameManager().findFrameAt(t);if((null==i?void 0:i.layoutMode)!==e.FrameLayoutMode.AUTO){this.clearAutoLayoutVisualState();return}var r=i.id,o=n.getInstanceId();if(null===this.autoLayoutDragOriginalPosition||this.autoLayoutDragFrameId!==r||this.autoLayoutDragItemId!==o){var s,a,c,l=null==(s=i.layoutInfos)?void 0:s[o];this.autoLayoutDragOriginalPosition={row:null!=(a=null==l?void 0:l.row)?a:0,column:null!=(c=null==l?void 0:l.column)?c:0},this.autoLayoutDragFrameId=r,this.autoLayoutDragItemId=o}var u=nd.getContainerSize(this.engine.canvas.parentElement),h=this.engine.sceneServer.compositions[0],d=i.children.reduce(function(e,t){if(t===o)return e;var n,r,s=nr(h,t);if(!s)return e;var a=t3(s,u);if(a.isEmpty())return e;var c=null!=(r=null==(n=i.layoutInfos)?void 0:n[t])?r:{row:0,column:0};return e.push({id:t,box:a,center:a.getCenter(),centerX:a.getCenter().x,layoutInfo:c,row:c.row,column:c.column}),e},[]),m=n7(t,d);if(!m){this.autoLayoutIndicator=null,this.pendingLayoutPosition=null;return}this.pendingLayoutPosition=X({},m);var f=ie(t,d,i.children,this.autoLayoutDragOriginalPosition.row),p=f.siblingId?n9(f):this.createFallbackIndicatorLine(i.box,m);this.autoLayoutIndicator={frameId:r,insertIndex:f.siblingId?f.index:i.children.length,insertDirection:f.siblingId?f.direction:"after",targetSiblingId:f.siblingId,line:p,targetRow:m.row,targetColumn:m.column}},n.finish=function(){for(var e,t,n=[],i=D(this.pendingGroupDetaches.values());!(t=i()).done;){var r=t.value;r.childrenOutOfFrame.length>0&&n.push({type:"detachGroupChildren",groupId:r.groupId,itemIds:[].concat(r.childrenOutOfFrame),originalFrameId:r.frameId})}return this.autoLayoutDragFrameId&&this.autoLayoutDragItemId&&this.autoLayoutDragOriginalPosition&&this.pendingLayoutPosition&&(e={frameId:this.autoLayoutDragFrameId,draggedItemId:this.autoLayoutDragItemId,fromRow:this.autoLayoutDragOriginalPosition.row,fromColumn:this.autoLayoutDragOriginalPosition.column,toRow:this.pendingLayoutPosition.row,toColumn:this.pendingLayoutPosition.column}),{placementChanges:n,autoLayoutChange:e}},n.draw=function(e){if(this.targetFrameId){var t=this.owner.getFrameManager().getViewInfo(this.targetFrameId);(null==t?void 0:t.box)&&!t.box.isEmpty()&&nW(e,tf(t.box),nD(16711680,1),1)}var n=this.autoLayoutIndicator;if(n&&0!==n.line.distanceSq()){var i=nD(3900150,1),r=n.line,o=r.start,s=r.end;e.drawLine(o.x,o.y,s.x,s.y,i,2),e.fillCircle(o.x,o.y,3,i),e.fillCircle(s.x,s.y,3,i)}},n.cancel=function(){this.selectedItems=[],this.selectedFrameIds.clear(),this.currentFrameIds.clear(),this.pendingGroupDetaches.clear(),this.targetFrameId=void 0,this.clearAutoLayoutState()},n.resolveItemReparent=function(e,t,n,i){var r=this;if(t$(e)||t0(e))return{};var o=e.getInstanceId(),s=this.currentFrameIds.get(o),a=n.find(function(e){return e.id===s}),c=n.find(function(e){return!r.selectedFrameIds.has(e.id)&&e.box.containsPoint(t)});if(!c&&a){var l=[o];return t4(e)&&l.push.apply(l,[].concat(ni(e).map(function(e){return e.getInstanceId()}))),this.pendingGroupDetaches.delete(o),this.currentFrameIds.set(o,void 0),{change:{type:"moveOut",itemIds:l,originalFrameId:a.id}}}if(!c||(null==a?void 0:a.id)===c.id)return{targetFrameId:null==c?void 0:c.id};var u=[o];if(t4(e)){var h=ni(e);if(u.push.apply(u,[].concat(h.map(function(e){return e.getInstanceId()}))),h.length>0){for(var d,m=[],f=[],p=D(h);!(d=p()).done;){var g=d.value,v=t3(g,i);!v.isEmpty()&&c.box.intersectsBox(v)?m.push(g.getInstanceId()):f.push(g.getInstanceId())}if(0===m.length)return this.pendingGroupDetaches.delete(o),{};f.length>0?this.pendingGroupDetaches.set(o,{groupId:o,frameId:c.id,childrenOutOfFrame:f}):this.pendingGroupDetaches.delete(o)}}return this.currentFrameIds.set(o,c.id),{targetFrameId:c.id,change:{type:"moveIn",itemIds:u,targetFrameId:c.id}}},n.clearAutoLayoutVisualState=function(){this.autoLayoutIndicator=null,this.pendingLayoutPosition=null},n.clearAutoLayoutState=function(){this.clearAutoLayoutVisualState(),this.autoLayoutDragOriginalPosition=null,this.autoLayoutDragFrameId=null,this.autoLayoutDragItemId=null},n.createFallbackIndicatorLine=function(e,t){if(e.isEmpty())return new tl;var n=Math.min(e.min.x+10,e.max.x),i=Math.max(e.max.x-10,e.min.x),r=Math.min(e.min.y+10,e.max.y),o=Math.max(e.max.y-10,e.min.y);if(t.row<0)return new tl(new e6(n,r),new e6(i,r));if(t.row>0&&0===t.column)return new tl(new e6(n,o),new e6(i,o));var s=t.column<=0?n:i;return new tl(new e6(s,r),new e6(s,o))},t}(),ii=function(n){function i(){var e;return e=n.apply(this,arguments)||this,e.type="move-selection",e.active=!1,e.selectedItems=[],e.selectionBox=new to,e.startPoint=new e6,e.lastPoint=new e6,e.cursorPoint=new e6,e.lastWorldPosition=new e9,e}G(i,n);var r=i.prototype;return r.onMouseDown=function(n){if(n.buttonIndex===t.MouseButton.Left&&!n.doubleClick&&!n.shiftPressed){var i=new e6(n.position.x,n.position.y);if(this._owner.getSelection().isPointInSelectedViewBox(i)){var r=this._owner.getSelection().getSelectedPlayerItems();0!==r.length&&(this.selectedItems=[].concat(r),this.cursorPoint.copyFrom(i),this.active=!0,this.startPoint=new e6(n.position.x,n.position.y),this.lastPoint.copyFrom(this.startPoint),this._owner.setSelectionTransformKind("move"),this._owner.emit("actionstart",{source:this,transformType:e.TransformType.TRANSLATION,itemIds:this.selectedItems.map(function(e){return e.getInstanceId()})}),this.assistedLayout=new it(this._owner),this.assistedLayout.begin(this.selectedItems),n.accept())}}},r.onMouseMove=function(e){},r.onMouseDrag=function(t){if(this.active){var n=new e6(t.position.x,t.position.y);this._owner.setCursor({type:e.GestureCursorType.NORMAL,angle:0});var i=new e6().subtractVectors(n,this.lastPoint);if(this.applyTranslation(i)){this.lastPoint.copyFrom(n);for(var r,o,s,a,c=new e6(t.position.x,t.position.y),l=null!=(s=null==(r=this.assistedLayout)?void 0:r.resolveReparent(c))?s:[],u=D(l);!(a=u()).done;){var h=a.value;this._owner.emit("placementchange",X({source:this},h))}l.length>0&&this.cacheSnapTargets(),null==(o=this.assistedLayout)||o.updateAutoLayout(c),this._owner.emit("actionupdate",{source:this,transformType:e.TransformType.TRANSLATION})}t.accept()}},r.onMouseUp=function(t){if(this.active){for(var n,i,r,o=null==(n=this.assistedLayout)?void 0:n.finish(),s=D(null!=(i=null==o?void 0:o.placementChanges)?i:[]);!(r=s()).done;){var a=r.value;this._owner.emit("placementchange",X({source:this},a))}var c={source:this,transformType:e.TransformType.TRANSLATION,autoLayoutChange:null==o?void 0:o.autoLayoutChange};this._owner.emit("actioncommit",c),this.resetDragState(),t.accept()}},r.draw=function(e){var t;null==(t=this.assistedLayout)||t.draw(e)},r.applyTranslation=function(e){if(0>=e.length()||!this.interactionPlane&&!this.prepareTranslationGeometry())return!1;var t=e.clone(),n=nd.getContainerSize(this._owner.getEngine().canvas.parentElement),i=this.computeSelectionBox(n);if(i.isEmpty())return!1;if(this.selectionBox.copyFrom(i),this._owner.getSnapManager().enabled){var r,o,s,a,c=new e6(null!=(r=this._owner.getSnapManager().result.x)?r:0,null!=(o=this._owner.getSnapManager().result.y)?o:0);this._owner.getSnapManager().prepareBox(t,this.selectionBox);var l=new e6(null!=(s=this._owner.getSnapManager().result.x)?s:0,null!=(a=this._owner.getSnapManager().result.y)?a:0);t.add(c).subtract(l)}var u=tK(this.cursorPoint.add(t).clone(),nd.getCameraInfo(this._owner.getEngine()),this.interactionPlane,n);if(!u)return!1;var h=u.clone().subtract(this.lastWorldPosition);h.x=td(h.x,5),h.y=td(h.y,5),h.z=td(h.z,5);for(var d,m=D(this.selectedItems);!(d=m()).done;){var f,p=d.value,g=new e3().copyFrom(null!=(f=p.transform.getParentMatrix())?f:new e3);g.setPosition(new e9);var v=h.clone().applyMatrix(g.invert());p.translate.apply(p,[].concat(v.toArray())),p.transform.updateLocalMatrix()}return this.lastWorldPosition.copyFrom(u),!0},r.prepareTranslationGeometry=function(){var e,t=nd.getContainerSize(this._owner.getEngine().canvas.parentElement),n=this.computeSelectionBox(t);return!n.isEmpty()&&(this.selectionBox.copyFrom(n),this.cacheSnapTargets(t),this.interactionPlane=t_(new e9,new e1(0,0,0,e2.XYZ)),this.lastWorldPosition=null!=(e=tK(this.cursorPoint,nd.getCameraInfo(this._owner.getEngine()),this.interactionPlane,t))?e:new e9,!0)},r.computeSelectionBox=function(e){for(var t,n=new to,i=D(this.selectedItems);!(t=i()).done;){var r=t.value;if(r.isVisible){var o=t3(r,e);o.isEmpty()||n.union(o)}}return n},r.cacheSnapTargets=function(e){var t,n,i=this._owner.getSnapManager();if(i.enabled){var r=this._owner.getEngine();i.cacheSnapTargetsForSelection(null!=(n=null==(t=r.sceneServer.compositions[0])?void 0:t.items)?n:[],this.selectedItems,null!=e?e:nd.getContainerSize(r.canvas.parentElement))}},r.resetDragState=function(){var e;"move"===this._owner.getSelectionTransformKind()&&this._owner.setSelectionTransformKind("idle"),this.active=!1,this.selectedItems=[],this.selectionBox=new to,this.interactionPlane=void 0,this.startPoint=new e6,this.lastPoint=new e6,this.cursorPoint=new e6,this.lastWorldPosition=new e9,null==(e=this.assistedLayout)||e.cancel(),this.assistedLayout=void 0,this._owner.getSnapManager().reset()},i}(tY);function ir(e,t){void 0===t&&(t={});var n=!1===t.allowTransform?[new n4(e)]:[new ii(e),new n4(e)];return new n8(e,{clickCandidates:[new n3(e)],dragCandidates:n,auxiliaryBehavior:new n4(e,!1)})}var io=function(){function e(e,t,n){void 0===n&&(n={}),this.owner=e,this.effectsItemId=t,this.id="effects-edit",this.allowTransform=!1!==n.allowTransform}var t=e.prototype;return t.canRemainActiveForTool=function(e){return O(e,tO)||O(e,tD)},t.onEnter=function(){this.owner.getSelection().enterEffectsEditScope(this.effectsItemId)},t.onExit=function(){var e=this.owner.getSelection();e.leaveEffectsEditScope(),nr(this.owner.getEngine().sceneServer.compositions[0],this.effectsItemId)?e.commitSelectedItems([this.effectsItemId]):e.clearSelectedItems()},t.createGizmos=function(){var e=new n0(this.owner,{interactive:this.allowTransform}),t=this.allowTransform?new n1(this.owner,e):void 0;return[].concat(t?[t]:[],[e,new n2(this.owner),ir(this.owner,{allowTransform:this.allowTransform})])},e}(),is=function(e){function n(){var t;return t=e.apply(this,arguments)||this,t.type="leave-text-edit",t}return G(n,e),n.prototype.onMouseDown=function(e){e.buttonIndex===t.MouseButton.Left&&(this._owner.resetEditMode(),e.accept())},n}(tY);function ia(e){if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}var ic=function(n){function i(t,i){var r;return(r=n.call(this,t)||this).type=e.GizmoType.TEXT,r.result={type:"empty"},r.projectionToken={},r.forwardTextInput=function(e){r._owner.emit("textinput",X({source:ia(r)},e))},r.session=i,r.session.attachProjection(r.projectionToken),r.session.on("textInput",r.forwardTextInput),r}G(i,n);var r=i.prototype;return r.onMouseDown=function(e){},r.onMouseUp=function(e){this.isEditing&&e.accept()},r.onUpdate=function(){var e=this.session.editingItem;if((null==e?void 0:e.type)!==t.spec.ItemType.text||!e.isVisible){this.result={type:"empty"},this.textAreaElement.style.display="none";return}var n=nd.getContainerSize(this._owner.getEngine().canvas.parentElement),i=t3(e,n),r=t5(e,n);this.result=!r||i.isEmpty()?{type:"empty"}:{type:"valid",box:i,transform:r}},r.draw=function(e){this.drawEditBox(e),this.session.syncTextArea(this.result,this.viewScale)},r.selectAllText=function(){return this.session.selectAllText()},r.dispose=function(){this.session.off("textInput",this.forwardTextInput),this.session.detachProjection(this.projectionToken),n.prototype.dispose.call(this)},r.drawEditBox=function(e){e&&"valid"===this.result.type&&nW(e,tx(this.result.transform),nD(3900150,1),2)},tB(i,[{key:"textAreaElement",get:function(){return this.session.textAreaElement}},{key:"interactionParam",get:function(){return this.session.interactionParam}},{key:"isEditing",get:function(){return this.session.isEditing}},{key:"viewScale",get:function(){return this._owner.getEngine().sceneServer.compositions[0].camera.getViewportMatrix().elements[0]}}]),i}(tY),il=function(n){function i(e,t){var i;return(i=n.call(this,e)||this).session=t,i.type="select-text",i.pointerSelecting=!1,i}G(i,n);var r=i.prototype;return r.onMouseMove=function(e){if(this.pointerSelecting&&(e.buttonMask&t.MouseButtonMask.Left)!=0){this.session.updatePointerSelection({x:e.position.x,y:e.position.y}),this.setTextCursor(e),e.accept();return}var n=this.resolveTextTarget(new e6(e.position.x,e.position.y),!0);if(!n){this.clearHover();return}this._hoverTextId=n.getInstanceId(),this.setTextCursor(e),e.accept()},r.onMouseDown=function(e){if(e.buttonIndex===t.MouseButton.Left){var n=this.resolveTextTarget(new e6(e.position.x,e.position.y),!1,!1);n&&this.session.retarget(n,"focus")&&(this._hoverTextId=void 0,this.pointerSelecting=!0,this.session.beginPointerSelection({x:e.position.x,y:e.position.y}),this._owner.getSelection().commitSelectedItems([n.getInstanceId()]),this.setTextCursor(e),e.accept())}},r.onMouseDrag=function(e){this.pointerSelecting&&(this.session.updatePointerSelection({x:e.position.x,y:e.position.y}),this.setTextCursor(e),e.accept())},r.onMouseUp=function(e){this.pointerSelecting&&(this.session.finishPointerSelection({x:e.position.x,y:e.position.y}),this.pointerSelecting=!1,this._hoverTextId=void 0,this.setTextCursor(e),e.accept())},r.onMouseLeave=function(){this.clearHover(),this._owner.setCursor({type:e.GestureCursorType.NORMAL,angle:0})},r.onUpdate=function(){if(this._hoverTextId){var e=nr(this._owner.getEngine().sceneServer.compositions[0],this._hoverTextId);this.isTextCandidate(e,!0)||this.clearHover()}},r.draw=function(e){if(this._hoverTextId){var t=nr(this._owner.getEngine().sceneServer.compositions[0],this._hoverTextId);if(this.isTextCandidate(t,!0)){var n=t5(t,nd.getContainerSize(this._owner.getEngine().canvas.parentElement));n&&nQ(e,tx(n),nD(3900150,1),i.HOVER_LINE_WIDTH,i.HOVER_DASH_LENGTH,i.HOVER_GAP_LENGTH)}}},r.dispose=function(){this.pointerSelecting=!1,this.session.cancelPointerSelection(),this.clearHover(),n.prototype.dispose.call(this)},r.resolveTextTarget=function(e,t,n){var r=this;void 0===n&&(n=!0);for(var o,s=i.HOVER_HIT_RADIUS,a=s/Math.SQRT2,c=n?[[0,0],[s,0],[-s,0],[0,s],[0,-s],[a,a],[a,-a],[-a,a],[-a,-a]]:[[0,0]],l=this._owner.getEngine().sceneServer.compositions[0],u=D(c);!(o=u()).done;){var h=o.value,d=h[0],m=h[1],f=new e6(e.x+d,e.y+m),p=this._owner.getSelection().hitTest(f).map(function(e){return nr(l,e)}).find(function(e){return r.isTextCandidate(e,t)});if(p)return p}},r.isTextCandidate=function(e,n){return!!e&&e.isVisible&&e.type===t.spec.ItemType.text&&!!e.getComponent(t.TextComponent)&&(!n||e!==this.session.editingItem)},r.clearHover=function(){this._hoverTextId=void 0},r.setTextCursor=function(t){this._owner.setCursor({type:e.GestureCursorType.TEXT,angle:0})},tB(i,[{key:"hoverTextId",get:function(){return this._hoverTextId}}]),i}(tY);il.HOVER_HIT_RADIUS=4,il.HOVER_LINE_WIDTH=1,il.HOVER_DASH_LENGTH=4,il.HOVER_GAP_LENGTH=4;var iu=function(){function e(e,t,n){void 0===n&&(n="focus"),this.owner=e,this.target=t,this.activation=n,this.id="text-edit",this.session=new tF(e)}var t=e.prototype;return t.canRemainActiveForTool=function(e){return O(e,tO)||O(e,tD)},t.onEnter=function(){this.session.retarget(this.target,this.activation)&&this.owner.getSelection().commitSelectedItems([this.target.getInstanceId()])},t.onExit=function(){this.session.dispose()},t.createGizmos=function(){return[new ic(this.owner,this.session),new il(this.owner,this.session),new is(this.owner)]},tB(e,[{key:"editingItem",get:function(){return this.session.editingItem}}]),e}(),ih=function(n){function i(){var e;return e=n.apply(this,arguments)||this,e.type="enter-edit-mode",e}return G(i,n),i.prototype.onMouseDown=function(n){if(n.buttonIndex===t.MouseButton.Left&&n.doubleClick){var i=this._owner.getSelection().getSelectedPlayerItems(),r=1===i.length?i[0]:void 0;if(r){var o=this._owner.getSelection();if(o.filterSelectedItems(o.hitTest(new e6(n.position.x,n.position.y))).includes(r.getInstanceId())){if(r.type===t.spec.ItemType.text&&r.getComponent(t.TextComponent))this._owner.setActiveEditMode(new iu(this._owner,r,"select")),this._owner.setCursor({type:e.GestureCursorType.TEXT,angle:0});else{if(!t0(r))return;this._owner.setActiveEditMode(new io(this._owner,r.getInstanceId(),this._owner.getConfigManager().get(ny)))}n.accept()}}}},i}(tY),id=function(){function e(e){this.owner=e,this.id="default-selection"}var t=e.prototype;return t.canRemainActiveForTool=function(e){return O(e,tO)||O(e,tD)},t.createGizmos=function(){var e=new n0(this.owner);return[new n1(this.owner,e),e,new ih(this.owner),ir(this.owner)]},e}();e.ImageInteractionType=void 0,(g=e.ImageInteractionType||(e.ImageInteractionType={})).NONE="none",g.SCALE="scale",g.DIRECTION_SCALE="direction-scale",g.MOVE="move";var im=function(n){function i(){var t;return t=n.apply(this,arguments)||this,t.result={normalizeCutBox:new to(new e6,new e6(1,1))},t.interactionParam={type:e.ImageInteractionType.NONE},t.type=e.GizmoType.IMAGE_CUT,t.cursorResult={type:e.GestureCursorType.NORMAL,angle:0},t._isLockScale=!1,t.mouseGrabbed=!1,t}G(i,n);var r=i.prototype;return r.onMouseMove=function(n){if(this.isApplicableSelection()){if(this.mouseGrabbed){var i=this.updateGrab(n);this._owner.setCursor(this.cursorResult),i&&n.accept();return}var r=this._owner.getMousePosition(),o=new e6(n.position.x,n.position.y);this.refreshInteractionType(r,o),this._owner.setCursor(this.cursorResult),n.buttonMask===t.MouseButtonMask.None&&(this.interactionParam.type===e.ImageInteractionType.SCALE||this.interactionParam.type===e.ImageInteractionType.DIRECTION_SCALE)&&n.accept()}},r.onMouseDrag=function(e){if(this.isApplicableSelection()&&this.mouseGrabbed){var t=this.updateGrab(e);this._owner.setCursor(this.cursorResult),this._owner.emit("actionupdate",{source:this}),t&&e.accept()}},r.onMouseLeave=function(){if(this.isApplicableSelection()){if(this.mouseGrabbed){this._owner.setCursor(this.cursorResult);return}this.interactionParam={type:e.ImageInteractionType.NONE},this.refreshCursorResult(e.ImageInteractionType.NONE),this._owner.setCursor(this.cursorResult)}},r.onMouseDown=function(n){if(this.isApplicableSelection()&&n.buttonIndex===t.MouseButton.Left){var i=new e6(n.position.x,n.position.y),r=new e6(n.position.x,n.position.y);this.refreshInteractionType(i,r),this._owner.setCursor(this.cursorResult),this.interactionParam.type!==e.ImageInteractionType.NONE&&(this.mouseGrabbed=!0,this._owner.emit("actionstart",{source:this}),n.accept())}},r.onMouseUp=function(e){if(this.mouseGrabbed){this.mouseGrabbed=!1;var t=new e6(e.position.x,e.position.y),n=new e6(e.position.x,e.position.y);this.refreshInteractionType(t,n),this._owner.setCursor(this.cursorResult),this._owner.emit("actioncommit",{source:this}),e.accept()}},r.onKeyUp=function(e){"lockedAspect"in this.interactionParam&&delete this.interactionParam.lockedAspect},r.onUpdate=function(){this.renderGeometry=this.getSelectionGeometry()},r.draw=function(e){var t=this.renderGeometry;if(t){var n=this.config,i=n.maskColor,r=n.maskAlpha,o=n.cutBoxLineWidth,s=n.cutBoxLineColor,a=n.cutBoxLineAlpha,c=n.itemBoxLineWidth,l=n.itemBoxLineColor,u=n.itemBoxLineAlpha,h=n.cutBoxCornerRadius,d=n.cutBoxCornerFillColor,m=n.cutBoxCornerLineWidth,f=n.cutBoxCornerLineColor,p=n.cutBoxCornerLineAlpha,g=n.gridLineWidth,v=n.gridLineColor,y=n.gridLineAlpha,x=n.gridCount,w=tx(t.boxTransform),A=tx(t.boxTransform,this.result.normalizeCutBox),M=nD(i,r);nX(e,[w[0],w[1],A[1],A[0]],M),nX(e,[w[1],w[2],A[2],A[1]],M),nX(e,[w[2],w[3],A[3],A[2]],M),nX(e,[w[3],w[0],A[0],A[3]],M);for(var I=nD(v,y),C=1;C<=x;C++){var S=C/(x+1),T=A[0].clone().add(A[1].clone().subtract(A[0]).multiply(S)),b=A[3].clone().add(A[2].clone().subtract(A[3]).multiply(S)),E=A[0].clone().add(A[3].clone().subtract(A[0]).multiply(S)),P=A[1].clone().add(A[2].clone().subtract(A[1]).multiply(S));e.drawLine(T.x,T.y,b.x,b.y,I,g),e.drawLine(E.x,E.y,P.x,P.y,I,g)}nW(e,w,nD(l,u),c),nW(e,A,nD(s,a),o);var z=nD(d,1),B=nD(f,p);A.forEach(function(t){e.fillCircle(t.x,t.y,h,z),e.drawCircle(t.x,t.y,h,B,m)})}},r.refreshCursorResult=function(t,n){switch(void 0===n&&(n=0),t){case e.ImageInteractionType.SCALE:case e.ImageInteractionType.DIRECTION_SCALE:this.cursorResult={type:e.GestureCursorType.SCALE,angle:n};break;case e.ImageInteractionType.MOVE:case e.ImageInteractionType.NONE:this.cursorResult={type:e.GestureCursorType.NORMAL,angle:0}}},r.getCutInfo=function(){var e=this.getSelectionGeometry();if(e)return{cutBox:this.result.normalizeCutBox.clone(),itemBox:e.itemBox}},r.getCutBox=function(){if(this.isApplicableSelection())return this.result.normalizeCutBox.clone()},r.setCutBox=function(e){if(this.isApplicableSelection())return this.result.normalizeCutBox.copyFrom(e),this.result.normalizeCutBox.clone()},r.isApplicableSelection=function(){return 1===this._owner.getSelection().getSelectedPlayerItems().length},r.updateGrab=function(t){if(!this.mouseGrabbed)return!1;if(this.interactionParam.type===e.ImageInteractionType.NONE)return!0;var n=this.getSelectionGeometry();if(!n)return!0;var i=ty(n.boxTransform,new e6(t.position.x,t.position.y)),r=this.interactionParam,o=r.startMouse,s=r.box,a=new e6().subtractVectors(i,o),c=new e6,l=new e6(1,1);switch(this.interactionParam.type){case e.ImageInteractionType.MOVE:var u=s.min,h=s.max,d=c.x-u.x,m=l.x-h.x,f=c.y-u.y,p=l.y-h.y;a.x=Math.min(Math.max(a.x,d),m),a.y=Math.min(Math.max(a.y,f),p);var g=s.clone().translate(a);this.result.normalizeCutBox=g;break;case e.ImageInteractionType.SCALE:var v=this.interactionParam,y=v.startCorner,x=v.anchor,w=new e6;if(w.x=Math.min(Math.max(y.x+a.x,c.x),l.x),w.y=Math.min(Math.max(y.y+a.y,c.y),l.y),t.shiftPressed||this.isLockScale){var A,M=(y.x-x.x)*(y.y-x.y)>=0?1:-1,I=this.result.normalizeCutBox.getSize(),C=I.x,S=I.y,T=s.getSize(),b=T.x,E=T.y;if(null!=(A=this.interactionParam).lockedAspect||(A.lockedAspect=C/S),Math.abs(w.x-x.x)/b>Math.abs(w.y-x.y)/E){var P=Math.abs(w.x-x.x)/(w.x-x.x),z=Math.abs(w.x-x.x)/this.interactionParam.lockedAspect;tn(y.y,x.y)?w.y=y.y:w.y=P*M*z+x.y,w.y=Math.min(Math.max(w.y,c.y),l.y);var B=w.y-x.y;tn(y.y,x.y)?w.x=y.x:w.x=M*B*this.interactionParam.lockedAspect+x.x}else{var G=Math.abs(w.y-x.y)*this.interactionParam.lockedAspect,L=Math.abs(w.y-x.y)/(w.y-x.y);tn(y.x,x.x)?w.x=y.x:w.x=L*M*G+x.x,w.x=Math.min(Math.max(w.x,c.x),l.x);var k=w.x-x.x;tn(y.x,x.x)?w.y=y.y:w.y=M*k/this.interactionParam.lockedAspect+x.y}}if(tn(y.x,x.x)||tn(y.y,x.y)){var R=tf(s),F=R[0].clone(),V=F.distance(y);R.forEach(function(e){e.distance(y)>V&&(F.copyFrom(e),V=e.distance(y))}),this.result.normalizeCutBox=tI(new to,[F,w])}else{var D=new e6((w.x-x.x)/(y.x-x.x),(w.y-x.y)/(y.y-x.y));this.result.normalizeCutBox=tC(s.clone(),D,x)}break;case e.ImageInteractionType.DIRECTION_SCALE:var O,Y=this.interactionParam.index,N=this.result.normalizeCutBox.getSize(),H=N.x,U=N.y;null!=(O=this.interactionParam).lockedAspect||(O.lockedAspect=H/U);var j=tf(s),W=j[Y].clone(),Q=j[(Y+1)%4].clone(),K=Y%2==0?"y":"x";if("x"===K){if(a.x=Math.min(Math.max(W.x+a.x,c.x),l.x)-W.x,t.shiftPressed||this.isLockScale){a.y=a.x/this.interactionParam.lockedAspect;var Z=Math.min(Math.max(Q.y+a.y,c.y),l.y);a.y=Z-Q.y,a.x=a.y*this.interactionParam.lockedAspect}else a.y=0}else if(a.y=Math.min(Math.max(W.y+a.y,c.y),l.y)-W.y,t.shiftPressed||this.isLockScale){a.x=-a.y*this.interactionParam.lockedAspect;var X=Math.min(Math.max(Q.x+a.x,c.x),l.x);a.x=X-Q.x,a.y=-a.x/this.interactionParam.lockedAspect}else a.x=0;var J=[];j.forEach(function(e,t){var n=new e6;Y===t?"y"===K?n.copyFrom(e.clone().add(new e6(0,a.y))):n.copyFrom(e.clone().add(new e6(a.x,0))):Y===(t+3)%4?n.copyFrom(e.clone().add(a)):Y===(t+2)%4?"x"===K?n.copyFrom(e.clone().add(new e6(0,a.y))):n.copyFrom(e.clone().add(new e6(a.x,0))):n.copyFrom(e.clone()),J.push(n)}),this.result.normalizeCutBox=tI(new to,J)}return!0},r.getSelectionGeometry=function(){var e=this.selectedItems;if(1===e.length){var t=nd.getContainerSize(this._owner.getEngine().canvas.parentElement),n=t5(e[0],t);if(n)return{itemBox:t3(e[0],t),boxTransform:n}}},r.refreshInteractionType=function(t,n){var i=this;this.interactionParam={type:e.ImageInteractionType.NONE};var r=this.getSelectionGeometry();if(r){var o=tx(r.boxTransform),s=tx(r.boxTransform,this.result.normalizeCutBox),a=!1,c=0;s.forEach(function(s,l){!a&&s.distance(t)<i.config.scaleInteractionDistance&&(a=!0,i.interactionParam={type:e.ImageInteractionType.SCALE,box:i.result.normalizeCutBox.clone(),startMouse:ty(r.boxTransform,n),startCorner:tf(i.result.normalizeCutBox)[l],anchor:tf(i.result.normalizeCutBox)[(l+2)%4]},c=Math.PI/2*((l+3)%4)+Math.atan2(o[1].y-o[0].y,o[1].x-o[0].x))}),s.forEach(function(l,u){if(!a){var h=new tl(l.clone(),s[(u+1)%4]),d=0===h.distanceSq()?0:h.closestPointToPointParameter(t,!0),m={d:h.at(d).distance(t),t:d};m.d>=0&&m.d<=8&&m.t>=0&&m.t<=1&&(a=!0,i.interactionParam={type:e.ImageInteractionType.DIRECTION_SCALE,index:u,box:i.result.normalizeCutBox.clone(),startMouse:ty(r.boxTransform,n)},c=Math.PI/2*((u+3)%4)+Math.PI/4+Math.atan2(o[1].y-o[0].y,o[1].x-o[0].x))}}),tM(r.boxTransform,t,this.result.normalizeCutBox)&&!a&&(this.interactionParam={type:e.ImageInteractionType.MOVE,box:this.result.normalizeCutBox.clone(),startMouse:ty(r.boxTransform,n)},a=!0),this.refreshCursorResult(this.interactionParam.type,c*te)}},tB(i,[{key:"config",get:function(){return this._owner.getConfigManager().get(nC)}},{key:"selectedItems",get:function(){return this._owner.getSelection().getSelectedPlayerItems()}},{key:"isLockScale",get:function(){return this._isLockScale},set:function(e){e!==this.isLockScale&&(this._isLockScale=e)}}]),i}(tY),ip=function(e){function t(){return e.apply(this,arguments)}return G(t,e),t.prototype.createGizmos=function(){return[new im(this.owner)]},t}(tV),ig=function(n){function i(){var t;return t=n.apply(this,arguments)||this,t.result={normalizeExpandBox:new to(new e6,new e6(1,1))},t.interactionParam={type:e.ImageInteractionType.NONE},t.type=e.GizmoType.IMAGE_EXPAND,t.cursorResult={type:e.GestureCursorType.NORMAL,angle:0},t._isLockScale=!1,t.mouseGrabbed=!1,t}G(i,n);var r=i.prototype;return r.onMouseMove=function(n){if(this.isApplicableSelection()){if(this.mouseGrabbed){var i=this.updateGrab(n);this._owner.setCursor(this.cursorResult),i&&n.accept();return}var r=this._owner.getMousePosition(),o=new e6(n.position.x,n.position.y);this.refreshInteractionType(r,o),this._owner.setCursor(this.cursorResult),n.buttonMask===t.MouseButtonMask.None&&(this.interactionParam.type===e.ImageInteractionType.SCALE||this.interactionParam.type===e.ImageInteractionType.DIRECTION_SCALE)&&n.accept()}},r.onMouseDrag=function(e){if(this.isApplicableSelection()&&this.mouseGrabbed){var t=this.updateGrab(e);this._owner.setCursor(this.cursorResult),this._owner.emit("actionupdate",{source:this}),t&&e.accept()}},r.onMouseLeave=function(){if(this.isApplicableSelection()){if(this.mouseGrabbed){this._owner.setCursor(this.cursorResult);return}this.interactionParam={type:e.ImageInteractionType.NONE},this.refreshCursorResult(e.ImageInteractionType.NONE),this._owner.setCursor(this.cursorResult)}},r.onMouseDown=function(n){if(this.isApplicableSelection()&&n.buttonIndex===t.MouseButton.Left){var i=new e6(n.position.x,n.position.y),r=new e6(n.position.x,n.position.y);this.refreshInteractionType(i,r),this._owner.setCursor(this.cursorResult),this.interactionParam.type!==e.ImageInteractionType.NONE&&(this.mouseGrabbed=!0,this._owner.emit("actionstart",{source:this}),n.accept())}},r.onMouseUp=function(e){if(this.mouseGrabbed){this.mouseGrabbed=!1;var t=new e6(e.position.x,e.position.y),n=new e6(e.position.x,e.position.y);this.refreshInteractionType(t,n),this._owner.setCursor(this.cursorResult),this._owner.emit("actioncommit",{source:this}),e.accept()}},r.onKeyUp=function(e){"lockedAspect"in this.interactionParam&&delete this.interactionParam.lockedAspect},r.onUpdate=function(){this.renderGeometry=this.getSelectionGeometry()},r.draw=function(e){var t=this.renderGeometry;if(t){var n=this.config,i=n.maskColor,r=n.maskAlpha,o=n.expandBoxLineWidth,s=n.expandBoxLineColor,a=n.expandBoxLineAlpha,c=n.expandBoxCornerRadius,l=n.expandBoxCornerFillColor,u=n.expandBoxCornerLineWidth,h=n.expandBoxCornerLineColor,d=n.expandBoxCornerLineAlpha,m=n.gridLineWidth,f=n.gridLineColor,p=n.gridLineAlpha,g=n.gridCount,v=tx(t.boxTransform,this.result.normalizeExpandBox);nX(e,v,nD(i,r));for(var y=nD(f,p),x=1;x<=g;x++){var w=x/(g+1),A=v[0].clone().add(v[1].clone().subtract(v[0]).multiply(w)),M=v[3].clone().add(v[2].clone().subtract(v[3]).multiply(w)),I=v[0].clone().add(v[3].clone().subtract(v[0]).multiply(w)),C=v[1].clone().add(v[2].clone().subtract(v[1]).multiply(w));e.drawLine(A.x,A.y,M.x,M.y,y,m),e.drawLine(I.x,I.y,C.x,C.y,y,m)}nW(e,v,nD(s,a),o);var S=nD(l,1),T=nD(h,d);v.forEach(function(t){e.fillCircle(t.x,t.y,c,S),e.drawCircle(t.x,t.y,c,T,u)})}},r.refreshCursorResult=function(t,n){switch(void 0===n&&(n=0),t){case e.ImageInteractionType.SCALE:case e.ImageInteractionType.DIRECTION_SCALE:this.cursorResult={type:e.GestureCursorType.SCALE,angle:n};break;case e.ImageInteractionType.MOVE:case e.ImageInteractionType.NONE:this.cursorResult={type:e.GestureCursorType.NORMAL,angle:0}}},r.getExpandInfo=function(){var e=this.getSelectionGeometry();if(e)return{expandBox:this.result.normalizeExpandBox.clone(),itemBox:e.itemBox}},r.getExpandBox=function(){if(this.isApplicableSelection())return this.result.normalizeExpandBox.clone()},r.setExpandBox=function(e){if(this.isApplicableSelection())return this.result.normalizeExpandBox.copyFrom(e),this.result.normalizeExpandBox.clone()},r.isApplicableSelection=function(){return 1===this._owner.getSelection().getSelectedPlayerItems().length},r.updateGrab=function(t){if(!this.mouseGrabbed)return!1;if(this.interactionParam.type===e.ImageInteractionType.NONE)return!0;var n=this.getSelectionGeometry();if(!n)return!0;var i=ty(n.boxTransform,new e6(t.position.x,t.position.y)),r=this.interactionParam,o=r.startMouse,s=r.box,a=new e6().subtractVectors(i,o),c=new e6,l=new e6(1,1);switch(this.interactionParam.type){case e.ImageInteractionType.MOVE:var u=s.min,h=s.max,d=l.x-h.x,m=c.x-u.x,f=l.y-h.y,p=c.y-u.y;a.x=Math.min(Math.max(a.x,d),m),a.y=Math.min(Math.max(a.y,f),p);var g=s.clone().translate(a);this.result.normalizeExpandBox=g;break;case e.ImageInteractionType.SCALE:var v=this.interactionParam.index,y=s.min,x=s.max,w=tf(s),A=w[v],M=w[(v+2)%4],I=new e6(A.x+a.x,A.y+a.y);if(A.x>=x.x?I.x=Math.max(I.x,l.x):A.x<=y.x?I.x=Math.min(I.x,c.x):(console.warn("resultCorner has wrong, we have move it to the nearest corner"),I.x=Math.abs(I.x-y.x)>Math.abs(I.x-x.x)?x.x:y.x),A.y>=x.y?I.y=Math.max(I.y,l.y):A.y<=y.y?I.y=Math.min(I.y,c.y):(console.warn("resultCorner has wrong, we have move it to the nearest corner"),I.y=Math.abs(I.y-y.y)>Math.abs(I.y-x.y)?x.y:y.y),t.shiftPressed||this.isLockScale){var C,S=this.result.normalizeExpandBox.getSize(),T=S.x,b=S.y,E=s.getSize(),P=E.x,z=E.y;if(null!=(C=this.interactionParam).lockedAspect||(C.lockedAspect=T/b),Math.abs(I.x-M.x)/P>Math.abs(I.y-M.y)/z){var B=Math.abs(I.x-M.x)/this.interactionParam.lockedAspect;I.y=(A.y-M.y)/Math.abs(A.y-M.y)*B+M.y,A.y>=x.y?I.y=Math.max(I.y,l.y):A.y<=y.y?I.y=Math.min(I.y,c.y):(console.warn("resultCorner has wrong, we have move it to the nearest corner"),I.y=Math.abs(I.y-y.y)>Math.abs(I.y-x.y)?x.y:y.y)}else{var G=Math.abs(I.y-M.y)*this.interactionParam.lockedAspect;I.x=(A.x-M.x)/Math.abs(A.x-M.x)*G+M.x,A.x>=x.x?I.x=Math.max(I.x,l.x):A.x<=y.x?I.x=Math.min(I.x,c.x):(console.warn("resultCorner has wrong, we have move it to the nearest corner"),I.x=Math.abs(I.x-y.x)>Math.abs(I.x-x.x)?x.x:y.x)}}this.result.normalizeExpandBox=tI(new to,[I,M]);break;case e.ImageInteractionType.DIRECTION_SCALE:var L=this.interactionParam.index,k=tf(s),R=k[L].clone(),F=this.result.normalizeExpandBox.getSize(),V=F.x,D=F.y;null!=(N=this.interactionParam).lockedAspect||(N.lockedAspect=V/D);var O=k[(L+1)%4].clone(),Y=L%2==0?"y":"x";if("x"===Y){if(1===L){if(a.x=Math.max(k[L].x+a.x,l.x)-R.x,t.shiftPressed||this.isLockScale){var N,H,U=this.result.normalizeExpandBox.getSize(),j=U.x,W=U.y;null!=(H=this.interactionParam).lockedAspect||(H.lockedAspect=j/W),a.y=a.x/this.interactionParam.lockedAspect;var Q=Math.max(O.y+a.y,l.y);a.y=Q-O.y,a.x=a.y*this.interactionParam.lockedAspect}else a.y=0}else if(3===L){if(a.x=Math.min(k[L].x+a.x,c.x)-R.x,t.shiftPressed||this.isLockScale){var K,Z=this.result.normalizeExpandBox.getSize(),X=Z.x,J=Z.y;null!=(K=this.interactionParam).lockedAspect||(K.lockedAspect=X/J),a.y=a.x/this.interactionParam.lockedAspect;var q=Math.min(O.y+a.y,c.y);a.y=q-O.y,a.x=a.y*this.interactionParam.lockedAspect}else a.y=0}}else if(2===L){if(a.y=Math.max(k[L].y+a.y,l.y)-R.y,t.shiftPressed||this.isLockScale){var _,$=this.result.normalizeExpandBox.getSize(),ee=$.x,et=$.y;null!=(_=this.interactionParam).lockedAspect||(_.lockedAspect=ee/et),a.x=-a.y*this.interactionParam.lockedAspect;var en=Math.min(O.x+a.x,c.x);a.x=en-O.x,a.y=-a.x/this.interactionParam.lockedAspect}else a.x=0}else if(0===L){if(a.y=Math.min(k[L].y+a.y,c.y)-R.y,t.shiftPressed||this.isLockScale){var ei,er=this.result.normalizeExpandBox.getSize(),eo=er.x,es=er.y;null!=(ei=this.interactionParam).lockedAspect||(ei.lockedAspect=eo/es),a.x=-a.y*this.interactionParam.lockedAspect;var ea=Math.max(O.x+a.x,l.x);a.x=ea-O.x,a.y=-a.x/this.interactionParam.lockedAspect}else a.x=0}var ec=[];k.forEach(function(e,t){var n=new e6;L===t?"y"===Y?n.copyFrom(e.clone().add(new e6(0,a.y))):n.copyFrom(e.clone().add(new e6(a.x,0))):L===(t+3)%4?n.copyFrom(e.clone().add(a)):L===(t+2)%4?"x"===Y?n.copyFrom(e.clone().add(new e6(0,a.y))):n.copyFrom(e.clone().add(new e6(a.x,0))):n.copyFrom(e.clone()),ec.push(n)}),this.result.normalizeExpandBox=tI(new to,ec)}return!0},r.getSelectionGeometry=function(){var e=this.selectedItems;if(1===e.length){var t=nd.getContainerSize(this._owner.getEngine().canvas.parentElement),n=t5(e[0],t);if(n)return{itemBox:t3(e[0],t),boxTransform:n}}},r.refreshInteractionType=function(t,n){var i=this;this.interactionParam.type=e.ImageInteractionType.NONE;var r=this.getSelectionGeometry();if(r){var o=tx(r.boxTransform),s=tx(r.boxTransform,this.result.normalizeExpandBox),a=!1,c=0;s.forEach(function(s,l){!a&&20>s.distance(t)&&(a=!0,i.interactionParam={type:e.ImageInteractionType.SCALE,index:l,box:i.result.normalizeExpandBox.clone(),startMouse:ty(r.boxTransform,n)},c=Math.PI/2*((l+3)%4)+Math.atan2(o[1].y-o[0].y,o[1].x-o[0].x))}),s.forEach(function(l,u){if(!a){var h=new tl(l.clone(),s[(u+1)%4]),d=0===h.distanceSq()?0:h.closestPointToPointParameter(t,!0),m={d:h.at(d).distance(t),t:d};m.d>=0&&m.d<=8&&m.t>=0&&m.t<=1&&(a=!0,i.interactionParam={type:e.ImageInteractionType.DIRECTION_SCALE,index:u,box:i.result.normalizeExpandBox.clone(),startMouse:ty(r.boxTransform,n)},c=Math.PI/2*((u+3)%4)+Math.PI/4+Math.atan2(o[1].y-o[0].y,o[1].x-o[0].x))}}),tM(r.boxTransform,t,this.result.normalizeExpandBox)&&!a&&(this.interactionParam={type:e.ImageInteractionType.MOVE,box:this.result.normalizeExpandBox.clone(),startMouse:ty(r.boxTransform,n)},a=!0),this.refreshCursorResult(this.interactionParam.type,c*te)}},tB(i,[{key:"config",get:function(){return this._owner.getConfigManager().get(nS)}},{key:"selectedItems",get:function(){return this._owner.getSelection().getSelectedPlayerItems()}},{key:"isLockScale",get:function(){return this._isLockScale},set:function(e){e!==this.isLockScale&&(this._isLockScale=e)}}]),i}(tY),iv=function(e){function t(){return e.apply(this,arguments)}return G(t,e),t.prototype.createGizmos=function(){return[new ig(this.owner)]},t}(tV),iy="sans-serif",ix=function(n){function i(){var t;return t=n.apply(this,arguments)||this,t.type=e.GizmoType.SPRITE_TEXT_EDIT,t.result=[],t.interactionParam={preSelected:-1,selected:-1},t.cachedCoords=null,t}G(i,n);var r=i.prototype;return r.onMouseMove=function(e){var t,n,i=this._owner.getMousePosition();((null==(t=this.cachedCoords)?void 0:t.x)!==i.x||(null==(n=this.cachedCoords)?void 0:n.y)!==i.y)&&(this.interactionParam.preSelected=this.computePreSelected(i),this.cachedCoords=i.clone())},r.onMouseLeave=function(){this.interactionParam.preSelected=-1,this.cachedCoords=null},r.onMouseDown=function(e){if(e.buttonIndex===t.MouseButton.Left&&!e.doubleClick){this.interactionParam.preSelected=this.computePreSelected(new e6(e.position.x,e.position.y));var n=this.result[this.interactionParam.preSelected];this.result.forEach(function(e){e.isEditing=e.id===(null==n?void 0:n.id)&&e.index===n.index}),this.interactionParam.preSelected=-1;var i=n?{id:n.id,index:n.index,text:n.text}:void 0;this._owner.emit("spritetextclick",{source:this,info:i}),e.accept()}},r.initResult=function(e){var t=this;e.forEach(function(e){var n,i=null!=(n=e.originBox)?n:t.getItemOriginBox(e.id);i&&e.info.forEach(function(n,r){var o=n.text,s=n.box,a=n.hasChanged,c=s.map(function(e){return k(e6,[].concat(e)).add(i.min)}),l=tE(i,tI(new to,c));t.result.push({id:e.id,index:r,hasChanged:a,text:o,box:l,isEditing:!1})})})},r.clearResultData=function(){this.result=[]},r.setSelected=function(e,t){var n=this.result.findIndex(function(n){return n.id===e&&n.index===t});if(n<0){console.warn("item "+e+" does not have index "+t+" text info.");return}this.interactionParam.selected=n},r.setText=function(e,t,n){var i=this.result.find(function(n){return n.id===e&&n.index===t});if(!i){console.warn("item "+e+" does not have index "+t+" text info.");return}i.text=n},r.setChangedState=function(e,t,n){var i=this.result.find(function(n){return n.id===e&&n.index===t});if(!i){console.warn("item "+e+" does not have index "+t+" text info.");return}i.hasChanged=n},r.setEditState=function(e,t,n){var i=this.result.find(function(n){return n.id===e&&n.index===t});if(!i){console.warn("item "+e+" does not have index "+t+" text info.");return}i.isEditing=n},r.draw=function(e){var t=this;if(0!==this.result.length){for(var n=nd.getViewScale(this._owner.getEngine()),i=this.config,r=i.editBoxColor,o=i.editBoxAlpha,s=i.editBoxPreSelectedColor,a=i.editBoxPreSelectedAlpha,c=i.hasChangedEditBoxColor,l=i.hasChangedEditBoxAlpha,u=i.hasChangedEditBoxPreSelectedColor,h=i.hasChangedEditBoxPreSelectedAlpha,d=i.editBoxLineColor,m=i.editBoxLineAlpha,f=i.editBoxLinePreSelectedAlpha,p=i.editBoxLinePreSelectedColor,g=i.hasChangedEditBoxLineColor,v=i.hasChangedEditBoxLineAlpha,y=i.hasChangedEditBoxLinePreSelectedColor,x=i.hasChangedEditBoxLinePreSelectedAlpha,w=i.textColor,A=this.interactionParam.preSelected,M=this.result.map(function(e,n){var i=nr(t._owner.getEngine().sceneServer.compositions[0],e.id);if(i){var r=t5(i,nd.getContainerSize(t._owner.getEngine().canvas.parentElement));if(r){var o=tx(r,e.box);return{value:e,viewCorners:o,isPreSelected:n===A}}}}).filter(function(e){return!!e}),I=function(t,n,i,r,o){nX(e,t,nD(n,i)),nW(e,t,nD(r,o),1)},C=0,S=[!1,!0];C<S.length;C++)!function(e,t){var n=t[e];M.filter(function(e){return e.value.hasChanged===n}).forEach(function(e){var t=e.viewCorners,i=e.isPreSelected;n?I(t,i?u:c,i?h:l,i?y:g,i?x:v):I(t,i?s:r,i?a:o,i?p:d,i?f:m)})}(C,S);var T=nD(w,1),b=14*n,E=16*n;M.forEach(function(t){var i=t.value,r=t.viewCorners;if(i.isEditing){var o=r[0],s=r[1],a=r[3],c=o.distance(s),l=o.distance(a),u=nj(i.text,c/n,Math.max(1,Math.floor(l/E)),14,iy);if(0!==u.length){var h=u.length*E,d=s.clone().subtract(o).normalize(),m=a.clone().subtract(o).normalize();n_(e,o,d,m,function(){var t=(l-h)/2;u.forEach(function(n,i){var r=nH(n,b,iy);e.drawText((c-r)/2,t+i*E,n,b,T,iy)})})}}})}},r.getItemOriginBox=function(e){var t=nr(this._owner.getEngine().sceneServer.compositions[0],e);if(t)return t3(t,nd.getContainerSize(this._owner.getEngine().canvas.parentElement))},r.computePreSelected=function(e){for(var t=0;t<this.result.length;t++){var n=this.result[t],i=nr(this._owner.getEngine().sceneServer.compositions[0],n.id);if(i){var r=t5(i,nd.getContainerSize(this._owner.getEngine().canvas.parentElement));if(r&&tM(r,e,n.box))return t}}return -1},tB(i,[{key:"config",get:function(){return this._owner.getConfigManager().get(nb)}}]),i}(tY),iw=function(e){function t(){return e.apply(this,arguments)}return G(t,e),t.prototype.createGizmos=function(){return[new ix(this.owner)]},t}(tV),iA=function(n){function i(t){var i;return(i=n.call(this,t)||this).type=e.GizmoType.MASK,i.mode="paint",i.cursorResult={type:e.GestureCursorType.NORMAL,angle:0},i.result={lines:[]},i.maskImageLoadVersion=0,i.previewCanvas=null,i.maskTexture=null,i.mouseGrabbed=!1,i.configOff=t.getConfigManager().onChange(nT,function(e){i.onConfigChange(e)}),i.refreshMaskImage(i.config.maskImage),i}G(i,n);var r=i.prototype;return r.onMouseMove=function(e){var t=this.getSelectionTransform();if(this.mouseGrabbed){var n=this.updateGrab(e,t);this.refreshCursorResult(t),this._owner.setCursor(this.cursorResult),n&&e.accept();return}this.refreshCursorResult(t),this._owner.setCursor(this.cursorResult)},r.onMouseDrag=function(e){if(this.mouseGrabbed){var t=this.getSelectionTransform(),n=this.updateGrab(e,t);this.refreshCursorResult(t),this._owner.setCursor(this.cursorResult),n&&e.accept()}},r.onMouseDown=function(e){if(e.buttonIndex===t.MouseButton.Left&&!e.doubleClick){var n=this.getSelectionTransform();if(n){var i=new e6(e.position.x,e.position.y);if(tM(n,i)){if("box-paint"===this.mode||"box-erase"===this.mode){this._owner.setCursor(this.cursorResult),this.mouseGrabbed=!0,this._owner.emit("actionstart",{source:this});var r=this.toNormalized(i,n);this.result.lines.push({type:"box-paint"===this.mode?"paint":"erase",shape:"rect",brushSize:0,points:[r,r.clone()]}),e.accept();return}this._owner.setCursor(this.cursorResult),this.mouseGrabbed=!0,this._owner.emit("actionstart",{source:this}),this.result.lines.push({type:this.mode,brushSize:this.config.brushSize,points:[]}),e.accept()}}}},r.onMouseUp=function(e){if(this.mouseGrabbed){this.mouseGrabbed=!1;var t=this.result.lines[this.result.lines.length-1];if((null==t?void 0:t.shape)==="rect"){var n,i,r,o,s,a,c=t.points,l=c[0],u=c[1],h=this.getSelectionTransform(),d=h?tx(h):void 0,m=Math.abs((null!=(n=null==l?void 0:l.x)?n:0)-(null!=(i=null==u?void 0:u.x)?i:0))*(null!=(r=null==d?void 0:d[0].distance(d[1]))?r:0),f=Math.abs((null!=(o=null==l?void 0:l.y)?o:0)-(null!=(s=null==u?void 0:u.y)?s:0))*(null!=(a=null==d?void 0:d[0].distance(d[3]))?a:0);m<.5&&f<.5&&this.result.lines.pop()}else(null==t?void 0:t.points.length)===0&&this.result.lines.pop();this._owner.emit("actioncommit",{source:this}),this._owner.setCursor(this.cursorResult),e.accept()}},r.dispose=function(){null==this.configOff||this.configOff.call(this),this.configOff=void 0,this.maskImageLoadVersion++,this.maskImage=void 0,this.clearRenderObjects(),n.prototype.dispose.call(this)},r.onUpdate=function(){this.renderTransform=this.getSelectionTransform(),this.refreshCursorResult(this.renderTransform)},r.draw=function(e){var n=this,i=this.renderTransform;if(i){var r=this.config,o=r.brushAlpha,s=r.boxLineWidth,a=r.boxLineColor,c=r.boxLineAlpha,l=tx(i),u=l[0],h=l[1],d=l[3],m=Math.ceil(u.distance(h)),f=Math.ceil(u.distance(d)),p=h.clone().subtract(u).normalize(),g=d.clone().subtract(u).normalize();if(m>0&&f>0){var v=this.renderPreviewToCanvas(m,f);if(v&&(this.maskTexture&&(this.maskTexture.width!==m||this.maskTexture.height!==f)&&this.clearRenderObjects(),!this.maskTexture||this.maskTexture.isDestroyed?this.maskTexture=t.Texture.create(e.engine,{sourceType:t.TextureSourceType.image,image:v,flipY:!0}):this.maskTexture.updateSource({sourceType:t.TextureSourceType.image,image:v,flipY:!0}),this.maskTexture.width=m,this.maskTexture.height=f,n_(e,u,p,g,function(){e.drawTexture(0,0,m,f,n.maskTexture,void 0,nD(16777215,o))})),this.maskImage){var y=this.getMask();y&&(this.maskTexture&&(this.maskTexture.width!==m||this.maskTexture.height!==f)&&this.clearRenderObjects(),!this.maskTexture||this.maskTexture.isDestroyed?this.maskTexture=t.Texture.create(e.engine,{sourceType:t.TextureSourceType.image,image:y,flipY:!0}):this.maskTexture.updateSource({sourceType:t.TextureSourceType.image,image:y,flipY:!0}),this.maskTexture.width=m,this.maskTexture.height=f,n_(e,u,p,g,function(){e.drawTexture(0,0,m,f,n.maskTexture,void 0,nD(16777215,o))}))}}if(nW(e,l,nD(a,c),s),this.mouseGrabbed){var x=this.result.lines[this.result.lines.length-1];if((null==x?void 0:x.shape)==="rect"&&x.points.length>=2){var w=x.points,A=w[0],M=w[1];A&&M&&nW(e,tx(i,new to(new e6(Math.min(A.x,M.x),Math.min(A.y,M.y)),new e6(Math.max(A.x,M.x),Math.max(A.y,M.y)))),nD(a,c),s)}}}},r.setMode=function(e){this.mode=e},r.close=function(){this._owner.getConfigManager().set(nT,{maskImage:""}),this.result.lines=[],this.clearRenderObjects()},r.clearMask=function(){this.result.lines=[],this.maskImage=void 0},r.loadMaskImage=function(e){return new Promise(function(t,n){var i=new Image;i.crossOrigin="anonymous",i.onload=function(){t(i)},i.onerror=function(e){n(Error("Failed to load mask image."))},i.src=e})},r.getMask=function(){var e=this.getSelectionTransform();if(!e)return null;var t=tx(e),n=Math.ceil(t[0].distance(t[1])),i=Math.ceil(t[0].distance(t[3])),r=document.createElement("canvas");r.width=n,r.height=i;var o=r.getContext("2d");if(!o)return null;var s=this.config,a=s.maskColor,c=s.maskBackgroundColor,l=this.maskImage;if(0===this.result.lines.length&&!l)return null;var u="#"+a.toString(16).padStart(6,"0"),h="#"+c.toString(16).padStart(6,"0");if(o.fillStyle=h,o.fillRect(0,0,n,i),l)try{o.drawImage(l,0,0,n,i);for(var d=o.getImageData(0,0,n,i),m=d.data,f=a>>16&255,p=a>>8&255,g=255&a,v=c>>16&255,y=c>>8&255,x=255&c,w=0;w<m.length;w+=4){var A=m[w],M=m[w+1],I=m[w+2];(A+M+I)/3>128?(m[w]=f,m[w+1]=p,m[w+2]=g):(m[w]=v,m[w+1]=y,m[w+2]=x)}o.putImageData(d,0,0)}catch(e){console.warn("Failed to load mask image:",e)}for(var C,S=nd.getViewScale(this._owner.getEngine()),T=D(this.result.lines);!(C=T()).done;){var b=C.value;if(b&&0!==b.points.length){if("rect"===b.shape){var E=b.points[0],P=b.points[1];if(!E||!P)continue;var z=Math.min(E.x,P.x)*n,B=Math.min(E.y,P.y)*i,G=Math.max(E.x,P.x)*n,L=Math.max(E.y,P.y)*i;o.globalCompositeOperation="source-over",o.fillStyle="paint"===b.type?u:h,o.fillRect(z,B,Math.max(1,G-z),Math.max(1,L-B));continue}o.lineWidth=b.brushSize*S,o.lineCap="round",o.lineJoin="round",o.globalCompositeOperation="source-over","paint"===b.type?o.strokeStyle=u:o.strokeStyle=h,o.beginPath();for(var k=0;k<b.points.length;k++){var R=b.points[k];if(R){var F=R.x*n,V=R.y*i;0===k?o.moveTo(F,V):o.lineTo(F,V)}}o.stroke()}}return r},r.getMaskDataUrl=function(){var e;return null==(e=this.getMask())?void 0:e.toDataURL()},r.onConfigChange=function(e){e.previous.maskImage!==e.current.maskImage&&this.refreshMaskImage(e.current.maskImage)},r.refreshMaskImage=function(e){var t=this;return z(function(){var n,i,r;return Y(this,function(o){switch(o.label){case 0:if(n=++t.maskImageLoadVersion,t.maskImage=void 0,t.clearRenderObjects(),!e)return[2];o.label=1;case 1:return o.trys.push([1,3,,4]),[4,t.loadMaskImage(e)];case 2:if(i=o.sent(),n!==t.maskImageLoadVersion||t.config.maskImage!==e)return[2];return t.maskImage=i,[3,4];case 3:return r=o.sent(),n===t.maskImageLoadVersion&&console.warn("[MaskGizmo] Failed to load mask image.",r),[3,4];case 4:return[2]}})})()},r.updateGrab=function(e,t){if(!this.mouseGrabbed)return!1;if(!t)return!0;var n=this.result.lines[this.result.lines.length-1];if((null==n?void 0:n.shape)==="rect")return n.points[1]=this.toNormalized(new e6(e.position.x,e.position.y),t),!0;var i=ty(t,new e6(e.position.x,e.position.y));return null==n||n.points.push(i),!0},r.toNormalized=function(e,t){return ty(t,e).clamp(new e6,new e6(1,1))},r.getSelectionTransform=function(){var e=this.selectedItems;if(1===e.length){var t=nd.getContainerSize(this._owner.getEngine().canvas.parentElement);return t5(e[0],t)}},r.clearRenderObjects=function(){this.maskTexture&&!this.maskTexture.isDestroyed&&this.maskTexture.dispose(),this.maskTexture=null,this.previewCanvas=null},r.renderPreviewToCanvas=function(e,t){null!=this.previewCanvas||(this.previewCanvas=document.createElement("canvas"));var n=this.previewCanvas;(n.width!==e||n.height!==t)&&(n.width=e,n.height=t);var i=n.getContext("2d");if(!i)return null;var r="#"+this.config.brushColor.toString(16).padStart(6,"0"),o=nd.getViewScale(this._owner.getEngine());i.clearRect(0,0,e,t),this.maskImage&&(i.save(),i.fillStyle=r,i.fillRect(0,0,e,t),i.globalCompositeOperation="destination-in",i.drawImage(this.maskImage,0,0,e,t),i.restore());for(var s,a=D(this.result.lines);!(s=a()).done;){var c=s.value;if(c&&0!==c.points.length){if("rect"===c.shape){var l=c.points[0],u=c.points[1];if(l&&u){var h=Math.min(l.x,u.x)*e,d=Math.min(l.y,u.y)*t,m=Math.max(l.x,u.x)*e,f=Math.max(l.y,u.y)*t;(m-h>.5||f-d>.5)&&(i.save(),i.fillStyle=r,i.globalCompositeOperation="paint"===c.type?"source-over":"destination-out",i.fillRect(h,d,m-h,f-d),i.restore())}continue}i.save(),i.lineWidth=c.brushSize*o,i.lineCap="round",i.lineJoin="round",i.strokeStyle=r,i.globalCompositeOperation="paint"===c.type?"source-over":"destination-out",i.beginPath();for(var p=0;p<c.points.length;p++){var g=c.points[p];if(g){var v=g.x*e,y=g.y*t;0===p?i.moveTo(v,y):i.lineTo(v,y)}}i.stroke(),i.restore()}}return n},r.refreshCursorResult=function(t){var n=this._owner.getMousePosition();if(this.cursorResult={type:e.GestureCursorType.NORMAL,angle:0},n&&t&&tM(t,n)){if("box-paint"===this.mode||"box-erase"===this.mode){this.cursorResult={type:e.GestureCursorType.BOX_SELECT,angle:0};return}this.cursorResult={type:e.GestureCursorType.CIRCLE,angle:0,radius:this.config.brushSize*nd.getViewScale(this._owner.getEngine())/2}}},tB(i,[{key:"selectedItems",get:function(){return this._owner.getSelection().getSelectedPlayerItems()}},{key:"config",get:function(){return this._owner.getConfigManager().get(nT)}}]),i}(tY),iM=function(e){function t(){return e.apply(this,arguments)}return G(t,e),t.prototype.createGizmos=function(){return[new iA(this.owner)]},t}(tV);function iI(e,t,n,i){return Math.hypot(n-e,i-t)>=5}e.ItemCreateType=void 0,(v=e.ItemCreateType||(e.ItemCreateType={})).NONE="none",v.TEXT="text",v.VIDEO_GENERATOR="video-generator",v.IMAGE_GENERATOR="image-generator",v.FRAME="frame";var iC=function(n){function i(){var t;return t=n.apply(this,arguments)||this,t.type="item-create",t._createType="none",t.cursorResult={type:e.GestureCursorType.NORMAL,angle:0},t.dragStartPoint=null,t.dragStartViewPoint=null,t.pressStartedAt=0,t.mouseGrabbed=!1,t.frameBox=null,t.frameChildren=[],t.interactiveChildrenBoxes=new Map,t.isFixedWidthText=!1,t.textDragDirection=1,t.textBox=null,t.createItemId=null,t.dragCreationStarted=!1,t}G(i,n);var r=i.prototype;return r.onMouseMove=function(e){if(this.mouseGrabbed){var t=this.updateGrab(e);this._owner.setCursor(this.cursorResult),t&&e.accept();return}this._owner.setCursor(this.cursorResult)},r.onMouseDrag=function(e){if(this.mouseGrabbed){var t=this.updateGrab(e);this._owner.setCursor(this.cursorResult),t&&e.accept()}},r.onMouseDown=function(e){e.buttonIndex===t.MouseButton.Left&&(this._owner.setCursor(this.cursorResult),this.mouseGrabbed=!0,this.dragStartViewPoint=new e6(e.position.x,e.position.y),this.dragStartPoint=new e6(e.position.x,e.position.y),this.pressStartedAt=Date.now(),this.frameBox=null,this.frameChildren=[],this.isFixedWidthText=!1,this.textDragDirection=1,this.textBox=null,this.createItemId=t.generateGUID(),this.dragCreationStarted=!1,"frame"===this._createType&&this.refreshInteractiveChildrenBoxes(),e.accept())},r.onMouseUp=function(e){if(this.mouseGrabbed){if(e.isCanceled()){var t=this.getCurrentDragCreateInfo();this.dragCreationStarted&&t&&this._owner.emit("actioncommit",{source:this,createInfo:t,canceled:!0}),this.resetInteractionState(),this._owner.setCursor(this.cursorResult),e.accept();return}"text"===this._createType&&this.updateTextDrag(e,!0);var n=this.getCurrentDragCreateInfo();if(this.dragCreationStarted&&n){this._owner.emit("actioncommit",{source:this,createInfo:n}),this.resetInteractionState(),this._owner.setCursor(this.cursorResult),e.accept();return}var i=this.createItemId;switch(this._createType){case"frame":if(this.frameBox){this._owner.emit("actioncommit",{source:this,createInfo:this.getFrameDragCreateInfo()});break}var r=this.viewPositionToPixel(this.dragStartViewPoint),o={position:[r.x,r.y],size:[1024,1024],children:[]};this._owner.emit("actioncommit",{source:this,createInfo:{info:o,type:"frame",id:i,position:o.position}});break;case"text":var s=this.viewPositionToPixel(this.dragStartViewPoint);this._owner.emit("actioncommit",{source:this,createInfo:{type:"text",id:i,position:[s.x,s.y]}});break;case"image-generator":case"video-generator":var a=tq(new e6(e.position.x,e.position.y),nd.getContainerSize(this._owner.getEngine().canvas.parentElement),nd.getViewScale(this._owner.getEngine()),nd.getViewportTranslation(this._owner.getEngine())),c=[a.x,a.y];this._owner.emit("actioncommit",{source:this,createInfo:{type:this._createType,id:i,position:c}})}this.resetInteractionState(),this._owner.setCursor(this.cursorResult),e.accept()}},r.refreshCursorResult=function(){switch(this._createType){case"text":this.cursorResult={type:e.GestureCursorType.TEXT_CREATE,angle:0};break;case"frame":this.cursorResult={type:e.GestureCursorType.FRAME_CREATE,angle:0};break;case"none":case"image-generator":case"video-generator":this.cursorResult={type:e.GestureCursorType.NORMAL,angle:0}}},r.refreshInteractiveChildrenBoxes=function(){var e=this;this.interactiveChildrenBoxes.clear();var n=this._owner.getEngine().sceneServer.compositions[0];if(null==n?void 0:n.items.length){var i=[],r=[];n.items.forEach(function(e){if("ModelPluginItem"!==e.name&&("动效"===e.name&&void 0!==e.getComponent(t.FrameComponent)&&i.push(e.getInstanceId()),t$(e))){var n;r.push(e.getInstanceId()),null==(n=e.children)||n.forEach(function(e){r.push(e.getInstanceId())})}});var o=[].concat(i,r);n.items.forEach(function(t){var n=t.getInstanceId();if(!o.includes(n)){var i=t3(t,nd.getContainerSize(e._owner.getEngine().canvas.parentElement));e.interactiveChildrenBoxes.set(n,i)}})}},r.draw=function(e){var t=this,n="text"===this._createType,i="frame"===this._createType?this.frameBox:n?this.getTextPreviewBox():null;if(!(!this.mouseGrabbed||!i||i.isEmpty())){var r=this.config,o=r.frameBorderAlpha,s=r.frameBorderColor,a=r.frameBorderWidth;if(nK(e,i,n?nD(3900150,1):nD(s,o),n?2:a),"frame"===this._createType){var c=this._owner.getConfigManager().get(nA),l=nD(c.preSelectedColor,1);this.frameChildren.forEach(function(n){var i=t.interactiveChildrenBoxes.get(n);i&&nK(e,i,l,c.preSelectedWidth)})}}},r.dispose=function(){this.resetInteractionState(),n.prototype.dispose.call(this)},r.updateGrab=function(e){if(!this.mouseGrabbed)return!1;switch(this._createType){case"frame":this.updateFrameDrag(e);break;case"text":this.updateTextDrag(e)}return!0},r.updateFrameDrag=function(e){var t=this;if(this.dragStartPoint&&this.dragStartViewPoint){var n=this.getCurrentViewPoint(e),i=n.x-this.dragStartViewPoint.x,r=n.y-this.dragStartViewPoint.y,o=new e6(this.dragStartViewPoint.x+Math.sign(i||1)*Math.max(Math.abs(i),1),this.dragStartViewPoint.y+Math.sign(r||1)*Math.max(Math.abs(r),1));this.frameBox=this.createBox(this.dragStartViewPoint,o),this.frameChildren=[],this.interactiveChildrenBoxes.forEach(function(e,n){var i;(null==(i=t.frameBox)?void 0:i.containsBox(e))&&"ModelPluginItem"!==n&&t.frameChildren.push(n)})}},r.updateTextDrag=function(e,t){if(void 0===t&&(t=!1),this.dragStartPoint&&this.dragStartViewPoint){var n=this.getCurrentViewPoint(e),i=Math.abs(n.x-this.dragStartViewPoint.x);if(!this.isFixedWidthText){if(!t&&Date.now()-this.pressStartedAt<150||i<=30)return;this.isFixedWidthText=!0}var r=n.x-this.dragStartViewPoint.x;0!==r&&(this.textDragDirection=Math.sign(r));var o=this.dragStartViewPoint.x+this.textDragDirection*Math.max(i,1),s=60*nd.getViewScale(this._owner.getEngine());this.textBox=this.createBox(new e6(this.dragStartViewPoint.x,this.dragStartViewPoint.y-s/2),new e6(o,this.dragStartViewPoint.y+s/2)),this.emitDragCreate(this.getTextDragCreateInfo())}},r.emitDragCreate=function(e){var t=this.dragCreationStarted?"actionupdate":"actionstart";this.dragCreationStarted=!0,this._owner.emit(t,{source:this,createInfo:e})},r.getFrameDragCreateInfo=function(){var e=this.frameBox,t=this.viewPositionToPixel(e.getCenter()),n=tJ(e.getSize(),nd.getViewScale(this._owner.getEngine())),i={position:[t.x,t.y],size:[n.x,n.y],children:[].concat(this.frameChildren)};return{type:"frame",id:this.createItemId,position:i.position,info:i}},r.getTextDragCreateInfo=function(){var e=this.textBox,t=this.viewPositionToPixel(e.getCenter()),n=tJ(e.getSize(),nd.getViewScale(this._owner.getEngine())).x,i={position:[t.x,t.y],width:n};return{type:"text",id:this.createItemId,position:i.position,info:i}},r.getCurrentDragCreateInfo=function(){if("text"===this._createType&&this.textBox)return this.getTextDragCreateInfo()},r.getTextPreviewBox=function(){if(this.dragCreationStarted){var e=this._owner.getSelection().getSelectedPlayerItems(),n=1===e.length?e[0]:void 0;if((null==n?void 0:n.type)===t.spec.ItemType.text){var i=t3(n,nd.getContainerSize(this._owner.getEngine().canvas.parentElement));if(!i.isEmpty())return i}}return this.textBox},r.getCurrentViewPoint=function(e){var t=new e6(e.position.x-this.dragStartPoint.x,e.position.y-this.dragStartPoint.y);return this.dragStartViewPoint.clone().add(t)},r.createBox=function(e,t){return new to(new e6(Math.min(e.x,t.x),Math.min(e.y,t.y)),new e6(Math.max(e.x,t.x),Math.max(e.y,t.y)))},r.viewPositionToPixel=function(e){var t=this._owner.getEngine();return tq(e,nd.getContainerSize(t.canvas.parentElement),nd.getViewScale(t),nd.getViewportTranslation(t))},r.resetInteractionState=function(){this.mouseGrabbed=!1,this.dragStartPoint=null,this.dragStartViewPoint=null,this.pressStartedAt=0,this.frameBox=null,this.frameChildren=[],this.interactiveChildrenBoxes.clear(),this.isFixedWidthText=!1,this.textDragDirection=1,this.textBox=null,this.createItemId=null,this.dragCreationStarted=!1},tB(i,[{key:"config",get:function(){return this._owner.getConfigManager().get(nP)}},{key:"createType",get:function(){return this._createType},set:function(e){e!==this._createType&&(this._createType=e,this.refreshCursorResult())}}]),i}(tY),iS=function(t){function n(){var n;return n=t.apply(this,arguments)||this,n.createType=e.ItemCreateType.NONE,n}return G(n,t),n.prototype.createGizmos=function(){var e=new iC(this.owner);return e.createType=this.createType,[e]},n}(tV);function iT(e,t){if(Object.is(e,t))return!0;if(Array.isArray(e)||Array.isArray(t))return Array.isArray(e)&&Array.isArray(t)&&e.length===t.length&&e.every(function(e,n){return iT(e,t[n])});if(!e||!t||"object"!=typeof e||"object"!=typeof t)return!1;var n=Object.keys(e);return n.length===Object.keys(t).length&&n.every(function(n){return iT(e[n],t[n])})}var ib=function(e){function t(){var t;return t=e.apply(this,arguments)||this,t.values=new Map,t.definitions=new Map,t}G(t,e);var n=t.prototype;return n.get=function(e){this.assertDefinition(e);var t=this.values.get(e.id);return t||(t=nf(nm(e.defaults)),this.values.set(e.id,t)),t},n.set=function(e,t){this.assertDefinition(e);var n=this.get(e),i=null==e.validate?void 0:e.validate.call(e,t);if(!e.validate||i){var r=null!=i?i:t,o=nf(nm(X({},n,r)));if(!iT(n,o)){this.values.set(e.id,o);var s={id:e.id,partial:nf(nm(r)),previous:n,current:o};this.emit("configChange",s)}}},n.reset=function(e){this.assertDefinition(e);var t=this.get(e),n=nf(nm(e.defaults));if(!iT(t,n)){this.values.set(e.id,n);var i={id:e.id,partial:{},previous:t,current:n};this.emit("configChange",i)}},n.onChange=function(e,t){return this.assertDefinition(e),this.on("configChange",function(n){n.id===e.id&&t({partial:n.partial,previous:n.previous,current:n.current})})},n.assertDefinition=function(e){var t=this.definitions.get(e.id);if(t&&t!==e)throw Error('[ConfigManager] Duplicate config id "'+e.id+'".');this.definitions.set(e.id,e)},t}(t.EventEmitter),iE=function(){function e(){this.configs=new ib,this._activeGizmos=[]}var t=e.prototype;return t.get=function(e){return this.findGizmosByType(e)[0]},t.onUpdate=function(){for(var e,t=D(this._activeGizmos);!(e=t()).done;)e.value.onUpdate()},t.dispose=function(){for(var e,t=D(this._activeGizmos);!(e=t()).done;)e.value.dispose();this._activeGizmos=[]},t.findGizmosByType=function(e){return this.getAllManagedGizmos().filter(function(t){return t.type===e})},t.getAllManagedGizmos=function(){return Array.from(new Set([].concat(this._activeGizmos,this.getMultiplexCandidates())))},t.getMultiplexCandidates=function(){var e=this._activeGizmos.find(function(e){return"click-drag-multiplex"===e.type});if(!e)return[];var t=e.auxiliaryBehavior();return Array.from(new Set([].concat(e.clickCandidates(),e.dragCandidates(),t?[t]:[])))},tB(e,[{key:"activeGizmos",get:function(){return this._activeGizmos},set:function(e){this._activeGizmos=[].concat(e)}}]),e}(),iP=function(e){function t(){var t;return t=e.apply(this,arguments)||this,t.items=new Map,t}G(t,e);var n=t.prototype;return n.get=function(e){return this.items.get(e)},n.add=function(e,t){var n,i;!this.items.has(e)&&(this.items.set(e,{tip:{text:null!=(i=null==t?void 0:t.text)?i:"",position:(null==t?void 0:t.position)?new e6(t.position.x,t.position.y):void 0},loadingBox:null==t?void 0:null==(n=t.loadingBox)?void 0:n.clone()}),this.emitChange({addedIds:[e],removedIds:[],updatedIds:[]}),(null==t?void 0:t.clearSelected)&&this.emit("removeselecteditems",[e]))},n.delete=function(e){this.items.delete(e)&&this.emitChange({addedIds:[],removedIds:[e],updatedIds:[]})},n.update=function(e,t){var n=this.items.get(e);if(!n){console.warn("Loading item "+e+" not found.");return}void 0!==t.text&&(n.tip.text=t.text),void 0!==t.position&&(n.tip.position=new e6(t.position.x,t.position.y)),this.emitChange({addedIds:[],removedIds:[],updatedIds:[e]})},n.emitChange=function(e){this.emit("change",X({ids:this.ids},e))},tB(t,[{key:"ids",get:function(){return Array.from(this.items.keys())}}]),t}(t.EventEmitter);function iz(e){for(var t,n=new Map,i=D(e);!(t=i()).done;){var r,o=t.value,s=null!=(r=o.row)?r:0,a=n.get(s);a?a.push(o):n.set(s,[o])}return n}function iB(e,t){void 0===t&&(t={});var n,i,r=null!=(n=t.padding)?n:20,o=null!=(i=t.gap)?i:5;if(0===e.length)return{items:[],size:[2*r,2*r]};var s=e.some(function(e){return void 0!==e.row})?function(e,t,n){for(var i,r=[],o=iz(e),s=Array.from(o.keys()).sort(function(e,t){return e-t}),a=t,c=t,l=D(s);!(i=l()).done;)!function(){for(var e,s,l,u=i.value,h=null!=(s=o.get(u))?s:[],d=h.filter(function(e){return void 0!==e.column}),m=h.filter(function(e){return void 0===e.column}),f=(e=Math).max.apply(e,[].concat(h.map(function(e){return e.box.getSize().y}),[0])),p=new Map,g=D([].concat(d).sort(function(e,t){var n,i;return(null!=(n=e.column)?n:0)-(null!=(i=t.column)?i:0)}));!(l=g()).done;){for(var v,y=l.value,x=null!=(v=y.column)?v:0;p.has(x);)x++;p.set(x,y)}for(var w,A=0,M=D(m);!(w=M()).done;){for(var I=w.value;p.has(A);)A++;p.set(A++,I)}for(var C,S=t,T=D(Array.from(p.keys()).sort(function(e,t){return e-t}));!(C=T()).done;){var b=C.value,E=p.get(b),P=E.box.getSize(),z=P.x,B=P.y;r.push({id:E.id,position:[S+z/2,a+B/2],x:S+z/2,y:a+B/2,row:u,column:b}),c=Math.max(c,S+z+t),S+=z+n}a+=f+n}();return{items:r,size:[Math.max(c,2*t),Math.max(a-n+t,2*t)]}}(e,r,o):function(e,t,n,i){for(var r,o=[],s=iz(e),a=Array.from(s.keys()).sort(function(e,t){return e-t}),c=t,l=t,u=D(a);!(r=u()).done;){for(var h,d,m=r.value,f=null!=(h=s.get(m))?h:[],p=t,g=0,v=0,y=1,x=D(f);!(d=x()).done;){var w=d.value,A=w.box.getSize(),M=A.x,I=A.y,C=(null==i?void 0:i.maxRowWidth)!==void 0&&p+M+t>i.maxRowWidth&&p>t;C&&(null==i?void 0:i.maxRowCount)!==void 0&&y>=i.maxRowCount&&(C=!1),C?(c+=g+n,p=t,g=I,v=0,y++):g=Math.max(g,I),o.push({id:w.id,position:[p+M/2,c+I/2],x:p+M/2,y:c+I/2,row:m,column:v}),l=Math.max(l,p+M+t),p+=M+n,v++}f.length>0&&(c+=g+n)}return{items:o,size:[Math.max(l,2*t),Math.max(c-n+t,2*t)]}}(e,r,o,t.config);return{items:s.items.map(function(e){return{id:e.id,position:e.position,row:e.row,column:e.column}}),size:s.size}}function iG(e){return{row:e.row,column:e.column,position:e.position?[].concat(e.position):void 0}}function iL(e){for(var t,n={},i=null!=e?e:{},r=D(Object.keys(i));!(t=r()).done;){var o=t.value;n[o]=iG(i[o])}return n}function ik(t){var n,i;return{id:t.id,layoutMode:null!=(n=t.layoutMode)?n:e.FrameLayoutMode.FREE,children:[].concat(null!=(i=t.children)?i:[]),autoLayoutConfig:t.autoLayoutConfig?X({},t.autoLayoutConfig):void 0,layoutInfos:iL(t.layoutInfos)}}var iR=function(){function e(e){this.records=new Map,this.boxes=new Map,this.engine=e}var t=e.prototype;return t.upsertFrame=function(e){var t=ik(e);return this.records.set(t.id,t),t},t.ensureFrame=function(e){var t;return null!=(t=this.records.get(e.id))?t:this.upsertFrame(e)},t.deleteFrame=function(e){return this.boxes.delete(e),this.records.delete(e)},t.clear=function(){this.records.clear(),this.boxes.clear()},t.hydrate=function(e){this.clear();for(var t,n=D(e);!(t=n()).done;){var i=t.value;this.upsertFrame(i)}},t.snapshot=function(){return Array.from(this.records.values(),ik)},t.getFrame=function(e){return this.records.get(e)},t.getFrames=function(){return Array.from(this.records.values())},t.setLayoutMode=function(e,t){var n=this.records.get(e);n&&(n.layoutMode=t)},t.setChildren=function(e,t){var n=this.records.get(e);n&&(n.children=[].concat(t))},t.addChild=function(e,t){var n=this.records.get(e);return!(!n||n.children.includes(t))&&(n.children.push(t),!0)},t.removeChild=function(e,t){var n=this.records.get(e);if(!n)return!1;var i=n.children.indexOf(t);if(i<0)return!1;n.children.splice(i,1);var r=X({},n.layoutInfos);return delete r[t],n.layoutInfos=r,!0},t.setLayoutInfos=function(e,t){var n=this.records.get(e);n&&(n.layoutInfos=iL(t))},t.setChildLayoutInfo=function(e,t,n){var i=this.records.get(e);i&&(i.layoutInfos[t]=iG(n))},t.setAutoLayoutConfig=function(e,t){var n=this.records.get(e);n&&(n.autoLayoutConfig=t?X({},t):void 0)},t.computeAutoLayout=function(e,t,n){void 0===n&&(n={});var i=this.records.get(e);if(i)return iB(t.map(function(e){var t,n;return X({},e,{row:null==(t=i.layoutInfos[e.id])?void 0:t.row,column:null==(n=i.layoutInfos[e.id])?void 0:n.column})}),X({},n,{config:i.autoLayoutConfig}))},t.computeLayoutInfosAfterReorder=function(e,t,n,i,r,o){var s=this.records.get(e);if(null==s?void 0:s.children.includes(t)){var a=iL(s.layoutInfos);if(n!==r||i!==o){if(n===r)for(var c,l=D(Object.entries(a));!(c=l()).done;){var u=c.value,h=u[0],d=u[1];h!==t&&d.row===n&&(i<o&&d.column>i&&d.column<=o?d.column--:i>o&&d.column>=o&&d.column<i&&d.column++)}else{for(var m,f=D(Object.entries(a));!(m=f()).done;){var p=m.value,g=p[0],v=p[1];g!==t&&v.row===n&&v.column>i&&v.column--}for(var y,x=Object.entries(a).filter(function(e){var n=e[0],i=e[1];return n!==t&&i.row===r&&i.column>=o}).sort(function(e,t){return t[1].column-e[1].column}),w=D(x);!(y=w()).done;){var A=y.value[1];A.column++}}}return a[t]=X({},a[t],{row:r,column:o}),a}},t.onUpdate=function(){this.updateViewBoxes()},t.updateViewBoxes=function(){for(var e,t=this.engine,n=nd.getContainerSize(t.canvas.parentElement),i=D(this.records.values());!(e=i()).done;){var r=e.value,o=nr(t.sceneServer.compositions[0],r.id);this.boxes.set(r.id,o&&t$(o)?t3(o,n):new to)}for(var s,a=D(Array.from(this.boxes.keys()));!(s=a()).done;){var c=s.value;this.records.has(c)||this.boxes.delete(c)}},t.getViewInfos=function(){var e=this;return Array.from(this.records.values(),function(t){return e.toViewInfo(t)})},t.getViewInfo=function(e){var t=this.records.get(e);return t?this.toViewInfo(t):void 0},t.getParentFrame=function(e){return Array.from(this.records.values()).find(function(t){return t.children.includes(e)})},t.findFrameAt=function(e){return this.getViewInfos().find(function(t){return t.box.containsPoint(e)})},t.toViewInfo=function(e){var t;return{id:e.id,box:null!=(t=this.boxes.get(e.id))?t:new to,layoutMode:e.layoutMode,children:[].concat(e.children),layoutInfos:iL(e.layoutInfos)}},e}(),iF=function(e){function r(t,n){var i;return void 0===n&&(n={}),(i=e.call(this)||this).interactionStartSelectedIds=[],i.ignoreIds=["sceneRoot"],i.ignoreNames=[],i._selectedIds=[],i.engine=t,i.hoveringResults=n,i}G(r,e);var o=r.prototype;return o.getEffectsEditItemId=function(){return this._effectsEditItemId},o.getFocusedGroupId=function(){return this._focusedGroupId},o.setFocusedGroup=function(e){if(!e){var t=void 0!==this._focusedGroupId;this._focusedGroupId=void 0,t&&this.emit("focuschange");return}var n=nr(this.engine.sceneServer.compositions[0],e);if(!n||!this.isSelectableGroup(n))throw Error("Selection.setFocusedGroup: Group with id "+e+" does not exist");this._focusedGroupId!==e&&(this._focusedGroupId=e,this.emit("focuschange"))},o.enterEffectsEditScope=function(e){var t=this._effectsEditItemId!==e;this._effectsEditItemId=e,this.setFocusedGroup(),t&&this.emit("focuschange")},o.leaveEffectsEditScope=function(){var e=void 0!==this._effectsEditItemId;this._effectsEditItemId=void 0,this.setFocusedGroup(),e&&this.emit("focuschange")},o.getSelectedIds=function(){return this._selectedIds},o.getSelectedPlayerItems=function(){var e=this;return this._selectedIds.map(function(t){return nr(e.engine.sceneServer.compositions[0],t)}).filter(function(e){return!!e})},o.isItemSelected=function(e){return this._selectedIds.includes(e)},o.addSelectedItems=function(e){var t=this.normalizeHierarchySelection([].concat(this._selectedIds,e));if(!this.sameIds(this._selectedIds,t)){var n=[].concat(this._selectedIds);this._selectedIds=t,this.updateFocusedGroupFromSelection(t),this.emit("selectionchange",{oldSelectedIds:n,newSelectedIds:[].concat(this._selectedIds)})}},o.removeSelectedItems=function(e){var t=[].concat(this._selectedIds);this._selectedIds=this._selectedIds.filter(function(t){return!e.includes(t)}),this._selectedIds.length!==t.length&&(this.updateFocusedGroupFromSelection(this._selectedIds),this.emit("selectionchange",{oldSelectedIds:t,newSelectedIds:[].concat(this._selectedIds)}))},o.clearSelectedItems=function(){if(0!==this._selectedIds.length){var e=[].concat(this._selectedIds);this._selectedIds=[],this.emit("selectionchange",{oldSelectedIds:e,newSelectedIds:[]})}},o.setSelectedItems=function(e){this.commitSelectedItems(e)},o.commitSelectedItems=function(e){var t=this.normalizeHierarchySelection(e);if(this.sameIds(this._selectedIds,t))return!1;var n=[].concat(this._selectedIds);return this._selectedIds=t,this.updateFocusedGroupFromSelection(t),this.emit("selectionchange",{oldSelectedIds:n,newSelectedIds:[].concat(t)}),!0},o.addSelectedItem=function(e){return this._selectedIds=this.normalizeHierarchySelection([].concat(this._selectedIds,[e])),this.updateFocusedGroupFromSelection(this._selectedIds),this._selectedIds},o.clear=function(){this._selectedIds=[]},o.setSelectedIds=function(e){this._selectedIds=this.normalizeHierarchySelection(e),this.updateFocusedGroupFromSelection(this._selectedIds)},o.pickOnDoubleClick=function(e){var t=this;this.interactionStartSelectedIds=[].concat(this._selectedIds);var n=new e6(e.position.x,e.position.y),i=this.hitTest(n),r=this.filterItemsByHierarchy(i,function(e){return!t.isItemSelected(e.getInstanceId())});if(0!==r.length){var o=r[0];if(e.shiftPressed){var s,a=null==(s=nr(this.engine.sceneServer.compositions[0],o))?void 0:s.parent;a&&(this._selectedIds=this._selectedIds.filter(function(e){return e!==a.getInstanceId()}))}else this._selectedIds=[];return this.addSelectedItem(o),o}},o.pickOnClick=function(e){var t,n=this;this.interactionStartSelectedIds=[].concat(this._selectedIds);var i=new e6(e.position.x,e.position.y),r=this.hitTest(i),o=this.filterSelectedItems(r);if(0===o.length){e.shiftPressed||(this._selectedIds=[]);return}var s=o[0];return!e.shiftPressed&&this.isItemSelected(s)&&(s=null!=(t=this.filterItemsByHierarchy(r,function(e){return!n.isItemSelected(e.getInstanceId())})[0])?t:s),e.shiftPressed?this.isItemSelected(s)?this._selectedIds=this._selectedIds.filter(function(e){return e!==s}):this.addSelectedItem(s):(this._selectedIds=[],this.addSelectedItem(s)),s},o.hitTest=function(e){var n=this,i=this.engine.sceneServer.compositions[0];if(!(null==i?void 0:i.items))return[];var r=tj(e,nd.getContainerSize(this.engine.canvas.parentElement)),o=r.x,s=r.y,a={ray:new e8,regions:[]};try{a.regions=i.hitTest(o,s,!0),a.ray=i.getHitTestRay(o,s)}catch(e){console.warn(e)}a.regions=a.regions.filter(function(e){return ne(nr(n.engine.sceneServer.compositions[0],e.id))}),this.refreshResultRegions(a);var c=this.reorderHitTestResult(a,i).filter(function(e){var i;return"extra-camera"!==e&&!n.ignoreIds.includes(e)&&!n.isIgnoredNameById(e)&&(null==(i=nr(n.engine.sceneServer.compositions[0],e))?void 0:i.type)!==t.spec.ItemType.composition});return this.preSelectedFrameOutBound(e,c)},o.resolveHoverTarget=function(e){return this.filterSelectedItems(this.hitTest(e))[0]},o.commitHoverTarget=function(e){var t=this.resolveHoverTarget(e);this.setHoverOverlayTarget(t),this.commitHover(t)},o.setHoverOverlayTarget=function(e){this.hoveringResults.overlayItemId=e},o.clearHover=function(){this.setHoverOverlayTarget(void 0),this.commitHover(void 0)},o.filterSelectedItems=function(e){return this.filterItemsByHierarchy(e)},o.addIgnoreIds=function(e){var n=this;e.forEach(function(e){return t.addItem(n.ignoreIds,e)})},o.deleteIgnoreIds=function(e){var t=this;e.forEach(function(e){var n=t.ignoreIds.indexOf(e);n>=0&&t.ignoreIds.splice(n,1)})},o.addIgnoreNames=function(e){var n=this;e.forEach(function(e){return t.addItem(n.ignoreNames,e)})},o.deleteIgnoreNames=function(e){var t=this;e.forEach(function(e){var n=t.ignoreNames.indexOf(e);n>=0&&t.ignoreNames.splice(n,1)})},o.setIgnoreNames=function(e){this.ignoreNames=[].concat(e)},o.findUnselectedItem=function(e){var t,n=null!=(t=this.filterSelectedItems(this.hitTest(e))[0])?t:"";if(n)return this.getSelectedScopeIdSet().has(n)?void 0:n},o.createHitSnapshot=function(e){var t=this,n=this.hitTest(e),i=this.filterSelectedItems(n),r=this.filterItemsByHierarchy(n,function(e){return!t.isItemSelected(e.getInstanceId())}),o=this.getSelectedScopeIdSet();return{point:e.clone(),selectableIds:[].concat(i),topmostId:i[0],selectedScopeHitIds:i.filter(function(e){return o.has(e)}),drillTargetId:r[0]}},o.isPointInFocusedGroup=function(e){if(!this._focusedGroupId)return!1;var t=nr(this.engine.sceneServer.compositions[0],this._focusedGroupId);if(!t)return!1;var n=t5(t,nd.getContainerSize(this.engine.canvas.parentElement));return!!n&&tM(n,e)},o.isPointInSelectedViewBox=function(e){var t=this.getSelectedPlayerItems();if(0===t.length)return!1;var n=nd.getContainerSize(this.engine.canvas.parentElement);if(1===t.length){var i=t5(t[0],n);return!!i&&tM(i,e)}for(var r,o=new to,s=D(t);!(r=s()).done;){var a=t3(r.value,n);a.isEmpty()||o.union(a)}return!o.isEmpty()&&o.containsPoint(e)},o.isPointInEffectsEditScope=function(e){if(!this._effectsEditItemId)return!1;var t=nr(this.engine.sceneServer.compositions[0],this._effectsEditItemId);if(!t)return!1;var n=t5(t,nd.getContainerSize(this.engine.canvas.parentElement));return!!n&&tM(n,e)},o.resolveMarqueeSelectableItem=function(e){var n=nt(e);return this._effectsEditItemId?(null==n?void 0:n.getInstanceId())===this._effectsEditItemId&&e.getInstanceId()!==this._effectsEditItemId&&e.type!==t.spec.ItemType.composition?e:void 0:null!=n?n:e},o.commitHover=function(e){e!==this.hoveringResults.itemId&&(this.hoveringResults.itemId=e,this.emit("preselectchange",{preSelectedId:e}))},o.filterItemsByHierarchy=function(e,n){var i=this,r=[];return e.forEach(function(e){var o=nr(i.engine.sceneServer.compositions[0],e);if(o){var s=nt(o);if(!i._effectsEditItemId||(null==s?void 0:s.getInstanceId())===i._effectsEditItemId){if(s){var a=s.getInstanceId();if(!i._effectsEditItemId){i.ignoreIds.includes(a)||i.isIgnoredNameById(a)||t.addItem(r,a);return}if(a!==i._effectsEditItemId||e===a)return}var c=i.getOutermostSelectableItem(o,n);c&&t.addItem(r,c.getInstanceId())}}}),r},o.getOutermostSelectableItem=function(e,t){for(var n,i=nt(e),r=this._focusedGroupId?nr(this.engine.sceneServer.compositions[0],this._focusedGroupId):void 0,o=this.isDirectlySelectable(e)?e:void 0,s=e;s&&(!i||s!==i)&&(null==r?void 0:r.getInstanceId())!==s.getInstanceId();)this.isSelectableGroup(s)&&!this.isRuntimeAncestor(s,r)&&(null==(n=null==t?void 0:t(s))||n)&&(o=s),s=s.parent;return o},o.isIgnoredNameById=function(e){if(0===this.ignoreNames.length)return!1;var t=nr(this.engine.sceneServer.compositions[0],e);return!!t&&this.ignoreNames.includes(t.name)},o.getSelectedScopeIdSet=function(){for(var e,t=this,n=new Set(this._selectedIds),i=this._selectedIds.map(function(e){return nr(t.engine.sceneServer.compositions[0],e)}).filter(function(e){return!!e}),r=D(i);!(e=r()).done;)for(var o,s=e.value,a=D(ni(s));!(o=a()).done;){var c=o.value;n.add(c.getInstanceId())}return n},o.refreshResultRegions=function(e){var n=this.engine.sceneServer.compositions[0];if(n&&!this._effectsEditItemId){var i=n.items.filter(function(e){return"动效"===e.name&&void 0!==e.getComponent(t.FrameComponent)}),r=new Map;i.forEach(function(e){var n,i=null==(n=e.children)?void 0:n[0];(null==i?void 0:i.type)===t.spec.ItemType.composition&&i.children.forEach(function(t){r.set(t.getInstanceId(),e.getInstanceId())})}),e.regions.forEach(function(e){var t;e.id=null!=(t=r.get(e.id))?t:e.id})}},o.reorderHitTestResult=function(e,r){if(0===e.regions.length||!r)return[];var o=e.ray,s=e.regions.reverse(),a=[];return s.forEach(function(e){var s,c,l,u,h,d,m,f,p,g=function(e,t){for(var n,i=D(e);!(n=i()).done;){var r=n.value;if(r.getInstanceId()===t&&(p=r),p)return;g(r.children,t)}};if(g(r.items,e.id),p&&ne(p)){var v=p.getInstanceId(),y=o.origin.clone().distance(e.position.clone());if((p.type===t.spec.ItemType.mesh||(null==(c=p.getComponent(t.SpriteComponent))?void 0:null==(s=c.renderer)?void 0:s.occlusion)||(null==(u=p.getComponent(t.TextComponent))?void 0:null==(l=u.renderer)?void 0:l.occlusion)||(null==(d=p.getComponent(n.VideoComponent))?void 0:null==(h=d.renderer)?void 0:h.occlusion)||(null==(f=p.getComponent(i.RichTextComponent))?void 0:null==(m=f.renderer)?void 0:m.occlusion))&&a.length>0){var x=!0;a.forEach(function(e,t){if(x){if(y<=e[1]){a.splice(t,0,[v,y]),x=!1;return}t===a.length-1&&a.push([v,y])}})}else a.push([v,y])}}),a.map(function(e){return e[0]})},o.preSelectedFrameOutBound=function(e,t){var n=this.engine.sceneServer.compositions[0];if(!n)return t;var i=n.items.filter(function(e){return t$(e)&&ne(e)}),r=nd.getContainerSize(this.engine.canvas.parentElement),o=i.map(function(e){return{id:e.getInstanceId(),box:t3(e,r)}});if(!(null==o?void 0:o.length))return t;var s=!1;return o.forEach(function(n){if(!s){var i=n.box.min;tI(new to,[i.clone(),i.clone().add(new e6(40,-20))]).containsPoint(e)&&(s=!0,t.splice(0,0,n.id))}}),t},o.updateFocusedGroupFromSelection=function(e){var t,n=this;if(0!==e.length){var i=e.map(function(e){return nr(n.engine.sceneServer.compositions[0],e)}).filter(function(e){return!!e});if(i.length!==e.length){this._focusedGroupId=void 0;return}var r=i.map(function(e){return n.getGroupAncestors(e)}),o=null==(t=r[0])?void 0:t.find(function(e){return r.slice(1).every(function(t){return t.some(function(t){return t.getInstanceId()===e.getInstanceId()})})});this._focusedGroupId=null==o?void 0:o.getInstanceId()}},o.getGroupAncestors=function(e){for(var t=[],n=e.parent;n&&(!this._effectsEditItemId||n.getInstanceId()!==this._effectsEditItemId);)this.isSelectableGroup(n)&&t.push(n),n=n.parent;return t},o.isSelectableGroup=function(e){var t=e.getInstanceId();return t4(e)&&!this.ignoreIds.includes(t)&&!this.isIgnoredNameById(t)},o.isDirectlySelectable=function(e){var n=e.getInstanceId();return e.type!==t.spec.ItemType.composition&&!this.ignoreIds.includes(n)&&!this.isIgnoredNameById(n)},o.isRuntimeAncestor=function(e,t){for(var n=null==t?void 0:t.parent;n;){if(n.getInstanceId()===e.getInstanceId())return!0;n=n.parent}return!1},o.normalizeHierarchySelection=function(e){var t,n,i=Array.from(new Set(e)),r=new Map,o=function(e){for(var t,n=D(e);!(t=n()).done;){var i=t.value,s=i.getInstanceId();r.has(s)||(r.set(s,i),o(i.children))}};o(null!=(n=null==(t=this.engine.sceneServer.compositions[0])?void 0:t.items)?n:[]);for(var s=[],a=new Set,c=new Set,l=i.length-1;l>=0;l--)!function(e){for(var t,n=i[e],o=[],l=null==(t=r.get(n))?void 0:t.parent;l;)o.push(l.getInstanceId()),l=l.parent;var u=o.some(function(e){return a.has(e)}),h=c.has(n);!u&&!h&&(s.push(n),a.add(n),o.forEach(function(e){return c.add(e)}))}(l);return s.reverse()},o.sameIds=function(e,t){return e.length===t.length&&e.every(function(e,n){return e===t[n]})},tB(r,[{key:"selectedIds",get:function(){return[].concat(this._selectedIds)},set:function(e){var t=[].concat(this._selectedIds);this._selectedIds=this.normalizeHierarchySelection(e),this.updateFocusedGroupFromSelection(this._selectedIds),this.emit("selectionchange",{oldSelectedIds:t,newSelectedIds:[].concat(this._selectedIds)})}},{key:"preSelectedId",get:function(){return this.hoveringResults.itemId}},{key:"hoverOverlayItemId",get:function(){return this.hoveringResults.overlayItemId}}]),r}(t.EventEmitter),iV=function(){function e(e){this.result={},this.results=[],this.targetBoxes=[],this.axisSelections={},this.owner=e}var t=e.prototype;return t.cacheSnapTargetsForSelection=function(e,t,n){var i=this;if(0===t.length){this.clearCache();return}var r=new Set(t.map(function(e){return e.getInstanceId()})),o=this.getAncestorIdSet(t),s=this.getCommonSnapScopeId(t);this.cacheSnapTargetBoxes(e.filter(function(e){return e.isVisible&&!o.has(e.getInstanceId())&&!i.isSelectedOrDescendant(e,r)&&i.getNearestSnapScopeId(e)===s}).map(function(e){return t3(e,n)}).filter(function(e){return!e.isEmpty()}))},t.cacheSnapTargetBoxes=function(e){this.targetBoxes=e.filter(function(e){return!e.isEmpty()}).map(function(e){return e.clone()})},t.clearCache=function(){this.targetBoxes=[]},t.getSnapTargetBoxes=function(){return this.targetBoxes},t.getSnapTargetPoints=function(){return this.targetBoxes.flatMap(function(e){return[].concat(tf(e),[e.getCenter()])})},t.prepareBox=function(e,t,n,i,r){void 0===n&&(n=this.targetBoxes),void 0===i&&(i=!0),void 0===r&&(r=!0);var o=this.result;if(this.clearFrameState(),!t.isEmpty()){var s=new e6(null!=(c=o.x)?c:0,null!=(l=o.y)?l:0).add(e),a=t.clone().translate(s);this.sourceBox=a;for(var c,l,u,h=D(n);!(u=h()).done;){var d=u.value;d.isEmpty()||(this.considerBoxAlignment(a,d,"x",i),this.considerBoxAlignment(a,d,"y",r))}i&&this.considerGapSnaps(a,n,"x"),r&&this.considerGapSnaps(a,n,"y"),this.publishResult()}},t.preparePoint=function(e,t,n,i,r){void 0===n&&(n=this.getSnapTargetPoints()),void 0===i&&(i=!0),void 0===r&&(r=!0);var o=this.result;this.clearFrameState();for(var s,a,c,l=new e6(null!=(s=o.x)?s:0,null!=(a=o.y)?a:0).add(e),u=t.clone().add(l),h=D(n);!(c=h()).done;){var d=c.value;i&&this.considerAxisCandidate("x",{distance:u.x-d.x,point:u,target:d}),r&&this.considerAxisCandidate("y",{distance:u.y-d.y,point:u,target:d})}this.publishResult()},t.getSnappingVisualizations=function(){return this.update(),this.results},t.clearSnappingVisualizations=function(){this.clearFrameState()},t.reset=function(){this.clearCache(),this.clearSnappingVisualizations()},t.update=function(){var e,t,n,i=[],r=new e6(null!=(t=this.result.x)?t:0,null!=(n=this.result.y)?n:0),o=null==(e=this.sourceBox)?void 0:e.clone().translate(r.clone().multiply(-1));this.appendAlignmentLines(i,"x",r,o),this.appendAlignmentLines(i,"y",r,o),this.appendGapLines(i,"x"),this.appendGapLines(i,"y"),this.results=this.deduplicateLines(i)},t.isSelectedOrDescendant=function(e,t){for(var n=e;n;){if(t.has(n.getInstanceId()))return!0;n=n.parent}return!1},t.getAncestorIdSet=function(e){for(var t,n=new Set,i=D(e);!(t=i()).done;)for(var r=t.value.parent;r;)n.add(r.getInstanceId()),r=r.parent;return n},t.getNearestSnapScopeId=function(e){for(var t=e.parent;t;){if(this.isSnapScopeItem(t))return t.getInstanceId();t=t.parent}},t.getCommonSnapScopeId=function(e){var t=this,n=e.map(function(e){for(var n=[],i=e.parent;i;)t.isSnapScopeItem(i)&&n.push(i.getInstanceId()),i=i.parent;return n}),i=n[0],r=n.slice(1);return(void 0===i?[]:i).find(function(e){return r.every(function(t){return t.includes(e)})})},t.isSnapScopeItem=function(e){return t$(e)||t0(e)},t.considerBoxAlignment=function(e,t,n,i){if(i)for(var r,o="x"===n?"y":"x",s=e.getCenter(),a=t.getCenter(),c=[e.min[n],s[n],e.max[n]],l=[t.min[n],a[n],t.max[n]],u=D(c);!(r=u()).done;)for(var h,d=r.value,m=D(l);!(h=m()).done;){var f=h.value,p=new e6;p[n]=d,p[o]=s[o];var g=new e6;g[n]=f,g[o]=a[o],this.considerAxisCandidate(n,{distance:d-f,point:p,target:g,targetBox:t})}},t.considerGapSnaps=function(e,t,n){for(var i=t.filter(function(e){return!e.isEmpty()}),r="x"===n?"y":"x",o=e.max[n]-e.min[n],s=0;s<i.length;s++)for(var a=s+1;a<i.length;a++){var c,l=i[s],u=i[a];l.min[n]>u.min[n]&&(l=(c=[u,l])[0],u=c[1]);var h=u.min[n]-l.max[n];if(!(h<=1e-6||!this.rangesOverlap(l,u,r)||this.hasInterveningBox(l,u,i,n,r))){var d=this.createGapSegment(l,u,n);if(h+1e-6>=o){var m=l.max[n]+(h-o)/2,f=this.moveBoxAlongAxis(e,n,m);(this.rangesOverlap(f,l,r)||this.rangesOverlap(f,u,r))&&this.considerAxisCandidate(n,{distance:e.min[n]-m,gaps:[this.createGapSegment(l,f,n,d.cross),this.createGapSegment(f,u,n,d.cross)]})}var p=l.min[n]-h-o,g=this.moveBoxAlongAxis(e,n,p);this.rangesOverlap(g,l,r)&&this.considerAxisCandidate(n,{distance:e.min[n]-p,gaps:[d,this.createGapSegment(g,l,n,d.cross)]});var v=u.max[n]+h,y=this.moveBoxAlongAxis(e,n,v);this.rangesOverlap(y,u,r)&&this.considerAxisCandidate(n,{distance:e.min[n]-v,gaps:[d,this.createGapSegment(u,y,n,d.cross)]})}}},t.considerAxisCandidate=function(e,t){if(!(Math.abs(t.distance)>this.config.distance+1e-6)){var n=this.axisSelections[e];if(!n||Math.abs(t.distance)<Math.abs(n.distance)-1e-6){this.axisSelections[e]={distance:t.distance,candidates:[t]};return}1e-6>=Math.abs(t.distance-n.distance)&&n.candidates.push(t)}},t.publishResult=function(){for(var e,t=this,n=0,i=["x","y"];n<i.length;n++)e=this,function(n,i){var r=i[n],o=e.axisSelections[r];if(o){e.result[r]=o.distance;var s=o.candidates.filter(function(e){return void 0!==e.point&&void 0!==e.target});if(0!==s.length){for(var a,c=[],l=D(s);!(a=l()).done;)!function(){var e=a.value,n=c.find(function(n){return t.pointsEqual(n.point,e.point)});n||c.push(n={point:e.point,targets:[]}),n.targets.some(function(n){return t.pointsEqual(n,e.target)})||n.targets.push(e.target)}();e.result["x"===r?"xPoints":"yPoints"]=c}}}(n,i)},t.appendAlignmentLines=function(e,t,n,i){var r=this.axisSelections[t];if(r){for(var o,s="x"===t?"y":"x",a=r.candidates.filter(function(e){return void 0!==e.point&&void 0!==e.target}),c=new Map,l=D(a);!(o=l()).done;){var u,h=o.value,d=h.target[t].toFixed(6),m=null!=(u=c.get(d))?u:[];m.push(h),c.set(d,m)}for(var f,p=D(c.values());!(f=p()).done;){var g=f.value,v=g[0].target[t],y=null!=(A=null==i?void 0:i.min[s])?A:Number.POSITIVE_INFINITY,x=null!=(M=null==i?void 0:i.max[s])?M:Number.NEGATIVE_INFINITY,w=[];i&&w.push(this.createAxisPoint(t,v,i.min[s]),this.createAxisPoint(t,v,i.max[s]));for(var A,M,I,C=D(g);!(I=C()).done;){var S=I.value,T=S.point.clone().subtract(n);y=Math.min(y,T[s],S.target[s]),x=Math.max(x,T[s],S.target[s]),S.targetBox?(y=Math.min(y,S.targetBox.min[s]),x=Math.max(x,S.targetBox.max[s]),w.push(this.createAxisPoint(t,v,S.targetBox.min[s]),this.createAxisPoint(t,v,S.targetBox.max[s]))):w.push(this.createAxisPoint(t,v,T[s]),this.createAxisPoint(t,v,S.target[s]))}if(Number.isFinite(y)&&Number.isFinite(x)){var b=new e6,E=new e6;b[t]=v,E[t]=v,b[s]=y,E[s]=x,e.push(new tl(b,E));for(var P,z=D(this.deduplicatePoints(w));!(P=z()).done;){var B=P.value;this.appendSnapMarker(e,B)}}}}},t.appendSnapMarker=function(e,t){e.push(new tl(new e6(t.x-2,t.y-2),new e6(t.x+2,t.y+2)),new tl(new e6(t.x-2,t.y+2),new e6(t.x+2,t.y-2)))},t.createAxisPoint=function(e,t,n){return"x"===e?new e6(t,n):new e6(n,t)},t.appendGapLines=function(e,t){var n=this.axisSelections[t];if(n)for(var i,r=D(n.candidates);!(i=r()).done;)for(var o,s,a=i.value,c=D(null!=(o=a.gaps)?o:[]);!(s=c()).done;){var l=s.value;1e-6>=Math.abs(l.end-l.start)||("x"===t?e.push(new tl(new e6(l.start,l.cross),new e6(l.end,l.cross))):e.push(new tl(new e6(l.cross,l.start),new e6(l.cross,l.end))))}},t.createGapSegment=function(e,t,n,i){var r="x"===n?"y":"x",o=Math.max(e.min[r],t.min[r]),s=Math.min(e.max[r],t.max[r]),a=null!=i?i:o<=s?(o+s)/2:(e.getCenter()[r]+t.getCenter()[r])/2;return{axis:n,start:e.max[n],end:t.min[n],cross:a}},t.moveBoxAlongAxis=function(e,t,n){var i=new e6;return i[t]=n-e.min[t],e.clone().translate(i)},t.rangesOverlap=function(e,t,n){return Math.min(e.max[n],t.max[n])+1e-6>=Math.max(e.min[n],t.min[n])},t.pointsEqual=function(e,t){return 1e-6>=Math.abs(e.x-t.x)&&1e-6>=Math.abs(e.y-t.y)},t.deduplicatePoints=function(e){for(var t,n=this,i=[],r=D(e);!(t=r()).done;)!function(){var e=t.value;i.some(function(t){return n.pointsEqual(t,e)})||i.push(e)}();return i},t.hasInterveningBox=function(e,t,n,i,r){var o=this;return n.some(function(n){return n!==e&&n!==t&&n.min[i]<t.min[i]-1e-6&&n.max[i]>e.max[i]+1e-6&&o.rangesOverlap(n,e,r)&&o.rangesOverlap(n,t,r)})},t.deduplicateLines=function(e){for(var t,n=new Map,i=D(e);!(t=i()).done;){var r=t.value,o=r.start.x.toFixed(4)+","+r.start.y.toFixed(4)+":"+r.end.x.toFixed(4)+","+r.end.y.toFixed(4),s=r.end.x.toFixed(4)+","+r.end.y.toFixed(4)+":"+r.start.x.toFixed(4)+","+r.start.y.toFixed(4);n.has(o)||n.has(s)||n.set(o,r)}return Array.from(n.values())},t.clearFrameState=function(){this.results=[],this.result={},this.axisSelections={},this.sourceBox=void 0},tB(e,[{key:"enabled",get:function(){return this.config.enabled}},{key:"config",get:function(){return this.owner.getConfigManager().get(nM)}}]),e}(),iD="https://mdn.alipayobjects.com/rms/uri/file/as/0.0.6",iO={normal:{type:"preset",content:"default"},rotation:{type:"svg",content:"default",url:""+iD+"/icons/cursor-rotate-32.svg"},circle:{type:"svg",content:"default",url:""+iD+"/icons/cursor-rotate-32.svg"},scale:{type:"svg",content:"default",url:""+iD+"/icons/cursor-scale-32.svg"},hand:{type:"preset",content:"grab"},pointer:{type:"preset",content:"pointer"},text:{type:"preset",content:"text"},"text-create":{type:"preset",content:"text"},"active-hand":{type:"preset",content:"grabbing"},"frame-create":{type:"preset",content:"crosshair"},"box-select":{type:"preset",content:"crosshair"},"text-rotation":{type:"svg",content:"default",url:"https://mdn.alipayobjects.com/huamei_ixsp8m/afts/img/A*R722QoloC44AAAAAKkAAAAgAev-aAQ/original"}};function iY(){return iN.apply(this,arguments)}function iN(){return(iN=z(function(){var e;return Y(this,function(n){switch(n.label){case 0:return e=new t.Downloader,[4,Promise.all(Object.keys(iO).filter(function(e){return!!iO[e].url}).map(function(t){return new Promise(function(n,i){e.downloadText(iO[t].url,n,function(e,t){i(Error("Failed to load cursor icon ("+e+"): "+t))})}).then(function(e){return iO[t]=X({},iO[t],{content:e})})})).catch(function(e){console.error(e)})];case 1:return n.sent(),[2]}})})).apply(this,arguments)}var iH="sans-serif",iU=function(e){function n(t,n){var i;return(i=e.call(this,t)||this).type="loading",i.loadingBoxSize=new e6,i._idMap=new Map,i.manager=n,i.configOff=t.getConfigManager().onChange(nv,function(e){i.onConfigChange(e)}),i.managerOff=i.manager.on("change",function(){i.syncManager()}),i.syncManager(),i}G(n,e);var i=n.prototype;return i.onLoadingChange=function(e){return this.manager.on("change",function(t){(t.addedIds.length>0||t.removedIds.length>0)&&e(t.ids)})},i.add=function(e,t){this.manager.add(e,t)},i.delete=function(e){this.manager.delete(e)},i.updateItem=function(e,t){this.manager.update(e,t)},i.onUpdate=function(){if(0!==this._idMap.size)for(var e,t=D(this._idMap);!(e=t()).done;){var n=e.value,i=n[0],r=n[1];this.updateLoadingVFXItemTransform(i,r)}},i.draw=function(e){if(0!==this._idMap.size)for(var t,n=D(this._idMap);!(t=n()).done;){var i,r=t.value,o=r[0],s=r[1];if(null==(i=s.tip)?void 0:i.text){var a=nr(this._owner.getEngine().sceneServer.compositions[0],o),c=a?t3(a,nd.getContainerSize(this._owner.getEngine().canvas.parentElement)):new to,l=tb(c,s.loadingBox);this.drawLoadingTip(e,l,c,s.tip)}}},i.dispose=function(){var t=this;null==this.configOff||this.configOff.call(this),this.configOff=void 0,null==this.managerOff||this.managerOff.call(this),this.managerOff=void 0,this._idMap.forEach(function(e){t.disposeLoadingVFXItem(e.loadingVFXItem)}),this._idMap.clear(),e.prototype.dispose.call(this)},i.onConfigChange=function(e){if(e.previous.loadingFragment!==e.current.loadingFragment)for(var t,n=D(this._idMap);!(t=n()).done;){var i=t.value,r=i[0],o=i[1];this.disposeLoadingVFXItem(o.loadingVFXItem),o.loadingVFXItem=this.createLoadingVFXItem(),this.updateLoadingVFXItemTransform(r,o)}},i.drawLoadingTip=function(e,t,n,i){var r=t.getSize(this.loadingBoxSize),o=r.x,s=r.y;if(i.text&&Number.isFinite(o)&&!(o<=0)){var a=i.position?n.min.x+(Number.isFinite(i.position.x)?i.position.x:0):t.min.x,c=i.position?Math.min(Math.max(a,t.min.x),t.max.x):t.min.x,l=i.position?t.max.x-c:o;if(!(l<=0)){var u=function(e,t){var n=nY(e,t,iH,"bold");return{width:n.width||Array.from(e).length*t,actualBoundingBoxAscent:n.actualBoundingBoxAscent||.8*t,actualBoundingBoxDescent:n.actualBoundingBoxDescent||.2*t}},h=u(i.text,16),d=h.width>l?16*l/h.width:16,m=u(i.text,d);m.width>l&&(d*=l/m.width,m=u(i.text,d));var f=i.position?c:t.min.x+(o-m.width)/2,p=m.actualBoundingBoxAscent+m.actualBoundingBoxDescent,g=i.position?n.min.y+(Number.isFinite(i.position.y)?i.position.y:0):t.min.y+(s-p)/2,v=4+u(nF+"M",d).actualBoundingBoxAscent-m.actualBoundingBoxAscent;e.drawText(f,g-v,i.text,d,nD(0,1),iH,"bold")}}},i.syncManager=function(){for(var e,t=new Set(this.manager.ids),n=D(this._idMap);!(e=n()).done;){var i=e.value,r=i[0],o=i[1];t.has(r)||(this.disposeLoadingVFXItem(o.loadingVFXItem),this._idMap.delete(r))}for(var s,a=D(t);!(s=a()).done;){var c=s.value,l=this.manager.get(c);if(l){var u=this._idMap.get(c);u?u.tip=X({},l.tip,{position:l.tip.position?l.tip.position.clone():void 0}):this.createProjection(c,l)}}},i.createProjection=function(e,t){var n=nr(this._owner.getEngine().sceneServer.compositions[0],e),i=n?t3(n,nd.getContainerSize(this._owner.getEngine().canvas.parentElement)):new to,r=t.loadingBox?this.getViewBoxByPixelBox(t.loadingBox):i;this._idMap.set(e,{loadingBox:tE(i,r),loadingVFXItem:this.createLoadingVFXItem(),tip:X({},t.tip,{position:t.tip.position?t.tip.position.clone():void 0})}),this.updateLoadingVFXItemTransform(e,this._idMap.get(e))},i.getCameraInfo=function(){return nd.getCameraInfo(this._owner.getEngine())},i.getViewportParams=function(){var e=this._owner.getEngine().sceneServer.compositions[0],t=null==e?void 0:e.camera;if(t){var n=t.getViewportMatrix();return{scale:n.elements[0],translation:new e6(n.elements[12],n.elements[13]),width:nd.getContainerSize(this._owner.getEngine().canvas.parentElement).x,height:nd.getContainerSize(this._owner.getEngine().canvas.parentElement).y}}return{scale:1,translation:new e6,width:nd.getContainerSize(this._owner.getEngine().canvas.parentElement).x,height:nd.getContainerSize(this._owner.getEngine().canvas.parentElement).y}},i.getViewBoxByPixelBox=function(e){var t=this.getViewportParams(),n=t.scale,i=t.translation,r=new e6(t.width/2,t.height/2);return tC(e.clone(),n,r).translate(i)},i.createLoadingVFXItem=function(){var e=this._owner.getEngine().sceneServer.compositions[0],n=tN.createVFXItem(e,null,"LoadingVFXItem",t.EffectComponent);this._owner.getSelection().addIgnoreIds([n.getInstanceId()]),n.type=t.spec.ItemType.effect;var i=n.getComponent(t.EffectComponent),r=this._owner.getEngine(),o=t.Geometry.create(r,{attributes:{aPos:{size:3,data:new Float32Array([-.5,-.5,0,.5,-.5,0,.5,.5,0,-.5,.5,0])},aUV:{size:2,data:new Float32Array([0,0,1,0,1,1,0,1])}},indices:{data:new Uint16Array([0,1,2,0,2,3])},mode:t.glContext.TRIANGLES,drawCount:6}),s=t.Material.create(r,{shader:{vertex:"\nprecision highp float;\nattribute vec3 aPos;\nattribute vec2 aUV;\nuniform mat4 effects_MatrixVP;\nuniform mat4 effects_ObjectToWorld;\nvarying vec2 vUV;\nvoid main() {\n vUV = aUV;\n gl_Position = effects_MatrixVP * effects_ObjectToWorld * vec4(aPos, 1.0);\n}",fragment:this.config.loadingFragment}});return i.geometry=o,i.material=s,n},i.disposeLoadingVFXItem=function(e){this._owner.getSelection().deleteIgnoreIds([e.getInstanceId()]),e.dispose()},i.updateLoadingVFXItemTransform=function(e,t){var n=nr(this._owner.getEngine().sceneServer.compositions[0],e),i=nd.getContainerSize(this._owner.getEngine().canvas.parentElement),r=tb(n?t3(n,i):new to,t.loadingBox),o=new e6((r.max.x+r.min.x)/2,(r.max.y+r.min.y)/2),s=this.getCameraInfo(),a=new th(0,new e9(0,0,1)),c=tK(o,s,a,i),l=tZ(new e6(r.max.x-r.min.x,r.max.y-r.min.y),i,t.loadingVFXItem,s,a);c&&t.loadingVFXItem.transform.setPosition(c.x,c.y,0),t.loadingVFXItem.transform.setScale(l.x,l.y,1)},tB(n,[{key:"idMap",get:function(){return this._idMap}},{key:"loadingIds",get:function(){return this.manager.ids}},{key:"config",get:function(){return this._owner.getConfigManager().get(nv)}}]),n}(tY);(y=S||(S={})).NONE="none",y.PAN="pan";var ij=function(n){function i(){var e;return e=n.apply(this,arguments)||this,e.type="hand",e.panKeyPressed=!1,e.dragType="none",e.lastPoint=new e6,e}G(i,n);var r=i.prototype;return r.isPanning=function(){return"pan"===this.dragType||this.panKeyPressed},r.onKeyDown=function(e){if("space"===e.physicalKeycode.toLocaleLowerCase()){this.panKeyPressed?e.accept():this._owner.isMouseButtonPressed()||(this.panKeyPressed=!0,e.accept());return}},r.onKeyUp=function(e){"space"===e.physicalKeycode.toLocaleLowerCase()&&this.panKeyPressed&&(this.panKeyPressed=!1,e.accept())},r.onMouseDown=function(e){var n=e.buttonIndex;if(!(n===t.MouseButton.Middle||(this._owner.isHandToolMode()||this.panKeyPressed)&&n===t.MouseButton.Left)){(this._owner.isHandToolMode()||this.isPanning())&&(this._owner.setCursor(this.cursorResult),e.accept());return}this.beginPan(e),this._owner.setCursor(this.cursorResult),e.accept()},r.onMouseMove=function(e){this.handlePointerMove(e)},r.onMouseDrag=function(e){this.handlePointerMove(e)},r.onMouseUp=function(e){(this.endPan()||this._owner.isHandToolMode()||this.isPanning())&&(this._owner.setCursor(this.cursorResult),e.accept())},r.dispose=function(){this.endPan(),n.prototype.dispose.call(this)},r.handlePointerMove=function(e){(this.pan(e)||this._owner.isHandToolMode()||this.isPanning())&&(this._owner.setCursor(this.cursorResult),e.accept())},r.beginPan=function(e){this.dragType="pan",this.lastPoint=new e6(e.position.x,e.position.y)},r.pan=function(e){if("pan"!==this.dragType)return!1;var t=new e6(e.position.x,e.position.y),n=new e6().subtractVectors(t,this.lastPoint),i=e.shiftPressed;n.x=i&&0!==n.y?Math.sqrt(Math.pow(n.x,2)+Math.pow(n.y,2))*n.y/Math.abs(n.y):n.x,n.y=i?0:n.y;var r=this._owner.getViewportNavigation().panByViewDelta(n,new e6(e.position.x,e.position.y),"hand-pan");return this.lastPoint.copyFrom(t),r},r.endPan=function(){var e="pan"===this.dragType;return this.dragType="none",e},tB(i,[{key:"cursorResult",get:function(){var t=this._owner.isHandToolMode()||this.isPanning();return{type:"pan"===this.dragType?e.GestureCursorType.ACTIVE_HAND:t?e.GestureCursorType.HAND:e.GestureCursorType.NORMAL,angle:0}}}]),i}(tY);e.IconType=void 0,(x=e.IconType||(e.IconType={})).VIDEO_PLAY="video-play",x.VIDEO_GENERATOR="video-generator",x.IMAGE_GENERATOR="image-generator";var iW=function(i){function r(t){var n;return(n=i.call(this,t)||this).type=e.GizmoType.ICON,n.results=[],n.interactionParam={},n.cursorResult={type:e.GestureCursorType.NORMAL,angle:0},n.iconTextures=new Map,n.iconTexturePromises=new Map,n.configOff=t.getConfigManager().onChange(nE,function(e){n.onConfigChange(e)}),n}G(r,i);var o=r.prototype;return o.onMouseMove=function(n){var i=this._owner.getMousePosition();this.interactionParam.hoverVideoId=this.computeHoverVideoId(i);var r=this.results.find(function(e){return"video-play"===e.type}),o=!!(null==r?void 0:r.box.containsPoint(i));this.cursorResult=o?{type:e.GestureCursorType.POINTER,angle:0}:{type:e.GestureCursorType.NORMAL,angle:0},this._owner.setCursor(this.cursorResult),n.buttonMask===t.MouseButtonMask.None&&o&&n.accept()},o.onMouseLeave=function(){this.interactionParam.hoverVideoId=void 0,this.cursorResult={type:e.GestureCursorType.NORMAL,angle:0},this._owner.setCursor(this.cursorResult)},o.onMouseDown=function(e){if(e.buttonIndex===t.MouseButton.Left){this.refreshVideoIconId(new e6(e.position.x,e.position.y));var i=this.results.find(function(e){return"video-play"===e.type});if(null==i?void 0:i.box.containsPoint(new e6(e.position.x,e.position.y))){if(i){var r=nr(this._owner.getEngine().sceneServer.compositions[0],i.id),o=0;if((null==r?void 0:r.type)===t.spec.ItemType.video){var s,a=r.getComponent(n.VideoComponent);o=null!=(s=null==a?void 0:a.getCurrentTime())?s:0}this._owner.emit("videoplay",{source:this,id:i.id,time:o}),this.refreshCursorResult(),this._owner.setCursor(this.cursorResult)}e.accept()}}},o.refreshCursorResult=function(){var t=this._owner.getMousePosition(),n=this.results.find(function(e){return"video-play"===e.type}),i=!!t&&!!(null==n?void 0:n.box.containsPoint(t));this.cursorResult=i?{type:e.GestureCursorType.POINTER,angle:0}:{type:e.GestureCursorType.NORMAL,angle:0}},o.refreshVideoIconId=function(e){this.interactionParam.hoverVideoId=this.computeHoverVideoId(e),this.refreshResults()},o.onUpdate=function(){this.refreshResults()},o.draw=function(e){var t=this;this.results.length&&this.results.forEach(function(n){var i=t.getIconTexture(n.type,e.engine);if(i&&!i.isDestroyed){var r=n.box.getCenter(),o=n.box.getSize();e.drawTexture(r.x-o.x/2,r.y-o.y/2,o.x,o.y,i)}})},o.dispose=function(){null==this.configOff||this.configOff.call(this),this.configOff=void 0,i.prototype.dispose.call(this)},o.onConfigChange=function(e){for(var t,n=D([{type:"video-play",key:"videoPlayUrl"},{type:"image-generator",key:"imageGeneratorUrl"},{type:"video-generator",key:"videoGeneratorUrl"}]);!(t=n()).done;){var i=t.value,r=i.type,o=i.key;if(e.previous[o]!==e.current[o]){var s=this.iconTextures.get(r);s&&!s.isDestroyed&&s.offloadData(),this.iconTextures.delete(r),this.iconTexturePromises.delete(r)}}},o.refreshResults=function(){var e=this,t=this._owner.getEngine().sceneServer.compositions[0];if(t){this.results=[];var n=this.config,i=n.videoPlayWidth,r=n.videoPlayHeight,o=n.videoPlayShift,s=n.generatorWidth,a=n.generatorHeight,c=this.interactionParam.hoverVideoId;if(c){var l=nr(this._owner.getEngine().sceneServer.compositions[0],c);if(l){var u=t3(l,nd.getContainerSize(this._owner.getEngine().canvas.parentElement)),h=u.getSize();if(!(h.x<50||h.y<100)){var d=u.max,m=new e6(d.x-o[0],d.y-o[1]),f=new e6(i,r);this.results.push({id:c,type:"video-play",box:new to().setFromCenterAndSize(m,f)})}}}t.items.filter(function(e){return t1(e)}).forEach(function(t){var n=t3(t,nd.getContainerSize(e._owner.getEngine().canvas.parentElement)).getCenter(),i=new e6(s,a).multiply(nd.getViewScale(e._owner.getEngine()));e.results.push({id:t.getInstanceId(),type:t2(t)?"video-generator":"image-generator",box:new to().setFromCenterAndSize(n,i)})})}},o.getIconUrl=function(e){var t=this.config,n=t.videoPlayUrl,i=t.imageGeneratorUrl,r=t.videoGeneratorUrl;switch(e){case"video-play":return n;case"image-generator":return i;case"video-generator":return r;default:return""}},o.getIconTexture=function(e,n){var i=this,r=this.iconTextures.get(e);if(r&&!r.isDestroyed)return r;if(!this.iconTexturePromises.has(e)){var o=this.getIconUrl(e);if(!o)return;var s=t.Texture.fromImage(o,n).then(function(t){return i.iconTextures.set(e,t),t});this.iconTexturePromises.set(e,s)}},o.computeHoverVideoId=function(e){var n=this._owner.getEngine().sceneServer.compositions[0];if(n)for(var i,r=n.items.filter(function(e){return e.type===t.spec.ItemType.video}).reverse(),o=D(r);!(i=o()).done;){var s=i.value;if(t3(s,nd.getContainerSize(this._owner.getEngine().canvas.parentElement)).containsPoint(e))return s.getInstanceId()}},tB(r,[{key:"config",get:function(){return this._owner.getConfigManager().get(nE)}}]),r}(tY);(w=T||(T={}))[w.Idle=0]="Idle",w[w.Pending=1]="Pending",w[w.Crossed=2]="Crossed";var iQ=function(e){function n(n){var i;return(i=e.call(this,n)||this).onMouseEnterCallback=null,i.onMouseMoveCallback=null,i.onMouseDragCallback=null,i.onMouseLeaveCallback=null,i.onMouseWheelCallback=null,i.onMouseDownCallback=null,i.onMouseUpCallback=null,i.onKeyDownCallback=null,i.onKeyUpCallback=null,i.onUpdateCallback=null,i.drawCallBack=null,i.mousePosition=new e6,i.globalMousePosition=new e6,i.dragStart=new e6,i.mouseInside=!1,i.mouseButtonMask=t.MouseButtonMask.None,i.dragThresholdState=0,i.shiftPressed=!1,i.altPressed=!1,i.metaPressed=!1,i.ctrlPressed=!1,i.mouseFilter=r.MouseFilter.Pass,i.focusMode=r.FocusMode.Click,i.mouseForcePassScrollEvents=!1,i.setAnchorsAndOffsetsPreset("fullRect"),i}G(n,e);var i=n.prototype;return i.update=function(e){null==this.onUpdateCallback||this.onUpdateCallback.call(this)},i.draw=function(){null==this.drawCallBack||this.drawCallBack.call(this)},i.onMouseEnter=function(e){this.mouseInside=!0,this.mousePosition.copyFrom(e),null==this.onMouseEnterCallback||this.onMouseEnterCallback.call(this,e)},i.onMouseMove=function(e){this.recordMouseInput(e);var n=e.buttonMask!==t.MouseButtonMask.None;n&&1===this.dragThresholdState&&iI(this.dragStart.x,this.dragStart.y,e.position.x,e.position.y)&&(this.dragThresholdState=2),n?null==this.onMouseDragCallback||this.onMouseDragCallback.call(this,e):null==this.onMouseMoveCallback||this.onMouseMoveCallback.call(this,e)},i.onMouseLeave=function(){this.mouseInside=!1,null==this.onMouseLeaveCallback||this.onMouseLeaveCallback.call(this)},i.onMouseWheel=function(e){this.recordMouseInput(e),null==this.onMouseWheelCallback||this.onMouseWheelCallback.call(this,e)},i.onMouseDown=function(e){this.recordMouseInput(e),this.dragStart.copyFrom(e.position),this.dragThresholdState=1,null==this.onMouseDownCallback||this.onMouseDownCallback.call(this,e)},i.onMouseUp=function(e){this.recordMouseInput(e),this.dragThresholdState=0,null==this.onMouseUpCallback||this.onMouseUpCallback.call(this,e)},i.onKeyDown=function(e){this.recordModifiers(e),null==this.onKeyDownCallback||this.onKeyDownCallback.call(this,e)},i.onKeyUp=function(e){this.recordModifiers(e),null==this.onKeyUpCallback||this.onKeyUpCallback.call(this,e)},i.getMousePosition=function(){return this.mousePosition},i.isMouseInside=function(){return this.mouseInside},i.isMouseButtonPressed=function(){return this.mouseButtonMask!==t.MouseButtonMask.None},i.hasCrossedDragThreshold=function(){return 2===this.dragThresholdState},i.createMouseEventAtCurrentPosition=function(){var e=new t.InputEventMouseMotion;return e.position.copyFrom(this.mousePosition),e.globalPosition.copyFrom(this.globalMousePosition),e.buttonMask=this.mouseButtonMask,e.pressed=this.isMouseButtonPressed(),e.shiftPressed=this.shiftPressed,e.altPressed=this.altPressed,e.metaPressed=this.metaPressed,e.ctrlPressed=this.ctrlPressed,e},i.onDestroy=function(){this.onMouseEnterCallback=null,this.onMouseMoveCallback=null,this.onMouseDragCallback=null,this.onMouseLeaveCallback=null,this.onMouseWheelCallback=null,this.onMouseDownCallback=null,this.onMouseUpCallback=null,this.onKeyDownCallback=null,this.onKeyUpCallback=null,this.onUpdateCallback=null,this.drawCallBack=null,this.mousePosition.setZero(),this.globalMousePosition.setZero(),this.mouseInside=!1,this.mouseButtonMask=t.MouseButtonMask.None,this.dragThresholdState=0,this.dragStart.setZero(),this.shiftPressed=!1,this.altPressed=!1,this.metaPressed=!1,this.ctrlPressed=!1,e.prototype.onDestroy.call(this)},i.recordMouseInput=function(e){this.mousePosition.copyFrom(e.position),this.globalMousePosition.copyFrom(e.globalPosition),this.mouseButtonMask=e.buttonMask,this.recordModifiers(e)},i.recordModifiers=function(e){this.shiftPressed=e.shiftPressed,this.altPressed=e.altPressed,this.metaPressed=e.metaPressed,this.ctrlPressed=e.ctrlPressed},n}(r.Control);(A=b||(b={}))[A.MouseEnter=0]="MouseEnter",A[A.MouseMove=1]="MouseMove",A[A.MouseDrag=2]="MouseDrag",A[A.MouseLeave=3]="MouseLeave",A[A.MouseWheel=4]="MouseWheel",A[A.MouseDown=5]="MouseDown",A[A.MouseUp=6]="MouseUp",A[A.KeyDown=7]="KeyDown",A[A.KeyUp=8]="KeyUp";var iK=function(t){function n(e){var n;return(n=t.call(this,e)||this).hoveringResults={},n.loadingManager=new iP,n.activeGizmoTool=new tV(ia(n)),n._ignoreInteraction=!1,n.selectionTransformKind="idle",n.gizmosToDispose=[],n.onPreselectChange=function(e){var t=e.preSelectedId,i=n.hoveredMediaItemId,r=n.gizmoManager.configs.get(nA).videoPreSelectedPlay;t&&r&&(nc(n.engine,t),nu(n.engine,t)),i&&(nl(n.engine,i),nh(n.engine,i)),n.hoveredMediaItemId=t},n.mouseFilter=r.MouseFilter.Pass,n.mouseForcePassScrollEvents=!1,n.setAnchorsAndOffsetsPreset("fullRect"),n.frameManager=new iR(e),n.gizmoManager=new iE,n.viewportNavigation=new nL(ia(n)),n.selection=new iF(e,n.hoveringResults),n.snapManager=new iV(ia(n)),n.editMode=n.createDefaultEditMode(),n.selection.on("preselectchange",n.onPreselectChange),n.createViewport(),iY(),n}G(n,t);var i=n.prototype;return i.on=function(e,n){var i=this;return t.prototype.on.call(this,e,n),function(){i.off(e,n)}},i.off=function(e,n){t.prototype.off.call(this,e,n)},i.emit=function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];var r=this.eventEmitter;r.emit.apply(r,[].concat([e],n))},i.getSelection=function(){return this.selection},i.getFrameManager=function(){return this.frameManager},i.getSnapManager=function(){return this.snapManager},i.getLoadingManager=function(){return this.loadingManager},i.getViewportNavigation=function(){return this.viewportNavigation},i.getSelectionTransformKind=function(){return this.selectionTransformKind},i.setSelectionTransformKind=function(e){this.selectionTransformKind=e},i.getActiveEditMode=function(){return this.editMode},i.setActiveEditMode=function(e){e!==this.editMode&&(this.commitEditMode(e),this.redispatchMouseAtCurrentPosition())},i.resetEditMode=function(){O(this.editMode,id)||this.setActiveEditMode(this.createDefaultEditMode())},i.init=function(){try{this.rebuildGizmos()}catch(t){var e;throw null==(e=this.errorMonitor)||e.report(t,"gizmo-init",{gizmoType:"unknown"}),t}},i.getMousePosition=function(){var e,t;return null!=(t=null==(e=this.gizmoViewport)?void 0:e.getMousePosition())?t:new e6},i.setCursor=function(t){var n=this.gizmoViewport;if(n){var i="default";if(t.type===e.GestureCursorType.CIRCLE){var r=t.radius||10;i='url("data:image/svg+xml,'+encodeURIComponent('<svg width="'+2*r+'" height="'+2*r+'" xmlns="http://www.w3.org/2000/svg"><circle cx="'+r+'" cy="'+r+'" r="'+r+'" fill="rgba(255, 255, 255, 0.6)" stroke="#6A34FF" stroke-width="1" /></svg>')+'") '+r+" "+r+", auto"}else{var o,s=iO[t.type];(null==s?void 0:s.type)==="svg"?i='url("data:image/svg+xml,'+encodeURIComponent(s.content.replace("rotate(0.00)","rotate("+(null!=(o=t.angle)?o:0)+")"))+'") 16 16, auto':(null==s?void 0:s.type)==="preset"&&(i=s.content)}n.defaultCursorShape=i}},i.getGizmoManager=function(){return this.gizmoManager},i.getEngine=function(){return this.engine},i.getConfigManager=function(){return this.gizmoManager.configs},i.isHandToolMode=function(){return O(this.activeGizmoTool,tD)},i.isMouseButtonPressed=function(){var e,t;return null!=(t=null==(e=this.gizmoViewport)?void 0:e.isMouseButtonPressed())&&t},i.rebuildGizmos=function(){var e,t=this.activeGizmoTool.createGizmos();(e=this.gizmosToDispose).push.apply(e,[].concat(this.gizmoManager.activeGizmos)),this.gizmoManager.activeGizmos=[].concat(this.createCommonBeforeToolSwitch(),t)},i.setActiveTool=function(e){this.activeGizmoTool=e,this.commitEditMode(this.resolveEditModeForTool(e)),this.disposeQueuedGizmos()},i.setErrorMonitor=function(e){this.errorMonitor=e},i.onDestroy=function(){null==this.editMode.onExit||this.editMode.onExit.call(this.editMode),this.clearCapturedGizmo(),this.selection.off("preselectchange",this.onPreselectChange),this.hoveredMediaItemId&&(nl(this.engine,this.hoveredMediaItemId),nh(this.engine,this.hoveredMediaItemId),this.hoveredMediaItemId=void 0),this.clearCapturedGizmo(),this.disposeQueuedGizmos(),this.gizmoManager.dispose(),this.viewportNavigation.dispose(),this.selectionTransformKind="idle",this.setCursor({type:e.GestureCursorType.NORMAL,angle:0}),this.gizmoViewport=void 0,t.prototype.onDestroy.call(this)},i.update=function(e){this.frameManager.onUpdate(),this.gizmoManager.onUpdate(),t.prototype.update.call(this,e)},i.createViewport=function(){var e=this,t=this.addChild(new iQ(this.engine));t.onMouseEnterCallback=function(){e.dispatchInput(0,t.createMouseEventAtCurrentPosition())},t.onMouseMoveCallback=function(t){e.dispatchInput(1,t)},t.onMouseDragCallback=function(t){e.dispatchInput(2,t)},t.onMouseLeaveCallback=function(){e.dispatchInput(3,t.createMouseEventAtCurrentPosition())},t.onMouseWheelCallback=function(t){e.dispatchInput(4,t)},t.onMouseDownCallback=function(t){e.dispatchInput(5,t)},t.onMouseUpCallback=function(t){e.dispatchInput(6,t)},t.onKeyDownCallback=function(t){e.dispatchInput(7,t)},t.onKeyUpCallback=function(t){e.dispatchInput(8,t)},t.drawCallBack=function(){e.drawGizmos(t)},this.gizmoViewport=t},i.commitEditMode=function(e){var t=this.editMode,n=t!==e;n&&(null==t.onExit||t.onExit.call(t),this.editMode=e),this.rebuildGizmos(),n&&(null==e.onEnter||e.onEnter.call(e))},i.resolveEditModeForTool=function(e){return this.editMode.canRemainActiveForTool(e)||O(this.editMode,id)?this.editMode:this.createDefaultEditMode()},i.createDefaultEditMode=function(){return new id(this)},i.dispatchInput=function(e,t){if(!this.ignoreInteraction&&!t.isAccepted())switch(e){case 4:this.viewportNavigation.handleWheel(t,!!this.capturedGizmo)&&this.redispatchMouseAtCurrentPosition();break;case 0:case 1:case 2:case 3:case 5:case 6:this.handleMouseInput(e,t);break;case 7:this.emit("keyDown",t),t.isAccepted()||this.handleKeyboardEvent(t,"down");break;case 8:this.emit("keyUp",t),t.isAccepted()||this.handleKeyboardEvent(t,"up")}this.disposeQueuedGizmos()},i.createCommonBeforeToolSwitch=function(){return[new ij(this),new iW(this),new iU(this,this.loadingManager)]},i.isPanning=function(){var e,t;return null!=(t=null==(e=this.gizmoManager.get("hand"))?void 0:e.isPanning())&&t},i.handleMouseInput=function(t,n){5===t&&this.clearCapturedGizmo();var i,r=this.capturedGizmo;6===t&&this.clearCapturedGizmo(),this.canDispatchMouseEvent(t,r)&&(this.setCursor({type:e.GestureCursorType.NORMAL,angle:0}),i=this.dispatchMouseEvent(r,t,n)),5===t&&(this.capturedGizmo=i),6===t&&this.redispatchMouseAtCurrentPosition()},i.dispatchMouseEvent=function(e,t,n){if(this.selection.clearHover(),e)return this.invoke(e,t,n),e;for(var i,r=[].concat(this.gizmoManager.activeGizmos),o=D(r);!(i=o()).done;){var s=i.value;this.prepareForDispatch(s,t)}for(var a,c=D(r);!(a=c()).done;){var l=a.value;if(this.invoke(l,t,n))return l}},i.canDispatchMouseEvent=function(e,t){var n;if(2===e&&!(null==(n=this.gizmoViewport)?void 0:n.hasCrossedDragThreshold())&&(!t||t.requiresDragThreshold()))return!1;if(t)return!0;switch(e){case 5:case 1:case 3:return!0;case 0:case 2:case 6:case 4:case 7:case 8:return!1}},i.clearCapturedGizmo=function(){this.capturedGizmo=void 0},i.redispatchMouseAtCurrentPosition=function(){var t=this.capturedGizmo,n=this.gizmoViewport;if(n&&(t||n.isMouseInside())){var i=n.createMouseEventAtCurrentPosition();this.setCursor({type:e.GestureCursorType.NORMAL,angle:0}),this.dispatchMouseEvent(t,t?2:1,i)}},i.disposeQueuedGizmos=function(){if(!(this.capturedGizmo&&this.gizmosToDispose.includes(this.capturedGizmo))){var e=this.gizmosToDispose;this.gizmosToDispose=[];for(var t,n=D(e);!(t=n()).done;)t.value.dispose()}},i.prepareForDispatch=function(e,t){try{null==e.prepareForDispatch||e.prepareForDispatch.call(e)}catch(n){this.handleGizmoError(n,this.errorPhaseFor(t),e.type)}},i.invoke=function(e,t,n){try{switch(t){case 0:break;case 5:e.onMouseDown(n);break;case 1:e.onMouseMove(n);break;case 2:e.onMouseDrag(n);break;case 6:e.onMouseUp(n);break;case 3:e.onMouseLeave()}}catch(i){n.clearAccepted(),this.handleGizmoError(i,this.errorPhaseFor(t),e.type)}return n.isAccepted()},i.handleKeyboardEvent=function(e,t){for(var n,i=D([].concat(this.gizmoManager.activeGizmos));!(n=i()).done;){var r=n.value;try{"down"===t?r.onKeyDown(e):r.onKeyUp(e)}catch(t){e.clearAccepted(),this.handleGizmoError(t,"gizmo-key",r.type)}if(e.isAccepted())break}this.redispatchMouseAtCurrentPosition()},i.errorPhaseFor=function(e){switch(e){case 5:return"gizmo-actionstart";case 0:case 1:case 2:case 3:case 4:return"gizmo-actionupdate";case 6:return"gizmo-actioncommit";case 7:case 8:return"gizmo-key"}},i.drawGizmos=function(e){this.drawHoverOverlay(e);for(var t,n,i=D(null!=(t=this.gizmoManager.activeGizmos)?t:[]);!(n=i()).done;){var r=n.value;this.drawGizmo(r,e)}this.drawSnappingVisualizations(e)},i.drawHoverOverlay=function(e){if(!this.isPanning()){var t=this.selection.hoverOverlayItemId;if(t){var n=nr(this.engine.sceneServer.compositions[0],t),i=n?t5(n,nd.getContainerSize(this.engine.canvas.parentElement)):void 0;if(i){var r=this.getConfigManager().get(nA);nW(e,tx(i),nD(r.preSelectedColor,1),r.preSelectedWidth)}}}},i.drawGizmo=function(e,t){try{e.draw(t)}catch(t){var n;null==(n=this.errorMonitor)||n.report(t,"gizmo-draw",{gizmoType:e.type})}},i.drawSnappingVisualizations=function(e){var t=this.snapManager.getSnappingVisualizations();if(0!==t.length)for(var n,i=this.snapManager.config,r=i.lineWidth,o=nD(i.lineColor,1),s=D(t);!(n=s()).done;){var a=n.value;e.drawLine(a.start.x,a.start.y,a.end.x,a.end.y,o,r)}},i.handleGizmoError=function(e,t,n){var i;null==(i=this.errorMonitor)||i.report(e,t,{gizmoType:n}),this.clearCapturedGizmo(),this.selectionTransformKind="idle",this.snapManager.reset()},tB(n,[{key:"ignoreInteraction",get:function(){return this._ignoreInteraction},set:function(e){e!==this._ignoreInteraction&&(this._ignoreInteraction=e)}}]),n}(r.Control),iZ=function(n){function i(){var t;return t=n.apply(this,arguments)||this,t.type=e.GizmoType.VIEWPORT_OVERLAY,t.box=new to,t.safeAreaTextures=new Map,t.safeAreaTexturePromises=new Map,t}G(i,n);var r=i.prototype;return r.onUpdate=function(){if(this.mainViewportBoxProvider){var e;this.box=null!=(e=this.mainViewportBoxProvider())?e:new to,this.transform=tg(this.box);return}var n=this._owner.getEngine().sceneServer.compositions[0],i=null==n?void 0:n.items.find(function(e){return e.type===t.spec.ItemType.null&&void 0!==e.getComponent(t.FrameComponent)&&"主合成蒙版"===e.name});if(i){var r=nd.getContainerSize(this._owner.getEngine().canvas.parentElement);this.box=t3(i,r),this.transform=t5(i,r);return}var o=null==n?void 0:n.items.find(function(e){return t$(e)});if(o){var s=nd.getContainerSize(this._owner.getEngine().canvas.parentElement);this.box=t3(o,s),this.transform=t5(o,s);return}if(!this.viewProperty){this.box=new to,this.transform=void 0;return}var a=null==n?void 0:n.items.find(function(e){var t;return null==(t=e.composition)?void 0:t.camera});if(!(null==n?void 0:n.camera)||!a){this.box=new to,this.transform=void 0;return}this.transform=this.projectPreviewBox(a,this.viewProperty.size),this.box=this.transform?tw(this.transform):new to},r.draw=function(e){var t=this.transform;if(!this.box.isEmpty()&&t){var n=tx(t),i=this.config,r=i.boxWidth,o=i.boxColor,s=i.outerMaskEnabled,a=i.markColor,c=i.markAlpha,l=i.safeAreaEnabled,u=i.safeAreaBoxColor,h=i.safeAreaBoxAlpha;if(s){var d=nD(a,c),m=nd.getContainerSize(this._owner.getEngine().canvas.parentElement),f=[new e6,new e6(m.x,0),m.clone(),new e6(0,m.y)];nX(e,[f[0],f[1],n[1],n[0]],d),nX(e,[f[1],f[2],n[2],n[1]],d),nX(e,[f[2],f[3],n[3],n[2]],d),nX(e,[f[3],f[0],n[0],n[3]],d)}if(l&&this.viewProperty){var p=this.viewProperty,g=p.size,v=p.safeArea,y=v[0],x=v[1],w=v[2],A=v[3],M=nD(u,h),I=y/g[1],C=x/g[1],S=w/g[0],T=A/g[0];nX(e,tx(t,new to(new e6(0,0),new e6(1,I))),M),nX(e,tx(t,new to(new e6(0,I),new e6(S,1))),M),nX(e,tx(t,new to(new e6(1-T,I),new e6(1,1))),M),nX(e,tx(t,new to(new e6(S,1-C),new e6(1-T,1))),M);for(var b,E,P=D(this.viewProperty.previewSafeAreas);!(E=P()).done;)b=this,function(){var n=E.value,i=n.box,r=i[0],o=i[1],s=i[2],a=i[3],c=n.color,l=n.url;if(!1!==n.visible){var u=tx(t,new to(new e6(r/g[0],o/g[1]),new e6((r+s)/g[0],(o+a)/g[1])));if(l){var h=b.getSafeAreaTexture(l,e.engine);if(!h)return;var d=u[0],m=u[1],f=u[3],p=m.clone().subtract(d),v=f.clone().subtract(d);n_(e,d,p,v,function(){e.drawTexture(0,0,1,1,h)})}else{var y,x,w,A,M=null!=(y=null==c?void 0:c[3])?y:.3;nX(e,u,nD((null!=(x=null==c?void 0:c[0])?x:255)<<16|(null!=(w=null==c?void 0:c[1])?w:0)<<8|(null!=(A=null==c?void 0:c[2])?A:0),M))}}}()}nW(e,n,nD(o,1),r)}},r.dispose=function(){this.safeAreaTextures.forEach(function(e){e.isDestroyed||e.dispose()}),this.safeAreaTextures.clear(),this.safeAreaTexturePromises.clear(),n.prototype.dispose.call(this)},r.projectPreviewBox=function(e,t){var n=nd.getContainerSize(this._owner.getEngine().canvas.parentElement),i=t[0]/2,r=t[1]/2;return tp([new e9(-i,r,0),new e9(i,r,0),new e9(i,-r,0),new e9(-i,-r,0)].map(function(t){return tU(t,e,n)}))},r.getSafeAreaTexture=function(e,n){var i=this,r=this.safeAreaTextures.get(e);if(r&&!r.isDestroyed)return r;if(!this.safeAreaTexturePromises.has(e)){var o=t.Texture.fromImage(e,n).then(function(t){return i.safeAreaTextures.set(e,t),t});this.safeAreaTexturePromises.set(e,o)}},tB(i,[{key:"config",get:function(){return this._owner.getConfigManager().get(nw)}}]),i}(tY);t.registerPlugin("editor-gizmo",e$);var iX="2.11.0-alpha.1";t.logger.info("Plugin editor gizmo version: "+iX+"."),iX!==E.version&&console.error("注意:请统一 Editor Gizmo 插件与 Player 版本,不统一的版本混用会有不可预知的后果!","\nAttention: Please ensure the Editor Gizmo plugin is synchronized with the Player version. Mixing and matching incompatible versions may result in unpredictable consequences!"),e.BASELINE_SYMBOL="M",e.BoxSelectionGizmo=n4,e.CONTROL_TEXT_GLYPH_PADDING=4,e.ChangeSelectionGizmo=n3,e.ClickDragMultiplexGizmo=n8,e.Color=e0,e.ConfigManager=ib,e.CornerRotationGizmo=n1,e.DEFAULT_LOADING_FRAGMENT=ng,e.DEG2RAD=e7,e.DRAG_THRESHOLD_PX=5,e.DefaultSelectionMode=id,e.DefaultVFXItems=tH,e.DirectionLightData=eu,e.EffectsEditMode=io,e.EnterEditModeGizmo=ih,e.Euler=e1,e.EulerOrder=e2,e.FrameManager=iR,e.GestureHandler=iK,e.Gizmo=tY,e.GizmoManager=iE,e.GizmoTool=tV,e.GizmoViewportUtils=nd,e.HandGizmo=ij,e.HandGizmoTool=tD,e.INFO_TEXT_FONT_FAMILY=nR,e.INFO_TEXT_FONT_SIZE=14,e.IconGizmo=iW,e.ImageCutGizmo=im,e.ImageCutGizmoTool=ip,e.ImageExpandGizmo=ig,e.ImageExpandGizmoTool=iv,e.ItemCreateGizmo=iC,e.ItemCreateGizmoTool=iS,e.LeaveEffectsEditGizmo=n2,e.LeaveTextEditGizmo=is,e.LoadingGizmo=iU,e.LoadingManager=iP,e.METRICS_STRING=nF,e.MaskGizmo=iA,e.MaskGizmoTool=iM,e.Matrix3=e4,e.Matrix4=e3,e.MoveGizmoTool=tO,e.MoveSelectionGizmo=ii,e.Quaternion=e5,e.RAD2DEG=te,e.Ray=e8,e.RayCaster=tP,e.ResizeSelectionGizmo=n0,e.SCALE_CORNER_HIT_SIZE=14,e.SelectTextGizmo=il,e.Selection=iF,e.SnapManager=iV,e.SpriteTextEditGizmo=ix,e.SpriteTextEditGizmoTool=iw,e.TEXT_EDIT_BOX_LINE_COLOR=3900150,e.TEXT_EDIT_BOX_LINE_WIDTH=2,e.TextEditMode=iu,e.TextEditSession=tF,e.TextGizmo=ic,e.VFXItemFactory=tN,e.Vector2=e6,e.Vector3=e9,e.ViewportNavigationController=nL,e.ViewportOverlayGizmo=iZ,e.calculateAutoLayoutIndicatorLine=n9,e.calculateAutoLayoutPositionByMouse=n7,e.calculateInsertPositionFromLayout=ie,e.clamp=tt,e.cloneConfigValue=nm,e.computeFrameAutoLayout=iB,e.createGeometry=ef,e.createInteractionPlane=t_,e.createSelectionInteractionGizmo=ir,e.cursorMap=iO,e.decomposeItemTransform=t9,e.defineConfig=np,e.drawBox=nK,e.drawCorners=nW,e.drawDashedCorners=nQ,e.drawWithBoxTransform=n_,e.effectsEditModeConfig=ny,e.fillBox=nZ,e.fillBoxByCorners=nX,e.fillRotatedRect=nq,e.freezeConfigValue=nf,e.getAbsMaxIndex=function(e){var t,n=0;return e.forEach(function(e,i){if(0===i)t=Math.abs(e);else{var r=Math.abs(e);t<r&&(t=r,n=i)}}),n},e.getAngleByVectors=tT,e.getBoxByNormalizeBox=tb,e.getBoxCorners=tf,e.getBoxTransform=tp,e.getBoxTransformFromBox=tg,e.getEffectsPlayerItemOwner=nt,e.getFramePlayerItemAncestors=nn,e.getItemChildren=ni,e.getItemTransform=t6,e.getItemViewAnchor=t8,e.getItemViewBox=t3,e.getItemViewSize=function(e,t){return t$(e)?tX(t7(e),t,e):t3(e,t).getSize()},e.getItemViewTransform=t5,e.getItemWorldSize=t7,e.getNormalizeBoxByBoxes=tE,e.getPlayerItemById=nr,e.getRotatedBoxCorners=nJ,e.getTransformedBox=tw,e.getTransformedBoxCorners=tx,e.getVector2Angle=tS,e.getViewportTranslationRange=nG,e.iconConfig=nE,e.imageCutConfig=nC,e.imageExpandConfig=nS,e.inverseTransformBoxPoint=ty,e.isDragThresholdReached=iI,e.isEffectsPlayerItem=t0,e.isEqual=tn,e.isFramePlayerItem=t$,e.isGeneratorPlayerItem=t1,e.isGroupPlayerItem=t4,e.isPlayerItemVisible=ne,e.isVideoGeneratorPlayerItem=t2,e.isZero=ti,e.itemCreateConfig=nP,e.loadCursorIcons=iY,e.loadingConfig=nv,e.maskConfig=nT,e.measureControlTextCellHeight=nN,e.measureTextMetrics=nY,e.measureTextWidth=nH,e.ndcSizeToViewSize=tQ,e.panView=nB,e.pauseEffectsItem=nh,e.pauseVideoComponent=na,e.pauseVideoItem=nl,e.playEffectsItem=nu,e.playVideoComponent=ns,e.playVideoItem=nc,e.projectPoint=tU,e.resizeFrameItem=nk,e.resizeSelectionConfig=nI,e.rotateBox=function(e,t,n){var i,r;return(void 0===n&&(n=e.getCenter()),e.isEmpty())?e:tI(e,(i=tf(e),r=n,i.map(function(e){return e.clone().rotateAround(r,t)})))},e.scaleBox=tC,e.selectionPreviewConfig=nA,e.selectionSnapConfig=nM,e.setBoxFromPoints=tI,e.spriteTextEditConfig=nb,e.toColor=nD,e.transformBoxPoint=tv,e.transformedBoxContainsPoint=tM,e.transformedBoxIntersectsBox=tA,e.truncateText=nU,e.version=iX,e.viewPositionToNDC=tj,e.viewPositionToPixel=tq,e.viewPositionToWorld=tK,e.viewSizeToNDC=tW,e.viewSizeToPixel=tJ,e.viewSizeToWorld=tZ,e.viewportNavigationConfig=nx,e.viewportOverlayConfig=nw,e.worldSizeToViewSize=tX,e.wrapText=nj,e.zoomView=nz,Object.defineProperty(e,"__esModule",{value:!0})});
|
|
8
8
|
//# sourceMappingURL=index.min.js.map
|