!(function(){var ZQ=Object.defineProperty,QQ=Object.defineProperties;var YQ=Object.getOwnPropertyDescriptors;var ST=Object.getOwnPropertySymbols;var XQ=Object.prototype.hasOwnProperty,JQ=Object.prototype.propertyIsEnumerable;var Fh=Math.pow,GS=(St,Dt,Ie)=>Dt in St?ZQ(St,Dt,{enumerable:!0,configurable:!0,writable:!0,value:Ie}):St[Dt]=Ie,G0=(St,Dt)=>{for(var Ie in Dt||(Dt={}))XQ.call(Dt,Ie)&&GS(St,Ie,Dt[Ie]);if(ST)for(var Ie of ST(Dt))JQ.call(Dt,Ie)&&GS(St,Ie,Dt[Ie]);return St},HS=(St,Dt)=>QQ(St,YQ(Dt));var Ol=(St,Dt,Ie)=>GS(St,typeof Dt!="symbol"?Dt+"":Dt,Ie);(self.webpackChunk=self.webpackChunk||[]).push([[8823],{89489:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return Ae}});var Be=Ie(54476),He=Ie(59301),Fe={icon:{tag:"svg",attrs:{viewBox:"0 0 1024 1024",focusable:"false"},children:[{tag:"path",attrs:{d:"M840.4 300H183.6c-19.7 0-30.7 20.8-18.5 35l328.4 380.8c9.4 10.9 27.5 10.9 37 0L858.9 335c12.2-14.2 1.2-35-18.5-35z"}}]},name:"caret-down",theme:"outlined"},Ce=Fe,_e=Ie(7657),Pe=function(we,pe){return He.createElement(_e.Z,(0,Be.Z)({},we,{ref:pe,icon:Ce}))},ge=He.forwardRef(Pe),Ae=ge},59477:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return Ae}});var Be=Ie(54476),He=Ie(59301),Fe={icon:{tag:"svg",attrs:{viewBox:"0 0 1024 1024",focusable:"false"},children:[{tag:"path",attrs:{d:"M858.9 689L530.5 308.2c-9.4-10.9-27.5-10.9-37 0L165.1 689c-12.2 14.2-1.2 35 18.5 35h656.8c19.7 0 30.7-20.8 18.5-35z"}}]},name:"caret-up",theme:"outlined"},Ce=Fe,_e=Ie(7657),Pe=function(we,pe){return He.createElement(_e.Z,(0,Be.Z)({},we,{ref:pe,icon:Ce}))},ge=He.forwardRef(Pe),Ae=ge},26227:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return Ae}});var Be=Ie(54476),He=Ie(59301),Fe={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M360 184h-8c4.4 0 8-3.6 8-8v8h304v-8c0 4.4 3.6 8 8 8h-8v72h72v-80c0-35.3-28.7-64-64-64H352c-35.3 0-64 28.7-64 64v80h72v-72zm504 72H160c-17.7 0-32 14.3-32 32v32c0 4.4 3.6 8 8 8h60.4l24.7 523c1.6 34.1 29.8 61 63.9 61h454c34.2 0 62.3-26.8 63.9-61l24.7-523H888c4.4 0 8-3.6 8-8v-32c0-17.7-14.3-32-32-32zM731.3 840H292.7l-24.2-512h487l-24.2 512z"}}]},name:"delete",theme:"outlined"},Ce=Fe,_e=Ie(7657),Pe=function(we,pe){return He.createElement(_e.Z,(0,Be.Z)({},we,{ref:pe,icon:Ce}))},ge=He.forwardRef(Pe),Ae=ge},49198:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return Ae}});var Be=Ie(54476),He=Ie(59301),Fe={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M533.2 492.3L277.9 166.1c-3-3.9-7.7-6.1-12.6-6.1H188c-6.7 0-10.4 7.7-6.3 12.9L447.1 512 181.7 851.1A7.98 7.98 0 00188 864h77.3c4.9 0 9.6-2.3 12.6-6.1l255.3-326.1c9.1-11.7 9.1-27.9 0-39.5zm304 0L581.9 166.1c-3-3.9-7.7-6.1-12.6-6.1H492c-6.7 0-10.4 7.7-6.3 12.9L751.1 512 485.7 851.1A7.98 7.98 0 00492 864h77.3c4.9 0 9.6-2.3 12.6-6.1l255.3-326.1c9.1-11.7 9.1-27.9 0-39.5z"}}]},name:"double-right",theme:"outlined"},Ce=Fe,_e=Ie(7657),Pe=function(we,pe){return He.createElement(_e.Z,(0,Be.Z)({},we,{ref:pe,icon:Ce}))},ge=He.forwardRef(Pe),Ae=ge},41464:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return Ae}});var Be=Ie(54476),He=Ie(59301),Fe={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M505.7 661a8 8 0 0012.6 0l112-141.7c4.1-5.2.4-12.9-6.3-12.9h-74.1V168c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v338.3H400c-6.7 0-10.4 7.7-6.3 12.9l112 141.8zM878 626h-60c-4.4 0-8 3.6-8 8v154H214V634c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v198c0 17.7 14.3 32 32 32h684c17.7 0 32-14.3 32-32V634c0-4.4-3.6-8-8-8z"}}]},name:"download",theme:"outlined"},Ce=Fe,_e=Ie(7657),Pe=function(we,pe){return He.createElement(_e.Z,(0,Be.Z)({},we,{ref:pe,icon:Ce}))},ge=He.forwardRef(Pe),Ae=ge},87169:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return Ae}});var Be=Ie(54476),He=Ie(59301),Fe={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"}},{tag:"path",attrs:{d:"M464 688a48 48 0 1096 0 48 48 0 10-96 0zm24-112h48c4.4 0 8-3.6 8-8V296c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8z"}}]},name:"exclamation-circle",theme:"outlined"},Ce=Fe,_e=Ie(7657),Pe=function(we,pe){return He.createElement(_e.Z,(0,Be.Z)({},we,{ref:pe,icon:Ce}))},ge=He.forwardRef(Pe),Ae=ge},52671:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return Ae}});var Be=Ie(54476),He=Ie(59301),Fe={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M854.6 288.6L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7zM790.2 326H602V137.8L790.2 326zm1.8 562H232V136h302v216a42 42 0 0042 42h216v494z"}}]},name:"file",theme:"outlined"},Ce=Fe,_e=Ie(7657),Pe=function(we,pe){return He.createElement(_e.Z,(0,Be.Z)({},we,{ref:pe,icon:Ce}))},ge=He.forwardRef(Pe),Ae=ge},8657:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return Ae}});var Be=Ie(54476),He=Ie(59301),Fe={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M928 444H820V330.4c0-17.7-14.3-32-32-32H473L355.7 186.2a8.15 8.15 0 00-5.5-2.2H96c-17.7 0-32 14.3-32 32v592c0 17.7 14.3 32 32 32h698c13 0 24.8-7.9 29.7-20l134-332c1.5-3.8 2.3-7.9 2.3-12 0-17.7-14.3-32-32-32zM136 256h188.5l119.6 114.4H748V444H238c-13 0-24.8 7.9-29.7 20L136 643.2V256zm635.3 512H159l103.3-256h612.4L771.3 768z"}}]},name:"folder-open",theme:"outlined"},Ce=Fe,_e=Ie(7657),Pe=function(we,pe){return He.createElement(_e.Z,(0,Be.Z)({},we,{ref:pe,icon:Ce}))},ge=He.forwardRef(Pe),Ae=ge},56082:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return Ae}});var Be=Ie(54476),He=Ie(59301),Fe={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M300 276.5a56 56 0 1056-97 56 56 0 00-56 97zm0 284a56 56 0 1056-97 56 56 0 00-56 97zM640 228a56 56 0 10112 0 56 56 0 00-112 0zm0 284a56 56 0 10112 0 56 56 0 00-112 0zM300 844.5a56 56 0 1056-97 56 56 0 00-56 97zM640 796a56 56 0 10112 0 56 56 0 00-112 0z"}}]},name:"holder",theme:"outlined"},Ce=Fe,_e=Ie(7657),Pe=function(we,pe){return He.createElement(_e.Z,(0,Be.Z)({},we,{ref:pe,icon:Ce}))},ge=He.forwardRef(Pe),Ae=ge},33853:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return Ae}});var Be=Ie(54476),He=Ie(59301),Fe={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M724 218.3V141c0-6.7-7.7-10.4-12.9-6.3L260.3 486.8a31.86 31.86 0 000 50.3l450.8 352.1c5.3 4.1 12.9.4 12.9-6.3v-77.3c0-4.9-2.3-9.6-6.1-12.6l-360-281 360-281.1c3.8-3 6.1-7.7 6.1-12.6z"}}]},name:"left",theme:"outlined"},Ce=Fe,_e=Ie(7657),Pe=function(we,pe){return He.createElement(_e.Z,(0,Be.Z)({},we,{ref:pe,icon:Ce}))},ge=He.forwardRef(Pe),Ae=ge},15075:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return Ae}});var Be=Ie(54476),He=Ie(59301),Fe={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M328 544h368c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8z"}},{tag:"path",attrs:{d:"M880 112H144c-17.7 0-32 14.3-32 32v736c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V144c0-17.7-14.3-32-32-32zm-40 728H184V184h656v656z"}}]},name:"minus-square",theme:"outlined"},Ce=Fe,_e=Ie(7657),Pe=function(we,pe){return He.createElement(_e.Z,(0,Be.Z)({},we,{ref:pe,icon:Ce}))},ge=He.forwardRef(Pe),Ae=ge},43531:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return Ae}});var Be=Ie(54476),He=Ie(59301),Fe={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M328 544h152v152c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V544h152c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8H544V328c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v152H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8z"}},{tag:"path",attrs:{d:"M880 112H144c-17.7 0-32 14.3-32 32v736c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V144c0-17.7-14.3-32-32-32zm-40 728H184V184h656v656z"}}]},name:"plus-square",theme:"outlined"},Ce=Fe,_e=Ie(7657),Pe=function(we,pe){return He.createElement(_e.Z,(0,Be.Z)({},we,{ref:pe,icon:Ce}))},ge=He.forwardRef(Pe),Ae=ge},38819:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return Ae}});var Be=Ie(54476),He=Ie(59301),Fe={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M765.7 486.8L314.9 134.7A7.97 7.97 0 00302 141v77.3c0 4.9 2.3 9.6 6.1 12.6l360 281.1-360 281.1c-3.9 3-6.1 7.7-6.1 12.6V883c0 6.7 7.7 10.4 12.9 6.3l450.8-352.1a31.96 31.96 0 000-50.4z"}}]},name:"right",theme:"outlined"},Ce=Fe,_e=Ie(7657),Pe=function(we,pe){return He.createElement(_e.Z,(0,Be.Z)({},we,{ref:pe,icon:Ce}))},ge=He.forwardRef(Pe),Ae=ge},13722:function(St){(function(Ie,Be){St.exports=Be()})(typeof self!="undefined"?self:this,function(){return function(Dt){var Ie={};function Be(He){if(Ie[He])return Ie[He].exports;var Fe=Ie[He]={i:He,l:!1,exports:{}};return Dt[He].call(Fe.exports,Fe,Fe.exports,Be),Fe.l=!0,Fe.exports}return Be.m=Dt,Be.c=Ie,Be.d=function(He,Fe,Ce){Be.o(He,Fe)||Object.defineProperty(He,Fe,{configurable:!1,enumerable:!0,get:Ce})},Be.n=function(He){var Fe=He&&He.__esModule?function(){return He.default}:function(){return He};return Be.d(Fe,"a",Fe),Fe},Be.o=function(He,Fe){return Object.prototype.hasOwnProperty.call(He,Fe)},Be.p="",Be(Be.s=5)}([function(Dt,Ie){function Be(He,Fe,Ce,_e){return _e===void 0&&(_e="height"),Ce==="center"?(He[_e]+Fe[_e])/2:He.height}Dt.exports={assign:Object.assign,getHeight:Be}},function(Dt,Ie,Be){var He=Be(3),Fe=function(){function Ce(Pe,ge){ge===void 0&&(ge={});var Ae=this;Ae.options=ge,Ae.rootNode=He(Pe,ge)}var _e=Ce.prototype;return _e.execute=function(){throw new Error("please override this method")},Ce}();Dt.exports=Fe},function(Dt,Ie,Be){var He=Be(4),Fe=["LR","RL","TB","BT","H","V"],Ce=["LR","RL","H"],_e=function(be){return Ce.indexOf(be)>-1},Pe=Fe[0];Dt.exports=function(Ae,be,we){var pe=be.direction||Pe;if(be.isHorizontal=_e(pe),pe&&Fe.indexOf(pe)===-1)throw new TypeError("Invalid direction: "+pe);if(pe===Fe[0])we(Ae,be);else if(pe===Fe[1])we(Ae,be),Ae.right2left();else if(pe===Fe[2])we(Ae,be);else if(pe===Fe[3])we(Ae,be),Ae.bottom2top();else if(pe===Fe[4]||pe===Fe[5]){var ye=He(Ae,be),xe=ye.left,ce=ye.right;we(xe,be),we(ce,be),be.isHorizontal?xe.right2left():xe.bottom2top(),ce.translate(xe.x-ce.x,xe.y-ce.y),Ae.x=xe.x,Ae.y=ce.y;var te=Ae.getBoundingBox();be.isHorizontal?te.top<0&&Ae.translate(0,-te.top):te.left<0&&Ae.translate(-te.left,0)}var ne=be.fixedRoot;return ne===void 0&&(ne=!0),ne&&Ae.translate(-(Ae.x+Ae.width/2+Ae.hgap),-(Ae.y+Ae.height/2+Ae.vgap)),ge(Ae,be),Ae};function ge(Ae,be){if(be.radial){var we=be.isHorizontal?["x","y"]:["y","x"],pe=we[0],ye=we[1],xe={x:1/0,y:1/0},ce={x:-1/0,y:-1/0},te=0;Ae.DFTraverse(function(oe){te++;var de=oe.x,he=oe.y;xe.x=Math.min(xe.x,de),xe.y=Math.min(xe.y,he),ce.x=Math.max(ce.x,de),ce.y=Math.max(ce.y,he)});var ne=ce[ye]-xe[ye];if(ne===0)return;var le=Math.PI*2/te;Ae.DFTraverse(function(oe){var de=(oe[ye]-xe[ye])/ne*(Math.PI*2-le)+le,he=oe[pe]-Ae[pe];oe.x=Math.cos(de)*he,oe.y=Math.sin(de)*he})}}},function(Dt,Ie,Be){var He=Be(0),Fe=18,Ce=Fe*2,_e=Fe,Pe={getId:function(we){return we.id||we.name},getPreH:function(we){return we.preH||0},getPreV:function(we){return we.preV||0},getHGap:function(we){return we.hgap||_e},getVGap:function(we){return we.vgap||_e},getChildren:function(we){return we.children},getHeight:function(we){return we.height||Ce},getWidth:function(we){var pe=we.label||" ";return we.width||pe.split("").length*Fe}};function ge(be,we){var pe=this;if(pe.vgap=pe.hgap=0,be instanceof ge)return be;pe.data=be;var ye=we.getHGap(be),xe=we.getVGap(be);return pe.preH=we.getPreH(be),pe.preV=we.getPreV(be),pe.width=we.getWidth(be),pe.height=we.getHeight(be),pe.width+=pe.preH,pe.height+=pe.preV,pe.id=we.getId(be),pe.x=pe.y=0,pe.depth=0,pe.children||(pe.children=[]),pe.addGap(ye,xe),pe}He.assign(ge.prototype,{isRoot:function(){return this.depth===0},isLeaf:function(){return this.children.length===0},addGap:function(we,pe){var ye=this;ye.hgap+=we,ye.vgap+=pe,ye.width+=2*we,ye.height+=2*pe},eachNode:function(we){for(var pe=this,ye=[pe],xe;xe=ye.shift();)we(xe),ye=xe.children.concat(ye)},DFTraverse:function(we){this.eachNode(we)},BFTraverse:function(we){for(var pe=this,ye=[pe],xe;xe=ye.shift();)we(xe),ye=ye.concat(xe.children)},getBoundingBox:function(){var we={left:Number.MAX_VALUE,top:Number.MAX_VALUE,width:0,height:0};return this.eachNode(function(pe){we.left=Math.min(we.left,pe.x),we.top=Math.min(we.top,pe.y),we.width=Math.max(we.width,pe.x+pe.width),we.height=Math.max(we.height,pe.y+pe.height)}),we},translate:function(we,pe){we===void 0&&(we=0),pe===void 0&&(pe=0),this.eachNode(function(ye){ye.x+=we,ye.y+=pe,ye.x+=ye.preH,ye.y+=ye.preV})},right2left:function(){var we=this,pe=we.getBoundingBox();we.eachNode(function(ye){ye.x=ye.x-(ye.x-pe.left)*2-ye.width}),we.translate(pe.width,0)},bottom2top:function(){var we=this,pe=we.getBoundingBox();we.eachNode(function(ye){ye.y=ye.y-(ye.y-pe.top)*2-ye.height}),we.translate(0,pe.height)}});function Ae(be,we,pe){we===void 0&&(we={}),we=He.assign({},Pe,we);var ye=new ge(be,we),xe=[ye],ce;if(!pe&&!be.collapsed){for(;ce=xe.shift();)if(!ce.data.collapsed){var te=we.getChildren(ce.data),ne=te?te.length:0;if(ce.children=new Array(ne),te&&ne)for(var le=0;leNe.low&&(Ne=Ne.nxt);var nt=Ge+ze.prelim+ze.w-(Qe+Xe.prelim);nt>0&&(Qe+=nt,xe(De,Re,Ne.index,nt));var $e=ne(ze),qe=ne(Xe);$e<=qe&&(ze=te(ze),ze!==null&&(Ge+=ze.mod)),$e>=qe&&(Xe=ce(Xe),Xe!==null&&(Qe+=Xe.mod))}!ze&&Xe?le(De,Re,Xe,Qe):ze&&!Xe&&oe(De,Re,ze,Ge)}function xe(De,Re,Ne,ze){De.c[Re].mod+=ze,De.c[Re].msel+=ze,De.c[Re].mser+=ze,ie(De,Re,Ne,ze)}function ce(De){return De.cs===0?De.tl:De.c[0]}function te(De){return De.cs===0?De.tr:De.c[De.cs-1]}function ne(De){return De.y+De.h}function le(De,Re,Ne,ze){var Ge=De.c[0].el;Ge.tl=Ne;var Xe=ze-Ne.mod-De.c[0].msel;Ge.mod+=Xe,Ge.prelim-=Xe,De.c[0].el=De.c[Re].el,De.c[0].msel=De.c[Re].msel}function oe(De,Re,Ne,ze){var Ge=De.c[Re].er;Ge.tr=Ne;var Xe=ze-Ne.mod-De.c[Re].mser;Ge.mod+=Xe,Ge.prelim-=Xe,De.c[Re].er=De.c[Re-1].er,De.c[Re].mser=De.c[Re-1].mser}function de(De){De.prelim=(De.c[0].prelim+De.c[0].mod+De.c[De.cs-1].mod+De.c[De.cs-1].prelim+De.c[De.cs-1].w)/2-De.w/2}function he(De,Re){Re+=De.mod,De.x=De.prelim+Re,ue(De);for(var Ne=0;Ne=Ne.low;)Ne=Ne.nxt;return{low:De,index:Re,nxt:Ne}}Pe(ge,be);var Se=Be.fromNode(ge,be);return we(Se),he(Se,0),_e(Se,ge,be),Ce(ge,be),ge}},function(Dt,Ie,Be){function He(pe,ye){pe.prototype=Object.create(ye.prototype),pe.prototype.constructor=pe,Fe(pe,ye)}function Fe(pe,ye){return Fe=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(xe,ce){return xe.__proto__=ce,xe},Fe(pe,ye)}var Ce=Be(1),_e=Be(9),Pe=Be(2),ge=Be(0),Ae=function(pe){function ye(){return pe.apply(this,arguments)||this}He(ye,pe);var xe=ye.prototype;return xe.execute=function(){var te=this;return te.rootNode.width=0,Pe(te.rootNode,te.options,_e)},ye}(Ce),be={};function we(pe,ye){return ye=ge.assign({},be,ye),new Ae(pe,ye).execute()}Dt.exports=we},function(Dt,Ie,Be){var He=Be(0);function Fe(Pe,ge){Pe===void 0&&(Pe=0),ge===void 0&&(ge=[]);var Ae=this;Ae.x=Ae.y=0,Ae.leftChild=Ae.rightChild=null,Ae.height=0,Ae.children=ge}var Ce={isHorizontal:!0,nodeSep:20,nodeSize:20,rankSep:200,subTreeSep:10};function _e(Pe,ge,Ae){Ae?(ge.x=Pe.x,ge.y=Pe.y):(ge.x=Pe.y,ge.y=Pe.x),Pe.children.forEach(function(be,we){_e(be,ge.children[we],Ae)})}Dt.exports=function(Pe,ge){ge===void 0&&(ge={}),ge=He.assign({},Ce,ge);var Ae=0;function be(ce){if(!ce)return null;ce.width=0,ce.depth&&ce.depth>Ae&&(Ae=ce.depth);var te=ce.children,ne=te.length,le=new Fe(ce.height,[]);return te.forEach(function(oe,de){var he=be(oe);le.children.push(he),de===0&&(le.leftChild=he),de===ne-1&&(le.rightChild=he)}),le.originNode=ce,le.isLeaf=ce.isLeaf(),le}function we(ce){if(ce.isLeaf||ce.children.length===0)ce.drawingDepth=Ae;else{var te=ce.children.map(function(le){return we(le)}),ne=Math.min.apply(null,te);ce.drawingDepth=ne-1}return ce.drawingDepth}var pe;function ye(ce){ce.x=ce.drawingDepth*ge.rankSep,ce.isLeaf?(ce.y=0,pe&&(ce.y=pe.y+pe.height+ge.nodeSep,ce.originNode.parent!==pe.originNode.parent&&(ce.y+=ge.subTreeSep)),pe=ce):(ce.children.forEach(function(te){ye(te)}),ce.y=(ce.leftChild.y+ce.rightChild.y)/2)}var xe=be(Pe);return we(xe),ye(xe),_e(xe,Pe,ge.isHorizontal),Pe}},function(Dt,Ie,Be){function He(xe,ce){xe.prototype=Object.create(ce.prototype),xe.prototype.constructor=xe,Fe(xe,ce)}function Fe(xe,ce){return Fe=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(te,ne){return te.__proto__=ne,te},Fe(xe,ce)}var Ce=Be(1),_e=Be(11),Pe=Be(4),ge=Be(0),Ae=["LR","RL","H"],be=Ae[0],we=function(xe){function ce(){return xe.apply(this,arguments)||this}He(ce,xe);var te=ce.prototype;return te.execute=function(){var le=this,oe=le.options,de=le.rootNode;oe.isHorizontal=!0;var he=oe.indent,ie=he===void 0?20:he,ue=oe.dropCap,ve=ue===void 0?!0:ue,Se=oe.direction,De=Se===void 0?be:Se,Re=oe.align;if(De&&Ae.indexOf(De)===-1)throw new TypeError("Invalid direction: "+De);if(De===Ae[0])_e(de,ie,ve,Re);else if(De===Ae[1])_e(de,ie,ve,Re),de.right2left();else if(De===Ae[2]){var Ne=Pe(de,oe),ze=Ne.left,Ge=Ne.right;_e(ze,ie,ve,Re),ze.right2left(),_e(Ge,ie,ve,Re);var Xe=ze.getBoundingBox();Ge.translate(Xe.width,0),de.x=Ge.x-de.width/2}return de},ce}(Ce),pe={};function ye(xe,ce){return ce=ge.assign({},pe,ce),new we(xe,ce).execute()}Dt.exports=ye},function(Dt,Ie,Be){var He=Be(0);function Fe(Ce,_e,Pe,ge,Ae){var be=(typeof Pe=="function"?Pe(Ce):Pe)*Ce.depth;if(!ge)try{if(Ce.id===Ce.parent.children[0].id){Ce.x+=be,Ce.y=_e?_e.y:0;return}}catch(ye){}if(Ce.x+=be,_e){if(Ce.y=_e.y+He.getHeight(_e,Ce,Ae),_e.parent&&Ce.parent.id!==_e.parent.id){var we=_e.parent,pe=we.y+He.getHeight(we,Ce,Ae);Ce.y=pe>Ce.y?pe:Ce.y}}else Ce.y=0}Dt.exports=function(Ce,_e,Pe,ge){var Ae=null;Ce.eachNode(function(be){Fe(be,Ae,_e,Pe,ge),Ae=be})}},function(Dt,Ie,Be){function He(pe,ye){pe.prototype=Object.create(ye.prototype),pe.prototype.constructor=pe,Fe(pe,ye)}function Fe(pe,ye){return Fe=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(xe,ce){return xe.__proto__=ce,xe},Fe(pe,ye)}var Ce=Be(1),_e=Be(13),Pe=Be(2),ge=Be(0),Ae=function(pe){function ye(){return pe.apply(this,arguments)||this}He(ye,pe);var xe=ye.prototype;return xe.execute=function(){var te=this;return Pe(te.rootNode,te.options,_e)},ye}(Ce),be={};function we(pe,ye){return ye=ge.assign({},be,ye),new Ae(pe,ye).execute()}Dt.exports=we},function(Dt,Ie,Be){var He=Be(0);function Fe(Pe,ge){var Ae=0;return Pe.children.length?Pe.children.forEach(function(be){Ae+=Fe(be,ge)}):Ae=Pe.height,Pe._subTreeSep=ge.getSubTreeSep(Pe.data),Pe.totalHeight=Math.max(Pe.height,Ae)+2*Pe._subTreeSep,Pe.totalHeight}function Ce(Pe){var ge=Pe.children,Ae=ge.length;if(Ae){ge.forEach(function(ce){Ce(ce)});var be=ge[0],we=ge[Ae-1],pe=we.y-be.y+we.height,ye=0;if(ge.forEach(function(ce){ye+=ce.totalHeight}),pe>Pe.height)Pe.y=be.y+pe/2-Pe.height/2;else if(ge.length!==1||Pe.height>ye){var xe=Pe.y+(Pe.height-pe)/2-be.y;ge.forEach(function(ce){ce.translate(0,xe)})}else Pe.y=(be.y+be.height/2+we.y+we.height/2)/2-Pe.height/2}}var _e={getSubTreeSep:function(){return 0}};Dt.exports=function(Pe,ge){ge===void 0&&(ge={}),ge=He.assign({},_e,ge),Pe.parent={x:0,width:0,height:0,y:0},Pe.BFTraverse(function(Ae){Ae.x=Ae.parent.x+Ae.parent.width}),Pe.parent=null,Fe(Pe,ge),Pe.startY=0,Pe.y=Pe.totalHeight/2-Pe.height/2,Pe.eachNode(function(Ae){var be=Ae.children,we=be.length;if(we){var pe=be[0];if(pe.startY=Ae.startY+Ae._subTreeSep,we===1)pe.y=Ae.y+Ae.height/2-pe.height/2;else{pe.y=pe.startY+pe.totalHeight/2-pe.height/2;for(var ye=1;yewe in be?He(be,we,{enumerable:!0,configurable:!0,writable:!0,value:pe}):be[we]=pe,ge=(be,we)=>{for(var pe in we||(we={}))Ce.call(we,pe)&&Pe(be,pe,we[pe]);if(Fe)for(var pe of Fe(we))_e.call(we,pe)&&Pe(be,pe,we[pe]);return be};const Ae=be=>React.createElement("svg",ge({className:"cjz_svg__icon",viewBox:"0 0 3194 1024",xmlns:"http://www.w3.org/2000/svg",width:623.828,height:200},be),React.createElement("path",{d:"M512 0h2170.88c282.624 0 512 229.376 512 512s-229.376 512-512 512H512C229.376 1024 0 794.624 0 512S229.376 0 512 0z",fill:"#EBEEFD"}),React.createElement("path",{d:"M1638.4 741.376c28.672 0 40.96-16.384 40.96-45.056V294.912h-36.864v393.216c0 16.384-8.192 20.48-20.48 20.48-24.576 0-45.056 0-73.728-4.096l8.192 32.768h81.92zm-372.736-258.048c49.152-45.056 90.112-94.208 126.976-147.456 32.768 32.768 69.632 77.824 110.592 135.168l24.576-24.576c-40.96-49.152-81.92-98.304-122.88-143.36h-24.576c-40.96 57.344-81.92 110.592-131.072 155.648l16.384 24.576zm323.584 159.744V339.968h-32.768v307.2h32.768zm-131.072 94.208c24.576 0 36.864-4.096 45.056-12.288s16.384-36.864 20.48-77.824l-32.768-12.288c0 28.672-4.096 45.056-8.192 53.248s-16.384 12.288-32.768 12.288h-98.304c-12.288 0-20.48-4.096-20.48-16.384v-204.8h106.496v94.208c0 12.288-8.192 20.48-20.48 20.48-16.384 0-32.768 0-49.152-4.096l8.192 32.768h53.248c28.672 0 40.96-16.384 40.96-40.96V450.56h-176.128v245.76c0 24.576 12.288 36.864 40.96 36.864h122.88zm585.728-53.248V634.88h131.072v-28.672h-131.072v-40.96h114.688v-28.672h-114.688v-40.96H2150.4v-69.632h32.768v-28.672H2150.4V327.68h-106.496v-32.768h-32.768v32.768h-86.016v28.672h86.016v36.864h-110.592v28.672h110.592v40.96h-86.016v28.672h86.016v40.96h-98.304v28.672h98.304v40.96h-110.592v28.672h110.592v49.152h32.768zm-270.336 57.344c24.576-16.384 40.96-36.864 57.344-61.44 4.096 4.096 12.288 8.192 16.384 12.288 36.864 24.576 102.4 36.864 188.416 36.864h147.456l4.096-32.768c-57.344 0-110.592 4.096-167.936 4.096-65.536 0-118.784-12.288-151.552-28.672-8.192-4.096-16.384-12.288-24.576-20.48 24.576-45.056 36.864-98.304 36.864-163.84v-20.48h-77.824c24.576-32.768 49.152-73.728 73.728-118.784v-28.672H1761.28v32.768h81.92c-24.576 40.96-49.152 81.92-77.824 118.784v28.672h90.112c-4.096 45.056-12.288 86.016-28.672 122.88-12.288-20.48-24.576-49.152-32.768-86.016l-32.768 12.288c12.288 40.96 28.672 77.824 45.056 106.496-16.384 24.576-36.864 40.96-57.344 57.344l24.576 28.672zm339.968-344.064h-69.632v-36.864h69.632v36.864zm0 69.632h-69.632v-40.96h69.632v40.96zm253.952 278.528v-20.48h212.992v20.48h36.864V524.288h-184.32c28.672-12.288 53.248-24.576 77.824-40.96l20.48-12.288h151.552v-32.768h-106.496c32.768-24.576 65.536-57.344 94.208-90.112l-32.768-20.48c-36.864 40.96-73.728 77.824-122.88 110.592h-61.44v-61.44h114.688v-32.768h-114.688v-49.152h-36.864v53.248h-135.168v32.768h135.168v57.344h-180.224v32.768h225.28c-69.632 40.96-147.456 69.632-229.376 90.112l16.384 32.768c28.672-8.192 57.344-20.48 81.92-28.672v180.224h36.864zm212.992-139.264h-212.992v-49.152h212.992v49.152zm0 86.016h-212.992v-53.248h212.992v53.248z",fill:"#165DFF"}),React.createElement("path",{d:"M573.44 204.8h327.68c90.112 0 163.84 73.728 163.84 163.84v327.68c0 90.112-73.728 163.84-163.84 163.84H573.44c-90.112 0-163.84-73.728-163.84-163.84V368.64c0-90.112 73.728-163.84 163.84-163.84z",fill:"#C2D0FF"}),React.createElement("path",{d:"M868.352 581.632c4.096 24.576 12.288 49.152 16.384 69.632 0 8.192 4.096 16.384 4.096 24.576s4.096 16.384 4.096 24.576 4.096 12.288 4.096 16.384v8.192c0 8.192 0 12.288-4.096 12.288-4.096 4.096-8.192 4.096-12.288 4.096h-8.192c-4.096 0-4.096 0-8.192-4.096L737.28 667.648c-24.576 12.288-45.056 24.576-61.44 36.864L651.264 716.8c-8.192 4.096-16.384 8.192-20.48 12.288-8.192 4.096-16.384 8.192-20.48 12.288s-8.192 4.096-8.192 4.096c-4.096 0-8.192 4.096-8.192 0-4.096 0-8.192 0-8.192-4.096-4.096 0-4.096-4.096-4.096-8.192v-8.192s0-4.096 4.096-8.192c0-4.096 4.096-12.288 4.096-16.384 0-8.192 4.096-16.384 4.096-24.576s4.096-16.384 8.192-24.576c4.096-20.48 12.288-45.056 16.384-69.632-24.576-16.384-45.056-28.672-57.344-45.056-8.192-4.096-16.384-8.192-20.48-16.384s-12.288-8.192-16.384-12.288S512 499.712 512 495.616c-4.096-4.096-8.192-4.096-8.192-4.096-4.096-4.096-4.096-8.192-8.192-12.288s-4.096-8.192-4.096-12.288 4.096-8.192 4.096-12.288c4.096 0 8.192-4.096 12.288-4.096l151.552-12.288L716.8 307.2c0-4.096 4.096-8.192 8.192-12.288 0-8.192 8.192-8.192 12.288-8.192s4.096 0 8.192 4.096c4.096 0 4.096 4.096 4.096 4.096l4.096 4.096s0 4.096 4.096 4.096l53.248 131.072 155.648 16.384c8.192 0 12.288 4.096 12.288 4.096 4.096 4.096 4.096 8.192 4.096 12.288s0 8.192-4.096 12.288l-12.288 12.288-98.304 90.112z",fill:"#2E5BEC"}));Dt.Z="data:image/svg+xml;base64,PHN2ZyBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDMxOTQgMTAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iNjIzLjgyOCIgaGVpZ2h0PSIyMDAiPjxwYXRoIGQ9Ik01MTIgMGgyMTcwLjg4YzI4Mi42MjQgMCA1MTIgMjI5LjM3NiA1MTIgNTEycy0yMjkuMzc2IDUxMi01MTIgNTEySDUxMkMyMjkuMzc2IDEwMjQgMCA3OTQuNjI0IDAgNTEyUzIyOS4zNzYgMCA1MTIgMHoiIGZpbGw9IiNFQkVFRkQiLz48cGF0aCBkPSJNMTYzOC40IDc0MS4zNzZjMjguNjcyIDAgNDAuOTYtMTYuMzg0IDQwLjk2LTQ1LjA1NlYyOTQuOTEyaC0zNi44NjR2MzkzLjIxNmMwIDE2LjM4NC04LjE5MiAyMC40OC0yMC40OCAyMC40OC0yNC41NzYgMC00NS4wNTYgMC03My43MjgtNC4wOTZsOC4xOTIgMzIuNzY4aDgxLjkyem0tMzcyLjczNi0yNTguMDQ4YzQ5LjE1Mi00NS4wNTYgOTAuMTEyLTk0LjIwOCAxMjYuOTc2LTE0Ny40NTYgMzIuNzY4IDMyLjc2OCA2OS42MzIgNzcuODI0IDExMC41OTIgMTM1LjE2OGwyNC41NzYtMjQuNTc2Yy00MC45Ni00OS4xNTItODEuOTItOTguMzA0LTEyMi44OC0xNDMuMzZoLTI0LjU3NmMtNDAuOTYgNTcuMzQ0LTgxLjkyIDExMC41OTItMTMxLjA3MiAxNTUuNjQ4bDE2LjM4NCAyNC41NzZ6bTMyMy41ODQgMTU5Ljc0NFYzMzkuOTY4aC0zMi43Njh2MzA3LjJoMzIuNzY4em0tMTMxLjA3MiA5NC4yMDhjMjQuNTc2IDAgMzYuODY0LTQuMDk2IDQ1LjA1Ni0xMi4yODhzMTYuMzg0LTM2Ljg2NCAyMC40OC03Ny44MjRsLTMyLjc2OC0xMi4yODhjMCAyOC42NzItNC4wOTYgNDUuMDU2LTguMTkyIDUzLjI0OHMtMTYuMzg0IDEyLjI4OC0zMi43NjggMTIuMjg4aC05OC4zMDRjLTEyLjI4OCAwLTIwLjQ4LTQuMDk2LTIwLjQ4LTE2LjM4NHYtMjA0LjhoMTA2LjQ5NnY5NC4yMDhjMCAxMi4yODgtOC4xOTIgMjAuNDgtMjAuNDggMjAuNDgtMTYuMzg0IDAtMzIuNzY4IDAtNDkuMTUyLTQuMDk2bDguMTkyIDMyLjc2OGg1My4yNDhjMjguNjcyIDAgNDAuOTYtMTYuMzg0IDQwLjk2LTQwLjk2VjQ1MC41NmgtMTc2LjEyOHYyNDUuNzZjMCAyNC41NzYgMTIuMjg4IDM2Ljg2NCA0MC45NiAzNi44NjRoMTIyLjg4em01ODUuNzI4LTUzLjI0OFY2MzQuODhoMTMxLjA3MnYtMjguNjcyaC0xMzEuMDcydi00MC45NmgxMTQuNjg4di0yOC42NzJoLTExNC42ODh2LTQwLjk2SDIxNTAuNHYtNjkuNjMyaDMyLjc2OHYtMjguNjcySDIxNTAuNFYzMjcuNjhoLTEwNi40OTZ2LTMyLjc2OGgtMzIuNzY4djMyLjc2OGgtODYuMDE2djI4LjY3Mmg4Ni4wMTZ2MzYuODY0aC0xMTAuNTkydjI4LjY3MmgxMTAuNTkydjQwLjk2aC04Ni4wMTZ2MjguNjcyaDg2LjAxNnY0MC45NmgtOTguMzA0djI4LjY3Mmg5OC4zMDR2NDAuOTZoLTExMC41OTJ2MjguNjcyaDExMC41OTJ2NDkuMTUyaDMyLjc2OHptLTI3MC4zMzYgNTcuMzQ0YzI0LjU3Ni0xNi4zODQgNDAuOTYtMzYuODY0IDU3LjM0NC02MS40NCA0LjA5NiA0LjA5NiAxMi4yODggOC4xOTIgMTYuMzg0IDEyLjI4OCAzNi44NjQgMjQuNTc2IDEwMi40IDM2Ljg2NCAxODguNDE2IDM2Ljg2NGgxNDcuNDU2bDQuMDk2LTMyLjc2OGMtNTcuMzQ0IDAtMTEwLjU5MiA0LjA5Ni0xNjcuOTM2IDQuMDk2LTY1LjUzNiAwLTExOC43ODQtMTIuMjg4LTE1MS41NTItMjguNjcyLTguMTkyLTQuMDk2LTE2LjM4NC0xMi4yODgtMjQuNTc2LTIwLjQ4IDI0LjU3Ni00NS4wNTYgMzYuODY0LTk4LjMwNCAzNi44NjQtMTYzLjg0di0yMC40OGgtNzcuODI0YzI0LjU3Ni0zMi43NjggNDkuMTUyLTczLjcyOCA3My43MjgtMTE4Ljc4NHYtMjguNjcySDE3NjEuMjh2MzIuNzY4aDgxLjkyYy0yNC41NzYgNDAuOTYtNDkuMTUyIDgxLjkyLTc3LjgyNCAxMTguNzg0djI4LjY3Mmg5MC4xMTJjLTQuMDk2IDQ1LjA1Ni0xMi4yODggODYuMDE2LTI4LjY3MiAxMjIuODgtMTIuMjg4LTIwLjQ4LTI0LjU3Ni00OS4xNTItMzIuNzY4LTg2LjAxNmwtMzIuNzY4IDEyLjI4OGMxMi4yODggNDAuOTYgMjguNjcyIDc3LjgyNCA0NS4wNTYgMTA2LjQ5Ni0xNi4zODQgMjQuNTc2LTM2Ljg2NCA0MC45Ni01Ny4zNDQgNTcuMzQ0bDI0LjU3NiAyOC42NzJ6bTMzOS45NjgtMzQ0LjA2NGgtNjkuNjMydi0zNi44NjRoNjkuNjMydjM2Ljg2NHptMCA2OS42MzJoLTY5LjYzMnYtNDAuOTZoNjkuNjMydjQwLjk2em0yNTMuOTUyIDI3OC41Mjh2LTIwLjQ4aDIxMi45OTJ2MjAuNDhoMzYuODY0VjUyNC4yODhoLTE4NC4zMmMyOC42NzItMTIuMjg4IDUzLjI0OC0yNC41NzYgNzcuODI0LTQwLjk2bDIwLjQ4LTEyLjI4OGgxNTEuNTUydi0zMi43NjhoLTEwNi40OTZjMzIuNzY4LTI0LjU3NiA2NS41MzYtNTcuMzQ0IDk0LjIwOC05MC4xMTJsLTMyLjc2OC0yMC40OGMtMzYuODY0IDQwLjk2LTczLjcyOCA3Ny44MjQtMTIyLjg4IDExMC41OTJoLTYxLjQ0di02MS40NGgxMTQuNjg4di0zMi43NjhoLTExNC42ODh2LTQ5LjE1MmgtMzYuODY0djUzLjI0OGgtMTM1LjE2OHYzMi43NjhoMTM1LjE2OHY1Ny4zNDRoLTE4MC4yMjR2MzIuNzY4aDIyNS4yOGMtNjkuNjMyIDQwLjk2LTE0Ny40NTYgNjkuNjMyLTIyOS4zNzYgOTAuMTEybDE2LjM4NCAzMi43NjhjMjguNjcyLTguMTkyIDU3LjM0NC0yMC40OCA4MS45Mi0yOC42NzJ2MTgwLjIyNGgzNi44NjR6bTIxMi45OTItMTM5LjI2NGgtMjEyLjk5MnYtNDkuMTUyaDIxMi45OTJ2NDkuMTUyem0wIDg2LjAxNmgtMjEyLjk5MnYtNTMuMjQ4aDIxMi45OTJ2NTMuMjQ4eiIgZmlsbD0iIzE2NURGRiIvPjxwYXRoIGQ9Ik01NzMuNDQgMjA0LjhoMzI3LjY4YzkwLjExMiAwIDE2My44NCA3My43MjggMTYzLjg0IDE2My44NHYzMjcuNjhjMCA5MC4xMTItNzMuNzI4IDE2My44NC0xNjMuODQgMTYzLjg0SDU3My40NGMtOTAuMTEyIDAtMTYzLjg0LTczLjcyOC0xNjMuODQtMTYzLjg0VjM2OC42NGMwLTkwLjExMiA3My43MjgtMTYzLjg0IDE2My44NC0xNjMuODR6IiBmaWxsPSIjQzJEMEZGIi8+PHBhdGggZD0iTTg2OC4zNTIgNTgxLjYzMmM0LjA5NiAyNC41NzYgMTIuMjg4IDQ5LjE1MiAxNi4zODQgNjkuNjMyIDAgOC4xOTIgNC4wOTYgMTYuMzg0IDQuMDk2IDI0LjU3NnM0LjA5NiAxNi4zODQgNC4wOTYgMjQuNTc2IDQuMDk2IDEyLjI4OCA0LjA5NiAxNi4zODR2OC4xOTJjMCA4LjE5MiAwIDEyLjI4OC00LjA5NiAxMi4yODgtNC4wOTYgNC4wOTYtOC4xOTIgNC4wOTYtMTIuMjg4IDQuMDk2aC04LjE5MmMtNC4wOTYgMC00LjA5NiAwLTguMTkyLTQuMDk2TDczNy4yOCA2NjcuNjQ4Yy0yNC41NzYgMTIuMjg4LTQ1LjA1NiAyNC41NzYtNjEuNDQgMzYuODY0TDY1MS4yNjQgNzE2LjhjLTguMTkyIDQuMDk2LTE2LjM4NCA4LjE5Mi0yMC40OCAxMi4yODgtOC4xOTIgNC4wOTYtMTYuMzg0IDguMTkyLTIwLjQ4IDEyLjI4OHMtOC4xOTIgNC4wOTYtOC4xOTIgNC4wOTZjLTQuMDk2IDAtOC4xOTIgNC4wOTYtOC4xOTIgMC00LjA5NiAwLTguMTkyIDAtOC4xOTItNC4wOTYtNC4wOTYgMC00LjA5Ni00LjA5Ni00LjA5Ni04LjE5MnYtOC4xOTJzMC00LjA5NiA0LjA5Ni04LjE5MmMwLTQuMDk2IDQuMDk2LTEyLjI4OCA0LjA5Ni0xNi4zODQgMC04LjE5MiA0LjA5Ni0xNi4zODQgNC4wOTYtMjQuNTc2czQuMDk2LTE2LjM4NCA4LjE5Mi0yNC41NzZjNC4wOTYtMjAuNDggMTIuMjg4LTQ1LjA1NiAxNi4zODQtNjkuNjMyLTI0LjU3Ni0xNi4zODQtNDUuMDU2LTI4LjY3Mi01Ny4zNDQtNDUuMDU2LTguMTkyLTQuMDk2LTE2LjM4NC04LjE5Mi0yMC40OC0xNi4zODRzLTEyLjI4OC04LjE5Mi0xNi4zODQtMTIuMjg4UzUxMiA0OTkuNzEyIDUxMiA0OTUuNjE2Yy00LjA5Ni00LjA5Ni04LjE5Mi00LjA5Ni04LjE5Mi00LjA5Ni00LjA5Ni00LjA5Ni00LjA5Ni04LjE5Mi04LjE5Mi0xMi4yODhzLTQuMDk2LTguMTkyLTQuMDk2LTEyLjI4OCA0LjA5Ni04LjE5MiA0LjA5Ni0xMi4yODhjNC4wOTYgMCA4LjE5Mi00LjA5NiAxMi4yODgtNC4wOTZsMTUxLjU1Mi0xMi4yODhMNzE2LjggMzA3LjJjMC00LjA5NiA0LjA5Ni04LjE5MiA4LjE5Mi0xMi4yODggMC04LjE5MiA4LjE5Mi04LjE5MiAxMi4yODgtOC4xOTJzNC4wOTYgMCA4LjE5MiA0LjA5NmM0LjA5NiAwIDQuMDk2IDQuMDk2IDQuMDk2IDQuMDk2bDQuMDk2IDQuMDk2czAgNC4wOTYgNC4wOTYgNC4wOTZsNTMuMjQ4IDEzMS4wNzIgMTU1LjY0OCAxNi4zODRjOC4xOTIgMCAxMi4yODggNC4wOTYgMTIuMjg4IDQuMDk2IDQuMDk2IDQuMDk2IDQuMDk2IDguMTkyIDQuMDk2IDEyLjI4OHMwIDguMTkyLTQuMDk2IDEyLjI4OGwtMTIuMjg4IDEyLjI4OC05OC4zMDQgOTAuMTEyeiIgZmlsbD0iIzJFNUJFQyIvPjwvc3ZnPg=="},4285:function(){"use strict";function St(ce,te,ne,le){ne===void 0&&(ne=0),le===void 0&&(le=1/0),this._name=ce,this._defaultValue=te,this._minimum=ne,this._maximum=le}Object.defineProperty(St.prototype,"name",{get:function(){return this._name},set:function(ce){if(typeof ce!="string"||ce==="")throw new Error("Shape name must be a valid string.");this._name=ce}}),Object.defineProperty(St.prototype,"defaultValue",{get:function(){return this._defaultValue},set:function(ce){if(typeof ce!="number"||isNaN(ce))throw new Error("The default value must be a real number, not: "+ce);this._defaultValue=ce}}),Object.defineProperty(St.prototype,"minimum",{get:function(){return this._minimum},set:function(ce){if(typeof ce!="number"||isNaN(ce))throw new Error("Minimum must be a real number, not: "+ce);this._minimum=ce}}),Object.defineProperty(St.prototype,"maximum",{get:function(){return this._maximum},set:function(ce){if(typeof ce!="number"||isNaN(ce))throw new Error("Maximum must be a real number, not: "+ce);this._maximum=ce}}),go.Shape._FigureParameters={},go.Shape.getFigureParameter=function(ce,te){var ne=go.Shape._FigureParameters[ce];return ne?ne[te]:null},go.Shape.setFigureParameter=function(ce,te,ne){if(!(ne instanceof St))throw new Error("Third argument to Shape.setFigureParameter is not FigureParameter: "+ne);if(ne.defaultValuene.maximum)throw new Error("defaultValue must be between minimum and maximum, not: "+ne.defaultValue);var le=go.Shape._FigureParameters[ce];le||(le=[],go.Shape._FigureParameters[ce]=le),le[te]=ne};var Dt=[];function Ie(ce,te){var ne=Dt.pop();return ne===void 0?new go.Point(ce,te):(ne.x=ce,ne.y=te,ne)}function Be(){var ce=Dt.pop();return ce===void 0?new go.Point:ce}function He(ce){Dt.push(ce)}function Fe(ce,te,ne,le,oe,de,he,ie,ue){ue||(ue=new go.Point);var ve=ce-ne,Se=oe-he,De=NaN,Re=NaN;if(ve===0)if(Se===0)ce===ne&&(De=ce,Re=te);else{var Ne=(de-ie)/Se,ze=de-Ne*oe;De=ce,Re=Ne*De+ze}else if(Se===0){var Ge=(te-le)/ve,Xe=te-Ge*ce;De=oe,Re=Ge*De+Xe}else{var Ge=(te-le)/ve,Ne=(de-ie)/Se,Xe=te-Ge*ce,ze=de-Ne*oe;De=(ze-Xe)/(Ge-Ne),Re=Ge*De+Xe}return ue.x=De,ue.y=Re,ue}function Ce(ce,te,ne,le,oe,de,he,ie,ue,ve,Se,De,Re,Ne){var ze=1-ue,Ge=ue,Xe=ce*ze+ne*Ge,Qe=te*ze+le*Ge,nt=ne*ze+oe*Ge,$e=le*ze+de*Ge,qe=oe*ze+he*Ge,ot=de*ze+ie*Ge,at=Xe*ze+nt*Ge,lt=Qe*ze+$e*Ge,rt=nt*ze+qe*Ge,ut=$e*ze+ot*Ge,yt=at*ze+rt*Ge,ft=lt*ze+ut*Ge;ve.x=Xe,ve.y=Qe,Se.x=at,Se.y=lt,De.x=yt,De.y=ft,Re.x=rt,Re.y=ut,Ne.x=qe,Ne.y=ot}var _e=new go.Spot(.156,.156),Pe=new go.Spot(.844,.844),ge=4*((Math.sqrt(2)-1)/3);go.Shape.setFigureParameter("RoundedRectangle",0,new St("CornerRounding",5)),go.Shape.defineFigureGenerator("RoundedRectangle",function(ce,te,ne){var le=ce?ce.parameter1:NaN;(isNaN(le)||le<0)&&(le=5),le=Math.min(le,te/3),le=Math.min(le,ne/3);var oe=le*ge,de=new go.Geometry().add(new go.PathFigure(le,0,!0).add(new go.PathSegment(go.PathSegment.Line,te-le,0)).add(new go.PathSegment(go.PathSegment.Bezier,te,le,te-oe,0,te,oe)).add(new go.PathSegment(go.PathSegment.Line,te,ne-le)).add(new go.PathSegment(go.PathSegment.Bezier,te-le,ne,te,ne-oe,te-oe,ne)).add(new go.PathSegment(go.PathSegment.Line,le,ne)).add(new go.PathSegment(go.PathSegment.Bezier,0,ne-le,oe,ne,0,ne-oe)).add(new go.PathSegment(go.PathSegment.Line,0,le)).add(new go.PathSegment(go.PathSegment.Bezier,le,0,0,oe,oe,0).close()));return oe>1&&(de.spot1=new go.Spot(0,0,oe,oe),de.spot2=new go.Spot(1,1,-oe,-oe)),de}),go.Shape.defineFigureGenerator("Border","RoundedRectangle"),go.Shape.defineFigureGenerator("TriangleRight",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0).add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,0,ne).close())).setSpots(0,.25,.5,.75)}),go.Shape.defineFigureGenerator("TriangleDown",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Line,.5*te,ne).close())).setSpots(.25,0,.75,.5)}),go.Shape.defineFigureGenerator("TriangleLeft",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(te,ne).add(new go.PathSegment(go.PathSegment.Line,0,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,te,0).close())).setSpots(.5,.25,1,.75)}),go.Shape.defineFigureGenerator("TriangleUp",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(te,ne).add(new go.PathSegment(go.PathSegment.Line,0,ne)).add(new go.PathSegment(go.PathSegment.Line,.5*te,0).close())).setSpots(.25,.5,.75,1)}),go.Shape.defineFigureGenerator("Triangle","TriangleUp"),go.Shape.defineFigureGenerator("Diamond",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(.5*te,0).add(new go.PathSegment(go.PathSegment.Line,0,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)).add(new go.PathSegment(go.PathSegment.Line,te,.5*ne).close())).setSpots(.25,.25,.75,.75)}),go.Shape.defineFigureGenerator("LineH",function(ce,te,ne){var le=new go.Geometry(go.Geometry.Line);return le.startX=0,le.startY=ne/2,le.endX=te,le.endY=ne/2,le}),go.Shape.defineFigureGenerator("LineV",function(ce,te,ne){var le=new go.Geometry(go.Geometry.Line);return le.startX=te/2,le.startY=0,le.endX=te/2,le.endY=ne,le}),go.Shape.defineFigureGenerator("BarH","Rectangle"),go.Shape.defineFigureGenerator("BarV","Rectangle"),go.Shape.defineFigureGenerator("MinusLine","LineH"),go.Shape.defineFigureGenerator("PlusLine",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,ne/2,!1).add(new go.PathSegment(go.PathSegment.Line,te,ne/2)).add(new go.PathSegment(go.PathSegment.Move,te/2,0)).add(new go.PathSegment(go.PathSegment.Line,te/2,ne)))}),go.Shape.defineFigureGenerator("XLine",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,ne,!1).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Move,0,0)).add(new go.PathSegment(go.PathSegment.Line,te,ne)))}),go.Shape.defineFigureGenerator("LineRight",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(.25*te,0,!1).add(new go.PathSegment(go.PathSegment.Line,.75*te,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,.25*te,ne)))}),go.Shape.defineFigureGenerator("LineDown",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,.25*ne,!1).add(new go.PathSegment(go.PathSegment.Line,.5*te,.75*ne)).add(new go.PathSegment(go.PathSegment.Line,te,.25*ne)))}),go.Shape.defineFigureGenerator("LineLeft",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(.75*te,0,!1).add(new go.PathSegment(go.PathSegment.Line,.25*te,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,.75*te,ne)))}),go.Shape.defineFigureGenerator("LineUp",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,.75*ne,!1).add(new go.PathSegment(go.PathSegment.Line,.5*te,.25*ne)).add(new go.PathSegment(go.PathSegment.Line,te,.75*ne)))}),go.Shape.defineFigureGenerator("AsteriskLine",function(ce,te,ne){var le=.2/Math.SQRT2;return new go.Geometry().add(new go.PathFigure(le*te,(1-le)*ne,!1).add(new go.PathSegment(go.PathSegment.Line,(1-le)*te,le*ne)).add(new go.PathSegment(go.PathSegment.Move,le*te,le*ne)).add(new go.PathSegment(go.PathSegment.Line,(1-le)*te,(1-le)*ne)).add(new go.PathSegment(go.PathSegment.Move,0,ne/2)).add(new go.PathSegment(go.PathSegment.Line,te,ne/2)).add(new go.PathSegment(go.PathSegment.Move,te/2,0)).add(new go.PathSegment(go.PathSegment.Line,te/2,ne)))}),go.Shape.defineFigureGenerator("CircleLine",function(ce,te,ne){var le=te/2,oe=new go.Geometry().add(new go.PathFigure(te,te/2,!1).add(new go.PathSegment(go.PathSegment.Arc,0,360,le,le,le,le).close()));return oe.spot1=_e,oe.spot2=Pe,oe.defaultStretch=go.GraphObject.Uniform,oe}),go.Shape.defineFigureGenerator("Line1",function(ce,te,ne){var le=new go.Geometry(go.Geometry.Line);return le.startX=0,le.startY=0,le.endX=te,le.endY=ne,le}),go.Shape.defineFigureGenerator("Line2",function(ce,te,ne){var le=new go.Geometry(go.Geometry.Line);return le.startX=te,le.startY=0,le.endX=0,le.endY=ne,le}),go.Shape.defineFigureGenerator("Curve1",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Bezier,te,ne,ge*te,0,te,(1-ge)*ne)))}),go.Shape.defineFigureGenerator("Curve2",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Bezier,te,ne,0,ge*ne,(1-ge)*te,ne)))}),go.Shape.defineFigureGenerator("Curve3",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(te,0,!1).add(new go.PathSegment(go.PathSegment.Bezier,0,ne,te,ge*ne,ge*te,ne)))}),go.Shape.defineFigureGenerator("Curve4",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(te,0,!1).add(new go.PathSegment(go.PathSegment.Bezier,0,ne,(1-ge)*te,0,0,(1-ge)*ne)))}),go.Shape.defineFigureGenerator("TriangleDownLeft",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Line,te,ne)).add(new go.PathSegment(go.PathSegment.Line,0,ne).close())).setSpots(0,.5,.5,1)}),go.Shape.defineFigureGenerator("TriangleDownRight",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(te,0,!0).add(new go.PathSegment(go.PathSegment.Line,te,ne)).add(new go.PathSegment(go.PathSegment.Line,0,ne).close())).setSpots(.5,.5,1,1)}),go.Shape.defineFigureGenerator("TriangleUpLeft",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Line,0,ne).close())).setSpots(0,0,.5,.5)}),go.Shape.defineFigureGenerator("TriangleUpRight",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Line,te,ne).close())).setSpots(.5,0,1,.5)}),go.Shape.defineFigureGenerator("RightTriangle","TriangleDownLeft"),go.Shape.setFigureParameter("Parallelogram1",0,new St("Indent",.1,-.99,.99)),go.Shape.defineFigureGenerator("Parallelogram1",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)?le=.1:le<-1?le=-1:le>1&&(le=1);var oe=Math.abs(le)*te;if(le===0){var de=new go.Geometry(go.Geometry.Rectangle);return de.startX=0,de.startY=0,de.endX=te,de.endY=ne,de}else{var de=new go.Geometry;return le>0?de.add(new go.PathFigure(oe,0).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Line,te-oe,ne)).add(new go.PathSegment(go.PathSegment.Line,0,ne).close())):de.add(new go.PathFigure(0,0).add(new go.PathSegment(go.PathSegment.Line,te-oe,0)).add(new go.PathSegment(go.PathSegment.Line,te,ne)).add(new go.PathSegment(go.PathSegment.Line,oe,ne).close())),oete&&(le=te);var oe=Math.abs(le);if(le===0){var de=new go.Geometry(go.Geometry.Rectangle);return de.startX=0,de.startY=0,de.endX=te,de.endY=ne,de}else{var de=new go.Geometry;return le>0?de.add(new go.PathFigure(oe,0).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Line,te-oe,ne)).add(new go.PathSegment(go.PathSegment.Line,0,ne).close())):de.add(new go.PathFigure(0,0).add(new go.PathSegment(go.PathSegment.Line,te-oe,0)).add(new go.PathSegment(go.PathSegment.Line,te,ne)).add(new go.PathSegment(go.PathSegment.Line,oe,ne).close())),oe.5&&(le=.5);var oe=Math.abs(le)*te;if(le===0){var de=new go.Geometry(go.Geometry.Rectangle);return de.startX=0,de.startY=0,de.endX=te,de.endY=ne,de}else{var de=new go.Geometry;return le>0?de.add(new go.PathFigure(oe,0).add(new go.PathSegment(go.PathSegment.Line,te-oe,0)).add(new go.PathSegment(go.PathSegment.Line,te,ne)).add(new go.PathSegment(go.PathSegment.Line,0,ne).close())):de.add(new go.PathFigure(0,0).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Line,te-oe,ne)).add(new go.PathSegment(go.PathSegment.Line,oe,ne).close())),oete&&(le=te/2);var oe=Math.abs(le);if(le===0){var de=new go.Geometry(go.Geometry.Rectangle);return de.startX=0,de.startY=0,de.endX=te,de.endY=ne,de}else{var de=new go.Geometry;return le>0?de.add(new go.PathFigure(oe,0).add(new go.PathSegment(go.PathSegment.Line,te-oe,0)).add(new go.PathSegment(go.PathSegment.Line,te,ne)).add(new go.PathSegment(go.PathSegment.Line,0,ne).close())):de.add(new go.PathFigure(0,0).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Line,te-oe,ne)).add(new go.PathSegment(go.PathSegment.Line,oe,ne).close())),oete&&(le=te/2);var oe=Math.abs(le);if(le===0){var de=new go.Geometry(go.Geometry.Rectangle);return de.startX=0,de.startY=0,de.endX=te,de.endY=ne,de}else{var de=new go.Geometry;return le>0?de.add(new go.PathFigure(0,0).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Line,te-oe,ne)).add(new go.PathSegment(go.PathSegment.Line,oe,ne).close())):de.add(new go.PathFigure(oe,0).add(new go.PathSegment(go.PathSegment.Line,te-oe,0)).add(new go.PathSegment(go.PathSegment.Line,te,ne)).add(new go.PathSegment(go.PathSegment.Line,0,ne).close())),oe0&&(he.add(new go.PathSegment(go.PathSegment.Move,te/2+ie,te/2)),he.add(new go.PathSegment(go.PathSegment.Arc,0,-360,oe,oe,ie,ie).close())),de.spot1=_e,de.spot2=Pe,de.defaultStretch=go.GraphObject.Uniform,de}),go.Shape.defineFigureGenerator("Cloud",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(.08034461*te,.1944299*ne,!0).add(new go.PathSegment(go.PathSegment.Bezier,.2008615*te,.05349299*ne,-.09239631*te,.07836421*ne,.1406031*te,-.0542823*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.4338609*te,.074219*ne,.2450511*te,-.00697547*ne,.3776197*te,-.01112067*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.6558228*te,.07004196*ne,.4539471*te,0,.6066018*te,-.02526587*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.8921095*te,.08370865*ne,.6914277*te,-.01904177*ne,.8921095*te,-.01220843*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.9147671*te,.3194596*ne,1.036446*te,.04105738*ne,1.020377*te,.3022052*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.9082935*te,.562044*ne,1.04448*te,.360238*ne,.992256*te,.5219009*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.9212406*te,.8217117*ne,1.032337*te,.5771781*ne,1.018411*te,.8120651*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.7592566*te,.9156953*ne,1.028411*te,.9571472*ne,.8556702*te,1.052487*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.5101666*te,.9310455*ne,.7431877*te,1.009325*ne,.5624123*te,1.021761*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.2609328*te,.9344623*ne,.4820677*te,1.031761*ne,.3030112*te,1.002796*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.08034461*te,.870098*ne,.2329994*te,1.01518*ne,.03213784*te,1.01518*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.06829292*te,.6545475*ne,-.02812061*te,.9032597*ne,-.01205169*te,.6835638*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.06427569*te,.4265613*ne,-.01812061*te,.6089503*ne,-.00606892*te,.4555777*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.08034461*te,.1944299*ne,-.01606892*te,.3892545*ne,-.01205169*te,.1944299*ne))).setSpots(.1,.1,.9,.9)}),go.Shape.defineFigureGenerator("StopSign",function(ce,te,ne){var le=1/(Math.SQRT2+2);return new go.Geometry().add(new go.PathFigure(le*te,0,!0).add(new go.PathSegment(go.PathSegment.Line,(1-le)*te,0)).add(new go.PathSegment(go.PathSegment.Line,te,le*ne)).add(new go.PathSegment(go.PathSegment.Line,te,(1-le)*ne)).add(new go.PathSegment(go.PathSegment.Line,(1-le)*te,ne)).add(new go.PathSegment(go.PathSegment.Line,le*te,ne)).add(new go.PathSegment(go.PathSegment.Line,0,(1-le)*ne)).add(new go.PathSegment(go.PathSegment.Line,0,le*ne).close())).setSpots(le/2,le/2,1-le/2,1-le/2)}),go.Shape.setFigureParameter("Pie",0,new St("Start",0,-360,360)),go.Shape.setFigureParameter("Pie",1,new St("Sweep",315,-360,360)),go.Shape.defineFigureGenerator("Pie",function(ce,te,ne){var le=ce?ce.parameter1:NaN,oe=ce?ce.parameter2:NaN;isNaN(le)&&(le=0),isNaN(oe)&&(oe=315);var de=le%360;de<0&&(de+=360);var he=oe%360,ie=Math.min(te,ne)/2;return new go.Geometry().add(new go.PathFigure(ie,ie).add(new go.PathSegment(go.PathSegment.Arc,de,he,ie,ie,ie,ie).close()))}),go.Shape.defineFigureGenerator("PiePiece",function(ce,te,ne){var le=ge/Math.SQRT2*.5,oe=Math.SQRT2/2,de=1-Math.SQRT2/2;return new go.Geometry().add(new go.PathFigure(te,ne,!0).add(new go.PathSegment(go.PathSegment.Bezier,oe*te,de*ne,te,(1-le)*ne,(oe+le)*te,(de+le)*ne)).add(new go.PathSegment(go.PathSegment.Line,0,ne).close()))}),go.Shape.setFigureParameter("ThickCross",0,new St("Thickness",30)),go.Shape.defineFigureGenerator("ThickCross",function(ce,te,ne){var le=ce?ce.parameter1:NaN;(isNaN(le)||le<0)&&(le=30);var oe=Math.min(le,te)/2,de=te/2,he=ne/2;return new go.Geometry().add(new go.PathFigure(de-oe,0,!0).add(new go.PathSegment(go.PathSegment.Line,de+oe,0)).add(new go.PathSegment(go.PathSegment.Line,de+oe,he-oe)).add(new go.PathSegment(go.PathSegment.Line,te,he-oe)).add(new go.PathSegment(go.PathSegment.Line,te,he+oe)).add(new go.PathSegment(go.PathSegment.Line,de+oe,he+oe)).add(new go.PathSegment(go.PathSegment.Line,de+oe,ne)).add(new go.PathSegment(go.PathSegment.Line,de-oe,ne)).add(new go.PathSegment(go.PathSegment.Line,de-oe,he+oe)).add(new go.PathSegment(go.PathSegment.Line,0,he+oe)).add(new go.PathSegment(go.PathSegment.Line,0,he-oe)).add(new go.PathSegment(go.PathSegment.Line,de-oe,he-oe).close()))}),go.Shape.setFigureParameter("ThinCross",0,new St("Thickness",10)),go.Shape.defineFigureGenerator("ThinCross",function(ce,te,ne){var le=ce?ce.parameter1:NaN;(isNaN(le)||le<0)&&(le=10);var oe=Math.min(le,te)/2,de=te/2,he=ne/2;return new go.Geometry().add(new go.PathFigure(de-oe,0,!0).add(new go.PathSegment(go.PathSegment.Line,de+oe,0)).add(new go.PathSegment(go.PathSegment.Line,de+oe,he-oe)).add(new go.PathSegment(go.PathSegment.Line,te,he-oe)).add(new go.PathSegment(go.PathSegment.Line,te,he+oe)).add(new go.PathSegment(go.PathSegment.Line,de+oe,he+oe)).add(new go.PathSegment(go.PathSegment.Line,de+oe,ne)).add(new go.PathSegment(go.PathSegment.Line,de-oe,ne)).add(new go.PathSegment(go.PathSegment.Line,de-oe,he+oe)).add(new go.PathSegment(go.PathSegment.Line,0,he+oe)).add(new go.PathSegment(go.PathSegment.Line,0,he-oe)).add(new go.PathSegment(go.PathSegment.Line,de-oe,he-oe).close()))}),go.Shape.setFigureParameter("ThickX",0,new St("Thickness",30)),go.Shape.defineFigureGenerator("ThickX",function(ce,te,ne){var le=ce?ce.parameter1:NaN;if((isNaN(le)||le<0)&&(le=30),te===0||ne===0){var oe=new go.Geometry(go.Geometry.Rectangle);return oe.startX=0,oe.startY=0,oe.endX=te,oe.endY=ne,oe}else{var de=te/2,he=ne/2,ie=Math.atan2(ne,te),ue=le-Math.min(Math.cos(ie)*le/2,de),ve=le-Math.min(Math.sin(ie)*le/2,he),oe=new go.Geometry,Se=new go.PathFigure(ue,0,!0);return oe.add(Se),Se.add(new go.PathSegment(go.PathSegment.Line,de,.2*ne)),Se.add(new go.PathSegment(go.PathSegment.Line,te-ue,0)),Se.add(new go.PathSegment(go.PathSegment.Line,te,ve)),Se.add(new go.PathSegment(go.PathSegment.Line,.8*te,he)),Se.add(new go.PathSegment(go.PathSegment.Line,te,ne-ve)),Se.add(new go.PathSegment(go.PathSegment.Line,te-ue,ne)),Se.add(new go.PathSegment(go.PathSegment.Line,de,.8*ne)),Se.add(new go.PathSegment(go.PathSegment.Line,ue,ne)),Se.add(new go.PathSegment(go.PathSegment.Line,0,ne-ve)),Se.add(new go.PathSegment(go.PathSegment.Line,.2*te,he)),Se.add(new go.PathSegment(go.PathSegment.Line,0,ve).close()),oe}}),go.Shape.setFigureParameter("ThinX",0,new St("Thickness",10)),go.Shape.defineFigureGenerator("ThinX",function(ce,te,ne){var le=ce?ce.parameter1:NaN;(isNaN(le)||le<0)&&(le=10);var oe=new go.Geometry,de=new go.PathFigure(.1*te,0,!0);return oe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.5*te,.4*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.9*te,0)),de.add(new go.PathSegment(go.PathSegment.Line,te,.1*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.6*te,.5*ne)),de.add(new go.PathSegment(go.PathSegment.Line,te,.9*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.9*te,ne)),de.add(new go.PathSegment(go.PathSegment.Line,.5*te,.6*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.1*te,ne)),de.add(new go.PathSegment(go.PathSegment.Line,0,.9*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.4*te,.5*ne)),de.add(new go.PathSegment(go.PathSegment.Line,0,.1*ne).close()),oe}),go.Shape.setFigureParameter("SquareIBeam",0,new St("BeamWidth",.2,.1,.9)),go.Shape.defineFigureGenerator("SquareIBeam",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=.2);var oe=new go.Geometry,de=new go.PathFigure(0,0,!0);return oe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,te,0)),de.add(new go.PathSegment(go.PathSegment.Line,te,le*ne)),de.add(new go.PathSegment(go.PathSegment.Line,(.5+le/2)*te,le*ne)),de.add(new go.PathSegment(go.PathSegment.Line,(.5+le/2)*te,(1-le)*ne)),de.add(new go.PathSegment(go.PathSegment.Line,te,(1-le)*ne)),de.add(new go.PathSegment(go.PathSegment.Line,te,ne)),de.add(new go.PathSegment(go.PathSegment.Line,0,ne)),de.add(new go.PathSegment(go.PathSegment.Line,0,(1-le)*ne)),de.add(new go.PathSegment(go.PathSegment.Line,(.5-le/2)*te,(1-le)*ne)),de.add(new go.PathSegment(go.PathSegment.Line,(.5-le/2)*te,le*ne)),de.add(new go.PathSegment(go.PathSegment.Line,0,le*ne).close()),oe}),go.Shape.setFigureParameter("RoundedIBeam",0,new St("Curviness",.5,.05,.65)),go.Shape.defineFigureGenerator("RoundedIBeam",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=.5);var oe=new go.Geometry,de=new go.PathFigure(0,0,!0);return oe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,te,0)),de.add(new go.PathSegment(go.PathSegment.Bezier,te,ne,Math.abs(1-le)*te,.25*ne,Math.abs(1-le)*te,.75*ne)),de.add(new go.PathSegment(go.PathSegment.Line,0,ne)),de.add(new go.PathSegment(go.PathSegment.Bezier,0,0,le*te,.75*ne,le*te,.25*ne).close()),oe}),go.Shape.defineFigureGenerator("HalfEllipse",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Bezier,te,.5*ne,ge*te,0,te,(.5-ge/2)*ne)).add(new go.PathSegment(go.PathSegment.Bezier,0,ne,te,(.5+ge/2)*ne,ge*te,ne).close())).setSpots(0,.156,.844,.844)}),go.Shape.defineFigureGenerator("Crescent",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Bezier,0,ne,te,0,te,ne)).add(new go.PathSegment(go.PathSegment.Bezier,0,0,.5*te,.75*ne,.5*te,.25*ne).close())).setSpots(.311,.266,.744,.744)}),go.Shape.defineFigureGenerator("Heart",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(.5*te,ne,!0).add(new go.PathSegment(go.PathSegment.Bezier,0,.3*ne,.1*te,.8*ne,0,.5*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.5*te,.3*ne,0,0,.45*te,0)).add(new go.PathSegment(go.PathSegment.Bezier,te,.3*ne,.55*te,0,te,0)).add(new go.PathSegment(go.PathSegment.Bezier,.5*te,ne,te,.5*ne,.9*te,.8*ne).close())).setSpots(.14,.29,.86,.78)}),go.Shape.defineFigureGenerator("Spade",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(.5*te,0,!0).add(new go.PathSegment(go.PathSegment.Line,.51*te,.01*ne)).add(new go.PathSegment(go.PathSegment.Bezier,te,.5*ne,.6*te,.2*ne,te,.25*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.55*te,.7*ne,te,.8*ne,.6*te,.8*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.75*te,ne,.5*te,.75*ne,.55*te,.95*ne)).add(new go.PathSegment(go.PathSegment.Line,.25*te,ne)).add(new go.PathSegment(go.PathSegment.Bezier,.45*te,.7*ne,.45*te,.95*ne,.5*te,.75*ne)).add(new go.PathSegment(go.PathSegment.Bezier,0,.5*ne,.4*te,.8*ne,0,.8*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.49*te,.01*ne,0,.25*ne,.4*te,.2*ne).close())).setSpots(.14,.26,.86,.78)}),go.Shape.defineFigureGenerator("Club",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(.4*te,.6*ne,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Bezier,.15*te,ne,.5*te,.75*ne,.45*te,.95*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.85*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.6*te,.6*ne,.55*te,.95*ne,.5*te,.75*ne));var de=.2,he=.3,ie=0,ue=de*ge;return oe.add(new go.PathSegment(go.PathSegment.Bezier,(.5+he)*te,(.5+de+ie)*ne,(.5-de+he)*te,(.5+ue+ie)*ne,(.5-ue+he)*te,(.5+de+ie)*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,(1-.5+de+he)*te,(.5+ie)*ne,(.5+ue+he)*te,(.5+de+ie)*ne,(.5+de+he)*te,(.5+ue+ie)*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,(.5+he)*te,(.5-de+ie)*ne,(1-.5+de+he)*te,(.5-ue+ie)*ne,(.5+ue+he)*te,(.5-de+ie)*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.65*te,.36771243*ne,(.5-ue+he)*te,(.5-de+ie)*ne,(.5-de+he+.05)*te,(.5-ue+ie-.02)*ne)),de=.2,he=0,ie=-.3,ue=de*ge,oe.add(new go.PathSegment(go.PathSegment.Bezier,(1-.5+de+he)*te,(.5+ie)*ne,(.5+ue+he)*te,(.5+de+ie)*ne,(.5+de+he)*te,(.5+ue+ie)*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,(.5+he)*te,(.5-de+ie)*ne,(1-.5+de+he)*te,(.5-ue+ie)*ne,(.5+ue+he)*te,(.5-de+ie)*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,(.5-de+he)*te,(.5+ie)*ne,(.5-ue+he)*te,(.5-de+ie)*ne,(.5-de+he)*te,(.5-ue+ie)*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,(.5-ue+he)*te,(.5+de+ie)*ne,(.5-de+he)*te,(.5+ue+ie)*ne,(.5-ue+he)*te,(.5+de+ie)*ne)),de=.2,he=-.3,ie=0,ue=de*ge,oe.add(new go.PathSegment(go.PathSegment.Bezier,(.5+he)*te,(.5-de+ie)*ne,(1-.5+de+he-.05)*te,(.5-ue+ie-.02)*ne,(.5+ue+he)*te,(.5-de+ie)*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,(.5-de+he)*te,(.5+ie)*ne,(.5-ue+he)*te,(.5-de+ie)*ne,(.5-de+he)*te,(.5-ue+ie)*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,(.5+he)*te,(.5+de+ie)*ne,(.5-de+he)*te,(.5+ue+ie)*ne,(.5-ue+he)*te,(.5+de+ie)*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.4*te,.6*ne,(.5+ue+he)*te,(.5+de+ie)*ne,(.5+de+he)*te,(.5+ue+ie)*ne).close()),le.setSpots(.06,.33,.93,.68),le}),go.Shape.defineFigureGenerator("YinYang",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(te*.5,0,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Arc,270,180,te*.5,te*.5,te*.5,te*.5)),oe.add(new go.PathSegment(go.PathSegment.Arc,90,-180,te*.5,te*.75,te*.25,te*.25)),oe.add(new go.PathSegment(go.PathSegment.Arc,90,180,te*.5,te*.25,te*.25,te*.25));var de=.1,he=.5,ie=.25;return oe.add(new go.PathSegment(go.PathSegment.Move,(he+de)*te,ie*ne)),oe.add(new go.PathSegment(go.PathSegment.Arc,0,-360,te*he,ne*ie,de*te,de*te).close()),oe=new go.PathFigure(te*.5,0,!1),le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Arc,270,-180,te*.5,te*.5,te*.5,te*.5)),ie=.75,oe=new go.PathFigure((he+de)*te,ie*ne,!0),le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Arc,0,360,te*he,ne*ie,de*te,de*te).close()),le.defaultStretch=go.GraphObject.Uniform,le}),go.Shape.defineFigureGenerator("Peace",function(ce,te,ne){var le=.8535533905932737,oe=.5*te,de=.5*ne;return new go.Geometry().add(new go.PathFigure(oe,0,!1).add(new go.PathSegment(go.PathSegment.Arc,270,360,oe,de,oe,de)).add(new go.PathSegment(go.PathSegment.Line,oe,ne)).add(new go.PathSegment(go.PathSegment.Move,oe,de)).add(new go.PathSegment(go.PathSegment.Line,(1-le)*te,le*ne)).add(new go.PathSegment(go.PathSegment.Move,oe,de)).add(new go.PathSegment(go.PathSegment.Line,le*te,le*ne)))}),go.Shape.defineFigureGenerator("NotAllowed",function(ce,te,ne){var le=new go.Geometry,oe=ge*.5,de=.5,he=.5,ie=.5,ue=new go.PathFigure(he*te,(ie-de)*ne);le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he-de)*te,ie*ne,(he-oe)*te,(ie-de)*ne,(he-de)*te,(ie-oe)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie+de)*ne,(he-de)*te,(ie+oe)*ne,(he-oe)*te,(ie+de)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he+de)*te,ie*ne,(he+oe)*te,(ie+de)*ne,(he+de)*te,(ie+oe)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie-de)*ne,(he+de)*te,(ie-oe)*ne,(he+oe)*te,(ie-de)*ne)),de=.4,oe=ge*.4;var ve=Be(),Se=Be(),De=Be(),Re=Be();Ce(he,ie-de,he+oe,ie-de,he+de,ie-oe,he+de,ie,.42,ve,Se,De,Re,Re);var Ne=Be(),ze=Be(),Ge=Be();Ce(he,ie-de,he+oe,ie-de,he+de,ie-oe,he+de,ie,.58,Re,Re,Ge,Ne,ze);var Xe=Be(),Qe=Be(),nt=Be();Ce(he,ie+de,he-oe,ie+de,he-de,ie+oe,he-de,ie,.42,Xe,Qe,nt,Re,Re);var $e=Be(),qe=Be(),ot=Be();return Ce(he,ie+de,he-oe,ie+de,he-de,ie+oe,he-de,ie,.58,Re,Re,ot,$e,qe),ue.add(new go.PathSegment(go.PathSegment.Move,ot.x*te,ot.y*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he-de)*te,ie*ne,$e.x*te,$e.y*ne,qe.x*te,qe.y*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie-de)*ne,(he-de)*te,(ie-oe)*ne,(he-oe)*te,(ie-de)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,De.x*te,De.y*ne,ve.x*te,ve.y*ne,Se.x*te,Se.y*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,ot.x*te,ot.y*ne).close()),ue.add(new go.PathSegment(go.PathSegment.Move,nt.x*te,nt.y*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,Ge.x*te,Ge.y*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he+de)*te,ie*ne,Ne.x*te,Ne.y*ne,ze.x*te,ze.y*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie+de)*ne,(he+de)*te,(ie+oe)*ne,(he+oe)*te,(ie+de)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,nt.x*te,nt.y*ne,Xe.x*te,Xe.y*ne,Qe.x*te,Qe.y*ne).close()),He(ve),He(Se),He(De),He(Re),He(Ne),He(ze),He(Ge),He(Xe),He(Qe),He(nt),He($e),He(qe),He(ot),le.defaultStretch=go.GraphObject.Uniform,le}),go.Shape.defineFigureGenerator("Fragile",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Line,.25*te,0)).add(new go.PathSegment(go.PathSegment.Line,.2*te,.15*ne)).add(new go.PathSegment(go.PathSegment.Line,.3*te,.25*ne)).add(new go.PathSegment(go.PathSegment.Line,.29*te,.33*ne)).add(new go.PathSegment(go.PathSegment.Line,.35*te,.25*ne)).add(new go.PathSegment(go.PathSegment.Line,.3*te,.15*ne)).add(new go.PathSegment(go.PathSegment.Line,.4*te,0)).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Bezier,.55*te,.5*ne,te,.25*ne,.75*te,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,.55*te,.9*ne)).add(new go.PathSegment(go.PathSegment.Line,.7*te,.9*ne)).add(new go.PathSegment(go.PathSegment.Line,.7*te,ne)).add(new go.PathSegment(go.PathSegment.Line,.3*te,ne)).add(new go.PathSegment(go.PathSegment.Line,.3*te,.9*ne)).add(new go.PathSegment(go.PathSegment.Line,.45*te,.9*ne)).add(new go.PathSegment(go.PathSegment.Line,.45*te,.5*ne)).add(new go.PathSegment(go.PathSegment.Bezier,0,0,.25*te,.5*ne,0,.25*ne).close()))}),go.Shape.setFigureParameter("HourGlass",0,new St("Thickness",30)),go.Shape.defineFigureGenerator("HourGlass",function(ce,te,ne){var le=ce?ce.parameter1:NaN;(isNaN(le)||le<0)&&(le=30),le>te&&(le=te);var oe=(te-le)/2,de=oe+le;return new go.Geometry().add(new go.PathFigure(de,.5*ne).add(new go.PathSegment(go.PathSegment.Line,te,ne)).add(new go.PathSegment(go.PathSegment.Line,0,ne)).add(new go.PathSegment(go.PathSegment.Line,oe,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,0,0)).add(new go.PathSegment(go.PathSegment.Line,te,0).close()))}),go.Shape.defineFigureGenerator("Lightning",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,.55*ne).add(new go.PathSegment(go.PathSegment.Line,.6*te,0)).add(new go.PathSegment(go.PathSegment.Line,.3*te,.45*ne)).add(new go.PathSegment(go.PathSegment.Line,te,.45*ne)).add(new go.PathSegment(go.PathSegment.Line,.4*te,ne)).add(new go.PathSegment(go.PathSegment.Line,.7*te,.55*ne).close()))}),go.Shape.defineFigureGenerator("GenderMale",function(ce,te,ne){var le=new go.Geometry,oe=ge*.4,de=.4,he=.5,ie=.5,ue=Be(),ve=Be(),Se=Be(),De=Be(),Re=new go.PathFigure((he-de)*te,ie*ne,!1);le.add(Re),Re.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie-de)*ne,(he-de)*te,(ie-oe)*ne,(he-oe)*te,(ie-de)*ne)),Ce(he,ie-de,he+oe,ie-de,he+de,ie-oe,he+de,ie,.44,Se,De,ve,ue,ue),Re.add(new go.PathSegment(go.PathSegment.Bezier,ve.x*te,ve.y*ne,Se.x*te,Se.y*ne,De.x*te,De.y*ne));var Ne=Ie(ve.x,ve.y);Ce(he,ie-de,he+oe,ie-de,he+de,ie-oe,he+de,ie,.56,ue,ue,ve,Se,De);var ze=Ie(ve.x,ve.y);Re.add(new go.PathSegment(go.PathSegment.Line,(Ne.x*.1+.95*.9)*te,Ne.y*.1*ne)),Re.add(new go.PathSegment(go.PathSegment.Line,.85*te,Ne.y*.1*ne)),Re.add(new go.PathSegment(go.PathSegment.Line,.85*te,0)),Re.add(new go.PathSegment(go.PathSegment.Line,te,0)),Re.add(new go.PathSegment(go.PathSegment.Line,te,.15*ne)),Re.add(new go.PathSegment(go.PathSegment.Line,(ze.x*.1+.9)*te,.15*ne)),Re.add(new go.PathSegment(go.PathSegment.Line,(ze.x*.1+.9)*te,(ze.y*.1+.05*.9)*ne)),Re.add(new go.PathSegment(go.PathSegment.Line,ze.x*te,ze.y*ne)),Re.add(new go.PathSegment(go.PathSegment.Bezier,(he+de)*te,ie*ne,Se.x*te,Se.y*ne,De.x*te,De.y*ne)),Re.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie+de)*ne,(he+de)*te,(ie+oe)*ne,(he+oe)*te,(ie+de)*ne)),Re.add(new go.PathSegment(go.PathSegment.Bezier,(he-de)*te,ie*ne,(he-oe)*te,(ie+de)*ne,(he-de)*te,(ie+oe)*ne)),de=.35,oe=ge*.35;var Ge=new go.PathFigure(he*te,(ie-de)*ne,!1);le.add(Ge),Ge.add(new go.PathSegment(go.PathSegment.Bezier,(he-de)*te,ie*ne,(he-oe)*te,(ie-de)*ne,(he-de)*te,(ie-oe)*ne)),Ge.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie+de)*ne,(he-de)*te,(ie+oe)*ne,(he-oe)*te,(ie+de)*ne)),Ge.add(new go.PathSegment(go.PathSegment.Bezier,(he+de)*te,ie*ne,(he+oe)*te,(ie+de)*ne,(he+de)*te,(ie+oe)*ne)),Ge.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie-de)*ne,(he+de)*te,(ie-oe)*ne,(he+oe)*te,(ie-de)*ne));var Xe=new go.PathFigure((he-de)*te,ie*ne,!1);return le.add(Xe),He(ue),He(ve),He(Se),He(De),He(Ne),He(ze),le.spot1=new go.Spot(.202,.257),le.spot2=new go.Spot(.792,.739),le.defaultStretch=go.GraphObject.Uniform,le}),go.Shape.defineFigureGenerator("GenderFemale",function(ce,te,ne){var le=new go.Geometry,oe=.375,de=0,he=-.125,ie=oe*ge,ue=new go.PathFigure((.525+de)*te,(.5+oe+he)*ne,!1);le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Bezier,(1-.5+oe+de)*te,(.5+he)*ne,(.5+ie+de)*te,(.5+oe+he)*ne,(.5+oe+de)*te,(.5+ie+he)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(.5+de)*te,(.5-oe+he)*ne,(1-.5+oe+de)*te,(.5-ie+he)*ne,(.5+ie+de)*te,(.5-oe+he)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(.5-oe+de)*te,(.5+he)*ne,(.5-ie+de)*te,(.5-oe+he)*ne,(.5-oe+de)*te,(.5-ie+he)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(.475+de)*te,(.5+oe+he)*ne,(.5-oe+de)*te,(.5+ie+he)*ne,(.5-ie+de)*te,(.5+oe+he)*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.475*te,.85*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.425*te,.85*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.425*te,.9*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.475*te,.9*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.475*te,ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.525*te,ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.525*te,.9*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.575*te,.9*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.575*te,.85*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.525*te,.85*ne).close()),oe=.325,de=0,he=-.125,ie=oe*ge;var ue=new go.PathFigure((1-.5+oe+de)*te,(.5+he)*ne,!1);le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Bezier,(.5+de)*te,(.5+oe+he)*ne,(.5+oe+de)*te,(.5+ie+he)*ne,(.5+ie+de)*te,(.5+oe+he)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(.5-oe+de)*te,(.5+he)*ne,(.5-ie+de)*te,(.5+oe+he)*ne,(.5-oe+de)*te,(.5+ie+he)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(.5+de)*te,(.5-oe+he)*ne,(.5-oe+de)*te,(.5-ie+he)*ne,(.5-ie+de)*te,(.5-oe+he)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(1-.5+oe+de)*te,(.5+he)*ne,(.5+ie+de)*te,(.5-oe+he)*ne,(1-.5+oe+de)*te,(.5-ie+he)*ne));var ue=new go.PathFigure((.525+de)*te,(.5+oe+he)*ne,!1);return le.add(ue),le.spot1=new go.Spot(.232,.136),le.spot2=new go.Spot(.682,.611),le.defaultStretch=go.GraphObject.Uniform,le}),go.Shape.defineFigureGenerator("LogicImplies",function(ce,te,ne){var le=ce?ce.parameter1:NaN;return isNaN(le)&&(le=.2),new go.Geometry().add(new go.PathFigure((1-le)*te,0,!1).add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,(1-le)*te,ne)).add(new go.PathSegment(go.PathSegment.Move,0,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,te,.5*ne))).setSpots(0,0,.8,.5)}),go.Shape.defineFigureGenerator("LogicIff",function(ce,te,ne){var le=ce?ce.parameter1:NaN;return isNaN(le)&&(le=.2),new go.Geometry().add(new go.PathFigure((1-le)*te,0,!1).add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,(1-le)*te,ne)).add(new go.PathSegment(go.PathSegment.Move,0,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)).add(new go.PathSegment(go.PathSegment.Move,le*te,0)).add(new go.PathSegment(go.PathSegment.Line,0,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,le*te,ne))).setSpots(.2,0,.8,.5)}),go.Shape.defineFigureGenerator("LogicNot",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Line,te,ne)))}),go.Shape.defineFigureGenerator("LogicAnd",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,ne,!1).add(new go.PathSegment(go.PathSegment.Line,.5*te,0)).add(new go.PathSegment(go.PathSegment.Line,te,ne))).setSpots(.25,.5,.75,1)}),go.Shape.defineFigureGenerator("LogicOr",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)).add(new go.PathSegment(go.PathSegment.Line,te,0))).setSpots(.219,0,.78,.409)}),go.Shape.defineFigureGenerator("LogicXor",function(ce,te,ne){var le=new go.Geometry().add(new go.PathFigure(.5*te,0,!1).add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)).add(new go.PathSegment(go.PathSegment.Move,0,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)).add(new go.PathSegment(go.PathSegment.Arc,0,360,.5*te,.5*ne,.5*te,.5*ne)));return le.defaultStretch=go.GraphObject.Uniform,le}),go.Shape.defineFigureGenerator("LogicTruth",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Move,.5*te,0)).add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)))}),go.Shape.defineFigureGenerator("LogicFalsity",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,ne,!1).add(new go.PathSegment(go.PathSegment.Line,te,ne)).add(new go.PathSegment(go.PathSegment.Move,.5*te,ne)).add(new go.PathSegment(go.PathSegment.Line,.5*te,0)))}),go.Shape.defineFigureGenerator("LogicThereExists",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,0,.5*ne)).add(new go.PathSegment(go.PathSegment.Move,te,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,te,ne)).add(new go.PathSegment(go.PathSegment.Line,0,ne)))}),go.Shape.defineFigureGenerator("LogicForAll",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Move,.25*te,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,.75*te,.5*ne))).setSpots(.25,0,.75,.5)}),go.Shape.defineFigureGenerator("LogicIsDefinedAs",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Move,0,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)).add(new go.PathSegment(go.PathSegment.Move,0,ne)).add(new go.PathSegment(go.PathSegment.Line,te,ne))).setSpots(.01,.01,.99,.49)}),go.Shape.defineFigureGenerator("LogicIntersect",function(ce,te,ne){var le=.5;return new go.Geometry().add(new go.PathFigure(0,ne,!1).add(new go.PathSegment(go.PathSegment.Line,0,le*ne)).add(new go.PathSegment(go.PathSegment.Arc,180,180,le*te,le*ne,le*te,le*ne)).add(new go.PathSegment(go.PathSegment.Line,te,ne))).setSpots(0,.5,1,1)}),go.Shape.defineFigureGenerator("LogicUnion",function(ce,te,ne){var le=.5;return new go.Geometry().add(new go.PathFigure(te,0,!1).add(new go.PathSegment(go.PathSegment.Line,te,le*ne)).add(new go.PathSegment(go.PathSegment.Arc,0,180,le*te,le*ne,le*te,le*ne)).add(new go.PathSegment(go.PathSegment.Line,0,0))).setSpots(0,0,1,.5)}),go.Shape.setFigureParameter("Arrow",0,new St("ArrowheadWidth",.3,.01,.99)),go.Shape.setFigureParameter("Arrow",1,new St("TailHeight",.3,.01,.99)),go.Shape.defineFigureGenerator("Arrow",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=.3);var oe=ce?ce.parameter2:NaN;isNaN(oe)&&(oe=.3);var de=(1-le)*te,he=(.5-oe/2)*ne,ie=(.5+oe/2)*ne,ue=new go.Geometry,ve=new go.PathFigure(0,he,!0);ue.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,de,he)),ve.add(new go.PathSegment(go.PathSegment.Line,de,0)),ve.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),ve.add(new go.PathSegment(go.PathSegment.Line,de,ne)),ve.add(new go.PathSegment(go.PathSegment.Line,de,ie)),ve.add(new go.PathSegment(go.PathSegment.Line,0,ie).close()),ue.spot1=new go.Spot(0,he/ne);var Se=Fe(0,ie/ne,1,ie/ne,de/te,1,1,.5,Be());return ue.spot2=new go.Spot(Se.x,Se.y),He(Se),ue}),go.Shape.setFigureParameter("Arrow2",0,new St("ArrowheadWidth",30)),go.Shape.setFigureParameter("Arrow2",0,new St("TailHeight",30)),go.Shape.defineFigureGenerator("Arrow2",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=30),le>te&&(le=te);var oe=ce?ce.parameter2:NaN;isNaN(oe)&&(oe=30),oe=Math.min(oe,ne/2);var de=te-le,he=(ne-oe)/2,ie=he+oe,ue=new go.Geometry,ve=new go.PathFigure(0,he,!0);ue.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,de,he)),ve.add(new go.PathSegment(go.PathSegment.Line,de,0)),ve.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),ve.add(new go.PathSegment(go.PathSegment.Line,de,ne)),ve.add(new go.PathSegment(go.PathSegment.Line,de,ie)),ve.add(new go.PathSegment(go.PathSegment.Line,0,ie).close()),ue.spot1=new go.Spot(0,he/ne);var Se=Fe(0,ie/ne,1,ie/ne,de/te,1,1,.5,Be());return ue.spot2=new go.Spot(Se.x,Se.y),He(Se),ue}),go.Shape.defineFigureGenerator("Chevron",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,0,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,.5*ne).close()),le}),go.Shape.defineFigureGenerator("DoubleArrow",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,0,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,.3*te,.214*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.3*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,1*te,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.3*te,1*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.3*te,.786*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,1*ne).close()),le}),go.Shape.setFigureParameter("DoubleEndArrow",0,new St("ConnecterHeight",.3,.01,.99)),go.Shape.defineFigureGenerator("DoubleEndArrow",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=.3);var oe=(.5-le/2)*ne,de=(.5+le/2)*ne,he=new go.Geometry,ie=new go.PathFigure(te,.5*ne,!0);he.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,ne)),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,de)),ie.add(new go.PathSegment(go.PathSegment.Line,.3*te,de)),ie.add(new go.PathSegment(go.PathSegment.Line,.3*te,ne)),ie.add(new go.PathSegment(go.PathSegment.Line,0,.5*ne)),ie.add(new go.PathSegment(go.PathSegment.Line,.3*te,0)),ie.add(new go.PathSegment(go.PathSegment.Line,.3*te,oe)),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,oe)),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,0).close());var ue=Fe(0,.5,.3,0,0,oe/ne,.1,oe/ne,Be());return he.spot1=new go.Spot(ue.x,ue.y),ue=Fe(.7,1,1,.5,0,de/ne,1,de/ne,ue),he.spot2=new go.Spot(ue.x,ue.y),He(ue),he}),go.Shape.setFigureParameter("DoubleEndArrow2",0,new St("ConnecterHeight",40)),go.Shape.setFigureParameter("DoubleEndArrow2",1,new St("ArrowHeight",100)),go.Shape.defineFigureGenerator("DoubleEndArrow2",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=40);var oe=ce?ce.parameter2:NaN;isNaN(oe)&&(oe=100);var de=(ne-le)/2,he=de+le,ie=(ne-oe)/2,ue=ie+oe;(le>ne||oe>ne)&&(oe>le?(le=le*ne/oe,de=(ne-le)/2,he=de+le,ie=0,ue=ne):(de=0,he=ne,ie=0,ue=ne));var ve=new go.Geometry,Se=new go.PathFigure(te,.5*ne,!0);ve.add(Se),Se.add(new go.PathSegment(go.PathSegment.Line,.7*te,ue)),Se.add(new go.PathSegment(go.PathSegment.Line,.7*te,he)),Se.add(new go.PathSegment(go.PathSegment.Line,.3*te,he)),Se.add(new go.PathSegment(go.PathSegment.Line,.3*te,ue)),Se.add(new go.PathSegment(go.PathSegment.Line,0,.5*ne)),Se.add(new go.PathSegment(go.PathSegment.Line,.3*te,ie)),Se.add(new go.PathSegment(go.PathSegment.Line,.3*te,de)),Se.add(new go.PathSegment(go.PathSegment.Line,.7*te,de)),Se.add(new go.PathSegment(go.PathSegment.Line,.7*te,ie).close());var De=Fe(0,.5,.3,ie/ne,0,de/ne,1,de/ne,Be());return ve.spot1=new go.Spot(De.x,De.y),De=Fe(.7,ue/ne,1,.5,0,he/ne,1,he/ne,De),ve.spot2=new go.Spot(De.x,De.y),He(De),ve}),go.Shape.setFigureParameter("IBeamArrow",0,new St("ConnectorHeight",.7,.51,.97)),go.Shape.defineFigureGenerator("IBeamArrow",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=.3);var oe=(.5-le/2)*ne,de=(.5+le/2)*ne,he=new go.Geometry,ie=new go.PathFigure(te,.5*ne,!0);he.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,ne)),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,de)),ie.add(new go.PathSegment(go.PathSegment.Line,.2*te,de)),ie.add(new go.PathSegment(go.PathSegment.Line,.2*te,ne)),ie.add(new go.PathSegment(go.PathSegment.Line,0,ne)),ie.add(new go.PathSegment(go.PathSegment.Line,0,0)),ie.add(new go.PathSegment(go.PathSegment.Line,.2*te,0)),ie.add(new go.PathSegment(go.PathSegment.Line,.2*te,oe)),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,oe)),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,0).close()),he.spot1=new go.Spot(0,oe/ne);var ue=Fe(.7,1,1,.5,0,de/ne,1,de/ne,Be());return he.spot2=new go.Spot(ue.x,ue.y),He(ue),he}),go.Shape.setFigureParameter("IBeamArrow2",0,new St("ConnectorHeight",40)),go.Shape.setFigureParameter("IBeamArrow2",1,new St("BeamArrowHeight",100)),go.Shape.defineFigureGenerator("IBeamArrow2",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=40);var oe=ce?ce.parameter2:NaN;isNaN(oe)&&(oe=100);var de=(ne-le)/2,he=de+le,ie=(ne-oe)/2,ue=ie+oe;(le>ne||oe>ne)&&(oe>le?(le=le*ne/oe,de=(ne-le)/2,he=de+le,ie=0,ue=ne):(de=0,he=ne,ie=0,ue=ne));var ve=new go.Geometry,Se=new go.PathFigure(te,.5*ne,!0);ve.add(Se),Se.add(new go.PathSegment(go.PathSegment.Line,.7*te,ue)),Se.add(new go.PathSegment(go.PathSegment.Line,.7*te,he)),Se.add(new go.PathSegment(go.PathSegment.Line,.2*te,he)),Se.add(new go.PathSegment(go.PathSegment.Line,.2*te,ue)),Se.add(new go.PathSegment(go.PathSegment.Line,0,ue)),Se.add(new go.PathSegment(go.PathSegment.Line,0,ie)),Se.add(new go.PathSegment(go.PathSegment.Line,.2*te,ie)),Se.add(new go.PathSegment(go.PathSegment.Line,.2*te,de)),Se.add(new go.PathSegment(go.PathSegment.Line,.7*te,de)),Se.add(new go.PathSegment(go.PathSegment.Line,.7*te,ie).close()),ve.spot1=new go.Spot(0,de/ne);var De=Fe(.7,ue/ne,1,.5,0,he/ne,1,he/ne,Be());return ve.spot2=new go.Spot(De.x,De.y),He(De),ve}),go.Shape.setFigureParameter("Pointer",0,new St("BackPoint",.1,0,.2)),go.Shape.defineFigureGenerator("Pointer",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=.1);var oe=new go.Geometry,de=new go.PathFigure(te,.5*ne,!0);oe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,0,ne)),de.add(new go.PathSegment(go.PathSegment.Line,le*te,.5*ne)),de.add(new go.PathSegment(go.PathSegment.Line,0,0).close()),oe.spot1=new go.Spot(le,.35);var he=Fe(.2,.65,1,.65,0,1,1,.5,Be());return oe.spot2=new go.Spot(he.x,he.y),He(he),oe}),go.Shape.setFigureParameter("RoundedPointer",0,new St("RoundedEdge",.3,0,.5)),go.Shape.defineFigureGenerator("RoundedPointer",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=.3);var oe=new go.Geometry,de=new go.PathFigure(te,.5*ne,!0);oe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,0,ne)),de.add(new go.PathSegment(go.PathSegment.Bezier,0,0,le*te,.75*ne,le*te,.25*ne).close()),oe.spot1=new go.Spot(le,.35);var he=Fe(0,.65,1,.65,0,1,1,.5,Be());return oe.spot2=new go.Spot(he.x,he.y),He(he),oe}),go.Shape.setFigureParameter("SplitEndArrow",0,new St("TailHeight",.4,.01,.99)),go.Shape.defineFigureGenerator("SplitEndArrow",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=.4);var oe=(.5-le/2)*ne,de=(.5+le/2)*ne,he=new go.Geometry,ie=new go.PathFigure(te,.5*ne,!0);he.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,ne)),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,de)),ie.add(new go.PathSegment(go.PathSegment.Line,0,de)),ie.add(new go.PathSegment(go.PathSegment.Line,.2*te,.5*ne)),ie.add(new go.PathSegment(go.PathSegment.Line,0,oe)),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,oe)),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,0).close()),he.spot1=new go.Spot(.2,.3);var ue=Fe(.7,1,1,.5,0,de/ne,1,de/ne,Be());return he.spot2=new go.Spot(ue.x,ue.y),He(ue),he}),go.Shape.setFigureParameter("SplitEndArrow2",0,new St("TailThickness",50)),go.Shape.defineFigureGenerator("SplitEndArrow2",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=50);var oe=(ne-le)/2,de=oe+le;le>ne&&(oe=0,de=ne);var he=new go.Geometry,ie=new go.PathFigure(te,.5*ne,!0);he.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,ne)),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,de)),ie.add(new go.PathSegment(go.PathSegment.Line,0,de)),ie.add(new go.PathSegment(go.PathSegment.Line,.2*te,.5*ne)),ie.add(new go.PathSegment(go.PathSegment.Line,0,oe)),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,oe)),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,0).close()),he.spot1=new go.Spot(.2,oe/ne);var ue=Fe(.7,1,1,.5,0,de/ne,1,de/ne,Be());return he.spot2=new go.Spot(ue.x,ue.y),He(ue),he}),go.Shape.setFigureParameter("SquareArrow",0,new St("ArrowPoint",.7,.2,.9)),go.Shape.defineFigureGenerator("SquareArrow",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=.7);var oe=new go.Geometry,de=new go.PathFigure(te,.5*ne,!0);return oe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,le*te,ne)),de.add(new go.PathSegment(go.PathSegment.Line,0,ne)),de.add(new go.PathSegment(go.PathSegment.Line,0,0)),de.add(new go.PathSegment(go.PathSegment.Line,le*te,0).close()),oe.spot1=go.Spot.TopLeft,oe.spot2=new go.Spot(le,1),oe}),go.Shape.defineFigureGenerator("Cone1",function(ce,te,ne){var le=new go.Geometry,oe=ge*.5,de=ge*.1,he=new go.PathFigure(0,.9*ne,!0);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,.5*te,0)),he.add(new go.PathSegment(go.PathSegment.Line,te,.9*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,ne,te,(.9+de)*ne,(.5+oe)*te,ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,.9*ne,(.5-oe)*te,ne,0,(.9+de)*ne).close()),le.spot1=new go.Spot(.25,.5),le.spot2=new go.Spot(.75,.97),le}),go.Shape.defineFigureGenerator("Cone2",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,.9*ne,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Bezier,te,.9*ne,(1-.85/.9)*te,ne,.85/.9*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,0,.9*ne).close());var de=new go.PathFigure(0,.9*ne,!1);return le.add(de),de.add(new go.PathSegment(go.PathSegment.Bezier,te,.9*ne,(1-.85/.9)*te,.8*ne,.85/.9*te,.8*ne)),le.spot1=new go.Spot(.25,.5),le.spot2=new go.Spot(.75,.82),le}),go.Shape.defineFigureGenerator("Cube1",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(.5*te,ne,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,te,.85*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.15*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,0,.15*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,.85*ne).close());var de=new go.PathFigure(.5*te,ne,!1);return le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.5*te,.3*ne)),de.add(new go.PathSegment(go.PathSegment.Line,0,.15*ne)),de.add(new go.PathSegment(go.PathSegment.Move,.5*te,.3*ne)),de.add(new go.PathSegment(go.PathSegment.Line,te,.15*ne)),le.spot1=new go.Spot(0,.3),le.spot2=new go.Spot(.5,.85),le}),go.Shape.defineFigureGenerator("Cube2",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,.3*ne,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.7*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.7*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,.3*te,0).close());var de=new go.PathFigure(0,.3*ne,!1);return le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.7*te,.3*ne)),de.add(new go.PathSegment(go.PathSegment.Line,te,0)),de.add(new go.PathSegment(go.PathSegment.Move,.7*te,.3*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.7*te,ne)),le.spot1=new go.Spot(0,.3),le.spot2=new go.Spot(.7,1),le}),go.Shape.defineFigureGenerator("Cylinder1",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=5),le=Math.min(le,ne/3);var oe=new go.Geometry,de=ge*.5,he=new go.PathFigure(0,le,!0);oe.add(he),he.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,0,0,ge*le,(.5-de)*te,0)),he.add(new go.PathSegment(go.PathSegment.Bezier,1*te,le,(.5+de)*te,0,1*te,ge*le)),he.add(new go.PathSegment(go.PathSegment.Line,te,ne-le)),he.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,1*ne,1*te,ne-ge*le,(.5+de)*te,1*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,ne-le,(.5-de)*te,1*ne,0,ne-ge*le)),he.add(new go.PathSegment(go.PathSegment.Line,0,le));var ie=new go.PathFigure(te,le,!1);return oe.add(ie),ie.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,2*le,1*te,2*le-ge*le,(.5+de)*te,2*le)),ie.add(new go.PathSegment(go.PathSegment.Bezier,0,le,(.5-de)*te,2*le,0,2*le-ge*le)),oe.spot1=new go.Spot(0,0,0,2*le),oe.spot2=new go.Spot(1,1),oe}),go.Shape.defineFigureGenerator("Cylinder2",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=5),le=Math.min(le,ne/3);var oe=new go.Geometry,de=ge*.5,he=new go.PathFigure(0,ne-le,!0);oe.add(he),he.add(new go.PathSegment(go.PathSegment.Line,0,le)),he.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,0,0,ge*le,(.5-de)*te,0)),he.add(new go.PathSegment(go.PathSegment.Bezier,te,le,(.5+de)*te,0,te,ge*le)),he.add(new go.PathSegment(go.PathSegment.Line,te,ne-le)),he.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,ne,te,ne-ge*le,(.5+de)*te,ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,ne-le,(.5-de)*te,ne,0,ne-ge*le));var ie=new go.PathFigure(0,ne-le,!1);return oe.add(ie),ie.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,ne-2*le,0,ne-le-ge*le,(.5-de)*te,ne-2*le)),ie.add(new go.PathSegment(go.PathSegment.Bezier,te,ne-le,(.5+de)*te,ne-2*le,te,ne-le-ge*le)),oe.spot1=new go.Spot(0,0),oe.spot2=new go.Spot(1,1,0,-2*le),oe}),go.Shape.defineFigureGenerator("Cylinder3",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=5),le=Math.min(le,te/3);var oe=new go.Geometry,de=ge*.5,he=new go.PathFigure(le,0,!0);oe.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te-le,0)),he.add(new go.PathSegment(go.PathSegment.Bezier,te,.5*ne,te-ge*le,0,te,(.5-de)*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,te-le,ne,te,(.5+de)*ne,te-ge*le,ne)),he.add(new go.PathSegment(go.PathSegment.Line,le,ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,.5*ne,ge*le,ne,0,(.5+de)*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,le,0,0,(.5-de)*ne,ge*le,0));var ie=new go.PathFigure(le,0,!1);return oe.add(ie),ie.add(new go.PathSegment(go.PathSegment.Bezier,2*le,.5*ne,le+ge*le,0,2*le,(.5-de)*ne)),ie.add(new go.PathSegment(go.PathSegment.Bezier,le,ne,2*le,(.5+de)*ne,le+ge*le,ne)),oe.spot1=new go.Spot(0,0,2*le,0),oe.spot2=new go.Spot(1,1),oe}),go.Shape.defineFigureGenerator("Cylinder4",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=5),le=Math.min(le,te/3);var oe=new go.Geometry,de=ge*.5,he=new go.PathFigure(te-le,0,!0);oe.add(he),he.add(new go.PathSegment(go.PathSegment.Bezier,te,.5*ne,te-ge*le,0,te,(.5-de)*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,te-le,ne,te,(.5+de)*ne,te-ge*le,ne)),he.add(new go.PathSegment(go.PathSegment.Line,le,ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,.5*ne,ge*le,ne,0,(.5+de)*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,le,0,0,(.5-de)*ne,ge*le,0)),he.add(new go.PathSegment(go.PathSegment.Line,te-le,0));var ie=new go.PathFigure(te-le,0,!1);return oe.add(ie),ie.add(new go.PathSegment(go.PathSegment.Bezier,te-2*le,.5*ne,te-le-ge*le,0,te-2*le,(.5-de)*ne)),ie.add(new go.PathSegment(go.PathSegment.Bezier,te-le,ne,te-2*le,(.5+de)*ne,te-le-ge*le,ne)),oe.spot1=new go.Spot(0,0),oe.spot2=new go.Spot(1,1,-2*le,0),oe}),go.Shape.defineFigureGenerator("Prism1",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(.25*te,.25*ne,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,.75*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne).close());var de=new go.PathFigure(.25*te,.25*ne,!1);return le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)),le.spot1=new go.Spot(.408,.172),le.spot2=new go.Spot(.833,.662),le}),go.Shape.defineFigureGenerator("Prism2",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,.25*ne,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,.75*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.25*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.75*te,.75*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne).close());var de=new go.PathFigure(0,ne,!1);return le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.25*te,.5*ne)),de.add(new go.PathSegment(go.PathSegment.Line,te,.25*ne)),de.add(new go.PathSegment(go.PathSegment.Move,0,.25*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.25*te,.5*ne)),le.spot1=new go.Spot(.25,.5),le.spot2=new go.Spot(.75,.75),le}),go.Shape.defineFigureGenerator("Pyramid1",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(.5*te,0,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,te,.75*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,.75*ne).close());var de=new go.PathFigure(.5*te,0,!1);return le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)),le.spot1=new go.Spot(.25,.367),le.spot2=new go.Spot(.75,.875),le}),go.Shape.defineFigureGenerator("Pyramid2",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(.5*te,0,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,te,.85*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,.85*ne).close());var de=new go.PathFigure(.5*te,0,!1);return le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.5*te,.7*ne)),de.add(new go.PathSegment(go.PathSegment.Line,0,.85*ne)),de.add(new go.PathSegment(go.PathSegment.Move,.5*te,.7*ne)),de.add(new go.PathSegment(go.PathSegment.Line,te,.85*ne)),le.spot1=new go.Spot(.25,.367),le.spot2=new go.Spot(.75,.875),le}),go.Shape.defineFigureGenerator("Actor",function(ce,te,ne){var le=new go.Geometry,oe=.2,de=.1,he=ge*oe,ie=ge*de,ue=.5,ve=.1,Se=new go.PathFigure(ue*te,(ve+de)*ne,!0);le.add(Se),Se.add(new go.PathSegment(go.PathSegment.Bezier,(ue-oe)*te,ve*ne,(ue-he)*te,(ve+de)*ne,(ue-oe)*te,(ve+ie)*ne)),Se.add(new go.PathSegment(go.PathSegment.Bezier,ue*te,(ve-de)*ne,(ue-oe)*te,(ve-ie)*ne,(ue-he)*te,(ve-de)*ne)),Se.add(new go.PathSegment(go.PathSegment.Bezier,(ue+oe)*te,ve*ne,(ue+he)*te,(ve-de)*ne,(ue+oe)*te,(ve-ie)*ne)),Se.add(new go.PathSegment(go.PathSegment.Bezier,ue*te,(ve+de)*ne,(ue+oe)*te,(ve+ie)*ne,(ue+he)*te,(ve+de)*ne));var De=.05,Re=ge*De;ue=.05,ve=.25;var Ne=new go.PathFigure(.5*te,.2*ne,!0);return le.add(Ne),Ne.add(new go.PathSegment(go.PathSegment.Line,.95*te,.2*ne)),ue=.95,ve=.25,Ne.add(new go.PathSegment(go.PathSegment.Bezier,(ue+De)*te,ve*ne,(ue+Re)*te,(ve-De)*ne,(ue+De)*te,(ve-Re)*ne)),Ne.add(new go.PathSegment(go.PathSegment.Line,te,.6*ne)),Ne.add(new go.PathSegment(go.PathSegment.Line,.85*te,.6*ne)),Ne.add(new go.PathSegment(go.PathSegment.Line,.85*te,.35*ne)),De=.025,Re=ge*De,ue=.825,ve=.35,Ne.add(new go.PathSegment(go.PathSegment.Bezier,ue*te,(ve-De)*ne,(ue+De)*te,(ve-Re)*ne,(ue+Re)*te,(ve-De)*ne)),Ne.add(new go.PathSegment(go.PathSegment.Bezier,(ue-De)*te,ve*ne,(ue-Re)*te,(ve-De)*ne,(ue-De)*te,(ve-Re)*ne)),Ne.add(new go.PathSegment(go.PathSegment.Line,.8*te,ne)),Ne.add(new go.PathSegment(go.PathSegment.Line,.55*te,ne)),Ne.add(new go.PathSegment(go.PathSegment.Line,.55*te,.7*ne)),De=.05,Re=ge*De,ue=.5,ve=.7,Ne.add(new go.PathSegment(go.PathSegment.Bezier,ue*te,(ve-De)*ne,(ue+De)*te,(ve-Re)*ne,(ue+Re)*te,(ve-De)*ne)),Ne.add(new go.PathSegment(go.PathSegment.Bezier,(ue-De)*te,ve*ne,(ue-Re)*te,(ve-De)*ne,(ue-De)*te,(ve-Re)*ne)),Ne.add(new go.PathSegment(go.PathSegment.Line,.45*te,ne)),Ne.add(new go.PathSegment(go.PathSegment.Line,.2*te,ne)),Ne.add(new go.PathSegment(go.PathSegment.Line,.2*te,.35*ne)),De=.025,Re=ge*De,ue=.175,ve=.35,Ne.add(new go.PathSegment(go.PathSegment.Bezier,ue*te,(ve-De)*ne,(ue+De)*te,(ve-Re)*ne,(ue+Re)*te,(ve-De)*ne)),Ne.add(new go.PathSegment(go.PathSegment.Bezier,(ue-De)*te,ve*ne,(ue-Re)*te,(ve-De)*ne,(ue-De)*te,(ve-Re)*ne)),Ne.add(new go.PathSegment(go.PathSegment.Line,.15*te,.6*ne)),Ne.add(new go.PathSegment(go.PathSegment.Line,0,.6*ne)),Ne.add(new go.PathSegment(go.PathSegment.Line,0,.25*ne)),De=.05,Re=ge*De,ue=.05,ve=.25,Ne.add(new go.PathSegment(go.PathSegment.Bezier,ue*te,(ve-De)*ne,(ue-De)*te,(ve-Re)*ne,(ue-Re)*te,(ve-De)*ne)),Ne.add(new go.PathSegment(go.PathSegment.Line,.5*te,.2*ne)),le.spot1=new go.Spot(.2,.2),le.spot2=new go.Spot(.8,.65),le}),go.Shape.setFigureParameter("Card",0,new St("CornerCutoutSize",.2,.1,.9)),go.Shape.defineFigureGenerator("Card",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=.2);var oe=new go.Geometry,de=new go.PathFigure(te,0,!0);return oe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,te,ne)),de.add(new go.PathSegment(go.PathSegment.Line,0,ne)),de.add(new go.PathSegment(go.PathSegment.Line,0,le*ne)),de.add(new go.PathSegment(go.PathSegment.Line,le*te,0).close()),oe.spot1=new go.Spot(0,le),oe.spot2=go.Spot.BottomRight,oe}),go.Shape.defineFigureGenerator("Collate",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(.5*te,.5*ne,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,0,0)),oe.add(new go.PathSegment(go.PathSegment.Line,te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,.5*ne));var de=new go.PathFigure(.5*te,.5*ne,!0);return le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,te,ne)),de.add(new go.PathSegment(go.PathSegment.Line,0,ne)),de.add(new go.PathSegment(go.PathSegment.Line,.5*te,.5*ne)),le.spot1=new go.Spot(.25,0),le.spot2=new go.Spot(.75,.25),le}),go.Shape.defineFigureGenerator("CreateRequest",function(ce,te,ne){var le=new go.Geometry,oe=ce?ce.parameter1:NaN;isNaN(oe)&&(oe=.1);var de=new go.PathFigure(0,0,!0);le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,te,0)),de.add(new go.PathSegment(go.PathSegment.Line,te,ne)),de.add(new go.PathSegment(go.PathSegment.Line,0,ne).close());var he=new go.PathFigure(0,oe*ne,!1);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te,oe*ne)),he.add(new go.PathSegment(go.PathSegment.Move,0,(1-oe)*ne)),he.add(new go.PathSegment(go.PathSegment.Line,te,(1-oe)*ne)),le}),go.Shape.defineFigureGenerator("Database",function(ce,te,ne){var le=new go.Geometry,oe=ge*.5,de=ge*.1,he=new go.PathFigure(te,.1*ne,!0);le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te,.9*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,ne,te,(.9+de)*ne,(.5+oe)*te,ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,.9*ne,(.5-oe)*te,ne,0,(.9+de)*ne)),he.add(new go.PathSegment(go.PathSegment.Line,0,.1*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,0,0,(.1-de)*ne,(.5-oe)*te,0)),he.add(new go.PathSegment(go.PathSegment.Bezier,te,.1*ne,(.5+oe)*te,0,te,(.1-de)*ne));var ie=new go.PathFigure(te,.1*ne,!1);return le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,.2*ne,te,(.1+de)*ne,(.5+oe)*te,.2*ne)),ie.add(new go.PathSegment(go.PathSegment.Bezier,0,.1*ne,(.5-oe)*te,.2*ne,0,(.1+de)*ne)),ie.add(new go.PathSegment(go.PathSegment.Move,te,.2*ne)),ie.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,.3*ne,te,(.2+de)*ne,(.5+oe)*te,.3*ne)),ie.add(new go.PathSegment(go.PathSegment.Bezier,0,.2*ne,(.5-oe)*te,.3*ne,0,(.2+de)*ne)),ie.add(new go.PathSegment(go.PathSegment.Move,te,.3*ne)),ie.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,.4*ne,te,(.3+de)*ne,(.5+oe)*te,.4*ne)),ie.add(new go.PathSegment(go.PathSegment.Bezier,0,.3*ne,(.5-oe)*te,.4*ne,0,(.3+de)*ne)),le.spot1=new go.Spot(0,.4),le.spot2=new go.Spot(1,.9),le}),go.Shape.defineFigureGenerator("DataStorage",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,0,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,.75*te,0)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.75*te,ne,te,0,te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,0,0,.25*te,.9*ne,.25*te,.1*ne).close()),le.spot1=new go.Spot(.226,0),le.spot2=new go.Spot(.81,1),le}),go.Shape.defineFigureGenerator("DiskStorage",function(ce,te,ne){var le=new go.Geometry,oe=ge*.5,de=ge*.1,he=new go.PathFigure(te,.1*ne,!0);le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te,.9*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,ne,te,(.9+de)*ne,(.5+oe)*te,ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,.9*ne,(.5-oe)*te,ne,0,(.9+de)*ne)),he.add(new go.PathSegment(go.PathSegment.Line,0,.1*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,0,0,(.1-de)*ne,(.5-oe)*te,0)),he.add(new go.PathSegment(go.PathSegment.Bezier,te,.1*ne,(.5+oe)*te,0,te,(.1-de)*ne));var ie=new go.PathFigure(te,.1*ne,!1);return le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,.2*ne,te,(.1+de)*ne,(.5+oe)*te,.2*ne)),ie.add(new go.PathSegment(go.PathSegment.Bezier,0,.1*ne,(.5-oe)*te,.2*ne,0,(.1+de)*ne)),ie.add(new go.PathSegment(go.PathSegment.Move,te,.2*ne)),ie.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,.3*ne,te,(.2+de)*ne,(.5+oe)*te,.3*ne)),ie.add(new go.PathSegment(go.PathSegment.Bezier,0,.2*ne,(.5-oe)*te,.3*ne,0,(.2+de)*ne)),le.spot1=new go.Spot(0,.3),le.spot2=new go.Spot(1,.9),le}),go.Shape.defineFigureGenerator("Display",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(.25*te,0,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,.75*te,0)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.75*te,ne,te,0,te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.25*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,.5*ne).close()),le.spot1=new go.Spot(.25,0),le.spot2=new go.Spot(.75,1),le}),go.Shape.defineFigureGenerator("DividedEvent",function(ce,te,ne){var le=new go.Geometry,oe=ce?ce.parameter1:NaN;isNaN(oe)?oe=.2:oe<.15&&(oe=.15);var de=ge*.2,he=new go.PathFigure(0,.2*ne,!0);le.add(he),he.add(new go.PathSegment(go.PathSegment.Bezier,.2*te,0,0,(.2-de)*ne,(.2-de)*te,0)),he.add(new go.PathSegment(go.PathSegment.Line,.8*te,0)),he.add(new go.PathSegment(go.PathSegment.Bezier,te,.2*ne,(.8+de)*te,0,te,(.2-de)*ne)),he.add(new go.PathSegment(go.PathSegment.Line,te,.8*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,.8*te,ne,te,(.8+de)*ne,(.8+de)*te,ne)),he.add(new go.PathSegment(go.PathSegment.Line,.2*te,ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,.8*ne,(.2-de)*te,ne,0,(.8+de)*ne)),he.add(new go.PathSegment(go.PathSegment.Line,0,.2*ne));var ie=new go.PathFigure(0,oe*ne,!1);return le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,te,oe*ne)),le}),go.Shape.defineFigureGenerator("DividedProcess",function(ce,te,ne){var le=new go.Geometry,oe=ce?ce.parameter1:NaN;(isNaN(oe)||oe<.1)&&(oe=.1);var de=new go.PathFigure(0,0,!0);le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,te,0)),de.add(new go.PathSegment(go.PathSegment.Line,te,ne)),de.add(new go.PathSegment(go.PathSegment.Line,0,ne).close());var he=new go.PathFigure(0,oe*ne,!1);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te,oe*ne)),le}),go.Shape.defineFigureGenerator("Document",function(ce,te,ne){var le=new go.Geometry;ne=ne/.8;var oe=new go.PathFigure(0,.7*ne,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,0,0)),oe.add(new go.PathSegment(go.PathSegment.Line,te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.7*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,0,.7*ne,.5*te,.4*ne,.5*te,ne).close()),le.spot1=go.Spot.TopLeft,le.spot2=new go.Spot(1,.6),le}),go.Shape.defineFigureGenerator("ExternalOrganization",function(ce,te,ne){var le=new go.Geometry,oe=ce?ce.parameter1:NaN;(isNaN(oe)||oe<.2)&&(oe=.2);var de=new go.PathFigure(0,0,!0);le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,te,0)),de.add(new go.PathSegment(go.PathSegment.Line,te,ne)),de.add(new go.PathSegment(go.PathSegment.Line,0,ne).close());var he=new go.PathFigure(oe*te,0,!1);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,0,oe*ne)),he.add(new go.PathSegment(go.PathSegment.Move,te,oe*ne)),he.add(new go.PathSegment(go.PathSegment.Line,(1-oe)*te,0)),he.add(new go.PathSegment(go.PathSegment.Move,0,(1-oe)*ne)),he.add(new go.PathSegment(go.PathSegment.Line,oe*te,ne)),he.add(new go.PathSegment(go.PathSegment.Move,(1-oe)*te,ne)),he.add(new go.PathSegment(go.PathSegment.Line,te,(1-oe)*ne)),le}),go.Shape.defineFigureGenerator("ExternalProcess",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(.5*te,0,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,.5*ne).close());var de=new go.PathFigure(.1*te,.4*ne,!1);return le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.1*te,.6*ne)),de.add(new go.PathSegment(go.PathSegment.Move,.9*te,.6*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.9*te,.4*ne)),de.add(new go.PathSegment(go.PathSegment.Move,.6*te,.1*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.4*te,.1*ne)),de.add(new go.PathSegment(go.PathSegment.Move,.4*te,.9*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.6*te,.9*ne)),le.spot1=new go.Spot(.25,.25),le.spot2=new go.Spot(.75,.75),le}),go.Shape.defineFigureGenerator("File",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,0,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,.75*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.25*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne).close());var de=new go.PathFigure(.75*te,0,!1);return le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.75*te,.25*ne)),de.add(new go.PathSegment(go.PathSegment.Line,te,.25*ne)),le.spot1=new go.Spot(0,.25),le.spot2=go.Spot.BottomRight,le}),go.Shape.defineFigureGenerator("Interrupt",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(te,.5*ne,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,0)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne));var de=new go.PathFigure(te,.5*ne,!1);le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,te,ne));var he=new go.PathFigure(te,.5*ne,!1);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te,0)),le.spot1=new go.Spot(0,.25),le.spot2=new go.Spot(.5,.75),le}),go.Shape.defineFigureGenerator("InternalStorage",function(ce,te,ne){var le=new go.Geometry,oe=ce?ce.parameter1:NaN,de=ce?ce.parameter2:NaN;isNaN(oe)&&(oe=.1),isNaN(de)&&(de=.1);var he=new go.PathFigure(0,0,!0);le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te,0)),he.add(new go.PathSegment(go.PathSegment.Line,te,ne)),he.add(new go.PathSegment(go.PathSegment.Line,0,ne).close());var ie=new go.PathFigure(oe*te,0,!1);return le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,oe*te,ne)),ie.add(new go.PathSegment(go.PathSegment.Move,0,de*ne)),ie.add(new go.PathSegment(go.PathSegment.Line,te,de*ne)),le}),go.Shape.defineFigureGenerator("Junction",function(ce,te,ne){var le=new go.Geometry,oe=1/Math.SQRT2,de=(1-1/Math.SQRT2)/2,he=ge*.5,ie=.5,ue=new go.PathFigure(te,ie*ne,!0);le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Bezier,ie*te,ne,te,(ie+he)*ne,(ie+he)*te,ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,0,ie*ne,(ie-he)*te,ne,0,(ie+he)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,ie*te,0,0,(ie-he)*ne,(ie-he)*te,0)),ue.add(new go.PathSegment(go.PathSegment.Bezier,te,ie*ne,(ie+he)*te,0,te,(ie-he)*ne));var ve=new go.PathFigure((de+oe)*te,(de+oe)*ne,!1);return le.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,de*te,de*ne)),ve.add(new go.PathSegment(go.PathSegment.Move,de*te,(de+oe)*ne)),ve.add(new go.PathSegment(go.PathSegment.Line,(de+oe)*te,de*ne)),le}),go.Shape.defineFigureGenerator("LinedDocument",function(ce,te,ne){var le=new go.Geometry;ne=ne/.8;var oe=new go.PathFigure(0,.7*ne,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,0,0)),oe.add(new go.PathSegment(go.PathSegment.Line,te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.7*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,0,.7*ne,.5*te,.4*ne,.5*te,ne).close());var de=new go.PathFigure(.1*te,0,!1);return le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.1*te,.75*ne)),le.spot1=new go.Spot(.1,0),le.spot2=new go.Spot(1,.6),le}),go.Shape.defineFigureGenerator("LoopLimit",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,ne,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,0,.25*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.25*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,.75*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.25*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,ne).close()),le.spot1=new go.Spot(0,.25),le.spot2=go.Spot.BottomRight,le}),go.Shape.defineFigureGenerator("MagneticTape",function(ce,te,ne){var le=new go.Geometry,oe=ge*.5,de=.5,he=new go.PathFigure(.5*te,ne,!0);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Bezier,0,de*ne,(de-oe)*te,ne,0,(de+oe)*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,de*te,0,0,(de-oe)*ne,(de-oe)*te,0)),he.add(new go.PathSegment(go.PathSegment.Bezier,te,de*ne,(de+oe)*te,0,te,(de-oe)*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,(de+.1)*te,.9*ne,te,(de+oe)*ne,(de+oe)*te,.9*ne)),he.add(new go.PathSegment(go.PathSegment.Line,te,.9*ne)),he.add(new go.PathSegment(go.PathSegment.Line,te,ne)),he.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)),le.spot1=new go.Spot(.15,.15),le.spot2=new go.Spot(.85,.8),le}),go.Shape.defineFigureGenerator("ManualInput",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(te,0,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,.25*ne).close()),le.spot1=new go.Spot(0,.25),le.spot2=go.Spot.BottomRight,le}),go.Shape.defineFigureGenerator("MessageFromUser",function(ce,te,ne){var le=new go.Geometry,oe=ce?ce.parameter1:NaN;isNaN(oe)&&(oe=.7);var de=new go.PathFigure(0,0,!0);return le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,te,0)),de.add(new go.PathSegment(go.PathSegment.Line,oe*te,.5*ne)),de.add(new go.PathSegment(go.PathSegment.Line,te,ne)),de.add(new go.PathSegment(go.PathSegment.Line,0,ne).close()),le.spot1=go.Spot.TopLeft,le}),go.Shape.defineFigureGenerator("MicroformProcessing",function(ce,te,ne){var le=new go.Geometry,oe=ce?ce.parameter1:NaN;isNaN(oe)&&(oe=.25);var de=new go.PathFigure(0,0,!0);return le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.5*te,oe*ne)),de.add(new go.PathSegment(go.PathSegment.Line,te,0)),de.add(new go.PathSegment(go.PathSegment.Line,te,ne)),de.add(new go.PathSegment(go.PathSegment.Line,.5*te,(1-oe)*ne)),de.add(new go.PathSegment(go.PathSegment.Line,0,ne).close()),le}),go.Shape.defineFigureGenerator("MicroformRecording",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,0,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,.75*te,.25*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.15*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.85*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.75*te,.75*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne).close()),le.spot1=new go.Spot(0,.25),le.spot2=new go.Spot(1,.75),le}),go.Shape.defineFigureGenerator("MultiDocument",function(ce,te,ne){var le=new go.Geometry;ne=ne/.8;var oe=new go.PathFigure(te,0,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.9*te,.44*ne,.96*te,.47*ne,.93*te,.45*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.9*te,.6*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.8*te,.54*ne,.86*te,.57*ne,.83*te,.55*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.8*te,.7*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,0,.7*ne,.4*te,.4*ne,.4*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,.2*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.1*te,.2*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.1*te,.1*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.2*te,.1*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.2*te,0).close());var de=new go.PathFigure(.1*te,.2*ne,!1);return le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.8*te,.2*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.8*te,.54*ne)),de.add(new go.PathSegment(go.PathSegment.Move,.2*te,.1*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.9*te,.1*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.9*te,.44*ne)),le.spot1=new go.Spot(0,.25),le.spot2=new go.Spot(.8,.77),le}),go.Shape.defineFigureGenerator("MultiProcess",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(.1*te,.1*ne,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,.2*te,.1*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.2*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.8*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.9*te,.8*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.9*te,.9*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.8*te,.9*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.8*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,.2*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.1*te,.2*ne).close());var de=new go.PathFigure(.2*te,.1*ne,!1);return le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.9*te,.1*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.9*te,.8*ne)),de.add(new go.PathSegment(go.PathSegment.Move,.1*te,.2*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.8*te,.2*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.8*te,.9*ne)),le.spot1=new go.Spot(0,.2),le.spot2=new go.Spot(.8,1),le}),go.Shape.defineFigureGenerator("OfflineStorage",function(ce,te,ne){var le=new go.Geometry,oe=ce?ce.parameter1:NaN;isNaN(oe)&&(oe=.1);var de=1-oe,he=new go.PathFigure(0,0,!0);le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te,0)),he.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne).close());var ie=new go.PathFigure(.5*oe*te,oe*ne,!1);return le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,(1-.5*oe)*te,oe*ne)),le}),go.Shape.defineFigureGenerator("OffPageConnector",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,0,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,.75*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.75*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne).close()),le.spot1=go.Spot.TopLeft,le.spot2=new go.Spot(.75,1),le}),go.Shape.defineFigureGenerator("Or",function(ce,te,ne){var le=new go.Geometry,oe=ge*.5,de=.5,he=new go.PathFigure(te,de*ne,!0);le.add(he),he.add(new go.PathSegment(go.PathSegment.Bezier,de*te,ne,te,(de+oe)*ne,(de+oe)*te,ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,de*ne,(de-oe)*te,ne,0,(de+oe)*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,de*te,0,0,(de-oe)*ne,(de-oe)*te,0)),he.add(new go.PathSegment(go.PathSegment.Bezier,te,de*ne,(de+oe)*te,0,te,(de-oe)*ne));var ie=new go.PathFigure(te,.5*ne,!1);return le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,0,.5*ne)),ie.add(new go.PathSegment(go.PathSegment.Move,.5*te,ne)),ie.add(new go.PathSegment(go.PathSegment.Line,.5*te,0)),le}),go.Shape.defineFigureGenerator("PaperTape",function(ce,te,ne){var le=new go.Geometry;ne=ne/.8;var oe=new go.PathFigure(0,.7*ne,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,0,.3*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,te,.3*ne,.5*te,.6*ne,.5*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.7*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,0,.7*ne,.5*te,.4*ne,.5*te,ne).close()),le.spot1=new go.Spot(0,.49),le.spot2=new go.Spot(1,.75),le}),go.Shape.defineFigureGenerator("PrimitiveFromCall",function(ce,te,ne){var le=new go.Geometry,oe=ce?ce.parameter1:NaN,de=ce?ce.parameter2:NaN;isNaN(oe)&&(oe=.1),isNaN(de)&&(de=.3);var he=new go.PathFigure(0,0,!0);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te,0)),he.add(new go.PathSegment(go.PathSegment.Line,(1-de)*te,.5*ne)),he.add(new go.PathSegment(go.PathSegment.Line,te,ne)),he.add(new go.PathSegment(go.PathSegment.Line,0,ne).close()),le}),go.Shape.defineFigureGenerator("PrimitiveToCall",function(ce,te,ne){var le=new go.Geometry,oe=ce?ce.parameter1:NaN,de=ce?ce.parameter2:NaN;isNaN(oe)&&(oe=.1),isNaN(de)&&(de=.3);var he=new go.PathFigure(0,0,!0);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,(1-de)*te,0)),he.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),he.add(new go.PathSegment(go.PathSegment.Line,(1-de)*te,ne)),he.add(new go.PathSegment(go.PathSegment.Line,0,ne).close()),le}),go.Shape.defineFigureGenerator("Procedure",function(ce,te,ne){var le=new go.Geometry,oe=ce?ce.parameter1:NaN;isNaN(oe)&&(oe=.1);var de=new go.PathFigure(0,0,!0);le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,te,0)),de.add(new go.PathSegment(go.PathSegment.Line,te,ne)),de.add(new go.PathSegment(go.PathSegment.Line,0,ne).close());var he=new go.PathFigure((1-oe)*te,0,!1);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,(1-oe)*te,ne)),he.add(new go.PathSegment(go.PathSegment.Move,oe*te,0)),he.add(new go.PathSegment(go.PathSegment.Line,oe*te,ne)),le}),go.Shape.defineFigureGenerator("Process",function(ce,te,ne){var le=new go.Geometry,oe=ce?ce.parameter1:NaN;isNaN(oe)&&(oe=.1);var de=new go.PathFigure(0,0,!0);le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,te,0)),de.add(new go.PathSegment(go.PathSegment.Line,te,ne)),de.add(new go.PathSegment(go.PathSegment.Line,0,ne).close());var he=new go.PathFigure(oe*te,0,!1);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,oe*te,ne)),le.spot2=go.Spot.BottomRight,le}),go.Shape.defineFigureGenerator("Sort",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(.5*te,0,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,.5*ne).close());var de=new go.PathFigure(0,.5*ne,!1);return le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),le.spot1=new go.Spot(.25,.25),le.spot2=new go.Spot(.75,.5),le}),go.Shape.defineFigureGenerator("Start",function(ce,te,ne){var le=new go.Geometry,oe=ce?ce.parameter1:NaN;isNaN(oe)&&(oe=.25);var de=new go.PathFigure(oe*te,0,!0);le.add(de),de.add(new go.PathSegment(go.PathSegment.Arc,270,180,.75*te,.5*ne,.25*te,.5*ne)),de.add(new go.PathSegment(go.PathSegment.Arc,90,180,.25*te,.5*ne,.25*te,.5*ne));var he=new go.PathFigure(oe*te,0,!1);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,oe*te,ne)),he.add(new go.PathSegment(go.PathSegment.Move,(1-oe)*te,0)),he.add(new go.PathSegment(go.PathSegment.Line,(1-oe)*te,ne)),le.spot1=new go.Spot(oe,0),le.spot2=new go.Spot(1-oe,1),le}),go.Shape.defineFigureGenerator("Terminator",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(.25*te,0,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Arc,270,180,.75*te,.5*ne,.25*te,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Arc,90,180,.25*te,.5*ne,.25*te,.5*ne)),le.spot1=new go.Spot(.23,0),le.spot2=new go.Spot(.77,1),le}),go.Shape.defineFigureGenerator("TransmittalTape",function(ce,te,ne){var le=new go.Geometry,oe=ce?ce.parameter1:NaN;isNaN(oe)&&(oe=.1);var de=new go.PathFigure(0,0,!0);return le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,te,0)),de.add(new go.PathSegment(go.PathSegment.Line,te,ne)),de.add(new go.PathSegment(go.PathSegment.Line,.75*te,(1-oe)*ne)),de.add(new go.PathSegment(go.PathSegment.Line,0,(1-oe)*ne).close()),le.spot1=go.Spot.TopLeft,le}),go.Shape.defineFigureGenerator("AndGate",function(ce,te,ne){var le=new go.Geometry,oe=ge*.5,de=new go.PathFigure(0,0,!0);return le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.5*te,0)),de.add(new go.PathSegment(go.PathSegment.Bezier,te,.5*ne,(.5+oe)*te,0,te,(.5-oe)*ne)),de.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,ne,te,(.5+oe)*ne,(.5+oe)*te,ne)),de.add(new go.PathSegment(go.PathSegment.Line,0,ne).close()),le.spot1=go.Spot.TopLeft,le.spot2=new go.Spot(.55,1),le}),go.Shape.defineFigureGenerator("Buffer",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,0,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne).close()),le.spot1=new go.Spot(0,.25),le.spot2=new go.Spot(.5,.75),le}),go.Shape.defineFigureGenerator("Clock",function(ce,te,ne){var le=new go.Geometry,oe=ge*.5,de=.5,he=new go.PathFigure(te,de*ne,!0);le.add(he),he.add(new go.PathSegment(go.PathSegment.Bezier,de*te,ne,te,(de+oe)*ne,(de+oe)*te,ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,de*ne,(de-oe)*te,ne,0,(de+oe)*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,de*te,0,0,(de-oe)*ne,(de-oe)*te,0)),he.add(new go.PathSegment(go.PathSegment.Bezier,te,de*ne,(de+oe)*te,0,te,(de-oe)*ne));var ie=new go.PathFigure(te,de*ne,!1);le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,te,de*ne));var ue=new go.PathFigure(.8*te,.75*ne,!1);return le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Line,.8*te,.25*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.6*te,.25*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.6*te,.75*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.4*te,.75*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.4*te,.25*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.2*te,.25*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.2*te,.75*ne)),le}),go.Shape.defineFigureGenerator("Ground",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(.5*te,0,!1);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,.4*ne)),oe.add(new go.PathSegment(go.PathSegment.Move,.2*te,.6*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.8*te,.6*ne)),oe.add(new go.PathSegment(go.PathSegment.Move,.3*te,.8*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.7*te,.8*ne)),oe.add(new go.PathSegment(go.PathSegment.Move,.4*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.6*te,ne)),le}),go.Shape.defineFigureGenerator("Inverter",function(ce,te,ne){var le=new go.Geometry,oe=ge*.1,de=.1,he=.9,ie=.5,ue=new go.PathFigure(.8*te,.5*ne,!0);le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Line,0,ne)),ue.add(new go.PathSegment(go.PathSegment.Line,0,0)),ue.add(new go.PathSegment(go.PathSegment.Line,.8*te,.5*ne));var ve=new go.PathFigure((he+de)*te,ie*ne,!0);return le.add(ve),ve.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie+de)*ne,(he+de)*te,(ie+oe)*ne,(he+oe)*te,(ie+de)*ne)),ve.add(new go.PathSegment(go.PathSegment.Bezier,(he-de)*te,ie*ne,(he-oe)*te,(ie+de)*ne,(he-de)*te,(ie+oe)*ne)),ve.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie-de)*ne,(he-de)*te,(ie-oe)*ne,(he-oe)*te,(ie-de)*ne)),ve.add(new go.PathSegment(go.PathSegment.Bezier,(he+de)*te,ie*ne,(he+oe)*te,(ie-de)*ne,(he+de)*te,(ie-oe)*ne)),le.spot1=new go.Spot(0,.25),le.spot2=new go.Spot(.4,.75),le}),go.Shape.defineFigureGenerator("NandGate",function(ce,te,ne){var le=new go.Geometry,oe=ge*.5,de=ge*.4,he=ge*.1,ie=.1,ue=.9,ve=.5,Se=new go.PathFigure(.8*te,.5*ne,!0);le.add(Se),Se.add(new go.PathSegment(go.PathSegment.Bezier,.4*te,ne,.8*te,(.5+de)*ne,(.4+oe)*te,ne)),Se.add(new go.PathSegment(go.PathSegment.Line,0,ne)),Se.add(new go.PathSegment(go.PathSegment.Line,0,0)),Se.add(new go.PathSegment(go.PathSegment.Line,.4*te,0)),Se.add(new go.PathSegment(go.PathSegment.Bezier,.8*te,.5*ne,(.4+oe)*te,0,.8*te,(.5-de)*ne));var De=new go.PathFigure((ue+ie)*te,ve*ne,!0);return le.add(De),De.add(new go.PathSegment(go.PathSegment.Bezier,ue*te,(ve+ie)*ne,(ue+ie)*te,(ve+he)*ne,(ue+he)*te,(ve+ie)*ne)),De.add(new go.PathSegment(go.PathSegment.Bezier,(ue-ie)*te,ve*ne,(ue-he)*te,(ve+ie)*ne,(ue-ie)*te,(ve+he)*ne)),De.add(new go.PathSegment(go.PathSegment.Bezier,ue*te,(ve-ie)*ne,(ue-ie)*te,(ve-he)*ne,(ue-he)*te,(ve-ie)*ne)),De.add(new go.PathSegment(go.PathSegment.Bezier,(ue+ie)*te,ve*ne,(ue+he)*te,(ve-ie)*ne,(ue+ie)*te,(ve-he)*ne)),le.spot1=new go.Spot(0,.05),le.spot2=new go.Spot(.55,.95),le}),go.Shape.defineFigureGenerator("NorGate",function(ce,te,ne){var le=new go.Geometry,oe=.5,de=ge*oe,he=0,ie=.5,ue=new go.PathFigure(.8*te,.5*ne,!0);le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Bezier,0,ne,.7*te,(ie+de)*ne,(he+de)*te,(ie+oe)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,0,0,.25*te,.75*ne,.25*te,.25*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,.8*te,.5*ne,(he+de)*te,(ie-oe)*ne,.7*te,(ie-de)*ne)),oe=.1,de=ge*.1,he=.9,ie=.5;var ve=new go.PathFigure((he-oe)*te,ie*ne,!0);return le.add(ve),ve.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie-oe)*ne,(he-oe)*te,(ie-de)*ne,(he-de)*te,(ie-oe)*ne)),ve.add(new go.PathSegment(go.PathSegment.Bezier,(he+oe)*te,ie*ne,(he+de)*te,(ie-oe)*ne,(he+oe)*te,(ie-de)*ne)),ve.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie+oe)*ne,(he+oe)*te,(ie+de)*ne,(he+de)*te,(ie+oe)*ne)),ve.add(new go.PathSegment(go.PathSegment.Bezier,(he-oe)*te,ie*ne,(he-de)*te,(ie+oe)*ne,(he-oe)*te,(ie+de)*ne)),le.spot1=new go.Spot(.2,.25),le.spot2=new go.Spot(.6,.75),le}),go.Shape.defineFigureGenerator("OrGate",function(ce,te,ne){var le=new go.Geometry,oe=.5,de=ge*oe,he=0,ie=.5,ue=new go.PathFigure(0,0,!0);return le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Bezier,te,.5*ne,(he+de+de)*te,(ie-oe)*ne,.8*te,(ie-de)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,0,ne,.8*te,(ie+de)*ne,(he+de+de)*te,(ie+oe)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,0,0,.25*te,.75*ne,.25*te,.25*ne).close()),le.spot1=new go.Spot(.2,.25),le.spot2=new go.Spot(.75,.75),le}),go.Shape.defineFigureGenerator("XnorGate",function(ce,te,ne){var le=new go.Geometry,oe=.5,de=ge*oe,he=.2,ie=.5,ue=new go.PathFigure(.1*te,0,!1);le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Bezier,.1*te,ne,.35*te,.25*ne,.35*te,.75*ne));var ve=new go.PathFigure(.8*te,.5*ne,!0);le.add(ve),ve.add(new go.PathSegment(go.PathSegment.Bezier,.2*te,ne,.7*te,(ie+de)*ne,(he+de)*te,(ie+oe)*ne)),ve.add(new go.PathSegment(go.PathSegment.Bezier,.2*te,0,.45*te,.75*ne,.45*te,.25*ne)),ve.add(new go.PathSegment(go.PathSegment.Bezier,.8*te,.5*ne,(he+de)*te,(ie-oe)*ne,.7*te,(ie-de)*ne)),oe=.1,de=ge*.1,he=.9,ie=.5;var Se=new go.PathFigure((he-oe)*te,ie*ne,!0);return le.add(Se),Se.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie-oe)*ne,(he-oe)*te,(ie-de)*ne,(he-de)*te,(ie-oe)*ne)),Se.add(new go.PathSegment(go.PathSegment.Bezier,(he+oe)*te,ie*ne,(he+de)*te,(ie-oe)*ne,(he+oe)*te,(ie-de)*ne)),Se.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie+oe)*ne,(he+oe)*te,(ie+de)*ne,(he+de)*te,(ie+oe)*ne)),Se.add(new go.PathSegment(go.PathSegment.Bezier,(he-oe)*te,ie*ne,(he-de)*te,(ie+oe)*ne,(he-oe)*te,(ie+de)*ne)),le.spot1=new go.Spot(.4,.25),le.spot2=new go.Spot(.65,.75),le}),go.Shape.defineFigureGenerator("XorGate",function(ce,te,ne){var le=new go.Geometry,oe=.5,de=ge*oe,he=.2,ie=.5,ue=new go.PathFigure(.1*te,0,!1);le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Bezier,.1*te,ne,.35*te,.25*ne,.35*te,.75*ne));var ve=new go.PathFigure(.2*te,0,!0);return le.add(ve),ve.add(new go.PathSegment(go.PathSegment.Bezier,te,.5*ne,(he+de)*te,(ie-oe)*ne,.9*te,(ie-de)*ne)),ve.add(new go.PathSegment(go.PathSegment.Bezier,.2*te,ne,.9*te,(ie+de)*ne,(he+de)*te,(ie+oe)*ne)),ve.add(new go.PathSegment(go.PathSegment.Bezier,.2*te,0,.45*te,.75*ne,.45*te,.25*ne).close()),le.spot1=new go.Spot(.4,.25),le.spot2=new go.Spot(.8,.75),le}),go.Shape.defineFigureGenerator("Capacitor",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,0,!1);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne)),oe.add(new go.PathSegment(go.PathSegment.Move,te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),le}),go.Shape.defineFigureGenerator("Resistor",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,.5*ne,!1);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,.1*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,.2*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.3*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,.4*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,.6*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.7*te,.5*ne)),le}),go.Shape.defineFigureGenerator("Inductor",function(ce,te,ne){var le=new go.Geometry,oe=ge*.1,de=.1,he=.1,ie=.5,ue=new go.PathFigure((he-oe*.5)*te,ne,!1);return le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he+de)*te,0,(he-oe)*te,ne,(he-de)*te,0)),he=.3,ue.add(new go.PathSegment(go.PathSegment.Bezier,he*te,ne,(he+de)*te,0,(he+oe)*te,ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he+de)*te,0,(he-oe)*te,ne,(he-de)*te,0)),he=.5,ue.add(new go.PathSegment(go.PathSegment.Bezier,he*te,ne,(he+de)*te,0,(he+oe)*te,ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he+de)*te,0,(he-oe)*te,ne,(he-de)*te,0)),he=.7,ue.add(new go.PathSegment(go.PathSegment.Bezier,he*te,ne,(he+de)*te,0,(he+oe)*te,ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he+de)*te,0,(he-oe)*te,ne,(he-de)*te,0)),he=.9,ue.add(new go.PathSegment(go.PathSegment.Bezier,(he+oe*.5)*te,ne,(he+de)*te,0,(he+oe)*te,ne)),le}),go.Shape.defineFigureGenerator("ACvoltageSource",function(ce,te,ne){var le=new go.Geometry,oe=ge*.5,de=.5,he=.5,ie=.5,ue=new go.PathFigure((he-de)*te,ie*ne,!1);return le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie-de)*ne,(he-de)*te,(ie-oe)*ne,(he-oe)*te,(ie-de)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he+de)*te,ie*ne,(he+oe)*te,(ie-de)*ne,(he+de)*te,(ie-oe)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie+de)*ne,(he+de)*te,(ie+oe)*ne,(he+oe)*te,(ie+de)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he-de)*te,ie*ne,(he-oe)*te,(ie+de)*ne,(he-de)*te,(ie+oe)*ne)),ue.add(new go.PathSegment(go.PathSegment.Move,(he-de+.1)*te,ie*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he+de-.1)*te,ie*ne,he*te,(ie-de)*ne,he*te,(ie+de)*ne)),le}),go.Shape.defineFigureGenerator("DCvoltageSource",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,.75*ne,!1);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,0,.25*ne)),oe.add(new go.PathSegment(go.PathSegment.Move,te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),le}),go.Shape.defineFigureGenerator("Diode",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(te,0,!1);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,0)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),le.spot1=new go.Spot(0,.25),le.spot2=new go.Spot(.5,.75),le}),go.Shape.defineFigureGenerator("Wifi",function(ce,te,ne){var le=new go.Geometry,oe=te,de=ne;te=te*.38,ne=ne*.6;var he=ge*.8,ie=.8,ue=0,ve=.5,Se=(oe-te)/2,De=(de-ne)/2,Re=new go.PathFigure(ue*te+Se,(ve+ie)*ne+De,!0);le.add(Re),Re.add(new go.PathSegment(go.PathSegment.Bezier,(ue-ie)*te+Se,ve*ne+De,(ue-he)*te+Se,(ve+ie)*ne+De,(ue-ie)*te+Se,(ve+he)*ne+De)),Re.add(new go.PathSegment(go.PathSegment.Bezier,ue*te+Se,(ve-ie)*ne+De,(ue-ie)*te+Se,(ve-he)*ne+De,(ue-he)*te+Se,(ve-ie)*ne+De)),Re.add(new go.PathSegment(go.PathSegment.Bezier,(ue-ie+he*.5)*te+Se,ve*ne+De,ue*te+Se,(ve-ie)*ne+De,(ue-ie+he*.5)*te+Se,(ve-he)*ne+De)),Re.add(new go.PathSegment(go.PathSegment.Bezier,ue*te+Se,(ve+ie)*ne+De,(ue-ie+he*.5)*te+Se,(ve+he)*ne+De,ue*te+Se,(ve+ie)*ne+De).close()),he=ge*.4,ie=.4,ue=.2,ve=.5;var Ne=new go.PathFigure(ue*te+Se,(ve+ie)*ne+De,!0);le.add(Ne),Ne.add(new go.PathSegment(go.PathSegment.Bezier,(ue-ie)*te+Se,ve*ne+De,(ue-he)*te+Se,(ve+ie)*ne+De,(ue-ie)*te+Se,(ve+he)*ne+De)),Ne.add(new go.PathSegment(go.PathSegment.Bezier,ue*te+Se,(ve-ie)*ne+De,(ue-ie)*te+Se,(ve-he)*ne+De,(ue-he)*te+Se,(ve-ie)*ne+De)),Ne.add(new go.PathSegment(go.PathSegment.Bezier,(ue-ie+he*.5)*te+Se,ve*ne+De,ue*te+Se,(ve-ie)*ne+De,(ue-ie+he*.5)*te+Se,(ve-he)*ne+De)),Ne.add(new go.PathSegment(go.PathSegment.Bezier,ue*te+Se,(ve+ie)*ne+De,(ue-ie+he*.5)*te+Se,(ve+he)*ne+De,ue*te+Se,(ve+ie)*ne+De).close()),he=ge*.2,ie=.2,ue=.5,ve=.5;var ze=new go.PathFigure((ue-ie)*te+Se,ve*ne+De,!0);le.add(ze),ze.add(new go.PathSegment(go.PathSegment.Bezier,ue*te+Se,(ve-ie)*ne+De,(ue-ie)*te+Se,(ve-he)*ne+De,(ue-he)*te+Se,(ve-ie)*ne+De)),ze.add(new go.PathSegment(go.PathSegment.Bezier,(ue+ie)*te+Se,ve*ne+De,(ue+he)*te+Se,(ve-ie)*ne+De,(ue+ie)*te+Se,(ve-he)*ne+De)),ze.add(new go.PathSegment(go.PathSegment.Bezier,ue*te+Se,(ve+ie)*ne+De,(ue+ie)*te+Se,(ve+he)*ne+De,(ue+he)*te+Se,(ve+ie)*ne+De)),ze.add(new go.PathSegment(go.PathSegment.Bezier,(ue-ie)*te+Se,ve*ne+De,(ue-he)*te+Se,(ve+ie)*ne+De,(ue-ie)*te+Se,(ve+he)*ne+De)),he=ge*.4,ie=.4,ue=.8,ve=.5;var Ge=new go.PathFigure(ue*te+Se,(ve-ie)*ne+De,!0);le.add(Ge),Ge.add(new go.PathSegment(go.PathSegment.Bezier,(ue+ie)*te+Se,ve*ne+De,(ue+he)*te+Se,(ve-ie)*ne+De,(ue+ie)*te+Se,(ve-he)*ne+De)),Ge.add(new go.PathSegment(go.PathSegment.Bezier,ue*te+Se,(ve+ie)*ne+De,(ue+ie)*te+Se,(ve+he)*ne+De,(ue+he)*te+Se,(ve+ie)*ne+De)),Ge.add(new go.PathSegment(go.PathSegment.Bezier,(ue+ie-he*.5)*te+Se,ve*ne+De,ue*te+Se,(ve+ie)*ne+De,(ue+ie-he*.5)*te+Se,(ve+he)*ne+De)),Ge.add(new go.PathSegment(go.PathSegment.Bezier,ue*te+Se,(ve-ie)*ne+De,(ue+ie-he*.5)*te+Se,(ve-he)*ne+De,ue*te+Se,(ve-ie)*ne+De).close()),he=ge*.8,ie=.8,ue=1,ve=.5;var Xe=new go.PathFigure(ue*te+Se,(ve-ie)*ne+De,!0);return le.add(Xe),Xe.add(new go.PathSegment(go.PathSegment.Bezier,(ue+ie)*te+Se,ve*ne+De,(ue+he)*te+Se,(ve-ie)*ne+De,(ue+ie)*te+Se,(ve-he)*ne+De)),Xe.add(new go.PathSegment(go.PathSegment.Bezier,ue*te+Se,(ve+ie)*ne+De,(ue+ie)*te+Se,(ve+he)*ne+De,(ue+he)*te+Se,(ve+ie)*ne+De)),Xe.add(new go.PathSegment(go.PathSegment.Bezier,(ue+ie-he*.5)*te+Se,ve*ne+De,ue*te+Se,(ve+ie)*ne+De,(ue+ie-he*.5)*te+Se,(ve+he)*ne+De)),Xe.add(new go.PathSegment(go.PathSegment.Bezier,ue*te+Se,(ve-ie)*ne+De,(ue+ie-he*.5)*te+Se,(ve-he)*ne+De,ue*te+Se,(ve-ie)*ne+De).close()),le}),go.Shape.defineFigureGenerator("Email",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,0,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,0).close());var de=new go.PathFigure(0,0,!1);return le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.5*te,.6*ne)),de.add(new go.PathSegment(go.PathSegment.Line,te,0)),de.add(new go.PathSegment(go.PathSegment.Move,0,ne)),de.add(new go.PathSegment(go.PathSegment.Line,.45*te,.54*ne)),de.add(new go.PathSegment(go.PathSegment.Move,te,ne)),de.add(new go.PathSegment(go.PathSegment.Line,.55*te,.54*ne)),le}),go.Shape.defineFigureGenerator("Ethernet",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(.35*te,0,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,.65*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,.65*te,.4*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.35*te,.4*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.35*te,0).close());var de=new go.PathFigure(.1*te,ne,!0,!0);le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.4*te,ne)),de.add(new go.PathSegment(go.PathSegment.Line,.4*te,.6*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.1*te,.6*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.1*te,ne).close());var he=new go.PathFigure(.6*te,ne,!0,!0);le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,.9*te,ne)),he.add(new go.PathSegment(go.PathSegment.Line,.9*te,.6*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.6*te,.6*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.6*te,ne).close());var ie=new go.PathFigure(0,.5*ne,!1);return le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),ie.add(new go.PathSegment(go.PathSegment.Move,.5*te,.5*ne)),ie.add(new go.PathSegment(go.PathSegment.Line,.5*te,.4*ne)),ie.add(new go.PathSegment(go.PathSegment.Move,.75*te,.5*ne)),ie.add(new go.PathSegment(go.PathSegment.Line,.75*te,.6*ne)),ie.add(new go.PathSegment(go.PathSegment.Move,.25*te,.5*ne)),ie.add(new go.PathSegment(go.PathSegment.Line,.25*te,.6*ne)),le}),go.Shape.defineFigureGenerator("Power",function(ce,te,ne){var le=new go.Geometry,oe=ge*.4,de=.4,he=.5,ie=.5,ue=Be(),ve=Be(),Se=Be(),De=Be();Ce(he,ie-de,he+oe,ie-de,he+de,ie-oe,he+de,ie,.5,ue,ue,ve,Se,De);var Re=Ie(ve.x,ve.y),Ne=new go.PathFigure(ve.x*te,ve.y*ne,!0);le.add(Ne),Ne.add(new go.PathSegment(go.PathSegment.Bezier,(he+de)*te,ie*ne,Se.x*te,Se.y*ne,De.x*te,De.y*ne)),Ne.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie+de)*ne,(he+de)*te,(ie+oe)*ne,(he+oe)*te,(ie+de)*ne)),Ne.add(new go.PathSegment(go.PathSegment.Bezier,(he-de)*te,ie*ne,(he-oe)*te,(ie+de)*ne,(he-de)*te,(ie+oe)*ne)),Ce(he-de,ie,he-de,ie-oe,he-oe,ie-de,he,ie-de,.5,Se,De,ve,ue,ue),Ne.add(new go.PathSegment(go.PathSegment.Bezier,ve.x*te,ve.y*ne,Se.x*te,Se.y*ne,De.x*te,De.y*ne)),oe=ge*.3,de=.3,Ce(he-de,ie,he-de,ie-oe,he-oe,ie-de,he,ie-de,.5,Se,De,ve,ue,ue),Ne.add(new go.PathSegment(go.PathSegment.Line,ve.x*te,ve.y*ne)),Ne.add(new go.PathSegment(go.PathSegment.Bezier,(he-de)*te,ie*ne,De.x*te,De.y*ne,Se.x*te,Se.y*ne)),Ne.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie+de)*ne,(he-de)*te,(ie+oe)*ne,(he-oe)*te,(ie+de)*ne)),Ne.add(new go.PathSegment(go.PathSegment.Bezier,(he+de)*te,ie*ne,(he+oe)*te,(ie+de)*ne,(he+de)*te,(ie+oe)*ne)),Ce(he,ie-de,he+oe,ie-de,he+de,ie-oe,he+de,ie,.5,ue,ue,ve,Se,De),Ne.add(new go.PathSegment(go.PathSegment.Bezier,ve.x*te,ve.y*ne,De.x*te,De.y*ne,Se.x*te,Se.y*ne).close());var Ne=new go.PathFigure(.45*te,0,!0);return le.add(Ne),Ne.add(new go.PathSegment(go.PathSegment.Line,.45*te,.5*ne)),Ne.add(new go.PathSegment(go.PathSegment.Line,.55*te,.5*ne)),Ne.add(new go.PathSegment(go.PathSegment.Line,.55*te,0).close()),He(ue),He(ve),He(Se),He(De),He(Re),le.spot1=new go.Spot(.25,.45),le.spot2=new go.Spot(.75,.8),le}),go.Shape.defineFigureGenerator("Fallout",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,ne/2,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Arc,180,360,te/2,ne/2,te/2,ne/2));function de(he,ie,ue){he.add(new go.PathSegment(go.PathSegment.Move,(.3+ie)*te,(.8+ue)*ne)),he.add(new go.PathSegment(go.PathSegment.Line,(.5+ie)*te,(.5+ue)*ne)),he.add(new go.PathSegment(go.PathSegment.Line,(.1+ie)*te,(.5+ue)*ne)),he.add(new go.PathSegment(go.PathSegment.Line,(.3+ie)*te,(.8+ue)*ne).close())}return de(oe,0,0),de(oe,.4,0),de(oe,.2,-.3),le}),go.Shape.defineFigureGenerator("IrritationHazard",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(.2*te,0,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,.3*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.8*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.2*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.7*te,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.8*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.8*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,.7*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.2*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,.8*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.3*te,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,.2*ne).close()),le.spot1=new go.Spot(.3,.3),le.spot2=new go.Spot(.7,.7),le}),go.Shape.defineFigureGenerator("ElectricalHazard",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(.37*te,0,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,.11*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.77*te,.04*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.33*te,.49*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.37*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.63*te,.86*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.77*te,.91*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.34*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.34*te,.78*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.44*te,.8*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.65*te,.56*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,.68*ne).close()),le}),go.Shape.defineFigureGenerator("FireHazard",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(.1*te,ne,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Bezier,.29*te,0,-.25*te,.63*ne,.45*te,.44*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.51*te,.42*ne,.48*te,.17*ne,.54*te,.35*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.59*te,.18*ne,.59*te,.29*ne,.58*te,.28*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.75*te,.6*ne,.8*te,.34*ne,.88*te,.43*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.88*te,.31*ne,.87*te,.48*ne,.88*te,.43*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.9*te,ne,1.17*te,.76*ne,.82*te,.8*ne).close()),le.spot1=new go.Spot(.07,.445),le.spot2=new go.Spot(.884,.958),le}),go.Shape.defineFigureGenerator("BpmnActivityLoop",function(ce,te,ne){var le=new go.Geometry,oe=.5,de=0,he=0,ie=oe*ge,ue=.4*Math.SQRT2/2+.5,ve=.5-.5*Math.SQRT2/2,Se=1,De=.5,Re=.5,Ne=0,ze=new go.PathFigure(ue*te,(1-ve)*ne,!1);return le.add(ze),ze.add(new go.PathSegment(go.PathSegment.Bezier,Se*te,De*ne,Se*te,.7*ne,Se*te,De*ne)),ze.add(new go.PathSegment(go.PathSegment.Bezier,(Re+de)*te,(Ne+de)*ne,(.5+oe+de)*te,(.5-ie+de)*ne,(.5+ie+de)*te,(.5-oe+de)*ne)),ze.add(new go.PathSegment(go.PathSegment.Bezier,(.5-oe+de)*te,(.5+he)*ne,(.5-ie+de)*te,(.5-oe+he)*ne,(.5-oe+de)*te,(.5-ie+he)*ne)),ze.add(new go.PathSegment(go.PathSegment.Bezier,(.35+de)*te,.9*ne,(.5-oe+de)*te,(.5+ie+he)*ne,(.5-ie+de)*te,.9*ne)),ze.add(new go.PathSegment(go.PathSegment.Move,(.25+de)*te,.8*ne)),ze.add(new go.PathSegment(go.PathSegment.Line,(.35+de)*te,.9*ne)),ze.add(new go.PathSegment(go.PathSegment.Line,(.2+de)*te,.95*ne)),le}),go.Shape.defineFigureGenerator("BpmnActivityParallel",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,0,!1);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne)),oe.add(new go.PathSegment(go.PathSegment.Move,.5*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Move,te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),le}),go.Shape.defineFigureGenerator("BpmnActivitySequential",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,0,!1);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,te,0)),oe.add(new go.PathSegment(go.PathSegment.Move,0,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Move,0,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),le}),go.Shape.defineFigureGenerator("BpmnActivityAdHoc",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,0,!1);le.add(oe);var de=new go.PathFigure(te,ne,!1);le.add(de);var he=new go.PathFigure(0,.5*ne,!1);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,.5*ne,.2*te,.35*ne,.3*te,.35*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,te,.5*ne,.7*te,.65*ne,.8*te,.65*ne)),le}),go.Shape.defineFigureGenerator("BpmnActivityCompensation",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,.5*ne,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne).close()),le}),go.Shape.defineFigureGenerator("BpmnTaskMessage",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,.2*ne,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,te,.2*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.8*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,.8*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,.8*ne).close());var oe=new go.PathFigure(0,.2*ne,!1);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.2*ne)),le}),go.Shape.defineFigureGenerator("BpmnTaskScript",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(.7*te,ne,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,.3*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.3*te,0,.6*te,.5*ne,0,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.7*te,0)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.7*te,ne,.4*te,.5*ne,te,.5*ne).close());var de=new go.PathFigure(.45*te,.73*ne,!1);return le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.7*te,.73*ne)),de.add(new go.PathSegment(go.PathSegment.Move,.38*te,.5*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.63*te,.5*ne)),de.add(new go.PathSegment(go.PathSegment.Move,.31*te,.27*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.56*te,.27*ne)),le}),go.Shape.defineFigureGenerator("BpmnTaskUser",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,0,!1);le.add(oe);var de=new go.PathFigure(.335*te,(1-.555)*ne,!0);le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.335*te,(1-.405)*ne)),de.add(new go.PathSegment(go.PathSegment.Line,(1-.335)*te,(1-.405)*ne)),de.add(new go.PathSegment(go.PathSegment.Line,(1-.335)*te,(1-.555)*ne)),de.add(new go.PathSegment(go.PathSegment.Bezier,te,.68*ne,(1-.12)*te,.46*ne,(1-.02)*te,.54*ne)),de.add(new go.PathSegment(go.PathSegment.Line,te,ne)),de.add(new go.PathSegment(go.PathSegment.Line,0,ne)),de.add(new go.PathSegment(go.PathSegment.Line,0,.68*ne)),de.add(new go.PathSegment(go.PathSegment.Bezier,.335*te,(1-.555)*ne,.02*te,.54*ne,.12*te,.46*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.365*te,(1-.595)*ne));var he=.5-.285,ie=.5,ue=he,ve=Math.PI/4,Se=4*(1-Math.cos(ve))/(3*Math.sin(ve)),De=Se*.5,Re=he,Ne=he,ze=Se*Re,Ge=Se*Ne;de.add(new go.PathSegment(go.PathSegment.Bezier,(ie-Re)*te,ue*ne,(ie-(ze+Re)/2)*te,(ue+(Ne+Ge)/2)*ne,(ie-Re)*te,(ue+Ge)*ne)),de.add(new go.PathSegment(go.PathSegment.Bezier,ie*te,(ue-Ne)*ne,(ie-Re)*te,(ue-Ge)*ne,(ie-ze)*te,(ue-Ne)*ne)),de.add(new go.PathSegment(go.PathSegment.Bezier,(ie+Re)*te,ue*ne,(ie+ze)*te,(ue-Ne)*ne,(ie+Re)*te,(ue-Ge)*ne)),de.add(new go.PathSegment(go.PathSegment.Bezier,(1-.365)*te,(1-.595)*ne,(ie+Re)*te,(ue+Ge)*ne,(ie+(ze+Re)/2)*te,(ue+(Ne+Ge)/2)*ne)),de.add(new go.PathSegment(go.PathSegment.Line,(1-.365)*te,(1-.595)*ne)),de.add(new go.PathSegment(go.PathSegment.Line,(1-.335)*te,(1-.555)*ne)),de.add(new go.PathSegment(go.PathSegment.Line,(1-.335)*te,(1-.405)*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.335*te,(1-.405)*ne));var Xe=new go.PathFigure(.2*te,ne,!1);le.add(Xe),Xe.add(new go.PathSegment(go.PathSegment.Line,.2*te,.8*ne));var Qe=new go.PathFigure(.8*te,ne,!1);return le.add(Qe),Qe.add(new go.PathSegment(go.PathSegment.Line,.8*te,.8*ne)),le}),go.Shape.defineFigureGenerator("BpmnEventConditional",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(.1*te,0,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,.9*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,.9*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.1*te,ne).close());var de=new go.PathFigure(.2*te,.2*ne,!1);return le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.8*te,.2*ne)),de.add(new go.PathSegment(go.PathSegment.Move,.2*te,.4*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.8*te,.4*ne)),de.add(new go.PathSegment(go.PathSegment.Move,.2*te,.6*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.8*te,.6*ne)),de.add(new go.PathSegment(go.PathSegment.Move,.2*te,.8*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.8*te,.8*ne)),le}),go.Shape.defineFigureGenerator("BpmnEventError",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,ne,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,.33*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,.66*te,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,.66*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.33*te,.5*ne).close()),le}),go.Shape.defineFigureGenerator("BpmnEventEscalation",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,0,!1);le.add(oe);var de=new go.PathFigure(te,ne,!1);le.add(de);var he=new go.PathFigure(.1*te,ne,!0);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,.5*te,0)),he.add(new go.PathSegment(go.PathSegment.Line,.9*te,ne)),he.add(new go.PathSegment(go.PathSegment.Line,.5*te,.5*ne).close()),le}),go.Shape.defineFigureGenerator("Caution",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(.05*te,ne,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Bezier,.1*te,.8*ne,0,ne,0,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.45*te,.1*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.55*te,.1*ne,.5*te,0,.5*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,.95*te,.9*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.9*te,ne,te,ne,te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.05*te,ne));var de=.05;return oe.add(new go.PathSegment(go.PathSegment.Move,(.5-de)*te,.875*ne)),oe.add(new go.PathSegment(go.PathSegment.Arc,180,-360,.5*te,.875*ne,de*te,de*ne)),oe.add(new go.PathSegment(go.PathSegment.Move,.5*te,.75*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,.325*ne,.575*te,.725*ne,.625*te,.375*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,.75*ne,.375*te,.375*ne,.425*te,.725*ne)),le}),go.Shape.defineFigureGenerator("Recycle",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(.45*te,.95*ne,!1);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,.2*te,.95*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.185*te,.85*ne,.17*te,.95*ne,.15*te,.9*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.235*te,.75*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.3*te,.625*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.35*te,.65*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.275*te,.45*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.05*te,.45*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.1*te,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.05*te,.575*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.1875*te,.95*ne,0,.675*ne,0,.7*ne)),oe.add(new go.PathSegment(go.PathSegment.Move,.45*te,.95*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.45*te,.775*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.22*te,.775*ne));var de=new go.PathFigure(.475*te,.2*ne,!1);le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.4*te,.4*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.225*te,.3*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.275*te,.175*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.325*te,.05*ne)),de.add(new go.PathSegment(go.PathSegment.Bezier,.4*te,.05*ne,.35*te,0,.375*te,0)),de.add(new go.PathSegment(go.PathSegment.Line,.575*te,.375*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.525*te,.4*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.75*te,.475*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.85*te,.315*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.8*te,.32*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.65*te,.05*ne)),de.add(new go.PathSegment(go.PathSegment.Bezier,.575*te,0,.65*te,.05*ne,.625*te,0)),de.add(new go.PathSegment(go.PathSegment.Line,.38*te,.0105*ne));var he=new go.PathFigure(.675*te,.575*ne,!1);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,.875*te,.525*ne)),he.add(new go.PathSegment(go.PathSegment.Line,te,.775*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,.85*te,.95*ne,te,.8*ne,te,.85*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.65*te,.95*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.65*te,ne)),he.add(new go.PathSegment(go.PathSegment.Line,.55*te,.85*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.65*te,.725*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.65*te,.775*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.7*te,.775*ne)),he.add(new go.PathSegment(go.PathSegment.Line,te,.775*ne)),he.add(new go.PathSegment(go.PathSegment.Move,.675*te,.575*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.775*te,.775*ne)),le}),go.Shape.defineFigureGenerator("BpmnEventTimer",function(ce,te,ne){var le=new go.Geometry,oe=.5,de=ge*.5,he=new go.PathFigure(te,oe*ne,!0);le.add(he),he.add(new go.PathSegment(go.PathSegment.Bezier,oe*te,ne,te,(oe+de)*ne,(oe+de)*te,ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,oe*ne,(oe-de)*te,ne,0,(oe+de)*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,oe*te,0,0,(oe-de)*ne,(oe-de)*te,0)),he.add(new go.PathSegment(go.PathSegment.Bezier,te,oe*ne,(oe+de)*te,0,te,(oe-de)*ne));var ie=new go.PathFigure(oe*te,0,!1);return le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,oe*te,.15*ne)),ie.add(new go.PathSegment(go.PathSegment.Move,oe*te,ne)),ie.add(new go.PathSegment(go.PathSegment.Line,oe*te,.85*ne)),ie.add(new go.PathSegment(go.PathSegment.Move,0,oe*ne)),ie.add(new go.PathSegment(go.PathSegment.Line,.15*te,oe*ne)),ie.add(new go.PathSegment(go.PathSegment.Move,te,oe*ne)),ie.add(new go.PathSegment(go.PathSegment.Line,.85*te,oe*ne)),ie.add(new go.PathSegment(go.PathSegment.Move,oe*te,oe*ne)),ie.add(new go.PathSegment(go.PathSegment.Line,.58*te,.1*ne)),ie.add(new go.PathSegment(go.PathSegment.Move,oe*te,oe*ne)),ie.add(new go.PathSegment(go.PathSegment.Line,.78*te,.54*ne)),le}),go.Shape.defineFigureGenerator("Package",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,.15*ne,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,te,.15*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne).close());var de=new go.PathFigure(0,.15*ne,!0);return le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,0,0)),de.add(new go.PathSegment(go.PathSegment.Line,.6*te,0)),de.add(new go.PathSegment(go.PathSegment.Line,.65*te,.15*ne).close()),le.spot1=new go.Spot(0,.1),le.spot2=new go.Spot(1,1),le}),go.Shape.defineFigureGenerator("Class",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,0,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,0).close());var de=new go.PathFigure(0,.2*ne,!1);le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,te,.2*ne).close());var he=new go.PathFigure(0,.5*ne,!1);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne).close()),le}),go.Shape.defineFigureGenerator("Component",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(te,ne,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,.15*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,.15*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,ne).close());var de=new go.PathFigure(0,.2*ne,!0);le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.45*te,.2*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.45*te,.4*ne)),de.add(new go.PathSegment(go.PathSegment.Line,0,.4*ne)),de.add(new go.PathSegment(go.PathSegment.Line,0,.2*ne).close());var he=new go.PathFigure(0,.6*ne,!0);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,.45*te,.6*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.45*te,.8*ne)),he.add(new go.PathSegment(go.PathSegment.Line,0,.8*ne)),he.add(new go.PathSegment(go.PathSegment.Line,0,.6*ne).close()),le}),go.Shape.defineFigureGenerator("Boat Shipment",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(.15*te,.6*ne,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,.15*te,.6*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,.6*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.15*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.85*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.6*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.85*te,.6*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,.15*te,.6*ne));var de=new go.PathFigure(.15*te,.6*ne,!1);return le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.85*te,.6*ne)),le}),go.Shape.defineFigureGenerator("Customer/Supplier",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(te,ne,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,.66*te,.33*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.66*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,.33*te,.33*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.33*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,0,.33*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,ne).close()),le}),go.Shape.defineFigureGenerator("Workcell",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,ne,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,0,0)),oe.add(new go.PathSegment(go.PathSegment.Line,te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.65*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.65*te,.4*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.35*te,.4*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.35*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne).close()),le}),go.Shape.defineFigureGenerator("Supermarket",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,0,!1);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.33*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,.33*ne)),oe.add(new go.PathSegment(go.PathSegment.Move,te,.33*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.66*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,.66*ne)),oe.add(new go.PathSegment(go.PathSegment.Move,te,.66*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne)),le}),go.Shape.defineFigureGenerator("TruckShipment",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,0,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,.6*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,.6*te,.8*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,.8*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,0).close());var de=new go.PathFigure(te,.8*ne,!0);le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,te,.4*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.6*te,.4*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.6*te,.8*ne)),de.add(new go.PathSegment(go.PathSegment.Line,te,.8*ne).close());var he=.1,ie=ge*.1,ue=.2,ve=.9,Se=new go.PathFigure((ue-he)*te,ve*ne,!0);le.add(Se),Se.add(new go.PathSegment(go.PathSegment.Bezier,ue*te,(ve-he)*ne,(ue-he)*te,(ve-ie)*ne,(ue-ie)*te,(ve-he)*ne)),Se.add(new go.PathSegment(go.PathSegment.Bezier,(ue+he)*te,ve*ne,(ue+ie)*te,(ve-he)*ne,(ue+he)*te,(ve-ie)*ne)),Se.add(new go.PathSegment(go.PathSegment.Bezier,ue*te,(ve+he)*ne,(ue+he)*te,(ve+ie)*ne,(ue+ie)*te,(ve+he)*ne)),Se.add(new go.PathSegment(go.PathSegment.Bezier,(ue-he)*te,ve*ne,(ue-ie)*te,(ve+he)*ne,(ue-he)*te,(ve+ie)*ne).close()),he=.1,ie=ge*.1,ue=.8,ve=.9;var De=new go.PathFigure((ue-he)*te,ve*ne,!0);return le.add(De),De.add(new go.PathSegment(go.PathSegment.Bezier,ue*te,(ve-he)*ne,(ue-he)*te,(ve-ie)*ne,(ue-ie)*te,(ve-he)*ne)),De.add(new go.PathSegment(go.PathSegment.Bezier,(ue+he)*te,ve*ne,(ue+ie)*te,(ve-he)*ne,(ue+he)*te,(ve-ie)*ne)),De.add(new go.PathSegment(go.PathSegment.Bezier,ue*te,(ve+he)*ne,(ue+he)*te,(ve+ie)*ne,(ue+ie)*te,(ve+he)*ne)),De.add(new go.PathSegment(go.PathSegment.Bezier,(ue-he)*te,ve*ne,(ue-ie)*te,(ve+he)*ne,(ue-he)*te,(ve+ie)*ne).close()),le}),go.Shape.defineFigureGenerator("KanbanPost",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(.2*te,0,!1);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,.2*te,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.8*te,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.8*te,0)),oe.add(new go.PathSegment(go.PathSegment.Move,.5*te,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.2*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Move,.5*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.8*te,ne)),le}),go.Shape.defineFigureGenerator("Forklift",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,0,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,0,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.4*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,0,0));var de=new go.PathFigure(0,.5*ne,!0);le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,0,.8*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.5*te,.8*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.5*te,.5*ne)),de.add(new go.PathSegment(go.PathSegment.Line,0,.5*ne));var he=new go.PathFigure(.5*te,.8*ne,!0);le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,.5*te,.1*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.55*te,.1*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.55*te,.8*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.5*te,.8*ne));var ie=new go.PathFigure(.5*te,.7*ne,!1);le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,te,.7*ne));var ue=.1,ve=ge*.1,Se=.1,De=.9,Re=new go.PathFigure((Se-ue)*te,De*ne,!0);le.add(Re),Re.add(new go.PathSegment(go.PathSegment.Bezier,Se*te,(De-ue)*ne,(Se-ue)*te,(De-ve)*ne,(Se-ve)*te,(De-ue)*ne)),Re.add(new go.PathSegment(go.PathSegment.Bezier,(Se+ue)*te,De*ne,(Se+ve)*te,(De-ue)*ne,(Se+ue)*te,(De-ve)*ne)),Re.add(new go.PathSegment(go.PathSegment.Bezier,Se*te,(De+ue)*ne,(Se+ue)*te,(De+ve)*ne,(Se+ve)*te,(De+ue)*ne)),Re.add(new go.PathSegment(go.PathSegment.Bezier,(Se-ue)*te,De*ne,(Se-ve)*te,(De+ue)*ne,(Se-ue)*te,(De+ve)*ne)),ue=.1,ve=ge*.1,Se=.4,De=.9;var Ne=new go.PathFigure((Se-ue)*te,De*ne,!0);return le.add(Ne),Ne.add(new go.PathSegment(go.PathSegment.Bezier,Se*te,(De-ue)*ne,(Se-ue)*te,(De-ve)*ne,(Se-ve)*te,(De-ue)*ne)),Ne.add(new go.PathSegment(go.PathSegment.Bezier,(Se+ue)*te,De*ne,(Se+ve)*te,(De-ue)*ne,(Se+ue)*te,(De-ve)*ne)),Ne.add(new go.PathSegment(go.PathSegment.Bezier,Se*te,(De+ue)*ne,(Se+ue)*te,(De+ve)*ne,(Se+ve)*te,(De+ue)*ne)),Ne.add(new go.PathSegment(go.PathSegment.Bezier,(Se-ue)*te,De*ne,(Se-ve)*te,(De+ue)*ne,(Se-ue)*te,(De+ve)*ne)),le}),go.Shape.defineFigureGenerator("RailShipment",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(.1*te,.4*ne,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,.45*te,.4*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.45*te,.9*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.1*te,.9*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.1*te,.4*ne).close());var de=new go.PathFigure(.45*te,.7*ne,!1);le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.55*te,.7*ne));var he=new go.PathFigure(.55*te,.4*ne,!0);le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,.9*te,.4*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.9*te,.9*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.55*te,.9*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.55*te,.4*ne).close());var Se=.05,De=ge*.05,Re=.175,Ne=.95,ie=new go.PathFigure((Re-Se)*te,Ne*ne,!0);le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Bezier,Re*te,(Ne-Se)*ne,(Re-Se)*te,(Ne-De)*ne,(Re-De)*te,(Ne-Se)*ne)),ie.add(new go.PathSegment(go.PathSegment.Bezier,(Re+Se)*te,Ne*ne,(Re+De)*te,(Ne-Se)*ne,(Re+Se)*te,(Ne-De)*ne)),ie.add(new go.PathSegment(go.PathSegment.Bezier,Re*te,(Ne+Se)*ne,(Re+Se)*te,(Ne+De)*ne,(Re+De)*te,(Ne+Se)*ne)),ie.add(new go.PathSegment(go.PathSegment.Bezier,(Re-Se)*te,Ne*ne,(Re-De)*te,(Ne+Se)*ne,(Re-Se)*te,(Ne+De)*ne));var Se=.05,De=ge*.05,Re=.375,Ne=.95,ue=new go.PathFigure((Re-Se)*te,Ne*ne,!0);le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Bezier,Re*te,(Ne-Se)*ne,(Re-Se)*te,(Ne-De)*ne,(Re-De)*te,(Ne-Se)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(Re+Se)*te,Ne*ne,(Re+De)*te,(Ne-Se)*ne,(Re+Se)*te,(Ne-De)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,Re*te,(Ne+Se)*ne,(Re+Se)*te,(Ne+De)*ne,(Re+De)*te,(Ne+Se)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(Re-Se)*te,Ne*ne,(Re-De)*te,(Ne+Se)*ne,(Re-Se)*te,(Ne+De)*ne));var Se=.05,De=ge*.05,Re=.625,Ne=.95,ve=new go.PathFigure((Re-Se)*te,Ne*ne,!0);le.add(ve),ve.add(new go.PathSegment(go.PathSegment.Bezier,Re*te,(Ne-Se)*ne,(Re-Se)*te,(Ne-De)*ne,(Re-De)*te,(Ne-Se)*ne)),ve.add(new go.PathSegment(go.PathSegment.Bezier,(Re+Se)*te,Ne*ne,(Re+De)*te,(Ne-Se)*ne,(Re+Se)*te,(Ne-De)*ne)),ve.add(new go.PathSegment(go.PathSegment.Bezier,Re*te,(Ne+Se)*ne,(Re+Se)*te,(Ne+De)*ne,(Re+De)*te,(Ne+Se)*ne)),ve.add(new go.PathSegment(go.PathSegment.Bezier,(Re-Se)*te,Ne*ne,(Re-De)*te,(Ne+Se)*ne,(Re-Se)*te,(Ne+De)*ne));var Se=.05,De=ge*.05,Re=.825,Ne=.95,ze=new go.PathFigure((Re-Se)*te,Ne*ne,!0);le.add(ze),ze.add(new go.PathSegment(go.PathSegment.Bezier,Re*te,(Ne-Se)*ne,(Re-Se)*te,(Ne-De)*ne,(Re-De)*te,(Ne-Se)*ne)),ze.add(new go.PathSegment(go.PathSegment.Bezier,(Re+Se)*te,Ne*ne,(Re+De)*te,(Ne-Se)*ne,(Re+Se)*te,(Ne-De)*ne)),ze.add(new go.PathSegment(go.PathSegment.Bezier,Re*te,(Ne+Se)*ne,(Re+Se)*te,(Ne+De)*ne,(Re+De)*te,(Ne+Se)*ne)),ze.add(new go.PathSegment(go.PathSegment.Bezier,(Re-Se)*te,Ne*ne,(Re-De)*te,(Ne+Se)*ne,(Re-Se)*te,(Ne+De)*ne).close());var Ge=new go.PathFigure(0,ne,!1);return le.add(Ge),Ge.add(new go.PathSegment(go.PathSegment.Line,te,ne).close()),le}),go.Shape.defineFigureGenerator("Warehouse",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,0,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,0).close());var de=new go.PathFigure(0,.2*ne,!1);le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,te,.2*ne).close());var he=new go.PathFigure(.15*te,ne,!0);le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,.15*te,.5*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.4*te,.5*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.4*te,ne)),he.add(new go.PathSegment(go.PathSegment.Line,.15*te,ne).close());var ie=.05,ue=ge*.05,ve=.35,Se=.775,De=new go.PathFigure((ve-ie)*te,Se*ne,!0);return le.add(De),De.add(new go.PathSegment(go.PathSegment.Bezier,ve*te,(Se-ie)*ne,(ve-ie)*te,(Se-ue)*ne,(ve-ue)*te,(Se-ie)*ne)),De.add(new go.PathSegment(go.PathSegment.Bezier,(ve+ie)*te,Se*ne,(ve+ue)*te,(Se-ie)*ne,(ve+ie)*te,(Se-ue)*ne)),De.add(new go.PathSegment(go.PathSegment.Bezier,ve*te,(Se+ie)*ne,(ve+ie)*te,(Se+ue)*ne,(ve+ue)*te,(Se+ie)*ne)),De.add(new go.PathSegment(go.PathSegment.Bezier,(ve-ie)*te,Se*ne,(ve-ue)*te,(Se+ie)*ne,(ve-ie)*te,(Se+ue)*ne).close()),le}),go.Shape.defineFigureGenerator("ControlCenter",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,ne,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,0,.8*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.1*te,.8*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.1*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,.9*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,.9*te,.8*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.8*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne)),oe.add(new go.PathSegment(go.PathSegment.Move,.1*te,.8*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.9*te,.8*ne).close()),le}),go.Shape.defineFigureGenerator("Bluetooth",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,.75*ne,!1);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,0,.75*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.25*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.75*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,.25*ne)),le}),go.Shape.defineFigureGenerator("Bookmark",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,0,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,.6*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,0,0)),oe.add(new go.PathSegment(go.PathSegment.Move,.2*te,.2*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.8*te,.2*ne)),oe.add(new go.PathSegment(go.PathSegment.Move,.2*te,.4*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.8*te,.4*ne)),le}),go.Shape.defineFigureGenerator("Bookmark",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,0,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,.6*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,0,0)),oe.add(new go.PathSegment(go.PathSegment.Move,.2*te,.2*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.8*te,.2*ne)),oe.add(new go.PathSegment(go.PathSegment.Move,.2*te,.4*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.8*te,.4*ne)),le}),go.Shape.defineFigureGenerator("Globe",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(.5*te,0,!1);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Move,0,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Move,.5*te,0)),oe.add(new go.PathSegment(go.PathSegment.Bezier,te,.5*ne,.75*te,0,te,.25*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,ne,te,.75*ne,.75*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,0,.5*ne,.25*te,ne,0,.75*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,0,0,.25*ne,.25*te,0)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,ne,.15*te,.25*ne,.15*te,.75*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,0,.85*te,.75*ne,.85*te,.25*ne)),oe.add(new go.PathSegment(go.PathSegment.Move,.1675*te,.15*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.8325*te,.15*ne,.35*te,.3*ne,.65*te,.3*ne)),oe.add(new go.PathSegment(go.PathSegment.Move,.1675*te,.85*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.8325*te,.85*ne,.35*te,.7*ne,.65*te,.7*ne)),le}),go.Shape.defineFigureGenerator("Wave",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,.25*ne,!1);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Bezier,.3*te,.25*ne,.1*te,0,.2*te,0)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.7*te,.25*ne,.425*te,.5*ne,.575*te,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,te,.25*ne,.8*te,0,.9*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.75*ne)),oe.add(new go.PathSegment(go.PathSegment.Move,0,.25*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,.75*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.3*te,.75*ne,.1*te,.5*ne,.2*te,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.7*te,.75*ne,.425*te,ne,.575*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,te,.75*ne,.8*te,.5*ne,.9*te,.5*ne)),le}),go.Shape.defineFigureGenerator("Operator",function(ce,te,ne){var le=new go.Geometry,oe=.3,de=ge*.3,he=.5,ie=.7,ue=new go.PathFigure((he-oe)*te,ie*ne,!0);le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie-oe)*ne,(he-oe)*te,(ie-de)*ne,(he-de)*te,(ie-oe)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he+oe)*te,ie*ne,(he+de)*te,(ie-oe)*ne,(he+oe)*te,(ie-de)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie+oe)*ne,(he+oe)*te,(ie+de)*ne,(he+de)*te,(ie+oe)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he-oe)*te,ie*ne,(he-de)*te,(ie+oe)*ne,(he-oe)*te,(ie+de)*ne));var ve=new go.PathFigure(0,.7*ne,!1);return le.add(ve),ve.add(new go.PathSegment(go.PathSegment.Bezier,te,.7*ne,0,0,te,0)),le}),go.Shape.defineFigureGenerator("TripleFanBlades",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(.5*te,0,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,.65*ne,.65*te,.3*ne,.65*te,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,0,.35*te,.5*ne,.35*te,.3*ne)),oe.add(new go.PathSegment(go.PathSegment.Move,.5*te,.65*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,0,ne,.3*te,.6*ne,.1*te,.8*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,.65*ne,.2*te,ne,.35*te,.95*ne)),oe.add(new go.PathSegment(go.PathSegment.Move,.5*te,.65*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,te,ne,.7*te,.6*ne,.9*te,.8*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,.65*ne,.8*te,ne,.65*te,.95*ne)),le}),go.Shape.defineFigureGenerator("CentrifugalPump",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(te,0,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,.4*te,0)),oe.add(new go.PathSegment(go.PathSegment.Bezier,0,.5*ne,0,.075*ne,0,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.4*te,ne,0,ne,.4*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.8*te,.4*ne,.8*te,ne,.85*te,.6*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.4*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,0)),le}),go.Shape.defineFigureGenerator("Battery",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,ne,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,0,.1*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.1*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne)),oe.add(new go.PathSegment(go.PathSegment.Move,.4*te,.1*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.4*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,.6*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,.6*te,.1*ne));var de=new go.PathFigure(0,.6*ne,!1);return le.add(de),de.add(new go.PathSegment(go.PathSegment.Move,0,.4*ne)),de.add(new go.PathSegment(go.PathSegment.Line,te,.4*ne)),le}),go.Shape.defineFigureGenerator("Delete",function(ce,te,ne){var le=new go.Geometry,oe=.5,de=ge*.5,he=.5,ie=.5,ue=new go.PathFigure((he-oe)*te,ie*ne,!0);le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie-oe)*ne,(he-oe)*te,(ie-de)*ne,(he-de)*te,(ie-oe)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he+oe)*te,ie*ne,(he+de)*te,(ie-oe)*ne,(he+oe)*te,(ie-de)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie+oe)*ne,(he+oe)*te,(ie+de)*ne,(he+de)*te,(ie+oe)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he-oe)*te,ie*ne,(he-de)*te,(ie+oe)*ne,(he-oe)*te,(ie+de)*ne));var ve=new go.PathFigure(.15*te,.5*ne,!1);return le.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,.85*te,.5*ne)),le}),go.Shape.defineFigureGenerator("Flag",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,.1*ne,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne)),oe.add(new go.PathSegment(go.PathSegment.Move,0,.1*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,.1*ne,.15*te,0,.35*te,0)),oe.add(new go.PathSegment(go.PathSegment.Bezier,te,.1*ne,.65*te,.2*ne,.85*te,.2*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,.5*ne,.85*te,.6*ne,.65*te,.6*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,0,.5*ne,.35*te,.4*ne,.15*te,.4*ne).close()),le}),go.Shape.defineFigureGenerator("Help",function(ce,te,ne){var le=new go.Geometry,oe=.5,de=ge*.5,he=.5,ie=.5,ue=new go.PathFigure((he-oe)*te,ie*ne,!1);le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie-oe)*ne,(he-oe)*te,(ie-de)*ne,(he-de)*te,(ie-oe)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he+oe)*te,ie*ne,(he+de)*te,(ie-oe)*ne,(he+oe)*te,(ie-de)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie+oe)*ne,(he+oe)*te,(ie+de)*ne,(he+de)*te,(ie+oe)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he-oe)*te,ie*ne,(he-de)*te,(ie+oe)*ne,(he-oe)*te,(ie+de)*ne).close()),oe=.05,de=ge*.05,he=.5,ie=.8;var ve=new go.PathFigure((he-oe)*te,ie*ne,!1);return le.add(ve),ve.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie-oe)*ne,(he-oe)*te,(ie-de)*ne,(he-de)*te,(ie-oe)*ne)),ve.add(new go.PathSegment(go.PathSegment.Bezier,(he+oe)*te,ie*ne,(he+de)*te,(ie-oe)*ne,(he+oe)*te,(ie-de)*ne)),ve.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie+oe)*ne,(he+oe)*te,(ie+de)*ne,(he+de)*te,(ie+oe)*ne)),ve.add(new go.PathSegment(go.PathSegment.Bezier,(he-oe)*te,ie*ne,(he-de)*te,(ie+oe)*ne,(he-oe)*te,(ie+de)*ne).close()),ve.add(new go.PathSegment(go.PathSegment.Move,.5*te,.7*ne)),ve.add(new go.PathSegment(go.PathSegment.Line,.5*te,.5*ne)),ve.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,.2*ne,.75*te,.475*ne,.75*te,.225*ne)),ve.add(new go.PathSegment(go.PathSegment.Bezier,.3*te,.35*ne,.4*te,.2*ne,.3*te,.25*ne)),le}),go.Shape.defineFigureGenerator("Location",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(.5*te,ne,!0).add(new go.PathSegment(go.PathSegment.Line,.75*te,.5*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.5*te,0,.975*te,.025*ne,.5*te,0)).add(new go.PathSegment(go.PathSegment.Bezier,.25*te,.5*ne,.5*te,0,.025*te,.025*ne).close()).add(new go.PathSegment(go.PathSegment.Move,.5*te,.2*ne)).add(new go.PathSegment(go.PathSegment.Arc,270,360,.5*te,.3*ne,.1*te,.1*ne).close()))}),go.Shape.defineFigureGenerator("Lock",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,.5*ne,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,.5*ne));var de=new go.PathFigure(.2*te,.5*ne,!1);return le.add(de),de.add(new go.PathSegment(go.PathSegment.Move,.2*te,.5*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.2*te,.3*ne)),de.add(new go.PathSegment(go.PathSegment.Bezier,.8*te,.3*ne,.25*te,0,.75*te,0)),de.add(new go.PathSegment(go.PathSegment.Line,.8*te,.5*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.8*te,.3*ne)),le}),go.Shape.defineFigureGenerator("Unlocked",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,.5*ne,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,.5*ne));var de=new go.PathFigure(.2*te,.5*ne,!1);return le.add(de),de.add(new go.PathSegment(go.PathSegment.Move,.2*te,.5*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.2*te,.3*ne)),de.add(new go.PathSegment(go.PathSegment.Bezier,.8*te,.3*ne,.25*te,0,.75*te,0)),de.add(new go.PathSegment(go.PathSegment.Line,.8*te,.35*ne)),le}),go.Shape.defineFigureGenerator("Gear",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(.9375*te,.56246875*ne,!0).add(new go.PathSegment(go.PathSegment.Line,.9375*te,.4375*ne)).add(new go.PathSegment(go.PathSegment.Line,.80621875*te,.4375*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.763*te,.3316875*ne,.79840625*te,.39915625*ne,.7834375*te,.3635*ne)).add(new go.PathSegment(go.PathSegment.Line,.8566875*te,.23796875*ne)).add(new go.PathSegment(go.PathSegment.Line,.76825*te,.14959375*ne)).add(new go.PathSegment(go.PathSegment.Line,.67596875*te,.24184375*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.5625*te,.19378125*ne,.64228125*te,.2188125*ne,.603875*te,.2021875*ne)).add(new go.PathSegment(go.PathSegment.Line,.5625*te,.0625*ne)).add(new go.PathSegment(go.PathSegment.Line,.4375*te,.0625*ne)).add(new go.PathSegment(go.PathSegment.Line,.4375*te,.19378125*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.32775*te,.239375*ne,.39759375*te,.20190625*ne,.36053125*te,.2176875*ne)).add(new go.PathSegment(go.PathSegment.Line,.2379375*te,.14959375*ne)).add(new go.PathSegment(go.PathSegment.Line,.14953125*te,.2379375*ne)).add(new go.PathSegment(go.PathSegment.Line,.23934375*te,.3278125*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.19378125*te,.4375*ne,.21765625*te,.36059375*ne,.201875*te,.397625*ne)).add(new go.PathSegment(go.PathSegment.Line,.0625*te,.4375*ne)).add(new go.PathSegment(go.PathSegment.Line,.0625*te,.5625*ne)).add(new go.PathSegment(go.PathSegment.Line,.1938125*te,.5625*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.241875*te,.67596875*ne,.20221875*te,.603875*ne,.21884375*te,.64228125*ne)).add(new go.PathSegment(go.PathSegment.Line,.1495625*te,.76825*ne)).add(new go.PathSegment(go.PathSegment.Line,.238*te,.8566875*ne)).add(new go.PathSegment(go.PathSegment.Line,.3316875*te,.76296875*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.43753125*te,.80621875*ne,.36353125*te,.78340625*ne,.3991875*te,.79840625*ne)).add(new go.PathSegment(go.PathSegment.Line,.43753125*te,.9375*ne)).add(new go.PathSegment(go.PathSegment.Line,.5625*te,.9375*ne)).add(new go.PathSegment(go.PathSegment.Line,.5625*te,.80621875*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.67225*te,.760625*ne,.602375*te,.79809375*ne,.63946875*te,.78234375*ne)).add(new go.PathSegment(go.PathSegment.Line,.76828125*te,.8566875*ne)).add(new go.PathSegment(go.PathSegment.Line,.85671875*te,.76825*ne)).add(new go.PathSegment(go.PathSegment.Line,.76065625*te,.67221875*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.80621875*te,.56246875*ne,.78234375*te,.63940625*ne,.798125*te,.602375*ne)).add(new go.PathSegment(go.PathSegment.Line,.9375*te,.56246875*ne).close()).add(new go.PathSegment(go.PathSegment.Move,.5*te,.6*ne)).add(new go.PathSegment(go.PathSegment.Arc,90,360,.5*te,.5*ne,.1*te,.1*ne).close()))}),go.Shape.defineFigureGenerator("Hand",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,.5*ne,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Bezier,.1*te,.3*ne,0,.375*ne,.05*te,.325*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.45*te,.075*ne,.3*te,.225*ne,.4*te,.175*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.525*te,.075*ne,.46*te,.05*ne,.525*te,.05*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.3*te,.4*ne,.525*te,.275*ne,.475*te,.325*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.9*te,.4*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.9*te,.55*ne,te,.4*ne,te,.55*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.425*te,.55*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.6*te,.55*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.6*te,.7*ne,.675*te,.55*ne,.675*te,.7*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.4*te,.7*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.575*te,.7*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.575*te,.85*ne,.65*te,.7*ne,.65*te,.85*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.4*te,.85*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.525*te,.85*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.535*te,ne,.61*te,.85*ne,.61*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,0,.9*ne,.435*te,ne,0,ne).close()),le}),go.Shape.defineFigureGenerator("Map",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,.2*ne,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,.25*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,.2*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.75*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,te,.2*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.75*te,.8*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.25*te,.8*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne).close()),oe.add(new go.PathSegment(go.PathSegment.Move,.25*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,.25*te,.8*ne)),oe.add(new go.PathSegment(go.PathSegment.Move,.5*te,.2*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)),oe.add(new go.PathSegment(go.PathSegment.Move,.75*te,0)),oe.add(new go.PathSegment(go.PathSegment.Line,.75*te,.8*ne)),le}),go.Shape.defineFigureGenerator("Eject",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,ne,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te,ne*.7)),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne*.7).close());var de=new go.PathFigure(0,ne*.6,!0);return le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,te,.6*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.5*te,0).close()),le}),go.Shape.defineFigureGenerator("Pencil",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Line,.2*te,.1*ne)).add(new go.PathSegment(go.PathSegment.Line,te,.9*ne)).add(new go.PathSegment(go.PathSegment.Line,.9*te,ne)).add(new go.PathSegment(go.PathSegment.Line,.1*te,.2*ne).close()))}),go.Shape.defineFigureGenerator("Building",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(te*1,ne*1,!1);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne*.85)),oe.add(new go.PathSegment(go.PathSegment.Line,.046*te,ne*.85)),oe.add(new go.PathSegment(go.PathSegment.Line,.046*te,ne*.45)),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne*.45)),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne*.3)),oe.add(new go.PathSegment(go.PathSegment.Line,.046*te,ne*.3)),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne*0)),oe.add(new go.PathSegment(go.PathSegment.Line,(1-.046)*te,ne*.3)),oe.add(new go.PathSegment(go.PathSegment.Line,te,ne*.3)),oe.add(new go.PathSegment(go.PathSegment.Line,te,ne*.45)),oe.add(new go.PathSegment(go.PathSegment.Line,(1-.046)*te,ne*.45)),oe.add(new go.PathSegment(go.PathSegment.Line,(1-.046)*te,ne*.85)),oe.add(new go.PathSegment(go.PathSegment.Line,te,ne*.85).close());var de=new go.PathFigure(.126*te,.85*ne,!1);le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.126*te,.45*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.322*te,.45*ne)),de.add(new go.PathSegment(go.PathSegment.Line,.322*te,.85*ne).close());var he=new go.PathFigure(.402*te,.85*ne,!1);le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,.402*te,.45*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.598*te,.45*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.598*te,.85*ne).close());var ie=new go.PathFigure(.678*te,.85*ne,!1);le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,.678*te,.45*ne)),ie.add(new go.PathSegment(go.PathSegment.Line,.874*te,.45*ne)),ie.add(new go.PathSegment(go.PathSegment.Line,.874*te,.85*ne).close());var ue=new go.PathFigure(.5*te,.1*ne,!1);return le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Line,(.046+.15)*te,.3*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,(1-(.046+.15))*te,.3*ne).close()),le}),go.Shape.defineFigureGenerator("Staircase",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,ne*1,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,te*.2,ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.2,ne*.8)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.4,ne*.8)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.4,ne*.6)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.6,ne*.6)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.6,ne*.4)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.8,ne*.4)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.8,ne*.2)),oe.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*.2)),oe.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*.15)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.75,ne*.15)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.75,ne*.35)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.55,ne*.35)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.55,ne*.55)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.35,ne*.55)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.35,ne*.75)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.15,ne*.75)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.15,ne*.95)),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne*.95).close()),le}),go.Shape.defineFigureGenerator("5Bars",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,ne*1,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,te*.184,ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.184,ne*(1-.184)).close());var de=new go.PathFigure(te*.204,ne,!0);le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,te*.204,ne*(1-.184))),de.add(new go.PathSegment(go.PathSegment.Line,te*.388,ne*(1-.184*2))),de.add(new go.PathSegment(go.PathSegment.Line,te*.388,ne*1).close());var he=new go.PathFigure(te*.408,ne,!0);le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te*.408,ne*(1-.184*2))),he.add(new go.PathSegment(go.PathSegment.Line,te*.592,ne*(1-.184*3))),he.add(new go.PathSegment(go.PathSegment.Line,te*.592,ne*1).close());var ie=new go.PathFigure(te*.612,ne,!0);le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,te*.612,ne*(1-.184*3))),ie.add(new go.PathSegment(go.PathSegment.Line,te*.796,ne*(1-.184*4))),ie.add(new go.PathSegment(go.PathSegment.Line,te*.796,ne*1).close());var ue=new go.PathFigure(te*.816,ne,!0);return le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Line,te*.816,ne*(1-.184*4))),ue.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*(1-.184*5))),ue.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*1).close()),le}),go.Shape.defineFigureGenerator("PC",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,0,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.3,ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.3,0).close());var de=new go.PathFigure(te*.055,.07*ne,!0);le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,te*.245,ne*.07)),de.add(new go.PathSegment(go.PathSegment.Line,te*.245,ne*.1)),de.add(new go.PathSegment(go.PathSegment.Line,te*.055,ne*.1).close());var he=new go.PathFigure(te*.055,.13*ne,!0);le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te*.245,ne*.13)),he.add(new go.PathSegment(go.PathSegment.Line,te*.245,ne*.16)),he.add(new go.PathSegment(go.PathSegment.Line,te*.055,ne*.16).close());var ie=new go.PathFigure(te*.055,.18*ne,!0);le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,te*.245,ne*.18)),ie.add(new go.PathSegment(go.PathSegment.Line,te*.245,ne*.21)),ie.add(new go.PathSegment(go.PathSegment.Line,te*.055,ne*.21).close());var ue=new go.PathFigure(te*1,0,!0);return le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Line,te*.4,0)),ue.add(new go.PathSegment(go.PathSegment.Line,te*.4,ne*.65)),ue.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*.65).close()),le}),go.Shape.defineFigureGenerator("Plane",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(.55*te,ne,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,.5*te,.6*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.4*te,.7*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.1*te,.475*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.35*te,.525*ne,0,.4*ne,.225*te,.45*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.4*te,.475*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.15*te,.35*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.2*te,.325*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.6*te,.325*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.85*te,.1*ne)),oe.add(new go.PathSegment(go.PathSegment.Bezier,.9*te,.2*ne,.975*te,0,te,.08*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.7*te,.45*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.6*te,.95*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,.55*te,ne).close()),le}),go.Shape.defineFigureGenerator("Key",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(te*1,ne*.5,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,te*.9,.4*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.5,.4*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.5,.35*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.45,.35*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.3,.2*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.15,.2*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,.35*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,0,.65*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.15,.8*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.3,.8*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.45,.65*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.5,.65*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.5,.6*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.6,.6*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.65,.55*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.7,.6*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.75,.55*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.8,.6*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.85,.575*ne)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.9,.6*ne).close()),oe.add(new go.PathSegment(go.PathSegment.Move,.17*te,.425*ne)),oe.add(new go.PathSegment(go.PathSegment.Arc,270,360,.17*te,.5*ne,.075*te,.075*ne).close()),le}),go.Shape.defineFigureGenerator("FilmTape",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(0,0,!1);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Arc,270,180,te*0,te*.3,te*.055)),oe.add(new go.PathSegment(go.PathSegment.Line,0,ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.08,ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.08,ne*.95)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*1),ne*.95)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*1),ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*2),ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*2),ne*.95)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*3),ne*.95)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*3),ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*4),ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*4),ne*.95)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*5),ne*.95)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*5),ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*6),ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*6),ne*.95)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*7),ne*.95)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*7),ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*8),ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*8),ne*.95)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*9),ne*.95)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*9),ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*10),ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*10),ne*.95)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*11),ne*.95)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*11),ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*12),ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*12),ne*.95)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*13),ne*.95)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*13),ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*14),ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*14),ne*.95)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*15),ne*.95)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*15),ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*1));var de=new go.PathFigure(0,0,!1);le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*0)),de.add(new go.PathSegment(go.PathSegment.Arc,270,-180,te*1,te*.3,te*.055)),de.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*1));var he=new go.PathFigure(te*.11,ne*.1,!1);le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te*(.11+.24133333*1+.028*0),ne*.1)),he.add(new go.PathSegment(go.PathSegment.Line,te*(.11+.24133333*1+.028*0),ne*.8)),he.add(new go.PathSegment(go.PathSegment.Line,te*.11,ne*.8).close());var ie=new go.PathFigure(te*(.11+.24133333*1+.028*1),ne*.1,!1);le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,te*(.11+.24133333*2+.028*1),ne*.1)),ie.add(new go.PathSegment(go.PathSegment.Line,te*(.11+.24133333*2+.028*1),ne*.8)),ie.add(new go.PathSegment(go.PathSegment.Line,te*(.11+.24133333*1+.028*1),ne*.8).close());var ue=new go.PathFigure(te*(.11+.24133333*2+.028*2),ne*.1,!1);return le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Line,te*(.11+.24133333*3+.028*2),ne*.1)),ue.add(new go.PathSegment(go.PathSegment.Line,te*(.11+.24133333*3+.028*2),ne*.8)),ue.add(new go.PathSegment(go.PathSegment.Line,te*(.11+.24133333*2+.028*2),ne*.8).close()),le}),go.Shape.defineFigureGenerator("FloppyDisk",function(ce,te,ne){var le=new go.Geometry,oe=8,de=oe*ge,he=new go.PathFigure(oe,0,!1);le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te*.86,0)),he.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*.14)),he.add(new go.PathSegment(go.PathSegment.Line,te,ne-oe)),he.add(new go.PathSegment(go.PathSegment.Bezier,te-oe,ne,te,ne-de,te-de,ne)),he.add(new go.PathSegment(go.PathSegment.Line,oe,ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,ne-oe,de,ne,0,ne-de)),he.add(new go.PathSegment(go.PathSegment.Line,0,oe)),he.add(new go.PathSegment(go.PathSegment.Bezier,oe,0,0,de,de,0).close());var ie=new go.PathFigure(te*.83,0,!1);le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,te*.83,ne*.3)),ie.add(new go.PathSegment(go.PathSegment.Line,te*.17,ne*.3)),ie.add(new go.PathSegment(go.PathSegment.Line,te*.17,ne*0).close());var ue=new go.PathFigure(te*.83,ne*1,!1);le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Line,te*.83,ne*.5)),ue.add(new go.PathSegment(go.PathSegment.Line,te*.17,ne*.5)),ue.add(new go.PathSegment(go.PathSegment.Line,te*.17,ne*1).close());var ve=new go.PathFigure(te*.78,ne*.05,!1);return le.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,te*.66,ne*.05)),ve.add(new go.PathSegment(go.PathSegment.Line,te*.66,ne*.25)),ve.add(new go.PathSegment(go.PathSegment.Line,te*.78,ne*.25).close()),le}),go.Shape.defineFigureGenerator("SpeechBubble",function(ce,te,ne){var le=ce?ce.parameter1:NaN;(isNaN(le)||le<0)&&(le=15),le=Math.min(le,te/3),le=Math.min(le,ne/3);var oe=le*ge,de=ne*.8,he=new go.Geometry,ie=new go.PathFigure(le,0,!0);return he.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,te-le,0)),ie.add(new go.PathSegment(go.PathSegment.Bezier,te,le,te-oe,0,te,oe)),ie.add(new go.PathSegment(go.PathSegment.Line,te,de-le)),ie.add(new go.PathSegment(go.PathSegment.Bezier,te-le,de,te,de-oe,te-oe,de)),ie.add(new go.PathSegment(go.PathSegment.Line,te*.7,de)),ie.add(new go.PathSegment(go.PathSegment.Line,te*.7,ne)),ie.add(new go.PathSegment(go.PathSegment.Line,te*.55,de)),ie.add(new go.PathSegment(go.PathSegment.Line,le,de)),ie.add(new go.PathSegment(go.PathSegment.Bezier,0,de-le,oe,de,0,de-oe)),ie.add(new go.PathSegment(go.PathSegment.Line,0,le)),ie.add(new go.PathSegment(go.PathSegment.Bezier,le,0,0,oe,oe,0).close()),oe>1?(he.spot1=new go.Spot(0,0,oe,oe),he.spot2=new go.Spot(1,.8,-oe,-oe)):(he.spot1=go.Spot.TopLeft,he.spot2=new go.Spot(1,.8)),he}),go.Shape.defineFigureGenerator("Repeat",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(te*0,ne*.45,!0);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,te*.25,ne*0)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.5,ne*.45)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.3,ne*.45)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.3,ne*.9)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.6,ne*.9)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.65,ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.2,ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.2,ne*.45).close());var de=new go.PathFigure(te*1,ne*.55,!0);return le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,te*.75,ne*1)),de.add(new go.PathSegment(go.PathSegment.Line,te*.5,ne*.55)),de.add(new go.PathSegment(go.PathSegment.Line,te*.7,ne*.55)),de.add(new go.PathSegment(go.PathSegment.Line,te*.7,ne*.1)),de.add(new go.PathSegment(go.PathSegment.Line,te*.4,ne*.1)),de.add(new go.PathSegment(go.PathSegment.Line,te*.35,ne*0)),de.add(new go.PathSegment(go.PathSegment.Line,te*.8,ne*0)),de.add(new go.PathSegment(go.PathSegment.Line,te*.8,ne*.55).close()),le}),go.Shape.defineFigureGenerator("Windows",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Line,te,ne)).add(new go.PathSegment(go.PathSegment.Line,0,ne).close()).add(new go.PathSegment(go.PathSegment.Move,.4*te,.4*ne)).add(new go.PathSegment(go.PathSegment.Line,.4*te,.8*ne)).add(new go.PathSegment(go.PathSegment.Line,.9*te,.8*ne)).add(new go.PathSegment(go.PathSegment.Line,.9*te,.4*ne).close()).add(new go.PathSegment(go.PathSegment.Move,.2*te,.1*ne)).add(new go.PathSegment(go.PathSegment.Line,.2*te,.6*ne)).add(new go.PathSegment(go.PathSegment.Line,.7*te,.6*ne)).add(new go.PathSegment(go.PathSegment.Line,.7*te,.1*ne).close()).add(new go.PathSegment(go.PathSegment.Move,.1*te,.6*ne)).add(new go.PathSegment(go.PathSegment.Line,.1*te,.9*ne)).add(new go.PathSegment(go.PathSegment.Line,.5*te,.9*ne)).add(new go.PathSegment(go.PathSegment.Line,.5*te,.6*ne).close()))}),go.Shape.defineFigureGenerator("Terminal",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(te*0,ne*.1,!1);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*.1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*.9)),oe.add(new go.PathSegment(go.PathSegment.Line,te*0,ne*.9).close());var de=new go.PathFigure(te*.1,ne*.2,!0);le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,te*.1,ne*.25)),de.add(new go.PathSegment(go.PathSegment.Line,te*.22,ne*.285)),de.add(new go.PathSegment(go.PathSegment.Line,te*.1,ne*.32)),de.add(new go.PathSegment(go.PathSegment.Line,te*.1,ne*.37)),de.add(new go.PathSegment(go.PathSegment.Line,te*.275,ne*.32)),de.add(new go.PathSegment(go.PathSegment.Line,te*.275,ne*.25).close());var he=new go.PathFigure(te*.28,ne*.37,!0);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te*.45,ne*.37)),he.add(new go.PathSegment(go.PathSegment.Line,te*.45,ne*.41)),he.add(new go.PathSegment(go.PathSegment.Line,te*.28,ne*.41).close()),le}),go.Shape.defineFigureGenerator("Beaker",function(ce,te,ne){var le=new go.Geometry,oe=15,de=oe*ge,he=new go.PathFigure(te*.62,ne*.475,!0);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te,ne-oe)),he.add(new go.PathSegment(go.PathSegment.Bezier,te-oe,ne,te,ne-de,te-de,ne)),he.add(new go.PathSegment(go.PathSegment.Line,oe,ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,ne-oe,de,ne,0,ne-de)),he.add(new go.PathSegment(go.PathSegment.Line,te*.38,ne*.475)),he.add(new go.PathSegment(go.PathSegment.Line,te*.38,ne*.03)),he.add(new go.PathSegment(go.PathSegment.Line,te*.36,ne*0)),he.add(new go.PathSegment(go.PathSegment.Line,te*.64,ne*0)),he.add(new go.PathSegment(go.PathSegment.Line,te*.62,ne*.03).close()),de>1?(le.spot1=new go.Spot(0,0,de,de),le.spot2=new go.Spot(1,1,-de,-de)):(le.spot1=go.Spot.TopLeft,le.spot2=go.Spot.BottomRight),le}),go.Shape.defineFigureGenerator("Download",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(te*0,ne*1,!0);le.add(oe);var de=.1/.3;oe.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*(1-de))),oe.add(new go.PathSegment(go.PathSegment.Line,te*.8,ne*0)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.66,ne*0)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.66,ne*.055)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.755,ne*.055)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.93,ne*(1-de))),oe.add(new go.PathSegment(go.PathSegment.Line,te*.64,ne*(1-de))),oe.add(new go.PathSegment(go.PathSegment.Line,te*.61,ne*.75)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.5,ne*.75)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.39,ne*.75)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.36,ne*(1-de))),oe.add(new go.PathSegment(go.PathSegment.Line,te*.07,ne*(1-de))),oe.add(new go.PathSegment(go.PathSegment.Line,te*(1-.755),ne*.055)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(1-.66),ne*.055)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(1-.66),ne*0)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(1-.8),ne*0)),oe.add(new go.PathSegment(go.PathSegment.Line,te*0,ne*(1-de)).close());var he=new go.PathFigure(te*.4,ne*0,!0);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te*.4,ne*.44)),he.add(new go.PathSegment(go.PathSegment.Line,te*.26,ne*.44)),he.add(new go.PathSegment(go.PathSegment.Line,te*.5,ne*.66)),he.add(new go.PathSegment(go.PathSegment.Line,te*(1-.26),ne*.44)),he.add(new go.PathSegment(go.PathSegment.Line,te*.6,ne*.44)),he.add(new go.PathSegment(go.PathSegment.Line,te*.6,ne*0).close()),le}),go.Shape.defineFigureGenerator("Bin",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(te*0,ne*1,!0);le.add(oe);var de=.1/.3;return oe.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*(1-de))),oe.add(new go.PathSegment(go.PathSegment.Line,te*.8,ne*0)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.66,ne*0)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.66,ne*.055)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.755,ne*.055)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.93,ne*(1-de))),oe.add(new go.PathSegment(go.PathSegment.Line,te*.64,ne*(1-de))),oe.add(new go.PathSegment(go.PathSegment.Line,te*.61,ne*.75)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.5,ne*.75)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.39,ne*.75)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.36,ne*(1-de))),oe.add(new go.PathSegment(go.PathSegment.Line,te*.07,ne*(1-de))),oe.add(new go.PathSegment(go.PathSegment.Line,te*(1-.755),ne*.055)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(1-.66),ne*.055)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(1-.66),ne*0)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(1-.8),ne*0)),oe.add(new go.PathSegment(go.PathSegment.Line,te*0,ne*(1-de)).close()),le}),go.Shape.defineFigureGenerator("Upload",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(te*0,ne*1,!0);le.add(oe);var de=.1/.3;oe.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*(1-de))),oe.add(new go.PathSegment(go.PathSegment.Line,te*.8,ne*0)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.66,ne*0)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.66,ne*.055)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.755,ne*.055)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.93,ne*(1-de))),oe.add(new go.PathSegment(go.PathSegment.Line,te*.64,ne*(1-de))),oe.add(new go.PathSegment(go.PathSegment.Line,te*.61,ne*.75)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.5,ne*.75)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.39,ne*.75)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.36,ne*(1-de))),oe.add(new go.PathSegment(go.PathSegment.Line,te*.07,ne*(1-de))),oe.add(new go.PathSegment(go.PathSegment.Line,te*(1-.755),ne*.055)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(1-.66),ne*.055)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(1-.66),ne*0)),oe.add(new go.PathSegment(go.PathSegment.Line,te*(1-.8),ne*0)),oe.add(new go.PathSegment(go.PathSegment.Line,te*0,ne*(1-de)).close());var he=new go.PathFigure(te*.5,ne*0,!0);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te*.26,ne*.25)),he.add(new go.PathSegment(go.PathSegment.Line,te*.4,ne*.25)),he.add(new go.PathSegment(go.PathSegment.Line,te*.4,ne*.63)),he.add(new go.PathSegment(go.PathSegment.Line,te*.6,ne*.63)),he.add(new go.PathSegment(go.PathSegment.Line,te*.6,ne*.25)),he.add(new go.PathSegment(go.PathSegment.Line,te*.74,ne*.25).close()),le}),go.Shape.defineFigureGenerator("EmptyDrink",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(te*.15,ne*0,!1);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,te*.85,ne*0)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.7,ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.3,ne*1).close()),le}),go.Shape.defineFigureGenerator("Drink",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(te*.15,ne*0,!1);le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,te*.85,ne*0)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.7,ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.3,ne*1).close());var de=new go.PathFigure(te*.235,ne*.28,!0);return le.add(de),de.add(new go.PathSegment(go.PathSegment.Line,te*.765,ne*.28)),de.add(new go.PathSegment(go.PathSegment.Line,te*.655,ne*.97)),de.add(new go.PathSegment(go.PathSegment.Line,te*.345,ne*.97).close()),le}),go.Shape.defineFigureGenerator("4Arrows",function(ce,te,ne){var le=new go.Geometry,oe=new go.PathFigure(te*.5,ne*0,!0);return le.add(oe),oe.add(new go.PathSegment(go.PathSegment.Line,te*.65,ne*.25)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.55,ne*.25)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.55,ne*.45)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.75,ne*.45)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.75,ne*.35)),oe.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*.5)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.75,ne*.65)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.75,ne*.55)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.55,ne*.55)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.55,ne*.75)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.65,ne*.75)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.5,ne*1)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.35,ne*.75)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.45,ne*.75)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.45,ne*.55)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.25,ne*.55)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.25,ne*.65)),oe.add(new go.PathSegment(go.PathSegment.Line,te*0,ne*.5)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.25,ne*.35)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.25,ne*.45)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.45,ne*.45)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.45,ne*.25)),oe.add(new go.PathSegment(go.PathSegment.Line,te*.35,ne*.25).close()),le}),go.Shape.defineFigureGenerator("Connector","Ellipse"),go.Shape.defineFigureGenerator("Alternative","TriangleUp"),go.Shape.defineFigureGenerator("Merge","TriangleUp"),go.Shape.defineFigureGenerator("Decision","Diamond"),go.Shape.defineFigureGenerator("DataTransmissions","Hexagon"),go.Shape.defineFigureGenerator("Gate","Crescent"),go.Shape.defineFigureGenerator("Delay","HalfEllipse"),go.Shape.defineFigureGenerator("Input","Parallelogram1"),go.Shape.defineFigureGenerator("ManualLoop","ManualOperation"),go.Shape.defineFigureGenerator("ISOProcess","Chevron"),go.Shape.defineFigureGenerator("MessageToUser","SquareArrow"),go.Shape.defineFigureGenerator("MagneticData","Cylinder1"),go.Shape.defineFigureGenerator("DirectData","Cylinder4"),go.Shape.defineFigureGenerator("StoredData","DataStorage"),go.Shape.defineFigureGenerator("SequentialData","MagneticTape"),go.Shape.defineFigureGenerator("Subroutine","Procedure")},20063:function(module,exports,__webpack_require__){var __WEBPACK_AMD_DEFINE_ARRAY__,__WEBPACK_AMD_DEFINE_RESULT__;(function(){if(typeof window.GGBApplet=="function"){console.warn("deployggb.js was loaded twice");return}var isRenderGGBElementEnabled=!1,scriptLoadStarted=!1,html5AppletsToProcess=null,ggbHTML5LoadedCodebaseIsWebSimple=!1,ggbHTML5LoadedCodebaseVersion=null,ggbHTML5LoadedScript=null,GGBApplet=function(){"use strict";for(var St={},Dt="5.0",Ie={},Be=null,He=!1,Fe=!1,Ce=null,_e=!1,Pe=null,ge=null,Ae=0;Ae4?parseFloat(dt):5};St.setHTML5Codebase=function(dt,ht){ge=dt,ut(dt,ht)},St.setJavaCodebase=St.setJavaCodebaseVersion=St.isCompiledInstalled=St.setPreCompiledScriptPath=St.setPreCompiledResourcePath=function(){},St.setHTML5CodebaseVersion=function(dt,ht){var Ut=parseFloat(dt);if(Ut!==NaN&&Ut<5){console.log("The GeoGebra HTML5 codebase version "+Ut+" is deprecated. Using version latest instead.");return}Pe=dt,rt(dt,ht)},St.getHTML5CodebaseVersion=function(){return ce},St.getParameters=function(){return Ie},St.setFontsCSSURL=function(dt){he=dt},St.setGiacJSURL=function(dt){},St.setJNLPFile=function(dt){we=dt},St.setJNLPBaseDir=function(dt){},St.inject=function(){function dt(){return window.frameElement&&window.frameElement.getAttribute("data-singleton")}for(var ht="auto",Ut=Ie.id,Kt,qt=!1,vn=0;vn=5)return!0;var dt=St.getAppletObject();return dt&&typeof dt.recalculateEnvironments=="function"?(dt.recalculateEnvironments(),!0):!1},St.startAnimation=function(){var dt=St.getAppletObject();return dt&&typeof dt.startAnimation=="function"?(dt.startAnimation(),!0):!1},St.stopAnimation=function(){var dt=St.getAppletObject();return dt&&typeof dt.stopAnimation=="function"?(dt.stopAnimation(),!0):!1},St.getAppletObject=function(){var dt=Ie.id!==void 0?Ie.id:"ggbApplet";return window[dt]},St.resize=function(){};var ze=function(dt,ht,Ut){var Kt=document.createElement("param");Kt.setAttribute("name",ht),Kt.setAttribute("value",Ut),dt.appendChild(Kt)},Ge=function(dt){return dt&&dt!=="false"},Xe=function(dt,ht,Ut){ue(ce)<=4.2&&(Ut=!0);var Kt=!isRenderGGBElementEnabled&&!scriptLoadStarted;(!isRenderGGBElementEnabled&&!scriptLoadStarted||ggbHTML5LoadedCodebaseVersion!==ce||ggbHTML5LoadedCodebaseIsWebSimple&&!ne)&&(Kt=!0,isRenderGGBElementEnabled=!1,scriptLoadStarted=!1);var qt=document.createElement("div");qt.classList.add("appletParameters","notranslate");var vn=ht.width,Ot=ht.height;if(ht.disableAutoScale=ht.disableAutoScale===void 0?GGBAppletUtils.isFlexibleWorksheetEditor():ht.disableAutoScale,ht.width!==void 0)if(ue(ce)<=4.4)Ge(ht.showToolBar)&&(ht.height-=7),Ge(ht.showAlgebraInput)&&(ht.height-=37),ht.width<605&&Ge(ht.showToolBar)&&(ht.width=605,vn=605);else{var rn=100;(Ge(ht.showToolBar)||Ge(ht.showMenuBar))&&(ht.hasOwnProperty("customToolBar")&&(ht.customToolbar=ht.customToolBar),rn=Ge(ht.showMenuBar)?245:155),vn=5?(ht.appletOnLoad=function(wt){var ln=dt.querySelector(".ggb_preview");ln&&ln.parentNode.removeChild(ln),window.GGBT_spinner&&window.GGBT_spinner.removeSpinner(Rn),window.GGBT_wsf_view&&$(window).trigger("resize"),On(wt)},sn||Rn.appendChild(tn)):qt.appendChild(tn),Rn.appendChild(qt),sn||dt.appendChild(Rn),setTimeout(function(){St.resize()},1)}else{var Gt=document.createElement("div");Gt.className="applet_scaler",Gt.style.position="relative",Gt.style.display="block",Gt.appendChild(qt),dt.appendChild(Gt),ht.appletOnLoad=function(wt){St.resize(),On(wt)}}function It(wt,ln){ln&&typeof ln.appletOnLoad=="function"&&typeof renderGGBElement=="function"?renderGGBElement(wt,ln.appletOnLoad):renderGGBElement(wt),yt("GeoGebra HTML5 applet injected and rendered with previously loaded codebase.",ln)}function Et(wt,ln){typeof renderGGBElement=="undefined"?(html5AppletsToProcess===null&&(html5AppletsToProcess=[]),html5AppletsToProcess.push({article:wt,params:ln}),window.renderGGBElementReady=function(){isRenderGGBElementEnabled=!0,html5AppletsToProcess!==null&&html5AppletsToProcess.length&&(html5AppletsToProcess.forEach(function(In){It(In.article,In.params)}),html5AppletsToProcess=null)},ue(ce)<5&&(wt.className+=" geogebraweb")):It(wt,ln)}if(Kt){scriptLoadStarted=!0;for(var Zt=0;Zt0?(an.remove(),Rn.attr("id","fullscreencontent").show(),jQuery(On).append(Rn),window.dispatchEvent(new Event("resize"))):Xe(an,ht,!1),window.GGBT_wsf_view.launchFullScreen(On)}else xe=Kt,Xe(dt,ht,!1);if(!window.GGBT_wsf_view)for(Ot=0;Otdt/4*3&&(an=dt/4*3),On=an/5.8,rn.setAttribute("src",oe),rn.setAttribute("width",an),rn.setAttribute("height",On);var Rn=(dt-an)/2,sn=(ht-On)/2;rn.style.left=Rn+"px",rn.style.top=sn+"px",qt.appendChild(rn)}}return qt.appendChild(Ot),qt},at=function(dt){return dt=dt.toLowerCase(),dt==="html5"||dt==="screenshot"?dt:"html5"},lt=["web","webSimple","web3d","tablet","tablet3d","phone"],rt=function(dt,ht){if(ce=dt,ht){ut(ce,!0);return}var Ut=!He;if(Ut){var Kt=ue(ce);!isNaN(Kt)&&Kt<4.4&&(Ut=!1)}var qt,vn;window.location.protocol.substr(0,4)==="http"?qt=window.location.protocol:qt="http:";var Ot=ce.indexOf("//");Ot>0?vn=ce:Ot===0?vn=qt+ce:vn="https://www.geogebra.org/apps/5.2.814.0/";for(var rn in lt)if(ce.slice(lt[rn].length*-1)===lt[rn]||ce.slice((lt[rn].length+1)*-1)===lt[rn]+"/"){ut(vn,!1);return}!GGBAppletUtils.isFlexibleWorksheetEditor()&&Ut&&!Be.is3D&&!Be.AV&&!Be.SV&&!Be.CV&&!Be.EV2&&!Be.CP&&!Be.PC&&!Be.DA&&!Be.FI&&!Be.PV&&!Ge(Ie.showToolBar)&&!Ge(Ie.showMenuBar)&&!Ge(Ie.showAlgebraInput)&&!Ge(Ie.enableRightClick)&&(!Ie.appName||Ie.appName=="classic")?vn+="webSimple/":vn+="web3d/",ut(vn,!1)},ut=function(dt,ht){if(dt.requirejs){pe=dt;return}dt.slice(-1)!=="/"&&(dt+="/"),pe=dt,ht===null&&(ht=dt.indexOf("http")===-1),ye=ht,te="web.nocache.js",ne=!1;var Ut=pe.split("/");Ut.length>1&&(!ht&&Ut[Ut.length-2]==="webSimple"?(te="webSimple.nocache.js",ne=!0):lt.indexOf(Ut[Ut.length-2])>=0&&(te=Ut[Ut.length-2]+".nocache.js")),Ut=dt.split("/"),ce=Ut[Ut.length-3],ce.substr(0,4)==="test"?ce=ce.substr(4,1)+"."+ce.substr(5,1):(ce.substr(0,3)==="war"||ce.substr(0,4)==="beta")&&(ce="5.0");var Kt=parseFloat(ce);Kt!==NaN&&Kt<5&&dt.indexOf("geogebra.org")>=0&&(console.log("The GeoGebra HTML5 codebase version "+Kt+" is deprecated. Using version latest instead."),rt("5.0",ht))},yt=function(dt,ht){window.console&&window.console.log&&(!ht||typeof ht.showLogging=="undefined"||ht.showLogging&&ht.showLogging!=="false")&&console.log(dt)};Ie.material_id!==void 0?De(ft):ft();function ft(){var dt=Dt;Pe!==null?dt=Pe:parseFloat(dt)<5&&(dt="5.0"),rt(dt,!1),ge!==null&&ut(ge,ye),_e=!0}return St},GGBAppletUtils=function(){"use strict";function St(){return window.GGBT_wsf_edit!==void 0}function Dt(_e,Pe){Pe!=1?(_e.style.transformOrigin="0% 0% 0px",_e.style.webkitTransformOrigin="0% 0% 0px",_e.style.transform="scale("+Pe+","+Pe+")",_e.style.webkitTransform="scale("+Pe+","+Pe+")",_e.style.maxWidth="initial",_e.querySelector(".ggb_preview")!==null&&(_e.querySelector(".ggb_preview").style.maxWidth="initial"),_e.querySelectorAll(".ggb_preview img")[0]!==void 0&&(_e.querySelectorAll(".ggb_preview img")[0].style.maxWidth="initial"),_e.querySelectorAll(".ggb_preview img")[1]!==void 0&&(_e.querySelectorAll(".ggb_preview img")[1].style.maxWidth="initial")):(_e.style.transform="none",_e.style.webkitTransform="none")}function Ie(_e,Pe,ge,Ae,be,we){var pe=null;if(we!=null&&we!="")for(var ye=_e.parentNode;ye!=null;)if((" "+ye.className+" ").indexOf(" "+we+" ")>-1){pe=ye;break}else ye=ye.parentNode;var xe=0,ce=0,te=0,ne=0,le=0,oe=0,de=0;if(pe)xe=pe.offsetWidth,ce=Math.max(Ae?pe.offsetWidth:0,pe.offsetHeight);else{if(window.innerWidth&&document.documentElement.clientWidth?(xe=Math.min(window.innerWidth,document.documentElement.clientWidth),ce=Math.min(window.innerHeight,document.documentElement.clientHeight),te=xe):(xe=window.innerWidth,ce=window.innerHeight,te=window.innerWidth),_e){var he=_e.getBoundingClientRect();he.left>0&&he.left<=xe&&(be===void 0||!be)&&(document.dir==="rtl"?(le=xe-he.width-he.left,oe=te<=480?10:30):(oe=he.left,le=te<=480?10:30),ne=oe+le)}if(_e&&typeof window.GGBT_wsf_view=="object"&&window.GGBT_wsf_view.isFullscreen()){var ie=_e.getBoundingClientRect();window.GGBT_wsf_view.getCloseBtnPosition()==="closePositionRight"?(ne=40,de=0):window.GGBT_wsf_view.getCloseBtnPosition()==="closePositionTop"&&(ne=0,de=40)}}return _e&&((ge===void 0||!ge)&&Pe>0&&Pe+ne1&&(we=!0)),Pe&&typeof window.GGBT_wsf_view=="object"&&window.GGBT_wsf_view.isFullscreen()&&(we=!0),!(_e.hasOwnProperty("disableAutoScale")&&_e.disableAutoScale))be=Be(_e,Pe,we,ge,_e.scaleContainerClass);else return Ae;return we&&(!_e.hasOwnProperty("scale")||Ae===1)?be:Math.min(Ae,be)}function Fe(_e){var Pe=Math.min(window.innerWidth,document.documentElement.clientWidth),ge=Math.min(window.innerHeight,document.documentElement.clientHeight),Ae=_e.getBoundingClientRect(),be=(Pe-Ae.width)/2,we=(ge-Ae.height)/2;we<0&&(we=0),_e.style.position="relative",window.GGBT_wsf_view.getCloseBtnPosition()==="closePositionRight"?(be<40?_e.style.left="40px":_e.style.left=be+"px",_e.style.top=we+"px"):window.GGBT_wsf_view.getCloseBtnPosition()==="closePositionTop"&&(we<40?_e.style.top="40px":_e.style.top=we+"px",_e.style.left=be+"px")}function Ce(_e,Pe){var ge=_e.querySelector(".appletParameters");if(ge){if(typeof window.GGBT_wsf_view=="object"&&window.GGBT_wsf_view.isFullscreen()){if(Pe.id!==ge.getAttribute("data-param-id"))return;window.GGBT_wsf_view.setCloseBtnPosition(_e)}if(ge.parentElement&&/fullscreen/.test(ge.parentElement.className))return;var Ae=He(Pe,_e);St()&&ge.setAttribute("data-param-scale",Ae);for(var be=null,we=0;we<_e.childNodes.length;we++)if(_e.childNodes[we].className!==void 0&&_e.childNodes[we].className.match(/^applet_scaler/)){be=_e.childNodes[we];break}if(be!==null&&be.querySelector(".noscale")!==null)return;var pe=Pe.id!==void 0?Pe.id:"ggbApplet",ye=window[pe];(ye==null||!ye.recalculateEnvironments)&&be!==null&&!be.className.match(/fullscreen/)&&(be.parentNode.style.transform="",!isNaN(Ae)&&Ae!==1?(be.parentNode.style.width=Pe.width*Ae+"px",be.parentNode.style.height=Pe.height*Ae+"px",Dt(be,Ae)):(Dt(be,1),be.parentNode.style.width=Pe.width+"px",be.parentNode.style.height=Pe.height+"px")),typeof window.GGBT_wsf_view=="object"&&window.GGBT_wsf_view.isFullscreen()&&Fe(_e),window.GGBT_wsf_view&&!window.GGBT_wsf_view.isFullscreen()&&window.GGBT_wsf_general.adjustContentToResize($(ge).parents(".content-added-content"))}}return{responsiveResize:Ce,isFlexibleWorksheetEditor:St,positionCenter:Fe,getScale:He,scaleElement:Dt}}();__WEBPACK_AMD_DEFINE_ARRAY__=[],__WEBPACK_AMD_DEFINE_RESULT__=function(){return GGBApplet}.apply(exports,__WEBPACK_AMD_DEFINE_ARRAY__),__WEBPACK_AMD_DEFINE_RESULT__!==void 0&&(module.exports=__WEBPACK_AMD_DEFINE_RESULT__),GGBAppletUtils.makeModule=function(name,permutation){function webModule(){var H="bootstrap",I="begin",J="gwt.codesvr."+name+"=",K="gwt.codesvr=",L=name,M="startup",N="DUMMY",O=0,P=1,Q="iframe",R="position:absolute; width:0; height:0; border:none; left: -1000px;",S=" top: -1000px;",T="Chrome",U="CSS1Compat",V="",W="",X="",Y="undefined",Z="readystatechange",$=10,_="script",ab="javascript",bb="Failed to load ",cb="moduleStartup",db="scriptTagAdded",eb="moduleRequested",fb="meta",gb="name",hb=name+"::",ib="::",jb="gwt:property",kb="content",lb="=",mb="gwt:onPropertyErrorFn",nb='Bad handler "',ob='" for "gwt:onPropertyErrorFn"',pb="gwt:onLoadErrorFn",qb='" for "gwt:onLoadErrorFn"',rb="#",sb="?",tb="/",ub="img",vb="clear.cache.gif",wb="baseUrl",xb=name+".nocache.js",yb="base",zb="//",Ab="selectingPermutation",Bb=name+".devmode.js",Cb=permutation,Db=":",Eb=".cache.js",Fb="loadExternalRefs",Gb="end",n=window,o=document;function p(){var St=n.location.search;return St.indexOf(J)!=-1||St.indexOf(K)!=-1}function q(St,Dt){}webModule.__sendStats=q,webModule.__moduleName=L,webModule.__errFn=null,webModule.__moduleBase=N,webModule.__softPermutationId=O,webModule.__computePropValue=null,webModule.__getPropMap=null,webModule.__installRunAsyncCode=function(){},webModule.__gwtStartLoadingFragment=function(){return null},webModule.__gwt_isKnownPropertyValue=function(){return!1},webModule.__gwt_getMetaProperty=function(){return null};var r=null,s=n.__gwt_activeModules=n.__gwt_activeModules||{};s[L]={moduleName:L},webModule.__moduleStartupDone=function(St){var Dt=s[L].bindings;s[L].bindings=function(){for(var Ie=Dt?Dt():{},Be=St[webModule.__softPermutationId],He=O;He=O)continue;if(j==jb){if(k=i.getAttribute(kb),k){var l,m=k.indexOf(lb);m>=O?(j=k.substring(O,m),l=k.substring(m+P)):(j=k,l=W),c[j]=l}}else if(j==mb){if(k=i.getAttribute(kb),k)try{d=eval(k)}catch(St){alert(nb+k+ob)}}else if(j==pb&&(k=i.getAttribute(kb),k))try{e=eval(k)}catch(St){alert(nb+k+qb)}}}__gwt_getMetaProperty=function(St){var Dt=c[St];return Dt==null?null:Dt},r=d,webModule.__errFn=e}function B(){function St(_e){var Pe=_e.lastIndexOf(rb);Pe==-1&&(Pe=_e.length);var ge=_e.indexOf(sb);ge==-1&&(ge=_e.length);var Ae=_e.lastIndexOf(tb,Math.min(ge,Pe));return Ae>=O?_e.substring(O,Ae+P):W}function Dt(_e){if(!_e.match(/^\w+:\/\//)){var Pe=o.createElement(ub);Pe.src=_e+vb,_e=St(Pe.src)}return _e}function Ie(){var _e=__gwt_getMetaProperty(wb);return _e!=null?_e:W}function Be(){for(var _e=o.getElementsByTagName(_),Pe=O;Pe<_e.length;++Pe)if(_e[Pe].src.indexOf(xb)!=-1)return St(_e[Pe].src);return W}function He(){var _e=o.getElementsByTagName(yb);return _e.length>O?_e[_e.length-P].href:W}function Fe(){var _e=o.location;return _e.href==_e.protocol+zb+_e.host+_e.pathname+_e.search+_e.hash}var Ce=Ie();return Ce==W&&(Ce=Be()),Ce==W&&(Ce=He()),Ce==W&&Fe()&&(Ce=St(o.location.href)),Ce=Dt(Ce),Ce}function C(St){return St.match(/^\//)||St.match(/^[a-zA-Z]+:\/\//)?St:webModule.__moduleBase+St}function D(){var St=[],Dt=O,Ie=[],Be=[];function He(_e){var Pe=Be[_e](),ge=Ie[_e];if(Pe in ge)return Pe;var Ae=[];for(var be in ge)Ae[ge[be]]=be;throw r&&r(_e,Ae,Pe),null}if(__gwt_isKnownPropertyValue=function(_e,Pe){return Pe in Ie[_e]},webModule.__getPropMap=function(){var _e={};for(var Pe in Ie)Ie.hasOwnProperty(Pe)&&(_e[Pe]=He(Pe));return _e},webModule.__computePropValue=He,n.__gwt_activeModules[L].bindings=webModule.__getPropMap,p())return C(Bb);var Fe;try{Fe=Cb;var Ce=Fe.indexOf(Db);Ce!=-1&&(Dt=parseInt(Fe.substring(Ce+P),$),Fe=Fe.substring(O,Ce))}catch(_e){}return webModule.__softPermutationId=Dt,C(Fe+Eb)}function F(){n.__gwt_stylesLoaded||(n.__gwt_stylesLoaded={})}A(),webModule.__moduleBase=window.ENV==="build"?"/react/build/js/mathematicalGraphics/"+name+"/":"/js/mathematicalGraphics/"+name+"/",s[L].moduleBase=webModule.__moduleBase;var G=D();return F(),w(G),!0}return webModule},typeof window.web3d!="function"&&(window.web3d=GGBAppletUtils.makeModule("web3d","A18F540516513B1292CA7CEF2F6AFC7E")),typeof window.webSimple!="function"&&(window.webSimple=GGBAppletUtils.makeModule("webSimple","96B09BF1B436BF53F0DF54116700F16A")),window.GGBApplet=GGBApplet})()},19264:function(St,Dt){var Ie=(Be,He,Fe)=>new Promise((Ce,_e)=>{var Pe=be=>{try{Ae(Fe.next(be))}catch(we){_e(we)}},ge=be=>{try{Ae(Fe.throw(be))}catch(we){_e(we)}},Ae=be=>be.done?Ce(be.value):Promise.resolve(be.value).then(Pe,ge);Ae((Fe=Fe.apply(Be,He)).next())});(function(Be,He){He(Dt)})(this,function(Be){"use strict";var He={value:()=>{}};function Fe(){for(var Ve,et=0,it=arguments.length,pt={};et=0&&(pt=it.slice(Mt+1),it=it.slice(0,Mt)),it&&!et.hasOwnProperty(it))throw new Error("unknown type: "+it);return{type:it,name:pt}})}function Pe(Ve,et){for(var it,pt=0,Mt=Ve.length;pt0)for(var it,pt,Mt=new Array(it),Tt=0;Tt=0&&(et=Ve.slice(0,it))!=="xmlns"&&(Ve=Ve.slice(it+1)),be.hasOwnProperty(et)?{space:be[et],local:Ve}:Ve}function pe(Ve){return function(){var et=this.ownerDocument,it=this.namespaceURI;return it===Ae&&et.documentElement.namespaceURI===Ae?et.createElement(Ve):et.createElementNS(it,Ve)}}function ye(Ve){return function(){return this.ownerDocument.createElementNS(Ve.space,Ve.local)}}function xe(Ve){var et=we(Ve);return(et.local?ye:pe)(et)}function ce(){}function te(Ve){return Ve==null?ce:function(){return this.querySelector(Ve)}}function ne(Ve){return Ve==null?[]:Array.isArray(Ve)?Ve:Array.from(Ve)}function le(){return[]}function oe(Ve){return Ve==null?le:function(){return this.querySelectorAll(Ve)}}function de(Ve){return function(){return this.matches(Ve)}}function he(Ve){return function(et){return et.matches(Ve)}}var ie=Array.prototype.find;function ue(){return this.firstElementChild}var ve=Array.prototype.filter;function Se(){return Array.from(this.children)}function De(Ve){return new Array(Ve.length)}function Re(Ve,et){this.ownerDocument=Ve.ownerDocument,this.namespaceURI=Ve.namespaceURI,this._next=null,this._parent=Ve,this.__data__=et}function Ne(Ve){return function(){return Ve}}function ze(Ve,et,it,pt,Mt,Tt){for(var jt,kt=0,en=et.length,Vt=Tt.length;ktet?1:Ve>=et?0:NaN}function $e(Ve){return function(){this.removeAttribute(Ve)}}function qe(Ve){return function(){this.removeAttributeNS(Ve.space,Ve.local)}}function ot(Ve,et){return function(){this.setAttribute(Ve,et)}}function at(Ve,et){return function(){this.setAttributeNS(Ve.space,Ve.local,et)}}function lt(Ve,et){return function(){var it=et.apply(this,arguments);it==null?this.removeAttribute(Ve):this.setAttribute(Ve,it)}}function rt(Ve,et){return function(){var it=et.apply(this,arguments);it==null?this.removeAttributeNS(Ve.space,Ve.local):this.setAttributeNS(Ve.space,Ve.local,it)}}function ut(Ve){return Ve.ownerDocument&&Ve.ownerDocument.defaultView||Ve.document&&Ve||Ve.defaultView}function yt(Ve){return function(){this.style.removeProperty(Ve)}}function ft(Ve,et,it){return function(){this.style.setProperty(Ve,et,it)}}function dt(Ve,et,it){return function(){var pt=et.apply(this,arguments);pt==null?this.style.removeProperty(Ve):this.style.setProperty(Ve,pt,it)}}function ht(Ve,et){return Ve.style.getPropertyValue(et)||ut(Ve).getComputedStyle(Ve,null).getPropertyValue(et)}function Ut(Ve){return function(){delete this[Ve]}}function Kt(Ve,et){return function(){this[Ve]=et}}function qt(Ve,et){return function(){var it=et.apply(this,arguments);it==null?delete this[Ve]:this[Ve]=it}}function vn(Ve){return Ve.trim().split(/^|\s+/)}function Ot(Ve){return Ve.classList||new rn(Ve)}function rn(Ve){this._node=Ve,this._names=vn(Ve.getAttribute("class")||"")}function an(Ve,et){for(var it=Ot(Ve),pt=-1,Mt=et.length;++pt=0&&(it=et.slice(pt+1),et=et.slice(0,pt)),{type:et,name:it}})}function Zn(Ve){return function(){var et=this.__on;if(et){for(var it,pt=0,Mt=-1,Tt=et.length;pt=0&&(this._names.splice(et,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(Ve){return this._names.indexOf(Ve)>=0}};var Bn=[null];function Er(Ve,et){this._groups=Ve,this._parents=et}function Fr(){return new Er([[document.documentElement]],Bn)}function br(Ve){return typeof Ve=="string"?new Er([[document.querySelector(Ve)]],[document.documentElement]):new Er([[Ve]],Bn)}function Wr(Ve,et){if(Ve=function(Tt){let jt;for(;jt=Tt.sourceEvent;)Tt=jt;return Tt}(Ve),et===void 0&&(et=Ve.currentTarget),et){var it=et.ownerSVGElement||et;if(it.createSVGPoint){var pt=it.createSVGPoint();return pt.x=Ve.clientX,pt.y=Ve.clientY,[(pt=pt.matrixTransform(et.getScreenCTM().inverse())).x,pt.y]}if(et.getBoundingClientRect){var Mt=et.getBoundingClientRect();return[Ve.clientX-Mt.left-et.clientLeft,Ve.clientY-Mt.top-et.clientTop]}}return[Ve.pageX,Ve.pageY]}Er.prototype=Fr.prototype={constructor:Er,select:function(Ve){typeof Ve!="function"&&(Ve=te(Ve));for(var et=this._groups,it=et.length,pt=new Array(it),Mt=0;Mt=ia&&(ia=xr+1);!(ir=Wn[ia])&&++ia=0;)(pt=Mt[Tt])&&(jt&&4^pt.compareDocumentPosition(jt)&&jt.parentNode.insertBefore(pt,jt),jt=pt);return this},sort:function(Ve){function et(Tn,hn){return Tn&&hn?Ve(Tn.__data__,hn.__data__):!Tn-!hn}Ve||(Ve=nt);for(var it=this._groups,pt=it.length,Mt=new Array(pt),Tt=0;Tt1?this.each((et==null?yt:typeof et=="function"?dt:ft)(Ve,et,it==null?"":it)):ht(this.node(),Ve)},property:function(Ve,et){return arguments.length>1?this.each((et==null?Ut:typeof et=="function"?qt:Kt)(Ve,et)):this.node()[Ve]},classed:function(Ve,et){var it=vn(Ve+"");if(arguments.length<2){for(var pt=Ot(this.node()),Mt=-1,Tt=it.length;++Mt()=>Ve;function Ka(Ve,{sourceEvent:et,subject:it,target:pt,identifier:Mt,active:Tt,x:jt,y:kt,dx:en,dy:Vt,dispatch:un}){Object.defineProperties(this,{type:{value:Ve,enumerable:!0,configurable:!0},sourceEvent:{value:et,enumerable:!0,configurable:!0},subject:{value:it,enumerable:!0,configurable:!0},target:{value:pt,enumerable:!0,configurable:!0},identifier:{value:Mt,enumerable:!0,configurable:!0},active:{value:Tt,enumerable:!0,configurable:!0},x:{value:jt,enumerable:!0,configurable:!0},y:{value:kt,enumerable:!0,configurable:!0},dx:{value:en,enumerable:!0,configurable:!0},dy:{value:Vt,enumerable:!0,configurable:!0},_:{value:un}})}function oi(Ve){return!Ve.ctrlKey&&!Ve.button}function pr(){return this.parentNode}function vr(Ve,et){return et==null?{x:Ve.x,y:Ve.y}:et}function li(){return navigator.maxTouchPoints||"ontouchstart"in this}function zn(Ve,et,it){Ve.prototype=et.prototype=it,it.constructor=Ve}function hr(Ve,et){var it=Object.create(Ve.prototype);for(var pt in et)it[pt]=et[pt];return it}function Tr(){}Ka.prototype.on=function(){var Ve=this._.on.apply(this._,arguments);return Ve===this._?this:Ve};var Rr=.7,fa=1/Rr,bt="\\s*([+-]?\\d+)\\s*",Me="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Le="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",Te=/^#([0-9a-f]{3,8})$/,Ue=new RegExp(`^rgb\\(${bt},${bt},${bt}\\)$`),Ye=new RegExp(`^rgb\\(${Le},${Le},${Le}\\)$`),xt=new RegExp(`^rgba\\(${bt},${bt},${bt},${Me}\\)$`),Pt=new RegExp(`^rgba\\(${Le},${Le},${Le},${Me}\\)$`),Xt=new RegExp(`^hsl\\(${Me},${Le},${Le}\\)$`),Ht=new RegExp(`^hsla\\(${Me},${Le},${Le},${Me}\\)$`),mn={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};function pn(){return this.rgb().formatHex()}function Yn(){return this.rgb().formatRgb()}function Dn(Ve){var et,it;return Ve=(Ve+"").trim().toLowerCase(),(et=Te.exec(Ve))?(it=et[1].length,et=parseInt(et[1],16),it===6?qn(et):it===3?new nn(et>>8&15|et>>4&240,et>>4&15|240&et,(15&et)<<4|15&et,1):it===8?er(et>>24&255,et>>16&255,et>>8&255,(255&et)/255):it===4?er(et>>12&15|et>>8&240,et>>8&15|et>>4&240,et>>4&15|240&et,((15&et)<<4|15&et)/255):null):(et=Ue.exec(Ve))?new nn(et[1],et[2],et[3],1):(et=Ye.exec(Ve))?new nn(255*et[1]/100,255*et[2]/100,255*et[3]/100,1):(et=xt.exec(Ve))?er(et[1],et[2],et[3],et[4]):(et=Pt.exec(Ve))?er(255*et[1]/100,255*et[2]/100,255*et[3]/100,et[4]):(et=Xt.exec(Ve))?ur(et[1],et[2]/100,et[3]/100,1):(et=Ht.exec(Ve))?ur(et[1],et[2]/100,et[3]/100,et[4]):mn.hasOwnProperty(Ve)?qn(mn[Ve]):Ve==="transparent"?new nn(NaN,NaN,NaN,0):null}function qn(Ve){return new nn(Ve>>16&255,Ve>>8&255,255&Ve,1)}function er(Ve,et,it,pt){return pt<=0&&(Ve=et=it=NaN),new nn(Ve,et,it,pt)}function dr(Ve){return Ve instanceof Tr||(Ve=Dn(Ve)),Ve?new nn((Ve=Ve.rgb()).r,Ve.g,Ve.b,Ve.opacity):new nn}function fn(Ve,et,it,pt){return arguments.length===1?dr(Ve):new nn(Ve,et,it,pt==null?1:pt)}function nn(Ve,et,it,pt){this.r=+Ve,this.g=+et,this.b=+it,this.opacity=+pt}function Nn(){return`#${Xn(this.r)}${Xn(this.g)}${Xn(this.b)}`}function jn(){const Ve=rr(this.opacity);return`${Ve===1?"rgb(":"rgba("}${mr(this.r)}, ${mr(this.g)}, ${mr(this.b)}${Ve===1?")":`, ${Ve})`}`}function rr(Ve){return isNaN(Ve)?1:Math.max(0,Math.min(1,Ve))}function mr(Ve){return Math.max(0,Math.min(255,Math.round(Ve)||0))}function Xn(Ve){return((Ve=mr(Ve))<16?"0":"")+Ve.toString(16)}function ur(Ve,et,it,pt){return pt<=0?Ve=et=it=NaN:it<=0||it>=1?Ve=et=NaN:et<=0&&(Ve=NaN),new wn(Ve,et,it,pt)}function yr(Ve){if(Ve instanceof wn)return new wn(Ve.h,Ve.s,Ve.l,Ve.opacity);if(Ve instanceof Tr||(Ve=Dn(Ve)),!Ve)return new wn;if(Ve instanceof wn)return Ve;var et=(Ve=Ve.rgb()).r/255,it=Ve.g/255,pt=Ve.b/255,Mt=Math.min(et,it,pt),Tt=Math.max(et,it,pt),jt=NaN,kt=Tt-Mt,en=(Tt+Mt)/2;return kt?(jt=et===Tt?(it-pt)/kt+6*(it0&&en<1?0:jt,new wn(jt,kt,en,Ve.opacity)}function wn(Ve,et,it,pt){this.h=+Ve,this.s=+et,this.l=+it,this.opacity=+pt}function gr(Ve){return(Ve=(Ve||0)%360)<0?Ve+360:Ve}function Jn(Ve){return Math.max(0,Math.min(1,Ve||0))}function Ur(Ve,et,it){return 255*(Ve<60?et+(it-et)*Ve/60:Ve<180?it:Ve<240?et+(it-et)*(240-Ve)/60:et)}zn(Tr,Dn,{copy(Ve){return Object.assign(new this.constructor,this,Ve)},displayable(){return this.rgb().displayable()},hex:pn,formatHex:pn,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return yr(this).formatHsl()},formatRgb:Yn,toString:Yn}),zn(nn,fn,hr(Tr,{brighter(Ve){return Ve=Ve==null?fa:Math.pow(fa,Ve),new nn(this.r*Ve,this.g*Ve,this.b*Ve,this.opacity)},darker(Ve){return Ve=Ve==null?Rr:Math.pow(Rr,Ve),new nn(this.r*Ve,this.g*Ve,this.b*Ve,this.opacity)},rgb(){return this},clamp(){return new nn(mr(this.r),mr(this.g),mr(this.b),rr(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Nn,formatHex:Nn,formatHex8:function(){return`#${Xn(this.r)}${Xn(this.g)}${Xn(this.b)}${Xn(255*(isNaN(this.opacity)?1:this.opacity))}`},formatRgb:jn,toString:jn})),zn(wn,function(Ve,et,it,pt){return arguments.length===1?yr(Ve):new wn(Ve,et,it,pt==null?1:pt)},hr(Tr,{brighter(Ve){return Ve=Ve==null?fa:Math.pow(fa,Ve),new wn(this.h,this.s,this.l*Ve,this.opacity)},darker(Ve){return Ve=Ve==null?Rr:Math.pow(Rr,Ve),new wn(this.h,this.s,this.l*Ve,this.opacity)},rgb(){var Ve=this.h%360+360*(this.h<0),et=isNaN(Ve)||isNaN(this.s)?0:this.s,it=this.l,pt=it+(it<.5?it:1-it)*et,Mt=2*it-pt;return new nn(Ur(Ve>=240?Ve-240:Ve+120,Mt,pt),Ur(Ve,Mt,pt),Ur(Ve<120?Ve+240:Ve-120,Mt,pt),this.opacity)},clamp(){return new wn(gr(this.h),Jn(this.s),Jn(this.l),rr(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const Ve=rr(this.opacity);return`${Ve===1?"hsl(":"hsla("}${gr(this.h)}, ${100*Jn(this.s)}%, ${100*Jn(this.l)}%${Ve===1?")":`, ${Ve})`}`}}));var Ja=Ve=>()=>Ve;function gi(Ve){return(Ve=+Ve)==1?ui:function(et,it){return it-et?function(pt,Mt,Tt){return pt=Math.pow(pt,Tt),Mt=Math.pow(Mt,Tt)-pt,Tt=1/Tt,function(jt){return Math.pow(pt+jt*Mt,Tt)}}(et,it,Ve):Ja(isNaN(et)?it:et)}}function ui(Ve,et){var it=et-Ve;return it?function(pt,Mt){return function(Tt){return pt+Tt*Mt}}(Ve,it):Ja(isNaN(Ve)?et:Ve)}var Hr=function Ve(et){var it=gi(et);function pt(Mt,Tt){var jt=it((Mt=fn(Mt)).r,(Tt=fn(Tt)).r),kt=it(Mt.g,Tt.g),en=it(Mt.b,Tt.b),Vt=ui(Mt.opacity,Tt.opacity);return function(un){return Mt.r=jt(un),Mt.g=kt(un),Mt.b=en(un),Mt.opacity=Vt(un),Mt+""}}return pt.gamma=Ve,pt}(1);function wa(Ve,et){et||(et=[]);var it,pt=Ve?Math.min(et.length,Ve.length):0,Mt=et.slice();return function(Tt){for(it=0;itTt&&(Mt=et.slice(Tt,Mt),kt[jt]?kt[jt]+=Mt:kt[++jt]=Mt),(it=it[0])===(pt=pt[0])?kt[jt]?kt[jt]+=pt:kt[++jt]=pt:(kt[++jt]=null,en.push({i:jt,x:qa(it,pt)})),Tt=Ui.lastIndex;return Tt180?un+=360:un-Vt>180&&(Vt+=360),hn.push({i:Tn.push(Mt(Tn)+"rotate(",null,pt)-2,x:qa(Vt,un)})):un&&Tn.push(Mt(Tn)+"rotate("+un+pt)}(Tt.rotate,jt.rotate,kt,en),function(Vt,un,Tn,hn){Vt!==un?hn.push({i:Tn.push(Mt(Tn)+"skewX(",null,pt)-2,x:qa(Vt,un)}):un&&Tn.push(Mt(Tn)+"skewX("+un+pt)}(Tt.skewX,jt.skewX,kt,en),function(Vt,un,Tn,hn,gn,cn){if(Vt!==Tn||un!==hn){var bn=gn.push(Mt(gn)+"scale(",null,",",null,")");cn.push({i:bn-4,x:qa(Vt,Tn)},{i:bn-2,x:qa(un,hn)})}else Tn===1&&hn===1||gn.push(Mt(gn)+"scale("+Tn+","+hn+")")}(Tt.scaleX,Tt.scaleY,jt.scaleX,jt.scaleY,kt,en),Tt=jt=null,function(Vt){for(var un,Tn=-1,hn=en.length;++Tn=0&&et._call.call(void 0,Ve),et=et._next;--Ir})()}finally{Ir=0,function(){for(var Ve,et,it=Ts,pt=1/0;it;)it._call?(pt>it._time&&(pt=it._time),Ve=it,it=it._next):(et=it._next,it._next=null,it=Ve?Ve._next=et:Ts=et);Bs=Ve,Fo(pt)}(),Ai=0}}function ds(){var Ve=Ri.now(),et=Ve-ka;et>1e3&&(va-=et,ka=Ve)}function Fo(Ve){Ir||(Vr&&(Vr=clearTimeout(Vr)),Ve-Ai>24?(Ve<1/0&&(Vr=setTimeout(po,Ve-Ri.now()-va)),Na&&(Na=clearInterval(Na))):(Na||(ka=Ri.now(),Na=setInterval(ds,1e3)),Ir=1,pi(po)))}function fs(Ve,et,it){var pt=new Bi;return et=et==null?0:+et,pt.restart(Mt=>{pt.stop(),Ve(Mt+et)},et,it),pt}Bi.prototype=ho.prototype={constructor:Bi,restart:function(Ve,et,it){if(typeof Ve!="function")throw new TypeError("callback is not a function");it=(it==null?xo():+it)+(et==null?0:+et),this._next||Bs===this||(Bs?Bs._next=this:Ts=this,Bs=this),this._call=Ve,this._time=it,Fo()},stop:function(){this._call&&(this._call=null,this._time=1/0,Fo())}};var Gs=Fe("start","end","cancel","interrupt"),Jr=[];function ya(Ve,et,it,pt,Mt,Tt){var jt=Ve.__transition;if(jt){if(it in jt)return}else Ve.__transition={};(function(kt,en,Vt){var un,Tn=kt.__transition;function hn(Wn){Vt.state=1,Vt.timer.restart(gn,Vt.delay,Vt.time),Vt.delay<=Wn&&gn(Wn-Vt.delay)}function gn(Wn){var _n,Qn,ir,xr;if(Vt.state!==1)return bn();for(_n in Tn)if((xr=Tn[_n]).name===Vt.name){if(xr.state===3)return fs(gn);xr.state===4?(xr.state=6,xr.timer.stop(),xr.on.call("interrupt",kt,kt.__data__,xr.index,xr.group),delete Tn[_n]):+_n0)throw new Error("too late; already scheduled");return it}function Ga(Ve,et){var it=Hi(Ve,et);if(it.state>3)throw new Error("too late; already running");return it}function Hi(Ve,et){var it=Ve.__transition;if(!it||!(it=it[et]))throw new Error("transition not found");return it}function Io(Ve,et){var it,pt,Mt,Tt=Ve.__transition,jt=!0;if(Tt){for(Mt in et=et==null?null:et+"",Tt)(it=Tt[Mt]).name===et?(pt=it.state>2&&it.state<5,it.state=6,it.timer.stop(),it.on.call(pt?"interrupt":"cancel",Ve,Ve.__data__,it.index,it.group),delete Tt[Mt]):jt=!1;jt&&delete Ve.__transition}}function us(Ve,et){var it,pt;return function(){var Mt=Ga(this,Ve),Tt=Mt.tween;if(Tt!==it){for(var jt=0,kt=(pt=it=Tt).length;jt=0&&(kt=kt.slice(0,en)),!kt||kt==="start"})}(et)?za:Ga;return function(){var jt=Tt(this,Ve),kt=jt.on;kt!==pt&&(Mt=(pt=kt).copy()).on(et,it),jt.on=Mt}}var Zd=Fr.prototype.constructor;function kc(Ve){return function(){this.style.removeProperty(Ve)}}function Pd(Ve,et,it){return function(pt){this.style.setProperty(Ve,et.call(this,pt),it)}}function Vf(Ve,et,it){var pt,Mt;function Tt(){var jt=et.apply(this,arguments);return jt!==Mt&&(pt=(Mt=jt)&&Pd(Ve,jt,it)),pt}return Tt._value=et,Tt}function kh(Ve){return function(et){this.textContent=Ve.call(this,et)}}function Qd(Ve){var et,it;function pt(){var Mt=Ve.apply(this,arguments);return Mt!==it&&(et=(it=Mt)&&kh(Mt)),et}return pt._value=Ve,pt}var _c=0;function ac(Ve,et,it,pt){this._groups=Ve,this._parents=et,this._name=it,this._id=pt}function Pf(){return++_c}var Bu=Fr.prototype;ac.prototype={constructor:ac,select:function(Ve){var et=this._name,it=this._id;typeof Ve!="function"&&(Ve=te(Ve));for(var pt=this._groups,Mt=pt.length,Tt=new Array(Mt),jt=0;jt=(Tt=(bn+_n)/2))?bn=Tt:_n=Tt,(un=it>=(jt=(Wn+Qn)/2))?Wn=jt:Qn=jt,Mt=gn,!(gn=gn[Tn=un<<1|Vt]))return Mt[Tn]=cn,Ve;if(kt=+Ve._x.call(null,gn.data),en=+Ve._y.call(null,gn.data),et===kt&&it===en)return cn.next=gn,Mt?Mt[Tn]=cn:Ve._root=cn,Ve;do Mt=Mt?Mt[Tn]=new Array(4):Ve._root=new Array(4),(Vt=et>=(Tt=(bn+_n)/2))?bn=Tt:_n=Tt,(un=it>=(jt=(Wn+Qn)/2))?Wn=jt:Qn=jt;while((Tn=un<<1|Vt)==(hn=(en>=jt)<<1|kt>=Tt));return Mt[hn]=gn,Mt[Tn]=cn,Ve}function Ll(Ve,et,it,pt,Mt){this.node=Ve,this.x0=et,this.y0=it,this.x1=pt,this.y1=Mt}function Mf(Ve){return Ve[0]}function Kf(Ve){return Ve[1]}function zc(Ve,et,it){var pt=new ic(et==null?Mf:et,it==null?Kf:it,NaN,NaN,NaN,NaN);return Ve==null?pt:pt.addAll(Ve)}function ic(Ve,et,it,pt,Mt,Tt){this._x=Ve,this._y=et,this._x0=it,this._y0=pt,this._x1=Mt,this._y1=Tt,this._root=void 0}function $d(Ve){for(var et={data:Ve.data},it=et;Ve=Ve.next;)it=it.next={data:Ve.data};return et}mc.prototype=Jd.prototype={constructor:mc,moveTo:function(Ve,et){this._+="M"+(this._x0=this._x1=+Ve)+","+(this._y0=this._y1=+et)},closePath:function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(Ve,et){this._+="L"+(this._x1=+Ve)+","+(this._y1=+et)},quadraticCurveTo:function(Ve,et,it,pt){this._+="Q"+ +Ve+","+ +et+","+(this._x1=+it)+","+(this._y1=+pt)},bezierCurveTo:function(Ve,et,it,pt,Mt,Tt){this._+="C"+ +Ve+","+ +et+","+ +it+","+ +pt+","+(this._x1=+Mt)+","+(this._y1=+Tt)},arcTo:function(Ve,et,it,pt,Mt){Ve=+Ve,et=+et,it=+it,pt=+pt,Mt=+Mt;var Tt=this._x1,jt=this._y1,kt=it-Ve,en=pt-et,Vt=Tt-Ve,un=jt-et,Tn=Vt*Vt+un*un;if(Mt<0)throw new Error("negative radius: "+Mt);if(this._x1===null)this._+="M"+(this._x1=Ve)+","+(this._y1=et);else if(Tn>Wo)if(Math.abs(un*kt-en*Vt)>Wo&&Mt){var hn=it-Tt,gn=pt-jt,cn=kt*kt+en*en,bn=hn*hn+gn*gn,Wn=Math.sqrt(cn),_n=Math.sqrt(Tn),Qn=Mt*Math.tan((sd-Math.acos((cn+Tn-bn)/(2*Wn*_n)))/2),ir=Qn/_n,xr=Qn/Wn;Math.abs(ir-1)>Wo&&(this._+="L"+(Ve+ir*Vt)+","+(et+ir*un)),this._+="A"+Mt+","+Mt+",0,0,"+ +(un*hn>Vt*gn)+","+(this._x1=Ve+xr*kt)+","+(this._y1=et+xr*en)}else this._+="L"+(this._x1=Ve)+","+(this._y1=et)},arc:function(Ve,et,it,pt,Mt,Tt){Ve=+Ve,et=+et,Tt=!!Tt;var jt=(it=+it)*Math.cos(pt),kt=it*Math.sin(pt),en=Ve+jt,Vt=et+kt,un=1^Tt,Tn=Tt?pt-Mt:Mt-pt;if(it<0)throw new Error("negative radius: "+it);this._x1===null?this._+="M"+en+","+Vt:(Math.abs(this._x1-en)>Wo||Math.abs(this._y1-Vt)>Wo)&&(this._+="L"+en+","+Vt),it&&(Tn<0&&(Tn=Tn%Xd+Xd),Tn>wf?this._+="A"+it+","+it+",0,1,"+un+","+(Ve-jt)+","+(et-kt)+"A"+it+","+it+",0,1,"+un+","+(this._x1=en)+","+(this._y1=Vt):Tn>Wo&&(this._+="A"+it+","+it+",0,"+ +(Tn>=sd)+","+un+","+(this._x1=Ve+it*Math.cos(Mt))+","+(this._y1=et+it*Math.sin(Mt))))},rect:function(Ve,et,it,pt){this._+="M"+(this._x0=this._x1=+Ve)+","+(this._y0=this._y1=+et)+"h"+ +it+"v"+ +pt+"h"+-it+"Z"},toString:function(){return this._}};var Xl=zc.prototype=ic.prototype;function Bo(Ve){return function(){return Ve}}function su(Ve){return 1e-6*(Ve()-.5)}function Uc(Ve){return Ve.x+Ve.vx}function ef(Ve){return Ve.y+Ve.vy}function Zf(Ve){return Ve.index}function wu(Ve,et){var it=Ve.get(et);if(!it)throw new Error("node not found: "+et);return it}function tf(Ve){var et,it,pt,Mt,Tt,jt,kt=Zf,en=function(bn){return 1/Math.min(Mt[bn.source.index],Mt[bn.target.index])},Vt=Bo(30),un=1;function Tn(bn){for(var Wn=0,_n=Ve.length;Wn[kt(xr,ia,pt),xr]));for(bn=0,Mt=new Array(_n);bnun&&(un=pt),MtTn&&(Tn=Mt));if(en>un||Vt>Tn)return this;for(this.cover(en,Vt).cover(un,Tn),it=0;itVe||Ve>=Mt||pt>et||et>=Tt;)switch(kt=(ethn||(Tt=en.y0)>gn||(jt=en.x1)=_n)<<1|Ve>=Wn)&&(en=cn[cn.length-1],cn[cn.length-1]=cn[cn.length-1-Vt],cn[cn.length-1-Vt]=en)}else{var Qn=Ve-+this._x.call(null,bn.data),ir=et-+this._y.call(null,bn.data),xr=Qn*Qn+ir*ir;if(xr=(kt=(cn+Wn)/2))?cn=kt:Wn=kt,(un=jt>=(en=(bn+_n)/2))?bn=en:_n=en,et=gn,!(gn=gn[Tn=un<<1|Vt]))return this;if(!gn.length)break;(et[Tn+1&3]||et[Tn+2&3]||et[Tn+3&3])&&(it=et,hn=Tn)}for(;gn.data!==Ve;)if(pt=gn,!(gn=gn.next))return this;return(Mt=gn.next)&&delete gn.next,pt?(Mt?pt.next=Mt:delete pt.next,this):et?(Mt?et[Tn]=Mt:delete et[Tn],(gn=et[0]||et[1]||et[2]||et[3])&&gn===(et[3]||et[2]||et[1]||et[0])&&!gn.length&&(it?it[hn]=gn:this._root=gn),this):(this._root=Mt,this)},Xl.removeAll=function(Ve){for(var et=0,it=Ve.length;et(bn=(1664525*bn+1013904223)%nf)/nf}();function Tn(){hn(),Vt.call("tick",et),it1?(Wn==null?kt.delete(bn):kt.set(bn,cn(Wn)),et):kt.get(bn)},find:function(bn,Wn,_n){var Qn,ir,xr,ia,ea,Xa=0,xa=Ve.length;for(_n==null?_n=1/0:_n*=_n,Xa=0;Xa1?(Vt.on(bn,Wn),et):Vt.on(bn)}}}function Bl(Ve){return function(){return Ve}}const Xf=Math.abs,Ul=Math.atan2,Qr=Math.cos,rf=Math.max,pc=Math.min,lu=Math.sin,yc=Math.sqrt,uu=1e-12,ld=Math.PI,Wc=ld/2,Jl=2*ld;function Jf(Ve){return Ve>1?0:Ve<-1?ld:Math.acos(Ve)}function Wl(Ve){return Ve>=1?Wc:Ve<=-1?-Wc:Math.asin(Ve)}function qf(Ve){return Ve.innerRadius}function _h(Ve){return Ve.outerRadius}function zh(Ve){return Ve.startAngle}function $f(Ve){return Ve.endAngle}function jc(Ve){return Ve&&Ve.padAngle}function Os(Ve,et,it,pt,Mt,Tt,jt,kt){var en=it-Ve,Vt=pt-et,un=jt-Mt,Tn=kt-Tt,hn=Tn*en-un*Vt;if(!(hn*hnMr*Mr+sa*sa&&(xa=Pr,Pa=oa),{cx:xa,cy:Pa,x01:-un,y01:-Tn,x11:xa*(Mt/ia-1),y11:Pa*(Mt/ia-1)}}function Ru(){var Ve=qf,et=_h,it=Bl(0),pt=null,Mt=zh,Tt=$f,jt=jc,kt=null;function en(){var Vt,un,Tn=+Ve.apply(this,arguments),hn=+et.apply(this,arguments),gn=Mt.apply(this,arguments)-Wc,cn=Tt.apply(this,arguments)-Wc,bn=Xf(cn-gn),Wn=cn>gn;if(kt||(kt=Vt=Jd()),hnuu)if(bn>Jl-uu)kt.moveTo(hn*Qr(gn),hn*lu(gn)),kt.arc(0,0,hn,gn,cn,!Wn),Tn>uu&&(kt.moveTo(Tn*Qr(cn),Tn*lu(cn)),kt.arc(0,0,Tn,cn,gn,Wn));else{var _n,Qn,ir=gn,xr=cn,ia=gn,ea=cn,Xa=bn,xa=bn,Pa=jt.apply(this,arguments)/2,Pr=Pa>uu&&(pt?+pt.apply(this,arguments):yc(Tn*Tn+hn*hn)),oa=pc(Xf(hn-Tn)/2,+it.apply(this,arguments)),hi=oa,ar=oa;if(Pr>uu){var Mr=Wl(Pr/Tn*lu(Pa)),sa=Wl(Pr/hn*lu(Pa));(Xa-=2*Mr)>uu?(ia+=Mr*=Wn?1:-1,ea-=Mr):(Xa=0,ia=ea=(gn+cn)/2),(xa-=2*sa)>uu?(ir+=sa*=Wn?1:-1,xr-=sa):(xa=0,ir=xr=(gn+cn)/2)}var da=hn*Qr(ir),Ra=hn*lu(ir),la=Tn*Qr(ea),na=Tn*lu(ea);if(oa>uu){var vi,mi=hn*Qr(xr),_r=hn*lu(xr),Zi=Tn*Qr(ia),qi=Tn*lu(ia);if(bnuu?ar>uu?(_n=Nu(Zi,qi,da,Ra,hn,ar,Wn),Qn=Nu(mi,_r,la,na,hn,ar,Wn),kt.moveTo(_n.cx+_n.x01,_n.cy+_n.y01),aruu&&Xa>uu?hi>uu?(_n=Nu(la,na,mi,_r,Tn,-hi,Wn),Qn=Nu(da,Ra,Zi,qi,Tn,-hi,Wn),kt.lineTo(_n.cx+_n.x01,_n.cy+_n.y01),hiVe?1:et>=Ve?0:NaN}function Nt(Ve){return Ve}function zt(){var Ve=Nt,et=Ct,it=null,pt=Bl(0),Mt=Bl(Jl),Tt=Bl(0);function jt(kt){var en,Vt,un,Tn,hn,gn=(kt=Uh(kt)).length,cn=0,bn=new Array(gn),Wn=new Array(gn),_n=+pt.apply(this,arguments),Qn=Math.min(Jl,Math.max(-Jl,Mt.apply(this,arguments)-_n)),ir=Math.min(Math.abs(Qn)/gn,Tt.apply(this,arguments)),xr=ir*(Qn<0?-1:1);for(en=0;en0&&(cn+=hn);for(et!=null?bn.sort(function(ia,ea){return et(Wn[ia],Wn[ea])}):it!=null&&bn.sort(function(ia,ea){return it(kt[ia],kt[ea])}),en=0,un=cn?(Qn-gn*xr)/cn:0;en0?hn*un:0)+xr,Wn[Vt]={data:kt[Vt],index:en,value:hn,startAngle:_n,endAngle:Tn,padAngle:ir};return Wn}return jt.value=function(kt){return arguments.length?(Ve=typeof kt=="function"?kt:Bl(+kt),jt):Ve},jt.sortValues=function(kt){return arguments.length?(et=kt,it=null,jt):et},jt.sort=function(kt){return arguments.length?(it=kt,et=null,jt):it},jt.startAngle=function(kt){return arguments.length?(pt=typeof kt=="function"?kt:Bl(+kt),jt):pt},jt.endAngle=function(kt){return arguments.length?(Mt=typeof kt=="function"?kt:Bl(+kt),jt):Mt},jt.padAngle=function(kt){return arguments.length?(Tt=typeof kt=="function"?kt:Bl(+kt),jt):Tt},jt}var Pn=Ve=>()=>Ve;function Mn(Ve,{sourceEvent:et,target:it,transform:pt,dispatch:Mt}){Object.defineProperties(this,{type:{value:Ve,enumerable:!0,configurable:!0},sourceEvent:{value:et,enumerable:!0,configurable:!0},target:{value:it,enumerable:!0,configurable:!0},transform:{value:pt,enumerable:!0,configurable:!0},_:{value:Mt}})}function lr(Ve,et,it){this.k=Ve,this.x=et,this.y=it}lr.prototype={constructor:lr,scale:function(Ve){return Ve===1?this:new lr(this.k*Ve,this.x,this.y)},translate:function(Ve,et){return Ve===0&et===0?this:new lr(this.k,this.x+this.k*Ve,this.y+this.k*et)},apply:function(Ve){return[Ve[0]*this.k+this.x,Ve[1]*this.k+this.y]},applyX:function(Ve){return Ve*this.k+this.x},applyY:function(Ve){return Ve*this.k+this.y},invert:function(Ve){return[(Ve[0]-this.x)/this.k,(Ve[1]-this.y)/this.k]},invertX:function(Ve){return(Ve-this.x)/this.k},invertY:function(Ve){return(Ve-this.y)/this.k},rescaleX:function(Ve){return Ve.copy().domain(Ve.range().map(this.invertX,this).map(Ve.invert,Ve))},rescaleY:function(Ve){return Ve.copy().domain(Ve.range().map(this.invertY,this).map(Ve.invert,Ve))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var or=new lr(1,0,0);function Br(Ve){Ve.stopImmediatePropagation()}function Dr(Ve){Ve.preventDefault(),Ve.stopImmediatePropagation()}function qr(Ve){return!(Ve.ctrlKey&&Ve.type!=="wheel"||Ve.button)}function ja(){var Ve=this;return Ve instanceof SVGElement?(Ve=Ve.ownerSVGElement||Ve).hasAttribute("viewBox")?[[(Ve=Ve.viewBox.baseVal).x,Ve.y],[Ve.x+Ve.width,Ve.y+Ve.height]]:[[0,0],[Ve.width.baseVal.value,Ve.height.baseVal.value]]:[[0,0],[Ve.clientWidth,Ve.clientHeight]]}function $r(){return this.__zoom||or}function ca(Ve){return-Ve.deltaY*(Ve.deltaMode===1?.05:Ve.deltaMode?1:.002)*(Ve.ctrlKey?10:1)}function ba(){return navigator.maxTouchPoints||"ontouchstart"in this}function Ea(Ve,et,it){var pt=Ve.invertX(et[0][0])-it[0][0],Mt=Ve.invertX(et[1][0])-it[1][0],Tt=Ve.invertY(et[0][1])-it[0][1],jt=Ve.invertY(et[1][1])-it[1][1];return Ve.translate(Mt>pt?(pt+Mt)/2:Math.min(0,pt)||Math.max(0,Mt),jt>Tt?(Tt+jt)/2:Math.min(0,Tt)||Math.max(0,jt))}function Nr(){var Ve,et,it,pt=qr,Mt=ja,Tt=Ea,jt=ca,kt=ba,en=[0,1/0],Vt=[[-1/0,-1/0],[1/0,1/0]],un=250,Tn=zr,hn=Fe("start","zoom","end"),gn=500,cn=0,bn=10;function Wn(ar){ar.property("__zoom",$r).on("wheel.zoom",Xa,{passive:!1}).on("mousedown.zoom",xa).on("dblclick.zoom",Pa).filter(kt).on("touchstart.zoom",Pr).on("touchmove.zoom",oa).on("touchend.zoom touchcancel.zoom",hi).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function _n(ar,Mr){return(Mr=Math.max(en[0],Math.min(en[1],Mr)))===ar.k?ar:new lr(Mr,ar.x,ar.y)}function Qn(ar,Mr,sa){var da=Mr[0]-sa[0]*ar.k,Ra=Mr[1]-sa[1]*ar.k;return da===ar.x&&Ra===ar.y?ar:new lr(ar.k,da,Ra)}function ir(ar){return[(+ar[0][0]+ +ar[1][0])/2,(+ar[0][1]+ +ar[1][1])/2]}function xr(ar,Mr,sa,da){ar.on("start.zoom",function(){ia(this,arguments).event(da).start()}).on("interrupt.zoom end.zoom",function(){ia(this,arguments).event(da).end()}).tween("zoom",function(){var Ra=this,la=arguments,na=ia(Ra,la).event(da),vi=Mt.apply(Ra,la),mi=sa==null?ir(vi):typeof sa=="function"?sa.apply(Ra,la):sa,_r=Math.max(vi[1][0]-vi[0][0],vi[1][1]-vi[0][1]),Zi=Ra.__zoom,qi=typeof Mr=="function"?Mr.apply(Ra,la):Mr,$o=Tn(Zi.invert(mi).concat(_r/Zi.k),qi.invert(mi).concat(_r/qi.k));return function(cs){if(cs===1)cs=qi;else{var Rs=$o(cs),gl=_r/Rs[2];cs=new lr(gl,mi[0]-Rs[0]*gl,mi[1]-Rs[1]*gl)}na.zoom(null,cs)}})}function ia(ar,Mr,sa){return!sa&&ar.__zooming||new ea(ar,Mr)}function ea(ar,Mr){this.that=ar,this.args=Mr,this.active=0,this.sourceEvent=null,this.extent=Mt.apply(ar,Mr),this.taps=0}function Xa(ar,...Mr){if(pt.apply(this,arguments)){var sa=ia(this,Mr).event(ar),da=this.__zoom,Ra=Math.max(en[0],Math.min(en[1],da.k*Math.pow(2,jt.apply(this,arguments)))),la=Wr(ar);if(sa.wheel)sa.mouse[0][0]===la[0]&&sa.mouse[0][1]===la[1]||(sa.mouse[1]=da.invert(sa.mouse[0]=la)),clearTimeout(sa.wheel);else{if(da.k===Ra)return;sa.mouse=[la,da.invert(la)],Io(this),sa.start()}Dr(ar),sa.wheel=setTimeout(na,150),sa.zoom("mouse",Tt(Qn(_n(da,Ra),sa.mouse[0],sa.mouse[1]),sa.extent,Vt))}function na(){sa.wheel=null,sa.end()}}function xa(ar,...Mr){if(!it&&pt.apply(this,arguments)){var sa=ar.currentTarget,da=ia(this,Mr,!0).event(ar),Ra=br(ar.view).on("mousemove.zoom",mi,!0).on("mouseup.zoom",_r,!0),la=Wr(ar,sa),na=ar.clientX,vi=ar.clientY;Ii(ar.view),Br(ar),da.mouse=[la,this.__zoom.invert(la)],Io(this),da.start()}function mi(Zi){if(Dr(Zi),!da.moved){var qi=Zi.clientX-na,$o=Zi.clientY-vi;da.moved=qi*qi+$o*$o>cn}da.event(Zi).zoom("mouse",Tt(Qn(da.that.__zoom,da.mouse[0]=Wr(Zi,sa),da.mouse[1]),da.extent,Vt))}function _r(Zi){Ra.on("mousemove.zoom mouseup.zoom",null),wi(Zi.view,da.moved),Dr(Zi),da.event(Zi).end()}}function Pa(ar,...Mr){if(pt.apply(this,arguments)){var sa=this.__zoom,da=Wr(ar.changedTouches?ar.changedTouches[0]:ar,this),Ra=sa.invert(da),la=sa.k*(ar.shiftKey?.5:2),na=Tt(Qn(_n(sa,la),da,Ra),Mt.apply(this,Mr),Vt);Dr(ar),un>0?br(this).transition().duration(un).call(xr,na,da,ar):br(this).call(Wn.transform,na,da,ar)}}function Pr(ar,...Mr){if(pt.apply(this,arguments)){var sa,da,Ra,la,na=ar.touches,vi=na.length,mi=ia(this,Mr,ar.changedTouches.length===vi).event(ar);for(Br(ar),da=0;da=0;--ar){var Mr=this.tryEntries[ar],sa=Mr.completion;if(Mr.tryLoc==="root")return hi("end");if(Mr.tryLoc<=this.prev){var da=it.call(Mr,"catchLoc"),Ra=it.call(Mr,"finallyLoc");if(da&&Ra){if(this.prev=0;--hi){var ar=this.tryEntries[hi];if(ar.tryLoc<=this.prev&&it.call(ar,"finallyLoc")&&this.prev=0;--oa){var hi=this.tryEntries[oa];if(hi.finallyLoc===Pr)return this.complete(hi.completion,hi.afterLoc),ea(hi),un}},catch:function(Pr){for(var oa=this.tryEntries.length-1;oa>=0;--oa){var hi=this.tryEntries[oa];if(hi.tryLoc===Pr){var ar=hi.completion;if(ar.type==="throw"){var Mr=ar.arg;ea(hi)}return Mr}}throw new Error("illegal catch attempt")},delegateYield:function(Pr,oa,hi){return this.delegate={iterator:xa(Pr),resultName:oa,nextLoc:hi},this.method==="next"&&(this.arg=void 0),un}},Ve}function Ca(Ve){return Ca=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(et){return typeof et}:function(et){return et&&typeof Symbol=="function"&&et.constructor===Symbol&&et!==Symbol.prototype?"symbol":typeof et},Ca(Ve)}function xi(Ve,et,it,pt,Mt,Tt,jt){try{var kt=Ve[Tt](jt),en=kt.value}catch(Vt){return void it(Vt)}kt.done?et(en):Promise.resolve(en).then(pt,Mt)}function ci(Ve){return function(){var et=this,it=arguments;return new Promise(function(pt,Mt){var Tt=Ve.apply(et,it);function jt(en){xi(Tt,pt,Mt,jt,kt,"next",en)}function kt(en){xi(Tt,pt,Mt,jt,kt,"throw",en)}jt(void 0)})}}function Si(Ve,et){if(!(Ve instanceof et))throw new TypeError("Cannot call a class as a function")}function Ni(Ve,et){for(var it=0;itVe.length)&&(et=Ve.length);for(var it=0,pt=new Array(et);it=Ve.length?{done:!0}:{done:!1,value:Ve[pt++]}},e:function(en){throw en},f:Mt}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var Tt,jt=!0,kt=!1;return{s:function(){it=it.call(Ve)},n:function(){var en=it.next();return jt=en.done,en},e:function(en){kt=!0,Tt=en},f:function(){try{jt||it.return==null||it.return()}finally{if(kt)throw Tt}}}}function Vo(Ve){var et=32;switch(Ve){case 0:et=23;break;case 1:et=26;break;case 2:default:et=32;break;case 3:et=38}return et}function ys(Ve){Ve=Ve.sort();for(var et=[],it=0;itet&&it<2*et||it>et&&it<3*et)&&pt.push(Ve.length);var en=pt.length;en===1?Mt.push({text:Ve,x:0,y:0}):en===2?pt.forEach(function(Vt,un){un===0?Mt.push({text:Ve.substring(0,Vt),x:0,y:-7}):Mt.push({text:Ve.substring(pt[0],Vt),x:0,y:7})}):pt.forEach(function(Vt,un){un===0?Mt.push({text:Ve.substring(0,Vt),x:0,y:-12}):un===1?Mt.push({text:Ve.substring(pt[0],Vt+1),x:0,y:4}):Ve.length>Vt?(()=>{var Tn=Mt.reduce((hn,gn)=>hn+gn.text.length,0);Mt.push({text:Ve.substring(Tn,Tn+2)+(Ve.length-(Tn+2)>0?"...":""),x:0,y:16})})():Mt.push({text:Ve.substring(pt[1]+1,Vt),x:0,y:16})})}(),Mt}lr.prototype;var Ys=["circle","rect","ellipse"],vs=["url(#radialGradient-1)","url(#radialGradient-2)","url(#radialGradient-3)"],Oo=["url(#lines1)","url(#lines2)","url(#lines3)"];function Ko(Ve,et,it){return Ve.selectAll(".node-circle").remove(),Ve.selectAll(".node-circle").data(et,function(pt){return pt.id}).enter().append(function(pt){return Ys.includes(pt.shape)?document.createElementNS("http://www.w3.org/2000/svg",pt.shape):document.createElementNS("http://www.w3.org/2000/svg","circle")}).style("display",function(pt){return pt.hide?"none":"block"}).style("opacity",function(pt){return pt.hide?"0":"1"}).attr("r",function(pt){return pt.shape=="circle"?qo(pt.size):null}).attr("rx",function(pt){return pt.shape=="ellipse"?qo(pt.size)+10:pt.shape=="rect"?10:null}).attr("ry",function(pt){return pt.shape=="ellipse"?qo(pt.size)+10:pt.shape=="rect"?10:null}).attr("width",function(pt){return pt.shape=="rect"?3*(qo(pt.size)-6):2*(qo(pt.size)-6)}).attr("height",function(pt){return pt.shape=="rect"?1.5*(qo(pt.size)-6):2*(qo(pt.size)-6)}).attr("fill",function(pt){return pt.colorType?vs[pt.colorType-1]:pt.color||"url(#radialGradient-1)"}).attr("color",function(pt){return pt.color||"#2E8B57"}).attr("class",function(pt){return"node-circle node-circle-".concat(pt.id," transition-opacity duration-500")}).attr("id",function(pt){return"node-circle".concat(pt.id)}).style("cursor","pointer").on("mouseover",function(pt,Mt){var Tt=Mt.activeColor||"#008FFF";pt.target.setAttribute("stroke",Tt),pt.target.setAttribute("stroke-width","8")}).on("mouseout",function(pt){pt.target.setAttribute("stroke-width","0")}).append("title").text(function(pt){return pt.name}),Ve.selectAll(".node-circle")}function qo(Ve){var et=32;switch(Ve){case 0:et=23;break;case 1:et=26;break;case 2:default:et=32;break;case 3:et=38}return et}function Ns(Ve,et){return Ve.selectAll("text").remove(),Ve.selectAll("text").data(et,function(it){return it.id}).enter().append("text").attr("dy",".35em").attr("text-anchor","middle").attr("pointer-events","none").style("fill","#fff").style("font-size","10px").style("text-anchor","middle").attr("class",function(it){return"node-text node-circle node-circle--text-".concat(it.id," node-text-").concat(it.id," transition-opacity duration-500")}).style("cursor","pointer").append("svg:title").text(function(it){return it.name}),Ve.selectAll("text").style("display",function(it){return it.hide?"none":"block"}),Ve.selectAll("text").attr("d",function(it){it.shape=="rect"?br(".node-circle--text-".concat(it.id)).append("tspan").style("cursor","pointer").append("tspan").text(function(pt){return pt.name}):$a(it.name,qo(it.size)).forEach(function(pt,Mt){br(".node-circle--text-".concat(it.id)).append("tspan").style("cursor","pointer").attr("class",function(Tt){return"node-circle--tspan-".concat(Tt.id,"-").concat(Mt)}).attr("x",pt.x).attr("y",pt.y).text(function(){return pt.text})})}),Ve.selectAll("text")}function ns(Ve){var et=arguments.length>1&&arguments[1]!==void 0&&arguments[1],it=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],pt=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},Mt=pt._ops,Tt=br("body"),jt=[];if(et&&Mt.isShowBatchOperation)return it.push(Ve.id),br("".concat(Mt.containerName)).style("background","#5e5e5e"),it.forEach(function(Tn){jt.push(Tt.select("".concat(Mt.containerName," .node-circle-").concat(Tn)).attr("color"))}),Tt.selectAll("".concat(Mt.containerName," .node-circle")).attr("fill","#3c3b3b"),it.forEach(function(Tn,hn){Tt.select("".concat(Mt.containerName," .node-circle-").concat(Tn)).attr("fill",jt[hn])}),void br(".graph-bath").style("display","block");if(Mt.isShowMask){var kt=[],en=[];Mt.links.map(function(Tn){Tn.source.id==Ve.id&&(kt.push(Tn.target.id),en.push(Tn.source.id+Tn.target.id)),Tn.target.id==Ve.id&&(kt.push(Tn.source.id),en.push(Tn.source.id+Tn.target.id))});var Vt=ys(kt),un=ys(en);Vt.push(Ve.id),Tt.selectAll("".concat(Mt.containerName," .line-item")).style("display","none"),br("".concat(Mt.containerName)).style("background","#5e5e5e"),Vt.forEach(function(Tn){jt.push(Tt.select("".concat(Mt.containerName," .node-circle-").concat(Tn)).attr("color"))}),Tt.selectAll("".concat(Mt.containerName," .node-circle")).attr("fill","#3c3b3b"),Vt.forEach(function(Tn,hn){Tt.select("".concat(Mt.containerName," .node-circle-").concat(Tn)).attr("fill",jt[hn])}),un.forEach(function(Tn){Tt.selectAll("".concat(Mt.containerName," .line-item-").concat(Tn)).style("display",function(hn){return hn.hide?"none":"block"})})}}var Zo=[],il={addPath:function(Ve){Ve.forEach(function(et){var it=Zo.indexOf(et);it!=-1&&Zo.splice(it,1),Zo.unshift(et)})},getPath:function(){return Zo},clearPath:function(){Zo.length=0}};function Ps(Ve,et,it,pt){return Rt.apply(this,arguments)}function Rt(){return Rt=ci(Or().mark(function Ve(et,it,pt,Mt){var Tt;return Or().wrap(function(jt){for(;;)switch(jt.prev=jt.next){case 0:return Tt=pt._ops,jt.delegateYield(Or().mark(function kt(){var en,Vt,un,Tn,hn,gn,cn,bn,Wn,_n,Qn,ir,xr,ia,ea,Xa,xa,Pa,Pr,oa,hi,ar,Mr,sa,da,Ra,la,na,vi,mi;return Or().wrap(function(_r){for(;;)switch(_r.prev=_r.next){case 0:_r.t0=et,_r.next=_r.t0==="remove"?3:_r.t0==="hide"?19:_r.t0==="contraction"?22:_r.t0==="extend"?42:_r.t0==="editSize"?62:_r.t0==="editColor"?71:_r.t0==="editShape"?79:_r.t0==="extend-path"?87:_r.t0==="contraction-path"?96:100;break;case 3:en=0;case 4:if(!(en1?la[1]:null)&&dn.contractionPath(na,la,pt),dn.extendPath(Ra,pt),dn.previousStep.id=Ra,dn.previousStep.operate="extend",pt.update(),_r.abrupt("break",100);case 96:return vi=it[0],(mi=il.getPath()).indexOf(vi)!=-1&&(dn.contractionPath(vi,mi,pt),dn.previousStep.operate=="extend"&&dn.previousStep.id!=vi?(dn.extendPath(dn.previousStep.id,pt),dn.previousStep.operate="extend"):(dn.previousStep.id=vi,dn.previousStep.operate="contraction"),pt.update()),_r.abrupt("break",100);case 100:case"end":return _r.stop()}},kt)})(),"t0",2);case 2:br(Tt.containerName).style("background",Tt.background);case 3:case"end":return jt.stop()}},Ve)})),Rt.apply(this,arguments)}var Wt,dn={extendPath:function(Ve,et){for(var it=et._ops,pt=it.nodes,Mt=it.links,Tt=[],jt=[],kt=0;kt0)for(var un=0;un1&&arguments[1]!==void 0?arguments[1]:{};Wt=Ve,et._linkContainer.selectAll(".connect-item")._groups[0].length||et._linkContainer.append("g").attr("class","connect-item").append("path").attr("stroke-width",2).attr("stroke","#5e5ef0").attr("class","connect-item-inner"),br("".concat(et._ops.containerName)).on("mousemove",function(it){Un(it,et)})}function Un(Ve,et){var it,pt,Mt,Tt=(it=et._linkContainer._groups[0][0].parentNode.attributes.transform,{translate:(Mt=(pt=it)&&/translate/.test(pt.value)&&/scale/.test(pt.value)&&pt.value.match(/translate\(([^\)]+)\)\s?scale\(([^\)]+)/))&&Mt[1].split(",")||[0,0],scale:Mt&&Mt[2]||1}),jt=Tt.translate,kt=Tt.scale;et._linkContainer.selectAll(".connect-item-inner").attr("d",function(){return"M".concat(Wt.x,", ").concat(Wt.y," L").concat(Ve.offsetX/kt-jt[0]/kt,", ").concat(Ve.offsetY/kt-jt[1]/kt)})}function cr(Ve){return Array.isArray(Ve[0])?{message:"success",done:function(et){for(var it=0;it1&&arguments[1]!==void 0?arguments[1]:"order",it=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1,pt=arguments.length>3&&arguments[3]!==void 0?arguments[3]:1,Mt=arguments.length>4&&arguments[4]!==void 0?arguments[4]:1,Tt=!0;return pt==1&&Ve.length%2==0&&(Tt=!1),Ve.map(function(jt,kt){jt._level=pt,jt._value=pt==1?kt+1:kt+1+(it-1)*Ve.length,jt._parent=pt==2?1:Mt,jt._site=pt!=1||Tt?et:kt=Wn/2){var ia=ir.startAngle;ir.startAngle=ir.endAngle,ir.endAngle=ia}return ir})):(Wn=Vt._level==1?Vt.children.length*Tn._toolbarData.length:Vt.children.length*Vt._num,bn=zt()(new Array(Wn).fill(1)).map(function(ir){if(Vt._site=="left"){var xr=ir.startAngle;ir.startAngle=ir.endAngle,ir.endAngle=xr}return ir})),un._num=bn.length;var Qn=Vt._value;return un._site=="left"?(_n=bn.slice(bn.length/2,bn.length),Qn=Vt._value-Vt._num/2):_n=bn.slice(0,bn.length/2),hn=Oi(_n,_n.length/(Vt._num/2))[Qn-1],Vt._level==0&&(hn=bn),hn}(it,Tt,pt),en=Zr(kt[jt].startAngle,kt[jt].endAngle);return function(Vt){return Yr?function(un,Tn,hn,gn,cn,bn,Wn,_n){var Qn=Fi(hn[Wn].startAngle,Tn(un),cn._level+1,cn._level+2,_n),ir=Qn.centroid(hn[Wn]);return gn[Wn].setAttribute("x",ir[0]-6),gn[Wn].setAttribute("y",ir[1]-6),_n._operationContainer.selectAll("".concat(bn," .pie-icon")).transition().delay(150).styleTween("display",function(){return Yi("none",Yr?"block":"none")}),Qn()}(Vt,en,kt,Mt,it,et,jt,pt):""}})}}}]),Ve}();function Wa(Ve){Ve.selectAll(".arc-item .pie-item").interrupt().attr("d",null),Ve.selectAll(".arc-item .pie-icon").interrupt().style("display","none"),Ve.style("display","none"),Ve.selectAll(".operation-item").attr("transform",function(){return"rotate(0)"}),Yr=!1}var Fi=function(Ve,et){var it=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1,pt=arguments.length>3&&arguments[3]!==void 0?arguments[3]:2,Mt=arguments.length>4?arguments[4]:void 0;return Ru().innerRadius(it*Mt.containerSize+2).outerRadius(pt*Mt.containerSize).padAngle(.02).startAngle(Ve).endAngle(et)};function fi(){return fi=ci(Or().mark(function Ve(et,it,pt){var Mt,Tt,jt;return Or().wrap(function(kt){for(;;)switch(kt.prev=kt.next){case 0:kt.t0=et.type,kt.next=kt.t0==="connect"?3:kt.t0==="unlocked"?8:33;break;case 3:return ha.length=0,Aa=!0,ha.push(it),Gn(it,pt._example),kt.abrupt("break",36);case 8:Tt=No(pt._example._ops.nodes),kt.prev=9,Tt.s();case 11:if((jt=Tt.n()).done){kt.next=19;break}if((Mt=jt.value).id!=it.id){kt.next=17;break}return Mt.fx=null,Mt.fy=null,kt.abrupt("break",19);case 17:kt.next=11;break;case 19:kt.next=24;break;case 21:kt.prev=21,kt.t1=kt.catch(9),Tt.e(kt.t1);case 24:return kt.prev=24,Tt.f(),kt.finish(24);case 27:return pt._example._simulation._simulation.nodes(pt._example._ops.nodes),pt._example._simulation._simulation.alphaTarget(.08).restart(),setTimeout(function(){pt._example._simulation._simulation.alphaTarget(0)},300),kt.next=32,et.click(it);case 32:return kt.abrupt("break",36);case 33:return kt.next=35,et.click({node:it});case 35:Ps(et.type,[it.id],pt._example);case 36:Ar=null,Wa(pt._operationContainer);case 38:case"end":return kt.stop()}},Ve,null,[[9,21,24,27]])})),fi.apply(this,arguments)}function bi(){return(bi=ci(Or().mark(function Ve(et,it){var pt,Mt,Tt;return Or().wrap(function(jt){for(;;)switch(jt.prev=jt.next){case 0:return br(".graph-container").on("mousemove",null),Aa=!1,ha.push(et),Mt={node:et,connects:(pt=[]).concat.apply(pt,ha)},jt.next=6,ta.click(Mt);case 6:Tt=jt.sent,cr(Tt||[ha.splice(0)]).done(it),ns(Mt.connects[0],!1,[],it),ha.length=0;case 11:case"end":return jt.stop()}},Ve)}))).apply(this,arguments)}function Oi(Ve,et){for(var it=[],pt=0;pt4&&arguments[4]!==void 0?arguments[4]:1,Tt=arguments.length>5&&arguments[5]!==void 0?arguments[5]:7,jt=arguments.length>6&&arguments[6]!==void 0?arguments[6]:7;this.deflection=pt;var kt=function(la){return la*la},en=this.deflection*Math.PI/180,Vt={x:Math.cos(en)*Ve,y:Math.sin(en)*Ve},un=Ve/(et+jt),Tn=-it*un/(1-un),hn=function(la,na,vi,mi){var _r=la.y/(la.x-Tn),Zi=la.y-_r*la.x,qi=1+kt(_r),$o=2*(_r*Zi-vi),cs=kt(Zi)+kt(vi)-kt(na),Rs={x:(-$o+mi*Math.sqrt(kt($o)-4*qi*cs))/(2*qi)};return Rs.y=(Rs.x-Tn)*_r,Rs},gn=hn(Vt,et+jt,it,-1),cn=-Vt.x/Vt.y,bn=Vt.y+kt(Vt.x)/Vt.y,Wn=-(gn.x-it)/gn.y,_n=gn.y+(gn.x-it)*gn.x/gn.y,Qn=(bn-_n)/(Wn-cn),ir=cn*Qn+bn,xr=Math.sqrt(kt(Qn-Vt.x)+kt(ir-Vt.y)),ia=Math.atan2(Vt.x-Qn,ir-Vt.y),ea=Math.atan2(gn.x-Qn,ir-gn.y),Xa=(ia+ea)/2;this.deflection>0&&(Xa+=Math.PI);var xa=ea-ia;this.deflection>0&&(xa=2*Math.PI-xa),this.shaftLength=xa*xr,ia>ea&&(this.shaftLength=0),this.midShaftPoint={x:Qn+xr*Math.sin(Xa),y:ir-xr*Math.cos(Xa)};var Pa=function(la){var na=(la<0?1:-1)*Math.sqrt(kt(la)/(1+kt(cn))),vi=cn*na;return{x:Vt.x+na,y:Vt.y+vi}},Pr=function(la){var na=(la<0?-1:1)*Math.sqrt(kt(la)/(1+kt(Wn))),vi=Wn*na;return{x:gn.x+na,y:gn.y+vi}},oa=function(la,na){return{x:Qn+(xr+na)*Math.sin(la),y:ir-(xr+na)*Math.cos(la)}},hi=function(la){var na=(la<0?-1:1)*Math.sqrt(kt(la)/(1+kt(1/Wn))),vi=na/Wn;return{x:gn.x+na,y:gn.y-vi}},ar=function(la){return la.x+","+la.y},Mr=Mt/2,sa=Tt/2,da=Vt.y>0?0:1,Ra=Vt.y<0?0:1;this.outline=function(){if(ia>ea)return["M",ar(Pr(-sa)),"L",ar(hi(jt)),"L",ar(Pr(sa)),"Z"].join(" ");var la=Xa-0,na=Xa+0;return["M",ar(Pa(Mr)),"L",ar(Pa(-Mr)),"A",xr-Mr,xr-Mr,0,0,da,ar(oa(la,-Mr)),"L",ar(oa(la,Mr)),"A",xr+Mr,xr+Mr,0,0,Ra,ar(Pa(Mr)),"Z","M",ar(oa(na,Mr)),"L",ar(oa(na,-Mr)),"A",xr-Mr,xr-Mr,0,0,da,ar(Pr(-Mr)),"L",ar(Pr(-sa)),"L",ar(hi(jt)),"L",ar(Pr(sa)),"L",ar(Pr(Mr)),"A",xr+Mr,xr+Mr,0,0,Ra,ar(oa(na,Mr))].join(" ")}}function ri(Ve,et,it){var pt=arguments.length>3&&arguments[3]!==void 0?arguments[3]:8,Mt=arguments.length>4&&arguments[4]!==void 0?arguments[4]:1,Tt=arguments.length>5&&arguments[5]!==void 0?arguments[5]:7,jt=arguments.length>6&&arguments[6]!==void 0?arguments[6]:7,kt=it*Math.PI/180,en=Ve,Vt=Ve+jt,un=Ve+et,Tn=un*Math.tan(kt/2),hn=Mt/2;function gn(Qn,ir){return Qn+","+ir}this.shaftLength=3*Tn+Mt;var cn=function(Qn,ir,xr){var ia=ir*Math.tan(kt/2),ea=ir/Math.cos(kt/2);return gn((ia+xr)*Math.sin(Qn),ea+(ia+xr)*Math.cos(Qn))},bn=function(){var Qn=cn(0,un,hn+pt/2+2).split(",");return{x:Qn[0],y:Qn[1]}};this.midShaftPoint=bn();var Wn=function(Qn,ir){return cn((Math.PI+kt)/2,Qn,ir)},_n=function(Qn,ir){return cn(-(Math.PI+kt)/2,Qn,ir)};this.outline=function(){var Qn=Tn-hn,ir=Tn+hn;return["M",Wn(en,hn),"L",Wn(un,hn),"A",ir,ir,0,1,1,_n(un,hn),"L",_n(Vt,hn),"L",_n(Vt,-Tt/2),"L",_n(en,0),"L",_n(Vt,Tt/2),"L",_n(Vt,-hn),"L",_n(un,-hn),"A",Qn,Qn,0,1,0,Wn(un,-hn),"L",Wn(en,-hn),"Z"].join(" ")}}function Ci(Ve,et,it){var pt=arguments.length>3&&arguments[3]!==void 0?arguments[3]:1,Mt=arguments.length>4&&arguments[4]!==void 0?arguments[4]:7,Tt=arguments.length>5&&arguments[5]!==void 0?arguments[5]:7;this.length=it-(Ve+et),this.shaftLength=this.length-Tt;var jt=Ve,kt=jt+this.shaftLength,en=jt+this.length,Vt=pt/2,un=Mt/2;this.midShaftPoint={x:jt+this.shaftLength/2,y:0},this.outline=function(){var Tn=0,hn=0;return["M",jt,Vt,"L",Tn,Vt,"L",Tn,-Vt,"L",jt,-Vt,"Z","M",hn,Vt,"L",kt,Vt,"L",kt,un,"L",en,0,"L",kt,-un,"L",kt,-Vt,"L",hn,-Vt,"Z"].join(" ")}}function ii(){}var Va=new ii;function Za(Ve,et){this.relationships=[],Ve.idpt)return it;var Mt=Math.ceil((pt-et)/12);return it.length-Mt<=0?"":it.substr(0,it.length-Mt)+"\u2026"}},ii.prototype.distributeAnglesForLoopArrows=function(Ve,et){for(var it,pt=0,Mt=Array.from(Ve);pt0){var hn=void 0,gn=void 0,cn={start:0,end:0};for(Tt=0;Ttcn.end-cn.start&&(cn.start=gn,cn.end=hn);for(jt=(cn.end-cn.start)/(it.relationships.length+1),Tt=0;Tt150?150/Vt:30,Tn=0;Tnhn.x&&(Tt=hn.x),jthn.y&&(kt=hn.y),en=hn)){(Qn.data!==jt||Qn.next)&&(ea===0&&(Pa+=(ea=su(kt))*ea),Xa===0&&(Pa+=(Xa=su(kt))*Xa),Pa_n+sa||oa<_n-sa||Pr>Qn+sa||hiWn.index){var da=_n-ar.x-ar.vx,Ra=Qn-ar.y-ar.vy,la=da*da+Ra*Ra;lacn.r&&(cn.r=cn[bn].r)}function gn(){if(jt){var cn,bn,Wn=jt.length;for(kt=new Array(Wn),cn=0;cn3&&arguments[3]!==void 0?arguments[3]:1,Tt=pt.benchmark,jt=pt.height,kt=pt.width,en=pt.isResize,Vt=pt.layout,un=Vt.distance?Vt.distance:Math.min(jt,kt)/2-80,Tn=tf(it).iterations(.05).id(function(hn){return hn[Tt]}).distance(function(){return it.length<=5&&en?100:it.length<=20&&en?un:it.length<=60?180:230});this._simulation.nodes(et).force("link",Tn).velocityDecay(.2).alpha(Mt).alphaDecay(.08),this._simulation.restart()}},{key:"addSimulationEvent",value:function(et,it,pt,Mt){var Tt=this,jt=di(et,3),kt=jt[0],en=jt[1],Vt=jt[2];this._simulation.on("tick",function(){return Va.layoutRelationships(Mt),Tt._root.layout.force&&Va.layoutNodes(Tt._root),kt.attr("transform",function(un){return"translate("+un.source.x+" "+un.source.y+") rotate("+(un.naturalAngle-180)+")"}),en.attr("d",function(un){return un.arrow.outline(un)}),Vt.attr("x",function(un){return un.arrow.midShaftPoint.x}).attr("y",function(un){return un.arrow.midShaftPoint.y+13}).attr("transform",function(un){return un.naturalAngle<90||un.naturalAngle>270?"rotate(180 "+un.arrow.midShaftPoint.x+" "+un.arrow.midShaftPoint.y+")":null}).text(function(un){return un.shortCaption}),it.attr("cx",function(un){return un.x}).attr("cy",function(un){return un.y}).attr("x",function(un){return un.shape=="rect"?un.x-Vo(un.size):un.x-un.size+6}).attr("y",function(un){return un.shape=="rect"?un.y-Vo(un.size)/1.5:un.y-un.size+6}),void pt.attr("x",function(un){return $a(un.name,Vo(un.size)).forEach(function(Tn,hn){br(".node-circle--tspan-".concat(un.id,"-").concat(hn)).attr("x",un.x).attr("y",Tn.y+un.y)}),un.x}).attr("y",function(un){return un.y})})}},{key:"drag",value:function(){var et=this;return function(){var it,pt,Mt,Tt,jt=oi,kt=pr,en=vr,Vt=li,un={},Tn=Fe("start","drag","end"),hn=0,gn=0;function cn(ea){ea.on("mousedown.drag",bn).filter(Vt).on("touchstart.drag",Qn).on("touchmove.drag",ir,Da).on("touchend.drag touchcancel.drag",xr).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function bn(ea,Xa){if(!Tt&&jt.call(this,ea,Xa)){var xa=ia(this,kt.call(this,ea,Xa),ea,Xa,"mouse");xa&&(br(ea.view).on("mousemove.drag",Wn,Ya).on("mouseup.drag",_n,Ya),Ii(ea.view),Ba(ea),Mt=!1,it=ea.clientX,pt=ea.clientY,xa("start",ea))}}function Wn(ea){if(Ia(ea),!Mt){var Xa=ea.clientX-it,xa=ea.clientY-pt;Mt=Xa*Xa+xa*xa>gn}un.mouse("drag",ea)}function _n(ea){br(ea.view).on("mousemove.drag mouseup.drag",null),wi(ea.view,Mt),Ia(ea),un.mouse("end",ea)}function Qn(ea,Xa){if(jt.call(this,ea,Xa)){var xa,Pa,Pr=ea.changedTouches,oa=kt.call(this,ea,Xa),hi=Pr.length;for(xa=0;xa `;Be.createContainer=class{constructor(Ve){var et=["style","innerHTML","body","absolute","append","defsvg","div","createElement","zIndex"],it=function(kt,en){kt=kt-0;var Vt=et[kt];return Vt};if(!document.getElementById("defsvg")){var pt=document[it("0x7")](it("0x6"));pt.id=it("0x5"),pt[it("0x1")]=yi,pt[it("0x0")].position=it("0x3"),pt.style.top="-10000px",pt[it("0x0")][it("0x8")]=-1,document[it("0x2")][it("0x4")](pt)}Fr.prototype.addElement=function(kt){for(var en=arguments.length,Vt=new Array(en>1?en-1:0),un=1;un2&&arguments[2]!==void 0?arguments[2]:.1,bn=arguments.length>3&&arguments[3]!==void 0?arguments[3]:15,Wn=Nr().scaleExtent([cn,bn]).on("zoom",function(_n){gn.attr("transform",_n.transform)});jt.zoom=Wn,hn.call(Wn),gn.on("dblclick.zoom",null),hn.on("dblclick.zoom",null)}(un,Tn,Vt.zoomOptions.minScale,Vt.zoomOptions.maxScale)}(Mt,this),this._simulation=new _i(this),this._pie=new Oa(this),this.update()}addNode(Ve){(function(et,it){it._ops.nodes.push(et),it.update()})(Ve,this)}zoomIn(){br(this._ops.containerName).select("svg").transition().duration(750).call(this.zoom.scaleBy,1.2)}zoomOut(){br(this._ops.containerName).select("svg").transition().duration(750).call(this.zoom.scaleBy,.8)}toggleNode(Ve){if(!this._ops.clickToggle)return;var et=this._ops.nodes,it=this._ops.links;Ve.isExtendedState=!Ve.isExtendedState;var pt=!Ve.isExtendedState,Mt=[Ve.id];function Tt(jt,kt,en){en.forEach(Vt=>{if(Vt.source.id===jt){Vt.hide=pt;const un=kt.find(Tn=>Tn.id===Vt.target.id);un&&(un.hide=pt,Mt.push(un.id),Tt(un.id,kt,en))}})}setTimeout(()=>{Mt.forEach(jt=>{it.forEach(kt=>{(kt.source.id===jt||kt.target.id===jt)&&kt.target.id!==Ve.id&&(kt.hide=pt)})}),this.update()},100),Tt(Ve.id,et,it)}showAllNodes(){this._ops.nodes.forEach(Ve=>{Ve.hide=!1}),this._ops.links.forEach(Ve=>{Ve.hide=!1}),this.update()}deleteNode(Ve){(function(et,it){it._ops.nodes=it._ops.nodes.filter(function(pt){return pt.id!==et.id}),it._ops.links=it._ops.links.filter(function(pt){return pt.source.id!==et.id&&pt.target.id!==et.id}),it.update(),Wa(it.operationContainer)})(Ve,this)}scrollToNode(Ve){const it=document.querySelector(this._ops.containerName+" svg").querySelector("g.graph-box"),pt=this._ops.nodes.find(un=>un.id===Ve);if(!pt)return;const Mt=pt.x,Tt=pt.y,jt=1287,kt=596,en=jt/2-Mt,Vt=kt/2-Tt;it.setAttribute("transform",`translate(${en}, ${Vt})`)}selectToNode(Ve){const et=document.querySelector(this._ops.containerName+" svg");document.body.querySelectorAll("circle.node-circle").forEach(it=>{it.classList.remove("highlightNode")}),Ve&&et.querySelector(".node-circle-"+Ve).classList.add("highlightNode")}update(Ve=!0,et={}){var it,pt;this._pie.showPie("");const Mt=this._ops.nodes,Tt=this._ops.links,jt=this._nodeContainer.addElement(Ko,Mt,this),kt=this._linkContainer.addElement(Sn,Tt,this),en=this._textContainer.addElement(Ns,Mt);jt.on("click",(hn,gn)=>Ie(this,null,function*(){this.toggleNode(gn);const cn=yield this._ops.nodeClick(gn);if(cn){const{type:bn,id:Wn}=cn;Ps(bn,Wn,this)}})),this._ops.isCustomMouse&&(jt.on("mouseover",(hn,gn)=>Ie(this,null,function*(){yield this._ops.nodeMouseover(gn)})),jt.on("mouseout",()=>Ie(this,null,function*(){yield this._ops.nodeMouseout()}))),jt.on("contextmenu",(hn,gn)=>{hn.preventDefault(),this._pie.showPie(gn,hn)}),jt.call(this._simulation.drag());const Vt=(it=document.querySelector(this._ops.containerName))===null||it===void 0?void 0:it.clientWidth,un=(pt=document.querySelector(this._ops.containerName))===null||pt===void 0?void 0:pt.clientHeight,Tn=document.getElementsByClassName(`${this._ops.containerName}-graph-container`)[0];Tn&&Vt&&un&&(this._ops.width=Vt,this._ops.height=un,Tn.setAttribute("viewBox",`0 0 ${Vt} ${un}`)),Ve?this._simulation.updateSimulation(Mt,Tt,this._ops):this._simulation.updateSimulation(Mt,Tt,this._ops,.1),this._simulation.addSimulationEvent(kt,jt,en,Tt),function(hn,gn){var cn=["object","function","undefined"];if(Ca(gn)!=="object")return hn;for(var bn in gn)cn.indexOf(Ca(gn[bn]))===-1&&(hn[bn]=gn[bn])}(this._ops,et),Object.getOwnPropertyNames(et).length&&this._updateBaseTheme()}_updateBaseTheme(){br(this._ops.containerName).style("background",this._ops.background)}},Be.storage=il,Object.defineProperty(Be,"__esModule",{value:!0})})},25676:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Ax:function(){return Ce},Ds:function(){return _e},KI:function(){return ge},SI:function(){return Fe},f1:function(){return He}});var Be=Ie(11662);function He(Ae){let be=!0;if(Ae.length>0){for(let we=0;wenew Promise((te,ne)=>{var le=he=>{try{de(ce.next(he))}catch(ie){ne(ie)}},oe=he=>{try{de(ce.throw(he))}catch(ie){ne(ie)}},de=he=>he.done?te(he.value):Promise.resolve(he.value).then(le,oe);de((ce=ce.apply(ye,xe)).next())}),pe=({data:ye,className:xe,fullWidth:ce,style:te={},onClose:ne,onOk:le,showFullTools:oe,noAssociationId:de})=>{const he=(0,Be.useRef)(null),ie=(0,Be.useRef)(null),ue=(0,Be.useRef)(null),ve=(0,Be.useRef)(null),[Se,De]=(0,Be.useState)(!1),[Re,Ne]=(0,Be.useState)("\u6B63\u5728\u52A0\u8F7D\u4E2D");(0,Be.useEffect)(()=>{ue.current||(ue.current=document.createElement("style"),document.head.appendChild(ue.current)),ye!=null&&ye.visible?(document.body.setAttribute("data-custom","y-hidden"),ue.current.innerHTML=" html { overflow-y: hidden; }",ye!=null&&ye.src&&ze()):(document.body.removeAttribute("data-custom"),ue.current&&(document.head.removeChild(ue.current),ue.current=null))},[ye==null?void 0:ye.visible]);const ze=()=>be(void 0,null,function*(){De(!0),Ne("\u6B63\u5728\u52A0\u8F7D\u4E2D");const $e=yield(0,Ae.ZJ)(ye==null?void 0:ye.src);he.current.src="",he.current.src=$e,he.current.onload=function(){nt()},De(!1),Ne("")}),Ge=()=>{document.body.removeAttribute("data-custom"),ue.current.innerHTML=" ",ne()},Xe=$e=>be(void 0,null,function*(){De(!0),Ne("\u6B63\u5728\u4FDD\u5B58\u4E2D");const qe=yield(0,ge.ZP)("/api/attachments.json",{method:"post",body:{file_type:"base64",original_filename:ye.title,file:$e.dataUrl}});qe!=null&&qe.id&&!de?(yield(0,ge.ZP)(`/api/attachments/${ye.id}/add_subitem.json`,{method:"post",body:{subitem_id:qe==null?void 0:qe.id,settings:JSON.stringify($e.state)}})).status===0&&le():qe!=null&&qe.id&&le(qe),document.body.removeAttribute("data-custom"),ue.current.innerHTML=" ",De(!1),Ne("")}),Qe=()=>{const $e=document.querySelector('a[href="https://markerjs.com/"]');$e&&$e.parentNode&&($e.parentNode.style.display="none"),[{name:'[data-action="select"]',title:"\u9009\u62E9"},{name:'[data-action="delete"]',title:"\u5220\u9664\u5143\u7D20"},{name:'[data-action="undo"]',title:"\u64A4\u9500"},{name:'[data-type-name="FrameMarker"]',title:"\u77E9\u5F62"},{name:'[data-type-name="FreehandMarker"]',title:"\u753B\u7EBF"},{name:'[data-type-name="ArrowMarker"]',title:"\u7BAD\u5934"},{name:'[data-type-name="TextMarker"]',title:"\u6587\u672C"},{name:'[data-type-name="EllipseMarker"]',title:"\u692D\u5706"},{name:'[data-type-name="HighlightMarker"]',title:"\u65B9\u5757"},{name:'[data-type-name="CalloutMarker"]',title:"\u6CE8\u91CA"},{name:'[data-action="render"]',title:"\u4FDD\u5B58"},{name:'[data-action="close"]',title:"\u9000\u51FA"}].forEach(ot=>{const at=document.querySelector(ot.name);at&&at.setAttribute("title",ot.title)})},nt=()=>{ie.current=new Pe.hP(he.current),ie.current.targetRoot=ve.current,ie.current.addEventListener("render",Xe),ie.current.addEventListener("beforeclose",Ge),oe&&(ie.current.availableMarkerTypes=ie.current.ALL_MARKER_TYPES,ie.current.uiStyleSettings.redoButtonVisible=!0,ie.current.uiStyleSettings.notesButtonVisible=!0,ie.current.uiStyleSettings.zoomButtonVisible=!0,ie.current.uiStyleSettings.zoomOutButtonVisible=!0,ie.current.uiStyleSettings.clearButtonVisible=!0),window.markerArea=ie.current.uiStyleSettings,ie.current.show(),ye!=null&&ye.snapshotData&&ie.current.restoreState(ye.snapshotData),setTimeout(()=>{window.scrollTo(0,0),Qe()},300)};return Be.createElement(Be.Fragment,null,(ye==null?void 0:ye.visible)&&Be.createElement(_e.Z,{spinning:Se,tip:Re,style:{position:"absolute"}},Be.createElement("div",{ref:ve,className:Ce()(He.imageDimensions,xe,ce?He.fullWidth:""),style:te},Be.createElement("img",{className:He.img,ref:he}))))}},50892:function(St,Dt,Ie){"use strict";var Be=Ie(59301),He=Ie(95237),Fe=Ie(43604),Ce=Ie(99313),_e=Ie(3113),Pe=Ie(8658),ge=Ie(89722),Ae=Ie(48136),be=Ie(59301);const we=(0,Be.forwardRef)(({callback:pe,showSaveButton:ye,value:xe=""},ce)=>{const te=(0,Be.useRef)(),ne=[{name:"\u5206\u6570\u5F97\u5206",value:"\\frac{x}{y}",children:[{name:"\u5206\u6570 Fractions",data:[{value:"\\frac{a}{b}"},{value:"x\\tfrac{x}{a} "},{value:"\\mathrm{d}t"},{value:"\\partial t"},{value:"\\frac{\\partial y}{\\partial x}"},{value:"\\nabla\\psi"},{value:"\\frac{\\partial^2}{\\partial x_1\\partial x_2}y"},{value:"\\cfrac{1}{a + \\cfrac{7}{b + \\cfrac{2}{9}}} = c"}]},{name:"\u5BFC\u6570 Derivative",data:[{value:"\\dot{a} "},{value:"\\ddot{a}"},{value:"{f}^{\\prime}"},{value:"{f}^{\\prime\\prime}"},{value:"{f}^{(n)}"}]},{name:"\u6A21\u7B97\u672F Modular arithmetic",data:[{value:"a \\bmod b"},{value:"a \\equiv b \\pmod{m} "},{value:"\\gcd(m, n) "},{value:"\\operatorname{lcm}(m, n) "}]}]},{name:"\u6839\u5F0F\u89D2\u6807",value:"\\sqrt{x}",children:[{name:"\u6839\u5F0F Radicals",data:[{value:"\\sqrt{x}"},{value:"\\sqrt[y]{x}"}]},{name:"\u4E0A\u4E0B\u6807 Sub&Super",data:[{value:"x^{a}"},{value:"x_{a}"},{value:"x_{a}^{b} "},{value:"_{a}^{b} x"},{value:"x_{a}^{b} "}]},{name:"\u91CD\u97F3\u7B26\u53CA\u5176\u4ED6 Accents and Others",data:[{value:"\\hat{a} "},{value:"\\sqrt[y]{x}"},{value:"\\check{} "},{value:"\\grave{a} "},{value:"\\acute{a}"},{value:"\\tilde{a}"},{value:"\\breve{a}"},{value:"\\bar{a}"},{value:"\\vec{a}"},{value:"\\not{a}"},{value:"\\widetilde{abc}"},{value:"\\widehat{abc}"},{value:"\\overleftarrow{abc} "},{value:"\\overrightarrow{abc}"},{value:"\\overline{abc}"},{value:"\\underline{abc}"},{value:"\\overbrace{abc}"},{value:"\\underbrace{abc}"},{value:"\\overset{a}{abc}"},{value:"\\underset{a}{abc} \\stackrel\\frown{ab}"},{value:"\\overline{ab} "},{value:"\\overleftrightarrow{ab}"},{value:"\\overset{a}{\\leftarrow}"},{value:"\\overset{a}{\\rightarrow}"},{value:"\\xleftarrow[abc]{a}"},{value:"\\xrightarrow[abc]{a} "}]}]},{name:"\u6781\u9650\u5BF9\u6570",value:"\\lim_{x \\to 0}",children:[{name:"\u6781\u9650 Limits",data:[{value:"\\lim a"},{value:"\\lim_{x \\to 0}"},{value:"\\lim_{x \\to \\infty}"},{value:"\\max_b{a}"},{value:"\\min_a{b}"}]},{name:"\u5BF9\u6570\u6307\u6570 Logarithms and exponentials",data:[{value:"\\log_{a}{b}"},{value:"\\lg_{a}{b}"},{value:"\\ln_{a}{b}"},{value:"\\exp a"}]},{name:"\u754C\u9650 Bounds",data:[{value:"\\min x"},{value:"\\sup t"},{value:"\\inf s"},{value:"\\lim u"},{value:"\\limsup w"},{value:"\\dim p"},{value:"\\ker\\phi "}]}]},{name:"\u4E09\u89D2\u51FD\u6570",value:"\\sin a",children:[{name:"\u4E09\u89D2\u51FD\u6570 Trigonometric functions",data:[{value:"\\sin a"},{value:"\\cos a"},{value:"\\tan a"},{value:"\\cot a "},{value:"\\sec a "},{value:"\\csc a "}]},{name:"\u53CD\u4E09\u89D2\u51FD\u6570 Inverse trigonometric functions",data:[{value:"\\sin^{-1}"},{value:"\\cos^{-1}"},{value:"\\tan^{-1}"},{value:"\\cot^{-1}"},{value:"\\sec^{-1}"},{value:"\\csc^{-1}"},{value:"\\arcsin a"},{value:"\\arccos a"},{value:"\\arctan a"},{value:"\\operatorname{arccot} a"},{value:"\\operatorname{arcsec} a"},{value:"\\operatorname{arccsc} a"}]},{name:"\u53CC\u66F2\u51FD\u6570 Hyperblic functions",data:[{value:"\\sinh a"},{value:"\\cosh a"},{value:"\\tanh a"},{value:"\\coth a"},{value:"\\operatorname{sech} a"},{value:"\\operatorname{csch} a"}]},{name:"\u53CD\u53CC\u66F2\u51FD\u6570 Inverse hyperbolic functions",data:[{value:"\\sinh^{-1}"},{value:"a\\cosh^{-1} a"},{value:"\\tanh^{-1} a"},{value:"\\coth^{-1} a"},{value:"\\operatorname{sech}^{-1} a"},{value:"\\operatorname{csch}^{-1} a"}]}]},{name:"\u79EF\u5206\u8FD0\u7B97",value:"\\int_{a}^{b}",children:[{name:"\u79EF\u5206 Integral",data:[{value:"\\int"},{value:"\\int_{a}^{b}"},{value:"\\int\\limits_{a}^{b}"}]},{name:"\u53CC\u91CD\u79EF\u5206 Double integral",data:[{value:"\\iint"},{value:"\\iint_{a}^{b} "},{value:"\\iint\\limits_{a}^{b} "}]},{name:"\u4E09\u91CD\u79EF\u5206 Triple integral",data:[{value:"\\iiint"},{value:"\\iiint_{a}^{b}"},{value:"\\iiint\\limits_{a}^{b} "}]},{name:"\u66F2\u7EBF\u79EF\u5206 Closed line or path integral",data:[{value:"\\oint"},{value:"\\oint_{a}^{b} "}]}]},{name:"\u5927\u578B\u8FD0\u7B97",value:"\\sum_{a}^{b}",children:[{name:"\u6C42\u548C Summation",data:[{value:"\\sum"},{value:"\\sum_{a}^{b}"},{value:"{\\textstyle \\sum_{a}^{b}} "}]},{name:"\u4E58\u79EF\u4F59\u79EF Product and coproduct",data:[{value:"\\prod"},{value:"\\prod_{a}^{b}"},{value:"{\\textstyle \\prod_{a}^{b}}"},{value:"\\coprod"},{value:"\\coprod_{a}^{b}"},{value:"{\\textstyle \\coprod_{a}^{b}} "}]},{name:"\u5E76\u96C6\u4EA4\u96C6 Union and intersection",data:[{value:"\\bigcup"},{value:"\\bigcup_{a}^{b}"},{value:"{\\textstyle \\bigcup_{a}^{b}}"},{value:"\\bigcap"},{value:"\\bigcap_{a}^{b}"}]},{name:"\u6790\u53D6\u5408\u53D6 Disjunction and conjunction",data:[{value:"\\bigvee"},{value:"\\bigvee_{a}^{b}"},{value:"\\bigwedge"},{value:"\\bigwedge_{a}^{b}"}]}]},{name:"\u62EC\u53F7\u53D6\u6574",value:"\\left [ \\left ( \\right ) \\right ] ",children:[{name:"\u62EC\u53F7 Brackets",data:[{value:"\\left ( \\right )"},{value:"\\left [ \\right ]"},{value:"\\left \\langle \\right \\rangle "},{value:"\\left | \\right | "},{value:"\\left \\lfloor \\right \\rfloor "},{value:"\\left \\lceil \\right \\rceil "}]}]}],le=[{name:"\u4EE3\u6570",value:"\\sqrt{a^2+b^2}",children:[{data:[{value:"\\left(x-1\\right)\\left(x+3\\right) "},{value:"\\sqrt{a^2+b^2}"},{value:"\\left ( \\frac{a}{b}\\right )^{n}= \\frac{a^{n}}{b^{n}}"},{value:"\\frac{a}{b}\\pm \\frac{c}{d}= \\frac{ad \\pm bc}{bd} "},{value:"\\frac{x^{2}}{a^{2}}-\\frac{y^{2}}{b^{2}}=1 "},{value:"\\frac{1}{\\sqrt{a}}=\\frac{\\sqrt{a}}{a},a\\ge 0\\frac{1}{\\sqrt{a}}=\\frac{\\sqrt{a}}{a},a\\ge 0 "},{value:"\\sqrt[n]{a^{n}}=\\left ( \\sqrt[n]{a}\\right )^{n} "},{value:"x ={-b \\pm \\sqrt{b^2-4ac}\\over 2a} "},{value:"y-y_{1}=k \\left( x-x_{1}\\right) "},{value:`\\left\\{\\begin{matrix} \r x=a + r\\text{cos}\\theta \\ \r y=b + r\\text{sin}\\theta \r \\end{matrix}\\right. `},{value:`\\begin{array}{l} \r \\text{\u5BF9\u4E8E\u65B9\u7A0B\u5F62\u5982\uFF1A}x^{3}-1=0 \\ \r \\text{\u8BBE}\\text{:}\\omega =\\frac{-1+\\sqrt{3}i}{2} \\ \r x_{1}=1,x_{2}= \\omega =\\frac{-1+\\sqrt{3}i}{2} \\ \r x_{3}= \\omega ^{2}=\\frac{-1-\\sqrt{3}i}{2} \r \\end{array} `},{value:`\\begin{array}{l} \r a\\mathop{{x}}\\nolimits^{{2}}+bx+c=0 \\ \r \\Delta =\\mathop{{b}}\\nolimits^{{2}}-4ac \\ \r \\left\\{\\begin{matrix} \r \\Delta \\gt 0\\text{\u65B9\u7A0B\u6709\u4E24\u4E2A\u4E0D\u76F8\u7B49\u7684\u5B9E\u6839} \\ \r \\Delta = 0\\text{\u65B9\u7A0B\u6709\u4E24\u4E2A\u76F8\u7B49\u7684\u5B9E\u6839} \\ \r \\Delta \\lt 0\\text{\u65B9\u7A0B\u65E0\u5B9E\u6839} \r \\end{matrix}\\right. \r \\end{array} `},{value:`\\begin{array}{l} \r a\\mathop{{x}}\\nolimits^{{2}}+bx+c=0 \\ \r \\Delta =\\mathop{{b}}\\nolimits^{{2}}-4ac \\ \r \\mathop{{x}}\\nolimits_{{1,2}}=\\frac{{-b \\pm \r \\sqrt{{\\mathop{{b}}\\nolimits^{{2}}-4ac}}}}{{2a}} \\ \r \\mathop{{x}}\\nolimits_{{1}}+\\mathop{{x}}\\nolimits_{{2}}=-\\frac{{b}}{{a}} \\ \r \\mathop{{x}}\\nolimits_{{1}}\\mathop{{x}}\\nolimits_{{2}}=\\frac{{c}}{{a}} \r \\end{array} `}]}]},{name:"\u51E0\u4F55",value:"\\Delta A B C ",children:[{data:[{value:"\\Delta A B C "},{value:"a \\parallel c,b \\parallel c \\Rightarrow a \\parallel b "},{value:"l \\perp \\beta ,l \\subset \\alpha \\Rightarrow \\alpha \\perp \\beta"},{value:`\\left.\\begin{matrix} \r a \\perp \\alpha \\ \r b \\perp \\alpha \r \\end{matrix}\\right\\}\\Rightarrow a \\parallel b`},{value:"P \\in \\alpha ,P \\in \\beta , \\alpha \\cap \\beta =l \\Rightarrow P \\in l "},{value:`\\alpha \\perp \\beta , \\alpha \\cap \\beta =l,a \\subset \\alpha ,a \\perp l \r \\Rightarrow a \\perp \\beta `},{value:`\\left.\\begin{matrix} \r a \\subset \\beta ,b \\subset \\beta ,a \\cap b=P \\ \r a \\parallel \\partial ,b \\parallel \\partial \r \\end{matrix}\\right\\}\\Rightarrow \\beta \\parallel \\alpha `},{value:"\\alpha \\parallel \\beta , \\gamma \\cap \\alpha =a, \\gamma \\cap \\beta =b \\Rightarrow a \\parallel b "},{value:"A \\in l,B \\in l,A \\in \\alpha ,B \\in \\alpha \\Rightarrow l \\subset \\alpha "},{value:`\\left.\\begin{matrix} \r m \\subset \\alpha ,n \\subset \\alpha ,m \\cap n=P \\ \r a \\perp m,a \\perp n \r \\end{matrix}\\right\\}\\Rightarrow a \\perp \\alpha `},{value:`\\begin{array}{c} \r \\text{\u76F4\u89D2\u4E09\u89D2\u5F62\u4E2D,\u76F4\u89D2\u8FB9\u957Fa,b,\u659C\u8FB9\u8FB9\u957Fc} \\ \r a^{2}+b^{2}=c^{2} \r \\end{array}`}]}]},{name:"\u4E0D\u7B49\u5F0F",value:"a > b",children:[{data:[{value:"a > b,b > c \\Rightarrow a > c "},{value:"a > b,c > d \\Rightarrow a+c > b+d "},{value:"a > b > 0,c > d > 0 \\Rightarrow ac bd "},{value:`\\begin{array}{c} \r a \\gt b,c \\gt 0 \\Rightarrow ac \\gt bc \\ \r a \\gt b,c \\lt 0 \\Rightarrow ac \\lt bc \r \\end{array}`},{value:"\\left | a-b \\right | \\geqslant \\left | a \\right | -\\left | b \\right | "},{value:"-\\left | a \\right |\\leq a\\leqslant \\left | a \\right | "},{value:"\\left | a \\right |\\leqslant b \\Rightarrow -b \\leqslant a \\leqslant \\left | b \\right | "},{value:"\\left | a+b \\right | \\leqslant \\left | a \\right | + \\left | b \\right | "},{value:`\\begin{array}{c} \r a \\gt b \\gt 0,n \\in N^{\\ast},n \\gt 1 \\ \r \\Rightarrow a^{n}\\gt b^{n}, \\sqrt[n]{a}\\gt \\sqrt[n]{b} \r \\end{array}`},{value:`\\left( \\sum_{k=1}^n a_k b_k \\right)^{\\!\\!2}\\leq \r \\left( \\sum_{k=1}^n a_k^2 \\right) \\left( \\sum_{k=1}^n b_k^2 \\right) `},{value:`\\begin{array}{c} \r a,b \\in R^{+} \\ \r \\Rightarrow \\frac{a+b}{{2}}\\ge \\sqrt{ab} \\ \r \\left( \\text{\u5F53\u4E14\u4EC5\u5F53}a=b\\text{\u65F6\u53D6\u201C}=\\text{\u201D\u53F7}\\right) \r \\end{array}`},{value:`\\begin{array}{c} \r a,b \\in R \\ \r \\Rightarrow a^{2}+b^{2}\\gt 2ab \\ \r \\left( \\text{\u5F53\u4E14\u4EC5\u5F53}a=b\\text{\u65F6\u53D6\u201C}=\\text{\u201D\u53F7}\\right) \r \\end{array}`},{value:`\\begin{array}{c} \r H_{n}=\\frac{n}{\\sum \\limits_{i=1}^{n}\\frac{1}{x_{i}}}= \\frac{n}{\\frac{1}{x_{1}}+ \\frac{1}{x_{2}}+ \\cdots + \\frac{1}{x_{n}}} \\ G_{n}=\\sqrt[n]{\\prod \\limits_{i=1}^{n}x_{i}}= \\sqrt[n]{x_{1}x_{2}\\cdots x_{n}} \\ A_{n}=\\frac{1}{n}\\sum \\limits_{i=1}^{n}x_{i}=\\frac{x_{1}+ x_{2}+ \\cdots + x_{n}}{n} \\ Q_{n}=\\sqrt{\\sum \\limits_{i=1}^{n}x_{i}^{2}}= \\sqrt{\\frac{x_{1}^{2}+ x_{2}^{2}+ \\cdots + x_{n}^{2}}{n}} \\ H_{n}\\leq G_{n}\\leq A_{n}\\leq Q_{n} \r \\end{array}`}]}]},{name:"\u79EF\u5206",value:"\\frac{\\mathrm{d}\\partial}{\\partial x}",children:[{data:[{value:"\\frac{\\mathrm{d}}{\\mathrm{d}x}x^n=nx^{n-1} "},{value:"\\frac{\\mathrm{d}}{\\mathrm{d}x}e^{ax}=a\\,e^{ax} "},{value:"\\frac{\\mathrm{d}}{\\mathrm{d}x}\\ln(x)=\\frac{1}{x} "},{value:"\\frac{\\mathrm{d}}{\\mathrm{d}x}\\sin x=\\cos x "},{value:"\\frac{\\mathrm{d}}{\\mathrm{d}x}\\cos x=-\\sin x "},{value:"\\int k\\mathrm{d}x = kx+C "},{value:"\\frac{\\mathrm{d}}{\\mathrm{d}x}\\tan x=\\sec^2 x "},{value:"\\frac{\\mathrm{d}}{\\mathrm{d}x}\\cot x=-\\csc^2 x "},{value:"\\int \\frac{1}{x}\\mathrm{d}x= \\ln \\left| x \\right| +C "},{value:"\\int \\frac{1}{\\sqrt{1-x^{2}}}\\mathrm{d}x= \\arcsin x +C "},{value:"\\int \\frac{1}{1+x^{2}}\\mathrm{d}x= \\arctan x +C "},{value:"\\int u \\frac{\\mathrm{d}v}{\\mathrm{d}x}\\,\\mathrm{d}x=uv-\\int \\frac{\\mathrm{d}u}{\\mathrm{d}x}v\\,\\mathrm{d}x "},{value:"f(x) = \\int_{-\\infty}^\\infty \\hat f(x)\\xi\\,e^{2 \\pi i \\xi x} \\,\\mathrm{d}\\xi "},{value:"\\int x^{\\mu}\\mathrm{d}x=\\frac{x^{\\mu +1}}{\\mu +1}+C, \\left({\\mu \\neq -1}\\right) "}]}]},{name:"\u4E09\u89D2",value:"e^{i \\theta}",children:[{name:"\u6C42\u548C Summation",data:[{value:"e^{i \\theta} "},{value:"\\left(\\frac{\\pi}{2}-\\theta \\right ) "},{value:"\\text{sin}^{2}\\frac{\\alpha}{2}=\\frac{1- \\text{cos}\\alpha}{2} "},{value:"\\text{cos}^{2}\\frac{\\alpha}{2}=\\frac{1+ \\text{cos}\\alpha}{2} "},{value:"\\text{tan}\\frac{\\alpha}{2}=\\frac{\\text{sin}\\alpha}{1+ \\text{cos}\\alpha} "},{value:"\\sin \\alpha + \\sin \\beta =2 \\sin \\frac{\\alpha + \\beta}{2}\\cos \\frac{\\alpha - \\beta}{2} "},{value:"\\sin \\alpha - \\sin \\beta =2 \\cos \\frac{\\alpha + \\beta}{2}\\sin \\frac{\\alpha - \\beta}{2} "},{value:"\\cos \\alpha + \\cos \\beta =2 \\cos \\frac{\\alpha + \\beta}{2}\\cos \\frac{\\alpha - \\beta}{2} "},{value:"\\cos \\alpha - \\cos \\beta =-2\\sin \\frac{\\alpha + \\beta}{2}\\sin \\frac{\\alpha - \\beta}{2} "},{value:"a^{2}=b^{2}+c^{2}-2bc\\cos A "},{value:"\\frac{\\sin A}{a}=\\frac{\\sin B}{b}=\\frac{\\sin C}{c}=\\frac{1}{2R} "},{value:"\\sin \\left ( \\frac{\\pi}{2}-\\alpha \\right ) = \\cos \\alpha "},{value:"\\sin \\left ( \\frac{\\pi}{2}+\\alpha \\right ) = \\cos \\alpha "}]}]},{name:"\u7EDF\u8BA1",value:"C_{r}^{n}",children:[{data:[{value:"C_{r}^{n} "},{value:"\\frac{n!}{r!(n-r)!} "},{value:"\\sum_{i=1}^{n}{X_i} "},{value:"\\sum_{i=1}^{n}{X_i^2} "},{value:"X_1, \\cdots,X_n "},{value:"\\frac{x-\\mu}{\\sigma} "},{value:"\\sum_{i=1}^{n}{(X_i - \\overline{X})^2} "},{value:`\\begin{array}{c} \r \\text{\u82E5}P \\left( AB \\right) =P \\left( A \\right) P \\left( B \\right) \\\\ \r \\text{\u5219}P \\left( A \\left| B\\right. \\right) =P \\left({B}\\right) \r \\end{array}`},{value:"P(E) ={n \\choose k}p^k (1-p)^{n-k} "},{value:"P \\left( A \\right) = \\lim \\limits_{n \\to \\infty}f_{n}\\left ( A \\right ) "},{value:"P \\left( \\bigcup \\limits_{i=1}^{+ \\infty}A_{i}\\right) = \\prod \\limits_{i=1}^{+ \\infty}P{\\left( A_{i}\\right)} "},{value:`\\begin{array}{c} \r P \\left( \\emptyset \\right) =0 \\\\ \r P \\left( S \\right) =1 \r \\end{array}`},{value:`\\begin{array}{c} \r \\forall A \\in S \\\\ \r P \\left( A \\right) \\ge 0 \r \\end{array}`},{value:"P \\left( \\bigcup \\limits_{i=1}^{n}A_{i}\\right) = \\prod \\limits_{i=1}^{n}P \\left( A_{i}\\right) "},{value:`\\begin{array}{c} \r S= \\binom{N}{n},A_{k}=\\binom{M}{k}\\cdot \\binom{N-M}{n-k} \\\\ \r P\\left ( A_{k}\\right ) = \\frac{\\binom{M}{k}\\cdot \\binom{N-M}{n-k}}{\\binom{N}{n}} \r \\end{array}`},{value:`\\begin{array}{c} \r P_{n}=n! \\\\ \r A_{n}^{k}=\\frac{n!}{\\left( n-k \\left) !\\right. \\right.} \r \\end{array}`}]}]}],oe=ie=>{te.current.setValue(te.current.getValue()+" "+ie.value+" ")},de=[{key:"1",label:"\u5FEB\u6377\u6A21\u677F",children:be.createElement(He.Z,{className:ge.Z.lists,gutter:[10,10]},ne.map((ie,ue)=>be.createElement(Fe.Z,{flex:"110px",className:ge.Z.item},be.createElement("div",null,be.createElement(Pe.Z,{value:`$$${ie.value}$$`}),ie.name),be.createElement("div",{className:ge.Z.children},ie.children.map((ve,Se)=>be.createElement("div",{key:Se},be.createElement("h1",null,ve.name),be.createElement(He.Z,{gutter:[10,10]},ve.data.map((De,Re)=>be.createElement(Fe.Z,{key:Re,onClick:()=>oe(De),className:ge.Z.diamond},be.createElement(Pe.Z,{value:"`$$"+De.value+"$$`"}))))))))))},{key:"2",label:"\u516C\u5F0F\u6A21\u677F",children:be.createElement(He.Z,{className:ge.Z.lists,gutter:[10,10]},le.map((ie,ue)=>be.createElement(Fe.Z,{flex:"110px",className:ge.Z.item},be.createElement("div",null,be.createElement(Pe.Z,{value:"`$$"+ie.value+"$$`"}),ie.name),be.createElement("div",{className:ge.Z.children},ie.children.map((ve,Se)=>be.createElement("div",{key:Se},ve.name&&be.createElement("h1",null,ve.name),be.createElement(He.Z,{gutter:[10,10]},ve.data.map((De,Re)=>be.createElement(Fe.Z,{key:Re,onClick:()=>oe(De),className:ge.Z.diamond},be.createElement(Pe.Z,{value:"`$$"+De.value+"$$`"}))))))))))}],he=()=>{var ie=document.createElement("div");ie.innerHTML=te.current.getValue();var ue=ie.innerText;return pe&&pe(ue),ue};return(0,Be.useImperativeHandle)(ce,()=>({getData:he})),be.createElement("div",{className:ge.Z.mathWrap},be.createElement(Ce.default,{defaultActiveKey:"1",items:de}),be.createElement("math-field",{locale:"zh_cn",className:ge.Z.mathField,placeholder:"\u8BF7\u6253\u5F00\u952E\u76D8\uFF0C\u8F93\u5165\u516C\u5F0F",ref:te,style:{width:800,marginTop:30,fontSize:18}},xe||""),ye&&be.createElement("div",{className:ge.Z.button},be.createElement(_e.ZP,{size:"large",onClick:he,style:{zIndex:8,marginTop:10},type:"primary"},"\u4FDD\u5B58\u5230\u7F16\u8F91\u5668")))});Dt.Z=we},21837:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Q:function(){return Pe}});var Be=Ie(59301),He=Ie(57809),Fe=Ie(5112),Ce=Ie(5871),_e=Ie(59301),Pe=(Ae=>(Ae[Ae.Number=1]="Number",Ae[Ae.Percent=2]="Percent",Ae))(Pe||{});const ge=({value:Ae,onChange:be,disabled:we,hidePercentOption:pe=!1,percentType:ye="select"})=>{const xe=(0,Be.useMemo)(()=>pe?1:2,[pe]),[ce,te]=(0,Be.useState)(xe);console.log(ce);const ne=oe=>Ae.type===1?`${oe}\u5206`:`${oe}%`,le=(0,Be.useCallback)(oe=>{if(ce===1){const de=oe.replace("\u5206","");return isNaN(parseInt(de,10))?0:de}else return oe.replace("%","")},[ce]);return(0,Be.useEffect)(()=>{te(Ae.type)},[Ae]),_e.createElement("div",{style:{display:"flex",alignItems:"center"}},ye=="select"&&_e.createElement(He.default,{size:"large",onChange:oe=>{te(oe),be({type:oe,inputValue:oe===1?5:20})},value:ce||xe,style:{width:100},options:pe?[{label:"\u5206\u503C",value:1}]:[{label:"\u767E\u5206\u6BD4",value:2},{label:"\u5206\u503C",value:1}],disabled:we}),ye=="radio"&&_e.createElement(Fe.ZP.Group,{size:"large",onChange:oe=>{const de=oe.target.value;te(de),be({type:de,inputValue:de===1?5:20})},value:ce||xe,disabled:we},!pe&&_e.createElement(Fe.ZP,{value:2,style:{marginRight:"50px"}},"\u767E\u5206\u6BD4\u6263\u5206"),_e.createElement(Fe.ZP,{value:1},"\u56FA\u5B9A\u5206\u503C")),ye=="radio"&&_e.createElement("div",{style:{marginRight:"10px",color:"#000000"}},Ae.type==2?"\u6263\u9664\u8865\u4EA4\u9636\u6BB5\u5F97\u5206\u7684":"\u6263\u9664\u603B\u6210\u7EE9\u7684"),_e.createElement(Ce.Z,{size:"large",disabled:we,value:Ae.inputValue,style:{width:"120px"},parser:le,addonAfter:Ae.type===1?"\u5206":"%",max:ce===2?100:Number.MAX_SAFE_INTEGER,min:0,precision:0,onChange:oe=>{be({type:ce,inputValue:oe})}}),ye=="radio"&&Ae.type==2&&_e.createElement("div",{style:{marginLeft:"10px",color:"#000000"}},"\u5206\u6570"))};Dt.Z=ge},22779:function(St,Dt,Ie){"use strict";var Be=Ie(59301),He=Ie(78241),Fe=Ie(95237),Ce=Ie(57809),_e=Ie(92832),Pe=Ie(88522),ge=Ie(3113),Ae=Ie(24905),be=Ie(6848),we=Ie(8591),pe=Ie(1710),ye=Ie(90115),xe=Ie(66649),ce=Ie.n(xe),te=Ie(26724),ne=Ie.n(te),le=Ie(58143),oe=Ie(22392),de=Ie(2751),he=Ie(51571),ie=Ie(59301),ue=Object.defineProperty,ve=Object.defineProperties,Se=Object.getOwnPropertyDescriptors,De=Object.getOwnPropertySymbols,Re=Object.prototype.hasOwnProperty,Ne=Object.prototype.propertyIsEnumerable,ze=(lt,rt,ut)=>rt in lt?ue(lt,rt,{enumerable:!0,configurable:!0,writable:!0,value:ut}):lt[rt]=ut,Ge=(lt,rt)=>{for(var ut in rt||(rt={}))Re.call(rt,ut)&&ze(lt,ut,rt[ut]);if(De)for(var ut of De(rt))Ne.call(rt,ut)&&ze(lt,ut,rt[ut]);return lt},Xe=(lt,rt)=>ve(lt,Se(rt)),Qe=(lt,rt,ut)=>new Promise((yt,ft)=>{var dt=Kt=>{try{Ut(ut.next(Kt))}catch(qt){ft(qt)}},ht=Kt=>{try{Ut(ut.throw(Kt))}catch(qt){ft(qt)}},Ut=Kt=>Kt.done?yt(Kt.value):Promise.resolve(Kt.value).then(dt,ht);Ut((ut=ut.apply(lt,rt)).next())});const nt=[];function $e({onSearch:lt,schools:rt}){return ie.createElement(He.default,{colon:!1,layout:"horizontal",onFinish:lt,initialValues:{keyword:"",school_name:"",search_type:"1"}},ie.createElement(Fe.Z,{style:{flexWrap:"nowrap"}},ie.createElement(He.default.Item,{name:"search_type",label:"\u641C\u7D22\u7C7B\u578B"},ie.createElement(Ce.default,{popupClassName:he.Z.selectdown,style:{width:106}},ie.createElement(Ce.default.Option,{value:"1"},"\u59D3\u540D"),ie.createElement(Ce.default.Option,{value:"2"},"\u624B\u673A\u53F7"),ie.createElement(Ce.default.Option,{value:"3"},"\u90AE\u7BB1"))),ie.createElement(He.default.Item,{style:{marginLeft:20},label:"\u641C\u7D22\u5185\u5BB9",name:"keyword",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u641C\u7D22\u5185\u5BB9"}]},ie.createElement(_e.default,{allowClear:!0,style:{width:300},size:"middle"})),ie.createElement(He.default.Item,{style:{marginLeft:20},label:"\u5355\u4F4D",name:"school_name"},ie.createElement(Pe.Z,{options:rt,style:{width:300},size:"middle",showSearch:!0,filterOption:(ut,yt)=>yt.value.toUpperCase().indexOf(ut.toUpperCase())!==-1,placeholder:"\u8BF7\u8F93\u5165\u5355\u4F4D\u540D\u79F0"})),ie.createElement(ge.ZP,{type:"primary",style:{background:"#F6F7F9 linear-gradient(180deg, #FFFFFF 0%, #F6F7F9 100%)",boxShadow:"0px 2px 4px 0px #E0DFE1, inset 0px 1px 3px 0px rgba(255,255,255,0.5)",borderRadius:16,color:"#165DFF",marginLeft:40,border:"1px solid #BACFFE"},htmlType:"submit"},"\u641C\u7D22")))}var qe=(lt=>(lt[lt.INITDATA=0]="INITDATA",lt[lt.INITSCHOOLS=1]="INITSCHOOLS",lt[lt.SHOWLOADING=2]="SHOWLOADING",lt[lt.SELECTEDIDS=3]="SELECTEDIDS",lt[lt.SETQUERY=4]="SETQUERY",lt[lt.SETPAGE=5]="SETPAGE",lt))(qe||{});function ot(lt,rt){switch(rt.type){case 0:return Ge(Ge({},lt),rt.payload);case 4:return Ge(Ge({},lt),rt.payload);case 5:return Xe(Ge({},lt),{page:rt.payload,reload:!1});case 2:return Xe(Ge({},lt),{loading:rt.payload});case 1:return Xe(Ge({},lt),{schools:rt.payload});case 3:return Xe(Ge({},lt),{selectedIds:rt.payload});default:throw new Error}}const at={data:[],schools:[],loading:!1,selectedIds:[],query:null,page:1,count:0,reload:!1};Dt.Z=({onSelect:lt,onCancel:rt,container_id:ut,container_type:yt})=>{const[ft,dt]=(0,Be.useReducer)(ot,at),{data:ht,schools:Ut,loading:Kt,selectedIds:qt,page:vn,count:Ot,query:rn,reload:an}=ft;(0,Be.useEffect)(()=>{function Et(){return Qe(this,null,function*(){const{users:Zt,user_count:vt}=yield(0,oe.nQ)(Xe(Ge({},rn),{page:vn,container_type:yt,container_id:ut,display_aliases:!0}));dt({type:0,payload:{data:an?Zt:[...ht,...Zt],count:vt}})})}rn&&Et()},[vn,rn,an,ut,yt]),(0,Be.useEffect)(()=>{function Et(){return Qe(this,null,function*(){const{school_names:Zt}=yield(0,oe.K$)({display_aliases:!0});dt({type:1,payload:Zt.map(vt=>({value:vt}))})})}Et()},[]);const On=[{title:"",dataIndex:"added",width:40,ellipsis:!0,render:(Et,Zt)=>ie.createElement(Ae.default,{value:Zt.numid,checked:qt.includes(Zt.numid),disabled:!!Et})},{title:"\u59D3\u540D",width:100,ellipsis:!0,align:"left",dataIndex:"username",render:(Et,Zt)=>ie.createElement("div",null,ie.createElement(be.Z,{placement:"bottom",title:Et},ie.createElement(ye.Link,{style:{color:"#000000"},className:"bold c-black",to:`/users/${Zt.login}`,target:"_blank"},Et||"--")))},{title:"\u624B\u673A",width:100,dataIndex:"phone",ellipsis:!0,render:Et=>ie.createElement(be.Z,{placement:"bottom",title:Et},ie.createElement("span",{style:{color:"#000000"}},Et||"--"))},{title:"\u90AE\u7BB1",dataIndex:"email",width:100,ellipsis:!0,render:Et=>ie.createElement(be.Z,{placement:"bottom",title:Et},ie.createElement("span",{style:{color:"#000000"}},Et||"--"))},{title:"\u5B66\u53F7/\u5DE5\u53F7",width:100,dataIndex:"student_number",ellipsis:!0,render:Et=>ie.createElement(be.Z,{placement:"bottom",title:Et},ie.createElement("span",{style:{color:"#000000"}},Et||"--"))},{title:"\u5B66\u6821/\u5355\u4F4D",width:150,dataIndex:"school_name",ellipsis:!0,render:Et=>ie.createElement(be.Z,{placement:"bottom",title:Et},ie.createElement("span",{style:{color:"#000000"}},Et||"--"))},{title:"\u9662\u7CFB/\u90E8\u95E8",dataIndex:"depart_name",width:130,ellipsis:!0,render:Et=>ie.createElement(be.Z,{placement:"bottom",title:Et},ie.createElement("span",{style:{color:"#000000"}},Et||"--"))},{title:"\u5B9E\u540D\u8BA4\u8BC1",dataIndex:"auth",width:100,render:Et=>ie.createElement("span",{style:{color:"#000000"}},Et?"\u662F":"\u5426")},{title:"\u6700\u540E\u767B\u5F55\u65F6\u95F4",dataIndex:"last_login_on",width:140,ellipsis:!0,render:Et=>ie.createElement(be.Z,{placement:"bottom",title:Et},ie.createElement("span",{style:{color:"#000000"}},ce()(Et).format("YYYY-MM-DD HH:mm")))},{title:"\u72B6\u6001",dataIndex:"added",width:80,render:Et=>{if(Et===1)return ie.createElement("span",{style:{color:"#000000"}},"\u5DF2\u6DFB\u52A0")}}];function Rn(Et){dt({type:4,payload:{page:1,reload:!0,query:Et}})}function sn(Et){dt({type:5,payload:Et})}function tn(Et){let Zt=qt.indexOf(Et);Zt>=0?qt.splice(Zt,1):qt.push(Et),dt({type:3,payload:[...qt]})}function Gt(){qt.length===0?we.ZP.warning("\u8BF7\u5148\u5728\u4E0B\u9762\u5217\u8868\u4E2D\u9009\u62E9\u8981\u6DFB\u52A0\u6210\u5458"):(lt(qt,ut),dt({type:0,payload:{data:[],count:0,page:1,selectedIds:[],query:null,reload:!1}}))}const It=Ot>vn*10;return ie.createElement("div",{className:"select-user-container",style:{paddingBottom:20}},ie.createElement($e,{onSearch:Rn,schools:Ut}),rn?ie.createElement(ie.Fragment,null,ie.createElement("div",{className:"flexd-table-header mt20"},ie.createElement(de.Gi,null,ie.createElement(pe.default,{pagination:!1,dataSource:nt,columns:On}))),ie.createElement("div",{style:{maxHeight:260,overflow:"auto",marginBottom:20}},ie.createElement(ne(),{initialLoad:!1,pageStart:1,threshold:20,loadMore:sn,hasMore:It,useWindow:!1},ie.createElement(de.Gi,null,ie.createElement(pe.default,{loading:Kt,showHeader:!1,pagination:!1,dataSource:ht,columns:On,onRow:Et=>({onClick:Zt=>{Et.added!==1&&tn(Et.numid)}})})))),ie.createElement("div",{className:"flex-container flex-end"},ie.createElement(ge.ZP,{type:"ghost",style:{marginRight:10,border:"1px solid #C3CFE0",color:"#464F66"},onClick:rt},"\u53D6\u6D88"),ie.createElement(ge.ZP,{style:{background:"#F6F7F9 linear-gradient(180deg, #FFFFFF 0%, #F6F7F9 100%)",boxShadow:"0px 2px 4px 0px #E0DFE1, inset 0px 1px 3px 0px rgba(255,255,255,0.5)",borderRadius:2,color:"#165DFF",border:"1px solid #BACFFE"},type:"primary",onClick:Gt},"\u786E\u5B9A"))):ie.createElement("div",{className:"tc font16 c-light-black mt40 pb30"},ie.createElement("img",{src:le,width:"100",alt:""}),ie.createElement("br",null),ie.createElement("p",{className:"mt20"},"\u8BF7\u641C\u7D22\u8981\u6DFB\u52A0\u7684\u4EBA\u5458")))}},27350:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return Ae}});var Be=Ie(59301),He={flex_box_center:"flex_box_center___rQJfc",flex_space_between:"flex_space_between___MDW24",flex_box_vertical_center:"flex_box_vertical_center___RZbAv",flex_box_center_end:"flex_box_center_end___ILhJA",flex_box_column:"flex_box_column___Fmij7",orangeColor:"orangeColor___U5vU6",redColor:"redColor___qYa6X",statustitle:"statustitle___pTBLm",statusbody:"statusbody___qUPQx",flex:"flex___VtL45"},Fe=Ie(43418),Ce="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAPCAYAAADUFP50AAAAAXNSR0IArs4c6QAAAUFJREFUOE+V0ktKw1AUxvH/rVqIxT4wkgwEUSmK4APRBfiYCKU7cOZEBOkadAMZiwhuwJETBQciFRTtwJkPBLW2BRGrRanU9kpN2sSYiGaWc/PjuznnCN2Qh8AkPo+AzXxKLLiPhW7ICtDqB4GzQkqM/huGFZgZcDCBBDaaicsTMKbZH2xfwdY5/ICAEGSasC0AwRYblj+gKkENwfy4WS9V4LHsgsk49EZteJKHdBa6w7AybdZzr3D64ILxGKjtNrx9gfsSRBSYtf6xZh1/u+qQClrIhtdFuHmGvhisJcz65RPsZl2Jc/3QE7FhpgDHuT80x2+O9cR1K/GiCDt3rkQ/+Ns43gDFD0YVmHIuQGOOmiGTARhxwkGd1cZ7Vwd0OppWr3911StpcV++Iwn67q/kyBMuHchErcqwFxT1XZXsfQJqo2zI6kdI4QAAAABJRU5ErkJggg==",_e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAAXNSR0IArs4c6QAAAW1JREFUOE+dkj1IQmEUht9z/blp4VQEjS39eW+oSCFCpFCI4BiKFGWWQUSrCjVVg+lQNJZQDZGNTm1B4NTibS3n2lo0wuqEN8i/a0HfeN7v+d73nO+QJEcKAJzQPAwCnSpKNtoqkyRHqgDrtUFAb6Rnedx43KgT6O5P0GQijFiNLe/Sy3/B8g+YTIRRrb5jP32JYNADr8eOldU0RJEqVlm8r1kyuA/AIEB10OWy4vBgA4ryCIdjCJlMDmfn1zAY6EmyGY/UrAwrgGATWKsn4mGEQl4Uiw+YX9hT73aZiEcl8eMbZAGA0AT6/ZPY3Ykiny/A55tA7uoGqdQFBD2VbDbDugoSTTEj3gTGYgG8Vt7UeG63hNkZJ7a2s+gw1XqPnf5REKhkt4kxNakO08ycbOtRC/7FcakCwNTJ0WwmDI+1LUCZZDkSYGa5Eewf0G0KAnprNYtFQHdPbZhNS1cmLafF5bUTJsyBSVMHPm+/ADTrfrtCH68WAAAAAElFTkSuQmCC",Pe=(be,we,pe)=>new Promise((ye,xe)=>{var ce=le=>{try{ne(pe.next(le))}catch(oe){xe(oe)}},te=le=>{try{ne(pe.throw(le))}catch(oe){xe(oe)}},ne=le=>le.done?ye(le.value):Promise.resolve(le.value).then(ce,te);ne((pe=pe.apply(be,we)).next())}),Ae=({type:be,resdata:we,onok:pe,oktext:ye,okloading:xe})=>{const[ce,te]=(0,Be.useState)(!1),{can_copy_list:ne,can_copy_num:le,challenge_type:oe,course_data_list:de,no_copy_list:he,no_copy_num:ie,no_use_list:ue,no_use_num:ve,repeat_shixun_num:Se,student_count:De,total_num:Re,use_num:Ne}=we;let ze=le>0||be==="exercise";(0,Be.useEffect)(()=>{(we==null?void 0:we.student_count)>0&&te(!0)},[we]),console.log("---11",xe),(0,Be.useEffect)(()=>{xe||te(!1)},[xe]);const Ge=()=>{if(be==="exercise"&&oe===1)return Be.createElement(Be.Fragment,null,"\u8BFE\u5802\u5185\u6709",Be.createElement("span",{className:He.orangeColor},De),"\u540D\u5B66\u751F\u5DF2\u5728\u5176\u4ED6\u8003\u8BD5\u4E2D\u6311\u6218\u8FC7\u5176\u4E2D\u7684",Be.createElement("span",{className:He.orangeColor},Ne),"\u4E2A\u5B9E\u8DF5\u9879\u76EE\uFF0C",Be.createElement("span",{className:He.redColor},"\u91CD\u590D\u53D1\u9001\u4F1A\u5BFC\u81F4\u8FD9\u90E8\u5206\u5B66\u751F\u65E0\u6CD5\u4F5C\u7B54\u5DF2\u6311\u6218\u8FC7\u7684\u5B9E\u8BAD\u9898\u3002"));if(be==="exercise"&&oe===2)return Be.createElement(Be.Fragment,null,"\u8BFE\u5802\u5185\u6709",Be.createElement("span",{className:He.orangeColor},De),"\u540D\u5B66\u751F\u5DF2\u5728\u8BFE\u5802\u5B9E\u9A8C\u4E2D\u6311\u6218\u8FC7\u5176\u4E2D\u7684",Be.createElement("span",{className:He.orangeColor},Ne),"\u4E2A\u5B9E\u8DF5\u9879\u76EE\uFF0C\u4E14\u4F5C\u4E1A\u5DF2\u5F00\u542F\u201C\u4F5C\u4E1A\u622A\u6B62\u540E\u4E0D\u5141\u8BB8\u5B66\u751F\u7F16\u8F91\u4EE3\u7801\u201D\u8BBE\u7F6E\u9879\uFF0C",Be.createElement("span",{className:He.redColor},"\u91CD\u590D\u53D1\u5E03\u4F1A\u5BFC\u81F4\u8FD9\u90E8\u5206\u5B66\u751F\u65E0\u6CD5\u518D\u63D0\u4EA4\u4F5C\u4E1A\u3002"));if(be==="shixun"&&oe===1)return Be.createElement(Be.Fragment,null,"\u8BFE\u5802\u5185\u6709",Be.createElement("span",{className:He.orangeColor},De),"\u540D\u5B66\u751F\u5DF2\u5728\u8003\u8BD5\u4E2D\u6311\u6218\u8FC7\u8BE5\u5B9E\u8DF5\u9879\u76EE\uFF0C",Be.createElement("span",{className:He.redColor},"\u91CD\u590D\u53D1\u9001\u4F1A\u5BFC\u81F4\u8FD9\u90E8\u5206\u5B66\u751F\u65E0\u6CD5\u518D\u63D0\u4EA4\u4F5C\u4E1A\u3002"));if(be==="shixun"&&oe===2)return Be.createElement(Be.Fragment,null,"\u8BFE\u5802\u5185\u6709",Be.createElement("span",{className:He.orangeColor},De),"\u540D\u5B66\u751F\u5DF2\u5728\u8BFE\u5802\u5B9E\u9A8C\u4E2D\u6311\u6218\u8FC7\u8BE5\u5B9E\u8DF5\u9879\u76EE\uFF0C\u4E14\u4F5C\u4E1A\u5DF2\u5F00\u542F\u201C\u4F5C\u4E1A\u622A\u6B62\u540E\u4E0D\u5141\u8BB8\u5B66\u751F\u7F16\u8F91\u4EE3\u7801\u201D\u8BBE\u7F6E\u9879\uFF0C",Be.createElement("span",{className:He.redColor},"\u91CD\u590D\u53D1\u9001\u4F1A\u5BFC\u81F4\u8FD9\u90E8\u5206\u5B66\u751F\u65E0\u6CD5\u518D\u63D0\u4EA4\u4F5C\u4E1A\u3002"));if(be==="subject"&&oe===1)return Be.createElement(Be.Fragment,null,"\u8BFE\u5802\u5185\u6709",Be.createElement("span",{className:He.orangeColor},De),"\u540D\u5B66\u751F\u5DF2\u5728\u8003\u8BD5\u4E2D\u6311\u6218\u8FC7\u5176\u4E2D\u7684",Be.createElement("span",{className:He.orangeColor},Ne),"\u4E2A\u5B9E\u8DF5\u9879\u76EE\uFF0C",Be.createElement("span",{className:He.redColor},"\u91CD\u590D\u53D1\u9001\u4F1A\u5BFC\u81F4\u8FD9\u90E8\u5206\u5B66\u751F\u65E0\u6CD5\u518D\u63D0\u4EA4\u4F5C\u4E1A\u3002"));if(be==="subject"&&oe===2)return Be.createElement(Be.Fragment,null,"\u8BFE\u5802\u5185\u6709 ",Be.createElement("span",{className:He.orangeColor},De)," \u540D\u5B66\u751F\u5DF2\u5728\u8BFE\u5802\u5B9E\u9A8C\u6311\u6218\u8FC7\u5176\u4E2D\u7684 ",Be.createElement("span",{className:He.orangeColor},Ne)," \u4E2A\u5B9E\u8DF5\u9879\u76EE\uFF0C\u4E14\u4F5C\u4E1A\u5DF2\u5F00\u542F\u201C\u4F5C\u4E1A\u622A\u6B62\u540E\u4E0D\u5141\u8BB8\u5B66\u751F\u7F16\u8F91\u4EE3\u7801\u201D\u8BBE\u7F6E\u9879\uFF0C",Be.createElement("span",{className:He.redColor},"\u91CD\u590D\u53D1\u9001\u4F1A\u5BFC\u81F4\u8FD9\u90E8\u5206\u5B66\u751F\u65E0\u6CD5\u518D\u63D0\u4EA4\u4F5C\u4E1A\u3002"));if(be==="exercisepush")return Be.createElement(Be.Fragment,null,"\u8BFE\u5802\u5185\u6709",Be.createElement("span",{className:He.orangeColor},De),"\u540D\u5B66\u751F\u5DF2\u5728\u5176\u4ED6\u8003\u8BD5\u4E2D\u6311\u6218\u8FC7\u8BD5\u5377\u4E2D\u7684",Be.createElement("span",{className:He.orangeColor},Ne),"\u4E2A\u5B9E\u8DF5\u9879\u76EE \uFF0C",Be.createElement("span",{className:He.redColor},"\u91CD\u590D\u53D1\u5E03\u4F1A\u5BFC\u81F4\u8FD9\u90E8\u5206\u5B66\u751F\u65E0\u6CD5\u5728\u5F53\u524D\u8003\u8BD5\u4E2D\u8FDB\u884C\u4F5C\u7B54\u3002"));if(be==="shixunpush"&&oe===1)return Be.createElement(Be.Fragment,null,"\u8BFE\u5802\u5185\u6709",Be.createElement("span",{className:He.orangeColor},De),"\u540D\u5B66\u751F\u5DF2\u5728\u8003\u8BD5\u4E2D\u6311\u6218\u8FC7\u5176\u4E2D\u7684",Be.createElement("span",{className:He.orangeColor},Ne),"\u4E2A\u5B9E\u8DF5\u9879\u76EE\uFF0C",Be.createElement("span",{className:He.redColor},"\u91CD\u590D\u53D1\u5E03\u4F1A\u5BFC\u81F4\u8FD9\u90E8\u5206\u5B66\u751F\u65E0\u6CD5\u518D\u63D0\u4EA4\u4F5C\u4E1A\u3002"));if(be==="shixunpush"&&oe===2)return Be.createElement(Be.Fragment,null,"\u8BFE\u5802\u5185\u6709",Be.createElement("span",{className:He.orangeColor},De),"\u540D\u5B66\u751F\u5DF2\u5728\u8BFE\u5802\u5B9E\u9A8C\u4E2D\u6311\u6218\u8FC7",Be.createElement("span",{className:He.orangeColor},Ne),"\u4E2A\u5B9E\u8DF5\u9879\u76EE\uFF0C\u4E14\u4F5C\u4E1A\u5DF2\u5F00\u542F\u201C\u4F5C\u4E1A\u622A\u6B62\u540E\u4E0D\u5141\u8BB8\u5B66\u751F\u7F16\u8F91\u4EE3\u7801\u201D\u8BBE\u7F6E\u9879\uFF0C",Be.createElement("span",{className:He.redColor},"\u91CD\u590D\u53D1\u5E03\u4F1A\u5BFC\u81F4\u8FD9\u90E8\u5206\u5B66\u751F\u65E0\u6CD5\u518D\u63D0\u4EA4\u4F5C\u4E1A\u3002"))},Xe=()=>{if(be==="exercise"||be==="subject"||be==="exercisepush"||be==="shixunpush")return Be.createElement("div",{style:{marginTop:20}},ie>0&&Be.createElement("div",null,Be.createElement("span",{className:He.flex},Be.createElement("img",{src:_e,style:{width:14}}),Be.createElement("span",{className:He.statustitle},"\u4E0D\u652F\u6301\u590D\u5236\u7684\u5B9E\u8DF5\u9879\u76EE")),Be.createElement("div",{className:He.statusbody},be==="exercise"&&Be.createElement("div",{style:{marginBottom:15}},"\u6CA1\u6709\u590D\u5236\u6743\u9650\u7684\u5B9E\u8DF5\u9879\u76EE\uFF0C",Be.createElement("span",{className:He.redColor},"\u4EE5\u4E0B\u8BD5\u9898\u5C06\u4E0D\u4F1A\u88AB\u53D1\u9001\u81F3\u8BFE\u5802\u4E2D\u3002"),"\u60A8\u4E5F\u53EF\u4EE5\u8054\u7CFB\u9879\u76EE\u521B\u5EFA\u8005\u5F00\u542F\u590D\u5236\u6743\u9650\u6216\u8005\u8054\u7CFB\u5E73\u53F0\u6559\u7814\u52A9\u7406\u8FDB\u884C\u534F\u52A9\u3002"),(be==="subject"||be==="exercisepush")&&Be.createElement("div",{style:{marginBottom:15}},"\u6CA1\u6709\u590D\u5236\u6743\u9650\u7684\u5B9E\u8DF5\u9879\u76EE\uFF0C",ze&&Be.createElement("span",{className:He.redColor},"\u4E00\u952E\u590D\u5236\u4E0D\u4F1A\u590D\u5236\u6B64\u90E8\u5206\u9879\u76EE\u3002"),"\u60A8\u53EF\u4EE5\u8054\u7CFB\u9879\u76EE\u521B\u5EFA\u8005\u5F00\u542F\u590D\u5236\u6743\u9650\u6216\u8005\u8054\u7CFB\u5E73\u53F0\u6559\u7814\u52A9\u7406\u8FDB\u884C\u534F\u52A9\u3002"),be==="shixunpush"&&Be.createElement("div",{style:{marginBottom:15}},"\u6CA1\u6709\u590D\u5236\u6743\u9650\u7684\u5B9E\u8DF5\u9879\u76EE\uFF0C",ze&&Be.createElement("span",{className:He.redColor},"\u4E00\u952E\u590D\u5236\u4E0D\u4F1A\u590D\u5236\u6B64\u90E8\u5206\u9879\u76EE\u3002"),"\u5EFA\u8BAE\u60A8\u91CD\u65B0\u9009\u62E9\u5B9E\u8DF5\u9879\u76EE\u518D\u53D1\u5E03\u4F5C\u4E1A\uFF0C\u4E5F\u53EF\u8054\u7CFB\u9879\u76EE\u521B\u5EFA\u8005\u5F00\u542F\u590D\u5236\u6743\u9650\u6216\u8054\u7CFB\u5E73\u53F0\u6559\u7814\u52A9\u7406\u8FDB\u884C\u534F\u52A9\u3002"),Be.createElement("div",null,he==null?void 0:he.map((Qe,nt)=>Be.createElement("a",{href:`/shixuns/${Qe.identifier}/challenges`,target:"_blank"},"\u300A",Qe==null?void 0:Qe.name,"\u300B",nt+1!==ie&&"\u3001"))))),le>0&&Be.createElement("div",{style:{marginTop:20}},Be.createElement("span",{className:He.flex},Be.createElement("img",{src:Ce,style:{width:14}}),Be.createElement("span",{className:He.statustitle},"\u652F\u6301\u590D\u5236\u7684\u5B9E\u8DF5\u9879\u76EE")),Be.createElement("div",{className:He.statusbody},be==="exercise"&&Be.createElement("div",{style:{marginBottom:15}},"\u5EFA\u8BAE\u60A8\u4E00\u952E\u590D\u5236\u5E76\u66FF\u6362\u8BD5\u9898\uFF08\u5C06\u590D\u5236\u5E76\u521B\u5EFA\u4E00\u4E2A\u65B0\u7684\u9879\u76EE\u66FF\u6362\u8BD5\u5377\u4E2D\u7684\u539F\u8BD5\u9898\uFF0C\u4E0D\u4F1A\u590D\u5236\u5B66\u751F\u7684\u6311\u6218\u8BB0\u5F55\uFF0C\u65B0\u7684\u9879\u76EE\u652F\u6301\u8FDB\u884C\u7F16\u8F91\u5E76\u4E0E\u539F\u9879\u76EE\u4FE1\u606F\u4E92\u4E0D\u5F71\u54CD\uFF09\u3002"),(be==="subject"||be==="exercisepush")&&Be.createElement("div",{style:{marginBottom:15}},"\u5EFA\u8BAE\u60A8\u4E00\u952E\u590D\u5236\u5E76\u53D1\u9001\uFF08\u5C06\u590D\u5236\u5E76\u521B\u5EFA\u4E00\u4E2A\u65B0\u7684\u9879\u76EE\uFF0C\u4E0D\u4F1A\u590D\u5236\u5B66\u751F\u7684\u6311\u6218\u8BB0\u5F55\uFF0C\u65B0\u7684\u9879\u76EE\u652F\u6301\u8FDB\u884C\u7F16\u8F91\u5E76\u4E0E\u539F\u9879\u76EE\u4FE1\u606F\u4E92\u4E0D\u5F71\u54CD\uFF09\u3002"),be==="shixunpush"&&Be.createElement("div",{style:{marginBottom:15}},"\u5EFA\u8BAE\u60A8\u4E00\u952E\u590D\u5236\u5E76\u66FF\u6362\u8BD5\u9898\uFF08\u5C06\u590D\u5236\u5E76\u521B\u5EFA\u4E00\u4E2A\u65B0\u7684\u9879\u76EE\u66FF\u6362\u5F53\u524D\u4F5C\u4E1A\u4E2D\u7684\u5B9E\u8DF5\u9879\u76EE\uFF0C\u4E0D\u4F1A\u590D\u5236\u5B66\u751F\u7684\u6311\u6218\u8BB0\u5F55\uFF0C\u65B0\u7684\u9879\u76EE\u652F\u6301\u8FDB\u884C\u7F16\u8F91\u5E76\u4E0E\u539F\u9879\u76EE\u4FE1\u606F\u4E92\u4E0D\u5F71\u54CD\uFF09\u3002"),Be.createElement("div",null,ne==null?void 0:ne.map((Qe,nt)=>Be.createElement("a",{href:`/shixuns/${Qe.identifier}/challenges`,target:"_blank"},"\u300A",Qe==null?void 0:Qe.name,"\u300B",nt+1!==le&&"\u3001"))))));if(be==="shixun")return Be.createElement("div",{style:{marginTop:20}},le>0?"\u8BE5\u9879\u76EE\u652F\u6301\u590D\u5236\uFF0C\u5EFA\u8BAE\u60A8\u4E00\u952E\u590D\u5236\u5E76\u53D1\u9001\uFF08\u5C06\u590D\u5236\u5E76\u521B\u5EFA\u4E00\u4E2A\u65B0\u7684\u9879\u76EE\uFF0C\u4E0D\u4F1A\u590D\u5236\u5B66\u751F\u7684\u6311\u6218\u8BB0\u5F55\uFF0C\u65B0\u7684\u9879\u76EE\u652F\u6301\u8FDB\u884C\u7F16\u8F91\u5E76\u4E0E\u539F\u9879\u76EE\u4FE1\u606F\u4E92\u4E0D\u5F71\u54CD\uFF09\u3002":"\u8BE5\u9879\u76EE\u4E0D\u652F\u6301\u590D\u5236\uFF0C\u60A8\u53EF\u4EE5\u8054\u7CFB\u9879\u76EE\u521B\u5EFA\u8005\u5F00\u542F\u590D\u5236\u6743\u9650\u6216\u8005\u8054\u7CFB\u5E73\u53F0\u6559\u7814\u52A9\u7406\u8FDB\u884C\u534F\u52A9\u3002")};return Be.createElement(Fe.default,{open:ce,onCancel:()=>{te(!1)},cancelText:"\u53D6\u6D88",title:"\u63D0\u793A",width:700,centered:!0,cancelButtonProps:{style:{display:!ze&&"none"}},zIndex:1003,confirmLoading:xe,okText:ze?ye:"\u6211\u77E5\u9053\u4E86",onOk:()=>Pe(void 0,null,function*(){ze?yield pe([...ne,...ue]):te(!1)})},Be.createElement("div",{style:{maxHeight:600,overflow:"auto"}},Ge(),Xe()))}},65450:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return te}});var Be=Ie(59301),He=Ie(8591),Fe=Ie(38854),Ce=Ie(69083),_e=Ie(16471),Pe=Ie(16624),ge=Ie(56102),Ae=Ie(16769),be={watermark:"watermark___hNYlv",videovideo:"videovideo___ovOkV",animate__loop:"animate__loop___mvL6s",upDown:"upDown___SlgHv",container:"container___g1WYG","video-container":"video-container___XPkWR","video-controls":"video-controls___to0Zq",hide:"hide___NA3DV","video-progress":"video-progress___gqHsd",seek:"seek___iZHBm","seek-tooltip":"seek-tooltip___uWyXx","bottom-controls":"bottom-controls___uoIBm","left-controls":"left-controls___mBEx4","right-controls":"right-controls___e9L6r",rateOverlay:"rateOverlay___HHBWe",controlText:"controlText___M_BWR","volume-controls":"volume-controls___fa3mE","fullscreen-button":"fullscreen-button___ur0es","fullscreen-button1":"fullscreen-button1___rfaXm","pip-button":"pip-button___GFO8W","playback-animation":"playback-animation___ndURq",volume:"volume___OTmpP",hidden:"hidden___o7GkT"},we=(ne,le,oe)=>new Promise((de,he)=>{var ie=Se=>{try{ve(oe.next(Se))}catch(De){he(De)}},ue=Se=>{try{ve(oe.throw(Se))}catch(De){he(De)}},ve=Se=>Se.done?de(Se.value):Promise.resolve(Se.value).then(ie,ue);ve((oe=oe.apply(ne,le)).next())});function pe(ne){if(isNaN(ne))return{minutes:"00",seconds:"00"};const le=new Date(ne*1e3).toISOString().substr(11,8);return{hour:le.substr(0,2),minutes:le.substr(3,2),seconds:le.substr(6,2)}}Object.defineProperty(HTMLMediaElement.prototype,"playing",{get:function(){return this.currentTime>0&&!this.paused&&!this.ended&&this.readyState>2}});function ye(ne,le){return ne-le}function xe(ne){ne.sort(ye);let le=0;for(let oe=0;oe{},handlePlay:Se=()=>{},handlePlayEnded:De=()=>{},autoPlay:Re=!1,onPlayEnded:Ne=()=>{},isShowWaterMark:ze=!0},Ge)=>{var Xe;const nt=((Xe=le==null?void 0:le.split("."))==null?void 0:Xe.pop())==="flv",$e=(0,Be.useRef)(),qe=(0,Be.useRef)(),ot=(0,Be.useRef)(),at=(0,Be.useRef)(),lt=(0,Be.useRef)(),rt=(0,Be.useRef)(),ut=(0,Be.useRef)(),yt=(0,Be.useRef)(),ft=(0,Be.useRef)(),dt=(0,Be.useRef)(),ht=(0,Be.useRef)(),Ut=(0,Be.useRef)(),Kt=(0,Be.useRef)(),qt=(0,Be.useRef)(),vn=navigator.userAgent.toLowerCase().match(ce),Ot=vn?vn[0]:"pc",rn=(0,Be.useRef)(!1),an=(0,Pe.eY)();let On=0,Rn=0,sn=0,tn=null,Gt=!1,It=20,Et=1,Zt=!1,vt=!1,At=[];(0,Be.useImperativeHandle)(Ge,()=>({getLastUpdatedTime:()=>$e.current.currentTime,getDuration:()=>$e.current.duration})),He.ZP.config({maxCount:1,getContainer:()=>ot.current});const Qt=(0,Be.useCallback)((Zn,$n=!1)=>{let Jt={point:$e.current.currentTime};tn?(Jt.log_id=tn,Jt.watch_duration=xe(At),Jt.total_duration=Rn):(ie?(Jt.video_id=parseInt(de,10),Jt.course_id=ie):Jt.video_id=de,Jt.duration=On,Jt.device=Ot),$n&&(Jt.ed="1");function yn(){return we(this,null,function*(){Zt=!0,tn=yield he==null?void 0:he(Jt),Zt=!1,Zn&&Zn()})}yn()},[de,ie]);(0,Be.useEffect)(()=>{$e.current&&(at.current.style.display="none",lt.current.style.display="block"),He.ZP.destroy();let Zn=null;return Ce.Z.isSupported&&nt&&le&&(le==null?void 0:le.indexOf(".m3u8"))<0?(Zn=Ce.Z.createPlayer({type:"flv",volume:.8,cors:!0,url:le,muted:!1}),$e.current&&(Zn.attachMediaElement($e.current),Zn.load())):$e.current.setAttribute("src",le),wt(),()=>{Zn&&(Zn.unload(),Zn.pause(),Zn.destroy(),Zn=null)}},[$e,nt,le]);function Ft(){$e.current.paused?(at.current.style.display="none",lt.current.style.display="block"):(at.current.style.display="block",lt.current.style.display="none")}function wt(){ht.current.style.display="none",Kt.current.style.display="none",Ut.current.style.display="none",$e.current.muted||$e.current.volume===0?ht.current.style.display="block":$e.current.volume>0&&$e.current.volume<=.5?Kt.current.style.display="block":Ut.current.style.display="block"}(0,Be.useEffect)(()=>{const Zn=document.getElementById("play"),$n=document.querySelectorAll(".playback-icons use");function Jt(){Se(),ue&&!rn.current&&($e.current.currentTime=ue),rn.current=!0,At.push($e.current.currentTime),Gt||(Gt=!0,oe&&Qt())}function yn(){return we(this,null,function*(){Ft(),At.push($e.current.currentTime),oe&&Qt(()=>{tn=null,sn=0,Gt=!1,Zt=!1,vt=!1,At=[],Rn=0,Et=1},!0),Ne()})}function Hn(){rt.current.value=Math.round($e.current.currentTime),ut.current.value=Math.round($e.current.currentTime)}function Bn(){const jr=pe(Math.round($e.current.currentTime));ft.current.innerText=`${jr.hour>0?jr.hour+":":""}${jr.minutes}:${jr.seconds}`,ft.current.setAttribute("datetime",`${jr.hour>0?" "+jr.hour+" ":""}${jr.minutes}m ${jr.seconds}s`)}function Er(){var jr,Ka,oi,pr,vr,li,zn;const hr=Math.round((jr=$e.current)==null?void 0:jr.duration);(oi=(Ka=rt.current)==null?void 0:Ka.setAttribute)==null||oi.call(Ka,"max",hr),(vr=(pr=ut.current)==null?void 0:pr.setAttribute)==null||vr.call(pr,"max",hr);const Tr=pe(hr);yt.current&&(yt.current.innerText=`${Tr.hour>0?Tr.hour+":":""}${Tr.minutes}:${Tr.seconds}`,(zn=(li=yt.current).setAttribute)==null||zn.call(li,"datetime",`${Tr.hour>0?" "+Tr.hour+" ":""}${Tr.minutes}m ${Tr.seconds}s`))}function Fr(){try{const jr=Math.round($e.current.duration);rt.current.setAttribute("max",jr),ut.current.setAttribute("max",jr);const Ka=pe(jr);yt.current.innerText=`${Ka.hour>0?Ka.hour+":":""}${Ka.minutes}:${Ka.seconds}`,yt.current.setAttribute("datetime",`${Ka.hour>0?" "+Ka.hour+" ":""}${Ka.minutes}m ${Ka.seconds}s`),Hn(),Bn();const{width:oi,height:pr,x:vr,y:li}=qe.current.getBoundingClientRect();if(vr<0||li<0||!oi)return;if(!vt){let zn=$e.current.currentTime,hr=zn-sn;Math.abs(hr)<10?(Rn+=Math.abs(hr),sn=zn,Zt||Rn-Et*It>=0&&(Et++,At.push(sn),oe&&Qt())):(sn=zn,oe&&Qt())}}catch(jr){console.log(jr)}}function br(){vt=!0}function Wr(){$e.current.playing&&At.push($e.current.currentTime,sn),sn=$e.current.currentTime,vt=!1}function Da(){On=$e.current.duration,On<=20&&(It=On/3),$e.current.addEventListener("play",Jt)}function Ya(jr){jr.preventDefault(),(0,Ae.vp)()?($e.current.style.width="100%",$e.current.style.height="100%"):$e.current.style.cssText=""}function Ba(){ve()}function Ia(jr){if(!ne){He.ZP.warning("\u8BE5\u89C6\u9891\u7981\u6B62\u5FEB\u8FDB/\u540E\u9000\u64AD\u653E");return}const Ka=jr.target.dataset.seek?jr.target.dataset.seek:jr.target.value;$e.current.currentTime=Ka,ut.current.value=Ka,rt.current.value=Ka}function Ii(jr){const Ka=Math.round(jr.offsetX/jr.target.clientWidth*parseInt(jr.target.getAttribute("max"),10));rt.current.setAttribute("data-seek",Ka);const oi=pe(Ka);dt.current.textContent=`${oi.hour>0?oi.hour+":":""}${oi.minutes}:${oi.seconds}`;const pr=$e.current.getBoundingClientRect();dt.current.style.left=`${jr.pageX-pr.left}px`}function wi(jr){switch(jr.code){case"Space":jr.preventDefault(),Kn();break;case"ArrowRight":if(jr.preventDefault(),!ne){He.ZP.warning("\u8BE5\u89C6\u9891\u7981\u6B62\u5FEB\u8FDB/\u540E\u9000\u64AD\u653E");break}if($e.current.currentTime>=$e.current.duration)break;$e.current.currentTime=parseInt($e.current.currentTime)+5,Hn();break;case"ArrowLeft":if(jr.preventDefault(),!ne){He.ZP.warning("\u8BE5\u89C6\u9891\u7981\u6B62\u5FEB\u8FDB/\u540E\u9000\u64AD\u653E");break}if($e.current.currentTime===0)break;$e.current.currentTime=parseInt($e.current.currentTime)-5,Hn();break;case"ArrowUp":jr.preventDefault(),$e.current.volume<1&&($e.current.volume=(parseInt($e.current.volume*10)+1)/10);break;case"ArrowDown":jr.preventDefault(),$e.current.volume>0&&($e.current.volume=(parseInt($e.current.volume*10)-1)/10);break}}return ot.current.addEventListener((0,Ae.gH)(),Ya),$e.current.addEventListener("canplay",Da),$e.current.addEventListener("ended",yn),$e.current.addEventListener("seeking",br),$e.current.addEventListener("seeked",Wr),$e.current.addEventListener("loadedmetadata",Er),rt.current.addEventListener("mousemove",Ii),rt.current.addEventListener("input",Ia),$e.current.addEventListener("timeupdate",Fr),$e.current.addEventListener("pause",Ba),$e.current.addEventListener("volumechange",wt),document.addEventListener("keydown",wi),()=>{var jr,Ka,oi,pr,vr,li,zn,hr,Tr,Rr,fa,bt;(jr=$e.current)==null||jr.removeEventListener("canplay",Da),(Ka=$e.current)==null||Ka.removeEventListener("play",Jt),(oi=$e.current)==null||oi.removeEventListener("ended",yn),(pr=$e.current)==null||pr.removeEventListener("seeking",br),(vr=$e.current)==null||vr.removeEventListener("seeked",Wr),(li=rt.current)==null||li.removeEventListener("mousemove",Ii),(zn=rt.current)==null||zn.removeEventListener("input",Ia),(hr=$e.current)==null||hr.removeEventListener("timeupdate",Fr),(Tr=$e.current)==null||Tr.removeEventListener("pause",Ba),(Rr=$e.current)==null||Rr.removeEventListener("loadedmetadata",Er),(fa=$e.current)==null||fa.removeEventListener("volumechange",wt),document.removeEventListener("keydown",wi),(bt=$e.current)!=null&&bt.playing&&(At.push(sn,$e.current.currentTime),oe&&Qt())}},[$e,le]),(0,Be.useEffect)(()=>{if($e.current.onended=()=>{De($e)},$e.current.oncontextmenu=()=>!1,(le==null?void 0:le.indexOf(".m3u8"))>-1){if($e.current.canPlayType("application/vnd.apple.mpegurl"))$e.current.src=le;else if(_e.ZP.isSupported()){var Zn=new _e.ZP;Zn.loadSource(le),Zn.attachMedia($e.current)}}},[le]);const[ln,In]=(0,Be.useState)(1),Kn=()=>{$e.current.paused||$e.current.ended?$e.current.play():$e.current.pause(),Ft()};function Vn(){$e.current.muted=!$e.current.muted,$e.current.muted?(qt.current.setAttribute("data-volume",volume.value),qt.current.value=0):qt.current.value=qt.current.dataset.volume}return Be.createElement("div",{style:{position:"relative"},ref:ot},Be.createElement("div",{ref:qe,className:`${be.watermark} animated_alternate animate__animated_10s animate__infinite animate__stepstart ${be.animate__loop}`},ze&&an?an.login:" "),Be.createElement("div",{className:be.container},Be.createElement("div",{className:be["video-container"],id:"video-container"},Be.createElement("div",{className:be["playback-animation"],id:"playback-animation"},Be.createElement("svg",{className:be["playback-icons"]},Be.createElement("use",{className:"hidden",href:"#play-icon"}),Be.createElement("use",{href:"#pause"}))),Be.createElement("video",{className:be.video,id:"video",preload:"auto",disablePictureInPicture:!0,ref:$e,autoPlay:Re}),Be.createElement("div",{className:`${be["video-controls"]} `,id:"video-controls"},Be.createElement("div",{className:be["bottom-controls"]},Be.createElement("div",{className:be["left-controls"]},Be.createElement("button",{"data-title":"\u64AD\u653E/\u6682\u505C",id:"play",onClick:Kn},Be.createElement("svg",{className:be["playback-icons"]},Be.createElement("use",{ref:lt,href:"#play-icon"}),Be.createElement("use",{ref:at,style:{display:"none"},href:"#pause"}))),Be.createElement("div",{className:be.time},Be.createElement("time",{id:"time-elapsed",ref:ft},"00:00"),Be.createElement("span",null," / "),Be.createElement("time",{id:"duration",ref:yt},"00:00"))),Be.createElement("div",{className:be["right-controls"]},ne&&Be.createElement(Fe.Z,{placement:"top",overlayClassName:be.rateOverlay,getPopupContainer:Zn=>Zn.parentNode,menu:{items:[{key:"1",label:Be.createElement("span",{onClick:()=>{In(1),$e.current.playbackRate=1}},"1.0x")},{key:"2",label:Be.createElement("span",{onClick:()=>{In(1.5),$e.current.playbackRate=1.5}},"1.5x")},{key:"3",label:Be.createElement("span",{onClick:()=>{In(2),$e.current.playbackRate=2}},"2.0x")}]}},Be.createElement("div",{className:`${be.controlText} mr5`},"\u500D\u901F")),Be.createElement(ge.CopyToClipboard,{text:le,onCopy:()=>He.ZP.success("\u590D\u5236\u6210\u529F")},Be.createElement("button",{"data-title":"\u590D\u5236\u94FE\u63A5"},Be.createElement("i",{className:"icon-lianjie2 iconfont",style:{fontSize:"12px",color:"white"}}))),Be.createElement("div",{className:be["volume-controls"]},Be.createElement("button",{"data-title":"\u5F00\u542F/\u5173\u95ED\u58F0\u97F3",className:be["volume-button"],id:"volume-button",onClick:Vn},Be.createElement("i",{ref:ht,className:"icon-a-bianzu8 iconfont",style:{fontSize:"14px",color:"white"}}),Be.createElement("i",{ref:Kt,className:"icon-shengyinkaibeifen iconfont",style:{fontSize:"14px",color:"white"}}),Be.createElement("i",{ref:Ut,className:"icon-shengyinkai iconfont",style:{fontSize:"14px",color:"white"}})),Be.createElement("input",{className:be.volume,id:"volume",value:"1","data-mute":"0.5",type:"range",max:"1",min:"0",step:"0.01",ref:qt,style:{display:"none"},onClick:wt})),Be.createElement("button",{"data-title":"\u5168\u5C4F/\u9000\u51FA\u5168\u5C4F",className:be["fullscreen-button"],onClick:()=>{(0,Ae.vp)()?(0,Ae.BU)():(0,Ae.Dj)(ot.current)}},Be.createElement("i",{className:"icon-fangda1 iconfont",style:{fontSize:"12px",color:"white"}})))),Be.createElement("div",{className:be["video-progress"]},Be.createElement("progress",{ref:ut,value:"0",min:"0"}),Be.createElement("input",{className:be.seek,ref:rt,value:"0",min:"0",type:"range",step:"1"}),Be.createElement("div",{className:be["seek-tooltip"],ref:dt,id:"seek-tooltip"},"00:00"))))),Be.createElement("svg",{style:{display:"none"}},Be.createElement("defs",null,Be.createElement("symbol",{id:"pause",viewBox:"0 0 24 24"},Be.createElement("path",{d:"M14.016 5.016h3.984v13.969h-3.984v-13.969zM6 18.984v-13.969h3.984v13.969h-3.984z"})),Be.createElement("symbol",{id:"play-icon",viewBox:"0 0 24 24"},Be.createElement("path",{d:"M8.016 5.016l10.969 6.984-10.969 6.984v-13.969z"})),Be.createElement("symbol",{id:"volume-high",viewBox:"0 0 24 24"},Be.createElement("path",{d:"M14.016 3.234q3.047 0.656 5.016 3.117t1.969 5.648-1.969 5.648-5.016 3.117v-2.063q2.203-0.656 3.586-2.484t1.383-4.219-1.383-4.219-3.586-2.484v-2.063zM16.5 12q0 2.813-2.484 4.031v-8.063q1.031 0.516 1.758 1.688t0.727 2.344zM3 9h3.984l5.016-5.016v16.031l-5.016-5.016h-3.984v-6z"})),Be.createElement("symbol",{id:"volume-low",viewBox:"0 0 24 24"},Be.createElement("path",{d:"M5.016 9h3.984l5.016-5.016v16.031l-5.016-5.016h-3.984v-6zM18.516 12q0 2.766-2.531 4.031v-8.063q1.031 0.516 1.781 1.711t0.75 2.32z"})),Be.createElement("symbol",{id:"volume-mute",viewBox:"0 0 24 24"},Be.createElement("path",{d:"M12 3.984v4.219l-2.109-2.109zM4.266 3l16.734 16.734-1.266 1.266-2.063-2.063q-1.547 1.313-3.656 1.828v-2.063q1.172-0.328 2.25-1.172l-4.266-4.266v6.75l-5.016-5.016h-3.984v-6h4.734l-4.734-4.734zM18.984 12q0-2.391-1.383-4.219t-3.586-2.484v-2.063q3.047 0.656 5.016 3.117t1.969 5.648q0 2.203-1.031 4.172l-1.5-1.547q0.516-1.266 0.516-2.625zM16.5 12q0 0.422-0.047 0.609l-2.438-2.438v-2.203q1.031 0.516 1.758 1.688t0.727 2.344z"})),Be.createElement("symbol",{id:"fullscreen",viewBox:"0 0 24 24"},Be.createElement("path",{d:"M14.016 5.016h4.969v4.969h-1.969v-3h-3v-1.969zM17.016 17.016v-3h1.969v4.969h-4.969v-1.969h3zM5.016 9.984v-4.969h4.969v1.969h-3v3h-1.969zM6.984 14.016v3h3v1.969h-4.969v-4.969h1.969z"})),Be.createElement("symbol",{id:"fullscreen-exit",viewBox:"0 0 24 24"},Be.createElement("path",{d:"M15.984 8.016h3v1.969h-4.969v-4.969h1.969v3zM14.016 18.984v-4.969h4.969v1.969h-3v3h-1.969zM8.016 8.016v-3h1.969v4.969h-4.969v-1.969h3zM5.016 15.984v-1.969h4.969v4.969h-1.969v-3h-3z"})),Be.createElement("symbol",{id:"pip",viewBox:"0 0 24 24"},Be.createElement("path",{d:"M21 19.031v-14.063h-18v14.063h18zM23.016 18.984q0 0.797-0.609 1.406t-1.406 0.609h-18q-0.797 0-1.406-0.609t-0.609-1.406v-14.016q0-0.797 0.609-1.383t1.406-0.586h18q0.797 0 1.406 0.586t0.609 1.383v14.016zM18.984 11.016v6h-7.969v-6h7.969z"})))))})},62319:function(St,Dt,Ie){"use strict";Ie.d(Dt,{h:function(){return ie}});var Be=Ie(59301),He=Ie(57809),Fe=Ie(78241),Ce=Ie(3113),_e=Ie(89780),Pe=Ie.n(_e),ge=Ie(76809),Ae=Ie(17022),be=Object.defineProperty,we=Object.defineProperties,pe=Object.getOwnPropertyDescriptors,ye=Object.getOwnPropertySymbols,xe=Object.prototype.hasOwnProperty,ce=Object.prototype.propertyIsEnumerable,te=(ue,ve,Se)=>ve in ue?be(ue,ve,{enumerable:!0,configurable:!0,writable:!0,value:Se}):ue[ve]=Se,ne=(ue,ve)=>{for(var Se in ve||(ve={}))xe.call(ve,Se)&&te(ue,Se,ve[Se]);if(ye)for(var Se of ye(ve))ce.call(ve,Se)&&te(ue,Se,ve[Se]);return ue},le=(ue,ve)=>we(ue,pe(ve));const oe=He.default.Option,de={labelCol:{span:4},wrapperCol:{span:20}},he={asp:["ASP","vbscript"],actionscript:["ActionScript(3.0)/Flash/Flex","clike"],bash:["Bash/Bat","shell"],css:["CSS","css"],c:["C","clike"],cpp:["C++","clike"],csharp:["C#","clike"],coffeescript:["CoffeeScript","coffeescript"],d:["D","d"],dart:["Dart","dart"],delphi:["Delphi/Pascal","pascal"],erlang:["Erlang","erlang"],go:["Golang","go"],groovy:["Groovy","groovy"],html:["HTML","text/html"],java:["Java","clike"],json:["JSON","text/json"],javascript:["Javascript","javascript"],lua:["Lua","lua"],less:["LESS","css"],markdown:["Markdown","gfm"],"objective-c":["Objective-C","clike"],php:["PHP","php"],perl:["Perl","perl"],python:["Python","python"],r:["R","r"],rst:["reStructedText","rst"],ruby:["Ruby","ruby"],sql:["SQL","sql"],sass:["SASS/SCSS","sass"],shell:["Shell","shell"],scala:["Scala","clike"],swift:["Swift","clike"],vb:["VB/VBScript","vb"],xml:["XML","text/xml"],yaml:["YAML","yaml"]};Dt.Z=({callback:ue,onCancel:ve})=>{const[Se,De]=(0,Be.useState)("python");function Re(ze){De(he[ze][1])}function Ne(ze){ue(ze)}return Be.createElement(Fe.default,le(ne({},de),{className:"code-block-panel",initialValues:{language:"python",content:""},onFinish:Ne,style:{width:500}}),Be.createElement(Fe.default.Item,{label:"\u4EE3\u7801\u8BED\u8A00",name:"language"},Be.createElement(He.default,{getPopupContainer:ze=>ze.parentNode,onChange:Re},Object.keys(he).map(ze=>Be.createElement(oe,{key:ze,value:ze},he[ze][0])))),Be.createElement(Fe.default.Item,{label:"\u4EE3\u7801\u5185\u5BB9",name:"content",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u4EE3\u7801\u5185\u5BB9"}]},Be.createElement(ie,{mode:Se})),Be.createElement("div",{className:"flex-container flex-end"},Be.createElement(Ce.ZP,{type:"primary",htmlType:"submit",style:{marginRight:10}},"\u786E\u5B9A"),Be.createElement(Ce.ZP,{type:"ghost",onClick:ve},"\u53D6\u6D88")))};function ie({value:ue,onChange:ve,mode:Se,options:De={}}){const Re=(0,Be.useRef)(),[Ne,ze]=(0,Be.useState)();return(0,Be.useEffect)(()=>{if(Ne){let Ge=function(Xe){const Qe=Xe.getValue();ve&&ve(Qe)};return Ne.on("change",Ge),()=>{Ne.off("change",Ge)}}},[Ne,ve]),(0,Be.useEffect)(()=>{Ne&&Ne.setOption("mode",Se)},[Ne,Se]),(0,Be.useEffect)(()=>{Ne&&(ue!==Ne.getValue()||ue==="")&&setTimeout(()=>{Ne.setValue(ue||"")},300)},[Ne,ue]),(0,Be.useEffect)(()=>{if(Re.current&&!Ne){const Ge=Pe().fromTextArea(Re.current,ne({mode:Se,lineNumbers:!0,lineWrapping:!0,autoCloseBrackets:!0,tabSize:4,autofocus:!0,autoCloseTags:!0,matchBrackets:!0,styleActiveLine:!0},De));ze(Ge)}},[Re.current,Ne]),Be.createElement("div",{className:"my-codemirror-container"},Be.createElement("textarea",{ref:Re}))}},30720:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return Me}});var Be=Ie(59301),He=Ie(89780),Fe=Ie.n(He),Ce=Ie(76374),_e=Ie(76809),Pe=Ie(6313),ge=Ie(25717),Ae=Ie(99498),be=Ie(25419),we=Ie(67549),pe=Ie(8658),ye=({value:Le="",className:Te,showTextOnly:Ue,showLines:Ye,style:xt={}})=>{const Pt=(0,Be.useMemo)(()=>"",[Le]);return Be.createElement(Be.Fragment,null,Be.createElement("div",{dangerouslySetInnerHTML:{__html:Pt}}))},xe=Ie(59301),ce=Object.defineProperty,te=Object.defineProperties,ne=Object.getOwnPropertyDescriptors,le=Object.getOwnPropertySymbols,oe=Object.prototype.hasOwnProperty,de=Object.prototype.propertyIsEnumerable,he=(Le,Te,Ue)=>Te in Le?ce(Le,Te,{enumerable:!0,configurable:!0,writable:!0,value:Ue}):Le[Te]=Ue,ie=(Le,Te)=>{for(var Ue in Te||(Te={}))oe.call(Te,Ue)&&he(Le,Ue,Te[Ue]);if(le)for(var Ue of le(Te))de.call(Te,Ue)&&he(Le,Ue,Te[Ue]);return Le},ue=(Le,Te)=>te(Le,ne(Te));let ve=[{title:"\u7C97\u4F53",icon:"md-iconfont icon-bold",actionName:"bold"},{title:"\u659C\u4F53",icon:"md-iconfont icon-italic",actionName:"italic"},"|",{title:"\u65E0\u5E8F\u5217\u8868",icon:"md-iconfont icon-unorder-list",actionName:"list-ul"},{title:"\u6709\u5E8F\u5217\u8868",icon:"md-iconfont icon-order-list",actionName:"list-ol"},"|",{title:"\u884C\u5185\u4EE3\u7801",icon:"md-iconfont icon-code",actionName:"code"},{title:"\u4EE3\u7801\u5757\uFF08\u591A\u8BED\u8A00\u98CE\u683C\uFF09",icon:"md-iconfont icon-file-code",actionName:"code-block"},{title:"\u94FE\u63A5",icon:"md-iconfont icon-link",actionName:"link"},"|",{title:"\u884C\u5185\u516C\u5F0F",icon:"md-iconfont icon-sum",actionName:"inline-latex"},{title:"\u6570\u5B66\u56FE\u50CF",icon:"iconfont icon-shuxuetuxiang2",actionName:"maths-latex"},{title:"\u591A\u884C\u516C\u5F0F",icon:"iconfont icon-jisuan1",actionName:"latex"},"|",{title:"\u6DFB\u52A0\u56FE\u7247",icon:"md-iconfont icon-picture",actionName:"upload-image"},{title:"\u63D2\u5165\u753B\u56FE",icon:"iconfont icon-sheji",actionName:"draw-image"},{title:"\u63D2\u5165\u6D41\u7A0B\u56FE",icon:"iconfont icon-liucheng",actionName:"add-flowchart"},{title:"\u8868\u683C",icon:"md-iconfont icon-table",actionName:"add-table"},"|",{title:"\u6362\u884C",icon:"md-iconfont icon-minus",actionName:"line-break"},{title:"\u6E05\u7A7A",icon:"md-iconfont icon-eraser",actionName:"eraser"}];function Se({onActionCallback:Le,title:Te,icon:Ue,actionName:Ye,className:xt="",children:Pt}){function Xt(){Le(Ye)}return xe.createElement("a",{title:Te,className:xt,onClick:Xt},xe.createElement("i",{className:`${Ue}`}),Pt)}var De=({watch:Le,showNullButton:Te,showNullProgramButton:Ue,onActionCallback:Ye,fullScreen:xt,insertTemp:Pt,hidetoolBar:Xt,extraUse:Ht})=>{const mn=[...ve,{title:`${Le?"\u5173\u95ED\u5B9E\u65F6\u9884\u89C8":"\u5F00\u542F\u5B9E\u65F6\u9884\u89C8"}`,icon:`${Le?"md-iconfont icon-eye-slash":"md-iconfont icon-eye"}`,actionName:"trigger-watch"}];return xe.createElement("ul",{className:"markdown-toolbar-container"},!Xt&&mn.map((pn,Yn)=>xe.createElement("li",{key:Yn},pn.actionName?xe.createElement(Se,ue(ie({},pn),{onActionCallback:Ye})):xe.createElement("span",{className:"v-line"}))),Te?xe.createElement("li",null,xe.createElement(Se,{icon:"md-iconfont icon-edit insert-blank",className:"btn-null",title:"\u589E\u52A0\u586B\u7A7A",actionName:"add-null-ch",onActionCallback:Ye},xe.createElement("span",{className:"fill-tip"},"\u70B9\u51FB\u63D2\u5165\b\u586B\u7A7A\u9879"))):null,Ue?xe.createElement(xe.Fragment,null,xe.createElement("li",null,xe.createElement(Se,{icon:"md-iconfont icon-edit insert-blank",className:"btn-null",title:"\u589E\u52A0\u586B\u7A7A",actionName:"add-signal",onActionCallback:Ye},xe.createElement("span",{className:"fill-tip"},"+\u5355\u884C\u586B\u7A7A\u9879"))),xe.createElement("li",null,xe.createElement(Se,{icon:"md-iconfont icon-uniE900 insert-blank",className:"btn-null",title:"\u589E\u52A0\u586B\u7A7A",actionName:"add-multiple",onActionCallback:Ye},xe.createElement("span",{className:"fill-tip"},"+\u591A\u884C\u586B\u7A7A\u9879")))):null,Pt&&xe.createElement("li",null,xe.createElement(Se,{icon:"md-iconfont icon-edit",className:"btn-null",title:"\u63D2\u5165\u6A21\u677F",actionName:`inster-template-${Pt}`,onActionCallback:Ye},xe.createElement("span",{className:"fill-tip"},"\u63D2\u5165\u6A21\u677F"))),Ht&&xe.createElement("li",null,Ht),xe.createElement("li",{className:"btn-full-screen"},xe.createElement(Se,{icon:`${xt?"md-iconfont icon-shrink":"md-iconfont icon-enlarge"}`,title:xt?"\u5173\u95ED\u5168\u5C4F":"\u5F00\u542F\u5168\u5C4F",actionName:"trigger-full-screen",onActionCallback:Ye})))},Re=Ie(61569),Ne=Ie(78241),ze=Ie(92832),Ge=Ie(3113),Xe=Object.defineProperty,Qe=Object.defineProperties,nt=Object.getOwnPropertyDescriptors,$e=Object.getOwnPropertySymbols,qe=Object.prototype.hasOwnProperty,ot=Object.prototype.propertyIsEnumerable,at=(Le,Te,Ue)=>Te in Le?Xe(Le,Te,{enumerable:!0,configurable:!0,writable:!0,value:Ue}):Le[Te]=Ue,lt=(Le,Te)=>{for(var Ue in Te||(Te={}))qe.call(Te,Ue)&&at(Le,Ue,Te[Ue]);if($e)for(var Ue of $e(Te))ot.call(Te,Ue)&&at(Le,Ue,Te[Ue]);return Le},rt=(Le,Te)=>Qe(Le,nt(Te));const ut={labelCol:{span:4},wrapperCol:{span:20}};var yt=({callback:Le,onCancel:Te})=>{function Ue(Ye){Le(Ye)}return Be.createElement(Ne.default,rt(lt({},ut),{initialValues:{link:"http://",title:""},className:"link-panel",onFinish:Ue,style:{width:500}}),Be.createElement(Ne.default.Item,{label:"\u94FE\u63A5\u5730\u5740",name:"link",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u94FE\u63A5\u5730\u5740"}]},Be.createElement(ze.default,null)),Be.createElement(Ne.default.Item,{label:"\u94FE\u63A5\u6807\u9898",name:"title",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u94FE\u63A5\u6807\u9898"}]},Be.createElement(ze.default,null)),Be.createElement("div",{className:"flex-container flex-end"},Be.createElement(Ge.ZP,{type:"primary",htmlType:"submit",style:{marginRight:10}},"\u786E\u5B9A"),Be.createElement(Ge.ZP,{type:"ghost",onClick:Te},"\u53D6\u6D88")))},ft=Ie(62319),dt=Ie(52999),ht=Ie(43418),Ut=Ie(95237),Kt=Ie(2781),qt=Ie(59301),vn=({callback:Le,onCancel:Te})=>{const Ue=document.createElement("canvas"),Ye=Ue.getContext("2d");Ue.width=1e3,Ue.height=800,Ye.fillStyle="#ffffff",Ye.fillRect(0,0,Ue.width,Ue.height);const xt=Ue.toDataURL("image/png");return qt.createElement(ht.default,{open:!0,width:"100vw",style:{height:"100vh",top:0},footer:null,title:null,closable:!1},qt.createElement(Ut.Z,{style:{height:"100vh"}},qt.createElement(Kt.Z,{fullWidth:!0,noAssociationId:!0,showFullTools:!0,data:{src:xt,visible:!0,title:String(Date.now())},onOk:Pt=>{Le({src:Pt.url})},onClose:Te})))},Ot=Ie(12378);function rn(){go.CommandHandler.call(this),this._arrowKeyBehavior="move",this._pasteOffset=new go.Point(10,10),this._lastPasteOffset=new go.Point(0,0)}go.Diagram.inherit(rn,go.CommandHandler),rn.prototype.canAlignSelection=function(){var Le=this.diagram;return!(Le===null||Le.isReadOnly||Le.isModelReadOnly||Le.selection.count<2)},rn.prototype.alignLeft=function(){var Le=this.diagram;Le.startTransaction("aligning left");var Te=1/0;Le.selection.each(function(Ue){Ue instanceof go.Link||(Te=Math.min(Ue.position.x,Te))}),Le.selection.each(function(Ue){Ue instanceof go.Link||Ue.move(new go.Point(Te,Ue.position.y))}),Le.commitTransaction("aligning left")},rn.prototype.alignRight=function(){var Le=this.diagram;Le.startTransaction("aligning right");var Te=-1/0;Le.selection.each(function(Ue){if(!(Ue instanceof go.Link)){var Ye=Ue.actualBounds.x+Ue.actualBounds.width;Te=Math.max(Ye,Te)}}),Le.selection.each(function(Ue){Ue instanceof go.Link||Ue.move(new go.Point(Te-Ue.actualBounds.width,Ue.position.y))}),Le.commitTransaction("aligning right")},rn.prototype.alignTop=function(){var Le=this.diagram;Le.startTransaction("alignTop");var Te=1/0;Le.selection.each(function(Ue){Ue instanceof go.Link||(Te=Math.min(Ue.position.y,Te))}),Le.selection.each(function(Ue){Ue instanceof go.Link||Ue.move(new go.Point(Ue.position.x,Te))}),Le.commitTransaction("alignTop")},rn.prototype.alignBottom=function(){var Le=this.diagram;Le.startTransaction("aligning bottom");var Te=-1/0;Le.selection.each(function(Ue){if(!(Ue instanceof go.Link)){var Ye=Ue.actualBounds.y+Ue.actualBounds.height;Te=Math.max(Ye,Te)}}),Le.selection.each(function(Ue){Ue instanceof go.Link||Ue.move(new go.Point(Ue.actualBounds.x,Te-Ue.actualBounds.height))}),Le.commitTransaction("aligning bottom")},rn.prototype.alignCenterX=function(){var Le=this.diagram,Te=Le.selection.first();if(Te){Le.startTransaction("aligning Center X");var Ue=Te.actualBounds.x+Te.actualBounds.width/2;Le.selection.each(function(Ye){Ye instanceof go.Link||Ye.move(new go.Point(Ue-Ye.actualBounds.width/2,Ye.actualBounds.y))}),Le.commitTransaction("aligning Center X")}},rn.prototype.alignCenterY=function(){var Le=this.diagram,Te=Le.selection.first();if(Te){Le.startTransaction("aligning Center Y");var Ue=Te.actualBounds.y+Te.actualBounds.height/2;Le.selection.each(function(Ye){Ye instanceof go.Link||Ye.move(new go.Point(Ye.actualBounds.x,Ue-Ye.actualBounds.height/2))}),Le.commitTransaction("aligning Center Y")}},rn.prototype.alignColumn=function(Le){var Te=this.diagram;Te.startTransaction("align Column"),Le===void 0&&(Le=0),Le=parseFloat(Le);var Ue=new Array;Te.selection.each(function(Ht){Ht instanceof go.Link||Ue.push(Ht)});for(var Ye=0;Ye0){for(var Ht=Pt.elt(Xt-1);Ht!==null&&Ht.isTreeExpanded&&!Ht.isTreeLeaf;){var mn=this._sortTreeChildrenByY(Ht);Ht=mn.last()}Ht!==null&&Le.select(Ht)}else Le.select(xt)}}else if(Ue.key==="Down")if(Te.isTreeExpanded&&!Te.isTreeLeaf){var Ye=this._sortTreeChildrenByY(Te).first();Ye!==null&&Le.select(Ye)}else for(;Te!==null;){var xt=Te.findTreeParentNode();if(xt===null)break;var Pt=this._sortTreeChildrenByY(xt),Xt=Pt.indexOf(Te);if(XtPt.y?1:xt.xPt.x?1:0}),Te},rn.prototype.copyToClipboard=function(Le){go.CommandHandler.prototype.copyToClipboard.call(this,Le),this._lastPasteOffset.set(this.pasteOffset)},rn.prototype.pasteFromClipboard=function(){var Le=go.CommandHandler.prototype.pasteFromClipboard.call(this);return this.diagram.moveParts(Le,this._lastPasteOffset),this._lastPasteOffset.add(this.pasteOffset),Le},Object.defineProperty(rn.prototype,"arrowKeyBehavior",{get:function(){return this._arrowKeyBehavior},set:function(Le){if(Le!=="move"&&Le!=="select"&&Le!=="scroll"&&Le!=="tree"&&Le!=="none")throw new Error('DrawCommandHandler.arrowKeyBehavior must be either "move", "select", "scroll", "tree", or "none", not: '+Le);this._arrowKeyBehavior=Le}}),Object.defineProperty(rn.prototype,"pasteOffset",{get:function(){return this._pasteOffset},set:function(Le){if(!(Le instanceof go.Point))throw new Error("DrawCommandHandler.pasteOffset must be a Point, not: "+Le);this._pasteOffset.set(Le)}});var an=rn,On=Ie(4285),Rn=Ie(43604),sn=Ie(64866),tn={myPaletteDiv:"myPaletteDiv___Xjz2I",flowChartWrp:"flowChartWrp____f45r",maxH60:"maxH60___Pd4Re"},Gt=Ie(59301),It=(Le,Te,Ue)=>new Promise((Ye,xt)=>{var Pt=mn=>{try{Ht(Ue.next(mn))}catch(pn){xt(pn)}},Xt=mn=>{try{Ht(Ue.throw(mn))}catch(pn){xt(pn)}},Ht=mn=>mn.done?Ye(mn.value):Promise.resolve(mn.value).then(Pt,Xt);Ht((Ue=Ue.apply(Le,Te)).next())});function Et({onCancel:Le,callback:Te}){let Ue=(0,Be.useRef)(),Ye=(0,Be.useRef)(),xt=(0,Be.useRef)(),Pt=(0,Be.useRef)(!1);const Xt=(0,Be.useRef)(!1),[Ht,mn]=(0,Be.useState)(0);function pn(){const Dn=Ot.bx.make,qn={red:"#ff3333",blue:"#3358ff",green:"#25ad23",magenta:"#d533ff",purple:"#7d33ff",orange:"#ff6233",brown:"#8e571e",white:"#ffffff",black:"#000000",beige:"#fffcd5",extralightblue:"#d5ebff",extralightred:"#f2dfe0",lightblue:"#a5d2fa",lightgray:"#cccccc",lightgreen:"#b3e6b3",lightred:"#fcbbbd"};Ue.current=new Ot.S0(Ye.current,{padding:20,grid:Dn(Ot.s_,"Grid",Dn(Ot.bn,"LineH",{stroke:"lightgray",strokeWidth:.5}),Dn(Ot.bn,"LineV",{stroke:"lightgray",strokeWidth:.5})),"draggingTool.isGridSnapEnabled":!0,handlesDragDropForTopLevelParts:!0,mouseDrop:Hr=>{var wa=Hr.diagram.commandHandler.addTopLevelParts(Hr.diagram.selection,!0);wa||Hr.diagram.currentTool.doCancel()},commandHandler:Dn(an),"clickCreatingTool.archetypeNodeData":{text:"\u672A\u547D\u540D",fill:null,stroke:null,borderColor:"rgba(0,0,0,0)"},PartCreated:Hr=>{var wa=Hr.subject;wa.location=wa.location.copy().snapToGridPoint(Hr.diagram.grid.gridOrigin,Hr.diagram.grid.gridCellSize),setTimeout(()=>{Hr.diagram.commandHandler.editTextBlock()},20)},"commandHandler.archetypeGroupData":{isGroup:!0,text:"NEW GROUP"},SelectionGrouped:Hr=>{var wa=Hr.subject;setTimeout(()=>{Hr.diagram.commandHandler.editTextBlock()})},LinkRelinked:Hr=>{var wa=Hr.parameter.part;wa.invalidateConnectedLinks();var Ta=Hr.subject;Hr.diagram.toolManager.linkingTool.isForwards?Ta.toNode.invalidateConnectedLinks():Ta.fromNode.invalidateConnectedLinks()},"undoManager.isEnabled":!0}),Ue.current.nodeTemplate=Dn(Ot.NB,"Auto",{locationSpot:Ot.z6.Center,locationObjectName:"SHAPE",desiredSize:new Ot.$u(120,60),minSize:new Ot.$u(40,40),resizable:!0,resizeCellSize:new Ot.$u(10,10),rotatable:!0},new Ot.KX("location","loc",Ot.E9.parse).makeTwoWay(Ot.E9.stringify),new Ot.KX("desiredSize","size",Ot.$u.parse).makeTwoWay(Ot.$u.stringify),Dn(Ot.bn,{name:"SHAPE",fill:qn.white,cursor:"pointer",portId:"",fromLinkable:!0,toLinkable:!0,fromLinkableDuplicates:!0,toLinkableDuplicates:!0,fromSpot:Ot.z6.AllSides,toSpot:Ot.z6.AllSides},new Ot.KX("figure"),new Ot.KX("fill"),new Ot.KX("stroke","borderColor"),new Ot.KX("strokeWidth","thickness"),new Ot.KX("strokeDashArray","dash")),Dn(Ot.bn,{width:100,height:20,strokeWidth:0,fill:"transparent"}),Dn(Ot.al,{margin:1,textAlign:"center",overflow:Ot.al.OverflowEllipsis,editable:!0},new Ot.KX("text").makeTwoWay(),new Ot.KX("stroke","color"))),Ue.current.nodeTemplate.toolTip=Dn("ToolTip",Dn(Ot.s_,"Vertical",{maxSize:new Ot.$u(200,NaN)},Dn(Ot.al,{font:"bold 10pt sans-serif",textAlign:"center"},new Ot.KX("text")),Dn(Ot.al,{font:"10pt sans-serif",textAlign:"center"},new Ot.KX("text","details"))));function er(Hr,wa){var Ta=(ua,qa)=>{ua.handled=!0,ua.diagram.model.commit(zi=>{var Fa=qa.part.adornedPart,Ui=new Ot.E9().setRectSpot(Fa.actualBounds,Hr);Ui.subtract(Fa.location),Ui.scale(2,2),Ui.x+=Math.sign(Ui.x)*130,Ui.y+=Math.sign(Ui.y)*130,Ui.add(Fa.location),Ui.snapToGridPoint(ua.diagram.grid.gridOrigin,ua.diagram.grid.gridCellSize);var Yi=zi.copyNodeData(Fa.data);zi.setGroupKeyForNodeData(Yi,zi.getGroupKeyForNodeData(Fa.data)),zi.addNodeData(Yi);var Zr={from:Fa.key,to:zi.getKeyForNodeData(Yi)};zi.addLinkData(Zr);var oo=ua.diagram.findNodeForData(Yi);oo.location=Ui,ua.diagram.select(oo),setTimeout(()=>{ua.diagram.commandHandler.editTextBlock()},20)})};return Dn(Ot.bn,{figure:wa,alignment:Hr,alignmentFocus:Hr.opposite(),width:Hr.equals(Ot.z6.Top)||Hr.equals(Ot.z6.Bottom)?25:18,height:Hr.equals(Ot.z6.Top)||Hr.equals(Ot.z6.Bottom)?18:25,fill:"orange",stroke:qn.white,strokeWidth:4,mouseEnter:(ua,qa)=>qa.fill="dodgerblue",mouseLeave:(ua,qa)=>qa.fill="orange",isActionable:!0,click:Ta,contextClick:Ta})}function dr(Hr){return Dn(Ot.bn,{fill:"orange",stroke:"rgba(0, 0, 0, 0)",strokeWidth:15,background:"transparent",geometryString:"F1 M0 0 b 0 360 -4 0 4 z M10 0 b 0 360 -4 0 4 z M20 0 b 0 360 -4 0 4",isActionable:!0,cursor:"context-menu",mouseEnter:(wa,Ta)=>Ta.fill="dodgerblue",mouseLeave:(wa,Ta)=>Ta.fill="orange",click:(wa,Ta)=>{wa.diagram.commandHandler.showContextMenu(Ta.part.adornedPart)}},Hr||{})}Ue.current.nodeTemplate.selectionAdornmentTemplate=Dn(Ot.uz,"Spot",Dn(Ot.Vm,{padding:10}),er(Ot.z6.Top,"TriangleUp"),er(Ot.z6.Left,"TriangleLeft"),er(Ot.z6.Right,"TriangleRight"),er(Ot.z6.Bottom,"TriangleDown"),dr({alignment:new Ot.z6(.75,0)}));function fn(Hr,wa){return(Ta,ua)=>{Ta.handled=!0,Ta.diagram.model.commit(qa=>{qa.set(ua.part.adornedPart.data,Hr,wa)})}}function nn(Hr,wa){return wa||(wa="color"),Dn(Ot.bn,{width:16,height:16,stroke:"lightgray",fill:Hr,margin:1,background:"transparent",mouseEnter:(Ta,ua)=>ua.stroke="dodgerblue",mouseLeave:(Ta,ua)=>ua.stroke="lightgray",click:fn(wa,Hr),contextClick:fn(wa,Hr)})}function Nn(){return[Dn("ContextMenuButton",Dn(Ot.s_,"Horizontal",nn(qn.white,"fill"),nn(qn.beige,"fill"),nn(qn.extralightblue,"fill"),nn(qn.extralightred,"fill"))),Dn("ContextMenuButton",Dn(Ot.s_,"Horizontal",nn(qn.lightgray,"fill"),nn(qn.lightgreen,"fill"),nn(qn.lightblue,"fill"),nn(qn.lightred,"fill")))]}function jn(){return[Dn("ContextMenuButton",Dn(Ot.s_,"Horizontal",nn(qn.black),nn(qn.green),nn(qn.blue),nn(qn.red))),Dn("ContextMenuButton",Dn(Ot.s_,"Horizontal",nn(qn.white),nn(qn.magenta),nn(qn.purple),nn(qn.orange)))]}function rr(Hr,wa){return wa||(wa="thickness"),Dn(Ot.bn,"LineH",{width:16,height:16,strokeWidth:Hr,margin:1,background:"transparent",mouseEnter:(Ta,ua)=>ua.background="dodgerblue",mouseLeave:(Ta,ua)=>ua.background="transparent",click:fn(wa,Hr),contextClick:fn(wa,Hr)})}function mr(Hr,wa){return wa||(wa="dash"),Dn(Ot.bn,"LineH",{width:24,height:16,strokeWidth:2,strokeDashArray:Hr,margin:1,background:"transparent",mouseEnter:(Ta,ua)=>ua.background="dodgerblue",mouseLeave:(Ta,ua)=>ua.background="transparent",click:fn(wa,Hr),contextClick:fn(wa,Hr)})}function Xn(){return[Dn("ContextMenuButton",Dn(Ot.s_,"Horizontal",rr(1),rr(2),rr(3),rr(4))),Dn("ContextMenuButton",Dn(Ot.s_,"Horizontal",mr(null),mr([2,4]),mr([4,4])))]}function ur(Hr,wa){return wa||(wa="figure"),Dn(Ot.bn,{width:32,height:32,scale:.5,fill:"lightgray",figure:Hr,margin:1,background:"transparent",mouseEnter:(Ta,ua)=>ua.fill="dodgerblue",mouseLeave:(Ta,ua)=>ua.fill="lightgray",click:fn(wa,Hr),contextClick:fn(wa,Hr)})}Ue.current.nodeTemplate.contextMenu=Dn("ContextMenu",Dn("ContextMenuButton",Dn(Ot.s_,"Horizontal",ur("Rectangle"),ur("RoundedRectangle"),ur("Ellipse"),ur("Diamond"))),Dn("ContextMenuButton",Dn(Ot.s_,"Horizontal",ur("Parallelogram2"),ur("ManualOperation"),ur("Procedure"),ur("Cylinder1"))),Dn("ContextMenuButton",Dn(Ot.s_,"Horizontal",ur("Terminator"),ur("CreateRequest"),ur("Document"),ur("TriangleDown"))),Nn(),jn(),Xn()),Ue.current.groupTemplate=Dn(Ot.ZA,"Spot",{layerName:"Background",ungroupable:!0,locationSpot:Ot.z6.Center,selectionObjectName:"BODY",computesBoundsAfterDrag:!0,handlesDragDropForMembers:!0,mouseDrop:(Hr,wa)=>{var Ta=wa.addMembers(wa.diagram.selection,!0);Ta||wa.diagram.currentTool.doCancel()},avoidable:!1},new Ot.KX("location","loc",Ot.E9.parse).makeTwoWay(Ot.E9.stringify),Dn(Ot.s_,"Auto",{name:"BODY"},Dn(Ot.bn,{parameter1:10,fill:qn.white,strokeWidth:2,cursor:"pointer",fromLinkable:!0,toLinkable:!0,fromLinkableDuplicates:!0,toLinkableDuplicates:!0,fromSpot:Ot.z6.AllSides,toSpot:Ot.z6.AllSides},new Ot.KX("fill"),new Ot.KX("stroke","color"),new Ot.KX("strokeWidth","thickness"),new Ot.KX("strokeDashArray","dash")),Dn(Ot.Vm,{background:"transparent",margin:20})),Dn(Ot.al,{alignment:Ot.z6.Top,alignmentFocus:Ot.z6.Bottom,font:"bold 12pt sans-serif",editable:!0},new Ot.KX("text"),new Ot.KX("stroke","color"))),Ue.current.groupTemplate.selectionAdornmentTemplate=Dn(Ot.uz,"Spot",Dn(Ot.s_,"Auto",Dn(Ot.bn,{fill:null,stroke:"dodgerblue",strokeWidth:3}),Dn(Ot.Vm,{margin:1.5})),dr({alignment:Ot.z6.TopRight,alignmentFocus:Ot.z6.BottomRight})),Ue.current.groupTemplate.contextMenu=Dn("ContextMenu",Nn(),jn(),Xn()),Ue.current.linkTemplate=Dn(Ot.rU,{layerName:"Foreground",routing:Ot.rU.AvoidsNodes,corner:10,fromShortLength:10,toShortLength:15,relinkableFrom:!0,relinkableTo:!0,reshapable:!0,resegmentable:!0},new Ot.KX("fromSpot","fromSpot",Ot.z6.parse),new Ot.KX("toSpot","toSpot",Ot.z6.parse),new Ot.KX("fromShortLength","dir",Hr=>Hr>=1?10:0),new Ot.KX("toShortLength","dir",Hr=>Hr>=1?10:0),new Ot.KX("points").makeTwoWay(),Dn(Ot.bn,{strokeWidth:2},new Ot.KX("stroke","color"),new Ot.KX("strokeWidth","thickness"),new Ot.KX("strokeDashArray","dash")),Dn(Ot.bn,{segmentIndex:0,segmentOffset:new Ot.E9(15,0),segmentOrientation:Ot.rU.OrientAlong,alignmentFocus:Ot.z6.Right,figure:"circle",width:10,strokeWidth:0},new Ot.KX("fill","color"),new Ot.KX("visible","dir",Hr=>Hr===1)),Dn(Ot.bn,{segmentIndex:-1,segmentOffset:new Ot.E9(-10,6),segmentOrientation:Ot.rU.OrientPlus90,alignmentFocus:Ot.z6.Right,figure:"triangle",width:12,height:12,strokeWidth:0},new Ot.KX("fill","color"),new Ot.KX("visible","dir",Hr=>Hr>=1),new Ot.KX("width","thickness",Hr=>7+3*Hr),new Ot.KX("height","thickness",Hr=>7+3*Hr),new Ot.KX("segmentOffset","thickness",Hr=>new Ot.E9(-15,4+1.5*Hr))),Dn(Ot.bn,{segmentIndex:0,segmentOffset:new Ot.E9(15,-6),segmentOrientation:Ot.rU.OrientMinus90,alignmentFocus:Ot.z6.Right,figure:"triangle",width:12,height:12,strokeWidth:0},new Ot.KX("fill","color"),new Ot.KX("visible","dir",Hr=>Hr===2),new Ot.KX("width","thickness",Hr=>7+3*Hr),new Ot.KX("height","thickness",Hr=>7+3*Hr),new Ot.KX("segmentOffset","thickness",Hr=>new Ot.E9(-15,4+1.5*Hr))),Dn(Ot.al,{alignmentFocus:new Ot.z6(0,1,-4,0),editable:!0},new Ot.KX("text").makeTwoWay(),new Ot.KX("stroke","color"))),Ue.current.linkTemplate.selectionAdornmentTemplate=Dn(Ot.uz,Dn(Ot.bn,{isPanelMain:!0,stroke:"transparent",strokeWidth:6,pathPattern:yr(2)},new Ot.KX("pathPattern","thickness",yr)),dr({alignmentFocus:new Ot.z6(0,0,-6,-4)}));function yr(Hr){return Dn(Ot.bn,{stroke:"dodgerblue",strokeWidth:2,strokeCap:"square",geometryString:"M0 0 M4 2 H3 M4 "+(Hr+4).toString()+" H3"})}function wn(Hr){var wa="M0 0 M8 16 M0 8 L16 8 M12 11 L16 8 L12 5";return Hr===0?wa="M0 0 M16 16 M0 8 L16 8":Hr===2&&(wa="M0 0 M16 16 M0 8 L16 8 M12 11 L16 8 L12 5 M4 11 L0 8 L4 5"),Dn(Ot.bn,{geometryString:wa,margin:2,background:"transparent",mouseEnter:(Ta,ua)=>ua.background="dodgerblue",mouseLeave:(Ta,ua)=>ua.background="transparent",click:fn("dir",Hr),contextClick:fn("dir",Hr)})}function gr(Hr){var wa=(Ta,ua)=>{Ta.handled=!0,Ta.diagram.model.commit(qa=>{var zi=ua.part.adornedPart;qa.set(zi.data,Hr?"toSpot":"fromSpot",Ot.z6.stringify(Ot.z6.AllSides)),(Hr?zi.toNode:zi.fromNode).invalidateConnectedLinks()})};return Dn(Ot.bn,{width:12,height:12,fill:"transparent",mouseEnter:(Ta,ua)=>ua.background="dodgerblue",mouseLeave:(Ta,ua)=>ua.background="transparent",click:wa,contextClick:wa})}function Jn(Hr,wa){var Ta=0,ua=Ot.z6.RightSide;Hr.equals(Ot.z6.Top)?(Ta=270,ua=Ot.z6.TopSide):Hr.equals(Ot.z6.Left)?(Ta=180,ua=Ot.z6.LeftSide):Hr.equals(Ot.z6.Bottom)&&(Ta=90,ua=Ot.z6.BottomSide),wa||(Ta-=180);var qa=(zi,Fa)=>{zi.handled=!0,zi.diagram.model.commit(Ui=>{var Yi=Fa.part.adornedPart;Ui.set(Yi.data,wa?"toSpot":"fromSpot",Ot.z6.stringify(ua)),(wa?Yi.toNode:Yi.fromNode).invalidateConnectedLinks()})};return Dn(Ot.bn,{alignment:Hr,alignmentFocus:Hr.opposite(),geometryString:"M0 0 M12 12 M12 6 L1 6 L4 4 M1 6 L4 8",angle:Ta,background:"transparent",mouseEnter:(zi,Fa)=>Fa.background="dodgerblue",mouseLeave:(zi,Fa)=>Fa.background="transparent",click:qa,contextClick:qa})}Ue.current.linkTemplate.contextMenu=Dn("ContextMenu",jn(),Xn(),Dn("ContextMenuButton",Dn(Ot.s_,"Horizontal",wn(0),wn(1),wn(2))),Dn("ContextMenuButton",Dn(Ot.s_,"Horizontal",Dn(Ot.s_,"Spot",gr(!1),Jn(Ot.z6.Top,!1),Jn(Ot.z6.Left,!1),Jn(Ot.z6.Right,!1),Jn(Ot.z6.Bottom,!1)),Dn(Ot.s_,"Spot",{margin:new Ot.Zt(0,0,0,2)},gr(!0),Jn(Ot.z6.Top,!0),Jn(Ot.z6.Left,!0),Jn(Ot.z6.Right,!0),Jn(Ot.z6.Bottom,!0)))));const Ur=`{ "class": "GraphLinksModel", "nodeDataArray": [ {"text":"Find Problem","key":-9,"loc":"-20 -140","color":"#3358ff","fill":"white","figure":"Procedure","thickness":3}, {"text":"What do we want?","key":-10,"loc":"-65 -324.305","group":-16,"figure":"Ellipse","fill":"white"}, {"text":"What do our users want?","key":-11,"loc":"105 -334.305","group":-20,"figure":"Ellipse","fill":"#ffffff","color":"black"}, {"text":"Meetings","key":-12,"loc":"-65 -444.305","group":-16,"figure":"TriangleDown","fill":"#ffffff"}, {"text":"Reviews","key":-13,"loc":"105 -454.305","group":-20,"figure":"TriangleDown","fill":"#ffffff","color":"black"}, {"text":"Can we solve it?","key":-14,"loc":"190 -140","color":"#7d33ff","fill":"#ffffff","figure":"Diamond","size":"140 80","thickness":3}, {"isGroup":true,"text":"Internal","key":-16,"loc":"-65 -384.305","fill":"#d5ebff","dash":null,"thickness":1,"group":-22}, {"isGroup":true,"text":"External","key":-20,"loc":"105 -394.305","fill":"#d5ebff","dash":null,"thickness":1,"group":-22}, {"isGroup":true,"text":"Sources","key":-22,"loc":"20 -400","fill":"#a5d2fa","dash":[4,4],"color":"#3358ff"} ], "linkDataArray": [ {"from":-12,"to":-10,"points":[-65,-414.305,-65,-404.305,-65,-384.305,-65,-384.305,-65,-364.305,-65,-354.305],"dash":null,"dir":1}, {"from":-13,"to":-11,"points":[105,-424.305,105,-414.305,105,-394.305,105,-394.305,105,-374.305,105,-364.305],"dash":null,"color":"#000000","dir":1}, {"from":-10,"to":-9,"points":[-65,-294.305,-65,-284.305,-65,-232.1525,-40,-232.1525,-40,-180,-40,-170],"dir":2,"dash":[4,4]}, {"from":-11,"to":-9,"points":[105,-304.305,105,-294.305,105,-237.1525,0,-237.1525,0,-180,0,-170],"dash":[4,4],"dir":2}, {"from":-9,"to":-14,"points":[40,-150,58,-150,80,-150,80,-153.33333333333331,102,-153.33333333333331,120,-153.33333333333331],"dir":1,"color":"#3358ff"}, {"from":-14,"to":-9,"points":[190,-100,190,-90,-20,-90,-20,-95,-20,-100,-20,-110],"fromSpot":"BottomSide","toSpot":"BottomSide","text":"No","color":"#ff3333","thickness":2,"dir":1}, {"from":-9,"to":-14,"points":[40,-130,58,-130,80,-130,80,-126.66666666666666,102,-126.66666666666666,120,-126.66666666666666]} ]}`;var Ja=["Rectangle","Square","RoundedRectangle","Border","Ellipse","Circle","TriangleRight","TriangleDown","TriangleLeft","TriangleUp","Triangle","Diamond","LineH","LineV","None","BarH","BarV","MinusLine","PlusLine","XLine","LineRight","LineDown","LineLeft","LineUp"];function gi(Hr){return console.log("shapeName:",Hr),Ja.indexOf(Hr)>=0}var ui=new Ot.YI(xt.current,{maxSelectionCount:1,linkTemplate:Dn(Ot.rU,{locationSpot:Ot.z6.Center,selectionAdornmentTemplate:Dn(Ot.uz,"Link",{locationSpot:Ot.z6.Center},Dn(Ot.bn,{isPanelMain:!0,fill:null,stroke:"deepskyblue",strokeWidth:0}),Dn(Ot.bn,{toArrow:"Standard",stroke:null}))},{routing:Ot.rU.AvoidsNodes,curve:Ot.rU.JumpOver,corner:5,toShortLength:4},new Ot.KX("points"),Dn(Ot.bn,{isPanelMain:!0,strokeWidth:2}),Dn(Ot.bn,{toArrow:"Standard",stroke:null})),model:new Ot.FJ([{text:"\u672A\u547D\u540D",size:"100 100",fill:null,stroke:"#000"},...Ot.bn.getFigureGenerators().toArray().map(Hr=>({text:"\u672A\u547D\u540D",size:"100 100",figure:Hr.key,fill:"white",stroke:"#666",borderColor:"#000"}))])});return Ue.current.addDiagramListener("TextEdited",function(Hr){var wa;const Ta=Hr.subject.part;var ua=(wa=document.activeElement)==null?void 0:wa.value;typeof ua=="string"&&ua.trim()===""&&Ue.current.model.commit(function(qa){qa.set(Ta.data,"text","\u672A\u547D\u540D"),Ue.current.commandHandler.stopCommand()},"increment")}),ui.nodeTemplate=Dn(Ot.NB,"Auto",{locationSpot:Ot.z6.Center},new Ot.KX("location","location",Ot.E9.parse).makeTwoWay(Ot.E9.stringify),Dn(Ot.bn,"Circle",{fill:"white",stroke:"gray",strokeWidth:2,width:20,height:20,portId:"",fromLinkable:!0,toLinkable:!0,fromLinkableDuplicates:!0,toLinkableDuplicates:!0,fromLinkableSelfNode:!0,toLinkableSelfNode:!0},new Ot.KX("stroke").makeTwoWay(),new Ot.KX("fill").makeTwoWay(),new Ot.KX("figure")),Dn(Ot.al,{margin:new Ot.Zt(5,5,3,5),font:"10pt sans-serif",minSize:new Ot.$u(16,16),maxSize:new Ot.$u(10,NaN),textAlign:"center",editable:!0},new Ot.KX("key").makeTwoWay())),setTimeout(()=>{Ue.current.grid=Dn(Ot.s_,"Grid",Dn(Ot.bn,"LineH",{stroke:"lightgray",strokeWidth:.5}),Dn(Ot.bn,"LineV",{stroke:"lightgray",strokeWidth:.5})),Ue.current.grid.visible=!0,Ue.current.grid.gridCellStroke="darkgray",Ue.current.grid.gridCellStrokeWidth=1},300),window.myDiagrams=Ue.current,Ue.current}const Yn=()=>It(this,null,function*(){var Dn=Ue.current.makeImage();const qn=yield(0,sn.ZP)("/api/attachments.json",{method:"post",body:{file_type:"base64",original_filename:Date.now(),file:Dn.src}});Te({src:qn.url})});return(0,Be.useEffect)(()=>(setTimeout(()=>{pn()},500),mn(Ht+1),()=>{Ue.current=null}),[]),Gt.createElement("div",{ref:Xt,className:Pt.current?`${tn.maxH60} body-overflow-initial`:"body-overflow-initial"},Gt.createElement(ht.default,{width:1200,icon:null,footer:null,closable:!0,visible:!!Ht,destroyOnClose:!0,maskClosable:!1,rootClassName:"zIndex-9999",title:Gt.createElement(Ut.Z,null,Gt.createElement(Rn.Z,{flex:1},"\u63D2\u5165\u6D41\u7A0B\u56FE"),Gt.createElement(Rn.Z,{onClick:()=>{var Dn,qn,er=Ue.current.selection.first();if(Pt.current=!Pt.current,document.activeElement&&er){let dr=(qn=(Dn=document.activeElement)==null?void 0:Dn.value)==null?void 0:qn.trim();typeof dr=="string"&&Ue.current.model.commit(function(fn){fn.set(er.data,"text",dr||"\u672A\u547D\u540D"),Ue.current.commandHandler.stopCommand()},"increment")}mn(Ht+1)}},Gt.createElement("span",{className:"current c-blue mr30",style:{fontWeight:400}},"\u5C55\u5F00/\u6536\u8D77"))),onCancel:Le},Gt.createElement("div",{style:{width:"100%",height:"80vh",overflow:"hidden",position:"relative"},className:tn.flowChartWrp},Gt.createElement("div",{style:{display:"flex",height:"100%"}},Gt.createElement("div",{style:{width:"300px",height:"100%"}},Gt.createElement("div",{style:{background:"#fff",position:"relative",zIndex:12,fontSize:16,color:"#3061d0"}},"\u56FE\u5F62\u5E93"),Gt.createElement("div",{style:{height:"calc(100% - 50px)"},className:tn.myPaletteDiv,ref:xt})),Gt.createElement("div",{style:{flex:1,position:"relative"}},Gt.createElement("div",{ref:Ye,style:{height:"80vh"}}))),Gt.createElement("div",{className:"tr"},Gt.createElement(Ge.ZP,{size:"large",onClick:Yn,style:{position:"absolute",right:0,bottom:0,zIndex:8},type:"primary"},"\u4FDD\u5B58\u5230\u7F16\u8F91\u5668")))))}var Zt=Et,vt=Ie(5112),At=Ie(5871);const Qt=vt.ZP.Group,Ft={margin:"0 8px"};var wt=({callback:Le,onCancel:Te})=>{function Ue(Ye){Le(Ye)}return Be.createElement(Ne.default,{className:"add-table-panel",initialValues:{row:3,col:2,align:"default"},onFinish:Ue},Be.createElement("div",{className:"flex-container",style:{alignItems:"baseline"}},Be.createElement("span",{style:Ft},"\u5355\u5143\u683C\u6570\uFF1A"),Be.createElement("span",{style:Ft},"\u884C\u6570"),Be.createElement(Ne.default.Item,{name:"row",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u884C\u6570"}]},Be.createElement(At.Z,null)),Be.createElement("span",{style:Ft},"\u5217\u6570"),Be.createElement(Ne.default.Item,{name:"col",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u5217\u6570"}]},Be.createElement(At.Z,null))),Be.createElement("div",{className:"flex-container",style:{marginTop:12,alignItems:"baseline"}},Be.createElement("span",{style:Ft},"\u5BF9\u9F50\u65B9\u5F0F\uFF1A"),Be.createElement(Ne.default.Item,{name:"align"},Be.createElement(Qt,null,Be.createElement(vt.ZP,{value:"default"},Be.createElement("i",{className:"fa fa-align-justify"})),Be.createElement(vt.ZP,{value:"left"},Be.createElement("i",{className:"fa fa-align-left"})),Be.createElement(vt.ZP,{value:"center"},Be.createElement("i",{className:"fa fa-align-center"})),Be.createElement(vt.ZP,{value:"right"},Be.createElement("i",{className:"fa fa-align-right"}))))),Be.createElement("div",{className:"flex-container flex-end"},Be.createElement(Ge.ZP,{type:"primary",htmlType:"submit",style:{marginRight:10}},"\u786E\u5B9A"),Be.createElement(Ge.ZP,{type:"ghost",onClick:Te},"\u53D6\u6D88")))},ln=Ie(78673),In=Ie(20063),Kn=Ie.n(In),Zn=(0,Be.forwardRef)(({use3d:Le,width:Te,height:Ue,callback:Ye,showSaveButton:xt},Pt)=>{const Xt=(0,Be.useRef)(),Ht=(0,Be.useRef)(),[mn,pn]=(0,Be.useState)(!1),Yn=(0,Be.useRef)({id:Xt,appName:"graphing",width:Te||1e3,height:Ue||600,showToolBar:!0,showMenuBar:!0,allowStyleBar:!0,showAlgebraInput:!0,enableLabelDrags:!1,enableShiftDragZoom:!0,showToolBarHelp:!1,errorDialogsActive:!0,showTutorialLink:!0,showLogging:!0,useBrowserForJS:!1});(0,Be.useEffect)(()=>{Ht.current=new(Kn())(Yn.current,!0),window.onload=function(){Ht.current.inject("applet_container")}},[]);const Dn=()=>{var qn=window.ggbApplet.getPNGBase64(1,!0,72);return Ye&&Ye(qn),qn};return(0,Be.useEffect)(()=>{Yn.current.appName=mn?"3D":"graphing",Ht.current.inject("applet_container")},[mn]),(0,Be.useEffect)(()=>{pn(Le)},[Le]),(0,Be.useImperativeHandle)(Pt,()=>({getImgData:Dn})),Be.createElement(Be.Fragment,null,Be.createElement("div",{style:{width:"100%",height:"100%"},id:"applet_container",ref:Xt}),Be.createElement(Ut.Z,{align:"middle"},Be.createElement(Rn.Z,{flex:1},Be.createElement(ln.Z,{size:"default",checkedChildren:"\u5173\u95ED3D\u56FE\u50CF",unCheckedChildren:"\u5F00\u542F3D\u56FE\u50CF",checked:mn,onChange:qn=>pn(qn)})),Be.createElement(Rn.Z,null,Be.createElement(Ge.ZP,{size:"large",onClick:Dn,style:{zIndex:8,marginTop:10},type:"primary"},"\u4FDD\u5B58\u5230\u7F16\u8F91\u5668"))))}),$n=Ie(50892),Jt=Ie(1012),yn=Ie(8591);const Hn="link",Bn="upload-image",Er="add-flowchart",Fr="draw-image",br="add-flowchart",Wr="code-block",Da="add-table",Ya="------------",Ba={default:Ya,left:`:${Ya}`,center:`:${Ya}:`,right:`${Ya}:`};var Ia=Ie(29152),Ii=(Le,Te,Ue)=>new Promise((Ye,xt)=>{var Pt=mn=>{try{Ht(Ue.next(mn))}catch(pn){xt(pn)}},Xt=mn=>{try{Ht(Ue.throw(mn))}catch(pn){xt(pn)}},Ht=mn=>mn.done?Ye(mn.value):Promise.resolve(mn.value).then(Pt,Xt);Ht((Ue=Ue.apply(Le,Te)).next())});function wi(){}let jr=0;const Ka=1e4,oi="\u2581",pr="@\u2581\u2581@",vr="@\u2581@",li=` **\u6A21\u677F\u6807\u9898** \u6A21\u677F\u6B63\u6587\u5185\u5BB9\uFF0C\u53EF\u8F93\u5165\u6587\u672C\u5185\u5BB9\u548C\u7C98\u8D34\u56FE\u7247\u7B49\u64CD\u4F5C`,zn=["pptm","pptx","ppt","pot","pps","ppa","potx","ppsx","ppam","pptm","potm","ppsm","doc","docx","dot","dotx","docm","dotm","xls","xlsx","csv","xlt","xla","xltx","xlsm","xltm","xlam","xlsb"];function hr(Le){return/^\d+$/.test(Le)?`${Le}px`:Le}const Rr=navigator.platform.toUpperCase().indexOf("MAC")>=0?"Cmd":"Ctrl",fa={[Rr+"-B"]:"bold",[Rr+"-I"]:"italic"},bt={[Hn]:"\u6DFB\u52A0\u94FE\u63A5",[Wr]:"\u6DFB\u52A0\u4EE3\u7801\u5757",[Bn]:"\u6DFB\u52A0\u56FE\u7247",[Fr]:"\u6DFB\u52A0\u753B\u56FE",[Er]:"\u63D2\u5165\u6D41\u7A0B\u56FE",[Da]:"\u6DFB\u52A0\u8868\u683C","maths-latex":"\u6570\u5B66\u56FE\u50CF","inline-latex":"LATEX\u516C\u5F0F"};var Me=({defaultValue:Le="",onChange:Te,width:Ue="100%",height:Ye=400,miniToolbar:xt=!1,isFocus:Pt=!1,watch:Xt,insertTemp:Ht,mode:mn="markdown",id:pn="markdown-editor-id",showResizeBar:Yn=!1,noStorage:Dn=!1,showNullButton:qn=!1,showNullProgramButton:er=!1,hidetoolBar:dr=!1,fullScreen:fn=!1,onBlur:nn,onCMBeforeChange:Nn,onFullScreen:jn,className:rr="",disablePaste:mr=!1,disabled:Xn=!1,disabledFill:ur=!1,placeholder:yr="",values:wn="",extraUse:gr})=>{const[Jn,Ur]=(0,Be.useState)(null),[Ja,gi]=(0,Be.useState)(Le),[ui,Hr]=(0,Be.useState)(Xt),[wa,Ta]=(0,Be.useState)(fn),[ua,qa]=(0,Be.useState)(""),[zi,Fa]=(0,Be.useState)(0),[Ui,Yi]=(0,Be.useState)(Ye),[Zr,oo]=(0,Be.useState)(!1),_s=(0,Be.useRef)((0,Jt.Z)()),Uo=(0,Be.useRef)(!1),Xi=(0,Be.useRef)(),[Ti,Jo]=(0,Be.useState)(0),[Ro,Lo]=(0,Be.useState)(0),Ts=(0,Be.useRef)(),Bs=(0,Be.useRef)(),zr=(0,Be.useRef)(),Ir=(0,Be.useRef)(),Vr=()=>Ii(void 0,null,function*(){var Jr;const ya=yield Fetch("/api/attachments/distinct_hash_val.json",{method:"post",body:{hash_val:_s.current}});(Jr=ya==null?void 0:ya.attachments)!=null&&Jr.length&&(console.log("cm:",Jn,Ts),ya.attachments.map(za=>{za.content_type.indexOf("image")>-1?Jn.replaceSelection(`![,](/api/attachments/${za.id}?type=${za.content_type})`):za.content_type.indexOf("video")>-1?Jn.replaceSelection(``):za.content_type.indexOf("pdf")>-1?Jn.replaceSelection(`${za.name}`):Jn.replaceSelection(`[${za.name}](${ENV.API_SERVER}/api/attachments/${za.id}?type=${za.content_type})`)}))});(0,Be.useEffect)(()=>{const Jr=window.scrollY||window.pageYOffset;gi(wn),Jn==null||Jn.setValue(wn),window.scrollTo(0,Jr)},[wn]),(0,Be.useEffect)(()=>{jn==null||jn(wa)},[wa]),(0,Be.useEffect)(()=>{if(Ts.current){let Jr=function(za,Ga){var Hi;if(mr){Ga.preventDefault();return}const Io=Ga.clipboardData;if(Io){const us=Io.types.toString(),hs=Io.items;if(us==="Files"||Io.types.indexOf("Files")>-1){if(Ga.preventDefault(),mn=="stex")return;try{let Ws=hs[1];((Hi=hs[0])==null?void 0:Hi.kind)==="file"&&(Ws=hs[0]);const js=Ws.getAsFile(),zl=js.name.split(".").pop();(0,dt.I)(js,al=>{var yo,ko,gs;al.id?((yo=js==null?void 0:js.type)==null?void 0:yo.indexOf("image"))>-1?ya.replaceSelection(``):((ko=js==null?void 0:js.type)==null?void 0:ko.indexOf("video"))>-1?ya.replaceSelection(``):((gs=js==null?void 0:js.type)==null?void 0:gs.indexOf("pdf"))>-1?ya.replaceSelection(`${js.name}`):zn.includes(zl)?ya.replaceSelection(`${js.name}`):ya.replaceSelection(`[${js.name}](/api/attachments/${al.id}?type=${al.content_type})`):(al==null?void 0:al.status)===401&&(yn.ZP.warning((al==null?void 0:al.message)||"\u8BF7\u767B\u5F55\u540E\u518D\u64CD\u4F5C"),document.location.href="/user/login")})}catch(Ws){yn.ZP.warning("\u8BF7\u4F7F\u7528chrome\u6D4F\u89C8\u5668\u7C98\u8D34")}return!0}else return!0}return!0};const ya=Fe().fromTextArea(Ts.current,{mode:mn,lineNumbers:!xt,lineWrapping:!0,value:Le,autoCloseTags:!er,autoCloseBrackets:!0});return ya.on("keyup",function(za,Ga){Ga.keyCode===8&&(za.getValue()==""?ya.setOption("placeholder",yr):ya.setOption("placeholder",null))}),ya.on("keydown",function(za,Ga){if(Ga.keyCode===8){var Hi=ka(za);Hi&&Ga.preventDefault()}}),Pt&&ya.focus(),ya.on("paste",Jr),ya.on("dragleave",function(za,Ga){Bs.current.classList.remove("mouse-hover-md")}),Xn&&ya.on("beforeChange",function(za,Ga){(Ga.origin==="paste"||Ga.origin==="+input")&&Ga.cancel()}),Ur(ya),()=>{ya.off("paste",Jr)}}},[]);const Na=(0,Be.useCallback)(()=>{if(Bs.current)try{}catch(Jr){console.log(Jr,"---- to set md editor body height")}},[Ui,Bs,wa]);(0,Be.useEffect)(()=>{function Jr(){let ya=new Ce.Z(za=>{for(let Ga of za)(Ga.target.offsetHeight>0||Ga.target.offsetWidth>0)&&(Na(),Jn.setSize("100%","100%"),Jn.refresh())});return ya.observe(Ts.current.parentElement),ya}if(Jn){const ya=Jr();return()=>{var za,Ga;(za=Ts.current)!=null&&za.parentElement&&ya.unobserve((Ga=Ts.current)==null?void 0:Ga.parentElement)}}},[Jn,Na]),(0,Be.useEffect)(()=>{if(Jn){let Jr=[];for(const[ya,za]of Object.entries(fa)){let Ga={[ya]:()=>{Ai(za)}};Jr.push(Ga),Jn.addKeyMap(Ga)}return Xi.current=setInterval(()=>{Uo.current&&Vr()},4e3),()=>{clearInterval(Xi.current);for(let ya of Jr)Jn.removeKeyMap(ya)}}},[Jn]),(0,Be.useEffect)(()=>{fn!==wa&&Ta(fn)},[fn]),(0,Ia.Z)(()=>{if(!Dn&&zi>0){let Jr=new Date().getTime(),ya=window.sessionStorage.getItem(pn);Jr>=zi+Ka&&(!ya||ya!==Ja)&&(window.sessionStorage.setItem(pn,Ja),oo(!0))}},Ka),(0,Be.useEffect)(()=>{Hr(Xt)},[Jn,Xt]),(0,Be.useEffect)(()=>{Jn&&Pt&&Jn.focus()},[Jn,Pt]),(0,Be.useEffect)(()=>{if(ui&&Jn){let Jr=function(za){let Ga=za.target;if(Ir.current){let Hi=Ga.scrollTop/Ga.scrollHeight;Ir.current.scrollTop=Ir.current.scrollHeight*Hi}};const ya=Jn.getScrollerElement();return ya.addEventListener("scroll",Jr),()=>{ya.removeEventListener("scroll",Jr)}}},[Jn,ui]),(0,Be.useEffect)(()=>{if(Jn&&Nn){let Jr=function(ya,za){Nn(ya,za)};return Jn.on("beforeChange",Jr),()=>{Jn.off("beforeChange",Jr)}}},[Jn,Nn]),(0,Be.useEffect)(()=>{if(Jn&&nn){let Jr=function(){nn(Jn.getValue())};return Jn.on("blur",Jr),()=>{Jn.off("blur",Jr)}}},[Jn,nn]);function ka(Jr,ya){var za=Jr.getDoc(),Ga=za.getCursor(),Hi=za.getLine(Ga.line),Io=Hi.charAt(Ga.ch-1),us=Hi.lastIndexOf("@\u2581@",Ga.ch),hs=Hi.lastIndexOf("@\u2581\u2581@",Ga.ch),Ws=us>hs?us:hs,js=us>hs?3:4;if(pr.indexOf(Io)===-1)return null;if(console.log("change1:",ya,Jr,Hi,Ga,Ws,us,hs,Io),Ws>=0&&Ga.ch-Ws<5){var zl=Ws+js;return za.replaceRange("",{line:Ga.line,ch:Ws},{line:Ga.line,ch:zl}),{line:Ga.line,ch:zl}}return null}(0,Be.useEffect)(()=>{if(Jn){let Jr=function(ya,za){const Ga=ya.getValue();gi(Ga),Fa(new Date().getTime()),ya.getScrollerElement().dispatchEvent(new CustomEvent("scroll")),Te&&(er?Te(Ga,po(Ga)):Te(Ga))};return Jn.on("change",Jr),()=>{Jn.off("change",Jr)}}},[Jn,Te]),(0,Be.useEffect)(()=>{if(Jn)if(Le==null)Jn.setValue(""),gi("");else{const Jr=window.scrollY||window.pageYOffset;Le!==Jn.getValue()&&(Jn.setValue(Le),gi(Le),Jn.setCursor(Xn?1:Jn.lineCount(),0),window.scrollTo(0,Jr))}},[Jn,Le]);const Ai=(0,Be.useCallback)(Jr=>{const ya=Jn.getCursor(),za=Jn.getSelection();let Ga=za.split(` `);switch(Jr){case"bold":return Jn.replaceSelection("**"+za+"**"),za===""&&Jn.setCursor(ya.line,ya.ch+2),Jn.focus();case"italic":return Jn.replaceSelection("*"+za+"*"),za===""&&Jn.setCursor(ya.line,ya.ch+1),Jn.focus();case"code":return Jn.replaceSelection("`"+za+"`"),za===""&&Jn.setCursor(ya.line,ya.ch+1),Jn.focus();case"inline-latex":return qa("inline-latex"),Jn.focus();case"latex":return Jn.replaceSelection("```latex\n"+za+"\n```"),Jn.setCursor(ya.line+1,za.length+1),Jn.focus();case"line-break":return Jn.replaceSelection(`
`),Jn.focus();case"list-ul":return za===""?Jn.replaceSelection("- "+za):Jn.replaceSelection(Ga.map(Hi=>Hi===""?"":`- ${Hi}`).join(` `)),Jn.focus();case"list-ol":return za===""?Jn.replaceSelection("1. "+za):Jn.replaceSelection(Ga.map((Hi,Io)=>Hi===""?"":`${Io+1}. ${Hi}`).join(` `)),Jn.focus();case"add-null-ch":return za===""&&Jn.setCursor(ya.line,ya.ch),Jn.replaceSelection(oi),Jn.focus();case"add-signal":return za===""&&Jn.setCursor(ya.line,ya.ch),Jn.replaceSelection(vr),Jn.focus();case"add-multiple":return za===""&&Jn.setCursor(ya.line,ya.ch),Jn.replaceSelection(pr),Jn.focus();case"inster-template-1":return za===""&&Jn.setCursor(ya.line,ya.ch),Jn.replaceSelection(li),Jn.focus();case"eraser":return Jn.setValue(""),Jn.focus();case"trigger-watch":return Hr(!ui),Jn.focus();case"trigger-full-screen":return Ta(!wa),Jn.focus();case Hn:qa(Hn);return;case Wr:qa(Wr);return;case Bn:qa(Bn);return;case Fr:qa(Fr);return;case"maths-latex":qa("maths-latex");return;case Er:qa(Er);return;case Da:qa(Da);return;default:throw new Error}},[Jn,ui,wa]),va=(0,Be.useCallback)((Jr,ya)=>{var za,Ga,Hi,Io,us,hs;switch(qa(""),ua){case Hn:const{title:yo,link:ko}=Jr;return Jn.replaceSelection(`[${yo}](${ko})`),Jn.focus();case Wr:const{language:gs,content:Po}=Jr;return Jn.replaceSelection(["```"+gs,Po,"```"].join(` `)),Jn.focus();case"maths-latex":for(var Ws=atob(Jr),js=new Uint8Array(Ws.length),zl=0;zl{Lu.id?Jn.replaceSelection(`![,](/api/attachments/${Lu.id}?type=${Lu.content_type})`):(Lu==null?void 0:Lu.status)===401&&(document.location.href="/user/login")});break;case"inline-latex":Jn.replaceSelection("`$$"+Jr+"$$`");break;case Bn:case Fr:case br:const{src:is,alt:Hs}=Jr,Cs=ya,Ou=(Hi=(Ga=(za=Cs==null?void 0:Cs.name)==null?void 0:za.split("."))==null?void 0:Ga.pop)==null?void 0:Hi.call(Ga);return((Io=Cs==null?void 0:Cs.type)==null?void 0:Io.indexOf("image"))>-1||!(Cs!=null&&Cs.type)?Cs.align||Cs.width?Jn.replaceSelection(`

${Hs||

`):Jn.replaceSelection(`${Hs||`):((us=Cs==null?void 0:Cs.type)==null?void 0:us.indexOf("video"))>-1?Jn.replaceSelection(``):((hs=Cs==null?void 0:Cs.type)==null?void 0:hs.indexOf("pdf"))>-1?Jn.replaceSelection(`${Cs.name}`):zn.includes(Ou)?Jn.replaceSelection(`${Cs.name}`):Jn.replaceSelection(`[${Cs.name}](${is})`),Jn.focus();case Da:const{row:Pu,col:id,align:Cf}=Jr;let od=` `;for(let Lu=0;Lu{switch(ua){case Hn:return Be.createElement(yt,{callback:va,onCancel:pi});case Wr:return Be.createElement(ft.Z,{callback:va,onCancel:pi});case Bn:return Be.createElement(dt.Z,{callback:va,onCancel:pi});case Er:return Be.createElement(Zt,{callback:va,onCancel:pi});case Da:return Be.createElement(wt,{callback:va,onCancel:pi});case"maths-latex":return Be.createElement(Zn,{showSaveButton:!0,callback:va});case"inline-latex":return Be.createElement($n.Z,{showSaveButton:!0,callback:va});default:return null}},[ua]);function pi(){qa("")}(0,Be.useEffect)(()=>{if(zr.current){let Jr=function(us){Hi=!0,Io=us.pageY},ya=function(){Hi=!1},za=function(us){if(Hi){let hs=us.pageY-Io;hs<0&&(hs=0),hs>300&&(hs=300);let Ws=Ye+hs+"px";Yi(Ws)}},Ga=zr.current,Hi=!1,Io=0;return Ga.addEventListener("mousedown",Jr),document.addEventListener("mousemove",za),document.addEventListener("mouseup",ya),()=>{Ga.removeEventListener("mousedown",Jr),document.removeEventListener("mousemove",za),document.removeEventListener("mouseup",ya)}}},[Jn,zr]),(0,Be.useEffect)(()=>{Yi(Ye)},[Ye]);const xo=hr(Ue),lo=hr(Ui),Bi={width:xo,height:lo},ho=(0,Be.useMemo)(()=>{if(zi){let Jr=new Date(zi),ya=Jr.getHours(),za=Jr.getMinutes(),Ga=Jr.getSeconds();return ya=ya<10?"0"+ya:ya,za=za<10?"0"+za:za,Ga=Ga<10?"0"+Ga:Ga,`${ya}:${za}:${Ga}`}return 0},[zi]),po=Jr=>{const ya=[];if(er){let za=-1;Jr=Jr.replace(/(@▁▁@|@▁@)/g,function(Ga,Hi,Io){ya.push({multiLine:Ga!==vr})})}return ya};function ds(){window.sessionStorage.removeItem(pn),oo(!1),Fa(0)}function Fo(){oo(!1),Fa(0),Jn.setValue(window.sessionStorage.getItem(pn))}(0,Be.useEffect)(()=>{bt[ua]&&ua!==Fr&&ua!==Er&&setTimeout(()=>{const Jr=document.getElementsByClassName("markdown-popup-form")[0],ya=window.innerWidth/2-Jr.offsetWidth/2,za=window.innerHeight/2-Jr.offsetHeight/2;Jo(ya),Lo(za)},0)},[ua]);const fs=Jr=>{Jr.preventDefault();const ya=Jr.clientX-Ti,za=Jr.clientY-Ro;document.body.onmousemove=Ga=>{let Hi=Ga.clientX-ya,Io=Ga.clientY-za;const us=document.getElementsByClassName("markdown-popup-form")[0],hs=window.innerWidth-us.offsetWidth,Ws=window.innerHeight-us.offsetHeight;Hi=Math.max(0,Math.min(Hi,hs)),Io=Math.max(0,Math.min(Io,Ws)),Gs(Ga.clientX,Ga.clientY,ya,za)&&(Jo(Hi),Lo(Io))},document.body.onmouseup=function(){document.body.onmousemove=null}},Gs=(Jr,ya,za,Ga)=>{const Hi=document.body.clientHeight,Io=document.body.clientWidth;return Jr<20&&za>Jr||Jr>Io-20&&zaya||ya>Hi-20&&Gaze in Ne?ye(Ne,ze,{enumerable:!0,configurable:!0,writable:!0,value:Ge}):Ne[ze]=Ge,de=(Ne,ze)=>{for(var Ge in ze||(ze={}))ne.call(ze,Ge)&&oe(Ne,Ge,ze[Ge]);if(te)for(var Ge of te(ze))le.call(ze,Ge)&&oe(Ne,Ge,ze[Ge]);return Ne},he=(Ne,ze)=>xe(Ne,ce(ze));const{useForm:ie}=Be.default,ue={width:280,marginRight:10},ve={labelCol:{span:5},wrapperCol:{span:19}};var Se=({callback:Ne,onCancel:ze})=>{const[Ge]=ie();let Xe=(0,be.useRef)();function Qe(qe){Xe.current.width=Ge.getFieldValue("width"),Xe.current.align=Ge.getFieldValue("align"),Ne(qe,Xe.current)}function nt(qe,ot){if(qe.status===-1){He.ZP.error(qe.message);return}Ge.setFieldsValue({src:`/api/attachments/${qe.id}`,type:ot.type})}function $e(qe){let ot=qe.target.files[0];Xe.current=ot,Re(ot,nt)}return pe.createElement(Be.default,he(de({form:Ge},ve),{className:"upload-image-panel",onFinish:Qe,style:{width:470,overflow:"hidden"}}),pe.createElement(Be.default.Item,{label:"\u56FE\u7247\u5730\u5740",required:!0},pe.createElement("div",{className:"flex-container"},pe.createElement(Be.default.Item,{noStyle:!0,name:"src",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u6587\u4EF6\u5730\u5740"}]},pe.createElement(Fe.default,{style:ue})),pe.createElement(De,{onFileChange:$e}))),pe.createElement(Be.default.Item,{label:"\u56FE\u7247\u63CF\u8FF0",name:"alt"},pe.createElement(Fe.default,{style:{width:264}})),pe.createElement(Be.default.Item,{label:"\u56FE\u7247\u5BBD\u5EA6",name:"width"},pe.createElement(Ce.Z,null,pe.createElement(Be.default.Item,{name:"width",style:{margin:0}},pe.createElement(_e.Z,{style:{width:264}})),pe.createElement("span",{className:"ml8"},"%"))),pe.createElement(Be.default.Item,{label:"\u5BF9\u9F50\u65B9\u5F0F",name:"align"},pe.createElement(Pe.ZP.Group,{name:"align",defaultValue:1,options:[{value:"left",label:"\u5DE6\u5BF9\u9F50"},{value:"center",label:"\u5C45\u4E2D\u5BF9\u9F50"},{value:"right",label:"\u53F3\u5BF9\u9F50"}]})),pe.createElement("aside",null,pe.createElement(Be.default.Item,{style:{textAlign:"right",position:"relative",right:-98}},pe.createElement(ge.ZP,{type:"primary",htmlType:"submit",style:{marginRight:10}},"\u786E\u5B9A"),pe.createElement(ge.ZP,{type:"default",onClick:ze},"\u53D6\u6D88"))))};function De({onFileChange:Ne}){return pe.createElement("label",{className:"upload-button",style:{cursor:"pointer"}},"\u672C\u5730\u4E0A\u4F20",pe.createElement("input",{type:"file",onChange:Ne}))}function Re(Ne,ze){if(!Ne)throw new String("\u6CA1\u6709\u6587\u4EF6");if(!(0,we.bg)())throw He.ZP.warning("\u8BF7\u767B\u5F55\u540E\u518D\u64CD\u4F5C"),new String("\u8BF7\u767B\u5F55\u540E\u518D\u64CD\u4F5C");let Ge=new FormData;Ge.append("editormd-image-file",Ne),Ge.append("file_param_name","editormd-image-file"),Ge.append("byxhr","true");var Xe=new window.XMLHttpRequest;Xe.withCredentials=!0,Xe.addEventListener("load",function(Qe){ze(JSON.parse(Qe.target.responseText),Ne)},!1),Xe.addEventListener("error",function(Qe){console.error(Qe)},!1),Xe.open("POST",`${Ae.KI}/api/attachments.json`),Xe.send(Ge)}},61569:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return Fe}});var Be=Ie(59301),He=Ie(4676);class Fe extends Be.Component{constructor(_e){super(_e);const Pe=window.document;this.node=Pe.createElement("div"),Pe.body.appendChild(this.node)}render(){const{children:_e}=this.props;return(0,He.createPortal)(_e,this.node)}componentWillUnmount(){window.document.body.removeChild(this.node)}}},23734:function(St,Dt,Ie){"use strict";Ie.d(Dt,{i:function(){return ve},Z:function(){return De}});var Be={flex_box_center:"flex_box_center___AQ53o",flex_space_between:"flex_space_between___i2aIa",flex_box_vertical_center:"flex_box_vertical_center___sPEKB",flex_box_center_end:"flex_box_center_end___GhSSH",flex_box_column:"flex_box_column___R9_Hb",list:"list___jb2Ay",wrap:"wrap___VsQDr",lockWrap:"lockWrap___g1k1T",li:"li___IxCLC",cover:"cover___Mu8wr",img:"img___IpFLA",movebq:"movebq___mF7wt",bq:"bq___Bil0T",sign:"sign___DXJ4d",name:"name___l7FoJ",e:"e___pXQUG",unit:"unit___wCIFR",tags:"tags___w_Mil",tag1:"tag1___dxm7r",tag2:"tag2___llZkf",wrapisCurrent:"wrapisCurrent___qIfQT"},He=Ie(71418),Fe=Ie(6848),Ce=Ie(93948),_e=Ie(92310),Pe=Ie.n(_e),ge=Ie(22566),Ae=Ie(21692),be=Ie(16624),we=Ie(79005),pe=Ie(20345),ye=Ie(77882),xe=Ie(31081),ce=Ie(75309),te=Ie(71979),ne=Ie(47558),le=Ie(42922),oe=Ie(66832),de=Ie(96593),he=Ie(19664),ie=Ie(91833),ue=Ie(59301);const ve=[{name:"\u63A8\u8350\u81EA\u5B66",ptimg:we,swimg:pe},{name:"101\u8BA1\u5212",ptimg:ye,swimg:xe},{name:"\u56FD\u5BB6\u4E00\u6D41",ptimg:ce,swimg:te},{name:"\u7701\u7EA7\u4E00\u6D41",ptimg:ne,swimg:le},{name:"\u7CBE\u54C1\u8BFE\u7A0B",ptimg:oe,swimg:de},{name:"\u519B\u961F\u4E00\u6D41",ptimg:he,swimg:ie}];var De=({className:Re,dataSource:Ne=[],col:ze=4,right:Ge,bottom:Xe=23,precision:Qe=0,wrapWidth:nt=1200,trackEventItems:$e,loading:qe,onRemove:ot=()=>{},isCurrent:at=!0,showAlias:lt=!1,showProgress:rt=!1})=>{const ut=Math.floor((nt-(ze-1)*Ge)/ze),yt=[{name:"\u63A8\u8350\u81EA\u5B66",ptimg:"/images/tjzx.png",swimg:"/images/sw_tjzx.png"},{name:"101\u8BA1\u5212",ptimg:"/images/jh.png",swimg:"/images/sw_jh.png"},{name:"\u56FD\u5BB6\u4E00\u6D41",ptimg:"/images/gjyl.png",swimg:"/images/sw_gjyl.png"},{name:"\u7701\u7EA7\u4E00\u6D41",ptimg:"/images/sjyl.png",swimg:"/images/sw_sjyl.png"},{name:"\u7CBE\u54C1\u8BFE\u7A0B",ptimg:"/images/jpkc.png",swimg:"/images/sw_jpkc.png"},{name:"\u519B\u961F\u4E00\u6D41",ptimg:"/images/jdyl.png",swimg:"/images/sw_jdyl.png"},{name:"\u65B0\u578B\u6559\u6750",ptimg:"/images/xxjc.png",swimg:"/images/sw_xxjc.png"}].map(ft=>(window.ENV==="build"&&(ft.ptimg=`/react/build${ft.ptimg}`,ft.swimg=`/react/build${ft.swimg}`),ft));return ue.createElement(He.Z,{spinning:qe},ue.createElement("div",{className:Pe()(Be.list,Re)},!!(Ne!=null&&Ne.length)&&(Ne==null?void 0:Ne.map((ft,dt)=>{var ht,Ut,Kt,qt,vn,Ot;const{name:rn,id:an,identifier:On,featured:Rn,school_name:sn,image_url:tn,excellent:Gt,is_plan:It}=ft;return ue.createElement("div",{key:an,className:at&&rt?Be.wrapisCurrent:Be.wrap,style:{width:ut,marginRight:(1+dt)%ze===0?0:Ge+Qe,marginBottom:Xe}},ue.createElement("a",{className:Be.li,onClick:Et=>{Et.preventDefault(),Et.stopPropagation(),$e&&(0,ge.L9)([$e]),(0,ge.xg)(`/paths/${On}`)}},ue.createElement("div",{className:Be.img},ue.createElement("img",{className:Be.cover,src:`${tn}`}),at&&(0,be.bg)()&&(ft==null?void 0:ft.studying)&&ue.createElement("div",{className:`${Be.movebq} user-path-items`,onClick:Et=>{Et.stopPropagation(),ot(ft)}},ue.createElement("i",{className:"iconfont icon-yichu1 mr5 c-red"}),ue.createElement("span",{className:"c-red"},"\u79FB\u9664")),(ht=ft==null?void 0:ft.subject_tags)==null?void 0:ht.map((Et,Zt)=>{var vt,At;if(Zt===0){const Ft=(vt=yt.find(wt=>wt.name==Et))==null?void 0:vt.swimg;return ue.createElement("img",{className:Be.sign,src:Ft,style:{left:"-4px"}})}const Qt=(At=yt.find(Ft=>Ft.name==Et))==null?void 0:At.ptimg;return ue.createElement("img",{className:Be.sign,src:Qt,style:{left:`${48+52*(Zt-1)+2*Zt}px`}})}),ue.createElement("div",{style:{position:"absolute",top:"150px",left:"4px"}},(ft==null?void 0:ft.excellent)&&ue.createElement("div",{className:Be.bq},"\u5F00\u653E\u8BFE\u7A0B"))),ue.createElement("div",{className:Be.name},ue.createElement(Fe.Z,{title:lt&&(ft!=null&&ft.excellent_alias_name)?ue.createElement("span",null,`\u8BFE\u7A0B\u539F\u540D\uFF1A${rn}`,ue.createElement("br",null),ue.createElement("span",null,`\u8BFE\u7A0B\u522B\u540D\uFF1A${ft==null?void 0:ft.excellent_alias_name}`)):rn},ue.createElement("span",{className:Be.e},lt&&(ft==null?void 0:ft.excellent_alias_name)||rn))),at&&rt&&((Ut=ft==null?void 0:ft.progress)==null?void 0:Ut.all_score)!=0&&ue.createElement("div",{style:{padding:"0px 10px",color:"#333",marginTop:10}},ue.createElement(Ce.Z,{strokeColor:"#44d7b6",gap:"small",percent:(((Kt=ft==null?void 0:ft.progress)==null?void 0:Kt.my_score)/((qt=ft==null?void 0:ft.progress)==null?void 0:qt.all_score)*100).toFixed(),showInfo:!1}),"\u5DF2\u5B8C\u6210 ",(vn=ft==null?void 0:ft.progress)==null?void 0:vn.my_score,"/",(Ot=ft==null?void 0:ft.progress)==null?void 0:Ot.all_score),(!at||!rt)&&ue.createElement("div",{className:Be.tags},ue.createElement("div",null,ue.createElement(Fe.Z,{placement:"bottom",title:"\u7AE0\u8282\u6570"},ue.createElement("span",null,ue.createElement("i",{className:"iconfont icon-zhangjie1 font14 mr3"}),ue.createElement("span",null,ft.stages_count))),ue.createElement(Fe.Z,{placement:"bottom",title:"\u5B66\u4E60\u4EBA\u6570"},ue.createElement("span",null,ue.createElement("i",{className:"iconfont icon-chengyuan font14 mr3"}),ue.createElement("span",null,ft.members_count)))))))})),!Ne.length&&ue.createElement(Ae.Z,null)))}},2751:function(St,Dt,Ie){"use strict";Ie.d(Dt,{jL:function(){return _e},w9:function(){return Vn},dN:function(){return yn},QD:function(){return mn},cQ:function(){return qt.Z},Oz:function(){return Ft},op:function(){return Ue},O5:function(){return Ja},_b:function(){return dr},t7:function(){return Ne},Gi:function(){return Ba},YG:function(){return Fr},kT:function(){return Da},qp:function(){return le},K3:function(){return he},vr:function(){return Dn},qE:function(){return Pt},Je:function(){return Xe},wb:function(){return dt},lB:function(){return Kt},cq:function(){return oi},tp:function(){return ve},Si:function(){return Hr},k8:function(){return Bs},Du:function(){return Yi}});var Be=Ie(59301),He={flex_box_center:"flex_box_center___NeSU8",flex_space_between:"flex_space_between___ImTGl",flex_box_vertical_center:"flex_box_vertical_center___BtRd9",flex_box_center_end:"flex_box_center_end___qcLe3",flex_box_column:"flex_box_column___Ze_3q",banner:"banner___PoUBO",content:"content___XoDjy",btns:"btns___Pb35j"},Fe="data:image/png;base64,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",_e=({dataSource:zr=[],img:Ir,imgWidth:Vr=346,title:Na,sunTitle:ka,bannerExtraContent:Ai})=>Be.createElement("div",{className:He.banner},Be.createElement("div",{className:He.content},Be.createElement("aside",null,Be.createElement("p",null,Be.createElement("b",null,Na),Be.createElement("span",null,ka)),zr.length>0&&Be.createElement("div",{className:He.btns},zr.map((va,Ri)=>Be.createElement("div",{key:Ri,onClick:va.click},va.name,va.sign?Be.createElement("img",{src:Fe,width:39}):null))),Ai),Ir&&Be.createElement("img",{style:{marginTop:33,marginRight:38},src:Ir,width:Vr}))),Pe={flex_box_center:"flex_box_center___hG6RI",flex_space_between:"flex_space_between___ss3Fh",flex_box_vertical_center:"flex_box_vertical_center___K80p9",flex_box_center_end:"flex_box_center_end___qmXX3",flex_box_column:"flex_box_column___GFV8F",row:"row___aXJjm",title:"title___HUKL0",tagsWrap:"tagsWrap___XB2W3",action:"action___VdHb1",bar:"bar___t1kKC",tag:"tag___V7Eft",name:"name___Hk1Ip",num:"num___xQpcH",active:"active___XryTX",tagsBorderWrap:"tagsBorderWrap___OMxjs"},ge=Ie(92310),Ae=Ie.n(ge),be=Ie(89392),we=Object.defineProperty,pe=Object.getOwnPropertySymbols,ye=Object.prototype.hasOwnProperty,xe=Object.prototype.propertyIsEnumerable,ce=(zr,Ir,Vr)=>Ir in zr?we(zr,Ir,{enumerable:!0,configurable:!0,writable:!0,value:Vr}):zr[Ir]=Vr,te=(zr,Ir)=>{for(var Vr in Ir||(Ir={}))ye.call(Ir,Vr)&&ce(zr,Vr,Ir[Vr]);if(pe)for(var Vr of pe(Ir))xe.call(Ir,Vr)&&ce(zr,Vr,Ir[Vr]);return zr},le=({dataSource:zr=[],value:Ir,onChange:Vr,onTitleChange:Na,className:ka,title:Ai,titleWidth:va=41,style:Ri={},fontColor:pi="#6A7283",showCount:xo,classNameActive:lo,styleItem:Bi={}})=>{const[ho,po]=(0,Be.useState)(0),[ds,Fo]=(0,Be.useState)(!1),fs=(0,Be.useRef)(null),Gs=(0,Be.useRef)(null);return(0,Be.useEffect)(()=>{var Jr;zr.length!==0&&(((Jr=fs==null?void 0:fs.current)==null?void 0:Jr.clientHeight)>97?po(1):po(0)),zr.length===0&&po(0),Fo(!1)},[zr]),Be.createElement("div",{className:Ae()(Pe.row,ka),style:Ri},Be.createElement("div",{onClick:(0,be.throttle)(()=>Na==null?void 0:Na(),2e3),style:{width:va,marginTop:ds?12:4},className:`${Pe.title} ${Na?"current":""}`},Ai),Be.createElement("div",{className:ds?`${Pe.tagsWrap} ${Pe.tagsBorderWrap}`:Pe.tagsWrap},Be.createElement("div",{className:Pe.bar,ref:Gs,style:ho>0?{height:ho===1?97:"auto",overflow:ho===1?"hidden":"auto",paddingRight:55}:{paddingRight:0}},Be.createElement("div",{className:Pe.tag,ref:fs},zr==null?void 0:zr.map(Jr=>Be.createElement("span",{onClick:()=>Vr(Jr.id),key:Jr.id,style:te(te({color:pi},Bi),(Jr==null?void 0:Jr.style)||{}),className:Ir===Jr.id?Ae()(lo||Pe.active,Jr.classNameActive):""},Be.createElement("span",{title:Jr.name,className:Pe.name},Jr.name),!!xo&&Be.createElement("span",{className:Pe.num},Jr.count))))),!!ho&&Be.createElement(Be.Fragment,null,ho===1?Be.createElement("div",{onClick:()=>{var Jr;po(2),((Jr=fs==null?void 0:fs.current)==null?void 0:Jr.clientHeight)>245?Fo(!0):Fo(!1)},className:Pe.action},"\u5C55\u5F00",Be.createElement("i",{style:{transform:"translateY(1px) scale(0.6)"},className:"iconfont icon-zhankai4"})):Be.createElement("div",{onClick:()=>{Gs.current.scrollTop=0,po(1),Fo(!1)},className:Pe.action},"\u6536\u8D77",Be.createElement("i",{style:{transform:"translateY(0px) scale(0.6)"},className:"iconfont icon-shouqi3"})))))},oe={flex_box_center:"flex_box_center___HDG9F",flex_space_between:"flex_space_between___KhP6Z",flex_box_vertical_center:"flex_box_vertical_center___ZlFcA",flex_box_center_end:"flex_box_center_end___o7d_z",flex_box_column:"flex_box_column___ULJgZ",row:"row___Skft7",title:"title___KP2uZ",fenge:"fenge___yM8ys",tagsWrap:"tagsWrap___XcmUd",action:"action___y7wAl",bar:"bar___gdtOz",tag:"tag___PL8Db",name:"name___gsqnj",num:"num___sRnLB",active:"active___yNnAU",tagsBorderWrap:"tagsBorderWrap___BKCHD"},he=({dataSource:zr=[],value:Ir,onChange:Vr,onTitleChange:Na,className:ka,title:Ai,titleWidth:va=41,style:Ri={},fontColor:pi="#6A7283",showCount:xo,expand:lo=!0})=>{const[Bi,ho]=(0,Be.useState)(0),[po,ds]=(0,Be.useState)(!1),Fo=(0,Be.useRef)(null),fs=(0,Be.useRef)(null),[Gs,Jr]=(0,Be.useState)(lo);return Be.createElement("div",{className:Ae()(oe.row,ka),style:Ri},Be.createElement("div",{className:"flex item-center justify-between"},Be.createElement("div",{onClick:(0,be.throttle)(()=>Na==null?void 0:Na(),2e3),style:{width:va,marginTop:po?12:4},className:`${oe.title} ${Na?"current":""}`},Ai),Be.createElement("i",{className:`iconfont ${Gs?"icon-yizhankai":"icon-weizhankai"} current`,style:{color:"#727C95",fontSize:Gs?8:10},onClick:()=>Jr(!Gs)})),Gs&&Be.createElement("div",{className:po?`${oe.tagsWrap} ${oe.tagsBorderWrap}`:oe.tagsWrap},Be.createElement("div",{className:oe.fenge}),Be.createElement("div",{className:oe.bar,ref:fs},Be.createElement("div",{className:oe.tag,ref:Fo},zr==null?void 0:zr.map(ya=>Be.createElement("span",{onClick:()=>Vr(ya.id),key:ya.id,style:{color:pi},className:Ir===ya.id?oe.active:""},Be.createElement("span",{title:ya.name,className:oe.name},ya.name),!!xo&&Be.createElement("span",{className:oe.num},ya.count)))))))},ie={flex_box_center:"flex_box_center___aK2n3",flex_space_between:"flex_space_between___HX0Oh",flex_box_vertical_center:"flex_box_vertical_center___LJOJr",flex_box_center_end:"flex_box_center_end___SCakF",flex_box_column:"flex_box_column___AYv4m",tabs:"tabs___GTqPV",active:"active___F26E8"},ve=({dataSource:zr=[],value:Ir,onChange:Vr,className:Na,style:ka={}})=>Be.createElement("div",{style:ka,className:Ae()(ie.tabs,Na)},zr.map(Ai=>Be.createElement("span",{onClick:()=>Vr(Ai.id),className:Ir===Ai.id?ie.active:"",key:Ai.id},Ai.name))),Se={flex_box_center:"flex_box_center___yX6Oa",flex_space_between:"flex_space_between___t7oqF",flex_box_vertical_center:"flex_box_vertical_center___dEIHy",flex_box_center_end:"flex_box_center_end___taQDF",flex_box_column:"flex_box_column___xY_Lr",input:"input___PW2zI",dropdown:"dropdown___vSy8B",menu:"menu___NiyBu",text:"text___Grueu",b1:"b1___ZKryM",b2:"b2___aKyGa"},De=Ie(92832),Ne=({dataSource:zr=[],value:Ir="",onChange:Vr,onInputChange:Na=()=>{},className:ka,style:Ai={},placeholder:va,allowClear:Ri=!1})=>{var pi;const[xo,lo]=(0,Be.useState)(""),[Bi,ho]=(0,Be.useState)("");(0,Be.useEffect)(()=>{var Fo;let fs=Ir;(Fo=JSON.stringify(Ir))!=null&&Fo.includes("{")&&(lo(Ir.id),fs=Ir.value||"");try{ho(decodeURIComponent(fs||""))}catch(Gs){ho(decodeURIComponent(fs||""))}},[Ir]);const po=()=>{Vr(encodeURIComponent(Bi),xo||null)},ds=Fo=>{Fo!==xo&&(lo(Fo),Vr(encodeURIComponent(Bi),Fo))};return Be.createElement("div",{className:Ae()(Se.input,ka),style:Ai},!!zr.length&&Be.createElement("div",{className:Se.dropdown},Be.createElement("div",{className:Se.text},(pi=zr.find(Fo=>Fo.id===xo))==null?void 0:pi.name,Be.createElement("i",{className:"iconfont icon-zhankai4"}),Be.createElement("b",{className:Se.b1}),Be.createElement("b",{className:Se.b2})),Be.createElement("div",{className:Se.menu},zr.map((Fo,fs)=>Be.createElement("div",{key:fs,onClick:()=>ds(Fo.id)},Fo.name)))),Be.createElement(De.default,{onPressEnter:po,value:Bi,onChange:Fo=>{ho(Fo.target.value),Na(encodeURIComponent(Fo.target.value),xo||null)},bordered:!1,placeholder:va}),Be.createElement("i",{onClick:po,className:"iconfont icon-sousuo9 font14 pl10 current"}))},ze={flex_box_center:"flex_box_center___tol8o",flex_space_between:"flex_space_between___Z235C",flex_box_vertical_center:"flex_box_vertical_center___Wq1sZ",flex_box_center_end:"flex_box_center_end___LLxom",flex_box_column:"flex_box_column___DbMSN",quickPager:"quickPager___GM30J",disabled:"disabled___Ozc8I"},Xe=({value:zr,onChange:Ir,className:Vr,total:Na,pageSize:ka,style:Ai={}})=>{const va=zr<2,Ri=zr>=Math.ceil(Na/ka);return Na<=ka?Be.createElement(Be.Fragment,null):Be.createElement("div",{className:Ae()(ze.quickPager,Vr),style:Ai},Be.createElement("div",{onClick:()=>{va||Ir(zr-1,"prev")},className:va?ze.disabled:""},"\u4E0A\u4E00\u9875"),Be.createElement("div",{onClick:()=>{Ri||Ir(zr+1,"next")},className:Ri?ze.disabled:""},"\u4E0B\u4E00\u9875"))},Qe={flex_box_center:"flex_box_center___FO7TP",flex_space_between:"flex_space_between___LotYx",flex_box_vertical_center:"flex_box_vertical_center___bWdaw",flex_box_center_end:"flex_box_center_end___mVJ1o",flex_box_column:"flex_box_column___M83Mm",list:"list___oOsiS",wrap:"wrap___G6T7F",lockWrap:"lockWrap___Rl79E",li:"li___oZZ7l",cover:"cover___b2bYW",img:"img___IQX7w",sign:"sign___HkT6C",name:"name___SsJx8",e:"e___TMqq0",tags:"tags___bcjyo",rate:"rate___YACg7"},nt=Ie(71418),$e=Ie(6848),qe=Ie(13570),ot=Ie(11662),at=Ie(22566),lt=Ie(96908),rt=Ie(57177),ut=Ie(81378),yt=Ie(21692),dt=({className:zr,dataSource:Ir=[],col:Vr=4,right:Na,bottom:ka=23,precision:Ai=0,wrapWidth:va=1200,trackEventItems:Ri,loading:pi})=>{const xo=Math.floor((va-(Vr-1)*Na)/Vr);return Be.createElement(nt.Z,{spinning:pi},Be.createElement("div",{className:Ae()(Qe.list,zr)},!!Ir.length&&Ir.map((lo,Bi)=>{const{name:ho,id:po,identifier:ds,power:Fo,cover_image_id:fs,pic:Gs}=lo;return Be.createElement("div",{className:Qe.wrap,key:po,style:{width:xo,marginRight:(1+Bi)%Vr===0?0:Na+Ai,marginBottom:ka}},Be.createElement("a",{target:"_blank",href:`/shixuns/${ds}/challenges`,className:Qe.li,onClick:Jr=>{Jr.preventDefault(),Ri&&(0,at.L9)([Ri]),Fo&&(0,at.xg)(`/shixuns/${ds}/challenges`)}},Be.createElement("div",{className:Qe.img},Be.createElement("img",{className:Qe.cover,src:`${Gs}`}),lo.is_jupyter&&Be.createElement("img",{className:Qe.sign,src:lt}),lo.is_jupyter_lab&&Be.createElement("img",{className:Qe.sign,src:rt}),lo.is_unity_3d&&Be.createElement("img",{className:Qe.sign,src:ut})),Be.createElement("div",{className:Qe.name},Be.createElement($e.Z,{title:ho||"\u5B9E\u8DF5\u9879\u76EE\u540D\u79F0-\u672A\u586B\u5199"},Be.createElement("span",{className:Qe.e},ho||"\u5B9E\u8DF5\u9879\u76EE\u540D\u79F0-\u672A\u586B\u5199"))),Be.createElement("div",{className:Qe.tags},Be.createElement($e.Z,{placement:"bottom",title:"\u5173\u5361\u6570"},Be.createElement("span",null,Be.createElement("i",{className:"iconfont icon-shixunguanqia font14 mr2"}),Be.createElement("span",null,lo.challenges_count))),!!lo.myshixuns_count&&Be.createElement($e.Z,{placement:"bottom",title:"\u5B66\u4E60\u4EBA\u6570"},Be.createElement("span",null,Be.createElement("i",{className:"iconfont icon-chengyuan font14 mr2"}),Be.createElement("span",null,lo.myshixuns_count))),Be.createElement($e.Z,{placement:"bottom",title:"\u96BE\u5EA6\u7B49\u7EA7"},Be.createElement("span",null,Be.createElement("span",null,lo.level))),Be.createElement("div",{className:Qe.rate},Be.createElement(qe.Z,{allowHalf:!0,disabled:!0,defaultValue:lo.score_info}),Be.createElement("span",null,"\xA0",lo.score_info?`${lo.score_info}\u5206`:"5\u5206")))),!Fo&&Be.createElement("div",{className:Qe.lockWrap},Be.createElement("img",{src:`${ot.Z.IMG_SERVER}/images/educoder/icon/lockclose.svg`}),Be.createElement("span",{className:"mt15 font16 c-white"},"\u5B9A\u5411\u5F00\u653E\u5185\u5BB9\uFF0C\u9700\u8981\u6388\u6743")))}),!Ir.length&&Be.createElement(yt.Z,null)))},ht={flex_box_center:"flex_box_center___KD0ZB",flex_space_between:"flex_space_between___rMep5",flex_box_vertical_center:"flex_box_vertical_center___jD3Po",flex_box_center_end:"flex_box_center_end___RbohB",flex_box_column:"flex_box_column___GmzUj",list:"list___dlUtq",wrap:"wrap___LYbIZ",lockWrap:"lockWrap___U7Ajb",li:"li___bsnqy",img:"img___yQ3UM",cover:"cover___KP0L8",bq:"bq___DtmL1",sign:"sign___TZ9Wq",titleBg:"titleBg___tnX0O",name:"name___OGYeq",e:"e___zxiB9",text:"text____ZmZX",value:"value___WPLok",rate:"rate___iOr7E"},Kt=({className:zr,dataSource:Ir=[],col:Vr=4,right:Na,bottom:ka=23,precision:Ai=0,wrapWidth:va=1200,wrapClassName:Ri,trackEventItems:pi,loading:xo})=>{const lo=Math.floor((va-(Vr-1)*Na)/Vr);return Be.createElement(nt.Z,{spinning:xo},Be.createElement("div",{className:Ae()(ht.list,zr)},!!Ir.length&&Ir.map((Bi,ho)=>{const{name:po,id:ds,identifier:Fo,power:fs,cover_image_id:Gs,pic:Jr}=Bi;return Be.createElement("div",{className:Ae()(ht.wrap,Ri),key:ds,style:{width:lo,marginRight:(1+ho)%Vr===0?0:Na+Ai,marginBottom:ka}},Be.createElement("a",{target:"_blank",href:`/shixuns/${Fo}/challenges`,className:ht.li,onClick:ya=>{ya.preventDefault(),pi&&(0,at.L9)([pi]),fs&&(0,at.xg)(`/shixuns/${Fo}/challenges`)}},Be.createElement("img",{src:Ie(47621),className:ht.titleBg}),Be.createElement("div",{className:ht.name},Be.createElement($e.Z,{title:po||"\u5B9E\u8DF5\u9879\u76EE\u540D\u79F0-\u672A\u586B\u5199"},Be.createElement("span",{className:ht.e},po||"\u5B9E\u8DF5\u9879\u76EE\u540D\u79F0-\u672A\u586B\u5199"))),Be.createElement("div",{style:{padding:"14px",paddingBottom:0}},Be.createElement("div",{className:ht.img},Be.createElement("img",{className:ht.cover,src:Gs?`${ot.Z.API_SERVER}/api/attachments/${Gs}`:`${ot.Z.IMG_SERVER+Jr}`}),Bi.is_jupyter&&Be.createElement("div",{className:ht.bq},"Jupyter"),Bi.is_jupyter_lab&&Be.createElement("div",{className:ht.bq},"JupyterLab"),Bi.is_unity_3d&&Be.createElement("div",{className:ht.bq,style:{background:"linear-gradient(rgba(90, 167, 237, 0.8) 0%, rgba(79, 29, 189, 0.8) 100%)"}},"\u865A\u62DF\u4EFF\u771F")),Be.createElement("div",{className:"mt20 flex item-center justify-between"},Be.createElement("div",null,Be.createElement("span",{className:ht.text},"\u5B66\u4E60\u4EBA\u6570"),Be.createElement("span",{className:ht.value},Bi.myshixuns_count)),Be.createElement("div",null,Be.createElement("span",{className:ht.text},"\u56F0\u96BE\u7B49\u7EA7"),Be.createElement("span",{className:ht.value},Bi.level))),Be.createElement("div",{className:"mt10 mb10 flex item-center justify-between"},Be.createElement("div",null,Be.createElement("span",{className:ht.text},"\u5173\u5361\u6570"),Be.createElement("span",{className:ht.value},Bi.challenges_count)),Be.createElement("div",{className:ht.rate},Be.createElement(qe.Z,{allowHalf:!0,disabled:!0,defaultValue:Bi.score_info}),Be.createElement("span",{className:ht.value,style:{color:"#FF9C00"}},"\xA0",Bi.score_info?`${Bi.score_info}\u5206`:"5\u5206"))))),!fs&&Be.createElement("div",{className:ht.lockWrap},Be.createElement("img",{src:`${ot.Z.IMG_SERVER}/images/educoder/icon/lockclose.svg`}),Be.createElement("span",{className:"mt15 font16 c-white"},"\u5B9A\u5411\u5F00\u653E\u5185\u5BB9\uFF0C\u9700\u8981\u6388\u6743")))}),!Ir.length&&Be.createElement(yt.Z,null)))},qt=Ie(23734),vn={flex_box_center:"flex_box_center___vu9yi",flex_space_between:"flex_space_between___LwoH7",flex_box_vertical_center:"flex_box_vertical_center___pUG0J",flex_box_center_end:"flex_box_center_end___xWI9t",flex_box_column:"flex_box_column___Mr5rB",list:"list___zE1wj",wrap:"wrap___5HG1h",lockWrap:"lockWrap___zziwX",li:"li___aNI2z",img:"img___adfIp",cover:"cover___G1cj9",bq:"bq___hpdTt",sign:"sign___kHAha",titleBg:"titleBg___S1VlI",name:"name___zsjxM",e:"e___fd1jW",text:"text___b9Tdy",value:"value___ZASRv",unit:"unit___sMNBQ",tags:"tags___KbL1d",tag1:"tag1___c9ebE",tag2:"tag2___bxczv"},Ot=Ie(79005),rn=Ie(20345),an=Ie(77882),On=Ie(31081),Rn=Ie(75309),sn=Ie(71979),tn=Ie(47558),Gt=Ie(42922),It=Ie(66832),Et=Ie(96593),Zt=Ie(19664),vt=Ie(91833);const At=[{name:"\u63A8\u8350\u81EA\u5B66",ptimg:Ot,swimg:rn},{name:"101\u8BA1\u5212",ptimg:an,swimg:On},{name:"\u56FD\u5BB6\u4E00\u6D41",ptimg:Rn,swimg:sn},{name:"\u7701\u7EA7\u4E00\u6D41",ptimg:tn,swimg:Gt},{name:"\u7CBE\u54C1\u8BFE\u7A0B",ptimg:It,swimg:Et},{name:"\u519B\u961F\u4E00\u6D41",ptimg:Zt,swimg:vt}];var Ft=({className:zr,dataSource:Ir=[],col:Vr=4,right:Na,bottom:ka=23,precision:Ai=0,wrapWidth:va=1200,trackEventItems:Ri,loading:pi,wrapClassName:xo,imgClassName:lo,isArrow:Bi=!1})=>{const ho=Math.floor((va-(Vr-1)*Na)/Vr),[po,ds]=(0,Be.useState)(),[Fo,fs]=(0,Be.useState)(),Gs=ya=>ds(ya),Jr=()=>ds(-1);return Be.createElement(nt.Z,{spinning:pi},Be.createElement("div",{className:Ae()(vn.list,zr)},!!(Ir!=null&&Ir.length)&&(Ir==null?void 0:Ir.map((ya,za)=>{var Ga;const{name:Hi,id:Io,identifier:us,featured:hs,school_name:Ws,image_url:js,excellent:zl,is_plan:al}=ya;return Be.createElement("div",{key:Io,className:Ae()(vn.wrap,xo),style:{width:ho,marginRight:(1+za)%Vr===0?0:Na+Ai,marginBottom:ka}},Be.createElement("a",{target:"_blank",href:`/paths/${us}`,className:vn.li,onClick:yo=>{yo.preventDefault(),Ri&&(0,at.L9)([Ri]),(0,at.xg)(`/paths/${us}`)}},Be.createElement("img",{src:Ie(39057),className:vn.titleBg}),Be.createElement("div",{className:vn.name},Be.createElement($e.Z,{title:Hi},Be.createElement("span",{className:vn.e,style:{color:Bi&&po===za?"#145DFF":"#000000"},onMouseEnter:()=>{Gs(za)},onMouseLeave:Jr},Hi))),Be.createElement("div",{style:{padding:"14px",paddingBottom:0}},Be.createElement("div",{className:Ae()(vn.img,lo)},Be.createElement("img",{className:vn.cover,src:`${ot.Z.IMG_SERVER+js}`}),(Ga=ya==null?void 0:ya.subject_tags)==null?void 0:Ga.map((yo,ko)=>{var gs,Po;if(ko===0){const Hs=(gs=At.find(Cs=>Cs.name==yo))==null?void 0:gs.swimg;return Be.createElement("img",{className:vn.sign,src:Hs,style:{left:"-4px"}})}const is=(Po=At.find(Hs=>Hs.name==yo))==null?void 0:Po.ptimg;return Be.createElement("img",{className:vn.sign,src:is,style:{left:`${48+52*(ko-1)+2*ko}px`}})}),Be.createElement("div",{style:{position:"absolute",right:"4px",bottom:"4px"}},(ya==null?void 0:ya.excellent)&&Be.createElement("div",{className:vn.bq},"\u5F00\u653E\u8BFE\u7A0B"))),Be.createElement("div",{className:"mt10 mb10 flex item-center justify-between"},Be.createElement("div",null,Be.createElement("span",{className:vn.text},"\u7AE0\u8282\u6570"),Be.createElement("span",{className:vn.value},ya.stages_count)),Be.createElement("div",null,Be.createElement("span",{className:vn.text},"\u5B66\u4E60\u4EBA\u6570"),Be.createElement("span",{className:vn.value},ya.members_count))))))})),!Ir.length&&Be.createElement(yt.Z,null)))},wt={flex_box_center:"flex_box_center___eMcr7",flex_space_between:"flex_space_between___HcNca",flex_box_vertical_center:"flex_box_vertical_center___ZnvVN",flex_box_center_end:"flex_box_center_end___fdgDf",flex_box_column:"flex_box_column___SEKvd",list:"list___L1hmU",wrap:"wrap___pKgcW",lockWrap:"lockWrap___SMhkK",top:"top___udHSB",sign:"sign___uwRpq",name:"name___Fpf90",img:"img___AMLhL",text:"text___KiTb7",btns:"btns___i6IuZ",bottom:"bottom____k2sh"},ln="data:image/png;base64,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",In=Ie(59301),Vn=({className:zr,dataSource:Ir=[],col:Vr=4,right:Na,bottom:ka=23,precision:Ai=0,wrapWidth:va=1200,trackEventItems:Ri,loading:pi})=>{const xo=Math.floor((va-(Vr-1)*Na)/Vr);return In.createElement(nt.Z,{spinning:pi},In.createElement("div",{className:Ae()(wt.list,zr)},!!Ir.length&&Ir.map((lo,Bi)=>{const{subject_identifier:ho,id:po,identifier:ds,power:Fo}=lo,fs=lo.is_public!=0&&lo.is_public;return In.createElement("div",{className:wt.wrap,key:po,style:{width:xo,marginRight:(1+Bi)%Vr===0?0:Na+Ai,marginBottom:ka}},In.createElement("a",{className:wt.li,onClick:Gs=>{Gs.preventDefault(),Ri&&(0,at.L9)([Ri]),(0,at.xg)(lo.first_category_url)}},In.createElement("div",{className:wt.top},In.createElement($e.Z,{title:lo.name},In.createElement("div",{className:wt.name},lo.name)),In.createElement("img",{className:wt.img,src:ot.Z.IMG_SERVER+"/images/"+lo.avatar_url}),In.createElement("div",{className:wt.text,title:lo.creator},lo.creator),ho&&In.createElement("div",{className:wt.btns},In.createElement("div",null,"\u5F00\u653E\u8BFE\u7A0B"),In.createElement("aside",null,"\u5F00\u653E\u8BFE\u5802")),fs&&In.createElement("div",{className:wt.sign},"\u516C\u5F00")),In.createElement("div",{className:wt.bottom},lo.visits>0&&In.createElement($e.Z,{title:"\u8BBF\u95EE\u91CF",placement:"bottom"},In.createElement("span",null,In.createElement("i",{className:"iconfont icon-liulanyan"}),In.createElement("span",null,lo.visits))),lo.course_members_count>0&&In.createElement($e.Z,{title:"\u6210\u5458",placement:"bottom"},In.createElement("span",null,In.createElement("i",{className:"iconfont icon-chengyuan"}),lo.course_members_count)),lo.tasks_count>0&&In.createElement($e.Z,{title:"\u4F5C\u4E1A",placement:"bottom"},In.createElement("span",null,In.createElement("i",{className:"iconfont icon-zuoye"}),lo.tasks_count)),lo.is_end?In.createElement("div",{style:{color:"#6B758B"}},"\u5DF2\u7ED3\u675F"):In.createElement("div",{style:{color:"#00B187"}},"\u8FDB\u884C\u4E2D"))),!lo.is_accessible&&In.createElement("div",{className:wt.lockWrap},In.createElement("img",{src:`${ot.Z.IMG_SERVER}/images/educoder/icon/lockclose.svg`}),In.createElement("span",{className:"mt15 font16 c-white"},"\u975E\u8BFE\u5802\u6210\u5458\u4E0D\u53EF\u8FDB\u5165")))}),!Ir.length&&In.createElement(yt.Z,null)))},Zn={flex_box_center:"flex_box_center___PuarE",flex_space_between:"flex_space_between___q4lAa",flex_box_vertical_center:"flex_box_vertical_center___wsb8w",flex_box_center_end:"flex_box_center_end___H781P",flex_box_column:"flex_box_column___bHK1y",list:"list___e2XDo",wrap:"wrap___cz7sh",lockWrap:"lockWrap___EPuRr",creator:"creator___Y6Xjp",img:"img___kSEud",text:"text___GIlhY",top:"top___K4GCD",sign:"sign___KCjEP",name:"name___z3U4d",middle:"middle___LeUM5",row:"row___VBzfJ",value:"value___qigWu",btns:"btns___kGysm",bottom:"bottom___yPYd5",warpStyle:"warpStyle___pH3uC"},$n="data:image/png;base64,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",yn=({className:zr,dataSource:Ir=[],col:Vr=4,right:Na,bottom:ka=23,precision:Ai=0,wrapWidth:va=1200,wrapClassName:Ri,trackEventItems:pi,loading:xo})=>{const lo=Math.floor((va-(Vr-1)*Na)/Vr);return Be.createElement(nt.Z,{spinning:xo},Be.createElement("div",{className:Ae()(Zn.list,zr)},!!Ir.length&&Ir.map((Bi,ho)=>{const{subject_identifier:po,id:ds,identifier:Fo,power:fs}=Bi,Gs=Bi.is_public!=0&&Bi.is_public;return Be.createElement("div",{className:Ae()(`${Zn.wrap} ${Bi.is_accessible?"":Zn.warpStyle}`,Ri),key:ds,style:{width:lo,marginRight:(1+ho)%Vr===0?0:Na+Ai,marginBottom:ka}},Be.createElement("a",{className:Zn.li,onClick:Jr=>{Jr.preventDefault(),pi&&(0,at.L9)([pi]),(0,at.xg)(Bi.first_category_url)}},Be.createElement("div",{className:Zn.creator},Be.createElement("img",{className:Zn.img,src:ot.Z.IMG_SERVER+"/images/"+Bi.avatar_url}),Be.createElement("div",{className:Zn.text,title:Bi.creator},Bi.creator)),Be.createElement("div",{className:Zn.top},Be.createElement($e.Z,{title:Bi.name},Be.createElement("div",{className:Zn.name},Bi.name)),Gs&&Be.createElement("div",{className:Zn.sign},"\u516C\u5F00")),Be.createElement("div",{className:Zn.middle},Be.createElement("div",{className:Zn.row,style:{marginBottom:6}},Be.createElement("div",null,Be.createElement("span",{className:Zn.text},"\u8BBF\u95EE\u91CF"),Be.createElement("span",{className:Zn.value},(Bi==null?void 0:Bi.visits)||0)),Be.createElement("div",null,Be.createElement("span",{className:Zn.text},"\u6210\u5458"),Be.createElement("span",{className:Zn.value},(Bi==null?void 0:Bi.course_members_count)||0))),Be.createElement("div",{className:Zn.row},Be.createElement("div",null,Be.createElement("span",{className:Zn.text,style:{width:42}},"\u4F5C",Be.createElement("span",{style:{marginLeft:14}},"\u4E1A")),Be.createElement("span",{className:Zn.value},(Bi==null?void 0:Bi.tasks_count)||0)),Be.createElement("div",null,Be.createElement("span",{className:Zn.text},"\u72B6\u6001"),Bi.is_end?Be.createElement("span",{className:Zn.value,style:{color:"#6E8BAA"}},"\u5DF2\u7ED3\u675F"):Be.createElement("span",{className:Zn.value,style:{color:"#1AAE64"}},"\u8FDB\u884C\u4E2D")))),po&&Be.createElement("div",{className:Zn.btns},Be.createElement("div",null,"\u5F00\u653E\u8BFE\u7A0B"),Be.createElement("aside",null,"\u5F00\u653E\u8BFE\u5802"))),!Bi.is_accessible&&Be.createElement("div",{className:Zn.lockWrap},Be.createElement("img",{src:`${ot.Z.IMG_SERVER}/images/educoder/icon/lockclose.svg`}),Be.createElement("span",{className:"mt15 font16 c-white"},"\u975E\u8BFE\u5802\u6210\u5458\u4E0D\u53EF\u8FDB\u5165")))}),!Ir.length&&Be.createElement(yt.Z,null)))},Hn={flex_box_center:"flex_box_center___d27mZ",flex_space_between:"flex_space_between___qfRU9",flex_box_vertical_center:"flex_box_vertical_center___fCRld",flex_box_center_end:"flex_box_center_end___ORMV8",flex_box_column:"flex_box_column___PNKtZ",tabs:"tabs___alpa7",tabsWrap:"tabsWrap___aCQjw",tab:"tab___MKLr4",active:"active___nl_4v"},Bn=Ie(90115),Fr=({dataSource:zr=[],value:Ir,onChange:Vr,className:Na,style:ka={},tabBarExtraContent:Ai})=>Be.createElement("div",{className:Ae()(Hn.tabs,Na),style:ka},Be.createElement("div",{className:Hn.tabsWrap},zr.map((va,Ri)=>Be.createElement("aside",{className:Hn.tab,onClick:()=>{Vr(va.id),va.link&&Bn.history.push(va.link)},key:Ri},Be.createElement("div",{className:Ir===va.id?Hn.active:""},va.name),(va==null?void 0:va.resetCount)==null&&(va==null?void 0:va.total)!==void 0&&Be.createElement("span",null,"\uFF08",va==null?void 0:va.total,"\uFF09"),(va==null?void 0:va.resetCount)!==void 0&&(va==null?void 0:va.total)!==void 0&&Be.createElement($e.Z,{title:(va==null?void 0:va.tip)!=null?va==null?void 0:va.tip:""},Be.createElement("span",{style:{color:"#9096A3"}},"\uFF08",Be.createElement("span",{style:{color:"#000"}},va==null?void 0:va.resetCount),"/",Be.createElement("span",null,va==null?void 0:va.total),"\uFF09"))))),Be.createElement("div",{className:Hn.tabBar},Ai)),br={flex_box_center:"flex_box_center___itkVp",flex_space_between:"flex_space_between___F4yZx",flex_box_vertical_center:"flex_box_vertical_center___ko4cu",flex_box_center_end:"flex_box_center_end___cCBYR",flex_box_column:"flex_box_column___Mpq6K",tabs:"tabs___qRAhL",tabsWrap:"tabsWrap___CGRvS",tab:"tab___eYne_",active:"active___swSx6"},Da=({dataSource:zr=[],value:Ir,onChange:Vr,className:Na,style:ka={},tabBarExtraContent:Ai})=>Be.createElement("div",{className:Ae()(br.tabs,Na),style:ka},Be.createElement("div",{className:br.tabsWrap},zr.map((va,Ri)=>Be.createElement("aside",{className:br.tab,onClick:()=>{Vr(va.id),va.link&&Bn.history.push(va.link)},key:Ri},Be.createElement("div",{className:Ir===va.id?br.active:""},va.name),(va==null?void 0:va.resetCount)==null&&(va==null?void 0:va.total)!==void 0&&Be.createElement("span",null,"\uFF08",va==null?void 0:va.total,"\uFF09"),(va==null?void 0:va.resetCount)!==void 0&&(va==null?void 0:va.total)!==void 0&&Be.createElement($e.Z,{title:(va==null?void 0:va.tip)!=null?va==null?void 0:va.tip:""},Be.createElement("span",{style:{color:"#9096A3"}},"\uFF08",Be.createElement("span",{style:{color:"#000"}},va==null?void 0:va.resetCount),"/",Be.createElement("span",null,va==null?void 0:va.total),"\uFF09"))))),Be.createElement("div",{className:br.tabBar},Ai)),Ba=({className:zr,style:Ir={},children:Vr})=>Be.createElement("div",{className:Ae()(zr),style:Ir},Vr),Ia={flex_box_center:"flex_box_center___e6HxQ",flex_space_between:"flex_space_between___RnXYe",flex_box_vertical_center:"flex_box_vertical_center___lVxPk",flex_box_center_end:"flex_box_center_end___bu8yv",flex_box_column:"flex_box_column___JczGj",orderWrap:"orderWrap___ZfyGX",orderIconWrap:"orderIconWrap___XTB_O",orderAsc:"orderAsc___KWHmA",orderDesc:"orderDesc___rHdbB",active:"active___a7eSP",cursorPointer:"cursorPointer___gs9kL",orderTextWrap:"orderTextWrap___teAKn"},Ii=Ie(38854),wi=Ie(20834);const jr=[{id:"updated_at",name:"\u6700\u65B0\u52A8\u6001"},{id:"created_at",name:"\u6700\u65B0\u521B\u5EFA"},{id:"name",name:"\u540D\u79F0\u6392\u5E8F"}];var oi=({sortValue:zr,dropValue:Ir,className:Vr,onSort:Na,onDrop:ka,dataSource:Ai=jr})=>{var va;return Be.createElement("div",{className:Ae()(Ia.orderWrap,Vr)},Be.createElement(Ii.Z,{dropdownRender:()=>Be.createElement(wi.default,null,Ai.map((Ri,pi)=>Be.createElement(wi.default.Item,{key:pi,onClick:()=>ka(Ri.id)},Ri.name)))},Be.createElement("span",{className:Ia.orderTextWrap},(va=Ai.find(Ri=>Ir===Ri.id))==null?void 0:va.name)),Be.createElement("span",{className:Ia.orderIconWrap},Be.createElement("span",{className:Ia.orderAsc},Be.createElement("i",{className:zr==="asc"?`iconfont icon-sanjiaoxing-up font12 ${Ia.cursorPointer} ${Ia.active}`:`iconfont icon-sanjiaoxing-up font12 ${Ia.cursorPointer}`,onClick:()=>Na(zr==="asc"?"desc":"asc")})),Be.createElement("span",{className:Ia.orderDesc},Be.createElement("i",{className:zr==="desc"?`iconfont icon-sanjiaoxing-down font12 ${Ia.cursorPointer} ${Ia.active}`:`iconfont icon-sanjiaoxing-down font12 ${Ia.cursorPointer}`,onClick:()=>Na(zr==="asc"?"desc":"asc")}))))},pr={flex_box_center:"flex_box_center___LCi0B",flex_space_between:"flex_space_between___hzONe",flex_box_vertical_center:"flex_box_vertical_center___ZyQRE",flex_box_center_end:"flex_box_center_end___XKM74",flex_box_column:"flex_box_column___p8LCU",btn:"btn___In02G","mediacy-round":"mediacy-round___uveEv","mediacy-default":"mediacy-default___dDxsd",default:"default___K791v",ThemeOne:"ThemeOne___iCQio"},vr=Ie(3113),li=Ie(39587),zn=Object.defineProperty,hr=Object.getOwnPropertySymbols,Tr=Object.prototype.hasOwnProperty,Rr=Object.prototype.propertyIsEnumerable,fa=(zr,Ir,Vr)=>Ir in zr?zn(zr,Ir,{enumerable:!0,configurable:!0,writable:!0,value:Vr}):zr[Ir]=Vr,bt=(zr,Ir)=>{for(var Vr in Ir||(Ir={}))Tr.call(Ir,Vr)&&fa(zr,Vr,Ir[Vr]);if(hr)for(var Vr of hr(Ir))Rr.call(Ir,Vr)&&fa(zr,Vr,Ir[Vr]);return zr},Me=(zr,Ir)=>{var Vr={};for(var Na in zr)Tr.call(zr,Na)&&Ir.indexOf(Na)<0&&(Vr[Na]=zr[Na]);if(zr!=null&&hr)for(var Na of hr(zr))Ir.indexOf(Na)<0&&Rr.call(zr,Na)&&(Vr[Na]=zr[Na]);return Vr},Le=(zr,Ir,Vr)=>new Promise((Na,ka)=>{var Ai=pi=>{try{Ri(Vr.next(pi))}catch(xo){ka(xo)}},va=pi=>{try{Ri(Vr.throw(pi))}catch(xo){ka(xo)}},Ri=pi=>pi.done?Na(pi.value):Promise.resolve(pi.value).then(Ai,va);Ri((Vr=Vr.apply(zr,Ir)).next())}),Ue=zr=>{var Ir=zr,{className:Vr,style:Na,children:ka,loading:Ai=!1,openLoading:va,onClick:Ri=()=>{},size:pi="middle",shape:xo="round",theme:lo}=Ir,Bi=Me(Ir,["className","style","children","loading","openLoading","onClick","size","shape","theme"]);const[ho,po]=(0,Be.useState)(!1),ds=(0,Be.useMemo)(()=>{switch(lo){case li.Fy.THEMEONE:return pr.ThemeOne;case li.Fy.DEFAULT:default:return pr.btn}},[lo]);return Be.createElement(vr.ZP,bt({onClick:(0,be.throttle)(Fo=>Le(void 0,null,function*(){va&&po(!0);try{yield Ri(Fo)}catch(fs){console.log("error",fs)}va&&po(!1)}),2e3,{leading:!0,trailing:!1}),className:Ae()(ds,pr[`${pi}-${xo}`],Vr),style:Na,size:pi,shape:xo,loading:ho||Ai},Bi),ka)},Ye={flex_box_center:"flex_box_center___TB7bQ",flex_space_between:"flex_space_between___oBlTb",flex_box_vertical_center:"flex_box_vertical_center___b5XbB",flex_box_center_end:"flex_box_center_end___CNhe7",flex_box_column:"flex_box_column___yHXKW",head:"head___ghH72",node:"node___mjPEy"},Pt=({className:zr,style:Ir,children:Vr=null,onClick:Na,title:ka})=>Be.createElement("div",{className:Ae()(Ye.head,zr),style:Ir},Be.createElement("span",{className:"primary-hover",onClick:Na},Be.createElement("i",{className:"iconfont icon-fanhui2 font12"}),"\u8FD4\u56DE"),Be.createElement("b",{title:ka},ka),Be.createElement("div",{className:Ye.node},Vr)),Xt={flex_box_center:"flex_box_center___AlHuF",flex_space_between:"flex_space_between___vN2LW",flex_box_vertical_center:"flex_box_vertical_center___Ac7D2",flex_box_center_end:"flex_box_center_end___y38I7",flex_box_column:"flex_box_column___iQE6P",btns:"btns___sNgTb",confirm:"confirm___Ozirl",cancel:"cancel___aiq1I"},mn=({confirmShow:zr=!0,confirmTitle:Ir,confirmClick:Vr,cancelShow:Na=!0,cancelTitle:ka,cancelClick:Ai,className:va,style:Ri,confirmLoading:pi=!1})=>Be.createElement("div",{className:Ae()(Xt.btns,va),style:Ri},zr&&Be.createElement(vr.ZP,{loading:pi,onClick:Vr,type:"primary",className:Xt.confirm},Ir),Na&&Be.createElement(vr.ZP,{onClick:Ai,className:Xt.cancel},ka)),pn={flex_box_center:"flex_box_center___jkpdr",flex_space_between:"flex_space_between___OtsL8",flex_box_vertical_center:"flex_box_vertical_center___rbcb_",flex_box_center_end:"flex_box_center_end___zBR21",flex_box_column:"flex_box_column___nS_eP",fixedBottom:"fixedBottom___oJl7m",wrap:"wrap___A3Oq1",center:"center____VL1y"},Dn=({className:zr,style:Ir={},LeftContent:Vr,children:Na,RightContent:ka})=>Be.createElement("div",{className:Ae()(pn.fixedBottom,zr),style:Ir},Be.createElement("div",{className:pn.wrap},Be.createElement("div",{className:pn.left},Vr),Be.createElement("div",{className:pn.center},Na),Be.createElement("div",{className:pn.right},ka))),qn={flex_box_center:"flex_box_center___tY8Yn",flex_space_between:"flex_space_between___vHdYA",flex_box_vertical_center:"flex_box_vertical_center___pa61F",flex_box_center_end:"flex_box_center_end___HyDXt",flex_box_column:"flex_box_column___UjZek",crumbs:"crumbs___V41Oe",hover:"hover___bEIVd"},dr=({className:zr,style:Ir={},dataSource:Vr=[]})=>Be.createElement("div",{className:Ae()(qn.crumbs,zr),style:Ir},Vr.map((Na,ka)=>kaBn.history.push(Na.path)},Na.name):Be.createElement("span",null,Na.name),Be.createElement("span",null,"\xA0",">","\xA0")):Be.createElement("span",{key:ka,style:{color:"#5F6368"}},Na.name))),fn=Ie(31797),nn=Object.defineProperty,Nn=Object.defineProperties,jn=Object.getOwnPropertyDescriptors,rr=Object.getOwnPropertySymbols,mr=Object.prototype.hasOwnProperty,Xn=Object.prototype.propertyIsEnumerable,ur=(zr,Ir,Vr)=>Ir in zr?nn(zr,Ir,{enumerable:!0,configurable:!0,writable:!0,value:Vr}):zr[Ir]=Vr,yr=(zr,Ir)=>{for(var Vr in Ir||(Ir={}))mr.call(Ir,Vr)&&ur(zr,Vr,Ir[Vr]);if(rr)for(var Vr of rr(Ir))Xn.call(Ir,Vr)&&ur(zr,Vr,Ir[Vr]);return zr},wn=(zr,Ir)=>Nn(zr,jn(Ir)),gr=(zr,Ir)=>{var Vr={};for(var Na in zr)mr.call(zr,Na)&&Ir.indexOf(Na)<0&&(Vr[Na]=zr[Na]);if(zr!=null&&rr)for(var Na of rr(zr))Ir.indexOf(Na)<0&&Xn.call(zr,Na)&&(Vr[Na]=zr[Na]);return Vr};const{Countdown:Jn}=fn.default;var Ja=zr=>{var Ir=zr,{onChange:Vr}=Ir,Na=gr(Ir,["onChange"]);const[ka,Ai]=(0,Be.useState)(null);(0,Be.useEffect)(()=>{typeof ka=="number"&&ka>=0&&Vr(ka)},[ka]);const va=Ri=>{const pi=Math.floor(Ri/1e3);Ai(pi)};return Be.createElement(Jn,wn(yr({},Na),{onChange:va}))},gi={ClassRoomItem:"ClassRoomItem___F4pL0",TitleDom:"TitleDom___DB76T"},Hr=({DataProps:zr,className:Ir,style:Vr={}})=>{var Na;return Be.createElement("div",{className:Ae()("rounded-40px bg-white py-10px pb-30px px-30px flex gap-22px current h-full",gi.ClassRoomItem,Ir),style:Vr,onClick:()=>{(0,at.xg)(zr==null?void 0:zr.first_category_url)}},Be.createElement("div",{className:"flex flex-col item-center"},Be.createElement("img",{src:`${(Na=ot.Z)==null?void 0:Na.IMG_SERVER}/images/${zr==null?void 0:zr.avatar_url}`,className:"rounded-full",style:{height:76,width:76,marginTop:"-24px"}}),(zr==null?void 0:zr.subject_identifier)&&Be.createElement("div",{className:"mt-40px"},Be.createElement("div",{className:"rounded-full",style:{background:"rgba(33,202,159,0.1)",border:"1px solid #6BFF98",color:"#0EA17B"}},"\u5F00\u653E\u8BFE\u7A0B"),Be.createElement("div",{className:"rounded-full",style:{background:"rgba(255,160,0,0.1)",border:"1px solid #FFC055",color:"#C97319"}},"\u5F00\u653E\u8BFE\u5802"))),Be.createElement("div",{className:"flex-1 flex flex-col justify-between gap-10px"},Be.createElement("div",{className:"multi_ellipsis2",style:{height:48}},!!(zr!=null&&zr.is_public)&&Be.createElement("div",{className:"c-white rounded-4px mr-4px h-24px w-42px item-center justify-center",style:{background:"#21CA9F",border:"1px solid #6BFF98",display:"inline-flex"}},"\u516C\u5F00"),Be.createElement("span",{className:Ae()("text-16px font-medium",gi.TitleDom)},zr==null?void 0:zr.name)),Be.createElement("div",{className:"c-grey-333 font-medium"},zr==null?void 0:zr.creator),Be.createElement("div",{className:"c-grey-333"},"\u6210\u5458\uFF1A",zr==null?void 0:zr.course_members_count),Be.createElement("div",{className:"c-grey-333 flex item-center justify-between"},Be.createElement("div",null,"\u4F5C\u4E1A\uFF1A",zr==null?void 0:zr.tasks_count),zr!=null&&zr.is_end?Be.createElement("div",{style:{color:"#5F6A95"}},"\u5DF2\u7ED3\u675F"):Be.createElement("div",{style:{color:"#37AD83"}},"\u8FDB\u884C\u4E2D"))))},wa=Object.defineProperty,Ta=Object.getOwnPropertySymbols,ua=Object.prototype.hasOwnProperty,qa=Object.prototype.propertyIsEnumerable,zi=(zr,Ir,Vr)=>Ir in zr?wa(zr,Ir,{enumerable:!0,configurable:!0,writable:!0,value:Vr}):zr[Ir]=Vr,Fa=(zr,Ir)=>{for(var Vr in Ir||(Ir={}))ua.call(Ir,Vr)&&zi(zr,Vr,Ir[Vr]);if(Ta)for(var Vr of Ta(Ir))qa.call(Ir,Vr)&&zi(zr,Vr,Ir[Vr]);return zr},Yi=({DataProps:zr=[],selectValue:Ir,onChange:Vr,className:Na,style:ka={},extra:Ai,classNameItem:va,styleItem:Ri={},barHidden:pi})=>{const[xo,lo]=(0,Be.useState)();return(0,Be.useEffect)(()=>{lo(Array.isArray(Ir)?Ir:[Ir])},[Ir]),Be.createElement("div",{className:Ae()("flex px-20px py-10px gap-40px",Na),style:Fa({borderBottom:"1px solid #D3F0FF"},ka)},zr==null?void 0:zr.map(Bi=>Be.createElement("div",{key:Bi==null?void 0:Bi.id,className:Ae()("flex item-center justify-center current c-grey-333 text-16 relative",va,Bi==null?void 0:Bi.className),style:Fa(Fa({color:xo!=null&&xo.includes(Bi==null?void 0:Bi.id)?"#1890FF":"",minWidth:88},Ri),(Bi==null?void 0:Bi.style)||{}),onClick:ho=>{Vr==null||Vr({domEvent:ho,item:Bi}),Bi!=null&&Bi.link&&Bn.history.push(Bi==null?void 0:Bi.link)}},Bi==null?void 0:Bi.name,!pi&&(xo==null?void 0:xo.includes(Bi==null?void 0:Bi.id))&&Be.createElement("div",{className:"absolute w-full h-2px",style:{background:"#1890FF",bottom:"-10px",left:0}}))),Be.createElement("div",{className:"ml-auto"},Ai))},Zr=Object.defineProperty,oo=Object.defineProperties,_s=Object.getOwnPropertyDescriptors,Uo=Object.getOwnPropertySymbols,Xi=Object.prototype.hasOwnProperty,Ti=Object.prototype.propertyIsEnumerable,Jo=(zr,Ir,Vr)=>Ir in zr?Zr(zr,Ir,{enumerable:!0,configurable:!0,writable:!0,value:Vr}):zr[Ir]=Vr,Ro=(zr,Ir)=>{for(var Vr in Ir||(Ir={}))Xi.call(Ir,Vr)&&Jo(zr,Vr,Ir[Vr]);if(Uo)for(var Vr of Uo(Ir))Ti.call(Ir,Vr)&&Jo(zr,Vr,Ir[Vr]);return zr},Lo=(zr,Ir)=>oo(zr,_s(Ir)),Bs=({value:zr,onChange:Ir,onInputChange:Vr,className:Na,style:ka={},InputProps:Ai})=>{const[va,Ri]=(0,Be.useState)(zr);return Be.createElement("div",{className:Ae()("flex item-center rounded-full px-10px py-2px",Na),style:Ro({background:"linear-gradient( #E4F6FF 0%, #EAF3FF 100%)",border:"1px solid #fff",boxShadow:"inset 0px 1px 3px 0px rgba(133,188,255,0.5)"},ka)},Be.createElement(De.default,Lo(Ro({bordered:!1},Ai),{onChange:pi=>{Ri(pi.target.value),Vr==null||Vr(encodeURIComponent(pi.target.value))},onPressEnter:pi=>{Ir==null||Ir({domEvent:pi,item:{value:va}})}})),Be.createElement("img",{className:"h-22px current",src:Ie(25365),height:22,onClick:pi=>{Ir==null||Ir({domEvent:pi,item:{value:va}})}}))}},29152:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return He}});var Be=Ie(59301);function He(Fe,Ce){const _e=(0,Be.useRef)();(0,Be.useEffect)(()=>{_e.current=Fe}),(0,Be.useEffect)(()=>{function Pe(){_e.current()}if(Ce!==null){let ge=setInterval(Pe,Ce);return()=>clearInterval(ge)}},[Ce])}},1536:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Q8:function(){return rt},d0:function(){return ut},w6:function(){return lt}});var Be=Ie(59301),He=Ie(5083),Fe=Ie(57809),Ce=Ie(8591),_e=Ie(43418),Pe=Ie(5112),ge=Ie(95237),Ae=Ie(43604),be=Ie(6848),we=Ie(24905),pe=Ie(3113),ye=Ie(66649),xe=Ie.n(ye),ce=Ie(16624),te=Ie(64866),ne=Ie(89392),le=Ie.n(ne),oe=Ie(22566),de=Ie(1051),he=Ie(90115),ie=Ie(21837),ue=Ie(91723),ve=Ie(25920),Se=Ie(27350),De=Ie(55159),Re=Ie(59301),Ne=Object.defineProperty,ze=Object.defineProperties,Ge=Object.getOwnPropertyDescriptors,Xe=Object.getOwnPropertySymbols,Qe=Object.prototype.hasOwnProperty,nt=Object.prototype.propertyIsEnumerable,$e=(ht,Ut,Kt)=>Ut in ht?Ne(ht,Ut,{enumerable:!0,configurable:!0,writable:!0,value:Kt}):ht[Ut]=Kt,qe=(ht,Ut)=>{for(var Kt in Ut||(Ut={}))Qe.call(Ut,Kt)&&$e(ht,Kt,Ut[Kt]);if(Xe)for(var Kt of Xe(Ut))nt.call(Ut,Kt)&&$e(ht,Kt,Ut[Kt]);return ht},ot=(ht,Ut)=>ze(ht,Ge(Ut)),at=(ht,Ut,Kt)=>new Promise((qt,vn)=>{var Ot=On=>{try{an(Kt.next(On))}catch(Rn){vn(Rn)}},rn=On=>{try{an(Kt.throw(On))}catch(Rn){vn(Rn)}},an=On=>On.done?qt(On.value):Promise.resolve(On.value).then(Ot,rn);an((Kt=Kt.apply(ht,Ut)).next())});function lt(ht,Ut){const Kt=[];for(let qt=ht;qt{const qt=htxe()(Ut).endOf("day"),Ot=ht{const Kt=parseInt(xe()(ht).format("HH")),qt=parseInt(xe()().format("HH")),vn=parseInt(xe()().format("mm"));if(!ht)return{disabledHours:()=>lt(0,qt),disabledMinutes:()=>lt(0,vn)};if(Ut){const Ot=parseInt(xe()(Ut).format("HH")),rn=parseInt(xe()(Ut).format("mm"));return xe()(ht).isSame(xe()(Ut),"day")?{disabledHours:()=>lt(0,Ot),disabledMinutes:()=>Kt<=Ot?lt(0,rn):[]}:void 0}if(xe()(ht).isSame(xe()(),"day"))return{disabledHours:()=>lt(0,qt),disabledMinutes:()=>xe()(ht).isSame(xe()(),"hour")&&Kt<=qt?lt(0,vn):[]}},{RangePicker:yt}=He.default,{Option:ft}=Fe.default,dt=({shixunHomeworks:ht,loading:Ut,dispatch:Kt,classroomList:qt,user:vn})=>{var Ot,rn,an,On,Rn,sn,tn,Gt,It;const Et=(0,he.useParams)(),{workSetting:Zt,workList:vt,shixunWorkList:At,headerInfo:Qt,changeData:Ft}=ht,[wt,ln]=(0,Be.useState)(!1),[In,Kn]=(0,Be.useState)(!1);let[Vn,Zn]=(0,Be.useState)([]),[$n,Jt]=(0,Be.useState)([]),[yn,Hn]=(0,Be.useState)({unified_setting:!1,publish_time:"",end_time:"",allow_late:!1,unified_late:!0,late_time:"",late_penalty:0,penalty_type:ie.Q.Percent,challenge_settings:[],work_efficiency:!1,shixun_evaluation:"",answer_open_evaluation:!1,answer_public:!1,score_open:!1,comment_public:!0,total_score:"",eff_score:0,action_analysis:!1,work_end_forbid_evaluate:!1});const[Bn,Er]=(0,Be.useState)({}),[Fr,br]=(0,Be.useState)({});(0,Be.useEffect)(()=>()=>{Zn([])},[]),(0,Be.useEffect)(()=>{ln(!(0,ce.GJ)())},[(0,ce.GJ)()]);const Wr=()=>{Kt({type:"shixunHomeworks/getWorkSetting",payload:qe({},Et)})};(0,Be.useEffect)(()=>{if(!(Zt!=null&&Zt.course_id))return;Object.keys(yn).map(function(vr){yn[vr]=Zt[vr]}),(!yn.allow_late||!yn.unified_late)&&(yn.late_penalty=20,yn.penalty_type=ie.Q.Percent),yn.unified_setting||(yn.unified_late=!1,yn.unified_anonymous_comment=!1,yn.unified_anonymous_appeal=!1),Vn=JSON.parse(JSON.stringify(Zt.group_settings.map(vr=>ot(qe({},vr),{group_name:[vr.group_name]})).filter(vr=>vr.publish_time!==null))),$n=JSON.parse(JSON.stringify(Zt.allow_late_settings.map(vr=>ot(qe({},vr),{group_name:[vr.group_name]})).filter(vr=>vr.late_time!==null))),Hn(qe({},yn));const pr=(0,oe.QE)((Vn==null?void 0:Vn.length)>0?Vn:[]);Zn([...pr]),($n==null?void 0:$n.length)<=0?Jt([{penalty_type:ie.Q.Percent,late_penalty:20}]):Jt([...$n])},[Zt]);const Da=()=>at(void 0,null,function*(){var pr,vr;if(((pr=vn==null?void 0:vn.userInfo)==null?void 0:pr.user_status)===2){(0,ue.Rd)();return}const li=JSON.parse(JSON.stringify(yn));if(li.challenge_settings.filter(hr=>!hr.hide),li.categoryId=Et.categoryId,(vr=li.challenge_settings)!=null&&vr.every(hr=>!hr.checked)){Ce.ZP.warning("\u5173\u5361\u4E0D\u80FD\u5168\u90E8\u8BBE\u7F6E\u4E3A\u53EF\u4E0D\u505A");return}if(console.log(Vn),!yn.unified_setting)Vn=Vn==null?void 0:Vn.map(hr=>{var Tr;if(!hr.publish_time||!hr.end_time)throw Ce.ZP.error("\u8BF7\u628A\u53D1\u5E03\u65F6\u95F4\u586B\u5199\u5B8C\u6574"),new String("\u8BF7\u628A\u53D1\u5E03\u65F6\u95F4\u586B\u5199\u5B8C\u6574");if(!hr.group_name)throw Ce.ZP.error("\u8BF7\u9009\u62E9\u5206\u73ED\u540D\u79F0"),new String("\u8BF7\u9009\u62E9\u5206\u73ED\u540D\u79F0");return hr.group_name=typeof(hr==null?void 0:hr.group_name)=="string"?[hr==null?void 0:hr.group_name]:hr==null?void 0:hr.group_name,hr.group_id=(Tr=Zt.group_settings)==null?void 0:Tr.filter(Rr=>{var fa;return(fa=hr==null?void 0:hr.group_name)==null?void 0:fa.includes(Rr.group_name)}).map(Rr=>Rr.group_id||Rr.id).toString().split(","),hr});else if(!yn.publish_time||!yn.end_time)throw Ce.ZP.error("\u53D1\u5E03\u622A\u6B62\u65F6\u95F4\u4E0D\u80FD\u4E3A\u7A7A"),new String("\u53D1\u5E03\u622A\u6B62\u65F6\u95F4\u4E0D\u80FD\u4E3A\u7A7A");if(li.group_settings=Vn,yn.allow_late)if(yn.unified_late){if(yn.late_penalty===null||yn.late_penalty===void 0||yn.late_penalty<0||yn.late_penalty>100)throw Ce.ZP.error("\u8FDF\u4EA4\u6263\u5206\u586B\u5199\u533A\u95F4\u4E3A0~100"),new String("\u8FDF\u4EA4\u6263\u5206\u586B\u5199\u533A\u95F4\u4E3A0~100");if(!yn.late_time)throw Ce.ZP.error("\u8BF7\u628A\u622A\u6B62\u65F6\u95F4\u586B\u5199\u5B8C\u6574"),new String("\u8BF7\u628A\u622A\u6B62\u65F6\u95F4\u586B\u5199\u5B8C\u6574")}else $n=$n==null?void 0:$n.map(hr=>{var Tr,Rr;if(hr.late_penalty===null||hr.late_penalty===void 0||hr.late_penalty<0||hr.late_penalty>100)throw Ce.ZP.error("\u8FDF\u4EA4\u6263\u5206\u586B\u5199\u533A\u95F4\u4E3A0~100"),new String("\u8FDF\u4EA4\u6263\u5206\u586B\u5199\u533A\u95F4\u4E3A0~100");if(!hr.late_time)throw Ce.ZP.error("\u8BF7\u628A\u622A\u6B62\u65F6\u95F4\u586B\u5199\u5B8C\u6574"),new String("\u8BF7\u628A\u622A\u6B62\u65F6\u95F4\u586B\u5199\u5B8C\u6574");if(!hr.group_name)throw Ce.ZP.error("\u8BF7\u9009\u62E9\u5206\u73ED\u540D\u79F0"),new String("\u8BF7\u9009\u62E9\u5206\u73ED\u540D\u79F0");return hr.group_name=typeof(hr==null?void 0:hr.group_name)=="string"?[hr==null?void 0:hr.group_name]:hr==null?void 0:hr.group_name,hr.group_id=(Rr=(Tr=hr==null?void 0:hr.group_name)==null?void 0:Tr.map(fa=>{var bt,Me;let Le=(Me=(bt=Zt.group_settings)==null?void 0:bt.filter(Te=>(Te==null?void 0:Te.group_name)===fa))==null?void 0:Me[0];return Le==null?void 0:Le.group_id}))==null?void 0:Rr.toString().split(","),hr}),li.allow_late_settings=$n;let zn=yield(0,De.Tr)({homework_common_ids:[parseInt(Et.categoryId)],course_id:Et.coursesId,type:"homework_common"});(zn==null?void 0:zn.student_count)===0?Ya(li):(br(li),Er(zn))}),Ya=pr=>{var vr;if(pr.total_score===null){Ce.ZP.warning("\u603B\u5206\u503C\u4E0D\u80FD\u4E3A\u7A7A");return}if(pr!=null&&pr.work_efficiency&&pr.eff_score===null){Ce.ZP.warning("\u6548\u7387\u5206\u4E0D\u80FD\u4E3A\u7A7A");return}const li=pr.challenge_settings.reduce((Tr,Rr)=>Tr+Number(Rr.challenge_score),0);if((li==null?void 0:li.toFixed(10))!==((vr=pr.total_score-pr.eff_score)==null?void 0:vr.toFixed(10))){Ce.ZP.warning(`\u6548\u7387\u5206\u52A0\u5173\u5361\u4EFB\u52A1\u603B\u5206\u5FC5\u987B\u7B49\u4E8E\u603B\u5206\u503C\uFF1A${pr.total_score}\u5206`);return}const zn={shixun_evaluation:pr.shixun_evaluation,challenge_settings:pr.challenge_settings};let hr=()=>{var Tr;const Rr=()=>at(void 0,null,function*(){Kn(!0),(yield(0,te.ZP)(`/api/homework_commons/${Et.categoryId}/publish_setting.json`,{method:"post",body:qe({},pr)})).status===0&&(Ce.ZP.success("\u66F4\u65B0\u6210\u529F"),Wr(),Kt({type:"shixunHomeworks/getShixunWorkHeadInfo",payload:qe({},Et)})),Kn(!1)});!(0,ne.isEqual)(Ft,zn)&&!((Tr=Qt==null?void 0:Qt.homework_status)!=null&&Tr.includes("\u672A\u53D1\u5E03"))?_e.default.confirm({title:"\u66F4\u65B0\u6210\u7EE9",content:"\u60A8\u6539\u52A8\u4E86\u672C\u6B21\u4F5C\u4E1A\u7684\u5173\u5361\u5F97\u5206\u8BBE\u7F6E\uFF0C\u8FD9\u53EF\u80FD\u5BFC\u81F4\u5DF2\u5B8C\u6210\u4F5C\u4E1A\u7684\u5B66\u751F\u7684\u6210\u7EE9\u4EA7\u751F\u9519\u8BEF\u3002\u70B9\u51FB\u201C\u786E\u5B9A\u201D\u6309\u94AE\u5C06\u4FDD\u5B58\u6700\u65B0\u8BBE\u7F6E\u5E76\u6309\u6700\u65B0\u8BBE\u7F6E\u66F4\u65B0\u5168\u73ED\u6210\u7EE9\u3002",okText:"\u786E\u8BA4",cancelText:"\u53D6\u6D88",onOk:Rr}):Rr()};Zt!=null&&Zt.high_resources_consume&&!(Zt!=null&&Zt.high_resources_consume_permission)?Kt({type:"classroomList/setActionTabs",payload:{key:"\u6388\u6743\u4F7F\u7528",id:Et.coursesId,type:"shixun",type_id:Et.categoryId,name:Zt.homework_name,fn:()=>{hr()}}}):hr()},Ba=(pr,vr,li="group_id")=>{var zn;return vr?vr.find(hr=>hr[li]===pr):(zn=Zt==null?void 0:Zt.group_settings)==null?void 0:zn.find(hr=>hr.group_id[0]===pr)},Ia=(Zt==null?void 0:Zt.allow_late)||(Zt==null?void 0:Zt.anonymous_comment),Ii=pr=>{var vr,li;const zn=Ba(pr,Zt==null?void 0:Zt.allow_late_settings,"id"),hr=Ba(pr,Zt==null?void 0:Zt.anonymous_comment_settings),Tr=Ba(pr);return(Zt==null?void 0:Zt.allow_late)&&zn&&xe()(zn==null?void 0:zn.late_time)<=xe()()||(Zt==null?void 0:Zt.anonymous_comment)&&hr&&(hr==null?void 0:hr.evaluation_start)!==null||((li=(xe()(Tr==null?void 0:Tr.end_time)<=xe()()&&((vr=Zt==null?void 0:Zt.allow_late_settings)==null?void 0:vr.filter(Rr=>Rr.group_id.includes(pr))))[0])==null?void 0:li.late_time)!=null},wi=(0,Be.useMemo)(()=>(Zt==null?void 0:Zt.allow_late)||(Zt==null?void 0:Zt.all_group_late),[Zt,Qt]),jr=Zt==null?void 0:Zt.anonymous_comment,Ka=pr=>{if(!pr)return!1;const vr=Ba(pr,Zt==null?void 0:Zt.anonymous_comment_settings);return(Zt==null?void 0:Zt.anonymous_comment)&&vr&&(vr==null?void 0:vr.evaluation_start)!==null},oi=(pr,vr)=>{var li,zn,hr;Kt({type:"classroomList/setActionTabs",payload:{key:"\u5206\u73ED\u53D1\u5E03-\u53D1\u5E03\u89C4\u5219\u62C6\u5206",data:pr,index:vr,rangePickerDisabled:wt||(xe()()<=xe()((zn=Ba((li=pr==null?void 0:pr.group_id)==null?void 0:li[0]))==null?void 0:zn.publish_time)?!1:[!0,Ii((hr=pr==null?void 0:pr.group_id)==null?void 0:hr[0])]),disabledDate:Zt==null?void 0:Zt.course_end_date}})};return Re.createElement("section",{className:de.Z.form},Re.createElement("div",{className:de.Z.title},"\u4F5C\u4E1A\u53D1\u5E03",Re.createElement("span",{className:"c-grey-666 font14",style:{fontWeight:400}},"\uFF08\u4F5C\u4E1A\u4E00\u65E6\u53D1\u5E03\u540E\u4E0D\u53EF\u53D8\u66F4\u8BD5\u9898\u53D1\u5E03\u6A21\u5F0F\uFF09")),Re.createElement("div",null,Re.createElement("div",{style:{background:"#F6F7F9",padding:"13px 30px",display:"flex",alignItems:"center"}},Re.createElement(Pe.ZP.Group,{disabled:wt||!((Ot=Qt==null?void 0:Qt.homework_status)!=null&&Ot.includes("\u672A\u53D1\u5E03"))||(0,ce.Rm)()&&!((rn=qt.AssistantObject.practice)!=null&&rn.can_publish),value:yn.unified_setting,onChange:pr=>{var vr;if(!((vr=Qt==null?void 0:Qt.homework_status)!=null&&vr.includes("\u672A\u53D1\u5E03"))){Ce.ZP.error("\u5DF2\u53D1\u5E03\uFF0C\u4E0D\u80FD\u518D\u4FEE\u6539\u7EDF\u4E00\u8BBE\u7F6E");return}if(yn.unified_setting=!yn.unified_setting,yn.unified_setting||(yn.unified_late=!1,Jt([{late_penalty:5}])),Hn(Object.assign({},yn)),yn.unified_setting===!1&&Vn==""){Zn(Vn.concat({}));return}yn.unified_setting&&(Zn([]),Jt([{late_penalty:5}]))}},Re.createElement(Pe.ZP,{value:!0,disabled:wt||!(Zt!=null&&Zt.manage_all_group),style:{marginRight:"50px"}},"\u7EDF\u4E00\u53D1\u5E03"),Re.createElement(Pe.ZP,{disabled:wt||!((an=Zt==null?void 0:Zt.group_settings)!=null&&an.length),value:!1},"\u5206\u73ED\u53D1\u5E03")),((On=Zt==null?void 0:Zt.group_settings)==null?void 0:On.length)===0&&Re.createElement("div",{style:{color:"rgba(0, 0, 0, 0.25)",height:"22px"}},"\uFF08\u672C\u8BFE\u5802\u65E0\u5206\u73ED\uFF0C\u4EC5\u652F\u6301\u9009\u62E9\u201C\u7EDF\u4E00\u53D1\u5E03\u201C\uFF09")),yn.unified_setting&&Re.createElement("div",{style:{display:"flex",color:"#666666",background:"#F6F7F9",padding:"5px 30px",height:"50px",marginTop:"1px"}},Re.createElement(ge.Z,{align:"middle"},Re.createElement(Ae.Z,{style:{marginLeft:"23px"}},"\u53D1\u5E03\u65F6\u95F4"),Re.createElement(Ae.Z,{className:"ml10"},Re.createElement(He.default,{size:"large",disabled:wt||!((Rn=Qt==null?void 0:Qt.homework_status)!=null&&Rn.includes("\u672A\u53D1\u5E03")||(sn=Qt==null?void 0:Qt.homework_status)!=null&&sn.includes("\u672A\u5F00\u59CB"))||(0,ce.Rm)()&&!((tn=qt.AssistantObject.practice)!=null&&tn.can_publish),style:{width:170},placeholder:"\u8BF7\u9009\u62E9\u53D1\u5E03\u65F6\u95F4",showTime:{format:"HH:mm"},allowClear:!1,format:"YYYY-MM-DD HH:mm",disabledDate:pr=>rt(pr,Zt==null?void 0:Zt.course_end_date),disabledTime:pr=>ut(pr),value:yn.publish_time?xe()(yn.publish_time):"",onChange:(pr,vr)=>{yn.publish_time=vr,(yn.end_time==""||!yn.end_time)&&yn.unified_setting&&(yn.end_time=xe()(pr).add(7,"days").format("YYYY-MM-DD HH:mm:ss")),Hn(Object.assign({},yn))}}))),Re.createElement(ge.Z,{align:"middle",className:"pl30"},Re.createElement(Ae.Z,null,"\u622A\u6B62\u65F6\u95F4"),Re.createElement(Ae.Z,{className:"ml10"},Re.createElement(He.default,{size:"large",style:{width:170},allowClear:!1,placeholder:"\u8BF7\u9009\u62E9\u622A\u6B62\u65F6\u95F4",showTime:{format:"HH:mm",defaultValue:xe()((0,oe.U6)(),"HH:mm")},format:"YYYY-MM-DD HH:mm",disabled:(Zt==null?void 0:Zt.allow_late)&&(Zt==null?void 0:Zt.homework_status.includes("\u5DF2\u622A\u6B62"))||wt||(Zt==null?void 0:Zt.allow_late)&&xe()()>=xe()(Zt==null?void 0:Zt.end_time)||(0,ce.Rm)()&&!((Gt=qt.AssistantObject.practice)!=null&&Gt.can_publish),disabledDate:pr=>rt(pr,Zt==null?void 0:Zt.course_end_date,yn.publish_time),disabledTime:pr=>ut(pr,yn.publish_time),value:yn.end_time?xe()(yn.end_time):"",onChange:(pr,vr)=>{yn.end_time=vr,Hn(Object.assign({},yn))}})))),!yn.unified_setting&&(Vn==null?void 0:Vn.length)>0&&Re.createElement(ge.Z,{style:{display:"flex",color:"#666666",background:"#F6F7F9",padding:"5px 30px",marginTop:"1px"}},Vn&&Vn.map(function(pr,vr){var li,zn,hr,Tr,Rr,fa,bt;return Re.createElement(Ae.Z,{span:24,key:vr},Re.createElement(ge.Z,{gutter:[8,16],style:{display:"flex",alignItems:"center",marginBottom:vr==(Vn==null?void 0:Vn.length)-1?"0px":"10px"}},Re.createElement("div",{style:{minWidth:85,marginRight:"15px",textAlign:"right"}},"\u53D1\u5E03\u89C4\u5219",vr+1),Re.createElement(Fe.default,{disabled:wt||((li=Qt==null?void 0:Qt.homework_status)!=null&&li.includes("\u672A\u53D1\u5E03")&&pr.id||xe()(){var Le;if((0,ce.Rm)()&&!((Le=qt.AssistantObject.practice)!=null&&Le.can_publish)){Ce.ZP.warning("\u60A8\u672A\u83B7\u53D6\u6B64\u6743\u9650\uFF0C\u9700\u5411\u8BFE\u5802\u7BA1\u7406\u5458\u7533\u8BF7\u6743\u9650\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD");return}Vn[vr].group_name=Me,Vn[vr].group_id=pr.group_id;const Te=(0,ne.flattenDeep)(Vn.map(Ye=>Ye.group_name)),Ue=$n.map(Ye=>{let xt=(Ye==null?void 0:Ye.group_name)||[];return ot(qe({},Ye),{group_name:(0,ne.remove)(xt,Pt=>Te.includes(Pt))})});Jt(Ue),Zn(Vn.slice())},maxTagCount:4,maxTagPlaceholder:Me=>Re.createElement("div",{style:{cursor:"pointer"},onClick:()=>oi(pr,vr)},"+",Me==null?void 0:Me.length)},Zt.group_settings&&Zt.group_settings.map(function(Me){if(!Vn.map(Te=>Te.group_name).flat().includes(Me.group_name))return Re.createElement(ft,{value:Me.group_name,key:Me.id},Me.group_name)})),Re.createElement("div",{className:"ml20"},Re.createElement(yt,{size:"large",ranges:{\u6B64\u523B:[pr.publish_time?xe()(pr.publish_time):xe()(),xe()()]},allowClear:!1,disabled:wt||(xe()()<=xe()((Tr=Ba((hr=pr==null?void 0:pr.group_id)==null?void 0:hr[0]))==null?void 0:Tr.publish_time)?!1:[!0,Ii((Rr=pr==null?void 0:pr.group_id)==null?void 0:Rr[0])]),style:{width:605},placeholder:["\u53D1\u5E03\u65F6\u95F4\uFF08\u5B66\u751F\u6536\u5230\u4F5C\u4E1A\u65F6\u95F4\uFF09","\u622A\u6B62\u65F6\u95F4\uFF08\u5B66\u751F\u201C\u6309\u65F6\u201D\u63D0\u4EA4\u4F5C\u54C1\u65F6\u95F4\u622A\u70B9\uFF09"],disabledDate:Me=>rt(Me,Zt==null?void 0:Zt.course_end_date),disabledTime:Me=>ut(Me),showTime:{showNow:!0,format:"HH:mm",defaultValue:[xe()((0,oe.U6)(),"HH:mm"),xe()((0,oe.U6)(),"HH:mm")]},format:"YYYY-MM-DD HH:mm",value:pr.publish_time&&[xe()(pr.publish_time),pr.end_time?xe()(pr.end_time):void 0],onChange:(Me,Le)=>{var Te;if((0,ce.Rm)()&&!((Te=qt.AssistantObject.practice)!=null&&Te.can_publish)){Ce.ZP.warning("\u60A8\u672A\u83B7\u53D6\u6B64\u6743\u9650\uFF0C\u9700\u5411\u8BFE\u5802\u7BA1\u7406\u5458\u7533\u8BF7\u6743\u9650\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD");return}Vn[vr].publish_time=Le[0],!pr.end_time&&Le[0]?Vn[vr].end_time=xe()(Le[0]).add(7,"days"):Vn[vr].end_time=Le[1],Zn([...Vn])},onCalendarChange:(Me,Le,Te)=>{if(Le!=null&&Le[0]&&!Le[1]){const Ue=xe()(Le[0]).add(7,"days");Vn[vr].publish_time=Le[0],Vn[vr].end_time=Ue,Zn([...Vn])}}})),!wt&&Re.createElement("div",{style:{display:"flex",width:"50px"}},((fa=pr==null?void 0:pr.group_id)==null?void 0:fa.length)>1&&Re.createElement(be.Z,{title:"\u89C4\u5219\u62C6\u5206"},Re.createElement("i",{className:"iconfont icon-chaifen ml10",style:{cursor:"pointer",color:"#3061d0"},onClick:()=>oi(pr,vr)})),(Vn==null?void 0:Vn.length)<((bt=Zt==null?void 0:Zt.group_settings)==null?void 0:bt.length)&&Re.createElement("i",{className:"iconfont icon-zengjia1 ml10 mr10",style:{cursor:"pointer",color:"#00B187"},onClick:()=>{var Me;if((0,ce.Rm)()&&!((Me=qt.AssistantObject.practice)!=null&&Me.can_publish)){Ce.ZP.warning("\u60A8\u672A\u83B7\u53D6\u6B64\u6743\u9650\uFF0C\u9700\u5411\u8BFE\u5802\u7BA1\u7406\u5458\u7533\u8BF7\u6743\u9650\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD");return}Zn(Vn.concat({}))}}),((pr==null?void 0:pr.publish_time)&&xe()(){const Me=(0,ne.cloneDeep)($n);Me.forEach((Le,Te)=>{Le.group_name&&(Le.group_name=Le.group_name.filter(Ue=>{var Ye;return!((Ye=Vn[vr].group_name)!=null&&Ye.includes(Ue))}))}),Vn=Vn.filter((Le,Te)=>vr!==Te),Jt(Me),Zn(Vn.slice()),setTimeout(()=>Zn(Vn.slice()),10)}}))))}))),Re.createElement(ge.Z,null,Re.createElement(Ae.Z,null,Re.createElement("div",{className:de.Z.title,style:{marginTop:"30px"}},"\u8865\u4EA4\u8BBE\u7F6E",Re.createElement("span",{className:"c-grey-666 font14",style:{fontWeight:400}},"\uFF08\u53EF\u5BF9\u5728\u4F5C\u4E1A\u53D1\u5E03\u65F6\u95F4\u8303\u56F4\u5185\u672A\u5B8C\u6210\u4F5C\u4E1A\u7684\u5B66\u751F\uFF0C\u5EF6\u957F\u65F6\u95F4\u8FDB\u884C\u8865\u4EA4\uFF09"))),Re.createElement(Ae.Z,{span:24,style:{background:"#F6F7F9",padding:"13px 30px",display:"flex",alignItems:"center"}},Re.createElement(we.default,{checked:yn.allow_late,disabled:wt||wi,onChange:pr=>{var vr;if((0,ce.Rm)()&&!((vr=qt.AssistantObject.practice)!=null&&vr.can_late)){Ce.ZP.warning("\u60A8\u672A\u83B7\u53D6\u6B64\u6743\u9650\uFF0C\u9700\u5411\u8BFE\u5802\u7BA1\u7406\u5458\u7533\u8BF7\u6743\u9650\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD");return}pr.target.checked&&_e.default.warning({title:"\u5F00\u542F\u8865\u4EA4\u63D0\u793A",centered:!0,width:480,content:Re.createElement("div",{style:{padding:10,background:"#f5f6f9"}},Re.createElement("div",null,"1.\u5F00\u542F\u8865\u4EA4\u540E\u4E0D\u53EF\u5173\u95ED\uFF0C\u8865\u4EA4\u65B9\u5F0F\u63D0\u4EA4\u4FDD\u5B58\u540E\u4E0D\u53EF\u4FEE\u6539\uFF1B"),Re.createElement("div",null,"2.\u8865\u4EA4\u622A\u6B62\u65F6\u95F4\u5FC5\u987B\u665A\u4E8E\u4F5C\u4E1A\u622A\u6B62\u65F6\u95F4\uFF1B"),Re.createElement("div",null,"3.\u73ED\u7EA7\u9636\u6BB5\u8FDB\u5165\u201C\u8865\u4EA4\u4E2D\u201D\u5219\u4E0D\u53EF\u53D8\u66F4\u4F5C\u4E1A\u622A\u6B62\u65F6\u95F4\u3002"))}),yn.allow_late=!yn.allow_late,$n==""&&Jt([{late_penalty:5}]),Hn(Object.assign({},yn))}},Re.createElement("strong",null,"\u5F00\u542F\u8865\u4EA4")))),(yn==null?void 0:yn.allow_late)&&Re.createElement("div",{style:{background:"#F6F7F9",padding:"10px 30px",marginTop:"1px",color:"#666666"}},Re.createElement("div",{style:{display:"flex"}},Re.createElement("div",{style:{width:"110px",textAlign:"right"}},"\u8865\u4EA4\u65B9\u5F0F"),Re.createElement(Pe.ZP.Group,{style:{marginLeft:"20px"},disabled:wt||(Zt==null?void 0:Zt.anonymous_comment)||(Zt==null?void 0:Zt.allow_late),value:yn.unified_late,onChange:pr=>{var vr;if((0,ce.Rm)()&&!((vr=qt.AssistantObject.practice)!=null&&vr.can_late)){Ce.ZP.warning("\u60A8\u672A\u83B7\u53D6\u6B64\u6743\u9650\uFF0C\u9700\u5411\u8BFE\u5802\u7BA1\u7406\u5458\u7533\u8BF7\u6743\u9650\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD");return}yn.unified_late=pr.target.value,$n==""&&!pr.target.value&&Jt([{penalty_type:ie.Q.Percent,late_penalty:20}]),Hn(qe({},yn))}},(yn==null?void 0:yn.unified_setting)&&Re.createElement(Pe.ZP,{value:!0,disabled:!(Zt!=null&&Zt.manage_all_group),style:{marginRight:"50px"}},"\u7EDF\u4E00\u8865\u4EA4"),((It=Zt==null?void 0:Zt.group_settings)==null?void 0:It.length)>0&&Re.createElement(Pe.ZP,{value:!1},"\u5206\u73ED\u8865\u4EA4"))),yn!=null&&yn.unified_late?Re.createElement(Re.Fragment,null,Re.createElement(ge.Z,{align:"middle",style:{marginTop:"10px"}},Re.createElement(Ae.Z,{style:{width:"110px",textAlign:"right"}},"\u8865\u4EA4\u6263\u5206"),Re.createElement(Ae.Z,{className:"ml20"},Re.createElement(ie.Z,{disabled:wt||jr,value:{type:yn.penalty_type,inputValue:yn.late_penalty},onChange:pr=>{var vr;if((0,ce.Rm)()&&!((vr=qt.AssistantObject.practice)!=null&&vr.can_late)){Ce.ZP.warning("\u60A8\u672A\u83B7\u53D6\u6B64\u6743\u9650\uFF0C\u9700\u5411\u7BA1\u7406\u5458\u7533\u8BF7\u6743\u9650\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD");return}Hn(ot(qe({},yn),{late_penalty:pr.inputValue,penalty_type:pr.type}))}})),Re.createElement(Ae.Z,{flex:"1",className:"ml5"},Re.createElement("span",{className:"c-grey-c ml10"},yn.penalty_type===ie.Q.Number?"(\u8865\u4EA4\u65F6\u6309\u7167\u5B66\u751F\u603B\u6210\u7EE9\u6263\u5206)":"(\u5B66\u751F\u6700\u7EC8\u5F97\u5206=\u8865\u4EA4\u524D\u5F97\u5206+\u8865\u4EA4\u9636\u6BB5\u589E\u52A0\u7684\u5206\u503C*\uFF08100%-\u767E\u5206\u6BD4%\uFF09)"))),Re.createElement(ge.Z,{align:"middle",style:{marginTop:"15px"}},Re.createElement(Ae.Z,{style:{width:"110px",textAlign:"right"}},"\u8865\u4EA4\u622A\u6B62\u65F6\u95F4"),Re.createElement(Ae.Z,{className:"ml20"},Re.createElement(He.default,{size:"large",allowClear:!1,style:{width:170},placeholder:"\u8BF7\u9009\u62E9\u622A\u6B62\u65F6\u95F4",showTime:{format:"HH:mm",defaultValue:xe()((0,oe.U6)(),"HH:mm")},format:"YYYY-MM-DD HH:mm",disabled:wt||jr,value:yn.late_time?xe()(yn.late_time):"",disabledDate:pr=>rt(pr,Zt==null?void 0:Zt.course_end_date),onChange:(pr,vr)=>{var li;if((0,ce.Rm)()&&!((li=qt.AssistantObject.practice)!=null&&li.can_late)){Ce.ZP.warning("\u60A8\u672A\u83B7\u53D6\u6B64\u6743\u9650\uFF0C\u9700\u5411\u8BFE\u5802\u7BA1\u7406\u5458\u7533\u8BF7\u6743\u9650\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD");return}yn.late_time=vr,Hn(Object.assign({},yn))}})))):$n.map(function(pr,vr){var li;return Re.createElement(Ae.Z,{span:24,key:vr},Re.createElement(ge.Z,{style:{display:"flex",alignItems:"center",marginTop:"10px"}},Re.createElement("div",{style:{width:"85px",marginLeft:"27px",textAlign:"right"}},"\u8865\u4EA4\u89C4\u5219",vr+1),Re.createElement(Fe.default,{disabled:wt||!((li=Qt==null?void 0:Qt.homework_status)!=null&&li.includes("\u672A\u53D1\u5E03"))&&pr.id||(Zt==null?void 0:Zt.anonymous_comment),mode:"multiple",className:de.Z.multiple_select,style:{width:"212px",marginLeft:"18px"},value:typeof pr.group_name=="string"?[pr.group_name]:pr.group_name,placeholder:"\u8BF7\u9009\u62E9\u5206\u73ED\u540D\u79F0",onChange:zn=>{var hr;if((0,ce.Rm)()&&!((hr=qt.AssistantObject.practice)!=null&&hr.can_late)){Ce.ZP.warning("\u60A8\u672A\u83B7\u53D6\u6B64\u6743\u9650\uFF0C\u9700\u5411\u8BFE\u5802\u7BA1\u7406\u5458\u7533\u8BF7\u6743\u9650\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD");return}$n[vr].group_name=zn,$n[vr].group_id=pr.group_id,Jt($n.slice())}},Zt.group_settings&&Zt.group_settings.map(function(zn){const hr=$n.map(Rr=>Rr.group_name).flat(),Tr=Vn.map(Rr=>Rr.group_name).flat();if(yn!=null&&yn.unified_setting){if(!hr.includes(zn.group_name))return Re.createElement(ft,{value:zn.group_name,key:zn.id},zn.group_name)}else if(Tr.includes(zn.group_name)&&!hr.includes(zn.group_name))return Re.createElement(ft,{value:zn.group_name,key:zn.id},zn.group_name)})),Re.createElement("div",{className:"ml20 mr10"},"\u8865\u4EA4\u6263\u5206"),Re.createElement(ie.Z,{disabled:wt||Ka(pr.id),value:{type:pr.penalty_type,inputValue:pr.late_penalty},onChange:zn=>{var hr;if((0,ce.Rm)()&&!((hr=qt.AssistantObject.practice)!=null&&hr.can_late)){Ce.ZP.warning("\u60A8\u672A\u83B7\u53D6\u6B64\u6743\u9650\uFF0C\u9700\u5411\u8BFE\u5802\u7BA1\u7406\u5458\u7533\u8BF7\u6743\u9650\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD");return}$n[vr].late_penalty=zn.inputValue,$n[vr].penalty_type=zn.type,Jt([...$n])}}),Re.createElement("div",{className:"ml20 mr10"},"\u8865\u4EA4\u622A\u6B62\u65F6\u95F4"),Re.createElement(He.default,{size:"large",disabled:wt||Ka(pr.id),style:{width:225},showTime:{format:"HH:mm",defaultValue:xe()((0,oe.U6)(),"HH:mm")},placeholder:"\u8BF7\u9009\u62E9\u622A\u6B62\u65F6\u95F4",disabledDate:zn=>rt(zn,Zt==null?void 0:Zt.course_end_date),format:"YYYY-MM-DD HH:mm",value:pr!=null&&pr.late_time?xe()(pr.late_time):void 0,onChange:(zn,hr)=>{var Tr;if((0,ce.Rm)()&&!((Tr=qt.AssistantObject.practice)!=null&&Tr.can_late)){Ce.ZP.warning("\u60A8\u672A\u83B7\u53D6\u6B64\u6743\u9650\uFF0C\u9700\u5411\u8BFE\u5802\u7BA1\u7406\u5458\u7533\u8BF7\u6743\u9650\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD");return}$n[vr].late_time=hr,Jt([...$n])}}),!wt&&Re.createElement("div",{style:{display:"flex",width:"50px"}},Re.createElement("i",{className:"iconfont icon-zengjia1 ml10 mr10",style:{cursor:"pointer",color:"#00B187"},onClick:()=>{var zn;if((0,ce.Rm)()&&!((zn=qt.AssistantObject.practice)!=null&&zn.can_late)){Ce.ZP.warning("\u60A8\u672A\u83B7\u53D6\u6B64\u6743\u9650\uFF0C\u9700\u5411\u8BFE\u5802\u7BA1\u7406\u5458\u7533\u8BF7\u6743\u9650\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD");return}Jt($n.concat({penalty_type:ie.Q.Percent,late_penalty:20}))}}),vr>0&&!pr.id&&Re.createElement("i",{className:"iconfont icon-shanjian1",style:{cursor:"pointer",color:"#E30000"},onClick:()=>{var zn;if((0,ce.Rm)()&&!((zn=qt.AssistantObject.practice)!=null&&zn.can_late)){Ce.ZP.warning("\u60A8\u672A\u83B7\u53D6\u6B64\u6743\u9650\uFF0C\u9700\u5411\u8BFE\u5802\u7BA1\u7406\u5458\u7533\u8BF7\u6743\u9650\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD");return}$n=$n.filter((hr,Tr)=>vr!==Tr),Jt($n.slice()),setTimeout(()=>Jt($n.slice()),10)}}))))})),!wt&&Re.createElement(Re.Fragment,null,Re.createElement(pe.ZP,{type:"primary",size:"large",loading:In,style:{width:"138px",marginTop:"30px"},onClick:()=>Da()},"\u4FDD\u5B58")),Re.createElement(ve.Z,{onConfirm:(pr,vr)=>{Vn.splice(pr,0,...vr),Vn.splice(pr+vr.length,1);const li=(0,oe.QE)([...Vn]);Zn([...li])}}),Re.createElement(Se.Z,{resdata:Bn,type:"shixun",okloading:In,oktext:(Bn==null?void 0:Bn.can_copy_num)===0?"\u786E\u5B9A":"\u4E00\u952E\u590D\u5236\u5E76\u66FF\u6362",onok:pr=>at(void 0,null,function*(){Kn(!0);let vr=yield(0,te.ZP)(`/api/courses/${Et.coursesId}/batch_copy_shixuns.json`,{method:"post",body:{type:"homework_common",ids:[parseInt(Et.categoryId)]}});Kn(!1),(vr==null?void 0:vr.status)===0&&Ya(Fr)})}))};Dt.ZP=(0,he.connect)(({shixunHomeworks:ht,classroomList:Ut,loading:Kt,user:qt})=>({shixunHomeworks:ht,classroomList:Ut,loading:Kt.effects,user:qt}))(dt)},83636:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return we}});var Be=Ie(59301),He=Ie(92832),Fe=Ie(24905),Ce=Ie(95237),_e={leftdiv:"leftdiv___aBzsX",listClass:"listClass___bxIEW",spantitle:"spantitle___v_Vc4",rightdiv:"rightdiv___xWu4M"},Pe="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAbVJREFUOE+Nk79rFUEUhb+zE4OFwUD+CyGKKQQbSaMikQQ7C1tBBIsUQaJvl2Fn/cWDpAiIYJsi7YOIaCUWFoKKRhG0sbEzEImFGnev7G6yyXsxeU5159yZb87l3hG9q2WLiBO79FIwXpLp0s6cwITnQCMWrGDM43jdBckZQ0wTMdrong2R2Bxm0/98sZ8ozdcOEm5hjOC41u9Olc9ZQKySclOVkNhljCmCzjeAJM/4FbW5p+8k5tlggTtarfKxLSM6pHq4BTiL0SboaAOIi284jeP1nti+ApMEvdoEvEPMkOpJDZi1IwzwgqDh/wSsYZwk08ca4O0Qua3zW8OV5crmHg6u22EGbQ2nIbx+1IC6rrK+cYJW9gXEVrbxGUEj5bltQGJvgBapHu0LSGwCyEh1vBsQWwd4TNCDPg6uAOcImuoFlL1dJ9WNPg5uYwwRVM3MzhJmKIpjZK6e9bj4jNNpvL4QFx9wuoDXJ1r5IlH0llTtXgcXwa4SolObnYnwKnbFcfEcdJ+gpW6AtzFynuIop/Fn053u4CA5yzjO4FV9tu0Syl2S38WiSWBgD8AfoEPQ7Fb+LwIiyhxWwe2KAAAAAElFTkSuQmCC",ge=Ie(21692),Ae=(pe,ye,xe)=>new Promise((ce,te)=>{var ne=de=>{try{oe(xe.next(de))}catch(he){te(he)}},le=de=>{try{oe(xe.throw(de))}catch(he){te(he)}},oe=de=>de.done?ce(de.value):Promise.resolve(de.value).then(ne,le);oe((xe=xe.apply(pe,ye)).next())}),we=({data:pe,value:ye=[],handleChangePage:xe,setSelectedRowKeys:ce,selectedRowKeys:te,onChange:ne=()=>{}})=>{const[le,oe]=(0,Be.useState)([]),[de,he]=(0,Be.useState)([]),[ie,ue]=(0,Be.useState)([]);let[ve,Se]=(0,Be.useState)(1),[De,Re]=(0,Be.useState)();return(0,Be.useEffect)(()=>{oe(pe),he([]),ue([])},[pe]),(0,Be.useEffect)(()=>{ce&&(he(te),ue(te))},[te]),Be.createElement("div",{style:{display:"flex",justifyContent:"space-between"}},Be.createElement("div",{className:_e.leftdiv},Be.createElement(He.default.Search,{size:"middle",onChange:Ne=>Ae(void 0,null,function*(){oe(pe.filter(ze=>{var Ge;return(Ge=ze==null?void 0:ze.name)==null?void 0:Ge.includes(Ne.target.value)}))}),placeholder:"\u53EF\u8F93\u5165\u73ED\u7EA7\u540D\u79F0\u67E5\u8BE2"}),le.length===0&&Be.createElement(ge.Z,{styles:{margin:"70px auto"},customText:"\u6682\u65E0\u5206\u73ED"}),Be.createElement("div",{style:{height:"85%",overflow:"auto",overflowX:"hidden"}},Be.createElement(Fe.default.Group,{value:de.map(Ne=>`${Ne.id}`),onChange:Ne=>{ce(le.filter(ze=>Ne.includes(`${ze.id}`)))},style:{marginTop:"10px",flexDirection:"column"}},le.map((Ne,ze)=>Be.createElement(Ce.Z,{key:Ne.id,style:{marginTop:"10px",lineHeight:"24px",display:"flex",width:200}},Be.createElement(Fe.default,{style:{display:"flex",height:"24px",alignItems:"center"},disabled:Ne.is_published,value:`${Ne.id}`},Be.createElement("div",{className:_e.listClass},Be.createElement("span",{className:_e.spantitle,style:{width:Ne.is_published?"108px":"170px"}},Ne.name),Ne.is_published&&Be.createElement("span",{style:{width:"52px",height:"24px",background:"#B8B8B8",borderRadius:"13px",color:"white",lineHeight:"24px",textAlign:"center",display:"inline-block"}},"\u5DF2\u53D1\u5E03")))))))),Be.createElement("div",{className:_e.rightdiv},Be.createElement(He.default.Search,{onChange:Ne=>{ue(de.filter(ze=>ze.name.includes(Ne.target.value)))},size:"middle",placeholder:"\u53EF\u8F93\u5165\u73ED\u7EA7\u540D\u79F0\u67E5\u8BE2"}),ie.length===0&&Be.createElement(ge.Z,{styles:{margin:"70px auto"},customText:"\u6682\u672A\u9009\u62E9\u5206\u73ED"}),ie.length>0&&Be.createElement("div",{style:{marginTop:"10px",height:"85%",overflow:"hidden",position:"relative"}},Be.createElement("div",{style:{overflowX:"hidden",overflowY:"scroll",position:"absolute",left:0,top:0,right:-17,bottom:0}},ie.map((Ne,ze)=>Be.createElement(Ce.Z,{justify:"space-between",style:{marginTop:"10px"},key:Ne.id},Be.createElement("div",{style:{overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis",marginRight:"5px",marginLeft:"5px",width:"75%"}},Ne.name),Be.createElement("img",{src:Pe,style:{cursor:"pointer",height:"16px",marginRight:17},onClick:()=>{ce(de.filter(Ge=>`${Ge.id}`!=`${Ne.id}`))}})))))))}},25920:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return ne}});var Be=Ie(59301),He=Ie(90115),Fe=Ie(5083),Ce=Ie(43418),_e=Ie(92832),Pe=Ie(95237),ge=Ie(43604),Ae={title_tooltip:"title_tooltip___LLdrn",multiple_select:"multiple_select___kDXUm",modal_con:"modal_con___ERnkW"},be=Ie(66649),we=Ie.n(be),pe=Ie(22566),ye=Ie(21692),xe=Ie(59301);const{RangePicker:ce}=Fe.default,te=({dispatch:le,classroomList:oe,onConfirm:de})=>{const[he,ie]=(0,Be.useState)([]),[ue,ve]=(0,Be.useState)([]),[Se,De]=(0,Be.useState)("");(0,Be.useEffect)(()=>{var ze;if(oe.actionTabs.key==="\u5206\u73ED\u53D1\u5E03-\u53D1\u5E03\u89C4\u5219\u62C6\u5206"){let Ge=oe.actionTabs.data;console.log("data",Ge);let Xe=(ze=Ge==null?void 0:Ge.group_name)==null?void 0:ze.map((Qe,nt)=>{var $e;return{group_id:Ge==null?void 0:Ge.group_id[nt],group_name:Ge==null?void 0:Ge.group_name[nt],is_admin:Ge==null?void 0:Ge.is_admin,end_time:Ge==null?void 0:Ge.end_time,publish_time:Array.isArray(Ge==null?void 0:Ge.publish_time)?($e=Ge==null?void 0:Ge.publish_time)==null?void 0:$e[0]:Ge==null?void 0:Ge.publish_time}});Xe&&(ie([...Xe]),ve([...Xe]))}},[oe.actionTabs]);const Re=()=>{le({type:"classroomList/setActionTabs",payload:{}}),De("")},Ne=ze=>{if(ze){const Ge=ue==null?void 0:ue.filter(Xe=>{var Qe,nt;return(nt=(Qe=Xe==null?void 0:Xe.group_name)==null?void 0:Qe.toLowerCase())==null?void 0:nt.includes(ze==null?void 0:ze.toLowerCase())});ie(Ge)}else ie(ue)};return xe.createElement(Ce.default,{width:980,title:xe.createElement("div",{style:{fontWeight:"bold",display:"flex"}},xe.createElement("div",null,"\u5206\u73ED\u53D1\u5E03-\u53D1\u5E03\u89C4\u5219\u62C6\u5206",xe.createElement("span",{className:Ae.title_tooltip},"\uFF08\u5F53\u5206\u73ED\u53D1\u5E03\u65F6\u95F4\u548C\u622A\u6B62\u65F6\u95F4\u4E0D\u76F8\u540C\u65F6\u5019\uFF0C\u73ED\u7EA7\u81EA\u52A8\u62C6\u5206\u51FA\u53BB\u65B0\u8D77\u89C4\u5219\uFF09")),xe.createElement(_e.default.Search,{allowClear:!0,placeholder:"\u8BF7\u8F93\u5165\u5173\u952E\u5B57\u8FDB\u884C\u641C\u7D22",style:{width:220,marginLeft:"60px"},value:Se,onChange:ze=>{De(ze.target.value.trim()),Ne(ze.target.value.trim())}})),centered:!0,maskClosable:!1,open:oe.actionTabs.key==="\u5206\u73ED\u53D1\u5E03-\u53D1\u5E03\u89C4\u5219\u62C6\u5206",onCancel:()=>Re(),onOk:()=>{var ze;de((ze=oe.actionTabs)==null?void 0:ze.index,ue),Re()}},xe.createElement("div",{className:Ae.modal_con},xe.createElement(Pe.Z,{style:{display:"flex",color:"#666666",padding:"5px",marginTop:"1px"}},(he==null?void 0:he.length)>0?he.map(function(ze,Ge){var Xe,Qe;return xe.createElement(ge.Z,{span:24,key:Ge},xe.createElement(Pe.Z,{gutter:[8,16],style:{display:"flex",alignItems:"center",marginBottom:Ge==(he==null?void 0:he.length)-1?"0px":"10px"}},xe.createElement("div",{className:Ae.multiple_select,title:ze.group_name},ze.group_name),xe.createElement("div",{className:"ml20"},xe.createElement(ce,{size:"large",ranges:{\u6B64\u523B:[ze.publish_time?we()(ze.publish_time):we()(),we()()]},allowClear:!1,disabled:(Xe=oe.actionTabs)==null?void 0:Xe.rangePickerDisabled,style:{width:600},placeholder:["\u53D1\u5E03\u65F6\u95F4\uFF08\u5B66\u751F\u6536\u5230\u4F5C\u4E1A\u65F6\u95F4\uFF09","\u622A\u6B62\u65F6\u95F4\uFF08\u5B66\u751F\u201C\u6309\u65F6\u201D\u63D0\u4EA4\u4F5C\u54C1\u65F6\u95F4\u622A\u70B9\uFF09"],disabledDate:nt=>{var $e;return(0,pe.Q8)(nt,($e=oe.actionTabs)==null?void 0:$e.disabledDate)},disabledTime:nt=>(0,pe.d0)(nt),showTime:{showNow:!0,format:"HH:mm",defaultValue:[we()((0,pe.U6)(),"HH:mm"),we()((0,pe.U6)(),"HH:mm")]},format:"YYYY-MM-DD HH:mm",value:ze.publish_time&&[we()(ze.publish_time),ze.end_time?we()(ze.end_time):void 0],onChange:(nt,$e)=>{he[Ge].publish_time=$e[0],he[Ge].end_time=$e[1],ie([...he]),ue.forEach(qe=>{qe.group_id===ze.group_id&&(qe.publish_time=$e[0],qe.end_time=$e[1])}),ve([...ue])}})),(Qe=oe.actionTabs)!=null&&Qe.rangePickerDisabled?xe.createElement("i",{className:"iconfont icon-shanjian1 ml15",style:{color:"#E30000",opacity:"0.2",cursor:"not-allowed"}}):xe.createElement("i",{className:"iconfont icon-shanjian1 ml15",style:{cursor:"pointer",color:"#E30000"},onClick:()=>{he.splice(Ge,1),ie([...he]),ue.forEach((nt,$e)=>{nt.group_id===ze.group_id&&ue.splice($e,1)}),ve([...ue])}})))}):xe.createElement(ye.Z,null))))};var ne=(0,He.connect)(({classroomList:le})=>({classroomList:le}))(te)},32686:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return te}});var Be=Ie(59301),He=Ie(43418),Fe=Ie(24905),Ce=Ie(38854),_e=Ie(20834),Pe=Ie(1710),ge=Ie(8591),Ae=Ie(5112),be=Ie(8636),we=Ie(76443),pe=Ie(2751),ye=Ie(51571),xe=(ne,le,oe)=>new Promise((de,he)=>{var ie=Se=>{try{ve(oe.next(Se))}catch(De){he(De)}},ue=Se=>{try{ve(oe.throw(Se))}catch(De){he(De)}},ve=Se=>Se.done?de(Se.value):Promise.resolve(Se.value).then(ie,ue);ve((oe=oe.apply(ne,le)).next())});const ce=50;var te=({data:ne,isAdminOrTeacher:le,onDelGroup:oe,onChangeGroupName:de,onPlusMember:he,onDelMember:ie,onExitGroup:ue,Transferteams:ve})=>{var Se,De;const[Re,Ne]=(0,Be.useState)(0),[ze,Ge]=(0,Be.useState)(0);let[Xe,Qe]=(0,Be.useState)(),[nt,$e]=(0,Be.useState)(),[qe,ot]=(0,Be.useState)(!1),[at,lt]=(0,Be.useState)(),[rt,ut]=(0,Be.useState)(),[yt,ft]=(0,Be.useState)(!1),[dt,ht]=(0,Be.useState)(!1),[Ut,Kt]=(0,Be.useState)("");function qt(tn){let Gt=parseInt(tn.key,10);Kt(Gt),ht(!0)}function vn(tn){let Gt=parseInt(tn.key,10);He.default.confirm({title:"\u9000\u51FA\u63D0\u793A",okText:"\u786E\u5B9A",cancelText:"\u53D6\u6D88",content:"\u9000\u51FA\u5C06\u5BF9\u60A8\u4E0E\u7EC4\u5185\u6210\u5458\u5171\u540C\u5F00\u5C55\u6559\u7814\u6D3B\u52A8\u9020\u6210\u4E0D\u4FBF\u3002\u60A8\u786E\u5B9A\u8981\u9000\u51FA\u5417\uFF1F",onOk:()=>{ue(Gt)}})}function Ot(tn){let Gt=parseInt(tn,10);He.default.confirm({title:"\u9000\u51FA\u63D0\u793A",okText:"\u786E\u5B9A",icon:!1,className:ye.Z.CustomTipsModalCss,cancelText:"\u53D6\u6D88",content:"\u9000\u51FA\u5C06\u5BF9\u60A8\u4E0E\u7EC4\u5185\u6210\u5458\u5171\u540C\u5F00\u5C55\u6559\u7814\u6D3B\u52A8\u9020\u6210\u4E0D\u4FBF\u3002\u60A8\u786E\u5B9A\u8981\u9000\u51FA\u5417\uFF1F",onOk:()=>{ue(Gt)}})}function rn(tn,Gt){He.default.confirm({title:"\u6E29\u99A8\u63D0\u793A",content:"\u786E\u5B9A\u8981\u5220\u9664\u8FD9\u4E2A\u7EC4\u5458\u5417?",icon:!1,className:ye.Z.CustomTipsModalCss,okText:"\u786E\u5B9A",cancelText:"\u53D6\u6D88",onOk:()=>{ie(tn,Gt)}})}const an={display:"block",height:"30px",lineHeight:"30px"};function On(tn){ut(tn),lt(tn==null?void 0:tn.id),ft(!0)}const Rn=[{title:"\u6210\u5458\u540D\u79F0",dataIndex:"name",width:150},{title:"\u4F7F\u7528\u5171\u4EAB\u8BD5\u9898",dataIndex:"item_bank",align:"center",width:150,render:(tn,Gt,It)=>Be.createElement(Fe.default,{disabled:Gt==null?void 0:Gt.is_creator,defaultChecked:tn,onChange:Et=>{(0,be.fg)({id:at,member_id:Gt.id,clazz:"item_bank",enable:Et.target.checked})}})},{title:"\u7F16\u8F91\u5171\u4EAB\u8BD5\u9898",dataIndex:"edit_item_bank",align:"center",width:150,render:(tn,Gt,It)=>Be.createElement(Fe.default,{disabled:Gt==null?void 0:Gt.is_creator,defaultChecked:tn,onChange:Et=>{(0,be.fg)({id:at,member_id:Gt.id,clazz:"edit_item_bank",enable:Et.target.checked})}})},{title:"\u4F7F\u7528\u5171\u4EAB\u8BD5\u5377",dataIndex:"exercise",align:"center",render:(tn,Gt,It)=>Be.createElement(Fe.default,{disabled:Gt==null?void 0:Gt.is_creator,defaultChecked:tn,onChange:Et=>{(0,be.fg)({id:at,member_id:Gt.id,clazz:"exercise",enable:Et.target.checked})}})}];function sn(tn){return xe(this,null,function*(){const Gt=yield(0,be.Gt)(tn==null?void 0:tn.id);lt(tn==null?void 0:tn.id),$e(Gt),ot(!0)})}return Be.createElement("ul",{className:"teaching-lists"},ne.map((tn,Gt)=>Be.createElement("li",{key:tn.id,style:{marginTop:Gt===0?30:16},onClick:()=>Ne(Gt)},Be.createElement("div",{className:"item-group"},Be.createElement("span",{style:{color:"#000000",fontSize:16,fontWeight:600}},tn.name,"\u7684\u6559\u7814\u56E2\u961F"),Be.createElement("div",{className:"action-group"})),Be.createElement("div",{style:{display:"flex"}},Be.createElement("span",{style:{marginTop:29,marginLeft:24,color:"#5F6367"}},"\u56E2\u961F\u6210\u5458\uFF1A"),Be.createElement("ul",{className:"info",style:{flex:1}},tn.memers.map(It=>{var Et;return Be.createElement("li",{key:It.id||It.name,onClick:()=>{Ge(It.id)},className:"directionItemWrap"},Be.createElement("div",{className:"hovename",style:{display:"flex",alignItems:"center",justifyContent:"center",fontWeight:400,fontSize:14,color:It!=null&&It.is_creater?"#000000":"#5F6367"}},((Et=It.name)==null?void 0:Et.length)>6?It.name.substr(0,6)+"....":It.name,Be.createElement("img",{src:we.Z,style:{marginLeft:5,display:!(It!=null&&It.is_creater)&&"none",height:25,width:78}})),tn.is_creat?Be.createElement("div",{className:"groupActionWrap",style:{display:!(It!=null&&It.id)&&"none"}},Be.createElement("a",{className:"btn-del",onClick:Zt=>{Zt.preventDefault(),Zt.stopPropagation(),rn(tn.id,It.id)}},"x")):null)})),tn.is_creat||le?Be.createElement(Ce.Z,{overlayClassName:"dropdowns",dropdownRender:()=>Be.createElement(_e.default,null,Be.createElement(_e.default.Item,{onClick:()=>{de(tn)}},"\u4FEE\u6539\u540D\u79F0"),Be.createElement(_e.default.Item,{disabled:tn.memers.length>=50,onClick:()=>{he(tn)}},"\u6DFB\u52A0\u6210\u5458"),tn.is_creat&&Be.createElement(_e.default.Item,{onClick:()=>sn(tn)},"\u6743\u9650\u914D\u7F6E"),tn.is_creat&&Be.createElement(_e.default.Item,{onClick:()=>On(tn)},"\u8F6C\u8BA9\u56E2\u961F"),Be.createElement(_e.default.Item,{key:tn.id+"",onClick:tn.is_creat?qt:vn},tn.is_creat?"\u89E3\u6563":"\u9000\u51FA"))},Be.createElement("span",{style:{marginTop:30,marginRight:24,color:"#165DFF",fontSize:14,height:20}},"\u8BBE\u7F6E",Be.createElement("i",{style:{marginLeft:5,color:"#979797"},className:"iconfont icon-a-bianzu11"}))):Be.createElement("span",{key:tn.id+"",style:{marginTop:30,marginRight:24,color:"#165DFF",fontSize:14,height:20},className:"c-grey-c",onClick:()=>Ot(tn.id)},"\u9000\u51FA")))),Be.createElement(He.default,{width:700,wrapClassName:ye.Z.CustomCss,title:"\u6743\u9650\u914D\u7F6E",footer:null,open:qe,onCancel:()=>ot(!1)},Be.createElement(pe.Gi,null,Be.createElement(Pe.default,{dataSource:nt==null?void 0:nt.members,columns:Rn,pagination:!1,scroll:{y:240}})),Be.createElement("p",{style:{color:"#FF9D18",marginTop:5}},"*\u9009\u4E2D\u4EE3\u8868\u8BE5\u6210\u5458\u53EF\u4EE5\u4F7F\u7528\u56E2\u961F\u5185\u6240\u6709\u6210\u5458\u5171\u4EAB\u7684\u8D44\u6E90\uFF0C\u5426\u5219\u4E0D\u53EF\u4EE5")),Be.createElement(He.default,{title:"\u89E3\u6563\u63D0\u793A",wrapClassName:ye.Z.CustomCss,onOk:()=>{oe(Ut),ht(!1)},open:dt,onCancel:()=>ht(!1)},Be.createElement("p",null,"\u89E3\u6563\u6559\u7814\u56E2\u961F\u5C06\u5BF9\u56E2\u961F\u6210\u5458\u4E4B\u95F4\u5171\u4EAB\u5B9E\u8BAD\u3001\u8BD5\u5377\u7B49\u529F\u80FD\u9020\u6210\u4E0D\u4FBF\u3002"),Be.createElement("p",null,"\u60A8\u786E\u5B9A\u8981\u89E3\u6563\u672C\u6559\u7814\u56E2\u961F\u5417\uFF1F")),Be.createElement(He.default,{wrapClassName:ye.Z.CustomCss,title:"\u8F6C\u8BA9\u56E2\u961F",onOk:()=>{if(!Xe){ge.ZP.info("\u521B\u5EFA\u4EBA\u4E0D\u80FD\u4E3A\u7A7A");return}ve(at,Xe),ft(!1),Xe=""},open:yt,onCancel:()=>{ft(!1),Xe=""}},Be.createElement("p",{style:{textAlign:"left"}},"\u9009\u4E2D\u7684\u6210\u5458\u5C06\u4F1A\u4EE5\u65B0\u7684\u521B\u5EFA\u4EBA\u8EAB\u4EFD\u63A5\u7BA1\u56E2\u4F53 ",Be.createElement("br",null)," \u60A8\u5C06\u4E0D\u518D\u62E5\u6709\u521B\u5EFA\u4EBA\u7684\u8EAB\u4EFD\u548C\u6743\u9650\uFF0C\u4F46\u60A8\u4ECD\u662F\u56E2\u961F\u4E2D\u7684\u4E00\u5458"),Be.createElement("div",null,Be.createElement(Ae.ZP.Group,{defaultValue:[],onChange:tn=>{Xe=tn.target.value,Qe(tn.target.value)}},(De=(Se=rt==null?void 0:rt.memers)==null?void 0:Se.filter(tn=>tn.is_teacher))==null?void 0:De.map((tn,Gt)=>Be.createElement(Ae.ZP,{style:an,value:tn==null?void 0:tn.id},tn==null?void 0:tn.name))))))}},30702:function(St,Dt,Ie){"use strict";var Be=Ie(59301),He=Ie(78241),Fe=Ie(43418),Ce=Ie(92832),_e=Ie(51571);Dt.Z=({callback:Pe,visible:ge,onCancel:Ae,id:be,name:we})=>{function pe(xe){Pe(xe)}const[ye]=He.default.useForm();return(0,Be.useEffect)(()=>{ye.setFieldsValue({name:we})},[we]),Be.createElement(Fe.default,{centered:!0,title:be?"\u4FEE\u6539\u540D\u79F0":"\u65B0\u5EFA",open:ge,onCancel:Ae,onOk:()=>{ye.submit()},wrapClassName:_e.Z.CustomCss},Be.createElement(He.default,{form:ye,initialValues:{name:we},onFinish:pe},Be.createElement(He.default.Item,{label:"\u6559\u7814\u56E2\u961F\u540D\u79F0",name:"name",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u4E0D\u8D85\u8FC720\u5B57\u7684\u540D\u79F0"}]},Be.createElement(Ce.default,{placeholder:"\u8BF7\u8F93\u5165\u4E0D\u8D85\u8FC720\u5B57\u7684\u540D\u79F0",maxLength:20}))))}},79304:function(St,Dt,Ie){"use strict";Ie.d(Dt,{J:function(){return ve},Z:function(){return ze}});var Be=Ie(59301),He=Ie(3113),Fe=Ie(43418),Ce=Ie(58103),_e=Ie(8636),Pe=Ie(30702),ge=Ie(32686),Ae=Ie(51571),be=Ie(2751),we=Ie(22566),pe=Ie(90115),ye=Ie(22779),xe=Object.defineProperty,ce=Object.defineProperties,te=Object.getOwnPropertyDescriptors,ne=Object.getOwnPropertySymbols,le=Object.prototype.hasOwnProperty,oe=Object.prototype.propertyIsEnumerable,de=(Ge,Xe,Qe)=>Xe in Ge?xe(Ge,Xe,{enumerable:!0,configurable:!0,writable:!0,value:Qe}):Ge[Xe]=Qe,he=(Ge,Xe)=>{for(var Qe in Xe||(Xe={}))le.call(Xe,Qe)&&de(Ge,Qe,Xe[Qe]);if(ne)for(var Qe of ne(Xe))oe.call(Xe,Qe)&&de(Ge,Qe,Xe[Qe]);return Ge},ie=(Ge,Xe)=>ce(Ge,te(Xe)),ue=(Ge,Xe,Qe)=>new Promise((nt,$e)=>{var qe=lt=>{try{at(Qe.next(lt))}catch(rt){$e(rt)}},ot=lt=>{try{at(Qe.throw(lt))}catch(rt){$e(rt)}},at=lt=>lt.done?nt(lt.value):Promise.resolve(lt.value).then(qe,ot);at((Qe=Qe.apply(Ge,Xe)).next())});function ve({children:Ge}){return Be.createElement("div",{className:"no-data"},Be.createElement("img",{src:Ce,alt:"no-data",width:300}),Ge)}const Se={data:[],loading:!0,selectedGroup:{},showFormPanel:!1,showMemberPanel:!1,index:0};var De=(Ge=>(Ge[Ge.INITDATA=0]="INITDATA",Ge[Ge.SHOWLOADING=1]="SHOWLOADING",Ge[Ge.SHOWFORMPANEL=2]="SHOWFORMPANEL",Ge[Ge.SHOWMEMBERPANEL=3]="SHOWMEMBERPANEL",Ge[Ge.SELECTGROUP=4]="SELECTGROUP",Ge[Ge.SETINDEX=5]="SETINDEX",Ge))(De||{});function Re(Ge,Xe){switch(Xe.type){case 0:return he(he({},Ge),Xe.payload);case 1:return ie(he({},Ge),{loading:Xe.payload});case 5:return ie(he({},Ge),{index:Xe.payload});case 2:return he(he({},Ge),Xe.payload);case 3:return he(he({},Ge),Xe.payload);case 4:return ie(he({},Ge),{selectedGroup:Xe.payload,showFormPanel:!0});default:throw new Error}}function Ne({user:Ge}){var Xe;const Qe=(0,pe.useLocation)(),[nt]=(0,pe.useSearchParams)(),[$e,qe]=(0,Be.useReducer)(Re,Se),{data:ot,index:at,loading:lt,showFormPanel:rt,selectedGroup:ut,showMemberPanel:yt}=$e,ft=(Xe=Ge.userInfo)==null?void 0:Xe.role,[dt,ht]=(0,Be.useState)(nt.get("category")||"0"),Ut=(0,Be.useMemo)(()=>{let vt=[],At=[];if(ot){for(let Qt of ot)Qt.is_creat?vt.push(Qt):At.push(Qt);return[vt,At]}},[ot]);(0,Be.useEffect)(()=>{ft===15&&qe({type:5,payload:1})},[ft]);function Kt(){return ue(this,null,function*(){const vt=yield(0,_e.XY)();(vt==null?void 0:vt.status)!==401&&qe({type:0,payload:{loading:!1,showFormPanel:!1,data:vt.groups,index:nt.get("category")||0}})})}(0,Be.useEffect)(()=>{Kt()},[]);function qt(vt){return ue(this,null,function*(){ut.id?yield(0,_e.n3)(ut.id,vt):yield(0,_e.Nd)(vt),Kt()})}function vn(){qe({type:2,payload:{showFormPanel:!0,selectedGroup:{}}})}function Ot(vt){qe({type:4,payload:vt})}function rn(){qe({type:2,payload:{showFormPanel:!1}})}function an(){qe({type:3,payload:{showMemberPanel:!1,selectedGroup:{}}})}function On(vt){qe({type:3,payload:{showMemberPanel:!0,selectedGroup:vt}})}function Rn(vt,At){return ue(this,null,function*(){yield(0,_e.UA)(vt,At),Kt()})}function sn(vt){return ue(this,null,function*(){yield(0,_e.eE)(vt),Kt()})}function tn(vt){return ue(this,null,function*(){yield(0,_e.U2)(vt),Kt()})}function Gt(vt,At){return ue(this,null,function*(){yield(0,_e.Gj)(vt,At),Kt()})}function It(vt){qe({type:5,payload:parseInt(vt.target.id,10)})}function Et(vt,At){return ue(this,null,function*(){an(),yield(0,_e.E2)({user_ids:vt,group_id:At}),Kt()})}const Zt=[{id:"0",name:"\u6211\u521B\u5EFA\u7684"},{id:"1",name:"\u6211\u52A0\u5165\u7684"}];return Be.createElement(Be.Fragment,null,Be.createElement("div",{className:"teaching-circling-container",style:{paddingLeft:45,paddingTop:22}},Be.createElement("div",{className:"teaching-circling-body"},ft===15?null:Be.createElement(be.YG,{value:dt,onChange:vt=>{var At;(At=window.location.href.toString())!=null&&At.includes("category")?(0,we.jz)("category",vt):window.history.replaceState(null,"",window.location.href.indexOf("?")>-1?window.location.href+`&category=${vt}`:`?category=${vt}`),ht(vt),qe({type:5,payload:parseInt(vt,10)})},tabBarExtraContent:Be.createElement(He.ZP,{type:"primary",disabled:ot.length>=50,style:{width:60,height:32,borderRadius:16,border:"1px solid #BACFFE",background:"#F6F7F9 linear-gradient(180deg, #FFFFFF 0%, #F6F7F9 100%)",boxShadow:"0px 2px 4px 0px #E0DFE1, inset 0px 1px 3px 0px rgba(255,255,255,0.5)",color:"#3061D0"},title:ot.length>=50?"\u60A8\u52A0\u5165\u7684\u6559\u7814\u7EC4\u5DF2\u8FBE\u4E0A\u9650":"",onClick:vn},"\u65B0\u5EFA"),className:"mb25",dataSource:Zt}),Be.createElement("div",{className:Ut[at].length===0?"nodata-content":"main-content"},Ut[at].length===0?Be.createElement(ve,null,ft<=12?Be.createElement(Be.Fragment,null," ",Be.createElement("p",null,"\u6559\u7814\u56E2\u961F\u6709\u52A9\u4E8E\u4F60\u548C\u4F60\u7684\u4F19\u4F34\u4EEC\u4E00\u8D77\u521B\u5EFA\u5B9E\u8BAD\u3001\u534F\u540C\u6559\u5B66\uFF0C\u6216\u5F00\u5C55\u5176\u4ED6\u6559\u7814\u6D3B\u52A8\u3002")," ",Be.createElement("p",null,"\u5F53\u524D\u60A8\u5C1A\u672A\u7EC4\u5EFA\u5C5E\u4E8E\u81EA\u5DF1\u6559\u7814\u56E2\u961F\uFF0C\u5FEB\u53BB\u7EC4\u5EFA\u5427\uFF01")," "):Be.createElement("p",null," \u60A8\u5C1A\u672A\u52A0\u5165\u4EFB\u4F55\u6559\u7814\u5C0F\u7EC4\uFF0C\u8BF7\u7B49\u5F85\u8001\u5E08\u7684\u53EC\u5524\u5427\uFF01 ")):Be.createElement(ge.Z,{onExitGroup:tn,Transferteams:Gt,onPlusMember:On,onDelMember:Rn,onDelGroup:sn,isAdminOrTeacher:ft<=12,onChangeGroupName:Ot,data:Ut[at]})))),Be.createElement(Pe.Z,{callback:qt,visible:rt,onCancel:rn,id:ut.id,name:ut.name}),Be.createElement(Fe.default,{centered:!0,title:"\u6DFB\u52A0\u6210\u5458",open:yt,onCancel:an,footer:null,width:1150,bodyStyle:{minHeight:200},wrapClassName:Ae.Z.CustomCss},Be.createElement(ye.Z,{container_id:ut.id,container_type:4,onSelect:Et,onCancel:an})))}var ze=(0,pe.connect)(({user:Ge})=>({user:Ge}))(Ne)},8636:function(St,Dt,Ie){"use strict";Ie.d(Dt,{E2:function(){return _e},Gj:function(){return ge},Gt:function(){return we},Nd:function(){return Fe},U2:function(){return Pe},UA:function(){return Ae},XY:function(){return He},eE:function(){return be},fg:function(){return pe},n3:function(){return Ce}});var Be=Ie(64866);function He(){return(0,Be.U2)("teach_groups.json")}function Fe(ye){return(0,Be.v_)("teach_groups.json",ye)}function Ce(ye,xe){return(0,Be.gz)(`teach_groups/${ye}.json`,xe)}function _e(ye){return(0,Be.v_)("teach_group_members.json",ye)}function Pe(ye){return(0,Be.IV)(`teach_group_members/${ye}.json`)}function ge(ye,xe){return(0,Be.gz)(`teach_groups/${ye}/change_admin.json`,{member_id:xe})}function Ae(ye,xe){return(0,Be.IV)(`teach_groups/${ye}/del_member.json`,{member_id:xe})}function be(ye){return(0,Be.IV)(`teach_groups/${ye}.json`)}function we(ye){return(0,Be.U2)(`teach_groups/${ye}/show_permission.json`)}function pe(ye){return(0,Be.gz)(`teach_groups/${ye==null?void 0:ye.id}/update_permission.json`,ye)}},24971:function(St,Dt,Ie){"use strict";Ie.r(Dt),Ie.d(Dt,{default:function(){return GQ}});var Be={};Ie.r(Be),Ie.d(Be,{add:function(){return RT},adjoint:function(){return lf},clone:function(){return Ms},copy:function(){return Vi},create:function(){return ol},decompose:function(){return wT},determinant:function(){return Dd},equals:function(){return _T},exactEquals:function(){return dE},frob:function(){return NT},fromQuat:function(){return cE},fromQuat2:function(){return PT},fromRotation:function(){return Pb},fromRotationTranslation:function(){return Tb},fromRotationTranslationScale:function(){return MT},fromRotationTranslationScaleOrigin:function(){return Q0},fromScaling:function(){return qh},fromTranslation:function(){return ih},fromValues:function(){return So},fromXRotation:function(){return Mb},fromYRotation:function(){return Ib},fromZRotation:function(){return uE},frustum:function(){return DT},getRotation:function(){return vm},getScaling:function(){return n0},getTranslation:function(){return gm},identity:function(){return Vs},invert:function(){return Gl},lookAt:function(){return _b},mul:function(){return Wb},multiply:function(){return Hl},multiplyScalar:function(){return FT},multiplyScalarAndAdd:function(){return kT},ortho:function(){return Nb},orthoNO:function(){return Lb},orthoZO:function(){return Rb},perspective:function(){return IT},perspectiveFromFieldOfView:function(){return OT},perspectiveNO:function(){return Ob},perspectiveZO:function(){return TT},rotate:function(){return bT},rotateX:function(){return $S},rotateY:function(){return Sb},rotateZ:function(){return CT},scale:function(){return Sc},set:function(){return Ds},str:function(){return BT},sub:function(){return zT},subtract:function(){return Ub},targetTo:function(){return LT},translate:function(){return xc},transpose:function(){return Tf}});var He={};Ie.r(He),Ie.d(He,{circle:function(){return Vk},diamond:function(){return Kk},rect:function(){return Qk},simple:function(){return Xk},triangle:function(){return Jw},triangleRect:function(){return Yk},vee:function(){return Zk}});var Fe=Ie(59301),Ce=Ie(90115),_e=Ie(8591),Pe=Ie(43418),ge=Ie(3113),Ae={flex_box_center:"flex_box_center___wc3oP",flex_space_between:"flex_space_between___YV6tt",flex_box_vertical_center:"flex_box_vertical_center___DBgDc",flex_box_center_end:"flex_box_center_end___uIUDS",flex_box_column:"flex_box_column___kQEdA",banner:"banner____Henj",wrp:"wrp___PZhnF",titleWrap:"titleWrap___GqIYn",titleFlexEnd:"titleFlexEnd___yQ3st",title:"title___djFnh",titleName:"titleName___o55kJ",titleIcon:"titleIcon___iO27M",contentWrap:"contentWrap___EkBTW",verticalLine:"verticalLine___aj4o0",contentLeftWrap:"contentLeftWrap___O08fb",openCourseTag:"openCourseTag___M35c8",tagsWrap:"tagsWrap____zRBh",ratingWrap:"ratingWrap___FD4BS",ratingTitle:"ratingTitle___sKXr7",rating:"rating___pPcWF",popoverWrap:"popoverWrap___XLvdy",popverLeft:"popverLeft___JghVb",popoverRight:"popoverRight___iN5hL",popverScore:"popverScore___LpP2e",popoverRateWrap:"popoverRateWrap___y3lUU",popoverProgress:"popoverProgress___SPsPq",button:"button___w71Iu",operationWrap:"operationWrap___xfwLx",forkWrap:"forkWrap___PUfTF",fork:"fork___SPjy6",forkNum:"forkNum___fwVaA",buttonTransparent:"buttonTransparent___V0ey6",buttonLearnStatistics:"buttonLearnStatistics___sWuSx",publishPopverWrap:"publishPopverWrap___maOAE",colorFF6802:"colorFF6802___Gb0xJ",w140:"w140___XOi_m",nav:"nav___j9ULg",navLeft:"navLeft___EEDpJ",navContent:"navContent___p8ZjQ",flexRow:"flexRow___cGkPG",navRight:"navRight____bBx2",navLeftIcon:"navLeftIcon___yRiiz",colorOrange:"colorOrange___isY7L",contentItem:"contentItem___OdKIu",contentItemTitle:"contentItemTitle___MBdkH",contentItemText:"contentItemText___YDgQC",classButton:"classButton___gidYF",bg28e:"bg28e___AuhUg",bgGray:"bgGray___zHFT7",btn:"btn___n_xyk",name:"name___AkijA",titleright:"titleright___AQpHe",edits:"edits___h0Etp",edit:"edit___YwQgI",deletes:"deletes___AEqz3",delete:"delete___C4ZUp",content:"content___urv2c",go:"go___BHrT0",goicon:"goicon___b33d6",tabs:"tabs___bmtXw"},be=Ie(29590),we=Ie(78241),pe=Ie(5112),ye=Ie(19842),xe=Ie(92832),ce=Ie(71418),te=Ie(64866),ne={applyPublicContainer:"applyPublicContainer___pImhb",applyPublicContent:"applyPublicContent____dPHq",spin:"spin___bBN3v",tips:"tips___uXmwo",action:"action___D3zVt"},le=Ie(87169),oe=Ie(59301),de=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},ee=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())}),ie=({type:E,onCancel:a,onOk:y})=>{const[x]=we.default.useForm(),[b,z]=(0,Fe.useState)(1),[ee,re]=(0,Fe.useState)(!1),[ae,se]=(0,Fe.useState)([]);(0,Fe.useEffect)(()=>{x.setFieldValue("type",1),fe()},[]);const fe=()=>de(void 0,null,function*(){if(E){re(!0);const Ee=yield(0,te.ZP)("/api/disciplines.json",{method:"get",params:{source:E}});se(Ee.disciplines||[]),re(!1)}}),me=()=>{const{sub_discipline_id:Ee,discipline_name:Oe,sub_discipline_name:ke,type:We}=x.getFieldsValue();if((!Ee||Ee&&Ee.length===0)&&(!Oe||!ke))return _e.ZP.warning("\u8BF7\u9009\u62E9\u65B9\u5411&\u8BFE\u7A0B"),!1;y({user_customize:We==2,sub_discipline_id:We==1?[Ee[1]]:null,discipline_name:Oe,sub_discipline_name:ke})};return oe.createElement(Pe.default,{width:640,className:ne.applyPublicContainer,centered:!0,title:"\u516C\u5F00\u8BFE\u7A0B",okText:"\u7533\u8BF7\u516C\u5F00",open:!0,onCancel:()=>{a(),x.resetFields()},onOk:()=>{x.validateFields().then(Ee=>{if(b==2&&(Ee.discipline_name.replaceAll(" ","").length<=0||Ee.sub_discipline_name.replaceAll(" ","").length<=0)){_e.ZP.info("\u65B9\u5411\u6216\u8BFE\u7A0B\u4E0D\u80FD\u4E3A\u7A7A\uFF0C\u8BF7\u586B\u5199\u540E\u518D\u63D0\u4EA4\uFF01");return}me(),x.resetFields()})}},oe.createElement("div",{className:ne.applyPublicContent},oe.createElement("div",{className:ne.tips},oe.createElement(le.Z,{style:{color:"#FF8C29",marginRight:10}}),"\u586B\u5199\u5B9E\u8DF5\u8BFE\u7A0B\u7684\u65B9\u5411&\u8BFE\u7A0B\u4E4B\u540E\uFF0C\u65B9\u53EF\u7533\u8BF7\u516C\u5F00"),oe.createElement(we.default,{labelAlign:"left",form:x},oe.createElement(we.default.Item,{name:"type"},oe.createElement(pe.ZP.Group,{onChange:Ee=>{z(Ee.target.value),Ee.target.value==1?x.setFieldsValue({discipline_name:"",sub_discipline_name:""}):x.setFieldsValue({sub_discipline_id:[]})}},oe.createElement(pe.ZP,{value:1},"\u5FEB\u901F\u9009\u62E9\u65B9\u5411&\u8BFE\u7A0B"),oe.createElement(pe.ZP,{value:2,style:{marginLeft:40}},"\u81EA\u5B9A\u4E49\u65B9\u5411&\u8BFE\u7A0B"))),b==1&&oe.createElement(we.default.Item,{label:"\u65B9\u5411&\u8BFE\u7A0B",name:"sub_discipline_id",rules:[{required:!0}]},oe.createElement(ye.Z,{expandTrigger:"hover",placeholder:"\u8BF7\u9009\u62E9\u65B9\u5411&\u8BFE\u7A0B",options:ae,fieldNames:{label:"name",value:"id",children:"sub_disciplines"},onChange:(Ee,Oe)=>x.setFieldsValue({sub_discipline_id:Ee})})),b==2&&oe.createElement(oe.Fragment,null,oe.createElement(we.default.Item,{label:"\u65B9\u5411",name:"discipline_name",rules:[{required:!0}]},oe.createElement(xe.default,{placeholder:"\u8BF7\u8F93\u5165\u65B9\u5411",autoComplete:"off"})),oe.createElement(we.default.Item,{label:"\u8BFE\u7A0B",name:"sub_discipline_name",rules:[{required:!0}]},oe.createElement(xe.default,{placeholder:"\u8BF7\u8F93\u5165\u8BFE\u7A0B",autoComplete:"off"})))),ee&&oe.createElement("div",{className:ne.spin},oe.createElement(ce.Z,null))))},ue=Ie(8658),ve="data:image/jpeg;base64,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",Se="data:image/png;base64,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",De=Ie(59301),Re=Object.defineProperty,Ne=Object.defineProperties,ze=Object.getOwnPropertyDescriptors,Ge=Object.getOwnPropertySymbols,Xe=Object.prototype.hasOwnProperty,Qe=Object.prototype.propertyIsEnumerable,nt=(E,a,y)=>a in E?Re(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,$e=(E,a)=>{for(var y in a||(a={}))Xe.call(a,y)&&nt(E,y,a[y]);if(Ge)for(var y of Ge(a))Qe.call(a,y)&&nt(E,y,a[y]);return E},qe=(E,a)=>Ne(E,ze(a)),ot=(E,a)=>{var y={};for(var x in E)Xe.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&Ge)for(var x of Ge(E))a.indexOf(x)<0&&Qe.call(E,x)&&(y[x]=E[x]);return y},at=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},ee=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const lt=[{name:"\u672A\u53D1\u5E03",connect:"\u5F53\u524D\u8BFE\u7A0B\u6B63\u5728\u5F00\u53D1\u4E2D\uFF0C\u4E0D\u53EF\u88AB\u4ED6\u4EBA\u4F7F\u7528",bkcolor:"#D8D8D8",txcolor:"#FFFFFF"},{name:"\u9759\u9ED8\u53D1\u5E03",connect:"\u5F53\u524D\u8BFE\u7A0B\u5DF2\u53D1\u5E03\uFF0C\u53EF\u4EE5\u901A\u8FC7\u5206\u4EAB\u94FE\u63A5\u4F7F\u7528\uFF0C\u4F46\u4E0D\u80FD\u88AB\u5F00\u653E\u68C0\u7D22",bkcolor:"#7B92C7",txcolor:"#FFFFFF"},{name:"\u516C\u5F00\u5BA1\u6838",connect:"\u5F53\u524D\u8BFE\u7A0B\u5DF2\u53D1\u5E03\uFF0C\u7533\u8BF7\u7EB3\u5165\u5F00\u653E\u68C0\u7D22\uFF0C\u76EE\u524D\u5E73\u53F0\u6B63\u5728\u5BA1\u6838\u4E2D",bkcolor:"#F9AF7E",txcolor:"#A44C11"},{name:"\u516C\u5F00\u53D1\u5E03",connect:"\u5F53\u524D\u8BFE\u7A0B\u5DF2\u53D1\u5E03\uFF0C\u4E14\u53EF\u88AB\u5F00\u653E\u68C0\u7D22",bkcolor:"#FFE9C1",txcolor:"#A45204"}],rt=E=>{var a=E,{pathsDetail:y,user:x,globalSetting:b,loading:z,dispatch:ee}=a,re=ot(a,["pathsDetail","user","globalSetting","loading","dispatch"]),ae,se,fe,me,Ee,Oe,ke,We,je,Ke,Ze,Je,tt,st,gt,mt,ct,Lt,_t,Yt;const $t=(0,Ce.useParams)(),[En,on]=(0,Fe.useState)({}),Fn=(0,Fe.useRef)(1),[tr,Cn]=(0,Fe.useState)(),[xn,Ln]=(0,Fe.useState)(!1),[nr,An]=(0,Fe.useState)(!1),fr=(0,Fe.useRef)(null),ra=!((ae=y.detail)!=null&&ae.edit_of_subject_knowledge),[aa,Gr]=(0,Fe.useState)({status:!1}),Sr=((se=y.detail)==null?void 0:se.is_free)||((fe=y.detail)==null?void 0:fe.can_learning);(0,Fe.useEffect)(()=>{Gr({status:!1})},[]),(0,Fe.useEffect)(()=>{function ti(){return at(this,null,function*(){var to,ji,so,Ao,ss,Qo,Ei;if((to=y.detail)!=null&&to.courses){const ki=(ji=y.detail)==null?void 0:ji.courses;if((so=ki==null?void 0:ki.toast)!=null&&so.is_open&&((Ao=ki.toast)==null?void 0:Ao.open_num)===-1)An(!0);else if((ss=ki==null?void 0:ki.toast)!=null&&ss.is_open&&((Qo=ki==null?void 0:ki.toast)==null?void 0:Qo.open_num)===1){let Sa=JSON.parse(localStorage.getItem("pathsshow"))||[];((Ei=Sa.filter(_a=>_a===($t==null?void 0:$t.pathId)))==null?void 0:Ei.length)>0?An(!1):(An(!0),Sa.push($t==null?void 0:$t.pathId),localStorage.setItem("pathsshow",JSON.stringify(Sa)))}else An(!1)}})}ti()},[(me=y.detail)==null?void 0:me.courses]),(0,Fe.useEffect)(()=>{var ti,to,ji,so,Ao,ss,Qo,Ei,ki,Sa,_a;if(!((to=(ti=y.detail)==null?void 0:ti.courses)==null?void 0:to.length))return;let Ki;if((ji=y.detail)!=null&&ji.has_start){const Ma=(Ao=(so=y.detail)==null?void 0:so.courses)==null?void 0:Ao.findIndex(mo=>{var Qi;return((Qi=mo.course_status)==null?void 0:Qi.status)===1});Ki=Ma>-1?Ma:0}else{let Ma=(Ei=(Qo=(ss=y.detail)==null?void 0:ss.courses)==null?void 0:Qo.map(mo=>{var Qi;return(Qi=mo.course_status)==null?void 0:Qi.status}))==null?void 0:Ei.lastIndexOf(2);Ki=Ma>-1?Ma:0,Ma=(Sa=(ki=y.detail)==null?void 0:ki.courses)==null?void 0:Sa.findIndex(mo=>{var Qi;return((Qi=mo.course_status)==null?void 0:Qi.status)===0}),Ki=Ma>-1?Ma:Ki}on(((_a=y.detail)==null?void 0:_a.courses[Ki])||{})},[y.detail]);const Kr=()=>{_e.ZP.warning("\u975E\u8BFE\u7A0B\u5408\u4F5C\u8005\u4E0D\u53EF\u64CD\u4F5C\uFF0C\u8BF7\u4E0E\u8BFE\u7A0B\u8D1F\u8D23\u4EBA\u8054\u7CFB\uFF0C\u83B7\u5F97\u5408\u4F5C\u8005\u8EAB\u4EFD\u540E\u8FDB\u884C\u76F8\u5173\u64CD\u4F5C\u3002")},pa=ti=>{var to,ji;const so=(ji=(to=y.detail)==null?void 0:to.courses)==null?void 0:ji.find(Ao=>Ao.course_id===ti);on(so||{}),ee({type:"classroomList/setActionTabs",payload:{key:"\u4FEE\u6539\u5F00\u8BFE\u65F6\u95F4",name:ti}})},Ua=ti=>{Gr({status:ti})},ei=ti=>{Pe.default.confirm({centered:!0,width:590,title:"\u63D0\u793A",okText:"\u786E\u5B9A\u7533\u8BF7",cancelText:"\u53D6\u6D88\u7533\u8BF7",icon:null,content:De.createElement("div",{className:"tc",style:{color:"#5F6367",textAlign:"left"}},"\u516C\u5F00\u8BFE\u7A0B\u9700\u7ECF\u8FC7\u5E73\u53F0\u6807\u51C6\u5316\u5BA1\u6838\uFF0C\u5BA1\u6838\u5468\u671F\u4E3A1-2\u5929\uFF0C\u516C\u5F00\u7684\u8BFE\u7A0B\u5C06\u5BF9\u5E73\u53F0\u6240\u6709\u4EBA\u53EF\u89C1\u3002",De.createElement("br",null),"\u82E5\u4EC5\u672C\u4EBA\u6559\u5B66\u4F7F\u7528\u5219\u65E0\u9700\u7533\u8BF7\u516C\u5F00\uFF0C\u76F4\u63A5\u53D1\u9001\u5230\u8BFE\u5802\u5373\u53EF",De.createElement("br",null)),onOk:()=>at(void 0,null,function*(){let to={user_customize:ti.user_customize,type:ti.type};ti.user_customize?to=qe($e({},to),{discipline_name:ti.discipline_name,sub_discipline_name:ti.sub_discipline_name}):ti.sub_discipline_id&&(to=qe($e({},to),{sub_discipline_id:ti.sub_discipline_id}));const ji=yield(0,be.WO)($e({id:$t.pathId},to));((ji==null?void 0:ji.status)===0||(ji==null?void 0:ji.status)===1)&&(Co(),_e.ZP.success("\u516C\u5F00\u7533\u8BF7\u5DF2\u63D0\u4EA4\uFF0C\u8BF7\u7B49\u5F85\u7BA1\u7406\u5458\u7684\u5BA1\u6838"))})})},Co=()=>{ee({type:"pathsDetail/getPathsDetail",payload:{id:$t.pathId,knowledge:!0}}),ee({type:"pathsDetail/getRightData",payload:{id:$t.pathId}})},Eo=((Oe=(Ee=y.detail)==null?void 0:Ee.courses)==null?void 0:Oe.findIndex(ti=>(ti==null?void 0:ti.course_id)===(En==null?void 0:En.course_id)))+1;return De.createElement("section",null,De.createElement("aside",{className:Ae.banner,style:{backgroundImage:(je=(We=(ke=y==null?void 0:y.detail)==null?void 0:ke.attachments)==null?void 0:We[0])!=null&&je.url?`url(${(Je=(Ze=(Ke=y==null?void 0:y.detail)==null?void 0:Ke.attachments)==null?void 0:Ze[0])==null?void 0:Je.url})`:`url(${ve})`}},De.createElement("aside",{className:Ae.wrp},De.createElement("div",{className:Ae.name},(st=(tt=y.detail)==null?void 0:tt.name)==null?void 0:st.split(` `)[0]),De.createElement("div",{className:Ae.content},De.createElement("span",null,"\u77E5\u8BC6\u56FE\u8C31\uFF1A",(gt=y==null?void 0:y.detail)==null?void 0:gt.knowledge_count),De.createElement("span",null,"\u6807\u7B7E\u8282\u70B9\uFF1A",(mt=y==null?void 0:y.detail)==null?void 0:mt.tag_count),De.createElement("span",null,"\u8D44\u6E90\u8282\u70B9\uFF1A",(ct=y==null?void 0:y.detail)==null?void 0:ct.resource_count),((Lt=y.detail)==null?void 0:Lt.origin_subject_identifier)&&De.createElement("div",{onClick:()=>{var ti;window.open(`/paths/${(ti=y.detail)==null?void 0:ti.origin_subject_identifier}`)},className:Ae.go},De.createElement("img",{src:Se,className:Ae.goicon})," ",De.createElement("div",{style:{cursor:"pointer"}},"\u524D\u5F80\u8BFE\u7A0B\u5B66\u4E60"))))),aa.status&&De.createElement(ie,{type:"subject",onCancel:()=>Ua(!1),onOk:ti=>{Ua(!1),ei(ti)}}),De.createElement(Pe.default,{open:nr,title:"\u8BFE\u7A0B\u516C\u544A",width:593,maskClosable:!1,onCancel:()=>{An(!1)},centered:!0,footer:De.createElement("div",null,De.createElement(ge.ZP,{type:"primary",onClick:()=>{An(!1)}},"\u6211\u77E5\u9053\u4E86"))},De.createElement(ue.Z,{style:{maxHeight:378,overflow:"auto"},value:(Yt=(_t=y==null?void 0:y.detail)==null?void 0:_t.toast)==null?void 0:Yt.content})))};var ut=(0,Ce.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(rt),yt=Ie(99313),ft=Ie(10089),dt={flex_box_center:"flex_box_center___gyNAa",flex_space_between:"flex_space_between___zekzh",flex_box_vertical_center:"flex_box_vertical_center___GQtHt",flex_box_center_end:"flex_box_center_end___P3hWY",flex_box_column:"flex_box_column___YRmML",bg:"bg___w3m29",wrap:"wrap___DQAaW",content:"content___ISSC7",wrapTabs:"wrapTabs___UH3jY",intro:"intro___GxOgI",introTitle:"introTitle___LyPY5"},ht=Ie(22566),Ut={flex_box_center:"flex_box_center___FSHWz",flex_space_between:"flex_space_between___xMj_8",flex_box_vertical_center:"flex_box_vertical_center___TftIO",flex_box_center_end:"flex_box_center_end___KM3sc",flex_box_column:"flex_box_column___o0txR",tabs:"tabs___kpTFv",activied:"activied___IE4FQ",tab:"tab___JSx4b",placeholder:"placeholder___xpvd2",content:"content___I7f9K",nametext:"nametext___E8ley",modal:"modal___oIdtc",mHead:"mHead___tmQjG",form:"form___q76Kb",mType:"mType___zss8M",dropdownst:"dropdownst___NZ0IN",dropnametext:"dropnametext___v6FZZ"},Kt={information:"information___cwV7S",body:"body___1JINN",title:"title___b5sMx",left:"left___yeFML",right:"right___uofAp",listWarp:"listWarp___mIMgF",li:"li___fF9zA",imgTitle:"imgTitle___HGcli",box:"box___pdLe8"},qt="data:image/png;base64,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",vn="data:image/png;base64,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",Ot="data:image/png;base64,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",rn="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIgAAAAoCAYAAAAlprK8AAAAAXNSR0IArs4c6QAAGctJREFUeF61XGlwVtd5fu63SALJWEKAWSTMJvZNoGCMY0MwTpwYN864cQDZiZM6mUk6kzSTTjptf7Q/Mm0zza/GSdNOphM7GBpsY9dO7WkC2C612Q2IxYAQO0gskhBo+7Z7O2d5z3nP+e6nICfRjC3xfXc595znPO/zPuc9N7i14x/bgMS0KMwDUQFRWAAiQP4vEL/EP+QfQCB+s58gkN+I7yNECGK+V18H6pqBuZI6Tx7vX1Nf37mWPoYfau6tjpeXp3P0b91qar36XjRFPgq7mDmQ7lOiTRDP6z2rehBqgWqMaYdpmNtv+hTVBnUv6mXdnfJz223invpI3n5zbz4m1B72mx7H6X99b/Od+DIh7tkdRNHBMMx/s2LON04FPW//zd9FqYq/RyEHhDkJEAWSSHeFfmbdBmcgnM4gsGh80YDRk/ng4efqv2nQJD55t8uBNT3jdLY4x3ZeEQLtsQ4gPACY+1uw+wNEEFCHqnsqwNtrFbWf2uYPpDlFt9eiwp0vBiECLAqYzh35dVlbTP/RvDT9x1BGPaNBqiZPAkikFFASqd6okF0adL/2F9XJipFXCvnsiCifgWCSQIAkKtjOJRbhaDPfUuMtGdjn57NUH8eIyD6IO2CyM4ghxN8CrEMNcInv+ICpQ2IYQncstYUA4DABAxCf6eoc9Vz8J0gQaD12kMeJDkjw6eYyDgMLtdmws+wLj/04Yfjt0Yxp2Vu3SzfX9n9CtSlIAokkgkQaSKSRSATb5KHdr3/nlSgKn4zyg0A+i0gziXycKDS06nSGZCg+e4gmXVD4HW1nPJs9cezisZPFox1kSyp8JpqpwSIjm/FsVvJQoEKHjYZ66L3QaidDEeA4K8QxoDNjNVbNc3tM4kc4YiweRileE3iL2s+4jV+Pwq9hFX3vRFKHmBSQLJP/JRLlXQogW7++MgwT7yI3iFCARISbKA+EodIWfNr4g8ke0va9DglsrBjXsz89MLEw4s5+73qss4l6ZXdYqaNBzcIA1wWkI+Q5BDhF3iaE0mzX140HkIKRPcc+sAlDNKgxAJL3NrdXbSG24CHNTkxLv3GhXt6TDvFZtUSIV+cECBIivAiQpBGkyhAkKoBkuQ2gnVu+dizKZeZG+QGIUIMwL7WIbLIMMWp6WZEmKIk+ZmGA0aB6WEGn/vm+SHTjOD28DC2i4VzEsXuaz02s5xpEHcgHSrafpExCUqClfOpZDgxiMaYQDSBNmCAmVSPjA4nGxQ6obZcBtD+wRGW6/0z4kxhigDRMpRmSC1u6pnxOPieLz1fhJZD6I5FMIwrKEKQqgNQIC5Cbv/rqX+Zyg/8c5QYAoUUKAiSh1CKKrOwgO5LbiBxPnPIQweiQh5jimUcghNEg/kyxApF1tBlIPX2oT6jZEhi8YxglMsot0kRGMxCY+AB5mZOlAsNKLiPRaBrlKPvUZDKG/WJCtDfwelqaSUtiWYpYDVI1O9g9Kd9kLOX0rWAPJIGkYJByIFmBRGokY5CNzaOiAO1Rtm+k0CKKRYRYzetsVz2M0dEOhdngTakkMY757YUpJ4RwMNFgamHqPEQQoK8/g81vH8a42iqsXTUXCR1LLRbccNR9qx+v/aYFkyeNxiMPzDY6w03ZGdVrwDshkQNFz+6hBLAJtUXpd3wIsgOsmdUBpgalFqdcsLpttGxuwx4HCBNYmoksA2sGESJVaI9kOSLBHknGIOLgGy8981KU69tgWESKVeGPhPFZhKc/qMEiQVb9XBw6FMLjfQv/eB5CKDa89+E5HD7ZgRn1tXhs5Syr6mO0kRjE9/a14eDxy1gwcyIeXtFgZ50DSps8ivEXyovyWKsJ3NRWhL5LV7qw+8AZh8LNPzyhyfPXFctnor6u1ptwfMoD/7PtEK5c6SLeLrKg3Ju6Nxs/vgaPPX6f1keapRhqrVax+ktmMDLNTSMQ2kMAhDOIuGHXlmc+GWazO6NsP0IZanKIohyCUHRTyFI6onKmCknM6YHyZ76ZO55vERdCpFiLYZC+gRxeePMg8oUQI8rTKCsTtFj8I7770ucWy+N+/vIeZLJ5jKgoQ1naO571a9OCyVgwe5IctN+8dxzHWtvjB15/+sRnG5HNFvDW9pYhj4v78rHPLMHsWRMVQAwzaEGtGezlre/j/PnrSKWSiiXv4CeMIuTzBdTXj8W6DauKjEM1J1wN4mgjzSAUYoIkCzF0/85N64+EmYH5KsyIjEYxiNQinH4ZDXKzyhdj2jJVppIHHuNvMCZyhK+T1gG/3nkKZy51yYFOpxLoHxQABirK00iStQCgvDyNZ/5kKd4/eA77j1xEOpVEWTqBTLYgQVOWSiLtgeW+xnuxaE69nLE7955G69lrsksKYYi+/qycXHdVVphh+vTK+egbyOLt7S1YOLceqx6YY0hiz4Ez2HPgNJYtmY77l80gnseOncdx5NgFCIDMmTVJGV86pPrh4uWtH0iAbFj3ECZOrHX6Tx7rMwKAqx038eKL21BfNxbrn/6Uy5aeYI+VC8IkE/8ly5FIjQDiAfKV74X5vh8JFpEAEdlMIY9AQl17eb9jQN1UizIFN9yYhzSZhElPWF+RuRZh//Er2NVyERXlKaz/7EI5WO/tP4vDJ9uxYOZ4rL5vhmOoXevqw6/eOiQHYf3aRoyrvQtnLnTijR3HUFtdiQ2fb0Iy6YtPX2cB17v6sPHV3birshzPNT+km61m4cnTHZJBFs+vx+qH5lHcxK59p7FrXyvua5qBTy6faVhi23tHcfjIeTz26BLMnjnRMDKFMdlvIuuIgJdf4wAZ7WRjXNhSJiayxfaOLvzyxe0SIOuaP2XDvB0QCxqSXSbNFzMsIUUqEmUI0iMRzyAbm0cFQXSlkO2rFFoklGI1pwDCMxk/hfRCTOy6TYnQYRZpSlBg+/VbeHXHR7Kj166chWl1tXIpIJsP8cIbH2JgMIc//fQCTLrnbmTzBXTe7MeuQ+dxsf0mls6rwyebphn2emP7UZy52Inli6fg/iVTTYwnpjOuqMRrgOudt7Fx6x4JkK8//ZAR6UUAeXCuySA+0ABZ3jQDK+6baWb/tnddgHBGJWuf+s0yyIOSQZT4Zz6HbB6jzQDo6LiJX/oMoiCtmcpqPwNGMx1VmhuINDdRVppBxPE3Xmp+KcoNOGJVZTQkVskuVomhQG/ELAg/1vmmEdcdRVrFz3ZUMoiDJ9oxmM1jxeLJziw+evoqjrddwyfm1WHa5FocaW3Hjt1tmFZfi5lTxmLa5DEyvFAK29uXxd6WC5jXMB7jx45S3aM9EW5OUZtvCAbZahmE+yAnWtslg8xumID7m2aYEHOw5TwOHb2AhfMno2nRFJNvfrD3FMQ5NsTQhDbTWT6teN5XNIM0NExEVZUNbXY8i3XJQH8GJ05cUiGm+VMxBp5NHIqMPAEiCjFDMYhogBSrmezOKNePSLqrGQQoSF+ErU2ZB5drD5rGzAzkVjDFzBiGsKGGQrXnb+hzO28OIB8KgFKCwUIWs5nDMMLr244hVyjgC48sNELWibl8aRlAKpVCbfVIM8ssowkG6Y0BiJIAJ1pViBnujxKpk+xYy/6jpE+BhRhkuNcWx1sNwrKUGB9EHOtoRl+D+FkMb4wQqwUhVnMDCMIswnxWu6rxKS9Xx/ZhNWKNfVnsbrrxtNj5JDb6xRsHcasv83H663eeM+quCvzZUytMZ6k5rHSGzyCK2dWAnjjdIUVqbU0VJo6vJjrAtes9uHr9FsaNGYV7xt1tHNvLHd3o6urF2keXYJbUIMUzWvZHBNzs6UM2VzDhifpUtcwYBcwMs2yUSqcwuuYuw+p2OaFU/1O4SiJICSc1XVqDUG92bvrK96JC/4/CTJ90VsNCFkEUytgvUl6KifqWbj2IET5MeOrQYVM7Bh4+hGwVl9MpAWTRrPFIJ0XOTt9y59H9rMiw0idRFBMsc+j4ZQiAfO2L9xfb2EEpBlFilhhk8fzJWP2gyGJUW3bvb8MHe1shNMgDUoMosG0nkcrSXHoQ464b5mX1IHwV16sHMaGCLkDL/lpDKRBadnY9KGsQSuBpBhE+iLTZh2QQKVZxJZ+5XSnWZ1S9SF6v7prVAbbYpZFNIYBSVA4M087SGQvRHjEHUeAv3jyIW70ZPPfkJzCyIs2wcwf1ICyV5JpHpMn/vvl9BZCnVujxDXCrdxAfnVY+SG9/Fi3HL6G8LIWli+6VnyWDBJoapxoGkVnMg/OMEPZFKpmGvkglYcpp/sy5qzh46OzQrMcH35lc7mmNjdMxvUF5OzQxyW4oWlbQAIn0Un/JLIbf4samZzYiP9BMLCLKAIQnoiKXuYVTQEMDy+mT/nYcPDkT4nwAHWa8epAX3jwkQ4wASGVFGpvfbkEo28KnCJstQ3ZxgKc/3yR9FAuQ+83JV671YMubB0peIZVM4NtfX4OPWlWIUQwy1xy/+wBjEJHmqoQWlOaufXSpDjH6G1aAdLjlHLbtGL6uiWvs6jWNaPrETFvNF2OS2fESbCI8EOWDxDqp/k1uvfLs7Nzg4JEw05cSZQCRDDMkVnkJokuHbHrr8Su23Gl5Pg5IdD7XNa9uO47egSy+9Oh8VJSl8fzm3RDO4ZiakcWljj5o2IPd6O6V+uE7z65CJpfH5jcOoKqyAk891mjWaW73Z3HqzFV53d6+QRxouSAZZPnS6UYTLFkw2YSY0TVVmEQaBAGuXu/BtRtag4y921D85fZudHX3yizGOKkaPBQGBEB+u6MFc+fUYcWKObp7aLWWr4K7NSR8FXnXro9wpOUsJECaGpwlDwqDJBHMwqspGBJm2RA+iA+Szk0bXgmzg0/KMKMrzkTtqqpVHQIkzmKeu/7i05uhWCZmfdfV91We/8/dEBnLn6+/XxpeCnC26Ic6jBbC6Pyfbvw/6ZV8+9mVZqGP8BRXD3K9My7NVb1ERtnQ8aD4WwkQIVKlt0EcqNp/qOWsZJDGxVPx8OpFhiFVf6j+jsJIpuY2Y1R6jhj63XcOY9++Uw5AfLc7ltXvxEn1H6dry7MLwszAoTDbl5AlAAWxgCeMM9Eo8kGGUQ8SU88Qt6inHjauHkT1KAHkW+uWSyvdgswtFOb5vrjPv2qAfOertFahala47c+dzRvdrpPKfZDBbA63b2ecTEKATHggLccuYOG8eixeIHwQN50cNaoCFeVl8jxqN2Uph4+cw2+3t6BxkQDIQtU2Q6mKQX7x4nbc6unHU089CLEwZ59RMfmOHYexXwDk4UY0LZvpDClnZcv02nAjoyxII5EeGW+1x82Grs3NrxeyA5+Xq7yFLKJ8Tq55Sj2iBZPxJ/j6yVCWfGwllp4JokPjVn2Zj0IAERnNHa5lyUcT7CF+RIjhK87FxpFqC3dShdVuO7h0Pciu/W3YpbMY4aQqOicyGLoepEWHGAmQhzmD2Pv9+PlfY3Awi29+8zFUVY3Qto0uag4CvLujmEGoARbgXuGQdGXFcv8wNAiBpXNL89wwm9uP7MAIab3LkkQRZlTaK5lEI6SoM8RFeL6p/+2EEDqGfRe3mktL/uI3aZDp9aNVLeUQOwyK7g9g7ep5bC6UqAcJACfEPP2QWW9xQ6BsuI4VAXbvP23SXAMQdojKXqyu4PUgLYJBRIhhAOHivn8gg5/89L/lKu93v/uECUF8kfOdWIC441AUwmUjdMEQpblxi3Wl4mnXpme+H+b6fyhLEgWLCJAIFhHuqvV7NJ3+8epBVNwWANklNQiFmKHWfig+W0r10mzyDig3MyvPxQwi+vGaMMHG3o1DRy+ifyDrucvApfZuXL7ShYkTalA/qdYsaJPaGFlZgcaF98bWgxxuOWsAsubhRXpbku5PAG1nOrD1tV1yfaa5eZUBJa/JFQCRIWZNI5Y2NRjPyhjIfnW8XLOkqnYlUmWIGcoHiQPKjY3r34nyg6uEBa9qVlVhswSKniHFyHTRw8WSFZXeSm/JRT17LQoxq5ZNlb6EI3xLxRzPP5hSNwZ3VZU5s99vP4UY4b0sa5yGIycvoadnQKa5L2x5H51dfaXmVMnPx44ZhS9v0OHKqweRDEIaRIcY7mHseKcFH37YhvuWzcJDK+cbgNDNxLElGSRmqcOx2qkeRFS1y4qymHqQoZ62a8szk6NM5nCYG6hWLJKVoYYKm83WHqduhJDz+9eDcJagEDPs0WEnPLFmAaZMHqNnsrXXRSeLOpCrN26j7dx17G8575DPlPox+MLnlqL1bAcGM3k3jQRw5ux1tJ27iqlTxqFh2j1FYUAULzVMnxBbD0JprhKpixyPKZ8P8bOfvYXBTA7r1q1Efd0Ya8XrdFksmjoaRPgg1AJv+wT5M6ZfP04W4w9A5+bmLyGffSnMDSQjsYcmEg4rAwnfAGeA4m7bNOlZ3Pd+euxvnNIsQAB5cs18JHSaS2soTsxj6SE9y/sHzuLy1R488cgCiMFWIdJuOfjtzhP46HQHCgUy4oAxNZWYM2siZs+YIGtRirImXcchOrtUPYgjVDXlOqIxAlqO8iyGAKKs/f/deRx79p5ETXUVnnvuMxB65HRbOxoaJmDkiBFmuePgoTacOnkZS5ZMR8Osetpr6jCldfQp3N5hPcidzMiuTeu/FeYzz0f5TCCZhIUadbsS+3g/Zj2IwgzfwxLg+U27pFGmfBCVpjkCmXpAr1Fwz0AUDZ25cANPPLIQU+prTXgk8Sgqyg4du4hJE2owta5WHlNTU8W0rp8BmCkq/ZhS9SBU3OOYVcaTVjqjUIiQy+eRTKWcqjfpsG4/JDXJ42uXYfbsOrz+X3vQ2npZ+jn1947FzFl1mDmzDpUjyz1W+wPXg9wRSDZv+KtCduCfRPV7EOYRSm9ElCaqzMYkLmzLgZ2pxeHGzPqYehBHgGqGIQZZ99lFavFOY8iJBeqGRSUK7+xpxaX2m5AhRgDEqwcRFJ5OpyTwBLD8FJjv91H40z6CnoyKQU6bijKnAbr9RWm10UeaB/W1zp2/jgMH23D27FX5aI2Lp+HhNYtlm3p6+mT9x8mTl3D16k3VBYkAU6bcg6VLGjB1+gRv0hSvHpuJNZx6kDsBiDima9P6fyjkMn+NMAMVbgpmxVelv5pNaKBiRJITDrzjigab+yDaar/TtsYdp0KMqNZSRpnKdoitPMR5A/svP99W8taC2YTbKQarVMFxdXUlntVZiDiuvz+Dvr4MbvcNorPrNtrbb+Jyeyf6egflfUTd7YoH5mDpEl3jykKxAEv3zV4JlqNHzqG7u1eeU11ThSVLGrBg0VSUC2POC6U0OopdWcEQ1aQON4uJ65GuTeu/HxWyPwjzmbRMfcUrJAqiwFl7JNTPrEik2JRyfQjrHOpiAs99Fef/WIeY2VPH6lke81oHn1W0CLjY3o3bfRnFIJO5BmFaxN+GydufCPDjn28fPjZZZUL13SPx5Q0rlXUeAf/xwg5ZA8J/kqkEJtwzWhYXzZ03Wa4HqS0lxvUxRiUvfzjVegn79pzClSud8nL19eNUEXMp9lLUI42yO64HGc7T39y0fnWhkN0cFXLjlCYRJppwLMX+Er1mo615a/oQ/bNe0wyiJjH7nP5mn4nFO7Ga++SaBXIthi/j+x3h1EAEwHt723C5owerls/ApHuqZWGNkk3x1+Gdz0UlrzzjussR4VoDOfUeRFIs2zty/AJOn+lAzahK3F1diTG1ozBx0mgT5syu/mHUg1y6dAP79p7CAw/Ow7hx1Yoh/Soy3c3DrgcZDkDEsZ2b19UjjLZGhUxTqGtHJEhEJhCINwTo5X0+9jEZCwtK7oBJUcP24+gG+r4KL7bi7masP8OByMKLeQ8H2w5ZrEO0bmYOKr+HpXON9TjAF22p9PSSFXImy6IaEhecpOFNisDCiQI+91KKGVwhVhQMDaseZLggif7tG+muqlt/iyj3vTCfq1JvCFBFRuaFNCbBEZvCBXhi3q8hZnLc+0EYRfpAMv9m13NBweKNM1iWOfh6he5h2wW08ZuyJSf7cFnQvB9E38f1G/TioLxycT0IAcv+tuk3hSOTrZGgd4xB1p8k0PVxPkO6q+ofox5kuACh4/tfba4bHMj+MIrCdWEhm6B1G/WuEQUMvhrs3MeJLHE70a1NbknF3Y9rBtcLHVRNZQo/TOhSBT0UBvQatY31ZgCG+X6QoVau+U59Y0pQ7DH06DABB49lEEXJ8e13r8NBr0DG35fhWu13VFH2cQFC53VufnpFEGZ/EEX5VVFYCOTrJKJQVYLJLRRqD6xK7GgxyWUVp1bEb5BJQZULaq17O+B+PQgtjBhTLRYkWtWz6ndeK2JnnhpQxzRTo2D63gyqAb6nrQjvpv3KFONhgPwZrnMczaX7rkjfUX/xtxuwWkBib7VHRr8fRO7NLZM2O1IVVn79vmAY6vyeVzY0FHL5b0Rh2ByFhQnqlRICGVQErbvc8U+UZnHeD2KVnimWMfUU3ChjXorT0SXeDzJUPQjtdLNlDUT5fNOSoSrnJTT8xX7Omgdrq18P4hSX3On7QYyFHlPoPKz3g9jXT4mSQ/i7+/+YIJERd8sXkz2Fsi+EQf7xKIyWIyo0ROL1NgwsasZHSoPoTfbcBSVW9N1IXgpgMiAr2b0MxUGQeuwSItLOWj/lLl0PYtrGMwYiDiY85ZYwymT4+0H4sR4j2b6woVZzll3bMcKZhxjefrbFlJ5bMIh405DYeilfQSXeD+K9/uGPDRD/+re2frm2UMivRCF6IEI4LQiimjAKahMBasIoGo0II3T/2EFkhc7cL2FYsGsOFNK9XfRqTLiwLF0PYi1+W/NiwpZTg+JpI1o8Y6K2OF2mAeQayHd+tYj+A78fxH9+pUno9Q9if67Y+lCB/wc69/M4zswLhAAAAABJRU5ErkJggg==",an=Ie(6848),On=Ie(11662),Rn=Ie(36237),sn=Ie(92736),Gt={token:{colorPrimary:"#1B8565",colorInfo:"#1B8565",colorLink:"#1B8565",borderRadius:2,fontSizeLG:14},components:{Radio:{radioSize:16,dotSize:6},Modal:{titleFontSize:16,titleColor:"#000"}}},It=Ie(59301),Zt=({children:E,prefixCls:a="knowledgeGraph"})=>document.documentElement.style.fontSize!==""?It.createElement(Rn.StyleProvider,{transformers:[(0,Rn.px2remTransformer)({rootValue:1})]},It.createElement(sn.ZP,{prefixCls:a,theme:Gt},E)):It.createElement(It.Fragment,null,E),vt=Ie(59301),At=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},ee=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())}),Ft=({})=>{var E;const[a,y]=(0,Fe.useState)(!0),[x,b]=(0,Fe.useState)({}),z=(0,Ce.useSelector)(ae=>ae),{pathsDetail:{detail:ee}}=z;(0,Fe.useEffect)(()=>{ee!=null&&ee.id&&re()},[ee==null?void 0:ee.id]);const re=()=>At(void 0,null,function*(){b(ee),y(!1)});return vt.createElement(Zt,null,vt.createElement("div",{className:Kt.information},a&&vt.createElement(ce.Z,{style:{width:"100%",marginTop:"300rem"},spinning:!0}),!a&&vt.createElement("div",{className:Kt.body},vt.createElement("div",{className:Kt.left},vt.createElement("div",{className:Kt.box,style:{marginBottom:"20rem"}},vt.createElement("img",{className:Kt.imgTitle,src:qt,style:{width:"453rem"}}),vt.createElement(ue.Z,{value:(x==null?void 0:x.description)||""})),!!(x!=null&&x.learning_notes)&&vt.createElement("div",{className:Kt.box},vt.createElement("img",{className:Kt.imgTitle,src:Ot,style:{width:"453rem"}}),vt.createElement(ue.Z,{value:(x==null?void 0:x.learning_notes)||""}))),vt.createElement("div",{className:Kt.right},vt.createElement("img",{className:Kt.imgTitle,src:vn,style:{width:"323rem"}}),vt.createElement("div",{className:Kt.listWarp},(E=x==null?void 0:x.subject_members)==null?void 0:E.map(ae=>vt.createElement("div",{key:ae==null?void 0:ae.login,className:Kt.li},vt.createElement("img",{src:`${On.Z.IMG_SERVER}/images/${ae==null?void 0:ae.avatar}`}),(ae==null?void 0:ae.role)===1&&vt.createElement("img",{src:rn,style:{width:"68rem",position:"absolute",right:"-1rem",top:"-1rem"}}),vt.createElement("div",null,vt.createElement(an.Z,{title:ae==null?void 0:ae.username},vt.createElement("b",{className:"c-grey-333"},(0,ht.Pq)(ae==null?void 0:ae.username,7))),vt.createElement(an.Z,{title:ae==null?void 0:ae.school_name},vt.createElement("span",{className:"c-grey-999"},(0,ht.Pq)(ae==null?void 0:ae.school_name,7)))))))))))},wt={exchange:"exchange___eh7R3",body:"body___oRT9t",liWarp:"liWarp___QSKqk",li:"li___qd10l",head:"head___X7rTk",btns:"btns___JOV8d",reply:"reply___FAse7",delete:"delete___cv2H_",praise:"praise___O_5sJ",active:"active____gfgF",num:"num___Vv9Co",secondWrap:"secondWrap___S4NT9",secondLi:"secondLi___KiwQK",secondHead:"secondHead___xyIHf",secondBtns:"secondBtns____BxwD",md:"md____p6F5",comment:"comment___YPf7o",addBtn:"addBtn___S8KeD",pagination:"pagination___iRtcm"},ln=Ie(58421),In=Ie(92310),Kn=Ie.n(In),Vn=Ie(30720),Zn={md:"md___NMHUA",dark:"dark___hYBxG"},$n=Ie(59301),Jt=Object.defineProperty,yn=Object.defineProperties,Hn=Object.getOwnPropertyDescriptors,Bn=Object.getOwnPropertySymbols,Er=Object.prototype.hasOwnProperty,Fr=Object.prototype.propertyIsEnumerable,br=(E,a,y)=>a in E?Jt(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,Wr=(E,a)=>{for(var y in a||(a={}))Er.call(a,y)&&br(E,y,a[y]);if(Bn)for(var y of Bn(a))Fr.call(a,y)&&br(E,y,a[y]);return E},Da=(E,a)=>yn(E,Hn(a)),Ya=(E,a)=>{var y={};for(var x in E)Er.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&Bn)for(var x of Bn(E))a.indexOf(x)<0&&Fr.call(E,x)&&(y[x]=E[x]);return y},Ia=E=>{var a=E,{value:y,onChange:x,theme:b}=a,z=Ya(a,["value","onChange","theme"]);const ee={dark:Zn.dark};return $n.createElement(Zt,{prefixCls:"md"},$n.createElement("div",{className:Kn()(Zn.md,ee[b])},$n.createElement(Vn.Z,Da(Wr({},z),{defaultValue:y,onChange:(re,ae)=>{console.log("a:",re,ae),ae!=null&&ae.length?x(re,ae):x(re)}}))))},Ii={noData:"noData___Luxe1"},wi="data:image/png;base64,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",jr=Ie(61485),Ka=Ie(59301),pr=({style:E={},className:a,text:y="\u6682\u65E0\u6570\u636E",textColor:x="#666",buttonText:b,buttonTexttow:z,ontwoClick:ee,onClick:re})=>Ka.createElement("div",{className:Kn()(Ii.noData,a),style:E},Ka.createElement("img",{src:wi}),!!y&&Ka.createElement("span",{style:{color:x}},y),Ka.createElement("span",{style:{display:"flex"}},!!b&&Ka.createElement("div",{onClick:re},b),!!z&&Ka.createElement("div",{style:{marginLeft:"20rem",display:"flex",alignItems:"center",justifyContent:"center"},onClick:ee},z," ",Ka.createElement(an.Z,{title:"\u6839\u636E\u65E7\u7248\u77E5\u8BC6\u56FE\u8C31\u5185\u5BB9\u6216\u8BFE\u7A0B\u7AE0\u8282\u53CA\u8D44\u6E90\u5185\u5BB9\u81EA\u52A8\u751F\u6210\u77E5\u8BC6\u56FE\u8C31"},Ka.createElement(jr.Z,{style:{color:"#fff",marginLeft:5,marginTop:0}}))))),vr=Ie(59301),li=Object.defineProperty,zn=Object.getOwnPropertySymbols,hr=Object.prototype.hasOwnProperty,Tr=Object.prototype.propertyIsEnumerable,Rr=(E,a,y)=>a in E?li(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,fa=(E,a)=>{for(var y in a||(a={}))hr.call(a,y)&&Rr(E,y,a[y]);if(zn)for(var y of zn(a))Tr.call(a,y)&&Rr(E,y,a[y]);return E},bt=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},ee=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const Me=({type:E,onEnter:a})=>{const[y,x]=(0,Fe.useState)("");return vr.createElement("div",{className:wt.comment},vr.createElement(Ia,{theme:"dark",height:E===1?"264rem":"134rem",value:y,onChange:b=>x(b)}),vr.createElement(ge.ZP,{size:"large",shape:"round",onClick:()=>a(y,E),type:"primary",style:{width:"100rem",marginBottom:"12rem",float:"right"}},"\u53D1\u9001"),vr.createElement("div",{style:{clear:"both"}}))};var Te=({})=>{const E=(0,Ce.useParams)(),[a,y]=(0,Fe.useState)(!0),[x,b]=(0,Fe.useState)({page:1}),[z,ee]=(0,Fe.useState)(0),[re,ae]=(0,Fe.useState)(!1),[se,fe]=(0,Fe.useState)([]);(0,Fe.useEffect)(()=>{me(x)},[]);const me=je=>bt(void 0,null,function*(){y(!0);const Ke=yield(0,te.ZP)(`/api/paths/${E==null?void 0:E.pathId}/discusses.json`,{method:"get",params:je});Ke!=null&&Ke.comments&&(fe(Ke==null?void 0:Ke.comments),ee(Ke==null?void 0:Ke.disscuss_count)),y(!1)}),Ee=(je,Ke)=>bt(void 0,null,function*(){y(!0);const Ze=yield(0,te.ZP)(`/api/paths/${E==null?void 0:E.pathId}/post_discuss.json`,{method:"post",body:{content:je}});(Ze==null?void 0:Ze.status)===0&&(x.page=Ke===1?1:x.page,b(fa({},x)),me(x),ae(!1))}),Oe=(je,Ke)=>bt(void 0,null,function*(){y(!0);const Ze=yield(0,te.ZP)(`/api/discusses/${re}/reply.json`,{method:"post",body:{container_type:"Shixun",content:je}});Ze!=null&&Ze.discuss&&(ae(!1),me(x))}),ke=(je,Ke)=>bt(void 0,null,function*(){y(!0);const Ze=yield(0,te.ZP)(`/api/discusses/${je}/plus.json`,{method:"post",body:{container_type:"Discuss",type:Ke}});(Ze==null?void 0:Ze.status)!==-1&&me(x)}),We=(je,Ke)=>bt(void 0,null,function*(){y(!0);const Ze=yield(0,te.ZP)(`/api/discusses/${je}.json`,{method:"delete",body:{}});(Ze==null?void 0:Ze.status)===1&&(x.page=Ke===1&&se.length===1&&x.page!==1?x.page-1:x.page,b(fa({},x)),me(x))});return vr.createElement(Zt,null,vr.createElement(vr.Fragment,null,vr.createElement("span",{className:"relative",style:{float:"right"}},vr.createElement("div",{className:wt.addBtn,onClick:()=>ae(!0)},"\u53D1\u5E03\u8BA8\u8BBA")),vr.createElement("div",{className:wt.exchange},vr.createElement("div",{className:wt.body},vr.createElement(ce.Z,{spinning:a},re===!0&&vr.createElement(Me,{type:1,onEnter:Ee}),z?vr.createElement(vr.Fragment,null,vr.createElement("div",{className:wt.liWarp},se==null?void 0:se.map(je=>{var Ke,Ze,Je,tt;return vr.createElement("div",{key:je==null?void 0:je.id,className:wt.li},vr.createElement("img",{src:`${On.Z.IMG_SERVER}/images/${(Ke=je==null?void 0:je.author)==null?void 0:Ke.image_url}`}),vr.createElement("aside",{style:{flex:1}},vr.createElement("div",{className:wt.head},vr.createElement("b",null,(Ze=je==null?void 0:je.author)==null?void 0:Ze.name),vr.createElement("span",null,je==null?void 0:je.time),vr.createElement("div",{className:wt.btns},vr.createElement(an.Z,{placement:"top",title:"\u56DE\u590D",color:"#434B64"},vr.createElement("div",{onClick:()=>ae(je.id),className:wt.reply},vr.createElement("i",{className:"iconfont icon-a-huifupinglun"}))),(je==null?void 0:je.manage)&&vr.createElement(an.Z,{placement:"top",title:"\u5220\u9664\u8BA8\u8BBA",color:"#434B64"},vr.createElement("div",{onClick:()=>We(je.id,1),className:wt.delete},vr.createElement("i",{className:"iconfont icon-shanchu17"}))),vr.createElement(an.Z,{placement:"top",title:"\u70B9\u8D5E",color:"#434B64"},vr.createElement("div",{onClick:()=>ke(je==null?void 0:je.id,je!=null&&je.user_praise?0:1),className:Kn()(wt.praise,(je==null?void 0:je.user_praise)&&wt.active)},vr.createElement("i",{className:"iconfont icon-dianzan7"}))),!!(je!=null&&je.praise_count)&&vr.createElement("aside",{className:wt.num},je==null?void 0:je.praise_count))),vr.createElement(ue.Z,{className:wt.md,value:(je==null?void 0:je.content)||""}),!!((Je=je==null?void 0:je.children)!=null&&Je.length)&&vr.createElement("div",{className:wt.secondWrap},(tt=je==null?void 0:je.children)==null?void 0:tt.map(st=>{var gt;return vr.createElement("div",{className:wt.secondLi},vr.createElement("div",{className:wt.secondHead},vr.createElement("b",null,(gt=st==null?void 0:st.author)==null?void 0:gt.name),vr.createElement("span",null,st==null?void 0:st.time),vr.createElement("div",{className:wt.secondBtns},(st==null?void 0:st.manage)&&vr.createElement(an.Z,{placement:"top",title:"\u5220\u9664\u8BA8\u8BBA",color:"#434B64"},vr.createElement("div",{onClick:()=>We(st.id,2),className:wt.secondDelete},vr.createElement("i",{className:"iconfont icon-shanchu17"}))))),vr.createElement(ue.Z,{className:wt.md,value:(st==null?void 0:st.content)||""}))})),re===je.id&&vr.createElement(Me,{type:2,onEnter:Oe})))})),vr.createElement("div",{className:wt.pagination},vr.createElement(ln.Z,{onChange:je=>{x.page=je,b(fa({},x)),me(x)},total:z,current:x==null?void 0:x.page,pageSize:10,hideOnSinglePage:!0,showSizeChanger:!1,showQuickJumper:!1,style:{marginTop:"20rem",marginBottom:"40rem"},showTotal:je=>vr.createElement("span",{style:{marginLeft:"10rem",color:"#fff"}},"\u5171",vr.createElement("span",{style:{color:"#37AD83",margin:"0 5rem"}},je),"\u6761\u6570\u636E")}))):!re&&vr.createElement(pr,{textColor:"#fff",style:{visibility:a?"hidden":"visible"}}))))))},Ue={learning:"learning___axerA",body:"body___xn5Fa",tabs:"tabs___C2Adc",name:"name___VKGdS",tabWrap:"tabWrap___EnXyi",tab:"tab___EBO0d",active:"active___XXAsu",head:"head___XDru2",numerical:"numerical___APDFZ",action:"action___V6i8x",studentHead:"studentHead___I1em7",headLi:"headLi___UsDfK",btn:"btn___SXQTV",addBtn:"addBtn___oYSpZ"},Ye="data:image/png;base64,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",xt="data:image/png;base64,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",Pt="data:image/png;base64,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",Xt="data:image/png;base64,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",Ht={chart:"chart___Rsr8z",group:"group___cEFV6",item:"item___uQIC1"},mn=Ie(99486),pn="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAUYAAACyCAYAAAA+o2ZLAAAAAXNSR0IArs4c6QAAIABJREFUeF7tnXl8VOXVx8+5d7KQELYIKLKIsqMiQtACycSlVVr7irYumQBmEgQEaUXtK7Woo6DVWj9WWQQkmQjJRLEValWkH6uZJKCyCsoSArJjCYQtIcskc8/73iFWS+5MZiZ37tw7c/KPn4889znnfM+TX557n+c5DwL/MAEmwASYwH8RQObBBLQkMPOZbT0bJddYBBwsEQ0EgP6I1AUIkggxSfYFiaoBoZoITwFAhYBYTkC7YoTYsvnPDjuipb9sKzoJsDBGZ941i9pmI+GEtPUmt+S+B5BuJoL+bTGOCBVA+KkoiO92FYZ/ZrOh1Jb++FkmoESAhZHHRUgITJ+3oZfbhTOAKBMIeobECMIRQCwUY2nhojmjDofEBncalQRYGKMy7aELerptcz/J7X6CCB8AoJjQWfpxz9iISG8JovjSItuIvdrYZCuRTICFMZKzq2Fs02072kvSeRsQ/JYITBqa/o8pRGgChNcEIdG2yDa0Jhw+sM3IIMDCGBl5DGsUD83ZNJ5AWkAAl4fVkWbjCHAUQXj4jXkjV+vBH/bBeARYGI2XM914PPP1ijhX5ZlXAGiG/04h1Z4/UX+26mD1+ZrKutpzx+vra0+7XI11brer1rOQIsYmCLEx7cT4hM6xCR26xye279auY3KfpITErvEAFMCYxYWx3To9Nv83/Rv8949bMgGAAAYZ42ICPxDwLK7U42oAur51LkjVp4/U/Pvo1qrKY9vPuurONbX+TMsWse06mLr1uLbjpZcPT07q3LO9fyKJW8R4Gs+LM8EQj95nWBijN/dBRz7VtmUIuJvWtr7ajFR1vPz03h1rjtVWf6fqrC0h6bK4fkPH9UjuPrBzqwIpr16LptuW2K7fGXTQ/GBUEWBhjKp0tz3YabaNo8hNa4Cgi6/ezp0+XL1vx5ojZ6q+rW27Ve89dEq+MuGqoeN6dujcy7M53OsPwikUcdxiW8qGUPrDfUcGARbGyMijJlE0zxRLfYliQ93Zhr3ffHCo8tjX5zRxqtlItx7XdOh39R2949p1jPMljiCaUnnmqGVmjGmLhdGYedPca883xQZY7+v1ufr0keptG5bva6w/59bcQQCIie8gDhs16aqkzj29zx4RjohxMJq/OYYjQ8axycJonFyFzdPm1ef1vhZaKo9sO7Fr6zuHJUmisDkKAIIg4ODh9/Xq1nNYVx/v1Vtiu3UazavV4cyUvm2zMOo7P7rwbuqcjQu8bckhItq/e+3hg3uKT+jC2WYn+gxI79p30G29ENHLGMeFS+alPKwnn9kX/RBgYdRPLnTpibx5WwJplTfnvt318SG9ieL3vsrieOXg23t7810A4S7eBK7LYRd2p1gYw54C/TrgOebXdH63txMt8uvzjs1Fh/QbAcDQERm9vb1WyydkBFPiID4+qOcMhsc3FsbwcDeE1WlPb/gzSfCYkrPyQsuWskUV4f6m2BpI+Zvj9WOn9/e2IIMCvLL4uVGPt9YP/3t0EWBhjK58+x1tc5WcXUoFIeQtORtLFu4K1+qz30E0N5RXq1PSZgxW2sojF54QRHEwV+UJlGpkt2dhjOz8Bh3dQ3M2LpOAcpQ62LGxsELrfYpBB9L8oLzPcWhKpmKRXAEw9415KZPbaoOfjxwCLIyRk0vVImk+B71PqZ6ifKJlc8nCPaoZ07CjEWkzBiifkMFGMZ6u4r2NGiZD56ZYGHWeoHC4N/XpjS+CRE+0tI20tWzJbrWP+d1054sjvMX52d9nb1aLgXx8cPjYqYMUz1YL+NKS51Jmq2WL+zE2ARZGY+dPde/lO1q+c288qHTCper4nlPbv8jbr7ZRrYRR9vvaG7P7Jncf0PKcN8KRy8SUPnyHjNrZNWZ/LIzGzFvIvJ7x9JZbmqSmT5Rmi19++pcdalfJke1oKYxyVZ4bbn5kqNKs0SSYbl343PX/Chlc7tgwBFgYDZMqbRydNmfjYgKaerG16tNHqzeVzA/Jt0UthVGOa2TazAFJnS9vcZ4aAZcsnpcyTRvSbEXPBFgY9ZydMPg27akNe5SuOK345oMDR/aVVYXCJa2FsedVY5P7X33HFRfHIl/NunjuqAGhiJH7NBYBFkZj5Suk3s58ZltPl7tB4RpSpHX/fH57sJW3W3Naa2GUK4GP+dkfrlV6nY4V43rNf3bYkdZ85n+PbAIsjJGd34Cim/bUxvuJqOjih2rPn6z78pM/h6z6tdbCKMd3w62PD0lIvKRdy1kjZiyem/J2QOC4ccQRYGGMuJQGH9BDT216ViLp6Yt7+O7Q5srdW98N2YX24RDGQcPv6XVZ7xHdLo5VQOG5N+aOfCZ4ivxkJBBgYYyELKoUw9Q5G98GoPsu7m7vzjUHD1c4T6pkpkU34RDGXv3Nl/QbMq5Py5jwnSXzUu4PVazcrzEIsDAaI0+aeDl1zsbNSsVot3+RX151fHfILrAPhzAmdx/U/tobswYqCOOWJfNSvG441yQRbCTsBFgYw54C/Tgw7akN+4mgxWrtF/965eu6mhOuQD31JXiB9tVa+0BPyCQmdY8ddfOsa1p+Y4QDi+eO6tuaPf73yCbAwhjZ+Q0oumlzNpwkgOSLHypb+8JXwVTS0bMwyhV3xt725HUthBGgavG8UZcEBI4bRxwBFsaIS2nwAU19amMDEMVe3IPzH3O2SFJTwHe56FkYBcGE5l/Ou74FLUTXkrkp3m8aDB4vP2kgAiyMBkpWqF1lYQQAFsZQDzND9M/CaIg0aeMkv0oDIL9KazPYdG6FhVHnCdLSPW+LLxs+ffXr89XHefFFy2SwrbASYGEMK359GVd7u46evzHydh19jT29ecPCqLeMhNEf3uAtw+cN3mEcgroxzcKom1SE3xE+EgjARwLDPw714AELox6yoBMfuIiEvCjNRSR0MhzD6gYLY1jx68s4lx0D4LJj+hqT4fKGhTFc5HVqNyoK1fZLTe4/9BdcqFanY1APbrEw6iELOvKBrzbgqw10NBzD5goLY9jQ69MwX4bFl2Hpc2Rq6xULo7a8dW+Nr09FSfdJYgdDToCFMeSIjWdg6tMbXwSJnmjpOdLWsiW7z1R9W6tmVFrVY+yUfGXC8LFTBynd9QICvrTkuZTZasbFfRmXAAujcXMXMs+nz9vQy12P+wAo5mIj504frt5cslDVa1S1EsYRaTMGdOjcq8W1qQDYKMbTVYvmjArZ9Q0hSxZ3HBICLIwhwWr8Th+as3GZBJSjFMmOjYUVlce+PmekKLv1uKbD0JTM/ko+I8KyxXNHPWikeNjX0BJgYQwtX8P2Pt22uZ/kdu8iAtPFQTTUnW3YWLJwVzDFa8MBRC5Km5I2Y3Bcu44t6iwiQpMgioMX2UbsDYdvbFOfBFgY9ZkXXXg17ekNfyYJHlNypvr0keotZYsqJEkKuICtlsEJgoDXj53eP6lzT4VXaAAU4JXFz416XEuf2Jb+CbAw6j9HYfNwum1He6np/G4CuFzJicoj207s2Fx0KGwO+mF46IiM3t16Duuq+AoNcFQwJQ5aZBsasou+/HCRm+iQAAujDpOiJ5cemrNpvATSKm8+fbvr40MH9xSf0JPP3/vSZ0B61ysH397bm28CCHe9MW/kaj36zj6FlwALY3j5G8L61DkbFwDQDCVniYj27157WG/iKIti30G39UJEL2McFy6Zl/KwIRLATmpOgIVRc+TGMzjz9Yo4V+WZ9Up3Tn8fjfxavWvrO4fD/c1R/qY4ePh9vby9Pl/wF7fEdus0ev5v+jcYLxvssRYEWBi1oBwBNjx7GxtgPRD09BaOvCCzbcPyfeFarZZXn4eNmnSVt4WWC5oIR8Q4GM17FiNgUIYwBBbGEMKNtK6n2rYMAXdTKRB08RabvJVn7zcfHNJ6n6O8T7Hf1Xf0VtqS8x9fEU6BaEpdYrt+Z6TlhuNRlwALo7o8I763abaNo8hNa3yJowxBPiGzb8eaI2ofH7wYsHzM76qh43oqn2j5UWuEUyjiuMW2lA0RnyQOsM0EWBjbjDD6OmieOa719Vrd/C2Pqo6Xn967Y82x2urvVP2el5B0WVy/oeN6JHcf2Fnx7POP04JwBETTbTxTjL6xGmzELIzBkovy55rPU6/2tSDzAyKk6tNHav59dGtV5bHtZ11155qCwRfbroOpW49rO156+fDkpM4927cqiBc+Km4R42k8f1MMhnj0PsPCGL25b3PkzavVr3jbyqNsAKn2/In6s1UHq8/XVNbVnjteX1972uVqrHO7XbWekl9ibIIQG9NOjE/oHJvQoXt8Yvtu7Tom90lKSOwa758Yfm8ZF8Z26/QYrz63OdVR1wELY9SlXP2A5U3gBNICbydk1Lfou0cEOIogPMybt7UmHzn2WBgjJ5dhjcRzfFA6bwOC3yoVntDCObkgBCC8JgiJNj7mpwXxyLXBwhi5uQ1LZHJVHmqSZksAk5TqOYbGKWwUAJajSXiRq+SEhnC09crCGG0Z1yhez+KMC2cAUWbrq9dBOiWvNiMWirG0kBdXgmTIjykSYGHkgRFSAvIdMiekrTe5Jfc9gHQzESgWi/XXCUSoAMJPRUF8t6sw/DObje9o8Zcdt/OfAAuj/6y4pQoEZj6zrWej5BqLgIMlooEA0B+RugBBEiF6aiYiUTUgVBPhKQCoEBDLCWhXjBBbNv/ZYUdUcIO7YAI+CbAw8gAJK4EsZ+Y1CDSXCMZ6RBGpxCTEzH4zdbmq98qENUg2bjgCLIyGS1nkOGwtyTCThB8CUOKPo0LAkzGxlLp0dNHuyImWIzESARZGI2UrgnydviHr0rq6hu1EoFhdGxA3/zxt/A334r3uCAqbQzEIARZGgyQq0ty0OjPeIYJ7fcWFAjxoTytaFmmxczz6J8DCqP8cRZyHVueE0UTudX4EduAK88D+NrQFdbbaj/65CRNQJMDCyANDcwJZTssnQHSLP4YFFO/LMxes9Kctt2ECahFgYVSLJPfjF4HJZZk3NjVJn/vV2FNwG8vs6Y5Uf9tzOyagBgEWRjUoch9+E7AWW/5BQHcoPCAvsohKHZmEmGHL0pZv99sIN2QCbSTAwthGgPy4/wSsJROuJ8m9WekJBHgGAB8koBZ3yiDgMnu640H/LXFLJtA2AiyMbePHTwdAwPu3RTyTFI99ahroN0Q0t2WXWB8rCFcuTSv4LgBz3JQJBE2AhTFodPzgjwnMrJgZV3OsppsoNHRrkqC7gNCNJOwGKHUjwm6I0JuIzIqzRcR5drPjqclfTO7e1HD+EBDEXtwOAfeC55w0VQHiKc9/BTwFKFQBSadQEKuA3KcSY/Dk/BsLz3F2mEBbCLAwtoVelD2bXZadhFL9YIlwMAINJoAhBPJ5Z7wUiDoEgwMBzgqxCVfmjs6Vz0VDVrHFDkBZwfT1wzNYhUjlQFhOCOUiUjmSqbznJVftsw21udrWNz8dDQRYGKMhywHGmLM+p4vb1TBUQKlZ/GAwkkcEvd4pHaCJ/zQXBPjfvLSil7//H1PWZwxyueAbbwsxwdppfs6NgPsJqVwuTAEE5aIJNvx09Piv+YRNG8lG2OMsjBGW0GDCyVln6SO5MRWIUgEolQgGB9NP4M/gV1d0HXDDxbM4q9Myn4geDry/4J5AxGoA+gIIygRBWBeX3PHLRUMX1QTXGz8VCQRYGCMhiwHEQESYXTphMAKk0Q9C2CuALlRpiggnUBRT88YWlF/c4ZRNUxIaa6rXE8AwVYwF3okbEL9CgHUIwrrYGGHd4tHLjwbeDT9hVAIsjEbNXAB+T/4is6fbReP/f0Z064XyXpQcwOPqNkUgAPxUEIUZSqL4vTH5dV5y1S4AgHsIwKSuE0H0hrgfAT4UEFf3Su3v5GOKQTA00CMsjAZKViCuZpdNGEgS3Q1EdxFRSiDPBtMWAZoI8QQSVQJCJQFWIkElIlVKIFSiAJXkhuOx7RP3LB259Ky/Nmw7bLGHTu/tS25IBoG6gATJ4Clsi8lA1AWQkoGwCyDIxW6TCekypVVtf+351w7PAMKHiLi6XXLHj/m12z9qRmrFwmikbLXi6+RSywiJ4G7yiKH63wkRUSKi/Qi4iwB3CQLtJBR3JcTi3gWj3jqFiBRunCtppbj28/f7QhMMdEvugYgoVwkfSBeqhV+qtn8I0EAInyDCajE28R/Lblx2XG0b3J/2BFgYtWeumkX5e+HkksxUCeBXBDAeiHqr1TkiVhDAdiDYiaKwCwF29u5pKrf1za9Xy4bW/cz8IrNDdT0MRAEGAsEgILoBgG4kgPZq+OL5wwHwOSL8LSaBViwdWXRSjX65D+0JsDBqz7zNFq0l1q5ADQ8AwBQiatPlUs3OuBFhOwCWIFKpEJtYFi0zH3mGuab0/WEINIaIxgDBGFW2JSG4EHCVgPjmstSCT/Uwm27zwIuiDlgYDZJseXaY48xMJ4SpBHRX276jYT0ibUTEUkShNCGG1vNpkR8Ggrx9yd2EY5BoLCGNQcCriUgIdqgg4reAuKxdfIx90aj8fwfbDz+nHQEWRu1YB2VJnh0i1GcR4YNtmR16fjmBVgmA7yf0SP5yfv/5DUE5FIUPTVs3sVuDu+l/iOTPFXgLAMUHg8GzQAX4ASC8eUXagI9taJOC6YefCT0BFsbQMw7KQnax5aY2zw4Rtgue1znTe1y2K6g0tHho+o7p7eurTt9GEownxF8AUedgekaEwwSYixi3yJ5mPxFMH/xM6AiwMIaObVA9W0sz7yCJngKiUQF3gEAI8DkArkIB3stLdXwbcB/8gN8EbGQzHS6tMEtE4wHoTiIIeKM8ItYCwJtxMaaXeRO53+hD3pCFMeSIWzfg+X5YarlbknAOAF3X+hP/3QIRtxBRbkJC3Hv8DStQeuq1t5ZOvIHcTTkIkBHwSjeCCwjeio2JfWnpmLf2qecV9xQMARbGYKip9Iy8IvpRyd/vQ6A/ENGQQLpFgBpAdIgCLF2W6lAs/hpIf9xWPQLy63Zd1en75e/CQcz85eOIbyPiC/a0wp3qecU9BUKAhTEQWiq1nbJpSkxjXfUEcOOTBNQvoG4RNwsAS+Mv6eTgExcBkQtL48klk651U9ODRDABgDr57cSFzyKrRQGf5z98flNTrSELo2ooW+/IRjbhYGl5Nkg4h4D6tP7EhRY8O/SXlH7bzVo/q9059/FfSxLJIhno5V4fC6I4Oy+1YJt+I4wsz1gYNcpnjtOS5iZ4LZBviPLKJSD+qV1yp3yeHWqUKA3M5KybeLXU5P49Ed3nb93J5uOYufExpjmLx6yo1MDNqDbBwhji9E8pndi7UWp6mQju9deUvOcQEV/sndz/La447S8147Wbsu6BqxobG2cT0iS/N+wjnhOQ5vVOHvgaj43Q5ZyFMURsPTUFa88/QST9Dgja+WMGAcsR4YXeaQMcXNbKH2KR0cZTFq6BfkdAD/o7VgBgnyjA47lpRasjg4K+omBhDEE+ckos90tEf/J3Xxsifg2Az/dJ6/8un4YIQUIM0qV8wqa+SZoFQNP9vUMHET4VMWYWb+BXN8ksjCry9NybTNLrIBcj8ONH3n8ICM/lpRa+z0UG/AAWJU0e2ZrV6Vy1a6YkwaN+rmS7ETEXMG4On6JRZ5CwMKrAUS6meuBkxbMgvzYDiK12ifgdAv4+L61gOQtiq7SitsGUTRmXuM7jXCB60J9xhQinQBAftqcWFEUtNJUCZ2FsI8gc56ThEjUuJ4CrW+vqQlFT4dWESzo+z6vMrdHif/+egGcVu9H9KgHd6g8VRHwvziQ+xKvX/tBSbsPCGCQ7+ZzsQWf5k4A4h4hiWu8GVwsiPMbnl1snxS2UCWQVZ/wSEV/xp8oSAp4kgOn56Y53mWfgBFgYA2cG1pLMIUS0HIhG+PH4DkHER/JSHZ/40ZabMAGfBORTU66a6pkI8DQBdGwNFyKsjEmEGVxNvDVS//3vLIwB8PKcXCnZ8ygQzSOAOF+Per73ID4zLnX8G3yZewCQualfBAL6/ohYKRBOy0svXOVX59xIPm3GP/4QyFk/oZ+7Ucr3Z8UZEVYBxk/lFUJ/yHKbthDILps4ktzut/wpQoKIDiGm3czc0bmn2mIzGp5lYfQjy1lOy90IkE9EST6bI55GxN/Y0woL/OiWmzABVQjMrJgZd/5Y1bMS0eOtrV4jwjEA8R67uWC9KsYjtBMWRh+JlV+dD5RUPA8kzfYj/x8LpnY5eWPzjvnRlpswAdUJXKgH6c4HoEG+P/NgIyA8ak9zLFDdiQjpkIXRSyJnfDkpuba+sYgIftrKIKtGxMfy0grfjJAxwWEYmIBtf1b8wUOuuQDwaKsXeCEWxia2n7J05FK5ijj//IgAC6PCcJD3Jrqp8T0AuKKV0VIcHxdnXfyT/AM8qpiAnghkF2f8RELIB4IBvj//wHYxRvxV7uiCvXryP9y+sDBelIFsp2WSRLDE901wWI8AT+SZC+fzyZVwD2G2742AXAPyjOv484T0CJCvhVY8A0CT8tOL/sE0LxBgYWweCZ79YedrXgWiGT5fnQEPgiDcbU8r2MKDiAkYgUCW0/JzACjweaOhp2K4XMhkwDNcyISF0TOuL1Q1cb/X2lYcBPwkoZ3p/oU3LK8ywi8E+8gEvicw2Tmxrxua/kYEw33+4UdcK8S0s0T7lp6onzFO+zzrigaX65+tHbMSEF+6PW38H3izNouNUQnICzMHDrreAKCsVt6KymNE8WdLU1ccMmqsbfU7qoUxy5l5DYL0MRH08Aby/1ecqxHJmpdW9Le2wubnmYAeCFidGVMJ4PVWqoYfFWNMt+eOWfGNHnzW2oeoFcackswxbok+8FXvTq6oLaJ41zLzil1aJ4btMYFQEsgpsYySiP7qs5gy4mkR8Ze5aYXrQumLHvuOSmG0lmbeQZK00ncZeVydFI8PzL+x8JweE8c+MYG2Emg+b/02EN3itS+EOiC4L9pWrKNOGK3OzAeApGUEYPI+GIQX7WkFT/JWnLb+6vHzeiewklaKa5yrXyagWT58dQMKU/LNhXl6j0ct/6JKGK1Oy+ME9Ceve7rkLQuIj9nTHK+qBZj7YQJGIJBdkvE7ieAlX/sdURCetKcV/tEI8bTVx6gRxqzizD8BeK4eUPxBgCYQBCsXgGjrkOLnjUpAPtxARLm+3qYQ8bW8tMJZkf42FRXC2KooItYi4a/z0gvXGHVQs99MQA0C2cWZ4wjlRRlK8N4f5tvNhdmRLI4RL4zZJZanJIme8zpTRDiFBHfkpRd9rsbA4j6YgNEJNFfp+RCAkr3/3uACu9kx0+ix+niDjNTQALKclt8C0V98RHgUBeFn9rTCnZFLgSNjAoETmLI+Y5CrEdcCUW8f4vFHe3rRk4H3rv8nInbGmOXMzAaQlnn7mCzvUYz23f36H57sYTgJTFs/6fIGV+PHvm7AjNQFmYgURqsz8z4AcnivR4e7UYhL46sHwvlrx7aNQOChUkvnegnWElGK15mjgDMjrehtxAljTsmEX0gkrfJxpemB+NiYsYtHLz9qhIHJPjKBcBPIWZ/TRXLVOr3OHD2VeQSr3Vz4Vrh9Vct+RAljdrHlJgngI2+1FOX7LlDAVL7bWa3hw/1EC4HpG7IuratzlfgotuJGQbjfnlb410hgEjHCmFWcmYIgfUoA7ZUSI19ADgKaeaElEoYtxxAOAlNKJ/Z2Se5SbwsyiNiIhHdGwra3iBDG7LLsHpK7fhMQXaY4YBDPmQS4eVmqY3M4BhTbZAKRQsBzjbDLXQoAlyr/rkGdCDFjcs3Ltxo5ZsMLo6fG3CGXE4hGKc4U5c3bAt2Wl1pUZuREse9MQC8EctZNvNrd6C72us8R8RBi3EgjL24aXhizii3LAWiil79eLgGEX+aZC/+pl0HFfjCBSCCQXTZxpOR2/wuIOnh5SyuJTWx/69KRSxuNGK+hhdFTFILoZS8zRYkA7sk3O+Tb/viHCTABlQlkFU9IRZQLPSsfH0TAN+zpjukqm9WkO8MKY07phNslSfrQ217FSN14qsmoYCNMwE8C1pLMXxN5apsqaokgCFOMeOe6IYXxwdJJAxrdTV96r76Nb+enOzL8zC03YwJMoA0ErE7LXCKa4+1zlojCzUarAm44YZyyaUrHxpqaLwlooJdX6C2dYrqPfXX0q3VtyDU/ygSYgJ8EiAizSyyrieB/FH8nAY6L8cLIZTcWHvGzy7A3M5Qw2sgmHCzZ8wERjYuUBIR9BLADTEAFAtll2Unkrv+CiIZ4+d3c1KdPXKqtb369CuZC3oWhhDGr2PIkAD3vbcqOIN5kNxesDzk1NsAEmEALAp49jo3SBiDqrIwH8/PTHVYjoDOMMFpLJlwPJMl/kWKUhVHIiaY7KYwwuNjH6COQ7cz8mUTSRwAgKv+e4q+MsFPEEMI4a/2sdqddx7cA0CAv3xVft5sdv42+YcgRMwH9Ech2Zj4mkfRn5d9VOBFnMl29eMyKSv15/oNHhhDGLKdlARDN8CKKn41LG//Te/Fet55Bs29MIJoIWIszVhDABC/i+L7dXHSnnnnoXhjlOygk8EzNW/4gnjbF4bVGWu3S82Bg35iAWgSmbJqS0Hi+5itv1XgEAa15aY58teyp3Y+uhdFzIXgNfO3twDqicL/dXPiO2lC4PybABNpOILs44ycSgFxwouX3RsRzsYJ4zdLUFYfabkn9HnQtjFnFllUANF5xsghQYE8vUj4jrT4n7pEJMIEgCGSXWJ6XJFK8FwYRP8tLK7xFj7cN6lYYPXe2kJSrLIp4MKZ9+2FLRy49G0Su+BEmwAQ0IjBl05QYV03NBgC6zsvnsEfyzY7XNHLHbzO6FMbsUsuV5KZtSkVnEVESAG7KNTtK/I6SGzIBJhA2AlnOzGuQpI0EENfCCYQ6QRSH540tKA+bgwqGdSmMVqflI2+nWwTEl/LMjtl6gsi+MAEm4JuAtTjzfwmklxTfABHW281FY/TEUHfCaC2x3EkSrVaGhF9d0XXADbbbocNOAAAFgklEQVShNpeeILIvTIAJ+CbgOc7r3OMkoLGK4iiKFntqQZFeOOpKGJurce8Eor4tAWE9CjiC72zRy9BhP5hAYAR8fyKDw51iLh2ol+IvuhLGbKfFJhE942W2+If8dMcLgaWCWzMBJqAnAtYSy8Mk0XwlnwQBn85Lc8zVg7+6EcbJzol9m8i9U+nqUwTc2/7y5Kvn95/foAdo7AMTYALBEVhJK8WPnKu2AcBQhbfC84IpfkDe2LxjwfWu3lO6EUarM+Pv3uq5CSD8PBKuZFQvbdwTEzAugeZCE2sVvzUivGU3F2WFOzpdCKOvY3+IoPtzleFOIttnAkYjkOXM+AAIftHCbwQSRNOovLErNoUzprAL48yKmXE1R6u+IaB+ClPrehOKQ5aZV+wPJyS2zQSYgLoEsssmDCS39LVSGUEELLOnO1LVtRhYb2EXRqsz4w9EME/RbURbvtnxbGAhcWsmwASMQCDLmfEqEDyi7Cvem5/ueDdccYRVGC8UicADAJTYckqN+6/oHTvEKKXQw5VAtssEjErgoVJL5zo3VABQskIMB2LbJw0I173UYRXGbKflRYnoCaXECijemWcueN+oSWe/mQATaJ1AtjNzhkTSAmUNwAfyzI7lrfeifouwCaM8W2ysgf1ezkOvsZsdP1c/XO6RCTABPRGwkc10sGTPNqVLtBDgG3t60TXh8Ddswuh1tohAAMKwfHOhXIeRf5gAE4hwAjklGePdEqxSnDWGaateWIRxxpeTkmvrGg8ozhYB/mpPL7onwscCh8cEmEAzAc+91M7MXV7uii/OTy+6SWtYYRHGLGfmH4GklhVyeLaodf7ZHhPQBQFrScZkkuBNxVmjyZSi9b5GzYXR12wREP+Wb3b8WheZYieYABPQjIC8n7n66MkDyteY4Lv56Y57NXMGADQXRmtxxgsE8PsWQSKQCWOuW5a2fLuWANgWE2AC+iCQ7cyYLRH8UcEbtyDigLxUx7daeaqpMHpmi/VN+4koqaUw8mxRq6SzHSagRwKPbM3qdPac65CSPggoLMozFypeoRyKWDQVRq8X4/BsMRS55T6ZgOEIZJdYXpEkelThjbIuNhF6Lx1ZdFKLoDQTRrkI7cFDDUeJoMvFgSHie3az41daBMw2mAAT0C8Bq9PaC6Bhn9IZakCcnW92KF6PoHZEmgljTqllottNLXexy9U0BHF4XmqBXKONf5gAE4hyAlan5S0imqQwgfrabnZcqwUezYTR6rSsJ6KfKEyRP8w3F92hRbBsgwkwAf0TyHFOGu6mxi1Knooxpmtyx6z4JtRRaCKMk0smXdskNSrOCEVBvCM3reDDUAfK/TMBJmAcAlanZYfSMUFA4cV8c2HLXS0qh6aJMFqLLYsI6KEWU2PAg33MA660oU1SOS7ujgkwAQMTyCq2PAlAzytpRp65sC8iUijDC7kwTt8xvX3dyTPHFLfoAPIFV6HMLvfNBAxKYNrnWVfUNzQoFqgWREjNSy0qC2VoIRdGqzNjKhEsVviQ2ijGJfRaduOy46EMkPtmAkzAmASszox1RDBaYdb4hj3dMT2UUYVcGLOKLVsB6LqWwggr7eai+0IZHPfNBJiAcQlkFWfI4rdQQRhPxrRv3yOURWwxqzgjpO/q3tIiAN6cl+74zLhpY8+ZABMIJYHmmq3fEYAplHaU+g6LMCJguT3dMUjrYNkeE2ACxiJgdVo+JCLNi1aHRRgFQZiVl1b4F2OliL1lAkxAawLZTkumRFSgtV3thRGhrp2Al7+R6jitdbBsjwkwAWMReHzbxMSqM+5KIkrQ0nPNhRERHXazI1PLINkWE2ACxiVgdWa8RwR3aRmB5sIoiuK43NSCj7UMkm0xASZgXALW0gwruSFPywj+Dww5y0bvBKX/AAAAAElFTkSuQmCC",Yn="data:image/png;base64,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",Dn="data:image/png;base64,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",qn="data:image/png;base64,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",er="data:image/png;base64,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",dr="data:image/png;base64,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",fn=Ie(59301),Nn=({dataSource:E=[],pathsDetail:a,onClick:y,onMore:x})=>{const[b,z]=(0,Fe.useState)([]);(0,Fe.useEffect)(()=>{let re=[];for(let ae=0;ae{var se;let fe=null;return ae%2===0?fe=fn.createElement("div",{className:Ht.group,style:ae==0?{marginLeft:"-164rem"}:{}},re.map((me,Ee)=>{var Oe,ke,We;return fn.createElement("div",{key:me.knowledge_uuid,className:Ht.item,style:ae==0&&Ee>0?{marginLeft:"300rem"}:{}},(me==null?void 0:me.has_children)&&fn.createElement("img",{src:me.complete_rate?pn:Yn,style:{width:"163rem",height:"91rem",position:"absolute",zIndex:1,left:0,top:"3rem"}}),Ee!==0&&fn.createElement("img",{src:me.complete_rate?Dn:qn,style:{width:"410rem",height:"50rem",position:"absolute",zIndex:2,right:"50%",bottom:"38rem"}}),ae!==0&&Ee===0&&fn.createElement("img",{src:me.complete_rate?er:dr,style:{width:"233rem",height:"316rem",position:"absolute",zIndex:3,right:"calc(50% + 5rem)",bottom:"38rem",transform:"scaleX(-1)"}}),fn.createElement(mn.Z,{strokeColor:"#60C059",percentage:me.complete_rate,startAngle:270,trackColor:"#E3E8EF",text:me.name,textSize:"16rem",hoverEffect:!(!(me!=null&&me.is_publish)&&!((Oe=a==null?void 0:a.detail)!=null&&Oe.can_managed)),textColor:"#333",outerDiameter:"137rem",innerDiameter:"107rem",textPadding:"26rem",onClick:!(me!=null&&me.is_publish)&&!((ke=a==null?void 0:a.detail)!=null&&ke.can_managed)?void 0:()=>y(me),style:{position:"absolute",zIndex:4,left:"50%",bottom:0,transform:"translateX(-50%)"}}),fn.createElement("div",{onClick:()=>{x(me)},style:{width:"34rem",height:"34rem",borderRadius:"50%",position:"absolute",zIndex:5,left:"50%",top:"3rem",transform:"translateX(-50%)",cursor:"pointer"}}),!(me!=null&&me.is_publish)&&!((We=a==null?void 0:a.detail)!=null&&We.can_managed)&&fn.createElement("div",{style:{background:"rgba(0, 0, 0, 0.5)",borderRadius:"50%",width:"124rem",height:"124rem",position:"absolute",zIndex:5,left:"50%",bottom:6,transform:"translateX(-50%)",textAlign:"center",paddingTop:"40rem"}},fn.createElement("i",{className:"iconfont icon-suo1",style:{color:"#fff",fontSize:"28rem"}}),fn.createElement("div",{style:{color:"#fff",fontSize:"12rem"}},"\u8D44\u6E90\u6682\u672A\u53D1\u5E03")))})):fe=fn.createElement("div",{className:Ht.group},(se=ee(re))==null?void 0:se.map((me,Ee)=>{var Oe,ke,We;return fn.createElement("div",{key:(me==null?void 0:me.knowledge_uuid)||Ee,className:Ht.item},me&&fn.createElement(fn.Fragment,null,(me==null?void 0:me.has_children)&&fn.createElement("img",{src:me.complete_rate?pn:Yn,style:{width:"163rem",height:"91rem",position:"absolute",zIndex:1,left:0,top:"3rem"}}),Ee!==3&&fn.createElement("img",{src:me.complete_rate?Dn:qn,style:{width:"410rem",height:"50rem",position:"absolute",zIndex:2,left:"50%",bottom:"38rem"}}),Ee===3&&fn.createElement("img",{src:me.complete_rate?er:dr,style:{width:"233rem",height:"316rem",position:"absolute",zIndex:3,left:"calc(50% + 5rem)",bottom:"38rem"}}),fn.createElement(mn.Z,{strokeColor:"#60C059",percentage:me.complete_rate,startAngle:270,trackColor:"#E3E8EF",text:me.name,textSize:"16rem",textColor:"#333",hoverEffect:!(!(me!=null&&me.is_publish)&&!((Oe=a==null?void 0:a.detail)!=null&&Oe.can_managed)),outerDiameter:"137rem",innerDiameter:"107rem",textPadding:"26rem",onClick:!(me!=null&&me.is_publish)&&!((ke=a==null?void 0:a.detail)!=null&&ke.can_managed)?void 0:()=>y(me),style:{position:"absolute",zIndex:4,left:"50%",bottom:0,transform:"translateX(-50%)"}}),fn.createElement("div",{onClick:()=>{x(me)},style:{width:"34rem",height:"34rem",borderRadius:"50%",position:"absolute",zIndex:5,left:"50%",top:"3rem",transform:"translateX(-50%)",cursor:"pointer"}}),!(me!=null&&me.is_publish)&&!((We=a==null?void 0:a.detail)!=null&&We.can_managed)&&fn.createElement("div",{style:{background:"rgba(0, 0, 0, 0.5)",borderRadius:"50%",width:"124rem",height:"124rem",position:"absolute",zIndex:5,left:"50%",bottom:6,transform:"translateX(-50%)",textAlign:"center",paddingTop:"40rem"}},fn.createElement("i",{className:"iconfont icon-suo1",style:{color:"#fff",fontSize:"28rem"}}),fn.createElement("div",{style:{color:"#fff",fontSize:"12rem"}},"\u8D44\u6E90\u6682\u672A\u53D1\u5E03"))))})),fn.createElement(Fe.Fragment,{key:ae},fe)}))},jn=Ie(81327),rr=Ie(57809),mr=Ie(17574),Xn={flex_box_center:"flex_box_center___DSyRe",flex_space_between:"flex_space_between___FubQ0",flex_box_vertical_center:"flex_box_vertical_center___Bwld4",flex_box_center_end:"flex_box_center_end___K1Pkl",flex_box_column:"flex_box_column___av7e_",hader:"hader___vwJKS",title:"title____Pmur",body:"body___FxUh6",nodeData:"nodeData___cHclP",yc:"yc___I8230",yclj:"yclj___toMmi",nametitle:"nametitle___B4Hrd",treeheight:"treeheight___HER2j",spacewidth:"spacewidth___XhLbb",titlename:"titlename___rBLxO"},ur=Ie(89489),yr=Ie(21692),wn=Ie(59301),gr=Object.defineProperty,Jn=Object.defineProperties,Ur=Object.getOwnPropertyDescriptors,Ja=Object.getOwnPropertySymbols,gi=Object.prototype.hasOwnProperty,ui=Object.prototype.propertyIsEnumerable,Hr=(E,a,y)=>a in E?gr(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,wa=(E,a)=>{for(var y in a||(a={}))gi.call(a,y)&&Hr(E,y,a[y]);if(Ja)for(var y of Ja(a))ui.call(a,y)&&Hr(E,y,a[y]);return E},Ta=(E,a)=>Jn(E,Ur(a)),ua=(E,a)=>{var y={};for(var x in E)gi.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&Ja)for(var x of Ja(E))a.indexOf(x)<0&&ui.call(E,x)&&(y[x]=E[x]);return y},qa=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},ee=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const zi=E=>{var a=E,{pathsDetail:y,user:x,globalSetting:b,loading:z,dispatch:ee,addmodal:re,setaddmodal:ae,uuid:se,onOk:fe}=a,me=ua(a,["pathsDetail","user","globalSetting","loading","dispatch","addmodal","setaddmodal","uuid","onOk"]),Ee,Oe;let[ke,We]=(0,Fe.useState)({subject_id:(Ee=y==null?void 0:y.detail)==null?void 0:Ee.id,uuid:""});const[je,Ke]=(0,Fe.useState)([]),[Ze,Je]=(0,Fe.useState)([]),[tt,st]=(0,Fe.useState)(!1),[gt,mt]=(0,Fe.useState)(""),[ct,Lt]=(0,Fe.useState)(!1);(0,Fe.useEffect)(()=>{re&&Yt(1)},[re]);function _t(on,Fn){for(let tr of on)Fn.push(tr),tr.children&&tr.children.length>0&&_t(tr.children,Fn)}function Yt(on){return qa(this,null,function*(){var Fn,tr;st(!0);let Cn=yield(0,te.ZP)("/api/subject_knowledge/tree.json",{method:"get",params:Ta(wa({},ke),{id:se,uuid:ke==null?void 0:ke.uuid,is_edit:!!se})});st(!1),(Cn==null?void 0:Cn.status)===0&&(se?ke.uuid=Cn==null?void 0:Cn.uuid:on===1&&(ke.uuid=(tr=(Fn=Cn==null?void 0:Cn.parent_knowledges)==null?void 0:Fn[0])==null?void 0:tr.uuid),mt(Cn==null?void 0:Cn.name),We(ke),Ke(Cn),Je(Cn==null?void 0:Cn.data))})}const $t=on=>{console.log(on)},En=on=>{console.log(on);const Fn=on.node.id,tr=on.dragNode.id,Cn=on.node.pos.split("-"),xn=on.dropPosition-Number(Cn[Cn.length-1]),Ln=(fr,ra,aa)=>{for(let Gr=0;Gr{aa.splice(ra,1),An=fr}),!on.dropToGap)Ln(nr,Fn,fr=>{fr.children=fr.children||[],fr.children.unshift(An)});else{let fr=[],ra;Ln(nr,Fn,(aa,Gr,Sr)=>{fr=Sr,ra=Gr}),xn===-1?fr.splice(ra,0,An):fr.splice(ra+1,0,An)}Je(nr)};return wn.createElement(Pe.default,{title:se?"\u7F16\u8F91\u5B66\u4E60\u8DEF\u5F84":"\u521B\u5EFA\u5B66\u4E60\u8DEF\u5F84",open:re,width:"920rem",centered:!0,onOk:()=>qa(void 0,null,function*(){var on,Fn;let tr=[];if(_t(Ze,tr),console.log(Ze,tr,"gData"),(Ze==null?void 0:Ze.length)<=0||((on=tr==null?void 0:tr.filter(xn=>!(xn!=null&&xn.is_out)))==null?void 0:on.length)===0||((Fn=Ze==null?void 0:Ze.filter(xn=>!(xn!=null&&xn.is_out)))==null?void 0:Fn.length)===0){_e.ZP.info("\u5B66\u4E60\u8DEF\u5F84\u4E0D\u53EF\u4E3A\u7A7A");return}if(!gt){_e.ZP.info("\u540D\u79F0\u4E0D\u53EF\u4E3A\u7A7A");return}let Cn=yield(0,te.ZP)("/api/subject_knowledge.json",{method:"post",body:Ta(wa({},ke),{id:se,name:gt,routes:Ze})});(Cn==null?void 0:Cn.status)===0&&(_e.ZP.info(se?"\u4FEE\u6539\u6210\u529F":"\u65B0\u589E\u6210\u529F"),fe(Cn==null?void 0:Cn.id,gt),ae(!1))}),okText:"\u5B8C\u6210\u521B\u5EFA",onCancel:()=>{ae(!1)}},wn.createElement(ce.Z,{spinning:tt},wn.createElement("div",{className:Xn.body},wn.createElement(jn.Z,{className:Xn.spacewidth},wn.createElement(jn.Z.Compact,null,wn.createElement(xe.default,{addonBefore:wn.createElement("span",{className:Xn.title},wn.createElement("span",{style:{color:"red"}},"*")," \u8DEF\u5F84\u540D\u79F0"),showCount:!0,maxLength:12,value:gt,onChange:on=>mt(on.target.value),style:{width:"100%"},size:"large",placeholder:"\u8F93\u5165\u5B66\u4E60\u8DEF\u5F84\u540D\u79F0",allowClear:!0}))),wn.createElement(jn.Z,{className:Xn.spacewidth,style:{marginTop:"20rem"}},wn.createElement(jn.Z.Compact,null,wn.createElement("div",{className:Xn.titlename},"\u77E5\u8BC6\u56FE\u8C31"),wn.createElement(rr.default,{value:ke.uuid,onChange:on=>{ke.uuid=on,Yt()},disabled:se,style:{width:"90%"},size:"large"},(Oe=je==null?void 0:je.parent_knowledges)==null?void 0:Oe.map(on=>wn.createElement(rr.default.Option,{value:on==null?void 0:on.uuid},on==null?void 0:on.knowledge_name))))),wn.createElement("div",{style:{marginTop:"20rem",background:"#D5F1EA",borderRadius:"8rem 8rem 0rem 0rem",height:"38rem",lineHeight:"38rem",padding:"0px 12rem"}},wn.createElement("span",{style:{color:"#1B8565",fontSize:"16rem",fontWeight:"500"}},"\u5B66\u4E60\u8DEF\u5F84"),wn.createElement("span",{style:{marginLeft:"10rem"}},"\uFF08\u62D6\u52A8\u53EF\u8C03\u6574\u8DEF\u5F84\u987A\u5E8F\uFF09")),(Ze==null?void 0:Ze.length)>0?wn.createElement(mr.default,{style:{background:"#FAFAFA"},treeData:Ze,showLine:!0,blockNode:!0,fieldNames:{key:"id"},className:Xn.treeheight,draggable:!0,onDragEnter:$t,onDrop:En,switcherIcon:wn.createElement(ur.Z,null),titleRender:on=>wn.createElement("div",{className:Xn.nodeData,style:{color:on!=null&&on.is_out?"#999999":"#000000"}},wn.createElement("div",{className:Xn.nametitle,title:on==null?void 0:on.name,style:{flex:1}},(on==null?void 0:on.is_out)&&wn.createElement("span",{className:Xn.yc},"\u5DF2\u79FB\u51FA")," ",on==null?void 0:on.name),wn.createElement("span",{className:Xn.yclj,style:{color:on!=null&&on.is_out?"#37AD83":"#E30000",fontSize:"14rem"},onClick:()=>{on.is_out=!on.is_out}},on!=null&&on.is_out?"\u52A0\u5165\u5B66\u4E60\u8DEF\u5F84":"\u79FB\u51FA\u5B66\u4E60\u8DEF\u5F84")," ")}):wn.createElement(yr.Z,{styles:{margin:"20rem auto"}}))))};var Fa=(0,Ce.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(zi),Ui=Ie(54580),Yi=Ie(43428),Zr={flex_box_center:"flex_box_center___bAhU8",flex_space_between:"flex_space_between___fGcUL",flex_box_vertical_center:"flex_box_vertical_center___hqbFm",flex_box_center_end:"flex_box_center_end___h8cjt",flex_box_column:"flex_box_column___jkfSL",detailmodal:"detailmodal___KEy8k",title:"title___M0Bdn",button:"button___oEMiZ",drawer:"drawer___Pwq6m",tabstyle:"tabstyle___hGelr",items:"items___RrF7L",itemsactivite:"itemsactivite____kVzF",nodetitle:"nodetitle___UgLxl",nodeboyd:"nodeboyd___R1M87",listitem:"listitem___CjR4j",Tabs:"Tabs___gAkar",addmodal:"addmodal___KHvV4",gxcoent:"gxcoent___B8UeJ",gxtitle:"gxtitle___Ezw1C",Colortitle:"Colortitle___kChPm",gxbody:"gxbody___HmZPk",tag:"tag___b2Gak",form:"form___wY8YH",radioform:"radioform___RW7Fy",settingmodal:"settingmodal___LgbSA",body:"body___KaaXx",left:"left___BbRKH",header:"header___E8vej",treenode:"treenode___XViAn",hudong:"hudong___MzZbW",colortitle:"colortitle___PgqHg",right:"right___jzXCF",multiple:"multiple___GQEEM",settingtag:"settingtag___XVMCI",tree:"tree___zz_WU",select:"select___HL7_r",input:"input___reuVt",DetailStatistics:"DetailStatistics___v31Uq",xxrs:"xxrs___Q156g",xxrscount:"xxrscount___OdU60",righttop:"righttop___dnIBD",rightbottom:"rightbottom___B0s8j"},oo=Ie(99267),_s=Ie(43531),Uo=Ie(15075),Xi={tag:"tag___aXy_L",active:"active___kZOMC",tagsModal:"tagsModal___wsl_M",btn:"btn___S2nL4",modal:"modal___r3iAS",mHead:"mHead___imW9A",body:"body___fZUhx",add:"add___QHMDJ",error:"error___aJzBo"},Ti=Ie(59301),Jo=Object.defineProperty,Ro=Object.getOwnPropertySymbols,Lo=Object.prototype.hasOwnProperty,Ts=Object.prototype.propertyIsEnumerable,Bs=(E,a,y)=>a in E?Jo(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,zr=(E,a)=>{for(var y in a||(a={}))Lo.call(a,y)&&Bs(E,y,a[y]);if(Ro)for(var y of Ro(a))Ts.call(a,y)&&Bs(E,y,a[y]);return E},Ir=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},ee=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});let Vr=[{name:"\u4F5C\u4E1A",id:"zy",item_type:2},{name:"\u5B9E\u8BAD",id:"sx",item_type:2},{name:"\u6559\u6750",id:"jc",item_type:2},{name:"\u89C6\u9891",id:"sp",item_type:2},{name:"\u8BFE\u4EF6",id:"kj",item_type:2},{name:"\u8BD5\u5377",id:"sj",item_type:2},{name:"\u9898\u96C6",id:"tj",item_type:2}],Na=[{name:"\u7AE0\u8282",id:"zj",item_type:1},{name:"\u77E5\u8BC6\u70B9",id:"zsd",item_type:1}];var Ai=({value:E=[],onChange:a,type:y,dataSources:x=[],pathsDetail:b={},showmodal:z,containerRef:ee})=>{const[re,ae]=(0,Fe.useState)(!1),[se,fe]=(0,Fe.useState)([]),[me,Ee]=(0,Fe.useState)(),[Oe,ke]=(0,Fe.useState)(""),[We,je]=(0,Fe.useState)(""),[Ke,Ze]=(0,Fe.useState)(""),[Je,tt]=(0,Fe.useState)(!1),[st,gt]=(0,Fe.useState)(!1),[mt,ct]=(0,Fe.useState)([]),[Lt,_t]=(0,Fe.useState)("");(0,Fe.useEffect)(()=>{re&&Yt()},[re]);function Yt(){return Ir(this,null,function*(){var Cn;let xn=yield(0,te.ZP)("/api/knowledge_items.json",{method:"get",params:{item_type:y,subject_id:(Cn=b==null?void 0:b.detail)==null?void 0:Cn.id}});(xn==null?void 0:xn.status)===0&&(y===3?fe(xn==null?void 0:xn.data):(fe([...Na,...xn==null?void 0:xn.data]),ct([...Vr,...xn==null?void 0:xn.data2])))})}const $t=[{background:"#6236FF",borderColor:"#9D82FF"},{background:"#6DB9FF",borderColor:"#6DB9FF"},{background:"rgba(27,175,234,0.8)",borderColor:"#68D5FF"},{background:"#C1AC15",borderColor:"#DCC51C"},{background:"#E07E37",borderColor:"#F79046"},{background:"rgba(29,94,255,0.8)",borderColor:"#6D97FE"},{background:"#E75454",borderColor:"#FE8383"},{background:"#A557D8",borderColor:"#C57AF6"},{background:"#2CA768",borderColor:"#43CC86"},{background:"#1F9269",borderColor:"#38B588"},{background:"#CA7720",borderColor:"#E99338"},{background:"rgba(224,32,32,0.8)",borderColor:"#E02020"},{background:"rgba(255,126,15,0.8)",borderColor:"#FF7E0F"},{background:"rgba(29,94,255,0.8)",borderColor:"#1D5EFF"},{background:"#2BAC8E",borderColor:"#30CB9D"},{background:"#EE5D5D",borderColor:"#FF8181"},{background:"#7E5AFE",borderColor:"#9173FA"},{background:"#3ABCEF",borderColor:"#6FD6FF"},{background:"#B132C2",borderColor:"#C57AF6"},{background:"#46A4FB",borderColor:"#72BBFF"},{background:"#C1AC15",borderColor:"#DCC51C"},{background:"#E07E37",borderColor:"#F79046"},{background:"#1D5EFF",borderColor:"#6D97FE"},{background:"#2CA768",borderColor:"#43CC86"},{background:"#A557D8",borderColor:"#C57AF6"},{background:"#1F9269",borderColor:"#38B588"},{background:"#CA7720",borderColor:"#E99338"}],En="\u6807\u7B7E";(0,Fe.useEffect)(()=>{fe(x)},[]),(0,Fe.useEffect)(()=>{re&&Ee(E)},[re]);const on=({title:Cn="",style:xn={},values:Ln="",showDelete:nr=!0,modal:An=!1,active:fr=!1})=>{const aa=(Kr=>Kr.split("").reduce((pa,Ua)=>pa+Ua.charCodeAt(0),0))(Cn)%$t.length,{background:Gr,borderColor:Sr}=$t[aa];return Ti.createElement("div",{className:Kn()(Xi.tag,fr?Xi.active:""),onClick:()=>{var Kr;if(An){if(re===1){let pa=[...se,...mt];Ee([...pa.filter(Ua=>(Ua==null?void 0:Ua.id)===Ln)])}re===2&&((Kr=me==null?void 0:me.map(pa=>pa.id))!=null&&Kr.includes(Ln)?Ee(me.filter(pa=>pa.id!==Ln)):Ee([...me,...se.filter(pa=>(pa==null?void 0:pa.id)===Ln)]))}},style:zr({background:Gr,borderColor:Sr},xn)},Ti.createElement("span",null,Cn),nr&&Ti.createElement("i",{onClick:Kr=>Ir(void 0,null,function*(){var pa;if(Kr.stopPropagation(),An){fe(se.filter(ei=>ei.name!==Cn)),fe(se.filter(ei=>ei.name!==Cn));let Ua=yield(0,te.ZP)(`/api/knowledge_items/${Ln}.json`,{method:"delete",body:{id:Ln,subject_id:(pa=b==null?void 0:b.detail)==null?void 0:pa.id}});(Ua==null?void 0:Ua.status)===0&&Yt()}else a(E.filter(Ua=>Ua.id!==Ln))}),className:"iconfont icon-shanchu5"}))},Fn=()=>{a(me),ae(!1)},tr=Cn=>Ir(void 0,null,function*(){var xn;if(!Oe.replace(/\s+/g,"")&&Cn===1){Ze(`${En}\u4E0D\u80FD\u4E3A\u7A7A`);return}if(!We.replace(/\s+/g,"")&&Cn===2){_t("\u8D44\u6E90\u4E0D\u80FD\u4E3A\u7A7A");return}if((se.map(nr=>nr.name).includes(Oe)||mt.map(nr=>nr.name).includes(Oe))&&Cn===1){Ze(`\u8BE5${En}\u5DF2\u5B58\u5728\uFF0C\u8BF7\u52FF\u91CD\u590D\u6DFB\u52A0\uFF01`);return}if((mt.map(nr=>nr.name).includes(We)||se.map(nr=>nr.name).includes(We))&&Cn===2){_t("\u8BE5\u8D44\u6E90\u5DF2\u5B58\u5728\uFF0C\u8BF7\u52FF\u91CD\u590D\u6DFB\u52A0\uFF01");return}let Ln=yield(0,te.ZP)("/api/knowledge_items.json",{method:"post",body:{item_type:y===3?3:Cn,name:y===3||Cn===1?Oe:We,subject_id:(xn=b==null?void 0:b.detail)==null?void 0:xn.id}});(Ln==null?void 0:Ln.status)===0&&Yt(),Cn===1&&tt(!1),Cn===2&>(!1)});return Ti.createElement("div",{className:Xi.tagsModal},y===5&&Ti.createElement(Ti.Fragment,null,E==null?void 0:E.map((Cn,xn)=>Ti.createElement(on,{values:Cn.id,key:xn,title:Cn.name,showDelete:!1,style:{marginRight:"20rem",marginBottom:0}})),z&&Ti.createElement("div",{onClick:()=>ae(1),style:{marginBottom:"0rem"},className:Xi.btn},Ti.createElement("i",{className:"iconfont icon-genghuanguanliyuan1"}),E!=null&&E.length?"\u66F4\u6362":"\u9009\u62E9","\u7C7B\u578B")),y===3&&Ti.createElement(Ti.Fragment,null,E==null?void 0:E.map((Cn,xn)=>Ti.createElement(on,{values:Cn.id,key:xn,title:Cn.name})),z&&Ti.createElement("div",{onClick:()=>ae(2),className:Xi.btn,style:{marginBottom:"10rem"}},Ti.createElement("i",{className:"iconfont icon-tianjiatixing"}),E!=null&&E.length?"\u66F4\u6362":"\u9009\u62E9","\u6807\u7B7E")),Ti.createElement(Pe.default,{open:!!re,centered:!0,width:"1000rem",okText:"\u4FDD\u5B58",getContainer:()=>ee.current,onCancel:()=>ae(!1),cancelText:"\u53D6\u6D88",afterClose:()=>{tt(!1),gt(!1),Ze(""),ke("")},onOk:Fn,title:`\u9009\u62E9${En}`},Ti.createElement("div",{className:Xi.modal},Ti.createElement("div",{className:Xi.mHead},Ti.createElement("b",null),Ti.createElement("span",null,`${En}`,"\uFF08",se.length,"\uFF09"),Ti.createElement("div",{onClick:()=>{tt(!0),Ze(""),ke("")},className:Xi.btn},Ti.createElement("i",{className:"iconfont icon-tianjiatixing"}),"\u6DFB\u52A0")),Ti.createElement("div",{className:Xi.body},se==null?void 0:se.map((Cn,xn)=>{var Ln,nr,An;return Ti.createElement(on,{showDelete:y===3?!((Ln=me==null?void 0:me.map(fr=>fr==null?void 0:fr.id))!=null&&Ln.includes(Cn==null?void 0:Cn.id)):!((nr=me==null?void 0:me.map(fr=>fr==null?void 0:fr.id))!=null&&nr.includes(Cn==null?void 0:Cn.id))&&!((An=Na.map(fr=>fr.name))!=null&&An.includes(Cn.name)),modal:!0,style:{cursor:"pointer"},active:me==null?void 0:me.map(fr=>fr==null?void 0:fr.id).includes(Cn==null?void 0:Cn.id),key:Cn==null?void 0:Cn.id,values:Cn==null?void 0:Cn.id,title:Cn==null?void 0:Cn.name})}),Je&&Ti.createElement("div",{className:Xi.add},Ti.createElement(xe.default,{style:{width:"rem"},size:"large",value:Oe,onChange:Cn=>{Ze(""),ke(Cn.target.value)}}),Ti.createElement("i",{onClick:()=>tr(1),className:"iconfont icon-dui",style:{color:"#1B8565"}}),Ti.createElement("i",{onClick:()=>tt(!1),className:"iconfont icon-shanchu10",style:{color:"#9096A3"}}),!!Ke&&Ti.createElement("div",{className:Xi.error},Ke)))),y===5&&Ti.createElement("div",{className:Xi.modal},Ti.createElement("div",{className:Xi.mHead},Ti.createElement("b",null),Ti.createElement("span",null,"\u8D44\u6E90","\uFF08",mt.length,"\uFF09"),Ti.createElement("div",{onClick:()=>{gt(!0),_t(""),je("")},className:Xi.btn},Ti.createElement("i",{className:"iconfont icon-tianjiatixing"}),"\u6DFB\u52A0")),Ti.createElement("div",{className:Xi.body},mt==null?void 0:mt.map((Cn,xn)=>{var Ln,nr;return Ti.createElement(on,{showDelete:!((Ln=me==null?void 0:me.map(An=>An==null?void 0:An.id))!=null&&Ln.includes(Cn==null?void 0:Cn.id))&&!((nr=Vr.map(An=>An.name))!=null&&nr.includes(Cn.name)),modal:!0,style:{cursor:"pointer"},active:me==null?void 0:me.map(An=>An==null?void 0:An.id).includes(Cn==null?void 0:Cn.id),key:Cn==null?void 0:Cn.id,values:Cn==null?void 0:Cn.id,title:Cn==null?void 0:Cn.name})}),st&&Ti.createElement("div",{className:Xi.add},Ti.createElement(xe.default,{style:{width:"rem"},size:"large",value:We,onChange:Cn=>{_t(""),je(Cn.target.value)}}),Ti.createElement("i",{onClick:()=>tr(2),className:"iconfont icon-dui",style:{color:"#1B8565"}}),Ti.createElement("i",{onClick:()=>gt(!1),className:"iconfont icon-shanchu10",style:{color:"#9096A3"}}),!!Lt&&Ti.createElement("div",{className:Xi.error},Lt))))))},va=Ie(1710),Ri=Ie(65450),pi=Ie(59301),xo=Object.getOwnPropertySymbols,lo=Object.prototype.hasOwnProperty,Bi=Object.prototype.propertyIsEnumerable,ho=(E,a)=>{var y={};for(var x in E)lo.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&xo)for(var x of xo(E))a.indexOf(x)<0&&Bi.call(E,x)&&(y[x]=E[x]);return y},po=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},ee=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});let ds=[{label:"\u5B9E\u8BAD",key:"1"},{label:"\u89C6\u9891",key:"2"},{label:"\u8BFE\u4EF6",key:"3"},{label:"\u8BD5\u5377",key:"4"}];const Fo=E=>{var a=E,{types:y,globalSetting:x,loading:b,dispatch:z,pathsDetail:ee,onChange:re,ktzykey:ae,getother:se}=a,fe=ho(a,["types","globalSetting","loading","dispatch","pathsDetail","onChange","ktzykey","getother"]),me,Ee,Oe,ke;let[We,je]=(0,Fe.useState)({page:1,limit:10,type:y,keyword:"",select_type:1,subject_id:"",course_id:""});const[Ke,Ze]=(0,Fe.useState)([]);(0,Fe.useEffect)(()=>{Je()},[y]);function Je(){return po(this,null,function*(){We.select_type===3&&(We.subject_id="",We.course_id=""),We.select_type===2&&(We.subject_id=""),We.select_type===1&&(We.course_id="");let tt=yield(0,te.ZP)("/api/paths/search_all.json",{method:"get",params:We});(tt==null?void 0:tt.status)===0&&Ze(tt)})}return pi.createElement("div",{style:{padding:"10rem 20rem"}},pi.createElement("div",{style:{display:"flex"}},pi.createElement("div",null,y==="1"&&pi.createElement(xe.default,{placeholder:"\u8BF7\u8F93\u5165\u5173\u952E\u8BCD\u67E5\u8BE2",style:{width:"992rem",marginRight:"10rem",height:"40rem"},onChange:tt=>{We.keyword=tt.target.value,We.page=1,We.limit=10,je(We)}}),y!=="1"&&pi.createElement("div",{style:{display:"flex"}},pi.createElement("div",{style:{width:"223rem",alignItems:"center",display:"flex",height:"40rem"}},pi.createElement("span",{style:{width:"92rem",border:"1rem solid #DCDCDC",borderRightStyle:"none",background:"#F6F7F9",height:"40rem",display:"flex",alignItems:"center",justifyContent:"center",lineHeight:"40rem",fontSize:"16rem",color:"#666666"}},"\u6240\u5728\u4F4D\u7F6E"),pi.createElement(rr.default,{value:We.select_type,onChange:tt=>{We.select_type=tt,We.page=1,We.limit=10,je(We),Je()},className:Zr.select,style:{width:"131rem"}},pi.createElement(rr.default.Option,{value:1},"\u5B9E\u8DF5\u8BFE\u7A0B"),pi.createElement(rr.default.Option,{value:2},"\u6559\u5B66\u8BFE\u5802"),pi.createElement(rr.default.Option,{value:3},"\u4E2A\u4EBA\u4E2D\u5FC3"))),We.select_type!==3&&pi.createElement(rr.default,{value:We.subject_id||We.course_id,onChange:tt=>{We.course_id=tt,We.subject_id=tt,We.page=1,We.limit=10,je(We),Je()},className:Zr.select,style:{width:"270rem",marginLeft:"8rem"}},We.select_type===1&&((me=Ke==null?void 0:Ke.subjects)==null?void 0:me.map(tt=>pi.createElement(rr.default.Option,{value:tt.id},tt.name))),We.select_type===2&&((Ee=Ke==null?void 0:Ke.courses)==null?void 0:Ee.map(tt=>pi.createElement(rr.default.Option,{value:tt.id},tt.name)))),pi.createElement(xe.default,{onChange:tt=>{We.keyword=tt.target.value,We.page=1,We.limit=10,je(We)},addonBefore:((Oe=ds==null?void 0:ds.find(tt=>tt.key===y))==null?void 0:Oe.label)+"\u540D\u79F0",className:Zr.input,style:{marginLeft:"10rem",width:"486rem",height:"40rem"}}))),pi.createElement(ge.ZP,{type:"primary",style:{height:"40rem",fontSize:"14rem",boxShadow:"none",lineHeight:"40rem",width:"108rem",padding:"0",marginLeft:"10rem"},onClick:()=>{Je()}},"\u67E5\u8BE2")),pi.createElement(va.default,{style:{marginTop:"10rem"},dataSource:Ke==null?void 0:Ke.data,pagination:!1,rowKey:tt=>tt.id,scroll:{y:"400rem"},columns:[{title:((ke=ds==null?void 0:ds.find(tt=>tt.key===y))==null?void 0:ke.label)+"\u540D\u79F0",dataIndex:"name",ellipsis:!0,key:"name"},{title:y==="1"?"\u5408\u4F5C\u8005":"\u6240\u5C5E\u6A21\u5757",dataIndex:"name",key:"name",ellipsis:!0,render:(tt,st)=>pi.createElement("span",null,y==="1"?st==null?void 0:st.user_names:st==null?void 0:st.model)},{title:y==="1"?"\u6700\u8FD1\u4FEE\u6539\u65F6\u95F4":"\u6240\u5728\u4F4D\u7F6E",dataIndex:"updated_at",ellipsis:!0,render:(tt,st)=>pi.createElement("span",null,y==="1"?st==null?void 0:st.updated_at:st==null?void 0:st.stage_name)},{title:"\u64CD\u4F5C",dataIndex:"url",width:"100rem",render:(tt,st)=>pi.createElement("a",{onClick:()=>{(st==null?void 0:st.container_type)==="Video"?Pe.default.confirm({icon:null,title:"\u89C6\u9891\u64AD\u653E",centered:!0,closable:!0,footer:!1,width:600,content:pi.createElement(Ri.Z,{allow_skip:!0,src:tt})}):y==="3"?se(tt):window.open(tt)}},"\u67E5\u770B")}],rowSelection:{type:"radio",onChange(tt,st){re(st)}}}),pi.createElement(ln.Z,{hideOnSinglePage:!0,style:{marginTop:"20rem"},total:Ke==null?void 0:Ke.total_count,current:We==null?void 0:We.page,pageSize:We==null?void 0:We.limit,onChange:(tt,st)=>{We.page=tt,We.limit=st,je(We),Je()}}))};var fs=(0,Ce.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(Fo),Gs=Ie(84105),Jr=Ie(59301),ya=Object.defineProperty,za=Object.defineProperties,Ga=Object.getOwnPropertyDescriptors,Hi=Object.getOwnPropertySymbols,Io=Object.prototype.hasOwnProperty,us=Object.prototype.propertyIsEnumerable,hs=(E,a,y)=>a in E?ya(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,Ws=(E,a)=>{for(var y in a||(a={}))Io.call(a,y)&&hs(E,y,a[y]);if(Hi)for(var y of Hi(a))us.call(a,y)&&hs(E,y,a[y]);return E},js=(E,a)=>za(E,Ga(a)),zl=(E,a)=>{var y={};for(var x in E)Io.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&Hi)for(var x of Hi(E))a.indexOf(x)<0&&us.call(E,x)&&(y[x]=E[x]);return y},al=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},ee=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const yo=E=>{var a=E,{typesdata:y,globalSetting:x,loading:b,dispatch:z,pathsDetail:ee,onChange:re,uuid:ae,itemsuuid:se}=a,fe=zl(a,["typesdata","globalSetting","loading","dispatch","pathsDetail","onChange","uuid","itemsuuid"]),me,Ee,Oe,ke,We,je,Ke,Ze,Je,tt,st,gt;let[mt,ct]=(0,Fe.useState)([]),[Lt,_t]=(0,Fe.useState)(!1);const[Yt,$t]=(0,Fe.useState)([]),[En,on]=(0,Fe.useState)(""),[Fn,tr]=(0,Fe.useState)(""),[Cn,xn]=(0,Fe.useState)([]),[Ln,nr]=(0,Fe.useState)(!1);let[An,fr]=(0,Fe.useState)({bh:[],qx:[],hx:[],gl:[]});(0,Fe.useEffect)(()=>{ra()},[ae]),(0,Fe.useEffect)(()=>{if(y){let Sr=JSON.parse(sessionStorage.getItem("typesdatajsoncopy"));fr(Sr)}return()=>{}},[y]);function ra(){return al(this,null,function*(){var Sr,Kr,pa,Ua,ei,Co;_t(!0);let Eo=yield(0,te.ZP)("/api/knowledge/v2/get_node.json",{method:"get",params:{nodeUuid:ae,subject_id:(Sr=ee==null?void 0:ee.detail)==null?void 0:Sr.id,depth:-1,relationshipFilter:"\u5305\u542B>"}});if(_t(!1),(Eo==null?void 0:Eo.status)===0){$t(Eo==null?void 0:Eo.data);const to=[...(0,ht.fX)((pa=(Kr=Eo==null?void 0:Eo.data)==null?void 0:Kr.nodes)==null?void 0:pa.map((ji,so)=>{var Ao,ss;return js(Ws({},ji),{key:(Ao=ji==null?void 0:ji.properties)==null?void 0:Ao.uuid,title:(ss=ji==null?void 0:ji.properties)==null?void 0:ss.name})}),(Co=(ei=(Ua=Eo==null?void 0:Eo.data)==null?void 0:Ua.relationships)==null?void 0:ei.filter(ji=>ji.type==="\u5305\u542B"||ji.type==="\u524D\u5E8F"))==null?void 0:Co.filter((ji,so,Ao)=>so===Ao.findIndex(ss=>ss.endNodeUuid===ji.endNodeUuid))).children||[]];mt=to,tr(JSON.stringify(to)),ct(to)}})}(0,Fe.useEffect)(()=>{re(An)},[An]);function aa(Sr,Kr,pa){for(let Ua of Sr)Ua!=null&&Ua.title.includes(Kr)&&pa.push(Ua),Ua.children&&Ua.children.length>0&&(aa(Ua.children,Kr,pa),Gr(Ua.children,Kr,pa)&&pa.push(Ua))}function Gr(Sr,Kr,pa){for(let Ua of Sr)if(Ua!=null&&Ua.title.includes(Kr))return!0}return Jr.createElement(ce.Z,{spinning:Lt},Jr.createElement("div",{className:Zr.body},Jr.createElement("div",{className:Zr.left},Jr.createElement("div",{className:Zr.header},Jr.createElement("div",null,"\u5171",Jr.createElement("span",{style:{color:"#1B8565"}},((Ee=(me=Yt==null?void 0:Yt.metricCounters)==null?void 0:me[0])==null?void 0:Ee.count)||0),"\u4E2A\u6807\u7B7E\u8282\u70B9\uFF0C",Jr.createElement("span",{style:{color:"#1B8565"}},((ke=(Oe=Yt==null?void 0:Yt.metricCounters)==null?void 0:Oe[1])==null?void 0:ke.count)||0),"\u4E2A\u77E5\u8BC6\u8282\u70B9"),Jr.createElement(xe.default.Search,{style:{width:"350rem",borderRadius:"50%"},onChange:Sr=>{var Kr,pa,Ua;const{value:ei}=Sr.target;on(ei);let Co=[];aa(JSON.parse(Fn),ei,Co),Co.push((Kr=Yt==null?void 0:Yt.nodes)==null?void 0:Kr[0]);const Eo=Yt==null?void 0:Yt.nodes.filter(ji=>{var so;return((so=ji==null?void 0:ji.properties)==null?void 0:so.name.indexOf(ei))>-1}).map(ji=>{var so;return(so=ji==null?void 0:ji.properties)==null?void 0:so.uuid});xn(Eo);const to=[...(0,ht.fX)(Co,(Ua=(pa=Yt==null?void 0:Yt.relationships)==null?void 0:pa.filter(ji=>ji.type==="\u5305\u542B"||ji.type==="\u524D\u5E8F"))==null?void 0:Ua.filter((ji,so,Ao)=>so===Ao.findIndex(ss=>ss.endNodeUuid===ji.endNodeUuid)).filter(ji=>(Co==null?void 0:Co.map(so=>so==null?void 0:so.key).includes(ji.endNodeUuid))||(Co==null?void 0:Co.map(so=>so==null?void 0:so.key).includes(ji.startNodeUuid)))).children||[]];mt=to,ct(to),nr(!0)},placeholder:"\u8BF7\u8F93\u5165\u5173\u952E\u8BCD\u641C\u7D22"})),Jr.createElement(mr.default,{style:{marginTop:"30rem",maxHeight:"320rem",overflow:"auto"},showLine:!0,treeData:mt,className:Zr.tree,expandedKeys:Cn,onExpand:Sr=>{xn(Sr),nr(!1)},autoExpandParent:Ln,blockNode:!0,switcherIcon:Jr.createElement(Gs.Z,null),titleRender:Sr=>{var Kr,pa,Ua,ei,Co,Eo,ti,to,ji,so,Ao,ss,Qo,Ei,ki;return Jr.createElement("div",{className:Zr.treenode,key:(Kr=Sr==null?void 0:Sr.properties)==null?void 0:Kr.uuid},Jr.createElement("div",{style:{width:"50%",display:"flex",alignItems:"center"}},((pa=An==null?void 0:An.bh)==null?void 0:pa.find(Sa=>{var _a;return(Sa==null?void 0:Sa.uuid)===((_a=Sr==null?void 0:Sr.properties)==null?void 0:_a.uuid)}))&&Jr.createElement("span",{className:Zr.settingtag,style:{background:"#6236ff"}},"\u5305\u542B"),((Ua=An==null?void 0:An.qx)==null?void 0:Ua.find(Sa=>{var _a;return(Sa==null?void 0:Sa.uuid)===((_a=Sr==null?void 0:Sr.properties)==null?void 0:_a.uuid)}))&&Jr.createElement("span",{className:Zr.settingtag,style:{background:"#24A881"}},"\u524D\u7F6E"),((ei=An==null?void 0:An.hx)==null?void 0:ei.find(Sa=>{var _a;return(Sa==null?void 0:Sa.uuid)===((_a=Sr==null?void 0:Sr.properties)==null?void 0:_a.uuid)}))&&Jr.createElement("span",{className:Zr.settingtag,style:{background:"#EC8657"}},"\u540E\u7F6E"),((Co=An==null?void 0:An.gl)==null?void 0:Co.find(Sa=>{var _a;return(Sa==null?void 0:Sa.uuid)===((_a=Sr==null?void 0:Sr.properties)==null?void 0:_a.uuid)}))&&Jr.createElement("span",{className:Zr.settingtag,style:{background:"#497DFF"}},"\u5173\u8054"),Jr.createElement("div",{className:Zr.multiple,title:Sr==null?void 0:Sr.title,dangerouslySetInnerHTML:{__html:(Eo=Sr==null?void 0:Sr.title)==null?void 0:Eo.replaceAll(En,`${En}`)},style:{width:"100%",fontSize:"14rem",color:"#000",fontWeight:400}})),Jr.createElement("div",{className:Zr.hudong},!((ti=An==null?void 0:An.qx)!=null&&ti.find(Sa=>{var _a;return(Sa==null?void 0:Sa.uuid)===((_a=Sr==null?void 0:Sr.properties)==null?void 0:_a.uuid)})||(to=An==null?void 0:An.bh)!=null&&to.find(Sa=>{var _a;return(Sa==null?void 0:Sa.uuid)===((_a=Sr==null?void 0:Sr.properties)==null?void 0:_a.uuid)})||(ji=An==null?void 0:An.hx)!=null&&ji.find(Sa=>{var _a;return(Sa==null?void 0:Sa.uuid)===((_a=Sr==null?void 0:Sr.properties)==null?void 0:_a.uuid)})||(so=An==null?void 0:An.gl)!=null&&so.find(Sa=>{var _a;return(Sa==null?void 0:Sa.uuid)===((_a=Sr==null?void 0:Sr.properties)==null?void 0:_a.uuid)}))&&se!==((Ao=Sr==null?void 0:Sr.properties)==null?void 0:Ao.uuid)&&Jr.createElement("div",null,Jr.createElement("span",{onClick:()=>{var Sa,_a,ni,Ki;if(!(((_a=(Sa=An==null?void 0:An.bh)==null?void 0:Sa.filter(Ma=>{var mo;return(Ma==null?void 0:Ma.uuid)===((mo=Sr==null?void 0:Sr.properties)==null?void 0:mo.uuid)}))==null?void 0:_a.length)>0)){let Ma=[];Ma.push({name:(ni=Sr==null?void 0:Sr.properties)==null?void 0:ni.name,uuid:(Ki=Sr==null?void 0:Sr.properties)==null?void 0:Ki.uuid}),fr({bh:[...Ma,...An==null?void 0:An.bh],qx:An==null?void 0:An.qx,hx:An==null?void 0:An.hx,gl:An==null?void 0:An.gl})}},className:Zr.colortitle,style:{marginRight:"20rem"}},"\u8BBE\u4E3A\u5305\u542B"),Jr.createElement("span",{onClick:()=>{var Sa,_a,ni,Ki;if(!(((_a=(Sa=An==null?void 0:An.qx)==null?void 0:Sa.filter(Ma=>{var mo;return(Ma==null?void 0:Ma.uuid)===((mo=Sr==null?void 0:Sr.properties)==null?void 0:mo.uuid)}))==null?void 0:_a.length)>0)){let Ma=[];Ma.push({name:(ni=Sr==null?void 0:Sr.properties)==null?void 0:ni.name,uuid:(Ki=Sr==null?void 0:Sr.properties)==null?void 0:Ki.uuid}),fr({qx:[...Ma,...An==null?void 0:An.qx],hx:An==null?void 0:An.hx,bh:An==null?void 0:An.bh,gl:An==null?void 0:An.gl})}},className:Zr.colortitle},"\u8BBE\u4E3A\u524D\u7F6E"),Jr.createElement("span",{onClick:()=>{var Sa,_a,ni,Ki;if(!(((_a=(Sa=An==null?void 0:An.hx)==null?void 0:Sa.filter(Ma=>{var mo;return(Ma==null?void 0:Ma.uuid)===((mo=Sr==null?void 0:Sr.properties)==null?void 0:mo.uuid)}))==null?void 0:_a.length)>0)){let Ma=[];Ma.push({name:(ni=Sr==null?void 0:Sr.properties)==null?void 0:ni.name,uuid:(Ki=Sr==null?void 0:Sr.properties)==null?void 0:Ki.uuid}),fr({qx:An==null?void 0:An.qx,hx:[...Ma,...An==null?void 0:An.hx],bh:An==null?void 0:An.bh,gl:An==null?void 0:An.gl})}},style:{margin:"0rem 20rem"},className:Zr.colortitle},"\u8BBE\u4E3A\u540E\u7F6E"),Jr.createElement("span",{onClick:()=>{var Sa,_a,ni,Ki;if(!(((_a=(Sa=An==null?void 0:An.gl)==null?void 0:Sa.filter(Ma=>{var mo;return(Ma==null?void 0:Ma.uuid)===((mo=Sr==null?void 0:Sr.properties)==null?void 0:mo.uuid)}))==null?void 0:_a.length)>0)){let Ma=[];Ma.push({name:(ni=Sr==null?void 0:Sr.properties)==null?void 0:ni.name,uuid:(Ki=Sr==null?void 0:Sr.properties)==null?void 0:Ki.uuid}),fr({qx:An==null?void 0:An.qx,hx:An==null?void 0:An.hx,gl:[...Ma,...An==null?void 0:An.gl],bh:An==null?void 0:An.bh})}},className:Zr.colortitle},"\u8BBE\u4E3A\u5173\u8054")),Jr.createElement("span",{onClick:()=>{var Sa;let _a=(Sa=An==null?void 0:An.bh)==null?void 0:Sa.filter(ni=>{var Ki;return ni.uuid!==((Ki=Sr==null?void 0:Sr.properties)==null?void 0:Ki.uuid)});fr({bh:_a,hx:An==null?void 0:An.hx,qx:An==null?void 0:An.qx,gl:An==null?void 0:An.gl})}},((ss=An==null?void 0:An.bh)==null?void 0:ss.find(Sa=>{var _a;return(Sa==null?void 0:Sa.uuid)===((_a=Sr==null?void 0:Sr.properties)==null?void 0:_a.uuid)}))&&"\u53D6\u6D88\u5305\u542B"),Jr.createElement("span",{onClick:()=>{var Sa;let _a=(Sa=An==null?void 0:An.qx)==null?void 0:Sa.filter(ni=>{var Ki;return ni.uuid!==((Ki=Sr==null?void 0:Sr.properties)==null?void 0:Ki.uuid)});fr({qx:_a,hx:An==null?void 0:An.hx,bh:An==null?void 0:An.bh,gl:An==null?void 0:An.gl})}},((Qo=An==null?void 0:An.qx)==null?void 0:Qo.find(Sa=>{var _a;return(Sa==null?void 0:Sa.uuid)===((_a=Sr==null?void 0:Sr.properties)==null?void 0:_a.uuid)}))&&"\u53D6\u6D88\u524D\u7F6E"),Jr.createElement("span",{onClick:()=>{var Sa;let _a=(Sa=An==null?void 0:An.hx)==null?void 0:Sa.filter(ni=>{var Ki;return ni.uuid!==((Ki=Sr==null?void 0:Sr.properties)==null?void 0:Ki.uuid)});fr({qx:An==null?void 0:An.qx,hx:_a,bh:An==null?void 0:An.bh,gl:An==null?void 0:An.gl})}},((Ei=An==null?void 0:An.hx)==null?void 0:Ei.find(Sa=>{var _a;return(Sa==null?void 0:Sa.uuid)===((_a=Sr==null?void 0:Sr.properties)==null?void 0:_a.uuid)}))&&"\u53D6\u6D88\u540E\u7F6E"),Jr.createElement("span",{onClick:()=>{var Sa;let _a=(Sa=An==null?void 0:An.gl)==null?void 0:Sa.filter(ni=>{var Ki;return ni.uuid!==((Ki=Sr==null?void 0:Sr.properties)==null?void 0:Ki.uuid)});fr({qx:An==null?void 0:An.qx,hx:An==null?void 0:An.hx,bh:An==null?void 0:An.bh,gl:_a})}},((ki=An==null?void 0:An.gl)==null?void 0:ki.find(Sa=>{var _a;return(Sa==null?void 0:Sa.uuid)===((_a=Sr==null?void 0:Sr.properties)==null?void 0:_a.uuid)}))&&"\u53D6\u6D88\u5173\u8054")))}})),Jr.createElement("div",{className:Zr.right},Jr.createElement("div",{className:Zr.title},"\u5DF2\u5173\u8054\u5173\u7CFB"),Jr.createElement("div",{style:{padding:"20rem 25rem"}},Jr.createElement("div",{className:Zr.gxtitle},Jr.createElement("div",{className:Zr.Colortitle,style:{background:"#6236ff"}}),Jr.createElement("div",null,"\u88AB\u5305\u542B\uFF08",(We=An.bh)==null?void 0:We.length,"\uFF09")),Jr.createElement("div",{className:Zr.gxbody},(je=An==null?void 0:An.bh)==null?void 0:je.map(Sr=>Jr.createElement("div",{className:Zr.tag,style:{background:"#6236ff"}},Jr.createElement("span",{style:{marginRight:"10rem"}},Sr==null?void 0:Sr.name)," ",Jr.createElement(oo.Z,{onClick:()=>{var Kr;let pa=(Kr=An==null?void 0:An.bh)==null?void 0:Kr.filter(Ua=>Ua.uuid!==Sr.uuid);fr({bh:pa,hx:An==null?void 0:An.hx,qx:An==null?void 0:An.qx,gl:An==null?void 0:An.gl})}})))),Jr.createElement("div",{className:Zr.gxtitle,style:{marginTop:"30rem"}},Jr.createElement("div",{className:Zr.Colortitle,style:{background:"#24A881"}}),Jr.createElement("div",null,"\u524D\u5E8F\uFF08",(Ke=An.qx)==null?void 0:Ke.length,"\uFF09")),Jr.createElement("div",{className:Zr.gxbody},(Ze=An==null?void 0:An.qx)==null?void 0:Ze.map(Sr=>Jr.createElement("div",{className:Zr.tag,style:{background:"#24A881"}},Jr.createElement("span",{style:{marginRight:"10rem"}},Sr==null?void 0:Sr.name)," ",Jr.createElement(oo.Z,{onClick:()=>{var Kr;let pa=(Kr=An==null?void 0:An.qx)==null?void 0:Kr.filter(Ua=>Ua.uuid!==Sr.uuid);fr({qx:pa,hx:An==null?void 0:An.hx,bh:An==null?void 0:An.bh,gl:An==null?void 0:An.gl})}})))),Jr.createElement("div",{className:Zr.gxtitle,style:{marginTop:"30rem"}},Jr.createElement("div",{className:Zr.Colortitle,style:{background:"#EC8657"}}),Jr.createElement("div",null,"\u540E\u5E8F\uFF08",(Je=An.hx)==null?void 0:Je.length,"\uFF09")),Jr.createElement("div",{className:Zr.gxbody},(tt=An==null?void 0:An.hx)==null?void 0:tt.map(Sr=>Jr.createElement("div",{className:Zr.tag,style:{background:"#EC8657"}},Jr.createElement("span",{style:{marginRight:"10rem"}},Sr==null?void 0:Sr.name)," ",Jr.createElement(oo.Z,{onClick:()=>{var Kr;let pa=(Kr=An==null?void 0:An.hx)==null?void 0:Kr.filter(Ua=>Ua.uuid!==Sr.uuid);fr({qx:An==null?void 0:An.qx,bh:An==null?void 0:An.bh,hx:pa,gl:An==null?void 0:An.gl})}})))),Jr.createElement("div",{className:Zr.gxtitle,style:{marginTop:"30rem"}},Jr.createElement("div",{className:Zr.Colortitle,style:{background:"#497DFF"}}),Jr.createElement("div",null,"\u5173\u8054\uFF08",(st=An.gl)==null?void 0:st.length,"\uFF09")),Jr.createElement("div",{className:Zr.gxbody},(gt=An==null?void 0:An.gl)==null?void 0:gt.map(Sr=>Jr.createElement("div",{className:Zr.tag,style:{background:"#497DFF"}},Jr.createElement("span",{style:{marginRight:"10rem"}},Sr==null?void 0:Sr.name)," ",Jr.createElement(oo.Z,{onClick:()=>{var Kr;let pa=(Kr=An==null?void 0:An.gl)==null?void 0:Kr.filter(Ua=>Ua.uuid!==Sr.uuid);fr({qx:An==null?void 0:An.qx,bh:An==null?void 0:An.bh,hx:An==null?void 0:An.hx,gl:pa})}}))))))))};var ko=(0,Ce.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(yo),gs=Ie(89392),Po=Ie(16624),is=Ie(19264),Hs=Ie(59301),Cs=Object.getOwnPropertySymbols,Ou=Object.prototype.hasOwnProperty,Pu=Object.prototype.propertyIsEnumerable,id=(E,a)=>{var y={};for(var x in E)Ou.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&Cs)for(var x of Cs(E))a.indexOf(x)<0&&Pu.call(E,x)&&(y[x]=E[x]);return y},Cf=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},ee=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const od=[3,2,1];let Lu=null;const Kd=E=>{var a=E,{pathsDetail:y,user:x,globalSetting:b,loading:z,dispatch:ee,datas:re,items:ae}=a,se=id(a,["pathsDetail","user","globalSetting","loading","dispatch","datas","items"]);const fe=(0,Fe.useRef)(),me=(0,Fe.useRef)(),Ee=(0,Fe.useRef)(null);(0,Fe.useEffect)(()=>{ke()},[re]),(0,Fe.useEffect)(()=>(window.addEventListener("resize",Oe),()=>{window.removeEventListener("resize",Oe)}),[]);function Oe(){var We,je;(je=(We=fe.current)==null?void 0:We.update)==null||je.call(We)}function ke(){return Cf(this,null,function*(){var We,je,Ke,Ze,Je,tt,st,gt;if(((We=re==null?void 0:re.nodes)==null?void 0:We.length)>0){let mt=(je=re==null?void 0:re.nodes)==null?void 0:je.filter(Lt=>{var _t;return ae==null?void 0:ae.includes((_t=Lt==null?void 0:Lt.properties)==null?void 0:_t.uuid)}).map(Lt=>{var _t,Yt,$t,En,on,Fn,tr,Cn,xn,Ln,nr,An;return{rootNodeUuid:(_t=Lt==null?void 0:Lt.properties)==null?void 0:_t.rootNodeUuid,id:((Yt=Lt==null?void 0:Lt.properties)==null?void 0:Yt.uuid)+"_",name:($t=Lt==null?void 0:Lt.properties)==null?void 0:$t.name,description:(En=Lt==null?void 0:Lt.properties)==null?void 0:En.description,nodeType:(on=Lt==null?void 0:Lt.properties)==null?void 0:on.nodeType,tags:((Fn=Lt==null?void 0:Lt.properties)==null?void 0:Fn.tags)&&((xn=(Cn=(tr=Lt==null?void 0:Lt.properties)==null?void 0:tr.tags)==null?void 0:Cn.split("\uFF0C"))==null?void 0:xn.map(fr=>({name:fr}))),colorType:parseInt((Ln=Lt==null?void 0:Lt.properties)==null?void 0:Ln.color)>3?"3":(nr=Lt==null?void 0:Lt.properties)==null?void 0:nr.color,activeColor:"#FA6400",size:od[((An=Lt==null?void 0:Lt.properties)==null?void 0:An.color)-1]||1,shape:"circle",hide:!1,isExtendedState:!0}}),ct=(tt=(Je=(Ze=(Ke=re==null?void 0:re.relationships)==null?void 0:Ke.filter(Lt=>{var _t,Yt,$t,En,on,Fn;return Lt.endNodeUuid!==(($t=(Yt=(_t=re==null?void 0:re.nodes)==null?void 0:_t[0])==null?void 0:Yt.properties)==null?void 0:$t.rootNodeUuid)&&Lt.startNodeUuid!==((Fn=(on=(En=re==null?void 0:re.nodes)==null?void 0:En[0])==null?void 0:on.properties)==null?void 0:Fn.rootNodeUuid)}))==null?void 0:Ze.filter(Lt=>(ae==null?void 0:ae.includes(Lt.startNodeUuid))&&(ae==null?void 0:ae.includes(Lt.endNodeUuid))))==null?void 0:Je.filter(Lt=>Lt.type==="\u5305\u542B"||Lt.type==="\u524D\u5E8F"||Lt.type==="\u5173\u8054"))==null?void 0:tt.map(Lt=>({hide:!1,id:(Lt==null?void 0:Lt.endNodeUuid)+"_",label:Lt==null?void 0:Lt.type,props:[],colorType:1,sourceRadius:32,targetRadius:32,source:(Lt==null?void 0:Lt.startNodeUuid)+"_",target:(Lt==null?void 0:Lt.endNodeUuid)+"_",value:10}));fe.current=null,me.current.innerHTML="",fe.current=new is.createContainer({containerName:"#graphRefs",width:((st=me==null?void 0:me.current)==null?void 0:st.clientWidth)||0,height:((gt=me==null?void 0:me.current)==null?void 0:gt.clientHeight)||0,toolbarData:[],clickToggle:!1,background:"#fff",isShowMask:!1,nodes:mt,links:ct,zoomOptions:{minScale:.2,maxScale:5},nodeMouseover:function(Lt){return Lt},nodeClick:function(Lt){var _t;return(_t=fe==null?void 0:fe.current)==null||_t.selectToNode(Lt.id),Lt},layout:{force:!1,x:20,y:60}}),fe.current.zoomOut()}})}return Hs.createElement("div",{ref:Ee,style:{background:"#fff",height:"455rem"}},Hs.createElement("div",{style:{width:"100%",height:"455rem"},ref:me,id:"graphRefs"}))};var Zd=(0,Ce.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(Kd),kc="data:image/png;base64,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",Pd="data:image/png;base64,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",Vf="data:image/png;base64,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",kh="data:image/png;base64,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",Qd=Ie(28103),_c=Ie(42441),ac=Ie(76411),Pf=Ie(48961),Bu=Ie(59301),Yd=({dataSource:E,height:a,labelTextColor:y})=>{console.log("dataSource:",E);const x=(0,Fe.useRef)(null),b=(0,Fe.useRef)(null),[z,ee]=(0,Fe.useState)({}),[re,ae]=(0,Fe.useState)(""),[se,fe]=(0,Fe.useState)(""),me=E||[{name:"\u638C\u63E1\u738780%~100%",value:1,itemStyle:{color:"rgb(223,209,38)"}},{name:"\u638C\u63D0\u738760%~79%",value:2,itemStyle:{color:"rgb(6,234,230)"}},{name:"\u638C\u63A8\u738759%\u4EE5\u4E0B",value:3,itemStyle:{color:"rgb(6,110,247)"}}];(0,Fe.useEffect)(()=>(Oe(),window.addEventListener("resize",Ee),()=>{window.removeEventListener("resize",Ee)}),[]),(0,Fe.useEffect)(()=>{E!=null&&E.length&&Ee()},[E]);const Ee=()=>{var Je,tt;const st=ke(me,.8);(Je=b.current)==null||Je.setOption(st),(tt=b.current)==null||tt.resize()},Oe=()=>{const Je=x.current;b.current=ac.init(Je);const tt=ke(me,.8);ee(tt),b.current.setOption(tt),b.current.getZr().off("mousewheel"),tt.series.push({name:"\u638C\u63E1\u7387",type:"pie",labelLine:{length:10,length2:10},startAngle:-20,clockwise:!1,radius:["20%","50%"],center:["50%","50%"],data:me,itemStyle:{opacity:0}}),b.current.setOption(tt),Ze(b.current)},ke=(Je,tt)=>{let st,gt=[],mt=0,ct=0,Lt=0,_t=[],Yt=[],$t=1-tt;Je.sort((on,Fn)=>Fn.value-on.value);for(let on=0;onCn.name===on)[0],tr=Ke(Fn.value*100,2)+"%";return`${Fn.name} ${tr}`}},labelLine:{show:!0,lineStyle:{color:"#7BC0CB"}},label:{show:!0,position:"outside",rich:{b:{color:y||"#FFF",fontSize:12,lineHeight:20},c:{fontSize:16,lineHeight:24,color:y||"#FFF"}},formatter:`{b|{b} }{c|{c}}{b|}`},xAxis3D:{min:-1,max:1},yAxis3D:{min:-1,max:1},zAxis3D:{min:-1,max:1},grid3D:{show:!1,boxHeight:En,viewControl:{alpha:40,distance:300,rotateSensitivity:0,zoomSensitivity:0,panSensitivity:0,autoRotate:!1}},series:gt}},We=(Je,tt)=>(Je.sort((st,gt)=>gt.pieData.value-st.pieData.value),tt*25/Je[0].pieData.value),je=(Je,tt,st,gt,mt,ct)=>{let Lt=(Je+tt)/2,_t=Je*Math.PI*2,Yt=tt*Math.PI*2,$t=Lt*Math.PI*2;Je===0&&tt===1&&(st=!1),mt=typeof mt!="undefined"?mt:1/3;let En=st?Math.cos($t)*.1:0,on=st?Math.sin($t)*.1:0,Fn=gt?1.05:1;return{u:{min:-Math.PI,max:Math.PI*3,step:Math.PI/32},v:{min:0,max:Math.PI*2,step:Math.PI/20},x:function(tr,Cn){return tr<_t?En+Math.cos(_t)*(1+Math.cos(Cn)*mt)*Fn:tr>Yt?En+Math.cos(Yt)*(1+Math.cos(Cn)*mt)*Fn:En+Math.cos(tr)*(1+Math.cos(Cn)*mt)*Fn},y:function(tr,Cn){return tr<_t?on+Math.sin(_t)*(1+Math.cos(Cn)*mt)*Fn:tr>Yt?on+Math.sin(Yt)*(1+Math.cos(Cn)*mt)*Fn:on+Math.sin(tr)*(1+Math.cos(Cn)*mt)*Fn},z:function(tr,Cn){return tr<-Math.PI*.5?Math.sin(tr):tr>Math.PI*2.5?Math.sin(tr)*ct*.1:Math.sin(Cn)>0?1*ct*.1:-1}}},Ke=(Je,tt)=>{let st=parseFloat(Je);if(isNaN(st))return!1;st=Math.round(Je*Math.pow(10,tt))/Math.pow(10,tt);let gt=st.toString();gt.indexOf(".")<0&&(gt+=".");for(let ct=gt.length-gt.indexOf(".");ct<=tt;ct++)gt+="0";return gt},Ze=()=>{b.current.on("click",function(Je){if(Je.seriesName==="pie2d"){ae(Je.dataIndex);let tt=b.current.getWidth()/2,st=b.current.getHeight()/2;b.current.dispatchAction({type:"pieSelect",seriesIndex:0,dataIndex:Je.dataIndex})}}),b.current.on("mousemove",function(Je){}),b.current.on("mouseout",function(){b.current.dispatchAction({type:"pieUnSelect",seriesIndex:0,dataIndex:se}),fe("")})};return Bu.createElement("div",{ref:x,style:{width:"100%",height:a||"500rem"}})};const sd=E=>({tooltip:{trigger:"item"},legend:{top:"0%",left:"center"},series:[{name:"\u5B8C\u6210\u5360\u6BD4\u60C5\u51B5",type:"pie",radius:["40%","70%"],avoidLabelOverlap:!1,itemStyle:{borderRadius:10,borderColor:"#fff",borderWidth:2},label:{show:!1,position:"center"},emphasis:{label:{show:!0,fontSize:14,fontWeight:"bold"}},labelLine:{show:!1},data:E}]});var Xd=Ie(79304),Wo=Ie(59301),wf=Object.defineProperty,mc=Object.getOwnPropertySymbols,Jd=Object.prototype.hasOwnProperty,qd=Object.prototype.propertyIsEnumerable,Ll=(E,a,y)=>a in E?wf(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,Mf=(E,a)=>{for(var y in a||(a={}))Jd.call(a,y)&&Ll(E,y,a[y]);if(mc)for(var y of mc(a))qd.call(a,y)&&Ll(E,y,a[y]);return E},Kf=(E,a)=>{var y={};for(var x in E)Jd.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&mc)for(var x of mc(E))a.indexOf(x)<0&&qd.call(E,x)&&(y[x]=E[x]);return y},zc=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},ee=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const ic=[{name:"",value:0,itemStyle:{color:"rgb(223,209,38)"}},{name:"",value:0,itemStyle:{color:"rgb(6,234,230)"}},{name:"",value:0,itemStyle:{color:"rgb(6,110,247)"}}],$d=E=>{var a=E,{pathsDetail:y,user:x,globalSetting:b,loading:z,dispatch:ee,uuid:re}=a,ae=Kf(a,["pathsDetail","user","globalSetting","loading","dispatch","uuid"]),se,fe,me,Ee,Oe;let[ke,We]=(0,Fe.useState)({subject_id:(se=y==null?void 0:y.detail)==null?void 0:se.id,course_id:"",parentNodeUuid:re,type:1});const[je,Ke]=(0,Fe.useState)(),[Ze,Je]=(0,Fe.useState)([]),[tt,st]=(0,Fe.useState)([]),[gt]=(0,Ce.useSearchParams)();(0,Fe.useEffect)(()=>{mt()},[re]);function mt(){return zc(this,null,function*(){var ct,Lt,_t;let Yt=yield(0,te.ZP)("/api/knowledge/v2/knowledge_statistics.json",{method:"get",params:ke});Ke(Yt);let $t=Object.entries((ct=Yt==null?void 0:Yt.data)==null?void 0:ct.study_grasp_hash).map(([on,Fn],tr)=>({name:on,value:Fn,itemStyle:ic[tr].itemStyle})),En=Object.entries((Lt=Yt==null?void 0:Yt.data)==null?void 0:Lt.study_complete_hash).map(([on,Fn],tr)=>({name:on,value:Fn}));st(En),((_t=$t==null?void 0:$t.filter(on=>(on==null?void 0:on.value)>0))==null?void 0:_t.length)===0?Je([]):Je($t)})}return Wo.createElement("div",{className:Zr.DetailStatistics},gt.get("type")!=="classrooms"&&Wo.createElement("div",{className:Zr.header},Wo.createElement("span",{className:Zr.title},"\u7EDF\u8BA1\u8303\u56F4"),Wo.createElement(pe.ZP.Group,{onChange:ct=>{ke.type=ct.target.value,We(Mf({},ke)),mt()},value:ke.type},Wo.createElement(pe.ZP,{value:1},"\u5168\u90E8"),Wo.createElement(pe.ZP,{value:2},"\u81EA\u4E3B\u5B66\u4E60"),Wo.createElement(pe.ZP,{value:3},"\u8BFE\u5802\u5B66\u4E60")),(ke==null?void 0:ke.type)===3&&Wo.createElement(rr.default,{onChange:ct=>{ke.course_id=ct,We(Mf({},ke)),mt()},style:{marginLeft:"-15rem",width:"148rem",height:"36rem"}},(fe=je==null?void 0:je.courses)==null?void 0:fe.map(ct=>Wo.createElement(rr.default.Option,{value:ct==null?void 0:ct.id},ct==null?void 0:ct.name)))),Wo.createElement("div",{style:{marginTop:"16rem",display:"flex"}},Wo.createElement("div",{className:Zr.left,style:{backgroundImage:`url(${kc}),linear-gradient(180deg, rgba(221, 233, 241, 0.4) 0%, rgba(255, 255, 255, 0.49) 100%)`}},Wo.createElement("img",{src:Pd}),Wo.createElement("div",{style:{marginTop:"20rem"}},Wo.createElement("div",{className:Zr.xxrs},"\u5B66\u4E60\u4EBA\u6570"),Wo.createElement("div",{className:Zr.xxrscount},(me=je==null?void 0:je.data)==null?void 0:me.study_count))),Wo.createElement("div",{className:Zr.right},Wo.createElement("div",{className:Zr.righttop},Wo.createElement("img",{src:Vf}),Wo.createElement("div",null,Wo.createElement("div",{className:Zr.xxrs},"\u5B66\u4E60\u5B8C\u6210\u7387"),Wo.createElement("div",{className:Zr.xxrscount},(Ee=je==null?void 0:je.data)==null?void 0:Ee.study_complete_rate,"%"))),Wo.createElement("div",{className:Zr.rightbottom},Wo.createElement("img",{src:kh}),Wo.createElement("div",null,Wo.createElement("div",{className:Zr.xxrs},"\u5B66\u4E60\u638C\u63E1\u7387"),Wo.createElement("div",{className:Zr.xxrscount},(Oe=je==null?void 0:je.data)==null?void 0:Oe.study_grasp_rate,"%"))))),Wo.createElement(Qd.Z,{variant:"dashed",style:{borderColor:"#333333"},dashed:!0},"\u5B8C\u6210\u5360\u6BD4\u60C5\u51B5"),Wo.createElement(_c.Z,{option:sd(tt),style:{height:300,width:400},opts:{renderer:"svg"}}),Wo.createElement(Qd.Z,{variant:"dashed",style:{borderColor:"#333333"},dashed:!0},"\u638C\u63A7\u7387"),(Ze==null?void 0:Ze.length)>0?Wo.createElement(Yd,{labelTextColor:"#333",dataSource:Ze}):Wo.createElement(Xd.J,{children:Wo.createElement("div",{style:{textAlign:"center",fontSize:"14rem"}},"\u6682\u65E0\u638C\u63A7\u7387\u6570\u636E")}))};var Xl=(0,Ce.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))($d),Bo=Ie(59301),su=Object.defineProperty,Uc=Object.getOwnPropertySymbols,ef=Object.prototype.hasOwnProperty,Zf=Object.prototype.propertyIsEnumerable,wu=(E,a,y)=>a in E?su(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,tf=(E,a)=>{for(var y in a||(a={}))ef.call(a,y)&&wu(E,y,a[y]);if(Uc)for(var y of Uc(a))Zf.call(a,y)&&wu(E,y,a[y]);return E},nf=(E,a)=>{var y={};for(var x in E)ef.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&Uc)for(var x of Uc(E))a.indexOf(x)<0&&Zf.call(E,x)&&(y[x]=E[x]);return y},Df=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},ee=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const Qf=[{name:"",value:0,itemStyle:{color:"rgb(223,209,38)"}},{name:"",value:0,itemStyle:{color:"rgb(6,234,230)"}},{name:"",value:0,itemStyle:{color:"rgb(6,110,247)"}}],Yf=E=>{var a=E,{pathsDetail:y,user:x,globalSetting:b,loading:z,dispatch:ee,uuid:re}=a,ae=nf(a,["pathsDetail","user","globalSetting","loading","dispatch","uuid"]),se,fe,me,Ee,Oe;let[ke,We]=(0,Fe.useState)({subject_id:(se=y==null?void 0:y.detail)==null?void 0:se.id,course_id:"",parentNodeUuid:re,type:1});const[je,Ke]=(0,Fe.useState)(),[Ze,Je]=(0,Fe.useState)([]),[tt]=(0,Ce.useSearchParams)(),[st,gt]=(0,Fe.useState)([]);(0,Fe.useEffect)(()=>{mt()},[re]);function mt(){return Df(this,null,function*(){var ct,Lt,_t;let Yt=yield(0,te.ZP)("/api/knowledge/v2/knowledge_statistics.json",{method:"get",params:ke});Ke(Yt);let $t=Object.entries((ct=Yt==null?void 0:Yt.data)==null?void 0:ct.study_grasp_hash).map(([on,Fn],tr)=>({name:on,value:Fn,itemStyle:Qf[tr].itemStyle})),En=Object.entries((Lt=Yt==null?void 0:Yt.data)==null?void 0:Lt.study_complete_hash).map(([on,Fn],tr)=>({name:on,value:Fn}));gt(En),((_t=$t==null?void 0:$t.filter(on=>(on==null?void 0:on.value)>0))==null?void 0:_t.length)===0?Je([]):Je($t)})}return Bo.createElement("div",{className:Zr.DetailStatistics},tt.get("type")!=="classrooms"&&Bo.createElement("div",{className:Zr.header},Bo.createElement("span",{className:Zr.title},"\u7EDF\u8BA1\u8303\u56F4"),Bo.createElement(pe.ZP.Group,{onChange:ct=>{ke.type=ct.target.value,We(tf({},ke)),mt()},value:ke.type},Bo.createElement(pe.ZP,{value:1},"\u5168\u90E8"),Bo.createElement(pe.ZP,{value:2},"\u81EA\u4E3B\u5B66\u4E60"),Bo.createElement(pe.ZP,{value:3},"\u8BFE\u5802\u5B66\u4E60")),(ke==null?void 0:ke.type)===3&&Bo.createElement(rr.default,{onChange:ct=>{ke.course_id=ct,We(tf({},ke)),mt()},style:{marginLeft:"-15rem",width:"148rem",height:"36rem"}},(fe=je==null?void 0:je.courses)==null?void 0:fe.map(ct=>Bo.createElement(rr.default.Option,{value:ct==null?void 0:ct.id},ct==null?void 0:ct.name)))),Bo.createElement("div",{style:{marginTop:"16rem",display:"flex"}},Bo.createElement("div",{className:Zr.left,style:{backgroundImage:`url(${kc}),linear-gradient(180deg, rgba(221, 233, 241, 0.4) 0%, rgba(255, 255, 255, 0.49) 100%)`}},Bo.createElement("img",{src:Pd}),Bo.createElement("div",{style:{marginTop:"20rem"}},Bo.createElement("div",{className:Zr.xxrs},"\u5B66\u4E60\u4EBA\u6570"),Bo.createElement("div",{className:Zr.xxrscount},(me=je==null?void 0:je.data)==null?void 0:me.study_count))),Bo.createElement("div",{className:Zr.right},Bo.createElement("div",{className:Zr.righttop},Bo.createElement("img",{src:Vf}),Bo.createElement("div",null,Bo.createElement("div",{className:Zr.xxrs},"\u5B66\u4E60\u5B8C\u6210\u7387"),Bo.createElement("div",{className:Zr.xxrscount},(Ee=je==null?void 0:je.data)==null?void 0:Ee.study_complete_rate,"%"))),Bo.createElement("div",{className:Zr.rightbottom},Bo.createElement("img",{src:kh}),Bo.createElement("div",null,Bo.createElement("div",{className:Zr.xxrs},"\u5B66\u4E60\u638C\u63E1\u7387"),Bo.createElement("div",{className:Zr.xxrscount},(Oe=je==null?void 0:je.data)==null?void 0:Oe.study_grasp_rate,"%"))))),Bo.createElement(Qd.Z,{variant:"dashed",style:{borderColor:"#333333"},dashed:!0},"\u5B8C\u6210\u5360\u6BD4\u60C5\u51B5"),Bo.createElement(_c.Z,{option:sd(st),style:{height:300,width:400},opts:{renderer:"svg"}}),Bo.createElement(Qd.Z,{variant:"dashed",style:{borderColor:"#333333"},dashed:!0},"\u638C\u63A7\u7387"),(Ze==null?void 0:Ze.length)>0?Bo.createElement(Yd,{labelTextColor:"#333",dataSource:Ze}):Bo.createElement(yr.Z,{children:Bo.createElement("div",{style:{textAlign:"center",fontSize:"14rem"}},"\u6682\u65E0\u638C\u63A7\u7387\u6570\u636E")}))};var Hg=(0,Ce.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(Yf),Bl=Ie(48909),Xf="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAAXNSR0IArs4c6QAAAXlJREFUOE/VlD1Lw1AUhp+YmkGQSnFR8AcUoSJ+LiKCqINQqIODbk51ETpaVHTyD6h/QQddXMRNRal1qLaDOhSFQicdiiKUNrkSmzQxH6WCg2a6Iec+7z3ve24kIYTMLz7SPwSmozPI2h6InroTkqQvywjOQNlm4PDczyV3yxfDT4AFa97fAmhxN/C0u9o8w6wUtYUkFdzAk1CVyC4E+x3cr7YBY7NTtZSB7DLewKF9Xa4xwAnUfU7P+wBHjjy6dgqY77a2r2MG8GV9CaQdhAhYJI8NnuYqEBgFqQ1SswawmEiCttnQIxfMdmKlD5QIXE0ZwMJKGPUjV0uqyYzNbPR6OQTBRbgct3mYX7hDiN46zr7BHq6fYGccUlEb8GFuDaFuuKbCNwtDURgFHdOQTdqA97Ewlfec75xZ99DbE6ULno8dY5MZs9r2mV/fbPQPr3kH8GZwFVXd+lE4doXyW/H7TbmdaKf0eIBWmQRamszbLNOQWxN//wf7CYUnn95U81GtAAAAAElFTkSuQmCC",Ul=Ie(6455),Qr=Ie(59301),rf=Object.defineProperty,pc=Object.defineProperties,lu=Object.getOwnPropertyDescriptors,yc=Object.getOwnPropertySymbols,uu=Object.prototype.hasOwnProperty,ld=Object.prototype.propertyIsEnumerable,Wc=(E,a,y)=>a in E?rf(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,Jl=(E,a)=>{for(var y in a||(a={}))uu.call(a,y)&&Wc(E,y,a[y]);if(yc)for(var y of yc(a))ld.call(a,y)&&Wc(E,y,a[y]);return E},Jf=(E,a)=>pc(E,lu(a)),Wl=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},ee=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const qf=[{name:"\u57FA\u672C\u4FE1\u606F",key:1},{name:"\u5B66\u4E60\u7EDF\u8BA1",key:3}];let _h=[{name:"\u4F5C\u4E1A",id:"zy",item_type:2},{name:"\u5B9E\u8BAD",id:"sx",item_type:2},{name:"\u6559\u6750",id:"jc",item_type:2},{name:"\u89C6\u9891",id:"sp",item_type:2},{name:"\u8BFE\u4EF6",id:"kj",item_type:2},{name:"\u8BD5\u5377",id:"sj",item_type:2},{name:"\u9898\u96C6",id:"tj",item_type:2}],zh=[{name:"\u7AE0\u8282",id:"zj",item_type:1},{name:"\u77E5\u8BC6\u70B9",id:"zsd",item_type:1}];const $f=({pathsDetail:E,user:a,globalSetting:y,loading:x,dispatch:b,items:z,showdetail:ee,setshowdetail:re,containerRef:ae,getData:se,setshow:fe,Tabsdatas:me,uuid:Ee,tpacti:Oe,initdata:ke})=>{var We,je,Ke,Ze,Je,tt,st,gt,mt,ct,Lt,_t,Yt,$t,En,on,Fn,tr,Cn,xn,Ln,nr,An,fr,ra,aa,Gr,Sr,Kr,pa,Ua,ei,Co,Eo,ti,to,ji,so;const[Ao,ss]=(0,Fe.useState)(0),[Qo]=we.default.useForm(),[Ei,ki]=(0,Fe.useState)({});let[Sa,_a]=(0,Fe.useState)(!1);const[ni,Ki]=(0,Fe.useState)(!1),[Ma,mo]=(0,Fe.useState)("1"),[Qi,Is]=(0,Fe.useState)([]),[as,ms]=(0,Fe.useState)(1),[ps,ls]=(0,Fe.useState)(2),[To,Nc]=(0,Fe.useState)(2),[Rc,_l]=(0,Fe.useState)(),[Fs,Ku]=(0,Fe.useState)();let[ks,ai]=(0,Fe.useState)([]);const[ao,zo]=(0,Fe.useState)({}),[Yo,Do]=(0,Fe.useState)(!1),[Yl,ed]=(0,Fe.useState)(""),[bd,Ug]=(0,Fe.useState)([]),[Nh]=(0,Ce.useSearchParams)(),[W0,Rh]=(0,Fe.useState)(!1),[gc,Fc]=(0,Fe.useState)([]),[vc,Qs]=(0,Fe.useState)([]),[Js,Ss]=(0,Fe.useState)([]);let[Tl,Cd]=(0,Fe.useState)({tags:[],tagszy:[],tagslx:[]});const[Li,Zu]=(0,Fe.useState)([{label:"\u5B9E\u8BAD",children:Qr.createElement(fs,{getother:rd,types:"1",ktzykey:Ma,onChange:kr=>{Is(kr)}}),key:"1"},{label:"\u89C6\u9891",children:Qr.createElement(fs,{getother:rd,types:"2",ktzykey:Ma,onChange:kr=>{Is(kr)}}),key:"2"},{label:"\u8BFE\u4EF6",children:Qr.createElement(fs,{getother:rd,types:"3",ktzykey:Ma,onChange:kr=>{Is(kr)}}),key:"3"},{label:"\u8BD5\u5377",children:Qr.createElement(fs,{getother:rd,types:"4",ktzykey:Ma,onChange:kr=>{Is(kr)}}),key:"4"}].filter(kr=>!!kr));let[Cu,Qu]=(0,Fe.useState)([]),[Hd,Wg]=(0,Fe.useState)([]);const[H1,am]=(0,Fe.useState)(0),[V1,im]=(0,Fe.useState)(0),[td,K1]=(0,Fe.useState)([]),[uo,nd]=(0,Fe.useState)({bh:[],qx:[],hx:[],gl:[]}),Z1=kr=>b({type:"userDetail/logWatchHistory",payload:Jl({},kr)}),Q1={maxCount:1,fileList:ks,accept:((je=(We=Ei==null?void 0:Ei.label)==null?void 0:We[0])==null?void 0:je.name)==="\u89C6\u9891"?".mp4":"",withCredentials:!0,beforeUpload:kr=>{var io,Xo;if(!(kr.type==="video/mp4")&&((Xo=(io=Ei==null?void 0:Ei.label)==null?void 0:io[0])==null?void 0:Xo.name)==="\u89C6\u9891")return _e.ZP.error("\u53EA\u80FD\u4E0A\u4F20\u89C6\u9891"),Ui.default.LIST_IGNORE},action:`${On.Z.API_SERVER}/api/attachments.json`,onChange:kr=>{ai(kr==null?void 0:kr.fileList)}};function Y1(){return Wl(this,null,function*(){var kr,io,Xo,Ho,sl;let bs=yield(0,te.ZP)("/api/knowledge/v2/get_node.json",{method:"get",params:{depth:1,subject_id:E.detail.id}});if((bs==null?void 0:bs.status)===0){am(Ee);const rl=[...(sl=(Ho=(kr=bs==null?void 0:bs.data)==null?void 0:kr.nodes)==null?void 0:Ho.splice(1,(Xo=(io=bs==null?void 0:bs.data)==null?void 0:io.nodes)==null?void 0:Xo.length))==null?void 0:sl.map(Dl=>{var ou,ad,Vd;return Jl({label:(ou=Dl==null?void 0:Dl.properties)==null?void 0:ou.name,children:Qr.createElement(ko,{onChange:j0=>{sessionStorage.setItem("typesdatajsoncopy",JSON.stringify(j0))},itemsuuid:z==null?void 0:z.uuid,uuid:(ad=Dl==null?void 0:Dl.properties)==null?void 0:ad.uuid,typesdata:uo}),key:(Vd=Dl==null?void 0:Dl.properties)==null?void 0:Vd.uuid},Dl)})];Cu=rl,Qu(rl),sessionStorage.setItem("typesdatajson",JSON.stringify(uo)),sessionStorage.setItem("typesdatajsoncopy",JSON.stringify(uo)),_a(!0)}})}function X1(){return Wl(this,null,function*(){var kr,io,Xo;let Ho=yield(0,te.ZP)("/api/knowledge_items.json",{method:"get",params:{item_type:3,subject_id:(kr=E==null?void 0:E.detail)==null?void 0:kr.id}});(Ho==null?void 0:Ho.status)===0&&(Tl.tags=Ho==null?void 0:Ho.data,Cd(Jl({},Tl)));let sl=yield(0,te.ZP)("/api/knowledge_items.json",{method:"get",params:{item_type:5,subject_id:(io=E==null?void 0:E.detail)==null?void 0:io.id}});(sl==null?void 0:sl.status)===0&&(Tl.tagszy=[..._h,...sl==null?void 0:sl.data2],Tl.tagslx=[...zh,...sl==null?void 0:sl.data],Cd(Jl({},Tl)));let bs=yield(0,te.ZP)("/api/knowledge/v2/get_container_type.json",{method:"get",params:{url:z==null?void 0:z.resourceUrl,item_banks_group_ids:z==null?void 0:z.itemBanksGroupIds}});if(ed(""),Ss([]),localStorage.setItem("container_type_tupu",bs==null?void 0:bs.container_type),(z==null?void 0:z.nodeType)==="\u89C6\u9891"&&(((Xo=bs==null?void 0:bs.attachment)==null?void 0:Xo.file_type)==="video"||(bs==null?void 0:bs.container_type)==="video")&&ed(bs==null?void 0:bs.id),(z==null?void 0:z.resourceOrigin)===1&&(z==null?void 0:z.nodeType)!=="\u9898\u96C6"){let rl={url:z==null?void 0:z.resourceUrl,name:bs==null?void 0:bs.name,id:bs==null?void 0:bs.examination_bank_id};Is([rl])}(z==null?void 0:z.resourceOrigin)===1&&(z==null?void 0:z.nodeType)==="\u9898\u96C6"&&Ss(bs==null?void 0:bs.item_banks_groups),(z==null?void 0:z.resourceOrigin)===2&&ai([{uid:"123",name:bs==null?void 0:bs.name,response:{id:"123",url:z==null?void 0:z.resourceUrl}}])})}function rd(kr){return Wl(this,null,function*(){var io,Xo;let Ho=yield(0,te.ZP)("/api/knowledge/v2/get_container_type.json",{method:"get",params:{url:kr}});(Ho==null?void 0:Ho.status)===0&&((Ho==null?void 0:Ho.container_type)==="att"?zo({url:On.Z.API_SERVER+((io=Ho==null?void 0:Ho.attachment)==null?void 0:io.url),file_type:(Xo=Ho==null?void 0:Ho.attachment)==null?void 0:Xo.file_type}):window.open(kr))})}function jg(){return Wl(this,null,function*(){let kr=yield(0,te.ZP)("/api/knowledge/v2/item_bank_groups.json",{method:"get",params:{subject_id:E.detail.id}});(kr==null?void 0:kr.status)===0&&Fc(kr==null?void 0:kr.data)})}function HQ(){return Wl(this,null,function*(){var kr,io,Xo,Ho,sl,bs;let rl=yield(0,te.ZP)("/api/knowledge/v2/get_node_detail.json",{method:"get",params:{nodeUuid:(z==null?void 0:z.keys)||(z==null?void 0:z.id),parentNodeUuids:me==null?void 0:me.map(Dl=>Dl==null?void 0:Dl.uuid).join(),depth:1,relationshipFilter:">",subgraphDepth:"-1",subgraphRelationshipFilter:"\u5305\u542B>",subject_id:E.detail.id}});if((rl==null?void 0:rl.status)===0){K1((kr=rl==null?void 0:rl.data)==null?void 0:kr.nodes),_l((Xo=(io=rl==null?void 0:rl.data)==null?void 0:io.nodes)==null?void 0:Xo.filter(ou=>{var ad;return((ad=ou==null?void 0:ou.properties)==null?void 0:ad.uuid)===(z==null?void 0:z.keys)||(z==null?void 0:z.id)})),Ku((Ho=rl==null?void 0:rl.data)==null?void 0:Ho.relationships);const Dl=[...(bs=(sl=rl==null?void 0:rl.data)==null?void 0:sl.graphNodeMappings)==null?void 0:bs.map((ou,ad)=>{var Vd;return{label:`${ou==null?void 0:ou.parentNodeName}\uFF08${(Vd=ou==null?void 0:ou.childNodeUuids)==null?void 0:Vd.length}\uFF09`,children:Qr.createElement(Zd,{datas:rl==null?void 0:rl.data,items:ou==null?void 0:ou.childNodeUuids}),key:ad}})];im(0),Hd=Dl,Wg(Dl)}})}return(0,Fe.useEffect)(()=>{ee&&(HQ(),X1())},[ee,z]),Qr.createElement(Zt,null,Qr.createElement("div",null,ee&&Qr.createElement(Yi.Z,{open:ee,width:"700rem",mask:!1,closable:!1,rootClassName:Zr.drawer,destroyOnClose:!0,getContainer:()=>ae.current,onCancel:()=>{re(!1),ed("")}},Qr.createElement("div",{className:Zr.detailmodal},Qr.createElement("div",null,Qr.createElement("span",{className:Zr.title},"\u8282\u70B9\u8BE6\u60C5"),((Ke=E==null?void 0:E.detail)==null?void 0:Ke.edit_of_subject_knowledge)&&Ee!=="\u5B66\u4E60\u8DEF\u5F84"&&(z==null?void 0:z.colorType)!=="1"&&Qr.createElement("i",{className:"iconfont icon-bianji-moren",onClick:()=>Wl(void 0,null,function*(){var kr,io,Xo,Ho,sl,bs,rl,Dl,ou,ad;ss(3),re(!1);let Vd={name:z.name,description:z.description,label:((io=(kr=Rc==null?void 0:Rc[0])==null?void 0:kr.labels)==null?void 0:io[1])==="\u8D44\u6E90"?(Xo=Tl==null?void 0:Tl.tagszy)==null?void 0:Xo.filter(fo=>(fo==null?void 0:fo.name)===(z==null?void 0:z.nodeType)):(Ho=Tl==null?void 0:Tl.tagslx)==null?void 0:Ho.filter(fo=>(fo==null?void 0:fo.name)===(z==null?void 0:z.nodeType)),tag:(sl=Tl==null?void 0:Tl.tags)==null?void 0:sl.filter(fo=>{var mu,pu;return(pu=(mu=z==null?void 0:z.tags)==null?void 0:mu.map(yu=>yu==null?void 0:yu.name))==null?void 0:pu.includes(fo==null?void 0:fo.name)}),resourceOrigin:z.resourceOrigin,url:(z==null?void 0:z.resourceOrigin)===3?z==null?void 0:z.resourceUrl:""},j0=(bs=Fs==null?void 0:Fs.filter(fo=>(fo==null?void 0:fo.type)==="\u88AB\u5305\u542B"&&(fo==null?void 0:fo.startNodeUuid)===((z==null?void 0:z.keys)||(z==null?void 0:z.id))))==null?void 0:bs.map(fo=>{var mu,pu;return{uuid:fo==null?void 0:fo.endNodeUuid,name:(pu=(mu=td==null?void 0:td.find(yu=>{var Yu;return((Yu=yu==null?void 0:yu.properties)==null?void 0:Yu.uuid)===(fo==null?void 0:fo.endNodeUuid)}))==null?void 0:mu.properties)==null?void 0:pu.name}}),J1=(rl=Fs==null?void 0:Fs.filter(fo=>(fo==null?void 0:fo.type)==="\u5305\u542B"&&(fo==null?void 0:fo.startNodeUuid)===((z==null?void 0:z.keys)||(z==null?void 0:z.id))))==null?void 0:rl.map(fo=>{var mu,pu;return{uuid:fo==null?void 0:fo.endNodeUuid,name:(pu=(mu=td==null?void 0:td.find(yu=>{var Yu;return((Yu=yu==null?void 0:yu.properties)==null?void 0:Yu.uuid)===(fo==null?void 0:fo.endNodeUuid)}))==null?void 0:mu.properties)==null?void 0:pu.name}});Ug(J1);let q1=(Dl=Fs==null?void 0:Fs.filter(fo=>(fo==null?void 0:fo.type)==="\u524D\u5E8F"&&(fo==null?void 0:fo.startNodeUuid)===((z==null?void 0:z.keys)||(z==null?void 0:z.id))))==null?void 0:Dl.map(fo=>{var mu,pu;return{uuid:fo==null?void 0:fo.endNodeUuid,name:(pu=(mu=td==null?void 0:td.find(yu=>{var Yu;return((Yu=yu==null?void 0:yu.properties)==null?void 0:Yu.uuid)===(fo==null?void 0:fo.endNodeUuid)}))==null?void 0:mu.properties)==null?void 0:pu.name}}),$1=(ou=Fs==null?void 0:Fs.filter(fo=>(fo==null?void 0:fo.type)==="\u540E\u5E8F"&&(fo==null?void 0:fo.startNodeUuid)===((z==null?void 0:z.keys)||(z==null?void 0:z.id))))==null?void 0:ou.map(fo=>{var mu,pu;return{uuid:fo==null?void 0:fo.endNodeUuid,name:(pu=(mu=td==null?void 0:td.find(yu=>{var Yu;return((Yu=yu==null?void 0:yu.properties)==null?void 0:Yu.uuid)===(fo==null?void 0:fo.endNodeUuid)}))==null?void 0:mu.properties)==null?void 0:pu.name}}),eE=(ad=Fs==null?void 0:Fs.filter(fo=>((fo==null?void 0:fo.type)==="\u5173\u8054"||(fo==null?void 0:fo.type)==="\u88AB\u5173\u8054")&&(fo==null?void 0:fo.startNodeUuid)===((z==null?void 0:z.keys)||(z==null?void 0:z.id))))==null?void 0:ad.map(fo=>{var mu,pu;return{uuid:fo==null?void 0:fo.endNodeUuid,name:(pu=(mu=td==null?void 0:td.find(yu=>{var Yu;return((Yu=yu==null?void 0:yu.properties)==null?void 0:Yu.uuid)===(fo==null?void 0:fo.endNodeUuid)}))==null?void 0:mu.properties)==null?void 0:pu.name}});nd({bh:j0,qx:q1,hx:$1,gl:eE}),Qo.setFieldsValue(Vd),ki(Vd)}),style:{color:"#1B8565",marginLeft:10,cursor:"pointer"}})),Qr.createElement("div",{style:{display:"flex",alignItems:"center"}},(z==null?void 0:z.colorType)!=="1"&&((Ze=E==null?void 0:E.detail)==null?void 0:Ze.edit_of_subject_knowledge)&&Ee!=="\u5B66\u4E60\u8DEF\u5F84"&&Qr.createElement(ge.ZP,{type:"primary",className:Zr.button,onClick:(0,gs.debounce)(()=>Wl(void 0,null,function*(){var kr,io,Xo;let Ho=yield(0,te.ZP)("/api/knowledge/v2/get_node.json",{method:"get",params:{nodeUuid:(z==null?void 0:z.keys)||(z==null?void 0:z.id),subject_id:(kr=E==null?void 0:E.detail)==null?void 0:kr.id,depth:1,relationshipFilter:"\u88AB\u5305\u542B>"}});if((Ho==null?void 0:Ho.status)===0){let sl=(Xo=(io=Ho==null?void 0:Ho.data)==null?void 0:io.nodes)==null?void 0:Xo.filter(rl=>{var Dl;return((Dl=rl==null?void 0:rl.properties)==null?void 0:Dl.uuid)!==((z==null?void 0:z.keys)||(z==null?void 0:z.id))}),bs=sl==null?void 0:sl.map(rl=>{var Dl,ou;return{name:(Dl=rl==null?void 0:rl.properties)==null?void 0:Dl.name,uuid:(ou=rl==null?void 0:rl.properties)==null?void 0:ou.uuid}});uo.bh=bs,nd(uo),ss(1),re(!1),Is([]),Ss([]),ai([])}}),500)},"\u589E\u52A0\u540C\u7EA7\u8282\u70B9"),((Je=E==null?void 0:E.detail)==null?void 0:Je.edit_of_subject_knowledge)&&Ee!=="\u5B66\u4E60\u8DEF\u5F84"&&Qr.createElement(ge.ZP,{type:"primary",className:Zr.button,onClick:()=>{var kr,io;((io=(kr=uo==null?void 0:uo.bh)==null?void 0:kr.filter(Xo=>(Xo==null?void 0:Xo.uuid)===(z==null?void 0:z.id)))==null?void 0:io.length)>0||uo.bh.push({name:z==null?void 0:z.name,uuid:(z==null?void 0:z.keys)||(z==null?void 0:z.id)}),ss(2),re(!1),Is([]),Ss([]),ai([])}},"\u589E\u52A0\u5B50\u7EA7\u8282\u70B9"),((tt=E==null?void 0:E.detail)==null?void 0:tt.edit_of_subject_knowledge)&&Ee!=="\u5B66\u4E60\u8DEF\u5F84"&&Qr.createElement(ge.ZP,{className:Zr.button,onClick:()=>{let kr="";Pe.default.confirm({title:"\u63D0\u793A",icon:null,centered:!0,getContainer:ae.current,content:Qr.createElement("div",null,Qr.createElement("p",null,"\u5220\u9664\u8282\u70B9\u4F1A\u540C\u6B65\u5220\u9664\u5F53\u524D\u8282\u70B9\u7684\u5B50\u7EA7\u8282\u70B9\uFF0C\u8BF7\u5728\u4E0B\u65B9\u8F93\u5165\u6846\u8F93\u5165",Qr.createElement("span",{style:{color:"red"}},"\u201C\u786E\u8BA4\u5220\u9664\u201D")),Qr.createElement(xe.default,{onChange:io=>{kr=io.target.value}})),onOk:()=>Wl(void 0,null,function*(){var io,Xo,Ho;if(kr!=="\u786E\u8BA4\u5220\u9664")return _e.ZP.info("\u8BF7\u8F93\u5165\u786E\u8BA4\u5220\u9664"),Promise.reject();if(kr==="\u786E\u8BA4\u5220\u9664"){let sl=yield(0,te.ZP)("/api/knowledge/v2/del_node.json",{method:"post",body:{uuid:(z==null?void 0:z.keys)||(z==null?void 0:z.id),subject_id:(io=E==null?void 0:E.detail)==null?void 0:io.id}});(sl==null?void 0:sl.status)===0&&(_e.ZP.info("\u5220\u9664\u6210\u529F"),Nh.get("type")==="classrooms"?b({type:"pathsDetail/getCourseDetail",payload:Jl({id:(Xo=E==null?void 0:E.detail)==null?void 0:Xo.id,knowledge:!0},(0,ht.oP)())}):b({type:"pathsDetail/getPathsDetail",payload:Jl({id:(Ho=E==null?void 0:E.detail)==null?void 0:Ho.id,knowledge:!0},(0,ht.oP)())}),(z==null?void 0:z.colorType)!=="1"?(fe(!1),se()):ke(),re(!1))}})})}},"\u5220\u9664\u8282\u70B9"),((st=E==null?void 0:E.detail)==null?void 0:st.edit_of_subject_knowledge)&&Ee==="\u5B66\u4E60\u8DEF\u5F84"&&Nh.get("type")==="classrooms"&&Qr.createElement(ge.ZP,{type:"primary",className:Zr.button,onClick:()=>{Pe.default.confirm({title:"\u63D0\u793A",icon:null,centered:!0,getContainer:ae.current,okText:"\u786E\u8BA4\u540C\u6B65",content:Qr.createElement("div",null,"\u8BE5\u8282\u70B9\u4E0B\u5171",Qr.createElement("span",{className:"c-light-primary"},z==null?void 0:z.currentResourceTotal),"\u4E2A\u8D44\u6E90\uFF0C\u786E\u8BA4\u540C\u6B65\u540E\uFF0C\u8FD9\u4E9B\u8D44\u6E90\u5C06\u6309\u7167\u7C7B\u578B\u5206\u522B\u53D1\u9001\u5230\u8BFE\u5802\u5B9E\u9A8C\u3001\u56FE\u6587\u4F5C\u4E1A\u3001\u5728\u7EBF\u8003\u8BD5\u3001\u89C6\u9891\u76F4\u64AD\u3001\u6559\u5B66\u8D44\u6599\u6A21\u5757\u4E2D\uFF0C\u53EF\u524D\u5F80\u5BF9\u5E94\u6A21\u5757\u8FDB\u884C\u8D44\u6E90\u53D1\u5E03\u7B49\u64CD\u4F5C\u3002"),onOk:()=>Wl(void 0,null,function*(){var kr;const io=yield(0,te.ZP)("/api/subject_knowledge/send_to_course",{method:"post",body:{id:z==null?void 0:z.resourceid,subject_id:(kr=E==null?void 0:E.detail)==null?void 0:kr.id}});(io==null?void 0:io.status)===0&&_e.ZP.success("\u64CD\u4F5C\u6210\u529F")})})}},"\u540C\u6B65\u8D44\u6E90\u5230\u8BFE\u5802"),Qr.createElement(oo.Z,{onClick:()=>{re(!1)},style:{marginLeft:"10rem",fontSize:"16rem",color:"#979797"}}))),Qr.createElement("div",{className:Zr.tabstyle},qf==null?void 0:qf.map(kr=>Qr.createElement("div",{onClick:()=>{ms(kr.key)},className:as===(kr==null?void 0:kr.key)?Zr.itemsactivite:Zr.items},kr==null?void 0:kr.name))),as===1&&Qr.createElement("div",null,Qr.createElement("div",{className:Zr.nodetitle},ps===1&&Qr.createElement(_s.Z,{onClick:()=>ls(2)}),ps===2&&Qr.createElement(Uo.Z,{onClick:()=>ls(1)}),Qr.createElement("span",{style:{marginLeft:"10rem",fontSize:"16rem",color:"#1B8565"}},"\u8282\u70B9\u5C5E\u6027")),ps===2&&Qr.createElement("div",{className:Zr.nodeboyd},Qr.createElement("div",{className:Zr.listitem,style:{marginTop:"0rem"}},Qr.createElement("label",null,"\u8282\u70B9\u540D\u79F0"),Qr.createElement("span",null,z==null?void 0:z.name)),Qr.createElement("div",{className:Zr.listitem},Qr.createElement("label",null,"\u8282\u70B9\u7B80\u4ECB"),Qr.createElement("span",null,(z==null?void 0:z.description)||"\u6682\u65E0")),Qr.createElement("div",{className:Zr.listitem},Qr.createElement("label",null,"\u8282\u70B9\u7C7B\u578B"),Qr.createElement("div",null,(z==null?void 0:z.nodeType)&&Qr.createElement(Ai,{containerRef:ae,type:5,value:[{name:z==null?void 0:z.nodeType}],pathsDetail:E,showmodal:!1,dataSources:[]})," ")),Qr.createElement("div",{className:Zr.listitem},Qr.createElement("label",null,"\u8282\u70B9\u6807\u7B7E"),Qr.createElement("span",null,((gt=z==null?void 0:z.tags)==null?void 0:gt.length)>0&&Qr.createElement(Ai,{containerRef:ae,type:5,pathsDetail:E,value:z==null?void 0:z.tags,showmodal:!1,dataSources:[]}))),(z==null?void 0:z.nodeType)==="\u89C6\u9891"&&(z==null?void 0:z.resourceOrigin)!==3&&Yl&&Qr.createElement("div",{style:{height:"300rem",marginTop:"20rem"}},Qr.createElement(Ri.Z,{allow_skip:!0,videoId:Yl,toLog:!0,src:z==null?void 0:z.resourceUrl,logWatchHistory:kr=>Z1(Jf(Jl({},kr),{container_type:localStorage.getItem("container_type_tupu")}))})),(z==null?void 0:z.resourceOrigin)===3&&Qr.createElement("div",{style:{display:"flex",marginTop:"20rem",alignItems:"center"}},Qr.createElement("span",{style:{color:"#1B8565",fontSize:"16rem"}},z==null?void 0:z.resourceUrl),Qr.createElement(ge.ZP,{style:{height:"40rem",padding:"0rem 10rem",fontSize:"14rem",marginLeft:"10rem"},onClick:()=>Wl(void 0,null,function*(){var kr;let io=yield(0,te.ZP)("/api/subject_knowledge/create_study.json",{method:"post",body:{subject_id:(kr=E==null?void 0:E.detail)==null?void 0:kr.id,uuid:z==null?void 0:z.uuid}});window.open(z==null?void 0:z.resourceUrl)}),type:"primary"},"\u524D\u5F80\u67E5\u770B")),(z==null?void 0:z.nodeType)==="\u9898\u96C6"&&(Js==null?void 0:Js.map(kr=>Qr.createElement("div",{style:{display:"flex",alignItems:"center",marginTop:"10rem"}},Qr.createElement(an.Z,{title:kr==null?void 0:kr.name},Qr.createElement("span",{className:Zr.multiple,style:{color:"#1B8565",fontSize:"16rem",maxWidth:"80%"}},kr==null?void 0:kr.name)),Qr.createElement("div",{style:{marginLeft:"10rem",padding:"0rem 10rem",fontSize:"12rem",background:"#F6F7F9",color:"#909D99",borderRadius:"20rem"}},"\u8BD5\u9898\u6570 ",kr==null?void 0:kr.count)))),(z==null?void 0:z.nodeType)!="\u89C6\u9891"&&(z==null?void 0:z.nodeType)!="\u9898\u96C6"&&(z!=null&&z.resourceOrigin)&&[1,2].includes(z==null?void 0:z.resourceOrigin)?Qr.createElement("div",{style:{display:"flex",marginTop:"20rem",alignItems:"center"}},Qr.createElement("span",{style:{color:"#1B8565",fontSize:"16rem"}},(z==null?void 0:z.resourceOrigin)===1?(mt=Qi==null?void 0:Qi[0])==null?void 0:mt.name:(ct=ks==null?void 0:ks[0])==null?void 0:ct.name),(0,Po.JA)()&&(z==null?void 0:z.nodeType)==="\u8BD5\u5377"?"":Qr.createElement(ge.ZP,{style:{height:"40rem",padding:"0rem 10rem",fontSize:"14rem",marginLeft:"10rem"},onClick:()=>Wl(void 0,null,function*(){var kr;rd(z==null?void 0:z.resourceUrl);let io=yield(0,te.ZP)("/api/subject_knowledge/create_study.json",{method:"post",body:{subject_id:(kr=E==null?void 0:E.detail)==null?void 0:kr.id,uuid:z==null?void 0:z.uuid}})}),type:"primary"},"\u524D\u5F80\u67E5\u770B"),(z==null?void 0:z.nodeType)==="\u8BD5\u5377"&&(z==null?void 0:z.resourceOrigin)===1&&Qr.createElement(ge.ZP,{style:{height:"40rem",padding:"0rem 10rem",fontSize:"14rem",marginLeft:"10rem"},onClick:()=>Wl(void 0,null,function*(){var kr,io;const Xo=yield(0,Ul.Mb)({categoryId:(kr=Qi==null?void 0:Qi[0])==null?void 0:kr.id});Xo!=null&&Xo.exercise_id&&(0,ht.xg)(`/classrooms/coursesId/exercise/${Xo.exercise_id}/${(io=a.userInfo)==null?void 0:io.login}/initate_answer`)}),type:"primary"},"\u6A21\u62DF\u8003\u8BD5")):""),Qr.createElement("div",{className:Zr.nodetitle},To===1&&Qr.createElement(_s.Z,{onClick:()=>Nc(2)}),To===2&&Qr.createElement(Uo.Z,{onClick:()=>Nc(1)}),Qr.createElement("span",{style:{marginLeft:"10rem",fontSize:"16rem",color:"#1B8565"}},"\u8282\u70B9\u5173\u7CFB")),To===2&&Qr.createElement("div",{className:Zr.nodeboyd,style:{padding:0,minHeight:"530rem"}},Qr.createElement(yt.default,{className:Zr.Tabs,activeKey:V1,destroyInactiveTabPane:!0,onChange:kr=>{im(parseInt(kr))},type:"card",items:Hd}))),as===3&&Qr.createElement("div",null,(0,Po.JA)()?Qr.createElement(Hg,{uuid:(z==null?void 0:z.keys)||(z==null?void 0:z.id)}):Qr.createElement(Xl,{uuid:(z==null?void 0:z.keys)||(z==null?void 0:z.id)}))),Qr.createElement(Pe.default,{title:Qr.createElement("span",{style:{fontSize:"18rem",color:"#000"}},Ao===3?"\u7F16\u8F91":"\u521B\u5EFA","\u8282\u70B9"),centered:!0,destroyOnClose:!0,width:"1200rem",open:Ao>0,getContainer:()=>ae.current,onCancel:()=>{ss(0),Qo.resetFields(),nd({qx:[],bh:[],hx:[],gl:[]}),ai([]),ki({}),Is([]),Ss([])},okButtonProps:{loading:Yo},onOk:()=>{Qo.submit()}},Qr.createElement("div",{className:Zr.addmodal},Qr.createElement("div",{className:Zr.title},"\u8282\u70B9\u5C5E\u6027"),Qr.createElement(we.default,{className:Zr.form,labelCol:{flex:"92rem"},layout:"horizontal",form:Qo,colon:!1,onValuesChange:(kr,io)=>{var Xo,Ho,sl,bs;ki(Jl({},io)),(io==null?void 0:io.resourceOrigin)!==1&&Is([]),((Ho=(Xo=io==null?void 0:io.label)==null?void 0:Xo[0])==null?void 0:Ho.name)!=="\u9898\u96C6"&&Ss([]),((bs=(sl=io==null?void 0:io.label)==null?void 0:sl[0])==null?void 0:bs.item_type)!==2&&(Is([]),ai([]),Ss([]),Qo.setFieldsValue({resourceOrigin:0,url:""}))},onFinish:(0,gs.debounce)(kr=>Wl(void 0,null,function*(){var io,Xo,Ho,sl,bs,rl,Dl,ou,ad,Vd,j0,J1,q1,$1,eE,fo,mu,pu,yu,Yu,W3,j3,G3,H3,V3,K3,Z3,Q3,Y3,X3,J3,q3,$3,eT,tT,nT,rT,aT,iT,oT,sT,lT,uT,cT,dT,fT,hT,gT,vT,mT,pT,yT,ET,AT;if(((io=uo==null?void 0:uo.bh)==null?void 0:io.length)===0){_e.ZP.warning("\u8282\u70B9\u5305\u542B\u5173\u7CFB\u4E0D\u80FD\u4E3A\u7A7A");return}if((kr==null?void 0:kr.resourceOrigin)===0){_e.ZP.warning("\u8BF7\u9009\u62E9\u8D44\u6E90\u7C7B\u578B");return}if((kr==null?void 0:kr.resourceOrigin)===1&&(Qi==null?void 0:Qi.length)<=0&&((Xo=kr==null?void 0:kr.label[0])==null?void 0:Xo.name)!=="\u9898\u96C6"){_e.ZP.warning("\u8BF7\u9009\u62E9\u5BF9\u5E94\u8D44\u6E90");return}if((kr==null?void 0:kr.resourceOrigin)===1&&(Js==null?void 0:Js.length)<=0&&((Ho=kr==null?void 0:kr.label[0])==null?void 0:Ho.name)==="\u9898\u96C6"){_e.ZP.warning("\u8BF7\u9009\u62E9\u5BF9\u5E94\u8D44\u6E90");return}if((kr==null?void 0:kr.resourceOrigin)===2&&(ks==null?void 0:ks.length)===0){_e.ZP.warning("\u8BF7\u4E0A\u4F20\u6587\u4EF6");return}Do(!0);let VQ=Ao===3?"/api/knowledge/v2/mod_node.json":"/api/knowledge/v2/add_node.json",KQ=Ao===3?{subject_id:(sl=E==null?void 0:E.detail)==null?void 0:sl.id,properties:{description:kr.description,rootNodeUuid:z==null?void 0:z.rootNodeUuid,name:kr.name,uuid:(z==null?void 0:z.keys)||(z==null?void 0:z.id),nodeType:(bs=kr==null?void 0:kr.label[0])==null?void 0:bs.name,tags:((Dl=(rl=kr.tag)==null?void 0:rl.map(hl=>hl==null?void 0:hl.name))==null?void 0:Dl.join("\uFF0C"))||"",color:z==null?void 0:z.color,resourceOrigin:kr.resourceOrigin,resourceUrl:kr.resourceOrigin===3?kr.url:kr.resourceOrigin===2?((Vd=(ad=(ou=ks==null?void 0:ks[0])==null?void 0:ou.response)==null?void 0:ad.url)==null?void 0:Vd.indexOf("educoder.net"))>-1?(J1=(j0=ks==null?void 0:ks[0])==null?void 0:j0.response)==null?void 0:J1.url:((q1=y==null?void 0:y.setting)==null?void 0:q1.public_bucket_host)+((eE=($1=ks==null?void 0:ks[0])==null?void 0:$1.response)==null?void 0:eE.url):(fo=Qi==null?void 0:Qi[0])==null?void 0:fo.url,container_type:((mu=kr==null?void 0:kr.label[0])==null?void 0:mu.name)==="\u9898\u96C6"?"ItemBanksGroup":(kr.resourceOrigin===1||kr.resourceOrigin===2)&&((pu=Qi==null?void 0:Qi[0])==null?void 0:pu.container_type)||((Yu=(yu=ks==null?void 0:ks[0])==null?void 0:yu.response)==null?void 0:Yu.container_type),container_id:(kr.resourceOrigin===1||kr.resourceOrigin===2)&&((W3=Qi==null?void 0:Qi[0])==null?void 0:W3.container_id)||((G3=(j3=ks==null?void 0:ks[0])==null?void 0:j3.response)==null?void 0:G3.container_id),itemBanksGroupIds:Js==null?void 0:Js.map(hl=>hl==null?void 0:hl.group_id).toString()},subgraphNodeUuid:Oe,relationships:[...(H3=uo.bh)==null?void 0:H3.map(hl=>({startNodeUuid:hl.uuid,endNodeUuid:(z==null?void 0:z.keys)||(z==null?void 0:z.id),type:"\u5305\u542B"})),...bd==null?void 0:bd.map(hl=>({endNodeUuid:hl.uuid,startNodeUuid:(z==null?void 0:z.keys)||(z==null?void 0:z.id),type:"\u5305\u542B"})),...(V3=uo.qx)==null?void 0:V3.map(hl=>({startNodeUuid:hl.uuid,endNodeUuid:(z==null?void 0:z.keys)||(z==null?void 0:z.id),type:"\u524D\u5E8F"})),...(K3=uo.hx)==null?void 0:K3.map(hl=>({endNodeUuid:hl.uuid,startNodeUuid:(z==null?void 0:z.keys)||(z==null?void 0:z.id),type:"\u540E\u5E8F"})),...(Z3=uo.gl)==null?void 0:Z3.map(hl=>({startNodeUuid:hl.uuid,endNodeUuid:(z==null?void 0:z.keys)||(z==null?void 0:z.id),type:"\u5173\u8054"}))]}:{label:((Q3=kr==null?void 0:kr.label[0])==null?void 0:Q3.item_type)===1?"\u6807\u7B7E":"\u8D44\u6E90",subject_id:(Y3=E==null?void 0:E.detail)==null?void 0:Y3.id,properties:{description:kr.description,rootNodeUuid:z==null?void 0:z.rootNodeUuid,name:kr.name,nodeType:(X3=kr==null?void 0:kr.label[0])==null?void 0:X3.name,tags:((q3=(J3=kr.tag)==null?void 0:J3.map(hl=>hl==null?void 0:hl.name))==null?void 0:q3.join("\uFF0C"))||"",color:Ao===1?"2":parseInt(z==null?void 0:z.colorType)+1+"",resourceOrigin:kr.resourceOrigin,resourceUrl:kr.resourceOrigin===3?kr.url:kr.resourceOrigin===2?((tT=(eT=($3=ks==null?void 0:ks[0])==null?void 0:$3.response)==null?void 0:eT.url)==null?void 0:tT.indexOf("educoder.net"))>-1?(rT=(nT=ks==null?void 0:ks[0])==null?void 0:nT.response)==null?void 0:rT.url:((aT=y==null?void 0:y.setting)==null?void 0:aT.public_bucket_host)+((oT=(iT=ks==null?void 0:ks[0])==null?void 0:iT.response)==null?void 0:oT.url):(sT=Qi==null?void 0:Qi[0])==null?void 0:sT.url,container_type:((lT=kr==null?void 0:kr.label[0])==null?void 0:lT.name)==="\u9898\u96C6"?"ItemBanksGroup":(kr.resourceOrigin===1||kr.resourceOrigin===2)&&((uT=Qi==null?void 0:Qi[0])==null?void 0:uT.container_type)||((dT=(cT=ks==null?void 0:ks[0])==null?void 0:cT.response)==null?void 0:dT.container_type),container_id:(kr.resourceOrigin===1||kr.resourceOrigin===2)&&((fT=Qi==null?void 0:Qi[0])==null?void 0:fT.container_id)||((gT=(hT=ks==null?void 0:ks[0])==null?void 0:hT.response)==null?void 0:gT.container_id),itemBanksGroupIds:Js==null?void 0:Js.map(hl=>hl==null?void 0:hl.group_id).toString()},subgraphNodeUuid:Oe,relationships:[...(vT=uo.bh)==null?void 0:vT.map(hl=>({startNodeUuid:hl.uuid,type:"\u5305\u542B"})),...(mT=uo.qx)==null?void 0:mT.map(hl=>({startNodeUuid:hl.uuid,type:"\u524D\u5E8F"})),...(pT=uo.hx)==null?void 0:pT.map(hl=>({endNodeUuid:hl.uuid,type:"\u540E\u5E8F"})),...(yT=uo.gl)==null?void 0:yT.map(hl=>({startNodeUuid:hl.uuid,type:"\u5173\u8054"}))]};const xT=yield(0,te.ZP)(VQ,{method:"POST",body:KQ});Do(!1),(xT==null?void 0:xT.status)===0&&(Nh.get("type")==="classrooms"?b({type:"pathsDetail/getCourseDetail",payload:Jl({id:(ET=E==null?void 0:E.detail)==null?void 0:ET.id,knowledge:!0},(0,ht.oP)())}):b({type:"pathsDetail/getPathsDetail",payload:Jl({id:(AT=E==null?void 0:E.detail)==null?void 0:AT.id,knowledge:!0},(0,ht.oP)())}),_e.ZP.info(Ao===3?"\u7F16\u8F91\u6210\u529F":"\u521B\u5EFA\u6210\u529F"),ss(0),fe(!1),se(),Qo.resetFields(),ai([]),ki({}),Is([]),Ss([]),nd({qx:[],hx:[],bh:[],gl:[]}))}),500),size:"large"},Qr.createElement(we.default.Item,{label:"\u8282\u70B9\u540D\u79F0",name:"name",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u8282\u70B9\u540D\u79F0"},{type:"string",max:60,message:"\u8F93\u5165\u8D85\u9650\uFF0C\u8BF7\u7F29\u51CF\u5B57\u7B26\u6570"},{type:"string",whitespace:!0,message:"\u5185\u5BB9\u4E0D\u80FD\u5168\u4E3A\u7A7A\u683C"}]},Qr.createElement(xe.default,{maxLength:60,showCount:!0,placeholder:"\u8BF7\u8F93\u5165"})),Qr.createElement(we.default.Item,{label:"\u8282\u70B9\u7B80\u4ECB",name:"description",rules:[{type:"string",max:5e3,message:"\u8F93\u5165\u8D85\u9650\uFF0C\u8BF7\u7F29\u51CF\u5B57\u7B26\u6570"},{type:"string",whitespace:!0,message:"\u5185\u5BB9\u4E0D\u80FD\u5168\u4E3A\u7A7A\u683C"}]},Qr.createElement(xe.default.TextArea,{maxLength:5e3,showCount:!0,placeholder:"\u8BF7\u8F93\u5165"})),Qr.createElement(we.default.Item,{label:"\u8282\u70B9\u7C7B\u578B",name:"label",style:{marginBottom:"0rem"},rules:[{required:!0,message:"\u8BF7\u9009\u62E9\u8282\u70B9\u7C7B\u578B"}]},Qr.createElement(Ai,{containerRef:ae,type:5,pathsDetail:E,showmodal:Ao!==3,dataSources:[]})),((_t=(Lt=Ei==null?void 0:Ei.label)==null?void 0:Lt[0])==null?void 0:_t.item_type)===2&&Qr.createElement(we.default.Item,{label:" ",name:"resourceOrigin",rules:[{required:!0,message:"\u8BF7\u9009\u62E9\u8D44\u6E90\u7C7B\u578B"}]},Qr.createElement(pe.ZP.Group,{className:Zr.radioform},Qr.createElement(pe.ZP,{value:1},"\u9009\u62E9\u8D44\u6E90"),(($t=(Yt=Ei==null?void 0:Ei.label)==null?void 0:Yt[0])==null?void 0:$t.name)!=="\u9898\u96C6"&&Qr.createElement(pe.ZP,{value:2},"\u4E0A\u4F20\u6587\u4EF6"),((on=(En=Ei==null?void 0:Ei.label)==null?void 0:En[0])==null?void 0:on.name)!=="\u9898\u96C6"&&Qr.createElement(pe.ZP,{value:3},"\u5916\u94FE"))),(Ei==null?void 0:Ei.resourceOrigin)===1&&((tr=(Fn=Ei==null?void 0:Ei.label)==null?void 0:Fn[0])==null?void 0:tr.item_type)===2&&Qr.createElement(we.default.Item,{label:" ",name:""},Qr.createElement(ge.ZP,{onClick:()=>{var kr,io,Xo,Ho,sl,bs;((io=(kr=Ei==null?void 0:Ei.label)==null?void 0:kr[0])==null?void 0:io.name)==="\u9898\u96C6"?(Rh(!0),Qs(Js),jg()):(Ki(!0),mo(((Ho=(Xo=Ei==null?void 0:Ei.label)==null?void 0:Xo[0])==null?void 0:Ho.name)==="\u89C6\u9891"?"2":((bs=(sl=Ei==null?void 0:Ei.label)==null?void 0:sl[0])==null?void 0:bs.name)==="\u8BD5\u5377"?"4":"1"))},type:"primary",style:{height:"40rem",lineHeight:"40rem",padding:"0rem 32rem",boxShadow:"none"}},((xn=(Cn=Ei==null?void 0:Ei.label)==null?void 0:Cn[0])==null?void 0:xn.name)==="\u9898\u96C6"?"\u9009\u62E9\u9898\u96C6":"\u9009\u62E9\u8D44\u6E90"),(Qi==null?void 0:Qi.length)>0&&Qr.createElement("div",{style:{color:"#1B8565",marginTop:"5rem",fontSize:"16rem",display:"flex",alignItems:"center"}},Qr.createElement("div",{className:Zr.multiple,title:(Ln=Qi==null?void 0:Qi[0])==null?void 0:Ln.name},(nr=Qi==null?void 0:Qi[0])==null?void 0:nr.name),Qr.createElement("i",{style:{fontSize:"16rem",cursor:"pointer",marginLeft:"10rem"},onClick:()=>{Is([])},className:"iconfont icon-shanchu12"})," "),(Js==null?void 0:Js.length)>0&&(Js==null?void 0:Js.map(kr=>Qr.createElement("div",{style:{color:"#1B8565",marginTop:"5rem",fontSize:"16rem",display:"flex",alignItems:"center"}},Qr.createElement("div",{className:Zr.multiple,title:kr==null?void 0:kr.name},kr==null?void 0:kr.name),Qr.createElement("i",{style:{fontSize:"16rem",cursor:"pointer",marginLeft:"10rem"},onClick:()=>{Ss(Js==null?void 0:Js.filter(io=>(io==null?void 0:io.group_id)!==(kr==null?void 0:kr.group_id)))},className:"iconfont icon-shanchu12"})," ")))),(Ei==null?void 0:Ei.resourceOrigin)===2&&((fr=(An=Ei==null?void 0:Ei.label)==null?void 0:An[0])==null?void 0:fr.item_type)===2&&Qr.createElement(we.default.Item,{label:" ",name:"file",shouldUpdate:!0},Qr.createElement(Ui.default,Jl({},Q1),Qr.createElement(ge.ZP,{type:"primary",style:{height:"40rem",lineHeight:"40rem",padding:"0rem 32rem",boxShadow:"none"}},"\u4E0A\u4F20\u6587\u4EF6"))),(Ei==null?void 0:Ei.resourceOrigin)===3&&((aa=(ra=Ei==null?void 0:Ei.label)==null?void 0:ra[0])==null?void 0:aa.item_type)===2&&Qr.createElement(we.default.Item,{label:" ",name:"url"},Qr.createElement(we.default.Item,{label:"\u5916\u94FE\u94FE\u63A5",name:"url",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u5916\u94FE"}]},Qr.createElement(xe.default,{style:{height:"40rem"}}))),Qr.createElement(we.default.Item,{label:"\u8282\u70B9\u6807\u7B7E",name:"tag"},Qr.createElement(Ai,{containerRef:ae,type:3,pathsDetail:E,showmodal:!0,dataSources:[]})))),Qr.createElement("div",{className:Zr.addmodal,style:{marginTop:"20rem"}},Qr.createElement("div",{className:Zr.title},Qr.createElement("span",null,"\u8282\u70B9\u5173\u7CFB"),Qr.createElement("span",{style:{cursor:"pointer"},onClick:()=>{Y1()}},"\u5173\u7CFB\u8BBE\u7F6E")),Qr.createElement("div",{className:Zr.gxcoent,style:{padding:"20rem 25rem"}},Qr.createElement("div",{className:Zr.gxtitle},Qr.createElement("div",{className:Zr.Colortitle,style:{background:"#6236ff"}}),Qr.createElement("div",null,"\u88AB\u5305\u542B\uFF08",(Gr=uo.bh)==null?void 0:Gr.length,"\uFF09")),Qr.createElement("div",{className:Zr.gxbody},(Sr=uo==null?void 0:uo.bh)==null?void 0:Sr.map(kr=>Qr.createElement("div",{className:Zr.tag,style:{background:"#6236ff"}},Qr.createElement("span",{style:{marginRight:"10rem"}},kr==null?void 0:kr.name)," ",Qr.createElement(oo.Z,{onClick:()=>{var io;let Xo=(io=uo==null?void 0:uo.bh)==null?void 0:io.filter(Ho=>Ho.uuid!==kr.uuid);nd({bh:Xo,hx:uo==null?void 0:uo.hx,qx:uo==null?void 0:uo.qx,gl:uo==null?void 0:uo.gl})}})))),Qr.createElement("div",{className:Zr.gxtitle,style:{marginTop:"30rem"}},Qr.createElement("div",{className:Zr.Colortitle,style:{background:"#24A881"}}),Qr.createElement("div",null,"\u524D\u5E8F\uFF08",(Kr=uo.qx)==null?void 0:Kr.length,"\uFF09")),Qr.createElement("div",{className:Zr.gxbody},(pa=uo==null?void 0:uo.qx)==null?void 0:pa.map(kr=>Qr.createElement("div",{className:Zr.tag,style:{background:"#24A881"}},Qr.createElement("span",{style:{marginRight:"10rem"}},kr==null?void 0:kr.name)," ",Qr.createElement(oo.Z,{onClick:()=>{var io;let Xo=(io=uo==null?void 0:uo.qx)==null?void 0:io.filter(Ho=>Ho.uuid!==kr.uuid);nd({qx:Xo,bh:uo==null?void 0:uo.bh,hx:uo==null?void 0:uo.hx,gl:uo==null?void 0:uo.gl})}})))),Qr.createElement("div",{className:Zr.gxtitle,style:{marginTop:"30rem"}},Qr.createElement("div",{className:Zr.Colortitle,style:{background:"#EC8657"}}),Qr.createElement("div",null,"\u540E\u5E8F\uFF08",(Ua=uo.hx)==null?void 0:Ua.length,"\uFF09")),Qr.createElement("div",{className:Zr.gxbody},(ei=uo==null?void 0:uo.hx)==null?void 0:ei.map(kr=>Qr.createElement("div",{className:Zr.tag,style:{background:"#EC8657"}},Qr.createElement("span",{style:{marginRight:"10rem"}},kr==null?void 0:kr.name)," ",Qr.createElement(oo.Z,{onClick:()=>{var io;let Xo=(io=uo==null?void 0:uo.hx)==null?void 0:io.filter(Ho=>Ho.uuid!==kr.uuid);nd({qx:uo==null?void 0:uo.qx,bh:uo==null?void 0:uo.bh,hx:Xo,gl:uo==null?void 0:uo.gl})}})))),Qr.createElement("div",{className:Zr.gxtitle,style:{marginTop:"30rem"}},Qr.createElement("div",{className:Zr.Colortitle,style:{background:"#497DFF"}}),Qr.createElement("div",null,"\u5173\u8054\uFF08",(Co=uo.gl)==null?void 0:Co.length,"\uFF09")),Qr.createElement("div",{className:Zr.gxbody},(Eo=uo==null?void 0:uo.gl)==null?void 0:Eo.map(kr=>Qr.createElement("div",{className:Zr.tag,style:{background:"#497DFF"}},Qr.createElement("span",{style:{marginRight:"10rem"}},kr==null?void 0:kr.name)," ",Qr.createElement(oo.Z,{onClick:()=>{var io;let Xo=(io=uo==null?void 0:uo.gl)==null?void 0:io.filter(Ho=>Ho.uuid!==kr.uuid);nd({qx:uo==null?void 0:uo.qx,hx:uo==null?void 0:uo.hx,bh:uo==null?void 0:uo.bh,gl:Xo})}}))))))),Qr.createElement(Pe.default,{title:"\u9009\u62E9\u9898\u96C6",open:W0,destroyOnClose:!0,centered:!0,getContainer:()=>ae.current,width:"1200rem",onOk:()=>{if((vc==null?void 0:vc.length)<=0){_e.ZP.info("\u8BF7\u9009\u62E9\u9898\u96C6");return}Ss(vc),Rh(!1)},onCancel:()=>{Qs([]),Rh(!1)}},Qr.createElement(mr.default,{checkable:!0,style:{margin:20,maxHeight:400,overflow:"auto"},blockNode:!0,checkStrictly:!0,checkedKeys:vc==null?void 0:vc.map(kr=>kr==null?void 0:kr.group_id),onCheck:(kr,io)=>{Qs(io==null?void 0:io.checkedNodes)},treeData:gc,fieldNames:{key:"group_id",title:"name"},titleRender:kr=>Qr.createElement("div",{style:{display:"flex",alignItems:"center",paddingRight:"14px"}},Qr.createElement(an.Z,{title:kr==null?void 0:kr.name},Qr.createElement("div",{className:Zr.multiple,style:{display:"flex",alignItems:"center",maxWidth:"80%"}},Qr.createElement("img",{src:Xf,style:{marginRight:10}}),Qr.createElement("span",null,kr==null?void 0:kr.name))),Qr.createElement("div",{style:{padding:"0rem 10rem",fontSize:"12rem",background:"#F6F7F9",color:"#909D99",borderRadius:"20rem"}},"\u8BD5\u9898\u6570 ",kr==null?void 0:kr.count))})),Qr.createElement(Pe.default,{title:"\u9009\u62E9\u8D44\u6E90",open:ni,destroyOnClose:!0,centered:!0,getContainer:()=>ae.current,width:"1200rem",onOk:()=>{Ki(!1)},onCancel:()=>{Ki(!1),Ao!==3&&Is([]),mo("1")}},Qr.createElement("div",{className:Zr.settingmodal},Qr.createElement(yt.default,{className:Zr.Tabs,activeKey:Ma,destroyInactiveTabPane:!0,onChange:kr=>{mo(kr)},type:"card",items:((to=(ti=Ei==null?void 0:Ei.label)==null?void 0:ti[0])==null?void 0:to.name)==="\u89C6\u9891"?Li.filter(kr=>(kr==null?void 0:kr.label)==="\u89C6\u9891"):((so=(ji=Ei==null?void 0:Ei.label)==null?void 0:ji[0])==null?void 0:so.name)==="\u8BD5\u5377"?Li.filter(kr=>(kr==null?void 0:kr.label)==="\u8BD5\u5377"):Li.filter(kr=>(kr==null?void 0:kr.label)!=="\u89C6\u9891")}))),Qr.createElement(Bl.Z,{close:!0,style:{zIndex:1300,background:"rgba(1, 10, 35, 0.5)"},data:ao==null?void 0:ao.url,type:ao==null?void 0:ao.file_type,disabledDownload:!0,onClose:()=>zo({})}),Qr.createElement(Pe.default,{title:"\u5173\u7CFB\u8BBE\u7F6E",open:Sa,destroyOnClose:!0,centered:!0,getContainer:()=>ae.current,width:"1200rem",onCancel:()=>{_a(!1);let kr=JSON.parse(sessionStorage.getItem("typesdatajson"));nd(kr)},onOk:()=>{let kr=JSON.parse(sessionStorage.getItem("typesdatajsoncopy"));nd(kr),_a(!1)}},Qr.createElement("div",{className:Zr.settingmodal},Qr.createElement(yt.default,{className:Zr.Tabs,activeKey:H1,destroyInactiveTabPane:!0,onChange:kr=>{am(kr)},type:"card",items:Cu})))))};var jc=(0,Ce.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))($f),Os={tree:"tree___nmqFN",center:"center___zS18i",head:"head___VcDyA",del:"del___VM4Mh",body:"body___YCIVW",tabs:"tabs___SW1M6",active:"active___p1mR9",scrollBox:"scrollBox___reAJO",treeWarp:"treeWarp___oNJ2m",treeNode:"treeNode___qHtQK",node:"node___AIr0l",info:"info___FnWMG",resource:"resource___WYrQp",action:"action___gQRZY",tags:"tags___iMesf",tag:"tag___ImQuD",leftLine:"leftLine___KCWcy",rightLine:"rightLine____XB16",icon:"icon___QEn9F",nodeWrap:"nodeWrap___CLyJX",line:"line___njEbX",statusbutton:"statusbutton___yMqes",checkbox:"checkbox___jNN_4",loading:"loading___zOI_x",allTreeNode:"allTreeNode___csU65"},Nu=Ie(24905),Ru=Ie(95237),Uh="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAA1lJREFUWEfFl09oXFUUxn/nvTEpbXXRos4bgwgGRYtZCIILhQSFtgEjgnShCNJV05pMqQstpV1UjW6seY1pFERB6EYEJVJbRMmALgqCixTFlgoupjOjUhdNo0068z65w0ycmcxMJmbk3e39zne+d/69c40Oz45P1PPnbwxZxEgkHjQjJUg5c4OcRM4zfpLH7LY7mftxjy13Qm1rge6ZVnK5yLEInkfctha+fG9c8+B0T4Ljvx6wQjublgL6T6r3L3EkEoeALR05Xg1a9IwTm403Lo/bUjOOpgLcV98o8hni0f/ouN7MOL8pwTPNorFKQN+kBkrGGYm+rjivkJiR9T2Gs2N2oZa3ToD78qUi33fbedWhE9Gb4JHaSKwIcDm/LjJdC3ur8BnntxqD1ZpYEZAKdTwSR7sZ9lZcnvFaLm3HKi0M5aK7yeUNVPt6dS9uuoV+l4pyBFKhTkVidL0sG8F7xkwubfvNTbiref7oeMhsxGt9+V/bHnC7BVPaqRLnusW7Hh7z2WWpUNOR2N/W0Jj3jBcRd0fi8zqsMW/iKYzDEvs8n6cxslGJjxAD7Xg945QlJzUHDLbuGj72U+zL7rG/g0k9Jvi2FpvwGcqOWSYI9abEqwaP5w/ad6n3tVk3eE/ihTYiMhaEuihx3yqQIYwDhXGbcXfJk3qWiA+BW1ewxheFtI3cO6M7FpfKXeTuFvDYWxi3Tyt2o4jpMlvDMeOSJUMtILY2EfBNIW1PDs4pcfECbyni5QZM0fN5KDdmPwehZlz462rMOHH/AK9khqyYDPU14okmPq63FGDGuXzadt/1rrZHRU4LdtYSVNsomNYDusk8kGgQ8JXn89yVl+xqEOqsxK4mqVhonQIo4jNSGLOzkiwIOWQwIehxYd7SS/8vo/Z7MtQsrggrx2BZxpH8OG+bmZJT2k2J2UaB5SlYTkG7IjRk8M62gMNuw0mGGkacMXg9f9CO9k1psFjCFfG/x2fYiS5vUAUm5PaJJvmvGGRcG645BQ1+8Dz2lowUJb40mJTHBMLltr7VfIY9UVDEB4KH12zD2AdR7KPYhaiTNKxnxHaCXfkZOXDsv+NKFOJbSJyA2FeyaipiW0qrhRPrWl4VEevDpCoi1qdZbR/H9jhtHCb/1/P8H/hZr0qiHgOCAAAAAElFTkSuQmCC",Ct="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAA/1JREFUWEe1l19oW2UYxp/nNMmWdO1cZmcSW3TYKWwKoh3MmdBVUOmEDSeINvNGGEwRLwRR0Y12FHF44c2qTvEuCaNCRS+KiJiQP512eOFFB3XzX7FNXVnLlrRL8+e8ck6XmS45OUc9O5fnfO/7/L7n/b7vvB9h8dk1OuVaLF3po1QOqMBOEgGBBLRwgnMimFOA88KWr7zOzfGpZ3cVraSm2aC7Ryd9xVLxuCoSBqTdbPzad14lJeba6DnxxzM92WYxhgDd4xc2rCxl31YFrwFotSZcN2qZ5AetW3zDF/fvWG2UoyGANutCcfULQPb8R+GbwvjDBrf76UZu1AF0RiYeqKA8LkCnPeLXiwLOKg48Nftc6KfavOsAtJmvFgvn7BavChKcdbndu2uduAGg1Ty/OJ+wz3YD/4jJjYGu3t/7thfWdtD1JxBNnlAFx+y03SgXyeFsOKRr6QBri65w0Wi1EyiAvGaUUASbAVGswhNccbnd3VopdIBANP2hKupLBtuk0N6mbJs+GMwZCfijqXEAPSLS8S8gTmcPh45SO+EuFxcXjA4ZkkvZcMjbLLE/kvrY4VBOlSvqd9YhmNvq8t5Of3TiSZHy103qZQ4QTUYgzAO4SyiPQ9BixQkq7GcgkhpRIS//H4DaWF8kqR29PisACpWP6Iuk4oDsu0UAywQ+BRkUkZ56DSboj6amReReKwAyiV4Qz9eNJcbYg2+09zccIPIk+7MDoXTgzNmH1HLpx5vjSP5MXzSZg2CTFQArtuoAxKaquA4VTb0HkTcagOe1ElwFpM0OgEER5XQ0dQkKD2cHQvrC9kfSbwnUdxvnZ862Egw9LN9+EsucEshZCPo7OtqPLCzkXjUW1xuZaVsWoTZzXZwS02reOTrRXSlVPheRB5uWjYzbsg190fSxFiA9Gw7GzW2vQSJHbDmIfJHUZ0fDwSODpNq85uv9UBTlCVuOYl8sdZICHwTXBHgREKfpjiGu3Hmfp8P8Z0SsOkH/TDi0ZJRUWwOJBJRf59JtJcGfAvGYA3BkPhx6xdLvGESZgrJZUiEcEDjMxoHIu+nq/m1gz1//NCSR9JAK9bhpsB0DyMH5cGhIS7W+JVvKxiF4xA6NJgdbxuv0Pla9uKxrSrfHvr+jIMVzIui6FRAEZzweZfcvhx69VM1f15Z3ncncX65Uxu2G0MSdCvfPDASnaifX8GKiO6EWxwTYa4cTJDMet3KoduaGDlQ/6K1a+fKbELze7G/ZHJA5kO9vdW45aXRZNb2c3jOW2ba8Iu8Q6gsC3GbFEa2PFGGk1cPhRrM2LUEjkX1xcVyYT/WqKg8A2CmAn4B+PRdgjoDWip1XqHy5w783meij6bmhxf4NftTdgSGLQUwAAAAASUVORK5CYII=",Nt="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAsVJREFUWEfFl0tIVGEUx39nZsxoKpGISlqmC42gxwxCEApBUhC0iR7bMLRyhrZRC6Ntecc0CtoVRRshkbKN0iJ0RmtRBj0WLUKLoEAz0po5cWe4zdWZO/czJuauzz3n9/3P6/sE02/qwSp+fm5FM4dRbUSlDqEu+7syjeg0Iq+RwENWbxqh6eiiiWvxNZrq28z870vASdD1vvZZA5kF7hIOddN05lOpf7wB3iWq+aYXED2PEjYLvMxKmEflKrVyhfquhWI+igPkTj0A2vxPgQt+kjHCoSPF1CgEmOzZQVqGQLeWJ7jjRT4SCBxkz7mXbr9LAXInT5U/uAsiHIq4lcgD5HI+Wj7ZvfSTMWqlxamJPEDS6ga9WF7ZPSEuE43ZnUUOwJb+x6/3ntUujBOqPsbOjg+egBNWK6qDRh1jd8eaqm12KnIASasftMPTuXCKSPy2rzrPr+8jnR5Cda2vLXKDaKxTsCfc/MyXkkNGAieIdN3zdwqkevei6UfAutL2Mkt4y0ZhsvcA6fTjksYrAbAdTSaaSeuw7+QMBtuECauPjHaWFcB2lkrE0cy1kn4D0i+kekZQWsoOMJHoIJPpL+2XUSFpvQFtMAZIWneA7Xl7HSQaL2xfEwDkrZCy5nyr1l0DKasdJT+mg7xgd2yg4AAmACLfVw4wcbMGqCqqWM3CIvVd9ioGEwCYM0yBHCcSu591nLLGUY16pGyYaLzNHCCbApMidAMkdqIUv5gE5OvfbWeigNhFaNSGSwD2o7KhqAIhmWHX2afGCmTb0GgQuQCSPc+ASFEAkSdEYoeMAbKDyGgUuwCM5rFJETqj2GgZyWkisVumsXPF6jcJnWVkG/uuY3lFMNhOpsp7HbvpMgsNoPaGbSyequXrOKdCBS8kNkDFr2ROKip2KXWSVdFruQNR0YeJA1HRp5m7dyr2OF3ewP/pef4HW7pxo3nDj9QAAAAASUVORK5CYII=",zt="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAA75JREFUWEe1l19sU2UYxn9v2dwGzmSoEZJtRhY1StAQtN2YkEUiYOL/C6LhQtPWLQwXwXAlRKsXcjMUJQzFrUaCesGFjptBREJ0iXQmXOGCIQKJZDH4Z2Jm6UZ7HnNqCx30z2ktJ2lz8p3ned7ne8/7ft/5DI9Xb5dunonzJLDSgWVAi0GTjGlgIvM76RPDzXP5NnLMkl6krRSoe7naUileF7yAaCiFd5+bMYn4pL6Rd3Z/Y38U4xQ0EInId/4QbzhiG2KOl8DXYgwu4mP7mhb61x2wVD6NvAb6Vuj2+AyfSTxWSeDrOMaRulrW7Rm1yTwmZw+FOrQUh4MSzVUJnhUxTtfVsnbPqJ3J1Z2Vge4u3ZaMc8ItsKoGv2riVE0j7XuP2MWrQ5k7953/MsKIxOobEjwjanBozZ08ka2JKxkItyviOLx5I4NntX3GK4Mx253uGPfPbbVkip8qrfayTRsX6htoGzhmU2kDoYCGJIJehAx+NzgsuF+w1AunACYSHbO3zF3hEpe44GWRMWPKxAODY3Y2bdyvZ4B+QVu5Rsw4OxSzRRYK6HmJLzwKHI6O2dpcbN/jqotPsgmxVaLRo04a5jMedA18KNHjkfhldMyey4ft7dKC6Utsl3gxW1ulNH0+tlnQrzHg4VLgzPOCBrL8YKce4jLvA8tLaZqx383ArxJ3lAJ7NXDFSLtew2FHUV3jqIX8Sgjqqm0g013jEvcV1DZOWTCguJcOKDcDLj7o18/AokIGDH50MzAhWFjNDLid8c+f7EBsLKZrxtduDYxKdFbLwMsdejaVor/YzLOxDD61sF8fOND3fw10d2hJ0mEn4lGPWu46sMXCAT3tiK88kYyj0ZitysVuXKVbE1O8Legpdy+pNe6xzPtyl+JbSpowEjVG597jdiLSpZrzCXolIhJNJbnXAozxaMwWpzejYEDvITZ5EjESBj9I3A0s8MTJA/IZmwdjtvO/7XiFFiZnOIOor1SwLJ5xrrWVeyMHbCb3g2SD4zBQllCFYJvD+qHv7XOXPuubMOzXfgfWV6jrjWbsi8bM3bDS1ywDW1Zr3uRfxASLvamVhzLj+Nz5dO0aMfc0db0BdyTs112OMYxYUp58cXQ6+E08tes7+y0XmfdgsrlDDX87DEi8VBUTxr558+nOnXnBDOQGDPsVcox3Pa0R+Zwa58zH1mzB5YeUmOKGR9R0OcmrEiHPpyVj3AcfN7cy4LZasRAlT8dZsiTraaczKVaasUyixYwmxDTGBGIC42QNDH8Us9NeX92/T9xk1NzUiXsAAAAASUVORK5CYII=",Pn="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAA9tJREFUWEe9l11sFFUUx///3ZmyrVWMCQsWig+1Kr6w2wZM/CwaP/CBByM8mOhrQyBYt2pMwGD8NmG7tX7yZEx8gsTAg2J4sDUBjJKy1QSjQiNF0WA3tdDalp3Z+ZvZ6W637W5nt906bzNz7v/8zrnnnnsvUeajQ9tr7D8GH6S0TdQGCQ0kGiBIxJ8E/qJwVkEcNWqDfWzvt8qRpp+REq03Z+Dsl6OnBFzvZ+/+J3iF0GfB4IrX2PHd5YXGlATQJ20h+58rewHEJNWV43iuDYlxEAeMtc1vccfhdDGNogBu1LYyRyRsXozjIiAnjdq6J7jz1N/z/s39oHh0o019IWFtNZznNciLpoGt3JP8qVB3VgamIz9ddeczFEOmiU3ckxzOfcoDeHM++k210l4qewROGI3ND+VqIg9gxSOvC3CLbtkfBgL7zOfOvOGtGABe6p3zi632SolJXjWuCzSxvT+VBbAT0Y8dR+2VCi3Fngy8a8bOdDDb4X4/l/JrMqbJcGHx6KO7w9bExGWSGQOhMGPfjuSA9MGmRmvKurhgAyJGjHXNYVpdLY9JzjG/aGo6B+b1jHQ8IhLXzNhAqHC8W9DWyOiknyYDxhba8eiHDrTTz3gugCRaXVFnSQBEwhXpk/RApQCu/ZIzQH7FdDzyC4Db/AAqqoHu1vVWJjPkpwnyR1pdkTEJ9b7Gy2BAMEUrHrnqtwKmG8YYiIk8h1A3axxxIcDAPjk6IGhNObwkh5nuivwM4Xa/AeaqcD2fOf7vzFJrq7emRsey78QFs4Zt3J0c0nutd9hpp7csCPIHdwp6JbT5AZRahoXO83BlQpA8Rjseed8BdlUKkFuGAJ+t6Uz2zB1vJaIvy9GrCzcjxml1Rx5WBscrBShYhuMIBLeaHf0nchpWd8ujyOiIoFkNaq4PMnA/dbDVtMedYUErF4Iwg4GNMIMzJ5ope7UFDWRLwD16TUOU7RxMGY23rvE2ozKnwae3jwM8CGGXX+QeNONmLPm8tx1337Xadq6d/7/6AYlRA7VN7gY2cyBJRPbLwSt+tVCN/wRfMjuT70z3F0/Su3ic+1rCPdVwUkqDRK8RvfERbumzZwFkIdw9fnLyNKT1ywPBQZOhzYVnh3l7vHqid1oWvgR0S3UhOGiuMB/n7u9/LdQtfjHpia6yLX0u4N5qQGTTjtonCyPP6Za+mrk1cWnwBUgvSrphMSButUN822hZGc/N+bxm5CcsNxs29wLO0xJu8rP3CospEJ8aCL1ZLGrfKSjmRIe2B+1Lv90H2dsAbhDQQKEBhATveg7gLMCjxrqmU9xxOFMO7H8KhNHxXAeU2AAAAABJRU5ErkJggg==",Mn="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAcCAYAAAAAwr0iAAAAAXNSR0IArs4c6QAAA05JREFUSEvFl1+IVHUUxz/n3jvOH92HfFpWEi2tWAwLIvChh+1lc9bY7EFS8iGKtIdeCnwxREmEXgyfEoRktdIgKrLdQqRFLURQ0lr/ryy02QwLK9u67uzsvfd39I6uzNyZO3PHQZzH+Z1zvp/f9/x+Z34jNPG5NUCn4/MigmMpkz7kxSGXSpGXLmaaKPUgVOImTfXT7kBvVLwxTIhFTiCf9MhJL7fi1C4B6CCp2QJbjNKDsAxlYZzkqBiB/zVwB/rF5sviNPm2tdwUQcM5EogXC5xVpbMV0Tow54C9CrMi5D0lNz/DsHQxFeRIcYBtRtnxKMTnaorwBcr5cg2x+T35Ghek0M9p4OVHCgAnga/LNdRgUgX6pDDAeKs9bwRvCVdU+Twcl5zH4cCBqoPRqGCz6yL8i7KzIs9Ch/5h/2MDMIbxzOt81zKA1bGRxLOfov407tAH6M3jVQbVcsAIQ5ksf7QEYD+1hcRznz0Q1MIoxcHFsQAQjqWyXG8AYAN+zZY7z+zEWba1Yk292xSPtgWjreL7Wg5MOHzV3s3tSAB76UcEIniTuH+/jxn76X5Rwencg7Pkwyow98pW/Ou7GjpgYDLTw6HSIKp5C5IdJF8dRcQqFVPj4Z57C5P/Eef5fThPvlMl4l3bgXdte023wg6ocjW9hsFIAEkvIdk1Ummv8dCJU1gLX6ne+aWP8Ud2R97OMIA4HE92cznaAcBZsRdn8aa6V17V4A1txh/dVzcuDFCY5dsn1jJRFwAsEiv7sBe9XbN4qS3nN2JyhxvOpXIAVWbSa+ibS2p4CxIrD2Av2lDZDn8G9891mLEjDcVLuyyfhMJIKsvRmABBmE3ihYPYHevvHUhvCvdsL2b8t1jiYQDP4tSC1fzVBECpBFbHBiTzNOa/b9Dp4djiYQC3yA9tbzLWJEBTepFzQBUvdYb9sh3zWAB8uDG/h5/LCVv6LYjry9whdIWTbVkuhgFyd99s7XGLPUycCBeMYdvFGxx5aRNuGOAEUD3eHkYpKkc4kErzrnThhUOCFrwH1B9lLcAET3HLZtW87tLbs/qAqiLFX/helTda0KmZGogr7Epn+STanPsrxV/pVUPP3dfrcmjtjwmQQxi2LA5G7XwO6A7Rr2QOpC6bTgAAAABJRU5ErkJggg==",lr="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAcCAYAAAAAwr0iAAAAAXNSR0IArs4c6QAAAg1JREFUSEvtl09IFFEcx7/fN6hhQS5FiOShEjwUFIWt00FPdYlw25BO/YOOC0XQHmT35EgYHYJOQacugrC7eDa7iLbbpWutWUSGJR1WpSLZfb8YYWtWZ5gZkT3EzPV9v7/vh++8ebxhPGctAnIUQR5ymZBZ1cb0/MXMp7rFLFhntWCEkD4RdAUYpUnOsLN9iPHcqAQwNEhIrktL65nSpfSCWbBSovFYIEboOUpdbQAg+BaUdbdBAhyHoL2+RnJakemalteAtFzoPoHLR07j4J59vhzp4iQ+rn2HUrj9D4BYKiWz3V5uMz92X4t+6AD4DcGEQG4OdvVivH/YN7guuP7yGcqVr1sBWC4lM72eAAUrpbU8ca4bSlVqWnfY4TZE0McVgERVwKyCxysQXBMg7hbydPAGTh7wLG+bxb2BoPguuv8GYEMR9wD19ysQkT6BpPzK2Z0GuH0TmlMPenS1utAUAIJfilcyh51h5wpjp2pav2kKwGYIsUTAcRCxU0RizQPwS/JY3509sMNw2xYBRA1EDUQNRA3YDcTa9uJdZRmrG798z9Tn5Xms/Fzbcif0tXkLevYfwvvVldATaOA8zZx1V4BjgdxETIABiLheAEkuAvgQYFaNwMyrZOYRA4gbJMMyaXzOl+0fEcdNiT9oSKKYyL4IOy80QD2gPz9qAbgFwTfDMO7MJUZmw4bb+j/0UVXnXVodrAAAAABJRU5ErkJggg==",or="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAABSZJREFUaEPlWltMHFUY/v+ZWWCBliJbhAopIgaEgsAu0CoJ1jYpaYyJ4UFNrKlPFNrSGl9MBDoFTEyMsaVye2vERF+IL8bQhFpJaGRhuShQt0lBCFgQ2CAU2GV3Zo45S5YsuzPsLCypo/N6/tt3/us5ZxA0/mEo7Od5wtng13yn5DyBwDyPhBwlhBwkiFFUPhKyhogrBHGKgPRHGBP2Sxy8PMjzKOxV/64BtLVZdMOzTAkRXK8BYjEARgdnDFkFQnqQ0/2cmyh1l5ebXMHxb1IHDYAQghevD54RRbESAY/sRqkvDwHymGXZ5qZr+XcQkQQjMygAl/nhQpcgVAGSjGCUqKYlaNVxXOMtPrdPLY8qADxPmL9ESxUBeE+t4L3QIcA3z7KmRp5HKZCcgAAq+bFoIPZPJYm8GkhYKNcZBu8D6j9p5rNWd5K7I4BL1waPCJLQCIApgYwTXBuwtPgIbHNWsK8tgnNjFRz2ZTdbhD4GwsKjQR9lgLiEDIg1pAGnCw8kEgDIJMdwVV9dz3+sRKwIgO68JK7dDmT8k+U/YdL6E9jmrUBEdVURWQ7i4jMgJeN1OBDzXAAgZJJho84reUIWAI35eTLw5U5hY19fgonf78D89JCKnVQmiU/Og9SXzoA+MlaRiIZTPBo/lMsJWQAVNf1Xd0pY29xDeDDwLQgu+56M9zBzOj1kGt+FuIR0RXk0sVvqC274EvgBuFhnKRJdpElJ0vR4Nzwa6QSAgAUiSHAMpGWXQvILJYp8OlZX6VtitwGgTaqiZqBdqc5vGv9jkIYFR56WfVYZBEFrS73xnHez2wagkh8olUSpQU4lDZvfem/vw877amMg5/h5xXBiWKa6mTfSEHB/WwDobDM4I3XIjQc0YS33boYs5gP5hOaE6eQV2cSmY0d+ElPmmZ22AFTwg6eJKH4mJ3xs4DvV1UYfFad7MefNZDk5G/YV58PhjplAAOg6rU5ZxndkSZFlP27h87u2eeBCtbkBkCn15aB13nKvUY1ON030oaQIU8mlLDkGx5rN3tv1+QO1wkwnq+T7BJE6WxuKqrcA0Hl+TuzvkhuJR83tsDA7qlZnSAEYEo9BdtE5Gd1kNYEtOE3PE+4Qck+ZoqvZl5KOBz2ddao7bKg9QDt2cWmt7NjhKaluAEqNa2F2DEbNX6ve/VADoPKOFb0PhxP9I5IgaW+rK7zpBnCh1nIDCCn2tdQ61AGzU8qjOU1YVqdnvfkiow+HZxrfTpNNYseyY8TcPu675lhfcgrONdnOmHi0EDLyyvzFIfa01pmuejzwPQHwqxxDPW3w9+KEogdyTnyQ+kx8uvIQo9J31uGOibmp/iU58kOGVMgrLvdbQoDplvqCtzY9UN13FxBjfKnMd7+A9SfzTxVA5IF4KDr1kb8NhCy3NhSecgMor+nvRQDOl6r7h1qQhI2nCoDhwqHkjTo/GwiA0FZfcPy/AUDzIVRR06/xJN5lGU3PLUuKNaQe9A5QZDkMj4iJkE0cSZIc9iW/pBof65xZmB1ZkeNRVUbLa/uuIEG/nq2ZRqb5UWKnYW7E3A6L//ZhbrOZaXicdg90ITrQhOo8EPSBJlRHSi4sijEkZvqNJXSTRKdDVKo23hVoV0dKKkDTh3oKQPPXKhSEpi+2PHGo6atFCkLzl7ubCa3h63VPKGn6gcMDQtNPTB4Qmn7k8+6Q7hLrhMv7+czKhsGtplqTWeWFxv/sodt7VzT7q4Gcaz0/ewii6xWCmKKJnz3Uxuh+0/0DF9aFXrFDGJoAAAAASUVORK5CYII=",Br="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAABL5JREFUaEPdWntMW1UY/53b0s4sQAfDPeKWza1kPDIFCjHRRBM3p0xDnG7Z2PxHjVCn0fjYoqF4bYlmmxqNTkp8/OMeuk0N0REnmmiiiYECZgFmaJDFmT1kkDKyzEJ7PnMKl8Dtvb0trY/r/fd8r9/5vvM9zrkMJv9YJuyXZbIO857bI4huAqGYgQpByCPGsoV8RjQOhlECGwBDvxWWUwVS2feyzCLp6p83AFnus13i12qI8xpibDOIHCkZw1iIEZ1kktS6RLquVZZLJlLinyZOGQARsccbu3Zw4k0AVs9HqQbPkMSkhne9FUcZY5SKzJQA7G7svjPCo/sBKk9FSfK0rNsqWfYc9JZ/myxPUgBkmaRL0a59nPhzyQpOh05i0mtLLBV7ZZlxIzmGAJ58KZgzyUNHiajaSFgm1xljbVmSY8fbLzuvJJKbEEC93LMK0UgbERUZGWe3WVDszEVpYS4K8uxwZNuQm50VYxsbn0RofALDo2H0DoyhPziG8ETUSCQYY2dgsVb75bKzesS6AKZ3/icj41cuX4jqO5aj1JkLq9XQoTE7IhFCb3AMbd+dx2/nryYEIkBkSY5b9DyhqVHE/MVo4ItEYZPvsKNm4w2oWp9nuJOJCDpOj6K1/XeMhMK6ZCKcllpc92mdCU0Abk/gQKIDW1rowKPbbsQCuyUt4xXmP8NRvH/sV/QOhHTliYPd7HM9ryaIA+CWOzfwCLXrSdp421JsuWsFWHLRkjRAIuCzr8+h/YeLujxWybpBnWLnmCGKVL0nENDL88L4BzatSNqo+RB+eioRCNbt97lcs4vdHABuT6CWEz+spViEze5dzozvvFqX8MTBQ0HdcJKYtLPZ5zqi8M0AEL3NhcjVX7TaA3FgPU+UZCzmjTwjzoTvnT69gz20zLpwndI7zQBwNwa2cs6PaQl/eOuatLONkdHqdZGdPjw+qMkmSdK2Zq/ruFicAVDf0HGIgJ1qDpHnX3QXp6o/I/SvNPdr1gkGHPY3Ve2aASD6+QvRwLBWS+yudeKmotQ65YxYD+DnMyH4jwTjxTEWWmZxFYh5IuaBqS4z8o2aUrQHr79QlnSFzZThihxRsZ99tUez7VBSagyAXuEqK8lD3fY1mbYrJXktHw+ip280nkdiB1q8lXtiAOo8nV+CaLOa6qH7V+PW8sW6CkNXJnEtbNyUGVm8KMeGBXZJk+zH7sv46PMhrTA62eKrvDcGoN7TMUAEp5rqmUfWoXBVbKzV/N77ZBBdvRq7Y2Sxav2x7WtRXrJIk2vg7Dje+EBk97kfYwj6fVWFUwAaOi4TkK8m8j69Htfn2/9VAH+MhNH45ul4AMCIv6lqsRJCYRDZ1FRveSpgt2m7VtD+Ex4IT3A85evSCqGJFl+l/f8BwPQhZPpDPN80euKrc7H5Nt3vwXtWonhtzvzTaF1j535wipt2TFPITN9KJGrm6muduPm/3sxNFzPzttMCgOkHGtOPlDEvmHmoFwBMf60S84KZL7aUUmjqq0UBwvSXuwKEqa/XlVAy9QOHAsLUT0wKCFM/8s1u0qdSLPb9nc+skhV7m+XKuEs2vZkj5WcKUz90z94F0/5qoOVK5WcPTvxuDioyxc8e6c7BmeL/C6MjFF4PO1ITAAAAAElFTkSuQmCC",Dr=Ie(43604),qr=Ie(5083),ja=Ie(66649),$r=Ie.n(ja),ca=Ie(22392),ba=Ie(83636),Ea=Ie(1536),Nr=Ie(45106),Or=Ie(59301),Ca=Object.defineProperty,xi=Object.defineProperties,ci=Object.getOwnPropertyDescriptors,Si=Object.getOwnPropertySymbols,Ni=Object.prototype.hasOwnProperty,Mi=Object.prototype.propertyIsEnumerable,di=(E,a,y)=>a in E?Ca(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,Mo=(E,a)=>{for(var y in a||(a={}))Ni.call(a,y)&&di(E,y,a[y]);if(Si)for(var y of Si(a))Mi.call(a,y)&&di(E,y,a[y]);return E},co=(E,a)=>xi(E,ci(a)),No=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},ee=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const Vo=({classroomList:E,dispatch:a,courseEndTime:y})=>{const x=(0,Ce.useParams)(),[b]=we.default.useForm(),[z,ee]=(0,Fe.useState)(1),[re,ae]=(0,Fe.useState)([]),[se,fe]=(0,Fe.useState)(0),[me,Ee]=(0,Fe.useState)(20),[Oe,ke]=(0,Fe.useState)(!0),[We,je]=(0,Fe.useState)([]),[Ke,Ze]=(0,Fe.useState)(!0);x.coursesId=x.pathId,x.id=x.coursesId,(0,Fe.useEffect)(()=>{if(E.actionTabs.key==="\u7ACB\u5373\u53D1\u5E03")if(st(),Je(),E.actionTabs.type===2){const _t=E.actionTabs.selectArrsAll[0];Ze(_t.unified_setting)}else Ze(!1)},[E.actionTabs]);const Je=_t=>No(void 0,null,function*(){ke(!0);const Yt=yield(0,ca.c_)(co(Mo({},x),{page:_t||z,limit:2e4}));Yt==null||Yt.course_groups.map(($t,En)=>{$t.key=$t.id,$t.title=$t.name,$t.disabled=$t.is_published}),Yt&&(ae([...Yt==null?void 0:Yt.course_groups]),fe(Yt==null?void 0:Yt.course_groups_count),ke(!1),_t||b.setFieldsValue({publish_time:$r()($r()(new Date).add(0,"days").format("YYYY-MM-DD HH:mm")),end_time:$r()($r()(new Date((0,ht.qd)("/"))).add(7,"days").format("YYYY-MM-DD HH:mm"))}))}),tt=()=>No(void 0,null,function*(){var _t;const Yt=Mo({},b.getFieldsValue());if(Yt.end_time<=Yt.publish_time){_e.ZP.info("\u622A\u6B62\u65F6\u95F4\u4E0D\u80FD\u5927\u4E8E\u6216\u7B49\u4E8E\u53D1\u5E03\u65F6\u95F4"),Lt(!1);return}if((We==null?void 0:We.length)<=0&&!Ke&&re.length>0){_e.ZP.info("\u53D1\u5E03\u73ED\u7EA7\u4E0D\u80FD\u4E3A\u7A7A"),Lt(!1);return}let $t={ids:[...E.actionTabs.selectArrs],group_ids:We.length>0?We.map(on=>on.id):(_t=E.detailShixunsList)==null?void 0:_t.course_groups,end_time:$r()(Yt.end_time).format("YYYY-MM-DD HH:mm"),publish_time:$r()(Yt.publish_time).format("YYYY-MM-DD HH:mm"),unified_setting:!We.length,subject_id:x.pathId};Lt(!0),(yield(0,te.ZP)("/api/subject_knowledge/batch_publish.json",{method:"post",body:Mo({},$t)})).status===0?(a({type:"classroomList/setActionTabs",payload:{}}),a({type:"pathsDetail/setActionTabs",payload:{key:"\u66F4\u65B0\u6570\u636E"}}),Lt(!1),st(),(0,ht.L9)(["\u6559\u5B66\u8BFE\u5802","\u8BFE\u7A0B\u5B9E\u9A8C","\u7ACB\u5373\u53D1\u5E03"]),_e.ZP.success("\u53D1\u5E03\u6210\u529F")):Lt(!1)}),st=()=>{ee(1),ae([]),je([])},gt=se>z*me,{detailShixunsList:mt}=E,[ct,Lt]=(0,Fe.useState)(!1);return Or.createElement(Pe.default,{width:600,centered:!0,confirmLoading:ct,title:"\u53D1\u5E03\u8282\u70B9",open:E.actionTabs.key==="\u7ACB\u5373\u53D1\u5E03",okText:"\u786E\u8BA4\u53D1\u5E03",cancelText:"\u53D6\u6D88",className:Nr.Z.modal,onOk:()=>tt(),onCancel:()=>{st(),a({type:"classroomList/setActionTabs",payload:{}})}},Or.createElement("p",null,"\u5230\u8FBE\u53D1\u5E03\u65F6\u95F4\u540E\uFF0C\u5B66\u751F\u5C06\u5728\u5404\u6559\u5B66\u6A21\u5757\u4E2D\u67E5\u770B\u5230\u5B66\u4E60\u8DEF\u5F84\u7684\u4F5C\u4E1A\u3001\u8003\u8BD5\u3001\u89C6\u9891\u3001\u8D44\u6E90\u7B49",Or.createElement("br",null),"\u53D1\u5E03\u64CD\u4F5C\u4EC5\u9488\u5BF9\u672A\u53D1\u5E03\u8D44\u6E90\u7684\u5206\u73ED\u751F\u6548"),Or.createElement(we.default,{form:b},Or.createElement("div",{style:{paddingLeft:0}},Or.createElement(Ru.Z,{className:"mt30",align:"middle"},Or.createElement(Dr.Z,null,Or.createElement(we.default.Item,{name:"publish_time",label:"\u53D1\u5E03\u65F6\u95F4"},Or.createElement(qr.default,{style:{width:170,marginRight:"25px"},disabledDate:_t=>(0,Ea.Q8)(_t,y),disabledTime:_t=>(0,Ea.d0)(_t),placeholder:"\u8BF7\u9009\u62E9\u53D1\u5E03\u65F6\u95F4",showTime:{format:"HH:mm",defaultValue:$r()((0,ht.U6)(),"HH:mm")},format:"YYYY-MM-DD HH:mm",allowClear:!1}))),Or.createElement(Dr.Z,{className:"ml20"},Or.createElement(we.default.Item,{name:"end_time",label:"\u622A\u6B62\u65F6\u95F4:"},Or.createElement(qr.default,{style:{width:170},placeholder:"\u8BF7\u9009\u62E9\u622A\u6B62\u65F6\u95F4",showTime:{format:"HH:mm",defaultValue:$r()((0,ht.U6)(),"HH:mm")},disabledDate:_t=>(0,Ea.Q8)(_t,y,b.getFieldValue("publish_time")),disabledTime:_t=>(0,Ea.d0)(_t,b.getFieldValue("publish_time")),format:"YYYY-MM-DD HH:mm",allowClear:!1})))),E.actionTabs.type===2&&Or.createElement(Ru.Z,{style:{marginBottom:"10px"}},Or.createElement("span",{className:"mr5"},"\u53D1\u5E03\u8BBE\u7F6E:"),Or.createElement(pe.ZP.Group,{value:Ke,onChange:_t=>{Ze(_t.target.value),je([])}},Or.createElement(pe.ZP,{value:!0,disabled:!E.actionTabs.manage_all_group},"\u7EDF\u4E00\u53D1\u5E03"),Or.createElement(pe.ZP,{className:"ml20",disabled:re.length<=0,value:!1},"\u5206\u73ED\u53D1\u5E03"))),re.length<=0&&E.actionTabs.type===2&&Or.createElement("span",{style:{marginLeft:"65px",color:"rgba(0, 0, 0, 0.25)"}},'\u8BFE\u5802\u65E0\u5206\u73ED\uFF0C\u4EC5\u652F\u6301\u9009\u62E9\u201C\u7EDF\u4E00\u53D1\u5E03"')),(E.actionTabs.type===1||!Ke)&&re.length>0&&Or.createElement("div",{style:{display:"flex",justifyContent:"space-between",marginBottom:"10px"}},Or.createElement("span",{style:{flex:1}},Or.createElement(Nu.default,{checked:We.length===re.length,onChange:_t=>{We.length===re.length?je([]):je(re)}},"\u5168\u9009")),Or.createElement("span",{style:{width:16}}),Or.createElement("span",{style:{flex:1}},"\u5DF2\u9009\u62E9",We.length||0,"\u4E2A\u5206\u73ED")),(E.actionTabs.type===1||!Ke)&&re.length>0&&Or.createElement(ba.Z,{data:re,selectedRowKeys:We,setSelectedRowKeys:je})))};var ys=(0,Ce.connect)(({classroomList:E})=>({classroomList:E}))(Vo),$a=Ie(59301),Ys=Object.defineProperty,vs=Object.defineProperties,Oo=Object.getOwnPropertyDescriptors,Ko=Object.getOwnPropertySymbols,qo=Object.prototype.hasOwnProperty,Ns=Object.prototype.propertyIsEnumerable,ns=(E,a,y)=>a in E?Ys(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,Zo=(E,a)=>{for(var y in a||(a={}))qo.call(a,y)&&ns(E,y,a[y]);if(Ko)for(var y of Ko(a))Ns.call(a,y)&&ns(E,y,a[y]);return E},il=(E,a)=>vs(E,Oo(a)),Ps=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},ee=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const Rt=[{name:"\u672A\u53D1\u5E03",color:"#9AA4B3"},{name:"\u5DF2\u53D1\u5E03",color:"#37AD83"},{name:"\u672A\u5F00\u542F",color:"#92D2B7"},{name:"\u672A\u901A\u5173",color:"#EE5D5D"},{name:"\u6309\u65F6\u901A\u5173",color:"#37AD83"},{name:"\u8865\u4EA4\u901A\u5173",color:"#288A67"},{name:"\u622A\u6B62\u540E\u901A\u5173",color:"#929628"},{name:"\u672A\u5F00\u59CB",color:"#92D2B7"},{name:"\u8003\u8BD5\u4E2D",color:"#FFC86B"},{name:"\u5DF2\u4EA4\u5377",color:"#37AD83"},{name:"\u5DF2\u4EA4\u5377/\u672A\u7B54",color:"#929628"},{name:"\u672A\u770B\u5B8C",color:"#FFC86B"},{name:"\u5DF2\u770B\u5B8C",color:"#37AD83"},{name:"\u672A\u67E5\u770B",color:"#9AA4B3"},{name:"\u5DF2\u67E5\u770B",color:"#37AD83"},{name:"\u5DF2\u4E0B\u8F7D",color:"#377DFF"}],Wt=({pathsDetail:E,setselectitems:a,publishshow:y,node:x,index:b,onExpandClick:z,onClickDetails:ee,selectitems:re})=>{var ae,se,fe;const[me,Ee]=(0,Fe.useState)(!1),Oe=(0,Fe.useRef)(null),{name:ke,complete_rate:We,node_type:je,resource_info:Ke,grasp_rate:Ze,has_children:Je,children:tt,expand:st,key:gt,is_publish:mt,status:ct,id:Lt,url:_t}=x||{};(0,Fe.useEffect)(()=>{var xn;Yt();const Ln=(xn=Oe.current)==null?void 0:xn.parentElement;if(!Ln)return;const nr=new ResizeObserver(()=>{Yt()});return nr.observe(Ln),()=>{nr.disconnect()}},[st]);const Yt=()=>{if(!Oe.current)return;const xn=Oe.current,Ln=xn.parentElement,nr=xn.previousElementSibling,An=Ln==null?void 0:Ln.firstElementChild;if(Ln&&nr&&An){const fr=nr.getBoundingClientRect().height,ra=Ln.getBoundingClientRect().height,aa=An.getBoundingClientRect().height,Gr=fr/2,Sr=ra-(aa+fr)/2;xn.style.bottom=`${Gr}px`,xn.style.height=`${Sr}px`}},$t=(ae=Number(We))==null?void 0:ae.toFixed(0),En=$t==="100",on=En?je==="\u5B9E\u8BAD"?"\u5DF2\u901A\u5173":"\u5DF2\u5B8C\u6210":`${$t}%`,Fn=Ke==null?void 0:Ke.reduce((xn,Ln)=>xn+Ln.value,0),tr={\u5B9E\u8BAD:Uh,\u8BD5\u5377:Ct,\u8BFE\u4EF6:Nt,\u89C6\u9891:zt},Cn=()=>{z(gt)};return $a.createElement("div",{className:Os.treeNode,"data-index":b},$a.createElement("div",{className:Os.node,style:En?{background:"#EDF7EE"}:{}},!mt&&!((se=E==null?void 0:E.detail)!=null&&se.can_managed)&&$a.createElement("div",{style:{background:"rgba(0, 0, 0, 0.5)",width:"100%",height:"100%",position:"absolute",zIndex:5,left:"50%",bottom:0,transform:"translateX(-50%)",textAlign:"center",paddingTop:"30rem",borderRadius:"10rem"}},$a.createElement("div",null,$a.createElement("i",{className:"iconfont icon-suo1",style:{color:"#fff",fontSize:"28rem"}}),$a.createElement("div",{style:{color:"#fff",fontSize:"12rem"}},"\u8D44\u6E90\u6682\u672A\u53D1\u5E03"))),$a.createElement("div",{className:Os.statusbutton,style:{background:(fe=Rt.find(xn=>xn.name===ct))==null?void 0:fe.color}},ct),y&&$a.createElement(Nu.default,{checked:re==null?void 0:re.map(xn=>xn.id).includes(Lt),onChange:()=>{if(re!=null&&re.map(xn=>xn.id).includes(Lt))a(re.filter(xn=>xn.id!==Lt));else{let xn=[...re];xn.push(x),a(xn)}},className:Os.checkbox}),$a.createElement(Ru.Z,{style:{padding:Je?"initial":"3rem 0"}},$a.createElement(an.Z,{title:"\u5B8C\u6210\u7387"},$a.createElement("div",{style:{flexShrink:0,marginLeft:"24rem",marginTop:"17rem"}},$a.createElement(mn.Z,{strokeColor:"#60C059",percentage:We,startAngle:270,trackColor:"#E3E8EF",text:on,textSize:"12rem",textColor:"#60C059",outerDiameter:"62rem",innerDiameter:"46rem",textPadding:"3rem",hoverEffect:!1}))),$a.createElement("div",{className:Os.info},$a.createElement(Ru.Z,{align:"middle"},$a.createElement(an.Z,{title:je},$a.createElement("img",{src:tr[je]||Pn,style:{marginRight:"10rem",width:"16rem"}})),$a.createElement(an.Z,{title:ke},$a.createElement("b",{onClick:()=>{ee(x)},className:"c-grey-333 current",style:{fontSize:"16rem"}},(0,ht.Pq)(ke,19)))),$a.createElement(Ru.Z,{align:"middle",style:{marginTop:"5rem",marginLeft:"26rem",marginBottom:Je?"0":"30rem"}},$a.createElement(Ru.Z,{align:"middle"},$a.createElement(an.Z,{title:"\u638C\u63E1\u7387"},$a.createElement("img",{src:Mn,style:{marginRight:"4rem",width:"16rem"}})),$a.createElement("span",{style:{color:"#1B8565",fontSize:"14rem"}},Ze,"%")),$a.createElement(Ru.Z,{align:"middle",style:{marginLeft:"55rem"}},$a.createElement(an.Z,{title:"\u5B8C\u6210\u7387"},$a.createElement("img",{src:lr,style:{marginRight:"4rem",width:"16rem"}})),$a.createElement("span",{style:{color:"#1B8565",fontSize:"14rem"}},We,"%"))),Je&&$a.createElement(Ru.Z,{className:Os.resource},$a.createElement("span",{style:{color:"#666",fontSize:"14rem"}},"\u8D44\u6E90\u6570\uFF1A",Fn),$a.createElement("div",{onClick:()=>Ee(!me),className:Os.action},me?$a.createElement($a.Fragment,null,"\u6536\u8D77",$a.createElement("i",{className:"iconfont icon-xialajiantou1",style:{transform:"scale(0.6)"}})):$a.createElement($a.Fragment,null,"\u5C55\u5F00",$a.createElement("i",{className:"iconfont icon-xialajiantoubeifen",style:{transform:"scale(0.6)"}})))))),me&&$a.createElement("div",{className:Os.tags},Ke==null?void 0:Ke.map((xn,Ln)=>$a.createElement(an.Z,{title:xn.name},$a.createElement("div",{className:Os.tag,key:Ln},(0,ht.Pq)(xn.name,5),"\uFF1A",xn.value)))),b.length>1&&$a.createElement("div",{className:Os.leftLine}),st&&$a.createElement("div",{className:Os.rightLine}),Je&&$a.createElement("img",{onClick:Cn,className:Os.icon,src:st?Br:or})),tt&&tt.length>0&&st&&$a.createElement("div",{className:Os.nodeWrap},tt.map((xn,Ln)=>$a.createElement(Wt,{key:xn.key,onExpandClick:z,onClickDetails:ee,publishshow:y,setselectitems:a,pathsDetail:E,selectitems:re,node:xn,index:b+"-"+(Ln+1)})),tt.length>1&&$a.createElement("div",{ref:Oe,className:Os.line})))},dn=({data:E,onExpandClick:a,selectitems:y,onClickDetails:x,pathsDetail:b,setselectitems:z,publishshow:ee})=>$a.createElement("div",{className:Os.treeNode},$a.createElement("div",{className:Os.nodeWrap},E.map((re,ae)=>$a.createElement(Wt,{key:re.key,onExpandClick:a,onClickDetails:x,pathsDetail:b,publishshow:ee,selectitems:y,setselectitems:z,node:re,index:String(ae+1)}))));var kn=({visible:E,onCancel:a,subjectId:y,onClickDetails:x,pathsDetail:b,dispatch:z})=>{var ee;const[re,ae]=(0,Fe.useState)([]),[se,fe]=(0,Fe.useState)(!0),[me,Ee]=(0,Fe.useState)("\u5168\u90E8"),[Oe,ke]=(0,Fe.useState)([]),[We]=(0,Ce.useSearchParams)(),[je,Ke]=(0,Fe.useState)(!1),[Ze,Je]=(0,Fe.useState)([]);(0,Fe.useEffect)(()=>{st()},[me]),(0,Fe.useEffect)(()=>{b.actionTabs.key==="\u66F4\u65B0\u6570\u636E"&&(z({type:"pathsDetail/setActionTabs",payload:{key:""}}),st())},[b.actionTabs.key]);const tt=(_t,Yt)=>Ps(void 0,null,function*(){const $t=yield(0,te.ZP)("/api/subject_knowledge.json",{method:"get",params:{id:_t,subject_id:y,node_type:me}});if(($t==null?void 0:$t.status)===0)return Yt&&ke(($t==null?void 0:$t.node_types)||[]),($t==null?void 0:$t.data)||[];fe(!1)}),st=()=>Ps(void 0,null,function*(){fe(!0);const _t=yield tt(E,!0);ae(_t),fe(!1)}),gt=(_t,Yt,$t)=>Ps(void 0,null,function*(){return yield Promise.all(_t.map(on=>Ps(void 0,null,function*(){return on.key===Yt?yield $t(on):on.children&&on.children.length>0?il(Zo({},on),{children:yield gt(on.children,Yt,$t)}):on})))}),mt=_t=>Ps(void 0,null,function*(){fe(!0);const Yt=yield gt(re,_t,$t=>Ps(void 0,null,function*(){var En,on;const Fn=il(Zo({},$t),{expand:!($t!=null&&$t.expand)});return!($t!=null&&$t.expand)&&!((En=$t==null?void 0:$t.children)!=null&&En.length)&&(Fn.children=yield tt(_t),((on=Fn.children)==null?void 0:on.length)===0&&(Fn.has_children=!1,Fn.expand=!1)),Fn}));ae(Yt),fe(!1)}),ct=_t=>Ps(void 0,null,function*(){fe(!0),yield x(_t,!1),fe(!1)});return $a.createElement("div",{className:Os.tree},$a.createElement("div",{className:Os.center},$a.createElement("div",{className:Os.head},$a.createElement("div",{className:Os.del},$a.createElement("i",{onClick:a,className:"iconfont icon-shanchuhuanjing"}),$a.createElement("b",null))),$a.createElement("div",{className:Os.body},se&&$a.createElement("div",{className:Os.loading},$a.createElement(ce.Z,{spinning:!0})),$a.createElement("div",{style:{display:"flex",justifyContent:"space-between"}},$a.createElement("div",{className:Os.tabs,style:{flex:1}},Oe==null?void 0:Oe.map(_t=>$a.createElement("div",{onClick:()=>Ee(_t.node_type),className:_t.node_type===me?Os.active:void 0,key:_t.node_type},_t.node_type,"\uFF08",_t.count,"\uFF09"))),We.get("type")==="classrooms"&&((ee=b==null?void 0:b.detail)==null?void 0:ee.can_managed)&&$a.createElement("div",null,je&&$a.createElement(Nu.default,{style:{color:"#fff"},checked:(Ze==null?void 0:Ze.length)===(re==null?void 0:re.length),onChange:()=>{if((Ze==null?void 0:Ze.length)===(re==null?void 0:re.length))Je([]);else{Ke(!0);let _t=[...re];Je(_t)}}},(Ze==null?void 0:Ze.length)===(re==null?void 0:re.length)?"\u53D6\u6D88\u5168\u9009":"\u5168\u9009","\uFF08\u5F53\u524D\u9009\u4E2D",Ze==null?void 0:Ze.length,"\uFF09"),je&&$a.createElement(ge.ZP,{style:{marginRight:"20rem",borderRadius:"24rem"},onClick:()=>Ke(!1)},"\u53D6\u6D88"),$a.createElement(ge.ZP,{type:"primary",onClick:()=>Ps(void 0,null,function*(){if(je)z({type:"classroomList/setActionTabs",payload:{key:"\u7ACB\u5373\u53D1\u5E03",selectArrs:Ze==null?void 0:Ze.map(_t=>_t.id)}});else{Ke(!0);let _t=[...re];Je(_t)}}),style:{borderRadius:"24rem"}},je?"\u6279\u91CF\u53D1\u5E03":"\u53D1\u5E03\u8282\u70B9"))),$a.createElement("div",{className:Os.scrollBox},$a.createElement("div",{className:Kn()(Os.treeWarp,!0&&Os.allTreeNode)},$a.createElement(dn,{pathsDetail:b,selectitems:Ze,setselectitems:Je,publishshow:je,data:re,onClickDetails:ct,onExpandClick:mt}))))),$a.createElement(ys,null))},Gn=Ie(90700),Un=Ie(59301),cr=Object.defineProperty,sr=Object.defineProperties,wr=Object.getOwnPropertyDescriptors,Ar=Object.getOwnPropertySymbols,Cr=Object.prototype.hasOwnProperty,ta=Object.prototype.propertyIsEnumerable,Yr=(E,a,y)=>a in E?cr(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,Xr=(E,a)=>{for(var y in a||(a={}))Cr.call(a,y)&&Yr(E,y,a[y]);if(Ar)for(var y of Ar(a))ta.call(a,y)&&Yr(E,y,a[y]);return E},Aa=(E,a)=>sr(E,wr(a)),ha=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},ee=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const Ha=[3,2,1];var Wa=({xxljac:E,pathsDetail:a,dispatch:y,setxxljac:x})=>{var b,z,ee;const re=(0,Ce.useParams)(),ae=(0,Ce.useSelector)(ti=>ti),{pathsDetail:{detail:se={}}}=ae,[fe,me]=(0,Fe.useState)(!0),[Ee,Oe]=(0,Fe.useState)(!1),[ke,We]=(0,Fe.useState)(""),[je,Ke]=(0,Fe.useState)(!1),[Ze,Je]=(0,Fe.useState)(!1),[tt,st]=(0,Fe.useState)(!1),[gt,mt]=(0,Fe.useState)(""),[ct,Lt]=(0,Fe.useState)({}),[_t,Yt]=(0,Fe.useState)([]),[$t,En]=(0,Fe.useState)(""),[on,Fn]=(0,Fe.useState)([]),[tr,Cn]=(0,Fe.useState)(!1),[xn,Ln]=(0,Fe.useState)(1),[nr,An]=(0,Fe.useState)({});let[fr,ra]=(0,Fe.useState)({});const aa=se==null?void 0:se.can_managed,[Gr]=(0,Ce.useSearchParams)();(0,Fe.useEffect)(()=>{Co(E)},[E]);function Sr(){return ha(this,null,function*(){var ti;let to=[...(ti=a==null?void 0:a.detail)==null?void 0:ti.nodes];Fn(to==null?void 0:to.splice(1))})}(0,Fe.useEffect)(()=>{var ti;(ti=a==null?void 0:a.detail)!=null&&ti.nodes&&xn===1&&(Sr(),Ln(2))},[(b=a==null?void 0:a.detail)==null?void 0:b.nodes]);const Kr=(ti=null)=>ha(void 0,null,function*(){var to;me(!0);const ji=yield(0,te.ZP)("/api/subject_knowledge.json",{method:"get",params:{id:ti,subject_id:re==null?void 0:re.pathId}});if((ji==null?void 0:ji.status)===0){Lt(ji||{});const so=(ji==null?void 0:ji.parent_knowledges)||[];Yt(so),ti||En((to=so==null?void 0:so[0])==null?void 0:to.id)}me(!1),Gr.get("type")==="classrooms"?y({type:"pathsDetail/getCourseDetail",payload:Xr({id:re.pathId,knowledge:!0},(0,ht.oP)())}):y({type:"pathsDetail/getPathsDetail",payload:Xr({id:re.pathId,knowledge:!0},(0,ht.oP)())})}),pa=()=>ha(void 0,null,function*(){var ti,to,ji,so,Ao,ss,Qo,Ei,ki,Sa;if(!gt){_e.ZP.warning("\u8BF7\u8F93\u5165\u6587\u672C");return}if(gt!=="\u786E\u8BA4\u5220\u9664"){_e.ZP.warning("\u6587\u672C\u8F93\u5165\u6709\u8BEF");return}st(!0);const _a=yield(0,te.ZP)("/api/subject_knowledge.json",{method:"delete",body:{id:$t,subject_id:re==null?void 0:re.pathId}});if((_a==null?void 0:_a.status)===0)if(_e.ZP.success("\u5220\u9664\u6210\u529F"),Ke(!1),Gr.get("type")==="classrooms"){let ni=yield y({type:"pathsDetail/getCourseDetail",payload:Xr({id:(ti=a==null?void 0:a.detail)==null?void 0:ti.id,knowledge:!0},(0,ht.oP)())});Co((ji=(to=ni==null?void 0:ni.route_nodes)==null?void 0:to[0])==null?void 0:ji.id,((Ao=(so=ni==null?void 0:ni.route_nodes)==null?void 0:so[0])==null?void 0:Ao.name)||"\u5B66\u4E60\u8DEF\u5F84")}else{let ni=yield y({type:"pathsDetail/getPathsDetail",payload:Xr({id:(ss=a==null?void 0:a.detail)==null?void 0:ss.id,knowledge:!0},(0,ht.oP)())});Co((Ei=(Qo=ni==null?void 0:ni.route_nodes)==null?void 0:Qo[0])==null?void 0:Ei.id,((Sa=(ki=ni==null?void 0:ni.route_nodes)==null?void 0:ki[0])==null?void 0:Sa.name)||"\u5B66\u4E60\u8DEF\u5F84")}st(!1)}),Ua=(ti,to=!0)=>ha(void 0,null,function*(){var ji,so,Ao,ss,Qo,Ei,ki;if((ti==null?void 0:ti.container_type)==="Attachment"&&!((ji=a==null?void 0:a.detail)!=null&&ji.can_managed)){(0,Gn.fc)({id:ti==null?void 0:ti.container_id,watch_type:2,course_id:(so=a==null?void 0:a.detail)==null?void 0:so.id}),An({url:On.Z.API_SERVER+(ti==null?void 0:ti.url),file_type:ti==null?void 0:ti.file_type});return}if(ti!=null&&ti.url){window.open(ti==null?void 0:ti.url);return}to&&me(!0);let Sa=yield(0,te.ZP)("/api/knowledge/v2/get_node.json",{method:"get",params:{depth:0,subject_id:re==null?void 0:re.pathId,nodeUuid:(ti==null?void 0:ti.knowledge_uuid)||(ti==null?void 0:ti.key)}});if((Sa==null?void 0:Sa.status)===0){if(((ss=(Ao=Sa==null?void 0:Sa.data)==null?void 0:Ao.nodes)==null?void 0:ss.length)>0){let _a=(ki=(Ei=(Qo=Sa==null?void 0:Sa.data)==null?void 0:Qo.nodes)==null?void 0:Ei.map(ni=>{var Ki,Ma,mo,Qi,Is,as,ms,ps,ls,To,Nc,Rc,_l;const Fs=(Ki=Sa==null?void 0:Sa.data)==null?void 0:Ki.resource_count;return Aa(Xr({},ni==null?void 0:ni.properties),{rootNodeUuid:(Ma=ni==null?void 0:ni.properties)==null?void 0:Ma.rootNodeUuid,id:(mo=ni==null?void 0:ni.properties)==null?void 0:mo.uuid,name:(Qi=ni==null?void 0:ni.properties)==null?void 0:Qi.name,description:(Is=ni==null?void 0:ni.properties)==null?void 0:Is.description,nodeType:(as=ni==null?void 0:ni.properties)==null?void 0:as.nodeType,tags:((ms=ni==null?void 0:ni.properties)==null?void 0:ms.tags)&&((To=(ls=(ps=ni==null?void 0:ni.properties)==null?void 0:ps.tags)==null?void 0:ls.split("\uFF0C"))==null?void 0:To.map(Ku=>({name:Ku})))||[],colorType:parseInt((Nc=ni==null?void 0:ni.properties)==null?void 0:Nc.color)>3?"3":(Rc=ni==null?void 0:ni.properties)==null?void 0:Rc.color,activeColor:"#FA6400",size:Ha[((_l=ni==null?void 0:ni.properties)==null?void 0:_l.color)-1]||1,shape:"circle",hide:!1,isExtendedState:!0,currentResourceTotal:Fs})}))==null?void 0:ki[0];_a.resourceid=ti==null?void 0:ti.id,ra(_a),Cn(!0)}me(!1)}}),ei=ti=>ha(void 0,null,function*(){Je(ti==null?void 0:ti.id)}),Co=(ti,to)=>ha(void 0,null,function*(){to?x(ti):(En(ti),Kr(ti))}),Eo=()=>Un.createElement("div",{className:Ue.studentHead},Un.createElement("div",{className:Ue.headLi},Un.createElement("img",{src:Ye}),Un.createElement("aside",null,Un.createElement("span",null,"\u8D44\u6E90\u603B\u6570"),Un.createElement("b",null,ct==null?void 0:ct.resource_count))),Un.createElement("div",{className:Ue.headLi},Un.createElement("img",{src:xt}),Un.createElement("aside",null,Un.createElement("span",null,"\u5B66\u4E60\u5B8C\u6210\u7387"),Un.createElement("b",{style:{color:"#F7B500"}},ct==null?void 0:ct.complete_rate,"%"))),Un.createElement("div",{className:Ue.headLi},Un.createElement("img",{src:Pt}),Un.createElement("aside",null,Un.createElement("span",null,"\u5B66\u4E60\u638C\u63E1\u7387"),Un.createElement("b",{style:{color:"#3AFFC8"}},ct==null?void 0:ct.grasp_rate,"%"))),Un.createElement("div",{className:Ue.headLi},Un.createElement("img",{src:Xt}),Un.createElement("aside",null,Un.createElement("span",{style:{marginBottom:"10rem"}},"\u4E0A\u6B21\u5B66\u5230"),Un.createElement(an.Z,{title:ct==null?void 0:ct.last_knowledge_name},Un.createElement("b",{style:{color:"#7FAAFF",fontSize:"16rem"}},(0,ht.Pq)(ct==null?void 0:ct.last_knowledge_name,13))))),Un.createElement("div",{onClick:()=>Ua({knowledge_uuid:ct==null?void 0:ct.last_knowledge_uuid,id:ct==null?void 0:ct.last_knowledge_uuid}),className:Ue.btn},"\u7EE7\u7EED\u5B66\u4E60"));return Un.createElement(Un.Fragment,null,Un.createElement(Zt,null,Un.createElement(Un.Fragment,null,Un.createElement("span",{className:"relative",style:{float:"right"}},aa&&Un.createElement("div",{className:Ue.addBtn,onClick:()=>{We(null),Oe(!0)}},"\u521B\u5EFA\u5B66\u4E60\u8DEF\u5F84")),Un.createElement("div",{className:Ue.learning},Un.createElement("div",{className:Ue.body},Un.createElement(ce.Z,{spinning:fe},(z=ct==null?void 0:ct.data)!=null&&z.length?Un.createElement(Un.Fragment,null,aa?Un.createElement("div",{className:Ue.head},Un.createElement("div",{className:Ue.numerical},Un.createElement("div",null,Un.createElement("img",{src:Ye}),Un.createElement("span",null,"\u8D44\u6E90\u603B\u6570"),Un.createElement("b",null,ct==null?void 0:ct.resource_count)),Un.createElement("div",null,Un.createElement("img",{src:xt}),Un.createElement("span",null,"\u5E73\u5747\u5B66\u4E60\u5B8C\u6210\u7387"),Un.createElement("b",{style:{color:"#F7B500"}},ct==null?void 0:ct.complete_rate,"%")),Un.createElement("div",null,Un.createElement("img",{src:Pt}),Un.createElement("span",null,"\u5E73\u5747\u5B66\u4E60\u638C\u63E1\u7387"),Un.createElement("b",{style:{color:"#3AFFC8"}},ct==null?void 0:ct.grasp_rate,"%"))),Un.createElement("div",{className:Ue.action},Un.createElement("div",{onClick:()=>{We($t),Oe(!0)}},Un.createElement("span",null,Un.createElement("i",{className:"iconfont icon-bianji13"})),Un.createElement("span",null,"\u7F16\u8F91\u5B66\u4E60\u8DEF\u5F84")),Un.createElement("div",{onClick:()=>Ke(!0)},Un.createElement("span",null,Un.createElement("i",{className:"iconfont icon-shanchu17"})),Un.createElement("span",null,"\u5220\u9664\u5B66\u4E60\u8DEF\u5F84")))):Eo(),Un.createElement(Nn,{pathsDetail:a,dataSource:(ct==null?void 0:ct.data)||[],onClick:Ua,onMore:ei})):Un.createElement(pr,{style:{height:"calc(100vh - 440rem)",visibility:fe?"hidden":"visible"},text:"\u6682\u65E0\u5B66\u4E60\u8DEF\u5F84\u6570\u636E",textColor:"#fff",buttonText:aa&&"\u521B\u5EFA\u5B66\u4E60\u8DEF\u5F84",onClick:()=>{We(null),Oe(!0)}}))),Ze&&Un.createElement(kn,{pathsDetail:a,subjectId:re==null?void 0:re.pathId,dispatch:y,visible:Ze,onCancel:()=>Je(!1),onClickDetails:Ua}),Ee&&Un.createElement(Fa,{onOk:Co,setaddmodal:Oe,addmodal:Ee,uuid:ke}),Un.createElement(Pe.default,{title:"\u786E\u8BA4\u5220\u9664\u63D0\u793A",open:je,centered:!0,confirmLoading:tt,okButtonProps:{danger:!0},width:"600rem",okText:"\u786E\u8BA4\u5220\u9664",onCancel:()=>Ke(!1),cancelText:"\u53D6\u6D88",afterClose:()=>{mt("")},onOk:pa},Un.createElement("div",{style:{background:"#fff",boxShadow:"0 3rem 4rem 0 #F3F3F3",borderRadius:"2rem",padding:"20rem"}},Un.createElement("div",{style:{fontSize:"16rem",color:"#000"}},"\u8BF7\u786E\u8BA4\u662F\u5426\u5220\u9664\u300A",(ee=_t==null?void 0:_t.find(ti=>ti.id===$t))==null?void 0:ee.name,"\u300B\u7684\u5B66\u4E60\u8DEF\u5F84\uFF1F\u82E5\u5DF2\u786E\u8BA4\u9700\u8981\u5220\u9664\u5B66\u4E60\u8DEF\u5F84\uFF0C\u8BF7\u5728\u4E0B\u65B9\u6587\u672C\u6846\u4E2D\u8F93\u5165\u201C\u786E\u8BA4\u5220\u9664\u201D\u6587\u672C\u540E\uFF0C\u70B9\u51FB\u201C\u786E\u8BA4\u5220\u9664\u201D\u6309\u94AE"),Un.createElement("div",{style:{fontSize:"16rem",color:"#E30000",margin:"20rem 0"}},"\u63D0\u793A\uFF1A\u5220\u9664\u540E\u5C06\u65E0\u6CD5\u6062\u590D\u5B66\u4E60\u8DEF\u5F84\uFF0C\u8BF7\u8C28\u614E\u64CD\u4F5C\u3002"),Un.createElement(xe.default,{size:"large",placeholder:"\u8BF7\u8F93\u5165\u201C\u786E\u8BA4\u5220\u9664\u201D\u6587\u672C",value:gt,onChange:ti=>mt(ti.target.value)})))))),Un.createElement(jc,{initdata:()=>{},uuid:"\u5B66\u4E60\u8DEF\u5F84",Tabsdatas:on,setshow:()=>{},getData:Kr,buildTree:()=>{},containerRef:()=>{},showdetail:tr,setshowdetail:Cn,items:fr}),Un.createElement(Bl.Z,{close:!0,style:{zIndex:1300,background:"rgba(1, 10, 35, 0.5)"},data:nr==null?void 0:nr.url,type:nr==null?void 0:nr.file_type,disabledDownload:!0,onClose:()=>An({})}))},Fi=Ie(78673),fi=Ie(59301),bi=Object.defineProperty,Oi=Object.getOwnPropertySymbols,no=Object.prototype.hasOwnProperty,ri=Object.prototype.propertyIsEnumerable,Ci=(E,a,y)=>a in E?bi(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,ii=(E,a)=>{for(var y in a||(a={}))no.call(a,y)&&Ci(E,y,a[y]);if(Oi)for(var y of Oi(a))ri.call(a,y)&&Ci(E,y,a[y]);return E},Va=(E,a)=>{var y={};for(var x in E)no.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&Oi)for(var x of Oi(E))a.indexOf(x)<0&&ri.call(E,x)&&(y[x]=E[x]);return y},Za=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},ee=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const _i=E=>{var a=E,{pathsDetail:y,user:x,globalSetting:b,loading:z,dispatch:ee,datas:re,styles:ae,activied:se}=a,fe=Va(a,["pathsDetail","user","globalSetting","loading","dispatch","datas","styles","activied"]);const[me,Ee]=(0,Fe.useState)(!1),[Oe,ke]=(0,Fe.useState)([]),[We,je]=(0,Fe.useState)([]),[Ke,Ze]=(0,Fe.useState)(),[Je,tt]=(0,Fe.useState)([]),[st,gt]=(0,Fe.useState)(!1);(0,Fe.useEffect)(()=>{me&&mt()},[me]),(0,Fe.useEffect)(()=>{gt(se===2)},[se]);function mt(){return Za(this,null,function*(){var ct,Lt;let _t=yield(0,te.ZP)("/api/knowledge/v2/courses.json",{method:"get",params:{subject_id:(ct=y==null?void 0:y.detail)==null?void 0:ct.id}});(_t==null?void 0:_t.status)===0&&je(_t==null?void 0:_t.data);let Yt=yield(0,te.ZP)("/api/knowledge/v2/get_node.json",{method:"get",params:{depth:1,subject_id:y.detail.id}});if((Yt==null?void 0:Yt.status)===0){let $t=[...(Lt=Yt==null?void 0:Yt.data)==null?void 0:Lt.nodes];ke($t==null?void 0:$t.splice(1))}})}return fi.createElement("div",{style:ii({width:"128rem"},ae)},fi.createElement("span",{onClick:()=>{Ee(!0)},style:{width:"128rem",height:"36rem",lineHeight:"36rem",display:"inline-block",textAlign:"center",background:"#fff",color:"#1B8565",fontSize:"14rem",borderRadius:"20rem",cursor:"pointer"}},"\u5173\u8054\u6559\u5B66\u8BFE\u5802"),fi.createElement(Pe.default,{title:"\u5173\u8054\u6559\u5B66\u8BFE\u5802",open:me,width:"860rem",centered:!0,onOk:()=>Za(void 0,null,function*(){if(!Ke){_e.ZP.info("\u8BF7\u9009\u62E9\u6559\u5B66\u8BFE\u5802");return}if((Je==null?void 0:Je.length)<=0){_e.ZP.info("\u8BF7\u9009\u62E9\u77E5\u8BC6\u56FE\u8C31");return}let ct=yield(0,te.ZP)("/api/knowledge/v2/send_to_course.json",{method:"post",body:{subject_id:y.detail.id,uuids:Je,course_id:Ke,send_route:st}});(ct==null?void 0:ct.status)===0&&(Ee(!1),Pe.default.warning({title:"\u6E29\u99A8\u63D0\u793A",icon:null,closeIcon:!0,centered:!0,content:fi.createElement("div",null,"\u5DF2\u5173\u8054\u6559\u5B66\u8BFE\u5802\uFF0C\u9884\u8BA13-7\u5206\u949F\u5185\u5B8C\u6210\u56FE\u8C31\u590D\u5236\uFF0C\u53EF\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u524D\u5F80\u67E5\u770B\u3002 \u82E5\u9875\u9762\u65E0\u6570\u636E\uFF0C\u8BF7\u7B49\u5F853-7\u5206\u949F\u540E\u5237\u65B0\u8BFE\u5802\u77E5\u8BC6\u56FE\u8C31\u9875\u9762"),okText:"\u524D\u5F80\u67E5\u770B",onOk:()=>{var Lt;window.open(`${(Lt=We==null?void 0:We.find(_t=>(_t==null?void 0:_t.id)===Ke))==null?void 0:Lt.first_category_url}`)}}))}),onCancel:()=>{Ee(!1)}},fi.createElement("div",{style:{background:"#fff",boxShadow:"0rem 3rem 4rem 0rem #f3f3f3",borderRadius:"0rem 0rem 2rem 2rem",padding:"20rem"}},fi.createElement("div",{style:{height:"40rem",minHeight:"40rem",display:"flex"}},fi.createElement("span",{style:{width:"92rem",background:"#F6F7F9",border:"1px solid #DCDCDC",display:"inline-flex",alignItems:"center",justifyContent:"center",borderRight:"none",color:"#666666"}},"\u6559\u5B66\u8BFE\u5802"),fi.createElement(Zt,null,fi.createElement(rr.default,{showSearch:!0,filterOption:(ct,Lt)=>Lt.children.toLowerCase().indexOf(ct.toLowerCase())>=0,onChange:ct=>{Ze(ct)},style:{width:"90%"},size:"large"},We==null?void 0:We.map(ct=>fi.createElement(rr.default.Option,{value:ct==null?void 0:ct.id},ct==null?void 0:ct.name))))),fi.createElement("div",{style:{marginTop:"30rem"}},fi.createElement("span",{style:{marginLeft:"14rem",color:"#5F6368"}},"\u77E5\u8BC6\u56FE\u8C31"),fi.createElement(Nu.default.Group,{onChange:ct=>{tt(ct)},style:{marginLeft:"30rem"}},Oe==null?void 0:Oe.map(ct=>{var Lt,_t;return fi.createElement(Nu.default,{value:(Lt=ct==null?void 0:ct.properties)==null?void 0:Lt.uuid},(_t=ct==null?void 0:ct.properties)==null?void 0:_t.name)}))),fi.createElement("div",{style:{marginTop:"30rem"}},fi.createElement("span",{style:{marginLeft:"14rem",color:"#5F6368"}},"\u5B66\u4E60\u8DEF\u5F84"),fi.createElement(Fi.Z,{onChange:ct=>{console.log(ct),gt(ct)},style:{marginLeft:"30rem"},disabled:se===2,checked:st}),fi.createElement("span",{style:{marginLeft:"5rem"}},"\u540C\u6B65\u53D1\u9001\uFF08\u5F00\u542F\u540E\uFF0C\u5C06\u56FE\u8C31\u4E2D\u5BF9\u5E94\u7684\u5B66\u4E60\u8DEF\u5F84\u53D1\u9001\u5230\u6559\u5B66\u8BFE\u5802\u4E2D\uFF09")))))};var vo=(0,Ce.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(_i),Ji=Ie(38854),yi={tag:"tag___aFk2e",active:"active___xFrif",tagsModal:"tagsModal___PRPSO",btn:"btn___IfO8v",modal:"modal___X3fUd",mHead:"mHead___IvIZN",body:"body___FhLrG",add:"add___YJGg_",error:"error___JoLGM"},Ve=Ie(59301),et=Object.defineProperty,it=Object.getOwnPropertySymbols,pt=Object.prototype.hasOwnProperty,Mt=Object.prototype.propertyIsEnumerable,Tt=(E,a,y)=>a in E?et(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,jt=(E,a)=>{for(var y in a||(a={}))pt.call(a,y)&&Tt(E,y,a[y]);if(it)for(var y of it(a))Mt.call(a,y)&&Tt(E,y,a[y]);return E},kt=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},ee=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())}),Vt=({value:E=[],onChange:a,type:y,subjectId:x})=>{const[b,z]=(0,Fe.useState)(!1),[ee,re]=(0,Fe.useState)([]),[ae,se]=(0,Fe.useState)([]),[fe,me]=(0,Fe.useState)([]),[Ee,Oe]=(0,Fe.useState)(""),[ke,We]=(0,Fe.useState)(""),[je,Ke]=(0,Fe.useState)(!1),[Ze,Je]=(0,Fe.useState)(!1),tt=[{background:"#6236FF",borderColor:"#9D82FF"},{background:"#6DB9FF",borderColor:"#6DB9FF"},{background:"rgba(27,175,234,0.8)",borderColor:"#68D5FF"},{background:"#C1AC15",borderColor:"#DCC51C"},{background:"#E07E37",borderColor:"#F79046"},{background:"rgba(29,94,255,0.8)",borderColor:"#6D97FE"},{background:"#E75454",borderColor:"#FE8383"},{background:"#A557D8",borderColor:"#C57AF6"},{background:"#2CA768",borderColor:"#43CC86"},{background:"#1F9269",borderColor:"#38B588"},{background:"#CA7720",borderColor:"#E99338"},{background:"rgba(224,32,32,0.8)",borderColor:"#E02020"},{background:"rgba(255,126,15,0.8)",borderColor:"#FF7E0F"},{background:"rgba(29,94,255,0.8)",borderColor:"#1D5EFF"},{background:"#2BAC8E",borderColor:"#30CB9D"},{background:"#EE5D5D",borderColor:"#FF8181"},{background:"#7E5AFE",borderColor:"#9173FA"},{background:"#3ABCEF",borderColor:"#6FD6FF"},{background:"#B132C2",borderColor:"#C57AF6"},{background:"#46A4FB",borderColor:"#72BBFF"},{background:"#C1AC15",borderColor:"#DCC51C"},{background:"#E07E37",borderColor:"#F79046"},{background:"#1D5EFF",borderColor:"#6D97FE"},{background:"#2CA768",borderColor:"#43CC86"},{background:"#A557D8",borderColor:"#C57AF6"},{background:"#1F9269",borderColor:"#38B588"},{background:"#CA7720",borderColor:"#E99338"}],st=y===1?"\u7C7B\u578B":"\u6807\u7B7E",gt=y===1?"0":"4";(0,Fe.useEffect)(()=>{b&&(me(E),mt())},[b]);const mt=()=>kt(void 0,null,function*(){var $t;Je(!0);const En=yield(0,te.ZP)("/api/knowledge_items.json",{method:"get",params:{subject_id:x,item_type:gt}});(En==null?void 0:En.status)===0&&(re(($t=En==null?void 0:En.data)==null?void 0:$t.map(on=>on.name)),se((En==null?void 0:En.data)||[])),Je(!1)}),ct=$t=>kt(void 0,null,function*(){var En;Je(!0);const on=(En=ae==null?void 0:ae.find(tr=>tr.name===$t))==null?void 0:En.id,Fn=yield(0,te.ZP)(`/api/knowledge_items/${on}.json`,{method:"delete",body:{subject_id:x}});if((Fn==null?void 0:Fn.status)===0){mt(),_e.ZP.success("\u5220\u9664\u6210\u529F");return}Je(!1)}),Lt=({title:$t="",style:En={},showDelete:on=!0,modal:Fn=!1,active:tr=!1})=>{const xn=(An=>An.split("").reduce((fr,ra)=>fr+ra.charCodeAt(0),0))($t)%tt.length,{background:Ln,borderColor:nr}=tt[xn];return Ve.createElement("div",{className:Kn()(yi.tag,tr?yi.active:""),onClick:()=>{Fn&&(b===1&&me([$t]),b===2&&(fe.includes($t)?me(fe.filter(An=>An!==$t)):me([...fe,$t])))},style:jt({background:Ln,borderColor:nr},En)},Ve.createElement("span",null,$t),on&&Ve.createElement("i",{onClick:An=>{An.stopPropagation(),Fn?ct($t):a(E.filter(fr=>fr!==$t))},className:"iconfont icon-shanchu5"}))},_t=()=>{a([...fe]),z(!1)},Yt=()=>kt(void 0,null,function*(){if(!Ee.replace(/\s+/g,"")){We(`${st}\u4E0D\u80FD\u4E3A\u7A7A`);return}if(ee.includes(Ee)){We(`\u8BE5${st}\u5DF2\u5B58\u5728\uFF0C\u8BF7\u52FF\u91CD\u590D\u6DFB\u52A0\uFF01`);return}Je(!0);const $t=yield(0,te.ZP)("/api/knowledge_items.json",{method:"post",body:{subject_id:x,item_type:gt,name:Ee}});if(($t==null?void 0:$t.status)===0){yield mt(),Ke(!1),_e.ZP.success("\u6DFB\u52A0\u6210\u529F");return}Je(!1)});return Ve.createElement("div",{className:yi.tagsModal},y===1&&Ve.createElement(Ve.Fragment,null,E==null?void 0:E.map(($t,En)=>Ve.createElement(Lt,{key:En,title:$t,showDelete:!1,style:{marginRight:"20rem"}})),Ve.createElement("div",{onClick:()=>z(1),style:{marginBottom:"20rem"},className:yi.btn},Ve.createElement("i",{className:"iconfont icon-genghuanguanliyuan1"}),E!=null&&E.length?"\u66F4\u6362":"\u9009\u62E9","\u7C7B\u578B")),y===2&&Ve.createElement(Ve.Fragment,null,E==null?void 0:E.map(($t,En)=>Ve.createElement(Lt,{key:En,title:$t})),Ve.createElement("div",{onClick:()=>z(2),className:yi.btn,style:{marginBottom:"10rem"}},Ve.createElement("i",{className:"iconfont icon-tianjiatixing"}),E!=null&&E.length?"\u66F4\u6362":"\u9009\u62E9","\u6807\u7B7E")),Ve.createElement(Pe.default,{open:!!b,centered:!0,width:"1000rem",okText:"\u4FDD\u5B58",onCancel:()=>z(!1),cancelText:"\u53D6\u6D88",afterClose:()=>{Ke(!1),We(""),Oe("")},onOk:_t,title:`\u9009\u62E9${st}`},Ve.createElement("div",{className:yi.modal},Ve.createElement(ce.Z,{spinning:Ze},Ve.createElement("div",{className:yi.mHead},Ve.createElement("b",null),Ve.createElement("span",null,`\u8282\u70B9${st}`,"\uFF08",ee.length,"\uFF09"),Ve.createElement("div",{onClick:()=>{je||(Ke(!0),We(""),Oe(""))},className:yi.btn},Ve.createElement("i",{className:"iconfont icon-tianjiatixing"}),"\u6DFB\u52A0")),Ve.createElement("div",{className:yi.body},!(ee!=null&&ee.length)&&!je&&Ve.createElement(pr,{style:{height:"230rem"}}),ee==null?void 0:ee.map(($t,En)=>Ve.createElement(Lt,{showDelete:!(fe!=null&&fe.includes($t)),modal:!0,style:{cursor:"pointer",verticalAlign:"center",marginTop:"10rem",marginBottom:"10rem"},active:fe.includes($t),key:En,title:$t})),je&&Ve.createElement("div",{className:yi.add},Ve.createElement(xe.default,{style:{width:"rem"},size:"large",value:Ee,onChange:$t=>{We(""),Oe($t.target.value)}}),Ve.createElement("i",{onClick:Yt,className:"iconfont icon-dui",style:{color:"#1B8565"}}),Ve.createElement("i",{onClick:()=>Ke(!1),className:"iconfont icon-shanchu10",style:{color:"#9096A3"}}),!!ke&&Ve.createElement("div",{className:yi.error},ke)))))))},un={flex_box_center:"flex_box_center___X1Bk6",flex_space_between:"flex_space_between___uybt7",flex_box_vertical_center:"flex_box_vertical_center___eRrsT",flex_box_center_end:"flex_box_center_end___twuIC",flex_box_column:"flex_box_column___GZ7ID",tabs:"tabs___lQRiO",activied:"activied___xuukl",tab:"tab___BDDdU",content:"content___Njpry"},Tn=Ie(88522),hn=Ie(33885),gn=Ie(67732),cn=Ie(83652),bn=Ie(94480),Wn=Ie(58289),_n=Ie(75538),Qn=Ie(85458);function ir(E,a,y){return a=(0,Wn.Z)(a),(0,Qn.Z)(E,(0,_n.Z)()?Reflect.construct(a,y||[],(0,Wn.Z)(E).constructor):a.apply(E,y))}var xr=Ie(42403),ia=Ie(42978),ea=Ie(37271),Xa=ea,xa=1e-6,Pa=typeof Float32Array!="undefined"?Float32Array:Array,Pr=Math.random,oa="zyx";function hi(E){return E>=0?Math.round(E):E%.5===0?Math.floor(E):Math.round(E)}function ar(E){Pa=E}var Mr=Math.PI/180,sa=180/Math.PI;function da(E){return E*Mr}function Ra(E){return E*sa}function la(E,a){var y=arguments.length>2&&arguments[2]!==void 0?arguments[2]:xa;return Math.abs(E-a)<=y*Math.max(1,Math.abs(E),Math.abs(a))}function na(){var E=new Pa(3);return Pa!=Float32Array&&(E[0]=0,E[1]=0,E[2]=0),E}function vi(E){var a=new Pa(3);return a[0]=E[0],a[1]=E[1],a[2]=E[2],a}function mi(E){var a=E[0],y=E[1],x=E[2];return Math.sqrt(a*a+y*y+x*x)}function _r(E,a,y){var x=new Pa(3);return x[0]=E,x[1]=a,x[2]=y,x}function Zi(E,a){return E[0]=a[0],E[1]=a[1],E[2]=a[2],E}function qi(E,a,y,x){return E[0]=a,E[1]=y,E[2]=x,E}function $o(E,a,y){return E[0]=a[0]+y[0],E[1]=a[1]+y[1],E[2]=a[2]+y[2],E}function cs(E,a,y){return E[0]=a[0]-y[0],E[1]=a[1]-y[1],E[2]=a[2]-y[2],E}function Rs(E,a,y){return E[0]=a[0]*y[0],E[1]=a[1]*y[1],E[2]=a[2]*y[2],E}function gl(E,a,y){return E[0]=a[0]/y[0],E[1]=a[1]/y[1],E[2]=a[2]/y[2],E}function qs(E,a){return E[0]=Math.ceil(a[0]),E[1]=Math.ceil(a[1]),E[2]=Math.ceil(a[2]),E}function Zs(E,a){return E[0]=Math.floor(a[0]),E[1]=Math.floor(a[1]),E[2]=Math.floor(a[2]),E}function Ec(E,a,y){return E[0]=Math.min(a[0],y[0]),E[1]=Math.min(a[1],y[1]),E[2]=Math.min(a[2],y[2]),E}function ud(E,a,y){return E[0]=Math.max(a[0],y[0]),E[1]=Math.max(a[1],y[1]),E[2]=Math.max(a[2],y[2]),E}function Ac(E,a){return E[0]=glMatrix.round(a[0]),E[1]=glMatrix.round(a[1]),E[2]=glMatrix.round(a[2]),E}function Fu(E,a,y){return E[0]=a[0]*y,E[1]=a[1]*y,E[2]=a[2]*y,E}function eh(E,a,y,x){return E[0]=a[0]+y[0]*x,E[1]=a[1]+y[1]*x,E[2]=a[2]+y[2]*x,E}function Wh(E,a){var y=a[0]-E[0],x=a[1]-E[1],b=a[2]-E[2];return Math.sqrt(y*y+x*x+b*b)}function rs(E,a){var y=a[0]-E[0],x=a[1]-E[1],b=a[2]-E[2];return y*y+x*x+b*b}function zs(E){var a=E[0],y=E[1],x=E[2];return a*a+y*y+x*x}function jl(E,a){return E[0]=-a[0],E[1]=-a[1],E[2]=-a[2],E}function $s(E,a){return E[0]=1/a[0],E[1]=1/a[1],E[2]=1/a[2],E}function ml(E,a){var y=a[0],x=a[1],b=a[2],z=y*y+x*x+b*b;return z>0&&(z=1/Math.sqrt(z)),E[0]=a[0]*z,E[1]=a[1]*z,E[2]=a[2]*z,E}function Xs(E,a){return E[0]*a[0]+E[1]*a[1]+E[2]*a[2]}function bl(E,a,y){var x=a[0],b=a[1],z=a[2],ee=y[0],re=y[1],ae=y[2];return E[0]=b*ae-z*re,E[1]=z*ee-x*ae,E[2]=x*re-b*ee,E}function Xu(E,a,y,x){var b=a[0],z=a[1],ee=a[2];return E[0]=b+x*(y[0]-b),E[1]=z+x*(y[1]-z),E[2]=ee+x*(y[2]-ee),E}function Vg(E,a,y,x){var b=Math.acos(Math.min(Math.max(Xs(a,y),-1),1)),z=Math.sin(b),ee=Math.sin((1-x)*b)/z,re=Math.sin(x*b)/z;return E[0]=ee*a[0]+re*y[0],E[1]=ee*a[1]+re*y[1],E[2]=ee*a[2]+re*y[2],E}function om(E,a,y,x,b,z){var ee=z*z,re=ee*(2*z-3)+1,ae=ee*(z-2)+z,se=ee*(z-1),fe=ee*(3-2*z);return E[0]=a[0]*re+y[0]*ae+x[0]*se+b[0]*fe,E[1]=a[1]*re+y[1]*ae+x[1]*se+b[1]*fe,E[2]=a[2]*re+y[2]*ae+x[2]*se+b[2]*fe,E}function Kg(E,a,y,x,b,z){var ee=1-z,re=ee*ee,ae=z*z,se=re*ee,fe=3*z*re,me=3*ae*ee,Ee=ae*z;return E[0]=a[0]*se+y[0]*fe+x[0]*me+b[0]*Ee,E[1]=a[1]*se+y[1]*fe+x[1]*me+b[1]*Ee,E[2]=a[2]*se+y[2]*fe+x[2]*me+b[2]*Ee,E}function sm(E,a){a=a===void 0?1:a;var y=glMatrix.RANDOM()*2*Math.PI,x=glMatrix.RANDOM()*2-1,b=Math.sqrt(1-x*x)*a;return E[0]=Math.cos(y)*b,E[1]=Math.sin(y)*b,E[2]=x*a,E}function ql(E,a,y){var x=a[0],b=a[1],z=a[2],ee=y[3]*x+y[7]*b+y[11]*z+y[15];return ee=ee||1,E[0]=(y[0]*x+y[4]*b+y[8]*z+y[12])/ee,E[1]=(y[1]*x+y[5]*b+y[9]*z+y[13])/ee,E[2]=(y[2]*x+y[6]*b+y[10]*z+y[14])/ee,E}function th(E,a,y){var x=a[0],b=a[1],z=a[2];return E[0]=x*y[0]+b*y[3]+z*y[6],E[1]=x*y[1]+b*y[4]+z*y[7],E[2]=x*y[2]+b*y[5]+z*y[8],E}function wd(E,a,y){var x=y[0],b=y[1],z=y[2],ee=y[3],re=a[0],ae=a[1],se=a[2],fe=b*se-z*ae,me=z*re-x*se,Ee=x*ae-b*re;return fe=fe+fe,me=me+me,Ee=Ee+Ee,E[0]=re+ee*fe+b*Ee-z*me,E[1]=ae+ee*me+z*fe-x*Ee,E[2]=se+ee*Ee+x*me-b*fe,E}function af(E,a,y,x){var b=[],z=[];return b[0]=a[0]-y[0],b[1]=a[1]-y[1],b[2]=a[2]-y[2],z[0]=b[0],z[1]=b[1]*Math.cos(x)-b[2]*Math.sin(x),z[2]=b[1]*Math.sin(x)+b[2]*Math.cos(x),E[0]=z[0]+y[0],E[1]=z[1]+y[1],E[2]=z[2]+y[2],E}function H0(E,a,y,x){var b=[],z=[];return b[0]=a[0]-y[0],b[1]=a[1]-y[1],b[2]=a[2]-y[2],z[0]=b[2]*Math.sin(x)+b[0]*Math.cos(x),z[1]=b[1],z[2]=b[2]*Math.cos(x)-b[0]*Math.sin(x),E[0]=z[0]+y[0],E[1]=z[1]+y[1],E[2]=z[2]+y[2],E}function V0(E,a,y,x){var b=[],z=[];return b[0]=a[0]-y[0],b[1]=a[1]-y[1],b[2]=a[2]-y[2],z[0]=b[0]*Math.cos(x)-b[1]*Math.sin(x),z[1]=b[0]*Math.sin(x)+b[1]*Math.cos(x),z[2]=b[2],E[0]=z[0]+y[0],E[1]=z[1]+y[1],E[2]=z[2]+y[2],E}function Zg(E,a){var y=E[0],x=E[1],b=E[2],z=a[0],ee=a[1],re=a[2],ae=Math.sqrt((y*y+x*x+b*b)*(z*z+ee*ee+re*re)),se=ae&&Xs(E,a)/ae;return Math.acos(Math.min(Math.max(se,-1),1))}function Qg(E){return E[0]=0,E[1]=0,E[2]=0,E}function jh(E){return"vec3("+E[0]+", "+E[1]+", "+E[2]+")"}function Gh(E,a){return E[0]===a[0]&&E[1]===a[1]&&E[2]===a[2]}function If(E,a){var y=E[0],x=E[1],b=E[2],z=a[0],ee=a[1],re=a[2];return Math.abs(y-z)<=xa*Math.max(1,Math.abs(y),Math.abs(z))&&Math.abs(x-ee)<=xa*Math.max(1,Math.abs(x),Math.abs(ee))&&Math.abs(b-re)<=xa*Math.max(1,Math.abs(b),Math.abs(re))}var nh=cs,Yg=null,lm=null,rh=Wh,um=null,Hh=mi,Vh=null,Kh=function(){var E=na();return function(a,y,x,b,z,ee){var re,ae;for(y||(y=3),x||(x=0),b?ae=Math.min(b*y+x,a.length):ae=a.length,re=x;re0&&(ee=1/Math.sqrt(ee)),E[0]=y*ee,E[1]=x*ee,E[2]=b*ee,E[3]=z*ee,E}function nE(E,a){return E[0]*a[0]+E[1]*a[1]+E[2]*a[2]+E[3]*a[3]}function dm(E,a,y,x){var b=y[0]*x[1]-y[1]*x[0],z=y[0]*x[2]-y[2]*x[0],ee=y[0]*x[3]-y[3]*x[0],re=y[1]*x[2]-y[2]*x[1],ae=y[1]*x[3]-y[3]*x[1],se=y[2]*x[3]-y[3]*x[2],fe=a[0],me=a[1],Ee=a[2],Oe=a[3];return E[0]=me*se-Ee*ae+Oe*re,E[1]=-(fe*se)+Ee*ee-Oe*z,E[2]=fe*ae-me*ee+Oe*b,E[3]=-(fe*re)+me*z-Ee*b,E}function sf(E,a,y,x){var b=a[0],z=a[1],ee=a[2],re=a[3];return E[0]=b+x*(y[0]-b),E[1]=z+x*(y[1]-z),E[2]=ee+x*(y[2]-ee),E[3]=re+x*(y[3]-re),E}function rE(E,a){a=a===void 0?1:a;var y,x,b,z,ee,re,ae;ae=glMatrix.RANDOM(),y=ae*2-1,x=(4*glMatrix.RANDOM()-2)*Math.sqrt(ae*-ae+ae),ee=y*y+x*x,ae=glMatrix.RANDOM(),b=ae*2-1,z=(4*glMatrix.RANDOM()-2)*Math.sqrt(ae*-ae+ae),re=b*b+z*z;var se=Math.sqrt((1-ee)/re);return E[0]=a*y,E[1]=a*x,E[2]=a*b*se,E[3]=a*z*se,E}function Md(E,a,y){var x=a[0],b=a[1],z=a[2],ee=a[3];return E[0]=y[0]*x+y[4]*b+y[8]*z+y[12]*ee,E[1]=y[1]*x+y[5]*b+y[9]*z+y[13]*ee,E[2]=y[2]*x+y[6]*b+y[10]*z+y[14]*ee,E[3]=y[3]*x+y[7]*b+y[11]*z+y[15]*ee,E}function aE(E,a,y){var x=y[0],b=y[1],z=y[2],ee=y[3],re=a[0],ae=a[1],se=a[2],fe=b*se-z*ae,me=z*re-x*se,Ee=x*ae-b*re;return fe=fe+fe,me=me+me,Ee=Ee+Ee,E[0]=re+ee*fe+b*Ee-z*me,E[1]=ae+ee*me+z*fe-x*Ee,E[2]=se+ee*Ee+x*me-b*fe,E[3]=a[3],E}function iE(E){return E[0]=0,E[1]=0,E[2]=0,E[3]=0,E}function ZS(E){return"vec4("+E[0]+", "+E[1]+", "+E[2]+", "+E[3]+")"}function oE(E,a){return E[0]===a[0]&&E[1]===a[1]&&E[2]===a[2]&&E[3]===a[3]}function QS(E,a){var y=E[0],x=E[1],b=E[2],z=E[3],ee=a[0],re=a[1],ae=a[2],se=a[3];return Math.abs(y-ee)<=glMatrix.EPSILON*Math.max(1,Math.abs(y),Math.abs(ee))&&Math.abs(x-re)<=glMatrix.EPSILON*Math.max(1,Math.abs(x),Math.abs(re))&&Math.abs(b-ae)<=glMatrix.EPSILON*Math.max(1,Math.abs(b),Math.abs(ae))&&Math.abs(z-se)<=glMatrix.EPSILON*Math.max(1,Math.abs(z),Math.abs(se))}var sE=null,YS=null,XS=null,JS=null,lE=null,fm=null,hm=null,qS=function(){var E=Ju();return function(a,y,x,b,z,ee){var re,ae;for(y||(y=4),x||(x=0),b?ae=Math.min(b*y+x,a.length):ae=a.length,re=x;re0?(y[0]=(re*ee+fe*x+ae*z-se*b)*2/me,y[1]=(ae*ee+fe*b+se*x-re*z)*2/me,y[2]=(se*ee+fe*z+re*b-ae*x)*2/me):(y[0]=(re*ee+fe*x+ae*z-se*b)*2,y[1]=(ae*ee+fe*b+se*x-re*z)*2,y[2]=(se*ee+fe*z+re*b-ae*x)*2),Tb(E,a,y),E}function gm(E,a){return E[0]=a[12],E[1]=a[13],E[2]=a[14],E}function n0(E,a){var y=a[0],x=a[1],b=a[2],z=a[4],ee=a[5],re=a[6],ae=a[8],se=a[9],fe=a[10];return E[0]=Math.sqrt(y*y+x*x+b*b),E[1]=Math.sqrt(z*z+ee*ee+re*re),E[2]=Math.sqrt(ae*ae+se*se+fe*fe),E}function vm(E,a){var y=new Pa(3);n0(y,a);var x=1/y[0],b=1/y[1],z=1/y[2],ee=a[0]*x,re=a[1]*b,ae=a[2]*z,se=a[4]*x,fe=a[5]*b,me=a[6]*z,Ee=a[8]*x,Oe=a[9]*b,ke=a[10]*z,We=ee+fe+ke,je=0;return We>0?(je=Math.sqrt(We+1)*2,E[3]=.25*je,E[0]=(me-Oe)/je,E[1]=(Ee-ae)/je,E[2]=(re-se)/je):ee>fe&&ee>ke?(je=Math.sqrt(1+ee-fe-ke)*2,E[3]=(me-Oe)/je,E[0]=.25*je,E[1]=(re+se)/je,E[2]=(Ee+ae)/je):fe>ke?(je=Math.sqrt(1+fe-ee-ke)*2,E[3]=(Ee-ae)/je,E[0]=(re+se)/je,E[1]=.25*je,E[2]=(me+Oe)/je):(je=Math.sqrt(1+ke-ee-fe)*2,E[3]=(re-se)/je,E[0]=(Ee+ae)/je,E[1]=(me+Oe)/je,E[2]=.25*je),E}function wT(E,a,y,x){a[0]=x[12],a[1]=x[13],a[2]=x[14];var b=x[0],z=x[1],ee=x[2],re=x[4],ae=x[5],se=x[6],fe=x[8],me=x[9],Ee=x[10];y[0]=Math.sqrt(b*b+z*z+ee*ee),y[1]=Math.sqrt(re*re+ae*ae+se*se),y[2]=Math.sqrt(fe*fe+me*me+Ee*Ee);var Oe=1/y[0],ke=1/y[1],We=1/y[2],je=b*Oe,Ke=z*ke,Ze=ee*We,Je=re*Oe,tt=ae*ke,st=se*We,gt=fe*Oe,mt=me*ke,ct=Ee*We,Lt=je+tt+ct,_t=0;return Lt>0?(_t=Math.sqrt(Lt+1)*2,E[3]=.25*_t,E[0]=(st-mt)/_t,E[1]=(gt-Ze)/_t,E[2]=(Ke-Je)/_t):je>tt&&je>ct?(_t=Math.sqrt(1+je-tt-ct)*2,E[3]=(st-mt)/_t,E[0]=.25*_t,E[1]=(Ke+Je)/_t,E[2]=(gt+Ze)/_t):tt>ct?(_t=Math.sqrt(1+tt-je-ct)*2,E[3]=(gt-Ze)/_t,E[0]=(Ke+Je)/_t,E[1]=.25*_t,E[2]=(st+mt)/_t):(_t=Math.sqrt(1+ct-je-tt)*2,E[3]=(Ke-Je)/_t,E[0]=(gt+Ze)/_t,E[1]=(st+mt)/_t,E[2]=.25*_t),E}function MT(E,a,y,x){var b=a[0],z=a[1],ee=a[2],re=a[3],ae=b+b,se=z+z,fe=ee+ee,me=b*ae,Ee=b*se,Oe=b*fe,ke=z*se,We=z*fe,je=ee*fe,Ke=re*ae,Ze=re*se,Je=re*fe,tt=x[0],st=x[1],gt=x[2];return E[0]=(1-(ke+je))*tt,E[1]=(Ee+Je)*tt,E[2]=(Oe-Ze)*tt,E[3]=0,E[4]=(Ee-Je)*st,E[5]=(1-(me+je))*st,E[6]=(We+Ke)*st,E[7]=0,E[8]=(Oe+Ze)*gt,E[9]=(We-Ke)*gt,E[10]=(1-(me+ke))*gt,E[11]=0,E[12]=y[0],E[13]=y[1],E[14]=y[2],E[15]=1,E}function Q0(E,a,y,x,b){var z=a[0],ee=a[1],re=a[2],ae=a[3],se=z+z,fe=ee+ee,me=re+re,Ee=z*se,Oe=z*fe,ke=z*me,We=ee*fe,je=ee*me,Ke=re*me,Ze=ae*se,Je=ae*fe,tt=ae*me,st=x[0],gt=x[1],mt=x[2],ct=b[0],Lt=b[1],_t=b[2],Yt=(1-(We+Ke))*st,$t=(Oe+tt)*st,En=(ke-Je)*st,on=(Oe-tt)*gt,Fn=(1-(Ee+Ke))*gt,tr=(je+Ze)*gt,Cn=(ke+Je)*mt,xn=(je-Ze)*mt,Ln=(1-(Ee+We))*mt;return E[0]=Yt,E[1]=$t,E[2]=En,E[3]=0,E[4]=on,E[5]=Fn,E[6]=tr,E[7]=0,E[8]=Cn,E[9]=xn,E[10]=Ln,E[11]=0,E[12]=y[0]+ct-(Yt*ct+on*Lt+Cn*_t),E[13]=y[1]+Lt-($t*ct+Fn*Lt+xn*_t),E[14]=y[2]+_t-(En*ct+tr*Lt+Ln*_t),E[15]=1,E}function cE(E,a){var y=a[0],x=a[1],b=a[2],z=a[3],ee=y+y,re=x+x,ae=b+b,se=y*ee,fe=x*ee,me=x*re,Ee=b*ee,Oe=b*re,ke=b*ae,We=z*ee,je=z*re,Ke=z*ae;return E[0]=1-me-ke,E[1]=fe+Ke,E[2]=Ee-je,E[3]=0,E[4]=fe-Ke,E[5]=1-se-ke,E[6]=Oe+We,E[7]=0,E[8]=Ee+je,E[9]=Oe-We,E[10]=1-se-me,E[11]=0,E[12]=0,E[13]=0,E[14]=0,E[15]=1,E}function DT(E,a,y,x,b,z,ee){var re=1/(y-a),ae=1/(b-x),se=1/(z-ee);return E[0]=z*2*re,E[1]=0,E[2]=0,E[3]=0,E[4]=0,E[5]=z*2*ae,E[6]=0,E[7]=0,E[8]=(y+a)*re,E[9]=(b+x)*ae,E[10]=(ee+z)*se,E[11]=-1,E[12]=0,E[13]=0,E[14]=ee*z*2*se,E[15]=0,E}function Ob(E,a,y,x,b){var z=1/Math.tan(a/2);if(E[0]=z/y,E[1]=0,E[2]=0,E[3]=0,E[4]=0,E[5]=z,E[6]=0,E[7]=0,E[8]=0,E[9]=0,E[11]=-1,E[12]=0,E[13]=0,E[15]=0,b!=null&&b!==1/0){var ee=1/(x-b);E[10]=(b+x)*ee,E[14]=2*b*x*ee}else E[10]=-1,E[14]=-2*x;return E}var IT=Ob;function TT(E,a,y,x,b){var z=1/Math.tan(a/2);if(E[0]=z/y,E[1]=0,E[2]=0,E[3]=0,E[4]=0,E[5]=z,E[6]=0,E[7]=0,E[8]=0,E[9]=0,E[11]=-1,E[12]=0,E[13]=0,E[15]=0,b!=null&&b!==1/0){var ee=1/(x-b);E[10]=b*ee,E[14]=b*x*ee}else E[10]=-1,E[14]=-x;return E}function OT(E,a,y,x){var b=Math.tan(a.upDegrees*Math.PI/180),z=Math.tan(a.downDegrees*Math.PI/180),ee=Math.tan(a.leftDegrees*Math.PI/180),re=Math.tan(a.rightDegrees*Math.PI/180),ae=2/(ee+re),se=2/(b+z);return E[0]=ae,E[1]=0,E[2]=0,E[3]=0,E[4]=0,E[5]=se,E[6]=0,E[7]=0,E[8]=-((ee-re)*ae*.5),E[9]=(b-z)*se*.5,E[10]=x/(y-x),E[11]=-1,E[12]=0,E[13]=0,E[14]=x*y/(y-x),E[15]=0,E}function Lb(E,a,y,x,b,z,ee){var re=1/(a-y),ae=1/(x-b),se=1/(z-ee);return E[0]=-2*re,E[1]=0,E[2]=0,E[3]=0,E[4]=0,E[5]=-2*ae,E[6]=0,E[7]=0,E[8]=0,E[9]=0,E[10]=2*se,E[11]=0,E[12]=(a+y)*re,E[13]=(b+x)*ae,E[14]=(ee+z)*se,E[15]=1,E}var Nb=Lb;function Rb(E,a,y,x,b,z,ee){var re=1/(a-y),ae=1/(x-b),se=1/(z-ee);return E[0]=-2*re,E[1]=0,E[2]=0,E[3]=0,E[4]=0,E[5]=-2*ae,E[6]=0,E[7]=0,E[8]=0,E[9]=0,E[10]=se,E[11]=0,E[12]=(a+y)*re,E[13]=(b+x)*ae,E[14]=z*se,E[15]=1,E}function _b(E,a,y,x){var b,z,ee,re,ae,se,fe,me,Ee,Oe,ke=a[0],We=a[1],je=a[2],Ke=x[0],Ze=x[1],Je=x[2],tt=y[0],st=y[1],gt=y[2];return Math.abs(ke-tt)0&&(Oe=1/Math.sqrt(Oe),fe*=Oe,me*=Oe,Ee*=Oe);var ke=ae*Ee-se*me,We=se*fe-re*Ee,je=re*me-ae*fe;return Oe=ke*ke+We*We+je*je,Oe>0&&(Oe=1/Math.sqrt(Oe),ke*=Oe,We*=Oe,je*=Oe),E[0]=ke,E[1]=We,E[2]=je,E[3]=0,E[4]=me*je-Ee*We,E[5]=Ee*ke-fe*je,E[6]=fe*We-me*ke,E[7]=0,E[8]=fe,E[9]=me,E[10]=Ee,E[11]=0,E[12]=b,E[13]=z,E[14]=ee,E[15]=1,E}function BT(E){return"mat4("+E[0]+", "+E[1]+", "+E[2]+", "+E[3]+", "+E[4]+", "+E[5]+", "+E[6]+", "+E[7]+", "+E[8]+", "+E[9]+", "+E[10]+", "+E[11]+", "+E[12]+", "+E[13]+", "+E[14]+", "+E[15]+")"}function NT(E){return Math.sqrt(E[0]*E[0]+E[1]*E[1]+E[2]*E[2]+E[3]*E[3]+E[4]*E[4]+E[5]*E[5]+E[6]*E[6]+E[7]*E[7]+E[8]*E[8]+E[9]*E[9]+E[10]*E[10]+E[11]*E[11]+E[12]*E[12]+E[13]*E[13]+E[14]*E[14]+E[15]*E[15])}function RT(E,a,y){return E[0]=a[0]+y[0],E[1]=a[1]+y[1],E[2]=a[2]+y[2],E[3]=a[3]+y[3],E[4]=a[4]+y[4],E[5]=a[5]+y[5],E[6]=a[6]+y[6],E[7]=a[7]+y[7],E[8]=a[8]+y[8],E[9]=a[9]+y[9],E[10]=a[10]+y[10],E[11]=a[11]+y[11],E[12]=a[12]+y[12],E[13]=a[13]+y[13],E[14]=a[14]+y[14],E[15]=a[15]+y[15],E}function Ub(E,a,y){return E[0]=a[0]-y[0],E[1]=a[1]-y[1],E[2]=a[2]-y[2],E[3]=a[3]-y[3],E[4]=a[4]-y[4],E[5]=a[5]-y[5],E[6]=a[6]-y[6],E[7]=a[7]-y[7],E[8]=a[8]-y[8],E[9]=a[9]-y[9],E[10]=a[10]-y[10],E[11]=a[11]-y[11],E[12]=a[12]-y[12],E[13]=a[13]-y[13],E[14]=a[14]-y[14],E[15]=a[15]-y[15],E}function FT(E,a,y){return E[0]=a[0]*y,E[1]=a[1]*y,E[2]=a[2]*y,E[3]=a[3]*y,E[4]=a[4]*y,E[5]=a[5]*y,E[6]=a[6]*y,E[7]=a[7]*y,E[8]=a[8]*y,E[9]=a[9]*y,E[10]=a[10]*y,E[11]=a[11]*y,E[12]=a[12]*y,E[13]=a[13]*y,E[14]=a[14]*y,E[15]=a[15]*y,E}function kT(E,a,y,x){return E[0]=a[0]+y[0]*x,E[1]=a[1]+y[1]*x,E[2]=a[2]+y[2]*x,E[3]=a[3]+y[3]*x,E[4]=a[4]+y[4]*x,E[5]=a[5]+y[5]*x,E[6]=a[6]+y[6]*x,E[7]=a[7]+y[7]*x,E[8]=a[8]+y[8]*x,E[9]=a[9]+y[9]*x,E[10]=a[10]+y[10]*x,E[11]=a[11]+y[11]*x,E[12]=a[12]+y[12]*x,E[13]=a[13]+y[13]*x,E[14]=a[14]+y[14]*x,E[15]=a[15]+y[15]*x,E}function dE(E,a){return E[0]===a[0]&&E[1]===a[1]&&E[2]===a[2]&&E[3]===a[3]&&E[4]===a[4]&&E[5]===a[5]&&E[6]===a[6]&&E[7]===a[7]&&E[8]===a[8]&&E[9]===a[9]&&E[10]===a[10]&&E[11]===a[11]&&E[12]===a[12]&&E[13]===a[13]&&E[14]===a[14]&&E[15]===a[15]}function _T(E,a){var y=E[0],x=E[1],b=E[2],z=E[3],ee=E[4],re=E[5],ae=E[6],se=E[7],fe=E[8],me=E[9],Ee=E[10],Oe=E[11],ke=E[12],We=E[13],je=E[14],Ke=E[15],Ze=a[0],Je=a[1],tt=a[2],st=a[3],gt=a[4],mt=a[5],ct=a[6],Lt=a[7],_t=a[8],Yt=a[9],$t=a[10],En=a[11],on=a[12],Fn=a[13],tr=a[14],Cn=a[15];return Math.abs(y-Ze)<=xa*Math.max(1,Math.abs(y),Math.abs(Ze))&&Math.abs(x-Je)<=xa*Math.max(1,Math.abs(x),Math.abs(Je))&&Math.abs(b-tt)<=xa*Math.max(1,Math.abs(b),Math.abs(tt))&&Math.abs(z-st)<=xa*Math.max(1,Math.abs(z),Math.abs(st))&&Math.abs(ee-gt)<=xa*Math.max(1,Math.abs(ee),Math.abs(gt))&&Math.abs(re-mt)<=xa*Math.max(1,Math.abs(re),Math.abs(mt))&&Math.abs(ae-ct)<=xa*Math.max(1,Math.abs(ae),Math.abs(ct))&&Math.abs(se-Lt)<=xa*Math.max(1,Math.abs(se),Math.abs(Lt))&&Math.abs(fe-_t)<=xa*Math.max(1,Math.abs(fe),Math.abs(_t))&&Math.abs(me-Yt)<=xa*Math.max(1,Math.abs(me),Math.abs(Yt))&&Math.abs(Ee-$t)<=xa*Math.max(1,Math.abs(Ee),Math.abs($t))&&Math.abs(Oe-En)<=xa*Math.max(1,Math.abs(Oe),Math.abs(En))&&Math.abs(ke-on)<=xa*Math.max(1,Math.abs(ke),Math.abs(on))&&Math.abs(We-Fn)<=xa*Math.max(1,Math.abs(We),Math.abs(Fn))&&Math.abs(je-tr)<=xa*Math.max(1,Math.abs(je),Math.abs(tr))&&Math.abs(Ke-Cn)<=xa*Math.max(1,Math.abs(Ke),Math.abs(Cn))}var Wb=Hl,zT=Ub;function Hb(){var E=new Pa(9);return Pa!=Float32Array&&(E[1]=0,E[2]=0,E[3]=0,E[5]=0,E[6]=0,E[7]=0),E[0]=1,E[4]=1,E[8]=1,E}function UT(E,a){return E[0]=a[0],E[1]=a[1],E[2]=a[2],E[3]=a[4],E[4]=a[5],E[5]=a[6],E[6]=a[8],E[7]=a[9],E[8]=a[10],E}function qQ(E){var a=new glMatrix.ARRAY_TYPE(9);return a[0]=E[0],a[1]=E[1],a[2]=E[2],a[3]=E[3],a[4]=E[4],a[5]=E[5],a[6]=E[6],a[7]=E[7],a[8]=E[8],a}function $Q(E,a){return E[0]=a[0],E[1]=a[1],E[2]=a[2],E[3]=a[3],E[4]=a[4],E[5]=a[5],E[6]=a[6],E[7]=a[7],E[8]=a[8],E}function WT(E,a,y,x,b,z,ee,re,ae){var se=new Pa(9);return se[0]=E,se[1]=a,se[2]=y,se[3]=x,se[4]=b,se[5]=z,se[6]=ee,se[7]=re,se[8]=ae,se}function eY(E,a,y,x,b,z,ee,re,ae,se){return E[0]=a,E[1]=y,E[2]=x,E[3]=b,E[4]=z,E[5]=ee,E[6]=re,E[7]=ae,E[8]=se,E}function tY(E){return E[0]=1,E[1]=0,E[2]=0,E[3]=0,E[4]=1,E[5]=0,E[6]=0,E[7]=0,E[8]=1,E}function nY(E,a){if(E===a){var y=a[1],x=a[2],b=a[5];E[1]=a[3],E[2]=a[6],E[3]=y,E[5]=a[7],E[6]=x,E[7]=b}else E[0]=a[0],E[1]=a[3],E[2]=a[6],E[3]=a[1],E[4]=a[4],E[5]=a[7],E[6]=a[2],E[7]=a[5],E[8]=a[8];return E}function rY(E,a){var y=a[0],x=a[1],b=a[2],z=a[3],ee=a[4],re=a[5],ae=a[6],se=a[7],fe=a[8],me=fe*ee-re*se,Ee=-fe*z+re*ae,Oe=se*z-ee*ae,ke=y*me+x*Ee+b*Oe;return ke?(ke=1/ke,E[0]=me*ke,E[1]=(-fe*x+b*se)*ke,E[2]=(re*x-b*ee)*ke,E[3]=Ee*ke,E[4]=(fe*y-b*ae)*ke,E[5]=(-re*y+b*z)*ke,E[6]=Oe*ke,E[7]=(-se*y+x*ae)*ke,E[8]=(ee*y-x*z)*ke,E):null}function aY(E,a){var y=a[0],x=a[1],b=a[2],z=a[3],ee=a[4],re=a[5],ae=a[6],se=a[7],fe=a[8];return E[0]=ee*fe-re*se,E[1]=b*se-x*fe,E[2]=x*re-b*ee,E[3]=re*ae-z*fe,E[4]=y*fe-b*ae,E[5]=b*z-y*re,E[6]=z*se-ee*ae,E[7]=x*ae-y*se,E[8]=y*ee-x*z,E}function iY(E){var a=E[0],y=E[1],x=E[2],b=E[3],z=E[4],ee=E[5],re=E[6],ae=E[7],se=E[8];return a*(se*z-ee*ae)+y*(-se*b+ee*re)+x*(ae*b-z*re)}function oY(E,a,y){var x=a[0],b=a[1],z=a[2],ee=a[3],re=a[4],ae=a[5],se=a[6],fe=a[7],me=a[8],Ee=y[0],Oe=y[1],ke=y[2],We=y[3],je=y[4],Ke=y[5],Ze=y[6],Je=y[7],tt=y[8];return E[0]=Ee*x+Oe*ee+ke*se,E[1]=Ee*b+Oe*re+ke*fe,E[2]=Ee*z+Oe*ae+ke*me,E[3]=We*x+je*ee+Ke*se,E[4]=We*b+je*re+Ke*fe,E[5]=We*z+je*ae+Ke*me,E[6]=Ze*x+Je*ee+tt*se,E[7]=Ze*b+Je*re+tt*fe,E[8]=Ze*z+Je*ae+tt*me,E}function sY(E,a,y){var x=a[0],b=a[1],z=a[2],ee=a[3],re=a[4],ae=a[5],se=a[6],fe=a[7],me=a[8],Ee=y[0],Oe=y[1];return E[0]=x,E[1]=b,E[2]=z,E[3]=ee,E[4]=re,E[5]=ae,E[6]=Ee*x+Oe*ee+se,E[7]=Ee*b+Oe*re+fe,E[8]=Ee*z+Oe*ae+me,E}function lY(E,a,y){var x=a[0],b=a[1],z=a[2],ee=a[3],re=a[4],ae=a[5],se=a[6],fe=a[7],me=a[8],Ee=Math.sin(y),Oe=Math.cos(y);return E[0]=Oe*x+Ee*ee,E[1]=Oe*b+Ee*re,E[2]=Oe*z+Ee*ae,E[3]=Oe*ee-Ee*x,E[4]=Oe*re-Ee*b,E[5]=Oe*ae-Ee*z,E[6]=se,E[7]=fe,E[8]=me,E}function uY(E,a,y){var x=y[0],b=y[1];return E[0]=x*a[0],E[1]=x*a[1],E[2]=x*a[2],E[3]=b*a[3],E[4]=b*a[4],E[5]=b*a[5],E[6]=a[6],E[7]=a[7],E[8]=a[8],E}function cY(E,a){return E[0]=1,E[1]=0,E[2]=0,E[3]=0,E[4]=1,E[5]=0,E[6]=a[0],E[7]=a[1],E[8]=1,E}function dY(E,a){var y=Math.sin(a),x=Math.cos(a);return E[0]=x,E[1]=y,E[2]=0,E[3]=-y,E[4]=x,E[5]=0,E[6]=0,E[7]=0,E[8]=1,E}function fY(E,a){return E[0]=a[0],E[1]=0,E[2]=0,E[3]=0,E[4]=a[1],E[5]=0,E[6]=0,E[7]=0,E[8]=1,E}function hY(E,a){return E[0]=a[0],E[1]=a[1],E[2]=0,E[3]=a[2],E[4]=a[3],E[5]=0,E[6]=a[4],E[7]=a[5],E[8]=1,E}function gY(E,a){var y=a[0],x=a[1],b=a[2],z=a[3],ee=y+y,re=x+x,ae=b+b,se=y*ee,fe=x*ee,me=x*re,Ee=b*ee,Oe=b*re,ke=b*ae,We=z*ee,je=z*re,Ke=z*ae;return E[0]=1-me-ke,E[3]=fe-Ke,E[6]=Ee+je,E[1]=fe+Ke,E[4]=1-se-ke,E[7]=Oe-We,E[2]=Ee-je,E[5]=Oe+We,E[8]=1-se-me,E}function vY(E,a){var y=a[0],x=a[1],b=a[2],z=a[3],ee=a[4],re=a[5],ae=a[6],se=a[7],fe=a[8],me=a[9],Ee=a[10],Oe=a[11],ke=a[12],We=a[13],je=a[14],Ke=a[15],Ze=y*re-x*ee,Je=y*ae-b*ee,tt=y*se-z*ee,st=x*ae-b*re,gt=x*se-z*re,mt=b*se-z*ae,ct=fe*We-me*ke,Lt=fe*je-Ee*ke,_t=fe*Ke-Oe*ke,Yt=me*je-Ee*We,$t=me*Ke-Oe*We,En=Ee*Ke-Oe*je,on=Ze*En-Je*$t+tt*Yt+st*_t-gt*Lt+mt*ct;return on?(on=1/on,E[0]=(re*En-ae*$t+se*Yt)*on,E[1]=(ae*_t-ee*En-se*Lt)*on,E[2]=(ee*$t-re*_t+se*ct)*on,E[3]=(b*$t-x*En-z*Yt)*on,E[4]=(y*En-b*_t+z*Lt)*on,E[5]=(x*_t-y*$t-z*ct)*on,E[6]=(We*mt-je*gt+Ke*st)*on,E[7]=(je*tt-ke*mt-Ke*Je)*on,E[8]=(ke*gt-We*tt+Ke*Ze)*on,E):null}function mY(E,a,y){return E[0]=2/a,E[1]=0,E[2]=0,E[3]=0,E[4]=-2/y,E[5]=0,E[6]=-1,E[7]=1,E[8]=1,E}function pY(E){return"mat3("+E[0]+", "+E[1]+", "+E[2]+", "+E[3]+", "+E[4]+", "+E[5]+", "+E[6]+", "+E[7]+", "+E[8]+")"}function yY(E){return Math.sqrt(E[0]*E[0]+E[1]*E[1]+E[2]*E[2]+E[3]*E[3]+E[4]*E[4]+E[5]*E[5]+E[6]*E[6]+E[7]*E[7]+E[8]*E[8])}function EY(E,a,y){return E[0]=a[0]+y[0],E[1]=a[1]+y[1],E[2]=a[2]+y[2],E[3]=a[3]+y[3],E[4]=a[4]+y[4],E[5]=a[5]+y[5],E[6]=a[6]+y[6],E[7]=a[7]+y[7],E[8]=a[8]+y[8],E}function AY(E,a,y){return E[0]=a[0]-y[0],E[1]=a[1]-y[1],E[2]=a[2]-y[2],E[3]=a[3]-y[3],E[4]=a[4]-y[4],E[5]=a[5]-y[5],E[6]=a[6]-y[6],E[7]=a[7]-y[7],E[8]=a[8]-y[8],E}function xY(E,a,y){return E[0]=a[0]*y,E[1]=a[1]*y,E[2]=a[2]*y,E[3]=a[3]*y,E[4]=a[4]*y,E[5]=a[5]*y,E[6]=a[6]*y,E[7]=a[7]*y,E[8]=a[8]*y,E}function SY(E,a,y,x){return E[0]=a[0]+y[0]*x,E[1]=a[1]+y[1]*x,E[2]=a[2]+y[2]*x,E[3]=a[3]+y[3]*x,E[4]=a[4]+y[4]*x,E[5]=a[5]+y[5]*x,E[6]=a[6]+y[6]*x,E[7]=a[7]+y[7]*x,E[8]=a[8]+y[8]*x,E}function bY(E,a){return E[0]===a[0]&&E[1]===a[1]&&E[2]===a[2]&&E[3]===a[3]&&E[4]===a[4]&&E[5]===a[5]&&E[6]===a[6]&&E[7]===a[7]&&E[8]===a[8]}function CY(E,a){var y=E[0],x=E[1],b=E[2],z=E[3],ee=E[4],re=E[5],ae=E[6],se=E[7],fe=E[8],me=a[0],Ee=a[1],Oe=a[2],ke=a[3],We=a[4],je=a[5],Ke=a[6],Ze=a[7],Je=a[8];return Math.abs(y-me)<=glMatrix.EPSILON*Math.max(1,Math.abs(y),Math.abs(me))&&Math.abs(x-Ee)<=glMatrix.EPSILON*Math.max(1,Math.abs(x),Math.abs(Ee))&&Math.abs(b-Oe)<=glMatrix.EPSILON*Math.max(1,Math.abs(b),Math.abs(Oe))&&Math.abs(z-ke)<=glMatrix.EPSILON*Math.max(1,Math.abs(z),Math.abs(ke))&&Math.abs(ee-We)<=glMatrix.EPSILON*Math.max(1,Math.abs(ee),Math.abs(We))&&Math.abs(re-je)<=glMatrix.EPSILON*Math.max(1,Math.abs(re),Math.abs(je))&&Math.abs(ae-Ke)<=glMatrix.EPSILON*Math.max(1,Math.abs(ae),Math.abs(Ke))&&Math.abs(se-Ze)<=glMatrix.EPSILON*Math.max(1,Math.abs(se),Math.abs(Ze))&&Math.abs(fe-Je)<=glMatrix.EPSILON*Math.max(1,Math.abs(fe),Math.abs(Je))}var PY=null,wY=null;function cu(){var E=new Pa(4);return Pa!=Float32Array&&(E[0]=0,E[1]=0,E[2]=0),E[3]=1,E}function MY(E){return E[0]=0,E[1]=0,E[2]=0,E[3]=1,E}function oh(E,a,y){y=y*.5;var x=Math.sin(y);return E[0]=x*a[0],E[1]=x*a[1],E[2]=x*a[2],E[3]=Math.cos(y),E}function DY(E,a){var y=Math.acos(a[3])*2,x=Math.sin(y/2);return x>glMatrix.EPSILON?(E[0]=a[0]/x,E[1]=a[1]/x,E[2]=a[2]/x):(E[0]=1,E[1]=0,E[2]=0),y}function IY(E,a){var y=ZT(E,a);return Math.acos(2*y*y-1)}function sh(E,a,y){var x=a[0],b=a[1],z=a[2],ee=a[3],re=y[0],ae=y[1],se=y[2],fe=y[3];return E[0]=x*fe+ee*re+b*se-z*ae,E[1]=b*fe+ee*ae+z*re-x*se,E[2]=z*fe+ee*se+x*ae-b*re,E[3]=ee*fe-x*re-b*ae-z*se,E}function TY(E,a,y){y*=.5;var x=a[0],b=a[1],z=a[2],ee=a[3],re=Math.sin(y),ae=Math.cos(y);return E[0]=x*ae+ee*re,E[1]=b*ae+z*re,E[2]=z*ae-b*re,E[3]=ee*ae-x*re,E}function OY(E,a,y){y*=.5;var x=a[0],b=a[1],z=a[2],ee=a[3],re=Math.sin(y),ae=Math.cos(y);return E[0]=x*ae-z*re,E[1]=b*ae+ee*re,E[2]=z*ae+x*re,E[3]=ee*ae-b*re,E}function LY(E,a,y){y*=.5;var x=a[0],b=a[1],z=a[2],ee=a[3],re=Math.sin(y),ae=Math.cos(y);return E[0]=x*ae+b*re,E[1]=b*ae-x*re,E[2]=z*ae+ee*re,E[3]=ee*ae-z*re,E}function BY(E,a){var y=a[0],x=a[1],b=a[2];return E[0]=y,E[1]=x,E[2]=b,E[3]=Math.sqrt(Math.abs(1-y*y-x*x-b*b)),E}function jT(E,a){var y=a[0],x=a[1],b=a[2],z=a[3],ee=Math.sqrt(y*y+x*x+b*b),re=Math.exp(z),ae=ee>0?re*Math.sin(ee)/ee:0;return E[0]=y*ae,E[1]=x*ae,E[2]=b*ae,E[3]=re*Math.cos(ee),E}function GT(E,a){var y=a[0],x=a[1],b=a[2],z=a[3],ee=Math.sqrt(y*y+x*x+b*b),re=ee>0?Math.atan2(ee,z)/ee:0;return E[0]=y*re,E[1]=x*re,E[2]=b*re,E[3]=.5*Math.log(y*y+x*x+b*b+z*z),E}function NY(E,a,y){return GT(E,a),KT(E,E,y),jT(E,E),E}function fE(E,a,y,x){var b=a[0],z=a[1],ee=a[2],re=a[3],ae=y[0],se=y[1],fe=y[2],me=y[3],Ee,Oe,ke,We,je;return Oe=b*ae+z*se+ee*fe+re*me,Oe<0&&(Oe=-Oe,ae=-ae,se=-se,fe=-fe,me=-me),1-Oe>xa?(Ee=Math.acos(Oe),ke=Math.sin(Ee),We=Math.sin((1-x)*Ee)/ke,je=Math.sin(x*Ee)/ke):(We=1-x,je=x),E[0]=We*b+je*ae,E[1]=We*z+je*se,E[2]=We*ee+je*fe,E[3]=We*re+je*me,E}function RY(E){var a=glMatrix.RANDOM(),y=glMatrix.RANDOM(),x=glMatrix.RANDOM(),b=Math.sqrt(1-a),z=Math.sqrt(a);return E[0]=b*Math.sin(2*Math.PI*y),E[1]=b*Math.cos(2*Math.PI*y),E[2]=z*Math.sin(2*Math.PI*x),E[3]=z*Math.cos(2*Math.PI*x),E}function hE(E,a){var y=a[0],x=a[1],b=a[2],z=a[3],ee=y*y+x*x+b*b+z*z,re=ee?1/ee:0;return E[0]=-y*re,E[1]=-x*re,E[2]=-b*re,E[3]=z*re,E}function FY(E,a){return E[0]=-a[0],E[1]=-a[1],E[2]=-a[2],E[3]=a[3],E}function HT(E,a){var y=a[0]+a[4]+a[8],x;if(y>0)x=Math.sqrt(y+1),E[3]=.5*x,x=.5/x,E[0]=(a[5]-a[7])*x,E[1]=(a[6]-a[2])*x,E[2]=(a[1]-a[3])*x;else{var b=0;a[4]>a[0]&&(b=1),a[8]>a[b*3+b]&&(b=2);var z=(b+1)%3,ee=(b+2)%3;x=Math.sqrt(a[b*3+b]-a[z*3+z]-a[ee*3+ee]+1),E[b]=.5*x,x=.5/x,E[3]=(a[z*3+ee]-a[ee*3+z])*x,E[z]=(a[z*3+b]+a[b*3+z])*x,E[ee]=(a[ee*3+b]+a[b*3+ee])*x}return E}function mm(E,a,y,x){var b=arguments.length>4&&arguments[4]!==void 0?arguments[4]:oa,z=Math.PI/360;a*=z,x*=z,y*=z;var ee=Math.sin(a),re=Math.cos(a),ae=Math.sin(y),se=Math.cos(y),fe=Math.sin(x),me=Math.cos(x);switch(b){case"xyz":E[0]=ee*se*me+re*ae*fe,E[1]=re*ae*me-ee*se*fe,E[2]=re*se*fe+ee*ae*me,E[3]=re*se*me-ee*ae*fe;break;case"xzy":E[0]=ee*se*me-re*ae*fe,E[1]=re*ae*me-ee*se*fe,E[2]=re*se*fe+ee*ae*me,E[3]=re*se*me+ee*ae*fe;break;case"yxz":E[0]=ee*se*me+re*ae*fe,E[1]=re*ae*me-ee*se*fe,E[2]=re*se*fe-ee*ae*me,E[3]=re*se*me+ee*ae*fe;break;case"yzx":E[0]=ee*se*me+re*ae*fe,E[1]=re*ae*me+ee*se*fe,E[2]=re*se*fe-ee*ae*me,E[3]=re*se*me-ee*ae*fe;break;case"zxy":E[0]=ee*se*me-re*ae*fe,E[1]=re*ae*me+ee*se*fe,E[2]=re*se*fe+ee*ae*me,E[3]=re*se*me-ee*ae*fe;break;case"zyx":E[0]=ee*se*me-re*ae*fe,E[1]=re*ae*me+ee*se*fe,E[2]=re*se*fe-ee*ae*me,E[3]=re*se*me+ee*ae*fe;break;default:throw new Error("Unknown angle order "+b)}return E}function kY(E){return"quat("+E[0]+", "+E[1]+", "+E[2]+", "+E[3]+")"}var _Y=Xg,VT=of,pm=Zh,Vb=Qh,zY=K0,Kb=sh,KT=ku,ZT=nE,UY=sf,WY=Xh,jY=null,GY=Jh,HY=null,ym=tE,VY=oE;function KY(E,a){return Math.abs(vec4.dot(E,a))>=1-glMatrix.EPSILON}var ZY=function(){var E=na(),a=_r(1,0,0),y=_r(0,1,0);return function(x,b,z){var ee=Xs(b,z);return ee<-.999999?(bl(E,a,b),Hh(E)<1e-6&&bl(E,y,b),ml(E,E),oh(x,E,Math.PI),x):ee>.999999?(x[0]=0,x[1]=0,x[2]=0,x[3]=1,x):(bl(E,b,z),x[0]=E[0],x[1]=E[1],x[2]=E[2],x[3]=1+ee,ym(x,x))}}(),QY=function(){var E=cu(),a=cu();return function(y,x,b,z,ee,re){return fE(E,x,ee,re),fE(a,b,z,re),fE(y,E,a,2*re*(1-re)),y}}(),YY=function(){var E=Hb();return function(a,y,x,b){return E[0]=x[0],E[3]=x[1],E[6]=x[2],E[1]=b[0],E[4]=b[1],E[7]=b[2],E[2]=-y[0],E[5]=-y[1],E[8]=-y[2],ym(a,HT(a,E))}}();function gE(){var E=new Pa(2);return Pa!=Float32Array&&(E[0]=0,E[1]=0),E}function XY(E){var a=new glMatrix.ARRAY_TYPE(2);return a[0]=E[0],a[1]=E[1],a}function JY(E,a){var y=new glMatrix.ARRAY_TYPE(2);return y[0]=E,y[1]=a,y}function QT(E,a){return E[0]=a[0],E[1]=a[1],E}function YT(E,a,y){return E[0]=a,E[1]=y,E}function qY(E,a,y){return E[0]=a[0]+y[0],E[1]=a[1]+y[1],E}function $Y(E,a,y){return E[0]=a[0]-y[0],E[1]=a[1]-y[1],E}function eX(E,a,y){return E[0]=a[0]*y[0],E[1]=a[1]*y[1],E}function tX(E,a,y){return E[0]=a[0]/y[0],E[1]=a[1]/y[1],E}function nX(E,a){return E[0]=Math.ceil(a[0]),E[1]=Math.ceil(a[1]),E}function rX(E,a){return E[0]=Math.floor(a[0]),E[1]=Math.floor(a[1]),E}function aX(E,a,y){return E[0]=Math.min(a[0],y[0]),E[1]=Math.min(a[1],y[1]),E}function iX(E,a,y){return E[0]=Math.max(a[0],y[0]),E[1]=Math.max(a[1],y[1]),E}function oX(E,a){return E[0]=glMatrix.round(a[0]),E[1]=glMatrix.round(a[1]),E}function sX(E,a,y){return E[0]=a[0]*y,E[1]=a[1]*y,E}function lX(E,a,y,x){return E[0]=a[0]+y[0]*x,E[1]=a[1]+y[1]*x,E}function uX(E,a){var y=a[0]-E[0],x=a[1]-E[1];return Math.sqrt(y*y+x*x)}function cX(E,a){var y=a[0]-E[0],x=a[1]-E[1];return y*y+x*x}function dX(E){var a=E[0],y=E[1];return Math.sqrt(a*a+y*y)}function fX(E){var a=E[0],y=E[1];return a*a+y*y}function hX(E,a){return E[0]=-a[0],E[1]=-a[1],E}function gX(E,a){return E[0]=1/a[0],E[1]=1/a[1],E}function XT(E,a){var y=a[0],x=a[1],b=y*y+x*x;return b>0&&(b=1/Math.sqrt(b)),E[0]=a[0]*b,E[1]=a[1]*b,E}function JT(E,a){return E[0]*a[0]+E[1]*a[1]}function vX(E,a,y){var x=a[0]*y[1]-a[1]*y[0];return E[0]=E[1]=0,E[2]=x,E}function mX(E,a,y,x){var b=a[0],z=a[1];return E[0]=b+x*(y[0]-b),E[1]=z+x*(y[1]-z),E}function pX(E,a){a=a===void 0?1:a;var y=glMatrix.RANDOM()*2*Math.PI;return E[0]=Math.cos(y)*a,E[1]=Math.sin(y)*a,E}function yX(E,a,y){var x=a[0],b=a[1];return E[0]=y[0]*x+y[2]*b,E[1]=y[1]*x+y[3]*b,E}function EX(E,a,y){var x=a[0],b=a[1];return E[0]=y[0]*x+y[2]*b+y[4],E[1]=y[1]*x+y[3]*b+y[5],E}function AX(E,a,y){var x=a[0],b=a[1];return E[0]=y[0]*x+y[3]*b+y[6],E[1]=y[1]*x+y[4]*b+y[7],E}function xX(E,a,y){var x=a[0],b=a[1];return E[0]=y[0]*x+y[4]*b+y[12],E[1]=y[1]*x+y[5]*b+y[13],E}function SX(E,a,y,x){var b=a[0]-y[0],z=a[1]-y[1],ee=Math.sin(x),re=Math.cos(x);return E[0]=b*re-z*ee+y[0],E[1]=b*ee+z*re+y[1],E}function bX(E,a){var y=E[0],x=E[1],b=a[0],z=a[1];return Math.abs(Math.atan2(x*b-y*z,y*b+x*z))}function CX(E,a){var y=E[0],x=E[1],b=a[0],z=a[1];return Math.atan2(y*z-x*b,y*b+x*z)}function PX(E){return E[0]=0,E[1]=0,E}function wX(E){return"vec2("+E[0]+", "+E[1]+")"}function qT(E,a){return E[0]===a[0]&&E[1]===a[1]}function MX(E,a){var y=E[0],x=E[1],b=a[0],z=a[1];return Math.abs(y-b)<=glMatrix.EPSILON*Math.max(1,Math.abs(y),Math.abs(b))&&Math.abs(x-z)<=glMatrix.EPSILON*Math.max(1,Math.abs(x),Math.abs(z))}var DX=null,IX=null,TX=null,OX=null,LX=null,BX=null,NX=null,RX=function(){var E=gE();return function(a,y,x,b,z,ee){var re,ae;for(y||(y=2),x||(x=0),b?ae=Math.min(b*y+x,a.length):ae=a.length,re=x;rey?y:E},Nl=$T,Bt=Ie(80813),Y0={a:7,c:6,h:1,l:2,m:2,r:4,q:4,s:4,t:2,v:1,z:0};function Zb(E){return Array.isArray(E)&&E.every(function(a){var y=a[0].toLowerCase();return Y0[y]===a.length-1&&"achlmqstvz".includes(y)})}function Qb(E){return Zb(E)&&E.every(function(a){var y=a[0];return y===y.toUpperCase()})}function Yb(E){return Qb(E)&&E.every(function(a){var y=a[0];return"ACLMQZ".includes(y)})}var Xb={x1:0,y1:0,x2:0,y2:0,x:0,y:0,qx:null,qy:null};function Jb(E){for(var a=E.pathValue[E.segmentStart],y=a.toLowerCase(),x=E.data;x.length>=Y0[y]&&(y==="m"&&x.length>2?(E.segments.push([a].concat(x.splice(0,2))),y="l",a=a==="m"?"l":"L"):E.segments.push([a].concat(x.splice(0,Y0[y]))),!!Y0[y]););}function eO(E){var a=E.index,y=E.pathValue,x=y.charCodeAt(a);if(x===48){E.param=0,E.index+=1;return}if(x===49){E.param=1,E.index+=1;return}E.err='[path-util]: invalid Arc flag "'.concat(y[a],'", expecting 0 or 1 at index ').concat(a)}function tO(E){return E>=48&&E<=57||E===43||E===45||E===46}function r0(E){return E>=48&&E<=57}function nO(E){var a=E.max,y=E.pathValue,x=E.index,b=x,z=!1,ee=!1,re=!1,ae=!1,se;if(b>=a){E.err="[path-util]: Invalid path value at index ".concat(b,', "pathValue" is missing param');return}if(se=y.charCodeAt(b),(se===43||se===45)&&(b+=1,se=y.charCodeAt(b)),!r0(se)&&se!==46){E.err="[path-util]: Invalid path value at index ".concat(b,', "').concat(y[b],'" is not a number');return}if(se!==46){if(z=se===48,b+=1,se=y.charCodeAt(b),z&&b=5760&&a.includes(E)}function Em(E){for(var a=E.pathValue,y=E.max;E.index0;ee-=1){if(iO(b)&&(ee===3||ee===4)?eO(E):nO(E),E.err.length)return;E.data.push(E.param),Em(E),E.index=E.max||!tO(y.charCodeAt(E.index)))break}Jb(E)}var sO=function(){function E(a){this.pathValue=a,this.segments=[],this.max=a.length,this.index=0,this.param=0,this.segmentStart=0,this.data=[],this.err=""}return E}();function lO(E){if(Zb(E))return[].concat(E);var a=new sO(E);for(Em(a);a.index=z)ee={x:y,y:x};else{var re=lh([E,a],[y,x],b/z),ae=re[0],se=re[1];ee={x:ae,y:se}}return{length:z,point:ee,min:{x:Math.min(E,y),y:Math.min(a,x)},max:{x:Math.max(E,y),y:Math.max(a,x)}}}function $b(E,a){var y=E.x,x=E.y,b=a.x,z=a.y,ee=y*b+x*z,re=Math.sqrt((Math.pow(y,2)+Math.pow(x,2))*(Math.pow(b,2)+Math.pow(z,2))),ae=y*z-x*b<0?-1:1,se=ae*Math.acos(ee/re);return se}function dO(E,a,y,x,b,z,ee,re,ae,se){var fe=Math.abs,me=Math.sin,Ee=Math.cos,Oe=Math.sqrt,ke=Math.PI,We=fe(y),je=fe(x),Ke=(b%360+360)%360,Ze=Ke*(ke/180);if(E===re&&a===ae)return{x:E,y:a};if(We===0||je===0)return vE(E,a,re,ae,se).point;var Je=(E-re)/2,tt=(a-ae)/2,st={x:Ee(Ze)*Je+me(Ze)*tt,y:-me(Ze)*Je+Ee(Ze)*tt},gt=Math.pow(st.x,2)/Math.pow(We,2)+Math.pow(st.y,2)/Math.pow(je,2);gt>1&&(We*=Oe(gt),je*=Oe(gt));var mt=Math.pow(We,2)*Math.pow(je,2)-Math.pow(We,2)*Math.pow(st.y,2)-Math.pow(je,2)*Math.pow(st.x,2),ct=Math.pow(We,2)*Math.pow(st.y,2)+Math.pow(je,2)*Math.pow(st.x,2),Lt=mt/ct;Lt=Lt<0?0:Lt;var _t=(z!==ee?1:-1)*Oe(Lt),Yt={x:_t*(We*st.y/je),y:_t*(-(je*st.x)/We)},$t={x:Ee(Ze)*Yt.x-me(Ze)*Yt.y+(E+re)/2,y:me(Ze)*Yt.x+Ee(Ze)*Yt.y+(a+ae)/2},En={x:(st.x-Yt.x)/We,y:(st.y-Yt.y)/je},on=$b({x:1,y:0},En),Fn={x:(-st.x-Yt.x)/We,y:(-st.y-Yt.y)/je},tr=$b(En,Fn);!ee&&tr>0?tr-=2*ke:ee&&tr<0&&(tr+=2*ke),tr%=2*ke;var Cn=on+tr*se,xn=We*Ee(Cn),Ln=je*me(Cn),nr={x:Ee(Ze)*xn-me(Ze)*Ln+$t.x,y:me(Ze)*xn+Ee(Ze)*Ln+$t.y};return nr}function fO(E,a,y,x,b,z,ee,re,ae,se,fe){var me,Ee=fe.bbox,Oe=Ee===void 0?!0:Ee,ke=fe.length,We=ke===void 0?!0:ke,je=fe.sampleSize,Ke=je===void 0?30:je,Ze=typeof se=="number",Je=E,tt=a,st=0,gt=[Je,tt,st],mt=[Je,tt],ct=0,Lt={x:0,y:0},_t=[{x:Je,y:tt}];Ze&&se<=0&&(Lt={x:Je,y:tt});for(var Yt=0;Yt<=Ke;Yt+=1){if(ct=Yt/Ke,me=dO(E,a,y,x,b,z,ee,re,ae,ct),Je=me.x,tt=me.y,Oe&&_t.push({x:Je,y:tt}),We&&(st+=bc(mt,[Je,tt])),mt=[Je,tt],Ze&&st>=se&&se>gt[2]){var $t=(st-se)/(st-gt[2]);Lt={x:mt[0]*(1-$t)+gt[0]*$t,y:mt[1]*(1-$t)+gt[1]*$t}}gt=[Je,tt,st]}return Ze&&se>=st&&(Lt={x:re,y:ae}),{length:st,point:Lt,min:{x:Math.min.apply(null,_t.map(function(En){return En.x})),y:Math.min.apply(null,_t.map(function(En){return En.y}))},max:{x:Math.max.apply(null,_t.map(function(En){return En.x})),y:Math.max.apply(null,_t.map(function(En){return En.y}))}}}function hO(E,a,y,x,b,z,ee,re,ae){var se=1-ae;return{x:Math.pow(se,3)*E+3*Math.pow(se,2)*ae*y+3*se*Math.pow(ae,2)*b+Math.pow(ae,3)*ee,y:Math.pow(se,3)*a+3*Math.pow(se,2)*ae*x+3*se*Math.pow(ae,2)*z+Math.pow(ae,3)*re}}function eC(E,a,y,x,b,z,ee,re,ae,se){var fe,me=se.bbox,Ee=me===void 0?!0:me,Oe=se.length,ke=Oe===void 0?!0:Oe,We=se.sampleSize,je=We===void 0?10:We,Ke=typeof ae=="number",Ze=E,Je=a,tt=0,st=[Ze,Je,tt],gt=[Ze,Je],mt=0,ct={x:0,y:0},Lt=[{x:Ze,y:Je}];Ke&&ae<=0&&(ct={x:Ze,y:Je});for(var _t=0;_t<=je;_t+=1){if(mt=_t/je,fe=hO(E,a,y,x,b,z,ee,re,mt),Ze=fe.x,Je=fe.y,Ee&&Lt.push({x:Ze,y:Je}),ke&&(tt+=bc(gt,[Ze,Je])),gt=[Ze,Je],Ke&&tt>=ae&&ae>st[2]){var Yt=(tt-ae)/(tt-st[2]);ct={x:gt[0]*(1-Yt)+st[0]*Yt,y:gt[1]*(1-Yt)+st[1]*Yt}}st=[Ze,Je,tt]}return Ke&&ae>=tt&&(ct={x:ee,y:re}),{length:tt,point:ct,min:{x:Math.min.apply(null,Lt.map(function($t){return $t.x})),y:Math.min.apply(null,Lt.map(function($t){return $t.y}))},max:{x:Math.max.apply(null,Lt.map(function($t){return $t.x})),y:Math.max.apply(null,Lt.map(function($t){return $t.y}))}}}function gO(E,a,y,x,b,z,ee){var re=1-ee;return{x:Math.pow(re,2)*E+2*re*ee*y+Math.pow(ee,2)*b,y:Math.pow(re,2)*a+2*re*ee*x+Math.pow(ee,2)*z}}function vO(E,a,y,x,b,z,ee,re){var ae,se=re.bbox,fe=se===void 0?!0:se,me=re.length,Ee=me===void 0?!0:me,Oe=re.sampleSize,ke=Oe===void 0?10:Oe,We=typeof ee=="number",je=E,Ke=a,Ze=0,Je=[je,Ke,Ze],tt=[je,Ke],st=0,gt={x:0,y:0},mt=[{x:je,y:Ke}];We&&ee<=0&&(gt={x:je,y:Ke});for(var ct=0;ct<=ke;ct+=1){if(st=ct/ke,ae=gO(E,a,y,x,b,z,st),je=ae.x,Ke=ae.y,fe&&mt.push({x:je,y:Ke}),Ee&&(Ze+=bc(tt,[je,Ke])),tt=[je,Ke],We&&Ze>=ee&&ee>Je[2]){var Lt=(Ze-ee)/(Ze-Je[2]);gt={x:tt[0]*(1-Lt)+Je[0]*Lt,y:tt[1]*(1-Lt)+Je[1]*Lt}}Je=[je,Ke,Ze]}return We&&ee>=Ze&&(gt={x:b,y:z}),{length:Ze,point:gt,min:{x:Math.min.apply(null,mt.map(function(_t){return _t.x})),y:Math.min.apply(null,mt.map(function(_t){return _t.y}))},max:{x:Math.max.apply(null,mt.map(function(_t){return _t.x})),y:Math.max.apply(null,mt.map(function(_t){return _t.y}))}}}function tC(E,a,y){for(var x,b,z,ee,re,ae,se=Am(E),fe=typeof a=="number",me,Ee=[],Oe,ke=0,We=0,je=0,Ke=0,Ze,Je=[],tt=[],st=0,gt={x:0,y:0},mt=gt,ct=gt,Lt=gt,_t=0,Yt=0,$t=se.length;Yt<$t;Yt+=1)Ze=se[Yt],Oe=Ze[0],me=Oe==="M",Ee=me?Ee:[ke,We].concat(Ze.slice(1)),me?(je=Ze[1],Ke=Ze[2],gt={x:je,y:Ke},mt=gt,st=0,fe&&a<.001&&(Lt=gt)):Oe==="L"?(x=vE(Ee[0],Ee[1],Ee[2],Ee[3],(a||0)-_t),st=x.length,gt=x.min,mt=x.max,ct=x.point):Oe==="A"?(b=fO(Ee[0],Ee[1],Ee[2],Ee[3],Ee[4],Ee[5],Ee[6],Ee[7],Ee[8],(a||0)-_t,y||{}),st=b.length,gt=b.min,mt=b.max,ct=b.point):Oe==="C"?(z=eC(Ee[0],Ee[1],Ee[2],Ee[3],Ee[4],Ee[5],Ee[6],Ee[7],(a||0)-_t,y||{}),st=z.length,gt=z.min,mt=z.max,ct=z.point):Oe==="Q"?(ee=vO(Ee[0],Ee[1],Ee[2],Ee[3],Ee[4],Ee[5],(a||0)-_t,y||{}),st=ee.length,gt=ee.min,mt=ee.max,ct=ee.point):Oe==="Z"&&(Ee=[ke,We,je,Ke],re=vE(Ee[0],Ee[1],Ee[2],Ee[3],(a||0)-_t),st=re.length,gt=re.min,mt=re.max,ct=re.point),fe&&_t=a&&(Lt=ct),tt.push(mt),Je.push(gt),_t+=st,ae=Oe!=="Z"?Ze.slice(-2):[je,Ke],ke=ae[0],We=ae[1];return fe&&a>=_t&&(Lt={x:ke,y:We}),{length:_t,point:Lt,min:{x:Math.min.apply(null,Je.map(function(En){return En.x})),y:Math.min.apply(null,Je.map(function(En){return En.y}))},max:{x:Math.max.apply(null,tt.map(function(En){return En.x})),y:Math.max.apply(null,tt.map(function(En){return En.y}))}}}function mO(E,a){return tC(E,void 0,(0,Bt.pi)((0,Bt.pi)({},a),{bbox:!1,length:!0})).length}function Cc(E){return Array.isArray(E)}var xm=function(E){if(Cc(E))return E.reduce(function(a,y){return Math.min(a,y)},E[0])};function Sm(E){if(!Array.isArray(E))return-1/0;var a=E.length;if(!a)return-1/0;for(var y=E[0],x=1;x7){E[y].shift();for(var x=E[y],b=y;x.length;)a[y]="A",E.splice(b+=1,0,["C"].concat(x.splice(0,6)));E.splice(y,1)}}function AO(E){return Yb(E)&&E.every(function(a){var y=a[0];return"MC".includes(y)})}function bm(E,a,y){var x=E*Math.cos(y)-a*Math.sin(y),b=E*Math.sin(y)+a*Math.cos(y);return{x,y:b}}function mE(E,a,y,x,b,z,ee,re,ae,se){var fe=E,me=a,Ee=y,Oe=x,ke=re,We=ae,je=Math.PI*120/180,Ke=Math.PI/180*(+b||0),Ze=[],Je,tt,st,gt,mt;if(se)tt=se[0],st=se[1],gt=se[2],mt=se[3];else{Je=bm(fe,me,-Ke),fe=Je.x,me=Je.y,Je=bm(ke,We,-Ke),ke=Je.x,We=Je.y;var ct=(fe-ke)/2,Lt=(me-We)/2,_t=ct*ct/(Ee*Ee)+Lt*Lt/(Oe*Oe);_t>1&&(_t=Math.sqrt(_t),Ee*=_t,Oe*=_t);var Yt=Ee*Ee,$t=Oe*Oe,En=(z===ee?-1:1)*Math.sqrt(Math.abs((Yt*$t-Yt*Lt*Lt-$t*ct*ct)/(Yt*Lt*Lt+$t*ct*ct)));gt=En*Ee*Lt/Oe+(fe+ke)/2,mt=En*-Oe*ct/Ee+(me+We)/2,tt=Math.asin(((me-mt)/Oe*Math.pow(10,9)>>0)/Math.pow(10,9)),st=Math.asin(((We-mt)/Oe*Math.pow(10,9)>>0)/Math.pow(10,9)),tt=fest&&(tt-=Math.PI*2),!ee&&st>tt&&(st-=Math.PI*2)}var on=st-tt;if(Math.abs(on)>je){var Fn=st,tr=ke,Cn=We;st=tt+je*(ee&&st>tt?1:-1),ke=gt+Ee*Math.cos(st),We=mt+Oe*Math.sin(st),Ze=mE(ke,We,Ee,Oe,b,0,ee,tr,Cn,[st,Fn,gt,mt])}on=st-tt;var xn=Math.cos(tt),Ln=Math.sin(tt),nr=Math.cos(st),An=Math.sin(st),fr=Math.tan(on/4),ra=4/3*Ee*fr,aa=4/3*Oe*fr,Gr=[fe,me],Sr=[fe+ra*Ln,me-aa*xn],Kr=[ke+ra*An,We-aa*nr],pa=[ke,We];if(Sr[0]=2*Gr[0]-Sr[0],Sr[1]=2*Gr[1]-Sr[1],se)return Sr.concat(Kr,pa,Ze);Ze=Sr.concat(Kr,pa,Ze);for(var Ua=[],ei=0,Co=Ze.length;eibO)return console.warn("Maximum recursion depth reached in equalizeSegments"),[E,a];var b=aC(E),z=aC(a),ee=b.length,re=z.length,ae=b.filter(function(Ke){return Ke.l}).length,se=z.filter(function(Ke){return Ke.l}).length,fe=b.filter(function(Ke){return Ke.l}).reduce(function(Ke,Ze){var Je=Ze.l;return Ke+Je},0)/ae||0,me=z.filter(function(Ke){return Ke.l}).reduce(function(Ke,Ze){var Je=Ze.l;return Ke+Je},0)/se||0,Ee=y||Math.max(ee,re),Oe=[fe,me],ke=[Ee-ee,Ee-re],We=0,je=[b,z].map(function(Ke,Ze){return Ke.l===Ee?Ke.map(function(Je){return Je.s}):Ke.map(function(Je,tt){return We=tt&&ke[Ze]&&Je.l>=Oe[Ze],ke[Ze]-=We?1:0,We?Je.ss:[Je.s]}).flat()});return je[0].length===je[1].length?je:iC(je[0],je[1],Ee,x+1)}function PO(E,a,y,x,b,z,ee,re){return 3*((re-a)*(y+b)-(ee-E)*(x+z)+x*(E-b)-y*(a-z)+re*(b+E/3)-ee*(z+a/3))/20}function wO(E){var a=0,y=0,x=0;return pE(E).map(function(b){var z;switch(b[0]){case"M":return a=b[1],y=b[2],0;default:var ee=b.slice(1),re=ee[0],ae=ee[1],se=ee[2],fe=ee[3],me=ee[4],Ee=ee[5];return x=PO(a,y,re,ae,se,fe,me,Ee),z=b.slice(-2),a=z[0],y=z[1],x}}).reduce(function(b,z){return b+z},0)}function oC(E){return wO(E)>=0}function MO(E){var a=E.slice(1).map(function(y,x,b){return x?b[x-1].slice(-2).concat(y.slice(1)):E[0].slice(1).concat(y.slice(1))}).map(function(y){return y.map(function(x,b){return y[y.length-b-2*(1-b%2)]})}).reverse();return[["M"].concat(a[0].slice(0,2))].concat(a.map(function(y){return["C"].concat(y.slice(2))}))}function DO(E){return E.map(function(a){return Array.isArray(a)?[].concat(a):a})}function IO(E){var a=E.length,y=a-1;return E.map(function(x,b){return E.map(function(z,ee){var re=b+ee,ae;return ee===0||E[re]&&E[re][0]==="M"?(ae=E[re],["M"].concat(ae.slice(-2))):(re>=a&&(re-=y),E[re])})})}function TO(E,a){var y=E.length-1,x=[],b=0,z=0,ee=IO(E);return ee.forEach(function(re,ae){E.slice(1).forEach(function(se,fe){z+=bc(E[(ae+fe)%y].slice(-2),a[fe%y].slice(-2))}),x[ae]=z,z=0}),b=x.indexOf(Math.min.apply(null,x)),ee[b]}var OO=function(E){return E===void 0},jo=OO,LO={}.toString,BO=function(E,a){return LO.call(E)==="[object "+a+"]"},sC=BO,NO=function(E){return sC(E,"Boolean")},J0=NO;function $i(E){return typeof E=="function"}var $l=function(E){var a=typeof E;return E!==null&&a==="object"||a==="function"};function RO(E,a,y){return tC(E,a,(0,Bt.pi)((0,Bt.pi)({},y),{bbox:!1,length:!0})).point}var Gi=Ie(20068);function FO(E,a){for(;!{}.hasOwnProperty.call(E,a)&&(E=(0,Wn.Z)(E))!==null;);return E}function yE(){return yE=typeof Reflect!="undefined"&&Reflect.get?Reflect.get.bind():function(E,a,y){var x=FO(E,a);if(x){var b=Object.getOwnPropertyDescriptor(x,a);return b.get?b.get.call(arguments.length<3?E:y):b.value}},yE.apply(null,arguments)}function lC(E,a,y,x){var b=yE((0,Wn.Z)(1&x?E.prototype:E),a,y);return 2&x&&typeof b=="function"?function(z){return b.apply(y,z)}:b}var kO=Ie(97047);function qu(E,a,y,x){var b=E-y,z=a-x;return Math.sqrt(b*b+z*z)}function Cm(E,a){var y=Math.min.apply(Math,(0,bn.Z)(E)),x=Math.min.apply(Math,(0,bn.Z)(a)),b=Math.max.apply(Math,(0,bn.Z)(E)),z=Math.max.apply(Math,(0,bn.Z)(a));return{x:y,y:x,width:b-y,height:z-x}}function uC(E){return(E+Math.PI*2)%(Math.PI*2)}function cC(E,a){var y=Math.abs(E);return a>0?y:y*-1}function _O(E,a,y,x,b,z){var ee=y,re=x;if(ee===0||re===0)return{x:E,y:a};for(var ae=b-E,se=z-a,fe=Math.abs(ae),me=Math.abs(se),Ee=ee*ee,Oe=re*re,ke=Math.PI/4,We=0,je=0,Ke=0;Ke<4;Ke++){We=ee*Math.cos(ke),je=re*Math.sin(ke);var Ze=(Ee-Oe)*Math.pow(Math.cos(ke),3)/ee,Je=(Oe-Ee)*Math.pow(Math.sin(ke),3)/re,tt=We-Ze,st=je-Je,gt=fe-Ze,mt=me-Je,ct=Math.hypot(st,tt),Lt=Math.hypot(mt,gt),_t=ct*Math.asin((tt*mt-st*gt)/(ct*Lt)),Yt=_t/Math.sqrt(Ee+Oe-We*We-je*je);ke+=Yt,ke=Math.min(Math.PI/2,Math.max(0,ke))}return{x:E+cC(We,ae),y:a+cC(je,se)}}function zO(E,a,y,x,b,z,ee,re){return-1*y*Math.cos(b)*Math.sin(re)-x*Math.sin(b)*Math.cos(re)}function UO(E,a,y,x,b,z,ee,re){return-1*y*Math.sin(b)*Math.sin(re)+x*Math.cos(b)*Math.cos(re)}function WO(E,a,y){return Math.atan(-a/E*Math.tan(y))}function jO(E,a,y){return Math.atan(a/(E*Math.tan(y)))}function GO(E,a,y,x,b,z){return y*Math.cos(b)*Math.cos(z)-x*Math.sin(b)*Math.sin(z)+E}function HO(E,a,y,x,b,z){return y*Math.sin(b)*Math.cos(z)+x*Math.cos(b)*Math.sin(z)+a}function VO(E,a,y,x){var b=Math.atan2(x*E,y*a);return(b+Math.PI*2)%(Math.PI*2)}function dC(E,a,y){return{x:E*Math.cos(y),y:a*Math.sin(y)}}function fC(E,a,y){var x=Math.cos(y),b=Math.sin(y);return[E*x-a*b,E*b+a*x]}function KO(E,a,y,x,b,z,ee){for(var re=WO(y,x,b),ae=1/0,se=-1/0,fe=[z,ee],me=-Math.PI*2;me<=Math.PI*2;me+=Math.PI){var Ee=re+me;zse&&(se=ke)}for(var We=jO(y,x,b),je=1/0,Ke=-1/0,Ze=[z,ee],Je=-Math.PI*2;Je<=Math.PI*2;Je+=Math.PI){var tt=We+Je;zKe&&(Ke=gt)}return{x:ae,y:je,width:se-ae,height:Ke-je}}function FX(E,a,y,x,b,z,ee,re,ae){var se=fC(re-E,ae-a,-b),fe=_slicedToArray(se,2),me=fe[0],Ee=fe[1],Oe=_O(0,0,y,x,me,Ee),ke=VO(y,x,Oe.x,Oe.y);keee&&(Oe=dC(y,x,ee));var We=fC(Oe.x,Oe.y,b);return{x:We[0]+E,y:We[1]+a}}function kX(E,a,y,x,b,z,ee,re){var ae=(ee-z)*re+z,se=zO(E,a,y,x,b,z,ee,ae),fe=UO(E,a,y,x,b,z,ee,ae);return uC(Math.atan2(fe,se))}var ZO=1e-4;function hC(E,a,y,x,b,z){var ee=-1,re=1/0,ae=[y,x],se=20;z&&z>200&&(se=z/10);for(var fe=1/se,me=fe/10,Ee=0;Ee<=se;Ee++){var Oe=Ee*fe,ke=[b.apply(void 0,(0,bn.Z)(E.concat([Oe]))),b.apply(void 0,(0,bn.Z)(a.concat([Oe])))],We=qu(ae[0],ae[1],ke[0],ke[1]);We=0&&stre?qu(y,x,b,z):vC(E,a,y,x,b,z)}function vC(E,a,y,x,b,z){var ee=[y-E,x-a];if(qT(ee,[0,0]))return Math.sqrt((b-E)*(b-E)+(z-a)*(z-a));var re=[-ee[1],ee[0]];XT(re,re);var ae=[b-E,z-a];return Math.abs(JT(ae,re))}function zX(E,a,y,x){return Math.atan2(x-a,y-E)}function $h(E,a,y,x,b){var z=1-b;return z*z*z*E+3*a*b*z*z+3*y*b*b*z+x*b*b*b}function mC(E,a,y,x,b){var z=1-b;return 3*(z*z*(a-E)+2*z*b*(y-a)+b*b*(x-y))}function pC(E,a,y,x){var b=-3*E+9*a-9*y+3*x,z=6*E-12*a+6*y,ee=3*a-3*E,re=[],ae,se,fe;if(X0(b,0))X0(z,0)||(ae=-ee/z,ae>=0&&ae<=1&&re.push(ae));else{var me=z*z-4*b*ee;X0(me,0)?re.push(-z/(2*b)):me>0&&(fe=Math.sqrt(me),ae=(-z+fe)/(2*b),se=(-z-fe)/(2*b),ae>=0&&ae<=1&&re.push(ae),se>=0&&se<=1&&re.push(se))}return re}function XO(E,a,y,x,b,z,ee,re,ae){var se=$h(E,y,b,ee,ae),fe=$h(a,x,z,re,ae),me=uf(E,a,y,x,ae),Ee=uf(y,x,b,z,ae),Oe=uf(b,z,ee,re,ae),ke=uf(me.x,me.y,Ee.x,Ee.y,ae),We=uf(Ee.x,Ee.y,Oe.x,Oe.y,ae);return[[E,a,me.x,me.y,ke.x,ke.y,se,fe],[se,fe,We.x,We.y,Oe.x,Oe.y,ee,re]]}function EE(E,a,y,x,b,z,ee,re,ae){if(ae===0)return QO([E,y,b,ee],[a,x,z,re]);var se=XO(E,a,y,x,b,z,ee,re,.5),fe=[].concat(_toConsumableArray(se[0]),[ae-1]),me=[].concat(_toConsumableArray(se[1]),[ae-1]);return EE.apply(void 0,_toConsumableArray(fe))+EE.apply(void 0,_toConsumableArray(me))}function JO(E,a,y,x,b,z,ee,re){for(var ae=[E,ee],se=[a,re],fe=pC(E,y,b,ee),me=pC(a,x,z,re),Ee=0;Ee1||a<0||E.length<2)return null;var y=EC(E),x=y.segments,b=y.totalLength;if(b===0)return{x:E[0][0],y:E[0][1]};for(var z=0,ee=null,re=0;re=z&&a<=z+me){var Ee=(a-z)/me;ee=uf(se[0],se[1],fe[0],fe[1],Ee);break}z+=me}return ee}function SC(E,a){if(a>1||a<0||E.length<2)return 0;for(var y=EC(E),x=y.segments,b=y.totalLength,z=0,ee=0,re=0;re=z&&a<=z+me){ee=Math.atan2(fe[1]-se[1],fe[0]-se[0]);break}z+=me}return ee}function bC(E,a,y){for(var x=1/0,b=0;b=0?[b]:[]}function tL(E,a,y,x,b,z,ee){var re=q0(E,y,b,ee),ae=q0(a,x,z,ee),se=uf(E,a,y,x,ee),fe=uf(y,x,b,z,ee);return[[E,a,se.x,se.y,re,ae],[re,ae,fe.x,fe.y,b,z]]}function AE(E,a,y,x,b,z,ee){if(ee===0)return(qu(E,a,y,x)+qu(y,x,b,z)+qu(E,a,b,z))/2;var re=tL(E,a,y,x,b,z,.5),ae=re[0],se=re[1];return ae.push(ee-1),se.push(ee-1),AE.apply(void 0,_toConsumableArray(ae))+AE.apply(void 0,_toConsumableArray(se))}function nL(E,a,y,x,b,z){var ee=CC(E,y,b)[0],re=CC(a,x,z)[0],ae=[E,b],se=[a,z];return ee!==void 0&&ae.push(q0(E,y,b,ee)),re!==void 0&&se.push(q0(a,x,z,re)),Cm(ae,se)}function JX(E,a,y,x,b,z){return AE(E,a,y,x,b,z,3)}function rL(E,a,y,x,b,z,ee,re){return hC([E,y,b],[a,x,z],ee,re,q0)}function aL(E,a,y,x,b,z,ee,re){var ae=rL(E,a,y,x,b,z,ee,re);return qu(ae.x,ae.y,ee,re)}var $u=Ie(75044),uh=Ie(3202),iL=Ie(3208);function ch(E,a){var y=typeof Symbol!="undefined"&&E[Symbol.iterator]||E["@@iterator"];if(!y){if(Array.isArray(E)||(y=(0,iL.Z)(E))||a&&E&&typeof E.length=="number"){y&&(E=y);var x=0,b=function(){};return{s:b,n:function(){return x>=E.length?{done:!0}:{done:!1,value:E[x++]}},e:function(se){throw se},f:b}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var z,ee=!0,re=!1;return{s:function(){y=y.call(E)},n:function(){var se=y.next();return ee=se.done,se},e:function(se){re=!0,z=se},f:function(){try{ee||y.return==null||y.return()}finally{if(re)throw z}}}}var eg=Ie(75931);var ga=function(E){return E.GROUP="g",E.FRAGMENT="fragment",E.CIRCLE="circle",E.ELLIPSE="ellipse",E.IMAGE="image",E.RECT="rect",E.LINE="line",E.POLYLINE="polyline",E.POLYGON="polygon",E.TEXT="text",E.PATH="path",E.HTML="html",E.MESH="mesh",E}({}),wm=function(E){return E[E.ZERO=0]="ZERO",E[E.NEGATIVE_ONE=1]="NEGATIVE_ONE",E}({}),dh=function(){function E(){(0,gn.Z)(this,E),this.plugins=[]}return(0,cn.Z)(E,[{key:"addRenderingPlugin",value:function(y){this.plugins.push(y),this.context.renderingPlugins.push(y)}},{key:"removeAllRenderingPlugins",value:function(){var y=this;this.plugins.forEach(function(x){var b=y.context.renderingPlugins.indexOf(x);b>=0&&y.context.renderingPlugins.splice(b,1)})}}])}(),oL=function(){function E(a){(0,gn.Z)(this,E),this.clipSpaceNearZ=wm.NEGATIVE_ONE,this.plugins=[],this.config=(0,hn.Z)({enableDirtyCheck:!0,enableCulling:!1,enableAutoRendering:!0,enableDirtyRectangleRendering:!0,enableDirtyRectangleRenderingDebug:!1,enableSizeAttenuation:!0,enableRenderingOptimization:!1},a)}return(0,cn.Z)(E,[{key:"registerPlugin",value:function(y){var x=this.plugins.findIndex(function(b){return b===y});x===-1&&this.plugins.push(y)}},{key:"unregisterPlugin",value:function(y){var x=this.plugins.findIndex(function(b){return b===y});x>-1&&this.plugins.splice(x,1)}},{key:"getPlugins",value:function(){return this.plugins}},{key:"getPlugin",value:function(y){return this.plugins.find(function(x){return x.name===y})}},{key:"getConfig",value:function(){return this.config}},{key:"setConfig",value:function(y){Object.assign(this.config,y)}}])}(),xE=$o,a0=Zi,sL=ud,lL=Ec,PC=Fu,SE=nh,pl=function(){function E(){(0,gn.Z)(this,E),this.center=[0,0,0],this.halfExtents=[0,0,0],this.min=[0,0,0],this.max=[0,0,0]}return(0,cn.Z)(E,[{key:"update",value:function(y,x){a0(this.center,y),a0(this.halfExtents,x),SE(this.min,this.center,this.halfExtents),xE(this.max,this.center,this.halfExtents)}},{key:"setMinMax",value:function(y,x){xE(this.center,x,y),PC(this.center,this.center,.5),SE(this.halfExtents,x,y),PC(this.halfExtents,this.halfExtents,.5),a0(this.min,y),a0(this.max,x)}},{key:"getMin",value:function(){return this.min}},{key:"getMax",value:function(){return this.max}},{key:"add",value:function(y){if(!E.isEmpty(y)){if(E.isEmpty(this)){this.setMinMax(y.getMin(),y.getMax());return}var x=this.center,b=x[0],z=x[1],ee=x[2],re=this.halfExtents,ae=re[0],se=re[1],fe=re[2],me=b-ae,Ee=b+ae,Oe=z-se,ke=z+se,We=ee-fe,je=ee+fe,Ke=y.center,Ze=Ke[0],Je=Ke[1],tt=Ke[2],st=y.halfExtents,gt=st[0],mt=st[1],ct=st[2],Lt=Ze-gt,_t=Ze+gt,Yt=Je-mt,$t=Je+mt,En=tt-ct,on=tt+ct;LtEe&&(Ee=_t),Ytke&&(ke=$t),Enje&&(je=on),x[0]=(me+Ee)*.5,x[1]=(Oe+ke)*.5,x[2]=(We+je)*.5,re[0]=(Ee-me)*.5,re[1]=(ke-Oe)*.5,re[2]=(je-We)*.5,this.min[0]=me,this.min[1]=Oe,this.min[2]=We,this.max[0]=Ee,this.max[1]=ke,this.max[2]=je}}},{key:"setFromTransformedAABB",value:function(y,x){var b=this.center,z=this.halfExtents,ee=y.center,re=y.halfExtents,ae=x[0],se=x[4],fe=x[8],me=x[1],Ee=x[5],Oe=x[9],ke=x[2],We=x[6],je=x[10],Ke=Math.abs(ae),Ze=Math.abs(se),Je=Math.abs(fe),tt=Math.abs(me),st=Math.abs(Ee),gt=Math.abs(Oe),mt=Math.abs(ke),ct=Math.abs(We),Lt=Math.abs(je);b[0]=x[12]+ae*ee[0]+se*ee[1]+fe*ee[2],b[1]=x[13]+me*ee[0]+Ee*ee[1]+Oe*ee[2],b[2]=x[14]+ke*ee[0]+We*ee[1]+je*ee[2],z[0]=Ke*re[0]+Ze*re[1]+Je*re[2],z[1]=tt*re[0]+st*re[1]+gt*re[2],z[2]=mt*re[0]+ct*re[1]+Lt*re[2],SE(this.min,b,z),xE(this.max,b,z)}},{key:"intersects",value:function(y){var x=this.getMax(),b=this.getMin(),z=y.getMax(),ee=y.getMin();return b[0]<=z[0]&&x[0]>=ee[0]&&b[1]<=z[1]&&x[1]>=ee[1]&&b[2]<=z[2]&&x[2]>=ee[2]}},{key:"intersection",value:function(y){if(!this.intersects(y))return null;var x=new E,b=sL([0,0,0],this.getMin(),y.getMin()),z=lL([0,0,0],this.getMax(),y.getMax());return x.setMinMax(b,z),x}},{key:"getNegativeFarPoint",value:function(y){return y.pnVertexFlag===273?a0([0,0,0],this.min):y.pnVertexFlag===272?[this.min[0],this.min[1],this.max[2]]:y.pnVertexFlag===257?[this.min[0],this.max[1],this.min[2]]:y.pnVertexFlag===256?[this.min[0],this.max[1],this.max[2]]:y.pnVertexFlag===17?[this.max[0],this.min[1],this.min[2]]:y.pnVertexFlag===16?[this.max[0],this.min[1],this.max[2]]:y.pnVertexFlag===1?[this.max[0],this.max[1],this.min[2]]:[this.max[0],this.max[1],this.max[2]]}},{key:"getPositiveFarPoint",value:function(y){return y.pnVertexFlag===273?a0([0,0,0],this.max):y.pnVertexFlag===272?[this.max[0],this.max[1],this.min[2]]:y.pnVertexFlag===257?[this.max[0],this.min[1],this.max[2]]:y.pnVertexFlag===256?[this.max[0],this.min[1],this.min[2]]:y.pnVertexFlag===17?[this.min[0],this.max[1],this.max[2]]:y.pnVertexFlag===16?[this.min[0],this.max[1],this.min[2]]:y.pnVertexFlag===1?[this.min[0],this.min[1],this.max[2]]:[this.min[0],this.min[1],this.min[2]]}}],[{key:"isEmpty",value:function(y){return!y||y.halfExtents[0]===0&&y.halfExtents[1]===0&&y.halfExtents[2]===0}}])}(),uL=function(){function E(a,y){(0,gn.Z)(this,E),this.distance=a||0,this.normal=y||_r(0,1,0),this.updatePNVertexFlag()}return(0,cn.Z)(E,[{key:"updatePNVertexFlag",value:function(){this.pnVertexFlag=(+(this.normal[0]>=0)<<8)+(+(this.normal[1]>=0)<<4)+ +(this.normal[2]>=0)}},{key:"distanceToPoint",value:function(y){return Xs(y,this.normal)-this.distance}},{key:"normalize",value:function(){var y=1/Hh(this.normal);Fu(this.normal,this.normal,y),this.distance*=y}},{key:"intersectsLine",value:function(y,x,b){var z=this.distanceToPoint(y),ee=this.distanceToPoint(x),re=z/(z-ee),ae=re>=0&&re<=1;return ae&&b&&Xu(b,y,x,re),ae}}])}(),i0=function(E){return E[E.OUTSIDE=4294967295]="OUTSIDE",E[E.INSIDE=0]="INSIDE",E[E.INDETERMINATE=2147483647]="INDETERMINATE",E}({}),cL=function(){function E(a){if((0,gn.Z)(this,E),this.planes=[],a)this.planes=a;else for(var y=0;y<6;y++)this.planes.push(new uL)}return(0,cn.Z)(E,[{key:"extractFromVPMatrix",value:function(y){var x=(0,ia.Z)(y,16),b=x[0],z=x[1],ee=x[2],re=x[3],ae=x[4],se=x[5],fe=x[6],me=x[7],Ee=x[8],Oe=x[9],ke=x[10],We=x[11],je=x[12],Ke=x[13],Ze=x[14],Je=x[15];qi(this.planes[0].normal,re-b,me-ae,We-Ee),this.planes[0].distance=Je-je,qi(this.planes[1].normal,re+b,me+ae,We+Ee),this.planes[1].distance=Je+je,qi(this.planes[2].normal,re+z,me+se,We+Oe),this.planes[2].distance=Je+Ke,qi(this.planes[3].normal,re-z,me-se,We-Oe),this.planes[3].distance=Je-Ke,qi(this.planes[4].normal,re-ee,me-fe,We-ke),this.planes[4].distance=Je-Ze,qi(this.planes[5].normal,re+ee,me+fe,We+ke),this.planes[5].distance=Je+Ze,this.planes.forEach(function(tt){tt.normalize(),tt.updatePNVertexFlag()})}}])}(),_u=function(){function E(){var a=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0,y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;(0,gn.Z)(this,E),this.x=0,this.y=0,this.x=a,this.y=y}return(0,cn.Z)(E,[{key:"clone",value:function(){return new E(this.x,this.y)}},{key:"copyFrom",value:function(y){this.x=y.x,this.y=y.y}}])}(),o0=function(){function E(a,y,x,b){(0,gn.Z)(this,E),this.x=a,this.y=y,this.width=x,this.height=b,this.left=a,this.right=a+x,this.top=y,this.bottom=y+b}return(0,cn.Z)(E,[{key:"toJSON",value:function(){}}],[{key:"fromRect",value:function(y){return new E(y.x,y.y,y.width,y.height)}},{key:"applyTransform",value:function(y,x){var b=of(y.x,y.y,0,1),z=of(y.x+y.width,y.y,0,1),ee=of(y.x,y.y+y.height,0,1),re=of(y.x+y.width,y.y+y.height,0,1),ae=Ju(),se=Ju(),fe=Ju(),me=Ju();Md(ae,b,x),Md(se,z,x),Md(fe,ee,x),Md(me,re,x);var Ee=Math.min(ae[0],se[0],fe[0],me[0]),Oe=Math.min(ae[1],se[1],fe[1],me[1]),ke=Math.max(ae[0],se[0],fe[0],me[0]),We=Math.max(ae[1],se[1],fe[1],me[1]);return E.fromRect({x:Ee,y:Oe,width:ke-Ee,height:We-Oe})}}])}(),ll="Method not implemented.",s0="Use document.documentElement instead.",dL="Cannot append a destroyed element.";function l0(E){return E===void 0?0:E>360||E<-360?E%360:E}var bE=na();function oc(E){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,y=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,x=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0;return Array.isArray(E)&&E.length===3?x?vi(E):Zi(bE,E):Wi(E)?x?_r(E,a,y):qi(bE,E,a,y):x?_r(E[0],E[1]||a,E[2]||y):qi(bE,E[0],E[1]||a,E[2]||y)}var fL=Math.PI/180;function ul(E){return E*fL}var hL=180/Math.PI;function Pc(E){return E*hL}var gL=.9;function qX(E){return E%=400,E<0&&(E+=400),E*gL}function $X(E){return E/360}function vL(E){return 360*E}var Mm=Math.PI/2;function mL(E,a){var y=a[0],x=a[1],b=a[2],z=a[3],ee=y*y,re=x*x,ae=b*b,se=z*z,fe=ee+re+ae+se,me=y*z-x*b;return me>.499995*fe?(E[0]=Mm,E[1]=2*Math.atan2(x,y),E[2]=0):me<-.499995*fe?(E[0]=-Mm,E[1]=2*Math.atan2(x,y),E[2]=0):(E[0]=Math.asin(2*(y*b-z*x)),E[1]=Math.atan2(2*(y*z+x*b),1-2*(ae+se)),E[2]=Math.atan2(2*(y*x+b*z),1-2*(re+ae))),E}function pL(E,a){var y,x,b=n0(na(),a),z=(0,ia.Z)(b,3),ee=z[0],re=z[1],ae=z[2],se=Math.asin(-a[2]/ee);return se-Mm?(y=Math.atan2(a[6]/re,a[10]/ae),x=Math.atan2(a[1]/ee,a[0]/ee)):(x=0,y=-Math.atan2(a[4]/re,a[5]/re)):(x=0,y=Math.atan2(a[4]/re,a[5]/re)),E[0]=y,E[1]=se,E[2]=x,E}function CE(E,a){return a.length===16?pL(E,a):mL(E,a)}function yL(E,a,y,x,b){var z=Math.cos(E),ee=Math.sin(E);return WT(x*z,b*ee,0,-x*ee,b*z,0,a,y,1)}function EL(E,a,y,x,b,z,ee){var re=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!1,ae=2*z,se=y-a,fe=x-b,me=ae/se,Ee=ae/fe,Oe=(y+a)/se,ke=(x+b)/fe,We,je,Ke=ee-z,Ze=ee*z;return re?(We=-ee/Ke,je=-Ze/Ke):(We=-(ee+z)/Ke,je=-2*Ze/Ke),E[0]=me,E[1]=0,E[2]=0,E[3]=0,E[4]=0,E[5]=Ee,E[6]=0,E[7]=0,E[8]=Oe,E[9]=ke,E[10]=We,E[11]=-1,E[12]=0,E[13]=0,E[14]=je,E[15]=0,E}function wC(E){var a=E[0],y=E[1],x=E[3],b=E[4],z=Math.sqrt(a*a+y*y),ee=Math.sqrt(x*x+b*b),re=a*b-y*x;if(re<0&&(a_o[1][2]&&(z[0]=-z[0]),_o[0][2]>_o[2][0]&&(z[1]=-z[1]),_o[1][0]>_o[0][1]&&(z[2]=-z[2]),!0}function xL(E,a){var y=a[15];if(y===0)return!1;for(var x=1/y,b=0;b<16;b++)E[b]=a[b]*x;return!0}function SL(E,a){E[0][0]=a[0],E[0][1]=a[1],E[0][2]=a[2],E[1][0]=a[4],E[1][1]=a[5],E[1][2]=a[6],E[2][0]=a[8],E[2][1]=a[9],E[2][2]=a[10]}function PE(E,a,y,x,b){E[0]=a[0]*x+y[0]*b,E[1]=a[1]*x+y[1]*b,E[2]=a[2]*x+y[2]*b}var cl=function(E){return E[E.ORBITING=0]="ORBITING",E[E.EXPLORING=1]="EXPLORING",E[E.TRACKING=2]="TRACKING",E}({}),wE=function(E){return E[E.DEFAULT=0]="DEFAULT",E[E.ROTATIONAL=1]="ROTATIONAL",E[E.TRANSLATIONAL=2]="TRANSLATIONAL",E[E.CINEMATIC=3]="CINEMATIC",E}({}),fd=function(E){return E[E.ORTHOGRAPHIC=0]="ORTHOGRAPHIC",E[E.PERSPECTIVE=1]="PERSPECTIVE",E}({}),DC={UPDATED:"updated"},IC=2e-4,TC=function(){function E(){(0,gn.Z)(this,E),this.clipSpaceNearZ=wm.NEGATIVE_ONE,this.eventEmitter=new Xa,this.matrix=ol(),this.right=_r(1,0,0),this.up=_r(0,1,0),this.forward=_r(0,0,1),this.position=_r(0,0,1),this.focalPoint=_r(0,0,0),this.distanceVector=_r(0,0,-1),this.distance=1,this.azimuth=0,this.elevation=0,this.roll=0,this.relAzimuth=0,this.relElevation=0,this.relRoll=0,this.dollyingStep=0,this.maxDistance=1/0,this.minDistance=-1/0,this.zoom=1,this.rotateWorld=!1,this.fov=30,this.near=.1,this.far=1e3,this.aspect=1,this.projectionMatrix=ol(),this.projectionMatrixInverse=ol(),this.jitteredProjectionMatrix=void 0,this.enableUpdate=!0,this.type=cl.EXPLORING,this.trackingMode=wE.DEFAULT,this.projectionMode=fd.PERSPECTIVE,this.frustum=new cL,this.orthoMatrix=ol()}return(0,cn.Z)(E,[{key:"isOrtho",value:function(){return this.projectionMode===fd.ORTHOGRAPHIC}},{key:"getProjectionMode",value:function(){return this.projectionMode}},{key:"getPerspective",value:function(){return this.jitteredProjectionMatrix||this.projectionMatrix}},{key:"getPerspectiveInverse",value:function(){return this.projectionMatrixInverse}},{key:"getFrustum",value:function(){return this.frustum}},{key:"getPosition",value:function(){return this.position}},{key:"getFocalPoint",value:function(){return this.focalPoint}},{key:"getDollyingStep",value:function(){return this.dollyingStep}},{key:"getNear",value:function(){return this.near}},{key:"getFar",value:function(){return this.far}},{key:"getZoom",value:function(){return this.zoom}},{key:"getOrthoMatrix",value:function(){return this.orthoMatrix}},{key:"getView",value:function(){return this.view}},{key:"setEnableUpdate",value:function(y){this.enableUpdate=y}},{key:"setType",value:function(y,x){return this.type=y,this.type===cl.EXPLORING?this.setWorldRotation(!0):this.setWorldRotation(!1),this._getAngles(),this.type===cl.TRACKING&&x!==void 0&&this.setTrackingMode(x),this}},{key:"setProjectionMode",value:function(y){return this.projectionMode=y,this}},{key:"setTrackingMode",value:function(y){if(this.type!==cl.TRACKING)throw new Error("Impossible to set a tracking mode if the camera is not of tracking type");return this.trackingMode=y,this}},{key:"setWorldRotation",value:function(y){return this.rotateWorld=y,this._getAngles(),this}},{key:"getViewTransform",value:function(){return Gl(ol(),this.matrix)}},{key:"getWorldTransform",value:function(){return this.matrix}},{key:"jitterProjectionMatrix",value:function(y,x){var b=ih(ol(),[y,x,0]);this.jitteredProjectionMatrix=Hl(ol(),b,this.projectionMatrix)}},{key:"clearJitterProjectionMatrix",value:function(){this.jitteredProjectionMatrix=void 0}},{key:"setMatrix",value:function(y){return this.matrix=y,this._update(),this}},{key:"setProjectionMatrix",value:function(y){this.projectionMatrix=y}},{key:"setFov",value:function(y){return this.setPerspective(this.near,this.far,y,this.aspect),this}},{key:"setAspect",value:function(y){return this.setPerspective(this.near,this.far,this.fov,y),this}},{key:"setNear",value:function(y){return this.projectionMode===fd.PERSPECTIVE?this.setPerspective(y,this.far,this.fov,this.aspect):this.setOrthographic(this.left,this.rright,this.top,this.bottom,y,this.far),this}},{key:"setFar",value:function(y){return this.projectionMode===fd.PERSPECTIVE?this.setPerspective(this.near,y,this.fov,this.aspect):this.setOrthographic(this.left,this.rright,this.top,this.bottom,this.near,y),this}},{key:"setViewOffset",value:function(y,x,b,z,ee,re){return this.aspect=y/x,this.view===void 0&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=y,this.view.fullHeight=x,this.view.offsetX=b,this.view.offsetY=z,this.view.width=ee,this.view.height=re,this.projectionMode===fd.PERSPECTIVE?this.setPerspective(this.near,this.far,this.fov,this.aspect):this.setOrthographic(this.left,this.rright,this.top,this.bottom,this.near,this.far),this}},{key:"clearViewOffset",value:function(){return this.view!==void 0&&(this.view.enabled=!1),this.projectionMode===fd.PERSPECTIVE?this.setPerspective(this.near,this.far,this.fov,this.aspect):this.setOrthographic(this.left,this.rright,this.top,this.bottom,this.near,this.far),this}},{key:"setZoom",value:function(y){return this.zoom=y,this.projectionMode===fd.ORTHOGRAPHIC?this.setOrthographic(this.left,this.rright,this.top,this.bottom,this.near,this.far):this.projectionMode===fd.PERSPECTIVE&&this.setPerspective(this.near,this.far,this.fov,this.aspect),this}},{key:"setZoomByViewportPoint",value:function(y,x){var b=this.canvas.viewport2Canvas({x:x[0],y:x[1]}),z=b.x,ee=b.y,re=this.roll;this.rotate(0,0,-re),this.setPosition(z,ee),this.setFocalPoint(z,ee),this.setZoom(y),this.rotate(0,0,re);var ae=this.canvas.viewport2Canvas({x:x[0],y:x[1]}),se=ae.x,fe=ae.y,me=_r(se-z,fe-ee,0),Ee=Xs(me,this.right)/mi(this.right),Oe=Xs(me,this.up)/mi(this.up),ke=this.getPosition(),We=(0,ia.Z)(ke,2),je=We[0],Ke=We[1],Ze=this.getFocalPoint(),Je=(0,ia.Z)(Ze,2),tt=Je[0],st=Je[1];return this.setPosition(je-Ee,Ke-Oe),this.setFocalPoint(tt-Ee,st-Oe),this}},{key:"setPerspective",value:function(y,x,b,z){var ee;this.projectionMode=fd.PERSPECTIVE,this.fov=b,this.near=y,this.far=x,this.aspect=z;var re=this.near*Math.tan(ul(.5*this.fov))/this.zoom,ae=2*re,se=this.aspect*ae,fe=-.5*se;if((ee=this.view)!==null&&ee!==void 0&&ee.enabled){var me=this.view.fullWidth,Ee=this.view.fullHeight;fe+=this.view.offsetX*se/me,re-=this.view.offsetY*ae/Ee,se*=this.view.width/me,ae*=this.view.height/Ee}return EL(this.projectionMatrix,fe,fe+se,re-ae,re,y,this.far,this.clipSpaceNearZ===wm.ZERO),Gl(this.projectionMatrixInverse,this.projectionMatrix),this.triggerUpdate(),this}},{key:"setOrthographic",value:function(y,x,b,z,ee,re){var ae;this.projectionMode=fd.ORTHOGRAPHIC,this.rright=x,this.left=y,this.top=b,this.bottom=z,this.near=ee,this.far=re;var se=(this.rright-this.left)/(2*this.zoom),fe=(this.top-this.bottom)/(2*this.zoom),me=(this.rright+this.left)/2,Ee=(this.top+this.bottom)/2,Oe=me-se,ke=me+se,We=Ee+fe,je=Ee-fe;if((ae=this.view)!==null&&ae!==void 0&&ae.enabled){var Ke=(this.rright-this.left)/this.view.fullWidth/this.zoom,Ze=(this.top-this.bottom)/this.view.fullHeight/this.zoom;Oe+=Ke*this.view.offsetX,ke=Oe+Ke*this.view.width,We-=Ze*this.view.offsetY,je=We-Ze*this.view.height}return this.clipSpaceNearZ===wm.NEGATIVE_ONE?Nb(this.projectionMatrix,Oe,ke,We,je,ee,re):Rb(this.projectionMatrix,Oe,ke,We,je,ee,re),Gl(this.projectionMatrixInverse,this.projectionMatrix),this._getOrthoMatrix(),this.triggerUpdate(),this}},{key:"setPosition",value:function(y){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.position[1],b=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.position[2],z=oc(y,x,b);return this._setPosition(z),this.setFocalPoint(this.focalPoint),this.triggerUpdate(),this}},{key:"setFocalPoint",value:function(y){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.focalPoint[1],b=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.focalPoint[2],z=_r(0,1,0);if(this.focalPoint=oc(y,x,b),this.trackingMode===wE.CINEMATIC){var ee=cs(na(),this.focalPoint,this.position);y=ee[0],x=ee[1],b=ee[2];var re=mi(ee),ae=Pc(Math.asin(x/re)),se=90+Pc(Math.atan2(b,y)),fe=ol();Sb(fe,fe,ul(se)),$S(fe,fe,ul(ae)),z=ql(na(),[0,1,0],fe)}return Gl(this.matrix,_b(ol(),this.position,this.focalPoint,z)),this._getAxes(),this._getDistance(),this._getAngles(),this.triggerUpdate(),this}},{key:"getDistance",value:function(){return this.distance}},{key:"getDistanceVector",value:function(){return this.distanceVector}},{key:"setDistance",value:function(y){if(this.distance===y||y<0)return this;this.distance=y,this.distance>8&15|a>>4&240,a>>4&15|a&240,(a&15)<<4|a&15,1):y===8?Om(a>>24&255,a>>16&255,a>>8&255,(a&255)/255):y===4?Om(a>>12&15|a>>8&240,a>>8&15|a>>4&240,a>>4&15|a&240,((a&15)<<4|a&15)/255):null):(a=DL.exec(E))?new wc(a[1],a[2],a[3],1):(a=IL.exec(E))?new wc(a[1]*255/100,a[2]*255/100,a[3]*255/100,1):(a=TL.exec(E))?Om(a[1],a[2],a[3],a[4]):(a=OL.exec(E))?Om(a[1]*255/100,a[2]*255/100,a[3]*255/100,a[4]):(a=LL.exec(E))?UC(a[1],a[2]/100,a[3]/100,1):(a=BL.exec(E))?UC(a[1],a[2]/100,a[3]/100,a[4]):NC.hasOwnProperty(E)?kC(NC[E]):E==="transparent"?new wc(NaN,NaN,NaN,0):null}function kC(E){return new wc(E>>16&255,E>>8&255,E&255,1)}function Om(E,a,y,x){return x<=0&&(E=a=y=NaN),new wc(E,a,y,x)}function FL(E){return E instanceof tv||(E=Tm(E)),E?(E=E.rgb(),new wc(E.r,E.g,E.b,E.opacity)):new wc}function kL(E,a,y,x){return arguments.length===1?FL(E):new wc(E,a,y,x==null?1:x)}function wc(E,a,y,x){this.r=+E,this.g=+a,this.b=+y,this.opacity=+x}ME(wc,kL,BC(tv,{brighter(E){return E=E==null?Im:Math.pow(Im,E),new wc(this.r*E,this.g*E,this.b*E,this.opacity)},darker(E){return E=E==null?nv:Math.pow(nv,E),new wc(this.r*E,this.g*E,this.b*E,this.opacity)},rgb(){return this},clamp(){return new wc(tg(this.r),tg(this.g),tg(this.b),Lm(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:_C,formatHex:_C,formatHex8:_L,formatRgb:zC,toString:zC}));function _C(){return`#${ng(this.r)}${ng(this.g)}${ng(this.b)}`}function _L(){return`#${ng(this.r)}${ng(this.g)}${ng(this.b)}${ng((isNaN(this.opacity)?1:this.opacity)*255)}`}function zC(){const E=Lm(this.opacity);return`${E===1?"rgb(":"rgba("}${tg(this.r)}, ${tg(this.g)}, ${tg(this.b)}${E===1?")":`, ${E})`}`}function Lm(E){return isNaN(E)?1:Math.max(0,Math.min(1,E))}function tg(E){return Math.max(0,Math.min(255,Math.round(E)||0))}function ng(E){return E=tg(E),(E<16?"0":"")+E.toString(16)}function UC(E,a,y,x){return x<=0?E=a=y=NaN:y<=0||y>=1?E=a=NaN:a<=0&&(E=NaN),new Td(E,a,y,x)}function WC(E){if(E instanceof Td)return new Td(E.h,E.s,E.l,E.opacity);if(E instanceof tv||(E=Tm(E)),!E)return new Td;if(E instanceof Td)return E;E=E.rgb();var a=E.r/255,y=E.g/255,x=E.b/255,b=Math.min(a,y,x),z=Math.max(a,y,x),ee=NaN,re=z-b,ae=(z+b)/2;return re?(a===z?ee=(y-x)/re+(y0&&ae<1?0:ee,new Td(ee,re,ae,E.opacity)}function zL(E,a,y,x){return arguments.length===1?WC(E):new Td(E,a,y,x==null?1:x)}function Td(E,a,y,x){this.h=+E,this.s=+a,this.l=+y,this.opacity=+x}ME(Td,zL,BC(tv,{brighter(E){return E=E==null?Im:Math.pow(Im,E),new Td(this.h,this.s,this.l*E,this.opacity)},darker(E){return E=E==null?nv:Math.pow(nv,E),new Td(this.h,this.s,this.l*E,this.opacity)},rgb(){var E=this.h%360+(this.h<0)*360,a=isNaN(E)||isNaN(this.s)?0:this.s,y=this.l,x=y+(y<.5?y:1-y)*a,b=2*y-x;return new wc(DE(E>=240?E-240:E+120,b,x),DE(E,b,x),DE(E<120?E+240:E-120,b,x),this.opacity)},clamp(){return new Td(jC(this.h),Bm(this.s),Bm(this.l),Lm(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const E=Lm(this.opacity);return`${E===1?"hsl(":"hsla("}${jC(this.h)}, ${Bm(this.s)*100}%, ${Bm(this.l)*100}%${E===1?")":`, ${E})`}`}}));function jC(E){return E=(E||0)%360,E<0?E+360:E}function Bm(E){return Math.max(0,Math.min(1,E||0))}function DE(E,a,y){return(E<60?a+(y-a)*E/60:E<180?y:E<240?a+(y-a)*(240-E)/60:a)*255}function eu(E,a){if(typeof E!="function"||a!=null&&typeof a!="function")throw new TypeError("Expected a function");var y=function(){for(var b=arguments.length,z=new Array(b),ee=0;ee=c0.kUnitType&&this.getType()<=c0.kClampType}}],[{key:"isAngle",value:function(y){return y===Di.kDegrees||y===Di.kRadians||y===Di.kGradians||y===Di.kTurns}},{key:"isLength",value:function(y){return y>=Di.kEms&&y1&&arguments[1]!==void 0?arguments[1]:"",x="";return Number.isFinite(a)?x="NaN":a>0?x="infinity":x="-infinity",x+=y},TE=function(a){return KL(VL(a))},dl=function(E){function a(y){var x,b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Di.kNumber;(0,gn.Z)(this,a),x=ir(this,a);var z;return typeof b=="string"?z=HL(b):z=b,x.unit=z,x.value=y,x}return(0,xr.Z)(a,E),(0,cn.Z)(a,[{key:"clone",value:function(){return new a(this.value,this.unit)}},{key:"equals",value:function(x){var b=x;return this.value===b.value&&this.unit===b.unit}},{key:"getType",value:function(){return c0.kUnitType}},{key:"convertTo",value:function(x){if(this.unit===x)return new a(this.value,this.unit);var b=TE(this.unit);if(b!==TE(x)||b===Di.kUnknown)return null;var z=GC(this.unit)/GC(x);return new a(this.value*z,x)}},{key:"buildCSSText",value:function(x,b,z){var ee;switch(this.unit){case Di.kUnknown:break;case Di.kInteger:ee=Number(this.value).toFixed(0);break;case Di.kNumber:case Di.kPercentage:case Di.kEms:case Di.kRems:case Di.kPixels:case Di.kDegrees:case Di.kRadians:case Di.kGradians:case Di.kMilliseconds:case Di.kSeconds:case Di.kTurns:{var re=-999999,ae=999999,se=this.value,fe=IE(this.unit);if(seae){var me=IE(this.unit);!Number.isFinite(se)||Number.isNaN(se)?ee=QL(se,me):ee=se+(me||"")}else ee="".concat(se).concat(fe)}}return z+=ee,z}}])}(Nm),Ld=new dl(0,"px");new dl(1,"px");var rg=new dl(0,"deg"),OE=function(E){function a(y,x,b){var z,ee=arguments.length>3&&arguments[3]!==void 0?arguments[3]:1,re=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;return(0,gn.Z)(this,a),z=ir(this,a,["rgb"]),z.r=y,z.g=x,z.b=b,z.alpha=ee,z.isNone=re,z}return(0,xr.Z)(a,E),(0,cn.Z)(a,[{key:"clone",value:function(){return new a(this.r,this.g,this.b,this.alpha)}},{key:"buildCSSText",value:function(x,b,z){return"".concat(z,"rgba(").concat(this.r,",").concat(this.g,",").concat(this.b,",").concat(this.alpha,")")}}])}(ZL),HC=new hd("unset"),YL=new hd("initial"),XL=new hd("inherit"),LE={"":HC,unset:HC,initial:YL,inherit:XL},JL=function(a){return LE[a]||(LE[a]=new hd(a)),LE[a]},VC=new OE(0,0,0,0,!0),KC=new OE(0,0,0,0),qL=eu(function(E,a,y,x){return new OE(E,a,y,x)},function(E,a,y,x){return"rgba(".concat(E,",").concat(a,",").concat(y,",").concat(x,")")}),Cl=function(a){var y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Di.kNumber;return new dl(a,y)};new dl(50,"%");function $L(E){var a=E.type,y=E.value;return a==="hex"?"#".concat(y):a==="literal"?y:a==="rgb"?"rgb(".concat(y.join(","),")"):"rgba(".concat(y.join(","),")")}var eB=function(){var E={linearGradient:/^(linear\-gradient)/i,repeatingLinearGradient:/^(repeating\-linear\-gradient)/i,radialGradient:/^(radial\-gradient)/i,repeatingRadialGradient:/^(repeating\-radial\-gradient)/i,conicGradient:/^(conic\-gradient)/i,sideOrCorner:/^to (left (top|bottom)|right (top|bottom)|top (left|right)|bottom (left|right)|left|right|top|bottom)/i,extentKeywords:/^(closest\-side|closest\-corner|farthest\-side|farthest\-corner|contain|cover)/,positionKeywords:/^(left|center|right|top|bottom)/i,pixelValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))px/,percentageValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))\%/,emValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))em/,angleValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))deg/,startCall:/^\(/,endCall:/^\)/,comma:/^,/,hexColor:/^\#([0-9a-fA-F]+)/,literalColor:/^([a-zA-Z]+)/,rgbColor:/^rgb/i,rgbaColor:/^rgba/i,number:/^(([0-9]*\.[0-9]+)|([0-9]+\.?))/},a="";function y(Cn){throw new Error("".concat(a,": ").concat(Cn))}function x(){var Cn=b();return a.length>0&&y("Invalid input not EOF"),Cn}function b(){return Je(z)}function z(){return ee("linear-gradient",E.linearGradient,ae)||ee("repeating-linear-gradient",E.repeatingLinearGradient,ae)||ee("radial-gradient",E.radialGradient,me)||ee("repeating-radial-gradient",E.repeatingRadialGradient,me)||ee("conic-gradient",E.conicGradient,me)}function ee(Cn,xn,Ln){return re(xn,function(nr){var An=Ln();return An&&(Fn(E.comma)||y("Missing comma before color stops")),{type:Cn,orientation:An,colorStops:Je(tt)}})}function re(Cn,xn){var Ln=Fn(Cn);if(Ln){Fn(E.startCall)||y("Missing (");var nr=xn(Ln);return Fn(E.endCall)||y("Missing )"),nr}}function ae(){return se()||fe()}function se(){return on("directional",E.sideOrCorner,1)}function fe(){return on("angular",E.angleValue,1)}function me(){var Cn,xn=Ee(),Ln;return xn&&(Cn=[],Cn.push(xn),Ln=a,Fn(E.comma)&&(xn=Ee(),xn?Cn.push(xn):a=Ln)),Cn}function Ee(){var Cn=Oe()||ke();if(Cn)Cn.at=je();else{var xn=We();if(xn){Cn=xn;var Ln=je();Ln&&(Cn.at=Ln)}else{var nr=Ke();nr&&(Cn={type:"default-radial",at:nr})}}return Cn}function Oe(){var Cn=on("shape",/^(circle)/i,0);return Cn&&(Cn.style=En()||We()),Cn}function ke(){var Cn=on("shape",/^(ellipse)/i,0);return Cn&&(Cn.style=Yt()||We()),Cn}function We(){return on("extent-keyword",E.extentKeywords,1)}function je(){if(on("position",/^at/,0)){var Cn=Ke();return Cn||y("Missing positioning value"),Cn}}function Ke(){var Cn=Ze();if(Cn.x||Cn.y)return{type:"position",value:Cn}}function Ze(){return{x:Yt(),y:Yt()}}function Je(Cn){var xn=Cn(),Ln=[];if(xn)for(Ln.push(xn);Fn(E.comma);)xn=Cn(),xn?Ln.push(xn):y("One extra comma");return Ln}function tt(){var Cn=st();return Cn||y("Expected color definition"),Cn.length=Yt(),Cn}function st(){return mt()||Lt()||ct()||gt()}function gt(){return on("literal",E.literalColor,0)}function mt(){return on("hex",E.hexColor,1)}function ct(){return re(E.rgbColor,function(){return{type:"rgb",value:Je(_t)}})}function Lt(){return re(E.rgbaColor,function(){return{type:"rgba",value:Je(_t)}})}function _t(){return Fn(E.number)[1]}function Yt(){return on("%",E.percentageValue,1)||$t()||En()}function $t(){return on("position-keyword",E.positionKeywords,1)}function En(){return on("px",E.pixelValue,1)||on("em",E.emValue,1)}function on(Cn,xn,Ln){var nr=Fn(xn);if(nr)return{type:Cn,value:nr[Ln]}}function Fn(Cn){var xn=/^[\n\r\t\s]+/.exec(a);xn&&tr(xn[0].length);var Ln=Cn.exec(a);return Ln&&tr(Ln[0].length),Ln}function tr(Cn){a=a.substring(Cn)}return function(Cn){return a=Cn,x()}}();function tB(E,a,y,x){var b=ul(x.value),z=0,ee=0,re=z+a/2,ae=ee+y/2,se=Math.abs(a*Math.cos(b))+Math.abs(y*Math.sin(b)),fe=E[0]+re-Math.cos(b)*se/2,me=E[1]+ae-Math.sin(b)*se/2,Ee=E[0]+re+Math.cos(b)*se/2,Oe=E[1]+ae+Math.sin(b)*se/2;return{x1:fe,y1:me,x2:Ee,y2:Oe}}function nB(E,a,y,x,b,z){var ee=x.value,re=b.value;x.unit===Di.kPercentage&&(ee=x.value/100*a),b.unit===Di.kPercentage&&(re=b.value/100*y);var ae=Math.max(bc([0,0],[ee,re]),bc([0,y],[ee,re]),bc([a,y],[ee,re]),bc([a,0],[ee,re]));return z&&(z instanceof dl?ae=z.value:z instanceof hd&&(z.value==="closest-side"?ae=Math.min(ee,a-ee,re,y-re):z.value==="farthest-side"?ae=Math.max(ee,a-ee,re,y-re):z.value==="closest-corner"&&(ae=Math.min(bc([0,0],[ee,re]),bc([0,y],[ee,re]),bc([a,y],[ee,re]),bc([a,0],[ee,re]))))),{x:ee+E[0],y:re+E[1],r:ae}}var rB=/^l\s*\(\s*([\d.]+)\s*\)\s*(.*)/i,aB=/^r\s*\(\s*([\d.]+)\s*,\s*([\d.]+)\s*,\s*([\d.]+)\s*\)\s*(.*)/i,iB=/^p\s*\(\s*([axyn])\s*\)\s*(.*)/i,ZC=/[\d.]+:(#[^\s]+|[^\)]+\))/gi;function oB(E){var a,y=E.length;if(E[y-1].length=(a=E[y-1].length)!==null&&a!==void 0?a:{type:"%",value:"100"},y>1){var x;E[0].length=(x=E[0].length)!==null&&x!==void 0?x:{type:"%",value:"0"}}for(var b=0,z=Number(E[0].length.value),ee=1;ee-1||E.indexOf("radial")>-1){var a=eB(E);return a.map(function(re){var ae=re.type,se=re.orientation,fe=re.colorStops;oB(fe);var me=fe.map(function(Je){return{offset:Cl(Number(Je.length.value),"%"),color:$L(Je)}});if(ae==="linear-gradient")return new Rm(fh.LinearGradient,{angle:se?lB(se):rg,steps:me});if(ae==="radial-gradient"&&(se||(se=[{type:"shape",value:"circle"}]),se[0].type==="shape"&&se[0].value==="circle")){var Ee=uB(se[0].at),Oe=Ee.cx,ke=Ee.cy,We;if(se[0].style){var je=se[0].style,Ke=je.type,Ze=je.value;Ke==="extent-keyword"?We=JL(Ze):We=Cl(Ze,Ke)}return new Rm(fh.RadialGradient,{cx:Oe,cy:ke,size:We,steps:me})}})}var y=E[0];if(E[1]==="("||E[2]==="("){if(y==="l"){var x=rB.exec(E);if(x){var b,z=((b=x[2].match(ZC))===null||b===void 0?void 0:b.map(function(re){return re.split(":")}))||[];return[new Rm(fh.LinearGradient,{angle:Cl(parseFloat(x[1]),"deg"),steps:z.map(function(re){var ae=(0,ia.Z)(re,2),se=ae[0],fe=ae[1];return{offset:Cl(Number(se)*100,"%"),color:fe}})})]}}else if(y==="r"){var ee=dB(E);if(ee)if(Us(ee))E=ee;else return[new Rm(fh.RadialGradient,ee)]}else if(y==="p")return fB(E)}});function dB(E){var a=aB.exec(E);if(a){var y,x=((y=a[4].match(ZC))===null||y===void 0?void 0:y.map(function(b){return b.split(":")}))||[];return{cx:Cl(50,"%"),cy:Cl(50,"%"),steps:x.map(function(b){var z=(0,ia.Z)(b,2),ee=z[0],re=z[1];return{offset:Cl(Number(ee)*100,"%"),color:re}})}}return null}function fB(E){var a=iB.exec(E);if(a){var y=a[1],x=a[2];switch(y){case"a":y="repeat";break;case"x":y="repeat-x";break;case"y":y="repeat-y";break;case"n":y="no-repeat";break;default:y="no-repeat"}return{image:x,repetition:y}}return null}function eJ(E){return!!E.type&&!!E.value}function ag(E){return E&&!!E.image}function Fm(E){return E&&!wo(E.r)&&!wo(E.g)&&!wo(E.b)}var av=eu(function(E){if(ag(E))return(0,hn.Z)({repetition:"repeat"},E);if(wo(E)&&(E=""),E==="transparent")return KC;if(E==="currentColor")E="black";else if(E==="none")return VC;var a=cB(E);if(a)return a;var y=Tm(E),x=[0,0,0,0];return y!==null&&(x[0]=y.r||0,x[1]=y.g||0,x[2]=y.b||0,x[3]=y.opacity),qL.apply(void 0,x)});function hB(E,a){if(!(!Fm(E)||!Fm(a)))return[[Number(E.r),Number(E.g),Number(E.b),Number(E.alpha)],[Number(a.r),Number(a.g),Number(a.b),Number(a.alpha)],function(y){var x=y.slice();if(x[3])for(var b=0;b<3;b++)x[b]=Math.round(Nl(x[b],0,255));return x[3]=Nl(x[3],0,1),"rgba(".concat(x.join(","),")")}]}function iv(E,a){if(wo(a))return Cl(0,"px");if(a="".concat(a).trim().toLowerCase(),isFinite(Number(a))){if("px".search(E)>=0)return Cl(Number(a),"px");if("deg".search(E)>=0)return Cl(Number(a),"deg")}var y=[];a=a.replace(E,function(b){return y.push(b),"U".concat(b)});var x="U(".concat(E.source,")");return y.map(function(b){return Cl(Number(a.replace(new RegExp("U".concat(b),"g"),"").replace(new RegExp(x,"g"),"*0")),b)})[0]}var QC=function(a){return iv(new RegExp("px","g"),a)},gB=eu(QC),vB=function(a){return iv(new RegExp("%","g"),a)};eu(vB);var YC=function(a){return Wi(a)||isFinite(Number(a))?Cl(Number(a)||0,"px"):iv(new RegExp("px|%|em|rem","g"),a)},BE=eu(YC),XC=function(a){return iv(new RegExp("deg|rad|grad|turn","g"),a)},mB=eu(XC);function pB(E,a,y,x){var b=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,z="",ee=E.value||0,re=a.value||0,ae=TE(E.unit),se=E.convertTo(ae),fe=a.convertTo(ae);return se&&fe?(ee=se.value,re=fe.value,z=IE(E.unit)):(dl.isLength(E.unit)||dl.isLength(a.unit))&&(ee=Gc(E,b,y),re=Gc(a,b,y),z="px"),[ee,re,function(me){return x&&(me=Math.max(me,0)),me+z}]}function Mc(E){var a=0;return E.unit===Di.kDegrees?a=E.value:E.unit===Di.kRadians?a=Pc(Number(E.value)):E.unit===Di.kTurns?a=vL(Number(E.value)):E.value&&(a=E.value),a}function JC(E,a){var y;return Array.isArray(E)?y=E.map(function(x){return Number(x)}):Us(E)?y=E.split(" ").map(function(x){return Number(x)}):Wi(E)&&(y=[E]),a===2?y.length===1?[y[0],y[0]]:[y[0],y[1]]:a===4?y.length===1?[y[0],y[0],y[0],y[0]]:y.length===2?[y[0],y[1],y[0],y[1]]:y.length===3?[y[0],y[1],y[2],y[1]]:[y[0],y[1],y[2],y[3]]:a==="even"&&y.length%2===1?[].concat((0,bn.Z)(y),(0,bn.Z)(y)):y}function Gc(E,a,y){var x=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(E.unit===Di.kPixels)return Number(E.value);if(E.unit===Di.kPercentage&&y){var b=y.nodeName===ga.GROUP?y.getLocalBounds():y.getGeometryBounds();return(x?b.min[a]:0)+E.value/100*b.halfExtents[a]*2}return 0}var yB=function(a){return iv(/deg|rad|grad|turn|px|%/g,a)},EB=["blur","brightness","drop-shadow","contrast","grayscale","sepia","saturate","hue-rotate","invert"];function AB(){var E=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"";if(E=E.toLowerCase().trim(),E==="none")return[];for(var a=/\s*([\w-]+)\(([^)]*)\)/g,y=[],x,b=0;x=a.exec(E);){if(x.index!==b)return[];if(b=x.index+x[0].length,EB.indexOf(x[1])>-1&&y.push({name:x[1],params:x[2].split(" ").map(function(z){return yB(z)||av(z)})}),a.lastIndex===E.length)return y}return[]}function qC(E){return E.toString()}var $C=function(a){return typeof a=="number"?Cl(a):/^\s*[-+]?(\d*\.)?\d+\s*$/.test(a)?Cl(Number(a)):Cl(0)},NE=eu($C);eu(function(E){return Us(E)?E.split(" ").map(NE):E.map(NE)});function RE(E,a){return[E,a,qC]}function FE(E,a){return function(y,x){return[y,x,function(b){return qC(Nl(b,E,a))}]}}function eP(E,a){if(E.length===a.length)return[E,a,function(y){return y}]}function kE(E){return E.parsedStyle.d.totalLength===0&&(E.parsedStyle.d.totalLength=mO(E.parsedStyle.d.absolutePath)),E.parsedStyle.d.totalLength}function xB(E){return E.parsedStyle.points.totalLength===0&&(E.parsedStyle.points.totalLength=eL(E.parsedStyle.points.points)),E.parsedStyle.points.totalLength}function SB(E){for(var a=0;a0&&y.push(x),{polygons:a,polylines:y}}function km(E,a){return E[0]===a[0]&&E[1]===a[1]}function PB(E,a){for(var y=[],x=[],b=[],z=0;zMath.PI/2?Math.PI-se:se,fe=fe>Math.PI/2?Math.PI-fe:fe;var me={xExtra:Math.cos(ae/2-se)*(a/2*(1/Math.sin(ae/2)))-a/2||0,yExtra:Math.cos(fe-ae/2)*(a/2*(1/Math.sin(ae/2)))-a/2||0};return me}function tP(E,a){return[a[0]+(a[0]-E[0]),a[1]+(a[1]-E[1])]}var nP=function(a,y){var x=a.x*y.x+a.y*y.y,b=Math.sqrt((Math.pow(a.x,2)+Math.pow(a.y,2))*(Math.pow(y.x,2)+Math.pow(y.y,2))),z=a.x*y.y-a.y*y.x<0?-1:1,ee=z*Math.acos(x/b);return ee},rP=function(a,y,x,b,z,ee,re,ae){y=Math.abs(y),x=Math.abs(x),b=nC(b,360);var se=ul(b);if(a.x===re.x&&a.y===re.y)return{x:a.x,y:a.y,ellipticalArcAngle:0};if(y===0||x===0)return{x:0,y:0,ellipticalArcAngle:0};var fe=(a.x-re.x)/2,me=(a.y-re.y)/2,Ee={x:Math.cos(se)*fe+Math.sin(se)*me,y:-Math.sin(se)*fe+Math.cos(se)*me},Oe=Math.pow(Ee.x,2)/Math.pow(y,2)+Math.pow(Ee.y,2)/Math.pow(x,2);Oe>1&&(y*=Math.sqrt(Oe),x*=Math.sqrt(Oe));var ke=Math.pow(y,2)*Math.pow(x,2)-Math.pow(y,2)*Math.pow(Ee.y,2)-Math.pow(x,2)*Math.pow(Ee.x,2),We=Math.pow(y,2)*Math.pow(Ee.y,2)+Math.pow(x,2)*Math.pow(Ee.x,2),je=ke/We;je=je<0?0:je;var Ke=(z!==ee?1:-1)*Math.sqrt(je),Ze={x:Ke*(y*Ee.y/x),y:Ke*(-(x*Ee.x)/y)},Je={x:Math.cos(se)*Ze.x-Math.sin(se)*Ze.y+(a.x+re.x)/2,y:Math.sin(se)*Ze.x+Math.cos(se)*Ze.y+(a.y+re.y)/2},tt={x:(Ee.x-Ze.x)/y,y:(Ee.y-Ze.y)/x},st=nP({x:1,y:0},tt),gt={x:(-Ee.x-Ze.x)/y,y:(-Ee.y-Ze.y)/x},mt=nP(tt,gt);!ee&&mt>0?mt-=2*Math.PI:ee&&mt<0&&(mt+=2*Math.PI),mt%=2*Math.PI;var ct=st+mt*ae,Lt=y*Math.cos(ct),_t=x*Math.sin(ct),Yt={x:Math.cos(se)*Lt-Math.sin(se)*_t+Je.x,y:Math.sin(se)*Lt+Math.cos(se)*_t+Je.y,ellipticalArcStartAngle:st,ellipticalArcEndAngle:st+mt,ellipticalArcAngle:ct,ellipticalArcCenter:Je,resultantRx:y,resultantRy:x};return Yt};function wB(E){for(var a=[],y=null,x=null,b=null,z=0,ee=E.length,re=0;re2&&arguments[2]!==void 0?arguments[2]:!0,x=E.arcParams,b=x.rx,z=b===void 0?0:b,ee=x.ry,re=ee===void 0?0:ee,ae=x.xRotation,se=x.arcFlag,fe=x.sweepFlag,me=rP({x:E.prePoint[0],y:E.prePoint[1]},z,re,ae,!!se,!!fe,{x:E.currentPoint[0],y:E.currentPoint[1]},a),Ee=rP({x:E.prePoint[0],y:E.prePoint[1]},z,re,ae,!!se,!!fe,{x:E.currentPoint[0],y:E.currentPoint[1]},y?a+.005:a-.005),Oe=Ee.x-me.x,ke=Ee.y-me.y,We=Math.sqrt(Oe*Oe+ke*ke);return{x:-Oe/We,y:-ke/We}}function zm(E){return Math.sqrt(E[0]*E[0]+E[1]*E[1])}function _E(E,a){return zm(E)*zm(a)?(E[0]*a[0]+E[1]*a[1])/(zm(E)*zm(a)):1}function iP(E,a){return(E[0]*a[1]1&&(y*=Math.sqrt(Oe),x*=Math.sqrt(Oe));var ke=y*y*(Ee*Ee)+x*x*(me*me),We=ke?Math.sqrt((y*y*(x*x)-ke)/ke):1;z===ee&&(We*=-1),isNaN(We)&&(We=0);var je=x?We*y*Ee/x:0,Ke=y?We*-x*me/y:0,Ze=(re+se)/2+Math.cos(b)*je-Math.sin(b)*Ke,Je=(ae+fe)/2+Math.sin(b)*je+Math.cos(b)*Ke,tt=[(me-je)/y,(Ee-Ke)/x],st=[(-1*me-je)/y,(-1*Ee-Ke)/x],gt=iP([1,0],tt),mt=iP(tt,st);return _E(tt,st)<=-1&&(mt=Math.PI),_E(tt,st)>=1&&(mt=0),ee===0&&mt>0&&(mt-=2*Math.PI),ee===1&&mt<0&&(mt+=2*Math.PI),{cx:Ze,cy:Je,rx:km(E,[se,fe])?0:y,ry:km(E,[se,fe])?0:x,startAngle:gt,endAngle:gt+mt,xRotation:b,arcFlag:z,sweepFlag:ee}}function DB(E,a,y){return E.reduce(function(x,b){var z="";if(b[0]==="M"||b[0]==="L"){var ee=vec3.fromValues(b[1],b[2],0);y&&vec3.transformMat4(ee,ee,y),z="".concat(b[0]).concat(ee[0],",").concat(ee[1])}else if(b[0]==="Z")z=b[0];else if(b[0]==="C"){var re=vec3.fromValues(b[1],b[2],0),ae=vec3.fromValues(b[3],b[4],0),se=vec3.fromValues(b[5],b[6],0);y&&(vec3.transformMat4(re,re,y),vec3.transformMat4(ae,ae,y),vec3.transformMat4(se,se,y)),z="".concat(b[0]).concat(re[0],",").concat(re[1],",").concat(ae[0],",").concat(ae[1],",").concat(se[0],",").concat(se[1])}else if(b[0]==="A"){var fe=vec3.fromValues(b[6],b[7],0);y&&vec3.transformMat4(fe,fe,y),z="".concat(b[0]).concat(b[1],",").concat(b[2],",").concat(b[3],",").concat(b[4],",").concat(b[5],",").concat(fe[0],",").concat(fe[1])}else if(b[0]==="Q"){var me=vec3.fromValues(b[1],b[2],0),Ee=vec3.fromValues(b[3],b[4],0);y&&(vec3.transformMat4(me,me,y),vec3.transformMat4(Ee,Ee,y)),z="".concat(b[0]).concat(b[1],",").concat(b[2],",").concat(b[3],",").concat(b[4],"}")}return x+=z},"")}function IB(E,a,y,x){return[["M",E,a],["L",y,x]]}function oP(E,a,y,x){var b=(-1+Math.sqrt(2))/3*4,z=E*b,ee=a*b,re=y-E,ae=y+E,se=x-a,fe=x+a;return[["M",re,x],["C",re,x-ee,y-z,se,y,se],["C",y+z,se,ae,x-ee,ae,x],["C",ae,x+ee,y+z,fe,y,fe],["C",y-z,fe,re,x+ee,re,x],["Z"]]}function TB(E,a){var y=E.map(function(x,b){return[b===0?"M":"L",x[0],x[1]]});return a&&y.push(["Z"]),y}function OB(E,a,y,x,b){if(b){var z=_slicedToArray(b,4),ee=z[0],re=z[1],ae=z[2],se=z[3],fe=E>0?1:-1,me=a>0?1:-1,Ee=fe+me!==0?1:0;return[["M",fe*ee+y,x],["L",E-fe*re+y,x],re?["A",re,re,0,0,Ee,E+y,me*re+x]:null,["L",E+y,a-me*ae+x],ae?["A",ae,ae,0,0,Ee,E+y-fe*ae,a+x]:null,["L",y+fe*se,a+x],se?["A",se,se,0,0,Ee,y,a+x-me*se]:null,["L",y,me*ee+x],ee?["A",ee,ee,0,0,Ee,fe*ee+y,x]:null,["Z"]].filter(function(Oe){return Oe})}return[["M",y,x],["L",y+E,x],["L",y+E,x+a],["L",y,x+a],["Z"]]}function tJ(E){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:E.getLocalTransform(),y=[];switch(E.nodeName){case ga.LINE:var x=E.parsedStyle,b=x.x1,z=b===void 0?0:b,ee=x.y1,re=ee===void 0?0:ee,ae=x.x2,se=ae===void 0?0:ae,fe=x.y2,me=fe===void 0?0:fe;y=IB(z,re,se,me);break;case ga.CIRCLE:{var Ee=E.parsedStyle,Oe=Ee.r,ke=Oe===void 0?0:Oe,We=Ee.cx,je=We===void 0?0:We,Ke=Ee.cy,Ze=Ke===void 0?0:Ke;y=oP(ke,ke,je,Ze);break}case ga.ELLIPSE:{var Je=E.parsedStyle,tt=Je.rx,st=tt===void 0?0:tt,gt=Je.ry,mt=gt===void 0?0:gt,ct=Je.cx,Lt=ct===void 0?0:ct,_t=Je.cy,Yt=_t===void 0?0:_t;y=oP(st,mt,Lt,Yt);break}case ga.POLYLINE:case ga.POLYGON:var $t=E.parsedStyle.points;y=TB($t.points,E.nodeName===ga.POLYGON);break;case ga.RECT:var En=E.parsedStyle,on=En.width,Fn=on===void 0?0:on,tr=En.height,Cn=tr===void 0?0:tr,xn=En.x,Ln=xn===void 0?0:xn,nr=En.y,An=nr===void 0?0:nr,fr=En.radius,ra=fr&&fr.some(function(Gr){return Gr!==0});y=OB(Fn,Cn,Ln,An,ra&&fr.map(function(Gr){return clamp(Gr,0,Math.min(Math.abs(Fn)/2,Math.abs(Cn)/2))}));break;case ga.PATH:var aa=E.parsedStyle.d.absolutePath;y=_toConsumableArray(aa);break}if(y.length)return DB(y,E,a)}function nJ(E){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,y=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,x=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,b=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,z=E.map(function(ee,re){var ae=ee[0],se=E[re+1],fe=re===0&&(a!==0||y!==0),me=(re===E.length-1||se&&(se[0]==="M"||se[0]==="Z"))&&x!==0&&b!==0,Ee=fe?[a,y]:[0,0],Oe=_slicedToArray(Ee,2),ke=Oe[0],We=Oe[1],je=me?[x,b]:[0,0],Ke=_slicedToArray(je,2),Ze=Ke[0],Je=Ke[1];switch(ae){case"M":return"M ".concat(ee[1]+ke,",").concat(ee[2]+We);case"L":return"L ".concat(ee[1]+Ze,",").concat(ee[2]+Je);case"Q":return"Q ".concat(ee[1]," ").concat(ee[2],",").concat(ee[3]+Ze," ").concat(ee[4]+Je);case"C":return"C ".concat(ee[1]," ").concat(ee[2],",").concat(ee[3]," ").concat(ee[4],",").concat(ee[5]+Ze," ").concat(ee[6]+Je);case"A":return"A ".concat(ee[1]," ").concat(ee[2]," ").concat(ee[3]," ").concat(ee[4]," ").concat(ee[5]," ").concat(ee[6]," ").concat(ee[7]).concat(me?" L ".concat(ee[6]+x,",").concat(ee[7]+b):"");case"Z":return"Z";default:return null}}).filter(function(ee){return ee!==null}).join(" ");return~z.indexOf("NaN")?"":z}var sP=function(a){if(a===""||Array.isArray(a)&&a.length===0)return{absolutePath:[],hasArc:!1,segments:[],polygons:[],polylines:[],curve:null,totalLength:0,rect:{x:0,y:0,width:0,height:0}};var y;try{y=Am(a)}catch(Oe){y=Am(""),console.error("[g]: Invalid SVG Path definition: ".concat(a))}SB(y);var x=bB(y),b=CB(y),z=b.polygons,ee=b.polylines,re=wB(y),ae=PB(re,0),se=ae.x,fe=ae.y,me=ae.width,Ee=ae.height;return{absolutePath:y,hasArc:x,segments:re,polygons:z,polylines:ee,totalLength:0,rect:{x:Number.isFinite(se)?se:0,y:Number.isFinite(fe)?fe:0,width:Number.isFinite(me)?me:0,height:Number.isFinite(Ee)?Ee:0}}},LB=eu(sP);function lP(E){return Us(E)?LB(E):sP(E)}function BB(E,a,y){var x=E.curve,b=a.curve;(!x||x.length===0)&&(x=pE(E.absolutePath,!1),E.curve=x),(!b||b.length===0)&&(b=pE(a.absolutePath,!1),a.curve=b);var z=[x,b];x.length!==b.length&&(z=iC(x,b));var ee=oC(z[0])!==oC(z[1])?MO(z[0]):DO(z[0]);return[ee,TO(z[1],ee),function(re){return re}]}function NB(E,a){var y;return Us(E)?y=E.split(" ").map(function(x){var b=x.split(","),z=(0,ia.Z)(b,2),ee=z[0],re=z[1];return[Number(ee),Number(re)]}):y=E,{points:y,totalLength:0,segments:[]}}function RB(E,a){return[E.points,a.points,function(y){return y}]}var Rl=null,d0=/\s*(\w+)\(([^)]*)\)/g;function Dc(E){return function(a){var y=0;return E.map(function(x){return x===Rl?a[y++]:x})}}function ig(E){return E}var ov={matrix:["NNNNNN",[Rl,Rl,0,0,Rl,Rl,0,0,0,0,1,0,Rl,Rl,0,1],ig],matrix3d:["NNNNNNNNNNNNNNNN",ig],rotate:["A"],rotateX:["A"],rotateY:["A"],rotateZ:["A"],rotate3d:["NNNA"],perspective:["L"],scale:["Nn",Dc([Rl,Rl,new dl(1)]),ig],scaleX:["N",Dc([Rl,new dl(1),new dl(1)]),Dc([Rl,new dl(1)])],scaleY:["N",Dc([new dl(1),Rl,new dl(1)]),Dc([new dl(1),Rl])],scaleZ:["N",Dc([new dl(1),new dl(1),Rl])],scale3d:["NNN",ig],skew:["Aa",null,ig],skewX:["A",null,Dc([Rl,rg])],skewY:["A",null,Dc([rg,Rl])],translate:["Tt",Dc([Rl,Rl,Ld]),ig],translateX:["T",Dc([Rl,Ld,Ld]),Dc([Rl,Ld])],translateY:["T",Dc([Ld,Rl,Ld]),Dc([Ld,Rl])],translateZ:["L",Dc([Ld,Ld,Rl])],translate3d:["TTL",ig]};function uP(E){for(var a=[],y=E.length,x=0;x2&&arguments[2]!==void 0?arguments[2]:{skipUpdateAttribute:!1,skipParse:!1,forceUpdateGeometry:!1,usedAttributes:[],memoize:!0};Object.assign(y.attributes,x);var z=y.parsedStyle.clipPath,ee=y.parsedStyle.offsetPath;YB(y,x);var re=!!b.forceUpdateGeometry;if(!re){for(var ae in x)if(ZB.has(ae)){re=!0;break}}var se=gP(y);se.has("fill")&&x.fill&&(y.parsedStyle.fill=av(x.fill)),se.has("stroke")&&x.stroke&&(y.parsedStyle.stroke=av(x.stroke)),se.has("shadowColor")&&x.shadowColor&&(y.parsedStyle.shadowColor=av(x.shadowColor)),se.has("filter")&&x.filter&&(y.parsedStyle.filter=AB(x.filter)),se.has("radius")&&!wo(x.radius)&&(y.parsedStyle.radius=JC(x.radius,4)),se.has("lineDash")&&!wo(x.lineDash)&&(y.parsedStyle.lineDash=JC(x.lineDash,"even")),se.has("points")&&x.points&&(y.parsedStyle.points=NB(x.points)),se.has("d")&&x.d===""&&(y.parsedStyle.d=(0,hn.Z)({},LC)),se.has("d")&&x.d&&(y.parsedStyle.d=lP(x.d)),se.has("textTransform")&&x.textTransform&&this.runtime.CSSPropertySyntaxFactory[Pi.TEXT_TRANSFORM].calculator(null,null,{value:x.textTransform},y,null),se.has("clipPath")&&!jo(x.clipPath)&&this.runtime.CSSPropertySyntaxFactory[Pi.DEFINED_PATH].calculator("clipPath",z,x.clipPath,y,this.runtime),se.has("offsetPath")&&x.offsetPath&&this.runtime.CSSPropertySyntaxFactory[Pi.DEFINED_PATH].calculator("offsetPath",ee,x.offsetPath,y,this.runtime),se.has("transform")&&x.transform&&(y.parsedStyle.transform=cP(x.transform)),se.has("transformOrigin")&&x.transformOrigin&&(y.parsedStyle.transformOrigin=KB(x.transformOrigin)),se.has("markerStart")&&x.markerStart&&(y.parsedStyle.markerStart=this.runtime.CSSPropertySyntaxFactory[Pi.MARKER].calculator(null,x.markerStart,x.markerStart,null,null)),se.has("markerEnd")&&x.markerEnd&&(y.parsedStyle.markerEnd=this.runtime.CSSPropertySyntaxFactory[Pi.MARKER].calculator(null,x.markerEnd,x.markerEnd,null,null)),se.has("markerMid")&&x.markerMid&&(y.parsedStyle.markerMid=this.runtime.CSSPropertySyntaxFactory[Pi.MARKER].calculator("",x.markerMid,x.markerMid,null,null)),se.has("zIndex")&&!wo(x.zIndex)&&this.runtime.CSSPropertySyntaxFactory[Pi.Z_INDEX].postProcessor(y),se.has("offsetDistance")&&!wo(x.offsetDistance)&&this.runtime.CSSPropertySyntaxFactory[Pi.OFFSET_DISTANCE].postProcessor(y),se.has("transform")&&x.transform&&this.runtime.CSSPropertySyntaxFactory[Pi.TRANSFORM].postProcessor(y),se.has("transformOrigin")&&x.transformOrigin&&this.runtime.CSSPropertySyntaxFactory[Pi.TRANSFORM_ORIGIN].postProcessor(y),re&&(y.dirty(!0,!0),b.forceUpdateGeometry||this.runtime.sceneGraphService.dirtyToRoot(y))}},{key:"updateGeometry",value:function(y){var x=y.nodeName,b=this.runtime.geometryUpdaterFactory[x];if(b){var z=y.geometry;z.contentBounds||(z.contentBounds=new pl),z.renderBounds||(z.renderBounds=new pl);var ee=y.parsedStyle,re=b.update(ee,y),ae=re.cx,se=ae===void 0?0:ae,fe=re.cy,me=fe===void 0?0:fe,Ee=re.cz,Oe=Ee===void 0?0:Ee,ke=re.hwidth,We=ke===void 0?0:ke,je=re.hheight,Ke=je===void 0?0:je,Ze=re.hdepth,Je=Ze===void 0?0:Ze,tt=[Math.abs(We),Math.abs(Ke),Je],st=ee.stroke,gt=ee.lineWidth,mt=gt===void 0?1:gt,ct=ee.increasedLineWidthForHitTesting,Lt=ct===void 0?0:ct,_t=ee.shadowType,Yt=_t===void 0?"outer":_t,$t=ee.shadowColor,En=ee.filter,on=En===void 0?[]:En,Fn=ee.transformOrigin,tr=[se,me,Oe];z.contentBounds.update(tr,tt);var Cn=x===ga.POLYLINE||x===ga.POLYGON||x===ga.PATH?Math.SQRT2:.5,xn=st&&!st.isNone;if(xn){var Ln=((mt||0)+(Lt||0))*Cn;tt[0]+=Ln,tt[1]+=Ln}if(z.renderBounds.update(tr,tt),$t&&Yt&&Yt!=="inner"){var nr=z.renderBounds,An=nr.min,fr=nr.max,ra=ee.shadowBlur,aa=ee.shadowOffsetX,Gr=ee.shadowOffsetY,Sr=ra||0,Kr=aa||0,pa=Gr||0,Ua=An[0]-Sr+Kr,ei=fr[0]+Sr+Kr,Co=An[1]-Sr+pa,Eo=fr[1]+Sr+pa;An[0]=Math.min(An[0],Ua),fr[0]=Math.max(fr[0],ei),An[1]=Math.min(An[1],Co),fr[1]=Math.max(fr[1],Eo),z.renderBounds.setMinMax(An,fr)}on.forEach(function(Ao){var ss=Ao.name,Qo=Ao.params;if(ss==="blur"){var Ei=Qo[0].value;z.renderBounds.update(z.renderBounds.center,$o(z.renderBounds.halfExtents,z.renderBounds.halfExtents,[Ei,Ei,0]))}else if(ss==="drop-shadow"){var ki=Qo[0].value,Sa=Qo[1].value,_a=Qo[2].value,ni=z.renderBounds,Ki=ni.min,Ma=ni.max,mo=Ki[0]-_a+ki,Qi=Ma[0]+_a+ki,Is=Ki[1]-_a+Sa,as=Ma[1]+_a+Sa;Ki[0]=Math.min(Ki[0],mo),Ma[0]=Math.max(Ma[0],Qi),Ki[1]=Math.min(Ki[1],Is),Ma[1]=Math.max(Ma[1],as),z.renderBounds.setMinMax(Ki,Ma)}}),y.geometry.dirty=!1;var ti=We<0,to=Ke<0,ji=(ti?-1:1)*(Fn?Gc(Fn[0],0,y,!0):0),so=(to?-1:1)*(Fn?Gc(Fn[1],1,y,!0):0);(ji||so)&&y.setOrigin(ji,so)}}},{key:"updateSizeAttenuation",value:function(y,x){y.style.isSizeAttenuation?(y.style.rawLineWidth||(y.style.rawLineWidth=y.style.lineWidth),y.style.lineWidth=(y.style.rawLineWidth||1)/x,y.nodeName===ga.CIRCLE&&(y.style.rawR||(y.style.rawR=y.style.r),y.style.r=(y.style.rawR||1)/x)):(y.style.rawLineWidth&&(y.style.lineWidth=y.style.rawLineWidth,delete y.style.rawLineWidth),y.nodeName===ga.CIRCLE&&y.style.rawR&&(y.style.r=y.style.rawR,delete y.style.rawR))}}])}();function YB(E,a){var y=gP(E);for(var x in a)y.has(x)&&(E.parsedStyle[x]=a[x])}function gP(E){return E.constructor.PARSED_STYLE_LIST}var XB=function(){function E(){(0,gn.Z)(this,E),this.mixer=RE}return(0,cn.Z)(E,[{key:"calculator",value:function(y,x,b,z){return Mc(b)}}])}(),JB=function(){function E(){(0,gn.Z)(this,E)}return(0,cn.Z)(E,[{key:"calculator",value:function(y,x,b,z,ee){return b instanceof hd&&(b=null),ee.sceneGraphService.updateDisplayObjectDependency(y,x,b,z),y==="clipPath"&&z.forEach(function(re){re.childNodes.length===0&&ee.sceneGraphService.dirtyToRoot(re)}),b}}])}(),qB=function(){function E(){(0,gn.Z)(this,E),this.parser=av,this.mixer=hB}return(0,cn.Z)(E,[{key:"calculator",value:function(y,x,b,z){return b instanceof hd?b.value==="none"?VC:KC:b}}])}(),$B=function(){function E(){(0,gn.Z)(this,E)}return(0,cn.Z)(E,[{key:"calculator",value:function(y,x,b){return b instanceof hd?[]:b}}])}();function vP(E){var a=E.parsedStyle,y=a.fontSize;return wo(y)?null:y}var GE=function(){function E(){(0,gn.Z)(this,E),this.mixer=RE}return(0,cn.Z)(E,[{key:"calculator",value:function(y,x,b,z,ee){if(Wi(b))return b;if(dl.isRelativeUnit(b.unit)){if(b.unit===Di.kPercentage)return 0;if(b.unit===Di.kEms){if(z.parentNode){var re=vP(z.parentNode);if(re)return re*=b.value,re}return 0}if(b.unit===Di.kRems){var ae;if(z!=null&&(ae=z.ownerDocument)!==null&&ae!==void 0&&ae.documentElement){var se=vP(z.ownerDocument.documentElement);if(se)return se*=b.value,se}return 0}}else return b.value}}])}(),e6=function(){function E(){(0,gn.Z)(this,E),this.mixer=eP}return(0,cn.Z)(E,[{key:"calculator",value:function(y,x,b){return b.map(function(z){return z.value})}}])}(),t6=function(){function E(){(0,gn.Z)(this,E),this.mixer=eP}return(0,cn.Z)(E,[{key:"calculator",value:function(y,x,b){return b.map(function(z){return z.value})}}])}(),n6=function(){function E(){(0,gn.Z)(this,E)}return(0,cn.Z)(E,[{key:"calculator",value:function(y,x,b,z){var ee;b instanceof hd&&(b=null);var re=(ee=b)===null||ee===void 0?void 0:ee.cloneNode(!0);return re&&(re.style.isMarker=!0),re}}])}(),r6=function(){function E(){(0,gn.Z)(this,E),this.mixer=RE}return(0,cn.Z)(E,[{key:"calculator",value:function(y,x,b){return b.value}}])}(),a6=function(){function E(){(0,gn.Z)(this,E),this.mixer=FE(0,1)}return(0,cn.Z)(E,[{key:"calculator",value:function(y,x,b){return b.value}},{key:"postProcessor",value:function(y){var x=y.parsedStyle,b=x.offsetPath,z=x.offsetDistance;if(b){var ee=b.nodeName;if(ee===ga.LINE||ee===ga.PATH||ee===ga.POLYLINE){var re=b.getPoint(z);re&&y.setLocalPosition(re.x,re.y)}}}}])}(),i6=function(){function E(){(0,gn.Z)(this,E),this.mixer=FE(0,1)}return(0,cn.Z)(E,[{key:"calculator",value:function(y,x,b){return b.value}}])}(),o6=function(){function E(){(0,gn.Z)(this,E),this.parser=lP,this.mixer=BB}return(0,cn.Z)(E,[{key:"calculator",value:function(y,x,b){return b instanceof hd&&b.value==="unset"?{absolutePath:[],hasArc:!1,segments:[],polygons:[],polylines:[],curve:null,totalLength:0,rect:new o0(0,0,0,0)}:b}}])}(),s6=(0,cn.Z)(function E(){(0,gn.Z)(this,E),this.mixer=RB}),l6=function(E){function a(){var y;(0,gn.Z)(this,a);for(var x=arguments.length,b=new Array(x),z=0;z>>1;mP(E[b],a)<0?y=b+1:x=b}return y}function mP(E,a){var y=Number(E.parsedStyle.zIndex||0),x=Number(a.parsedStyle.zIndex||0);if(y===x){var b=E.parentNode;if(b){var z=b.childNodes||[];return z.indexOf(E)-z.indexOf(a)}}return y-x}function pP(E){var a=E;do{var y,x=(y=a.parsedStyle)===null||y===void 0?void 0:y.clipPath;if(x)return a;a=a.parentElement}while(a!==null);return null}var yP="px";function g6(E,a,y){VE&&E.style&&(E.style.width=a+yP,E.style.height=y+yP)}function EP(E,a){if(VE)return document.defaultView.getComputedStyle(E,null).getPropertyValue(a)}function v6(E){var a=EP(E,"width");return a==="auto"?E.offsetWidth:parseFloat(a)}function m6(E){var a=EP(E,"height");return a==="auto"?E.offsetHeight:parseFloat(a)}var p6=1,y6={touchstart:"pointerdown",touchend:"pointerup",touchendoutside:"pointerupoutside",touchmove:"pointermove",touchcancel:"pointercancel"},KE=typeof performance=="object"&&performance.now?performance:Date;function Um(E){return E.nodeName===ga.FRAGMENT?!0:E.getRootNode().nodeName===ga.FRAGMENT}function og(){var E=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"auto",a=arguments.length>1?arguments[1]:void 0,y=arguments.length>2?arguments[2]:void 0,x=!1,b=!1,z=!!a&&!a.isNone,ee=!!y&&!y.isNone;return E==="visiblepainted"||E==="painted"||E==="auto"?(x=z,b=ee):E==="visiblefill"||E==="fill"?x=!0:E==="visiblestroke"||E==="stroke"?b=!0:(E==="visible"||E==="all")&&(x=!0,b=!0),[x,b]}var E6=1,A6=function(){return E6++},ff=typeof self=="object"&&self.self===self?self:typeof Ie.g=="object"&&Ie.g.global===Ie.g?Ie.g:{},x6=Date.now(),S6=function(){return ff.performance&&typeof ff.performance.now=="function"?ff.performance.now():Date.now()-x6},sv={},AP=Date.now(),b6=function(a){if(typeof a!="function")throw new TypeError("".concat(a," is not a function"));var y=Date.now(),x=y-AP,b=x>16?0:16-x,z=A6();return sv[z]=a,Object.keys(sv).length>1||setTimeout(function(){AP=y;var ee=sv;sv={},Object.keys(ee).forEach(function(re){return ee[re](S6())})},b),z},C6=function(a){delete sv[a]},P6=["","webkit","moz","ms","o"],xP=function(a){return typeof a!="string"?b6:a===""?ff.requestAnimationFrame:ff["".concat(a,"RequestAnimationFrame")]},w6=function(a){return typeof a!="string"?C6:a===""?ff.cancelAnimationFrame:ff["".concat(a,"CancelAnimationFrame")]||ff["".concat(a,"CancelRequestAnimationFrame")]},M6=function(a,y){for(var x=0;a[x]!==void 0;){if(y(a[x]))return a[x];x+=1}},SP=M6(P6,function(E){return!!xP(E)}),ZE=xP(SP),bP=w6(SP);ff.requestAnimationFrame=ZE,ff.cancelAnimationFrame=bP;var D6=function(){function E(){(0,gn.Z)(this,E),this.callbacks=[]}return(0,cn.Z)(E,[{key:"getCallbacksNum",value:function(){return this.callbacks.length}},{key:"tapPromise",value:function(y,x){this.callbacks.push(x)}},{key:"promise",value:function(){for(var y=arguments.length,x=new Array(y),b=0;b=0;fe--){var me=se[fe].trim();!O6.test(me)&&T6.indexOf(me)<0&&(me='"'.concat(me,'"')),se[fe]=me}return"".concat(z," ").concat(ee," ").concat(re," ").concat(ae," ").concat(se.join(","))},function(E){var a=CP(E),y=a.fontSize,x=a.fontFamily,b=a.fontStyle,z=a.fontVariant,ee=a.fontWeight;return"".concat(b,"_").concat(z,"_").concat(ee,"_").concat(y,"_").concat(x)}),L6=1e-6,lv=function(a){return Math.max(a,L6)};function YE(E,a,y){return Vs(E),E[4]=Math.tan(a),E[1]=Math.tan(y),E}var tu=ol(),B6=ol(),N6={scale:function(a){qh(tu,[a[0].value,a[1].value,1].map(function(y){return lv(y)}))},scaleX:function(a){qh(tu,[a[0].value,1,1].map(function(y){return lv(y)}))},scaleY:function(a){qh(tu,[1,a[0].value,1].map(function(y){return lv(y)}))},scaleZ:function(a){qh(tu,[1,1,a[0].value].map(function(y){return lv(y)}))},scale3d:function(a){qh(tu,[a[0].value,a[1].value,a[2].value].map(function(y){return lv(y)}))},translate:function(a){ih(tu,[a[0].value,a[1].value,0])},translateX:function(a){ih(tu,[a[0].value,0,0])},translateY:function(a){ih(tu,[0,a[0].value,0])},translateZ:function(a){ih(tu,[0,0,a[0].value])},translate3d:function(a){ih(tu,[a[0].value,a[1].value,a[2].value])},rotate:function(a){uE(tu,ul(Mc(a[0])))},rotateX:function(a){Mb(tu,ul(Mc(a[0])))},rotateY:function(a){Ib(tu,ul(Mc(a[0])))},rotateZ:function(a){uE(tu,ul(Mc(a[0])))},rotate3d:function(a){Pb(tu,ul(Mc(a[3])),[a[0].value,a[1].value,a[2].value])},skew:function(a){YE(tu,ul(a[0].value),ul(a[1].value))},skewX:function(a){YE(tu,ul(a[0].value),0)},skewY:function(a){YE(tu,0,ul(a[0].value))},matrix:function(a){Ds(tu,a[0].value,a[1].value,0,0,a[2].value,a[3].value,0,0,0,0,1,0,a[4].value,a[5].value,0,1)},matrix3d:function(a){Ds.apply(Be,[tu].concat((0,bn.Z)(a.map(function(y){return y.value}))))}},R6=_r(1,1,1),F6=na(),wP={translate:function(a,y){Qa.sceneGraphService.setLocalScale(a,R6,!1),Qa.sceneGraphService.setLocalEulerAngles(a,F6,void 0,void 0,!1),Qa.sceneGraphService.setLocalPosition(a,[y[0].value,y[1].value,0],!1),Qa.sceneGraphService.dirtyLocalTransform(a,a.transformable)}};function MP(E,a){if(E.length){if(E.length===1&&wP[E[0].t]){wP[E[0].t](a,E[0].d);return}for(var y=Vs(B6),x=0;x1&&arguments[1]!==void 0?arguments[1]:!1,b=arguments.length>2?arguments[2]:void 0;if(b)return this.dispatchEventToSelf(y),!0;var z;if(this.document)z=this;else if(this.defaultView)z=this.defaultView;else{var ee;z=(ee=this.ownerDocument)===null||ee===void 0?void 0:ee.defaultView}if(z){if(y.manager=z.getEventService(),!y.manager)return!1;y.defaultPrevented=!1,y.path?y.path.length=0:y.page=[],x||(y.target=this),y.manager.dispatchEvent(y,y.type,x)}else this.dispatchEventToSelf(y);return!y.defaultPrevented}}])}(),Il=function(E){function a(){var y;(0,gn.Z)(this,a);for(var x=arguments.length,b=new Array(x),z=0;z0&&arguments[0]!==void 0?arguments[0]:{};return this.parentNode?this.parentNode.getRootNode(x):x.composed&&this.host?this.host.getRootNode(x):this}},{key:"hasChildNodes",value:function(){return this.childNodes.length>0}},{key:"isDefaultNamespace",value:function(x){throw new Error(ll)}},{key:"lookupNamespaceURI",value:function(x){throw new Error(ll)}},{key:"lookupPrefix",value:function(x){throw new Error(ll)}},{key:"normalize",value:function(){throw new Error(ll)}},{key:"isEqualNode",value:function(x){return this===x}},{key:"isSameNode",value:function(x){return this.isEqualNode(x)}},{key:"parent",get:function(){return this.parentNode}},{key:"parentElement",get:function(){return null}},{key:"nextSibling",get:function(){return null}},{key:"previousSibling",get:function(){return null}},{key:"firstChild",get:function(){return this.childNodes.length>0?this.childNodes[0]:null}},{key:"lastChild",get:function(){return this.childNodes.length>0?this.childNodes[this.childNodes.length-1]:null}},{key:"compareDocumentPosition",value:function(x){if(x===this)return 0;for(var b=x,z=this,ee=[b],re=[z];(ae=b.parentNode)!==null&&ae!==void 0?ae:z.parentNode;){var ae;b=b.parentNode?(ee.push(b.parentNode),b.parentNode):b,z=z.parentNode?(re.push(z.parentNode),z.parentNode):z}if(b!==z)return a.DOCUMENT_POSITION_DISCONNECTED|a.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC|a.DOCUMENT_POSITION_PRECEDING;var se=ee.length>re.length?ee:re,fe=se===ee?re:ee;if(se[se.length-fe.length]===fe[0])return se===ee?a.DOCUMENT_POSITION_CONTAINED_BY|a.DOCUMENT_POSITION_FOLLOWING:a.DOCUMENT_POSITION_CONTAINS|a.DOCUMENT_POSITION_PRECEDING;for(var me=se.length-fe.length,Ee=fe.length-1;Ee>=0;Ee--){var Oe=fe[Ee],ke=se[me+Ee];if(ke!==Oe){var We=Oe.parentNode.childNodes;return We.indexOf(Oe)0&&b;)b=b.parentNode,x--;return b}},{key:"forEach",value:function(x){for(var b=[this];b.length>0;){var z=b.pop(),ee=x(z);if(ee===!1)break;for(var re=z.childNodes.length-1;re>=0;re--)b.push(z.childNodes[re])}}}],[{key:"isNode",value:function(x){return!!x.childNodes}}])}(IP);Il.DOCUMENT_POSITION_DISCONNECTED=1,Il.DOCUMENT_POSITION_PRECEDING=2,Il.DOCUMENT_POSITION_FOLLOWING=4,Il.DOCUMENT_POSITION_CONTAINS=8,Il.DOCUMENT_POSITION_CONTAINED_BY=16,Il.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC=32;var Y6=2048,X6=function(){function E(a,y){var x=this;(0,gn.Z)(this,E),this.nativeHTMLMap=new WeakMap,this.cursor="default",this.mappingTable={},this.mappingState={trackingData:{}},this.eventPool=new Map,this.tmpMatrix=ol(),this.tmpVec3=na(),this.onPointerDown=function(b){var z=x.createPointerEvent(b);if(x.dispatchEvent(z,"pointerdown"),z.pointerType==="touch")x.dispatchEvent(z,"touchstart");else if(z.pointerType==="mouse"||z.pointerType==="pen"){var ee=z.button===2;x.dispatchEvent(z,ee?"rightdown":"mousedown")}var re=x.trackingData(b.pointerId);re.pressTargetsByButton[b.button]=z.composedPath(),x.freeEvent(z)},this.onPointerUp=function(b){var z=KE.now(),ee=x.createPointerEvent(b,void 0,void 0,x.context.config.alwaysTriggerPointerEventOnCanvas?x.rootTarget:void 0);if(x.dispatchEvent(ee,"pointerup"),ee.pointerType==="touch")x.dispatchEvent(ee,"touchend");else if(ee.pointerType==="mouse"||ee.pointerType==="pen"){var re=ee.button===2;x.dispatchEvent(ee,re?"rightup":"mouseup")}var ae=x.trackingData(b.pointerId),se=x.findMountedTarget(ae.pressTargetsByButton[b.button]),fe=se;if(se&&!ee.composedPath().includes(se)){for(var me=se;me&&!ee.composedPath().includes(me);){if(ee.currentTarget=me,x.notifyTarget(ee,"pointerupoutside"),ee.pointerType==="touch")x.notifyTarget(ee,"touchendoutside");else if(ee.pointerType==="mouse"||ee.pointerType==="pen"){var Ee=ee.button===2;x.notifyTarget(ee,Ee?"rightupoutside":"mouseupoutside")}Il.isNode(me)&&(me=me.parentNode)}delete ae.pressTargetsByButton[b.button],fe=me}if(fe){var Oe,ke=x.clonePointerEvent(ee,"click");ke.target=fe,ke.path=[],ae.clicksByButton[b.button]||(ae.clicksByButton[b.button]={clickCount:0,target:ke.target,timeStamp:z});var We=x.context.renderingContext.root.ownerDocument.defaultView,je=ae.clicksByButton[b.button];je.target===ke.target&&z-je.timeStamp=1;z--)if(y.currentTarget=b[z],this.notifyTarget(y,x),y.propagationStopped||y.propagationImmediatelyStopped)return;if(y.eventPhase=y.AT_TARGET,y.currentTarget=y.target,this.notifyTarget(y,x),!(y.propagationStopped||y.propagationImmediatelyStopped)){var ee=b.indexOf(y.currentTarget);y.eventPhase=y.BUBBLING_PHASE;for(var re=ee+1;reee||b>re?null:!ae&&this.pickHandler(y)||this.rootTarget||null}},{key:"isNativeEventFromCanvas",value:function(y,x){var b,z=x==null?void 0:x.target;if((b=z)!==null&&b!==void 0&&b.shadowRoot&&(z=x.composedPath()[0]),z){if(z===y)return!0;if(y&&y.contains)return y.contains(z)}return x!=null&&x.composedPath?x.composedPath().indexOf(y)>-1:!1}},{key:"getExistedHTML",value:function(y){if(y.nativeEvent.composedPath)for(var x=0,b=y.nativeEvent.composedPath();x=0;b--){var z=y[b];if(z===this.rootTarget||Il.isNode(z)&&z.parentNode===x)x=y[b];else break}return x}},{key:"getCursor",value:function(y){for(var x=y;x;){var b=f6(x)&&x.getAttribute("cursor");if(b)return b;x=Il.isNode(x)&&x.parentNode}}}])}(),JE=function(){function E(){(0,gn.Z)(this,E)}return(0,cn.Z)(E,[{key:"getOrCreateCanvas",value:function(y,x){if(this.canvas)return this.canvas;if(y||Qa.offscreenCanvas)this.canvas=y||Qa.offscreenCanvas,this.context=this.canvas.getContext("2d",(0,hn.Z)({willReadFrequently:!0},x));else try{this.canvas=new window.OffscreenCanvas(0,0),this.context=this.canvas.getContext("2d",(0,hn.Z)({willReadFrequently:!0},x)),(!this.context||!this.context.measureText)&&(this.canvas=document.createElement("canvas"),this.context=this.canvas.getContext("2d"))}catch(b){this.canvas=document.createElement("canvas"),this.context=this.canvas.getContext("2d",(0,hn.Z)({willReadFrequently:!0},x))}return this.canvas.width=10,this.canvas.height=10,this.canvas}},{key:"getOrCreateContext",value:function(y,x){return this.context?this.context:(this.getOrCreateCanvas(y,x),this.context)}}],[{key:"createCanvas",value:function(){try{return new window.OffscreenCanvas(0,0)}catch(y){}try{return document.createElement("canvas")}catch(y){}return null}}])}(),f0=function(E){return E[E.CAMERA_CHANGED=0]="CAMERA_CHANGED",E[E.DISPLAY_OBJECT_CHANGED=1]="DISPLAY_OBJECT_CHANGED",E[E.NONE=2]="NONE",E}({}),J6=function(){function E(a,y){(0,gn.Z)(this,E),this.inited=!1,this.stats={total:0,rendered:0},this.zIndexCounter=0,this.hooks={init:new sc,initAsync:new D6,dirtycheck:new QE,cull:new QE,beginFrame:new sc,beforeRender:new sc,render:new sc,afterRender:new sc,endFrame:new sc,destroy:new sc,pick:new I6,pickSync:new QE,pointerDown:new sc,pointerUp:new sc,pointerMove:new sc,pointerOut:new sc,pointerOver:new sc,pointerWheel:new sc,pointerCancel:new sc,click:new sc},this.globalRuntime=a,this.context=y}return(0,cn.Z)(E,[{key:"init",value:function(y){var x=this,b=(0,hn.Z)((0,hn.Z)({},this.globalRuntime),this.context);this.context.renderingPlugins.forEach(function(z){z.apply(b,x.globalRuntime)}),this.hooks.init.call(),this.hooks.initAsync.getCallbacksNum()===0?(this.inited=!0,y()):this.hooks.initAsync.promise().then(function(){x.inited=!0,y()}).catch(function(z){})}},{key:"getStats",value:function(){return this.stats}},{key:"disableDirtyRectangleRendering",value:function(){var y=this.context.config.renderer,x=y.getConfig(),b=x.enableDirtyRectangleRendering;return!b||this.context.renderingContext.renderReasons.has(f0.CAMERA_CHANGED)}},{key:"render",value:function(y,x,b){var z=this,ee=y.getConfig(),re=this.context.renderingContext;if(this.stats.total=0,this.stats.rendered=0,this.zIndexCounter=0,this.globalRuntime.sceneGraphService.syncHierarchy(re.root),this.globalRuntime.sceneGraphService.notifyMutationObservers(y),re.renderReasons.size&&this.inited){re.dirtyRectangleRenderingDisabled=this.disableDirtyRectangleRendering();var ae=re.renderReasons.size===1&&re.renderReasons.has(f0.CAMERA_CHANGED),se=!ee.disableRenderHooks||!ae;se&&this.renderDisplayObject(re.root,ee,re),this.hooks.beginFrame.call(x),se&&re.renderListCurrentFrame.forEach(function(fe){z.hooks.beforeRender.call(fe),z.hooks.render.call(fe),z.hooks.afterRender.call(fe)}),this.hooks.endFrame.call(x),re.renderListCurrentFrame=[],re.renderReasons.clear(),b()}}},{key:"renderDisplayObject",value:function(y,x,b){var z=this,ee=x.renderer.getConfig(),re=ee.enableDirtyCheck,ae=ee.enableCulling;function se(We){var je=We.renderable,Ke=We.sortable,Ze=re?je.dirty||b.dirtyRectangleRenderingDisabled?We:null:We,Je=null;Ze&&(Je=ae?z.hooks.cull.call(Ze,z.context.camera):Ze,Je&&(z.stats.rendered+=1,b.renderListCurrentFrame.push(Je))),We.dirty(!1),Ke.renderOrder=z.zIndexCounter,z.zIndexCounter+=1,z.stats.total+=1,Ke.dirty&&(z.sort(We,Ke),Ke.dirty=!1,Ke.dirtyChildren=[],Ke.dirtyReason=void 0)}for(var fe=[y];fe.length>0;){var me,Ee=fe.pop();se(Ee);for(var Oe=((me=Ee.sortable)===null||me===void 0||(me=me.sorted)===null||me===void 0?void 0:me.length)>0?Ee.sortable.sorted:Ee.childNodes,ke=Oe.length-1;ke>=0;ke--)fe.push(Oe[ke])}}},{key:"sort",value:function(y,x){var b,z;(x==null||(b=x.sorted)===null||b===void 0?void 0:b.length)>0&&x.dirtyReason!==Dm.Z_INDEX_CHANGED?x.dirtyChildren.forEach(function(ee){var re=x.sorted.indexOf(ee);re>-1&&x.sorted.splice(re,1);var ae=y.childNodes.indexOf(ee);if(ae>-1)if(x.sorted.length===0)x.sorted.push(ee);else{var se=h6(x.sorted,ee);x.sorted.splice(se,0,ee)}}):x.sorted=y.childNodes.slice().sort(mP),((z=x.sorted)===null||z===void 0?void 0:z.length)>0&&y.childNodes.filter(function(ee){return ee.parsedStyle.zIndex}).length===0&&(x.sorted=[])}},{key:"destroy",value:function(){this.inited=!1,this.hooks.destroy.call()}},{key:"dirty",value:function(){this.context.renderingContext.renderReasons.add(f0.DISPLAY_OBJECT_CHANGED)}}])}(),q6=/\[\s*(.*)=(.*)\s*\]/,$6=function(){function E(){(0,gn.Z)(this,E)}return(0,cn.Z)(E,[{key:"selectOne",value:function(y,x){var b=this;if(y.startsWith("."))return x.find(function(ae){return((ae==null?void 0:ae.classList)||[]).indexOf(b.getIdOrClassname(y))>-1});if(y.startsWith("#"))return x.find(function(ae){return ae.id===b.getIdOrClassname(y)});if(y.startsWith("[")){var z=this.getAttribute(y),ee=z.name,re=z.value;return ee?x.find(function(ae){return x!==ae&&(ee==="name"?ae.name===re:b.attributeToString(ae,ee)===re)}):null}return x.find(function(ae){return x!==ae&&ae.nodeName===y})}},{key:"selectAll",value:function(y,x){var b=this;if(y.startsWith("."))return x.findAll(function(ae){return x!==ae&&((ae==null?void 0:ae.classList)||[]).indexOf(b.getIdOrClassname(y))>-1});if(y.startsWith("#"))return x.findAll(function(ae){return x!==ae&&ae.id===b.getIdOrClassname(y)});if(y.startsWith("[")){var z=this.getAttribute(y),ee=z.name,re=z.value;return ee?x.findAll(function(ae){return x!==ae&&(ee==="name"?ae.name===re:b.attributeToString(ae,ee)===re)}):[]}return x.findAll(function(ae){return x!==ae&&ae.nodeName===y})}},{key:"is",value:function(y,x){if(y.startsWith("."))return x.className===this.getIdOrClassname(y);if(y.startsWith("#"))return x.id===this.getIdOrClassname(y);if(y.startsWith("[")){var b=this.getAttribute(y),z=b.name,ee=b.value;return z==="name"?x.name===ee:this.attributeToString(x,z)===ee}return x.nodeName===y}},{key:"getIdOrClassname",value:function(y){return y.substring(1)}},{key:"getAttribute",value:function(y){var x=y.match(q6),b="",z="";return x&&x.length>2&&(b=x[1].replace(/"/g,""),z=x[2].replace(/"/g,"")),{name:b,value:z}}},{key:"attributeToString",value:function(y,x){if(!y.getAttribute)return"";var b=y.getAttribute(x);return wo(b)?"":b.toString?b.toString():""}}])}(),Es=function(E){return E.ATTR_MODIFIED="DOMAttrModified",E.INSERTED="DOMNodeInserted",E.MOUNTED="DOMNodeInsertedIntoDocument",E.REMOVED="removed",E.UNMOUNTED="DOMNodeRemovedFromDocument",E.REPARENT="reparent",E.DESTROY="destroy",E.BOUNDS_CHANGED="bounds-changed",E.CULLED="culled",E}({}),hf=function(E){function a(y,x,b,z,ee,re,ae,se){var fe;return(0,gn.Z)(this,a),fe=ir(this,a,[null]),fe.relatedNode=x,fe.prevValue=b,fe.newValue=z,fe.attrName=ee,fe.attrChange=re,fe.prevParsedValue=ae,fe.newParsedValue=se,fe.type=y,fe}return(0,xr.Z)(a,E),(0,cn.Z)(a)}(Wm);hf.ADDITION=2,hf.MODIFICATION=1,hf.REMOVAL=3;var eN=new hf(Es.REPARENT,null,"","","",0,"",""),tN=gE(),Gm=na(),nN=_r(1,1,1),rN=ol(),aN=gE(),sg=na(),iN=ol(),lg=cu(),oN=na(),sN=cu(),lN=na(),uv=na(),ug=na(),Hm=ol(),TP=cu(),OP=cu(),Vm=cu(),uN=function(){function E(a){(0,gn.Z)(this,E),this.displayObjectDependencyMap=new WeakMap,this.runtime=a}return(0,cn.Z)(E,[{key:"matches",value:function(y,x){return this.runtime.sceneGraphSelector.is(y,x)}},{key:"querySelector",value:function(y,x){return this.runtime.sceneGraphSelector.selectOne(y,x)}},{key:"querySelectorAll",value:function(y,x){return this.runtime.sceneGraphSelector.selectAll(y,x)}},{key:"attach",value:function(y,x,b){var z,ee=!1;y.parentNode&&(ee=y.parentNode!==x,this.detach(y));var re=y.nodeName===ga.FRAGMENT,ae=Um(x);y.parentNode=x;var se=re?y.childNodes:[y];Wi(b)?se.forEach(function(We){x.childNodes.splice(b,0,We),We.parentNode=x}):se.forEach(function(We){x.childNodes.push(We),We.parentNode=x});var fe=x,me=fe.sortable;if((me!=null&&(z=me.sorted)!==null&&z!==void 0&&z.length||me.dirty||y.parsedStyle.zIndex)&&(me.dirtyChildren.indexOf(y)===-1&&me.dirtyChildren.push(y),me.dirty=!0,me.dirtyReason=Dm.ADDED),!ae){if(re)this.dirtyFragment(y);else{var Ee=y.transformable;Ee&&this.dirtyWorldTransform(y,Ee)}if(ee){var Oe,ke=((Oe=x.ownerDocument)===null||Oe===void 0||(Oe=Oe.defaultView)===null||Oe===void 0||(Oe=Oe.getConfig())===null||Oe===void 0||(Oe=Oe.future)===null||Oe===void 0?void 0:Oe.experimentalCancelEventPropagation)===!0;y.dispatchEvent(eN,ke,ke)}}}},{key:"detach",value:function(y){var x,b;if(y.parentNode){var z=y.transformable,ee=y.parentNode,re=ee.sortable;(re!=null&&(x=re.sorted)!==null&&x!==void 0&&x.length||(b=y.style)!==null&&b!==void 0&&b.zIndex)&&(re.dirtyChildren.indexOf(y)===-1&&re.dirtyChildren.push(y),re.dirty=!0,re.dirtyReason=Dm.REMOVED);var ae=y.parentNode.childNodes.indexOf(y);ae>-1&&y.parentNode.childNodes.splice(ae,1),z&&this.dirtyWorldTransform(y,z),y.parentNode=null}}},{key:"getLocalPosition",value:function(y){return y.transformable.localPosition}},{key:"getLocalRotation",value:function(y){return y.transformable.localRotation}},{key:"getLocalScale",value:function(y){return y.transformable.localScale}},{key:"getLocalSkew",value:function(y){return y.transformable.localSkew}},{key:"getLocalTransform",value:function(y){var x=y.transformable;return OC(x),x.localTransform}},{key:"setLocalPosition",value:function(y,x){var b,z=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,ee=y.transformable;uv[0]=x[0],uv[1]=x[1],uv[2]=(b=x[2])!==null&&b!==void 0?b:0,!If(ee.localPosition,uv)&&(Zi(ee.localPosition,uv),z&&this.dirtyLocalTransform(y,ee))}},{key:"translateLocal",value:function(y,x){var b=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,z=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof x=="number"&&(x=_r(x,b,z));var ee=y.transformable;If(x,Gm)||(wd(x,x,ee.localRotation),$o(ee.localPosition,ee.localPosition,x),this.dirtyLocalTransform(y,ee))}},{key:"setLocalRotation",value:function(y,x,b,z,ee){var re=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0;typeof x=="number"&&(x=Vb(lg,x,b,z,ee));var ae=y.transformable;pm(ae.localRotation,x),re&&this.dirtyLocalTransform(y,ae)}},{key:"rotateLocal",value:function(y,x){var b=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,z=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof x=="number"&&(x=_r(x,b,z));var ee=y.transformable;mm(OP,x[0],x[1],x[2]),Kb(ee.localRotation,ee.localRotation,OP),this.dirtyLocalTransform(y,ee)}},{key:"setLocalScale",value:function(y,x){var b,z=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,ee=y.transformable;qi(sg,x[0],x[1],(b=x[2])!==null&&b!==void 0?b:ee.localScale[2]),!If(sg,ee.localScale)&&(Zi(ee.localScale,sg),z&&this.dirtyLocalTransform(y,ee))}},{key:"scaleLocal",value:function(y,x){var b,z=y.transformable;Rs(z.localScale,z.localScale,qi(sg,x[0],x[1],(b=x[2])!==null&&b!==void 0?b:1)),this.dirtyLocalTransform(y,z)}},{key:"setLocalSkew",value:function(y,x,b){var z=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0;typeof x=="number"&&(x=YT(aN,x,b));var ee=y.transformable;QT(ee.localSkew,x),z&&this.dirtyLocalTransform(y,ee)}},{key:"setLocalEulerAngles",value:function(y,x){var b=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,z=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,ee=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0;typeof x=="number"&&(x=_r(x,b,z));var re=y.transformable;mm(re.localRotation,x[0],x[1],x[2]),ee&&this.dirtyLocalTransform(y,re)}},{key:"setLocalTransform",value:function(y,x){var b=gm(oN,x),z=vm(sN,x),ee=n0(lN,x);this.setLocalScale(y,ee,!1),this.setLocalPosition(y,b,!1),this.setLocalRotation(y,z,void 0,void 0,void 0,!1),this.dirtyLocalTransform(y,y.transformable)}},{key:"resetLocalTransform",value:function(y){this.setLocalScale(y,nN,!1),this.setLocalPosition(y,Gm,!1),this.setLocalEulerAngles(y,Gm,void 0,void 0,!1),this.setLocalSkew(y,tN,void 0,!1),this.dirtyLocalTransform(y,y.transformable)}},{key:"getPosition",value:function(y){var x=y.transformable;return gm(x.position,this.getWorldTransform(y,x))}},{key:"getRotation",value:function(y){var x=y.transformable;return vm(x.rotation,this.getWorldTransform(y,x))}},{key:"getScale",value:function(y){var x=y.transformable;return n0(x.scaling,this.getWorldTransform(y,x))}},{key:"getOrigin",value:function(y){return y.getGeometryBounds(),y.transformable.origin}},{key:"getWorldTransform",value:function(y){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:y.transformable;return!x.localDirtyFlag&&!x.dirtyFlag||(y.parentNode&&y.parentNode.transformable&&this.getWorldTransform(y.parentNode),this.internalUpdateTransform(y)),x.worldTransform}},{key:"setPosition",value:function(y,x){var b,z=y.transformable;if(ug[0]=x[0],ug[1]=x[1],ug[2]=(b=x[2])!==null&&b!==void 0?b:0,!If(this.getPosition(y),ug)){if(Zi(z.position,ug),y.parentNode===null||!y.parentNode.transformable)Zi(z.localPosition,ug);else{var ee=y.parentNode.transformable;Vi(Hm,ee.worldTransform),Gl(Hm,Hm),ql(z.localPosition,ug,Hm)}this.dirtyLocalTransform(y,z)}}},{key:"translate",value:function(y,x){var b=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,z=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof x=="number"&&(x=qi(sg,x,b,z)),!If(x,Gm)&&($o(sg,this.getPosition(y),x),this.setPosition(y,sg))}},{key:"setRotation",value:function(y,x,b,z,ee){var re=y.transformable;if(typeof x=="number"&&(x=VT(x,b,z,ee)),y.parentNode===null||!y.parentNode.transformable)this.setLocalRotation(y,x);else{var ae=this.getRotation(y.parentNode);pm(lg,ae),hE(lg,lg),sh(re.localRotation,lg,x),ym(re.localRotation,re.localRotation),this.dirtyLocalTransform(y,re)}}},{key:"rotate",value:function(y,x){var b=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,z=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof x=="number"&&(x=_r(x,b,z));var ee=y.transformable;if(y.parentNode===null||!y.parentNode.transformable)this.rotateLocal(y,x);else{var re=lg;mm(re,x[0],x[1],x[2]);var ae=this.getRotation(y),se=this.getRotation(y.parentNode);pm(Vm,se),hE(Vm,Vm),sh(re,Vm,re),sh(ee.localRotation,re,ae),ym(ee.localRotation,ee.localRotation),this.dirtyLocalTransform(y,ee)}}},{key:"setOrigin",value:function(y,x){var b=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,z=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof x=="number"&&(x=[x,b,z]);var ee=y.transformable;if(!(x[0]===ee.origin[0]&&x[1]===ee.origin[1]&&x[2]===ee.origin[2])){var re=ee.origin;re[0]=x[0],re[1]=x[1],re[2]=x[2]||0,this.dirtyLocalTransform(y,ee)}}},{key:"setEulerAngles",value:function(y,x){var b=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,z=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof x=="number"&&(x=_r(x,b,z));var ee=y.transformable;if(y.parentNode===null||!y.parentNode.transformable)this.setLocalEulerAngles(y,x);else{mm(ee.localRotation,x[0],x[1],x[2]);var re=this.getRotation(y.parentNode);pm(TP,hE(lg,re)),Kb(ee.localRotation,ee.localRotation,TP),this.dirtyLocalTransform(y,ee)}}},{key:"getGeometryBounds",value:function(y){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,b=y,z=b.geometry;z.dirty&&Qa.styleValueRegistry.updateGeometry(y);var ee=x?z.renderBounds:z.contentBounds||null;return ee||new pl}},{key:"getTransformedGeometryBounds",value:function(y){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,b=arguments.length>2?arguments[2]:void 0,z=this.getGeometryBounds(y,x);if(!pl.isEmpty(z)){var ee=b||new pl;return ee.setFromTransformedAABB(z,this.getWorldTransform(y)),ee}return null}},{key:"getBounds",value:function(y){var x=this,b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,z=y,ee=z.renderable;if(!ee.boundsDirty&&!b&&ee.bounds)return ee.bounds;if(!ee.renderBoundsDirty&&b&&ee.renderBounds)return ee.renderBounds;var re=b?ee.renderBounds:ee.bounds,ae=this.getTransformedGeometryBounds(y,b,re),se=y.childNodes;if(se.forEach(function(Ee){var Oe=x.getBounds(Ee,b);Oe&&(ae?ae.add(Oe):(ae=re||new pl,ae.update(Oe.center,Oe.halfExtents)))}),ae||(ae=new pl),b){var fe=pP(y);if(fe){var me=fe.parsedStyle.clipPath.getBounds(b);ae?me&&(ae=me.intersection(ae)):ae.update(me.center,me.halfExtents)}}return b?(ee.renderBounds=ae,ee.renderBoundsDirty=!1):(ee.bounds=ae,ee.boundsDirty=!1),ae}},{key:"getLocalBounds",value:function(y){if(y.parentNode){var x=rN;y.parentNode.transformable&&(x=Gl(iN,this.getWorldTransform(y.parentNode)));var b=this.getBounds(y);if(!pl.isEmpty(b)){var z=new pl;return z.setFromTransformedAABB(b,x),z}}return this.getBounds(y)}},{key:"getBoundingClientRect",value:function(y){var x,b,z=this.getGeometryBounds(y);pl.isEmpty(z)||(b=new pl,b.setFromTransformedAABB(z,this.getWorldTransform(y)));var ee=(x=y.ownerDocument)===null||x===void 0||(x=x.defaultView)===null||x===void 0?void 0:x.getContextService().getBoundingClientRect();if(b){var re=b.getMin(),ae=(0,ia.Z)(re,2),se=ae[0],fe=ae[1],me=b.getMax(),Ee=(0,ia.Z)(me,2),Oe=Ee[0],ke=Ee[1];return new o0(se+((ee==null?void 0:ee.left)||0),fe+((ee==null?void 0:ee.top)||0),Oe-se,ke-fe)}return new o0((ee==null?void 0:ee.left)||0,(ee==null?void 0:ee.top)||0,0,0)}},{key:"internalUpdateTransform",value:function(y){var x,b=(x=y.parentNode)===null||x===void 0?void 0:x.transformable;OC(y.transformable),wL(y.transformable,b)}},{key:"internalUpdateElement",value:function(y,x){var b,z,ee,re,ae=((b=y.ownerDocument)===null||b===void 0||(b=b.defaultView)===null||b===void 0||(b=b.getConfig())===null||b===void 0||(b=b.future)===null||b===void 0?void 0:b.experimentalAttributeUpdateOptimization)===!0,se=x[x.length-1],fe=(se==null?void 0:se.transformDirty)||((z=y.transformable)===null||z===void 0?void 0:z.localDirtyFlag);if(y.transformable){var me;(me=y.transformable).dirtyFlag||(me.dirtyFlag=fe)}if(this.internalUpdateTransform(y),fe){var Ee;(Ee=y.dirty)===null||Ee===void 0||Ee.call(y,!0,!0)}var Oe=((ee=y.renderable)===null||ee===void 0?void 0:ee.boundsDirty)||((re=y.renderable)===null||re===void 0?void 0:re.renderBoundsDirty);if((fe||Oe)&&(se==null?void 0:se.shapeUpdated)===!1&&ae)for(var ke=x.length-1;ke>=0;){var We,je,Ke=x[ke];if(Ke.shapeUpdated)break;(We=(je=Ke.node).dirty)===null||We===void 0||We.call(je,!0,!0),Ke.shapeUpdated=!0,ke-=1}return fe}},{key:"syncHierarchy",value:function(y){for(var x,b,z=[y],ee=y.parentNode?[{node:y.parentNode,transformDirty:((x=y.parentNode.transformable)===null||x===void 0?void 0:x.localDirtyFlag)||((b=y.parentNode.transformable)===null||b===void 0?void 0:b.dirtyFlag),shapeUpdated:!1}]:[];z.length>0;){for(var re=z.pop(),ae=ee[ee.length-1];ee.length>0&&re.parentNode!==ae.node;)ae=ee.pop();var se=this.internalUpdateElement(re,ee);if(re.childNodes.length>0){for(var fe=re.childNodes.length-1;fe>=0;fe--)z.push(re.childNodes[fe]);ee.push({node:re,transformDirty:se,shapeUpdated:!1})}}}},{key:"dirtyLocalTransform",value:function(y,x){Um(y)||x.localDirtyFlag||(x.localDirtyFlag=!0,x.dirtyFlag||this.dirtyWorldTransform(y,x))}},{key:"dirtyWorldTransform",value:function(y,x){this.dirtyWorldInternal(y,x),this.dirtyToRoot(y,!0)}},{key:"dirtyWorldInternal",value:function(y,x){var b,z=this,ee=((b=y.ownerDocument)===null||b===void 0||(b=b.defaultView)===null||b===void 0||(b=b.getConfig())===null||b===void 0||(b=b.future)===null||b===void 0?void 0:b.experimentalAttributeUpdateOptimization)===!0;x.dirtyFlag||(x.dirtyFlag=!0,y.dirty(!0,!0),ee||y.childNodes.forEach(function(re){var ae=re.transformable;z.dirtyWorldInternal(re,ae)}))}},{key:"dirtyToRoot",value:function(y){for(var x,b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,z=y,ee=((x=y.ownerDocument)===null||x===void 0||(x=x.defaultView)===null||x===void 0||(x=x.getConfig())===null||x===void 0||(x=x.future)===null||x===void 0?void 0:x.experimentalAttributeUpdateOptimization)===!0;z;){var re,ae;if((re=(ae=z).dirty)===null||re===void 0||re.call(ae,!0,!0),ee)break;z=z.parentNode}b&&y.forEach(function(me){var Ee;(Ee=me.dirty)===null||Ee===void 0||Ee.call(me,!0,!0)}),this.informDependentDisplayObjects(y);var se=y.mutations||[],fe=se.find(function(me){return me.type==="attributes"&&me._boundsChangeData});fe?fe._boundsChangeData={affectChildren:fe._boundsChangeData.affectChildren||b}:(fe={type:"attributes",target:y,_boundsChangeData:{affectChildren:b}},se.push(fe)),y.mutations=se}},{key:"dirtyFragment",value:function(y){var x,b,z=y.transformable;z&&(z.dirtyFlag=!0,z.localDirtyFlag=!0),(x=(b=y).dirty)===null||x===void 0||x.call(b,!0,!0);for(var ee=y.childNodes.length,re=0;re0){var b=new du(Es.BOUNDS_CHANGED,{detail:Array.from(x)});y.dispatchEvent(b,!0,!0)}}},{key:"updateDisplayObjectDependency",value:function(y,x,b,z){if(x&&x!==b){var ee=this.displayObjectDependencyMap.get(x);if(ee&&ee[y]){var re=ee[y].indexOf(z);ee[y].splice(re,1)}}if(b){var ae=this.displayObjectDependencyMap.get(b);ae||(this.displayObjectDependencyMap.set(b,{}),ae=this.displayObjectDependencyMap.get(b)),ae[y]||(ae[y]=[]),ae[y].push(z)}}},{key:"informDependentDisplayObjects",value:function(y){var x,b=this,z=this.displayObjectDependencyMap.get(y);if(z){var ee=(x=y.ownerDocument)===null||x===void 0||(x=x.defaultView)===null||x===void 0||(x=x.getConfig())===null||x===void 0||(x=x.future)===null||x===void 0?void 0:x.experimentalCancelEventPropagation;Object.keys(z).forEach(function(re){z[re].forEach(function(ae){b.dirtyToRoot(ae,!0),ae.dispatchEvent(new hf(Es.ATTR_MODIFIED,ae,b,b,re,hf.MODIFICATION,b,b),ee,ee),ae.isCustomElement&&ae.isConnected&&ae.attributeChangedCallback&&ae.attributeChangedCallback(re,b,b)})})}}}])}(),LP=function(){function E(a){if((0,gn.Z)(this,E),a<=0)throw new Error("LRU capacity must be a positive number.");this.capacity=a,this.cache=new Map}return(0,cn.Z)(E,[{key:"get",value:function(y){if(this.cache.has(y)){var x=this.cache.get(y);return this.cache.delete(y),this.cache.set(y,x),x}}},{key:"put",value:function(y,x){if(this.cache.has(y)&&this.cache.delete(y),this.cache.set(y,x),this.cache.size>this.capacity){var b=this.cache.keys().next().value;this.cache.delete(b)}}},{key:"len",value:function(){return this.cache.size}},{key:"clear",value:function(){this.cache.clear()}}])}(),cg={MetricsString:"|\xC9q\xC5",BaselineSymbol:"M",BaselineMultiplier:1.4,HeightMultiplier:2,Newlines:[10,13],BreakingSpaces:[9,32,8192,8193,8194,8195,8196,8197,8198,8200,8201,8202,8287,12288]},BP=/[a-zA-Z0-9\u00C0-\u00D6\u00D8-\u00f6\u00f8-\u00ff!"#$%&'()*+,-./:;]/,cN=/[!%),.:;?\]}¢°·'""†‡›℃∶、。〃〆〕〗〞﹚﹜!"%'),.:;?!]}~]/,dN=/[$(£¥·'"〈《「『【〔〖〝﹙﹛$(.[{£¥]/,fN=/[!),.:;?\]}¢·–—'"•"、。〆〞〕〉》」︰︱︲︳﹐﹑﹒﹓﹔﹕﹖﹘﹚﹜!),.:;?︶︸︺︼︾﹀﹂﹗]|}、]/,hN=/[([{£¥'"‵〈《「『〔〝︴﹙﹛({︵︷︹︻︽︿﹁﹃﹏]/,gN=/[)\]}〕〉》」』】〙〗〟'"⦆»ヽヾーァィゥェォッャュョヮヵヶぁぃぅぇぉっゃゅょゎゕゖㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ々〻‐゠–〜?!‼⁇⁈⁉・、:;,。.]/,vN=/[([{〔〈《「『【〘〖〝'"⦅«—...‥〳〴〵]/,mN=/[!%),.:;?\]}¢°'"†‡℃〆〈《「『〕!%),.:;?]}]/,pN=/[$([{£¥'"々〇〉》」〔$([{⦆¥₩#]/,yN=new RegExp("".concat(cN.source,"|").concat(fN.source,"|").concat(gN.source,"|").concat(mN.source)),EN=new RegExp("".concat(dN.source,"|").concat(hN.source,"|").concat(vN.source,"|").concat(pN.source)),AN=function(){function E(a){var y=this;(0,gn.Z)(this,E),this.fontMetricsCache={},this.shouldBreakByKinsokuShorui=function(x,b){return y.isBreakingSpace(b)?!1:!!(x&&(EN.exec(b)||yN.exec(x)))},this.trimByKinsokuShorui=function(x){var b=(0,bn.Z)(x),z=b[b.length-2];if(!z)return x;var ee=z[z.length-1];return b[b.length-2]=z.slice(0,-1),b[b.length-1]=ee+b[b.length-1],b},this.runtime=a,this.charWidthCache=new LP(100)}return(0,cn.Z)(E,[{key:"measureFont",value:function(y,x){if(this.fontMetricsCache[y])return this.fontMetricsCache[y];var b={ascent:0,descent:0,fontSize:0},z=this.runtime.offscreenCanvasCreator.getOrCreateCanvas(x),ee=this.runtime.offscreenCanvasCreator.getOrCreateContext(x,{willReadFrequently:!0});ee.font=y;var re=cg.MetricsString+cg.BaselineSymbol,ae=Math.ceil(ee.measureText(re).width),se=Math.ceil(ee.measureText(cg.BaselineSymbol).width),fe=cg.HeightMultiplier*se;se=se*cg.BaselineMultiplier|0,z.width=ae,z.height=fe,ee.fillStyle="#f00",ee.fillRect(0,0,ae,fe),ee.font=y,ee.textBaseline="alphabetic",ee.fillStyle="#000",ee.fillText(re,0,se);var me=ee.getImageData(0,0,ae||1,fe||1).data,Ee=me.length,Oe=ae*4,ke=0,We=0,je=!1;for(ke=0;kese;--ke){for(var Ze=0;ZeAn&&Ln>=nr;)Ln-=1,xn=xn.slice(0,-1);return{lineTxt:xn,txtLastCharIndex:Ln}}function Yt(xn,Ln){if(!(Lt<=0||Lt>je)){if(!Ze[xn]){Ze[xn]=Ke;return}var nr=_t(Ze[xn],Ln,st+1,je-Lt);Ze[xn]=nr.lineTxt+Ke}}for(var $t=0;$t=Oe){$tje){Yt(Je,$t-1),x.isOverflowing=!0;break}if(tt>0&&tt+tr>je){var Cn=_t(Ze[Je],$t-1,st+1,je);if(Cn.txtLastCharIndex!==$t-1){if(Ze[Je]=Cn.lineTxt,Cn.txtLastCharIndex===ee.length-1)break;$t=Cn.txtLastCharIndex+1,En=ee[$t],on=ee[$t-1],Fn=ee[$t+1],tr=ct(En)}if(Je+1>=Oe){Yt(Je,$t-1),x.isOverflowing=!0;break}if(st=$t-1,Je+=1,tt=0,Ze[Je]="",this.isBreakingSpace(En))continue;this.canBreakInLastChar(En)||(Ze=this.trimToBreakable(Ze),tt=this.sumTextWidthByCache(Ze[Je]||"",ct)),this.shouldBreakByKinsokuShorui(En,Fn)&&(Ze=this.trimByKinsokuShorui(Ze),tt+=ct(on||""))}tt+=tr,Ze[Je]+=En}return Ze.join(` `)}},{key:"isBreakingSpace",value:function(y){return typeof y!="string"?!1:cg.BreakingSpaces.indexOf(y.charCodeAt(0))>=0}},{key:"isNewline",value:function(y){return typeof y!="string"?!1:cg.Newlines.indexOf(y.charCodeAt(0))>=0}},{key:"trimToBreakable",value:function(y){var x=(0,bn.Z)(y),b=x[x.length-2],z=this.findBreakableIndex(b);if(z===-1||!b)return x;var ee=b.slice(z,z+1),re=this.isBreakingSpace(ee),ae=z+1,se=z+(re?0:1);return x[x.length-1]+=b.slice(ae,b.length),x[x.length-2]=b.slice(0,se),x}},{key:"canBreakInLastChar",value:function(y){return!(y&&BP.test(y))}},{key:"sumTextWidthByCache",value:function(y,x){return y.split("").reduce(function(b,z){return b+x(z)},0)}},{key:"findBreakableIndex",value:function(y){for(var x=y.length-1;x>=0;x--)if(!BP.test(y[x]))return x;return-1}},{key:"getFromCache",value:function(y,x,b,z){var ee=b.get(y);if(typeof ee!="number"){var re=y.length*x,ae=z.measureText(y);ee=ae.width+re,b.put(y,ee)}return ee}},{key:"clearCache",value:function(){this.fontMetricsCache={},this.charWidthCache.clear()}}])}(),Qa={},xN=function(E){var a=new V6,y=new H6;return E={},(0,Gi.Z)((0,Gi.Z)((0,Gi.Z)((0,Gi.Z)((0,Gi.Z)((0,Gi.Z)((0,Gi.Z)((0,Gi.Z)((0,Gi.Z)((0,Gi.Z)(E,ga.FRAGMENT,null),ga.CIRCLE,new U6),ga.ELLIPSE,new W6),ga.RECT,a),ga.IMAGE,a),ga.GROUP,new Z6),ga.LINE,new j6),ga.TEXT,new K6(Qa)),ga.POLYLINE,y),ga.POLYGON,y),(0,Gi.Z)((0,Gi.Z)((0,Gi.Z)(E,ga.PATH,new G6),ga.HTML,new Q6),ga.MESH,null)}(),SN=function(E){var a=new qB,y=new GE;return E={},(0,Gi.Z)((0,Gi.Z)((0,Gi.Z)((0,Gi.Z)((0,Gi.Z)((0,Gi.Z)((0,Gi.Z)((0,Gi.Z)((0,Gi.Z)((0,Gi.Z)(E,Pi.PERCENTAGE,null),Pi.NUMBER,new r6),Pi.ANGLE,new XB),Pi.DEFINED_PATH,new JB),Pi.PAINT,a),Pi.COLOR,a),Pi.FILTER,new $B),Pi.LENGTH,y),Pi.LENGTH_PERCENTAGE,y),Pi.LENGTH_PERCENTAGE_12,new e6),(0,Gi.Z)((0,Gi.Z)((0,Gi.Z)((0,Gi.Z)((0,Gi.Z)((0,Gi.Z)((0,Gi.Z)((0,Gi.Z)((0,Gi.Z)((0,Gi.Z)(E,Pi.LENGTH_PERCENTAGE_14,new t6),Pi.COORDINATE,new GE),Pi.OFFSET_DISTANCE,new a6),Pi.OPACITY_VALUE,new i6),Pi.PATH,new o6),Pi.LIST_OF_POINTS,new s6),Pi.SHADOW_BLUR,new l6),Pi.TEXT,new u6),Pi.TEXT_TRANSFORM,new c6),Pi.TRANSFORM,new k6),(0,Gi.Z)((0,Gi.Z)((0,Gi.Z)(E,Pi.TRANSFORM_ORIGIN,new _6),Pi.Z_INDEX,new z6),Pi.MARKER,new n6)}(),bN=function(){return typeof globalThis!="undefined"?globalThis:typeof self!="undefined"?self:typeof window!="undefined"?window:typeof Ie.g!="undefined"?Ie.g:{}};Qa.CameraContribution=TC,Qa.AnimationTimeline=null,Qa.EasingFunction=null,Qa.offscreenCanvasCreator=new JE,Qa.sceneGraphSelector=new $6,Qa.sceneGraphService=new uN(Qa),Qa.textService=new AN(Qa),Qa.geometryUpdaterFactory=xN,Qa.CSSPropertySyntaxFactory=SN,Qa.styleValueRegistry=new QB(Qa),Qa.layoutRegistry=null,Qa.globalThis=bN(),Qa.enableStyleSyntax=!0,Qa.enableSizeAttenuation=!1;var NP=0;function iJ(){NP=0}var qE=new hf(Es.INSERTED,null,"","","",0,"",""),$E=new hf(Es.REMOVED,null,"","","",0,"",""),RP=new du(Es.DESTROY),CN=function(E){function a(){var y;(0,gn.Z)(this,a);for(var x=arguments.length,b=new Array(x),z=0;z0&&arguments[0]!==void 0?arguments[0]:!0,b=arguments.length>1?arguments[1]:void 0;this.renderable.dirty=x,b!==void 0&&(this.renderable.boundsDirty=b,this.renderable.renderBoundsDirty=b,this.geometry.dirty=b)}},{key:"className",get:function(){return this.getAttribute("class")||""},set:function(x){this.setAttribute("class",x)}},{key:"classList",get:function(){return this.className.split(" ").filter(function(x){return x!==""})}},{key:"tagName",get:function(){return this.nodeName}},{key:"children",get:function(){return this.childNodes}},{key:"childElementCount",get:function(){return this.childNodes.length}},{key:"firstElementChild",get:function(){return this.firstChild}},{key:"lastElementChild",get:function(){return this.lastChild}},{key:"parentElement",get:function(){return this.parentNode}},{key:"nextSibling",get:function(){if(this.parentNode){var x=this.parentNode.childNodes.indexOf(this);return this.parentNode.childNodes[x+1]||null}return null}},{key:"previousSibling",get:function(){if(this.parentNode){var x=this.parentNode.childNodes.indexOf(this);return this.parentNode.childNodes[x-1]||null}return null}},{key:"cloneNode",value:function(x){throw new Error(ll)}},{key:"appendChild",value:function(x,b){var z;if(x.destroyed)throw new Error(dL);return Qa.sceneGraphService.attach(x,this,b),(z=this.ownerDocument)!==null&&z!==void 0&&z.defaultView&&(!Um(this)&&x.nodeName===ga.FRAGMENT?this.ownerDocument.defaultView.mountFragment(x):this.ownerDocument.defaultView.mountChildren(x)),this.isMutationObserved&&(qE.relatedNode=this,x.dispatchEvent(qE)),x}},{key:"insertBefore",value:function(x,b){if(!b)this.appendChild(x);else{x.parentElement&&x.parentElement.removeChild(x);var z=this.childNodes.indexOf(b);z===-1?this.appendChild(x):this.appendChild(x,z)}return x}},{key:"replaceChild",value:function(x,b){var z=this.childNodes.indexOf(b);return this.removeChild(b),this.appendChild(x,z),b}},{key:"removeChild",value:function(x){var b,z,ee=((b=this.ownerDocument)===null||b===void 0||(b=b.defaultView)===null||b===void 0||(b=b.getConfig().future)===null||b===void 0?void 0:b.experimentalCancelEventPropagation)===!0;return $E.relatedNode=this,x.dispatchEvent($E,ee,ee),(z=x.ownerDocument)!==null&&z!==void 0&&z.defaultView&&x.ownerDocument.defaultView.unmountChildren(x),Qa.sceneGraphService.detach(x),x}},{key:"removeChildren",value:function(){for(var x=this.childNodes.length-1;x>=0;x--){var b=this.childNodes[x];this.removeChild(b)}}},{key:"destroyChildren",value:function(){for(var x=this.childNodes.length-1;x>=0;x--){var b=this.childNodes[x];b.childNodes.length>0&&b.destroyChildren(),b.destroy()}}},{key:"matches",value:function(x){return Qa.sceneGraphService.matches(x,this)}},{key:"getElementById",value:function(x){return Qa.sceneGraphService.querySelector("#".concat(x),this)}},{key:"getElementsByName",value:function(x){return Qa.sceneGraphService.querySelectorAll('[name="'.concat(x,'"]'),this)}},{key:"getElementsByClassName",value:function(x){return Qa.sceneGraphService.querySelectorAll(".".concat(x),this)}},{key:"getElementsByTagName",value:function(x){return Qa.sceneGraphService.querySelectorAll(x,this)}},{key:"querySelector",value:function(x){return Qa.sceneGraphService.querySelector(x,this)}},{key:"querySelectorAll",value:function(x){return Qa.sceneGraphService.querySelectorAll(x,this)}},{key:"closest",value:function(x){var b=this;do{if(Qa.sceneGraphService.matches(x,b))return b;b=b.parentElement}while(b!==null);return null}},{key:"find",value:function(x){var b=this,z=null;return this.forEach(function(ee){return ee!==b&&x(ee)?(z=ee,!1):!0}),z}},{key:"findAll",value:function(x){var b=this,z=[];return this.forEach(function(ee){ee!==b&&x(ee)&&z.push(ee)}),z}},{key:"after",value:function(){var x=this;if(this.parentNode){for(var b=this.parentNode.childNodes.indexOf(this),z=arguments.length,ee=new Array(z),re=0;re0&&arguments[0]!==void 0?arguments[0]:!1;return Qa.sceneGraphService.getGeometryBounds(this,x)}},{key:"getTransformedGeometryBounds",value:function(){var x=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;return Qa.sceneGraphService.getTransformedGeometryBounds(this,x)}},{key:"getBounds",value:function(){return Qa.sceneGraphService.getBounds(this)}},{key:"getRenderBounds",value:function(){return Qa.sceneGraphService.getBounds(this,!0)}},{key:"getLocalBounds",value:function(){return Qa.sceneGraphService.getLocalBounds(this)}},{key:"getBoundingClientRect",value:function(){return Qa.sceneGraphService.getBoundingClientRect(this)}},{key:"getClientRects",value:function(){return[this.getBoundingClientRect()]}},{key:"computedStyleMap",value:function(){return new Map(Object.entries(this.computedStyle))}},{key:"getAttributeNames",value:function(){return Object.keys(this.attributes)}},{key:"getAttribute",value:function(x){if(typeof x!="symbol"){var b=this.attributes[x];return b}}},{key:"hasAttribute",value:function(x){return this.getAttributeNames().includes(x)}},{key:"hasAttributes",value:function(){return!!this.getAttributeNames().length}},{key:"removeAttribute",value:function(x){this.setAttribute(x,null),delete this.attributes[x]}},{key:"setAttribute",value:function(x,b){this.attributes[x]=b}},{key:"getAttributeNS",value:function(x,b){throw new Error(ll)}},{key:"getAttributeNode",value:function(x){throw new Error(ll)}},{key:"getAttributeNodeNS",value:function(x,b){throw new Error(ll)}},{key:"hasAttributeNS",value:function(x,b){throw new Error(ll)}},{key:"removeAttributeNS",value:function(x,b){throw new Error(ll)}},{key:"removeAttributeNode",value:function(x){throw new Error(ll)}},{key:"setAttributeNS",value:function(x,b,z){throw new Error(ll)}},{key:"setAttributeNode",value:function(x){throw new Error(ll)}},{key:"setAttributeNodeNS",value:function(x){throw new Error(ll)}},{key:"toggleAttribute",value:function(x,b){throw new Error(ll)}}])}(Il);function Ks(E){return!!(E!=null&&E.nodeName)}var PN=Qa.globalThis.Proxy?Qa.globalThis.Proxy:function(){},gf=new hf(Es.ATTR_MODIFIED,null,null,null,null,hf.MODIFICATION,null,null),cv=na(),wN=cu(),yl=function(E){function a(y){var x;return(0,gn.Z)(this,a),x=ir(this,a),x.isCustomElement=!1,x.isMutationObserved=!1,x.activeAnimations=[],x.config=y,x.id=y.id||"",x.name=y.name||"",(y.className||y.class)&&(x.className=y.className||y.class),x.nodeName=y.type||ga.GROUP,y.initialParsedStyle&&Object.assign(x.parsedStyle,y.initialParsedStyle),x.initAttributes(y.style),Qa.enableStyleSyntax&&(x.style=new PN({setProperty:function(z,ee){x.setAttribute(z,ee)},getPropertyValue:function(z){return x.getAttribute(z)},removeProperty:function(z){x.removeAttribute(z)},item:function(){return""}},{get:function(z,ee){return z[ee]!==void 0?z[ee]:x.getAttribute(ee)},set:function(z,ee,re){return x.setAttribute(ee,re),!0}})),x}return(0,xr.Z)(a,E),(0,cn.Z)(a,[{key:"destroy",value:function(){lC(a,"destroy",this,3)([]),this.getAnimations().forEach(function(x){x.cancel()})}},{key:"cloneNode",value:function(x,b){var z=(0,hn.Z)({},this.attributes);for(var ee in z){var re=z[ee];Ks(re)&&ee!=="clipPath"&&ee!=="offsetPath"&&ee!=="textPath"&&(z[ee]=re.cloneNode(x)),b&&(z[ee]=b(ee,re))}var ae=new this.constructor((0,hn.Z)((0,hn.Z)({},this.config),{},{style:z}));return ae.setLocalTransform(this.getLocalTransform()),x&&this.children.forEach(function(se){if(!se.style.isMarker){var fe=se.cloneNode(x);ae.appendChild(fe)}}),ae}},{key:"initAttributes",value:function(){var x=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},b={forceUpdateGeometry:!0};Qa.styleValueRegistry.processProperties(this,x,b),this.dirty()}},{key:"setAttribute",value:function(x,b){var z=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,ee=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0;jo(b)||(z||b!==this.attributes[x])&&(this.internalSetAttribute(x,b,{memoize:ee}),lC(a,"setAttribute",this,3)([x,b]))}},{key:"internalSetAttribute",value:function(x,b){var z=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},ee=this.attributes[x],re=this.parsedStyle[x];Qa.styleValueRegistry.processProperties(this,(0,Gi.Z)({},x,b),z),this.dirty();var ae=this.parsedStyle[x];if(this.isConnected)if(gf.relatedNode=this,gf.prevValue=ee,gf.newValue=b,gf.attrName=x,gf.prevParsedValue=re,gf.newParsedValue=ae,this.isMutationObserved)this.dispatchEvent(gf);else{var se,fe=((se=this.ownerDocument.defaultView.getConfig().future)===null||se===void 0?void 0:se.experimentalCancelEventPropagation)===!0;gf.target=this,this.ownerDocument.defaultView.dispatchEvent(gf,!0,fe)}if(this.isCustomElement&&this.isConnected||!this.isCustomElement){var me,Ee;(me=(Ee=this).attributeChangedCallback)===null||me===void 0||me.call(Ee,x,ee,b,re,ae)}}},{key:"getBBox",value:function(){var x=this.getBounds(),b=x.getMin(),z=(0,ia.Z)(b,2),ee=z[0],re=z[1],ae=x.getMax(),se=(0,ia.Z)(ae,2),fe=se[0],me=se[1];return new o0(ee,re,fe-ee,me-re)}},{key:"setOrigin",value:function(x){var b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,z=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return Qa.sceneGraphService.setOrigin(this,oc(x,b,z,!1)),this}},{key:"getOrigin",value:function(){return Qa.sceneGraphService.getOrigin(this)}},{key:"setPosition",value:function(x){var b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,z=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return Qa.sceneGraphService.setPosition(this,oc(x,b,z,!1)),this}},{key:"setLocalPosition",value:function(x){var b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,z=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return Qa.sceneGraphService.setLocalPosition(this,oc(x,b,z,!1)),this}},{key:"translate",value:function(x){var b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,z=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return Qa.sceneGraphService.translate(this,oc(x,b,z,!1)),this}},{key:"translateLocal",value:function(x){var b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,z=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return Qa.sceneGraphService.translateLocal(this,oc(x,b,z,!1)),this}},{key:"getPosition",value:function(){return Qa.sceneGraphService.getPosition(this)}},{key:"getLocalPosition",value:function(){return Qa.sceneGraphService.getLocalPosition(this)}},{key:"scale",value:function(x,b,z){return this.scaleLocal(x,b,z)}},{key:"scaleLocal",value:function(x,b,z){return typeof x=="number"&&(b=b||x,z=z||x,x=oc(x,b,z,!1)),Qa.sceneGraphService.scaleLocal(this,x),this}},{key:"setLocalScale",value:function(x,b,z){return typeof x=="number"&&(b=b||x,z=z||x,x=oc(x,b,z,!1)),Qa.sceneGraphService.setLocalScale(this,x),this}},{key:"getLocalScale",value:function(){return Qa.sceneGraphService.getLocalScale(this)}},{key:"getScale",value:function(){return Qa.sceneGraphService.getScale(this)}},{key:"getEulerAngles",value:function(){var x=CE(cv,Qa.sceneGraphService.getWorldTransform(this)),b=(0,ia.Z)(x,3),z=b[2];return Pc(z)}},{key:"getLocalEulerAngles",value:function(){var x=CE(cv,Qa.sceneGraphService.getLocalRotation(this)),b=(0,ia.Z)(x,3),z=b[2];return Pc(z)}},{key:"setEulerAngles",value:function(x){return Qa.sceneGraphService.setEulerAngles(this,0,0,x),this}},{key:"setLocalEulerAngles",value:function(x){return Qa.sceneGraphService.setLocalEulerAngles(this,0,0,x),this}},{key:"rotateLocal",value:function(x,b,z){return wo(b)&&wo(z)?Qa.sceneGraphService.rotateLocal(this,0,0,x):Qa.sceneGraphService.rotateLocal(this,x,b,z),this}},{key:"rotate",value:function(x,b,z){return wo(b)&&wo(z)?Qa.sceneGraphService.rotate(this,0,0,x):Qa.sceneGraphService.rotate(this,x,b,z),this}},{key:"setRotation",value:function(x,b,z,ee){return Qa.sceneGraphService.setRotation(this,x,b,z,ee),this}},{key:"setLocalRotation",value:function(x,b,z,ee){return Qa.sceneGraphService.setLocalRotation(this,x,b,z,ee),this}},{key:"setLocalSkew",value:function(x,b){return Qa.sceneGraphService.setLocalSkew(this,x,b),this}},{key:"getRotation",value:function(){return Qa.sceneGraphService.getRotation(this)}},{key:"getLocalRotation",value:function(){return Qa.sceneGraphService.getLocalRotation(this)}},{key:"getLocalSkew",value:function(){return Qa.sceneGraphService.getLocalSkew(this)}},{key:"getLocalTransform",value:function(){return Qa.sceneGraphService.getLocalTransform(this)}},{key:"getWorldTransform",value:function(){return Qa.sceneGraphService.getWorldTransform(this)}},{key:"setLocalTransform",value:function(x){return Qa.sceneGraphService.setLocalTransform(this,x),this}},{key:"resetLocalTransform",value:function(){Qa.sceneGraphService.resetLocalTransform(this)}},{key:"getAnimations",value:function(){return this.activeAnimations}},{key:"animate",value:function(x,b){var z,ee=(z=this.ownerDocument)===null||z===void 0?void 0:z.timeline;return ee?ee.play(this,x,b):null}},{key:"isVisible",value:function(){var x;return((x=this.parsedStyle)===null||x===void 0?void 0:x.visibility)!=="hidden"}},{key:"interactive",get:function(){return this.isInteractive()},set:function(x){this.style.pointerEvents=x?"auto":"none"}},{key:"isInteractive",value:function(){var x;return((x=this.parsedStyle)===null||x===void 0?void 0:x.pointerEvents)!=="none"}},{key:"isCulled",value:function(){return!!(this.cullable&&this.cullable.enable&&!this.cullable.visible)}},{key:"toFront",value:function(){return this.parentNode&&(this.style.zIndex=Math.max.apply(Math,(0,bn.Z)(this.parentNode.children.map(function(x){return Number(x.style.zIndex)})))+1),this}},{key:"toBack",value:function(){return this.parentNode&&(this.style.zIndex=Math.min.apply(Math,(0,bn.Z)(this.parentNode.children.map(function(x){return Number(x.style.zIndex)})))-1),this}},{key:"getConfig",value:function(){return this.config}},{key:"attr",value:function(){for(var x=this,b=arguments.length,z=new Array(b),ee=0;ee1&&arguments[1]!==void 0?arguments[1]:0,z=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return this.setPosition(x,b,z),this}},{key:"move",value:function(x){var b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,z=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return this.setPosition(x,b,z),this}},{key:"setZIndex",value:function(x){return this.style.zIndex=x,this}}])}(CN);yl.PARSED_STYLE_LIST=new Set(["class","className","clipPath","cursor","display","draggable","droppable","fill","fillOpacity","fillRule","filter","increasedLineWidthForHitTesting","lineCap","lineDash","lineDashOffset","lineJoin","lineWidth","miterLimit","hitArea","offsetDistance","offsetPath","offsetX","offsetY","opacity","pointerEvents","shadowColor","shadowType","shadowBlur","shadowOffsetX","shadowOffsetY","stroke","strokeOpacity","strokeWidth","strokeLinecap","strokeLineJoin","strokeDasharray","strokeDashoffset","transform","transformOrigin","textTransform","visibility","zIndex"]);var vf=function(E){function a(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return(0,gn.Z)(this,a),ir(this,a,[(0,hn.Z)({type:ga.CIRCLE},y)])}return(0,xr.Z)(a,E),(0,cn.Z)(a)}(yl);vf.PARSED_STYLE_LIST=new Set([].concat((0,bn.Z)(yl.PARSED_STYLE_LIST),["cx","cy","cz","r","isBillboard","isSizeAttenuation"]));var MN=["style"],eA=function(E){function a(){var y,x=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},b=x.style,z=(0,eg.Z)(x,MN);return(0,gn.Z)(this,a),y=ir(this,a,[(0,hn.Z)({style:b},z)]),y.isCustomElement=!0,y}return(0,xr.Z)(a,E),(0,cn.Z)(a)}(yl);eA.PARSED_STYLE_LIST=new Set(["class","className","clipPath","cursor","draggable","droppable","opacity","pointerEvents","transform","transformOrigin","zIndex","visibility"]);var dv=function(E){function a(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return(0,gn.Z)(this,a),ir(this,a,[(0,hn.Z)({type:ga.ELLIPSE},y)])}return(0,xr.Z)(a,E),(0,cn.Z)(a)}(yl);dv.PARSED_STYLE_LIST=new Set([].concat((0,bn.Z)(yl.PARSED_STYLE_LIST),["cx","cy","cz","rx","ry","isBillboard","isSizeAttenuation"]));var DN=function(E){function a(){return(0,gn.Z)(this,a),ir(this,a,[{type:ga.FRAGMENT}])}return(0,xr.Z)(a,E),(0,cn.Z)(a)}(yl);DN.PARSED_STYLE_LIST=new Set(["class","className"]);var Eu=function(E){function a(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return(0,gn.Z)(this,a),ir(this,a,[(0,hn.Z)({type:ga.GROUP},y)])}return(0,xr.Z)(a,E),(0,cn.Z)(a)}(yl);Eu.PARSED_STYLE_LIST=new Set(["class","className","clipPath","cursor","draggable","droppable","opacity","pointerEvents","transform","transformOrigin","zIndex","visibility"]);var IN=["style"],dg=function(E){function a(){var y,x=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},b=x.style,z=(0,eg.Z)(x,IN);return(0,gn.Z)(this,a),y=ir(this,a,[(0,hn.Z)({type:ga.HTML,style:b},z)]),y.cullable.enable=!1,y}return(0,xr.Z)(a,E),(0,cn.Z)(a,[{key:"getDomElement",value:function(){return this.parsedStyle.$el}},{key:"getClientRects",value:function(){return[this.getBoundingClientRect()]}},{key:"getLocalBounds",value:function(){if(this.parentNode){var x=Gl(ol(),this.parentNode.getWorldTransform()),b=this.getBounds();if(!pl.isEmpty(b)){var z=new pl;return z.setFromTransformedAABB(b,x),z}}return this.getBounds()}}])}(yl);dg.PARSED_STYLE_LIST=new Set([].concat((0,bn.Z)(yl.PARSED_STYLE_LIST),["x","y","$el","innerHTML","width","height"]));var fv=function(E){function a(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return(0,gn.Z)(this,a),ir(this,a,[(0,hn.Z)({type:ga.IMAGE},y)])}return(0,xr.Z)(a,E),(0,cn.Z)(a)}(yl);fv.PARSED_STYLE_LIST=new Set([].concat((0,bn.Z)(yl.PARSED_STYLE_LIST),["x","y","z","src","width","height","isBillboard","billboardRotation","isSizeAttenuation","keepAspectRatio"]));var TN=["style"],fg=function(E){function a(){var y,x=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},b=x.style,z=(0,eg.Z)(x,TN);(0,gn.Z)(this,a),y=ir(this,a,[(0,hn.Z)({type:ga.LINE,style:(0,hn.Z)({x1:0,y1:0,x2:0,y2:0,z1:0,z2:0},b)},z)]),y.markerStartAngle=0,y.markerEndAngle=0;var ee=y.parsedStyle,re=ee.markerStart,ae=ee.markerEnd;return re&&Ks(re)&&(y.markerStartAngle=re.getLocalEulerAngles(),y.appendChild(re)),ae&&Ks(ae)&&(y.markerEndAngle=ae.getLocalEulerAngles(),y.appendChild(ae)),y.transformMarker(!0),y.transformMarker(!1),y}return(0,xr.Z)(a,E),(0,cn.Z)(a,[{key:"attributeChangedCallback",value:function(x,b,z,ee,re){x==="x1"||x==="y1"||x==="x2"||x==="y2"||x==="markerStartOffset"||x==="markerEndOffset"?(this.transformMarker(!0),this.transformMarker(!1)):x==="markerStart"?(ee&&Ks(ee)&&(this.markerStartAngle=0,ee.remove()),re&&Ks(re)&&(this.markerStartAngle=re.getLocalEulerAngles(),this.appendChild(re),this.transformMarker(!0))):x==="markerEnd"&&(ee&&Ks(ee)&&(this.markerEndAngle=0,ee.remove()),re&&Ks(re)&&(this.markerEndAngle=re.getLocalEulerAngles(),this.appendChild(re),this.transformMarker(!1)))}},{key:"transformMarker",value:function(x){var b=this.parsedStyle,z=b.markerStart,ee=b.markerEnd,re=b.markerStartOffset,ae=b.markerEndOffset,se=b.x1,fe=b.x2,me=b.y1,Ee=b.y2,Oe=x?z:ee;if(!(!Oe||!Ks(Oe))){var ke=0,We,je,Ke,Ze,Je,tt;x?(Ke=se,Ze=me,We=fe-se,je=Ee-me,Je=re||0,tt=this.markerStartAngle):(Ke=fe,Ze=Ee,We=se-fe,je=me-Ee,Je=ae||0,tt=this.markerEndAngle),ke=Math.atan2(je,We),Oe.setLocalEulerAngles(ke*180/Math.PI+tt),Oe.setLocalPosition(Ke+Math.cos(ke)*Je,Ze+Math.sin(ke)*Je)}}},{key:"getPoint",value:function(x){var b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,z=this.parsedStyle,ee=z.x1,re=z.y1,ae=z.x2,se=z.y2,fe=uf(ee,re,ae,se,x),me=fe.x,Ee=fe.y,Oe=ql(na(),_r(me,Ee,0),b?this.getWorldTransform():this.getLocalTransform());return new _u(Oe[0],Oe[1])}},{key:"getPointAtLength",value:function(x){var b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return this.getPoint(x/this.getTotalLength(),b)}},{key:"getTotalLength",value:function(){var x=this.parsedStyle,b=x.x1,z=x.y1,ee=x.x2,re=x.y2;return gC(b,z,ee,re)}}])}(yl);fg.PARSED_STYLE_LIST=new Set([].concat((0,bn.Z)(yl.PARSED_STYLE_LIST),["x1","y1","x2","y2","z1","z2","isBillboard","isSizeAttenuation","markerStart","markerEnd","markerStartOffset","markerEndOffset"]));var ON=["style"],Hc=function(E){function a(){var y,x=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},b=x.style,z=(0,eg.Z)(x,ON);(0,gn.Z)(this,a),y=ir(this,a,[(0,hn.Z)({type:ga.PATH,style:b,initialParsedStyle:{miterLimit:4,d:(0,hn.Z)({},LC)}},z)]),y.markerStartAngle=0,y.markerEndAngle=0,y.markerMidList=[];var ee=y.parsedStyle,re=ee.markerStart,ae=ee.markerEnd,se=ee.markerMid;return re&&Ks(re)&&(y.markerStartAngle=re.getLocalEulerAngles(),y.appendChild(re)),se&&Ks(se)&&y.placeMarkerMid(se),ae&&Ks(ae)&&(y.markerEndAngle=ae.getLocalEulerAngles(),y.appendChild(ae)),y.transformMarker(!0),y.transformMarker(!1),y}return(0,xr.Z)(a,E),(0,cn.Z)(a,[{key:"attributeChangedCallback",value:function(x,b,z,ee,re){x==="d"?(this.transformMarker(!0),this.transformMarker(!1),this.placeMarkerMid(this.parsedStyle.markerMid)):x==="markerStartOffset"||x==="markerEndOffset"?(this.transformMarker(!0),this.transformMarker(!1)):x==="markerStart"?(ee&&Ks(ee)&&(this.markerStartAngle=0,ee.remove()),re&&Ks(re)&&(this.markerStartAngle=re.getLocalEulerAngles(),this.appendChild(re),this.transformMarker(!0))):x==="markerEnd"?(ee&&Ks(ee)&&(this.markerEndAngle=0,ee.remove()),re&&Ks(re)&&(this.markerEndAngle=re.getLocalEulerAngles(),this.appendChild(re),this.transformMarker(!1))):x==="markerMid"&&this.placeMarkerMid(re)}},{key:"transformMarker",value:function(x){var b=this.parsedStyle,z=b.markerStart,ee=b.markerEnd,re=b.markerStartOffset,ae=b.markerEndOffset,se=x?z:ee;if(!(!se||!Ks(se))){var fe=0,me,Ee,Oe,ke,We,je;if(x){var Ke=this.getStartTangent(),Ze=(0,ia.Z)(Ke,2),Je=Ze[0],tt=Ze[1];Oe=tt[0],ke=tt[1],me=Je[0]-tt[0],Ee=Je[1]-tt[1],We=re||0,je=this.markerStartAngle}else{var st=this.getEndTangent(),gt=(0,ia.Z)(st,2),mt=gt[0],ct=gt[1];Oe=ct[0],ke=ct[1],me=mt[0]-ct[0],Ee=mt[1]-ct[1],We=ae||0,je=this.markerEndAngle}fe=Math.atan2(Ee,me),se.setLocalEulerAngles(fe*180/Math.PI+je),se.setLocalPosition(Oe+Math.cos(fe)*We,ke+Math.sin(fe)*We)}}},{key:"placeMarkerMid",value:function(x){var b=this.parsedStyle.d.segments;if(this.markerMidList.forEach(function(fe){fe.remove()}),x&&Ks(x))for(var z=1;z1&&arguments[1]!==void 0?arguments[1]:!1,z=this.parsedStyle.d.absolutePath,ee=RO(z,x),re=ee.x,ae=ee.y,se=ql(na(),_r(re,ae,0),b?this.getWorldTransform():this.getLocalTransform());return new _u(se[0],se[1])}},{key:"getPoint",value:function(x){var b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return this.getPointAtLength(x*kE(this),b)}},{key:"getStartTangent",value:function(){var x=this.parsedStyle.d.segments,b=[];if(x.length>1){var z=x[0].currentPoint,ee=x[1].currentPoint,re=x[1].startTangent;b=[],re?(b.push([z[0]-re[0],z[1]-re[1]]),b.push([z[0],z[1]])):(b.push([ee[0],ee[1]]),b.push([z[0],z[1]]))}return b}},{key:"getEndTangent",value:function(){var x=this.parsedStyle.d.segments,b=x.length,z=[];if(b>1){var ee=x[b-2].currentPoint,re=x[b-1].currentPoint,ae=x[b-1].endTangent;z=[],ae?(z.push([re[0]-ae[0],re[1]-ae[1]]),z.push([re[0],re[1]])):(z.push([ee[0],ee[1]]),z.push([re[0],re[1]]))}return z}}])}(yl);Hc.PARSED_STYLE_LIST=new Set([].concat((0,bn.Z)(yl.PARSED_STYLE_LIST),["d","markerStart","markerMid","markerEnd","markerStartOffset","markerEndOffset","isBillboard","isSizeAttenuation"]));var LN=["style"],hg=function(E){function a(){var y,x=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},b=x.style,z=(0,eg.Z)(x,LN);(0,gn.Z)(this,a),y=ir(this,a,[(0,hn.Z)({type:ga.POLYGON,style:b,initialParsedStyle:{points:{points:[],totalLength:0,segments:[]},miterLimit:4,isClosed:!0}},z)]),y.markerStartAngle=0,y.markerEndAngle=0,y.markerMidList=[];var ee=y.parsedStyle,re=ee.markerStart,ae=ee.markerEnd,se=ee.markerMid;return re&&Ks(re)&&(y.markerStartAngle=re.getLocalEulerAngles(),y.appendChild(re)),se&&Ks(se)&&y.placeMarkerMid(se),ae&&Ks(ae)&&(y.markerEndAngle=ae.getLocalEulerAngles(),y.appendChild(ae)),y.transformMarker(!0),y.transformMarker(!1),y}return(0,xr.Z)(a,E),(0,cn.Z)(a,[{key:"attributeChangedCallback",value:function(x,b,z,ee,re){x==="points"?(this.transformMarker(!0),this.transformMarker(!1),this.placeMarkerMid(this.parsedStyle.markerMid)):x==="markerStartOffset"||x==="markerEndOffset"?(this.transformMarker(!0),this.transformMarker(!1)):x==="markerStart"?(ee&&Ks(ee)&&(this.markerStartAngle=0,ee.remove()),re&&Ks(re)&&(this.markerStartAngle=re.getLocalEulerAngles(),this.appendChild(re),this.transformMarker(!0))):x==="markerEnd"?(ee&&Ks(ee)&&(this.markerEndAngle=0,ee.remove()),re&&Ks(re)&&(this.markerEndAngle=re.getLocalEulerAngles(),this.appendChild(re),this.transformMarker(!1))):x==="markerMid"&&this.placeMarkerMid(re)}},{key:"transformMarker",value:function(x){var b=this.parsedStyle,z=b.markerStart,ee=b.markerEnd,re=b.markerStartOffset,ae=b.markerEndOffset,se=b.points,fe=se||{},me=fe.points,Ee=x?z:ee;if(!(!Ee||!Ks(Ee)||!me)){var Oe=0,ke,We,je,Ke,Ze,Je;if(je=me[0][0],Ke=me[0][1],x)ke=me[1][0]-me[0][0],We=me[1][1]-me[0][1],Ze=re||0,Je=this.markerStartAngle;else{var tt=me.length;this.parsedStyle.isClosed?(ke=me[tt-1][0]-me[0][0],We=me[tt-1][1]-me[0][1]):(je=me[tt-1][0],Ke=me[tt-1][1],ke=me[tt-2][0]-me[tt-1][0],We=me[tt-2][1]-me[tt-1][1]),Ze=ae||0,Je=this.markerEndAngle}Oe=Math.atan2(We,ke),Ee.setLocalEulerAngles(Oe*180/Math.PI+Je),Ee.setLocalPosition(je+Math.cos(Oe)*Ze,Ke+Math.sin(Oe)*Ze)}}},{key:"placeMarkerMid",value:function(x){var b=this.parsedStyle.points,z=b||{},ee=z.points;if(this.markerMidList.forEach(function(me){me.remove()}),this.markerMidList=[],x&&Ks(x)&&ee)for(var re=1;re<(this.parsedStyle.isClosed?ee.length:ee.length-1);re++){var ae=ee[re][0],se=ee[re][1],fe=re===1?x:x.cloneNode(!0);this.markerMidList.push(fe),this.appendChild(fe),fe.setLocalPosition(ae,se)}}}])}(yl);hg.PARSED_STYLE_LIST=new Set([].concat((0,bn.Z)(yl.PARSED_STYLE_LIST),["points","markerStart","markerMid","markerEnd","markerStartOffset","markerEndOffset","isClosed","isBillboard","isSizeAttenuation"]));var BN=["style"],Km=function(E){function a(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},x=y.style,b=(0,eg.Z)(y,BN);return(0,gn.Z)(this,a),ir(this,a,[(0,hn.Z)({type:ga.POLYLINE,style:x,initialParsedStyle:{points:{points:[],totalLength:0,segments:[]},miterLimit:4,isClosed:!1}},b)])}return(0,xr.Z)(a,E),(0,cn.Z)(a,[{key:"getTotalLength",value:function(){return xB(this)}},{key:"getPointAtLength",value:function(x){var b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return this.getPoint(x/this.getTotalLength(),b)}},{key:"getPoint",value:function(x){var b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,z=this.parsedStyle.points.points;if(this.parsedStyle.points.segments.length===0){var ee=[],re=0,ae,se,fe=this.getTotalLength();z.forEach(function(Ke,Ze){z[Ze+1]&&(ae=[0,0],ae[0]=re/fe,se=gC(Ke[0],Ke[1],z[Ze+1][0],z[Ze+1][1]),re+=se,ae[1]=re/fe,ee.push(ae))}),this.parsedStyle.points.segments=ee}var me=0,Ee=0;this.parsedStyle.points.segments.forEach(function(Ke,Ze){x>=Ke[0]&&x<=Ke[1]&&(me=(x-Ke[0])/(Ke[1]-Ke[0]),Ee=Ze)});var Oe=uf(z[Ee][0],z[Ee][1],z[Ee+1][0],z[Ee+1][1],me),ke=Oe.x,We=Oe.y,je=ql(na(),_r(ke,We,0),b?this.getWorldTransform():this.getLocalTransform());return new _u(je[0],je[1])}},{key:"getStartTangent",value:function(){var x=this.parsedStyle.points.points,b=[];return b.push([x[1][0],x[1][1]]),b.push([x[0][0],x[0][1]]),b}},{key:"getEndTangent",value:function(){var x=this.parsedStyle.points.points,b=x.length-1,z=[];return z.push([x[b-1][0],x[b-1][1]]),z.push([x[b][0],x[b][1]]),z}}])}(hg);Km.PARSED_STYLE_LIST=new Set([].concat((0,bn.Z)(hg.PARSED_STYLE_LIST),["points","markerStart","markerMid","markerEnd","markerStartOffset","markerEndOffset","isBillboard"]));var zu=function(E){function a(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return(0,gn.Z)(this,a),ir(this,a,[(0,hn.Z)({type:ga.RECT},y)])}return(0,xr.Z)(a,E),(0,cn.Z)(a)}(yl);zu.PARSED_STYLE_LIST=new Set([].concat((0,bn.Z)(yl.PARSED_STYLE_LIST),["x","y","z","width","height","isBillboard","isSizeAttenuation","radius"]));var NN=["style"],gg=function(E){function a(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},x=y.style,b=(0,eg.Z)(y,NN);return(0,gn.Z)(this,a),ir(this,a,[(0,hn.Z)({type:ga.TEXT,style:(0,hn.Z)({fill:"black"},x)},b)])}return(0,xr.Z)(a,E),(0,cn.Z)(a,[{key:"getComputedTextLength",value:function(){var x;return this.getGeometryBounds(),((x=this.parsedStyle.metrics)===null||x===void 0?void 0:x.maxLineWidth)||0}},{key:"getLineBoundingRects",value:function(){var x;return this.getGeometryBounds(),((x=this.parsedStyle.metrics)===null||x===void 0?void 0:x.lineMetrics)||[]}},{key:"isOverflowing",value:function(){return this.getGeometryBounds(),!!this.parsedStyle.isOverflowing}}])}(yl);gg.PARSED_STYLE_LIST=new Set([].concat((0,bn.Z)(yl.PARSED_STYLE_LIST),["x","y","z","isBillboard","billboardRotation","isSizeAttenuation","text","textAlign","textBaseline","fontStyle","fontSize","fontFamily","fontWeight","fontVariant","lineHeight","letterSpacing","leading","wordWrap","wordWrapWidth","maxLines","textOverflow","isOverflowing","textPath","textDecorationLine","textDecorationColor","textDecorationStyle","textDecorationThickness","textPathSide","textPathStartOffset","metrics","dx","dy"]));var RN=function(){function E(){(0,gn.Z)(this,E),this.registry={},this.define(ga.CIRCLE,vf),this.define(ga.ELLIPSE,dv),this.define(ga.RECT,zu),this.define(ga.IMAGE,fv),this.define(ga.LINE,fg),this.define(ga.GROUP,Eu),this.define(ga.PATH,Hc),this.define(ga.POLYGON,hg),this.define(ga.POLYLINE,Km),this.define(ga.TEXT,gg),this.define(ga.HTML,dg)}return(0,cn.Z)(E,[{key:"define",value:function(y,x){this.registry[y]=x}},{key:"get",value:function(y){return this.registry[y]}}])}(),oJ={number:function(a){return new dl(a)},percent:function(a){return new dl(a,"%")},px:function(a){return new dl(a,"px")},em:function(a){return new dl(a,"em")},rem:function(a){return new dl(a,"rem")},deg:function(a){return new dl(a,"deg")},grad:function(a){return new dl(a,"grad")},rad:function(a){return new dl(a,"rad")},turn:function(a){return new dl(a,"turn")},s:function(a){return new dl(a,"s")},ms:function(a){return new dl(a,"ms")},registerProperty:function(a){var y=a.name,x=a.inherits,b=a.interpolable,z=a.initialValue,ee=a.syntax;Qa.styleValueRegistry.registerMetadata({n:y,inh:x,int:b,d:z,syntax:ee})},registerLayout:function(a,y){Qa.layoutRegistry.registerLayout(a,y)}},FP=function(E){function a(){var y;(0,gn.Z)(this,a),y=ir(this,a),y.defaultView=null,y.ownerDocument=null,y.nodeName="document";try{y.timeline=new Qa.AnimationTimeline(y)}catch(b){}var x={};return jE.forEach(function(b){var z=b.n,ee=b.inh,re=b.d;ee&&re&&(x[z]=$i(re)?re(ga.GROUP):re)}),y.documentElement=new Eu({id:"g-root",style:x}),y.documentElement.ownerDocument=y,y.documentElement.parentNode=y,y.childNodes=[y.documentElement],y}return(0,xr.Z)(a,E),(0,cn.Z)(a,[{key:"children",get:function(){return this.childNodes}},{key:"childElementCount",get:function(){return this.childNodes.length}},{key:"firstElementChild",get:function(){return this.firstChild}},{key:"lastElementChild",get:function(){return this.lastChild}},{key:"createElement",value:function(x,b){if(x==="svg")return this.documentElement;var z=this.defaultView.customElements.get(x);z||(console.warn("Unsupported tagName: ",x),z=x==="tspan"?gg:Eu);var ee=new z(b);return ee.ownerDocument=this,ee}},{key:"createElementNS",value:function(x,b,z){return this.createElement(b,z)}},{key:"cloneNode",value:function(x){throw new Error(ll)}},{key:"destroy",value:function(){try{this.documentElement.destroyChildren(),this.timeline.destroy()}catch(x){}}},{key:"elementsFromBBox",value:function(x,b,z,ee){var re=[],ae=function(fe){if(!(!fe.isInteractive()||fe.isCulled())){var me=fe.parsedStyle.pointerEvents,Ee=me===void 0?"auto":me,Oe=["auto","visiblepainted","visiblefill","visiblestroke","visible"].includes(Ee);if(!Oe||fe.isVisible()){var ke=fe.getTransformedGeometryBounds(!0);ke&&!pl.isEmpty(ke)&&ke.max[0]>=x&&ke.min[0]<=z&&ke.max[1]>=b&&ke.min[1]<=ee&&re.push(fe)}fe.childNodes&&fe.childNodes.forEach(function(We){We instanceof yl&&ae(We)})}};return ae(this.documentElement),re.sort(function(se,fe){return fe.sortable.renderOrder-se.sortable.renderOrder}),re}},{key:"elementFromPointSync",value:function(x,b){var z=this.defaultView.canvas2Viewport({x,y:b}),ee=z.x,re=z.y,ae=this.defaultView.getConfig(),se=ae.width,fe=ae.height;if(ee<0||re<0||ee>se||re>fe)return null;var me=this.defaultView.viewport2Client({x:ee,y:re}),Ee=me.x,Oe=me.y,ke=this.defaultView.getRenderingService().hooks.pickSync.call({topmost:!0,position:{x,y:b,viewportX:ee,viewportY:re,clientX:Ee,clientY:Oe},picked:[]}),We=ke.picked;return We&&We[0]||this.documentElement}},{key:"elementFromPoint",value:function(){var y=(0,uh.Z)((0,$u.Z)().mark(function b(z,ee){var re,ae,se,fe,me,Ee,Oe,ke,We,je,Ke;return(0,$u.Z)().wrap(function(Ze){for(;;)switch(Ze.prev=Ze.next){case 0:if(re=this.defaultView.canvas2Viewport({x:z,y:ee}),ae=re.x,se=re.y,fe=this.defaultView.getConfig(),me=fe.width,Ee=fe.height,!(ae<0||se<0||ae>me||se>Ee)){Ze.next=1;break}return Ze.abrupt("return",null);case 1:return Oe=this.defaultView.viewport2Client({x:ae,y:se}),ke=Oe.x,We=Oe.y,Ze.next=2,this.defaultView.getRenderingService().hooks.pick.promise({topmost:!0,position:{x:z,y:ee,viewportX:ae,viewportY:se,clientX:ke,clientY:We},picked:[]});case 2:return je=Ze.sent,Ke=je.picked,Ze.abrupt("return",Ke&&Ke[0]||this.documentElement);case 3:case"end":return Ze.stop()}},b,this)}));function x(b,z){return y.apply(this,arguments)}return x}()},{key:"elementsFromPointSync",value:function(x,b){var z=this.defaultView.canvas2Viewport({x,y:b}),ee=z.x,re=z.y,ae=this.defaultView.getConfig(),se=ae.width,fe=ae.height;if(ee<0||re<0||ee>se||re>fe)return[];var me=this.defaultView.viewport2Client({x:ee,y:re}),Ee=me.x,Oe=me.y,ke=this.defaultView.getRenderingService().hooks.pickSync.call({topmost:!1,position:{x,y:b,viewportX:ee,viewportY:re,clientX:Ee,clientY:Oe},picked:[]}),We=ke.picked;return We[We.length-1]!==this.documentElement&&We.push(this.documentElement),We}},{key:"elementsFromPoint",value:function(){var y=(0,uh.Z)((0,$u.Z)().mark(function b(z,ee){var re,ae,se,fe,me,Ee,Oe,ke,We,je,Ke;return(0,$u.Z)().wrap(function(Ze){for(;;)switch(Ze.prev=Ze.next){case 0:if(re=this.defaultView.canvas2Viewport({x:z,y:ee}),ae=re.x,se=re.y,fe=this.defaultView.getConfig(),me=fe.width,Ee=fe.height,!(ae<0||se<0||ae>me||se>Ee)){Ze.next=1;break}return Ze.abrupt("return",[]);case 1:return Oe=this.defaultView.viewport2Client({x:ae,y:se}),ke=Oe.x,We=Oe.y,Ze.next=2,this.defaultView.getRenderingService().hooks.pick.promise({topmost:!1,position:{x:z,y:ee,viewportX:ae,viewportY:se,clientX:ke,clientY:We},picked:[]});case 2:return je=Ze.sent,Ke=je.picked,Ke[Ke.length-1]!==this.documentElement&&Ke.push(this.documentElement),Ze.abrupt("return",Ke);case 3:case"end":return Ze.stop()}},b,this)}));function x(b,z){return y.apply(this,arguments)}return x}()},{key:"appendChild",value:function(x,b){throw new Error(s0)}},{key:"insertBefore",value:function(x,b){throw new Error(s0)}},{key:"removeChild",value:function(x,b){throw new Error(s0)}},{key:"replaceChild",value:function(x,b,z){throw new Error(s0)}},{key:"append",value:function(){throw new Error(s0)}},{key:"prepend",value:function(){throw new Error(s0)}},{key:"getElementById",value:function(x){return this.documentElement.getElementById(x)}},{key:"getElementsByName",value:function(x){return this.documentElement.getElementsByName(x)}},{key:"getElementsByTagName",value:function(x){return this.documentElement.getElementsByTagName(x)}},{key:"getElementsByClassName",value:function(x){return this.documentElement.getElementsByClassName(x)}},{key:"querySelector",value:function(x){return this.documentElement.querySelector(x)}},{key:"querySelectorAll",value:function(x){return this.documentElement.querySelectorAll(x)}},{key:"find",value:function(x){return this.documentElement.find(x)}},{key:"findAll",value:function(x){return this.documentElement.findAll(x)}}])}(Il),kP=function(){function E(a){(0,gn.Z)(this,E),this.strategies=a}return(0,cn.Z)(E,[{key:"apply",value:function(y){var x=y.config,b=y.camera,z=y.renderingService,ee=y.renderingContext,re=this.strategies;z.hooks.cull.tap(E.tag,function(ae){if(ae){var se,fe=ae.cullable;if(re.length===0?fe.visible=ee.unculledEntities.indexOf(ae.entity)>-1:fe.visible=re.every(function(Ee){return Ee.isVisible(b,ae)}),!ae.isCulled()&&ae.isVisible())return ae;var me=((se=x.future)===null||se===void 0?void 0:se.experimentalCancelEventPropagation)===!0;return ae.dispatchEvent(new du(Es.CULLED),me,me),null}return ae}),z.hooks.afterRender.tap(E.tag,function(ae){ae.cullable.visibilityPlaneMask=-1})}}])}();kP.tag="Culling";var _P=function(){function E(){var a=this;(0,gn.Z)(this,E),this.autoPreventDefault=!1,this.rootPointerEvent=new jm(null),this.rootWheelEvent=new XE(null),this.onPointerMove=function(y){var x,b=(x=a.context.renderingContext.root)===null||x===void 0||(x=x.ownerDocument)===null||x===void 0?void 0:x.defaultView;if(!(b.supportsTouchEvents&&y.pointerType==="touch")){var z=a.normalizeToPointerEvent(y,b),ee=ch(z),re;try{for(ee.s();!(re=ee.n()).done;){var ae=re.value,se=a.bootstrapEvent(a.rootPointerEvent,ae,b,y);a.context.eventService.mapEvent(se)}}catch(fe){ee.e(fe)}finally{ee.f()}a.setCursor(a.context.eventService.cursor)}},this.onClick=function(y){var x,b=(x=a.context.renderingContext.root)===null||x===void 0||(x=x.ownerDocument)===null||x===void 0?void 0:x.defaultView,z=a.normalizeToPointerEvent(y,b),ee=ch(z),re;try{for(ee.s();!(re=ee.n()).done;){var ae=re.value,se=a.bootstrapEvent(a.rootPointerEvent,ae,b,y);a.context.eventService.mapEvent(se)}}catch(fe){ee.e(fe)}finally{ee.f()}a.setCursor(a.context.eventService.cursor)}}return(0,cn.Z)(E,[{key:"apply",value:function(y){var x=this;this.context=y;var b=y.renderingService,z=this.context.renderingContext.root.ownerDocument.defaultView;this.context.eventService.setPickHandler(function(ee){var re=x.context.renderingService.hooks.pickSync.call({position:ee,picked:[],topmost:!0}),ae=re.picked;return ae[0]||null}),b.hooks.pointerWheel.tap(E.tag,function(ee){var re=x.normalizeWheelEvent(ee);x.context.eventService.mapEvent(re)}),b.hooks.pointerDown.tap(E.tag,function(ee){if(!(z.supportsTouchEvents&&ee.pointerType==="touch")){var re=x.normalizeToPointerEvent(ee,z);if(x.autoPreventDefault&&re[0].isNormalized){var ae=ee.cancelable||!("cancelable"in ee);ae&&ee.preventDefault()}var se=ch(re),fe;try{for(se.s();!(fe=se.n()).done;){var me=fe.value,Ee=x.bootstrapEvent(x.rootPointerEvent,me,z,ee);x.context.eventService.mapEvent(Ee)}}catch(Oe){se.e(Oe)}finally{se.f()}x.setCursor(x.context.eventService.cursor)}}),b.hooks.pointerUp.tap(E.tag,function(ee){if(!(z.supportsTouchEvents&&ee.pointerType==="touch")){var re=x.context.contextService.getDomElement(),ae=x.context.eventService.isNativeEventFromCanvas(re,ee),se=ae?"":"outside",fe=x.normalizeToPointerEvent(ee,z),me=ch(fe),Ee;try{for(me.s();!(Ee=me.n()).done;){var Oe=Ee.value,ke=x.bootstrapEvent(x.rootPointerEvent,Oe,z,ee);ke.type+=se,x.context.eventService.mapEvent(ke)}}catch(We){me.e(We)}finally{me.f()}x.setCursor(x.context.eventService.cursor)}}),b.hooks.pointerMove.tap(E.tag,this.onPointerMove),b.hooks.pointerOver.tap(E.tag,this.onPointerMove),b.hooks.pointerOut.tap(E.tag,this.onPointerMove),b.hooks.click.tap(E.tag,this.onClick),b.hooks.pointerCancel.tap(E.tag,function(ee){var re=x.normalizeToPointerEvent(ee,z),ae=ch(re),se;try{for(ae.s();!(se=ae.n()).done;){var fe=se.value,me=x.bootstrapEvent(x.rootPointerEvent,fe,z,ee);x.context.eventService.mapEvent(me)}}catch(Ee){ae.e(Ee)}finally{ae.f()}x.setCursor(x.context.eventService.cursor)})}},{key:"bootstrapEvent",value:function(y,x,b,z){y.view=b,y.originalEvent=null,y.nativeEvent=z,y.pointerId=x.pointerId,y.width=x.width,y.height=x.height,y.isPrimary=x.isPrimary,y.pointerType=x.pointerType,y.pressure=x.pressure,y.tangentialPressure=x.tangentialPressure,y.tiltX=x.tiltX,y.tiltY=x.tiltY,y.twist=x.twist,this.transferMouseData(y,x);var ee=this.context.eventService.client2Viewport({x:x.clientX,y:x.clientY}),re=ee.x,ae=ee.y;y.viewport.x=re,y.viewport.y=ae;var se=this.context.eventService.viewport2Canvas(y.viewport),fe=se.x,me=se.y;return y.canvas.x=fe,y.canvas.y=me,y.global.copyFrom(y.canvas),y.offset.copyFrom(y.canvas),y.isTrusted=z.isTrusted,y.type==="pointerleave"&&(y.type="pointerout"),y.type.startsWith("mouse")&&(y.type=y.type.replace("mouse","pointer")),y.type.startsWith("touch")&&(y.type=y6[y.type]||y.type),y}},{key:"normalizeWheelEvent",value:function(y){var x=this.rootWheelEvent;this.transferMouseData(x,y),x.deltaMode=y.deltaMode,x.deltaX=y.deltaX,x.deltaY=y.deltaY,x.deltaZ=y.deltaZ;var b=this.context.eventService.client2Viewport({x:y.clientX,y:y.clientY}),z=b.x,ee=b.y;x.viewport.x=z,x.viewport.y=ee;var re=this.context.eventService.viewport2Canvas(x.viewport),ae=re.x,se=re.y;return x.canvas.x=ae,x.canvas.y=se,x.global.copyFrom(x.canvas),x.offset.copyFrom(x.canvas),x.nativeEvent=y,x.type=y.type,x}},{key:"transferMouseData",value:function(y,x){y.isTrusted=x.isTrusted,y.srcElement=x.srcElement,y.timeStamp=KE.now(),y.type=x.type,y.altKey=x.altKey,y.metaKey=x.metaKey,y.shiftKey=x.shiftKey,y.ctrlKey=x.ctrlKey,y.button=x.button,y.buttons=x.buttons,y.client.x=x.clientX,y.client.y=x.clientY,y.movement.x=x.movementX,y.movement.y=x.movementY,y.page.x=x.pageX,y.page.y=x.pageY,y.screen.x=x.screenX,y.screen.y=x.screenY,y.relatedTarget=null}},{key:"setCursor",value:function(y){this.context.contextService.applyCursorStyle(y||this.context.config.cursor||"default")}},{key:"normalizeToPointerEvent",value:function(y,x){var b=[];if(x.isTouchEvent(y))for(var z=0;z-1,ae=0,se=z.length;ae=1?Math.ceil(_t):1,z&&(ct=re||v6(z)||z.width/_t,Lt=ae||m6(z)||z.height/_t),x.customElements=new RN,x.devicePixelRatio=_t,x.requestAnimationFrame=je!=null?je:ZE.bind(Qa.globalThis),x.cancelAnimationFrame=Ke!=null?Ke:bP.bind(Qa.globalThis),x.createImage=Ze!=null?Ze:function(){return new window.Image},x.supportsTouchEvents=Je!=null?Je:"ontouchstart"in Qa.globalThis,x.supportsPointerEvents=tt!=null?tt:!!Qa.globalThis.PointerEvent,x.isTouchEvent=st!=null?st:function(Yt){return x.supportsTouchEvents&&Yt instanceof Qa.globalThis.TouchEvent},x.isMouseEvent=gt!=null?gt:function(Yt){return!Qa.globalThis.MouseEvent||Yt instanceof Qa.globalThis.MouseEvent&&(!x.supportsPointerEvents||!(Yt instanceof Qa.globalThis.PointerEvent))},ke&&(Qa.offscreenCanvas=ke),x.document=new FP,x.document.defaultView=x,me||d6(b,x,Oe),x.initRenderingContext((0,hn.Z)((0,hn.Z)({},y),{},{width:ct,height:Lt,background:se!=null?se:"transparent",cursor:fe!=null?fe:"default",cleanUpOnDestroy:Oe,devicePixelRatio:_t,requestAnimationFrame:x.requestAnimationFrame,cancelAnimationFrame:x.cancelAnimationFrame,createImage:x.createImage,supportsTouchEvents:x.supportsTouchEvents,supportsPointerEvents:x.supportsPointerEvents,isTouchEvent:x.isTouchEvent,isMouseEvent:x.isMouseEvent,dblClickSpeed:mt!=null?mt:200})),x.initDefaultCamera(ct,Lt,ee.clipSpaceNearZ),x.initRenderer(ee,!0),x}return(0,xr.Z)(a,E),(0,cn.Z)(a,[{key:"initRenderingContext",value:function(x){this.context.config=x,this.context.renderingContext={root:this.document.documentElement,unculledEntities:[],renderListCurrentFrame:[],renderReasons:new Set,force:!1,dirty:!1}}},{key:"initDefaultCamera",value:function(x,b,z){var ee=this,re=new Qa.CameraContribution;re.clipSpaceNearZ=z,re.setType(cl.EXPLORING,wE.DEFAULT).setPosition(x/2,b/2,UP).setFocalPoint(x/2,b/2,0).setOrthographic(x/-2,x/2,b/2,b/-2,_N,zN),re.canvas=this,re.eventEmitter.on(DC.UPDATED,function(){ee.context.renderingContext.renderReasons.add(f0.CAMERA_CHANGED),Qa.enableSizeAttenuation&&ee.getConfig().renderer.getConfig().enableSizeAttenuation&&ee.updateSizeAttenuation()}),this.context.camera=re}},{key:"updateSizeAttenuation",value:function(){var x=this.getCamera().getZoom();this.document.documentElement.forEach(function(b){Qa.styleValueRegistry.updateSizeAttenuation(b,x)})}},{key:"getConfig",value:function(){return this.context.config}},{key:"getRoot",value:function(){return this.document.documentElement}},{key:"getCamera",value:function(){return this.context.camera}},{key:"getContextService",value:function(){return this.context.contextService}},{key:"getEventService",value:function(){return this.context.eventService}},{key:"getRenderingService",value:function(){return this.context.renderingService}},{key:"getRenderingContext",value:function(){return this.context.renderingContext}},{key:"getStats",value:function(){return this.getRenderingService().getStats()}},{key:"ready",get:function(){var x=this;return this.readyPromise||(this.readyPromise=new Promise(function(b){x.resolveReadyPromise=function(){b(x)}}),this.inited&&this.resolveReadyPromise()),this.readyPromise}},{key:"destroy",value:function(){var x,b=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,z=arguments.length>1?arguments[1]:void 0;eu.clearCache();var ee=((x=this.getConfig().future)===null||x===void 0?void 0:x.experimentalCancelEventPropagation)===!0;z||this.dispatchEvent(new du(Vc.BEFORE_DESTROY),ee,ee),this.frameId&&this.cancelAnimationFrame(this.frameId);var re=this.getRoot();b&&(this.unmountChildren(re),this.document.destroy(),this.getEventService().destroy()),this.getRenderingService().destroy(),this.getContextService().destroy(),z||this.dispatchEvent(new du(Vc.AFTER_DESTROY),ee,ee);var ae=function(fe){fe.currentTarget=null,fe.manager=null,fe.target=null,fe.relatedNode=null};ae(Zm),ae(Qm),ae(tA),ae(WP),ae(nA),ae(gf),ae(qE),ae($E),ae(RP),Qa.textService.clearCache()}},{key:"changeSize",value:function(x,b){this.resize(x,b)}},{key:"resize",value:function(x,b){var z,ee=this.context.config;ee.width=x,ee.height=b,this.getContextService().resize(x,b);var re=this.context.camera,ae=re.getProjectionMode();re.setPosition(x/2,b/2,UP).setFocalPoint(x/2,b/2,0),ae===fd.ORTHOGRAPHIC?re.setOrthographic(x/-2,x/2,b/2,b/-2,re.getNear(),re.getFar()):re.setAspect(x/b);var se=((z=ee.future)===null||z===void 0?void 0:z.experimentalCancelEventPropagation)===!0;this.dispatchEvent(new du(Vc.RESIZE,{width:x,height:b}),se,se)}},{key:"appendChild",value:function(x,b){return this.document.documentElement.appendChild(x,b)}},{key:"insertBefore",value:function(x,b){return this.document.documentElement.insertBefore(x,b)}},{key:"removeChild",value:function(x){return this.document.documentElement.removeChild(x)}},{key:"removeChildren",value:function(){this.document.documentElement.removeChildren()}},{key:"destroyChildren",value:function(){this.document.documentElement.destroyChildren()}},{key:"render",value:function(x){var b,z=this;x&&(tA.detail=x,nA.detail=x);var ee=((b=this.getConfig().future)===null||b===void 0?void 0:b.experimentalCancelEventPropagation)===!0;this.dispatchEvent(tA,ee,ee);var re=this.getRenderingService();re.render(this,x,function(){z.dispatchEvent(WP,ee,ee)}),this.dispatchEvent(nA,ee,ee)}},{key:"run",value:function(){var x=this,b=function(ee,re){x.render(re),x.frameId=x.requestAnimationFrame(b)};b()}},{key:"initRenderer",value:function(x){var b=this,z=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(!x)throw new Error("Renderer is required.");this.inited=!1,this.readyPromise=void 0,this.context.renderingPlugins=[],this.context.renderingPlugins.push(new _P,new zP,new kP([new kN])),this.loadRendererContainerModule(x),this.context.contextService=new this.context.ContextService((0,hn.Z)((0,hn.Z)({},Qa),this.context)),this.context.renderingService=new J6(Qa,this.context),this.context.eventService=new X6(Qa,this.context),this.context.eventService.init(),this.context.contextService.init?(this.context.contextService.init(),this.initRenderingService(x,z,!0)):this.context.contextService.initAsync().then(function(){b.initRenderingService(x,z)}).catch(function(ee){console.error(ee)})}},{key:"initRenderingService",value:function(x){var b=this,z=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,ee=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.context.renderingService.init(function(){var re;b.inited=!0;var ae=((re=b.getConfig().future)===null||re===void 0?void 0:re.experimentalCancelEventPropagation)===!0;z?ee?b.requestAnimationFrame(function(){b.dispatchEvent(new du(Vc.READY),ae,ae)}):b.dispatchEvent(new du(Vc.READY),ae,ae):b.dispatchEvent(new du(Vc.RENDERER_CHANGED),ae,ae),b.readyPromise&&b.resolveReadyPromise(),z||b.getRoot().forEach(function(se){var fe,me;(fe=(me=se).dirty)===null||fe===void 0||fe.call(me,!0,!0)}),b.mountChildren(b.getRoot()),x.getConfig().enableAutoRendering&&b.run()})}},{key:"loadRendererContainerModule",value:function(x){var b=this,z=x.getPlugins();z.forEach(function(ee){ee.context=b.context,ee.init(Qa)})}},{key:"setRenderer",value:function(x){var b=this.getConfig();if(b.renderer!==x){var z=b.renderer;b.renderer=x,this.destroy(!1,!0),(0,bn.Z)((z==null?void 0:z.getPlugins())||[]).reverse().forEach(function(ee){ee.destroy(Qa)}),this.initRenderer(x)}}},{key:"setCursor",value:function(x){var b=this.getConfig();b.cursor=x,this.getContextService().applyCursorStyle(x)}},{key:"unmountChildren",value:function(x){var b=this;if(x.childNodes.forEach(function(re){b.unmountChildren(re)}),this.inited){if(x.isMutationObserved)x.dispatchEvent(Qm);else{var z,ee=((z=this.getConfig().future)===null||z===void 0?void 0:z.experimentalCancelEventPropagation)===!0;Qm.target=x,this.dispatchEvent(Qm,!0,ee)}x!==this.document.documentElement&&(x.ownerDocument=null),x.isConnected=!1}x.isCustomElement&&x.disconnectedCallback&&x.disconnectedCallback()}},{key:"mountChildren",value:function(x){var b=this,z=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Um(x);if(this.inited){if(!x.isConnected&&(x.ownerDocument=this.document,x.isConnected=!0,!z))if(x.isMutationObserved)x.dispatchEvent(Zm);else{var ee,re=((ee=this.getConfig().future)===null||ee===void 0?void 0:ee.experimentalCancelEventPropagation)===!0;Zm.target=x,this.dispatchEvent(Zm,!0,re)}}else console.warn("[g]: You are trying to call `canvas.appendChild` before canvas' initialization finished. You can either await `canvas.ready` or listen to `CanvasEvent.READY` manually.","appended child: ",x.nodeName);x.childNodes.forEach(function(ae){b.mountChildren(ae,z)}),x.isCustomElement&&x.connectedCallback&&x.connectedCallback()}},{key:"mountFragment",value:function(x){this.mountChildren(x,!1)}},{key:"client2Viewport",value:function(x){return this.getEventService().client2Viewport(x)}},{key:"viewport2Client",value:function(x){return this.getEventService().viewport2Client(x)}},{key:"viewport2Canvas",value:function(x){return this.getEventService().viewport2Canvas(x)}},{key:"canvas2Viewport",value:function(x){return this.getEventService().canvas2Viewport(x)}},{key:"getPointByClient",value:function(x,b){return this.client2Viewport({x,y:b})}},{key:"getClientByPoint",value:function(x,b){return this.viewport2Client({x,y:b})}}])}(IP);var UN=function(E){function a(){var y;(0,gn.Z)(this,a);for(var x=arguments.length,b=new Array(x),z=0;z90)return this;this.computeMatrix()}return this._getAxes(),this.type===cl.ORBITING||this.type===cl.EXPLORING?this._getPosition():this.type===cl.TRACKING&&this._getFocalPoint(),this._update(),this}},{key:"pan",value:function(x,b){var z=oc(x,b,0),ee=vi(this.position);return $o(ee,ee,Fu(na(),this.right,z[0])),$o(ee,ee,Fu(na(),this.up,z[1])),this._setPosition(ee),this.triggerUpdate(),this}},{key:"dolly",value:function(x){var b=this.forward,z=vi(this.position),ee=x*this.dollyingStep,re=this.distance+x*this.dollyingStep;return ee=Math.max(Math.min(re,this.maxDistance),this.minDistance)-this.distance,z[0]+=ee*b[0],z[1]+=ee*b[1],z[2]+=ee*b[2],this._setPosition(z),this.type===cl.ORBITING||this.type===cl.EXPLORING?this._getDistance():this.type===cl.TRACKING&&$o(this.focalPoint,z,this.distanceVector),this.triggerUpdate(),this}},{key:"cancelLandmarkAnimation",value:function(){this.landmarkAnimationID!==void 0&&this.canvas.cancelAnimationFrame(this.landmarkAnimationID)}},{key:"createLandmark",value:function(x){var b,z,ee,re,ae=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},se=ae.position,fe=se===void 0?this.position:se,me=ae.focalPoint,Ee=me===void 0?this.focalPoint:me,Oe=ae.roll,ke=ae.zoom,We=new Qa.CameraContribution;We.setType(this.type,void 0),We.setPosition(fe[0],(b=fe[1])!==null&&b!==void 0?b:this.position[1],(z=fe[2])!==null&&z!==void 0?z:this.position[2]),We.setFocalPoint(Ee[0],(ee=Ee[1])!==null&&ee!==void 0?ee:this.focalPoint[1],(re=Ee[2])!==null&&re!==void 0?re:this.focalPoint[2]),We.setRoll(Oe!=null?Oe:this.roll),We.setZoom(ke!=null?ke:this.zoom);var je={name:x,matrix:Ms(We.getWorldTransform()),right:vi(We.right),up:vi(We.up),forward:vi(We.forward),position:vi(We.getPosition()),focalPoint:vi(We.getFocalPoint()),distanceVector:vi(We.getDistanceVector()),distance:We.getDistance(),dollyingStep:We.getDollyingStep(),azimuth:We.getAzimuth(),elevation:We.getElevation(),roll:We.getRoll(),relAzimuth:We.relAzimuth,relElevation:We.relElevation,relRoll:We.relRoll,zoom:We.getZoom()};return this.landmarks.push(je),je}},{key:"gotoLandmark",value:function(x){var b=this,z=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},ee=Us(x)?this.landmarks.find(function(Yt){return Yt.name===x}):x;if(ee){var re=Wi(z)?{duration:z}:z,ae=re.easing,se=ae===void 0?"linear":ae,fe=re.duration,me=fe===void 0?100:fe,Ee=re.easingFunction,Oe=Ee===void 0?void 0:Ee,ke=re.onfinish,We=ke===void 0?void 0:ke,je=re.onframe,Ke=je===void 0?void 0:je,Ze=.01;this.cancelLandmarkAnimation();var Je=ee.position,tt=ee.focalPoint,st=ee.zoom,gt=ee.roll,mt=Oe||Qa.EasingFunction(se),ct,Lt=function(){b.setFocalPoint(tt),b.setPosition(Je),b.setRoll(gt),b.setZoom(st),b.computeMatrix(),b.triggerUpdate(),We==null||We()};if(me===0)return Lt();var _t=function($t){ct===void 0&&(ct=$t);var En=$t-ct;if(En>=me){Lt();return}var on=mt(En/me),Fn=na(),tr=na(),Cn=1,xn=0;Xu(Fn,b.focalPoint,tt,on),Xu(tr,b.position,Je,on),xn=b.roll*(1-on)+gt*on,Cn=b.zoom*(1-on)+st*on,b.setFocalPoint(Fn),b.setPosition(tr),b.setRoll(xn),b.setZoom(Cn);var Ln=rh(Fn,tt)+rh(tr,Je);if(Ln<=Ze&&st===void 0&>===void 0)return Lt();b.computeMatrix(),b.triggerUpdate(),En0&&Number(this._currentTime)>=this._totalDuration||this._playbackRate<0&&Number(this._currentTime)<=0)}},{key:"totalDuration",get:function(){return this._totalDuration}},{key:"_needsTick",get:function(){return this.pending||this.playState==="running"||!this._finishedFlag}},{key:"updatePromises",value:function(){var y;if((y=this.effect.target)!==null&&y!==void 0&&y.destroyed)return this.readyPromise=void 0,this.finishedPromise=void 0,!1;var x=this.oldPlayState,b=this.pending?"pending":this.playState;return this.readyPromise&&b!==x&&(b==="idle"?(this.rejectReadyPromise(),this.readyPromise=void 0):x==="pending"?this.resolveReadyPromise():b==="pending"&&(this.readyPromise=void 0)),this.finishedPromise&&b!==x&&(b==="idle"?(this.rejectFinishedPromise(),this.finishedPromise=void 0):b==="finished"?this.resolveFinishedPromise():x==="finished"&&(this.finishedPromise=void 0)),this.oldPlayState=b,this.readyPromise||this.finishedPromise}},{key:"play",value:function(){this.updatePromises(),this._paused=!1,(this._isFinished||this._idle)&&(this.rewind(),this._startTime=null),this._finishedFlag=!1,this._idle=!1,this.ensureAlive(),this.timeline.applyDirtiedAnimation(this),this.timeline.animations.indexOf(this)===-1&&this.timeline.animations.push(this),this.updatePromises()}},{key:"pause",value:function(){this.updatePromises(),this.currentTime&&(this._holdTime=this.currentTime),!this._isFinished&&!this._paused&&!this._idle?this.currentTimePending=!0:this._idle&&(this.rewind(),this._idle=!1),this._startTime=null,this._paused=!0,this.updatePromises()}},{key:"finish",value:function(){this.updatePromises(),!this._idle&&(this.currentTime=this._playbackRate>0?this._totalDuration:0,this._startTime=this._totalDuration-this.currentTime,this.currentTimePending=!1,this.timeline.applyDirtiedAnimation(this),this.updatePromises())}},{key:"cancel",value:function(){var y=this;if(this.updatePromises(),!!this._inEffect&&(this._inEffect=!1,this._idle=!0,this._paused=!1,this._finishedFlag=!0,this._currentTime=0,this._startTime=null,this.effect.update(null),this.timeline.applyDirtiedAnimation(this),this.updatePromises(),this.oncancel)){var x=new sA(null,this,this.currentTime,null);setTimeout(function(){y.oncancel(x)})}}},{key:"reverse",value:function(){this.updatePromises();var y=this.currentTime;this.playbackRate*=-1,this.play(),y!==null&&(this.currentTime=y),this.updatePromises()}},{key:"updatePlaybackRate",value:function(y){this.playbackRate=y}},{key:"targetAnimations",value:function(){var y,x=(y=this.effect)===null||y===void 0?void 0:y.target;return x.getAnimations()}},{key:"markTarget",value:function(){var y=this.targetAnimations();y.indexOf(this)===-1&&y.push(this)}},{key:"unmarkTarget",value:function(){var y=this.targetAnimations(),x=y.indexOf(this);x!==-1&&y.splice(x,1)}},{key:"tick",value:function(y,x){!this._idle&&!this._paused&&(this._startTime===null?x&&(this.startTime=y-this._currentTime/this.playbackRate):this._isFinished||this.tickCurrentTime((y-this._startTime)*this.playbackRate)),x&&(this.currentTimePending=!1,this.fireEvents(y))}},{key:"rewind",value:function(){if(this.playbackRate>=0)this.currentTime=0;else if(this._totalDuration<1/0)this.currentTime=this._totalDuration;else throw new Error("Unable to rewind negative playback rate animation with infinite duration")}},{key:"persist",value:function(){throw new Error(ll)}},{key:"addEventListener",value:function(y,x,b){throw new Error(ll)}},{key:"removeEventListener",value:function(y,x,b){throw new Error(ll)}},{key:"dispatchEvent",value:function(y){throw new Error(ll)}},{key:"commitStyles",value:function(){throw new Error(ll)}},{key:"ensureAlive",value:function(){if(this.playbackRate<0&&this.currentTime===0){var y;this._inEffect=!!((y=this.effect)!==null&&y!==void 0&&y.update(-1))}else{var x;this._inEffect=!!((x=this.effect)!==null&&x!==void 0&&x.update(this.currentTime))}!this._inTimeline&&(this._inEffect||!this._finishedFlag)&&(this._inTimeline=!0,this.timeline.animations.push(this))}},{key:"tickCurrentTime",value:function(y,x){y!==this._currentTime&&(this._currentTime=y,this._isFinished&&!x&&(this._currentTime=this._playbackRate>0?this._totalDuration:0),this.ensureAlive())}},{key:"fireEvents",value:function(y){var x=this;if(this._isFinished){if(!this._finishedFlag){if(this.onfinish){var b=new sA(null,this,this.currentTime,y);setTimeout(function(){x.onfinish&&x.onfinish(b)})}this._finishedFlag=!0}}else{if(this.onframe&&this.playState==="running"){var z=new sA(null,this,this.currentTime,y);this.onframe(z)}this._finishedFlag=!1}}}])}(),VN=4,KN=.001,ZN=1e-7,QN=10,hv=11,Xm=1/(hv-1),YN=typeof Float32Array=="function",HP=function(a,y){return 1-3*y+3*a},VP=function(a,y){return 3*y-6*a},KP=function(a){return 3*a},Jm=function(a,y,x){return((HP(y,x)*a+VP(y,x))*a+KP(y))*a},ZP=function(a,y,x){return 3*HP(y,x)*a*a+2*VP(y,x)*a+KP(y)},XN=function(a,y,x,b,z){var ee,re,ae=0;do re=y+(x-y)/2,ee=Jm(re,b,z)-a,ee>0?x=re:y=re;while(Math.abs(ee)>ZN&&++ae=0&&a<=1&&x>=0&&x<=1))throw new Error("bezier x values must be in [0, 1] range");if(a===y&&x===b)return function(ae){return ae};for(var z=YN?new Float32Array(hv):new Array(hv),ee=0;ee=KN?JN(se,ke,a,x):We===0?ke:XN(se,fe,fe+Xm,a,x)};return function(ae){return ae===0||ae===1?ae:Jm(re(ae),y,b)}},qN=function(a){return a=a.replace(/([A-Z])/g,function(y){return"-".concat(y.toLowerCase())}),a.charAt(0)==="-"?a.substring(1):a},qm=function(a){return Math.pow(a,2)},$m=function(a){return Math.pow(a,3)},ep=function(a){return Math.pow(a,4)},tp=function(a){return Math.pow(a,5)},np=function(a){return Math.pow(a,6)},rp=function(a){return 1-Math.cos(a*Math.PI/2)},ap=function(a){return 1-Math.sqrt(1-a*a)},ip=function(a){return a*a*(3*a-2)},op=function(a){for(var y,x=4;a<((y=Math.pow(2,--x))-1)/11;);return 1/Math.pow(4,3-x)-7.5625*Math.pow((y*3-2)/22-a,2)},sp=function(a){var y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],x=(0,ia.Z)(y,2),b=x[0],z=b===void 0?1:b,ee=x[1],re=ee===void 0?.5:ee,ae=Nl(Number(z),1,10),se=Nl(Number(re),.1,2);return a===0||a===1?a:-ae*Math.pow(2,10*(a-1))*Math.sin((a-1-se/(Math.PI*2)*Math.asin(1/ae))*(Math.PI*2)/se)},gv=function(a){var y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],x=arguments.length>2?arguments[2]:void 0,b=(0,ia.Z)(y,4),z=b[0],ee=z===void 0?1:z,re=b[1],ae=re===void 0?100:re,se=b[2],fe=se===void 0?10:se,me=b[3],Ee=me===void 0?0:me;ee=Nl(ee,.1,1e3),ae=Nl(ae,.1,1e3),fe=Nl(fe,.1,1e3),Ee=Nl(Ee,.1,1e3);var Oe=Math.sqrt(ae/ee),ke=fe/(2*Math.sqrt(ae*ee)),We=ke<1?Oe*Math.sqrt(1-ke*ke):0,je=1,Ke=ke<1?(ke*Oe+-Ee)/We:-Ee+Oe,Ze=x?x*a/1e3:a;return ke<1?Ze=Math.exp(-Ze*ke*Oe)*(je*Math.cos(We*Ze)+Ke*Math.sin(We*Ze)):Ze=(je+Ke*Ze)*Math.exp(-Ze*Oe),a===0||a===1?a:1-Ze},uA=function(a){var y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],x=y,b=(0,ia.Z)(x,2),z=b[0],ee=z===void 0?10:z,re=b[1],ae=re==="start"?Math.ceil:Math.floor;return ae(Nl(a,0,1)*ee)/ee},QP=function(a){var y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],x=(0,ia.Z)(y,4),b=x[0],z=x[1],ee=x[2],re=x[3];return lA(b,z,ee,re)(a)},lp=lA(.42,0,1,1),gd=function(a){return function(y){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],b=arguments.length>2?arguments[2]:void 0;return 1-a(1-y,x,b)}},vd=function(a){return function(y){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],b=arguments.length>2?arguments[2]:void 0;return y<.5?a(y*2,x,b)/2:1-a(y*-2+2,x,b)/2}},md=function(a){return function(y){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],b=arguments.length>2?arguments[2]:void 0;return y<.5?(1-a(1-y*2,x,b))/2:(a(y*2-1,x,b)+1)/2}},YP={steps:uA,"step-start":function(a){return uA(a,[1,"start"])},"step-end":function(a){return uA(a,[1,"end"])},linear:function(a){return a},"cubic-bezier":QP,ease:function(a){return QP(a,[.25,.1,.25,1])},in:lp,out:gd(lp),"in-out":vd(lp),"out-in":md(lp),"in-quad":qm,"out-quad":gd(qm),"in-out-quad":vd(qm),"out-in-quad":md(qm),"in-cubic":$m,"out-cubic":gd($m),"in-out-cubic":vd($m),"out-in-cubic":md($m),"in-quart":ep,"out-quart":gd(ep),"in-out-quart":vd(ep),"out-in-quart":md(ep),"in-quint":tp,"out-quint":gd(tp),"in-out-quint":vd(tp),"out-in-quint":md(tp),"in-expo":np,"out-expo":gd(np),"in-out-expo":vd(np),"out-in-expo":md(np),"in-sine":rp,"out-sine":gd(rp),"in-out-sine":vd(rp),"out-in-sine":md(rp),"in-circ":ap,"out-circ":gd(ap),"in-out-circ":vd(ap),"out-in-circ":md(ap),"in-back":ip,"out-back":gd(ip),"in-out-back":vd(ip),"out-in-back":md(ip),"in-bounce":op,"out-bounce":gd(op),"in-out-bounce":vd(op),"out-in-bounce":md(op),"in-elastic":sp,"out-elastic":gd(sp),"in-out-elastic":vd(sp),"out-in-elastic":md(sp),spring:gv,"spring-in":gv,"spring-out":gd(gv),"spring-in-out":vd(gv),"spring-out-in":md(gv)},$N=function(a){return qN(a).replace(/^ease-/,"").replace(/(\(|\s).+/,"").toLowerCase().trim()},eR=function(a){return YP[$N(a)]||YP.linear},tR=function(a){return a},nR=1,rR=.5,XP=0;function JP(E,a){return function(y){if(y>=1)return 1;var x=1/E;return y+=a*x,y-y%x}}var up="\\s*(-?\\d+\\.?\\d*|-?\\.\\d+)\\s*",aR=new RegExp("cubic-bezier\\(".concat(up,",").concat(up,",").concat(up,",").concat(up,"\\)")),iR=/steps\(\s*(\d+)\s*\)/,oR=/steps\(\s*(\d+)\s*,\s*(start|middle|end)\s*\)/;function cA(E){var a=aR.exec(E);if(a)return lA.apply(void 0,(0,bn.Z)(a.slice(1).map(Number)));var y=iR.exec(E);if(y)return JP(Number(y[1]),XP);var x=oR.exec(E);return x?JP(Number(x[1]),{start:nR,middle:rR,end:XP}[x[2]]):eR(E)}function sR(E){return Math.abs(lR(E)/(E.playbackRate||1))}function lR(E){var a;return E.duration===0||E.iterations===0?0:(E.duration==="auto"?0:Number(E.duration))*((a=E.iterations)!==null&&a!==void 0?a:1)}var qP=0,dA=1,cp=2,$P=3;function uR(E,a,y){if(a===null)return qP;var x=y.endTime;return a=Math.min(y.delay+E+y.endDelay,x)?cp:$P}function cR(E,a,y,x,b){switch(x){case dA:return a==="backwards"||a==="both"?0:null;case $P:return y-b;case cp:return a==="forwards"||a==="both"?E:null;case qP:return null}}function dR(E,a,y,x,b){var z=b;return E===0?a!==dA&&(z+=y):z+=x/E,z}function fR(E,a,y,x,b,z){var ee=E===1/0?a%1:E%1;return ee===0&&y===cp&&x!==0&&(b!==0||z===0)&&(ee=1),ee}function hR(E,a,y,x){return E===cp&&a===1/0?1/0:y===1?Math.floor(x)-1:Math.floor(x)}function gR(E,a,y){var x=E;if(E!=="normal"&&E!=="reverse"){var b=a;E==="alternate-reverse"&&(b+=1),x="normal",b!==1/0&&b%2!==0&&(x="reverse")}return x==="normal"?y:1-y}function vR(E,a,y){var x=uR(E,a,y),b=cR(E,y.fill,a,x,y.delay);if(b===null)return null;var z=y.duration==="auto"?0:y.duration,ee=dR(z,x,y.iterations,b,y.iterationStart),re=fR(ee,y.iterationStart,x,y.iterations,b,z),ae=hR(x,y.iterations,re,ee),se=gR(y.direction,ae,re);return y.currentIteration=ae,y.progress=se,y.easingFunction(se)}function mR(E,a,y){var x=pR(E,a),b=yR(x,y);return function(z,ee){if(ee!==null)b.filter(function(ae){return ee>=ae.applyFrom&&ee1)throw new Error("Keyframe offsets must be between 0 and 1.");se.computedOffset=me}}else if(fe==="composite"&&["replace","add","accumulate","auto"].indexOf(me)===-1)throw new Error("".concat(me," compositing is not supported"));se[fe]=me}return se.offset===void 0&&(se.offset=null),se.easing===void 0&&(se.easing=(a==null?void 0:a.easing)||"linear"),se.composite===void 0&&(se.composite="auto"),se}),x=!0,b=-1/0,z=0;z=0&&Number(ae.offset)<=1});function re(){var ae,se=y,fe=se.length;if(y[fe-1].computedOffset=Number((ae=y[fe-1].offset)!==null&&ae!==void 0?ae:1),fe>1){var me;y[0].computedOffset=Number((me=y[0].offset)!==null&&me!==void 0?me:0)}for(var Ee=0,Oe=Number(y[0].computedOffset),ke=1;ke{!Tc.mute&&console.debug(Nf(E))},info:E=>{!Tc.mute&&console.info(Nf(E))},warn:E=>{!Tc.mute&&console.warn(Nf(E))},error:E=>{!Tc.mute&&console.error(Nf(E))}};function o2(E){const{theme:a}=E;if(!a)return{};const y=Bf(mv.THEME,a);return y||(Tc.warn(`The theme of ${a} is not registered.`),{})}function vA(E,a){if(Array.isArray(E)&&E.length===0)return null;const y=Array.isArray(E)?E[0]:E,x=Array.isArray(E)?E.slice(1):a||[];return new Proxy(y,{get(b,z){return typeof b[z]=="function"&&!["onframe","onfinish"].includes(z)?(...ee)=>{b[z](...ee),x.forEach(re=>{var ae;return(ae=re[z])===null||ae===void 0?void 0:ae.call(re,...ee)})}:z==="finished"?Promise.all([y.finished,...x.map(ee=>ee.finished)]):Reflect.get(b,z)},set(b,z,ee){return["onframe","onfinish"].includes(z)||x.forEach(re=>{re[z]=ee}),Reflect.set(b,z,ee)}})}function mA(E){const a=E.reduce((x,b)=>(Object.entries(b).forEach(([z,ee])=>{x[z]===void 0?x[z]=[ee]:x[z].push(ee)}),x),{});Object.entries(a).forEach(([x,b])=>{(b.length!==E.length||b.some(z=>wo(z))||b.every(z=>!["sourceNode","targetNode","childrenNode"].includes(x)&&nu(z,b[0])))&&delete a[x]});const y=Object.entries(a).reduce((x,[b,z])=>(z.forEach((ee,re)=>{x[re]?x[re][b]=ee:x[re]={[b]:ee}}),x),[]);return E.length!==0&&y.length===0&&y.push({_:0},{_:0}),y}function pv(E){switch(E){case"opacity":return 1;case"x":case"y":case"z":case"zIndex":return 0;case"visibility":return"visible";case"collapsed":return!1;case"states":return[];default:return}}function s2(E,a){const{animation:y}=E;if(y===!1||a===!1)return!1;const x=Object.assign({},LR);return $l(y)&&Object.assign(x,y),$l(a)&&Object.assign(x,a),x}function FR(E){if(typeof E=="string"){const a=Bf(mv.ANIMATION,E);return a||(Tc.warn(`The animation of ${E} is not registered.`),[])}return E}function kR(E,a,y,x){var b,z;const{animation:ee}=E;if(ee===!1||x===!1)return[];const re=(b=E==null?void 0:E[a])===null||b===void 0?void 0:b.animation;if(re===!1)return[];const ae=re==null?void 0:re[y];if(ae===!1)return[];const se=(z=o2(E)[a])===null||z===void 0?void 0:z.animation,fe=(Ee=[])=>FR(Ee).map(Oe=>Object.assign(Object.assign(Object.assign(Object.assign({},BR),$l(ee)&&ee),Oe),$l(x)&&x));if(ae)return fe(ae);if(!se)return[];const me=se[y];return me===!1?[]:fe(me)}function l2(E,a,y,x=[]){if(!x&&E===0&&a===0&&y===0)return null;if(Array.isArray(x)){let z=-1;const ee=[];for(let re=0;re{if(!y.length)return null;const[x,b]=a,z=se=>{var fe;if(se){const me=E.getShape(se);if(!me)return null;const Ee=`get${dp(se)}Style`,Oe=((fe=E==null?void 0:E[Ee])===null||fe===void 0?void 0:fe.bind(E))||(je=>je),ke=(Oe==null?void 0:Oe(x))||{},We=(Oe==null?void 0:Oe(b))||{};return{shape:me,fromStyle:ke,toStyle:We}}else return{shape:E,fromStyle:x,toStyle:b}};let ee;const re=y.map(se=>{var{fields:fe,shape:me,states:Ee}=se,Oe=_R(se,["fields","shape","states"]);const ke=z(me);if(!ke)return null;const{shape:We,fromStyle:je,toStyle:Ke}=ke,Ze=[{},{}];if(fe.forEach(tt=>{var st,gt;Object.assign(Ze[0],{[tt]:(st=je[tt])!==null&&st!==void 0?st:pv(tt)}),Object.assign(Ze[1],{[tt]:(gt=Ke[tt])!==null&>!==void 0?gt:pv(tt)})}),Ze.some(tt=>Object.keys(tt).some(st=>["x","y","z"].includes(st)))){const{x:tt=0,y:st=0,z:gt,transform:mt=""}=We.attributes||{};Ze.forEach(ct=>{var Lt,_t,Yt;ct.transform=l2((Lt=ct.x)!==null&&Lt!==void 0?Lt:tt,(_t=ct.y)!==null&&_t!==void 0?_t:st,(Yt=ct.z)!==null&&Yt!==void 0?Yt:gt,mt)})}const Je=We.animate(mA(Ze),Oe);return me===void 0&&(ee=Je),Je}).filter(Boolean),ae=ee||(re==null?void 0:re[0]);return ae?vA(ae,re.filter(se=>se!==se)):null},UR=[{fields:["opacity"]}],WR=[{fields:["x","y"]}],u2=[{fields:["x","y"]}],jR=u2,c2=[{fields:["sourceNode","targetNode"]}],GR=c2,d2=[{fields:["childrenNode","x","y"]}],HR=d2,EJ=[{fields:["childrenNode","x","y"]}];var VR=Object.prototype.hasOwnProperty;function KR(E,a){if(!a||!Cc(E))return{};for(var y={},x=$i(a)?a:function(re){return re[a]},b,z=0;za?(x&&(clearTimeout(x),x=null),re=fe,ee=E.apply(b,z),x||(b=z=null)):!x&&y.trailing!==!1&&(x=setTimeout(ae,me)),ee};return se.cancel=function(){clearTimeout(x),re=0,x=b=z=null},se},pA=function(E){if(typeof E!="object"||E===null)return E;var a;if(Cc(E)){a=[];for(var y=0,x=E.length;ytypeof a=="number"):!1}function mf(E,a,y){return E>=a&&E<=y}function Zc(E=0){if(Array.isArray(E)){const[a=0,y=a,x=a,b=y]=E;return[a,y,x,b]}return[E,E,E,E]}function YR(E=0){const a=Zc(E);return a[0]+a[2]}function xJ(E=0){const a=Zc(E);return a[1]+a[3]}function pf(E){return E.max[0]-E.min[0]}function yf(E){return E.max[1]-E.min[1]}function gh(E){return[pf(E),yf(E)]}function vh(E,a){const y=v0(E)?yA(E):E.getShape("key").getBounds();return a?mh(y,a):y}function yA(E){const[a,y,x=0]=E,b=new pl;return b.setMinMax([a,y,x],[a,y,x]),b}function mh(E,a){const[y,x,b,z]=Zc(a),[ee,re,ae]=E.min,[se,fe,me]=E.max,Ee=new pl;return Ee.setMinMax([ee-z,re-y,ae],[se+x,fe+b,me]),Ee}function yv(E){if(E.length===0)return new pl;if(E.length===1)return E[0];const a=new pl;a.setMinMax(E[0].min,E[0].max);for(let y=1;y=ee&&b<=ae&&x>=re&&z<=se}function Bd(E,a){return mf(E[0],a.min[0],a.max[0])&&mf(E[1],a.min[1],a.max[1])}function h2(E,a,y=!1){const{min:[x,b],max:[z,ee]}=a,re=(E[1]===b||E[1]===ee)&&(y||mf(E[0],x,z)),ae=(E[0]===x||E[0]===z)&&(y||mf(E[1],b,ee));return re||ae}function JR(E,a){return!Bd(E,a)}function gp(E,a){const{center:y}=a;return E[0]===y[0]&&E[1]===y[1]}function Ev(E,a){const[y,x]=E,[b,z]=a.min,[ee,re]=a.max,ae=y-b,se=ee-y,fe=x-z,me=re-x,Ee=Math.min(ae,se,fe,me);return Ee===ae?"left":Ee===se?"right":Ee===fe?"top":Ee===me?"bottom":"left"}function mg(E,a){const y=g0(E);if(Bd(E,a))switch(Ev(E,a)){case"left":y[0]=a.min[0];break;case"right":y[0]=a.max[0];break;case"top":y[1]=a.min[1];break;case"bottom":y[1]=a.max[1];break}else{const[x,b]=E,[z,ee]=a.min,[re,ae]=a.max;y[0]=mf(x,z,re)?x:x0&&Oe(st[0])}},Ke=0;Ke0;)Ee.push(ae.pop());ee.push(Ee)}}return ee},p2=function(a){for(var y=a.nodes,x=y===void 0?[]:y,b=a.edges,z=b===void 0?[]:b,ee=[],re={},ae={},se={},fe=[],me=0,Ee=function je(Ke){ae[Ke.id]=me,se[Ke.id]=me,me+=1,ee.push(Ke),re[Ke.id]=!0;for(var Ze=yd(Ke.id,z,"target").filter(function(mt){return x.map(function(ct){return ct.id}).indexOf(mt)>-1}),Je=function(ct){var Lt=Ze[ct];if(!ae[Lt]&&ae[Lt]!==0){var _t=x.filter(function(Yt){return Yt.id===Lt});_t.length>0&&je(_t[0]),se[Ke.id]=Math.min(se[Ke.id],se[Lt])}else re[Lt]&&(se[Ke.id]=Math.min(se[Ke.id],ae[Lt]))},tt=0;tt0;){var gt=ee.pop();if(re[gt.id]=!1,st.push(gt),gt===Ke)break}st.length>0&&fe.push(st)}},Oe=0,ke=x;Oe0;)for(var je=Oe.pop(),Ke=je.id,Ze=yd(Ke,a.edges),Je=function(gt){var mt,ct=Ze[gt],Lt=a.nodes.find(function(Fn){return Fn.id===ct});if(ct===Ke)ee.push((mt={},mt[ct]=je,mt));else if(!(ct in We))ke[ct]=je,Oe.push(Lt),We[ct]=new Set([je]);else if(!We[Ke].has(Lt)){for(var _t=!0,Yt=[Lt,je],$t=ke[Ke];We[ct].size&&!We[ct].has($t)&&(Yt.push($t),$t!==ke[$t.id]);)$t=ke[$t.id];if(Yt.push($t),y&&x?(_t=!1,Yt.findIndex(function(Fn){return y.indexOf(Fn.id)>-1})>-1&&(_t=!0)):y&&!x&&Yt.findIndex(function(Fn){return y.indexOf(Fn.id)>-1})>-1&&(_t=!1),_t){for(var En={},on=1;on0;){var on=En.pop();z.has(on)&&(z.delete(on),ee[on.id].forEach(function(Fn){En.push(Fn)}),ee[on.id].clear())}},me=function Yt($t,En,on){var Fn=!1;if(y&&x===!1&&y.indexOf($t.id)>-1)return Fn;b.push($t),z.add($t);for(var tr=on[$t.id],Cn=0;Cn-1});ra-1)?re.push((En={},En[fr.id]=fr,En)):An[fr.id].push(se[Gr])}}return{component:nr,adjList:An,minIdx:Fn}},Je=0;Je=Je}),st=p2({nodes:tt,edges:a.edges}).filter(function(Yt){return Yt.length>1});if(st.length===0)break;var gt=Ze(st),mt=gt.minIdx,ct=gt.adjList,Lt=gt.component;if(Lt.length>1){Lt.forEach(function(Yt){ee[Yt.id]=new Set});var _t=ae[mt];if(y&&x&&y.indexOf(_t.id)===-1)return re;me(_t,_t,ct),Je=mt+1}else break}return re},v4=function(a,y,x,b){return b===void 0&&(b=!0),y?S2(a,x,b):x2(a,x,b)},b2=g4,m4={}.toString,p4=function(E,a){return m4.call(E)==="[object "+a+"]"},pp=p4,AA=function(E){return pp(E,"Function")},xA=function(E){return Array.isArray?Array.isArray(E):pp(E,"Array")},y4=function(E){var a=typeof E;return E!==null&&a==="object"||a==="function"};function E4(E,a){if(E){var y;if(xA(E))for(var x=0,b=E.length;x-1;)x4.call(E,z,1);return E},UJ=null,b4=Array.prototype.splice,WJ=function(a,y){if(!isArrayLike(a))return[];for(var x=a?y.length:0,b=x-1;x--;){var z=void 0,ee=y[x];(x===b||ee!==z)&&(z=ee,b4.call(a,ee,1))}return a},jJ=null,GJ=function(E,a,y){if(!isArray(E)&&!isPlainObject(E))return E;var x=y;return each(E,function(b,z){x=a(x,b,z)}),x},HJ=null,VJ=function(E,a){var y=[];if(!isArrayLike(E))return y;for(var x=-1,b=[],z=E.length;++xz[re])return 1;if(b[re]0},Eq=null,Aq=function(E,a){if(isArray(E)){for(var y,x=-1/0,b=0;bx&&(y=z,x=ee)}return y}},xq=function(E,a){if(isArray(E)){for(var y,x=1/0,b=0;bre&&fe>re);)if(ae.push(se),re-=fe,ee=ee.substr(b),!ee)return ae.join("");for(;se=ee.substr(0,1),fe=measureTextWidth(se,y),!(fe+z>re);)if(ae.push(se),re-=fe,ee=ee.substr(1),!ee)return ae.join("");return""+ae.join("")+x},i$=function(){function E(){this.map={}}return E.prototype.has=function(a){return this.map[a]!==void 0},E.prototype.get=function(a,y){var x=this.map[a];return x===void 0?y:x},E.prototype.set=function(a,y){this.map[a]=y},E.prototype.clear=function(){this.map={}},E.prototype.delete=function(a){delete this.map[a]},E.prototype.size=function(){return Object.keys(this.map).length},E}(),o$=null,U4=function(a,y,x){for(var b=1/0,z,ee=0;eeme[st.id]+$t?(me[Yt]=me[st.id]+$t,Ee[Yt]=[st.id]):me[Yt]===me[st.id]+$t&&Ee[Yt].push(st.id)})},We=0;We0&&fe.length>0;){var Oe=fe[fe.length-1];if(Oe.length){var ke=Oe.shift();ke&&(ae.push(ke),se[ke]=!0,Ee=b?yd(ke,re,"target"):yd(ke,re),fe.push(Ee.filter(function(Ke){return!se[Ke]})))}else{var We=ae.pop();se[We]=!1,fe.pop();continue}if(ae[ae.length-1]===x){var je=ae.map(function(Ze){return Ze});me.push(je);var We=ae.pop();se[We]=!1,fe.pop()}}return me},G4=function(a,y){for(var x=vp(a,y),b=[],z=x.length,ee=0;eeb[ee][ae]+b[ae][re]&&(b[ee][re]=b[ee][ae]+b[ae][re]);return b},MA=G4,H4=function(a,y,x,b){y===void 0&&(y=!1),x===void 0&&(x="weight"),b===void 0&&(b=1e3);var z=a.nodes,ee=z===void 0?[]:z,re=a.edges,ae=re===void 0?[]:re,se={},fe={};ee.forEach(function(tt,st){var gt=m2();tt.clusterId=gt,se[gt]={id:gt,nodes:[tt]},fe[tt.id]={node:tt,idx:st}});var me=vp(a,y),Ee=[],Oe={};me.forEach(function(tt,st){var gt=0,mt=ee[st].id;Oe[mt]={},tt.forEach(function(ct,Lt){if(ct){gt+=ct;var _t=ee[Lt].id;Oe[mt][_t]=ct}}),Ee.push(gt)});for(var ke=0,We=function(){var st=!1;if(ee.forEach(function(gt){var mt={};Object.keys(Oe[gt.id]).forEach(function(Fn){var tr=Oe[gt.id][Fn],Cn=fe[Fn].node,xn=Cn.clusterId;mt[xn]||(mt[xn]=0),mt[xn]+=tr});var ct=-1/0,Lt=[];if(Object.keys(mt).forEach(function(Fn){ct=0&&Lt.splice(_t,1),Lt&&Lt.length){st=!0;var Yt=se[gt.clusterId],$t=Yt.nodes.indexOf(gt);Yt.nodes.splice($t,1);var En=Math.floor(Math.random()*Lt.length),on=se[Lt[En]];on.nodes.push(gt),gt.clusterId=on.id}}}),!st)return"break";ke++};ke0&&ct>Lt&&ct-LtLt&&(Yt=me.map(function(Ln){return{node:Ln,clusterId:Ln.clusterId}}),$t=xv(Ze),Lt=ct),En||_t>100)break;_t++,Object.keys(Ze).forEach(function(Ln){var nr=0;Oe.forEach(function(An){var fr=An.source,ra=An.target,aa=Je[fr].node.clusterId,Gr=Je[ra].node.clusterId;(aa===Ln&&Gr!==Ln||Gr===Ln&&aa!==Ln)&&(nr=nr+(An[x]||1))}),Ze[Ln].sumTot=nr}),me.forEach(function(Ln,nr){var An=Ze[Ln.clusterId],fr=0,ra,aa=st[nr]/(2*mt),Gr=0,Sr=An.nodes;Sr.forEach(function(so){var Ao=Je[so.id].idx;Gr+=tt[nr][Ao]||0});var Kr=Gr-An.sumTot*aa,pa=Sr.filter(function(so){return so.id!==Ln.id}),Ua=[];pa.forEach(function(so,Ao){Ua[Ao]=ke[so.originIndex]});var ei=IA(pa,ke)*se,Co=gt[Ln.id];if(Object.keys(Co).forEach(function(so){var Ao=Je[so].node,ss=Ao.clusterId;if(ss!==Ln.clusterId){var Qo=Ze[ss],Ei=Qo.nodes;if(!(!Ei||!Ei.length)){var ki=0;Ei.forEach(function(mo){var Qi=Je[mo.id].idx;ki+=tt[nr][Qi]||0});var Sa=ki-Qo.sumTot*aa,_a=Ei.concat([Ln]),ni=[];_a.forEach(function(mo,Qi){ni[Qi]=ke[mo.originIndex]});var Ki=IA(_a,ke)*se,Ma=Sa-Kr;z&&(Ma=Sa+Ki-(Kr+ei)),Ma>fr&&(fr=Ma,ra=Qo)}}}),fr>0){ra.nodes.push(Ln);var Eo=Ln.clusterId;Ln.clusterId=ra.id;var ti=An.nodes.indexOf(Ln);An.nodes.splice(ti,1);var to=0,ji=0;Oe.forEach(function(so){var Ao=so.source,ss=so.target,Qo=Je[Ao].node.clusterId,Ei=Je[ss].node.clusterId;(Qo===ra.id&&Ei!==ra.id||Ei===ra.id&&Qo!==ra.id)&&(to=to+(so[x]||1)),(Qo===Eo&&Ei!==Eo||Ei===Eo&&Qo!==Eo)&&(ji=ji+(so[x]||1))}),ra.sumTot=to,An.sumTot=ji}})}var on={},Fn=0;Object.keys($t).forEach(function(Ln){var nr=$t[Ln];if(!nr.nodes||!nr.nodes.length){delete $t[Ln];return}var An=String(Fn+1);An!==Ln&&(nr.id=An,nr.nodes=nr.nodes.map(function(fr){return{id:fr.id,clusterId:An}}),$t[An]=nr,on[Ln]=An,delete $t[Ln],Fn++)}),Yt.forEach(function(Ln){var nr=Ln.node,An=Ln.clusterId;nr&&(nr.clusterId=An,nr.clusterId&&on[nr.clusterId]&&(nr.clusterId=on[nr.clusterId]))});var tr=[],Cn={};Oe.forEach(function(Ln){var nr=Ln.source,An=Ln.target,fr=Ln[x]||1,ra=Je[nr].node.clusterId,aa=Je[An].node.clusterId;if(!(!ra||!aa)){var Gr="".concat(ra,"---").concat(aa);if(Cn[Gr])Cn[Gr].weight+=fr,Cn[Gr].count++;else{var Sr={source:ra,target:aa,weight:fr,count:1};Cn[Gr]=Sr,tr.push(Sr)}}});var xn=[];return Object.keys($t).forEach(function(Ln){xn.push($t[Ln])}),{clusters:xn,clusterEdges:tr}},N2=J4,q4=function(a,y,x,b,z,ee,re,ae){return y===void 0&&(y=!1),x===void 0&&(x="weight"),b===void 0&&(b=1e-4),z===void 0&&(z=void 0),ee===void 0&&(ee=[]),re===void 0&&(re=["id"]),ae===void 0&&(ae=1),N2(a,y,x,b,!0,z,ee,re,ae)},$4=q4,e8=function(a,y){var x;y===void 0&&(y=1);for(var b=xv(a),z=b.nodes,ee=z===void 0?[]:z,re=b.edges,ae=re===void 0?[]:re,se=function(){var Ee=EA({nodes:ee,edges:ae}),Oe=Object.keys(Ee);Oe.sort(function(je,Ke){var Ze,Je;return((Ze=Ee[je])===null||Ze===void 0?void 0:Ze.degree)-((Je=Ee[Ke])===null||Je===void 0?void 0:Je.degree)});var ke=Oe[0];if(!ee.length||((x=Ee[ke])===null||x===void 0?void 0:x.degree)>=y)return"break";var We=ee.findIndex(function(je){return je.id===ke});ee.splice(We,1),ae=ae.filter(function(je){return!(je.source===ke||je.target===ke)})};;){var fe=se();if(fe==="break")break}return{nodes:ee,edges:ae}},t8=e8,R2=function(a,y,x){var b=[];switch(a){case Nd.EuclideanDistance:b=y[x];break;default:b=[];break}return b},n8=function(a,y,x,b,z,ee){y===void 0&&(y=3),x===void 0&&(x=void 0),b===void 0&&(b=[]),z===void 0&&(z=["id"]),ee===void 0&&(ee=Nd.EuclideanDistance);var re=a.nodes,ae=re===void 0?[]:re,se=a.edges,fe=se===void 0?[]:se,me={clusters:[{id:"0",nodes:ae}],clusterEdges:[]};if(ee===Nd.EuclideanDistance&&!ae.every(function(An){return An.hasOwnProperty(x)}))return me;var Ee=[],Oe=[];if(ee===Nd.EuclideanDistance&&(Ee=xp(ae,x),Oe=Sp(Ee,b,z)),!Oe.length)return me;for(var ke=bA(Oe.map(function(An){return An.join("")})),We=Math.min(y,ae.length,ke.length),je=0;jest&&!Ke.find(function(pa){return _4(pa,R2(ee,Oe,ae[ra].originIndex))})&&(st=Kr,gt=ra)}},ct=0;ct=0;on--)Je[Number(ae[je].clusterId)][on].id===ae[je].id&&Je[Number(ae[je].clusterId)].splice(on,1);ae[je].clusterId=String(_t),Je[_t].push(ae[je])}}for(var Fn=!1,je=0;je=1e3)break}var Ln=[],nr={};return fe.forEach(function(An){var fr,ra,aa=An.source,Gr=An.target,Sr=(fr=ae.find(function(ei){return ei.id===aa}))===null||fr===void 0?void 0:fr.clusterId,Kr=(ra=ae.find(function(ei){return ei.id===Gr}))===null||ra===void 0?void 0:ra.clusterId,pa="".concat(Sr,"---").concat(Kr);if(nr[pa])nr[pa].count++;else{var Ua={source:Sr,target:Kr,count:1};nr[pa]=Ua,Ln.push(Ua)}}),{clusters:Je,clusterEdges:Ln}},r8=n8,a8=function(a,y){var x=new Ed(y),b=x.norm2(),z=new Ed(a),ee=z.norm2(),re=x.dot(z),ae=b*ee,se=ae?re/ae:0;return se},F2=a8,i8=function(a,y,x,b,z){a===void 0&&(a=[]),x===void 0&&(x=void 0),b===void 0&&(b=[]),z===void 0&&(z=[]);var ee=xv(a.filter(function(Ee){return Ee.id!==y.id})),re=a.findIndex(function(Ee){return Ee.id===y.id}),ae=xp(a,x),se=Sp(ae,b,z),fe=se[re],me=[];return ee.forEach(function(Ee,Oe){if(Ee.id!==y.id){var ke=se[Oe],We=F2(ke,fe);me.push(We),Ee.cosineSimilarity=We}}),ee.sort(function(Ee,Oe){return Oe.cosineSimilarity-Ee.cosineSimilarity}),{allCosineSimilarity:me,similarNodes:ee}},o8=i8,s8=function(){function E(a){this.count=a.length,this.parent={};for(var y=0,x=a;y0&&(this.list[0]=y,this.moveDown(0)),a},E.prototype.insert=function(a){if(a!==null){this.list.push(a);var y=this.list.length-1;return this.moveUp(y),!0}return!1},E.prototype.moveUp=function(a){for(var y=this.getParent(a);a&&a>0&&this.compareFn(this.list[y],this.list[a])>0;){var x=this.list[y];this.list[y]=this.list[a],this.list[a]=x,a=y,y=this.getParent(a)}},E.prototype.moveDown=function(a){var y,x=a,b=this.getLeft(a),z=this.getRight(a),ee=this.list.length;b!==null&&b0?x=b:z!==null&&z0&&(x=z),a!==x&&(y=[this.list[x],this.list[a]],this.list[a]=y[0],this.list[x]=y[1],this.moveDown(x))},E}(),d8=c8,f8=function(a,y){var x=[],b=a.nodes,z=b===void 0?[]:b,ee=a.edges,re=ee===void 0?[]:ee;if(z.length===0)return x;var ae=z[0],se=new Set;se.add(ae);var fe=function(je,Ke){return y?je.weight-Ke.weight:0},me=new d8(fe);for(mp(ae.id,re).forEach(function(We){me.insert(We)});!me.isEmpty();){var Ee=me.delMin(),Oe=Ee.source,ke=Ee.target;se.has(Oe)&&se.has(ke)||(x.push(Ee),se.has(Oe)||(se.add(Oe),mp(Oe,re).forEach(function(We){me.insert(We)})),se.has(ke)||(se.add(ke),mp(ke,re).forEach(function(We){me.insert(We)})))}return x},k2=function(a,y){var x=[],b=a.nodes,z=b===void 0?[]:b,ee=a.edges,re=ee===void 0?[]:ee;if(z.length===0)return x;var ae=re.map(function(Oe){return Oe});y&&ae.sort(function(Oe,ke){return Oe.weight-ke.weight});for(var se=new l8(z.map(function(Oe){return Oe.id}));ae.length>0;){var fe=ae.shift(),me=fe.source,Ee=fe.target;se.connected(me,Ee)||(x.push(fe),se.union(me,Ee))}return x},h8=function(a,y,x){var b={prim:f8,kruskal:k2};return x?b[x](a,y):k2(a,y)},g8=h8,v8=function(a,y,x){typeof y!="number"&&(y=1e-6),typeof x!="number"&&(x=.85);for(var b=1,z=0,ee=1e3,re=a.nodes,ae=re===void 0?[]:re,se=a.edges,fe=se===void 0?[]:se,me=ae.length,Ee,Oe={},ke={},We=0;We0&&b>y;){z=0;for(var We=0;We0&&(Ee+=ke[st]/gt)}Oe[Ke]=x*Ee,z+=Oe[Ke]}}z=(1-z)/me,b=0;for(var We=0;We=0;x--){var b=this.dfsEdgeList[x],z=b.fromNode,ee=b.toNode;zOe||b.hasNode(ee[Ee.to])||(y.labelJe;st--){var gt=tt(st);if(gt==="break")break}if(Ke){var mt=a.findMinLabel(je);ee.dfsEdgeList.push(new pg(We,Ze,Ef,mt.edgeLabel,Ef));var ct=ee.dfsEdgeList.length-1;return a.dfsCode.dfsEdgeList[ct]!==ee.dfsEdgeList[ct]?!1:me(je[mt.edgeLabel].projected)}var Lt={};Ke=!1;var _t=0;Ee.forEach(function(tr){var Cn=new Cp(tr),xn=a.findForwardPureEdges(b,Cn.edges[Oe[0]],ke,Cn);xn.length>0&&(Ke=!0,_t=We,xn.forEach(function(Ln){var nr="".concat(Ln.label,"-").concat(z[Ln.to].label);Lt[nr]||(Lt[nr]={projected:[],edgeLabel:Ln.label,nodeLabel2:z[Ln.to].label}),Lt[nr].projected.push({graphId:b.id,edge:Ln,preNode:tr})}))});for(var Yt=Oe.length,$t=function(Cn){if(Ke)return"break";var xn=Oe[Cn];Ee.forEach(function(Ln){var nr=new Cp(Ln),An=a.findForwardRmpathEdges(b,nr.edges[xn],ke,nr);An.length>0&&(Ke=!0,_t=ee.dfsEdgeList[xn].fromNode,An.forEach(function(fr){var ra="".concat(fr.label,"-").concat(z[fr.to].label);Lt[ra]||(Lt[ra]={projected:[],edgeLabel:fr.label,nodeLabel2:z[fr.to].label}),Lt[ra].projected.push({graphId:b.id,edge:fr,preNode:Ln})}))})},st=0;st=0;ke--){var We=y.findBackwardEdge(me,Oe.edges[z[ke]],Oe.edges[z[0]],Oe);if(We){var je="".concat(y.dfsCode.dfsEdgeList[z[ke]].fromNode,"-").concat(We.label);se[je]||(se[je]={projected:[],toNodeId:y.dfsCode.dfsEdgeList[z[ke]].fromNode,edgeLabel:We.label}),se[je].projected.push({graphId:fe.graphId,edge:We,preNode:fe})}}if(!(b>=y.maxNodeNum)){var Ke=y.findForwardPureEdges(me,Oe.edges[z[0]],re,Oe);Ke.forEach(function(Je){var tt="".concat(ee,"-").concat(Je.label,"-").concat(Ee[Je.to].label);ae[tt]||(ae[tt]={projected:[],fromNodeId:ee,edgeLabel:Je.label,nodeLabel2:Ee[Je.to].label}),ae[tt].projected.push({graphId:fe.graphId,edge:Je,preNode:fe})});for(var Ze=function(tt){var st=y.findForwardRmpathEdges(me,Oe.edges[z[tt]],re,Oe);st.forEach(function(gt){var mt="".concat(y.dfsCode.dfsEdgeList[z[tt]].fromNode,"-").concat(gt.label,"-").concat(Ee[gt.to].label);ae[mt]||(ae[mt]={projected:[],fromNodeId:y.dfsCode.dfsEdgeList[z[tt]].fromNode,edgeLabel:gt.label,nodeLabel2:Ee[gt.to].label}),ae[mt].projected.push({graphId:fe.graphId,edge:gt,preNode:fe})})},ke=0;keJe){var tt=Je;Je=Ze,Ze=tt}var st=Ke.label,gt="".concat(se,"-").concat(Ze,"-").concat(st,"-").concat(Je),mt="".concat(Ze,"-").concat(st,"-").concat(Je);if(!ee[mt]){var ct=ee[mt]||0;ct++,ee[mt]=ct}ae[gt]={graphId:se,nodeLabel1:Ze,edgeLabel:st,nodeLabel2:Je}})})}),Object.keys(z).forEach(function(se){var fe=z[se];if(!(fe2*y)););if(je<2*y&&(re["".concat(fe,"-").concat(We)]={start:fe,end:We,distance:z[fe][We]},me++,ae++,ae>=x))return re;if(Ee++,Ee>2*y)break}if(meEe&&(ae=Ee);var Oe=x[me.id].inDegree;se>Oe&&(se=Oe);var ke=x[me.id].outDegree;fe>ke&&(fe=ke)}),a[y]={degree:ae,inDegree:se,outDegree:fe}),{minPatternNodeLabelDegree:ae,minPatternNodeLabelInDegree:se,minPatternNodeLabelOutDegree:fe}},w8=function(a,y,x,b,z,ee,re){var ae;if(x===void 0&&(x=!1),ee===void 0&&(ee="cluster"),re===void 0&&(re="cluster"),!(!a||!a.nodes)){var se=a.nodes.length;if(se){var fe=MA(a,x),me=MA(y,x),Ee=Y2(a.nodes,fe,x),Oe=Y2(y.nodes,me,x),ke=Z2(a.nodes,ee),We=ke.nodeMap,je=ke.nodeLabelMap,Ke=Z2(y.nodes,ee),Ze=Ke.nodeMap,Je=Ke.nodeLabelMap;Q2(a.edges,re,We);var tt=Q2(y.edges,re,Ze).edgeLabelMap,st=[];me==null||me.forEach(function(ki){st=st.concat(ki)}),z||(z=Math.max.apply(Math,(0,Bt.ev)((0,Bt.ev)([],st,!1),[2],!1))),b||(b=z);var gt=V2(a,fe,ee,b),mt=V2(y,me,ee,b),ct=Math.min(100,se*(se-1)/2),Lt=b8(b,se,ct,gt,fe),_t=Pp(Lt,gt,a),Yt=10,$t=1,En=1,on=4,Fn={graphs:_t,nodeLabelProp:ee,edgeLabelProp:re,minSupport:$t,minNodeNum:En,maxNodeNum:on,directed:x},tr=S8(Fn).slice(0,Yt),Cn=tr.length,xn=[];tr.forEach(function(ki,Sa){xn[Sa]={},Object.keys(_t).forEach(function(_a){var ni=_t[_a],Ki=wp(ni,ki,ee,re);xn[Sa][_a]=Ki})});var Ln=C8(xn,Cn,tr),nr=Ln.structure,An=Ln.structureCountMap,fr=y.nodes[0],ra=[],aa=(ae=y.nodes[0])===null||ae===void 0?void 0:ae[ee],Gr=-1/0;y.nodes.forEach(function(ki){var Sa=ki[ee],_a=je[Sa];(_a==null?void 0:_a.length)>Gr&&(Gr=_a.length,ra=_a,aa=Sa,fr=ki)});var Sr={},Kr={},pa={},Ua={},ei={},Co={};Object.keys(Je).forEach(function(ki,Sa){ei[ki]=[],x&&(Co[ki]=[]);var _a=-1/0,ni=Je[ki],Ki={};ni.forEach(function(as){var ms=Oe["".concat(fr.id,"-").concat(as.id)];if(ms&&ei[ki].push(ms),_aei[ki][_l]){Rc=!0;break}if(Rc)return ra.splice(ms,1),"continue";var Fs={};ls.neighbors.forEach(function(ai){var ao=Ee["".concat(ps.id,"-").concat(ai.id)];Fs["".concat(ps.id,"-").concat(ai.id)]={start:We[ps.id].idx,end:We[ai.id].idx,distance:ao}}),_t=Pp(Fs,gt,a,_t);var Ku=[];Object.keys(Fs).forEach(function(ai){if(An[ai]){Ku.push(An[ai]);return}var ao=_t[ai];An[ai]=wp(ao,nr,ee,re),Ku.push(An[ai])}),Ku=Ku.sort(function(ai,ao){return ao-ai});for(var ks=!1,_l=0;_l=0;Is--)Qi(Is)});var Eo=[];ra==null||ra.forEach(function(ki){for(var Sa=We[ki.id].idx,_a=K2(a.nodes,fe[Sa],Sa,ee,z),ni=_a.neighbors,Ki=ni.length,Ma=!1,mo=Ki-1;mo>=0;mo--){if(ni.length+1ls){ni.splice(mo,1);continue}if(x){var To="".concat(Qi.id,"-").concat(ki.id),Nc=Ee[To];ps=Co[Is].length-1;var Rc=Co[Is][ps];if(Nc>Rc){ni.splice(mo,1);continue}}var _l=An[as]?An[as]:P8(a,ki,Qi,We,ms,gt,nr,ee,re,An,_t),Fs="".concat(fr.id,"-").concat(Is),Ku=Ua[Fs][Ua[Fs].length-1];if(_l=0;ms--){var Rc=Nc(ms);if(Rc==="break")break}if(To)return Eo.splice(Sa,1),"continue";_a.edges=mo;var _l=Ap(_a,_a.nodes[0].id,!1).length;if(Object.keys(_l).reverse().forEach(function(Qs){if(!(Qs===_a.nodes[0].id||To)){if(_l[Qs]===1/0){var Js=Ma[Qs].node[ee];if(Ki[Js]--,Ki[Js]to[Tl][to[Tl].length-1]){var Js=Ma[Qs].node[ee];if(Ki[Js]--,Ki[Js]=0;ao--){var zo=_a.nodes[ao],Yo=Ma[zo.id].degree,Do=Ma[zo.id].inDegree,Yl=Ma[zo.id].outDegree,ed=zo[ee],bd=X2(Sr,ed,Ze,Je),Ug=bd.minPatternNodeLabelDegree,Nh=bd.minPatternNodeLabelInDegree,W0=bd.minPatternNodeLabelOutDegree,Rh=x?Yo=0;gc--){var Fc=mo[gc];if(!Ma[Fc.source]||!Ma[Fc.target]){mo.splice(gc,1);var vc=Fc[re];if(Qi[vc]--,Ma[Fc.source]&&(Ma[Fc.source].degree--,Ma[Fc.source].outDegree--),Ma[Fc.target]&&(Ma[Fc.target].degree--,Ma[Fc.target].inDegree--),tt[vc]&&Qi[vc]=0;Ao--){var ss=so(Ao);if(ss==="break")break}for(var Qo=Eo.length,Ei=function(Sa){var _a=Eo[Sa],ni={};_a.edges.forEach(function(mo){var Qi="".concat(mo.source,"-").concat(mo.target,"-").concat(mo.label);ni[Qi]?ni[Qi]++:ni[Qi]=1});for(var Ki=function(Qi){var Is=Eo[Qi],as={};Is.edges.forEach(function(ps){var ls="".concat(ps.source,"-").concat(ps.target,"-").concat(ps.label);as[ls]?as[ls]++:as[ls]=1});var ms=!0;Object.keys(as).length!==Object.keys(ni).length?ms=!1:Object.keys(ni).forEach(function(ps){as[ps]!==ni[ps]&&(ms=!1)}),ms&&Eo.splice(Qi,1)},Ma=Qo-1;Ma>Sa;Ma--)Ki(Ma);Qo=Eo.length},Ao=0;Ao<=Qo-1;Ao++)Ei(Ao);return Eo}}},M8=w8,D8=function(){function E(a){a===void 0&&(a=10),this.linkedList=new v2,this.maxStep=a}return Object.defineProperty(E.prototype,"length",{get:function(){return this.linkedList.toArray().length},enumerable:!1,configurable:!0}),E.prototype.isEmpty=function(){return!this.linkedList.head},E.prototype.isMaxStack=function(){return this.toArray().length>=this.maxStep},E.prototype.peek=function(){return this.isEmpty()?null:this.linkedList.head.value},E.prototype.push=function(a){this.linkedList.prepend(a),this.length>this.maxStep&&this.linkedList.deleteTail()},E.prototype.pop=function(){var a=this.linkedList.deleteHead();return a?a.value:null},E.prototype.toArray=function(){return this.linkedList.toArray().map(function(a){return a.value})},E.prototype.clear=function(){for(;!this.isEmpty();)this.pop()},E}(),I8=D8,T8=b2,c$={getAdjMatrix:vp,breadthFirstSearch:u4,connectedComponent:y2,getDegree:EA,getInDegree:d4,getOutDegree:f4,detectCycle:b2,detectDirectedCycle:T8,detectAllCycles:v4,detectAllDirectedCycle:S2,detectAllUndirectedCycle:x2,depthFirstSearch:A2,dijkstra:Ap,findAllPath:j4,findShortestPath:wA,floydWarshall:MA,labelPropagation:V4,louvain:N2,iLouvain:$4,kCore:t8,kMeans:r8,cosineSimilarity:F2,nodesCosineSimilarity:o8,minimumSpanningTree:g8,pageRank:_2,getNeighbors:yd,Stack:I8,GADDI:M8};function Lr(E){if(E.id!==void 0)return E.id;if(E.source!==void 0&&E.target!==void 0)return`${E.source}-${E.target}`;throw new Error(Nf("The datum does not have available id."))}function Mp(E){return E.combo}function J2(E,a){const y={nodes:(E.nodes||[]).map(Lr),edges:(E.edges||[]).map(Lr),combos:(E.combos||[]).map(Lr)};return a?Object.values(y).flat():y}const q2=(E,a,y)=>{var x;switch(y.type){case"degree":{const b=new Map;return(x=E.nodes)===null||x===void 0||x.forEach(z=>{const ee=a(Lr(z),y.direction).length;b.set(Lr(z),ee)}),b}case"betweenness":return O8(E,y.directed,y.weightPropertyName);case"closeness":return L8(E,y.directed,y.weightPropertyName);case"eigenvector":return N8(E,y.directed);case"pagerank":return B8(E,y.epsilon,y.linkProb);default:return $2(E)}},$2=E=>{var a;const y=new Map;return(a=E.nodes)===null||a===void 0||a.forEach(x=>{y.set(Lr(x),0)}),y},O8=(E,a,y)=>{const x=$2(E),{nodes:b=[]}=E;return b.forEach(z=>{b.forEach(ee=>{if(z!==ee){const{allPath:re}=wA(E,Lr(z),Lr(ee),a,y),ae=re.length;re.flat().forEach(se=>{se!==Lr(z)&&se!==Lr(ee)&&x.set(se,x.get(se)+1/ae)})}})}),x},L8=(E,a,y)=>{const x=new Map,{nodes:b=[]}=E;return b.forEach(z=>{const ee=b.reduce((re,ae)=>{if(z!==ae){const{length:se}=wA(E,Lr(z),Lr(ae),a,y);re+=se}return re},0);x.set(Lr(z),1/ee)}),x},B8=(E,a,y)=>{var x;const b=new Map,z=_2(E,a,y);return(x=E.nodes)===null||x===void 0||x.forEach(ee=>{b.set(Lr(ee),z[Lr(ee)])}),b},N8=(E,a)=>{const{nodes:y=[]}=E,x=R8(E,a),b=F8(x,y.length),z=new Map;return y.forEach((ee,re)=>{z.set(Lr(ee),b[re])}),z},R8=(E,a)=>{const{nodes:y=[],edges:x=[]}=E,b=Array(y.length).fill(null).map(()=>Array(y.length).fill(0));return x.forEach(({source:z,target:ee})=>{const re=y.findIndex(se=>Lr(se)===z),ae=y.findIndex(se=>Lr(se)===ee);a?b[re][ae]=1:(b[re][ae]=1,b[ae][re]=1)}),b},F8=(E,a,y=100,x=1e-6)=>{let b=Array(a).fill(1),z=1/0;for(let ee=0;eex;ee++){const re=Array(a).fill(0);for(let se=0;sese+fe*fe,0));for(let se=0;sese+(fe-b[me])*fe,0)),b=re}return b};function ph(E,a,y,x=nu){const b=new Map(E.map(Ee=>[y(Ee),Ee])),z=new Map(a.map(Ee=>[y(Ee),Ee])),ee=new Set(b.keys()),re=new Set(z.keys()),ae=[],se=[],fe=[],me=[];return re.forEach(Ee=>{ee.has(Ee)?x(b.get(Ee),z.get(Ee))?me.push(z.get(Ee)):se.push(z.get(Ee)):ae.push(z.get(Ee))}),ee.forEach(Ee=>{re.has(Ee)||fe.push(b.get(Ee))}),{enter:ae,exit:fe,keep:me,update:se}}function yg(E,a,y){const x=b=>{y&&!y(b)||(b.style.visibility=a)};E.forEach(b=>{x(b)})}function k8(E,a,y){const x={},b=z=>(z in x||(x[z]=0),`${a}-${z}-${x[z]++}`);return y.map(z=>typeof z=="string"?{type:z,key:b(z)}:typeof z=="function"?z.call(E):z.key?z:Object.assign(Object.assign({},z),{key:b(z.type)}))}class TA{constructor(a){this.extensions=[],this.extensionMap={},this.context=a}setExtensions(a){const y=k8(this.context.graph,this.category,a),{enter:x,update:b,exit:z,keep:ee}=ph(this.extensions,y,re=>re.key);this.createExtensions(x),this.updateExtensions([...b,...ee]),this.destroyExtensions(z),this.extensions=y}createExtension(a){const{category:y}=this,{key:x,type:b}=a,z=Bf(y,b);if(!z)return Tc.warn(`The extension ${b} of ${y} is not registered.`);const ee=new z(this.context,a);ee.initialized=!0,this.extensionMap[x]=ee}createExtensions(a){a.forEach(y=>this.createExtension(y))}updateExtension(a){const{key:y}=a,x=this.extensionMap[y];x&&x.update(a)}updateExtensions(a){a.forEach(y=>this.updateExtension(y))}destroyExtension(a){const y=this.extensionMap[a];y&&(y.initialized&&!y.destroyed&&y.destroy(),delete this.extensionMap[a])}destroyExtensions(a){a.forEach(({key:y})=>this.destroyExtension(y))}destroy(){this.destroyExtensions(this.extensions),this.context={},this.extensions=[],this.extensionMap={}}}class OA{constructor(a,y){this.events=[],this.initialized=!1,this.destroyed=!1,this.context=a,this.options=y}update(a){this.options=Object.assign(this.options,a)}destroy(){this.context={},this.options={},this.destroyed=!0}}class Qc extends OA{}class Dp extends Qc{constructor(a,y){super(a,Object.assign({},Dp.defaultOptions,y)),this.isOverlapping=(x,b)=>b.some(z=>x.intersects(z)),this.occupiedBounds=[],this.detectLabelCollision=x=>{const b=this.context.viewport,z={show:[],hide:[]};return this.occupiedBounds=[],x.forEach(ee=>{const re=ee.getShape("label").getRenderBounds();b.isInViewport(re,!0)&&!this.isOverlapping(re,this.occupiedBounds)?(z.show.push(ee),this.occupiedBounds.push(mh(re,this.options.padding))):z.hide.push(ee)}),z},this.hideLabelIfExceedViewport=(x,b)=>{const{exit:z}=ph(x,b,ee=>ee.id);z==null||z.forEach(this.hideLabel)},this.nodeCentralities=new Map,this.sortNodesByCentrality=(x,b)=>{const{model:z}=this.context,ee=z.getData(),re=z.getRelatedEdgesData.bind(z);return x.map(se=>(this.nodeCentralities.has(se.id)||(this.nodeCentralities=q2(ee,re,b)),{node:se,centrality:this.nodeCentralities.get(se.id)})).sort((se,fe)=>fe.centrality-se.centrality).map(se=>se.node)},this.sortLabelElementsInView=x=>{const{sort:b,sortNode:z,sortCombo:ee,sortEdge:re}=this.options,{model:ae}=this.context;if($i(b))return x.sort((We,je)=>b(ae.getElementDataById(We.id),ae.getElementDataById(je.id)));const{node:se=[],edge:fe=[],combo:me=[]}=hp(x,We=>We.type),Ee=$i(ee)?me.sort((We,je)=>ee(...ae.getComboData([We.id,je.id]))):me,Oe=$i(z)?se.sort((We,je)=>z(...ae.getNodeData([We.id,je.id]))):this.sortNodesByCentrality(se,z),ke=$i(re)?fe.sort((We,je)=>re(...ae.getEdgeData([We.id,je.id]))):fe;return[...Ee,...Oe,...ke]},this.labelElementsInView=[],this.isFirstRender=!0,this.onToggleVisibility=x=>{var b;if(((b=x.data)===null||b===void 0?void 0:b.stage)==="zIndex")return;if(!this.validate(x)){this.hiddenElements.size>0&&(this.hiddenElements.forEach(this.showLabel),this.hiddenElements.clear());return}const z=this.isFirstRender?this.getLabelElements():this.getLabelElementsInView();this.hideLabelIfExceedViewport(this.labelElementsInView,z),this.labelElementsInView=z;const ee=this.sortLabelElementsInView(this.labelElementsInView),{show:re,hide:ae}=this.detectLabelCollision(ee);for(let se=re.length-1;se>=0;se--)this.showLabel(re[se]);ae.forEach(this.hideLabel)},this.hiddenElements=new Map,this.hideLabel=x=>{const b=x.getShape("label");b&&yg(b,"hidden"),this.hiddenElements.set(x.id,x)},this.showLabel=x=>{const b=x.getShape("label");b&&yg(b,"visible"),x.toFront(),this.hiddenElements.delete(x.id)},this.onTransform=f2(this.onToggleVisibility,this.options.throttle,{leading:!0}),this.enableToggle=!0,this.toggle=x=>{this.enableToggle&&this.onToggleVisibility(x)},this.onBeforeRender=()=>{this.enableToggle=!1},this.onAfterRender=x=>{this.onToggleVisibility(x),this.enableToggle=!0},this.bindEvents()}update(a){this.unbindEvents(),super.update(a),this.bindEvents(),this.onToggleVisibility({})}getLabelElements(){const{elementMap:a}=this.context.element,y=[];for(const x in a){const b=a[x];b.isVisible()&&b.getShape("label")&&y.push(b)}return y}getLabelElementsInView(){const a=this.context.viewport;return this.getLabelElements().filter(y=>a.isInViewport(y.getShape("key").getRenderBounds()))}bindEvents(){const{graph:a}=this.context;a.on(si.BEFORE_RENDER,this.onBeforeRender),a.on(si.AFTER_RENDER,this.onAfterRender),a.on(si.AFTER_DRAW,this.toggle),a.on(si.AFTER_LAYOUT,this.toggle),a.on(si.AFTER_TRANSFORM,this.onTransform)}unbindEvents(){const{graph:a}=this.context;a.off(si.BEFORE_RENDER,this.onBeforeRender),a.off(si.AFTER_RENDER,this.onAfterRender),a.off(si.AFTER_DRAW,this.toggle),a.off(si.AFTER_LAYOUT,this.toggle),a.off(si.AFTER_TRANSFORM,this.onTransform)}validate(a){if(this.destroyed)return!1;const{enable:y}=this.options;return $i(y)?y(a):!!y}destroy(){this.unbindEvents(),super.destroy()}}Dp.defaultOptions={enable:!0,throttle:100,padding:0,sortNode:{type:"degree"}};var _8=function(E){if(!fA(E)||!sC(E,"Object"))return!1;if(Object.getPrototypeOf(E)===null)return!0;for(var a=E;Object.getPrototypeOf(a)!==null;)a=Object.getPrototypeOf(a);return Object.getPrototypeOf(E)===a},m0=_8,z8=5;function U8(E,a){if(Object.hasOwn)return Object.hasOwn(E,a);if(E==null)throw new TypeError("Cannot convert undefined or null to object");return Object.prototype.hasOwnProperty.call(Object(E),a)}function ew(E,a,y,x){y=y||0,x=x||z8;for(var b in a)if(U8(a,b)){var z=a[b];z!==null&&m0(z)?(m0(E[b])||(E[b]={}),yy+a[x])}function fl(E,a){return E.map((y,x)=>y-a[x])}function Rd(E,a){return typeof a=="number"?E.map(y=>y*a):E.map((y,x)=>y*a[x])}function Fd(E,a){return typeof a=="number"?E.map(y=>y/a):E.map((y,x)=>y/a[x])}function j8(E,a){return E.reduce((y,x,b)=>y+x*a[b],0)}function G8(E,a){const y=Sv(E),x=Sv(a);return[y[1]*x[2]-y[2]*x[1],y[2]*x[0]-y[0]*x[2],y[0]*x[1]-y[1]*x[0]]}function yh(E,a){return E.map(y=>y*a)}function xl(E,a){return Math.sqrt(E.reduce((y,x,b)=>y+Math.pow(x-a[b]||0,2),0))}function Ip(E,a){return E.reduce((y,x,b)=>y+Math.abs(x-a[b]),0)}function Rf(E){const a=E.reduce((y,x)=>y+Math.pow(x,2),0);return E.map(y=>y/Math.sqrt(a))}function LA(E,a,y=!1){const x=E[0]*a[1]-E[1]*a[0];let b=Math.acos(Rd(E,a).reduce((z,ee)=>z+ee,0)/(xl(E,tw)*xl(a,tw)));return y&&x<0&&(b=2*Math.PI-b),b}function d$(E,a){return E.every((y,x)=>y===a[x])}function Tp(E,a=!0){return a?[-E[1],E[0]]:[E[1],-E[0]]}function BA(E,a){return E.map(y=>y%a)}function Eg(E){return[E[0],E[1]]}function Sv(E){return QR(E)?[E[0],E[1],0]:E}function nw(E){const[a,y]=E;return!a&&!y?0:Math.atan2(y,a)}function rw(E,a){const[y,x]=E;if(a%360===0)return[y,x];const b=a*Math.PI/180,z=Math.cos(b),ee=Math.sin(b);return[y*z-x*ee,y*ee+x*z]}function aw(E,a){const[y,x]=E,[b,z]=a,ee=fl(y,x),re=fl(b,z);return G8(ee,re).every(ae=>ae===0)}function NA(E,a,y=!1){if(aw(E,a))return;const[x,b]=E,[z,ee]=a,re=((x[0]-z[0])*(z[1]-ee[1])-(x[1]-z[1])*(z[0]-ee[0]))/((x[0]-b[0])*(z[1]-ee[1])-(x[1]-b[1])*(z[0]-ee[0])),ae=ee[0]-z[0]?(x[0]-z[0]+re*(b[0]-x[0]))/(ee[0]-z[0]):(x[1]-z[1]+re*(b[1]-x[1]))/(ee[1]-z[1]);if(!(!y&&(!mf(re,0,1)||!mf(ae,0,1))))return[x[0]+re*(b[0]-x[0]),x[1]+re*(b[1]-x[1])]}function iw(E){if(Array.isArray(E))return mf(E[0],0,1)&&mf(E[1],0,1)?E:[.5,.5];const a=E.split("-"),y=a.includes("left")?0:a.includes("right")?1:.5,x=a.includes("top")?0:a.includes("bottom")?1:.5;return[y,x]}function Au(E){const{x:a=0,y=0,z:x=0}=E.style||{};return[+a,+y,+x]}function H8(E){const{x:a,y,z:x}=E.style||{};return a!==void 0||y!==void 0||x!==void 0}function ow(E,a){const[y,x]=a,{min:b,max:z}=E;return[b[0]+y*(z[0]-b[0]),b[1]+x*(z[1]-b[1])]}function Ff(E,a="center"){const y=iw(a);return ow(E,y)}function f$(E,a){const y=parseAnchor(a);return ow(E,y)}const h$=E=>{const[a,y]=E;return{left:Math.min(a[0],y[0]),right:Math.max(a[0],y[0]),top:Math.min(a[1],y[1]),bottom:Math.max(a[1],y[1])}};function Wu(E){var a;return[E.x,E.y,(a=E.z)!==null&&a!==void 0?a:0]}function kd(E){var a;return{x:E[0],y:E[1],z:(a=E[2])!==null&&a!==void 0?a:0}}function g$(E){return E.sort((a,y)=>a[0]-y[0]||a[1]-y[1])}function v$(E){const a=new Set;return E.filter(y=>{const x=y.join(",");return a.has(x)?!1:(a.add(x),!0)})}function bv(E,a=0){return E.map(y=>parseFloat(y.toFixed(a)))}function Eh(E,a,y,x=!1){if(nu(E,a))return E;const b=x?fl(E,a):fl(a,E),z=Rf(b),ee=[z[0]*y,z[1]*y];return es(Eg(E),ee)}function sw(E,a){return E[1]===a[1]}function V8(E,a){return E[0]===a[0]}function K8(E,a){return sw(E,a)||V8(E,a)}function lw(E,a,y){return aw([E,a],[a,y])}function uw(E,a){return[2*a[0]-E[0],2*a[1]-E[1]]}function cw(E,a,y,x=!0,b=!1){for(let z=0;zz!=Oe>z&&b<(Ee-fe)*(z-me)/(Oe-me)+fe&&(ee=!ee)}return ee}function Q8(E,a,y=!1){const x=Ff(a,"center"),b=[Ff(a,"left-top"),Ff(a,"right-top"),Ff(a,"right-bottom"),Ff(a,"left-bottom")];return cw(E,x,b,!1,y).point}function Op(E,a,y=!1){const x=a.center,b=y?uw(E,x):E,z=fl(b,a.center),ee=Math.atan2(z[1],z[0]);if(isNaN(ee))return x;const re=pf(a)/2,ae=yf(a)/2,se=x[0]+re*Math.cos(ee),fe=x[1]+ae*Math.sin(ee);return[se,fe]}function Y8(E,a){let y=1/0,x=[E[0],a[0]];return E.forEach(b=>{a.forEach(z=>{const ee=xl(b,z);ee{const z=J8(E,b);z1?fe=1:fe<0&&(fe=0);const me=y+fe*ae,Ee=x+fe*se;return[me,Ee]}function q8(E){const a=E.reduce((y,x)=>es(y,x),[0,0]);return Fd(a,E.length)}function RA(E,a=!0){const y=q8(E);return E.sort(([x,b],[z,ee])=>{const re=Math.atan2(b-y[1],x-y[0]),ae=Math.atan2(ee-y[1],z-y[0]);return a?ae-re:re-ae})}function fw(E,a){return[E,[E[0],a[1]],a,[a[0],E[1]]]}class ru{constructor(a,y,x){if(this.phase=y,this.pointerByTouch=[],this.initialDistance=null,this.emitter=a,ru.instance)return ru.callbacks[this.phase].push(x),ru.instance;this.onPointerDown=this.onPointerDown.bind(this),this.onPointerMove=this.onPointerMove.bind(this),this.onPointerUp=this.onPointerUp.bind(this),this.bindEvents(),ru.instance=this,ru.callbacks[this.phase].push(x)}bindEvents(){const{emitter:a}=this;a.on(ma.POINTER_DOWN,this.onPointerDown),a.on(ma.POINTER_MOVE,this.onPointerMove),a.on(ma.POINTER_UP,this.onPointerUp)}updatePointerPosition(a,y,x){const b=this.pointerByTouch.findIndex(z=>z.pointerId===a);b>=0&&(this.pointerByTouch[b]={x:y,y:x,pointerId:a})}onPointerDown(a){const{x:y,y:x}=a.client||{};if(!(y===void 0||x===void 0)&&(this.pointerByTouch.push({x:y,y:x,pointerId:a.pointerId}),a.pointerType==="touch"&&this.pointerByTouch.length===2)){ru.isPinching=!0;const b=this.pointerByTouch[0].x-this.pointerByTouch[1].x,z=this.pointerByTouch[0].y-this.pointerByTouch[1].y;this.initialDistance=Math.sqrt(b*b+z*z),ru.callbacks.pinchstart.forEach(ee=>ee(a,{scale:0}))}}onPointerMove(a){if(this.pointerByTouch.length!==2||this.initialDistance===null)return;const{x:y,y:x}=a.client||{};if(y===void 0||x===void 0)return;this.updatePointerPosition(a.pointerId,y,x);const b=this.pointerByTouch[0].x-this.pointerByTouch[1].x,z=this.pointerByTouch[0].y-this.pointerByTouch[1].y,re=Math.sqrt(b*b+z*z)/this.initialDistance;ru.callbacks.pinchmove.forEach(ae=>ae(a,{scale:(re-1)*5}))}onPointerUp(a){var y;ru.callbacks.pinchend.forEach(x=>x(a,{scale:0})),ru.isPinching=!1,this.initialDistance=null,this.pointerByTouch=[],(y=ru.instance)===null||y===void 0||y.tryDestroy()}destroy(){this.emitter.off(ma.POINTER_DOWN,this.onPointerDown),this.emitter.off(ma.POINTER_MOVE,this.onPointerMove),this.emitter.off(ma.POINTER_UP,this.onPointerUp),ru.instance=null}off(a,y){const x=ru.callbacks[a].indexOf(y);x>-1&&ru.callbacks[a].splice(x,1),this.tryDestroy()}tryDestroy(){Object.values(ru.callbacks).every(a=>a.length===0)&&this.destroy()}}ru.isPinching=!1,ru.instance=null,ru.callbacks={pinchstart:[],pinchmove:[],pinchend:[]};const hw=E=>E.map(a=>Us(a)?a.toLocaleLowerCase():a);class p0{constructor(a){this.map=new Map,this.boundHandlePinch=()=>{},this.recordKey=new Set,this.onKeyDown=y=>{y!=null&&y.key&&(this.recordKey.add(y.key),this.trigger(y))},this.onKeyUp=y=>{y!=null&&y.key&&this.recordKey.delete(y.key)},this.onWheel=y=>{this.triggerExtendKey(ma.WHEEL,y)},this.onDrag=y=>{this.triggerExtendKey(ma.DRAG,y)},this.handlePinch=(y,x)=>{this.triggerExtendKey(ma.PINCH,Object.assign(Object.assign({},y),x))},this.onFocus=()=>{this.recordKey.clear()},this.emitter=a,this.bindEvents()}bind(a,y){a.length!==0&&(a.includes(ma.PINCH)&&!this.pinchHandler&&(this.boundHandlePinch=this.handlePinch.bind(this),this.pinchHandler=new ru(this.emitter,"pinchmove",this.boundHandlePinch)),this.map.set(a,y))}unbind(a,y){this.map.forEach((x,b)=>{nu(b,a)&&(!y||y===x)&&this.map.delete(b)})}unbindAll(){this.map.clear()}match(a){const y=hw(Array.from(this.recordKey)).sort(),x=hw(a).sort();return nu(y,x)}bindEvents(){var a;const{emitter:y}=this;y.on(ma.KEY_DOWN,this.onKeyDown),y.on(ma.KEY_UP,this.onKeyUp),y.on(ma.WHEEL,this.onWheel),y.on(ma.DRAG,this.onDrag),(a=globalThis.addEventListener)===null||a===void 0||a.call(globalThis,"focus",this.onFocus)}trigger(a){this.map.forEach((y,x)=>{this.match(x)&&y(a)})}triggerExtendKey(a,y){this.map.forEach((x,b)=>{b.includes(a)&&nu(Array.from(this.recordKey),b.filter(z=>z!==a))&&x(y)})}destroy(){var a,y;this.unbindAll(),this.emitter.off(ma.KEY_DOWN,this.onKeyDown),this.emitter.off(ma.KEY_UP,this.onKeyUp),this.emitter.off(ma.WHEEL,this.onWheel),this.emitter.off(ma.DRAG,this.onDrag),(a=this.pinchHandler)===null||a===void 0||a.off("pinchmove",this.boundHandlePinch),(y=globalThis.removeEventListener)===null||y===void 0||y.call(globalThis,"blur",this.onFocus)}}class Cv extends Qc{constructor(a,y){super(a,Uu({},Cv.defaultOptions,y)),this.shortcut=new p0(a.graph),this.onPointerDown=this.onPointerDown.bind(this),this.onPointerMove=this.onPointerMove.bind(this),this.onPointerUp=this.onPointerUp.bind(this),this.clearStates=this.clearStates.bind(this),this.bindEvents()}onPointerDown(a){if(!this.validate(a)||!this.isKeydown()||this.startPoint)return;const{canvas:y,graph:x}=this.context,b=Object.assign({},this.options.style);this.options.style.lineWidth&&(b.lineWidth=+this.options.style.lineWidth/x.getZoom()),this.rectShape=new zu({id:"g6-brush-select",style:b}),y.appendChild(this.rectShape),this.startPoint=[a.canvas.x,a.canvas.y]}onPointerMove(a){var y;if(!this.startPoint)return;const{immediately:x,mode:b}=this.options;this.endPoint=Lp(a,this.context.graph),(y=this.rectShape)===null||y===void 0||y.attr({x:Math.min(this.endPoint[0],this.startPoint[0]),y:Math.min(this.endPoint[1],this.startPoint[1]),width:Math.abs(this.endPoint[0]-this.startPoint[0]),height:Math.abs(this.endPoint[1]-this.startPoint[1])}),x&&b==="default"&&this.updateElementsStates(fw(this.startPoint,this.endPoint))}onPointerUp(a){if(this.startPoint){if(!this.endPoint){this.clearBrush();return}this.endPoint=Lp(a,this.context.graph),this.updateElementsStates(fw(this.startPoint,this.endPoint)),this.clearBrush()}}clearStates(){this.endPoint||this.clearElementsStates()}clearElementsStates(){const{graph:a}=this.context,y=Object.values(a.getData()).reduce((x,b)=>Object.assign({},x,b.reduce((z,ee)=>{var re;const ae=(re=ee.states||[])===null||re===void 0?void 0:re.filter(se=>se!==this.options.state);return z[Lr(ee)]=ae,z},{})),{});a.setElementState(y,this.options.animation)}updateElementsStates(a){const{graph:y}=this.context,{enableElements:x,state:b,mode:z,onSelect:ee}=this.options,re=this.selector(y,a,x);let ae={};switch(z){case"union":re.forEach(se=>{ae[se]=[...y.getElementState(se),b]});break;case"diff":re.forEach(se=>{const fe=y.getElementState(se);ae[se]=fe.includes(b)?fe.filter(me=>me!==b):[...fe,b]});break;case"intersect":re.forEach(se=>{const fe=y.getElementState(se);ae[se]=fe.includes(b)?[b]:[]});break;case"default":default:re.forEach(se=>{ae[se]=[b]});break}$i(ee)&&(ae=ee(ae)),y.setElementState(ae,this.options.animation)}selector(a,y,x){if(!x||x.length===0)return[];const b=[],z=a.getData();if(x.forEach(ee=>{z[`${ee}s`].forEach(re=>{const ae=Lr(re);a.getElementVisibility(ae)!=="hidden"&&Z8(a.getElementPosition(ae),y)&&b.push(ae)})}),x.includes("edge")){const ee=z.edges;ee==null||ee.forEach(re=>{const{source:ae,target:se}=re;b.includes(ae)&&b.includes(se)&&b.push(Lr(re))})}return b}clearBrush(){var a;(a=this.rectShape)===null||a===void 0||a.remove(),this.rectShape=void 0,this.startPoint=void 0,this.endPoint=void 0}isKeydown(){const{trigger:a}=this.options,y=Array.isArray(a)?a:[a];return this.shortcut.match(y.filter(x=>x!=="drag"))}validate(a){if(this.destroyed)return!1;const{enable:y}=this.options;return $i(y)?y(a):!!y}bindEvents(){const{graph:a}=this.context;a.on(ma.POINTER_DOWN,this.onPointerDown),a.on(ma.POINTER_MOVE,this.onPointerMove),a.on(ma.POINTER_UP,this.onPointerUp),a.on(Lf.CLICK,this.clearStates)}unbindEvents(){const{graph:a}=this.context;a.off(ma.POINTER_DOWN,this.onPointerDown),a.off(ma.POINTER_MOVE,this.onPointerMove),a.off(ma.POINTER_UP,this.onPointerUp),a.off(Lf.CLICK,this.clearStates)}update(a){this.unbindEvents(),this.options=Uu(this.options,a),this.bindEvents()}destroy(){this.unbindEvents(),super.destroy()}}Cv.defaultOptions={animation:!1,enable:!0,enableElements:["node","combo","edge"],immediately:!1,mode:"default",state:"selected",trigger:["shift"],style:{width:0,height:0,lineWidth:1,fill:"#1677FF",stroke:"#1677FF",fillOpacity:.1,zIndex:2,pointerEvents:"none"}};const Lp=(E,a)=>{if((E.targetType==="node"||E.targetType==="combo")&&!(E.nativeEvent.target instanceof HTMLCanvasElement)){const[y,x]=a.getCanvasByClient([E.client.x,E.client.y]);return[y,x]}return[E.canvas.x,E.canvas.y]},kf=.8,Ag=["node","edge","combo"];function xg(E,a,y,x,b=0){x==="TB"&&a(E,b);const z=y(E);if(z)for(const ee of z)xg(ee,a,y,x,b+1);x==="BT"&&a(E,b)}function $8(E,a,y){const x=[[E,0]];for(;x.length;){const[b,z]=x.shift();a(b,z);const ee=y(b);if(ee)for(const re of ee)x.push([re,z+1])}}function gw(E,a,y,x,b="both"){if(a==="combo"||a==="node")return FA(E,y,x,b);const z=E.getEdgeData(y);if(!z)return[];const ee=FA(E,z.source,x-1,b),re=FA(E,z.target,x-1,b);return Array.from(new Set([...ee,...re,y]))}function FA(E,a,y,x="both"){const b=new Set,z=new Set,ee=new Set;return $8(a,(re,ae)=>{ae>y||(ee.add(re),E.getRelatedEdgesData(re,x).forEach(se=>{const fe=Lr(se);!z.has(fe)&&aeE.getRelatedEdgesData(re,x).map(ae=>ae.source===re?ae.target:ae.source).filter(ae=>b.has(ae)?!1:(b.add(ae),!0))),Array.from(ee)}function kA(E){return E.states||[]}var Bp=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(fe){try{se(x.next(fe))}catch(me){ee(me)}}function ae(fe){try{se(x.throw(fe))}catch(me){ee(me)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})};class Np extends Qc{constructor(a,y){super(a,Object.assign({},Np.defaultOptions,y)),this.onClickSelect=x=>Bp(this,void 0,void 0,function*(){var b,z;this.validate(x)&&(yield this.updateState(x),(z=(b=this.options).onClick)===null||z===void 0||z.call(b,x))}),this.onClickCanvas=x=>Bp(this,void 0,void 0,function*(){var b,z;this.validate(x)&&(yield this.clearState(),(z=(b=this.options).onClick)===null||z===void 0||z.call(b,x))}),this.shortcut=new p0(a.graph),this.bindEvents()}bindEvents(){const{graph:a}=this.context;this.unbindEvents(),Ag.forEach(y=>{a.on(`${y}:${ma.CLICK}`,this.onClickSelect)}),a.on(Lf.CLICK,this.onClickCanvas)}get isMultipleSelect(){const{multiple:a,trigger:y}=this.options;return a&&this.shortcut.match(y)}getNeighborIds(a){const{target:y,targetType:x}=a,{graph:b}=this.context,{degree:z}=this.options;return gw(b,x,y.id,typeof z=="function"?z(a):z).filter(ee=>ee!==y.id)}updateState(a){return Bp(this,void 0,void 0,function*(){const{state:y,unselectedState:x,neighborState:b,animation:z}=this.options;if(!y&&!b&&!x)return;const{target:ee}=a,{graph:re}=this.context,ae=re.getElementData(ee.id),se=kA(ae).includes(y)?"unselect":"select",fe={},me=this.isMultipleSelect,Ee=[ee.id],Oe=this.getNeighborIds(a);if(me)if(Object.assign(fe,this.getDataStates()),se==="select"){const ke=(We,je)=>{We.forEach(Ke=>{const Ze=new Set(re.getElementState(Ke));Ze.add(je),Ze.delete(x),fe[Ke]=Array.from(Ze)})};ke(Ee,y),ke(Oe,b),x&&Object.keys(fe).forEach(We=>{const je=fe[We];!je.includes(y)&&!je.includes(b)&&!je.includes(x)&&fe[We].push(x)})}else{const ke=fe[ee.id];fe[ee.id]=ke.filter(We=>We!==y&&We!==b),ke.includes(x)||fe[ee.id].push(x),Oe.forEach(We=>{fe[We]=fe[We].filter(je=>je!==b),fe[We].includes(y)||fe[We].push(x)})}else if(se==="select"){Object.assign(fe,this.getClearStates(!!x));const ke=(We,je)=>{We.forEach(Ke=>{fe[Ke]||(fe[Ke]=re.getElementState(Ke)),fe[Ke].push(je)})};ke(Ee,y),ke(Oe,b),x&&Object.keys(fe).forEach(We=>{!Ee.includes(We)&&!Oe.includes(We)&&fe[We].push(x)})}else Object.assign(fe,this.getClearStates());yield re.setElementState(fe,z)})}getDataStates(){const{graph:a}=this.context,{nodes:y,edges:x,combos:b}=a.getData(),z={};return[...y,...x,...b].forEach(ee=>{z[Lr(ee)]=kA(ee)}),z}getClearStates(a=!1){const{graph:y}=this.context,{state:x,unselectedState:b,neighborState:z}=this.options,ee=new Set([x,b,z]),{nodes:re,edges:ae,combos:se}=y.getData(),fe={};return[...re,...ae,...se].forEach(me=>{const Ee=kA(me),Oe=Ee.filter(ke=>!ee.has(ke));(a||Oe.length!==Ee.length)&&(fe[Lr(me)]=Oe)}),fe}clearState(){return Bp(this,void 0,void 0,function*(){const{graph:a}=this.context;yield a.setElementState(this.getClearStates(),this.options.animation)})}validate(a){if(this.destroyed)return!1;const{enable:y}=this.options;return $i(y)?y(a):!!y}unbindEvents(){const{graph:a}=this.context;Ag.forEach(y=>{a.off(`${y}:${ma.CLICK}`,this.onClickSelect)}),a.off(Lf.CLICK,this.onClickCanvas)}destroy(){this.unbindEvents(),super.destroy()}}Np.defaultOptions={animation:!0,enable:!0,multiple:!1,trigger:["shift"],state:"selected",neighborState:"selected",unselectedState:void 0,degree:0};function Oc(E){var a;return!!(!((a=E.style)===null||a===void 0)&&a.collapsed)}var ju=function(E,a,y){for(var x=0,b=Us(a)?a.split("."):a;E&&x="A"&&y<="Z"}function vw(E,a){return`${a}${dp(E)}`}function mw(E,a,y=!0){if(!a||!wv(E,a))return E;const x=E.slice(a.length);return y?tF(x):x}function Vl(E,a){const y=Object.entries(E).reduce((x,[b,z])=>(b==="className"||b==="class"||wv(b,a)&&Object.assign(x,{[mw(b,a)]:z}),x),{});if("opacity"in E){const x=vw("opacity",a),b=E.opacity;if(x in E){const z=E[x];Object.assign(y,{opacity:b*z})}else Object.assign(y,{opacity:b})}return y}function _A(E,a){const y=a.length;return Object.keys(E).reduce((x,b)=>{if(b.startsWith(a)){const z=b.slice(y);x[z]=E[b]}return x},{})}function pw(E,a){const y=typeof a=="string"?[a]:a,x={};return Object.keys(E).forEach(b=>{y.find(z=>b.startsWith(z))||(x[b]=E[b])}),x}function m$(E,a,y){return Object.entries(E).reduce((x,[b,z])=>(wv(b,a)?x[vw(mw(b,a,!1),y)]=z:x[b]=z,x),{})}function Yc(E=0){if(typeof E=="number")return[E,E,E];const[a,y=a,x=a]=E;return[a,y,x]}var nF=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);btypeof z=="function"?[b,z.call(x,y)]:[b,z]))}function Mu(E,a){const y=(E==null?void 0:E.style)||{},x=(a==null?void 0:a.style)||{};for(const b in y)b in x||(x[b]=y[b]);return Object.assign({},E,a,{style:x})}function rF(E){const{x:a,y,z:x,class:b,className:z,transform:ee,transformOrigin:re,zIndex:ae,visibility:se}=E;return nF(E,["x","y","z","class","className","transform","transformOrigin","zIndex","visibility"])}function aF(E,a){const y=Yc(E);let x={};return a.text&&!a.fontSize&&(x={fontSize:Math.min(...y)*.5}),a.src&&(!a.width||!a.height)&&(x={width:y[0]*.5,height:y[1]*.5}),x}function Ew(E){if(E)return typeof E=="string"||typeof E=="function"||Array.isArray(E)?{type:"group",field:a=>a.id,color:E,invert:!1}:E}function iF(E,a){if(!a)return{};const{type:y,color:x,field:b,invert:z}=a,ee=ae=>{const se=typeof x=="string"?Bf("palette",x):x;if(typeof se=="function"){const fe={};return ae.forEach(([me,Ee])=>{fe[me]=se(z?1-Ee:Ee)}),fe}else if(Array.isArray(se)){const fe=z?[...se].reverse():se,me={};return ae.forEach(([Ee,Oe])=>{me[Ee]=fe[Oe%se.length]}),me}return{}},re=(ae,se)=>{var fe;return typeof ae=="string"?(fe=se.data)===null||fe===void 0?void 0:fe[ae]:ae==null?void 0:ae(se)};if(y==="group"){const ae=hp(E,Ee=>{if(!b)return"default";const Oe=re(b,Ee);return Oe?String(Oe):"default"}),se=Object.keys(ae),fe=ee(se.map((Ee,Oe)=>[Ee,Oe])),me={};return Object.entries(ae).forEach(([Ee,Oe])=>{Oe.forEach(ke=>{me[Lr(ke)]=fe[Ee]})}),me}else if(y==="value"){const[ae,se]=E.reduce(([me,Ee],Oe)=>{const ke=re(b,Oe);if(typeof ke!="number")throw new Error(Nf(`Palette field ${b} is not a number`));return[Math.min(me,ke),Math.max(Ee,ke)]},[1/0,-1/0]),fe=se-ae;return ee(E.map(me=>[me.id,(re(b,me)-ae)/fe]))}}function Aw(E){const a=typeof E=="string"?Bf("palette",E):E;if(typeof a!="function")return a}function xw(E,a){let y=2*E;return typeof a=="string"?y=E*Number(a.replace("%",""))/100:typeof a=="number"&&(y=a),isNaN(y)&&(y=2*E),y}function Sw(E,a,y=1,x=!1){const b=x?y:1,z=(E.max[0]-E.min[0])*b;return xw(z,a)}function oF(E,a,y=1){const x=xl(E[0],E[1])*y;return xw(x,a)}var sF={}.toString,lF=function(E){return sF.call(E).replace(/^\[object /,"").replace(/]$/,"")},uF=lF,cF=Object.prototype,dF=function(E){var a=E&&E.constructor,y=typeof a=="function"&&a.prototype||cF;return E===y},fF=dF,hF=Object.prototype.hasOwnProperty;function gF(E){if(wo(E))return!0;if(vv(E))return!E.length;var a=uF(E);if(a==="Map"||a==="Set")return!E.size;if(fF(E))return!Object.keys(E).length;for(var y in E)if(hF.call(E,y))return!1;return!0}var Af=gF;class Mv extends eA{constructor(a){bw(a.style),super(a),this.shapeMap={},this.animateMap={},this.render(this.attributes,this),this.setVisibility(),this.bindEvents()}get parsedAttributes(){return this.attributes}upsert(a,y,x,b,z){var ee,re,ae,se,fe,me,Ee,Oe;const ke=this.shapeMap[a];if(x===!1){ke&&((ee=z==null?void 0:z.beforeDestroy)===null||ee===void 0||ee.call(z,ke),b.removeChild(ke),delete this.shapeMap[a],(re=z==null?void 0:z.afterDestroy)===null||re===void 0||re.call(z,ke));return}const We=typeof y=="string"?Bf(mv.SHAPE,y):y;if(!We)throw new Error(Nf(`Shape ${y} not found`));if(!ke||ke.destroyed||!(ke instanceof We)){ke&&((ae=z==null?void 0:z.beforeDestroy)===null||ae===void 0||ae.call(z,ke),ke==null||ke.destroy(),(se=z==null?void 0:z.afterDestroy)===null||se===void 0||se.call(z,ke)),(fe=z==null?void 0:z.beforeCreate)===null||fe===void 0||fe.call(z);const je=new We({className:a,style:x});return b.appendChild(je),this.shapeMap[a]=je,(me=z==null?void 0:z.afterCreate)===null||me===void 0||me.call(z,je),je}return(Ee=z==null?void 0:z.beforeUpdate)===null||Ee===void 0||Ee.call(z,ke),ox(ke,x),(Oe=z==null?void 0:z.afterUpdate)===null||Oe===void 0||Oe.call(z,ke),ke}update(a={}){const y=Object.assign({},this.attributes,a);bw(y),v7(this,y),this.render(y,this),this.setVisibility()}bindEvents(){}getGraphicStyle(a){return rF(a)}get compositeShapes(){return[["badges","badge-"],["ports","port-"]]}animate(a,y){if(a.length===0)return null;const x=[];if(a[0].x!==void 0||a[0].y!==void 0||a[0].z!==void 0){const{x:z=0,y:ee=0,z:re=0}=this.attributes;a.forEach(ae=>{const{x:se=z,y:fe=ee,z:me=re}=ae;Object.assign(ae,{transform:me?[["translate3d",se,fe,me]]:[["translate",se,fe]]})})}const b=super.animate(a,y);if(b&&(zA(this,b),x.push(b)),Array.isArray(a)&&a.length>0){const z=["transform","transformOrigin","x","y","z","zIndex"];if(Object.keys(a[0]).some(ee=>!z.includes(ee))){Object.entries(this.shapeMap).forEach(([re,ae])=>{const se=`get${dp(re)}Style`,fe=this[se];if($i(fe)){const me=a.map(Oe=>fe.call(this,Object.assign(Object.assign({},this.attributes),Oe))),Ee=ae.animate(mA(me),y);Ee&&(zA(ae,Ee),x.push(Ee))}});const ee=(re,ae)=>{if(!Af(re)){const se=`get${dp(ae)}Style`,fe=this[se];if($i(fe)){const me=a.map(Ee=>fe.call(this,Object.assign(Object.assign({},this.attributes),Ee)));Object.entries(me[0]).map(([Ee])=>{const Oe=me.map(We=>We[Ee]),ke=re[Ee];if(ke){const We=ke.animate(mA(Oe),y);We&&(zA(ke,We),x.push(We))}})}}};this.compositeShapes.forEach(([re,ae])=>{const se=_A(this.shapeMap,ae);ee(se,re)})}}return vA(x)}getShape(a){return this.shapeMap[a]}setVisibility(){const{visibility:a}=this.attributes;yg(this,a)}destroy(){this.shapeMap={},this.animateMap={},super.destroy()}}function zA(E,a){a==null||a.finished.then(()=>{const y=E.activeAnimations.findIndex(x=>x===a);y>-1&&E.activeAnimations.splice(y,1)})}function bw(E){if(!E)return{};if("x"in E||"y"in E||"z"in E){const{x:a=0,y=0,z:x,transform:b}=E,z=l2(a,y,x,b);z&&(E.transform=z)}return E}var vF=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b{y.push([b===0?"M":"L",...x])}),a&&y.push(["Z"]),y}const Cw={M:["x","y"],m:["dx","dy"],H:["x"],h:["dx"],V:["y"],v:["dy"],L:["x","y"],l:["dx","dy"],Z:[],z:[],C:["x1","y1","x2","y2","x","y"],c:["dx1","dy1","dx2","dy2","dx","dy"],S:["x2","y2","x","y"],s:["dx2","dy2","dx","dy"],Q:["x1","y1","x","y"],q:["dx1","dy1","dx","dy"],T:["x","y"],t:["dx","dy"],A:["rx","ry","rotation","large-arc","sweep","x","y"],a:["rx","ry","rotation","large-arc","sweep","dx","dy"]};function pF(E){const a=E.replace(/[\n\r]/g,"").replace(/-/g," -").replace(/(\d*\.)(\d+)(?=\.)/g,"$1$2 ").trim().split(/\s*,|\s+/),y=[];let x="",b={};for(;a.length>0;){let z=a.shift();z in Cw?x=z:a.unshift(z),b={type:x},Cw[x].forEach(ae=>{z=a.shift(),b[ae]=z}),x==="M"?x="L":x==="m"&&(x="l");const[ee,...re]=Object.values(b);y.push([ee,...re.map(Number)])}return y}function yF(E){const a=[];return(typeof E=="string"?pF(E):E).forEach(x=>{const b=x[0];if(b==="Z"){a.push(a[0]);return}if(b!=="A")for(let z=1;z{if(E.length<2)return[["M",0,0],["L",0,0]];const a=E[0],y=E[1],x=E[E.length-1],b=E[E.length-2];E.unshift(b,x),E.push(a,y);const z=[["M",x[0],x[1]]];for(let ee=1;ee{const je=ke,Ke=fe[(We+1)%fe.length];return nu(je,Ke)?null:[je,Ke]}).filter(Boolean),Ee=X8([re,ae],me),Oe=dw([re,ae],Ee);if(Oe&&Ee&&(se.transform=[["translate",Oe[0]+y,Oe[1]+x]],ee)){const ke=Math.atan((Ee[0][1]-Ee[1][1])/(Ee[0][0]-Ee[1][0]));se.transform.push(["rotate",ke/Math.PI*180]),se.textAlign="center",(a==="right"||a==="left")&&(ke>0?se.textBaseline=a==="right"?"bottom":"top":se.textBaseline=a==="right"?"top":"bottom")}return se}var AF=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b{x!=null&&x.children.length&&x.children.forEach(b=>{a.push(b),y(b)})};return y(E),a}function SF(E){const a=[];let y=E.parentNode;for(;y;)a.push(y),y=y.parentNode;return a}class UA extends fv{constructor(a){super(a),this.onMounted=()=>{this.handleRadius()},this.onAttrModified=()=>{this.handleRadius()},E0=this,this.isMutationObserved=!0,this.addEventListener(Es.MOUNTED,this.onMounted),this.addEventListener(Es.ATTR_MODIFIED,this.onAttrModified)}handleRadius(){const{radius:a,clipPath:y,width:x=0,height:b=0}=this.attributes;if(a&&x&&b){const[z,ee]=this.getBounds().min,re={x:z,y:ee,radius:a,width:x,height:b};if(y)Object.assign(this.parsedStyle.clipPath.style,re);else{const ae=new zu({style:re});this.style.clipPath=ae}}else y&&(this.style.clipPath=null)}}const WA=new WeakMap;let E0=null;const jA=E=>{if(E0&&SF(E0).includes(E)){const a=WA.get(E);a?a.includes(E0)||a.push(E0):WA.set(E,[E0])}},GA=E=>{const a=WA.get(E);a&&a.forEach(y=>y.handleRadius())};class ww extends Mv{constructor(a){super(a)}isImage(){const{src:a}=this.attributes;return!!a}getIconStyle(a=this.attributes){const{width:y=0,height:x=0}=a,b=this.getGraphicStyle(a);return this.isImage()?Object.assign({x:-y/2,y:-x/2},b):Object.assign({textBaseline:"middle",textAlign:"center"},b)}render(a=this.attributes,y=this){this.upsert("icon",this.isImage()?UA:gg,this.getIconStyle(a),y)}}class Mw extends Mv{get context(){return this.config.context}get parsedAttributes(){return this.attributes}onframe(){}animate(a,y){const x=super.animate(a,y);return x&&(x.onframe=()=>this.onframe(),x.finished.then(()=>this.onframe())),x}}var Rp=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b{b[me]=!1}),a.badge===!1||!(!((y=a.badges)===null||y===void 0)&&y.length))return b;const{badges:z=[],badgePalette:ee,opacity:re=1}=a,ae=Rp(a,["badges","badgePalette","opacity"]),se=Aw(ee),fe=Vl(this.getGraphicStyle(ae),"badge");return z.forEach((me,Ee)=>{b[Ee]=Object.assign(Object.assign({backgroundFill:se?se[Ee%(se==null?void 0:se.length)]:void 0,opacity:re},fe),this.getBadgeStyle(me))}),b}getBadgeStyle(a){const y=this.getShape("key"),{placement:x="top",offsetX:b,offsetY:z}=a,ee=Rp(a,["placement","offsetX","offsetY"]),re=o5(y.getLocalBounds(),x,b,z,!0);return Object.assign(Object.assign({},re),ee)}getPortsStyle(a){var y;const x=this.getPorts(),b={};if(Object.keys(x).forEach(re=>{b[re]=!1}),a.port===!1||!(!((y=a.ports)===null||y===void 0)&&y.length))return b;const z=Vl(this.getGraphicStyle(a),"port"),{ports:ee=[]}=a;return ee.forEach((re,ae)=>{const se=re.key||ae,fe=Object.assign(Object.assign({},z),re);if(r5(fe))b[se]=!1;else{const[me,Ee]=this.getPortXY(a,re);b[se]=Object.assign({transform:[["translate",me,Ee]]},fe)}}),b}getPortXY(a,y){const{placement:x="left"}=y,b=this.getShape("key");return rx(bF(this.context,b),x)}getPorts(){return _A(this.shapeMap,"port-")}getCenter(){return this.getShape("key").getBounds().center}getIntersectPoint(a,y=!1){const x=this.getShape("key").getBounds();return Q8(a,x,y)}drawHaloShape(a,y){const x=this.getHaloStyle(a),b=this.getShape("key");this.upsert("halo",b.constructor,x,y)}drawIconShape(a,y){const x=this.getIconStyle(a);this.upsert("icon",ww,x,y),jA(this)}drawBadgeShapes(a,y){const x=this.getBadgesStyle(a);Object.keys(x).forEach(b=>{const z=x[b];this.upsert(`badge-${b}`,y0,z,y)})}drawPortShapes(a,y){const x=this.getPortsStyle(a);Object.keys(x).forEach(b=>{const z=x[b],ee=`port-${b}`;this.upsert(ee,vf,z,y)})}drawLabelShape(a,y){const x=this.getLabelStyle(a);this.upsert("label",xf,x,y)}_drawKeyShape(a,y){return this.drawKeyShape(a,y)}render(a=this.parsedAttributes,y=this){this._drawKeyShape(a,y),this.getShape("key")&&(this.drawHaloShape(a,y),this.drawIconShape(a,y),this.drawBadgeShapes(a,y),this.drawLabelShape(a,y),this.drawPortShapes(a,y))}update(a){super.update(a),a&&("x"in a||"y"in a||"z"in a)&&GA(this)}onframe(){this.drawBadgeShapes(this.parsedAttributes,this),this.drawLabelShape(this.parsedAttributes,this)}}_d.defaultStyleProps={x:0,y:0,size:32,droppable:!0,draggable:!0,port:!0,ports:[],portZIndex:2,portLinkToCenter:!1,badge:!0,badges:[],badgeZIndex:3,halo:!1,haloDroppable:!1,haloLineDash:0,haloLineWidth:12,haloStrokeOpacity:.25,haloPointerEvents:"none",haloZIndex:-1,icon:!0,iconZIndex:1,label:!0,labelIsBillboard:!0,labelMaxWidth:"200%",labelPlacement:"bottom",labelWordWrap:!1,labelZIndex:0};function bF(E,a){if(!E)return a.getLocalBounds();const y=E.canvas.getLayer(),x=a.cloneNode();yg(x,"hidden"),y.appendChild(x);const b=x.getLocalBounds();return x.destroy(),b}class Sg extends _d{constructor(a){super(Mu({style:Sg.defaultStyleProps},a))}drawKeyShape(a,y){return this.upsert("key",vf,this.getKeyStyle(a),y)}getKeyStyle(a){const y=super.getKeyStyle(a);return Object.assign(Object.assign({},y),{r:Math.min(...this.getSize(a))/2})}getIconStyle(a){const y=super.getIconStyle(a),{r:x}=this.getShape("key").attributes,b=x*2*kf;return y?Object.assign({width:b,height:b},y):!1}getIntersectPoint(a,y=!1){const x=this.getShape("key").getBounds();return Op(a,x,y)}}Sg.defaultStyleProps={size:32};class Fp extends _d{constructor(a){super(a)}get parsedAttributes(){return this.attributes}drawKeyShape(a,y){return this.upsert("key",hg,this.getKeyStyle(a),y)}getKeyStyle(a){const y=super.getKeyStyle(a);return Object.assign(Object.assign({},y),{points:this.getPoints(a)})}getIntersectPoint(a,y=!1){var x,b;const{points:z}=this.getShape("key").attributes,ee=[+(((x=this.attributes)===null||x===void 0?void 0:x.x)||0),+(((b=this.attributes)===null||b===void 0?void 0:b.y)||0)];return cw(a,ee,z,!0,y).point}}class CF extends Fp{constructor(a){super(a)}getPoints(a){const[y,x]=this.getSize(a);return g7(y,x)}}var PF=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);bWi(me)?{value:me}:me),z=Vl(this.getGraphicStyle(a),"donut"),ee=Aw(a.donutPalette);if(!ee)return;const re=b.reduce((me,Ee)=>{var Oe;return me+((Oe=Ee.value)!==null&&Oe!==void 0?Oe:0)},0),ae=this.parseOuterR(),se=this.parseInnerR();let fe=0;b.forEach((me,Ee)=>{const{value:Oe=0,color:ke=ee[Ee%ee.length]}=me,We=PF(me,["value","color"]),je=(re===0?1/b.length:Oe/re)*360;this.upsert(`round${Ee}`,Hc,Object.assign(Object.assign(Object.assign({},z),{d:DF(ae,se,fe,fe+je),fill:ke}),We),y),fe+=je})}render(a,y=this){super.render(a,y),this.drawDonutShape(a,y)}}kp.defaultStyleProps={innerR:"50%",donuts:[],donutPalette:"tableau"};const _p=(E,a,y,x)=>[E+Math.sin(x)*y,a-Math.cos(x)*y],wF=(E,a,y,x)=>x<=0||y<=x?[["M",E-y,a],["A",y,y,0,1,1,E+y,a],["A",y,y,0,1,1,E-y,a],["Z"]]:[["M",E-y,a],["A",y,y,0,1,1,E+y,a],["A",y,y,0,1,1,E-y,a],["Z"],["M",E+x,a],["A",x,x,0,1,0,E-x,a],["A",x,x,0,1,0,E+x,a],["Z"]],MF=(E,a,y,x,b,z)=>{const[ee,re]=[b/360*2*Math.PI,z/360*2*Math.PI],ae=[_p(E,a,x,ee),_p(E,a,y,ee),_p(E,a,y,re),_p(E,a,x,re)],se=re-ee>Math.PI?1:0;return[["M",ae[0][0],ae[0][1]],["L",ae[1][0],ae[1][1]],["A",y,y,0,se,1,ae[2][0],ae[2][1]],["L",ae[3][0],ae[3][1]],["A",x,x,0,se,0,ae[0][0],ae[0][1]],["Z"]]},DF=(E=0,a=0,y,x)=>{const[b,z]=[0,0];return Math.abs(y-x)%360<1e-6?wF(b,z,E,a):MF(b,z,E,a,y,x)};class zp extends _d{constructor(a){super(Mu({style:zp.defaultStyleProps},a))}drawKeyShape(a,y){return this.upsert("key",dv,this.getKeyStyle(a),y)}getKeyStyle(a){const y=super.getKeyStyle(a),[x,b]=this.getSize(a);return Object.assign(Object.assign({},y),{rx:x/2,ry:b/2})}getIconStyle(a){const y=super.getIconStyle(a),{rx:x,ry:b}=this.getShape("key").attributes,z=Math.min(+x,+b)*2*kf;return y?Object.assign({width:z,height:z},y):!1}getIntersectPoint(a,y=!1){const x=this.getShape("key").getBounds();return Op(a,x,y)}}zp.defaultStyleProps={size:[45,35]};class IF extends Fp{constructor(a){super(a)}getOuterR(a){return a.outerR||Math.min(...this.getSize(a))/2}getPoints(a){return m7(this.getOuterR(a))}getIconStyle(a){const y=super.getIconStyle(a),x=this.getOuterR(a)*kf;return y?Object.assign({width:x,height:x},y):!1}}function TF(E,a){var y=a.cx,x=y===void 0?0:y,b=a.cy,z=b===void 0?0:b,ee=a.r;E.arc(x,z,ee,0,Math.PI*2,!1)}function OF(E,a){var y=a.cx,x=y===void 0?0:y,b=a.cy,z=b===void 0?0:b,ee=a.rx,re=a.ry;if(E.ellipse)E.ellipse(x,z,ee,re,0,0,Math.PI*2,!1);else{var ae=ee>re?ee:re,se=ee>re?1:ee/re,fe=ee>re?re/ee:1;E.save(),E.scale(se,fe),E.arc(x,z,ae,0,Math.PI*2)}}function LF(E,a){var y=a.x1,x=a.y1,b=a.x2,z=a.y2,ee=a.markerStart,re=a.markerEnd,ae=a.markerStartOffset,se=a.markerEndOffset,fe=0,me=0,Ee=0,Oe=0,ke=0,We,je;ee&&Ks(ee)&&ae&&(We=b-y,je=z-x,ke=Math.atan2(je,We),fe=Math.cos(ke)*(ae||0),me=Math.sin(ke)*(ae||0)),re&&Ks(re)&&se&&(We=y-b,je=x-z,ke=Math.atan2(je,We),Ee=Math.cos(ke)*(se||0),Oe=Math.sin(ke)*(se||0)),E.moveTo(y+fe,x+me),E.lineTo(b+Ee,z+Oe)}function BF(E,a){var y=a.markerStart,x=a.markerEnd,b=a.markerStartOffset,z=a.markerEndOffset,ee=a.d,re=ee.absolutePath,ae=ee.segments,se=0,fe=0,me=0,Ee=0,Oe=0,ke,We;if(y&&Ks(y)&&b){var je=y.parentNode.getStartTangent(),Ke=(0,ia.Z)(je,2),Ze=Ke[0],Je=Ke[1];ke=Ze[0]-Je[0],We=Ze[1]-Je[1],Oe=Math.atan2(We,ke),se=Math.cos(Oe)*(b||0),fe=Math.sin(Oe)*(b||0)}if(x&&Ks(x)&&z){var tt=x.parentNode.getEndTangent(),st=(0,ia.Z)(tt,2),gt=st[0],mt=st[1];ke=gt[0]-mt[0],We=gt[1]-mt[1],Oe=Math.atan2(We,ke),me=Math.cos(Oe)*(z||0),Ee=Math.sin(Oe)*(z||0)}for(var ct=0;ctSr?Gr:Sr,Eo=Gr>Sr?1:Gr/Sr,ti=Gr>Sr?Sr/Gr:1;E.translate(ra,aa),E.rotate(Ua),E.scale(Eo,ti),E.arc(0,0,Co,Kr,pa,!!(1-ei)),E.scale(1/Eo,1/ti),E.rotate(-Ua),E.translate(-ra,-aa)}En&&E.lineTo(Lt[6]+me,Lt[7]+Ee);break}case"Z":E.closePath();break}}}function NF(E,a){var y=a.markerStart,x=a.markerEnd,b=a.markerStartOffset,z=a.markerEndOffset,ee=a.points.points,re=ee.length,ae=ee[0][0],se=ee[0][1],fe=ee[re-1][0],me=ee[re-1][1],Ee=0,Oe=0,ke=0,We=0,je=0,Ke,Ze;y&&Ks(y)&&b&&(Ke=ee[1][0]-ee[0][0],Ze=ee[1][1]-ee[0][1],je=Math.atan2(Ze,Ke),Ee=Math.cos(je)*(b||0),Oe=Math.sin(je)*(b||0)),x&&Ks(x)&&z&&(Ke=ee[re-1][0]-ee[0][0],Ze=ee[re-1][1]-ee[0][1],je=Math.atan2(Ze,Ke),ke=Math.cos(je)*(z||0),We=Math.sin(je)*(z||0)),E.moveTo(ae+(Ee||ke),se+(Oe||We));for(var Je=1;Je0?1:-1,Oe=ae>0?1:-1,ke=Ee+Oe===0,We=ee.map(function(st){return Nl(st,0,Math.min(Math.abs(se)/2,Math.abs(fe)/2))}),je=(0,ia.Z)(We,4),Ke=je[0],Ze=je[1],Je=je[2],tt=je[3];E.moveTo(Ee*Ke+x,z),E.lineTo(se-Ee*Ze+x,z),Ze!==0&&E.arc(se-Ee*Ze+x,Oe*Ze+z,Ze,-Oe*Math.PI/2,Ee>0?0:Math.PI,ke),E.lineTo(se+x,fe-Oe*Je+z),Je!==0&&E.arc(se-Ee*Je+x,fe-Oe*Je+z,Je,Ee>0?0:Math.PI,Oe>0?Math.PI/2:1.5*Math.PI,ke),E.lineTo(Ee*tt+x,fe+z),tt!==0&&E.arc(Ee*tt+x,fe-Oe*tt+z,tt,Oe>0?Math.PI/2:-Math.PI/2,Ee>0?Math.PI:0,ke),E.lineTo(x,Oe*Ke+z),Ke!==0&&E.arc(Ee*Ke+x,Oe*Ke+z,Ke,Ee>0?Math.PI:0,Oe>0?Math.PI*1.5:Math.PI/2,ke)}}var kF=function(E){function a(){var y;(0,gn.Z)(this,a);for(var x=arguments.length,b=new Array(x),z=0;z=ae-Ke&&Ze<=ae+Ke:!1}function Up(E,a,y,x){return E/(y*y)+a/(x*x)}function GF(E,a,y){var x=E.parsedStyle,b=x.cx,z=b===void 0?0:b,ee=x.cy,re=ee===void 0?0:ee,ae=x.rx,se=x.ry,fe=x.fill,me=x.stroke,Ee=x.lineWidth,Oe=Ee===void 0?1:Ee,ke=x.increasedLineWidthForHitTesting,We=ke===void 0?0:ke,je=x.pointerEvents,Ke=je===void 0?"auto":je,Ze=a.x,Je=a.y,tt=og(Ke,fe,me),st=(0,ia.Z)(tt,2),gt=st[0],mt=st[1],ct=(Oe+We)/2,Lt=(Ze-z)*(Ze-z),_t=(Je-re)*(Je-re);return gt&&mt||y?Up(Lt,_t,ae+ct,se+ct)<=1:gt?Up(Lt,_t,ae,se)<=1:mt?Up(Lt,_t,ae-ct,se-ct)>=1&&Up(Lt,_t,ae+ct,se+ct)<=1:!1}function bg(E,a,y,x,b,z){return b>=E&&b<=E+y&&z>=a&&z<=a+x}function HF(E,a,y,x,b,z,ee){var re=b/2;return bg(E-re,a-re,y,b,z,ee)||bg(E+y-re,a-re,b,x,z,ee)||bg(E+re,a+x-re,y,b,z,ee)||bg(E-re,a+re,b,x,z,ee)}function Wp(E,a,y,x,b,z,ee,re){var ae=(Math.atan2(re-a,ee-E)+Math.PI*2)%(Math.PI*2),se={x:E+y*Math.cos(ae),y:a+y*Math.sin(ae)};return qu(se.x,se.y,ee,re)<=z/2}function Ah(E,a,y,x,b,z,ee){var re=Math.min(E,y),ae=Math.max(E,y),se=Math.min(a,x),fe=Math.max(a,x),me=b/2;return z>=re-me&&z<=ae+me&&ee>=se-me&&ee<=fe+me?vC(E,a,y,x,z,ee)<=b/2:!1}function Iw(E,a,y,x,b){var z=E.length;if(z<2)return!1;for(var ee=0;ee0!=HA(re[1]-y)>0&&HA(a-(y-ee[1])*(ee[0]-re[0])/(ee[1]-re[1])-ee[0])<0&&(x=!x)}return x}function Ow(E,a,y){for(var x=!1,b=0;b=b.min[0]&&a.y>=b.min[1]&&a.x<=b.max[0]&&a.y<=b.max[1]}var nk=function(E){function a(){var y;(0,gn.Z)(this,a);for(var x=arguments.length,b=new Array(x),z=0;z0&&arguments[0]!==void 0?arguments[0]:E.api;E.rafId&&(y.cancelAnimationFrame(E.rafId),E.rafId=null)}},{key:"executeTask",value:function(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:E.api;VA.length<=0&&KA.length<=0||(KA.forEach(function(x){return x()}),KA=VA.splice(0,E.TASK_NUM_PER_FRAME),E.rafId=y.requestAnimationFrame(function(){E.executeTask(y)}))}},{key:"sliceImage",value:function(y,x,b,z){for(var ee=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,re=arguments.length>5&&arguments[5]!==void 0?arguments[5]:E.api,ae=y.naturalWidth||y.width,se=y.naturalHeight||y.height,fe=x-ee,me=b-ee,Ee=Math.ceil(ae/fe),Oe=Math.ceil(se/me),ke={tileSize:[x,b],gridSize:[Oe,Ee],tiles:Array(Oe).fill(null).map(function(){return Array(Ee).fill(null)})},We=function(Ze){for(var Je=function(gt){VA.push(function(){var mt=gt*fe,ct=Ze*me,Lt=[Math.min(x,ae-mt),Math.min(b,se-ct)],_t=Lt[0],Yt=Lt[1],$t=re.createCanvas();$t.width=x,$t.height=b;var En=$t.getContext("2d");En.drawImage(y,mt,ct,_t,Yt,0,0,_t,Yt),ke.tiles[Ze][gt]={x:mt,y:ct,tileX:gt,tileY:Ze,data:$t},z()})},tt=0;tt_t&&Fn>Yt,st&&(typeof st.resetTransform=="function"?st.resetTransform():st.setTransform(1,0,0,1,0,0),b.clearFullScreen&&b.clearRect(st,0,0,mt*gt,ct*gt,ee.background))},Ze=function(tt,st){for(var gt=[tt];gt.length>0;){var mt,ct=gt.pop();ct.isVisible()&&!ct.isCulled()&&(Ee?b.renderDisplayObjectOptimized(ct,st,b.context,Sf(b,au)[au],x):b.renderDisplayObject(ct,st,b.context,Sf(b,au)[au],x));for(var Lt=((mt=ct.sortable)===null||mt===void 0||(mt=mt.sorted)===null||mt===void 0?void 0:mt.length)>0?ct.sortable.sorted:ct.childNodes,_t=Lt.length-1;_t>=0;_t--)gt.push(Lt[_t])}};ae.hooks.endFrame.tap(E.tag,function(){if(Ke(),se.root.childNodes.length===0){b.clearFullScreenLastFrame=!0;return}Ee=ee.renderer.getConfig().enableRenderingOptimization,Sf(b,au)[au]={restoreStack:[],prevObject:null,currentContext:Sf(b,au)[au].currentContext},Sf(b,au)[au].currentContext.clear(),b.clearFullScreenLastFrame=!1;var Je=Oe.getContext(),tt=Oe.getDPR();if(qh(b.dprMatrix,[tt,tt,1]),Hl(b.vpMatrix,b.dprMatrix,re.getOrthoMatrix()),b.clearFullScreen)Ee?(Je.save(),Ze(se.root,Je),Je.restore()):Ze(se.root,Je),b.removedRBushNodeAABBs=[];else{var st=b.safeMergeAABB.apply(b,[b.mergeDirtyAABBs(b.renderQueue)].concat((0,bn.Z)(b.removedRBushNodeAABBs.map(function(Sr){var Kr=Sr.minX,pa=Sr.minY,Ua=Sr.maxX,ei=Sr.maxY,Co=new pl;return Co.setMinMax([Kr,pa,0],[Ua,ei,0]),Co}))));if(b.removedRBushNodeAABBs=[],pl.isEmpty(st)){b.renderQueue=[];return}var gt=b.convertAABB2Rect(st),mt=gt.x,ct=gt.y,Lt=gt.width,_t=gt.height,Yt=ql(b.vec3a,[mt,ct,0],b.vpMatrix),$t=ql(b.vec3b,[mt+Lt,ct,0],b.vpMatrix),En=ql(b.vec3c,[mt,ct+_t,0],b.vpMatrix),on=ql(b.vec3d,[mt+Lt,ct+_t,0],b.vpMatrix),Fn=Math.min(Yt[0],$t[0],on[0],En[0]),tr=Math.min(Yt[1],$t[1],on[1],En[1]),Cn=Math.max(Yt[0],$t[0],on[0],En[0]),xn=Math.max(Yt[1],$t[1],on[1],En[1]),Ln=Math.floor(Fn),nr=Math.floor(tr),An=Math.ceil(Cn-Fn),fr=Math.ceil(xn-tr);Je.save(),b.clearRect(Je,Ln,nr,An,fr,ee.background),Je.beginPath(),Je.rect(Ln,nr,An,fr),Je.clip(),Je.setTransform(b.vpMatrix[0],b.vpMatrix[1],b.vpMatrix[4],b.vpMatrix[5],b.vpMatrix[12],b.vpMatrix[13]);var ra=ee.renderer.getConfig(),aa=ra.enableDirtyRectangleRenderingDebug;aa&&ke.dispatchEvent(new du(Vc.DIRTY_RECTANGLE,{dirtyRect:{x:Ln,y:nr,width:An,height:fr}}));var Gr=b.searchDirtyObjects(st);Gr.sort(function(Sr,Kr){return Sr.sortable.renderOrder-Kr.sortable.renderOrder}).forEach(function(Sr){Sr&&Sr.isVisible()&&!Sr.isCulled()&&b.renderDisplayObject(Sr,Je,b.context,Sf(b,au)[au],x)}),Je.restore(),b.renderQueue.forEach(function(Sr){b.saveDirtyAABB(Sr)}),b.renderQueue=[]}Sf(b,au)[au].restoreStack.forEach(function(){Je.restore()}),Sf(b,au)[au].restoreStack=[]}),ae.hooks.render.tap(E.tag,function(Je){b.clearFullScreen||b.renderQueue.push(Je)})}},{key:"clearRect",value:function(y,x,b,z,ee,re){y.clearRect(x,b,z,ee),re&&(y.fillStyle=re,y.fillRect(x,b,z,ee))}},{key:"renderDisplayObjectOptimized",value:function(y,x,b,z,ee){var re=y.nodeName,ae=!1,se=!1,fe=this.context.styleRendererFactory[re],me=this.pathGeneratorFactory[re],Ee=y.parsedStyle.clipPath;if(Ee){ae=!z.prevObject||!dE(Ee.getWorldTransform(),z.prevObject.getWorldTransform()),ae&&(this.applyWorldTransform(x,Ee),z.prevObject=null);var Oe=this.pathGeneratorFactory[Ee.nodeName];Oe&&(x.save(),se=!0,x.beginPath(),Oe(x,Ee.parsedStyle),x.closePath(),x.clip())}if(fe){ae=!z.prevObject||!dE(y.getWorldTransform(),z.prevObject.getWorldTransform()),ae&&this.applyWorldTransform(x,y);var ke=!z.prevObject;if(!ke){var We=z.prevObject.nodeName;re===ga.TEXT?ke=We!==ga.TEXT:re===ga.IMAGE?ke=We!==ga.IMAGE:ke=We===ga.TEXT||We===ga.IMAGE}fe.applyStyleToContext(x,y,ke,z),z.prevObject=y}me&&(x.beginPath(),me(x,y.parsedStyle),re!==ga.LINE&&re!==ga.PATH&&re!==ga.POLYLINE&&x.closePath()),fe&&fe.drawToContext(x,y,Sf(this,au)[au],this,ee),se&&x.restore(),y.dirty(!1)}},{key:"renderDisplayObject",value:function(y,x,b,z,ee){var re=y.nodeName,ae=z.restoreStack[z.restoreStack.length-1];ae&&!(y.compareDocumentPosition(ae)&Il.DOCUMENT_POSITION_CONTAINS)&&(x.restore(),z.restoreStack.pop());var se=this.context.styleRendererFactory[re],fe=this.pathGeneratorFactory[re],me=y.parsedStyle.clipPath;if(me){this.applyWorldTransform(x,me);var Ee=this.pathGeneratorFactory[me.nodeName];Ee&&(x.save(),z.restoreStack.push(y),x.beginPath(),Ee(x,me.parsedStyle),x.closePath(),x.clip())}se&&(this.applyWorldTransform(x,y),x.save(),this.applyAttributesToContext(x,y)),fe&&(x.beginPath(),fe(x,y.parsedStyle),re!==ga.LINE&&re!==ga.PATH&&re!==ga.POLYLINE&&x.closePath()),se&&(se.render(x,y.parsedStyle,y,b,this,ee),x.restore()),y.dirty(!1)}},{key:"applyAttributesToContext",value:function(y,x){var b=x.parsedStyle,z=b.stroke,ee=b.fill,re=b.opacity,ae=b.lineDash,se=b.lineDashOffset;ae&&y.setLineDash(ae),wo(se)||(y.lineDashOffset=se),wo(re)||(y.globalAlpha*=re),!wo(z)&&!Array.isArray(z)&&!z.isNone&&(y.strokeStyle=x.attributes.stroke),!wo(ee)&&!Array.isArray(ee)&&!ee.isNone&&(y.fillStyle=x.attributes.fill)}},{key:"convertAABB2Rect",value:function(y){var x=y.getMin(),b=y.getMax(),z=Math.floor(x[0]),ee=Math.floor(x[1]),re=Math.ceil(b[0]),ae=Math.ceil(b[1]),se=re-z,fe=ae-ee;return{x:z,y:ee,width:se,height:fe}}},{key:"mergeDirtyAABBs",value:function(y){var x=new pl;return y.forEach(function(b){var z=b.getRenderBounds();x.add(z);var ee=b.renderable.dirtyRenderBounds;ee&&x.add(ee)}),x}},{key:"searchDirtyObjects",value:function(y){var x=y.getMin(),b=(0,ia.Z)(x,2),z=b[0],ee=b[1],re=y.getMax(),ae=(0,ia.Z)(re,2),se=ae[0],fe=ae[1],me=this.rBush.search({minX:z,minY:ee,maxX:se,maxY:fe});return me.map(function(Ee){var Oe=Ee.displayObject;return Oe})}},{key:"saveDirtyAABB",value:function(y){var x=y.renderable;x.dirtyRenderBounds||(x.dirtyRenderBounds=new pl);var b=y.getRenderBounds();b&&x.dirtyRenderBounds.update(b.center,b.halfExtents)}},{key:"applyWorldTransform",value:function(y,x,b){b?(Vi(this.tmpMat4,x.getLocalTransform()),Hl(this.tmpMat4,b,this.tmpMat4),Hl(this.tmpMat4,this.vpMatrix,this.tmpMat4)):(Vi(this.tmpMat4,x.getWorldTransform()),Hl(this.tmpMat4,this.vpMatrix,this.tmpMat4)),y.setTransform(this.tmpMat4[0],this.tmpMat4[1],this.tmpMat4[4],this.tmpMat4[5],this.tmpMat4[12],this.tmpMat4[13])}},{key:"safeMergeAABB",value:function(){for(var y=new pl,x=arguments.length,b=new Array(x),z=0;z0;if(me){if(b||x.attributes.stroke!==z.prevObject.attributes.stroke){var Ee=!wo(re.stroke)&&!Array.isArray(re.stroke)&&!re.stroke.isNone?x.attributes.stroke:fu.strokeStyle;Fl(y,"strokeStyle",Ee,z.currentContext)}(b||re.lineWidth!==ee.lineWidth)&&Fl(y,"lineWidth",wo(re.lineWidth)?fu.lineWidth:re.lineWidth,z.currentContext),(b||re.lineDash!==ee.lineDash)&&Fl(y,"lineDash",re.lineDash||fu.lineDash,z.currentContext),(b||re.lineDashOffset!==ee.lineDashOffset)&&Fl(y,"lineDashOffset",wo(re.lineDashOffset)?fu.lineDashOffset:re.lineDashOffset,z.currentContext);for(var Oe=0;Oe4&&arguments[4]!==void 0?arguments[4]:!1;if(x){Fl(y,"shadowColor",fu.shadowColor,z.currentContext);for(var re=0;re-1&&Fl(y,"filter",se.replace(/drop-shadow\([^)]*\)/,"").trim()||fu.filter,z.currentContext)}else Fl(y,"filter",fu.filter,z.currentContext)}},{key:"fillToContext",value:function(y,x,b,z,ee){var re=this,ae=x.parsedStyle,se=ae.fill,fe=ae.fillRule,me=null;if(Array.isArray(se)&&se.length>0)se.forEach(function(Oe){var ke=Fl(y,"fillStyle",Hp(Oe,x,y,re.imagePool),b.currentContext);me=me!=null?me:ke,fe?y.fill(fe):y.fill()});else{if(ag(se)){var Ee=Gp(se,x,y,x.ownerDocument.defaultView.context,z,ee,this.imagePool);Ee&&(y.fillStyle=Ee,me=!0)}fe?y.fill(fe):y.fill()}me!==null&&Fl(y,"fillStyle",me,b.currentContext)}},{key:"strokeToContext",value:function(y,x,b,z,ee){var re=this,ae=x.parsedStyle.stroke,se=null;if(Array.isArray(ae)&&ae.length>0)ae.forEach(function(Ee){var Oe=Fl(y,"strokeStyle",Hp(Ee,x,y,re.imagePool),b.currentContext);se=se!=null?se:Oe,y.stroke()});else{if(ag(ae)){var fe=Gp(ae,x,y,x.ownerDocument.defaultView.context,z,ee,this.imagePool);if(fe){var me=Fl(y,"strokeStyle",fe,b.currentContext);se=se!=null?se:me}}y.stroke()}se!==null&&Fl(y,"strokeStyle",se,b.currentContext)}},{key:"drawToContext",value:function(y,x,b,z,ee){var re,ae=x.nodeName,se=x.parsedStyle,fe=se.opacity,me=fe===void 0?fu.globalAlpha:fe,Ee=se.fillOpacity,Oe=Ee===void 0?fu.fillOpacity:Ee,ke=se.strokeOpacity,We=ke===void 0?fu.strokeOpacity:ke,je=se.lineWidth,Ke=je===void 0?fu.lineWidth:je,Ze=se.fill&&!se.fill.isNone,Je=se.stroke&&!se.stroke.isNone&&Ke>0;if(!(!Ze&&!Je)){var tt=!wo(se.shadowColor)&&se.shadowBlur>0,st=se.shadowType==="inner",gt=((re=se.fill)===null||re===void 0?void 0:re.alpha)===0,mt=!!(se.filter&&se.filter.length),ct=tt&&Je&&(ae===ga.PATH||ae===ga.LINE||ae===ga.POLYLINE||gt||st),Lt=null;if(Ze){ct||this.applyShadowAndFilterStyleToContext(y,x,tt,b);var _t=me*Oe;Lt=Fl(y,"globalAlpha",_t,b.currentContext),this.fillToContext(y,x,b,z,ee),ct||this.clearShadowAndFilterStyleForContext(y,tt,mt,b)}if(Je){var Yt=!1,$t=me*We,En=Fl(y,"globalAlpha",$t,b.currentContext);if(Lt=Ze?Lt:En,ct&&(this.applyShadowAndFilterStyleToContext(y,x,tt,b),Yt=!0,st)){var on=y.globalCompositeOperation;y.globalCompositeOperation="source-atop",this.strokeToContext(y,x,b,z,ee),y.globalCompositeOperation=on,this.clearShadowAndFilterStyleForContext(y,tt,mt,b,!0)}this.strokeToContext(y,x,b,z,ee),Yt&&this.clearShadowAndFilterStyleForContext(y,tt,mt,b)}Lt!==null&&Fl(y,"globalAlpha",Lt,b.currentContext)}}}])}(),YA=function(E){function a(){return(0,gn.Z)(this,a),ir(this,a,arguments)}return(0,xr.Z)(a,E),(0,cn.Z)(a,[{key:"render",value:function(x,b,z,ee,re,ae){var se=b.fill,fe=b.fillRule,me=b.opacity,Ee=me===void 0?1:me,Oe=b.fillOpacity,ke=Oe===void 0?1:Oe,We=b.stroke,je=b.strokeOpacity,Ke=je===void 0?1:je,Ze=b.lineWidth,Je=Ze===void 0?1:Ze,tt=b.lineCap,st=b.lineJoin,gt=b.shadowType,mt=b.shadowColor,ct=b.shadowBlur,Lt=b.filter,_t=b.miterLimit,Yt=se&&!se.isNone,$t=We&&!We.isNone&&Je>0,En=(se==null?void 0:se.alpha)===0,on=!!(Lt&&Lt.length),Fn=!wo(mt)&&ct>0,tr=z.nodeName,Cn=gt==="inner",xn=$t&&Fn&&(tr===ga.PATH||tr===ga.LINE||tr===ga.POLYLINE||En||Cn);Yt&&(x.globalAlpha=Ee*ke,xn||Kp(z,x,Fn),Fw(x,z,se,fe,ee,re,ae,this.imagePool),xn||this.clearShadowAndFilter(x,on,Fn)),$t&&(x.globalAlpha=Ee*Ke,x.lineWidth=Je,wo(_t)||(x.miterLimit=_t),wo(tt)||(x.lineCap=tt),wo(st)||(x.lineJoin=st),xn&&(Cn&&(x.globalCompositeOperation="source-atop"),Kp(z,x,!0),Cn&&(XA(x,z,We,ee,re,ae,this.imagePool),x.globalCompositeOperation=fu.globalCompositeOperation,this.clearShadowAndFilter(x,on,!0))),XA(x,z,We,ee,re,ae,this.imagePool))}},{key:"clearShadowAndFilter",value:function(x,b,z){if(z&&(x.shadowColor="transparent",x.shadowBlur=0),b){var ee=x.filter;!wo(ee)&&ee.indexOf("drop-shadow")>-1&&(x.filter=ee.replace(/drop-shadow\([^)]*\)/,"").trim()||"none")}}}])}(sk);function Kp(E,a,y){var x=E.parsedStyle,b=x.filter,z=x.shadowColor,ee=x.shadowBlur,re=x.shadowOffsetX,ae=x.shadowOffsetY;b&&b.length&&(a.filter=E.style.filter),y&&(a.shadowColor=z.toString(),a.shadowBlur=ee||0,a.shadowOffsetX=re||0,a.shadowOffsetY=ae||0)}function Fw(E,a,y,x,b,z,ee,re){var ae=arguments.length>8&&arguments[8]!==void 0?arguments[8]:!1;Array.isArray(y)?y.forEach(function(se){E.fillStyle=Hp(se,a,E,re),ae||(x?E.fill(x):E.fill())}):(ag(y)&&(E.fillStyle=Gp(y,a,E,b,z,ee,re)),ae||(x?E.fill(x):E.fill()))}function XA(E,a,y,x,b,z,ee){var re=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!1;Array.isArray(y)?y.forEach(function(ae){E.strokeStyle=Hp(ae,a,E,ee),re||E.stroke()}):(ag(y)&&(E.strokeStyle=Gp(y,a,E,x,b,z,ee)),re||E.stroke())}function lk(E,a){var y=(0,ia.Z)(E,4),x=y[0],b=y[1],z=y[2],ee=y[3],re=(0,ia.Z)(a,4),ae=re[0],se=re[1],fe=re[2],me=re[3],Ee=Math.max(x,ae),Oe=Math.max(b,se),ke=Math.min(x+z,ae+fe),We=Math.min(b+ee,se+me);return ke<=Ee||We<=Oe?null:[Ee,Oe,ke-Ee,We-Oe]}function uk(E,a){var y=ql(na(),[E[0],E[1],0],a),x=ql(na(),[E[0]+E[2],E[1],0],a),b=ql(na(),[E[0],E[1]+E[3],0],a),z=ql(na(),[E[0]+E[2],E[1]+E[3],0],a);return[Math.min(y[0],x[0],b[0],z[0]),Math.min(y[1],x[1],b[1],z[1]),Math.max(y[0],x[0],b[0],z[0])-Math.min(y[0],x[0],b[0],z[0]),Math.max(y[1],x[1],b[1],z[1])-Math.min(y[1],x[1],b[1],z[1])]}var ck=function(E){function a(){return(0,gn.Z)(this,a),ir(this,a,arguments)}return(0,xr.Z)(a,E),(0,cn.Z)(a,[{key:"renderDownSampled",value:function(x,b,z,ee){var re=ee.src,ae=ee.imageCache;if(!ae.downSampled){this.imagePool.createDownSampledImage(re,z).then(function(){z.ownerDocument&&(z.dirty(),z.ownerDocument.defaultView.context.renderingService.dirty())}).catch(function(se){console.error(se)});return}x.drawImage(ae.downSampled,Math.floor(ee.drawRect[0]),Math.floor(ee.drawRect[1]),Math.ceil(ee.drawRect[2]),Math.ceil(ee.drawRect[3]))}},{key:"renderTile",value:function(x,b,z,ee){var re=ee.src,ae=ee.imageCache,se=ee.imageRect,fe=ee.drawRect,me=ae.size,Ee=x.getTransform(),Oe=Ee.a,ke=Ee.b,We=Ee.c,je=Ee.d,Ke=Ee.e,Ze=Ee.f;if(x.resetTransform(),!(ae!=null&&ae.gridSize)){this.imagePool.createImageTiles(re,[],function(){z.ownerDocument&&(z.dirty(),z.ownerDocument.defaultView.context.renderingService.dirty())},z).catch(function(Fn){console.error(Fn)});return}for(var Je=[me[0]/se[2],me[1]/se[3]],tt=[ae.tileSize[0]/Je[0],ae.tileSize[1]/Je[1]],st=[Math.floor((fe[0]-se[0])/tt[0]),Math.ceil((fe[0]+fe[2]-se[0])/tt[0])],gt=st[0],mt=st[1],ct=[Math.floor((fe[1]-se[1])/tt[1]),Math.ceil((fe[1]+fe[3]-se[1])/tt[1])],Lt=ct[0],_t=ct[1],Yt=Lt;Yt<=_t;Yt++)for(var $t=gt;$t<=mt;$t++){var En=ae.tiles[Yt][$t];if(En){var on=[Math.floor(se[0]+En.tileX*tt[0]),Math.floor(se[1]+En.tileY*tt[1]),Math.ceil(tt[0]),Math.ceil(tt[1])];x.drawImage(En.data,on[0],on[1],on[2],on[3])}}x.setTransform(Oe,ke,We,je,Ke,Ze)}},{key:"render",value:function(x,b,z){var ee=b.x,re=ee===void 0?0:ee,ae=b.y,se=ae===void 0?0:ae,fe=b.width,me=b.height,Ee=b.src,Oe=b.shadowColor,ke=b.shadowBlur,We=this.imagePool.getImageSync(Ee,z),je=We==null?void 0:We.img,Ke=fe,Ze=me;if(je){Ke||(Ke=je.width),Ze||(Ze=je.height);var Je=!wo(Oe)&&ke>0;Kp(z,x,Je);try{var tt=z.ownerDocument.defaultView.getContextService().getDomElement(),st=tt.width,gt=tt.height,mt=x.getTransform(),ct=mt.a,Lt=mt.b,_t=mt.c,Yt=mt.d,$t=mt.e,En=mt.f,on=So(ct,_t,0,0,Lt,Yt,0,0,0,0,1,0,$t,En,0,1),Fn=uk([re,se,Ke,Ze],on),tr=lk([0,0,st,gt],Fn);if(!tr)return;if(!z.ownerDocument.defaultView.getConfig().enableLargeImageOptimization){a.renderFull(x,b,z,{image:je,drawRect:[re,se,Ke,Ze]});return}var Cn=Fn[2]/We.size[0];if(Cn<(We.downSamplingRate||.5)){this.renderDownSampled(x,b,z,{src:Ee,imageCache:We,drawRect:[re,se,Ke,Ze]});return}if(!QA.isSupportTile){a.renderFull(x,b,z,{image:je,drawRect:[re,se,Ke,Ze]});return}this.renderTile(x,b,z,{src:Ee,imageCache:We,imageRect:Fn,drawRect:tr})}catch(xn){}}}},{key:"drawToContext",value:function(x,b,z,ee,re){this.render(x,b.parsedStyle,b)}}],[{key:"renderFull",value:function(x,b,z,ee){x.drawImage(ee.image,Math.floor(ee.drawRect[0]),Math.floor(ee.drawRect[1]),Math.ceil(ee.drawRect[2]),Math.ceil(ee.drawRect[3]))}}])}(YA),dk=function(E){function a(){return(0,gn.Z)(this,a),ir(this,a,arguments)}return(0,xr.Z)(a,E),(0,cn.Z)(a,[{key:"render",value:function(x,b,z,ee,re,ae){z.getBounds();var se=b.lineWidth,fe=se===void 0?1:se,me=b.textAlign,Ee=me===void 0?"start":me,Oe=b.textBaseline,ke=Oe===void 0?"alphabetic":Oe,We=b.lineJoin,je=We===void 0?"miter":We,Ke=b.miterLimit,Ze=Ke===void 0?10:Ke,Je=b.letterSpacing,tt=Je===void 0?0:Je,st=b.stroke,gt=b.fill,mt=b.fillRule,ct=b.fillOpacity,Lt=ct===void 0?1:ct,_t=b.strokeOpacity,Yt=_t===void 0?1:_t,$t=b.opacity,En=$t===void 0?1:$t,on=b.metrics,Fn=b.x,tr=Fn===void 0?0:Fn,Cn=b.y,xn=Cn===void 0?0:Cn,Ln=b.dx,nr=b.dy,An=b.shadowColor,fr=b.shadowBlur,ra=b.textDecorationLine,aa=on.font,Gr=on.lines,Sr=on.height,Kr=on.lineHeight,pa=on.lineMetrics;x.font=aa,x.lineWidth=fe,x.textAlign=Ee==="middle"?"center":Ee;var Ua=ke;Ua==="alphabetic"&&(Ua="bottom"),x.lineJoin=je,wo(Ze)||(x.miterLimit=Ze);var ei=xn;ke==="middle"?ei+=-Sr/2-Kr/2:ke==="bottom"||ke==="alphabetic"||ke==="ideographic"?ei+=-Sr:(ke==="top"||ke==="hanging")&&(ei+=-Kr);var Co=tr+(Ln||0);ei+=nr||0,Gr.length===1&&(Ua==="bottom"?(Ua="middle",ei-=.5*Sr):Ua==="top"&&(Ua="middle",ei+=.5*Sr)),x.textBaseline=Ua;var Eo=!wo(An)&&fr>0;Kp(z,x,Eo);for(var ti=0;ti0&&arguments[0]!==void 0?arguments[0]:{};return(0,gn.Z)(this,a),y=ir(this,a),y.name="canvas-renderer",y.options=x,y}return(0,xr.Z)(a,E),(0,cn.Z)(a,[{key:"init",value:function(){var x,b=(0,hn.Z)({dirtyObjectNumThreshold:500,dirtyObjectRatioThreshold:.8},this.options),z=this.context.imagePool,ee=new YA(z),re=(x={},(0,Gi.Z)((0,Gi.Z)((0,Gi.Z)((0,Gi.Z)((0,Gi.Z)((0,Gi.Z)((0,Gi.Z)((0,Gi.Z)((0,Gi.Z)((0,Gi.Z)(x,ga.CIRCLE,ee),ga.ELLIPSE,ee),ga.RECT,ee),ga.IMAGE,new ck(z)),ga.TEXT,new dk(z)),ga.LINE,ee),ga.POLYLINE,ee),ga.POLYGON,ee),ga.PATH,ee),ga.GROUP,void 0),(0,Gi.Z)((0,Gi.Z)((0,Gi.Z)(x,ga.HTML,void 0),ga.MESH,void 0),ga.FRAGMENT,void 0));this.context.defaultStyleRendererFactory=re,this.context.styleRendererFactory=re,this.addRenderingPlugin(new Bw(b))}},{key:"destroy",value:function(){this.removeAllRenderingPlugins(),delete this.context.defaultStyleRendererFactory,delete this.context.styleRendererFactory}}])}(dh);var kw=function(){function E(){(0,gn.Z)(this,E)}return(0,cn.Z)(E,[{key:"apply",value:function(y,x){var b=this,z=y.renderingService,ee=y.renderingContext,re=y.config;this.context=y;var ae=ee.root.ownerDocument.defaultView,se=function(ct){z.hooks.pointerMove.call(ct)},fe=function(ct){z.hooks.pointerUp.call(ct)},me=function(ct){z.hooks.pointerDown.call(ct)},Ee=function(ct){z.hooks.pointerOver.call(ct)},Oe=function(ct){z.hooks.pointerOut.call(ct)},ke=function(ct){z.hooks.pointerCancel.call(ct)},We=function(ct){z.hooks.pointerWheel.call(ct)},je=function(ct){z.hooks.click.call(ct)},Ke=function(ct){x.globalThis.document.addEventListener("pointermove",se,!0),ct.addEventListener("pointerdown",me,!0),ct.addEventListener("pointerleave",Oe,!0),ct.addEventListener("pointerover",Ee,!0),x.globalThis.addEventListener("pointerup",fe,!0),x.globalThis.addEventListener("pointercancel",ke,!0)},Ze=function(ct){ct.addEventListener("touchstart",me,!0),ct.addEventListener("touchend",fe,!0),ct.addEventListener("touchmove",se,!0),ct.addEventListener("touchcancel",ke,!0)},Je=function(ct){x.globalThis.document.addEventListener("mousemove",se,!0),ct.addEventListener("mousedown",me,!0),ct.addEventListener("mouseout",Oe,!0),ct.addEventListener("mouseover",Ee,!0),x.globalThis.addEventListener("mouseup",fe,!0)},tt=function(ct){x.globalThis.document.removeEventListener("pointermove",se,!0),ct.removeEventListener("pointerdown",me,!0),ct.removeEventListener("pointerleave",Oe,!0),ct.removeEventListener("pointerover",Ee,!0),x.globalThis.removeEventListener("pointerup",fe,!0),x.globalThis.removeEventListener("pointercancel",ke,!0)},st=function(ct){ct.removeEventListener("touchstart",me,!0),ct.removeEventListener("touchend",fe,!0),ct.removeEventListener("touchmove",se,!0),ct.removeEventListener("touchcancel",ke,!0)},gt=function(ct){x.globalThis.document.removeEventListener("mousemove",se,!0),ct.removeEventListener("mousedown",me,!0),ct.removeEventListener("mouseout",Oe,!0),ct.removeEventListener("mouseover",Ee,!0),x.globalThis.removeEventListener("mouseup",fe,!0)};z.hooks.init.tap(E.tag,function(){var mt=b.context.contextService.getDomElement();x.globalThis.navigator.msPointerEnabled?(mt.style.msContentZooming="none",mt.style.msTouchAction="none"):ae.supportsPointerEvents&&(mt.style.touchAction="none"),ae.supportsPointerEvents?Ke(mt):Je(mt),ae.supportsTouchEvents&&Ze(mt),re.useNativeClickEvent&&mt.addEventListener("click",je,!0),mt.addEventListener("wheel",We,{passive:!0,capture:!0})}),z.hooks.destroy.tap(E.tag,function(){var mt=b.context.contextService.getDomElement();x.globalThis.navigator.msPointerEnabled?(mt.style.msContentZooming="",mt.style.msTouchAction=""):ae.supportsPointerEvents&&(mt.style.touchAction=""),ae.supportsPointerEvents?tt(mt):gt(mt),ae.supportsTouchEvents&&st(mt),re.useNativeClickEvent&&mt.removeEventListener("click",je,!0),mt.removeEventListener("wheel",We,!0)})}}])}();kw.tag="DOMInteraction";var hk=function(E){function a(){var y;(0,gn.Z)(this,a);for(var x=arguments.length,b=new Array(x),z=0;z1&&arguments[1]!==void 0?arguments[1]:[0,0,0];return"matrix(".concat([y[0],y[1],y[4],y[5],y[12]+x[0],y[13]+x[1]].join(","),")")}},{key:"apply",value:function(y,x){var b=this,z=y.camera,ee=y.renderingContext,re=y.renderingService;this.context=y;var ae=ee.root.ownerDocument.defaultView,se=ae.context.eventService.nativeHTMLMap,fe=function(Ke,Ze){Ze.style.transform=b.joinTransformMatrix(Ke.getWorldTransform(),Ke.getOrigin())},me=function(Ke){var Ze=Ke.target;if(Ze.nodeName===ga.HTML){b.$camera||(b.$camera=b.createCamera(z));var Je=b.getOrCreateEl(Ze);b.$camera.appendChild(Je),Object.keys(Ze.attributes).forEach(function(tt){b.updateAttribute(tt,Ze)}),fe(Ze,Je),se.set(Je,Ze)}},Ee=function(Ke){var Ze=Ke.target;if(Ze.nodeName===ga.HTML&&b.$camera){var Je=b.getOrCreateEl(Ze);Je&&(Je.remove(),se.delete(Je))}},Oe=function(Ke){var Ze=Ke.target;if(Ze.nodeName===ga.HTML){var Je=Ke.attrName;b.updateAttribute(Je,Ze)}},ke=function(Ke){for(var Ze=Ke.detail,Je=0;Je0&&re[0]!==void 0?re[0]:{},z=b.type,ee=b.encoderOptions,ae.abrupt("return",this.context.canvas.toDataURL(z,ee));case 1:case"end":return ae.stop()}},x,this)}));function y(){return a.apply(this,arguments)}return y}()}])}(),pk=function(E){function a(){var y;(0,gn.Z)(this,a);for(var x=arguments.length,b=new Array(x),z=0;z{const x=this.context.canvas,b=x.context.renderingContext.root.ownerDocument.defaultView;this.normalizeToPointerEvent(y,b).forEach(ee=>{const re=this.bootstrapEvent(this.rootPointerEvent,ee,b,y);Pv(x.context.eventService,"mappingTable.pointerupoutside",[]),x.context.eventService.mapEvent(re)})}}get eventService(){return this.context.canvas.context.eventService}get events(){return[ma.CLICK,ma.POINTER_DOWN,ma.POINTER_MOVE,ma.POINTER_UP,ma.POINTER_OVER,ma.POINTER_LEAVE]}getDomElement(){return this.getShape("key").getDomElement()}render(a=this.parsedAttributes,y=this){this.drawKeyShape(a,y),this.drawPortShapes(a,y)}getKeyStyle(a){const y=Cg(a,["dx","dy","innerHTML","pointerEvents","cursor"]),{dx:x=0,dy:b=0}=y,z=Ak(y,["dx","dy"]),[ee,re]=this.getSize(a);return Object.assign(Object.assign({x,y:b},z),{width:ee,height:re})}drawKeyShape(a,y){const x=this.getKeyStyle(a),{x:b,y:z,width:ee=0,height:re=0}=x,ae=this.upsert("key-container",zu,{x:b,y:z,width:ee,height:re,opacity:0},y);return this.upsert("key",dg,x,ae)}connectedCallback(){if(!(this.context.canvas.getRenderer("main")instanceof Iv))return;const x=this.getDomElement();this.events.forEach(b=>{x.addEventListener(b,this.forwardEvents)})}attributeChangedCallback(a,y,x){a==="zIndex"&&y!==x&&(this.getDomElement().style.zIndex=x)}destroy(){const a=this.getDomElement();this.events.forEach(y=>{a.removeEventListener(y,this.forwardEvents)}),super.destroy()}normalizeToPointerEvent(a,y){const x=[];if(y.isTouchEvent(a))for(let b=0;bthis.context.element.getElement(ee)).filter(Boolean);if(b.length===0){const ee=new pl,{x:re=0,y:ae=0,size:se}=a,[fe,me]=Yc(se);return ee.setMinMax([re-fe/2,ae-me/2,0],[re+fe/2,ae+me/2,0]),ee}const z=yv(b.map(ee=>ee.getBounds()));return x?mh(z,x):z}drawCollapsedMarkerShape(a,y){const x=this.getCollapsedMarkerStyle(a);this.upsert("collapsed-marker",ww,x,y),jA(this)}getCollapsedMarkerStyle(a){if(!a.collapsed||!a.collapsedMarker)return!1;const y=Vl(this.getGraphicStyle(a),"collapsedMarker"),{type:x}=y,b=Ww(y,["type"]),z=this.getShape("key"),[ee,re]=Ff(z.getLocalBounds(),"center"),ae=Object.assign(Object.assign({},b),{x:ee,y:re});if(x){const se=this.getCollapsedMarkerText(x,a);Object.assign(ae,{text:se})}return ae}getCollapsedMarkerText(a,y){const{childrenData:x=[]}=y,{model:b}=this.context;return a==="descendant-count"?b.getDescendantsData(this.id).length.toString():a==="child-count"?x.length.toString():a==="node-count"?b.getDescendantsData(this.id).filter(z=>b.getElementType(Lr(z))==="node").length.toString():$i(a)?a(x):""}getComboPosition(a){const{x:y=0,y:x=0,collapsed:b,childrenData:z=[]}=a;if(z.length===0)return[+y,+x,0];if(b){const{model:ee}=this.context,re=ee.getDescendantsData(this.id).filter(ae=>!ee.isCombo(Lr(ae)));if(re.length>0&&re.some(H8)){const ae=re.reduce((se,fe)=>es(se,Au(fe)),[0,0,0]);return Fd(ae,re.length)}return[+y,+x,0]}return this.getContentBBox(a).center}getComboStyle(a){const[y,x]=this.getComboPosition(a);return{x:y,y:x,transform:[["translate",y,x]]}}updateComboPosition(a){const y=this.getComboStyle(a);Object.assign(this.style,y);const{x,y:b}=y;this.context.model.syncNodeLikeDatum({id:this.id,style:{x,y:b}}),GA(this)}render(a,y=this){super.render(a,y),this.drawCollapsedMarkerShape(a,y)}update(a={}){super.update(a),this.updateComboPosition(this.parsedAttributes)}onframe(){super.onframe(),this.attributes.collapsed||this.updateComboPosition(this.parsedAttributes),this.drawKeyShape(this.parsedAttributes,this)}animate(a,y){const x=super.animate(this.attributes.collapsed?a:a.map(b=>{var{x:z,y:ee,z:re,transform:ae}=b,se=Ww(b,["x","y","z","transform"]);return se}),y);return x&&new Proxy(x,{set:(b,z,ee)=>(z==="currentTime"&&Promise.resolve().then(()=>this.onframe()),Reflect.set(b,z,ee))})}}A0.defaultStyleProps={childrenNode:[],droppable:!0,draggable:!0,collapsed:!1,collapsedSize:32,collapsedMarker:!0,collapsedMarkerZIndex:1,collapsedMarkerFontSize:12,collapsedMarkerTextAlign:"center",collapsedMarkerTextBaseline:"middle",collapsedMarkerType:"child-count"};class bk extends A0{constructor(a){super(a)}drawKeyShape(a,y){return this.upsert("key",vf,this.getKeyStyle(a),y)}getKeyStyle(a){const{collapsed:y}=a,x=super.getKeyStyle(a),[b]=this.getKeySize(a);return Object.assign(Object.assign(Object.assign({},x),y&&Vl(x,"collapsed")),{r:b/2})}getCollapsedKeySize(a){const[y,x]=Yc(a.collapsedSize),b=Math.max(y,x)/2;return[b*2,b*2,0]}getExpandedKeySize(a){const y=this.getContentBBox(a),[x,b]=gh(y),z=Math.sqrt(Math.pow(x,2)+Math.pow(b,2))/2;return[z*2,z*2,0]}getIntersectPoint(a,y=!1){const x=this.getShape("key").getBounds();return Op(a,x,y)}}class Ck extends A0{constructor(a){super(a)}drawKeyShape(a,y){return this.upsert("key",zu,this.getKeyStyle(a),y)}getKeyStyle(a){const y=super.getKeyStyle(a),[x,b]=this.getKeySize(a);return Object.assign(Object.assign(Object.assign({},y),a.collapsed&&Vl(y,"collapsed")),{width:x,height:b,x:-x/2,y:-b/2})}}var Pk=function(E,a){if(!vv(E))return E;for(var y=[],x=0;x-1:!1},Dk=Mk,Ik=function(E,a){return a===void 0&&(a=[]),wk(E,function(y){return!Dk(a,y)})},Tk=Ik;const Ok={padding:10};function jw(E,a,y,x,b,z){const{padding:ee}=Object.assign(Ok,z),re=vh(y,ee),ae=vh(x,ee),se=[E,...b,a];let fe=null;const me=[];for(let Ee=0,Oe=se.length;Eez?"N":"S":x===z?y>b?"W":"E":null}function JA(E,a){return a==="N"||a==="S"?yf(E):pf(E)}function Hw(E,a,y){const x=[E[0],a[1]],b=[a[0],E[1]],z=lc(E,x),ee=lc(E,b),re=y?Lk[y]:null,ae=z===y||z!==re&&ee!==y?x:b;return{points:[ae],direction:lc(ae,a)}}function Xp(E,a,y){if(gp(E,y)){const x=Tv(E,a,y);return{points:[x],direction:lc(x,a)}}else{const x=mg(E,y),z=["left","right"].includes(Ev(E,y))?[a[0],x[1]]:[x[0],a[1]];return{points:[z],direction:lc(z,a)}}}function Vw(E,a,y,x){const b=gp(a,y)?a:mg(a,y),z=[[b[0],E[1]],[E[0],b[1]]],ee=z.filter(ae=>JR(ae,y)&&!h2(ae,y,!0)),re=ee.filter(ae=>lc(ae,E)!==x);if(re.length>0){const ae=re.find(se=>lc(E,se)===x)||re[0];return{points:[ae],direction:lc(ae,a)}}else{const ae=Tk(z,ee)[0],se=Eh(a,ae,JA(y,x)/2);return{points:[Tv(se,E,y),se],direction:lc(se,a)}}}function Bk(E,a,y,x){let b=Xp(E,a,y);const z=Sv(b.points[0]);if(Bd(z,x)){b=Xp(a,E,x);const ee=Sv(b.points[0]);if(Bd(ee,y)){const re=Eh(E,z,JA(y,lc(E,z))/2),ae=Eh(a,ee,JA(x,lc(a,ee))/2),se=[(re[0]+ae[0])/2,(re[1]+ae[1])/2],fe=Xp(E,se,y),me=Vw(se,a,x,fe.direction);b.points=[fe.points[0],me.points[0]],b.direction=me.direction}}return b}function qA(E,a,y,x,b){const ee=yv([y,x]),re=xl(a,ee.center)>xl(E,ee.center),[ae,se]=re?[a,E]:[E,a],fe=yf(ee)+pf(ee);let me;if(b){const ke=[ae[0]+fe*Math.cos(Gw[b]),ae[1]+fe*Math.sin(Gw[b])];me=Eh(mg(ke,ee),ke,.01)}else me=Eh(mg(ae,ee),ae,-.01);let Ee=Tv(me,se,ee),Oe=[bv(me,2),bv(Ee,2)];if(nu(bv(me),bv(Ee))){const ke=LA(fl(me,ae),[1,0,0])+Math.PI/2;Ee=[se[0]+fe*Math.cos(ke),se[1]+fe*Math.sin(ke),0],Ee=bv(Eh(mg(Ee,ee),se,-.01),2);const We=Tv(me,Ee,ee);Oe=[me,We,Ee]}return{points:re?Oe.reverse():Oe,direction:lc(re?me:Ee,a)}}function Tv(E,a,y){let x=[E[0],a[1]];return Bd(x,y)&&(x=[a[0],E[1]]),x}function Kw(E,a,y,x,b){let ae=typeof a=="number"?a:.5;a==="start"&&(ae=0),a==="end"&&(ae=.99);const se=Wu(E.getPoint(ae)),fe=Wu(E.getPoint(ae+.01));let me=a==="start"?"left":a==="end"?"right":"center";if(sw(se,fe)||!y){const[Ke,Ze]=Zw(E,ae,x,b);return{transform:[["translate",Ke,Ze]],textAlign:me}}let Ee=Math.atan2(fe[1]-se[1],fe[0]-se[0]);fe[0]{const fe=ee[se-1]||b,me=ee[se+1]||z;if(!lw(fe,ae,me)&&a){const[Ee,Oe]=_k(fe,ae,me,a);re.push(["L",Ee[0],Ee[1]],["Q",ae[0],ae[1],Oe[0],Oe[1]],["L",Oe[0],Oe[1]])}else re.push(["L",ae[0],ae[1]])}),re.push(["L",z[0],z[1]]),y&&re.push(["Z"]),re}function _k(E,a,y,x){const b=Ip(E,a),z=Ip(y,a),ee=Math.min(x,Math.min(b,z)/2),re=[a[0]-ee/b*(a[0]-E[0]),a[1]-ee/b*(a[1]-E[1])],ae=[a[0]-ee/z*(a[0]-y[0]),a[1]-ee/z*(a[1]-y[1])];return[re,ae]}const zk=E=>{const a=Math.PI/2,y=yf(E)/2,x=pf(E)/2,b=Math.atan2(y,x)/2,z=Math.atan2(x,y)/2;return{top:[-a-z,-a+z],"top-right":[-a+z,-b],"right-top":[-a+z,-b],right:[-b,b],"bottom-right":[b,a-z],"right-bottom":[b,a-z],bottom:[a-z,a+z],"bottom-left":[a+z,Math.PI-b],"left-bottom":[a+z,Math.PI-b],left:[Math.PI-b,Math.PI+b],"top-left":[Math.PI+b,-a-z],"left-top":[Math.PI+b,-a-z]}};function Yw(E,a,y,x,b){const z=vh(E),ee=E.getCenter();let re=x&&Sh(x),ae=b&&Sh(b);if(!re||!ae){const se=zk(z),fe=se[a][0],me=se[a][1],[Ee,Oe]=gh(z),ke=Math.max(Ee,Oe),We=es(ee,[ke*Math.cos(fe),ke*Math.sin(fe),0]),je=es(ee,[ke*Math.cos(me),ke*Math.sin(me),0]);re=ix(E,We),ae=ix(E,je),y||([re,ae]=[ae,re])}return[re,ae]}function Uk(E,a,y,x,b,z){const ee=E.getPorts()[b||z],re=E.getPorts()[z||b];let[ae,se]=Yw(E,a,y,ee,re);const fe=Wk(E,ae,se,x);return ee&&(ae=Lv(ee,fe[0])),re&&(se=Lv(re,fe.at(-1))),Qw(ae,se,fe)}function Wk(E,a,y,x){const b=E.getCenter();if(nu(a,y)){const z=fl(a,b),ee=[x*Math.sign(z[0])||x/2,x*Math.sign(z[1])||-x/2,0];return[es(a,ee),es(y,Rd(ee,[1,-1,1]))]}return[Eh(b,a,xl(b,a)+x),Eh(b,y,xl(b,y)+x)]}function jk(E,a,y,x,b,z,ee){const re=ax(E),ae=re[z||ee],se=re[ee||z];let[fe,me]=Yw(E,y,x,ae,se);const Ee=Gk(E,fe,me,b);return ae&&(fe=Lv(ae,Ee[0])),se&&(me=Lv(se,Ee.at(-1))),ex([fe,...Ee,me],a)}function Gk(E,a,y,x){const b=[],z=vh(E);if(nu(a,y))switch(Ev(a,z)){case"left":b.push([a[0]-x,a[1]]),b.push([a[0]-x,a[1]+x]),b.push([a[0],a[1]+x]);break;case"right":b.push([a[0]+x,a[1]]),b.push([a[0]+x,a[1]+x]),b.push([a[0],a[1]+x]);break;case"top":b.push([a[0],a[1]-x]),b.push([a[0]+x,a[1]-x]),b.push([a[0]+x,a[1]]);break;case"bottom":b.push([a[0],a[1]+x]),b.push([a[0]+x,a[1]+x]),b.push([a[0]+x,a[1]]);break}else{const ee=Ev(a,z),re=Ev(y,z);if(ee===re){const ae=ee;let se,fe;switch(ae){case"left":se=Math.min(a[0],y[0])-x,b.push([se,a[1]]),b.push([se,y[1]]);break;case"right":se=Math.max(a[0],y[0])+x,b.push([se,a[1]]),b.push([se,y[1]]);break;case"top":fe=Math.min(a[1],y[1])-x,b.push([a[0],fe]),b.push([y[0],fe]);break;case"bottom":fe=Math.max(a[1],y[1])+x,b.push([a[0],fe]),b.push([y[0],fe]);break}}else{const ae=(Ee,Oe)=>({left:[Oe[0]-x,Oe[1]],right:[Oe[0]+x,Oe[1]],top:[Oe[0],Oe[1]-x],bottom:[Oe[0],Oe[1]+x]})[Ee],se=ae(ee,a),fe=ae(re,y),me=Tv(se,fe,z);b.push(se,me,fe)}}return b}function tx(E,a){const y=new Set,x=new Set,b=new Set;return E.forEach(z=>{a(z).forEach(re=>{y.add(re),E.includes(re.source)&&E.includes(re.target)?x.add(re):b.add(re)})}),{edges:Array.from(y),internal:Array.from(x),external:Array.from(b)}}function Xw(E,a){const y=[];let x=E;for(;x;){y.push(x);const b=a(Lr(x));if(b)x=b;else break}if(y.some(b=>{var z;return(z=b.style)===null||z===void 0?void 0:z.collapsed})){const b=y.reverse().findIndex(Oc);return y[b]||y.at(-1)}return E}function Hk(E,a){return a||(E<4?10:E===4?12:E*2.5)}const Vk=(E,a)=>{const y=Math.max(E,a)/2;return[["M",-E/2,0],["A",y,y,0,1,0,2*y-E/2,0],["A",y,y,0,1,0,-E/2,0],["Z"]]},Jw=(E,a)=>[["M",-E/2,0],["L",E/2,-a/2],["L",E/2,a/2],["Z"]],Kk=(E,a)=>[["M",-E/2,0],["L",0,-a/2],["L",E/2,0],["L",0,a/2],["Z"]],Zk=(E,a)=>[["M",-E/2,0],["L",E/2,-a/2],["L",4*E/5-E/2,0],["L",E/2,a/2],["Z"]],Qk=(E,a)=>[["M",-E/2,-a/2],["L",E/2,-a/2],["L",E/2,a/2],["L",-E/2,a/2],["Z"]],Yk=(E,a)=>{const y=E/2,x=E/7,b=E-x;return[["M",-y,0],["L",0,-a/2],["L",0,a/2],["Z"],["M",b-y,-a/2],["L",b+x-y,-a/2],["L",b+x-y,a/2],["L",b-y,a/2],["Z"]]},Xk=(E,a)=>[["M",E/2,-a/2],["L",-E/2,0],["L",E/2,0],["L",-E/2,0],["L",E/2,a/2]];var Jp=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b{se in b&&(ae[se]=b[se])}),ae}getLoopPath(a){const{sourcePort:y,targetPort:x}=a,b=this.sourceNode,z=vh(b),ee=Math.max(pf(z),yf(z)),{placement:re,clockwise:ae,dist:se=ee}=Vl(this.getGraphicStyle(a),"loop");return Uk(b,re,ae,se,y,x)}getEndpoints(a,y=!0,x=[]){const{sourcePort:b,targetPort:z}=a,{sourceNode:ee,targetNode:re}=this,[ae,se]=l7(ee,re,b,z);if(!y){const Oe=ae?Sh(ae):ee.getCenter(),ke=se?Sh(se):re.getCenter();return[Oe,ke]}const fe=typeof x=="function"?x():x,me=i5(ae||ee,fe[0]||se||re),Ee=i5(se||re,fe[fe.length-1]||ae||ee);return[me,Ee]}getHaloStyle(a){if(a.halo===!1)return!1;const y=this.getKeyStyle(a),x=Vl(this.getGraphicStyle(a),"halo");return Object.assign(Object.assign({},y),x)}getLabelStyle(a){if(a.label===!1||!a.labelText)return!1;const y=Vl(this.getGraphicStyle(a),"label"),{placement:x,offsetX:b,offsetY:z,autoRotate:ee,maxWidth:re}=y,ae=Jp(y,["placement","offsetX","offsetY","autoRotate","maxWidth"]),se=Kw(this.shapeMap.key,x,ee,b,z),fe=this.shapeMap.key.getLocalBounds(),me=oF([fe.min,fe.max],re);return Object.assign({wordWrapWidth:me},se,ae)}getBadgeStyle(a){if(a.badge===!1||!a.badgeText)return!1;const y=Vl(a,"badge"),{offsetX:x,offsetY:b,placement:z}=y,ee=Jp(y,["offsetX","offsetY","placement"]);return Object.assign(ee,Nk(this.shapeMap,z,a.labelPlacement,x,b))}drawArrow(a,y){var x;const b=y==="start",ee=a[y==="start"?"startArrow":"endArrow"],re=this.shapeMap.key;if(ee){const ae=this.getArrowStyle(a,b),[se,fe,me]=b?["markerStart","markerStartOffset","startArrowOffset"]:["markerEnd","markerEndOffset","endArrowOffset"],Ee=re.parsedStyle[se];if(Ee)Ee.attr(ae);else{const Oe=ae.src?fv:Hc,ke=new Oe({style:ae});re.style[se]=ke}re.style[fe]=a[me]||ae.width/2+ +ae.lineWidth}else{const ae=b?"markerStart":"markerEnd";(x=re.style[ae])===null||x===void 0||x.destroy(),re.style[ae]=null}}getArrowStyle(a,y){const x=this.getShape("key").attributes,b=y?"startArrow":"endArrow",z=Vl(this.getGraphicStyle(a),b),{size:ee,type:re}=z,ae=Jp(z,["size","type"]),[se,fe]=Yc(Hk(x.lineWidth,ee)),Ee=($i(re)?re:He[re]||Jw)(se,fe);return Object.assign(Cg(x,["stroke","strokeOpacity","fillOpacity"]),{width:se,height:fe},Object.assign({},Ee&&{d:Ee,fill:re==="simple"?"":x.stroke}),ae)}drawLabelShape(a,y){const x=this.getLabelStyle(a);this.upsert("label",xf,x,y)}drawHaloShape(a,y){const x=this.getHaloStyle(a);this.upsert("halo",Hc,x,y)}drawBadgeShape(a,y){const x=this.getBadgeStyle(a);this.upsert("badge",y0,x,y)}drawSourceArrow(a){this.drawArrow(a,"start")}drawTargetArrow(a){this.drawArrow(a,"end")}drawKeyShape(a,y){const x=this.getKeyStyle(a);return this.upsert("key",Hc,x,y)}render(a=this.parsedAttributes,y=this){this.drawKeyShape(a,y),this.getShape("key")&&(this.drawSourceArrow(a),this.drawTargetArrow(a),this.drawLabelShape(a,y),this.drawHaloShape(a,y),this.drawBadgeShape(a,y))}onframe(){this.drawKeyShape(this.parsedAttributes,this),this.drawSourceArrow(this.parsedAttributes),this.drawTargetArrow(this.parsedAttributes),this.drawHaloShape(this.parsedAttributes,this),this.drawLabelShape(this.parsedAttributes,this),this.drawBadgeShape(this.parsedAttributes,this)}animate(a,y){const x=super.animate(a,y);return x&&new Proxy(x,{set:(b,z,ee)=>(z==="currentTime"&&Promise.resolve().then(()=>this.onframe()),Reflect.set(b,z,ee))})}}xh.defaultStyleProps={badge:!0,badgeOffsetX:0,badgeOffsetY:0,badgePlacement:"suffix",isBillboard:!0,label:!0,labelAutoRotate:!0,labelIsBillboard:!0,labelMaxWidth:"80%",labelOffsetX:4,labelOffsetY:0,labelPlacement:"center",labelTextBaseline:"middle",labelWordWrap:!1,halo:!1,haloDroppable:!1,haloLineDash:0,haloLineWidth:12,haloPointerEvents:"none",haloStrokeOpacity:.25,haloZIndex:-1,loop:!0,startArrow:!1,startArrowLineDash:0,startArrowLineJoin:"round",startArrowLineWidth:1,startArrowTransformOrigin:"center",startArrowType:"vee",endArrow:!1,endArrowLineDash:0,endArrowLineJoin:"round",endArrowLineWidth:1,endArrowTransformOrigin:"center",endArrowType:"vee",loopPlacement:"top",loopClockwise:!0};class Pg extends xh{constructor(a){super(Mu({style:Pg.defaultStyleProps},a))}getKeyPath(a){const[y,x]=this.getEndpoints(a),{controlPoints:b,curvePosition:z,curveOffset:ee}=a,re=this.getControlPoints(y,x,Fk(z),Rk(ee),b);return Qw(y,x,re)}getControlPoints(a,y,x,b,z){return(z==null?void 0:z.length)===2?z:[$A(a,y,x[0],b[0]),$A(a,y,x[1],b[1])]}}Pg.defaultStyleProps={curvePosition:.5,curveOffset:20};class qp extends Pg{constructor(a){super(Mu({style:qp.defaultStyleProps},a))}getControlPoints(a,y,x,b){const z=y[0]-a[0];return[[a[0]+z*x[0]+b[0],a[1]],[y[0]-z*x[1]+b[1],y[1]]]}}qp.defaultStyleProps={curvePosition:[.5,.5],curveOffset:[0,0]};class $p extends Pg{constructor(a){super(Mu({style:$p.defaultStyleProps},a))}get ref(){return this.context.model.getRootsData()[0]}getEndpoints(a){if(this.sourceNode.id===this.ref.id)return super.getEndpoints(a);const y=Au(this.ref),x=this.sourceNode.getIntersectPoint(y,!0),b=this.targetNode.getIntersectPoint(y);return[x,b]}toRadialCoordinate(a){const y=Au(this.ref),x=xl(a,y),b=nw(fl(a,y));return[x,b]}getControlPoints(a,y,x,b){const[z,ee]=this.toRadialCoordinate(a),[re]=this.toRadialCoordinate(y),ae=re-z;return[[a[0]+(ae*x[0]+b[0])*Math.cos(ee),a[1]+(ae*x[0]+b[0])*Math.sin(ee)],[y[0]-(ae*x[1]-b[0])*Math.cos(ee),y[1]-(ae*x[1]-b[0])*Math.sin(ee)]]}}$p.defaultStyleProps={curvePosition:.5,curveOffset:20};class ey extends Pg{constructor(a){super(Mu({style:ey.defaultStyleProps},a))}getControlPoints(a,y,x,b){const z=y[1]-a[1];return[[a[0],a[1]+z*x[0]+b[0]],[y[0],y[1]-z*x[1]+b[1]]]}}ey.defaultStyleProps={curvePosition:[.5,.5],curveOffset:[0,0]};class ty extends xh{constructor(a){super(Mu({style:ty.defaultStyleProps},a))}getKeyPath(a){const[y,x]=this.getEndpoints(a);return[["M",y[0],y[1]],["L",x[0],x[1]]]}}ty.defaultStyleProps={};const Jk={enableObstacleAvoidance:!1,offset:10,maxAllowedDirectionChange:Math.PI/2,maximumLoops:3e3,gridSize:5,startDirections:["top","right","bottom","left"],endDirections:["top","right","bottom","left"],directionMap:{right:{stepX:1,stepY:0},left:{stepX:-1,stepY:0},bottom:{stepX:0,stepY:1},top:{stepX:0,stepY:-1}},penalties:{0:0,90:0},distFunc:Ip},_f=E=>`${Math.round(E[0])}|||${Math.round(E[1])}`;function wg(E,a){const y=x=>Math.round(x/a);return Wi(E)?y(E):E.map(y)}function qk(E,a){const y=Math.abs(E-a);return y>Math.PI?2*Math.PI-y:y}function qw(E,a){const y=a[0]-E[0],x=a[1]-E[1];return!y&&!x?0:Math.atan2(x,y)}function $w(E,a,y,x){const b=qw(E,a),z=y[_f(E)],re=qw(z||x,E);return qk(re,b)}const $k=(E,a)=>{const{offset:y,gridSize:x}=a,b={};return E.forEach(z=>{if(!z||z.destroyed||!z.isVisible())return;const ee=mh(z.getRenderBounds(),y);for(let re=wg(ee.min[0],x);re<=wg(ee.max[0],x);re+=1)for(let ae=wg(ee.min[1],x);ae<=wg(ee.max[1],x);ae+=1)b[`${re}|||${ae}`]=!0}),b};function e5(E,a,y){return Math.min(...a.map(x=>y(E,x)))}function e7(E,a,y){let x=E[0],b=y(E[0],a);for(let z=0;z{if(!a)return[E];const{directionMap:b,offset:z}=x,ee=mh(a.getRenderBounds(),z),re=Object.keys(b).reduce((ae,se)=>{if(y.includes(se)){const fe=b[se],[me,Ee]=gh(ee),Oe=[E[0]+fe.stepX*me,E[1]+fe.stepY*Ee],ke=e4(ee);for(let We=0;Wewg(ae,x.gridSize))},t7=(E,a,y,x,b,z,ee)=>{const re=[];let ae=[z[0]===x[0]?x[0]:E[0]*ee,z[1]===x[1]?x[1]:E[1]*ee];re.unshift(ae);let se=E,fe=a[_f(se)];for(;fe;){const Oe=fe,ke=se;$w(Oe,ke,a,y)&&(ae=[Oe[0]===ke[0]?ae[0]:Oe[0]*ee,Oe[1]===ke[1]?ae[1]:Oe[1]*ee],re.unshift(ae)),fe=a[_f(Oe)],se=Oe}const me=b.map(Oe=>[Oe[0]*ee,Oe[1]*ee]),Ee=e7(me,ae,Ip);return re.unshift(Ee),re};function n7(E,a,y,x){const b=Eg(E.getCenter()),z=Eg(a.getCenter()),ee=Object.assign(Jk,x),{gridSize:re}=ee,ae=ee.enableObstacleAvoidance?y:[E,a],se=$k(ae,ee),fe=wg(b,re),me=wg(z,re),Ee=t5(b,E,ee.startDirections,ee),Oe=t5(z,a,ee.endDirections,ee);Ee.forEach(ct=>delete se[_f(ct)]),Oe.forEach(ct=>delete se[_f(ct)]);const ke={},We={},je={},Ke={},Ze={},Je=new r7;for(let ct=0;ct_f(ct));let st=ee.maximumLoops,gt,mt=1/0;for(const[ct,Lt]of Object.entries(ke))Ze[ct]<=mt&&(mt=Ze[ct],gt=Lt);for(;Object.keys(ke).length>0&&st>0;){const ct=Je.minId(!1);if(ct)gt=ke[ct];else break;const Lt=_f(gt);if(tt.includes(Lt))return t7(gt,je,fe,z,Ee,me,re);delete ke[Lt],Je.remove(Lt),We[Lt]=!0;for(const _t of Object.values(ee.directionMap)){const Yt=es(gt,[_t.stepX,_t.stepY]),$t=_f(Yt);if(We[$t])continue;const En=$w(gt,Yt,je,fe);if(En>ee.maxAllowedDirectionChange||se[$t])continue;ke[$t]||(ke[$t]=Yt);const on=ee.penalties[En],Fn=ee.distFunc(gt,Yt)+(isNaN(on)?re:on),tr=Ke[Lt]+Fn,Cn=Ke[$t];Cn&&tr>=Cn||(je[$t]=gt,Ke[$t]=tr,Ze[$t]=tr+e5(Yt,Oe,ee.distFunc),Je.add({id:$t,value:Ze[$t]}))}st-=1}return[]}class r7{constructor(){this.arr=[],this.map={},this.arr=[],this.map={}}_innerAdd(a,y){let x=0,b=y-1;for(;b-x>1;){const z=Math.floor((x+b)/2);if(this.arr[z].value>a.value)b=z;else if(this.arr[z].value=0;y--)this.map[this.arr[y].id]?a=this.arr[y].id:this.arr.splice(y,1);return a}_findFirstId(){for(;this.arr.length;){const a=this.arr.shift();if(this.map[a.id])return a.id}}minId(a){return a?this._clearAndGetMinId():this._findFirstId()}}class ny extends xh{constructor(a){super(Mu({style:ny.defaultStyleProps},a))}getControlPoints(a){const{router:y}=a,{sourceNode:x,targetNode:b}=this,[z,ee]=this.getEndpoints(a,!1);let re=[];if(!y)re=a.controlPoints;else if(y.type==="shortest-path"){const ae=this.context.element.getNodes();re=n7(x,b,ae,y),re.length||(re=jw(z,ee,x,b,a.controlPoints,{padding:y.offset}))}else y.type==="orth"&&(re=jw(z,ee,x,b,a.controlPoints,y));return re}getPoints(a){const y=this.getControlPoints(a),[x,b]=this.getEndpoints(a,!0,y);return[x,...y,b]}getKeyPath(a){const y=this.getPoints(a);return ex(y,a.radius)}getLoopPath(a){const{sourcePort:y,targetPort:x,radius:b}=a,z=this.sourceNode,ee=vh(z),re=Math.max(pf(ee),yf(ee))/4,{placement:ae,clockwise:se,dist:fe=re}=Vl(this.getGraphicStyle(a),"loop");return jk(z,b,ae,se,fe,y,x)}}ny.defaultStyleProps={radius:0,controlPoints:[],router:!1};class ry extends xh{constructor(a){super(Mu({style:ry.defaultStyleProps},a))}getKeyPath(a){const{curvePosition:y,curveOffset:x}=a,[b,z]=this.getEndpoints(a),ee=a.controlPoint||$A(b,z,y,x);return kk(b,z,ee)}}ry.defaultStyleProps={curvePosition:.5,curveOffset:30};var a7=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b{var z;const{key:ee,placement:re}=x;r5(x)&&(a[z=ee||b]||(a[z]=Ff(E.getShape("key").getBounds(),re)))}),a}function r5(E){const{r:a}=E;return!a||Number(a)===0}function Sh(E){return v0(E)?E:E.getPosition()}function l7(E,a,y,x){const b=a5(E,a,y,x),z=a5(a,E,x,y);return[b,z]}function a5(E,a,y,x){const b=ax(E);if(y)return b[y];const z=Object.values(b);if(z.length===0)return;const ee=z.map(se=>Sh(se)),re=u7(a,x),[ae]=Y8(ee,re);return z.find(se=>Sh(se)===ae)}function u7(E,a){const y=ax(E);if(a)return[Sh(y[a])];const x=Object.values(y);return x.length>0?x.map(b=>Sh(b)):[E.getCenter()]}function i5(E,a){return nx(E)||Ov(E)?ix(E,a):Lv(E,a)}function Lv(E,a){if(!E||!a)return[0,0,0];if(v0(E))return E;if(E.attributes.linkToCenter)return E.getPosition();const y=v0(a)?a:Ov(a)?a.getCenter():a.getPosition();return Op(y,E.getBounds())}function ix(E,a){if(!E||!a)return[0,0,0];const y=v0(a)?a:Ov(a)?a.getCenter():a.getPosition();return E.getIntersectPoint(y)||E.getCenter()}function o5(E,a="bottom",y=0,x=0,b=!1){const z=a.split("-"),[ee,re]=Ff(E,a),[ae,se]=b?["bottom","top"]:["top","bottom"],fe=z.includes("top")?se:z.includes("bottom")?ae:"middle",me=z.includes("left")?"right":z.includes("right")?"left":"center";return{transform:[["translate",ee+y,re+x]],textBaseline:fe,textAlign:me}}function c7(E,a){return[[0,-E],[a*Math.cos(3*Math.PI/10),-a*Math.sin(3*Math.PI/10)],[E*Math.cos(Math.PI/10),-E*Math.sin(Math.PI/10)],[a*Math.cos(Math.PI/10),a*Math.sin(Math.PI/10)],[E*Math.cos(3*Math.PI/10),E*Math.sin(3*Math.PI/10)],[0,a],[-E*Math.cos(3*Math.PI/10),E*Math.sin(3*Math.PI/10)],[-a*Math.cos(Math.PI/10),a*Math.sin(Math.PI/10)],[-E*Math.cos(Math.PI/10),-E*Math.sin(Math.PI/10)],[-a*Math.cos(3*Math.PI/10),-a*Math.sin(3*Math.PI/10)]]}function d7(E,a){const y={};return y.top=[0,-E],y.left=[-E*Math.cos(Math.PI/10),-E*Math.sin(Math.PI/10)],y["left-bottom"]=[-E*Math.cos(3*Math.PI/10),E*Math.sin(3*Math.PI/10)],y.bottom=[0,a],y["right-bottom"]=[E*Math.cos(3*Math.PI/10),E*Math.sin(3*Math.PI/10)],y.right=y.default=[E*Math.cos(Math.PI/10),-E*Math.sin(Math.PI/10)],y}function f7(E,a,y){const x=a/2,b=E/2,z={up:[[-b,x],[b,x],[0,-x]],left:[[-b,0],[b,x],[b,-x]],right:[[-b,x],[-b,-x],[b,0]],down:[[-b,-x],[b,-x],[0,x]]};return z[y]||z.up}function h7(E,a,y){const x=a/2,b=E/2,z={};return y==="down"?(z.bottom=z.default=[0,x],z.right=[b,-x],z.left=[-b,-x]):y==="left"?(z.top=[b,-x],z.bottom=[b,x],z.left=z.default=[-b,0]):y==="right"?(z.top=[-b,-x],z.bottom=[-b,x],z.right=z.default=[b,0]):(z.left=[-b,x],z.top=z.default=[0,-x],z.right=[b,x]),z}function p$(E,a){return[[E/2,-a/2],[E/2,a/2],[-E/2,a/2],[-E/2,-a/2]]}function g7(E,a){return[[0,-a/2],[E/2,0],[0,a/2],[-E/2,0]]}function s5(E){return ju(E,["style","visibility"])!=="hidden"}function v7(E,a){const{zIndex:y,transform:x,transformOrigin:b,visibility:z,cursor:ee,clipPath:re,component:ae}=a,se=a7(a,["zIndex","transform","transformOrigin","visibility","cursor","clipPath","component"]);Object.assign(E.attributes,se),x&&E.setAttribute("transform",x),Wi(y)&&E.setAttribute("zIndex",y),b&&E.setAttribute("transformOrigin",b),z&&E.setAttribute("visibility",z),ee&&E.setAttribute("cursor",ee),re&&E.setAttribute("clipPath",re),ae&&E.setAttribute("component",ae)}function ox(E,a){"update"in E?E.update(a):E.attr(a)}function m7(E){return[[0,E],[E*Math.sqrt(3)/2,E/2],[E*Math.sqrt(3)/2,-E/2],[0,-E],[-E*Math.sqrt(3)/2,-E/2],[-E*Math.sqrt(3)/2,E/2]]}function p7(E){Pv(E,"__to_be_destroyed__",!0)}function Bv(E){return ju(E,"__to_be_destroyed__",!1)}var y7=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(fe){try{se(x.next(fe))}catch(me){ee(me)}}function ae(fe){try{se(x.throw(fe))}catch(me){ee(me)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})};class ay extends Qc{constructor(a,y){super(a,Object.assign({},ay.defaultOptions,y)),this.onCollapseExpand=x=>y7(this,void 0,void 0,function*(){if(!this.validate(x))return;const{target:b}=x;if(!i7(b))return;const z=b.id,{model:ee,graph:re}=this.context,ae=ee.getElementDataById(z);if(!ae)return!1;const{onCollapse:se,onExpand:fe,animation:me,align:Ee}=this.options;Oc(ae)?(yield re.expandElement(z,{animation:me,align:Ee}),fe==null||fe(z)):(yield re.collapseElement(z,{animation:me,align:Ee}),se==null||se(z))}),this.bindEvents()}update(a){this.unbindEvents(),super.update(a),this.bindEvents()}bindEvents(){const{graph:a}=this.context,{trigger:y}=this.options;a.on(`node:${y}`,this.onCollapseExpand),a.on(`combo:${y}`,this.onCollapseExpand)}unbindEvents(){const{graph:a}=this.context,{trigger:y}=this.options;a.off(`node:${y}`,this.onCollapseExpand),a.off(`combo:${y}`,this.onCollapseExpand)}validate(a){if(this.destroyed)return!1;const{enable:y}=this.options;return $i(y)?y(a):!!y}destroy(){this.unbindEvents(),super.destroy()}}ay.defaultOptions={enable:!0,animation:!0,trigger:ma.DBLCLICK,align:!0};var iy={},E7=function(E){return E=E||"g",iy[E]?iy[E]+=1:iy[E]=1,E+iy[E]},oy=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(fe){try{se(x.next(fe))}catch(me){ee(me)}}function ae(fe){try{se(x.throw(fe))}catch(me){ee(me)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})};const A7="g6-create-edge-assist-edge-id",sy="g6-create-edge-assist-node-id";class ly extends Qc{constructor(a,y){super(a,Object.assign({},ly.defaultOptions,y)),this.drop=x=>oy(this,void 0,void 0,function*(){const{targetType:b}=x;["combo","node"].includes(b)&&this.source?yield this.handleCreateEdge(x):yield this.cancelEdge()}),this.handleCreateEdge=x=>oy(this,void 0,void 0,function*(){var b,z,ee;if(!this.validate(x))return;const{graph:re,canvas:ae,batch:se,element:fe}=this.context,{style:me}=this.options;if(this.source){this.createEdge(x),yield this.cancelEdge();return}se.startBatch(),ae.setCursor("crosshair"),this.source=this.getSelectedNodeIDs([x.target.id])[0];const Ee=re.getElementData(this.source);re.addNodeData([{id:sy,style:{visibility:"hidden",ports:[{key:"port-1",placement:[.5,.5]}],x:(b=Ee.style)===null||b===void 0?void 0:b.x,y:(z=Ee.style)===null||z===void 0?void 0:z.y}}]),re.addEdgeData([{id:A7,source:this.source,target:sy,style:Object.assign({pointerEvents:"none"},me)}]),yield(ee=fe.draw({animation:!1}))===null||ee===void 0?void 0:ee.finished}),this.updateAssistEdge=x=>oy(this,void 0,void 0,function*(){var b;if(!this.source)return;const{model:z,element:ee}=this.context;z.translateNodeTo(sy,[x.canvas.x,x.canvas.y]),yield(b=ee.draw({animation:!1,silence:!0}))===null||b===void 0?void 0:b.finished}),this.createEdge=x=>{var b,z;const{graph:ee}=this.context,{style:re,onFinish:ae,onCreate:se}=this.options;if(((b=x.target)===null||b===void 0?void 0:b.id)===void 0||this.source===void 0)return;const me=(z=this.getSelectedNodeIDs([x.target.id]))===null||z===void 0?void 0:z[0],Ee=`${this.source}-${me}-${E7()}`,Oe=se({id:Ee,source:this.source,target:me,style:re});Oe&&(ee.addEdgeData([Oe]),ae(Oe))},this.cancelEdge=()=>oy(this,void 0,void 0,function*(){var x;if(!this.source)return;const{graph:b,element:z,batch:ee}=this.context;b.removeNodeData([sy]),this.source=void 0,yield(x=z.draw({animation:!1}))===null||x===void 0?void 0:x.finished,ee.endBatch()}),this.bindEvents()}update(a){super.update(a),this.bindEvents()}bindEvents(){const{graph:a}=this.context,{trigger:y}=this.options;this.unbindEvents(),y==="click"?(a.on(pd.CLICK,this.handleCreateEdge),a.on(vg.CLICK,this.handleCreateEdge),a.on(Lf.CLICK,this.cancelEdge),a.on(fp.CLICK,this.cancelEdge)):(a.on(pd.DRAG_START,this.handleCreateEdge),a.on(vg.DRAG_START,this.handleCreateEdge),a.on(ma.POINTER_UP,this.drop)),a.on(ma.POINTER_MOVE,this.updateAssistEdge)}getSelectedNodeIDs(a){return Array.from(new Set(this.context.graph.getElementDataByState("node",this.options.state).map(y=>y.id).concat(a)))}validate(a){if(this.destroyed)return!1;const{enable:y}=this.options;return $i(y)?y(a):!!y}unbindEvents(){const{graph:a}=this.context;a.off(pd.CLICK,this.handleCreateEdge),a.off(vg.CLICK,this.handleCreateEdge),a.off(Lf.CLICK,this.cancelEdge),a.off(fp.CLICK,this.cancelEdge),a.off(pd.DRAG_START,this.handleCreateEdge),a.off(vg.DRAG_START,this.handleCreateEdge),a.off(ma.POINTER_UP,this.drop),a.off(ma.POINTER_MOVE,this.updateAssistEdge)}destroy(){this.unbindEvents(),super.destroy()}}ly.defaultOptions={animation:!0,enable:!0,style:{},trigger:"drag",onCreate:E=>E,onFinish:()=>{}};function x7(E,a,y){var x;return function(){var b=this,z=arguments,ee=function(){x=null,y||E.apply(b,z)},re=y&&!x;clearTimeout(x),x=setTimeout(ee,a),re&&E.apply(b,z)}}var Nv=x7,l5=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(fe){try{se(x.next(fe))}catch(me){ee(me)}}function ae(fe){try{se(x.throw(fe))}catch(me){ee(me)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})};class uy extends Qc{constructor(a,y){super(a,Object.assign({},uy.defaultOptions,y)),this.isDragging=!1,this.onDragStart=x=>{this.validate(x)&&(this.isDragging=!0,this.context.canvas.setCursor("grabbing"))},this.onDrag=x=>{var b,z,ee,re;if(!this.isDragging||ru.isPinching)return;const ae=(z=(b=x.movement)===null||b===void 0?void 0:b.x)!==null&&z!==void 0?z:x.dx,se=(re=(ee=x.movement)===null||ee===void 0?void 0:ee.y)!==null&&re!==void 0?re:x.dy;ae|se&&this.translate([ae,se],!1)},this.onDragEnd=()=>{var x,b;this.isDragging=!1,this.context.canvas.setCursor(this.defaultCursor),(b=(x=this.options).onFinish)===null||b===void 0||b.call(x)},this.invokeOnFinish=Nv(()=>{var x,b;(b=(x=this.options).onFinish)===null||b===void 0||b.call(x)},300),this.shortcut=new p0(a.graph),this.bindEvents(),this.defaultCursor=this.context.canvas.getConfig().cursor||"default"}update(a){this.unbindEvents(),super.update(a),this.bindEvents()}bindEvents(){const{trigger:a}=this.options;if($l(a)){const{up:y=[],down:x=[],left:b=[],right:z=[]}=a;this.shortcut.bind(y,ee=>this.onTranslate([0,1],ee)),this.shortcut.bind(x,ee=>this.onTranslate([0,-1],ee)),this.shortcut.bind(b,ee=>this.onTranslate([1,0],ee)),this.shortcut.bind(z,ee=>this.onTranslate([-1,0],ee))}else{const{graph:y}=this.context;y.on(ma.DRAG_START,this.onDragStart),y.on(ma.DRAG,this.onDrag),y.on(ma.DRAG_END,this.onDragEnd)}}onTranslate(a,y){return l5(this,void 0,void 0,function*(){if(!this.validate(y))return;const{sensitivity:x}=this.options,b=x*-1;yield this.translate(Rd(a,b),this.options.animation),this.invokeOnFinish()})}translate(a,y){return l5(this,void 0,void 0,function*(){a=this.clampByDirection(a),a=this.clampByRange(a),a=this.clampByRotation(a),yield this.context.graph.translateBy(a,y)})}clampByRotation([a,y]){const x=this.context.graph.getRotation();return rw([a,y],x)}clampByDirection([a,y]){const{direction:x}=this.options;return x==="x"?y=0:x==="y"&&(a=0),[a,y]}clampByRange([a,y]){const{viewport:x,canvas:b}=this.context,[z,ee]=b.getSize(),[re,ae,se,fe]=Zc(this.options.range),me=[ee*re,z*ae,ee*se,z*fe],Ee=mh(yA(x.getCanvasCenter()),me),Oe=fl(x.getViewportCenter(),[a,y,0]);if(!Bd(Oe,Ee)){const{min:[ke,We],max:[je,Ke]}=Ee;(Oe[0]0||Oe[0]>je&&a<0)&&(a=0),(Oe[1]0||Oe[1]>Ke&&y<0)&&(y=0)}return[a,y]}validate(a){if(this.destroyed)return!1;const{enable:y}=this.options;return typeof y=="function"?y(a):!!y}unbindEvents(){this.shortcut.unbindAll();const{graph:a}=this.context;a.off(ma.DRAG_START,this.onDragStart),a.off(ma.DRAG,this.onDrag),a.off(ma.DRAG_END,this.onDragEnd)}destroy(){this.shortcut.destroy(),this.unbindEvents(),this.context.canvas.setCursor(this.defaultCursor),super.destroy()}}uy.defaultOptions={enable:E=>"targetType"in E?E.targetType==="canvas":!0,sensitivity:10,direction:"both",range:1/0};var u5=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(fe){try{se(x.next(fe))}catch(me){ee(me)}}function ae(fe){try{se(x.throw(fe))}catch(me){ee(me)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})};class Rv extends Qc{constructor(a,y){super(a,Object.assign({},Rv.defaultOptions,y)),this.enable=!1,this.enableElements=["node","combo"],this.target=[],this.shadowOrigin=[0,0],this.hiddenEdges=[],this.isDragging=!1,this.onDrop=x=>u5(this,void 0,void 0,function*(){var b;if(this.options.dropEffect!=="link")return;const{model:z,element:ee}=this.context,re=x.target.id;this.target.forEach(ae=>{const se=z.getParentData(ae,vl);se&&Lr(se)===re&&z.refreshComboData(re),z.setParent(ae,re,vl)}),yield(b=ee==null?void 0:ee.draw({animation:!0}))===null||b===void 0?void 0:b.finished}),this.setCursor=x=>{if(this.isDragging)return;const{type:b}=x,{canvas:z}=this.context,{cursor:ee}=this.options;b===ma.POINTER_ENTER?z.setCursor((ee==null?void 0:ee.grab)||"grab"):z.setCursor((ee==null?void 0:ee.default)||"default")},this.onDragStart=this.onDragStart.bind(this),this.onDrag=this.onDrag.bind(this),this.onDragEnd=this.onDragEnd.bind(this),this.onDrop=this.onDrop.bind(this),this.bindEvents()}update(a){this.unbindEvents(),super.update(a),this.bindEvents()}bindEvents(){const{graph:a,canvas:y}=this.context,x=y.getLayer().getContextService().$canvas;x&&(x.addEventListener("blur",this.onDragEnd),x.addEventListener("contextmenu",this.onDragEnd)),this.enableElements.forEach(b=>{a.on(`${b}:${ma.DRAG_START}`,this.onDragStart),a.on(`${b}:${ma.DRAG}`,this.onDrag),a.on(`${b}:${ma.DRAG_END}`,this.onDragEnd),a.on(`${b}:${ma.POINTER_ENTER}`,this.setCursor),a.on(`${b}:${ma.POINTER_LEAVE}`,this.setCursor)}),["link"].includes(this.options.dropEffect)&&(a.on(vg.DROP,this.onDrop),a.on(Lf.DROP,this.onDrop))}getSelectedNodeIDs(a){return Array.from(new Set(this.context.graph.getElementDataByState("node",this.options.state).map(y=>y.id).concat(a)))}getDelta(a){const y=this.context.graph.getZoom();return Fd([a.dx,a.dy],y)}onDragStart(a){var y;if(this.enable=this.validate(a),!this.enable)return;const{batch:x,canvas:b,graph:z}=this.context;b.setCursor(((y=this.options.cursor)===null||y===void 0?void 0:y.grabbing)||"grabbing"),this.isDragging=!0,x.startBatch();const ee=a.target.id;z.getElementState(ee).includes(this.options.state)?this.target=this.getSelectedNodeIDs([ee]):this.target=[ee],this.hideEdge(),this.context.graph.frontElement(this.target),this.options.shadow&&this.createShadow(this.target)}onDrag(a){if(!this.enable)return;const y=this.getDelta(a);this.options.shadow?this.moveShadow(y):this.moveElement(this.target,y)}onDragEnd(){var a,y,x;if(!this.enable)return;if(this.enable=!1,this.options.shadow){if(!this.shadow)return;this.shadow.style.visibility="hidden";const{x:ee=0,y:re=0}=this.shadow.attributes,[ae,se]=fl([+ee,+re],this.shadowOrigin);this.moveElement(this.target,[ae,se])}this.showEdges(),(y=(a=this.options).onFinish)===null||y===void 0||y.call(a,this.target);const{batch:b,canvas:z}=this.context;b.endBatch(),z.setCursor(((x=this.options.cursor)===null||x===void 0?void 0:x.grab)||"grab"),this.isDragging=!1,this.target=[]}validate(a){if(this.destroyed||Bv(a.target)||this.context.graph.isCollapsingExpanding)return!1;const{enable:y}=this.options;return $i(y)?y(a):!!y}clampByRotation([a,y]){const x=this.context.graph.getRotation();return rw([a,y],x)}moveElement(a,y){return u5(this,void 0,void 0,function*(){const{graph:x,model:b}=this.context,{dropEffect:z}=this.options;z==="move"&&a.forEach(ee=>b.refreshComboData(ee)),x.translateElementBy(Object.fromEntries(a.map(ee=>[ee,this.clampByRotation(y)])),!1)})}moveShadow(a){if(!this.shadow)return;const{x:y=0,y:x=0}=this.shadow.attributes,[b,z]=a;this.shadow.attr({x:+y+b,y:+x+z})}createShadow(a){const y=Vl(this.options,"shadow"),x=yv(a.map(se=>this.context.element.getElement(se).getBounds())),[b,z]=x.min;this.shadowOrigin=[b,z];const[ee,re]=gh(x),ae={width:ee,height:re,x:b,y:z};this.shadow?this.shadow.attr(Object.assign(Object.assign(Object.assign({},y),ae),{visibility:"visible"})):(this.shadow=new zu({style:Object.assign(Object.assign(Object.assign({$layer:"transient"},y),ae),{pointerEvents:"none"})}),this.context.canvas.appendChild(this.shadow))}showEdges(){this.options.shadow||this.hiddenEdges.length===0||(this.context.graph.showElement(this.hiddenEdges),this.hiddenEdges=[])}hideEdge(){const{hideEdge:a,shadow:y}=this.options;if(a==="none"||y)return;const{graph:x}=this.context;a==="all"?this.hiddenEdges=x.getEdgeData().map(Lr):this.hiddenEdges=Array.from(new Set(this.target.map(b=>x.getRelatedEdgesData(b,a).map(Lr)).flat())),x.hideElement(this.hiddenEdges)}unbindEvents(){const{graph:a,canvas:y}=this.context,x=y.getLayer().getContextService().$canvas;x&&(x.removeEventListener("blur",this.onDragEnd),x.removeEventListener("contextmenu",this.onDragEnd)),this.enableElements.forEach(b=>{a.off(`${b}:${ma.DRAG_START}`,this.onDragStart),a.off(`${b}:${ma.DRAG}`,this.onDrag),a.off(`${b}:${ma.DRAG_END}`,this.onDragEnd),a.off(`${b}:${ma.POINTER_ENTER}`,this.setCursor),a.off(`${b}:${ma.POINTER_LEAVE}`,this.setCursor)}),a.off(`combo:${ma.DROP}`,this.onDrop),a.off(`canvas:${ma.DROP}`,this.onDrop)}destroy(){var a;this.unbindEvents(),(a=this.shadow)===null||a===void 0||a.destroy(),super.destroy()}}Rv.defaultOptions={animation:!0,enable:E=>["node","combo"].includes(E.targetType),dropEffect:"move",state:"selected",hideEdge:"none",shadow:!1,shadowZIndex:100,shadowFill:"#F3F9FF",shadowFillOpacity:.5,shadowStroke:"#1890FF",shadowStrokeOpacity:.9,shadowLineDash:[5,5],cursor:{default:"default",grab:"grab",grabbing:"grabbing"}};var S7="*",b7=function(){function E(){this._events={}}return E.prototype.on=function(a,y,x){return this._events[a]||(this._events[a]=[]),this._events[a].push({callback:y,once:!!x}),this},E.prototype.once=function(a,y){return this.on(a,y,!0)},E.prototype.emit=function(a){for(var y=this,x=[],b=1;b{a.has(ee.id)||(a.add(ee.id),E.push(ee))})}return!1}function dy(E,a,y,x){if(y(E))return!0;a.add(E.id);for(const z of x(E.id))if(!a.has(z.id)&&dy(z,a,y,x))return!0;return!1}const c5=()=>!0;class C7{constructor(a){Ol(this,"graph");Ol(this,"nodeFilter");Ol(this,"edgeFilter");Ol(this,"cacheEnabled");Ol(this,"inEdgesMap",new Map);Ol(this,"outEdgesMap",new Map);Ol(this,"bothEdgesMap",new Map);Ol(this,"allNodesMap",new Map);Ol(this,"allEdgesMap",new Map);Ol(this,"clearCache",()=>{this.inEdgesMap.clear(),this.outEdgesMap.clear(),this.bothEdgesMap.clear(),this.allNodesMap.clear(),this.allEdgesMap.clear()});Ol(this,"refreshCache",()=>{this.clearCache(),this.updateCache(this.graph.getAllNodes().map(a=>a.id))});Ol(this,"updateCache",a=>{const y=new Set;a.forEach(x=>{const b=this.bothEdgesMap.get(x);if(b&&b.forEach(z=>y.add(z.id)),!this.hasNode(x))this.inEdgesMap.delete(x),this.outEdgesMap.delete(x),this.bothEdgesMap.delete(x),this.allNodesMap.delete(x);else{const z=this.graph.getRelatedEdges(x,"in").filter(this.edgeFilter),ee=this.graph.getRelatedEdges(x,"out").filter(this.edgeFilter),re=Array.from(new Set([...z,...ee]));re.forEach(ae=>y.add(ae.id)),this.inEdgesMap.set(x,z),this.outEdgesMap.set(x,ee),this.bothEdgesMap.set(x,re),this.allNodesMap.set(x,this.graph.getNode(x))}}),y.forEach(x=>{this.hasEdge(x)?this.allEdgesMap.set(x,this.graph.getEdge(x)):this.allEdgesMap.delete(x)})});Ol(this,"handleGraphChanged",a=>{const y=new Set;a.changes.forEach(x=>{switch(x.type){case"NodeAdded":y.add(x.value.id);break;case"NodeDataUpdated":y.add(x.id);break;case"EdgeAdded":y.add(x.value.source),y.add(x.value.target);break;case"EdgeUpdated":(x.propertyName==="source"||x.propertyName==="target")&&(y.add(x.oldValue),y.add(x.newValue));break;case"EdgeDataUpdated":if(a.graph.hasEdge(x.id)){const b=a.graph.getEdge(x.id);y.add(b.source),y.add(b.target)}break;case"EdgeRemoved":y.add(x.value.source),y.add(x.value.target);break;case"NodeRemoved":y.add(x.value.id);break;default:break}}),this.updateCache(y)});this.graph=a.graph;const y=a.nodeFilter||c5,x=a.edgeFilter||c5;this.nodeFilter=y,this.edgeFilter=b=>{const{source:z,target:ee}=this.graph.getEdgeDetail(b.id);return!y(z)||!y(ee)?!1:x(b,z,ee)},a.cache==="auto"?(this.cacheEnabled=!0,this.startAutoCache()):a.cache==="manual"?this.cacheEnabled=!0:this.cacheEnabled=!1}startAutoCache(){this.refreshCache(),this.graph.on("changed",this.handleGraphChanged)}stopAutoCache(){this.graph.off("changed",this.handleGraphChanged)}checkNodeExistence(a){this.getNode(a)}hasNode(a){if(!this.graph.hasNode(a))return!1;const y=this.graph.getNode(a);return this.nodeFilter(y)}areNeighbors(a,y){return this.checkNodeExistence(a),this.getNeighbors(y).some(x=>x.id===a)}getNode(a){const y=this.graph.getNode(a);if(!this.nodeFilter(y))throw new Error("Node not found for id: "+a);return y}getRelatedEdges(a,y){return this.checkNodeExistence(a),this.cacheEnabled?y==="in"?this.inEdgesMap.get(a):y==="out"?this.outEdgesMap.get(a):this.bothEdgesMap.get(a):this.graph.getRelatedEdges(a,y).filter(this.edgeFilter)}getDegree(a,y){return this.getRelatedEdges(a,y).length}getSuccessors(a){const x=this.getRelatedEdges(a,"out").map(b=>this.getNode(b.target));return Array.from(new Set(x))}getPredecessors(a){const x=this.getRelatedEdges(a,"in").map(b=>this.getNode(b.source));return Array.from(new Set(x))}getNeighbors(a){const y=this.getPredecessors(a),x=this.getSuccessors(a);return Array.from(new Set([...y,...x]))}hasEdge(a){if(!this.graph.hasEdge(a))return!1;const y=this.graph.getEdge(a);return this.edgeFilter(y)}getEdge(a){const y=this.graph.getEdge(a);if(!this.edgeFilter(y))throw new Error("Edge not found for id: "+a);return y}getEdgeDetail(a){const y=this.getEdge(a);return{edge:y,source:this.getNode(y.source),target:this.getNode(y.target)}}hasTreeStructure(a){return this.graph.hasTreeStructure(a)}getRoots(a){return this.graph.getRoots(a).filter(this.nodeFilter)}getChildren(a,y){return this.checkNodeExistence(a),this.graph.getChildren(a,y).filter(this.nodeFilter)}getParent(a,y){this.checkNodeExistence(a);const x=this.graph.getParent(a,y);return!x||!this.nodeFilter(x)?null:x}getAllNodes(){return this.cacheEnabled?Array.from(this.allNodesMap.values()):this.graph.getAllNodes().filter(this.nodeFilter)}getAllEdges(){return this.cacheEnabled?Array.from(this.allEdgesMap.values()):this.graph.getAllEdges().filter(this.edgeFilter)}bfs(a,y,x="out"){const b={in:this.getPredecessors.bind(this),out:this.getSuccessors.bind(this),both:this.getNeighbors.bind(this)}[x];sx([this.getNode(a)],new Set,y,b)}dfs(a,y,x="out"){const b={in:this.getPredecessors.bind(this),out:this.getSuccessors.bind(this),both:this.getNeighbors.bind(this)}[x];dy(this.getNode(a),new Set,y,b)}}class iu extends cy{constructor(y){super();Ol(this,"nodeMap",new Map);Ol(this,"edgeMap",new Map);Ol(this,"inEdgesMap",new Map);Ol(this,"outEdgesMap",new Map);Ol(this,"bothEdgesMap",new Map);Ol(this,"treeIndices",new Map);Ol(this,"changes",[]);Ol(this,"batchCount",0);Ol(this,"onChanged",()=>{});Ol(this,"batch",y=>{this.batchCount+=1,y(),this.batchCount-=1,this.batchCount||this.commit()});y&&(y.nodes&&this.addNodes(y.nodes),y.edges&&this.addEdges(y.edges),y.tree&&this.addTree(y.tree),y.onChanged&&(this.onChanged=y.onChanged))}commit(){const y=this.changes;this.changes=[];const x={graph:this,changes:y};this.emit("changed",x),this.onChanged(x)}reduceChanges(y){let x=[];return y.forEach(b=>{switch(b.type){case"NodeRemoved":{let z=!1;x=x.filter(ee=>{if(ee.type==="NodeAdded"){const re=ee.value.id===b.value.id;return re&&(z=!0),!re}else{if(ee.type==="NodeDataUpdated")return ee.id!==b.value.id;if(ee.type==="TreeStructureChanged")return ee.nodeId!==b.value.id}return!0}),z||x.push(b);break}case"EdgeRemoved":{let z=!1;x=x.filter(ee=>{if(ee.type==="EdgeAdded"){const re=ee.value.id===b.value.id;return re&&(z=!0),!re}else if(ee.type==="EdgeDataUpdated"||ee.type==="EdgeUpdated")return ee.id!==b.value.id;return!0}),z||x.push(b);break}case"NodeDataUpdated":case"EdgeDataUpdated":case"EdgeUpdated":{const z=x.findIndex(re=>re.type===b.type&&re.id===b.id&&(b.propertyName===void 0||re.propertyName===b.propertyName)),ee=x[z];ee?b.propertyName!==void 0?ee.newValue=b.newValue:(x.splice(z,1),x.push(b)):x.push(b);break}case"TreeStructureDetached":{x=x.filter(z=>z.type==="TreeStructureAttached"||z.type==="TreeStructureChanged"?z.treeKey!==b.treeKey:!0),x.push(b);break}case"TreeStructureChanged":{const z=x.find(ee=>ee.type==="TreeStructureChanged"&&ee.treeKey===b.treeKey&&ee.nodeId===b.nodeId);z?z.newParentId=b.newParentId:x.push(b);break}default:x.push(b);break}}),x}checkNodeExistence(y){this.getNode(y)}hasNode(y){return this.nodeMap.has(y)}areNeighbors(y,x){return this.getNeighbors(x).some(b=>b.id===y)}getNode(y){const x=this.nodeMap.get(y);if(!x)throw new Error("Node not found for id: "+y);return x}getRelatedEdges(y,x){if(this.checkNodeExistence(y),x==="in"){const b=this.inEdgesMap.get(y);return Array.from(b)}else if(x==="out"){const b=this.outEdgesMap.get(y);return Array.from(b)}else{const b=this.bothEdgesMap.get(y);return Array.from(b)}}getDegree(y,x){return this.getRelatedEdges(y,x).length}getSuccessors(y){const b=this.getRelatedEdges(y,"out").map(z=>this.getNode(z.target));return Array.from(new Set(b))}getPredecessors(y){const b=this.getRelatedEdges(y,"in").map(z=>this.getNode(z.source));return Array.from(new Set(b))}getNeighbors(y){const x=this.getPredecessors(y),b=this.getSuccessors(y);return Array.from(new Set([...x,...b]))}doAddNode(y){if(this.hasNode(y.id))throw new Error("Node already exists: "+y.id);this.nodeMap.set(y.id,y),this.inEdgesMap.set(y.id,new Set),this.outEdgesMap.set(y.id,new Set),this.bothEdgesMap.set(y.id,new Set),this.treeIndices.forEach(x=>{x.childrenMap.set(y.id,new Set)}),this.changes.push({type:"NodeAdded",value:y})}addNodes(y){this.batch(()=>{for(const x of y)this.doAddNode(x)})}addNode(y){this.addNodes([y])}doRemoveNode(y){const x=this.getNode(y),b=this.bothEdgesMap.get(y);b==null||b.forEach(z=>this.doRemoveEdge(z.id)),this.nodeMap.delete(y),this.treeIndices.forEach(z=>{var re,ae;(re=z.childrenMap.get(y))==null||re.forEach(se=>{z.parentMap.delete(se.id)});const ee=z.parentMap.get(y);ee&&((ae=z.childrenMap.get(ee.id))==null||ae.delete(x)),z.parentMap.delete(y),z.childrenMap.delete(y)}),this.bothEdgesMap.delete(y),this.inEdgesMap.delete(y),this.outEdgesMap.delete(y),this.changes.push({type:"NodeRemoved",value:x})}removeNodes(y){this.batch(()=>{y.forEach(x=>this.doRemoveNode(x))})}removeNode(y){this.removeNodes([y])}updateNodeDataProperty(y,x,b){const z=this.getNode(y);this.batch(()=>{const ee=z.data[x],re=b;z.data[x]=re,this.changes.push({type:"NodeDataUpdated",id:y,propertyName:x,oldValue:ee,newValue:re})})}mergeNodeData(y,x){this.batch(()=>{Object.entries(x).forEach(([b,z])=>{this.updateNodeDataProperty(y,b,z)})})}updateNodeData(...y){const x=y[0],b=this.getNode(x);if(typeof y[1]=="string"){this.updateNodeDataProperty(x,y[1],y[2]);return}let z;if(typeof y[1]=="function"){const ee=y[1];z=ee(b.data)}else typeof y[1]=="object"&&(z=y[1]);this.batch(()=>{const ee=b.data,re=z;b.data=z,this.changes.push({type:"NodeDataUpdated",id:x,oldValue:ee,newValue:re})})}checkEdgeExistence(y){if(!this.hasEdge(y))throw new Error("Edge not found for id: "+y)}hasEdge(y){return this.edgeMap.has(y)}getEdge(y){return this.checkEdgeExistence(y),this.edgeMap.get(y)}getEdgeDetail(y){const x=this.getEdge(y);return{edge:x,source:this.getNode(x.source),target:this.getNode(x.target)}}doAddEdge(y){if(this.hasEdge(y.id))throw new Error("Edge already exists: "+y.id);this.checkNodeExistence(y.source),this.checkNodeExistence(y.target),this.edgeMap.set(y.id,y);const x=this.inEdgesMap.get(y.target),b=this.outEdgesMap.get(y.source),z=this.bothEdgesMap.get(y.source),ee=this.bothEdgesMap.get(y.target);x.add(y),b.add(y),z.add(y),ee.add(y),this.changes.push({type:"EdgeAdded",value:y})}addEdges(y){this.batch(()=>{for(const x of y)this.doAddEdge(x)})}addEdge(y){this.addEdges([y])}doRemoveEdge(y){const x=this.getEdge(y),b=this.outEdgesMap.get(x.source),z=this.inEdgesMap.get(x.target),ee=this.bothEdgesMap.get(x.source),re=this.bothEdgesMap.get(x.target);b.delete(x),z.delete(x),ee.delete(x),re.delete(x),this.edgeMap.delete(y),this.changes.push({type:"EdgeRemoved",value:x})}removeEdges(y){this.batch(()=>{y.forEach(x=>this.doRemoveEdge(x))})}removeEdge(y){this.removeEdges([y])}updateEdgeSource(y,x){const b=this.getEdge(y);this.checkNodeExistence(x);const z=b.source,ee=x;this.outEdgesMap.get(z).delete(b),this.bothEdgesMap.get(z).delete(b),this.outEdgesMap.get(ee).add(b),this.bothEdgesMap.get(ee).add(b),b.source=x,this.batch(()=>{this.changes.push({type:"EdgeUpdated",id:y,propertyName:"source",oldValue:z,newValue:ee})})}updateEdgeTarget(y,x){const b=this.getEdge(y);this.checkNodeExistence(x);const z=b.target,ee=x;this.inEdgesMap.get(z).delete(b),this.bothEdgesMap.get(z).delete(b),this.inEdgesMap.get(ee).add(b),this.bothEdgesMap.get(ee).add(b),b.target=x,this.batch(()=>{this.changes.push({type:"EdgeUpdated",id:y,propertyName:"target",oldValue:z,newValue:ee})})}updateEdgeDataProperty(y,x,b){const z=this.getEdge(y);this.batch(()=>{const ee=z.data[x],re=b;z.data[x]=re,this.changes.push({type:"EdgeDataUpdated",id:y,propertyName:x,oldValue:ee,newValue:re})})}updateEdgeData(...y){const x=y[0],b=this.getEdge(x);if(typeof y[1]=="string"){this.updateEdgeDataProperty(x,y[1],y[2]);return}let z;if(typeof y[1]=="function"){const ee=y[1];z=ee(b.data)}else typeof y[1]=="object"&&(z=y[1]);this.batch(()=>{const ee=b.data,re=z;b.data=z,this.changes.push({type:"EdgeDataUpdated",id:x,oldValue:ee,newValue:re})})}mergeEdgeData(y,x){this.batch(()=>{Object.entries(x).forEach(([b,z])=>{this.updateEdgeDataProperty(y,b,z)})})}checkTreeExistence(y){if(!this.hasTreeStructure(y))throw new Error("Tree structure not found for treeKey: "+y)}hasTreeStructure(y){return this.treeIndices.has(y)}attachTreeStructure(y){this.treeIndices.has(y)||(this.treeIndices.set(y,{parentMap:new Map,childrenMap:new Map}),this.batch(()=>{this.changes.push({type:"TreeStructureAttached",treeKey:y})}))}detachTreeStructure(y){this.checkTreeExistence(y),this.treeIndices.delete(y),this.batch(()=>{this.changes.push({type:"TreeStructureDetached",treeKey:y})})}addTree(y,x){this.batch(()=>{this.attachTreeStructure(x);const b=[],z=Array.isArray(y)?y:[y];for(;z.length;){const ee=z.shift();b.push(ee),ee.children&&z.push(...ee.children)}this.addNodes(b),b.forEach(ee=>{var re;(re=ee.children)==null||re.forEach(ae=>{this.setParent(ae.id,ee.id,x)})})})}getRoots(y){return this.checkTreeExistence(y),this.getAllNodes().filter(x=>!this.getParent(x.id,y))}getChildren(y,x){this.checkNodeExistence(y),this.checkTreeExistence(x);const z=this.treeIndices.get(x).childrenMap.get(y);return Array.from(z||[])}getParent(y,x){return this.checkNodeExistence(y),this.checkTreeExistence(x),this.treeIndices.get(x).parentMap.get(y)||null}getAncestors(y,x){const b=[];let z=this.getNode(y),ee;for(;ee=this.getParent(z.id,x);)b.push(ee),z=ee;return b}setParent(y,x,b){var fe,me;this.checkTreeExistence(b);const z=this.treeIndices.get(b);if(!z)return;const ee=this.getNode(y),re=z.parentMap.get(y);if((re==null?void 0:re.id)===x)return;if(x==null){re&&((fe=z.childrenMap.get(re.id))==null||fe.delete(ee)),z.parentMap.delete(y);return}const ae=this.getNode(x);z.parentMap.set(y,ae),re&&((me=z.childrenMap.get(re.id))==null||me.delete(ee));let se=z.childrenMap.get(ae.id);se||(se=new Set,z.childrenMap.set(ae.id,se)),se.add(ee),this.batch(()=>{this.changes.push({type:"TreeStructureChanged",treeKey:b,nodeId:y,oldParentId:re==null?void 0:re.id,newParentId:ae.id})})}dfsTree(y,x,b){const z=ee=>this.getChildren(ee,b);return dy(this.getNode(y),new Set,x,z)}bfsTree(y,x,b){const z=ee=>this.getChildren(ee,b);return sx([this.getNode(y)],new Set,x,z)}getAllNodes(){return Array.from(this.nodeMap.values())}getAllEdges(){return Array.from(this.edgeMap.values())}bfs(y,x,b="out"){const z={in:this.getPredecessors.bind(this),out:this.getSuccessors.bind(this),both:this.getNeighbors.bind(this)}[b];return sx([this.getNode(y)],new Set,x,z)}dfs(y,x,b="out"){const z={in:this.getPredecessors.bind(this),out:this.getSuccessors.bind(this),both:this.getNeighbors.bind(this)}[b];return dy(this.getNode(y),new Set,x,z)}clone(){const y=this.getAllNodes().map(z=>HS(G0({},z),{data:G0({},z.data)})),x=this.getAllEdges().map(z=>HS(G0({},z),{data:G0({},z.data)})),b=new iu({nodes:y,edges:x});return this.treeIndices.forEach(({parentMap:z,childrenMap:ee},re)=>{const ae=new Map;z.forEach((fe,me)=>{ae.set(me,b.getNode(fe.id))});const se=new Map;ee.forEach((fe,me)=>{se.set(me,new Set(Array.from(fe).map(Ee=>b.getNode(Ee.id))))}),b.treeIndices.set(re,{parentMap:ae,childrenMap:se})}),b}toJSON(){return JSON.stringify({nodes:this.getAllNodes(),edges:this.getAllEdges()})}createView(y){return new C7(G0({graph:this},y))}}class fy{constructor(a,y){this.context=a,this.options=y||{}}}var P7=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(fe){try{se(x.next(fe))}catch(me){ee(me)}}function ae(fe){try{se(x.throw(fe))}catch(me){ee(me)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})},w7=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b{const z=b.data._isCombo?x.combos:x.nodes,{x:ee,y:re,z:ae=0}=b.data;z==null||z.push({id:b.id,style:{x:ee,y:re,z:ae}})}),y.forEach(b=>{const{id:z,source:ee,target:re,data:{points:ae=[],controlPoints:se=ae.slice(1,ae.length-1)}}=b;x.edges.push({id:z,source:ee,target:re,style:Object.assign({},se!=null&&se.length?{controlPoints:se.map(Wu)}:{})})}),x}function I7(E,a){class y extends fy{constructor(b,z){if(super(b,z),this.instance=new E({}),this.id=this.instance.id,"stop"in this.instance&&"tick"in this.instance){const ee=this.instance;this.stop=ee.stop.bind(ee),this.tick=re=>{const ae=ee.tick(re);return hy(ae)}}}execute(b,z){return P7(this,void 0,void 0,function*(){return hy(yield this.instance.execute(this.graphData2LayoutModel(b),this.transformOptions(Uu({},this.options,z))))})}transformOptions(b){if(!("onTick"in b))return b;const z=b.onTick;return b.onTick=ee=>z(hy(ee)),b}graphData2LayoutModel(b){const{nodes:z=[],edges:ee=[],combos:re=[]}=b,ae=z.map(Oe=>{const ke=Lr(Oe),{data:We,style:je,combo:Ke}=Oe,Ze=w7(Oe,["data","style","combo"]),Je={id:ke,data:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},We),{data:We}),Ke?{parentId:Ke}:{}),{style:je}),Ze)};return je!=null&&je.x&&Object.assign(Je.data,{x:je.x}),je!=null&&je.y&&Object.assign(Je.data,{y:je.y}),je!=null&&je.z&&Object.assign(Je.data,{z:je.z}),Je}),se=new Map(ae.map(Oe=>[Oe.id,Oe])),fe=ee.filter(Oe=>{const{source:ke,target:We}=Oe;return se.has(ke)&&se.has(We)}).map(Oe=>{const{source:ke,target:We,data:je,style:Ke}=Oe;return{id:Lr(Oe),source:ke,target:We,data:Object.assign({},je),style:Object.assign({},Ke)}}),me=re.map(Oe=>({id:Lr(Oe),data:Object.assign({_isCombo:!0},Oe.data),style:Object.assign({},Oe.style)})),Ee=new iu({nodes:[...ae,...me],edges:fe});return a.model.model.hasTreeStructure(vl)&&(Ee.attachTreeStructure(vl),ae.forEach(Oe=>{const ke=a.model.model.getParent(Oe.id,vl);ke&&Ee.hasNode(ke.id)&&Ee.setParent(Oe.id,ke.id,vl)})),Ee}}return y}function lx(E,a,...y){if(a in E)return E[a](...y);if("instance"in E){const x=E.instance;if(a in x)return x[a](...y)}return null}function d5(E,a){if(a in E)return E[a];if("instance"in E){const y=E.instance;if(a in y)return y[a]}return null}var T7=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(fe){try{se(x.next(fe))}catch(me){ee(me)}}function ae(fe){try{se(x.throw(fe))}catch(me){ee(me)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})};class O7 extends Rv{get forceLayoutInstance(){return this.context.layout.getLayoutInstance().find(a=>["d3-force","d3-force-3d"].includes(a==null?void 0:a.id))}validate(a){return this.context.layout?this.forceLayoutInstance?super.validate(a):(Tc.warn("DragElementForce only works with d3-force or d3-force-3d layout"),!1):!1}moveElement(a,y){return T7(this,void 0,void 0,function*(){const x=this.forceLayoutInstance;this.context.graph.getNodeData(a).forEach((b,z)=>{const{x:ee=0,y:re=0}=b.style||{};x&&lx(x,"setFixedPosition",a[z],[...es([+ee,+re],this.clampByRotation(y))])})})}onDragStart(a){if(this.enable=this.validate(a),!this.enable)return;this.target=this.getSelectedNodeIDs([a.target.id]),this.hideEdge(),this.context.graph.frontElement(this.target);const y=this.forceLayoutInstance;y&&d5(y,"simulation").alphaTarget(.3).restart(),this.context.graph.getNodeData(this.target).forEach(x=>{const{x:b=0,y:z=0}=x.style||{};y&&lx(y,"setFixedPosition",Lr(x),[+b,+z])})}onDrag(a){if(!this.enable)return;const y=this.getDelta(a);this.moveElement(this.target,y)}onDragEnd(){const a=this.forceLayoutInstance;a&&d5(a,"simulation").alphaTarget(0),!this.options.fixed&&this.context.graph.getNodeData(this.target).forEach(y=>{a&&lx(a,"setFixedPosition",Lr(y),[null,null,null])})}}var f5=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(fe){try{se(x.next(fe))}catch(me){ee(me)}}function ae(fe){try{se(x.throw(fe))}catch(me){ee(me)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})};class gy extends Qc{constructor(a,y){super(a,Object.assign({},gy.defaultOptions,y)),this.isZoomEvent=x=>!!(x.data&&"scale"in x.data),this.relatedEdgeToUpdate=new Set,this.zoom=this.context.graph.getZoom(),this.fixElementSize=x=>f5(this,void 0,void 0,function*(){if(!this.validate(x))return;const{graph:b}=this.context,{state:z,nodeFilter:ee,edgeFilter:re,comboFilter:ae}=this.options,se=(z?b.getElementDataByState("node",z):b.getNodeData()).filter(ee),fe=(z?b.getElementDataByState("edge",z):b.getEdgeData()).filter(re),me=(z?b.getElementDataByState("combo",z):b.getComboData()).filter(ae),Ee=this.isZoomEvent(x)?this.zoom=Math.max(.01,Math.min(x.data.scale,10)):this.zoom,Oe=[...se,...me];Oe.length>0&&Oe.forEach(ke=>this.fixNodeLike(ke,Ee)),this.updateRelatedEdges(),fe.length>0&&fe.forEach(ke=>this.fixEdge(ke,Ee))}),this.cachedStyles=new Map,this.getOriginalFieldValue=(x,b,z)=>{var ee;const re=this.cachedStyles.get(x)||[],ae=((ee=re.find(se=>se.shape===b))===null||ee===void 0?void 0:ee.style)||{};return z in ae||(ae[z]=b.attributes[z],this.cachedStyles.set(x,[...re.filter(se=>se.shape!==b),{shape:b,style:ae}])),ae[z]},this.scaleEntireElement=(x,b,z)=>{b.setLocalScale(1/z);const ee=this.cachedStyles.get(x)||[];ee.push({shape:b}),this.cachedStyles.set(x,ee)},this.scaleSpecificShapes=(x,b,z)=>{const ee=xF(x);(Array.isArray(z)?z:[z]).forEach(ae=>{const{shape:se,fields:fe}=ae,me=typeof se=="function"?se(ee):x.getShape(se);if(me){if(!fe){this.scaleEntireElement(x.id,me,b);return}fe.forEach(Ee=>{const Oe=this.getOriginalFieldValue(x.id,me,Ee);Wi(Oe)&&(me.style[Ee]=Oe/b)})}})},this.skipIfExceedViewport=x=>{const{viewport:b}=this.context;return!(b!=null&&b.isInViewport(x.getRenderBounds(),!1,30))},this.fixNodeLike=(x,b)=>{const z=Lr(x),{element:ee,model:re}=this.context,ae=ee.getElement(z);if(!ae||this.skipIfExceedViewport(ae))return;re.getRelatedEdgesData(z).forEach(me=>this.relatedEdgeToUpdate.add(Lr(me)));const fe=this.options[ae.type];if(!fe){this.scaleEntireElement(z,ae,b);return}this.scaleSpecificShapes(ae,b,fe)},this.fixEdge=(x,b)=>{const z=Lr(x),ee=this.context.element.getElement(z);if(!ee||this.skipIfExceedViewport(ee))return;const re=this.options.edge;if(!re){ee.style.transformOrigin="center",this.scaleEntireElement(z,ee,b);return}this.scaleSpecificShapes(ee,b,re)},this.updateRelatedEdges=()=>{const{element:x}=this.context;this.relatedEdgeToUpdate.size>0&&this.relatedEdgeToUpdate.forEach(b=>{const z=x.getElement(b);z==null||z.update({})}),this.relatedEdgeToUpdate.clear()},this.resetTransform=x=>f5(this,void 0,void 0,function*(){var b;!((b=x.data)===null||b===void 0)&&b.firstRender||(this.options.reset?this.restoreCachedStyles():this.fixElementSize({data:{scale:this.zoom}}))}),this.bindEvents()}restoreCachedStyles(){if(this.cachedStyles.size>0){this.cachedStyles.forEach(b=>{b.forEach(({shape:z,style:ee})=>{if(Af(ee))z.setLocalScale(1);else{if(this.options.state)return;Object.entries(ee).forEach(([re,ae])=>z.style[re]=ae)}})});const{graph:a,element:y}=this.context,x=Object.keys(Object.fromEntries(this.cachedStyles)).filter(b=>b&&a.getElementType(b)==="node");if(x.length>0){const b=new Set;x.forEach(z=>{a.getRelatedEdgesData(z).forEach(ee=>b.add(Lr(ee)))}),b.forEach(z=>{const ee=y==null?void 0:y.getElement(z);ee==null||ee.update({})})}}}bindEvents(){const{graph:a}=this.context;a.on(si.AFTER_DRAW,this.resetTransform),a.on(si.AFTER_TRANSFORM,this.fixElementSize)}unbindEvents(){const{graph:a}=this.context;a.off(si.AFTER_DRAW,this.resetTransform),a.off(si.AFTER_TRANSFORM,this.fixElementSize)}validate(a){if(this.destroyed)return!1;const{enable:y}=this.options;return $i(y)?y(a):!!y}destroy(){this.unbindEvents(),super.destroy()}}gy.defaultOptions={enable:E=>E.data.scale<1,nodeFilter:()=>!0,edgeFilter:()=>!0,comboFilter:()=>!0,edge:[{shape:"key",fields:["lineWidth"]},{shape:"halo",fields:["lineWidth"]},{shape:"label"}],reset:!1};var L7=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(fe){try{se(x.next(fe))}catch(me){ee(me)}}function ae(fe){try{se(x.throw(fe))}catch(me){ee(me)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})};class vy extends Qc{constructor(a,y){super(a,Object.assign({},vy.defaultOptions,y)),this.focus=x=>L7(this,void 0,void 0,function*(){if(!this.validate(x))return;const{graph:b}=this.context;yield b.focusElement(x.target.id,this.options.animation)}),this.bindEvents()}bindEvents(){const{graph:a}=this.context;this.unbindEvents(),Ag.forEach(y=>{a.on(`${y}:${ma.CLICK}`,this.focus)})}validate(a){if(this.destroyed)return!1;const{enable:y}=this.options;return $i(y)?y(a):!!y}unbindEvents(){const{graph:a}=this.context;Ag.forEach(y=>{a.off(`${y}:${ma.CLICK}`,this.focus)})}destroy(){this.unbindEvents(),super.destroy()}}vy.defaultOptions={animation:{easing:"ease-in",duration:500},enable:!0};class my extends Qc{constructor(a,y){super(a,Object.assign({},my.defaultOptions,y)),this.isFrozen=!1,this.toggleFrozen=x=>{this.isFrozen=x.type==="dragstart"},this.hoverElement=x=>{if(!this.validate(x))return;const b=x.type===ma.POINTER_ENTER;this.updateElementsState(x,b);const{onHover:z,onHoverEnd:ee}=this.options;b?z==null||z(x):ee==null||ee(x)},this.updateElementsState=(x,b)=>{if(!this.options.state&&!this.options.inactiveState)return;const{graph:z}=this.context,{state:ee,animation:re,inactiveState:ae}=this.options,se=this.getActiveIds(x),fe={};if(ee&&Object.assign(fe,this.getElementsState(se,ee,b)),ae){const me=J2(z.getData(),!0).filter(Ee=>!se.includes(Ee));Object.assign(fe,this.getElementsState(me,ae,b))}z.setElementState(fe,re)},this.getElementsState=(x,b,z)=>{const{graph:ee}=this.context,re={};return x.forEach(ae=>{const se=ee.getElementState(ae);z?re[ae]=se.includes(b)?se:[...se,b]:re[ae]=se.filter(fe=>fe!==b)}),re},this.bindEvents()}bindEvents(){const{graph:a}=this.context;this.unbindEvents(),Ag.forEach(x=>{a.on(`${x}:${ma.POINTER_ENTER}`,this.hoverElement),a.on(`${x}:${ma.POINTER_LEAVE}`,this.hoverElement)});const y=this.context.canvas.document;y.addEventListener(`${ma.DRAG_START}`,this.toggleFrozen),y.addEventListener(`${ma.DRAG_END}`,this.toggleFrozen)}getActiveIds(a){const{graph:y}=this.context,{degree:x,direction:b}=this.options,z=a.target.id;return x?gw(y,a.targetType,z,typeof x=="function"?x(a):x,b):[z]}validate(a){if(this.destroyed||this.isFrozen||Bv(a.target)||this.context.graph.isCollapsingExpanding)return!1;const{enable:y}=this.options;return $i(y)?y(a):!!y}unbindEvents(){const{graph:a}=this.context;Ag.forEach(x=>{a.off(`${x}:${ma.POINTER_ENTER}`,this.hoverElement),a.off(`${x}:${ma.POINTER_LEAVE}`,this.hoverElement)});const y=this.context.canvas.document;y.removeEventListener(`${ma.DRAG_START}`,this.toggleFrozen),y.removeEventListener(`${ma.DRAG_END}`,this.toggleFrozen)}destroy(){this.unbindEvents(),super.destroy()}}my.defaultOptions={animation:!1,enable:!0,degree:0,direction:"both",state:"active",inactiveState:void 0};class B7 extends Cv{onPointerDown(a){if(!super.validate(a)||!super.isKeydown()||this.points)return;const{canvas:y,graph:x}=this.context;this.pathShape=new Hc({id:"g6-lasso-select",style:this.options.style}),y.appendChild(this.pathShape),this.points=[Lp(a,x)]}onPointerMove(a){var y;if(!this.points)return;const{immediately:x,mode:b}=this.options;this.points.push(Lp(a,this.context.graph)),(y=this.pathShape)===null||y===void 0||y.setAttribute("d",mF(this.points)),x&&b==="default"&&this.points.length>2&&super.updateElementsStates(this.points)}onPointerUp(){if(this.points){if(this.points.length<2){this.clearLasso();return}super.updateElementsStates(this.points),this.clearLasso()}}clearLasso(){var a;(a=this.pathShape)===null||a===void 0||a.remove(),this.pathShape=void 0,this.points=void 0}}class py extends Qc{constructor(a,y){super(a,Object.assign({},py.defaultOptions,y)),this.hiddenShapes=[],this.isVisible=!0,this.setElementsVisibility=(x,b,z)=>{x.filter(Boolean).forEach(ee=>{b==="hidden"&&!ee.isVisible()?this.hiddenShapes.push(ee):b==="visible"&&this.hiddenShapes.includes(ee)?this.hiddenShapes.splice(this.hiddenShapes.indexOf(ee),1):yg(ee,b,z)})},this.filterShapes=(x,b)=>{if($i(b))return ee=>!b(x,ee);const z=b==null?void 0:b[x];return ee=>ee.className?!(z!=null&&z.includes(ee.className)):!0},this.hideShapes=x=>{if(!this.validate(x)||!this.isVisible)return;const{element:b}=this.context,{shapes:z={}}=this.options;this.setElementsVisibility(b.getNodes(),"hidden",this.filterShapes("node",z)),this.setElementsVisibility(b.getEdges(),"hidden",this.filterShapes("edge",z)),this.setElementsVisibility(b.getCombos(),"hidden",this.filterShapes("combo",z)),this.isVisible=!1},this.showShapes=Nv(x=>{if(!this.validate(x)||this.isVisible)return;const{element:b}=this.context;this.setElementsVisibility(b.getNodes(),"visible"),this.setElementsVisibility(b.getEdges(),"visible"),this.setElementsVisibility(b.getCombos(),"visible"),this.isVisible=!0},this.options.debounce),this.bindEvents()}bindEvents(){const{graph:a}=this.context;a.on(si.BEFORE_TRANSFORM,this.hideShapes),a.on(si.AFTER_TRANSFORM,this.showShapes)}unbindEvents(){const{graph:a}=this.context;a.off(si.BEFORE_TRANSFORM,this.hideShapes),a.off(si.AFTER_TRANSFORM,this.showShapes)}validate(a){if(this.destroyed)return!1;const{enable:y}=this.options;return $i(y)?y(a):!!y}update(a){this.unbindEvents(),super.update(a),this.bindEvents()}destroy(){this.unbindEvents(),super.destroy()}}py.defaultOptions={enable:!0,debounce:200,shapes:E=>E==="node"};var h5=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(fe){try{se(x.next(fe))}catch(me){ee(me)}}function ae(fe){try{se(x.throw(fe))}catch(me){ee(me)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})};class yy extends Qc{constructor(a,y){super(a,Object.assign({},yy.defaultOptions,y)),this.onWheel=x=>h5(this,void 0,void 0,function*(){this.options.preventDefault&&x.preventDefault();const b=x.deltaX,z=x.deltaY;yield this.scroll([-b,-z],x)}),this.shortcut=new p0(a.graph),this.bindEvents()}update(a){super.update(a),this.bindEvents()}bindEvents(){var a,y;const{trigger:x}=this.options;if(this.shortcut.unbindAll(),$l(x)){(a=this.graphDom)===null||a===void 0||a.removeEventListener(ma.WHEEL,this.onWheel);const{up:b=[],down:z=[],left:ee=[],right:re=[]}=x;this.shortcut.bind(b,ae=>this.scroll([0,-10],ae)),this.shortcut.bind(z,ae=>this.scroll([0,10],ae)),this.shortcut.bind(ee,ae=>this.scroll([-10,0],ae)),this.shortcut.bind(re,ae=>this.scroll([10,0],ae))}else(y=this.graphDom)===null||y===void 0||y.addEventListener(ma.WHEEL,this.onWheel,{passive:!1})}get graphDom(){return this.context.graph.getCanvas().getContextService().getDomElement()}formatDisplacement(a){const{sensitivity:y}=this.options;return a=Rd(a,y),a=this.clampByDirection(a),a=this.clampByRange(a),a}clampByDirection([a,y]){const{direction:x}=this.options;return x==="x"?y=0:x==="y"&&(a=0),[a,y]}clampByRange([a,y]){const{viewport:x,canvas:b}=this.context,[z,ee]=b.getSize(),[re,ae,se,fe]=Zc(this.options.range),me=[ee*re,z*ae,ee*se,z*fe],Ee=mh(yA(x.getCanvasCenter()),me),Oe=fl(x.getViewportCenter(),[a,y,0]);if(!Bd(Oe,Ee)){const{min:[ke,We],max:[je,Ke]}=Ee;(Oe[0]0||Oe[0]>je&&a<0)&&(a=0),(Oe[1]0||Oe[1]>Ke&&y<0)&&(y=0)}return[a,y]}scroll(a,y){return h5(this,void 0,void 0,function*(){if(!this.validate(y))return;const{onFinish:x}=this.options,b=this.context.graph,z=this.formatDisplacement(a);yield b.translateBy(z,!1),x==null||x()})}validate(a){if(this.destroyed)return!1;const{enable:y}=this.options;return $i(y)?y(a):!!y}destroy(){var a;this.shortcut.destroy(),(a=this.graphDom)===null||a===void 0||a.removeEventListener(ma.WHEEL,this.onWheel),super.destroy()}}yy.defaultOptions={enable:!0,sensitivity:1,preventDefault:!0,range:1/0};var g5=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(fe){try{se(x.next(fe))}catch(me){ee(me)}}function ae(fe){try{se(x.throw(fe))}catch(me){ee(me)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})};class Ey extends Qc{constructor(a,y){super(a,Object.assign({},Ey.defaultOptions,y)),this.zoom=(x,b,z)=>g5(this,void 0,void 0,function*(){if(!this.validate(b))return;const{graph:ee}=this.context;let re=this.options.origin;!re&&"viewport"in b&&(re=Wu(b.viewport));const{sensitivity:ae,onFinish:se}=this.options,fe=1+Nl(x,-50,50)*ae/100,me=ee.getZoom();yield ee.zoomTo(me*fe,z,re),se==null||se()}),this.onReset=()=>g5(this,void 0,void 0,function*(){yield this.context.graph.zoomTo(1,this.options.animation)}),this.preventDefault=x=>{this.options.preventDefault&&x.preventDefault()},this.shortcut=new p0(a.graph),this.bindEvents()}update(a){super.update(a),this.bindEvents()}bindEvents(){const{trigger:a}=this.options;if(this.shortcut.unbindAll(),Array.isArray(a))if(a.includes(ma.PINCH))this.shortcut.bind([ma.PINCH],y=>{this.zoom(y.scale,y,!1)});else{const y=this.context.canvas.getContainer();y==null||y.addEventListener(ma.WHEEL,this.preventDefault),this.shortcut.bind([...a,ma.WHEEL],x=>{const{deltaX:b,deltaY:z}=x;this.zoom(-(z!=null?z:b),x,!1)})}if(typeof a=="object"){const{zoomIn:y=[],zoomOut:x=[],reset:b=[]}=a;this.shortcut.bind(y,z=>this.zoom(10,z,this.options.animation)),this.shortcut.bind(x,z=>this.zoom(-10,z,this.options.animation)),this.shortcut.bind(b,this.onReset)}}validate(a){if(this.destroyed)return!1;const{enable:y}=this.options;return $i(y)?y(a):!!y}destroy(){var a;this.shortcut.destroy(),(a=this.context.canvas.getContainer())===null||a===void 0||a.removeEventListener(ma.WHEEL,this.preventDefault),super.destroy()}}Ey.defaultOptions={animation:{duration:200},enable:!0,sensitivity:1,trigger:[],preventDefault:!0};var Ay=Ie(13722);const N7=(E,a)=>{if(E!=="next"&&E!=="prev")return a},v5=E=>{E.prev.next=E.next,E.next.prev=E.prev,delete E.next,delete E.prev};class R7{constructor(){const a={};a.prev=a,a.next=a.prev,this.shortcut=a}dequeue(){const a=this.shortcut,y=a.prev;if(y&&y!==a)return v5(y),y}enqueue(a){const y=this.shortcut;a.prev&&a.next&&v5(a),a.next=y.next,y.next.prev=a,y.next=a,a.prev=y}toString(){const a=[],y=this.shortcut;let x=y.prev;for(;x!==y;)a.push(JSON.stringify(x,N7)),x=x==null?void 0:x.prev;return`[${a.join(", ")}]`}}class F7 extends R7{}const k7=()=>1,_7=(E,a)=>{var y;if(E.getAllNodes().length<=1)return[];const x=U7(E,a||k7);return(y=z7(x.graph,x.buckets,x.zeroIdx).map(z=>E.getRelatedEdges(z.v,"out").filter(({target:ee})=>ee===z.w)))===null||y===void 0?void 0:y.flat()},z7=(E,a,y)=>{let x=[];const b=a[a.length-1],z=a[0];let ee;for(;E.getAllNodes().length;){for(;ee=z.dequeue();)ux(E,a,y,ee);for(;ee=b.dequeue();)ux(E,a,y,ee);if(E.getAllNodes().length){for(let re=a.length-2;re>0;--re)if(ee=a[re].dequeue(),ee){x=x.concat(ux(E,a,y,ee,!0));break}}}return x},ux=(E,a,y,x,b)=>{var z,ee;const re=[];return E.hasNode(x.v)&&((z=E.getRelatedEdges(x.v,"in"))===null||z===void 0||z.forEach(ae=>{const se=ae.data.weight,fe=E.getNode(ae.source);b&&re.push({v:ae.source,w:ae.target,in:0,out:0}),fe.data.out===void 0&&(fe.data.out=0),fe.data.out-=se,cx(a,y,Object.assign({v:fe.id},fe.data))}),(ee=E.getRelatedEdges(x.v,"out"))===null||ee===void 0||ee.forEach(ae=>{const se=ae.data.weight,fe=ae.target,me=E.getNode(fe);me.data.in===void 0&&(me.data.in=0),me.data.in-=se,cx(a,y,Object.assign({v:me.id},me.data))}),E.removeNode(x.v)),b?re:void 0},U7=(E,a)=>{const y=new iu;let x=0,b=0;E.getAllNodes().forEach(ae=>{y.addNode({id:ae.id,data:{v:ae.id,in:0,out:0}})}),E.getAllEdges().forEach(ae=>{const se=y.getRelatedEdges(ae.source,"out").find(me=>me.target===ae.target),fe=(a==null?void 0:a(ae))||1;se?y.updateEdgeData(se==null?void 0:se.id,Object.assign(Object.assign({},se.data),{weight:se.data.weight+fe})):y.addEdge({id:ae.id,source:ae.source,target:ae.target,data:{weight:fe}}),b=Math.max(b,y.getNode(ae.source).data.out+=fe),x=Math.max(x,y.getNode(ae.target).data.in+=fe)});const z=[],ee=b+x+3;for(let ae=0;ae{cx(z,re,Object.assign({v:ae.id},y.getNode(ae.id).data))}),{buckets:z,zeroIdx:re,graph:y}},cx=(E,a,y)=>{y.out?y.in?E[y.out-y.in+a].enqueue(y):E[E.length-1].enqueue(y):E[0].enqueue(y)},W7=(E,a)=>{const x=a==="greedy"?_7(E,(b=>z=>z.data.weight||1)(E)):j7(E);x==null||x.forEach(b=>{const z=b.data;E.removeEdge(b.id),z.forwardName=b.data.name,z.reversed=!0,E.addEdge({id:b.id,source:b.target,target:b.source,data:Object.assign({},z)})})},j7=E=>{const a=[],y={},x={},b=z=>{x[z]||(x[z]=!0,y[z]=!0,E.getRelatedEdges(z,"out").forEach(ee=>{y[ee.target]?a.push(ee):b(ee.target)}),delete y[z])};return E.getAllNodes().forEach(z=>b(z.id)),a},G7=E=>{E.getAllEdges().forEach(a=>{const y=a.data;if(y.reversed){E.removeEdge(a.id);const x=y.forwardName;delete y.reversed,delete y.forwardName,E.addEdge({id:a.id,source:a.target,target:a.source,data:Object.assign(Object.assign({},y),{forwardName:x})})}})},H7=(E,a)=>Number(E)-Number(a),x0=(E,a,y,x)=>{let b;do b=`${x}${Math.random()}`;while(E.hasNode(b));return y.dummy=a,E.addNode({id:b,data:y}),b},V7=E=>{const a=new iu;return E.getAllNodes().forEach(y=>{a.addNode(Object.assign({},y))}),E.getAllEdges().forEach(y=>{const x=a.getRelatedEdges(y.source,"out").find(b=>b.target===y.target);x?a.updateEdgeData(x==null?void 0:x.id,Object.assign(Object.assign({},x.data),{weight:x.data.weight+y.data.weight||0,minlen:Math.max(x.data.minlen,y.data.minlen||1)})):a.addEdge({id:y.id,source:y.source,target:y.target,data:{weight:y.data.weight||0,minlen:y.data.minlen||1}})}),a},m5=E=>{const a=new iu;return E.getAllNodes().forEach(y=>{E.getChildren(y.id).length||a.addNode(Object.assign({},y))}),E.getAllEdges().forEach(y=>{a.addEdge(y)}),a},p5=(E,a)=>E==null?void 0:E.reduce((y,x,b)=>(y[x]=a[b],y),{}),A$=E=>{const a={};return E.getAllNodes().forEach(y=>{const x={};E.getRelatedEdges(y.id,"out").forEach(b=>{x[b.target]=(x[b.target]||0)+(b.data.weight||0)}),a[y.id]=x}),a},x$=E=>{const a=E.getAllNodes(),y=a.map(x=>{const b={};return E.getRelatedEdges(x.id,"in").forEach(z=>{b[z.source]=(b[z.source]||0)+z.data.weight}),b});return p5(a.map(x=>x.id),y)},y5=(E,a)=>{const y=Number(E.x),x=Number(E.y),b=Number(a.x)-y,z=Number(a.y)-x;let ee=Number(E.width)/2,re=Number(E.height)/2;if(!b&&!z)return{x:0,y:0};let ae,se;return Math.abs(z)*ee>Math.abs(b)*re?(z<0&&(re=-re),ae=re*b/z,se=re):(b<0&&(ee=-ee),ae=ee,se=ee*z/b),{x:y+ae,y:x+se}},Fv=E=>{const a=[],y=A5(E)+1;for(let x=0;x{const b=x.data.rank;b!==void 0&&a[b]&&a[b].push(x.id)});for(let x=0;xH7(E.getNode(b).data.order,E.getNode(z).data.order));return a},K7=E=>{const a=E.getAllNodes().filter(x=>x.data.rank!==void 0).map(x=>x.data.rank),y=Math.min(...a);E.getAllNodes().forEach(x=>{x.data.hasOwnProperty("rank")&&y!==1/0&&(x.data.rank-=y)})},Z7=(E,a=0)=>{const y=E.getAllNodes(),x=y.filter(re=>re.data.rank!==void 0).map(re=>re.data.rank),b=Math.min(...x),z=[];y.forEach(re=>{const ae=(re.data.rank||0)-b;z[ae]||(z[ae]=[]),z[ae].push(re.id)});let ee=0;for(let re=0;re{const fe=E.getNode(se);fe&&(fe.data.rank=fe.data.rank||0,fe.data.rank+=ee)}))}},E5=(E,a,y,x)=>{const b={width:0,height:0};return Wi(y)&&Wi(x)&&(b.rank=y,b.order=x),x0(E,"border",b,a)},A5=E=>{let a;return E.getAllNodes().forEach(y=>{const x=y.data.rank;x!==void 0&&(a===void 0||x>a)&&(a=x)}),a||(a=0),a},Q7=(E,a)=>{const y={lhs:[],rhs:[]};return E==null||E.forEach(x=>{a(x)?y.lhs.push(x):y.rhs.push(x)}),y},dx=(E,a)=>E.reduce((y,x)=>{const b=a(y),z=a(x);return b>z?x:y}),x5=(E,a,y,x,b,z)=>{x.includes(a.id)||(x.push(a.id),y||z.push(a.id),b(a.id).forEach(ee=>x5(E,ee,y,x,b,z)),y&&z.push(a.id))},S5=(E,a,y,x)=>{const b=Array.isArray(a)?a:[a],z=ae=>x?E.getSuccessors(ae):E.getNeighbors(ae),ee=[],re=[];return b.forEach(ae=>{if(E.hasNode(ae.id))x5(E,ae,y==="post",re,z,ee);else throw new Error(`Graph does not have node: ${ae}`)}),ee},Y7=E=>{const a=y=>{const x=E.getChildren(y),b=E.getNode(y);if(x!=null&&x.length&&x.forEach(z=>a(z.id)),b.data.hasOwnProperty("minRank")){b.data.borderLeft=[],b.data.borderRight=[];for(let z=b.data.minRank,ee=b.data.maxRank+1;za(y.id))},b5=(E,a,y,x,b,z)=>{const ee={rank:z,borderType:a,width:0,height:0},re=b.data[a][z-1],ae=x0(E,"border",ee,y);b.data[a][z]=ae,E.setParent(ae,x),re&&E.addEdge({id:`e${Math.random()}`,source:re,target:ae,data:{weight:1}})},X7=(E,a)=>{const y=a.toLowerCase();(y==="lr"||y==="rl")&&C5(E)},J7=(E,a)=>{const y=a.toLowerCase();(y==="bt"||y==="rl")&&q7(E),(y==="lr"||y==="rl")&&($7(E),C5(E))},C5=E=>{E.getAllNodes().forEach(a=>{P5(a)}),E.getAllEdges().forEach(a=>{P5(a)})},P5=E=>{const a=E.data.width;E.data.width=E.data.height,E.data.height=a},q7=E=>{E.getAllNodes().forEach(a=>{fx(a.data)}),E.getAllEdges().forEach(a=>{var y;(y=a.data.points)===null||y===void 0||y.forEach(x=>fx(x)),a.data.hasOwnProperty("y")&&fx(a.data)})},fx=E=>{E!=null&&E.y&&(E.y=-E.y)},$7=E=>{E.getAllNodes().forEach(a=>{hx(a.data)}),E.getAllEdges().forEach(a=>{var y;(y=a.data.points)===null||y===void 0||y.forEach(x=>hx(x)),a.data.hasOwnProperty("x")&&hx(a.data)})},hx=E=>{const a=E.x;E.x=E.y,E.y=a},e9=E=>{const a=x0(E,"root",{},"_root"),y=t9(E);let x=Math.max(...Object.values(y));Math.abs(x)===1/0&&(x=1);const b=x-1,z=2*b+1;E.getAllEdges().forEach(re=>{re.data.minlen*=z});const ee=n9(E)+1;return E.getRoots().forEach(re=>{w5(E,a,z,ee,b,y,re.id)}),{nestingRoot:a,nodeRankFactor:z}},w5=(E,a,y,x,b,z,ee)=>{const re=E.getChildren(ee);if(!(re!=null&&re.length)){ee!==a&&E.addEdge({id:`e${Math.random()}`,source:a,target:ee,data:{weight:0,minlen:y}});return}const ae=E5(E,"_bt"),se=E5(E,"_bb"),fe=E.getNode(ee);E.setParent(ae,ee),fe.data.borderTop=ae,E.setParent(se,ee),fe.data.borderBottom=se,re==null||re.forEach(me=>{w5(E,a,y,x,b,z,me.id);const Ee=me.data.borderTop?me.data.borderTop:me.id,Oe=me.data.borderBottom?me.data.borderBottom:me.id,ke=me.data.borderTop?x:2*x,We=Ee!==Oe?1:b-z[ee]+1;E.addEdge({id:`e${Math.random()}`,source:ae,target:Ee,data:{minlen:We,weight:ke,nestingEdge:!0}}),E.addEdge({id:`e${Math.random()}`,source:Oe,target:se,data:{minlen:We,weight:ke,nestingEdge:!0}})}),E.getParent(ee)||E.addEdge({id:`e${Math.random()}`,source:a,target:ae,data:{weight:0,minlen:b+z[ee]}})},t9=E=>{const a={},y=(x,b)=>{const z=E.getChildren(x);z==null||z.forEach(ee=>y(ee.id,b+1)),a[x]=b};return E.getRoots().forEach(x=>y(x.id,1)),a},n9=E=>{let a=0;return E.getAllEdges().forEach(y=>{a+=y.data.weight}),a},r9=(E,a)=>{a&&E.removeNode(a),E.getAllEdges().forEach(y=>{y.data.nestingEdge&&E.removeEdge(y.id)})},a9="edge",M5="edge-label",i9=(E,a)=>{E.getAllEdges().forEach(y=>o9(E,y,a))},o9=(E,a,y)=>{let x=a.source,b=E.getNode(x).data.rank;const z=a.target,ee=E.getNode(z).data.rank,re=a.data.labelRank;if(ee===b+1)return;E.removeEdge(a.id);let ae,se,fe;for(fe=0,++b;b{a.forEach(y=>{let x=E.getNode(y);const{data:b}=x,z=b.originalEdge;let ee;z&&E.addEdge(z);let re=y;for(;x.data.dummy;)ee=E.getSuccessors(re)[0],E.removeNode(re),z.data.points.push({x:x.data.x,y:x.data.y}),x.data.dummy===M5&&(z.data.x=x.data.x,z.data.y=x.data.y,z.data.width=x.data.width,z.data.height=x.data.height),re=ee.id,x=E.getNode(re)})},l9=(E,a,y)=>{const x={};let b;y==null||y.forEach(z=>{let ee=E.getParent(z),re,ae;for(;ee;){if(re=E.getParent(ee.id),re?(ae=x[re.id],x[re.id]=ee.id):(ae=b,b=ee.id),ae&&ae!==ee.id){a.hasNode(ae)||a.addNode({id:ae,data:{}}),a.hasNode(ee.id)||a.addNode({id:ee.id,data:{}}),a.hasEdge(`e${ae}-${ee.id}`)||a.addEdge({id:`e${ae}-${ee.id}`,source:ae,target:ee.id,data:{}});return}ee=re}})},u9=(E,a,y)=>{const x=c9(E),b=new iu({tree:[{id:x,children:[],data:{}}]});return E.getAllNodes().forEach(z=>{const ee=E.getParent(z.id);(z.data.rank===a||z.data.minRank<=a&&a<=z.data.maxRank)&&(b.hasNode(z.id)||b.addNode(Object.assign({},z)),ee!=null&&ee.id&&!b.hasNode(ee==null?void 0:ee.id)&&b.addNode(Object.assign({},ee)),b.setParent(z.id,(ee==null?void 0:ee.id)||x),E.getRelatedEdges(z.id,y).forEach(re=>{const ae=re.source===z.id?re.target:re.source;b.hasNode(ae)||b.addNode(Object.assign({},E.getNode(ae)));const se=b.getRelatedEdges(ae,"out").find(({target:me})=>me===z.id),fe=se!==void 0?se.data.weight:0;se?b.updateEdgeData(se.id,Object.assign(Object.assign({},se.data),{weight:re.data.weight+fe})):b.addEdge({id:re.id,source:ae,target:z.id,data:{weight:re.data.weight+fe}})}),z.data.hasOwnProperty("minRank")&&b.updateNodeData(z.id,Object.assign(Object.assign({},z.data),{borderLeft:z.data.borderLeft[a],borderRight:z.data.borderRight[a]})))}),b},c9=E=>{let a;for(;E.hasNode(a=`_root${Math.random()}`););return a},d9=(E,a,y)=>{const x=p5(y,y.map((fe,me)=>me)),z=a.map(fe=>{const me=E.getRelatedEdges(fe,"out").map(Ee=>({pos:x[Ee.target]||0,weight:Ee.data.weight}));return me==null?void 0:me.sort((Ee,Oe)=>Ee.pos-Oe.pos)}).flat().filter(fe=>fe!==void 0);let ee=1;for(;ee{if(fe){let me=fe.pos+ee;ae[me]+=fe.weight;let Ee=0;for(;me>0;)me%2&&(Ee+=ae[me+1]),me=me-1>>1,ae[me]+=fe.weight;se+=fe.weight*Ee}}),se},D5=(E,a)=>{let y=0;for(let x=1;x<(a==null?void 0:a.length);x+=1)y+=d9(E,a[x-1],a[x]);return y},I5=E=>{const a={},y=E.getAllNodes(),x=y.map(se=>{var fe;return(fe=se.data.rank)!==null&&fe!==void 0?fe:-1/0}),b=Math.max(...x),z=[];for(let se=0;seE.getNode(se.id).data.rank-E.getNode(fe.id).data.rank),ae=ee.filter(se=>E.getNode(se.id).data.fixorder!==void 0).sort((se,fe)=>E.getNode(se.id).data.fixorder-E.getNode(fe.id).data.fixorder);return ae==null||ae.forEach(se=>{isNaN(E.getNode(se.id).data.rank)||z[E.getNode(se.id).data.rank].push(se.id),a[se.id]=!0}),ee==null||ee.forEach(se=>E.dfsTree(se.id,fe=>{if(a.hasOwnProperty(fe.id))return!0;a[fe.id]=!0,isNaN(fe.data.rank)||z[fe.data.rank].push(fe.id)})),z},f9=(E,a)=>a.map(y=>{const x=E.getRelatedEdges(y,"in");if(!(x!=null&&x.length))return{v:y};const b={sum:0,weight:0};return x==null||x.forEach(z=>{const ee=E.getNode(z.source);b.sum+=z.data.weight*ee.data.order,b.weight+=z.data.weight}),{v:y,barycenter:b.sum/b.weight,weight:b.weight}}),h9=(E,a)=>{var y,x,b;const z={};E==null||E.forEach((re,ae)=>{z[re.v]={i:ae,indegree:0,in:[],out:[],vs:[re.v]};const se=z[re.v];re.barycenter!==void 0&&(se.barycenter=re.barycenter,se.weight=re.weight)}),(y=a.getAllEdges())===null||y===void 0||y.forEach(re=>{const ae=z[re.source],se=z[re.target];ae!==void 0&&se!==void 0&&(se.indegree++,ae.out.push(z[re.target]))});const ee=(b=(x=Object.values(z)).filter)===null||b===void 0?void 0:b.call(x,re=>!re.indegree);return g9(ee)},g9=E=>{var a,y;const x=[],b=ae=>se=>{se.merged||(se.barycenter===void 0||ae.barycenter===void 0||se.barycenter>=ae.barycenter)&&v9(ae,se)},z=ae=>se=>{se.in.push(ae),--se.indegree===0&&E.push(se)};for(;E!=null&&E.length;){const ae=E.pop();x.push(ae),(a=ae.in.reverse())===null||a===void 0||a.forEach(se=>b(ae)(se)),(y=ae.out)===null||y===void 0||y.forEach(se=>z(ae)(se))}const ee=x.filter(ae=>!ae.merged),re=["vs","i","barycenter","weight"];return ee.map(ae=>{const se={};return re==null||re.forEach(fe=>{ae[fe]!==void 0&&(se[fe]=ae[fe])}),se})},v9=(E,a)=>{var y;let x=0,b=0;E.weight&&(x+=E.barycenter*E.weight,b+=E.weight),a.weight&&(x+=a.barycenter*a.weight,b+=a.weight),E.vs=(y=a.vs)===null||y===void 0?void 0:y.concat(E.vs),E.barycenter=x/b,E.weight=b,E.i=Math.min(a.i,E.i),a.merged=!0};var m9=h9;const p9=(E,a,y,x)=>{const b=Q7(E,Ee=>{const Oe=Ee.hasOwnProperty("fixorder")&&!isNaN(Ee.fixorder);return x?!Oe&&Ee.hasOwnProperty("barycenter"):Oe||Ee.hasOwnProperty("barycenter")}),z=b.lhs,ee=b.rhs.sort((Ee,Oe)=>-Ee.i- -Oe.i),re=[];let ae=0,se=0,fe=0;z==null||z.sort(y9(!!a,!!y)),fe=T5(re,ee,fe),z==null||z.forEach(Ee=>{var Oe;fe+=(Oe=Ee.vs)===null||Oe===void 0?void 0:Oe.length,re.push(Ee.vs),ae+=Ee.barycenter*Ee.weight,se+=Ee.weight,fe=T5(re,ee,fe)});const me={vs:re.flat()};return se&&(me.barycenter=ae/se,me.weight=se),me},T5=(E,a,y)=>{let x=y,b;for(;a.length&&(b=a[a.length-1]).i<=x;)a.pop(),E==null||E.push(b.vs),x++;return x},y9=(E,a)=>(y,x)=>{if(y.fixorder!==void 0&&x.fixorder!==void 0)return y.fixorder-x.fixorder;if(y.barycenterx.barycenter)return 1;if(a&&y.order!==void 0&&x.order!==void 0){if(y.orderx.order)return 1}return E?x.i-y.i:y.i-x.i},O5=(E,a,y,x,b,z)=>{var ee,re,ae,se;let fe=E.getChildren(a).map(Ze=>Ze.id);const me=E.getNode(a),Ee=me?me.data.borderLeft:void 0,Oe=me?me.data.borderRight:void 0,ke={};Ee&&(fe=fe==null?void 0:fe.filter(Ze=>Ze!==Ee&&Ze!==Oe));const We=f9(E,fe||[]);We==null||We.forEach(Ze=>{var Je;if(!((Je=E.getChildren(Ze.v))===null||Je===void 0)&&Je.length){const tt=O5(E,Ze.v,y,x,z);ke[Ze.v]=tt,tt.hasOwnProperty("barycenter")&&A9(Ze,tt)}});const je=m9(We,y);E9(je,ke),(ee=je.filter(Ze=>Ze.vs.length>0))===null||ee===void 0||ee.forEach(Ze=>{const Je=E.getNode(Ze.vs[0]);Je&&(Ze.fixorder=Je.data.fixorder,Ze.order=Je.data.order)});const Ke=p9(je,x,b,z);if(Ee&&(Ke.vs=[Ee,Ke.vs,Oe].flat(),!((re=E.getPredecessors(Ee))===null||re===void 0)&&re.length)){const Ze=E.getNode(((ae=E.getPredecessors(Ee))===null||ae===void 0?void 0:ae[0].id)||""),Je=E.getNode(((se=E.getPredecessors(Oe))===null||se===void 0?void 0:se[0].id)||"");Ke.hasOwnProperty("barycenter")||(Ke.barycenter=0,Ke.weight=0),Ke.barycenter=(Ke.barycenter*Ke.weight+Ze.data.order+Je.data.order)/(Ke.weight+2),Ke.weight+=2}return Ke},E9=(E,a)=>{E==null||E.forEach(y=>{var x;const b=(x=y.vs)===null||x===void 0?void 0:x.map(z=>a[z]?a[z].vs:z);y.vs=b.flat()})},A9=(E,a)=>{E.barycenter!==void 0?(E.barycenter=(E.barycenter*E.weight+a.barycenter*a.weight)/(E.weight+a.weight),E.weight+=a.weight):(E.barycenter=a.barycenter,E.weight=a.weight)},x9=(E,a)=>{const y=A5(E),x=[],b=[];for(let fe=1;fe-1;fe--)b.push(fe);const z=L5(E,x,"in"),ee=L5(E,b,"out");let re=I5(E);gx(E,re);let ae=Number.POSITIVE_INFINITY,se;for(let fe=0,me=0;me<4;++fe,++me){B5(fe%2?z:ee,fe%4>=2,!1,a),re=Fv(E);const Ee=D5(E,re);Ee=2,!0,a),re=Fv(E);const Ee=D5(E,re);Eea.map(x=>u9(E,x,y)),B5=(E,a,y,x)=>{const b=new iu;E==null||E.forEach(z=>{var ee;const re=z.getRoots()[0].id,ae=O5(z,re,b,a,y,x);for(let se=0;se<((ee=ae.vs)===null||ee===void 0?void 0:ee.length);se++){const fe=z.getNode(ae.vs[se]);fe&&(fe.data.order=se)}l9(z,b,ae.vs)})},gx=(E,a)=>{a==null||a.forEach(y=>{y==null||y.forEach((x,b)=>{E.getNode(x).data.order=b})})},S9=(E,a)=>{const x=E.getAllNodes().filter(ee=>{var re;return!(!((re=E.getChildren(ee.id))===null||re===void 0)&&re.length)}).map(ee=>ee.data.rank),b=Math.max(...x),z=[];for(let ee=0;ee{const re=E.getNode(ee);!re||re.data.dummy||isNaN(re.data.rank)||(re.data.fixorder=z[re.data.rank].length,z[re.data.rank].push(ee))})},b9=E=>{const a={};let y=0;const x=b=>{const z=y;E.getChildren(b).forEach(ee=>x(ee.id)),a[b]={low:z,lim:y++}};return E.getRoots().forEach(b=>x(b.id)),a},C9=(E,a,y,x)=>{var b,z;const ee=[],re=[],ae=Math.min(a[y].low,a[x].low),se=Math.max(a[y].lim,a[x].lim);let fe,me;fe=y;do fe=(b=E.getParent(fe))===null||b===void 0?void 0:b.id,ee.push(fe);while(fe&&(a[fe].low>ae||se>a[fe].lim));for(me=fe,fe=x;fe&&fe!==me;)re.push(fe),fe=(z=E.getParent(fe))===null||z===void 0?void 0:z.id;return{lca:me,path:ee.concat(re.reverse())}},P9=(E,a)=>{const y=b9(E);a.forEach(x=>{var b,z;let ee=x,re=E.getNode(ee);const ae=re.data.originalEdge;if(!ae)return;const se=C9(E,y,ae.source,ae.target),fe=se.path,me=se.lca;let Ee=0,Oe=fe[Ee],ke=!0;for(;ee!==ae.target;){if(re=E.getNode(ee),ke){for(;Oe!==me&&((b=E.getNode(Oe))===null||b===void 0?void 0:b.data.maxRank){const y={},x=(b,z)=>{let ee=0,re=0;const ae=b.length,se=z==null?void 0:z[(z==null?void 0:z.length)-1];return z==null||z.forEach((fe,me)=>{var Ee;const Oe=w9(E,fe),ke=Oe?E.getNode(Oe.id).data.order:ae;(Oe||fe===se)&&((Ee=z.slice(re,me+1))===null||Ee===void 0||Ee.forEach(We=>{var je;(je=E.getPredecessors(We))===null||je===void 0||je.forEach(Ke=>{var Ze;const Je=E.getNode(Ke.id),tt=Je.data.order;(tt{const y={};function x(re,ae,se,fe,me){var Ee,Oe;let ke;for(let We=ae;We{const Ke=E.getNode(je.id);Ke.data.dummy&&(Ke.data.orderme)&&F5(y,je.id,ke)}))}function b(re){return JSON.stringify(re.slice(1))}function z(re,ae){const se=b(re);ae.get(se)||(x(...re),ae.set(se,!0))}const ee=(re,ae)=>{let se=-1,fe,me=0;const Ee=new Map;return ae==null||ae.forEach((Oe,ke)=>{var We;if(((We=E.getNode(Oe))===null||We===void 0?void 0:We.data.dummy)==="border"){const je=E.getPredecessors(Oe)||[];je.length&&(fe=E.getNode(je[0].id).data.order,z([ae,me,ke,se,fe],Ee),me=ke,se=fe)}z([ae,me,ae.length,fe,re.length],Ee)}),ae};return a!=null&&a.length&&a.reduce(ee),y},w9=(E,a)=>{var y,x;if(!((y=E.getNode(a))===null||y===void 0)&&y.data.dummy)return(x=E.getPredecessors(a))===null||x===void 0?void 0:x.find(b=>E.getNode(b.id).data.dummy)},F5=(E,a,y)=>{let x=a,b=y;if(x>b){const ee=x;x=b,b=ee}let z=E[x];z||(E[x]=z={}),z[b]=!0},M9=(E,a,y)=>{let x=a,b=y;if(x>b){const z=a;x=b,b=z}return!!E[x]},k5=(E,a,y,x)=>{const b={},z={},ee={};return a==null||a.forEach(re=>{re==null||re.forEach((ae,se)=>{b[ae]=ae,z[ae]=ae,ee[ae]=se})}),a==null||a.forEach(re=>{let ae=-1;re==null||re.forEach(se=>{let fe=x(se).map(me=>me.id);if(fe.length){fe=fe.sort((Ee,Oe)=>ee[Ee]-ee[Oe]);const me=(fe.length-1)/2;for(let Ee=Math.floor(me),Oe=Math.ceil(me);Ee<=Oe;++Ee){const ke=fe[Ee];z[se]===se&&ae{var re;const ae={},se=D9(E,a,y,b,z,ee),fe=ee?"borderLeft":"borderRight",me=(ke,We)=>{let je=se.getAllNodes(),Ke=je.pop();const Ze={};for(;Ke;)Ze[Ke.id]?ke(Ke.id):(Ze[Ke.id]=!0,je.push(Ke),je=je.concat(We(Ke.id))),Ke=je.pop()},Ee=ke=>{ae[ke]=(se.getRelatedEdges(ke,"in")||[]).reduce((We,je)=>Math.max(We,(ae[je.source]||0)+je.data.weight),0)},Oe=ke=>{const We=(se.getRelatedEdges(ke,"out")||[]).reduce((Ke,Ze)=>Math.min(Ke,(ae[Ze.target]||0)-Ze.data.weight),Number.POSITIVE_INFINITY),je=E.getNode(ke);We!==Number.POSITIVE_INFINITY&&je.data.borderType!==fe&&(ae[ke]=Math.max(ae[ke],We))};return me(Ee,se.getPredecessors.bind(se)),me(Oe,se.getSuccessors.bind(se)),(re=Object.values(x))===null||re===void 0||re.forEach(ke=>{ae[ke]=ae[y[ke]]}),ae},D9=(E,a,y,x,b,z)=>{const ee=new iu,re=I9(x,b,z);return a==null||a.forEach(ae=>{let se;ae==null||ae.forEach(fe=>{const me=y[fe];if(ee.hasNode(me)||ee.addNode({id:me,data:{}}),se){const Ee=y[se],Oe=ee.getRelatedEdges(Ee,"out").find(ke=>ke.target===me);Oe?ee.updateEdgeData(Oe.id,Object.assign(Object.assign({},Oe.data),{weight:Math.max(re(E,fe,se),Oe.data.weight||0)})):ee.addEdge({id:`e${Math.random()}`,source:Ee,target:me,data:{weight:Math.max(re(E,fe,se),0)}})}se=fe})}),ee},z5=(E,a)=>dx(Object.values(a),y=>{var x;let b=Number.NEGATIVE_INFINITY,z=Number.POSITIVE_INFINITY;return(x=Object.keys(y))===null||x===void 0||x.forEach(ee=>{const re=y[ee],ae=T9(E,ee)/2;b=Math.max(re+ae,b),z=Math.min(re-ae,z)}),b-z});function U5(E,a){const y=Object.values(a),x=Math.min(...y),b=Math.max(...y);["u","d"].forEach(z=>{["l","r"].forEach(ee=>{const re=z+ee,ae=E[re];let se;if(ae===a)return;const fe=Object.values(ae);se=ee==="l"?x-Math.min(...fe):b-Math.max(...fe),se&&(E[re]={},Object.keys(ae).forEach(me=>{E[re][me]=ae[me]+se}))})})}const W5=(E,a)=>{const y={};return Object.keys(E.ul).forEach(x=>{if(a)y[x]=E[a.toLowerCase()][x];else{const b=Object.values(E).map(z=>z[x]);y[x]=(b[0]+b[1])/2}}),y},S$=(E,a)=>{const{align:y,nodesep:x=0,edgesep:b=0}=a||{},z=buildLayerMatrix(E),ee=Object.assign(N5(E,z),R5(E,z)),re={};let ae;["u","d"].forEach(fe=>{ae=fe==="u"?z:Object.values(z).reverse(),["l","r"].forEach(me=>{me==="r"&&(ae=ae.map(We=>Object.values(We).reverse()));const Ee=(fe==="u"?E.getPredecessors:E.getSuccessors).bind(E),Oe=k5(E,ae,ee,Ee),ke=_5(E,ae,Oe.root,Oe.align,x,b,me==="r");me==="r"&&Object.keys(ke).forEach(We=>{ke[We]=-ke[We]}),re[fe+me]=ke})});const se=z5(E,re);return U5(re,se),W5(re,y)},I9=(E,a,y)=>(x,b,z)=>{const ee=x.getNode(b),re=x.getNode(z);let ae=0,se=0;if(ae+=ee.data.width/2,ee.data.hasOwnProperty("labelpos"))switch((ee.data.labelpos||"").toLowerCase()){case"l":se=-ee.data.width/2;break;case"r":se=ee.data.width/2;break}if(se&&(ae+=y?se:-se),se=0,ae+=(ee.data.dummy?a:E)/2,ae+=(re.data.dummy?a:E)/2,ae+=re.data.width/2,re.data.labelpos)switch((re.data.labelpos||"").toLowerCase()){case"l":se=re.data.width/2;break;case"r":se=-re.data.width/2;break}return se&&(ae+=y?se:-se),se=0,ae},T9=(E,a)=>E.getNode(a).data.width||0,O9=(E,a)=>{const{ranksep:y=0}=a||{},x=Fv(E);let b=0;x==null||x.forEach(z=>{const ee=z.map(ae=>E.getNode(ae).data.height),re=Math.max(...ee,0);z==null||z.forEach(ae=>{E.getNode(ae).data.y=b+re/2}),b+=re+y})},L9=(E,a)=>{const{align:y,nodesep:x=0,edgesep:b=0}=a||{},z=Fv(E),ee=Object.assign(N5(E,z),R5(E,z)),re={};let ae=[];["u","d"].forEach(fe=>{ae=fe==="u"?z:Object.values(z).reverse(),["l","r"].forEach(me=>{me==="r"&&(ae=ae.map(We=>Object.values(We).reverse()));const Ee=(fe==="u"?E.getPredecessors:E.getSuccessors).bind(E),Oe=k5(E,ae,ee,Ee),ke=_5(E,ae,Oe.root,Oe.align,x,b,me==="r");me==="r"&&Object.keys(ke).forEach(We=>ke[We]=-ke[We]),re[fe+me]=ke})});const se=z5(E,re);return se&&U5(re,se),W5(re,y)},B9=(E,a)=>{var y;const x=m5(E);O9(x,a);const b=L9(x,a);(y=Object.keys(b))===null||y===void 0||y.forEach(z=>{x.getNode(z).data.x=b[z]})},j5=E=>{const a={},y=x=>{var b;const z=E.getNode(x);if(!z)return 0;if(a[x])return z.data.rank;a[x]=!0;let ee;return(b=E.getRelatedEdges(x,"out"))===null||b===void 0||b.forEach(re=>{const ae=y(re.target),se=re.data.minlen,fe=ae-se;fe&&(ee===void 0||feE.getRelatedEdges(x.id,"in").length===0).forEach(x=>y(x.id))},N9=E=>{const a={};let y;const x=ee=>{var re;const ae=E.getNode(ee);if(!ae)return 0;if(a[ee])return ae.data.rank;a[ee]=!0;let se;return(re=E.getRelatedEdges(ee,"out"))===null||re===void 0||re.forEach(fe=>{const me=x(fe.target),Ee=fe.data.minlen,Oe=me-Ee;Oe&&(se===void 0||OeE.getRelatedEdges(ee.id,"in").length===0).forEach(ee=>{ee&&x(ee.id)}),y===void 0&&(y=0);const b={},z=(ee,re)=>{var ae;const se=E.getNode(ee),fe=isNaN(se.data.layer)?re:se.data.layer;(se.data.rank===void 0||se.data.rank{z(me.target,fe+me.data.minlen)}))};E.getAllNodes().forEach(ee=>{const re=ee.data;re&&(isNaN(re.layer)?re.rank-=y:z(ee.id,re.layer))})},bh=(E,a)=>E.getNode(a.target).data.rank-E.getNode(a.source).data.rank-a.data.minlen,R9=E=>{const a=new iu({tree:[]}),y=E.getAllNodes()[0],x=E.getAllNodes().length;a.addNode(y);let b,z;for(;F9(a,E){const y=x=>{a.getRelatedEdges(x,"both").forEach(b=>{const z=b.source,ee=x===z?b.target:z;!E.hasNode(ee)&&!bh(a,b)&&(E.addNode({id:ee,data:{}}),E.addEdge({id:b.id,source:x,target:ee,data:{}}),y(ee))})};return E.getAllNodes().forEach(x=>y(x.id)),E.getAllNodes().length},k9=E=>{const a=new iu({tree:[]}),y=E.getAllNodes()[0],x=E.getAllNodes().length;a.addNode(y);let b,z;for(;_9(a,E){const y=x=>{var b;(b=a.getRelatedEdges(x,"both"))===null||b===void 0||b.forEach(z=>{const ee=z.source,re=x===ee?z.target:ee;!E.hasNode(re)&&(a.getNode(re).data.layer!==void 0||!bh(a,z))&&(E.addNode({id:re,data:{}}),E.addEdge({id:z.id,source:x,target:re,data:{}}),y(re))})};return E.getAllNodes().forEach(x=>y(x.id)),E.getAllNodes().length},G5=(E,a)=>dx(a.getAllEdges(),y=>E.hasNode(y.source)!==E.hasNode(y.target)?bh(a,y):1/0),H5=(E,a,y)=>{E.getAllNodes().forEach(x=>{const b=a.getNode(x.id);b.data.rank||(b.data.rank=0),b.data.rank+=y})},z9=E=>{const a=V7(E);j5(a);const y=R9(a);K5(y),V5(y,a);let x,b;for(;x=j9(y);)b=G9(y,a,x),H9(y,a,x,b)},V5=(E,a)=>{let y=S5(E,E.getAllNodes(),"post",!1);y=y.slice(0,(y==null?void 0:y.length)-1),y.forEach(x=>{U9(E,a,x)})},U9=(E,a,y)=>{const b=E.getNode(y).data.parent,z=E.getRelatedEdges(y,"both").find(ee=>ee.target===b||ee.source===b);z.data.cutvalue=W9(E,a,y)},W9=(E,a,y)=>{const b=E.getNode(y).data.parent;let z=!0,ee=a.getRelatedEdges(y,"out").find(ae=>ae.target===b),re=0;return ee||(z=!1,ee=a.getRelatedEdges(b,"out").find(ae=>ae.target===y)),re=ee.data.weight,a.getRelatedEdges(y,"both").forEach(ae=>{const se=ae.source===y,fe=se?ae.target:ae.source;if(fe!==b){const me=se===z,Ee=ae.data.weight;if(re+=me?Ee:-Ee,K9(E,y,fe)){const Oe=E.getRelatedEdges(y,"both").find(ke=>ke.source===fe||ke.target===fe).data.cutvalue;re+=me?-Oe:Oe}}}),re},K5=(E,a=E.getAllNodes()[0].id)=>{Z5(E,{},1,a)},Z5=(E,a,y,x,b)=>{var z;const ee=y;let re=y;const ae=E.getNode(x);return a[x]=!0,(z=E.getNeighbors(x))===null||z===void 0||z.forEach(se=>{a[se.id]||(re=Z5(E,a,re,se.id,x))}),ae.data.low=ee,ae.data.lim=re++,b?ae.data.parent=b:delete ae.data.parent,re},j9=E=>E.getAllEdges().find(a=>a.data.cutvalue<0),G9=(E,a,y)=>{let x=y.source,b=y.target;a.getRelatedEdges(x,"out").find(fe=>fe.target===b)||(x=y.target,b=y.source);const z=E.getNode(x),ee=E.getNode(b);let re=z,ae=!1;z.data.lim>ee.data.lim&&(re=ee,ae=!0);const se=a.getAllEdges().filter(fe=>ae===Q5(E.getNode(fe.source),re)&&ae!==Q5(E.getNode(fe.target),re));return dx(se,fe=>bh(a,fe))},H9=(E,a,y,x)=>{const b=E.getRelatedEdges(y.source,"both").find(z=>z.source===y.target||z.target===y.target);b&&E.removeEdge(b.id),E.addEdge({id:`e${Math.random()}`,source:x.source,target:x.target,data:{}}),K5(E),V5(E,a),V9(E,a)},V9=(E,a)=>{const y=E.getAllNodes().find(b=>!b.data.parent);let x=S5(E,y,"pre",!1);x=x.slice(1),x.forEach(b=>{const z=E.getNode(b).data.parent;let ee=a.getRelatedEdges(b,"out").find(ae=>ae.target===z),re=!1;!ee&&a.hasNode(z)&&(ee=a.getRelatedEdges(z,"out").find(ae=>ae.target===b),re=!0),a.getNode(b).data.rank=(a.hasNode(z)&&a.getNode(z).data.rank||0)+(re?ee==null?void 0:ee.data.minlen:-(ee==null?void 0:ee.data.minlen))})},K9=(E,a,y)=>E.getRelatedEdges(a,"both").find(x=>x.source===y||x.target===y),Q5=(E,a)=>a.data.low<=E.data.lim&&E.data.lim<=a.data.lim,Z9=(E,a)=>{switch(a){case"network-simplex":Y9(E);break;case"tight-tree":Y5(E);break;case"longest-path":Q9(E);break;default:Y5(E)}},Q9=j5,Y5=E=>{N9(E),k9(E)},Y9=E=>{z9(E)},X9=(E,a)=>{const{edgeLabelSpace:y,keepNodeOrder:x,prevGraph:b,rankdir:z,ranksep:ee}=a;!x&&b&&q9(E,b);const re=a_(E);y&&(a.ranksep=i_(re,{rankdir:z,ranksep:ee}));let ae;try{ae=J9(re,a)}catch(se){if(se.message==="Not possible to find intersection inside of the rectangle"){console.error(`The following error may be caused by improper layer setting, please make sure your manual layer setting does not violate the graph's structure: `,se);return}throw se}return $9(E,re),ae},J9=(E,a)=>{const{acyclicer:y,ranker:x,rankdir:b="tb",nodeOrder:z,keepNodeOrder:ee,align:re,nodesep:ae=50,edgesep:se=20,ranksep:fe=50}=a;g_(E),W7(E,y);const{nestingRoot:me,nodeRankFactor:Ee}=e9(E);Z9(m5(E),x),o_(E),Z7(E,Ee),r9(E,me),K7(E),s_(E),l_(E);const Oe=[];i9(E,Oe),P9(E,Oe),Y7(E),ee&&S9(E,z),x9(E,ee),v_(E),X7(E,b),B9(E,{align:re,nodesep:ae,edgesep:se,ranksep:fe}),m_(E),h_(E),s9(E,Oe),d_(E),J7(E,b);const{width:ke,height:We}=u_(E);return c_(E),f_(E),G7(E),{width:ke,height:We}},q9=(E,a)=>{E.getAllNodes().forEach(y=>{const x=E.getNode(y.id);if(a.hasNode(y.id)){const b=a.getNode(y.id);x.data.fixorder=b.data._order,delete b.data._order}else delete x.data.fixorder})},$9=(E,a)=>{E.getAllNodes().forEach(y=>{var x;const b=E.getNode(y.id);if(b){const z=a.getNode(y.id);b.data.x=z.data.x,b.data.y=z.data.y,b.data._order=z.data.order,b.data._rank=z.data.rank,!((x=a.getChildren(y.id))===null||x===void 0)&&x.length&&(b.data.width=z.data.width,b.data.height=z.data.height)}}),E.getAllEdges().forEach(y=>{const x=E.getEdge(y.id),b=a.getEdge(y.id);x.data.points=b?b.data.points:[],b&&b.data.hasOwnProperty("x")&&(x.data.x=b.data.x,x.data.y=b.data.y)})},e_=["width","height","layer","fixorder"],t_={width:0,height:0},n_=["minlen","weight","width","height","labeloffset"],r_={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},vx=["labelpos"],a_=E=>{const a=new iu({tree:[]});return E.getAllNodes().forEach(y=>{const x=J5(E.getNode(y.id).data),b=Object.assign(Object.assign({},t_),x),z=X5(b,e_);a.hasNode(y.id)||a.addNode({id:y.id,data:Object.assign({},z)});const ee=E.hasTreeStructure("combo")?E.getParent(y.id,"combo"):E.getParent(y.id);wo(ee)||(a.hasNode(ee.id)||a.addNode(Object.assign({},ee)),a.setParent(y.id,ee.id))}),E.getAllEdges().forEach(y=>{const x=J5(E.getEdge(y.id).data),b={};vx==null||vx.forEach(z=>{x[z]!==void 0&&(b[z]=x[z])}),a.addEdge({id:y.id,source:y.source,target:y.target,data:Object.assign({},r_,X5(x,n_),b)})}),a},i_=(E,a)=>{const{ranksep:y=0,rankdir:x}=a;return E.getAllNodes().forEach(b=>{isNaN(b.data.layer)||b.data.layer||(b.data.layer=0)}),E.getAllEdges().forEach(b=>{var z;b.data.minlen*=2,((z=b.data.labelpos)===null||z===void 0?void 0:z.toLowerCase())!=="c"&&(x==="TB"||x==="BT"?b.data.width+=b.data.labeloffset:b.data.height+=b.data.labeloffset)}),y/2},o_=E=>{E.getAllEdges().forEach(a=>{if(a.data.width&&a.data.height){const y=E.getNode(a.source),x=E.getNode(a.target),b={e:a,rank:(x.data.rank-y.data.rank)/2+y.data.rank};x0(E,"edge-proxy",b,"_ep")}})},s_=E=>{let a=0;return E.getAllNodes().forEach(y=>{var x,b;y.data.borderTop&&(y.data.minRank=(x=E.getNode(y.data.borderTop))===null||x===void 0?void 0:x.data.rank,y.data.maxRank=(b=E.getNode(y.data.borderBottom))===null||b===void 0?void 0:b.data.rank,a=Math.max(a,y.data.maxRank||-1/0))}),a},l_=E=>{E.getAllNodes().forEach(a=>{a.data.dummy==="edge-proxy"&&(E.getEdge(a.data.e.id).data.labelRank=a.data.rank,E.removeNode(a.id))})},u_=(E,a)=>{let y,x=0,b,z=0;const{marginx:ee=0,marginy:re=0}=a||{},ae=se=>{if(!se.data)return;const fe=se.data.x,me=se.data.y,Ee=se.data.width,Oe=se.data.height;!isNaN(fe)&&!isNaN(Ee)&&(y===void 0&&(y=fe-Ee/2),y=Math.min(y,fe-Ee/2),x=Math.max(x,fe+Ee/2)),!isNaN(me)&&!isNaN(Oe)&&(b===void 0&&(b=me-Oe/2),b=Math.min(b,me-Oe/2),z=Math.max(z,me+Oe/2))};return E.getAllNodes().forEach(se=>{ae(se)}),E.getAllEdges().forEach(se=>{se!=null&&se.data.hasOwnProperty("x")&&ae(se)}),y-=ee,b-=re,E.getAllNodes().forEach(se=>{se.data.x-=y,se.data.y-=b}),E.getAllEdges().forEach(se=>{var fe;(fe=se.data.points)===null||fe===void 0||fe.forEach(me=>{me.x-=y,me.y-=b}),se.data.hasOwnProperty("x")&&(se.data.x-=y),se.data.hasOwnProperty("y")&&(se.data.y-=b)}),{width:x-y+ee,height:z-b+re}},c_=E=>{E.getAllEdges().forEach(a=>{const y=E.getNode(a.source),x=E.getNode(a.target);let b,z;a.data.points?(b=a.data.points[0],z=a.data.points[a.data.points.length-1]):(a.data.points=[],b={x:x.data.x,y:x.data.y},z={x:y.data.x,y:y.data.y}),a.data.points.unshift(y5(y.data,b)),a.data.points.push(y5(x.data,z))})},d_=E=>{E.getAllEdges().forEach(a=>{if(a.data.hasOwnProperty("x"))switch((a.data.labelpos==="l"||a.data.labelpos==="r")&&(a.data.width-=a.data.labeloffset),a.data.labelpos){case"l":a.data.x-=a.data.width/2+a.data.labeloffset;break;case"r":a.data.x+=a.data.width/2+a.data.labeloffset;break}})},f_=E=>{E.getAllEdges().forEach(a=>{var y;a.data.reversed&&((y=a.data.points)===null||y===void 0||y.reverse())})},h_=E=>{E.getAllNodes().forEach(a=>{var y,x,b;if(!((y=E.getChildren(a.id))===null||y===void 0)&&y.length){const z=E.getNode(a.id),ee=E.getNode(z.data.borderTop),re=E.getNode(z.data.borderBottom),ae=E.getNode(z.data.borderLeft[((x=z.data.borderLeft)===null||x===void 0?void 0:x.length)-1]),se=E.getNode(z.data.borderRight[((b=z.data.borderRight)===null||b===void 0?void 0:b.length)-1]);z.data.width=Math.abs((se==null?void 0:se.data.x)-(ae==null?void 0:ae.data.x))||10,z.data.height=Math.abs((re==null?void 0:re.data.y)-(ee==null?void 0:ee.data.y))||10,z.data.x=((ae==null?void 0:ae.data.x)||0)+z.data.width/2,z.data.y=((ee==null?void 0:ee.data.y)||0)+z.data.height/2}}),E.getAllNodes().forEach(a=>{a.data.dummy==="border"&&E.removeNode(a.id)})},g_=E=>{E.getAllEdges().forEach(a=>{if(a.source===a.target){const y=E.getNode(a.source);y.data.selfEdges||(y.data.selfEdges=[]),y.data.selfEdges.push(a),E.removeEdge(a.id)}})},v_=E=>{const a=Fv(E);a==null||a.forEach(y=>{let x=0;y==null||y.forEach((b,z)=>{var ee;const re=E.getNode(b);re.data.order=z+x,(ee=re.data.selfEdges)===null||ee===void 0||ee.forEach(ae=>{x0(E,"selfedge",{width:ae.data.width,height:ae.data.height,rank:re.data.rank,order:z+ ++x,e:ae},"_se")}),delete re.data.selfEdges})})},m_=E=>{E.getAllNodes().forEach(a=>{const y=E.getNode(a.id);if(y.data.dummy==="selfedge"){const x=E.getNode(y.data.e.source),b=x.data.x+x.data.width/2,z=x.data.y,ee=y.data.x-b,re=x.data.height/2;E.hasEdge(y.data.e.id)?E.updateEdgeData(y.data.e.id,y.data.e.data):E.addEdge({id:y.data.e.id,source:y.data.e.source,target:y.data.e.target,data:y.data.e.data}),E.removeNode(a.id),y.data.e.data.points=[{x:b+2*ee/3,y:z-re},{x:b+5*ee/6,y:z-re},{y:z,x:b+ee},{x:b+5*ee/6,y:z+re},{x:b+2*ee/3,y:z+re}],y.data.e.data.x=y.data.x,y.data.e.data.y=y.data.y}})},X5=(E,a)=>{const y={};return a==null||a.forEach(x=>{E[x]!==void 0&&(y[x]=+E[x])}),y},J5=(E={})=>{const a={};return Object.keys(E).forEach(y=>{a[y.toLowerCase()]=E[y]}),a};function kv(E){if(!E)return[0,0,0];if(Wi(E))return[E,E,E];if(E.length===0)return[0,0,0];const[a,y=a,x=a]=E;return[a,y,x]}function Mg(E,a){let y;return $i(a)?y=a:Wi(a)?y=()=>a:y=()=>E,y}function mx(E,a,y=!0){return!a&&a!==0?x=>{const{size:b}=x.data||{};return b?Array.isArray(b)?y?Math.max(...b)||E:b:$l(b)&&b.width&&b.height?y?Math.max(b.width,b.height)||E:[b.width,b.height]:b:E}:$i(a)?a:Wi(a)?()=>a:Array.isArray(a)?()=>y?Math.max(...a)||E:a:$l(a)&&a.width&&a.height?()=>y?Math.max(a.width,a.height)||E:[a.width,a.height]:()=>E}const px=(E,a,y=10)=>{let x;const b=typeof a=="function"?a:()=>a||0;return E?Array.isArray(E)?x=ee=>E:$i(E)?x=E:x=ee=>E:x=ee=>{var re,ae,se;if(!((re=ee.data)===null||re===void 0)&&re.bboxSize)return(ae=ee.data)===null||ae===void 0?void 0:ae.bboxSize;if(!((se=ee.data)===null||se===void 0)&&se.size){const fe=ee.data.size;return Array.isArray(fe)?fe:$l(fe)?[fe.width,fe.height]:fe}return y},ee=>{const re=x(ee),ae=b(ee);return Math.max(...kv(re))+ae}},yx=E=>{if(E===null)return E;if(E instanceof Date)return new Date(E.getTime());if(E instanceof Array){const a=[];return E.forEach(y=>{a.push(y)}),a.map(y=>yx(y))}if(typeof E=="object"){const a={};return Object.keys(E).forEach(y=>{a[y]=yx(E[y])}),a}return E},Jc=(E,a)=>{const y=yx(E);return y.data=y.data||{},a&&(Wi(y.data.x)||(y.data.x=Math.random()*a[0]),Wi(y.data.y)||(y.data.y=Math.random()*a[1])),y},p_={rankdir:"TB",nodesep:50,ranksep:50,edgeLabelSpace:!0,ranker:"tight-tree",controlPoints:!1,radial:!1,focusNode:null};class y_{constructor(a={}){this.options=a,this.id="antv-dagre",this.options=Object.assign(Object.assign({},p_),a)}execute(a,y){return(0,Bt.mG)(this,void 0,void 0,function*(){return this.genericDagreLayout(!1,a,y)})}assign(a,y){return(0,Bt.mG)(this,void 0,void 0,function*(){yield this.genericDagreLayout(!0,a,y)})}genericDagreLayout(a,y,x){return(0,Bt.mG)(this,void 0,void 0,function*(){const b=Object.assign(Object.assign({},this.options),x),{nodeSize:z,align:ee,rankdir:re="TB",ranksep:ae,nodesep:se,ranksepFunc:fe,nodesepFunc:me,edgeLabelSpace:Ee,ranker:Oe,nodeOrder:ke,begin:We,controlPoints:je,radial:Ke,sortByCombo:Ze,preset:Je}=b,tt=new iu({tree:[]}),st=Mg(ae||50,fe),gt=Mg(se||50,me);let mt=gt,ct=st;(re==="LR"||re==="RL")&&(mt=st,ct=gt);const Lt=mx(10,z,!1),_t=y.getAllNodes(),Yt=y.getAllEdges();_t.forEach(xn=>{const Ln=kv(Lt(xn)),nr=ct(xn),An=mt(xn),fr=Ln[0]+2*An,ra=Ln[1]+2*nr,aa=xn.data.layer;Wi(aa)?tt.addNode({id:xn.id,data:{width:fr,height:ra,layer:aa}}):tt.addNode({id:xn.id,data:{width:fr,height:ra}})}),Ze&&(tt.attachTreeStructure("combo"),_t.forEach(xn=>{const{parentId:Ln}=xn.data;Ln!==void 0&&tt.hasNode(Ln)&&tt.setParent(xn.id,Ln,"combo")})),Yt.forEach(xn=>{tt.addEdge({id:xn.id,source:xn.source,target:xn.target,data:{weight:xn.data.weight||1}})});let $t;Je!=null&&Je.length&&($t=new iu({nodes:Je})),X9(tt,{prevGraph:$t,edgeLabelSpace:Ee,keepNodeOrder:!!ke,nodeOrder:ke||[],acyclicer:"greedy",ranker:Oe,rankdir:re,nodesep:se,align:ee});const En=[0,0];if(We){let xn=1/0,Ln=1/0;tt.getAllNodes().forEach(nr=>{xn>nr.data.x&&(xn=nr.data.x),Ln>nr.data.y&&(Ln=nr.data.y)}),tt.getAllEdges().forEach(nr=>{var An;(An=nr.data.points)===null||An===void 0||An.forEach(fr=>{xn>fr.x&&(xn=fr.x),Ln>fr.y&&(Ln=fr.y)})}),En[0]=We[0]-xn,En[1]=We[1]-Ln}const on=re==="LR"||re==="RL";if(!Ke){const xn=new Set,nr=re==="BT"||re==="RL"?(aa,Gr)=>Gr-aa:(aa,Gr)=>aa-Gr;tt.getAllNodes().forEach(aa=>{aa.data.x=aa.data.x+En[0],aa.data.y=aa.data.y+En[1],xn.add(on?aa.data.x:aa.data.y)});const An=Array.from(xn).sort(nr),fr=on?(aa,Gr)=>aa.x!==Gr.x:(aa,Gr)=>aa.y!==Gr.y,ra=on?(aa,Gr,Sr)=>{const Kr=Math.max(Gr.y,Sr.y),pa=Math.min(Gr.y,Sr.y);return aa.filter(Ua=>Ua.y<=Kr&&Ua.y>=pa)}:(aa,Gr,Sr)=>{const Kr=Math.max(Gr.x,Sr.x),pa=Math.min(Gr.x,Sr.x);return aa.filter(Ua=>Ua.x<=Kr&&Ua.x>=pa)};tt.getAllEdges().forEach((aa,Gr)=>{var Sr;Ee&&je&&aa.data.type!=="loop"&&(aa.data.controlPoints=E_((Sr=aa.data.points)===null||Sr===void 0?void 0:Sr.map(({x:Kr,y:pa})=>({x:Kr+En[0],y:pa+En[1]})),tt.getNode(aa.source),tt.getNode(aa.target),An,on,fr,ra))})}let Fn=[];Fn=tt.getAllNodes().map(xn=>Jc(xn));const tr=tt.getAllEdges();return a&&(Fn.forEach(xn=>{y.mergeNodeData(xn.id,{x:xn.data.x,y:xn.data.y})}),tr.forEach(xn=>{y.mergeEdgeData(xn.id,{controlPoints:xn.data.controlPoints})})),{nodes:Fn,edges:tr}})}}const E_=(E,a,y,x,b,z,ee)=>{let re=(E==null?void 0:E.slice(1,E.length-1))||[];if(a&&y){let{x:ae,y:se}=a.data,{x:fe,y:me}=y.data;if(b&&(ae=a.data.y,se=a.data.x,fe=y.data.y,me=y.data.x),me!==se&&ae!==fe){const Ee=x.indexOf(se),Oe=x[Ee+1];if(Oe){const je=re[0],Ke=b?{x:(se+Oe)/2,y:(je==null?void 0:je.y)||fe}:{x:(je==null?void 0:je.x)||fe,y:(se+Oe)/2};(!je||z(je,Ke))&&re.unshift(Ke)}const ke=x.indexOf(me),We=Math.abs(ke-Ee);if(We===1)re=ee(re,a.data,y.data),re.length||re.push(b?{x:(se+me)/2,y:ae}:{x:ae,y:(se+me)/2});else if(We>1){const je=x[ke-1];if(je){const Ke=re[re.length-1],Ze=b?{x:(me+je)/2,y:(Ke==null?void 0:Ke.y)||fe}:{x:(Ke==null?void 0:Ke.x)||ae,y:(me+je)/2};(!Ke||z(Ke,Ze))&&re.push(Ze)}}}}return re},Dg=(E,a,y)=>{const x=E.getAllNodes(),b=E.getAllEdges();if(!(x!=null&&x.length))return{nodes:[],edges:b};if(x.length===1)return a&&E.mergeNodeData(x[0].id,{x:y[0],y:y[1]}),{nodes:[Object.assign(Object.assign({},x[0]),{data:Object.assign(Object.assign({},x[0].data),{x:y[0],y:y[1]})})],edges:b}},A_={radius:null,startRadius:null,endRadius:null,startAngle:0,endAngle:2*Math.PI,clockwise:!0,divisions:1,ordering:null,angleRatio:1};class x_{constructor(a={}){this.options=a,this.id="circular",this.options=Object.assign(Object.assign({},A_),a)}execute(a,y){return(0,Bt.mG)(this,void 0,void 0,function*(){return this.genericCircularLayout(!1,a,y)})}assign(a,y){return(0,Bt.mG)(this,void 0,void 0,function*(){yield this.genericCircularLayout(!0,a,y)})}genericCircularLayout(a,y,x){return(0,Bt.mG)(this,void 0,void 0,function*(){const b=Object.assign(Object.assign({},this.options),x),{width:z,height:ee,center:re,divisions:ae,startAngle:se=0,endAngle:fe=2*Math.PI,angleRatio:me,ordering:Ee,clockwise:Oe,nodeSpacing:ke,nodeSize:We}=b,je=y.getAllNodes(),Ke=y.getAllEdges(),[Ze,Je,tt]=b_(z,ee,re),st=je==null?void 0:je.length;if(!st||st===1)return Dg(y,a,tt);const gt=(fe-se)/st;let{radius:mt,startRadius:ct,endRadius:Lt}=b;if(ke){const on=Mg(10,ke),Fn=mx(10,We);let tr=-1/0;je.forEach(xn=>{const Ln=Fn(xn);tr{Ln===0?Cn+=tr||10:Cn+=(on(xn)||0)+(tr||10)}),mt=Cn/(2*Math.PI)}else!mt&&!ct&&!Lt?mt=Math.min(Je,Ze)/2:!ct&&Lt?ct=Lt:ct&&!Lt&&(Lt=ct);const _t=gt*me;let Yt=[];Ee==="topology"?Yt=q5(y,je):Ee==="topology-directed"?Yt=q5(y,je,!0):Ee==="degree"?Yt=S_(y,je):Yt=je.map(on=>Jc(on));const $t=Math.ceil(st/ae);for(let on=0;on{y.mergeNodeData(on.id,{x:on.data.x,y:on.data.y})}),{nodes:Yt,edges:Ke}})}}const q5=(E,a,y=!1)=>{const x=[Jc(a[0])],b={},z=a.length;b[a[0].id]=!0;let ee=0;return a.forEach((re,ae)=>{if(ae!==0)if((ae===z-1||E.getDegree(re.id,"both")!==E.getDegree(a[ae+1].id,"both")||E.areNeighbors(x[ee].id,re.id))&&!b[re.id])x.push(Jc(re)),b[re.id]=!0,ee++;else{const se=y?E.getSuccessors(x[ee].id):E.getNeighbors(x[ee].id);let fe=!1;for(let Ee=0;Ee{y.push(Jc(x))}),y.sort((x,b)=>E.getDegree(x.id,"both")-E.getDegree(b.id,"both")),y}const b_=(E,a,y)=>{let x=E,b=a,z=y;return!x&&typeof window!="undefined"&&(x=window.innerWidth),!b&&typeof window!="undefined"&&(b=window.innerHeight),z||(z=[x/2,b/2]),[x,b,z]},zf=Array.isArray,C_={nodeSize:30,nodeSpacing:10,preventOverlap:!1,sweep:void 0,equidistant:!1,startAngle:3/2*Math.PI,clockwise:!0,maxLevelDiff:void 0,sortBy:"degree"};class Ex{constructor(a={}){this.options=a,this.id="concentric",this.options=Object.assign(Object.assign({},C_),a)}execute(a,y){return(0,Bt.mG)(this,void 0,void 0,function*(){return this.genericConcentricLayout(!1,a,y)})}assign(a,y){return(0,Bt.mG)(this,void 0,void 0,function*(){yield this.genericConcentricLayout(!0,a,y)})}genericConcentricLayout(a,y,x){return(0,Bt.mG)(this,void 0,void 0,function*(){const b=Object.assign(Object.assign({},this.options),x),{center:z,width:ee,height:re,sortBy:ae,maxLevelDiff:se,sweep:fe,clockwise:me,equidistant:Ee,preventOverlap:Oe,startAngle:ke=3/2*Math.PI,nodeSize:We,nodeSpacing:je}=b,Ke=y.getAllNodes(),Ze=y.getAllEdges(),Je=!ee&&typeof window!="undefined"?window.innerWidth:ee,tt=!re&&typeof window!="undefined"?window.innerHeight:re,st=z||[Je/2,tt/2];if(!(Ke!=null&&Ke.length)||Ke.length===1)return Dg(y,a,st);const gt=[];let mt,ct=0;zf(We)?mt=Math.max(We[0],We[1]):$i(We)?(mt=-1/0,Ke.forEach(xn=>{const Ln=Math.max(...kv(We(xn)));Ln>mt&&(mt=Ln)})):mt=We,zf(je)?ct=Math.max(je[0],je[1]):Wi(je)&&(ct=je),Ke.forEach(xn=>{const Ln=Jc(xn);gt.push(Ln);let nr=mt;const{data:An}=Ln;zf(An.size)?nr=Math.max(An.size[0],An.size[1]):Wi(An.size)?nr=An.size:$l(An.size)&&(nr=Math.max(An.size.width,An.size.height)),mt=Math.max(mt,nr),$i(je)&&(ct=Math.max(je(xn),ct))});const Lt={};gt.forEach((xn,Ln)=>{Lt[xn.id]=Ln});let _t=ae;(!Us(_t)||gt[0].data[_t]===void 0)&&(_t="degree"),_t==="degree"?gt.sort((xn,Ln)=>y.getDegree(Ln.id,"both")-y.getDegree(xn.id,"both")):gt.sort((xn,Ln)=>Ln.data[_t]-xn.data[_t]);const Yt=gt[0],$t=(se||(_t==="degree"?y.getDegree(Yt.id,"both"):Yt.data[_t]))/4,En=[{nodes:[]}];let on=En[0];gt.forEach(xn=>{if(on.nodes.length>0){const Ln=Math.abs(_t==="degree"?y.getDegree(on.nodes[0].id,"both")-y.getDegree(xn.id,"both"):on.nodes[0].data[_t]-xn.data[_t]);$t&&Ln>=$t&&(on={nodes:[]},En.push(on))}on.nodes.push(xn)});let Fn=mt+ct;if(!Oe){const xn=En.length>0&&En[0].nodes.length>1,nr=(Math.min(Je,tt)/2-Fn)/(En.length+(xn?1:0));Fn=Math.min(Fn,nr)}let tr=0;if(En.forEach(xn=>{const Ln=fe===void 0?2*Math.PI-2*Math.PI/xn.nodes.length:fe;if(xn.dTheta=Ln/Math.max(1,xn.nodes.length-1),xn.nodes.length>1&&Oe){const nr=Math.cos(xn.dTheta)-Math.cos(0),An=Math.sin(xn.dTheta)-Math.sin(0),fr=Math.sqrt(Fn*Fn/(nr*nr+An*An));tr=Math.max(fr,tr)}xn.r=tr,tr+=Fn}),Ee){let xn=0,Ln=0;for(let nr=0;nr{An===0&&(Ln=nr.r||0),nr.r=Ln,Ln+=xn})}return En.forEach(xn=>{const Ln=xn.dTheta||0,nr=xn.r||0;xn.nodes.forEach((An,fr)=>{const ra=ke+(me?1:-1)*Ln*fr;An.data.x=st[0]+nr*Math.cos(ra),An.data.y=st[1]+nr*Math.sin(ra)})}),a&>.forEach(xn=>y.mergeNodeData(xn.id,{x:xn.data.x,y:xn.data.y})),{nodes:gt,edges:Ze}})}}function P_(E){const a=+this._x.call(null,E),y=+this._y.call(null,E);return $5(this.cover(a,y),a,y,E)}function $5(E,a,y,x){if(isNaN(a)||isNaN(y))return E;var b,z=E._root,ee={data:x},re=E._x0,ae=E._y0,se=E._x1,fe=E._y1,me,Ee,Oe,ke,We,je,Ke,Ze;if(!z)return E._root=ee,E;for(;z.length;)if((We=a>=(me=(re+se)/2))?re=me:se=me,(je=y>=(Ee=(ae+fe)/2))?ae=Ee:fe=Ee,b=z,!(z=z[Ke=je<<1|We]))return b[Ke]=ee,E;if(Oe=+E._x.call(null,z.data),ke=+E._y.call(null,z.data),a===Oe&&y===ke)return ee.next=z,b?b[Ke]=ee:E._root=ee,E;do b=b?b[Ke]=new Array(4):E._root=new Array(4),(We=a>=(me=(re+se)/2))?re=me:se=me,(je=y>=(Ee=(ae+fe)/2))?ae=Ee:fe=Ee;while((Ke=je<<1|We)===(Ze=(ke>=Ee)<<1|Oe>=me));return b[Ze]=z,b[Ke]=ee,E}function w_(E){var a,y,x=E.length,b,z,ee=new Array(x),re=new Array(x),ae=1/0,se=1/0,fe=-1/0,me=-1/0;for(y=0;yfe&&(fe=b),zme&&(me=z));if(ae>fe||se>me)return this;for(this.cover(ae,se).cover(fe,me),y=0;yE||E>=b||x>a||a>=z;)switch(se=(afe||(re=ke.y0)>me||(ae=ke.x1)=Ke)<<1|E>=je)&&(ke=Ee[Ee.length-1],Ee[Ee.length-1]=Ee[Ee.length-1-We],Ee[Ee.length-1-We]=ke)}else{var Ze=E-+this._x.call(null,Oe.data),Je=a-+this._y.call(null,Oe.data),tt=Ze*Ze+Je*Je;if(tt=(Ee=(ee+ae)/2))?ee=Ee:ae=Ee,(We=me>=(Oe=(re+se)/2))?re=Oe:se=Oe,a=y,!(y=y[je=We<<1|ke]))return this;if(!y.length)break;(a[je+1&3]||a[je+2&3]||a[je+3&3])&&(x=a,Ke=je)}for(;y.data!==E;)if(b=y,!(y=y.next))return this;return(z=y.next)&&delete y.next,b?(z?b.next=z:delete b.next,this):a?(z?a[je]=z:delete a[je],(y=a[0]||a[1]||a[2]||a[3])&&y===(a[3]||a[2]||a[1]||a[0])&&!y.length&&(x?x[Ke]=y:this._root=y),this):(this._root=z,this)}function L_(E){for(var a=0,y=E.length;a=(ke=(ae+me)/2))?ae=ke:me=ke,(st=y>=(We=(se+Ee)/2))?se=We:Ee=We,(gt=x>=(je=(fe+Oe)/2))?fe=je:Oe=je,z=ee,!(ee=ee[mt=gt<<2|st<<1|tt]))return z[mt]=re,E;if(Ke=+E._x.call(null,ee.data),Ze=+E._y.call(null,ee.data),Je=+E._z.call(null,ee.data),a===Ke&&y===Ze&&x===Je)return re.next=ee,z?z[mt]=re:E._root=re,E;do z=z?z[mt]=new Array(8):E._root=new Array(8),(tt=a>=(ke=(ae+me)/2))?ae=ke:me=ke,(st=y>=(We=(se+Ee)/2))?se=We:Ee=We,(gt=x>=(je=(fe+Oe)/2))?fe=je:Oe=je;while((mt=gt<<2|st<<1|tt)===(ct=(Je>=je)<<2|(Ze>=We)<<1|Ke>=ke));return z[ct]=ee,z[mt]=re,E}function j_(E){Array.isArray(E)||(E=Array.from(E));const a=E.length,y=new Float64Array(a),x=new Float64Array(a),b=new Float64Array(a);let z=1/0,ee=1/0,re=1/0,ae=-1/0,se=-1/0,fe=-1/0;for(let me=0,Ee,Oe,ke,We;meae&&(ae=Oe),kese&&(se=ke),Wefe&&(fe=We));if(z>ae||ee>se||re>fe)return this;this.cover(z,ee,re).cover(ae,se,fe);for(let me=0;meE||E>=ee||b>a||a>=re||z>y||y>=ae;)switch(Ee=(yke||(se=Je.y0)>We||(fe=Je.z0)>je||(me=Je.x1)=mt)<<2|(a>=gt)<<1|E>=st)&&(Je=Ke[Ke.length-1],Ke[Ke.length-1]=Ke[Ke.length-1-tt],Ke[Ke.length-1-tt]=Je)}else{var ct=E-+this._x.call(null,Ze.data),Lt=a-+this._y.call(null,Ze.data),_t=y-+this._z.call(null,Ze.data),Yt=ct*ct+Lt*Lt+_t*_t;if(YtMath.sqrt(Fh(E-x,2)+Fh(a-b,2)+Fh(y-z,2));function Q_(E,a,y,x){const b=[],z=E-x,ee=a-x,re=y-x,ae=E+x,se=a+x,fe=y+x;return this.visit((me,Ee,Oe,ke,We,je,Ke)=>{if(!me.length)do{const Ze=me.data;Z_(E,a,y,this._x(Ze),this._y(Ze),this._z(Ze))<=x&&b.push(Ze)}while(me=me.next);return Ee>ae||Oe>se||ke>fe||We=(We=(ee+se)/2))?ee=We:se=We,(Je=Oe>=(je=(re+fe)/2))?re=je:fe=je,(tt=ke>=(Ke=(ae+me)/2))?ae=Ke:me=Ke,a=y,!(y=y[st=tt<<2|Je<<1|Ze]))return this;if(!y.length)break;(a[st+1&7]||a[st+2&7]||a[st+3&7]||a[st+4&7]||a[st+5&7]||a[st+6&7]||a[st+7&7])&&(x=a,gt=st)}for(;y.data!==E;)if(b=y,!(y=y.next))return this;return(z=y.next)&&delete y.next,b?(z?b.next=z:delete b.next,this):a?(z?a[st]=z:delete a[st],(y=a[0]||a[1]||a[2]||a[3]||a[4]||a[5]||a[6]||a[7])&&y===(a[7]||a[6]||a[5]||a[4]||a[3]||a[2]||a[1]||a[0])&&!y.length&&(x?x[gt]=y:this._root=y),this):(this._root=z,this)}function X_(E){for(var a=0,y=E.length;a{const{nodeStrength:Ee,x:Oe,y:ke,z:We,size:je}=fe.data;return{x:Oe,y:ke,z:We,size:je,index:me,id:fe.id,vx:0,vy:0,vz:0,weight:z*Ee}}),ae=(b===2?xy(re,fe=>fe.x,fe=>fe.y):nM(re,fe=>fe.x,fe=>fe.y,fe=>fe.z)).visitAfter(uz),se=new Map;return re.forEach(fe=>{se.set(fe.id,fe),dz(fe,ae,b)}),re.map((fe,me)=>{const{id:Ee,data:Oe}=ee[me],{mass:ke=1}=Oe;x[Ee]={x:fe.vx/ke,y:fe.vy/ke,z:fe.vz/ke}}),x}function uz(E){let a=0,y=0,x=0,b=0,z=0;const ee=E.length;if(ee){for(let re=0;re{var re;if(((re=E.data)===null||re===void 0?void 0:re.id)===z.id)return;const ae=[y,x,b][ee-1],se=z.x-E.x||Sx,fe=z.y-E.y||Sx,me=z.z-E.z||Sx,Ee=[se,fe,me],Oe=ae-a;let ke=0;for(let Ke=0;Kecz(x,b,z,ee,re,E,y))}const fz={dimensions:2,maxIteration:500,gravity:10,factor:1,edgeStrength:50,nodeStrength:1e3,coulombDisScale:.005,damping:.9,maxSpeed:200,minMovement:.4,interval:.02,linkDistance:200,clusterNodeStrength:20,preventOverlap:!0,distanceThresholdMode:"mean"};class aM{constructor(a={}){this.options=a,this.id="force",this.timeInterval=0,this.judgingDistance=0,this.running=!1,this.options=Object.assign(Object.assign({},fz),a)}execute(a,y){return(0,Bt.mG)(this,void 0,void 0,function*(){return this.genericForceLayout(!1,a,y)})}assign(a,y){return(0,Bt.mG)(this,void 0,void 0,function*(){yield this.genericForceLayout(!0,a,y)})}stop(){this.timeInterval&&typeof window!="undefined"&&window.clearInterval(this.timeInterval),this.running=!1}tick(a=this.options.maxIteration||1){if(this.lastResult)return this.lastResult;for(let x=0;(this.judgingDistance>this.lastOptions.minMovement||x<1)&&xthis.lastGraph.mergeNodeData(x.id,{x:x.data.x,y:x.data.y,z:this.options.dimensions===3?x.data.z:void 0})),y}genericForceLayout(a,y,x){return(0,Bt.mG)(this,void 0,void 0,function*(){const b=Object.assign(Object.assign({},this.options),x),z=y.getAllNodes(),ee=y.getAllEdges(),re=this.formatOptions(b,y),{dimensions:ae,width:se,height:fe,nodeSize:me,getMass:Ee,nodeStrength:Oe,edgeStrength:ke,linkDistance:We}=re,je=z.map((ct,Lt)=>Object.assign(Object.assign({},ct),{data:Object.assign(Object.assign({},ct.data),{x:Wi(ct.data.x)?ct.data.x:Math.random()*se,y:Wi(ct.data.y)?ct.data.y:Math.random()*fe,z:Wi(ct.data.z)?ct.data.z:Math.random()*Math.sqrt(se*fe),size:me(ct)||30,mass:Ee(ct),nodeStrength:Oe(ct)})})),Ke=ee.map(ct=>Object.assign(Object.assign({},ct),{data:Object.assign(Object.assign({},ct.data),{edgeStrength:ke(ct),linkDistance:We(ct,y.getNode(ct.source),y.getNode(ct.target))})}));if(!(z!=null&&z.length))return this.lastResult={nodes:[],edges:ee},{nodes:[],edges:ee};const Ze={};z.forEach((ct,Lt)=>{Ze[ct.id]={x:0,y:0,z:0}});const Je=new iu({nodes:je,edges:Ke});this.formatCentripetal(re,Je);const{maxIteration:tt,minMovement:st,onTick:gt}=re;if(this.lastLayoutNodes=je,this.lastLayoutEdges=Ke,this.lastAssign=a,this.lastGraph=y,this.lastCalcGraph=Je,this.lastOptions=re,this.lastVelMap=Ze,typeof window=="undefined")return;let mt=0;return new Promise(ct=>{this.timeInterval=window.setInterval(()=>{(!z||!this.running)&&ct({nodes:bx(y,je),edges:ee}),this.runOneStep(Je,y,mt,Ze,re),this.updatePosition(y,Je,Ze,re),a&&je.forEach(Lt=>y.mergeNodeData(Lt.id,{x:Lt.data.x,y:Lt.data.y,z:ae===3?Lt.data.z:void 0})),gt==null||gt({nodes:bx(y,je),edges:ee}),mt++,(mt>=tt||this.judgingDistance{let se=1;Wi(ae==null?void 0:ae.data.mass)&&(se=ae==null?void 0:ae.data.mass);const fe=y.getDegree(ae.id,"both");return!fe||fe<5?se:fe*5*se}),x.nodeSize=px(a.nodeSize,a.nodeSpacing);const re=a.linkDistance?Mg(1,a.linkDistance):ae=>1+x.nodeSize(y.getNode(ae.source))+x.nodeSize(y.getNode(ae.target));return x.linkDistance=re,x.nodeStrength=Mg(1,a.nodeStrength),x.edgeStrength=Mg(1,a.edgeStrength),x}formatCentripetal(a,y){const{dimensions:x,centripetalOptions:b,center:z,clusterNodeStrength:ee,leafCluster:re,clustering:ae,nodeClusterBy:se}=a,fe=y.getAllNodes(),me=b||{leaf:2,single:2,others:1,center:Ke=>({x:z[0],y:z[1],z:x===3?z[2]:void 0})};typeof ee!="function"&&(a.clusterNodeStrength=Ke=>ee);let Ee,Oe;if(re&&se&&(Ee=iM(y,se),Oe=Array.from(new Set(fe==null?void 0:fe.map(Ke=>Ke.data[se])))||[],a.centripetalOptions=Object.assign(me,{single:100,leaf:Ke=>{const{siblingLeaves:Ze,sameTypeLeaves:Je}=Ee[Ke.id]||{};return(Je==null?void 0:Je.length)===(Ze==null?void 0:Ze.length)||(Oe==null?void 0:Oe.length)===1?1:a.clusterNodeStrength(Ke)},others:1,center:Ke=>{const Ze=y.getDegree(Ke.id,"both");if(!Ze)return{x:100,y:100,z:0};let Je;if(Ze===1){const{sameTypeLeaves:tt=[]}=Ee[Ke.id]||{};tt.length===1?Je=void 0:tt.length>1&&(Je=oM(tt))}else Je=void 0;return{x:Je==null?void 0:Je.x,y:Je==null?void 0:Je.y,z:Je==null?void 0:Je.z}}})),ae&&se){Ee||(Ee=iM(y,se)),Oe||(Oe=Array.from(new Set(fe.map(Ze=>Ze.data[se])))),Oe=Oe.filter(Ze=>Ze!==void 0);const Ke={};Oe.forEach(Ze=>{const Je=fe.filter(tt=>tt.data[se]===Ze).map(tt=>y.getNode(tt.id));Ke[Ze]=oM(Je)}),a.centripetalOptions=Object.assign(me,{single:Ze=>a.clusterNodeStrength(Ze),leaf:Ze=>a.clusterNodeStrength(Ze),others:Ze=>a.clusterNodeStrength(Ze),center:Ze=>{const Je=Ke[Ze.data[se]];return{x:Je==null?void 0:Je.x,y:Je==null?void 0:Je.y,z:Je==null?void 0:Je.z}}})}const{leaf:ke,single:We,others:je}=a.centripetalOptions||{};ke&&typeof ke!="function"&&(a.centripetalOptions.leaf=()=>ke),We&&typeof We!="function"&&(a.centripetalOptions.single=()=>We),je&&typeof je!="function"&&(a.centripetalOptions.others=()=>je)}runOneStep(a,y,x,b,z){const ee={},re=a.getAllNodes(),ae=a.getAllEdges();if(!(re!=null&&re.length))return;const{monitor:se}=z;if(this.calRepulsive(a,ee,z),ae&&this.calAttractive(a,ee,z),this.calGravity(a,y,ee,z),this.updateVelocity(a,ee,b,z),se){const fe=this.calTotalEnergy(ee,re);se({energy:fe,nodes:y.getAllNodes(),edges:y.getAllEdges(),iterations:x})}}calTotalEnergy(a,y){if(!(y!=null&&y.length))return 0;let x=0;return y.forEach((b,z)=>{const ee=a[b.id].x,re=a[b.id].y,ae=this.options.dimensions===3?a[b.id].z:0,se=ee*ee+re*re+ae*ae,{mass:fe=1}=b.data;x+=fe*se*.5}),x}calRepulsive(a,y,x){const{dimensions:b,factor:z,coulombDisScale:ee}=x;lz(a,z,ee*ee,y,b)}calAttractive(a,y,x){const{dimensions:b,nodeSize:z}=x;a.getAllEdges().forEach((ee,re)=>{const{source:ae,target:se}=ee,fe=a.getNode(ae),me=a.getNode(se);if(!fe||!me)return;let Ee=me.data.x-fe.data.x,Oe=me.data.y-fe.data.y,ke=b===3?me.data.z-fe.data.z:0;!Ee&&!Oe&&(Ee=Math.random()*.01,Oe=Math.random()*.01,b===3&&!ke&&(ke=Math.random()*.01));const We=Math.sqrt(Ee*Ee+Oe*Oe+ke*ke);if(We{const{id:We,data:je}=ke,{mass:Ke,x:Ze,y:Je,z:tt}=je,st=y.getNode(We);let gt=0,mt=0,ct=0,Lt=Ee;const _t=a.getDegree(We,"in"),Yt=a.getDegree(We,"out"),$t=a.getDegree(We,"both"),En=z==null?void 0:z(st,$t);if(En){const[on,Fn,tr]=En;gt=Ze-on,mt=Je-Fn,Lt=tr}else gt=Ze-me[0],mt=Je-me[1],ct=tt-me[2];if(Lt&&(x[We].x-=Lt*gt/Ke,x[We].y-=Lt*mt/Ke,x[We].z-=Lt*ct/Ke),Oe){const{leaf:on,single:Fn,others:tr,center:Cn}=Oe,{x:xn,y:Ln,z:nr,centerStrength:An}=(Cn==null?void 0:Cn(st,re,ae,se,fe))||{x:0,y:0,z:0,centerStrength:0};if(!Wi(xn)||!Wi(Ln))return;const fr=(Ze-xn)/Ke,ra=(Je-Ln)/Ke,aa=(tt-nr)/Ke;if(An&&(x[We].x-=An*fr,x[We].y-=An*ra,x[We].z-=An*aa),$t===0){const Sr=Fn(st);if(!Sr)return;x[We].x-=Sr*fr,x[We].y-=Sr*ra,x[We].z-=Sr*aa;return}if(_t===0||Yt===0){const Sr=on(st,re,ae);if(!Sr)return;x[We].x-=Sr*fr,x[We].y-=Sr*ra,x[We].z-=Sr*aa;return}const Gr=tr(st);if(!Gr)return;x[We].x-=Gr*fr,x[We].y-=Gr*ra,x[We].z-=Gr*aa}})}updateVelocity(a,y,x,b){const{damping:z,maxSpeed:ee,interval:re,dimensions:ae}=b,se=a.getAllNodes();se!=null&&se.length&&se.forEach(fe=>{const{id:me}=fe;let Ee=(x[me].x+y[me].x*re)*z||.01,Oe=(x[me].y+y[me].y*re)*z||.01,ke=ae===3?(x[me].z+y[me].z*re)*z||.01:0;const We=Math.sqrt(Ee*Ee+Oe*Oe+ke*ke);if(We>ee){const je=ee/We;Ee=je*Ee,Oe=je*Oe,ke=je*ke}x[me]={x:Ee,y:Oe,z:ke}})}updatePosition(a,y,x,b){const{distanceThresholdMode:z,interval:ee,dimensions:re}=b,ae=y.getAllNodes();if(!(ae!=null&&ae.length)){this.judgingDistance=0;return}let se=0;z==="max"?this.judgingDistance=-1/0:z==="min"&&(this.judgingDistance=1/0),ae.forEach(fe=>{const{id:me}=fe,Ee=a.getNode(me);if(Wi(Ee.data.fx)&&Wi(Ee.data.fy)){y.mergeNodeData(me,{x:Ee.data.fx,y:Ee.data.fy,z:re===3?Ee.data.fz:void 0});return}const Oe=x[me].x*ee,ke=x[me].y*ee,We=re===3?x[me].z*ee:0;y.mergeNodeData(me,{x:fe.data.x+Oe,y:fe.data.y+ke,z:fe.data.z+We});const je=Math.sqrt(Oe*Oe+ke*ke+We*We);switch(z){case"max":this.judgingDistanceje&&(this.judgingDistance=je);break;default:se=se+je;break}}),(!z||z==="mean")&&(this.judgingDistance=se/ae.length)}}const iM=(E,a)=>{const y=E.getAllNodes();if(!(y!=null&&y.length))return{};const x={};return y.forEach((b,z)=>{E.getDegree(b.id,"both")===1&&(x[b.id]=hz(E,"leaf",b,a))}),x},hz=(E,a,y,x)=>{const b=E.getDegree(y.id,"in"),z=E.getDegree(y.id,"out");let ee=y,re=[];b===0?(ee=E.getSuccessors(y.id)[0],re=E.getNeighbors(ee.id)):z===0&&(ee=E.getPredecessors(y.id)[0],re=E.getNeighbors(ee.id)),re=re.filter(se=>E.getDegree(se.id,"in")===0||E.getDegree(se.id,"out")===0);const ae=gz(E,a,x,y,re);return{coreNode:ee,siblingLeaves:re,sameTypeLeaves:ae}},gz=(E,a,y,x,b)=>{const z=x.data[y]||"";let ee=(b==null?void 0:b.filter(re=>re.data[y]===z))||[];return a==="leaf"&&(ee=ee.filter(re=>E.getDegree(re.id,"in")===0||E.getDegree(re.id,"out")===0)),ee},oM=E=>{const a={x:0,y:0};E.forEach(x=>{const{x:b,y:z}=x.data;a.x+=b||0,a.y+=z||0});const y=E.length||1;return{x:a.x/y,y:a.y/y}},bx=(E,a)=>a.map(y=>{const{id:x,data:b}=y,z=E.getNode(x);return Object.assign(Object.assign({},z),{data:Object.assign(Object.assign({},z.data),{x:b.x,y:b.y,z:b.z})})});var Ls=Ie(49529);const b$=Ls.XA,C$=Ls.a_,P$=Ls.yQ,w$=Ls.Hs,M$=Ls.Ec,D$=Ls.dx,I$=Ls.LU,T$=Ls.Rm,Ch=Ls.y3,O$=Ls.qK,L$=Ls.pb,B$=Ls.j,N$=Ls.sO,R$=Ls.BZ,F$=Ls.EK,k$=Ls.Db,_$=Ls.Fx,z$=Ls.tU,U$=Ls.Ym,W$=Ls.rs,j$=Ls.QR,G$=Ls.TB,H$=Ls.oH,sM=Ls.Sc,V$=Ls.BN,K$=Ls.it,Z$=Ls.$r,Q$=Ls.QM,Y$=Ls.AV;var X$=(Ls.y3,Ls.y3);const J$=Ls.GH,q$=Ls.SO,$$=Ls.uZ,eee=Ls.yU,tee=Ls.F1,nee=Ls.re,lM=E=>{const a=[],y=E.length;for(let x=0;xa[b][x]+a[x][z]&&(a[b][z]=a[b][x]+a[x][z]);return a},uM=(E,a)=>{const{nodes:y,edges:x}=E,b=[],z={};if(!y)throw new Error("invalid nodes data!");return y&&y.forEach((ee,re)=>{z[ee.id]=re;const ae=[];b.push(ae)}),x==null||x.forEach(ee=>{const{source:re,target:ae}=ee,se=z[re],fe=z[ae];se===void 0||fe===void 0||(b[se][fe]=1,a||(b[fe][se]=1))}),b},vz=(E,a)=>{const y=[];return E.forEach(x=>{const b=[];x.forEach(z=>{b.push(z*a)}),y.push(b)}),y},mz=E=>{let a=1/0,y=1/0,x=-1/0,b=-1/0;return E.forEach(z=>{let ee=z.data.size;zf(ee)?ee.length===1&&(ee=[ee[0],ee[0]]):Wi(ee)?ee=[ee,ee]:(ee===void 0||isNaN(ee))&&(ee=[30,30]);const re=[ee[0]/2,ee[1]/2],ae=z.data.x-re[0],se=z.data.x+re[0],fe=z.data.y-re[1],me=z.data.y+re[1];a>ae&&(a=ae),y>fe&&(y=fe),xMath.sqrt((E.x-a.x)*(E.x-a.x)+(E.y-a.y)*(E.y-a.y)),Cx=(E,a,y,x="TB",b,z={})=>{if(!(a!=null&&a.length))return;const{stopBranchFn:ee,stopAllFn:re}=z;for(let ae=0;ae{const Ke=Jc(re[je]);Ke.data.x=We[0]+z[0],Ke.data.y=We[1]+z[1],Oe.push(Ke)}),a&&Oe.forEach(We=>y.mergeNodeData(We.id,{x:We.data.x,y:We.data.y})),{nodes:Oe,edges:ae}})}}const yz=E=>{let a=-999999;E.forEach(y=>{y.forEach(x=>{x!==1/0&&a{y.forEach((b,z)=>{b===1/0&&(E[x][z]=a)})})},Ez=E=>{const y=Ch.mul(Ch.pow(E,2),-.5),x=y.mean("row"),b=y.mean("column"),z=y.mean();y.add(z).subRowVector(x).subColumnVector(b);const ee=new sM(y),re=Ch.sqrt(ee.diagonalMatrix).diagonal();return ee.leftSingularVectors.toJSON().map(ae=>Ch.mul([ae],[re]).toJSON()[0].splice(0,2))};function Px(E){return!!E.tick&&!!E.stop}const Az={gForce:!0,force2:!0,d3force:!0,fruchterman:!0,forceAtlas2:!0,force:!0,"graphin-force":!0},xz={center:[0,0],comboPadding:10,treeKey:"combo"};class Sz{constructor(a={}){this.options=a,this.id="comboCombined",this.options=Object.assign(Object.assign({},xz),a)}execute(a,y){return(0,Bt.mG)(this,void 0,void 0,function*(){return this.genericComboCombinedLayout(!1,a,y)})}assign(a,y){return(0,Bt.mG)(this,void 0,void 0,function*(){yield this.genericComboCombinedLayout(!0,a,y)})}genericComboCombinedLayout(a,y,x){return(0,Bt.mG)(this,void 0,void 0,function*(){const b=this.initVals(Object.assign(Object.assign({},this.options),x)),{center:z,treeKey:ee,outerLayout:re}=b,ae=y.getAllNodes().filter(ct=>!ct.data._isCombo),se=y.getAllNodes().filter(ct=>ct.data._isCombo),fe=y.getAllEdges(),me=ae==null?void 0:ae.length;if(!me||me===1)return Dg(y,a,z);const Ee=[],Oe=new Map;ae.forEach(ct=>{Oe.set(ct.id,ct)});const ke=new Map;se.forEach(ct=>{ke.set(ct.id,ct)});const We=new Map,je=this.getInnerGraphs(y,ee,Oe,ke,fe,b,We);yield Promise.all(je);const Ke=new Map,Ze=[],Je=new Map;let tt=!0;y.getRoots(ee).forEach(ct=>{const Lt=We.get(ct.id),_t=ke.get(ct.id)||Oe.get(ct.id),Yt={id:ct.id,data:Object.assign(Object.assign({},ct.data),{x:Lt.data.x||_t.data.x,y:Lt.data.y||_t.data.y,fx:Lt.data.fx||_t.data.fx,fy:Lt.data.fy||_t.data.fy,mass:Lt.data.mass||_t.data.mass,size:Lt.data.size})};Ze.push(Yt),Ke.set(ct.id,!0),!isNaN(Yt.data.x)&&Yt.data.x!==0&&!isNaN(Yt.data.y)&&Yt.data.y!==0?tt=!1:(Yt.data.x=Math.random()*100,Yt.data.y=Math.random()*100),Cx(y,[ct],$t=>{$t.id!==ct.id&&Je.set($t.id,ct.id)},"TB",ee)});const st=[];fe.forEach(ct=>{const Lt=Je.get(ct.source)||ct.source,_t=Je.get(ct.target)||ct.target;Lt!==_t&&Ke.has(Lt)&&Ke.has(_t)&&st.push({id:ct.id,source:Lt,target:_t,data:{}})});let gt;if(Ze!=null&&Ze.length){if(Ze.length===1)Ze[0].data.x=z[0],Ze[0].data.y=z[1];else{const ct=new iu({nodes:Ze,edges:st}),Lt=re||new aM;tt&&Az[Lt.id]&&(yield(Ze.length<100?new dM:new Ex).assign(ct));const _t=Object.assign({center:z,kg:5,preventOverlap:!0,animate:!1},Lt.id==="force"?{gravity:1,factor:4,linkDistance:(Yt,$t,En)=>{const on=Math.max(...$t.data.size)||32,Fn=Math.max(...En.data.size)||32;return on/2+Fn/2+200}}:{});gt=yield fM(Lt,ct,_t)}We.forEach(ct=>{var Lt;const _t=gt.nodes.find(En=>En.id===ct.id);if(_t){const{x:En,y:on}=_t.data;ct.data.visited=!0,ct.data.x=En,ct.data.y=on,Ee.push({id:ct.id,data:{x:En,y:on}})}const{x:Yt,y:$t}=ct.data;(Lt=ct.data.nodes)===null||Lt===void 0||Lt.forEach(En=>{Ee.push({id:En.id,data:{x:En.data.x+Yt,y:En.data.y+$t}})})}),We.forEach(({data:ct})=>{const{x:Lt,y:_t,visited:Yt,nodes:$t}=ct;$t==null||$t.forEach(En=>{if(!Yt){const on=Ee.find(Fn=>Fn.id===En.id);on.data.x+=Lt||0,on.data.y+=_t||0}})})}return a&&Ee.forEach(ct=>{y.mergeNodeData(ct.id,{x:ct.data.x,y:ct.data.y})}),{nodes:Ee,edges:fe}})}initVals(a){const y=Object.assign({},a),{nodeSize:x,spacing:b,comboPadding:z}=a;let ee,re;if(Wi(b)?re=()=>b:$i(b)?re=b:re=()=>0,y.spacing=re,!x)ee=se=>{const fe=re(se);return se.size?zf(se.size)?((se.size[0]>se.size[1]?se.size[0]:se.size[1])+fe)/2:$l(se.size)?((se.size.width>se.size.height?se.size.width:se.size.height)+fe)/2:(se.size+fe)/2:32+fe/2};else if($i(x))ee=se=>{const fe=x(se),me=re(se);return zf(se.size)?((se.size[0]>se.size[1]?se.size[0]:se.size[1])+me)/2:((fe||32)+me)/2};else if(zf(x)){const fe=(x[0]>x[1]?x[0]:x[1])/2;ee=me=>fe+re(me)/2}else{const se=x/2;ee=fe=>se+re(fe)/2}y.nodeSize=ee;let ae;return Wi(z)?ae=()=>z:zf(z)?ae=()=>Math.max.apply(null,z):$i(z)?ae=z:ae=()=>0,y.comboPadding=ae,y}getInnerGraphs(a,y,x,b,z,ee,re){const{nodeSize:ae,comboPadding:se,spacing:fe,innerLayout:me}=ee,Ee=me||new Ex({}),Oe={center:[0,0],preventOverlap:!0,nodeSpacing:fe},ke=[],We=je=>{let Ke=(se==null?void 0:se(je))||10;return zf(Ke)&&(Ke=Math.max(...Ke)),{size:Ke?[Ke*2,Ke*2]:[30,30],padding:Ke}};return a.getRoots(y).forEach(je=>{re.set(je.id,{id:je.id,data:{nodes:[],size:We(je).size}});let Ke=Promise.resolve();Cx(a,[je],Ze=>{var Je;if(!Ze.data._isCombo)return;const{size:tt,padding:st}=We(Ze);if(!(!((Je=a.getChildren(Ze.id,y))===null||Je===void 0)&&Je.length))re.set(Ze.id,{id:Ze.id,data:Object.assign(Object.assign({},Ze.data),{size:tt})});else{const gt=re.get(Ze.id);re.set(Ze.id,{id:Ze.id,data:Object.assign({nodes:[]},gt==null?void 0:gt.data)});const mt=new Map,ct=a.getChildren(Ze.id,y).map(Yt=>{if(Yt.data._isCombo)return re.has(Yt.id)||re.set(Yt.id,{id:Yt.id,data:Object.assign({},Yt.data)}),mt.set(Yt.id,!0),re.get(Yt.id);const $t=x.get(Yt.id)||b.get(Yt.id);return mt.set(Yt.id,!0),{id:Yt.id,data:Object.assign(Object.assign({},$t.data),Yt.data)}}),Lt={nodes:ct,edges:z.filter(Yt=>mt.has(Yt.source)&&mt.has(Yt.target))};let _t=1/0;ct.forEach(Yt=>{var $t;let{size:En}=Yt.data;En||(En=(($t=re.get(Yt.id))===null||$t===void 0?void 0:$t.data.size)||(ae==null?void 0:ae(Yt))||[30,30]),Wi(En)&&(En=[En,En]);const[on,Fn]=En;_t>on&&(_t=on),_t>Fn&&(_t=Fn),Yt.data.size=En}),Ke=Ke.then(()=>(0,Bt.mG)(this,void 0,void 0,function*(){const Yt=new iu(Lt);yield fM(Ee,Yt,Oe,!0);const{minX:$t,minY:En,maxX:on,maxY:Fn}=mz(ct),tr={x:(on+$t)/2,y:(Fn+En)/2};Lt.nodes.forEach(xn=>{xn.data.x-=tr.x,xn.data.y-=tr.y});const Cn=[Math.max(on-$t,_t)+st*2,Math.max(Fn-En,_t)+st*2];re.get(Ze.id).data.size=Cn,re.get(Ze.id).data.nodes=ct}))}return!0},"BT",y),ke.push(Ke)}),ke}}function fM(E,a,y,x){var b;return(0,Bt.mG)(this,void 0,void 0,function*(){return Px(E)?(E.execute(a,y),E.stop(),E.tick((b=y.iterations)!==null&&b!==void 0?b:300)):x?yield E.assign(a,y):yield E.execute(a,y)})}function xu(E){return function(){return E}}function Ph(E){return(E()-.5)*1e-6}function bz(E){return E.index}function hM(E,a){var y=E.get(a);if(!y)throw new Error("node not found: "+a);return y}function Cz(E){var a=bz,y=me,x,b=xu(30),z,ee,re,ae,se,fe=1;E==null&&(E=[]);function me(je){return 1/Math.min(re[je.source.index],re[je.target.index])}function Ee(je){for(var Ke=0,Ze=E.length;Ke[a(st,gt,ee),st])),tt;for(je=0,re=new Array(Ke);je{}};function gM(){for(var E=0,a=arguments.length,y={},x;E=0&&(x=y.slice(b+1),y=y.slice(0,b)),y&&!a.hasOwnProperty(y))throw new Error("unknown type: "+y);return{type:y,name:x}})}Sy.prototype=gM.prototype={constructor:Sy,on:function(E,a){var y=this._,x=wz(E+"",y),b,z=-1,ee=x.length;if(arguments.length<2){for(;++z0)for(var y=new Array(b),x=0,b,z;x=0&&E._call.call(void 0,a),E=E._next;--S0}function AM(){Ig=(Cy=Wv.now())+Py,S0=_v=0;try{Tz()}finally{S0=0,Lz(),Ig=0}}function Oz(){var E=Wv.now(),a=E-Cy;a>mM&&(Py-=a,Cy=E)}function Lz(){for(var E,a=by,y,x=1/0;a;)a._call?(x>a._time&&(x=a._time),E=a,a=a._next):(y=a._next,a._next=null,a=E?E._next=y:by=y);Uv=E,Mx(x)}function Mx(E){if(!S0){_v&&(_v=clearTimeout(_v));var a=E-Ig;a>24?(E<1/0&&(_v=setTimeout(AM,E-Wv.now()-Py)),zv&&(zv=clearInterval(zv))):(zv||(Cy=Wv.now(),zv=setInterval(Oz,mM)),S0=1,pM(AM))}}const Bz=1664525,Nz=1013904223,xM=4294967296;function Rz(){let E=1;return()=>(E=(Bz*E+Nz)%xM)/xM}function Fz(E){return E.x}function kz(E){return E.y}var _z=10,zz=Math.PI*(3-Math.sqrt(5));function Uz(E){var a,y=1,x=.001,b=1-Math.pow(x,1/300),z=0,ee=.6,re=new Map,ae=EM(me),se=Dz("tick","end"),fe=Rz();E==null&&(E=[]);function me(){Ee(),se.call("tick",a),y1?(je==null?re.delete(We):re.set(We,ke(je)),a):re.get(We)},find:function(We,je,Ke){var Ze=0,Je=E.length,tt,st,gt,mt,ct;for(Ke==null?Ke=1/0:Ke*=Ke,Ze=0;Ze1?(se.on(We,je),a):se.on(We)}}}function Wz(){var E,a,y,x,b=xu(-30),z,ee=1,re=1/0,ae=.81;function se(Oe){var ke,We=E.length,je=xy(E,Fz,kz).visitAfter(me);for(x=Oe,ke=0;ke=re)return;(Oe.data!==a||Oe.next)&&(Ke===0&&(Ke=Ph(y),tt+=Ke*Ke),Ze===0&&(Ze=Ph(y),tt+=Ze*Ze),ttEe.index){var Yt=Oe-ct.x-ct.vx,$t=ke-ct.y-ct.vy,En=Yt*Yt+$t*$t;En<_t*_t&&(Yt===0&&(Yt=Ph(x),En+=Yt*Yt),$t===0&&($t=Ph(x),En+=$t*$t),En=(_t-(En=Math.sqrt(En)))/En*b,Ee.vx+=(Yt*=En)*(_t=(Lt*=Lt)/(je+Lt)),Ee.vy+=($t*=En)*_t,ct.vx-=Yt*(_t=1-_t),ct.vy-=$t*_t)}return}return tt>Oe+_t||gtke+_t||mtse.r&&(se.r=se[fe].r)}function ae(){if(a){var se,fe=a.length,me;for(y=new Array(fe),se=0;sey.id},manyBody:{},center:{x:0,y:0}},this.context={options:{},assign:!1,nodes:[],edges:[]},Uu(this.options,a),this.options.forceSimulation&&(this.simulation=this.options.forceSimulation)}execute(a,y){return(0,Bt.mG)(this,void 0,void 0,function*(){return this.genericLayout(!1,a,y)})}assign(a,y){return(0,Bt.mG)(this,void 0,void 0,function*(){yield this.genericLayout(!0,a,y)})}stop(){this.simulation.stop()}tick(a){return this.simulation.tick(a),this.getResult()}restart(){this.simulation.restart()}setFixedPosition(a,y){const x=this.context.nodes.find(b=>b.id===a);x&&y.forEach((b,z)=>{if(typeof b=="number"||b===null){const ee=["fx","fy","fz"][z];x[ee]=b}})}getOptions(a){var y,x;const b=Uu({},this.options,a);return b.collide&&((y=b.collide)===null||y===void 0?void 0:y.radius)===void 0&&(b.collide=b.collide||{},b.collide.radius=(x=b.nodeSize)!==null&&x!==void 0?x:10),b.iterations===void 0&&(b.link&&b.link.iterations===void 0&&(b.iterations=b.link.iterations),b.collide&&b.collide.iterations===void 0&&(b.iterations=b.collide.iterations)),this.context.options=b,b}genericLayout(a,y,x){var b;return(0,Bt.mG)(this,void 0,void 0,function*(){const z=this.getOptions(x),ee=y.getAllNodes().map(({id:fe,data:me})=>Object.assign(Object.assign({id:fe},me),Cg(me.data,this.config.inputNodeAttrs))),re=y.getAllEdges().map(fe=>Object.assign({},fe));Object.assign(this.context,{assign:a,nodes:ee,edges:re,graph:y});const ae=new Promise(fe=>{this.resolver=fe}),se=this.setSimulation(z);return se.nodes(ee),(b=se.force("link"))===null||b===void 0||b.links(re),ae})}getResult(){const{assign:a,nodes:y,edges:x,graph:b}=this.context,z=y.map(re=>({id:re.id,data:Object.assign(Object.assign({},re.data),Cg(re,this.config.outputNodeAttrs))})),ee=x.map(({id:re,source:ae,target:se,data:fe})=>({id:re,source:typeof ae=="object"?ae.id:ae,target:typeof se=="object"?se.id:se,data:fe}));return a&&z.forEach(re=>b.mergeNodeData(re.id,re.data)),{nodes:z,edges:ee}}initSimulation(){return Uz()}setSimulation(a){const y=this.simulation||this.options.forceSimulation||this.initSimulation();return this.simulation||(this.simulation=y.on("tick",()=>{var x;return(x=a.onTick)===null||x===void 0?void 0:x.call(a,this.getResult())}).on("end",()=>{var x;return(x=this.resolver)===null||x===void 0?void 0:x.call(this,this.getResult())})),SM(y,this.config.simulationAttrs.map(x=>[x,a[x]])),Object.entries(this.forceMap).forEach(([x,b])=>{const z=x;if(a[x]){let ee=y.force(z);ee||(ee=b(),y.force(z,ee)),SM(ee,Object.entries(a[z]))}else y.force(z,null)}),y}}const SM=(E,a)=>a.reduce((y,[x,b])=>!y[x]||b===void 0?y:y[x].call(E,b),E);var bM=Ie(92546),Xz=Ie.n(bM);class wy{constructor(a){this.id="dagre",this.options={},Object.assign(this.options,wy.defaultOptions,a)}execute(a,y){return(0,Bt.mG)(this,void 0,void 0,function*(){return this.genericDagreLayout(!1,a,Object.assign(Object.assign({},this.options),y))})}assign(a,y){return(0,Bt.mG)(this,void 0,void 0,function*(){yield this.genericDagreLayout(!0,a,Object.assign(Object.assign({},this.options),y))})}genericDagreLayout(a,y,x){return(0,Bt.mG)(this,void 0,void 0,function*(){const{nodeSize:b}=x,z=new bM.graphlib.Graph;z.setGraph(x),z.setDefaultEdgeLabel(()=>({}));const ee=y.getAllNodes(),re=y.getAllEdges();[...ee,...re].some(({id:se})=>Wi(se))&&console.error("Dagre layout only support string id, it will convert number to string."),y.getAllNodes().forEach(se=>{const{id:fe}=se,me=Object.assign({},se.data);if(b!==void 0){const[Ee,Oe]=kv($i(b)?b(se):b);Object.assign(me,{width:Ee,height:Oe})}z.setNode(fe.toString(),me)}),y.getAllEdges().forEach(({id:se,source:fe,target:me})=>{z.setEdge(fe.toString(),me.toString(),{id:se})}),Xz().layout(z);const ae={nodes:[],edges:[]};return z.nodes().forEach(se=>{const fe=z.node(se);ae.nodes.push({id:se,data:fe}),a&&y.mergeNodeData(se,fe)}),z.edges().forEach(se=>{const fe=z.edge(se),{id:me}=fe,Ee=(0,Bt._T)(fe,["id"]),{v:Oe,w:ke}=se;ae.edges.push({id:me,source:Oe,target:ke,data:Ee}),a&&y.mergeEdgeData(me,Ee)}),ae})}}wy.defaultOptions={};class Dx{constructor(a){this.id=a.id||0,this.rx=a.rx,this.ry=a.ry,this.fx=0,this.fy=0,this.mass=a.mass,this.degree=a.degree,this.g=a.g||0}distanceTo(a){const y=this.rx-a.rx,x=this.ry-a.ry;return Math.hypot(y,x)}setPos(a,y){this.rx=a,this.ry=y}resetForce(){this.fx=0,this.fy=0}addForce(a){const y=a.rx-this.rx,x=a.ry-this.ry;let b=Math.hypot(y,x);b=b<1e-4?1e-4:b;const z=this.g*(this.degree+1)*(a.degree+1)/b;this.fx+=z*y/b,this.fy+=z*x/b}in(a){return a.contains(this.rx,this.ry)}add(a){const y=this.mass+a.mass,x=(this.rx*this.mass+a.rx*a.mass)/y,b=(this.ry*this.mass+a.ry*a.mass)/y,z=this.degree+a.degree,ee={rx:x,ry:b,mass:y,degree:z};return new Dx(ee)}}class b0{constructor(a){this.xmid=a.xmid,this.ymid=a.ymid,this.length=a.length,this.massCenter=a.massCenter||[0,0],this.mass=a.mass||1}getLength(){return this.length}contains(a,y){const x=this.length/2;return a<=this.xmid+x&&a>=this.xmid-x&&y<=this.ymid+x&&y>=this.ymid-x}NW(){const a=this.xmid-this.length/4,y=this.ymid+this.length/4,x=this.length/2,b={xmid:a,ymid:y,length:x};return new b0(b)}NE(){const a=this.xmid+this.length/4,y=this.ymid+this.length/4,x=this.length/2,b={xmid:a,ymid:y,length:x};return new b0(b)}SW(){const a=this.xmid-this.length/4,y=this.ymid-this.length/4,x=this.length/2,b={xmid:a,ymid:y,length:x};return new b0(b)}SE(){const a=this.xmid+this.length/4,y=this.ymid-this.length/4,x=this.length/2,b={xmid:a,ymid:y,length:x};return new b0(b)}}class C0{constructor(a){this.body=null,this.quad=null,this.NW=null,this.NE=null,this.SW=null,this.SE=null,this.theta=.5,a!=null&&(this.quad=a)}insert(a){if(this.body==null){this.body=a;return}this._isExternal()?(this.quad&&(this.NW=new C0(this.quad.NW()),this.NE=new C0(this.quad.NE()),this.SW=new C0(this.quad.SW()),this.SE=new C0(this.quad.SE())),this._putBody(this.body),this._putBody(a),this.body=this.body.add(a)):(this.body=this.body.add(a),this._putBody(a))}_putBody(a){this.quad&&(a.in(this.quad.NW())&&this.NW?this.NW.insert(a):a.in(this.quad.NE())&&this.NE?this.NE.insert(a):a.in(this.quad.SW())&&this.SW?this.SW.insert(a):a.in(this.quad.SE())&&this.SE&&this.SE.insert(a))}_isExternal(){return this.NW==null&&this.NE==null&&this.SW==null&&this.SE==null}updateForce(a){if(!(this.body==null||a===this.body))if(this._isExternal())a.addForce(this.body);else{const y=this.quad?this.quad.getLength():0,x=this.body.distanceTo(a);y/xJc(Ke,[re,ae])),ke=b.filter(Ke=>{const{source:Ze,target:Je}=Ke;return Ze!==Je}),We=new iu({nodes:Oe,edges:ke}),je=this.getSizes(We,me);if(this.run(We,y,fe,je,a,ee),se){for(let Ze=0;Ze250&&(x.barnesHut=!0),ae===void 0&&y>100&&(x.prune=!0),se===0&&!ae?(x.maxIteration=250,y<=200&&y>100?x.maxIteration=1e3:y>200&&(x.maxIteration=1200)):se===0&&ae&&(x.maxIteration=100,y<=200&&y>100?x.maxIteration=500:y>200&&(x.maxIteration=950)),fe||(x.kr=50,y>100&&y<=500?x.kr=20:y>500&&(x.kr=1)),me||(x.kg=20,y>100&&y<=500?x.kg=10:y>500&&(x.kg=1)),x}run(a,y,x,b,z,ee){const{kr:re,barnesHut:ae,onTick:se}=ee,fe=a.getAllNodes();let me=0,Ee=x;const Oe={},ke={},We={};for(let je=0;je0;)me=this.oneStep(a,{iter:Ee,preventOverlapIters:50,krPrime:100,sg:me,forces:Oe,preForces:ke,bodies:We,sizes:b},ee),Ee--,se==null||se({nodes:fe,edges:y.getAllEdges()});return a}oneStep(a,y,x){const{iter:b,preventOverlapIters:z,krPrime:ee,sg:re,preForces:ae,bodies:se,sizes:fe}=y;let{forces:me}=y;const{preventOverlap:Ee,barnesHut:Oe}=x,ke=a.getAllNodes();for(let We=0;Wez||!Ee)?me=this.getOptRepGraForces(a,me,se,x):me=this.getRepGraForces(a,b,z,me,ee,fe,x),this.updatePos(a,me,ae,re,x)}getAttrForces(a,y,x,b,z,ee){const{preventOverlap:re,dissuadeHubs:ae,mode:se,prune:fe}=ee,me=a.getAllEdges();for(let Ee=0;Ee0&&(st=tt,gt=tt),z[Oe][0]+=st*Je[0],z[ke][0]-=gt*Je[0],z[Oe][1]+=st*Je[1],z[ke][1]-=gt*Je[1]}return z}getOptRepGraForces(a,y,x,b){const{kg:z,center:ee,prune:re}=b,ae=a.getAllNodes(),se=ae.length;let fe=9e10,me=-9e10,Ee=9e10,Oe=-9e10;for(let Ze=0;Ze=me&&(me=tt.x),tt.x<=fe&&(fe=tt.x),tt.y>=Oe&&(Oe=tt.y),tt.y<=Ee&&(Ee=tt.y))}const ke=Math.max(me-fe,Oe-Ee),We={xmid:(me+fe)/2,ymid:(Oe+Ee)/2,length:ke,massCenter:ee,mass:se},je=new b0(We),Ke=new C0(je);for(let Ze=0;Ze0&&(_t=se*(Ke+1)*(mt+1)/Lt),b[je.id][0]-=_t*ct[0],b[gt.id][0]+=_t*ct[0],b[je.id][1]-=_t*ct[1],b[gt.id][1]+=_t*ct[1]}const Ze=[je.data.x-me[0],je.data.y-me[1]],Je=Math.hypot(Ze[0],Ze[1]);Ze[0]=Ze[0]/Je,Ze[1]=Ze[1]/Je;const tt=fe*(Ke+1);b[je.id][0]-=tt*Ze[0],b[je.id][1]-=tt*Ze[1]}return b}updatePos(a,y,x,b,z){const{ks:ee,tao:re,prune:ae,ksmax:se}=z,fe=a.getAllNodes(),me=fe.length,Ee=[],Oe=[];let ke=0,We=0,je=b;for(let Ze=0;Ze1.5*Ke?1.5*Ke:je);for(let Ze=0;Zect?ct:gt;const Lt=gt*y[Je][0],_t=gt*y[Je][1];a.mergeNodeData(Je,{x:tt.x+Lt,y:tt.y+_t})}return je}}const $z={maxIteration:1e3,gravity:10,speed:5,clustering:!1,clusterGravity:10,width:300,height:300,nodeClusterBy:"cluster"},eU=800;class tU{constructor(a={}){this.options=a,this.id="fruchterman",this.timeInterval=0,this.running=!1,this.options=Object.assign(Object.assign({},$z),a)}execute(a,y){return(0,Bt.mG)(this,void 0,void 0,function*(){return this.genericFruchtermanLayout(!1,a,y)})}assign(a,y){return(0,Bt.mG)(this,void 0,void 0,function*(){yield this.genericFruchtermanLayout(!0,a,y)})}stop(){this.timeInterval&&typeof window!="undefined"&&window.clearInterval(this.timeInterval),this.running=!1}tick(a=this.options.maxIteration||1){if(this.lastResult)return this.lastResult;for(let x=0;xthis.lastGraph.mergeNodeData(x.id,{x:x.data.x,y:x.data.y,z:this.options.dimensions===3?x.data.z:void 0})),y}genericFruchtermanLayout(a,y,x){return(0,Bt.mG)(this,void 0,void 0,function*(){if(this.running)return;const b=this.formatOptions(x),{dimensions:z,width:ee,height:re,center:ae,clustering:se,nodeClusterBy:fe,maxIteration:me,onTick:Ee}=b,Oe=y.getAllNodes(),ke=y.getAllEdges();if(!(Oe!=null&&Oe.length)){const Je={nodes:[],edges:ke};return this.lastResult=Je,Je}if(Oe.length===1){a&&y.mergeNodeData(Oe[0].id,{x:ae[0],y:ae[1],z:z===3?ae[2]:void 0});const Je={nodes:[Object.assign(Object.assign({},Oe[0]),{data:Object.assign(Object.assign({},Oe[0].data),{x:ae[0],y:ae[1],z:z===3?ae[2]:void 0})})],edges:ke};return this.lastResult=Je,Je}const We=Oe.map(Je=>Jc(Je,[ee,re])),je=new iu({nodes:We,edges:ke}),Ke={};if(se&&We.forEach(Je=>{const tt=Je.data[fe];Ke[tt]||(Ke[tt]={name:tt,cx:0,cy:0,count:0})}),this.lastLayoutNodes=We,this.lastLayoutEdges=ke,this.lastAssign=a,this.lastGraph=je,this.lastOptions=b,this.lastClusterMap=Ke,typeof window=="undefined")return;let Ze=0;return new Promise(Je=>{this.timeInterval=window.setInterval(()=>{if(!this.running){Je({nodes:We,edges:ke});return}this.runOneStep(je,Ke,b),a&&We.forEach(({id:tt,data:st})=>y.mergeNodeData(tt,{x:st.x,y:st.y,z:z===3?st.z:void 0})),Ee==null||Ee({nodes:We,edges:ke}),Ze++,Ze>=me&&(window.clearInterval(this.timeInterval),Je({nodes:We,edges:ke}))},0),this.running=!0})})}formatOptions(a={}){const y=Object.assign(Object.assign({},this.options),a),{clustering:x,nodeClusterBy:b}=y,{center:z,width:ee,height:re}=y;return y.width=!ee&&typeof window!="undefined"?window.innerWidth:ee,y.height=!re&&typeof window!="undefined"?window.innerHeight:re,y.center=z||[y.width/2,y.height/2],y.clustering=x&&!!b,y}runOneStep(a,y,x){const{dimensions:b,height:z,width:ee,gravity:re,center:ae,speed:se,clustering:fe,nodeClusterBy:me,clusterGravity:Ee}=x,Oe=z*ee,ke=Math.sqrt(Oe)/10,We=a.getAllNodes(),je=Oe/(We.length+1),Ke=Math.sqrt(je),Ze={};if(this.applyCalculate(a,Ze,Ke,je),fe){for(const tt in y)y[tt].cx=0,y[tt].cy=0,y[tt].count=0;We.forEach(tt=>{const{data:st}=tt,gt=y[st[me]];Wi(st.x)&&(gt.cx+=st.x),Wi(st.y)&&(gt.cy+=st.y),gt.count++});for(const tt in y)y[tt].cx/=y[tt].count,y[tt].cy/=y[tt].count;const Je=Ee||re;We.forEach((tt,st)=>{const{id:gt,data:mt}=tt;if(!Wi(mt.x)||!Wi(mt.y))return;const ct=y[mt[me]],Lt=Math.sqrt((mt.x-ct.cx)*(mt.x-ct.cx)+(mt.y-ct.cy)*(mt.y-ct.cy)),_t=Ke*Je;Ze[gt].x-=_t*(mt.x-ct.cx)/Lt,Ze[gt].y-=_t*(mt.y-ct.cy)/Lt})}We.forEach((Je,tt)=>{const{id:st,data:gt}=Je;if(!Wi(gt.x)||!Wi(gt.y))return;const mt=.01*Ke*re;Ze[st].x-=mt*(gt.x-ae[0]),Ze[st].y-=mt*(gt.y-ae[1]),b===3&&(Ze[st].z-=mt*(gt.z-ae[2]))}),We.forEach((Je,tt)=>{const{id:st,data:gt}=Je;if(Wi(gt.fx)&&Wi(gt.fy)){gt.x=gt.fx,gt.y=gt.fy,b===3&&(gt.z=gt.fz);return}if(!Wi(gt.x)||!Wi(gt.y))return;const mt=Math.sqrt(Ze[st].x*Ze[st].x+Ze[st].y*Ze[st].y+(b===3?Ze[st].z*Ze[st].z:0));if(mt>0){const ct=Math.min(ke*(se/eU),mt);a.mergeNodeData(st,{x:gt.x+Ze[st].x/mt*ct,y:gt.y+Ze[st].y/mt*ct,z:b===3?gt.z+Ze[st].z/mt*ct:void 0})}})}applyCalculate(a,y,x,b){this.calRepulsive(a,y,b),this.calAttractive(a,y,x)}calRepulsive(a,y,x){const b=a.getAllNodes();b.forEach(({data:z,id:ee},re)=>{y[ee]={x:0,y:0,z:0},b.forEach(({data:ae,id:se},fe)=>{if(re<=fe||!Wi(z.x)||!Wi(ae.x)||!Wi(z.y)||!Wi(ae.y))return;let me=z.x-ae.x,Ee=z.y-ae.y,Oe=this.options.dimensions===3?z.z-ae.z:0,ke=me*me+Ee*Ee+Oe*Oe;ke===0&&(ke=1,me=.01,Ee=.01,Oe=.01);const We=x/ke,je=me*We,Ke=Ee*We,Ze=Oe*We;y[ee].x+=je,y[ee].y+=Ke,y[se].x-=je,y[se].y-=Ke,this.options.dimensions===3&&(y[ee].z+=Ze,y[se].z-=Ze)})})}calAttractive(a,y,x){a.getAllEdges().forEach(z=>{const{source:ee,target:re}=z;if(!ee||!re||ee===re)return;const{data:ae}=a.getNode(ee),{data:se}=a.getNode(re);if(!Wi(se.x)||!Wi(ae.x)||!Wi(se.y)||!Wi(ae.y))return;const fe=se.x-ae.x,me=se.y-ae.y,Ee=this.options.dimensions===3?se.z-ae.z:0,Oe=Math.sqrt(fe*fe+me*me+Ee*Ee)/x,ke=fe*Oe,We=me*Oe,je=Ee*Oe;y[ee].x+=ke,y[ee].y+=We,y[re].x-=ke,y[re].y-=We,this.options.dimensions===3&&(y[ee].z+=je,y[re].z-=je)})}}const nU={begin:[0,0],preventOverlap:!0,preventOverlapPadding:10,condense:!1,rows:void 0,cols:void 0,position:void 0,sortBy:"degree",nodeSize:30,width:300,height:300};class rU{constructor(a={}){this.options=a,this.id="grid",this.options=Object.assign(Object.assign({},nU),a)}execute(a,y){return(0,Bt.mG)(this,void 0,void 0,function*(){return this.genericGridLayout(!1,a,y)})}assign(a,y){return(0,Bt.mG)(this,void 0,void 0,function*(){yield this.genericGridLayout(!0,a,y)})}genericGridLayout(a,y,x){return(0,Bt.mG)(this,void 0,void 0,function*(){const b=Object.assign(Object.assign({},this.options),x),{begin:z=[0,0],condense:ee,preventOverlapPadding:re,preventOverlap:ae,rows:se,cols:fe,nodeSpacing:me,nodeSize:Ee,width:Oe,height:ke,position:We}=b;let{sortBy:je}=b;const Ke=y.getAllNodes(),Ze=y.getAllEdges(),Je=Ke==null?void 0:Ke.length;if(!Je||Je===1)return Dg(y,a,z);const tt=Ke.map(Fn=>Jc(Fn));je!=="id"&&(!Us(je)||tt[0].data[je]===void 0)&&(je="degree"),je==="degree"?tt.sort((Fn,tr)=>y.getDegree(tr.id,"both")-y.getDegree(Fn.id,"both")):je==="id"?tt.sort((Fn,tr)=>Wi(tr.id)&&Wi(Fn.id)?tr.id-Fn.id:`${Fn.id}`.localeCompare(`${tr.id}`)):tt.sort((Fn,tr)=>tr.data[je]-Fn.data[je]);const st=!Oe&&typeof window!="undefined"?window.innerWidth:Oe,gt=!ke&&typeof window!="undefined"?window.innerHeight:ke,mt=Je,ct={rows:se,cols:fe};if(se!=null&&fe!=null)ct.rows=se,ct.cols=fe;else if(se!=null&&fe==null)ct.rows=se,ct.cols=Math.ceil(mt/ct.rows);else if(se==null&&fe!=null)ct.cols=fe,ct.rows=Math.ceil(mt/ct.cols);else{const Fn=Math.sqrt(mt*gt/st);ct.rows=Math.round(Fn),ct.cols=Math.round(st/gt*Fn)}if(ct.rows=Math.max(ct.rows,1),ct.cols=Math.max(ct.cols,1),ct.cols*ct.rows>mt){const Fn=My(ct),tr=Dy(ct);(Fn-1)*tr>=mt?My(ct,Fn-1):(tr-1)*Fn>=mt&&Dy(ct,tr-1)}else for(;ct.cols*ct.rows=mt?Dy(ct,tr+1):My(ct,Fn+1)}let Lt=ee?0:st/ct.cols,_t=ee?0:gt/ct.rows;if(ae||me){const Fn=Mg(10,me),tr=mx(30,Ee,!1);tt.forEach(Cn=>{(!Cn.data.x||!Cn.data.y)&&(Cn.data.x=0,Cn.data.y=0);const xn=y.getNode(Cn.id),[Ln,nr]=kv(tr(xn)||30),An=Fn!==void 0?Fn(Cn):re,fr=Ln+An,ra=nr+An;Lt=Math.max(Lt,fr),_t=Math.max(_t,ra)})}const Yt={},$t={row:0,col:0},En={};for(let Fn=0;Fn{y.mergeNodeData(Fn.id,{x:Fn.data.x,y:Fn.data.y})}),on})}}const My=(E,a)=>{let y;const x=E.rows||5,b=E.cols||5;return a==null?y=Math.min(x,b):Math.min(x,b)===E.rows?E.rows=a:E.cols=a,y},Dy=(E,a)=>{let y;const x=E.rows||5,b=E.cols||5;return a==null?y=Math.max(x,b):Math.max(x,b)===E.rows?E.rows=a:E.cols=a,y},Ix=(E,a)=>E[`c-${a.row}-${a.col}`]||!1,CM=(E,a)=>E[`c-${a.row}-${a.col}`]=!0,PM=(E,a)=>{const y=E.cols||5;a.col++,a.col>=y&&(a.col=0,a.row++)},aU=(E,a,y,x,b,z,ee,re)=>{let ae,se;const fe=b[E.id];if(fe)ae=fe.col*y+y/2+a[0],se=fe.row*x+x/2+a[1];else{for(;Ix(re,ee);)PM(z,ee);ae=ee.col*y+y/2+a[0],se=ee.row*x+x/2+a[1],CM(re,ee),PM(z,ee)}E.data.x=ae,E.data.y=se},iU=(E,a,y)=>{try{const x=Ch.mul(Ch.pow(a,2),-.5),b=x.mean("row"),z=x.mean("column"),ee=x.mean();x.add(ee).subRowVector(b).subColumnVector(z);const re=new sM(x),ae=Ch.sqrt(re.diagonalMatrix).diagonal();return re.leftSingularVectors.toJSON().map(se=>Ch.mul([se],[ae]).toJSON()[0].splice(0,E))}catch(x){const b=[];for(let z=0;z{const y=Object.assign(Object.assign({},sU),a),{positions:x,iterations:b,width:z,k:ee,speed:re=100,strictRadial:ae,focusIdx:se,radii:fe=[],nodeSizeFunc:me}=y,Ee=E.getAllNodes(),Oe=[],ke=z/10;for(let We=0;We{Oe[Ke]={x:0,y:0}}),uU(Ee,x,Oe,ee,fe,me),cU(x,Oe,re,ae,se,ke,z,fe);return x},uU=(E,a,y,x,b,z)=>{a.forEach((ee,re)=>{y[re]={x:0,y:0},a.forEach((ae,se)=>{if(re===se||b[re]!==b[se])return;let fe=ee.x-ae.x,me=ee.y-ae.y,Ee=Math.sqrt(fe*fe+me*me);if(Ee===0){Ee=1;const Oe=re>se?1:-1;fe=.01*Oe,me=.01*Oe}if(Ee{const ae=z||ee/10;return x&&a.forEach((se,fe)=>{const me=E[fe].x-E[b].x,Ee=E[fe].y-E[b].y,Oe=Math.sqrt(me*me+Ee*Ee);let ke=Ee/Oe,We=-me/Oe;const je=Math.sqrt(se.x*se.x+se.y*se.y);let Ke=Math.acos((ke*se.x+We*se.y)/je);Ke>Math.PI/2&&(Ke-=Math.PI/2,ke*=-1,We*=-1);const Ze=Math.cos(Ke)*je;se.x=ke*Ze,se.y=We*Ze}),E.forEach((se,fe)=>{if(fe===b)return;const me=Math.sqrt(a[fe].x*a[fe].x+a[fe].y*a[fe].y);if(me>0&&fe!==b){const Ee=Math.min(ae*(y/oU),me);if(se.x+=a[fe].x/me*Ee,se.y+=a[fe].y/me*Ee,x){let Oe=se.x-E[b].x,ke=se.y-E[b].y;const We=Math.sqrt(Oe*Oe+ke*ke);Oe=Oe/We*re[fe],ke=ke/We*re[fe],se.x=E[b].x+Oe,se.y=E[b].y+ke}}}),E},dU={maxIteration:1e3,focusNode:null,unitRadius:null,linkDistance:50,preventOverlap:!1,strictRadial:!0,maxPreventOverlapIteration:200,sortStrength:10};class fU{constructor(a={}){this.options=a,this.id="radial",this.options=Object.assign(Object.assign({},dU),a)}execute(a,y){return(0,Bt.mG)(this,void 0,void 0,function*(){return this.genericRadialLayout(!1,a,y)})}assign(a,y){return(0,Bt.mG)(this,void 0,void 0,function*(){yield this.genericRadialLayout(!0,a,y)})}genericRadialLayout(a,y,x){return(0,Bt.mG)(this,void 0,void 0,function*(){const b=Object.assign(Object.assign({},this.options),x),{width:z,height:ee,center:re,focusNode:ae,unitRadius:se,nodeSize:fe,nodeSpacing:me,strictRadial:Ee,preventOverlap:Oe,maxPreventOverlapIteration:ke,sortBy:We,linkDistance:je=50,sortStrength:Ke=10,maxIteration:Ze=1e3}=b,Je=y.getAllNodes(),tt=y.getAllEdges(),st=!z&&typeof window!="undefined"?window.innerWidth:z,gt=!ee&&typeof window!="undefined"?window.innerHeight:ee,mt=re||[st/2,gt/2];if(!(Je!=null&&Je.length)||Je.length===1)return Dg(y,a,mt);let ct=Je[0];if(Us(ae)){for(let Kr=0;Krmt[0]?mt[0]:st-mt[0],Fn=gt-mt[1]>mt[1]?mt[1]:gt-mt[1];on===0&&(on=st/2),Fn===0&&(Fn=gt/2);const tr=Math.min(on,Fn),Cn=Math.max(...En),xn=[],Ln=se||tr/Cn;En.forEach((Kr,pa)=>{xn[pa]=Kr*Ln});const nr=hU(Je,Yt,je,xn,Ln,We,Ke),An=gU(nr),fr=iU(je,nr,je);let ra=fr.map(([Kr,pa])=>({x:(isNaN(Kr)?Math.random()*je:Kr)-fr[Lt][0],y:(isNaN(pa)?Math.random()*je:pa)-fr[Lt][1]}));this.run(Ze,ra,An,nr,xn,Lt);let aa;if(Oe){aa=px(fe,me);const Kr={nodes:Je,nodeSizeFunc:aa,positions:ra,radii:xn,height:gt,width:st,strictRadial:!!Ee,focusIdx:Lt,iterations:ke||200,k:ra.length/4.5};ra=lU(y,Kr)}const Gr=[];return ra.forEach((Kr,pa)=>{const Ua=Jc(Je[pa]);Ua.data.x=Kr.x+mt[0],Ua.data.y=Kr.y+mt[1],Gr.push(Ua)}),a&&Gr.forEach(Kr=>y.mergeNodeData(Kr.id,{x:Kr.data.x,y:Kr.data.y})),{nodes:Gr,edges:tt}})}run(a,y,x,b,z,ee){for(let re=0;re<=a;re++){const ae=re/a;this.oneIteration(ae,y,z,b,x,ee)}}oneIteration(a,y,x,b,z,ee){const re=1-a;y.forEach((ae,se)=>{const fe=cM(ae,{x:0,y:0}),me=fe===0?0:1/fe;if(se===ee)return;let Ee=0,Oe=0,ke=0;y.forEach((je,Ke)=>{if(se===Ke)return;const Ze=cM(ae,je),Je=Ze===0?0:1/Ze,tt=b[Ke][se];ke+=z[se][Ke],Ee+=z[se][Ke]*(je.x+tt*(ae.x-je.x)*Je),Oe+=z[se][Ke]*(je.y+tt*(ae.y-je.y)*Je)});const We=x[se]===0?0:1/x[se];ke*=re,ke+=a*We*We,Ee*=re,Ee+=a*We*ae.x*me,ae.x=Ee/ke,Oe*=re,Oe+=a*We*ae.y*me,ae.y=Oe/ke})}}const hU=(E,a,y,x,b,z,ee)=>{if(!E)return[];const re=[];if(a){const ae={};a.forEach((se,fe)=>{const me=[];se.forEach((Ee,Oe)=>{var ke,We;if(fe===Oe)me.push(0);else if(x[fe]===x[Oe])if(z==="data")me.push(Ee*(Math.abs(fe-Oe)*ee)/(x[fe]/b));else if(z){let je,Ke;if(ae[E[fe].id])je=ae[E[fe].id];else{const Ze=(z==="id"?E[fe].id:(ke=E[fe].data)===null||ke===void 0?void 0:ke[z])||0;Us(Ze)?je=Ze.charCodeAt(0):je=Ze,ae[E[fe].id]=je}if(ae[E[Oe].id])Ke=ae[E[Oe].id];else{const Ze=(z==="id"?E[Oe].id:(We=E[Oe].data)===null||We===void 0?void 0:We[z])||0;Us(Ze)?Ke=Ze.charCodeAt(0):Ke=Ze,ae[E[Oe].id]=Ke}me.push(Ee*(Math.abs(je-Ke)*ee)/(x[fe]/b))}else me.push(Ee*y/(x[fe]/b));else{const je=(y+b)/2;me.push(Ee*je)}}),re.push(me)})}return re},gU=E=>{const a=E.length,y=E[0].length,x=[];for(let b=0;b{let y=-1;return E.forEach((x,b)=>{x.id===a&&(y=b)}),Math.max(y,0)},mU=(E,a,y)=>{const x=E.length;for(let b=0;b{let y=0;for(let x=0;xy?E[a][x]:y);return y},yU={center:[0,0],width:300,height:300};class EU{constructor(a={}){this.options=a,this.id="random",this.options=Object.assign(Object.assign({},yU),a)}execute(a,y){return(0,Bt.mG)(this,void 0,void 0,function*(){return this.genericRandomLayout(!1,a,y)})}assign(a,y){return(0,Bt.mG)(this,void 0,void 0,function*(){yield this.genericRandomLayout(!0,a,y)})}genericRandomLayout(a,y,x){return(0,Bt.mG)(this,void 0,void 0,function*(){const b=Object.assign(Object.assign({},this.options),x),{center:z,width:ee,height:re}=b,ae=y.getAllNodes(),se=.9,fe=!ee&&typeof window!="undefined"?window.innerWidth:ee,me=!re&&typeof window!="undefined"?window.innerHeight:re,Ee=z||[fe/2,me/2],Oe=[];return ae&&ae.forEach(We=>{Oe.push({id:We.id,data:{x:(Math.random()-.5)*se*fe+Ee[0],y:(Math.random()-.5)*se*me+Ee[1]}})}),a&&Oe.forEach(We=>y.mergeNodeData(We.id,{x:We.data.x,y:We.data.y})),{nodes:Oe,edges:y.getAllEdges()}})}}function AU(E){var a,y,x,b=E||1;function z(re,ae){++a>b&&(x=y,ee(1),++a),y[re]=ae}function ee(re){a=0,y=Object.create(null),re||(x=Object.create(null))}return ee(),{clear:ee,has:function(re){return y[re]!==void 0||x[re]!==void 0},get:function(re){var ae=y[re];if(ae!==void 0)return ae;if((ae=x[re])!==void 0)return z(re,ae),ae},set:function(re,ae){y[re]!==void 0?y[re]=ae:z(re,ae)}}}var Tx=new Map;function Ox(E,a,y){y===void 0&&(y=128);var x=function(){for(var b=[],z=0;z2))return a[0]}formatSize(a){const y=typeof a=="function"?a:()=>a;return x=>Yc(y(x))}doLayout(a,y){const{hGap:x,getRibSep:b,vGap:z,nodeSize:ee,height:re}=y,{model:ae}=this.context,se=this.formatSize(ee);let fe=se(a)[0]+b(a);const me=(Je,tt=0)=>{var st;return tt+=x*((Je.children||[]).length+1),(st=Je.children)===null||st===void 0||st.forEach(gt=>{var mt;(mt=ae.getNodeLikeDatum(gt).children)===null||mt===void 0||mt.forEach(Lt=>{const _t=ae.getNodeLikeDatum(Lt);tt=me(_t,tt)})}),tt},Ee=Je=>{if(Je.depth===1)return fe;const tt=ae.getParentData(Je.id,"tree");if(P0(Je)){const st=ae.getParentData(tt.id,"tree"),gt=We(Je)-We(st);return Ee(tt)+gt*x/z}else{const st=(tt.children||[]).indexOf(Je.id),gt=ae.getNodeData((tt.children||[]).slice(st));return Oe(tt)-gt.reduce((mt,ct)=>mt+me(ct),0)-se(tt)[0]/2}},Oe=Ox(Je=>{if(Lx(Je))return se(Je)[0]/2;const tt=ae.getParentData(Je.id,"tree");if(P0(Je))return Ee(Je)+me(Je)+se(Je)[0]/2;{const st=We(Je)-We(tt),gt=x/z;return Ee(Je)+st*gt}},Je=>Je.id),ke=Je=>We(ae.getParentData(Je,"tree")),We=Ox(Je=>{if(Lx(Je))return re/2;if(P0(Je)){const tt=ae.getParentData(Je.id,"tree"),st=tt.children.indexOf(Je.id);if(st===0)return ke(tt.id)+z;const gt=ae.getNodeLikeDatum(tt.children[st-1]);if(Af(gt.children))return We(gt)+z;const mt=ae.getDescendantsData(gt.id);return Math.max(...mt.map(ct=>P0(ct)?ke(ct.id):We(ct)))+z}else{if(Af(Je.children))return ke(Je.id)+z;const tt=ae.getNodeLikeDatum(Je.children.slice(-1)[0]);if(Af(tt.children))return We(tt)+z;const st=ae.getDescendantsData(Je.id).slice(-1)[0];return(P0(st)?ke(st.id):We(st))+z}},Je=>Je.id);let je=0;const Ke={nodes:[],edges:[]},Ze=Je=>{var tt;(tt=Je.children)===null||tt===void 0||tt.forEach(Lt=>Ze(ae.getNodeLikeDatum(Lt)));const st=We(Je),gt=Oe(Je);if(Ke.nodes.push({id:Je.id,x:gt,y:st}),Lx(Je))return;const mt=ae.getRelatedEdgesData(Je.id,"in")[0],ct=[Ee(Je),P0(Je)?st:ke(Je.id)];Ke.edges.push({id:Lr(mt),controlPoints:[ct],relatedNodeId:Je.id}),je=Math.max(je,gt+b(Je)),Je.depth===1&&(fe=je)};return Ze(a),Ke}placeAlterative(a,y){const x=(y.children||[]).filter((re,ae)=>ae%2!==0);if(x.length===0)return a;const{model:b}=this.context,z=a.nodes.find(re=>re.id===y.id).y,ee=re=>{const ae=b.getAncestorsData(re,"tree");if(Af(ae))return!1;const se=ae.length===1?re:ae[ae.length-2].id;return x.includes(se)};a.nodes.forEach(re=>{ee(re.id)&&(re.y=2*z-re.y)}),a.edges.forEach(re=>{ee(re.relatedNodeId)&&(re.controlPoints=re.controlPoints.map(ae=>[ae[0],2*z-ae[1]]))})}rightToLeft(a,y){return a.nodes.forEach(x=>x.x=y.width-x.x),a.edges.forEach(x=>{x.controlPoints=x.controlPoints.map(b=>[y.width-b[0],b[1]])}),a}execute(a,y){return xU(this,void 0,void 0,function*(){const x=Object.assign(Object.assign(Object.assign({},Iy.defaultOptions),this.options),y),{direction:b,nodeSize:z}=x,ee=this.getRoot();if(!ee)return a;const re=this.formatSize(z);x.vGap||(x.vGap=Math.max(...(a.nodes||[]).map(Ee=>re(Ee)[1]))),x.hGap||(x.hGap=Math.max(...(a.nodes||[]).map(Ee=>re(Ee)[0])));let ae=this.doLayout(ee,x);this.placeAlterative(ae,ee),b==="RL"&&(ae=this.rightToLeft(ae,x));const{model:se}=this.context,fe=[],me=[];return ae.nodes.forEach(Ee=>{const{id:Oe,x:ke,y:We}=Ee,je=se.getNodeLikeDatum(Oe);fe.push(wM(je,{x:ke,y:We}))}),ae.edges.forEach(Ee=>{const{id:Oe,controlPoints:ke}=Ee,We=se.getEdgeDatum(Oe);me.push(wM(We,{controlPoints:ke}))}),{nodes:fe,edges:me}})}}Iy.defaultOptions={direction:"RL",getRibSep:()=>60};const wM=(E,a)=>Object.assign(Object.assign({},E),{style:Object.assign(Object.assign({},E.style||{}),a)}),Lx=E=>E.depth===0,P0=E=>(E.depth||(E.depth=0))%2===0;var SU=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(fe){try{se(x.next(fe))}catch(me){ee(me)}}function ae(fe){try{se(x.throw(fe))}catch(me){ee(me)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})};class Ty extends fy{constructor(){super(...arguments),this.id="snake"}formatSize(a,y){const x=typeof y=="function"?y:()=>y;return a.reduce((b,z)=>{const[ee,re]=Yc(x(z))||[0,0];return[Math.max(b[0],ee),Math.max(b[1],re)]},[0,0])}validate(a){const{nodes:y=[],edges:x=[]}=a,b={},z={},ee={};y.forEach(Ee=>{b[Ee.id]=0,z[Ee.id]=0,ee[Ee.id]=[]}),x.forEach(Ee=>{b[Ee.target]++,z[Ee.source]++,ee[Ee.source].push(Ee.target)});const re=new Set,ae=Ee=>{re.has(Ee)||(re.add(Ee),ee[Ee].forEach(ae))};if(ae(y[0].id),re.size!==y.length)return!1;const se=y.filter(Ee=>b[Ee.id]===0),fe=y.filter(Ee=>z[Ee.id]===0);return!(se.length!==1||fe.length!==1||y.filter(Ee=>b[Ee.id]===1&&z[Ee.id]===1).length!==y.length-2)}execute(a,y){return SU(this,void 0,void 0,function*(){var x;if(!this.validate(a))return a;const{nodeSize:b,padding:z,sortBy:ee,cols:re,colGap:ae,rowGap:se,clockwise:fe,width:me,height:Ee}=Object.assign({},Ty.defaultOptions,this.options,y),[Oe,ke,We,je]=Zc(z),Ke=this.formatSize(a.nodes||[],b),Ze=Math.ceil((a.nodes||[]).length/re);let Je=ae||(me-je-ke-re*Ke[0])/(re-1),tt=se||(Ee-Oe-We-Ze*Ke[1])/(Ze-1);return(tt===1/0||tt<0)&&(tt=0),(Je===1/0||Je<0)&&(Je=0),{nodes:((ee?(x=a.nodes)===null||x===void 0?void 0:x.sort(ee):bU(a))||[]).map((mt,ct)=>{const Lt=Math.floor(ct/re),_t=ct%re,Yt=fe?Lt%2===0?_t:re-1-_t:Lt%2===0?re-1-_t:_t,$t=je+Yt*(Ke[0]+Je)+Ke[0]/2,En=Oe+Lt*(Ke[1]+tt)+Ke[1]/2;return{id:mt.id,style:{x:$t,y:En}}})}})}}Ty.defaultOptions={padding:0,cols:5,clockwise:!0};function bU(E){const{nodes:a=[],edges:y=[]}=E,x={},b={};a.forEach(re=>{x[re.id]=0,b[re.id]=[]}),y.forEach(re=>{x[re.target]++,b[re.source].push(re.target)});const z=[],ee=[];for(a.forEach(re=>{x[re.id]===0&&z.push(re.id)});z.length>0;){const re=z.shift(),ae=a.find(se=>se.id===re);ee.push(ae),b[re].forEach(se=>{x[se]--,x[se]===0&&z.push(se)})}return ee}const CU=["rgb(158, 1, 66)","rgb(213, 62, 79)","rgb(244, 109, 67)","rgb(253, 174, 97)","rgb(254, 224, 139)","rgb(255, 255, 191)","rgb(230, 245, 152)","rgb(171, 221, 164)","rgb(102, 194, 165)","rgb(50, 136, 189)","rgb(94, 79, 162)"],PU=["rgb(78, 121, 167)","rgb(242, 142, 44)","rgb(225, 87, 89)","rgb(118, 183, 178)","rgb(89, 161, 79)","rgb(237, 201, 73)","rgb(175, 122, 161)","rgb(255, 157, 167)","rgb(156, 117, 95)","rgb(186, 176, 171)"],wU=["rgb(255, 245, 235)","rgb(254, 230, 206)","rgb(253, 208, 162)","rgb(253, 174, 107)","rgb(253, 141, 60)","rgb(241, 105, 19)","rgb(217, 72, 1)","rgb(166, 54, 3)","rgb(127, 39, 4)"],MU=["rgb(247, 252, 245)","rgb(229, 245, 224)","rgb(199, 233, 192)","rgb(161, 217, 155)","rgb(116, 196, 118)","rgb(65, 171, 93)","rgb(35, 139, 69)","rgb(0, 109, 44)","rgb(0, 68, 27)"],DU=["rgb(247, 251, 255)","rgb(222, 235, 247)","rgb(198, 219, 239)","rgb(158, 202, 225)","rgb(107, 174, 214)","rgb(66, 146, 198)","rgb(33, 113, 181)","rgb(8, 81, 156)","rgb(8, 48, 107)"];var IU=function(E,a,y){if(!Cc(E)&&!m0(E))return E;var x=y;return zw(E,function(b,z){x=a(x,b,z)}),x},TU=IU,Bx=function(E,a){return TU(E,function(y,x,b){return a.includes(b)||(y[b]=x),y},{})};class Du extends OA{}function w0(E,a=!0,y){const x=document.createElement("div");return x.setAttribute("class",`g6-${E}`),Object.assign(x.style,{position:"absolute",display:"block"}),a&&Object.assign(x.style,{position:"unset",gridArea:"1 / 1 / 2 / 2",inset:"0px",height:"100%",width:"100%",overflow:"hidden",pointerEvents:"none"}),y&&Object.assign(x.style,y),x}function Nx(E,a="div",y={},x="",b=document.body){const z=document.getElementById(E);z&&z.remove();const ee=document.createElement(a);return ee.innerHTML=x,ee.id=E,Object.assign(ee.style,y),b.appendChild(ee),ee}var OU=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(fe){try{se(x.next(fe))}catch(me){ee(me)}}function ae(fe){try{se(x.throw(fe))}catch(me){ee(me)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})};class Oy extends Du{constructor(a,y){super(a,Object.assign({},Oy.defaultOptions,y)),this.$element=w0("background"),this.context.canvas.getContainer().prepend(this.$element),this.update(y)}update(a){const y=Object.create(null,{update:{get:()=>super.update}});return OU(this,void 0,void 0,function*(){y.update.call(this,a),Object.assign(this.$element.style,Bx(this.options,["key","type"]))})}destroy(){super.destroy(),this.$element.remove()}}Oy.defaultOptions={transition:"background 0.5s",backgroundSize:"cover",zIndex:"-1"};function Rx(E,a,y,x,b,z){const ee=E,re=a,ae=y-ee,se=x-re;let fe=b-ee,me=z-re,Ee=fe*ae+me*se,Oe=0;Ee<=0?Oe=0:(fe=ae-fe,me=se-me,Ee=fe*ae+me*se,Ee<=0?Oe=0:Oe=Ee*Ee/(ae*ae+se*se));const ke=fe*fe+me*me-Oe;return ke<0?0:ke}function wh(E,a,y,x){return(E-y)*(E-y)+(a-x)*(a-x)}function MM(E,a,y,x,b){return wh(E,a,y,x)y;if(E===0)return Math.round;const a=Math.pow(10,E);return y=>Math.round(y*a)/a}function DM(E){const a=Math.min(E.x1,E.x2),y=Math.max(E.x1,E.x2),x=Math.min(E.y1,E.y2),b=Math.max(E.y1,E.y2);return{x:a,y:x,x2:y,y2:b,width:y-a,height:b-x}}class Iu{constructor(a,y,x,b){this.x1=a,this.y1=y,this.x2=x,this.y2=b}equals(a){return this.x1===a.x1&&this.y1===a.y1&&this.x2===a.x2&&this.y2===a.y2}draw(a){a.moveTo(this.x1,this.y1),a.lineTo(this.x2,this.y2)}toString(){return`Line(from=(${this.x1},${this.y1}),to=(${this.x2},${this.y2}))`}static from(a){return new Iu(a.x1,a.y1,a.x2,a.y2)}cuts(a,y){if(this.y1===this.y2||ythis.y1&&y>=this.y2||a>this.x1&&a>=this.x2)return!1;if(athis.x2+x)return!1}else if(athis.x1+x)return!1;if(this.y1this.y2+x)return!1}else if(ythis.y1+x)return!1;return!0}}var Kl;(function(E){E[E.POINT=1]="POINT",E[E.PARALLEL=2]="PARALLEL",E[E.COINCIDENT=3]="COINCIDENT",E[E.NONE=4]="NONE"})(Kl||(Kl={}));class Fx{constructor(a,y=0,x=0){this.state=a,this.x=y,this.y=x}}function Ly(E,a){const y=(a.x2-a.x1)*(E.y1-a.y1)-(a.y2-a.y1)*(E.x1-a.x1),x=(E.x2-E.x1)*(E.y1-a.y1)-(E.y2-E.y1)*(E.x1-a.x1),b=(a.y2-a.y1)*(E.x2-E.x1)-(a.x2-a.x1)*(E.y2-E.y1);if(b){const z=y/b,ee=x/b;return 0<=z&&z<=1&&0<=ee&&ee<=1?new Fx(Kl.POINT,E.x1+z*(E.x2-E.x1),E.y1+z*(E.y2-E.y1)):new Fx(Kl.NONE)}return new Fx(y===0||x===0?Kl.COINCIDENT:Kl.PARALLEL)}function IM(E,a){const y=(a.x2-a.x1)*(E.y1-a.y1)-(a.y2-a.y1)*(E.x1-a.x1),x=(E.x2-E.x1)*(E.y1-a.y1)-(E.y2-E.y1)*(E.x1-a.x1),b=(a.y2-a.y1)*(E.x2-E.x1)-(a.x2-a.x1)*(E.y2-E.y1);if(b){const z=y/b,ee=x/b;if(0<=z&&z<=1&&0<=ee&&ee<=1)return z}return Number.POSITIVE_INFINITY}function BU(E,a){function y(b,z,ee,re){let ae=IM(a,new Iu(b,z,ee,re));return ae=Math.abs(ae-.5),ae>=0&&ae<=1?1:0}let x=y(E.x,E.y,E.x2,E.y);return x+=y(E.x,E.y,E.x,E.y2),x>1||(x+=y(E.x,E.y2,E.x2,E.y2),x>1)?!0:(x+=y(E.x2,E.y,E.x2,E.y2),x>0)}var Zl;(function(E){E[E.LEFT=0]="LEFT",E[E.TOP=1]="TOP",E[E.RIGHT=2]="RIGHT",E[E.BOTTOM=3]="BOTTOM"})(Zl||(Zl={}));function By(E,a,y){const x=new Set;return E.width<=0?(x.add(Zl.LEFT),x.add(Zl.RIGHT)):aE.x+E.width&&x.add(Zl.RIGHT),E.height<=0?(x.add(Zl.TOP),x.add(Zl.BOTTOM)):yE.y+E.height&&x.add(Zl.BOTTOM),x}function TM(E,a){let y=a.x1,x=a.y1;const b=a.x2,z=a.y2,ee=Array.from(By(E,b,z));if(ee.length===0)return!0;let re=By(E,y,x);for(;re.size!==0;){for(const ae of ee)if(re.has(ae))return!1;if(re.has(Zl.RIGHT)||re.has(Zl.LEFT)){let ae=E.x;re.has(Zl.RIGHT)&&(ae+=E.width),x=x+(ae-y)*(z-x)/(b-y),y=ae}else{let ae=E.y;re.has(Zl.BOTTOM)&&(ae+=E.height),y=y+(ae-x)*(b-y)/(z-x),x=ae}re=By(E,y,x)}return!0}function NU(E,a){let y=Number.POSITIVE_INFINITY,x=0;function b(z,ee,re,ae){let se=IM(a,new Iu(z,ee,re,ae));se=Math.abs(se-.5),se>=0&&se<=1&&(x++,se1||(b(E.x,E.y2,E.x2,E.y2),x>1)?y:(b(E.x2,E.y,E.x2,E.y2),x===0?-1:y)}function RU(E,a){let y=0;const x=Ly(E,new Iu(a.x,a.y,a.x2,a.y));y+=x.state===Kl.POINT?1:0;const b=Ly(E,new Iu(a.x,a.y,a.x,a.y2));y+=b.state===Kl.POINT?1:0;const z=Ly(E,new Iu(a.x,a.y2,a.x2,a.y2));y+=z.state===Kl.POINT?1:0;const ee=Ly(E,new Iu(a.x2,a.y,a.x2,a.y2));return y+=ee.state===Kl.POINT?1:0,{top:x,left:b,bottom:z,right:ee,count:y}}class ec{constructor(a,y,x,b){this.x=a,this.y=y,this.width=x,this.height=b}get x2(){return this.x+this.width}get y2(){return this.y+this.height}get cx(){return this.x+this.width/2}get cy(){return this.y+this.height/2}get radius(){return Math.max(this.width,this.height)/2}static from(a){return new ec(a.x,a.y,a.width,a.height)}equals(a){return this.x===a.x&&this.y===a.y&&this.width===a.width&&this.height===a.height}clone(){return new ec(this.x,this.y,this.width,this.height)}add(a){const y=Math.min(this.x,a.x),x=Math.min(this.y,a.y),b=Math.max(this.x2,a.x+a.width),z=Math.max(this.y2,a.y+a.height);this.x=y,this.y=x,this.width=b-y,this.height=z-x}addPoint(a){const y=Math.min(this.x,a.x),x=Math.min(this.y,a.y),b=Math.max(this.x2,a.x),z=Math.max(this.y2,a.y);this.x=y,this.y=x,this.width=b-y,this.height=z-x}toString(){return`Rectangle[x=${this.x}, y=${this.y}, w=${this.width}, h=${this.height}]`}draw(a){a.rect(this.x,this.y,this.width,this.height)}containsPt(a,y){return a>=this.x&&a<=this.x2&&y>=this.y&&y<=this.y2}get area(){return this.width*this.height}intersects(a){return this.area<=0||a.width<=0||a.height<=0?!1:a.x+a.width>this.x&&a.y+a.height>this.y&&a.x=this.width?this.width-1:a}boundY(a){return a=this.height?this.height-1:a}scaleX(a){return this.boundX(Math.floor((a-this.pixelX)/this.pixelGroup))}scaleY(a){return this.boundY(Math.floor((a-this.pixelY)/this.pixelGroup))}scale(a){const y=this.scaleX(a.x),x=this.scaleY(a.y),b=this.boundX(Math.ceil((a.x+a.width-this.pixelX)/this.pixelGroup)),z=this.boundY(Math.ceil((a.y+a.height-this.pixelY)/this.pixelGroup)),ee=b-y,re=z-x;return new ec(y,x,ee,re)}invertScaleX(a){return Math.round(a*this.pixelGroup+this.pixelX)}invertScaleY(a){return Math.round(a*this.pixelGroup+this.pixelY)}addPadding(a,y){const x=Math.ceil(y/this.pixelGroup),b=this.boundX(a.x-x),z=this.boundY(a.y-x),ee=this.boundX(a.x2+x),re=this.boundY(a.y2+x),ae=ee-b,se=re-z;return new ec(b,z,ae,se)}get(a,y){return a<0||y<0||a>=this.width||y>=this.height?Number.NaN:this.area[a+y*this.width]}inc(a,y,x){a<0||y<0||a>=this.width||y>=this.height||(this.area[a+y*this.width]+=x)}set(a,y,x){a<0||y<0||a>=this.width||y>=this.height||(this.area[a+y*this.width]=x)}incArea(a,y){if(a.width<=0||a.height<=0||y===0)return;const x=this.width,b=a.width,z=Math.max(0,a.i),ee=Math.max(0,a.j),re=Math.min(a.i+a.width,x),ae=Math.min(a.j+a.height,this.height);if(!(ae<=0||re<=0||z>=x||ae>=this.height))for(let se=ee;seMath.min(ee,re),Number.POSITIVE_INFINITY),b=this.area.reduce((ee,re)=>Math.max(ee,re),Number.NEGATIVE_INFINITY),z=ee=>(ee-x)/(b-x);a.scale(this.pixelGroup,this.pixelGroup);for(let ee=0;eey?"black":"white",a.fillRect(b,z,1,1)}a.restore()}}}function OM(E,a){const y=x=>({x:x.x-a,y:x.y-a,width:x.width+2*a,height:x.height+2*a});return Array.isArray(E)?E.map(y):y(E)}function LM(E,a,y){return BM(Object.assign(DM(E),{distSquare:(x,b)=>Rx(E.x1,E.y1,E.x2,E.y2,x,b)}),a,y)}function BM(E,a,y){const x=OM(E,y),b=a.scale(x),z=a.createSub(b,x);return kU(z,a,y,(ee,re)=>E.distSquare(ee,re)),z}function kU(E,a,y,x){const b=y*y;for(let z=0;z{const re=b.slice(0,ee);return UU(a,z,re,y,x)}).flat()}function UU(E,a,y,x,b){const z=wl(a.cx,a.cy),ee=GU(z,y,E);if(ee==null)return[];const re=new Iu(z.x,z.y,ee.cx,ee.cy),ae=WU(re,E,x,b);return jU(ae,E)}function WU(E,a,y,x){const b=[],z=[];z.push(E);let ee=!0;for(let re=0;re0;){const ae=z.pop(),se=NM(a,ae),fe=se?RU(ae,se):null;if(!se||!fe||fe.count!==2){ee||b.push(ae);continue}let me=x,Ee=Fy(se,me,fe,!0),Oe=Mh(Ee,z)||Mh(Ee,b),ke=Ry(Ee,a);for(;!Oe&&ke&&me>=1;)me/=1.5,Ee=Fy(se,me,fe,!0),Oe=Mh(Ee,z)||Mh(Ee,b),ke=Ry(Ee,a);if(Ee&&!Oe&&!ke&&(z.push(new Iu(ae.x1,ae.y1,Ee.x,Ee.y)),z.push(new Iu(Ee.x,Ee.y,ae.x2,ae.y2)),ee=!0),ee)continue;me=x,Ee=Fy(se,me,fe,!1);let We=Mh(Ee,z)||Mh(Ee,b);for(ke=Ry(Ee,a);!We&&ke&&me>=1;)me/=1.5,Ee=Fy(se,me,fe,!1),We=Mh(Ee,z)||Mh(Ee,b),ke=Ry(Ee,a);Ee&&!We&&(z.push(new Iu(ae.x1,ae.y1,Ee.x,Ee.y)),z.push(new Iu(Ee.x,Ee.y,ae.x2,ae.y2)),ee=!0),ee||b.push(ae)}for(;z.length>0;)b.push(z.pop());return b}function jU(E,a){const y=[];for(;E.length>0;){const x=E.pop();if(E.length===0){y.push(x);break}const b=E.pop(),z=new Iu(x.x1,x.y1,b.x2,b.y2);NM(a,z)?(y.push(x),E.push(b)):E.push(z)}return y}function GU(E,a,y){let x=Number.POSITIVE_INFINITY;return a.reduce((b,z)=>{const ee=wh(E.x,E.y,z.cx,z.cy);if(ee>x)return b;const re=new Iu(E.x,E.y,z.cx,z.cy),ae=VU(y,re);return ee*(ae+1)*(ae+1){a+=x.cx,y+=x.cy}),a/=E.length,y/=E.length,E.map(x=>{const b=a-x.cx,z=y-x.cy,ee=b*b+z*z;return[x,ee]}).sort((x,b)=>x[1]-b[1]).map(x=>x[0])}function Ry(E,a){return a.some(y=>y.containsPt(E.x,E.y))}function Mh(E,a){return a.some(y=>!!(MM(y.x1,y.y1,E.x,E.y,.001)||MM(y.x2,y.y2,E.x,E.y,.001)))}function NM(E,a){let y=Number.POSITIVE_INFINITY,x=null;for(const b of E){if(!TM(b,a))continue;const z=NU(b,a);z>=0&&zTM(x,a)&&BU(x,a)?y+1:y,0)}function Fy(E,a,y,x){const b=y.top,z=y.left,ee=y.bottom,re=y.right;if(x){if(z.state===Kl.POINT){if(b.state===Kl.POINT)return wl(E.x-a,E.y-a);if(ee.state===Kl.POINT)return wl(E.x-a,E.y2+a);const Ee=E.width*E.height;return E.width*((z.y-E.y+(re.y-E.y))*.5)re.y?wl(E.x-a,E.y-a):wl(E.x2+a,E.y-a):z.yee.x?wl(E.x-a,E.y-a):wl(E.x-a,E.y2+a):b.xre.y?wl(E.x2+a,E.y2+a):wl(E.x-a,E.y2+a):z.yee.x?wl(E.x2+a,E.y2+a):wl(E.x2+a,E.y-a):b.xx)return!1}return!0}function ZU(E=0){return a=>{if(E<0||a.length<3)return a;const y=[];let x=0;const b=E*E;for(;x{if(ee.length<3)return ee;const re=[],ae=ee.closed,se=ee.length+3-1+(ae?0:2);re.push(z(ee,2-(ae?0:2),0));for(let fe=2-(ae?0:2);fe{let y=E,x=a.length;if(y>1)for(x=Math.floor(a.length/y);x<3&&y>1;)y-=1,x=Math.floor(a.length/y);const b=[];for(let z=0,ee=0;ee=x?this.closed?this.get(a-x):this.points[x-1]:this.points[y]}get length(){return this.points.length}toString(a=1/0){const y=this.points;if(y.length===0)return"";const x=typeof a=="function"?a:LU(a);let b="M";for(const z of y)b+=`${x(z.x)},${x(z.y)} L`;return b=b.slice(0,-1),this.closed&&(b+=" Z"),b}draw(a){const y=this.points;if(y.length!==0){a.beginPath(),a.moveTo(y[0].x,y[0].y);for(const x of y)a.lineTo(x.x,x.y);this.closed&&a.closePath()}}sample(a){return XU(a)(this)}simplify(a){return ZU(a)(this)}bSplines(a){return YU(a)(this)}apply(a){return a(this)}containsElements(a){const y=FU(this.points);return y?a.every(x=>y.containsPt(x.cx,x.cy)&&this.withinArea(x.cx,x.cy)):!1}withinArea(a,y){if(this.length===0)return!1;let x=0;const b=this.points[0],z=new Iu(b.x,b.y,b.x,b.y);for(let ee=1;eea?fe+me:fe}function z(ae,se){let fe=jv;return fe=b(ae,se,fe,1),fe=b(ae+1,se,fe,2),fe=b(ae,se+1,fe,4),fe=b(ae+1,se+1,fe,8),Number.isNaN(fe)?-1:fe}let ee=ky;function re(ae,se){let fe=ae,me=se,Ee=E.invertScaleX(fe),Oe=E.invertScaleY(me);for(let ke=0;keRM(x.raw,a));return y<0?!1:(this.members.splice(y,1),this.dirty.add(zd.MEMBERS),!0)}removeNonMember(a){const y=this.nonMembers.findIndex(x=>RM(x.raw,a));return y<0?!1:(this.nonMembers.splice(y,1),this.dirty.add(zd.NON_MEMBERS),!0)}removeEdge(a){const y=this.edges.findIndex(x=>x.obj.equals(a));return y<0?!1:(this.edges.splice(y,1),this.dirty.add(zd.NON_MEMBERS),!0)}pushNonMember(...a){if(a.length!==0){this.dirty.add(zd.NON_MEMBERS);for(const y of a)this.nonMembers.push({raw:y,obj:Gv(y)?Ny.from(y):ec.from(y),area:null})}}pushEdge(...a){if(a.length!==0){this.dirty.add(zd.EDGES);for(const y of a)this.edges.push({raw:y,obj:Iu.from(y),area:null})}}update(){const a=this.dirty.has(zd.MEMBERS),y=this.dirty.has(zd.NON_MEMBERS);let x=this.dirty.has(zd.EDGES);this.dirty.clear();const b=this.members.map(se=>se.obj);if(this.o.virtualEdges&&(a||y)){const se=this.nonMembers.map(Ee=>Ee.obj),fe=zU(b,se,this.o.maxRoutingIterations,this.o.morphBuffer),me=new Map(this.virtualEdges.map(Ee=>[Ee.obj.toString(),Ee.area]));this.virtualEdges=fe.map(Ee=>{var Oe;return{raw:Ee,obj:Ee,area:(Oe=me.get(Ee.toString()))!==null&&Oe!==void 0?Oe:null}}),x=!0}let z=!1;if(a||x){const se=this.virtualEdges.concat(this.edges).map(Oe=>Oe.obj),fe=eW(b,se),me=Math.max(this.o.edgeR1,this.o.nodeR1)+this.o.morphBuffer,Ee=ec.from(OM(fe,me));Ee.equals(this.activeRegion)||(z=!0,this.activeRegion=Ee)}if(z){const se=Math.ceil(this.activeRegion.width/this.o.pixelGroup),fe=Math.ceil(this.activeRegion.height/this.o.pixelGroup);this.activeRegion.x!==this.potentialArea.pixelX||this.activeRegion.y!==this.potentialArea.pixelY?(this.potentialArea=Tg.fromPixelRegion(this.activeRegion,this.o.pixelGroup),this.members.forEach(me=>me.area=null),this.nonMembers.forEach(me=>me.area=null),this.edges.forEach(me=>me.area=null),this.virtualEdges.forEach(me=>me.area=null)):(se!==this.potentialArea.width||fe!==this.potentialArea.height)&&(this.potentialArea=Tg.fromPixelRegion(this.activeRegion,this.o.pixelGroup))}const ee=new Map,re=se=>{if(se.area){const fe=`${se.obj.width}x${se.obj.height}x${se.obj instanceof ec?"R":"C"}`;ee.set(fe,se.area)}},ae=se=>{if(se.area)return;const fe=`${se.obj.width}x${se.obj.height}x${se.obj instanceof ec?"R":"C"}`;if(ee.has(fe)){const Ee=ee.get(fe);se.area=this.potentialArea.copy(Ee,{x:se.obj.x-this.o.nodeR1,y:se.obj.y-this.o.nodeR1});return}const me=se.obj instanceof ec?_U(se.obj,this.potentialArea,this.o.nodeR1):BM(se.obj,this.potentialArea,this.o.nodeR1);se.area=me,ee.set(fe,me)};this.members.forEach(re),this.nonMembers.forEach(re),this.members.forEach(ae),this.nonMembers.forEach(se=>{this.activeRegion.intersects(se.obj)?ae(se):se.area=null}),this.edges.forEach(se=>{se.area||(se.area=LM(se.obj,this.potentialArea,this.o.edgeR1))}),this.virtualEdges.forEach(se=>{se.area||(se.area=LM(se.obj,this.potentialArea,this.o.edgeR1))})}drawMembers(a){for(const y of this.members)y.obj.draw(a)}drawNonMembers(a){for(const y of this.nonMembers)y.obj.draw(a)}drawEdges(a){for(const y of this.edges)y.obj.draw(a)}drawPotentialArea(a,y=!0){this.potentialArea.draw(a,y)}compute(){if(this.members.length===0)return new Og([]);this.dirty.size>0&&this.update();const{o:a,potentialArea:y}=this,x=this.members.map(re=>re.area),b=this.virtualEdges.concat(this.edges).map(re=>re.area),z=this.nonMembers.filter(re=>re.area!=null).map(re=>re.area),ee=this.members.map(re=>re.obj);return $U(y,x,b,z,re=>re.containsElements(ee),a)}}function $U(E,a,y,x,b,z={}){const ee=Object.assign({},zy,z);let re=ee.threshold,ae=ee.memberInfluenceFactor,se=ee.edgeInfluenceFactor,fe=ee.nonMemberInfluenceFactor;const me=(ee.nodeR0-ee.nodeR1)*(ee.nodeR0-ee.nodeR1),Ee=(ee.edgeR0-ee.edgeR1)*(ee.edgeR0-ee.edgeR1);for(let Oe=0;Oe0)fe*=.8;else break}return new Og([])}function eW(E,a){if(E.length===0)return new ec(0,0,0,0);const y=ec.from(E[0]);for(const x of E)y.add(x);for(const x of a)y.add(DM(x));return y}function oee(E,a=[],y=[],x={}){if(E.length===0)return new Og([]);const b=new _x(x);return b.pushMember(...E),b.pushNonMember(...a),b.pushEdge(...y),b.compute()}var tW=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b{const{style:x,bubbleSetOptions:b}=this.parseOptions();nu(this.bubbleSetOptions,b)||this.init(),this.bubbleSetOptions=Object.assign({},b);const z=Object.assign(Object.assign({},x),{d:this.getPath()});this.shape?this.shape.update(z):(this.shape=new Dv({style:z}),this.context.canvas.appendChild(this.shape))},this.updateBubbleSetsPath=x=>{if(!this.shape)return;const b=Lr(x.data);[...this.options.members,...this.options.avoidMembers].includes(b)&&this.shape.update(Object.assign(Object.assign({},this.parseOptions().style),{d:this.getPath(b)}))},this.getPath=x=>{const{graph:b}=this.context,z=this.options.members,ee=[...this.members.keys()],re=this.options.avoidMembers,ae=[...this.avoidMembers.keys()];if(!x&&nu(z,ee)&&nu(re,ae))return this.path;const{enter:se=[],exit:fe=[]}=ph(ee,z,je=>je),{enter:me=[],exit:Ee=[]}=ph(ae,re,je=>je);x&&(fe.push(x),se.push(x));const Oe=(je,Ke,Ze)=>{je.forEach(Je=>{const tt=Ze?this.members:this.avoidMembers,st=Ze?"pushMember":"pushNonMember",gt=Ze?"removeMember":"removeNonMember";if(Ke){let mt;b.getElementType(Je)==="edge"?([mt]=rW(b,Je),this.bubbleSets.pushEdge(mt)):([mt]=nW(b,Je),this.bubbleSets[st](mt)),tt.set(Je,mt)}else{const mt=tt.get(Je);mt&&(b.getElementType(Je)==="edge"?this.bubbleSets.removeEdge(mt):this.bubbleSets[gt](mt),tt.delete(Je))}})};Oe(fe,!1,!0),Oe(se,!0,!0),Oe(Ee,!1,!1),Oe(me,!0,!1);const We=this.bubbleSets.compute().sample(8).simplify(0).bSplines().simplify(0);return this.path=Pw(We.points.map(Wu)),this.path},this.bindEvents(),this.bubbleSets=new _x(this.options)}bindEvents(){this.context.graph.on(si.AFTER_RENDER,this.drawBubbleSets),this.context.graph.on(si.AFTER_ELEMENT_UPDATE,this.updateBubbleSetsPath)}init(){this.bubbleSets=new _x(this.options),this.members=new Map,this.avoidMembers=new Map}parseOptions(){const a=this.options,{type:y,key:x,members:b,avoidMembers:z}=a,ee=tW(a,["type","key","members","avoidMembers"]),re=Object.keys(ee).reduce((ae,se)=>(se in zy?ae.bubbleSetOptions[se]=ee[se]:ae.style[se]=ee[se],ae),{style:{},bubbleSetOptions:{}});return Object.assign({type:y,key:x,members:b,avoidMembers:z},re)}addMember(a){const y=Array.isArray(a)?a:[a];y.some(x=>this.options.avoidMembers.includes(x))&&(this.options.avoidMembers=this.options.avoidMembers.filter(x=>!y.includes(x))),this.options.members=[...new Set([...this.options.members,...y])],this.drawBubbleSets()}removeMember(a){const y=Array.isArray(a)?a:[a];this.options.members=this.options.members.filter(x=>!y.includes(x)),this.drawBubbleSets()}updateMember(a){this.options.members=$i(a)?a(this.options.members):a,this.drawBubbleSets()}getMember(){return this.options.members}addAvoidMember(a){const y=Array.isArray(a)?a:[a];y.some(x=>this.options.members.includes(x))&&(this.options.members=this.options.members.filter(x=>!y.includes(x))),this.options.avoidMembers=[...new Set([...this.options.avoidMembers,...y])],this.drawBubbleSets()}removeAvoidMember(a){const y=Array.isArray(a)?a:[a];this.options.avoidMembers.some(x=>y.includes(x))&&(this.options.avoidMembers=this.options.avoidMembers.filter(x=>!y.includes(x)),this.drawBubbleSets())}updateAvoidMember(a){this.options.avoidMembers=Array.isArray(a)?a:[a],this.drawBubbleSets()}getAvoidMember(){return this.options.avoidMembers}destroy(){this.context.graph.off(si.AFTER_RENDER,this.drawBubbleSets),this.context.graph.off(si.AFTER_ELEMENT_UPDATE,this.updateBubbleSetsPath),this.shape.destroy(),super.destroy()}}Uy.defaultOptions=Object.assign({members:[],avoidMembers:[],fill:"lightblue",fillOpacity:.2,stroke:"blue",strokeOpacity:.2},zy);const nW=(E,a)=>(Array.isArray(a)?a:[a]).map(x=>{const b=E.getElementRenderBounds(x);return new ec(b.min[0],b.min[1],pf(b),yf(b))}),rW=(E,a)=>(Array.isArray(a)?a:[a]).map(x=>{const b=E.getEdgeData(x),z=E.getElementPosition(b.source),ee=E.getElementPosition(b.target);return Iu.from({x1:z[0],y1:z[1],x2:ee[0],y2:ee[1]})});class see extends null{constructor(a,y){super(a,y),this.setOptions=x=>{const b={cameraType:"setType",near:"setNear",far:"setFar",fov:"setFov",aspect:"setAspect",projectionMode:"setProjectionMode",distance:"setDistance",minDistance:"setMinDistance",maxDistance:"setMaxDistance",roll:"setRoll",elevation:"setElevation",azimuth:"setAzimuth"},z=(ee,re)=>{switch(ee){case"projectionMode":return re==="perspective"?1:0;case"cameraType":return{orbiting:0,exploring:1,tracking:2}[re];case"aspect":return typeof re=="number"?re:this.getCanvasAspect();default:return re}};Object.entries(b).forEach(([ee,re])=>{const ae=x[ee];if(ae!==void 0){const se=z(ee,ae);this.context.canvas.getCamera()[re](se)}})},this.bindEvents()}update(a){this.setOptions(a),super.update(a)}bindEvents(){this.context.graph.once(GraphEvent.BEFORE_DRAW,()=>this.setOptions(this.options))}getCanvasAspect(){const[a,y]=this.context.viewport.getCanvasSize();return a/y}}function aW(E){return`
    ${E.map(a=>`
  • ${a.name}
  • `).join("")}
`}const iW=` .g6-contextmenu { font-size: 12px; background-color: rgba(255, 255, 255, 0.96); border-radius: 4px; overflow: hidden; box-shadow: rgba(0, 0, 0, 0.12) 0px 6px 12px 0px; transition: visibility 0.2s cubic-bezier(0.23, 1, 0.32, 1) 0s, left 0.4s cubic-bezier(0.23, 1, 0.32, 1) 0s, top 0.4s cubic-bezier(0.23, 1, 0.32, 1) 0s; } .g6-contextmenu-ul { max-width: 256px; min-width: 96px; list-style: none; padding: 0; margin: 0; } .g6-contextmenu-li { padding: 8px 12px; cursor: pointer; user-select: none; } .g6-contextmenu-li:hover { background-color: #f5f5f5; cursor: pointer; } `;var FM=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(fe){try{se(x.next(fe))}catch(me){ee(me)}}function ae(fe){try{se(x.throw(fe))}catch(me){ee(me)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})};class Wy extends Du{constructor(a,y){super(a,Object.assign({},Wy.defaultOptions,y)),this.targetElement=null,this.onTriggerEvent=x=>{var b;(b=x.preventDefault)===null||b===void 0||b.call(x),this.show(x)},this.onMenuItemClick=x=>{const{onClick:b,trigger:z}=this.options;if(x.target instanceof HTMLElement&&x.target.className.includes("g6-contextmenu-li")){const ee=x.target.getAttribute("value");b==null||b(ee,x.target,this.targetElement),this.hide()}z!=="click"&&this.hide()},this.initElement(),this.update(y)}initElement(){this.$element=w0("contextmenu",!1,{zIndex:"99"});const{className:a}=this.options;a&&this.$element.classList.add(a),this.context.canvas.getContainer().appendChild(this.$element),Nx("g6-contextmenu-css","style",{},iW,document.head)}show(a){return FM(this,void 0,void 0,function*(){const{enable:y,offset:x}=this.options;if(typeof y=="function"&&!y(a)||!y){this.hide();return}const b=yield this.getDOMContent(a);b instanceof HTMLElement?(this.$element.innerHTML="",this.$element.appendChild(b)):this.$element.innerHTML=b;const z=this.context.graph.getCanvas().getContainer().getBoundingClientRect();this.$element.style.left=`${a.client.x-z.left+x[0]}px`,this.$element.style.top=`${a.client.y-z.top+x[1]}px`,this.$element.style.display="block",this.targetElement=a.target})}hide(){this.$element.style.display="none",this.targetElement=null}update(a){this.unbindEvents(),super.update(a),this.bindEvents()}destroy(){this.unbindEvents(),super.destroy(),this.$element.remove()}getDOMContent(a){return FM(this,void 0,void 0,function*(){const{getContent:y,getItems:x}=this.options;return x?aW(yield x(a)):yield y(a)})}bindEvents(){const{graph:a}=this.context,{trigger:y}=this.options;a.on(`canvas:${y}`,this.onTriggerEvent),a.on(`node:${y}`,this.onTriggerEvent),a.on(`edge:${y}`,this.onTriggerEvent),a.on(`combo:${y}`,this.onTriggerEvent),document.addEventListener("click",this.onMenuItemClick)}unbindEvents(){const{graph:a}=this.context,{trigger:y}=this.options;a.off(`canvas:${y}`,this.onTriggerEvent),a.off(`node:${y}`,this.onTriggerEvent),a.off(`edge:${y}`,this.onTriggerEvent),a.off(`combo:${y}`,this.onTriggerEvent),document.removeEventListener("click",this.onMenuItemClick)}}Wy.defaultOptions={trigger:"contextmenu",offset:[4,4],loadingContent:'
Loading...
',getContent:()=>"It is a empty context menu.",enable:()=>!0};class jy extends Du{constructor(a,y){super(a,Object.assign({},jy.defaultOptions,y)),this.edgeBundles={},this.edgePoints={},this.onBundle=()=>{const{model:x,element:b}=this.context,z=x.getEdgeData();this.divideEdges(this.options.divisions);const{cycles:ee,iterRate:re,divRate:ae}=this.options;let{lambda:se,divisions:fe,iterations:me}=this.options;for(let Ee=0;Ee{var je;if(We.source===We.target)return;const Ke=Lr(We);ke[Ke]=this.getEdgeForces(We,fe,se);for(let Ze=0;Ze{const Oe=Lr(Ee),ke=b.getElement(Oe);ke==null||ke.update({d:ex(this.edgePoints[Oe])})})},this.bindEvents()}get nodeMap(){const a=this.context.model.getNodeData();return Object.fromEntries(a.map(y=>[Lr(y),Eg(Au(y))]))}divideEdges(a){this.context.model.getEdgeData().forEach(x=>{var b;const z=Lr(x);(b=this.edgePoints)[z]||(b[z]=[]);const ee=this.nodeMap[x.source],re=this.nodeMap[x.target];if(a===1)this.edgePoints[z].push(ee),this.edgePoints[z].push(Fd(es(ee,re),2)),this.edgePoints[z].push(re);else{const se=(this.edgePoints[z].length===0?xl(ee,re):cW(this.edgePoints[z]))/(a+1);let fe=se;const me=[ee];for(let Ee=1;Eefe;){const je=fe/We,Ke=es(Oe,Rd(fl(ke,Oe),je));me.push(Ke),We-=fe,fe=se}fe-=We}me.push(re),this.edgePoints[z]=me}})}getVectorPosition(a){const y=this.nodeMap[a.source],x=this.nodeMap[a.target],[b,z]=fl(x,y),ee=xl(y,x);return{source:y,target:x,vx:b,vy:z,length:ee}}measureEdgeCompatibility(a,y){const x=this.getVectorPosition(a),b=this.getVectorPosition(y),z=oW(x,b),ee=sW(x,b),re=lW(x,b),ae=uW(x,b);return z*ee*re*ae}getEdgeBundles(){const a={},y=this.options.bundleThreshold,x=this.context.model.getEdgeData();return x.forEach((b,z)=>{x.forEach((ee,re)=>{var ae,se;if(re<=z)return;this.measureEdgeCompatibility(b,ee)>=y&&(a[ae=Lr(b)]||(a[ae]=[]),a[Lr(b)].push(ee),a[se=Lr(ee)]||(a[se]=[]),a[Lr(ee)].push(b))})}),a}getSpringForce(a,y){const{pre:x,cur:b,next:z}=a;return Rd(fl(es(x,z),Rd(b,2)),y)}getElectrostaticForce(a,y){Af(this.edgeBundles)&&(this.edgeBundles=this.getEdgeBundles());const x=this.edgeBundles[Lr(y)];let b=[0,0];return x==null||x.forEach(z=>{const ee=this.edgePoints[Lr(z)][a],re=this.edgePoints[Lr(y)][a],ae=fl(ee,re),se=xl(ee,re);b=es(b,Rd(ae,1/se))}),b}getEdgeForces(a,y,x){const b=this.nodeMap[a.source],z=this.nodeMap[a.target],ee=this.options.K/(xl(b,z)*(y+1)),re=[[0,0]],ae=Lr(a);for(let se=1;seMath.abs(j8([E.vx,E.vy],[a.vx,a.vy])/(E.length*a.length)),sW=(E,a)=>{const y=(E.length+a.length)/2;return 2/(y/Math.min(E.length,a.length)+Math.max(E.length,a.length)/y)},lW=(E,a)=>{const y=(E.length+a.length)/2,x=Fd(es(E.source,E.target),2),b=Fd(es(a.source,a.target),2);return y/(y+xl(x,b))},kM=(E,a)=>{if(a.source[0]===a.target[0])return[a.source[0],E[1]];if(a.source[1]===a.target[1])return[E[0],a.source[1]];const y=(a.source[1]-a.target[1])/(a.source[0]-a.target[0]),x=(y*y*a.source[0]+y*(E[1]-a.source[1])+E[0])/(y*y+1),b=y*(x-a.source[0])+a.source[1];return[x,b]},_M=(E,a)=>{const y=kM(a.source,E),x=kM(a.target,E),b=Fd(es(y,x),2),z=Fd(es(E.source,E.target),2);return xl(y,x)===0?0:Math.max(0,1-2*xl(z,b)/xl(y,x))},uW=(E,a)=>Math.min(_M(E,a),_M(a,E)),cW=E=>{let a=0;for(let y=1;y{if(this.options.trigger==="drag"&&this.isLensOn)return;const b=Wu(x.canvas);this.renderLens(b),this.renderFocusElements()},this.renderLens=x=>{const b=Object.assign({},dW,this.options.style);this.isLensOn||(this.lens=new Sg({style:b}),this.canvas.appendChild(this.lens)),Object.assign(b,kd(x),{size:this.r*2}),this.lens.update(b)},this.getFilterData=()=>{const{filter:x}=this.options,{model:b}=this.context,z=b.getData();if(!x)return z;const{nodes:ee,edges:re,combos:ae}=z;return{nodes:ee.filter(se=>x(Lr(se),"node")),edges:re.filter(se=>x(Lr(se),"edge")),combos:ae.filter(se=>x(Lr(se),"combo"))}},this.getFocusElements=x=>{const{nodes:b,edges:z}=this.getFilterData(),ee=b.filter(se=>xl(Au(se),x)Lr(se)),ae=z.filter(se=>{const{source:fe,target:me}=se,Ee=re.includes(fe),Oe=re.includes(me);switch(this.options.nodeType){case"both":return Ee&&Oe;case"either":return Ee!==Oe;case"source":return Ee&&!Oe;case"target":return!Ee&&Oe;default:return!1}});return{nodes:ee,edges:ae}},this.renderFocusElements=()=>{const{element:x,graph:b}=this.context;if(!this.isLensOn)return;const z=this.lens.getCenter(),{nodes:ee,edges:re}=this.getFocusElements(z),ae=new Set,se=fe=>{const me=Lr(fe);ae.add(me);const Ee=x.getElement(me);if(!Ee)return;const Oe=this.shapes.get(me)||Ee.cloneNode();Oe.setPosition(Ee.getPosition()),Oe.id=Ee.id,this.shapes.has(me)?Object.entries(Ee.attributes).forEach(([je,Ke])=>{Oe.style[je]!==Ke&&(Oe.style[je]=Ke)}):(this.canvas.appendChild(Oe),this.shapes.set(me,Oe));const ke=b.getElementType(me),We=this.getElementStyle(ke,fe);Oe.update(We)};ee.forEach(se),re.forEach(se),this.shapes.forEach((fe,me)=>{ae.has(me)||(fe.destroy(),this.shapes.delete(me))})},this.scaleRByWheel=x=>{var b;this.options.preventDefault&&x.preventDefault();const{clientX:z,clientY:ee,deltaX:re,deltaY:ae}=x,{graph:se,canvas:fe}=this.context,me=se.getCanvasByClient([z,ee]),Ee=(b=this.lens)===null||b===void 0?void 0:b.getCenter();if(!this.isLensOn||xl(me,Ee)>this.r)return;const{maxR:Oe,minR:ke}=this.options,We=re+ae>0?1/(1-zM):1-zM,je=Math.min(...fe.getSize())/2;this.r=Math.max(ke||0,Math.min(Oe||je,this.r*We)),this.renderLens(Ee),this.renderFocusElements()},this.isLensDragging=!1,this.onDragStart=x=>{var b;const z=Wu(x.canvas),ee=(b=this.lens)===null||b===void 0?void 0:b.getCenter();!this.isLensOn||xl(z,ee)>this.r||(this.isLensDragging=!0)},this.onDrag=x=>{if(!this.isLensDragging)return;const b=Wu(x.canvas);this.renderLens(b),this.renderFocusElements()},this.onDragEnd=()=>{this.isLensDragging=!1},this.bindEvents()}get canvas(){return this.context.canvas.getLayer("transient")}get isLensOn(){return this.lens&&!this.lens.destroyed}getElementStyle(a,y){const x=a==="node"?this.options.nodeStyle:this.options.edgeStyle;return typeof x=="function"?x(y):x}get graphDom(){return this.context.graph.getCanvas().getContextService().getDomElement()}bindEvents(){var a;const{graph:y}=this.context,{trigger:x,scaleRBy:b}=this.options,z=y.getCanvas().getLayer();["click","drag"].includes(x)&&z.addEventListener(ma.CLICK,this.onEdgeFilter),x==="pointermove"?z.addEventListener(ma.POINTER_MOVE,this.onEdgeFilter):x==="drag"&&(z.addEventListener(ma.DRAG_START,this.onDragStart),z.addEventListener(ma.DRAG,this.onDrag),z.addEventListener(ma.DRAG_END,this.onDragEnd)),b==="wheel"&&((a=this.graphDom)===null||a===void 0||a.addEventListener(ma.WHEEL,this.scaleRByWheel,{passive:!1}))}unbindEvents(){var a;const{graph:y}=this.context,{trigger:x,scaleRBy:b}=this.options,z=y.getCanvas().getLayer();["click","drag"].includes(x)&&z.removeEventListener(ma.CLICK,this.onEdgeFilter),x==="pointermove"?z.removeEventListener(ma.POINTER_MOVE,this.onEdgeFilter):x==="drag"&&(z.removeEventListener(ma.DRAG_START,this.onDragStart),z.removeEventListener(ma.DRAG,this.onDrag),z.removeEventListener(ma.DRAG_END,this.onDragEnd)),b==="wheel"&&((a=this.graphDom)===null||a===void 0||a.removeEventListener(ma.WHEEL,this.scaleRByWheel))}update(a){var y;this.unbindEvents(),super.update(a),this.r=(y=a.r)!==null&&y!==void 0?y:this.r,this.bindEvents()}destroy(){this.unbindEvents(),this.isLensOn&&this.lens.destroy(),this.shapes.forEach((a,y)=>{a.destroy(),this.shapes.delete(y)}),super.destroy()}}Gy.defaultOptions={trigger:"pointermove",r:60,nodeType:"both",filter:()=>!0,style:{lineWidth:2},nodeStyle:{label:!1},edgeStyle:{label:!0},scaleRBy:"wheel",preventDefault:!0};const fW={fill:"#ccc",fillOpacity:.1,lineWidth:2,stroke:"#000",strokeOpacity:.8,labelFontSize:12},UM=.05,WM=.1;class Hy extends Du{constructor(a,y){super(a,Object.assign({},Hy.defaultOptions,y)),this.r=this.options.r,this.d=this.options.d,this.onCreateFisheye=x=>{if(this.options.trigger==="drag"&&this.isLensOn)return;const b=Wu(x.canvas);this.onMagnify(b)},this.onMagnify=x=>{x.some(isNaN)||(this.renderLens(x),this.renderFocusElements())},this.renderLens=x=>{const b=Object.assign({},fW,this.options.style);this.isLensOn||(this.lens=new Sg({style:b}),this.canvas.appendChild(this.lens)),Object.assign(b,kd(x),{size:this.r*2,label:this.options.showDPercent,labelText:this.getDPercent()}),this.lens.update(b)},this.getDPercent=()=>{const{minD:x,maxD:b}=this.options;return`${Math.round((this.d-x)/(b-x)*100)}%`},this.prevMagnifiedStyleMap=new Map,this.prevOriginStyleMap=new Map,this.renderFocusElements=()=>{if(!this.isLensOn)return;const{graph:x}=this.context,b=this.lens.getCenter(),z=(this.d+1)*this.r,ee=new Map,re=new Map;x.getNodeData().forEach(se=>{const fe=Au(se),me=xl(fe,b);if(me>this.r)return;const Ee=z*me/(this.d*me+this.r),[Oe,ke]=fe,[We,je]=b,Ke=(Oe-We)/me,Ze=(ke-je)/me,Je=[We+Ee*Ke,je+Ee*Ze],tt=Lr(se),st=this.getNodeStyle(se),gt=Cg(x.getElementRenderStyle(tt),Object.keys(st));ee.set(tt,Object.assign(Object.assign({},kd(Je)),st)),re.set(tt,Object.assign(Object.assign({},kd(fe)),gt))}),this.updateStyle(ee,re)},this.getNodeStyle=x=>{const{nodeStyle:b}=this.options;return typeof b=="function"?b(x):b},this.updateStyle=(x,b)=>{const{graph:z,element:ee}=this.context,{enter:re,exit:ae,keep:se}=ph(Array.from(this.prevMagnifiedStyleMap.keys()),Array.from(x.keys()),Ee=>Ee),fe=new Set,me=(Ee,Oe)=>{const ke=ee.getElement(Ee);ke==null||ke.update(Oe),z.getRelatedEdgesData(Ee).forEach(We=>{fe.add(Lr(We))})};[...re,...se].forEach(Ee=>{me(Ee,x.get(Ee))}),ae.forEach(Ee=>{me(Ee,this.prevOriginStyleMap.get(Ee)),this.prevOriginStyleMap.delete(Ee)}),fe.forEach(Ee=>{const Oe=ee.getElement(Ee);Oe==null||Oe.update({})}),this.prevMagnifiedStyleMap=x,b.forEach((Ee,Oe)=>{this.prevOriginStyleMap.has(Oe)||this.prevOriginStyleMap.set(Oe,Ee)})},this.isWheelValid=x=>{if(this.options.preventDefault&&x.preventDefault(),!this.isLensOn)return!1;const{clientX:b,clientY:z}=x,ee=this.context.graph.getCanvasByClient([b,z]),re=this.lens.getCenter();return!(xl(ee,re)>this.r)},this.scaleR=x=>{const{maxR:b,minR:z}=this.options,ee=x?1/(1-UM):1-UM,re=Math.min(...this.context.canvas.getSize())/2;this.r=Math.max(z||0,Math.min(b||re,this.r*ee))},this.scaleD=x=>{const{maxD:b,minD:z}=this.options,ee=x?this.d+WM:this.d-WM;this.d=Math.max(z,Math.min(b,ee))},this.scaleRByWheel=x=>{if(!this.isWheelValid(x))return;const{deltaX:b,deltaY:z}=x;this.scaleR(b+z>0);const ee=this.lens.getCenter();this.onMagnify(ee)},this.scaleDByWheel=x=>{if(!this.isWheelValid(x))return;const{deltaX:b,deltaY:z}=x;this.scaleD(b+z>0);const ee=this.lens.getCenter();this.onMagnify(ee)},this.isDragValid=x=>{if(this.options.preventDefault&&x.preventDefault(),!this.isLensOn)return!1;const b=Wu(x.canvas),z=this.lens.getCenter();return!(xl(b,z)>this.r)},this.isLensDragging=!1,this.onDragStart=x=>{this.isDragValid(x)&&(this.isLensDragging=!0)},this.onDrag=x=>{if(!this.isLensDragging)return;const b=Wu(x.canvas);this.onMagnify(b)},this.onDragEnd=()=>{this.isLensDragging=!1},this.scaleRByDrag=x=>{if(!this.isLensDragging)return;const{dx:b,dy:z}=x;this.scaleR(b-z>0);const ee=this.lens.getCenter();this.onMagnify(ee)},this.scaleDByDrag=x=>{if(!this.isLensDragging)return;const{dx:b,dy:z}=x;this.scaleD(b-z>0);const ee=this.lens.getCenter();this.onMagnify(ee)},this.bindEvents()}get canvas(){return this.context.canvas.getLayer("transient")}get isLensOn(){return this.lens&&!this.lens.destroyed}get graphDom(){return this.context.graph.getCanvas().getContextService().getDomElement()}bindEvents(){var a;const{graph:y}=this.context,{trigger:x,scaleRBy:b,scaleDBy:z}=this.options,ee=y.getCanvas().getLayer();if(["click","drag"].includes(x)&&ee.addEventListener(ma.CLICK,this.onCreateFisheye),x==="pointermove"&&ee.addEventListener(ma.POINTER_MOVE,this.onCreateFisheye),x==="drag"||b==="drag"||z==="drag"){ee.addEventListener(ma.DRAG_START,this.onDragStart),ee.addEventListener(ma.DRAG_END,this.onDragEnd);const re=x==="drag"?this.onDrag:b==="drag"?this.scaleRByDrag:this.scaleDByDrag;ee.addEventListener(ma.DRAG,re)}if(b==="wheel"||z==="wheel"){const re=b==="wheel"?this.scaleRByWheel:this.scaleDByWheel;(a=this.graphDom)===null||a===void 0||a.addEventListener(ma.WHEEL,re,{passive:!1})}}unbindEvents(){var a;const{graph:y}=this.context,{trigger:x,scaleRBy:b,scaleDBy:z}=this.options,ee=y.getCanvas().getLayer();if(["click","drag"].includes(x)&&ee.removeEventListener(ma.CLICK,this.onCreateFisheye),x==="pointermove"&&ee.removeEventListener(ma.POINTER_MOVE,this.onCreateFisheye),x==="drag"||b==="drag"||z==="drag"){ee.removeEventListener(ma.DRAG_START,this.onDragStart),ee.removeEventListener(ma.DRAG_END,this.onDragEnd);const re=x==="drag"?this.onDrag:b==="drag"?this.scaleRByDrag:this.scaleDByDrag;ee.removeEventListener(ma.DRAG,re)}if(b==="wheel"||z==="wheel"){const re=b==="wheel"?this.scaleRByWheel:this.scaleDByWheel;(a=this.graphDom)===null||a===void 0||a.removeEventListener(ma.WHEEL,re)}}update(a){var y,x;this.unbindEvents(),super.update(a),this.r=(y=a.r)!==null&&y!==void 0?y:this.r,this.d=(x=a.d)!==null&&x!==void 0?x:this.d,this.bindEvents()}destroy(){var a;this.unbindEvents(),this.isLensOn&&((a=this.lens)===null||a===void 0||a.destroy()),this.prevMagnifiedStyleMap.clear(),this.prevOriginStyleMap.clear(),super.destroy()}}Hy.defaultOptions={trigger:"pointermove",r:120,d:1.5,maxD:5,minD:0,showDPercent:!0,style:{},nodeStyle:{label:!0},preventDefault:!0};class Vy extends Du{constructor(a,y){super(a,Object.assign({},Vy.defaultOptions,y)),this.$el=this.context.canvas.getContainer(),this.graphSize=[0,0],this.onFullscreenChange=()=>{var x,b,z,ee;const re=!!document.fullscreenElement;this.options.autoFit&&this.setGraphSize(re),re?(b=(x=this.options).onEnter)===null||b===void 0||b.call(x):(ee=(z=this.options).onExit)===null||ee===void 0||ee.call(z)},this.shortcut=new p0(a.graph),this.bindEvents(),this.style=document.createElement("style"),document.head.appendChild(this.style),this.style.innerHTML=` :not(:root):fullscreen::backdrop { background: transparent; } `}bindEvents(){this.unbindEvents(),this.shortcut.unbindAll();const{request:a=[],exit:y=[]}=this.options.trigger;this.shortcut.bind(a,this.request),this.shortcut.bind(y,this.exit),["webkitfullscreenchange","mozfullscreenchange","fullscreenchange","MSFullscreenChange"].forEach(b=>{document.addEventListener(b,this.onFullscreenChange,!1)})}unbindEvents(){this.shortcut.unbindAll(),["webkitfullscreenchange","mozfullscreenchange","fullscreenchange","MSFullscreenChange"].forEach(y=>{document.removeEventListener(y,this.onFullscreenChange,!1)})}setGraphSize(a=!0){var y,x;let b,z;a?(b=((y=globalThis.screen)===null||y===void 0?void 0:y.width)||0,z=((x=globalThis.screen)===null||x===void 0?void 0:x.height)||0,this.graphSize=this.context.graph.getSize()):[b,z]=this.graphSize,this.context.graph.setSize(b,z),this.context.graph.render()}request(){document.fullscreenElement||!hW()||this.$el.requestFullscreen().catch(a=>{Tc.warn(`Error attempting to enable full-screen: ${a.message} (${a.name})`)})}exit(){document.fullscreenElement&&document.exitFullscreen()}update(a){this.unbindEvents(),super.update(a),this.bindEvents()}destroy(){this.exit(),this.style.remove(),super.destroy()}}Vy.defaultOptions={trigger:{},autoFit:!0};function hW(){return document.fullscreenEnabled||Reflect.get(document,"webkitFullscreenEnabled")||Reflect.get(document,"mozFullscreenEnabled")||Reflect.get(document,"msFullscreenEnabled")}class Ky extends Du{constructor(a,y){super(a,Object.assign({},Ky.defaultOptions,y)),this.$element=w0("grid-line",!0),this.offset=[0,0],this.currentScale=1,this.followZoom=b=>{const{data:{scale:z,origin:ee}}=b;if(!z||ee===void 0&&this.context.viewport===void 0)return;const re=this.currentScale;this.currentScale=z;const ae=z/re,se=Rd(ee||this.context.graph.getCanvasCenter(),1-ae),fe=this.baseSize*z,me=Rd(this.offset,ae),Ee=BA(me,fe),Oe=es(Ee,se);this.$element.style.backgroundSize=`${fe}px ${fe}px`,this.$element.style.backgroundPosition=`${Oe[0]}px ${Oe[1]}px`,this.offset=BA(Oe,fe)},this.followTranslate=b=>{if(!this.options.follow)return;const{data:{translate:z}}=b;z&&this.updateOffset(z)},this.onTransform=b=>{const z=this.parseFollow(this.options.follow);z.zoom&&this.followZoom(b),z.translate&&this.followTranslate(b)},this.context.canvas.getContainer().prepend(this.$element),this.baseSize=this.options.size,this.updateStyle(),this.bindEvents()}update(a){super.update(a),a.size!==void 0&&(this.baseSize=a.size),this.updateStyle()}bindEvents(){const{graph:a}=this.context;a.on(si.AFTER_TRANSFORM,this.onTransform)}updateStyle(){const{stroke:a,lineWidth:y,border:x,borderLineWidth:b,borderStroke:z,borderStyle:ee}=this.options,re=this.baseSize*this.currentScale;Object.assign(this.$element.style,{border:x?`${b}px ${ee} ${z}`:"none",backgroundImage:`linear-gradient(${a} ${y}px, transparent ${y}px), linear-gradient(90deg, ${a} ${y}px, transparent ${y}px)`,backgroundSize:`${re}px ${re}px`,backgroundRepeat:"repeat"})}updateOffset(a){const y=this.baseSize*this.currentScale;this.offset=BA(es(this.offset,a),y),this.$element.style.backgroundPosition=`${this.offset[0]}px ${this.offset[1]}px`}parseFollow(a){var y,x;return J0(a)?{translate:a,zoom:a}:{translate:(y=a==null?void 0:a.translate)!==null&&y!==void 0?y:!1,zoom:(x=a==null?void 0:a.zoom)!==null&&x!==void 0?x:!1}}destroy(){this.context.graph.off(si.AFTER_TRANSFORM,this.onTransform),this.$element.remove(),super.destroy()}}Ky.defaultOptions={border:!0,borderLineWidth:1,borderStroke:"#eee",borderStyle:"solid",lineWidth:1,size:20,stroke:"#eee"};function zx(E){const a={Added:new Map,Updated:new Map,Removed:new Map};return E.forEach(y=>{const{type:x,value:b}=y,z=Lr(b);if(x==="NodeAdded"||x==="EdgeAdded"||x==="ComboAdded")a.Added.set(z,y);else if(x==="NodeUpdated"||x==="EdgeUpdated"||x==="ComboUpdated")if(a.Added.has(z))a.Added.set(z,{type:x.replace("Updated","Added"),value:b});else if(a.Updated.has(z)){const{original:ee}=a.Updated.get(z);a.Updated.set(z,{type:x,value:b,original:ee})}else a.Removed.has(z)||a.Updated.set(z,y);else(x==="NodeRemoved"||x==="EdgeRemoved"||x==="ComboRemoved")&&(a.Added.has(z)?a.Added.delete(z):(a.Updated.has(z)&&a.Updated.delete(z),a.Removed.set(z,y)))}),[...Array.from(a.Added.values()),...Array.from(a.Updated.values()),...Array.from(a.Removed.values())]}function jM(E){const{NodeAdded:a=[],NodeUpdated:y=[],NodeRemoved:x=[],EdgeAdded:b=[],EdgeUpdated:z=[],EdgeRemoved:ee=[],ComboAdded:re=[],ComboUpdated:ae=[],ComboRemoved:se=[]}=hp(E,fe=>fe.type);return{add:{nodes:a,edges:b,combos:re},update:{nodes:y,edges:z,combos:ae},remove:{nodes:x,edges:ee,combos:se}}}function GM(E,a){for(const y in E)$l(E[y])&&!Array.isArray(E[y])&&E[y]!==null?(a[y]||(a[y]={}),GM(E[y],a[y])):a[y]===void 0&&(a[y]=pv(y))}function gW(E,a=!1,y){const x={animation:a,current:{add:{},update:{},remove:{}},original:{add:{},update:{},remove:{}}},{add:b,update:z,remove:ee}=jM(zx(E));return["nodes","edges","combos"].forEach(re=>{z[re]&&z[re].forEach(ae=>{var se,fe;const me=Object.assign({},ae.value);let Ee=Object.assign({},ae.original);if(y){const Oe=y.graph.getElementType(Lr(ae.original)),ke=Oe==="edge"?"stroke":"fill",We=y.element.getElementComputedStyle(Oe,ae.original);Ee=Object.assign(Object.assign({},ae.original),{style:Object.assign({[ke]:We[ke]},ae.original.style)})}GM(me,Ee),(se=x.current.update)[re]||(se[re]=[]),x.current.update[re].push(me),(fe=x.original.update)[re]||(fe[re]=[]),x.original.update[re].push(Ee)}),b[re]&&b[re].forEach(ae=>{var se,fe;const me=Object.assign({},ae.value);(se=x.current.add)[re]||(se[re]=[]),x.current.add[re].push(me),(fe=x.original.remove)[re]||(fe[re]=[]),x.original.remove[re].push(me)}),ee[re]&&ee[re].forEach(ae=>{var se,fe;const me=Object.assign({},ae.value);(se=x.current.remove)[re]||(se[re]=[]),x.current.remove[re].push(me),(fe=x.original.add)[re]||(fe[re]=[]),x.original.add[re].push(me)})}),x}class Zy extends Du{constructor(a,y){super(a,Object.assign({},Zy.defaultOptions,y)),this.batchChanges=null,this.batchAnimation=!1,this.undoStack=[],this.redoStack=[],this.freezed=!1,this.executeCommand=(b,z=!0)=>{var ee,re,ae;this.freezed=!0,(re=(ee=this.options).executeCommand)===null||re===void 0||re.call(ee,b);const se=z?b.original:b.current;this.context.graph.addData(se.add),this.context.graph.updateData(se.update),this.context.graph.removeData(J2(se.remove,!1)),(ae=this.context.element)===null||ae===void 0||ae.draw({silence:!0,animation:b.animation}),this.freezed=!1},this.addCommand=b=>{var z;if(!this.freezed){if(b.type===si.AFTER_DRAW){const{dataChanges:ee=[],animation:re=!0}=b.data;if(!((z=this.context.batch)===null||z===void 0)&&z.isBatching){if(!this.batchChanges)return;this.batchChanges.push(ee),this.batchAnimation&&(this.batchAnimation=re);return}this.batchChanges=[ee],this.batchAnimation=re}this.undoStackPush(gW(this.batchChanges.flat(),this.batchAnimation,this.context)),this.notify(hh.ADD,this.undoStack[this.undoStack.length-1])}},this.initBatchCommand=b=>{const{initiate:z}=b.data;this.batchAnimation=!1,z?this.batchChanges=[]:this.undoStack.pop()||(this.batchChanges=null)},this.emitter=new cy;const{graph:x}=this.context;x.on(si.AFTER_DRAW,this.addCommand),x.on(si.BATCH_START,this.initBatchCommand),x.on(si.BATCH_END,this.addCommand)}canUndo(){return this.undoStack.length>0}canRedo(){return this.redoStack.length>0}undo(){var a,y,x,b;const z=this.undoStack.pop();if(z){if(this.executeCommand(z),((y=(a=this.options).beforeAddCommand)===null||y===void 0?void 0:y.call(a,z,!1))===!1)return;this.redoStack.push(z),(b=(x=this.options).afterAddCommand)===null||b===void 0||b.call(x,z,!1),this.notify(hh.UNDO,z)}return this}redo(){const a=this.redoStack.pop();return a&&(this.executeCommand(a,!1),this.undoStackPush(a),this.notify(hh.REDO,a)),this}undoAndCancel(){const a=this.undoStack.pop();return a&&(this.executeCommand(a,!1),this.redoStack=[],this.notify(hh.CANCEL,a)),this}undoStackPush(a){var y,x,b,z;const{stackSize:ee}=this.options;ee!==0&&this.undoStack.length>=ee&&this.undoStack.shift(),((x=(y=this.options).beforeAddCommand)===null||x===void 0?void 0:x.call(y,a,!0))!==!1&&(this.undoStack.push(a),(z=(b=this.options).afterAddCommand)===null||z===void 0||z.call(b,a,!0))}clear(){this.undoStack=[],this.redoStack=[],this.batchChanges=null,this.batchAnimation=!1,this.notify(hh.CLEAR,null)}notify(a,y){this.emitter.emit(a,{cmd:y}),this.emitter.emit(hh.CHANGE,{cmd:y})}on(a,y){this.emitter.on(a,y)}destroy(){const{graph:a}=this.context;a.off(si.AFTER_DRAW,this.addCommand),a.off(si.BATCH_START,this.initBatchCommand),a.off(si.BATCH_END,this.addCommand),this.emitter.off(),super.destroy(),this.undoStack=[],this.redoStack=[]}}Zy.defaultOptions={stackSize:0};const Ux={toXy(E,a){if(!a)return[...E];const y=a[0].slice(1),x=a[1].slice(1);return E.map(b=>[b[y],b[x]])},fromXy(E,a){if(!a)return[...E];const y=a[0].slice(1),x=a[1].slice(1);return E.map(([b,z])=>({[y]:b,[x]:z}))}};class vW{constructor(a,y){this._cells=[],this._cellSize=y,this._reverseCellSize=1/y;for(const x of a){const b=this.coordToCellNum(x[0]),z=this.coordToCellNum(x[1]);this._cells[b]||(this._cells[b]=[]),this._cells[b][z]||(this._cells[b][z]=[]),this._cells[b][z].push(x)}}cellPoints(a,y){var x;return((x=this._cells[a])===null||x===void 0?void 0:x[y])||[]}rangePoints(a){const y=this.coordToCellNum(a[0]),x=this.coordToCellNum(a[1]),b=this.coordToCellNum(a[2]),z=this.coordToCellNum(a[3]),ee=[];for(let re=y;re<=b;re++)for(let ae=x;ae<=z;ae++){const se=this.cellPoints(re,ae);for(const fe of se)ee.push(fe)}return ee}removePoint(a){const y=this.coordToCellNum(a[0]),x=this.coordToCellNum(a[1]),b=this._cells[y][x],z=b.findIndex(([ee,re])=>ee===a[0]&&re===a[1]);return z>-1&&b.splice(z,1),b}trunc(a){return Math.trunc(a)}coordToCellNum(a){return this.trunc(a*this._reverseCellSize)}extendBbox(a,y){return[a[0]-y*this._cellSize,a[1]-y*this._cellSize,a[2]+y*this._cellSize,a[3]+y*this._cellSize]}}function mW(E,a){return new vW(E,a)}const HM=+(Math.pow(2,27)+1);function Qy(E,a,y){const x=E*a,b=HM*E,z=b-E,ee=b-z,re=E-ee,ae=HM*a,se=ae-a,fe=ae-se,me=a-fe,ke=x-ee*fe-re*fe-ee*me,We=re*me-ke;return y?(y[0]=We,y[1]=x,y):[We,x]}function pW(E,a,y){const x=E+a,b=x-E,z=x-b,ee=a-b,re=E-z;return y?(y[0]=re+ee,y[1]=x,y):[re+ee,x]}function yW(E,a){const y=E.length;if(y===1){const re=Qy(E[0],a);return re[0]?re:[re[1]]}const x=new Array(2*y),b=[.1,.1],z=[.1,.1];let ee=0;Qy(E[0],a,b),b[0]&&(x[ee++]=b[0]);for(let re=1;re=x?(ke=fe,re+=1,re=x?(ke=fe,re+=1,re0){if(z<=0)return ee;re=b+z}else if(b<0){if(z>=0)return ee;re=-(b+z)}else return ee;const ae=bW*re;return ee>=ae||ee<=-ae?ee:DW(a,y,x)},function(a,y,x,b){const z=a[0]-b[0],ee=y[0]-b[0],re=x[0]-b[0],ae=a[1]-b[1],se=y[1]-b[1],fe=x[1]-b[1],me=a[2]-b[2],Ee=y[2]-b[2],Oe=x[2]-b[2],ke=ee*fe,We=re*se,je=re*ae,Ke=z*fe,Ze=z*se,Je=ee*ae,tt=me*(ke-We)+Ee*(je-Ke)+Oe*(Ze-Je),st=(Math.abs(ke)+Math.abs(We))*Math.abs(me)+(Math.abs(je)+Math.abs(Ke))*Math.abs(Ee)+(Math.abs(Ze)+Math.abs(Je))*Math.abs(Oe),gt=CW*st;return tt>gt||-tt>gt?tt:IW(a,y,x,b)}];function TW(E){let a=Lg[E.length];return a||(a=Lg[E.length]=Xy(E.length)),a.apply(void 0,...E)}function OW(E,a,y,x,b,z,ee){return function(...ae){switch(ae.length){case 0:case 1:return 0;case 2:return x(ae[0],ae[1]);case 3:return b(ae[0],ae[1],ae[2]);case 4:return z(ae[0],ae[1],ae[2],ae[3]);case 5:return ee(ae[0],ae[1],ae[2],ae[3],ae[4])}return E(ae)}}function LW(){for(;Lg.length<=VM;)Lg.push(Xy(Lg.length));const E=OW(void 0,TW,...Lg);for(let a=0;a<=VM;++a)E[a]=Lg[a];return E}var Hv=LW();const KM=Hv[3];function BW(E){const a=E.length;if(a<3){const re=new Array(a);for(let ae=0;ae{const se=E[re][0]-E[ae][0];return se||E[re][1]-E[ae][1]});const x=[y[0],y[1]],b=[y[0],y[1]];for(let re=2;re1&&KM(E[x[fe-2]],E[x[fe-1]],se)<=0;)fe-=1,x.pop();for(x.push(ae),fe=b.length;fe>1&&KM(E[b[fe-2]],E[b[fe-1]],se)>=0;)fe-=1,b.pop();b.push(ae)}const z=new Array(b.length+x.length-2);let ee=0;for(let re=0,ae=x.length;re0;--re)z[ee++]=b[re];return z}function NW(E,a,y,x){for(let b=0;b<2;++b){const z=E[b],ee=a[b],[re,ae]=[Math.min(z,ee),Math.max(z,ee)],se=y[b],fe=x[b],[me,Ee]=[Math.min(se,fe),Math.max(se,fe)];if(Ee0&&z>0||b<0&&z<0)return!1;const ee=Hv(y,E,a),re=Hv(x,E,a);return ee>0&&re>0||ee<0&&re<0?!1:b===0&&z===0&&ee===0&&re===0?NW(E,a,y,x):!0}function FW(E){const a=[E[0]];let y=E[0];for(let x=1;x=0;z--)E[z][0]x&&(x=E[z][0]),E[z][1]>b&&(b=E[z][1]);return[x-a,b-y]}function zW(E){return[Math.min(E[0][0],E[1][0]),Math.min(E[0][1],E[1][1]),Math.max(E[0][0],E[1][0]),Math.max(E[0][1],E[1][1])]}function UW(E,a,y){let x=null,b=XM,z=XM,ee,re;for(let ae=0;aeb&&re>z&&!QM([E[0],a[ae]],y)&&!QM([E[1],a[ae]],y)&&(b=ee,z=re,x=a[ae]);return x}function YM(E,a,y,x,b){let z=!1;for(let ee=0;eeme||y[1]>Ee));me>=y[0]&&Ee>=y[1]&&b.add(ae),Oe!==null&&(E.splice(ee+1,0,Oe),x.removePoint(Oe),z=!0)}return z?YM(E,a,y,x,b):E}function WW(E,a,y){const x=a||20,b=FW(kW(Ux.toXy(E,y)));if(b.length<4){const me=b.concat([b[0]]);return y?Ux.fromXy(me,y):me}const z=_W(b),ee=[z[0]*JM,z[1]*JM],re=BW(b).reverse().map(me=>b[me]);re.push(re[0]);const ae=b.filter(function(me){return re.indexOf(me)<0}),se=Math.ceil(1/(b.length/(z[0]*z[1]))),fe=YM(re,Math.pow(x,2),ee,mW(ae,se),new Set);return y?Ux.fromXy(fe,y):fe}const XM=Math.cos(90/(180/Math.PI)),JM=.6;function jW(E,a,y){if(E.length===1)return GW(E[0],a,y);if(E.length===2)return qM(E,a,y);if(E.length===3){const[x,b,z]=RA(E);if(lw(x,b,z))return qM([x,z],a,y)}switch(y){case"smooth":return VW(E,a);case"sharp":return KW(E,a);case"rounded":default:return HW(E,a)}}const GW=(E,a,y)=>{if(y==="sharp")return[["M",E[0]-a,E[1]-a],["L",E[0]+a,E[1]-a],["L",E[0]+a,E[1]+a],["L",E[0]-a,E[1]+a],["Z"]];const x=[a,a,0,0,0];return[["M",E[0],E[1]-a],["A",...x,E[0],E[1]+a],["A",...x,E[0],E[1]-a]]},qM=(E,a,y)=>{const x=[a,a,0,0,0],b=y==="sharp"?es(E[0],yh(Rf(fl(E[0],E[1])),a)):E[0],z=y==="sharp"?es(E[1],yh(Rf(fl(E[1],E[0])),a)):E[1],ee=yh(Rf(Tp(fl(b,z),!1)),a),re=yh(ee,-1),ae=es(b,ee),se=es(z,ee),fe=es(z,re),me=es(b,re);return y==="sharp"?[["M",ae[0],ae[1]],["L",se[0],se[1]],["L",fe[0],fe[1]],["L",me[0],me[1]],["Z"]]:[["M",ae[0],ae[1]],["L",se[0],se[1]],["A",...x,fe[0],fe[1]],["L",me[0],me[1]],["A",...x,ae[0],ae[1]]]},HW=(E,a)=>{const y=RA(E).map((re,ae)=>{const se=(ae-2+E.length)%E.length,fe=(ae-1+E.length)%E.length,me=(ae+1)%E.length,Ee=E[se],Oe=E[fe],ke=E[me],We=fl(Ee,Oe),je=fl(Oe,re),Ke=fl(re,ke),Ze=(mt,ct)=>LA(mt,ct,!0)yh(Rf(Tp(mt,!1)),a),gt=st(je);return[{p:Eg(Je?es(Oe,st(We)):es(Oe,gt)),concave:Je&&Oe},{p:Eg(tt?es(re,st(Ke)):es(re,gt)),concave:tt&&re}]}),x=[a,a,0,0,0],b=y.findIndex((re,ae)=>!y[(ae-1+y.length)%y.length][0].concave&&!y[(ae-1+y.length)%y.length][1].concave&&!re[0].concave&&!re[0].concave&&!re[1].concave),z=y.slice(b).concat(y.slice(0,b));let ee=[];return z.flatMap((re,ae)=>{const se=[],fe=z[y.length-1];return ae===0&&se.push(["M",...fe[1].p]),re[0].concave?ee.push(re[0].p,re[1].p):se.push(["A",...x,...re[0].p]),re[1].concave?ee.unshift(re[1].p):se.push(["L",...re[1].p]),ee.length===3&&(se.pop(),se.push(["C",...ee.flat()]),ee=[]),se})},VW=(E,a)=>{const y=RA(E).map((x,b)=>{const z=E[(b+1)%E.length];return{p:x,v:Rf(fl(z,x))}});return y.forEach((x,b)=>{const z=b>0?b-1:E.length-1,ee=y[z].v,re=Rf(es(ee,yh(x.v,LA(ee,x.v,!0)x.p))},KW=(E,a)=>{const x=E.map((z,ee)=>{const re=E[ee===0?E.length-1:ee-1],ae=Sv(yh(Rf(Tp(fl(re,z),!1)),a));return[es(re,ae),es(z,ae)]}).flat();return x.map((z,ee)=>{if(ee%2===0)return null;const re=[x[(ee-1)%x.length],x[ee%x.length]],ae=[x[(ee+1)%x.length],x[(ee+2)%x.length]];return NA(re,ae,!0)}).filter(Boolean).map((z,ee)=>[ee===0?"M":"L",z[0],z[1]]).concat([["Z"]])};var ZW=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b{if(!this.shape)this.shape=new Dv({style:this.getHullStyle()}),this.context.canvas.appendChild(this.shape);else{const x=!nu(this.optionsCache,this.options);this.shape.update(this.getHullStyle(x))}this.optionsCache=Object.assign({},this.options)},this.updateHullPath=x=>{this.shape&&this.options.members.includes(Lr(x.data))&&this.shape.update({d:this.getHullPath(!0)})},this.getHullPath=(x=!1)=>{const{graph:b}=this.context,z=this.getMember();if(z.length===0)return"";const ee=z.map(se=>b.getNodeData(se)),re=WW(ee.map(Au),this.options.concavity).slice(1).reverse(),ae=re.flatMap(se=>ee.filter(fe=>nu(Au(fe),se)).map(Lr));return nu(ae,this.hullMemberIds)&&!x?this.path:(this.hullMemberIds=ae,this.path=jW(re,this.getPadding(),this.options.corner),this.path)},this.bindEvents()}bindEvents(){this.context.graph.on(si.AFTER_RENDER,this.drawHull),this.context.graph.on(si.AFTER_ELEMENT_UPDATE,this.updateHullPath)}unbindEvents(){this.context.graph.off(si.AFTER_RENDER,this.drawHull),this.context.graph.off(si.AFTER_ELEMENT_UPDATE,this.updateHullPath)}getHullStyle(a){const y=this.options,{members:x,padding:b,corner:z}=y,ee=ZW(y,["members","padding","corner"]);return Object.assign(Object.assign({},ee),{d:this.getHullPath(a)})}getPadding(){const{graph:a}=this.context;return this.hullMemberIds.reduce((x,b)=>{const{halfExtents:z}=a.getElementRenderBounds(b),ee=Math.max(z[0],z[1]);return Math.max(x,ee)},0)+this.options.padding}addMember(a){const y=Array.isArray(a)?a:[a];this.options.members=[...new Set([...this.options.members,...y])],this.shape.update({d:this.getHullPath()})}removeMember(a){const y=Array.isArray(a)?a:[a];this.options.members=this.options.members.filter(x=>!y.includes(x)),y.some(x=>this.hullMemberIds.includes(x))&&this.shape.update({d:this.getHullPath()})}updateMember(a){this.options.members=$i(a)?a(this.options.members):a,this.shape.update(this.getHullStyle(!0))}getMember(){return this.options.members}destroy(){this.unbindEvents(),this.shape.destroy(),this.hullMemberIds=[],super.destroy()}}Jy.defaultOptions={members:[],padding:10,corner:"rounded",concavity:1/0,fill:"lightblue",fillOpacity:.2,labelOpacity:1,stroke:"blue",strokeOpacity:.2};function $M(E,a){a(E),E.children&&E.children.forEach(function(y){y&&$M(y,a)})}function Vv(E){qy(E,!0)}function Ud(E){qy(E,!1)}function qy(E,a){var y=a?"visible":"hidden";$M(E,function(x){x.attr("visibility",y)})}var QW=5,eD=function(E,a,y,x){y===void 0&&(y=0),x===void 0&&(x=QW),Object.entries(a).forEach(function(b){var z=(0,Bt.CR)(b,2),ee=z[0],re=z[1],ae=E;Object.prototype.hasOwnProperty.call(a,ee)&&(re?m0(re)?(m0(E[ee])||(ae[ee]={}),y="A"&&y<="Z"};function ts(E,a,y){y===void 0&&(y=!1);var x={};return Object.entries(E).forEach(function(b){var z=(0,Bt.CR)(b,2),ee=z[0],re=z[1];if(!(ee==="className"||ee==="class")){if($y(ee,"show")&&$y(nD(ee,"show"),a)!==y)ee===$W(a,"show")?x[ee]=re:x[ee.replace(new RegExp(jx(a)),"")]=re;else if(!$y(ee,"show")&&$y(ee,a)!==y){var ae=nD(ee,a);ae==="filter"&&typeof re=="function"||(x[ae]=re)}}}),x}function M0(E,a){return Object.entries(E).reduce(function(y,x){var b=(0,Bt.CR)(x,2),z=b[0],ee=b[1];return z.startsWith("show")?y["show".concat(a).concat(z.slice(4))]=ee:y["".concat(a).concat(jx(z))]=ee,y},{})}function Uf(E,a){a===void 0&&(a=["x","y","class","className"]);var y=["transform","transformOrigin","anchor","visibility","pointerEvents","zIndex","cursor","clipPath","clipPathTargets","offsetPath","offsetPathTargets","offsetDistance","draggable","droppable"],x={},b={};return Object.entries(E).forEach(function(z){var ee=(0,Bt.CR)(z,2),re=ee[0],ae=ee[1];a.includes(re)||(y.indexOf(re)!==-1?b[re]=ae:x[re]=ae)}),[x,b]}var tj=function(E){if(!Cc(E))return[];for(var a=[],y=0;y=this.left&&a<=this.right&&y>=this.top&&y<=this.bottom},E}();function lee(E){var a=E.getRenderBounds(),y=__read(a.min,2),x=y[0],b=y[1],z=__read(a.max,2),ee=z[0],re=z[1],ae=ee-x,se=re-b;return new tc(x,b,ae,se)}var Wd=function(E,a){var y=function(b){return"".concat(a,"-").concat(b)},x=Object.fromEntries(Object.entries(E).map(function(b){var z=(0,Bt.CR)(b,2),ee=z[0],re=z[1],ae=y(re);return[ee,{name:ae,class:".".concat(ae),id:"#".concat(ae),toString:function(){return ae}}]}));return Object.assign(x,{prefix:y}),x};function e1(E){return/\S+-\S+/g.test(E)?E.split("-").map(function(a){return a[0]}):E.length>2?[E[0]]:E.split("")}function Hu(E){if(Wi(E))return[E,E,E,E];if(Cc(E)){var a=E.length;if(a===1)return[E[0],E[0],E[0],E[0]];if(a===2)return[E[0],E[1],E[0],E[1]];if(a===3)return[E[0],E[1],E[2],E[1]];if(a===4)return E}return[0,0,0,0]}function Lc(E,a,y,x,b){return x===void 0&&(x=!0),b===void 0&&(b=function(z){z.node().removeChildren()}),E?y(a):(x&&b(a),null)}function nc(E,a,y){return y?"".concat(E," ").concat(y,"legend-").concat(a):E}function uee(E,a,y){var x=E.classNamePrefix,b=x===void 0?"":x;return nc(a.name,y,b)}var dc={title:"title",item:"item",marker:"marker",label:"label",value:"value",focusIcon:"focus-icon",background:"background",ribbon:"ribbon",track:"track",selection:"selection",handle:"handle",handleMarker:"handle-marker",handleLabel:"handle-label",indicator:"indicator",prevBtn:"prev-btn",nextBtn:"next-btn",pageInfo:"page-info"},Hx=Wd({text:"text"},"title");function sj(E,a){var y=E.attributes,x=y.position,b=y.spacing,z=y.inset,ee=y.text,re=E.getBBox(),ae=a.getBBox(),se=e1(x),fe=(0,Bt.CR)(Hu(ee?b:0),4),me=fe[0],Ee=fe[1],Oe=fe[2],ke=fe[3],We=(0,Bt.CR)(Hu(z),4),je=We[0],Ke=We[1],Ze=We[2],Je=We[3],tt=(0,Bt.CR)([ke+Ee,me+Oe],2),st=tt[0],gt=tt[1],mt=(0,Bt.CR)([Je+Ke,je+Ze],2),ct=mt[0],Lt=mt[1];if(se[0]==="l")return new tc(re.x,re.y,ae.width+re.width+st+ct,Math.max(ae.height+Lt,re.height));if(se[0]==="t")return new tc(re.x,re.y,Math.max(ae.width+ct,re.width),ae.height+re.height+gt+Lt);var _t=(0,Bt.CR)([a.attributes.width||ae.width,a.attributes.height||ae.height],2),Yt=_t[0],$t=_t[1];return new tc(ae.x,ae.y,Yt+re.width+st+ct,$t+re.height+gt+Lt)}function lj(E,a){var y=Object.entries(a).reduce(function(x,b){var z=(0,Bt.CR)(b,2),ee=z[0],re=z[1],ae=E.node().attr(ee);return ae||(x[ee]=re),x},{});E.styles(y)}function uj(E){var a,y,x,b,z=E,ee=z.width,re=z.height,ae=z.position,se=(0,Bt.CR)([+ee/2,+re/2],2),fe=se[0],me=se[1],Ee=(0,Bt.CR)([+fe,+me,"center","middle"],4),Oe=Ee[0],ke=Ee[1],We=Ee[2],je=Ee[3],Ke=e1(ae);return Ke.includes("l")&&(a=(0,Bt.CR)([0,"start"],2),Oe=a[0],We=a[1]),Ke.includes("r")&&(y=(0,Bt.CR)([+ee,"end"],2),Oe=y[0],We=y[1]),Ke.includes("t")&&(x=(0,Bt.CR)([0,"top"],2),ke=x[0],je=x[1]),Ke.includes("b")&&(b=(0,Bt.CR)([+re,"bottom"],2),ke=b[0],je=b[1]),{x:Oe,y:ke,textAlign:We,textBaseline:je}}var cj=function(E){(0,Bt.ZT)(a,E);function a(y){return E.call(this,y,{text:"",width:0,height:0,fill:"#4a505a",fontWeight:"bold",fontSize:12,fontFamily:"sans-serif",inset:0,spacing:0,position:"top-left"})||this}return a.prototype.getAvailableSpace=function(){var y=this,x=this.attributes,b=x.width,z=x.height,ee=x.position,re=x.spacing,ae=x.inset,se=y.querySelector(Hx.text.class);if(!se)return new tc(0,0,+b,+z);var fe=se.getBBox(),me=fe.width,Ee=fe.height,Oe=(0,Bt.CR)(Hu(re),4),ke=Oe[0],We=Oe[1],je=Oe[2],Ke=Oe[3],Ze=(0,Bt.CR)([0,0,+b,+z],4),Je=Ze[0],tt=Ze[1],st=Ze[2],gt=Ze[3],mt=e1(ee);if(mt.includes("i"))return new tc(Je,tt,st,gt);mt.forEach(function(tr,Cn){var xn,Ln,nr,An;tr==="t"&&(xn=(0,Bt.CR)(Cn===0?[Ee+je,+z-Ee-je]:[0,+z],2),tt=xn[0],gt=xn[1]),tr==="r"&&(Ln=(0,Bt.CR)([+b-me-Ke],1),st=Ln[0]),tr==="b"&&(nr=(0,Bt.CR)([+z-Ee-ke],1),gt=nr[0]),tr==="l"&&(An=(0,Bt.CR)(Cn===0?[me+We,+b-me-We]:[0,+b],2),Je=An[0],st=An[1])});var ct=(0,Bt.CR)(Hu(ae),4),Lt=ct[0],_t=ct[1],Yt=ct[2],$t=ct[3],En=(0,Bt.CR)([$t+_t,Lt+Yt],2),on=En[0],Fn=En[1];return new tc(Je+$t,tt+Lt,st-on,gt-Fn)},a.prototype.getBBox=function(){return this.title?this.title.getBBox():new tc(0,0,0,0)},a.prototype.render=function(y,x){var b=this,z=y.width,ee=y.height,re=y.position,ae=y.spacing,se=y.classNamePrefix,fe=(0,Bt._T)(y,["width","height","position","spacing","classNamePrefix"]),me=(0,Bt.CR)(Uf(fe),1),Ee=me[0],Oe=uj(y),ke=Oe.x,We=Oe.y,je=Oe.textAlign,Ke=Oe.textBaseline;Lc(!!fe.text,eo(x),function(Ze){var Je=nc(Hx.text.name,dc.title,se);b.title=Ze.maybeAppendByClassName(Hx.text,"text").attr("className",Je).styles(Ee).call(lj,{x:ke,y:We,textAlign:je,textBaseline:Ke}).node()})},a}(kl),Vx=function(){};function Bc(E,a){return $i(E)?E.apply(void 0,(0,Bt.ev)([],(0,Bt.CR)(a),!1)):E}function dj(E,a){return E.reduce(function(y,x){return(y[x[a]]=y[x[a]]||[]).push(x),y},{})}function fj(E){return typeof E=="boolean"?!1:"enter"in E&&"update"in E&&"exit"in E}function rD(E){if(!E)return{enter:!1,update:!1,exit:!1};var a=["enter","update","exit"],y=Object.fromEntries(Object.entries(E).filter(function(x){var b=(0,Bt.CR)(x,1),z=b[0];return!a.includes(z)}));return Object.fromEntries(a.map(function(x){return fj(E)?E[x]===!1?[x,!1]:[x,(0,Bt.pi)((0,Bt.pi)({},E[x]),y)]:[x,y]}))}function D0(E,a){E?E.finished.then(a):a()}function hj(E,a){E.length===0?a():Promise.all(E.map(function(y){return y==null?void 0:y.finished})).then(a)}function aD(E,a){"update"in E?E.update(a):E.attr(a)}function iD(E,a,y){if(a.length===0)return null;if(!y){var x=a.slice(-1)[0];return aD(E,{style:x}),null}return E.animate(a,y)}function gj(E,a){return!(E.nodeName!=="text"||a.nodeName!=="text"||E.attributes.text!==a.attributes.text)}function vj(E,a,y,x){if(x===void 0&&(x="destroy"),gj(E,a))return E.remove(),[null];var b=function(){x==="destroy"?E.destroy():x==="hide"&&Ud(E),a.isVisible()&&Vv(a)};if(!y)return b(),[null];var z=y.duration,ee=z===void 0?0:z,re=y.delay,ae=re===void 0?0:re,se=Math.ceil(+ee/2),fe=+ee/4,me=(0,Bt.CR)(E.getGeometryBounds().center,2),Ee=me[0],Oe=me[1],ke=(0,Bt.CR)(a.getGeometryBounds().center,2),We=ke[0],je=ke[1],Ke=(0,Bt.CR)([(Ee+We)/2-Ee,(Oe+je)/2-Oe],2),Ze=Ke[0],Je=Ke[1],tt=E.style.opacity,st=tt===void 0?1:tt,gt=a.style.opacity,mt=gt===void 0?1:gt,ct=E.style.transform||"",Lt=a.style.transform||"",_t=E.animate([{opacity:st,transform:"translate(0, 0) ".concat(ct)},{opacity:0,transform:"translate(".concat(Ze,", ").concat(Je,") ").concat(ct)}],(0,Bt.pi)((0,Bt.pi)({fill:"both"},y),{duration:ae+se+fe})),Yt=a.animate([{opacity:0,transform:"translate(".concat(-Ze,", ").concat(-Je,") ").concat(Lt),offset:.01},{opacity:mt,transform:"translate(0, 0) ".concat(Lt)}],(0,Bt.pi)((0,Bt.pi)({fill:"both"},y),{duration:se+fe,delay:ae+se-fe}));return D0(Yt,b),[_t,Yt]}function jd(E,a,y){var x={},b={};return Object.entries(a).forEach(function(z){var ee=(0,Bt.CR)(z,2),re=ee[0],ae=ee[1];if(!wo(ae)){var se=E.style[re]||E.parsedStyle[re]||0;se!==ae&&(x[re]=se,b[re]=ae)}}),y?iD(E,[x,b],(0,Bt.pi)({fill:"both"},y)):(aD(E,b),null)}function mj(E){var a;return((a=E[0])===null||a===void 0?void 0:a.map(function(y,x){return E.map(function(b){return b[x]})}))||[]}function Kx(E,a,y){y===void 0&&(y=!1);var x=E.getBBox(),b=x.width,z=x.height,ee=a/Math.max(b,z);return y&&(E.style.transform="scale(".concat(ee,")")),ee}var oD=function(E,a,y){return[["M",E-y,a],["A",y,y,0,1,0,E+y,a],["A",y,y,0,1,0,E-y,a],["Z"]]},pj=oD,yj=function(E,a,y){return[["M",E-y,a-y],["L",E+y,a-y],["L",E+y,a+y],["L",E-y,a+y],["Z"]]},Ej=function(E,a,y){return[["M",E-y,a],["L",E,a-y],["L",E+y,a],["L",E,a+y],["Z"]]},Aj=function(E,a,y){var x=y*Math.sin(.3333333333333333*Math.PI);return[["M",E-y,a+x],["L",E,a-x],["L",E+y,a+x],["Z"]]},xj=function(E,a,y){var x=y*Math.sin(.3333333333333333*Math.PI);return[["M",E-y,a-x],["L",E+y,a-x],["L",E,a+x],["Z"]]},Sj=function(E,a,y){var x=y/2*Math.sqrt(3);return[["M",E,a-y],["L",E+x,a-y/2],["L",E+x,a+y/2],["L",E,a+y],["L",E-x,a+y/2],["L",E-x,a-y/2],["Z"]]},bj=function(E,a,y){var x=y-1.5;return[["M",E-y,a-x],["L",E+y,a+x],["L",E+y,a-x],["L",E-y,a+x],["Z"]]},sD=function(E,a,y){return[["M",E,a+y],["L",E,a-y]]},Cj=function(E,a,y){return[["M",E-y,a-y],["L",E+y,a+y],["M",E+y,a-y],["L",E-y,a+y]]},Pj=function(E,a,y){return[["M",E-y/2,a-y],["L",E+y/2,a-y],["M",E,a-y],["L",E,a+y],["M",E-y/2,a+y],["L",E+y/2,a+y]]},wj=function(E,a,y){return[["M",E-y,a],["L",E+y,a],["M",E,a-y],["L",E,a+y]]},Mj=function(E,a,y){return[["M",E-y,a],["L",E+y,a]]},lD=function(E,a,y){return[["M",E-y,a],["L",E+y,a]]},Dj=lD,Ij=function(E,a,y){return[["M",E-y,a],["A",y/2,y/2,0,1,1,E,a],["A",y/2,y/2,0,1,0,E+y,a]]},Tj=function(E,a,y){return[["M",E-y-1,a-2.5],["L",E,a-2.5],["L",E,a+2.5],["L",E+y+1,a+2.5]]},Oj=function(E,a,y){return[["M",E-y-1,a+2.5],["L",E,a+2.5],["L",E,a-2.5],["L",E+y+1,a-2.5]]},Lj=function(E,a,y){return[["M",E-(y+1),a+2.5],["L",E-y/2,a+2.5],["L",E-y/2,a-2.5],["L",E+y/2,a-2.5],["L",E+y/2,a+2.5],["L",E+y+1,a+2.5]]};function Bj(E,a){return[["M",E-5,a+2.5],["L",E-5,a],["L",E,a],["L",E,a-3],["L",E,a+3],["L",E+6.5,a+3]]}var Nj=function(E,a,y){return[["M",E-y,a-y],["L",E+y,a],["L",E-y,a+y],["Z"]]},Rj=function(E,a,y){var x=y,b=y*.2,z=y*.7;return[["M",E-x,a],["A",x,x,0,1,0,E+x,a],["A",x,x,0,1,0,E-x,a],["Z"],["M",E-z,a],["L",E-b,a],["M",E+b,a],["L",E+z,a],["M",E,a-z],["L",E,a-b],["M",E,a+b],["L",E,a+z]]},fc=Wd({prevBtnGroup:"prev-btn-group",prevBtn:"prev-btn",nextBtnGroup:"next-btn-group",nextBtn:"next-btn",pageInfoGroup:"page-info-group",pageInfo:"page-info",playWindow:"play-window",contentGroup:"content-group",controller:"controller",clipPath:"clip-path"},"navigator"),Fj=function(E){(0,Bt.ZT)(a,E);function a(y){var x=E.call(this,y,{x:0,y:0,animate:{easing:"linear",duration:200,fill:"both"},buttonCursor:"pointer",buttonFill:"black",buttonD:Nj(0,0,6),buttonSize:12,controllerPadding:5,controllerSpacing:5,formatter:function(b,z){return"".concat(b,"/").concat(z)},defaultPage:0,loop:!1,orientation:"horizontal",pageNumFill:"black",pageNumFontSize:12,pageNumTextAlign:"start",pageNumTextBaseline:"middle"})||this;return x.playState="idle",x.contentGroup=x.appendChild(new Eu({class:fc.contentGroup.name})),x.playWindow=x.contentGroup.appendChild(new Eu({class:fc.playWindow.name})),x.innerCurrPage=x.defaultPage,x}return Object.defineProperty(a.prototype,"defaultPage",{get:function(){var y=this.attributes.defaultPage;return Nl(y,0,Math.max(this.pageViews.length-1,0))},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"pageViews",{get:function(){return this.playWindow.children},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"controllerShape",{get:function(){return this.totalPages>1?{width:55,height:0}:{width:0,height:0}},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"pageShape",{get:function(){var y=this.pageViews,x=(0,Bt.CR)(mj(y.map(function(me){var Ee=me.getBBox(),Oe=Ee.width,ke=Ee.height;return[Oe,ke]})).map(function(me){return Math.max.apply(Math,(0,Bt.ev)([],(0,Bt.CR)(me),!1))}),2),b=x[0],z=x[1],ee=this.attributes,re=ee.pageWidth,ae=re===void 0?b:re,se=ee.pageHeight,fe=se===void 0?z:se;return{pageWidth:ae,pageHeight:fe}},enumerable:!1,configurable:!0}),a.prototype.getContainer=function(){return this.playWindow},Object.defineProperty(a.prototype,"totalPages",{get:function(){return this.pageViews.length},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"currPage",{get:function(){return this.innerCurrPage},enumerable:!1,configurable:!0}),a.prototype.getBBox=function(){var y=E.prototype.getBBox.call(this),x=y.x,b=y.y,z=this.controllerShape,ee=this.pageShape,re=ee.pageWidth,ae=ee.pageHeight;return new tc(x,b,re+z.width,ae)},a.prototype.goTo=function(y){var x=this,b=this.attributes.animate,z=this,ee=z.currPage,re=z.playState,ae=z.playWindow,se=z.pageViews;if(re!=="idle"||y<0||se.length<=0||y>=se.length)return null;se[ee].setLocalPosition(0,0),this.prepareFollowingPage(y);var fe=(0,Bt.CR)(this.getFollowingPageDiff(y),2),me=fe[0],Ee=fe[1];this.playState="running";var Oe=iD(ae,[{transform:"translate(0, 0)"},{transform:"translate(".concat(-me,", ").concat(-Ee,")")}],b);return D0(Oe,function(){x.innerCurrPage=y,x.playState="idle",x.setVisiblePages([y]),x.updatePageInfo()}),Oe},a.prototype.prev=function(){var y=this.attributes.loop,x=this.pageViews.length,b=this.currPage;if(!y&&b<=0)return null;var z=y?(b-1+x)%x:Nl(b-1,0,x);return this.goTo(z)},a.prototype.next=function(){var y=this.attributes.loop,x=this.pageViews.length,b=this.currPage;if(!y&&b>=x-1)return null;var z=y?(b+1)%x:Nl(b+1,0,x);return this.goTo(z)},a.prototype.renderClipPath=function(y){var x=this.pageShape,b=x.pageWidth,z=x.pageHeight;if(!b||!z){this.contentGroup.style.clipPath=void 0;return}this.clipPath=y.maybeAppendByClassName(fc.clipPath,"rect").styles({width:b,height:z}),this.contentGroup.attr("clipPath",this.clipPath.node())},a.prototype.setVisiblePages=function(y){this.playWindow.children.forEach(function(x,b){y.includes(b)?Vv(x):Ud(x)})},a.prototype.adjustControllerLayout=function(){var y=this,x=y.prevBtnGroup,b=y.nextBtnGroup,z=y.pageInfoGroup,ee=this.attributes,re=ee.orientation,ae=ee.controllerPadding,se=z.getBBox(),fe=se.width,me=se.height,Ee=(0,Bt.CR)(re==="horizontal"?[-180,0]:[-90,90],2),Oe=Ee[0],ke=Ee[1];x.setLocalEulerAngles(Oe),b.setLocalEulerAngles(ke);var We=x.getBBox(),je=We.width,Ke=We.height,Ze=b.getBBox(),Je=Ze.width,tt=Ze.height,st=Math.max(je,fe,Je),gt=re==="horizontal"?{offset:[[0,0],[je/2+ae,0],[je+fe+ae*2,0]],textAlign:"start"}:{offset:[[st/2,-Ke-ae],[st/2,0],[st/2,tt+ae]],textAlign:"center"},mt=(0,Bt.CR)(gt.offset,3),ct=(0,Bt.CR)(mt[0],2),Lt=ct[0],_t=ct[1],Yt=(0,Bt.CR)(mt[1],2),$t=Yt[0],En=Yt[1],on=(0,Bt.CR)(mt[2],2),Fn=on[0],tr=on[1],Cn=gt.textAlign,xn=z.querySelector("text");xn&&(xn.style.textAlign=Cn),x.setLocalPosition(Lt,_t),z.setLocalPosition($t,En),b.setLocalPosition(Fn,tr)},a.prototype.updatePageInfo=function(){var y,x=this,b=x.currPage,z=x.pageViews,ee=x.attributes.formatter;z.length<2||((y=this.pageInfoGroup.querySelector(fc.pageInfo.class))===null||y===void 0||y.attr("text",ee(b+1,z.length)),this.adjustControllerLayout())},a.prototype.getFollowingPageDiff=function(y){var x=this.currPage;if(x===y)return[0,0];var b=this.attributes.orientation,z=this.pageShape,ee=z.pageWidth,re=z.pageHeight,ae=y=2,Ee=y.maybeAppendByClassName(fc.controller,"g");if(qy(Ee.node(),me),!!me){var Oe=ts(this.attributes,"button"),ke=ts(this.attributes,"pageNum"),We=(0,Bt.CR)(Uf(Oe),2),je=We[0],Ke=We[1],Ze=je.size,Je=(0,Bt._T)(je,["size"]),tt=!Ee.select(fc.prevBtnGroup.class).node(),st=Ee.maybeAppendByClassName(fc.prevBtnGroup,"g").styles(Ke);this.prevBtnGroup=st.node();var gt=st.maybeAppendByClassName(fc.prevBtn,"path");if(re){var mt=nc(fc.prevBtn.name,dc.prevBtn,re);gt.node().setAttribute("class",mt)}var ct=Ee.maybeAppendByClassName(fc.nextBtnGroup,"g").styles(Ke);this.nextBtnGroup=ct.node();var Lt=ct.maybeAppendByClassName(fc.nextBtn,"path");if(re){var _t=nc(fc.nextBtn.name,dc.nextBtn,re);Lt.node().setAttribute("class",_t)}[gt,Lt].forEach(function(on){on.styles((0,Bt.pi)((0,Bt.pi)({},Je),{transformOrigin:"center"})),Kx(on.node(),Ze,!0)});var Yt=Ee.maybeAppendByClassName(fc.pageInfoGroup,"g");this.pageInfoGroup=Yt.node();var $t=Yt.maybeAppendByClassName(fc.pageInfo,"text");if($t.styles(ke),re){var En=nc(fc.pageInfo.name,dc.pageInfo,re);$t.node().setAttribute("class",En)}this.updatePageInfo(),Ee.node().setLocalPosition(se+z,fe/2),tt&&(this.prevBtnGroup.addEventListener("click",function(){x.prev()}),this.nextBtnGroup.addEventListener("click",function(){x.next()}))}},a.prototype.render=function(y,x){var b=y.x,z=b===void 0?0:b,ee=y.y,re=ee===void 0?0:ee;this.attr("transform","translate(".concat(z,", ").concat(re,")"));var ae=eo(x);this.renderClipPath(ae),this.renderController(ae),this.setVisiblePages([this.defaultPage]),this.goTo(this.defaultPage)},a.prototype.bindEvents=function(){var y=this,x=Nv(function(){return y.render(y.attributes,y)},50);this.playWindow.addEventListener(Es.INSERTED,x),this.playWindow.addEventListener(Es.REMOVED,x)},a}(kl);function kj(E){var a="default";if($l(E)&&E instanceof Image)a="image";else if($i(E))a="symbol";else if(Us(E)){var y=new RegExp("data:(image|text)");E.match(y)?a="base64":/^(https?:\/\/(([a-zA-Z0-9]+-?)+[a-zA-Z0-9]+\.)+[a-zA-Z]+)(:\d+)?(\/.*)?(\?.*)?(#.*)?$/.test(E)?a="url":a="symbol"}return a}function _j(E){var a=kj(E);return["base64","url","image"].includes(a)?"image":E&&a==="symbol"?"path":null}var tl=function(E){(0,Bt.ZT)(a,E);function a(){return E!==null&&E.apply(this,arguments)||this}return a.prototype.render=function(y,x){var b=y.x,z=b===void 0?0:b,ee=y.y,re=ee===void 0?0:ee,ae=this.getSubShapeStyle(y),se=ae.symbol,fe=ae.size,me=fe===void 0?16:fe,Ee=(0,Bt._T)(ae,["symbol","size"]),Oe=_j(se);Lc(!!Oe,eo(x),function(ke){ke.maybeAppendByClassName("marker",Oe).attr("className","marker ".concat(Oe,"-marker")).call(function(We){if(Oe==="image"){var je=me*2;We.styles({img:se,width:je,height:je,x:z-me,y:re-me})}else{var je=me/2,Ke=$i(se)?se:a.getSymbol(se);We.styles((0,Bt.pi)({d:Ke==null?void 0:Ke(z,re,je)},Ee))}})})},a.MARKER_SYMBOL_MAP=new Map,a.registerSymbol=function(y,x){a.MARKER_SYMBOL_MAP.set(y,x)},a.getSymbol=function(y){return a.MARKER_SYMBOL_MAP.get(y)},a.getSymbols=function(){return Array.from(a.MARKER_SYMBOL_MAP.keys())},a}(kl);tl.registerSymbol("cross",Cj),tl.registerSymbol("hyphen",Mj),tl.registerSymbol("line",sD),tl.registerSymbol("plus",wj),tl.registerSymbol("tick",Pj),tl.registerSymbol("circle",oD),tl.registerSymbol("point",pj),tl.registerSymbol("bowtie",bj),tl.registerSymbol("hexagon",Sj),tl.registerSymbol("square",yj),tl.registerSymbol("diamond",Ej),tl.registerSymbol("triangle",Aj),tl.registerSymbol("triangle-down",xj),tl.registerSymbol("line",sD),tl.registerSymbol("dot",lD),tl.registerSymbol("dash",Dj),tl.registerSymbol("smooth",Ij),tl.registerSymbol("hv",Tj),tl.registerSymbol("vh",Oj),tl.registerSymbol("hvh",Lj),tl.registerSymbol("vhv",Bj),tl.registerSymbol("focus",Rj);function cee(E,a,y){var x=Math.round((E-y)/a);return y+x*a}function zj(E,a,y){var x=1.4,b=x*y;return[["M",E-y,a-b],["L",E+y,a-b],["L",E+y,a+b],["L",E-y,a+b],["Z"]]}var uD=1.4,cD=.4;function Uj(E,a,y){var x=y,b=x*uD,z=x/2,ee=x/6,re=E+b*cD;return[["M",E,a],["L",re,a+z],["L",E+b,a+z],["L",E+b,a-z],["L",re,a-z],["Z"],["M",re,a+ee],["L",E+b-2,a+ee],["M",re,a-ee],["L",E+b-2,a-ee]]}function Wj(E,a,y){var x=y,b=x*uD,z=x/2,ee=x/6,re=a+b*cD;return[["M",E,a],["L",E-z,re],["L",E-z,a+b],["L",E+z,a+b],["L",E+z,re],["Z"],["M",E-ee,re],["L",E-ee,a+b-2],["M",E+ee,re],["L",E+ee,a+b-2]]}tl.registerSymbol("hiddenHandle",zj),tl.registerSymbol("verticalHandle",Uj),tl.registerSymbol("horizontalHandle",Wj);var dee=function(E,a,y){return E===void 0&&(E="horizontal"),E==="horizontal"?a:y};function fee(E,a,y,x){var b;x===void 0&&(x=4);var z=__read(E,2),ee=z[0],re=z[1],ae=__read(a,2),se=ae[0],fe=ae[1],me=__read(y,2),Ee=me[0],Oe=me[1],ke=__read([se,fe],2),We=ke[0],je=ke[1],Ke=je-We;return We>je&&(b=__read([je,We],2),We=b[0],je=b[1]),Ke>re-ee?[ee,re]:Were?Oe===re&&Ee===We?[We,re]:[re-Ke,re]:[We,je]}function Zx(E,a,y){return E===void 0&&(E="horizontal"),E==="horizontal"?a:y}function hee(E){var a=E&&E.getRenderBounds();if(!a)return{width:0,height:0};var y=a.getMax(),x=a.getMin();return{width:y[0]-x[0],height:y[1]-x[1]}}function dD(E){var a=E.getLocalBounds(),y=a.min,x=a.max,b=(0,Bt.CR)([y,x],2),z=(0,Bt.CR)(b[0],2),ee=z[0],re=z[1],ae=(0,Bt.CR)(b[1],2),se=ae[0],fe=ae[1];return{x:ee,y:re,width:se-ee,height:fe-re,left:ee,bottom:fe,top:re,right:se}}function gee(E,a){var y=select(E).append("text").node();return y.attr(__assign(__assign({},a),{visibility:"hidden"})),y}function jj(E,a){var y=(0,Bt.CR)(E,2),x=y[0],b=y[1],z=(0,Bt.CR)(a,2),ee=z[0],re=z[1];return x!==ee&&b===re}function vee(E,a){var y=__read(E,2),x=y[0],b=y[1],z=__read(a,2),ee=z[0],re=z[1];return x===ee&&b!==re}function Gj(E,a){var y,x,b=a.attributes;try{for(var z=(0,Bt.XA)(Object.entries(b)),ee=z.next();!ee.done;ee=z.next()){var re=(0,Bt.CR)(ee.value,2),ae=re[0],se=re[1];ae!=="id"&&ae!=="className"&&E.attr(ae,se)}}catch(fe){y={error:fe}}finally{try{ee&&!ee.done&&(x=z.return)&&x.call(z)}finally{if(y)throw y.error}}}function Wf(E){return typeof E=="function"?E():Us(E)||Wi(E)?new Gx({style:{text:String(E)}}):E}function Hj(E,a){return typeof E=="function"?E():Us(E)||Wi(E)?new dg({style:(0,Bt.pi)((0,Bt.pi)({pointerEvents:"auto"},a),{innerHTML:E})}):E}var t1,Qx;function mee(E){Qx=E}var Vj=Ox(function(E,a){var y=a.fontSize,x=a.fontFamily,b=a.fontWeight,z=a.fontStyle,ee=a.fontVariant;return Qx?Qx(E,y):(t1||(t1=Qa.offscreenCanvasCreator.getOrCreateContext(void 0)),t1.font=[z,ee,b,"".concat(y,"px"),x].join(" "),t1.measureText(E).width)},function(E,a){return[E,Object.values(a||fD(E)).join()].join("")},4096),fD=function(E){var a=E.style.fontFamily||"sans-serif",y=E.style.fontWeight||"normal",x=E.style.fontStyle||"normal",b=E.style.fontVariant,z=E.style.fontSize;return z=typeof z=="object"?z.value:z,{fontSize:z,fontFamily:a,fontWeight:y,fontStyle:x,fontVariant:b}};function hD(E){return E.nodeName==="text"?E:E.nodeName==="g"&&E.children.length===1&&E.children[0].nodeName==="text"?E.children[0]:null}function gD(E,a){var y=hD(E);y&&y.attr(a)}function Yx(E,a,y){y===void 0&&(y="..."),gD(E,{wordWrap:!0,wordWrapWidth:a,maxLines:1,textOverflow:y})}function Xx(E,a){for(var y in a)a.hasOwnProperty(y)&&y!=="constructor"&&a[y]!==void 0&&(E[y]=a[y])}function Kj(E,a,y,x){return a&&Xx(E,a),y&&Xx(E,y),x&&Xx(E,x),E}function Zj(E){return E instanceof Element||E instanceof Document}var As,Qj="component-poptip",os={CONTAINER:"component-poptip",ARROW:"component-poptip-arrow",TEXT:"component-poptip-text"},vD=(As={},As[".".concat(os.CONTAINER)]={visibility:"visible",position:"absolute","background-color":"rgba(0, 0, 0)","box-shadow":"0px 0px 10px #aeaeae","border-radius":"3px",color:"#fff",opacity:.8,"font-size":"12px",padding:"4px 6px",display:"flex","justify-content":"center","align-items":"center","z-index":8,transition:"visibility 50ms"},As[".".concat(os.TEXT)]={"text-align":"center"},As[".".concat(os.CONTAINER,"[data-position='top']")]={transform:"translate(-50%, -100%)"},As[".".concat(os.CONTAINER,"[data-position='left']")]={transform:"translate(-100%, -50%)"},As[".".concat(os.CONTAINER,"[data-position='right']")]={transform:"translate(0, -50%)"},As[".".concat(os.CONTAINER,"[data-position='bottom']")]={transform:"translate(-50%, 0)"},As[".".concat(os.CONTAINER,"[data-position='top-left']")]={transform:"translate(0,-100%)"},As[".".concat(os.CONTAINER,"[data-position='top-right']")]={transform:"translate(-100%,-100%)"},As[".".concat(os.CONTAINER,"[data-position='left-top']")]={transform:"translate(-100%, 0)"},As[".".concat(os.CONTAINER,"[data-position='left-bottom']")]={transform:"translate(-100%, -100%)"},As[".".concat(os.CONTAINER,"[data-position='right-top']")]={transform:"translate(0, 0)"},As[".".concat(os.CONTAINER,"[data-position='right-bottom']")]={transform:"translate(0, -100%)"},As[".".concat(os.CONTAINER,"[data-position='bottom-left']")]={transform:"translate(0, 0)"},As[".".concat(os.CONTAINER,"[data-position='bottom-right']")]={transform:"translate(-100%, 0)"},As[".".concat(os.ARROW)]={width:"4px",height:"4px",transform:"rotate(45deg)","background-color":"rgba(0, 0, 0)",position:"absolute","z-index":-1},As[".".concat(os.CONTAINER,"[data-position='top']")]={transform:"translate(-50%, calc(-100% - 5px))"},As["[data-position='top'] .".concat(os.ARROW)]={bottom:"-2px"},As[".".concat(os.CONTAINER,"[data-position='left']")]={transform:"translate(calc(-100% - 5px), -50%)"},As["[data-position='left'] .".concat(os.ARROW)]={right:"-2px"},As[".".concat(os.CONTAINER,"[data-position='right']")]={transform:"translate(5px, -50%)"},As["[data-position='right'] .".concat(os.ARROW)]={left:"-2px"},As[".".concat(os.CONTAINER,"[data-position='bottom']")]={transform:"translate(-50%, 5px)"},As["[data-position='bottom'] .".concat(os.ARROW)]={top:"-2px"},As[".".concat(os.CONTAINER,"[data-position='top-left']")]={transform:"translate(0, calc(-100% - 5px))"},As["[data-position='top-left'] .".concat(os.ARROW)]={left:"10px",bottom:"-2px"},As[".".concat(os.CONTAINER,"[data-position='top-right']")]={transform:"translate(-100%, calc(-100% - 5px))"},As["[data-position='top-right'] .".concat(os.ARROW)]={right:"10px",bottom:"-2px"},As[".".concat(os.CONTAINER,"[data-position='left-top']")]={transform:"translate(calc(-100% - 5px), 0)"},As["[data-position='left-top'] .".concat(os.ARROW)]={right:"-2px",top:"8px"},As[".".concat(os.CONTAINER,"[data-position='left-bottom']")]={transform:"translate(calc(-100% - 5px), -100%)"},As["[data-position='left-bottom'] .".concat(os.ARROW)]={right:"-2px",bottom:"8px"},As[".".concat(os.CONTAINER,"[data-position='right-top']")]={transform:"translate(5px, 0)"},As["[data-position='right-top'] .".concat(os.ARROW)]={left:"-2px",top:"8px"},As[".".concat(os.CONTAINER,"[data-position='right-bottom']")]={transform:"translate(5px, -100%)"},As["[data-position='right-bottom'] .".concat(os.ARROW)]={left:"-2px",bottom:"8px"},As[".".concat(os.CONTAINER,"[data-position='bottom-left']")]={transform:"translate(0, 5px)"},As["[data-position='bottom-left'] .".concat(os.ARROW)]={top:"-2px",left:"8px"},As[".".concat(os.CONTAINER,"[data-position='bottom-right']")]={transform:"translate(-100%, 5px)"},As["[data-position='bottom-right'] .".concat(os.ARROW)]={top:"-2px",right:"8px"},As),Yj=void 0;function Xj(E,a,y,x,b,z){if(b===void 0&&(b=!1),z===void 0&&(z=!1),z)return[E,a];var ee=y.getBoundingClientRect(),re=ee.x,ae=ee.y,se=ee.width,fe=ee.height;switch(x){case"top":return b?[re+se/2,ae]:[E,ae];case"left":return b?[re,ae+fe/2]:[re,a];case"bottom":return b?[re+se/2,ae+fe]:[E,ae+fe];case"right":return b?[re+se,ae+fe/2]:[re+se,a];case"top-right":case"right-top":return[re+se,ae];case"left-bottom":case"bottom-left":return[re,ae+fe];case"right-bottom":case"bottom-right":return[re+se,ae+fe];case"top-left":case"left-top":default:return[re,ae]}}var Jj=function(E){var a;return function(){for(var y=[],x=0;x');y.innerHTML=re,Us(z)?y.innerHTML+=z:z&&Zj(z)&&y.appendChild(z),ee&&(y.getElementsByClassName(os.TEXT)[0].textContent=ee),this.applyStyles(),this.container.style.visibility=this.visibility},a.prototype.applyStyles=function(){var y=hu({},vD,this.style.domStyles),x=Object.entries(y).reduce(function(z,ee){var re=(0,Bt.CR)(ee,2),ae=re[0],se=re[1],fe=Object.entries(se).reduce(function(me,Ee){var Oe=(0,Bt.CR)(Ee,2),ke=Oe[0],We=Oe[1];return"".concat(me).concat(ke,": ").concat(We,";")},"");return"".concat(z).concat(ae,"{").concat(fe,"}")},"");if(this.domStyles!==x){this.domStyles=x;var b=this.container.querySelector("style");b&&this.container.removeChild(b),b=document.createElement("style"),b.innerHTML=x,this.container.appendChild(b)}},a.prototype.setOffsetPosition=function(y,x,b){b===void 0&&(b=this.style.offset);var z=(0,Bt.CR)(b,2),ee=z[0],re=ee===void 0?0:ee,ae=z[1],se=ae===void 0?0:ae;this.container.style.left="".concat(y+re,"px"),this.container.style.top="".concat(x+se,"px")},a.tag="poptip",a.defaultOptions={style:{x:0,y:0,width:0,height:0,target:null,visibility:"hidden",text:"",position:"top",follow:!1,offset:[0,0],domStyles:vD,template:'
')}},a}(kl),gu=Wd({layout:"flex",markerGroup:"marker-group",marker:"marker",labelGroup:"label-group",label:"label",valueGroup:"value-group",focusGroup:"focus-group",focus:"focus",value:"value",backgroundGroup:"background-group",background:"background"},"legend-category-item"),tG={offset:[0,20],domStyles:{".component-poptip":{opacity:"1",padding:"8px 12px",background:"#fff",boxShadow:"0 2px 8px rgba(0, 0, 0, 0.15)"},".component-poptip-arrow":{display:"none"},".component-poptip-text":{color:"#000",lineHeight:"20px"}}};function nG(E){var a=E.querySelector(gu.marker.class);return a?a.style:{}}var rG=function(E){(0,Bt.ZT)(a,E);function a(y,x){var b=E.call(this,y,{span:[1,1],marker:function(){return new vf({style:{r:6}})},markerSize:10,labelFill:"#646464",valueFill:"#646464",labelFontSize:12,valueFontSize:12,labelTextBaseline:"middle",valueTextBaseline:"middle"})||this;return b.keyFields={},b.keyFields=x||{},b}return Object.defineProperty(a.prototype,"showValue",{get:function(){var y=this.attributes.valueText;return y?typeof y=="string"||typeof y=="number"?y!=="":typeof y=="function"?!0:y.attr("text")!=="":!1},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"actualSpace",{get:function(){var y=this.labelGroup,x=this.valueGroup,b=this.attributes,z=b.markerSize,ee=b.focus,re=b.focusMarkerSize,ae=y.node().getBBox(),se=ae.width,fe=ae.height,me=x.node().getBBox(),Ee=me.width,Oe=me.height,ke=ee?re!=null?re:12:0;return{markerWidth:z,labelWidth:se,valueWidth:Ee,focusWidth:ke,height:Math.max(z,fe,Oe)}},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"span",{get:function(){var y=this.attributes.span;if(!y)return[1,1];var x=(0,Bt.CR)(Hu(y),2),b=x[0],z=x[1],ee=this.showValue?z:0,re=b+ee;return[b/re,ee/re]},enumerable:!1,configurable:!0}),a.prototype.setAttribute=function(y,x){E.prototype.setAttribute.call(this,y,x)},Object.defineProperty(a.prototype,"shape",{get:function(){var y,x=this.attributes,b=x.markerSize,z=x.width,ee=this.actualSpace,re=ee.markerWidth,ae=ee.focusWidth,se=ee.height,fe=this.actualSpace,me=fe.labelWidth,Ee=fe.valueWidth,Oe=(0,Bt.CR)(this.spacing,3),ke=Oe[0],We=Oe[1],je=Oe[2];if(z){var Ke=z-b-ke-We-ae-je,Ze=(0,Bt.CR)(this.span,2),Je=Ze[0],tt=Ze[1];y=(0,Bt.CR)([Je*Ke,tt*Ke],2),me=y[0],Ee=y[1]}var st=re+me+Ee+ke+We+ae+je;return{width:st,height:se,markerWidth:re,labelWidth:me,valueWidth:Ee,focusWidth:ae}},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"spacing",{get:function(){var y=this.attributes,x=y.spacing,b=y.focus;if(!x)return[0,0,0];var z=(0,Bt.CR)(Hu(x),3),ee=z[0],re=z[1],ae=z[2];return[ee,this.showValue?re:0,b?ae:0]},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"layout",{get:function(){var y=this.shape,x=y.markerWidth,b=y.labelWidth,z=y.valueWidth,ee=y.focusWidth,re=y.width,ae=y.height,se=(0,Bt.CR)(this.spacing,3),fe=se[0],me=se[1],Ee=se[2];return{height:ae,width:re,markerWidth:x,labelWidth:b,valueWidth:z,focusWidth:ee,position:[x/2,x+fe,x+b+fe+me,x+b+z+fe+me+Ee+ee/2]}},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"scaleSize",{get:function(){var y=nG(this.markerGroup.node()),x=this.attributes,b=x.markerSize,z=x.markerStrokeWidth,ee=z===void 0?y.strokeWidth:z,re=x.markerLineWidth,ae=re===void 0?y.lineWidth:re,se=x.markerStroke,fe=se===void 0?y.stroke:se,me=+(ee||ae||(fe?1:0))*Math.sqrt(2),Ee=this.markerGroup.node().getBBox(),Oe=Ee.width,ke=Ee.height;return(1-me/Math.max(Oe,ke))*b},enumerable:!1,configurable:!0}),a.prototype.renderMarker=function(y){var x=this,b=this.attributes,z=b.marker,ee=b.classNamePrefix,re=ts(this.attributes,"marker");this.markerGroup=y.maybeAppendByClassName(gu.markerGroup,"g").style("zIndex",0),Lc(!!z,this.markerGroup,function(){var ae,se=x.markerGroup.node(),fe=(ae=se.childNodes)===null||ae===void 0?void 0:ae[0],me=nc(gu.marker.name,dc.marker,ee),Ee=typeof z=="string"?new tl({style:{symbol:z},className:me}):z();if(fe)if(Ee.nodeName===fe.nodeName)fe instanceof tl?fe.update((0,Bt.pi)((0,Bt.pi)({},re),{symbol:z})):(Gj(fe,Ee),eo(fe).styles(re));else{if(fe.remove(),!(Ee instanceof tl)){var ke=nc(gu.marker.name,dc.marker,ee);Ee.className=ke}eo(Ee).styles(re),se.appendChild(Ee)}else{if(!(Ee instanceof tl)){var Oe=nc(gu.marker.name,dc.marker,ee);Ee.className=Oe,eo(Ee).styles(re)}se.appendChild(Ee)}x.markerGroup.node().scale(1/x.markerGroup.node().getScale()[0]);var We=Kx(x.markerGroup.node(),x.scaleSize,!0);x.markerGroup.node().style._transform="scale(".concat(We,")")})},a.prototype.renderLabel=function(y){var x=ts(this.attributes,"label"),b=x.text,z=(0,Bt._T)(x,["text"]),ee=this.attributes.classNamePrefix;this.labelGroup=y.maybeAppendByClassName(gu.labelGroup,"g").style("zIndex",0);var re=nc(gu.label.name,dc.label,ee),ae=this.labelGroup.maybeAppendByClassName(gu.label,function(){return Wf(b)});ae.node().setAttribute("class",re),ae.styles(z)},a.prototype.renderValue=function(y){var x=this,b=ts(this.attributes,"value"),z=b.text,ee=(0,Bt._T)(b,["text"]),re=this.attributes.classNamePrefix;this.valueGroup=y.maybeAppendByClassName(gu.valueGroup,"g").style("zIndex",0),Lc(this.showValue,this.valueGroup,function(){var ae=nc(gu.value.name,dc.value,re),se=x.valueGroup.maybeAppendByClassName(gu.value,function(){return Wf(z)});se.node().setAttribute("class",ae),se.styles(ee)})},a.prototype.createPoptip=function(){var y=this.attributes.poptip,x=y||{},b=x.render,z=(0,Bt._T)(x,["render"]),ee=new eG({style:hu(tG,z)});return this.poptipGroup=ee,ee},a.prototype.bindPoptip=function(y){var x=this,b=this.attributes.poptip;if(b){var z=this.poptipGroup||this.createPoptip();z.bind(y,function(){var ee=x.attributes,re=ee.labelText,ae=ee.valueText,se=ee.markerFill,fe=typeof re=="string"?re:re==null?void 0:re.attr("text"),me=typeof ae=="string"?ae:ae==null?void 0:ae.attr("text");if(typeof b.render=="function")return{html:b.render((0,Bt.pi)((0,Bt.pi)({},x.keyFields),{label:fe,value:me,color:se}))};var Ee="";return(typeof fe=="string"||typeof fe=="number")&&(Ee+='
'.concat(fe,"
")),(typeof me=="string"||typeof me=="number")&&(Ee+='
'.concat(me,"
")),{html:Ee}})}},a.prototype.renderFocus=function(y){var x=this,b=this.attributes,z=b.focus,ee=b.focusMarkerSize,re=b.classNamePrefix,ae={x:0,y:0,size:ee,opacity:.6,symbol:"focus",stroke:"#aaaaaa",lineWidth:1};jo(z)||(this.focusGroup=y.maybeAppendByClassName(gu.focusGroup,"g").style("zIndex",0),Lc(z,this.focusGroup,function(){var se=nc(gu.focus.name,dc.focusIcon,re),fe=new tl({style:(0,Bt.pi)((0,Bt.pi)({},ae),{symbol:"focus"}),className:se}),me=new vf({style:{r:ae.size/2,fill:"transparent"}}),Ee=x.focusGroup.node();Ee.appendChild(me),Ee.appendChild(fe),fe.update({opacity:0}),y.node().addEventListener("pointerenter",function(){fe.update({opacity:1})}),y.node().addEventListener("pointerleave",function(){fe.update({opacity:0})})}))},a.prototype.renderPoptip=function(y){var x=this,b=this.attributes.poptip;if(b){var z=y.maybeAppendByClassName(gu.value,"g").node(),ee=y.maybeAppendByClassName(gu.label,"g").node();[z,ee].forEach(function(re){re&&x.bindPoptip(re)})}},a.prototype.renderBackground=function(y){var x=this.shape,b=x.width,z=x.height,ee=ts(this.attributes,"background");this.background=y.maybeAppendByClassName(gu.backgroundGroup,"g").style("zIndex",-1);var re=this.background.maybeAppendByClassName(gu.background,"rect");re.styles((0,Bt.pi)({width:b,height:z},ee));var ae=this.attributes.classNamePrefix,se=ae===void 0?"":ae;if(se){var fe=nc(gu.background.name,dc.background,se);re.node().setAttribute("class",fe)}},a.prototype.adjustLayout=function(){var y=this.layout,x=y.labelWidth,b=y.valueWidth,z=y.height,ee=(0,Bt.CR)(y.position,4),re=ee[0],ae=ee[1],se=ee[2],fe=ee[3],me=z/2;this.markerGroup.styles({transform:"translate(".concat(re,", ").concat(me,")").concat(this.markerGroup.node().style._transform)}),this.labelGroup.styles({transform:"translate(".concat(ae,", ").concat(me,")")}),this.focusGroup&&this.focusGroup.styles({transform:"translate(".concat(fe,", ").concat(me,")")}),Yx(this.labelGroup.select(gu.label.class).node(),Math.ceil(x)),this.showValue&&(this.valueGroup.styles({transform:"translate(".concat(se,", ").concat(me,")")}),Yx(this.valueGroup.select(gu.value.class).node(),Math.ceil(b)))},a.prototype.render=function(y,x){var b=eo(x),z=y.x,ee=z===void 0?0:z,re=y.y,ae=re===void 0?0:re;b.styles({transform:"translate(".concat(ee,", ").concat(ae,")")}),this.renderMarker(b),this.renderLabel(b),this.renderValue(b),this.renderBackground(b),this.renderPoptip(b),this.renderFocus(b),this.adjustLayout()},a}(kl),Bg=Wd({page:"item-page",navigator:"navigator",item:"item"},"items"),mD=function(E,a,y){return y===void 0&&(y=!0),E?a(E):y},aG=function(E){(0,Bt.ZT)(a,E);function a(y){var x=E.call(this,y,{data:[],gridRow:1/0,gridCol:void 0,padding:0,width:1e3,height:100,rowPadding:0,colPadding:0,layout:"flex",orientation:"horizontal",click:Vx,mouseenter:Vx,mouseleave:Vx})||this;return x.navigatorShape=[0,0],x}return Object.defineProperty(a.prototype,"pageViews",{get:function(){return this.navigator.getContainer()},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"grid",{get:function(){var y=this.attributes,x=y.gridRow,b=y.gridCol,z=y.data;if(!x&&!b)throw new Error("gridRow and gridCol can not be set null at the same time");return x&&b?[x,b]:x?[x,z.length]:[z.length,b]},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"renderData",{get:function(){var y=this.attributes,x=y.data,b=y.layout,z=y.poptip,ee=y.focus,re=y.focusMarkerSize,ae=y.classNamePrefix,se=ts(this.attributes,"item"),fe=x.map(function(me,Ee){var Oe=me.id,ke=Oe===void 0?Ee:Oe,We=me.label,je=me.value;return{id:"".concat(ke),index:Ee,style:(0,Bt.pi)({layout:b,labelText:We,valueText:je,poptip:z,focus:ee,focusMarkerSize:re,classNamePrefix:ae},Object.fromEntries(Object.entries(se).map(function(Ke){var Ze=(0,Bt.CR)(Ke,2),Je=Ze[0],tt=Ze[1];return[Je,Bc(tt,[me,Ee,x])]})))}});return fe},enumerable:!1,configurable:!0}),a.prototype.getGridLayout=function(){var y=this,x=this.attributes,b=x.orientation,z=x.width,ee=x.rowPadding,re=x.colPadding,ae=(0,Bt.CR)(this.navigatorShape,1),se=ae[0],fe=(0,Bt.CR)(this.grid,2),me=fe[0],Ee=fe[1],Oe=Ee*me,ke=0;return this.pageViews.children.map(function(We,je){var Ke,Ze,Je=Math.floor(je/Oe),tt=je%Oe,st=y.ifHorizontal(Ee,me),gt=[Math.floor(tt/st),tt%st];b==="vertical"&>.reverse();var mt=(0,Bt.CR)(gt,2),ct=mt[0],Lt=mt[1],_t=(z-se-(Ee-1)*re)/Ee,Yt=We.getBBox().height,$t=(0,Bt.CR)([0,0],2),En=$t[0],on=$t[1];return b==="horizontal"?(Ke=(0,Bt.CR)([ke,ct*(Yt+ee)],2),En=Ke[0],on=Ke[1],ke=Lt===Ee-1?0:ke+_t+re):(Ze=(0,Bt.CR)([Lt*(_t+re),ke],2),En=Ze[0],on=Ze[1],ke=ct===me-1?0:ke+Yt+ee),{page:Je,index:je,row:ct,col:Lt,pageIndex:tt,width:_t,height:Yt,x:En,y:on}})},a.prototype.getFlexLayout=function(){var y=this.attributes,x=y.width,b=y.height,z=y.rowPadding,ee=y.colPadding,re=(0,Bt.CR)(this.navigatorShape,1),ae=re[0],se=(0,Bt.CR)(this.grid,2),fe=se[0],me=se[1],Ee=(0,Bt.CR)([x-ae,b],2),Oe=Ee[0],ke=Ee[1],We=(0,Bt.CR)([0,0,0,0,0,0,0,0],8),je=We[0],Ke=We[1],Ze=We[2],Je=We[3],tt=We[4],st=We[5],gt=We[6],mt=We[7];return this.pageViews.children.map(function(ct,Lt){var _t,Yt,$t,En,on=ct.getBBox(),Fn=on.width,tr=on.height,Cn=gt===0?0:ee,xn=gt+Cn+Fn;if(xn<=Oe&&mD(tt,function(nr){return nr0?(this.navigatorShape=[55,0],y.call(this)):x},enumerable:!1,configurable:!0}),a.prototype.ifHorizontal=function(y,x){var b=this.attributes.orientation;return Zx(b,y,x)},a.prototype.flattenPage=function(y){y.querySelectorAll(Bg.item.class).forEach(function(x){y.appendChild(x)}),y.querySelectorAll(Bg.page.class).forEach(function(x){var b=y.removeChild(x);b.destroy()})},a.prototype.renderItems=function(y){var x=this.attributes,b=x.click,z=x.mouseenter,ee=x.mouseleave,re=x.classNamePrefix;this.flattenPage(y);var ae=this.dispatchCustomEvent.bind(this),se=nc(Bg.item.name,dc.item,re);eo(y).selectAll(Bg.item.class).data(this.renderData,function(fe){return fe.id}).join(function(fe){return fe.append(function(me){var Ee=me.style,Oe=(0,Bt._T)(me,["style"]);return new rG({style:Ee},Oe)}).attr("className",se).on("click",function(){b==null||b(this),ae("itemClick",{item:this})}).on("pointerenter",function(){z==null||z(this),ae("itemMouseenter",{item:this})}).on("pointerleave",function(){ee==null||ee(this),ae("itemMouseleave",{item:this})})},function(fe){return fe.each(function(me){var Ee=me.style;this.update(Ee)})},function(fe){return fe.remove()})},a.prototype.relayoutNavigator=function(){var y,x=this.attributes,b=x.layout,z=x.width,ee=((y=this.pageViews.children[0])===null||y===void 0?void 0:y.getBBox().height)||0,re=(0,Bt.CR)(this.navigatorShape,2),ae=re[0],se=re[1];this.navigator.update(b==="grid"?{pageWidth:z-ae,pageHeight:ee-se}:{})},a.prototype.adjustLayout=function(){var y=this,x=Object.entries(dj(this.itemsLayout,"page")).map(function(z){var ee=(0,Bt.CR)(z,2),re=ee[0],ae=ee[1];return{page:re,layouts:ae}}),b=(0,Bt.ev)([],(0,Bt.CR)(this.navigator.getContainer().children),!1);x.forEach(function(z){var ee=z.layouts,re=y.pageViews.appendChild(new Eu({className:Bg.page.name}));ee.forEach(function(ae){var se=ae.x,fe=ae.y,me=ae.index,Ee=ae.width,Oe=ae.height,ke=b[me];re.appendChild(ke),Pv(ke,"__layout__",ae),ke.update({x:se,y:fe,width:Ee,height:Oe})})}),this.relayoutNavigator()},a.prototype.renderNavigator=function(y){var x=this.attributes,b=x.orientation,z=x.classNamePrefix,ee=ts(this.attributes,"nav"),re=hu({orientation:b,classNamePrefix:z},ee),ae=this;return y.selectAll(Bg.navigator.class).data(["nav"]).join(function(se){return se.append(function(){return new Fj({style:re})}).attr("className",Bg.navigator.name).each(function(){ae.navigator=this})},function(se){return se.each(function(){this.update(re)})},function(se){return se.remove()}),this.navigator},a.prototype.getBBox=function(){return this.navigator.getBBox()},a.prototype.render=function(y,x){var b=this.attributes.data;if(!(!b||b.length===0)){var z=this.renderNavigator(eo(x));this.renderItems(z.getContainer()),this.adjustLayout()}},a.prototype.dispatchCustomEvent=function(y,x){var b=new du(y,{detail:x});this.dispatchEvent(b)},a}(kl),Ng=Wd({markerGroup:"marker-group",marker:"marker",labelGroup:"label-group",label:"label"},"handle"),pD={showLabel:!0,formatter:function(E){return E.toString()},markerSize:25,markerStroke:"#c5c5c5",markerFill:"#fff",markerLineWidth:1,labelFontSize:12,labelFill:"#c5c5c5",labelText:"",orientation:"vertical",spacing:0},pee=function(E){(0,Bt.ZT)(a,E);function a(y){return E.call(this,y,pD)||this}return a.prototype.render=function(y,x){var b=eo(x).maybeAppendByClassName(Ng.markerGroup,"g");this.renderMarker(b);var z=eo(x).maybeAppendByClassName(Ng.labelGroup,"g");this.renderLabel(z)},a.prototype.renderMarker=function(y){var x=this,b=this.attributes,z=b.orientation,ee=b.classNamePrefix,re=b.markerSymbol,ae=re===void 0?Zx(z,"horizontalHandle","verticalHandle"):re;Lc(!!ae,y,function(se){var fe=ts(x.attributes,"marker"),me=(0,Bt.pi)({symbol:ae},fe),Ee=nc(Ng.marker.name,dc.handleMarker,ee);if(x.marker=se.maybeAppendByClassName(Ng.marker,function(){return new tl({style:me,className:Ee})}).update(me),ee){var Oe=x.marker.node().querySelector(".marker");if(Oe){var ke=Oe.getAttribute("class")||"",We=ke.split(" ")[0],je=nc(We,dc.handleMarker,ee);Oe.setAttribute("class",je)}}})},a.prototype.renderLabel=function(y){var x=this,b=this.attributes,z=b.showLabel,ee=b.orientation,re=b.spacing,ae=re===void 0?0:re,se=b.formatter,fe=b.classNamePrefix;Lc(z,y,function(me){var Ee,Oe=ts(x.attributes,"label"),ke=Oe.text,We=(0,Bt._T)(Oe,["text"]),je=((Ee=me.select(Ng.marker.class))===null||Ee===void 0?void 0:Ee.node().getBBox())||{},Ke=je.width,Ze=Ke===void 0?0:Ke,Je=je.height,tt=Je===void 0?0:Je,st=(0,Bt.CR)(Zx(ee,[0,tt+ae,"center","top"],[Ze+ae,0,"start","middle"]),4),gt=st[0],mt=st[1],ct=st[2],Lt=st[3],_t=nc(Ng.label.name,dc.handleLabel,fe);me.maybeAppendByClassName(Ng.label,"text").attr("className",_t).styles((0,Bt.pi)((0,Bt.pi)({},We),{x:gt,y:mt,text:se(ke).toString(),textAlign:ct,textBaseline:Lt}))})},a}(kl),yD={showTitle:!0,padding:0,orientation:"horizontal",backgroundFill:"transparent",titleText:"",titleSpacing:4,titlePosition:"top-left",titleFill:"#2C3542",titleFontWeight:"bold",titleFontFamily:"sans-serif",titleFontSize:12},iG=hu({},yD,{}),yee=hu({},yD,M0(pD,"handle"),{color:["#d0e3fa","#acc7f6","#8daaf2","#6d8eea","#4d73cd","#325bb1","#5a3e75","#8c3c79","#e23455","#e7655b"],indicatorBackgroundFill:"#262626",indicatorLabelFill:"white",indicatorLabelFontSize:12,indicatorVisibility:"hidden",labelAlign:"value",labelDirection:"positive",labelSpacing:5,showHandle:!0,showIndicator:!0,showLabel:!0,slidable:!0,titleText:"",type:"continuous"}),Eee=.01,Aee=.5,Rg=Wd({title:"title",html:"html",titleGroup:"title-group",items:"items",itemsGroup:"items-group",contentGroup:"content-group",ribbonGroup:"ribbon-group",ribbon:"ribbon",handlesGroup:"handles-group",handle:"handle",startHandle:"start-handle",endHandle:"end-handle",labelGroup:"label-group",label:"label",indicator:"indicator"},"legend"),oG=function(E){(0,Bt.ZT)(a,E);function a(){return E!==null&&E.apply(this,arguments)||this}return a.prototype.update=function(y){this.attr(y)},a}(dg),sG=function(E){(0,Bt.ZT)(a,E);function a(y){return E.call(this,y,iG)||this}return a.prototype.renderTitle=function(y,x,b){var z=this.attributes,ee=z.showTitle,re=z.titleText,ae=z.classNamePrefix,se=ts(this.attributes,"title"),fe=(0,Bt.CR)(Uf(se),2),me=fe[0],Ee=fe[1];this.titleGroup=y.maybeAppendByClassName(Rg.titleGroup,"g").styles(Ee);var Oe=(0,Bt.pi)((0,Bt.pi)({width:x,height:b},me),{text:ee?re:"",classNamePrefix:ae});this.title=this.titleGroup.maybeAppendByClassName(Rg.title,function(){return new cj({style:Oe})}).update(Oe)},a.prototype.renderCustom=function(y){var x=this.attributes.data,b={innerHTML:this.attributes.render(x),pointerEvents:"auto"};y.maybeAppendByClassName(Rg.html,function(){return new oG({className:Rg.html.name,style:b})}).update(b)},a.prototype.renderItems=function(y,x){var b=x.x,z=x.y,ee=x.width,re=x.height,ae=ts(this.attributes,"title",!0),se=(0,Bt.CR)(Uf(ae),2),fe=se[0],me=se[1],Ee=(0,Bt.pi)((0,Bt.pi)({},fe),{width:ee,height:re,x:0,y:0});this.itemsGroup=y.maybeAppendByClassName(Rg.itemsGroup,"g").styles((0,Bt.pi)((0,Bt.pi)({},me),{transform:"translate(".concat(b,", ").concat(z,")")}));var Oe=this;this.itemsGroup.selectAll(Rg.items.class).data(["items"]).join(function(ke){return ke.append(function(){return new aG({style:Ee})}).attr("className",Rg.items.name).each(function(){Oe.items=eo(this)})},function(ke){return ke.update(Ee)},function(ke){return ke.remove()})},a.prototype.adjustLayout=function(){var y=this.attributes.showTitle;if(y){var x=this.title.node().getAvailableSpace(),b=x.x,z=x.y;this.itemsGroup.node().style.transform="translate(".concat(b,", ").concat(z,")")}},Object.defineProperty(a.prototype,"availableSpace",{get:function(){var y=this.attributes,x=y.showTitle,b=y.width,z=y.height;return x?this.title.node().getAvailableSpace():new tc(0,0,b,z)},enumerable:!1,configurable:!0}),a.prototype.getBBox=function(){var y,x,b=(y=this.title)===null||y===void 0?void 0:y.node(),z=(x=this.items)===null||x===void 0?void 0:x.node();return!b||!z?E.prototype.getBBox.call(this):sj(b,z)},a.prototype.render=function(y,x){var b=this.attributes,z=b.width,ee=b.height,re=b.x,ae=re===void 0?0:re,se=b.y,fe=se===void 0?0:se,me=b.classNamePrefix,Ee=b.render,Oe=eo(x),ke=x.className||"legend-category";me?x.attr("className","".concat(ke," ").concat(me,"legend")):x.className||x.attr("className","legend-category"),x.style.transform="translate(".concat(ae,", ").concat(fe,")"),Ee?this.renderCustom(Oe):(this.renderTitle(Oe,z,ee),this.renderItems(Oe,this.availableSpace),this.adjustLayout())},a}(kl);function n1(E){const{width:a,height:y,renderer:x}=E,b=lG(E),z=new rA({width:a,height:y,container:b,renderer:x||new Iv});return[b,z]}function lG(E){var a;const{container:y,className:x,graphCanvas:b}=E;if(y)return typeof y=="string"?document.getElementById(y):y;const z=w0(x,!1),{width:ee,height:re,containerStyle:ae}=E,[se,fe]=uG(E);return Object.assign(z.style,Object.assign({position:"absolute",left:se+"px",top:fe+"px",width:ee+"px",height:re+"px"},ae)),(a=b.getContainer())===null||a===void 0||a.appendChild(z),z}function uG(E){const{width:a,height:y,placement:x,graphCanvas:b}=E,[z,ee]=b.getSize(),[re,ae]=iw(x);return[re*(z-a),ae*(ee-y)]}var cG=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b{const{graph:x}=this.context;x.on(si.AFTER_DRAW,this.createElement)},this.changeState=(x,b)=>{const{graph:z}=this.context,{typePrefix:ee}=this,re=ju(x,[ee,"id"]),ae=ju(x,[ee,"style","labelText"]),[se]=re.split("__"),fe=this.fieldMap[se].get(ae)||[];z.setElementState(Object.fromEntries(fe==null?void 0:fe.map(me=>[me,b])))},this.click=x=>{if(this.options.trigger==="hover")return;const b=ju(x,[this.typePrefix,"id"]);this.selectedItems.includes(b)?(this.selectedItems=this.selectedItems.filter(z=>z!==b),this.changeState(x,[])):(this.selectedItems.push(b),this.changeState(x,"selected"))},this.mouseleave=x=>{this.options.trigger!=="click"&&(this.selectedItems=[],this.changeState(x,[]))},this.mouseenter=x=>{if(this.options.trigger==="click")return;const b=ju(x,[this.typePrefix,"id"]);this.selectedItems.includes(b)?this.selectedItems=this.selectedItems.filter(z=>z!==b):(this.selectedItems.push(b),this.changeState(x,"active"))},this.setFieldMap=(x,b,z)=>{if(!x)return;const ee=this.fieldMap[z];if(ee)if(!ee.has(x))ee.set(x,[b]);else{const re=ee.get(x);re&&(re.push(b),ee.set(x,re))}},this.getEvents=()=>({mouseenter:this.mouseenter,mouseleave:this.mouseleave,click:this.click}),this.getMarkerData=(x,b)=>{if(!x)return[];const{model:z,element:ee}=this.context,{nodes:re,edges:ae,combos:se}=z.getData(),fe={},me=je=>$i(x)?x(je):x,Ee={node:"circle",edge:"line",combo:"rect"},Oe={circle:"circle",ellipse:"circle",image:"bowtie",rect:"square",star:"cross",triangle:"triangle",diamond:"diamond",cubic:"dot",line:"hyphen",polyline:"hyphen",quadratic:"hv","cubic-horizontal":"hyphen","cubic-vertical":"line"},ke=(je,Ke)=>ee==null?void 0:ee.getElementComputedStyle(je,Ke),We=(je,Ke)=>{je.forEach(Ze=>{const{id:Je}=Ze,tt=ju(Ze,["data",me(Ze)]),st=(ee==null?void 0:ee.getElementType(Ke,Ze))||"circle",gt=ke(Ke,Ze),mt=(Ke==="edge"?gt==null?void 0:gt.stroke:gt==null?void 0:gt.fill)||"#1783ff";Je&&tt&&tt.replace(/\s+/g,"")&&(this.setFieldMap(tt,Je,Ke),fe[tt]||(fe[tt]={id:`${Ke}__${Je}`,label:tt,marker:Oe[st]||Ee[Ke],elementType:Ke,lineWidth:1,stroke:mt,fill:mt}))})};switch(b){case"node":We(re,"node");break;case"edge":We(ae,"edge");break;case"combo":We(se,"combo");break;default:return[]}return Object.values(fe)},this.createElement=()=>{if(this.draw){this.updateElement();return}const x=this.options,{width:b,height:z,nodeField:ee,edgeField:re,comboField:ae,trigger:se,position:fe,container:me,containerStyle:Ee,className:Oe}=x,ke=cG(x,["width","height","nodeField","edgeField","comboField","trigger","position","container","containerStyle","className"]),We=this.getMarkerData(ee,"node"),je=this.getMarkerData(re,"edge"),Ke=this.getMarkerData(ae,"combo"),Ze=[...We,...Ke,...je],Je=Object.assign({width:b,height:z,data:Ze,itemMarkerLineWidth:({lineWidth:gt})=>gt,itemMarker:({marker:gt})=>gt,itemMarkerStroke:({stroke:gt})=>gt,itemMarkerFill:({fill:gt})=>gt,gridCol:We.length},ke,this.getEvents()),tt=new sG({className:"legend",style:Je});this.category=tt,this.upsertCanvas().appendChild(tt),this.draw=!0},this.bindEvents()}update(a){super.update(a),this.clear(),this.createElement()}clear(){var a,y;(a=this.canvas)===null||a===void 0||a.destroy(),(y=this.container)===null||y===void 0||y.remove(),this.canvas=void 0,this.container=void 0,this.draw=!1}updateElement(){this.category&&this.category.update({itemMarkerOpacity:({id:a})=>!this.selectedItems.length||this.selectedItems.includes(a)?1:.5,itemLabelOpacity:({id:a})=>!this.selectedItems.length||this.selectedItems.includes(a)?1:.5})}upsertCanvas(){if(this.canvas)return this.canvas;const a=this.context.canvas,[y,x]=a.getSize(),{width:b=y,height:z=x,position:ee,container:re,containerStyle:ae,className:se}=this.options,[fe,me]=n1({width:b,height:z,graphCanvas:a,container:re,containerStyle:ae,placement:ee,className:"legend"});return this.container=fe,se&&fe.classList.add(se),this.canvas=me,this.canvas}destroy(){this.clear(),this.context.graph.off(si.AFTER_DRAW,this.createElement),super.destroy()}}r1.defaultOptions={position:"bottom",trigger:"hover",orientation:"horizontal",layout:"flex",itemSpacing:4,rowPadding:10,colPadding:10,itemMarkerSize:16,itemLabelFontSize:16,width:240,height:160};class a1 extends Du{constructor(a,y){super(a,Object.assign({},a1.defaultOptions,y)),this.onDraw=x=>{var b;!((b=x==null?void 0:x.data)===null||b===void 0)&&b.render||this.onRender()},this.landmarkMap=new Map,this.mask=null,this.isMaskDragging=!1,this.onMaskDragStart=x=>{this.mask&&(this.isMaskDragging=!0,this.mask.setPointerCapture(x.pointerId),this.mask.addEventListener("pointermove",this.onMaskDrag),this.mask.addEventListener("pointerup",this.onMaskDragEnd),this.mask.addEventListener("pointercancel",this.onMaskDragEnd))},this.onMaskDrag=x=>{if(!this.mask||!this.isMaskDragging)return;const{size:[b,z]}=this.options,{movementX:ee,movementY:re}=x,{left:ae,top:se,width:fe,height:me}=this.mask.style,[,,Ee,Oe]=this.maskBBox;let ke=parseInt(ae)+ee,We=parseInt(se)+re,je=parseInt(fe),Ke=parseInt(me);ke<0&&(ke=0),We<0&&(We=0),ke+je>b&&(ke=Ih(b-je,0)),We+Ke>z&&(We=Ih(z-Ke,0)),je0?(ke=Ih(ke-ee,0),je=Dh(je+ee,b)):ee<0&&(je=Dh(je-ee,b))),Ke0?(We=Ih(We-re,0),Ke=Dh(Ke+re,z)):re<0&&(Ke=Dh(Ke-re,z))),Object.assign(this.mask.style,{left:ke+"px",top:We+"px",width:je+"px",height:Ke+"px"});const Ze=parseInt(ae)-ke,Je=parseInt(se)-We;if(Ze===0&&Je===0)return;const tt=this.context.canvas.getCamera().getZoom(),st=this.canvas.getCamera().getZoom(),gt=tt/st;this.context.graph.translateBy([Ze*gt,Je*gt],!1)},this.onMaskDragEnd=x=>{this.mask&&(this.isMaskDragging=!1,this.mask.releasePointerCapture(x.pointerId),this.mask.removeEventListener("pointermove",this.onMaskDrag),this.mask.removeEventListener("pointerup",this.onMaskDragEnd),this.mask.removeEventListener("pointercancel",this.onMaskDragEnd))},this.onTransform=f2(()=>{this.isMaskDragging||(this.updateMask(),this.setCamera())},32,{leading:!0}),this.setOnRender(),this.bindEvents()}update(a){this.unbindEvents(),super.update(a),"delay"in a&&this.setOnRender(),this.bindEvents()}setOnRender(){this.onRender=Nv(()=>{this.renderMinimap(),this.renderMask()},this.options.delay)}bindEvents(){const{graph:a}=this.context;a.on(si.AFTER_DRAW,this.onDraw),a.on(si.AFTER_RENDER,this.onRender),a.on(si.AFTER_ANIMATE,this.onRender),a.on(si.AFTER_TRANSFORM,this.onTransform)}unbindEvents(){const{graph:a}=this.context;a.off(si.AFTER_DRAW,this.onDraw),a.off(si.AFTER_RENDER,this.onRender),a.off(si.AFTER_ANIMATE,this.onRender),a.off(si.AFTER_TRANSFORM,this.onTransform)}renderMinimap(){const a=this.getElements(),y=this.initCanvas();this.setShapes(y,a)}getElements(){const{filter:a}=this.options,{model:y,element:x}=this.context,b=y.getData(),z={nodes:b.nodes.filter(se=>x==null?void 0:x.getElement(Lr(se))),edges:b.edges.filter(se=>{const fe=x==null?void 0:x.getElement(Lr(se));return fe&&s5(fe)}),combos:b.combos.filter(se=>x==null?void 0:x.getElement(Lr(se)))};if(!a)return z;const{nodes:ee,edges:re,combos:ae}=z;return{nodes:ee.filter(se=>a(Lr(se),"node")),edges:re.filter(se=>a(Lr(se),"edge")),combos:ae.filter(se=>a(Lr(se),"combo"))}}setShapes(a,y){const{nodes:x,edges:b,combos:z}=y,{shape:ee}=this.options,{element:re}=this.context,ae=(se,fe)=>{const me=Lr(se),Ee=re==null?void 0:re.getElement(me);if(!Ee)return;const Oe=Ee.getShape("key");let ke;if(typeof ee=="string"){const We=ee;ke=Ee.getShape(We).cloneNode()}else{const We=ee(me,fe,Ee);We===Ee?ke=We.cloneNode(!0):ke=We}ke.setPosition(Oe.getPosition()),Ee.style.zIndex&&(ke.style.zIndex=Ee.style.zIndex),ke.id=Ee.id,a.appendChild(ke)};a.removeChildren(),b.forEach(se=>ae(se,"edge")),z.forEach(se=>ae(se,"combo")),x.forEach(se=>ae(se,"node"))}initCanvas(){const{renderer:a,size:[y,x]}=this.options;if(this.canvas){const{width:b,height:z}=this.canvas.getConfig();(y!==b||x!==z)&&this.canvas.resize(y,x),a&&this.canvas.setRenderer(a)}else{const{className:b,position:z,container:ee,containerStyle:re}=this.options,[ae,se]=n1({renderer:a,width:y,height:x,placement:z,className:"minimap",container:ee,containerStyle:re,graphCanvas:this.context.canvas});b&&ae.classList.add(b),this.container=ae,this.canvas=se}return this.setCamera(),this.canvas}createLandmark(a,y,x){const b=`${a.join(",")}-${y.join(",")}-${x}`;if(this.landmarkMap.has(b))return this.landmarkMap.get(b);const ee=this.canvas.getCamera().createLandmark(b,{position:a,focalPoint:y,zoom:x});return this.landmarkMap.set(b,ee),ee}setCamera(){var a;const{canvas:y}=this.context,x=(a=this.canvas)===null||a===void 0?void 0:a.getCamera();if(!x)return;const{size:[b,z],padding:ee}=this.options,[re,ae,se,fe]=Zc(ee),{min:me,max:Ee,center:Oe}=y.getBounds("elements"),ke=Ee[0]-me[0],We=Ee[1]-me[1],je=b-fe-ae,Ke=z-re-se,Ze=je/ke,Je=Ke/We,tt=Math.min(Ze,Je),st=this.createLandmark(Oe,Oe,tt);x.gotoLandmark(st,0)}get maskBBox(){const{canvas:a}=this.context,y=a.getSize(),x=a.getCanvasByViewport([0,0]),b=a.getCanvasByViewport(y),z=this.canvas.canvas2Viewport(kd(x)),ee=this.canvas.canvas2Viewport(kd(b)),re=ee.x-z.x,ae=ee.y-z.y;return[z.x,z.y,re,ae]}calculateMaskBBox(){const{size:[a,y]}=this.options;let[x,b,z,ee]=this.maskBBox;return x<0&&(z=Dh(z+x,a),x=0),b<0&&(ee=Dh(ee+b,y),b=0),x+z>a&&(z=Ih(a-x,0)),b+ee>y&&(ee=Ih(y-b,0)),[Dh(x,a),Dh(b,y),Ih(z,0),Ih(ee,0)]}renderMask(){const{maskStyle:a}=this.options;this.mask||(this.mask=document.createElement("div"),this.mask.addEventListener("pointerdown",this.onMaskDragStart),this.mask.draggable=!0,this.mask.addEventListener("dragstart",y=>y.preventDefault&&y.preventDefault())),this.container.appendChild(this.mask),Object.assign(this.mask.style,Object.assign(Object.assign({},a),{cursor:"move",position:"absolute",pointerEvents:"auto"})),this.updateMask()}updateMask(){if(!this.mask)return;const[a,y,x,b]=this.calculateMaskBBox();Object.assign(this.mask.style,{top:y+"px",left:a+"px",width:x+"px",height:b+"px"})}destroy(){var a,y,x;this.unbindEvents(),(a=this.canvas)===null||a===void 0||a.destroy(),(y=this.mask)===null||y===void 0||y.remove(),(x=this.container)===null||x===void 0||x.remove(),super.destroy()}}a1.defaultOptions={size:[240,160],shape:"key",padding:10,position:"right-bottom",maskStyle:{border:"1px solid #ddd",background:"rgba(0, 0, 0, 0.1)"},containerStyle:{border:"1px solid #ddd",background:"#fff"},delay:128};const Dh=(E,a)=>Math.min(E,a),Ih=(E,a)=>Math.max(E,a);var Jx=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(fe){try{se(x.next(fe))}catch(me){ee(me)}}function ae(fe){try{se(x.throw(fe))}catch(me){ee(me)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})};const qx={x1:0,y1:0,x2:0,y2:0,visibility:"hidden"};class i1 extends Du{constructor(a,y){super(a,Object.assign({},i1.defaultOptions,y)),this.initSnapline=()=>{const x=this.context.canvas.getLayer("transient");this.horizontalLine||(this.horizontalLine=x.appendChild(new fg({style:Object.assign(Object.assign({},qx),this.options.horizontalLineStyle)}))),this.verticalLine||(this.verticalLine=x.appendChild(new fg({style:Object.assign(Object.assign({},qx),this.options.verticalLineStyle)})))},this.isHorizontalSticking=!1,this.isVerticalSticking=!1,this.enableStick=!0,this.autoSnapToLine=(x,b,z)=>Jx(this,void 0,void 0,function*(){const{verticalX:ee,horizontalY:re}=z,{tolerance:ae}=this.options,{min:[se,fe],max:[me,Ee],center:[Oe,ke]}=b;let We=0,je=0;ee!==null&&(rc(me,ee){const{target:b}=x,z=.5;if(this.isHorizontalSticking||this.isVerticalSticking){const[ee,re]=this.getDelta(x);if(this.isHorizontalSticking&&this.isVerticalSticking&&Math.abs(ee)<=z&&Math.abs(re)<=z)return this.context.graph.translateElementBy({[b.id]:[-ee,-re]},!1),!1;if(this.isHorizontalSticking&&Math.abs(re)<=z)return this.context.graph.translateElementBy({[b.id]:[0,-re]},!1),!1;if(this.isVerticalSticking&&Math.abs(ee)<=z)return this.context.graph.translateElementBy({[b.id]:[-ee,0]},!1),!1;this.isHorizontalSticking=!1,this.isVerticalSticking=!1,this.enableStick=!1,setTimeout(()=>{this.enableStick=!0},200)}return this.enableStick},this.calcSnaplineMetadata=(x,b)=>{const{tolerance:z,shape:ee}=this.options,{min:[re,ae],max:[se,fe],center:[me,Ee]}=b;let Oe=null,ke=null,We=null,je=null,Ke=null,Ze=null;return this.getNodes().some(Je=>{if(nu(x.id,Je.id))return!1;const tt=ED(Je,ee).getRenderBounds(),{min:[st,gt],max:[mt,ct],center:[Lt,_t]}=tt;return Oe===null&&(rc(Lt,me){this.initSnapline()},this.onDrag=x=>Jx(this,void 0,void 0,function*(){const{target:b}=x;if(this.options.autoSnap&&!this.enableSnap(x))return;const z=ED(b,this.options.shape).getRenderBounds(),ee=this.calcSnaplineMetadata(b,z);this.hideSnapline(),(ee.verticalX!==null||ee.horizontalY!==null)&&this.updateSnapline(ee),this.options.autoSnap&&(yield this.autoSnapToLine(b.id,z,ee))}),this.onDragEnd=()=>{this.hideSnapline()},this.bindEvents()}getNodes(){var a;const{filter:y}=this.options,b=(((a=this.context.element)===null||a===void 0?void 0:a.getNodes())||[]).filter(z=>{var ee;return s5(z)&&((ee=this.context.viewport)===null||ee===void 0?void 0:ee.isInViewport(z.getRenderBounds()))});return y?b.filter(z=>y(z)):b}hideSnapline(){this.horizontalLine.style.visibility="hidden",this.verticalLine.style.visibility="hidden"}getLineWidth(a){const{lineWidth:y}=this.options[`${a}LineStyle`];return+(y||qx.lineWidth||1)/this.context.graph.getZoom()}updateSnapline(a){const{verticalX:y,verticalMinY:x,verticalMaxY:b,horizontalY:z,horizontalMinX:ee,horizontalMaxX:re}=a,[ae,se]=this.context.canvas.getSize(),{offset:fe}=this.options;z!==null?Object.assign(this.horizontalLine.style,{x1:fe===1/0?0:ee-fe,y1:z,x2:fe===1/0?ae:re+fe,y2:z,visibility:"visible",lineWidth:this.getLineWidth("horizontal")}):this.horizontalLine.style.visibility="hidden",y!==null?Object.assign(this.verticalLine.style,{x1:y,y1:fe===1/0?0:x-fe,x2:y,y2:fe===1/0?se:b+fe,visibility:"visible",lineWidth:this.getLineWidth("vertical")}):this.verticalLine.style.visibility="hidden"}getDelta(a){const y=this.context.graph.getZoom();return Fd([a.dx,a.dy],y)}bindEvents(){return Jx(this,void 0,void 0,function*(){const{graph:a}=this.context;a.on(pd.DRAG_START,this.onDragStart),a.on(pd.DRAG,this.onDrag),a.on(pd.DRAG_END,this.onDragEnd)})}unbindEvents(){const{graph:a}=this.context;a.off(pd.DRAG_START,this.onDragStart),a.off(pd.DRAG,this.onDrag),a.off(pd.DRAG_END,this.onDragEnd)}destroyElements(){var a,y;(a=this.horizontalLine)===null||a===void 0||a.destroy(),(y=this.verticalLine)===null||y===void 0||y.destroy()}destroy(){this.destroyElements(),this.unbindEvents(),super.destroy()}}i1.defaultOptions={tolerance:5,offset:20,autoSnap:!0,shape:"key",verticalLineStyle:{stroke:"#1783FF"},horizontalLineStyle:{stroke:"#1783FF"},filter:()=>!0};const rc=(E,a)=>Math.abs(E-a),ED=(E,a)=>typeof a=="function"?a(E):E.getShape(a);var AD=null,dG=null;function o1(E){return E instanceof Date?E:new Date(E)}function fG(E){for(var a=__read(E,2),y=a[0],x=a[1],b=AD.indexOf(y),z=AD.indexOf(x),ee="",re=b;re<=z;re+=1)if(ee+=dG[re],re2&&(ae=":"),ee+=ae}return ee}function hc(E,a){var y={YYYY:E.getFullYear(),MM:E.getMonth()+1,DD:E.getDate(),HH:E.getHours(),mm:E.getMinutes(),ss:E.getSeconds()},x=a;return Object.keys(y).forEach(function(b){var z=y[b];x=x.replace(b,b==="YYYY"?"".concat(z):"".concat(z).padStart(2,"0"))}),x}function xee(E,a){return o1(E).getTime()-o1(a).getTime()}function See(E,a){var y=__read([o1(E),o1(a)],2),x=y[0],b=y[1];return x.getFullYear()!==b.getFullYear()?"year":x.getMonth()!==b.getMonth()?"month":x.getDay()!==b.getDay()?"day":x.getHours()!==b.getHours()?"hour":x.getMinutes()!==b.getMinutes()?"minute":"second"}function bee(E,a){var y=new Date(E),x={year:function(b){b.setMonth(0),b.setHours(0,0,0,0)},month:function(b){b.setDate(1),b.setHours(0,0,0,0)},day:function(b){return b.setHours(0,0,0,0)},hour:function(b){return b.setMinutes(0,0,0)},minute:function(b){return b.setSeconds(0,0)},second:function(b){return b.setMilliseconds(0)}};return x[a](y),hc(y,fG(["year",a]))}function hG(E,a){if(E.length<=a)return E;for(var y=Math.floor(E.length/a),x=[],b=0;b180?1:0,ct=E>a?0:1,Lt=!1;return Lt?"M".concat(y,",").concat(x,",L").concat(ke,",").concat(We,",A").concat(re,",").concat(ae,",0,").concat(mt,",").concat(ct,",").concat(Ke,",").concat(Ze,",L").concat(y,",").concat(x):"M".concat(ke,",").concat(We,",A").concat(re,",").concat(ae,",0,").concat(mt,",").concat(ct,",").concat(Ke,",").concat(Ze)}function IG(E){var a=E.attributes,y=a.startAngle,x=a.endAngle,b=a.center,z=a.radius;return(0,Bt.ev)((0,Bt.ev)([y,x],(0,Bt.CR)(b),!1),[z],!1)}function TG(E,a,y,x){var b=a.startAngle,z=a.endAngle,ee=a.center,re=a.radius,ae=a.classNamePrefix;return E.selectAll(Go.line.class).data([{d:ID.apply(void 0,(0,Bt.ev)((0,Bt.ev)([b,z],(0,Bt.CR)(ee),!1),[re],!1))}],function(se,fe){return fe}).join(function(se){var fe=se.append("path").attr("className",Go.line.name).styles(a).styles({d:function(me){return me.d}});return qc(fe,Go.line,nl.line,ae),fe},function(se){return se.transition(function(){var fe=this,me=wG(this,IG(this),(0,Bt.ev)((0,Bt.ev)([b,z],(0,Bt.CR)(ee),!1),[re],!1),x.update);if(me){var Ee=function(){var Oe=ju(fe.attributes,"__keyframe_data__");fe.style.d=ID.apply(void 0,(0,Bt.ev)([],(0,Bt.CR)(Oe),!1))};me.onframe=Ee,me.onfinish=Ee}return me}).styles(a)},function(se){return se.remove()}).styles(y).transitions()}function OG(E,a){var y=a.truncRange,x=a.truncShape,b=a.lineExtension}function LG(E,a,y){y===void 0&&(y=[0,0]);var x=(0,Bt.CR)([E,a,y],3),b=(0,Bt.CR)(x[0],2),z=b[0],ee=b[1],re=(0,Bt.CR)(x[1],2),ae=re[0],se=re[1],fe=(0,Bt.CR)(x[2],2),me=fe[0],Ee=fe[1],Oe=(0,Bt.CR)([ae-z,se-ee],2),ke=Oe[0],We=Oe[1],je=Math.sqrt(Math.pow(ke,2)+Math.pow(We,2)),Ke=(0,Bt.CR)([-me/je,Ee/je],2),Ze=Ke[0],Je=Ke[1];return[Ze*ke,Ze*We,Je*ke,Je*We]}function TD(E){var a=(0,Bt.CR)(E,2),y=(0,Bt.CR)(a[0],2),x=y[0],b=y[1],z=(0,Bt.CR)(a[1],2),ee=z[0],re=z[1];return{x1:x,y1:b,x2:ee,y2:re}}function BG(E,a,y,x){var b=a.showTrunc,z=a.startPos,ee=a.endPos,re=a.truncRange,ae=a.lineExtension,se=a.classNamePrefix,fe=(0,Bt.CR)([z,ee],2),me=(0,Bt.CR)(fe[0],2),Ee=me[0],Oe=me[1],ke=(0,Bt.CR)(fe[1],2),We=ke[0],je=ke[1],Ke=(0,Bt.CR)(ae?LG(z,ee,ae):new Array(4).fill(0),4),Ze=Ke[0],Je=Ke[1],tt=Ke[2],st=Ke[3],gt=function(Ln){return E.selectAll(Go.line.class).data(Ln,function(nr,An){return An}).join(function(nr){var An=nr.append("line").styles(y).transition(function(fr){return jd(this,TD(fr.line),!1)});return An.attr("className",function(fr){if(!se)return"".concat(Go.line.name," ").concat(fr.className);var ra=Qv(Go.line.name,nl.line,se);if(fr.className===Go.lineFirst.name){var aa=Qv(Go.lineFirst.name,nl.lineFirst,se);return"".concat(ra," ").concat(aa)}if(fr.className===Go.lineSecond.name){var aa=Qv(Go.lineSecond.name,nl.lineSecond,se);return"".concat(ra," ").concat(aa)}return ra}),An},function(nr){return nr.styles(y).transition(function(An){var fr=An.line;return jd(this,TD(fr),x.update)})},function(nr){return nr.remove()}).transitions()};if(!b||!re)return gt([{line:[[Ee+Ze,Oe+Je],[We+tt,je+st]],className:Go.line.name}]);var mt=(0,Bt.CR)(re,2),ct=mt[0],Lt=mt[1],_t=We-Ee,Yt=je-Oe,$t=(0,Bt.CR)([Ee+_t*ct,Oe+Yt*ct],2),En=$t[0],on=$t[1],Fn=(0,Bt.CR)([Ee+_t*Lt,Oe+Yt*Lt],2),tr=Fn[0],Cn=Fn[1],xn=gt([{line:[[Ee+Ze,Oe+Je],[En,on]],className:Go.lineFirst.name},{line:[[tr,Cn],[We+tt,je+st]],className:Go.lineSecond.name}]);return OG(E,a),xn}function NG(E,a,y,x){var b=y.showArrow,z=y.showTrunc,ee=y.lineArrow,re=y.lineArrowOffset,ae=y.lineArrowSize,se;if(a==="arc"?se=E.select(Go.line.class):z?se=E.select(Go.lineSecond.class):se=E.select(Go.line.class),!b||!ee||y.type==="arc"&&DD(y.startAngle,y.endAngle)){var fe=se.node();fe&&(fe.style.markerEnd=void 0);return}var me=Wf(ee);me.attr(x),Kx(me,ae,!0),se.style("markerEnd",me).style("markerEndOffset",-re)}function RG(E,a,y){var x=a.type,b,z=ts(a,"line");return x==="linear"?b=BG(E,a,rS(z,"arrow"),y):b=TG(E,a,rS(z,"arrow"),y),NG(E,x,a,z),b}function FG(E,a){return iS(E,a.gridDirection,a)}function OD(E){var a=E.type,y=E.gridCenter;return a==="linear"?y:y||E.center}function kG(E,a){var y=a.gridLength;return E.map(function(x,b){var z=x.value,ee=(0,Bt.CR)(u1(z,a),2),re=ee[0],ae=ee[1],se=(0,Bt.CR)(jf(FG(z,a),y),2),fe=se[0],me=se[1];return{id:b,points:[[re,ae],[re+fe,ae+me]]}})}function _G(E,a){var y=a.gridControlAngles,x=OD(a);if(!x)throw new Error("grid center is not provide");if(E.length<2)throw new Error("Invalid grid data");if(!y||y.length===0)throw new Error("Invalid gridControlAngles");var b=(0,Bt.CR)(x,2),z=b[0],ee=b[1];return E.map(function(re,ae){var se=re.value,fe=(0,Bt.CR)(u1(se,a),2),me=fe[0],Ee=fe[1],Oe=(0,Bt.CR)([me-z,Ee-ee],2),ke=Oe[0],We=Oe[1],je=[];return y.forEach(function(Ke){var Ze=I0(Ke),Je=(0,Bt.CR)([Math.cos(Ze),Math.sin(Ze)],2),tt=Je[0],st=Je[1],gt=ke*tt-We*st+z,mt=ke*st+We*tt+ee;je.push([gt,mt])}),{points:je,id:ae}})}function zG(E,a,y,x){var b=y.classNamePrefix,z=ts(y,"grid"),ee=z.type,re=z.areaFill,ae=OD(y),se=aS(a,y.gridFilter),fe=ee==="segment"?kG(se,y):_G(se,y),me=(0,Bt.pi)((0,Bt.pi)({},z),{center:ae,areaFill:$i(re)?se.map(function(Ee,Oe){return Bc(re,[Ee,Oe,se])}):re,animate:x,data:fe});return E.selectAll(Go.grid.class).data([1]).join(function(Ee){var Oe=Ee.append(function(){return new SG({style:me})}).attr("className",Go.grid.name);return qc(Oe,Go.grid,nl.grid,b),Oe},function(Ee){return Ee.transition(function(){return this.update(me)})},function(Ee){return Ee.remove()}).transitions()}function Vu(E,a,y,x,b){return x===void 0&&(x=!0),b===void 0&&(b=!1),x&&E===a||b&&E===y?!0:E>a&&E0,Ze=x-ae,Je=b-se,tt=Ee*Je-Oe*Ze;if(tt<0===Ke)return!1;var st=ke*Je-We*Ze;return!(st<0===Ke||tt>je===Ke||st>je===Ke)}function ND(E,a){var y=[[E[0],E[1],E[2],E[3]],[E[2],E[3],E[4],E[5]],[E[4],E[5],E[6],E[7]],[E[6],E[7],E[0],E[1]]];return y.some(function(x){return BD(a,x)})}var Iee={lineToLine:BD,intersectBoxLine:ND,getBounds:c1};function ZG(E,a,y){var x,b,z=c1(E,y).flat(1),ee=c1(a,y).flat(1),re=[[z[0],z[1],z[2],z[3]],[z[0],z[1],z[4],z[5]],[z[4],z[5],z[6],z[7]],[z[2],z[3],z[6],z[7]]];try{for(var ae=(0,Bt.XA)(re),se=ae.next();!se.done;se=ae.next()){var fe=se.value;if(ND(ee,fe))return!0}}catch(me){x={error:me}}finally{try{se&&!se.done&&(b=ae.return)&&b.call(ae)}finally{if(x)throw x.error}}return!1}function QG(E,a){var y=E.type,x=E.labelDirection,b=E.crossSize;if(!b)return!1;if(y==="arc"){var z=E.center,ee=E.radius,re=(0,Bt.CR)(z,2),ae=re[0],se=re[1],fe=x==="negative"?0:b,me=-ee-fe,Ee=ee+fe,Oe=(0,Bt.CR)(Hu(a),4),ke=Oe[0],We=Oe[1],je=Oe[2],Ke=Oe[3];return new sS(ae+me-Ke,se+me-ke,ae+Ee+We,se+Ee+je)}var Ze=(0,Bt.CR)(E.startPos,2),Je=Ze[0],tt=Ze[1],st=(0,Bt.CR)(E.endPos,2),gt=st[0],mt=st[1],ct=(0,Bt.CR)(MD(E)?[-a,0,a,0]:[0,a,0,-a],4),Lt=ct[0],_t=ct[1],Yt=ct[2],$t=ct[3],En=O0(0,E),on=jf(En,b),Fn=new sS(Je,tt,gt,mt);return Fn.x1+=$t,Fn.y1+=Lt,Fn.x2+=_t+on[0],Fn.y2+=Yt+on[1],Fn}function d1(E,a,y){var x,b,z=a.crossPadding,ee=new Set,re=null,ae=QG(a,z),se=function(ke){return ae?KG(ae,ke):!0},fe=function(ke,We){return!ke||!ke.firstChild?!0:!ZG(ke.firstChild,We.firstChild,Hu(y))};try{for(var me=(0,Bt.XA)(E),Ee=me.next();!Ee.done;Ee=me.next()){var Oe=Ee.value;se(Oe)?!re||fe(re,Oe)?re=Oe:(ee.add(re),ee.add(Oe)):ee.add(Oe)}}catch(ke){x={error:ke}}finally{try{Ee&&!Ee.done&&(b=me.return)&&b.call(me)}finally{if(x)throw x.error}}return Array.from(ee)}function lS(E,a){return a===void 0&&(a={}),wo(E)?0:typeof E=="number"?E:Math.floor(Vj(E,a))}function YG(E,a,y,x){if(!(E.length<=0)){var b=a.suffix,z=b===void 0?"...":b,ee=a.minLength,re=a.maxLength,ae=re===void 0?1/0:re,se=a.step,fe=se===void 0?" ":se,me=a.margin,Ee=me===void 0?[0,0,0,0]:me,Oe=fD(x.getTextShape(E[0])),ke=lS(fe,Oe),We=ee?lS(ee,Oe):ke,je=lS(ae,Oe);(wo(je)||je===1/0)&&(je=Math.max.apply(null,E.map(function(on){return on.getBBox().width})));for(var Ke=E.slice(),Ze=(0,Bt.CR)(Ee,4),Je=Ze[0],tt=Je===void 0?0:Je,st=Ze[1],gt=st===void 0?0:st,mt=Ze[2],ct=mt===void 0?tt:mt,Lt=Ze[3],_t=Lt===void 0?gt:Lt,Yt=function(on){if(Ke.forEach(function(Fn){x.ellipsis(x.getTextShape(Fn),on,z)}),Ke=d1(E,y,Ee),Ke.length<1)return{value:void 0}},$t=je;$t>We+ke;$t-=ke){var En=Yt($t);if(typeof En=="object")return En.value}}}var XG=function(E){return E!==void 0&&E!=null&&!Number.isNaN(E)},JG={parity:function(E,a){var y=a.seq,x=y===void 0?2:y;return E.filter(function(b,z){return z%x?(Ud(b),!1):!0})}},qG=function(E){return E.filter(XG)};function $G(E,a,y,x){var b=E.length,z=a.keepHeader,ee=a.keepTail;if(!(b<=1||b===2&&z&&ee)){var re=JG.parity,ae=function(Je){return Je.forEach(x.show),Je},se=2,fe=E.slice(),me=E.slice(),Ee=Math.min.apply(Math,(0,Bt.ev)([1],(0,Bt.CR)(E.map(function(Je){return Je.getBBox().width})),!1));if(y.type==="linear"&&(oS(y)||MD(y))){var Oe=dD(E[0]).left,ke=dD(E[b-1]).right,We=Math.abs(ke-Oe)||1;se=Math.max(Math.floor(b*Ee/We),se)}var je,Ke;for(z&&(je=fe.splice(0,1)[0]),ee&&(Ke=fe.splice(-1,1)[0],fe.reverse()),ae(fe);sere)){if(y.type==="linear"&&oS(y)){if(Ke(re),We())return}else for(var Ze=ke;Ze<=re;Ze++)if(Ke(Ze),We())return;se&&Ke(Oe)}}var rH=new Map([["hide",$G],["rotate",eH],["ellipsis",YG],["wrap",nH]]);function aH(E,a,y){return a.labelOverlap.length<1?!1:y==="hide"?!XW(E[0]):y==="rotate"?!E.some(function(x){var b;return!!(!((b=x.attr("transform"))===null||b===void 0)&&b.includes("rotate"))}):y==="ellipsis"||y==="wrap"?E.filter(function(x){return x.querySelector("text")}).length>=1:!0}function iH(E,a,y,x){var b=a.labelOverlap,z=b===void 0?[]:b;z.length&&z.forEach(function(ee){var re=ee.type,ae=rH.get(re);aH(E,a,re)&&(ae==null||ae(E,ee,a,x,y))})}function oH(){for(var E=[],a=0;aEe[0]&&ct0&&Number.isFinite(E)?a:y},Fee=function(E,a){return E*a},kee=function(E,a){return E/2+(a||0)/2},dS=function(E){return E};class VD{constructor(a){this.options=Uu({},this.getDefaultOptions()),this.update(a)}getOptions(){return this.options}update(a={}){this.options=Uu({},this.options,a),this.rescale(a)}rescale(a){}}function fS(E,a){return a-E?y=>(y-E)/(a-E):y=>.5}function f1(E,...a){return a.reduce((y,x)=>b=>y(x(b)),E)}function CH(E,a,y,x,b){let z=y||0,ee=x||E.length;const re=b||(ae=>ae);for(;za?ee=ae:z=ae+1}return z}var PH=Ie(75196),wH=Ie.n(PH);function hS(E,a,y){let x=y;return x<0&&(x+=1),x>1&&(x-=1),x<1/6?E+(a-E)*6*x:x<1/2?a:x<2/3?E+(a-E)*(2/3-x)*6:E}function MH(E){const a=E[0]/360,y=E[1]/100,x=E[2]/100,b=E[3];if(y===0)return[x*255,x*255,x*255,b];const z=x<.5?x*(1+y):x+y-x*y,ee=2*x-z,re=hS(ee,z,a+1/3),ae=hS(ee,z,a),se=hS(ee,z,a-1/3);return[re*255,ae*255,se*255,b]}function KD(E){const a=wH().get(E);if(!a)return null;const{model:y,value:x}=a;return y==="rgb"?x:y==="hsl"?MH(x):null}const h1=(E,a)=>y=>E*(1-y)+a*y,DH=(E,a)=>{const y=KD(E),x=KD(a);return y===null||x===null?y?()=>E:()=>a:b=>{const z=new Array(4);for(let fe=0;fe<4;fe+=1){const me=y[fe],Ee=x[fe];z[fe]=me*(1-b)+Ee*b}const[ee,re,ae,se]=z;return`rgba(${Math.round(ee)}, ${Math.round(re)}, ${Math.round(ae)}, ${se})`}},IH=(E,a)=>typeof E=="number"&&typeof a=="number"?h1(E,a):typeof E=="string"&&typeof a=="string"?DH(E,a):()=>E,TH=(E,a)=>{const y=h1(E,a);return x=>Math.round(y(x))};function OH(E){return E===null}function ZD(E){return!jo(E)&&!OH(E)&&!Number.isNaN(E)}const gS=Math.sqrt(50),vS=Math.sqrt(10),mS=Math.sqrt(2);function g1(E,a,y){const x=(a-E)/Math.max(0,y),b=Math.floor(Math.log(x)/Math.LN10),z=x/Fh(10,b);return b>=0?(z>=gS?10:z>=vS?5:z>=mS?2:1)*Fh(10,b):-Fh(10,-b)/(z>=gS?10:z>=vS?5:z>=mS?2:1)}function _ee(E,a,y){const x=Math.abs(a-E)/Math.max(0,y);let b=Fh(10,Math.floor(Math.log(x)/Math.LN10));const z=x/b;return z>=gS?b*=10:z>=vS?b*=5:z>=mS&&(b*=2),a{const x=[E,a];let b=0,z=x.length-1,ee=x[b],re=x[z],ae;return re0?(ee=Math.floor(ee/ae)*ae,re=Math.ceil(re/ae)*ae,ae=g1(ee,re,y)):ae<0&&(ee=Math.ceil(ee*ae)/ae,re=Math.floor(re*ae)/ae,ae=g1(ee,re,y)),ae>0?(x[b]=Math.floor(ee/ae)*ae,x[z]=Math.ceil(re/ae)*ae):ae<0&&(x[b]=Math.ceil(ee*ae)/ae,x[z]=Math.floor(re*ae)/ae),x};function BH(E,a){const y=aa?E:a;return b=>Math.min(Math.max(y,b),x)}const NH=(E,a,y)=>{const[x,b]=E,[z,ee]=a;let re,ae;return x{const x=Math.min(E.length,a.length)-1,b=new Array(x),z=new Array(x),ee=E[0]>E[x],re=ee?[...E].reverse():E,ae=ee?[...a].reverse():a;for(let se=0;se{const fe=CH(E,se,1,x)-1,me=b[fe],Ee=z[fe];return f1(Ee,me)(se)}},QD=(E,a,y,x)=>(Math.min(E.length,a.length)>2?RH:NH)(E,a,x?TH:y);class FH extends VD{getDefaultOptions(){return{domain:[0,1],range:[0,1],nice:!1,clamp:!1,round:!1,interpolate:h1,tickCount:5}}map(a){return ZD(a)?this.output(a):this.options.unknown}invert(a){return ZD(a)?this.input(a):this.options.unknown}nice(){if(!this.options.nice)return;const[a,y,x,...b]=this.getTickMethodOptions();this.options.domain=this.chooseNice()(a,y,x,...b)}getTicks(){const{tickMethod:a}=this.options,[y,x,b,...z]=this.getTickMethodOptions();return a(y,x,b,...z)}getTickMethodOptions(){const{domain:a,tickCount:y}=this.options,x=a[0],b=a[a.length-1];return[x,b,y]}chooseNice(){return LH}rescale(){this.nice();const[a,y]=this.chooseTransforms();this.composeOutput(a,this.chooseClamp(a)),this.composeInput(a,y,this.chooseClamp(y))}chooseClamp(a){const{clamp:y,range:x}=this.options,b=this.options.domain.map(a),z=Math.min(b.length,x.length);return y?BH(b[0],b[z-1]):dS}composeOutput(a,y){const{domain:x,range:b,round:z,interpolate:ee}=this.options,re=QD(x.map(a),b,ee,z);this.output=f1(re,y,a)}composeInput(a,y,x){const{domain:b,range:z}=this.options,ee=QD(z,b.map(a),h1);this.input=f1(y,x,ee)}}const kH=(E,a,y)=>{let x,b,z=E,ee=a;if(z===ee&&y>0)return[z];let re=g1(z,ee,y);if(re===0||!Number.isFinite(re))return[];if(re>0){z=Math.ceil(z/re),ee=Math.floor(ee/re),b=new Array(x=Math.ceil(ee-z+1));for(let ae=0;ae`${a}`:typeof E=="object"?a=>JSON.stringify(a):a=>a}class yS extends VD{getDefaultOptions(){return{domain:[],range:[],unknown:pS}}constructor(a){super(a)}map(a){return this.domainIndexMap.size===0&&JD(this.domainIndexMap,this.getDomain(),this.domainKey),qD({value:this.domainKey(a),mapper:this.domainIndexMap,from:this.getDomain(),to:this.getRange(),notFoundReturn:this.options.unknown})}invert(a){return this.rangeIndexMap.size===0&&JD(this.rangeIndexMap,this.getRange(),this.rangeKey),qD({value:this.rangeKey(a),mapper:this.rangeIndexMap,from:this.getRange(),to:this.getDomain(),notFoundReturn:this.options.unknown})}rescale(a){const[y]=this.options.domain,[x]=this.options.range;if(this.domainKey=$D(y),this.rangeKey=$D(x),!this.rangeIndexMap){this.rangeIndexMap=new Map,this.domainIndexMap=new Map;return}(!a||a.range)&&this.rangeIndexMap.clear(),(!a||a.domain||a.compare)&&(this.domainIndexMap.clear(),this.sortedDomain=void 0)}clone(){return new yS(this.options)}getRange(){return this.options.range}getDomain(){if(this.sortedDomain)return this.sortedDomain;const{domain:a,compare:y}=this.options;return this.sortedDomain=y?[...a].sort(y):a,this.sortedDomain}}function WH(E){const a=Math.min(...E);return E.map(y=>y/a)}function jH(E,a){const y=E.length,x=a-y;return x>0?[...E,...new Array(x).fill(1)]:x<0?E.slice(0,a):E}function GH(E){return Math.round(E*1e12)/1e12}function HH(E){const{domain:a,range:y,paddingOuter:x,paddingInner:b,flex:z,round:ee,align:re}=E,ae=a.length,se=jH(z,ae),[fe,me]=y,Ee=me-fe,Oe=2/ae*x+1-1/ae*b,ke=Ee/Oe,We=ke*b/ae,je=ke-ae*We,Ke=WH(se),Ze=Ke.reduce(($t,En)=>$t+En),Je=je/Ze,tt=new XD(a.map(($t,En)=>{const on=Ke[En]*Je;return[$t,ee?Math.floor(on):on]})),st=new XD(a.map(($t,En)=>{const Fn=Ke[En]*Je+We;return[$t,ee?Math.floor(Fn):Fn]})),gt=Array.from(st.values()).reduce(($t,En)=>$t+En),ct=(Ee-(gt-gt/ae*b))*re,Lt=fe+ct;let _t=ee?Math.round(Lt):Lt;const Yt=new Array(ae);for(let $t=0;$tEe+Je*fe);return{valueStep:fe,valueBandWidth:me,adjustedRange:Ke}}class ES extends yS{getDefaultOptions(){return{domain:[],range:[0,1],align:.5,round:!1,paddingInner:0,paddingOuter:0,padding:0,unknown:pS,flex:[]}}constructor(a){super(a)}clone(){return new ES(this.options)}getStep(a){return this.valueStep===void 0?1:typeof this.valueStep=="number"?this.valueStep:a===void 0?Array.from(this.valueStep.values())[0]:this.valueStep.get(a)}getBandWidth(a){return this.valueBandWidth===void 0?1:typeof this.valueBandWidth=="number"?this.valueBandWidth:a===void 0?Array.from(this.valueBandWidth.values())[0]:this.valueBandWidth.get(a)}getRange(){return this.adjustedRange}getPaddingInner(){const{padding:a,paddingInner:y}=this.options;return a>0?a:y}getPaddingOuter(){const{padding:a,paddingOuter:y}=this.options;return a>0?a:y}rescale(){super.rescale();const{align:a,domain:y,range:x,round:b,flex:z}=this.options,{adjustedRange:ee,valueBandWidth:re,valueStep:ae}=VH({align:a,range:x,round:b,flex:z,paddingInner:this.getPaddingInner(),paddingOuter:this.getPaddingOuter(),domain:y});this.valueStep=ae,this.valueBandWidth=re,this.adjustedRange=ee}}var KH=function(E){(0,Bt.ZT)(a,E);function a(y){var x=this,b=y.style,z=(0,Bt._T)(y,["style"]);return x=E.call(this,Uu({},{type:"column"},(0,Bt.pi)({style:b},z)))||this,x.columnsGroup=new Eu({name:"columns"}),x.appendChild(x.columnsGroup),x.render(),x}return a.prototype.render=function(){var y=this.attributes,x=y.columns,b=y.x,z=y.y;this.columnsGroup.style.transform="translate(".concat(b,", ").concat(z,")"),eo(this.columnsGroup).selectAll(".column").data(x.flat()).join(function(ee){return ee.append("rect").attr("className","column").each(function(re){this.attr(re)})},function(ee){return ee.each(function(re){this.attr(re)})},function(ee){return ee.remove()})},a.prototype.update=function(y){this.attr(hu({},this.attributes,y)),this.render()},a.prototype.clear=function(){this.removeChildren()},a}(yl),ZH=function(E){(0,Bt.ZT)(a,E);function a(y){var x=this,b=y.style,z=(0,Bt._T)(y,["style"]);return x=E.call(this,Uu({},{type:"lines"},(0,Bt.pi)({style:b},z)))||this,x.linesGroup=x.appendChild(new Eu),x.areasGroup=x.appendChild(new Eu),x.render(),x}return a.prototype.render=function(){var y=this.attributes,x=y.lines,b=y.areas,z=y.x,ee=y.y;this.style.transform="translate(".concat(z,", ").concat(ee,")"),x&&this.renderLines(x),b&&this.renderAreas(b)},a.prototype.clear=function(){this.linesGroup.removeChildren(),this.areasGroup.removeChildren()},a.prototype.update=function(y){this.attr(hu({},this.attributes,y)),this.render()},a.prototype.renderLines=function(y){eo(this.linesGroup).selectAll(".line").data(y).join(function(x){return x.append("path").attr("className","line").each(function(b){this.attr(b)})},function(x){return x.each(function(b){this.attr(b)})},function(x){return x.remove()})},a.prototype.renderAreas=function(y){eo(this.linesGroup).selectAll(".area").data(y).join(function(x){return x.append("path").attr("className","area").each(function(b){this.attr(b)})},function(x){return x.each(function(b){this.style(b)})},function(x){return x.remove()})},a}(yl);function QH(E,a,y,x){var b,z=[],ee=!!x,re,ae,se=[1/0,1/0],fe=[-1/0,-1/0],me,Ee,Oe;if(ee){b=(0,Bt.CR)(x,2),se=b[0],fe=b[1];for(var ke=0,We=E.length;keee&&(y=(0,Bt.CR)([ee,re],2),re=y[0],ee=y[1]),E.map(function(ae){var se=ae.map(function(fe,me){return[x.map(me),Nl(b.map(fe),re,ee)]});return se})}function qv(E,a){a===void 0&&(a=!1);var y=a?E.length-1:0,x=E.map(function(b,z){return(0,Bt.ev)([z===y?"M":"L"],(0,Bt.CR)(b),!1)});return a?x.reverse():x}function v1(E,a){if(a===void 0&&(a=!1),E.length<=2)return qv(E);for(var y=[],x=E.length,b=0;b=0;b-=1){var z=E[b],ee=qv(z),re=void 0;if(b===0)re=AS(ee,a,y);else{var ae=E[b-1],se=qv(ae,!0);se[0][0]="L",re=(0,Bt.ev)((0,Bt.ev)((0,Bt.ev)([],(0,Bt.CR)(ee),!1),(0,Bt.CR)(se),!1),[["Z"]],!1)}x.push(re)}return x}function $H(E,a,y){for(var x=[],b=E.length-1;b>=0;b-=1){var z=E[b],ee=v1(z),re=void 0;if(b===0)re=AS(ee,a,y);else{var ae=E[b-1],se=v1(ae,!0),fe=z[0];se[0][0]="L",re=(0,Bt.ev)((0,Bt.ev)((0,Bt.ev)([],(0,Bt.CR)(ee),!1),(0,Bt.CR)(se),!1),[(0,Bt.ev)(["M"],(0,Bt.CR)(fe),!1),["Z"]],!1)}x.push(re)}return x}var eV=function(E,a){if(Cc(E)){for(var y,x=1/0,b=0;bx&&(y=z,x=ee)}return y}};function eI(E){return E.length===0?[0,0]:[xm(eV(E,function(a){return xm(a)||0})),Sm(tV(E,function(a){return Sm(a)||0}))]}function tI(E){for(var a=g0(E),y=a[0].length,x=(0,Bt.CR)([Array(y).fill(0),Array(y).fill(0)],2),b=x[0],z=x[1],ee=0;ee=0?(re[ae]+=b[ae],b[ae]=re[ae]):(re[ae]+=z[ae],z[ae]=re[ae]);return a}var nV=function(E){(0,Bt.ZT)(a,E);function a(y){return E.call(this,y,{type:"line",x:0,y:0,width:200,height:20,isStack:!1,color:["#83daad","#edbf45","#d2cef9","#e290b3","#6f63f4"],smooth:!0,lineLineWidth:1,areaOpacity:0,isGroup:!1,columnLineWidth:1,columnStroke:"#fff",scale:1,spacing:0})||this}return Object.defineProperty(a.prototype,"rawData",{get:function(){var y=this.attributes.data;if(!y||(y==null?void 0:y.length)===0)return[[]];var x=g0(y);return Wi(x[0])?[x]:x},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"data",{get:function(){return this.attributes.isStack?tI(this.rawData):this.rawData},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"scales",{get:function(){return this.createScales(this.data)},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"baseline",{get:function(){var y=this.scales.y,x=(0,Bt.CR)(y.getOptions().domain||[0,0],2),b=x[0],z=x[1];return z<0?y.map(z):y.map(b<0?0:b)},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"containerShape",{get:function(){var y=this.attributes,x=y.width,b=y.height;return{width:x,height:b}},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"linesStyle",{get:function(){var y=this,x=this.attributes,b=x.type,z=x.isStack,ee=x.smooth;if(b!=="line")throw new Error("linesStyle can only be used in line type");var re=ts(this.attributes,"area"),ae=ts(this.attributes,"line"),se=this.containerShape.width,fe=this.data;if(fe[0].length===0)return{lines:[],areas:[]};var me=this.scales,Ee=me.x,Oe=me.y,ke=XH(fe,{type:"line",x:Ee,y:Oe}),We=[];if(re){var je=this.baseline;z?We=ee?$H(ke,se,je):qH(ke,se,je):We=JH(ke,ee,se,je)}return{lines:ke.map(function(Ke,Ze){return(0,Bt.pi)({stroke:y.getColor(Ze),d:ee?v1(Ke):qv(Ke)},ae)}),areas:We.map(function(Ke,Ze){return(0,Bt.pi)({d:Ke,fill:y.getColor(Ze)},re)})}},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"columnsStyle",{get:function(){var y=this,x=ts(this.attributes,"column"),b=this.attributes,z=b.isStack,ee=b.type,re=b.scale;if(ee!=="column")throw new Error("columnsStyle can only be used in column type");var ae=this.containerShape.height,se=this.rawData;if(!se)return{columns:[]};z&&(se=tI(se));var fe=this.createScales(se),me=fe.x,Ee=fe.y,Oe=(0,Bt.CR)(eI(se),2),ke=Oe[0],We=Oe[1],je=new Jv({domain:[0,We-(ke>0?0:ke)],range:[0,ae*re]}),Ke=me.getBandWidth(),Ze=this.rawData;return{columns:se.map(function(Je,tt){return Je.map(function(st,gt){var mt=Ke/se.length,ct=function(){return{x:me.map(gt)+mt*tt,y:st>=0?Ee.map(st):Ee.map(0),width:mt,height:je.map(Math.abs(st))}},Lt=function(){return{x:me.map(gt),y:Ee.map(st),width:Ke,height:je.map(Ze[tt][gt])}};return(0,Bt.pi)((0,Bt.pi)({fill:y.getColor(tt)},x),z?Lt():ct())})})}},enumerable:!1,configurable:!0}),a.prototype.render=function(y,x){oj(x,".container","rect").attr("className","container").node();var b=y.type,z=y.x,ee=y.y,re="spark".concat(b),ae=(0,Bt.pi)({x:z,y:ee},b==="line"?this.linesStyle:this.columnsStyle);eo(x).selectAll(".spark").data([b]).join(function(se){return se.append(function(fe){return fe==="line"?new ZH({className:re,style:ae}):new KH({className:re,style:ae})}).attr("className","spark ".concat(re))},function(se){return se.update(ae)},function(se){return se.remove()})},a.prototype.getColor=function(y){var x=this.attributes.color;return Cc(x)?x[y%x.length]:$i(x)?x.call(null,y):x},a.prototype.createScales=function(y){var x,b,z=this.attributes,ee=z.type,re=z.scale,ae=z.range,se=ae===void 0?[]:ae,fe=z.spacing,me=this.containerShape,Ee=me.width,Oe=me.height,ke=(0,Bt.CR)(eI(y),2),We=ke[0],je=ke[1],Ke=new Jv({domain:[(x=se[0])!==null&&x!==void 0?x:We,(b=se[1])!==null&&b!==void 0?b:je],range:[Oe,Oe*(1-re)]});return ee==="line"?{type:ee,x:new Jv({domain:[0,y[0].length-1],range:[0,Ee]}),y:Ke}:{type:ee,x:new ES({domain:y[0].map(function(Ze,Je){return Je}),range:[0,Ee],paddingInner:fe,paddingOuter:fe/2,align:.5}),y:Ke}},a.tag="sparkline",a}(kl),nI={fill:"#fff",lineWidth:1,radius:2,size:10,stroke:"#bfbfbf",strokeOpacity:1,zIndex:0},rI={fill:"#000",fillOpacity:.45,fontSize:12,textAlign:"center",textBaseline:"middle",zIndex:1},aI={x:0,y:0,orientation:"horizontal",showLabel:!0,type:"start"},bf=Wd({foreground:"foreground",handle:"handle",selection:"selection",sparkline:"sparkline",sparklineGroup:"sparkline-group",track:"track",brushArea:"brush-area"},"slider"),Ad=Wd({labelGroup:"label-group",label:"label",iconGroup:"icon-group",icon:"icon",iconRect:"icon-rect",iconLine:"icon-line"},"handle"),rV=function(E){(0,Bt.ZT)(a,E);function a(){return E!==null&&E.apply(this,arguments)||this}return a.prototype.render=function(y,x){var b=y.x,z=y.y,ee=y.size,re=ee===void 0?10:ee,ae=y.radius,se=ae===void 0?re/4:ae,fe=y.orientation,me=y.classNamePrefix,Ee=(0,Bt._T)(y,["x","y","size","radius","orientation","classNamePrefix"]),Oe=re,ke=Oe*2.4,We=me?"".concat(Ad.iconRect.name," ").concat(me,"handle-icon-rect"):Ad.iconRect.name,je=function(gt){return me?"".concat(Ad.iconLine,"-").concat(gt," ").concat(me,"handle-icon-line"):"".concat(Ad.iconLine,"-").concat(gt)},Ke=eo(x).maybeAppendByClassName(Ad.iconRect,"rect").attr("className",We).styles((0,Bt.pi)((0,Bt.pi)({},Ee),{width:Oe,height:ke,radius:se,x:b-Oe/2,y:z-ke/2,transformOrigin:"center"})),Ze=b+1/3*Oe-Oe/2,Je=b+2/3*Oe-Oe/2,tt=z+1/4*ke-ke/2,st=z+3/4*ke-ke/2;Ke.maybeAppendByClassName("".concat(Ad.iconLine,"-1"),"line").attr("className",je(1)).styles((0,Bt.pi)({x1:Ze,x2:Ze,y1:tt,y2:st},Ee)),Ke.maybeAppendByClassName("".concat(Ad.iconLine,"-2"),"line").attr("className",je(2)).styles((0,Bt.pi)({x1:Je,x2:Je,y1:tt,y2:st},Ee)),fe==="vertical"&&(Ke.node().style.transform="rotate(90)")},a}(kl),aV=function(E){(0,Bt.ZT)(a,E);function a(y){return E.call(this,y,aI)||this}return a.prototype.renderLabel=function(y){var x=this,b=this.attributes,z=b.x,ee=b.y,re=b.showLabel,ae=ts(this.attributes,"label"),se=ae.x,fe=se===void 0?0:se,me=ae.y,Ee=me===void 0?0:me,Oe=ae.transform,ke=ae.transformOrigin,We=(0,Bt._T)(ae,["x","y","transform","transformOrigin"]),je=(0,Bt.CR)(Uf(We,[]),2),Ke=je[0],Ze=je[1],Je=eo(y).maybeAppendByClassName(Ad.labelGroup,"g").styles(Ze),tt=(0,Bt.pi)((0,Bt.pi)({},rI),Ke),st=tt.text,gt=(0,Bt._T)(tt,["text"]);Lc(!!re,Je,function(mt){x.label=mt.maybeAppendByClassName(Ad.label,"text").styles((0,Bt.pi)((0,Bt.pi)({},gt),{x:z+fe,y:ee+Ee,transform:Oe,transformOrigin:ke,text:"".concat(st)})),x.label.on("mousedown",function(ct){ct.stopPropagation()}),x.label.on("touchstart",function(ct){ct.stopPropagation()})})},a.prototype.renderIcon=function(y){var x=this.attributes,b=x.x,z=x.y,ee=x.orientation,re=x.type,ae=x.classNamePrefix,se=(0,Bt.pi)((0,Bt.pi)({x:b,y:z,orientation:ee,classNamePrefix:ae},nI),ts(this.attributes,"icon")),fe=this.attributes.iconShape,me=fe===void 0?function(){return new rV({style:se})}:fe,Ee=eo(y).maybeAppendByClassName(Ad.iconGroup,"g");Ee.selectAll(Ad.icon.class).data([me]).join(function(Oe){return Oe.append(typeof me=="string"?me:function(){return me(re)}).attr("className",Ad.icon.name)},function(Oe){return Oe.update(se)},function(Oe){return Oe.remove()})},a.prototype.render=function(y,x){this.renderIcon(x),this.renderLabel(x)},a}(kl),iV=function(E){(0,Bt.ZT)(a,E);function a(y){var x=E.call(this,y,(0,Bt.pi)((0,Bt.pi)((0,Bt.pi)({x:0,y:0,animate:{duration:100,fill:"both"},brushable:!0,formatter:function(b){return b.toString()},handleSpacing:2,orientation:"horizontal",padding:0,autoFitLabel:!0,scrollable:!0,selectionFill:"#5B8FF9",selectionFillOpacity:.45,selectionZIndex:2,showHandle:!0,showLabel:!0,slidable:!0,trackFill:"#416180",trackLength:200,trackOpacity:.05,trackSize:20,trackZIndex:-1,values:[0,1],type:"range",selectionType:"select",handleIconOffset:0},M0(aI,"handle")),M0(nI,"handleIcon")),M0(rI,"handleLabel")))||this;return x.range=[0,1],x.onDragStart=function(b){return function(z){z.stopPropagation(),x.target=b,x.prevPos=x.getOrientVal(HD(z));var ee=x.availableSpace,re=ee.x,ae=ee.y,se=x.getBBox(),fe=se.x,me=se.y;x.selectionStartPos=x.getRatio(x.prevPos-x.getOrientVal([re,ae])-x.getOrientVal([+fe,+me])),x.selectionWidth=0,document.addEventListener("pointermove",x.onDragging),document.addEventListener("pointerup",x.onDragEnd)}},x.onDragging=function(b){var z=x.attributes,ee=z.slidable,re=z.brushable,ae=z.type;b.stopPropagation();var se=x.getOrientVal(HD(b)),fe=se-x.prevPos;if(fe){var me=x.getRatio(fe);switch(x.target){case"start":ee&&x.setValuesOffset(me);break;case"end":ee&&x.setValuesOffset(0,me);break;case"selection":ee&&x.setValuesOffset(me,me);break;case"track":if(!re)return;x.selectionWidth+=me,ae==="range"?x.innerSetValues([x.selectionStartPos,x.selectionStartPos+x.selectionWidth].sort(),!0):x.innerSetValues([0,x.selectionStartPos+x.selectionWidth],!0);break;default:break}x.prevPos=se}},x.onDragEnd=function(){document.removeEventListener("pointermove",x.onDragging),document.removeEventListener("pointermove",x.onDragging),document.removeEventListener("pointerup",x.onDragEnd),x.target="",x.updateHandlesPosition(!1)},x.onValueChange=function(b){var z=x.attributes,ee=z.onChange,re=z.type,ae=re==="range"?b:b[1],se=re==="range"?x.getValues():x.getValues()[1],fe=new du("valuechange",{detail:{oldValue:ae,value:se}});x.dispatchEvent(fe),ee==null||ee(se)},x.selectionStartPos=0,x.selectionWidth=0,x.prevPos=0,x.target="",x}return Object.defineProperty(a.prototype,"values",{get:function(){return this.attributes.values},set:function(y){this.attributes.values=this.clampValues(y)},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"sparklineStyle",{get:function(){var y=this.attributes.orientation;if(y!=="horizontal")return null;var x=ts(this.attributes,"sparkline");return(0,Bt.pi)((0,Bt.pi)({zIndex:0},this.availableSpace),x)},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"shape",{get:function(){var y=this.attributes,x=y.trackLength,b=y.trackSize,z=(0,Bt.CR)(this.getOrientVal([[x,b],[b,x]]),2),ee=z[0],re=z[1];return{width:ee,height:re}},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"availableSpace",{get:function(){var y=this.attributes,x=y.x,b=y.y,z=y.padding,ee=(0,Bt.CR)(Hu(z),4),re=ee[0],ae=ee[1],se=ee[2],fe=ee[3],me=this.shape,Ee=me.width,Oe=me.height;return{x:fe,y:re,width:Ee-(fe+ae),height:Oe-(re+se)}},enumerable:!1,configurable:!0}),a.prototype.getValues=function(){return this.values},a.prototype.setValues=function(y,x){y===void 0&&(y=[0,0]),x===void 0&&(x=!1),this.attributes.values=y;var b=x===!1?!1:this.attributes.animate;this.updateSelectionArea(b),this.updateHandlesPosition(b)},a.prototype.updateSelectionArea=function(y){var x=this.calcSelectionArea();this.foregroundGroup.selectAll(bf.selection.class).each(function(b,z){jd(this,x[z],y)})},a.prototype.updateHandlesPosition=function(y){this.attributes.showHandle&&(this.startHandle&&jd(this.startHandle,this.getHandleStyle("start"),y),this.endHandle&&jd(this.endHandle,this.getHandleStyle("end"),y))},a.prototype.innerSetValues=function(y,x){y===void 0&&(y=[0,0]),x===void 0&&(x=!1);var b=this.values,z=this.clampValues(y);this.attributes.values=z,this.setValues(z),x&&this.onValueChange(b)},a.prototype.renderTrack=function(y){var x=this.attributes,b=x.x,z=x.y,ee=ts(this.attributes,"track");this.trackShape=eo(y).maybeAppendByClassName(bf.track,"rect").styles((0,Bt.pi)((0,Bt.pi)({x:b,y:z},this.shape),ee))},a.prototype.renderBrushArea=function(y){var x=this.attributes,b=x.x,z=x.y,ee=x.brushable;this.brushArea=eo(y).maybeAppendByClassName(bf.brushArea,"rect").styles((0,Bt.pi)({x:b,y:z,fill:"transparent",cursor:ee?"crosshair":"default"},this.shape))},a.prototype.renderSparkline=function(y){var x=this,b=this.attributes,z=b.x,ee=b.y,re=b.orientation,ae=eo(y).maybeAppendByClassName(bf.sparklineGroup,"g");Lc(re==="horizontal",ae,function(se){var fe=(0,Bt.pi)((0,Bt.pi)({},x.sparklineStyle),{x:z,y:ee});se.maybeAppendByClassName(bf.sparkline,function(){return new nV({style:fe})}).update(fe)})},a.prototype.renderHandles=function(){var y=this,x,b=this.attributes,z=b.showHandle,ee=b.type,re=ee==="range"?["start","end"]:["end"],ae=z?re:[],se=this;(x=this.foregroundGroup)===null||x===void 0||x.selectAll(bf.handle.class).data(ae.map(function(fe){return{type:fe}}),function(fe){return fe.type}).join(function(fe){return fe.append(function(me){var Ee=me.type;return new aV({style:y.getHandleStyle(Ee)})}).each(function(me){var Ee=me.type;this.attr("class","".concat(bf.handle.name," ").concat(Ee,"-handle"));var Oe="".concat(Ee,"Handle");se[Oe]=this,this.addEventListener("pointerdown",se.onDragStart(Ee))})},function(fe){return fe.each(function(me){var Ee=me.type;this.update(se.getHandleStyle(Ee))})},function(fe){return fe.each(function(me){var Ee=me.type,Oe="".concat(Ee,"Handle");se[Oe]=void 0}).remove()})},a.prototype.renderSelection=function(y){var x=this.attributes,b=x.x,z=x.y,ee=x.type,re=x.selectionType;this.foregroundGroup=eo(y).maybeAppendByClassName(bf.foreground,"g");var ae=ts(this.attributes,"selection"),se=function(me){return me.style("visibility",function(Ee){return Ee.show?"visible":"hidden"}).style("cursor",function(Ee){return re==="select"?"grab":re==="invert"?"crosshair":"default"}).styles((0,Bt.pi)((0,Bt.pi)({},ae),{transform:"translate(".concat(b,", ").concat(z,")")}))},fe=this;this.foregroundGroup.selectAll(bf.selection.class).data(ee==="value"?[]:this.calcSelectionArea().map(function(me,Ee){return{style:(0,Bt.pi)({},me),index:Ee,show:re==="select"?Ee===1:Ee!==1}}),function(me){return me.index}).join(function(me){return me.append("rect").attr("className",bf.selection.name).call(se).each(function(Ee,Oe){var ke=this;Oe===1?(fe.selectionShape=eo(this),this.on("pointerdown",function(We){ke.attr("cursor","grabbing"),fe.onDragStart("selection")(We)}),fe.dispatchCustomEvent(this,"pointerenter","selectionMouseenter"),fe.dispatchCustomEvent(this,"pointerleave","selectionMouseleave"),fe.dispatchCustomEvent(this,"click","selectionClick"),this.addEventListener("pointerdown",function(){ke.attr("cursor","grabbing")}),this.addEventListener("pointerup",function(){ke.attr("cursor","pointer")}),this.addEventListener("pointerover",function(){ke.attr("cursor","pointer")})):this.on("pointerdown",fe.onDragStart("track"))})},function(me){return me.call(se)},function(me){return me.remove()}),this.updateSelectionArea(!1),this.renderHandles()},a.prototype.render=function(y,x){this.renderTrack(x),this.renderSparkline(x),this.renderBrushArea(x),this.renderSelection(x)},a.prototype.clampValues=function(y,x){var b;x===void 0&&(x=4);var z=(0,Bt.CR)(this.range,2),ee=z[0],re=z[1],ae=(0,Bt.CR)(this.getValues().map(function(je){return cS(je,x)}),2),se=ae[0],fe=ae[1],me=Array.isArray(y)?y:[se,y!=null?y:fe],Ee=(0,Bt.CR)((me||[se,fe]).map(function(je){return cS(je,x)}),2),Oe=Ee[0],ke=Ee[1];if(this.attributes.type==="value")return[0,Nl(ke,ee,re)];Oe>ke&&(b=(0,Bt.CR)([ke,Oe],2),Oe=b[0],ke=b[1]);var We=ke-Oe;return We>re-ee?[ee,re]:Oere?fe===re&&se===Oe?[Oe,re]:[re-We,re]:[Oe,ke]},a.prototype.calcSelectionArea=function(y){var x=(0,Bt.CR)(this.clampValues(y),2),b=x[0],z=x[1],ee=this.availableSpace,re=ee.x,ae=ee.y,se=ee.width,fe=ee.height;return this.getOrientVal([[{y:ae,height:fe,x:re,width:b*se},{y:ae,height:fe,x:b*se+re,width:(z-b)*se},{y:ae,height:fe,x:z*se,width:(1-z)*se}],[{x:re,width:se,y:ae,height:b*fe},{x:re,width:se,y:b*fe+ae,height:(z-b)*fe},{x:re,width:se,y:z*fe,height:(1-z)*fe}]])},a.prototype.calcHandlePosition=function(y){var x=this.attributes.handleIconOffset,b=this.availableSpace,z=b.x,ee=b.y,re=b.width,ae=b.height,se=(0,Bt.CR)(this.clampValues(),2),fe=se[0],me=se[1],Ee=y==="start"?-x:x,Oe=(y==="start"?fe:me)*this.getOrientVal([re,ae])+Ee;return{x:z+this.getOrientVal([Oe,re/2]),y:ee+this.getOrientVal([ae/2,Oe])}},a.prototype.inferTextStyle=function(y){var x=this.attributes.orientation;return x==="horizontal"?{}:y==="start"?{transformOrigin:"left center",transform:"rotate(90)",textAlign:"start"}:y==="end"?{transformOrigin:"right center",transform:"rotate(90)",textAlign:"end"}:{}},a.prototype.calcHandleText=function(y){var x,b=this.attributes,z=b.type,ee=b.orientation,re=b.formatter,ae=b.autoFitLabel,se=ts(this.attributes,"handle"),fe=ts(se,"label"),me=se.spacing,Ee=this.getHandleSize(),Oe=this.clampValues(),ke=y==="start"?Oe[0]:Oe[1],We=re(ke),je=new Gx({style:(0,Bt.pi)((0,Bt.pi)((0,Bt.pi)({},fe),this.inferTextStyle(y)),{text:We})}),Ke=je.getBBox(),Ze=Ke.width,Je=Ke.height;if(je.destroy(),!ae){if(z==="value")return{text:We,x:0,y:-Je-me};var tt=me+Ee+(ee==="horizontal"?Ze/2:0);return x={text:We},x[ee==="horizontal"?"x":"y"]=y==="start"?-tt:tt,x}var st=0,gt=0,mt=this.availableSpace,ct=mt.width,Lt=mt.height,_t=this.calcSelectionArea()[1],Yt=_t.x,$t=_t.y,En=_t.width,on=_t.height,Fn=me+Ee;if(ee==="horizontal"){var tr=Fn+Ze/2;if(y==="start"){var Cn=Yt-Fn-Ze;st=Cn>0?-tr:tr}else{var xn=ct-Yt-En-Fn>Ze;st=xn?tr:-tr}}else{var Ln=Fn,nr=Je+Fn;y==="start"?gt=$t-Ee>Je?-nr:Ln:gt=Lt-($t+on)-Ee>Je?nr:-Ln}return{x:st,y:gt,text:We}},a.prototype.getHandleLabelStyle=function(y){var x=ts(this.attributes,"handleLabel");return(0,Bt.pi)((0,Bt.pi)((0,Bt.pi)({},x),this.calcHandleText(y)),this.inferTextStyle(y))},a.prototype.getHandleIconStyle=function(){var y=this.attributes.handleIconShape,x=ts(this.attributes,"handleIcon"),b=this.getOrientVal(["ew-resize","ns-resize"]),z=this.getHandleSize();return(0,Bt.pi)({cursor:b,shape:y,size:z},x)},a.prototype.getHandleStyle=function(y){var x=this.attributes,b=x.x,z=x.y,ee=x.showLabel,re=x.showLabelOnInteraction,ae=x.orientation,se=this.calcHandlePosition(y),fe=se.x,me=se.y,Ee=this.calcHandleText(y),Oe=ee;return!ee&&re&&(this.target?Oe=!0:Oe=!1),(0,Bt.pi)((0,Bt.pi)((0,Bt.pi)({},M0(this.getHandleIconStyle(),"icon")),M0((0,Bt.pi)((0,Bt.pi)({},this.getHandleLabelStyle(y)),Ee),"label")),{transform:"translate(".concat(fe+b,", ").concat(me+z,")"),orientation:ae,showLabel:Oe,type:y,zIndex:3})},a.prototype.getHandleSize=function(){var y=this.attributes,x=y.handleIconSize,b=y.width,z=y.height;return x||Math.floor((this.getOrientVal([+z,+b])+4)/2.4)},a.prototype.getOrientVal=function(y){var x=(0,Bt.CR)(y,2),b=x[0],z=x[1],ee=this.attributes.orientation;return ee==="horizontal"?b:z},a.prototype.setValuesOffset=function(y,x){x===void 0&&(x=0);var b=this.attributes.type,z=(0,Bt.CR)(this.getValues(),2),ee=z[0],re=z[1],ae=b==="range"?y:0,se=[ee+ae,re+x].sort();this.innerSetValues(se,!0)},a.prototype.getRatio=function(y){var x=this.availableSpace,b=x.width,z=x.height;return y/this.getOrientVal([b,z])},a.prototype.dispatchCustomEvent=function(y,x,b){var z=this;y.on(x,function(ee){ee.stopPropagation(),z.dispatchEvent(new du(b,{detail:ee}))})},a.prototype.bindEvents=function(){this.addEventListener("wheel",this.onScroll);var y=this.brushArea;this.dispatchCustomEvent(y,"click","trackClick"),this.dispatchCustomEvent(y,"pointerenter","trackMouseenter"),this.dispatchCustomEvent(y,"pointerleave","trackMouseleave"),y.on("pointerdown",this.onDragStart("track"))},a.prototype.onScroll=function(y){var x=this.attributes.scrollable;if(x){var b=y.deltaX,z=y.deltaY,ee=z||b,re=this.getRatio(ee);this.setValuesOffset(re,re)}},a.tag="slider",a}(kl),oV={backgroundFill:"#262626",backgroundLineCap:"round",backgroundLineWidth:1,backgroundStroke:"#333",backgroundZIndex:-1,formatter:function(E){return E.toString()},labelFill:"#fff",labelFontSize:12,labelTextBaseline:"middle",padding:[2,4],position:"right",radius:0,zIndex:999},xS=Wd({background:"background",labelGroup:"label-group",label:"label"},"indicator"),sV=function(E){(0,Bt.ZT)(a,E);function a(y){var x=E.call(this,y,oV)||this;return x.point=[0,0],x.group=x.appendChild(new Eu({})),x.isMutationObserved=!0,x}return a.prototype.renderBackground=function(){if(this.label){var y=this.attributes,x=y.position,b=y.padding,z=(0,Bt.CR)(Hu(b),4),ee=z[0],re=z[1],ae=z[2],se=z[3],fe=this.label.node().getLocalBounds(),me=fe.min,Ee=fe.max,Oe=new tc(me[0]-se,me[1]-ee,Ee[0]+re-me[0]+se,Ee[1]+ae-me[1]+ee),ke=this.getPath(x,Oe),We=ts(this.attributes,"background");this.background=eo(this.group).maybeAppendByClassName(xS.background,"path").styles((0,Bt.pi)((0,Bt.pi)({},We),{d:ke})),this.group.appendChild(this.label.node())}},a.prototype.renderLabel=function(){var y=this.attributes,x=y.formatter,b=y.labelText,z=ts(this.attributes,"label"),ee=(0,Bt.CR)(Uf(z),2),re=ee[0],ae=ee[1],se=re.text,fe=(0,Bt._T)(re,["text"]);if(this.label=eo(this.group).maybeAppendByClassName(xS.labelGroup,"g").styles(ae),!!b){var me=this.label.maybeAppendByClassName(xS.label,function(){return Wf(x(b))}).style("text",x(b).toString());me.selectAll("text").styles(fe)}},a.prototype.adjustLayout=function(){var y=(0,Bt.CR)(this.point,2),x=y[0],b=y[1],z=this.attributes,ee=z.x,re=z.y;this.group.attr("transform","translate(".concat(ee-x,", ").concat(re-b,")"))},a.prototype.getPath=function(y,x){var b=this.attributes.radius,z=x.x,ee=x.y,re=x.width,ae=x.height,se=[["M",z+b,ee],["L",z+re-b,ee],["A",b,b,0,0,1,z+re,ee+b],["L",z+re,ee+ae-b],["A",b,b,0,0,1,z+re-b,ee+ae],["L",z+b,ee+ae],["A",b,b,0,0,1,z,ee+ae-b],["L",z,ee+b],["A",b,b,0,0,1,z+b,ee],["Z"]],fe={top:4,right:6,bottom:0,left:2},me=fe[y],Ee=this.createCorner([se[me].slice(-2),se[me+1].slice(-2)]);return se.splice.apply(se,(0,Bt.ev)([me+1,1],(0,Bt.CR)(Ee),!1)),se[0][0]="M",se},a.prototype.createCorner=function(y,x){x===void 0&&(x=10);var b=.8,z=jj.apply(void 0,(0,Bt.ev)([],(0,Bt.CR)(y),!1)),ee=(0,Bt.CR)(y,2),re=(0,Bt.CR)(ee[0],2),ae=re[0],se=re[1],fe=(0,Bt.CR)(ee[1],2),me=fe[0],Ee=fe[1],Oe=(0,Bt.CR)(z?[me-ae,[ae,me]]:[Ee-se,[se,Ee]],2),ke=Oe[0],We=(0,Bt.CR)(Oe[1],2),je=We[0],Ke=We[1],Ze=ke/2,Je=ke/Math.abs(ke),tt=x*Je,st=tt/2,gt=tt*Math.sqrt(3)/2*b,mt=(0,Bt.CR)([je,je+Ze-st,je+Ze,je+Ze+st,Ke],5),ct=mt[0],Lt=mt[1],_t=mt[2],Yt=mt[3],$t=mt[4];return z?(this.point=[_t,se-gt],[["L",ct,se],["L",Lt,se],["L",_t,se-gt],["L",Yt,se],["L",$t,se]]):(this.point=[ae+gt,_t],[["L",ae,ct],["L",ae,Lt],["L",ae+gt,_t],["L",ae,Yt],["L",ae,$t]])},a.prototype.applyVisibility=function(){var y=this.attributes.visibility;y==="hidden"?Ud(this):Vv(this)},a.prototype.bindEvents=function(){this.label.on(Es.BOUNDS_CHANGED,this.renderBackground)},a.prototype.render=function(){this.renderLabel(),this.renderBackground(),this.adjustLayout(),this.applyVisibility()},a}(kl),lV=function(E){(0,Bt.ZT)(a,E);function a(y){var x=E.call(this,hu({},a.defaultOptions,y))||this;return x.hoverColor="#f5f5f5",x.selectedColor="#e6f7ff",x.background=x.appendChild(new zu({})),x.label=x.background.appendChild(new Eu({})),x}return Object.defineProperty(a.prototype,"padding",{get:function(){return Hu(this.style.padding)},enumerable:!1,configurable:!0}),a.prototype.renderLabel=function(){var y=this.style,x=y.label,b=y.value,z=ts(this.attributes,"label");eo(this.label).maybeAppend(".label",function(){return Wf(x)}).attr("className","label").styles(z),this.label.attr("__data__",b)},a.prototype.renderBackground=function(){var y=this.label.getBBox(),x=(0,Bt.CR)(this.padding,4),b=x[0],z=x[1],ee=x[2],re=x[3],ae=y.width,se=y.height,fe=ae+re+z,me=se+b+ee,Ee=ts(this.attributes,"background"),Oe=this.style,ke=Oe.width,We=ke===void 0?0:ke,je=Oe.height,Ke=je===void 0?0:je,Ze=Oe.selected;this.background.attr((0,Bt.pi)((0,Bt.pi)({},Ee),{width:Math.max(fe,We),height:Math.max(me,Ke),fill:Ze?this.selectedColor:"#fff"})),this.label.attr({transform:"translate(".concat(re,", ").concat((me-se)/2,")")})},a.prototype.render=function(){this.renderLabel(),this.renderBackground()},a.prototype.bindEvents=function(){var y=this;this.addEventListener("pointerenter",function(){y.style.selected||y.background.attr("fill",y.hoverColor)}),this.addEventListener("pointerleave",function(){y.style.selected||y.background.attr("fill",y.style.backgroundFill)});var x=this;this.addEventListener("click",function(){var b=y.style,z=b.label,ee=b.value,re=b.onClick;re==null||re(ee,{label:z,value:ee},x)})},a.defaultOptions={style:{value:"",label:"",cursor:"pointer"}},a}(kl),uV=function(E){(0,Bt.ZT)(a,E);function a(y){var x,b,z=E.call(this,hu({},a.defaultOptions,y))||this;z.currentValue=(x=a.defaultOptions.style)===null||x===void 0?void 0:x.defaultValue,z.isPointerInSelect=!1,z.select=z.appendChild(new zu({className:"select",style:{cursor:"pointer",width:0,height:0}})),z.dropdown=z.appendChild(new zu({className:"dropdown"}));var ee=z.style.defaultValue;return ee&&(!((b=z.style.options)===null||b===void 0)&&b.some(function(re){return re.value===ee}))&&(z.currentValue=ee),z}return a.prototype.setValue=function(y){this.currentValue=y,this.render()},a.prototype.getValue=function(){return this.currentValue},Object.defineProperty(a.prototype,"dropdownPadding",{get:function(){return Hu(this.style.dropdownPadding)},enumerable:!1,configurable:!0}),a.prototype.renderSelect=function(){var y=this,x,b=this.style,z=b.x,ee=b.y,re=b.width,ae=b.height,se=b.bordered,fe=b.showDropdownIcon,me=ts(this.attributes,"select"),Ee=ts(this.attributes,"placeholder");this.select.attr((0,Bt.pi)((0,Bt.pi)({x:z,y:ee,width:re,height:ae},me),{fill:"#fff",strokeWidth:se?1:0}));var Oe=this.dropdownPadding,ke=10;fe&&eo(this.select).maybeAppend(".dropdown-icon","path").style("d","M-5,-3.5 L0,3.5 L5,-3.5").style("transform","translate(".concat(z+re-ke-Oe[1]-Oe[3],", ").concat(ee+ae/2,")")).style("lineWidth",1).style("stroke",this.select.style.stroke);var We=(x=this.style.options)===null||x===void 0?void 0:x.find(function(Je){return Je.value===y.currentValue}),je=(0,Bt.pi)({x:z+Oe[3]},Ee);eo(this.select).selectAll(".placeholder").data(We?[]:[1]).join(function(Je){return Je.append("text").attr("className","placeholder").styles(je).style("y",function(){var tt=this.getBBox();return ee+(ae-tt.height)/2})},function(Je){return Je.styles(je)},function(Je){return Je.remove()});var Ke=ts(this.attributes,"optionLabel"),Ze=(0,Bt.pi)({x:z+Oe[3]},Ke);eo(this.select).selectAll(".value").data(We?[We]:[]).join(function(Je){return Je.append(function(tt){return Wf(tt.label)}).attr("className","value").styles(Ze).style("y",function(){var tt=this.getBBox();return ee+(ae-tt.height)/2})},function(Je){return Je.styles(Ze)},function(Je){return Je.remove()})},a.prototype.renderDropdown=function(){var y=this,x,b,z=this.style,ee=z.x,re=z.y,ae=z.width,se=z.height,fe=z.options,me=z.onSelect,Ee=z.open,Oe=ts(this.attributes,"dropdown"),ke=ts(this.attributes,"option"),We=this.dropdownPadding;eo(this.dropdown).maybeAppend(".dropdown-container","g").attr("className","dropdown-container").selectAll(".dropdown-item").data(fe,function(Ze){return Ze.value}).join(function(Ze){return Ze.append(function(Je){return new lV({className:"dropdown-item",style:(0,Bt.pi)((0,Bt.pi)((0,Bt.pi)({},Je),ke),{width:ae-We[1]-We[3],selected:Je.value===y.currentValue,onClick:function(tt,st,gt){y.setValue(tt),me==null||me(tt,st,gt),y.dispatchEvent(new du("change",{detail:{value:tt,option:st,item:gt}})),Ud(y.dropdown)}})})}).each(function(Je,tt){var st,gt=(st=this.parentNode)===null||st===void 0?void 0:st.children,mt=gt.reduce(function(ct,Lt,_t){return _tz.time?1:0};return y.sort(x)},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"space",{get:function(){var y=this.attributes,x=y.x,b=y.y,z=y.width,ee=y.height,re=y.type,ae=y.controllerHeight,se=Nl(+ee-ae,0,+ee),fe=new tc(x,b+ +ee-ae,+z,ae),me,Ee=0;re==="chart"?(Ee=35,me=new tc(x,b+se-Ee,+z,Ee)):me=new tc;var Oe=re==="time"?10:se,ke=new tc(x,b+(re==="time"?se:se-Oe),+z,Oe-Ee);return{axisBBox:me,controllerBBox:fe,timelineBBox:ke}},enumerable:!1,configurable:!0}),a.prototype.setBySliderValues=function(y){var x,b,z=this.data,ee=(0,Bt.CR)(Array.isArray(y)?y:[0,y],2),re=ee[0],ae=ee[1],se=z.length,fe=z[Math.floor(re*se)],me=z[Math.ceil(ae*se)-(Array.isArray(y)?0:1)];this.states.values=[(x=fe==null?void 0:fe.time)!==null&&x!==void 0?x:z[0].time,(b=me==null?void 0:me.time)!==null&&b!==void 0?b:1/0]},a.prototype.setByTimebarValues=function(y){var x,b,z,ee=this.data,re=(0,Bt.CR)(Array.isArray(y)?y:[void 0,y],2),ae=re[0],se=re[1],fe=ee.find(function(Ee){var Oe=Ee.time;return Oe===ae}),me=ee.find(function(Ee){var Oe=Ee.time;return Oe===se});this.states.values=[(x=fe==null?void 0:fe.time)!==null&&x!==void 0?x:(b=ee[0])===null||b===void 0?void 0:b.time,(z=me==null?void 0:me.time)!==null&&z!==void 0?z:1/0]},a.prototype.setByIndex=function(y){var x,b,z,ee,re=this.data,ae=(0,Bt.CR)(y,2),se=ae[0],fe=ae[1];this.states.values=[(b=(x=re[se])===null||x===void 0?void 0:x.time)!==null&&b!==void 0?b:re[0].time,(ee=(z=this.data[fe])===null||z===void 0?void 0:z.time)!==null&&ee!==void 0?ee:1/0]},Object.defineProperty(a.prototype,"sliderValues",{get:function(){var y=this.states,x=y.values,b=y.selectionType,z=(0,Bt.CR)(Array.isArray(x)?x:[void 0,x],2),ee=z[0],re=z[1],ae=this.data,se=ae.length,fe=b==="value",me=function(){var Oe=ae.findIndex(function(ke){var We=ke.time;return We===ee});return fe?0:Oe>-1?Oe/se:0},Ee=function(){if(re===1/0)return 1;var Oe=ae.findIndex(function(ke){var We=ke.time;return We===re});return Oe>-1?Oe/se:fe?.5:1};return[me(),Ee()]},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"values",{get:function(){var y=this.states,x=y.values,b=y.selectionType,z=(0,Bt.CR)(Array.isArray(x)?x:[this.data[0].time,x],2),ee=z[0],re=z[1];return b==="value"?re:[ee,re]},enumerable:!1,configurable:!0}),a.prototype.getDatumByRatio=function(y){var x=this.data,b=x.length,z=Math.floor(y*(b-1));return x[z]},Object.defineProperty(a.prototype,"chartHandleIconShape",{get:function(){var y=this.states.selectionType,x=this.space.timelineBBox.height;return y==="range"?function(b){return new bV({style:{type:b,height:x,iconSize:x/6}})}:function(){return new fg({style:{x1:0,y1:-x/2,x2:0,y2:x/2,lineWidth:2,stroke:"#c8c8c8"}})}},enumerable:!1,configurable:!0}),a.prototype.getChartStyle=function(y){var x=this,b=y.x,z=y.y,ee=y.width,re=y.height,ae=this.states,se=ae.selectionType,fe=ae.chartType,me=this.data,Ee=this.attributes,Oe=Ee.type,ke=Ee.labelFormatter,We=ts(this.attributes,"chart"),je=We.type,Ke=(0,Bt._T)(We,["type"]),Ze=se==="range";if(Oe==="time")return(0,Bt.pi)({handleIconShape:function(){return new SV({})},selectionFill:"#2e7ff8",selectionFillOpacity:1,showLabelOnInteraction:!0,handleLabelDy:Ze?-15:0,autoFitLabel:Ze,handleSpacing:Ze?-15:0,trackFill:"#edeeef",trackLength:ee,trackOpacity:.5,trackRadius:re/2,trackSize:re/2,type:se,values:this.sliderValues,formatter:function(st){if(ke)return ke(st);var gt=x.getDatumByRatio(st).time;return typeof gt=="number"?oI(gt):hc(gt,"YYYY-MM-DD HH:mm:ss")},transform:"translate(".concat(b,", ").concat(z,")"),zIndex:1},Ke);var Je=se==="range"?5:0,tt=me.map(function(st){var gt=st.value;return gt});return(0,Bt.pi)({handleIconOffset:Je,handleIconShape:this.chartHandleIconShape,selectionFill:"#fff",selectionFillOpacity:.5,selectionType:"invert",sparklineSpacing:.1,sparklineColumnLineWidth:0,sparklineColor:"#d4e5fd",sparklineAreaOpacity:1,sparklineAreaLineWidth:0,sparklineData:tt,sparklineType:fe,sparklineScale:.8,trackLength:ee,trackSize:re,type:se,values:this.sliderValues,transform:"translate(".concat(b,", ").concat(z,")"),zIndex:1},Ke)},a.prototype.renderChart=function(y){y===void 0&&(y=this.space.timelineBBox),this.timeline.update(this.getChartStyle(y))},a.prototype.updateSelection=function(){this.timeline.setValues(this.sliderValues,!0),this.handleSliderChange(this.sliderValues)},a.prototype.getAxisStyle=function(y){var x=this.data,b=this.attributes,z=b.interval,ee=b.labelFormatter,re=ts(this.attributes,"axis"),ae=y.x,se=y.y,fe=y.width,me=(0,Bt.ev)((0,Bt.ev)([],(0,Bt.CR)(x),!1),[{time:0}],!1).map(function(Oe,ke,We){var je=Oe.time;return{label:"".concat(je),value:ke/(We.length-1),time:je}}),Ee=(0,Bt.pi)({startPos:[ae,se],endPos:[ae+fe,se],data:me,labelFilter:function(Oe,ke){return kez?ae==="value"?[0,0]:se==="acc"?[mt(st),mt(st)]:[0,mt(gt-st)]:st<0?se==="acc"?[0,mt(gt)]:[mt(st+z-gt),z]:[mt(st),mt(gt)]},Ze=Ke(je);return this.setByIndex(Ze),this.updateSelection(),Ze},a.prototype.internalBackward=function(y){var x,b,z=this.moveSelection("backward",y);return y||((b=(x=this.attributes)===null||x===void 0?void 0:x.onBackward)===null||b===void 0||b.call(x),this.dispatchOnChange()),z},a.prototype.backward=function(){this.internalBackward()},a.prototype.internalPlay=function(y){var x=this,b,z,ee=this.data,re=this.attributes.loop,ae=this.states.speed,se=ae===void 0?1:ae;this.playInterval=window.setInterval(function(){var fe=x.internalForward();fe[1]===ee.length&&!re&&(x.internalPause(),x.renderController())},1e3/se),this.states.state="play",!y&&((z=(b=this.attributes)===null||b===void 0?void 0:b.onPlay)===null||z===void 0||z.call(b))},a.prototype.play=function(){this.internalPlay()},a.prototype.internalPause=function(y){var x,b;clearInterval(this.playInterval),this.states.state="pause",!y&&((b=(x=this.attributes)===null||x===void 0?void 0:x.onPause)===null||b===void 0||b.call(x))},a.prototype.pause=function(){this.internalPause()},a.prototype.internalForward=function(y){var x,b,z=this.moveSelection("forward",y);return y||((b=(x=this.attributes)===null||x===void 0?void 0:x.onForward)===null||b===void 0||b.call(x),this.dispatchOnChange()),z},a.prototype.forward=function(){this.internalForward()},a.prototype.handleSpeedChange=function(y){var x,b;this.states.speed=y;var z=this.states.state;z==="play"&&(this.internalPause(!0),this.internalPlay(!0)),(b=(x=this.attributes)===null||x===void 0?void 0:x.onSpeedChange)===null||b===void 0||b.call(x,y)},a.prototype.handleSelectionTypeChange=function(y){var x,b;this.states.selectionType=y,this.renderChart(),(b=(x=this.attributes)===null||x===void 0?void 0:x.onSelectionTypeChange)===null||b===void 0||b.call(x,y)},a.prototype.handleChartTypeChange=function(y){var x,b;this.states.chartType=y,this.renderChart(),(b=(x=this.attributes)===null||x===void 0?void 0:x.onChartTypeChange)===null||b===void 0||b.call(x,y)},a.prototype.render=function(){var y=this.space,x=y.axisBBox,b=y.controllerBBox,z=y.timelineBBox;this.renderController(b),this.renderAxis(x),this.renderChart(z),this.states.state==="play"&&this.internalPlay()},a.prototype.destroy=function(){E.prototype.destroy.call(this),this.internalPause(!0)},a.defaultOptions={style:{x:0,y:0,axisLabelFill:"#6e6e6e",axisLabelTextAlign:"left",axisLabelTextBaseline:"top",axisLabelTransform:"translate(5, -12)",axisLineLineWidth:1,axisLineStroke:"#cacdd1",axisTickLength:15,axisTickLineWidth:1,axisTickStroke:"#cacdd1",chartShowLabel:!1,chartType:"line",controllerAlign:"center",controllerHeight:40,data:[],interval:"day",loop:!1,playMode:"acc",selectionType:"range",type:"time"}},a}(kl);function MV(E){return E instanceof Date}var DV=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(fe){try{se(x.next(fe))}catch(me){ee(me)}}function ae(fe){try{se(x.throw(fe))}catch(me){ee(me)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})},IV=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b{var ke;const We=Object.assign(Object.assign({x:Ee[0]/2-ae/2,y:Oe,onChange:je=>{const Ke=(Cc(je)?je:[je,je]).map(Ze=>MV(Ze)?Ze.getTime():Ze);this.options.mode==="modify"?this.filterElements(Ke):this.hiddenElements(Ke),x==null||x(Ke)}},me),{data:z.map(je=>Wi(je)?{time:je,value:0}:je),width:ae,height:se,type:b});this.timebar?this.timebar.update(We):(this.timebar=new wV({style:We}),(ke=this.canvas)===null||ke===void 0||ke.appendChild(this.timebar))})}upsertCanvas(){if(this.canvas)return this.canvas;const{className:a,height:y,position:x}=this.options,b=this.context.canvas,[z]=b.getSize(),[ee,,re]=this.padding,[ae,se]=n1({width:z,height:y+ee+re,graphCanvas:b,className:"timebar",placement:x});return this.container=ae,a&&ae.classList.add(a),this.canvas=se,this.canvas}filterElements(a){return DV(this,void 0,void 0,function*(){var y;if(!this.originalData)return;const{elementTypes:x,getTime:b}=this.options,{graph:z,element:ee}=this.context,re=sI(this.originalData);x.forEach(se=>{const fe=`${se}s`;re[fe]=(this.originalData[fe]||[]).filter(me=>{const Ee=b(me);return!!lI(Ee,a)})});const ae=[...re.nodes,...re.combos].map(se=>Lr(se));re.edges=re.edges.filter(se=>{const fe=se.source,me=se.target;return ae.includes(fe)&&ae.includes(me)}),z.setData(re),yield(y=ee.draw({animation:!1,silence:!0}))===null||y===void 0?void 0:y.finished})}hiddenElements(a){const{graph:y}=this.context,{elementTypes:x,getTime:b}=this.options,z=[],ee=[];x.forEach(re=>{var ae;const se=`${re}s`;(((ae=this.originalData)===null||ae===void 0?void 0:ae[se])||[]).forEach(me=>{const Ee=Lr(me),Oe=b(me);lI(Oe,a)?ee.push(Ee):z.push(Ee)})}),y.hideElement(z,!1),y.showElement(ee,!1)}destroy(){var a,y,x;const{graph:b}=this.context;this.originalData&&b.setData(Object.assign({},this.originalData)),(a=this.timebar)===null||a===void 0||a.destroy(),(y=this.canvas)===null||y===void 0||y.destroy(),(x=this.container)===null||x===void 0||x.remove(),this.originalData=void 0,this.container=void 0,this.timebar=void 0,this.canvas=void 0,super.destroy()}}m1.defaultOptions={position:"bottom",enable:!0,timebarType:"time",className:"g6-timebar",width:450,height:60,zIndex:3,elementTypes:["node"],padding:10,mode:"modify",getTime:E=>OV(E,TV,void 0),loop:!1};const sI=E=>{const{nodes:a=[],edges:y=[],combos:x=[]}=E;return{nodes:[...a],edges:[...y],combos:[...x]}},lI=(E,a)=>{if(Wi(a))return E===a;const[y,x]=a;return E>=y&&E<=x},OV=(E,a,y)=>{var x;for(let b=0;b{const b=this.updateCanvas();this.renderTitle(b)},this.bindEvents()}bindEvents(){const{graph:a}=this.context;a.on(si.AFTER_RENDER,this.onRender),a.on(si.AFTER_ANIMATE,this.onRender)}unbindEvents(){const{graph:a}=this.context;a.off(si.AFTER_RENDER,this.onRender),a.off(si.AFTER_ANIMATE,this.onRender)}destroy(){var a,y;this.unbindEvents(),(a=this.canvas)===null||a===void 0||a.destroy(),(y=this.container)===null||y===void 0||y.remove(),super.destroy()}updateCanvas(){const{size:a,className:y,align:x}=this.options,[b]=this.context.canvas.getSize(),[z=0,,ee=0]=this.padding,re=a+z+ee;if(this.canvas){const{width:ae,height:se}=this.canvas.getConfig();(b!==ae||re!==se)&&this.canvas.resize(b,re)}else{const ae={left:"left-top",center:"top",right:"right-top"},[se,fe]=n1({width:b,height:re,placement:ae[x]||ae.left,className:"title-canvas",graphCanvas:this.context.canvas});y&&se.classList.add(y),this.container=se,this.canvas=fe}return this.canvas}renderTitle(a){const y=new kV({options:this.options,ctx:this.context});a.removeChildren(),y.getTitle().forEach(x=>{x&&a.appendChild(x)})}}class kV{get padding(){return Zc(this.options.padding)}constructor(a){const{options:y,ctx:x}=a;this.options=y,this.context=x}getTitle(){const a=this.options,y=MS,x=a[y],b=cI,z=a[b],{spacing:ee=44,padding:re,align:ae}=a,se=LV(a,[typeof y=="symbol"?y:y+"",typeof b=="symbol"?b:b+"","spacing","padding","align"]),fe=x,me=z,Ee=Vl(se,MS),Oe=Vl(se,cI),[ke]=this.context.graph.getSize(),[We=0,je=0,,Ke=0]=this.padding,Ze=ke,Je=Ze-Ke-je;let tt=null,st=Ke,gt="left";switch(ae){case"left":st=Ke,gt="left";break;case"center":st=Ze/2,gt="center";break;case"right":st=Ze-je,gt="right";break;default:st=Ke,gt="left"}const mt=new xf({className:MS,style:Object.assign(Object.assign(Object.assign(Object.assign({},BV),{wordWrapWidth:Je-5,x:st,y:We,textAlign:gt}),Ee),{text:fe})}),ct=mt.getBBox();return me&&(tt=new xf({className:"subTitle",style:Object.assign(Object.assign(Object.assign(Object.assign({},NV),{wordWrapWidth:Je-5,x:st,y:ct.height+ee+We,textAlign:gt}),Oe),{text:me})})),[mt,tt]}}function _V(E){const a={top:"unset",right:"unset",bottom:"unset",left:"unset"};return E.split("-").forEach(x=>{a[x]="8px"}),a.flexDirection=E.startsWith("top")||E.startsWith("bottom")?"row":"column",a}const zV=` .g6-toolbar { position: absolute; z-index: 100; display: flex; flex-direction: row; align-items: center; justify-content: center; border-radius: 4px; box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.1); opacity: 0.65; } .g6-toolbar .g6-toolbar-item { display: inline-block; width: 16px; height: 16px; padding: 4px; cursor: pointer; box-sizing: content-box; } .g6-toolbar .g6-toolbar-item:hover { background-color: #f0f0f0; } .g6-toolbar .g6-toolbar-item svg { display: inline-block; width: 100%; height: 100%; pointer-events: none; } `,UV=` `;var dI=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(fe){try{se(x.next(fe))}catch(me){ee(me)}}function ae(fe){try{se(x.throw(fe))}catch(me){ee(me)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})};class p1 extends Du{constructor(a,y){super(a,Object.assign({},p1.defaultOptions,y)),this.$element=w0("toolbar",!1),this.onToolbarItemClick=b=>{const{onClick:z}=this.options;if(b.target instanceof Element&&b.target.className.includes("g6-toolbar-item")){const ee=b.target.getAttribute("value");z==null||z(ee,b.target)}};const x=this.context.canvas.getContainer();this.$element.style.display="flex",x.appendChild(this.$element),Nx("g6-toolbar-css","style",{},zV,document.head),Nx("g6-toolbar-svgicon","div",{display:"none"},UV),this.$element.addEventListener("click",this.onToolbarItemClick),this.update(y)}update(a){const y=Object.create(null,{update:{get:()=>super.update}});return dI(this,void 0,void 0,function*(){y.update.call(this,a);const{className:x,position:b,style:z}=this.options;this.$element.className=`g6-toolbar ${x||""}`,Object.assign(this.$element.style,z,_V(b)),this.$element.innerHTML=yield this.getDOMContent()})}destroy(){this.$element.removeEventListener("click",this.onToolbarItemClick),this.$element.remove(),super.destroy()}getDOMContent(){return dI(this,void 0,void 0,function*(){return(yield this.options.getItems()).map(y=>{var x;return`
`}).join("")})}}p1.defaultOptions={position:"top-left"};function DS(E){var a=document.createElement("div");a.innerHTML=E;var y=a.childNodes[0];return y&&a.contains(y)&&a.removeChild(y),y}function WV(E,a){return!E||!a?E:E.replace(/\\?\{([^{}]+)\}/g,function(y,x){return y.charAt(0)==="\\"?y.slice(1):a[x]===void 0?"":a[x]})}var jV=WV,fI=function(E,a){if(a==null){E.innerHTML="";return}E.replaceChildren?Array.isArray(a)?E.replaceChildren.apply(E,(0,Bt.ev)([],(0,Bt.CR)(a),!1)):E.replaceChildren(a):(E.innerHTML="",Array.isArray(a)?a.forEach(function(y){return E.appendChild(y)}):E.appendChild(a))};function IS(E){return E===void 0&&(E=""),{CONTAINER:"".concat(E,"tooltip"),TITLE:"".concat(E,"tooltip-title"),LIST:"".concat(E,"tooltip-list"),LIST_ITEM:"".concat(E,"tooltip-list-item"),NAME:"".concat(E,"tooltip-list-item-name"),MARKER:"".concat(E,"tooltip-list-item-marker"),NAME_LABEL:"".concat(E,"tooltip-list-item-name-label"),VALUE:"".concat(E,"tooltip-list-item-value"),CROSSHAIR_X:"".concat(E,"tooltip-crosshair-x"),CROSSHAIR_Y:"".concat(E,"tooltip-crosshair-y")}}var hI={overflow:"hidden","white-space":"nowrap","text-overflow":"ellipsis"};function GV(E){var a;E===void 0&&(E="");var y=IS(E);return a={},a[".".concat(y.CONTAINER)]={position:"absolute",visibility:"visible","z-index":8,transition:"visibility 0.2s cubic-bezier(0.23, 1, 0.32, 1), left 0.4s cubic-bezier(0.23, 1, 0.32, 1), top 0.4s cubic-bezier(0.23, 1, 0.32, 1)","background-color":"rgba(255, 255, 255, 0.96)","box-shadow":"0 6px 12px 0 rgba(0, 0, 0, 0.12)","border-radius":"4px",color:"rgba(0, 0, 0, 0.65)","font-size":"12px","line-height":"20px",padding:"12px","min-width":"120px","max-width":"360px","font-family":"Roboto-Regular"},a[".".concat(y.TITLE)]={color:"rgba(0, 0, 0, 0.45)"},a[".".concat(y.LIST)]={margin:"0px","list-style-type":"none",padding:"0px"},a[".".concat(y.LIST_ITEM)]={"list-style-type":"none",display:"flex","line-height":"2em","align-items":"center","justify-content":"space-between","white-space":"nowrap"},a[".".concat(y.MARKER)]={width:"8px",height:"8px","border-radius":"50%",display:"inline-block","margin-right":"4px"},a[".".concat(y.NAME)]={display:"flex","align-items":"center","max-width":"216px"},a[".".concat(y.NAME_LABEL)]=(0,Bt.pi)({flex:1},hI),a[".".concat(y.VALUE)]=(0,Bt.pi)({display:"inline-block",float:"right",flex:1,"text-align":"right","min-width":"28px","margin-left":"30px",color:"rgba(0, 0, 0, 0.85)"},hI),a[".".concat(y.CROSSHAIR_X)]={position:"absolute",width:"1px","background-color":"rgba(0, 0, 0, 0.25)"},a[".".concat(y.CROSSHAIR_Y)]={position:"absolute",height:"1px","background-color":"rgba(0, 0, 0, 0.25)"},a}var HV=function(E){(0,Bt.ZT)(a,E);function a(y){var x=this,b,z,ee=(z=(b=y.style)===null||b===void 0?void 0:b.template)===null||z===void 0?void 0:z.prefixCls,re=IS(ee);return x=E.call(this,y,{data:[],x:0,y:0,visibility:"visible",title:"",position:"bottom-right",offset:[5,5],enterable:!1,container:{x:0,y:0},bounding:null,template:{prefixCls:"",container:'
'),title:'
'),item:'
  • {name} {value}
  • `)},style:GV(ee)})||this,x.timestamp=-1,x.prevCustomContentKey=x.attributes.contentKey,x.initShape(),x.render(x.attributes,x),x}return Object.defineProperty(a.prototype,"HTMLTooltipElement",{get:function(){return this.element},enumerable:!1,configurable:!0}),a.prototype.getContainer=function(){return this.element},Object.defineProperty(a.prototype,"elementSize",{get:function(){var y=this.element.offsetWidth,x=this.element.offsetHeight;return{width:y,height:x}},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"HTMLTooltipItemsElements",{get:function(){var y=this.attributes,x=y.data,b=y.template;return x.map(function(z,ee){var re=z.name,ae=re===void 0?"":re,se=z.color,fe=se===void 0?"black":se,me=z.index,Ee=(0,Bt._T)(z,["name","color","index"]),Oe=(0,Bt.pi)({name:ae,color:fe,index:me!=null?me:ee},Ee);return DS(jV(b.item,Oe))})},enumerable:!1,configurable:!0}),a.prototype.render=function(y,x){this.renderHTMLTooltipElement(),this.updatePosition()},a.prototype.destroy=function(){var y;(y=this.element)===null||y===void 0||y.remove(),E.prototype.destroy.call(this)},a.prototype.show=function(y,x){var b=this;if(y!==void 0&&x!==void 0){var z=this.element.style.visibility==="hidden",ee=function(){b.attributes.x=y!=null?y:b.attributes.x,b.attributes.y=x!=null?x:b.attributes.y,b.updatePosition()};z?this.closeTransition(ee):ee()}this.element.style.visibility="visible"},a.prototype.hide=function(y,x){y===void 0&&(y=0),x===void 0&&(x=0);var b=this.attributes.enterable;b&&this.isCursorEntered(y,x)||(this.element.style.visibility="hidden")},a.prototype.initShape=function(){var y=this.attributes.template;this.element=DS(y.container),this.id&&this.element.setAttribute("id",this.id)},a.prototype.renderCustomContent=function(){if(!(this.prevCustomContentKey!==void 0&&this.prevCustomContentKey===this.attributes.contentKey)){this.prevCustomContentKey=this.attributes.contentKey;var y=this.attributes.content;y&&(typeof y=="string"?this.element.innerHTML=y:fI(this.element,y))}},a.prototype.renderHTMLTooltipElement=function(){var y,x,b=this.attributes,z=b.template,ee=b.title,re=b.enterable,ae=b.style,se=b.content,fe=IS(z.prefixCls),me=this.element;if(this.element.style.pointerEvents=re?"auto":"none",se)this.renderCustomContent();else{ee?(me.innerHTML=z.title,me.getElementsByClassName(fe.TITLE)[0].innerHTML=ee):(x=(y=me.getElementsByClassName(fe.TITLE))===null||y===void 0?void 0:y[0])===null||x===void 0||x.remove();var Ee=this.HTMLTooltipItemsElements,Oe=document.createElement("ul");Oe.className=fe.LIST,fI(Oe,Ee);var ke=this.element.querySelector(".".concat(fe.LIST));ke?ke.replaceWith(Oe):me.appendChild(Oe)}ej(me,ae)},a.prototype.getRelativeOffsetFromCursor=function(y){var x=this.attributes,b=x.position,z=x.offset,ee=y||b,re=ee.split("-"),ae={left:[-1,0],right:[1,0],top:[0,-1],bottom:[0,1]},se=this.elementSize,fe=se.width,me=se.height,Ee=[-fe/2,-me/2];return re.forEach(function(Oe){var ke=(0,Bt.CR)(Ee,2),We=ke[0],je=ke[1],Ke=(0,Bt.CR)(ae[Oe],2),Ze=Ke[0],Je=Ke[1];Ee=[We+(fe/2+z[0])*Ze,je+(me/2+z[1])*Je]}),Ee},a.prototype.setOffsetPosition=function(y){var x=(0,Bt.CR)(y,2),b=x[0],z=x[1],ee=this.attributes,re=ee.x,ae=re===void 0?0:re,se=ee.y,fe=se===void 0?0:se,me=ee.container,Ee=me.x,Oe=me.y;this.element.style.left="".concat(+ae+Ee+b,"px"),this.element.style.top="".concat(+fe+Oe+z,"px")},a.prototype.updatePosition=function(){var y=this.attributes.showDelay,x=y===void 0?60:y,b=Date.now();this.timestamp>0&&b-this.timestampZe+tt,top:jeJe+st},mt=[];fe.split("-").forEach(function(Lt){gt[Lt]?mt.push(Ke[Lt]):mt.push(Lt)});var ct=mt.join("-");return this.getRelativeOffsetFromCursor(ct)},a.prototype.isCursorEntered=function(y,x){if(this.element){var b=this.element.getBoundingClientRect(),z=b.x,ee=b.y,re=b.width,ae=b.height;return new tc(z,ee,re,ae).isPointIn(y,x)}return!1},a.prototype.closeTransition=function(y){var x=this,b=this.element.style.transition;this.element.style.transition="none",y(),setTimeout(function(){x.element.style.transition=b},10)},a.tag="tooltip",a}(kl),gI=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(fe){try{se(x.next(fe))}catch(me){ee(me)}}function ae(fe){try{se(x.throw(fe))}catch(me){ee(me)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})};class y1 extends Du{constructor(a,y){super(a,Object.assign({},y1.defaultOptions,y)),this.currentTarget=null,this.tooltipElement=null,this.container=null,this.isEnable=(x,b)=>{const{enable:z}=this.options;return typeof z=="function"?z(x,b):z},this.onClick=x=>{const{target:{id:b}}=x;this.currentTarget===b?this.hide(x):this.show(x)},this.onPointerMove=x=>{const{target:b}=x;!this.currentTarget||b.id===this.currentTarget||this.show(x)},this.onPointerLeave=x=>{this.hide(x)},this.onCanvasMove=x=>{this.hide(x)},this.onPointerOver=x=>{this.show(x)},this.showById=x=>gI(this,void 0,void 0,function*(){const b={target:{id:x}};yield this.show(b)}),this.getElementData=(x,b)=>{const{model:z}=this.context;switch(b){case"node":return z.getNodeData([x]);case"edge":return z.getEdgeData([x]);case"combo":return z.getComboData([x]);default:return[]}},this.show=x=>gI(this,void 0,void 0,function*(){var b,z;const{client:ee,target:{id:re}}=x;if(Bv(x.target))return;const ae=this.context.graph.getElementType(re),{getContent:se,title:fe}=this.options,me=this.getElementData(re,ae);if(!this.tooltipElement||!this.isEnable(x,me))return;let Ee={};if(se){if(Ee.content=yield se(x,me),!Ee.content)return}else{const We=this.context.graph.getElementRenderStyle(re),je=ae==="node"?We.fill:We.stroke;Ee={title:fe||ae,data:me.map(Ke=>({name:"ID",value:Ke.id||`${Ke.source} -> ${Ke.target}`,color:je}))}}this.currentTarget=re;let Oe,ke;if(ee)Oe=ee.x,ke=ee.y;else{const We=ju(me,"0.style",{x:0,y:0});Oe=We.x,ke=We.y}(z=(b=this.options).onOpenChange)===null||z===void 0||z.call(b,!0),this.tooltipElement.update(Object.assign(Object.assign(Object.assign({},this.tooltipStyleProps),{x:Oe,y:ke,style:{".tooltip":{visibility:"visible"}}}),Ee))}),this.hide=x=>{var b,z,ee,re,ae;if(!x){(z=(b=this.options).onOpenChange)===null||z===void 0||z.call(b,!1),(ee=this.tooltipElement)===null||ee===void 0||ee.hide(),this.currentTarget=null;return}if(!this.tooltipElement||!this.currentTarget)return;const{client:{x:se,y:fe}}=x;(ae=(re=this.options).onOpenChange)===null||ae===void 0||ae.call(re,!1),this.tooltipElement.hide(se,fe),this.currentTarget=null},this.initTooltip=()=>{var x;const b=new HV({className:"tooltip",style:this.tooltipStyleProps});return(x=this.container)===null||x===void 0||x.appendChild(b.HTMLTooltipElement),b},this.render(),this.bindEvents()}getEvents(){return this.options.trigger==="click"?{"node:click":this.onClick,"edge:click":this.onClick,"combo:click":this.onClick,"canvas:click":this.onPointerLeave,contextmenu:this.onPointerLeave,drag:this.onPointerLeave}:{"node:pointerover":this.onPointerOver,"node:pointermove":this.onPointerMove,"canvas:pointermove":this.onCanvasMove,"edge:pointerover":this.onPointerOver,"edge:pointermove":this.onPointerMove,"combo:pointerover":this.onPointerOver,"combo:pointermove":this.onPointerMove,contextmenu:this.onPointerLeave,"node:drag":this.onPointerLeave}}update(a){var y;this.unbindEvents(),super.update(a),this.tooltipElement&&((y=this.container)===null||y===void 0||y.removeChild(this.tooltipElement.HTMLTooltipElement)),this.tooltipElement=this.initTooltip(),this.bindEvents()}render(){const{canvas:a}=this.context,y=a.getContainer();y&&(this.container=y,this.tooltipElement=this.initTooltip())}unbindEvents(){const{graph:a}=this.context,y=this.getEvents();Object.keys(y).forEach(x=>{a.off(x,y[x])})}bindEvents(){const{graph:a}=this.context,y=this.getEvents();Object.keys(y).forEach(x=>{a.on(x,y[x])})}get tooltipStyleProps(){const{canvas:a}=this.context,{center:y}=a.getBounds(),x=a.getContainer(),{top:b,left:z}=x.getBoundingClientRect(),{style:ee,position:re,enterable:ae,container:se={x:-z,y:-b},title:fe,offset:me}=this.options,[Ee,Oe]=y,[ke,We]=a.getSize();return{x:Ee,y:Oe,container:se,title:fe,bounding:{x:0,y:0,width:ke,height:We},position:re,enterable:ae,offset:me,style:ee}}destroy(){var a;this.unbindEvents(),this.tooltipElement&&((a=this.container)===null||a===void 0||a.removeChild(this.tooltipElement.HTMLTooltipElement)),super.destroy()}}y1.defaultOptions={trigger:"hover",position:"top-right",enterable:!1,enable:!0,offset:[10,10],style:{".tooltip":{visibility:"hidden"}}};var vI=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(fe){try{se(x.next(fe))}catch(me){ee(me)}}function ae(fe){try{se(x.throw(fe))}catch(me){ee(me)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})};let L0;function mI(E,a){return L0||(L0=document.createElement("canvas")),L0.width=E,L0.height=a,L0.getContext("2d").clearRect(0,0,E,a),L0}function VV(E,a,y,x){return vI(this,void 0,void 0,function*(){const b=mI(E,a),z=b.getContext("2d"),{rotate:ee,opacity:re,textFill:ae,textFontSize:se,textFontFamily:fe,textFontVariant:me,textFontWeight:Ee,textAlign:Oe,textBaseline:ke}=x;return z.textAlign=Oe,z.textBaseline=ke,z.translate(E/2,a/2),z.font=`${se}px ${fe} ${me} ${Ee}`,ee&&z.rotate(ee),re&&(z.globalAlpha=re),ae&&(z.fillStyle=ae,z.fillText(`${y}`,0,0)),b.toDataURL()})}function KV(E,a,y,x){return vI(this,void 0,void 0,function*(){const b=mI(E,a),z=b.getContext("2d"),{rotate:ee,opacity:re}=x;ee&&z.rotate(ee),re&&(z.globalAlpha=re);const ae=new Image;return ae.crossOrigin="anonymous",ae.src=y,new Promise(se=>{ae.onload=function(){const fe=E>ae.width?(E-ae.width)/2:0,me=a>ae.height?(a-ae.height)/2:0;z.drawImage(ae,0,0,ae.width,ae.height,fe,me,E-fe*2,a-me*2),se(b.toDataURL())}})})}var ZV=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(fe){try{se(x.next(fe))}catch(me){ee(me)}}function ae(fe){try{se(x.throw(fe))}catch(me){ee(me)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})},QV=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);bsuper.update}});return ZV(this,void 0,void 0,function*(){y.update.call(this,a);const x=this.options,{width:b,height:z,text:ee,imageURL:re}=x,ae=QV(x,["width","height","text","imageURL"]);Object.keys(ae).forEach(fe=>{fe.startsWith("background")&&(this.$element.style[fe]=a[fe])});const se=re?yield KV(b,z,re,ae):yield VV(b,z,ee,ae);this.$element.style.backgroundImage=`url(${se})`})}destroy(){super.destroy(),this.$element.remove()}}E1.defaultOptions={width:200,height:100,opacity:.2,rotate:Math.PI/12,text:"",textFill:"#000",textFontSize:16,textAlign:"center",textBaseline:"middle",backgroundRepeat:"repeat"};const YV=["#7E92B5","#F4664A","#FFBE3A"],XV={type:"group",color:["#1783FF","#00C9C9","#F08F56","#D580FF","#7863FF","#DB9D0D","#60C42D","#FF80CA","#2491B3","#17C76F"]},JV={type:"group",color:["#99ADD1","#1783FF","#00C9C9","#F08F56","#D580FF","#7863FF","#DB9D0D","#60C42D","#FF80CA","#2491B3","#17C76F"]};function pI(E){const{bgColor:a,textColor:y,nodeColor:x,nodeColorDisabled:b,nodeStroke:z,nodeHaloStrokeOpacityActive:ee=.15,nodeHaloStrokeOpacitySelected:re=.25,nodeOpacityDisabled:ae=.06,nodeIconOpacityInactive:se=.85,nodeOpacityInactive:fe=.25,nodeBadgePalette:me=YV,nodePaletteOptions:Ee=XV,edgeColor:Oe,edgeColorDisabled:ke,edgePaletteOptions:We=JV,comboColor:je,comboColorDisabled:Ke,comboStroke:Ze,comboStrokeDisabled:Je,edgeColorInactive:tt}=E;return{background:a,node:{palette:Ee,style:{donutOpacity:1,badgeBackgroundOpacity:1,badgeFill:"#fff",badgeFontSize:8,badgePadding:[0,4],badgePalette:me,fill:x,fillOpacity:1,halo:!1,iconFill:"#fff",iconOpacity:1,labelBackground:!1,labelBackgroundFill:a,labelBackgroundLineWidth:0,labelBackgroundOpacity:.75,labelFill:y,labelFillOpacity:.85,labelLineHeight:16,labelPadding:[0,2],labelFontSize:12,labelFontWeight:400,labelOpacity:1,labelOffsetY:2,lineWidth:0,portFill:x,portLineWidth:1,portStroke:z,portStrokeOpacity:.65,size:32,stroke:z,strokeOpacity:1,zIndex:2},state:{selected:{halo:!0,haloLineWidth:24,haloStrokeOpacity:re,labelFontSize:12,labelFontWeight:"bold",lineWidth:4,stroke:z},active:{halo:!0,haloLineWidth:12,haloStrokeOpacity:ee},highlight:{labelFontWeight:"bold",lineWidth:4,stroke:z,strokeOpacity:.85},inactive:{badgeBackgroundOpacity:fe,donutOpacity:fe,fillOpacity:fe,iconOpacity:se,labelFill:y,labelFillOpacity:fe,strokeOpacity:fe},disabled:{badgeBackgroundOpacity:.25,donutOpacity:ae,fill:b,fillOpacity:ae,iconFill:b,iconOpacity:.25,labelFill:y,labelFillOpacity:.25,strokeOpacity:ae}},animation:{enter:"fade",exit:"fade",show:"fade",hide:"fade",expand:"node-expand",collapse:"node-collapse",update:[{fields:["x","y","fill","stroke"]}],translate:[{fields:["x","y"]}]}},edge:{palette:We,style:{badgeBackgroundFill:Oe,badgeFill:"#fff",badgeFontSize:8,badgeOffsetX:10,badgeBackgroundOpacity:1,fillOpacity:1,halo:!1,haloLineWidth:12,haloStrokeOpacity:1,increasedLineWidthForHitTesting:2,labelBackground:!1,labelBackgroundFill:a,labelBackgroundLineWidth:0,labelBackgroundOpacity:.75,labelBackgroundPadding:[4,4,4,4],labelFill:y,labelFontSize:12,labelFontWeight:400,labelOpacity:1,labelPlacement:"center",labelTextBaseline:"middle",lineWidth:1,stroke:Oe,strokeOpacity:1,zIndex:1},state:{selected:{halo:!0,haloStrokeOpacity:.25,labelFontSize:14,labelFontWeight:"bold",lineWidth:3},active:{halo:!0,haloStrokeOpacity:.15},highlight:{labelFontWeight:"bold",lineWidth:3},inactive:{stroke:tt,fillOpacity:.08,labelOpacity:.25,strokeOpacity:.08,badgeBackgroundOpacity:.25},disabled:{stroke:ke,fillOpacity:.45,strokeOpacity:.45,labelOpacity:.25,badgeBackgroundOpacity:.45}},animation:{enter:"fade",exit:"fade",expand:"path-in",collapse:"path-out",show:"fade",hide:"fade",update:[{fields:["sourceNode","targetNode"]},{fields:["stroke"],shape:"key"}],translate:[{fields:["sourceNode","targetNode"]}]}},combo:{style:{collapsedMarkerFill:a,collapsedMarkerFontSize:12,collapsedMarkerFillOpacity:1,collapsedSize:32,collapsedFillOpacity:1,fill:je,halo:!1,haloLineWidth:12,haloStroke:Ze,haloStrokeOpacity:.25,labelBackground:!1,labelBackgroundFill:a,labelBackgroundLineWidth:0,labelBackgroundOpacity:.75,labelBackgroundPadding:[2,4,2,4],labelFill:y,labelFontSize:12,labelFontWeight:400,labelOpacity:1,lineDash:0,lineWidth:1,fillOpacity:.04,strokeOpacity:1,padding:10,stroke:Ze},state:{selected:{halo:!0,labelFontSize:14,labelFontWeight:700,lineWidth:4},active:{halo:!0},highlight:{labelFontWeight:700,lineWidth:4},inactive:{fillOpacity:.65,labelOpacity:.25,strokeOpacity:.65},disabled:{fill:Ke,fillOpacity:.25,labelOpacity:.25,stroke:Je,strokeOpacity:.25}},animation:{enter:"fade",exit:"fade",show:"fade",hide:"fade",expand:"combo-expand",collapse:"combo-collapse",update:[{fields:["x","y"]},{fields:["fill","stroke","lineWidth"],shape:"key"}],translate:[{fields:["x","y"]}]}}}}const qV=pI({bgColor:"#000000",comboColor:"#fdfdfd",comboColorDisabled:"#d0e4ff",comboStroke:"#99add1",comboStrokeDisabled:"#969696",edgeColor:"#637088",edgeColorDisabled:"#637088",edgeColorInactive:"#D0E4FF",edgePaletteOptions:{type:"group",color:["#637088","#0F55A6","#008383","#9C5D38","#8B53A6","#4E40A6","#8F6608","#3E801D","#A65383","#175E75","#0F8248"]},nodeColor:"#1783ff",nodeColorDisabled:"#D0E4FF",nodeHaloStrokeOpacityActive:.25,nodeHaloStrokeOpacitySelected:.45,nodeIconOpacityInactive:.45,nodeOpacityDisabled:.25,nodeOpacityInactive:.45,nodeStroke:"#d0e4ff",textColor:"#ffffff"}),$V=pI({bgColor:"#ffffff",comboColor:"#99ADD1",comboColorDisabled:"#f0f0f0",comboStroke:"#99add1",comboStrokeDisabled:"#d9d9d9",edgeColor:"#99add1",edgeColorDisabled:"#d9d9d9",edgeColorInactive:"#1B324F",nodeColor:"#1783ff",nodeColorDisabled:"#1B324F",nodeHaloStrokeOpacityActive:.15,nodeHaloStrokeOpacitySelected:.25,nodeIconOpacityInactive:.85,nodeOpacityDisabled:.06,nodeOpacityInactive:.25,nodeStroke:"#000000",textColor:"#000000"});class Th extends OA{beforeDraw(a,y){return a}afterLayout(a,y){}}class eK extends Th{beforeDraw(a){const{model:y}=this.context,x=a.add.combos,b=z=>{const ee=[];return z.forEach((re,ae)=>{const fe=y.getAncestorsData(ae,"combo").map(me=>Lr(me)).reverse();ee.push([ae,re,fe.length])}),new Map(ee.sort(([,,re],[,,ae])=>ae-re).map(([re,ae])=>[re,ae]))};return a.add.combos=b(x),a.update.combos=b(a.update.combos),a}}function $c(E,a,y,x,b){const z=Lr(x),ee=`${y}s`,re=b?x:E.add[ee].get(z)||E.update[ee].get(z)||E.remove[ee].get(z)||x;Object.entries(E).forEach(([ae,se])=>{a===ae?se[ee].set(z,re):se[ee].delete(z)})}function A1(E,a){return Object.keys(E).every(y=>E[y]===a[y])}class tK extends Th{beforeDraw(a,y){if(y.stage==="visibility"||!this.context.model.model.hasTreeStructure(vl))return a;const{model:x}=this.context,{add:b,update:z}=a,ee=[...a.update.combos.entries(),...a.add.combos.entries()];for(;ee.length;){const[re,ae]=ee.pop();if(Oc(ae)){const se=x.getDescendantsData(re),fe=se.map(Lr),{internal:me,external:Ee}=tx(fe,Oe=>x.getRelatedEdgesData(Oe));se.forEach(Oe=>{const ke=Lr(Oe),We=ee.findIndex(([Ke])=>Ke===ke);We!==-1&&ee.splice(We,1);const je=x.getElementType(ke);$c(a,"remove",je,Oe)}),me.forEach(Oe=>$c(a,"remove","edge",Oe)),Ee.forEach(Oe=>{var ke;const We=Lr(Oe);((ke=this.context.element)===null||ke===void 0?void 0:ke.getElement(We))?z.edges.set(We,Oe):b.edges.set(We,Oe)})}else{const se=x.getChildrenData(re),fe=se.map(Lr),{edges:me}=tx(fe,Ee=>x.getRelatedEdgesData(Ee));[...se,...me].forEach(Ee=>{var Oe;const ke=Lr(Ee),We=x.getElementType(ke);((Oe=this.context.element)===null||Oe===void 0?void 0:Oe.getElement(ke))?$c(a,"update",We,Ee):$c(a,"add",We,Ee),We==="combo"&&ee.push([ke,Ee])})}}return a}}const yI=(E,a,y,x)=>{const b=`${y}s`,z=Lr(x);!E.add[b].has(z)&&!E.update[b].has(z)&&E[a][b].set(Lr(x),x)};class nK extends Th{getElement(a){return this.context.element.getElement(a)}handleExpand(a,y){if(yI(y,"add","node",a),Oc(a))return;const x=Lr(a);yI(y,"add","node",a),this.context.model.getRelatedEdgesData(x).forEach(ee=>{$c(y,"add","edge",ee)}),this.context.model.getChildrenData(x).forEach(ee=>{this.handleExpand(ee,y)})}beforeDraw(a){const{graph:y,model:x}=this.context;if(!x.model.hasTreeStructure(Kc))return a;const{add:{nodes:b,edges:z},update:{nodes:ee}}=a,re=new Map,ae=new Map;b.forEach((fe,me)=>{Oc(fe)&&re.set(me,fe)}),z.forEach(fe=>{if(y.getElementType(fe.source)!=="node")return;const me=y.getNodeData(fe.source);Oc(me)&&re.set(fe.source,me)}),ee.forEach((fe,me)=>{const Ee=this.getElement(me);if(!Ee)return;const Oe=Ee.attributes.collapsed;Oc(fe)?Oe||re.set(me,fe):Oe&&ae.set(me,fe)});const se=new Set;return re.forEach((fe,me)=>{x.getDescendantsData(me).forEach(Oe=>{const ke=Lr(Oe);if(se.has(ke))return;$c(a,"remove","node",Oe),x.getRelatedEdgesData(ke).forEach(je=>{$c(a,"remove","edge",je)}),se.add(ke)})}),ae.forEach((fe,me)=>{if(x.getAncestorsData(me,Kc).some(Oc)){$c(a,"remove","node",fe);return}this.handleExpand(fe,a)}),a}}const TS=new WeakMap;function jee(E,a,y){TS.has(E)||TS.set(E,{});const x=TS.get(E);if(!x[a])return x[a]=y,!0;const b=x[a];return EI(b,y)?!1:(x[a]=y,!0)}const EI=(E,a,y=2)=>{if(typeof E!="object"||typeof a!="object")return E===a;const x=Object.keys(E),b=Object.keys(a);if(x.length!==b.length)return!1;for(const z of x){const ee=E[z],re=a[z];if(y>1&&typeof ee=="object"&&typeof re=="object"){if(!EI(ee,re,y-1))return!1}else if(ee!==re)return!1}return!0};function rK(E,a,y){gA[E][a]&&Tc.warn(`The extension ${a} of ${E} has been registered before, and will be overridden.`),Object.assign(gA[E],{[a]:y})}var AI=function(){function E(a){(0,gn.Z)(this,E),this.dragndropPluginOptions=a}return(0,cn.Z)(E,[{key:"apply",value:function(y){var x=this,b=y.renderingService,z=y.renderingContext,ee=z.root.ownerDocument,re=ee.defaultView,ae=function(fe){var me=fe.target,Ee=me===ee,Oe=Ee&&x.dragndropPluginOptions.isDocumentDraggable?ee:me.closest&&me.closest("[draggable=true]");if(Oe){var ke=!1,We=fe.timeStamp,je=[fe.clientX,fe.clientY],Ke=null,Ze=[fe.clientX,fe.clientY],Je=function(){var st=(0,uh.Z)((0,$u.Z)().mark(function gt(mt){var ct,Lt,_t,Yt,$t,En;return(0,$u.Z)().wrap(function(on){for(;;)switch(on.prev=on.next){case 0:if(ke){on.next=2;break}if(ct=mt.timeStamp-We,Lt=bc([mt.clientX,mt.clientY],je),!(ct<=x.dragndropPluginOptions.dragstartTimeThreshold||Lt<=x.dragndropPluginOptions.dragstartDistanceThreshold)){on.next=1;break}return on.abrupt("return");case 1:mt.type="dragstart",Oe.dispatchEvent(mt),ke=!0;case 2:if(mt.type="drag",mt.dx=mt.clientX-Ze[0],mt.dy=mt.clientY-Ze[1],Oe.dispatchEvent(mt),Ze=[mt.clientX,mt.clientY],Ee){on.next=4;break}return _t=x.dragndropPluginOptions.overlap==="pointer"?[mt.canvasX,mt.canvasY]:me.getBounds().center,on.next=3,ee.elementsFromPoint(_t[0],_t[1]);case 3:Yt=on.sent,$t=Yt[Yt.indexOf(me)+1],En=($t==null?void 0:$t.closest("[droppable=true]"))||(x.dragndropPluginOptions.isDocumentDroppable?ee:null),Ke!==En&&(Ke&&(mt.type="dragleave",mt.target=Ke,Ke.dispatchEvent(mt)),En&&(mt.type="dragenter",mt.target=En,En.dispatchEvent(mt)),Ke=En,Ke&&(mt.type="dragover",mt.target=Ke,Ke.dispatchEvent(mt)));case 4:case"end":return on.stop()}},gt)}));return function(mt){return st.apply(this,arguments)}}();re.addEventListener("pointermove",Je);var tt=function(gt){if(ke){gt.detail={preventClick:!0};var mt=gt.clone();Ke&&(mt.type="drop",mt.target=Ke,Ke.dispatchEvent(mt)),mt.type="dragend",Oe.dispatchEvent(mt),ke=!1}re.removeEventListener("pointermove",Je)};me.addEventListener("pointerup",tt,{once:!0}),me.addEventListener("pointerupoutside",tt,{once:!0})}};b.hooks.init.tap(E.tag,function(){re.addEventListener("pointerdown",ae)}),b.hooks.destroy.tap(E.tag,function(){re.removeEventListener("pointerdown",ae)})}}])}();AI.tag="Dragndrop";var aK=function(E){function a(){var y,x=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return(0,gn.Z)(this,a),y=ir(this,a),y.name="dragndrop",y.options=x,y}return(0,xr.Z)(a,E),(0,cn.Z)(a,[{key:"init",value:function(){this.addRenderingPlugin(new AI((0,hn.Z)({overlap:"pointer",isDocumentDraggable:!1,isDocumentDroppable:!1,dragstartDistanceThreshold:0,dragstartTimeThreshold:0},this.options)))}},{key:"destroy",value:function(){this.removeAllRenderingPlugins()}},{key:"setOptions",value:function(x){Object.assign(this.plugins[0].dragndropPluginOptions,x)}}])}(dh),xI=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(fe){try{se(x.next(fe))}catch(me){ee(me)}}function ae(fe){try{se(x.throw(fe))}catch(me){ee(me)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})},SI=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b{const Ee=new rA(Object.assign(Object.assign({},re),{supportsMutipleCanvasesInOneContainer:ee,renderer:se[me],background:ee?me==="background"?b:void 0:b}));return[me,Ee]}));MI(fe),this.extends={config:this.config,renderer:x,renderers:se,layers:fe}}get ready(){return Promise.all(Object.entries(this.getLayers()).map(([,a])=>a.ready))}resize(a,y){Object.assign(this.extends.config,{width:a,height:y}),Object.values(this.getLayers()).forEach(x=>{const b=x.getCamera(),z=b.getPosition(),ee=b.getFocalPoint();x.resize(a,y),b.setPosition(z),b.setFocalPoint(ee)})}getBounds(a){return yv(Object.values(this.getLayers()).map(y=>a?y.getRoot().childNodes.find(b=>b.classList.includes(a)):y.getRoot()).filter(y=>(y==null?void 0:y.childNodes.length)>0).map(y=>y.getBounds()))}getContainer(){const a=this.extends.config.container;return typeof a=="string"?document.getElementById(a):a}getSize(){return[this.extends.config.width||0,this.extends.config.height||0]}appendChild(a,y){var x;const b=((x=a.style)===null||x===void 0?void 0:x.$layer)||"main";return this.getLayer(b).appendChild(a,y)}setRenderer(a){if(a===this.extends.renderer)return;const y=wI(a,this.config.enableMultiLayer?CI:bI);this.extends.renderers=y,Object.entries(y).forEach(([x,b])=>this.getLayer(x).setRenderer(b)),MI(this.getLayers())}getCanvasByViewport(a){return Wu(this.getLayer().viewport2Canvas(kd(a)))}getViewportByCanvas(a){return Wu(this.getLayer().canvas2Viewport(kd(a)))}getViewportByClient(a){return Wu(this.getLayer().client2Viewport(kd(a)))}getClientByViewport(a){return Wu(this.getLayer().viewport2Client(kd(a)))}getClientByCanvas(a){return this.getClientByViewport(this.getViewportByCanvas(a))}getCanvasByClient(a){const y=this.getLayer(),x=y.client2Viewport(kd(a));return Wu(y.viewport2Canvas(x))}toDataURL(){return xI(this,arguments,void 0,function*(a={}){const y=globalThis.devicePixelRatio||1,{mode:x="viewport"}=a,b=SI(a,["mode"]);let[z,ee,re,ae]=[0,0,0,0];if(x==="viewport")[re,ae]=this.getSize();else if(x==="overall"){const Ke=this.getBounds(),Ze=gh(Ke);[z,ee]=Ke.min,[re,ae]=Ze}const se=DS('
    '),fe=new rA({width:re,height:ae,renderer:new Iv,devicePixelRatio:y,container:se,background:this.extends.config.background});yield fe.ready,fe.appendChild(this.getLayer("background").getRoot().cloneNode(!0)),fe.appendChild(this.getRoot().cloneNode(!0));const me=this.getLayer("label").getRoot().cloneNode(!0),Ee=fe.viewport2Canvas({x:0,y:0}),Oe=this.getCanvasByViewport([0,0]);me.translate([Oe[0]-Ee.x,Oe[1]-Ee.y]),me.scale(1/this.getCamera().getZoom()),fe.appendChild(me),fe.appendChild(this.getLayer("transient").getRoot().cloneNode(!0));const ke=this.getCamera(),We=fe.getCamera();if(x==="viewport")We.setZoom(ke.getZoom()),We.setPosition(ke.getPosition()),We.setFocalPoint(ke.getFocalPoint());else if(x==="overall"){const[Ke,Ze,Je]=We.getPosition(),[tt,st,gt]=We.getFocalPoint();We.setPosition([Ke+z,Ze+ee,Je]),We.setFocalPoint([tt+z,st+ee,gt])}const je=fe.getContextService();return new Promise(Ke=>{fe.addEventListener(Vc.RERENDER,()=>xI(this,void 0,void 0,function*(){yield new Promise(Je=>setTimeout(Je,300));const Ze=yield je.toDataURL(b);Ke(Ze)}))})})}destroy(){Object.values(this.getLayers()).forEach(a=>{a.getCamera().cancelLandmarkAnimation(),a.destroy()})}}function wI(E,a){return Object.fromEntries(a.map(y=>{const x=(E==null?void 0:E(y))||new Iv;return x instanceof Iv&&x.setConfig({enableDirtyRectangleRendering:!1}),y==="main"?x.registerPlugin(new aK({isDocumentDraggable:!0,isDocumentDroppable:!0,dragstartDistanceThreshold:10,dragstartTimeThreshold:100})):x.unregisterPlugin(x.getPlugin("dom-interaction")),[y,x]}))}function MI(E){Object.entries(E).forEach(([a,y])=>{const x=y.getContextService().getDomElement();x!=null&&x.style&&(x.style.gridArea="1 / 1 / 2 / 2",x.style.outline="none",x.tabIndex=1,a!=="main"&&(x.style.pointerEvents="none")),x!=null&&x.parentElement&&(x.parentElement.style.display="grid",x.parentElement.style.isolation="isolate")})}const B0=E=>E?parseInt(E):0;function oK(E){const a=getComputedStyle(E),y=E.clientWidth||B0(a.width),x=E.clientHeight||B0(a.height),b=B0(a.paddingLeft)+B0(a.paddingRight),z=B0(a.paddingTop)+B0(a.paddingBottom);return[y-b,x-z]}function DI(E){if(!E)return[0,0];let a=640,y=480;const[x,b]=oK(E);a=x||a,y=b||y;const z=1,ee=1;return[Math.max(Wi(a)?a:z,z),Math.max(Wi(y)?y:ee,ee)]}class x1{constructor(a){this.type=a}}class vu extends x1{constructor(a,y){super(a),this.data=y}}class xd extends x1{constructor(a,y,x,b){super(a),this.animationType=y,this.animation=x,this.data=b}}class N0 extends x1{constructor(a,y,x){super(a),this.elementType=y,this.data=x}}class S1 extends x1{constructor(a,y){super(a),this.data=y}}function Su(E,a){E.emit(a.type,a)}function sK(E){if(!E)return null;if(E instanceof FP)return{type:"canvas",element:E};let a=E;for(;a;){if(Ov(a))return{type:"node",element:a};if(n5(a))return{type:"edge",element:a};if(nx(a))return{type:"combo",element:a};a=a.parentElement}return null}function II(E){var a;return((a=E==null?void 0:E.style)===null||a===void 0?void 0:a.zIndex)||0}const R0="cachedStyle",b1=E=>`__${E}__`;function lK(E,a){const y=Array.isArray(a)?a:[a];ju(E,R0)||Pv(E,R0,{}),y.forEach(x=>{Pv(ju(E,R0),b1(x),E.attributes[x])})}function TI(E,a){return ju(E,[R0,b1(a)])}function uK(E,a){return b1(a)in(ju(E,R0)||{})}function Gee(E,a,y){set(E,[R0,b1(a)],y)}class cK{constructor(a){this.tasks=[],this.animations=new Set,this.context=a}getTasks(){const a=[...this.tasks];return this.tasks=[],a}add(a,y){this.tasks.push([a,y])}animate(a,y,x){var b,z,ee;(b=y==null?void 0:y.before)===null||b===void 0||b.call(y);const re=this.getTasks().map(([se,fe])=>{var me,Ee,Oe;const{element:ke,elementType:We,stage:je}=se,Ke=kR(this.context.options,We,je,a);(me=fe==null?void 0:fe.before)===null||me===void 0||me.call(fe);const Ze=Ke.length?zR(ke,this.inferStyle(se,x),Ke):null;return Ze?((Ee=fe==null?void 0:fe.beforeAnimate)===null||Ee===void 0||Ee.call(fe,Ze),Ze.finished.then(()=>{var Je,tt;(Je=fe==null?void 0:fe.afterAnimate)===null||Je===void 0||Je.call(fe,Ze),(tt=fe==null?void 0:fe.after)===null||tt===void 0||tt.call(fe),this.animations.delete(Ze)})):(Oe=fe==null?void 0:fe.after)===null||Oe===void 0||Oe.call(fe),Ze}).filter(Boolean);re.forEach(se=>this.animations.add(se));const ae=vA(re);return ae?((z=y==null?void 0:y.beforeAnimate)===null||z===void 0||z.call(y,ae),ae.finished.then(()=>{var se,fe;(se=y==null?void 0:y.afterAnimate)===null||se===void 0||se.call(y,ae),(fe=y==null?void 0:y.after)===null||fe===void 0||fe.call(y),this.release()})):(ee=y==null?void 0:y.after)===null||ee===void 0||ee.call(y),ae}inferStyle(a,y){var x,b;const{element:z,elementType:ee,stage:re,originalStyle:ae,updatedStyle:se={}}=a;a.modifiedStyle||(a.modifiedStyle=Object.assign(Object.assign({},ae),se));const{modifiedStyle:fe}=a,me={},Ee={};if(re==="enter")Object.assign(me,{opacity:0});else if(re==="exit")Object.assign(Ee,{opacity:0});else if(re==="show")Object.assign(me,{opacity:0}),Object.assign(Ee,{opacity:(x=TI(z,"opacity"))!==null&&x!==void 0?x:pv("opacity")});else if(re==="hide")Object.assign(me,{opacity:(b=TI(z,"opacity"))!==null&&b!==void 0?b:pv("opacity")}),Object.assign(Ee,{opacity:0});else if(re==="collapse"){const{collapse:Oe}=y||{},{target:ke,descendants:We,position:je}=Oe;if(ee==="node"){if(We.includes(z.id)){const[Ke,Ze,Je]=je;Object.assign(Ee,{x:Ke,y:Ze,z:Je})}}else if(ee==="combo"){if(z.id===ke||We.includes(z.id)){const[Ke,Ze]=je;Object.assign(Ee,{x:Ke,y:Ze,childrenNode:ae.childrenNode})}}else ee==="edge"&&Object.assign(Ee,{sourceNode:fe.sourceNode,targetNode:fe.targetNode})}else if(re==="expand"){const{expand:Oe}=y||{},{target:ke,descendants:We,position:je}=Oe;if(ee==="node"){if(z.id===ke||We.includes(z.id)){const[Ke,Ze,Je]=je;Object.assign(me,{x:Ke,y:Ze,z:Je})}}else if(ee==="combo"){if(z.id===ke||We.includes(z.id)){const[Ke,Ze,Je]=je;Object.assign(me,{x:Ke,y:Ze,z:Je,childrenNode:fe.childrenNode})}}else ee==="edge"&&Object.assign(me,{sourceNode:fe.sourceNode,targetNode:fe.targetNode})}return[Object.keys(me).length>0?Object.assign({},ae,me):ae,Object.keys(Ee).length>0?Object.assign({},fe,Ee):fe]}stop(){this.animations.forEach(a=>a.cancel())}clear(){this.tasks=[]}release(){var a,y;const{canvas:x}=this.context,b=(y=(a=x.document)===null||a===void 0?void 0:a.timeline)===null||y===void 0?void 0:y.animationsWithPromises;b&&(x.document.timeline.animationsWithPromises=b.filter(z=>z.playState!=="finished"))}destroy(){this.stop(),this.animations.clear(),this.tasks=[]}}class dK{constructor(a){this.batchCount=0,this.context=a}emit(a){const{graph:y}=this.context;y.emit(a.type,a)}startBatch(a=!0){this.batchCount++,this.batchCount===1&&this.emit(new vu(si.BATCH_START,{initiate:a}))}endBatch(){this.batchCount--,this.batchCount===0&&this.emit(new vu(si.BATCH_END))}get isBatching(){return this.batchCount>0}destroy(){this.context=null}}class fK extends TA{constructor(a){super(a),this.currentTarget=null,this.currentTargetType=null,this.category="behavior",this.forwardCanvasEvents=y=>{const{target:x}=y,b=sK(x);if(!b)return;const{graph:z,canvas:ee}=this.context,{type:re,element:ae}=b;if("destroyed"in ae&&(Bv(ae)||ae.destroyed))return;const{type:se,detail:fe,button:me}=y,Ee=Object.assign(Object.assign({},y),{target:ae,targetType:re,originalTarget:x});se===ma.POINTER_MOVE&&(this.currentTarget!==ae&&(this.currentTarget&&z.emit(`${this.currentTargetType}:${ma.POINTER_LEAVE}`,Object.assign(Object.assign({},Ee),{type:ma.POINTER_LEAVE,target:this.currentTarget,targetType:this.currentTargetType})),ae&&(Object.assign(Ee,{type:ma.POINTER_ENTER}),z.emit(`${re}:${ma.POINTER_ENTER}`,Ee))),this.currentTarget=ae,this.currentTargetType=re),se===ma.CLICK&&me===2||(z.emit(`${re}:${se}`,Ee),z.emit(se,Ee)),se===ma.CLICK&&fe===2&&(Object.assign(Ee,{type:ma.DBLCLICK}),z.emit(`${re}:${ma.DBLCLICK}`,Ee),z.emit(ma.DBLCLICK,Ee)),se===ma.POINTER_DOWN&&me===2&&(Object.assign(Ee,{type:ma.CONTEXT_MENU,preventDefault:()=>{var Oe;(Oe=ee.getContainer())===null||Oe===void 0||Oe.addEventListener(ma.CONTEXT_MENU,ke=>ke.preventDefault(),{once:!0})}}),z.emit(`${re}:${ma.CONTEXT_MENU}`,Ee),z.emit(ma.CONTEXT_MENU,Ee))},this.forwardContainerEvents=y=>{this.context.graph.emit(y.type,y)},this.forwardEvents(),this.setBehaviors(this.context.options.behaviors||[])}setBehaviors(a){this.setExtensions(a)}forwardEvents(){const a=this.context.canvas.getContainer();a&&[h0.KEY_DOWN,h0.KEY_UP].forEach(x=>{a.addEventListener(x,this.forwardContainerEvents)});const y=this.context.canvas.document;y&&[ma.CLICK,ma.DBLCLICK,ma.POINTER_OVER,ma.POINTER_LEAVE,ma.POINTER_ENTER,ma.POINTER_MOVE,ma.POINTER_OUT,ma.POINTER_DOWN,ma.POINTER_UP,ma.CONTEXT_MENU,ma.DRAG_START,ma.DRAG,ma.DRAG_END,ma.DRAG_ENTER,ma.DRAG_OVER,ma.DRAG_LEAVE,ma.DROP,ma.WHEEL].forEach(x=>{y.addEventListener(x,this.forwardCanvasEvents)})}destroy(){const a=this.context.canvas.getContainer();a&&[h0.KEY_DOWN,h0.KEY_UP].forEach(y=>{a.removeEventListener(y,this.forwardContainerEvents)}),this.context.canvas.document.removeAllEventListeners(),super.destroy()}}function hK(E,a){a===void 0&&(a=new Map);var y=[];if(Array.isArray(E))for(var x=0,b=E.length;xke.length!==We.length?!1:ke.every((je,Ke)=>je===We[Ke]),Oe=(ke,We)=>{const je=Object.keys(ke),Ke=Object.keys(We);return je.length!==Ke.length?!1:je.every(Ze=>ke[Ze]===We[Ze])};return!(!Oe(ee,me)||!Ee(z,fe)||!Ee(y,re)||!Oe(x,ae)||!Oe(b,se))}var gK=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b0}silence(a){this.isTraceless=!0,a(),this.isTraceless=!1}isCombo(a){return this.comboIds.has(a)||this.latestRemovedComboIds.has(a)}getData(){return{nodes:this.getNodeData(),edges:this.getEdgeData(),combos:this.getComboData()}}getNodeData(a){return this.model.getAllNodes().reduce((y,x)=>{const b=Tu(x);return this.isCombo(Lr(b))||(a===void 0||a.includes(Lr(b)))&&y.push(b),y},[])}getEdgeDatum(a){return Tu(this.model.getEdge(a))}getEdgeData(a){return this.model.getAllEdges().reduce((y,x)=>{const b=Tu(x);return(a===void 0||a.includes(Lr(b)))&&y.push(b),y},[])}getComboData(a){return this.model.getAllNodes().reduce((y,x)=>{const b=Tu(x);return this.isCombo(Lr(b))&&(a===void 0||a.includes(Lr(b)))&&y.push(b),y},[])}getRootsData(a=Kc){return this.model.getRoots(a).map(Tu)}getAncestorsData(a,y){const{model:x}=this;return!x.hasNode(a)||!x.hasTreeStructure(y)?[]:x.getAncestors(a,y).map(Tu)}getDescendantsData(a){const y=this.getElementDataById(a),x=[];return xg(y,b=>{b!==y&&x.push(b)},b=>this.getChildrenData(Lr(b)),"TB"),x}getParentData(a,y){const{model:x}=this;if(!y){Tc.warn("The hierarchy structure key is not specified");return}if(!x.hasNode(a)||!x.hasTreeStructure(y))return;const b=x.getParent(a,y);return b?Tu(b):void 0}getChildrenData(a){const y=this.getElementType(a)==="node"?Kc:vl,{model:x}=this;return!x.hasNode(a)||!x.hasTreeStructure(y)?[]:x.getChildren(a,y).map(Tu)}getElementsDataByType(a){return a==="node"?this.getNodeData():a==="edge"?this.getEdgeData():a==="combo"?this.getComboData():[]}getElementDataById(a){return this.getElementType(a)==="edge"?this.getEdgeDatum(a):this.getNodeLikeDatum(a)}getNodeLikeDatum(a){const y=this.model.getNode(a);return Tu(y)}getNodeLikeData(a){return this.model.getAllNodes().reduce((y,x)=>{const b=Tu(x);return a?a.includes(Lr(b))&&y.push(b):y.push(b),y},[])}getElementDataByState(a,y){return this.getElementsDataByType(a).filter(b=>{var z;return(z=b.states)===null||z===void 0?void 0:z.includes(y)})}getElementState(a){var y;return((y=this.getElementDataById(a))===null||y===void 0?void 0:y.states)||[]}hasNode(a){return this.model.hasNode(a)&&!this.isCombo(a)}hasEdge(a){return this.model.hasEdge(a)}hasCombo(a){return this.model.hasNode(a)&&this.isCombo(a)}getRelatedEdgesData(a,y="both"){return this.model.getRelatedEdges(a,y).map(Tu)}getNeighborNodesData(a){return this.model.getNeighbors(a).map(Tu)}setData(a){const{nodes:y=[],edges:x=[],combos:b=[]}=a,{nodes:z,edges:ee,combos:re}=this.getData(),ae=ph(z,y,me=>Lr(me),F0),se=ph(ee,x,me=>Lr(me),F0),fe=ph(re,b,me=>Lr(me),F0);this.batch(()=>{const me={nodes:ae.enter,edges:se.enter,combos:fe.enter};this.addData(me),this.computeZIndex(me,"add",!0);const Ee={nodes:ae.update,edges:se.update,combos:fe.update};this.updateData(Ee),this.computeZIndex(Ee,"update",!0);const Oe={nodes:ae.exit.map(Lr),edges:se.exit.map(Lr),combos:fe.exit.map(Lr)};this.removeData(Oe)})}addData(a){const{nodes:y,edges:x,combos:b}=a;this.batch(()=>{this.addComboData(b),this.addNodeData(y),this.addEdgeData(x)}),this.computeZIndex(a,"add")}addNodeData(a=[]){a.length&&(this.model.addNodes(a.map(y=>(this.pushChange({value:y,type:Pl.NodeAdded}),LS(y)))),this.updateNodeLikeHierarchy(a),this.computeZIndex({nodes:a},"add"))}addEdgeData(a=[]){a.length&&(this.model.addEdges(a.map(y=>(this.pushChange({value:y,type:Pl.EdgeAdded}),LS(y)))),this.computeZIndex({edges:a},"add"))}addComboData(a=[]){if(!a.length)return;const{model:y}=this;y.hasTreeStructure(vl)||y.attachTreeStructure(vl),y.addNodes(a.map(x=>(this.comboIds.add(Lr(x)),this.pushChange({value:x,type:Pl.ComboAdded}),LS(x)))),this.updateNodeLikeHierarchy(a),this.computeZIndex({combos:a},"add")}addChildrenData(a,y){const x=this.getNodeLikeDatum(a),b=y.map(Lr);this.addNodeData(y),this.updateNodeData([{id:a,children:[...x.children||[],...b]}]),this.addEdgeData(b.map(z=>({source:a,target:z})))}computeZIndex(a,y,x=!1){!x&&this.isBatching()||this.batch(()=>{const{nodes:b=[],edges:z=[],combos:ee=[]}=a;ee.forEach(re=>{var ae,se,fe;const me=Lr(re);if(y==="add"&&Wi((ae=re.style)===null||ae===void 0?void 0:ae.zIndex)||y==="update"&&!("combo"in re))return;const Ee=this.getParentData(me,vl),Oe=Ee?((fe=(se=Ee.style)===null||se===void 0?void 0:se.zIndex)!==null&&fe!==void 0?fe:0)+1:0;this.preventUpdateNodeLikeHierarchy(()=>{this.updateComboData([{id:me,style:{zIndex:Oe}}])})}),b.forEach(re=>{var ae,se,fe;const me=Lr(re);if(y==="add"&&Wi((ae=re.style)===null||ae===void 0?void 0:ae.zIndex)||y==="update"&&!("combo"in re)&&!("children"in re))return;let Ee=0;const Oe=this.getParentData(me,vl);if(Oe)Ee=(((se=Oe.style)===null||se===void 0?void 0:se.zIndex)||0)+1;else{const ke=this.getParentData(me,Kc);ke&&(Ee=((fe=ke==null?void 0:ke.style)===null||fe===void 0?void 0:fe.zIndex)||0)}this.preventUpdateNodeLikeHierarchy(()=>{this.updateNodeData([{id:me,style:{zIndex:Ee}}])})}),z.forEach(re=>{var ae,se,fe,me,Ee;if(Wi((ae=re.style)===null||ae===void 0?void 0:ae.zIndex))return;let{id:Oe,source:ke,target:We}=re;if(!Oe)Oe=Lr(re);else{const Ze=this.getEdgeDatum(Oe);ke=Ze.source,We=Ze.target}if(!ke||!We)return;const je=((fe=(se=this.getNodeLikeDatum(ke))===null||se===void 0?void 0:se.style)===null||fe===void 0?void 0:fe.zIndex)||0,Ke=((Ee=(me=this.getNodeLikeDatum(We))===null||me===void 0?void 0:me.style)===null||Ee===void 0?void 0:Ee.zIndex)||0;this.updateEdgeData([{id:Lr(re),style:{zIndex:Math.max(je,Ke)-1}}])})})}getFrontZIndex(a){var y;const x=this.getElementType(a),b=this.getElementDataById(a),z=this.getData();if(Object.assign(z,{[`${x}s`]:z[`${x}s`].filter(ee=>Lr(ee)!==a)}),x==="combo"&&!Oc(b)){const ee=new Set(this.getAncestorsData(a,vl).map(Lr));z.nodes=z.nodes.filter(re=>!ee.has(Lr(re))),z.combos=z.combos.filter(re=>!ee.has(Lr(re))),z.edges=z.edges.filter(({source:re,target:ae})=>!ee.has(re)&&!ee.has(ae))}return Math.max(((y=b.style)===null||y===void 0?void 0:y.zIndex)||0,0,...Object.values(z).flat().map(ee=>{var re;return(((re=ee==null?void 0:ee.style)===null||re===void 0?void 0:re.zIndex)||0)+1}))}updateNodeLikeHierarchy(a){if(!this.enableUpdateNodeLikeHierarchy)return;const{model:y}=this;a.forEach(x=>{const b=Lr(x),z=Mp(x);z!==void 0&&(y.hasTreeStructure(vl)||y.attachTreeStructure(vl),z===null&&this.refreshComboData(b),this.setParent(b,Mp(x),vl));const ee=x.children||[];if(ee.length){y.hasTreeStructure(Kc)||y.attachTreeStructure(Kc);const re=ee.filter(ae=>y.hasNode(ae));re.forEach(ae=>this.setParent(ae,b,Kc)),re.length!==ee.length&&this.updateNodeData([{id:b,children:re}])}})}preventUpdateNodeLikeHierarchy(a){this.enableUpdateNodeLikeHierarchy=!1,a(),this.enableUpdateNodeLikeHierarchy=!0}updateData(a){const{nodes:y,edges:x,combos:b}=a;this.batch(()=>{this.updateNodeData(y),this.updateComboData(b),this.updateEdgeData(x)}),this.computeZIndex(a,"update")}updateNodeData(a=[]){if(!a.length)return;const{model:y}=this;this.batch(()=>{const x=[];a.forEach(b=>{const z=Lr(b),ee=Tu(y.getNode(z));if(F0(ee,b))return;const re=Oh(ee,b);this.pushChange({value:re,original:ee,type:Pl.NodeUpdated}),y.mergeNodeData(z,re),x.push(re)}),this.updateNodeLikeHierarchy(x)}),this.computeZIndex({nodes:a},"update")}refreshData(){const{nodes:a,edges:y,combos:x}=this.getData();a.forEach(b=>{this.pushChange({value:b,original:b,type:Pl.NodeUpdated})}),y.forEach(b=>{this.pushChange({value:b,original:b,type:Pl.EdgeUpdated})}),x.forEach(b=>{this.pushChange({value:b,original:b,type:Pl.ComboUpdated})})}syncNodeLikeDatum(a){const{model:y}=this,x=Lr(a);if(!y.hasNode(x))return;const b=Tu(y.getNode(x)),z=Oh(b,a);y.mergeNodeData(x,z)}syncEdgeDatum(a){const{model:y}=this,x=Lr(a);if(!y.hasEdge(x))return;const b=Tu(y.getEdge(x)),z=Oh(b,a);y.mergeEdgeData(x,z)}updateEdgeData(a=[]){if(!a.length)return;const{model:y}=this;this.batch(()=>{a.forEach(x=>{const b=Lr(x),z=Tu(y.getEdge(b));if(F0(z,x))return;x.source&&z.source!==x.source&&y.updateEdgeSource(b,x.source),x.target&&z.target!==x.target&&y.updateEdgeTarget(b,x.target);const ee=Oh(z,x);this.pushChange({value:ee,original:z,type:Pl.EdgeUpdated}),y.mergeEdgeData(b,ee)})}),this.computeZIndex({edges:a},"update")}updateComboData(a=[]){if(!a.length)return;const{model:y}=this;y.batch(()=>{const x=[];a.forEach(b=>{const z=Lr(b),ee=Tu(y.getNode(z));if(F0(ee,b))return;const re=Oh(ee,b);this.pushChange({value:re,original:ee,type:Pl.ComboUpdated}),y.mergeNodeData(z,re),x.push(re)}),this.updateNodeLikeHierarchy(x)}),this.computeZIndex({combos:a},"update")}setParent(a,y,x,b=!0){if(a===y)return;const z=this.getNodeLikeDatum(a),ee=Mp(z);if(ee!==y&&x===vl){const re={id:a,combo:y};this.isCombo(a)?this.syncNodeLikeDatum(re):this.syncNodeLikeDatum(re)}this.model.setParent(a,y,x),b&&x===vl&&hK([ee,y]).forEach(re=>{re!==void 0&&this.refreshComboData(re)})}refreshComboData(a){const y=this.getComboData([a])[0],x=this.getAncestorsData(a,vl);y&&this.pushChange({value:y,original:y,type:Pl.ComboUpdated}),x.forEach(b=>{this.pushChange({value:b,original:b,type:Pl.ComboUpdated})})}getElementPosition(a){const y=this.getElementDataById(a);return Au(y)}translateNodeLikeBy(a,y){this.isCombo(a)?this.translateComboBy(a,y):this.translateNodeBy(a,y)}translateNodeLikeTo(a,y){this.isCombo(a)?this.translateComboTo(a,y):this.translateNodeTo(a,y)}translateNodeBy(a,y){const x=this.getElementPosition(a),b=es(x,[...y,0].slice(0,3));this.translateNodeTo(a,b)}translateNodeTo(a,y){const[x=0,b=0,z=0]=y;this.preventUpdateNodeLikeHierarchy(()=>{this.updateNodeData([{id:a,style:{x,y:b,z}}])})}translateComboBy(a,y){const[x=0,b=0,z=0]=y;if([x,b,z].some(isNaN)||[x,b,z].every(ae=>ae===0))return;const ee=this.getComboData([a])[0];if(!ee)return;const re=new Set;xg(ee,ae=>{const se=Lr(ae);if(re.has(se))return;re.add(se);const[fe,me,Ee]=Au(ae),Oe=Oh(ae,{style:{x:fe+x,y:me+b,z:Ee+z}});this.pushChange({value:Oe,original:ae,type:this.isCombo(se)?Pl.ComboUpdated:Pl.NodeUpdated}),this.model.mergeNodeData(se,Oe)},ae=>this.getChildrenData(Lr(ae)),"BT")}translateComboTo(a,y){var x;if(y.some(isNaN))return;const[b=0,z=0,ee=0]=y,re=(x=this.getComboData([a]))===null||x===void 0?void 0:x[0];if(!re)return;const[ae,se,fe]=Au(re),me=b-ae,Ee=z-se,Oe=ee-fe;xg(re,ke=>{const We=Lr(ke),[je,Ke,Ze]=Au(ke),Je=Oh(ke,{style:{x:je+me,y:Ke+Ee,z:Ze+Oe}});this.pushChange({value:Je,original:ke,type:this.isCombo(We)?Pl.ComboUpdated:Pl.NodeUpdated}),this.model.mergeNodeData(We,Je)},ke=>this.getChildrenData(Lr(ke)),"BT")}removeData(a){const{nodes:y,edges:x,combos:b}=a;this.batch(()=>{this.removeEdgeData(x),this.removeNodeData(y),this.removeComboData(b),this.latestRemovedComboIds=new Set(b)})}removeNodeData(a=[]){a.length&&this.batch(()=>{a.forEach(y=>{this.removeEdgeData(this.getRelatedEdgesData(y).map(Lr)),this.pushChange({value:this.getNodeData([y])[0],type:Pl.NodeRemoved}),this.removeNodeLikeHierarchy(y)}),this.model.removeNodes(a)})}removeEdgeData(a=[]){a.length&&(a.forEach(y=>this.pushChange({value:this.getEdgeData([y])[0],type:Pl.EdgeRemoved})),this.model.removeEdges(a))}removeComboData(a=[]){a.length&&this.batch(()=>{a.forEach(y=>{this.pushChange({value:this.getComboData([y])[0],type:Pl.ComboRemoved}),this.removeNodeLikeHierarchy(y),this.comboIds.delete(y)}),this.model.removeNodes(a)})}removeNodeLikeHierarchy(a){if(this.model.hasTreeStructure(vl)){const y=Mp(this.getNodeLikeDatum(a));this.setParent(a,void 0,vl,!1),this.model.getChildren(a,vl).forEach(x=>{const b=Tu(x),z=Lr(b);this.setParent(Lr(b),y,vl,!1);const ee=Oh(b,{id:Lr(b),combo:y});this.pushChange({value:ee,original:b,type:this.isCombo(z)?Pl.ComboUpdated:Pl.NodeUpdated}),this.model.mergeNodeData(Lr(b),ee)}),wo(y)||this.refreshComboData(y)}}getElementType(a){if(this.model.hasNode(a))return this.isCombo(a)?"combo":"node";if(this.model.hasEdge(a))return"edge";throw new Error(Nf(`Unknown element type of id: ${a}`))}destroy(){const{model:a}=this,y=a.getAllNodes(),x=a.getAllEdges();a.removeEdges(x.map(b=>b.id)),a.removeNodes(y.map(b=>b.id)),this.context={}}}var tm=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(fe){try{se(x.next(fe))}catch(me){ee(me)}}function ae(fe){try{se(x.throw(fe))}catch(me){ee(me)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})};class pK{constructor(a){this.elementMap={},this.shapeTypeMap={},this.paletteStyle={},this.defaultStyle={},this.stateStyle={},this.visibilityCache=new WeakMap,this.context=a}init(){this.initContainer()}initContainer(){if(!this.container||this.container.destroyed){const{canvas:a}=this.context;this.container=a.appendChild(new Eu({className:"elements"}))}}emit(a,y){y.silence||Su(this.context.graph,a)}forEachElementData(a){Ag.forEach(y=>{const x=this.context.model.getElementsDataByType(y);a(y,x)})}getElementType(a,y){var x;const{options:b,graph:z}=this.context,ee=((x=b[a])===null||x===void 0?void 0:x.type)||y.type;return ee?typeof ee=="string"?ee:ee.call(z,y):a==="edge"?"line":"circle"}getTheme(a){return o2(this.context.options)[a]||{}}getThemeStyle(a){return this.getTheme(a).style||{}}getThemeStateStyle(a,y){const{state:x={}}=this.getTheme(a);return Object.assign({},...y.map(b=>x[b]||{}))}computePaletteStyle(){const{options:a}=this.context;this.paletteStyle={},this.forEachElementData((y,x)=>{var b,z;const ee=Object.assign({},Ew((b=this.getTheme(y))===null||b===void 0?void 0:b.palette),Ew((z=a[y])===null||z===void 0?void 0:z.palette));ee!=null&&ee.field&&Object.assign(this.paletteStyle,iF(x,ee))})}getPaletteStyle(a,y){const x=this.paletteStyle[y];return x?a==="edge"?{stroke:x}:{fill:x}:{}}computeElementDefaultStyle(a,y){var x;const{options:b}=this.context,z=((x=b[a])===null||x===void 0?void 0:x.style)||{};"transform"in z&&Array.isArray(z.transform)&&(z.transform=[...z.transform]),this.defaultStyle[Lr(y.datum)]=yw(z,y)}computeElementsDefaultStyle(a){const{graph:y}=this.context;this.forEachElementData((x,b)=>{const z=b.length;for(let ee=0;eethis.getElementStateStyle(a,b,x)))}computeElementsStatesStyle(a){const{graph:y}=this.context;this.forEachElementData((x,b)=>{const z=b.length;for(let ee=0;eethis.elementMap[a])}getEdges(){return this.context.model.getEdgeData().map(a=>this.elementMap[Lr(a)])}getCombos(){return this.context.model.getComboData().map(({id:a})=>this.elementMap[a])}getElementComputedStyle(a,y){const x=Lr(y),b=this.getThemeStyle(a),z=this.getPaletteStyle(a,x),ee=y.style||{},re=this.getDefaultStyle(x),ae=this.getThemeStateStyle(a,this.getElementState(x)),se=this.getStateStyle(x),fe=Object.assign({},b,z,ee,re,ae,se);if(a==="combo"){const me=this.context.model.getChildrenData(x),Oe=!!fe.collapsed?[]:me.map(Lr).filter(ke=>this.getElement(ke));Object.assign(fe,{childrenNode:Oe,childrenData:me})}return fe}getDrawData(a){this.init();const y=this.computeChangesAndDrawData(a);if(!y)return null;const{type:x="draw",stage:b=x}=a;return this.markDestroyElement(y.drawData),this.computeStyle(b),{type:x,stage:b,data:y}}draw(a={animation:!0}){const y=this.getDrawData(a);if(!y)return;const{data:{drawData:{add:x,update:b,remove:z}}}=y;return this.destroyElements(z,a),this.createElements(x,a),this.updateElements(b,a),this.setAnimationTask(a,y)}preLayoutDraw(){return tm(this,arguments,void 0,function*(a={animation:!0}){var y,x;const b=this.getDrawData(a);if(!b)return;const{data:{drawData:z}}=b;yield(x=(y=this.context.layout)===null||y===void 0?void 0:y.preLayout)===null||x===void 0?void 0:x.call(y,z);const{add:ee,update:re,remove:ae}=z;return this.destroyElements(ae,a),this.createElements(ee,a),this.updateElements(re,a),this.setAnimationTask(a,b)})}setAnimationTask(a,y){const{animation:x,silence:b}=a,{data:{dataChanges:z,drawData:ee},stage:re,type:ae}=y;return this.context.animation.animate(x,b?{}:{before:()=>this.emit(new vu(si.BEFORE_DRAW,{dataChanges:z,animation:x,stage:re,render:ae==="render"}),a),beforeAnimate:se=>this.emit(new xd(si.BEFORE_ANIMATE,Ic.DRAW,se,ee),a),afterAnimate:se=>this.emit(new xd(si.AFTER_ANIMATE,Ic.DRAW,se,ee),a),after:()=>this.emit(new vu(si.AFTER_DRAW,{dataChanges:z,animation:x,stage:re,render:ae==="render",firstRender:this.context.graph.rendered===!1}),a)})}computeChangesAndDrawData(a){const{model:y}=this.context,x=y.getChanges(),b=zx(x);if(b.length===0)return null;const{NodeAdded:z=[],NodeUpdated:ee=[],NodeRemoved:re=[],EdgeAdded:ae=[],EdgeUpdated:se=[],EdgeRemoved:fe=[],ComboAdded:me=[],ComboUpdated:Ee=[],ComboRemoved:Oe=[]}=hp(b,Ke=>Ke.type),ke=Ke=>new Map(Ke.map(Ze=>{const Je=Ze.value;return[Lr(Je),Je]})),We={add:{nodes:ke(z),edges:ke(ae),combos:ke(me)},update:{nodes:ke(ee),edges:ke(se),combos:ke(Ee)},remove:{nodes:ke(re),edges:ke(fe),combos:ke(Oe)}},je=this.transformData(We,a);return y.clearChanges(),{dataChanges:x,drawData:je}}transformData(a,y){const x=this.context.transform.getTransformInstance();return Object.values(x).reduce((b,z)=>z.beforeDraw(b,y),a)}createElement(a,y,x){var b;const z=Lr(y);if(this.getElement(z))return;const re=this.getElementType(a,y),ae=this.getElementComputedStyle(a,y),se=Bf(a,re);if(!se)return Tc.warn(`The element ${re} of ${a} is not registered.`);this.emit(new N0(si.BEFORE_ELEMENT_CREATE,a,y),x);const fe=this.container.appendChild(new se({id:z,context:this.context,style:ae}));this.shapeTypeMap[z]=re,this.elementMap[z]=fe;const{stage:me="enter"}=x;(b=this.context.animation)===null||b===void 0||b.add({element:fe,elementType:a,stage:me,originalStyle:Object.assign({},fe.attributes),updatedStyle:ae},{after:()=>{var Ee;this.emit(new N0(si.AFTER_ELEMENT_CREATE,a,y),x),(Ee=fe.onCreate)===null||Ee===void 0||Ee.call(fe)}})}createElements(a,y){const{nodes:x,edges:b,combos:z}=a;[["node",x],["combo",z],["edge",b]].forEach(([re,ae])=>{ae.forEach(se=>this.createElement(re,se,y))})}getUpdateStageStyle(a,y,x){const{stage:b="update"}=x;if(b==="translate")if(a==="node"||a==="combo"){const{style:{x:z=0,y:ee=0,z:re=0}={}}=y;return{x:z,y:ee,z:re}}else return{};return this.getElementComputedStyle(a,y)}updateElement(a,y,x){var b;const z=Lr(y),{stage:ee="update"}=x,re=this.getElement(z);if(!re)return()=>null;this.emit(new N0(si.BEFORE_ELEMENT_UPDATE,a,y),x);const ae=this.getElementType(a,y),se=this.getUpdateStageStyle(a,y,x);this.shapeTypeMap[z]!==ae&&(re.destroy(),delete this.shapeTypeMap[z],delete this.elementMap[z],this.createElement(a,y,{animation:!1,silence:!0}));const fe=ee!=="visibility"?ee:se.visibility==="hidden"?"hide":"show";fe==="hide"&&delete se.visibility,(b=this.context.animation)===null||b===void 0||b.add({element:re,elementType:a,stage:fe,originalStyle:Object.assign({},re.attributes),updatedStyle:se},{before:()=>{const me=this.elementMap[z];ee!=="collapse"&&ox(me,se),ee==="visibility"&&(uK(me,"opacity")||lK(me,"opacity"),this.visibilityCache.set(me,fe==="show"?"visible":"hidden"),fe==="show"&&yg(me,"visible"))},after:()=>{var me;const Ee=this.elementMap[z];ee==="collapse"&&ox(Ee,se),fe==="hide"&&yg(Ee,this.visibilityCache.get(Ee)),this.emit(new N0(si.AFTER_ELEMENT_UPDATE,a,y),x),(me=Ee.onUpdate)===null||me===void 0||me.call(Ee)}})}updateElements(a,y){const{nodes:x,edges:b,combos:z}=a;[["node",x],["combo",z],["edge",b]].forEach(([re,ae])=>{ae.forEach(se=>this.updateElement(re,se,y))})}markDestroyElement(a){Object.values(a.remove).forEach(y=>{y.forEach(x=>{const b=Lr(x),z=this.getElement(b);z&&p7(z)})})}destroyElement(a,y,x){var b;const{stage:z="exit"}=x,ee=Lr(y),re=this.elementMap[ee];if(!re)return()=>null;this.emit(new N0(si.BEFORE_ELEMENT_DESTROY,a,y),x),(b=this.context.animation)===null||b===void 0||b.add({element:re,elementType:a,stage:z,originalStyle:Object.assign({},re.attributes),updatedStyle:{}},{after:()=>{var ae;this.clearElement(ee),re.destroy(),(ae=re.onDestroy)===null||ae===void 0||ae.call(re),this.emit(new N0(si.AFTER_ELEMENT_DESTROY,a,y),x)}})}destroyElements(a,y){const{nodes:x,edges:b,combos:z}=a;[["combo",z],["edge",b],["node",x]].forEach(([re,ae])=>{ae.forEach(se=>this.destroyElement(re,se,y))})}clearElement(a){delete this.paletteStyle[a],delete this.defaultStyle[a],delete this.stateStyle[a],delete this.elementMap[a],delete this.shapeTypeMap[a]}alignLayoutResultToElement(a,y){var x,b;const z=(x=a.nodes)===null||x===void 0?void 0:x.find(ee=>Lr(ee)===y);if(z){const ee=Au(this.context.model.getNodeLikeDatum(y)),re=Au(z),ae=fl(ee,re);(b=a.nodes)===null||b===void 0||b.forEach(se=>{var fe,me,Ee;!((fe=se.style)===null||fe===void 0)&&fe.x&&(se.style.x+=ae[0]),!((me=se.style)===null||me===void 0)&&me.y&&(se.style.y+=ae[1]),!((Ee=se.style)===null||Ee===void 0)&&Ee.z&&(se.style.z+=ae[2]||0)})}}collapseNode(a,y){return tm(this,void 0,void 0,function*(){var x;const{animation:b}=y,{model:z}=this.context,ee=this.computeChangesAndDrawData({stage:"collapse",animation:b});if(!ee)return;const{drawData:re}=ee,{add:ae,remove:se,update:fe}=re;this.markDestroyElement(re);const me={animation:b,stage:"collapse",data:re};this.destroyElements(se,me),this.createElements(ae,me),this.updateElements(fe,me),yield(x=this.context.animation.animate(b,{beforeAnimate:Ee=>this.emit(new xd(si.BEFORE_ANIMATE,Ic.COLLAPSE,Ee,re),me),afterAnimate:Ee=>this.emit(new xd(si.AFTER_ANIMATE,Ic.COLLAPSE,Ee,re),me)},{collapse:{target:a,descendants:Array.from(se.nodes).map(([,Ee])=>Lr(Ee)),position:Au(fe.nodes.get(a))}}))===null||x===void 0?void 0:x.finished})}expandNode(a,y){return tm(this,void 0,void 0,function*(){var x;const{model:b,layout:z}=this.context,{animation:ee,align:re}=y,ae=Au(b.getNodeData([a])[0]),se=this.computeChangesAndDrawData({stage:"expand",animation:ee});if(this.createElements(se.drawData.add,{animation:!1,stage:"expand",target:a}),this.context.animation.clear(),this.computeStyle("expand"),!se)return;const{drawData:fe}=se,{update:me,add:Ee}=fe,Oe={animation:ee,stage:"expand",data:fe};Ee.edges.forEach(ke=>me.edges.set(Lr(ke),ke)),Ee.nodes.forEach(ke=>me.nodes.set(Lr(ke),ke)),this.updateElements(me,Oe),yield(x=this.context.animation.animate(ee,{beforeAnimate:ke=>this.emit(new xd(si.BEFORE_ANIMATE,Ic.EXPAND,ke,fe),Oe),afterAnimate:ke=>this.emit(new xd(si.AFTER_ANIMATE,Ic.EXPAND,ke,fe),Oe)},{expand:{target:a,descendants:Array.from(Ee.nodes).map(([,ke])=>Lr(ke)),position:ae}}))===null||x===void 0?void 0:x.finished})}collapseCombo(a,y){return tm(this,void 0,void 0,function*(){var x;const{model:b,element:z}=this.context;if(b.getAncestorsData(a,vl).some(We=>Oc(We)))return;const ee=z.getElement(a),re=ee.getComboPosition(Object.assign(Object.assign({},ee.attributes),{collapsed:!0})),ae=this.computeChangesAndDrawData({stage:"collapse",animation:y});if(!ae)return;const{dataChanges:se,drawData:fe}=ae;this.markDestroyElement(fe);const{update:me,remove:Ee}=fe,Oe={animation:y,stage:"collapse",data:fe};this.destroyElements(Ee,Oe),this.updateElements(me,Oe);const ke=We=>Array.from(We).map(([,je])=>Lr(je));yield(x=this.context.animation.animate(y,{before:()=>this.emit(new vu(si.BEFORE_DRAW,{dataChanges:se,animation:y}),Oe),beforeAnimate:We=>this.emit(new xd(si.BEFORE_ANIMATE,Ic.COLLAPSE,We,fe),Oe),afterAnimate:We=>this.emit(new xd(si.AFTER_ANIMATE,Ic.COLLAPSE,We,fe),Oe),after:()=>this.emit(new vu(si.AFTER_DRAW,{dataChanges:se,animation:y}),Oe)},{collapse:{target:a,descendants:[...ke(Ee.nodes),...ke(Ee.combos)],position:re}}))===null||x===void 0?void 0:x.finished})}expandCombo(a,y){return tm(this,void 0,void 0,function*(){var x;const{model:b}=this.context,z=Au(b.getComboData([a])[0]);this.computeStyle("expand");const ee=this.computeChangesAndDrawData({stage:"expand",animation:y});if(!ee)return;const{dataChanges:re,drawData:ae}=ee,{add:se,update:fe}=ae,me={animation:y,stage:"expand",data:ae,target:a};this.createElements(se,me),this.updateElements(fe,me);const Ee=Oe=>Array.from(Oe).map(([,ke])=>Lr(ke));yield(x=this.context.animation.animate(y,{before:()=>this.emit(new vu(si.BEFORE_DRAW,{dataChanges:re,animation:y}),me),beforeAnimate:Oe=>this.emit(new xd(si.BEFORE_ANIMATE,Ic.EXPAND,Oe,ae),me),afterAnimate:Oe=>this.emit(new xd(si.AFTER_ANIMATE,Ic.EXPAND,Oe,ae),me),after:()=>this.emit(new vu(si.AFTER_DRAW,{dataChanges:re,animation:y}),me)},{expand:{target:a,descendants:[...Ee(se.nodes),...Ee(se.combos)],position:z}}))===null||x===void 0?void 0:x.finished})}clear(){this.container.destroy(),this.initContainer(),this.elementMap={},this.shapeTypeMap={},this.defaultStyle={},this.stateStyle={},this.paletteStyle={}}destroy(){this.clear(),this.container.destroy(),this.context={}}}const OI=Symbol("Comlink.proxy"),yK=Symbol("Comlink.endpoint"),LI=Symbol("Comlink.releaseProxy"),BS=Symbol("Comlink.finalizer"),C1=Symbol("Comlink.thrown"),BI=E=>typeof E=="object"&&E!==null||typeof E=="function",EK={canHandle:E=>BI(E)&&E[OI],serialize(E){const{port1:a,port2:y}=new MessageChannel;return RI(E,a),[y,[y]]},deserialize(E){return E.start(),kI(E)}},AK={canHandle:E=>BI(E)&&C1 in E,serialize({value:E}){let a;return E instanceof Error?a={isError:!0,value:{message:E.message,name:E.name,stack:E.stack}}:a={isError:!1,value:E},[a,[]]},deserialize(E){throw E.isError?Object.assign(new Error(E.value.message),E.value):E.value}},NI=new Map([["proxy",EK],["throw",AK]]);function xK(E,a){for(const y of E)if(a===y||y==="*"||y instanceof RegExp&&y.test(a))return!0;return!1}function RI(E,a=globalThis,y=["*"]){a.addEventListener("message",function x(b){if(!b||!b.data)return;if(!xK(y,b.origin)){console.warn(`Invalid origin '${b.origin}' for comlink proxy`);return}const{id:z,type:ee,path:re}=Object.assign({path:[]},b.data),ae=(b.data.argumentList||[]).map(_g);let se;try{const fe=re.slice(0,-1).reduce((Ee,Oe)=>Ee[Oe],E),me=re.reduce((Ee,Oe)=>Ee[Oe],E);switch(ee){case"GET":se=me;break;case"SET":fe[re.slice(-1)[0]]=_g(b.data.value),se=!0;break;case"APPLY":se=me.apply(fe,ae);break;case"CONSTRUCT":{const Ee=new me(...ae);se=MK(Ee)}break;case"ENDPOINT":{const{port1:Ee,port2:Oe}=new MessageChannel;RI(E,Oe),se=wK(Ee,[Ee])}break;case"RELEASE":se=void 0;break;default:return}}catch(fe){se={value:fe,[C1]:0}}Promise.resolve(se).catch(fe=>({value:fe,[C1]:0})).then(fe=>{const[me,Ee]=D1(fe);a.postMessage(Object.assign(Object.assign({},me),{id:z}),Ee),ee==="RELEASE"&&(a.removeEventListener("message",x),FI(a),BS in E&&typeof E[BS]=="function"&&E[BS]())}).catch(fe=>{const[me,Ee]=D1({value:new TypeError("Unserializable return value"),[C1]:0});a.postMessage(Object.assign(Object.assign({},me),{id:z}),Ee)})}),a.start&&a.start()}function SK(E){return E.constructor.name==="MessagePort"}function FI(E){SK(E)&&E.close()}function kI(E,a){const y=new Map;return E.addEventListener("message",function(b){const{data:z}=b;if(!z||!z.id)return;const ee=y.get(z.id);if(ee)try{ee(z)}finally{y.delete(z.id)}}),NS(E,y,[],a)}function P1(E){if(E)throw new Error("Proxy has been released and is not useable")}function _I(E){return k0(E,new Map,{type:"RELEASE"}).then(()=>{FI(E)})}const w1=new WeakMap,M1="FinalizationRegistry"in globalThis&&new FinalizationRegistry(E=>{const a=(w1.get(E)||0)-1;w1.set(E,a),a===0&&_I(E)});function bK(E,a){const y=(w1.get(a)||0)+1;w1.set(a,y),M1&&M1.register(E,a,E)}function CK(E){M1&&M1.unregister(E)}function NS(E,a,y=[],x=function(){}){let b=!1;const z=new Proxy(x,{get(ee,re){if(P1(b),re===LI)return()=>{CK(z),_I(E),a.clear(),b=!0};if(re==="then"){if(y.length===0)return{then:()=>z};const ae=k0(E,a,{type:"GET",path:y.map(se=>se.toString())}).then(_g);return ae.then.bind(ae)}return NS(E,a,[...y,re])},set(ee,re,ae){P1(b);const[se,fe]=D1(ae);return k0(E,a,{type:"SET",path:[...y,re].map(me=>me.toString()),value:se},fe).then(_g)},apply(ee,re,ae){P1(b);const se=y[y.length-1];if(se===yK)return k0(E,a,{type:"ENDPOINT"}).then(_g);if(se==="bind")return NS(E,a,y.slice(0,-1));const[fe,me]=zI(ae);return k0(E,a,{type:"APPLY",path:y.map(Ee=>Ee.toString()),argumentList:fe},me).then(_g)},construct(ee,re){P1(b);const[ae,se]=zI(re);return k0(E,a,{type:"CONSTRUCT",path:y.map(fe=>fe.toString()),argumentList:ae},se).then(_g)}});return bK(z,E),z}function PK(E){return Array.prototype.concat.apply([],E)}function zI(E){const a=E.map(D1);return[a.map(y=>y[0]),PK(a.map(y=>y[1]))]}const UI=new WeakMap;function wK(E,a){return UI.set(E,a),E}function MK(E){return Object.assign(E,{[OI]:!0})}function Vee(E,a=globalThis,y="*"){return{postMessage:(x,b)=>E.postMessage(x,y,b),addEventListener:a.addEventListener.bind(a),removeEventListener:a.removeEventListener.bind(a)}}function D1(E){for(const[a,y]of NI)if(y.canHandle(E)){const[x,b]=y.serialize(E);return[{type:"HANDLER",name:a,value:x},b]}return[{type:"RAW",value:E},UI.get(E)||[]]}function _g(E){switch(E.type){case"HANDLER":return NI.get(E.name).deserialize(E.value);case"RAW":return E.value}}function k0(E,a,y,x){return new Promise(b=>{const z=DK();a.set(z,b),E.start&&E.start(),E.postMessage(Object.assign({id:z},y),x)})}function DK(){return new Array(4).fill(0).map(()=>Math.floor(Math.random()*Number.MAX_SAFE_INTEGER).toString(16)).join("-")}class IK extends cy{constructor(a,y,x){super(),this.graph=a,this.layout=y,this.options=x,this.spawnWorker()}spawnWorker(){this.proxy=kI(new Worker(new URL(Ie.p+Ie.u(8954),Ie.b),{type:void 0})),this.running&&(this.running=!1,this.execute())}execute(){var a;return(0,Bt.mG)(this,void 0,void 0,function*(){if(this.running)return this;this.running=!0;const y=this.layout.options,{onTick:x}=y,b=(0,Bt._T)(y,["onTick"]),z={};Object.keys(b).forEach(se=>{$i(b[se])||(z[se]=b[se])});const ee={layout:{id:this.layout.id,options:z,iterations:(a=this.options)===null||a===void 0?void 0:a.iterations},nodes:this.graph.getAllNodes(),edges:this.graph.getAllEdges()},re=new Float32Array([0]),[ae]=yield this.proxy.calculateLayout(ee,[re]);return ae})}stop(){return this.running=!1,this.proxy.stopLayout(),this}kill(){this.proxy[LI]()}isRunning(){return this.running}}var _0=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(fe){try{se(x.next(fe))}catch(me){ee(me)}}function ae(fe){try{se(x.throw(fe))}catch(me){ee(me)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})},TK=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b{const me=Lr(fe),Ee=ae.nodes.get(me);re.syncNodeLikeDatum(fe),Ee&&Object.assign(Ee.style,fe.style)}),(b=se==null?void 0:se.edges)===null||b===void 0||b.forEach(fe=>{const me=Lr(fe),Ee=ae.edges.get(me);re.syncEdgeDatum(fe),Ee&&Object.assign(Ee.style,fe.style)}),(z=se==null?void 0:se.combos)===null||z===void 0||z.forEach(fe=>{const me=Lr(fe),Ee=ae.combos.get(me);re.syncNodeLikeDatum(fe),Ee&&Object.assign(Ee.style,fe.style)}),Su(ee,new vu(si.AFTER_LAYOUT,{type:"pre"})),this.transformDataAfterLayout("pre",a)})}postLayout(){return _0(this,arguments,void 0,function*(a=this.options){if(!a)return;const y=Array.isArray(a)?a:[a],{graph:x}=this.context;Su(x,new vu(si.BEFORE_LAYOUT,{type:"post"}));for(let b=0;bb.afterLayout(a,y))}simulate(){return _0(this,void 0,void 0,function*(){if(!this.options)return{};const a=Array.isArray(this.options)?this.options:[this.options];let y={};for(let x=0;x{this.updateElementPosition(se,!1)}}):(re.execute(a),re.stop(),re.tick(ee));const ae=yield re.execute(a);if(b){const se=this.updateElementPosition(ae,b);yield se==null?void 0:se.finished}return ae})}treeLayout(a,y,x){return _0(this,void 0,void 0,function*(){const{type:b,animation:z}=y,ee=Bf("layout",b);if(!ee)return{};const{nodes:re=[],edges:ae=[]}=a,se=new iu({nodes:re.map(ke=>({id:Lr(ke),data:ke.data||{}})),edges:ae.map(ke=>({id:Lr(ke),source:ke.source,target:ke.target,data:ke.data||{}}))});vK(se);const fe={nodes:[],edges:[]},me={nodes:[],edges:[]};se.getRoots(Kc).forEach(ke=>{xg(ke,Je=>{Je.children=se.getSuccessors(Je.id)},Je=>se.getSuccessors(Je.id),"TB");const We=ee(ke,y),{x:je,y:Ke,z:Ze=0}=We;xg(We,Je=>{const{id:tt,x:st,y:gt,z:mt=0}=Je;fe.nodes.push({id:tt,style:{x:je,y:Ke,z:Ze}}),me.nodes.push({id:tt,style:{x:st,y:gt,z:mt}})},Je=>Je.children,"TB")});const Oe=this.inferTreeLayoutOffset(me);if(WI(me,Oe),z){WI(fe,Oe),this.updateElementPosition(fe,!1);const ke=this.updateElementPosition(me,z);yield ke==null?void 0:ke.finished}return me})}inferTreeLayoutOffset(a){var y;let[x,b]=[1/0,-1/0],[z,ee]=[1/0,-1/0];(y=a.nodes)===null||y===void 0||y.forEach(We=>{const{x:je=0,y:Ke=0}=We.style||{};x=Math.min(x,je),b=Math.max(b,je),z=Math.min(z,Ke),ee=Math.max(ee,Ke)});const{canvas:re}=this.context,ae=re.getSize(),[se,fe]=re.getCanvasByViewport([0,0]),[me,Ee]=re.getCanvasByViewport(ae);if(x>=se&&b<=me&&z>=fe&&ee<=Ee)return[0,0];const Oe=(se+me)/2,ke=(fe+Ee)/2;return[Oe-(x+b)/2,ke-(z+ee)/2]}stopLayout(){this.instance&&Px(this.instance)&&(this.instance.stop(),this.instance=void 0),this.supervisor&&(this.supervisor.stop(),this.supervisor=void 0),this.animationResult&&(this.animationResult.finish(),this.animationResult=void 0)}getLayoutData(a){const{nodeFilter:y=()=>!0,comboFilter:x=()=>!0,preLayout:b=!1,isLayoutInvisibleNodes:z=!1}=a,{nodes:ee,edges:re,combos:ae}=this.context.model.getData(),{element:se,model:fe}=this.context,me=Ke=>se.getElement(Ke),Ee=b?Ke=>{var Ze;return!z&&(((Ze=Ke.style)===null||Ze===void 0?void 0:Ze.visibility)==="hidden"||fe.getAncestorsData(Ke.id,Kc).some(Oc)||fe.getAncestorsData(Ke.id,vl).some(Oc))?!1:y(Ke)}:Ke=>{const Ze=Lr(Ke),Je=me(Ze);return!Je||Bv(Je)?!1:y(Ke)},Oe=ee.filter(Ee),ke=ae.filter(x),We=new Map(Oe.map(Ke=>[Lr(Ke),Ke]));ke.forEach(Ke=>We.set(Lr(Ke),Ke));const je=re.filter(({source:Ke,target:Ze})=>We.has(Ke)&&We.has(Ze));return{nodes:Oe,edges:je,combos:ke}}initGraphLayout(a){var y;const{element:x,viewport:b}=this.context,{type:z,enableWorker:ee,animation:re,iterations:ae}=a,se=TK(a,["type","enableWorker","animation","iterations"]),[fe,me]=b.getCanvasSize(),Ee=[fe/2,me/2],Oe=(y=a==null?void 0:a.nodeSize)!==null&&y!==void 0?y:Ze=>{const Je=x==null?void 0:x.getElement(Ze.id);return Je?Je.attributes.size:x==null?void 0:x.getElementComputedStyle("node",Ze).size},ke=Bf("layout",z);if(!ke)return Tc.warn(`The layout of ${z} is not registered.`);const We=Object.getPrototypeOf(ke.prototype)===fy.prototype?ke:I7(ke,this.context),je=new We(this.context),Ke={nodeSize:Oe,width:fe,height:me,center:Ee};switch(je.id){case"d3-force":case"d3-force-3d":Object.assign(Ke,{center:{x:fe/2,y:me/2,z:0}});break;default:break}return Uu(je.options,Ke,se),je}updateElementPosition(a,y){const{model:x,element:b}=this.context;return b?(x.updateData(a),b.draw({animation:y,silence:!0})):null}destroy(){var a;this.stopLayout(),this.context={},(a=this.supervisor)===null||a===void 0||a.kill(),this.supervisor=void 0,this.instance=void 0,this.instances=[],this.animationResult=void 0}}const WI=(E,a)=>{var y;const[x,b]=a;(y=E.nodes)===null||y===void 0||y.forEach(z=>{if(z.style){const{x:ee=0,y:re=0}=z.style;z.style.x=ee+x,z.style.y=re+b}else z.style={x,y:b}})};function LK(E){return[BK].reduce((y,x)=>x(y),E)}function BK(E){return!E.layout||Array.isArray(E.layout)||"preLayout"in E.layout||["antv-dagre","combo-combined","compact-box","circular","concentric","dagre","fishbone","grid","indented","mds","radial","random","snake","dendrogram","mindmap"].includes(E.layout.type)&&(E.layout.preLayout=!0),E}class NK extends TA{constructor(a){super(a),this.category="plugin",this.setPlugins(this.context.options.plugins||[])}setPlugins(a){this.setExtensions(a)}getPluginInstance(a){const y=this.extensionMap[a];if(y)return y;Tc.warn(`Cannot find the plugin ${a}, will try to find it by type.`);const x=this.extensions.find(b=>b.type===a);if(x)return this.extensionMap[x.key]}}const I1=["update-related-edges","collapse-expand-node","collapse-expand-combo","get-edge-actual-ends","arrange-draw-order"];class RK extends TA{constructor(a){super(a),this.category="transform",this.setTransforms(this.context.options.transforms||[])}getTransforms(){}setTransforms(a){this.setExtensions([...I1.slice(0,I1.length-1),...a,I1[I1.length-1]])}getTransformInstance(a){return a?this.extensionMap[a]:this.extensionMap}}var nm=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(fe){try{se(x.next(fe))}catch(me){ee(me)}}function ae(fe){try{se(x.throw(fe))}catch(me){ee(me)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})};class FK{get padding(){return Zc(this.context.options.padding)}get paddingOffset(){const[a,y,x,b]=this.padding,[z,ee,re]=[(b-y)/2,(a-x)/2,0];return[z,ee,re]}constructor(a){this.landmarkCounter=0,this.context=a;const[y,x]=this.paddingOffset,{zoom:b,rotation:z,x:ee=y,y:re=x}=a.options;this.transform({mode:"absolute",scale:b,translate:[ee,re],rotate:z},!1)}get camera(){const{canvas:a}=this.context;return new Proxy(a.getCamera(),{get:(y,x)=>{const z=Object.entries(a.getLayers()).filter(([re])=>!["main"].includes(re)).map(([,re])=>re.getCamera()),ee=y[x];if(typeof ee=="function")return(...re)=>{const ae=ee.apply(y,re);return z.forEach(se=>{se[x].apply(se,re)}),ae}}})}createLandmark(a){return this.camera.createLandmark(`landmark-${this.landmarkCounter++}`,a)}getAnimation(a){const y=s2(this.context.options,a);return y?Cg(Object.assign({},y),["easing","duration"]):!1}getCanvasSize(){const{canvas:a}=this.context,{width:y=0,height:x=0}=a.getConfig();return[y,x]}getCanvasCenter(){const{canvas:a}=this.context,{width:y=0,height:x=0}=a.getConfig();return[y/2,x/2,0]}getViewportCenter(){const[a,y]=this.camera.getPosition();return[a,y,0]}getGraphCenter(){return this.context.graph.getViewportByCanvas(this.getCanvasCenter())}getZoom(){return this.camera.getZoom()}getRotation(){return this.camera.getRoll()}getTranslateOptions(a){const{camera:y}=this,{mode:x,translate:b=[]}=a,z=this.getZoom(),ee=y.getPosition(),re=y.getFocalPoint(),[ae,se]=this.getCanvasCenter(),[fe=0,me=0,Ee=0]=b,Oe=Fd([-fe,-me,-Ee],z);return x==="relative"?{position:es(ee,Oe),focalPoint:es(re,Oe)}:{position:es([ae,se,ee[2]],Oe),focalPoint:es([ae,se,re[2]],Oe)}}getRotateOptions(a){const{mode:y,rotate:x=0}=a;return{roll:y==="relative"?this.camera.getRoll()+x:x}}getZoomOptions(a){const{zoomRange:y}=this.context.options,x=this.camera.getZoom(),{mode:b,scale:z=1}=a;return Nl(b==="relative"?x*z:z,...y)}transform(a,y){return nm(this,void 0,void 0,function*(){const{graph:x}=this.context,{translate:b,rotate:z,scale:ee,origin:re}=a;this.cancelAnimation();const ae=this.getAnimation(y);if(Su(x,new S1(si.BEFORE_TRANSFORM,a)),!z&&ee&&!b&&re&&!ae){this.camera.setZoomByViewportPoint(this.getZoomOptions(a),re),Su(x,new S1(si.AFTER_TRANSFORM,a));return}const se={};if(b&&Object.assign(se,this.getTranslateOptions(a)),Wi(z)&&Object.assign(se,this.getRotateOptions(a)),Wi(ee)&&Object.assign(se,{zoom:this.getZoomOptions(a)}),ae)return Su(x,new xd(si.BEFORE_ANIMATE,Ic.TRANSFORM,null,a)),new Promise(fe=>{this.transformResolver=fe,this.camera.gotoLandmark(this.createLandmark(se),Object.assign(Object.assign({},ae),{onfinish:()=>{Su(x,new xd(si.AFTER_ANIMATE,Ic.TRANSFORM,null,a)),Su(x,new S1(si.AFTER_TRANSFORM,a)),this.transformResolver=void 0,fe()}}))});this.camera.gotoLandmark(this.createLandmark(se),{duration:0}),Su(x,new S1(si.AFTER_TRANSFORM,a))})}fitView(a,y){return nm(this,void 0,void 0,function*(){const[x,b,z,ee]=this.padding,{when:re="always",direction:ae="both"}=a||{},[se,fe]=this.context.canvas.getSize(),me=se-ee-b,Ee=fe-x-z,Oe=this.context.canvas.getBounds(),ke=this.getBBoxInViewport(Oe),[We,je]=gh(ke),Ke=ae==="x"&&We>=me||ae==="y"&&je>=Ee||ae==="both"&&We>=me&&je>=Ee;if(re==="overflow"&&!Ke)return yield this.fitCenter({animation:y});const Ze=me/We,Je=Ee/je,tt=ae==="x"?Ze:ae==="y"?Je:Math.min(Ze,Je),st=this.getAnimation(y);Number.isFinite(tt)&&(yield this.transform({mode:"relative",scale:tt,translate:es(fl(this.getCanvasCenter(),this.getBBoxInViewport(Oe).center),Fd(this.paddingOffset,tt))},st))})}fitCenter(a){return nm(this,void 0,void 0,function*(){const y=this.context.canvas.getBounds();yield this.focus(y,a)})}focusElements(a){return nm(this,arguments,void 0,function*(y,x={}){const{element:b}=this.context;if(!b)return;const z=re=>x.shapes?re.getShape(x.shapes).getRenderBounds():re.getRenderBounds(),ee=yv(y.map(re=>z(b.getElement(re))));yield this.focus(ee,x)})}focus(a,y){return nm(this,void 0,void 0,function*(){const x=this.context.graph.getViewportByCanvas(a.center),b=y.position||this.getCanvasCenter(),z=fl(b,x);yield this.transform({mode:"relative",translate:es(z,this.paddingOffset)},y.animation)})}getBBoxInViewport(a){const{min:y,max:x}=a,{graph:b}=this.context,[z,ee]=b.getViewportByCanvas(y),[re,ae]=b.getViewportByCanvas(x),se=new pl;return se.setMinMax([z,ee,0],[re,ae,0]),se}isInViewport(a,y=!1,x=0){const{graph:b}=this.context,z=this.getCanvasSize(),[ee,re]=b.getCanvasByViewport([0,0]),[ae,se]=b.getCanvasByViewport(z);let fe=new pl;return fe.setMinMax([ee,re,0],[ae,se,0]),x&&(fe=mh(fe,x)),v0(a)?Bd(a,fe):y?XR(a,fe):fe.intersects(a)}cancelAnimation(){var a,y;!((a=this.camera.landmarks)===null||a===void 0)&&a.length&&this.camera.cancelLandmarkAnimation(),(y=this.transformResolver)===null||y===void 0||y.call(this)}}var Al=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(fe){try{se(x.next(fe))}catch(me){ee(me)}}function ae(fe){try{se(x.throw(fe))}catch(me){ee(me)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})};class z0 extends cy{constructor(a){var y;super(),this.options={},this.rendered=!1,this.destroyed=!1,this.context={model:new mK},this.isCollapsingExpanding=!1,this.onResize=Nv(()=>{this.resize()},300),this._setOptions(Object.assign({},z0.defaultOptions,a),!0),this.context.graph=this,this.options.autoResize&&((y=globalThis.addEventListener)===null||y===void 0||y.call(globalThis,"resize",this.onResize))}getOptions(){return this.options}setOptions(a){this._setOptions(a,!1)}_setOptions(a,y){if(this.updateCanvas(a),Object.assign(this.options,LK(a)),y){const{data:Ee}=a;Ee&&this.addData(Ee);return}const{behaviors:x,combo:b,data:z,edge:ee,layout:re,node:ae,plugins:se,theme:fe,transforms:me}=a;x&&this.setBehaviors(x),z&&this.setData(z),ae&&this.setNode(ae),ee&&this.setEdge(ee),b&&this.setCombo(b),re&&this.setLayout(re),fe&&this.setTheme(fe),se&&this.setPlugins(se),me&&this.setTransforms(me)}getSize(){return this.context.canvas?this.context.canvas.getSize():[this.options.width||0,this.options.height||0]}setSize(a,y){a&&(this.options.width=a),y&&(this.options.height=y),this.resize(a,y)}setZoomRange(a){this.options.zoomRange=a}getZoomRange(){return this.options.zoomRange}setNode(a){this.options.node=a,this.context.model.refreshData()}setEdge(a){this.options.edge=a,this.context.model.refreshData()}setCombo(a){this.options.combo=a,this.context.model.refreshData()}getTheme(){return this.options.theme}setTheme(a){this.options.theme=$i(a)?a(this.getTheme()):a}setLayout(a){this.options.layout=$i(a)?a(this.getLayout()):a}getLayout(){return this.options.layout}setBehaviors(a){var y;this.options.behaviors=$i(a)?a(this.getBehaviors()):a,(y=this.context.behavior)===null||y===void 0||y.setBehaviors(this.options.behaviors)}updateBehavior(a){this.setBehaviors(y=>y.map(x=>typeof x=="object"&&x.key===a.key?Object.assign(Object.assign({},x),a):x))}getBehaviors(){return this.options.behaviors||[]}setPlugins(a){var y;this.options.plugins=$i(a)?a(this.getPlugins()):a,(y=this.context.plugin)===null||y===void 0||y.setPlugins(this.options.plugins)}updatePlugin(a){this.setPlugins(y=>y.map(x=>typeof x=="object"&&x.key===a.key?Object.assign(Object.assign({},x),a):x))}getPlugins(){return this.options.plugins||[]}getPluginInstance(a){return this.context.plugin.getPluginInstance(a)}setTransforms(a){var y;this.options.transforms=$i(a)?a(this.getTransforms()):a,(y=this.context.transform)===null||y===void 0||y.setTransforms(this.options.transforms)}updateTransform(a){this.setTransforms(y=>y.map(x=>typeof x=="object"&&x.key===a.key?Object.assign(Object.assign({},x),a):x)),this.context.model.refreshData()}getTransforms(){return this.options.transforms||[]}getData(){return this.context.model.getData()}hasNode(a){return this.context.model.hasNode(a)}hasEdge(a){return this.context.model.hasEdge(a)}hasCombo(a){return this.context.model.hasCombo(a)}getElementData(a){return Array.isArray(a)?a.map(y=>this.context.model.getElementDataById(y)):this.context.model.getElementDataById(a)}getNodeData(a){return a===void 0?this.context.model.getNodeData():Array.isArray(a)?this.context.model.getNodeData(a):this.context.model.getNodeLikeDatum(a)}getEdgeData(a){return a===void 0?this.context.model.getEdgeData():Array.isArray(a)?this.context.model.getEdgeData(a):this.context.model.getEdgeDatum(a)}getComboData(a){return a===void 0?this.context.model.getComboData():Array.isArray(a)?this.context.model.getComboData(a):this.context.model.getNodeLikeDatum(a)}setData(a){this.context.model.setData($i(a)?a(this.getData()):a)}addData(a){this.context.model.addData($i(a)?a(this.getData()):a)}addNodeData(a){this.context.model.addNodeData($i(a)?a(this.getNodeData()):a)}addEdgeData(a){this.context.model.addEdgeData($i(a)?a(this.getEdgeData()):a)}addComboData(a){this.context.model.addComboData($i(a)?a(this.getComboData()):a)}addChildrenData(a,y){this.context.model.addChildrenData(a,y)}updateData(a){this.context.model.updateData($i(a)?a(this.getData()):a)}updateNodeData(a){this.context.model.updateNodeData($i(a)?a(this.getNodeData()):a)}updateEdgeData(a){this.context.model.updateEdgeData($i(a)?a(this.getEdgeData()):a)}updateComboData(a){this.context.model.updateComboData($i(a)?a(this.getComboData()):a)}removeData(a){this.context.model.removeData($i(a)?a(this.getData()):a)}removeNodeData(a){this.context.model.removeNodeData($i(a)?a(this.getNodeData()):a)}removeEdgeData(a){this.context.model.removeEdgeData($i(a)?a(this.getEdgeData()):a)}removeComboData(a){this.context.model.removeComboData($i(a)?a(this.getComboData()):a)}getElementType(a){return this.context.model.getElementType(a)}getRelatedEdgesData(a,y="both"){return this.context.model.getRelatedEdgesData(a,y)}getNeighborNodesData(a){return this.context.model.getNeighborNodesData(a)}getAncestorsData(a,y){return this.context.model.getAncestorsData(a,y)}getParentData(a,y){return this.context.model.getParentData(a,y)}getChildrenData(a){return this.context.model.getChildrenData(a)}getDescendantsData(a){return this.context.model.getDescendantsData(a)}getElementDataByState(a,y){return this.context.model.getElementDataByState(a,y)}initCanvas(){return Al(this,void 0,void 0,function*(){var a;if(this.context.canvas)return yield this.context.canvas.ready;const{container:y="container",width:x,height:b,renderer:z,cursor:ee,background:re,canvas:ae,devicePixelRatio:se=(a=globalThis.devicePixelRatio)!==null&&a!==void 0?a:1}=this.options;if(y instanceof PI)this.context.canvas=y,ee&&y.setCursor(ee),z&&y.setRenderer(z),yield y.ready;else{const fe=Us(y)?document.getElementById(y):y,me=DI(fe);this.emit(si.BEFORE_CANVAS_INIT,{container:fe,width:x,height:b});const Ee=Object.assign(Object.assign({},ae),{container:fe,width:x||me[0],height:b||me[1],background:re,renderer:z,cursor:ee,devicePixelRatio:se}),Oe=new PI(Ee);this.context.canvas=Oe,yield Oe.ready,this.emit(si.AFTER_CANVAS_INIT,{canvas:Oe})}})}updateCanvas(a){var y,x;const{renderer:b,cursor:z,height:ee,width:re}=a,ae=this.context.canvas;ae&&(b&&(this.emit(si.BEFORE_RENDERER_CHANGE,{renderer:this.options.renderer}),ae.setRenderer(b),this.emit(si.AFTER_RENDERER_CHANGE,{renderer:b})),z&&ae.setCursor(z),(Wi(re)||Wi(ee))&&this.setSize((y=re!=null?re:this.options.width)!==null&&y!==void 0?y:0,(x=ee!=null?ee:this.options.height)!==null&&x!==void 0?x:0))}initRuntime(){this.context.options=this.options,this.context.batch||(this.context.batch=new dK(this.context)),this.context.plugin||(this.context.plugin=new NK(this.context)),this.context.viewport||(this.context.viewport=new FK(this.context)),this.context.transform||(this.context.transform=new RK(this.context)),this.context.element||(this.context.element=new pK(this.context)),this.context.animation||(this.context.animation=new cK(this.context)),this.context.layout||(this.context.layout=new OK(this.context)),this.context.behavior||(this.context.behavior=new fK(this.context))}prepare(){return Al(this,void 0,void 0,function*(){if(yield Promise.resolve(),this.destroyed){console.error(Nf("The graph instance has been destroyed"));return}yield this.initCanvas(),this.initRuntime()})}render(){return Al(this,void 0,void 0,function*(){if(yield this.prepare(),Su(this,new vu(si.BEFORE_RENDER)),this.options.layout)if(!this.rendered&&D7(this.options.layout)){const a=yield this.context.element.preLayoutDraw({type:"render"});yield Promise.all([a==null?void 0:a.finished,this.autoFit()])}else{const a=this.context.element.draw({type:"render"});yield Promise.all([a==null?void 0:a.finished,this.context.layout.postLayout()]),yield this.autoFit()}else{const a=this.context.element.draw({type:"render"});yield Promise.all([a==null?void 0:a.finished,this.autoFit()])}this.rendered=!0,Su(this,new vu(si.AFTER_RENDER))})}draw(){return Al(this,void 0,void 0,function*(){var a;yield this.prepare(),yield(a=this.context.element.draw())===null||a===void 0?void 0:a.finished})}layout(a){return Al(this,void 0,void 0,function*(){yield this.context.layout.postLayout(a)})}stopLayout(){this.context.layout.stopLayout()}clear(){return Al(this,void 0,void 0,function*(){const{model:a,element:y}=this.context;a.setData({}),a.clearChanges(),y==null||y.clear()})}destroy(){var a;Su(this,new vu(si.BEFORE_DESTROY));const{layout:y,animation:x,element:b,model:z,canvas:ee,behavior:re,plugin:ae}=this.context;ae==null||ae.destroy(),re==null||re.destroy(),y==null||y.destroy(),x==null||x.destroy(),b==null||b.destroy(),z.destroy(),ee==null||ee.destroy(),this.options={},this.context={},this.off(),(a=globalThis.removeEventListener)===null||a===void 0||a.call(globalThis,"resize",this.onResize),this.destroyed=!0,Su(this,new vu(si.AFTER_DESTROY))}getCanvas(){return this.context.canvas}resize(a,y){var x;const b=DI((x=this.context.canvas)===null||x===void 0?void 0:x.getContainer()),z=[a||b[0],y||b[1]];if(!this.context.canvas)return;const ee=this.context.canvas.getSize();nu(z,ee)||(Su(this,new vu(si.BEFORE_SIZE_CHANGE,{size:z})),this.context.canvas.resize(...z),Su(this,new vu(si.AFTER_SIZE_CHANGE,{size:z})))}fitView(a,y){return Al(this,void 0,void 0,function*(){var x;yield(x=this.context.viewport)===null||x===void 0?void 0:x.fitView(a,y)})}fitCenter(a){return Al(this,void 0,void 0,function*(){var y;yield(y=this.context.viewport)===null||y===void 0?void 0:y.fitCenter({animation:a})})}autoFit(){return Al(this,void 0,void 0,function*(){const{autoFit:a}=this.context.options;if(a)if(Us(a))a==="view"?yield this.fitView():a==="center"&&(yield this.fitCenter());else{const{type:y,animation:x}=a;y==="view"?yield this.fitView(a.options,x):y==="center"&&(yield this.fitCenter(x))}})}focusElement(a,y){return Al(this,void 0,void 0,function*(){var x;yield(x=this.context.viewport)===null||x===void 0?void 0:x.focusElements(Array.isArray(a)?a:[a],{animation:y})})}zoomBy(a,y,x){return Al(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"relative",scale:a,origin:x},y)})}zoomTo(a,y,x){return Al(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"absolute",scale:a,origin:x},y)})}getZoom(){return this.context.viewport.getZoom()}rotateBy(a,y,x){return Al(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"relative",rotate:a,origin:x},y)})}rotateTo(a,y,x){return Al(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"absolute",rotate:a,origin:x},y)})}getRotation(){return this.context.viewport.getRotation()}translateBy(a,y){return Al(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"relative",translate:a},y)})}translateTo(a,y){return Al(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"absolute",translate:a},y)})}getPosition(){return fl([0,0],this.getCanvasByViewport([0,0]))}translateElementBy(a,y){return Al(this,arguments,void 0,function*(x,b,z=!0){var ee,re;const[ae,se]=$l(x)?[x,(ee=b)!==null&&ee!==void 0?ee:!0]:[{[x]:b},z];Object.entries(ae).forEach(([fe,me])=>this.context.model.translateNodeLikeBy(fe,me)),yield(re=this.context.element.draw({animation:se,stage:"translate"}))===null||re===void 0?void 0:re.finished})}translateElementTo(a,y){return Al(this,arguments,void 0,function*(x,b,z=!0){var ee,re;const[ae,se]=$l(x)?[x,(ee=b)!==null&&ee!==void 0?ee:!0]:[{[x]:b},z];Object.entries(ae).forEach(([fe,me])=>this.context.model.translateNodeLikeTo(fe,me)),yield(re=this.context.element.draw({animation:se,stage:"translate"}))===null||re===void 0?void 0:re.finished})}getElementPosition(a){return this.context.model.getElementPosition(a)}getElementRenderStyle(a){return Bx(this.context.element.getElement(a).attributes,["context"])}setElementVisibility(a,y){return Al(this,arguments,void 0,function*(x,b,z=!0){var ee,re;const[ae,se]=$l(x)?[x,(ee=b)!==null&&ee!==void 0?ee:!0]:[{[x]:b},z],fe={nodes:[],edges:[],combos:[]};Object.entries(ae).forEach(([Oe,ke])=>{const We=this.getElementType(Oe);fe[`${We}s`].push({id:Oe,style:{visibility:ke}})});const{model:me,element:Ee}=this.context;me.preventUpdateNodeLikeHierarchy(()=>{me.updateData(fe)}),yield(re=Ee.draw({animation:se,stage:"visibility"}))===null||re===void 0?void 0:re.finished})}showElement(a,y){return Al(this,void 0,void 0,function*(){const x=Array.isArray(a)?a:[a];yield this.setElementVisibility(Object.fromEntries(x.map(b=>[b,"visible"])),y)})}hideElement(a,y){return Al(this,void 0,void 0,function*(){const x=Array.isArray(a)?a:[a];yield this.setElementVisibility(Object.fromEntries(x.map(b=>[b,"hidden"])),y)})}getElementVisibility(a){var y,x;const b=this.context.element.getElement(a);return(x=(y=b==null?void 0:b.style)===null||y===void 0?void 0:y.visibility)!==null&&x!==void 0?x:"visible"}setElementZIndex(a,y){return Al(this,void 0,void 0,function*(){var x;const b={nodes:[],edges:[],combos:[]},z=$l(a)?a:{[a]:y};Object.entries(z).forEach(([ae,se])=>{const fe=this.getElementType(ae);b[`${fe}s`].push({id:ae,style:{zIndex:se}})});const{model:ee,element:re}=this.context;ee.preventUpdateNodeLikeHierarchy(()=>ee.updateData(b)),yield(x=re.draw({animation:!1,stage:"zIndex"}))===null||x===void 0?void 0:x.finished})}frontElement(a){return Al(this,void 0,void 0,function*(){const y=Array.isArray(a)?a:[a],{model:x}=this.context,b={};y.map(z=>{const ee=x.getFrontZIndex(z);if(x.getElementType(z)==="combo"){const ae=x.getAncestorsData(z,vl).at(-1)||this.getComboData(z),se=[ae,...x.getDescendantsData(Lr(ae))],fe=ee-II(ae);se.forEach(Ee=>{b[Lr(Ee)]=this.getElementZIndex(Lr(Ee))+fe});const{internal:me}=tx(se.map(Lr),Ee=>x.getRelatedEdgesData(Ee));me.forEach(Ee=>{const Oe=Lr(Ee);b[Oe]=this.getElementZIndex(Oe)+fe})}else b[z]=ee}),yield this.setElementZIndex(b)})}getElementZIndex(a){return II(this.context.model.getElementDataById(a))}setElementState(a,y){return Al(this,arguments,void 0,function*(x,b,z=!0){var ee,re;const[ae,se]=$l(x)?[x,(ee=b)!==null&&ee!==void 0?ee:!0]:[{[x]:b},z],fe=Ee=>Ee?Array.isArray(Ee)?Ee:[Ee]:[],me={nodes:[],edges:[],combos:[]};Object.entries(ae).forEach(([Ee,Oe])=>{const ke=this.getElementType(Ee);me[`${ke}s`].push({id:Ee,states:fe(Oe)})}),this.updateData(me),yield(re=this.context.element.draw({animation:se,stage:"state"}))===null||re===void 0?void 0:re.finished})}getElementState(a){return this.context.model.getElementState(a)}getElementRenderBounds(a){return this.context.element.getElement(a).getRenderBounds()}collapseElement(a){return Al(this,arguments,void 0,function*(y,x=!0){const{model:b,element:z}=this.context;if(Oc(b.getNodeLikeData([y])[0])||this.isCollapsingExpanding)return;typeof x=="boolean"&&(x={animation:x,align:!0});const ee=b.getElementType(y);yield this.frontElement(y),this.isCollapsingExpanding=!0,b.updateData(ee==="node"?{nodes:[{id:y,style:{collapsed:!0}}]}:{combos:[{id:y,style:{collapsed:!0}}]}),ee==="node"?yield z.collapseNode(y,x):ee==="combo"&&(yield z.collapseCombo(y,!!x.animation)),this.isCollapsingExpanding=!1})}expandElement(a){return Al(this,arguments,void 0,function*(y,x=!0){const{model:b,element:z}=this.context;if(!Oc(b.getNodeLikeData([y])[0])||this.isCollapsingExpanding)return;typeof x=="boolean"&&(x={animation:x,align:!0});const ee=b.getElementType(y);this.isCollapsingExpanding=!0,b.updateData(ee==="node"?{nodes:[{id:y,style:{collapsed:!1}}]}:{combos:[{id:y,style:{collapsed:!1}}]}),ee==="node"?yield z.expandNode(y,x):ee==="combo"&&(yield z.expandCombo(y,!!x.animation)),this.isCollapsingExpanding=!1})}setElementCollapsibility(a,y){const x=this.getElementType(a);x==="node"?this.updateNodeData([{id:a,style:{collapsed:y}}]):x==="combo"&&this.updateComboData([{id:a,style:{collapsed:y}}])}toDataURL(){return Al(this,arguments,void 0,function*(a={}){return this.context.canvas.toDataURL(a)})}getCanvasByViewport(a){return this.context.canvas.getCanvasByViewport(a)}getViewportByCanvas(a){return this.context.canvas.getViewportByCanvas(a)}getClientByCanvas(a){return this.context.canvas.getClientByCanvas(a)}getCanvasByClient(a){return this.context.canvas.getCanvasByClient(a)}getViewportCenter(){return this.context.viewport.getViewportCenter()}getCanvasCenter(){return this.context.viewport.getCanvasCenter()}on(a,y,x){return super.on(a,y,x)}once(a,y){return super.once(a,y)}off(a,y){return super.off(a,y)}}z0.defaultOptions={autoResize:!1,theme:"light",rotation:0,zoom:1,zoomRange:[.01,10]};var kK=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b{if(re.depth=ae,!re.children)return re;const{children:se}=re,fe=kK(re,["children"]);return Object.assign(Object.assign({},fe),{children:se.map(me=>me.id)})},getEdgeData:x=(re,ae)=>({source:re.id,target:ae.id}),getChildren:b=re=>re.children||[]}=a||{},z=[],ee=[];return xg(E,(re,ae)=>{z.push(y(re,ae));const se=b(re);for(const fe of se)ee.push(x(re,fe))},re=>b(re),"TB"),{nodes:z,edges:ee}}class _K extends Th{beforeDraw(a){const{add:y,update:x}=a,{model:b}=this.context;return[...y.edges.entries(),...x.edges.entries()].forEach(([,z])=>{jI(b,z)}),a}}const jI=(E,a)=>{const{source:y,target:x}=a,b=E.getElementDataById(y),z=E.getElementDataById(x),ee=Xw(b,me=>E.getParentData(me,vl)),re=Xw(z,me=>E.getParentData(me,vl)),ae=Lr(ee),se=Lr(re),fe={sourceNode:ae,targetNode:se};return a.style?Object.assign(a.style,fe):a.style=fe,a},zK=(E,a,y)=>{const[x,b]=a,[z,ee]=y;if(b===x)return z;const re=(E-x)/(b-x);return z+re*(ee-z)},UK=(E,a,y)=>{const[x,b]=a,[z,ee]=y,re=Math.log(E-x+1)/Math.log(b-x+1);return z+re*(ee-z)},WK=(E,a,y,x=2)=>{const[b,z]=a,[ee,re]=y,ae=Math.pow((E-b)/(z-b),x);return ee+ae*(re-ee)},jK=(E,a,y)=>{const[x,b]=a,[z,ee]=y,re=Math.sqrt((E-x)/(b-x));return z+re*(ee-z)};class T1 extends Th{constructor(a,y){super(a,Uu({},T1.defaultOptions,y)),this.assignSizeByCentrality=(x,b,z,ee,re,ae)=>{const se=[b,z],fe=[ee[0],re[0]],me=[ee[1],re[1]],Ee=[ee[2],re[2]],Oe=(ke,We)=>{if(typeof ae=="function")return ae(ke,se,We);switch(ae){case"linear":return zK(ke,se,We);case"log":return UK(ke,se,We);case"pow":return WK(ke,se,We,2);case"sqrt":return jK(ke,se,We);default:return We[0]}};return[Oe(x,fe),Oe(x,me),Oe(x,Ee)]}}beforeDraw(a){const{model:y}=this.context,x=y.getNodeData(),b=Yc(this.options.maxSize),z=Yc(this.options.minSize),ee=this.getCentralities(this.options.centrality),re=ee.size>0?Math.max(...ee.values()):0,ae=ee.size>0?Math.min(...ee.values()):0;return x.forEach(se=>{var fe;const me=this.assignSizeByCentrality(ee.get(Lr(se))||0,ae,re,z,b,this.options.scale),Ee=(fe=this.context.element)===null||fe===void 0?void 0:fe.getElement(Lr(se)),Oe={size:me};this.assignLabelStyle(Oe,me,se,Ee),(!Ee||!A1(Oe,Ee.attributes))&&$c(a,Ee?"update":"add","node",Uu(se,{style:Oe}),!0)}),a}assignLabelStyle(a,y,x,b){var z;const ee=b?b.config.style:(z=this.context.element)===null||z===void 0?void 0:z.getElementComputedStyle("node",x);if(Object.assign(a,Cg(ee,["labelFontSize","labelLineHeight"])),this.options.mapLabelSize){const re=this.getLabelSizeByNodeSize(y,1/0,Number(a.labelFontSize));Object.assign(a,{labelFontSize:re,labelLineHeight:re+YR(a.labelPadding)})}return a}getLabelSizeByNodeSize(a,y,x){const b=Math.min(...a)/2,[z,ee]=Array.isArray(this.options.mapLabelSize)?this.options.mapLabelSize:[x,y];return Math.min(ee,Math.max(b,z))}getCentralities(a){const{model:y}=this.context,x=y.getData();if(typeof a=="function")return a(x);const b=y.getRelatedEdgesData.bind(y);return q2(x,b,a)}}T1.defaultOptions={centrality:{type:"degree"},maxSize:80,minSize:20,scale:"linear",mapLabelSize:!1};class O1 extends Th{constructor(a,y){super(a,Object.assign({},O1.defaultOptions,y))}get ref(){return this.context.model.getRootsData()[0]}afterLayout(){var a;const y=Au(this.ref),{graph:x,model:b}=this.context;(a=b.getData().nodes)===null||a===void 0||a.forEach(ee=>{var re;if(Lr(ee)===Lr(this.ref))return;const ae=nw(fl(Au(ee),y)),se=Math.abs(ae)>Math.PI/2,fe=!ee.children||ee.children.length===0,me=Lr(ee),Ee=(re=this.context.element)===null||re===void 0?void 0:re.getElement(me);if(!Ee||!Ee.isVisible())return;const Oe=Yc(x.getElementRenderStyle(me).size)[0]/2,ke=(fe?1:-1)*(Oe+this.options.offset),We=[["translate",ke*Math.cos(ae),ke*Math.sin(ae)],["rotate",se?Pc(ae)+180:Pc(ae)]];b.updateNodeData([{id:Lr(ee),style:{labelTextAlign:se===fe?"right":"left",labelTextBaseline:"middle",labelTransform:We}}])}),x.draw()}}O1.defaultOptions={offset:5};const GK="quadratic",GI=["top","top-right","right","right-bottom","bottom","bottom-left","left","left-top"];class L1 extends Th{constructor(a,y){super(a,Object.assign({},L1.defaultOptions,y)),this.cacheMergeStyle=new Map,this.getAffectedParallelEdges=x=>{const{add:{edges:b},update:{nodes:z,edges:ee,combos:re},remove:{edges:ae}}=x,{model:se}=this.context,fe=new Map,me=(ke,We)=>{se.getRelatedEdgesData(We).forEach(Ke=>!fe.has(Lr(Ke))&&fe.set(Lr(Ke),Ke))};z.forEach(me),re.forEach(me);const Ee=ke=>{const We=new Set(x.remove.edges.keys()),je=se.getEdgeData().filter(Ke=>!We.has(Lr(Ke))).map(Ke=>jI(se,Ke));HK(ke,je,!0).forEach(Ke=>{const Ze=Lr(Ke);fe.has(Ze)||fe.set(Ze,Ke)})};if(ae.size&&ae.forEach(Ee),b.size&&b.forEach(Ee),ee.size){const ke=jM(zx(se.getChanges())).update.edges;ee.forEach(We=>{var je;Ee(We);const Ke=(je=ke.find(Ze=>Lr(Ze.value)===Lr(We)))===null||je===void 0?void 0:je.original;Ke&&!FS(We,Ke)&&Ee(Ke)})}Af(this.options.edges)||fe.forEach((ke,We)=>!this.options.edges.includes(We)&&fe.delete(We));const Oe=se.getEdgeData().map(Lr);return new Map([...fe].sort((ke,We)=>Oe.indexOf(ke[0])-Oe.indexOf(We[0])))},this.applyBundlingStyle=(x,b,z)=>{const{edgeMap:ee,reverses:re}=HI(b);ee.forEach(ae=>{ae.forEach((se,fe,me)=>{var Ee;const Oe=me.length,ke=se.style||{};if(se.source===se.target){const Ke=GI.length;ke.loopPlacement=GI[fe%Ke],ke.loopDist=Math.floor(fe/Ke)*z+50}else if(Oe===1)ke.curveOffset=0;else{const Ke=(fe%2===0?1:-1)*(re[`${se.source}|${se.target}|${fe}`]?-1:1);ke.curveOffset=Oe%2===1?Ke*Math.ceil(fe/2)*z*2:Ke*(Math.floor(fe/2)*z*2+z)}const We=Object.assign(se,{type:GK,style:ke}),je=(Ee=this.context.element)===null||Ee===void 0?void 0:Ee.getElement(Lr(se));(!je||!A1(We.style,je.attributes))&&$c(x,je?"update":"add","edge",We,!0)})})},this.resetEdgeStyle=x=>{const b=x.style||{},z=this.cacheMergeStyle.get(Lr(x))||{};return Object.keys(z).forEach(ee=>{nu(b[ee],z[ee])&&(x[ee]?b[ee]=x[ee]:delete b[ee])}),Object.assign(x,{style:b})},this.applyMergingStyle=(x,b)=>{const{edgeMap:z,reverses:ee}=HI(b);z.forEach(re=>{var ae;if(re.length===1){const fe=re[0],me=(ae=this.context.element)===null||ae===void 0?void 0:ae.getElement(Lr(fe)),Ee=this.resetEdgeStyle(fe);(!me||!A1(Ee,me.attributes))&&$c(x,me?"update":"add","edge",Ee);return}const se=re.map(({source:fe,target:me,style:Ee={}},Oe)=>{const{startArrow:ke,endArrow:We}=Ee,je={},[Ke,Ze]=ee[`${fe}|${me}|${Oe}`]?["endArrow","startArrow"]:["startArrow","endArrow"];return J0(ke)&&(je[Ke]=ke),J0(We)&&(je[Ze]=We),je}).reduce((fe,me)=>Object.assign(Object.assign({},fe),me),{});re.forEach((fe,me,Ee)=>{var Oe;if(me!==0){$c(x,"remove","edge",fe);return}const ke=Object.assign({},$i(this.options.style)?this.options.style(Ee):this.options.style,{childrenData:Ee});this.cacheMergeStyle.set(Lr(fe),ke);const We=Object.assign(Object.assign({},fe),{type:"line",style:Object.assign(Object.assign(Object.assign({},fe.style),se),ke)}),je=(Oe=this.context.element)===null||Oe===void 0?void 0:Oe.getElement(Lr(fe));(!je||!A1(We.style,je.attributes))&&$c(x,je?"update":"add","edge",We,!0)})})}}beforeDraw(a){const y=this.getAffectedParallelEdges(a);return y.size===0||(this.options.mode==="bundle"?this.applyBundlingStyle(a,y,this.options.distance):this.applyMergingStyle(a,y)),a}}L1.defaultOptions={mode:"bundle",distance:15};const HI=E=>{const a=new Map,y=new Set,x={},b=new Map;for(const[z,ee]of E){if(y.has(z))continue;const{source:re,target:ae}=ee,se=`${re}-${ae}`;a.has(se)||(a.set(se,[]),b.set(se,new Set));const fe=a.get(se),me=b.get(se);fe&&me&&!me.has(z)&&(fe.push(ee),me.add(z),y.add(z));for(const[Ee,Oe]of E)if(!(y.has(Ee)||Ee===z)&&FS(ee,Oe)){const ke=a.get(se),We=b.get(se);ke&&We&&!We.has(Ee)&&(ke.push(Oe),We.add(Ee),re===Oe.target&&ae===Oe.source&&(x[`${Oe.source}|${Oe.target}|${ke.length-1}`]=!0),y.add(Ee))}}return{edgeMap:a,reverses:x}},HK=(E,a,y)=>a.filter(x=>(y||Lr(x)!==Lr(E))&&FS(x,E)),FS=(E,a)=>{const{sourceNode:y,targetNode:x}=E.style||{},{sourceNode:b,targetNode:z}=a.style||{};return y===b&&x===z||y===z&&x===b};class VK extends Th{beforeDraw(a,y){const{stage:x}=y;if(x==="visibility")return a;const{model:b}=this.context,{update:{nodes:z,edges:ee,combos:re}}=a,ae=(se,fe)=>{b.getRelatedEdgesData(fe).forEach(Ee=>!ee.has(Lr(Ee))&&ee.set(Lr(Ee),Ee))};return z.forEach(ae),re.forEach(ae),a}}const KK={animation:{"combo-collapse":d2,"combo-expand":HR,"node-collapse":u2,"node-expand":jR,"path-in":c2,"path-out":GR,fade:UR,translate:WR},behavior:{"brush-select":Cv,"click-select":Np,"collapse-expand":ay,"create-edge":ly,"drag-canvas":uy,"drag-element-force":O7,"drag-element":Rv,"fix-element-size":gy,"focus-element":vy,"hover-activate":my,"lasso-select":B7,"auto-adapt-label":Dp,"optimize-viewport-transform":py,"scroll-canvas":yy,"zoom-canvas":Ey},combo:{circle:bk,rect:Ck},edge:{cubic:Pg,line:ty,polyline:ny,quadratic:ry,"cubic-horizontal":qp,"cubic-radial":$p,"cubic-vertical":ey},layout:{"antv-dagre":y_,"combo-combined":Sz,"compact-box":Ay.compactBox,"d3-force":Yz,"force-atlas2":qz,circular:x_,concentric:Ex,dagre:wy,dendrogram:Ay.dendrogram,fishbone:Iy,force:aM,fruchterman:tU,grid:rU,indented:Ay.indented,mds:dM,mindmap:Ay.mindmap,radial:fU,random:EU,snake:Ty},node:{circle:Sg,diamond:CF,ellipse:zp,hexagon:IF,html:Zp,image:Qp,rect:xk,star:Sk,donut:kp,triangle:Yp},palette:{spectral:CU,tableau:PU,oranges:wU,greens:MU,blues:DU},theme:{dark:qV,light:$V},plugin:{"bubble-sets":Uy,"edge-bundling":jy,"edge-filter-lens":Gy,"grid-line":Ky,background:Oy,contextmenu:Wy,fisheye:Hy,fullscreen:Vy,history:Zy,hull:Jy,legend:r1,minimap:a1,snapline:i1,timebar:m1,title:FV,toolbar:p1,tooltip:y1,watermark:E1},transform:{"arrange-draw-order":eK,"collapse-expand-combo":tK,"collapse-expand-node":nK,"get-edge-actual-ends":_K,"map-node-size":T1,"place-radial-labels":O1,"process-parallel-edges":L1,"update-related-edges":VK},shape:{circle:vf,ellipse:dv,group:Eu,html:dg,image:UA,line:fg,path:Hc,polygon:hg,polyline:Km,rect:zu,text:gg,label:xf,badge:y0}};function ZK(){Object.entries(KK).forEach(([E,a])=>{Object.entries(a).forEach(([y,x])=>{rK(E,y,x)})})}ZK();const Kee={css:"//at.alicdn.com/t/a/font_470089_8hnbbf8n4u8.css",js:"//at.alicdn.com/t/a/font_470089_8hnbbf8n4u8.js"};var kS=Ie(59301),QK=Object.defineProperty,YK=Object.defineProperties,XK=Object.getOwnPropertyDescriptors,VI=Object.getOwnPropertySymbols,JK=Object.prototype.hasOwnProperty,qK=Object.prototype.propertyIsEnumerable,KI=(E,a,y)=>a in E?QK(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,_S=(E,a)=>{for(var y in a||(a={}))JK.call(a,y)&&KI(E,y,a[y]);if(VI)for(var y of VI(a))qK.call(a,y)&&KI(E,y,a[y]);return E},zS=(E,a)=>YK(E,XK(a)),$K=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},ee=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const eZ=(E,a)=>{const y=E.getParentData(a.id,"tree");return y?a.style.x>y.style.x?"right":"left":"center"},tZ=[3,2,1];let B1=[{name:"\u6839\u8282\u70B9",src:"/images/one.svg",color:"#CC7CF5"},{name:"\u8BFE\u7A0B",src:"/images/kc.svg",color:"#3241F7"},{name:"\u7AE0\u8282",src:"/images/zj.svg",color:"#5e54e7"},{name:"\u77E5\u8BC6\u70B9",src:"/images/zsd.svg",color:"#FFDF55"},{name:"\u5B9E\u8BAD",src:"/images/sx.svg",color:"#4E9DFF"},{name:"\u4F5C\u4E1A",src:"/images/zy.svg",color:"#445DF3"},{name:"\u89C6\u9891",src:"/images/sp.svg",color:"#6BC4DE"},{name:"\u8BFE\u4EF6",src:"/images/fj.svg",color:"#6BDE73"},{name:"\u8BD5\u5377",src:"/images/sj.svg",color:"#2D9534"},{name:"\u5176\u4ED6",src:"/images/qt.svg",color:"#2D947C"}];const nZ=(E,a)=>{const y={};let x=null;return E.forEach(b=>{y[b.properties.uuid]=zS(_S({},b),{id:b.properties.uuid,children:[]})}),a.forEach(b=>{const z=y[b.startNodeUuid],ee=y[b.endNodeUuid];z&&(z.id=z.properties.uuid),z&&ee&&z.children.push(ee)}),E.forEach(b=>{!a.some(ee=>ee.endNodeUuid===b.properties.uuid)&&(x=y[b.properties.uuid])}),x};var rZ=(0,Fe.forwardRef)(({nodeUuid:E,subject_id:a,setshowdetail:y,setitems:x,setzoomsize:b},z)=>{const[ee,re]=(0,Fe.useState)(!1),ae=(0,Fe.useRef)(0),se=(0,Fe.useRef)(null),fe=(0,Fe.useRef)();(0,Fe.useEffect)(()=>{je()},[]);function me(Ze){fe.current.zoomBy(Ze)}function Ee(){setTimeout(()=>{var Ze;b((((Ze=fe==null?void 0:fe.current)==null?void 0:Ze.getZoom())*100).toFixed(0))},300)}function Oe(Ze){var Je;let tt=fe.current.getElementDataByState("node","selected");(tt==null?void 0:tt.length)>0&&fe.current.setElementState((Je=tt==null?void 0:tt[0])==null?void 0:Je.id,[""]),fe.current.setElementState(Ze,["selected"])}function ke(Ze,Je){try{const tt={},st={};fe.current.getEdgeData().map(gt=>{tt[gt.id]=Ze==="Enter"?"inactive":"active"}),fe.current.getNodeData().map(gt=>{Ze==="Enter"?st[gt.id]=gt.colornodeType===Je?"highlight":"inactive":st[gt.id]="active"}),fe.current.setElementState(tt),fe.current.setElementState(st)}catch(tt){}}function We(Ze,Je){var tt;(tt=fe==null?void 0:fe.current)==null||tt.fitView(Ze,Je)}(0,Fe.useImperativeHandle)(z,()=>({zoomBy:me,getData:je,selectall:Oe,onMouse:ke,fitView:We,getZooms:Ee}));const je=()=>$K(void 0,null,function*(){var Ze,Je,tt,st,gt,mt,ct,Lt,_t;re(!0);let Yt=yield(0,te.ZP)("/api/knowledge/v2/get_node.json",{method:"get",params:{nodeUuid:E,subject_id:a,depth:-1,relationshipFilter:"\u5305\u542B>"}});re(!1);let $t=(Je=(Ze=Yt==null?void 0:Yt.data)==null?void 0:Ze.nodes)==null?void 0:Je.map(Cn=>{var xn,Ln,nr,An,fr,ra,aa,Gr,Sr,Kr,pa,Ua;return zS(_S({},Cn==null?void 0:Cn.properties),{rootNodeUuid:(xn=Cn==null?void 0:Cn.properties)==null?void 0:xn.rootNodeUuid,id:(Ln=Cn==null?void 0:Cn.properties)==null?void 0:Ln.uuid,name:(nr=Cn==null?void 0:Cn.properties)==null?void 0:nr.name,description:(An=Cn==null?void 0:Cn.properties)==null?void 0:An.description,nodeType:(fr=Cn==null?void 0:Cn.properties)==null?void 0:fr.nodeType,tags:((ra=Cn==null?void 0:Cn.properties)==null?void 0:ra.tags)&&((Sr=(Gr=(aa=Cn==null?void 0:Cn.properties)==null?void 0:aa.tags)==null?void 0:Gr.split("\uFF0C"))==null?void 0:Sr.map(ei=>({name:ei})))||[],colorType:parseInt((Kr=Cn==null?void 0:Cn.properties)==null?void 0:Kr.color)>3?"3":(pa=Cn==null?void 0:Cn.properties)==null?void 0:pa.color,activeColor:"#FA6400",size:tZ[((Ua=Cn==null?void 0:Cn.properties)==null?void 0:Ua.color)-1]||1,shape:"circle",hide:!1,isExtendedState:!0})}),En=nZ((st=(tt=Yt==null?void 0:Yt.data)==null?void 0:tt.nodes)==null?void 0:st.map((Cn,xn)=>{var Ln,nr,An,fr,ra;return zS(_S({},Cn),{key:xn,title:(Ln=Cn==null?void 0:Cn.properties)==null?void 0:Ln.name,newcolor:parseInt((nr=Cn==null?void 0:Cn.properties)==null?void 0:nr.color)===1?"#CC7CF5":((An=B1==null?void 0:B1.find(aa=>{var Gr;return(aa==null?void 0:aa.name)===((Gr=Cn==null?void 0:Cn.properties)==null?void 0:Gr.nodeType)}))==null?void 0:An.color)||"#2D947C",colornodeType:parseInt((fr=Cn==null?void 0:Cn.properties)==null?void 0:fr.color)===1?"\u6839\u8282\u70B9":((ra=B1==null?void 0:B1.find(aa=>{var Gr;return(aa==null?void 0:aa.name)===((Gr=Cn==null?void 0:Cn.properties)==null?void 0:Gr.nodeType)}))==null?void 0:ra.name)||"\u5176\u4ED6"})}),(mt=(gt=Yt==null?void 0:Yt.data)==null?void 0:gt.relationships)==null?void 0:mt.filter(Cn=>Cn.type==="\u5305\u542B"));fe!=null&&fe.current&&((ct=fe==null?void 0:fe.current)==null||ct.destroy());let on=RS(En),Fn=(Lt=on.nodes)==null?void 0:Lt.filter((Cn,xn,Ln)=>xn===Ln.findIndex(nr=>nr.id===Cn.id)),tr=(_t=on.edges)==null?void 0:_t.filter((Cn,xn,Ln)=>xn===Ln.findIndex(nr=>nr.source===Cn.source&&nr.target===Cn.target));Ke({nodes:Fn,edges:tr},$t)}),Ke=(Ze,Je)=>{var tt,st;fe.current=null,fe.current=new z0({container:se.current,autoResize:!0,autoFit:{type:((tt=Ze==null?void 0:Ze.nodes)==null?void 0:tt.length)>20?"view":"center",options:{direction:"both",when:"always"}},animation:!(((st=Ze==null?void 0:Ze.nodes)==null?void 0:st.length)>300),data:Ze,node:{style:{labelText:gt=>gt.title,labelFill:"#ffffff",fill:gt=>gt.newcolor,labelBackground:!1,labelPlacement:function(gt){const mt=eZ(this,gt);return mt==="center"?"right":mt},halo:!0,haloStrokeOpacity:.5,haloLineWidth:10,ports:[{placement:"right"},{placement:"left"}]},animation:{enter:!1}},edge:{type:"cubic-horizontal",animation:{enter:!1}},layout:{type:"mindmap",direction:"H",getHeight:()=>32,getWidth:()=>32,getVGap:()=>4,getHGap:()=>64,getSide:gt=>(ae.current++,ae.current%2==0?"left":"right")},behaviors:["drag-element",{type:"zoom-canvas",onFinish:()=>{setTimeout(()=>{var gt;b((((gt=fe==null?void 0:fe.current)==null?void 0:gt.getZoom())*100).toFixed(0))},300)}},"collapse-expand","drag-canvas",{type:"click-select",state:"selected",onClick:gt=>{let mt=Je.filter(ct=>{var Lt,_t;return(ct==null?void 0:ct.id)===((_t=(Lt=gt.target)==null?void 0:Lt.config)==null?void 0:_t.id)});if((mt==null?void 0:mt.length)===0){y(!1);return}x(mt==null?void 0:mt[0]),y(!0),gt.view.setCursor("pointer")},multiple:!1}]}),fe.current.render(),setTimeout(()=>{var gt;b((((gt=fe==null?void 0:fe.current)==null?void 0:gt.getZoom())*100).toFixed(0))},300)};return kS.createElement("div",{style:{height:"100%"}},kS.createElement(ce.Z,{spinning:ee,className:"mt60 w100",tip:"\u52A0\u8F7D\u4E2D..."}),kS.createElement("div",{style:{height:"100%"},ref:se}))}),Sl={flex_box_center:"flex_box_center___mORrQ",flex_space_between:"flex_space_between___AGgBm",flex_box_vertical_center:"flex_box_vertical_center____H93g",flex_box_center_end:"flex_box_center_end___VPK8Q",flex_box_column:"flex_box_column___qksG3",autocomp:"autocomp___H_feM",autocompwidth:"autocompwidth___RMYtG",hoverone:"hoverone___j7m8k",name:"name___qwPqM",img:"img___WHKD_",autopop:"autopop___YCC3k",studentHead:"studentHead___DeVom",headLi:"headLi___qiYnp",btn:"btn___s7HI8",tupugx:"tupugx___JCYSy",textname:"textname___iEAMA",dropdownst:"dropdownst___ca1cn"},US=Ie(16769),ZI=Ie(59301),aZ=Object.defineProperty,iZ=Object.defineProperties,oZ=Object.getOwnPropertyDescriptors,N1=Object.getOwnPropertySymbols,QI=Object.prototype.hasOwnProperty,YI=Object.prototype.propertyIsEnumerable,XI=(E,a,y)=>a in E?aZ(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,JI=(E,a)=>{for(var y in a||(a={}))QI.call(a,y)&&XI(E,y,a[y]);if(N1)for(var y of N1(a))YI.call(a,y)&&XI(E,y,a[y]);return E},sZ=(E,a)=>iZ(E,oZ(a)),lZ=(E,a)=>{var y={};for(var x in E)QI.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&N1)for(var x of N1(E))a.indexOf(x)<0&&YI.call(E,x)&&(y[x]=E[x]);return y},uZ=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},ee=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});let R1=[{name:"\u6839\u8282\u70B9",src:"/images/one.svg",color:"#CC7CF5",bordercolor:"#A150CB"},{name:"\u8BFE\u7A0B",src:"/images/kc.svg",color:"#3241F7",bordercolor:"#3437D9"},{name:"\u7AE0\u8282",src:"/images/zj.svg",color:"#5e54e7",bordercolor:"#7f77f9"},{name:"\u77E5\u8BC6\u70B9",src:"/images/zsd.svg",color:"#FFDF55",bordercolor:"#FFD60F"},{name:"\u5B9E\u8BAD",src:"/images/sx.svg",color:"#4E9DFF",bordercolor:"#0882FB"},{name:"\u4F5C\u4E1A",src:"/images/zy.svg",color:"#445DF3",bordercolor:"#3149D5"},{name:"\u89C6\u9891",src:"/images/sp.svg",color:"#6BC4DE",bordercolor:"#339DC4"},{name:"\u8BFE\u4EF6",src:"/images/fj.svg",color:"#6BDE73",bordercolor:"#33C448"},{name:"\u8BD5\u5377",src:"/images/sj.svg",color:"#2D9534",bordercolor:"#077A04"},{name:"\u5176\u4ED6",src:"/images/qt.svg",color:"#2D947C",bordercolor:"#157660"}];const Qee=null;let Yee=null;const cZ=E=>{var a=E,{pathsDetail:y,user:x,globalSetting:b,loading:z,dispatch:ee,datas:re}=a,ae=lZ(a,["pathsDetail","user","globalSetting","loading","dispatch","datas"]);const se=(0,Fe.useRef)(),fe=(0,Fe.useRef)(null);(0,Fe.useEffect)(()=>{me()},[re]);function me(){return uZ(this,null,function*(){var Ee,Oe,ke,We,je,Ke,Ze;if(((Ee=re==null?void 0:re.nodes)==null?void 0:Ee.length)>0){let Je=(0,ht.fX)((Oe=re==null?void 0:re.nodes)==null?void 0:Oe.map((ct,Lt)=>{var _t,Yt,$t,En,on,Fn,tr,Cn,xn,Ln,nr,An,fr,ra,aa,Gr;return sZ(JI(JI({},ct),ct==null?void 0:ct.properties),{rootNodeUuid:(_t=ct==null?void 0:ct.properties)==null?void 0:_t.rootNodeUuid,id:(Yt=ct==null?void 0:ct.properties)==null?void 0:Yt.uuid,name:($t=ct==null?void 0:ct.properties)==null?void 0:$t.name,labelstype:(En=ct==null?void 0:ct.labels)==null?void 0:En[1],description:(on=ct==null?void 0:ct.properties)==null?void 0:on.description,nodeType:(Fn=ct==null?void 0:ct.properties)==null?void 0:Fn.nodeType,colornodeType:parseInt((tr=ct==null?void 0:ct.properties)==null?void 0:tr.color)===1?"\u6839\u8282\u70B9":((Cn=R1==null?void 0:R1.find(Sr=>{var Kr;return(Sr==null?void 0:Sr.name)===((Kr=ct==null?void 0:ct.properties)==null?void 0:Kr.nodeType)}))==null?void 0:Cn.name)||"\u5176\u4ED6",newcolor:parseInt((xn=ct==null?void 0:ct.properties)==null?void 0:xn.color)===1?"#CC7CF5":((Ln=R1==null?void 0:R1.find(Sr=>{var Kr;return(Sr==null?void 0:Sr.name)===((Kr=ct==null?void 0:ct.properties)==null?void 0:Kr.nodeType)}))==null?void 0:Ln.color)||"#2D947C",tags:((nr=ct==null?void 0:ct.properties)==null?void 0:nr.tags)&&((ra=(fr=(An=ct==null?void 0:ct.properties)==null?void 0:An.tags)==null?void 0:fr.split("\uFF0C"))==null?void 0:ra.map(Sr=>({name:Sr})))||[],colorType:parseInt((aa=ct==null?void 0:ct.properties)==null?void 0:aa.color)>3?"3":(Gr=ct==null?void 0:ct.properties)==null?void 0:Gr.color})}),(je=(We=(ke=re==null?void 0:re.relationships)==null?void 0:ke.filter(ct=>{var Lt,_t,Yt;return(ct==null?void 0:ct.endNodeUuid)!==((Yt=(_t=(Lt=re==null?void 0:re.nodes)==null?void 0:Lt[0])==null?void 0:_t.properties)==null?void 0:Yt.rootNodeUuid)}))==null?void 0:We.filter(ct=>{var Lt,_t,Yt;return(ct==null?void 0:ct.startNodeUuid)!==((Yt=(_t=(Lt=re==null?void 0:re.nodes)==null?void 0:Lt[0])==null?void 0:_t.properties)==null?void 0:Yt.rootNodeUuid)}))==null?void 0:je.filter(ct=>ct.type==="\u5305\u542B")),tt=RS(Je),st=(Ke=tt.nodes)==null?void 0:Ke.filter((ct,Lt,_t)=>Lt===_t.findIndex(Yt=>Yt.id===ct.id)),gt=(Ze=tt.edges)==null?void 0:Ze.filter((ct,Lt,_t)=>Lt===_t.findIndex(Yt=>Yt.source===ct.source&&Yt.target===ct.target));st.map(ct=>(ct.transformd=!0,ct.style={labelWordWrap:!0,labelPlacement:ct.depth===0?"center":ct.depth<3?"top-left":"top",haloLineWidth:Math.max(20-ct.depth*6,0),labelMaxWidth:ct.depth===0?300:200,labelFontSize:ct.depth===0?22:st.length>300?12:14,labelLineHeight:100,halo:ct.depth<3},ct)),se.current=null;let mt=st==null?void 0:st.length;se.current=new z0({container:fe.current,autoResize:!0,background:"#010A23",autoFit:{type:st.length>50?"view":"center",options:{direction:"both",when:"always"}},animation:!1,padding:50,data:{nodes:st,edges:gt},node:{type:"circle",style:{size:ct=>ct.colorType==1?100:ct.depth<2?50:mt>250?10:20,fill:ct=>ct.newcolor,labelText:ct=>ct.name,labelFill:"#ffffff"},state:{highlight:{stroke:"transparent"},selected:{stroke:"transparent"},inactive:{fill:ct=>ct.newcolor,port:!1,labelBackground:!1,halo:!1,badgeBackground:!1}}},edge:{style:{labelBackground:!1,halo:!1,stroke:"#A150CB",strokeOpacity:.5},state:{inactive:{stroke:"#f9f0ff",strokeOpacity:.5,halo:!1,labelBackground:!1,lineWidth:1},highlight:{stroke:"#43E93F",strokeOpacity:1,halo:!1,lineWidth:1},selected:{stroke:"#43E93F",strokeOpacity:1,halo:!1,lineWidth:1},active:{halo:!1},disable:{halo:!1}}},layout:[{type:"dendrogram",radial:!0,nodeSep:40,rankSep:st.length>250?360:240,direction:"RL",unitRadius:90,linkDistance:200,preventOverlap:!0,maxPreventOverlapIteration:100,strictRadial:!1}],plugins:[{type:"tooltip",enable:ct=>ct.targetType==="node",getContent:(ct,Lt)=>{let _t="";return Lt.forEach(Yt=>{_t+=`
    ${Yt.name||""}
    `}),_t}}],behaviors:["drag-canvas",{type:"zoom-canvas"},"drag-element",{type:"collapse-expand",onExpand:(ct,Lt)=>{console.log("----",ct,Lt)}},{type:"fix-element-size",state:"fix-element-size",enable:!0}],transforms:[{type:"place-radial-labels"}]}),se.current.render()}})}return ZI.createElement("div",{style:{background:"#fff",height:"800rem"}},ZI.createElement("div",{style:{width:"100%",height:"800rem"},ref:fe}))};var dZ=(0,Ce.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(cZ),La=Ie(59301),fZ=Object.defineProperty,hZ=Object.defineProperties,gZ=Object.getOwnPropertyDescriptors,F1=Object.getOwnPropertySymbols,qI=Object.prototype.hasOwnProperty,$I=Object.prototype.propertyIsEnumerable,e3=(E,a,y)=>a in E?fZ(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,zg=(E,a)=>{for(var y in a||(a={}))qI.call(a,y)&&e3(E,y,a[y]);if(F1)for(var y of F1(a))$I.call(a,y)&&e3(E,y,a[y]);return E},vZ=(E,a)=>hZ(E,gZ(a)),mZ=(E,a)=>{var y={};for(var x in E)qI.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&F1)for(var x of F1(E))a.indexOf(x)<0&&$I.call(E,x)&&(y[x]=E[x]);return y},Lh=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},ee=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});let rm=[{name:"\u6839\u8282\u70B9",src:"/images/one.svg",color:"#CC7CF5",bordercolor:"#A150CB"},{name:"\u8BFE\u7A0B",src:"/images/kc.svg",color:"#3241F7",bordercolor:"#3437D9"},{name:"\u7AE0\u8282",src:"/images/zj.svg",color:"#5e54e7",bordercolor:"#7f77f9"},{name:"\u77E5\u8BC6\u70B9",src:"/images/zsd.svg",color:"#FFDF55",bordercolor:"#FFD60F"},{name:"\u5B9E\u8BAD",src:"/images/sx.svg",color:"#4E9DFF",bordercolor:"#0882FB"},{name:"\u4F5C\u4E1A",src:"/images/zy.svg",color:"#445DF3",bordercolor:"#3149D5"},{name:"\u89C6\u9891",src:"/images/sp.svg",color:"#6BC4DE",bordercolor:"#339DC4"},{name:"\u8BFE\u4EF6",src:"/images/fj.svg",color:"#6BDE73",bordercolor:"#33C448"},{name:"\u8BD5\u5377",src:"/images/sj.svg",color:"#2D9534",bordercolor:"#077A04"},{name:"\u5176\u4ED6",src:"/images/qt.svg",color:"#2D947C",bordercolor:"#157660"}];const pZ=E=>{var a=E,{pathsDetail:y,user:x,globalSetting:b,loading:z,dispatch:ee,uuid:re,Tabsdatas:ae,initdata:se,setactivied:fe,tpacti:me}=a,Ee=mZ(a,["pathsDetail","user","globalSetting","loading","dispatch","uuid","Tabsdatas","initdata","setactivied","tpacti"]),Oe,ke,We,je,Ke,Ze,Je,tt;const st=(0,Fe.useRef)(),gt=(0,Fe.useRef)(),mt=(0,Fe.useRef)(),[ct,Lt]=(0,Fe.useState)([]),[_t,Yt]=(0,Fe.useState)(!0),[$t,En]=(0,Fe.useState)([]),[on,Fn]=(0,Fe.useState)(""),[tr,Cn]=(0,Fe.useState)(!1),xn=(0,Fe.useRef)(null),[Ln,nr]=(0,Fe.useState)(),[An,fr]=(0,Fe.useState)(!1),[ra,aa]=(0,Fe.useState)([]);let[Gr,Sr]=(0,Fe.useState)(!1);const[Kr,pa]=(0,Fe.useState)(!1),[Ua,ei]=(0,Fe.useState)(!1),[Co,Eo]=(0,Fe.useState)([]),[ti,to]=(0,Fe.useState)(!1),[ji,so]=(0,Fe.useState)([]),[Ao]=(0,Ce.useSearchParams)(),[ss,Qo]=(0,Fe.useState)(!1),[Ei,ki]=(0,Fe.useState)(0),[Sa,_a]=(0,Fe.useState)("\u5168\u90E8");let[ni,Ki]=(0,Fe.useState)({page:1,limit:10});const[Ma,mo]=(0,Fe.useState)({}),[Qi,Is]=(0,Fe.useState)([]),as=(0,Fe.useRef)(null),ms=(0,Fe.useRef)(null),[ps,ls]=(0,Fe.useState)(!1),To=window.ENV==="build"?"/react/build":"";(0,Fe.useEffect)(()=>(Gr=!1,Sr(!1),Fs(2),_e.ZP.config({getContainer:()=>xn.current}),()=>{Yt(!1),En([]),fr(!1),Fn("")}),[re]);const Nc=()=>La.createElement("div",{className:Sl.studentHead},La.createElement("div",{className:Sl.headLi},La.createElement("img",{src:Ye}),La.createElement("aside",null,La.createElement("span",null,"\u8D44\u6E90\u603B\u6570"),La.createElement("b",null,Ma==null?void 0:Ma.resource_count))),La.createElement("div",{className:Sl.headLi},La.createElement("img",{src:xt}),La.createElement("aside",null,La.createElement("span",null,"\u5B66\u4E60\u5B8C\u6210\u7387"),La.createElement("b",{style:{color:"#F7B500"}},Ma==null?void 0:Ma.complete_rate,"%"))),La.createElement("div",{className:Sl.headLi},La.createElement("img",{src:Pt}),La.createElement("aside",null,La.createElement("span",null,"\u5B66\u4E60\u638C\u63E1\u7387"),La.createElement("b",{style:{color:"#3AFFC8"}},Ma==null?void 0:Ma.grasp_rate,"%"))),La.createElement("div",{className:Sl.headLi},La.createElement("img",{src:Xt}),La.createElement("aside",null,La.createElement("span",{style:{marginBottom:"10rem"}},"\u4E0A\u6B21\u5B66\u5230"),La.createElement(an.Z,{title:Ma==null?void 0:Ma.last_knowledge_name},La.createElement("b",{style:{color:"#7FAAFF",fontSize:"16rem"}},(0,ht.Pq)(Ma==null?void 0:Ma.last_knowledge_name,13))))),La.createElement("div",{onClick:()=>handleClickDetails({knowledge_uuid:Ma==null?void 0:Ma.last_knowledge_uuid}),className:Sl.btn},"\u7EE7\u7EED\u5B66\u4E60")),Rc={onRemove:()=>{Eo([])},beforeUpload:ai=>{if(console.log(ai),(ai==null?void 0:ai.size)>1024*1024*50)return _e.ZP.info("\u6587\u4EF6\u8D85\u8FC750M\uFF0C\u4E0D\u7B26\u5408\u4E0A\u4F20\u8981\u6C42"),!1;let ao=[];return ao.push(ai),Eo([...ao]),!1},fileList:Co,accept:".xls,.xlsx"};(0,Fe.useEffect)(()=>{},[Gr]),(0,Fe.useEffect)(()=>(window.addEventListener("resize",_l),()=>{window.removeEventListener("resize",_l)}),[]);function _l(){var ai,ao;(ao=(ai=st.current)==null?void 0:ai.update)==null||ao.call(ai)}function Fs(ai){return Lh(this,null,function*(){var ao,zo,Yo,Do,Yl,ed,bd,Ug,Nh,W0,Rh;Qo(!0);let gc=yield(0,te.ZP)("/api/knowledge/v2/get_node.json",{method:"get",params:{nodeUuid:re,subject_id:(ao=y==null?void 0:y.detail)==null?void 0:ao.id,depth:ai===0?ai:ai||-1,relationshipFilter:"\u5305\u542B>"}});if(Qo(!1),(gc==null?void 0:gc.status)===0){if(Ao.get("type")==="classrooms"?ee({type:"pathsDetail/getCourseDetail",payload:zg({id:(zo=y==null?void 0:y.detail)==null?void 0:zo.id,knowledge:!0},(0,ht.oP)())}):ee({type:"pathsDetail/getPathsDetail",payload:zg({id:(Yo=y==null?void 0:y.detail)==null?void 0:Yo.id,knowledge:!0},(0,ht.oP)())}),Gr){gt.current.getData();return}Yt(!0);let Qs=(0,ht.fX)((Yl=(Do=gc==null?void 0:gc.data)==null?void 0:Do.nodes)==null?void 0:Yl.map((Li,Zu)=>{var Cu,Qu,Hd,Wg,H1,am,V1,im,td,K1,uo,nd,Z1,Q1,Y1,X1;return vZ(zg(zg({},Li),Li==null?void 0:Li.properties),{rootNodeUuid:(Cu=Li==null?void 0:Li.properties)==null?void 0:Cu.rootNodeUuid,id:(Qu=Li==null?void 0:Li.properties)==null?void 0:Qu.uuid,name:(Hd=Li==null?void 0:Li.properties)==null?void 0:Hd.name,labelstype:(Wg=Li==null?void 0:Li.labels)==null?void 0:Wg[1],description:(H1=Li==null?void 0:Li.properties)==null?void 0:H1.description,nodeType:(am=Li==null?void 0:Li.properties)==null?void 0:am.nodeType,colornodeType:parseInt((V1=Li==null?void 0:Li.properties)==null?void 0:V1.color)===1?"\u6839\u8282\u70B9":((im=rm==null?void 0:rm.find(rd=>{var jg;return(rd==null?void 0:rd.name)===((jg=Li==null?void 0:Li.properties)==null?void 0:jg.nodeType)}))==null?void 0:im.name)||"\u5176\u4ED6",newcolor:parseInt((td=Li==null?void 0:Li.properties)==null?void 0:td.color)===1?"#CC7CF5":((K1=rm==null?void 0:rm.find(rd=>{var jg;return(rd==null?void 0:rd.name)===((jg=Li==null?void 0:Li.properties)==null?void 0:jg.nodeType)}))==null?void 0:K1.color)||"#2D947C",tags:((uo=Li==null?void 0:Li.properties)==null?void 0:uo.tags)&&((Q1=(Z1=(nd=Li==null?void 0:Li.properties)==null?void 0:nd.tags)==null?void 0:Z1.split("\uFF0C"))==null?void 0:Q1.map(rd=>({name:rd})))||[],colorType:parseInt((Y1=Li==null?void 0:Li.properties)==null?void 0:Y1.color)>3?"3":(X1=Li==null?void 0:Li.properties)==null?void 0:X1.color})}),(bd=(ed=gc==null?void 0:gc.data)==null?void 0:ed.relationships)==null?void 0:bd.filter(Li=>Li.type==="\u5305\u542B"));console.log("----types",Qs,gc==null?void 0:gc.data);let Js=RS(Qs),Ss=(Ug=Js.nodes)==null?void 0:Ug.filter((Li,Zu,Cu)=>Zu===Cu.findIndex(Qu=>Qu.id===Li.id));Lt(Ss);let Tl=(Nh=Js.edges)==null?void 0:Nh.filter((Li,Zu,Cu)=>Zu===Cu.findIndex(Qu=>Qu.source===Li.source&&Qu.target===Li.target));Ss.map(Li=>(Li.transformd=!0,Li.style={labelWordWrap:!0,labelPlacement:Li.depth===0?"center":Li.depth<3?"top-left":"top",haloLineWidth:Math.max(20-Li.depth*6,0),labelMaxWidth:Li.depth===0?300:200,labelFontSize:Li.depth===0?22:Ss.length>300?12:14,labelLineHeight:100,halo:Li.depth<3},Li)),mt.current=null;let Cd=Ss==null?void 0:Ss.length;mt.current=new z0({container:ms.current,autoResize:!0,background:"#010A23",autoFit:{type:Ss.length>50?"view":"center",options:{direction:"both",when:"always"}},animation:!1,padding:50,data:{nodes:Ss,edges:Tl},node:{type:"circle",style:{size:Li=>Li.colorType==1?100:Li.depth<2?50:Cd>250?10:20,fill:Li=>Li.newcolor,labelText:Li=>Li.name,labelFill:"#ffffff"},state:{highlight:{stroke:"transparent"},selected:{stroke:"transparent"},inactive:{fill:Li=>Li.newcolor,port:!1,labelBackground:!1,halo:!1,badgeBackground:!1}}},edge:{style:{labelBackground:!1,halo:!1,stroke:"#A150CB",strokeOpacity:.5},state:{inactive:{stroke:"#f9f0ff",strokeOpacity:.5,halo:!1,labelBackground:!1,lineWidth:1},highlight:{stroke:"#43E93F",strokeOpacity:1,halo:!1,lineWidth:1},selected:{stroke:"#43E93F",strokeOpacity:1,halo:!1,lineWidth:1},active:{halo:!1},disable:{halo:!1}}},layout:[{type:"dendrogram",radial:!0,nodeSep:40,rankSep:Ss.length>250?360:240,direction:"RL",unitRadius:90,linkDistance:200,preventOverlap:!0,maxPreventOverlapIteration:100,strictRadial:!1}],plugins:[{type:"tooltip",enable:Li=>Li.targetType==="node",getContent:(Li,Zu)=>{let Cu="";return Zu.forEach(Qu=>{Cu+=`
    ${Qu.name||""}
    `}),Cu}}],behaviors:["drag-canvas",{type:"zoom-canvas",onFinish:()=>{setTimeout(()=>{var Li;ki((((Li=mt==null?void 0:mt.current)==null?void 0:Li.getZoom())*100).toFixed(0))},300)}},"drag-element",{type:"collapse-expand",onExpand:(Li,Zu)=>{console.log("----",Li,Zu)}},{type:"fix-element-size",state:"fix-element-size",enable:!0},{type:"click-select",state:"selected",onClick:Li=>{as.current?(clearTimeout(as.current),as.current=null):as.current=setTimeout(()=>{let Zu=Ss.filter(Cu=>{var Qu,Hd;return(Cu==null?void 0:Cu.id)===((Hd=(Qu=Li.target)==null?void 0:Qu.config)==null?void 0:Hd.id)});if((Zu==null?void 0:Zu.length)===0){fr(!1);return}nr(Zu==null?void 0:Zu[0]),fr(!0),Li.view.setCursor("pointer"),as.current=null},300)},multiple:!1},{type:"hover-activate",enable:Li=>Li.targetType==="node",degree:1,state:"highlight",direction:"both",inactiveState:"inactive",onHover:Li=>{Li.view.setCursor("pointer")},onHoverEnd:Li=>{Li.view.setCursor("default")}}],transforms:[{type:"place-radial-labels"}]}),mt.current.render(),ms.current.style.opacity=1,(W0=mt==null?void 0:mt.current)==null||W0.fitView(),setTimeout(()=>{var Li;ki((((Li=mt==null?void 0:mt.current)==null?void 0:Li.getZoom())*100).toFixed(0))},300);var Fc=mt.current.getOptions();setTimeout(()=>{Fc.animation=!0,mt.current.setOptions(Fc)},2500),window.graphsRef=mt.current}let vc=yield(0,te.ZP)("/api/knowledge_items.json",{method:"get",params:{item_type:3,subject_id:(Rh=y==null?void 0:y.detail)==null?void 0:Rh.id}});(vc==null?void 0:vc.status)===0&&Is(vc==null?void 0:vc.data)})}const Ku=(ai,ao)=>{if(mt.current){if(Gr){gt.current.onMouse(ai,ao.name);return}try{const zo={},Yo={};mt.current.getEdgeData().map(Do=>{zo[Do.id]=ai==="Enter"?"inactive":"active"}),mt.current.getNodeData().map(Do=>{ai==="Enter"?Yo[Do.id]=Do.colornodeType===ao.name?"highlight":"inactive":Yo[Do.id]="active"}),mt.current.setElementState(zo),mt.current.setElementState(Yo)}catch(zo){}}},ks=(ai,ao)=>{if(mt.current){if(Gr){gt.current.onMouse(ai,ao.name);return}try{const zo={},Yo={};mt.current.getEdgeData().map(Do=>{zo[Do.id]=ai==="Enter"?"inactive":"active"}),mt.current.getNodeData().map(Do=>{var Yl,ed;ai==="Enter"?Yo[Do.id]=(ed=(Yl=Do.tags)==null?void 0:Yl.map(bd=>bd==null?void 0:bd.name))!=null&&ed.includes(ao.name)?"highlight":"inactive":Yo[Do.id]="active"}),mt.current.setElementState(zo),mt.current.setElementState(Yo)}catch(zo){}}};return La.createElement(ce.Z,{spinning:ss},La.createElement("div",{ref:xn,style:{background:"#010A23",height:"100vh",overflow:"hidden",position:"relative"}},La.createElement("div",{style:{color:"#fff",display:"flex",alignItems:"center",marginLeft:"10rem",position:"fixed",bottom:"30px",zIndex:1}},(Oe=rm.filter(ai=>{var ao;return(ao=ct==null?void 0:ct.map(zo=>zo==null?void 0:zo.colornodeType))==null?void 0:ao.includes(ai==null?void 0:ai.name)}))==null?void 0:Oe.map(ai=>La.createElement("div",{onMouseLeave:()=>Ku("Leave",ai),onMouseEnter:()=>Ku("Enter",ai),style:{display:"flex",alignItems:"center",margin:"0 2px",cursor:"pointer"}},La.createElement("span",{style:{display:"inline-flex",marginLeft:"10rem",width:"20rem",height:"20rem",borderRadius:"50%",background:ai.color}}),La.createElement("span",{style:{marginLeft:"5rem"}},ai==null?void 0:ai.name)))),La.createElement("div",{style:{color:"#fff",display:"flex",alignItems:"center",marginLeft:"10rem",position:"fixed",bottom:"30px",zIndex:1,right:40}},La.createElement(Ji.Z,{overlayClassName:Sl.dropdownst,getPopupContainer:()=>xn.current,menu:{items:[{label:La.createElement("div",{onClick:()=>{Fs()}},"\u5C55\u5F00\u5168\u90E8"),key:"1"},{label:La.createElement("div",{onClick:()=>{Fs(3)}},"\u5C55\u5F003\u5C42"),key:"2"},{label:La.createElement("div",{onClick:()=>{Fs(2)}},"\u5C55\u5F002\u5C42"),key:"3"},{label:La.createElement("div",{onClick:()=>{Fs(1)}},"\u5C55\u5F001\u5C42"),key:"4"},{label:La.createElement("div",{onClick:()=>{Fs(0)}},"\u6536\u8D77\u5168\u90E8"),key:"5"}]}},La.createElement("img",{style:{cursor:"pointer"},onClick:()=>{},src:ps===7?`${To}/images/xscjxz.png`:`${To}/images/xscj.png`,onMouseOut:()=>{ls(!1)},onMouseOver:()=>{ls(7)}})),La.createElement(an.Z,{title:"\u5C45\u4E2D\u663E\u793A"},La.createElement("img",{onClick:()=>{Yt(!1),Fs()},style:{marginLeft:"10rem",cursor:"pointer"},src:ps===8?`${To}/images/jzxsxz.png`:`${To}/images/jzxs.png`,onMouseOut:()=>{ls(!1)},onMouseOver:()=>{ls(8)},className:Sl.img})),La.createElement("div",{style:{marginLeft:"10rem",background:"#202F4F",borderRadius:"4px",alignItems:"center"}},La.createElement("img",{style:{cursor:"pointer"},onClick:()=>{Gr?(gt.current.zoomBy(.9),gt.current.getZooms()):(mt.current.zoomBy(.9),setTimeout(()=>{var ai;ki((((ai=mt==null?void 0:mt.current)==null?void 0:ai.getZoom())*100).toFixed(0))},300))},src:ps===9?`${To}/images/newsxxz.png`:`${To}/images/newsx.png`,onMouseOut:()=>{ls(!1)},onMouseOver:()=>{ls(9)}}),La.createElement("span",{style:{display:"inline-flex",width:"46px",justifyContent:"center"},onClick:()=>{}}," ",Ei+"%"),La.createElement("img",{style:{cursor:"pointer"},onClick:()=>{Gr?(gt.current.zoomBy(1.1),gt.current.getZooms()):(mt.current.zoomBy(1.1),setTimeout(()=>{var ai;ki((((ai=mt==null?void 0:mt.current)==null?void 0:ai.getZoom())*100).toFixed(0))},300))},src:ps===12?`${To}/images/newfdxz.png`:`${To}/images/newfd.png`,onMouseOut:()=>{ls(!1)},onMouseOver:()=>{ls(12)}}))),La.createElement("div",{style:{display:"flex",justifyContent:"start",width:"1840rem",left:"40rem",paddingTop:"25rem",position:"absolute",zIndex:1}},La.createElement("span",{className:Sl.tupugx,onClick:()=>{fe()}},La.createElement("img",{src:`${To}/images/tpgx.svg`,style:{marginRight:"10rem",width:"16rem"}}),"\u56FE\u8C31\u5173\u7CFB"),La.createElement("div",{className:Sl.autocomp},_t&&La.createElement("div",{style:{display:"flex",alignItems:"center"}},La.createElement(Tn.Z,{className:Sl.autocompwidth,options:$t,popupClassName:Sl.autopop,getPopupContainer:()=>xn.current,value:on,onSelect:(ai,ao)=>{var zo;if(Fn(ct.find(Yo=>Yo.id===ai).name),nr(ct.find(Yo=>Yo.id===ai)),fr(!0),Gr)gt.current.selectall(ai);else{let Yo=mt.current.getElementDataByState("node","selected");(Yo==null?void 0:Yo.length)>0&&mt.current.setElementState((zo=Yo==null?void 0:Yo[0])==null?void 0:zo.id,[""]),mt.current.setElementState(ai,["selected"])}},onChange:ai=>{Fn(ai)},onSearch:ai=>{En(()=>{var ao,zo,Yo;return Sa==="\u5168\u90E8"?(ao=ct==null?void 0:ct.filter(Do=>Do.name.includes(ai)))==null?void 0:ao.map(Do=>({label:La.createElement("div",{style:{display:"flex",alignItems:"center"}},La.createElement("span",{style:{marginRight:"10rem",height:"20rem",lineHeight:"20rem",padding:"0rem 6rem",color:"#fff",fontSize:"12rem",background:"#1890FF",borderRadius:"2rem"}},Do==null?void 0:Do.nodeType)," ",La.createElement("div",{style:{color:"#fff"},dangerouslySetInnerHTML:{__html:Do==null?void 0:Do.name.replaceAll(ai,`${ai}`)}})),value:Do==null?void 0:Do.id})):(Yo=(zo=ct==null?void 0:ct.filter(Do=>{var Yl;return(Yl=Do==null?void 0:Do.tags)==null?void 0:Yl.find(ed=>ed.name===Sa)}))==null?void 0:zo.filter(Do=>Do.name.includes(ai)))==null?void 0:Yo.map(Do=>({label:La.createElement("div",{style:{display:"flex",alignItems:"center"}},La.createElement("span",{style:{marginRight:"10rem",height:"20rem",padding:"2rem 6rem",color:"#fff",fontSize:"12rem",background:"#1890FF",borderRadius:"2rem"}},Do==null?void 0:Do.nodeType)," ",La.createElement("div",{style:{color:"#fff"},dangerouslySetInnerHTML:{__html:Do==null?void 0:Do.name.replaceAll(ai,`${ai}`)}})),value:Do==null?void 0:Do.id}))})}},La.createElement(xe.default,{placeholder:"\u8BF7\u8F93\u5165\u5173\u952E\u8BCD\u641C\u7D22",addonBefore:La.createElement(Ji.Z,{overlayClassName:Sl.dropdownst,menu:{items:[{label:La.createElement("div",{onClick:()=>{_a("\u5168\u90E8"),ks("\u5168\u90E8","")}},"\u5168\u90E8"),key:"1"},...Qi==null?void 0:Qi.map(ai=>({label:La.createElement("div",{onClick:()=>{_a(ai.name),ks("Enter",ai)}},ai==null?void 0:ai.name),key:ai.id}))]}},La.createElement("div",{style:{display:"flex",alignItems:"center"}},La.createElement("div",{className:Sl.textname,style:{width:"60rem"}},Sa),La.createElement("div",{style:{height:"22rem",background:"linear-gradient( 180deg, rgba(255,255,255,0) 0%, #AEAEAE 52%, rgba(255,255,255,0) 100%)",width:"1rem"}})))})))),La.createElement("div",{style:{display:"flex",position:"absolute",right:"0rem",zIndex:"3"}},((ke=y==null?void 0:y.detail)==null?void 0:ke.sync_uuid)&&((We=y==null?void 0:y.detail)==null?void 0:We.sync_uuid)===re&&((je=y==null?void 0:y.detail)==null?void 0:je.can_managed)&&La.createElement(an.Z,{title:"\u540C\u6B65"},La.createElement("img",{className:"current",onClick:(0,gs.debounce)(()=>{Pe.default.confirm({title:"\u63D0\u793A",icon:null,centered:!0,getContainer:()=>xn.current,content:"\u8BF7\u786E\u5B9A\u662F\u5426\u5C06\u540C\u6B65\u8BFE\u7A0B\u7AE0\u8282\u5185\u5BB9\uFF0C\u66F4\u65B0\u540E\u539F\u6709\u77E5\u8BC6\u56FE\u8C31\u5185\u5BB9\u5C06\u88AB\u8986\u76D6\uFF0C\u8986\u76D6\u540E\u53EF\u5728\u7248\u672C\u7BA1\u7406\u4E2D\u9009\u62E9\u6062\u590D\u3002",onOk:()=>Lh(void 0,null,function*(){var ai,ao;const zo=(ai=ae==null?void 0:ae.find(Do=>(Do==null?void 0:Do.uuid)===re))==null?void 0:ai.name;let Yo=yield(0,te.ZP)("/api/knowledge/v2/sync.json",{method:"post",body:{subject_id:(ao=y==null?void 0:y.detail)==null?void 0:ao.id,uuid:re,name:zo}});Yo.status===0&&_e.ZP.info(Yo==null?void 0:Yo.message)})})},500),src:ps===1?`${To}/images/gxxz.png`:`${To}/images/gx.png`,onMouseOut:()=>{ls(!1)},onMouseOver:()=>{ls(1)},style:{width:"40rem",height:"40rem",marginRight:"15rem",marginTop:"5rem"}})),((Ke=y==null?void 0:y.detail)==null?void 0:Ke.can_managed)&&La.createElement("div",{className:Sl.hoverone},La.createElement("div",{onClick:()=>Lh(void 0,null,function*(){var ai;let ao=yield(0,te.ZP)("/api/knowledge/v2/backup.json",{method:"POST",body:{subject_id:(ai=y==null?void 0:y.detail)==null?void 0:ai.id,parentNodeUuid:re}});(ao==null?void 0:ao.status)===0&&_e.ZP.info("\u56FE\u8C31\u4FDD\u5B58\u6210\u529F")})},La.createElement("img",{src:ps===2?`${To}/images/bcbbxz.png`:`${To}/images/bcbb.png`,onMouseOut:()=>{ls(!1)},onMouseOver:()=>{ls(2)}}),La.createElement("div",{className:Sl.name},"\u4FDD\u5B58\u7248\u672C")),La.createElement("div",{onClick:()=>Lh(void 0,null,function*(){var ai;ni.page=1,ni.limit=10;let ao=yield(0,te.ZP)("/api/knowledge/v2/knowledge_histories.json",{mehtod:"get",params:zg({subject_id:(ai=y==null?void 0:y.detail)==null?void 0:ai.id,nodeUuid:re},ni)});Ki(ni),(ao==null?void 0:ao.status)===0&&(to(!0),so(ao))})},La.createElement("img",{src:ps===3?`${To}/images/qhbbxz.png`:`${To}/images/qhbb.png`,onMouseOut:()=>{ls(!1)},onMouseOver:()=>{ls(3)},className:Sl.img}),La.createElement("div",{className:Sl.name},"\u5207\u6362\u7248\u672C"))),La.createElement("div",{className:Sl.hoverone},La.createElement("div",{onClick:()=>{Gr=!1,Sr(!1),Yt(!1),Fs()}},La.createElement("img",{src:ps===4?`${To}/images/gxtxz.png`:`${To}/images/gxt.png`,onMouseOut:()=>{ls(!1)},onMouseOver:()=>{ls(4)}}),La.createElement("div",{className:Sl.name},"\u5173\u7CFB\u56FE")),La.createElement("div",{onClick:()=>{Gr=!0,Sr(!0)}},La.createElement("img",{src:ps===5?`${To}/images/zssxz.png`:`${To}/images/zss.png`,onMouseOut:()=>{ls(!1)},onMouseOver:()=>{ls(5)},className:Sl.img}),La.createElement("div",{className:Sl.name},"\u77E5\u8BC6\u6811"))),La.createElement(an.Z,{title:"\u5168\u5C4F"},La.createElement("img",{className:"current",onClick:()=>{var ai,ao,zo,Yo;(0,US.vp)()?(Cn(!1),(0,US.BU)(),!Gr&&_t?(ai=mt==null?void 0:mt.current)==null||ai.fitCenter():(ao=gt==null?void 0:gt.current)==null||ao.fitView()):(Cn(!0),(0,US.Dj)(xn.current),!Gr&&_t?(zo=mt==null?void 0:mt.current)==null||zo.fitCenter():(Yo=gt==null?void 0:gt.current)==null||Yo.fitView())},src:ps===6?`${To}/images/qpxz.png`:`${To}/images/qp.png`,onMouseOut:()=>{ls(!1)},onMouseOver:()=>{ls(6)},style:{width:"40rem",height:"40rem",marginRight:"15rem",marginTop:"5rem"}})),((Ze=y==null?void 0:y.detail)==null?void 0:Ze.can_managed)&&La.createElement("div",{className:Sl.hoverone,style:{marginRight:"0rem"}},La.createElement("div",{onClick:()=>{pa(!0)}},La.createElement("img",{src:ps===10?`${To}/images/drxz.png`:`${To}/images/dr.png`,onMouseOut:()=>{ls(!1)},onMouseOver:()=>{ls(10)}}),La.createElement("div",{className:Sl.name},"\u5BFC\u5165")),La.createElement("div",{onClick:()=>{var ai;(0,ht.FH)("",On.Z.API_SERVER+`/api/knowledge/v2/export.json?subject_id=${(ai=y==null?void 0:y.detail)==null?void 0:ai.id}&fileType=xlsx&parentNodeUuid=${re}`)}},La.createElement("img",{src:ps===11?`${To}/images/dcxz.png`:`${To}/images/dc.png`,onMouseOut:()=>{ls(!1)},onMouseOver:()=>{ls(11)},className:Sl.img}),La.createElement("div",{className:Sl.name},"\u5BFC\u51FA"))))),_t&&!Gr&&La.createElement("div",{style:{width:"100%",height:"100vh",opacity:0},ref:ms}),La.createElement("div",{id:"myDiagramDiv",style:{height:"100vh",width:"100%",visibility:Gr?"visible":"hidden"}},Gr?La.createElement(rZ,{ref:gt,setzoomsize:ki,setshowdetail:fr,setitems:nr,nodeUuid:re,subject_id:(Je=y==null?void 0:y.detail)==null?void 0:Je.id}):""),La.createElement(jc,{tpacti:me,initdata:se,uuid:re,Tabsdatas:ae,setshow:Yt,getData:Fs,containerRef:xn,showdetail:An,setshowdetail:fr,items:Ln}),La.createElement(Pe.default,{title:"\u6587\u4EF6\u5BFC\u5165",open:Kr,centered:!0,getContainer:()=>xn.current,okButtonProps:{loading:Ua},onCancel:()=>{pa(!1),Eo([])},onOk:()=>Lh(void 0,null,function*(){var ai,ao,zo,Yo;const Do=new FormData;if(Co.length>0)Do.append("file",Co[0]);else{_e.ZP.warning("\u8BF7\u9009\u62E9\u6587\u4EF6");return}ei(!0),Do.append("subject_id",((ai=y.detail)==null?void 0:ai.id)+""),Do.append("parentNodeUuid",re);let Yl=yield(0,te.ZP)("/api/knowledge/v2/import.json",{method:"post",body:Do},!0);ei(!1),(Yl==null?void 0:Yl.status)===0&&((ao=Yl==null?void 0:Yl.data)!=null&&ao.importErrorFilePath?Pe.default.confirm({icon:null,title:"\u5BFC\u5165\u5931\u8D25",centered:!0,content:La.createElement("span",null,"\u68C0\u6D4B\u5230\u672C\u6B21\u5BFC\u5165\u5B58\u5728\u4E0D\u7B26\u5408\u8981\u6C42\u7684\u6570\u636E\uFF0C\u70B9\u51FB\u4E0B\u8F7D",La.createElement("a",{href:`${On.Z.API_SERVER}${(zo=Yl==null?void 0:Yl.data)==null?void 0:zo.importErrorFilePath}`,download:"\u5931\u8D25\u6570\u636E.xlsx"},"\u5BFC\u5165\u5931\u8D25\u7684\u6570\u636E"),"\u67E5\u770B")}):(Fs(),Yt(!1),(Yo=Yl==null?void 0:Yl.data)!=null&&Yo.has_route?_e.ZP.info("\u77E5\u8BC6\u56FE\u8C31\u6570\u636E\u5BFC\u5165\u6210\u529F\uFF0C\u4E3A\u4FDD\u8BC1\u5B66\u4E60\u8DEF\u5F84\u7684\u8282\u70B9\u4E0E\u77E5\u8BC6\u56FE\u8C31\u8282\u70B9\u7ED1\u5B9A\uFF0C\u8BF7\u66F4\u65B0\u5B66\u4E60\u8DEF\u5F84"):_e.ZP.info("\u5BFC\u5165\u6210\u529F"),Eo([]),nr({}),pa(!1)))})},(ct==null?void 0:ct.length)>0&&La.createElement("div",{style:{marginBottom:30,color:"#333333"}},"\u68C0\u6D4B\u5F53\u524D\u5DF2\u5B58\u5728\u6570\u636E\uFF0C\u5BFC\u5165\u540E\u539F\u6570\u636E\u5C06\u4F1A\u88AB\u8986\u76D6\uFF0C\u6309\u7167\u6700\u65B0\u5BFC\u5165\u7684\u4E3A\u4E3B\uFF0C\u5982\u9700\u7EE7\u7EED\u5BFC\u5165\uFF0C\u8BF7\u6309\u7167\u4E0B\u65B9\u6B65\u9AA4\u8FDB\u884C"),La.createElement("p",{style:{color:"#5F6368"}},"\u6B65\u9AA41\uFF1A",La.createElement("span",{style:{color:"#000000"}},"\u4E0B\u8F7D"),La.createElement("a",{href:`${On.Z.API_SERVER}/api/knowledge/v2/down_template.json`,download:"\u6A21\u7248.xlsx"},"\u77E5\u8BC6\u56FE\u8C31\u5BFC\u5165\u6A21\u7248")),La.createElement(Ru.Z,null,La.createElement(Dr.Z,{style:{color:"#5F6368"}},"\u6B65\u9AA42\uFF1A",La.createElement("span",{style:{color:"#000000"}},"\u4E0A\u4F20\u586B\u5199\u597D\u7684\u300A\u77E5\u8BC6\u56FE\u8C31\u5BFC\u5165\u6A21\u7248\u300B"))),La.createElement(Ru.Z,{style:{marginTop:10,marginLeft:50}},La.createElement(Ui.default,zg({},Rc),La.createElement("span",{style:{padding:"0px 16px",color:"#1b8565",cursor:"pointer",height:32,alignItems:"center",display:"inline-flex",borderRadius:2,border:"1px solid #1b8565",background:"#1b8565 linear-gradient(180deg, #FFFFFF 0%, #F6F7F9 100%)",boxShadow:"0px 2px 4px 0px #E0DFE1, inset 0px 1px 3px 0px rgba(255,255,255,0.5)"}},La.createElement("i",{style:{fontSize:12,marginRight:6},className:"iconfont icon-tianjiashitixiaojiahao"})," \u9009\u62E9\u6587\u4EF6")))),La.createElement(Zt,null,La.createElement(La.Fragment,null,La.createElement(Pe.default,{title:"\u7248\u672C\u8BB0\u5F55",centered:!0,width:1200,open:ti,footer:!1,getContainer:()=>xn.current,onCancel:()=>{to(!1)}},La.createElement(va.default,{dataSource:ji==null?void 0:ji.data,pagination:!1,columns:[{title:"\u7248\u672C\u4FDD\u5B58\u65F6\u95F4",dataIndex:"created_at",ellipsis:!0,key:"created_at",render:(ai,ao)=>La.createElement("div",null,La.createElement("span",null,ai),(ao==null?void 0:ao.is_now_version)&&La.createElement("span",{style:{background:"#2BAC8E",padding:"4rem",fontSize:"12rem",marginLeft:"5rem",color:"#fff"}},"\u5F53\u524D\u4F7F\u7528\u7248\u672C"))},{title:"\u4FDD\u5B58\u4EBA",dataIndex:"username",ellipsis:!0,key:"username"},{title:"\u64CD\u4F5C",dataIndex:"name",ellipsis:!0,key:"name",render:(ai,ao)=>La.createElement("div",null,La.createElement("span",{style:{color:"#1B8565",marginRight:"30rem",cursor:"pointer"},onClick:()=>Lh(void 0,null,function*(){var zo,Yo;let Do=yield(0,te.ZP)(`${ao==null?void 0:ao.url}`,{method:"get"});(Do==null?void 0:Do.status)===0&&((Yo=(zo=Do==null?void 0:Do.data)==null?void 0:zo.nodes)==null?void 0:Yo.length)>0&&aa(Do==null?void 0:Do.data)})},"\u67E5\u770B"),La.createElement("span",{onClick:()=>Lh(void 0,null,function*(){var zo;if(ao!=null&&ao.is_now_version)return;let Yo=yield(0,te.ZP)("/api/knowledge/v2/restore.json",{method:"post",body:{subject_id:(zo=y==null?void 0:y.detail)==null?void 0:zo.id,backupFilePath:ao==null?void 0:ao.backupFilePath}});(Yo==null?void 0:Yo.status)===0&&(Fs(),to(!1),Yt(!1),_e.ZP.info("\u5207\u6362\u6210\u529F"))}),style:{color:ao!=null&&ao.is_now_version?"#999999":"#1B8565",cursor:"pointer"}},"\u5207\u6362\u81F3\u5F53\u524D\u7248\u672C"))}]}),La.createElement(ln.Z,{hideOnSinglePage:!0,style:{marginTop:"20rem"},pageSize:ni.limit,total:ji==null?void 0:ji.total_count,current:ni.page,onChange:(ai,ao)=>Lh(void 0,null,function*(){var zo;ni.page=ai,ni.limit=ao,Ki(ni);let Yo=yield(0,te.ZP)("/api/knowledge/v2/knowledge_histories.json",{mehtod:"get",params:zg({subject_id:(zo=y==null?void 0:y.detail)==null?void 0:zo.id,nodeUuid:re},ni)});(Yo==null?void 0:Yo.status)===0&&(to(!0),so(Yo))})})),La.createElement(Pe.default,{open:((tt=ra==null?void 0:ra.nodes)==null?void 0:tt.length)>0,title:"\u5386\u53F2\u56FE\u8C31",width:"1200rem",footer:null,getContainer:()=>xn.current,destroyOnClose:!0,onCancel:()=>{aa({})}},La.createElement(dZ,{datas:ra}))))))};var yZ=(0,Ce.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(pZ),Gf={wrap:"wrap___HuFFi",add:"add___GrP2R",dimensionalBall:"dimensionalBall___flm6B",archer:"archer___biVqC",svg:"svg___hXxGw",modal:"modal___DR9M_",mHead:"mHead___I923K",form:"form___W2fTe",mType:"mType___hoISa",listItem:"listItem___JCZwd"},Sd={flex_box_center:"flex_box_center___aEG4A",flex_space_between:"flex_space_between___O70yE",flex_box_vertical_center:"flex_box_vertical_center___rEvY1",flex_box_center_end:"flex_box_center_end___Xp3ui",flex_box_column:"flex_box_column___McZmY",largeBall:"largeBall___SbxSR",middleBall:"middleBall___eKLzh",smallBall:"smallBall___r7xv5",largeBallDish:"largeBallDish___EeTGm",middleBallDish:"middleBallDish___hca4h",smallBallDish:"smallBallDish___rrHxf",smallBallGather:"smallBallGather___hHHqa",box:"box___yWjPn",spectrum:"spectrum___r9a7p",pedestal:"pedestal___Grjvz",spectrumHover:"spectrumHover___OibBM",pedestalHover:"pedestalHover___EcKUJ"};const EZ="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMjkxcHgiIGhlaWdodD0iMTk0cHgiIHZpZXdCb3g9IjAgMCAyOTEgMTk0IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA2MSAoODk1ODEpIC0gaHR0cHM6Ly9za2V0Y2guY29tIC0tPgogICAgPHRpdGxlPuWfuuW6pzwvdGl0bGU+CiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4KICAgIDxkZWZzPgogICAgICAgIDxsaW5lYXJHcmFkaWVudCB4MT0iMjcuNzcyODY0MyUiIHkxPSI0My4xNzgwNjE3JSIgeDI9Ijk3LjIyMjIyMjIlIiB5Mj0iNTAlIiBpZD0ibGluZWFyR3JhZGllbnQtMSI+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMzMTdDRDMiIG9mZnNldD0iMCUiPjwvc3RvcD4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iIzI3MkE5NSIgb2Zmc2V0PSIxMDAlIj48L3N0b3A+CiAgICAgICAgPC9saW5lYXJHcmFkaWVudD4KICAgICAgICA8bGluZWFyR3JhZGllbnQgeDE9IjE0LjI3MTI2ODMlIiB5MT0iMzEuNjQ0NzI5NyUiIHgyPSIxMDAlIiB5Mj0iNzMuMTEyMDA3OCUiIGlkPSJsaW5lYXJHcmFkaWVudC0yIj4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iIzI3NzFEQiIgb2Zmc2V0PSIwJSI+PC9zdG9wPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMjg0REIwIiBvZmZzZXQ9IjEwMCUiPjwvc3RvcD4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgICAgIDxsaW5lYXJHcmFkaWVudCB4MT0iMTAwJSIgeTE9IjM1LjA0MTMwMTklIiB4Mj0iMCUiIHkyPSI2NS41NDY3MzEzJSIgaWQ9ImxpbmVhckdyYWRpZW50LTMiPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMzA2NkI0IiBvZmZzZXQ9IjAlIj48L3N0b3A+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMxNDM4OTQiIG9mZnNldD0iMTAwJSI+PC9zdG9wPgogICAgICAgIDwvbGluZWFyR3JhZGllbnQ+CiAgICAgICAgPGxpbmVhckdyYWRpZW50IHgxPSIyNy43NzI4NjQzJSIgeTE9IjQzLjE1NTA2NzMlIiB4Mj0iOTcuMjIyMjIyMiUiIHkyPSI1MCUiIGlkPSJsaW5lYXJHcmFkaWVudC00Ij4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iIzMxN0NEMyIgb2Zmc2V0PSIwJSI+PC9zdG9wPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMjcyQTk1IiBvZmZzZXQ9IjEwMCUiPjwvc3RvcD4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgICAgIDxsaW5lYXJHcmFkaWVudCB4MT0iMCUiIHkxPSI1MCUiIHgyPSI1MCUiIHkyPSI2NC4yMTc0OTQ1JSIgaWQ9ImxpbmVhckdyYWRpZW50LTUiPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMkY3MEM5IiBvZmZzZXQ9IjAlIj48L3N0b3A+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiM1QjVGRkYiIG9mZnNldD0iMTAwJSI+PC9zdG9wPgogICAgICAgIDwvbGluZWFyR3JhZGllbnQ+CiAgICAgICAgPHBvbHlnb24gaWQ9InBhdGgtNiIgcG9pbnRzPSIxNDQuNzQ1OSAxNi40Njc5NzAxIDI2MC4xMzI5MzUgNzIuOTI3OTU1NiAxNDYuMTg4MjM4IDEzOC43NTc4OTYgMzAuODAxMjAzMyA3Mi4yMDcxODk5Ij48L3BvbHlnb24+CiAgICAgICAgPGZpbHRlciB4PSItMS41JSIgeT0iLTIuOSUiIHdpZHRoPSIxMDMuMSUiIGhlaWdodD0iMTA1LjclIiBmaWx0ZXJVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giIGlkPSJmaWx0ZXItNyI+CiAgICAgICAgICAgIDxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249IjEiIGluPSJTb3VyY2VBbHBoYSIgcmVzdWx0PSJzaGFkb3dCbHVySW5uZXIxIj48L2ZlR2F1c3NpYW5CbHVyPgogICAgICAgICAgICA8ZmVPZmZzZXQgZHg9IjAiIGR5PSI1IiBpbj0ic2hhZG93Qmx1cklubmVyMSIgcmVzdWx0PSJzaGFkb3dPZmZzZXRJbm5lcjEiPjwvZmVPZmZzZXQ+CiAgICAgICAgICAgIDxmZUNvbXBvc2l0ZSBpbj0ic2hhZG93T2Zmc2V0SW5uZXIxIiBpbjI9IlNvdXJjZUFscGhhIiBvcGVyYXRvcj0iYXJpdGhtZXRpYyIgazI9Ii0xIiBrMz0iMSIgcmVzdWx0PSJzaGFkb3dJbm5lcklubmVyMSI+PC9mZUNvbXBvc2l0ZT4KICAgICAgICAgICAgPGZlQ29sb3JNYXRyaXggdmFsdWVzPSIwIDAgMCAwIDAuNzk2ODM2ODkgICAwIDAgMCAwIDAuOTc0NjYwMTA4ICAgMCAwIDAgMCAxICAwIDAgMCAwLjUgMCIgdHlwZT0ibWF0cml4IiBpbj0ic2hhZG93SW5uZXJJbm5lcjEiPjwvZmVDb2xvck1hdHJpeD4KICAgICAgICA8L2ZpbHRlcj4KICAgIDwvZGVmcz4KICAgIDxnIGlkPSLpobXpnaItMSIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9IjA4MjAtM0Tlm77osLEt5YiH5Zu+VjQuMCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTQ0OS4wMDAwMDAsIC0xMzQ0LjAwMDAwMCkiPgogICAgICAgICAgICA8ZyBpZD0i5Z+65bqnIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg0NDkuMDAwMDAwLCAxMzQ0LjAwMDAwMCkiPgogICAgICAgICAgICAgICAgPHBvbHlnb24gaWQ9IuefqeW9oiIgZmlsbD0idXJsKCNsaW5lYXJHcmFkaWVudC0xKSIgb3BhY2l0eT0iMC4zMjA4NzA1MzYiIHBvaW50cz0iMTQ0LjU4NDkwNiAzOC45MDI0MTk0IDI5MSAxMTAuNDY0MzA1IDE0Ni40MTUwOTQgMTkzLjkwMjQxOSAwIDEwOS41NTA3NDkiPjwvcG9seWdvbj4KICAgICAgICAgICAgICAgIDxwb2x5Z29uIGlkPSLnn6nlvaIiIGZpbGw9InVybCgjbGluZWFyR3JhZGllbnQtMikiIHBvaW50cz0iLTcuNTMxNzUzZS0xMyA3MC43NTEyNzkgMTQ2LjA3Njk5NCAxNTUuMjI1ODY2IDE0Ni4wNzY5OTQgMTc3Ljc5MzA4NSAtNy41MzE3NTNlLTEzIDkzLjMxODQ5NzMiPjwvcG9seWdvbj4KICAgICAgICAgICAgICAgIDxwb2x5Z29uIGlkPSLnn6nlvaIiIGZpbGw9InVybCgjbGluZWFyR3JhZGllbnQtMykiIHBvaW50cz0iMTQ2LjA3Njk5NCAxNTUuMjI1ODY2IDI5MC45MzQxMzggNzEuNjY2MTY2MiAyOTAuOTM0MTM4IDk0LjIzMzM4NDUgMTQ2LjA3Njk5NCAxNzcuNzkzMDg1Ij48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cG9seWdvbiBpZD0i55+p5b2iIiBmaWxsPSJ1cmwoI2xpbmVhckdyYWRpZW50LTQpIiBwb2ludHM9IjE0NC41NTIxODIgLTUuODk5OTA5NzdlLTEzIDI5MC45MzQxMzggNzEuNjY2MTY2MiAxNDYuMzgxOTU2IDE1NS4yMjU4NjYgLTUuNjg0MzQxODllLTEzIDcwLjc1MTI3OSI+PC9wb2x5Z29uPgogICAgICAgICAgICAgICAgPGcgaWQ9IuefqeW9oiI+CiAgICAgICAgICAgICAgICAgICAgPHVzZSBmaWxsPSJ1cmwoI2xpbmVhckdyYWRpZW50LTUpIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHhsaW5rOmhyZWY9IiNwYXRoLTYiPjwvdXNlPgogICAgICAgICAgICAgICAgICAgIDx1c2UgZmlsbD0iYmxhY2siIGZpbGwtb3BhY2l0eT0iMSIgZmlsdGVyPSJ1cmwoI2ZpbHRlci03KSIgeGxpbms6aHJlZj0iI3BhdGgtNiI+PC91c2U+CiAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==",AZ="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMjk1cHgiIGhlaWdodD0iMTk3cHgiIHZpZXdCb3g9IjAgMCAyOTUgMTk3IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA2MSAoODk1ODEpIC0gaHR0cHM6Ly9za2V0Y2guY29tIC0tPgogICAgPHRpdGxlPuW6leW6p+mAieS4rTwvdGl0bGU+CiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4KICAgIDxkZWZzPgogICAgICAgIDxsaW5lYXJHcmFkaWVudCB4MT0iMjcuNzcyODY0MyUiIHkxPSI0My4xNTUwNjczJSIgeDI9Ijk3LjIyMjIyMjIlIiB5Mj0iNTAlIiBpZD0ibGluZWFyR3JhZGllbnQtMSI+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMzMTdDRDMiIG9mZnNldD0iMCUiPjwvc3RvcD4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iIzI3MkE5NSIgb2Zmc2V0PSIxMDAlIj48L3N0b3A+CiAgICAgICAgPC9saW5lYXJHcmFkaWVudD4KICAgICAgICA8bGluZWFyR3JhZGllbnQgeDE9IjE0LjI3MTI2ODMlIiB5MT0iMzEuNjQ0NzI5NyUiIHgyPSIxMDAlIiB5Mj0iNzMuMTEyMDA3OCUiIGlkPSJsaW5lYXJHcmFkaWVudC0yIj4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iIzI3NzFEQiIgb2Zmc2V0PSIwJSI+PC9zdG9wPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMjg0REIwIiBvZmZzZXQ9IjEwMCUiPjwvc3RvcD4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgICAgIDxsaW5lYXJHcmFkaWVudCB4MT0iMTAwJSIgeTE9IjM1LjA0MTMwMTklIiB4Mj0iMCUiIHkyPSI2NS41NDY3MzEzJSIgaWQ9ImxpbmVhckdyYWRpZW50LTMiPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMzA2NkI0IiBvZmZzZXQ9IjAlIj48L3N0b3A+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMxNDM4OTQiIG9mZnNldD0iMTAwJSI+PC9zdG9wPgogICAgICAgIDwvbGluZWFyR3JhZGllbnQ+CiAgICAgICAgPGxpbmVhckdyYWRpZW50IHgxPSI1MCUiIHkxPSI2LjA2MjU2MyUiIHgyPSI1MCUiIHkyPSI2NC40MjMxOTgxJSIgaWQ9ImxpbmVhckdyYWRpZW50LTQiPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMkY3MEM5IiBvZmZzZXQ9IjAlIj48L3N0b3A+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMyREUxRkQiIG9mZnNldD0iMTAwJSI+PC9zdG9wPgogICAgICAgIDwvbGluZWFyR3JhZGllbnQ+CiAgICAgICAgPHBvbHlnb24gaWQ9InBhdGgtNSIgcG9pbnRzPSIxNDYuMzI3NiAxNi42NDc5MjI2IDI2Mi45NzU1MTcgNzMuNzI0ODcwMiAxNDcuNzg1Njk5IDE0MC4yNzQxNjIgMzEuMTM3NzgxMSA3Mi45OTYyMjgzIj48L3BvbHlnb24+CiAgICAgICAgPGZpbHRlciB4PSItMS4xJSIgeT0iLTIuMCUiIHdpZHRoPSIxMDIuMiUiIGhlaWdodD0iMTA0LjAlIiBmaWx0ZXJVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giIGlkPSJmaWx0ZXItNiI+CiAgICAgICAgICAgIDxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249IjAuNSIgaW49IlNvdXJjZUFscGhhIiByZXN1bHQ9InNoYWRvd0JsdXJJbm5lcjEiPjwvZmVHYXVzc2lhbkJsdXI+CiAgICAgICAgICAgIDxmZU9mZnNldCBkeD0iMCIgZHk9IjQiIGluPSJzaGFkb3dCbHVySW5uZXIxIiByZXN1bHQ9InNoYWRvd09mZnNldElubmVyMSI+PC9mZU9mZnNldD4KICAgICAgICAgICAgPGZlQ29tcG9zaXRlIGluPSJzaGFkb3dPZmZzZXRJbm5lcjEiIGluMj0iU291cmNlQWxwaGEiIG9wZXJhdG9yPSJhcml0aG1ldGljIiBrMj0iLTEiIGszPSIxIiByZXN1bHQ9InNoYWRvd0lubmVySW5uZXIxIj48L2ZlQ29tcG9zaXRlPgogICAgICAgICAgICA8ZmVDb2xvck1hdHJpeCB2YWx1ZXM9IjAgMCAwIDAgMC43OTY4MzY4OSAgIDAgMCAwIDAgMC45NzQ2NjAxMDggICAwIDAgMCAwIDEgIDAgMCAwIDAuNSAwIiB0eXBlPSJtYXRyaXgiIGluPSJzaGFkb3dJbm5lcklubmVyMSI+PC9mZUNvbG9yTWF0cml4PgogICAgICAgIDwvZmlsdGVyPgogICAgPC9kZWZzPgogICAgPGcgaWQ9Iumhtemdoi0xIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8ZyBpZD0iMDgyMC0zROWbvuiwsS3liIflm75WNC4wIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTQ3MS4wMDAwMDAsIC0xMzU0LjAwMDAwMCkiPgogICAgICAgICAgICA8ZyBpZD0i5bqV5bqn6YCJ5LitIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNDcxLjAwMDAwMCwgMTM1NC4wMDAwMDApIj4KICAgICAgICAgICAgICAgIDxnIGlkPSLnvJbnu4QtMyI+CiAgICAgICAgICAgICAgICAgICAgPHBvbHlnb24gaWQ9IuefqeW9oiIgZmlsbD0idXJsKCNsaW5lYXJHcmFkaWVudC0xKSIgb3BhY2l0eT0iMC4zMjA4NzA1MzYiIHBvaW50cz0iMTQ2LjEzMTc2NSAzOS40MTkzNDQyIDI5NC4xMTMyOTggMTExLjg2ODYzNyAxNDcuOTgxNTM0IDE5Ni4zNDE0MjkgLTEuNDIxMDg1NDdlLTEzIDExMC45NDM3NTIiPjwvcG9seWdvbj4KICAgICAgICAgICAgICAgICAgICA8cG9seWdvbiBpZD0i55+p5b2iIiBmaWxsPSJ1cmwoI2xpbmVhckdyYWRpZW50LTIpIiBwb2ludHM9IjEuMTM2ODY4MzhlLTEzIDcxLjUyNDQwOCAxNDcuNjczMjM5IDE1Ni45MjIwODUgMTQ3LjY3MzIzOSAxNzkuNzM1OTA1IDEuMTM2ODY4MzhlLTEzIDk0LjMzODIyNzgiPjwvcG9seWdvbj4KICAgICAgICAgICAgICAgICAgICA8cG9seWdvbiBpZD0i55+p5b2iIiBmaWxsPSJ1cmwoI2xpbmVhckdyYWRpZW50LTMpIiBwb2ludHM9IjE0Ny42NzMyMzkgMTU2LjkyMjA4NSAyOTQuMTEzMjk4IDcyLjQ0OTI5MjYgMjk0LjExMzI5OCA5NS4yNjMxMTI0IDE0Ny42NzMyMzkgMTc5LjczNTkwNSI+PC9wb2x5Z29uPgogICAgICAgICAgICAgICAgICAgIDxwb2x5Z29uIGlkPSLnn6nlvaIiIGZpbGw9InVybCgjbGluZWFyR3JhZGllbnQtMSkiIHBvaW50cz0iMTQ2LjEzMTc2NSAtNC43OTMzNDg4M2UtMTMgMjk0LjExMzI5OCA3Mi40NDkyOTI2IDE0Ny45ODE1MzQgMTU2LjkyMjA4NSAtMS40MjEwODU0N2UtMTMgNzEuNTI0NDA4Ij48L3BvbHlnb24+CiAgICAgICAgICAgICAgICAgICAgPGcgaWQ9IuefqeW9oiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx1c2UgZmlsbD0idXJsKCNsaW5lYXJHcmFkaWVudC00KSIgZmlsbC1ydWxlPSJldmVub2RkIiB4bGluazpocmVmPSIjcGF0aC01Ij48L3VzZT4KICAgICAgICAgICAgICAgICAgICAgICAgPHVzZSBmaWxsPSJibGFjayIgZmlsbC1vcGFjaXR5PSIxIiBmaWx0ZXI9InVybCgjZmlsdGVyLTYpIiB4bGluazpocmVmPSIjcGF0aC01Ij48L3VzZT4KICAgICAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==",xZ="data:image/png;base64,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",SZ="data:image/png;base64,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";var bZ=Object.defineProperty,CZ=Object.defineProperties,PZ=Object.getOwnPropertyDescriptors,t3=Object.getOwnPropertySymbols,wZ=Object.prototype.hasOwnProperty,MZ=Object.prototype.propertyIsEnumerable,n3=(E,a,y)=>a in E?bZ(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,k1=(E,a)=>{for(var y in a||(a={}))wZ.call(a,y)&&n3(E,y,a[y]);if(t3)for(var y of t3(a))MZ.call(a,y)&&n3(E,y,a[y]);return E},_1=(E,a)=>CZ(E,PZ(a)),DZ=({className:E,style:a={},title:y="",childNode:x=[],knowledgeNode:b=[]})=>{const z="rem",ee=[{position:"absolute",zIndex:2,bottom:112,left:44},{position:"absolute",zIndex:3,bottom:94,left:74},{position:"absolute",zIndex:4,bottom:78,left:104},{position:"absolute",zIndex:5,bottom:66,left:136},{position:"absolute",zIndex:6,bottom:82,left:168},{position:"absolute",zIndex:7,bottom:104,left:202},{position:"absolute",zIndex:8,bottom:122,left:166}],re=[{position:"absolute",zIndex:10,bottom:166,left:66},{position:"absolute",zIndex:11,bottom:148,left:120},{position:"absolute",zIndex:12,bottom:150,left:180},{position:"absolute",zIndex:13,bottom:188,left:164},{position:"absolute",zIndex:14,bottom:192,left:114}],ae=(Ee="")=>{if(!Ee)return"-";let Oe=3;return/[\u4e00-\u9fff]/.test(Ee)||(Oe=7),(Ee==null?void 0:Ee.length)>=Oe?(Ee==null?void 0:Ee.slice(0,Oe-1))+"...":Ee},se=()=>(Array.isArray(b)?b.slice(0,7):Array(7).fill("\u77E5\u8BC6\u70B9")).map((ke,We)=>{const je=ee[We],Ke=_1(k1({},je),{bottom:`${je.bottom}${z}`,left:`${je.left}${z}`});return Fe.createElement("div",{key:We,style:Ke,className:Sd.smallBallGather},Fe.createElement("div",{className:Sd.smallBall},Fe.createElement("b",null,ae(ke))),Fe.createElement("div",{className:Sd.smallBallDish}))}),fe=()=>(Array.isArray(x)?x.slice(0,5):Array(5).fill("\u5B50\u8282\u70B9")).map((ke,We)=>{const je=re[We],Ke=_1(k1({},je),{bottom:`${je.bottom}${z}`,left:`${je.left}${z}`});return Fe.createElement("div",{key:We,style:Ke,className:Sd.middleBall},Fe.createElement("div",null,Fe.createElement("b",null,ae(ke))))}),me={position:"absolute",zIndex:1,bottom:0,width:"100%"};return Fe.createElement("div",{className:Kn()(Sd.box,E),style:a},Fe.createElement("img",{className:Sd.pedestal,style:me,src:EZ}),Fe.createElement("img",{className:Sd.pedestalHover,style:me,src:AZ}),se(),Fe.createElement("div",{style:{position:"absolute",zIndex:9,bottom:138+z,left:"50%",transform:"translateX(-50%)"},className:Sd.middleBallDish}),fe(),Fe.createElement("div",{style:{position:"absolute",zIndex:15,bottom:214+z,left:"50%",transform:"translateX(-50%)"},className:Sd.largeBallDish}),Fe.createElement("div",{style:{position:"absolute",zIndex:16,bottom:234+z,left:120+z},className:Sd.largeBall},Fe.createElement("b",null,ae(y))),Fe.createElement("img",{style:_1(k1({},me),{zIndex:17}),className:Sd.spectrum,src:xZ}),Fe.createElement("img",{style:_1(k1({},me),{zIndex:17}),className:Sd.spectrumHover,src:SZ}),Fe.createElement("div",{title:y,style:{position:"absolute",zIndex:18,bottom:304+z,left:0,fontSize:24+z,width:"100%",textAlign:"center"},className:"c-white blod"},(0,ht.Pq)(y,9)))},IZ=Object.defineProperty,TZ=Object.defineProperties,OZ=Object.getOwnPropertyDescriptors,r3=Object.getOwnPropertySymbols,LZ=Object.prototype.hasOwnProperty,BZ=Object.prototype.propertyIsEnumerable,a3=(E,a,y)=>a in E?IZ(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,i3=(E,a)=>{for(var y in a||(a={}))LZ.call(a,y)&&a3(E,y,a[y]);if(r3)for(var y of r3(a))BZ.call(a,y)&&a3(E,y,a[y]);return E},o3=(E,a)=>TZ(E,OZ(a));function NZ(E){const a=new Map,y=[];return E.nodes.forEach(x=>{const b=o3(i3({},x.properties),{children:[]});a.set(b.uuid,b)}),E.relationships.forEach(x=>{const b=a.get(x.startNodeUuid),z=a.get(x.endNodeUuid);b&&z&&b.children.push(z)}),E.nodes.forEach(x=>{const b=x.properties;if(!E.relationships.some(re=>re.startNodeUuid===b.uuid||re.endNodeUuid===b.uuid))return;E.relationships.some(re=>re.endNodeUuid===b.uuid)||y.push(a.get(b.uuid))}),y.length===1?y[0]:y}function s3(E,a){const y=new Set,x=[];return E.forEach(b=>{const z=b[a[0]],ee=b[a[1]];if(!z||!ee)return;const re=`${z}-${ee}`,ae=`${ee}-${z}`;z!==ee&&!y.has(re)&&!y.has(ae)&&(x.push(b),y.add(re),y.add(ae))}),x}const RZ=(E,a)=>{const y=E==null?void 0:E.map(b=>{const z=ee=>{let re=[ee.uuid];return ee.children.forEach(ae=>{re=re.concat(z(ae))}),re};return z(b)});return a.map(b=>{let z,ee;return y.forEach(re=>{re.includes(b.startNodeUuid)&&(z=re[0]),re.includes(b.endNodeUuid)&&(ee=re[0])}),o3(i3({},b),{firstStartNodeUuid:z,firstEndNodeUuid:ee})})};var bu=Ie(59301),FZ=({data:E})=>{const a=(0,Fe.useRef)(),y=(0,Fe.useRef)();function x(ee,re,ae){let se,fe;switch(re){case"top":se=Math.ceil(ee.left+ee.width/2-ae.left),fe=Math.ceil(ee.top-ae.top);break;case"bottom":se=Math.ceil(ee.left+ee.width/2-ae.left),fe=Math.ceil(ee.bottom-ae.top+15);break;case"left":se=Math.ceil(ee.left-ae.left-10),fe=Math.ceil(ee.top+ee.height/2-ae.top+80);break;case"right":se=Math.ceil(ee.right-ae.left+10),fe=Math.ceil(ee.top+ee.height/2-ae.top+50);break}return{x:se,y:fe}}function b(ee,re){const ae={x:parseInt(ee.left+ee.width/2),y:parseInt(ee.top+ee.height/2)},se={x:parseInt(re.left+re.width/2),y:parseInt(re.top+re.height/2)},fe=se.x-ae.x,me=se.y-ae.y;let Ee,Oe;return Math.abs(fe)>Math.abs(me)?(Ee=fe>0?"right":"left",Oe=fe>0?"left":"right"):(Ee=me>0?"bottom":"top",Oe=me>0?"top":"bottom"),{startEdge:Ee,endEdge:Oe}}function z(){let ee=E;if(!(ee!=null&&ee.length))return;const re=document.getElementById("lineContainer"),ae=document.getElementById("parentContainer").getBoundingClientRect();re.querySelectorAll("line").forEach(se=>se.remove()),ee.forEach(se=>{const fe=document.getElementById(se.from),me=document.getElementById(se.to),Ee=fe.getBoundingClientRect(),Oe=me.getBoundingClientRect();let{startEdge:ke,endEdge:We}=se;if(!ke||!We){const Je=b(Ee,Oe);ke=ke||Je.startEdge,We=We||Je.endEdge}const je=x(Ee,ke,ae),Ke=x(Oe,We,ae),Ze=document.createElementNS("http://www.w3.org/2000/svg","line");if(Ze.setAttribute("x1",je.x+se.offsetStart.x),Ze.setAttribute("y1",je.y+se.offsetStart.y),Ze.setAttribute("x2",je.x+se.offsetStart.x+.01),Ze.setAttribute("y2",je.y+se.offsetStart.y),Ze.setAttribute("stroke",`url(#${se.gradient})`),Ze.setAttribute("stroke-width","2"),se.dashed&&Ze.setAttribute("stroke-dasharray","5, 5"),se.arrow==="start"?Ze.setAttribute("marker-start",se!=null&&se.animated?"url(#triangle-start-h)":"url(#triangle-start)"):se.arrow==="end"?Ze.setAttribute("marker-end",se!=null&&se.animated?"url(#triangle-end-h)":"url(#triangle-end)"):se.arrow==="both"&&(Ze.setAttribute("marker-start",se!=null&&se.animated?"url(#triangle-start-h)":"url(#triangle-start)"),Ze.setAttribute("marker-end",se!=null&&se.animated?"url(#triangle-end-h)":"url(#triangle-end)")),se.animated){Ze.classList.add("dashed-line");const Je=document.createElementNS("http://www.w3.org/2000/svg","animate");Je.setAttribute("attributeName","x2"),Je.setAttribute("from",je.x+se.offsetStart.x),Je.setAttribute("to",Ke.x+se.offsetEnd.x+.01),Je.setAttribute("dur","1s"),Je.setAttribute("fill","freeze"),Ze.appendChild(Je);const tt=document.createElementNS("http://www.w3.org/2000/svg","animate");tt.setAttribute("attributeName","y2"),tt.setAttribute("from",je.y+se.offsetStart.y),tt.setAttribute("to",Ke.y+se.offsetEnd.y),tt.setAttribute("dur","1s"),tt.setAttribute("fill","freeze"),Ze.appendChild(tt)}else Ze.setAttribute("x2",Ke.x+se.offsetEnd.x+.01),Ze.setAttribute("y2",Ke.y+se.offsetEnd.y);re.appendChild(Ze)})}return(0,Fe.useEffect)(()=>{E!=null&&E.length&&z()},[E]),(0,Fe.useEffect)(()=>(window.addEventListener("resize",()=>z),window.addEventListener("scroll",()=>z),()=>{window.removeEventListener("resize",z),window.removeEventListener("scroll",z)}),[]),bu.createElement(bu.Fragment,null,bu.createElement("svg",{id:"lineContainer",style:{width:"100%",height:"100%",position:"absolute",top:0,left:0}}),bu.createElement("svg",null,bu.createElement("defs",null,bu.createElement("linearGradient",{id:"gradient1",x1:"0%",y1:"0%",x2:"0%",y2:"100%"},bu.createElement("stop",{"stop-color":"#42BECD",offset:"0%"}),bu.createElement("stop",{"stop-color":"#3C30C6",offset:"100%"})),bu.createElement("linearGradient",{id:"gradient2",x1:"0%",y1:"0%",x2:"100%",y2:"100%"},bu.createElement("stop",{"stop-color":"#2DE1FD",offset:"0%"}),bu.createElement("stop",{"stop-color":"#C7FFB0",offset:"100%"})),bu.createElement("marker",{id:"triangle-start",viewBox:"0 0 10 10",refX:"2",refY:"5",markerWidth:"6",markerHeight:"6",orient:"auto"},bu.createElement("path",{d:"M 10 0 L 0 5 L 10 10 z",fill:"url(#gradient1)"})),bu.createElement("marker",{id:"triangle-end",viewBox:"0 0 10 10",refX:"8",refY:"5",markerWidth:"6",markerHeight:"6",orient:"auto"},bu.createElement("path",{d:"M 0 0 L 10 5 L 0 10 z",fill:"url(#gradient1)"})),bu.createElement("marker",{id:"triangle-start-h",viewBox:"0 0 10 10",refX:"2",refY:"5",markerWidth:"6",markerHeight:"6",orient:"auto"},bu.createElement("path",{d:"M 10 0 L 0 5 L 10 10 z",fill:"url(#gradient2)"})),bu.createElement("marker",{id:"triangle-end-h",viewBox:"0 0 10 10",refX:"8",refY:"5",markerWidth:"6",markerHeight:"6",orient:"auto"},bu.createElement("path",{d:"M 0 0 L 10 5 L 0 10 z",fill:"url(#gradient2)"})))))},kZ=Object.defineProperty,_Z=Object.defineProperties,zZ=Object.getOwnPropertyDescriptors,l3=Object.getOwnPropertySymbols,UZ=Object.prototype.hasOwnProperty,WZ=Object.prototype.propertyIsEnumerable,u3=(E,a,y)=>a in E?kZ(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,c3=(E,a)=>{for(var y in a||(a={}))UZ.call(a,y)&&u3(E,y,a[y]);if(l3)for(var y of l3(a))WZ.call(a,y)&&u3(E,y,a[y]);return E},jZ=(E,a)=>_Z(E,zZ(a)),d3=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},ee=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())}),GZ=({subjectId:E,setActivated:a,onAddSuccess:y})=>{const x=(0,Ce.useSelector)(xn=>xn),{pathsDetail:{detail:b={}}}=x,[z]=we.default.useForm(),[ee,re]=(0,Fe.useState)(""),[ae,se]=(0,Fe.useState)(!1),[fe,me]=(0,Fe.useState)(!0),[Ee,Oe]=(0,Fe.useState)(!1),[ke,We]=(0,Fe.useState)([]),[je,Ke]=(0,Fe.useState)([]),[Ze,Je]=(0,Fe.useState)(null),[tt,st]=(0,Fe.useState)(),gt=(0,Fe.useRef)(),mt=(0,Fe.useRef)();let ct=(0,Fe.useRef)().current,Lt=(0,Fe.useRef)().current,_t=(0,Fe.useRef)(!1).current;const Yt=b==null?void 0:b.edit_of_subject_knowledge;(0,Fe.useEffect)(()=>{E&&$t()},[E]);const $t=()=>d3(void 0,null,function*(){var xn,Ln,nr,An,fr;me(!0);const ra=yield(0,te.ZP)("/api/knowledge/v2/get_node.json",{method:"get",params:{depth:-1,subject_id:E}});if(ra.status===0){re((An=(nr=(Ln=(xn=ra==null?void 0:ra.data)==null?void 0:xn.nodes)==null?void 0:Ln[0])==null?void 0:nr.properties)==null?void 0:An.uuid);const aa=((fr=ra==null?void 0:ra.data)==null?void 0:fr.relationships)||[];let Gr=[],Sr=[];aa==null||aa.forEach(ei=>{["\u5173\u8054"].includes(ei.type)?Gr.push(ei):["\u5305\u542B"].includes(ei.type)&&Sr.push(ei)}),Gr=s3(Gr,["startNodeUuid","endNodeUuid"]);const Kr=jZ(c3({},ra==null?void 0:ra.data),{relationships:Sr}),pa=NZ(Kr);let Ua=RZ((pa==null?void 0:pa.children)||[],Gr);console.log(Ua,3),Ua=s3(Ua,["firstStartNodeUuid","firstEndNodeUuid"]),We((pa==null?void 0:pa.children)||[]),Ke(Ua),console.log(Ua,pa==null?void 0:pa.children,222)}me(!1)});(0,Fe.useEffect)(()=>{je!=null&&je.length&&st(je.map(xn=>({from:xn.firstStartNodeUuid,to:xn.firstEndNodeUuid,animated:!1,dashed:!0,arrow:"both",offsetStart:{x:0,y:0},offsetEnd:{x:0,y:1},gradient:"gradient1"})))},[je]),(0,Fe.useEffect)(()=>{var xn;tt!=null&&tt.length&&((xn=tt==null?void 0:tt.map)==null||xn.call(tt,Ln=>{Ln.animated=Ln.from===Ze||Ln.to===Ze,Ln.gradient=Ln.from===Ze||Ln.to===Ze?"gradient2":"gradient1"}),st([...tt]))},[Ze]);function En(xn){var Ln,nr;if(!_t)return;const An=xn.pageY-ct;(nr=(Ln=gt.current)==null?void 0:Ln.scrollTo)==null||nr.call(Ln,0,Lt-An)}function on(xn){var Ln;_t=!0,ct=xn.pageY,Lt=((Ln=gt.current)==null?void 0:Ln.scrollTop)||0}function Fn(xn){_t=!1}(0,Fe.useEffect)(()=>(document.addEventListener("mousedown",on),document.addEventListener("mousemove",En),document.addEventListener("mouseup",Fn),()=>{document.removeEventListener("mouseup",Fn),document.removeEventListener("mousemove",En),document.removeEventListener("mousedown",on)}),[]);const tr=xn=>d3(void 0,null,function*(){const{nodeType:Ln,description:nr,name:An,tags:fr}=xn;Oe(!0);const ra=yield(0,te.ZP)("/api/knowledge/v2/add_node.json",{method:"POST",body:{label:"\u56FE\u8C31",subject_id:E,properties:{description:nr,rootNodeUuid:ee,name:An,nodeType:Ln[0],tags:(fr==null?void 0:fr.join("\uFF0C"))||"",color:"1"},relationships:[{startNodeUuid:ee,type:"\u5305\u542B"}]}});(ra==null?void 0:ra.status)===0&&(se(!1),$t(),y()),Oe(!1)}),Cn=()=>{const xn=[],Ln=ke==null?void 0:ke.map((An,fr)=>{var ra;let aa;const Gr=fr+1,Sr=xn.length-3,Kr=xn[Sr];Gr%3===1&&(aa={top:Kr!==void 0?`${parseFloat(Kr==null?void 0:Kr.top)+600}rem`:"100rem",left:"50%",marginLeft:"-146rem"}),Gr%3===2&&(aa={top:Kr!==void 0?`${parseFloat(Kr==null?void 0:Kr.top)+600}rem`:"380rem",left:0}),Gr%3===0&&(aa={top:Kr!==void 0?`${parseFloat(Kr==null?void 0:Kr.top)+600}rem`:"380rem",right:0}),xn.push(aa);let pa=[],Ua=(ra=An==null?void 0:An.children)==null?void 0:ra.map(ei=>{var Co;return ei!=null&&ei.children&&((Co=ei==null?void 0:ei.children)==null||Co.forEach(Eo=>{pa.push(Eo.name)})),ei.name});return Ua.length>5&&(Ua[0]="..."),pa.length>7&&(pa[0]="..."),Fe.createElement("div",{className:Gf.listItem,key:fr,onMouseEnter:()=>Je(An==null?void 0:An.uuid),onMouseLeave:()=>Je(null),id:An==null?void 0:An.uuid,onClick:()=>a(An==null?void 0:An.uuid),style:c3({position:"absolute",zIndex:10},aa)},Fe.createElement(DZ,{childNode:Ua,knowledgeNode:pa,title:An==null?void 0:An.name}))}),nr=parseFloat(xn[xn.length-1].top)+352+80+"rem";return Fe.createElement("div",{ref:mt,style:{height:nr}},Ln)};return Fe.createElement(Zt,null,Fe.createElement("div",{className:Gf.wrap},fe&&Fe.createElement(ce.Z,{style:{width:"100%",marginTop:"300rem"},spinning:fe}),!fe&&Fe.createElement(Fe.Fragment,null,Yt&&Fe.createElement("div",{className:Gf.add,onClick:()=>se(!0)},Fe.createElement("i",{className:"iconfont icon-tianjiatixing"})),ke!=null&&ke.length?Fe.createElement("div",{className:Gf.dimensionalBall,ref:gt},Fe.createElement("div",{className:Gf.archer,id:"parentContainer"},Cn(),Fe.createElement(FZ,{data:tt}))):Fe.createElement(pr,{text:"\u6682\u65E0\u56FE\u8C31\uFF0C\u7ACB\u5373\u65B0\u5EFA\u4E00\u4E2A\u56FE\u8C31\u5427\uFF5E",textColor:"#fff",buttonText:Yt&&"\u65B0\u5EFA\u56FE\u8C31",onClick:()=>se(!0)})),Fe.createElement(Pe.default,{open:ae,centered:!0,width:"1000rem",okText:"\u4FDD\u5B58",onCancel:()=>se(!1),cancelText:"\u53D6\u6D88",afterClose:()=>{z.resetFields()},confirmLoading:Ee,onOk:()=>z.submit(),title:"\u65B0\u589E\u77E5\u8BC6\u56FE\u8C31"},Fe.createElement("div",{className:Gf.modal},Fe.createElement("div",{className:Gf.mHead},"\u8282\u70B9\u5C5E\u6027"),Fe.createElement(we.default,{form:z,scrollToFirstError:!0,layout:"horizontal",colon:!1,size:"large",labelCol:{flex:"110rem"},onFinish:tr,className:Gf.form},Fe.createElement(we.default.Item,{label:"\u56FE\u8C31\u540D\u79F0",name:"name",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u8282\u70B9\u540D\u79F0"},{type:"string",max:60,message:"\u8F93\u5165\u8D85\u9650\uFF0C\u8BF7\u7F29\u51CF\u5B57\u7B26\u6570"},{type:"string",whitespace:!0,message:"\u5185\u5BB9\u4E0D\u80FD\u5168\u4E3A\u7A7A\u683C"}]},Fe.createElement(xe.default,{maxLength:60,showCount:!0,placeholder:"\u8BF7\u8F93\u5165"})),Fe.createElement(we.default.Item,{label:"\u7B80\u4ECB",name:"description",rules:[{type:"string",max:5e3,message:"\u8F93\u5165\u8D85\u9650\uFF0C\u8BF7\u7F29\u51CF\u5B57\u7B26\u6570"},{type:"string",whitespace:!0,message:"\u5185\u5BB9\u4E0D\u80FD\u5168\u4E3A\u7A7A\u683C"}]},Fe.createElement(xe.default.TextArea,{maxLength:5e3,showCount:!0,placeholder:"\u8BF7\u8F93\u5165"})),Fe.createElement(we.default.Item,{className:Gf.mType,label:Fe.createElement("span",null,"\u56FE\u8C31\u7C7B\u578B ",Fe.createElement(an.Z,{title:"\u5F53\u524D\u77E5\u8BC6\u56FE\u8C31\u7684\u7C7B\u578B\uFF0C\u5982\uFF1A\u5927\u7EB2\u56FE\u8C31\u3001\u80FD\u529B\u56FE\u8C31"},Fe.createElement(jr.Z,null))),name:"nodeType",rules:[{required:!0,message:"\u8BF7\u9009\u62E9\u8282\u70B9\u7C7B\u578B"}]},Fe.createElement(Vt,{subjectId:E,type:1})))))))},Ml={statistics:"statistics___BP4qi",noUnfold:"noUnfold___EpqXR",wrapBox:"wrapBox___TsFlb",scrollBox:"scrollBox___Oh4zJ",content:"content___NRQFH",title:"title___z20Sn",box:"box___k6Eep",left:"left___Gnxfc",right:"right___rNC9V",head:"head___mT3Wl",radio:"radio___sjK3F",active:"active___oX7gd",average:"average___KVA2l",li:"li____NnY1",yellow:"yellow___CCujs",blue:"blue___m_425",lineTitle:"lineTitle___qo6vf",echartsTwo:"echartsTwo___aC24D",echartsThree:"echartsThree___Z2Q2A",unfold:"unfold___VUl4t",select:"select___dM1mS"},HZ="data:image/png;base64,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",VZ="data:image/png;base64,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",KZ="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAAsCAYAAAA5KtvpAAAAAXNSR0IArs4c6QAABFJJREFUaEPtml9MW1Ucxz+nlxbaUkYvYjdENG7RiEg6jNGQ+aIx08SE6IvZxGS+qGGPPjnj2+J8MIuJMVk00Zgg0zc1Rpm+Gf+M+GdkZKhT4gyMjnWllJWWtrf3mNPLHJcWaBmlXcMvaV96fufez/n+fuf8zjkV/a8ZBzB5R4JO7VpICHlo8A3nt6L/VWNSIttrl9UiEzAyeMz5sOg/khmTkq7aBxbfDB6r2y8OHZFBjzf7rt5Mb61ChyOcWkxrhz86KiaEggxF5Aum5INaBRaCJ9taxPBSaG8D15zQVaVwnQaao/QxlhLSxnU/1Y+RLdxP1QA7BAT8IHIzSekWjUMyBS1NUO+EuTgkUvn9lB84mwVNK4pA921c4bkFS1V/IzS4QA3AYroCwM2nBpnf14fp9RUFvRmNVLSYskIh3XryOMJIc+WZw1sKvdrAlT2kFbAzPEVGDxB5eqDi0EUDzyetSWC1UFk+oq74LPqFURrD/9AUOo8jm8n9nNwR4M/HBzDc5Q1vhwO8LvC5N5jDV5MQXVg/u1wLUe789TP8F88hpFnQIdkUYPyxATJlhlYPb/WBu97+GkUpHJ6HZIEZb3lX/qkx9vw0hJYpsBasQE807+LsE6+AkqKM1tgAeuMGgC/HYNGKyoKmFL37uw9XVXW5k3Ro/NX7PLMd3WVEtbr21kPLiuwpSuG1gLVUguCXb+JMxdcF2ErYsgHfNfIpt06M5GANl4doWyfzgT25HM3U+9h9eghP7BKbBauKi08+t9eNDg0O9uUXN5uusGdumu6v3iLT4ONCTx+RjmBeXt7/9XE8sdCmhbECPjG4rHAG6jTBy/1bANx+dhjPXIiJh54lW+8pGNJdw28z3floSTkbnoVozF4qteoC/w4wDDjxcYWAO377gsngU8g1ZltP9CIJ/23r5vfyBj/8YnLmnH1Z631Ao6dL5OrlyihsmjiyBqbTVRKMamxm4cy4XUG1LQzeZ22V1gSupMIlky45pDPw3pA9LJ11gpees/KwOhVeh/bvfyVTIbuKu+8Q3L5LcEPA1arw9z+bjI7b83DfgxrBzhsErlgOAwsJu8xqH+peKtjLBlwphVNpeP+kPQ9dTsGLB608LBtwpRTeBga2Fa6lSaumQ3r2KsRX7OtvBuAmNzR7N3AAkMnCzJz9PKvagVWpurM5/5y7qAMANUZZE1KZ69DqfH30D3slpfYQe++16uHJS3A5Yv+9PSAI3GL1Nfr7Cl8Bezst36kZmLlS2Nc08+vw3HOXfJW/ur1wu0DVBSutaOCN1s3V5rcNvNaFuAoVV121aZb/PmpzsspNiwr34i/Er93MVTtyYhHU5VohKwnY2wDqU82m7orjydXP0UsCrmbQYt8tD3g6IvdLSe5PH7VomoPunboYyy1f6ktK2TAdYRS4p+aABT+26TwihMidTPy/TM/EZcBY5HUEPUJyE8zL60gjSEk47RYc1XURu9b6P7vslVpOgNBqAAAAAElFTkSuQmCC",ZZ="data:image/png;base64,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",QZ="data:image/png;base64,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",WS={wave:"wave___rx4XG",fillWrap:"fillWrap___q512j",svgBox:"svgBox___DfbUu"},YZ=Object.defineProperty,f3=Object.getOwnPropertySymbols,XZ=Object.prototype.hasOwnProperty,JZ=Object.prototype.propertyIsEnumerable,h3=(E,a,y)=>a in E?YZ(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,qZ=(E,a)=>{for(var y in a||(a={}))XZ.call(a,y)&&h3(E,y,a[y]);if(f3)for(var y of f3(a))JZ.call(a,y)&&h3(E,y,a[y]);return E};const $ee=E=>React.createElement("svg",qZ({width:449,height:204,xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink"},E),React.createElement("title",null,"\u6CE2\u7EB9"),React.createElement("defs",null,React.createElement("linearGradient",{x1:"50%",y1:"41.532%",x2:"51.437%",y2:"65.254%",id:"water_svg__c"},React.createElement("stop",{stopColor:"#34D5A2",offset:"0%"}),React.createElement("stop",{stopColor:"#1D9F76",offset:"100%"})),React.createElement("path",{id:"water_svg__a",d:"M0 0h449v204H0z"})),React.createElement("g",{fill:"none",fillRule:"evenodd"},React.createElement("mask",{id:"water_svg__b",fill:"#fff"},React.createElement("use",{xlinkHref:"#water_svg__a"})),React.createElement("g",{mask:"url(#water_svg__b)"},React.createElement("path",{d:"M0 7.704c14.667 8 29.667 8 45 0 6.537-3.41 23.776-14.982 45 0 17 12 29 9 45 0s31-9 45 0c25 17 35 8 45 0s32.344-7.91 45 0c16 10 32 10 45 0 10.947-8.42 33.124-8.71 45 0 15 11 31.839 11.136 45 0 13-11 30-9.517 45 0s15 17 45 0v196H0v-196Z",fill:"url(#water_svg__c)",transform:"translate(-40)"}),React.createElement("path",{d:"M0 11c14.667 8 29.667 8 45 0 6.537-3.41 23.776-14.982 45 0 17 12 29 9 45 0s31-9 45 0c25 17 35 8 45 0s32.344-7.91 45 0c16 10 32 10 45 0 10.947-8.42 33.124-8.71 45 0 15 11 31.839 11.137 45 0 13-11 30-10 45 0s15 17 45 0v193H0V11Z",fill:"#38E5AE"}))));var $Z="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDQ5IiBoZWlnaHQ9IjIwNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+PGRlZnM+PGxpbmVhckdyYWRpZW50IHgxPSI1MCUiIHkxPSI0MS41MzIlIiB4Mj0iNTEuNDM3JSIgeTI9IjY1LjI1NCUiIGlkPSJjIj48c3RvcCBzdG9wLWNvbG9yPSIjMzRENUEyIiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iIzFEOUY3NiIgb2Zmc2V0PSIxMDAlIi8+PC9saW5lYXJHcmFkaWVudD48cGF0aCBpZD0iYSIgZD0iTTAgMGg0NDl2MjA0SDB6Ii8+PC9kZWZzPjxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+PG1hc2sgaWQ9ImIiIGZpbGw9IiNmZmYiPjx1c2UgeGxpbms6aHJlZj0iI2EiLz48L21hc2s+PGcgbWFzaz0idXJsKCNiKSI+PHBhdGggZD0iTTAgNy43MDRjMTQuNjY3IDggMjkuNjY3IDggNDUgMCA2LjUzNy0zLjQxIDIzLjc3Ni0xNC45ODIgNDUgMCAxNyAxMiAyOSA5IDQ1IDBzMzEtOSA0NSAwYzI1IDE3IDM1IDggNDUgMHMzMi4zNDQtNy45MSA0NSAwYzE2IDEwIDMyIDEwIDQ1IDAgMTAuOTQ3LTguNDIgMzMuMTI0LTguNzEgNDUgMCAxNSAxMSAzMS44MzkgMTEuMTM2IDQ1IDAgMTMtMTEgMzAtOS41MTcgNDUgMHMxNSAxNyA0NSAwdjE5Nkgwdi0xOTZaIiBmaWxsPSJ1cmwoI2MpIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNDApIi8+PHBhdGggZD0iTTAgMTFjMTQuNjY3IDggMjkuNjY3IDggNDUgMCA2LjUzNy0zLjQxIDIzLjc3Ni0xNC45ODIgNDUgMCAxNyAxMiAyOSA5IDQ1IDBzMzEtOSA0NSAwYzI1IDE3IDM1IDggNDUgMHMzMi4zNDQtNy45MSA0NSAwYzE2IDEwIDMyIDEwIDQ1IDAgMTAuOTQ3LTguNDIgMzMuMTI0LTguNzEgNDUgMCAxNSAxMSAzMS44MzkgMTEuMTM3IDQ1IDAgMTMtMTEgMzAtMTAgNDUgMHMxNSAxNyA0NSAwdjE5M0gwVjExWiIgZmlsbD0iIzM4RTVBRSIvPjwvZz48L2c+PC9zdmc+",eQ=({percentage:E,size:a=180,unit:y="rem"})=>{const[x,b]=(0,Fe.useState)(["",""]),[z,ee]=(0,Fe.useState)(0),re=(0,Fe.useRef)(null),ae=(0,Fe.useRef)(null);(0,Fe.useEffect)(()=>(re.current&&(clearTimeout(ae.current),ae.current=setTimeout(()=>{var Oe;const ke=z+20;ke+a>((Oe=re.current)==null?void 0:Oe.offsetWidth)-40&&b([...x,""]),ee(ke)},200)),()=>{clearTimeout(ae.current)}),[re.current,z]),(0,Fe.useEffect)(()=>(window.addEventListener("resize",se),()=>{window.removeEventListener("resize",se)}),[]);const se=()=>{ee(0)},fe={width:a+y,height:a+y},me=148-a*(E/100),Ee=()=>Fe.createElement("img",{src:$Z,style:{width:`449${y}`,height:`204${y}`}});return Fe.createElement("div",{className:WS.wave,style:fe},Fe.createElement("div",{className:WS.fillWrap},Fe.createElement("div",{style:{fontSize:`28${y}`,zIndex:2,color:"#fff"}},E,"%"),Fe.createElement("div",{className:WS.svgBox,ref:re,style:{top:me+y,transform:`translateX(-${z}px)`}},x.map((Oe,ke)=>Fe.createElement(Ee,{key:ke})))))},Hf={trapezoid:"trapezoid___qw8yM",pillarBox:"pillarBox___rGJCP",pillar1:"pillar1___uJ0zx",point:"point____XIHt",pillar2:"pillar2___pL9k5",pillar3:"pillar3___dUdZf",textBox:"textBox___isldE",text1:"text1___g5Hy9",tip:"tip___PXfJr",line:"line___A5wA_",l:"l___hfZzL",text2:"text2___u2scn",text3:"text3___WSnmy"},tQ=Object.defineProperty,nQ=Object.defineProperties,rQ=Object.getOwnPropertyDescriptors,g3=Object.getOwnPropertySymbols,aQ=Object.prototype.hasOwnProperty,iQ=Object.prototype.propertyIsEnumerable,v3=(E,a,y)=>a in E?tQ(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,m3=(E,a)=>{for(var y in a||(a={}))aQ.call(a,y)&&v3(E,y,a[y]);if(g3)for(var y of g3(a))iQ.call(a,y)&&v3(E,y,a[y]);return E},p3=(E,a)=>nQ(E,rQ(a)),oQ=({dataSource:E=[]})=>{const[a,y]=(0,Fe.useState)([]),[x,b]=(0,Fe.useState)(0),z=(0,Fe.useRef)(String(Math.random()).slice(-6));(0,Fe.useEffect)(()=>{if(E!=null&&E.length){const se=ae(E),fe=E.map((me,Ee)=>p3(m3({value:me,lineWidth:30,pillarWidth:104+se[Ee]},re[Ee]),{from:re[Ee].from+z.current,to:re[Ee].to+z.current}));y(fe),b(x+1)}},[JSON.stringify(E)]),(0,Fe.useEffect)(()=>{x>0&&ee()},[x]),(0,Fe.useEffect)(()=>(window.addEventListener("resize",ee),()=>{window.removeEventListener("resize",ee)}),[x]);const ee=()=>{const se=a.map((fe,me)=>{const{from:Ee,to:Oe}=fe,ke=document.querySelector(`#${Ee}`),We=document.querySelector(`#${Oe}`),je=ke.getBoundingClientRect(),Ke=We.getBoundingClientRect(),Ze=Math.abs(Ke.left-je.left);return p3(m3({},fe),{lineWidth:Ze})});y(se)},re=[{title:"\u5B8C\u6210\u738780%\uFF5E100%",pillarTitle:"80\uFF5E100%",from:"lineStart1",to:"lineEnd1"},{title:"\u5B8C\u6210\u738760%\uFF5E79%",pillarTitle:"60\uFF5E79%",from:"lineStart2",to:"lineEnd2"},{title:"\u5B8C\u6210\u738759%\u4EE5\u4E0B",pillarTitle:"59%\u4EE5\u4E0B",from:"lineStart3",to:"lineEnd3"}];function ae(se){const fe=se.reduce((me,Ee)=>me+Ee,0);return se.map(me=>me/fe*100)}return Fe.createElement("div",{className:Hf.trapezoid},Fe.createElement("div",{className:Hf.textBox},a.map((se,fe)=>{const{value:me,lineWidth:Ee,title:Oe,from:ke}=se,We=fe+1;return Fe.createElement("div",{key:fe,className:Hf[`text${We}`]},Fe.createElement("div",{className:Hf.tip},Oe,Fe.createElement("span",null,me)),Fe.createElement("div",{id:ke,className:Hf.line},Fe.createElement("div",{style:{width:Ee},className:Hf.l})))})),Fe.createElement("div",{className:Hf.pillarBox},a.map((se,fe)=>{const{pillarWidth:me,pillarTitle:Ee,to:Oe}=se,ke=fe+1;return Fe.createElement("div",{key:fe,className:Hf[`pillar${ke}`],style:{width:me+"rem"}},Fe.createElement("span",null,Ee),Fe.createElement("div",{id:Oe,className:Hf.point}))})))},ro=Ie(59301),sQ=Object.defineProperty,y3=Object.getOwnPropertySymbols,lQ=Object.prototype.hasOwnProperty,uQ=Object.prototype.propertyIsEnumerable,E3=(E,a,y)=>a in E?sQ(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,jS=(E,a)=>{for(var y in a||(a={}))lQ.call(a,y)&&E3(E,y,a[y]);if(y3)for(var y of y3(a))uQ.call(a,y)&&E3(E,y,a[y]);return E},cQ=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},ee=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())}),dQ=({subjectId:E,uuid:a,isAll:y})=>{const[x,b]=(0,Fe.useState)(!1),[z,ee]=(0,Fe.useState)({type:0,course_id:null}),[re,ae]=(0,Fe.useState)(!0),[se,fe]=(0,Fe.useState)(!0),[me,Ee]=(0,Fe.useState)([]),[Oe]=(0,Ce.useSearchParams)(),[ke,We]=(0,Fe.useState)({graphCount:0,tagCount:0,resourceCount:0,proportionCount:0}),je=[{name:"",value:0,itemStyle:{color:"rgb(223,209,38)"}},{name:"",value:0,itemStyle:{color:"rgb(6,234,230)"}},{name:"",value:0,itemStyle:{color:"rgb(6,110,247)"}}],[Ke,Ze]=(0,Fe.useState)({averageCompletionRate:0,averageMasteryRate:0,completionRate:[0,0,0],masteryRate:je});(0,Fe.useEffect)(()=>{x?Je(z):ee({type:0,course_id:null})},[x]),(0,Fe.useEffect)(()=>{x&&b(!1)},[a]);const Je=(mt,ct=!1)=>cQ(void 0,null,function*(){var Lt,_t,Yt,$t,En,on,Fn,tr,Cn,xn;ct?fe(!0):ae(!0);const Ln=yield(0,te.ZP)(y?"/api/knowledge/v2/subject_statistics.json":"/api/knowledge/v2/knowledge_statistics.json",{method:"get",params:jS({subject_id:E,parentNodeUuid:a,labels:"\u56FE\u8C31,\u6807\u7B7E,\u8D44\u6E90",depth:-1},mt)});if((Ln==null?void 0:Ln.status)===0){let nr=(Lt=Ln==null?void 0:Ln.data)==null?void 0:Lt.metricCounters;nr=nr||[];const An={graphCount:((_t=nr.find(Gr=>(Gr==null?void 0:Gr.name)==="\u56FE\u8C31"))==null?void 0:_t.count)||0,tagCount:((Yt=nr.find(Gr=>(Gr==null?void 0:Gr.name)==="\u6807\u7B7E"))==null?void 0:Yt.count)||0,resourceCount:(($t=nr.find(Gr=>(Gr==null?void 0:Gr.name)==="\u8D44\u6E90"))==null?void 0:$t.count)||0,proportionCount:(En=Ln==null?void 0:Ln.data)==null?void 0:En.resource_rate};let fr=Object.entries((on=Ln==null?void 0:Ln.data)==null?void 0:on.study_grasp_hash).map(([Gr,Sr],Kr)=>({name:Gr,value:Sr,itemStyle:je[Kr].itemStyle}));const ra={averageCompletionRate:(Fn=Ln==null?void 0:Ln.data)==null?void 0:Fn.study_complete_rate,averageMasteryRate:(tr=Ln==null?void 0:Ln.data)==null?void 0:tr.study_grasp_rate,completionRate:Object.values((Cn=Ln==null?void 0:Ln.data)==null?void 0:Cn.study_complete_hash),masteryRate:fr};console.log(fr,"newMasteryRate");const aa=(xn=Ln==null?void 0:Ln.courses)==null?void 0:xn.map(Gr=>({label:Gr.name,value:Gr.id}));Ee(aa),We(An),Ze(ra)}setTimeout(()=>{ae(!1)},500),fe(!1)}),tt=mt=>{z.type=mt,ee(jS({},z)),(mt!==2||z.course_id)&&Je(z,!0)},st=mt=>{z.course_id=mt,ee(jS({},z)),Je(z,!0)},gt=[{name:"\u5168\u90E8",id:0},{name:"\u81EA\u4E3B\u5B66\u4E60",id:1},{name:"\u8BFE\u5802\u5B66\u4E60",id:2}];return ro.createElement(Zt,null,ro.createElement("div",{className:Ml.statistics},ro.createElement("div",{onClick:()=>b(!0),className:Ml.noUnfold},ro.createElement("img",{style:{width:"32rem",marginBottom:"4rem"},src:HZ}),ro.createElement("span",null,"\u7EDF"),ro.createElement("span",null,"\u8BA1")),ro.createElement("div",{className:Ml.wrapBox,style:{right:x?0:"-600rem"}},re&&ro.createElement(ce.Z,{style:{width:"100%",marginTop:"200rem"},spinning:!0}),!re&&ro.createElement(ro.Fragment,null,ro.createElement("div",{className:Ml.scrollBox},ro.createElement("div",{className:Ml.content},ro.createElement("div",{className:Ml.title},ro.createElement("img",{src:VZ}),ro.createElement("span",null,"\u56FE\u8C31\u7EDF\u8BA1\u5206\u6790")),ro.createElement(Ru.Z,{className:Ml.box,justify:"space-between"},ro.createElement("div",{className:Ml.left},ro.createElement("div",null,ro.createElement("span",null,"\u77E5\u8BC6\u56FE\u8C31\u6570\u91CF"),ro.createElement("b",null,ke==null?void 0:ke.graphCount)),ro.createElement("div",{style:{margin:"18rem 0"}},ro.createElement("span",null,"\u6807\u7B7E\u8282\u70B9\u6570\u91CF"),ro.createElement("b",null,ke==null?void 0:ke.tagCount)),ro.createElement("div",null,ro.createElement("span",null,"\u8D44\u6E90\u8282\u70B9\u6570\u91CF"),ro.createElement("b",null,ke==null?void 0:ke.resourceCount))),ro.createElement("div",{className:Ml.right},x&&ro.createElement(eQ,{percentage:ke==null?void 0:ke.proportionCount}),ro.createElement("div",{className:"c-white",style:{marginTop:"20rem",fontSize:"14rem"}},"\u5DF2\u5173\u8054\u8D44\u6E90\u7684\u6807\u7B7E\u8282\u70B9\u5360\u6BD4"))),ro.createElement("div",{style:{marginTop:"20rem"},className:Ml.title},ro.createElement("img",{src:KZ}),ro.createElement("span",null,"\u5B66\u4E60\u7EDF\u8BA1\u5206\u6790")),ro.createElement("div",{className:Ml.box},Oe.get("type")!=="classrooms"&&ro.createElement("div",{className:Ml.head},ro.createElement("span",{style:{marginRight:"10rem",fontSize:"16rem"}},"\u7EDF\u8BA1\u8303\u56F4"),ro.createElement("div",{className:Ml.radio},gt.map(mt=>ro.createElement("div",{className:z.type===mt.id?Ml.active:"",key:mt.id,onClick:()=>tt(mt.id)},ro.createElement("b",null),ro.createElement("span",null,mt.name)))),z.type===2&&ro.createElement(rr.default,{className:Ml.select,options:me,value:z==null?void 0:z.course_id,onChange:st,placeholder:"\u8BF7\u9009\u62E9",getPopupContainer:mt=>mt.parentNode,style:{width:"156rem",marginLeft:"10rem"},suffixIcon:ro.createElement("i",{className:"iconfont icon-a-bianzu11",style:{color:"#1B8565",fontSize:"16rem"}})})),ro.createElement(ce.Z,{spinning:se},ro.createElement("div",{className:Ml.average},ro.createElement("div",{className:Ml.li},ro.createElement("img",{src:ZZ,style:{marginLeft:0}}),ro.createElement("aside",{className:Ml.yellow},ro.createElement("div",{style:{fontSize:"16rem"}},"\u5E73\u5747\u5B8C\u6210\u7387"),ro.createElement("div",null,ro.createElement("b",{style:{fontSize:"40rem"}},Ke==null?void 0:Ke.averageCompletionRate),ro.createElement("span",{style:{fontSize:"20rem"}},"%")))),ro.createElement("div",{className:Ml.li},ro.createElement("img",{src:QZ}),ro.createElement("aside",{className:Ml.blue},ro.createElement("div",{style:{fontSize:"16rem"}},"\u5E73\u5747\u638C\u63E1\u7387"),ro.createElement("div",null,ro.createElement("b",{style:{fontSize:"40rem"}},Ke==null?void 0:Ke.averageMasteryRate),ro.createElement("span",{style:{fontSize:"20rem"}},"%"))))),ro.createElement("div",{className:Ml.lineTitle},ro.createElement("b",null),ro.createElement("span",null,"\u5B8C\u6210\u7387"),ro.createElement("b",null)),ro.createElement("div",{className:Ml.echartsTwo},ro.createElement(oQ,{dataSource:Ke==null?void 0:Ke.completionRate})),ro.createElement("div",{className:Ml.lineTitle,style:{marginTop:"40rem"}},ro.createElement("b",null),ro.createElement("span",null,"\u638C\u63E1\u7387"),ro.createElement("b",null)),ro.createElement("div",{className:Ml.echartsThree},ro.createElement(Yd,{dataSource:Ke==null?void 0:Ke.masteryRate})))))),x&&ro.createElement("div",{onClick:()=>b(!1),className:Ml.unfold})))))},Ql={statistics:"statistics___BZJje",noUnfold:"noUnfold___L4va9",wrapBox:"wrapBox___tHLW6",scrollBox:"scrollBox___m8AGu",content:"content____Gl9N",title:"title___SAaGy",top:"top___h1nbU",topLi:"topLi___Ib2Tu",bottom:"bottom___ZKnwW",bottomLi:"bottomLi___YAGiM",echarts:"echarts___M5Dkf",name:"name___XhFko",unfold:"unfold___I5om1",select:"select___TcV_B"},fQ="data:image/png;base64,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",hQ="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA0CAYAAADWr1sfAAAAAXNSR0IArs4c6QAAB9JJREFUaEPNmmtsHNUVx///O7N2noTgQNxCUUST2G36ipQqtkNFQSlR1C+toJSqJXyAPtQ663wJtCpUtJHAiKKW0koVaopC4l0kIEKohaSkRIVkd506TUJisrvBOKEOJAY3CSSxvTNzTzXjR/zY9czYsyb3ix/3vH5zZ+6959xLTFOTo+lFtsJ2BanQwm6Sp0R0twCd4uhdlctubJ+OUDgdTlwfdi79XYj8rpQ/AbqUUju0o3fEPteQKldclw3waEAeMAxu4pK6TNTglynwMOYug3iYNQ3ZqMAjA+5rTy02DCwmjWtEdDWIawAo09DNXLyq2++VLg1EB8QDZk39liigJw0sIsrKp1dQsIbgGkBuKBYQlXrIWFr31OSBB6yKYItZ2/8gebM9FfDQwNLeXmGZH62jYD0hV/s515DmitpVf5gq8IAfpozevnu5/Oazfn5L9QcGFhE6+fS3RPN+Uq4P6jBaYECAVvN8xR1cscIKGsNIuUDAFw9lrotVylOEfCWsk6iBvXGGajFq6zaGjWVA16cVcnu/SuFfCVT5yRbrLwfwoJ8HzdqGzWFjmhDYzmXuhOhHAcTCGh6SLyOwNmh8kzUrD4WJrSSwnU3dA2BTGGPTPMIAmTZr6m8LE2NRYOto6iYSLe46GsbYtAO7yxWMH8RqV74WNM5xwH35N24wtPEygSuCGplILtQrLdqE1jG4PyEmtBigiDs1gxSQNmgUoIwCSO2tz2DWrKlbzcG//WIeBSzvtc1yPrZ2QuSzfopB+32BRRS0MxOOPRPiBJ8rqGwo8wLM2EWQ95g19a8EiWkUsJPNbBDo+4IoBpUpCSwgnMIcaHs2RHxXi5L+3JE939NmvP23W7hu6wW/uIYdSVdrlXPByUAw208pTH9RYMeeAbtwBSBGGFslZe0CjL3JYxD9PTYl9k9kcxjYyaY3CcSdmSNt44Dtwlw41pxInbiz68GXwXOnLUB+yXjysVL2PeCLudS1FWAaImbUgVwCztyJQt9maGtW1D5ce/zvEaiOfQOmyUcZT/y8mB8P2MlnfiRaP1SOQFzgWE3Dk/LSY2m9aPnKcvjwGHu6oA7/Y4R5bmRT4rdj/XnA1tHUdhJ15QjGA975R1Oqlzyua79WDhcDg3r+f1BtL462r9RdXN+ybeQ/ea49ddVsA29GsckoRiPnPthqZp7dINVLKsoJjEIvjFRyTAg8i1mzavnDv5we6qCdTX0HwBPlevTMp5XqbFso1UtQVmABjNef9ioFY9o2NiXvGga2jqYeIXF3WYC1M4O5PfPVu29CFlwP/YXVZXHjGRWBsWcr4BQpiBi8iY2J171X385nNkPrtWWJpNC3gB2tMRcYVJBPLYVUlGWShvq4G+jpKo5Bbmc84SUZtLPpvwOyPHJgrStg9VbxnTZ4wJ9sK8CIfZqNz/TQzqX+DcG1kcfj7qQcaza7O8EPT0RrXjR45j3ALoSwqxrZ1PInd4SPA1IRQjOYaKFvQahkIJjVYSl+cAKq/Z/BtYgdjCfX0smljojgquCaASTdxMC6uHBKSYGfm56TMA7v9JO61E92MZ74DK1s+jVCaoNrBpAc/H4DSE5ahKeOQWXfCKdPNY92LpOA6K+H0/SR9rKh/vmR2hxjjCcOQnX+J5wLw6yjlU39nsAd4TR9gWfC7r8yUptjjKljafDk0XAu3PXYyWeaROv7w2leBsCHdoJnToYL2x3h/vY9ywxDvRpO8xMGtm0YqW2A9spawZvJ5QPZUja1j8B1wTV9JLUTg9W3IDJ7Y7/f7uNQbwUuVF7SNrhoKB/+jWh9b6QBFi5Wl2tZUm/9C+zuCBvuaTYlq4fy4QYSz4e1MKF8offqgXJrxM1NEva2hNxleVWQFxlPfHu4phX5nnpwaxkxrjczuzN06Ebc59a6LlUtj2XqHEdvD22olEI5vmN3smp9DrB6Q4ZJDcaWMr6lY1Q92M6mngEQXdIa8X5aHT8AHj8QEtYV5wtsStzu/TZSW3KpWkf4anT1YmsWnMK8SUQ4XqW/F8a+54on+H4ODDSwMel9B+Mq/nYufTdEHvGzEbjf6q2Cu7eeShMNdfAVt+4c3gq5i/HEN4YUS50eRlf2cb9lu79qKkuUyu4BT+UnA3sG4JcYbxkuhRQFFtltOrkZzwLSEN5LEY0pnDaMKrCHDUbhdq5PvjBSreQhlhzYfaU9s/JpAtEUz63CvLCnDnw/D5XfW6wSGQCdT7ApsWGs4ISndtLWFtNz7IcF+vsBPPiLWP3zoe0ZvoIiYMc+qK7J3jdVzWxq+UUxP4GOKQevP/w6kmK934bELkC17w6fCQ1MwQKojYy3PF7qoQYCdpUl1/plB/pXEKn3HSE/Ae1Uevmyexg+1ATg6Q6wcz/Yf97Pwvh+8m0o9VM2bpsw8wsMPOTByrbeAugHplwWcmFtay60PRM9XVTv7AMvnJkMaB+IZkhVM+NP9vsZCA3sjbaIcvKZNQDWCrCaIqGrGwKcVOAO/dH7e83M86sg+AkgIVJK7ge4BTN0kj9OfugHOuE6HFR5EN6ws+mVgNxKqsUgForIwsGLbAToEOjWEO8WPMEjtuPsrPz8qiMj/bhXG/Hndctg6XpvORQsBlAJSCVI95LLuwDaQbRDmRn+bGvI+s6At0mNcJAH4q7lOGzOxRdvPEv3Bs5l0v4Pd16n/zI2mQ0AAAAASUVORK5CYII=",gQ="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAAsCAYAAAA5KtvpAAAAAXNSR0IArs4c6QAABFJJREFUaEPtml9MW1Ucxz+nlxbaUkYvYjdENG7RiEg6jNGQ+aIx08SE6IvZxGS+qGGPPjnj2+J8MIuJMVk00Zgg0zc1Rpm+Gf+M+GdkZKhT4gyMjnWllJWWtrf3mNPLHJcWaBmlXcMvaV96fufez/n+fuf8zjkV/a8ZBzB5R4JO7VpICHlo8A3nt6L/VWNSIttrl9UiEzAyeMz5sOg/khmTkq7aBxbfDB6r2y8OHZFBjzf7rt5Mb61ChyOcWkxrhz86KiaEggxF5Aum5INaBRaCJ9taxPBSaG8D15zQVaVwnQaao/QxlhLSxnU/1Y+RLdxP1QA7BAT8IHIzSekWjUMyBS1NUO+EuTgkUvn9lB84mwVNK4pA921c4bkFS1V/IzS4QA3AYroCwM2nBpnf14fp9RUFvRmNVLSYskIh3XryOMJIc+WZw1sKvdrAlT2kFbAzPEVGDxB5eqDi0EUDzyetSWC1UFk+oq74LPqFURrD/9AUOo8jm8n9nNwR4M/HBzDc5Q1vhwO8LvC5N5jDV5MQXVg/u1wLUe789TP8F88hpFnQIdkUYPyxATJlhlYPb/WBu97+GkUpHJ6HZIEZb3lX/qkx9vw0hJYpsBasQE807+LsE6+AkqKM1tgAeuMGgC/HYNGKyoKmFL37uw9XVXW5k3Ro/NX7PLMd3WVEtbr21kPLiuwpSuG1gLVUguCXb+JMxdcF2ErYsgHfNfIpt06M5GANl4doWyfzgT25HM3U+9h9eghP7BKbBauKi08+t9eNDg0O9uUXN5uusGdumu6v3iLT4ONCTx+RjmBeXt7/9XE8sdCmhbECPjG4rHAG6jTBy/1bANx+dhjPXIiJh54lW+8pGNJdw28z3floSTkbnoVozF4qteoC/w4wDDjxcYWAO377gsngU8g1ZltP9CIJ/23r5vfyBj/8YnLmnH1Z631Ao6dL5OrlyihsmjiyBqbTVRKMamxm4cy4XUG1LQzeZ22V1gSupMIlky45pDPw3pA9LJ11gpees/KwOhVeh/bvfyVTIbuKu+8Q3L5LcEPA1arw9z+bjI7b83DfgxrBzhsErlgOAwsJu8xqH+peKtjLBlwphVNpeP+kPQ9dTsGLB608LBtwpRTeBga2Fa6lSaumQ3r2KsRX7OtvBuAmNzR7N3AAkMnCzJz9PKvagVWpurM5/5y7qAMANUZZE1KZ69DqfH30D3slpfYQe++16uHJS3A5Yv+9PSAI3GL1Nfr7Cl8Bezst36kZmLlS2Nc08+vw3HOXfJW/ur1wu0DVBSutaOCN1s3V5rcNvNaFuAoVV121aZb/PmpzsspNiwr34i/Er93MVTtyYhHU5VohKwnY2wDqU82m7orjydXP0UsCrmbQYt8tD3g6IvdLSe5PH7VomoPunboYyy1f6ktK2TAdYRS4p+aABT+26TwihMidTPy/TM/EZcBY5HUEPUJyE8zL60gjSEk47RYc1XURu9b6P7vslVpOgNBqAAAAAElFTkSuQmCC",vQ=Ie.p+"static/a.d3f19668.png",mQ=Ie.p+"static/b.ba7414bd.png",pQ=Ie.p+"static/c.2b6f6bd3.png",yQ=Ie.p+"static/d.f1216ccd.png",Bh={cylinder:"cylinder___rUBlO",cylinderBox:"cylinderBox___NurwX",cylinder1:"cylinder1___LPJD0",item1:"item1___ekrFi",item2:"item2___PuVOv",item3:"item3___x9UjL",point:"point___ZJ1ZD",cylinder2:"cylinder2___aQBbC",cylinder3:"cylinder3___lefpl",textBox:"textBox____wuhT"},EQ=Object.defineProperty,AQ=Object.defineProperties,xQ=Object.getOwnPropertyDescriptors,A3=Object.getOwnPropertySymbols,SQ=Object.prototype.hasOwnProperty,bQ=Object.prototype.propertyIsEnumerable,x3=(E,a,y)=>a in E?EQ(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,S3=(E,a)=>{for(var y in a||(a={}))SQ.call(a,y)&&x3(E,y,a[y]);if(A3)for(var y of A3(a))bQ.call(a,y)&&x3(E,y,a[y]);return E},b3=(E,a)=>AQ(E,xQ(a)),CQ=({dataSource:E=[]})=>{const[a,y]=(0,Fe.useState)([]),[x,b]=(0,Fe.useState)(0),z=(0,Fe.useRef)(String(Math.random()).slice(-6));console.log(E,a,223),(0,Fe.useEffect)(()=>{if(E!=null&&E.length){const se=ae(E),fe=E.map((me,Ee)=>b3(S3({value:me,lineWidth:30,cylinderWidth:40+se[Ee]},re[Ee]),{from:re[Ee].from+z.current,to:re[Ee].to+z.current}));y(fe),b(x+1)}},[JSON.stringify(E)]),(0,Fe.useEffect)(()=>{x>0&&ee()},[x]),(0,Fe.useEffect)(()=>(window.addEventListener("resize",ee),()=>{window.removeEventListener("resize",ee)}),[x]);const ee=()=>{const se=a.map((fe,me)=>{const{from:Ee,to:Oe}=fe,ke=document.querySelector(`#${Ee}`),We=document.querySelector(`#${Oe}`),je=ke.getBoundingClientRect(),Ke=We.getBoundingClientRect(),Ze=Math.abs(Ke.left-je.left);return b3(S3({},fe),{lineWidth:Ze})});y(se)},re=[{title:"\u90E8\u5206\u638C\u63E1  ",from:"lineStart1",to:"lineEnd1"},{title:"\u5168\u90E8\u638C\u63E1  ",from:"lineStart2",to:"lineEnd2"},{title:"\u672A  \u638C  \u63E1  ",from:"lineStart3",to:"lineEnd3"}];function ae(se){const fe=se.reduce((me,Ee)=>me+Ee,0);return se.map(me=>me/fe*122)}return Fe.createElement("div",{className:Bh.cylinder},Fe.createElement("div",{className:Bh.cylinderBox},a.map((se,fe)=>{const{cylinderWidth:me,lineWidth:Ee,from:Oe}=se,ke=fe+1;return Fe.createElement("div",{key:ke,className:Bh[`cylinder${ke}`],style:{width:me+"rem"}},Fe.createElement("div",{className:Bh.item1}),Fe.createElement("div",{className:Bh.item2}),Fe.createElement("div",{className:Bh.item3}),Fe.createElement("div",{id:Oe,style:{width:Ee},className:Bh.point}))})),Fe.createElement("div",{className:Bh.textBox},a.map((se,fe)=>{const{title:me,to:Ee,value:Oe}=se,ke=fe+1;return Fe.createElement("div",{key:ke,id:Ee},Fe.createElement("span",{dangerouslySetInnerHTML:{__html:`${me}${Oe}%`}}))})))},bo=Ie(59301),PQ=Object.defineProperty,C3=Object.getOwnPropertySymbols,wQ=Object.prototype.hasOwnProperty,MQ=Object.prototype.propertyIsEnumerable,P3=(E,a,y)=>a in E?PQ(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,w3=(E,a)=>{for(var y in a||(a={}))wQ.call(a,y)&&P3(E,y,a[y]);if(C3)for(var y of C3(a))MQ.call(a,y)&&P3(E,y,a[y]);return E},DQ=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},ee=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())}),IQ=({subjectId:E,uuid:a,isAll:y})=>{const[x,b]=(0,Fe.useState)(!1),[z,ee]=(0,Fe.useState)({course_id:null}),[re,ae]=(0,Fe.useState)(!0),[se,fe]=(0,Fe.useState)(!0),[me,Ee]=(0,Fe.useState)([]),[Oe]=(0,Ce.useSearchParams)(),[ke,We]=(0,Fe.useState)({graphCount:0,tagCount:0,resourceCount:0,proportionCount:0}),je=[{name:"\u5DF2\u5B8C\u6210",value:0,itemStyle:{color:"rgb(223,209,38)"}},{name:"\u5F85\u5F00\u59CB",value:0,itemStyle:{color:"rgb(6,234,230)"}},{name:"\u90E8\u5206\u5B8C\u6210",value:0,itemStyle:{color:"rgb(6,110,247)"}}],[Ke,Ze]=(0,Fe.useState)({averageCompletionRate:0,averageMasteryRate:0,completionRate:je,masteryRate:[0,0,0],course_rank_num:0,course_rank_all_num:0,system_rank_num:0,system_rank_all_num:0});(0,Fe.useEffect)(()=>{x?Je(z):ee({course_id:null})},[x]),(0,Fe.useEffect)(()=>{x&&b(!1)},[a]);const Je=(st,gt=!1)=>DQ(void 0,null,function*(){var mt,ct,Lt,_t,Yt,$t,En,on,Fn,tr,Cn,xn,Ln,nr,An;gt?fe(!0):ae(!0);const fr=yield(0,te.ZP)(y?"/api/knowledge/v2/subject_statistics.json":"/api/knowledge/v2/knowledge_statistics.json",{method:"get",params:w3({subject_id:E,parentNodeUuid:a,labels:"\u56FE\u8C31,\u6807\u7B7E,\u8D44\u6E90",depth:-1},st)});if((fr==null?void 0:fr.status)===0){let ra=(mt=fr==null?void 0:fr.data)==null?void 0:mt.metricCounters;ra=ra||[];const aa={graphCount:((ct=ra.find(pa=>(pa==null?void 0:pa.name)==="\u56FE\u8C31"))==null?void 0:ct.count)||0,tagCount:((Lt=ra.find(pa=>(pa==null?void 0:pa.name)==="\u6807\u7B7E"))==null?void 0:Lt.count)||0,resourceCount:((_t=ra.find(pa=>(pa==null?void 0:pa.name)==="\u8D44\u6E90"))==null?void 0:_t.count)||0,proportionCount:(Yt=fr==null?void 0:fr.data)==null?void 0:Yt.resource_rate};let Gr=Object.entries(($t=fr==null?void 0:fr.data)==null?void 0:$t.study_complete_hash).map(([pa,Ua],ei)=>({name:je[ei].name,value:Ua,itemStyle:je[ei].itemStyle}));const Sr={averageCompletionRate:(En=fr==null?void 0:fr.data)==null?void 0:En.study_complete_rate,averageMasteryRate:(on=fr==null?void 0:fr.data)==null?void 0:on.study_grasp_rate,completionRate:Gr,masteryRate:Object.values((Fn=fr==null?void 0:fr.data)==null?void 0:Fn.study_grasp_hash),course_rank_num:(tr=fr==null?void 0:fr.data)==null?void 0:tr.course_rank_num,course_rank_all_num:(Cn=fr==null?void 0:fr.data)==null?void 0:Cn.course_rank_all_num,system_rank_num:(xn=fr==null?void 0:fr.data)==null?void 0:xn.system_rank_num,system_rank_all_num:(Ln=fr==null?void 0:fr.data)==null?void 0:Ln.system_rank_all_num},Kr=(nr=fr==null?void 0:fr.courses)==null?void 0:nr.map(pa=>({label:pa.name,value:pa.id}));Ee(Kr),We(aa),Ze(Sr),gt||ee({course_id:((An=Kr==null?void 0:Kr[0])==null?void 0:An.value)||null})}setTimeout(()=>{ae(!1)},500),fe(!1)}),tt=st=>{z.course_id=st,ee(w3({},z)),Je(z,!0)};return bo.createElement(Zt,null,bo.createElement("div",{className:Ql.statistics},bo.createElement("div",{onClick:()=>b(!0),className:Ql.noUnfold},bo.createElement("img",{style:{width:"32rem",marginBottom:"4rem"},src:fQ}),bo.createElement("span",null,"\u7EDF"),bo.createElement("span",null,"\u8BA1")),bo.createElement("div",{className:Ql.wrapBox,style:{right:x?0:"-600rem"}},re&&bo.createElement(ce.Z,{style:{width:"100%",marginTop:"200rem"},spinning:!0}),!re&&bo.createElement(bo.Fragment,null,bo.createElement("div",{className:Ql.scrollBox},bo.createElement("div",{className:Ql.content},bo.createElement("div",{className:Ql.title},bo.createElement("img",{src:hQ}),bo.createElement("span",null,"\u56FE\u8C31\u7EDF\u8BA1\u5206\u6790")),bo.createElement("div",{className:Ql.top},bo.createElement("div",{className:Ql.topLi},bo.createElement("div",null,ke==null?void 0:ke.graphCount),bo.createElement("div",null,"\u77E5\u8BC6\u56FE\u8C31\u6570\u91CF")),bo.createElement("div",{className:Ql.topLi},bo.createElement("div",null,ke==null?void 0:ke.tagCount),bo.createElement("div",null,"\u6807\u7B7E\u8282\u70B9\u6570\u91CF")),bo.createElement("div",{className:Ql.topLi},bo.createElement("div",null,ke==null?void 0:ke.resourceCount),bo.createElement("div",null,"\u8D44\u6E90\u8282\u70B9\u6570\u91CF"))),bo.createElement("div",{style:{marginTop:"20rem"},className:Ql.title},bo.createElement("img",{src:gQ}),bo.createElement("span",null,"\u5B66\u4E60\u7EDF\u8BA1\u5206\u6790")),bo.createElement(ce.Z,{spinning:se},bo.createElement("div",{className:Ql.bottom},bo.createElement("div",{className:Ql.bottomLi,style:{marginTop:"82rem",marginRight:"26rem"}},Oe.get("type")!=="classrooms"&&bo.createElement(rr.default,{className:Ql.select,options:me,value:z==null?void 0:z.course_id,size:"small",onChange:tt,placeholder:"\u8BF7\u9009\u62E9",getPopupContainer:st=>st.parentNode,style:{width:"222rem"},suffixIcon:bo.createElement("i",{className:"iconfont icon-a-bianzu11",style:{color:"#fff",fontSize:"12rem"}})}),bo.createElement("b",{style:{fontSize:"26rem",marginTop:"5rem"}},Ke==null?void 0:Ke.course_rank_num),bo.createElement("div",{style:{fontSize:"16rem",marginTop:"4rem"}},"\u8BFE\u5802\u6392\u540D"),bo.createElement("div",{style:{fontSize:"16rem",marginTop:"4rem"}},"\uFF08\u5171",Ke==null?void 0:Ke.course_rank_all_num,"\u4EBA\uFF09"),bo.createElement("img",{src:vQ})),bo.createElement("div",{className:Ql.bottomLi,style:{marginTop:"82rem"}},bo.createElement("b",{style:{fontSize:"26rem",marginTop:"30rem"}},Ke==null?void 0:Ke.system_rank_num),bo.createElement("div",{style:{fontSize:"16rem",marginTop:"4rem"}},"\u7CFB\u7EDF\u6392\u540D"),bo.createElement("div",{style:{fontSize:"16rem",marginTop:"4rem"}},"\uFF08\u5171",Ke==null?void 0:Ke.system_rank_all_num,"\u4EBA\uFF09"),bo.createElement("img",{src:mQ})),bo.createElement("div",{className:Ql.bottomLi,style:{marginTop:"104rem",marginRight:"26rem"}},bo.createElement("b",{style:{fontSize:"26rem",marginTop:"30rem"}},Ke==null?void 0:Ke.averageCompletionRate,"%"),bo.createElement("div",{style:{fontSize:"14rem",marginTop:"2rem"}},"\u5E73\u5747\u5B8C\u6210\u7387"),bo.createElement("img",{src:pQ})),bo.createElement("div",{className:Ql.bottomLi,style:{marginTop:"104rem"}},bo.createElement("b",{style:{fontSize:"26rem",marginTop:"30rem"}},Ke==null?void 0:Ke.averageMasteryRate,"%"),bo.createElement("div",{style:{fontSize:"14rem",marginTop:"2rem"}},"\u5E73\u5747\u638C\u63E1\u7387"),bo.createElement("img",{src:yQ})),bo.createElement("div",{className:Ql.echarts},bo.createElement("div",{className:Ql.name},"\u5B8C\u6210\u60C5\u51B5"),bo.createElement(Yd,{dataSource:Ke==null?void 0:Ke.completionRate})),bo.createElement("div",{className:Ql.echarts},bo.createElement("div",{className:Ql.name},"\u638C\u63E1\u60C5\u51B5"),bo.createElement(CQ,{dataSource:Ke==null?void 0:Ke.masteryRate})))))),x&&bo.createElement("div",{onClick:()=>b(!1),className:Ql.unfold})))))},U0=Ie(59301),TQ=Object.defineProperty,z1=Object.getOwnPropertySymbols,M3=Object.prototype.hasOwnProperty,D3=Object.prototype.propertyIsEnumerable,I3=(E,a,y)=>a in E?TQ(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,U1=(E,a)=>{for(var y in a||(a={}))M3.call(a,y)&&I3(E,y,a[y]);if(z1)for(var y of z1(a))D3.call(a,y)&&I3(E,y,a[y]);return E},OQ=(E,a)=>{var y={};for(var x in E)M3.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&z1)for(var x of z1(E))a.indexOf(x)<0&&D3.call(E,x)&&(y[x]=E[x]);return y},T3=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},ee=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const LQ=E=>{var a=E,{pathsDetail:y,user:x,globalSetting:b,loading:z,dispatch:ee,tpacti:re,settupuname:ae,settpacti:se}=a,fe=OQ(a,["pathsDetail","user","globalSetting","loading","dispatch","tpacti","settupuname","settpacti"]),me,Ee,Oe,ke,We,je,Ke,Ze,Je;const tt=(0,Ce.useParams)(),[st,gt]=(0,Fe.useState)(""),[mt,ct]=(0,Fe.useState)([]),[Lt]=(0,Ce.useSearchParams)(),[_t,Yt]=(0,Fe.useState)([]),[$t,En]=(0,Fe.useState)(1);(0,Fe.useEffect)(()=>{var tr,Cn,xn,Ln,nr,An;if((tr=y==null?void 0:y.detail)!=null&&tr.nodes&&$t===1){ct((Cn=y==null?void 0:y.detail)==null?void 0:Cn.nodes),gt((nr=(Ln=(xn=y==null?void 0:y.detail)==null?void 0:xn.nodes)==null?void 0:Ln[1])==null?void 0:nr.uuid);let fr=[...(An=y==null?void 0:y.detail)==null?void 0:An.nodes];Yt(fr==null?void 0:fr.splice(1)),En(2)}},[(me=y==null?void 0:y.detail)==null?void 0:me.nodes]),(0,Fe.useEffect)(()=>{var tr,Cn,xn;gt(re||((xn=(Cn=(tr=y==null?void 0:y.detail)==null?void 0:tr.nodes)==null?void 0:Cn[1])==null?void 0:xn.uuid))},[re]);function on(){return T3(this,null,function*(){var tr,Cn,xn,Ln,nr,An,fr,ra;if(Lt.get("type")==="classrooms"){let aa=yield ee({type:"pathsDetail/getCourseDetail",payload:U1({id:tt.pathId,knowledge:!0},(0,ht.oP)())});ct(aa==null?void 0:aa.nodes),gt((Cn=(tr=aa==null?void 0:aa.nodes)==null?void 0:tr[1])==null?void 0:Cn.uuid),se((Ln=(xn=aa==null?void 0:aa.nodes)==null?void 0:xn[1])==null?void 0:Ln.uuid);let Gr=[...aa==null?void 0:aa.nodes];Yt(Gr==null?void 0:Gr.splice(1))}else{let aa=yield ee({type:"pathsDetail/getPathsDetail",payload:U1({id:tt.pathId,knowledge:!0},(0,ht.oP)())});ct(aa==null?void 0:aa.nodes),gt((An=(nr=aa==null?void 0:aa.nodes)==null?void 0:nr[1])==null?void 0:An.uuid),se((ra=(fr=aa==null?void 0:aa.nodes)==null?void 0:fr[1])==null?void 0:ra.uuid);let Gr=[...aa==null?void 0:aa.nodes];Yt(Gr==null?void 0:Gr.splice(1))}})}function Fn(){return T3(this,null,function*(){var tr,Cn,xn,Ln,nr,An,fr,ra,aa,Gr,Sr,Kr,pa,Ua;if(Lt.get("type")==="classrooms"){let ei=yield ee({type:"pathsDetail/getCourseDetail",payload:U1({id:(tr=y==null?void 0:y.detail)==null?void 0:tr.id,knowledge:!0},(0,ht.oP)())});gt((xn=(Cn=ei==null?void 0:ei.nodes)==null?void 0:Cn[1])==null?void 0:xn.uuid),se((nr=(Ln=ei==null?void 0:ei.nodes)==null?void 0:Ln[1])==null?void 0:nr.uuid),ae(((fr=(An=ei==null?void 0:ei.nodes)==null?void 0:An[1])==null?void 0:fr.name)||"\u8BFE\u7A0B\u56FE\u8C31")}else{let ei=yield ee({type:"pathsDetail/getPathsDetail",payload:U1({id:(ra=y==null?void 0:y.detail)==null?void 0:ra.id,knowledge:!0},(0,ht.oP)())});gt((Gr=(aa=ei==null?void 0:ei.nodes)==null?void 0:aa[1])==null?void 0:Gr.uuid),se((Kr=(Sr=ei==null?void 0:ei.nodes)==null?void 0:Sr[1])==null?void 0:Kr.uuid),ae(((Ua=(pa=ei==null?void 0:ei.nodes)==null?void 0:pa[1])==null?void 0:Ua.name)||"\u8BFE\u7A0B\u56FE\u8C31")}})}return U0.createElement("div",{style:{height:"calc(100vh - 72px - 170rem)"}},(mt==null?void 0:mt.length)>0&&U0.createElement("div",{className:un.content},((Ee=mt==null?void 0:mt[0])==null?void 0:Ee.uuid)===st&&st&&U0.createElement(GZ,{onAddSuccess:Fn,setActivated:gt,subjectId:(Oe=y==null?void 0:y.detail)==null?void 0:Oe.id}),((ke=mt==null?void 0:mt[0])==null?void 0:ke.uuid)!==st&&st&&U0.createElement(yZ,{tpacti:re,setactivied:()=>{var tr;gt((tr=mt==null?void 0:mt[0])==null?void 0:tr.uuid)},initdata:Fn,Tabsdatas:_t,uuid:st})),(We=y==null?void 0:y.detail)!=null&&We.can_managed?U0.createElement(dQ,{isAll:((je=mt==null?void 0:mt[0])==null?void 0:je.uuid)===st,subjectId:(Ke=y==null?void 0:y.detail)==null?void 0:Ke.id,uuid:st}):U0.createElement(IQ,{isAll:((Ze=mt==null?void 0:mt[0])==null?void 0:Ze.uuid)===st,subjectId:(Je=y==null?void 0:y.detail)==null?void 0:Je.id,uuid:st}))};var BQ=(0,Ce.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(LQ),xs=Ie(59301),NQ=Object.defineProperty,W1=Object.getOwnPropertySymbols,O3=Object.prototype.hasOwnProperty,L3=Object.prototype.propertyIsEnumerable,B3=(E,a,y)=>a in E?NQ(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,N3=(E,a)=>{for(var y in a||(a={}))O3.call(a,y)&&B3(E,y,a[y]);if(W1)for(var y of W1(a))L3.call(a,y)&&B3(E,y,a[y]);return E},RQ=(E,a)=>{var y={};for(var x in E)O3.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&W1)for(var x of W1(E))a.indexOf(x)<0&&L3.call(E,x)&&(y[x]=E[x]);return y},R3=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},ee=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const FQ=E=>{var a=E,{pathsDetail:y,user:x,globalSetting:b,loading:z,dispatch:ee,activied:re,setactivied:ae}=a,se=RQ(a,["pathsDetail","user","globalSetting","loading","dispatch","activied","setactivied"]),fe,me,Ee,Oe,ke,We,je,Ke,Ze,Je,tt,st,gt,mt;const ct=(0,Ce.useParams)(),[Lt]=(0,Ce.useSearchParams)(),[_t,Yt]=(0,Fe.useState)(((Ee=(me=(fe=y==null?void 0:y.detail)==null?void 0:fe.nodes)==null?void 0:me[0])==null?void 0:Ee.name)||"\u8BFE\u7A0B\u56FE\u8C31"),[$t,En]=(0,Fe.useState)(((We=(ke=(Oe=y==null?void 0:y.detail)==null?void 0:Oe.route_nodes)==null?void 0:ke[0])==null?void 0:We.name)||"\u5B66\u4E60\u8DEF\u5F84"),[on,Fn]=(0,Fe.useState)([]),[tr,Cn]=(0,Fe.useState)(),[xn,Ln]=(0,Fe.useState)(),[nr]=we.default.useForm(),[An,fr]=(0,Fe.useState)(!1),[ra,aa]=(0,Fe.useState)(!1),Gr=[{name:"\u8BFE\u7A0B\u4FE1\u606F",key:1,content:xs.createElement(Ft,null),isshow:Lt.get("type")!=="classrooms"},{name:"\u8BFE\u7A0B\u56FE\u8C31",key:3,content:((Ke=(je=y==null?void 0:y.detail)==null?void 0:je.nodes)==null?void 0:Ke.length)<=1?xs.createElement(pr,{text:"\u6682\u65E0\u56FE\u8C31\uFF0C\u7ACB\u5373\u65B0\u5EFA\u4E00\u4E2A\u56FE\u8C31\u5427\uFF5E",textColor:"#fff",buttonText:((Ze=y==null?void 0:y.detail)==null?void 0:Ze.can_managed)&&"\u65B0\u5EFA\u56FE\u8C31",buttonTexttow:((Je=y==null?void 0:y.detail)==null?void 0:Je.can_managed)&&Lt.get("type")!=="classrooms"&&"\u751F\u6210\u56FE\u8C31",ontwoClick:()=>R3(void 0,null,function*(){var Kr;let pa=yield(0,te.ZP)("/api/knowledge/v2/sync.json",{method:"post",body:{subject_id:(Kr=y==null?void 0:y.detail)==null?void 0:Kr.id}});pa.status===0&&_e.ZP.info(pa==null?void 0:pa.message)}),onClick:()=>aa(!0)}):xs.createElement(BQ,{settupuname:Yt,settpacti:Cn,tpacti:tr}),isshow:!0},{name:"\u5B66\u4E60\u8DEF\u5F84",key:2,content:xs.createElement(Wa,{setxxljac:Ln,dispatch:ee,xxljac:xn,pathsDetail:y}),isshow:!0},{name:"\u4EA4\u6D41\u53CD\u9988",key:4,content:xs.createElement(Te,null),isshow:Lt.get("type")!=="classrooms"}].filter(Kr=>Kr==null?void 0:Kr.isshow);(0,Fe.useEffect)(()=>{var Kr,pa;if((Kr=y==null?void 0:y.detail)!=null&&Kr.nodes){let Ua=[...(pa=y==null?void 0:y.detail)==null?void 0:pa.nodes];Fn(Ua==null?void 0:Ua.splice(1))}},[(tt=y==null?void 0:y.detail)==null?void 0:tt.nodes]);const Sr=Kr=>R3(void 0,null,function*(){var pa,Ua,ei,Co,Eo,ti,to,ji,so,Ao;const{nodeType:ss,description:Qo,name:Ei,tags:ki}=Kr;fr(!0);const Sa=yield(0,te.ZP)("/api/knowledge/v2/add_node.json",{method:"POST",body:{label:"\u56FE\u8C31",subject_id:(pa=y==null?void 0:y.detail)==null?void 0:pa.id,properties:{description:Qo,rootNodeUuid:(Co=(ei=(Ua=y==null?void 0:y.detail)==null?void 0:Ua.nodes)==null?void 0:ei[0])==null?void 0:Co.uuid,name:Ei,nodeType:ss[0],tags:(ki==null?void 0:ki.join("\uFF0C"))||"",color:"1"},relationships:[{startNodeUuid:(to=(ti=(Eo=y==null?void 0:y.detail)==null?void 0:Eo.nodes)==null?void 0:ti[0])==null?void 0:to.uuid,type:"\u5305\u542B"}]}});(Sa==null?void 0:Sa.status)===0&&(aa(!1),Cn((ji=Sa==null?void 0:Sa.data)==null?void 0:ji.uuid),Yt(Ei),ae(3),Lt.get("type")==="classrooms"?ee({type:"pathsDetail/getCourseDetail",payload:N3({id:(so=y==null?void 0:y.detail)==null?void 0:so.id,knowledge:!0},(0,ht.oP)())}):ee({type:"pathsDetail/getPathsDetail",payload:N3({id:(Ao=y==null?void 0:y.detail)==null?void 0:Ao.id,knowledge:!0},(0,ht.oP)())})),fr(!1)});return xs.createElement("div",null,xs.createElement("div",{className:Ut.tabs},Gr==null?void 0:Gr.map(Kr=>{var pa,Ua,ei,Co,Eo,ti,to,ji,so,Ao,ss,Qo;return xs.createElement("div",{onClick:()=>{var Ei,ki,Sa,_a,ni,Ki,Ma,mo;ae(Kr.key),(Kr==null?void 0:Kr.name)==="\u8BFE\u7A0B\u56FE\u8C31"&&(console.log("---",2),Yt(((Ei=on==null?void 0:on[0])==null?void 0:Ei.name)||"\u8BFE\u7A0B\u56FE\u8C31"),Cn((ki=on==null?void 0:on[0])==null?void 0:ki.uuid)),(Kr==null?void 0:Kr.name)==="\u5B66\u4E60\u8DEF\u5F84"&&(En(((ni=(_a=(Sa=y==null?void 0:y.detail)==null?void 0:Sa.route_nodes)==null?void 0:_a[0])==null?void 0:ni.name)||"\u5B66\u4E60\u8DEF\u5F84"),Ln((mo=(Ma=(Ki=y==null?void 0:y.detail)==null?void 0:Ki.route_nodes)==null?void 0:Ma[0])==null?void 0:mo.id))},className:re===(Kr==null?void 0:Kr.key)?Ut.activied:Ut.tab},((Kr==null?void 0:Kr.name)==="\u8BFE\u7A0B\u4FE1\u606F"||(Kr==null?void 0:Kr.name)==="\u4EA4\u6D41\u53CD\u9988")&&(Kr==null?void 0:Kr.name),(Kr==null?void 0:Kr.name)==="\u8BFE\u7A0B\u56FE\u8C31"&&xs.createElement(Ji.Z,{overlayClassName:Ut.dropdownst,disabled:(on==null?void 0:on.length)===0,menu:{items:on==null?void 0:on.map(Ei=>({label:xs.createElement(an.Z,{title:Ei==null?void 0:Ei.name}," ",xs.createElement("span",{className:Ut.dropnametext,style:{width:"100%"},onClick:ki=>{ki.stopPropagation(),Yt(Ei==null?void 0:Ei.name),Cn(Ei==null?void 0:Ei.uuid),ae(3)}},Ei==null?void 0:Ei.name)),key:Ei==null?void 0:Ei.uuid,show:!0})),selectable:!0,selectedKeys:[tr||((ei=(Ua=(pa=y==null?void 0:y.detail)==null?void 0:pa.nodes)==null?void 0:Ua[1])==null?void 0:ei.uuid)]}},xs.createElement("span",{className:Ut.nametext},"\u8BFE\u7A0B\u56FE\u8C31 ",(on==null?void 0:on.length)>0&&xs.createElement("i",{style:{fontSize:"12rem",marginLeft:"10rem"},className:"iconfont icon-zhankai10"}))),(Kr==null?void 0:Kr.name)==="\u5B66\u4E60\u8DEF\u5F84"&&xs.createElement(Ji.Z,{overlayClassName:Ut.dropdownst,disabled:((Eo=(Co=y==null?void 0:y.detail)==null?void 0:Co.route_nodes)==null?void 0:Eo.length)===0,overlayStyle:{background:"#13203D"},menu:{items:(to=(ti=y==null?void 0:y.detail)==null?void 0:ti.route_nodes)==null?void 0:to.map((Ei,ki)=>({label:xs.createElement(an.Z,{title:Ei==null?void 0:Ei.name},xs.createElement("span",{className:Ut.dropnametext,style:{width:"100%"},onClick:Sa=>{Sa.stopPropagation(),En(Ei==null?void 0:Ei.name),Ln(Ei==null?void 0:Ei.id),ae(2)}},Ei==null?void 0:Ei.name)),key:Ei==null?void 0:Ei.id,show:!0})),selectable:!0,selectedKeys:[(xn||((Ao=(so=(ji=y==null?void 0:y.detail)==null?void 0:ji.route_nodes)==null?void 0:so[0])==null?void 0:Ao.id))+""]}},xs.createElement("span",{className:Ut.nametext},"\u5B66\u4E60\u8DEF\u5F84 ",((Qo=(ss=y==null?void 0:y.detail)==null?void 0:ss.route_nodes)==null?void 0:Qo.length)>0&&xs.createElement("i",{style:{fontSize:"12rem",marginLeft:"10rem"},className:"iconfont icon-zhankai10"}))))}),xs.createElement(Zt,null,xs.createElement(xs.Fragment,null,Lt.get("type")==="classrooms"&&(0,Po.JA)()&&xs.createElement("div",{style:{position:"fixed",right:"20rem",top:"7rem"}},xs.createElement("span",{onClick:()=>{var Kr;window.open((Kr=y==null?void 0:y.detail)==null?void 0:Kr.first_category_url)},style:{width:"128rem",height:"36rem",lineHeight:"36rem",display:"inline-block",textAlign:"center",background:"#fff",color:"#1B8565",fontSize:"14rem",borderRadius:"20rem",cursor:"pointer"}},"\u8FD4\u56DE\u6559\u5B66\u8BFE\u5802")),re===3&&((st=y==null?void 0:y.detail)==null?void 0:st.can_managed)&&xs.createElement("div",{style:{position:"fixed",right:Lt.get("type")!=="classrooms"?"170rem":"20rem",top:"7rem"}},xs.createElement("span",{onClick:()=>{aa(!0)},style:{width:"128rem",height:"36rem",lineHeight:"36rem",display:"inline-block",textAlign:"center",background:"#fff",color:"#1B8565",fontSize:"14rem",borderRadius:"20rem",cursor:"pointer"}},"\u521B\u5EFA\u77E5\u8BC6\u56FE\u8C31")),Lt.get("type")!=="classrooms"&&(re===2||re===3)&&!(0,Po.JA)()&&xs.createElement(vo,{activied:re,styles:{position:"fixed",right:re===3?"20rem":"170rem",top:"7rem"}})))),xs.createElement(Pe.default,{open:ra,centered:!0,width:"1000rem",okText:"\u4FDD\u5B58",onCancel:()=>aa(!1),cancelText:"\u53D6\u6D88",afterClose:()=>{nr.resetFields()},confirmLoading:An,onOk:()=>nr.submit(),title:"\u65B0\u589E\u77E5\u8BC6\u56FE\u8C31"},xs.createElement("div",{className:Ut.modal},xs.createElement("div",{className:Ut.mHead},"\u8282\u70B9\u5C5E\u6027"),xs.createElement(we.default,{form:nr,scrollToFirstError:!0,layout:"horizontal",colon:!1,size:"large",labelCol:{flex:"110rem"},onFinish:Sr,className:Ut.form},xs.createElement(we.default.Item,{label:"\u56FE\u8C31\u540D\u79F0",name:"name",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u8282\u70B9\u540D\u79F0"},{type:"string",max:60,message:"\u8F93\u5165\u8D85\u9650\uFF0C\u8BF7\u7F29\u51CF\u5B57\u7B26\u6570"},{type:"string",whitespace:!0,message:"\u5185\u5BB9\u4E0D\u80FD\u5168\u4E3A\u7A7A\u683C"}]},xs.createElement(xe.default,{maxLength:60,showCount:!0,placeholder:"\u8BF7\u8F93\u5165"})),xs.createElement(we.default.Item,{label:"\u7B80\u4ECB",name:"description",rules:[{type:"string",max:5e3,message:"\u8F93\u5165\u8D85\u9650\uFF0C\u8BF7\u7F29\u51CF\u5B57\u7B26\u6570"},{type:"string",whitespace:!0,message:"\u5185\u5BB9\u4E0D\u80FD\u5168\u4E3A\u7A7A\u683C"}]},xs.createElement(xe.default.TextArea,{maxLength:5e3,showCount:!0,placeholder:"\u8BF7\u8F93\u5165"})),xs.createElement(we.default.Item,{className:Ut.mType,label:xs.createElement("span",null,"\u56FE\u8C31\u7C7B\u578B ",xs.createElement(an.Z,{title:"\u5F53\u524D\u77E5\u8BC6\u56FE\u8C31\u7684\u7C7B\u578B\uFF0C\u5982\uFF1A\u5927\u7EB2\u56FE\u8C31\u3001\u80FD\u529B\u56FE\u8C31"},xs.createElement(jr.Z,null))),name:"nodeType",rules:[{required:!0,message:"\u8BF7\u9009\u62E9\u8282\u70B9\u7C7B\u578B"}]},xs.createElement(Vt,{subjectId:(gt=y==null?void 0:y.detail)==null?void 0:gt.id,type:1}))))),xs.createElement("div",{className:Ut.placeholder}),xs.createElement("div",{className:Ut.content},(mt=Gr.find(Kr=>Kr.key===re))==null?void 0:mt.content))};var kQ=(0,Ce.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(FQ),j1=Ie(59301),_Q=Object.defineProperty,G1=Object.getOwnPropertySymbols,F3=Object.prototype.hasOwnProperty,k3=Object.prototype.propertyIsEnumerable,_3=(E,a,y)=>a in E?_Q(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,z3=(E,a)=>{for(var y in a||(a={}))F3.call(a,y)&&_3(E,y,a[y]);if(G1)for(var y of G1(a))k3.call(a,y)&&_3(E,y,a[y]);return E},zQ=(E,a)=>{var y={};for(var x in E)F3.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&G1)for(var x of G1(E))a.indexOf(x)<0&&k3.call(E,x)&&(y[x]=E[x]);return y},UQ=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},ee=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const{TabPane:ite}=yt.default;var WQ=(E=>(E.All="",E.Shixun="shixun",E.VideoItem="video",E.Attachment="attachment",E.group_count="group_homework",E.normal_count="normal_homework",E.ExaminationBank="exercise",E.HomeworkCommon="hack_homework",E.Discusses="Discusses",E))(WQ||{});function U3(E){const a=(b,z)=>{if(b.localName===z)return b;for(let ee=0,re=b;re=re.parentNode;ee++){if(re.localName===z)return re;if(re==document.documentElement)return!1}},y=E.target,x=a(y,"a");if(console.log([x],x==null?void 0:x.href,44),!(x!=null&&x.href)&&y.tagName.toUpperCase()==="IMG"){let b=y.src||y.getAttribute("src");b&&b.indexOf("/images/avatars/User")===-1&&(E.stopPropagation(),E.preventDefault(),ft.Z.publish("preview-image",b))}}const jQ=E=>{var a=E,{pathsDetail:y,globalSetting:x,loading:b,dispatch:z}=a,ee=zQ(a,["pathsDetail","globalSetting","loading","dispatch"]);const[re]=(0,Ce.useSearchParams)(),ae=(0,Ce.useParams)(),se=(0,Fe.useRef)(),[fe,me]=(0,Fe.useState)(""),[Ee,Oe]=(0,Fe.useState)(1);(0,Fe.useEffect)(()=>{re.get("tabs")&&Oe(parseInt(re.get("tabs"))||3)},[re.get("tabs")]),(0,Fe.useEffect)(()=>{if(se.current)return se.current.addEventListener("mousedown",U3),()=>{var We;(We=se.current)==null||We.removeEventListener("mousedown",U3)}},[se.current]),(0,Fe.useEffect)(()=>{ae.pathId&&ke()},[ae.pathId]),(0,Fe.useEffect)(()=>(z({type:"globalSetting/footerToggle",payload:!1}),()=>{z({type:"globalSetting/footerToggle",payload:!0})}),[]);const ke=()=>UQ(void 0,null,function*(){if(re.get("type")==="classrooms"){z({type:"pathsDetail/getCourseDetail",payload:z3({id:ae.pathId,knowledge:!0},(0,ht.oP)())});return}const We=yield z({type:"pathsDetail/getPathsDetail",payload:z3({id:ae.pathId,knowledge:!0},(0,ht.oP)())});We!=null&&We.id&&re.get("token")&&(location.href=location.pathname)});return j1.createElement(ce.Z,{spinning:!1},j1.createElement("section",{id:"knowledgegraphDetail",className:dt.bg},j1.createElement(ut,null),j1.createElement(kQ,{activied:Ee,setactivied:Oe})))};var GQ=(0,Ce.connect)(({pathsDetail:E,loading:a,globalSetting:y})=>({pathsDetail:E,globalSetting:y,loading:a}))(jQ)},99486:function(St,Dt,Ie){"use strict";var Be=Ie(59301),He=Object.defineProperty,Fe=Object.getOwnPropertySymbols,Ce=Object.prototype.hasOwnProperty,_e=Object.prototype.propertyIsEnumerable,Pe=(we,pe,ye)=>pe in we?He(we,pe,{enumerable:!0,configurable:!0,writable:!0,value:ye}):we[pe]=ye,ge=(we,pe)=>{for(var ye in pe||(pe={}))Ce.call(pe,ye)&&Pe(we,ye,pe[ye]);if(Fe)for(var ye of Fe(pe))_e.call(pe,ye)&&Pe(we,ye,pe[ye]);return we};const Ae=()=>`shadow-${Math.random().toString(36).slice(2,9)}`,be=({percentage:we,startAngle:pe=270,strokeColor:ye="#42BECD",trackColor:xe="#e6e6e6",innerBackgroundColor:ce="#fff",text:te="",textColor:ne="#000",textSize:le="1rem",textPadding:oe="28rem",outerDiameter:de,innerDiameter:he,maxTextLength:ie=6,onClick:ue,hoverEffect:ve=!0,style:Se})=>{const[De,Re]=(0,Be.useState)(0),[Ne,ze]=(0,Be.useState)(0),[Ge,Xe]=(0,Be.useState)(!1),Qe=Kt=>{var qt,vn;const Ot=parseFloat(Kt),rn=parseFloat((vn=(qt=document.documentElement)==null?void 0:qt.style)==null?void 0:vn.fontSize);return Ot*rn},nt=()=>{Re(Qe(de)),ze(Qe(he))};(0,Be.useEffect)(()=>(nt(),window.addEventListener("resize",nt),()=>window.removeEventListener("resize",nt)),[de,he]);const $e=De/2,qe=Ne/2,ot=(De-Ne)/2,at=$e-ot,lt=2*Math.PI*at,rt=lt-we/100*lt,ut=`rotate(${pe} ${$e} ${$e})`,ft=((Kt,qt)=>qt&&Kt.length>qt?Kt.slice(0,qt-1)+"...":Kt)(te,ie),dt=()=>{ve&&Xe(!0)},ht=()=>{Xe(!1)},Ut=Qe("4rem");return Be.createElement("svg",{width:De,height:De,viewBox:`0 0 ${De} ${De}`,xmlns:"http://www.w3.org/2000/svg",onClick:ue,onMouseEnter:dt,onMouseLeave:ht,style:ge({cursor:ue?"pointer":"default"},Se)},Be.createElement("circle",{cx:$e,cy:$e,r:qe,fill:ce}),Be.createElement("circle",{cx:$e,cy:$e,r:at,fill:"none",stroke:xe,strokeWidth:ot}),Be.createElement("circle",{cx:$e,cy:$e,r:at,fill:"none",stroke:ye,strokeWidth:ot,strokeDasharray:lt,strokeDashoffset:rt,strokeLinecap:"round",transform:ut}),Ge&&Be.createElement("circle",{cx:$e,cy:$e,r:at+ot/2,fill:"none",stroke:"#FA6400",strokeWidth:Qe("4rem")}),te&&Be.createElement("foreignObject",{x:$e-qe,y:$e-qe,width:Ne,height:Ne},Be.createElement("div",{style:{width:"100%",height:"100%",display:"flex",justifyContent:"center",alignItems:"center",padding:oe}},Be.createElement("b",{style:{color:ne,fontSize:le,textAlign:"center"},title:te},ft))))};Dt.Z=be},16769:function(St,Dt,Ie){"use strict";Ie.d(Dt,{BU:function(){return He},Dj:function(){return Be},gH:function(){return Fe},vp:function(){return Ce}});function Be(_e){try{_e.mozRequestFullScreen?_e.mozRequestFullScreen():_e.webkitRequestFullScreen&&_e.webkitRequestFullScreen()}catch(Pe){console.log(Pe,":e")}}function He(){window.top.document.webkitExitFullscreen?window.top.document.webkitExitFullscreen():document.exitFullscreen?window.top.document.exitFullscreen():document.msExitFullscreen?window.top.document.msExitFullscreen():document.mozCancelFullScreen&&window.top.document.mozCancelFullScreen()}const Fe=()=>{if(document.webkitExitFullscreen)return"webkitfullscreenchange";if(document.exitFullscreen)return"fullscreenchange";if(document.msExitFullscreen)return"msfullscreenchange";if(document.mozCancelFullScreen)return"mozfullscreenchange"};function Ce(){var _e=window.top.document.fullscreenElement||window.top.document.mozFullscreenElement||window.top.document.webkitFullscreenElement,Pe=document.fullscreenEnabled||document.mozFullscreenEnabled||document.webkitFullscreenEnabled;return console.log("fullscreenElement",_e),window.isFullScreen?window.isFullScreen:_e!=null}},91723:function(St,Dt,Ie){"use strict";Ie.d(Dt,{rX:function(){return ie},pW:function(){return ue},gy:function(){return ve},xY:function(){return he},O5:function(){return de},tJ:function(){return ce},o1:function(){return te},Rd:function(){return oe}});var Be=Ie(90115),He=Ie(43418),Fe=Ie(28103),Ce=Ie(8591),_e=Ie(16624),Pe=Ie(22566),ge=Ie(87169),Ae=Ie(25510),be="data:image/png;base64,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",we=Ie.p+"static/newqrcode.a8740efb.png",pe=Ie(32637),ye=Ie(59301),xe=(Se,De,Re)=>new Promise((Ne,ze)=>{var Ge=nt=>{try{Qe(Re.next(nt))}catch($e){ze($e)}},Xe=nt=>{try{Qe(Re.throw(nt))}catch($e){ze($e)}},Qe=nt=>nt.done?Ne(nt.value):Promise.resolve(nt.value).then(Ge,Xe);Qe((Re=Re.apply(Se,De)).next())});const ce=(Se,De=!1)=>!!(te(Se)&&ne(De)),te=Se=>(0,_e.bg)()?!0:(Se({type:"user/showPopLogin",payload:{showPopLogin:!0,showClosable:!0}}),!1),ne=(Se=!1)=>{var De;const{user:Re}=(0,Be.getDvaApp)()._store.getState();return(De=Re.userInfo)!=null&&De.profile_completed?!0:(He.default.confirm({title:"\u63D0\u793A",width:530,centered:!0,content:"\u60A8\u9700\u8981\u53BB\u5B8C\u5584\u60A8\u7684\u4E2A\u4EBA\u8D44\u6599\uFF0C\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD",okText:"\u7ACB\u5373\u5B8C\u5584",cancelText:"\u7A0D\u540E\u5B8C\u5584",onOk:()=>{(0,Pe.xg)("/account/profile/edit"),le()}}),!1)},le=()=>{He.default.success({title:"\u63D0\u793A",width:430,closable:!0,centered:!0,content:"\u5DF2\u5B8C\u5584\u4E2A\u4EBA\u8D44\u6599\uFF1F\u8BF7\u5237\u65B0\u9875\u9762",okText:"\u7ACB\u5373\u5237\u65B0",icon:null,onOk:()=>{location.reload()}})},oe=()=>{He.default.warning({title:"\u63D0\u793A",icon:null,width:400,content:ye.createElement("div",{style:{textAlign:"center"}},ye.createElement("div",{style:{color:"#191919",fontSize:14,marginBottom:15,textAlign:"left"}},"\u8001\u5E08\u60A8\u597D\uFF0C\u60A8\u7684\u8BFE\u5802\u8BD5\u7528\u671F\u5DF2\u7ED3\u675F\uFF0C\u76F8\u5173\u529F\u80FD\u88AB\u9650\u5236\u3002 \u5982\u9700\u7EE7\u7EED\u4F7F\u7528\uFF0C\u8BF7\u5C3D\u5FEB\u5BF9\u63A5\u4EBA\u5DE5\u652F\u6301\uFF01"),ye.createElement("img",{style:{border:"1px solid #D8E3E9",width:190,height:180},src:pe}),ye.createElement("div",{style:{color:"#666666",fontSize:14,marginTop:15}},"\u6DFB\u52A0\u5BA2\u670D\u4EBA\u5458\u5FAE\u4FE1\uFF0C\u83B7\u5F97\u66F4\u591A\u652F\u6301"))})},de=()=>{var Se;const{user:De}=(0,Be.getDvaApp)()._store.getState();return(Se=De.userInfo)!=null&&Se.professional_certification?!0:(He.default.confirm({title:"\u63D0\u793A",centered:!0,content:ye.createElement("div",{className:"tc"},"\u60A8\u9700\u8981\u53BB\u5B8C\u6210\u60A8\u7684\u804C\u4E1A\u8BA4\u8BC1\uFF0C\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD"),okText:"\u7ACB\u5373\u5B8C\u5584",cancelText:"\u7A0D\u540E\u5B8C\u5584",onOk:()=>{(0,Pe.xg)("/account/certification")}}),!1)},he=()=>(0,_e.V9)()?!0:(He.default.warning({centered:!0,width:530,title:"\u63D0\u793A",content:ye.createElement("div",{className:"tc",style:{marginLeft:-38}},ye.createElement("p",null,"\u626B\u7801\u52A0\u52A9\u6559\uFF0C\u7533\u8BF7\u64CD\u4F5C\u6743\u9650"),ye.createElement("img",{src:we,width:200})),okText:"\u6211\u77E5\u9053\u4E86",maskClosable:!0}),!1),ie=(Se,De)=>Se?!0:(He.default.confirm({centered:!0,zIndex:1e4,width:530,title:"\u63D0\u793A",content:ye.createElement("div",null,ye.createElement("p",null,De||"\u8BE5\u5B9E\u8DF5\u8D44\u6E90\u9700\u6388\u6743\u540E\u624D\u53EF\u4F7F\u7528\u3002 \u60A8\u53EF\u4EE5\u5728QQ\u670D\u52A1\u7FA4\u5411\u7BA1\u7406\u5458\u7533\u8BF7\uFF0C\u83B7\u5F97\u7EE7\u7EED\u64CD\u4F5C\u7684\u6743\u9650\u3002"),ye.createElement("div",{style:{marginLeft:"110px"}},ye.createElement("img",{src:be,width:200}),ye.createElement("div",{style:{marginLeft:"35px"}},"\u7FA4\u53F7\uFF1A","714336072"))),okText:"\u7ACB\u5373\u8054\u7CFB",cancelText:"\u53D6\u6D88",onOk:()=>{(0,Pe.xg)("https://qm.qq.com/cgi-bin/qm/qr?k=tIyDPXUtE0yEk-MOJxhH55lTUJS-nYAM&jump_from=webapi")}}),!1),ue=Se=>{He.default.info({title:"\u8054\u7CFB\u5E73\u53F0\u8FD0\u8425",icon:null,width:615,centered:!0,content:ye.createElement("div",null,ye.createElement("div",null,ye.createElement("p",{style:{color:"#191919",fontWeight:400,fontSize:14}},"\u201C\u4FDD\u5B58\u5B9E\u9A8C\u4E34\u65F6\u6570\u636E\u201D\u529F\u80FD\u4E3A\u4ED8\u8D39\u529F\u80FD\uFF0C\u8BF7\u8054\u7CFB\u5E73\u53F0\u8FD0\u8425\u8FDB\u884C\u5F00\u901A\u3002"),ye.createElement(Fe.Z,null),ye.createElement("p",{style:{color:"#666666",fontSize:12}}," ",ye.createElement("span",{style:{display:"inline-flex",width:14,height:14,borderRadius:2,background:"#F3F3F3",justifyContent:"center",color:"#666666",fontSize:12,lineHeight:"14px",marginRight:8}},"1")," \u56E0\u5E73\u53F0\u7684\u5B9E\u9A8C\u6570\u636E\u50A8\u5B58\u5BB9\u91CF\u548C\u6210\u672C\u6D88\u8017\u8F83\u5927\uFF0C\u5B9E\u8DF5\u9879\u76EE\u9ED8\u8BA4\u4FDD\u5B58\u5B9E\u9A8C\u73AF\u5883\u4E2D\u4E34\u65F6\u6570\u636E ",ye.createElement("a",null,Se),"\u5929\u3002"),ye.createElement("p",{style:{color:"#666666",fontSize:12}}," ",ye.createElement("span",{style:{display:"inline-flex",width:14,height:14,borderRadius:2,background:"#F3F3F3",justifyContent:"center",color:"#666666",fontSize:12,lineHeight:"14px",marginRight:8}},"2"),"\u82E5\u60A8\u9700\u8981\u4E2A\u6027\u5316\u7684\u6570\u636E\u4FDD\u5B58\u5468\u671F\u670D\u52A1\uFF0C\u6211\u4EEC\u53EF\u4EE5\u63D0\u4F9B\u76F8\u5173\u6280\u672F\u652F\u6301\uFF0C\u5E76\u6839\u636E\u60A8\u7684\u9700\u6C42\u6536\u53D6\u5B9A\u5236\u8D39\u7528\u3002")),ye.createElement("div",{style:{textAlign:"center",marginTop:30}},ye.createElement("img",{style:{border:"4px solid #0152d9",borderRadius:"4px"},src:Ae,alt:"\u4E8C\u7EF4\u7801",width:160})))})},ve=(Se,De="")=>{const{shixunsDetail:{detail:Re}}=(0,Be.getDvaApp)()._store.getState();if((Re==null?void 0:Re.public)===2||(Re==null?void 0:Re.public)===1||(Re==null?void 0:Re.shixun_status)===3){let Ne="";return(Re==null?void 0:Re.public)===2&&(Ne="\u5DF2\u516C\u5F00"),(Re==null?void 0:Re.public)===1&&(Ne="\u5F85\u5BA1\u6838"),(Re==null?void 0:Re.shixun_status)===3&&(Ne="\u5DF2\u5173\u95ED"),He.default.info({centered:!0,icon:ye.createElement(ge.Z,{style:{color:"#faad14"}}),width:460,title:"\u63D0\u793A",content:ye.createElement("div",{className:"tc",style:{marginLeft:-38}},ye.createElement("div",{style:{display:"flex",flexDirection:"column",alignItems:"flex-start",paddingLeft:38,margin:"12px 0"}},ye.createElement("span",null,"\u8BE5\u5B9E\u8DF5\u9879\u76EE\u7684\u72B6\u6001\u4E3A",Ne,"\uFF0C",De,"\u3002"),ye.createElement("p",null,"\u5982\u6709\u9700\u8981\uFF0C\u8BF7\u8054\u7CFB\u5E73\u53F0\u7BA1\u7406\u5458\u8FDB\u884C\u6280\u672F\u652F\u6301\u3002")),ye.createElement("img",{style:{border:"4px solid #0152d9",borderRadius:"4px"},src:Ae,alt:"\u4E8C\u7EF4\u7801",width:160})),okText:"\u6211\u77E5\u9053\u4E86"}),!0}return(Re==null?void 0:Re.shixun_status)===2?(He.default.confirm({centered:!0,icon:ye.createElement(ge.Z,null),title:"\u63D0\u793A",content:ye.createElement("div",null,ye.createElement("span",null,"\u8BE5\u5B9E\u8DF5\u9879\u76EE\u5DF2\u53D1\u5E03\uFF0C",De,"\u3002"),ye.createElement("br",null),ye.createElement("span",null,"\u5982\u6709\u9700\u8981\uFF0C\u60A8\u53EF\u4EE5\u64A4\u9500\u53D1\u5E03\u540E\uFF0C\u518D\u8FDB\u884C\u64CD\u4F5C\u3002")),okText:"\u64A4\u9500\u53D1\u5E03",cancelText:"\u53D6\u6D88",onOk:()=>{He.default.confirm({width:440,centered:!0,icon:ye.createElement(ge.Z,{style:{color:"#faad14"}}),title:"\u63D0\u793A",content:"\u64A4\u9500\u53D1\u5E03\u540E\uFF0C\u5B66\u5458\u5C06\u65E0\u6CD5\u8FDB\u884C\u7EC3\u4E60\u3002\u662F\u5426\u786E\u8BA4\u64A4\u9500\u53D1\u5E03\uFF1F",okText:"\u786E\u5B9A\u64A4\u9500\u53D1\u5E03",cancelText:"\u53D6\u6D88",onOk:()=>xe(void 0,null,function*(){(yield Se({type:"shixunsDetail/cancelRelease",payload:{id:Re==null?void 0:Re.identifier}})).status!==401&&(Ce.ZP.success("\u64A4\u9500\u53D1\u5E03\u6210\u529F\u3002\u5B9E\u8BAD\u56DE\u5230\u672A\u53D1\u5E03\u7684\u72B6\u6001\u3002"),Se({type:"shixunsDetail/getShixunsDetail",payload:{id:Re==null?void 0:Re.identifier}}),Se({type:"practiceSetting/getCommonData",payload:{id:Re==null?void 0:Re.identifier}}))})})}}),!0):!1}},69083:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return fa}});class Be{static install(){Object.setPrototypeOf=Object.setPrototypeOf||function(Me,Le){return Me.__proto__=Le,Me},Object.assign=Object.assign||function(Me){if(Me==null)throw new TypeError("Cannot convert undefined or null to object");let Le=Object(Me);for(let Te=1;Te ${Le}`;_e.ENABLE_CALLBACK&&_e.emitter.emit("log","error",Te),_e.ENABLE_ERROR&&(console.error?console.error(Te):console.warn?console.warn(Te):console.log(Te))}static i(Me,Le){(!Me||_e.FORCE_GLOBAL_TAG)&&(Me=_e.GLOBAL_TAG);let Te=`[${Me}] > ${Le}`;_e.ENABLE_CALLBACK&&_e.emitter.emit("log","info",Te),_e.ENABLE_INFO&&(console.info?console.info(Te):console.log(Te))}static w(Me,Le){(!Me||_e.FORCE_GLOBAL_TAG)&&(Me=_e.GLOBAL_TAG);let Te=`[${Me}] > ${Le}`;_e.ENABLE_CALLBACK&&_e.emitter.emit("log","warn",Te),_e.ENABLE_WARN&&(console.warn?console.warn(Te):console.log(Te))}static d(Me,Le){(!Me||_e.FORCE_GLOBAL_TAG)&&(Me=_e.GLOBAL_TAG);let Te=`[${Me}] > ${Le}`;_e.ENABLE_CALLBACK&&_e.emitter.emit("log","debug",Te),_e.ENABLE_DEBUG&&(console.debug?console.debug(Te):console.log(Te))}static v(Me,Le){(!Me||_e.FORCE_GLOBAL_TAG)&&(Me=_e.GLOBAL_TAG);let Te=`[${Me}] > ${Le}`;_e.ENABLE_CALLBACK&&_e.emitter.emit("log","verbose",Te),_e.ENABLE_VERBOSE&&console.log(Te)}}_e.GLOBAL_TAG="flv.js",_e.FORCE_GLOBAL_TAG=!1,_e.ENABLE_ERROR=!0,_e.ENABLE_INFO=!0,_e.ENABLE_WARN=!0,_e.ENABLE_DEBUG=!0,_e.ENABLE_VERBOSE=!0,_e.ENABLE_CALLBACK=!1,_e.emitter=new(Ce());var Pe=_e;class ge{constructor(){this._firstCheckpoint=0,this._lastCheckpoint=0,this._intervalBytes=0,this._totalBytes=0,this._lastSecondBytes=0,self.performance&&self.performance.now?this._now=self.performance.now.bind(self.performance):this._now=Date.now}reset(){this._firstCheckpoint=this._lastCheckpoint=0,this._totalBytes=this._intervalBytes=0,this._lastSecondBytes=0}addBytes(Me){this._firstCheckpoint===0?(this._firstCheckpoint=this._now(),this._lastCheckpoint=this._firstCheckpoint,this._intervalBytes+=Me,this._totalBytes+=Me):this._now()-this._lastCheckpoint<1e3?(this._intervalBytes+=Me,this._totalBytes+=Me):(this._lastSecondBytes=this._intervalBytes,this._intervalBytes=Me,this._totalBytes+=Me,this._lastCheckpoint=this._now())}get currentKBps(){this.addBytes(0);let Me=(this._now()-this._lastCheckpoint)/1e3;return Me==0&&(Me=1),this._intervalBytes/Me/1024}get lastSecondKBps(){return this.addBytes(0),this._lastSecondBytes!==0?this._lastSecondBytes/1024:this._now()-this._lastCheckpoint>=500?this.currentKBps:0}get averageKBps(){let Me=(this._now()-this._firstCheckpoint)/1e3;return this._totalBytes/Me/1024}}var Ae=ge;class be{constructor(Me){this._message=Me}get name(){return"RuntimeException"}get message(){return this._message}toString(){return this.name+": "+this.message}}class we extends be{constructor(Me){super(Me)}get name(){return"IllegalStateException"}}class pe extends be{constructor(Me){super(Me)}get name(){return"InvalidArgumentException"}}class ye extends be{constructor(Me){super(Me)}get name(){return"NotImplementedException"}}const xe={kIdle:0,kConnecting:1,kBuffering:2,kError:3,kComplete:4},ce={OK:"OK",EXCEPTION:"Exception",HTTP_STATUS_CODE_INVALID:"HttpStatusCodeInvalid",CONNECTING_TIMEOUT:"ConnectingTimeout",EARLY_EOF:"EarlyEof",UNRECOVERABLE_EARLY_EOF:"UnrecoverableEarlyEof"};class te{constructor(Me){this._type=Me||"undefined",this._status=xe.kIdle,this._needStash=!1,this._onContentLengthKnown=null,this._onURLRedirect=null,this._onDataArrival=null,this._onError=null,this._onComplete=null}destroy(){this._status=xe.kIdle,this._onContentLengthKnown=null,this._onURLRedirect=null,this._onDataArrival=null,this._onError=null,this._onComplete=null}isWorking(){return this._status===xe.kConnecting||this._status===xe.kBuffering}get type(){return this._type}get status(){return this._status}get needStashBuffer(){return this._needStash}get onContentLengthKnown(){return this._onContentLengthKnown}set onContentLengthKnown(Me){this._onContentLengthKnown=Me}get onURLRedirect(){return this._onURLRedirect}set onURLRedirect(Me){this._onURLRedirect=Me}get onDataArrival(){return this._onDataArrival}set onDataArrival(Me){this._onDataArrival=Me}get onError(){return this._onError}set onError(Me){this._onError=Me}get onComplete(){return this._onComplete}set onComplete(Me){this._onComplete=Me}open(Me,Le){throw new ye("Unimplemented abstract function!")}abort(){throw new ye("Unimplemented abstract function!")}}let ne={};function le(){let bt=self.navigator.userAgent.toLowerCase(),Me=/(edge)\/([\w.]+)/.exec(bt)||/(opr)[\/]([\w.]+)/.exec(bt)||/(chrome)[ \/]([\w.]+)/.exec(bt)||/(iemobile)[\/]([\w.]+)/.exec(bt)||/(version)(applewebkit)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(bt)||/(webkit)[ \/]([\w.]+).*(version)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(bt)||/(webkit)[ \/]([\w.]+)/.exec(bt)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(bt)||/(msie) ([\w.]+)/.exec(bt)||bt.indexOf("trident")>=0&&/(rv)(?::| )([\w.]+)/.exec(bt)||bt.indexOf("compatible")<0&&/(firefox)[ \/]([\w.]+)/.exec(bt)||[],Le=/(ipad)/.exec(bt)||/(ipod)/.exec(bt)||/(windows phone)/.exec(bt)||/(iphone)/.exec(bt)||/(kindle)/.exec(bt)||/(android)/.exec(bt)||/(windows)/.exec(bt)||/(mac)/.exec(bt)||/(linux)/.exec(bt)||/(cros)/.exec(bt)||[],Te={browser:Me[5]||Me[3]||Me[1]||"",version:Me[2]||Me[4]||"0",majorVersion:Me[4]||Me[2]||"0",platform:Le[0]||""},Ue={};if(Te.browser){Ue[Te.browser]=!0;let Ye=Te.majorVersion.split(".");Ue.version={major:parseInt(Te.majorVersion,10),string:Te.version},Ye.length>1&&(Ue.version.minor=parseInt(Ye[1],10)),Ye.length>2&&(Ue.version.build=parseInt(Ye[2],10))}if(Te.platform&&(Ue[Te.platform]=!0),(Ue.chrome||Ue.opr||Ue.safari)&&(Ue.webkit=!0),Ue.rv||Ue.iemobile){Ue.rv&&delete Ue.rv;let Ye="msie";Te.browser=Ye,Ue[Ye]=!0}if(Ue.edge){delete Ue.edge;let Ye="msedge";Te.browser=Ye,Ue[Ye]=!0}if(Ue.opr){let Ye="opera";Te.browser=Ye,Ue[Ye]=!0}if(Ue.safari&&Ue.android){let Ye="android";Te.browser=Ye,Ue[Ye]=!0}Ue.name=Te.browser,Ue.platform=Te.platform;for(let Ye in ne)ne.hasOwnProperty(Ye)&&delete ne[Ye];Object.assign(ne,Ue)}le();var oe=ne;class de extends te{static isSupported(){try{let Me=oe.msedge&&oe.version.minor>=15048,Le=oe.msedge?Me:!0;return self.fetch&&self.ReadableStream&&Le}catch(Me){return!1}}constructor(Me,Le){super("fetch-stream-loader"),this.TAG="FetchStreamLoader",this._seekHandler=Me,this._config=Le,this._needStash=!0,this._requestAbort=!1,this._contentLength=null,this._receivedLength=0}destroy(){this.isWorking()&&this.abort(),super.destroy()}open(Me,Le){this._dataSource=Me,this._range=Le;let Te=Me.url;this._config.reuseRedirectedURL&&Me.redirectedURL!=null&&(Te=Me.redirectedURL);let Ue=this._seekHandler.getConfig(Te,Le),Ye=new self.Headers;if(typeof Ue.headers=="object"){let Pt=Ue.headers;for(let Xt in Pt)Pt.hasOwnProperty(Xt)&&Ye.append(Xt,Pt[Xt])}let xt={method:"GET",headers:Ye,mode:"cors",cache:"default",referrerPolicy:"no-referrer-when-downgrade"};if(typeof this._config.headers=="object")for(let Pt in this._config.headers)Ye.append(Pt,this._config.headers[Pt]);Me.cors===!1&&(xt.mode="same-origin"),Me.withCredentials&&(xt.credentials="include"),Me.referrerPolicy&&(xt.referrerPolicy=Me.referrerPolicy),this._status=xe.kConnecting,self.fetch(Ue.url,xt).then(Pt=>{if(this._requestAbort){this._requestAbort=!1,this._status=xe.kIdle;return}if(Pt.ok&&Pt.status>=200&&Pt.status<=299){if(Pt.url!==Ue.url&&this._onURLRedirect){let Ht=this._seekHandler.removeURLParameters(Pt.url);this._onURLRedirect(Ht)}let Xt=Pt.headers.get("Content-Length");return Xt!=null&&(this._contentLength=parseInt(Xt),this._contentLength!==0&&this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength)),this._pump.call(this,Pt.body.getReader())}else if(this._status=xe.kError,this._onError)this._onError(ce.HTTP_STATUS_CODE_INVALID,{code:Pt.status,msg:Pt.statusText});else throw new be("FetchStreamLoader: Http code invalid, "+Pt.status+" "+Pt.statusText)}).catch(Pt=>{if(this._status=xe.kError,this._onError)this._onError(ce.EXCEPTION,{code:-1,msg:Pt.message});else throw Pt})}abort(){this._requestAbort=!0}_pump(Me){return Me.read().then(Le=>{if(Le.done)if(this._contentLength!==null&&this._receivedLength{if(Le.code===11&&oe.msedge)return;this._status=xe.kError;let Te=0,Ue=null;if((Le.code===19||Le.message==="network error")&&(this._contentLength===null||this._contentLength!==null&&this._receivedLength299))if(this._status=xe.kError,this._onError)this._onError(ce.HTTP_STATUS_CODE_INVALID,{code:Le.status,msg:Le.statusText});else throw new be("MozChunkedLoader: Http code invalid, "+Le.status+" "+Le.statusText);else this._status=xe.kBuffering}}_onProgress(Me){if(this._status===xe.kError)return;this._contentLength===null&&Me.total!==null&&Me.total!==0&&(this._contentLength=Me.total,this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength));let Le=Me.target.response,Te=this._range.from+this._receivedLength;this._receivedLength+=Le.byteLength,this._onDataArrival&&this._onDataArrival(Le,Te,this._receivedLength)}_onLoadEnd(Me){if(this._requestAbort===!0){this._requestAbort=!1;return}else if(this._status===xe.kError)return;this._status=xe.kComplete,this._onComplete&&this._onComplete(this._range.from,this._range.from+this._receivedLength-1)}_onXhrError(Me){this._status=xe.kError;let Le=0,Te=null;if(this._contentLength&&Me.loaded=200&&Le.status<=299){if(this._status=LoaderStatus.kBuffering,Le.responseURL!=null){let Ue=this._seekHandler.removeURLParameters(Le.responseURL);Le.responseURL!==this._currentRequestURL&&Ue!==this._currentRedirectedURL&&(this._currentRedirectedURL=Ue,this._onURLRedirect&&this._onURLRedirect(Ue))}let Te=Le.getResponseHeader("Content-Length");if(Te!=null&&this._contentLength==null){let Ue=parseInt(Te);Ue>0&&(this._contentLength=Ue,this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength))}}else if(this._status=LoaderStatus.kError,this._onError)this._onError(LoaderErrors.HTTP_STATUS_CODE_INVALID,{code:Le.status,msg:Le.statusText});else throw new RuntimeException("MSStreamLoader: Http code invalid, "+Le.status+" "+Le.statusText);else if(Le.readyState===3&&Le.status>=200&&Le.status<=299){this._status=LoaderStatus.kBuffering;let Te=Le.response;this._reader.readAsArrayBuffer(Te)}}_xhrOnError(Me){this._status=LoaderStatus.kError;let Le=LoaderErrors.EXCEPTION,Te={code:-1,msg:Me.constructor.name+" "+Me.type};if(this._onError)this._onError(Le,Te);else throw new RuntimeException(Te.msg)}_msrOnProgress(Me){let Te=Me.target.result;if(Te==null){this._doReconnectIfNeeded();return}let Ue=Te.slice(this._lastTimeBufferSize);this._lastTimeBufferSize=Te.byteLength;let Ye=this._totalRange.from+this._receivedLength;this._receivedLength+=Ue.byteLength,this._onDataArrival&&this._onDataArrival(Ue,Ye,this._receivedLength),Te.byteLength>=this._bufferLimit&&(Log.v(this.TAG,`MSStream buffer exceeded max size near ${Ye+Ue.byteLength}, reconnecting...`),this._doReconnectIfNeeded())}_doReconnectIfNeeded(){if(this._contentLength==null||this._receivedLength=this._contentLength&&(Te=this._range.from+this._contentLength-1),this._currentRequestRange={from:Le,to:Te},this._internalOpen(this._dataSource,this._currentRequestRange)}_internalOpen(Me,Le){this._lastTimeLoaded=0;let Te=Me.url;this._config.reuseRedirectedURL&&(this._currentRedirectedURL!=null?Te=this._currentRedirectedURL:Me.redirectedURL!=null&&(Te=Me.redirectedURL));let Ue=this._seekHandler.getConfig(Te,Le);this._currentRequestURL=Ue.url;let Ye=this._xhr=new XMLHttpRequest;if(Ye.open("GET",Ue.url,!0),Ye.responseType="arraybuffer",Ye.onreadystatechange=this._onReadyStateChange.bind(this),Ye.onprogress=this._onProgress.bind(this),Ye.onload=this._onLoad.bind(this),Ye.onerror=this._onXhrError.bind(this),Me.withCredentials&&(Ye.withCredentials=!0),typeof Ue.headers=="object"){let xt=Ue.headers;for(let Pt in xt)xt.hasOwnProperty(Pt)&&Ye.setRequestHeader(Pt,xt[Pt])}if(typeof this._config.headers=="object"){let xt=this._config.headers;for(let Pt in xt)xt.hasOwnProperty(Pt)&&Ye.setRequestHeader(Pt,xt[Pt])}Ye.send()}abort(){this._requestAbort=!0,this._internalAbort(),this._status=xe.kComplete}_internalAbort(){this._xhr&&(this._xhr.onreadystatechange=null,this._xhr.onprogress=null,this._xhr.onload=null,this._xhr.onerror=null,this._xhr.abort(),this._xhr=null)}_onReadyStateChange(Me){let Le=Me.target;if(Le.readyState===2){if(Le.responseURL!=null){let Te=this._seekHandler.removeURLParameters(Le.responseURL);Le.responseURL!==this._currentRequestURL&&Te!==this._currentRedirectedURL&&(this._currentRedirectedURL=Te,this._onURLRedirect&&this._onURLRedirect(Te))}if(Le.status>=200&&Le.status<=299){if(this._waitForTotalLength)return;this._status=xe.kBuffering}else if(this._status=xe.kError,this._onError)this._onError(ce.HTTP_STATUS_CODE_INVALID,{code:Le.status,msg:Le.statusText});else throw new be("RangeLoader: Http code invalid, "+Le.status+" "+Le.statusText)}}_onProgress(Me){if(this._status===xe.kError)return;if(this._contentLength===null){let Te=!1;if(this._waitForTotalLength){this._waitForTotalLength=!1,this._totalLengthReceived=!0,Te=!0;let Ue=Me.total;this._internalAbort(),Ue!=null&Ue!==0&&(this._totalLength=Ue)}if(this._range.to===-1?this._contentLength=this._totalLength-this._range.from:this._contentLength=this._range.to-this._range.from+1,Te){this._openSubRange();return}this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength)}let Le=Me.loaded-this._lastTimeLoaded;this._lastTimeLoaded=Me.loaded,this._speedSampler.addBytes(Le)}_normalizeSpeed(Me){let Le=this._chunkSizeKBList,Te=Le.length-1,Ue=0,Ye=0,xt=Te;if(Me=Le[Ue]&&Me=3&&(Le=this._speedSampler.currentKBps)),Le!==0){let xt=this._normalizeSpeed(Le);this._currentSpeedNormalized!==xt&&(this._currentSpeedNormalized=xt,this._currentChunkSizeKB=xt)}let Te=Me.target.response,Ue=this._range.from+this._receivedLength;this._receivedLength+=Te.byteLength;let Ye=!1;this._contentLength!=null&&this._receivedLength0&&this._receivedLength{this._dispatchArrayBuffer(Le.result)},Le.readAsArrayBuffer(Me.data)}else{this._status=xe.kError;let Le={code:-1,msg:"Unsupported WebSocket message type: "+Me.data.constructor.name};if(this._onError)this._onError(ce.EXCEPTION,Le);else throw new be(Le.msg)}}_dispatchArrayBuffer(Me){let Le=Me,Te=this._receivedLength;this._receivedLength+=Le.byteLength,this._onDataArrival&&this._onDataArrival(Le,Te,this._receivedLength)}_onWebSocketError(Me){this._status=xe.kError;let Le={code:Me.code,msg:Me.message};if(this._onError)this._onError(ce.EXCEPTION,Le);else throw new be(Le.msg)}}var ze=Ne;class Ge{constructor(Me){this._zeroStart=Me||!1}getConfig(Me,Le){let Te={};if(Le.from!==0||Le.to!==-1){let Ue;Le.to!==-1?Ue=`bytes=${Le.from.toString()}-${Le.to.toString()}`:Ue=`bytes=${Le.from.toString()}-`,Te.Range=Ue}else this._zeroStart&&(Te.Range="bytes=0-");return{url:Me,headers:Te}}removeURLParameters(Me){return Me}}var Xe=Ge;class Qe{constructor(Me,Le){this._startName=Me,this._endName=Le}getConfig(Me,Le){let Te=Me;if(Le.from!==0||Le.to!==-1){let Ue=!0;Te.indexOf("?")===-1&&(Te+="?",Ue=!1),Ue&&(Te+="&"),Te+=`${this._startName}=${Le.from.toString()}`,Le.to!==-1&&(Te+=`&${this._endName}=${Le.to.toString()}`)}return{url:Te,headers:{}}}removeURLParameters(Me){let Le=Me.split("?")[0],Te,Ue=Me.indexOf("?");Ue!==-1&&(Te=Me.substring(Ue+1));let Ye="";if(Te!=null&&Te.length>0){let xt=Te.split("&");for(let Pt=0;Pt0;Xt[0]!==this._startName&&Xt[0]!==this._endName&&(Ht&&(Ye+="&"),Ye+=xt[Pt])}}return Ye.length===0?Le:Le+"?"+Ye}}var nt=Qe;class $e{constructor(Me,Le,Te){this.TAG="IOController",this._config=Le,this._extraData=Te,this._stashInitialSize=1024*384,Le.stashInitialSize!=null&&Le.stashInitialSize>0&&(this._stashInitialSize=Le.stashInitialSize),this._stashUsed=0,this._stashSize=this._stashInitialSize,this._bufferSize=1024*1024*3,this._stashBuffer=new ArrayBuffer(this._bufferSize),this._stashByteStart=0,this._enableStash=!0,Le.enableStashBuffer===!1&&(this._enableStash=!1),this._loader=null,this._loaderClass=null,this._seekHandler=null,this._dataSource=Me,this._isWebSocketURL=/wss?:\/\/(.+?)/.test(Me.url),this._refTotalLength=Me.filesize?Me.filesize:null,this._totalLength=this._refTotalLength,this._fullRequestFlag=!1,this._currentRange=null,this._redirectedURL=null,this._speedNormalized=0,this._speedSampler=new Ae,this._speedNormalizeList=[64,128,256,384,512,768,1024,1536,2048,3072,4096],this._isEarlyEofReconnecting=!1,this._paused=!1,this._resumeFrom=0,this._onDataArrival=null,this._onSeeked=null,this._onError=null,this._onComplete=null,this._onRedirect=null,this._onRecoveredEarlyEof=null,this._selectSeekHandler(),this._selectLoader(),this._createLoader()}destroy(){this._loader.isWorking()&&this._loader.abort(),this._loader.destroy(),this._loader=null,this._loaderClass=null,this._dataSource=null,this._stashBuffer=null,this._stashUsed=this._stashSize=this._bufferSize=this._stashByteStart=0,this._currentRange=null,this._speedSampler=null,this._isEarlyEofReconnecting=!1,this._onDataArrival=null,this._onSeeked=null,this._onError=null,this._onComplete=null,this._onRedirect=null,this._onRecoveredEarlyEof=null,this._extraData=null}isWorking(){return this._loader&&this._loader.isWorking()&&!this._paused}isPaused(){return this._paused}get status(){return this._loader.status}get extraData(){return this._extraData}set extraData(Me){this._extraData=Me}get onDataArrival(){return this._onDataArrival}set onDataArrival(Me){this._onDataArrival=Me}get onSeeked(){return this._onSeeked}set onSeeked(Me){this._onSeeked=Me}get onError(){return this._onError}set onError(Me){this._onError=Me}get onComplete(){return this._onComplete}set onComplete(Me){this._onComplete=Me}get onRedirect(){return this._onRedirect}set onRedirect(Me){this._onRedirect=Me}get onRecoveredEarlyEof(){return this._onRecoveredEarlyEof}set onRecoveredEarlyEof(Me){this._onRecoveredEarlyEof=Me}get currentURL(){return this._dataSource.url}get hasRedirect(){return this._redirectedURL!=null||this._dataSource.redirectedURL!=null}get currentRedirectedURL(){return this._redirectedURL||this._dataSource.redirectedURL}get currentSpeed(){return this._loaderClass===Re?this._loader.currentSpeed:this._speedSampler.lastSecondKBps}get loaderType(){return this._loader.type}_selectSeekHandler(){let Me=this._config;if(Me.seekType==="range")this._seekHandler=new Xe(this._config.rangeLoadZeroStart);else if(Me.seekType==="param"){let Le=Me.seekParamStart||"bstart",Te=Me.seekParamEnd||"bend";this._seekHandler=new nt(Le,Te)}else if(Me.seekType==="custom"){if(typeof Me.customSeekHandler!="function")throw new pe("Custom seekType specified in config but invalid customSeekHandler!");this._seekHandler=new Me.customSeekHandler}else throw new pe(`Invalid seekType in config: ${Me.seekType}`)}_selectLoader(){if(this._config.customLoader!=null)this._loaderClass=this._config.customLoader;else if(this._isWebSocketURL)this._loaderClass=ze;else if(he.isSupported())this._loaderClass=he;else if(ue.isSupported())this._loaderClass=ue;else if(Re.isSupported())this._loaderClass=Re;else throw new be("Your browser doesn't support xhr with arraybuffer responseType!")}_createLoader(){this._loader=new this._loaderClass(this._seekHandler,this._config),this._loader.needStashBuffer===!1&&(this._enableStash=!1),this._loader.onContentLengthKnown=this._onContentLengthKnown.bind(this),this._loader.onURLRedirect=this._onURLRedirect.bind(this),this._loader.onDataArrival=this._onLoaderChunkArrival.bind(this),this._loader.onComplete=this._onLoaderComplete.bind(this),this._loader.onError=this._onLoaderError.bind(this)}open(Me){this._currentRange={from:0,to:-1},Me&&(this._currentRange.from=Me),this._speedSampler.reset(),Me||(this._fullRequestFlag=!0),this._loader.open(this._dataSource,Object.assign({},this._currentRange))}abort(){this._loader.abort(),this._paused&&(this._paused=!1,this._resumeFrom=0)}pause(){this.isWorking()&&(this._loader.abort(),this._stashUsed!==0?(this._resumeFrom=this._stashByteStart,this._currentRange.to=this._stashByteStart-1):this._resumeFrom=this._currentRange.to+1,this._stashUsed=0,this._stashByteStart=0,this._paused=!0)}resume(){if(this._paused){this._paused=!1;let Me=this._resumeFrom;this._resumeFrom=0,this._internalSeek(Me,!0)}}seek(Me){this._paused=!1,this._stashUsed=0,this._stashByteStart=0,this._internalSeek(Me,!0)}_internalSeek(Me,Le){this._loader.isWorking()&&this._loader.abort(),this._flushStashBuffer(Le),this._loader.destroy(),this._loader=null;let Te={from:Me,to:-1};this._currentRange={from:Te.from,to:-1},this._speedSampler.reset(),this._stashSize=this._stashInitialSize,this._createLoader(),this._loader.open(this._dataSource,Te),this._onSeeked&&this._onSeeked()}updateUrl(Me){if(!Me||typeof Me!="string"||Me.length===0)throw new pe("Url must be a non-empty string!");this._dataSource.url=Me}_expandBuffer(Me){let Le=this._stashSize;for(;Le+1024*1024*10){let Ue=new Uint8Array(this._stashBuffer,0,this._stashUsed);new Uint8Array(Te,0,Le).set(Ue,0)}this._stashBuffer=Te,this._bufferSize=Le}_normalizeSpeed(Me){let Le=this._speedNormalizeList,Te=Le.length-1,Ue=0,Ye=0,xt=Te;if(Me=Le[Ue]&&Me=512&&Me<=1024?Le=Math.floor(Me*1.5):Le=Me*2,Le>8192&&(Le=8192);let Te=Le*1024+1024*1024*1;this._bufferSize0){let xt=this._stashBuffer.slice(0,this._stashUsed),Pt=this._dispatchChunks(xt,this._stashByteStart);if(Pt0){let Xt=new Uint8Array(xt,Pt);Ye.set(Xt,0),this._stashUsed=Xt.byteLength,this._stashByteStart+=Pt}}else this._stashUsed=0,this._stashByteStart+=Pt;this._stashUsed+Me.byteLength>this._bufferSize&&(this._expandBuffer(this._stashUsed+Me.byteLength),Ye=new Uint8Array(this._stashBuffer,0,this._bufferSize)),Ye.set(new Uint8Array(Me),this._stashUsed),this._stashUsed+=Me.byteLength}else{let xt=this._dispatchChunks(Me,Le);if(xtthis._bufferSize&&(this._expandBuffer(Pt),Ye=new Uint8Array(this._stashBuffer,0,this._bufferSize)),Ye.set(new Uint8Array(Me,xt),0),this._stashUsed+=Pt,this._stashByteStart=Le+xt}}}else if(this._stashUsed===0){let Ye=this._dispatchChunks(Me,Le);if(Yethis._bufferSize&&this._expandBuffer(xt),new Uint8Array(this._stashBuffer,0,this._bufferSize).set(new Uint8Array(Me,Ye),0),this._stashUsed+=xt,this._stashByteStart=Le+Ye}}else{this._stashUsed+Me.byteLength>this._bufferSize&&this._expandBuffer(this._stashUsed+Me.byteLength);let Ye=new Uint8Array(this._stashBuffer,0,this._bufferSize);Ye.set(new Uint8Array(Me),this._stashUsed),this._stashUsed+=Me.byteLength;let xt=this._dispatchChunks(this._stashBuffer.slice(0,this._stashUsed),this._stashByteStart);if(xt0){let Pt=new Uint8Array(this._stashBuffer,xt);Ye.set(Pt,0)}this._stashUsed-=xt,this._stashByteStart+=xt}}_flushStashBuffer(Me){if(this._stashUsed>0){let Le=this._stashBuffer.slice(0,this._stashUsed),Te=this._dispatchChunks(Le,this._stashByteStart),Ue=Le.byteLength-Te;if(Te0){let Ye=new Uint8Array(this._stashBuffer,0,this._bufferSize),xt=new Uint8Array(Le,Te);Ye.set(xt,0),this._stashUsed=xt.byteLength,this._stashByteStart+=Te}return 0}return this._stashUsed=0,this._stashByteStart=0,Ue}return 0}_onLoaderComplete(Me,Le){this._flushStashBuffer(!0),this._onComplete&&this._onComplete(this._extraData)}_onLoaderError(Me,Le){switch(Pe.e(this.TAG,`Loader error, code = ${Le.code}, msg = ${Le.msg}`),this._flushStashBuffer(!1),this._isEarlyEofReconnecting&&(this._isEarlyEofReconnecting=!1,Me=ce.UNRECOVERABLE_EARLY_EOF),Me){case ce.EARLY_EOF:{if(!this._config.isLive&&this._totalLength){let Te=this._currentRange.to+1;Te0){let Le=ft.getConfig();Me.emit("change",Le)}}static registerListener(Me){ft.emitter.addListener("change",Me)}static removeListener(Me){ft.emitter.removeListener("change",Me)}static addLogListener(Me){Pe.emitter.addListener("log",Me),Pe.emitter.listenerCount("log")>0&&(Pe.ENABLE_CALLBACK=!0,ft._notifyChange())}static removeLogListener(Me){Pe.emitter.removeListener("log",Me),Pe.emitter.listenerCount("log")===0&&(Pe.ENABLE_CALLBACK=!1,ft._notifyChange())}}ft.emitter=new(Ce());var dt=ft;class ht{constructor(){this.mimeType=null,this.duration=null,this.hasAudio=null,this.hasVideo=null,this.audioCodec=null,this.videoCodec=null,this.audioDataRate=null,this.videoDataRate=null,this.audioSampleRate=null,this.audioChannelCount=null,this.width=null,this.height=null,this.fps=null,this.profile=null,this.level=null,this.refFrames=null,this.chromaFormat=null,this.sarNum=null,this.sarDen=null,this.metadata=null,this.segments=null,this.segmentCount=null,this.hasKeyframesIndex=null,this.keyframesIndex=null}isComplete(){let Me=this.hasAudio===!1||this.hasAudio===!0&&this.audioCodec!=null&&this.audioSampleRate!=null&&this.audioChannelCount!=null,Le=this.hasVideo===!1||this.hasVideo===!0&&this.videoCodec!=null&&this.width!=null&&this.height!=null&&this.fps!=null&&this.profile!=null&&this.level!=null&&this.refFrames!=null&&this.chromaFormat!=null&&this.sarNum!=null&&this.sarDen!=null;return this.mimeType!=null&&this.duration!=null&&this.metadata!=null&&this.hasKeyframesIndex!=null&&Me&&Le}isSeekable(){return this.hasKeyframesIndex===!0}getNearestKeyframe(Me){if(this.keyframesIndex==null)return null;let Le=this.keyframesIndex,Te=this._search(Le.times,Me);return{index:Te,milliseconds:Le.times[Te],fileposition:Le.filepositions[Te]}}_search(Me,Le){let Te=0,Ue=Me.length-1,Ye=0,xt=0,Pt=Ue;for(Le=Me[Ye]&&Le=128){Me.push(String.fromCharCode(Ye&65535)),Te+=2;continue}}}else if(Le[Te]<240){if(Kt(Le,Te,2)){let Ye=(Le[Te]&15)<<12|(Le[Te+1]&63)<<6|Le[Te+2]&63;if(Ye>=2048&&(Ye&63488)!==55296){Me.push(String.fromCharCode(Ye&65535)),Te+=3;continue}}}else if(Le[Te]<248&&Kt(Le,Te,3)){let Ye=(Le[Te]&7)<<18|(Le[Te+1]&63)<<12|(Le[Te+2]&63)<<6|Le[Te+3]&63;if(Ye>65536&&Ye<1114112){Ye-=65536,Me.push(String.fromCharCode(Ye>>>10|55296)),Me.push(String.fromCharCode(Ye&1023|56320)),Te+=4;continue}}}Me.push("\uFFFD"),++Te}return Me.join("")}var vn=qt;let Ot=function(){let bt=new ArrayBuffer(2);return new DataView(bt).setInt16(0,256,!0),new Int16Array(bt)[0]===256}();class rn{static parseScriptData(Me,Le,Te){let Ue={};try{let Ye=rn.parseValue(Me,Le,Te),xt=rn.parseValue(Me,Le+Ye.size,Te-Ye.size);Ue[Ye.data]=xt.data}catch(Ye){Pe.e("AMF",Ye.toString())}return Ue}static parseObject(Me,Le,Te){if(Te<3)throw new we("Data not enough when parse ScriptDataObject");let Ue=rn.parseString(Me,Le,Te),Ye=rn.parseValue(Me,Le+Ue.size,Te-Ue.size),xt=Ye.objectEnd;return{data:{name:Ue.data,value:Ye.data},size:Ue.size+Ye.size,objectEnd:xt}}static parseVariable(Me,Le,Te){return rn.parseObject(Me,Le,Te)}static parseString(Me,Le,Te){if(Te<2)throw new we("Data not enough when parse String");let Ye=new DataView(Me,Le,Te).getUint16(0,!Ot),xt;return Ye>0?xt=vn(new Uint8Array(Me,Le+2,Ye)):xt="",{data:xt,size:2+Ye}}static parseLongString(Me,Le,Te){if(Te<4)throw new we("Data not enough when parse LongString");let Ye=new DataView(Me,Le,Te).getUint32(0,!Ot),xt;return Ye>0?xt=vn(new Uint8Array(Me,Le+4,Ye)):xt="",{data:xt,size:4+Ye}}static parseDate(Me,Le,Te){if(Te<10)throw new we("Data size invalid when parse Date");let Ue=new DataView(Me,Le,Te),Ye=Ue.getFloat64(0,!Ot),xt=Ue.getInt16(8,!Ot);return Ye+=xt*60*1e3,{data:new Date(Ye),size:10}}static parseValue(Me,Le,Te){if(Te<1)throw new we("Data not enough when parse Value");let Ue=new DataView(Me,Le,Te),Ye=1,xt=Ue.getUint8(0),Pt,Xt=!1;try{switch(xt){case 0:Pt=Ue.getFloat64(1,!Ot),Ye+=8;break;case 1:{Pt=!!Ue.getUint8(1),Ye+=1;break}case 2:{let Ht=rn.parseString(Me,Le+1,Te-1);Pt=Ht.data,Ye+=Ht.size;break}case 3:{Pt={};let Ht=0;for((Ue.getUint32(Te-4,!Ot)&16777215)===9&&(Ht=3);Ye32)throw new pe("ExpGolomb: readBits() bits exceeded max 32bits!");if(Me<=this._current_word_bits_left){let xt=this._current_word>>>32-Me;return this._current_word<<=Me,this._current_word_bits_left-=Me,xt}let Le=this._current_word_bits_left?this._current_word:0;Le=Le>>>32-this._current_word_bits_left;let Te=Me-this._current_word_bits_left;this._fillCurrentWord();let Ue=Math.min(Te,this._current_word_bits_left),Ye=this._current_word>>>32-Ue;return this._current_word<<=Ue,this._current_word_bits_left-=Ue,Le=Le<>>Me)return this._current_word<<=Me,this._current_word_bits_left-=Me,Me;return this._fillCurrentWord(),Me+this._skipLeadingZero()}readUEG(){let Me=this._skipLeadingZero();return this.readBits(Me+1)-1}readSEG(){let Me=this.readUEG();return Me&1?Me+1>>>1:-1*(Me>>>1)}}var Rn=On;class sn{static _ebsp2rbsp(Me){let Le=Me,Te=Le.byteLength,Ue=new Uint8Array(Te),Ye=0;for(let xt=0;xt=2&&Le[xt]===3&&Le[xt-1]===0&&Le[xt-2]===0||(Ue[Ye]=Le[xt],Ye++);return new Uint8Array(Ue.buffer,0,Ye)}static parseSPS(Me){let Le=sn._ebsp2rbsp(Me),Te=new Rn(Le);Te.readByte();let Ue=Te.readByte();Te.readByte();let Ye=Te.readByte();Te.readUEG();let xt=sn.getProfileString(Ue),Pt=sn.getLevelString(Ye),Xt=1,Ht=420,mn=[0,420,422,444],pn=8;if((Ue===100||Ue===110||Ue===122||Ue===244||Ue===44||Ue===83||Ue===86||Ue===118||Ue===128||Ue===138||Ue===144)&&(Xt=Te.readUEG(),Xt===3&&Te.readBits(1),Xt<=3&&(Ht=mn[Xt]),pn=Te.readUEG()+8,Te.readUEG(),Te.readBits(1),Te.readBool())){let Ta=Xt!==3?8:12;for(let ua=0;ua0&&Ta<16?(mr=ua[Ta-1],Xn=qa[Ta-1]):Ta===255&&(mr=Te.readByte()<<8|Te.readByte(),Xn=Te.readByte()<<8|Te.readByte())}if(Te.readBool()&&Te.readBool(),Te.readBool()&&(Te.readBits(4),Te.readBool()&&Te.readBits(24)),Te.readBool()&&(Te.readUEG(),Te.readUEG()),Te.readBool()){let Ta=Te.readBits(32),ua=Te.readBits(32);yr=Te.readBool(),wn=ua,gr=Ta*2,ur=wn/gr}}let Ur=1;(mr!==1||Xn!==1)&&(Ur=mr/Xn);let Ja=0,gi=0;if(Xt===0)Ja=1,gi=2-dr;else{let Ta=Xt===3?1:2,ua=Xt===1?2:1;Ja=Ta,gi=ua*(2-dr)}let ui=(qn+1)*16,Hr=(2-dr)*((er+1)*16);ui-=(fn+nn)*Ja,Hr-=(Nn+jn)*gi;let wa=Math.ceil(ui*Ur);return Te.destroy(),Te=null,{profile_string:xt,level_string:Pt,bit_depth:pn,ref_frames:Dn,chroma_format:Ht,chroma_format_string:sn.getChromaFormatString(Ht),frame_rate:{fixed:yr,fps:ur,fps_den:gr,fps_num:wn},sar_ratio:{width:mr,height:Xn},codec_size:{width:ui,height:Hr},present_size:{width:wa,height:Hr}}}static _skipScalingList(Me,Le){let Te=8,Ue=8,Ye=0;for(let xt=0;xt>>8&255|(bt&255)<<8}function Zt(bt){return(bt&4278190080)>>>24|(bt&16711680)>>>8|(bt&65280)<<8|(bt&255)<<24}function vt(bt,Me){return bt[Me]<<24|bt[Me+1]<<16|bt[Me+2]<<8|bt[Me+3]}class At{constructor(Me,Le){this.TAG="FLVDemuxer",this._config=Le,this._onError=null,this._onMediaInfo=null,this._onMetaDataArrived=null,this._onScriptDataArrived=null,this._onTrackMetadata=null,this._onDataAvailable=null,this._dataOffset=Me.dataOffset,this._firstParse=!0,this._dispatch=!1,this._hasAudio=Me.hasAudioTrack,this._hasVideo=Me.hasVideoTrack,this._hasAudioFlagOverrided=!1,this._hasVideoFlagOverrided=!1,this._audioInitialMetadataDispatched=!1,this._videoInitialMetadataDispatched=!1,this._mediaInfo=new Ut,this._mediaInfo.hasAudio=this._hasAudio,this._mediaInfo.hasVideo=this._hasVideo,this._metadata=null,this._audioMetadata=null,this._videoMetadata=null,this._naluLengthSize=4,this._timestampBase=0,this._timescale=1e3,this._duration=0,this._durationOverrided=!1,this._referenceFrameRate={fixed:!0,fps:23.976,fps_num:23976,fps_den:1e3},this._flvSoundRateTable=[5500,11025,22050,44100,48e3],this._mpegSamplingRates=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350],this._mpegAudioV10SampleRateTable=[44100,48e3,32e3,0],this._mpegAudioV20SampleRateTable=[22050,24e3,16e3,0],this._mpegAudioV25SampleRateTable=[11025,12e3,8e3,0],this._mpegAudioL1BitRateTable=[0,32,64,96,128,160,192,224,256,288,320,352,384,416,448,-1],this._mpegAudioL2BitRateTable=[0,32,48,56,64,80,96,112,128,160,192,224,256,320,384,-1],this._mpegAudioL3BitRateTable=[0,32,40,48,56,64,80,96,112,128,160,192,224,256,320,-1],this._videoTrack={type:"video",id:1,sequenceNumber:0,samples:[],length:0},this._audioTrack={type:"audio",id:2,sequenceNumber:0,samples:[],length:0},this._littleEndian=function(){let Te=new ArrayBuffer(2);return new DataView(Te).setInt16(0,256,!0),new Int16Array(Te)[0]===256}()}destroy(){this._mediaInfo=null,this._metadata=null,this._audioMetadata=null,this._videoMetadata=null,this._videoTrack=null,this._audioTrack=null,this._onError=null,this._onMediaInfo=null,this._onMetaDataArrived=null,this._onScriptDataArrived=null,this._onTrackMetadata=null,this._onDataAvailable=null}static probe(Me){let Le=new Uint8Array(Me),Te={match:!1};if(Le[0]!==70||Le[1]!==76||Le[2]!==86||Le[3]!==1)return Te;let Ue=(Le[4]&4)>>>2!==0,Ye=(Le[4]&1)!==0,xt=vt(Le,5);return xt<9?Te:{match:!0,consumed:xt,dataOffset:xt,hasAudioTrack:Ue,hasVideoTrack:Ye}}bindDataSource(Me){return Me.onDataArrival=this.parseChunks.bind(this),this}get onTrackMetadata(){return this._onTrackMetadata}set onTrackMetadata(Me){this._onTrackMetadata=Me}get onMediaInfo(){return this._onMediaInfo}set onMediaInfo(Me){this._onMediaInfo=Me}get onMetaDataArrived(){return this._onMetaDataArrived}set onMetaDataArrived(Me){this._onMetaDataArrived=Me}get onScriptDataArrived(){return this._onScriptDataArrived}set onScriptDataArrived(Me){this._onScriptDataArrived=Me}get onError(){return this._onError}set onError(Me){this._onError=Me}get onDataAvailable(){return this._onDataAvailable}set onDataAvailable(Me){this._onDataAvailable=Me}get timestampBase(){return this._timestampBase}set timestampBase(Me){this._timestampBase=Me}get overridedDuration(){return this._duration}set overridedDuration(Me){this._durationOverrided=!0,this._duration=Me,this._mediaInfo.duration=Me}set overridedHasAudio(Me){this._hasAudioFlagOverrided=!0,this._hasAudio=Me,this._mediaInfo.hasAudio=Me}set overridedHasVideo(Me){this._hasVideoFlagOverrided=!0,this._hasVideo=Me,this._mediaInfo.hasVideo=Me}resetMediaInfo(){this._mediaInfo=new Ut}_isInitialMetadataDispatched(){return this._hasAudio&&this._hasVideo?this._audioInitialMetadataDispatched&&this._videoInitialMetadataDispatched:this._hasAudio&&!this._hasVideo?this._audioInitialMetadataDispatched:!this._hasAudio&&this._hasVideo?this._videoInitialMetadataDispatched:!1}parseChunks(Me,Le){if(!this._onError||!this._onMediaInfo||!this._onTrackMetadata||!this._onDataAvailable)throw new we("Flv: onError & onMediaInfo & onTrackMetadata & onDataAvailable callback must be specified");let Te=0,Ue=this._littleEndian;if(Le===0)if(Me.byteLength>13)Te=At.probe(Me).dataOffset;else return 0;for(this._firstParse&&(this._firstParse=!1,Le+Te!==this._dataOffset&&Pe.w(this.TAG,"First time parsing but chunk byteStart invalid!"),new DataView(Me,Te).getUint32(0,!Ue)!==0&&Pe.w(this.TAG,"PrevTagSize0 !== 0 !!!"),Te+=4);TeMe.byteLength)break;let xt=Ye.getUint8(0),Pt=Ye.getUint32(0,!Ue)&16777215;if(Te+11+Pt+4>Me.byteLength)break;if(xt!==8&&xt!==9&&xt!==18){Pe.w(this.TAG,`Unsupported tag type ${xt}, skipped`),Te+=11+Pt+4;continue}let Xt=Ye.getUint8(4),Ht=Ye.getUint8(5),mn=Ye.getUint8(6),pn=Ye.getUint8(7),Yn=mn|Ht<<8|Xt<<16|pn<<24;(Ye.getUint32(7,!Ue)&16777215)!==0&&Pe.w(this.TAG,"Meet tag which has StreamID != 0!");let qn=Te+11;switch(xt){case 8:this._parseAudioData(Me,qn,Pt,Yn);break;case 9:this._parseVideoData(Me,qn,Pt,Yn,Le+Te);break;case 18:this._parseScriptData(Me,qn,Pt);break}let er=Ye.getUint32(11+Pt,!Ue);er!==11+Pt&&Pe.w(this.TAG,`Invalid PrevTagSize ${er}`),Te+=11+Pt+4}return this._isInitialMetadataDispatched()&&this._dispatch&&(this._audioTrack.length||this._videoTrack.length)&&this._onDataAvailable(this._audioTrack,this._videoTrack),Te}_parseScriptData(Me,Le,Te){let Ue=an.parseScriptData(Me,Le,Te);if(Ue.hasOwnProperty("onMetaData")){if(Ue.onMetaData==null||typeof Ue.onMetaData!="object"){Pe.w(this.TAG,"Invalid onMetaData structure!");return}this._metadata&&Pe.w(this.TAG,"Found another onMetaData tag!"),this._metadata=Ue;let Ye=this._metadata.onMetaData;if(this._onMetaDataArrived&&this._onMetaDataArrived(Object.assign({},Ye)),typeof Ye.hasAudio=="boolean"&&this._hasAudioFlagOverrided===!1&&(this._hasAudio=Ye.hasAudio,this._mediaInfo.hasAudio=this._hasAudio),typeof Ye.hasVideo=="boolean"&&this._hasVideoFlagOverrided===!1&&(this._hasVideo=Ye.hasVideo,this._mediaInfo.hasVideo=this._hasVideo),typeof Ye.audiodatarate=="number"&&(this._mediaInfo.audioDataRate=Ye.audiodatarate),typeof Ye.videodatarate=="number"&&(this._mediaInfo.videoDataRate=Ye.videodatarate),typeof Ye.width=="number"&&(this._mediaInfo.width=Ye.width),typeof Ye.height=="number"&&(this._mediaInfo.height=Ye.height),typeof Ye.duration=="number"){if(!this._durationOverrided){let xt=Math.floor(Ye.duration*this._timescale);this._duration=xt,this._mediaInfo.duration=xt}}else this._mediaInfo.duration=0;if(typeof Ye.framerate=="number"){let xt=Math.floor(Ye.framerate*1e3);if(xt>0){let Pt=xt/1e3;this._referenceFrameRate.fixed=!0,this._referenceFrameRate.fps=Pt,this._referenceFrameRate.fps_num=xt,this._referenceFrameRate.fps_den=1e3,this._mediaInfo.fps=Pt}}if(typeof Ye.keyframes=="object"){this._mediaInfo.hasKeyframesIndex=!0;let xt=Ye.keyframes;this._mediaInfo.keyframesIndex=this._parseKeyframesIndex(xt),Ye.keyframes=null}else this._mediaInfo.hasKeyframesIndex=!1;this._dispatch=!1,this._mediaInfo.metadata=Ye,Pe.v(this.TAG,"Parsed onMetaData"),this._mediaInfo.isComplete()&&this._onMediaInfo(this._mediaInfo)}Object.keys(Ue).length>0&&this._onScriptDataArrived&&this._onScriptDataArrived(Object.assign({},Ue))}_parseKeyframesIndex(Me){let Le=[],Te=[];for(let Ue=1;Ue>>4;if(Xt!==2&&Xt!==10){this._onError(It.CODEC_UNSUPPORTED,"Flv: Unsupported audio codec idx: "+Xt);return}let Ht=0,mn=(Pt&12)>>>2;if(mn>=0&&mn<=4)Ht=this._flvSoundRateTable[mn];else{this._onError(It.FORMAT_ERROR,"Flv: Invalid audio sample rate idx: "+mn);return}let pn=(Pt&2)>>>1,Yn=Pt&1,Dn=this._audioMetadata,qn=this._audioTrack;if(Dn||(this._hasAudio===!1&&this._hasAudioFlagOverrided===!1&&(this._hasAudio=!0,this._mediaInfo.hasAudio=!0),Dn=this._audioMetadata={},Dn.type="audio",Dn.id=qn.id,Dn.timescale=this._timescale,Dn.duration=this._duration,Dn.audioSampleRate=Ht,Dn.channelCount=Yn===0?1:2),Xt===10){let er=this._parseAACAudioData(Me,Le+1,Te-1);if(er==null)return;if(er.packetType===0){Dn.config&&Pe.w(this.TAG,"Found another AudioSpecificConfig!");let dr=er.data;Dn.audioSampleRate=dr.samplingRate,Dn.channelCount=dr.channelCount,Dn.codec=dr.codec,Dn.originalCodec=dr.originalCodec,Dn.config=dr.config,Dn.refSampleDuration=1024/Dn.audioSampleRate*Dn.timescale,Pe.v(this.TAG,"Parsed AudioSpecificConfig"),this._isInitialMetadataDispatched()?this._dispatch&&(this._audioTrack.length||this._videoTrack.length)&&this._onDataAvailable(this._audioTrack,this._videoTrack):this._audioInitialMetadataDispatched=!0,this._dispatch=!1,this._onTrackMetadata("audio",Dn);let fn=this._mediaInfo;fn.audioCodec=Dn.originalCodec,fn.audioSampleRate=Dn.audioSampleRate,fn.audioChannelCount=Dn.channelCount,fn.hasVideo?fn.videoCodec!=null&&(fn.mimeType='video/x-flv; codecs="'+fn.videoCodec+","+fn.audioCodec+'"'):fn.mimeType='video/x-flv; codecs="'+fn.audioCodec+'"',fn.isComplete()&&this._onMediaInfo(fn)}else if(er.packetType===1){let dr=this._timestampBase+Ue,fn={unit:er.data,length:er.data.byteLength,dts:dr,pts:dr};qn.samples.push(fn),qn.length+=er.data.length}else Pe.e(this.TAG,`Flv: Unsupported AAC data type ${er.packetType}`)}else if(Xt===2){if(!Dn.codec){let nn=this._parseMP3AudioData(Me,Le+1,Te-1,!0);if(nn==null)return;Dn.audioSampleRate=nn.samplingRate,Dn.channelCount=nn.channelCount,Dn.codec=nn.codec,Dn.originalCodec=nn.originalCodec,Dn.refSampleDuration=1152/Dn.audioSampleRate*Dn.timescale,Pe.v(this.TAG,"Parsed MPEG Audio Frame Header"),this._audioInitialMetadataDispatched=!0,this._onTrackMetadata("audio",Dn);let Nn=this._mediaInfo;Nn.audioCodec=Dn.codec,Nn.audioSampleRate=Dn.audioSampleRate,Nn.audioChannelCount=Dn.channelCount,Nn.audioDataRate=nn.bitRate,Nn.hasVideo?Nn.videoCodec!=null&&(Nn.mimeType='video/x-flv; codecs="'+Nn.videoCodec+","+Nn.audioCodec+'"'):Nn.mimeType='video/x-flv; codecs="'+Nn.audioCodec+'"',Nn.isComplete()&&this._onMediaInfo(Nn)}let er=this._parseMP3AudioData(Me,Le+1,Te-1,!1);if(er==null)return;let dr=this._timestampBase+Ue,fn={unit:er,length:er.byteLength,dts:dr,pts:dr};qn.samples.push(fn),qn.length+=er.length}}_parseAACAudioData(Me,Le,Te){if(Te<=1){Pe.w(this.TAG,"Flv: Invalid AAC packet, missing AACPacketType or/and Data!");return}let Ue={},Ye=new Uint8Array(Me,Le,Te);return Ue.packetType=Ye[0],Ye[0]===0?Ue.data=this._parseAACAudioSpecificConfig(Me,Le+1,Te-1):Ue.data=Ye.subarray(1),Ue}_parseAACAudioSpecificConfig(Me,Le,Te){let Ue=new Uint8Array(Me,Le,Te),Ye=null,xt=0,Pt=0,Xt=null,Ht=0,mn=null;if(xt=Pt=Ue[0]>>>3,Ht=(Ue[0]&7)<<1|Ue[1]>>>7,Ht<0||Ht>=this._mpegSamplingRates.length){this._onError(It.FORMAT_ERROR,"Flv: AAC invalid sampling frequency index!");return}let pn=this._mpegSamplingRates[Ht],Yn=(Ue[1]&120)>>>3;if(Yn<0||Yn>=8){this._onError(It.FORMAT_ERROR,"Flv: AAC invalid channel configuration");return}xt===5&&(mn=(Ue[1]&7)<<1|Ue[2]>>>7,Xt=(Ue[2]&124)>>>2);let Dn=self.navigator.userAgent.toLowerCase();return Dn.indexOf("firefox")!==-1?Ht>=6?(xt=5,Ye=new Array(4),mn=Ht-3):(xt=2,Ye=new Array(2),mn=Ht):Dn.indexOf("android")!==-1?(xt=2,Ye=new Array(2),mn=Ht):(xt=5,mn=Ht,Ye=new Array(4),Ht>=6?mn=Ht-3:Yn===1&&(xt=2,Ye=new Array(2),mn=Ht)),Ye[0]=xt<<3,Ye[0]|=(Ht&15)>>>1,Ye[1]=(Ht&15)<<7,Ye[1]|=(Yn&15)<<3,xt===5&&(Ye[1]|=(mn&15)>>>1,Ye[2]=(mn&1)<<7,Ye[2]|=8,Ye[3]=0),{config:Ye,samplingRate:pn,channelCount:Yn,codec:"mp4a.40."+xt,originalCodec:"mp4a.40."+Pt}}_parseMP3AudioData(Me,Le,Te,Ue){if(Te<4){Pe.w(this.TAG,"Flv: Invalid MP3 packet, header missing!");return}let Ye=this._littleEndian,xt=new Uint8Array(Me,Le,Te),Pt=null;if(Ue){if(xt[0]!==255)return;let Xt=xt[1]>>>3&3,Ht=(xt[1]&6)>>1,mn=(xt[2]&240)>>>4,pn=(xt[2]&12)>>>2,Dn=(xt[3]>>>6&3)!==3?2:1,qn=0,er=0,dr=34,fn="mp3";switch(Xt){case 0:qn=this._mpegAudioV25SampleRateTable[pn];break;case 2:qn=this._mpegAudioV20SampleRateTable[pn];break;case 3:qn=this._mpegAudioV10SampleRateTable[pn];break}switch(Ht){case 1:dr=34,mn>>4,Xt=xt&15;if(Xt!==7){this._onError(It.CODEC_UNSUPPORTED,`Flv: Unsupported codec in video frame: ${Xt}`);return}this._parseAVCVideoPacket(Me,Le+1,Te-1,Ue,Ye,Pt)}_parseAVCVideoPacket(Me,Le,Te,Ue,Ye,xt){if(Te<4){Pe.w(this.TAG,"Flv: Invalid AVC packet, missing AVCPacketType or/and CompositionTime");return}let Pt=this._littleEndian,Xt=new DataView(Me,Le,Te),Ht=Xt.getUint8(0),pn=(Xt.getUint32(0,!Pt)&16777215)<<8>>8;if(Ht===0)this._parseAVCDecoderConfigurationRecord(Me,Le+4,Te-4);else if(Ht===1)this._parseAVCVideoData(Me,Le+4,Te-4,Ue,Ye,xt,pn);else if(Ht!==2){this._onError(It.FORMAT_ERROR,`Flv: Invalid video packet type ${Ht}`);return}}_parseAVCDecoderConfigurationRecord(Me,Le,Te){if(Te<7){Pe.w(this.TAG,"Flv: Invalid AVCDecoderConfigurationRecord, lack of data!");return}let Ue=this._videoMetadata,Ye=this._videoTrack,xt=this._littleEndian,Pt=new DataView(Me,Le,Te);Ue?typeof Ue.avcc!="undefined"&&Pe.w(this.TAG,"Found another AVCDecoderConfigurationRecord!"):(this._hasVideo===!1&&this._hasVideoFlagOverrided===!1&&(this._hasVideo=!0,this._mediaInfo.hasVideo=!0),Ue=this._videoMetadata={},Ue.type="video",Ue.id=Ye.id,Ue.timescale=this._timescale,Ue.duration=this._duration);let Xt=Pt.getUint8(0),Ht=Pt.getUint8(1),mn=Pt.getUint8(2),pn=Pt.getUint8(3);if(Xt!==1||Ht===0){this._onError(It.FORMAT_ERROR,"Flv: Invalid AVCDecoderConfigurationRecord");return}if(this._naluLengthSize=(Pt.getUint8(4)&3)+1,this._naluLengthSize!==3&&this._naluLengthSize!==4){this._onError(It.FORMAT_ERROR,`Flv: Strange NaluLengthSizeMinusOne: ${this._naluLengthSize-1}`);return}let Yn=Pt.getUint8(5)&31;if(Yn===0){this._onError(It.FORMAT_ERROR,"Flv: Invalid AVCDecoderConfigurationRecord: No SPS");return}else Yn>1&&Pe.w(this.TAG,`Flv: Strange AVCDecoderConfigurationRecord: SPS Count = ${Yn}`);let Dn=6;for(let er=0;er1&&Pe.w(this.TAG,`Flv: Strange AVCDecoderConfigurationRecord: PPS Count = ${qn}`);Dn++;for(let er=0;er=Te){Pe.w(this.TAG,`Malformed Nalu near timestamp ${qn}, offset = ${Yn}, dataSize = ${Te}`);break}let dr=Ht.getUint32(Yn,!Xt);if(Dn===3&&(dr>>>=8),dr>Te-Dn){Pe.w(this.TAG,`Malformed Nalus near timestamp ${qn}, NaluSize > DataSize!`);return}let fn=Ht.getUint8(Yn+Dn)&31;fn===5&&(er=!0);let nn=new Uint8Array(Me,Le+Yn,Dn+dr),Nn={type:fn,data:nn};mn.push(Nn),pn+=nn.byteLength,Yn+=Dn+dr}if(mn.length){let dr=this._videoTrack,fn={units:mn,length:pn,isKeyframe:er,dts:qn,cts:Pt,pts:qn+Pt};er&&(fn.fileposition=Ye),dr.samples.push(fn),dr.length+=pn}}}var Qt=At;class Ft{static init(){Ft.types={avc1:[],avcC:[],btrt:[],dinf:[],dref:[],esds:[],ftyp:[],hdlr:[],mdat:[],mdhd:[],mdia:[],mfhd:[],minf:[],moof:[],moov:[],mp4a:[],mvex:[],mvhd:[],sdtp:[],stbl:[],stco:[],stsc:[],stsd:[],stsz:[],stts:[],tfdt:[],tfhd:[],traf:[],trak:[],trun:[],trex:[],tkhd:[],vmhd:[],smhd:[],".mp3":[]};for(let Le in Ft.types)Ft.types.hasOwnProperty(Le)&&(Ft.types[Le]=[Le.charCodeAt(0),Le.charCodeAt(1),Le.charCodeAt(2),Le.charCodeAt(3)]);let Me=Ft.constants={};Me.FTYP=new Uint8Array([105,115,111,109,0,0,0,1,105,115,111,109,97,118,99,49]),Me.STSD_PREFIX=new Uint8Array([0,0,0,0,0,0,0,1]),Me.STTS=new Uint8Array([0,0,0,0,0,0,0,0]),Me.STSC=Me.STCO=Me.STTS,Me.STSZ=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0]),Me.HDLR_VIDEO=new Uint8Array([0,0,0,0,0,0,0,0,118,105,100,101,0,0,0,0,0,0,0,0,0,0,0,0,86,105,100,101,111,72,97,110,100,108,101,114,0]),Me.HDLR_AUDIO=new Uint8Array([0,0,0,0,0,0,0,0,115,111,117,110,0,0,0,0,0,0,0,0,0,0,0,0,83,111,117,110,100,72,97,110,100,108,101,114,0]),Me.DREF=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,12,117,114,108,32,0,0,0,1]),Me.SMHD=new Uint8Array([0,0,0,0,0,0,0,0]),Me.VMHD=new Uint8Array([0,0,0,1,0,0,0,0,0,0,0,0])}static box(Me){let Le=8,Te=null,Ue=Array.prototype.slice.call(arguments,1),Ye=Ue.length;for(let Pt=0;Pt>>24&255,Te[1]=Le>>>16&255,Te[2]=Le>>>8&255,Te[3]=Le&255,Te.set(Me,4);let xt=8;for(let Pt=0;Pt>>24&255,Me>>>16&255,Me>>>8&255,Me&255,Le>>>24&255,Le>>>16&255,Le>>>8&255,Le&255,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255]))}static trak(Me){return Ft.box(Ft.types.trak,Ft.tkhd(Me),Ft.mdia(Me))}static tkhd(Me){let Le=Me.id,Te=Me.duration,Ue=Me.presentWidth,Ye=Me.presentHeight;return Ft.box(Ft.types.tkhd,new Uint8Array([0,0,0,7,0,0,0,0,0,0,0,0,Le>>>24&255,Le>>>16&255,Le>>>8&255,Le&255,0,0,0,0,Te>>>24&255,Te>>>16&255,Te>>>8&255,Te&255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,Ue>>>8&255,Ue&255,0,0,Ye>>>8&255,Ye&255,0,0]))}static mdia(Me){return Ft.box(Ft.types.mdia,Ft.mdhd(Me),Ft.hdlr(Me),Ft.minf(Me))}static mdhd(Me){let Le=Me.timescale,Te=Me.duration;return Ft.box(Ft.types.mdhd,new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,Le>>>24&255,Le>>>16&255,Le>>>8&255,Le&255,Te>>>24&255,Te>>>16&255,Te>>>8&255,Te&255,85,196,0,0]))}static hdlr(Me){let Le=null;return Me.type==="audio"?Le=Ft.constants.HDLR_AUDIO:Le=Ft.constants.HDLR_VIDEO,Ft.box(Ft.types.hdlr,Le)}static minf(Me){let Le=null;return Me.type==="audio"?Le=Ft.box(Ft.types.smhd,Ft.constants.SMHD):Le=Ft.box(Ft.types.vmhd,Ft.constants.VMHD),Ft.box(Ft.types.minf,Le,Ft.dinf(),Ft.stbl(Me))}static dinf(){return Ft.box(Ft.types.dinf,Ft.box(Ft.types.dref,Ft.constants.DREF))}static stbl(Me){return Ft.box(Ft.types.stbl,Ft.stsd(Me),Ft.box(Ft.types.stts,Ft.constants.STTS),Ft.box(Ft.types.stsc,Ft.constants.STSC),Ft.box(Ft.types.stsz,Ft.constants.STSZ),Ft.box(Ft.types.stco,Ft.constants.STCO))}static stsd(Me){return Me.type==="audio"?Me.codec==="mp3"?Ft.box(Ft.types.stsd,Ft.constants.STSD_PREFIX,Ft.mp3(Me)):Ft.box(Ft.types.stsd,Ft.constants.STSD_PREFIX,Ft.mp4a(Me)):Ft.box(Ft.types.stsd,Ft.constants.STSD_PREFIX,Ft.avc1(Me))}static mp3(Me){let Le=Me.channelCount,Te=Me.audioSampleRate,Ue=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,Le,0,16,0,0,0,0,Te>>>8&255,Te&255,0,0]);return Ft.box(Ft.types[".mp3"],Ue)}static mp4a(Me){let Le=Me.channelCount,Te=Me.audioSampleRate,Ue=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,Le,0,16,0,0,0,0,Te>>>8&255,Te&255,0,0]);return Ft.box(Ft.types.mp4a,Ue,Ft.esds(Me))}static esds(Me){let Le=Me.config||[],Te=Le.length,Ue=new Uint8Array([0,0,0,0,3,23+Te,0,1,0,4,15+Te,64,21,0,0,0,0,0,0,0,0,0,0,0,5].concat([Te]).concat(Le).concat([6,1,2]));return Ft.box(Ft.types.esds,Ue)}static avc1(Me){let Le=Me.avcc,Te=Me.codecWidth,Ue=Me.codecHeight,Ye=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,Te>>>8&255,Te&255,Ue>>>8&255,Ue&255,0,72,0,0,0,72,0,0,0,0,0,0,0,1,10,120,113,113,47,102,108,118,46,106,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,255,255]);return Ft.box(Ft.types.avc1,Ye,Ft.box(Ft.types.avcC,Le))}static mvex(Me){return Ft.box(Ft.types.mvex,Ft.trex(Me))}static trex(Me){let Le=Me.id,Te=new Uint8Array([0,0,0,0,Le>>>24&255,Le>>>16&255,Le>>>8&255,Le&255,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]);return Ft.box(Ft.types.trex,Te)}static moof(Me,Le){return Ft.box(Ft.types.moof,Ft.mfhd(Me.sequenceNumber),Ft.traf(Me,Le))}static mfhd(Me){let Le=new Uint8Array([0,0,0,0,Me>>>24&255,Me>>>16&255,Me>>>8&255,Me&255]);return Ft.box(Ft.types.mfhd,Le)}static traf(Me,Le){let Te=Me.id,Ue=Ft.box(Ft.types.tfhd,new Uint8Array([0,0,0,0,Te>>>24&255,Te>>>16&255,Te>>>8&255,Te&255])),Ye=Ft.box(Ft.types.tfdt,new Uint8Array([0,0,0,0,Le>>>24&255,Le>>>16&255,Le>>>8&255,Le&255])),xt=Ft.sdtp(Me),Pt=Ft.trun(Me,xt.byteLength+16+16+8+16+8+8);return Ft.box(Ft.types.traf,Ue,Ye,Pt,xt)}static sdtp(Me){let Le=Me.samples||[],Te=Le.length,Ue=new Uint8Array(4+Te);for(let Ye=0;Ye>>24&255,Ue>>>16&255,Ue>>>8&255,Ue&255,Le>>>24&255,Le>>>16&255,Le>>>8&255,Le&255],0);for(let Pt=0;Pt>>24&255,Xt>>>16&255,Xt>>>8&255,Xt&255,Ht>>>24&255,Ht>>>16&255,Ht>>>8&255,Ht&255,mn.isLeading<<2|mn.dependsOn,mn.isDependedOn<<6|mn.hasRedundancy<<4|mn.isNonSync,0,0,pn>>>24&255,pn>>>16&255,pn>>>8&255,pn&255],12+16*Pt)}return Ft.box(Ft.types.trun,xt)}static mdat(Me){return Ft.box(Ft.types.mdat,Me)}}Ft.init();var wt=Ft;class ln{static getSilentFrame(Me,Le){if(Me==="mp4a.40.2"){if(Le===1)return new Uint8Array([0,200,0,128,35,128]);if(Le===2)return new Uint8Array([33,0,73,144,2,25,0,35,128]);if(Le===3)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,142]);if(Le===4)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,128,44,128,8,2,56]);if(Le===5)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,56]);if(Le===6)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,0,178,0,32,8,224])}else{if(Le===1)return new Uint8Array([1,64,34,128,163,78,230,128,186,8,0,0,0,28,6,241,193,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(Le===2)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(Le===3)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94])}return null}}var In=ln;class Kn{constructor(Me,Le,Te,Ue,Ye){this.dts=Me,this.pts=Le,this.duration=Te,this.originalDts=Ue,this.isSyncPoint=Ye,this.fileposition=null}}class Vn{constructor(){this.beginDts=0,this.endDts=0,this.beginPts=0,this.endPts=0,this.originalBeginDts=0,this.originalEndDts=0,this.syncPoints=[],this.firstSample=null,this.lastSample=null}appendSyncPoint(Me){Me.isSyncPoint=!0,this.syncPoints.push(Me)}}class Zn{constructor(){this._list=[]}clear(){this._list=[]}appendArray(Me){let Le=this._list;Me.length!==0&&(Le.length>0&&Me[0].originalDts=Le[Ye].dts&&MeLe[Ue].lastSample.originalDts&&Me=Le[Ue].lastSample.originalDts&&(Ue===Le.length-1||Ue0&&(Ye=this._searchNearestSegmentBefore(Te.originalBeginDts)+1),this._lastAppendLocation=Ye,this._list.splice(Ye,0,Te)}getLastSegmentBefore(Me){let Le=this._searchNearestSegmentBefore(Me);return Le>=0?this._list[Le]:null}getLastSampleBefore(Me){let Le=this.getLastSegmentBefore(Me);return Le!=null?Le.lastSample:null}getLastSyncPointBefore(Me){let Le=this._searchNearestSegmentBefore(Me),Te=this._list[Le].syncPoints;for(;Te.length===0&&Le>0;)Le--,Te=this._list[Le].syncPoints;return Te.length>0?Te[Te.length-1]:null}}class Jt{constructor(Me){this.TAG="MP4Remuxer",this._config=Me,this._isLive=Me.isLive===!0,this._dtsBase=-1,this._dtsBaseInited=!1,this._audioDtsBase=1/0,this._videoDtsBase=1/0,this._audioNextDts=void 0,this._videoNextDts=void 0,this._audioStashedLastSample=null,this._videoStashedLastSample=null,this._audioMeta=null,this._videoMeta=null,this._audioSegmentInfoList=new $n("audio"),this._videoSegmentInfoList=new $n("video"),this._onInitSegment=null,this._onMediaSegment=null,this._forceFirstIDR=!!(oe.chrome&&(oe.version.major<50||oe.version.major===50&&oe.version.build<2661)),this._fillSilentAfterSeek=oe.msedge||oe.msie,this._mp3UseMpegAudio=!oe.firefox,this._fillAudioTimestampGap=this._config.fixAudioTimestampGap}destroy(){this._dtsBase=-1,this._dtsBaseInited=!1,this._audioMeta=null,this._videoMeta=null,this._audioSegmentInfoList.clear(),this._audioSegmentInfoList=null,this._videoSegmentInfoList.clear(),this._videoSegmentInfoList=null,this._onInitSegment=null,this._onMediaSegment=null}bindDataSource(Me){return Me.onDataAvailable=this.remux.bind(this),Me.onTrackMetadata=this._onTrackMetadataReceived.bind(this),this}get onInitSegment(){return this._onInitSegment}set onInitSegment(Me){this._onInitSegment=Me}get onMediaSegment(){return this._onMediaSegment}set onMediaSegment(Me){this._onMediaSegment=Me}insertDiscontinuity(){this._audioNextDts=this._videoNextDts=void 0}seek(Me){this._audioStashedLastSample=null,this._videoStashedLastSample=null,this._videoSegmentInfoList.clear(),this._audioSegmentInfoList.clear()}remux(Me,Le){if(!this._onMediaSegment)throw new we("MP4Remuxer: onMediaSegment callback must be specificed!");this._dtsBaseInited||this._calculateDtsBase(Me,Le),this._remuxVideo(Le),this._remuxAudio(Me)}_onTrackMetadataReceived(Me,Le){let Te=null,Ue="mp4",Ye=Le.codec;if(Me==="audio")this._audioMeta=Le,Le.codec==="mp3"&&this._mp3UseMpegAudio?(Ue="mpeg",Ye="",Te=new Uint8Array):Te=wt.generateInitSegment(Le);else if(Me==="video")this._videoMeta=Le,Te=wt.generateInitSegment(Le);else return;if(!this._onInitSegment)throw new we("MP4Remuxer: onInitSegment callback must be specified!");this._onInitSegment(Me,{type:Me,data:Te.buffer,codec:Ye,container:`${Me}/${Ue}`,mediaDuration:Le.duration})}_calculateDtsBase(Me,Le){this._dtsBaseInited||(Me.samples&&Me.samples.length&&(this._audioDtsBase=Me.samples[0].dts),Le.samples&&Le.samples.length&&(this._videoDtsBase=Le.samples[0].dts),this._dtsBase=Math.min(this._audioDtsBase,this._videoDtsBase),this._dtsBaseInited=!0)}flushStashedSamples(){let Me=this._videoStashedLastSample,Le=this._audioStashedLastSample,Te={type:"video",id:1,sequenceNumber:0,samples:[],length:0};Me!=null&&(Te.samples.push(Me),Te.length=Me.length);let Ue={type:"audio",id:2,sequenceNumber:0,samples:[],length:0};Le!=null&&(Ue.samples.push(Le),Ue.length=Le.length),this._videoStashedLastSample=null,this._audioStashedLastSample=null,this._remuxVideo(Te,!0),this._remuxAudio(Ue,!0)}_remuxAudio(Me,Le){if(this._audioMeta==null)return;let Te=Me,Ue=Te.samples,Ye,xt=-1,Pt=-1,Xt=-1,Ht=this._audioMeta.refSampleDuration,mn=this._audioMeta.codec==="mp3"&&this._mp3UseMpegAudio,pn=this._dtsBaseInited&&this._audioNextDts===void 0,Yn=!1;if(!Ue||Ue.length===0||Ue.length===1&&!Le)return;let Dn=0,qn=null,er=0;mn?(Dn=0,er=Te.length):(Dn=8,er=8+Te.length);let dr=null;if(Ue.length>1&&(dr=Ue.pop(),er-=dr.length),this._audioStashedLastSample!=null){let Xn=this._audioStashedLastSample;this._audioStashedLastSample=null,Ue.unshift(Xn),er+=Xn.length}dr!=null&&(this._audioStashedLastSample=dr);let fn=Ue[0].dts-this._dtsBase;if(this._audioNextDts)Ye=fn-this._audioNextDts;else if(this._audioSegmentInfoList.isEmpty())Ye=0,this._fillSilentAfterSeek&&!this._videoSegmentInfoList.isEmpty()&&this._audioMeta.originalCodec!=="mp3"&&(Yn=!0);else{let Xn=this._audioSegmentInfoList.getLastSampleBefore(fn);if(Xn!=null){let ur=fn-(Xn.originalDts+Xn.duration);ur<=3&&(ur=0);let yr=Xn.dts+Xn.duration+ur;Ye=fn-yr}else Ye=0}if(Yn){let Xn=fn-Ye,ur=this._videoSegmentInfoList.getLastSegmentBefore(fn);if(ur!=null&&ur.beginDts=1?Jn=nn[nn.length-1].duration:Jn=Math.floor(Ht);let Ur=!1,Ja=null;if(Jn>Ht*1.5&&this._audioMeta.codec!=="mp3"&&this._fillAudioTimestampGap&&!oe.safari){Ur=!0;let gi=Math.abs(Jn-Ht),ui=Math.ceil(gi/Ht),Hr=gr+Ht;Pe.w(this.TAG,`Large audio timestamp gap detected, may cause AV sync to drift. Silent frames will be generated to avoid unsync. dts: ${gr+Jn} ms, expected: ${gr+Math.round(Ht)} ms, delta: ${Math.round(gi)} ms, generate: ${ui} frames`);let wa=In.getSilentFrame(this._audioMeta.originalCodec,this._audioMeta.channelCount);wa==null&&(Pe.w(this.TAG,`Unable to generate silent frame for ${this._audioMeta.originalCodec} with ${this._audioMeta.channelCount} channels, repeat last frame`),wa=yr),Ja=[];for(let ua=0;ua0){let Fa=Ja[Ja.length-1];Fa.duration=qa-Fa.dts}let zi={dts:qa,pts:qa,cts:0,unit:wa,size:wa.byteLength,duration:0,originalDts:wn,flags:{isLeading:0,dependsOn:1,isDependedOn:0,hasRedundancy:0}};Ja.push(zi),er+=zi.size,Hr+=Ht}let Ta=Ja[Ja.length-1];Ta.duration=gr+Jn-Ta.dts,Jn=Math.round(Ht)}nn.push({dts:gr,pts:gr,cts:0,unit:ur.unit,size:ur.unit.byteLength,duration:Jn,originalDts:wn,flags:{isLeading:0,dependsOn:1,isDependedOn:0,hasRedundancy:0}}),Ur&&nn.push.apply(nn,Ja)}mn?qn=new Uint8Array(er):(qn=new Uint8Array(er),qn[0]=er>>>24&255,qn[1]=er>>>16&255,qn[2]=er>>>8&255,qn[3]=er&255,qn.set(wt.types.mdat,4));for(let Xn=0;Xn1&&(Dn=Ue.pop(),Yn-=Dn.length),this._videoStashedLastSample!=null){let Nn=this._videoStashedLastSample;this._videoStashedLastSample=null,Ue.unshift(Nn),Yn+=Nn.length}Dn!=null&&(this._videoStashedLastSample=Dn);let qn=Ue[0].dts-this._dtsBase;if(this._videoNextDts)Ye=qn-this._videoNextDts;else if(this._videoSegmentInfoList.isEmpty())Ye=0;else{let Nn=this._videoSegmentInfoList.getLastSampleBefore(qn);if(Nn!=null){let jn=qn-(Nn.originalDts+Nn.duration);jn<=3&&(jn=0);let rr=Nn.dts+Nn.duration+jn;Ye=qn-rr}else Ye=0}let er=new Vn,dr=[];for(let Nn=0;Nn=1?wn=dr[dr.length-1].duration:wn=Math.floor(this._videoMeta.refSampleDuration),mr){let gr=new Kn(Xn,yr,wn,jn.dts,!0);gr.fileposition=jn.fileposition,er.appendSyncPoint(gr)}dr.push({dts:Xn,pts:yr,cts:ur,units:jn.units,size:jn.length,isKeyframe:mr,duration:wn,originalDts:rr,flags:{isLeading:0,dependsOn:mr?2:1,isDependedOn:mr?1:0,hasRedundancy:0,isNonSync:mr?0:1}})}pn=new Uint8Array(Yn),pn[0]=Yn>>>24&255,pn[1]=Yn>>>16&255,pn[2]=Yn>>>8&255,pn[3]=Yn&255,pn.set(wt.types.mdat,4);for(let Nn=0;Nn{Ue.timestampBase=Te,Te+=Ue.duration,Ue.cors=Me.cors,Ue.withCredentials=Me.withCredentials,Le.referrerPolicy&&(Ue.referrerPolicy=Le.referrerPolicy)}),!isNaN(Te)&&this._mediaDataSource.duration!==Te&&(this._mediaDataSource.duration=Te),this._mediaInfo=null,this._demuxer=null,this._remuxer=null,this._ioctl=null,this._pendingSeekTime=null,this._pendingResolveSeekPoint=null,this._statisticsReporter=null}destroy(){this._mediaInfo=null,this._mediaDataSource=null,this._statisticsReporter&&this._disableStatisticsReporter(),this._ioctl&&(this._ioctl.destroy(),this._ioctl=null),this._demuxer&&(this._demuxer.destroy(),this._demuxer=null),this._remuxer&&(this._remuxer.destroy(),this._remuxer=null),this._emitter.removeAllListeners(),this._emitter=null}on(Me,Le){this._emitter.addListener(Me,Le)}off(Me,Le){this._emitter.removeListener(Me,Le)}start(){this._loadSegment(0),this._enableStatisticsReporter()}_loadSegment(Me,Le){this._currentSegmentIndex=Me;let Te=this._mediaDataSource.segments[Me],Ue=this._ioctl=new qe(Te,this._config,Me);Ue.onError=this._onIOException.bind(this),Ue.onSeeked=this._onIOSeeked.bind(this),Ue.onComplete=this._onIOComplete.bind(this),Ue.onRedirect=this._onIORedirect.bind(this),Ue.onRecoveredEarlyEof=this._onIORecoveredEarlyEof.bind(this),Le?this._demuxer.bindDataSource(this._ioctl):Ue.onDataArrival=this._onInitChunkArrival.bind(this),Ue.open(Le)}stop(){this._internalAbort(),this._disableStatisticsReporter()}_internalAbort(){this._ioctl&&(this._ioctl.destroy(),this._ioctl=null)}pause(){this._ioctl&&this._ioctl.isWorking()&&(this._ioctl.pause(),this._disableStatisticsReporter())}resume(){this._ioctl&&this._ioctl.isPaused()&&(this._ioctl.resume(),this._enableStatisticsReporter())}seek(Me){if(this._mediaInfo==null||!this._mediaInfo.isSeekable())return;let Le=this._searchSegmentIndexContains(Me);if(Le===this._currentSegmentIndex){let Te=this._mediaInfo.segments[Le];if(Te==null)this._pendingSeekTime=Me;else{let Ue=Te.getNearestKeyframe(Me);this._remuxer.seek(Ue.milliseconds),this._ioctl.seek(Ue.fileposition),this._pendingResolveSeekPoint=Ue.milliseconds}}else{let Te=this._mediaInfo.segments[Le];if(Te==null)this._pendingSeekTime=Me,this._internalAbort(),this._remuxer.seek(),this._remuxer.insertDiscontinuity(),this._loadSegment(Le);else{let Ue=Te.getNearestKeyframe(Me);this._internalAbort(),this._remuxer.seek(Me),this._remuxer.insertDiscontinuity(),this._demuxer.resetMediaInfo(),this._demuxer.timestampBase=this._mediaDataSource.segments[Le].timestampBase,this._loadSegment(Le,Ue.fileposition),this._pendingResolveSeekPoint=Ue.milliseconds,this._reportSegmentMediaInfo(Le)}}this._enableStatisticsReporter()}_searchSegmentIndexContains(Me){let Le=this._mediaDataSource.segments,Te=Le.length-1;for(let Ue=0;Ue0)this._demuxer.bindDataSource(this._ioctl),this._demuxer.timestampBase=this._mediaDataSource.segments[this._currentSegmentIndex].timestampBase,Ue=this._demuxer.parseChunks(Me,Le);else if((Te=Qt.probe(Me)).match){this._demuxer=new Qt(Te,this._config),this._remuxer||(this._remuxer=new yn(this._config));let Ye=this._mediaDataSource;Ye.duration!=null&&!isNaN(Ye.duration)&&(this._demuxer.overridedDuration=Ye.duration),typeof Ye.hasAudio=="boolean"&&(this._demuxer.overridedHasAudio=Ye.hasAudio),typeof Ye.hasVideo=="boolean"&&(this._demuxer.overridedHasVideo=Ye.hasVideo),this._demuxer.timestampBase=Ye.segments[this._currentSegmentIndex].timestampBase,this._demuxer.onError=this._onDemuxException.bind(this),this._demuxer.onMediaInfo=this._onMediaInfo.bind(this),this._demuxer.onMetaDataArrived=this._onMetaDataArrived.bind(this),this._demuxer.onScriptDataArrived=this._onScriptDataArrived.bind(this),this._remuxer.bindDataSource(this._demuxer.bindDataSource(this._ioctl)),this._remuxer.onInitSegment=this._onRemuxerInitSegmentArrival.bind(this),this._remuxer.onMediaSegment=this._onRemuxerMediaSegmentArrival.bind(this),Ue=this._demuxer.parseChunks(Me,Le)}else Te=null,Pe.e(this.TAG,"Non-FLV, Unsupported media type!"),Promise.resolve().then(()=>{this._internalAbort()}),this._emitter.emit(Bn.DEMUX_ERROR,It.FORMAT_UNSUPPORTED,"Non-FLV, Unsupported media type"),Ue=0;return Ue}_onMediaInfo(Me){this._mediaInfo==null&&(this._mediaInfo=Object.assign({},Me),this._mediaInfo.keyframesIndex=null,this._mediaInfo.segments=[],this._mediaInfo.segmentCount=this._mediaDataSource.segments.length,Object.setPrototypeOf(this._mediaInfo,Ut.prototype));let Le=Object.assign({},Me);Object.setPrototypeOf(Le,Ut.prototype),this._mediaInfo.segments[this._currentSegmentIndex]=Le,this._reportSegmentMediaInfo(this._currentSegmentIndex),this._pendingSeekTime!=null&&Promise.resolve().then(()=>{let Te=this._pendingSeekTime;this._pendingSeekTime=null,this.seek(Te)})}_onMetaDataArrived(Me){this._emitter.emit(Bn.METADATA_ARRIVED,Me)}_onScriptDataArrived(Me){this._emitter.emit(Bn.SCRIPTDATA_ARRIVED,Me)}_onIOSeeked(){this._remuxer.insertDiscontinuity()}_onIOComplete(Me){let Te=Me+1;Te0&&Te[0].originalDts===Ue&&(Ue=Te[0].pts),this._emitter.emit(Bn.RECOMMEND_SEEKPOINT,Ue)}}_enableStatisticsReporter(){this._statisticsReporter==null&&(this._statisticsReporter=self.setInterval(this._reportStatisticsInfo.bind(this),this._config.statisticsInfoReportInterval))}_disableStatisticsReporter(){this._statisticsReporter&&(self.clearInterval(this._statisticsReporter),this._statisticsReporter=null)}_reportSegmentMediaInfo(Me){let Le=this._mediaInfo.segments[Me],Te=Object.assign({},Le);Te.duration=this._mediaInfo.duration,Te.segmentCount=this._mediaInfo.segmentCount,delete Te.segments,delete Te.keyframesIndex,this._emitter.emit(Bn.MEDIA_INFO,Te)}_reportStatisticsInfo(){let Me={};Me.url=this._ioctl.currentURL,Me.hasRedirect=this._ioctl.hasRedirect,Me.hasRedirect&&(Me.redirectedURL=this._ioctl.currentRedirectedURL),Me.speed=this._ioctl.currentSpeed,Me.loaderType=this._ioctl.loaderType,Me.currentSegmentIndex=this._currentSegmentIndex,Me.totalSegmentCount=this._mediaDataSource.segments.length,this._emitter.emit(Bn.STATISTICS_INFO,Me)}}var Fr=Er,Wr=function(bt){let Me="TransmuxingWorker",Le=null,Te=er.bind(this);He.install(),bt.addEventListener("message",function(dr){switch(dr.data.cmd){case"init":Le=new Fr(dr.data.param[0],dr.data.param[1]),Le.on(Bn.IO_ERROR,Yn.bind(this)),Le.on(Bn.DEMUX_ERROR,Dn.bind(this)),Le.on(Bn.INIT_SEGMENT,Ue.bind(this)),Le.on(Bn.MEDIA_SEGMENT,Ye.bind(this)),Le.on(Bn.LOADING_COMPLETE,xt.bind(this)),Le.on(Bn.RECOVERED_EARLY_EOF,Pt.bind(this)),Le.on(Bn.MEDIA_INFO,Xt.bind(this)),Le.on(Bn.METADATA_ARRIVED,Ht.bind(this)),Le.on(Bn.SCRIPTDATA_ARRIVED,mn.bind(this)),Le.on(Bn.STATISTICS_INFO,pn.bind(this)),Le.on(Bn.RECOMMEND_SEEKPOINT,qn.bind(this));break;case"destroy":Le&&(Le.destroy(),Le=null),bt.postMessage({msg:"destroyed"});break;case"start":Le.start();break;case"stop":Le.stop();break;case"seek":Le.seek(dr.data.param);break;case"pause":Le.pause();break;case"resume":Le.resume();break;case"logging_config":{let fn=dr.data.param;dt.applyConfig(fn),fn.enableCallback===!0?dt.addLogListener(Te):dt.removeLogListener(Te);break}}});function Ue(dr,fn){let nn={msg:Bn.INIT_SEGMENT,data:{type:dr,data:fn}};bt.postMessage(nn,[fn.data])}function Ye(dr,fn){let nn={msg:Bn.MEDIA_SEGMENT,data:{type:dr,data:fn}};bt.postMessage(nn,[fn.data])}function xt(){let dr={msg:Bn.LOADING_COMPLETE};bt.postMessage(dr)}function Pt(){let dr={msg:Bn.RECOVERED_EARLY_EOF};bt.postMessage(dr)}function Xt(dr){let fn={msg:Bn.MEDIA_INFO,data:dr};bt.postMessage(fn)}function Ht(dr){let fn={msg:Bn.METADATA_ARRIVED,data:dr};bt.postMessage(fn)}function mn(dr){let fn={msg:Bn.SCRIPTDATA_ARRIVED,data:dr};bt.postMessage(fn)}function pn(dr){let fn={msg:Bn.STATISTICS_INFO,data:dr};bt.postMessage(fn)}function Yn(dr,fn){bt.postMessage({msg:Bn.IO_ERROR,data:{type:dr,info:fn}})}function Dn(dr,fn){bt.postMessage({msg:Bn.DEMUX_ERROR,data:{type:dr,info:fn}})}function qn(dr){bt.postMessage({msg:Bn.RECOMMEND_SEEKPOINT,data:dr})}function er(dr,fn){bt.postMessage({msg:"logcat_callback",data:{type:dr,logcat:fn}})}};class Da{constructor(Me,Le){if(this.TAG="Transmuxer",this._emitter=new(Ce()),Le.enableWorker&&typeof Worker!="undefined")try{let Te=Ie(82059);this._worker=Te(Wr),this._workerDestroying=!1,this._worker.addEventListener("message",this._onWorkerMessage.bind(this)),this._worker.postMessage({cmd:"init",param:[Me,Le]}),this.e={onLoggingConfigChanged:this._onLoggingConfigChanged.bind(this)},dt.registerListener(this.e.onLoggingConfigChanged),this._worker.postMessage({cmd:"logging_config",param:dt.getConfig()})}catch(Te){Pe.e(this.TAG,"Error while initialize transmuxing worker, fallback to inline transmuxing"),this._worker=null,this._controller=new Fr(Me,Le)}else this._controller=new Fr(Me,Le);if(this._controller){let Te=this._controller;Te.on(Bn.IO_ERROR,this._onIOError.bind(this)),Te.on(Bn.DEMUX_ERROR,this._onDemuxError.bind(this)),Te.on(Bn.INIT_SEGMENT,this._onInitSegment.bind(this)),Te.on(Bn.MEDIA_SEGMENT,this._onMediaSegment.bind(this)),Te.on(Bn.LOADING_COMPLETE,this._onLoadingComplete.bind(this)),Te.on(Bn.RECOVERED_EARLY_EOF,this._onRecoveredEarlyEof.bind(this)),Te.on(Bn.MEDIA_INFO,this._onMediaInfo.bind(this)),Te.on(Bn.METADATA_ARRIVED,this._onMetaDataArrived.bind(this)),Te.on(Bn.SCRIPTDATA_ARRIVED,this._onScriptDataArrived.bind(this)),Te.on(Bn.STATISTICS_INFO,this._onStatisticsInfo.bind(this)),Te.on(Bn.RECOMMEND_SEEKPOINT,this._onRecommendSeekpoint.bind(this))}}destroy(){this._worker?this._workerDestroying||(this._workerDestroying=!0,this._worker.postMessage({cmd:"destroy"}),dt.removeListener(this.e.onLoggingConfigChanged),this.e=null):(this._controller.destroy(),this._controller=null),this._emitter.removeAllListeners(),this._emitter=null}on(Me,Le){this._emitter.addListener(Me,Le)}off(Me,Le){this._emitter.removeListener(Me,Le)}hasWorker(){return this._worker!=null}open(){this._worker?this._worker.postMessage({cmd:"start"}):this._controller.start()}close(){this._worker?this._worker.postMessage({cmd:"stop"}):this._controller.stop()}seek(Me){this._worker?this._worker.postMessage({cmd:"seek",param:Me}):this._controller.seek(Me)}pause(){this._worker?this._worker.postMessage({cmd:"pause"}):this._controller.pause()}resume(){this._worker?this._worker.postMessage({cmd:"resume"}):this._controller.resume()}_onInitSegment(Me,Le){Promise.resolve().then(()=>{this._emitter.emit(Bn.INIT_SEGMENT,Me,Le)})}_onMediaSegment(Me,Le){Promise.resolve().then(()=>{this._emitter.emit(Bn.MEDIA_SEGMENT,Me,Le)})}_onLoadingComplete(){Promise.resolve().then(()=>{this._emitter.emit(Bn.LOADING_COMPLETE)})}_onRecoveredEarlyEof(){Promise.resolve().then(()=>{this._emitter.emit(Bn.RECOVERED_EARLY_EOF)})}_onMediaInfo(Me){Promise.resolve().then(()=>{this._emitter.emit(Bn.MEDIA_INFO,Me)})}_onMetaDataArrived(Me){Promise.resolve().then(()=>{this._emitter.emit(Bn.METADATA_ARRIVED,Me)})}_onScriptDataArrived(Me){Promise.resolve().then(()=>{this._emitter.emit(Bn.SCRIPTDATA_ARRIVED,Me)})}_onStatisticsInfo(Me){Promise.resolve().then(()=>{this._emitter.emit(Bn.STATISTICS_INFO,Me)})}_onIOError(Me,Le){Promise.resolve().then(()=>{this._emitter.emit(Bn.IO_ERROR,Me,Le)})}_onDemuxError(Me,Le){Promise.resolve().then(()=>{this._emitter.emit(Bn.DEMUX_ERROR,Me,Le)})}_onRecommendSeekpoint(Me){Promise.resolve().then(()=>{this._emitter.emit(Bn.RECOMMEND_SEEKPOINT,Me)})}_onLoggingConfigChanged(Me){this._worker&&this._worker.postMessage({cmd:"logging_config",param:Me})}_onWorkerMessage(Me){let Le=Me.data,Te=Le.data;if(Le.msg==="destroyed"||this._workerDestroying){this._workerDestroying=!1,this._worker.terminate(),this._worker=null;return}switch(Le.msg){case Bn.INIT_SEGMENT:case Bn.MEDIA_SEGMENT:this._emitter.emit(Le.msg,Te.type,Te.data);break;case Bn.LOADING_COMPLETE:case Bn.RECOVERED_EARLY_EOF:this._emitter.emit(Le.msg);break;case Bn.MEDIA_INFO:Object.setPrototypeOf(Te,Ut.prototype),this._emitter.emit(Le.msg,Te);break;case Bn.METADATA_ARRIVED:case Bn.SCRIPTDATA_ARRIVED:case Bn.STATISTICS_INFO:this._emitter.emit(Le.msg,Te);break;case Bn.IO_ERROR:case Bn.DEMUX_ERROR:this._emitter.emit(Le.msg,Te.type,Te.info);break;case Bn.RECOMMEND_SEEKPOINT:this._emitter.emit(Le.msg,Te);break;case"logcat_callback":Pe.emitter.emit("log",Te.type,Te.logcat);break;default:break}}}var Ya=Da,Ia={ERROR:"error",SOURCE_OPEN:"source_open",UPDATE_END:"update_end",BUFFER_FULL:"buffer_full"};class Ii{constructor(Me){this.TAG="MSEController",this._config=Me,this._emitter=new(Ce()),this._config.isLive&&this._config.autoCleanupSourceBuffer==null&&(this._config.autoCleanupSourceBuffer=!0),this.e={onSourceOpen:this._onSourceOpen.bind(this),onSourceEnded:this._onSourceEnded.bind(this),onSourceClose:this._onSourceClose.bind(this),onSourceBufferError:this._onSourceBufferError.bind(this),onSourceBufferUpdateEnd:this._onSourceBufferUpdateEnd.bind(this)},this._mediaSource=null,this._mediaSourceObjectURL=null,this._mediaElement=null,this._isBufferFull=!1,this._hasPendingEos=!1,this._requireSetMediaDuration=!1,this._pendingMediaDuration=0,this._pendingSourceBufferInit=[],this._mimeTypes={video:null,audio:null},this._sourceBuffers={video:null,audio:null},this._lastInitSegments={video:null,audio:null},this._pendingSegments={video:[],audio:[]},this._pendingRemoveRanges={video:[],audio:[]},this._idrList=new Zn}destroy(){(this._mediaElement||this._mediaSource)&&this.detachMediaElement(),this.e=null,this._emitter.removeAllListeners(),this._emitter=null}on(Me,Le){this._emitter.addListener(Me,Le)}off(Me,Le){this._emitter.removeListener(Me,Le)}attachMediaElement(Me){if(this._mediaSource)throw new we("MediaSource has been attached to an HTMLMediaElement!");let Le=this._mediaSource=new window.MediaSource;Le.addEventListener("sourceopen",this.e.onSourceOpen),Le.addEventListener("sourceended",this.e.onSourceEnded),Le.addEventListener("sourceclose",this.e.onSourceClose),this._mediaElement=Me,this._mediaSourceObjectURL=window.URL.createObjectURL(this._mediaSource),Me.src=this._mediaSourceObjectURL}detachMediaElement(){if(this._mediaSource){let Me=this._mediaSource;for(let Le in this._sourceBuffers){let Te=this._pendingSegments[Le];Te.splice(0,Te.length),this._pendingSegments[Le]=null,this._pendingRemoveRanges[Le]=null,this._lastInitSegments[Le]=null;let Ue=this._sourceBuffers[Le];if(Ue){if(Me.readyState!=="closed"){try{Me.removeSourceBuffer(Ue)}catch(Ye){Pe.e(this.TAG,Ye.message)}Ue.removeEventListener("error",this.e.onSourceBufferError),Ue.removeEventListener("updateend",this.e.onSourceBufferUpdateEnd)}this._mimeTypes[Le]=null,this._sourceBuffers[Le]=null}}if(Me.readyState==="open")try{Me.endOfStream()}catch(Le){Pe.e(this.TAG,Le.message)}Me.removeEventListener("sourceopen",this.e.onSourceOpen),Me.removeEventListener("sourceended",this.e.onSourceEnded),Me.removeEventListener("sourceclose",this.e.onSourceClose),this._pendingSourceBufferInit=[],this._isBufferFull=!1,this._idrList.clear(),this._mediaSource=null}this._mediaElement&&(this._mediaElement.src="",this._mediaElement.removeAttribute("src"),this._mediaElement=null),this._mediaSourceObjectURL&&(window.URL.revokeObjectURL(this._mediaSourceObjectURL),this._mediaSourceObjectURL=null)}appendInitSegment(Me,Le){if(!this._mediaSource||this._mediaSource.readyState!=="open"){this._pendingSourceBufferInit.push(Me),this._pendingSegments[Me.type].push(Me);return}let Te=Me,Ue=`${Te.container}`;Te.codec&&Te.codec.length>0&&(Ue+=`;codecs=${Te.codec}`);let Ye=!1;if(Pe.v(this.TAG,"Received Initialization Segment, mimeType: "+Ue),this._lastInitSegments[Te.type]=Te,Ue!==this._mimeTypes[Te.type]){if(this._mimeTypes[Te.type])Pe.v(this.TAG,`Notice: ${Te.type} mimeType changed, origin: ${this._mimeTypes[Te.type]}, target: ${Ue}`);else{Ye=!0;try{let xt=this._sourceBuffers[Te.type]=this._mediaSource.addSourceBuffer(Ue);xt.addEventListener("error",this.e.onSourceBufferError),xt.addEventListener("updateend",this.e.onSourceBufferUpdateEnd)}catch(xt){Pe.e(this.TAG,xt.message),this._emitter.emit(Ia.ERROR,{code:xt.code,msg:xt.message});return}}this._mimeTypes[Te.type]=Ue}Le||this._pendingSegments[Te.type].push(Te),Ye||this._sourceBuffers[Te.type]&&!this._sourceBuffers[Te.type].updating&&this._doAppendSegments(),oe.safari&&Te.container==="audio/mpeg"&&Te.mediaDuration>0&&(this._requireSetMediaDuration=!0,this._pendingMediaDuration=Te.mediaDuration/1e3,this._updateMediaSourceDuration())}appendMediaSegment(Me){let Le=Me;this._pendingSegments[Le.type].push(Le),this._config.autoCleanupSourceBuffer&&this._needCleanupSourceBuffer()&&this._doCleanupSourceBuffer();let Te=this._sourceBuffers[Le.type];Te&&!Te.updating&&!this._hasPendingRemoveRanges()&&this._doAppendSegments()}seek(Me){for(let Le in this._sourceBuffers){if(!this._sourceBuffers[Le])continue;let Te=this._sourceBuffers[Le];if(this._mediaSource.readyState==="open")try{Te.abort()}catch(Ye){Pe.e(this.TAG,Ye.message)}this._idrList.clear();let Ue=this._pendingSegments[Le];if(Ue.splice(0,Ue.length),this._mediaSource.readyState!=="closed"){for(let Ye=0;Ye=1&&Me-Ue.start(0)>=this._config.autoCleanupMaxBackwardDuration)return!0}}return!1}_doCleanupSourceBuffer(){let Me=this._mediaElement.currentTime;for(let Le in this._sourceBuffers){let Te=this._sourceBuffers[Le];if(Te){let Ue=Te.buffered,Ye=!1;for(let xt=0;xt=this._config.autoCleanupMaxBackwardDuration){Ye=!0;let Ht=Me-this._config.autoCleanupMinBackwardDuration;this._pendingRemoveRanges[Le].push({start:Pt,end:Ht})}}else Xt0&&(isNaN(Le)||Te>Le)&&(Pe.v(this.TAG,`Update MediaSource duration from ${Le} to ${Te}`),this._mediaSource.duration=Te),this._requireSetMediaDuration=!1,this._pendingMediaDuration=0}_doRemoveRanges(){for(let Me in this._pendingRemoveRanges){if(!this._sourceBuffers[Me]||this._sourceBuffers[Me].updating)continue;let Le=this._sourceBuffers[Me],Te=this._pendingRemoveRanges[Me];for(;Te.length&&!Le.updating;){let Ue=Te.shift();Le.remove(Ue.start,Ue.end)}}}_doAppendSegments(){let Me=this._pendingSegments;for(let Le in Me)if(!(!this._sourceBuffers[Le]||this._sourceBuffers[Le].updating)&&Me[Le].length>0){let Te=Me[Le].shift();if(Te.timestampOffset){let Ue=this._sourceBuffers[Le].timestampOffset,Ye=Te.timestampOffset/1e3;Math.abs(Ue-Ye)>.1&&(Pe.v(this.TAG,`Update MPEG audio timestampOffset from ${Ue} to ${Ye}`),this._sourceBuffers[Le].timestampOffset=Ye),delete Te.timestampOffset}if(!Te.data||Te.data.byteLength===0)continue;try{this._sourceBuffers[Le].appendBuffer(Te.data),this._isBufferFull=!1,Le==="video"&&Te.hasOwnProperty("info")&&this._idrList.appendArray(Te.info.syncPoints)}catch(Ue){this._pendingSegments[Le].unshift(Te),Ue.code===22?(this._isBufferFull||this._emitter.emit(Ia.BUFFER_FULL),this._isBufferFull=!0):(Pe.e(this.TAG,Ue.message),this._emitter.emit(Ia.ERROR,{code:Ue.code,msg:Ue.message}))}}}_onSourceOpen(){if(Pe.v(this.TAG,"MediaSource onSourceOpen"),this._mediaSource.removeEventListener("sourceopen",this.e.onSourceOpen),this._pendingSourceBufferInit.length>0){let Me=this._pendingSourceBufferInit;for(;Me.length;){let Le=Me.shift();this.appendInitSegment(Le,!0)}}this._hasPendingSegments()&&this._doAppendSegments(),this._emitter.emit(Ia.SOURCE_OPEN)}_onSourceEnded(){Pe.v(this.TAG,"MediaSource onSourceEnded")}_onSourceClose(){Pe.v(this.TAG,"MediaSource onSourceClose"),this._mediaSource&&this.e!=null&&(this._mediaSource.removeEventListener("sourceopen",this.e.onSourceOpen),this._mediaSource.removeEventListener("sourceended",this.e.onSourceEnded),this._mediaSource.removeEventListener("sourceclose",this.e.onSourceClose))}_hasPendingSegments(){let Me=this._pendingSegments;return Me.video.length>0||Me.audio.length>0}_hasPendingRemoveRanges(){let Me=this._pendingRemoveRanges;return Me.video.length>0||Me.audio.length>0}_onSourceBufferUpdateEnd(){this._requireSetMediaDuration?this._updateMediaSourceDuration():this._hasPendingRemoveRanges()?this._doRemoveRanges():this._hasPendingSegments()?this._doAppendSegments():this._hasPendingEos&&this.endOfStream(),this._emitter.emit(Ia.UPDATE_END)}_onSourceBufferError(Me){Pe.e(this.TAG,`SourceBuffer Error: ${Me}`)}}var wi=Ii;const jr={NETWORK_ERROR:"NetworkError",MEDIA_ERROR:"MediaError",OTHER_ERROR:"OtherError"},Ka={NETWORK_EXCEPTION:ce.EXCEPTION,NETWORK_STATUS_CODE_INVALID:ce.HTTP_STATUS_CODE_INVALID,NETWORK_TIMEOUT:ce.CONNECTING_TIMEOUT,NETWORK_UNRECOVERABLE_EARLY_EOF:ce.UNRECOVERABLE_EARLY_EOF,MEDIA_MSE_ERROR:"MediaMSEError",MEDIA_FORMAT_ERROR:It.FORMAT_ERROR,MEDIA_FORMAT_UNSUPPORTED:It.FORMAT_UNSUPPORTED,MEDIA_CODEC_UNSUPPORTED:It.CODEC_UNSUPPORTED};class oi{constructor(Me,Le){if(this.TAG="FlvPlayer",this._type="FlvPlayer",this._emitter=new(Ce()),this._config=at(),typeof Le=="object"&&Object.assign(this._config,Le),Me.type.toLowerCase()!=="flv")throw new pe("FlvPlayer requires an flv MediaDataSource input!");Me.isLive===!0&&(this._config.isLive=!0),this.e={onvLoadedMetadata:this._onvLoadedMetadata.bind(this),onvSeeking:this._onvSeeking.bind(this),onvCanPlay:this._onvCanPlay.bind(this),onvStalled:this._onvStalled.bind(this),onvProgress:this._onvProgress.bind(this)},self.performance&&self.performance.now?this._now=self.performance.now.bind(self.performance):this._now=Date.now,this._pendingSeekTime=null,this._requestSetTime=!1,this._seekpointRecord=null,this._progressChecker=null,this._mediaDataSource=Me,this._mediaElement=null,this._msectl=null,this._transmuxer=null,this._mseSourceOpened=!1,this._hasPendingLoad=!1,this._receivedCanPlay=!1,this._mediaInfo=null,this._statisticsInfo=null;let Te=oe.chrome&&(oe.version.major<50||oe.version.major===50&&oe.version.build<2661);this._alwaysSeekKeyframe=!!(Te||oe.msedge||oe.msie),this._alwaysSeekKeyframe&&(this._config.accurateSeek=!1)}destroy(){this._progressChecker!=null&&(window.clearInterval(this._progressChecker),this._progressChecker=null),this._transmuxer&&this.unload(),this._mediaElement&&this.detachMediaElement(),this.e=null,this._mediaDataSource=null,this._emitter.removeAllListeners(),this._emitter=null}on(Me,Le){Me===yt.MEDIA_INFO?this._mediaInfo!=null&&Promise.resolve().then(()=>{this._emitter.emit(yt.MEDIA_INFO,this.mediaInfo)}):Me===yt.STATISTICS_INFO&&this._statisticsInfo!=null&&Promise.resolve().then(()=>{this._emitter.emit(yt.STATISTICS_INFO,this.statisticsInfo)}),this._emitter.addListener(Me,Le)}off(Me,Le){this._emitter.removeListener(Me,Le)}attachMediaElement(Me){if(this._mediaElement=Me,Me.addEventListener("loadedmetadata",this.e.onvLoadedMetadata),Me.addEventListener("seeking",this.e.onvSeeking),Me.addEventListener("canplay",this.e.onvCanPlay),Me.addEventListener("stalled",this.e.onvStalled),Me.addEventListener("progress",this.e.onvProgress),this._msectl=new wi(this._config),this._msectl.on(Ia.UPDATE_END,this._onmseUpdateEnd.bind(this)),this._msectl.on(Ia.BUFFER_FULL,this._onmseBufferFull.bind(this)),this._msectl.on(Ia.SOURCE_OPEN,()=>{this._mseSourceOpened=!0,this._hasPendingLoad&&(this._hasPendingLoad=!1,this.load())}),this._msectl.on(Ia.ERROR,Le=>{this._emitter.emit(yt.ERROR,jr.MEDIA_ERROR,Ka.MEDIA_MSE_ERROR,Le)}),this._msectl.attachMediaElement(Me),this._pendingSeekTime!=null)try{Me.currentTime=this._pendingSeekTime,this._pendingSeekTime=null}catch(Le){}}detachMediaElement(){this._mediaElement&&(this._msectl.detachMediaElement(),this._mediaElement.removeEventListener("loadedmetadata",this.e.onvLoadedMetadata),this._mediaElement.removeEventListener("seeking",this.e.onvSeeking),this._mediaElement.removeEventListener("canplay",this.e.onvCanPlay),this._mediaElement.removeEventListener("stalled",this.e.onvStalled),this._mediaElement.removeEventListener("progress",this.e.onvProgress),this._mediaElement=null),this._msectl&&(this._msectl.destroy(),this._msectl=null)}load(){if(!this._mediaElement)throw new we("HTMLMediaElement must be attached before load()!");if(this._transmuxer)throw new we("FlvPlayer.load() has been called, please call unload() first!");if(!this._hasPendingLoad){if(this._config.deferLoadAfterSourceOpen&&this._mseSourceOpened===!1){this._hasPendingLoad=!0;return}this._mediaElement.readyState>0&&(this._requestSetTime=!0,this._mediaElement.currentTime=0),this._transmuxer=new Ya(this._mediaDataSource,this._config),this._transmuxer.on(Bn.INIT_SEGMENT,(Me,Le)=>{this._msectl.appendInitSegment(Le)}),this._transmuxer.on(Bn.MEDIA_SEGMENT,(Me,Le)=>{if(this._msectl.appendMediaSegment(Le),this._config.lazyLoad&&!this._config.isLive){let Te=this._mediaElement.currentTime;Le.info.endDts>=(Te+this._config.lazyLoadMaxDuration)*1e3&&this._progressChecker==null&&(Pe.v(this.TAG,"Maximum buffering duration exceeded, suspend transmuxing task"),this._suspendTransmuxer())}}),this._transmuxer.on(Bn.LOADING_COMPLETE,()=>{this._msectl.endOfStream(),this._emitter.emit(yt.LOADING_COMPLETE)}),this._transmuxer.on(Bn.RECOVERED_EARLY_EOF,()=>{this._emitter.emit(yt.RECOVERED_EARLY_EOF)}),this._transmuxer.on(Bn.IO_ERROR,(Me,Le)=>{this._emitter.emit(yt.ERROR,jr.NETWORK_ERROR,Me,Le)}),this._transmuxer.on(Bn.DEMUX_ERROR,(Me,Le)=>{this._emitter.emit(yt.ERROR,jr.MEDIA_ERROR,Me,{code:-1,msg:Le})}),this._transmuxer.on(Bn.MEDIA_INFO,Me=>{this._mediaInfo=Me,this._emitter.emit(yt.MEDIA_INFO,Object.assign({},Me))}),this._transmuxer.on(Bn.METADATA_ARRIVED,Me=>{this._emitter.emit(yt.METADATA_ARRIVED,Me)}),this._transmuxer.on(Bn.SCRIPTDATA_ARRIVED,Me=>{this._emitter.emit(yt.SCRIPTDATA_ARRIVED,Me)}),this._transmuxer.on(Bn.STATISTICS_INFO,Me=>{this._statisticsInfo=this._fillStatisticsInfo(Me),this._emitter.emit(yt.STATISTICS_INFO,Object.assign({},this._statisticsInfo))}),this._transmuxer.on(Bn.RECOMMEND_SEEKPOINT,Me=>{this._mediaElement&&!this._config.accurateSeek&&(this._requestSetTime=!0,this._mediaElement.currentTime=Me/1e3)}),this._transmuxer.open()}}unload(){this._mediaElement&&this._mediaElement.pause(),this._msectl&&this._msectl.seek(0),this._transmuxer&&(this._transmuxer.close(),this._transmuxer.destroy(),this._transmuxer=null)}play(){return this._mediaElement.play()}pause(){this._mediaElement.pause()}get type(){return this._type}get buffered(){return this._mediaElement.buffered}get duration(){return this._mediaElement.duration}get volume(){return this._mediaElement.volume}set volume(Me){this._mediaElement.volume=Me}get muted(){return this._mediaElement.muted}set muted(Me){this._mediaElement.muted=Me}get currentTime(){return this._mediaElement?this._mediaElement.currentTime:0}set currentTime(Me){this._mediaElement?this._internalSeek(Me):this._pendingSeekTime=Me}get mediaInfo(){return Object.assign({},this._mediaInfo)}get statisticsInfo(){return this._statisticsInfo==null&&(this._statisticsInfo={}),this._statisticsInfo=this._fillStatisticsInfo(this._statisticsInfo),Object.assign({},this._statisticsInfo)}_fillStatisticsInfo(Me){if(Me.playerType=this._type,!(this._mediaElement instanceof HTMLVideoElement))return Me;let Le=!0,Te=0,Ue=0;if(this._mediaElement.getVideoPlaybackQuality){let Ye=this._mediaElement.getVideoPlaybackQuality();Te=Ye.totalVideoFrames,Ue=Ye.droppedVideoFrames}else this._mediaElement.webkitDecodedFrameCount!=null?(Te=this._mediaElement.webkitDecodedFrameCount,Ue=this._mediaElement.webkitDroppedFrameCount):Le=!1;return Le&&(Me.decodedFrames=Te,Me.droppedFrames=Ue),Me}_onmseUpdateEnd(){if(!this._config.lazyLoad||this._config.isLive)return;let Me=this._mediaElement.buffered,Le=this._mediaElement.currentTime,Te=0,Ue=0;for(let Ye=0;Ye=Le+this._config.lazyLoadMaxDuration&&this._progressChecker==null&&(Pe.v(this.TAG,"Maximum buffering duration exceeded, suspend transmuxing task"),this._suspendTransmuxer())}_onmseBufferFull(){Pe.v(this.TAG,"MSE SourceBuffer is full, suspend transmuxing task"),this._progressChecker==null&&this._suspendTransmuxer()}_suspendTransmuxer(){this._transmuxer&&(this._transmuxer.pause(),this._progressChecker==null&&(this._progressChecker=window.setInterval(this._checkProgressAndResume.bind(this),1e3)))}_checkProgressAndResume(){let Me=this._mediaElement.currentTime,Le=this._mediaElement.buffered,Te=!1;for(let Ue=0;Ue=Ye&&Me=xt-this._config.lazyLoadRecoverDuration&&(Te=!0);break}}Te&&(window.clearInterval(this._progressChecker),this._progressChecker=null,Te&&(Pe.v(this.TAG,"Continue loading from paused position"),this._transmuxer.resume()))}_isTimepointBuffered(Me){let Le=this._mediaElement.buffered;for(let Te=0;Te=Ue&&Me0){let Ye=this._mediaElement.buffered.start(0);(Ye<1&&Me0&&Le.currentTime0){let Ue=Te.start(0);if(Ue<1&&Le{this._emitter.emit(yt.MEDIA_INFO,this.mediaInfo)}):Me===yt.STATISTICS_INFO&&this._mediaElement!=null&&this._mediaElement.readyState!==0&&Promise.resolve().then(()=>{this._emitter.emit(yt.STATISTICS_INFO,this.statisticsInfo)}),this._emitter.addListener(Me,Le)}off(Me,Le){this._emitter.removeListener(Me,Le)}attachMediaElement(Me){if(this._mediaElement=Me,Me.addEventListener("loadedmetadata",this.e.onvLoadedMetadata),this._pendingSeekTime!=null)try{Me.currentTime=this._pendingSeekTime,this._pendingSeekTime=null}catch(Le){}}detachMediaElement(){this._mediaElement&&(this._mediaElement.src="",this._mediaElement.removeAttribute("src"),this._mediaElement.removeEventListener("loadedmetadata",this.e.onvLoadedMetadata),this._mediaElement=null),this._statisticsReporter!=null&&(window.clearInterval(this._statisticsReporter),this._statisticsReporter=null)}load(){if(!this._mediaElement)throw new we("HTMLMediaElement must be attached before load()!");this._mediaElement.src=this._mediaDataSource.url,this._mediaElement.readyState>0&&(this._mediaElement.currentTime=0),this._mediaElement.preload="auto",this._mediaElement.load(),this._statisticsReporter=window.setInterval(this._reportStatisticsInfo.bind(this),this._config.statisticsInfoReportInterval)}unload(){this._mediaElement&&(this._mediaElement.src="",this._mediaElement.removeAttribute("src")),this._statisticsReporter!=null&&(window.clearInterval(this._statisticsReporter),this._statisticsReporter=null)}play(){return this._mediaElement.play()}pause(){this._mediaElement.pause()}get type(){return this._type}get buffered(){return this._mediaElement.buffered}get duration(){return this._mediaElement.duration}get volume(){return this._mediaElement.volume}set volume(Me){this._mediaElement.volume=Me}get muted(){return this._mediaElement.muted}set muted(Me){this._mediaElement.muted=Me}get currentTime(){return this._mediaElement?this._mediaElement.currentTime:0}set currentTime(Me){this._mediaElement?this._mediaElement.currentTime=Me:this._pendingSeekTime=Me}get mediaInfo(){let Le={mimeType:(this._mediaElement instanceof HTMLAudioElement?"audio/":"video/")+this._mediaDataSource.type};return this._mediaElement&&(Le.duration=Math.floor(this._mediaElement.duration*1e3),this._mediaElement instanceof HTMLVideoElement&&(Le.width=this._mediaElement.videoWidth,Le.height=this._mediaElement.videoHeight)),Le}get statisticsInfo(){let Me={playerType:this._type,url:this._mediaDataSource.url};if(!(this._mediaElement instanceof HTMLVideoElement))return Me;let Le=!0,Te=0,Ue=0;if(this._mediaElement.getVideoPlaybackQuality){let Ye=this._mediaElement.getVideoPlaybackQuality();Te=Ye.totalVideoFrames,Ue=Ye.droppedVideoFrames}else this._mediaElement.webkitDecodedFrameCount!=null?(Te=this._mediaElement.webkitDecodedFrameCount,Ue=this._mediaElement.webkitDroppedFrameCount):Le=!1;return Le&&(Me.decodedFrames=Te,Me.droppedFrames=Ue),Me}_onvLoadedMetadata(Me){this._pendingSeekTime!=null&&(this._mediaElement.currentTime=this._pendingSeekTime,this._pendingSeekTime=null),this._emitter.emit(yt.MEDIA_INFO,this.mediaInfo)}_reportStatisticsInfo(){this._emitter.emit(yt.STATISTICS_INFO,this.statisticsInfo)}}var li=vr;He.install();function zn(bt,Me){let Le=bt;if(Le==null||typeof Le!="object")throw new pe("MediaDataSource must be an javascript object!");if(!Le.hasOwnProperty("type"))throw new pe("MediaDataSource must has type field to indicate video file type!");switch(Le.type){case"flv":return new pr(Le,Me);default:return new li(Le,Me)}}function hr(){return rt.supportMSEH264Playback()}function Tr(){return rt.getFeatureList()}let Rr={};Rr.createPlayer=zn,Rr.isSupported=hr,Rr.getFeatureList=Tr,Rr.BaseLoader=te,Rr.LoaderStatus=xe,Rr.LoaderErrors=ce,Rr.Events=yt,Rr.ErrorTypes=jr,Rr.ErrorDetails=Ka,Rr.FlvPlayer=pr,Rr.NativePlayer=li,Rr.LoggingControl=dt,Object.defineProperty(Rr,"version",{enumerable:!0,get:function(){return"__VERSION__"}});var fa=Rr},49529:function(St,Dt,Ie){"use strict";var Be,He=Object.defineProperty,Fe=bt=>{throw TypeError(bt)},Ce=Math.pow,_e=(bt,Me,Le)=>Me in bt?He(bt,Me,{enumerable:!0,configurable:!0,writable:!0,value:Le}):bt[Me]=Le,Pe=(bt,Me,Le)=>_e(bt,typeof Me!="symbol"?Me+"":Me,Le),ge=(bt,Me,Le)=>Me.has(bt)||Fe("Cannot "+Le),Ae=(bt,Me,Le)=>(ge(bt,Me,"read from private field"),Le?Le.call(bt):Me.get(bt)),be=(bt,Me,Le)=>Me.has(bt)?Fe("Cannot add the same private member more than once"):Me instanceof WeakSet?Me.add(bt):Me.set(bt,Le),we=(bt,Me,Le,Te)=>(ge(bt,Me,"write to private field"),Te?Te.call(bt,Le):Me.set(bt,Le),Le),pe=(bt,Me,Le)=>(ge(bt,Me,"access private method"),Le),ye,xe,ce;Be={value:!0};var te=Ie(34634),ne=Ie(34402);const le=" ".repeat(2),oe=" ".repeat(4);function de(){return he(this)}function he(bt,Me={}){const{maxRows:Le=15,maxColumns:Te=10,maxNumSize:Ue=8,padMinus:Ye="auto"}=Me;return`${bt.constructor.name} { ${le}[ ${oe}${ie(bt,Le,Te,Ue,Ye)} ${le}] ${le}rows: ${bt.rows} ${le}columns: ${bt.columns} }`}function ie(bt,Me,Le,Te,Ue){const{rows:Ye,columns:xt}=bt,Pt=Math.min(Ye,Me),Xt=Math.min(xt,Le),Ht=[];if(Ue==="auto"){Ue=!1;e:for(let mn=0;mn=0&&Le?` ${ve(bt,Me-1)}`:ve(bt,Me)).padEnd(Me)}function ve(bt,Me){let Le=bt.toString();if(Le.length<=Me)return Le;let Te=bt.toFixed(Me);if(Te.length>Me&&(Te=bt.toFixed(Math.max(0,Me-(Te.length-Me)))),Te.length<=Me&&!Te.startsWith("0.000")&&!Te.startsWith("-0.000"))return Te;let Ue=bt.toExponential(Me);return Ue.length>Me&&(Ue=bt.toExponential(Math.max(0,Me-(Ue.length-Me)))),Ue.slice(0)}function Se(bt,Me){bt.prototype.add=function(Te){return typeof Te=="number"?this.addS(Te):this.addM(Te)},bt.prototype.addS=function(Te){for(let Ue=0;Ue>Te);return this},bt.prototype.signPropagatingRightShiftM=function(Te){if(Te=Me.checkMatrix(Te),this.rows!==Te.rows||this.columns!==Te.columns)throw new RangeError("Matrices dimensions must be equal");for(let Ue=0;Ue>Te.get(Ue,Ye));return this},bt.signPropagatingRightShift=function(Te,Ue){return new Me(Te).signPropagatingRightShift(Ue)},bt.prototype.rightShift=function(Te){return typeof Te=="number"?this.rightShiftS(Te):this.rightShiftM(Te)},bt.prototype.rightShiftS=function(Te){for(let Ue=0;Ue>>Te);return this},bt.prototype.rightShiftM=function(Te){if(Te=Me.checkMatrix(Te),this.rows!==Te.rows||this.columns!==Te.columns)throw new RangeError("Matrices dimensions must be equal");for(let Ue=0;Ue>>Te.get(Ue,Ye));return this},bt.rightShift=function(Te,Ue){return new Me(Te).rightShift(Ue)},bt.prototype.zeroFillRightShift=bt.prototype.rightShift,bt.prototype.zeroFillRightShiftS=bt.prototype.rightShiftS,bt.prototype.zeroFillRightShiftM=bt.prototype.rightShiftM,bt.zeroFillRightShift=bt.rightShift,bt.prototype.not=function(){for(let Te=0;TeTe)throw new RangeError("Row index out of range")}function Re(bt,Me,Le){let Te=Le?bt.columns:bt.columns-1;if(Me<0||Me>Te)throw new RangeError("Column index out of range")}function Ne(bt,Me){if(Me.to1DArray&&(Me=Me.to1DArray()),Me.length!==bt.columns)throw new RangeError("vector size must be the same as the number of columns");return Me}function ze(bt,Me){if(Me.to1DArray&&(Me=Me.to1DArray()),Me.length!==bt.rows)throw new RangeError("vector size must be the same as the number of rows");return Me}function Ge(bt,Me){if(!te.isAnyArray(Me))throw new TypeError("row indices must be an array");for(let Le=0;Le=bt.rows)throw new RangeError("row indices are out of range")}function Xe(bt,Me){if(!te.isAnyArray(Me))throw new TypeError("column indices must be an array");for(let Le=0;Le=bt.columns)throw new RangeError("column indices are out of range")}function Qe(bt,Me,Le,Te,Ue){if(arguments.length!==5)throw new RangeError("expected 4 arguments");if($e("startRow",Me),$e("endRow",Le),$e("startColumn",Te),$e("endColumn",Ue),Me>Le||Te>Ue||Me<0||Me>=bt.rows||Le<0||Le>=bt.rows||Te<0||Te>=bt.columns||Ue<0||Ue>=bt.columns)throw new RangeError("Submatrix indices are out of range")}function nt(bt,Me=0){let Le=[];for(let Te=0;Te=Ye)throw new RangeError("min must be smaller than max");let Pt=Ye-Ue,Xt=new Et(Me,Le);for(let Ht=0;HtTe?(Ye=!0,Te=Le):(Ue=!1,Ye=!0);Me++}return Ue}isReducedEchelonForm(){let Me=0,Le=0,Te=-1,Ue=!0,Ye=!1;for(;MeTe?(Ye=!0,Te=Le):(Ue=!1,Ye=!0);for(let xt=Le+1;xtMe.get(Ue,Te)&&(Ue=Ye);if(Me.get(Ue,Te)===0)Te++;else{Me.swapRows(Le,Ue);let Ye=Me.get(Le,Te);for(let xt=Te;xt=0;)if(Me.maxRow(Ue)===0)Ue--;else{let Ye=0,xt=!1;for(;YeLe[Te]&&(Le[Te]=this.get(Te,Ue));return Le}case"column":{const Le=new Array(this.columns).fill(Number.NEGATIVE_INFINITY);for(let Te=0;TeLe[Ue]&&(Le[Ue]=this.get(Te,Ue));return Le}case void 0:{let Le=this.get(0,0);for(let Te=0;TeLe&&(Le=this.get(Te,Ue));return Le}default:throw new Error(`invalid option: ${Me}`)}}maxIndex(){qe(this);let Me=this.get(0,0),Le=[0,0];for(let Te=0;TeMe&&(Me=this.get(Te,Ue),Le[0]=Te,Le[1]=Ue);return Le}min(Me){if(this.isEmpty())return NaN;switch(Me){case"row":{const Le=new Array(this.rows).fill(Number.POSITIVE_INFINITY);for(let Te=0;TeLe&&(Le=this.get(Me,Te));return Le}maxRowIndex(Me){De(this,Me),qe(this);let Le=this.get(Me,0),Te=[Me,0];for(let Ue=1;UeLe&&(Le=this.get(Me,Ue),Te[1]=Ue);return Te}minRow(Me){if(De(this,Me),this.isEmpty())return NaN;let Le=this.get(Me,0);for(let Te=1;TeLe&&(Le=this.get(Te,Me));return Le}maxColumnIndex(Me){Re(this,Me),qe(this);let Le=this.get(0,Me),Te=[0,Me];for(let Ue=1;UeLe&&(Le=this.get(Ue,Me),Te[0]=Ue);return Te}minColumn(Me){if(Re(this,Me),this.isEmpty())return NaN;let Le=this.get(0,Me);for(let Te=1;Te=1;Ue/=2)Ue&1&&(Le=Le.mmul(Te)),Te=Te.mmul(Te);return Le}strassen2x2(Me){Me=Et.checkMatrix(Me);let Le=new Et(2,2);const Te=this.get(0,0),Ue=Me.get(0,0),Ye=this.get(0,1),xt=Me.get(0,1),Pt=this.get(1,0),Xt=Me.get(1,0),Ht=this.get(1,1),mn=Me.get(1,1),pn=(Te+Ht)*(Ue+mn),Yn=(Pt+Ht)*Ue,Dn=Te*(xt-mn),qn=Ht*(Xt-Ue),er=(Te+Ye)*mn,dr=(Pt-Te)*(Ue+xt),fn=(Ye-Ht)*(Xt+mn),nn=pn+qn-er+fn,Nn=Dn+er,jn=Yn+qn,rr=pn-Yn+Dn+dr;return Le.set(0,0,nn),Le.set(0,1,Nn),Le.set(1,0,jn),Le.set(1,1,rr),Le}strassen3x3(Me){Me=Et.checkMatrix(Me);let Le=new Et(3,3);const Te=this.get(0,0),Ue=this.get(0,1),Ye=this.get(0,2),xt=this.get(1,0),Pt=this.get(1,1),Xt=this.get(1,2),Ht=this.get(2,0),mn=this.get(2,1),pn=this.get(2,2),Yn=Me.get(0,0),Dn=Me.get(0,1),qn=Me.get(0,2),er=Me.get(1,0),dr=Me.get(1,1),fn=Me.get(1,2),nn=Me.get(2,0),Nn=Me.get(2,1),jn=Me.get(2,2),rr=(Te+Ue+Ye-xt-Pt-mn-pn)*dr,mr=(Te-xt)*(-Dn+dr),Xn=Pt*(-Yn+Dn+er-dr-fn-nn+jn),ur=(-Te+xt+Pt)*(Yn-Dn+dr),yr=(xt+Pt)*(-Yn+Dn),wn=Te*Yn,gr=(-Te+Ht+mn)*(Yn-qn+fn),Jn=(-Te+Ht)*(qn-fn),Ur=(Ht+mn)*(-Yn+qn),Ja=(Te+Ue+Ye-Pt-Xt-Ht-mn)*fn,gi=mn*(-Yn+qn+er-dr-fn-nn+Nn),ui=(-Ye+mn+pn)*(dr+nn-Nn),Hr=(Ye-pn)*(dr-Nn),wa=Ye*nn,Ta=(mn+pn)*(-nn+Nn),ua=(-Ye+Pt+Xt)*(fn+nn-jn),qa=(Ye-Xt)*(fn-jn),zi=(Pt+Xt)*(-nn+jn),Fa=Ue*er,Ui=Xt*Nn,Yi=xt*qn,Zr=Ht*Dn,oo=pn*jn,_s=wn+wa+Fa,Uo=rr+ur+yr+wn+ui+wa+Ta,Xi=wn+gr+Ur+Ja+wa+ua+zi,Ti=mr+Xn+ur+wn+wa+ua+qa,Jo=mr+ur+yr+wn+Ui,Ro=wa+ua+qa+zi+Yi,Lo=wn+gr+Jn+gi+ui+Hr+wa,Ts=ui+Hr+wa+Ta+Zr,Bs=wn+gr+Jn+Ur+oo;return Le.set(0,0,_s),Le.set(0,1,Uo),Le.set(0,2,Xi),Le.set(1,0,Ti),Le.set(1,1,Jo),Le.set(1,2,Ro),Le.set(2,0,Lo),Le.set(2,1,Ts),Le.set(2,2,Bs),Le}mmulStrassen(Me){Me=Et.checkMatrix(Me);let Le=this.clone(),Te=Le.rows,Ue=Le.columns,Ye=Me.rows,xt=Me.columns;Ue!==Ye&&console.warn(`Multiplying ${Te} x ${Ue} and ${Ye} x ${xt} matrix: dimensions do not match.`);function Pt(pn,Yn,Dn){let qn=pn.rows,er=pn.columns;if(qn===Yn&&er===Dn)return pn;{let dr=sn.zeros(Yn,Dn);return dr=dr.setSubMatrix(pn,0,0),dr}}let Xt=Math.max(Te,Ye),Ht=Math.max(Ue,xt);Le=Pt(Le,Xt,Ht),Me=Pt(Me,Xt,Ht);function mn(pn,Yn,Dn,qn){if(Dn<=512||qn<=512)return pn.mmul(Yn);Dn%2===1&&qn%2===1?(pn=Pt(pn,Dn+1,qn+1),Yn=Pt(Yn,Dn+1,qn+1)):Dn%2===1?(pn=Pt(pn,Dn+1,qn),Yn=Pt(Yn,Dn+1,qn)):qn%2===1&&(pn=Pt(pn,Dn,qn+1),Yn=Pt(Yn,Dn,qn+1));let er=parseInt(pn.rows/2,10),dr=parseInt(pn.columns/2,10),fn=pn.subMatrix(0,er-1,0,dr-1),nn=Yn.subMatrix(0,er-1,0,dr-1),Nn=pn.subMatrix(0,er-1,dr,pn.columns-1),jn=Yn.subMatrix(0,er-1,dr,Yn.columns-1),rr=pn.subMatrix(er,pn.rows-1,0,dr-1),mr=Yn.subMatrix(er,Yn.rows-1,0,dr-1),Xn=pn.subMatrix(er,pn.rows-1,dr,pn.columns-1),ur=Yn.subMatrix(er,Yn.rows-1,dr,Yn.columns-1),yr=mn(sn.add(fn,Xn),sn.add(nn,ur),er,dr),wn=mn(sn.add(rr,Xn),nn,er,dr),gr=mn(fn,sn.sub(jn,ur),er,dr),Jn=mn(Xn,sn.sub(mr,nn),er,dr),Ur=mn(sn.add(fn,Nn),ur,er,dr),Ja=mn(sn.sub(rr,fn),sn.add(nn,jn),er,dr),gi=mn(sn.sub(Nn,Xn),sn.add(mr,ur),er,dr),ui=sn.add(yr,Jn);ui.sub(Ur),ui.add(gi);let Hr=sn.add(gr,Ur),wa=sn.add(wn,Jn),Ta=sn.sub(yr,wn);Ta.add(gr),Ta.add(Ja);let ua=sn.zeros(2*ui.rows,2*ui.columns);return ua=ua.setSubMatrix(ui,0,0),ua=ua.setSubMatrix(Hr,ui.rows,0),ua=ua.setSubMatrix(wa,0,ui.columns),ua=ua.setSubMatrix(Ta,ui.rows,ui.columns),ua.subMatrix(0,Dn-1,0,qn-1)}return mn(Le,Me,Xt,Ht)}scaleRows(Me={}){if(typeof Me!="object")throw new TypeError("options must be an object");const{min:Le=0,max:Te=1}=Me;if(!Number.isFinite(Le))throw new TypeError("min must be a number");if(!Number.isFinite(Te))throw new TypeError("max must be a number");if(Le>=Te)throw new RangeError("min must be smaller than max");let Ue=new Et(this.rows,this.columns);for(let Ye=0;Ye0&&ne(xt,{min:Le,max:Te,output:xt}),Ue.setRow(Ye,xt)}return Ue}scaleColumns(Me={}){if(typeof Me!="object")throw new TypeError("options must be an object");const{min:Le=0,max:Te=1}=Me;if(!Number.isFinite(Le))throw new TypeError("min must be a number");if(!Number.isFinite(Te))throw new TypeError("max must be a number");if(Le>=Te)throw new RangeError("min must be smaller than max");let Ue=new Et(this.rows,this.columns);for(let Ye=0;YeTe||Le<0||Le>=this.columns||Te<0||Te>=this.columns)throw new RangeError("Argument out of range");let Ue=new Et(Me.length,Te-Le+1);for(let Ye=0;Ye=this.rows)throw new RangeError(`Row index out of range: ${Me[Ye]}`);Ue.set(Ye,xt-Le,this.get(Me[Ye],xt))}return Ue}subMatrixColumn(Me,Le,Te){if(Le===void 0&&(Le=0),Te===void 0&&(Te=this.rows-1),Le>Te||Le<0||Le>=this.rows||Te<0||Te>=this.rows)throw new RangeError("Argument out of range");let Ue=new Et(Te-Le+1,Me.length);for(let Ye=0;Ye=this.columns)throw new RangeError(`Column index out of range: ${Me[Ye]}`);Ue.set(xt-Le,Ye,this.get(xt,Me[Ye]))}return Ue}setSubMatrix(Me,Le,Te){if(Me=Et.checkMatrix(Me),Me.isEmpty())return this;let Ue=Le+Me.rows-1,Ye=Te+Me.columns-1;Qe(this,Le,Ue,Te,Ye);for(let xt=0;xttypeof Me=="number")}sn.random=sn.rand,sn.randomInt=sn.randInt,sn.diagonal=sn.diag,sn.prototype.diagonal=sn.prototype.diag,sn.identity=sn.eye,sn.prototype.negate=sn.prototype.neg,sn.prototype.tensorProduct=sn.prototype.kroneckerProduct;const It=class VS extends sn{constructor(Me,Le){if(super(),be(this,ye),Pe(this,"data"),VS.isMatrix(Me))pe(this,ye,xe).call(this,Me.rows,Me.columns),VS.copy(Me,this);else if(Number.isInteger(Me)&&Me>=0)pe(this,ye,xe).call(this,Me,Le);else if(te.isAnyArray(Me)){const Te=Me;if(Me=Te.length,Le=Me?Te[0].length:0,typeof Le!="number")throw new TypeError("Data must be a 2D array with at least one element");this.data=[];for(let Ue=0;Ue=0)for(let Le=0;Le=0)we(this,ce,new Et(Me,Me));else if(we(this,ce,new Et(Me)),!this.isSymmetric())throw new TypeError("not symmetric data")}get size(){return Ae(this,ce).size}get rows(){return Ae(this,ce).rows}get columns(){return Ae(this,ce).columns}get diagonalSize(){return this.rows}static isSymmetricMatrix(Me){return Et.isMatrix(Me)&&Me.klassType==="SymmetricMatrix"}static zeros(Me){return new this(Me)}static ones(Me){return new this(Me).fill(1)}clone(){const Me=new KS(this.diagonalSize);for(const[Le,Te,Ue]of this.upperRightEntries())Me.set(Le,Te,Ue);return Me}toMatrix(){return new Et(this)}get(Me,Le){return Ae(this,ce).get(Me,Le)}set(Me,Le,Te){return Ae(this,ce).set(Me,Le,Te),Ae(this,ce).set(Le,Me,Te),this}removeCross(Me){return Ae(this,ce).removeRow(Me),Ae(this,ce).removeColumn(Me),this}addCross(Me,Le){Le===void 0&&(Le=Me,Me=this.diagonalSize);const Te=Le.slice();return Te.splice(Me,1),Ae(this,ce).addRow(Me,Te),Ae(this,ce).addColumn(Me,Le),this}applyMask(Me){if(Me.length!==this.diagonalSize)throw new RangeError("Mask size do not match with matrix size");const Le=[];for(const[Te,Ue]of Me.entries())Ue||Le.push(Te);Le.reverse();for(const Te of Le)this.removeCross(Te);return this}toCompact(){const{diagonalSize:Me}=this,Le=new Array(Me*(Me+1)/2);for(let Te=0,Ue=0,Ye=0;Ye=Me&&(Te=++Ue);return Le}static fromCompact(Me){const Le=Me.length,Te=(Math.sqrt(8*Le+1)-1)/2;if(!Number.isInteger(Te))throw new TypeError(`This array is not a compact representation of a Symmetric Matrix, ${JSON.stringify(Me)}`);const Ue=new KS(Te);for(let Ye=0,xt=0,Pt=0;Pt=Te&&(Ye=++xt);return Ue}*upperRightEntries(){for(let Me=0,Le=0;Me=this.diagonalSize&&(Le=++Me)}}*upperRightValues(){for(let Me=0,Le=0;Me=this.diagonalSize&&(Le=++Me)}};ce=new WeakMap;let vt=Zt;vt.prototype.klassType="SymmetricMatrix";class At extends vt{static isDistanceMatrix(Me){return vt.isSymmetricMatrix(Me)&&Me.klassSubType==="DistanceMatrix"}constructor(Me){if(super(Me),!this.isDistance())throw new TypeError("Provided arguments do no produce a distance matrix")}set(Me,Le,Te){return Me===Le&&(Te=0),super.set(Me,Le,Te)}addCross(Me,Le){return Le===void 0&&(Le=Me,Me=this.diagonalSize),Le=Le.slice(),Le[Me]=0,super.addCross(Me,Le)}toSymmetricMatrix(){return new vt(this)}clone(){const Me=new At(this.diagonalSize);for(const[Le,Te,Ue]of this.upperRightEntries())Le!==Te&&Me.set(Le,Te,Ue);return Me}toCompact(){const{diagonalSize:Me}=this,Le=(Me-1)*Me/2,Te=new Array(Le);for(let Ue=1,Ye=0,xt=0;xt=Me&&(Ue=++Ye+1);return Te}static fromCompact(Me){const Le=Me.length;if(Le===0)return new this(0);const Te=(Math.sqrt(8*Le+1)+1)/2;if(!Number.isInteger(Te))throw new TypeError(`This array is not a compact representation of a DistanceMatrix, ${JSON.stringify(Me)}`);const Ue=new this(Te);for(let Ye=1,xt=0,Pt=0;Pt=Te&&(Ye=++xt+1);return Ue}}At.prototype.klassSubType="DistanceMatrix";class Qt extends sn{constructor(Me,Le,Te){super(),this.matrix=Me,this.rows=Le,this.columns=Te}}class Ft extends Qt{constructor(Me,Le){Re(Me,Le),super(Me,Me.rows,1),this.column=Le}set(Me,Le,Te){return this.matrix.set(Me,this.column,Te),this}get(Me){return this.matrix.get(Me,this.column)}}class wt extends Qt{constructor(Me,Le){Xe(Me,Le),super(Me,Me.rows,Le.length),this.columnIndices=Le}set(Me,Le,Te){return this.matrix.set(Me,this.columnIndices[Le],Te),this}get(Me,Le){return this.matrix.get(Me,this.columnIndices[Le])}}class ln extends Qt{constructor(Me){super(Me,Me.rows,Me.columns)}set(Me,Le,Te){return this.matrix.set(Me,this.columns-Le-1,Te),this}get(Me,Le){return this.matrix.get(Me,this.columns-Le-1)}}class In extends Qt{constructor(Me){super(Me,Me.rows,Me.columns)}set(Me,Le,Te){return this.matrix.set(this.rows-Me-1,Le,Te),this}get(Me,Le){return this.matrix.get(this.rows-Me-1,Le)}}class Kn extends Qt{constructor(Me,Le){De(Me,Le),super(Me,1,Me.columns),this.row=Le}set(Me,Le,Te){return this.matrix.set(this.row,Le,Te),this}get(Me,Le){return this.matrix.get(this.row,Le)}}class Vn extends Qt{constructor(Me,Le){Ge(Me,Le),super(Me,Le.length,Me.columns),this.rowIndices=Le}set(Me,Le,Te){return this.matrix.set(this.rowIndices[Me],Le,Te),this}get(Me,Le){return this.matrix.get(this.rowIndices[Me],Le)}}class Zn extends Qt{constructor(Me,Le,Te){Ge(Me,Le),Xe(Me,Te),super(Me,Le.length,Te.length),this.rowIndices=Le,this.columnIndices=Te}set(Me,Le,Te){return this.matrix.set(this.rowIndices[Me],this.columnIndices[Le],Te),this}get(Me,Le){return this.matrix.get(this.rowIndices[Me],this.columnIndices[Le])}}class $n extends Qt{constructor(Me,Le,Te,Ue,Ye){Qe(Me,Le,Te,Ue,Ye),super(Me,Te-Le+1,Ye-Ue+1),this.startRow=Le,this.startColumn=Ue}set(Me,Le,Te){return this.matrix.set(this.startRow+Me,this.startColumn+Le,Te),this}get(Me,Le){return this.matrix.get(this.startRow+Me,this.startColumn+Le)}}class Jt extends Qt{constructor(Me){super(Me,Me.columns,Me.rows)}set(Me,Le,Te){return this.matrix.set(Le,Me,Te),this}get(Me,Le){return this.matrix.get(Le,Me)}}class yn extends sn{constructor(Me,Le={}){const{rows:Te=1}=Le;if(Me.length%Te!==0)throw new Error("the data length is not divisible by the number of rows");super(),this.rows=Te,this.columns=Me.length/Te,this.data=Me}set(Me,Le,Te){let Ue=this._calculateIndex(Me,Le);return this.data[Ue]=Te,this}get(Me,Le){let Te=this._calculateIndex(Me,Le);return this.data[Te]}_calculateIndex(Me,Le){return Me*this.columns+Le}}class Hn extends sn{constructor(Me){super(),this.data=Me,this.rows=Me.length,this.columns=Me[0].length}set(Me,Le,Te){return this.data[Me][Le]=Te,this}get(Me,Le){return this.data[Me][Le]}}function Bn(bt,Me){if(te.isAnyArray(bt))return bt[0]&&te.isAnyArray(bt[0])?new Hn(bt):new yn(bt,Me);throw new Error("the argument is not an array")}class Er{constructor(Me){Me=Hn.checkMatrix(Me);let Le=Me.clone(),Te=Le.rows,Ue=Le.columns,Ye=new Float64Array(Te),xt=1,Pt,Xt,Ht,mn,pn,Yn,Dn,qn,er;for(Pt=0;PtMath.abs(qn[mn])&&(mn=Pt);if(mn!==Xt){for(Ht=0;Ht=0;Ht--){for(Xt=0;Xtxt?Ue.set(Ye,xt,Me.get(Ye,xt)):Ye===xt?Ue.set(Ye,xt,1):Ue.set(Ye,xt,0);return Ue}get upperTriangularMatrix(){let Me=this.LU,Le=Me.rows,Te=Me.columns,Ue=new Et(Le,Te);for(let Ye=0;YeMath.abs(Me)?(Le=Me/bt,Math.abs(bt)*Math.sqrt(1+Le*Le)):Me!==0?(Le=bt/Me,Math.abs(Me)*Math.sqrt(1+Le*Le)):0}class br{constructor(Me){Me=Hn.checkMatrix(Me);let Le=Me.clone(),Te=Me.rows,Ue=Me.columns,Ye=new Float64Array(Ue),xt,Pt,Xt,Ht;for(Xt=0;Xt=0;Ht--){for(Xt=0;Xt=0;Pt--){for(Ye=0;Ye=0;wn--)if(qn[wn]!==0){for(let gr=wn+1;gr=0;wn--){if(wn0;){let wn,gr;for(wn=Xn-2;wn>=-1&&wn!==-1;wn--){const Jn=Number.MIN_VALUE+yr*Math.abs(qn[wn]+Math.abs(qn[wn+1]));if(Math.abs(fn[wn])<=Jn||Number.isNaN(fn[wn])){fn[wn]=0;break}}if(wn===Xn-2)gr=4;else{let Jn;for(Jn=Xn-1;Jn>=wn&&Jn!==wn;Jn--){let Ur=(Jn!==Xn?Math.abs(fn[Jn]):0)+(Jn!==wn+1?Math.abs(fn[Jn-1]):0);if(Math.abs(qn[Jn])<=yr*Ur){qn[Jn]=0;break}}Jn===wn?gr=3:Jn===Xn-1?gr=1:(gr=2,wn=Jn)}switch(wn++,gr){case 1:{let Jn=fn[Xn-2];fn[Xn-2]=0;for(let Ur=Xn-2;Ur>=wn;Ur--){let Ja=Fr(qn[Ur],Jn),gi=qn[Ur]/Ja,ui=Jn/Ja;if(qn[Ur]=Ja,Ur!==wn&&(Jn=-ui*fn[Ur-1],fn[Ur-1]=gi*fn[Ur-1]),Ht)for(let Hr=0;Hr=qn[wn+1]);){let Jn=qn[wn];if(qn[wn]=qn[wn+1],qn[wn+1]=Jn,Ht&&wnLe&&Ye.set(mn,pn,Me.get(mn,pn)/this.s[pn]);let xt=this.U,Pt=xt.rows,Xt=xt.columns,Ht=new Et(Te,Pt);for(let mn=0;mnMe&&Le++;return Le}get diagonal(){return Array.from(this.s)}get threshold(){return Number.EPSILON/2*Math.max(this.m,this.n)*this.s[0]}get leftSingularVectors(){return this.U}get rightSingularVectors(){return this.V}get diagonalMatrix(){return Et.diag(this.s)}}function Da(bt,Me=!1){return bt=Hn.checkMatrix(bt),Me?new Wr(bt).inverse():Ya(bt,Et.eye(bt.rows))}function Ya(bt,Me,Le=!1){return bt=Hn.checkMatrix(bt),Me=Hn.checkMatrix(Me),Le?new Wr(bt).solve(Me):bt.isSquare()?new Er(bt).solve(Me):new br(bt).solve(Me)}function Ba(bt){if(bt=Et.checkMatrix(bt),bt.isSquare()){if(bt.columns===0)return 1;let Me,Le,Te,Ue;if(bt.columns===2)return Me=bt.get(0,0),Le=bt.get(0,1),Te=bt.get(1,0),Ue=bt.get(1,1),Me*Ue-Le*Te;if(bt.columns===3){let Ye,xt,Pt;return Ye=new Zn(bt,[1,2],[1,2]),xt=new Zn(bt,[1,2],[0,2]),Pt=new Zn(bt,[1,2],[0,1]),Me=bt.get(0,0),Le=bt.get(0,1),Te=bt.get(0,2),Me*Ba(Ye)-Le*Ba(xt)+Te*Ba(Pt)}else return new Er(bt).determinant}else throw Error("determinant can only be calculated for a square matrix")}function Ia(bt,Me){let Le=[];for(let Te=0;TeUe)return new Array(Me.rows+1).fill(0);{let Ye=Me.addRow(Le,[0]);for(let xt=0;xtMe?Ye[xt]=1/Ye[xt]:Ye[xt]=0;return Ue.mmul(Et.diag(Ye).mmul(Te.transpose()))}function Ka(bt,Me=bt,Le={}){bt=new Et(bt);let Te=!1;if(typeof Me=="object"&&!Et.isMatrix(Me)&&!te.isAnyArray(Me)?(Le=Me,Me=bt,Te=!0):Me=new Et(Me),bt.rows!==Me.rows)throw new TypeError("Both matrices must have the same number of rows");const{center:Ue=!0}=Le;Ue&&(bt=bt.center("column"),Te||(Me=Me.center("column")));const Ye=bt.transpose().mmul(Me);for(let xt=0;xt0?Ue.set(Ye,Ye+1,Le[Ye]):Le[Ye]<0&&Ue.set(Ye,Ye-1,Le[Ye])}return Ue}}function vr(bt,Me,Le,Te){let Ue,Ye,xt,Pt,Xt,Ht,mn,pn;for(Xt=0;Xt0;Pt--){for(pn=0,xt=0,Ht=0;Ht0&&(Ye=-Ye),Me[Pt]=pn*Ye,xt=xt-Ue*Ye,Le[Pt-1]=Ue-Ye,Xt=0;XtHt)do{for(Ue=Le[Ht],pn=(Le[Ht+1]-Ue)/(2*Me[Ht]),Yn=Fr(pn,1),pn<0&&(Yn=-Yn),Le[Ht]=Me[Ht]/(pn+Yn),Le[Ht+1]=Me[Ht]*(pn+Yn),Dn=Le[Ht+1],Ye=Ue-Le[Ht],xt=Ht+2;xt=Ht;xt--)for(dr=er,er=qn,Nn=nn,Ue=qn*Me[xt],Ye=qn*pn,Yn=Fr(pn,Me[xt]),Me[xt+1]=nn*Yn,nn=Me[xt]/Yn,qn=pn/Yn,pn=qn*Le[xt]-nn*Ue,Le[xt+1]=Ye+nn*(qn*Ue+nn*Le[xt]),Xt=0;Xtmr*rr);Le[Ht]=Le[Ht]+jn,Me[Ht]=0}for(xt=0;xt=pn;Ht--)Le[Ht]=Me.get(Ht,pn-1)/Yn,Xt+=Le[Ht]*Le[Ht];for(Pt=Math.sqrt(Xt),Le[pn]>0&&(Pt=-Pt),Xt=Xt-Le[pn]*Pt,Le[pn]=Le[pn]-Pt,mn=pn;mn=pn;Ht--)xt+=Le[Ht]*Me.get(Ht,mn);for(xt=xt/Xt,Ht=pn;Ht<=Ye;Ht++)Me.set(Ht,mn,Me.get(Ht,mn)-xt*Le[Ht])}for(Ht=0;Ht<=Ye;Ht++){for(xt=0,mn=Ye;mn>=pn;mn--)xt+=Le[mn]*Me.get(Ht,mn);for(xt=xt/Xt,mn=pn;mn<=Ye;mn++)Me.set(Ht,mn,Me.get(Ht,mn)-xt*Le[mn])}Le[pn]=Yn*Le[pn],Me.set(pn,pn-1,Yn*Pt)}}for(Ht=0;Ht=Ue+1;pn--)if(Me.get(pn,pn-1)!==0){for(Ht=pn+1;Ht<=Ye;Ht++)Le[Ht]=Me.get(Ht,pn-1);for(mn=pn;mn<=Ye;mn++){for(Pt=0,Ht=pn;Ht<=Ye;Ht++)Pt+=Le[Ht]*Te.get(Ht,mn);for(Pt=Pt/Le[pn]/Me.get(pn,pn-1),Ht=pn;Ht<=Ye;Ht++)Te.set(Ht,mn,Te.get(Ht,mn)+Pt*Le[Ht])}}}function hr(bt,Me,Le,Te,Ue){let Ye=bt-1,xt=0,Pt=bt-1,Xt=Number.EPSILON,Ht=0,mn=0,pn=0,Yn=0,Dn=0,qn=0,er=0,dr=0,fn,nn,Nn,jn,rr,mr,Xn,ur,yr,wn,gr,Jn,Ur,Ja,gi;for(fn=0;fnPt)&&(Le[fn]=Ue.get(fn,fn),Me[fn]=0),nn=Math.max(fn-1,0);nn=xt;){for(jn=Ye;jn>xt&&(qn=Math.abs(Ue.get(jn-1,jn-1))+Math.abs(Ue.get(jn,jn)),qn===0&&(qn=mn),!(Math.abs(Ue.get(jn,jn-1))=0){for(er=pn>=0?pn+er:pn-er,Le[Ye-1]=ur+er,Le[Ye]=Le[Ye-1],er!==0&&(Le[Ye]=ur-Xn/er),Me[Ye-1]=0,Me[Ye]=0,ur=Ue.get(Ye,Ye-1),qn=Math.abs(ur)+Math.abs(er),pn=ur/qn,Yn=er/qn,Dn=Math.sqrt(pn*pn+Yn*Yn),pn=pn/Dn,Yn=Yn/Dn,nn=Ye-1;nn0)){for(qn=Math.sqrt(qn),yr=jn&&(er=Ue.get(rr,rr),Dn=ur-er,qn=yr-er,pn=(Dn*qn-Xn)/Ue.get(rr+1,rr)+Ue.get(rr,rr+1),Yn=Ue.get(rr+1,rr+1)-er-Dn-qn,Dn=Ue.get(rr+2,rr+1),qn=Math.abs(pn)+Math.abs(Yn)+Math.abs(Dn),pn=pn/qn,Yn=Yn/qn,Dn=Dn/qn,!(rr===jn||Math.abs(Ue.get(rr,rr-1))*(Math.abs(Yn)+Math.abs(Dn))rr+2&&Ue.set(fn,fn-3,0);for(Nn=rr;Nn<=Ye-1&&(Ja=Nn!==Ye-1,Nn!==rr&&(pn=Ue.get(Nn,Nn-1),Yn=Ue.get(Nn+1,Nn-1),Dn=Ja?Ue.get(Nn+2,Nn-1):0,ur=Math.abs(pn)+Math.abs(Yn)+Math.abs(Dn),ur!==0&&(pn=pn/ur,Yn=Yn/ur,Dn=Dn/ur)),ur!==0);Nn++)if(qn=Math.sqrt(pn*pn+Yn*Yn+Dn*Dn),pn<0&&(qn=-qn),qn!==0){for(Nn!==rr?Ue.set(Nn,Nn-1,-qn*ur):jn!==rr&&Ue.set(Nn,Nn-1,-Ue.get(Nn,Nn-1)),pn=pn+qn,ur=pn/qn,yr=Yn/qn,er=Dn/qn,Yn=Yn/pn,Dn=Dn/pn,nn=Nn;nn=0;Ye--)if(pn=Le[Ye],Yn=Me[Ye],Yn===0)for(jn=Ye,Ue.set(Ye,Ye,1),fn=Ye-1;fn>=0;fn--){for(Xn=Ue.get(fn,fn)-pn,Dn=0,nn=jn;nn<=Ye;nn++)Dn=Dn+Ue.get(fn,nn)*Ue.get(nn,Ye);if(Me[fn]<0)er=Xn,qn=Dn;else if(jn=fn,Me[fn]===0?Ue.set(fn,Ye,Xn!==0?-Dn/Xn:-Dn/(Xt*mn)):(ur=Ue.get(fn,fn+1),yr=Ue.get(fn+1,fn),Yn=(Le[fn]-pn)*(Le[fn]-pn)+Me[fn]*Me[fn],mr=(ur*qn-er*Dn)/Yn,Ue.set(fn,Ye,mr),Ue.set(fn+1,Ye,Math.abs(ur)>Math.abs(er)?(-Dn-Xn*mr)/ur:(-qn-yr*mr)/er)),mr=Math.abs(Ue.get(fn,Ye)),Xt*mr*mr>1)for(nn=fn;nn<=Ye;nn++)Ue.set(nn,Ye,Ue.get(nn,Ye)/mr)}else if(Yn<0)for(jn=Ye-1,Math.abs(Ue.get(Ye,Ye-1))>Math.abs(Ue.get(Ye-1,Ye))?(Ue.set(Ye-1,Ye-1,Yn/Ue.get(Ye,Ye-1)),Ue.set(Ye-1,Ye,-(Ue.get(Ye,Ye)-pn)/Ue.get(Ye,Ye-1))):(gi=Tr(0,-Ue.get(Ye-1,Ye),Ue.get(Ye-1,Ye-1)-pn,Yn),Ue.set(Ye-1,Ye-1,gi[0]),Ue.set(Ye-1,Ye,gi[1])),Ue.set(Ye,Ye-1,0),Ue.set(Ye,Ye,1),fn=Ye-2;fn>=0;fn--){for(wn=0,gr=0,nn=jn;nn<=Ye;nn++)wn=wn+Ue.get(fn,nn)*Ue.get(nn,Ye-1),gr=gr+Ue.get(fn,nn)*Ue.get(nn,Ye);if(Xn=Ue.get(fn,fn)-pn,Me[fn]<0)er=Xn,Dn=wn,qn=gr;else if(jn=fn,Me[fn]===0?(gi=Tr(-wn,-gr,Xn,Yn),Ue.set(fn,Ye-1,gi[0]),Ue.set(fn,Ye,gi[1])):(ur=Ue.get(fn,fn+1),yr=Ue.get(fn+1,fn),Jn=(Le[fn]-pn)*(Le[fn]-pn)+Me[fn]*Me[fn]-Yn*Yn,Ur=(Le[fn]-pn)*2*Yn,Jn===0&&Ur===0&&(Jn=Xt*mn*(Math.abs(Xn)+Math.abs(Yn)+Math.abs(ur)+Math.abs(yr)+Math.abs(er))),gi=Tr(ur*Dn-er*wn+Yn*gr,ur*qn-er*gr-Yn*wn,Jn,Ur),Ue.set(fn,Ye-1,gi[0]),Ue.set(fn,Ye,gi[1]),Math.abs(ur)>Math.abs(er)+Math.abs(Yn)?(Ue.set(fn+1,Ye-1,(-wn-Xn*Ue.get(fn,Ye-1)+Yn*Ue.get(fn,Ye))/ur),Ue.set(fn+1,Ye,(-gr-Xn*Ue.get(fn,Ye)-Yn*Ue.get(fn,Ye-1))/ur)):(gi=Tr(-Dn-yr*Ue.get(fn,Ye-1),-qn-yr*Ue.get(fn,Ye),er,Yn),Ue.set(fn+1,Ye-1,gi[0]),Ue.set(fn+1,Ye,gi[1]))),mr=Math.max(Math.abs(Ue.get(fn,Ye-1)),Math.abs(Ue.get(fn,Ye))),Xt*mr*mr>1)for(nn=fn;nn<=Ye;nn++)Ue.set(nn,Ye-1,Ue.get(nn,Ye-1)/mr),Ue.set(nn,Ye,Ue.get(nn,Ye)/mr)}for(fn=0;fnPt)for(nn=fn;nn=xt;nn--)for(fn=xt;fn<=Pt;fn++){for(er=0,Nn=xt;Nn<=Math.min(nn,Pt);Nn++)er=er+Te.get(fn,Nn)*Ue.get(Nn,nn);Te.set(fn,nn,er)}}}function Tr(bt,Me,Le,Te){let Ue,Ye;return Math.abs(Le)>Math.abs(Te)?(Ue=Te/Le,Ye=Le+Ue*Te,[(bt+Ue*Me)/Ye,(Me-Ue*bt)/Ye]):(Ue=Le/Te,Ye=Te+Ue*Le,[(Ue*bt+Me)/Ye,(Ue*Me-bt)/Ye])}class Rr{constructor(Me){if(Me=Hn.checkMatrix(Me),!Me.isSymmetric())throw new Error("Matrix is not symmetric");let Le=Me,Te=Le.rows,Ue=new Et(Te,Te),Ye=!0,xt,Pt,Xt;for(Pt=0;Pt0),Ue.set(Pt,Pt,Math.sqrt(Math.max(Ht,0))),Xt=Pt+1;Xt=0;Xt--)for(Pt=0;Ptxt;Dn++)pn=Me.transpose().mmul(Pt).div(Pt.transpose().mmul(Pt).get(0,0)),pn=pn.div(pn.norm()),Ht=Me.mmul(pn).div(pn.transpose().mmul(pn).get(0,0)),Dn>0&&(Xt=Ht.clone().sub(Yn).pow(2).sum()),Yn=Ht.clone(),Te?(mn=Te.transpose().mmul(Ht).div(Ht.transpose().mmul(Ht).get(0,0)),mn=mn.div(mn.norm()),Pt=Te.mmul(mn).div(mn.transpose().mmul(mn).get(0,0))):Pt=Ht;if(Te){let Dn=Me.transpose().mmul(Ht).div(Ht.transpose().mmul(Ht).get(0,0));Dn=Dn.div(Dn.norm());let qn=Me.clone().sub(Ht.clone().mmul(Dn.transpose())),er=Pt.transpose().mmul(Ht).div(Ht.transpose().mmul(Ht).get(0,0)),dr=Te.clone().sub(Ht.clone().mulS(er.get(0,0)).mmul(mn.transpose()));this.t=Ht,this.p=Dn.transpose(),this.w=pn.transpose(),this.q=mn,this.u=Pt,this.s=Ht.transpose().mmul(Ht),this.xResidual=qn,this.yResidual=dr,this.betas=er}else this.w=pn.transpose(),this.s=Ht.transpose().mmul(Ht).sqrt(),Ue?this.t=Ht.clone().div(this.s.get(0,0)):this.t=Ht,this.xResidual=Me.sub(Ht.mmul(pn.transpose()))}}Dt.XA=sn,Dt.a_=Rr,Dt.yQ=Rr,Dt.Hs=At,Dt.Ec=pr,Dt.dx=pr,Dt.LU=Er,Dt.Rm=Er,Dt.y3=Et,Dt.qK=wt,Dt.pb=Ft,Dt.j=ln,Dt.sO=In,Dt.BZ=Vn,Dt.EK=Kn,Dt.Db=Zn,Dt.Fx=$n,Dt.tU=Jt,Dt.Ym=fa,Dt.rs=fa,Dt.QR=br,Dt.TB=br,Dt.oH=Wr,Dt.Sc=Wr,Dt.BN=vt,Dt.it=yn,Dt.$r=Hn,Dt.QM=oi,Dt.AV=Ka,Be=Et,Dt.GH=Ba,Dt.SO=Da,Dt.uZ=wi,Dt.yU=jr,Dt.F1=Ya,Dt.re=Bn},50371:function(St,Dt){"use strict";function Ie(){const Be=Object.assign({},arguments.length<=0?void 0:arguments[0]);for(let He=1;He{const _e=Fe[Ce];_e!==void 0&&(Be[Ce]=_e)})}return Be}Dt.Z=Ie},13845:function(St,Dt,Ie){"use strict";Ie.d(Dt,{F:function(){return Be},Z:function(){return He}});function Be(Fe){return Fe!=null&&Fe===Fe.window}function He(Fe,Ce){var _e,Pe;if(typeof window=="undefined")return 0;const ge=Ce?"scrollTop":"scrollLeft";let Ae=0;return Be(Fe)?Ae=Fe[Ce?"pageYOffset":"pageXOffset"]:Fe instanceof Document?Ae=Fe.documentElement[ge]:(Fe instanceof HTMLElement||Fe)&&(Ae=Fe[ge]),Fe&&!Be(Fe)&&typeof Ae!="number"&&(Ae=(Pe=((_e=Fe.ownerDocument)!==null&&_e!==void 0?_e:Fe).documentElement)===null||Pe===void 0?void 0:Pe[ge]),Ae}},56762:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return He}});var Be=Ie(59301);function He(){const[,Fe]=Be.useReducer(Ce=>Ce+1,0);return Fe}},68031:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return Ce}});var Be=Ie(16089);function He(_e,Pe,ge,Ae){const be=ge-Pe;return _e/=Ae/2,_e<1?be/2*_e*_e*_e+Pe:be/2*((_e-=2)*_e*_e+2)+Pe}var Fe=Ie(13845);function Ce(_e){let Pe=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const{getContainer:ge=()=>window,callback:Ae,duration:be=450}=Pe,we=ge(),pe=(0,Fe.Z)(we,!0),ye=Date.now(),xe=()=>{const te=Date.now()-ye,ne=He(te>be?be:te,pe,_e,be);(0,Fe.F)(we)?we.scrollTo(window.pageXOffset,ne):we instanceof Document||we.constructor.name==="HTMLDocument"?we.documentElement.scrollTop=ne:we.scrollTop=ne,te{const{prefixCls:le,className:oe,popupClassName:de,dropdownClassName:he,children:ie,dataSource:ue}=te,ve=(0,Fe.Z)(ie);let Se;ve.length===1&&(0,ge.l$)(ve[0])&&!pe(ve[0])&&([Se]=ve);const De=Se?()=>Se:void 0;let Re;ve.length&&pe(ve[0])?Re=ie:Re=ue?ue.map(Ge=>{if((0,ge.l$)(Ge))return Ge;switch(typeof Ge){case"string":return _e.createElement(we,{key:Ge,value:Ge},Ge);case"object":{const{value:Xe}=Ge;return _e.createElement(we,{key:Xe,value:Xe},Ge.text)}default:return}}):[];const{getPrefixCls:Ne}=_e.useContext(Ae.E_),ze=Ne("select",le);return _e.createElement(be.default,Object.assign({ref:ne,suffixIcon:null},(0,Ce.Z)(te,["dataSource","dropdownClassName"]),{prefixCls:ze,popupClassName:de||he,className:He()(`${ze}-auto-complete`,oe),mode:be.default.SECRET_COMBOBOX_MODE_DO_NOT_USE},{getInputElement:De}),Re)},xe=_e.forwardRef(ye),ce=(0,Pe.Z)(xe);xe.Option=we,xe._InternalPanelDoNotUseOrYouWillBeFired=ce,Dt.Z=xe},19842:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return li}});var Be=Ie(94480),He=Ie(59301),Fe=Ie(33853),Ce=Ie(58617),_e=Ie(38819),Pe=Ie(92310),ge=Ie.n(Pe),Ae=Ie(54476),be=Ie(42978),we=Ie(75931),pe=Ie(77861),ye=Ie(17115),xe=Ie(90782),ce=Ie(6089),te=Ie(18929),ne=He.createContext(null),le=ne,oe=Ie(76190),de=Ie(20068),he=Ie(33885),ie="__rc_cascader_search_mark__",ue=function(hr,Tr,Rr){var fa=Rr.label;return Tr.some(function(bt){return String(bt[fa]).toLowerCase().includes(hr.toLowerCase())})},ve=function(hr,Tr,Rr,fa){return Tr.map(function(bt){return bt[fa.label]}).join(" / ")},Se=function(zn,hr,Tr,Rr,fa,bt){var Me=fa.filter,Le=Me===void 0?ue:Me,Te=fa.render,Ue=Te===void 0?ve:Te,Ye=fa.limit,xt=Ye===void 0?50:Ye,Pt=fa.sort;return He.useMemo(function(){var Xt=[];if(!zn)return[];function Ht(mn,pn){var Yn=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;mn.forEach(function(Dn){if(!(!Pt&&xt!==!1&&xt>0&&Xt.length>=xt)){var qn=[].concat((0,Be.Z)(pn),[Dn]),er=Dn[Tr.children],dr=Yn||Dn.disabled;if((!er||er.length===0||bt)&&Le(zn,qn,{label:Tr.label})){var fn;Xt.push((0,he.Z)((0,he.Z)({},Dn),{},(fn={disabled:dr},(0,de.Z)(fn,Tr.label,Ue(zn,qn,Rr,Tr)),(0,de.Z)(fn,ie,qn),(0,de.Z)(fn,Tr.children,void 0),fn)))}er&&Ht(Dn[Tr.children],qn,dr)}})}return Ht(hr,[]),Pt&&Xt.sort(function(mn,pn){return Pt(mn[ie],pn[ie],zn,Tr)}),xt!==!1&&xt>0?Xt.slice(0,xt):Xt},[zn,hr,Tr,Rr,Ue,bt,Le,Pt,xt])},De="__RC_CASCADER_SPLIT__",Re="SHOW_PARENT",Ne="SHOW_CHILD";function ze(zn){return zn.join(De)}function Ge(zn){return zn.map(ze)}function Xe(zn){return zn.split(De)}function Qe(zn){var hr=zn||{},Tr=hr.label,Rr=hr.value,fa=hr.children,bt=Rr||"value";return{label:Tr||"label",value:bt,key:bt,children:fa||"children"}}function nt(zn,hr){var Tr,Rr;return(Tr=zn.isLeaf)!==null&&Tr!==void 0?Tr:!((Rr=zn[hr.children])!==null&&Rr!==void 0&&Rr.length)}function $e(zn){var hr=zn.parentElement;if(hr){var Tr=zn.offsetTop-hr.offsetTop;Tr-hr.scrollTop<0?hr.scrollTo({top:Tr}):Tr+zn.offsetHeight-hr.scrollTop>hr.offsetHeight&&hr.scrollTo({top:Tr+zn.offsetHeight-hr.offsetHeight})}}function qe(zn,hr){return zn.map(function(Tr){var Rr;return(Rr=Tr[ie])===null||Rr===void 0?void 0:Rr.map(function(fa){return fa[hr.value]})})}function ot(zn,hr,Tr){var Rr=new Set(zn),fa=hr();return zn.filter(function(bt){var Me=fa[bt],Le=Me?Me.parent:null,Te=Me?Me.children:null;return Me&&Me.node.disabled?!0:Tr===Ne?!(Te&&Te.some(function(Ue){return Ue.key&&Rr.has(Ue.key)})):!(Le&&!Le.node.disabled&&Rr.has(Le.key))})}function at(zn,hr,Tr){for(var Rr=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,fa=hr,bt=[],Me=function(){var Ue,Ye,xt,Pt=zn[Le],Xt=(Ue=fa)===null||Ue===void 0?void 0:Ue.findIndex(function(mn){var pn=mn[Tr.value];return Rr?String(pn)===String(Pt):pn===Pt}),Ht=Xt!==-1?(Ye=fa)===null||Ye===void 0?void 0:Ye[Xt]:null;bt.push({value:(xt=Ht==null?void 0:Ht[Tr.value])!==null&&xt!==void 0?xt:Pt,index:Xt,option:Ht}),fa=Ht==null?void 0:Ht[Tr.children]},Le=0;Le1){var nn=Ht.slice(0,-1);Dn(nn)}else Ue(!1)},dr=function(){var nn,Nn=((nn=pn[mn])===null||nn===void 0?void 0:nn[Tr.children])||[],jn=Nn.find(function(mr){return!mr.disabled});if(jn){var rr=[].concat((0,Be.Z)(Ht),[jn[Tr.value]]);Dn(rr)}};He.useImperativeHandle(zn,function(){return{onKeyDown:function(nn){var Nn=nn.which;switch(Nn){case rn.Z.UP:case rn.Z.DOWN:{var jn=0;Nn===rn.Z.UP?jn=-1:Nn===rn.Z.DOWN&&(jn=1),jn!==0&&qn(jn);break}case rn.Z.LEFT:{if(Te)break;xt?dr():er();break}case rn.Z.RIGHT:{if(Te)break;xt?er():dr();break}case rn.Z.BACKSPACE:{Te||er();break}case rn.Z.ENTER:{if(Ht.length){var rr=pn[mn],mr=(rr==null?void 0:rr[ie])||[];mr.length?bt(mr.map(function(Xn){return Xn[Tr.value]}),mr[mr.length-1]):bt(Ht,pn[mn])}break}case rn.Z.ESC:Ue(!1),Ye&&nn.stopPropagation()}},onKeyUp:function(){}}})},On=He.forwardRef(function(zn,hr){var Tr,Rr,fa,bt,Me=(0,pe.lk)(),Le=Me.prefixCls,Te=Me.multiple,Ue=Me.searchValue,Ye=Me.toggleOpen,xt=Me.notFoundContent,Pt=Me.direction,Xt=Me.open,Ht=He.useRef(),mn=Pt==="rtl",pn=He.useContext(le),Yn=pn.options,Dn=pn.values,qn=pn.halfValues,er=pn.fieldNames,dr=pn.changeOnSelect,fn=pn.onSelect,nn=pn.searchOptions,Nn=pn.dropdownPrefixCls,jn=pn.loadData,rr=pn.expandTrigger,mr=Nn||Le,Xn=He.useState([]),ur=(0,be.Z)(Xn,2),yr=ur[0],wn=ur[1],gr=function(Xi){if(!(!jn||Ue)){var Ti=at(Xi,Yn,er),Jo=Ti.map(function(Ts){var Bs=Ts.option;return Bs}),Ro=Jo[Jo.length-1];if(Ro&&!nt(Ro,er)){var Lo=ze(Xi);wn(function(Ts){return[].concat((0,Be.Z)(Ts),[Lo])}),jn(Jo)}}};He.useEffect(function(){yr.length&&yr.forEach(function(Uo){var Xi=Xe(Uo),Ti=at(Xi,Yn,er,!0).map(function(Ro){var Lo=Ro.option;return Lo}),Jo=Ti[Ti.length-1];(!Jo||Jo[er.children]||nt(Jo,er))&&wn(function(Ro){return Ro.filter(function(Lo){return Lo!==Uo})})})},[Yn,yr,er]);var Jn=He.useMemo(function(){return new Set(Ge(Dn))},[Dn]),Ur=He.useMemo(function(){return new Set(Ge(qn))},[qn]),Ja=Ot(),gi=(0,be.Z)(Ja,2),ui=gi[0],Hr=gi[1],wa=function(Xi){Hr(Xi),gr(Xi)},Ta=function(Xi){var Ti=Xi.disabled,Jo=nt(Xi,er);return!Ti&&(Jo||dr||Te)},ua=function(Xi,Ti){var Jo=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;fn(Xi),!Te&&(Ti||dr&&(rr==="hover"||Jo))&&Ye(!1)},qa=He.useMemo(function(){return Ue?nn:Yn},[Ue,nn,Yn]),zi=He.useMemo(function(){for(var Uo=[{options:qa}],Xi=qa,Ti=qe(Xi,er),Jo=function(){var Bs=ui[Ro],zr=Xi.find(function(Vr,Na){return(Ti[Na]?ze(Ti[Na]):Vr[er.value])===Bs}),Ir=zr==null?void 0:zr[er.children];if(!(Ir!=null&&Ir.length))return"break";Xi=Ir,Uo.push({options:Ir})},Ro=0;Ro":yr,gr=zn.loadingIcon,Jn=zn.children,Ur=zn.dropdownMatchSelectWidth,Ja=Ur===void 0?!1:Ur,gi=zn.showCheckedStrategy,ui=gi===void 0?Re:gi,Hr=(0,we.Z)(zn,It),wa=(0,ye.ZP)(Tr),Ta=!!xt,ua=(0,te.Z)(Me,{value:Le,postState:Zt}),qa=(0,be.Z)(ua,2),zi=qa[0],Fa=qa[1],Ui=He.useMemo(function(){return Qe(bt)},[JSON.stringify(bt)]),Yi=He.useMemo(function(){return Dn||[]},[Dn]),Zr=ut(Yi,Ui),oo=He.useCallback(function(ya){var za=Zr();return ya.map(function(Ga){var Hi=za[Ga].nodes;return Hi.map(function(Io){return Io[Ui.value]})})},[Zr,Ui]),_s=(0,te.Z)("",{value:Ht,postState:function(za){return za||""}}),Uo=(0,be.Z)(_s,2),Xi=Uo[0],Ti=Uo[1],Jo=function(za,Ga){Ti(za),Ga.source!=="blur"&&mn&&mn(za)},Ro=dt(pn),Lo=(0,be.Z)(Ro,2),Ts=Lo[0],Bs=Lo[1],zr=Se(Xi,Yi,Ui,qn||fa,Bs,Te),Ir=yt(Yi,Ui),Vr=He.useMemo(function(){var ya=Ir(zi),za=(0,be.Z)(ya,2),Ga=za[0],Hi=za[1];if(!Ta||!zi.length)return[Ga,[],Hi];var Io=Ge(Ga),us=Zr(),hs=(0,xe.S)(Io,!0,us),Ws=hs.checkedKeys,js=hs.halfCheckedKeys;return[oo(Ws),oo(js),Hi]},[Ta,zi,Zr,oo,Ir]),Na=(0,be.Z)(Vr,3),ka=Na[0],Ai=Na[1],va=Na[2],Ri=He.useMemo(function(){var ya=Ge(ka),za=ot(ya,Zr,ui);return[].concat((0,Be.Z)(va),(0,Be.Z)(oo(za)))},[ka,Zr,oo,va,ui]),pi=lt(Ri,Yi,Ui,Ta,Ye),xo=(0,ce.Z)(function(ya){if(Fa(ya),Ue){var za=Zt(ya),Ga=za.map(function(us){return at(us,Yi,Ui).map(function(hs){return hs.option})}),Hi=Ta?za:za[0],Io=Ta?Ga:Ga[0];Ue(Hi,Io)}}),lo=(0,ce.Z)(function(ya){if((!Ta||Xt)&&Ti(""),!Ta)xo(ya);else{var za=ze(ya),Ga=Ge(ka),Hi=Ge(Ai),Io=Ga.includes(za),us=va.some(function(Po){return ze(Po)===za}),hs=ka,Ws=va;if(us&&!Io)Ws=va.filter(function(Po){return ze(Po)!==za});else{var js=Io?Ga.filter(function(Po){return Po!==za}):[].concat((0,Be.Z)(Ga),[za]),zl=Zr(),al;if(Io){var yo=(0,xe.S)(js,{checked:!1,halfCheckedKeys:Hi},zl);al=yo.checkedKeys}else{var ko=(0,xe.S)(js,!0,zl);al=ko.checkedKeys}var gs=ot(al,Zr,ui);hs=oo(gs)}xo([].concat((0,Be.Z)(Ws),(0,Be.Z)(hs)))}}),Bi=function(za,Ga){if(Ga.type==="clear"){xo([]);return}var Hi=Ga.values[0],Io=Hi.valueCells;lo(Io)},ho=fn!==void 0?fn:dr,po=Nn||nn,ds=mr||rr,Fo=function(za){Xn==null||Xn(za),ur==null||ur(za)},fs=He.useMemo(function(){return{options:Yi,fieldNames:Ui,values:ka,halfValues:Ai,changeOnSelect:Te,onSelect:lo,checkable:xt,searchOptions:zr,dropdownPrefixCls:qn,loadData:er,expandTrigger:Yn,expandIcon:wn,loadingIcon:gr,dropdownMenuColumnStyle:jn}},[Yi,Ui,ka,Ai,Te,lo,xt,zr,qn,er,Yn,wn,gr,jn]),Gs=!(Xi?zr:Yi).length,Jr=Xi&&Bs.matchInputWidth||Gs?{}:{minWidth:"auto"};return He.createElement(le.Provider,{value:fs},He.createElement(pe.Ac,(0,Ae.Z)({},Hr,{ref:hr,id:wa,prefixCls:fa,autoClearSearchValue:Xt,dropdownMatchSelectWidth:Ja,dropdownStyle:Jr,displayValues:pi,onDisplayValuesChange:Bi,mode:Ta?"multiple":void 0,searchValue:Xi,onSearch:Jo,showSearch:Ts,OptionList:Rn,emptyOptions:Gs,open:ho,dropdownClassName:po,placement:ds,onDropdownVisibleChange:Fo,getRawInputElement:function(){return Jn}})))});vt.SHOW_PARENT=Re,vt.SHOW_CHILD=Ne;var At=vt,Qt=At,Ft=Ie(2738),wt=Ie(62892),ln=Ie(53487),In=Ie(19080),Kn=Ie(36355),Vn=Ie(93891),Zn=Ie(1684),$n=Ie(19716),Jt=Ie(32441),yn=Ie(14154),Hn=Ie(58582),Bn=Ie(84443),Er=Ie(66339),Fr=Ie(33234),br=Ie(98447),Wr=Ie(17313),Da=Ie(74207),Ya=Ie(83116);const Ba=zn=>{const{prefixCls:hr,componentCls:Tr,antCls:Rr}=zn,fa=`${Tr}-menu-item`,bt=` &${fa}-expand ${fa}-expand-icon, ${fa}-loading-icon `;return[{[Tr]:{width:zn.controlWidth}},{[`${Tr}-dropdown`]:[(0,br.C2)(`${hr}-checkbox`,zn),{[`&${Rr}-select-dropdown`]:{padding:0}},{[Tr]:{"&-checkbox":{top:0,marginInlineEnd:zn.paddingXS},"&-menus":{display:"flex",flexWrap:"nowrap",alignItems:"flex-start",[`&${Tr}-menu-empty`]:{[`${Tr}-menu`]:{width:"100%",height:"auto",[fa]:{color:zn.colorTextDisabled}}}},"&-menu":{flexGrow:1,minWidth:zn.controlItemWidth,height:zn.dropdownHeight,margin:0,padding:zn.menuPadding,overflow:"auto",verticalAlign:"top",listStyle:"none","-ms-overflow-style":"-ms-autohiding-scrollbar","&:not(:last-child)":{borderInlineEnd:`${zn.lineWidth}px ${zn.lineType} ${zn.colorSplit}`},"&-item":Object.assign(Object.assign({},Wr.vS),{display:"flex",flexWrap:"nowrap",alignItems:"center",padding:zn.optionPadding,lineHeight:zn.lineHeight,cursor:"pointer",transition:`all ${zn.motionDurationMid}`,borderRadius:zn.borderRadiusSM,"&:hover":{background:zn.controlItemBgHover},"&-disabled":{color:zn.colorTextDisabled,cursor:"not-allowed","&:hover":{background:"transparent"},[bt]:{color:zn.colorTextDisabled}},[`&-active:not(${fa}-disabled)`]:{"&, &:hover":{fontWeight:zn.optionSelectedFontWeight,backgroundColor:zn.optionSelectedBg}},"&-content":{flex:"auto"},[bt]:{marginInlineStart:zn.paddingXXS,color:zn.colorTextDescription,fontSize:zn.fontSizeIcon},"&-keyword":{color:zn.colorHighlight}})}}}]},{[`${Tr}-dropdown-rtl`]:{direction:"rtl"}},(0,Da.c)(zn)]};var Ia=(0,Ya.Z)("Cascader",zn=>[Ba(zn)],zn=>{const hr=Math.round((zn.controlHeight-zn.fontSize*zn.lineHeight)/2);return{controlWidth:184,controlItemWidth:111,dropdownHeight:180,optionSelectedBg:zn.controlItemBgActive,optionSelectedFontWeight:zn.fontWeightStrong,optionPadding:`${hr}px ${zn.paddingSM}px`,menuPadding:zn.paddingXXS}}),Ii=function(zn,hr){var Tr={};for(var Rr in zn)Object.prototype.hasOwnProperty.call(zn,Rr)&&hr.indexOf(Rr)<0&&(Tr[Rr]=zn[Rr]);if(zn!=null&&typeof Object.getOwnPropertySymbols=="function")for(var fa=0,Rr=Object.getOwnPropertySymbols(zn);faTe===0?[Le]:[].concat((0,Be.Z)(Me),[hr,Le]),[]),fa=[];let bt=0;return Rr.forEach((Me,Le)=>{const Te=bt+Me.length;let Ue=zn.slice(bt,Te);bt=Te,Le%2===1&&(Ue=He.createElement("span",{className:`${Tr}-menu-item-keyword`,key:`separator-${Le}`},Ue)),fa.push(Ue)}),fa}const oi=(zn,hr,Tr,Rr)=>{const fa=[],bt=zn.toLowerCase();return hr.forEach((Me,Le)=>{Le!==0&&fa.push(" / ");let Te=Me[Rr.label];const Ue=typeof Te;(Ue==="string"||Ue==="number")&&(Te=Ka(String(Te),bt,Tr)),fa.push(Te)}),fa},pr=He.forwardRef((zn,hr)=>{const{prefixCls:Tr,size:Rr,disabled:fa,className:bt,rootClassName:Me,multiple:Le,bordered:Te=!0,transitionName:Ue,choiceTransitionName:Ye="",popupClassName:xt,dropdownClassName:Pt,expandIcon:Xt,placement:Ht,showSearch:mn,allowClear:pn=!0,notFoundContent:Yn,direction:Dn,getPopupContainer:qn,status:er,showArrow:dr,builtinPlacements:fn,style:nn}=zn,Nn=Ii(zn,["prefixCls","size","disabled","className","rootClassName","multiple","bordered","transitionName","choiceTransitionName","popupClassName","dropdownClassName","expandIcon","placement","showSearch","allowClear","notFoundContent","direction","getPopupContainer","status","showArrow","builtinPlacements","style"]),jn=(0,Ft.Z)(Nn,["suffixIcon"]),{getPopupContainer:rr,getPrefixCls:mr,renderEmpty:Xn,direction:ur,popupOverflow:yr,cascader:wn}=He.useContext(Kn.E_),gr=Dn||ur,Jn=gr==="rtl",{status:Ur,hasFeedback:Ja,isFormItemInput:gi,feedbackIcon:ui}=He.useContext(Jt.aM),Hr=(0,In.F)(Ur,er),wa=Yn||(Xn==null?void 0:Xn("Cascader"))||He.createElement(Vn.Z,{componentName:"Cascader"}),Ta=mr(),ua=mr("select",Tr),qa=mr("cascader",Tr),[zi,Fa]=(0,yn.Z)(ua),[Ui]=Ia(qa),{compactSize:Yi,compactItemClassnames:Zr}=(0,Fr.ri)(ua,Dn),oo=ge()(xt||Pt,`${qa}-dropdown`,{[`${qa}-dropdown-rtl`]:gr==="rtl"},Me,Fa),_s=He.useMemo(()=>{if(!mn)return mn;let va={render:oi};return typeof mn=="object"&&(va=Object.assign(Object.assign({},va),mn)),va},[mn]),Uo=(0,$n.Z)(va=>{var Ri;return(Ri=Rr!=null?Rr:Yi)!==null&&Ri!==void 0?Ri:va}),Xi=He.useContext(Zn.Z),Ti=fa!=null?fa:Xi;let Jo=Xt;Xt||(Jo=Jn?He.createElement(Fe.Z,null):He.createElement(_e.Z,null));const Ro=He.createElement("span",{className:`${ua}-menu-item-loading-icon`},He.createElement(Ce.Z,{spin:!0})),Lo=He.useMemo(()=>Le?He.createElement("span",{className:`${qa}-checkbox-inner`}):!1,[Le]),Ts=(0,Bn.Z)(zn.suffixIcon,dr),{suffixIcon:Bs,removeIcon:zr,clearIcon:Ir}=(0,Er.Z)(Object.assign(Object.assign({},zn),{hasFeedback:Ja,feedbackIcon:ui,showSuffixIcon:Ts,multiple:Le,prefixCls:ua,componentName:"Cascader"})),Vr=He.useMemo(()=>Ht!==void 0?Ht:Jn?"bottomRight":"bottomLeft",[Ht,Jn]),Na=(0,Hn.Z)(fn,yr),ka=pn===!0?{clearIcon:Ir}:pn,Ai=He.createElement(Qt,Object.assign({prefixCls:ua,className:ge()(!Tr&&qa,{[`${ua}-lg`]:Uo==="large",[`${ua}-sm`]:Uo==="small",[`${ua}-rtl`]:Jn,[`${ua}-borderless`]:!Te,[`${ua}-in-form-item`]:gi},(0,In.Z)(ua,Hr,Ja),Zr,wn==null?void 0:wn.className,bt,Me,Fa),disabled:Ti,style:Object.assign(Object.assign({},wn==null?void 0:wn.style),nn)},jn,{builtinPlacements:Na,direction:gr,placement:Vr,notFoundContent:wa,allowClear:ka,showSearch:_s,expandIcon:Jo,suffixIcon:Bs,removeIcon:zr,loadingIcon:Ro,checkable:Lo,dropdownClassName:oo,dropdownPrefixCls:Tr||qa,choiceTransitionName:(0,wt.m)(Ta,"",Ye),transitionName:(0,wt.m)(Ta,"slide-up",Ue),getPopupContainer:qn||rr,ref:hr}));return Ui(zi(Ai))}),vr=(0,ln.Z)(pr);pr.SHOW_PARENT=jr,pr.SHOW_CHILD=wi,pr._InternalPanelDoNotUseOrYouWillBeFired=vr;var li=pr},24905:function(St,Dt,Ie){"use strict";Ie.d(Dt,{default:function(){return Se}});var Be=Ie(92310),He=Ie.n(Be),Fe=Ie(5630),Ce=Ie(59301),_e=Ie(36355),Pe=Ie(1684),ge=Ie(32441),be=Ce.createContext(null),we=Ie(98447),pe=Ie(14088),ye=Ie(4572),xe=function(De,Re){var Ne={};for(var ze in De)Object.prototype.hasOwnProperty.call(De,ze)&&Re.indexOf(ze)<0&&(Ne[ze]=De[ze]);if(De!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Ge=0,ze=Object.getOwnPropertySymbols(De);Ge{var Ne;const{prefixCls:ze,className:Ge,rootClassName:Xe,children:Qe,indeterminate:nt=!1,style:$e,onMouseEnter:qe,onMouseLeave:ot,skipGroup:at=!1,disabled:lt}=De,rt=xe(De,["prefixCls","className","rootClassName","children","indeterminate","style","onMouseEnter","onMouseLeave","skipGroup","disabled"]),{getPrefixCls:ut,direction:yt,checkbox:ft}=Ce.useContext(_e.E_),dt=Ce.useContext(be),{isFormItemInput:ht}=Ce.useContext(ge.aM),Ut=Ce.useContext(Pe.Z),Kt=(Ne=(dt==null?void 0:dt.disabled)||lt)!==null&&Ne!==void 0?Ne:Ut,qt=Ce.useRef(rt.value);Ce.useEffect(()=>{dt==null||dt.registerValue(rt.value)},[]),Ce.useEffect(()=>{if(!at)return rt.value!==qt.current&&(dt==null||dt.cancelValue(qt.current),dt==null||dt.registerValue(rt.value),qt.current=rt.value),()=>dt==null?void 0:dt.cancelValue(rt.value)},[rt.value]);const vn=ut("checkbox",ze),[Ot,rn]=(0,we.ZP)(vn),an=Object.assign({},rt);dt&&!at&&(an.onChange=function(){rt.onChange&&rt.onChange.apply(rt,arguments),dt.toggleOption&&dt.toggleOption({label:Qe,value:rt.value})},an.name=dt.name,an.checked=dt.value.includes(rt.value));const On=He()(`${vn}-wrapper`,{[`${vn}-rtl`]:yt==="rtl",[`${vn}-wrapper-checked`]:an.checked,[`${vn}-wrapper-disabled`]:Kt,[`${vn}-wrapper-in-form-item`]:ht},ft==null?void 0:ft.className,Ge,Xe,rn),Rn=He()({[`${vn}-indeterminate`]:nt},ye.A,rn),sn=nt?"mixed":void 0;return Ot(Ce.createElement(pe.Z,{component:"Checkbox",disabled:Kt},Ce.createElement("label",{className:On,style:Object.assign(Object.assign({},ft==null?void 0:ft.style),$e),onMouseEnter:qe,onMouseLeave:ot},Ce.createElement(Fe.Z,Object.assign({"aria-checked":sn},an,{prefixCls:vn,className:Rn,disabled:Kt,ref:Re})),Qe!==void 0&&Ce.createElement("span",null,Qe))))};var ne=Ce.forwardRef(ce),le=Ie(94480),oe=Ie(2738),de=function(De,Re){var Ne={};for(var ze in De)Object.prototype.hasOwnProperty.call(De,ze)&&Re.indexOf(ze)<0&&(Ne[ze]=De[ze]);if(De!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Ge=0,ze=Object.getOwnPropertySymbols(De);Ge{const{defaultValue:Ne,children:ze,options:Ge=[],prefixCls:Xe,className:Qe,rootClassName:nt,style:$e,onChange:qe}=De,ot=de(De,["defaultValue","children","options","prefixCls","className","rootClassName","style","onChange"]),{getPrefixCls:at,direction:lt}=Ce.useContext(_e.E_),[rt,ut]=Ce.useState(ot.value||Ne||[]),[yt,ft]=Ce.useState([]);Ce.useEffect(()=>{"value"in ot&&ut(ot.value||[])},[ot.value]);const dt=Ce.useMemo(()=>Ge.map(tn=>typeof tn=="string"||typeof tn=="number"?{label:tn,value:tn}:tn),[Ge]),ht=tn=>{ft(Gt=>Gt.filter(It=>It!==tn))},Ut=tn=>{ft(Gt=>[].concat((0,le.Z)(Gt),[tn]))},Kt=tn=>{const Gt=rt.indexOf(tn.value),It=(0,le.Z)(rt);Gt===-1?It.push(tn.value):It.splice(Gt,1),"value"in ot||ut(It),qe==null||qe(It.filter(Et=>yt.includes(Et)).sort((Et,Zt)=>{const vt=dt.findIndex(Qt=>Qt.value===Et),At=dt.findIndex(Qt=>Qt.value===Zt);return vt-At}))},qt=at("checkbox",Xe),vn=`${qt}-group`,[Ot,rn]=(0,we.ZP)(qt),an=(0,oe.Z)(ot,["value","disabled"]),On=Ge.length?dt.map(tn=>Ce.createElement(ne,{prefixCls:qt,key:tn.value.toString(),disabled:"disabled"in tn?tn.disabled:ot.disabled,value:tn.value,checked:rt.includes(tn.value),onChange:tn.onChange,className:`${vn}-item`,style:tn.style,title:tn.title},tn.label)):ze,Rn={toggleOption:Kt,value:rt,disabled:ot.disabled,name:ot.name,registerValue:Ut,cancelValue:ht},sn=He()(vn,{[`${vn}-rtl`]:lt==="rtl"},Qe,nt,rn);return Ot(Ce.createElement("div",Object.assign({className:sn,style:$e},an,{ref:Re}),Ce.createElement(be.Provider,{value:Rn},On)))},ie=Ce.forwardRef(he);var ue=Ce.memo(ie);const ve=ne;ve.Group=ue,ve.__ANT_CHECKBOX=!0;var Se=ve},98447:function(St,Dt,Ie){"use strict";Ie.d(Dt,{C2:function(){return _e}});var Be=Ie(17313),He=Ie(37613),Fe=Ie(83116);const Ce=Pe=>{const{checkboxCls:ge}=Pe,Ae=`${ge}-wrapper`;return[{[`${ge}-group`]:Object.assign(Object.assign({},(0,Be.Wf)(Pe)),{display:"inline-flex",flexWrap:"wrap",columnGap:Pe.marginXS,[`> ${Pe.antCls}-row`]:{flex:1}}),[Ae]:Object.assign(Object.assign({},(0,Be.Wf)(Pe)),{display:"inline-flex",alignItems:"baseline",cursor:"pointer","&:after":{display:"inline-block",width:0,overflow:"hidden",content:"'\\a0'"},[`& + ${Ae}`]:{marginInlineStart:0},[`&${Ae}-in-form-item`]:{'input[type="checkbox"]':{width:14,height:14}}}),[ge]:Object.assign(Object.assign({},(0,Be.Wf)(Pe)),{position:"relative",whiteSpace:"nowrap",lineHeight:1,cursor:"pointer",borderRadius:Pe.borderRadiusSM,alignSelf:"center",[`${ge}-input`]:{position:"absolute",inset:0,zIndex:1,cursor:"pointer",opacity:0,margin:0,[`&:focus-visible + ${ge}-inner`]:Object.assign({},(0,Be.oN)(Pe))},[`${ge}-inner`]:{boxSizing:"border-box",position:"relative",top:0,insetInlineStart:0,display:"block",width:Pe.checkboxSize,height:Pe.checkboxSize,direction:"ltr",backgroundColor:Pe.colorBgContainer,border:`${Pe.lineWidth}px ${Pe.lineType} ${Pe.colorBorder}`,borderRadius:Pe.borderRadiusSM,borderCollapse:"separate",transition:`all ${Pe.motionDurationSlow}`,"&:after":{boxSizing:"border-box",position:"absolute",top:"50%",insetInlineStart:"21.5%",display:"table",width:Pe.checkboxSize/14*5,height:Pe.checkboxSize/14*8,border:`${Pe.lineWidthBold}px solid ${Pe.colorWhite}`,borderTop:0,borderInlineStart:0,transform:"rotate(45deg) scale(0) translate(-50%,-50%)",opacity:0,content:'""',transition:`all ${Pe.motionDurationFast} ${Pe.motionEaseInBack}, opacity ${Pe.motionDurationFast}`}},"& + span":{paddingInlineStart:Pe.paddingXS,paddingInlineEnd:Pe.paddingXS}})},{[` ${Ae}:not(${Ae}-disabled), ${ge}:not(${ge}-disabled) `]:{[`&:hover ${ge}-inner`]:{borderColor:Pe.colorPrimary}},[`${Ae}:not(${Ae}-disabled)`]:{[`&:hover ${ge}-checked:not(${ge}-disabled) ${ge}-inner`]:{backgroundColor:Pe.colorPrimaryHover,borderColor:"transparent"},[`&:hover ${ge}-checked:not(${ge}-disabled):after`]:{borderColor:Pe.colorPrimaryHover}}},{[`${ge}-checked`]:{[`${ge}-inner`]:{backgroundColor:Pe.colorPrimary,borderColor:Pe.colorPrimary,"&:after":{opacity:1,transform:"rotate(45deg) scale(1) translate(-50%,-50%)",transition:`all ${Pe.motionDurationMid} ${Pe.motionEaseOutBack} ${Pe.motionDurationFast}`}}},[` ${Ae}-checked:not(${Ae}-disabled), ${ge}-checked:not(${ge}-disabled) `]:{[`&:hover ${ge}-inner`]:{backgroundColor:Pe.colorPrimaryHover,borderColor:"transparent"}}},{[ge]:{"&-indeterminate":{[`${ge}-inner`]:{backgroundColor:Pe.colorBgContainer,borderColor:Pe.colorBorder,"&:after":{top:"50%",insetInlineStart:"50%",width:Pe.fontSizeLG/2,height:Pe.fontSizeLG/2,backgroundColor:Pe.colorPrimary,border:0,transform:"translate(-50%, -50%) scale(1)",opacity:1,content:'""'}}}}},{[`${Ae}-disabled`]:{cursor:"not-allowed"},[`${ge}-disabled`]:{[`&, ${ge}-input`]:{cursor:"not-allowed",pointerEvents:"none"},[`${ge}-inner`]:{background:Pe.colorBgContainerDisabled,borderColor:Pe.colorBorder,"&:after":{borderColor:Pe.colorTextDisabled}},"&:after":{display:"none"},"& + span":{color:Pe.colorTextDisabled},[`&${ge}-indeterminate ${ge}-inner::after`]:{background:Pe.colorTextDisabled}}}]};function _e(Pe,ge){const Ae=(0,He.TS)(ge,{checkboxCls:`.${Pe}`,checkboxSize:ge.controlInteractiveSize});return[Ce(Ae)]}Dt.ZP=(0,Fe.Z)("Checkbox",(Pe,ge)=>{let{prefixCls:Ae}=ge;return[_e(Ae,Pe)]})},5083:function(St,Dt,Ie){"use strict";Ie.d(Dt,{default:function(){return Uh}});var Be=Ie(66649),He=Ie.n(Be),Fe=Ie(48736),Ce=Ie(9007),_e=Ie.n(Ce),Pe=Ie(50991),ge=Ie.n(Pe),Ae=Ie(9084),be=Ie.n(Ae),we=Ie(58626),pe=Ie.n(we),ye=Ie(13477),xe=Ie.n(ye),ce=Ie(64796),te=Ie.n(ce);He().extend(te()),He().extend(xe()),He().extend(_e()),He().extend(ge()),He().extend(be()),He().extend(pe()),He().extend(function(Ct,Nt){var zt=Nt.prototype,Pn=zt.format;zt.format=function(lr){var or=(lr||"").replace("Wo","wo");return Pn.bind(this)(or)}});var ne={bn_BD:"bn-bd",by_BY:"be",en_GB:"en-gb",en_US:"en",fr_BE:"fr",fr_CA:"fr-ca",hy_AM:"hy-am",kmr_IQ:"ku",nl_BE:"nl-be",pt_BR:"pt-br",zh_CN:"zh-cn",zh_HK:"zh-hk",zh_TW:"zh-tw"},le=function(Nt){var zt=ne[Nt];return zt||Nt.split("_")[0]},oe=function(){(0,Fe.ET)(!1,"Not match any format. Please help to fire a issue about this.")},de={getNow:function(){return He()()},getFixedDate:function(Nt){return He()(Nt,["YYYY-M-DD","YYYY-MM-DD"])},getEndDate:function(Nt){return Nt.endOf("month")},getWeekDay:function(Nt){var zt=Nt.locale("en");return zt.weekday()+zt.localeData().firstDayOfWeek()},getYear:function(Nt){return Nt.year()},getMonth:function(Nt){return Nt.month()},getDate:function(Nt){return Nt.date()},getHour:function(Nt){return Nt.hour()},getMinute:function(Nt){return Nt.minute()},getSecond:function(Nt){return Nt.second()},addYear:function(Nt,zt){return Nt.add(zt,"year")},addMonth:function(Nt,zt){return Nt.add(zt,"month")},addDate:function(Nt,zt){return Nt.add(zt,"day")},setYear:function(Nt,zt){return Nt.year(zt)},setMonth:function(Nt,zt){return Nt.month(zt)},setDate:function(Nt,zt){return Nt.date(zt)},setHour:function(Nt,zt){return Nt.hour(zt)},setMinute:function(Nt,zt){return Nt.minute(zt)},setSecond:function(Nt,zt){return Nt.second(zt)},isAfter:function(Nt,zt){return Nt.isAfter(zt)},isValidate:function(Nt){return Nt.isValid()},locale:{getWeekFirstDay:function(Nt){return He()().locale(le(Nt)).localeData().firstDayOfWeek()},getWeekFirstDate:function(Nt,zt){return zt.locale(le(Nt)).weekday(0)},getWeek:function(Nt,zt){return zt.locale(le(Nt)).week()},getShortWeekDays:function(Nt){return He()().locale(le(Nt)).localeData().weekdaysMin()},getShortMonths:function(Nt){return He()().locale(le(Nt)).localeData().monthsShort()},format:function(Nt,zt,Pn){return zt.locale(le(Nt)).format(Pn)},parse:function(Nt,zt,Pn){for(var Mn=le(Nt),lr=0;lr1&&(or=Nt.addDate(or,-7)),or}function Jt(Ct,Nt,zt){var Pn=arguments.length>3&&arguments[3]!==void 0?arguments[3]:1;switch(Nt){case"year":return zt.addYear(Ct,Pn*10);case"quarter":case"month":return zt.addYear(Ct,Pn);default:return zt.addMonth(Ct,Pn)}}function yn(Ct,Nt){var zt=Nt.generateConfig,Pn=Nt.locale,Mn=Nt.format;return typeof Mn=="function"?Mn(Ct):zt.locale.format(Pn.locale,Ct,Mn)}function Hn(Ct,Nt){var zt=Nt.generateConfig,Pn=Nt.locale,Mn=Nt.formatList;return!Ct||typeof Mn[0]=="function"?null:zt.locale.parse(Pn.locale,Ct,Mn)}function Bn(Ct){var Nt=Ct.cellDate,zt=Ct.mode,Pn=Ct.disabledDate,Mn=Ct.generateConfig;if(!Pn)return!1;var lr=function(Ea,Nr,Or){for(var Ca=Nr;Ca<=Or;){var xi=void 0;switch(Ea){case"date":{if(xi=Mn.setDate(Nt,Ca),!Pn(xi))return!1;break}case"month":{if(xi=Mn.setMonth(Nt,Ca),!Bn({cellDate:xi,mode:"month",generateConfig:Mn,disabledDate:Pn}))return!1;break}case"year":{if(xi=Mn.setYear(Nt,Ca),!Bn({cellDate:xi,mode:"year",generateConfig:Mn,disabledDate:Pn}))return!1;break}}Ca+=1}return!0};switch(zt){case"date":case"week":return Pn(Nt);case"month":{var or=1,Br=Mn.getDate(Mn.getEndDate(Nt));return lr("date",or,Br)}case"quarter":{var Dr=Math.floor(Mn.getMonth(Nt)/3)*3,qr=Dr+2;return lr("month",Dr,qr)}case"year":return lr("month",0,11);case"decade":{var ja=Mn.getYear(Nt),$r=Math.floor(ja/Gt)*Gt,ca=$r+Gt-1;return lr("year",$r,ca)}}}function Er(Ct,Nt){var zt=Nt.formatList,Pn=Nt.generateConfig,Mn=Nt.locale;return(0,sn.Z)(function(){if(!Ct)return[[""],""];for(var lr="",or=[],Br=0;Br1&&arguments[1]!==void 0?arguments[1]:!1;if(cancelAnimationFrame(qr.current),Ca){Dr(Or);return}qr.current=requestAnimationFrame(function(){Dr(Or)})}var $r=Er(Br,{formatList:zt,generateConfig:Pn,locale:Mn}),ca=(0,an.Z)($r,2),ba=ca[1];function Ea(Or){ja(Or)}function Nr(){var Or=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;ja(null,Or)}return(0,ve.useEffect)(function(){Nr(!0)},[Ct]),(0,ve.useEffect)(function(){return function(){return cancelAnimationFrame(qr.current)}},[]),[ba,Ea,Nr]}var br=Ie(10228),Wr=Ie(16089),Da=Ie(94480),Ya=Ie(29194),Ba=new Map;function Ia(Ct,Nt){var zt;function Pn(){(0,Ya.Z)(Ct)?Nt():zt=(0,Wr.Z)(function(){Pn()})}return Pn(),function(){Wr.Z.cancel(zt)}}function Ii(Ct,Nt,zt){if(Ba.get(Ct)&&cancelAnimationFrame(Ba.get(Ct)),zt<=0){Ba.set(Ct,requestAnimationFrame(function(){Ct.scrollTop=Nt}));return}var Pn=Nt-Ct.scrollTop,Mn=Pn/zt*10;Ba.set(Ct,requestAnimationFrame(function(){Ct.scrollTop+=Mn,Ct.scrollTop!==Nt&&Ii(Ct,Nt,zt-10)}))}function wi(Ct,Nt){var zt=Nt.onLeftRight,Pn=Nt.onCtrlLeftRight,Mn=Nt.onUpDown,lr=Nt.onPageUpDown,or=Nt.onEnter,Br=Ct.which,Dr=Ct.ctrlKey,qr=Ct.metaKey;switch(Br){case br.Z.LEFT:if(Dr||qr){if(Pn)return Pn(-1),!0}else if(zt)return zt(-1),!0;break;case br.Z.RIGHT:if(Dr||qr){if(Pn)return Pn(1),!0}else if(zt)return zt(1),!0;break;case br.Z.UP:if(Mn)return Mn(-1),!0;break;case br.Z.DOWN:if(Mn)return Mn(1),!0;break;case br.Z.PAGE_UP:if(lr)return lr(-1),!0;break;case br.Z.PAGE_DOWN:if(lr)return lr(1),!0;break;case br.Z.ENTER:if(or)return or(),!0;break}return!1}function jr(Ct,Nt,zt,Pn){var Mn=Ct;if(!Mn)switch(Nt){case"time":Mn=Pn?"hh:mm:ss a":"HH:mm:ss";break;case"week":Mn="gggg-wo";break;case"month":Mn="YYYY-MM";break;case"quarter":Mn="YYYY-[Q]Q";break;case"year":Mn="YYYY";break;default:Mn=zt?"YYYY-MM-DD HH:mm:ss":"YYYY-MM-DD"}return Mn}function Ka(Ct,Nt,zt){var Pn=Ct==="time"?8:10,Mn=typeof Nt=="function"?Nt(zt.getNow()).length:Nt.length;return Math.max(Pn,Mn)+2}var oi=null,pr=new Set;function vr(Ct){return!oi&&typeof window!="undefined"&&window.addEventListener&&(oi=function(zt){(0,Da.Z)(pr).forEach(function(Pn){Pn(zt)})},window.addEventListener("mousedown",oi)),pr.add(Ct),function(){pr.delete(Ct),pr.size===0&&(window.removeEventListener("mousedown",oi),oi=null)}}function li(Ct){var Nt=Ct.target;if(Ct.composed&&Nt.shadowRoot){var zt;return((zt=Ct.composedPath)===null||zt===void 0?void 0:zt.call(Ct)[0])||Nt}return Nt}var zn=function(Nt){return Nt==="month"||Nt==="date"?"year":Nt},hr=function(Nt){return Nt==="date"?"month":Nt},Tr=function(Nt){return Nt==="month"||Nt==="date"?"quarter":Nt},Rr=function(Nt){return Nt==="date"?"week":Nt},fa={year:zn,month:hr,quarter:Tr,week:Rr,time:null,date:null};function bt(Ct,Nt){return Ct.some(function(zt){return zt&&zt.contains(Nt)})}function Me(Ct){var Nt=Ct.open,zt=Ct.value,Pn=Ct.isClickOutside,Mn=Ct.triggerOpen,lr=Ct.forwardKeyDown,or=Ct.onKeyDown,Br=Ct.blurToCancel,Dr=Ct.onSubmit,qr=Ct.onCancel,ja=Ct.onFocus,$r=Ct.onBlur,ca=Ct.changeOnBlur,ba=(0,ve.useState)(!1),Ea=(0,an.Z)(ba,2),Nr=Ea[0],Or=Ea[1],Ca=(0,ve.useState)(!1),xi=(0,an.Z)(Ca,2),ci=xi[0],Si=xi[1],Ni=(0,ve.useRef)(!1),Mi=(0,ve.useRef)(!1),di=(0,ve.useRef)(!1),Mo={onMouseDown:function(){Or(!0),Mn(!0)},onKeyDown:function(No){var Vo=function(){di.current=!0};if(or(No,Vo),!di.current){switch(No.which){case br.Z.ENTER:{Nt?Dr()!==!1&&Or(!0):Mn(!0),No.preventDefault();return}case br.Z.TAB:{Nr&&Nt&&!No.shiftKey?(Or(!1),No.preventDefault()):!Nr&&Nt&&!lr(No)&&No.shiftKey&&(Or(!0),No.preventDefault());return}case br.Z.ESC:{Or(!0),qr();return}}!Nt&&![br.Z.SHIFT].includes(No.which)?Mn(!0):Nr||lr(No)}},onFocus:function(No){Or(!0),Si(!0),ja&&ja(No)},onBlur:function(No){if(Ni.current||!Pn(document.activeElement)){Ni.current=!1;return}Br?setTimeout(function(){for(var Vo=document,ys=Vo.activeElement;ys&&ys.shadowRoot;)ys=ys.shadowRoot.activeElement;Pn(ys)&&qr()},0):Nt&&(Mn(!1),Mi.current&&Dr()),Si(!1),$r==null||$r(No)}};return(0,ve.useEffect)(function(){Mi.current=!1},[Nt]),(0,ve.useEffect)(function(){Mi.current=!0},[zt]),(0,ve.useEffect)(function(){return vr(function(co){var No=li(co),Vo=Pn(No);Nt&&(Vo?!ca&&(!ci||Vo)&&Mn(!1):(Ni.current=!0,(0,Wr.Z)(function(){Ni.current=!1})))})}),[Mo,{focused:ci,typing:Nr}]}function Le(Ct,Nt){return ve.useMemo(function(){return Ct||(Nt?((0,Fe.ZP)(!1,"`ranges` is deprecated. Please use `presets` instead."),Object.entries(Nt).map(function(zt){var Pn=(0,an.Z)(zt,2),Mn=Pn[0],lr=Pn[1];return{label:Mn,value:lr}})):[])},[Ct,Nt])}var Te=Ie(34280);function Ue(Ct){var Nt=Ct.valueTexts,zt=Ct.onTextChange,Pn=ve.useState(""),Mn=(0,an.Z)(Pn,2),lr=Mn[0],or=Mn[1],Br=ve.useRef([]);Br.current=Nt;function Dr(ja){or(ja),zt(ja)}function qr(){or(Br.current[0])}return(0,Te.Z)(function(){Nt.every(function(ja){return ja!==lr})&&qr()},[Nt.join("||")]),[lr,Dr,qr]}var Ye=ve.createContext({}),xt=Ye,Pt=Ie(76190);function Xt(Ct){var Nt=Ct.cellRender,zt=Ct.monthCellRender,Pn=Ct.dateRender,Mn=ve.useMemo(function(){if(Nt)return Nt;if(!(!zt&&!Pn))return function(lr,or){var Br=lr;return Pn&&or.type==="date"?Pn(Br,or.today):zt&&or.type==="month"?zt(Br,or.locale):or.originNode}},[Nt,zt,Pn]);return Mn}function Ht(Ct,Nt){for(var zt=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"0",Pn=String(Ct);Pn.length=1?zt|0:1,or=Ct;or<=Nt;or+=lr)Mn.push({label:Ht(or,2),value:or,disabled:(Pn||[]).includes(or)});return Mn}function Ui(Ct){var Nt=Ct.generateConfig,zt=Ct.prefixCls,Pn=Ct.operationRef,Mn=Ct.activeColumnIndex,lr=Ct.value,or=Ct.showHour,Br=Ct.showMinute,Dr=Ct.showSecond,qr=Ct.use12Hours,ja=Ct.hourStep,$r=ja===void 0?1:ja,ca=Ct.minuteStep,ba=ca===void 0?1:ca,Ea=Ct.secondStep,Nr=Ea===void 0?1:Ea,Or=Ct.disabledHours,Ca=Ct.disabledMinutes,xi=Ct.disabledSeconds,ci=Ct.disabledTime,Si=Ct.hideDisabledOptions,Ni=Ct.onSelect,Mi=Ct.cellRender,di=Ct.locale,Mo=[],co="".concat(zt,"-content"),No="".concat(zt,"-time-panel"),Vo,ys=lr?Nt.getHour(lr):-1,$a=ys,Ys=lr?Nt.getMinute(lr):-1,vs=lr?Nt.getSecond(lr):-1,Oo=Nt.getNow(),Ko=ve.useMemo(function(){if(ci){var Ar=ci(Oo);return[Ar.disabledHours,Ar.disabledMinutes,Ar.disabledSeconds]}return[Or,Ca,xi]},[Or,Ca,xi,ci,Oo]),qo=(0,an.Z)(Ko,3),Ns=qo[0],ns=qo[1],Zo=qo[2],il=Fa(0,23,$r,Ns&&Ns()),Ps=(0,sn.Z)(function(){return il},il,zi);qr&&(Vo=$a>=12,$a%=12);var Rt=ve.useMemo(function(){if(!qr)return[!1,!1];var Ar=[!0,!0];return Ps.forEach(function(Cr){var ta=Cr.disabled,Yr=Cr.value;ta||(Yr>=12?Ar[1]=!1:Ar[0]=!1)}),Ar},[qr,Ps]),Wt=(0,an.Z)(Rt,2),dn=Wt[0],Sn=Wt[1],kn=ve.useMemo(function(){return qr?Ps.filter(Vo?function(Ar){return Ar.value>=12}:function(Ar){return Ar.value<12}).map(function(Ar){var Cr=Ar.value%12,ta=Cr===0?"12":Ht(Cr,2);return(0,rn.Z)((0,rn.Z)({},Ar),{},{label:ta,value:Cr})}):Ps},[qr,Vo,Ps]),Gn=Fa(0,59,ba,ns&&ns(ys)),Un=Fa(0,59,Nr,Zo&&Zo(ys,Ys)),cr=Ta({value:lr,generateConfig:Nt,disabledMinutes:ns,disabledSeconds:Zo,minutes:Gn,seconds:Un,use12Hours:qr});Pn.current={onUpDown:function(Cr){var ta=Mo[Mn];if(ta)for(var Yr=ta.units.findIndex(function(Ha){return Ha.value===ta.value}),Xr=ta.units.length,Aa=1;Aa2&&arguments[2]!==void 0?arguments[2]:!1;(Za===Or||ir)&&(Fi(_n),Mo&&Mo(_n),cr&&cr(_n,Qn),co&&!Vn(Dr,_n,Wa)&&!(ba!=null&&ba(_n))&&co(_n))},pt=function(_n){if(gs.includes(Za)){var Qn,ir,xr=Za==="date";switch(_n===br.Z.PAGE_UP||_n===br.Z.PAGE_DOWN?ir=xr?Dr.addMonth:Dr.addYear:ir=xr?Dr.addDate:Dr.addMonth,_n){case br.Z.LEFT:case br.Z.PAGE_UP:Qn=ir(Oi,-1);break;case br.Z.RIGHT:case br.Z.PAGE_DOWN:Qn=ir(Oi,1);break;case br.Z.UP:case br.Z.DOWN:Qn=ir(Oi,Number("".concat(_n===br.Z.UP?"-":"").concat(xr?Et:Ai)));break}if(Qn)return!(ba!=null&&ba(Qn))}return!0},Mt=function(_n){if(Aa.current&&Aa.current.onKeyDown){var Qn=!0,ir=_n.which;if([br.Z.LEFT,br.Z.RIGHT,br.Z.UP,br.Z.DOWN,br.Z.PAGE_UP,br.Z.PAGE_DOWN,br.Z.ENTER].includes(ir)&&(_n.preventDefault(),ir!==br.Z.ENTER&&xi===0&&(Qn=pt(ir))),Qn)return Aa.current.onKeyDown(_n)}return(0,Fe.ZP)(!1,"Panel not correct handle keyDown event. Please help to fire issue about this."),!1},Tt=function(_n){Aa.current&&Aa.current.onBlur&&Aa.current.onBlur(_n)};Un&&ta!=="right"&&(Un.current={onKeyDown:Mt,onClose:function(){Aa.current&&Aa.current.onClose&&Aa.current.onClose()}}),ve.useEffect(function(){qr&&!ha.current&&no(qr)},[qr]),ve.useEffect(function(){ha.current=!1},[]);var jt,kt=Xt({cellRender:Rt,monthCellRender:Ps,dateRender:il}),en=(0,rn.Z)((0,rn.Z)({},Ct),{},{cellRender:kt,operationRef:Aa,prefixCls:Mn,viewDate:Oi,value:Wa,onViewDateChange:ri,sourceMode:yi,onPanelChange:et,disabledDate:ba});switch(delete en.onChange,delete en.onSelect,Za){case"decade":jt=ve.createElement(Vr,(0,ue.Z)({},en,{onSelect:function(_n,Qn){ri(_n),it(_n,Qn)}}));break;case"year":jt=ve.createElement(al,(0,ue.Z)({},en,{onSelect:function(_n,Qn){ri(_n),it(_n,Qn)}}));break;case"month":jt=ve.createElement(lo,(0,ue.Z)({},en,{onSelect:function(_n,Qn){ri(_n),it(_n,Qn)}}));break;case"quarter":jt=ve.createElement(Jr,(0,ue.Z)({},en,{onSelect:function(_n,Qn){ri(_n),it(_n,Qn)}}));break;case"week":jt=ve.createElement(za,(0,ue.Z)({},en,{onSelect:function(_n,Qn){ri(_n),it(_n,Qn)}}));break;case"time":delete en.showTime,jt=ve.createElement(_s,(0,ue.Z)({},en,(0,Pt.Z)(Si)==="object"?Si:null,{onSelect:function(_n,Qn){ri(_n),it(_n,Qn)}}));break;default:Si?jt=ve.createElement(Ti,(0,ue.Z)({},en,{onSelect:function(_n,Qn){ri(_n),it(_n,Qn)}})):jt=ve.createElement(ui,(0,ue.Z)({},en,{onSelect:function(_n,Qn){ri(_n),it(_n,Qn)}}))}var Vt,un,Tn=function(){var _n=Dr.getNow(),Qn=jn(Dr.getHour(_n),Dr.getMinute(_n),Dr.getSecond(_n),dn?Ko:1,Sn?Ns:1,kn?Zo:1),ir=nn(Dr,_n,Qn[0],Qn[1],Qn[2]);it(ir,"submit")};sr||(Vt=yo(Mn,Za,Mi),Si&&Za!=="date"?un=null:un=ko({prefixCls:Mn,components:Ys,needConfirmButton:Wt,okDisabled:!Wa||ba&&ba(Wa),locale:Br,showNow:ci,onNow:Wt&&Tn,onOk:function(){Wa&&(it(Wa,"submit",!0),$a&&$a(Wa))}}));var hn;if(Ni&&Za==="date"&&Or==="date"&&!Si){var gn=Dr.getNow(),cn="".concat(Mn,"-today-btn"),bn=ba&&ba(gn);hn=ve.createElement("a",{className:dt()(cn,bn&&"".concat(cn,"-disabled")),"aria-disabled":bn,onClick:function(){bn||it(gn,"mouse",!0)}},Br.today)}return ve.createElement(xt.Provider,{value:(0,rn.Z)((0,rn.Z)({},Gn),{},{mode:Za,hideHeader:"hideHeader"in Ct?di:Gn.hideHeader,hidePrevBtn:Cr&&ta==="right",hideNextBtn:Cr&&ta==="left"})},ve.createElement("div",{tabIndex:xi,className:dt()("".concat(Mn,"-panel"),lr,(Nt={},(0,Ot.Z)(Nt,"".concat(Mn,"-panel-has-range"),Yr&&Yr[0]&&Yr[1]),(0,Ot.Z)(Nt,"".concat(Mn,"-panel-has-range-hover"),Xr&&Xr[0]&&Xr[1]),(0,Ot.Z)(Nt,"".concat(Mn,"-panel-rtl"),vs==="rtl"),Nt)),style:or,onKeyDown:Mt,onBlur:Tt,onMouseDown:Vo},jt,Vt||un||hn?ve.createElement("div",{className:"".concat(Mn,"-footer")},Vt,un,hn):null))}var is=Po,Hs=Ie(35593),Cs={bottomLeft:{points:["tl","bl"],offset:[0,4],overflow:{adjustX:1,adjustY:1}},bottomRight:{points:["tr","br"],offset:[0,4],overflow:{adjustX:1,adjustY:1}},topLeft:{points:["bl","tl"],offset:[0,-4],overflow:{adjustX:0,adjustY:1}},topRight:{points:["br","tr"],offset:[0,-4],overflow:{adjustX:0,adjustY:1}}};function Ou(Ct){var Nt,zt=Ct.prefixCls,Pn=Ct.popupElement,Mn=Ct.popupStyle,lr=Ct.visible,or=Ct.dropdownClassName,Br=Ct.dropdownAlign,Dr=Ct.transitionName,qr=Ct.getPopupContainer,ja=Ct.children,$r=Ct.range,ca=Ct.popupPlacement,ba=Ct.direction,Ea="".concat(zt,"-dropdown"),Nr=function(){return ca!==void 0?ca:ba==="rtl"?"bottomRight":"bottomLeft"};return ve.createElement(Hs.Z,{showAction:[],hideAction:[],popupPlacement:Nr(),builtinPlacements:Cs,prefixCls:Ea,popupTransitionName:Dr,popup:Pn,popupAlign:Br,popupVisible:lr,popupClassName:dt()(or,(Nt={},(0,Ot.Z)(Nt,"".concat(Ea,"-range"),$r),(0,Ot.Z)(Nt,"".concat(Ea,"-rtl"),ba==="rtl"),Nt)),popupStyle:Mn,getPopupContainer:qr},ja)}var Pu=Ou;function id(Ct){var Nt=Ct.prefixCls,zt=Ct.presets,Pn=Ct.onClick,Mn=Ct.onHover;return zt.length?ve.createElement("div",{className:"".concat(Nt,"-presets")},ve.createElement("ul",null,zt.map(function(lr,or){var Br=lr.label,Dr=lr.value;return ve.createElement("li",{key:or,onClick:function(){return Pn==null?void 0:Pn(qn(Dr))},onMouseEnter:function(){return Mn==null?void 0:Mn(qn(Dr))},onMouseLeave:function(){return Mn==null?void 0:Mn(null)}},Br)}))):null}function Cf(Ct){var Nt=Ct.picker,zt=Ct.disabledHours,Pn=Ct.disabledMinutes,Mn=Ct.disabledSeconds;Nt==="time"&&(zt||Pn||Mn)&&warning(!1,"'disabledHours', 'disabledMinutes', 'disabledSeconds' will be removed in the next major version, please use 'disabledTime' instead.")}function od(Ct,Nt,zt){var Pn=(0,Pt.Z)(Nt)==="object"?Nt.clearIcon:zt;return Pn||ve.createElement("span",{className:"".concat(Ct,"-clear-btn")})}function Lu(Ct){var Nt,zt=Ct,Pn=zt.prefixCls,Mn=Pn===void 0?"rc-picker":Pn,lr=zt.id,or=zt.name,Br=zt.tabIndex,Dr=zt.style,qr=zt.className,ja=zt.dropdownClassName,$r=zt.dropdownAlign,ca=zt.popupStyle,ba=zt.transitionName,Ea=zt.generateConfig,Nr=zt.locale,Or=zt.inputReadOnly,Ca=zt.allowClear,xi=zt.autoFocus,ci=zt.showTime,Si=zt.picker,Ni=Si===void 0?"date":Si,Mi=zt.format,di=zt.use12Hours,Mo=zt.value,co=zt.defaultValue,No=zt.presets,Vo=zt.open,ys=zt.defaultOpen,$a=zt.defaultOpenValue,Ys=zt.suffixIcon,vs=zt.clearIcon,Oo=zt.disabled,Ko=zt.disabledDate,qo=zt.placeholder,Ns=zt.getPopupContainer,ns=zt.pickerRef,Zo=zt.panelRender,il=zt.onChange,Ps=zt.onOpenChange,Rt=zt.onFocus,Wt=zt.onBlur,dn=zt.onMouseDown,Sn=zt.onMouseUp,kn=zt.onMouseEnter,Gn=zt.onMouseLeave,Un=zt.onContextMenu,cr=zt.onClick,sr=zt.onKeyDown,wr=zt.onSelect,Ar=zt.direction,Cr=zt.autoComplete,ta=Cr===void 0?"off":Cr,Yr=zt.inputRender,Xr=zt.changeOnBlur,Aa=ve.useRef(null),ha=Ni==="date"&&!!ci||Ni==="time",Ha=Le(No),Oa=pn(jr(Mi,Ni,ci,di)),Wa=ve.useRef(null),Fi=ve.useRef(null),fi=ve.useRef(null),bi=(0,On.Z)(null,{value:Mo,defaultValue:co}),Oi=(0,an.Z)(bi,2),no=Oi[0],ri=Oi[1],Ci=ve.useState(no),ii=(0,an.Z)(Ci,2),Va=ii[0],Za=ii[1],_i=ve.useRef(null),vo=(0,On.Z)(!1,{value:Vo,defaultValue:ys,postState:function(_r){return Oo?!1:_r},onChange:function(_r){Ps&&Ps(_r),!_r&&_i.current&&_i.current.onClose&&_i.current.onClose()}}),Ji=(0,an.Z)(vo,2),yi=Ji[0],Ve=Ji[1],et=Er(Va,{formatList:Oa,generateConfig:Ea,locale:Nr}),it=(0,an.Z)(et,2),pt=it[0],Mt=it[1],Tt=Ue({valueTexts:pt,onTextChange:function(_r){var Zi=Hn(_r,{locale:Nr,formatList:Oa,generateConfig:Ea});Zi&&(!Ko||!Ko(Zi))&&Za(Zi)}}),jt=(0,an.Z)(Tt,3),kt=jt[0],en=jt[1],Vt=jt[2],un=function(_r){Za(_r),ri(_r),il&&!Vn(Ea,no,_r)&&il(_r,_r?yn(_r,{generateConfig:Ea,locale:Nr,format:Oa[0]}):"")},Tn=function(_r){Oo&&_r||Ve(_r)},hn=function(_r){return yi&&_i.current&&_i.current.onKeyDown?_i.current.onKeyDown(_r):((0,Fe.ZP)(!1,"Picker not correct forward KeyDown operation. Please help to fire issue about this."),!1)},gn=function(){for(var _r=arguments.length,Zi=new Array(_r),qi=0;qi<_r;qi++)Zi[qi]=arguments[qi];cr==null||cr.apply(void 0,Zi),Aa.current&&(Aa.current.focus(),Tn(!0))},cn=function(_r){Xr&&un(Va),Wt==null||Wt(_r)},bn=Me({blurToCancel:ha,open:yi,value:kt,triggerOpen:Tn,forwardKeyDown:hn,isClickOutside:function(_r){return!bt([Wa.current,Fi.current,fi.current],_r)},onSubmit:function(){return!Va||Ko&&Ko(Va)?!1:(un(Va),Tn(!1),Vt(),!0)},onCancel:function(){Tn(!1),Za(no),Vt()},onKeyDown:function(_r,Zi){sr==null||sr(_r,Zi)},onFocus:Rt,onBlur:cn,changeOnBlur:Xr}),Wn=(0,an.Z)(bn,2),_n=Wn[0],Qn=Wn[1],ir=Qn.focused,xr=Qn.typing;ve.useEffect(function(){yi||(Za(no),!pt.length||pt[0]===""?en(""):Mt!==kt&&Vt())},[yi,pt]),ve.useEffect(function(){yi||Vt()},[Ni]),ve.useEffect(function(){Za(no)},[no]),ns&&(ns.current={focus:function(){var _r;(_r=Aa.current)===null||_r===void 0||_r.focus()},blur:function(){var _r;(_r=Aa.current)===null||_r===void 0||_r.blur()}});var ia=Fr(kt,{formatList:Oa,generateConfig:Ea,locale:Nr}),ea=(0,an.Z)(ia,3),Xa=ea[0],xa=ea[1],Pa=ea[2],Pr=(0,rn.Z)((0,rn.Z)({},Ct),{},{className:void 0,style:void 0,pickerValue:void 0,onPickerValueChange:void 0,onChange:null}),oa=ve.createElement("div",{className:"".concat(Mn,"-panel-layout")},ve.createElement(id,{prefixCls:Mn,presets:Ha,onClick:function(_r){un(_r),Tn(!1)}}),ve.createElement(is,(0,ue.Z)({},Pr,{generateConfig:Ea,className:dt()((0,Ot.Z)({},"".concat(Mn,"-panel-focused"),!xr)),value:Va,locale:Nr,tabIndex:-1,onSelect:function(_r){wr==null||wr(_r),Za(_r)},direction:Ar,onPanelChange:function(_r,Zi){var qi=Ct.onPanelChange;Pa(!0),qi==null||qi(_r,Zi)}})));Zo&&(oa=Zo(oa));var hi=ve.createElement("div",{className:"".concat(Mn,"-panel-container"),ref:Wa,onMouseDown:function(_r){_r.preventDefault()}},oa),ar;Ys&&(ar=ve.createElement("span",{className:"".concat(Mn,"-suffix"),onMouseDown:function(_r){_r.preventDefault()}},Ys));var Mr=od(Mn,Ca,vs),sa=ve.createElement("span",{onMouseDown:function(_r){_r.preventDefault(),_r.stopPropagation()},onMouseUp:function(_r){_r.preventDefault(),_r.stopPropagation(),un(null),Tn(!1)},className:"".concat(Mn,"-clear"),role:"button"},Mr),da=!!Ca&&no&&!Oo,Ra=(0,rn.Z)((0,rn.Z)((0,rn.Z)({id:lr,tabIndex:Br,disabled:Oo,readOnly:Or||typeof Oa[0]=="function"||!xr,value:Xa||kt,onChange:function(_r){en(_r.target.value)},autoFocus:xi,placeholder:qo,ref:Aa,title:kt},_n),{},{size:Ka(Ni,Oa[0],Ea),name:or},(0,Rn.Z)(Ct,{aria:!0,data:!0})),{},{autoComplete:ta}),la=Yr?Yr(Ra):ve.createElement("input",Ra),na=function(_r,Zi){(Zi==="submit"||Zi!=="key"&&!ha)&&(un(_r),Tn(!1))},vi=Ar==="rtl"?"bottomRight":"bottomLeft";return ve.createElement(xt.Provider,{value:{operationRef:_i,hideHeader:Ni==="time",onSelect:na,open:yi,defaultOpenValue:$a,onDateMouseEnter:xa,onDateMouseLeave:Pa}},ve.createElement(Pu,{visible:yi,popupElement:hi,popupStyle:ca,prefixCls:Mn,dropdownClassName:ja,dropdownAlign:$r,getPopupContainer:Ns,transitionName:ba,popupPlacement:vi,direction:Ar},ve.createElement("div",{ref:fi,className:dt()(Mn,qr,(Nt={},(0,Ot.Z)(Nt,"".concat(Mn,"-disabled"),Oo),(0,Ot.Z)(Nt,"".concat(Mn,"-focused"),ir),(0,Ot.Z)(Nt,"".concat(Mn,"-rtl"),Ar==="rtl"),Nt)),style:Dr,onMouseDown:dn,onMouseUp:Sn,onMouseEnter:kn,onMouseLeave:Gn,onContextMenu:Un,onClick:gn},ve.createElement("div",{className:dt()("".concat(Mn,"-input"),(0,Ot.Z)({},"".concat(Mn,"-input-placeholder"),!!Xa)),ref:Fi},la,ar,da&&sa))))}var Kd=function(Ct){(0,qt.Z)(zt,Ct);var Nt=(0,vn.Z)(zt);function zt(){var Pn;(0,ht.Z)(this,zt);for(var Mn=arguments.length,lr=new Array(Mn),or=0;orca(qr);case"month":return $r(Nr)>$r(qr);case"week":return ja(Nr)>ja(qr);default:return!ln(Br,Nr,qr)&&Br.isAfter(Nr,qr)}return!1},[lr,or[1],qr,Nt]),Ea=ve.useCallback(function(Nr){if(or[1]||lr&&lr(Nr))return!0;if(or[0]&&Dr)return!ln(Br,Nr,qr)&&Br.isAfter(Dr,Nr);if(!Nt&&Dr)switch(zt){case"quarter":return ca(Nr)0&&arguments[0]!==void 0?arguments[0]:!1,Vi=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},So=null;Pa&&af&&af[0]&&af[1]&&Nr.isAfter(af[1],af[0])&&(So=af);var Ds=di;if(di&&(0,Pt.Z)(di)==="object"&&di.defaultValue){var Vs=di.defaultValue;Ds=(0,rn.Z)((0,rn.Z)({},di),{},{defaultValue:Yn(Vs,Pr)||void 0})}return ve.createElement(fn.Provider,{value:{inRange:!0,panelPosition:Ms,rangedValue:sm||Wn,hoverRangedValue:So}},ve.createElement(is,(0,ue.Z)({},Ct,Vi,{cellRender:tE,showTime:Ds,mode:xr[Pr],generateConfig:Nr,style:void 0,direction:Oi,disabledDate:Pr===0?Ra:la,disabledTime:function(Gl){return Ko?Ko(Gl,Pr===0?"start":"end"):!1},className:dt()((0,Ot.Z)({},"".concat(or,"-panel-focused"),Pr===0?!e0:!dd)),value:Yn(Wn,Pr),locale:Or,tabIndex:-1,onPanelChange:function(Gl,lf){Pr===0&&Gh(!0),Pr===1&&rh(!0),ea(Dn(xr,lf,Pr),Dn(Wn,Gl,Pr));var Dd=Gl;Ms==="right"&&xr[Pr]===lf&&(Dd=Jt(Dd,lf,Nr,-1)),gn(Dd,Pr)},onOk:null,onSelect:void 0,onChange:void 0,defaultValue:Pr===0?Yn(Wn,1):Yn(Wn,0)})))}var sf=0,rE=0;if(Pr&&vo.current&&yi.current&&_i.current&&it.current){sf=vo.current.offsetWidth+yi.current.offsetWidth;var Md=it.current.offsetLeft>sf?it.current.offsetLeft-sf:it.current.offsetLeft,aE=_i.current.offsetWidth,iE=it.current.offsetWidth;aE&&iE&&sf>aE-iE-(Oi==="rtl"?0:Md)&&(rE=sf)}var ZS=Oi==="rtl"?{right:sf}:{left:sf};function oE(){var Ms,Vi=yo(or,xr[Pr],cr),So=ko({prefixCls:or,components:fi,needConfirmButton:Va,okDisabled:!Yn(Wn,Pr)||Oo&&Oo(Wn[Pr]),locale:Or,onOk:function(){var Sc=Yn(Wn,Pr);Sc&&(qi(Wn,Pr),Wa==null||Wa(Wn),hi(!1,Pr,"confirm"))}});if(Mi!=="time"&&!di){var Ds=hn(Pr),Vs=Jt(Ds,Mi,Nr),Tf=xr[Pr],Gl=Tf===Mi,lf=dm(Gl?"left":!1,{pickerValue:Ds,onPickerValueChange:function(Sc){gn(Sc,Pr)}}),Dd=dm("right",{pickerValue:Vs,onPickerValueChange:function(Sc){gn(Jt(Sc,Mi,Nr,-1),Pr)}});Oi==="rtl"?Ms=ve.createElement(ve.Fragment,null,Dd,Gl&&lf):Ms=ve.createElement(ve.Fragment,null,lf,Gl&&Dd)}else Ms=dm();var Hl=ve.createElement("div",{className:"".concat(or,"-panel-layout")},ve.createElement(id,{prefixCls:or,presets:nE,onClick:function(Sc){qi(Sc,null),hi(!1,Pr,"preset")},onHover:function(Sc){ql(Sc)}}),ve.createElement("div",null,ve.createElement("div",{className:"".concat(or,"-panels")},Ms),(Vi||So)&&ve.createElement("div",{className:"".concat(or,"-footer")},Vi,So)));return Zo&&(Hl=Zo(Hl)),ve.createElement("div",{className:"".concat(or,"-panel-container"),style:{marginLeft:rE},ref:_i,onMouseDown:function(Sc){Sc.preventDefault()}},Hl)}var QS=ve.createElement("div",{className:dt()("".concat(or,"-range-wrapper"),"".concat(or,"-").concat(Mi,"-range-wrapper")),style:{minWidth:mi}},ve.createElement("div",{ref:it,className:"".concat(or,"-range-arrow"),style:ZS}),oE()),sE;dn&&(sE=ve.createElement("span",{className:"".concat(or,"-suffix"),onMouseDown:function(Vi){Vi.preventDefault()}},dn));var YS=od(or,Wt,Sn),XS=ve.createElement("span",{onMouseDown:function(Vi){Vi.preventDefault(),Vi.stopPropagation()},onMouseUp:function(Vi){Vi.preventDefault(),Vi.stopPropagation();var So=en;Tt[0]||(So=Dn(So,null,0)),Tt[1]||(So=Dn(So,null,1)),qi(So,null),hi(!1,Pr,"clear")},className:"".concat(or,"-clear"),role:"button"},YS),JS=Wt&&(Yn(en,0)&&!Tt[0]||Yn(en,1)&&!Tt[1]),lE={size:Ka(Mi,pt[0],Nr)},fm=0,hm=0;vo.current&&Ji.current&&yi.current&&(Pr===0?hm=vo.current.offsetWidth:(fm=sf,hm=Ji.current.offsetWidth));var qS=Oi==="rtl"?{right:fm}:{left:fm},ol=function(Vi,So){var Ds=Dn(Wn,Vi,Pr);if(So==="submit"||So!=="key"&&!Va){qi(Ds,Pr),Pr===0?Gh():rh();var Vs=Pr===0?1:0;Tt[Vs]?hi(!1,!1,"confirm"):hi(!1,Pr,"confirm")}else _n(Ds)};return ve.createElement(xt.Provider,{value:{operationRef:Mt,hideHeader:Mi==="time",onDateMouseEnter:um,onDateMouseLeave:Hh,hideRanges:!0,onSelect:ol,open:Pa}},ve.createElement(Pu,{visible:Pa,popupElement:QS,popupStyle:ja,prefixCls:or,dropdownClassName:$r,dropdownAlign:ba,getPopupContainer:Ea,transitionName:ca,range:!0,direction:Oi},ve.createElement("div",(0,ue.Z)({ref:Za,className:dt()(or,"".concat(or,"-range"),qr,(Nt={},(0,Ot.Z)(Nt,"".concat(or,"-disabled"),Tt[0]&&Tt[1]),(0,Ot.Z)(Nt,"".concat(or,"-focused"),Pr===0?Yh:cd),(0,Ot.Z)(Nt,"".concat(or,"-rtl"),Oi==="rtl"),Nt)),style:Dr,onClick:Z0,onMouseEnter:ha,onMouseLeave:Ha,onMouseDown:Xh,onMouseUp:Aa},(0,Rn.Z)(Ct,{aria:!0,data:!0})),ve.createElement("div",{className:dt()("".concat(or,"-input"),(zt={},(0,Ot.Z)(zt,"".concat(or,"-input-active"),Pr===0),(0,Ot.Z)(zt,"".concat(or,"-input-placeholder"),!!Qg),zt)),ref:vo},ve.createElement("input",(0,ue.Z)({id:Br,disabled:Tt[0],readOnly:Gn||typeof pt[0]=="function"||!e0,value:Qg||zs,onChange:function(Vi){jl(Vi.target.value)},autoFocus:xi,placeholder:Yn(Ca,0)||"",ref:Ve},qg,lE,{autoComplete:Ci}))),ve.createElement("div",{className:"".concat(or,"-range-separator"),ref:yi},No),ve.createElement("div",{className:dt()("".concat(or,"-input"),(Pn={},(0,Ot.Z)(Pn,"".concat(or,"-input-active"),Pr===1),(0,Ot.Z)(Pn,"".concat(or,"-input-placeholder"),!!Yg),Pn)),ref:Ji},ve.createElement("input",(0,ue.Z)({disabled:Tt[1],readOnly:Gn||typeof pt[0]=="function"||!dd,value:Yg||bl,onChange:function(Vi){Xu(Vi.target.value)},placeholder:Yn(Ca,1)||"",ref:et},el,lE,{autoComplete:Ci}))),ve.createElement("div",{className:"".concat(or,"-active-bar"),style:(0,rn.Z)((0,rn.Z)({},qS),{},{width:hm,position:"absolute"})}),sE,JS&&XS)))}var Yd=function(Ct){(0,qt.Z)(zt,Ct);var Nt=(0,vn.Z)(zt);function zt(){var Pn;(0,ht.Z)(this,zt);for(var Mn=arguments.length,lr=new Array(Mn),or=0;or{const{lineHeight:Mn}=Ct,lr=Math.floor(zt*Mn)+2,or=Math.max((Nt-lr)/2,0),Br=Math.max(Nt-lr-or,0);return{padding:`${or}px ${Pn}px ${Br}px`}},tf=Ct=>{const{componentCls:Nt,pickerCellCls:zt,pickerCellInnerCls:Pn,cellHeight:Mn,motionDurationSlow:lr,borderRadiusSM:or,motionDurationMid:Br,cellHoverBg:Dr,lineWidth:qr,lineType:ja,colorPrimary:$r,cellActiveWithRangeBg:ca,colorTextLightSolid:ba,controlHeightSM:Ea,cellRangeBorderColor:Nr,pickerCellBorderGap:Or,cellHoverWithRangeBg:Ca,cellWidth:xi,colorTextDisabled:ci,cellBgDisabled:Si}=Ct;return{"&::before":{position:"absolute",top:"50%",insetInlineStart:0,insetInlineEnd:0,zIndex:1,height:Mn,transform:"translateY(-50%)",transition:`all ${lr}`,content:'""'},[Pn]:{position:"relative",zIndex:2,display:"inline-block",minWidth:Mn,height:Mn,lineHeight:`${Mn}px`,borderRadius:or,transition:`background ${Br}, border ${Br}`},"&-range-hover-start, &-range-hover-end":{[Pn]:{borderStartEndRadius:0,borderEndEndRadius:0}},[`&:hover:not(${zt}-in-view), &:hover:not(${zt}-selected):not(${zt}-range-start):not(${zt}-range-end):not(${zt}-range-hover-start):not(${zt}-range-hover-end)`]:{[Pn]:{background:Dr}},[`&-in-view${zt}-today ${Pn}`]:{"&::before":{position:"absolute",top:0,insetInlineEnd:0,bottom:0,insetInlineStart:0,zIndex:1,border:`${qr}px ${ja} ${$r}`,borderRadius:or,content:'""'}},[`&-in-view${zt}-in-range`]:{position:"relative","&::before":{background:ca}},[`&-in-view${zt}-selected ${Pn}, &-in-view${zt}-range-start ${Pn}, &-in-view${zt}-range-end ${Pn}`]:{color:ba,background:$r},[`&-in-view${zt}-range-start:not(${zt}-range-start-single), &-in-view${zt}-range-end:not(${zt}-range-end-single)`]:{"&::before":{background:ca}},[`&-in-view${zt}-range-start::before`]:{insetInlineStart:"50%"},[`&-in-view${zt}-range-end::before`]:{insetInlineEnd:"50%"},[`&-in-view${zt}-range-hover-start:not(${zt}-in-range):not(${zt}-range-start):not(${zt}-range-end), &-in-view${zt}-range-hover-end:not(${zt}-in-range):not(${zt}-range-start):not(${zt}-range-end), &-in-view${zt}-range-hover-start${zt}-range-start-single, &-in-view${zt}-range-hover-start${zt}-range-start${zt}-range-end${zt}-range-end-near-hover, &-in-view${zt}-range-hover-end${zt}-range-start${zt}-range-end${zt}-range-start-near-hover, &-in-view${zt}-range-hover-end${zt}-range-end-single, &-in-view${zt}-range-hover:not(${zt}-in-range)`]:{"&::after":{position:"absolute",top:"50%",zIndex:0,height:Ea,borderTop:`${qr}px dashed ${Nr}`,borderBottom:`${qr}px dashed ${Nr}`,transform:"translateY(-50%)",transition:`all ${lr}`,content:'""'}},"&-range-hover-start::after,\n &-range-hover-end::after,\n &-range-hover::after":{insetInlineEnd:0,insetInlineStart:Or},[`&-in-view${zt}-in-range${zt}-range-hover::before, &-in-view${zt}-in-range${zt}-range-hover-start::before, &-in-view${zt}-in-range${zt}-range-hover-end::before, &-in-view${zt}-range-start${zt}-range-hover::before, &-in-view${zt}-range-end${zt}-range-hover::before, &-in-view${zt}-range-start:not(${zt}-range-start-single)${zt}-range-hover-start::before, &-in-view${zt}-range-end:not(${zt}-range-end-single)${zt}-range-hover-end::before, ${Nt}-panel > :not(${Nt}-date-panel) &-in-view${zt}-in-range${zt}-range-hover-start::before, ${Nt}-panel > :not(${Nt}-date-panel) &-in-view${zt}-in-range${zt}-range-hover-end::before`]:{background:Ca},[`&-in-view${zt}-range-start:not(${zt}-range-start-single):not(${zt}-range-end) ${Pn}`]:{borderStartStartRadius:or,borderEndStartRadius:or,borderStartEndRadius:0,borderEndEndRadius:0},[`&-in-view${zt}-range-end:not(${zt}-range-end-single):not(${zt}-range-start) ${Pn}`]:{borderStartStartRadius:0,borderEndStartRadius:0,borderStartEndRadius:or,borderEndEndRadius:or},[`&-range-hover${zt}-range-end::after`]:{insetInlineStart:"50%"},[`tr > &-in-view${zt}-range-hover:first-child::after, tr > &-in-view${zt}-range-hover-end:first-child::after, &-in-view${zt}-start${zt}-range-hover-edge-start${zt}-range-hover-edge-start-near-range::after, &-in-view${zt}-range-hover-edge-start:not(${zt}-range-hover-edge-start-near-range)::after, &-in-view${zt}-range-hover-start::after`]:{insetInlineStart:(xi-Mn)/2,borderInlineStart:`${qr}px dashed ${Nr}`,borderStartStartRadius:or,borderEndStartRadius:or},[`tr > &-in-view${zt}-range-hover:last-child::after, tr > &-in-view${zt}-range-hover-start:last-child::after, &-in-view${zt}-end${zt}-range-hover-edge-end${zt}-range-hover-edge-end-near-range::after, &-in-view${zt}-range-hover-edge-end:not(${zt}-range-hover-edge-end-near-range)::after, &-in-view${zt}-range-hover-end::after`]:{insetInlineEnd:(xi-Mn)/2,borderInlineEnd:`${qr}px dashed ${Nr}`,borderStartEndRadius:or,borderEndEndRadius:or},"&-disabled":{color:ci,pointerEvents:"none",[Pn]:{background:"transparent"},"&::before":{background:Si}},[`&-disabled${zt}-today ${Pn}::before`]:{borderColor:ci}}},nf=Ct=>{const{componentCls:Nt,pickerCellCls:zt,pickerCellInnerCls:Pn,pickerYearMonthCellWidth:Mn,pickerControlIconSize:lr,cellWidth:or,paddingSM:Br,paddingXS:Dr,paddingXXS:qr,colorBgContainer:ja,lineWidth:$r,lineType:ca,borderRadiusLG:ba,colorPrimary:Ea,colorTextHeading:Nr,colorSplit:Or,pickerControlIconBorderWidth:Ca,colorIcon:xi,textHeight:ci,motionDurationMid:Si,colorIconHover:Ni,fontWeightStrong:Mi,cellHeight:di,pickerCellPaddingVertical:Mo,colorTextDisabled:co,colorText:No,fontSize:Vo,cellHoverWithRangeBg:ys,motionDurationSlow:$a,withoutTimeCellHeight:Ys,pickerQuarterPanelContentHeight:vs,colorLink:Oo,colorLinkActive:Ko,colorLinkHover:qo,cellRangeBorderColor:Ns,borderRadiusSM:ns,colorTextLightSolid:Zo,cellHoverBg:il,timeColumnHeight:Ps,timeColumnWidth:Rt,timeCellHeight:Wt,controlItemBgActive:dn,marginXXS:Sn,pickerDatePanelPaddingHorizontal:kn}=Ct,Gn=or*7+kn*2,Un=(Gn-Dr*2)/3-Mn-Br,cr=(Gn-Dr*2)/4-Mn;return{[Nt]:{"&-panel":{display:"inline-flex",flexDirection:"column",textAlign:"center",background:ja,border:`${$r}px ${ca} ${Or}`,borderRadius:ba,outline:"none","&-focused":{borderColor:Ea},"&-rtl":{direction:"rtl",[`${Nt}-prev-icon, ${Nt}-super-prev-icon`]:{transform:"rotate(45deg)"},[`${Nt}-next-icon, ${Nt}-super-next-icon`]:{transform:"rotate(-135deg)"}}},"&-decade-panel,\n &-year-panel,\n &-quarter-panel,\n &-month-panel,\n &-week-panel,\n &-date-panel,\n &-time-panel":{display:"flex",flexDirection:"column",width:Gn},"&-header":{display:"flex",padding:`0 ${Dr}px`,color:Nr,borderBottom:`${$r}px ${ca} ${Or}`,"> *":{flex:"none"},button:{padding:0,color:xi,lineHeight:`${ci}px`,background:"transparent",border:0,cursor:"pointer",transition:`color ${Si}`,fontSize:"inherit"},"> button":{minWidth:"1.6em",fontSize:Vo,"&:hover":{color:Ni}},"&-view":{flex:"auto",fontWeight:Mi,lineHeight:`${ci}px`,button:{color:"inherit",fontWeight:"inherit",verticalAlign:"top","&:not(:first-child)":{marginInlineStart:Dr},"&:hover":{color:Ea}}}},"&-prev-icon,\n &-next-icon,\n &-super-prev-icon,\n &-super-next-icon":{position:"relative",display:"inline-block",width:lr,height:lr,"&::before":{position:"absolute",top:0,insetInlineStart:0,display:"inline-block",width:lr,height:lr,border:"0 solid currentcolor",borderBlockStartWidth:Ca,borderBlockEndWidth:0,borderInlineStartWidth:Ca,borderInlineEndWidth:0,content:'""'}},"&-super-prev-icon,\n &-super-next-icon":{"&::after":{position:"absolute",top:Math.ceil(lr/2),insetInlineStart:Math.ceil(lr/2),display:"inline-block",width:lr,height:lr,border:"0 solid currentcolor",borderBlockStartWidth:Ca,borderBlockEndWidth:0,borderInlineStartWidth:Ca,borderInlineEndWidth:0,content:'""'}},"&-prev-icon,\n &-super-prev-icon":{transform:"rotate(-45deg)"},"&-next-icon,\n &-super-next-icon":{transform:"rotate(135deg)"},"&-content":{width:"100%",tableLayout:"fixed",borderCollapse:"collapse","th, td":{position:"relative",minWidth:di,fontWeight:"normal"},th:{height:di+Mo*2,color:No,verticalAlign:"middle"}},"&-cell":Object.assign({padding:`${Mo}px 0`,color:co,cursor:"pointer","&-in-view":{color:No}},tf(Ct)),[`&-date-panel ${Nt}-cell-in-view${Nt}-cell-in-range${Nt}-cell-range-hover-start ${Pn}, &-date-panel ${Nt}-cell-in-view${Nt}-cell-in-range${Nt}-cell-range-hover-end ${Pn}`]:{"&::after":{position:"absolute",top:0,bottom:0,zIndex:-1,background:ys,transition:`all ${$a}`,content:'""'}},[`&-date-panel ${Nt}-cell-in-view${Nt}-cell-in-range${Nt}-cell-range-hover-start ${Pn}::after`]:{insetInlineEnd:-(or-di)/2,insetInlineStart:0},[`&-date-panel ${Nt}-cell-in-view${Nt}-cell-in-range${Nt}-cell-range-hover-end ${Pn}::after`]:{insetInlineEnd:0,insetInlineStart:-(or-di)/2},[`&-range-hover${Nt}-range-start::after`]:{insetInlineEnd:"50%"},"&-decade-panel,\n &-year-panel,\n &-quarter-panel,\n &-month-panel":{[`${Nt}-content`]:{height:Ys*4},[Pn]:{padding:`0 ${Dr}px`}},"&-quarter-panel":{[`${Nt}-content`]:{height:vs},[`${Nt}-cell-range-hover-start::after`]:{insetInlineStart:cr,borderInlineStart:`${$r}px dashed ${Ns}`,[`${Nt}-panel-rtl &`]:{insetInlineEnd:cr,borderInlineEnd:`${$r}px dashed ${Ns}`}},[`${Nt}-cell-range-hover-end::after`]:{insetInlineEnd:cr,borderInlineEnd:`${$r}px dashed ${Ns}`,[`${Nt}-panel-rtl &`]:{insetInlineStart:cr,borderInlineStart:`${$r}px dashed ${Ns}`}}},[`&-panel ${Nt}-footer`]:{borderTop:`${$r}px ${ca} ${Or}`},"&-footer":{width:"min-content",minWidth:"100%",lineHeight:`${ci-2*$r}px`,textAlign:"center","&-extra":{padding:`0 ${Br}px`,lineHeight:`${ci-2*$r}px`,textAlign:"start","&:not(:last-child)":{borderBottom:`${$r}px ${ca} ${Or}`}}},"&-now":{textAlign:"start"},"&-today-btn":{color:Oo,"&:hover":{color:qo},"&:active":{color:Ko},[`&${Nt}-today-btn-disabled`]:{color:co,cursor:"not-allowed"}},"&-decade-panel":{[Pn]:{padding:`0 ${Dr/2}px`},[`${Nt}-cell::before`]:{display:"none"}},"&-year-panel,\n &-quarter-panel,\n &-month-panel":{[`${Nt}-body`]:{padding:`0 ${Dr}px`},[Pn]:{width:Mn},[`${Nt}-cell-range-hover-start::after`]:{borderStartStartRadius:ns,borderEndStartRadius:ns,borderStartEndRadius:0,borderEndEndRadius:0,[`${Nt}-panel-rtl &`]:{borderStartStartRadius:0,borderEndStartRadius:0,borderStartEndRadius:ns,borderEndEndRadius:ns}},[`${Nt}-cell-range-hover-end::after`]:{borderStartStartRadius:0,borderEndStartRadius:0,borderStartEndRadius:ns,borderEndEndRadius:ns,[`${Nt}-panel-rtl &`]:{borderStartStartRadius:ns,borderEndStartRadius:ns,borderStartEndRadius:0,borderEndEndRadius:0}}},"&-year-panel,\n &-month-panel":{[`${Nt}-cell-range-hover-start::after`]:{insetInlineStart:Un,borderInlineStart:`${$r}px dashed ${Ns}`,[`${Nt}-panel-rtl &`]:{insetInlineEnd:Un,borderInlineEnd:`${$r}px dashed ${Ns}`}},[`${Nt}-cell-range-hover-end::after`]:{insetInlineEnd:Un,borderInlineEnd:`${$r}px dashed ${Ns}`,[`${Nt}-panel-rtl &`]:{insetInlineStart:Un,borderInlineStart:`${$r}px dashed ${Ns}`}}},"&-week-panel":{[`${Nt}-body`]:{padding:`${Dr}px ${Br}px`},[`${Nt}-cell`]:{[`&:hover ${Pn}, &-selected ${Pn}, ${Pn}`]:{background:"transparent !important"}},"&-row":{td:{"&:before":{transition:`background ${Si}`},"&:first-child:before":{borderStartStartRadius:ns,borderEndStartRadius:ns},"&:last-child:before":{borderStartEndRadius:ns,borderEndEndRadius:ns}},"&:hover td":{"&:before":{background:il}},"&-range-start td,\n &-range-end td,\n &-selected td":{[`&${zt}`]:{"&:before":{background:Ea},[`&${Nt}-cell-week`]:{color:new zc.C(Zo).setAlpha(.5).toHexString()},[Pn]:{color:Zo}}},"&-range-hover td:before":{background:dn}}},"&-date-panel":{[`${Nt}-body`]:{padding:`${Dr}px ${kn}px`},[`${Nt}-content`]:{width:or*7,th:{width:or,boxSizing:"border-box",padding:0}}},"&-datetime-panel":{display:"flex",[`${Nt}-time-panel`]:{borderInlineStart:`${$r}px ${ca} ${Or}`},[`${Nt}-date-panel, ${Nt}-time-panel`]:{transition:`opacity ${$a}`},"&-active":{[`${Nt}-date-panel, ${Nt}-time-panel`]:{opacity:.3,"&-active":{opacity:1}}}},"&-time-panel":{width:"auto",minWidth:"auto",direction:"ltr",[`${Nt}-content`]:{display:"flex",flex:"auto",height:Ps},"&-column":{flex:"1 0 auto",width:Rt,margin:`${qr}px 0`,padding:0,overflowY:"hidden",textAlign:"start",listStyle:"none",transition:`background ${Si}`,overflowX:"hidden","&::after":{display:"block",height:Ps-Wt,content:'""'},"&:not(:first-child)":{borderInlineStart:`${$r}px ${ca} ${Or}`},"&-active":{background:new zc.C(dn).setAlpha(.2).toHexString()},"&:hover":{overflowY:"auto"},"> li":{margin:0,padding:0,[`&${Nt}-time-panel-cell`]:{marginInline:Sn,[`${Nt}-time-panel-cell-inner`]:{display:"block",width:Rt-2*Sn,height:Wt,margin:0,paddingBlock:0,paddingInlineEnd:0,paddingInlineStart:(Rt-Wt)/2,color:No,lineHeight:`${Wt}px`,borderRadius:ns,cursor:"pointer",transition:`background ${Si}`,"&:hover":{background:il}},"&-selected":{[`${Nt}-time-panel-cell-inner`]:{background:dn}},"&-disabled":{[`${Nt}-time-panel-cell-inner`]:{color:co,background:"transparent",cursor:"not-allowed"}}}}}},[`&-datetime-panel ${Nt}-time-panel-column:after`]:{height:Ps-Wt+qr*2}}}},Df=Ct=>{const{componentCls:Nt,colorBgContainer:zt,colorError:Pn,errorActiveShadow:Mn,colorWarning:lr,warningActiveShadow:or}=Ct;return{[`${Nt}:not(${Nt}-disabled)`]:{[`&${Nt}-status-error`]:{"&, &:not([disabled]):hover":{backgroundColor:zt,borderColor:Pn},[`&${Nt}-focused, &:focus`]:Object.assign({},(0,ic.M1)((0,ef.TS)(Ct,{activeBorderColor:Pn,activeShadow:Mn}))),[`${Nt}-active-bar`]:{background:Pn}},[`&${Nt}-status-warning`]:{"&, &:not([disabled]):hover":{backgroundColor:zt,borderColor:lr},[`&${Nt}-focused, &:focus`]:Object.assign({},(0,ic.M1)((0,ef.TS)(Ct,{activeBorderColor:lr,activeShadow:or}))),[`${Nt}-active-bar`]:{background:lr}}}}},Qf=Ct=>{const{componentCls:Nt,antCls:zt,controlHeight:Pn,fontSize:Mn,paddingInline:lr,colorBgContainer:or,lineWidth:Br,lineType:Dr,colorBorder:qr,borderRadius:ja,motionDurationMid:$r,colorBgContainerDisabled:ca,colorTextDisabled:ba,colorTextPlaceholder:Ea,controlHeightLG:Nr,fontSizeLG:Or,controlHeightSM:Ca,paddingInlineSM:xi,paddingXS:ci,marginXS:Si,colorTextDescription:Ni,lineWidthBold:Mi,lineHeight:di,colorPrimary:Mo,motionDurationSlow:co,zIndexPopup:No,paddingXXS:Vo,paddingSM:ys,textHeight:$a,cellActiveWithRangeBg:Ys,colorPrimaryBorder:vs,sizePopupArrow:Oo,borderRadiusXS:Ko,borderRadiusOuter:qo,colorBgElevated:Ns,borderRadiusLG:ns,boxShadowSecondary:Zo,borderRadiusSM:il,colorSplit:Ps,cellHoverBg:Rt,presetsWidth:Wt,presetsMaxWidth:dn,boxShadowPopoverArrow:Sn,colorTextQuaternary:kn}=Ct;return[{[Nt]:Object.assign(Object.assign(Object.assign({},(0,$d.Wf)(Ct)),wu(Ct,Pn,Mn,lr)),{position:"relative",display:"inline-flex",alignItems:"center",background:or,lineHeight:1,border:`${Br}px ${Dr} ${qr}`,borderRadius:ja,transition:`border ${$r}, box-shadow ${$r}`,"&:hover, &-focused":Object.assign({},(0,ic.pU)(Ct)),"&-focused":Object.assign({},(0,ic.M1)(Ct)),[`&${Nt}-disabled`]:{background:ca,borderColor:qr,cursor:"not-allowed",[`${Nt}-suffix`]:{color:kn}},[`&${Nt}-borderless`]:{backgroundColor:"transparent !important",borderColor:"transparent !important",boxShadow:"none !important"},[`${Nt}-input`]:{position:"relative",display:"inline-flex",alignItems:"center",width:"100%","> input":Object.assign(Object.assign({},(0,ic.ik)(Ct)),{flex:"auto",minWidth:1,height:"auto",padding:0,background:"transparent",border:0,borderRadius:0,"&:focus":{boxShadow:"none"},"&[disabled]":{background:"transparent"}}),"&:hover":{[`${Nt}-clear`]:{opacity:1}},"&-placeholder":{"> input":{color:Ea}}},"&-large":Object.assign(Object.assign({},wu(Ct,Nr,Or,lr)),{[`${Nt}-input > input`]:{fontSize:Or}}),"&-small":Object.assign({},wu(Ct,Ca,Mn,xi)),[`${Nt}-suffix`]:{display:"flex",flex:"none",alignSelf:"center",marginInlineStart:ci/2,color:ba,lineHeight:1,pointerEvents:"none","> *":{verticalAlign:"top","&:not(:last-child)":{marginInlineEnd:Si}}},[`${Nt}-clear`]:{position:"absolute",top:"50%",insetInlineEnd:0,color:ba,lineHeight:1,background:or,transform:"translateY(-50%)",cursor:"pointer",opacity:0,transition:`opacity ${$r}, color ${$r}`,"> *":{verticalAlign:"top"},"&:hover":{color:Ni}},[`${Nt}-separator`]:{position:"relative",display:"inline-block",width:"1em",height:Or,color:ba,fontSize:Or,verticalAlign:"top",cursor:"default",[`${Nt}-focused &`]:{color:Ni},[`${Nt}-range-separator &`]:{[`${Nt}-disabled &`]:{cursor:"not-allowed"}}},"&-range":{position:"relative",display:"inline-flex",[`${Nt}-clear`]:{insetInlineEnd:lr},"&:hover":{[`${Nt}-clear`]:{opacity:1}},[`${Nt}-active-bar`]:{bottom:-Br,height:Mi,marginInlineStart:lr,background:Mo,opacity:0,transition:`all ${co} ease-out`,pointerEvents:"none"},[`&${Nt}-focused`]:{[`${Nt}-active-bar`]:{opacity:1}},[`${Nt}-range-separator`]:{alignItems:"center",padding:`0 ${ci}px`,lineHeight:1},[`&${Nt}-small`]:{[`${Nt}-clear`]:{insetInlineEnd:xi},[`${Nt}-active-bar`]:{marginInlineStart:xi}}},"&-dropdown":Object.assign(Object.assign(Object.assign({},(0,$d.Wf)(Ct)),nf(Ct)),{position:"absolute",top:-9999,left:{_skip_check_:!0,value:-9999},zIndex:No,[`&${Nt}-dropdown-hidden`]:{display:"none"},[`&${Nt}-dropdown-placement-bottomLeft`]:{[`${Nt}-range-arrow`]:{top:0,display:"block",transform:"translateY(-100%)"}},[`&${Nt}-dropdown-placement-topLeft`]:{[`${Nt}-range-arrow`]:{bottom:0,display:"block",transform:"translateY(100%) rotate(180deg)"}},[`&${zt}-slide-up-enter${zt}-slide-up-enter-active${Nt}-dropdown-placement-topLeft, &${zt}-slide-up-enter${zt}-slide-up-enter-active${Nt}-dropdown-placement-topRight, &${zt}-slide-up-appear${zt}-slide-up-appear-active${Nt}-dropdown-placement-topLeft, &${zt}-slide-up-appear${zt}-slide-up-appear-active${Nt}-dropdown-placement-topRight`]:{animationName:su.Qt},[`&${zt}-slide-up-enter${zt}-slide-up-enter-active${Nt}-dropdown-placement-bottomLeft, &${zt}-slide-up-enter${zt}-slide-up-enter-active${Nt}-dropdown-placement-bottomRight, &${zt}-slide-up-appear${zt}-slide-up-appear-active${Nt}-dropdown-placement-bottomLeft, &${zt}-slide-up-appear${zt}-slide-up-appear-active${Nt}-dropdown-placement-bottomRight`]:{animationName:su.fJ},[`&${zt}-slide-up-leave${zt}-slide-up-leave-active${Nt}-dropdown-placement-topLeft, &${zt}-slide-up-leave${zt}-slide-up-leave-active${Nt}-dropdown-placement-topRight`]:{animationName:su.ly},[`&${zt}-slide-up-leave${zt}-slide-up-leave-active${Nt}-dropdown-placement-bottomLeft, &${zt}-slide-up-leave${zt}-slide-up-leave-active${Nt}-dropdown-placement-bottomRight`]:{animationName:su.Uw},[`${Nt}-panel > ${Nt}-time-panel`]:{paddingTop:Vo},[`${Nt}-ranges`]:{marginBottom:0,padding:`${Vo}px ${ys}px`,overflow:"hidden",lineHeight:`${$a-2*Br-ci/2}px`,textAlign:"start",listStyle:"none",display:"flex",justifyContent:"space-between","> li":{display:"inline-block"},[`${Nt}-preset > ${zt}-tag-blue`]:{color:Mo,background:Ys,borderColor:vs,cursor:"pointer"},[`${Nt}-ok`]:{marginInlineStart:"auto"}},[`${Nt}-range-wrapper`]:{display:"flex",position:"relative"},[`${Nt}-range-arrow`]:Object.assign({position:"absolute",zIndex:1,display:"none",marginInlineStart:lr*1.5,transition:`left ${co} ease-out`},(0,Xl.r)(Oo,Ko,qo,Ns,Sn)),[`${Nt}-panel-container`]:{overflow:"hidden",verticalAlign:"top",background:Ns,borderRadius:ns,boxShadow:Zo,transition:`margin ${co}`,[`${Nt}-panel-layout`]:{display:"flex",flexWrap:"nowrap",alignItems:"stretch"},[`${Nt}-presets`]:{display:"flex",flexDirection:"column",minWidth:Wt,maxWidth:dn,ul:{height:0,flex:"auto",listStyle:"none",overflow:"auto",margin:0,padding:ci,borderInlineEnd:`${Br}px ${Dr} ${Ps}`,li:Object.assign(Object.assign({},$d.vS),{borderRadius:il,paddingInline:ci,paddingBlock:(Ca-Math.round(Mn*di))/2,cursor:"pointer",transition:`all ${co}`,"+ li":{marginTop:Si},"&:hover":{background:Rt}})}},[`${Nt}-panels`]:{display:"inline-flex",flexWrap:"nowrap",direction:"ltr",[`${Nt}-panel`]:{borderWidth:`0 0 ${Br}px`},"&:last-child":{[`${Nt}-panel`]:{borderWidth:0}}},[`${Nt}-panel`]:{verticalAlign:"top",background:"transparent",borderRadius:0,borderWidth:0,[`${Nt}-content, table`]:{textAlign:"center"},"&-focused":{borderColor:qr}}}}),"&-dropdown-range":{padding:`${Oo*2/3}px 0`,"&-hidden":{display:"none"}},"&-rtl":{direction:"rtl",[`${Nt}-separator`]:{transform:"rotate(180deg)"},[`${Nt}-footer`]:{"&-extra":{direction:"rtl"}}}})},(0,su.oN)(Ct,"slide-up"),(0,su.oN)(Ct,"slide-down"),(0,Uc.Fm)(Ct,"move-up"),(0,Uc.Fm)(Ct,"move-down")]},Yf=Ct=>{const{componentCls:Nt,controlHeightLG:zt,paddingXXS:Pn,padding:Mn}=Ct;return{pickerCellCls:`${Nt}-cell`,pickerCellInnerCls:`${Nt}-cell-inner`,pickerYearMonthCellWidth:zt*1.5,pickerQuarterPanelContentHeight:zt*1.4,pickerCellPaddingVertical:Pn+Pn/2,pickerCellBorderGap:2,pickerControlIconSize:7,pickerControlIconBorderWidth:1.5,pickerDatePanelPaddingHorizontal:Mn+Pn/2}},Hg=Ct=>({cellHoverBg:Ct.controlItemBgHover,cellActiveWithRangeBg:Ct.controlItemBgActive,cellHoverWithRangeBg:new zc.C(Ct.colorPrimary).lighten(35).toHexString(),cellRangeBorderColor:new zc.C(Ct.colorPrimary).lighten(20).toHexString(),cellBgDisabled:Ct.colorBgContainerDisabled,timeColumnWidth:Ct.controlHeightLG*1.4,timeColumnHeight:28*8,timeCellHeight:28,cellWidth:Ct.controlHeightSM*1.5,cellHeight:Ct.controlHeightSM,textHeight:Ct.controlHeightLG,withoutTimeCellHeight:Ct.controlHeightLG*1.65});var Bl=(0,Zf.Z)("DatePicker",Ct=>{const Nt=(0,ef.TS)((0,ic.e5)(Ct),Yf(Ct));return[Qf(Nt),Df(Nt),(0,Bo.c)(Ct,{focusElCls:`${Ct.componentCls}-focused`})]},Ct=>Object.assign(Object.assign(Object.assign({},(0,ic.TM)(Ct)),Hg(Ct)),{presetsWidth:120,presetsMaxWidth:200,zIndexPopup:Ct.zIndexPopupBase+50}));function Xf(Ct,Nt,zt){return zt!==void 0?zt:Nt==="year"&&Ct.lang.yearPlaceholder?Ct.lang.yearPlaceholder:Nt==="quarter"&&Ct.lang.quarterPlaceholder?Ct.lang.quarterPlaceholder:Nt==="month"&&Ct.lang.monthPlaceholder?Ct.lang.monthPlaceholder:Nt==="week"&&Ct.lang.weekPlaceholder?Ct.lang.weekPlaceholder:Nt==="time"&&Ct.timePickerLocale.placeholder?Ct.timePickerLocale.placeholder:Ct.lang.placeholder}function Ul(Ct,Nt,zt){return zt!==void 0?zt:Nt==="year"&&Ct.lang.yearPlaceholder?Ct.lang.rangeYearPlaceholder:Nt==="quarter"&&Ct.lang.quarterPlaceholder?Ct.lang.rangeQuarterPlaceholder:Nt==="month"&&Ct.lang.monthPlaceholder?Ct.lang.rangeMonthPlaceholder:Nt==="week"&&Ct.lang.weekPlaceholder?Ct.lang.rangeWeekPlaceholder:Nt==="time"&&Ct.timePickerLocale.placeholder?Ct.timePickerLocale.rangePlaceholder:Ct.lang.rangePlaceholder}function Qr(Ct,Nt){const zt={adjustX:1,adjustY:1};switch(Nt){case"bottomLeft":return{points:["tl","bl"],offset:[0,4],overflow:zt};case"bottomRight":return{points:["tr","br"],offset:[0,4],overflow:zt};case"topLeft":return{points:["bl","tl"],offset:[0,-4],overflow:zt};case"topRight":return{points:["br","tr"],offset:[0,-4],overflow:zt};default:return{points:Ct==="rtl"?["tr","br"]:["tl","bl"],offset:[0,4],overflow:zt}}}function rf(Ct){return Ct?Array.isArray(Ct)?Ct:[Ct]:[]}function pc(Ct){const{format:Nt,picker:zt,showHour:Pn,showMinute:Mn,showSecond:lr,use12Hours:or}=Ct,Br=rf(Nt)[0],Dr=Object.assign({},Ct);return Nt&&Array.isArray(Nt)&&(Dr.format=Br),Br&&typeof Br=="string"&&(!Br.includes("s")&&lr===void 0&&(Dr.showSecond=!1),!Br.includes("m")&&Mn===void 0&&(Dr.showMinute=!1),!Br.includes("H")&&!Br.includes("h")&&!Br.includes("K")&&!Br.includes("k")&&Pn===void 0&&(Dr.showHour=!1),(Br.includes("a")||Br.includes("A"))&&or===void 0&&(Dr.use12Hours=!0)),zt==="time"?Dr:(typeof Br=="function"&&delete Dr.format,{showTime:Dr})}function lu(Ct,Nt,zt){if(Ct===!1)return!1;const Pn={clearIcon:Nt!=null?Nt:zt};return typeof Ct=="object"?Object.assign(Object.assign({},Pn),Ct):Pn}var yc=Ie(3113);function uu(Ct){return ve.createElement(yc.ZP,Object.assign({size:"small",type:"primary"},Ct))}var Wc={button:uu},Jl=function(Ct,Nt){var zt={};for(var Pn in Ct)Object.prototype.hasOwnProperty.call(Ct,Pn)&&Nt.indexOf(Pn)<0&&(zt[Pn]=Ct[Pn]);if(Ct!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Mn=0,Pn=Object.getOwnPropertySymbols(Ct);Mn{const{prefixCls:Mn,getPopupContainer:lr,className:or,placement:Br,size:Dr,disabled:qr,bordered:ja=!0,placeholder:$r,popupClassName:ca,dropdownClassName:ba,status:Ea,clearIcon:Nr,allowClear:Or,rootClassName:Ca}=zt,xi=Jl(zt,["prefixCls","getPopupContainer","className","placement","size","disabled","bordered","placeholder","popupClassName","dropdownClassName","status","clearIcon","allowClear","rootClassName"]),ci=ve.useRef(null),{getPrefixCls:Si,direction:Ni,getPopupContainer:Mi}=(0,ve.useContext)(wf.E_),di=Si("picker",Mn),{compactSize:Mo,compactItemClassnames:co}=(0,Mf.ri)(di,Ni),{format:No,showTime:Vo,picker:ys}=zt,$a=Si(),[Ys,vs]=Bl(di),Oo=Object.assign(Object.assign({},Vo?pc(Object.assign({format:No,picker:ys},Vo)):{}),ys==="time"?pc(Object.assign(Object.assign({format:No},zt),{picker:ys})):{}),Ko=(0,Jd.Z)(Sn=>{var kn;return(kn=Dr!=null?Dr:Mo)!==null&&kn!==void 0?kn:Sn}),qo=ve.useContext(mc.Z),Ns=qr!=null?qr:qo,ns=(0,ve.useContext)(qd.aM),{hasFeedback:Zo,status:il,feedbackIcon:Ps}=ns,Rt=ve.createElement(ve.Fragment,null,ys==="time"?ve.createElement(qe,null):ve.createElement(Ge,null),Zo&&Ps);(0,ve.useImperativeHandle)(Pn,()=>({focus:()=>{var Sn;return(Sn=ci.current)===null||Sn===void 0?void 0:Sn.focus()},blur:()=>{var Sn;return(Sn=ci.current)===null||Sn===void 0?void 0:Sn.blur()}}));const[Wt]=(0,Ll.Z)("Calendar",Kf.Z),dn=Object.assign(Object.assign({},Wt),zt.locale);return Ys(ve.createElement(sd,Object.assign({separator:ve.createElement("span",{"aria-label":"to",className:`${di}-separator`},ve.createElement(yt,null)),disabled:Ns,ref:ci,dropdownAlign:Qr(Ni,Br),placeholder:Ul(dn,ys,$r),suffixIcon:Rt,prevIcon:ve.createElement("span",{className:`${di}-prev-icon`}),nextIcon:ve.createElement("span",{className:`${di}-next-icon`}),superPrevIcon:ve.createElement("span",{className:`${di}-super-prev-icon`}),superNextIcon:ve.createElement("span",{className:`${di}-super-next-icon`}),transitionName:`${$a}-slide-up`},xi,Oo,{className:dt()({[`${di}-${Ko}`]:Ko,[`${di}-borderless`]:!ja},(0,Wo.Z)(di,(0,Wo.F)(il,Ea),Zo),vs,co,or,Ca),locale:dn.lang,prefixCls:di,getPopupContainer:lr||Mi,generateConfig:Ct,components:Wc,direction:Ni,dropdownClassName:dt()(vs,ca||ba,Ca),allowClear:lu(Or,Nr,ve.createElement(ot.Z,null))})))})}var Wl=function(Ct,Nt){var zt={};for(var Pn in Ct)Object.prototype.hasOwnProperty.call(Ct,Pn)&&Nt.indexOf(Pn)<0&&(zt[Pn]=Ct[Pn]);if(Ct!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Mn=0,Pn=Object.getOwnPropertySymbols(Ct);Mn{const{prefixCls:Ea,getPopupContainer:Nr,style:Or,className:Ca,rootClassName:xi,size:ci,bordered:Si=!0,placement:Ni,placeholder:Mi,popupClassName:di,dropdownClassName:Mo,disabled:co,status:No,clearIcon:Vo,allowClear:ys}=ca,$a=Wl(ca,["prefixCls","getPopupContainer","style","className","rootClassName","size","bordered","placement","placeholder","popupClassName","dropdownClassName","disabled","status","clearIcon","allowClear"]),{getPrefixCls:Ys,direction:vs,getPopupContainer:Oo,[ja]:Ko}=(0,ve.useContext)(wf.E_),qo=Ys("picker",Ea),{compactSize:Ns,compactItemClassnames:ns}=(0,Mf.ri)(qo,vs),Zo=ve.useRef(null),{format:il,showTime:Ps}=ca,[Rt,Wt]=Bl(qo);(0,ve.useImperativeHandle)(ba,()=>({focus:()=>{var ha;return(ha=Zo.current)===null||ha===void 0?void 0:ha.focus()},blur:()=>{var ha;return(ha=Zo.current)===null||ha===void 0?void 0:ha.blur()}}));const dn={showToday:!0};let Sn={};Dr&&(Sn.picker=Dr);const kn=Dr||ca.picker;Sn=Object.assign(Object.assign(Object.assign({},Sn),Ps?pc(Object.assign({format:il,picker:kn},Ps)):{}),kn==="time"?pc(Object.assign(Object.assign({format:il},ca),{picker:kn})):{});const Gn=Ys(),Un=(0,Jd.Z)(ha=>{var Ha;return(Ha=ci!=null?ci:Ns)!==null&&Ha!==void 0?Ha:ha}),cr=ve.useContext(mc.Z),sr=co!=null?co:cr,wr=(0,ve.useContext)(qd.aM),{hasFeedback:Ar,status:Cr,feedbackIcon:ta}=wr,Yr=ve.createElement(ve.Fragment,null,kn==="time"?ve.createElement(qe,null):ve.createElement(Ge,null),Ar&&ta),[Xr]=(0,Ll.Z)("DatePicker",Kf.Z),Aa=Object.assign(Object.assign({},Xr),ca.locale);return Rt(ve.createElement(Xd,Object.assign({ref:Zo,placeholder:Xf(Aa,kn,Mi),suffixIcon:Yr,dropdownAlign:Qr(vs,Ni),prevIcon:ve.createElement("span",{className:`${qo}-prev-icon`}),nextIcon:ve.createElement("span",{className:`${qo}-next-icon`}),superPrevIcon:ve.createElement("span",{className:`${qo}-super-prev-icon`}),superNextIcon:ve.createElement("span",{className:`${qo}-super-next-icon`}),transitionName:`${Gn}-slide-up`},dn,$a,Sn,{locale:Aa.lang,className:dt()({[`${qo}-${Un}`]:Un,[`${qo}-borderless`]:!Si},(0,Wo.Z)(qo,(0,Wo.F)(Cr,No),Ar),Wt,ns,Ko==null?void 0:Ko.className,Ca,xi),style:Object.assign(Object.assign({},Ko==null?void 0:Ko.style),Or),prefixCls:qo,getPopupContainer:Nr||Oo,generateConfig:Ct,components:Wc,direction:vs,disabled:sr,dropdownClassName:dt()(Wt,xi,di||Mo),allowClear:lu(ys,Vo,ve.createElement(ot.Z,null))})))});return qr&&($r.displayName=qr),$r}const zt=Nt(),Pn=Nt("week","WeekPicker"),Mn=Nt("month","MonthPicker"),lr=Nt("year","YearPicker"),or=Nt("time","TimePicker"),Br=Nt("quarter","QuarterPicker");return{DatePicker:zt,WeekPicker:Pn,MonthPicker:Mn,YearPicker:lr,TimePicker:or,QuarterPicker:Br}}const _h=null;function zh(Ct){const{DatePicker:Nt,WeekPicker:zt,MonthPicker:Pn,YearPicker:Mn,TimePicker:lr,QuarterPicker:or}=qf(Ct),Br=Jf(Ct),Dr=Nt;return Dr.WeekPicker=zt,Dr.MonthPicker=Pn,Dr.YearPicker=Mn,Dr.RangePicker=Br,Dr.TimePicker=lr,Dr.QuarterPicker=or,Dr}var $f=zh;const jc=$f(he);function Os(Ct){const Nt=Qr(Ct.direction,Ct.placement);return Nt.overflow.adjustY=!1,Nt.overflow.adjustX=!1,Object.assign(Object.assign({},Ct),{dropdownAlign:Nt})}const Nu=(0,ie.Z)(jc,"picker",null,Os);jc._InternalPanelDoNotUseOrYouWillBeFired=Nu;const Ru=(0,ie.Z)(jc.RangePicker,"picker",null,Os);jc._InternalRangePanelDoNotUseOrYouWillBeFired=Ru,jc.generatePicker=$f;var Uh=jc},28103:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return ye}});var Be=Ie(92310),He=Ie.n(Be),Fe=Ie(59301),Ce=Ie(36355),_e=Ie(17313),Pe=Ie(83116),ge=Ie(37613);const Ae=xe=>{const{componentCls:ce,sizePaddingEdgeHorizontal:te,colorSplit:ne,lineWidth:le,textPaddingInline:oe,orientationMargin:de,verticalMarginInline:he}=xe;return{[ce]:Object.assign(Object.assign({},(0,_e.Wf)(xe)),{borderBlockStart:`${le}px solid ${ne}`,"&-vertical":{position:"relative",top:"-0.06em",display:"inline-block",height:"0.9em",marginInline:he,marginBlock:0,verticalAlign:"middle",borderTop:0,borderInlineStart:`${le}px solid ${ne}`},"&-horizontal":{display:"flex",clear:"both",width:"100%",minWidth:"100%",margin:`${xe.dividerHorizontalGutterMargin}px 0`},[`&-horizontal${ce}-with-text`]:{display:"flex",alignItems:"center",margin:`${xe.dividerHorizontalWithTextGutterMargin}px 0`,color:xe.colorTextHeading,fontWeight:500,fontSize:xe.fontSizeLG,whiteSpace:"nowrap",textAlign:"center",borderBlockStart:`0 ${ne}`,"&::before, &::after":{position:"relative",width:"50%",borderBlockStart:`${le}px solid transparent`,borderBlockStartColor:"inherit",borderBlockEnd:0,transform:"translateY(50%)",content:"''"}},[`&-horizontal${ce}-with-text-left`]:{"&::before":{width:`${de*100}%`},"&::after":{width:`${100-de*100}%`}},[`&-horizontal${ce}-with-text-right`]:{"&::before":{width:`${100-de*100}%`},"&::after":{width:`${de*100}%`}},[`${ce}-inner-text`]:{display:"inline-block",paddingBlock:0,paddingInline:oe},"&-dashed":{background:"none",borderColor:ne,borderStyle:"dashed",borderWidth:`${le}px 0 0`},[`&-horizontal${ce}-with-text${ce}-dashed`]:{"&::before, &::after":{borderStyle:"dashed none none"}},[`&-vertical${ce}-dashed`]:{borderInlineStartWidth:le,borderInlineEnd:0,borderBlockStart:0,borderBlockEnd:0},[`&-plain${ce}-with-text`]:{color:xe.colorText,fontWeight:"normal",fontSize:xe.fontSize},[`&-horizontal${ce}-with-text-left${ce}-no-default-orientation-margin-left`]:{"&::before":{width:0},"&::after":{width:"100%"},[`${ce}-inner-text`]:{paddingInlineStart:te}},[`&-horizontal${ce}-with-text-right${ce}-no-default-orientation-margin-right`]:{"&::before":{width:"100%"},"&::after":{width:0},[`${ce}-inner-text`]:{paddingInlineEnd:te}}})}};var be=(0,Pe.Z)("Divider",xe=>{const ce=(0,ge.TS)(xe,{dividerHorizontalWithTextGutterMargin:xe.margin,dividerHorizontalGutterMargin:xe.marginLG,sizePaddingEdgeHorizontal:0});return[Ae(ce)]},xe=>({textPaddingInline:"1em",orientationMargin:.05,verticalMarginInline:xe.marginXS})),we=function(xe,ce){var te={};for(var ne in xe)Object.prototype.hasOwnProperty.call(xe,ne)&&ce.indexOf(ne)<0&&(te[ne]=xe[ne]);if(xe!=null&&typeof Object.getOwnPropertySymbols=="function")for(var le=0,ne=Object.getOwnPropertySymbols(xe);le{const{getPrefixCls:ce,direction:te,divider:ne}=Fe.useContext(Ce.E_),{prefixCls:le,type:oe="horizontal",orientation:de="center",orientationMargin:he,className:ie,rootClassName:ue,children:ve,dashed:Se,plain:De,style:Re}=xe,Ne=we(xe,["prefixCls","type","orientation","orientationMargin","className","rootClassName","children","dashed","plain","style"]),ze=ce("divider",le),[Ge,Xe]=be(ze),Qe=de.length>0?`-${de}`:de,nt=!!ve,$e=de==="left"&&he!=null,qe=de==="right"&&he!=null,ot=He()(ze,ne==null?void 0:ne.className,Xe,`${ze}-${oe}`,{[`${ze}-with-text`]:nt,[`${ze}-with-text${Qe}`]:nt,[`${ze}-dashed`]:!!Se,[`${ze}-plain`]:!!De,[`${ze}-rtl`]:te==="rtl",[`${ze}-no-default-orientation-margin-left`]:$e,[`${ze}-no-default-orientation-margin-right`]:qe},ie,ue),at=Fe.useMemo(()=>typeof he=="number"?he:/^\d+$/.test(he)?Number(he):he,[he]),lt=Object.assign(Object.assign({},$e&&{marginLeft:at}),qe&&{marginRight:at});return Ge(Fe.createElement("div",Object.assign({className:ot,style:Object.assign(Object.assign({},ne==null?void 0:ne.style),Re)},Ne,{role:"separator"}),ve&&oe!=="vertical"&&Fe.createElement("span",{className:`${ze}-inner-text`,style:lt},ve)))}},43428:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return Ot}});var Be=Ie(92310),He=Ie.n(Be),Fe=Ie(33885),Ce=Ie(42978),_e=Ie(43403),Pe=Ie(34280),ge=Ie(59301),Ae=ge.createContext(null),be=ge.createContext({}),we=Ae,pe=Ie(20068),ye=Ie(54476),xe=Ie(77900),ce=Ie(10228),te=Ie(26112),ne=Ie(70425),le=function(an){var On=an.prefixCls,Rn=an.className,sn=an.style,tn=an.children,Gt=an.containerRef,It=an.id,Et=an.onMouseEnter,Zt=an.onMouseOver,vt=an.onMouseLeave,At=an.onClick,Qt=an.onKeyDown,Ft=an.onKeyUp,wt={onMouseEnter:Et,onMouseOver:Zt,onMouseLeave:vt,onClick:At,onKeyDown:Qt,onKeyUp:Ft},ln=ge.useContext(be),In=ln.panel,Kn=(0,ne.useComposeRef)(In,Gt);return ge.createElement(ge.Fragment,null,ge.createElement("div",(0,ye.Z)({id:It,className:He()("".concat(On,"-content"),Rn),style:(0,Fe.Z)({},sn),"aria-modal":"true",role:"dialog",ref:Kn},wt),tn))},oe=le,de=Ie(48736);function he(rn){return typeof rn=="string"&&String(Number(rn))===rn?((0,de.ZP)(!1,"Invalid value type of `width` or `height` which should be number type instead."),Number(rn)):rn}function ie(rn){warning(!("wrapperClassName"in rn),"'wrapperClassName' is removed. Please use 'rootClassName' instead."),warning(canUseDom()||!rn.open,"Drawer with 'open' in SSR is not work since no place to createPortal. Please move to 'useEffect' instead.")}var ue={width:0,height:0,overflow:"hidden",outline:"none",position:"absolute"};function ve(rn,an){var On,Rn,sn,tn,Gt=rn.prefixCls,It=rn.open,Et=rn.placement,Zt=rn.inline,vt=rn.push,At=rn.forceRender,Qt=rn.autoFocus,Ft=rn.keyboard,wt=rn.rootClassName,ln=rn.rootStyle,In=rn.zIndex,Kn=rn.className,Vn=rn.id,Zn=rn.style,$n=rn.motion,Jt=rn.width,yn=rn.height,Hn=rn.children,Bn=rn.contentWrapperStyle,Er=rn.mask,Fr=rn.maskClosable,br=rn.maskMotion,Wr=rn.maskClassName,Da=rn.maskStyle,Ya=rn.afterOpenChange,Ba=rn.onClose,Ia=rn.onMouseEnter,Ii=rn.onMouseOver,wi=rn.onMouseLeave,jr=rn.onClick,Ka=rn.onKeyDown,oi=rn.onKeyUp,pr=ge.useRef(),vr=ge.useRef(),li=ge.useRef();ge.useImperativeHandle(an,function(){return pr.current});var zn=function(pn){var Yn=pn.keyCode,Dn=pn.shiftKey;switch(Yn){case ce.Z.TAB:{if(Yn===ce.Z.TAB){if(!Dn&&document.activeElement===li.current){var qn;(qn=vr.current)===null||qn===void 0||qn.focus({preventScroll:!0})}else if(Dn&&document.activeElement===vr.current){var er;(er=li.current)===null||er===void 0||er.focus({preventScroll:!0})}}break}case ce.Z.ESC:{Ba&&Ft&&(pn.stopPropagation(),Ba(pn));break}}};ge.useEffect(function(){if(It&&Qt){var mn;(mn=pr.current)===null||mn===void 0||mn.focus({preventScroll:!0})}},[It]);var hr=ge.useState(!1),Tr=(0,Ce.Z)(hr,2),Rr=Tr[0],fa=Tr[1],bt=ge.useContext(we),Me;vt===!1?Me={distance:0}:vt===!0?Me={}:Me=vt||{};var Le=(On=(Rn=(sn=Me)===null||sn===void 0?void 0:sn.distance)!==null&&Rn!==void 0?Rn:bt==null?void 0:bt.pushDistance)!==null&&On!==void 0?On:180,Te=ge.useMemo(function(){return{pushDistance:Le,push:function(){fa(!0)},pull:function(){fa(!1)}}},[Le]);ge.useEffect(function(){if(It){var mn;bt==null||(mn=bt.push)===null||mn===void 0||mn.call(bt)}else{var pn;bt==null||(pn=bt.pull)===null||pn===void 0||pn.call(bt)}},[It]),ge.useEffect(function(){return function(){var mn;bt==null||(mn=bt.pull)===null||mn===void 0||mn.call(bt)}},[]);var Ue=Er&&ge.createElement(xe.default,(0,ye.Z)({key:"mask"},br,{visible:It}),function(mn,pn){var Yn=mn.className,Dn=mn.style;return ge.createElement("div",{className:He()("".concat(Gt,"-mask"),Yn,Wr),style:(0,Fe.Z)((0,Fe.Z)({},Dn),Da),onClick:Fr&&It?Ba:void 0,ref:pn})}),Ye=typeof $n=="function"?$n(Et):$n,xt={};if(Rr&&Le)switch(Et){case"top":xt.transform="translateY(".concat(Le,"px)");break;case"bottom":xt.transform="translateY(".concat(-Le,"px)");break;case"left":xt.transform="translateX(".concat(Le,"px)");break;default:xt.transform="translateX(".concat(-Le,"px)");break}Et==="left"||Et==="right"?xt.width=he(Jt):xt.height=he(yn);var Pt={onMouseEnter:Ia,onMouseOver:Ii,onMouseLeave:wi,onClick:jr,onKeyDown:Ka,onKeyUp:oi},Xt=ge.createElement(xe.default,(0,ye.Z)({key:"panel"},Ye,{visible:It,forceRender:At,onVisibleChanged:function(pn){Ya==null||Ya(pn)},removeOnLeave:!1,leavedClassName:"".concat(Gt,"-content-wrapper-hidden")}),function(mn,pn){var Yn=mn.className,Dn=mn.style;return ge.createElement("div",(0,ye.Z)({className:He()("".concat(Gt,"-content-wrapper"),Yn),style:(0,Fe.Z)((0,Fe.Z)((0,Fe.Z)({},xt),Dn),Bn)},(0,te.Z)(rn,{data:!0})),ge.createElement(oe,(0,ye.Z)({id:Vn,containerRef:pn,prefixCls:Gt,className:Kn,style:Zn},Pt),Hn))}),Ht=(0,Fe.Z)({},ln);return In&&(Ht.zIndex=In),ge.createElement(we.Provider,{value:Te},ge.createElement("div",{className:He()(Gt,"".concat(Gt,"-").concat(Et),wt,(tn={},(0,pe.Z)(tn,"".concat(Gt,"-open"),It),(0,pe.Z)(tn,"".concat(Gt,"-inline"),Zt),tn)),style:Ht,tabIndex:-1,ref:pr,onKeyDown:zn},Ue,ge.createElement("div",{tabIndex:0,ref:vr,style:ue,"aria-hidden":"true","data-sentinel":"start"}),Xt,ge.createElement("div",{tabIndex:0,ref:li,style:ue,"aria-hidden":"true","data-sentinel":"end"})))}var Se=ge.forwardRef(ve),De=Se,Re=function(an){var On=an.open,Rn=On===void 0?!1:On,sn=an.prefixCls,tn=sn===void 0?"rc-drawer":sn,Gt=an.placement,It=Gt===void 0?"right":Gt,Et=an.autoFocus,Zt=Et===void 0?!0:Et,vt=an.keyboard,At=vt===void 0?!0:vt,Qt=an.width,Ft=Qt===void 0?378:Qt,wt=an.mask,ln=wt===void 0?!0:wt,In=an.maskClosable,Kn=In===void 0?!0:In,Vn=an.getContainer,Zn=an.forceRender,$n=an.afterOpenChange,Jt=an.destroyOnClose,yn=an.onMouseEnter,Hn=an.onMouseOver,Bn=an.onMouseLeave,Er=an.onClick,Fr=an.onKeyDown,br=an.onKeyUp,Wr=an.panelRef,Da=ge.useState(!1),Ya=(0,Ce.Z)(Da,2),Ba=Ya[0],Ia=Ya[1],Ii=ge.useState(!1),wi=(0,Ce.Z)(Ii,2),jr=wi[0],Ka=wi[1];(0,Pe.Z)(function(){Ka(!0)},[]);var oi=jr?Rn:!1,pr=ge.useRef(),vr=ge.useRef();(0,Pe.Z)(function(){oi&&(vr.current=document.activeElement)},[oi]);var li=function(fa){var bt;if(Ia(fa),$n==null||$n(fa),!fa&&vr.current&&!((bt=pr.current)!==null&&bt!==void 0&&bt.contains(vr.current))){var Me;(Me=vr.current)===null||Me===void 0||Me.focus({preventScroll:!0})}},zn=ge.useMemo(function(){return{panel:Wr}},[Wr]);if(!Zn&&!Ba&&!oi&&Jt)return null;var hr={onMouseEnter:yn,onMouseOver:Hn,onMouseLeave:Bn,onClick:Er,onKeyDown:Fr,onKeyUp:br},Tr=(0,Fe.Z)((0,Fe.Z)({},an),{},{open:oi,prefixCls:tn,placement:It,autoFocus:Zt,keyboard:At,width:Ft,mask:ln,maskClosable:Kn,inline:Vn===!1,afterOpenChange:li,ref:pr},hr);return ge.createElement(be.Provider,{value:zn},ge.createElement(_e.Z,{open:oi||Zn||Ba,autoDestroy:!1,getContainer:Vn,autoLock:ln&&(oi||Ba)},ge.createElement(De,Tr)))},Ne=Re,ze=Ne,Ge=Ie(62892),Xe=Ie(36355),Qe=Ie(32441),nt=Ie(47729),qe=rn=>{const{prefixCls:an,title:On,footer:Rn,extra:sn,closeIcon:tn,closable:Gt,onClose:It,headerStyle:Et,drawerStyle:Zt,bodyStyle:vt,footerStyle:At,children:Qt}=rn,Ft=ge.useCallback(Vn=>ge.createElement("button",{type:"button",onClick:It,"aria-label":"Close",className:`${an}-close`},Vn),[It]),[wt,ln]=(0,nt.Z)(Gt,tn,Ft,void 0,!0),In=ge.useMemo(()=>!On&&!wt?null:ge.createElement("div",{style:Et,className:He()(`${an}-header`,{[`${an}-header-close-only`]:wt&&!On&&!sn})},ge.createElement("div",{className:`${an}-header-title`},ln,On&&ge.createElement("div",{className:`${an}-title`},On)),sn&&ge.createElement("div",{className:`${an}-extra`},sn)),[wt,ln,sn,Et,an,On]),Kn=ge.useMemo(()=>{if(!Rn)return null;const Vn=`${an}-footer`;return ge.createElement("div",{className:Vn,style:At},Rn)},[Rn,At,an]);return ge.createElement("div",{className:`${an}-wrapper-body`,style:Zt},In,ge.createElement("div",{className:`${an}-body`,style:vt},Qt),Kn)},ot=Ie(33234),at=Ie(83116),lt=Ie(37613),ut=rn=>{const{componentCls:an,motionDurationSlow:On}=rn,Rn={"&-enter, &-appear, &-leave":{"&-start":{transition:"none"},"&-active":{transition:`all ${On}`}}};return{[an]:{[`${an}-mask-motion`]:{"&-enter, &-appear, &-leave":{"&-active":{transition:`all ${On}`}},"&-enter, &-appear":{opacity:0,"&-active":{opacity:1}},"&-leave":{opacity:1,"&-active":{opacity:0}}},[`${an}-panel-motion`]:{"&-left":[Rn,{"&-enter, &-appear":{"&-start":{transform:"translateX(-100%) !important"},"&-active":{transform:"translateX(0)"}},"&-leave":{transform:"translateX(0)","&-active":{transform:"translateX(-100%)"}}}],"&-right":[Rn,{"&-enter, &-appear":{"&-start":{transform:"translateX(100%) !important"},"&-active":{transform:"translateX(0)"}},"&-leave":{transform:"translateX(0)","&-active":{transform:"translateX(100%)"}}}],"&-top":[Rn,{"&-enter, &-appear":{"&-start":{transform:"translateY(-100%) !important"},"&-active":{transform:"translateY(0)"}},"&-leave":{transform:"translateY(0)","&-active":{transform:"translateY(-100%)"}}}],"&-bottom":[Rn,{"&-enter, &-appear":{"&-start":{transform:"translateY(100%) !important"},"&-active":{transform:"translateY(0)"}},"&-leave":{transform:"translateY(0)","&-active":{transform:"translateY(100%)"}}}]}}}};const yt=rn=>{const{componentCls:an,zIndexPopup:On,colorBgMask:Rn,colorBgElevated:sn,motionDurationSlow:tn,motionDurationMid:Gt,padding:It,paddingLG:Et,fontSizeLG:Zt,lineHeightLG:vt,lineWidth:At,lineType:Qt,colorSplit:Ft,marginSM:wt,colorIcon:ln,colorIconHover:In,colorText:Kn,fontWeightStrong:Vn,footerPaddingBlock:Zn,footerPaddingInline:$n}=rn,Jt=`${an}-content-wrapper`;return{[an]:{position:"fixed",inset:0,zIndex:On,pointerEvents:"none","&-pure":{position:"relative",background:sn,[`&${an}-left`]:{boxShadow:rn.boxShadowDrawerLeft},[`&${an}-right`]:{boxShadow:rn.boxShadowDrawerRight},[`&${an}-top`]:{boxShadow:rn.boxShadowDrawerUp},[`&${an}-bottom`]:{boxShadow:rn.boxShadowDrawerDown}},"&-inline":{position:"absolute"},[`${an}-mask`]:{position:"absolute",inset:0,zIndex:On,background:Rn,pointerEvents:"auto"},[Jt]:{position:"absolute",zIndex:On,maxWidth:"100vw",transition:`all ${tn}`,"&-hidden":{display:"none"}},[`&-left > ${Jt}`]:{top:0,bottom:0,left:{_skip_check_:!0,value:0},boxShadow:rn.boxShadowDrawerLeft},[`&-right > ${Jt}`]:{top:0,right:{_skip_check_:!0,value:0},bottom:0,boxShadow:rn.boxShadowDrawerRight},[`&-top > ${Jt}`]:{top:0,insetInline:0,boxShadow:rn.boxShadowDrawerUp},[`&-bottom > ${Jt}`]:{bottom:0,insetInline:0,boxShadow:rn.boxShadowDrawerDown},[`${an}-content`]:{width:"100%",height:"100%",overflow:"auto",background:sn,pointerEvents:"auto"},[`${an}-wrapper-body`]:{display:"flex",flexDirection:"column",width:"100%",height:"100%"},[`${an}-header`]:{display:"flex",flex:0,alignItems:"center",padding:`${It}px ${Et}px`,fontSize:Zt,lineHeight:vt,borderBottom:`${At}px ${Qt} ${Ft}`,"&-title":{display:"flex",flex:1,alignItems:"center",minWidth:0,minHeight:0}},[`${an}-extra`]:{flex:"none"},[`${an}-close`]:{display:"inline-block",marginInlineEnd:wt,color:ln,fontWeight:Vn,fontSize:Zt,fontStyle:"normal",lineHeight:1,textAlign:"center",textTransform:"none",textDecoration:"none",background:"transparent",border:0,outline:0,cursor:"pointer",transition:`color ${Gt}`,textRendering:"auto","&:focus, &:hover":{color:In,textDecoration:"none"}},[`${an}-title`]:{flex:1,margin:0,color:Kn,fontWeight:rn.fontWeightStrong,fontSize:Zt,lineHeight:vt},[`${an}-body`]:{flex:1,minWidth:0,minHeight:0,padding:Et,overflow:"auto"},[`${an}-footer`]:{flexShrink:0,padding:`${Zn}px ${$n}px`,borderTop:`${At}px ${Qt} ${Ft}`},"&-rtl":{direction:"rtl"}}}};var ft=(0,at.Z)("Drawer",rn=>{const an=(0,lt.TS)(rn,{});return[yt(an),ut(an)]},rn=>({zIndexPopup:rn.zIndexPopupBase,footerPaddingBlock:rn.paddingXS,footerPaddingInline:rn.padding})),dt=Ie(11575),ht=function(rn,an){var On={};for(var Rn in rn)Object.prototype.hasOwnProperty.call(rn,Rn)&&an.indexOf(Rn)<0&&(On[Rn]=rn[Rn]);if(rn!=null&&typeof Object.getOwnPropertySymbols=="function")for(var sn=0,Rn=Object.getOwnPropertySymbols(rn);sn{var an;const{rootClassName:On,width:Rn,height:sn,size:tn="default",mask:Gt=!0,push:It=Kt,open:Et,afterOpenChange:Zt,onClose:vt,prefixCls:At,getContainer:Qt,style:Ft,className:wt,visible:ln,afterVisibleChange:In}=rn,Kn=ht(rn,["rootClassName","width","height","size","mask","push","open","afterOpenChange","onClose","prefixCls","getContainer","style","className","visible","afterVisibleChange"]),{getPopupContainer:Vn,getPrefixCls:Zn,direction:$n,drawer:Jt}=ge.useContext(Xe.E_),yn=Zn("drawer",At),[Hn,Bn]=ft(yn),Er=Qt===void 0&&Vn?()=>Vn(document.body):Qt,Fr=He()({"no-mask":!Gt,[`${yn}-rtl`]:$n==="rtl"},On,Bn),br=ge.useMemo(()=>Rn!=null?Rn:tn==="large"?736:378,[Rn,tn]),Wr=ge.useMemo(()=>sn!=null?sn:tn==="large"?736:378,[sn,tn]),Da={motionName:(0,Ge.m)(yn,"mask-motion"),motionAppear:!0,motionEnter:!0,motionLeave:!0,motionDeadline:500},Ya=Ia=>({motionName:(0,Ge.m)(yn,`panel-motion-${Ia}`),motionAppear:!0,motionEnter:!0,motionLeave:!0,motionDeadline:500}),Ba=(0,dt.H)();return Hn(ge.createElement(ot.BR,null,ge.createElement(Qe.Ux,{status:!0,override:!0},ge.createElement(ze,Object.assign({prefixCls:yn,onClose:vt,maskMotion:Da,motion:Ya},Kn,{open:Et!=null?Et:ln,mask:Gt,push:It,width:br,height:Wr,style:Object.assign(Object.assign({},Jt==null?void 0:Jt.style),Ft),className:He()(Jt==null?void 0:Jt.className,wt),rootClassName:Fr,getContainer:Er,afterOpenChange:Zt!=null?Zt:In,panelRef:Ba}),ge.createElement(qe,Object.assign({prefixCls:yn},Kn,{onClose:vt}))))))},vn=rn=>{const{prefixCls:an,style:On,className:Rn,placement:sn="right"}=rn,tn=ht(rn,["prefixCls","style","className","placement"]),{getPrefixCls:Gt}=ge.useContext(Xe.E_),It=Gt("drawer",an),[Et,Zt]=ft(It),vt=He()(It,`${It}-pure`,`${It}-${sn}`,Zt,Rn);return Et(ge.createElement("div",{className:vt,style:On},ge.createElement(qe,Object.assign({prefixCls:It},tn))))};qt._InternalPanelDoNotUseOrYouWillBeFired=vn;var Ot=qt},91857:function(St,Dt,Ie){"use strict";var Be=Ie(59301),He=Ie(38819),Fe=Ie(92310),Ce=Ie.n(Fe),_e=Ie(31561),Pe=Ie(70425),ge=Ie(18929),Ae=Ie(2738),be=Ie(79676),we=Ie(53487),pe=Ie(92343),ye=Ie(36355),xe=Ie(20834),ce=Ie(40875),te=Ie(88088),ne=Ie(47211);const le=null,oe=ue=>{const{menu:ve,arrow:Se,prefixCls:De,children:Re,trigger:Ne,disabled:ze,dropdownRender:Ge,getPopupContainer:Xe,overlayClassName:Qe,rootClassName:nt,open:$e,onOpenChange:qe,visible:ot,onVisibleChange:at,mouseEnterDelay:lt=.15,mouseLeaveDelay:rt=.1,autoAdjustOverflow:ut=!0,placement:yt="",overlay:ft,transitionName:dt}=ue,{getPopupContainer:ht,getPrefixCls:Ut,direction:Kt}=Be.useContext(ye.E_),qt=Be.useMemo(()=>{const wt=Ut();return dt!==void 0?dt:yt.includes("top")?`${wt}-slide-down`:`${wt}-slide-up`},[Ut,yt,dt]),vn=Be.useMemo(()=>yt?yt.includes("Center")?yt.slice(0,yt.indexOf("Center")):yt:Kt==="rtl"?"bottomRight":"bottomLeft",[yt,Kt]),Ot=Ut("dropdown",De),[rn,an]=(0,ne.Z)(Ot),[,On]=(0,te.Z)(),Rn=Be.Children.only(Re),sn=(0,pe.Tm)(Rn,{className:Ce()(`${Ot}-trigger`,{[`${Ot}-rtl`]:Kt==="rtl"},Rn.props.className),disabled:ze}),tn=ze?[]:Ne;let Gt;tn&&tn.includes("contextMenu")&&(Gt=!0);const[It,Et]=(0,ge.Z)(!1,{value:$e!=null?$e:ot}),Zt=(0,Pe.useEvent)(wt=>{qe==null||qe(wt),at==null||at(wt),Et(wt)}),vt=Ce()(Qe,nt,an,{[`${Ot}-rtl`]:Kt==="rtl"}),At=(0,be.Z)({arrowPointAtCenter:typeof Se=="object"&&Se.pointAtCenter,autoAdjustOverflow:ut,offset:On.marginXXS,arrowWidth:Se?On.sizePopupArrow:0,borderRadius:On.borderRadius}),Qt=Be.useCallback(()=>{Et(!1)},[]),Ft=()=>{let wt;return ve!=null&&ve.items?wt=Be.createElement(xe.default,Object.assign({},ve)):typeof ft=="function"?wt=ft():wt=ft,Ge&&(wt=Ge(wt)),wt=Be.Children.only(typeof wt=="string"?Be.createElement("span",null,wt):wt),Be.createElement(ce.J,{prefixCls:`${Ot}-menu`,expandIcon:Be.createElement("span",{className:`${Ot}-menu-submenu-arrow`},Be.createElement(He.Z,{className:`${Ot}-menu-submenu-arrow-icon`})),mode:"vertical",selectable:!1,onClick:Qt,validator:ln=>{let{mode:In}=ln}},wt)};return rn(Be.createElement(_e.Z,Object.assign({alignPoint:Gt},(0,Ae.Z)(ue,["rootClassName"]),{mouseEnterDelay:lt,mouseLeaveDelay:rt,visible:It,builtinPlacements:At,arrow:!!Se,overlayClassName:vt,prefixCls:Ot,getPopupContainer:Xe||ht,transitionName:qt,trigger:tn,overlay:Ft,placement:vn,onVisibleChange:Zt}),sn))};function de(ue){return Object.assign(Object.assign({},ue),{align:{overflow:{adjustX:!1,adjustY:!1}}})}const he=(0,we.Z)(oe,"dropdown",ue=>ue,de),ie=ue=>Be.createElement(he,Object.assign({},ue),Be.createElement("span",null));oe._InternalPanelDoNotUseOrYouWillBeFired=ie,Dt.Z=oe},38854:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return te}});var Be=Ie(91857),He=Ie(92310),Fe=Ie.n(He),Ce=Ie(59301),_e=Ie(18785),Pe=Ie(3113),ge=Ie(36355),Ae=Ie(81327),be=Ie(33234),we=Ie(47211),pe=function(ne,le){var oe={};for(var de in ne)Object.prototype.hasOwnProperty.call(ne,de)&&le.indexOf(de)<0&&(oe[de]=ne[de]);if(ne!=null&&typeof Object.getOwnPropertySymbols=="function")for(var he=0,de=Object.getOwnPropertySymbols(ne);he{const{getPopupContainer:le,getPrefixCls:oe,direction:de}=Ce.useContext(ge.E_),{prefixCls:he,type:ie="default",danger:ue,disabled:ve,loading:Se,onClick:De,htmlType:Re,children:Ne,className:ze,menu:Ge,arrow:Xe,autoFocus:Qe,overlay:nt,trigger:$e,align:qe,open:ot,onOpenChange:at,placement:lt,getPopupContainer:rt,href:ut,icon:yt=Ce.createElement(_e.Z,null),title:ft,buttonsRender:dt=Ft=>Ft,mouseEnterDelay:ht,mouseLeaveDelay:Ut,overlayClassName:Kt,overlayStyle:qt,destroyPopupOnHide:vn,dropdownRender:Ot}=ne,rn=pe(ne,["prefixCls","type","danger","disabled","loading","onClick","htmlType","children","className","menu","arrow","autoFocus","overlay","trigger","align","open","onOpenChange","placement","getPopupContainer","href","icon","title","buttonsRender","mouseEnterDelay","mouseLeaveDelay","overlayClassName","overlayStyle","destroyPopupOnHide","dropdownRender"]),an=oe("dropdown",he),On=`${an}-button`,[Rn,sn]=(0,we.Z)(an),tn={menu:Ge,arrow:Xe,autoFocus:Qe,align:qe,disabled:ve,trigger:ve?[]:$e,onOpenChange:at,getPopupContainer:rt||le,mouseEnterDelay:ht,mouseLeaveDelay:Ut,overlayClassName:Kt,overlayStyle:qt,destroyPopupOnHide:vn,dropdownRender:Ot},{compactSize:Gt,compactItemClassnames:It}=(0,be.ri)(an,de),Et=Fe()(On,It,ze,sn);"overlay"in ne&&(tn.overlay=nt),"open"in ne&&(tn.open=ot),"placement"in ne?tn.placement=lt:tn.placement=de==="rtl"?"bottomLeft":"bottomRight";const Zt=Ce.createElement(Pe.ZP,{type:ie,danger:ue,disabled:ve,loading:Se,onClick:De,htmlType:Re,href:ut,title:ft},Ne),vt=Ce.createElement(Pe.ZP,{type:ie,danger:ue,icon:yt}),[At,Qt]=dt([Zt,vt]);return Rn(Ce.createElement(Ae.Z.Compact,Object.assign({className:Et,size:Gt,block:!0},rn),At,Ce.createElement(Be.Z,Object.assign({},tn),Qt)))};ye.__ANT_BUTTON=!0;var xe=ye;const ce=Be.Z;ce.Button=xe;var te=ce},47211:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return pe}});var Be=Ie(17313),He=Ie(13826),Fe=Ie(92899),Ce=Ie(29878),_e=Ie(19447),Pe=Ie(83116),ge=Ie(37613),be=ye=>{const{componentCls:xe,menuCls:ce,colorError:te,colorTextLightSolid:ne}=ye,le=`${ce}-item`;return{[`${xe}, ${xe}-menu-submenu`]:{[`${ce} ${le}`]:{[`&${le}-danger:not(${le}-disabled)`]:{color:te,"&:hover":{color:ne,backgroundColor:te}}}}}};const we=ye=>{const{componentCls:xe,menuCls:ce,zIndexPopup:te,dropdownArrowDistance:ne,sizePopupArrow:le,antCls:oe,iconCls:de,motionDurationMid:he,dropdownPaddingVertical:ie,fontSize:ue,dropdownEdgeChildPadding:ve,colorTextDisabled:Se,fontSizeIcon:De,controlPaddingHorizontal:Re,colorBgElevated:Ne}=ye;return[{[xe]:Object.assign(Object.assign({},(0,Be.Wf)(ye)),{position:"absolute",top:-9999,left:{_skip_check_:!0,value:-9999},zIndex:te,display:"block","&::before":{position:"absolute",insetBlock:-ne+le/2,zIndex:-9999,opacity:1e-4,content:'""'},[`&-trigger${oe}-btn`]:{[`& > ${de}-down, & > ${oe}-btn-icon > ${de}-down`]:{fontSize:De}},[`${xe}-wrap`]:{position:"relative",[`${oe}-btn > ${de}-down`]:{fontSize:De},[`${de}-down::before`]:{transition:`transform ${he}`}},[`${xe}-wrap-open`]:{[`${de}-down::before`]:{transform:"rotate(180deg)"}},"\n &-hidden,\n &-menu-hidden,\n &-menu-submenu-hidden\n ":{display:"none"},[`&${oe}-slide-down-enter${oe}-slide-down-enter-active${xe}-placement-bottomLeft, &${oe}-slide-down-appear${oe}-slide-down-appear-active${xe}-placement-bottomLeft, &${oe}-slide-down-enter${oe}-slide-down-enter-active${xe}-placement-bottom, &${oe}-slide-down-appear${oe}-slide-down-appear-active${xe}-placement-bottom, &${oe}-slide-down-enter${oe}-slide-down-enter-active${xe}-placement-bottomRight, &${oe}-slide-down-appear${oe}-slide-down-appear-active${xe}-placement-bottomRight`]:{animationName:He.fJ},[`&${oe}-slide-up-enter${oe}-slide-up-enter-active${xe}-placement-topLeft, &${oe}-slide-up-appear${oe}-slide-up-appear-active${xe}-placement-topLeft, &${oe}-slide-up-enter${oe}-slide-up-enter-active${xe}-placement-top, &${oe}-slide-up-appear${oe}-slide-up-appear-active${xe}-placement-top, &${oe}-slide-up-enter${oe}-slide-up-enter-active${xe}-placement-topRight, &${oe}-slide-up-appear${oe}-slide-up-appear-active${xe}-placement-topRight`]:{animationName:He.Qt},[`&${oe}-slide-down-leave${oe}-slide-down-leave-active${xe}-placement-bottomLeft, &${oe}-slide-down-leave${oe}-slide-down-leave-active${xe}-placement-bottom, &${oe}-slide-down-leave${oe}-slide-down-leave-active${xe}-placement-bottomRight`]:{animationName:He.Uw},[`&${oe}-slide-up-leave${oe}-slide-up-leave-active${xe}-placement-topLeft, &${oe}-slide-up-leave${oe}-slide-up-leave-active${xe}-placement-top, &${oe}-slide-up-leave${oe}-slide-up-leave-active${xe}-placement-topRight`]:{animationName:He.ly}})},(0,_e.ZP)(ye,{colorBg:Ne,limitVerticalRadius:!0,arrowPlacement:{top:!0,bottom:!0}}),{[`${xe} ${ce}`]:{position:"relative",margin:0},[`${ce}-submenu-popup`]:{position:"absolute",zIndex:te,background:"transparent",boxShadow:"none",transformOrigin:"0 0","ul, li":{listStyle:"none",margin:0}},[`${xe}, ${xe}-menu-submenu`]:{[ce]:Object.assign(Object.assign({padding:ve,listStyleType:"none",backgroundColor:Ne,backgroundClip:"padding-box",borderRadius:ye.borderRadiusLG,outline:"none",boxShadow:ye.boxShadowSecondary},(0,Be.Qy)(ye)),{[`${ce}-item-group-title`]:{padding:`${ie}px ${Re}px`,color:ye.colorTextDescription,transition:`all ${he}`},[`${ce}-item`]:{position:"relative",display:"flex",alignItems:"center"},[`${ce}-item-icon`]:{minWidth:ue,marginInlineEnd:ye.marginXS,fontSize:ye.fontSizeSM},[`${ce}-title-content`]:{flex:"auto","> a":{color:"inherit",transition:`all ${he}`,"&:hover":{color:"inherit"},"&::after":{position:"absolute",inset:0,content:'""'}}},[`${ce}-item, ${ce}-submenu-title`]:Object.assign(Object.assign({clear:"both",margin:0,padding:`${ie}px ${Re}px`,color:ye.colorText,fontWeight:"normal",fontSize:ue,lineHeight:ye.lineHeight,cursor:"pointer",transition:`all ${he}`,borderRadius:ye.borderRadiusSM,"&:hover, &-active":{backgroundColor:ye.controlItemBgHover}},(0,Be.Qy)(ye)),{"&-selected":{color:ye.colorPrimary,backgroundColor:ye.controlItemBgActive,"&:hover, &-active":{backgroundColor:ye.controlItemBgActiveHover}},"&-disabled":{color:Se,cursor:"not-allowed","&:hover":{color:Se,backgroundColor:Ne,cursor:"not-allowed"},a:{pointerEvents:"none"}},"&-divider":{height:1,margin:`${ye.marginXXS}px 0`,overflow:"hidden",lineHeight:0,backgroundColor:ye.colorSplit},[`${xe}-menu-submenu-expand-icon`]:{position:"absolute",insetInlineEnd:ye.paddingXS,[`${xe}-menu-submenu-arrow-icon`]:{marginInlineEnd:"0 !important",color:ye.colorTextDescription,fontSize:De,fontStyle:"normal"}}}),[`${ce}-item-group-list`]:{margin:`0 ${ye.marginXS}px`,padding:0,listStyle:"none"},[`${ce}-submenu-title`]:{paddingInlineEnd:Re+ye.fontSizeSM},[`${ce}-submenu-vertical`]:{position:"relative"},[`${ce}-submenu${ce}-submenu-disabled ${xe}-menu-submenu-title`]:{[`&, ${xe}-menu-submenu-arrow-icon`]:{color:Se,backgroundColor:Ne,cursor:"not-allowed"}},[`${ce}-submenu-selected ${xe}-menu-submenu-title`]:{color:ye.colorPrimary}})}},[(0,He.oN)(ye,"slide-up"),(0,He.oN)(ye,"slide-down"),(0,Fe.Fm)(ye,"move-up"),(0,Fe.Fm)(ye,"move-down"),(0,Ce._y)(ye,"zoom-big")]]};var pe=(0,Pe.Z)("Dropdown",(ye,xe)=>{let{rootPrefixCls:ce}=xe;const{marginXXS:te,sizePopupArrow:ne,controlHeight:le,fontSize:oe,lineHeight:de,paddingXXS:he,componentCls:ie,borderRadiusLG:ue}=ye,ve=(le-oe*de)/2,{dropdownArrowOffset:Se}=(0,_e.fS)({contentRadius:ue}),De=(0,ge.TS)(ye,{menuCls:`${ie}-menu`,rootPrefixCls:ce,dropdownArrowDistance:ne/2+te,dropdownArrowOffset:Se,dropdownPaddingVertical:ve,dropdownEdgeChildPadding:he});return[we(De),be(De)]},ye=>({zIndexPopup:ye.zIndexPopupBase+50}))},8628:function(St,Dt,Ie){"use strict";var Be=Ie(59301),He=Ie(34280),Fe=Ie(56762),Ce=Ie(69507);function _e(){let Pe=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;const ge=(0,Be.useRef)({}),Ae=(0,Fe.Z)(),be=(0,Ce.ZP)();return(0,He.Z)(()=>{const we=be.subscribe(pe=>{ge.current=pe,Pe&&Ae()});return()=>be.unsubscribe(we)},[]),ge.current}Dt.Z=_e},45818:function(St,Dt,Ie){"use strict";Ie.d(Dt,{D:function(){return he},Z:function(){return ve}});var Be=Ie(54476),He=Ie(59301),Fe={icon:{tag:"svg",attrs:{viewBox:"0 0 1024 1024",focusable:"false"},children:[{tag:"path",attrs:{d:"M912 192H328c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h584c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zm0 284H328c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h584c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zm0 284H328c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h584c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zM104 228a56 56 0 10112 0 56 56 0 10-112 0zm0 284a56 56 0 10112 0 56 56 0 10-112 0zm0 284a56 56 0 10112 0 56 56 0 10-112 0z"}}]},name:"bars",theme:"outlined"},Ce=Fe,_e=Ie(7657),Pe=function(De,Re){return He.createElement(_e.Z,(0,Be.Z)({},De,{ref:Re,icon:Ce}))},ge=He.forwardRef(Pe),Ae=ge,be=Ie(33853),we=Ie(38819),pe=Ie(92310),ye=Ie.n(pe),xe=Ie(2738),te=Se=>!isNaN(parseFloat(Se))&&isFinite(Se),ne=Ie(36355),le=Ie(84966),oe=function(Se,De){var Re={};for(var Ne in Se)Object.prototype.hasOwnProperty.call(Se,Ne)&&De.indexOf(Ne)<0&&(Re[Ne]=Se[Ne]);if(Se!=null&&typeof Object.getOwnPropertySymbols=="function")for(var ze=0,Ne=Object.getOwnPropertySymbols(Se);ze{let Se=0;return function(){let De=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"";return Se+=1,`${De}${Se}`}})();var ve=He.forwardRef((Se,De)=>{const{prefixCls:Re,className:Ne,trigger:ze,children:Ge,defaultCollapsed:Xe=!1,theme:Qe="dark",style:nt={},collapsible:$e=!1,reverseArrow:qe=!1,width:ot=200,collapsedWidth:at=80,zeroWidthTriggerStyle:lt,breakpoint:rt,onCollapse:ut,onBreakpoint:yt}=Se,ft=oe(Se,["prefixCls","className","trigger","children","defaultCollapsed","theme","style","collapsible","reverseArrow","width","collapsedWidth","zeroWidthTriggerStyle","breakpoint","onCollapse","onBreakpoint"]),{siderHook:dt}=(0,He.useContext)(le.Gs),[ht,Ut]=(0,He.useState)("collapsed"in Se?Se.collapsed:Xe),[Kt,qt]=(0,He.useState)(!1);(0,He.useEffect)(()=>{"collapsed"in Se&&Ut(Se.collapsed)},[Se.collapsed]);const vn=(sn,tn)=>{"collapsed"in Se||Ut(sn),ut==null||ut(sn,tn)},Ot=(0,He.useRef)();Ot.current=sn=>{qt(sn.matches),yt==null||yt(sn.matches),ht!==sn.matches&&vn(sn.matches,"responsive")},(0,He.useEffect)(()=>{function sn(Gt){return Ot.current(Gt)}let tn;if(typeof window!="undefined"){const{matchMedia:Gt}=window;if(Gt&&rt&&rt in de){tn=Gt(`(max-width: ${de[rt]})`);try{tn.addEventListener("change",sn)}catch(It){tn.addListener(sn)}sn(tn)}}return()=>{try{tn==null||tn.removeEventListener("change",sn)}catch(Gt){tn==null||tn.removeListener(sn)}}},[rt]),(0,He.useEffect)(()=>{const sn=ie("ant-sider-");return dt.addSider(sn),()=>dt.removeSider(sn)},[]);const rn=()=>{vn(!ht,"clickTrigger")},{getPrefixCls:an}=(0,He.useContext)(ne.E_),On=()=>{const sn=an("layout-sider",Re),tn=(0,xe.Z)(ft,["collapsed"]),Gt=ht?at:ot,It=te(Gt)?`${Gt}px`:String(Gt),Et=parseFloat(String(at||0))===0?He.createElement("span",{onClick:rn,className:ye()(`${sn}-zero-width-trigger`,`${sn}-zero-width-trigger-${qe?"right":"left"}`),style:lt},ze||He.createElement(Ae,null)):null,At={expanded:qe?He.createElement(we.Z,null):He.createElement(be.Z,null),collapsed:qe?He.createElement(be.Z,null):He.createElement(we.Z,null)}[ht?"collapsed":"expanded"],Qt=ze!==null?Et||He.createElement("div",{className:`${sn}-trigger`,onClick:rn,style:{width:It}},ze||At):null,Ft=Object.assign(Object.assign({},nt),{flex:`0 0 ${It}`,maxWidth:It,minWidth:It,width:It}),wt=ye()(sn,`${sn}-${Qe}`,{[`${sn}-collapsed`]:!!ht,[`${sn}-has-trigger`]:$e&&ze!==null&&!Et,[`${sn}-below`]:!!Kt,[`${sn}-zero-width`]:parseFloat(It)===0},Ne);return He.createElement("aside",Object.assign({className:wt},tn,{style:Ft,ref:De}),He.createElement("div",{className:`${sn}-children`},Ge),$e||Kt&&Et?Qt:null)},Rn=He.useMemo(()=>({siderCollapsed:ht}),[ht]);return He.createElement(he.Provider,{value:Rn},On())})},84966:function(St,Dt,Ie){"use strict";Ie.d(Dt,{VY:function(){return he},$_:function(){return de},h4:function(){return oe},Gs:function(){return xe},ZP:function(){return ie}});var Be=Ie(94480),He=Ie(92310),Fe=Ie.n(He),Ce=Ie(2738),_e=Ie(59301),Pe=Ie(36355),ge=Ie(83116),be=ue=>{const{componentCls:ve,bodyBg:Se,lightSiderBg:De,lightTriggerBg:Re,lightTriggerColor:Ne}=ue;return{[`${ve}-sider-light`]:{background:De,[`${ve}-sider-trigger`]:{color:Ne,background:Re},[`${ve}-sider-zero-width-trigger`]:{color:Ne,background:Re,border:`1px solid ${Se}`,borderInlineStart:0}}}};const we=ue=>{const{antCls:ve,componentCls:Se,colorText:De,triggerColor:Re,footerBg:Ne,triggerBg:ze,headerHeight:Ge,headerPadding:Xe,headerColor:Qe,footerPadding:nt,triggerHeight:$e,zeroTriggerHeight:qe,zeroTriggerWidth:ot,motionDurationMid:at,motionDurationSlow:lt,fontSize:rt,borderRadius:ut,bodyBg:yt,headerBg:ft,siderBg:dt}=ue;return{[Se]:Object.assign(Object.assign({display:"flex",flex:"auto",flexDirection:"column",minHeight:0,background:yt,"&, *":{boxSizing:"border-box"},[`&${Se}-has-sider`]:{flexDirection:"row",[`> ${Se}, > ${Se}-content`]:{width:0}},[`${Se}-header, &${Se}-footer`]:{flex:"0 0 auto"},[`${Se}-sider`]:{position:"relative",minWidth:0,background:dt,transition:`all ${at}, background 0s`,"&-children":{height:"100%",marginTop:-.1,paddingTop:.1,[`${ve}-menu${ve}-menu-inline-collapsed`]:{width:"auto"}},"&-has-trigger":{paddingBottom:$e},"&-right":{order:1},"&-trigger":{position:"fixed",bottom:0,zIndex:1,height:$e,color:Re,lineHeight:`${$e}px`,textAlign:"center",background:ze,cursor:"pointer",transition:`all ${at}`},"&-zero-width":{"> *":{overflow:"hidden"},"&-trigger":{position:"absolute",top:Ge,insetInlineEnd:-ot,zIndex:1,width:ot,height:qe,color:Re,fontSize:ue.fontSizeXL,display:"flex",alignItems:"center",justifyContent:"center",background:dt,borderStartStartRadius:0,borderStartEndRadius:ut,borderEndEndRadius:ut,borderEndStartRadius:0,cursor:"pointer",transition:`background ${lt} ease`,"&::after":{position:"absolute",inset:0,background:"transparent",transition:`all ${lt}`,content:'""'},"&:hover::after":{background:"rgba(255, 255, 255, 0.2)"},"&-right":{insetInlineStart:-ot,borderStartStartRadius:ut,borderStartEndRadius:0,borderEndEndRadius:0,borderEndStartRadius:ut}}}}},be(ue)),{"&-rtl":{direction:"rtl"}}),[`${Se}-header`]:{height:Ge,padding:Xe,color:Qe,lineHeight:`${Ge}px`,background:ft,[`${ve}-menu`]:{lineHeight:"inherit"}},[`${Se}-footer`]:{padding:nt,color:De,fontSize:rt,background:Ne},[`${Se}-content`]:{flex:"auto",minHeight:0}}};var pe=(0,ge.Z)("Layout",ue=>[we(ue)],ue=>{const{colorBgLayout:ve,controlHeight:Se,controlHeightLG:De,colorText:Re,controlHeightSM:Ne,marginXXS:ze,colorTextLightSolid:Ge,colorBgContainer:Xe}=ue,Qe=De*1.25;return{colorBgHeader:"#001529",colorBgBody:ve,colorBgTrigger:"#002140",bodyBg:ve,headerBg:"#001529",headerHeight:Se*2,headerPadding:`0 ${Qe}px`,headerColor:Re,footerPadding:`${Ne}px ${Qe}px`,footerBg:ve,siderBg:"#001529",triggerHeight:De+ze*2,triggerBg:"#002140",triggerColor:Ge,zeroTriggerWidth:De,zeroTriggerHeight:De,lightSiderBg:Xe,lightTriggerBg:Xe,lightTriggerColor:Re}},{deprecatedTokens:[["colorBgBody","bodyBg"],["colorBgHeader","headerBg"],["colorBgTrigger","triggerBg"]]}),ye=function(ue,ve){var Se={};for(var De in ue)Object.prototype.hasOwnProperty.call(ue,De)&&ve.indexOf(De)<0&&(Se[De]=ue[De]);if(ue!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Re=0,De=Object.getOwnPropertySymbols(ue);Renull,removeSider:()=>null}});function ce(ue){let{suffixCls:ve,tagName:Se,displayName:De}=ue;return Re=>_e.forwardRef((ze,Ge)=>_e.createElement(Re,Object.assign({ref:Ge,suffixCls:ve,tagName:Se},ze)))}const te=_e.forwardRef((ue,ve)=>{const{prefixCls:Se,suffixCls:De,className:Re,tagName:Ne}=ue,ze=ye(ue,["prefixCls","suffixCls","className","tagName"]),{getPrefixCls:Ge}=_e.useContext(Pe.E_),Xe=Ge("layout",Se),[Qe,nt]=pe(Xe),$e=De?`${Xe}-${De}`:Xe;return Qe(_e.createElement(Ne,Object.assign({className:Fe()(Se||$e,Re,nt),ref:ve},ze)))}),ne=_e.forwardRef((ue,ve)=>{const{direction:Se}=_e.useContext(Pe.E_),[De,Re]=_e.useState([]),{prefixCls:Ne,className:ze,rootClassName:Ge,children:Xe,hasSider:Qe,tagName:nt,style:$e}=ue,qe=ye(ue,["prefixCls","className","rootClassName","children","hasSider","tagName","style"]),ot=(0,Ce.Z)(qe,["suffixCls"]),{getPrefixCls:at,layout:lt}=_e.useContext(Pe.E_),rt=at("layout",Ne),[ut,yt]=pe(rt),ft=Fe()(rt,{[`${rt}-has-sider`]:typeof Qe=="boolean"?Qe:De.length>0,[`${rt}-rtl`]:Se==="rtl"},lt==null?void 0:lt.className,ze,Ge,yt),dt=_e.useMemo(()=>({siderHook:{addSider:ht=>{Re(Ut=>[].concat((0,Be.Z)(Ut),[ht]))},removeSider:ht=>{Re(Ut=>Ut.filter(Kt=>Kt!==ht))}}}),[]);return ut(_e.createElement(xe.Provider,{value:dt},_e.createElement(nt,Object.assign({ref:ve,className:ft,style:Object.assign(Object.assign({},lt==null?void 0:lt.style),$e)},ot),Xe)))}),le=ce({tagName:"div",displayName:"Layout"})(ne),oe=ce({suffixCls:"header",tagName:"header",displayName:"Header"})(te),de=ce({suffixCls:"footer",tagName:"footer",displayName:"Footer"})(te),he=ce({suffixCls:"content",tagName:"main",displayName:"Content"})(te);var ie=le},40875:function(St,Dt,Ie){"use strict";Ie.d(Dt,{J:function(){return Pe}});var Be=Ie(59301),He=Ie(33234),Fe=Ie(70425),Ce=function(ge,Ae){var be={};for(var we in ge)Object.prototype.hasOwnProperty.call(ge,we)&&Ae.indexOf(we)<0&&(be[we]=ge[we]);if(ge!=null&&typeof Object.getOwnPropertySymbols=="function")for(var pe=0,we=Object.getOwnPropertySymbols(ge);pe{const{children:be}=ge,we=Ce(ge,["children"]),pe=Be.useContext(_e),ye=Be.useMemo(()=>Object.assign(Object.assign({},pe),we),[pe,we.prefixCls,we.mode,we.selectable]);return Be.createElement(_e.Provider,{value:ye},Be.createElement(He.BR,null,(0,Fe.supportNodeRef)(be)?Be.cloneElement(be,{ref:Ae}):be))});Dt.Z=_e},20834:function(St,Dt,Ie){"use strict";Ie.d(Dt,{default:function(){return Rn}});var Be=Ie(15285),He=Ie(59301),Fe=Ie(45818),Ce=Ie(92310),_e=Ie.n(Ce),Pe=Ie(36355),ge=function(sn,tn){var Gt={};for(var It in sn)Object.prototype.hasOwnProperty.call(sn,It)&&tn.indexOf(It)<0&&(Gt[It]=sn[It]);if(sn!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Et=0,It=Object.getOwnPropertySymbols(sn);Et{const{prefixCls:tn,className:Gt,dashed:It}=sn,Et=ge(sn,["prefixCls","className","dashed"]),{getPrefixCls:Zt}=He.useContext(Pe.E_),vt=Zt("menu",tn),At=_e()({[`${vt}-item-divider-dashed`]:!!It},Gt);return He.createElement(Be.iz,Object.assign({className:At},Et))},we=Ie(11592),pe=Ie(2738),ye=Ie(6848),xe=Ie(92343),te=(0,He.createContext)({prefixCls:"",firstLevel:!0,inlineCollapsed:!1}),le=sn=>{var tn;const{className:Gt,children:It,icon:Et,title:Zt,danger:vt}=sn,{prefixCls:At,firstLevel:Qt,direction:Ft,disableMenuItemTitleTooltip:wt,inlineCollapsed:ln}=He.useContext(te),In=yn=>{const Hn=He.createElement("span",{className:`${At}-title-content`},It);return(!Et||(0,xe.l$)(It)&&It.type==="span")&&It&&yn&&Qt&&typeof It=="string"?He.createElement("div",{className:`${At}-inline-collapsed-noicon`},It.charAt(0)):Hn},{siderCollapsed:Kn}=He.useContext(Fe.D);let Vn=Zt;typeof Zt=="undefined"?Vn=Qt?It:"":Zt===!1&&(Vn="");const Zn={title:Vn};!Kn&&!ln&&(Zn.title=null,Zn.open=!1);const $n=(0,we.Z)(It).length;let Jt=He.createElement(Be.ck,Object.assign({},(0,pe.Z)(sn,["title","icon","danger"]),{className:_e()({[`${At}-item-danger`]:vt,[`${At}-item-only-child`]:(Et?$n+1:$n)===1},Gt),title:typeof Zt=="string"?Zt:void 0}),(0,xe.Tm)(Et,{className:_e()((0,xe.l$)(Et)?(tn=Et.props)===null||tn===void 0?void 0:tn.className:"",`${At}-item-icon`)}),In(ln));return wt||(Jt=He.createElement(ye.Z,Object.assign({},Zn,{placement:Ft==="rtl"?"left":"right",overlayClassName:`${At}-inline-collapsed-tooltip`}),Jt)),Jt},de=sn=>{var tn;const{popupClassName:Gt,icon:It,title:Et,theme:Zt}=sn,vt=He.useContext(te),{prefixCls:At,inlineCollapsed:Qt,theme:Ft}=vt,wt=(0,Be.Xl)();let ln;if(!It)ln=Qt&&!wt.length&&Et&&typeof Et=="string"?He.createElement("div",{className:`${At}-inline-collapsed-noicon`},Et.charAt(0)):He.createElement("span",{className:`${At}-title-content`},Et);else{const Kn=(0,xe.l$)(Et)&&Et.type==="span";ln=He.createElement(He.Fragment,null,(0,xe.Tm)(It,{className:_e()((0,xe.l$)(It)?(tn=It.props)===null||tn===void 0?void 0:tn.className:"",`${At}-item-icon`)}),Kn?Et:He.createElement("span",{className:`${At}-title-content`},Et))}const In=He.useMemo(()=>Object.assign(Object.assign({},vt),{firstLevel:!1}),[vt]);return He.createElement(te.Provider,{value:In},He.createElement(Be.Wd,Object.assign({},(0,pe.Z)(sn,["icon"]),{title:ln,popupClassName:_e()(At,Gt,`${At}-${Zt||Ft}`)})))},he=Ie(18785),ie=Ie(70425),ue=Ie(62892),ve=Ie(40875),Se=function(sn,tn){var Gt={};for(var It in sn)Object.prototype.hasOwnProperty.call(sn,It)&&tn.indexOf(It)<0&&(Gt[It]=sn[It]);if(sn!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Et=0,It=Object.getOwnPropertySymbols(sn);Et{if(tn&&typeof tn=="object"){const It=tn,{label:Et,children:Zt,key:vt,type:At}=It,Qt=Se(It,["label","children","key","type"]),Ft=vt!=null?vt:`tmp-${Gt}`;return Zt||At==="group"?At==="group"?He.createElement(Be.BW,Object.assign({key:Ft},Qt,{title:Et}),De(Zt)):He.createElement(de,Object.assign({key:Ft},Qt,{title:Et}),De(Zt)):At==="divider"?He.createElement(be,Object.assign({key:Ft},Qt)):He.createElement(le,Object.assign({key:Ft},Qt),Et)}return null}).filter(tn=>tn)}function Re(sn){return He.useMemo(()=>sn&&De(sn),[sn])}var Ne=Ie(64993),ze=Ie(17313),Ge=Ie(8378),Xe=Ie(13826),Qe=Ie(29878),nt=Ie(83116),$e=Ie(37613),ot=sn=>{const{componentCls:tn,motionDurationSlow:Gt,horizontalLineHeight:It,colorSplit:Et,lineWidth:Zt,lineType:vt,itemPaddingInline:At}=sn;return{[`${tn}-horizontal`]:{lineHeight:It,border:0,borderBottom:`${Zt}px ${vt} ${Et}`,boxShadow:"none","&::after":{display:"block",clear:"both",height:0,content:'"\\20"'},[`${tn}-item, ${tn}-submenu`]:{position:"relative",display:"inline-block",verticalAlign:"bottom",paddingInline:At},[`> ${tn}-item:hover, > ${tn}-item-active, > ${tn}-submenu ${tn}-submenu-title:hover`]:{backgroundColor:"transparent"},[`${tn}-item, ${tn}-submenu-title`]:{transition:[`border-color ${Gt}`,`background ${Gt}`].join(",")},[`${tn}-submenu-arrow`]:{display:"none"}}}},lt=sn=>{let{componentCls:tn,menuArrowOffset:Gt}=sn;return{[`${tn}-rtl`]:{direction:"rtl"},[`${tn}-submenu-rtl`]:{transformOrigin:"100% 0"},[`${tn}-rtl${tn}-vertical, ${tn}-submenu-rtl ${tn}-vertical`]:{[`${tn}-submenu-arrow`]:{"&::before":{transform:`rotate(-45deg) translateY(-${Gt})`},"&::after":{transform:`rotate(45deg) translateY(${Gt})`}}}}};const rt=sn=>Object.assign({},(0,ze.oN)(sn));var yt=(sn,tn)=>{const{componentCls:Gt,itemColor:It,itemSelectedColor:Et,groupTitleColor:Zt,itemBg:vt,subMenuItemBg:At,itemSelectedBg:Qt,activeBarHeight:Ft,activeBarWidth:wt,activeBarBorderWidth:ln,motionDurationSlow:In,motionEaseInOut:Kn,motionEaseOut:Vn,itemPaddingInline:Zn,motionDurationMid:$n,itemHoverColor:Jt,lineType:yn,colorSplit:Hn,itemDisabledColor:Bn,dangerItemColor:Er,dangerItemHoverColor:Fr,dangerItemSelectedColor:br,dangerItemActiveBg:Wr,dangerItemSelectedBg:Da,itemHoverBg:Ya,itemActiveBg:Ba,menuSubMenuBg:Ia,horizontalItemSelectedColor:Ii,horizontalItemSelectedBg:wi,horizontalItemBorderRadius:jr,horizontalItemHoverBg:Ka,popupBg:oi}=sn;return{[`${Gt}-${tn}, ${Gt}-${tn} > ${Gt}`]:{color:It,background:vt,[`&${Gt}-root:focus-visible`]:Object.assign({},rt(sn)),[`${Gt}-item-group-title`]:{color:Zt},[`${Gt}-submenu-selected`]:{[`> ${Gt}-submenu-title`]:{color:Et}},[`${Gt}-item-disabled, ${Gt}-submenu-disabled`]:{color:`${Bn} !important`},[`${Gt}-item:not(${Gt}-item-selected):not(${Gt}-submenu-selected)`]:{[`&:hover, > ${Gt}-submenu-title:hover`]:{color:Jt}},[`&:not(${Gt}-horizontal)`]:{[`${Gt}-item:not(${Gt}-item-selected)`]:{"&:hover":{backgroundColor:Ya},"&:active":{backgroundColor:Ba}},[`${Gt}-submenu-title`]:{"&:hover":{backgroundColor:Ya},"&:active":{backgroundColor:Ba}}},[`${Gt}-item-danger`]:{color:Er,[`&${Gt}-item:hover`]:{[`&:not(${Gt}-item-selected):not(${Gt}-submenu-selected)`]:{color:Fr}},[`&${Gt}-item:active`]:{background:Wr}},[`${Gt}-item a`]:{"&, &:hover":{color:"inherit"}},[`${Gt}-item-selected`]:{color:Et,[`&${Gt}-item-danger`]:{color:br},"a, a:hover":{color:"inherit"}},[`& ${Gt}-item-selected`]:{backgroundColor:Qt,[`&${Gt}-item-danger`]:{backgroundColor:Da}},[`${Gt}-item, ${Gt}-submenu-title`]:{[`&:not(${Gt}-item-disabled):focus-visible`]:Object.assign({},rt(sn))},[`&${Gt}-submenu > ${Gt}`]:{backgroundColor:Ia},[`&${Gt}-popup > ${Gt}`]:{backgroundColor:oi},[`&${Gt}-horizontal`]:Object.assign(Object.assign({},tn==="dark"?{borderBottom:0}:{}),{[`> ${Gt}-item, > ${Gt}-submenu`]:{top:ln,marginTop:-ln,marginBottom:0,borderRadius:jr,"&::after":{position:"absolute",insetInline:Zn,bottom:0,borderBottom:`${Ft}px solid transparent`,transition:`border-color ${In} ${Kn}`,content:'""'},"&:hover, &-active, &-open":{background:Ka,"&::after":{borderBottomWidth:Ft,borderBottomColor:Ii}},"&-selected":{color:Ii,backgroundColor:wi,"&:hover":{backgroundColor:wi},"&::after":{borderBottomWidth:Ft,borderBottomColor:Ii}}}}),[`&${Gt}-root`]:{[`&${Gt}-inline, &${Gt}-vertical`]:{borderInlineEnd:`${ln}px ${yn} ${Hn}`}},[`&${Gt}-inline`]:{[`${Gt}-sub${Gt}-inline`]:{background:At},[`${Gt}-item, ${Gt}-submenu-title`]:ln&&wt?{width:`calc(100% + ${ln}px)`}:{},[`${Gt}-item`]:{position:"relative","&::after":{position:"absolute",insetBlock:0,insetInlineEnd:0,borderInlineEnd:`${wt}px solid ${Et}`,transform:"scaleY(0.0001)",opacity:0,transition:[`transform ${$n} ${Vn}`,`opacity ${$n} ${Vn}`].join(","),content:'""'},[`&${Gt}-item-danger`]:{"&::after":{borderInlineEndColor:br}}},[`${Gt}-selected, ${Gt}-item-selected`]:{"&::after":{transform:"scaleY(1)",opacity:1,transition:[`transform ${$n} ${Kn}`,`opacity ${$n} ${Kn}`].join(",")}}}}}};const ft=sn=>{const{componentCls:tn,itemHeight:Gt,itemMarginInline:It,padding:Et,menuArrowSize:Zt,marginXS:vt,itemMarginBlock:At}=sn,Qt=Et+Zt+vt;return{[`${tn}-item`]:{position:"relative",overflow:"hidden"},[`${tn}-item, ${tn}-submenu-title`]:{height:Gt,lineHeight:`${Gt}px`,paddingInline:Et,overflow:"hidden",textOverflow:"ellipsis",marginInline:It,marginBlock:At,width:`calc(100% - ${It*2}px)`},[`> ${tn}-item, > ${tn}-submenu > ${tn}-submenu-title`]:{height:Gt,lineHeight:`${Gt}px`},[`${tn}-item-group-list ${tn}-submenu-title, ${tn}-submenu-title`]:{paddingInlineEnd:Qt}}};var ht=sn=>{const{componentCls:tn,iconCls:Gt,itemHeight:It,colorTextLightSolid:Et,dropdownWidth:Zt,controlHeightLG:vt,motionDurationMid:At,motionEaseOut:Qt,paddingXL:Ft,itemMarginInline:wt,fontSizeLG:ln,motionDurationSlow:In,paddingXS:Kn,boxShadowSecondary:Vn,collapsedWidth:Zn,collapsedIconSize:$n}=sn,Jt={height:It,lineHeight:`${It}px`,listStylePosition:"inside",listStyleType:"disc"};return[{[tn]:{"&-inline, &-vertical":Object.assign({[`&${tn}-root`]:{boxShadow:"none"}},ft(sn))},[`${tn}-submenu-popup`]:{[`${tn}-vertical`]:Object.assign(Object.assign({},ft(sn)),{boxShadow:Vn})}},{[`${tn}-submenu-popup ${tn}-vertical${tn}-sub`]:{minWidth:Zt,maxHeight:`calc(100vh - ${vt*2.5}px)`,padding:"0",overflow:"hidden",borderInlineEnd:0,"&:not([class*='-active'])":{overflowX:"hidden",overflowY:"auto"}}},{[`${tn}-inline`]:{width:"100%",[`&${tn}-root`]:{[`${tn}-item, ${tn}-submenu-title`]:{display:"flex",alignItems:"center",transition:[`border-color ${In}`,`background ${In}`,`padding ${At} ${Qt}`].join(","),[`> ${tn}-title-content`]:{flex:"auto",minWidth:0,overflow:"hidden",textOverflow:"ellipsis"},"> *":{flex:"none"}}},[`${tn}-sub${tn}-inline`]:{padding:0,border:0,borderRadius:0,boxShadow:"none",[`& > ${tn}-submenu > ${tn}-submenu-title`]:Jt,[`& ${tn}-item-group-title`]:{paddingInlineStart:Ft}},[`${tn}-item`]:Jt}},{[`${tn}-inline-collapsed`]:{width:Zn,[`&${tn}-root`]:{[`${tn}-item, ${tn}-submenu ${tn}-submenu-title`]:{[`> ${tn}-inline-collapsed-noicon`]:{fontSize:ln,textAlign:"center"}}},[`> ${tn}-item, > ${tn}-item-group > ${tn}-item-group-list > ${tn}-item, > ${tn}-item-group > ${tn}-item-group-list > ${tn}-submenu > ${tn}-submenu-title, > ${tn}-submenu > ${tn}-submenu-title`]:{insetInlineStart:0,paddingInline:`calc(50% - ${ln/2}px - ${wt}px)`,textOverflow:"clip",[` ${tn}-submenu-arrow, ${tn}-submenu-expand-icon `]:{opacity:0},[`${tn}-item-icon, ${Gt}`]:{margin:0,fontSize:$n,lineHeight:`${It}px`,"+ span":{display:"inline-block",opacity:0}}},[`${tn}-item-icon, ${Gt}`]:{display:"inline-block"},"&-tooltip":{pointerEvents:"none",[`${tn}-item-icon, ${Gt}`]:{display:"none"},"a, a:hover":{color:Et}},[`${tn}-item-group-title`]:Object.assign(Object.assign({},ze.vS),{paddingInline:Kn})}}]};const Ut=sn=>{const{componentCls:tn,motionDurationSlow:Gt,motionDurationMid:It,motionEaseInOut:Et,motionEaseOut:Zt,iconCls:vt,iconSize:At,iconMarginInlineEnd:Qt}=sn;return{[`${tn}-item, ${tn}-submenu-title`]:{position:"relative",display:"block",margin:0,whiteSpace:"nowrap",cursor:"pointer",transition:[`border-color ${Gt}`,`background ${Gt}`,`padding ${Gt} ${Et}`].join(","),[`${tn}-item-icon, ${vt}`]:{minWidth:At,fontSize:At,transition:[`font-size ${It} ${Zt}`,`margin ${Gt} ${Et}`,`color ${Gt}`].join(","),"+ span":{marginInlineStart:Qt,opacity:1,transition:[`opacity ${Gt} ${Et}`,`margin ${Gt}`,`color ${Gt}`].join(",")}},[`${tn}-item-icon`]:Object.assign({},(0,ze.Ro)()),[`&${tn}-item-only-child`]:{[`> ${vt}, > ${tn}-item-icon`]:{marginInlineEnd:0}}},[`${tn}-item-disabled, ${tn}-submenu-disabled`]:{background:"none !important",cursor:"not-allowed","&::after":{borderColor:"transparent !important"},a:{color:"inherit !important"},[`> ${tn}-submenu-title`]:{color:"inherit !important",cursor:"not-allowed"}}}},Kt=sn=>{const{componentCls:tn,motionDurationSlow:Gt,motionEaseInOut:It,borderRadius:Et,menuArrowSize:Zt,menuArrowOffset:vt}=sn;return{[`${tn}-submenu`]:{"&-expand-icon, &-arrow":{position:"absolute",top:"50%",insetInlineEnd:sn.margin,width:Zt,color:"currentcolor",transform:"translateY(-50%)",transition:`transform ${Gt} ${It}, opacity ${Gt}`},"&-arrow":{"&::before, &::after":{position:"absolute",width:Zt*.6,height:Zt*.15,backgroundColor:"currentcolor",borderRadius:Et,transition:[`background ${Gt} ${It}`,`transform ${Gt} ${It}`,`top ${Gt} ${It}`,`color ${Gt} ${It}`].join(","),content:'""'},"&::before":{transform:`rotate(45deg) translateY(-${vt})`},"&::after":{transform:`rotate(-45deg) translateY(${vt})`}}}}},qt=sn=>{const{antCls:tn,componentCls:Gt,fontSize:It,motionDurationSlow:Et,motionDurationMid:Zt,motionEaseInOut:vt,paddingXS:At,padding:Qt,colorSplit:Ft,lineWidth:wt,zIndexPopup:ln,borderRadiusLG:In,subMenuItemBorderRadius:Kn,menuArrowSize:Vn,menuArrowOffset:Zn,lineType:$n,menuPanelMaskInset:Jt,groupTitleLineHeight:yn,groupTitleFontSize:Hn}=sn;return[{"":{[`${Gt}`]:Object.assign(Object.assign({},(0,ze.dF)()),{"&-hidden":{display:"none"}})},[`${Gt}-submenu-hidden`]:{display:"none"}},{[Gt]:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},(0,ze.Wf)(sn)),(0,ze.dF)()),{marginBottom:0,paddingInlineStart:0,fontSize:It,lineHeight:0,listStyle:"none",outline:"none",transition:`width ${Et} cubic-bezier(0.2, 0, 0, 1) 0s`,"ul, ol":{margin:0,padding:0,listStyle:"none"},"&-overflow":{display:"flex",[`${Gt}-item`]:{flex:"none"}},[`${Gt}-item, ${Gt}-submenu, ${Gt}-submenu-title`]:{borderRadius:sn.itemBorderRadius},[`${Gt}-item-group-title`]:{padding:`${At}px ${Qt}px`,fontSize:Hn,lineHeight:yn,transition:`all ${Et}`},[`&-horizontal ${Gt}-submenu`]:{transition:[`border-color ${Et} ${vt}`,`background ${Et} ${vt}`].join(",")},[`${Gt}-submenu, ${Gt}-submenu-inline`]:{transition:[`border-color ${Et} ${vt}`,`background ${Et} ${vt}`,`padding ${Zt} ${vt}`].join(",")},[`${Gt}-submenu ${Gt}-sub`]:{cursor:"initial",transition:[`background ${Et} ${vt}`,`padding ${Et} ${vt}`].join(",")},[`${Gt}-title-content`]:{transition:`color ${Et}`},[`${Gt}-item a`]:{"&::before":{position:"absolute",inset:0,backgroundColor:"transparent",content:'""'}},[`${Gt}-item-divider`]:{overflow:"hidden",lineHeight:0,borderColor:Ft,borderStyle:$n,borderWidth:0,borderTopWidth:wt,marginBlock:wt,padding:0,"&-dashed":{borderStyle:"dashed"}}}),Ut(sn)),{[`${Gt}-item-group`]:{[`${Gt}-item-group-list`]:{margin:0,padding:0,[`${Gt}-item, ${Gt}-submenu-title`]:{paddingInline:`${It*2}px ${Qt}px`}}},"&-submenu":{"&-popup":{position:"absolute",zIndex:ln,borderRadius:In,boxShadow:"none",transformOrigin:"0 0",[`&${Gt}-submenu`]:{background:"transparent"},"&::before":{position:"absolute",inset:`${Jt}px 0 0`,zIndex:-1,width:"100%",height:"100%",opacity:0,content:'""'}},"&-placement-rightTop::before":{top:0,insetInlineStart:Jt},"\n &-placement-leftTop,\n &-placement-bottomRight,\n ":{transformOrigin:"100% 0"},"\n &-placement-leftBottom,\n &-placement-topRight,\n ":{transformOrigin:"100% 100%"},"\n &-placement-rightBottom,\n &-placement-topLeft,\n ":{transformOrigin:"0 100%"},"\n &-placement-bottomLeft,\n &-placement-rightTop,\n ":{transformOrigin:"0 0"},"\n &-placement-leftTop,\n &-placement-leftBottom\n ":{paddingInlineEnd:sn.paddingXS},"\n &-placement-rightTop,\n &-placement-rightBottom\n ":{paddingInlineStart:sn.paddingXS},"\n &-placement-topRight,\n &-placement-topLeft\n ":{paddingBottom:sn.paddingXS},"\n &-placement-bottomRight,\n &-placement-bottomLeft\n ":{paddingTop:sn.paddingXS},[`> ${Gt}`]:Object.assign(Object.assign(Object.assign({borderRadius:In},Ut(sn)),Kt(sn)),{[`${Gt}-item, ${Gt}-submenu > ${Gt}-submenu-title`]:{borderRadius:Kn},[`${Gt}-submenu-title::after`]:{transition:`transform ${Et} ${vt}`}})}}),Kt(sn)),{[`&-inline-collapsed ${Gt}-submenu-arrow, &-inline ${Gt}-submenu-arrow`]:{"&::before":{transform:`rotate(-45deg) translateX(${Zn})`},"&::after":{transform:`rotate(45deg) translateX(-${Zn})`}},[`${Gt}-submenu-open${Gt}-submenu-inline > ${Gt}-submenu-title > ${Gt}-submenu-arrow`]:{transform:`translateY(-${Vn*.2}px)`,"&::after":{transform:`rotate(-45deg) translateX(-${Zn})`},"&::before":{transform:`rotate(45deg) translateX(${Zn})`}}})},{[`${tn}-layout-header`]:{[Gt]:{lineHeight:"inherit"}}}]};var vn=(sn,tn)=>(0,nt.Z)("Menu",It=>{if(tn===!1)return[];const{colorBgElevated:Et,colorPrimary:Zt,colorTextLightSolid:vt,controlHeightLG:At,fontSize:Qt,darkItemColor:Ft,darkDangerItemColor:wt,darkItemBg:ln,darkSubMenuItemBg:In,darkItemSelectedColor:Kn,darkItemSelectedBg:Vn,darkDangerItemSelectedBg:Zn,darkItemHoverBg:$n,darkGroupTitleColor:Jt,darkItemHoverColor:yn,darkItemDisabledColor:Hn,darkDangerItemHoverColor:Bn,darkDangerItemSelectedColor:Er,darkDangerItemActiveBg:Fr}=It,br=Qt/7*5,Wr=(0,$e.TS)(It,{menuArrowSize:br,menuHorizontalHeight:At*1.15,menuArrowOffset:`${br*.25}px`,menuPanelMaskInset:-7,menuSubMenuBg:Et}),Da=(0,$e.TS)(Wr,{itemColor:Ft,itemHoverColor:yn,groupTitleColor:Jt,itemSelectedColor:Kn,itemBg:ln,popupBg:ln,subMenuItemBg:In,itemActiveBg:"transparent",itemSelectedBg:Vn,activeBarHeight:0,activeBarBorderWidth:0,itemHoverBg:$n,itemDisabledColor:Hn,dangerItemColor:wt,dangerItemHoverColor:Bn,dangerItemSelectedColor:Er,dangerItemActiveBg:Fr,dangerItemSelectedBg:Zn,menuSubMenuBg:In,horizontalItemSelectedColor:vt,horizontalItemSelectedBg:Zt});return[qt(Wr),ot(Wr),ht(Wr),yt(Wr,"light"),yt(Da,"dark"),lt(Wr),(0,Ge.Z)(Wr),(0,Xe.oN)(Wr,"slide-up"),(0,Xe.oN)(Wr,"slide-down"),(0,Qe._y)(Wr,"zoom-big")]},It=>{const{colorPrimary:Et,colorError:Zt,colorTextDisabled:vt,colorErrorBg:At,colorText:Qt,colorTextDescription:Ft,colorBgContainer:wt,colorFillAlter:ln,colorFillContent:In,lineWidth:Kn,lineWidthBold:Vn,controlItemBgActive:Zn,colorBgTextHover:$n,controlHeightLG:Jt,lineHeight:yn,colorBgElevated:Hn,marginXXS:Bn,padding:Er,fontSize:Fr,controlHeightSM:br,fontSizeLG:Wr,colorTextLightSolid:Da,colorErrorHover:Ya}=It,Ba=new Ne.C(Da).setAlpha(.65).toRgbString();return{dropdownWidth:160,zIndexPopup:It.zIndexPopupBase+50,radiusItem:It.borderRadiusLG,itemBorderRadius:It.borderRadiusLG,radiusSubMenuItem:It.borderRadiusSM,subMenuItemBorderRadius:It.borderRadiusSM,colorItemText:Qt,itemColor:Qt,colorItemTextHover:Qt,itemHoverColor:Qt,colorItemTextHoverHorizontal:Et,horizontalItemHoverColor:Et,colorGroupTitle:Ft,groupTitleColor:Ft,colorItemTextSelected:Et,itemSelectedColor:Et,colorItemTextSelectedHorizontal:Et,horizontalItemSelectedColor:Et,colorItemBg:wt,itemBg:wt,colorItemBgHover:$n,itemHoverBg:$n,colorItemBgActive:In,itemActiveBg:Zn,colorSubItemBg:ln,subMenuItemBg:ln,colorItemBgSelected:Zn,itemSelectedBg:Zn,colorItemBgSelectedHorizontal:"transparent",horizontalItemSelectedBg:"transparent",colorActiveBarWidth:0,activeBarWidth:0,colorActiveBarHeight:Vn,activeBarHeight:Vn,colorActiveBarBorderSize:Kn,activeBarBorderWidth:Kn,colorItemTextDisabled:vt,itemDisabledColor:vt,colorDangerItemText:Zt,dangerItemColor:Zt,colorDangerItemTextHover:Zt,dangerItemHoverColor:Zt,colorDangerItemTextSelected:Zt,dangerItemSelectedColor:Zt,colorDangerItemBgActive:At,dangerItemActiveBg:At,colorDangerItemBgSelected:At,dangerItemSelectedBg:At,itemMarginInline:It.marginXXS,horizontalItemBorderRadius:0,horizontalItemHoverBg:"transparent",itemHeight:Jt,groupTitleLineHeight:yn,collapsedWidth:Jt*2,popupBg:Hn,itemMarginBlock:Bn,itemPaddingInline:Er,horizontalLineHeight:`${Jt*1.15}px`,iconSize:Fr,iconMarginInlineEnd:br-Fr,collapsedIconSize:Wr,groupTitleFontSize:Fr,darkItemDisabledColor:new Ne.C(Da).setAlpha(.25).toRgbString(),darkItemColor:Ba,darkDangerItemColor:Zt,darkItemBg:"#001529",darkSubMenuItemBg:"#000c17",darkItemSelectedColor:Da,darkItemSelectedBg:Et,darkDangerItemSelectedBg:Zt,darkItemHoverBg:"transparent",darkGroupTitleColor:Ba,darkItemHoverColor:Da,darkDangerItemHoverColor:Ya,darkDangerItemSelectedColor:Da,darkDangerItemActiveBg:Zt}},{deprecatedTokens:[["colorGroupTitle","groupTitleColor"],["radiusItem","itemBorderRadius"],["radiusSubMenuItem","subMenuItemBorderRadius"],["colorItemText","itemColor"],["colorItemTextHover","itemHoverColor"],["colorItemTextHoverHorizontal","horizontalItemHoverColor"],["colorItemTextSelected","itemSelectedColor"],["colorItemTextSelectedHorizontal","horizontalItemSelectedColor"],["colorItemTextDisabled","itemDisabledColor"],["colorDangerItemText","dangerItemColor"],["colorDangerItemTextHover","dangerItemHoverColor"],["colorDangerItemTextSelected","dangerItemSelectedColor"],["colorDangerItemBgActive","dangerItemActiveBg"],["colorDangerItemBgSelected","dangerItemSelectedBg"],["colorItemBg","itemBg"],["colorItemBgHover","itemHoverBg"],["colorSubItemBg","subMenuItemBg"],["colorItemBgActive","itemActiveBg"],["colorItemBgSelectedHorizontal","horizontalItemSelectedBg"],["colorActiveBarWidth","activeBarWidth"],["colorActiveBarHeight","activeBarHeight"],["colorActiveBarBorderSize","activeBarBorderWidth"],["colorItemBgSelected","itemSelectedBg"]]})(sn),Ot=function(sn,tn){var Gt={};for(var It in sn)Object.prototype.hasOwnProperty.call(sn,It)&&tn.indexOf(It)<0&&(Gt[It]=sn[It]);if(sn!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Et=0,It=Object.getOwnPropertySymbols(sn);Et{var Gt,It;const Et=He.useContext(ve.Z),Zt=Et||{},{getPrefixCls:vt,getPopupContainer:At,direction:Qt,menu:Ft}=He.useContext(Pe.E_),wt=vt(),{prefixCls:ln,className:In,style:Kn,theme:Vn="light",expandIcon:Zn,_internalDisableMenuItemTitleTooltip:$n,inlineCollapsed:Jt,siderCollapsed:yn,items:Hn,children:Bn,rootClassName:Er,mode:Fr,selectable:br,onClick:Wr,overflowedIndicatorPopupClassName:Da}=sn,Ya=Ot(sn,["prefixCls","className","style","theme","expandIcon","_internalDisableMenuItemTitleTooltip","inlineCollapsed","siderCollapsed","items","children","rootClassName","mode","selectable","onClick","overflowedIndicatorPopupClassName"]),Ba=(0,pe.Z)(Ya,["collapsedWidth"]),Ia=Re(Hn)||Bn;(Gt=Zt.validator)===null||Gt===void 0||Gt.call(Zt,{mode:Fr});const Ii=(0,ie.useEvent)(function(){var Rr;Wr==null||Wr.apply(void 0,arguments),(Rr=Zt.onClick)===null||Rr===void 0||Rr.call(Zt)}),wi=Zt.mode||Fr,jr=br!=null?br:Zt.selectable,Ka=He.useMemo(()=>yn!==void 0?yn:Jt,[Jt,yn]),oi={horizontal:{motionName:`${wt}-slide-up`},inline:(0,ue.Z)(wt),other:{motionName:`${wt}-zoom-big`}},pr=vt("menu",ln||Zt.prefixCls),[vr,li]=vn(pr,!Et),zn=_e()(`${pr}-${Vn}`,Ft==null?void 0:Ft.className,In);let hr;if(typeof Zn=="function")hr=Zn;else if(Zn===null||Zn===!1)hr=null;else if(Zt.expandIcon===null||Zt.expandIcon===!1)hr=null;else{const Rr=Zn!=null?Zn:Zt.expandIcon;hr=(0,xe.Tm)(Rr,{className:_e()(`${pr}-submenu-expand-icon`,(0,xe.l$)(Rr)?(It=Rr.props)===null||It===void 0?void 0:It.className:"")})}const Tr=He.useMemo(()=>({prefixCls:pr,inlineCollapsed:Ka||!1,direction:Qt,firstLevel:!0,theme:Vn,mode:wi,disableMenuItemTitleTooltip:$n}),[pr,Ka,Qt,$n,Vn]);return vr(He.createElement(ve.Z.Provider,{value:null},He.createElement(te.Provider,{value:Tr},He.createElement(Be.ZP,Object.assign({getPopupContainer:At,overflowedIndicator:He.createElement(he.Z,null),overflowedIndicatorPopupClassName:_e()(pr,`${pr}-${Vn}`,Da),mode:wi,selectable:jr,onClick:Ii},Ba,{inlineCollapsed:Ka,style:Object.assign(Object.assign({},Ft==null?void 0:Ft.style),Kn),className:zn,prefixCls:pr,direction:Qt,defaultMotions:oi,expandIcon:hr,ref:tn,rootClassName:_e()(Er,li)}),Ia))))});const On=(0,He.forwardRef)((sn,tn)=>{const Gt=(0,He.useRef)(null),It=He.useContext(Fe.D);return(0,He.useImperativeHandle)(tn,()=>({menu:Gt.current,focus:Et=>{var Zt;(Zt=Gt.current)===null||Zt===void 0||Zt.focus(Et)}})),He.createElement(an,Object.assign({ref:Gt},sn,It))});On.Item=le,On.SubMenu=de,On.Divider=be,On.ItemGroup=Be.BW;var Rn=On},58421:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return Zt}});var Be=Ie(54476),He=Ie(59301),Fe={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M272.9 512l265.4-339.1c4.1-5.2.4-12.9-6.3-12.9h-77.3c-4.9 0-9.6 2.3-12.6 6.1L186.8 492.3a31.99 31.99 0 000 39.5l255.3 326.1c3 3.9 7.7 6.1 12.6 6.1H532c6.7 0 10.4-7.7 6.3-12.9L272.9 512zm304 0l265.4-339.1c4.1-5.2.4-12.9-6.3-12.9h-77.3c-4.9 0-9.6 2.3-12.6 6.1L490.8 492.3a31.99 31.99 0 000 39.5l255.3 326.1c3 3.9 7.7 6.1 12.6 6.1H836c6.7 0 10.4-7.7 6.3-12.9L576.9 512z"}}]},name:"double-left",theme:"outlined"},Ce=Fe,_e=Ie(7657),Pe=function(At,Qt){return He.createElement(_e.Z,(0,Be.Z)({},At,{ref:Qt,icon:Ce}))},ge=He.forwardRef(Pe),Ae=ge,be=Ie(49198),we=Ie(33853),pe=Ie(38819),ye=Ie(92310),xe=Ie.n(ye),ce=Ie(20068),te=Ie(33885),ne=Ie(67732),le=Ie(83652),oe=Ie(42403),de=Ie(158),he=Ie(26112),ie={ZERO:48,NINE:57,NUMPAD_ZERO:96,NUMPAD_NINE:105,BACKSPACE:8,DELETE:46,ENTER:13,ARROW_UP:38,ARROW_DOWN:40},ue=ie,ve=Ie(91735),Se=function(vt){(0,oe.Z)(Qt,vt);var At=(0,de.Z)(Qt);function Qt(){var Ft;(0,ne.Z)(this,Qt);for(var wt=arguments.length,ln=new Array(wt),In=0;In=0||Kn.relatedTarget.className.indexOf("".concat(Jt,"-item"))>=0))&&$n(Ft.getValidValue()))},Ft.go=function(Kn){var Vn=Ft.state.goInputText;Vn!==""&&(Kn.keyCode===ue.ENTER||Kn.type==="click")&&(Ft.setState({goInputText:""}),Ft.props.quickGo(Ft.getValidValue()))},Ft}return(0,le.Z)(Qt,[{key:"getPageSizeOptions",value:function(){var wt=this.props,ln=wt.pageSize,In=wt.pageSizeOptions;return In.some(function(Kn){return Kn.toString()===ln.toString()})?In:In.concat([ln.toString()]).sort(function(Kn,Vn){var Zn=Number.isNaN(Number(Kn))?0:Number(Kn),$n=Number.isNaN(Number(Vn))?0:Number(Vn);return Zn-$n})}},{key:"render",value:function(){var wt=this,ln=this.props,In=ln.pageSize,Kn=ln.locale,Vn=ln.rootPrefixCls,Zn=ln.changeSize,$n=ln.quickGo,Jt=ln.goButton,yn=ln.selectComponentClass,Hn=ln.buildOptionText,Bn=ln.selectPrefixCls,Er=ln.disabled,Fr=this.state.goInputText,br="".concat(Vn,"-options"),Wr=yn,Da=null,Ya=null,Ba=null;if(!Zn&&!$n)return null;var Ia=this.getPageSizeOptions();if(Zn&&Wr){var Ii=Ia.map(function(wi,jr){return He.createElement(Wr.Option,{key:jr,value:wi.toString()},(Hn||wt.buildOptionText)(wi))});Da=He.createElement(Wr,{disabled:Er,prefixCls:Bn,showSearch:!1,className:"".concat(br,"-size-changer"),optionLabelProp:"children",popupMatchSelectWidth:!1,value:(In||Ia[0]).toString(),onChange:this.changeSize,getPopupContainer:function(jr){return jr.parentNode},"aria-label":Kn.page_size,defaultOpen:!1},Ii)}return $n&&(Jt&&(Ba=typeof Jt=="boolean"?He.createElement("button",{type:"button",onClick:this.go,onKeyUp:this.go,disabled:Er,className:"".concat(br,"-quick-jumper-button")},Kn.jump_to_confirm):He.createElement("span",{onClick:this.go,onKeyUp:this.go},Jt)),Ya=He.createElement("div",{className:"".concat(br,"-quick-jumper")},Kn.jump_to,He.createElement("input",{disabled:Er,type:"text",value:Fr,onChange:this.handleChange,onKeyUp:this.go,onBlur:this.handleBlur,"aria-label":Kn.page}),Kn.page,Ba)),He.createElement("li",{className:"".concat(br)},Da,Ya)}}]),Qt}(He.Component);Se.defaultProps={pageSizeOptions:["10","20","50","100"]};var De=Se,Re=function(At){var Qt,Ft=At.rootPrefixCls,wt=At.page,ln=At.active,In=At.className,Kn=At.showTitle,Vn=At.onClick,Zn=At.onKeyPress,$n=At.itemRender,Jt="".concat(Ft,"-item"),yn=xe()(Jt,"".concat(Jt,"-").concat(wt),(Qt={},(0,ce.Z)(Qt,"".concat(Jt,"-active"),ln),(0,ce.Z)(Qt,"".concat(Jt,"-disabled"),!wt),(0,ce.Z)(Qt,At.className,In),Qt)),Hn=function(){Vn(wt)},Bn=function(br){Zn(br,Vn,wt)},Er=$n(wt,"page",He.createElement("a",{rel:"nofollow"},wt));return Er?He.createElement("li",{title:Kn?wt.toString():null,className:yn,onClick:Hn,onKeyPress:Bn,tabIndex:0},Er):null},Ne=Re;function ze(){}function Ge(vt){var At=Number(vt);return typeof At=="number"&&!Number.isNaN(At)&&isFinite(At)&&Math.floor(At)===At}var Xe=function(At,Qt,Ft){return Ft};function Qe(vt,At,Qt){var Ft=typeof vt=="undefined"?At.pageSize:vt;return Math.floor((Qt.total-1)/Ft)+1}var nt=function(vt){(0,oe.Z)(Qt,vt);var At=(0,de.Z)(Qt);function Qt(Ft){var wt;(0,ne.Z)(this,Qt),wt=At.call(this,Ft),wt.paginationNode=He.createRef(),wt.getJumpPrevPage=function(){return Math.max(1,wt.state.current-(wt.props.showLessItems?3:5))},wt.getJumpNextPage=function(){return Math.min(Qe(void 0,wt.state,wt.props),wt.state.current+(wt.props.showLessItems?3:5))},wt.getItemIcon=function(Zn,$n){var Jt=wt.props.prefixCls,yn=Zn||He.createElement("button",{type:"button","aria-label":$n,className:"".concat(Jt,"-item-link")});return typeof Zn=="function"&&(yn=He.createElement(Zn,(0,te.Z)({},wt.props))),yn},wt.isValid=function(Zn){var $n=wt.props.total;return Ge(Zn)&&Zn!==wt.state.current&&Ge($n)&&$n>0},wt.shouldDisplayQuickJumper=function(){var Zn=wt.props,$n=Zn.showQuickJumper,Jt=Zn.total,yn=wt.state.pageSize;return Jt<=yn?!1:$n},wt.handleKeyDown=function(Zn){(Zn.keyCode===ue.ARROW_UP||Zn.keyCode===ue.ARROW_DOWN)&&Zn.preventDefault()},wt.handleKeyUp=function(Zn){var $n=wt.getValidValue(Zn),Jt=wt.state.currentInputValue;$n!==Jt&&wt.setState({currentInputValue:$n}),Zn.keyCode===ue.ENTER?wt.handleChange($n):Zn.keyCode===ue.ARROW_UP?wt.handleChange($n-1):Zn.keyCode===ue.ARROW_DOWN&&wt.handleChange($n+1)},wt.handleBlur=function(Zn){var $n=wt.getValidValue(Zn);wt.handleChange($n)},wt.changePageSize=function(Zn){var $n=wt.state.current,Jt=Qe(Zn,wt.state,wt.props);$n=$n>Jt?Jt:$n,Jt===0&&($n=wt.state.current),typeof Zn=="number"&&("pageSize"in wt.props||wt.setState({pageSize:Zn}),"current"in wt.props||wt.setState({current:$n,currentInputValue:$n})),wt.props.onShowSizeChange($n,Zn),"onChange"in wt.props&&wt.props.onChange&&wt.props.onChange($n,Zn)},wt.handleChange=function(Zn){var $n=wt.props,Jt=$n.disabled,yn=$n.onChange,Hn=wt.state,Bn=Hn.pageSize,Er=Hn.current,Fr=Hn.currentInputValue;if(wt.isValid(Zn)&&!Jt){var br=Qe(void 0,wt.state,wt.props),Wr=Zn;return Zn>br?Wr=br:Zn<1&&(Wr=1),"current"in wt.props||wt.setState({current:Wr}),Wr!==Fr&&wt.setState({currentInputValue:Wr}),yn(Wr,Bn),Wr}return Er},wt.prev=function(){wt.hasPrev()&&wt.handleChange(wt.state.current-1)},wt.next=function(){wt.hasNext()&&wt.handleChange(wt.state.current+1)},wt.jumpPrev=function(){wt.handleChange(wt.getJumpPrevPage())},wt.jumpNext=function(){wt.handleChange(wt.getJumpNextPage())},wt.hasPrev=function(){return wt.state.current>1},wt.hasNext=function(){return wt.state.current2?Jt-2:0),Hn=2;Hn=In?Vn=In:Vn=Number(ln),Vn}},{key:"getShowSizeChanger",value:function(){var wt=this.props,ln=wt.showSizeChanger,In=wt.total,Kn=wt.totalBoundaryShowSizeChanger;return typeof ln!="undefined"?ln:In>Kn}},{key:"render",value:function(){var wt=this.props,ln=wt.prefixCls,In=wt.className,Kn=wt.style,Vn=wt.disabled,Zn=wt.hideOnSinglePage,$n=wt.total,Jt=wt.locale,yn=wt.showQuickJumper,Hn=wt.showLessItems,Bn=wt.showTitle,Er=wt.showTotal,Fr=wt.simple,br=wt.itemRender,Wr=wt.showPrevNextJumpers,Da=wt.jumpPrevIcon,Ya=wt.jumpNextIcon,Ba=wt.selectComponentClass,Ia=wt.selectPrefixCls,Ii=wt.pageSizeOptions,wi=this.state,jr=wi.current,Ka=wi.pageSize,oi=wi.currentInputValue;if(Zn===!0&&$n<=Ka)return null;var pr=Qe(void 0,this.state,this.props),vr=[],li=null,zn=null,hr=null,Tr=null,Rr=null,fa=yn&&yn.goButton,bt=Hn?1:2,Me=jr-1>0?jr-1:0,Le=jr+1$n?$n:jr*Ka]));if(Fr){fa&&(typeof fa=="boolean"?Rr=He.createElement("button",{type:"button",onClick:this.handleGoTO,onKeyUp:this.handleGoTO},Jt.jump_to_confirm):Rr=He.createElement("span",{onClick:this.handleGoTO,onKeyUp:this.handleGoTO},fa),Rr=He.createElement("li",{title:Bn?"".concat(Jt.jump_to).concat(jr,"/").concat(pr):null,className:"".concat(ln,"-simple-pager")},Rr));var Ye=this.renderPrev(Me);return He.createElement("ul",(0,Be.Z)({className:xe()(ln,"".concat(ln,"-simple"),(0,ce.Z)({},"".concat(ln,"-disabled"),Vn),In),style:Kn,ref:this.paginationNode},Te),Ue,Ye?He.createElement("li",{title:Bn?Jt.prev_page:null,onClick:this.prev,tabIndex:this.hasPrev()?0:null,onKeyPress:this.runIfEnterPrev,className:xe()("".concat(ln,"-prev"),(0,ce.Z)({},"".concat(ln,"-disabled"),!this.hasPrev())),"aria-disabled":!this.hasPrev()},Ye):null,He.createElement("li",{title:Bn?"".concat(jr,"/").concat(pr):null,className:"".concat(ln,"-simple-pager")},He.createElement("input",{type:"text",value:oi,disabled:Vn,onKeyDown:this.handleKeyDown,onKeyUp:this.handleKeyUp,onChange:this.handleKeyUp,onBlur:this.handleBlur,size:3}),He.createElement("span",{className:"".concat(ln,"-slash")},"/"),pr),He.createElement("li",{title:Bn?Jt.next_page:null,onClick:this.next,tabIndex:this.hasPrev()?0:null,onKeyPress:this.runIfEnterNext,className:xe()("".concat(ln,"-next"),(0,ce.Z)({},"".concat(ln,"-disabled"),!this.hasNext())),"aria-disabled":!this.hasNext()},this.renderNext(Le)),Rr)}if(pr<=3+bt*2){var xt={locale:Jt,rootPrefixCls:ln,onClick:this.handleChange,onKeyPress:this.runIfEnter,showTitle:Bn,itemRender:br};pr||vr.push(He.createElement(Ne,(0,Be.Z)({},xt,{key:"noPager",page:1,className:"".concat(ln,"-item-disabled")})));for(var Pt=1;Pt<=pr;Pt+=1){var Xt=jr===Pt;vr.push(He.createElement(Ne,(0,Be.Z)({},xt,{key:Pt,page:Pt,active:Xt})))}}else{var Ht=Hn?Jt.prev_3:Jt.prev_5,mn=Hn?Jt.next_3:Jt.next_5,pn=br(this.getJumpPrevPage(),"jump-prev",this.getItemIcon(Da,"prev page")),Yn=br(this.getJumpNextPage(),"jump-next",this.getItemIcon(Ya,"next page"));Wr&&(li=pn?He.createElement("li",{title:Bn?Ht:null,key:"prev",onClick:this.jumpPrev,tabIndex:0,onKeyPress:this.runIfEnterJumpPrev,className:xe()("".concat(ln,"-jump-prev"),(0,ce.Z)({},"".concat(ln,"-jump-prev-custom-icon"),!!Da))},pn):null,zn=Yn?He.createElement("li",{title:Bn?mn:null,key:"next",tabIndex:0,onClick:this.jumpNext,onKeyPress:this.runIfEnterJumpNext,className:xe()("".concat(ln,"-jump-next"),(0,ce.Z)({},"".concat(ln,"-jump-next-custom-icon"),!!Ya))},Yn):null),Tr=He.createElement(Ne,{locale:Jt,last:!0,rootPrefixCls:ln,onClick:this.handleChange,onKeyPress:this.runIfEnter,key:pr,page:pr,active:!1,showTitle:Bn,itemRender:br}),hr=He.createElement(Ne,{locale:Jt,rootPrefixCls:ln,onClick:this.handleChange,onKeyPress:this.runIfEnter,key:1,page:1,active:!1,showTitle:Bn,itemRender:br});var Dn=Math.max(1,jr-bt),qn=Math.min(jr+bt,pr);jr-1<=bt&&(qn=1+bt*2),pr-jr<=bt&&(Dn=pr-bt*2);for(var er=Dn;er<=qn;er+=1){var dr=jr===er;vr.push(He.createElement(Ne,{locale:Jt,rootPrefixCls:ln,onClick:this.handleChange,onKeyPress:this.runIfEnter,key:er,page:er,active:dr,showTitle:Bn,itemRender:br}))}jr-1>=bt*2&&jr!==3&&(vr[0]=(0,He.cloneElement)(vr[0],{className:"".concat(ln,"-item-after-jump-prev")}),vr.unshift(li)),pr-jr>=bt*2&&jr!==pr-2&&(vr[vr.length-1]=(0,He.cloneElement)(vr[vr.length-1],{className:"".concat(ln,"-item-before-jump-next")}),vr.push(zn)),Dn!==1&&vr.unshift(hr),qn!==pr&&vr.push(Tr)}var fn=!this.hasPrev()||!pr,nn=!this.hasNext()||!pr,Nn=this.renderPrev(Me),jn=this.renderNext(Le);return He.createElement("ul",(0,Be.Z)({className:xe()(ln,In,(0,ce.Z)({},"".concat(ln,"-disabled"),Vn)),style:Kn,ref:this.paginationNode},Te),Ue,Nn?He.createElement("li",{title:Bn?Jt.prev_page:null,onClick:this.prev,tabIndex:fn?null:0,onKeyPress:this.runIfEnterPrev,className:xe()("".concat(ln,"-prev"),(0,ce.Z)({},"".concat(ln,"-disabled"),fn)),"aria-disabled":fn},Nn):null,vr,jn?He.createElement("li",{title:Bn?Jt.next_page:null,onClick:this.next,tabIndex:nn?null:0,onKeyPress:this.runIfEnterNext,className:xe()("".concat(ln,"-next"),(0,ce.Z)({},"".concat(ln,"-disabled"),nn)),"aria-disabled":nn},jn):null,He.createElement(De,{disabled:Vn,locale:Jt,rootPrefixCls:ln,selectComponentClass:Ba,selectPrefixCls:Ia,changeSize:this.getShowSizeChanger()?this.changePageSize:null,current:jr,pageSize:Ka,pageSizeOptions:Ii,quickGo:this.shouldDisplayQuickJumper()?this.handleChange:null,goButton:fa}))}}],[{key:"getDerivedStateFromProps",value:function(wt,ln){var In={};if("current"in wt&&(In.current=wt.current,wt.current!==ln.current&&(In.currentInputValue=In.current)),"pageSize"in wt&&wt.pageSize!==ln.pageSize){var Kn=ln.current,Vn=Qe(wt.pageSize,ln,wt);Kn=Kn>Vn?Vn:Kn,"current"in wt||(In.current=Kn,In.currentInputValue=Kn),In.pageSize=wt.pageSize}return In}}]),Qt}(He.Component);nt.defaultProps={defaultCurrent:1,total:0,defaultPageSize:10,onChange:ze,className:"",selectPrefixCls:"rc-select",prefixCls:"rc-pagination",selectComponentClass:null,hideOnSinglePage:!1,showPrevNextJumpers:!0,showQuickJumper:!1,showLessItems:!1,showTitle:!0,onShowSizeChange:ze,locale:ve.Z,style:{},itemRender:Xe,totalBoundaryShowSizeChanger:50};var $e=nt,qe=Ie(22075),ot=Ie(36355),at=Ie(19716),lt=Ie(8628),rt=Ie(9763),ut=Ie(57809);const yt=vt=>He.createElement(ut.default,Object.assign({},vt,{showSearch:!0,size:"small"})),ft=vt=>He.createElement(ut.default,Object.assign({},vt,{showSearch:!0,size:"middle"}));yt.Option=ut.default.Option,ft.Option=ut.default.Option;var dt=Ie(9937),ht=Ie(17313),Ut=Ie(83116),Kt=Ie(37613);const qt=vt=>{const{componentCls:At}=vt;return{[`${At}-disabled`]:{"&, &:hover":{cursor:"not-allowed",[`${At}-item-link`]:{color:vt.colorTextDisabled,cursor:"not-allowed"}},"&:focus-visible":{cursor:"not-allowed",[`${At}-item-link`]:{color:vt.colorTextDisabled,cursor:"not-allowed"}}},[`&${At}-disabled`]:{cursor:"not-allowed",[`${At}-item`]:{cursor:"not-allowed","&:hover, &:active":{backgroundColor:"transparent"},a:{color:vt.colorTextDisabled,backgroundColor:"transparent",border:"none",cursor:"not-allowed"},"&-active":{borderColor:vt.colorBorder,backgroundColor:vt.itemActiveBgDisabled,"&:hover, &:active":{backgroundColor:vt.itemActiveBgDisabled},a:{color:vt.itemActiveColorDisabled}}},[`${At}-item-link`]:{color:vt.colorTextDisabled,cursor:"not-allowed","&:hover, &:active":{backgroundColor:"transparent"},[`${At}-simple&`]:{backgroundColor:"transparent","&:hover, &:active":{backgroundColor:"transparent"}}},[`${At}-simple-pager`]:{color:vt.colorTextDisabled},[`${At}-jump-prev, ${At}-jump-next`]:{[`${At}-item-link-icon`]:{opacity:0},[`${At}-item-ellipsis`]:{opacity:1}}},[`&${At}-simple`]:{[`${At}-prev, ${At}-next`]:{[`&${At}-disabled ${At}-item-link`]:{"&:hover, &:active":{backgroundColor:"transparent"}}}}}},vn=vt=>{const{componentCls:At}=vt;return{[`&${At}-mini ${At}-total-text, &${At}-mini ${At}-simple-pager`]:{height:vt.itemSizeSM,lineHeight:`${vt.itemSizeSM}px`},[`&${At}-mini ${At}-item`]:{minWidth:vt.itemSizeSM,height:vt.itemSizeSM,margin:0,lineHeight:`${vt.itemSizeSM-2}px`},[`&${At}-mini:not(${At}-disabled) ${At}-item:not(${At}-item-active)`]:{backgroundColor:"transparent",borderColor:"transparent","&:hover":{backgroundColor:vt.colorBgTextHover},"&:active":{backgroundColor:vt.colorBgTextActive}},[`&${At}-mini ${At}-prev, &${At}-mini ${At}-next`]:{minWidth:vt.itemSizeSM,height:vt.itemSizeSM,margin:0,lineHeight:`${vt.itemSizeSM}px`},[`&${At}-mini:not(${At}-disabled)`]:{[`${At}-prev, ${At}-next`]:{[`&:hover ${At}-item-link`]:{backgroundColor:vt.colorBgTextHover},[`&:active ${At}-item-link`]:{backgroundColor:vt.colorBgTextActive},[`&${At}-disabled:hover ${At}-item-link`]:{backgroundColor:"transparent"}}},[` &${At}-mini ${At}-prev ${At}-item-link, &${At}-mini ${At}-next ${At}-item-link `]:{backgroundColor:"transparent",borderColor:"transparent","&::after":{height:vt.itemSizeSM,lineHeight:`${vt.itemSizeSM}px`}},[`&${At}-mini ${At}-jump-prev, &${At}-mini ${At}-jump-next`]:{height:vt.itemSizeSM,marginInlineEnd:0,lineHeight:`${vt.itemSizeSM}px`},[`&${At}-mini ${At}-options`]:{marginInlineStart:vt.paginationMiniOptionsMarginInlineStart,"&-size-changer":{top:vt.miniOptionsSizeChangerTop},"&-quick-jumper":{height:vt.itemSizeSM,lineHeight:`${vt.itemSizeSM}px`,input:Object.assign(Object.assign({},(0,dt.x0)(vt)),{width:vt.paginationMiniQuickJumperInputWidth,height:vt.controlHeightSM})}}}},Ot=vt=>{const{componentCls:At}=vt;return{[` &${At}-simple ${At}-prev, &${At}-simple ${At}-next `]:{height:vt.itemSizeSM,lineHeight:`${vt.itemSizeSM}px`,verticalAlign:"top",[`${At}-item-link`]:{height:vt.itemSizeSM,backgroundColor:"transparent",border:0,"&:hover":{backgroundColor:vt.colorBgTextHover},"&:active":{backgroundColor:vt.colorBgTextActive},"&::after":{height:vt.itemSizeSM,lineHeight:`${vt.itemSizeSM}px`}}},[`&${At}-simple ${At}-simple-pager`]:{display:"inline-block",height:vt.itemSizeSM,marginInlineEnd:vt.marginXS,input:{boxSizing:"border-box",height:"100%",marginInlineEnd:vt.marginXS,padding:`0 ${vt.paginationItemPaddingInline}px`,textAlign:"center",backgroundColor:vt.itemInputBg,border:`${vt.lineWidth}px ${vt.lineType} ${vt.colorBorder}`,borderRadius:vt.borderRadius,outline:"none",transition:`border-color ${vt.motionDurationMid}`,color:"inherit","&:hover":{borderColor:vt.colorPrimary},"&:focus":{borderColor:vt.colorPrimaryHover,boxShadow:`${vt.inputOutlineOffset}px 0 ${vt.controlOutlineWidth}px ${vt.controlOutline}`},"&[disabled]":{color:vt.colorTextDisabled,backgroundColor:vt.colorBgContainerDisabled,borderColor:vt.colorBorder,cursor:"not-allowed"}}}}},rn=vt=>{const{componentCls:At}=vt;return{[`${At}-jump-prev, ${At}-jump-next`]:{outline:0,[`${At}-item-container`]:{position:"relative",[`${At}-item-link-icon`]:{color:vt.colorPrimary,fontSize:vt.fontSizeSM,opacity:0,transition:`all ${vt.motionDurationMid}`,"&-svg":{top:0,insetInlineEnd:0,bottom:0,insetInlineStart:0,margin:"auto"}},[`${At}-item-ellipsis`]:{position:"absolute",top:0,insetInlineEnd:0,bottom:0,insetInlineStart:0,display:"block",margin:"auto",color:vt.colorTextDisabled,fontFamily:"Arial, Helvetica, sans-serif",letterSpacing:vt.paginationEllipsisLetterSpacing,textAlign:"center",textIndent:vt.paginationEllipsisTextIndent,opacity:1,transition:`all ${vt.motionDurationMid}`}},"&:hover":{[`${At}-item-link-icon`]:{opacity:1},[`${At}-item-ellipsis`]:{opacity:0}}},[` ${At}-prev, ${At}-jump-prev, ${At}-jump-next `]:{marginInlineEnd:vt.marginXS},[` ${At}-prev, ${At}-next, ${At}-jump-prev, ${At}-jump-next `]:{display:"inline-block",minWidth:vt.itemSize,height:vt.itemSize,color:vt.colorText,fontFamily:vt.fontFamily,lineHeight:`${vt.itemSize}px`,textAlign:"center",verticalAlign:"middle",listStyle:"none",borderRadius:vt.borderRadius,cursor:"pointer",transition:`all ${vt.motionDurationMid}`},[`${At}-prev, ${At}-next`]:{fontFamily:"Arial, Helvetica, sans-serif",outline:0,button:{color:vt.colorText,cursor:"pointer",userSelect:"none"},[`${At}-item-link`]:{display:"block",width:"100%",height:"100%",padding:0,fontSize:vt.fontSizeSM,textAlign:"center",backgroundColor:"transparent",border:`${vt.lineWidth}px ${vt.lineType} transparent`,borderRadius:vt.borderRadius,outline:"none",transition:`all ${vt.motionDurationMid}`},[`&:hover ${At}-item-link`]:{backgroundColor:vt.colorBgTextHover},[`&:active ${At}-item-link`]:{backgroundColor:vt.colorBgTextActive},[`&${At}-disabled:hover`]:{[`${At}-item-link`]:{backgroundColor:"transparent"}}},[`${At}-slash`]:{marginInlineEnd:vt.paginationSlashMarginInlineEnd,marginInlineStart:vt.paginationSlashMarginInlineStart},[`${At}-options`]:{display:"inline-block",marginInlineStart:vt.margin,verticalAlign:"middle","&-size-changer.-select":{display:"inline-block",width:"auto"},"&-quick-jumper":{display:"inline-block",height:vt.controlHeight,marginInlineStart:vt.marginXS,lineHeight:`${vt.controlHeight}px`,verticalAlign:"top",input:Object.assign(Object.assign({},(0,dt.ik)(vt)),{width:vt.controlHeightLG*1.25,height:vt.controlHeight,boxSizing:"border-box",margin:0,marginInlineStart:vt.marginXS,marginInlineEnd:vt.marginXS})}}}},an=vt=>{const{componentCls:At}=vt;return{[`${At}-item`]:{display:"inline-block",minWidth:vt.itemSize,height:vt.itemSize,marginInlineEnd:vt.marginXS,fontFamily:vt.fontFamily,lineHeight:`${vt.itemSize-2}px`,textAlign:"center",verticalAlign:"middle",listStyle:"none",backgroundColor:"transparent",border:`${vt.lineWidth}px ${vt.lineType} transparent`,borderRadius:vt.borderRadius,outline:0,cursor:"pointer",userSelect:"none",a:{display:"block",padding:`0 ${vt.paginationItemPaddingInline}px`,color:vt.colorText,"&:hover":{textDecoration:"none"}},[`&:not(${At}-item-active)`]:{"&:hover":{transition:`all ${vt.motionDurationMid}`,backgroundColor:vt.colorBgTextHover},"&:active":{backgroundColor:vt.colorBgTextActive}},"&-active":{fontWeight:vt.fontWeightStrong,backgroundColor:vt.itemActiveBg,borderColor:vt.colorPrimary,a:{color:vt.colorPrimary},"&:hover":{borderColor:vt.colorPrimaryHover},"&:hover a":{color:vt.colorPrimaryHover}}}}},On=vt=>{const{componentCls:At}=vt;return{[At]:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},(0,ht.Wf)(vt)),{"ul, ol":{margin:0,padding:0,listStyle:"none"},"&::after":{display:"block",clear:"both",height:0,overflow:"hidden",visibility:"hidden",content:'""'},[`${At}-total-text`]:{display:"inline-block",height:vt.itemSize,marginInlineEnd:vt.marginXS,lineHeight:`${vt.itemSize-2}px`,verticalAlign:"middle"}}),an(vt)),rn(vt)),Ot(vt)),vn(vt)),qt(vt)),{[`@media only screen and (max-width: ${vt.screenLG}px)`]:{[`${At}-item`]:{"&-after-jump-prev, &-before-jump-next":{display:"none"}}},[`@media only screen and (max-width: ${vt.screenSM}px)`]:{[`${At}-options`]:{display:"none"}}}),[`&${vt.componentCls}-rtl`]:{direction:"rtl"}}},Rn=vt=>{const{componentCls:At}=vt;return{[`${At}${At}-disabled:not(${At}-mini)`]:{"&, &:hover":{[`${At}-item-link`]:{borderColor:vt.colorBorder}},"&:focus-visible":{[`${At}-item-link`]:{borderColor:vt.colorBorder}},[`${At}-item, ${At}-item-link`]:{backgroundColor:vt.colorBgContainerDisabled,borderColor:vt.colorBorder,[`&:hover:not(${At}-item-active)`]:{backgroundColor:vt.colorBgContainerDisabled,borderColor:vt.colorBorder,a:{color:vt.colorTextDisabled}},[`&${At}-item-active`]:{backgroundColor:vt.itemActiveBgDisabled}},[`${At}-prev, ${At}-next`]:{"&:hover button":{backgroundColor:vt.colorBgContainerDisabled,borderColor:vt.colorBorder,color:vt.colorTextDisabled},[`${At}-item-link`]:{backgroundColor:vt.colorBgContainerDisabled,borderColor:vt.colorBorder}}},[`${At}:not(${At}-mini)`]:{[`${At}-prev, ${At}-next`]:{"&:hover button":{borderColor:vt.colorPrimaryHover,backgroundColor:vt.itemBg},[`${At}-item-link`]:{backgroundColor:vt.itemLinkBg,borderColor:vt.colorBorder},[`&:hover ${At}-item-link`]:{borderColor:vt.colorPrimary,backgroundColor:vt.itemBg,color:vt.colorPrimary},[`&${At}-disabled`]:{[`${At}-item-link`]:{borderColor:vt.colorBorder,color:vt.colorTextDisabled}}},[`${At}-item`]:{backgroundColor:vt.itemBg,border:`${vt.lineWidth}px ${vt.lineType} ${vt.colorBorder}`,[`&:hover:not(${At}-item-active)`]:{borderColor:vt.colorPrimary,backgroundColor:vt.itemBg,a:{color:vt.colorPrimary}},"&-active":{borderColor:vt.colorPrimary}}}}},sn=vt=>{const{componentCls:At}=vt;return{[`${At}:not(${At}-disabled)`]:{[`${At}-item`]:Object.assign({},(0,ht.Qy)(vt)),[`${At}-jump-prev, ${At}-jump-next`]:{"&:focus-visible":Object.assign({[`${At}-item-link-icon`]:{opacity:1},[`${At}-item-ellipsis`]:{opacity:0}},(0,ht.oN)(vt))},[`${At}-prev, ${At}-next`]:{[`&:focus-visible ${At}-item-link`]:Object.assign({},(0,ht.oN)(vt))}}}};var tn=(0,Ut.Z)("Pagination",vt=>{const At=(0,Kt.TS)(vt,{inputOutlineOffset:0,paginationMiniOptionsMarginInlineStart:vt.marginXXS/2,paginationMiniQuickJumperInputWidth:vt.controlHeightLG*1.1,paginationItemPaddingInline:vt.marginXXS*1.5,paginationEllipsisLetterSpacing:vt.marginXXS/2,paginationSlashMarginInlineStart:vt.marginXXS,paginationSlashMarginInlineEnd:vt.marginSM,paginationEllipsisTextIndent:"0.13em"},(0,dt.e5)(vt),(0,dt.TM)(vt));return[On(At),sn(At),vt.wireframe&&Rn(At)]},vt=>({itemBg:vt.colorBgContainer,itemSize:vt.controlHeight,itemSizeSM:vt.controlHeightSM,itemActiveBg:vt.colorBgContainer,itemLinkBg:vt.colorBgContainer,itemActiveColorDisabled:vt.colorTextDisabled,itemActiveBgDisabled:vt.controlItemBgActiveDisabled,itemInputBg:vt.colorBgContainer,miniOptionsSizeChangerTop:0})),Gt=function(vt,At){var Qt={};for(var Ft in vt)Object.prototype.hasOwnProperty.call(vt,Ft)&&At.indexOf(Ft)<0&&(Qt[Ft]=vt[Ft]);if(vt!=null&&typeof Object.getOwnPropertySymbols=="function")for(var wt=0,Ft=Object.getOwnPropertySymbols(vt);wt{const{prefixCls:At,selectPrefixCls:Qt,className:Ft,rootClassName:wt,style:ln,size:In,locale:Kn,selectComponentClass:Vn,responsive:Zn,showSizeChanger:$n}=vt,Jt=Gt(vt,["prefixCls","selectPrefixCls","className","rootClassName","style","size","locale","selectComponentClass","responsive","showSizeChanger"]),{xs:yn}=(0,lt.Z)(Zn),{getPrefixCls:Hn,direction:Bn,pagination:Er={}}=He.useContext(ot.E_),Fr=Hn("pagination",At),[br,Wr]=tn(Fr),Da=$n!=null?$n:Er.showSizeChanger,Ya=He.useMemo(()=>{const pr=He.createElement("span",{className:`${Fr}-item-ellipsis`},"\u2022\u2022\u2022"),vr=He.createElement("button",{className:`${Fr}-item-link`,type:"button",tabIndex:-1},Bn==="rtl"?He.createElement(pe.Z,null):He.createElement(we.Z,null)),li=He.createElement("button",{className:`${Fr}-item-link`,type:"button",tabIndex:-1},Bn==="rtl"?He.createElement(we.Z,null):He.createElement(pe.Z,null)),zn=He.createElement("a",{className:`${Fr}-item-link`},He.createElement("div",{className:`${Fr}-item-container`},Bn==="rtl"?He.createElement(be.Z,{className:`${Fr}-item-link-icon`}):He.createElement(Ae,{className:`${Fr}-item-link-icon`}),pr)),hr=He.createElement("a",{className:`${Fr}-item-link`},He.createElement("div",{className:`${Fr}-item-container`},Bn==="rtl"?He.createElement(Ae,{className:`${Fr}-item-link-icon`}):He.createElement(be.Z,{className:`${Fr}-item-link-icon`}),pr));return{prevIcon:vr,nextIcon:li,jumpPrevIcon:zn,jumpNextIcon:hr}},[Bn,Fr]),[Ba]=(0,rt.Z)("Pagination",qe.Z),Ia=Object.assign(Object.assign({},Ba),Kn),Ii=(0,at.Z)(In),wi=Ii==="small"||!!(yn&&!Ii&&Zn),jr=Hn("select",Qt),Ka=xe()({[`${Fr}-mini`]:wi,[`${Fr}-rtl`]:Bn==="rtl"},Er==null?void 0:Er.className,Ft,wt,Wr),oi=Object.assign(Object.assign({},Er==null?void 0:Er.style),ln);return br(He.createElement($e,Object.assign({},Ya,Jt,{style:oi,prefixCls:Fr,selectPrefixCls:jr,className:Ka,selectComponentClass:Vn||(wi?yt:ft),locale:Ia,showSizeChanger:Da})))},Zt=Et},93948:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return $n}});var Be=Ie(59301),He=Ie(29679),Fe=Ie(40001),Ce=Ie(19248),_e=Ie(99267),Pe=Ie(92310),ge=Ie.n(Pe),Ae=Ie(2738),be=Ie(36355),we=Ie(54476),pe=Ie(33885),ye=Ie(75931),xe={percent:0,prefixCls:"rc-progress",strokeColor:"#2db7f5",strokeLinecap:"round",strokeWidth:1,trailColor:"#D9D9D9",trailWidth:1,gapPosition:"bottom"},ce=function(){var yn=(0,Be.useRef)([]),Hn=(0,Be.useRef)(null);return(0,Be.useEffect)(function(){var Bn=Date.now(),Er=!1;yn.current.forEach(function(Fr){if(Fr){Er=!0;var br=Fr.style;br.transitionDuration=".3s, .3s, .3s, .06s",Hn.current&&Bn-Hn.current<100&&(br.transitionDuration="0s, 0s")}}),Er&&(Hn.current=Date.now())}),yn.current},te=["className","percent","prefixCls","strokeColor","strokeLinecap","strokeWidth","style","trailColor","trailWidth","transition"],ne=function(yn){var Hn=(0,pe.Z)((0,pe.Z)({},xe),yn),Bn=Hn.className,Er=Hn.percent,Fr=Hn.prefixCls,br=Hn.strokeColor,Wr=Hn.strokeLinecap,Da=Hn.strokeWidth,Ya=Hn.style,Ba=Hn.trailColor,Ia=Hn.trailWidth,Ii=Hn.transition,wi=(0,ye.Z)(Hn,te);delete wi.gapPosition;var jr=Array.isArray(Er)?Er:[Er],Ka=Array.isArray(br)?br:[br],oi=ce(),pr=Da/2,vr=100-Da/2,li="M ".concat(Wr==="round"?pr:0,",").concat(pr,` L `).concat(Wr==="round"?vr:100,",").concat(pr),zn="0 0 100 ".concat(Da),hr=0;return Be.createElement("svg",(0,we.Z)({className:ge()("".concat(Fr,"-line"),Bn),viewBox:zn,preserveAspectRatio:"none",style:Ya},wi),Be.createElement("path",{className:"".concat(Fr,"-line-trail"),d:li,strokeLinecap:Wr,stroke:Ba,strokeWidth:Ia||Da,fillOpacity:"0"}),jr.map(function(Tr,Rr){var fa=1;switch(Wr){case"round":fa=1-Da/100;break;case"square":fa=1-Da/2/100;break;default:fa=1;break}var bt={strokeDasharray:"".concat(Tr*fa,"px, 100px"),strokeDashoffset:"-".concat(hr,"px"),transition:Ii||"stroke-dashoffset 0.3s ease 0s, stroke-dasharray .3s ease 0s, stroke 0.3s linear"},Me=Ka[Rr]||Ka[Ka.length-1];return hr+=Tr,Be.createElement("path",{key:Rr,className:"".concat(Fr,"-line-path"),d:li,strokeLinecap:Wr,stroke:Me,strokeWidth:Da,fillOpacity:"0",ref:function(Te){oi[Rr]=Te},style:bt})}))},le=ne,oe=Ie(76190),de=Ie(42978),he=Ie(47273),ie=0,ue=(0,he.Z)();function ve(){var Jt;return ue?(Jt=ie,ie+=1):Jt="TEST_OR_SSR",Jt}var Se=function(Jt){var yn=Be.useState(),Hn=(0,de.Z)(yn,2),Bn=Hn[0],Er=Hn[1];return Be.useEffect(function(){Er("rc_progress_".concat(ve()))},[]),Jt||Bn},De=function(yn){var Hn=yn.bg,Bn=yn.children;return Be.createElement("div",{style:{width:"100%",height:"100%",background:Hn}},Bn)};function Re(Jt,yn){return Object.keys(Jt).map(function(Hn){var Bn=parseFloat(Hn),Er="".concat(Math.floor(Bn*yn),"%");return"".concat(Jt[Hn]," ").concat(Er)})}var Ne=Be.forwardRef(function(Jt,yn){var Hn=Jt.prefixCls,Bn=Jt.color,Er=Jt.gradientId,Fr=Jt.radius,br=Jt.style,Wr=Jt.ptg,Da=Jt.strokeLinecap,Ya=Jt.strokeWidth,Ba=Jt.size,Ia=Jt.gapDegree,Ii=Bn&&(0,oe.Z)(Bn)==="object",wi=Ii?"#FFF":void 0,jr=Ba/2,Ka=Be.createElement("circle",{className:"".concat(Hn,"-circle-path"),r:Fr,cx:jr,cy:jr,stroke:wi,strokeLinecap:Da,strokeWidth:Ya,opacity:Wr===0?0:1,style:br,ref:yn});if(!Ii)return Ka;var oi="".concat(Er,"-conic"),pr=Ia?"".concat(180+Ia/2,"deg"):"0deg",vr=Re(Bn,(360-Ia)/360),li=Re(Bn,1),zn="conic-gradient(from ".concat(pr,", ").concat(vr.join(", "),")"),hr="linear-gradient(to ".concat(Ia?"bottom":"top",", ").concat(li.join(", "),")");return Be.createElement(Be.Fragment,null,Be.createElement("mask",{id:oi},Ka),Be.createElement("foreignObject",{x:0,y:0,width:Ba,height:Ba,mask:"url(#".concat(oi,")")},Be.createElement(De,{bg:hr},Be.createElement(De,{bg:zn}))))}),ze=Ne,Ge=100,Xe=function(yn,Hn,Bn,Er,Fr,br,Wr,Da,Ya,Ba){var Ia=arguments.length>10&&arguments[10]!==void 0?arguments[10]:0,Ii=Bn/100*360*((360-br)/360),wi=br===0?0:{bottom:0,top:180,left:90,right:-90}[Wr],jr=(100-Er)/100*Hn;Ya==="round"&&Er!==100&&(jr+=Ba/2,jr>=Hn&&(jr=Hn-.01));var Ka=Ge/2;return{stroke:typeof Da=="string"?Da:void 0,strokeDasharray:"".concat(Hn,"px ").concat(yn),strokeDashoffset:jr+Ia,transform:"rotate(".concat(Fr+Ii+wi,"deg)"),transformOrigin:"".concat(Ka,"px ").concat(Ka,"px"),transition:"stroke-dashoffset .3s ease 0s, stroke-dasharray .3s ease 0s, stroke .3s, stroke-width .06s ease .3s, opacity .3s ease 0s",fillOpacity:0}},Qe=["id","prefixCls","steps","strokeWidth","trailWidth","gapDegree","gapPosition","trailColor","strokeLinecap","style","className","strokeColor","percent"];function nt(Jt){var yn=Jt!=null?Jt:[];return Array.isArray(yn)?yn:[yn]}var $e=function(yn){var Hn=(0,pe.Z)((0,pe.Z)({},xe),yn),Bn=Hn.id,Er=Hn.prefixCls,Fr=Hn.steps,br=Hn.strokeWidth,Wr=Hn.trailWidth,Da=Hn.gapDegree,Ya=Da===void 0?0:Da,Ba=Hn.gapPosition,Ia=Hn.trailColor,Ii=Hn.strokeLinecap,wi=Hn.style,jr=Hn.className,Ka=Hn.strokeColor,oi=Hn.percent,pr=(0,ye.Z)(Hn,Qe),vr=Ge/2,li=Se(Bn),zn="".concat(li,"-gradient"),hr=vr-br/2,Tr=Math.PI*2*hr,Rr=Ya>0?90+Ya/2:-90,fa=Tr*((360-Ya)/360),bt=(0,oe.Z)(Fr)==="object"?Fr:{count:Fr,space:2},Me=bt.count,Le=bt.space,Te=nt(oi),Ue=nt(Ka),Ye=Ue.find(function(Yn){return Yn&&(0,oe.Z)(Yn)==="object"}),xt=Ye&&(0,oe.Z)(Ye)==="object",Pt=xt?"butt":Ii,Xt=Xe(Tr,fa,0,100,Rr,Ya,Ba,Ia,Pt,br),Ht=ce(),mn=function(){var Dn=0;return Te.map(function(qn,er){var dr=Ue[er]||Ue[Ue.length-1],fn=Xe(Tr,fa,Dn,qn,Rr,Ya,Ba,dr,Pt,br);return Dn+=qn,Be.createElement(ze,{key:er,color:dr,ptg:qn,radius:hr,prefixCls:Er,gradientId:zn,style:fn,strokeLinecap:Pt,strokeWidth:br,gapDegree:Ya,ref:function(Nn){Ht[er]=Nn},size:Ge})}).reverse()},pn=function(){var Dn=Math.round(Me*(Te[0]/100)),qn=100/Me,er=0;return new Array(Me).fill(null).map(function(dr,fn){var nn=fn<=Dn-1?Ue[0]:Ia,Nn=nn&&(0,oe.Z)(nn)==="object"?"url(#".concat(zn,")"):void 0,jn=Xe(Tr,fa,er,qn,Rr,Ya,Ba,nn,"butt",br,Le);return er+=(fa-jn.strokeDashoffset+Le)*100/fa,Be.createElement("circle",{key:fn,className:"".concat(Er,"-circle-path"),r:hr,cx:vr,cy:vr,stroke:Nn,strokeWidth:br,opacity:1,style:jn,ref:function(mr){Ht[fn]=mr}})})};return Be.createElement("svg",(0,we.Z)({className:ge()("".concat(Er,"-circle"),jr),viewBox:"0 0 ".concat(Ge," ").concat(Ge),style:wi,id:Bn,role:"presentation"},pr),!Me&&Be.createElement("circle",{className:"".concat(Er,"-circle-trail"),r:hr,cx:vr,cy:vr,stroke:Ia,strokeLinecap:Pt,strokeWidth:Wr||br,style:Xt}),Me?pn():mn())},qe=$e,ot={Line:le,Circle:qe},at=Ie(6848),lt=Ie(30071);function rt(Jt){return!Jt||Jt<0?0:Jt>100?100:Jt}function ut(Jt){let{success:yn,successPercent:Hn}=Jt,Bn=Hn;return yn&&"progress"in yn&&(Bn=yn.progress),yn&&"percent"in yn&&(Bn=yn.percent),Bn}const yt=Jt=>{let{percent:yn,success:Hn,successPercent:Bn}=Jt;const Er=rt(ut({success:Hn,successPercent:Bn}));return[Er,rt(rt(yn)-Er)]},ft=Jt=>{let{success:yn={},strokeColor:Hn}=Jt;const{strokeColor:Bn}=yn;return[Bn||lt.presetPrimaryColors.green,Hn||null]},dt=(Jt,yn,Hn)=>{var Bn,Er,Fr,br;let Wr=-1,Da=-1;if(yn==="step"){const Ya=Hn.steps,Ba=Hn.strokeWidth;typeof Jt=="string"||typeof Jt=="undefined"?(Wr=Jt==="small"?2:14,Da=Ba!=null?Ba:8):typeof Jt=="number"?[Wr,Da]=[Jt,Jt]:[Wr=14,Da=8]=Jt,Wr*=Ya}else if(yn==="line"){const Ya=Hn==null?void 0:Hn.strokeWidth;typeof Jt=="string"||typeof Jt=="undefined"?Da=Ya||(Jt==="small"?6:8):typeof Jt=="number"?[Wr,Da]=[Jt,Jt]:[Wr=-1,Da=8]=Jt}else(yn==="circle"||yn==="dashboard")&&(typeof Jt=="string"||typeof Jt=="undefined"?[Wr,Da]=Jt==="small"?[60,60]:[120,120]:typeof Jt=="number"?[Wr,Da]=[Jt,Jt]:(Wr=(Er=(Bn=Jt[0])!==null&&Bn!==void 0?Bn:Jt[1])!==null&&Er!==void 0?Er:120,Da=(br=(Fr=Jt[0])!==null&&Fr!==void 0?Fr:Jt[1])!==null&&br!==void 0?br:120));return[Wr,Da]},ht=3,Ut=Jt=>ht/Jt*100;var qt=Jt=>{const{prefixCls:yn,trailColor:Hn=null,strokeLinecap:Bn="round",gapPosition:Er,gapDegree:Fr,width:br=120,type:Wr,children:Da,success:Ya,size:Ba=br}=Jt,[Ia,Ii]=dt(Ba,"circle");let{strokeWidth:wi}=Jt;wi===void 0&&(wi=Math.max(Ut(Ia),6));const jr={width:Ia,height:Ii,fontSize:Ia*.15+6},Ka=Be.useMemo(()=>{if(Fr||Fr===0)return Fr;if(Wr==="dashboard")return 75},[Fr,Wr]),oi=Er||Wr==="dashboard"&&"bottom"||void 0,pr=Object.prototype.toString.call(Jt.strokeColor)==="[object Object]",vr=ft({success:Ya,strokeColor:Jt.strokeColor}),li=ge()(`${yn}-inner`,{[`${yn}-circle-gradient`]:pr}),zn=Be.createElement(qe,{percent:yt(Jt),strokeWidth:wi,trailWidth:wi,strokeColor:vr,strokeLinecap:Bn,trailColor:Hn,prefixCls:yn,gapDegree:Ka,gapPosition:oi});return Be.createElement("div",{className:li,style:jr},Ia<=20?Be.createElement(at.Z,{title:Da},Be.createElement("span",null,zn)):Be.createElement(Be.Fragment,null,zn,Da))},vn=function(Jt,yn){var Hn={};for(var Bn in Jt)Object.prototype.hasOwnProperty.call(Jt,Bn)&&yn.indexOf(Bn)<0&&(Hn[Bn]=Jt[Bn]);if(Jt!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Er=0,Bn=Object.getOwnPropertySymbols(Jt);Er{let yn=[];return Object.keys(Jt).forEach(Hn=>{const Bn=parseFloat(Hn.replace(/%/g,""));isNaN(Bn)||yn.push({key:Bn,value:Jt[Hn]})}),yn=yn.sort((Hn,Bn)=>Hn.key-Bn.key),yn.map(Hn=>{let{key:Bn,value:Er}=Hn;return`${Er} ${Bn}%`}).join(", ")},rn=(Jt,yn)=>{const{from:Hn=lt.presetPrimaryColors.blue,to:Bn=lt.presetPrimaryColors.blue,direction:Er=yn==="rtl"?"to left":"to right"}=Jt,Fr=vn(Jt,["from","to","direction"]);if(Object.keys(Fr).length!==0){const br=Ot(Fr);return{backgroundImage:`linear-gradient(${Er}, ${br})`}}return{backgroundImage:`linear-gradient(${Er}, ${Hn}, ${Bn})`}};var On=Jt=>{const{prefixCls:yn,direction:Hn,percent:Bn,size:Er,strokeWidth:Fr,strokeColor:br,strokeLinecap:Wr="round",children:Da,trailColor:Ya=null,success:Ba}=Jt,Ia=br&&typeof br!="string"?rn(br,Hn):{backgroundColor:br},Ii=Wr==="square"||Wr==="butt"?0:void 0,wi={backgroundColor:Ya||void 0,borderRadius:Ii},jr=Er!=null?Er:[-1,Fr||(Er==="small"?6:8)],[Ka,oi]=dt(jr,"line",{strokeWidth:Fr}),pr=Object.assign({width:`${rt(Bn)}%`,height:oi,borderRadius:Ii},Ia),vr=ut(Jt),li={width:`${rt(vr)}%`,height:oi,borderRadius:Ii,backgroundColor:Ba==null?void 0:Ba.strokeColor},zn={width:Ka<0?"100%":Ka,height:oi};return Be.createElement(Be.Fragment,null,Be.createElement("div",{className:`${yn}-outer`,style:zn},Be.createElement("div",{className:`${yn}-inner`,style:wi},Be.createElement("div",{className:`${yn}-bg`,style:pr}),vr!==void 0?Be.createElement("div",{className:`${yn}-success-bg`,style:li}):null)),Da)},sn=Jt=>{const{size:yn,steps:Hn,percent:Bn=0,strokeWidth:Er=8,strokeColor:Fr,trailColor:br=null,prefixCls:Wr,children:Da}=Jt,Ya=Math.round(Hn*(Bn/100)),Ba=yn==="small"?2:14,Ia=yn!=null?yn:[Ba,Er],[Ii,wi]=dt(Ia,"step",{steps:Hn,strokeWidth:Er}),jr=Ii/Hn,Ka=new Array(Hn);for(let oi=0;oi{const yn=Jt?"100%":"-100%";return new tn.Keyframes(`antProgress${Jt?"RTL":"LTR"}Active`,{"0%":{transform:`translateX(${yn}) scaleX(0)`,opacity:.1},"20%":{transform:`translateX(${yn}) scaleX(0)`,opacity:.5},to:{transform:"translateX(0) scaleX(1)",opacity:0}})},vt=Jt=>{const{componentCls:yn,iconCls:Hn}=Jt;return{[yn]:Object.assign(Object.assign({},(0,Gt.Wf)(Jt)),{display:"inline-block","&-rtl":{direction:"rtl"},"&-line":{position:"relative",width:"100%",fontSize:Jt.fontSize,marginInlineEnd:Jt.marginXS,marginBottom:Jt.marginXS},[`${yn}-outer`]:{display:"inline-block",width:"100%"},[`&${yn}-show-info`]:{[`${yn}-outer`]:{marginInlineEnd:`calc(-2em - ${Jt.marginXS}px)`,paddingInlineEnd:`calc(2em + ${Jt.paddingXS}px)`}},[`${yn}-inner`]:{position:"relative",display:"inline-block",width:"100%",overflow:"hidden",verticalAlign:"middle",backgroundColor:Jt.remainingColor,borderRadius:Jt.lineBorderRadius},[`${yn}-inner:not(${yn}-circle-gradient)`]:{[`${yn}-circle-path`]:{stroke:Jt.defaultColor}},[`${yn}-success-bg, ${yn}-bg`]:{position:"relative",backgroundColor:Jt.defaultColor,borderRadius:Jt.lineBorderRadius,transition:`all ${Jt.motionDurationSlow} ${Jt.motionEaseInOutCirc}`},[`${yn}-success-bg`]:{position:"absolute",insetBlockStart:0,insetInlineStart:0,backgroundColor:Jt.colorSuccess},[`${yn}-text`]:{display:"inline-block",width:"2em",marginInlineStart:Jt.marginXS,color:Jt.colorText,lineHeight:1,whiteSpace:"nowrap",textAlign:"start",verticalAlign:"middle",wordBreak:"normal",[Hn]:{fontSize:Jt.fontSize}},[`&${yn}-status-active`]:{[`${yn}-bg::before`]:{position:"absolute",inset:0,backgroundColor:Jt.colorBgContainer,borderRadius:Jt.lineBorderRadius,opacity:0,animationName:Zt(),animationDuration:Jt.progressActiveMotionDuration,animationTimingFunction:Jt.motionEaseOutQuint,animationIterationCount:"infinite",content:'""'}},[`&${yn}-rtl${yn}-status-active`]:{[`${yn}-bg::before`]:{animationName:Zt(!0)}},[`&${yn}-status-exception`]:{[`${yn}-bg`]:{backgroundColor:Jt.colorError},[`${yn}-text`]:{color:Jt.colorError}},[`&${yn}-status-exception ${yn}-inner:not(${yn}-circle-gradient)`]:{[`${yn}-circle-path`]:{stroke:Jt.colorError}},[`&${yn}-status-success`]:{[`${yn}-bg`]:{backgroundColor:Jt.colorSuccess},[`${yn}-text`]:{color:Jt.colorSuccess}},[`&${yn}-status-success ${yn}-inner:not(${yn}-circle-gradient)`]:{[`${yn}-circle-path`]:{stroke:Jt.colorSuccess}}})}},At=Jt=>{const{componentCls:yn,iconCls:Hn}=Jt;return{[yn]:{[`${yn}-circle-trail`]:{stroke:Jt.remainingColor},[`&${yn}-circle ${yn}-inner`]:{position:"relative",lineHeight:1,backgroundColor:"transparent"},[`&${yn}-circle ${yn}-text`]:{position:"absolute",insetBlockStart:"50%",insetInlineStart:0,width:"100%",margin:0,padding:0,color:Jt.circleTextColor,fontSize:Jt.circleTextFontSize,lineHeight:1,whiteSpace:"normal",textAlign:"center",transform:"translateY(-50%)",[Hn]:{fontSize:`${Jt.fontSize/Jt.fontSizeSM}em`}},[`${yn}-circle&-status-exception`]:{[`${yn}-text`]:{color:Jt.colorError}},[`${yn}-circle&-status-success`]:{[`${yn}-text`]:{color:Jt.colorSuccess}}},[`${yn}-inline-circle`]:{lineHeight:1,[`${yn}-inner`]:{verticalAlign:"bottom"}}}},Qt=Jt=>{const{componentCls:yn}=Jt;return{[yn]:{[`${yn}-steps`]:{display:"inline-block","&-outer":{display:"flex",flexDirection:"row",alignItems:"center"},"&-item":{flexShrink:0,minWidth:Jt.progressStepMinWidth,marginInlineEnd:Jt.progressStepMarginInlineEnd,backgroundColor:Jt.remainingColor,transition:`all ${Jt.motionDurationSlow}`,"&-active":{backgroundColor:Jt.defaultColor}}}}}},Ft=Jt=>{const{componentCls:yn,iconCls:Hn}=Jt;return{[yn]:{[`${yn}-small&-line, ${yn}-small&-line ${yn}-text ${Hn}`]:{fontSize:Jt.fontSizeSM}}}};var wt=(0,It.Z)("Progress",Jt=>{const yn=Jt.marginXXS/2,Hn=(0,Et.TS)(Jt,{progressStepMarginInlineEnd:yn,progressStepMinWidth:yn,progressActiveMotionDuration:"2.4s"});return[vt(Hn),At(Hn),Qt(Hn),Ft(Hn)]},Jt=>({circleTextColor:Jt.colorText,defaultColor:Jt.colorInfo,remainingColor:Jt.colorFillSecondary,lineBorderRadius:100,circleTextFontSize:"1em"})),ln=function(Jt,yn){var Hn={};for(var Bn in Jt)Object.prototype.hasOwnProperty.call(Jt,Bn)&&yn.indexOf(Bn)<0&&(Hn[Bn]=Jt[Bn]);if(Jt!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Er=0,Bn=Object.getOwnPropertySymbols(Jt);Er{const{prefixCls:Hn,className:Bn,rootClassName:Er,steps:Fr,strokeColor:br,percent:Wr=0,size:Da="default",showInfo:Ya=!0,type:Ba="line",status:Ia,format:Ii,style:wi}=Jt,jr=ln(Jt,["prefixCls","className","rootClassName","steps","strokeColor","percent","size","showInfo","type","status","format","style"]),Ka=Be.useMemo(()=>{var Te,Ue;const Ye=ut(Jt);return parseInt(Ye!==void 0?(Te=Ye!=null?Ye:0)===null||Te===void 0?void 0:Te.toString():(Ue=Wr!=null?Wr:0)===null||Ue===void 0?void 0:Ue.toString(),10)},[Wr,Jt.success,Jt.successPercent]),oi=Be.useMemo(()=>!Kn.includes(Ia)&&Ka>=100?"success":Ia||"normal",[Ia,Ka]),{getPrefixCls:pr,direction:vr,progress:li}=Be.useContext(be.E_),zn=pr("progress",Hn),[hr,Tr]=wt(zn),Rr=Be.useMemo(()=>{if(!Ya)return null;const Te=ut(Jt);let Ue;const Ye=Ii||(Pt=>`${Pt}%`),xt=Ba==="line";return Ii||oi!=="exception"&&oi!=="success"?Ue=Ye(rt(Wr),rt(Te)):oi==="exception"?Ue=xt?Be.createElement(Ce.Z,null):Be.createElement(_e.Z,null):oi==="success"&&(Ue=xt?Be.createElement(He.Z,null):Be.createElement(Fe.Z,null)),Be.createElement("span",{className:`${zn}-text`,title:typeof Ue=="string"?Ue:void 0},Ue)},[Ya,Wr,Ka,oi,Ba,zn,Ii]),fa=Array.isArray(br)?br[0]:br,bt=typeof br=="string"||Array.isArray(br)?br:void 0;let Me;Ba==="line"?Me=Fr?Be.createElement(sn,Object.assign({},Jt,{strokeColor:bt,prefixCls:zn,steps:Fr}),Rr):Be.createElement(On,Object.assign({},Jt,{strokeColor:fa,prefixCls:zn,direction:vr}),Rr):(Ba==="circle"||Ba==="dashboard")&&(Me=Be.createElement(qt,Object.assign({},Jt,{strokeColor:fa,prefixCls:zn,progressStatus:oi}),Rr));const Le=ge()(zn,`${zn}-status-${oi}`,`${zn}-${Ba==="dashboard"&&"circle"||Fr&&"steps"||Ba}`,{[`${zn}-inline-circle`]:Ba==="circle"&&dt(Da,"circle")[0]<=20,[`${zn}-show-info`]:Ya,[`${zn}-${Da}`]:typeof Da=="string",[`${zn}-rtl`]:vr==="rtl"},li==null?void 0:li.className,Bn,Er,Tr);return hr(Be.createElement("div",Object.assign({ref:yn,style:Object.assign(Object.assign({},li==null?void 0:li.style),wi),className:Le,role:"progressbar","aria-valuenow":Ka},(0,Ae.Z)(jr,["trailColor","strokeWidth","width","gapDegree","gapPosition","strokeLinecap","success","successPercent"])),Me))}),$n=Zn},13570:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return rt}});var Be=Ie(54476),He=Ie(59301),Fe={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M908.1 353.1l-253.9-36.9L540.7 86.1c-3.1-6.3-8.2-11.4-14.5-14.5-15.8-7.8-35-1.3-42.9 14.5L369.8 316.2l-253.9 36.9c-7 1-13.4 4.3-18.3 9.3a32.05 32.05 0 00.6 45.3l183.7 179.1-43.4 252.9a31.95 31.95 0 0046.4 33.7L512 754l227.1 119.4c6.2 3.3 13.4 4.4 20.3 3.2 17.4-3 29.1-19.5 26.1-36.9l-43.4-252.9 183.7-179.1c5-4.9 8.3-11.3 9.3-18.3 2.7-17.5-9.5-33.7-27-36.3z"}}]},name:"star",theme:"filled"},Ce=Fe,_e=Ie(7657),Pe=function(yt,ft){return He.createElement(_e.Z,(0,Be.Z)({},yt,{ref:ft,icon:Ce}))},ge=He.forwardRef(Pe),Ae=ge,be=Ie(92310),we=Ie.n(be),pe=Ie(20068),ye=Ie(42978),xe=Ie(75931),ce=Ie(18929),te=Ie(10228),ne=Ie(26112);function le(ut,yt){var ft=ut.disabled,dt=ut.prefixCls,ht=ut.character,Ut=ut.characterRender,Kt=ut.index,qt=ut.count,vn=ut.value,Ot=ut.allowHalf,rn=ut.focused,an=ut.onHover,On=ut.onClick,Rn=function(At){an(At,Kt)},sn=function(At){On(At,Kt)},tn=function(At){At.keyCode===te.Z.ENTER&&On(At,Kt)},Gt=Kt+1,It=new Set([dt]);vn===0&&Kt===0&&rn?It.add("".concat(dt,"-focused")):Ot&&vn+.5>=Gt&&vnKt?"true":"false","aria-posinset":Kt+1,"aria-setsize":qt,tabIndex:ft?-1:0},He.createElement("div",{className:"".concat(dt,"-first")},Et),He.createElement("div",{className:"".concat(dt,"-second")},Et)));return Ut&&(Zt=Ut(Zt,ut)),Zt}var oe=He.forwardRef(le);function de(){var ut=He.useRef({});function yt(dt){return ut.current[dt]}function ft(dt){return function(ht){ut.current[dt]=ht}}return[yt,ft]}function he(ut){var yt=ut.pageXOffset,ft="scrollLeft";if(typeof yt!="number"){var dt=ut.document;yt=dt.documentElement[ft],typeof yt!="number"&&(yt=dt.body[ft])}return yt}function ie(ut){var yt,ft,dt=ut.ownerDocument,ht=dt.body,Ut=dt&&dt.documentElement,Kt=ut.getBoundingClientRect();return yt=Kt.left,ft=Kt.top,yt-=Ut.clientLeft||ht.clientLeft||0,ft-=Ut.clientTop||ht.clientTop||0,{left:yt,top:ft}}function ue(ut){var yt=ie(ut),ft=ut.ownerDocument,dt=ft.defaultView||ft.parentWindow;return yt.left+=he(dt),yt.left}var ve=["prefixCls","className","defaultValue","value","count","allowHalf","allowClear","character","characterRender","disabled","direction","tabIndex","autoFocus","onHoverChange","onChange","onFocus","onBlur","onKeyDown","onMouseLeave"];function Se(ut,yt){var ft,dt=ut.prefixCls,ht=dt===void 0?"rc-rate":dt,Ut=ut.className,Kt=ut.defaultValue,qt=ut.value,vn=ut.count,Ot=vn===void 0?5:vn,rn=ut.allowHalf,an=rn===void 0?!1:rn,On=ut.allowClear,Rn=On===void 0?!0:On,sn=ut.character,tn=sn===void 0?"\u2605":sn,Gt=ut.characterRender,It=ut.disabled,Et=ut.direction,Zt=Et===void 0?"ltr":Et,vt=ut.tabIndex,At=vt===void 0?0:vt,Qt=ut.autoFocus,Ft=ut.onHoverChange,wt=ut.onChange,ln=ut.onFocus,In=ut.onBlur,Kn=ut.onKeyDown,Vn=ut.onMouseLeave,Zn=(0,xe.Z)(ut,ve),$n=de(),Jt=(0,ye.Z)($n,2),yn=Jt[0],Hn=Jt[1],Bn=He.useRef(null),Er=function(){if(!It){var Pt;(Pt=Bn.current)===null||Pt===void 0||Pt.focus()}};He.useImperativeHandle(yt,function(){return{focus:Er,blur:function(){if(!It){var Pt;(Pt=Bn.current)===null||Pt===void 0||Pt.blur()}}}});var Fr=(0,ce.Z)(Kt||0,{value:qt}),br=(0,ye.Z)(Fr,2),Wr=br[0],Da=br[1],Ya=(0,ce.Z)(null),Ba=(0,ye.Z)(Ya,2),Ia=Ba[0],Ii=Ba[1],wi=function(Pt,Xt){var Ht=Zt==="rtl",mn=Pt+1;if(an){var pn=yn(Pt),Yn=ue(pn),Dn=pn.clientWidth;(Ht&&Xt-Yn>Dn/2||!Ht&&Xt-Yn0&&!Ht||Xt===te.Z.RIGHT&&mn>0&&Ht?(an?mn-=.5:mn-=1,jr(mn),Pt.preventDefault()):Xt===te.Z.LEFT&&mn{const{componentCls:yt}=ut;return{[`${yt}-star`]:{position:"relative",display:"inline-block",color:"inherit",cursor:"pointer","&:not(:last-child)":{marginInlineEnd:ut.marginXS},"> div":{transition:`all ${ut.motionDurationMid}, outline 0s`,"&:hover":{transform:ut.starHoverScale},"&:focus":{outline:0},"&:focus-visible":{outline:`${ut.lineWidth}px dashed ${ut.starColor}`,transform:ut.starHoverScale}},"&-first, &-second":{color:ut.starBg,transition:`all ${ut.motionDurationMid}`,userSelect:"none",[ut.iconCls]:{verticalAlign:"middle"}},"&-first":{position:"absolute",top:0,insetInlineStart:0,width:"50%",height:"100%",overflow:"hidden",opacity:0},[`&-half ${yt}-star-first, &-half ${yt}-star-second`]:{opacity:1},[`&-half ${yt}-star-first, &-full ${yt}-star-second`]:{color:"inherit"}}}},$e=ut=>({[`&-rtl${ut.componentCls}`]:{direction:"rtl"}}),qe=ut=>{const{componentCls:yt}=ut;return{[yt]:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},(0,Ge.Wf)(ut)),{display:"inline-block",margin:0,padding:0,color:ut.starColor,fontSize:ut.starSize,lineHeight:"unset",listStyle:"none",outline:"none",[`&-disabled${yt} ${yt}-star`]:{cursor:"default","> div:hover":{transform:"scale(1)"}}}),nt(ut)),{[`+ ${yt}-text`]:{display:"inline-block",marginInlineStart:ut.marginXS,fontSize:ut.fontSize}}),$e(ut))}};var ot=(0,Xe.Z)("Rate",ut=>{const yt=(0,Qe.TS)(ut,{});return[qe(yt)]},ut=>({starColor:ut.yellow6,starSize:ut.controlHeightLG*.5,starHoverScale:"scale(1.1)",starBg:ut.colorFillContent})),at=function(ut,yt){var ft={};for(var dt in ut)Object.prototype.hasOwnProperty.call(ut,dt)&&yt.indexOf(dt)<0&&(ft[dt]=ut[dt]);if(ut!=null&&typeof Object.getOwnPropertySymbols=="function")for(var ht=0,dt=Object.getOwnPropertySymbols(ut);ht{const{prefixCls:ft,className:dt,rootClassName:ht,style:Ut,tooltips:Kt,character:qt=He.createElement(Ae,null)}=ut,vn=at(ut,["prefixCls","className","rootClassName","style","tooltips","character"]),Ot=(It,Et)=>{let{index:Zt}=Et;return Kt?He.createElement(ze.Z,{title:Kt[Zt]},It):It},{getPrefixCls:rn,direction:an,rate:On}=He.useContext(Ne.E_),Rn=rn("rate",ft),[sn,tn]=ot(Rn),Gt=Object.assign(Object.assign({},On==null?void 0:On.style),Ut);return sn(He.createElement(Re,Object.assign({ref:yt,character:qt,characterRender:Ot},vn,{className:we()(dt,ht,tn,On==null?void 0:On.className),style:Gt,prefixCls:Rn,direction:an})))})},61621:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return tn}});var Be=Ie(92310),He=Ie.n(Be),Fe=Ie(59301),Ce=Ie(36355),_e=Ie(2738),ge=Gt=>{const{prefixCls:It,className:Et,style:Zt,size:vt,shape:At}=Gt,Qt=He()({[`${It}-lg`]:vt==="large",[`${It}-sm`]:vt==="small"}),Ft=He()({[`${It}-circle`]:At==="circle",[`${It}-square`]:At==="square",[`${It}-round`]:At==="round"}),wt=Fe.useMemo(()=>typeof vt=="number"?{width:vt,height:vt,lineHeight:`${vt}px`}:{},[vt]);return Fe.createElement("span",{className:He()(It,Qt,Ft,Et),style:Object.assign(Object.assign({},wt),Zt)})},Ae=Ie(36237),be=Ie(83116),we=Ie(37613);const pe=new Ae.Keyframes("ant-skeleton-loading",{"0%":{backgroundPosition:"100% 50%"},"100%":{backgroundPosition:"0 50%"}}),ye=Gt=>({height:Gt,lineHeight:`${Gt}px`}),xe=Gt=>Object.assign({width:Gt},ye(Gt)),ce=Gt=>({background:Gt.skeletonLoadingBackground,backgroundSize:"400% 100%",animationName:pe,animationDuration:Gt.skeletonLoadingMotionDuration,animationTimingFunction:"ease",animationIterationCount:"infinite"}),te=Gt=>Object.assign({width:Gt*5,minWidth:Gt*5},ye(Gt)),ne=Gt=>{const{skeletonAvatarCls:It,gradientFromColor:Et,controlHeight:Zt,controlHeightLG:vt,controlHeightSM:At}=Gt;return{[`${It}`]:Object.assign({display:"inline-block",verticalAlign:"top",background:Et},xe(Zt)),[`${It}${It}-circle`]:{borderRadius:"50%"},[`${It}${It}-lg`]:Object.assign({},xe(vt)),[`${It}${It}-sm`]:Object.assign({},xe(At))}},le=Gt=>{const{controlHeight:It,borderRadiusSM:Et,skeletonInputCls:Zt,controlHeightLG:vt,controlHeightSM:At,gradientFromColor:Qt}=Gt;return{[`${Zt}`]:Object.assign({display:"inline-block",verticalAlign:"top",background:Qt,borderRadius:Et},te(It)),[`${Zt}-lg`]:Object.assign({},te(vt)),[`${Zt}-sm`]:Object.assign({},te(At))}},oe=Gt=>Object.assign({width:Gt},ye(Gt)),de=Gt=>{const{skeletonImageCls:It,imageSizeBase:Et,gradientFromColor:Zt,borderRadiusSM:vt}=Gt;return{[`${It}`]:Object.assign(Object.assign({display:"flex",alignItems:"center",justifyContent:"center",verticalAlign:"top",background:Zt,borderRadius:vt},oe(Et*2)),{[`${It}-path`]:{fill:"#bfbfbf"},[`${It}-svg`]:Object.assign(Object.assign({},oe(Et)),{maxWidth:Et*4,maxHeight:Et*4}),[`${It}-svg${It}-svg-circle`]:{borderRadius:"50%"}}),[`${It}${It}-circle`]:{borderRadius:"50%"}}},he=(Gt,It,Et)=>{const{skeletonButtonCls:Zt}=Gt;return{[`${Et}${Zt}-circle`]:{width:It,minWidth:It,borderRadius:"50%"},[`${Et}${Zt}-round`]:{borderRadius:It}}},ie=Gt=>Object.assign({width:Gt*2,minWidth:Gt*2},ye(Gt)),ue=Gt=>{const{borderRadiusSM:It,skeletonButtonCls:Et,controlHeight:Zt,controlHeightLG:vt,controlHeightSM:At,gradientFromColor:Qt}=Gt;return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({[`${Et}`]:Object.assign({display:"inline-block",verticalAlign:"top",background:Qt,borderRadius:It,width:Zt*2,minWidth:Zt*2},ie(Zt))},he(Gt,Zt,Et)),{[`${Et}-lg`]:Object.assign({},ie(vt))}),he(Gt,vt,`${Et}-lg`)),{[`${Et}-sm`]:Object.assign({},ie(At))}),he(Gt,At,`${Et}-sm`))},ve=Gt=>{const{componentCls:It,skeletonAvatarCls:Et,skeletonTitleCls:Zt,skeletonParagraphCls:vt,skeletonButtonCls:At,skeletonInputCls:Qt,skeletonImageCls:Ft,controlHeight:wt,controlHeightLG:ln,controlHeightSM:In,gradientFromColor:Kn,padding:Vn,marginSM:Zn,borderRadius:$n,titleHeight:Jt,blockRadius:yn,paragraphLiHeight:Hn,controlHeightXS:Bn,paragraphMarginTop:Er}=Gt;return{[`${It}`]:{display:"table",width:"100%",[`${It}-header`]:{display:"table-cell",paddingInlineEnd:Vn,verticalAlign:"top",[`${Et}`]:Object.assign({display:"inline-block",verticalAlign:"top",background:Kn},xe(wt)),[`${Et}-circle`]:{borderRadius:"50%"},[`${Et}-lg`]:Object.assign({},xe(ln)),[`${Et}-sm`]:Object.assign({},xe(In))},[`${It}-content`]:{display:"table-cell",width:"100%",verticalAlign:"top",[`${Zt}`]:{width:"100%",height:Jt,background:Kn,borderRadius:yn,[`+ ${vt}`]:{marginBlockStart:In}},[`${vt}`]:{padding:0,"> li":{width:"100%",height:Hn,listStyle:"none",background:Kn,borderRadius:yn,"+ li":{marginBlockStart:Bn}}},[`${vt}> li:last-child:not(:first-child):not(:nth-child(2))`]:{width:"61%"}},[`&-round ${It}-content`]:{[`${Zt}, ${vt} > li`]:{borderRadius:$n}}},[`${It}-with-avatar ${It}-content`]:{[`${Zt}`]:{marginBlockStart:Zn,[`+ ${vt}`]:{marginBlockStart:Er}}},[`${It}${It}-element`]:Object.assign(Object.assign(Object.assign(Object.assign({display:"inline-block",width:"auto"},ue(Gt)),ne(Gt)),le(Gt)),de(Gt)),[`${It}${It}-block`]:{width:"100%",[`${At}`]:{width:"100%"},[`${Qt}`]:{width:"100%"}},[`${It}${It}-active`]:{[` ${Zt}, ${vt} > li, ${Et}, ${At}, ${Qt}, ${Ft} `]:Object.assign({},ce(Gt))}}};var Se=(0,be.Z)("Skeleton",Gt=>{const{componentCls:It}=Gt,Et=(0,we.TS)(Gt,{skeletonAvatarCls:`${It}-avatar`,skeletonTitleCls:`${It}-title`,skeletonParagraphCls:`${It}-paragraph`,skeletonButtonCls:`${It}-button`,skeletonInputCls:`${It}-input`,skeletonImageCls:`${It}-image`,imageSizeBase:Gt.controlHeight*1.5,borderRadius:100,skeletonLoadingBackground:`linear-gradient(90deg, ${Gt.gradientFromColor} 25%, ${Gt.gradientToColor} 37%, ${Gt.gradientFromColor} 63%)`,skeletonLoadingMotionDuration:"1.4s"});return[ve(Et)]},Gt=>{const{colorFillContent:It,colorFill:Et}=Gt,Zt=It,vt=Et;return{color:Zt,colorGradientEnd:vt,gradientFromColor:Zt,gradientToColor:vt,titleHeight:Gt.controlHeight/2,blockRadius:Gt.borderRadiusSM,paragraphMarginTop:Gt.marginLG+Gt.marginXXS,paragraphLiHeight:Gt.controlHeight/2}},{deprecatedTokens:[["color","gradientFromColor"],["colorGradientEnd","gradientToColor"]]}),Re=Gt=>{const{prefixCls:It,className:Et,rootClassName:Zt,active:vt,shape:At="circle",size:Qt="default"}=Gt,{getPrefixCls:Ft}=Fe.useContext(Ce.E_),wt=Ft("skeleton",It),[ln,In]=Se(wt),Kn=(0,_e.Z)(Gt,["prefixCls","className"]),Vn=He()(wt,`${wt}-element`,{[`${wt}-active`]:vt},Et,Zt,In);return ln(Fe.createElement("div",{className:Vn},Fe.createElement(ge,Object.assign({prefixCls:`${wt}-avatar`,shape:At,size:Qt},Kn))))},ze=Gt=>{const{prefixCls:It,className:Et,rootClassName:Zt,active:vt,block:At=!1,size:Qt="default"}=Gt,{getPrefixCls:Ft}=Fe.useContext(Ce.E_),wt=Ft("skeleton",It),[ln,In]=Se(wt),Kn=(0,_e.Z)(Gt,["prefixCls"]),Vn=He()(wt,`${wt}-element`,{[`${wt}-active`]:vt,[`${wt}-block`]:At},Et,Zt,In);return ln(Fe.createElement("div",{className:Vn},Fe.createElement(ge,Object.assign({prefixCls:`${wt}-button`,size:Qt},Kn))))};const Ge="M365.714286 329.142857q0 45.714286-32.036571 77.677714t-77.677714 32.036571-77.677714-32.036571-32.036571-77.677714 32.036571-77.677714 77.677714-32.036571 77.677714 32.036571 32.036571 77.677714zM950.857143 548.571429l0 256-804.571429 0 0-109.714286 182.857143-182.857143 91.428571 91.428571 292.571429-292.571429zM1005.714286 146.285714l-914.285714 0q-7.460571 0-12.873143 5.412571t-5.412571 12.873143l0 694.857143q0 7.460571 5.412571 12.873143t12.873143 5.412571l914.285714 0q7.460571 0 12.873143-5.412571t5.412571-12.873143l0-694.857143q0-7.460571-5.412571-12.873143t-12.873143-5.412571zM1097.142857 164.571429l0 694.857143q0 37.741714-26.843429 64.585143t-64.585143 26.843429l-914.285714 0q-37.741714 0-64.585143-26.843429t-26.843429-64.585143l0-694.857143q0-37.741714 26.843429-64.585143t64.585143-26.843429l914.285714 0q37.741714 0 64.585143 26.843429t26.843429 64.585143z";var Qe=Gt=>{const{prefixCls:It,className:Et,rootClassName:Zt,style:vt,active:At}=Gt,{getPrefixCls:Qt}=Fe.useContext(Ce.E_),Ft=Qt("skeleton",It),[wt,ln]=Se(Ft),In=He()(Ft,`${Ft}-element`,{[`${Ft}-active`]:At},Et,Zt,ln);return wt(Fe.createElement("div",{className:In},Fe.createElement("div",{className:He()(`${Ft}-image`,Et),style:vt},Fe.createElement("svg",{viewBox:"0 0 1098 1024",xmlns:"http://www.w3.org/2000/svg",className:`${Ft}-image-svg`},Fe.createElement("path",{d:Ge,className:`${Ft}-image-path`})))))},$e=Gt=>{const{prefixCls:It,className:Et,rootClassName:Zt,active:vt,block:At,size:Qt="default"}=Gt,{getPrefixCls:Ft}=Fe.useContext(Ce.E_),wt=Ft("skeleton",It),[ln,In]=Se(wt),Kn=(0,_e.Z)(Gt,["prefixCls"]),Vn=He()(wt,`${wt}-element`,{[`${wt}-active`]:vt,[`${wt}-block`]:At},Et,Zt,In);return ln(Fe.createElement("div",{className:Vn},Fe.createElement(ge,Object.assign({prefixCls:`${wt}-input`,size:Qt},Kn))))},qe=Ie(54476),ot={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M888 792H200V168c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v688c0 4.4 3.6 8 8 8h752c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zM288 604a64 64 0 10128 0 64 64 0 10-128 0zm118-224a48 48 0 1096 0 48 48 0 10-96 0zm158 228a96 96 0 10192 0 96 96 0 10-192 0zm148-314a56 56 0 10112 0 56 56 0 10-112 0z"}}]},name:"dot-chart",theme:"outlined"},at=ot,lt=Ie(7657),rt=function(It,Et){return Fe.createElement(lt.Z,(0,qe.Z)({},It,{ref:Et,icon:at}))},ut=Fe.forwardRef(rt),yt=ut,dt=Gt=>{const{prefixCls:It,className:Et,rootClassName:Zt,style:vt,active:At,children:Qt}=Gt,{getPrefixCls:Ft}=Fe.useContext(Ce.E_),wt=Ft("skeleton",It),[ln,In]=Se(wt),Kn=He()(wt,`${wt}-element`,{[`${wt}-active`]:At},In,Et,Zt),Vn=Qt!=null?Qt:Fe.createElement(yt,null);return ln(Fe.createElement("div",{className:Kn},Fe.createElement("div",{className:He()(`${wt}-image`,Et),style:vt},Vn)))},ht=Ie(94480),Kt=Gt=>{const It=Ft=>{const{width:wt,rows:ln=2}=Gt;if(Array.isArray(wt))return wt[Ft];if(ln-1===Ft)return wt},{prefixCls:Et,className:Zt,style:vt,rows:At}=Gt,Qt=(0,ht.Z)(Array(At)).map((Ft,wt)=>Fe.createElement("li",{key:wt,style:{width:It(wt)}}));return Fe.createElement("ul",{className:He()(Et,Zt),style:vt},Qt)},vn=Gt=>{let{prefixCls:It,className:Et,width:Zt,style:vt}=Gt;return Fe.createElement("h3",{className:He()(It,Et),style:Object.assign({width:Zt},vt)})};function Ot(Gt){return Gt&&typeof Gt=="object"?Gt:{}}function rn(Gt,It){return Gt&&!It?{size:"large",shape:"square"}:{size:"large",shape:"circle"}}function an(Gt,It){return!Gt&&It?{width:"38%"}:Gt&&It?{width:"50%"}:{}}function On(Gt,It){const Et={};return(!Gt||!It)&&(Et.width="61%"),!Gt&&It?Et.rows=3:Et.rows=2,Et}const Rn=Gt=>{const{prefixCls:It,loading:Et,className:Zt,rootClassName:vt,style:At,children:Qt,avatar:Ft=!1,title:wt=!0,paragraph:ln=!0,active:In,round:Kn}=Gt,{getPrefixCls:Vn,direction:Zn,skeleton:$n}=Fe.useContext(Ce.E_),Jt=Vn("skeleton",It),[yn,Hn]=Se(Jt);if(Et||!("loading"in Gt)){const Bn=!!Ft,Er=!!wt,Fr=!!ln;let br;if(Bn){const Ya=Object.assign(Object.assign({prefixCls:`${Jt}-avatar`},rn(Er,Fr)),Ot(Ft));br=Fe.createElement("div",{className:`${Jt}-header`},Fe.createElement(ge,Object.assign({},Ya)))}let Wr;if(Er||Fr){let Ya;if(Er){const Ia=Object.assign(Object.assign({prefixCls:`${Jt}-title`},an(Bn,Fr)),Ot(wt));Ya=Fe.createElement(vn,Object.assign({},Ia))}let Ba;if(Fr){const Ia=Object.assign(Object.assign({prefixCls:`${Jt}-paragraph`},On(Bn,Er)),Ot(ln));Ba=Fe.createElement(Kt,Object.assign({},Ia))}Wr=Fe.createElement("div",{className:`${Jt}-content`},Ya,Ba)}const Da=He()(Jt,{[`${Jt}-with-avatar`]:Bn,[`${Jt}-active`]:In,[`${Jt}-rtl`]:Zn==="rtl",[`${Jt}-round`]:Kn},$n==null?void 0:$n.className,Zt,vt,Hn);return yn(Fe.createElement("div",{className:Da,style:Object.assign(Object.assign({},$n==null?void 0:$n.style),At)},br,Wr))}return typeof Qt!="undefined"?Qt:null};Rn.Button=ze,Rn.Avatar=Re,Rn.Input=$e,Rn.Image=Qe,Rn.Node=dt;var sn=Rn,tn=sn},31797:function(St,Dt,Ie){"use strict";Ie.d(Dt,{default:function(){return Se}});var Be=Ie(59301),He=Ie(56762),Fe=Ie(92343),Ce=Ie(92310),_e=Ie.n(Ce),Pe=Ie(36355),ge=Ie(61621),be=De=>{const{value:Re,formatter:Ne,precision:ze,decimalSeparator:Ge,groupSeparator:Xe="",prefixCls:Qe}=De;let nt;if(typeof Ne=="function")nt=Ne(Re);else{const $e=String(Re),qe=$e.match(/^(-?)(\d*)(\.(\d+))?$/);if(!qe||$e==="-")nt=$e;else{const ot=qe[1];let at=qe[2]||"0",lt=qe[4]||"";at=at.replace(/\B(?=(\d{3})+(?!\d))/g,Xe),typeof ze=="number"&&(lt=lt.padEnd(ze,"0").slice(0,ze>0?ze:0)),lt&&(lt=`${Ge}${lt}`),nt=[Be.createElement("span",{key:"int",className:`${Qe}-content-value-int`},ot,at),lt&&Be.createElement("span",{key:"decimal",className:`${Qe}-content-value-decimal`},lt)]}}return Be.createElement("span",{className:`${Qe}-content-value`},nt)},we=Ie(17313),pe=Ie(83116),ye=Ie(37613);const xe=De=>{const{componentCls:Re,marginXXS:Ne,padding:ze,colorTextDescription:Ge,titleFontSize:Xe,colorTextHeading:Qe,contentFontSize:nt,fontFamily:$e}=De;return{[`${Re}`]:Object.assign(Object.assign({},(0,we.Wf)(De)),{[`${Re}-title`]:{marginBottom:Ne,color:Ge,fontSize:Xe},[`${Re}-skeleton`]:{paddingTop:ze},[`${Re}-content`]:{color:Qe,fontSize:nt,fontFamily:$e,[`${Re}-content-value`]:{display:"inline-block",direction:"ltr"},[`${Re}-content-prefix, ${Re}-content-suffix`]:{display:"inline-block"},[`${Re}-content-prefix`]:{marginInlineEnd:Ne},[`${Re}-content-suffix`]:{marginInlineStart:Ne}}})}};var ce=(0,pe.Z)("Statistic",De=>{const Re=(0,ye.TS)(De,{});return[xe(Re)]},De=>{const{fontSizeHeading3:Re,fontSize:Ne}=De;return{titleFontSize:Ne,contentFontSize:Re}}),ne=De=>{const{prefixCls:Re,className:Ne,rootClassName:ze,style:Ge,valueStyle:Xe,value:Qe=0,title:nt,valueRender:$e,prefix:qe,suffix:ot,loading:at=!1,onMouseEnter:lt,onMouseLeave:rt,decimalSeparator:ut=".",groupSeparator:yt=","}=De,{getPrefixCls:ft,direction:dt,statistic:ht}=Be.useContext(Pe.E_),Ut=ft("statistic",Re),[Kt,qt]=ce(Ut),vn=Be.createElement(be,Object.assign({decimalSeparator:ut,groupSeparator:yt,prefixCls:Ut},De,{value:Qe})),Ot=_e()(Ut,{[`${Ut}-rtl`]:dt==="rtl"},ht==null?void 0:ht.className,Ne,ze,qt);return Kt(Be.createElement("div",{className:Ot,style:Object.assign(Object.assign({},ht==null?void 0:ht.style),Ge),onMouseEnter:lt,onMouseLeave:rt},nt&&Be.createElement("div",{className:`${Ut}-title`},nt),Be.createElement(ge.Z,{paragraph:!1,loading:at,className:`${Ut}-skeleton`},Be.createElement("div",{style:Xe,className:`${Ut}-content`},qe&&Be.createElement("span",{className:`${Ut}-content-prefix`},qe),$e?$e(vn):vn,ot&&Be.createElement("span",{className:`${Ut}-content-suffix`},ot)))))};const le=[["Y",1e3*60*60*24*365],["M",1e3*60*60*24*30],["D",1e3*60*60*24],["H",1e3*60*60],["m",1e3*60],["s",1e3],["S",1]];function oe(De,Re){let Ne=De;const ze=/\[[^\]]*]/g,Ge=(Re.match(ze)||[]).map($e=>$e.slice(1,-1)),Xe=Re.replace(ze,"[]"),Qe=le.reduce(($e,qe)=>{let[ot,at]=qe;if($e.includes(ot)){const lt=Math.floor(Ne/at);return Ne-=lt*at,$e.replace(new RegExp(`${ot}+`,"g"),rt=>{const ut=rt.length;return lt.toString().padStart(ut,"0")})}return $e},Xe);let nt=0;return Qe.replace(ze,()=>{const $e=Ge[nt];return nt+=1,$e})}function de(De,Re){const{format:Ne=""}=Re,ze=new Date(De).getTime(),Ge=Date.now(),Xe=Math.max(ze-Ge,0);return oe(Xe,Ne)}const he=1e3/30;function ie(De){return new Date(De).getTime()}const ue=De=>{const{value:Re,format:Ne="HH:mm:ss",onChange:ze,onFinish:Ge}=De,Xe=(0,He.Z)(),Qe=Be.useRef(null),nt=()=>{Ge==null||Ge(),Qe.current&&(clearInterval(Qe.current),Qe.current=null)},$e=()=>{const at=ie(Re);at>=Date.now()&&(Qe.current=setInterval(()=>{Xe(),ze==null||ze(at-Date.now()),at($e(),()=>{Qe.current&&(clearInterval(Qe.current),Qe.current=null)}),[Re]);const qe=(at,lt)=>de(at,Object.assign(Object.assign({},lt),{format:Ne})),ot=at=>(0,Fe.Tm)(at,{title:void 0});return Be.createElement(ne,Object.assign({},De,{valueRender:ot,formatter:qe}))};var ve=Be.memo(ue);ne.Countdown=ve;var Se=ne},15969:function(St,Dt,Ie){"use strict";Ie.d(Dt,{N:function(){return Be}});const Be=He=>({color:He.colorLink,textDecoration:"none",outline:"none",cursor:"pointer",transition:`color ${He.motionDurationSlow}`,"&:focus, &:hover":{color:He.colorLinkHover},"&:active":{color:He.colorLinkActive}})},1710:function(St,Dt,Ie){"use strict";Ie.d(Dt,{default:function(){return Ps}});var Be={},He="rc-table-internal-hook",Fe=Ie(42978),Ce=Ie(6089),_e=Ie(34280),Pe=Ie(13697),ge=Ie(59301),Ae=Ie(4676);function be(Rt){var Wt=ge.createContext(void 0),dn=function(kn){var Gn=kn.value,Un=kn.children,cr=ge.useRef(Gn);cr.current=Gn;var sr=ge.useState(function(){return{getValue:function(){return cr.current},listeners:new Set}}),wr=(0,Fe.Z)(sr,1),Ar=wr[0];return(0,_e.Z)(function(){(0,Ae.unstable_batchedUpdates)(function(){Ar.listeners.forEach(function(Cr){Cr(Gn)})})},[Gn]),ge.createElement(Wt.Provider,{value:Ar},Un)};return{Context:Wt,Provider:dn,defaultValue:Rt}}function we(Rt,Wt){var dn=(0,Ce.Z)(typeof Wt=="function"?Wt:function(Cr){if(Wt===void 0)return Cr;if(!Array.isArray(Wt))return Cr[Wt];var ta={};return Wt.forEach(function(Yr){ta[Yr]=Cr[Yr]}),ta}),Sn=ge.useContext(Rt==null?void 0:Rt.Context),kn=Sn||{},Gn=kn.listeners,Un=kn.getValue,cr=ge.useRef();cr.current=dn(Sn?Un():Rt==null?void 0:Rt.defaultValue);var sr=ge.useState({}),wr=(0,Fe.Z)(sr,2),Ar=wr[1];return(0,_e.Z)(function(){if(!Sn)return;function Cr(ta){var Yr=dn(ta);(0,Pe.Z)(cr.current,Yr,!0)||Ar({})}return Gn.add(Cr),function(){Gn.delete(Cr)}},[Sn]),cr.current}var pe=Ie(54476),ye=Ie(8654);function xe(){var Rt=ge.createContext(null);function Wt(){return ge.useContext(Rt)}function dn(kn,Gn){var Un=(0,ye.Yr)(kn),cr=function(wr,Ar){var Cr=Un?{ref:Ar}:{},ta=ge.useRef(0),Yr=ge.useRef(wr),Xr=Wt();return Xr!==null?ge.createElement(kn,(0,pe.Z)({},wr,Cr)):((!Gn||Gn(Yr.current,wr))&&(ta.current+=1),Yr.current=wr,ge.createElement(Rt.Provider,{value:ta.current},ge.createElement(kn,(0,pe.Z)({},wr,Cr))))};return Un?ge.forwardRef(cr):cr}function Sn(kn,Gn){var Un=(0,ye.Yr)(kn),cr=function(wr,Ar){var Cr=Un?{ref:Ar}:{};return Wt(),ge.createElement(kn,(0,pe.Z)({},wr,Cr))};return Un?ge.memo(ge.forwardRef(cr),Gn):ge.memo(cr,Gn)}return{makeImmutable:dn,responseImmutable:Sn,useImmutableMark:Wt}}var ce=xe(),te=ce.makeImmutable,ne=ce.responseImmutable,le=ce.useImmutableMark,oe=xe(),de=oe.makeImmutable,he=oe.responseImmutable,ie=oe.useImmutableMark,ue=be(),ve=ue;function Se(Rt,Wt){var dn=ge.useRef(0);dn.current+=1;var Sn=ge.useRef(Rt),kn=[];Object.keys(Rt||{}).map(function(Un){var cr;(Rt==null?void 0:Rt[Un])!==((cr=Sn.current)===null||cr===void 0?void 0:cr[Un])&&kn.push(Un)}),Sn.current=Rt;var Gn=ge.useRef([]);return kn.length&&(Gn.current=kn),ge.useDebugValue(dn.current),ge.useDebugValue(Gn.current.join(", ")),Wt&&console.log("".concat(Wt,":"),dn.current,Gn.current),dn.current}var De=null,Re=ge.memo(function(){var Rt=Se();return ge.createElement("h1",null,"Render Times: ",Rt)});Re.displayName="RenderBlock";var Ne=Ie(76190),ze=Ie(33885),Ge=Ie(20068),Xe=Ie(92310),Qe=Ie.n(Xe),nt=Ie(80547),$e=Ie(97938),qe=Ie(48736),ot=ge.createContext({renderWithProps:!1}),at=ot,lt="RC_TABLE_KEY";function rt(Rt){return Rt==null?[]:Array.isArray(Rt)?Rt:[Rt]}function ut(Rt){var Wt=[],dn={};return Rt.forEach(function(Sn){for(var kn=Sn||{},Gn=kn.key,Un=kn.dataIndex,cr=Gn||rt(Un).join("-")||lt;dn[cr];)cr="".concat(cr,"_next");dn[cr]=!0,Wt.push(cr)}),Wt}function yt(Rt){return Rt!=null}function ft(Rt){return Rt&&(0,Ne.Z)(Rt)==="object"&&!Array.isArray(Rt)&&!ge.isValidElement(Rt)}function dt(Rt,Wt,dn,Sn,kn,Gn){var Un=ge.useContext(at),cr=ie(),sr=(0,nt.Z)(function(){if(yt(Sn))return[Sn];var wr=Wt==null||Wt===""?[]:Array.isArray(Wt)?Wt:[Wt],Ar=(0,$e.Z)(Rt,wr),Cr=Ar,ta=void 0;if(kn){var Yr=kn(Ar,Rt,dn);ft(Yr)?(Cr=Yr.children,ta=Yr.props,Un.renderWithProps=!0):Cr=Yr}return[Cr,ta]},[cr,Rt,Sn,Wt,kn,dn],function(wr,Ar){if(Gn){var Cr=(0,Fe.Z)(wr,2),ta=Cr[1],Yr=(0,Fe.Z)(Ar,2),Xr=Yr[1];return Gn(Xr,ta)}return Un.renderWithProps?!0:!(0,Pe.Z)(wr,Ar,!0)});return sr}function ht(Rt,Wt,dn,Sn){var kn=Rt+Wt-1;return Rt<=Sn&&kn>=dn}function Ut(Rt,Wt){return we(ve,function(dn){var Sn=ht(Rt,Wt||1,dn.hoverStartRow,dn.hoverEndRow);return[Sn,dn.onHover]})}var Kt=function(Wt){var dn=Wt.ellipsis,Sn=Wt.rowType,kn=Wt.children,Gn,Un=dn===!0?{showTitle:!0}:dn;return Un&&(Un.showTitle||Sn==="header")&&(typeof kn=="string"||typeof kn=="number"?Gn=kn.toString():ge.isValidElement(kn)&&typeof kn.props.children=="string"&&(Gn=kn.props.children)),Gn};function qt(Rt){var Wt,dn,Sn,kn,Gn,Un,cr,sr,wr=Rt.component,Ar=Rt.children,Cr=Rt.ellipsis,ta=Rt.scope,Yr=Rt.prefixCls,Xr=Rt.className,Aa=Rt.align,ha=Rt.record,Ha=Rt.render,Oa=Rt.dataIndex,Wa=Rt.renderIndex,Fi=Rt.shouldCellUpdate,fi=Rt.index,bi=Rt.rowType,Oi=Rt.colSpan,no=Rt.rowSpan,ri=Rt.fixLeft,Ci=Rt.fixRight,ii=Rt.firstFixLeft,Va=Rt.lastFixLeft,Za=Rt.firstFixRight,_i=Rt.lastFixRight,vo=Rt.appendNode,Ji=Rt.additionalProps,yi=Ji===void 0?{}:Ji,Ve=Rt.isSticky,et="".concat(Yr,"-cell"),it=we(ve,["supportSticky","allColumnsFixedLeft"]),pt=it.supportSticky,Mt=it.allColumnsFixedLeft,Tt=dt(ha,Oa,Wa,Ar,Ha,Fi),jt=(0,Fe.Z)(Tt,2),kt=jt[0],en=jt[1],Vt={},un=typeof ri=="number"&&pt,Tn=typeof Ci=="number"&&pt;un&&(Vt.position="sticky",Vt.left=ri),Tn&&(Vt.position="sticky",Vt.right=Ci);var hn=(Wt=(dn=(Sn=en==null?void 0:en.colSpan)!==null&&Sn!==void 0?Sn:yi.colSpan)!==null&&dn!==void 0?dn:Oi)!==null&&Wt!==void 0?Wt:1,gn=(kn=(Gn=(Un=en==null?void 0:en.rowSpan)!==null&&Un!==void 0?Un:yi.rowSpan)!==null&&Gn!==void 0?Gn:no)!==null&&kn!==void 0?kn:1,cn=Ut(fi,gn),bn=(0,Fe.Z)(cn,2),Wn=bn[0],_n=bn[1],Qn=function(Pr){var oa;ha&&_n(fi,fi+gn-1),yi==null||(oa=yi.onMouseEnter)===null||oa===void 0||oa.call(yi,Pr)},ir=function(Pr){var oa;ha&&_n(-1,-1),yi==null||(oa=yi.onMouseLeave)===null||oa===void 0||oa.call(yi,Pr)};if(hn===0||gn===0)return null;var xr=(cr=yi.title)!==null&&cr!==void 0?cr:Kt({rowType:bi,ellipsis:Cr,children:kt}),ia=Qe()(et,Xr,(sr={},(0,Ge.Z)(sr,"".concat(et,"-fix-left"),un&&pt),(0,Ge.Z)(sr,"".concat(et,"-fix-left-first"),ii&&pt),(0,Ge.Z)(sr,"".concat(et,"-fix-left-last"),Va&&pt),(0,Ge.Z)(sr,"".concat(et,"-fix-left-all"),Va&&Mt&&pt),(0,Ge.Z)(sr,"".concat(et,"-fix-right"),Tn&&pt),(0,Ge.Z)(sr,"".concat(et,"-fix-right-first"),Za&&pt),(0,Ge.Z)(sr,"".concat(et,"-fix-right-last"),_i&&pt),(0,Ge.Z)(sr,"".concat(et,"-ellipsis"),Cr),(0,Ge.Z)(sr,"".concat(et,"-with-append"),vo),(0,Ge.Z)(sr,"".concat(et,"-fix-sticky"),(un||Tn)&&Ve&&pt),(0,Ge.Z)(sr,"".concat(et,"-row-hover"),!en&&Wn),sr),yi.className,en==null?void 0:en.className),ea={};Aa&&(ea.textAlign=Aa);var Xa=(0,ze.Z)((0,ze.Z)((0,ze.Z)((0,ze.Z)({},Vt),yi.style),ea),en==null?void 0:en.style),xa=kt;return(0,Ne.Z)(xa)==="object"&&!Array.isArray(xa)&&!ge.isValidElement(xa)&&(xa=null),Cr&&(Va||Za)&&(xa=ge.createElement("span",{className:"".concat(et,"-content")},xa)),ge.createElement(wr,(0,pe.Z)({},en,yi,{className:ia,style:Xa,title:xr,scope:ta,onMouseEnter:Qn,onMouseLeave:ir,colSpan:hn!==1?hn:null,rowSpan:gn!==1?gn:null}),vo,xa)}var vn=ge.memo(qt);function Ot(Rt,Wt,dn,Sn,kn,Gn){var Un=dn[Rt]||{},cr=dn[Wt]||{},sr,wr;Un.fixed==="left"?sr=Sn.left[kn==="rtl"?Wt:Rt]:cr.fixed==="right"&&(wr=Sn.right[kn==="rtl"?Rt:Wt]);var Ar=!1,Cr=!1,ta=!1,Yr=!1,Xr=dn[Wt+1],Aa=dn[Rt-1],ha=!(Gn!=null&&Gn.children);if(kn==="rtl"){if(sr!==void 0){var Ha=Aa&&Aa.fixed==="left";Yr=!Ha&&ha}else if(wr!==void 0){var Oa=Xr&&Xr.fixed==="right";ta=!Oa&&ha}}else if(sr!==void 0){var Wa=Xr&&Xr.fixed==="left";Ar=!Wa&&ha}else if(wr!==void 0){var Fi=Aa&&Aa.fixed==="right";Cr=!Fi&&ha}return{fixLeft:sr,fixRight:wr,lastFixLeft:Ar,firstFixRight:Cr,lastFixRight:ta,firstFixLeft:Yr,isSticky:Sn.isSticky}}var rn=ge.createContext({}),an=rn;function On(Rt){var Wt=Rt.className,dn=Rt.index,Sn=Rt.children,kn=Rt.colSpan,Gn=kn===void 0?1:kn,Un=Rt.rowSpan,cr=Rt.align,sr=we(ve,["prefixCls","direction"]),wr=sr.prefixCls,Ar=sr.direction,Cr=ge.useContext(an),ta=Cr.scrollColumnIndex,Yr=Cr.stickyOffsets,Xr=Cr.flattenColumns,Aa=Cr.columns,ha=dn+Gn-1,Ha=ha+1===ta?Gn+1:Gn,Oa=Ot(dn,dn+Ha-1,Xr,Yr,Ar,Aa==null?void 0:Aa[dn]);return ge.createElement(vn,(0,pe.Z)({className:Wt,index:dn,component:"td",prefixCls:wr,record:null,dataIndex:null,align:cr,colSpan:Ha,rowSpan:Un,render:function(){return Sn}},Oa))}var Rn=Ie(75931),sn=["children"];function tn(Rt){var Wt=Rt.children,dn=(0,Rn.Z)(Rt,sn);return ge.createElement("tr",dn,Wt)}function Gt(Rt){var Wt=Rt.children;return Wt}Gt.Row=tn,Gt.Cell=On;var It=Gt;function Et(Rt){var Wt=Rt.children,dn=Rt.stickyOffsets,Sn=Rt.flattenColumns,kn=Rt.columns,Gn=we(ve,"prefixCls"),Un=Sn.length-1,cr=Sn[Un],sr=ge.useMemo(function(){return{stickyOffsets:dn,flattenColumns:Sn,scrollColumnIndex:cr!=null&&cr.scrollbar?Un:null,columns:kn}},[cr,Sn,Un,dn,kn]);return ge.createElement(an.Provider,{value:sr},ge.createElement("tfoot",{className:"".concat(Gn,"-summary")},Wt))}var Zt=he(Et),vt=It,At=Ie(70425),Qt=Ie(29301),Ft=Ie(29194),wt=Ie(24514),ln=Ie(75152),In=Ie(26112);function Kn(Rt,Wt,dn,Sn,kn,Gn,Un){Rt.push({record:Wt,indent:dn,index:Un});var cr=Gn(Wt),sr=kn==null?void 0:kn.has(cr);if(Wt&&Array.isArray(Wt[Sn])&&sr)for(var wr=0;wr1?ii-1:0),Za=1;Za=0;cr-=1){var sr=Wt[cr],wr=dn&&dn[cr],Ar=wr&&wr[Ya];if(sr||Ar||Un){var Cr=Ar||{},ta=Cr.columnType,Yr=(0,Rn.Z)(Cr,Ia);kn.unshift(ge.createElement("col",(0,pe.Z)({key:cr,style:{width:sr}},Yr))),Un=!0}}return ge.createElement("colgroup",null,kn)}var wi=Ii,jr=Ie(94480),Ka=["className","noData","columns","flattenColumns","colWidths","columCount","stickyOffsets","direction","fixHeader","stickyTopOffset","stickyBottomOffset","stickyClassName","onScroll","maxContentScroll","children"];function oi(Rt,Wt){return(0,ge.useMemo)(function(){for(var dn=[],Sn=0;Sn1?"colgroup":"col":null,ellipsis:ha.ellipsis,align:ha.align,component:ha.title?Gn:Un,prefixCls:Ar,key:Yr[Aa]},Ha,{additionalProps:Oa,rowType:"header"}))}))}li.displayName="HeaderRow";var zn=li;function hr(Rt){var Wt=[];function dn(Un,cr){var sr=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;Wt[sr]=Wt[sr]||[];var wr=cr,Ar=Un.filter(Boolean).map(function(Cr){var ta={key:Cr.key,className:Cr.className||"",children:Cr.title,column:Cr,colStart:wr},Yr=1,Xr=Cr.children;return Xr&&Xr.length>0&&(Yr=dn(Xr,wr,sr+1).reduce(function(Aa,ha){return Aa+ha},0),ta.hasSubColumns=!0),"colSpan"in Cr&&(Yr=Cr.colSpan),"rowSpan"in Cr&&(ta.rowSpan=Cr.rowSpan),ta.colSpan=Yr,ta.colEnd=ta.colStart+Yr-1,Wt[sr].push(ta),wr+=Yr,Yr});return Ar}dn(Rt,0);for(var Sn=Wt.length,kn=function(cr){Wt[cr].forEach(function(sr){!("rowSpan"in sr)&&!sr.hasSubColumns&&(sr.rowSpan=Sn-cr)})},Gn=0;Gn1&&arguments[1]!==void 0?arguments[1]:"";return typeof Wt=="number"?Wt:Wt.endsWith("%")?Rt*parseFloat(Wt)/100:null}function Me(Rt,Wt){return ge.useMemo(function(){if(Wt&&Wt>0){var dn=0,Sn=0;Rt.forEach(function(wr){var Ar=bt(Wt,wr.width);Ar?dn+=Ar:Sn+=1});var kn=Wt-dn,Gn=Sn,Un=kn/Sn,cr=0,sr=Rt.map(function(wr){var Ar=(0,ze.Z)({},wr),Cr=bt(Wt,Ar.width);if(Cr)Ar.width=Cr;else{var ta=Math.floor(Un);Ar.width=Gn===1?kn:ta,kn-=ta,Gn-=1}return cr+=Ar.width,Ar});return[sr,cr]}return[Rt,Wt]},[Rt,Wt])}var Le=["children"],Te=["fixed"];function Ue(Rt){return(0,fa.Z)(Rt).filter(function(Wt){return ge.isValidElement(Wt)}).map(function(Wt){var dn=Wt.key,Sn=Wt.props,kn=Sn.children,Gn=(0,Rn.Z)(Sn,Le),Un=(0,ze.Z)({key:dn},Gn);return kn&&(Un.children=Ue(kn)),Un})}function Ye(Rt){var Wt=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"key";return Rt.filter(function(dn){return dn&&(0,Ne.Z)(dn)==="object"}).reduce(function(dn,Sn,kn){var Gn=Sn.fixed,Un=Gn===!0?"left":Gn,cr="".concat(Wt,"-").concat(kn),sr=Sn.children;return sr&&sr.length>0?[].concat((0,jr.Z)(dn),(0,jr.Z)(Ye(sr,cr).map(function(wr){return(0,ze.Z)({fixed:Un},wr)}))):[].concat((0,jr.Z)(dn),[(0,ze.Z)((0,ze.Z)({key:cr},Sn),{},{fixed:Un})])},[])}function xt(Rt){for(var Wt=!0,dn=0;dn=0;Gn-=1){var Un=Rt[Gn];if(kn&&Un.fixed!=="right")kn=!1;else if(!kn&&Un.fixed==="right"){warning(!1,"Index ".concat(Gn+1," of `columns` missing `fixed='right'` prop."));break}}}function Pt(Rt){return Rt.map(function(Wt){var dn=Wt.fixed,Sn=(0,Rn.Z)(Wt,Te),kn=dn;return dn==="left"?kn="right":dn==="right"&&(kn="left"),(0,ze.Z)({fixed:kn},Sn)})}function Xt(Rt,Wt){var dn=Rt.prefixCls,Sn=Rt.columns,kn=Rt.children,Gn=Rt.expandable,Un=Rt.expandedKeys,cr=Rt.columnTitle,sr=Rt.getRowKey,wr=Rt.onTriggerExpand,Ar=Rt.expandIcon,Cr=Rt.rowExpandable,ta=Rt.expandIconColumnIndex,Yr=Rt.direction,Xr=Rt.expandRowByClick,Aa=Rt.columnWidth,ha=Rt.fixed,Ha=Rt.scrollWidth,Oa=ge.useMemo(function(){return Sn||Ue(kn)},[Sn,kn]),Wa=ge.useMemo(function(){if(Gn){var Ci,ii=Oa.slice();if(!ii.includes(Be)){var Va=ta||0;Va>=0&&ii.splice(Va,0,Be)}var Za=ii.indexOf(Be);ii=ii.filter(function(yi,Ve){return yi!==Be||Ve===Za});var _i=Oa[Za],vo;(ha==="left"||ha)&&!ta?vo="left":(ha==="right"||ha)&&ta===Oa.length?vo="right":vo=_i?_i.fixed:null;var Ji=(Ci={},(0,Ge.Z)(Ci,Ya,{className:"".concat(dn,"-expand-icon-col"),columnType:"EXPAND_COLUMN"}),(0,Ge.Z)(Ci,"title",cr),(0,Ge.Z)(Ci,"fixed",vo),(0,Ge.Z)(Ci,"className","".concat(dn,"-row-expand-icon-cell")),(0,Ge.Z)(Ci,"width",Aa),(0,Ge.Z)(Ci,"render",function(Ve,et,it){var pt=sr(et,it),Mt=Un.has(pt),Tt=Cr?Cr(et):!0,jt=Ar({prefixCls:dn,expanded:Mt,expandable:Tt,record:et,onExpand:wr});return Xr?ge.createElement("span",{onClick:function(en){return en.stopPropagation()}},jt):jt}),Ci);return ii.map(function(yi){return yi===Be?Ji:yi})}return Oa.filter(function(yi){return yi!==Be})},[Gn,Oa,sr,Un,Ar,Yr]),Fi=ge.useMemo(function(){var Ci=Wa;return Wt&&(Ci=Wt(Ci)),Ci.length||(Ci=[{render:function(){return null}}]),Ci},[Wt,Wa,Yr]),fi=ge.useMemo(function(){return Yr==="rtl"?Pt(Ye(Fi)):Ye(Fi)},[Fi,Yr,Ha]),bi=Me(fi,Ha),Oi=(0,Fe.Z)(bi,2),no=Oi[0],ri=Oi[1];return[Fi,no,ri]}var Ht=Xt;function mn(Rt){var Wt,dn=Rt.prefixCls,Sn=Rt.record,kn=Rt.onExpand,Gn=Rt.expanded,Un=Rt.expandable,cr="".concat(dn,"-row-expand-icon");if(!Un)return ge.createElement("span",{className:Qe()(cr,"".concat(dn,"-row-spaced"))});var sr=function(Ar){kn(Sn,Ar),Ar.stopPropagation()};return ge.createElement("span",{className:Qe()(cr,(Wt={},(0,Ge.Z)(Wt,"".concat(dn,"-row-expanded"),Gn),(0,Ge.Z)(Wt,"".concat(dn,"-row-collapsed"),!Gn),Wt)),onClick:sr})}function pn(Rt,Wt,dn){var Sn=[];function kn(Gn){(Gn||[]).forEach(function(Un,cr){Sn.push(Wt(Un,cr)),kn(Un[dn])})}return kn(Rt),Sn}function Yn(Rt,Wt,dn){var Sn=Ba(Rt),kn=Sn.expandIcon,Gn=Sn.expandedRowKeys,Un=Sn.defaultExpandedRowKeys,cr=Sn.defaultExpandAllRows,sr=Sn.expandedRowRender,wr=Sn.onExpand,Ar=Sn.onExpandedRowsChange,Cr=Sn.childrenColumnName,ta=kn||mn,Yr=Cr||"children",Xr=ge.useMemo(function(){return sr?"row":Rt.expandable&&Rt.internalHooks===He&&Rt.expandable.__PARENT_RENDER_ICON__||Wt.some(function(fi){return fi&&(0,Ne.Z)(fi)==="object"&&fi[Yr]})?"nest":!1},[!!sr,Wt]),Aa=ge.useState(function(){return Un||(cr?pn(Wt,dn,Yr):[])}),ha=(0,Fe.Z)(Aa,2),Ha=ha[0],Oa=ha[1],Wa=ge.useMemo(function(){return new Set(Gn||Ha||[])},[Gn,Ha]),Fi=ge.useCallback(function(fi){var bi=dn(fi,Wt.indexOf(fi)),Oi,no=Wa.has(bi);no?(Wa.delete(bi),Oi=(0,jr.Z)(Wa)):Oi=[].concat((0,jr.Z)(Wa),[bi]),Oa(Oi),wr&&wr(!no,fi),Ar&&Ar(Oi)},[dn,Wa,Wt,wr,Ar]);return[Sn,Xr,Wa,ta,Yr,Fi]}function Dn(Rt,Wt,dn,Sn){var kn=Rt.map(function(Gn,Un){return Ot(Un,Un,Rt,Wt,dn,Sn==null?void 0:Sn[Un])});return(0,nt.Z)(function(){return kn},[kn],function(Gn,Un){return!(0,Pe.Z)(Gn,Un)})}function qn(Rt){var Wt=(0,ge.useRef)(Rt),dn=(0,ge.useState)({}),Sn=(0,Fe.Z)(dn,2),kn=Sn[1],Gn=(0,ge.useRef)(null),Un=(0,ge.useRef)([]);function cr(sr){Un.current.push(sr);var wr=Promise.resolve();Gn.current=wr,wr.then(function(){if(Gn.current===wr){var Ar=Un.current,Cr=Wt.current;Un.current=[],Ar.forEach(function(ta){Wt.current=ta(Wt.current)}),Gn.current=null,Cr!==Wt.current&&kn({})}})}return(0,ge.useEffect)(function(){return function(){Gn.current=null}},[]),[Wt.current,cr]}function er(Rt){var Wt=(0,ge.useRef)(Rt||null),dn=(0,ge.useRef)();function Sn(){window.clearTimeout(dn.current)}function kn(Un){Wt.current=Un,Sn(),dn.current=window.setTimeout(function(){Wt.current=null,dn.current=void 0},100)}function Gn(){return Wt.current}return(0,ge.useEffect)(function(){return Sn},[]),[kn,Gn]}function dr(){var Rt=ge.useState(-1),Wt=(0,Fe.Z)(Rt,2),dn=Wt[0],Sn=Wt[1],kn=ge.useState(-1),Gn=(0,Fe.Z)(kn,2),Un=Gn[0],cr=Gn[1],sr=ge.useCallback(function(wr,Ar){Sn(wr),cr(Ar)},[]);return[dn,Un,sr]}var fn=Ie(47273),nn=(0,fn.Z)()?window:null;function Nn(Rt,Wt){var dn=(0,Ne.Z)(Rt)==="object"?Rt:{},Sn=dn.offsetHeader,kn=Sn===void 0?0:Sn,Gn=dn.offsetSummary,Un=Gn===void 0?0:Gn,cr=dn.offsetScroll,sr=cr===void 0?0:cr,wr=dn.getContainer,Ar=wr===void 0?function(){return nn}:wr,Cr=Ar()||nn;return ge.useMemo(function(){var ta=!!Rt;return{isSticky:ta,stickyClassName:ta?"".concat(Wt,"-sticky-holder"):"",offsetHeader:kn,offsetSummary:Un,offsetScroll:sr,container:Cr}},[sr,kn,Un,Wt,Cr])}function jn(Rt,Wt,dn){var Sn=(0,ge.useMemo)(function(){for(var kn=[],Gn=[],Un=0,cr=0,sr=0;sr=Cr&&(yi=Cr-ta),Un({scrollLeft:yi/Cr*(Ar+2)}),Oa.current.x=Za.pageX},Ci=function(){if(Gn.current){var Za=(0,yr.os)(Gn.current).top,_i=Za+Gn.current.offsetHeight,vo=sr===window?document.documentElement.scrollTop+window.innerHeight:(0,yr.os)(sr).top+sr.clientHeight;_i-(0,ln.Z)()<=vo||Za>=vo-cr?Ha(function(Ji){return(0,ze.Z)((0,ze.Z)({},Ji),{},{isHiddenScrollBar:!0})}):Ha(function(Ji){return(0,ze.Z)((0,ze.Z)({},Ji),{},{isHiddenScrollBar:!1})})}},ii=function(Za){Ha(function(_i){return(0,ze.Z)((0,ze.Z)({},_i),{},{scrollLeft:Za/Ar*Cr||0})})};return ge.useImperativeHandle(dn,function(){return{setScrollLeft:ii}}),ge.useEffect(function(){var Va=(0,ur.Z)(document.body,"mouseup",Oi,!1),Za=(0,ur.Z)(document.body,"mousemove",ri,!1);return Ci(),function(){Va.remove(),Za.remove()}},[ta,fi]),ge.useEffect(function(){var Va=(0,ur.Z)(sr,"scroll",Ci,!1),Za=(0,ur.Z)(window,"resize",Ci,!1);return function(){Va.remove(),Za.remove()}},[sr]),ge.useEffect(function(){ha.isHiddenScrollBar||Ha(function(Va){var Za=Gn.current;return Za?(0,ze.Z)((0,ze.Z)({},Va),{},{scrollLeft:Za.scrollLeft/Za.scrollWidth*Za.clientWidth}):Va})},[ha.isHiddenScrollBar]),Ar<=Cr||!ta||ha.isHiddenScrollBar?null:ge.createElement("div",{style:{height:(0,ln.Z)(),width:Cr,bottom:cr},className:"".concat(wr,"-sticky-scroll")},ge.createElement("div",{onMouseDown:no,ref:Yr,className:Qe()("".concat(wr,"-sticky-scroll-bar"),(0,Ge.Z)({},"".concat(wr,"-sticky-scroll-bar-active"),fi)),style:{width:"".concat(ta,"px"),transform:"translate3d(".concat(ha.scrollLeft,"px, 0, 0)")}}))},gr=ge.forwardRef(wn);function Jn(Rt){return null}var Ur=Jn;function Ja(Rt){return null}var gi=Ja,ui="rc-table",Hr=[],wa={};function Ta(){return"No Data"}function ua(Rt){var Wt,dn=(0,ze.Z)({rowKey:"key",prefixCls:ui,emptyText:Ta},Rt),Sn=dn.prefixCls,kn=dn.className,Gn=dn.rowClassName,Un=dn.style,cr=dn.data,sr=dn.rowKey,wr=dn.scroll,Ar=dn.tableLayout,Cr=dn.direction,ta=dn.title,Yr=dn.footer,Xr=dn.summary,Aa=dn.caption,ha=dn.id,Ha=dn.showHeader,Oa=dn.components,Wa=dn.emptyText,Fi=dn.onRow,fi=dn.onHeaderRow,bi=dn.internalHooks,Oi=dn.transformColumns,no=dn.internalRefs,ri=dn.tailor,Ci=dn.sticky,ii=cr||Hr,Va=!!ii.length,Za=bi===He,_i=ge.useCallback(function(ws,el){return(0,$e.Z)(Oa,ws)||el},[Oa]),vo=ge.useMemo(function(){return typeof sr=="function"?sr:function(ws){var el=ws&&ws[sr];return el}},[sr]),Ji=_i(["body"]),yi=dr(),Ve=(0,Fe.Z)(yi,3),et=Ve[0],it=Ve[1],pt=Ve[2],Mt=Yn(dn,ii,vo),Tt=(0,Fe.Z)(Mt,6),jt=Tt[0],kt=Tt[1],en=Tt[2],Vt=Tt[3],un=Tt[4],Tn=Tt[5],hn=wr==null?void 0:wr.x,gn=ge.useState(0),cn=(0,Fe.Z)(gn,2),bn=cn[0],Wn=cn[1],_n=Ht((0,ze.Z)((0,ze.Z)((0,ze.Z)({},dn),jt),{},{expandable:!!jt.expandedRowRender,columnTitle:jt.columnTitle,expandedKeys:en,getRowKey:vo,onTriggerExpand:Tn,expandIcon:Vt,expandIconColumnIndex:jt.expandIconColumnIndex,direction:Cr,scrollWidth:Za&&ri&&typeof hn=="number"?hn:null}),Za?Oi:null),Qn=(0,Fe.Z)(_n,3),ir=Qn[0],xr=Qn[1],ia=Qn[2],ea=ia!=null?ia:hn,Xa=ge.useMemo(function(){return{columns:ir,flattenColumns:xr}},[ir,xr]),xa=ge.useRef(),Pa=ge.useRef(),Pr=ge.useRef(),oa=ge.useRef(),hi=ge.useRef(),ar=ge.useState(!1),Mr=(0,Fe.Z)(ar,2),sa=Mr[0],da=Mr[1],Ra=ge.useState(!1),la=(0,Fe.Z)(Ra,2),na=la[0],vi=la[1],mi=qn(new Map),_r=(0,Fe.Z)(mi,2),Zi=_r[0],qi=_r[1],$o=ut(xr),cs=$o.map(function(ws){return Zi.get(ws)}),Rs=ge.useMemo(function(){return cs},[cs.join("_")]),gl=rr(Rs,xr.length,Cr),qs=wr&&yt(wr.y),Zs=wr&&yt(ea)||!!jt.fixed,Ec=Zs&&xr.some(function(ws){var el=ws.fixed;return el}),ud=ge.useRef(),Ac=Nn(Ci,Sn),Fu=Ac.isSticky,eh=Ac.offsetHeader,Wh=Ac.offsetSummary,rs=Ac.offsetScroll,zs=Ac.stickyClassName,jl=Ac.container,$s=ge.useMemo(function(){return Xr==null?void 0:Xr(ii)},[Xr,ii]),ml=(qs||Fu)&&ge.isValidElement($s)&&$s.type===It&&$s.props.fixed,Xs,bl,Xu;qs&&(bl={overflowY:"scroll",maxHeight:wr.y}),Zs&&(Xs={overflowX:"auto"},qs||(bl={overflowY:"hidden"}),Xu={width:ea===!0?"auto":ea,minWidth:"100%"});var Vg=ge.useCallback(function(ws,el){(0,Ft.Z)(xa.current)&&qi(function(ku){if(ku.get(ws)!==el){var cd=new Map(ku);return cd.set(ws,el),cd}return ku})},[]),om=er(null),Kg=(0,Fe.Z)(om,2),sm=Kg[0],ql=Kg[1];function th(ws,el){el&&(typeof el=="function"?el(ws):el.scrollLeft!==ws&&(el.scrollLeft=ws,el.scrollLeft!==ws&&setTimeout(function(){el.scrollLeft=ws},0)))}var wd=(0,Ce.Z)(function(ws){var el=ws.currentTarget,ku=ws.scrollLeft,cd=Cr==="rtl",dd=typeof ku=="number"?ku:el.scrollLeft,Z0=el||wa;if(!ql()||ql()===Z0){var Xh;sm(Z0),th(dd,Pa.current),th(dd,Pr.current),th(dd,hi.current),th(dd,(Xh=ud.current)===null||Xh===void 0?void 0:Xh.setScrollLeft)}var Jh=el||Pa.current;if(Jh){var t0=Jh.scrollWidth,ah=Jh.clientWidth;if(t0===ah){da(!1),vi(!1);return}cd?(da(-dd0)):(da(dd>0),vi(dd1?Aa-Za:0,vo=(0,ze.Z)((0,ze.Z)((0,ze.Z)({},Oi),sr),{},{flex:"0 0 ".concat(Za,"px"),width:"".concat(Za,"px"),marginRight:_i,pointerEvents:"auto"}),Ji=ge.useMemo(function(){return Ar?ii<=1:ri===0||ii===0||ii>1},[ii,ri,Ar]);Ji?vo.visibility="hidden":Ar&&(vo.height=Cr==null?void 0:Cr(ii));var yi=Ji?function(){return null}:ta,Ve={};return(ii===0||ri===0)&&(Ve.rowSpan=1,Ve.colSpan=1),ge.createElement(vn,(0,pe.Z)({className:Qe()(Xr,wr),ellipsis:dn.ellipsis,align:dn.align,scope:dn.rowScope,component:"div",prefixCls:Wt.prefixCls,key:Wa,record:cr,index:Gn,renderIndex:Un,dataIndex:Yr,render:yi,shouldCellUpdate:dn.shouldCellUpdate},Fi,{appendNode:fi,additionalProps:(0,ze.Z)((0,ze.Z)({},bi),{},{style:vo},Ve)}))}var Uo=_s,Xi=["data","index","className","rowKey","style","extra","getHeight"],Ti=ge.forwardRef(function(Rt,Wt){var dn=Rt.data,Sn=Rt.index,kn=Rt.className,Gn=Rt.rowKey,Un=Rt.style,cr=Rt.extra,sr=Rt.getHeight,wr=(0,Rn.Z)(Rt,Xi),Ar=dn.record,Cr=dn.indent,ta=dn.index,Yr=we(ve,["prefixCls","flattenColumns","fixColumn","componentWidth","scrollX"]),Xr=Yr.scrollX,Aa=Yr.flattenColumns,ha=Yr.prefixCls,Ha=Yr.fixColumn,Oa=Yr.componentWidth,Wa=Jt(Ar,Gn,Sn,Cr),Fi=Wa.rowSupportExpand,fi=Wa.expanded,bi=Wa.rowProps,Oi=Wa.expandedRowRender,no=Wa.expandedRowClassName,ri;if(Fi&&fi){var Ci=Oi(Ar,Sn,Cr+1,fi),ii=no==null?void 0:no(Ar,Sn,Cr),Va={};Ha&&(Va={style:(0,Ge.Z)({},"--virtual-width","".concat(Oa,"px"))});var Za="".concat(ha,"-expanded-row-cell");ri=ge.createElement("div",{className:Qe()("".concat(ha,"-expanded-row"),"".concat(ha,"-expanded-row-level-").concat(Cr+1),ii)},ge.createElement(vn,{component:"div",prefixCls:ha,className:Qe()(Za,(0,Ge.Z)({},"".concat(Za,"-fixed"),Ha)),additionalProps:Va},Ci))}var _i=(0,ze.Z)((0,ze.Z)({},Un),{},{width:Xr});cr&&(_i.position="absolute",_i.pointerEvents="none");var vo=ge.createElement("div",(0,pe.Z)({},bi,wr,{ref:Fi?null:Wt,className:Qe()(kn,"".concat(ha,"-row"),bi==null?void 0:bi.className,(0,Ge.Z)({},"".concat(ha,"-row-extra"),cr)),style:(0,ze.Z)((0,ze.Z)({},_i),bi==null?void 0:bi.style)}),Aa.map(function(Ji,yi){return ge.createElement(Uo,{key:yi,rowInfo:Wa,column:Ji,colIndex:yi,indent:Cr,index:Sn,renderIndex:ta,record:Ar,inverse:cr,getHeight:sr})}));return Fi?ge.createElement("div",{ref:Wt},vo,ri):vo}),Jo=he(Ti),Ro=Jo,Lo=ge.forwardRef(function(Rt,Wt){var dn=Rt.data,Sn=Rt.onScroll,kn=we(ve,["flattenColumns","onColumnResize","getRowKey","prefixCls","expandedKeys","childrenColumnName","emptyNode","scrollX"]),Gn=kn.flattenColumns,Un=kn.onColumnResize,cr=kn.getRowKey,sr=kn.expandedKeys,wr=kn.prefixCls,Ar=kn.childrenColumnName,Cr=kn.emptyNode,ta=kn.scrollX,Yr=we(Yi),Xr=Yr.scrollY,Aa=Yr.listItemHeight,ha=ge.useRef(),Ha=Vn(dn,Ar,sr,cr),Oa=ge.useMemo(function(){var ri=0;return Gn.map(function(Ci){var ii=Ci.width,Va=Ci.key;return ri+=ii,[Va,ii,ri]})},[Gn]),Wa=ge.useMemo(function(){return Oa.map(function(ri){return ri[2]})},[Oa]);ge.useEffect(function(){Oa.forEach(function(ri){var Ci=(0,Fe.Z)(ri,2),ii=Ci[0],Va=Ci[1];Un(ii,Va)})},[Oa]),ge.useImperativeHandle(Wt,function(){var ri={};return Object.defineProperty(ri,"scrollLeft",{get:function(){var ii;return((ii=ha.current)===null||ii===void 0?void 0:ii.getScrollInfo().x)||0},set:function(ii){var Va;(Va=ha.current)===null||Va===void 0||Va.scrollTo({left:ii})}}),ri});var Fi=function(Ci,ii){var Va,Za=(Va=Ha[ii])===null||Va===void 0?void 0:Va.record,_i=Ci.onCell;if(_i){var vo,Ji=_i(Za,ii);return(vo=Ji==null?void 0:Ji.rowSpan)!==null&&vo!==void 0?vo:1}return 1},fi=function(Ci){var ii=Ci.start,Va=Ci.end,Za=Ci.getSize,_i=Ci.offsetY;if(Va<0)return null;for(var vo=Gn.filter(function(hn){return Fi(hn,ii)===0}),Ji=ii,yi=function(gn){if(vo=vo.filter(function(cn){return Fi(cn,gn)===0}),!vo.length)return Ji=gn,"break"},Ve=ii;Ve>=0;Ve-=1){var et=yi(Ve);if(et==="break")break}for(var it=Gn.filter(function(hn){return Fi(hn,Va)!==1}),pt=Va,Mt=function(gn){if(it=it.filter(function(cn){return Fi(cn,gn)!==1}),!it.length)return pt=Math.max(gn-1,Va),"break"},Tt=Va;Tt1})&&kt.push(gn)},Vt=Ji;Vt<=pt;Vt+=1)var un=en(Vt);var Tn=kt.map(function(hn){var gn=Ha[hn],cn=cr(gn.record,hn),bn=function(Qn){var ir=hn+Qn-1,xr=cr(Ha[ir].record,ir),ia=Za(cn,xr);return ia.bottom-ia.top},Wn=Za(cn);return ge.createElement(Ro,{key:hn,data:gn,rowKey:cn,index:hn,style:{top:-_i+Wn.top},extra:!0,getHeight:bn})});return Tn},bi=ge.useMemo(function(){return{columnsOffset:Wa}},[Wa]),Oi="".concat(wr,"-tbody"),no;return Ha.length?no=ge.createElement(Ui.Z,{fullHeight:!1,ref:ha,className:Qe()(Oi,"".concat(Oi,"-virtual")),height:Xr,itemHeight:Aa||24,data:Ha,itemKey:function(Ci){return cr(Ci.record)},scrollWidth:ta,onVirtualScroll:function(Ci){var ii=Ci.x;Sn({scrollLeft:ii})},extraRender:fi},function(ri,Ci,ii){var Va=cr(ri.record,Ci);return ge.createElement(Ro,(0,pe.Z)({data:ri,rowKey:Va,index:Ci},ii))}):no=ge.createElement("div",{className:Qe()("".concat(wr,"-placeholder"))},ge.createElement(vn,{component:"div",prefixCls:wr},Cr)),ge.createElement(Zr.Provider,{value:bi},no)}),Ts=he(Lo),Bs=Ts,zr=function(Wt,dn){var Sn=dn.ref,kn=dn.onScroll;return ge.createElement(Bs,{ref:Sn,data:Wt,onScroll:kn})},Ir=100;function Vr(Rt){var Wt=Rt.columns,dn=Rt.scroll,Sn=Rt.prefixCls,kn=Sn===void 0?ui:Sn,Gn=Rt.className,Un=Rt.listItemHeight,cr=dn||{},sr=cr.x,wr=cr.y;typeof sr!="number"&&(sr=((Wt||[]).length+1)*Ir),typeof wr!="number"&&(wr=500);var Ar=ge.useMemo(function(){return{scrollY:wr,listItemHeight:Un}},[wr,Un]);return ge.createElement(Yi.Provider,{value:Ar},ge.createElement(Fa,(0,pe.Z)({},Rt,{className:Qe()(Gn,"".concat(kn,"-virtual")),scroll:(0,ze.Z)((0,ze.Z)({},dn),{},{x:sr}),components:{body:zr},columns:Wt,internalHooks:He,tailor:!0})))}function Na(Rt){return de(Vr,Rt)}var ka=Na(),Ai=null;function va(Rt){return null}var Ri=va;function pi(Rt){return null}var xo=pi,lo=Ie(2738),Bi=Ie(68031),ho=Ie(36355),po=Ie(93891),ds=Ie(19716),Fo=Ie(8628),fs=Ie(31724),Gs=Ie(58421),Jr=Ie(71418),ya=Ie(88088);function za(Rt){return function(dn){let{prefixCls:Sn,onExpand:kn,record:Gn,expanded:Un,expandable:cr}=dn;const sr=`${Sn}-row-expand-icon`;return ge.createElement("button",{type:"button",onClick:wr=>{kn(Gn,wr),wr.stopPropagation()},className:Qe()(sr,{[`${sr}-spaced`]:!cr,[`${sr}-expanded`]:cr&&Un,[`${sr}-collapsed`]:cr&&!Un}),"aria-label":Un?Rt.collapse:Rt.expand,"aria-expanded":Un})}}var Ga=za;function Hi(Rt,Wt){return"key"in Rt&&Rt.key!==void 0&&Rt.key!==null?Rt.key:Rt.dataIndex?Array.isArray(Rt.dataIndex)?Rt.dataIndex.join("."):Rt.dataIndex:Wt}function Io(Rt,Wt){return Wt?`${Wt}-${Rt}`:`${Rt}`}function us(Rt,Wt){return typeof Rt=="function"?Rt(Wt):Rt}function hs(Rt,Wt){const dn=us(Rt,Wt);return Object.prototype.toString.call(dn)==="[object Object]"?"":dn}var Ws={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M349 838c0 17.7 14.2 32 31.8 32h262.4c17.6 0 31.8-14.3 31.8-32V642H349v196zm531.1-684H143.9c-24.5 0-39.8 26.7-27.5 48l221.3 376h348.8l221.3-376c12.1-21.3-3.2-48-27.7-48z"}}]},name:"filter",theme:"filled"},js=Ws,zl=Ie(7657),al=function(Wt,dn){return ge.createElement(zl.Z,(0,pe.Z)({},Wt,{ref:dn,icon:js}))},yo=ge.forwardRef(al),ko=yo,gs=Ie(56762);function Po(Rt){const Wt=ge.useRef(Rt),dn=(0,gs.Z)();return[()=>Wt.current,Sn=>{Wt.current=Sn,dn()}]}var is=Ie(3113),Hs=Ie(24905),Cs=Ie(38854),Ou=Ie(64165),Pu=Ie(20834),id=Ie(40875),Cf=Ie(5112),od=Ie(17574),Lu=Ie(47472),Kd=Ie(92832);function Zd(Rt){let{value:Wt,onChange:dn,filterSearch:Sn,tablePrefixCls:kn,locale:Gn}=Rt;return Sn?ge.createElement("div",{className:`${kn}-filter-dropdown-search`},ge.createElement(Kd.default,{prefix:ge.createElement(Lu.Z,null),placeholder:Gn.filterSearchPlaceholder,onChange:dn,value:Wt,htmlSize:1,className:`${kn}-filter-dropdown-search-input`})):null}var kc=Zd,Pd=Ie(10228);const Vf=Rt=>{const{keyCode:Wt}=Rt;Wt===Pd.Z.ENTER&&Rt.stopPropagation()};var Qd=ge.forwardRef((Rt,Wt)=>ge.createElement("div",{className:Rt.className,onClick:dn=>dn.stopPropagation(),onKeyDown:Vf,ref:Wt},Rt.children));function _c(Rt){let Wt=[];return(Rt||[]).forEach(dn=>{let{value:Sn,children:kn}=dn;Wt.push(Sn),kn&&(Wt=[].concat((0,jr.Z)(Wt),(0,jr.Z)(_c(kn))))}),Wt}function ac(Rt){return Rt.some(Wt=>{let{children:dn}=Wt;return dn})}function Pf(Rt,Wt){return typeof Wt=="string"||typeof Wt=="number"?Wt==null?void 0:Wt.toString().toLowerCase().includes(Rt.trim().toLowerCase()):!1}function Bu(Rt){let{filters:Wt,prefixCls:dn,filteredKeys:Sn,filterMultiple:kn,searchValue:Gn,filterSearch:Un}=Rt;return Wt.map((cr,sr)=>{const wr=String(cr.value);if(cr.children)return{key:wr||sr,label:cr.text,popupClassName:`${dn}-dropdown-submenu`,children:Bu({filters:cr.children,prefixCls:dn,filteredKeys:Sn,filterMultiple:kn,searchValue:Gn,filterSearch:Un})};const Ar=kn?Hs.default:Cf.ZP,Cr={key:cr.value!==void 0?wr:sr,label:ge.createElement(ge.Fragment,null,ge.createElement(Ar,{checked:Sn.includes(wr)}),ge.createElement("span",null,cr.text))};return Gn.trim()?typeof Un=="function"?Un(Gn,cr)?Cr:null:Pf(Gn,cr.text)?Cr:null:Cr})}function Gg(Rt){var Wt,dn;const{tablePrefixCls:Sn,prefixCls:kn,column:Gn,dropdownPrefixCls:Un,columnKey:cr,filterMultiple:sr,filterMode:wr="menu",filterSearch:Ar=!1,filterState:Cr,triggerFilter:ta,locale:Yr,children:Xr,getPopupContainer:Aa}=Rt,{filterDropdownOpen:ha,onFilterDropdownOpenChange:Ha,filterResetToDefaultFilteredValue:Oa,defaultFilteredValue:Wa,filterDropdownVisible:Fi,onFilterDropdownVisibleChange:fi}=Gn,[bi,Oi]=ge.useState(!1),no=!!(Cr&&(!((Wt=Cr.filteredKeys)===null||Wt===void 0)&&Wt.length||Cr.forceFiltered)),ri=_n=>{Oi(_n),Ha==null||Ha(_n),fi==null||fi(_n)},Ci=(dn=ha!=null?ha:Fi)!==null&&dn!==void 0?dn:bi,ii=Cr==null?void 0:Cr.filteredKeys,[Va,Za]=Po(ii||[]),_i=_n=>{let{selectedKeys:Qn}=_n;Za(Qn)},vo=(_n,Qn)=>{let{node:ir,checked:xr}=Qn;_i(sr?{selectedKeys:_n}:{selectedKeys:xr&&ir.key?[ir.key]:[]})};ge.useEffect(()=>{bi&&_i({selectedKeys:ii||[]})},[ii]);const[Ji,yi]=ge.useState([]),Ve=_n=>{yi(_n)},[et,it]=ge.useState(""),pt=_n=>{const{value:Qn}=_n.target;it(Qn)};ge.useEffect(()=>{bi||it("")},[bi]);const Mt=_n=>{const Qn=_n&&_n.length?_n:null;if(Qn===null&&(!Cr||!Cr.filteredKeys)||(0,Pe.Z)(Qn,Cr==null?void 0:Cr.filteredKeys,!0))return null;ta({column:Gn,key:cr,filteredKeys:Qn})},Tt=()=>{ri(!1),Mt(Va())},jt=function(){let{confirm:_n,closeDropdown:Qn}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{confirm:!1,closeDropdown:!1};_n&&Mt([]),Qn&&ri(!1),it(""),Za(Oa?(Wa||[]).map(ir=>String(ir)):[])},kt=function(){let{closeDropdown:_n}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{closeDropdown:!0};_n&&ri(!1),Mt(Va())},en=_n=>{_n&&ii!==void 0&&Za(ii||[]),ri(_n),!_n&&!Gn.filterDropdown&&Tt()},Vt=Qe()({[`${Un}-menu-without-submenu`]:!ac(Gn.filters||[])}),un=_n=>{if(_n.target.checked){const Qn=_c(Gn==null?void 0:Gn.filters).map(ir=>String(ir));Za(Qn)}else Za([])},Tn=_n=>{let{filters:Qn}=_n;return(Qn||[]).map((ir,xr)=>{const ia=String(ir.value),ea={title:ir.text,key:ir.value!==void 0?ia:xr};return ir.children&&(ea.children=Tn({filters:ir.children})),ea})},hn=_n=>{var Qn;return Object.assign(Object.assign({},_n),{text:_n.title,value:_n.key,children:((Qn=_n.children)===null||Qn===void 0?void 0:Qn.map(ir=>hn(ir)))||[]})};let gn;if(typeof Gn.filterDropdown=="function")gn=Gn.filterDropdown({prefixCls:`${Un}-custom`,setSelectedKeys:_n=>_i({selectedKeys:_n}),selectedKeys:Va(),confirm:kt,clearFilters:jt,filters:Gn.filters,visible:Ci,close:()=>{ri(!1)}});else if(Gn.filterDropdown)gn=Gn.filterDropdown;else{const _n=Va()||[],Qn=()=>(Gn.filters||[]).length===0?ge.createElement(Ou.Z,{image:Ou.Z.PRESENTED_IMAGE_SIMPLE,description:Yr.filterEmptyText,imageStyle:{height:24},style:{margin:0,padding:"16px 0"}}):wr==="tree"?ge.createElement(ge.Fragment,null,ge.createElement(kc,{filterSearch:Ar,value:et,onChange:pt,tablePrefixCls:Sn,locale:Yr}),ge.createElement("div",{className:`${Sn}-filter-dropdown-tree`},sr?ge.createElement(Hs.default,{checked:_n.length===_c(Gn.filters).length,indeterminate:_n.length>0&&_n.length<_c(Gn.filters).length,className:`${Sn}-filter-dropdown-checkall`,onChange:un},Yr.filterCheckall):null,ge.createElement(od.default,{checkable:!0,selectable:!1,blockNode:!0,multiple:sr,checkStrictly:!sr,className:`${Un}-menu`,onCheck:vo,checkedKeys:_n,selectedKeys:_n,showIcon:!1,treeData:Tn({filters:Gn.filters}),autoExpandParent:!0,defaultExpandAll:!0,filterTreeNode:et.trim()?xr=>typeof Ar=="function"?Ar(et,hn(xr)):Pf(et,xr.title):void 0}))):ge.createElement(ge.Fragment,null,ge.createElement(kc,{filterSearch:Ar,value:et,onChange:pt,tablePrefixCls:Sn,locale:Yr}),ge.createElement(Pu.default,{selectable:!0,multiple:sr,prefixCls:`${Un}-menu`,className:Vt,onSelect:_i,onDeselect:_i,selectedKeys:_n,getPopupContainer:Aa,openKeys:Ji,onOpenChange:Ve,items:Bu({filters:Gn.filters||[],filterSearch:Ar,prefixCls:kn,filteredKeys:Va(),filterMultiple:sr,searchValue:et})})),ir=()=>Oa?(0,Pe.Z)((Wa||[]).map(xr=>String(xr)),_n,!0):_n.length===0;gn=ge.createElement(ge.Fragment,null,Qn(),ge.createElement("div",{className:`${kn}-dropdown-btns`},ge.createElement(is.ZP,{type:"link",size:"small",disabled:ir(),onClick:()=>jt()},Yr.filterReset),ge.createElement(is.ZP,{type:"primary",size:"small",onClick:Tt},Yr.filterConfirm)))}Gn.filterDropdown&&(gn=ge.createElement(id.J,{selectable:void 0},gn));const cn=()=>ge.createElement(Qd,{className:`${kn}-dropdown`},gn);let bn;typeof Gn.filterIcon=="function"?bn=Gn.filterIcon(no):Gn.filterIcon?bn=Gn.filterIcon:bn=ge.createElement(ko,null);const{direction:Wn}=ge.useContext(ho.E_);return ge.createElement("div",{className:`${kn}-column`},ge.createElement("span",{className:`${Sn}-column-title`},Xr),ge.createElement(Cs.Z,{dropdownRender:cn,trigger:["click"],open:Ci,onOpenChange:en,getPopupContainer:Aa,placement:Wn==="rtl"?"bottomLeft":"bottomRight"},ge.createElement("span",{role:"button",tabIndex:-1,className:Qe()(`${kn}-trigger`,{active:no}),onClick:_n=>{_n.stopPropagation()}},bn)))}var Yd=Gg;function sd(Rt,Wt,dn){let Sn=[];return(Rt||[]).forEach((kn,Gn)=>{var Un;const cr=Io(Gn,dn);if(kn.filters||"filterDropdown"in kn||"onFilter"in kn)if("filteredValue"in kn){let sr=kn.filteredValue;"filterDropdown"in kn||(sr=(Un=sr==null?void 0:sr.map(String))!==null&&Un!==void 0?Un:sr),Sn.push({column:kn,key:Hi(kn,cr),filteredKeys:sr,forceFiltered:kn.filtered})}else Sn.push({column:kn,key:Hi(kn,cr),filteredKeys:Wt&&kn.defaultFilteredValue?kn.defaultFilteredValue:void 0,forceFiltered:kn.filtered});"children"in kn&&(Sn=[].concat((0,jr.Z)(Sn),(0,jr.Z)(sd(kn.children,Wt,cr))))}),Sn}function Xd(Rt,Wt,dn,Sn,kn,Gn,Un,cr){return dn.map((sr,wr)=>{const Ar=Io(wr,cr),{filterMultiple:Cr=!0,filterMode:ta,filterSearch:Yr}=sr;let Xr=sr;if(Xr.filters||Xr.filterDropdown){const Aa=Hi(Xr,Ar),ha=Sn.find(Ha=>{let{key:Oa}=Ha;return Aa===Oa});Xr=Object.assign(Object.assign({},Xr),{title:Ha=>ge.createElement(Yd,{tablePrefixCls:Rt,prefixCls:`${Rt}-filter`,dropdownPrefixCls:Wt,column:Xr,columnKey:Aa,filterState:ha,filterMultiple:Cr,filterMode:ta,filterSearch:Yr,triggerFilter:Gn,locale:kn,getPopupContainer:Un},us(sr.title,Ha))})}return"children"in Xr&&(Xr=Object.assign(Object.assign({},Xr),{children:Xd(Rt,Wt,Xr.children,Sn,kn,Gn,Un,Ar)})),Xr})}function Wo(Rt){const Wt={};return Rt.forEach(dn=>{let{key:Sn,filteredKeys:kn,column:Gn}=dn;const{filters:Un,filterDropdown:cr}=Gn;if(cr)Wt[Sn]=kn||null;else if(Array.isArray(kn)){const sr=_c(Un);Wt[Sn]=sr.filter(wr=>kn.includes(String(wr)))}else Wt[Sn]=null}),Wt}function wf(Rt,Wt){return Wt.reduce((dn,Sn)=>{const{column:{onFilter:kn,filters:Gn},filteredKeys:Un}=Sn;return kn&&Un&&Un.length?dn.filter(cr=>Un.some(sr=>{const wr=_c(Gn),Ar=wr.findIndex(ta=>String(ta)===String(sr)),Cr=Ar!==-1?wr[Ar]:sr;return kn(Cr,cr)})):dn},Rt)}const mc=Rt=>Rt.flatMap(Wt=>"children"in Wt?[Wt].concat((0,jr.Z)(mc(Wt.children||[]))):[Wt]);function Jd(Rt){let{prefixCls:Wt,dropdownPrefixCls:dn,mergedColumns:Sn,onFilterChange:kn,getPopupContainer:Gn,locale:Un}=Rt;const cr=ge.useMemo(()=>mc(Sn||[]),[Sn]),[sr,wr]=ge.useState(()=>sd(cr,!0)),Ar=ge.useMemo(()=>{const Xr=sd(cr,!1);if(Xr.length===0)return Xr;let Aa=!0,ha=!0;if(Xr.forEach(Ha=>{let{filteredKeys:Oa}=Ha;Oa!==void 0?Aa=!1:ha=!1}),Aa){const Ha=(cr||[]).map((Oa,Wa)=>Hi(Oa,Io(Wa)));return sr.filter(Oa=>{let{key:Wa}=Oa;return Ha.includes(Wa)}).map(Oa=>{const Wa=cr[Ha.findIndex(Fi=>Fi===Oa.key)];return Object.assign(Object.assign({},Oa),{column:Object.assign(Object.assign({},Oa.column),Wa),forceFiltered:Wa.filtered})})}return Xr},[cr,sr]),Cr=ge.useMemo(()=>Wo(Ar),[Ar]),ta=Xr=>{const Aa=Ar.filter(ha=>{let{key:Ha}=ha;return Ha!==Xr.key});Aa.push(Xr),wr(Aa),kn(Wo(Aa),Aa)};return[Xr=>Xd(Wt,dn,Xr,Ar,Un,ta,Gn),Ar,Cr]}var qd=Jd;function Ll(Rt,Wt,dn){const Sn=ge.useRef({});function kn(Gn){if(!Sn.current||Sn.current.data!==Rt||Sn.current.childrenColumnName!==Wt||Sn.current.getRowKey!==dn){let cr=function(sr){sr.forEach((wr,Ar)=>{const Cr=dn(wr,Ar);Un.set(Cr,wr),wr&&typeof wr=="object"&&Wt in wr&&cr(wr[Wt]||[])})};const Un=new Map;cr(Rt),Sn.current={data:Rt,childrenColumnName:Wt,kvMap:Un,getRowKey:dn}}return Sn.current.kvMap.get(Gn)}return[kn]}var Mf=Ie(50371),Kf=function(Rt,Wt){var dn={};for(var Sn in Rt)Object.prototype.hasOwnProperty.call(Rt,Sn)&&Wt.indexOf(Sn)<0&&(dn[Sn]=Rt[Sn]);if(Rt!=null&&typeof Object.getOwnPropertySymbols=="function")for(var kn=0,Sn=Object.getOwnPropertySymbols(Rt);kn{const Gn=Rt[kn];typeof Gn!="function"&&(dn[kn]=Gn)}),dn}function $d(Rt,Wt,dn){const Sn=dn&&typeof dn=="object"?dn:{},{total:kn=0}=Sn,Gn=Kf(Sn,["total"]),[Un,cr]=(0,ge.useState)(()=>({current:"defaultCurrent"in Gn?Gn.defaultCurrent:1,pageSize:"defaultPageSize"in Gn?Gn.defaultPageSize:zc})),sr=(0,Mf.Z)(Un,Gn,{total:kn>0?kn:Rt}),wr=Math.ceil((kn||Rt)/sr.pageSize);sr.current>wr&&(sr.current=wr||1);const Ar=(ta,Yr)=>{cr({current:ta!=null?ta:1,pageSize:Yr||sr.pageSize})},Cr=(ta,Yr)=>{var Xr;dn&&((Xr=dn.onChange)===null||Xr===void 0||Xr.call(dn,ta,Yr)),Ar(ta,Yr),Wt(ta,Yr||(sr==null?void 0:sr.pageSize))};return dn===!1?[{},()=>{}]:[Object.assign(Object.assign({},sr),{onChange:Cr}),Ar]}var Xl=$d,Bo=Ie(84105),su=Ie(35654),Uc=Ie(90782),ef=Ie(71430),Zf=Ie(18929);const wu={},tf="SELECT_ALL",nf="SELECT_INVERT",Df="SELECT_NONE",Qf=[],Yf=(Rt,Wt)=>{let dn=[];return(Wt||[]).forEach(Sn=>{dn.push(Sn),Sn&&typeof Sn=="object"&&Rt in Sn&&(dn=[].concat((0,jr.Z)(dn),(0,jr.Z)(Yf(Rt,Sn[Rt]))))}),dn};var Bl=(Rt,Wt)=>{const{preserveSelectedRowKeys:dn,selectedRowKeys:Sn,defaultSelectedRowKeys:kn,getCheckboxProps:Gn,onChange:Un,onSelect:cr,onSelectAll:sr,onSelectInvert:wr,onSelectNone:Ar,onSelectMultiple:Cr,columnWidth:ta,type:Yr,selections:Xr,fixed:Aa,renderCell:ha,hideSelectAll:Ha,checkStrictly:Oa=!0}=Wt||{},{prefixCls:Wa,data:Fi,pageData:fi,getRecordByKey:bi,getRowKey:Oi,expandType:no,childrenColumnName:ri,locale:Ci,getPopupContainer:ii}=Rt,[Va,Za]=(0,Zf.Z)(Sn||kn||Qf,{value:Sn}),_i=ge.useRef(new Map),vo=(0,ge.useCallback)(hn=>{if(dn){const gn=new Map;hn.forEach(cn=>{let bn=bi(cn);!bn&&_i.current.has(cn)&&(bn=_i.current.get(cn)),gn.set(cn,bn)}),_i.current=gn}},[bi,dn]);ge.useEffect(()=>{vo(Va)},[Va]);const{keyEntities:Ji}=(0,ge.useMemo)(()=>{if(Oa)return{keyEntities:null};let hn=Fi;if(dn){const gn=new Set(Fi.map((bn,Wn)=>Oi(bn,Wn))),cn=Array.from(_i.current).reduce((bn,Wn)=>{let[_n,Qn]=Wn;return gn.has(_n)?bn:bn.concat(Qn)},[]);hn=[].concat((0,jr.Z)(hn),(0,jr.Z)(cn))}return(0,ef.I8)(hn,{externalGetKey:Oi,childrenPropName:ri})},[Fi,Oi,Oa,ri,dn]),yi=(0,ge.useMemo)(()=>Yf(ri,fi),[ri,fi]),Ve=(0,ge.useMemo)(()=>{const hn=new Map;return yi.forEach((gn,cn)=>{const bn=Oi(gn,cn),Wn=(Gn?Gn(gn):null)||{};hn.set(bn,Wn)}),hn},[yi,Oi,Gn]),et=(0,ge.useCallback)(hn=>{var gn;return!!(!((gn=Ve.get(Oi(hn)))===null||gn===void 0)&&gn.disabled)},[Ve,Oi]),[it,pt]=(0,ge.useMemo)(()=>{if(Oa)return[Va||[],[]];const{checkedKeys:hn,halfCheckedKeys:gn}=(0,Uc.S)(Va,!0,Ji,et);return[hn||[],gn]},[Va,Oa,Ji,et]),Mt=(0,ge.useMemo)(()=>{const hn=Yr==="radio"?it.slice(0,1):it;return new Set(hn)},[it,Yr]),Tt=(0,ge.useMemo)(()=>Yr==="radio"?new Set:new Set(pt),[pt,Yr]),[jt,kt]=(0,ge.useState)(null);ge.useEffect(()=>{Wt||Za(Qf)},[!!Wt]);const en=(0,ge.useCallback)((hn,gn)=>{let cn,bn;vo(hn),dn?(cn=hn,bn=hn.map(Wn=>_i.current.get(Wn))):(cn=[],bn=[],hn.forEach(Wn=>{const _n=bi(Wn);_n!==void 0&&(cn.push(Wn),bn.push(_n))})),Za(cn),Un==null||Un(cn,bn,{type:gn})},[Za,bi,Un,dn]),Vt=(0,ge.useCallback)((hn,gn,cn,bn)=>{if(cr){const Wn=cn.map(_n=>bi(_n));cr(bi(hn),gn,Wn,bn)}en(cn,"single")},[cr,bi,en]),un=(0,ge.useMemo)(()=>!Xr||Ha?null:(Xr===!0?[tf,nf,Df]:Xr).map(gn=>gn===tf?{key:"all",text:Ci.selectionAll,onSelect(){en(Fi.map((cn,bn)=>Oi(cn,bn)).filter(cn=>{const bn=Ve.get(cn);return!(bn!=null&&bn.disabled)||Mt.has(cn)}),"all")}}:gn===nf?{key:"invert",text:Ci.selectInvert,onSelect(){const cn=new Set(Mt);fi.forEach((Wn,_n)=>{const Qn=Oi(Wn,_n),ir=Ve.get(Qn);ir!=null&&ir.disabled||(cn.has(Qn)?cn.delete(Qn):cn.add(Qn))});const bn=Array.from(cn);wr&&wr(bn),en(bn,"invert")}}:gn===Df?{key:"none",text:Ci.selectNone,onSelect(){Ar==null||Ar(),en(Array.from(Mt).filter(cn=>{const bn=Ve.get(cn);return bn==null?void 0:bn.disabled}),"none")}}:gn).map(gn=>Object.assign(Object.assign({},gn),{onSelect:function(){for(var cn,bn,Wn=arguments.length,_n=new Array(Wn),Qn=0;Qn{var gn;if(!Wt)return hn.filter(ar=>ar!==wu);let cn=(0,jr.Z)(hn);const bn=new Set(Mt),Wn=yi.map(Oi).filter(ar=>!Ve.get(ar).disabled),_n=Wn.every(ar=>bn.has(ar)),Qn=Wn.some(ar=>bn.has(ar)),ir=()=>{const ar=[];_n?Wn.forEach(sa=>{bn.delete(sa),ar.push(sa)}):Wn.forEach(sa=>{bn.has(sa)||(bn.add(sa),ar.push(sa))});const Mr=Array.from(bn);sr==null||sr(!_n,Mr.map(sa=>bi(sa)),ar.map(sa=>bi(sa))),en(Mr,"all"),kt(null)};let xr;if(Yr!=="radio"){let ar;if(un){const la={getPopupContainer:ii,items:un.map((na,vi)=>{const{key:mi,text:_r,onSelect:Zi}=na;return{key:mi!=null?mi:vi,onClick:()=>{Zi==null||Zi(Wn)},label:_r}})};ar=ge.createElement("div",{className:`${Wa}-selection-extra`},ge.createElement(Cs.Z,{menu:la,getPopupContainer:ii},ge.createElement("span",null,ge.createElement(Bo.Z,null))))}const Mr=yi.map((la,na)=>{const vi=Oi(la,na),mi=Ve.get(vi)||{};return Object.assign({checked:bn.has(vi)},mi)}).filter(la=>{let{disabled:na}=la;return na}),sa=!!Mr.length&&Mr.length===yi.length,da=sa&&Mr.every(la=>{let{checked:na}=la;return na}),Ra=sa&&Mr.some(la=>{let{checked:na}=la;return na});xr=!Ha&&ge.createElement("div",{className:`${Wa}-selection`},ge.createElement(Hs.default,{checked:sa?da:!!yi.length&&_n,indeterminate:sa?!da&&Ra:!_n&&Qn,onChange:ir,disabled:yi.length===0||sa,"aria-label":ar?"Custom selection":"Select all",skipGroup:!0}),ar)}let ia;Yr==="radio"?ia=(ar,Mr,sa)=>{const da=Oi(Mr,sa),Ra=bn.has(da);return{node:ge.createElement(Cf.ZP,Object.assign({},Ve.get(da),{checked:Ra,onClick:la=>la.stopPropagation(),onChange:la=>{bn.has(da)||Vt(da,!0,[da],la.nativeEvent)}})),checked:Ra}}:ia=(ar,Mr,sa)=>{var da;const Ra=Oi(Mr,sa),la=bn.has(Ra),na=Tt.has(Ra),vi=Ve.get(Ra);let mi;return no==="nest"?mi=na:mi=(da=vi==null?void 0:vi.indeterminate)!==null&&da!==void 0?da:na,{node:ge.createElement(Hs.default,Object.assign({},vi,{indeterminate:mi,checked:la,skipGroup:!0,onClick:_r=>_r.stopPropagation(),onChange:_r=>{let{nativeEvent:Zi}=_r;const{shiftKey:qi}=Zi;let $o=-1,cs=-1;if(qi&&Oa){const Rs=new Set([jt,Ra]);Wn.some((gl,qs)=>{if(Rs.has(gl))if($o===-1)$o=qs;else return cs=qs,!0;return!1})}if(cs!==-1&&$o!==cs&&Oa){const Rs=Wn.slice($o,cs+1),gl=[];la?Rs.forEach(Zs=>{bn.has(Zs)&&(gl.push(Zs),bn.delete(Zs))}):Rs.forEach(Zs=>{bn.has(Zs)||(gl.push(Zs),bn.add(Zs))});const qs=Array.from(bn);Cr==null||Cr(!la,qs.map(Zs=>bi(Zs)),gl.map(Zs=>bi(Zs))),en(qs,"multiple")}else{const Rs=it;if(Oa){const gl=la?(0,su._5)(Rs,Ra):(0,su.L0)(Rs,Ra);Vt(Ra,!la,gl,Zi)}else{const gl=(0,Uc.S)([].concat((0,jr.Z)(Rs),[Ra]),!0,Ji,et),{checkedKeys:qs,halfCheckedKeys:Zs}=gl;let Ec=qs;if(la){const ud=new Set(qs);ud.delete(Ra),Ec=(0,Uc.S)(Array.from(ud),{checked:!1,halfCheckedKeys:Zs},Ji,et).checkedKeys}Vt(Ra,!la,Ec,Zi)}}kt(la?null:Ra)}})),checked:la}};const ea=(ar,Mr,sa)=>{const{node:da,checked:Ra}=ia(ar,Mr,sa);return ha?ha(Ra,Mr,sa,da):da};if(!cn.includes(wu))if(cn.findIndex(ar=>{var Mr;return((Mr=ar[Ya])===null||Mr===void 0?void 0:Mr.columnType)==="EXPAND_COLUMN"})===0){const[ar,...Mr]=cn;cn=[ar,wu].concat((0,jr.Z)(Mr))}else cn=[wu].concat((0,jr.Z)(cn));const Xa=cn.indexOf(wu);cn=cn.filter((ar,Mr)=>ar!==wu||Mr===Xa);const xa=cn[Xa-1],Pa=cn[Xa+1];let Pr=Aa;Pr===void 0&&((Pa==null?void 0:Pa.fixed)!==void 0?Pr=Pa.fixed:(xa==null?void 0:xa.fixed)!==void 0&&(Pr=xa.fixed)),Pr&&xa&&((gn=xa[Ya])===null||gn===void 0?void 0:gn.columnType)==="EXPAND_COLUMN"&&xa.fixed===void 0&&(xa.fixed=Pr);const oa=Qe()(`${Wa}-selection-col`,{[`${Wa}-selection-col-with-dropdown`]:Xr&&Yr==="checkbox"}),hi={fixed:Pr,width:ta,className:`${Wa}-selection-column`,title:Wt.columnTitle||xr,render:ea,onCell:Wt.onCell,[Ya]:{className:oa}};return cn.map(ar=>ar===wu?hi:ar)},[Oi,yi,Wt,it,Mt,Tt,ta,un,no,jt,Ve,Cr,Vt,et]),Mt]},Xf=Ie(89489),Ul=Ie(59477),Qr=Ie(6848);const rf="ascend",pc="descend";function lu(Rt){return typeof Rt.sorter=="object"&&typeof Rt.sorter.multiple=="number"?Rt.sorter.multiple:!1}function yc(Rt){return typeof Rt=="function"?Rt:Rt&&typeof Rt=="object"&&Rt.compare?Rt.compare:!1}function uu(Rt,Wt){return Wt?Rt[Rt.indexOf(Wt)+1]:Rt[0]}function ld(Rt,Wt,dn){let Sn=[];function kn(Gn,Un){Sn.push({column:Gn,key:Hi(Gn,Un),multiplePriority:lu(Gn),sortOrder:Gn.sortOrder})}return(Rt||[]).forEach((Gn,Un)=>{const cr=Io(Un,dn);Gn.children?("sortOrder"in Gn&&kn(Gn,cr),Sn=[].concat((0,jr.Z)(Sn),(0,jr.Z)(ld(Gn.children,Wt,cr)))):Gn.sorter&&("sortOrder"in Gn?kn(Gn,cr):Wt&&Gn.defaultSortOrder&&Sn.push({column:Gn,key:Hi(Gn,cr),multiplePriority:lu(Gn),sortOrder:Gn.defaultSortOrder}))}),Sn}function Wc(Rt,Wt,dn,Sn,kn,Gn,Un,cr){return(Wt||[]).map((sr,wr)=>{const Ar=Io(wr,cr);let Cr=sr;if(Cr.sorter){const ta=Cr.sortDirections||kn,Yr=Cr.showSorterTooltip===void 0?Un:Cr.showSorterTooltip,Xr=Hi(Cr,Ar),Aa=dn.find(no=>{let{key:ri}=no;return ri===Xr}),ha=Aa?Aa.sortOrder:null,Ha=uu(ta,ha);let Oa;if(sr.sortIcon)Oa=sr.sortIcon({sortOrder:ha});else{const no=ta.includes(rf)&&ge.createElement(Ul.Z,{className:Qe()(`${Rt}-column-sorter-up`,{active:ha===rf})}),ri=ta.includes(pc)&&ge.createElement(Xf.Z,{className:Qe()(`${Rt}-column-sorter-down`,{active:ha===pc})});Oa=ge.createElement("span",{className:Qe()(`${Rt}-column-sorter`,{[`${Rt}-column-sorter-full`]:!!(no&&ri)})},ge.createElement("span",{className:`${Rt}-column-sorter-inner`,"aria-hidden":"true"},no,ri))}const{cancelSort:Wa,triggerAsc:Fi,triggerDesc:fi}=Gn||{};let bi=Wa;Ha===pc?bi=fi:Ha===rf&&(bi=Fi);const Oi=typeof Yr=="object"?Yr:{title:bi};Cr=Object.assign(Object.assign({},Cr),{className:Qe()(Cr.className,{[`${Rt}-column-sort`]:ha}),title:no=>{const ri=ge.createElement("div",{className:`${Rt}-column-sorters`},ge.createElement("span",{className:`${Rt}-column-title`},us(sr.title,no)),Oa);return Yr?ge.createElement(Qr.Z,Object.assign({},Oi),ri):ri},onHeaderCell:no=>{const ri=sr.onHeaderCell&&sr.onHeaderCell(no)||{},Ci=ri.onClick,ii=ri.onKeyDown;ri.onClick=_i=>{Sn({column:sr,key:Xr,sortOrder:Ha,multiplePriority:lu(sr)}),Ci==null||Ci(_i)},ri.onKeyDown=_i=>{_i.keyCode===Pd.Z.ENTER&&(Sn({column:sr,key:Xr,sortOrder:Ha,multiplePriority:lu(sr)}),ii==null||ii(_i))};const Va=hs(sr.title,{}),Za=Va==null?void 0:Va.toString();return ha?ri["aria-sort"]=ha==="ascend"?"ascending":"descending":ri["aria-label"]=Za||"",ri.className=Qe()(ri.className,`${Rt}-column-has-sorters`),ri.tabIndex=0,sr.ellipsis&&(ri.title=(Va!=null?Va:"").toString()),ri}})}return"children"in Cr&&(Cr=Object.assign(Object.assign({},Cr),{children:Wc(Rt,Cr.children,dn,Sn,kn,Gn,Un,Ar)})),Cr})}function Jl(Rt){const{column:Wt,sortOrder:dn}=Rt;return{column:Wt,order:dn,field:Wt.dataIndex,columnKey:Wt.key}}function Jf(Rt){const Wt=Rt.filter(dn=>{let{sortOrder:Sn}=dn;return Sn}).map(Jl);return Wt.length===0&&Rt.length?Object.assign(Object.assign({},Jl(Rt[Rt.length-1])),{column:void 0}):Wt.length<=1?Wt[0]||{}:Wt}function Wl(Rt,Wt,dn){const Sn=Wt.slice().sort((Un,cr)=>cr.multiplePriority-Un.multiplePriority),kn=Rt.slice(),Gn=Sn.filter(Un=>{let{column:{sorter:cr},sortOrder:sr}=Un;return yc(cr)&&sr});return Gn.length?kn.sort((Un,cr)=>{for(let sr=0;sr{const cr=Un[dn];return cr?Object.assign(Object.assign({},Un),{[dn]:Wl(cr,Wt,dn)}):Un}):kn}function qf(Rt){let{prefixCls:Wt,mergedColumns:dn,onSorterChange:Sn,sortDirections:kn,tableLocale:Gn,showSorterTooltip:Un}=Rt;const[cr,sr]=ge.useState(ld(dn,!0)),wr=ge.useMemo(()=>{let Xr=!0;const Aa=ld(dn,!1);if(!Aa.length)return cr;const ha=[];function Ha(Wa){Xr?ha.push(Wa):ha.push(Object.assign(Object.assign({},Wa),{sortOrder:null}))}let Oa=null;return Aa.forEach(Wa=>{Oa===null?(Ha(Wa),Wa.sortOrder&&(Wa.multiplePriority===!1?Xr=!1:Oa=!0)):(Oa&&Wa.multiplePriority!==!1||(Xr=!1),Ha(Wa))}),ha},[dn,cr]),Ar=ge.useMemo(()=>{const Xr=wr.map(Aa=>{let{column:ha,sortOrder:Ha}=Aa;return{column:ha,order:Ha}});return{sortColumns:Xr,sortColumn:Xr[0]&&Xr[0].column,sortOrder:Xr[0]&&Xr[0].order}},[wr]);function Cr(Xr){let Aa;Xr.multiplePriority===!1||!wr.length||wr[0].multiplePriority===!1?Aa=[Xr]:Aa=[].concat((0,jr.Z)(wr.filter(ha=>{let{key:Ha}=ha;return Ha!==Xr.key})),[Xr]),sr(Aa),Sn(Jf(Aa),Aa)}return[Xr=>Wc(Wt,Xr,wr,Cr,kn,Gn,Un),wr,Ar,()=>Jf(wr)]}function _h(Rt,Wt){return Rt.map(dn=>{const Sn=Object.assign({},dn);return Sn.title=us(dn.title,Wt),"children"in Sn&&(Sn.children=_h(Sn.children,Wt)),Sn})}function zh(Rt){return[ge.useCallback(dn=>_h(dn,Rt),[Rt])]}var $f=qa((Rt,Wt)=>{const{_renderTimes:dn}=Rt,{_renderTimes:Sn}=Wt;return dn!==Sn}),jc=Na((Rt,Wt)=>{const{_renderTimes:dn}=Rt,{_renderTimes:Sn}=Wt;return dn!==Sn}),Os=Ie(64993),Nu=Ie(17313),Ru=Ie(83116),Uh=Ie(37613),Nt=Rt=>{const{componentCls:Wt}=Rt,dn=`${Rt.lineWidth}px ${Rt.lineType} ${Rt.tableBorderColor}`,Sn=(kn,Gn,Un)=>({[`&${Wt}-${kn}`]:{[`> ${Wt}-container`]:{[`> ${Wt}-content, > ${Wt}-body`]:{"\n > table > tbody > tr > th,\n > table > tbody > tr > td\n ":{[`> ${Wt}-expanded-row-fixed`]:{margin:`-${Gn}px -${Un+Rt.lineWidth}px`}}}}}});return{[`${Wt}-wrapper`]:{[`${Wt}${Wt}-bordered`]:Object.assign(Object.assign(Object.assign({[`> ${Wt}-title`]:{border:dn,borderBottom:0},[`> ${Wt}-container`]:{borderInlineStart:dn,borderTop:dn,[` > ${Wt}-content, > ${Wt}-header, > ${Wt}-body, > ${Wt}-summary `]:{"> table":{"\n > thead > tr > th,\n > thead > tr > td,\n > tbody > tr > th,\n > tbody > tr > td,\n > tfoot > tr > th,\n > tfoot > tr > td\n ":{borderInlineEnd:dn},"> thead":{"> tr:not(:last-child) > th":{borderBottom:dn},"> tr > th::before":{backgroundColor:"transparent !important"}},"\n > thead > tr,\n > tbody > tr,\n > tfoot > tr\n ":{[`> ${Wt}-cell-fix-right-first::after`]:{borderInlineEnd:dn}},"\n > tbody > tr > th,\n > tbody > tr > td\n ":{[`> ${Wt}-expanded-row-fixed`]:{margin:`-${Rt.tablePaddingVertical}px -${Rt.tablePaddingHorizontal+Rt.lineWidth}px`,"&::after":{position:"absolute",top:0,insetInlineEnd:Rt.lineWidth,bottom:0,borderInlineEnd:dn,content:'""'}}}}}},[`&${Wt}-scroll-horizontal`]:{[`> ${Wt}-container > ${Wt}-body`]:{"> table > tbody":{[` > tr${Wt}-expanded-row, > tr${Wt}-placeholder `]:{"> th, > td":{borderInlineEnd:0}}}}}},Sn("middle",Rt.tablePaddingVerticalMiddle,Rt.tablePaddingHorizontalMiddle)),Sn("small",Rt.tablePaddingVerticalSmall,Rt.tablePaddingHorizontalSmall)),{[`> ${Wt}-footer`]:{border:dn,borderTop:0}}),[`${Wt}-cell`]:{[`${Wt}-container:first-child`]:{borderTop:0},"&-scrollbar:not([rowspan])":{boxShadow:`0 ${Rt.lineWidth}px 0 ${Rt.lineWidth}px ${Rt.tableHeaderBg}`}},[`${Wt}-bordered ${Wt}-cell-scrollbar`]:{borderInlineEnd:dn}}}},Pn=Rt=>{const{componentCls:Wt}=Rt;return{[`${Wt}-wrapper`]:{[`${Wt}-cell-ellipsis`]:Object.assign(Object.assign({},Nu.vS),{wordBreak:"keep-all",[` &${Wt}-cell-fix-left-last, &${Wt}-cell-fix-right-first `]:{overflow:"visible",[`${Wt}-cell-content`]:{display:"block",overflow:"hidden",textOverflow:"ellipsis"}},[`${Wt}-column-title`]:{overflow:"hidden",textOverflow:"ellipsis",wordBreak:"keep-all"}})}}},lr=Rt=>{const{componentCls:Wt}=Rt;return{[`${Wt}-wrapper`]:{[`${Wt}-tbody > tr${Wt}-placeholder`]:{textAlign:"center",color:Rt.colorTextDisabled,"\n &:hover > th,\n &:hover > td,\n ":{background:Rt.colorBgContainer}}}}},or=Ie(15969),Dr=Rt=>{const{componentCls:Wt,antCls:dn,controlInteractiveSize:Sn,motionDurationSlow:kn,lineWidth:Gn,paddingXS:Un,lineType:cr,tableBorderColor:sr,tableExpandIconBg:wr,tableExpandColumnWidth:Ar,borderRadius:Cr,fontSize:ta,fontSizeSM:Yr,lineHeight:Xr,tablePaddingVertical:Aa,tablePaddingHorizontal:ha,tableExpandedRowBg:Ha,paddingXXS:Oa}=Rt,Wa=Sn/2-Gn,Fi=Wa*2+Gn*3,fi=`${Gn}px ${cr} ${sr}`,bi=Oa-Gn;return{[`${Wt}-wrapper`]:{[`${Wt}-expand-icon-col`]:{width:Ar},[`${Wt}-row-expand-icon-cell`]:{textAlign:"center",[`${Wt}-row-expand-icon`]:{display:"inline-flex",float:"none",verticalAlign:"sub"}},[`${Wt}-row-indent`]:{height:1,float:"left"},[`${Wt}-row-expand-icon`]:Object.assign(Object.assign({},(0,or.N)(Rt)),{position:"relative",float:"left",boxSizing:"border-box",width:Fi,height:Fi,padding:0,color:"inherit",lineHeight:`${Fi}px`,background:wr,border:fi,borderRadius:Cr,transform:`scale(${Sn/Fi})`,transition:`all ${kn}`,userSelect:"none","&:focus, &:hover, &:active":{borderColor:"currentcolor"},"&::before, &::after":{position:"absolute",background:"currentcolor",transition:`transform ${kn} ease-out`,content:'""'},"&::before":{top:Wa,insetInlineEnd:bi,insetInlineStart:bi,height:Gn},"&::after":{top:bi,bottom:bi,insetInlineStart:Wa,width:Gn,transform:"rotate(90deg)"},"&-collapsed::before":{transform:"rotate(-180deg)"},"&-collapsed::after":{transform:"rotate(0deg)"},"&-spaced":{"&::before, &::after":{display:"none",content:"none"},background:"transparent",border:0,visibility:"hidden"}}),[`${Wt}-row-indent + ${Wt}-row-expand-icon`]:{marginTop:(ta*Xr-Gn*3)/2-Math.ceil((Yr*1.4-Gn*3)/2),marginInlineEnd:Un},[`tr${Wt}-expanded-row`]:{"&, &:hover":{"> th, > td":{background:Ha}},[`${dn}-descriptions-view`]:{display:"flex",table:{flex:"auto",width:"auto"}}},[`${Wt}-expanded-row-fixed`]:{position:"relative",margin:`-${Aa}px -${ha}px`,padding:`${Aa}px ${ha}px`}}}},ja=Rt=>{const{componentCls:Wt,antCls:dn,iconCls:Sn,tableFilterDropdownWidth:kn,tableFilterDropdownSearchWidth:Gn,paddingXXS:Un,paddingXS:cr,colorText:sr,lineWidth:wr,lineType:Ar,tableBorderColor:Cr,tableHeaderIconColor:ta,fontSizeSM:Yr,tablePaddingHorizontal:Xr,borderRadius:Aa,motionDurationSlow:ha,colorTextDescription:Ha,colorPrimary:Oa,tableHeaderFilterActiveBg:Wa,colorTextDisabled:Fi,tableFilterDropdownBg:fi,tableFilterDropdownHeight:bi,controlItemBgHover:Oi,controlItemBgActive:no,boxShadowSecondary:ri,filterDropdownMenuBg:Ci}=Rt,ii=`${dn}-dropdown`,Va=`${Wt}-filter-dropdown`,Za=`${dn}-tree`,_i=`${wr}px ${Ar} ${Cr}`;return[{[`${Wt}-wrapper`]:{[`${Wt}-filter-column`]:{display:"flex",justifyContent:"space-between"},[`${Wt}-filter-trigger`]:{position:"relative",display:"flex",alignItems:"center",marginBlock:-Un,marginInline:`${Un}px ${-Xr/2}px`,padding:`0 ${Un}px`,color:ta,fontSize:Yr,borderRadius:Aa,cursor:"pointer",transition:`all ${ha}`,"&:hover":{color:Ha,background:Wa},"&.active":{color:Oa}}}},{[`${dn}-dropdown`]:{[Va]:Object.assign(Object.assign({},(0,Nu.Wf)(Rt)),{minWidth:kn,backgroundColor:fi,borderRadius:Aa,boxShadow:ri,overflow:"hidden",[`${ii}-menu`]:{maxHeight:bi,overflowX:"hidden",border:0,boxShadow:"none",borderRadius:"unset",backgroundColor:Ci,"&:empty::after":{display:"block",padding:`${cr}px 0`,color:Fi,fontSize:Yr,textAlign:"center",content:'"Not Found"'}},[`${Va}-tree`]:{paddingBlock:`${cr}px 0`,paddingInline:cr,[Za]:{padding:0},[`${Za}-treenode ${Za}-node-content-wrapper:hover`]:{backgroundColor:Oi},[`${Za}-treenode-checkbox-checked ${Za}-node-content-wrapper`]:{"&, &:hover":{backgroundColor:no}}},[`${Va}-search`]:{padding:cr,borderBottom:_i,"&-input":{input:{minWidth:Gn},[Sn]:{color:Fi}}},[`${Va}-checkall`]:{width:"100%",marginBottom:Un,marginInlineStart:Un},[`${Va}-btns`]:{display:"flex",justifyContent:"space-between",padding:`${cr-wr}px ${cr}px`,overflow:"hidden",borderTop:_i}})}},{[`${dn}-dropdown ${Va}, ${Va}-submenu`]:{[`${dn}-checkbox-wrapper + span`]:{paddingInlineStart:cr,color:sr},"> ul":{maxHeight:"calc(100vh - 130px)",overflowX:"hidden",overflowY:"auto"}}}]},ca=Rt=>{const{componentCls:Wt,lineWidth:dn,colorSplit:Sn,motionDurationSlow:kn,zIndexTableFixed:Gn,tableBg:Un,zIndexTableSticky:cr}=Rt,sr=Sn;return{[`${Wt}-wrapper`]:{[` ${Wt}-cell-fix-left, ${Wt}-cell-fix-right `]:{position:"sticky !important",zIndex:Gn,background:Un},[` ${Wt}-cell-fix-left-first::after, ${Wt}-cell-fix-left-last::after `]:{position:"absolute",top:0,right:{_skip_check_:!0,value:0},bottom:-dn,width:30,transform:"translateX(100%)",transition:`box-shadow ${kn}`,content:'""',pointerEvents:"none"},[`${Wt}-cell-fix-left-all::after`]:{display:"none"},[` ${Wt}-cell-fix-right-first::after, ${Wt}-cell-fix-right-last::after `]:{position:"absolute",top:0,bottom:-dn,left:{_skip_check_:!0,value:0},width:30,transform:"translateX(-100%)",transition:`box-shadow ${kn}`,content:'""',pointerEvents:"none"},[`${Wt}-container`]:{"&::before, &::after":{position:"absolute",top:0,bottom:0,zIndex:cr+1,width:30,transition:`box-shadow ${kn}`,content:'""',pointerEvents:"none"},"&::before":{insetInlineStart:0},"&::after":{insetInlineEnd:0}},[`${Wt}-ping-left`]:{[`&:not(${Wt}-has-fix-left) ${Wt}-container`]:{position:"relative","&::before":{boxShadow:`inset 10px 0 8px -8px ${sr}`}},[` ${Wt}-cell-fix-left-first::after, ${Wt}-cell-fix-left-last::after `]:{boxShadow:`inset 10px 0 8px -8px ${sr}`},[`${Wt}-cell-fix-left-last::before`]:{backgroundColor:"transparent !important"}},[`${Wt}-ping-right`]:{[`&:not(${Wt}-has-fix-right) ${Wt}-container`]:{position:"relative","&::after":{boxShadow:`inset -10px 0 8px -8px ${sr}`}},[` ${Wt}-cell-fix-right-first::after, ${Wt}-cell-fix-right-last::after `]:{boxShadow:`inset -10px 0 8px -8px ${sr}`}}}}},Ea=Rt=>{const{componentCls:Wt,antCls:dn}=Rt;return{[`${Wt}-wrapper`]:{[`${Wt}-pagination${dn}-pagination`]:{margin:`${Rt.margin}px 0`},[`${Wt}-pagination`]:{display:"flex",flexWrap:"wrap",rowGap:Rt.paddingXS,"> *":{flex:"none"},"&-left":{justifyContent:"flex-start"},"&-center":{justifyContent:"center"},"&-right":{justifyContent:"flex-end"}}}}},Or=Rt=>{const{componentCls:Wt,tableRadius:dn}=Rt;return{[`${Wt}-wrapper`]:{[Wt]:{[`${Wt}-title, ${Wt}-header`]:{borderRadius:`${dn}px ${dn}px 0 0`},[`${Wt}-title + ${Wt}-container`]:{borderStartStartRadius:0,borderStartEndRadius:0,[`${Wt}-header, table`]:{borderRadius:0},"table > thead > tr:first-child":{"th:first-child, th:last-child, td:first-child, td:last-child":{borderRadius:0}}},"&-container":{borderStartStartRadius:dn,borderStartEndRadius:dn,"table > thead > tr:first-child":{"> *:first-child":{borderStartStartRadius:dn},"> *:last-child":{borderStartEndRadius:dn}}},"&-footer":{borderRadius:`0 0 ${dn}px ${dn}px`}}}}},xi=Rt=>{const{componentCls:Wt}=Rt;return{[`${Wt}-wrapper-rtl`]:{direction:"rtl",table:{direction:"rtl"},[`${Wt}-pagination-left`]:{justifyContent:"flex-end"},[`${Wt}-pagination-right`]:{justifyContent:"flex-start"},[`${Wt}-row-expand-icon`]:{float:"right","&::after":{transform:"rotate(-90deg)"},"&-collapsed::before":{transform:"rotate(180deg)"},"&-collapsed::after":{transform:"rotate(0deg)"}},[`${Wt}-container`]:{"&::before":{insetInlineStart:"unset",insetInlineEnd:0},"&::after":{insetInlineStart:0,insetInlineEnd:"unset"},[`${Wt}-row-indent`]:{float:"right"}}}}},Si=Rt=>{const{componentCls:Wt,antCls:dn,iconCls:Sn,fontSizeIcon:kn,padding:Gn,paddingXS:Un,tableHeaderIconColor:cr,tableHeaderIconColorHover:sr,tableSelectionColumnWidth:wr}=Rt;return{[`${Wt}-wrapper`]:{[`${Wt}-selection-col`]:{width:wr,[`&${Wt}-selection-col-with-dropdown`]:{width:wr+kn+Gn/4}},[`${Wt}-bordered ${Wt}-selection-col`]:{width:wr+Un*2,[`&${Wt}-selection-col-with-dropdown`]:{width:wr+kn+Gn/4+Un*2}},[` table tr th${Wt}-selection-column, table tr td${Wt}-selection-column `]:{paddingInlineEnd:Rt.paddingXS,paddingInlineStart:Rt.paddingXS,textAlign:"center",[`${dn}-radio-wrapper`]:{marginInlineEnd:0}},[`table tr th${Wt}-selection-column${Wt}-cell-fix-left`]:{zIndex:Rt.zIndexTableFixed+1},[`table tr th${Wt}-selection-column::after`]:{backgroundColor:"transparent !important"},[`${Wt}-selection`]:{position:"relative",display:"inline-flex",flexDirection:"column"},[`${Wt}-selection-extra`]:{position:"absolute",top:0,zIndex:1,cursor:"pointer",transition:`all ${Rt.motionDurationSlow}`,marginInlineStart:"100%",paddingInlineStart:`${Rt.tablePaddingHorizontal/4}px`,[Sn]:{color:cr,fontSize:kn,verticalAlign:"baseline","&:hover":{color:sr}}}}}},Mi=Rt=>{const{componentCls:Wt}=Rt,dn=(Sn,kn,Gn,Un)=>({[`${Wt}${Wt}-${Sn}`]:{fontSize:Un,[` ${Wt}-title, ${Wt}-footer, ${Wt}-cell, ${Wt}-thead > tr > th, ${Wt}-tbody > tr > th, ${Wt}-tbody > tr > td, tfoot > tr > th, tfoot > tr > td `]:{padding:`${kn}px ${Gn}px`},[`${Wt}-filter-trigger`]:{marginInlineEnd:`-${Gn/2}px`},[`${Wt}-expanded-row-fixed`]:{margin:`-${kn}px -${Gn}px`},[`${Wt}-tbody`]:{[`${Wt}-wrapper:only-child ${Wt}`]:{marginBlock:`-${kn}px`,marginInline:`${Rt.tableExpandColumnWidth-Gn}px -${Gn}px`}},[`${Wt}-selection-column`]:{paddingInlineStart:`${Gn/4}px`}}});return{[`${Wt}-wrapper`]:Object.assign(Object.assign({},dn("middle",Rt.tablePaddingVerticalMiddle,Rt.tablePaddingHorizontalMiddle,Rt.tableFontSizeMiddle)),dn("small",Rt.tablePaddingVerticalSmall,Rt.tablePaddingHorizontalSmall,Rt.tableFontSizeSmall))}},Mo=Rt=>{const{componentCls:Wt,marginXXS:dn,fontSizeIcon:Sn,tableHeaderIconColor:kn,tableHeaderIconColorHover:Gn}=Rt;return{[`${Wt}-wrapper`]:{[`${Wt}-thead th${Wt}-column-has-sorters`]:{outline:"none",cursor:"pointer",transition:`all ${Rt.motionDurationSlow}`,"&:hover":{background:Rt.tableHeaderSortHoverBg,"&::before":{backgroundColor:"transparent !important"}},"&:focus-visible":{color:Rt.colorPrimary},[` &${Wt}-cell-fix-left:hover, &${Wt}-cell-fix-right:hover `]:{background:Rt.tableFixedHeaderSortActiveBg}},[`${Wt}-thead th${Wt}-column-sort`]:{background:Rt.tableHeaderSortBg,"&::before":{backgroundColor:"transparent !important"}},[`td${Wt}-column-sort`]:{background:Rt.tableBodySortBg},[`${Wt}-column-title`]:{position:"relative",zIndex:1,flex:1},[`${Wt}-column-sorters`]:{display:"flex",flex:"auto",alignItems:"center",justifyContent:"space-between","&::after":{position:"absolute",inset:0,width:"100%",height:"100%",content:'""'}},[`${Wt}-column-sorter`]:{marginInlineStart:dn,color:kn,fontSize:0,transition:`color ${Rt.motionDurationSlow}`,"&-inner":{display:"inline-flex",flexDirection:"column",alignItems:"center"},"&-up, &-down":{fontSize:Sn,"&.active":{color:Rt.colorPrimary}},[`${Wt}-column-sorter-up + ${Wt}-column-sorter-down`]:{marginTop:"-0.3em"}},[`${Wt}-column-sorters:hover ${Wt}-column-sorter`]:{color:Gn}}}},No=Rt=>{const{componentCls:Wt,opacityLoading:dn,tableScrollThumbBg:Sn,tableScrollThumbBgHover:kn,tableScrollThumbSize:Gn,tableScrollBg:Un,zIndexTableSticky:cr,stickyScrollBarBorderRadius:sr}=Rt,wr=`${Rt.lineWidth}px ${Rt.lineType} ${Rt.tableBorderColor}`;return{[`${Wt}-wrapper`]:{[`${Wt}-sticky`]:{"&-holder":{position:"sticky",zIndex:cr,background:Rt.colorBgContainer},"&-scroll":{position:"sticky",bottom:0,height:`${Gn}px !important`,zIndex:cr,display:"flex",alignItems:"center",background:Un,borderTop:wr,opacity:dn,"&:hover":{transformOrigin:"center bottom"},"&-bar":{height:Gn,backgroundColor:Sn,borderRadius:sr,transition:`all ${Rt.motionDurationSlow}, transform none`,position:"absolute",bottom:0,"&:hover, &-active":{backgroundColor:kn}}}}}}},ys=Rt=>{const{componentCls:Wt,lineWidth:dn,tableBorderColor:Sn}=Rt,kn=`${dn}px ${Rt.lineType} ${Sn}`;return{[`${Wt}-wrapper`]:{[`${Wt}-summary`]:{position:"relative",zIndex:Rt.zIndexTableFixed,background:Rt.tableBg,"> tr":{"> th, > td":{borderBottom:kn}}},[`div${Wt}-summary`]:{boxShadow:`0 -${dn}px 0 ${Sn}`}}}},Ys=Rt=>{const{componentCls:Wt}=Rt,dn=`${Rt.lineWidth}px ${Rt.lineType} ${Rt.tableBorderColor}`,Sn=`${Wt}-expanded-row-cell`;return{[`${Wt}-wrapper`]:{[`${Wt}-tbody-virtual`]:{[`${Wt}-row`]:{display:"flex",boxSizing:"border-box",width:"100%"},[`${Wt}-cell`]:{borderBottom:dn},[`${Wt}-expanded-row`]:{[`${Sn}${Sn}-fixed`]:{position:"sticky",insetInlineStart:0,overflow:"hidden",width:`calc(var(--virtual-width) - ${Rt.lineWidth}px)`,borderInlineEnd:"none"}}},[`${Wt}-bordered`]:{[`${Wt}-tbody-virtual`]:{"&:after":{content:'""',insetInline:0,bottom:0,borderBottom:dn,position:"absolute"},[`${Wt}-cell`]:{borderInlineEnd:dn,[`&${Wt}-cell-fix-right-first:before`]:{content:'""',position:"absolute",insetBlock:0,insetInlineStart:-Rt.lineWidth,borderInlineStart:dn}}}}}}};const vs=Rt=>{const{componentCls:Wt,fontWeightStrong:dn,tablePaddingVertical:Sn,tablePaddingHorizontal:kn,lineWidth:Gn,lineType:Un,tableBorderColor:cr,tableFontSize:sr,tableBg:wr,tableRadius:Ar,tableHeaderTextColor:Cr,motionDurationMid:ta,tableHeaderBg:Yr,tableHeaderCellSplitColor:Xr,tableRowHoverBg:Aa,tableSelectedRowBg:ha,tableSelectedRowHoverBg:Ha,tableFooterTextColor:Oa,tableFooterBg:Wa,paddingContentVerticalLG:Fi}=Rt,fi=`${Gn}px ${Un} ${cr}`;return{[`${Wt}-wrapper`]:Object.assign(Object.assign({clear:"both",maxWidth:"100%"},(0,Nu.dF)()),{[Wt]:Object.assign(Object.assign({},(0,Nu.Wf)(Rt)),{fontSize:sr,background:wr,borderRadius:`${Ar}px ${Ar}px 0 0`}),table:{width:"100%",textAlign:"start",borderRadius:`${Ar}px ${Ar}px 0 0`,borderCollapse:"separate",borderSpacing:0},[` ${Wt}-cell, ${Wt}-thead > tr > th, ${Wt}-tbody > tr > th, ${Wt}-tbody > tr > td, tfoot > tr > th, tfoot > tr > td `]:{position:"relative",padding:`${Fi}px ${kn}px`,overflowWrap:"break-word"},[`${Wt}-title`]:{padding:`${Sn}px ${kn}px`},[`${Wt}-thead`]:{"\n > tr > th,\n > tr > td\n ":{position:"relative",color:Cr,fontWeight:dn,textAlign:"start",background:Yr,borderBottom:fi,transition:`background ${ta} ease`,"&[colspan]:not([colspan='1'])":{textAlign:"center"},[`&:not(:last-child):not(${Wt}-selection-column):not(${Wt}-row-expand-icon-cell):not([colspan])::before`]:{position:"absolute",top:"50%",insetInlineEnd:0,width:1,height:"1.6em",backgroundColor:Xr,transform:"translateY(-50%)",transition:`background-color ${ta}`,content:'""'}},"> tr:not(:last-child) > th[colspan]":{borderBottom:0}},[`${Wt}-tbody`]:{"> tr":{"> th, > td":{transition:`background ${ta}, border-color ${ta}`,borderBottom:fi,[` > ${Wt}-wrapper:only-child, > ${Wt}-expanded-row-fixed > ${Wt}-wrapper:only-child `]:{[Wt]:{marginBlock:`-${Sn}px`,marginInline:`${Rt.tableExpandColumnWidth-kn}px -${kn}px`,[`${Wt}-tbody > tr:last-child > td`]:{borderBottom:0,"&:first-child, &:last-child":{borderRadius:0}}}}},"> th":{position:"relative",color:Cr,fontWeight:dn,textAlign:"start",background:Yr,borderBottom:fi,transition:`background ${ta} ease`},[` &${Wt}-row:hover > th, &${Wt}-row:hover > td, > th${Wt}-cell-row-hover, > td${Wt}-cell-row-hover `]:{background:Aa},[`&${Wt}-row-selected`]:{"> th, > td":{background:ha},"&:hover > th, &:hover > td":{background:Ha}}}},[`${Wt}-footer`]:{padding:`${Sn}px ${kn}px`,color:Oa,background:Wa}})}};var Oo=(0,Ru.Z)("Table",Rt=>{const{colorTextHeading:Wt,colorSplit:dn,colorIcon:Sn,colorIconHover:kn,opacityLoading:Gn,colorBgContainer:Un,controlInteractiveSize:cr,headerBg:sr,headerColor:wr,headerSortActiveBg:Ar,headerSortHoverBg:Cr,bodySortBg:ta,rowHoverBg:Yr,rowSelectedBg:Xr,rowSelectedHoverBg:Aa,rowExpandedBg:ha,cellPaddingBlock:Ha,cellPaddingInline:Oa,cellPaddingBlockMD:Wa,cellPaddingInlineMD:Fi,cellPaddingBlockSM:fi,cellPaddingInlineSM:bi,borderColor:Oi,footerBg:no,footerColor:ri,headerBorderRadius:Ci,cellFontSize:ii,cellFontSizeMD:Va,cellFontSizeSM:Za,headerSplitColor:_i,fixedHeaderSortActiveBg:vo,headerFilterHoverBg:Ji,filterDropdownBg:yi,expandIconBg:Ve,selectionColumnWidth:et,stickyScrollBarBg:it}=Rt,pt=new Os.C(Sn),Mt=new Os.C(kn),Tt=2,jt=(0,Uh.TS)(Rt,{tableFontSize:ii,tableBg:Un,tableRadius:Ci,tablePaddingVertical:Ha,tablePaddingHorizontal:Oa,tablePaddingVerticalMiddle:Wa,tablePaddingHorizontalMiddle:Fi,tablePaddingVerticalSmall:fi,tablePaddingHorizontalSmall:bi,tableBorderColor:Oi,tableHeaderTextColor:wr,tableHeaderBg:sr,tableFooterTextColor:ri,tableFooterBg:no,tableHeaderCellSplitColor:_i,tableHeaderSortBg:Ar,tableHeaderSortHoverBg:Cr,tableHeaderIconColor:pt.clone().setAlpha(pt.getAlpha()*Gn).toRgbString(),tableHeaderIconColorHover:Mt.clone().setAlpha(Mt.getAlpha()*Gn).toRgbString(),tableBodySortBg:ta,tableFixedHeaderSortActiveBg:vo,tableHeaderFilterActiveBg:Ji,tableFilterDropdownBg:yi,tableRowHoverBg:Yr,tableSelectedRowBg:Xr,tableSelectedRowHoverBg:Aa,zIndexTableFixed:Tt,zIndexTableSticky:Tt+1,tableFontSizeMiddle:Va,tableFontSizeSmall:Za,tableSelectionColumnWidth:et,tableExpandIconBg:Ve,tableExpandColumnWidth:cr+2*Rt.padding,tableExpandedRowBg:ha,tableFilterDropdownWidth:120,tableFilterDropdownHeight:264,tableFilterDropdownSearchWidth:140,tableScrollThumbSize:8,tableScrollThumbBg:it,tableScrollThumbBgHover:Wt,tableScrollBg:dn});return[vs(jt),Ea(jt),ys(jt),Mo(jt),ja(jt),Nt(jt),Or(jt),Dr(jt),ys(jt),lr(jt),Si(jt),ca(jt),No(jt),Pn(jt),Mi(jt),xi(jt),Ys(jt)]},Rt=>{const{colorFillAlter:Wt,colorBgContainer:dn,colorTextHeading:Sn,colorFillSecondary:kn,colorFillContent:Gn,controlItemBgActive:Un,controlItemBgActiveHover:cr,padding:sr,paddingSM:wr,paddingXS:Ar,colorBorderSecondary:Cr,borderRadiusLG:ta,fontSize:Yr,controlHeight:Xr,colorTextPlaceholder:Aa}=Rt,ha=new Os.C(kn).onBackground(dn).toHexShortString(),Ha=new Os.C(Gn).onBackground(dn).toHexShortString(),Oa=new Os.C(Wt).onBackground(dn).toHexShortString();return{headerBg:Oa,headerColor:Sn,headerSortActiveBg:ha,headerSortHoverBg:Ha,bodySortBg:Oa,rowHoverBg:Oa,rowSelectedBg:Un,rowSelectedHoverBg:cr,rowExpandedBg:Wt,cellPaddingBlock:sr,cellPaddingInline:sr,cellPaddingBlockMD:wr,cellPaddingInlineMD:Ar,cellPaddingBlockSM:Ar,cellPaddingInlineSM:Ar,borderColor:Cr,headerBorderRadius:ta,footerBg:Oa,footerColor:Sn,cellFontSize:Yr,cellFontSizeMD:Yr,cellFontSizeSM:Yr,headerSplitColor:Cr,fixedHeaderSortActiveBg:ha,headerFilterHoverBg:Gn,filterDropdownMenuBg:dn,filterDropdownBg:dn,expandIconBg:dn,selectionColumnWidth:Xr,stickyScrollBarBg:Aa,stickyScrollBarBorderRadius:100}});const Ko=[],qo=(Rt,Wt)=>{const{prefixCls:dn,className:Sn,rootClassName:kn,style:Gn,size:Un,bordered:cr,dropdownPrefixCls:sr,dataSource:wr,pagination:Ar,rowSelection:Cr,rowKey:ta="key",rowClassName:Yr,columns:Xr,children:Aa,childrenColumnName:ha,onChange:Ha,getPopupContainer:Oa,loading:Wa,expandIcon:Fi,expandable:fi,expandedRowRender:bi,expandIconColumnIndex:Oi,indentSize:no,scroll:ri,sortDirections:Ci,locale:ii,showSorterTooltip:Va=!0,virtual:Za}=Rt,_i=ge.useMemo(()=>Xr||Ue(Aa),[Xr,Aa]),vo=ge.useMemo(()=>_i.some(rs=>rs.responsive),[_i]),Ji=(0,Fo.Z)(vo),yi=ge.useMemo(()=>{const rs=new Set(Object.keys(Ji).filter(zs=>Ji[zs]));return _i.filter(zs=>!zs.responsive||zs.responsive.some(jl=>rs.has(jl)))},[_i,Ji]),Ve=(0,lo.Z)(Rt,["className","style","columns"]),{locale:et=fs.Z,direction:it,table:pt,renderEmpty:Mt,getPrefixCls:Tt,getPopupContainer:jt}=ge.useContext(ho.E_),kt=(0,ds.Z)(Un),en=Object.assign(Object.assign({},et.Table),ii),Vt=wr||Ko,un=Tt("table",dn),Tn=Tt("dropdown",sr),hn=Object.assign({childrenColumnName:ha,expandIconColumnIndex:Oi},fi),{childrenColumnName:gn="children"}=hn,cn=ge.useMemo(()=>Vt.some(rs=>rs==null?void 0:rs[gn])?"nest":bi||fi&&fi.expandedRowRender?"row":null,[Vt]),bn={body:ge.useRef()},Wn=ge.useMemo(()=>typeof ta=="function"?ta:rs=>rs==null?void 0:rs[ta],[ta]),[_n]=Ll(Vt,gn,Wn),Qn={},ir=function(rs,zs){let jl=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;var $s,ml,Xs;const bl=Object.assign(Object.assign({},Qn),rs);jl&&(($s=Qn.resetPagination)===null||$s===void 0||$s.call(Qn),!((ml=bl.pagination)===null||ml===void 0)&&ml.current&&(bl.pagination.current=1),Ar&&Ar.onChange&&Ar.onChange(1,(Xs=bl.pagination)===null||Xs===void 0?void 0:Xs.pageSize)),ri&&ri.scrollToFirstRowOnChange!==!1&&bn.body.current&&(0,Bi.Z)(0,{getContainer:()=>bn.body.current}),Ha==null||Ha(bl.pagination,bl.filters,bl.sorter,{currentDataSource:wf(Wl(Vt,bl.sorterStates,gn),bl.filterStates),action:zs})},xr=(rs,zs)=>{ir({sorter:rs,sorterStates:zs},"sort",!1)},[ia,ea,Xa,xa]=qf({prefixCls:un,mergedColumns:yi,onSorterChange:xr,sortDirections:Ci||["ascend","descend"],tableLocale:en,showSorterTooltip:Va}),Pa=ge.useMemo(()=>Wl(Vt,ea,gn),[Vt,ea]);Qn.sorter=xa(),Qn.sorterStates=ea;const Pr=(rs,zs)=>{ir({filters:rs,filterStates:zs},"filter",!0)},[oa,hi,ar]=qd({prefixCls:un,locale:en,dropdownPrefixCls:Tn,mergedColumns:yi,onFilterChange:Pr,getPopupContainer:Oa||jt}),Mr=wf(Pa,hi);Qn.filters=ar,Qn.filterStates=hi;const sa=ge.useMemo(()=>{const rs={};return Object.keys(ar).forEach(zs=>{ar[zs]!==null&&(rs[zs]=ar[zs])}),Object.assign(Object.assign({},Xa),{filters:rs})},[Xa,ar]),[da]=zh(sa),Ra=(rs,zs)=>{ir({pagination:Object.assign(Object.assign({},Qn.pagination),{current:rs,pageSize:zs})},"paginate")},[la,na]=Xl(Mr.length,Ra,Ar);Qn.pagination=Ar===!1?{}:ic(la,Ar),Qn.resetPagination=na;const vi=ge.useMemo(()=>{if(Ar===!1||!la.pageSize)return Mr;const{current:rs=1,total:zs,pageSize:jl=zc}=la;return Mr.lengthjl?Mr.slice((rs-1)*jl,rs*jl):Mr:Mr.slice((rs-1)*jl,rs*jl)},[!!Ar,Mr,la&&la.current,la&&la.pageSize,la&&la.total]),[mi,_r]=Bl({prefixCls:un,data:Mr,pageData:vi,getRowKey:Wn,getRecordByKey:_n,expandType:cn,childrenColumnName:gn,locale:en,getPopupContainer:Oa||jt},Cr),Zi=(rs,zs,jl)=>{let $s;return typeof Yr=="function"?$s=Qe()(Yr(rs,zs,jl)):$s=Qe()(Yr),Qe()({[`${un}-row-selected`]:_r.has(Wn(rs,zs))},$s)};hn.__PARENT_RENDER_ICON__=hn.expandIcon,hn.expandIcon=hn.expandIcon||Fi||Ga(en),cn==="nest"&&hn.expandIconColumnIndex===void 0?hn.expandIconColumnIndex=Cr?1:0:hn.expandIconColumnIndex>0&&Cr&&(hn.expandIconColumnIndex-=1),typeof hn.indentSize!="number"&&(hn.indentSize=typeof no=="number"?no:15);const qi=ge.useCallback(rs=>da(mi(oa(ia(rs)))),[ia,oa,mi]);let $o,cs;if(Ar!==!1&&(la!=null&&la.total)){let rs;la.size?rs=la.size:rs=kt==="small"||kt==="middle"?"small":void 0;const zs=ml=>ge.createElement(Gs.Z,Object.assign({},la,{className:Qe()(`${un}-pagination ${un}-pagination-${ml}`,la.className),size:rs})),jl=it==="rtl"?"left":"right",{position:$s}=la;if($s!==null&&Array.isArray($s)){const ml=$s.find(Xu=>Xu.includes("top")),Xs=$s.find(Xu=>Xu.includes("bottom")),bl=$s.every(Xu=>`${Xu}`=="none");!ml&&!Xs&&!bl&&(cs=zs(jl)),ml&&($o=zs(ml.toLowerCase().replace("top",""))),Xs&&(cs=zs(Xs.toLowerCase().replace("bottom","")))}else cs=zs(jl)}let Rs;typeof Wa=="boolean"?Rs={spinning:Wa}:typeof Wa=="object"&&(Rs=Object.assign({spinning:!0},Wa));const[gl,qs]=Oo(un),[,Zs]=(0,ya.Z)(),Ec=Qe()(`${un}-wrapper`,pt==null?void 0:pt.className,{[`${un}-wrapper-rtl`]:it==="rtl"},Sn,kn,qs),ud=Object.assign(Object.assign({},pt==null?void 0:pt.style),Gn),Ac=ii&&ii.emptyText||(Mt==null?void 0:Mt("Table"))||ge.createElement(po.Z,{componentName:"Table"}),Fu=Za?jc:$f,eh={},Wh=ge.useMemo(()=>{const{fontSize:rs,lineHeight:zs,padding:jl,paddingXS:$s,paddingSM:ml}=Zs,Xs=Math.floor(rs*zs);switch(kt){case"large":return jl*2+Xs;case"small":return $s*2+Xs;default:return ml*2+Xs}},[Zs,kt]);return Za&&(eh.listItemHeight=Wh),gl(ge.createElement("div",{ref:Wt,className:Ec,style:ud},ge.createElement(Jr.Z,Object.assign({spinning:!1},Rs),$o,ge.createElement(Fu,Object.assign({},eh,Ve,{columns:yi,direction:it,expandable:hn,prefixCls:un,className:Qe()({[`${un}-middle`]:kt==="middle",[`${un}-small`]:kt==="small",[`${un}-bordered`]:cr,[`${un}-empty`]:Vt.length===0}),data:vi,rowKey:Wn,rowClassName:Zi,emptyText:Ac,internalHooks:He,internalRefs:bn,transformColumns:qi})),cs)))};var Ns=ge.forwardRef(qo);const ns=(Rt,Wt)=>{const dn=ge.useRef(0);return dn.current+=1,ge.createElement(Ns,Object.assign({},Rt,{ref:Wt,_renderTimes:dn.current}))},Zo=ge.forwardRef(ns);Zo.SELECTION_COLUMN=wu,Zo.EXPAND_COLUMN=Be,Zo.SELECTION_ALL=tf,Zo.SELECTION_INVERT=nf,Zo.SELECTION_NONE=Df,Zo.Column=Ri,Zo.ColumnGroup=xo,Zo.Summary=vt;var il=Zo,Ps=il},17574:function(St,Dt,Ie){"use strict";Ie.d(Dt,{default:function(){return lt}});var Be=Ie(60091),He=Ie(94480),Fe=Ie(52671),Ce=Ie(8657),_e=Ie(54476),Pe=Ie(59301),ge={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M880 298.4H521L403.7 186.2a8.15 8.15 0 00-5.5-2.2H144c-17.7 0-32 14.3-32 32v592c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V330.4c0-17.7-14.3-32-32-32zM840 768H184V256h188.5l119.6 114.4H840V768z"}}]},name:"folder",theme:"outlined"},Ae=ge,be=Ie(7657),we=function(ut,yt){return Pe.createElement(be.Z,(0,_e.Z)({},ut,{ref:yt,icon:Ae}))},pe=Pe.forwardRef(we),ye=pe,xe=Ie(92310),ce=Ie.n(xe),te=Ie(35654),ne=Ie(71430),le=Ie(36355),oe=Ie(56082),de=Ie(62892),he=Ie(20648);const ie=4;function ue(rt){const{dropPosition:ut,dropLevelOffset:yt,prefixCls:ft,indent:dt,direction:ht="ltr"}=rt,Ut=ht==="ltr"?"left":"right",Kt=ht==="ltr"?"right":"left",qt={[Ut]:-yt*dt+ie,[Kt]:0};switch(ut){case-1:qt.top=-3;break;case 1:qt.bottom=-3;break;default:qt.bottom=-3,qt[Ut]=dt+ie;break}return Pe.createElement("div",{style:qt,className:`${ft}-drop-indicator`})}var ve=Ie(71997),De=Pe.forwardRef((rt,ut)=>{const{getPrefixCls:yt,direction:ft,virtual:dt,tree:ht}=Pe.useContext(le.E_),{prefixCls:Ut,className:Kt,showIcon:qt=!1,showLine:vn,switcherIcon:Ot,blockNode:rn=!1,children:an,checkable:On=!1,selectable:Rn=!0,draggable:sn,motion:tn,style:Gt}=rt,It=yt("tree",Ut),Et=yt(),Zt=tn!=null?tn:Object.assign(Object.assign({},(0,de.Z)(Et)),{motionAppear:!1}),vt=Object.assign(Object.assign({},rt),{checkable:On,selectable:Rn,showIcon:qt,motion:Zt,blockNode:rn,showLine:!!vn,dropIndicatorRender:ue}),[At,Qt]=(0,he.ZP)(It),Ft=Pe.useMemo(()=>{if(!sn)return!1;let ln={};switch(typeof sn){case"function":ln.nodeDraggable=sn;break;case"object":ln=Object.assign({},sn);break;default:break}return ln.icon!==!1&&(ln.icon=ln.icon||Pe.createElement(oe.Z,null)),ln},[sn]),wt=ln=>Pe.createElement(ve.Z,{prefixCls:It,switcherIcon:Ot,treeNodeProps:ln,showLine:vn});return At(Pe.createElement(Be.Z,Object.assign({itemHeight:20,ref:ut,virtual:dt},vt,{style:Object.assign(Object.assign({},ht==null?void 0:ht.style),Gt),prefixCls:It,className:ce()({[`${It}-icon-hide`]:!qt,[`${It}-block-node`]:rn,[`${It}-unselectable`]:!Rn,[`${It}-rtl`]:ft==="rtl"},ht==null?void 0:ht.className,Kt,Qt),direction:ft,checkable:On&&Pe.createElement("span",{className:`${It}-checkbox-inner`}),selectable:Rn,switcherIcon:wt,draggable:Ft}),an))}),Re;(function(rt){rt[rt.None=0]="None",rt[rt.Start=1]="Start",rt[rt.End=2]="End"})(Re||(Re={}));function Ne(rt,ut){function yt(ft){const{key:dt,children:ht}=ft;ut(dt,ft)!==!1&&Ne(ht||[],ut)}rt.forEach(yt)}function ze(rt){let{treeData:ut,expandedKeys:yt,startKey:ft,endKey:dt}=rt;const ht=[];let Ut=Re.None;if(ft&&ft===dt)return[ft];if(!ft||!dt)return[];function Kt(qt){return qt===ft||qt===dt}return Ne(ut,qt=>{if(Ut===Re.End)return!1;if(Kt(qt)){if(ht.push(qt),Ut===Re.None)Ut=Re.Start;else if(Ut===Re.Start)return Ut=Re.End,!1}else Ut===Re.Start&&ht.push(qt);return yt.includes(qt)}),ht}function Ge(rt,ut){const yt=(0,He.Z)(ut),ft=[];return Ne(rt,(dt,ht)=>{const Ut=yt.indexOf(dt);return Ut!==-1&&(ft.push(ht),yt.splice(Ut,1)),!!yt.length}),ft}var Xe=function(rt,ut){var yt={};for(var ft in rt)Object.prototype.hasOwnProperty.call(rt,ft)&&ut.indexOf(ft)<0&&(yt[ft]=rt[ft]);if(rt!=null&&typeof Object.getOwnPropertySymbols=="function")for(var dt=0,ft=Object.getOwnPropertySymbols(rt);dt{var{defaultExpandAll:yt,defaultExpandParent:ft,defaultExpandedKeys:dt}=rt,ht=Xe(rt,["defaultExpandAll","defaultExpandParent","defaultExpandedKeys"]);const Ut=Pe.useRef(),Kt=Pe.useRef(),qt=()=>{const{keyEntities:Ft}=(0,ne.I8)(nt(ht));let wt;return yt?wt=Object.keys(Ft):ft?wt=(0,te.r7)(ht.expandedKeys||dt||[],Ft):wt=ht.expandedKeys||dt,wt},[vn,Ot]=Pe.useState(ht.selectedKeys||ht.defaultSelectedKeys||[]),[rn,an]=Pe.useState(()=>qt());Pe.useEffect(()=>{"selectedKeys"in ht&&Ot(ht.selectedKeys)},[ht.selectedKeys]),Pe.useEffect(()=>{"expandedKeys"in ht&&an(ht.expandedKeys)},[ht.expandedKeys]);const On=(Ft,wt)=>{var ln;return"expandedKeys"in ht||an(Ft),(ln=ht.onExpand)===null||ln===void 0?void 0:ln.call(ht,Ft,wt)},Rn=(Ft,wt)=>{var ln;const{multiple:In}=ht,{node:Kn,nativeEvent:Vn}=wt,{key:Zn=""}=Kn,$n=nt(ht),Jt=Object.assign(Object.assign({},wt),{selected:!0}),yn=(Vn==null?void 0:Vn.ctrlKey)||(Vn==null?void 0:Vn.metaKey),Hn=Vn==null?void 0:Vn.shiftKey;let Bn;In&&yn?(Bn=Ft,Ut.current=Zn,Kt.current=Bn,Jt.selectedNodes=Ge($n,Bn)):In&&Hn?(Bn=Array.from(new Set([].concat((0,He.Z)(Kt.current||[]),(0,He.Z)(ze({treeData:$n,expandedKeys:rn,startKey:Zn,endKey:Ut.current}))))),Jt.selectedNodes=Ge($n,Bn)):(Bn=[Zn],Ut.current=Zn,Kt.current=Bn,Jt.selectedNodes=Ge($n,Bn)),(ln=ht.onSelect)===null||ln===void 0||ln.call(ht,Bn,Jt),"selectedKeys"in ht||Ot(Bn)},{getPrefixCls:sn,direction:tn}=Pe.useContext(le.E_),{prefixCls:Gt,className:It,showIcon:Et=!0,expandAction:Zt="click"}=ht,vt=Xe(ht,["prefixCls","className","showIcon","expandAction"]),At=sn("tree",Gt),Qt=ce()(`${At}-directory`,{[`${At}-directory-rtl`]:tn==="rtl"},It);return Pe.createElement(De,Object.assign({icon:Qe,ref:ut,blockNode:!0},vt,{showIcon:Et,expandAction:Zt,prefixCls:At,className:Qt,expandedKeys:rn,selectedKeys:vn,onSelect:Rn,onExpand:On}))};var ot=Pe.forwardRef($e);const at=De;at.DirectoryTree=ot,at.TreeNode=Be.O;var lt=at},20648:function(St,Dt,Ie){"use strict";Ie.d(Dt,{TM:function(){return xe},Yk:function(){return ye}});var Be=Ie(36237),He=Ie(98447),Fe=Ie(17313),Ce=Ie(8378),_e=Ie(37613),Pe=Ie(83116);const ge=new Be.Keyframes("ant-tree-node-fx-do-not-use",{"0%":{opacity:0},"100%":{opacity:1}}),Ae=(ce,te)=>({[`.${ce}-switcher-icon`]:{display:"inline-block",fontSize:10,verticalAlign:"baseline",svg:{transition:`transform ${te.motionDurationSlow}`}}}),be=(ce,te)=>({[`.${ce}-drop-indicator`]:{position:"absolute",zIndex:1,height:2,backgroundColor:te.colorPrimary,borderRadius:1,pointerEvents:"none","&:after":{position:"absolute",top:-3,insetInlineStart:-6,width:8,height:8,backgroundColor:"transparent",border:`${te.lineWidthBold}px solid ${te.colorPrimary}`,borderRadius:"50%",content:'""'}}}),we=(ce,te)=>{const{treeCls:ne,treeNodeCls:le,treeNodePadding:oe,titleHeight:de,nodeSelectedBg:he,nodeHoverBg:ie}=te,ue=te.paddingXS;return{[ne]:Object.assign(Object.assign({},(0,Fe.Wf)(te)),{background:te.colorBgContainer,borderRadius:te.borderRadius,transition:`background-color ${te.motionDurationSlow}`,[`&${ne}-rtl`]:{[`${ne}-switcher`]:{"&_close":{[`${ne}-switcher-icon`]:{svg:{transform:"rotate(90deg)"}}}}},[`&-focused:not(:hover):not(${ne}-active-focused)`]:Object.assign({},(0,Fe.oN)(te)),[`${ne}-list-holder-inner`]:{alignItems:"flex-start"},[`&${ne}-block-node`]:{[`${ne}-list-holder-inner`]:{alignItems:"stretch",[`${ne}-node-content-wrapper`]:{flex:"auto"},[`${le}.dragging`]:{position:"relative","&:after":{position:"absolute",top:0,insetInlineEnd:0,bottom:oe,insetInlineStart:0,border:`1px solid ${te.colorPrimary}`,opacity:0,animationName:ge,animationDuration:te.motionDurationSlow,animationPlayState:"running",animationFillMode:"forwards",content:'""',pointerEvents:"none"}}}},[`${le}`]:{display:"flex",alignItems:"flex-start",padding:`0 0 ${oe}px 0`,outline:"none","&-rtl":{direction:"rtl"},"&-disabled":{[`${ne}-node-content-wrapper`]:{color:te.colorTextDisabled,cursor:"not-allowed","&:hover":{background:"transparent"}}},[`&-active ${ne}-node-content-wrapper`]:Object.assign({},(0,Fe.oN)(te)),[`&:not(${le}-disabled).filter-node ${ne}-title`]:{color:"inherit",fontWeight:500},"&-draggable":{[`${ne}-draggable-icon`]:{flexShrink:0,width:de,lineHeight:`${de}px`,textAlign:"center",visibility:"visible",opacity:.2,transition:`opacity ${te.motionDurationSlow}`,[`${le}:hover &`]:{opacity:.45}},[`&${le}-disabled`]:{[`${ne}-draggable-icon`]:{visibility:"hidden"}}}},[`${ne}-indent`]:{alignSelf:"stretch",whiteSpace:"nowrap",userSelect:"none","&-unit":{display:"inline-block",width:de}},[`${ne}-draggable-icon`]:{visibility:"hidden"},[`${ne}-switcher`]:Object.assign(Object.assign({},Ae(ce,te)),{position:"relative",flex:"none",alignSelf:"stretch",width:de,margin:0,lineHeight:`${de}px`,textAlign:"center",cursor:"pointer",userSelect:"none","&-noop":{cursor:"default"},"&_close":{[`${ne}-switcher-icon`]:{svg:{transform:"rotate(-90deg)"}}},"&-loading-icon":{color:te.colorPrimary},"&-leaf-line":{position:"relative",zIndex:1,display:"inline-block",width:"100%",height:"100%","&:before":{position:"absolute",top:0,insetInlineEnd:de/2,bottom:-oe,marginInlineStart:-1,borderInlineEnd:`1px solid ${te.colorBorder}`,content:'""'},"&:after":{position:"absolute",width:de/2*.8,height:de/2,borderBottom:`1px solid ${te.colorBorder}`,content:'""'}}}),[`${ne}-checkbox`]:{top:"initial",marginInlineEnd:ue},[`${ne}-node-content-wrapper, ${ne}-checkbox + span`]:{position:"relative",zIndex:"auto",minHeight:de,margin:0,padding:`0 ${te.paddingXS/2}px`,color:"inherit",lineHeight:`${de}px`,background:"transparent",borderRadius:te.borderRadius,cursor:"pointer",transition:`all ${te.motionDurationMid}, border 0s, line-height 0s, box-shadow 0s`,"&:hover":{backgroundColor:ie},[`&${ne}-node-selected`]:{backgroundColor:he},[`${ne}-iconEle`]:{display:"inline-block",width:de,height:de,lineHeight:`${de}px`,textAlign:"center",verticalAlign:"top","&:empty":{display:"none"}}},[`${ne}-unselectable ${ne}-node-content-wrapper:hover`]:{backgroundColor:"transparent"},[`${ne}-node-content-wrapper`]:Object.assign({lineHeight:`${de}px`,userSelect:"none"},be(ce,te)),[`${le}.drop-container`]:{"> [draggable]":{boxShadow:`0 0 0 2px ${te.colorPrimary}`}},"&-show-line":{[`${ne}-indent`]:{"&-unit":{position:"relative",height:"100%","&:before":{position:"absolute",top:0,insetInlineEnd:de/2,bottom:-oe,borderInlineEnd:`1px solid ${te.colorBorder}`,content:'""'},"&-end":{"&:before":{display:"none"}}}},[`${ne}-switcher`]:{background:"transparent","&-line-icon":{verticalAlign:"-0.15em"}}},[`${le}-leaf-last`]:{[`${ne}-switcher`]:{"&-leaf-line":{"&:before":{top:"auto !important",bottom:"auto !important",height:`${de/2}px !important`}}}}})}},pe=ce=>{const{treeCls:te,treeNodeCls:ne,treeNodePadding:le,directoryNodeSelectedBg:oe,directoryNodeSelectedColor:de}=ce;return{[`${te}${te}-directory`]:{[ne]:{position:"relative","&:before":{position:"absolute",top:0,insetInlineEnd:0,bottom:le,insetInlineStart:0,transition:`background-color ${ce.motionDurationMid}`,content:'""',pointerEvents:"none"},"&:hover":{"&:before":{background:ce.controlItemBgHover}},"> *":{zIndex:1},[`${te}-switcher`]:{transition:`color ${ce.motionDurationMid}`},[`${te}-node-content-wrapper`]:{borderRadius:0,userSelect:"none","&:hover":{background:"transparent"},[`&${te}-node-selected`]:{color:de,background:"transparent"}},"&-selected":{"\n &:hover::before,\n &::before\n ":{background:oe},[`${te}-switcher`]:{color:de},[`${te}-node-content-wrapper`]:{color:de,background:"transparent"}}}}}},ye=(ce,te)=>{const ne=`.${ce}`,le=`${ne}-treenode`,oe=te.paddingXS/2,de=(0,_e.TS)(te,{treeCls:ne,treeNodeCls:le,treeNodePadding:oe});return[we(ce,de),pe(de)]},xe=ce=>{const{controlHeightSM:te}=ce;return{titleHeight:te,nodeHoverBg:ce.controlItemBgHover,nodeSelectedBg:ce.controlItemBgActive}};Dt.ZP=(0,Pe.Z)("Tree",(ce,te)=>{let{prefixCls:ne}=te;return[{[ce.componentCls]:(0,He.C2)(`${ne}-checkbox`,ce)},ye(ne,ce),(0,Ce.Z)(ce)]},ce=>{const{colorTextLightSolid:te,colorPrimary:ne}=ce;return Object.assign(Object.assign({},xe(ce)),{directoryNodeSelectedColor:te,directoryNodeSelectedBg:ne})})},71997:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return le}});var Be=Ie(54476),He=Ie(59301),Fe={icon:{tag:"svg",attrs:{viewBox:"0 0 1024 1024",focusable:"false"},children:[{tag:"path",attrs:{d:"M840.4 300H183.6c-19.7 0-30.7 20.8-18.5 35l328.4 380.8c9.4 10.9 27.5 10.9 37 0L858.9 335c12.2-14.2 1.2-35-18.5-35z"}}]},name:"caret-down",theme:"filled"},Ce=Fe,_e=Ie(7657),Pe=function(de,he){return He.createElement(_e.Z,(0,Be.Z)({},de,{ref:he,icon:Ce}))},ge=He.forwardRef(Pe),Ae=ge,be=Ie(52671),we=Ie(58617),pe=Ie(15075),ye=Ie(43531),xe=Ie(92310),ce=Ie.n(xe),te=Ie(92343),le=oe=>{const{prefixCls:de,switcherIcon:he,treeNodeProps:ie,showLine:ue}=oe,{isLeaf:ve,expanded:Se,loading:De}=ie;if(De)return He.createElement(we.Z,{className:`${de}-switcher-loading-icon`});let Re;if(ue&&typeof ue=="object"&&(Re=ue.showLeafIcon),ve){if(!ue)return null;if(typeof Re!="boolean"&&Re){const Ge=typeof Re=="function"?Re(ie):Re,Xe=`${de}-switcher-line-custom-icon`;return(0,te.l$)(Ge)?(0,te.Tm)(Ge,{className:ce()(Ge.props.className||"",Xe)}):Ge}return Re?He.createElement(be.Z,{className:`${de}-switcher-line-icon`}):He.createElement("span",{className:`${de}-switcher-leaf-line`})}const Ne=`${de}-switcher-icon`,ze=typeof he=="function"?he(ie):he;return(0,te.l$)(ze)?(0,te.Tm)(ze,{className:ce()(ze.props.className||"",Ne)}):ze!==void 0?ze:ue?Se?He.createElement(pe.Z,{className:`${de}-switcher-line-icon`}):He.createElement(ye.Z,{className:`${de}-switcher-line-icon`}):He.createElement(Ae,{className:Ne})}},54580:function(St,Dt,Ie){"use strict";Ie.d(Dt,{default:function(){return fn}});var Be=Ie(59301),He=Ie(94480),Fe=Ie(92310),Ce=Ie.n(Fe),_e=Ie(54476),Pe=Ie(67732),ge=Ie(83652),Ae=Ie(42403),be=Ie(158),we=Ie(20068),pe=Ie(75931),ye=Ie(75044),xe=Ie(76190),ce=Ie(3202),te=Ie(26112);function ne(nn,Nn){var jn="cannot ".concat(nn.method," ").concat(nn.action," ").concat(Nn.status,"'"),rr=new Error(jn);return rr.status=Nn.status,rr.method=nn.method,rr.url=nn.action,rr}function le(nn){var Nn=nn.responseText||nn.response;if(!Nn)return Nn;try{return JSON.parse(Nn)}catch(jn){return Nn}}function oe(nn){var Nn=new XMLHttpRequest;nn.onProgress&&Nn.upload&&(Nn.upload.onprogress=function(Xn){Xn.total>0&&(Xn.percent=Xn.loaded/Xn.total*100),nn.onProgress(Xn)});var jn=new FormData;nn.data&&Object.keys(nn.data).forEach(function(mr){var Xn=nn.data[mr];if(Array.isArray(Xn)){Xn.forEach(function(ur){jn.append("".concat(mr,"[]"),ur)});return}jn.append(mr,Xn)}),nn.file instanceof Blob?jn.append(nn.filename,nn.file,nn.file.name):jn.append(nn.filename,nn.file),Nn.onerror=function(Xn){nn.onError(Xn)},Nn.onload=function(){return Nn.status<200||Nn.status>=300?nn.onError(ne(nn,Nn),le(Nn)):nn.onSuccess(le(Nn),Nn)},Nn.open(nn.method,nn.action,!0),nn.withCredentials&&"withCredentials"in Nn&&(Nn.withCredentials=!0);var rr=nn.headers||{};return rr["X-Requested-With"]!==null&&Nn.setRequestHeader("X-Requested-With","XMLHttpRequest"),Object.keys(rr).forEach(function(mr){rr[mr]!==null&&Nn.setRequestHeader(mr,rr[mr])}),Nn.send(jn),{abort:function(){Nn.abort()}}}var de=+new Date,he=0;function ie(){return"rc-upload-".concat(de,"-").concat(++he)}var ue=Ie(48736),ve=function(nn,Nn){if(nn&&Nn){var jn=Array.isArray(Nn)?Nn:Nn.split(","),rr=nn.name||"",mr=nn.type||"",Xn=mr.replace(/\/.*$/,"");return jn.some(function(ur){var yr=ur.trim();if(/^\*(\/\*)?$/.test(ur))return!0;if(yr.charAt(0)==="."){var wn=rr.toLowerCase(),gr=yr.toLowerCase(),Jn=[gr];return(gr===".jpg"||gr===".jpeg")&&(Jn=[".jpg",".jpeg"]),Jn.some(function(Ur){return wn.endsWith(Ur)})}return/\/\*$/.test(yr)?Xn===yr.replace(/\/.*$/,""):mr===yr?!0:/^\w+$/.test(yr)?((0,ue.ZP)(!1,"Upload takes an invalidate 'accept' type '".concat(yr,"'.Skip for check.")),!0):!1})}return!0};function Se(nn,Nn){var jn=nn.createReader(),rr=[];function mr(){jn.readEntries(function(Xn){var ur=Array.prototype.slice.apply(Xn);rr=rr.concat(ur);var yr=!ur.length;yr?Nn(rr):mr()})}mr()}var De=function(Nn,jn,rr){var mr=function Xn(ur,yr){ur&&(ur.path=yr||"",ur.isFile?ur.file(function(wn){rr(wn)&&(ur.fullPath&&!wn.webkitRelativePath&&(Object.defineProperties(wn,{webkitRelativePath:{writable:!0}}),wn.webkitRelativePath=ur.fullPath.replace(/^\//,""),Object.defineProperties(wn,{webkitRelativePath:{writable:!1}})),jn([wn]))}):ur.isDirectory&&Se(ur,function(wn){wn.forEach(function(gr){Xn(gr,"".concat(yr).concat(ur.name,"/"))})}))};Nn.forEach(function(Xn){mr(Xn.webkitGetAsEntry())})},Re=De,Ne=["component","prefixCls","className","disabled","id","style","multiple","accept","capture","children","directory","openFileDialogOnClick","onMouseEnter","onMouseLeave"],ze=function(nn){(0,Ae.Z)(jn,nn);var Nn=(0,be.Z)(jn);function jn(){var rr;(0,Pe.Z)(this,jn);for(var mr=arguments.length,Xn=new Array(mr),ur=0;ur{let{uid:Xn}=mr;return Xn===nn.uid});return rr===-1?jn.push(nn):jn[rr]=nn,jn}function ln(nn,Nn){const jn=nn.uid!==void 0?"uid":"name";return Nn.filter(rr=>rr[jn]===nn[jn])[0]}function In(nn,Nn){const jn=nn.uid!==void 0?"uid":"name",rr=Nn.filter(mr=>mr[jn]!==nn[jn]);return rr.length===Nn.length?null:rr}const Kn=function(){const Nn=(arguments.length>0&&arguments[0]!==void 0?arguments[0]:"").split("/"),rr=Nn[Nn.length-1].split(/#|\?/)[0];return(/\.[^./\\]*$/.exec(rr)||[""])[0]},Vn=nn=>nn.indexOf("image/")===0,Zn=nn=>{if(nn.type&&!nn.thumbUrl)return Vn(nn.type);const Nn=nn.thumbUrl||nn.url||"",jn=Kn(Nn);return/^data:image\//.test(Nn)||/(webp|svg|png|gif|jpg|jpeg|jfif|bmp|dpg|ico|heic|heif)$/i.test(jn)?!0:!(/^data:/.test(Nn)||jn)},$n=200;function Jt(nn){return new Promise(Nn=>{if(!nn.type||!Vn(nn.type)){Nn("");return}const jn=document.createElement("canvas");jn.width=$n,jn.height=$n,jn.style.cssText=`position: fixed; left: 0; top: 0; width: ${$n}px; height: ${$n}px; z-index: 9999; display: none;`,document.body.appendChild(jn);const rr=jn.getContext("2d"),mr=new Image;if(mr.onload=()=>{const{width:Xn,height:ur}=mr;let yr=$n,wn=$n,gr=0,Jn=0;Xn>ur?(wn=ur*($n/Xn),Jn=-(wn-yr)/2):(yr=Xn*($n/ur),gr=-(yr-wn)/2),rr.drawImage(mr,gr,Jn,yr,wn);const Ur=jn.toDataURL();document.body.removeChild(jn),window.URL.revokeObjectURL(mr.src),Nn(Ur)},mr.crossOrigin="anonymous",nn.type.startsWith("image/svg+xml")){const Xn=new FileReader;Xn.onload=()=>{Xn.result&&(mr.src=Xn.result)},Xn.readAsDataURL(nn)}else if(nn.type.startsWith("image/gif")){const Xn=new FileReader;Xn.onload=()=>{Xn.result&&Nn(Xn.result)},Xn.readAsDataURL(nn)}else mr.src=window.URL.createObjectURL(nn)})}var yn=Ie(26227),Hn=Ie(41464),Bn=Ie(15277),Er=Ie(93948),Fr=Ie(6848),Wr=Be.forwardRef((nn,Nn)=>{let{prefixCls:jn,className:rr,style:mr,locale:Xn,listType:ur,file:yr,items:wn,progress:gr,iconRender:Jn,actionIconRender:Ur,itemRender:Ja,isImgUrl:gi,showPreviewIcon:ui,showRemoveIcon:Hr,showDownloadIcon:wa,previewIcon:Ta,removeIcon:ua,downloadIcon:qa,onPreview:zi,onDownload:Fa,onClose:Ui}=nn;var Yi,Zr;const{status:oo}=yr,[_s,Uo]=Be.useState(oo);Be.useEffect(()=>{oo!=="removed"&&Uo(oo)},[oo]);const[Xi,Ti]=Be.useState(!1);Be.useEffect(()=>{const ho=setTimeout(()=>{Ti(!0)},300);return()=>{clearTimeout(ho)}},[]);const Jo=Jn(yr);let Ro=Be.createElement("div",{className:`${jn}-icon`},Jo);if(ur==="picture"||ur==="picture-card"||ur==="picture-circle")if(_s==="uploading"||!yr.thumbUrl&&!yr.url){const ho=Ce()(`${jn}-list-item-thumbnail`,{[`${jn}-list-item-file`]:_s!=="uploading"});Ro=Be.createElement("div",{className:ho},Jo)}else{const ho=gi!=null&&gi(yr)?Be.createElement("img",{src:yr.thumbUrl||yr.url,alt:yr.name,className:`${jn}-list-item-image`,crossOrigin:yr.crossOrigin}):Jo,po=Ce()(`${jn}-list-item-thumbnail`,{[`${jn}-list-item-file`]:gi&&!gi(yr)});Ro=Be.createElement("a",{className:po,onClick:ds=>zi(yr,ds),href:yr.url||yr.thumbUrl,target:"_blank",rel:"noopener noreferrer"},ho)}const Lo=Ce()(`${jn}-list-item`,`${jn}-list-item-${_s}`),Ts=typeof yr.linkProps=="string"?JSON.parse(yr.linkProps):yr.linkProps,Bs=Hr?Ur((typeof ua=="function"?ua(yr):ua)||Be.createElement(yn.Z,null),()=>Ui(yr),jn,Xn.removeFile):null,zr=wa&&_s==="done"?Ur((typeof qa=="function"?qa(yr):qa)||Be.createElement(Hn.Z,null),()=>Fa(yr),jn,Xn.downloadFile):null,Ir=ur!=="picture-card"&&ur!=="picture-circle"&&Be.createElement("span",{key:"download-delete",className:Ce()(`${jn}-list-item-actions`,{picture:ur==="picture"})},zr,Bs),Vr=Ce()(`${jn}-list-item-name`),Na=yr.url?[Be.createElement("a",Object.assign({key:"view",target:"_blank",rel:"noopener noreferrer",className:Vr,title:yr.name},Ts,{href:yr.url,onClick:ho=>zi(yr,ho)}),yr.name),Ir]:[Be.createElement("span",{key:"view",className:Vr,onClick:ho=>zi(yr,ho),title:yr.name},yr.name),Ir],ka={pointerEvents:"none",opacity:.5},Ai=ui?Be.createElement("a",{href:yr.url||yr.thumbUrl,target:"_blank",rel:"noopener noreferrer",style:yr.url||yr.thumbUrl?void 0:ka,onClick:ho=>zi(yr,ho),title:Xn.previewFile},typeof Ta=="function"?Ta(yr):Ta||Be.createElement(Bn.Z,null)):null,va=(ur==="picture-card"||ur==="picture-circle")&&_s!=="uploading"&&Be.createElement("span",{className:`${jn}-list-item-actions`},Ai,_s==="done"&&zr,Bs),{getPrefixCls:Ri}=Be.useContext(at.E_),pi=Ri(),xo=Be.createElement("div",{className:Lo},Ro,Na,va,Xi&&Be.createElement(Et.default,{motionName:`${pi}-fade`,visible:_s==="uploading",motionDeadline:2e3},ho=>{let{className:po}=ho;const ds="percent"in yr?Be.createElement(Er.Z,Object.assign({},gr,{type:"line",percent:yr.percent,"aria-label":yr["aria-label"],"aria-labelledby":yr["aria-labelledby"]})):null;return Be.createElement("div",{className:Ce()(`${jn}-list-item-progress`,po)},ds)})),lo=yr.response&&typeof yr.response=="string"?yr.response:((Yi=yr.error)===null||Yi===void 0?void 0:Yi.statusText)||((Zr=yr.error)===null||Zr===void 0?void 0:Zr.message)||Xn.uploadError,Bi=_s==="error"?Be.createElement(Fr.Z,{title:lo,getPopupContainer:ho=>ho.parentNode},xo):xo;return Be.createElement("div",{className:Ce()(`${jn}-list-item-container`,rr),style:mr,ref:Nn},Ja?Ja(Bi,yr,wn,{download:Fa.bind(null,yr),preview:zi.bind(null,yr),remove:Ui.bind(null,yr)}):Bi)});const Da=(nn,Nn)=>{const{listType:jn="text",previewFile:rr=Jt,onPreview:mr,onDownload:Xn,onRemove:ur,locale:yr,iconRender:wn,isImageUrl:gr=Zn,prefixCls:Jn,items:Ur=[],showPreviewIcon:Ja=!0,showRemoveIcon:gi=!0,showDownloadIcon:ui=!1,removeIcon:Hr,previewIcon:wa,downloadIcon:Ta,progress:ua={size:[-1,2],showInfo:!1},appendAction:qa,appendActionVisible:zi=!0,itemRender:Fa,disabled:Ui}=nn,Yi=(0,Zt.Z)(),[Zr,oo]=Be.useState(!1);Be.useEffect(()=>{jn!=="picture"&&jn!=="picture-card"&&jn!=="picture-circle"||(Ur||[]).forEach(ka=>{typeof document=="undefined"||typeof window=="undefined"||!window.FileReader||!window.File||!(ka.originFileObj instanceof File||ka.originFileObj instanceof Blob)||ka.thumbUrl!==void 0||(ka.thumbUrl="",rr&&rr(ka.originFileObj).then(Ai=>{ka.thumbUrl=Ai||"",Yi()}))})},[jn,Ur,rr]),Be.useEffect(()=>{oo(!0)},[]);const _s=(ka,Ai)=>{if(mr)return Ai==null||Ai.preventDefault(),mr(ka)},Uo=ka=>{typeof Xn=="function"?Xn(ka):ka.url&&window.open(ka.url)},Xi=ka=>{ur==null||ur(ka)},Ti=ka=>{if(wn)return wn(ka,jn);const Ai=ka.status==="uploading",va=gr&&gr(ka)?Be.createElement(It,null):Be.createElement(Kt,null);let Ri=Ai?Be.createElement(qt.Z,null):Be.createElement(On,null);return jn==="picture"?Ri=Ai?Be.createElement(qt.Z,null):va:(jn==="picture-card"||jn==="picture-circle")&&(Ri=Ai?yr.uploading:va),Ri},Jo=(ka,Ai,va,Ri)=>{const pi={type:"text",size:"small",title:Ri,onClick:xo=>{Ai(),(0,At.l$)(ka)&&ka.props.onClick&&ka.props.onClick(xo)},className:`${va}-list-item-action`,disabled:Ui};if((0,At.l$)(ka)){const xo=(0,At.Tm)(ka,Object.assign(Object.assign({},ka.props),{onClick:()=>{}}));return Be.createElement(Qt.ZP,Object.assign({},pi,{icon:xo}))}return Be.createElement(Qt.ZP,Object.assign({},pi),Be.createElement("span",null,ka))};Be.useImperativeHandle(Nn,()=>({handlePreview:_s,handleDownload:Uo}));const{getPrefixCls:Ro}=Be.useContext(at.E_),Lo=Ro("upload",Jn),Ts=Ro(),Bs=Ce()(`${Lo}-list`,`${Lo}-list-${jn}`),zr=(0,He.Z)(Ur.map(ka=>({key:ka.uid,file:ka})));let Vr={motionDeadline:2e3,motionName:`${Lo}-${jn==="picture-card"||jn==="picture-circle"?"animate-inline":"animate"}`,keys:zr,motionAppear:Zr};const Na=Be.useMemo(()=>{const ka=Object.assign({},(0,vt.Z)(Ts));return delete ka.onAppearEnd,delete ka.onEnterEnd,delete ka.onLeaveEnd,ka},[Ts]);return jn!=="picture-card"&&jn!=="picture-circle"&&(Vr=Object.assign(Object.assign({},Na),Vr)),Be.createElement("div",{className:Bs},Be.createElement(Et.CSSMotionList,Object.assign({},Vr,{component:!1}),ka=>{let{key:Ai,file:va,className:Ri,style:pi}=ka;return Be.createElement(Wr,{key:Ai,locale:yr,prefixCls:Lo,className:Ri,style:pi,file:va,items:Ur,progress:ua,listType:jn,isImgUrl:gr,showPreviewIcon:Ja,showRemoveIcon:gi,showDownloadIcon:ui,removeIcon:Hr,previewIcon:wa,downloadIcon:Ta,iconRender:Ti,actionIconRender:Jo,itemRender:Fa,onPreview:_s,onDownload:Uo,onClose:Xi})}),qa&&Be.createElement(Et.default,Object.assign({},Vr,{visible:zi,forceRender:!0}),ka=>{let{className:Ai,style:va}=ka;return(0,At.Tm)(qa,Ri=>({className:Ce()(Ri.className,Ai),style:Object.assign(Object.assign(Object.assign({},va),{pointerEvents:Ai?"none":void 0}),Ri.style)}))}))};var Ba=Be.forwardRef(Da),Ia=Ie(17313),Ii=Ie(8378),wi=Ie(83116),jr=Ie(37613),oi=nn=>{const{componentCls:Nn,iconCls:jn}=nn;return{[`${Nn}-wrapper`]:{[`${Nn}-drag`]:{position:"relative",width:"100%",height:"100%",textAlign:"center",background:nn.colorFillAlter,border:`${nn.lineWidth}px dashed ${nn.colorBorder}`,borderRadius:nn.borderRadiusLG,cursor:"pointer",transition:`border-color ${nn.motionDurationSlow}`,[Nn]:{padding:`${nn.padding}px 0`},[`${Nn}-btn`]:{display:"table",width:"100%",height:"100%",outline:"none"},[`${Nn}-drag-container`]:{display:"table-cell",verticalAlign:"middle"},[`&:not(${Nn}-disabled):hover`]:{borderColor:nn.colorPrimaryHover},[`p${Nn}-drag-icon`]:{marginBottom:nn.margin,[jn]:{color:nn.colorPrimary,fontSize:nn.uploadThumbnailSize}},[`p${Nn}-text`]:{margin:`0 0 ${nn.marginXXS}px`,color:nn.colorTextHeading,fontSize:nn.fontSizeLG},[`p${Nn}-hint`]:{color:nn.colorTextDescription,fontSize:nn.fontSize},[`&${Nn}-disabled`]:{cursor:"not-allowed",[`p${Nn}-drag-icon ${jn}, p${Nn}-text, p${Nn}-hint `]:{color:nn.colorTextDisabled}}}}}},vr=nn=>{const{componentCls:Nn,antCls:jn,iconCls:rr,fontSize:mr,lineHeight:Xn}=nn,ur=`${Nn}-list-item`,yr=`${ur}-actions`,wn=`${ur}-action`,gr=Math.round(mr*Xn);return{[`${Nn}-wrapper`]:{[`${Nn}-list`]:Object.assign(Object.assign({},(0,Ia.dF)()),{lineHeight:nn.lineHeight,[ur]:{position:"relative",height:nn.lineHeight*mr,marginTop:nn.marginXS,fontSize:mr,display:"flex",alignItems:"center",transition:`background-color ${nn.motionDurationSlow}`,"&:hover":{backgroundColor:nn.controlItemBgHover},[`${ur}-name`]:Object.assign(Object.assign({},Ia.vS),{padding:`0 ${nn.paddingXS}px`,lineHeight:Xn,flex:"auto",transition:`all ${nn.motionDurationSlow}`}),[yr]:{[wn]:{opacity:0},[`${wn}${jn}-btn-sm`]:{height:gr,border:0,lineHeight:1,"> span":{transform:"scale(1)"}},[` ${wn}:focus-visible, &.picture ${wn} `]:{opacity:1},[rr]:{color:nn.actionsColor,transition:`all ${nn.motionDurationSlow}`},[`&:hover ${rr}`]:{color:nn.colorText}},[`${Nn}-icon ${rr}`]:{color:nn.colorTextDescription,fontSize:mr},[`${ur}-progress`]:{position:"absolute",bottom:-nn.uploadProgressOffset,width:"100%",paddingInlineStart:mr+nn.paddingXS,fontSize:mr,lineHeight:0,pointerEvents:"none","> div":{margin:0}}},[`${ur}:hover ${wn}`]:{opacity:1,color:nn.colorText},[`${ur}-error`]:{color:nn.colorError,[`${ur}-name, ${Nn}-icon ${rr}`]:{color:nn.colorError},[yr]:{[`${rr}, ${rr}:hover`]:{color:nn.colorError},[wn]:{opacity:1}}},[`${Nn}-list-item-container`]:{transition:`opacity ${nn.motionDurationSlow}, height ${nn.motionDurationSlow}`,"&::before":{display:"table",width:0,height:0,content:'""'}}})}}},li=Ie(36237),zn=Ie(1950);const hr=new li.Keyframes("uploadAnimateInlineIn",{from:{width:0,height:0,margin:0,padding:0,opacity:0}}),Tr=new li.Keyframes("uploadAnimateInlineOut",{to:{width:0,height:0,margin:0,padding:0,opacity:0}});var fa=nn=>{const{componentCls:Nn}=nn,jn=`${Nn}-animate-inline`;return[{[`${Nn}-wrapper`]:{[`${jn}-appear, ${jn}-enter, ${jn}-leave`]:{animationDuration:nn.motionDurationSlow,animationTimingFunction:nn.motionEaseInOutCirc,animationFillMode:"forwards"},[`${jn}-appear, ${jn}-enter`]:{animationName:hr},[`${jn}-leave`]:{animationName:Tr}}},{[`${Nn}-wrapper`]:(0,zn.J$)(nn)},hr,Tr]},bt=Ie(30071),Me=Ie(64993);const Le=nn=>{const{componentCls:Nn,iconCls:jn,uploadThumbnailSize:rr,uploadProgressOffset:mr}=nn,Xn=`${Nn}-list`,ur=`${Xn}-item`;return{[`${Nn}-wrapper`]:{[` ${Xn}${Xn}-picture, ${Xn}${Xn}-picture-card, ${Xn}${Xn}-picture-circle `]:{[ur]:{position:"relative",height:rr+nn.lineWidth*2+nn.paddingXS*2,padding:nn.paddingXS,border:`${nn.lineWidth}px ${nn.lineType} ${nn.colorBorder}`,borderRadius:nn.borderRadiusLG,"&:hover":{background:"transparent"},[`${ur}-thumbnail`]:Object.assign(Object.assign({},Ia.vS),{width:rr,height:rr,lineHeight:`${rr+nn.paddingSM}px`,textAlign:"center",flex:"none",[jn]:{fontSize:nn.fontSizeHeading2,color:nn.colorPrimary},img:{display:"block",width:"100%",height:"100%",overflow:"hidden"}}),[`${ur}-progress`]:{bottom:mr,width:`calc(100% - ${nn.paddingSM*2}px)`,marginTop:0,paddingInlineStart:rr+nn.paddingXS}},[`${ur}-error`]:{borderColor:nn.colorError,[`${ur}-thumbnail ${jn}`]:{[`svg path[fill='${bt.blue[0]}']`]:{fill:nn.colorErrorBg},[`svg path[fill='${bt.blue.primary}']`]:{fill:nn.colorError}}},[`${ur}-uploading`]:{borderStyle:"dashed",[`${ur}-name`]:{marginBottom:mr}}},[`${Xn}${Xn}-picture-circle ${ur}`]:{[`&, &::before, ${ur}-thumbnail`]:{borderRadius:"50%"}}}}},Te=nn=>{const{componentCls:Nn,iconCls:jn,fontSizeLG:rr,colorTextLightSolid:mr}=nn,Xn=`${Nn}-list`,ur=`${Xn}-item`,yr=nn.uploadPicCardSize;return{[` ${Nn}-wrapper${Nn}-picture-card-wrapper, ${Nn}-wrapper${Nn}-picture-circle-wrapper `]:Object.assign(Object.assign({},(0,Ia.dF)()),{display:"inline-block",width:"100%",[`${Nn}${Nn}-select`]:{width:yr,height:yr,marginInlineEnd:nn.marginXS,marginBottom:nn.marginXS,textAlign:"center",verticalAlign:"top",backgroundColor:nn.colorFillAlter,border:`${nn.lineWidth}px dashed ${nn.colorBorder}`,borderRadius:nn.borderRadiusLG,cursor:"pointer",transition:`border-color ${nn.motionDurationSlow}`,[`> ${Nn}`]:{display:"flex",alignItems:"center",justifyContent:"center",height:"100%",textAlign:"center"},[`&:not(${Nn}-disabled):hover`]:{borderColor:nn.colorPrimary}},[`${Xn}${Xn}-picture-card, ${Xn}${Xn}-picture-circle`]:{[`${Xn}-item-container`]:{display:"inline-block",width:yr,height:yr,marginBlock:`0 ${nn.marginXS}px`,marginInline:`0 ${nn.marginXS}px`,verticalAlign:"top"},"&::after":{display:"none"},[ur]:{height:"100%",margin:0,"&::before":{position:"absolute",zIndex:1,width:`calc(100% - ${nn.paddingXS*2}px)`,height:`calc(100% - ${nn.paddingXS*2}px)`,backgroundColor:nn.colorBgMask,opacity:0,transition:`all ${nn.motionDurationSlow}`,content:'" "'}},[`${ur}:hover`]:{[`&::before, ${ur}-actions`]:{opacity:1}},[`${ur}-actions`]:{position:"absolute",insetInlineStart:0,zIndex:10,width:"100%",whiteSpace:"nowrap",textAlign:"center",opacity:0,transition:`all ${nn.motionDurationSlow}`,[`${jn}-eye, ${jn}-download, ${jn}-delete`]:{zIndex:10,width:rr,margin:`0 ${nn.marginXXS}px`,fontSize:rr,cursor:"pointer",transition:`all ${nn.motionDurationSlow}`,svg:{verticalAlign:"baseline"}}},[`${ur}-actions, ${ur}-actions:hover`]:{[`${jn}-eye, ${jn}-download, ${jn}-delete`]:{color:new Me.C(mr).setAlpha(.65).toRgbString(),"&:hover":{color:mr}}},[`${ur}-thumbnail, ${ur}-thumbnail img`]:{position:"static",display:"block",width:"100%",height:"100%",objectFit:"contain"},[`${ur}-name`]:{display:"none",textAlign:"center"},[`${ur}-file + ${ur}-name`]:{position:"absolute",bottom:nn.margin,display:"block",width:`calc(100% - ${nn.paddingXS*2}px)`},[`${ur}-uploading`]:{[`&${ur}`]:{backgroundColor:nn.colorFillAlter},[`&::before, ${jn}-eye, ${jn}-download, ${jn}-delete`]:{display:"none"}},[`${ur}-progress`]:{bottom:nn.marginXL,width:`calc(100% - ${nn.paddingXS*2}px)`,paddingInlineStart:0}}}),[`${Nn}-wrapper${Nn}-picture-circle-wrapper`]:{[`${Nn}${Nn}-select`]:{borderRadius:"50%"}}}};var Ye=nn=>{const{componentCls:Nn}=nn;return{[`${Nn}-rtl`]:{direction:"rtl"}}};const xt=nn=>{const{componentCls:Nn,colorTextDisabled:jn}=nn;return{[`${Nn}-wrapper`]:Object.assign(Object.assign({},(0,Ia.Wf)(nn)),{[Nn]:{outline:0,"input[type='file']":{cursor:"pointer"}},[`${Nn}-select`]:{display:"inline-block"},[`${Nn}-disabled`]:{color:jn,cursor:"not-allowed"}})}};var Pt=(0,wi.Z)("Upload",nn=>{const{fontSizeHeading3:Nn,fontSize:jn,lineHeight:rr,lineWidth:mr,controlHeightLG:Xn}=nn,ur=Math.round(jn*rr),yr=(0,jr.TS)(nn,{uploadThumbnailSize:Nn*2,uploadProgressOffset:ur/2+mr,uploadPicCardSize:Xn*2.55});return[xt(yr),oi(yr),Le(yr),Te(yr),vr(yr),fa(yr),Ye(yr),(0,Ii.Z)(yr)]},nn=>({actionsColor:nn.colorTextDescription})),Xt=function(nn,Nn,jn,rr){function mr(Xn){return Xn instanceof jn?Xn:new jn(function(ur){ur(Xn)})}return new(jn||(jn=Promise))(function(Xn,ur){function yr(Jn){try{gr(rr.next(Jn))}catch(Ur){ur(Ur)}}function wn(Jn){try{gr(rr.throw(Jn))}catch(Ur){ur(Ur)}}function gr(Jn){Jn.done?Xn(Jn.value):mr(Jn.value).then(yr,wn)}gr((rr=rr.apply(nn,Nn||[])).next())})};const Ht=`__LIST_IGNORE_${Date.now()}__`,mn=(nn,Nn)=>{const{fileList:jn,defaultFileList:rr,onRemove:mr,showUploadList:Xn=!0,listType:ur="text",onPreview:yr,onDownload:wn,onChange:gr,onDrop:Jn,previewFile:Ur,disabled:Ja,locale:gi,iconRender:ui,isImageUrl:Hr,progress:wa,prefixCls:Ta,className:ua,type:qa="select",children:zi,style:Fa,itemRender:Ui,maxCount:Yi,data:Zr={},multiple:oo=!1,action:_s="",accept:Uo="",supportServerRender:Xi=!0,rootClassName:Ti}=nn,Jo=Be.useContext(lt.Z),Ro=Ja!=null?Ja:Jo,[Lo,Ts]=(0,qe.Z)(rr||[],{value:jn,postState:yo=>yo!=null?yo:[]}),[Bs,zr]=Be.useState("drop"),Ir=Be.useRef(null);Be.useMemo(()=>{const yo=Date.now();(jn||[]).forEach((ko,gs)=>{!ko.uid&&!Object.isFrozen(ko)&&(ko.uid=`__AUTO__${yo}_${gs}__`)})},[jn]);const Vr=(yo,ko,gs)=>{let Po=(0,He.Z)(ko),is=!1;Yi===1?Po=Po.slice(-1):Yi&&(is=Po.length>Yi,Po=Po.slice(0,Yi)),(0,ot.flushSync)(()=>{Ts(Po)});const Hs={file:yo,fileList:Po};gs&&(Hs.event=gs),(!is||Po.some(Cs=>Cs.uid===yo.uid))&&(0,ot.flushSync)(()=>{gr==null||gr(Hs)})},Na=(yo,ko)=>Xt(void 0,void 0,void 0,function*(){const{beforeUpload:gs,transformFile:Po}=nn;let is=yo;if(gs){const Hs=yield gs(yo,ko);if(Hs===!1)return!1;if(delete yo[Ht],Hs===Ht)return Object.defineProperty(yo,Ht,{value:!0,configurable:!0}),!1;typeof Hs=="object"&&Hs&&(is=Hs)}return Po&&(is=yield Po(is)),is}),ka=yo=>{const ko=yo.filter(is=>!is.file[Ht]);if(!ko.length)return;const gs=ko.map(is=>Ft(is.file));let Po=(0,He.Z)(Lo);gs.forEach(is=>{Po=wt(is,Po)}),gs.forEach((is,Hs)=>{let Cs=is;if(ko[Hs].parsedFile)is.status="uploading";else{const{originFileObj:Ou}=is;let Pu;try{Pu=new File([Ou],Ou.name,{type:Ou.type})}catch(id){Pu=new Blob([Ou],{type:Ou.type}),Pu.name=Ou.name,Pu.lastModifiedDate=new Date,Pu.lastModified=new Date().getTime()}Pu.uid=is.uid,Cs=Pu}Vr(Cs,Po)})},Ai=(yo,ko,gs)=>{try{typeof yo=="string"&&(yo=JSON.parse(yo))}catch(Hs){}if(!ln(ko,Lo))return;const Po=Ft(ko);Po.status="done",Po.percent=100,Po.response=yo,Po.xhr=gs;const is=wt(Po,Lo);Vr(Po,is)},va=(yo,ko)=>{if(!ln(ko,Lo))return;const gs=Ft(ko);gs.status="uploading",gs.percent=yo.percent;const Po=wt(gs,Lo);Vr(gs,Po,yo)},Ri=(yo,ko,gs)=>{if(!ln(gs,Lo))return;const Po=Ft(gs);Po.error=yo,Po.response=ko,Po.status="error";const is=wt(Po,Lo);Vr(Po,is)},pi=yo=>{let ko;Promise.resolve(typeof mr=="function"?mr(yo):mr).then(gs=>{var Po;if(gs===!1)return;const is=In(yo,Lo);is&&(ko=Object.assign(Object.assign({},yo),{status:"removed"}),Lo==null||Lo.forEach(Hs=>{const Cs=ko.uid!==void 0?"uid":"name";Hs[Cs]===ko[Cs]&&!Object.isFrozen(Hs)&&(Hs.status="removed")}),(Po=Ir.current)===null||Po===void 0||Po.abort(ko),Vr(ko,is))})},xo=yo=>{zr(yo.type),yo.type==="drop"&&(Jn==null||Jn(yo))};Be.useImperativeHandle(Nn,()=>({onBatchStart:ka,onSuccess:Ai,onProgress:va,onError:Ri,fileList:Lo,upload:Ir.current}));const{getPrefixCls:lo,direction:Bi,upload:ho}=Be.useContext(at.E_),po=lo("upload",Ta),ds=Object.assign(Object.assign({onBatchStart:ka,onError:Ri,onProgress:va,onSuccess:Ai},nn),{data:Zr,multiple:oo,action:_s,accept:Uo,supportServerRender:Xi,prefixCls:po,disabled:Ro,beforeUpload:Na,onChange:void 0});delete ds.className,delete ds.style,(!zi||Ro)&&delete ds.id;const[Fo,fs]=Pt(po),[Gs]=(0,rt.Z)("Upload",ut.Z.Upload),{showRemoveIcon:Jr,showPreviewIcon:ya,showDownloadIcon:za,removeIcon:Ga,previewIcon:Hi,downloadIcon:Io}=typeof Xn=="boolean"?{}:Xn,us=(yo,ko)=>Xn?Be.createElement(Ba,{prefixCls:po,listType:ur,items:Lo,previewFile:Ur,onPreview:yr,onDownload:wn,onRemove:pi,showRemoveIcon:!Ro&&Jr,showPreviewIcon:ya,showDownloadIcon:za,removeIcon:Ga,previewIcon:Hi,downloadIcon:Io,iconRender:ui,locale:Object.assign(Object.assign({},Gs),gi),isImageUrl:Hr,progress:wa,appendAction:yo,appendActionVisible:ko,itemRender:Ui,disabled:Ro}):yo,hs=Ce()(`${po}-wrapper`,ua,Ti,fs,ho==null?void 0:ho.className,{[`${po}-rtl`]:Bi==="rtl",[`${po}-picture-card-wrapper`]:ur==="picture-card",[`${po}-picture-circle-wrapper`]:ur==="picture-circle"}),Ws=Object.assign(Object.assign({},ho==null?void 0:ho.style),Fa);if(qa==="drag"){const yo=Ce()(fs,po,`${po}-drag`,{[`${po}-drag-uploading`]:Lo.some(ko=>ko.status==="uploading"),[`${po}-drag-hover`]:Bs==="dragover",[`${po}-disabled`]:Ro,[`${po}-rtl`]:Bi==="rtl"});return Fo(Be.createElement("span",{className:hs},Be.createElement("div",{className:yo,style:Ws,onDrop:xo,onDragOver:xo,onDragLeave:xo},Be.createElement($e,Object.assign({},ds,{ref:Ir,className:`${po}-btn`}),Be.createElement("div",{className:`${po}-drag-container`},zi))),us()))}const js=Ce()(po,`${po}-select`,{[`${po}-disabled`]:Ro}),al=(yo=>Be.createElement("div",{className:js,style:yo},Be.createElement($e,Object.assign({},ds,{ref:Ir}))))(zi?void 0:{display:"none"});return Fo(ur==="picture-card"||ur==="picture-circle"?Be.createElement("span",{className:hs},us(al,!!zi)):Be.createElement("span",{className:hs},al,us()))};var Yn=Be.forwardRef(mn),Dn=function(nn,Nn){var jn={};for(var rr in nn)Object.prototype.hasOwnProperty.call(nn,rr)&&Nn.indexOf(rr)<0&&(jn[rr]=nn[rr]);if(nn!=null&&typeof Object.getOwnPropertySymbols=="function")for(var mr=0,rr=Object.getOwnPropertySymbols(nn);mr{var{style:jn,height:rr}=nn,mr=Dn(nn,["style","height"]);return Be.createElement(Yn,Object.assign({ref:Nn},mr,{type:"drag",style:Object.assign(Object.assign({},jn),{height:rr})}))});const dr=Yn;dr.Dragger=er,dr.LIST_IGNORE=Ht;var fn=dr},45411:function(St){"use strict";St.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}},75196:function(St,Dt,Ie){var Be=Ie(45411),He=Ie(81683),Fe=Object.hasOwnProperty,Ce=Object.create(null);for(var _e in Be)Fe.call(Be,_e)&&(Ce[Be[_e]]=_e);var Pe=St.exports={to:{},get:{}};Pe.get=function(be){var we=be.substring(0,3).toLowerCase(),pe,ye;switch(we){case"hsl":pe=Pe.get.hsl(be),ye="hsl";break;case"hwb":pe=Pe.get.hwb(be),ye="hwb";break;default:pe=Pe.get.rgb(be),ye="rgb";break}return pe?{model:ye,value:pe}:null},Pe.get.rgb=function(be){if(!be)return null;var we=/^#([a-f0-9]{3,4})$/i,pe=/^#([a-f0-9]{6})([a-f0-9]{2})?$/i,ye=/^rgba?\(\s*([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,xe=/^rgba?\(\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,ce=/^(\w+)$/,te=[0,0,0,1],ne,le,oe;if(ne=be.match(pe)){for(oe=ne[2],ne=ne[1],le=0;le<3;le++){var de=le*2;te[le]=parseInt(ne.slice(de,de+2),16)}oe&&(te[3]=parseInt(oe,16)/255)}else if(ne=be.match(we)){for(ne=ne[1],oe=ne[3],le=0;le<3;le++)te[le]=parseInt(ne[le]+ne[le],16);oe&&(te[3]=parseInt(oe+oe,16)/255)}else if(ne=be.match(ye)){for(le=0;le<3;le++)te[le]=parseInt(ne[le+1],0);ne[4]&&(ne[5]?te[3]=parseFloat(ne[4])*.01:te[3]=parseFloat(ne[4]))}else if(ne=be.match(xe)){for(le=0;le<3;le++)te[le]=Math.round(parseFloat(ne[le+1])*2.55);ne[4]&&(ne[5]?te[3]=parseFloat(ne[4])*.01:te[3]=parseFloat(ne[4]))}else return(ne=be.match(ce))?ne[1]==="transparent"?[0,0,0,0]:Fe.call(Be,ne[1])?(te=Be[ne[1]],te[3]=1,te):null:null;for(le=0;le<3;le++)te[le]=ge(te[le],0,255);return te[3]=ge(te[3],0,1),te},Pe.get.hsl=function(be){if(!be)return null;var we=/^hsla?\(\s*([+-]?(?:\d{0,3}\.)?\d+)(?:deg)?\s*,?\s*([+-]?[\d\.]+)%\s*,?\s*([+-]?[\d\.]+)%\s*(?:[,|\/]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/,pe=be.match(we);if(pe){var ye=parseFloat(pe[4]),xe=(parseFloat(pe[1])%360+360)%360,ce=ge(parseFloat(pe[2]),0,100),te=ge(parseFloat(pe[3]),0,100),ne=ge(isNaN(ye)?1:ye,0,1);return[xe,ce,te,ne]}return null},Pe.get.hwb=function(be){if(!be)return null;var we=/^hwb\(\s*([+-]?\d{0,3}(?:\.\d+)?)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/,pe=be.match(we);if(pe){var ye=parseFloat(pe[4]),xe=(parseFloat(pe[1])%360+360)%360,ce=ge(parseFloat(pe[2]),0,100),te=ge(parseFloat(pe[3]),0,100),ne=ge(isNaN(ye)?1:ye,0,1);return[xe,ce,te,ne]}return null},Pe.to.hex=function(){var be=He(arguments);return"#"+Ae(be[0])+Ae(be[1])+Ae(be[2])+(be[3]<1?Ae(Math.round(be[3]*255)):"")},Pe.to.rgb=function(){var be=He(arguments);return be.length<4||be[3]===1?"rgb("+Math.round(be[0])+", "+Math.round(be[1])+", "+Math.round(be[2])+")":"rgba("+Math.round(be[0])+", "+Math.round(be[1])+", "+Math.round(be[2])+", "+be[3]+")"},Pe.to.rgb.percent=function(){var be=He(arguments),we=Math.round(be[0]/255*100),pe=Math.round(be[1]/255*100),ye=Math.round(be[2]/255*100);return be.length<4||be[3]===1?"rgb("+we+"%, "+pe+"%, "+ye+"%)":"rgba("+we+"%, "+pe+"%, "+ye+"%, "+be[3]+")"},Pe.to.hsl=function(){var be=He(arguments);return be.length<4||be[3]===1?"hsl("+be[0]+", "+be[1]+"%, "+be[2]+"%)":"hsla("+be[0]+", "+be[1]+"%, "+be[2]+"%, "+be[3]+")"},Pe.to.hwb=function(){var be=He(arguments),we="";return be.length>=4&&be[3]!==1&&(we=", "+be[3]),"hwb("+be[0]+", "+be[1]+"%, "+be[2]+"%"+we+")"},Pe.to.keyword=function(be){return Ce[be.slice(0,3)]};function ge(be,we,pe){return Math.min(Math.max(we,be),pe)}function Ae(be){var we=Math.round(be).toString(16).toUpperCase();return we.length<2?"0"+we:we}},92546:function(St,Dt,Ie){St.exports={graphlib:Ie(76626),layout:Ie(47194),debug:Ie(11303),util:{time:Ie(53063).time,notime:Ie(53063).notime},version:Ie(11897)}},91626:function(St,Dt,Ie){"use strict";var Be=Ie(72361),He=Ie(39240);St.exports={run:Fe,undo:_e};function Fe(Pe){var ge=Pe.graph().acyclicer==="greedy"?He(Pe,Ae(Pe)):Ce(Pe);Be.forEach(ge,function(be){var we=Pe.edge(be);Pe.removeEdge(be),we.forwardName=be.name,we.reversed=!0,Pe.setEdge(be.w,be.v,we,Be.uniqueId("rev"))});function Ae(be){return function(we){return be.edge(we).weight}}}function Ce(Pe){var ge=[],Ae={},be={};function we(pe){Be.has(be,pe)||(be[pe]=!0,Ae[pe]=!0,Be.forEach(Pe.outEdges(pe),function(ye){Be.has(Ae,ye.w)?ge.push(ye):we(ye.w)}),delete Ae[pe])}return Be.forEach(Pe.nodes(),we),ge}function _e(Pe){Be.forEach(Pe.edges(),function(ge){var Ae=Pe.edge(ge);if(Ae.reversed){Pe.removeEdge(ge);var be=Ae.forwardName;delete Ae.reversed,delete Ae.forwardName,Pe.setEdge(ge.w,ge.v,Ae,be)}})}},60765:function(St,Dt,Ie){var Be=Ie(72361),He=Ie(53063);St.exports=Fe;function Fe(_e){function Pe(ge){var Ae=_e.children(ge),be=_e.node(ge);if(Ae.length&&Be.forEach(Ae,Pe),Be.has(be,"minRank")){be.borderLeft=[],be.borderRight=[];for(var we=be.minRank,pe=be.maxRank+1;we0;--le)if(ne=pe[le].dequeue(),ne){xe=xe.concat(ge(we,pe,ye,ne,!0));break}}}return xe}function ge(we,pe,ye,xe,ce){var te=ce?[]:void 0;return Be.forEach(we.inEdges(xe.v),function(ne){var le=we.edge(ne),oe=we.node(ne.v);ce&&te.push({v:ne.v,w:ne.w}),oe.out-=le,be(pe,ye,oe)}),Be.forEach(we.outEdges(xe.v),function(ne){var le=we.edge(ne),oe=ne.w,de=we.node(oe);de.in-=le,be(pe,ye,de)}),we.removeNode(xe.v),te}function Ae(we,pe){var ye=new He,xe=0,ce=0;Be.forEach(we.nodes(),function(le){ye.setNode(le,{v:le,in:0,out:0})}),Be.forEach(we.edges(),function(le){var oe=ye.edge(le.v,le.w)||0,de=pe(le),he=oe+de;ye.setEdge(le.v,le.w,he),ce=Math.max(ce,ye.node(le.v).out+=de),xe=Math.max(xe,ye.node(le.w).in+=de)});var te=Be.range(ce+xe+3).map(function(){return new Fe}),ne=xe+1;return Be.forEach(ye.nodes(),function(le){be(te,ne,ye.node(le))}),{graph:ye,buckets:te,zeroIdx:ne}}function be(we,pe,ye){ye.out?ye.in?we[ye.out-ye.in+pe].enqueue(ye):we[we.length-1].enqueue(ye):we[0].enqueue(ye)}},47194:function(St,Dt,Ie){"use strict";var Be=Ie(72361),He=Ie(91626),Fe=Ie(27163),Ce=Ie(64505),_e=Ie(53063).normalizeRanks,Pe=Ie(71970),ge=Ie(53063).removeEmptyRanks,Ae=Ie(31733),be=Ie(60765),we=Ie(13257),pe=Ie(62852),ye=Ie(93021),xe=Ie(53063),ce=Ie(76626).Graph;St.exports=te;function te(ft,dt){var ht=dt&&dt.debugTiming?xe.time:xe.notime;ht("layout",function(){var Ut=ht(" buildLayoutGraph",function(){return Re(ft)});ht(" runLayout",function(){ne(Ut,ht)}),ht(" updateInputGraph",function(){le(ft,Ut)})})}function ne(ft,dt){dt(" makeSpaceForEdgeLabels",function(){Ne(ft)}),dt(" removeSelfEdges",function(){at(ft)}),dt(" acyclic",function(){He.run(ft)}),dt(" nestingGraph.run",function(){Ae.run(ft)}),dt(" rank",function(){Ce(xe.asNonCompoundGraph(ft))}),dt(" injectEdgeLabelProxies",function(){ze(ft)}),dt(" removeEmptyRanks",function(){ge(ft)}),dt(" nestingGraph.cleanup",function(){Ae.cleanup(ft)}),dt(" normalizeRanks",function(){_e(ft)}),dt(" assignRankMinMax",function(){Ge(ft)}),dt(" removeEdgeLabelProxies",function(){Xe(ft)}),dt(" normalize.run",function(){Fe.run(ft)}),dt(" parentDummyChains",function(){Pe(ft)}),dt(" addBorderSegments",function(){be(ft)}),dt(" order",function(){pe(ft)}),dt(" insertSelfEdges",function(){lt(ft)}),dt(" adjustCoordinateSystem",function(){we.adjust(ft)}),dt(" position",function(){ye(ft)}),dt(" positionSelfEdges",function(){rt(ft)}),dt(" removeBorderNodes",function(){ot(ft)}),dt(" normalize.undo",function(){Fe.undo(ft)}),dt(" fixupEdgeLabelCoords",function(){$e(ft)}),dt(" undoCoordinateSystem",function(){we.undo(ft)}),dt(" translateGraph",function(){Qe(ft)}),dt(" assignNodeIntersects",function(){nt(ft)}),dt(" reversePoints",function(){qe(ft)}),dt(" acyclic.undo",function(){He.undo(ft)})}function le(ft,dt){Be.forEach(ft.nodes(),function(ht){var Ut=ft.node(ht),Kt=dt.node(ht);Ut&&(Ut.x=Kt.x,Ut.y=Kt.y,dt.children(ht).length&&(Ut.width=Kt.width,Ut.height=Kt.height))}),Be.forEach(ft.edges(),function(ht){var Ut=ft.edge(ht),Kt=dt.edge(ht);Ut.points=Kt.points,Be.has(Kt,"x")&&(Ut.x=Kt.x,Ut.y=Kt.y)}),ft.graph().width=dt.graph().width,ft.graph().height=dt.graph().height}var oe=["nodesep","edgesep","ranksep","marginx","marginy"],de={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},he=["acyclicer","ranker","rankdir","align"],ie=["width","height"],ue={width:0,height:0},ve=["minlen","weight","width","height","labeloffset"],Se={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},De=["labelpos"];function Re(ft){var dt=new ce({multigraph:!0,compound:!0}),ht=yt(ft.graph());return dt.setGraph(Be.merge({},de,ut(ht,oe),Be.pick(ht,he))),Be.forEach(ft.nodes(),function(Ut){var Kt=yt(ft.node(Ut));dt.setNode(Ut,Be.defaults(ut(Kt,ie),ue)),dt.setParent(Ut,ft.parent(Ut))}),Be.forEach(ft.edges(),function(Ut){var Kt=yt(ft.edge(Ut));dt.setEdge(Ut,Be.merge({},Se,ut(Kt,ve),Be.pick(Kt,De)))}),dt}function Ne(ft){var dt=ft.graph();dt.ranksep/=2,Be.forEach(ft.edges(),function(ht){var Ut=ft.edge(ht);Ut.minlen*=2,Ut.labelpos.toLowerCase()!=="c"&&(dt.rankdir==="TB"||dt.rankdir==="BT"?Ut.width+=Ut.labeloffset:Ut.height+=Ut.labeloffset)})}function ze(ft){Be.forEach(ft.edges(),function(dt){var ht=ft.edge(dt);if(ht.width&&ht.height){var Ut=ft.node(dt.v),Kt=ft.node(dt.w),qt={rank:(Kt.rank-Ut.rank)/2+Ut.rank,e:dt};xe.addDummyNode(ft,"edge-proxy",qt,"_ep")}})}function Ge(ft){var dt=0;Be.forEach(ft.nodes(),function(ht){var Ut=ft.node(ht);Ut.borderTop&&(Ut.minRank=ft.node(Ut.borderTop).rank,Ut.maxRank=ft.node(Ut.borderBottom).rank,dt=Be.max(dt,Ut.maxRank))}),ft.graph().maxRank=dt}function Xe(ft){Be.forEach(ft.nodes(),function(dt){var ht=ft.node(dt);ht.dummy==="edge-proxy"&&(ft.edge(ht.e).labelRank=ht.rank,ft.removeNode(dt))})}function Qe(ft){var dt=Number.POSITIVE_INFINITY,ht=0,Ut=Number.POSITIVE_INFINITY,Kt=0,qt=ft.graph(),vn=qt.marginx||0,Ot=qt.marginy||0;function rn(an){var On=an.x,Rn=an.y,sn=an.width,tn=an.height;dt=Math.min(dt,On-sn/2),ht=Math.max(ht,On+sn/2),Ut=Math.min(Ut,Rn-tn/2),Kt=Math.max(Kt,Rn+tn/2)}Be.forEach(ft.nodes(),function(an){rn(ft.node(an))}),Be.forEach(ft.edges(),function(an){var On=ft.edge(an);Be.has(On,"x")&&rn(On)}),dt-=vn,Ut-=Ot,Be.forEach(ft.nodes(),function(an){var On=ft.node(an);On.x-=dt,On.y-=Ut}),Be.forEach(ft.edges(),function(an){var On=ft.edge(an);Be.forEach(On.points,function(Rn){Rn.x-=dt,Rn.y-=Ut}),Be.has(On,"x")&&(On.x-=dt),Be.has(On,"y")&&(On.y-=Ut)}),qt.width=ht-dt+vn,qt.height=Kt-Ut+Ot}function nt(ft){Be.forEach(ft.edges(),function(dt){var ht=ft.edge(dt),Ut=ft.node(dt.v),Kt=ft.node(dt.w),qt,vn;ht.points?(qt=ht.points[0],vn=ht.points[ht.points.length-1]):(ht.points=[],qt=Kt,vn=Ut),ht.points.unshift(xe.intersectRect(Ut,qt)),ht.points.push(xe.intersectRect(Kt,vn))})}function $e(ft){Be.forEach(ft.edges(),function(dt){var ht=ft.edge(dt);if(Be.has(ht,"x"))switch((ht.labelpos==="l"||ht.labelpos==="r")&&(ht.width-=ht.labeloffset),ht.labelpos){case"l":ht.x-=ht.width/2+ht.labeloffset;break;case"r":ht.x+=ht.width/2+ht.labeloffset;break}})}function qe(ft){Be.forEach(ft.edges(),function(dt){var ht=ft.edge(dt);ht.reversed&&ht.points.reverse()})}function ot(ft){Be.forEach(ft.nodes(),function(dt){if(ft.children(dt).length){var ht=ft.node(dt),Ut=ft.node(ht.borderTop),Kt=ft.node(ht.borderBottom),qt=ft.node(Be.last(ht.borderLeft)),vn=ft.node(Be.last(ht.borderRight));ht.width=Math.abs(vn.x-qt.x),ht.height=Math.abs(Kt.y-Ut.y),ht.x=qt.x+ht.width/2,ht.y=Ut.y+ht.height/2}}),Be.forEach(ft.nodes(),function(dt){ft.node(dt).dummy==="border"&&ft.removeNode(dt)})}function at(ft){Be.forEach(ft.edges(),function(dt){if(dt.v===dt.w){var ht=ft.node(dt.v);ht.selfEdges||(ht.selfEdges=[]),ht.selfEdges.push({e:dt,label:ft.edge(dt)}),ft.removeEdge(dt)}})}function lt(ft){var dt=xe.buildLayerMatrix(ft);Be.forEach(dt,function(ht){var Ut=0;Be.forEach(ht,function(Kt,qt){var vn=ft.node(Kt);vn.order=qt+Ut,Be.forEach(vn.selfEdges,function(Ot){xe.addDummyNode(ft,"selfedge",{width:Ot.label.width,height:Ot.label.height,rank:vn.rank,order:qt+ ++Ut,e:Ot.e,label:Ot.label},"_se")}),delete vn.selfEdges})})}function rt(ft){Be.forEach(ft.nodes(),function(dt){var ht=ft.node(dt);if(ht.dummy==="selfedge"){var Ut=ft.node(ht.e.v),Kt=Ut.x+Ut.width/2,qt=Ut.y,vn=ht.x-Kt,Ot=Ut.height/2;ft.setEdge(ht.e,ht.label),ft.removeNode(dt),ht.label.points=[{x:Kt+2*vn/3,y:qt-Ot},{x:Kt+5*vn/6,y:qt-Ot},{x:Kt+vn,y:qt},{x:Kt+5*vn/6,y:qt+Ot},{x:Kt+2*vn/3,y:qt+Ot}],ht.label.x=ht.x,ht.label.y=ht.y}})}function ut(ft,dt){return Be.mapValues(Be.pick(ft,dt),Number)}function yt(ft){var dt={};return Be.forEach(ft,function(ht,Ut){dt[Ut.toLowerCase()]=ht}),dt}},72361:function(St,Dt,Ie){var Be;try{Be={cloneDeep:Ie(20250),constant:Ie(13503),defaults:Ie(28548),each:Ie(76934),filter:Ie(64725),find:Ie(79785),flatten:Ie(40151),forEach:Ie(99204),forIn:Ie(23190),has:Ie(99946),isUndefined:Ie(16513),last:Ie(10611),map:Ie(9924),mapValues:Ie(70642),max:Ie(95987),merge:Ie(28440),min:Ie(73376),minBy:Ie(83296),now:Ie(5795),pick:Ie(89409),range:Ie(60859),reduce:Ie(16473),sortBy:Ie(351),uniqueId:Ie(95708),values:Ie(81229),zipObject:Ie(65441)}}catch(He){}Be||(Be=window._),St.exports=Be},31733:function(St,Dt,Ie){var Be=Ie(72361),He=Ie(53063);St.exports={run:Fe,cleanup:ge};function Fe(Ae){var be=He.addDummyNode(Ae,"root",{},"_root"),we=_e(Ae),pe=Be.max(Be.values(we))-1,ye=2*pe+1;Ae.graph().nestingRoot=be,Be.forEach(Ae.edges(),function(ce){Ae.edge(ce).minlen*=ye});var xe=Pe(Ae)+1;Be.forEach(Ae.children(),function(ce){Ce(Ae,be,ye,xe,pe,we,ce)}),Ae.graph().nodeRankFactor=ye}function Ce(Ae,be,we,pe,ye,xe,ce){var te=Ae.children(ce);if(!te.length){ce!==be&&Ae.setEdge(be,ce,{weight:0,minlen:we});return}var ne=He.addBorderNode(Ae,"_bt"),le=He.addBorderNode(Ae,"_bb"),oe=Ae.node(ce);Ae.setParent(ne,ce),oe.borderTop=ne,Ae.setParent(le,ce),oe.borderBottom=le,Be.forEach(te,function(de){Ce(Ae,be,we,pe,ye,xe,de);var he=Ae.node(de),ie=he.borderTop?he.borderTop:de,ue=he.borderBottom?he.borderBottom:de,ve=he.borderTop?pe:2*pe,Se=ie!==ue?1:ye-xe[ce]+1;Ae.setEdge(ne,ie,{weight:ve,minlen:Se,nestingEdge:!0}),Ae.setEdge(ue,le,{weight:ve,minlen:Se,nestingEdge:!0})}),Ae.parent(ce)||Ae.setEdge(be,ne,{weight:0,minlen:ye+xe[ce]})}function _e(Ae){var be={};function we(pe,ye){var xe=Ae.children(pe);xe&&xe.length&&Be.forEach(xe,function(ce){we(ce,ye+1)}),be[pe]=ye}return Be.forEach(Ae.children(),function(pe){we(pe,1)}),be}function Pe(Ae){return Be.reduce(Ae.edges(),function(be,we){return be+Ae.edge(we).weight},0)}function ge(Ae){var be=Ae.graph();Ae.removeNode(be.nestingRoot),delete be.nestingRoot,Be.forEach(Ae.edges(),function(we){var pe=Ae.edge(we);pe.nestingEdge&&Ae.removeEdge(we)})}},27163:function(St,Dt,Ie){"use strict";var Be=Ie(72361),He=Ie(53063);St.exports={run:Fe,undo:_e};function Fe(Pe){Pe.graph().dummyChains=[],Be.forEach(Pe.edges(),function(ge){Ce(Pe,ge)})}function Ce(Pe,ge){var Ae=ge.v,be=Pe.node(Ae).rank,we=ge.w,pe=Pe.node(we).rank,ye=ge.name,xe=Pe.edge(ge),ce=xe.labelRank;if(pe!==be+1){Pe.removeEdge(ge);var te,ne,le;for(le=0,++be;be0;)ce%2&&(te+=pe[ce+1]),ce=ce-1>>1,pe[ce]+=xe.weight;ye+=xe.weight*te})),ye}},62852:function(St,Dt,Ie){"use strict";var Be=Ie(72361),He=Ie(18043),Fe=Ie(45456),Ce=Ie(86490),_e=Ie(59105),Pe=Ie(52205),ge=Ie(76626).Graph,Ae=Ie(53063);St.exports=be;function be(xe){var ce=Ae.maxRank(xe),te=we(xe,Be.range(1,ce+1),"inEdges"),ne=we(xe,Be.range(ce-1,-1,-1),"outEdges"),le=He(xe);ye(xe,le);for(var oe=Number.POSITIVE_INFINITY,de,he=0,ie=0;ie<4;++he,++ie){pe(he%2?te:ne,he%4>=2),le=Ae.buildLayerMatrix(xe);var ue=Fe(xe,le);ue=we.barycenter)&&Ce(we,pe)}}function Ae(we){return function(pe){pe.in.push(we),--pe.indegree===0&&_e.push(pe)}}for(;_e.length;){var be=_e.pop();Pe.push(be),Be.forEach(be.in.reverse(),ge(be)),Be.forEach(be.out,Ae(be))}return Be.map(Be.filter(Pe,function(we){return!we.merged}),function(we){return Be.pick(we,["vs","i","barycenter","weight"])})}function Ce(_e,Pe){var ge=0,Ae=0;_e.weight&&(ge+=_e.barycenter*_e.weight,Ae+=_e.weight),Pe.weight&&(ge+=Pe.barycenter*Pe.weight,Ae+=Pe.weight),_e.vs=Pe.vs.concat(_e.vs),_e.barycenter=ge/Ae,_e.weight=Ae,_e.i=Math.min(Pe.i,_e.i),Pe.merged=!0}},86490:function(St,Dt,Ie){var Be=Ie(72361),He=Ie(99506),Fe=Ie(45926),Ce=Ie(1349);St.exports=_e;function _e(Ae,be,we,pe){var ye=Ae.children(be),xe=Ae.node(be),ce=xe?xe.borderLeft:void 0,te=xe?xe.borderRight:void 0,ne={};ce&&(ye=Be.filter(ye,function(ue){return ue!==ce&&ue!==te}));var le=He(Ae,ye);Be.forEach(le,function(ue){if(Ae.children(ue.v).length){var ve=_e(Ae,ue.v,we,pe);ne[ue.v]=ve,Be.has(ve,"barycenter")&&ge(ue,ve)}});var oe=Fe(le,we);Pe(oe,ne);var de=Ce(oe,pe);if(ce&&(de.vs=Be.flatten([ce,de.vs,te],!0),Ae.predecessors(ce).length)){var he=Ae.node(Ae.predecessors(ce)[0]),ie=Ae.node(Ae.predecessors(te)[0]);Be.has(de,"barycenter")||(de.barycenter=0,de.weight=0),de.barycenter=(de.barycenter*de.weight+he.order+ie.order)/(de.weight+2),de.weight+=2}return de}function Pe(Ae,be){Be.forEach(Ae,function(we){we.vs=Be.flatten(we.vs.map(function(pe){return be[pe]?be[pe].vs:pe}),!0)})}function ge(Ae,be){Be.isUndefined(Ae.barycenter)?(Ae.barycenter=be.barycenter,Ae.weight=be.weight):(Ae.barycenter=(Ae.barycenter*Ae.weight+be.barycenter*be.weight)/(Ae.weight+be.weight),Ae.weight+=be.weight)}},1349:function(St,Dt,Ie){var Be=Ie(72361),He=Ie(53063);St.exports=Fe;function Fe(Pe,ge){var Ae=He.partition(Pe,function(ne){return Be.has(ne,"barycenter")}),be=Ae.lhs,we=Be.sortBy(Ae.rhs,function(ne){return-ne.i}),pe=[],ye=0,xe=0,ce=0;be.sort(_e(!!ge)),ce=Ce(pe,we,ce),Be.forEach(be,function(ne){ce+=ne.vs.length,pe.push(ne.vs),ye+=ne.barycenter*ne.weight,xe+=ne.weight,ce=Ce(pe,we,ce)});var te={vs:Be.flatten(pe,!0)};return xe&&(te.barycenter=ye/xe,te.weight=xe),te}function Ce(Pe,ge,Ae){for(var be;ge.length&&(be=Be.last(ge)).i<=Ae;)ge.pop(),Pe.push(be.vs),Ae++;return Ae}function _e(Pe){return function(ge,Ae){return ge.barycenterAe.barycenter?1:Pe?Ae.i-ge.i:ge.i-Ae.i}}},71970:function(St,Dt,Ie){var Be=Ie(72361);St.exports=He;function He(_e){var Pe=Ce(_e);Be.forEach(_e.graph().dummyChains,function(ge){for(var Ae=_e.node(ge),be=Ae.edgeObj,we=Fe(_e,Pe,be.v,be.w),pe=we.path,ye=we.lca,xe=0,ce=pe[xe],te=!0;ge!==be.w;){if(Ae=_e.node(ge),te){for(;(ce=pe[xe])!==ye&&_e.node(ce).maxRankpe||ye>Pe[xe].lim));for(ce=xe,xe=Ae;(xe=_e.parent(xe))!==ce;)we.push(xe);return{path:be.concat(we.reverse()),lca:ce}}function Ce(_e){var Pe={},ge=0;function Ae(be){var we=ge;Be.forEach(_e.children(be),Ae),Pe[be]={low:we,lim:ge++}}return Be.forEach(_e.children(),Ae),Pe}},92080:function(St,Dt,Ie){"use strict";var Be=Ie(72361),He=Ie(76626).Graph,Fe=Ie(53063);St.exports={positionX:te,findType1Conflicts:Ce,findType2Conflicts:_e,addConflict:ge,hasConflict:Ae,verticalAlignment:be,horizontalCompaction:we,alignCoordinates:xe,findSmallestWidthAlignment:ye,balance:ce};function Ce(oe,de){var he={};function ie(ue,ve){var Se=0,De=0,Re=ue.length,Ne=Be.last(ve);return Be.forEach(ve,function(ze,Ge){var Xe=Pe(oe,ze),Qe=Xe?oe.node(Xe).order:Re;(Xe||ze===Ne)&&(Be.forEach(ve.slice(De,Ge+1),function(nt){Be.forEach(oe.predecessors(nt),function($e){var qe=oe.node($e),ot=qe.order;(otNe)&&ge(he,Xe,ze)})})}function ue(ve,Se){var De=-1,Re,Ne=0;return Be.forEach(Se,function(ze,Ge){if(oe.node(ze).dummy==="border"){var Xe=oe.predecessors(ze);Xe.length&&(Re=oe.node(Xe[0]).order,ie(Se,Ne,Ge,De,Re),Ne=Ge,De=Re)}ie(Se,Ne,Se.length,Re,ve.length)}),Se}return Be.reduce(de,ue),he}function Pe(oe,de){if(oe.node(de).dummy)return Be.find(oe.predecessors(de),function(he){return oe.node(he).dummy})}function ge(oe,de,he){if(de>he){var ie=de;de=he,he=ie}var ue=oe[de];ue||(oe[de]=ue={}),ue[he]=!0}function Ae(oe,de,he){if(de>he){var ie=de;de=he,he=ie}return Be.has(oe[de],he)}function be(oe,de,he,ie){var ue={},ve={},Se={};return Be.forEach(de,function(De){Be.forEach(De,function(Re,Ne){ue[Re]=Re,ve[Re]=Re,Se[Re]=Ne})}),Be.forEach(de,function(De){var Re=-1;Be.forEach(De,function(Ne){var ze=ie(Ne);if(ze.length){ze=Be.sortBy(ze,function($e){return Se[$e]});for(var Ge=(ze.length-1)/2,Xe=Math.floor(Ge),Qe=Math.ceil(Ge);Xe<=Qe;++Xe){var nt=ze[Xe];ve[Ne]===Ne&&ReRe.lim&&(Ne=Re,ze=!0);var Ge=Be.filter(ie.edges(),function(Xe){return ze===de(he,he.node(Xe.v),Ne)&&ze!==de(he,he.node(Xe.w),Ne)});return Be.minBy(Ge,function(Xe){return Fe(ie,Xe)})}function ne(he,ie,ue,ve){var Se=ue.v,De=ue.w;he.removeEdge(Se,De),he.setEdge(ve.v,ve.w,{}),ye(he),be(he,ie),le(he,ie)}function le(he,ie){var ue=Be.find(he.nodes(),function(Se){return!ie.node(Se).parent}),ve=_e(he,ue);ve=ve.slice(1),Be.forEach(ve,function(Se){var De=he.node(Se).parent,Re=ie.edge(Se,De),Ne=!1;Re||(Re=ie.edge(De,Se),Ne=!0),ie.node(Se).rank=ie.node(De).rank+(Ne?Re.minlen:-Re.minlen)})}function oe(he,ie,ue){return he.hasEdge(ie,ue)}function de(he,ie,ue){return ue.low<=ie.lim&&ie.lim<=ue.lim}},2416:function(St,Dt,Ie){"use strict";var Be=Ie(72361);St.exports={longestPath:He,slack:Fe};function He(Ce){var _e={};function Pe(ge){var Ae=Ce.node(ge);if(Be.has(_e,ge))return Ae.rank;_e[ge]=!0;var be=Be.min(Be.map(Ce.outEdges(ge),function(we){return Pe(we.w)-Ce.edge(we).minlen}));return(be===Number.POSITIVE_INFINITY||be===void 0||be===null)&&(be=0),Ae.rank=be}Be.forEach(Ce.sources(),Pe)}function Fe(Ce,_e){return Ce.node(_e.w).rank-Ce.node(_e.v).rank-Ce.edge(_e).minlen}},53063:function(St,Dt,Ie){"use strict";var Be=Ie(72361),He=Ie(76626).Graph;St.exports={addDummyNode:Fe,simplify:Ce,asNonCompoundGraph:_e,successorWeights:Pe,predecessorWeights:ge,intersectRect:Ae,buildLayerMatrix:be,normalizeRanks:we,removeEmptyRanks:pe,addBorderNode:ye,maxRank:xe,partition:ce,time:te,notime:ne};function Fe(le,oe,de,he){var ie;do ie=Be.uniqueId(he);while(le.hasNode(ie));return de.dummy=oe,le.setNode(ie,de),ie}function Ce(le){var oe=new He().setGraph(le.graph());return Be.forEach(le.nodes(),function(de){oe.setNode(de,le.node(de))}),Be.forEach(le.edges(),function(de){var he=oe.edge(de.v,de.w)||{weight:0,minlen:1},ie=le.edge(de);oe.setEdge(de.v,de.w,{weight:he.weight+ie.weight,minlen:Math.max(he.minlen,ie.minlen)})}),oe}function _e(le){var oe=new He({multigraph:le.isMultigraph()}).setGraph(le.graph());return Be.forEach(le.nodes(),function(de){le.children(de).length||oe.setNode(de,le.node(de))}),Be.forEach(le.edges(),function(de){oe.setEdge(de,le.edge(de))}),oe}function Pe(le){var oe=Be.map(le.nodes(),function(de){var he={};return Be.forEach(le.outEdges(de),function(ie){he[ie.w]=(he[ie.w]||0)+le.edge(ie).weight}),he});return Be.zipObject(le.nodes(),oe)}function ge(le){var oe=Be.map(le.nodes(),function(de){var he={};return Be.forEach(le.inEdges(de),function(ie){he[ie.v]=(he[ie.v]||0)+le.edge(ie).weight}),he});return Be.zipObject(le.nodes(),oe)}function Ae(le,oe){var de=le.x,he=le.y,ie=oe.x-de,ue=oe.y-he,ve=le.width/2,Se=le.height/2;if(!ie&&!ue)throw new Error("Not possible to find intersection inside of the rectangle");var De,Re;return Math.abs(ue)*ve>Math.abs(ie)*Se?(ue<0&&(Se=-Se),De=Se*ie/ue,Re=Se):(ie<0&&(ve=-ve),De=ve,Re=ve*ue/ie),{x:de+De,y:he+Re}}function be(le){var oe=Be.map(Be.range(xe(le)+1),function(){return[]});return Be.forEach(le.nodes(),function(de){var he=le.node(de),ie=he.rank;Be.isUndefined(ie)||(oe[ie][he.order]=de)}),oe}function we(le){var oe=Be.min(Be.map(le.nodes(),function(de){return le.node(de).rank}));Be.forEach(le.nodes(),function(de){var he=le.node(de);Be.has(he,"rank")&&(he.rank-=oe)})}function pe(le){var oe=Be.min(Be.map(le.nodes(),function(ue){return le.node(ue).rank})),de=[];Be.forEach(le.nodes(),function(ue){var ve=le.node(ue).rank-oe;de[ve]||(de[ve]=[]),de[ve].push(ue)});var he=0,ie=le.graph().nodeRankFactor;Be.forEach(de,function(ue,ve){Be.isUndefined(ue)&&ve%ie!==0?--he:he&&Be.forEach(ue,function(Se){le.node(Se).rank+=he})})}function ye(le,oe,de,he){var ie={width:0,height:0};return arguments.length>=4&&(ie.rank=de,ie.order=he),Fe(le,"border",ie,oe)}function xe(le){return Be.max(Be.map(le.nodes(),function(oe){var de=le.node(oe).rank;if(!Be.isUndefined(de))return de}))}function ce(le,oe){var de={lhs:[],rhs:[]};return Be.forEach(le,function(he){oe(he)?de.lhs.push(he):de.rhs.push(he)}),de}function te(le,oe){var de=Be.now();try{return oe()}finally{console.log(le+" time: "+(Be.now()-de)+"ms")}}function ne(le,oe){return oe()}},11897:function(St){St.exports="0.8.5"},97774:function(St,Dt,Ie){"use strict";Object.defineProperty(Dt,"__esModule",{value:!0}),Dt.default=void 0;var Be=Object.assign||function(ne){for(var le=1;le0&&(De=1/Math.sqrt(De),ie[0]=ue[0]*De,ie[1]=ue[1]*De),ie},xe.dot=function(ie,ue){return ie[0]*ue[0]+ie[1]*ue[1]},xe.cross=function(ie,ue,ve){var Se=ue[0]*ve[1]-ue[1]*ve[0];return ie[0]=ie[1]=0,ie[2]=Se,ie},xe.lerp=function(ie,ue,ve,Se){var De=ue[0],Re=ue[1];return ie[0]=De+Se*(ve[0]-De),ie[1]=Re+Se*(ve[1]-Re),ie},xe.random=function(ie,ue){ue=ue||1;var ve=we()*2*Math.PI;return ie[0]=Math.cos(ve)*ue,ie[1]=Math.sin(ve)*ue,ie},xe.transformMat2=function(ie,ue,ve){var Se=ue[0],De=ue[1];return ie[0]=ve[0]*Se+ve[2]*De,ie[1]=ve[1]*Se+ve[3]*De,ie},xe.transformMat2d=function(ie,ue,ve){var Se=ue[0],De=ue[1];return ie[0]=ve[0]*Se+ve[2]*De+ve[4],ie[1]=ve[1]*Se+ve[3]*De+ve[5],ie},xe.transformMat3=function(ie,ue,ve){var Se=ue[0],De=ue[1];return ie[0]=ve[0]*Se+ve[3]*De+ve[6],ie[1]=ve[1]*Se+ve[4]*De+ve[7],ie},xe.transformMat4=function(ie,ue,ve){var Se=ue[0],De=ue[1];return ie[0]=ve[0]*Se+ve[4]*De+ve[12],ie[1]=ve[1]*Se+ve[5]*De+ve[13],ie},xe.forEach=function(){var ie=xe.create();return function(ue,ve,Se,De,Re,Ne){var ze,Ge;for(ve||(ve=2),Se||(Se=0),De?Ge=Math.min(De*ve+Se,ue.length):Ge=ue.length,ze=Se;ze0&&(Re=1/Math.sqrt(Re),ie[0]=ue[0]*Re,ie[1]=ue[1]*Re,ie[2]=ue[2]*Re),ie},ce.dot=function(ie,ue){return ie[0]*ue[0]+ie[1]*ue[1]+ie[2]*ue[2]},ce.cross=function(ie,ue,ve){var Se=ue[0],De=ue[1],Re=ue[2],Ne=ve[0],ze=ve[1],Ge=ve[2];return ie[0]=De*Ge-Re*ze,ie[1]=Re*Ne-Se*Ge,ie[2]=Se*ze-De*Ne,ie},ce.lerp=function(ie,ue,ve,Se){var De=ue[0],Re=ue[1],Ne=ue[2];return ie[0]=De+Se*(ve[0]-De),ie[1]=Re+Se*(ve[1]-Re),ie[2]=Ne+Se*(ve[2]-Ne),ie},ce.random=function(ie,ue){ue=ue||1;var ve=we()*2*Math.PI,Se=we()*2-1,De=Math.sqrt(1-Se*Se)*ue;return ie[0]=Math.cos(ve)*De,ie[1]=Math.sin(ve)*De,ie[2]=Se*ue,ie},ce.transformMat4=function(ie,ue,ve){var Se=ue[0],De=ue[1],Re=ue[2],Ne=ve[3]*Se+ve[7]*De+ve[11]*Re+ve[15];return Ne=Ne||1,ie[0]=(ve[0]*Se+ve[4]*De+ve[8]*Re+ve[12])/Ne,ie[1]=(ve[1]*Se+ve[5]*De+ve[9]*Re+ve[13])/Ne,ie[2]=(ve[2]*Se+ve[6]*De+ve[10]*Re+ve[14])/Ne,ie},ce.transformMat3=function(ie,ue,ve){var Se=ue[0],De=ue[1],Re=ue[2];return ie[0]=Se*ve[0]+De*ve[3]+Re*ve[6],ie[1]=Se*ve[1]+De*ve[4]+Re*ve[7],ie[2]=Se*ve[2]+De*ve[5]+Re*ve[8],ie},ce.transformQuat=function(ie,ue,ve){var Se=ue[0],De=ue[1],Re=ue[2],Ne=ve[0],ze=ve[1],Ge=ve[2],Xe=ve[3],Qe=Xe*Se+ze*Re-Ge*De,nt=Xe*De+Ge*Se-Ne*Re,$e=Xe*Re+Ne*De-ze*Se,qe=-Ne*Se-ze*De-Ge*Re;return ie[0]=Qe*Xe+qe*-Ne+nt*-Ge-$e*-ze,ie[1]=nt*Xe+qe*-ze+$e*-Ne-Qe*-Ge,ie[2]=$e*Xe+qe*-Ge+Qe*-ze-nt*-Ne,ie},ce.rotateX=function(ie,ue,ve,Se){var De=[],Re=[];return De[0]=ue[0]-ve[0],De[1]=ue[1]-ve[1],De[2]=ue[2]-ve[2],Re[0]=De[0],Re[1]=De[1]*Math.cos(Se)-De[2]*Math.sin(Se),Re[2]=De[1]*Math.sin(Se)+De[2]*Math.cos(Se),ie[0]=Re[0]+ve[0],ie[1]=Re[1]+ve[1],ie[2]=Re[2]+ve[2],ie},ce.rotateY=function(ie,ue,ve,Se){var De=[],Re=[];return De[0]=ue[0]-ve[0],De[1]=ue[1]-ve[1],De[2]=ue[2]-ve[2],Re[0]=De[2]*Math.sin(Se)+De[0]*Math.cos(Se),Re[1]=De[1],Re[2]=De[2]*Math.cos(Se)-De[0]*Math.sin(Se),ie[0]=Re[0]+ve[0],ie[1]=Re[1]+ve[1],ie[2]=Re[2]+ve[2],ie},ce.rotateZ=function(ie,ue,ve,Se){var De=[],Re=[];return De[0]=ue[0]-ve[0],De[1]=ue[1]-ve[1],De[2]=ue[2]-ve[2],Re[0]=De[0]*Math.cos(Se)-De[1]*Math.sin(Se),Re[1]=De[0]*Math.sin(Se)+De[1]*Math.cos(Se),Re[2]=De[2],ie[0]=Re[0]+ve[0],ie[1]=Re[1]+ve[1],ie[2]=Re[2]+ve[2],ie},ce.forEach=function(){var ie=ce.create();return function(ue,ve,Se,De,Re,Ne){var ze,Ge;for(ve||(ve=3),Se||(Se=0),De?Ge=Math.min(De*ve+Se,ue.length):Ge=ue.length,ze=Se;ze1?0:Math.acos(De)},ce.str=function(ie){return"vec3("+ie[0]+", "+ie[1]+", "+ie[2]+")"},typeof ge!="undefined"&&(ge.vec3=ce);var te={};te.create=function(){var ie=new be(4);return ie[0]=0,ie[1]=0,ie[2]=0,ie[3]=0,ie},te.clone=function(ie){var ue=new be(4);return ue[0]=ie[0],ue[1]=ie[1],ue[2]=ie[2],ue[3]=ie[3],ue},te.fromValues=function(ie,ue,ve,Se){var De=new be(4);return De[0]=ie,De[1]=ue,De[2]=ve,De[3]=Se,De},te.copy=function(ie,ue){return ie[0]=ue[0],ie[1]=ue[1],ie[2]=ue[2],ie[3]=ue[3],ie},te.set=function(ie,ue,ve,Se,De){return ie[0]=ue,ie[1]=ve,ie[2]=Se,ie[3]=De,ie},te.add=function(ie,ue,ve){return ie[0]=ue[0]+ve[0],ie[1]=ue[1]+ve[1],ie[2]=ue[2]+ve[2],ie[3]=ue[3]+ve[3],ie},te.subtract=function(ie,ue,ve){return ie[0]=ue[0]-ve[0],ie[1]=ue[1]-ve[1],ie[2]=ue[2]-ve[2],ie[3]=ue[3]-ve[3],ie},te.sub=te.subtract,te.multiply=function(ie,ue,ve){return ie[0]=ue[0]*ve[0],ie[1]=ue[1]*ve[1],ie[2]=ue[2]*ve[2],ie[3]=ue[3]*ve[3],ie},te.mul=te.multiply,te.divide=function(ie,ue,ve){return ie[0]=ue[0]/ve[0],ie[1]=ue[1]/ve[1],ie[2]=ue[2]/ve[2],ie[3]=ue[3]/ve[3],ie},te.div=te.divide,te.min=function(ie,ue,ve){return ie[0]=Math.min(ue[0],ve[0]),ie[1]=Math.min(ue[1],ve[1]),ie[2]=Math.min(ue[2],ve[2]),ie[3]=Math.min(ue[3],ve[3]),ie},te.max=function(ie,ue,ve){return ie[0]=Math.max(ue[0],ve[0]),ie[1]=Math.max(ue[1],ve[1]),ie[2]=Math.max(ue[2],ve[2]),ie[3]=Math.max(ue[3],ve[3]),ie},te.scale=function(ie,ue,ve){return ie[0]=ue[0]*ve,ie[1]=ue[1]*ve,ie[2]=ue[2]*ve,ie[3]=ue[3]*ve,ie},te.scaleAndAdd=function(ie,ue,ve,Se){return ie[0]=ue[0]+ve[0]*Se,ie[1]=ue[1]+ve[1]*Se,ie[2]=ue[2]+ve[2]*Se,ie[3]=ue[3]+ve[3]*Se,ie},te.distance=function(ie,ue){var ve=ue[0]-ie[0],Se=ue[1]-ie[1],De=ue[2]-ie[2],Re=ue[3]-ie[3];return Math.sqrt(ve*ve+Se*Se+De*De+Re*Re)},te.dist=te.distance,te.squaredDistance=function(ie,ue){var ve=ue[0]-ie[0],Se=ue[1]-ie[1],De=ue[2]-ie[2],Re=ue[3]-ie[3];return ve*ve+Se*Se+De*De+Re*Re},te.sqrDist=te.squaredDistance,te.length=function(ie){var ue=ie[0],ve=ie[1],Se=ie[2],De=ie[3];return Math.sqrt(ue*ue+ve*ve+Se*Se+De*De)},te.len=te.length,te.squaredLength=function(ie){var ue=ie[0],ve=ie[1],Se=ie[2],De=ie[3];return ue*ue+ve*ve+Se*Se+De*De},te.sqrLen=te.squaredLength,te.negate=function(ie,ue){return ie[0]=-ue[0],ie[1]=-ue[1],ie[2]=-ue[2],ie[3]=-ue[3],ie},te.inverse=function(ie,ue){return ie[0]=1/ue[0],ie[1]=1/ue[1],ie[2]=1/ue[2],ie[3]=1/ue[3],ie},te.normalize=function(ie,ue){var ve=ue[0],Se=ue[1],De=ue[2],Re=ue[3],Ne=ve*ve+Se*Se+De*De+Re*Re;return Ne>0&&(Ne=1/Math.sqrt(Ne),ie[0]=ue[0]*Ne,ie[1]=ue[1]*Ne,ie[2]=ue[2]*Ne,ie[3]=ue[3]*Ne),ie},te.dot=function(ie,ue){return ie[0]*ue[0]+ie[1]*ue[1]+ie[2]*ue[2]+ie[3]*ue[3]},te.lerp=function(ie,ue,ve,Se){var De=ue[0],Re=ue[1],Ne=ue[2],ze=ue[3];return ie[0]=De+Se*(ve[0]-De),ie[1]=Re+Se*(ve[1]-Re),ie[2]=Ne+Se*(ve[2]-Ne),ie[3]=ze+Se*(ve[3]-ze),ie},te.random=function(ie,ue){return ue=ue||1,ie[0]=we(),ie[1]=we(),ie[2]=we(),ie[3]=we(),te.normalize(ie,ie),te.scale(ie,ie,ue),ie},te.transformMat4=function(ie,ue,ve){var Se=ue[0],De=ue[1],Re=ue[2],Ne=ue[3];return ie[0]=ve[0]*Se+ve[4]*De+ve[8]*Re+ve[12]*Ne,ie[1]=ve[1]*Se+ve[5]*De+ve[9]*Re+ve[13]*Ne,ie[2]=ve[2]*Se+ve[6]*De+ve[10]*Re+ve[14]*Ne,ie[3]=ve[3]*Se+ve[7]*De+ve[11]*Re+ve[15]*Ne,ie},te.transformQuat=function(ie,ue,ve){var Se=ue[0],De=ue[1],Re=ue[2],Ne=ve[0],ze=ve[1],Ge=ve[2],Xe=ve[3],Qe=Xe*Se+ze*Re-Ge*De,nt=Xe*De+Ge*Se-Ne*Re,$e=Xe*Re+Ne*De-ze*Se,qe=-Ne*Se-ze*De-Ge*Re;return ie[0]=Qe*Xe+qe*-Ne+nt*-Ge-$e*-ze,ie[1]=nt*Xe+qe*-ze+$e*-Ne-Qe*-Ge,ie[2]=$e*Xe+qe*-Ge+Qe*-ze-nt*-Ne,ie},te.forEach=function(){var ie=te.create();return function(ue,ve,Se,De,Re,Ne){var ze,Ge;for(ve||(ve=4),Se||(Se=0),De?Ge=Math.min(De*ve+Se,ue.length):Ge=ue.length,ze=Se;ze.999999?(Se[0]=0,Se[1]=0,Se[2]=0,Se[3]=1,Se):(ce.cross(ie,De,Re),Se[0]=ie[0],Se[1]=ie[1],Se[2]=ie[2],Se[3]=1+Ne,he.normalize(Se,Se))}}(),he.setAxes=function(){var ie=oe.create();return function(ue,ve,Se,De){return ie[0]=Se[0],ie[3]=Se[1],ie[6]=Se[2],ie[1]=De[0],ie[4]=De[1],ie[7]=De[2],ie[2]=-ve[0],ie[5]=-ve[1],ie[8]=-ve[2],he.normalize(ue,he.fromMat3(ue,ie))}}(),he.clone=te.clone,he.fromValues=te.fromValues,he.copy=te.copy,he.set=te.set,he.identity=function(ie){return ie[0]=0,ie[1]=0,ie[2]=0,ie[3]=1,ie},he.setAxisAngle=function(ie,ue,ve){ve=ve*.5;var Se=Math.sin(ve);return ie[0]=Se*ue[0],ie[1]=Se*ue[1],ie[2]=Se*ue[2],ie[3]=Math.cos(ve),ie},he.add=te.add,he.multiply=function(ie,ue,ve){var Se=ue[0],De=ue[1],Re=ue[2],Ne=ue[3],ze=ve[0],Ge=ve[1],Xe=ve[2],Qe=ve[3];return ie[0]=Se*Qe+Ne*ze+De*Xe-Re*Ge,ie[1]=De*Qe+Ne*Ge+Re*ze-Se*Xe,ie[2]=Re*Qe+Ne*Xe+Se*Ge-De*ze,ie[3]=Ne*Qe-Se*ze-De*Ge-Re*Xe,ie},he.mul=he.multiply,he.scale=te.scale,he.rotateX=function(ie,ue,ve){ve*=.5;var Se=ue[0],De=ue[1],Re=ue[2],Ne=ue[3],ze=Math.sin(ve),Ge=Math.cos(ve);return ie[0]=Se*Ge+Ne*ze,ie[1]=De*Ge+Re*ze,ie[2]=Re*Ge-De*ze,ie[3]=Ne*Ge-Se*ze,ie},he.rotateY=function(ie,ue,ve){ve*=.5;var Se=ue[0],De=ue[1],Re=ue[2],Ne=ue[3],ze=Math.sin(ve),Ge=Math.cos(ve);return ie[0]=Se*Ge-Re*ze,ie[1]=De*Ge+Ne*ze,ie[2]=Re*Ge+Se*ze,ie[3]=Ne*Ge-De*ze,ie},he.rotateZ=function(ie,ue,ve){ve*=.5;var Se=ue[0],De=ue[1],Re=ue[2],Ne=ue[3],ze=Math.sin(ve),Ge=Math.cos(ve);return ie[0]=Se*Ge+De*ze,ie[1]=De*Ge-Se*ze,ie[2]=Re*Ge+Ne*ze,ie[3]=Ne*Ge-Re*ze,ie},he.calculateW=function(ie,ue){var ve=ue[0],Se=ue[1],De=ue[2];return ie[0]=ve,ie[1]=Se,ie[2]=De,ie[3]=Math.sqrt(Math.abs(1-ve*ve-Se*Se-De*De)),ie},he.dot=te.dot,he.lerp=te.lerp,he.slerp=function(ie,ue,ve,Se){var De=ue[0],Re=ue[1],Ne=ue[2],ze=ue[3],Ge=ve[0],Xe=ve[1],Qe=ve[2],nt=ve[3],$e,qe,ot,at,lt;return qe=De*Ge+Re*Xe+Ne*Qe+ze*nt,qe<0&&(qe=-qe,Ge=-Ge,Xe=-Xe,Qe=-Qe,nt=-nt),1-qe>1e-6?($e=Math.acos(qe),ot=Math.sin($e),at=Math.sin((1-Se)*$e)/ot,lt=Math.sin(Se*$e)/ot):(at=1-Se,lt=Se),ie[0]=at*De+lt*Ge,ie[1]=at*Re+lt*Xe,ie[2]=at*Ne+lt*Qe,ie[3]=at*ze+lt*nt,ie},he.invert=function(ie,ue){var ve=ue[0],Se=ue[1],De=ue[2],Re=ue[3],Ne=ve*ve+Se*Se+De*De+Re*Re,ze=Ne?1/Ne:0;return ie[0]=-ve*ze,ie[1]=-Se*ze,ie[2]=-De*ze,ie[3]=Re*ze,ie},he.conjugate=function(ie,ue){return ie[0]=-ue[0],ie[1]=-ue[1],ie[2]=-ue[2],ie[3]=ue[3],ie},he.length=te.length,he.len=he.length,he.squaredLength=te.squaredLength,he.sqrLen=he.squaredLength,he.normalize=te.normalize,he.fromMat3=function(ie,ue){var ve=ue[0]+ue[4]+ue[8],Se;if(ve>0)Se=Math.sqrt(ve+1),ie[3]=.5*Se,Se=.5/Se,ie[0]=(ue[5]-ue[7])*Se,ie[1]=(ue[6]-ue[2])*Se,ie[2]=(ue[1]-ue[3])*Se;else{var De=0;ue[4]>ue[0]&&(De=1),ue[8]>ue[De*3+De]&&(De=2);var Re=(De+1)%3,Ne=(De+2)%3;Se=Math.sqrt(ue[De*3+De]-ue[Re*3+Re]-ue[Ne*3+Ne]+1),ie[De]=.5*Se,Se=.5/Se,ie[3]=(ue[Re*3+Ne]-ue[Ne*3+Re])*Se,ie[Re]=(ue[Re*3+De]+ue[De*3+Re])*Se,ie[Ne]=(ue[Ne*3+De]+ue[De*3+Ne])*Se}return ie},he.str=function(ie){return"quat("+ie[0]+", "+ie[1]+", "+ie[2]+", "+ie[3]+")"},typeof ge!="undefined"&&(ge.quat=he)}(Pe.exports)})(this)},function(He,Fe,Ce){"use strict";var _e=Ce(24),Pe=Ce(46),ge=Ce(5),Ae=Ce(6),be=Ce(7),we=Ce(17),pe=Ce(28),ye=Ce(13),xe=Ce(0),ce=Ce.n(xe),te=Ce(29),ne=Ce(53),le=Ce.n(ne),oe=Ce(54),de=Ce(106),he=Ce(107),ie=Ce(113),ue=Ce(114),ve=Ce(3),Se=Ce(68),De=Ce(37),Re=Ce(69),Ne=Ce(116),ze=Ce(70),Ge=Ce(71),Xe=Ce(72),Qe=Ce(36),nt=Ce(30),$e=Ce(23),qe=Ce(4),ot=Ce(117),at=Ce(50),lt=Ce(118),rt=Ce(119),ut=Ce(120),yt=Ce(9),ft=Ce(67),dt=Ce(49),ht=Ce(15),Ut=Ce(52),Kt=Ce(121),qt=Ce(126),vn=Ce(63),Ot=Ce(127),rn=Ce(128),an=Ce(129),On=Ce(130),Rn=Ce(131),sn=Ce(132);ce.a.util.extend(pe.a.prototype,Kt.a),be.a.import(qt.a),be.a.import(vn.a),be.a.import(Ot.a),be.a.import(rn.a),be.a.import(an.a),be.a.import(On.a),be.a.import(Rn.a),be.a.import(sn.a);function tn(wt){return!wt||wt==="none"}function Gt(wt){return wt instanceof HTMLCanvasElement||wt instanceof HTMLImageElement||wt instanceof Image}function It(wt){return wt.getZr&&wt.setOption}var Et=te.a.prototype.addToScene,Zt=te.a.prototype.removeFromScene;te.a.prototype.addToScene=function(wt){if(Et.call(this,wt),this.__zr){var ln=this.__zr;wt.traverse(function(In){In.__zr=ln,In.addAnimatorsToZr&&In.addAnimatorsToZr(ln)})}},te.a.prototype.removeFromScene=function(wt){Zt.call(this,wt),wt.traverse(function(ln){var In=ln.__zr;ln.__zr=null,In&&ln.removeAnimatorsFromZr&&ln.removeAnimatorsFromZr(In)})},we.a.prototype.setTextureImage=function(wt,ln,In,Kn){if(this.shader){var Vn=In.getZr(),Zn=this,$n;return Zn.autoUpdateTextureStatus=!1,Zn.disableTexture(wt),tn(ln)||($n=vt.loadTexture(ln,In,Kn,function(Jt){Zn.enableTexture(wt),Vn&&Vn.refresh()}),Zn.set(wt,$n)),$n}};var vt={};vt.Renderer=Pe.a,vt.Node=pe.a,vt.Mesh=_e.a,vt.Shader=be.a,vt.Material=we.a,vt.Texture=Ae.a,vt.Texture2D=ge.a,vt.Geometry=ye.a,vt.SphereGeometry=Se.a,vt.PlaneGeometry=De.a,vt.CubeGeometry=Re.a,vt.AmbientLight=Ne.a,vt.DirectionalLight=ze.a,vt.PointLight=Ge.a,vt.SpotLight=Xe.a,vt.PerspectiveCamera=Qe.a,vt.OrthographicCamera=nt.a,vt.Vector2=$e.a,vt.Vector3=qe.a,vt.Vector4=ot.a,vt.Quaternion=at.a,vt.Matrix2=lt.a,vt.Matrix2d=rt.a,vt.Matrix3=ut.a,vt.Matrix4=yt.a,vt.Plane=ft.a,vt.Ray=dt.a,vt.BoundingBox=ht.a,vt.Frustum=Ut.a;var At=oe.a.createBlank("rgba(255,255,255,0)").image;function Qt(wt){return Math.pow(2,Math.round(Math.log(wt)/Math.LN2))}function Ft(wt){if((wt.wrapS===Ae.a.REPEAT||wt.wrapT===Ae.a.REPEAT)&&wt.image){var ln=Qt(wt.width),In=Qt(wt.height);if(ln!==wt.width||In!==wt.height){var Kn=document.createElement("canvas");Kn.width=ln,Kn.height=In;var Vn=Kn.getContext("2d");Vn.drawImage(wt.image,0,0,ln,In),wt.image=Kn}}}vt.loadTexture=function(wt,ln,In,Kn){typeof In=="function"&&(Kn=In,In={}),In=In||{};for(var Vn=Object.keys(In).sort(),Zn="",$n=0;$n3?ln[3]=wt[3]:ln[3]=1,ln):(ln=ce.a.color.parse(wt||"#000",ln)||[0,0,0,0],ln[0]/=255,ln[1]/=255,ln[2]/=255,ln)},vt.directionFromAlphaBeta=function(wt,ln){var In=wt/180*Math.PI+Math.PI/2,Kn=-ln/180*Math.PI+Math.PI/2,Vn=[],Zn=Math.sin(In);return Vn[0]=Zn*Math.cos(Kn),Vn[1]=-Math.cos(In),Vn[2]=Zn*Math.sin(Kn),Vn},vt.getShadowResolution=function(wt){var ln=1024;switch(wt){case"low":ln=512;break;case"medium":break;case"high":ln=2048;break;case"ultra":ln=4096;break}return ln},vt.COMMON_SHADERS=["lambert","color","realistic","hatching"],vt.createShader=function(wt){var ln=be.a.source(wt+".vertex"),In=be.a.source(wt+".fragment");ln||console.error("Vertex shader of '%s' not exits",wt),In||console.error("Fragment shader of '%s' not exits",wt);var Kn=new be.a(ln,In);return Kn.name=wt,Kn},vt.createMaterial=function(wt,ln){ln instanceof Array||(ln=[ln]);var In=vt.createShader(wt),Kn=new we.a({shader:In});return ln.forEach(function(Vn){typeof Vn=="string"&&Kn.define(Vn)}),Kn},vt.setMaterialFromModel=function(wt,ln,In,Kn){ln.autoUpdateTextureStatus=!1;var Vn=In.getModel(wt+"Material"),Zn=Vn.get("detailTexture"),$n=ve.a.firstNotNull(Vn.get("textureTiling"),1),Jt=ve.a.firstNotNull(Vn.get("textureOffset"),0);typeof $n=="number"&&($n=[$n,$n]),typeof Jt=="number"&&(Jt=[Jt,Jt]);var yn=$n[0]>1||$n[1]>1?vt.Texture.REPEAT:vt.Texture.CLAMP_TO_EDGE,Hn={anisotropic:8,wrapS:yn,wrapT:yn};if(wt==="realistic"){var Bn=Vn.get("roughness"),Er=Vn.get("metalness");Er!=null?isNaN(Er)&&(ln.setTextureImage("metalnessMap",Er,Kn,Hn),Er=ve.a.firstNotNull(Vn.get("metalnessAdjust"),.5)):Er=0,Bn!=null?isNaN(Bn)&&(ln.setTextureImage("roughnessMap",Bn,Kn,Hn),Bn=ve.a.firstNotNull(Vn.get("roughnessAdjust"),.5)):Bn=.5;var Fr=Vn.get("normalTexture");ln.setTextureImage("detailMap",Zn,Kn,Hn),ln.setTextureImage("normalMap",Fr,Kn,Hn),ln.set({roughness:Bn,metalness:Er,detailUvRepeat:$n,detailUvOffset:Jt})}else if(wt==="lambert")ln.setTextureImage("detailMap",Zn,Kn,Hn),ln.set({detailUvRepeat:$n,detailUvOffset:Jt});else if(wt==="color")ln.setTextureImage("detailMap",Zn,Kn,Hn),ln.set({detailUvRepeat:$n,detailUvOffset:Jt});else if(wt==="hatching"){var br=Vn.get("hatchingTextures")||[];br.length<6&&console.error("Invalid hatchingTextures.");for(var Wr=0;Wr<6;Wr++)ln.setTextureImage("hatch"+(Wr+1),br[Wr],Kn,{anisotropic:8,wrapS:vt.Texture.REPEAT,wrapT:vt.Texture.REPEAT});ln.set({detailUvRepeat:$n,detailUvOffset:Jt})}},vt.updateVertexAnimation=function(wt,ln,In,Kn){var Vn=Kn.get("animation"),Zn=Kn.get("animationDurationUpdate"),$n=Kn.get("animationEasingUpdate"),Jt=In.shadowDepthMaterial;if(Vn&&ln&&Zn>0&&ln.geometry.vertexCount===In.geometry.vertexCount){In.material.define("vertex","VERTEX_ANIMATION"),In.ignorePreZ=!0,Jt&&Jt.define("vertex","VERTEX_ANIMATION");for(var yn=0;ynle?le:te}var ye=Math.atan2,xe=Math.asin,ce=Math.abs;Ae.eulerFromQuat=function(te,ne,Ne){te._dirty=!0,ne=ne.array;var oe=te.array,de=ne[0],he=ne[1],ie=ne[2],ue=ne[3],ve=de*de,Se=he*he,De=ie*ie,Re=ue*ue,Ne=(Ne||"XYZ").toUpperCase();switch(Ne){case"XYZ":oe[0]=ye(2*(de*ue-he*ie),Re-ve-Se+De),oe[1]=xe(pe(2*(de*ie+he*ue),-1,1)),oe[2]=ye(2*(ie*ue-de*he),Re+ve-Se-De);break;case"YXZ":oe[0]=xe(pe(2*(de*ue-he*ie),-1,1)),oe[1]=ye(2*(de*ie+he*ue),Re-ve-Se+De),oe[2]=ye(2*(de*he+ie*ue),Re-ve+Se-De);break;case"ZXY":oe[0]=xe(pe(2*(de*ue+he*ie),-1,1)),oe[1]=ye(2*(he*ue-ie*de),Re-ve-Se+De),oe[2]=ye(2*(ie*ue-de*he),Re-ve+Se-De);break;case"ZYX":oe[0]=ye(2*(de*ue+ie*he),Re-ve-Se+De),oe[1]=xe(pe(2*(he*ue-de*ie),-1,1)),oe[2]=ye(2*(de*he+ie*ue),Re+ve-Se-De);break;case"YZX":oe[0]=ye(2*(de*ue-ie*he),Re-ve+Se-De),oe[1]=ye(2*(he*ue-de*ie),Re+ve-Se-De),oe[2]=xe(pe(2*(de*he+ie*ue),-1,1));break;case"XZY":oe[0]=ye(2*(de*ue+he*ie),Re-ve+Se-De),oe[1]=ye(2*(de*ie+he*ue),Re+ve-Se-De),oe[2]=xe(pe(2*(ie*ue-de*he),-1,1));break;default:console.warn("Unkown order: "+Ne)}return te},Ae.eulerFromMat3=function(te,ne,Ge){var oe=ne.array,de=oe[0],he=oe[3],ie=oe[6],ue=oe[1],ve=oe[4],Se=oe[7],De=oe[2],Re=oe[5],Ne=oe[8],ze=te.array,Ge=(Ge||"XYZ").toUpperCase();switch(Ge){case"XYZ":ze[1]=xe(pe(ie,-1,1)),ce(ie)<.99999?(ze[0]=ye(-Se,Ne),ze[2]=ye(-he,de)):(ze[0]=ye(Re,ve),ze[2]=0);break;case"YXZ":ze[0]=xe(-pe(Se,-1,1)),ce(Se)<.99999?(ze[1]=ye(ie,Ne),ze[2]=ye(ue,ve)):(ze[1]=ye(-De,de),ze[2]=0);break;case"ZXY":ze[0]=xe(pe(Re,-1,1)),ce(Re)<.99999?(ze[1]=ye(-De,Ne),ze[2]=ye(-he,ve)):(ze[1]=0,ze[2]=ye(ue,de));break;case"ZYX":ze[1]=xe(-pe(De,-1,1)),ce(De)<.99999?(ze[0]=ye(Re,Ne),ze[2]=ye(ue,de)):(ze[0]=0,ze[2]=ye(-he,ve));break;case"YZX":ze[2]=xe(pe(ue,-1,1)),ce(ue)<.99999?(ze[0]=ye(-Se,ve),ze[1]=ye(-De,de)):(ze[0]=0,ze[1]=ye(ie,Ne));break;case"XZY":ze[2]=xe(-pe(he,-1,1)),ce(he)<.99999?(ze[0]=ye(Re,ve),ze[1]=ye(ie,de)):(ze[0]=ye(-Se,Ne),ze[1]=0);break;default:console.warn("Unkown order: "+Ge)}return te._dirty=!0,te},Ae.POSITIVE_X=new Ae(1,0,0),Ae.NEGATIVE_X=new Ae(-1,0,0),Ae.POSITIVE_Y=new Ae(0,1,0),Ae.NEGATIVE_Y=new Ae(0,-1,0),Ae.POSITIVE_Z=new Ae(0,0,1),Ae.NEGATIVE_Z=new Ae(0,0,-1),Ae.UP=new Ae(0,1,0),Ae.ZERO=new Ae(0,0,0),Fe.a=Ae},function(He,Fe,Ce){"use strict";var _e=Ce(6),Pe=Ce(11),ge=Ce(66),Ae=ge.a.isPowerOfTwo,be=_e.a.extend(function(){return{image:null,pixels:null,mipmaps:[]}},{update:function(we){var pe=we.gl;pe.bindTexture(pe.TEXTURE_2D,this._cache.get("webgl_texture")),this.updateCommon(we);var ye=this.format,xe=this.type;pe.texParameteri(pe.TEXTURE_2D,pe.TEXTURE_WRAP_S,this.getAvailableWrapS()),pe.texParameteri(pe.TEXTURE_2D,pe.TEXTURE_WRAP_T,this.getAvailableWrapT()),pe.texParameteri(pe.TEXTURE_2D,pe.TEXTURE_MAG_FILTER,this.getAvailableMagFilter()),pe.texParameteri(pe.TEXTURE_2D,pe.TEXTURE_MIN_FILTER,this.getAvailableMinFilter());var ce=we.getGLExtension("EXT_texture_filter_anisotropic");if(ce&&this.anisotropic>1&&pe.texParameterf(pe.TEXTURE_2D,ce.TEXTURE_MAX_ANISOTROPY_EXT,this.anisotropic),xe===36193){var te=we.getGLExtension("OES_texture_half_float");te||(xe=Pe.a.FLOAT)}if(this.mipmaps.length)for(var ne=this.width,le=this.height,oe=0;oe=_e.a.COMPRESSED_RGB_S3TC_DXT1_EXT?we.compressedTexImage2D(we.TEXTURE_2D,ye,te,xe,ce,0,pe.pixels):we.texImage2D(we.TEXTURE_2D,ye,te,xe,ce,0,te,ne,pe.pixels)},generateMipmap:function(we){var pe=we.gl;this.useMipmap&&!this.NPOT&&(pe.bindTexture(pe.TEXTURE_2D,this._cache.get("webgl_texture")),pe.generateMipmap(pe.TEXTURE_2D))},isPowerOfTwo:function(){var we,pe;return this.image?(we=this.image.width,pe=this.image.height):(we=this.width,pe=this.height),Ae(we)&&Ae(pe)},isRenderable:function(){return this.image?this.image.nodeName==="CANVAS"||this.image.nodeName==="VIDEO"||this.image.complete:!!(this.width&&this.height)},bind:function(we){we.gl.bindTexture(we.gl.TEXTURE_2D,this.getWebGLTexture(we))},unbind:function(we){we.gl.bindTexture(we.gl.TEXTURE_2D,null)},load:function(we,pe){var ye=new Image;pe&&(ye.crossOrigin=pe);var xe=this;return ye.onload=function(){xe.dirty(),xe.trigger("success",xe),ye.onload=null},ye.onerror=function(){xe.trigger("error",xe),ye.onerror=null},ye.src=we,this.image=ye,this}});Object.defineProperty(be.prototype,"width",{get:function(){return this.image?this.image.width:this._width},set:function(we){this.image?console.warn("Texture from image can't set width"):(this._width!==we&&this.dirty(),this._width=we)}}),Object.defineProperty(be.prototype,"height",{get:function(){return this.image?this.image.height:this._height},set:function(we){this.image?console.warn("Texture from image can't set height"):(this._height!==we&&this.dirty(),this._height=we)}}),Fe.a=be},function(He,Fe,Ce){"use strict";var _e=Ce(8),Pe=Ce(11),ge=Ce(48),Ae=_e.a.extend({width:512,height:512,type:Pe.a.UNSIGNED_BYTE,format:Pe.a.RGBA,wrapS:Pe.a.REPEAT,wrapT:Pe.a.REPEAT,minFilter:Pe.a.LINEAR_MIPMAP_LINEAR,magFilter:Pe.a.LINEAR,useMipmap:!0,anisotropic:1,flipY:!0,sRGB:!0,unpackAlignment:4,premultiplyAlpha:!1,dynamic:!1,NPOT:!1},function(){this._cache=new ge.a},{getWebGLTexture:function(be){var we=be.gl,pe=this._cache;return pe.use(be.__uid__),pe.miss("webgl_texture")&&pe.put("webgl_texture",we.createTexture()),this.dynamic?this.update(be):pe.isDirty()&&(this.update(be),pe.fresh()),pe.get("webgl_texture")},bind:function(){},unbind:function(){},dirty:function(){this._cache&&this._cache.dirtyAll()},update:function(be){},updateCommon:function(be){var we=be.gl;we.pixelStorei(we.UNPACK_FLIP_Y_WEBGL,this.flipY),we.pixelStorei(we.UNPACK_PREMULTIPLY_ALPHA_WEBGL,this.premultiplyAlpha),we.pixelStorei(we.UNPACK_ALIGNMENT,this.unpackAlignment),this.format===Pe.a.DEPTH_COMPONENT&&(this.useMipmap=!1);var pe=be.getGLExtension("EXT_sRGB");this.format===Ae.SRGB&&!pe&&(this.format=Ae.RGB),this.format===Ae.SRGB_ALPHA&&!pe&&(this.format=Ae.RGBA),this.NPOT=!this.isPowerOfTwo()},getAvailableWrapS:function(){return this.NPOT?Pe.a.CLAMP_TO_EDGE:this.wrapS},getAvailableWrapT:function(){return this.NPOT?Pe.a.CLAMP_TO_EDGE:this.wrapT},getAvailableMinFilter:function(){var be=this.minFilter;return this.NPOT||!this.useMipmap?be==Pe.a.NEAREST_MIPMAP_NEAREST||be==Pe.a.NEAREST_MIPMAP_LINEAR?Pe.a.NEAREST:be==Pe.a.LINEAR_MIPMAP_LINEAR||be==Pe.a.LINEAR_MIPMAP_NEAREST?Pe.a.LINEAR:be:be},getAvailableMagFilter:function(){return this.magFilter},nextHighestPowerOfTwo:function(be){--be;for(var we=1;we<32;we<<=1)be=be|be>>we;return be+1},dispose:function(be){var we=this._cache;we.use(be.__uid__);var pe=we.get("webgl_texture");pe&&be.gl.deleteTexture(pe),we.deleteContext(be.__uid__)},isRenderable:function(){},isPowerOfTwo:function(){}});Object.defineProperty(Ae.prototype,"width",{get:function(){return this._width},set:function(be){this._width=be}}),Object.defineProperty(Ae.prototype,"height",{get:function(){return this._height},set:function(be){this._height=be}}),Ae.BYTE=Pe.a.BYTE,Ae.UNSIGNED_BYTE=Pe.a.UNSIGNED_BYTE,Ae.SHORT=Pe.a.SHORT,Ae.UNSIGNED_SHORT=Pe.a.UNSIGNED_SHORT,Ae.INT=Pe.a.INT,Ae.UNSIGNED_INT=Pe.a.UNSIGNED_INT,Ae.FLOAT=Pe.a.FLOAT,Ae.HALF_FLOAT=36193,Ae.UNSIGNED_INT_24_8_WEBGL=34042,Ae.DEPTH_COMPONENT=Pe.a.DEPTH_COMPONENT,Ae.DEPTH_STENCIL=Pe.a.DEPTH_STENCIL,Ae.ALPHA=Pe.a.ALPHA,Ae.RGB=Pe.a.RGB,Ae.RGBA=Pe.a.RGBA,Ae.LUMINANCE=Pe.a.LUMINANCE,Ae.LUMINANCE_ALPHA=Pe.a.LUMINANCE_ALPHA,Ae.SRGB=35904,Ae.SRGB_ALPHA=35906,Ae.COMPRESSED_RGB_S3TC_DXT1_EXT=33776,Ae.COMPRESSED_RGBA_S3TC_DXT1_EXT=33777,Ae.COMPRESSED_RGBA_S3TC_DXT3_EXT=33778,Ae.COMPRESSED_RGBA_S3TC_DXT5_EXT=33779,Ae.NEAREST=Pe.a.NEAREST,Ae.LINEAR=Pe.a.LINEAR,Ae.NEAREST_MIPMAP_NEAREST=Pe.a.NEAREST_MIPMAP_NEAREST,Ae.LINEAR_MIPMAP_NEAREST=Pe.a.LINEAR_MIPMAP_NEAREST,Ae.NEAREST_MIPMAP_LINEAR=Pe.a.NEAREST_MIPMAP_LINEAR,Ae.LINEAR_MIPMAP_LINEAR=Pe.a.LINEAR_MIPMAP_LINEAR,Ae.REPEAT=Pe.a.REPEAT,Ae.CLAMP_TO_EDGE=Pe.a.CLAMP_TO_EDGE,Ae.MIRRORED_REPEAT=Pe.a.MIRRORED_REPEAT,Fe.a=Ae},function(He,Fe,Ce){"use strict";var _e=Ce(21),Pe=Ce(18),ge=Ce(1),Ae=Ce.n(ge),be=Ae.a.mat2,we=Ae.a.mat3,pe=Ae.a.mat4,ye=/uniform\s+(bool|float|int|vec2|vec3|vec4|ivec2|ivec3|ivec4|mat2|mat3|mat4|sampler2D|samplerCube)\s+([\w\,]+)?(\[.*?\])?\s*(:\s*([\S\s]+?))?;/g,xe=/attribute\s+(float|int|vec2|vec3|vec4)\s+(\w*)\s*(:\s*(\w+))?;/g,ce=/#define\s+(\w+)?(\s+[\w-.]+)?\s*;?\s*\n/g,te={bool:"1i",int:"1i",sampler2D:"t",samplerCube:"t",float:"1f",vec2:"2f",vec3:"3f",vec4:"4f",ivec2:"2i",ivec3:"3i",ivec4:"4i",mat2:"m2",mat3:"m3",mat4:"m4"},ne={bool:function(){return!0},int:function(){return 0},float:function(){return 0},sampler2D:function(){return null},samplerCube:function(){return null},vec2:function(){return[0,0]},vec3:function(){return[0,0,0]},vec4:function(){return[0,0,0,0]},ivec2:function(){return[0,0]},ivec3:function(){return[0,0,0]},ivec4:function(){return[0,0,0,0]},mat2:function(){return be.create()},mat3:function(){return we.create()},mat4:function(){return pe.create()},array:function(){return[]}},le=["POSITION","NORMAL","BINORMAL","TANGENT","TEXCOORD","TEXCOORD_0","TEXCOORD_1","COLOR","JOINT","WEIGHT"],oe=["SKIN_MATRIX","VIEWPORT_SIZE","VIEWPORT","DEVICEPIXELRATIO","WINDOW_SIZE","NEAR","FAR","TIME"],de=["WORLD","VIEW","PROJECTION","WORLDVIEW","VIEWPROJECTION","WORLDVIEWPROJECTION","WORLDINVERSE","VIEWINVERSE","PROJECTIONINVERSE","WORLDVIEWINVERSE","VIEWPROJECTIONINVERSE","WORLDVIEWPROJECTIONINVERSE","WORLDTRANSPOSE","VIEWTRANSPOSE","PROJECTIONTRANSPOSE","WORLDVIEWTRANSPOSE","VIEWPROJECTIONTRANSPOSE","WORLDVIEWPROJECTIONTRANSPOSE","WORLDINVERSETRANSPOSE","VIEWINVERSETRANSPOSE","PROJECTIONINVERSETRANSPOSE","WORLDVIEWINVERSETRANSPOSE","VIEWPROJECTIONINVERSETRANSPOSE","WORLDVIEWPROJECTIONINVERSETRANSPOSE"],he={},ie={};function ue(Re,Ne){var ze="vertex:"+Re+"fragment:"+Ne;if(he[ze])return he[ze];var Ge=_e.a.genGUID();return he[ze]=Ge,ie[Ge]={vertex:Re,fragment:Ne},Ge}function ve(Re,Ne){typeof Re=="object"&&(Ne=Re.fragment,Re=Re.vertex),this._shaderID=ue(Re,Ne),this._vertexCode=ve.parseImport(Re),this._fragmentCode=ve.parseImport(Ne),this.attributeSemantics={},this.matrixSemantics={},this.uniformSemantics={},this.matrixSemanticKeys=[],this.uniformTemplates={},this.attributes={},this.textures={},this.vertexDefines={},this.fragmentDefines={},this._parseAttributes(),this._parseUniforms(),this._parseDefines()}ve.prototype={constructor:ve,createUniforms:function(){var Re={};for(var Ne in this.uniformTemplates){var ze=this.uniformTemplates[Ne];Re[Ne]={type:ze.type,value:ze.value()}}return Re},_parseImport:function(){this._vertexCode=ve.parseImport(this.vertex),this._fragmentCode=ve.parseImport(this.fragment)},_parseUniforms:function(){var Re={},Ne=this,ze="vertex";this._uniformList=[],this._vertexCode=this._vertexCode.replace(ye,Ge),ze="fragment",this._fragmentCode=this._fragmentCode.replace(ye,Ge),Ne.matrixSemanticKeys=Object.keys(this.matrixSemantics);function Ge(Xe,Qe,nt,$e,qe,ot){if(Qe&&nt){var at=te[Qe],lt=!0,rt;if(at){if(Ne._uniformList.push(nt),(Qe==="sampler2D"||Qe==="samplerCube")&&(Ne.textures[nt]={shaderType:ze,type:Qe}),$e&&(at+="v"),ot)if(le.indexOf(ot)>=0)Ne.attributeSemantics[ot]={symbol:nt,type:at},lt=!1;else if(de.indexOf(ot)>=0){var ut=!1,yt=ot;ot.match(/TRANSPOSE$/)&&(ut=!0,yt=ot.slice(0,-9)),Ne.matrixSemantics[ot]={symbol:nt,type:at,isTranspose:ut,semanticNoTranspose:yt},lt=!1}else if(oe.indexOf(ot)>=0)Ne.uniformSemantics[ot]={symbol:nt,type:at},lt=!1;else if(ot==="unconfigurable")lt=!1;else if(rt=Ne._parseDefaultValue(Qe,ot),rt)ot="";else throw new Error('Unkown semantic "'+ot+'"');lt&&(Re[nt]={type:at,value:$e?ne.array:rt||ne[Qe],semantic:ot||null})}return["uniform",Qe,nt,$e].join(" ")+`; `}}this.uniformTemplates=Re},_parseDefaultValue:function(Re,Ne){var ze=/\[\s*(.*)\s*\]/;if(Re==="vec2"||Re==="vec3"||Re==="vec4"){var Ge=ze.exec(Ne)[1];if(Ge){var Xe=Ge.split(/\s*,\s*/);return function(){return new Pe.a.Float32Array(Xe)}}else return}else{if(Re==="bool")return function(){return Ne.toLowerCase()==="true"};if(Re==="float")return function(){return parseFloat(Ne)};if(Re==="int")return function(){return parseInt(Ne)}}},_parseAttributes:function(){var Re={},Ne=this;this._vertexCode=this._vertexCode.replace(xe,ze);function ze(Ge,Xe,Qe,nt,$e){if(Xe&&Qe){var qe=1;switch(Xe){case"vec4":qe=4;break;case"vec3":qe=3;break;case"vec2":qe=2;break;case"float":qe=1;break}if(Re[Qe]={type:"float",size:qe,semantic:$e||null},$e){if(le.indexOf($e)<0)throw new Error('Unkown semantic "'+$e+'"');Ne.attributeSemantics[$e]={symbol:Qe,type:Xe}}}return["attribute",Xe,Qe].join(" ")+`; `}this.attributes=Re},_parseDefines:function(){var Re=this,Ne="vertex";this._vertexCode=this._vertexCode.replace(ce,ze),Ne="fragment",this._fragmentCode=this._fragmentCode.replace(ce,ze);function ze(Ge,Xe,Qe){var nt=Ne==="vertex"?Re.vertexDefines:Re.fragmentDefines;return nt[Xe]||(Qe=="false"?nt[Xe]=!1:Qe=="true"?nt[Xe]=!0:nt[Xe]=Qe?isNaN(parseFloat(Qe))?Qe.trim():parseFloat(Qe):null),""}},clone:function(){var Re=ie[this._shaderID],Ne=new ve(Re.vertex,Re.fragment);return Ne}},Object.defineProperty&&(Object.defineProperty(ve.prototype,"shaderID",{get:function(){return this._shaderID}}),Object.defineProperty(ve.prototype,"vertex",{get:function(){return this._vertexCode}}),Object.defineProperty(ve.prototype,"fragment",{get:function(){return this._fragmentCode}}),Object.defineProperty(ve.prototype,"uniforms",{get:function(){return this._uniformList}}));var Se=/(@import)\s*([0-9a-zA-Z_\-\.]*)/g;ve.parseImport=function(Re){return Re=Re.replace(Se,function(Xe,ze,Ge){var Xe=ve.source(Ge);return Xe?ve.parseImport(Xe):(console.error('Shader chunk "'+Ge+'" not existed in library'),"")}),Re};var De=/(@export)\s*([0-9a-zA-Z_\-\.]*)\s*\n([\s\S]*?)@end/g;ve.import=function(Re){Re.replace(De,function(Ne,ze,Ge,Qe){var Qe=Qe.replace(/(^[\s\t\xa0\u3000]+)|([\u3000\xa0\s\t]+\x24)/g,"");if(Qe){for(var nt=Ge.split("."),$e=ve.codes,qe=0,ot;qeze[0]&&(ze[0]=Xe),Qe>ze[1]&&(ze[1]=Qe),nt>ze[2]&&(ze[2]=nt)}De._dirty=!0,Re._dirty=!0}},dirty:function(){for(var ve=this.getEnabledAttributes(),Se=0;Se=0){Se||(Se=ce());var De=this.indices;return Se[0]=De[ve*3],Se[1]=De[ve*3+1],Se[2]=De[ve*3+2],Se}},setTriangleIndices:function(ve,Se){var De=this.indices;De[ve*3]=Se[0],De[ve*3+1]=Se[1],De[ve*3+2]=Se[2]},isUseIndices:function(){return!!this.indices},initIndicesFromArray:function(ve){var Se,De=this.vertexCount>65535?Ae.a.Uint32Array:Ae.a.Uint16Array;if(ve[0]&&ve[0].length){var Re=0,Ne=3;Se=new De(ve.length*Ne);for(var ze=0;ze=0?(Se.splice(De,1),delete this.attributes[ve],!0):!1},getAttribute:function(ve){return this.attributes[ve]},getEnabledAttributes:function(){var ve=this._enabledAttributes,Se=this._attributeList;if(ve)return ve;for(var De=[],Re=this.vertexCount,Ne=0;Ne65535&&(this.indices=new Ae.a.Uint32Array(this.indices));for(var ve=this.attributes,Se=this.indices,De=this.getEnabledAttributes(),Re={},Ne=0;Ne=de.COLOR_ATTACHMENT0&&ue<=de.COLOR_ATTACHMENT0+8&&ie.push(ue);he.drawBuffersEXT(ie)}}this.trigger("beforerender",this,le);var ve=this.clearDepth?de.DEPTH_BUFFER_BIT:0;if(de.depthMask(!0),this.clearColor){ve=ve|de.COLOR_BUFFER_BIT,de.colorMask(!0,!0,!0,!0);var Se=this.clearColor;Array.isArray(Se)&&de.clearColor(Se[0],Se[1],Se[2],Se[3])}de.clear(ve),this.blendWithPrevious?(de.enable(de.BLEND),this.material.transparent=!0):(de.disable(de.BLEND),this.material.transparent=!1),this.renderQuad(le),this.trigger("afterrender",this,le),oe&&this.unbind(le,oe)},renderQuad:function(le){ce.material=this.material,le.renderPass([ce],te)},dispose:function(le){}});Fe.a=ne},function(He,Fe,Ce){"use strict";var _e=Ce(4),Pe=Ce(1),ge=Ce.n(Pe),Ae=ge.a.vec3,be=Ae.copy,we=Ae.set,pe=function(ye,xe){this.min=ye||new _e.a(1/0,1/0,1/0),this.max=xe||new _e.a(-1/0,-1/0,-1/0)};pe.prototype={constructor:pe,updateFromVertices:function(ye){if(ye.length>0){var xe=this.min,ce=this.max,te=xe.array,ne=ce.array;be(te,ye[0]),be(ne,ye[0]);for(var le=1;lene[0]&&(ne[0]=oe[0]),oe[1]>ne[1]&&(ne[1]=oe[1]),oe[2]>ne[2]&&(ne[2]=oe[2])}xe._dirty=!0,ce._dirty=!0}},union:function(ye){var xe=this.min,ce=this.max;return Ae.min(xe.array,xe.array,ye.min.array),Ae.max(ce.array,ce.array,ye.max.array),xe._dirty=!0,ce._dirty=!0,this},intersection:function(ye){var xe=this.min,ce=this.max;return Ae.max(xe.array,xe.array,ye.min.array),Ae.min(ce.array,ce.array,ye.max.array),xe._dirty=!0,ce._dirty=!0,this},intersectBoundingBox:function(ye){var xe=this.min.array,ce=this.max.array,te=ye.min.array,ne=ye.max.array;return!(xe[0]>ne[0]||xe[1]>ne[1]||xe[2]>ne[2]||ce[0]=ne[0]&&ce[1]>=ne[1]&&ce[2]>=ne[2]},containPoint:function(ye){var xe=this.min.array,ce=this.max.array,te=ye.array;return xe[0]<=te[0]&&xe[1]<=te[1]&&xe[2]<=te[2]&&ce[0]>=te[0]&&ce[1]>=te[1]&&ce[2]>=te[2]},isFinite:function(){var ye=this.min.array,xe=this.max.array;return isFinite(ye[0])&&isFinite(ye[1])&&isFinite(ye[2])&&isFinite(xe[0])&&isFinite(xe[1])&&isFinite(xe[2])},applyTransform:function(){var ye=Ae.create(),xe=Ae.create(),ce=Ae.create(),te=Ae.create(),ne=Ae.create(),le=Ae.create();return function(oe){var de=this.min.array,he=this.max.array,ie=oe.array;return ye[0]=ie[0]*de[0],ye[1]=ie[1]*de[0],ye[2]=ie[2]*de[0],xe[0]=ie[0]*he[0],xe[1]=ie[1]*he[0],xe[2]=ie[2]*he[0],ce[0]=ie[4]*de[1],ce[1]=ie[5]*de[1],ce[2]=ie[6]*de[1],te[0]=ie[4]*he[1],te[1]=ie[5]*he[1],te[2]=ie[6]*he[1],ne[0]=ie[8]*de[2],ne[1]=ie[9]*de[2],ne[2]=ie[10]*de[2],le[0]=ie[8]*he[2],le[1]=ie[9]*he[2],le[2]=ie[10]*he[2],de[0]=Math.min(ye[0],xe[0])+Math.min(ce[0],te[0])+Math.min(ne[0],le[0])+ie[12],de[1]=Math.min(ye[1],xe[1])+Math.min(ce[1],te[1])+Math.min(ne[1],le[1])+ie[13],de[2]=Math.min(ye[2],xe[2])+Math.min(ce[2],te[2])+Math.min(ne[2],le[2])+ie[14],he[0]=Math.max(ye[0],xe[0])+Math.max(ce[0],te[0])+Math.max(ne[0],le[0])+ie[12],he[1]=Math.max(ye[1],xe[1])+Math.max(ce[1],te[1])+Math.max(ne[1],le[1])+ie[13],he[2]=Math.max(ye[2],xe[2])+Math.max(ce[2],te[2])+Math.max(ne[2],le[2])+ie[14],this.min._dirty=!0,this.max._dirty=!0,this}}(),applyProjection:function(ye){var xe=this.min.array,ce=this.max.array,te=ye.array,ne=xe[0],le=xe[1],oe=xe[2],de=ce[0],he=ce[1],ie=xe[2],ue=ce[0],ve=ce[1],Se=ce[2];if(te[15]===1)xe[0]=te[0]*ne+te[12],xe[1]=te[5]*le+te[13],ce[2]=te[10]*oe+te[14],ce[0]=te[0]*ue+te[12],ce[1]=te[5]*ve+te[13],xe[2]=te[10]*Se+te[14];else{var De=-1/oe;xe[0]=te[0]*ne*De,xe[1]=te[5]*le*De,ce[2]=(te[10]*oe+te[14])*De,De=-1/ie,ce[0]=te[0]*de*De,ce[1]=te[5]*he*De,De=-1/Se,xe[2]=(te[10]*Se+te[14])*De}return this.min._dirty=!0,this.max._dirty=!0,this},updateVertices:function(){var ye=this.vertices;if(!ye){for(var ye=[],xe=0;xe<8;xe++)ye[xe]=Ae.fromValues(0,0,0);this.vertices=ye}var ce=this.min.array,te=this.max.array;return we(ye[0],ce[0],ce[1],ce[2]),we(ye[1],ce[0],te[1],ce[2]),we(ye[2],te[0],ce[1],ce[2]),we(ye[3],te[0],te[1],ce[2]),we(ye[4],ce[0],ce[1],te[2]),we(ye[5],ce[0],te[1],te[2]),we(ye[6],te[0],ce[1],te[2]),we(ye[7],te[0],te[1],te[2]),this},copy:function(ye){var xe=this.min,ce=this.max;return be(xe.array,ye.min.array),be(ce.array,ye.max.array),xe._dirty=!0,ce._dirty=!0,this},clone:function(){var ye=new pe;return ye.copy(this),ye}},Fe.a=pe},function(He,Fe,Ce){"use strict";Fe.a=function(_e,Pe,ge){return{seriesType:_e,reset:function(Ae,be){var we=Ae.getData(),pe=Ae.visualColorAccessPath.split(".");pe[pe.length-1]="opacity";var ye=Ae.get(pe);we.setVisual("opacity",ye==null?1:ye);function xe(ce){var te=we.getItemModel(ce),ne=te.get(pe);ne!=null&&we.setItemVisual(ce,"opacity",ne)}return{dataEach:we.hasItemOption?xe:null}}}}},function(He,Fe,Ce){"use strict";var _e=Ce(8),Pe=Ce(6),ge=Ce(21),Ae=Ce(93),be=Ae.a.parseToFloat,we={};function pe(ce,te,ne){var le=Object.keys(ce);le.sort();for(var oe=[],de=0;de=0},getEnabledUniforms:function(){return this._enabledUniforms},getTextureUniforms:function(){return this._textureUniforms},set:function(ce,te){if(typeof ce=="object")for(var ne in ce){var le=ce[ne];this.setUniform(ne,le)}else this.setUniform(ce,te)},get:function(ce){var te=this.uniforms[ce];if(te)return te.value},attachShader:function(ce,te){var ne=this.uniforms;this.uniforms=ce.createUniforms(),this.shader=ce;var le=this.uniforms;this._enabledUniforms=Object.keys(le),this._enabledUniforms.sort(),this._textureUniforms=this._enabledUniforms.filter(function(ve){var Se=this.uniforms[ve].type;return Se==="t"||Se==="tv"},this);var oe=this.vertexDefines,de=this.fragmentDefines;if(this.vertexDefines=ge.a.clone(ce.vertexDefines),this.fragmentDefines=ge.a.clone(ce.fragmentDefines),te){for(var he in ne)le[he]&&(le[he].value=ne[he].value);ge.a.defaults(this.vertexDefines,oe),ge.a.defaults(this.fragmentDefines,de)}var ie={};for(var ue in ce.textures)ie[ue]={shaderType:ce.textures[ue].shaderType,type:ce.textures[ue].type,enabled:te&&this._textureStatus[ue]?this._textureStatus[ue].enabled:!1};this._textureStatus=ie,this._programKey=""},clone:function(){var ce=new this.constructor({name:this.name,shader:this.shader});for(var te in this.uniforms)ce.uniforms[te].value=this.uniforms[te].value;return ce.depthTest=this.depthTest,ce.depthMask=this.depthMask,ce.transparent=this.transparent,ce.blend=this.blend,ce.vertexDefines=ge.a.clone(this.vertexDefines),ce.fragmentDefines=ge.a.clone(this.fragmentDefines),ce.enableTexture(this.getEnabledTextures()),ce.precision=this.precision,ce},define:function(ce,te,ne){var le=this.vertexDefines,oe=this.fragmentDefines;ce!=="vertex"&&ce!=="fragment"&&ce!=="both"&&arguments.length<3&&(ne=te,te=ce,ce="both"),ne=ne!=null?ne:null,(ce==="vertex"||ce==="both")&&le[te]!==ne&&(le[te]=ne,this._programKey=""),(ce==="fragment"||ce==="both")&&oe[te]!==ne&&(oe[te]=ne,ce!=="both"&&(this._programKey=""))},undefine:function(ce,te){ce!=="vertex"&&ce!=="fragment"&&ce!=="both"&&arguments.length<2&&(te=ce,ce="both"),(ce==="vertex"||ce==="both")&&this.isDefined("vertex",te)&&(delete this.vertexDefines[te],this._programKey=""),(ce==="fragment"||ce==="both")&&this.isDefined("fragment",te)&&(delete this.fragmentDefines[te],ce!=="both"&&(this._programKey=""))},isDefined:function(ce,te){switch(ce){case"vertex":return this.vertexDefines[te]!==void 0;case"fragment":return this.fragmentDefines[te]!==void 0}},getDefine:function(ce,te){switch(ce){case"vertex":return this.vertexDefines[te];case"fragment":return this.fragmentDefines[te]}},enableTexture:function(ce){if(Array.isArray(ce)){for(var te=0;te=ue.x&&ie>=ue.y&&he<=ue.x+ue.width&&ie<=ue.y+ue.height};var de=new xe.a;oe.prototype.castRay=function(he,ie,ue){var ve=this.layer.renderer,Se=ve.viewport;return ve.viewport=this.viewport,ve.screenToNDC(he,ie,de),this.camera.castRay(de,ue),ve.viewport=Se,ue},oe.prototype.prepareRender=function(){this.scene.update(),this.camera.update(),this._needsSortProgressively=!1;for(var he=0;he30},oe.prototype._doRender=function(he,ie,ue){var ve=this.scene,Se=this.camera;if(ue=ue||0,this._updateTransparent(he,ve,Se,ue),ie||(this._shadowMapPass.kernelPCF=this._pcfKernels[0],this._shadowMapPass.render(he,ve,Se,!0)),this._updateShadowPCFKernel(ue),he.gl.clearColor(0,0,0,0),this._enablePostEffect&&(this.needsTemporalSS()&&this._temporalSS.jitterProjection(he,Se),this._compositor.updateNormal(he,ve,Se,this._temporalSS.getFrame())),this._updateSSAO(he,ve,Se,this._temporalSS.getFrame()),this._enablePostEffect){var De=this._compositor.getSourceFrameBuffer();De.bind(he),he.gl.clear(he.gl.DEPTH_BUFFER_BIT|he.gl.COLOR_BUFFER_BIT),he.render(ve,Se,!0,!0),De.unbind(he),this.needsTemporalSS()&&ie?(this._compositor.composite(he,Se,this._temporalSS.getSourceFrameBuffer(),this._temporalSS.getFrame()),he.setViewport(this.viewport),this._temporalSS.render(he)):(he.setViewport(this.viewport),this._compositor.composite(he,Se,null,0))}else if(this.needsTemporalSS()&&ie){var De=this._temporalSS.getSourceFrameBuffer();De.bind(he),he.saveClear(),he.clearBit=he.gl.DEPTH_BUFFER_BIT|he.gl.COLOR_BUFFER_BIT,he.render(ve,Se,!0,!0),he.restoreClear(),De.unbind(he),he.setViewport(this.viewport),this._temporalSS.render(he)}else he.setViewport(this.viewport),he.render(ve,Se,!0,!0)},oe.prototype._updateTransparent=function(he,ie,ue,ve){for(var Se=new ye.a,De=new pe.a,Re=ue.getWorldPosition(),Ne=0;Nethis.camera.far||he65535?this.indices instanceof Uint16Array&&(this.indices=new Uint32Array(this.indices)):this.indices instanceof Uint32Array&&(this.indices=new Uint16Array(this.indices)))},setTriangleCount:function(ce){this.triangleCount!==ce&&(ce===0?this.indices=null:this.indices=this.vertexCount>65535?new Uint32Array(ce*3):new Uint16Array(ce*3))},_getCubicCurveApproxStep:function(ce,te,ne,le){var oe=pe.dist(ce,te)+pe.dist(ne,te)+pe.dist(le,ne),de=1/(oe+1)*this.segmentScale;return de},getCubicCurveVertexCount:function(ce,te,ne,le){var oe=this._getCubicCurveApproxStep(ce,te,ne,le),de=Math.ceil(1/oe);return this.useNativeLine?de*2:de*2+2},getCubicCurveTriangleCount:function(ce,te,ne,le){var oe=this._getCubicCurveApproxStep(ce,te,ne,le),de=Math.ceil(1/oe);return this.useNativeLine?0:de*2},getLineVertexCount:function(){return this.getPolylineVertexCount(ye)},getLineTriangleCount:function(){return this.getPolylineTriangleCount(ye)},getPolylineVertexCount:function(ce){var te;if(typeof ce=="number")te=ce;else{var ne=typeof ce[0]!="number";te=ne?ce.length:ce.length/3}return this.useNativeLine?(te-1)*2:(te-1)*2+2},getPolylineTriangleCount:function(ce){var te;if(typeof ce=="number")te=ce;else{var ne=typeof ce[0]!="number";te=ne?ce.length:ce.length/3}return this.useNativeLine?0:Math.max(te-1,0)*2},addCubicCurve:function(ce,te,ne,le,oe,de){de==null&&(de=1);for(var he=ce[0],ie=ce[1],ue=ce[2],ve=te[0],Se=te[1],De=te[2],Re=ne[0],Ne=ne[1],ze=ne[2],Ge=le[0],Xe=le[1],Qe=le[2],nt=this._getCubicCurveApproxStep(ce,te,ne,le),$e=nt*nt,qe=$e*nt,ot=3*nt,at=3*$e,lt=6*$e,rt=6*qe,ut=he-ve*2+Re,yt=ie-Se*2+Ne,ft=ue-De*2+ze,dt=(ve-Re)*3-he+Ge,ht=(Se-Ne)*3-ie+Xe,Ut=(De-ze)*3-ue+Qe,Kt=he,qt=ie,vn=ue,Ot=(ve-he)*ot+ut*at+dt*qe,rn=(Se-ie)*ot+yt*at+ht*qe,an=(De-ue)*ot+ft*at+Ut*qe,On=ut*lt+dt*rt,Rn=yt*lt+ht*rt,sn=ft*lt+Ut*rt,tn=dt*rt,Gt=ht*rt,It=Ut*rt,Et=0,Zt=0,vt=Math.ceil(1/nt),At=new Float32Array((vt+1)*3),At=[],Qt=0,Zt=0;Zt1&&(Kt=Ot>0?Math.min(Kt,Ge):Math.max(Kt,Ge),qt=rn>0?Math.min(qt,Xe):Math.max(qt,Xe),vn=an>0?Math.min(vn,Qe):Math.max(vn,Qe));return this.addPolyline(At,oe,de)},addLine:function(ce,te,ne,le){return this.addPolyline([ce,te],ne,le)},addPolyline:function(ce,te,ne,le,oe){if(ce.length){var de=typeof ce[0]!="number";if(oe==null&&(oe=de?ce.length:ce.length/3),!(oe<2)){le==null&&(le=0),ne==null&&(ne=1),this._itemVertexOffsets.push(this._vertexOffset);var de=typeof ce[0]!="number",he=de?typeof te[0]!="number":te.length/4===oe,ie=this.attributes.position,ue=this.attributes.positionPrev,ve=this.attributes.positionNext,Se=this.attributes.color,De=this.attributes.offset,Re=this.indices,Ne=this._vertexOffset,ze,Ge;ne=Math.max(ne,.01);for(var Xe=le;Xe1&&(ie.copy(Ne,Ne-1),Se.copy(Ne,Ne-1),Ne++):(Xe0&&(ve.set(Ne-2,ze),ve.set(Ne-1,ze)),ie.set(Ne,ze),ie.set(Ne+1,ze),Se.set(Ne,Ge),Se.set(Ne+1,Ge),De.set(Ne,ne/2),De.set(Ne+1,-ne/2),Ne+=2),this.useNativeLine)Se.set(Ne,Ge),ie.set(Ne,ze),Ne++;else if(Xe>0){var $e=this._triangleOffset*3,Re=this.indices;Re[$e]=Ne-4,Re[$e+1]=Ne-3,Re[$e+2]=Ne-2,Re[$e+3]=Ne-3,Re[$e+4]=Ne-1,Re[$e+5]=Ne-2,this._triangleOffset+=2}}if(!this.useNativeLine){var qe=this._vertexOffset,ot=this._vertexOffset+oe*2;ue.copy(qe,qe+2),ue.copy(qe+1,qe+3),ve.copy(ot-1,ot-3),ve.copy(ot-2,ot-4)}return this._vertexOffset=Ne,this._vertexOffset}}},setItemColor:function(ce,te){for(var ne=this._itemVertexOffsets[ce],le=ce0)},render:function(be,we,pe){var ye=be.gl;if(this.skeleton){this.skeleton.update();var xe=this.skeleton.getSubSkinMatrices(this.__uid__,this.joints);pe.setUniformOfSemantic(ye,"SKIN_MATRIX",xe)}return _e.a.prototype.render.call(this,be,we,pe)},getSkinMatricesTexture:function(){return this._skinMatricesTexture=this._skinMatricesTexture||new ge.a({type:Pe.a.FLOAT,minFilter:Pe.a.NEAREST,magFilter:Pe.a.NEAREST,useMipmap:!1,flipY:!1}),this._skinMatricesTexture}});Ae.POINTS=Pe.a.POINTS,Ae.LINES=Pe.a.LINES,Ae.LINE_LOOP=Pe.a.LINE_LOOP,Ae.LINE_STRIP=Pe.a.LINE_STRIP,Ae.TRIANGLES=Pe.a.TRIANGLES,Ae.TRIANGLE_STRIP=Pe.a.TRIANGLE_STRIP,Ae.TRIANGLE_FAN=Pe.a.TRIANGLE_FAN,Ae.BACK=Pe.a.BACK,Ae.FRONT=Pe.a.FRONT,Ae.FRONT_AND_BACK=Pe.a.FRONT_AND_BACK,Ae.CW=Pe.a.CW,Ae.CCW=Pe.a.CCW,Fe.a=Ae},function(He,Fe,Ce){"use strict";var _e=Ce(6),Pe=Ce(11),ge=Ce(21),Ae=Ce(66),be=Ae.a.isPowerOfTwo,we=["px","nx","py","ny","pz","nz"],pe=_e.a.extend(function(){return{image:{px:null,nx:null,py:null,ny:null,pz:null,nz:null},pixels:{px:null,nx:null,py:null,ny:null,pz:null,nz:null},mipmaps:[]}},{update:function(xe){var ce=xe.gl;ce.bindTexture(ce.TEXTURE_CUBE_MAP,this._cache.get("webgl_texture")),this.updateCommon(xe);var te=this.format,ne=this.type;ce.texParameteri(ce.TEXTURE_CUBE_MAP,ce.TEXTURE_WRAP_S,this.getAvailableWrapS()),ce.texParameteri(ce.TEXTURE_CUBE_MAP,ce.TEXTURE_WRAP_T,this.getAvailableWrapT()),ce.texParameteri(ce.TEXTURE_CUBE_MAP,ce.TEXTURE_MAG_FILTER,this.getAvailableMagFilter()),ce.texParameteri(ce.TEXTURE_CUBE_MAP,ce.TEXTURE_MIN_FILTER,this.getAvailableMinFilter());var le=xe.getGLExtension("EXT_texture_filter_anisotropic");if(le&&this.anisotropic>1&&ce.texParameterf(ce.TEXTURE_CUBE_MAP,le.TEXTURE_MAX_ANISOTROPY_EXT,this.anisotropic),ne===36193){var oe=xe.getGLExtension("OES_texture_half_float");oe||(ne=Pe.a.FLOAT)}if(this.mipmaps.length)for(var de=this.width,he=this.height,ie=0;ie0&&console.warn("Found multiple camera in one scene. Use the fist one."),this._cameraList.push(ce)),ce.name&&(this._nodeRepository[ce.name]=ce)},removeFromScene:function(ce){if(ce instanceof ge.a){var te=this._cameraList.indexOf(ce);te>=0&&this._cameraList.splice(te,1)}ce.name&&delete this._nodeRepository[ce.name]},getNode:function(ce){return this._nodeRepository[ce]},cloneNode:function(ce){var te=ce.clone(),ne={},le=function(de,he){de.skeleton&&(he.skeleton=de.skeleton.clone(ce,te),he.joints=de.joints.slice()),de.material&&(ne[de.material.__uid__]={oldMat:de.material});for(var ie=0;ie0&&this._updateRenderList(le)}},_updateLightUniforms:function(){var ce=this.lights;ce.sort(xe);var te=this._lightUniforms;for(var ne in te)for(var le in te[ne])te[ne][le].value.length=0;for(var oe=0;oe0?_e[Pe].value=new Float32Array(_e[Pe].value):_e[Pe].value=null;this.indices&&this.indices.length>0&&(this.indices=this.vertexCount>65535?new Uint32Array(this.indices):new Uint16Array(this.indices)),this.dirty()}}},function(He,Fe,Ce){"use strict";var _e=Ce(2),Pe=Ce(57),ge=Ce(56),Ae=Ce(0),be=Ce.n(Ae);function we(){}we.prototype={constructor:we,setScene:function(pe){this._scene=pe,this._skybox&&this._skybox.attachScene(this._scene)},initLight:function(pe){this._lightRoot=pe,this.mainLight=new _e.a.DirectionalLight({shadowBias:.005}),this.ambientLight=new _e.a.AmbientLight,pe.add(this.mainLight),pe.add(this.ambientLight)},dispose:function(){this._lightRoot&&(this._lightRoot.remove(this.mainLight),this._lightRoot.remove(this.ambientLight))},updateLight:function(pe){var ye=this.mainLight,xe=this.ambientLight,ce=pe.getModel("light"),te=ce.getModel("main"),ne=ce.getModel("ambient");ye.intensity=te.get("intensity"),xe.intensity=ne.get("intensity"),ye.color=_e.a.parseColor(te.get("color")).slice(0,3),xe.color=_e.a.parseColor(ne.get("color")).slice(0,3);var le=te.get("alpha")||0,oe=te.get("beta")||0;ye.position.setArray(_e.a.directionFromAlphaBeta(le,oe)),ye.lookAt(_e.a.Vector3.ZERO),ye.castShadow=te.get("shadow"),ye.shadowResolution=_e.a.getShadowResolution(te.get("shadowQuality"))},updateAmbientCubemap:function(pe,ye,xe){var ce=ye.getModel("light.ambientCubemap"),te=ce.get("texture");if(te){this._cubemapLightsCache=this._cubemapLightsCache||{};var ne=this._cubemapLightsCache[te];if(!ne){var le=this;ne=this._cubemapLightsCache[te]=_e.a.createAmbientCubemap(ce.option,pe,xe,function(){le._skybox instanceof Pe.a&&le._skybox.setEnvironmentMap(ne.specular.cubemap),xe.getZr().refresh()})}this._lightRoot.add(ne.diffuse),this._lightRoot.add(ne.specular),this._currentCubemapLights=ne}else this._currentCubemapLights&&(this._lightRoot.remove(this._currentCubemapLights.diffuse),this._lightRoot.remove(this._currentCubemapLights.specular),this._currentCubemapLights=null)},updateSkybox:function(pe,ye,xe){var ce=ye.get("environment"),te=this;function ne(){return te._skybox instanceof Pe.a||(te._skybox&&te._skybox.dispose(pe),te._skybox=new Pe.a),te._skybox}function le(){return te._skybox instanceof ge.a||(te._skybox&&te._skybox.dispose(pe),te._skybox=new ge.a),te._skybox}if(ce&&ce!=="none")if(ce==="auto")if(this._currentCubemapLights){var oe=ne(),de=this._currentCubemapLights.specular.cubemap;oe.setEnvironmentMap(de),this._scene&&oe.attachScene(this._scene),oe.material.set("lod",2)}else this._skybox&&this._skybox.detachScene();else if(typeof ce=="object"&&ce.colorStops||typeof ce=="string"&&be.a.color.parse(ce)){var he=le(),ie=new _e.a.Texture2D({anisotropic:8,flipY:!1});he.setEnvironmentMap(ie);var ue=ie.image=document.createElement("canvas");ue.width=ue.height=16;var ve=ue.getContext("2d"),Se=new be.a.graphic.Rect({shape:{x:0,y:0,width:16,height:16},style:{fill:ce}});Se.brush(ve),he.attachScene(this._scene)}else{var he=le(),ie=_e.a.loadTexture(ce,xe,{anisotropic:8,flipY:!1});he.setEnvironmentMap(ie),he.attachScene(this._scene)}else this._skybox&&this._skybox.detachScene(this._scene),this._skybox=null;var De=ye.coordinateSystem;if(this._skybox)if(De&&De.viewGL&&ce!=="auto"&&!(ce.match&&ce.match(/.hdr$/))){var Re=De.viewGL.isLinearSpace()?"define":"undefine";this._skybox.material[Re]("fragment","SRGB_DECODE")}else this._skybox.material.undefine("fragment","SRGB_DECODE")}},Fe.a=we},function(He,Fe,Ce){"use strict";var _e=Ce(0),Pe=Ce.n(_e);function ge(Ae,be){var we=[];return Pe.a.util.each(Ae.dimensions,function(pe){var ye=Ae.getDimensionInfo(pe),xe=ye.otherDims,ce=xe[be];ce!=null&&ce!==!1&&(we[ce]=ye.name)}),we}Fe.a=function(Ae,be,we){function pe(de){var he=!0,ie=[],ue=ge(ye,"tooltip");ue.length?Pe.a.util.each(ue,function(Se){ve(ye.get(Se,be),Se)}):Pe.a.util.each(de,ve);function ve(Se,De){var Re=ye.getDimensionInfo(De);if(!(!Re||Re.otherDims.tooltip===!1)){var Ne=Re.type,ze=(he?"- "+(Re.tooltipName||Re.name)+": ":"")+(Ne==="ordinal"?Se+"":Ne==="time"?we?"":Pe.a.format.formatTime("yyyy/MM/dd hh:mm:ss",Se):Pe.a.format.addCommas(Se));ze&&ie.push(Pe.a.format.encodeHTML(ze))}}return(he?"
    ":"")+ie.join(he?"
    ":", ")}var ye=Ae.getData(),xe=Ae.getRawValue(be),ce=Pe.a.util.isArray(xe)?pe(xe):Pe.a.format.encodeHTML(Pe.a.format.addCommas(xe)),te=ye.getName(be),ne=ye.getItemVisual(be,"color");Pe.a.util.isObject(ne)&&ne.colorStops&&(ne=(ne.colorStops[0]||{}).color),ne=ne||"transparent";var le=Pe.a.format.getTooltipMarker(ne),oe=Ae.name;return oe==="\0-"&&(oe=""),oe=oe?Pe.a.format.encodeHTML(oe)+(we?": ":"
    "):"",we?le+oe+ce:oe+le+(te?Pe.a.format.encodeHTML(te)+": "+ce:ce)}},function(He,Fe,Ce){"use strict";var _e=Ce(51),Pe=_e.a.extend({fov:50,aspect:1,near:.1,far:2e3},{updateProjectionMatrix:function(){var ge=this.fov/180*Math.PI;this.projectionMatrix.perspective(ge,this.aspect,this.near,this.far)},decomposeProjectionMatrix:function(){var ge=this.projectionMatrix.array,Ae=Math.atan(1/ge[5])*2;this.fov=Ae/Math.PI*180,this.aspect=ge[5]/ge[0],this.near=ge[14]/(ge[10]-1),this.far=ge[14]/(ge[10]+1)},clone:function(){var ge=_e.a.prototype.clone.call(this);return ge.fov=this.fov,ge.aspect=this.aspect,ge.near=this.near,ge.far=this.far,ge}});Fe.a=Pe},function(He,Fe,Ce){"use strict";var _e=Ce(13),Pe=Ce(15),ge=_e.a.extend({dynamic:!1,widthSegments:1,heightSegments:1},function(){this.build()},{build:function(){for(var Ae=this.heightSegments,be=this.widthSegments,we=this.attributes,pe=[],ye=[],xe=[],ce=[],te=0;te<=Ae;te++)for(var ne=te/Ae,le=0;le<=be;le++){var oe=le/be;if(pe.push([2*oe-1,2*ne-1,0]),ye&&ye.push([oe,ne]),xe&&xe.push([0,0,1]),le0&&this._notFirst?this.animateTo({alpha:ve,beta:Se,center:De,distance:de,targetOrthographicSize:he,easing:ue.animationEasingUpdate,duration:ue.animationDurationUpdate}):(this.setDistance(de),this.setAlpha(ve),this.setBeta(Se),this.setCenter(De),this.setOrthographicSize(he)),this._notFirst=!0,this._validateProperties()},_validateProperties:function(){pe[this.panMouseButton]==null&&console.error("Unkown panMouseButton %s. It should be left|middle|right",this.panMouseButton),pe[this.rotateMouseButton]==null&&console.error("Unkown rotateMouseButton %s. It should be left|middle|right",this.rotateMouseButton),this.autoRotateDirection!=="cw"&&this.autoRotateDirection!=="ccw"&&console.error("Unkown autoRotateDirection %s. It should be cw|ccw",this.autoRotateDirection)},animateTo:function(ce){var te=this.zr,ne=this,le={},oe={};return ce.distance!=null&&(le.distance=this.getDistance(),oe.distance=ce.distance),ce.orthographicSize!=null&&(le.orthographicSize=this.getOrthographicSize(),oe.orthographicSize=ce.orthographicSize),ce.alpha!=null&&(le.alpha=this.getAlpha(),oe.alpha=ce.alpha),ce.beta!=null&&(le.beta=this.getBeta(),oe.beta=ce.beta),ce.center!=null&&(le.center=this.getCenter(),oe.center=ce.center),this._addAnimator(te.animation.animate(le).when(ce.duration||1e3,oe).during(function(){le.alpha!=null&&ne.setAlpha(le.alpha),le.beta!=null&&ne.setBeta(le.beta),le.distance!=null&&ne.setDistance(le.distance),le.center!=null&&ne.setCenter(le.center),le.orthographicSize!=null&&ne.setOrthographicSize(le.orthographicSize),ne._needsUpdate=!0})).start(ce.easing||"linear")},stopAllAnimation:function(){for(var ce=0;ce0},_update:function(ce){if(this._rotating){var te=(this.autoRotateDirection==="cw"?1:-1)*this.autoRotateSpeed/180*Math.PI;this._phi-=te*ce/1e3,this._needsUpdate=!0}else this._rotateVelocity.len()>0&&(this._needsUpdate=!0);(Math.abs(this._zoomSpeed)>.1||this._panVelocity.len()>0)&&(this._needsUpdate=!0),this._needsUpdate&&(ce=Math.min(ce,50),this._updateDistanceOrSize(ce),this._updatePan(ce),this._updateRotate(ce),this._updateTransform(),this.getCamera().update(),this.zr&&this.zr.refresh(),this.trigger("update"),this._needsUpdate=!1)},_updateRotate:function(ce){var te=this._rotateVelocity;this._phi=te.y*ce/20+this._phi,this._theta=te.x*ce/20+this._theta,this.setAlpha(this.getAlpha()),this.setBeta(this.getBeta()),this._vectorDamping(te,Math.pow(this.damping,ce/16))},_updateDistanceOrSize:function(ce){this._projection==="perspective"?this._setDistance(this._distance+this._zoomSpeed*ce/20):this._setOrthoSize(this._orthoSize+this._zoomSpeed*ce/20),this._zoomSpeed*=Math.pow(this.damping,ce/16)},_setDistance:function(ce){this._distance=Math.max(Math.min(ce,this.maxDistance),this.minDistance)},_setOrthoSize:function(ce){this._orthoSize=Math.max(Math.min(ce,this.maxOrthographicSize),this.minOrthographicSize);var te=this.getCamera(),ne=this._orthoSize,le=ne/this.viewGL.viewport.height*this.viewGL.viewport.width;te.left=-le/2,te.right=le/2,te.top=ne/2,te.bottom=-ne/2},_updatePan:function(ce){var te=this._panVelocity,ne=this._distance,le=this.getCamera(),oe=le.worldTransform.y,de=le.worldTransform.x;this._center.scaleAndAdd(de,-te.x*ne/200).scaleAndAdd(oe,-te.y*ne/200),this._vectorDamping(te,0)},_updateTransform:function(){var ce=this.getCamera(),te=new ge.a,ne=this._theta+Math.PI/2,le=this._phi+Math.PI/2,oe=Math.sin(ne);te.x=oe*Math.cos(le),te.y=-Math.cos(ne),te.z=oe*Math.sin(le),ce.position.copy(this._center).scaleAndAdd(te,this._distance),ce.rotation.identity().rotateY(-this._phi).rotateX(-this._theta)},_startCountingStill:function(){clearTimeout(this._stillTimeout);var ce=this.autoRotateAfterStill,te=this;!isNaN(ce)&&ce>0&&(this._stillTimeout=setTimeout(function(){te._rotating=!0},ce*1e3))},_vectorDamping:function(ce,te){var ne=ce.len();ne=ne*te,ne<1e-4&&(ne=0),ce.normalize().scale(ne)},_decomposeTransform:function(){if(this.getCamera()){this.getCamera().updateWorldTransform();var ce=this.getCamera().worldTransform.z,te=Math.asin(ce.y),ne=Math.atan2(ce.x,ce.z);this._theta=te,this._phi=-ne,this.setBeta(this.getBeta()),this.setAlpha(this.getAlpha()),this.getCamera().aspect?this._setDistance(this.getCamera().position.dist(this._center)):this._setOrthoSize(this.getCamera().top-this.getCamera().bottom)}},_mouseDownHandler:function(ce){if(!ce.target&&!this._isAnimating()){var te=ce.offsetX,ne=ce.offsetY;this.viewGL&&!this.viewGL.containPoint(te,ne)||(this.zr.on("mousemove",this._mouseMoveHandler),this.zr.on("mouseup",this._mouseUpHandler),ce.event.targetTouches?ce.event.targetTouches.length===1&&(this._mode="rotate"):ce.event.button===pe[this.rotateMouseButton]?this._mode="rotate":ce.event.button===pe[this.panMouseButton]?this._mode="pan":this._mode="",this._rotateVelocity.set(0,0),this._rotating=!1,this.autoRotate&&this._startCountingStill(),this._mouseX=ce.offsetX,this._mouseY=ce.offsetY)}},_mouseMoveHandler:function(ce){if(!(ce.target&&ce.target.__isGLToZRProxy)&&!this._isAnimating()){var te=ye(this.panSensitivity),ne=ye(this.rotateSensitivity);this._mode==="rotate"?(this._rotateVelocity.y=(ce.offsetX-this._mouseX)/this.zr.getHeight()*2*ne[0],this._rotateVelocity.x=(ce.offsetY-this._mouseY)/this.zr.getWidth()*2*ne[1]):this._mode==="pan"&&(this._panVelocity.x=(ce.offsetX-this._mouseX)/this.zr.getWidth()*te[0]*400,this._panVelocity.y=(-ce.offsetY+this._mouseY)/this.zr.getHeight()*te[1]*400),this._mouseX=ce.offsetX,this._mouseY=ce.offsetY,ce.event.preventDefault()}},_mouseWheelHandler:function(ce){if(!this._isAnimating()){var te=ce.event.wheelDelta||-ce.event.detail;this._zoomHandler(ce,te)}},_pinchHandler:function(ce){this._isAnimating()||(this._zoomHandler(ce,ce.pinchScale>1?1:-1),this._mode="")},_zoomHandler:function(ce,te){if(te!==0){var ne=ce.offsetX,le=ce.offsetY;if(!(this.viewGL&&!this.viewGL.containPoint(ne,le))){var oe;this._projection==="perspective"?oe=Math.max(Math.max(Math.min(this._distance-this.minDistance,this.maxDistance-this._distance))/20,.5):oe=Math.max(Math.max(Math.min(this._orthoSize-this.minOrthographicSize,this.maxOrthographicSize-this._orthoSize))/20,.5),this._zoomSpeed=(te>0?-1:1)*oe*this.zoomSensitivity,this._rotating=!1,this.autoRotate&&this._mode==="rotate"&&this._startCountingStill(),ce.event.preventDefault()}}},_mouseUpHandler:function(){this.zr.off("mousemove",this._mouseMoveHandler),this.zr.off("mouseup",this._mouseUpHandler)},_isRightMouseButtonUsed:function(){return this.rotateMouseButton==="right"||this.panMouseButton==="right"},_contextMenuHandler:function(ce){this._isRightMouseButtonUsed()&&ce.preventDefault()},_addAnimator:function(ce){var te=this._animators;return te.push(ce),ce.done(function(){var ne=te.indexOf(ce);ne>=0&&te.splice(ne,1)}),ce}});Object.defineProperty(xe.prototype,"autoRotate",{get:function(ce){return this._autoRotate},set:function(ce){this._autoRotate=ce,this._rotating=ce}}),Fe.a=xe},function(He,Fe,Ce){"use strict";Fe.a=`@export ecgl.lines3D.vertex uniform mat4 worldViewProjection : WORLDVIEWPROJECTION; attribute vec3 position: POSITION; attribute vec4 a_Color : COLOR; varying vec4 v_Color; void main() { gl_Position = worldViewProjection * vec4(position, 1.0); v_Color = a_Color; } @end @export ecgl.lines3D.fragment uniform vec4 color : [1.0, 1.0, 1.0, 1.0]; varying vec4 v_Color; @import clay.util.srgb void main() { #ifdef SRGB_DECODE gl_FragColor = sRGBToLinear(color * v_Color); #else gl_FragColor = color * v_Color; #endif } @end @export ecgl.lines3D.clipNear vec4 clipNear(vec4 p1, vec4 p2) { float n = (p1.w - near) / (p1.w - p2.w); return vec4(mix(p1.xy, p2.xy, n), -near, near); } @end @export ecgl.lines3D.expandLine #ifdef VERTEX_ANIMATION vec4 prevProj = worldViewProjection * vec4(mix(prevPositionPrev, positionPrev, percent), 1.0); vec4 currProj = worldViewProjection * vec4(mix(prevPosition, position, percent), 1.0); vec4 nextProj = worldViewProjection * vec4(mix(prevPositionNext, positionNext, percent), 1.0); #else vec4 prevProj = worldViewProjection * vec4(positionPrev, 1.0); vec4 currProj = worldViewProjection * vec4(position, 1.0); vec4 nextProj = worldViewProjection * vec4(positionNext, 1.0); #endif if (currProj.w < 0.0) { if (nextProj.w > 0.0) { currProj = clipNear(currProj, nextProj); } else if (prevProj.w > 0.0) { currProj = clipNear(currProj, prevProj); } } vec2 prevScreen = (prevProj.xy / abs(prevProj.w) + 1.0) * 0.5 * viewport.zw; vec2 currScreen = (currProj.xy / abs(currProj.w) + 1.0) * 0.5 * viewport.zw; vec2 nextScreen = (nextProj.xy / abs(nextProj.w) + 1.0) * 0.5 * viewport.zw; vec2 dir; float len = offset; if (position == positionPrev) { dir = normalize(nextScreen - currScreen); } else if (position == positionNext) { dir = normalize(currScreen - prevScreen); } else { vec2 dirA = normalize(currScreen - prevScreen); vec2 dirB = normalize(nextScreen - currScreen); vec2 tanget = normalize(dirA + dirB); float miter = 1.0 / max(dot(tanget, dirA), 0.5); len *= miter; dir = tanget; } dir = vec2(-dir.y, dir.x) * len; currScreen += dir; currProj.xy = (currScreen / viewport.zw - 0.5) * 2.0 * abs(currProj.w); @end @export ecgl.meshLines3D.vertex attribute vec3 position: POSITION; attribute vec3 positionPrev; attribute vec3 positionNext; attribute float offset; attribute vec4 a_Color : COLOR; #ifdef VERTEX_ANIMATION attribute vec3 prevPosition; attribute vec3 prevPositionPrev; attribute vec3 prevPositionNext; uniform float percent : 1.0; #endif uniform mat4 worldViewProjection : WORLDVIEWPROJECTION; uniform vec4 viewport : VIEWPORT; uniform float near : NEAR; varying vec4 v_Color; @import ecgl.common.wireframe.vertexHeader @import ecgl.lines3D.clipNear void main() { @import ecgl.lines3D.expandLine gl_Position = currProj; v_Color = a_Color; @import ecgl.common.wireframe.vertexMain } @end @export ecgl.meshLines3D.fragment uniform vec4 color : [1.0, 1.0, 1.0, 1.0]; varying vec4 v_Color; @import ecgl.common.wireframe.fragmentHeader @import clay.util.srgb void main() { #ifdef SRGB_DECODE gl_FragColor = sRGBToLinear(color * v_Color); #else gl_FragColor = color * v_Color; #endif @import ecgl.common.wireframe.fragmentMain } @end`},function(He,Fe,Ce){var _e=Ce(12),Pe=Ce(75),ge=Ce(78),Ae=ge.parsePercent,be=Ce(149),we=_e.each,pe=["left","right","top","bottom","width","height"],ye=[["width","left","right"],["height","top","bottom"]];function xe(Se,De,Re,Ne,ze){var Ge=0,Xe=0;Ne==null&&(Ne=1/0),ze==null&&(ze=1/0);var Qe=0;De.eachChild(function(nt,$e){var qe=nt.position,ot=nt.getBoundingRect(),at=De.childAt($e+1),lt=at&&at.getBoundingRect(),rt,ut;if(Se==="horizontal"){var yt=ot.width+(lt?-lt.x+ot.x:0);rt=Ge+yt,rt>Ne||nt.newline?(Ge=0,rt=yt,Xe+=Qe+Re,Qe=ot.height):Qe=Math.max(Qe,ot.height)}else{var ft=ot.height+(lt?-lt.y+ot.y:0);ut=Xe+ft,ut>ze||nt.newline?(Ge+=Qe+Re,Xe=0,ut=ft,Qe=ot.width):Qe=Math.max(Qe,ot.width)}nt.newline||(qe[0]=Ge,qe[1]=Xe,Se==="horizontal"?Ge=rt+Re:Xe=ut+Re)})}var ce=xe,te=_e.curry(xe,"vertical"),ne=_e.curry(xe,"horizontal");function le(Se,De,Re){var Ne=De.width,ze=De.height,Ge=Ae(Se.x,Ne),Xe=Ae(Se.y,ze),Qe=Ae(Se.x2,Ne),nt=Ae(Se.y2,ze);return(isNaN(Ge)||isNaN(parseFloat(Se.x)))&&(Ge=0),(isNaN(Qe)||isNaN(parseFloat(Se.x2)))&&(Qe=Ne),(isNaN(Xe)||isNaN(parseFloat(Se.y)))&&(Xe=0),(isNaN(nt)||isNaN(parseFloat(Se.y2)))&&(nt=ze),Re=be.normalizeCssArray(Re||0),{width:Math.max(Qe-Ge-Re[1]-Re[3],0),height:Math.max(nt-Xe-Re[0]-Re[2],0)}}function oe(Se,De,Re){Re=be.normalizeCssArray(Re||0);var Ne=De.width,ze=De.height,Ge=Ae(Se.left,Ne),Xe=Ae(Se.top,ze),Qe=Ae(Se.right,Ne),nt=Ae(Se.bottom,ze),$e=Ae(Se.width,Ne),qe=Ae(Se.height,ze),ot=Re[2]+Re[0],at=Re[1]+Re[3],lt=Se.aspect;switch(isNaN($e)&&($e=Ne-Qe-at-Ge),isNaN(qe)&&(qe=ze-nt-ot-Xe),lt!=null&&(isNaN($e)&&isNaN(qe)&&(lt>Ne/ze?$e=Ne*.8:qe=ze*.8),isNaN($e)&&($e=lt*qe),isNaN(qe)&&(qe=$e/lt)),isNaN(Ge)&&(Ge=Ne-Qe-$e-at),isNaN(Xe)&&(Xe=ze-nt-qe-ot),Se.left||Se.right){case"center":Ge=Ne/2-$e/2-Re[3];break;case"right":Ge=Ne-$e-at;break}switch(Se.top||Se.bottom){case"middle":case"center":Xe=ze/2-qe/2-Re[0];break;case"bottom":Xe=ze-qe-ot;break}Ge=Ge||0,Xe=Xe||0,isNaN($e)&&($e=Ne-at-Ge-(Qe||0)),isNaN(qe)&&(qe=ze-ot-Xe-(nt||0));var rt=new Pe(Ge+Re[3],Xe+Re[0],$e,qe);return rt.margin=Re,rt}function de(Se,De,Re,Ne,ze){var Ge=!ze||!ze.hv||ze.hv[0],Xe=!ze||!ze.hv||ze.hv[1],Qe=ze&&ze.boundingMode||"all";if(!(!Ge&&!Xe)){var nt;if(Qe==="raw")nt=Se.type==="group"?new Pe(0,0,+De.width||0,+De.height||0):Se.getBoundingRect();else if(nt=Se.getBoundingRect(),Se.needLocalTransform()){var $e=Se.getLocalTransform();nt=nt.clone(),nt.applyTransform($e)}De=oe(_e.defaults({width:nt.width,height:nt.height},De),Re,Ne);var qe=Se.position,ot=Ge?De.x-nt.x:0,at=Xe?De.y-nt.y:0;Se.attr("position",Qe==="raw"?[ot,at]:[qe[0]+ot,qe[1]+at])}}function he(Se,De){return Se[ye[De][0]]!=null||Se[ye[De][1]]!=null&&Se[ye[De][2]]!=null}function ie(Se,De,Re){!_e.isObject(Re)&&(Re={});var Ne=Re.ignoreSize;!_e.isArray(Ne)&&(Ne=[Ne,Ne]);var ze=Xe(ye[0],0),Ge=Xe(ye[1],1);$e(ye[0],Se,ze),$e(ye[1],Se,Ge);function Xe(qe,ot){var at={},lt=0,rt={},ut=0,yt=2;if(we(qe,function(ht){rt[ht]=Se[ht]}),we(qe,function(ht){Qe(De,ht)&&(at[ht]=rt[ht]=De[ht]),nt(at,ht)&<++,nt(rt,ht)&&ut++}),Ne[ot])return nt(De,qe[1])?rt[qe[2]]=null:nt(De,qe[2])&&(rt[qe[1]]=null),rt;if(ut===yt||!lt)return rt;if(lt>=yt)return at;for(var ft=0;ft0){var Ae=this.outputs[ge];Ae.keepLastFrame?(this._prevOutputTextures[ge]&&this._compositor.releaseTexture(this._prevOutputTextures[ge]),this._prevOutputTextures[ge]=this._outputTextures[ge]):this._compositor.releaseTexture(this._outputTextures[ge])}}});Fe.a=Pe},function(He,Fe,Ce){"use strict";function _e(Pe,ge){for(var Ae=0,be=1/ge,we=Pe;we>0;)Ae=Ae+be*(we%ge),we=Math.floor(we/ge),be=be/ge;return Ae}Fe.a=_e},function(He,Fe,Ce){"use strict";var _e=Ce(0),Pe=Ce.n(_e);Fe.a=function(ge,Ae,be){be=be||ge.getSource();var we=Ae||Pe.a.getCoordinateSystemDimensions(ge.get("coordinateSystem"))||["x","y","z"],pe=Pe.a.helper.createDimensions(be,{dimensionsDefine:be.dimensionsDefine||ge.get("dimensions"),encodeDefine:be.encodeDefine||ge.get("encode"),coordDimensions:we.map(function(xe){var ce=ge.getReferringComponents(xe+"Axis3D")[0];return{type:ce&&ce.get("type")==="category"?"ordinal":"float",name:xe,stackable:xe==="z"}})});ge.get("coordinateSystem")==="cartesian3D"&&pe.forEach(function(xe){if(we.indexOf(xe.coordDim)>=0){var ce=ge.getReferringComponents(xe.coordDim+"Axis3D")[0];ce&&ce.get("type")==="category"&&(xe.ordinalMeta=ce.getOrdinalMeta())}});var ye=new Pe.a.List(pe,ge);return ye.initData(be),ye}},function(He,Fe){function Ce(_e,Pe,ge){return{seriesType:_e,performRawSeries:!0,reset:function(Ae,be,we){var pe=Ae.getData(),ye=Ae.get("symbol")||Pe,xe=Ae.get("symbolSize");if(pe.setVisual({legendSymbol:ge||ye,symbol:ye,symbolSize:xe}),be.isSeriesFiltered(Ae))return;var ce=typeof xe=="function";function te(ne,le){if(typeof xe=="function"){var oe=Ae.getRawValue(le),de=Ae.getDataParams(le);ne.setItemVisual(le,"symbolSize",xe(oe,de))}if(ne.hasItemOption){var he=ne.getItemModel(le),ie=he.getShallow("symbol",!0),ue=he.getShallow("symbolSize",!0);ie!=null&&ne.setItemVisual(le,"symbol",ie),ue!=null&&ne.setItemVisual(le,"symbolSize",ue)}}return{dataEach:pe.hasItemOption||ce?te:null}}}}He.exports=Ce},function(He,Fe,Ce){"use strict";var _e=Ce(8),Pe=Ce(92),ge=Ce(11),Ae=Ce(18),be=Ce(15),we=Ce(9),pe=Ce(17),ye=Ce(23),xe=Ce(96),ce=Ce(7),te=Ce(98),ne=Ce(63),le=Ce(1),oe=Ce.n(le);ce.a.import(te.a),ce.a.import(ne.a);var de=oe.a.mat4,he=oe.a.vec3,ie=de.create,ue={};function ve(Ne){return Ne.material}function Se(){}var De=_e.a.extend(function(){return{canvas:null,_width:100,_height:100,devicePixelRatio:window.devicePixelRatio||1,clearColor:[0,0,0,0],clearBit:17664,alpha:!0,depth:!0,stencil:!1,antialias:!0,premultipliedAlpha:!0,preserveDrawingBuffer:!1,throwError:!0,gl:null,viewport:{},__currentFrameBuffer:null,_viewportStack:[],_clearStack:[],_sceneRendering:null}},function(){this.canvas||(this.canvas=document.createElement("canvas"));var Ne=this.canvas;try{var ze={alpha:this.alpha,depth:this.depth,stencil:this.stencil,antialias:this.antialias,premultipliedAlpha:this.premultipliedAlpha,preserveDrawingBuffer:this.preserveDrawingBuffer};if(this.gl=Ne.getContext("webgl",ze)||Ne.getContext("experimental-webgl",ze),!this.gl)throw new Error;this._glinfo=new Pe.a(this.gl),this.gl.targetRenderer&&console.error("Already created a renderer"),this.gl.targetRenderer=this,this.resize()}catch(Ge){throw"Error creating WebGL Context "+Ge}this._programMgr=new xe.a(this)},{resize:function(Ne,ze){var Ge=this.canvas,Xe=this.devicePixelRatio;Ne!=null?(Ge.style.width=Ne+"px",Ge.style.height=ze+"px",Ge.width=Ne*Xe,Ge.height=ze*Xe,this._width=Ne,this._height=ze):(this._width=Ge.width/Xe,this._height=Ge.height/Xe),this.setViewport(0,0,this._width,this._height)},getWidth:function(){return this._width},getHeight:function(){return this._height},getViewportAspect:function(){var Ne=this.viewport;return Ne.width/Ne.height},setDevicePixelRatio:function(Ne){this.devicePixelRatio=Ne,this.resize(this._width,this._height)},getDevicePixelRatio:function(){return this.devicePixelRatio},getGLExtension:function(Ne){return this._glinfo.getExtension(Ne)},getGLParameter:function(Ne){return this._glinfo.getParameter(Ne)},setViewport:function(Ne,ze,Ge,Xe,Qe){if(typeof Ne=="object"){var nt=Ne;Ne=nt.x,ze=nt.y,Ge=nt.width,Xe=nt.height,Qe=nt.devicePixelRatio}Qe=Qe||this.devicePixelRatio,this.gl.viewport(Ne*Qe,ze*Qe,Ge*Qe,Xe*Qe),this.viewport={x:Ne,y:ze,width:Ge,height:Xe,devicePixelRatio:Qe}},saveViewport:function(){this._viewportStack.push(this.viewport)},restoreViewport:function(){this._viewportStack.length>0&&this.setViewport(this._viewportStack.pop())},saveClear:function(){this._clearStack.push({clearBit:this.clearBit,clearColor:this.clearColor})},restoreClear:function(){if(this._clearStack.length>0){var Ne=this._clearStack.pop();this.clearColor=Ne.clearColor,this.clearBit=Ne.clearBit}},bindSceneRendering:function(Ne){this._sceneRendering=Ne},render:function(Ne,ze,Ge,Xe){var Qe=this.gl,nt=this.clearColor;if(this.clearBit){Qe.colorMask(!0,!0,!0,!0),Qe.depthMask(!0);var $e=this.viewport,qe=!1,ot=$e.devicePixelRatio;($e.width!==this._width||$e.height!==this._height||ot&&ot!==this.devicePixelRatio||$e.x||$e.y)&&(qe=!0,Qe.enable(Qe.SCISSOR_TEST),Qe.scissor($e.x*ot,$e.y*ot,$e.width*ot,$e.height*ot)),Qe.clearColor(nt[0],nt[1],nt[2],nt[3]),Qe.clear(this.clearBit),qe&&Qe.disable(Qe.SCISSOR_TEST)}if(Ge||Ne.update(!1),ze=ze||Ne.getMainCamera(),!ze){console.error("Can't find camera in the scene.");return}ze.getScene()||ze.update(!0),this._sceneRendering=Ne,Ne.viewBoundingBoxLastFrame.min.set(1/0,1/0,1/0),Ne.viewBoundingBoxLastFrame.max.set(-1/0,-1/0,-1/0);var at=this.cullRenderList(Ne.opaqueList,Ne,ze),lt=this.cullRenderList(Ne.transparentList,Ne,ze),rt=Ne.material;Ne.trigger("beforerender",this,Ne,ze),Xe?(this.renderPreZ(at,Ne,ze),Qe.depthFunc(Qe.LEQUAL)):Qe.depthFunc(Qe.LESS);for(var ut=ie(),yt=he.create(),ft=0;ft0){var qe=Ne[Qe-1],ot=qe.joints?qe.joints.length:0,at=nt.joints.length?nt.joints.length:0;if(at===ot&&nt.material===qe.material&&nt.lightGroup===qe.lightGroup){nt.__program=qe.__program;continue}}var lt=this._programMgr.getProgram(nt,$e,ze);this.validateProgram(lt),nt.__program=lt}},cullRenderList:function(Ne,ze,Ge){for(var Xe=[],Qe=0;Qe0&&Ne.min.array[2]<0&&(Ne.max.array[2]=-1e-20),Ne.applyProjection(ze);var ot=Ne.min.array,at=Ne.max.array;if(at[0]<-1||ot[0]>1||at[1]<-1||ot[1]>1||at[2]<-1||ot[2]>1)return!0}return!1}}(),disposeScene:function(Ne){this.disposeNode(Ne,!0,!0),Ne.dispose()},disposeNode:function(Ne,ze,Ge){Ne.getParent()&&Ne.getParent().remove(Ne),Ne.traverse(function(Xe){Xe.geometry&&ze&&Xe.geometry.dispose(this),Xe.dispose&&Xe.dispose(this)},this)},disposeGeometry:function(Ne){Ne.dispose(this)},disposeTexture:function(Ne){Ne.dispose(this)},disposeFrameBuffer:function(Ne){Ne.dispose(this)},dispose:function(){},screenToNDC:function(Ne,ze,Ge){Ge||(Ge=new ye.a),ze=this._height-ze;var Xe=this.viewport,Qe=Ge.array;return Qe[0]=(Ne-Xe.x)/Xe.width,Qe[0]=Qe[0]*2-1,Qe[1]=(ze-Xe.y)/Xe.height,Qe[1]=Qe[1]*2-1,Ge}});De.opaqueSortCompare=De.prototype.opaqueSortCompare=function(Ne,ze){return Ne.renderOrder===ze.renderOrder?Ne.__program===ze.__program?Ne.material===ze.material?Ne.geometry.__uid__-ze.geometry.__uid__:Ne.material.__uid__-ze.material.__uid__:Ne.__program&&ze.__program?Ne.__program.__uid__-ze.__program.__uid__:0:Ne.renderOrder-ze.renderOrder},De.transparentSortCompare=De.prototype.transparentSortCompare=function(Ne,ze){return Ne.renderOrder===ze.renderOrder?Ne.__depth===ze.__depth?Ne.__program===ze.__program?Ne.material===ze.material?Ne.geometry.__uid__-ze.geometry.__uid__:Ne.material.__uid__-ze.material.__uid__:Ne.__program&&ze.__program?Ne.__program.__uid__-ze.__program.__uid__:0:Ne.__depth-ze.__depth:Ne.renderOrder-ze.renderOrder};var Re={IDENTITY:ie(),WORLD:ie(),VIEW:ie(),PROJECTION:ie(),WORLDVIEW:ie(),VIEWPROJECTION:ie(),WORLDVIEWPROJECTION:ie(),WORLDINVERSE:ie(),VIEWINVERSE:ie(),PROJECTIONINVERSE:ie(),WORLDVIEWINVERSE:ie(),VIEWPROJECTIONINVERSE:ie(),WORLDVIEWPROJECTIONINVERSE:ie(),WORLDTRANSPOSE:ie(),VIEWTRANSPOSE:ie(),PROJECTIONTRANSPOSE:ie(),WORLDVIEWTRANSPOSE:ie(),VIEWPROJECTIONTRANSPOSE:ie(),WORLDVIEWPROJECTIONTRANSPOSE:ie(),WORLDINVERSETRANSPOSE:ie(),VIEWINVERSETRANSPOSE:ie(),PROJECTIONINVERSETRANSPOSE:ie(),WORLDVIEWINVERSETRANSPOSE:ie(),VIEWPROJECTIONINVERSETRANSPOSE:ie(),WORLDVIEWPROJECTIONINVERSETRANSPOSE:ie()};De.COLOR_BUFFER_BIT=ge.a.COLOR_BUFFER_BIT,De.DEPTH_BUFFER_BIT=ge.a.DEPTH_BUFFER_BIT,De.STENCIL_BUFFER_BIT=ge.a.STENCIL_BUFFER_BIT,Fe.a=De},function(He,Fe,Ce){"use strict";function _e(ge,Ae){this.action=ge,this.context=Ae}var Pe={trigger:function(ge){if(this.hasOwnProperty("__handlers__")&&this.__handlers__.hasOwnProperty(ge)){var Ae=this.__handlers__[ge],be=Ae.length,we=-1,pe=arguments;switch(pe.length){case 1:for(;++wehe)){var ie=Math.sqrt(he-de),ue=le-ie,ve=le+ie;return ce||(ce=new _e.a),ue<0?ve<0?null:(Ae.scaleAndAdd(ce.array,te,ne,ve),ce):(Ae.scaleAndAdd(ce.array,te,ne,ue),ce)}}}(),intersectBoundingBox:function(pe,ye){var xe=this.direction.array,ce=this.origin.array,te=pe.min.array,ne=pe.max.array,le=1/xe[0],oe=1/xe[1],de=1/xe[2],he,ie,ue,ve,Se,De;if(le>=0?(he=(te[0]-ce[0])*le,ie=(ne[0]-ce[0])*le):(ie=(te[0]-ce[0])*le,he=(ne[0]-ce[0])*le),oe>=0?(ue=(te[1]-ce[1])*oe,ve=(ne[1]-ce[1])*oe):(ve=(te[1]-ce[1])*oe,ue=(ne[1]-ce[1])*oe),he>ve||ue>ie||((ue>he||he!==he)&&(he=ue),(ve=0?(Se=(te[2]-ce[2])*de,De=(ne[2]-ce[2])*de):(De=(te[2]-ce[2])*de,Se=(ne[2]-ce[2])*de),he>De||Se>ie)||((Se>he||he!==he)&&(he=Se),(De=0?he:ie;return ye||(ye=new _e.a),Ae.scaleAndAdd(ye.array,ce,xe,Re),ye},intersectTriangle:function(){var pe=Ae.create(),ye=Ae.create(),xe=Ae.create(),ce=Ae.create();return function(te,ne,le,oe,de,he){var ie=this.direction.array,ue=this.origin.array;te=te.array,ne=ne.array,le=le.array,Ae.sub(pe,ne,te),Ae.sub(ye,le,te),Ae.cross(ce,ye,ie);var ve=Ae.dot(pe,ce);if(oe){if(ve>-be)return null}else if(ve>-be&&ve1)return null;Ae.cross(ce,pe,xe);var De=Ae.dot(ie,ce)/ve;if(De<0||De>1||Se+De>1)return null;Ae.cross(ce,pe,ye);var Re=-Ae.dot(xe,ce)/ve;return Re<0?null:(de||(de=new _e.a),he&&_e.a.set(he,1-Se-De,Se,De),Ae.scaleAndAdd(de.array,ue,ie,Re),de)}}(),applyTransform:function(pe){_e.a.add(this.direction,this.direction,this.origin),_e.a.transformMat4(this.origin,this.origin,pe),_e.a.transformMat4(this.direction,this.direction,pe),_e.a.sub(this.direction,this.direction,this.origin),_e.a.normalize(this.direction,this.direction)},copy:function(pe){_e.a.copy(this.origin,pe.origin),_e.a.copy(this.direction,pe.direction)},clone:function(){var pe=new we;return pe.copy(this),pe}},Fe.a=we},function(He,Fe,Ce){"use strict";var _e=Ce(1),Pe=Ce.n(_e),ge=Pe.a.quat,Ae=function(pe,ye,xe,ce){pe=pe||0,ye=ye||0,xe=xe||0,ce=ce===void 0?1:ce,this.array=ge.fromValues(pe,ye,xe,ce),this._dirty=!0};Ae.prototype={constructor:Ae,add:function(pe){return ge.add(this.array,this.array,pe.array),this._dirty=!0,this},calculateW:function(){return ge.calculateW(this.array,this.array),this._dirty=!0,this},set:function(pe,ye,xe,ce){return this.array[0]=pe,this.array[1]=ye,this.array[2]=xe,this.array[3]=ce,this._dirty=!0,this},setArray:function(pe){return this.array[0]=pe[0],this.array[1]=pe[1],this.array[2]=pe[2],this.array[3]=pe[3],this._dirty=!0,this},clone:function(){return new Ae(this.x,this.y,this.z,this.w)},conjugate:function(){return ge.conjugate(this.array,this.array),this._dirty=!0,this},copy:function(pe){return ge.copy(this.array,pe.array),this._dirty=!0,this},dot:function(pe){return ge.dot(this.array,pe.array)},fromMat3:function(pe){return ge.fromMat3(this.array,pe.array),this._dirty=!0,this},fromMat4:function(){var pe=Pe.a.mat3,ye=pe.create();return function(xe){return pe.fromMat4(ye,xe.array),pe.transpose(ye,ye),ge.fromMat3(this.array,ye),this._dirty=!0,this}}(),identity:function(){return ge.identity(this.array),this._dirty=!0,this},invert:function(){return ge.invert(this.array,this.array),this._dirty=!0,this},len:function(){return ge.len(this.array)},length:function(){return ge.length(this.array)},lerp:function(pe,ye,xe){return ge.lerp(this.array,pe.array,ye.array,xe),this._dirty=!0,this},mul:function(pe){return ge.mul(this.array,this.array,pe.array),this._dirty=!0,this},mulLeft:function(pe){return ge.multiply(this.array,pe.array,this.array),this._dirty=!0,this},multiply:function(pe){return ge.multiply(this.array,this.array,pe.array),this._dirty=!0,this},multiplyLeft:function(pe){return ge.multiply(this.array,pe.array,this.array),this._dirty=!0,this},normalize:function(){return ge.normalize(this.array,this.array),this._dirty=!0,this},rotateX:function(pe){return ge.rotateX(this.array,this.array,pe),this._dirty=!0,this},rotateY:function(pe){return ge.rotateY(this.array,this.array,pe),this._dirty=!0,this},rotateZ:function(pe){return ge.rotateZ(this.array,this.array,pe),this._dirty=!0,this},rotationTo:function(pe,ye){return ge.rotationTo(this.array,pe.array,ye.array),this._dirty=!0,this},setAxes:function(pe,ye,xe){return ge.setAxes(this.array,pe.array,ye.array,xe.array),this._dirty=!0,this},setAxisAngle:function(pe,ye){return ge.setAxisAngle(this.array,pe.array,ye),this._dirty=!0,this},slerp:function(pe,ye,xe){return ge.slerp(this.array,pe.array,ye.array,xe),this._dirty=!0,this},sqrLen:function(){return ge.sqrLen(this.array)},squaredLength:function(){return ge.squaredLength(this.array)},fromEuler:function(pe,ye){return Ae.fromEuler(this,pe,ye)},toString:function(){return"["+Array.prototype.join.call(this.array,",")+"]"},toArray:function(){return Array.prototype.slice.call(this.array)}};var be=Object.defineProperty;if(be){var we=Ae.prototype;be(we,"x",{get:function(){return this.array[0]},set:function(pe){this.array[0]=pe,this._dirty=!0}}),be(we,"y",{get:function(){return this.array[1]},set:function(pe){this.array[1]=pe,this._dirty=!0}}),be(we,"z",{get:function(){return this.array[2]},set:function(pe){this.array[2]=pe,this._dirty=!0}}),be(we,"w",{get:function(){return this.array[3]},set:function(pe){this.array[3]=pe,this._dirty=!0}})}Ae.add=function(pe,ye,xe){return ge.add(pe.array,ye.array,xe.array),pe._dirty=!0,pe},Ae.set=function(pe,ye,xe,ce,te){ge.set(pe.array,ye,xe,ce,te),pe._dirty=!0},Ae.copy=function(pe,ye){return ge.copy(pe.array,ye.array),pe._dirty=!0,pe},Ae.calculateW=function(pe,ye){return ge.calculateW(pe.array,ye.array),pe._dirty=!0,pe},Ae.conjugate=function(pe,ye){return ge.conjugate(pe.array,ye.array),pe._dirty=!0,pe},Ae.identity=function(pe){return ge.identity(pe.array),pe._dirty=!0,pe},Ae.invert=function(pe,ye){return ge.invert(pe.array,ye.array),pe._dirty=!0,pe},Ae.dot=function(pe,ye){return ge.dot(pe.array,ye.array)},Ae.len=function(pe){return ge.length(pe.array)},Ae.lerp=function(pe,ye,xe,ce){return ge.lerp(pe.array,ye.array,xe.array,ce),pe._dirty=!0,pe},Ae.slerp=function(pe,ye,xe,ce){return ge.slerp(pe.array,ye.array,xe.array,ce),pe._dirty=!0,pe},Ae.mul=function(pe,ye,xe){return ge.multiply(pe.array,ye.array,xe.array),pe._dirty=!0,pe},Ae.multiply=Ae.mul,Ae.rotateX=function(pe,ye,xe){return ge.rotateX(pe.array,ye.array,xe),pe._dirty=!0,pe},Ae.rotateY=function(pe,ye,xe){return ge.rotateY(pe.array,ye.array,xe),pe._dirty=!0,pe},Ae.rotateZ=function(pe,ye,xe){return ge.rotateZ(pe.array,ye.array,xe),pe._dirty=!0,pe},Ae.setAxisAngle=function(pe,ye,xe){return ge.setAxisAngle(pe.array,ye.array,xe),pe._dirty=!0,pe},Ae.normalize=function(pe,ye){return ge.normalize(pe.array,ye.array),pe._dirty=!0,pe},Ae.sqrLen=function(pe){return ge.sqrLen(pe.array)},Ae.squaredLength=Ae.sqrLen,Ae.fromMat3=function(pe,ye){return ge.fromMat3(pe.array,ye.array),pe._dirty=!0,pe},Ae.setAxes=function(pe,ye,xe,ce){return ge.setAxes(pe.array,ye.array,xe.array,ce.array),pe._dirty=!0,pe},Ae.rotationTo=function(pe,ye,xe){return ge.rotationTo(pe.array,ye.array,xe.array),pe._dirty=!0,pe},Ae.fromEuler=function(pe,ye,ie){pe._dirty=!0,ye=ye.array;var ce=pe.array,te=Math.cos(ye[0]/2),ne=Math.cos(ye[1]/2),le=Math.cos(ye[2]/2),oe=Math.sin(ye[0]/2),de=Math.sin(ye[1]/2),he=Math.sin(ye[2]/2),ie=(ie||"XYZ").toUpperCase();switch(ie){case"XYZ":ce[0]=oe*ne*le+te*de*he,ce[1]=te*de*le-oe*ne*he,ce[2]=te*ne*he+oe*de*le,ce[3]=te*ne*le-oe*de*he;break;case"YXZ":ce[0]=oe*ne*le+te*de*he,ce[1]=te*de*le-oe*ne*he,ce[2]=te*ne*he-oe*de*le,ce[3]=te*ne*le+oe*de*he;break;case"ZXY":ce[0]=oe*ne*le-te*de*he,ce[1]=te*de*le+oe*ne*he,ce[2]=te*ne*he+oe*de*le,ce[3]=te*ne*le-oe*de*he;break;case"ZYX":ce[0]=oe*ne*le-te*de*he,ce[1]=te*de*le+oe*ne*he,ce[2]=te*ne*he-oe*de*le,ce[3]=te*ne*le+oe*de*he;break;case"YZX":ce[0]=oe*ne*le+te*de*he,ce[1]=te*de*le+oe*ne*he,ce[2]=te*ne*he-oe*de*le,ce[3]=te*ne*le-oe*de*he;break;case"XZY":ce[0]=oe*ne*le-te*de*he,ce[1]=te*de*le-oe*ne*he,ce[2]=te*ne*he+oe*de*le,ce[3]=te*ne*le+oe*de*he;break}},Fe.a=Ae},function(He,Fe,Ce){"use strict";var _e=Ce(28),Pe=Ce(9),ge=Ce(52),Ae=Ce(49),be=Ce(1),we=Ce.n(be),pe=we.a.vec3,ye=we.a.vec4,xe=_e.a.extend(function(){return{projectionMatrix:new Pe.a,invProjectionMatrix:new Pe.a,viewMatrix:new Pe.a,frustum:new ge.a}},function(){this.update(!0)},{update:function(ce){_e.a.prototype.update.call(this,ce),Pe.a.invert(this.viewMatrix,this.worldTransform),this.updateProjectionMatrix(),Pe.a.invert(this.invProjectionMatrix,this.projectionMatrix),this.frustum.setFromProjection(this.projectionMatrix)},setViewMatrix:function(ce){Pe.a.copy(this.viewMatrix,ce),Pe.a.invert(this.worldTransform,ce),this.decomposeWorldTransform()},decomposeProjectionMatrix:function(){},setProjectionMatrix:function(ce){Pe.a.copy(this.projectionMatrix,ce),Pe.a.invert(this.invProjectionMatrix,ce),this.decomposeProjectionMatrix()},updateProjectionMatrix:function(){},castRay:function(){var ce=ye.create();return function(te,ne){var le=ne!==void 0?ne:new Ae.a,oe=te.array[0],de=te.array[1];return ye.set(ce,oe,de,-1,1),ye.transformMat4(ce,ce,this.invProjectionMatrix.array),ye.transformMat4(ce,ce,this.worldTransform.array),pe.scale(le.origin.array,ce,1/ce[3]),ye.set(ce,oe,de,1,1),ye.transformMat4(ce,ce,this.invProjectionMatrix.array),ye.transformMat4(ce,ce,this.worldTransform.array),pe.scale(ce,ce,1/ce[3]),pe.sub(le.direction.array,ce,le.origin.array),pe.normalize(le.direction.array,le.direction.array),le.direction._dirty=!0,le.origin._dirty=!0,le}}()});Fe.a=xe},function(He,Fe,Ce){"use strict";var _e=Ce(4),Pe=Ce(15),ge=Ce(67),Ae=Ce(1),be=Ce.n(Ae),we=be.a.vec3,pe=we.set,ye=we.copy,xe=we.transformMat4,ce=Math.min,te=Math.max,ne=function(){this.planes=[];for(var le=0;le<6;le++)this.planes.push(new ge.a);this.boundingBox=new Pe.a,this.vertices=[];for(var le=0;le<8;le++)this.vertices[le]=we.fromValues(0,0,0)};ne.prototype={setFromProjection:function(le){var oe=this.planes,de=le.array,he=de[0],ie=de[1],ue=de[2],ve=de[3],Se=de[4],De=de[5],Re=de[6],Ne=de[7],ze=de[8],Ge=de[9],Xe=de[10],Qe=de[11],nt=de[12],$e=de[13],qe=de[14],ot=de[15];pe(oe[0].normal.array,ve-he,Ne-Se,Qe-ze),oe[0].distance=-(ot-nt),oe[0].normalize(),pe(oe[1].normal.array,ve+he,Ne+Se,Qe+ze),oe[1].distance=-(ot+nt),oe[1].normalize(),pe(oe[2].normal.array,ve+ie,Ne+De,Qe+Ge),oe[2].distance=-(ot+$e),oe[2].normalize(),pe(oe[3].normal.array,ve-ie,Ne-De,Qe-Ge),oe[3].distance=-(ot-$e),oe[3].normalize(),pe(oe[4].normal.array,ve-ue,Ne-Re,Qe-Xe),oe[4].distance=-(ot-qe),oe[4].normalize(),pe(oe[5].normal.array,ve+ue,Ne+Re,Qe+Xe),oe[5].distance=-(ot+qe),oe[5].normalize();var at=this.boundingBox;if(ot===0){var lt=De/he,rt=-qe/(Xe-1),ut=-qe/(Xe+1),yt=-ut/De,ft=-rt/De;at.min.set(-yt*lt,-yt,ut),at.max.set(yt*lt,yt,rt);var dt=this.vertices;pe(dt[0],-yt*lt,-yt,ut),pe(dt[1],-yt*lt,yt,ut),pe(dt[2],yt*lt,-yt,ut),pe(dt[3],yt*lt,yt,ut),pe(dt[4],-ft*lt,-ft,rt),pe(dt[5],-ft*lt,ft,rt),pe(dt[6],ft*lt,-ft,rt),pe(dt[7],ft*lt,ft,rt)}else{var ht=(-1-nt)/he,Ut=(1-nt)/he,Kt=(1-$e)/De,qt=(-1-$e)/De,vn=(-1-qe)/Xe,Ot=(1-qe)/Xe;at.min.set(Math.min(ht,Ut),Math.min(qt,Kt),Math.min(Ot,vn)),at.max.set(Math.max(Ut,ht),Math.max(Kt,qt),Math.max(vn,Ot));var rn=at.min.array,an=at.max.array,dt=this.vertices;pe(dt[0],rn[0],rn[1],rn[2]),pe(dt[1],rn[0],an[1],rn[2]),pe(dt[2],an[0],rn[1],rn[2]),pe(dt[3],an[0],an[1],rn[2]),pe(dt[4],rn[0],rn[1],an[2]),pe(dt[5],rn[0],an[1],an[2]),pe(dt[6],an[0],rn[1],an[2]),pe(dt[7],an[0],an[1],an[2])}},getTransformedBoundingBox:function(){var le=we.create();return function(oe,de){var he=this.vertices,ie=de.array,ue=oe.min,ve=oe.max,Se=ue.array,De=ve.array,Re=he[0];xe(le,Re,ie),ye(Se,le),ye(De,le);for(var Ne=1;Ne<8;Ne++)Re=he[Ne],xe(le,Re,ie),Se[0]=ce(le[0],Se[0]),Se[1]=ce(le[1],Se[1]),Se[2]=ce(le[2],Se[2]),De[0]=te(le[0],De[0]),De[1]=te(le[1],De[1]),De[2]=te(le[2],De[2]);return ue._dirty=!0,ve._dirty=!0,oe}}()},Fe.a=ne},function(He,Fe){var Ce=function(){this.head=null,this.tail=null,this._len=0},_e=Ce.prototype;_e.insert=function(we){var pe=new Pe(we);return this.insertEntry(pe),pe},_e.insertEntry=function(we){this.head?(this.tail.next=we,we.prev=this.tail,we.next=null,this.tail=we):this.head=this.tail=we,this._len++},_e.remove=function(we){var pe=we.prev,ye=we.next;pe?pe.next=ye:this.head=ye,ye?ye.prev=pe:this.tail=pe,we.next=we.prev=null,this._len--},_e.len=function(){return this._len},_e.clear=function(){this.head=this.tail=null,this._len=0};var Pe=function(we){this.value=we,this.next,this.prev},ge=function(we){this._list=new Ce,this._map={},this._maxSize=we||10,this._lastRemovedEntry=null},Ae=ge.prototype;Ae.put=function(we,pe){var ye=this._list,xe=this._map,ce=null;if(xe[we]==null){var te=ye.len(),ne=this._lastRemovedEntry;if(te>=this._maxSize&&te>0){var le=ye.head;ye.remove(le),delete xe[le.key],ce=le.value,this._lastRemovedEntry=le}ne?ne.value=pe:ne=new Pe(pe),ne.key=we,ye.insertEntry(ne),xe[we]=ne}return ce},Ae.get=function(we){var pe=this._map[we],ye=this._list;if(pe!=null)return pe!==ye.tail&&(ye.remove(pe),ye.insertEntry(pe)),pe.value},Ae.clear=function(){this._list.clear(),this._map={}};var be=ge;He.exports=be},function(He,Fe,Ce){"use strict";var _e=Ce(5),Pe=Ce(25),ge=Ce(102),Ae=Ce(55),be=Ce(56),we=Ce(29),pe=Ce(104),ye=Ce(105),xe={loadTexture:function(ce,te,ne,le){var oe;if(typeof te=="function"?(ne=te,le=ne,te={}):te=te||{},typeof ce=="string"){if(ce.match(/.hdr$/)||te.fileType==="hdr")return oe=new _e.a({width:0,height:0,sRGB:!1}),xe._fetchTexture(ce,function(de){ye.a.parseRGBE(de,oe,te.exposure),oe.dirty(),ne&&ne(oe)},le),oe;ce.match(/.dds$/)||te.fileType==="dds"?(oe=new _e.a({width:0,height:0}),xe._fetchTexture(ce,function(de){pe.a.parse(de,oe),oe.dirty(),ne&&ne(oe)},le)):(oe=new _e.a,oe.load(ce),oe.success(ne),oe.error(le))}else if(typeof ce=="object"&&typeof ce.px!="undefined"){var oe=new Pe.a;oe.load(ce),oe.success(ne),oe.error(le)}return oe},loadPanorama:function(ce,te,ne,le,oe,de){var he=this;typeof le=="function"?(oe=le,de=oe,le={}):le=le||{},xe.loadTexture(te,le,function(ie){ie.flipY=le.flipY||!1,he.panoramaToCubeMap(ce,ie,ne,le),ie.dispose(ce),oe&&oe(ne)},de)},panoramaToCubeMap:function(ce,te,ne,le){var oe=new Ae.a,de=new be.a({scene:new we.a});return de.material.set("diffuseMap",te),le=le||{},le.encodeRGBM&&de.material.define("fragment","RGBM_ENCODE"),ne.sRGB=te.sRGB,oe.texture=ne,oe.render(ce,de.scene),oe.texture=null,oe.dispose(ce),ne},heightToNormal:function(ce,te){var ne=document.createElement("canvas"),le=ne.width=ce.width,oe=ne.height=ce.height,de=ne.getContext("2d");de.drawImage(ce,0,0,le,oe),te=te||!1;for(var he=de.getImageData(0,0,le,oe),ie=de.createImageData(le,oe),ue=0;ue20)return console.warn("Given image is not a height map"),ce}var Ne,ze,Ge,Xe;ue%(le*4)===0?(Ne=he.data[ue],Ge=he.data[ue+4]):ue%(le*4)===(le-1)*4?(Ne=he.data[ue-4],Ge=he.data[ue]):(Ne=he.data[ue-4],Ge=he.data[ue+4]),uele*(oe-1)*4?(ze=he.data[ue-le*4],Xe=he.data[ue]):(ze=he.data[ue-le*4],Xe=he.data[ue+le*4]),ie.data[ue]=Ne-Ge+127,ie.data[ue+1]=ze-Xe+127,ie.data[ue+2]=255,ie.data[ue+3]=255}return de.putImageData(ie,0,0),ne},isHeightImage:function(ce,te,ne){if(!ce||!ce.width||!ce.height)return!1;var le=document.createElement("canvas"),oe=le.getContext("2d"),de=te||32;ne=ne||20,le.width=le.height=de,oe.drawImage(ce,0,0,de,de);for(var he=oe.getImageData(0,0,de,de),ie=0;iene)return!1}return!0},_fetchTexture:function(ce,te,ne){ge.a.get({url:ce,responseType:"arraybuffer",onload:te,onerror:ne})},createChessboard:function(ce,te,ne,le){ce=ce||512,te=te||64,ne=ne||"black",le=le||"white";var oe=Math.ceil(ce/te),de=document.createElement("canvas");de.width=ce,de.height=ce;var he=de.getContext("2d");he.fillStyle=le,he.fillRect(0,0,ce,ce),he.fillStyle=ne;for(var ie=0;ie0?this.material.define("fragment","LOD"):this.material.undefine("fragment","LOD"),pe.renderPass([this],ye)}});Fe.a=we},function(He,Fe,Ce){"use strict";var _e=Ce(2),Pe=Ce(143),ge=Ce(144);_e.a.Shader.import(ge.a),Fe.a=_e.a.Mesh.extend(function(){var Ae=new Pe.a({dynamic:!0}),be=new _e.a.Material({shader:_e.a.createShader("ecgl.labels"),transparent:!0,depthMask:!1});return{geometry:Ae,material:be,culling:!1,castShadow:!1,ignorePicking:!0}})},function(He,Fe,Ce){"use strict";var _e=Ce(0),Pe=Ce.n(_e),ge=Ce(2),Ae=Ce(186),be=Ce(22),we=Ce(3),pe=Ce(1),ye=Ce.n(pe),xe=Ce(60),ce=Ce(61),te=Ce(40),ne=ye.a.vec3;ge.a.Shader.import(te.a);function le(oe){this.rootNode=new ge.a.Node,this._triangulationResults={},this._shadersMap=ge.a.COMMON_SHADERS.reduce(function(he,ie){return he[ie]=ge.a.createShader("ecgl."+ie),he},{}),this._linesShader=ge.a.createShader("ecgl.meshLines3D");var de={};ge.a.COMMON_SHADERS.forEach(function(he){de[he]=new ge.a.Material({shader:ge.a.createShader("ecgl."+he)})}),this._groundMaterials=de,this._groundMesh=new ge.a.Mesh({geometry:new ge.a.PlaneGeometry({dynamic:!0}),castShadow:!1,renderNormal:!0,$ignorePicking:!0}),this._groundMesh.rotation.rotateX(-Math.PI/2),this._labelsBuilder=new ce.a(512,512,oe),this._labelsBuilder.getMesh().renderOrder=100,this._labelsBuilder.getMesh().material.depthTest=!1,this.rootNode.add(this._labelsBuilder.getMesh()),this._initMeshes(),this._api=oe}le.prototype={constructor:le,extrudeY:!0,update:function(oe,de,he,ie,ue){var ve=oe.getData();ie==null&&(ie=0),ue==null&&(ue=ve.count()),this._startIndex=ie,this._endIndex=ue-1,this._triangulation(oe,ie,ue);var Se=this._getShader(oe.get("shading"));this._prepareMesh(oe,Se,he,ie,ue),this.rootNode.updateWorldTransform(),this._updateRegionMesh(oe,he,ie,ue);var De=oe.coordinateSystem;De.type==="geo3D"&&this._updateGroundPlane(oe,De,he);var Re=this;this._labelsBuilder.updateData(ve,ie,ue),this._labelsBuilder.getLabelPosition=function(Ne,ze,Ge){var Xe=ve.getName(Ne),Qe,nt=Ge;if(De.type==="geo3D"){var $e=De.getRegion(Xe);return Qe=$e.center,De.dataToPoint([Qe[0],Qe[1],nt])}else var qe=Re._triangulationResults[Ne-Re._startIndex],Qe=Re.extrudeY?[(qe.max[0]+qe.min[0])/2,qe.max[1]+nt,(qe.max[2]+qe.min[2])/2]:[(qe.max[0]+qe.min[0])/2,(qe.max[1]+qe.min[1])/2,qe.max[2]+nt]},this._data=ve,this._labelsBuilder.updateLabels(),this._updateDebugWireframe(oe),this._lastHoverDataIndex=0},_initMeshes:function(){this.rootNode.removeAll();var oe=this;function de(){var ue=new ge.a.Mesh({name:"Polygon",material:new ge.a.Material({shader:oe._shadersMap.lambert}),culling:!1,geometry:new ge.a.Geometry({sortTriangles:!0,dynamic:!0}),ignorePicking:!0,renderNormal:!0});return Pe.a.util.extend(ue.geometry,xe.a),ue}var he=de(),ie=new ge.a.Mesh({material:new ge.a.Material({shader:this._linesShader}),castShadow:!1,ignorePicking:!0,$ignorePicking:!0,geometry:new be.a({useNativeLine:!1})});this.rootNode.add(he),this.rootNode.add(ie),he.material.define("both","VERTEX_COLOR"),he.material.define("fragment","DOUBLE_SIDED"),this._polygonMesh=he,this._linesMesh=ie,this.rootNode.add(this._groundMesh)},_getShader:function(oe){var de=this._shadersMap[oe];return de||(console.warn("Unkown shading "+oe),de=this._shadersMap.lambert),de.__shading=oe,de},_prepareMesh:function(oe,de,he,ie,ue){for(var ve=0,Se=0,De=0,Re=0,Ne=ie;Ne65535?new Uint32Array(Se*3):new Uint16Array(Se*3),Xe.material.shader!==de&&Xe.material.attachShader(de,!0),ge.a.setMaterialFromModel(de.__shading,Xe.material,oe,he),De>0&&(this._linesMesh.geometry.resetOffset(),this._linesMesh.geometry.setVertexCount(De),this._linesMesh.geometry.setTriangleCount(Re)),this._dataIndexOfVertex=new Uint32Array(ve),this._vertexRangeOfDataIndex=new Uint32Array((ue-ie)*2)},_updateRegionMesh:function(oe,de,he,ie){for(var ue=oe.getData(),ve=0,Se=0,De=!1,yt=this._polygonMesh,Re=this._linesMesh,Ne=he;Ne0;ut&&(rt*=de.getDevicePixelRatio(),this._updateLinesGeometry(Re.geometry,oe,Ne,ot,rt,oe.coordinateSystem.transform)),Re.invisible=!ut,Re.material.set({color:$e})}var yt=this._polygonMesh;yt.material.transparent=De,yt.material.depthMask=!De,yt.geometry.updateBoundingBox(),yt.material.get("normalMap")&&yt.geometry.generateTangents(),yt.seriesIndex=oe.seriesIndex,yt.on("mousemove",this._onmousemove,this),yt.on("mouseout",this._onmouseout,this)},_updateDebugWireframe:function(oe){var de=oe.getModel("debug.wireframe");if(de.get("show")){var he=ge.a.parseColor(de.get("lineStyle.color")||"rgba(0,0,0,0.5)"),ie=we.a.firstNotNull(de.get("lineStyle.width"),1),ue=this._polygonMesh;ue.geometry.generateBarycentric(),ue.material.define("both","WIREFRAME_TRIANGLE"),ue.material.set("wireframeLineColor",he),ue.material.set("wireframeLineWidth",ie)}},_onmousemove:function(oe){var de=this._dataIndexOfVertex[oe.triangle[0]];de==null&&(de=-1),de!==this._lastHoverDataIndex&&(this.downplay(this._lastHoverDataIndex),this.highlight(de)),this._lastHoverDataIndex=de,this._polygonMesh.dataIndex=de},_onmouseover:function(oe){if(oe.target){var de=oe.target.eventData?this._data.indexOfName(oe.target.eventData.name):oe.target.dataIndex;de!=null&&(this.highlight(de),this._labelsBuilder.updateLabels([de]))}},_onmouseout:function(oe){oe.target&&(this.downplay(this._lastHoverDataIndex),this._lastHoverDataIndex=-1,this._polygonMesh.dataIndex=-1)},_updateGroundPlane:function(oe,de,he){var ie=oe.getModel("groundPlane",oe);if(this._groundMesh.invisible=!ie.get("show",!0),!this._groundMesh.invisible){var ue=oe.get("shading"),ve=this._groundMaterials[ue];ve||(console.warn("Unkown shading "+ue),ve=this._groundMaterials.lambert),ge.a.setMaterialFromModel(ue,ve,ie,he),ve.get("normalMap")&&this._groundMesh.geometry.generateTangents(),this._groundMesh.material=ve,this._groundMesh.material.set("color",ge.a.parseColor(ie.get("color"))),this._groundMesh.scale.set(de.size[0],de.size[2],1)}},_triangulation:function(oe,de,he){this._triangulationResults=[];for(var ie=[1/0,1/0,1/0],ue=[-1/0,-1/0,-1/0],ve=oe.coordinateSystem,Se=de;Se1?ie:0,rn[vt][qe]=Kt.points[Qt+2],Re.set(ue+vt,rn[vt]),De?(sn[0]=(Kt.points[Qt]*ot[0]-at[0])/rt,sn[1]=(Kt.points[Qt+2]*ot[qe]-at[qe])/rt):(sn[0]=(At?tn:tn+Zt)/rt,sn[1]=(rn[vt][$e]*ot[$e]-at[$e])/rt),ze.set(ue+vt,sn)}ne.sub(an,rn[1],rn[0]),ne.sub(On,rn[3],rn[0]),ne.cross(Rn,an,On),ne.normalize(Rn,Rn);for(var vt=0;vt<4;vt++)Ne.set(ue+vt,Rn),Qe&&Ge.set(ue+vt,Se);for(var vt=0;vt<6;vt++)nt[ve*3+vt]=Ot[vt]+ue;ue+=4,ve+=2,tn+=Zt}}return de.dirty(),{vertexOffset:ue,triangleOffset:ve}},_getRegionLinesInfo:function(oe,de,he){var ie=0,ue=0,ve=de.getRegionModel(oe),Se=ve.getModel("itemStyle"),De=Se.get("borderWidth");if(De>0){var Re=de.getRegionPolygonCoords(oe);Re.forEach(function(Ne){var ze=Ne.exterior,Ge=Ne.interiors;ie+=he.getPolylineVertexCount(ze),ue+=he.getPolylineTriangleCount(ze);for(var Xe=0;Xethis._endIndex)){de-=this._startIndex;for(var ie=this._vertexRangeOfDataIndex[de*2];ie=2e4},doSortTriangles:function(ye,xe){var ce=this.indices;if(xe===0){var te=this.attributes.position,ye=ye.array;(!this._triangleZList||this._triangleZList.length!==this.triangleCount)&&(this._triangleZList=new Float32Array(this.triangleCount),this._sortedTriangleIndices=new Uint32Array(this.triangleCount),this._indicesTmp=new ce.constructor(ce.length),this._triangleZListTmp=new Float32Array(this.triangleCount));for(var ne=0,le,oe=0;oe0,te={},ne=0;ne2?(Qe=this._updateSymbolSprite(le,Ge,Ne,ze),Se.enableTexture("sprite")):Se.disableTexture("sprite"),Re.position.init(ie-he);var nt=[];if(Xe){Se.undefine("VERTEX_SIZE"),Se.undefine("VERTEX_COLOR");var $e=ve.getVisual("color"),qe=ve.getVisual("opacity");ge.a.parseColor($e,nt),nt[3]*=qe,Se.set({color:nt,u_Size:Ne.maxSize*this._sizeScale})}else Se.set({color:[1,1,1,1]}),Se.define("VERTEX_SIZE"),Se.define("VERTEX_COLOR"),Re.size.init(ie-he),Re.color.init(ie-he),this._originalOpacity=new Float32Array(ie-he);for(var ot=ve.getLayout("points"),at=Re.position.value,lt=!1,rt=0;rt1?(ie[0]=de.maxSize,ie[1]=de.maxSize/de.aspect):(ie[1]=de.maxSize,ie[0]=de.maxSize*de.aspect),ie[0]=ie[0]||1,ie[1]=ie[1]||1,(this._symbolType!==de.type||!te(this._symbolSize,ie)||this._lineWidth!==oe.lineWidth)&&(Ae.a.createSymbolSprite(de.type,ie,{fill:"#fff",lineWidth:oe.lineWidth,stroke:"transparent",shadowColor:"transparent",minMargin:Math.min(ie[0]/2,10)},this._spriteImageCanvas),Ae.a.createSDFFromCanvas(this._spriteImageCanvas,Math.min(this._spriteImageCanvas.width,32),xe,this._mesh.material.get("sprite").image),this._symbolType=de.type,this._symbolSize=ie,this._lineWidth=oe.lineWidth),this._spriteImageCanvas.width/de.maxSize*he},_updateMaterial:function(le,oe){var de=le.get("blendMode")==="lighter"?ge.a.additiveBlend:null,he=this._mesh.material;he.blend=de,he.set("lineWidth",oe.lineWidth/xe);var ie=ge.a.parseColor(oe.stroke);he.set("strokeColor",ie),he.transparent=!0,he.depthMask=!1,he.depthTest=!this.is2D,he.sortVertices=!this.is2D},_updateLabelBuilder:function(le,ve,de){var he=le.getData(),ie=this._mesh.geometry,ue=ie.attributes.position.value,ve=this._startDataIndex,Se=this._mesh.sizeScale;this._labelsBuilder.updateData(he,ve,de),this._labelsBuilder.getLabelPosition=function(De,Re,Ne){var ze=(De-ve)*3;return[ue[ze],ue[ze+1],ue[ze+2]]},this._labelsBuilder.getLabelDistance=function(De,Re,Ne){var ze=ie.attributes.size.get(De-ve)/Se;return ze/2+Ne},this._labelsBuilder.updateLabels()},_updateAnimation:function(le){ge.a.updateVertexAnimation([["prevPosition","position"],["prevSize","size"]],this._prevMesh,this._mesh,le)},_updateHandler:function(le,oe,de){var he=le.getData(),ie=this._mesh,ue=this,ve=-1,Se=le.coordinateSystem&&le.coordinateSystem.type==="cartesian3D",De;Se&&(De=le.coordinateSystem.model),ie.seriesIndex=le.seriesIndex,ie.off("mousemove"),ie.off("mouseout"),ie.on("mousemove",function(Re){var Ne=Re.vertexIndex+ue._startDataIndex;Ne!==ve&&(this.highlightOnMouseover&&(this.downplay(he,ve),this.highlight(he,Ne),this._labelsBuilder.updateLabels([Ne])),Se&&de.dispatchAction({type:"grid3DShowAxisPointer",value:[he.get(le.coordDimToDataDim("x")[0],Ne),he.get(le.coordDimToDataDim("y")[0],Ne),he.get(le.coordDimToDataDim("z")[0],Ne)],grid3DIndex:De.componentIndex})),ie.dataIndex=Ne,ve=Ne},this),ie.on("mouseout",function(Re){var Ne=Re.vertexIndex+ue._startDataIndex;this.highlightOnMouseover&&(this.downplay(he,Ne),this._labelsBuilder.updateLabels()),ve=-1,ie.dataIndex=-1,Se&&de.dispatchAction({type:"grid3DHideAxisPointer",grid3DIndex:De.componentIndex})},this)},updateLayout:function(le,oe,de){var he=le.getData();if(this._mesh){var ie=this._mesh.geometry.attributes.position.value,ue=he.getLayout("points");if(this.is2D)for(var ve=0;vethis._endDataIndex||oethis._endDataIndex||oe.05&&(ve=!0),ze!==Se&&(De=!0),Se=ze,ue=Ge}return ve&&console.warn("Different symbol width / height ratio will be ignored."),De&&console.warn("Different symbol type will be ignored."),{maxSize:Re,type:Se,aspect:ue}}},Fe.a=ne},function(He,Fe,Ce){"use strict";Fe.a=`@export clay.prez.vertex uniform mat4 worldViewProjection : WORLDVIEWPROJECTION; attribute vec3 position : POSITION; @import clay.chunk.skinning_header void main() { vec3 skinnedPosition = position; #ifdef SKINNING @import clay.chunk.skin_matrix skinnedPosition = (skinMatrixWS * vec4(position, 1.0)).xyz; #endif gl_Position = worldViewProjection * vec4(skinnedPosition, 1.0); } @end @export clay.prez.fragment void main() { gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0); } @end`},function(He,Fe,Ce){"use strict";var _e=Ce(28),Pe=Ce(11),ge=0,Ae=null,be=!0,we,pe=function(){this.triangleCount=0,this.vertexCount=0,this.drawCallCount=0};function ye(ce,te,ne){this.availableAttributes=ce,this.availableAttributeSymbols=te,this.indicesBuffer=ne,this.vao=null}var xe=_e.a.extend({material:null,geometry:null,mode:Pe.a.TRIANGLES,_drawCache:null,_renderInfo:null},function(){this._drawCache={},this._renderInfo=new pe},{__program:null,lightGroup:0,renderOrder:0,lineWidth:1,culling:!0,cullFace:Pe.a.BACK,frontFace:Pe.a.CCW,frustumCulling:!0,receiveShadow:!0,castShadow:!0,ignorePicking:!1,ignorePreZ:!1,ignoreGBuffer:!1,isRenderable:function(){return this.geometry&&this.material&&this.material.shader&&!this.invisible&&this.geometry.vertexCount>0},beforeRender:function(ce){},afterRender:function(ce,te){},getBoundingBox:function(ce,te){return te=_e.a.prototype.getBoundingBox.call(this,ce,te),this.geometry&&this.geometry.boundingBox&&te.union(this.geometry.boundingBox),te},render:function(ce,te,ne){var le=ce.gl;te=te||this.material;var oe=te.shader,de=this.geometry,he=this.mode,ie=de.vertexCount,ue=de.isUseIndices(),ve=ce.getGLExtension("OES_element_index_uint"),Se=ve&&ie>65535,De=Se?le.UNSIGNED_INT:le.UNSIGNED_SHORT,Re=ce.getGLExtension("OES_vertex_array_object"),Ne=!de.dynamic,ze=this._renderInfo;ze.vertexCount=ie,ze.triangleCount=0,ze.drawCallCount=0;var Ge=!1;if(we=ce.__uid__+"-"+de.__uid__+"-"+ne.__uid__,(we!==ge||Re&&Ne||de._cache.isDirty("any"))&&(Ge=!0),ge=we,!Ge)be?(le.drawElements(he,Ae.count,De,0),ze.triangleCount=Ae.count/3):le.drawArrays(he,0,ie),ze.drawCallCount=1;else{var Xe=this._drawCache[we];if(!Xe){var Qe=de.getBufferChunks(ce);if(!Qe)return;Xe=[];for(var nt=0;nt>1,Pe|=Pe>>2,Pe|=Pe>>4,Pe|=Pe>>8,Pe|=Pe>>16,Pe++,Pe},_e.nearestPowerOfTwo=function(Pe){return Math.pow(2,Math.round(Math.log(Pe)/Math.LN2))},Fe.a=_e},function(He,Fe,Ce){"use strict";var _e=Ce(4),Pe=Ce(1),ge=Ce.n(Pe),Ae=ge.a.vec3,be=ge.a.mat4,we=ge.a.vec4,pe=function(ye,xe){this.normal=ye||new _e.a(0,1,0),this.distance=xe||0};pe.prototype={constructor:pe,distanceToPoint:function(ye){return Ae.dot(ye.array,this.normal.array)-this.distance},projectPoint:function(ye,xe){xe||(xe=new _e.a);var ce=this.distanceToPoint(ye);return Ae.scaleAndAdd(xe.array,ye.array,this.normal.array,-ce),xe._dirty=!0,xe},normalize:function(){var ye=1/Ae.len(this.normal.array);Ae.scale(this.normal.array,ye),this.distance*=ye},intersectFrustum:function(ye){for(var xe=ye.vertices,ce=this.normal.array,te=Ae.dot(xe[0].array,ce)>this.distance,ne=1;ne<8;ne++)if(Ae.dot(xe[ne].array,ce)>this.distance!=te)return!0},intersectLine:function(){var ye=Ae.create();return function(xe,ce,te){var ne=this.distanceToPoint(xe),le=this.distanceToPoint(ce);if(ne>0&&le>0||ne<0&&le<0)return null;var oe=this.normal.array,de=this.distance,he=xe.array;Ae.sub(ye,ce.array,xe.array),Ae.normalize(ye,ye);var ie=Ae.dot(oe,ye);if(ie===0)return null;te||(te=new _e.a);var ue=(Ae.dot(oe,he)-de)/ie;return Ae.scaleAndAdd(te.array,he,ye,-ue),te._dirty=!0,te}}(),applyTransform:function(){var ye=be.create(),xe=we.create(),ce=we.create();return ce[3]=1,function(te){te=te.array,Ae.scale(ce,this.normal.array,this.distance),we.transformMat4(ce,ce,te),this.distance=Ae.dot(ce,this.normal.array),be.invert(ye,te),be.transpose(ye,ye),xe[3]=0,Ae.copy(xe,this.normal.array),we.transformMat4(xe,xe,ye),Ae.copy(this.normal.array,xe)}}(),copy:function(ye){Ae.copy(this.normal.array,ye.normal.array),this.normal._dirty=!0,this.distance=ye.distance},clone:function(){var ye=new pe;return ye.copy(this),ye}},Fe.a=pe},function(He,Fe,Ce){"use strict";var _e=Ce(13),Pe=Ce(15),ge=_e.a.extend({dynamic:!1,widthSegments:40,heightSegments:20,phiStart:0,phiLength:Math.PI*2,thetaStart:0,thetaLength:Math.PI,radius:1},function(){this.build()},{build:function(){var Ae=this.heightSegments,be=this.widthSegments,we=this.attributes.position,pe=this.attributes.texcoord0,ye=this.attributes.normal,xe=(be+1)*(Ae+1);we.init(xe),pe.init(xe),ye.init(xe);var ce=xe>65535?Uint32Array:Uint16Array,te=this.indices=new ce(be*Ae*6),ne,le,oe,de,he,ie,ue,Ne=this.radius,ve=this.phiStart,Se=this.phiLength,De=this.thetaStart,Re=this.thetaLength,Ne=this.radius,ze=[],Ge=[],Xe=0,Qe=1/Ne;for(ue=0;ue<=Ae;ue++)for(ie=0;ie<=be;ie++)de=ie/be,he=ue/Ae,ne=-Ne*Math.cos(ve+de*Se)*Math.sin(De+he*Re),le=Ne*Math.cos(De+he*Re),oe=Ne*Math.sin(ve+de*Se)*Math.sin(De+he*Re),ze[0]=ne,ze[1]=le,ze[2]=oe,Ge[0]=de,Ge[1]=he,we.set(Xe,ze),pe.set(Xe,Ge),ze[0]*=Qe,ze[1]*=Qe,ze[2]*=Qe,ye.set(Xe,ze),Xe++;var nt,$e,qe,ot,at=be+1,lt=0;for(ue=0;uene&&(ce=this._x=0,te+=this._rowHeight+oe,this._y=te,this._rowHeight=0),this._x+=pe+oe,this._rowHeight=Math.max(this._rowHeight,ye),te+ye+oe>le)return null;we.position[0]+=this.offsetX*this.dpr+ce,we.position[1]+=this.offsetY*this.dpr+te,this._zr.add(we);var de=[this.offsetX/this.width,this.offsetY/this.height],he=[[ce/ne+de[0],te/le+de[1]],[(ce+pe)/ne+de[0],(te+ye)/le+de[1]]];return he},_fitElement:function(we,pe,ye){var xe=we.getBoundingRect(),ce=pe/xe.width,te=ye/xe.height;we.position=[-xe.x*ce,-xe.y*te],we.scale=[ce,te],we.update()}};function be(we){we=we||{},we.width=we.width||512,we.height=we.height||512,we.devicePixelRatio=we.devicePixelRatio||1,we.gap=we.gap==null?2:we.gap;var pe=document.createElement("canvas");pe.width=we.width*we.devicePixelRatio,pe.height=we.height*we.devicePixelRatio,this._canvas=pe,this._texture=new ge.a({image:pe,flipY:!1});var ye=this;this._zr=Pe.a.zrender.init(pe);var xe=this._zr.refreshImmediately;this._zr.refreshImmediately=function(){xe.call(this),ye._texture.dirty(),ye.onupdate&&ye.onupdate()},this._dpr=we.devicePixelRatio,this._coords={},this.onupdate=we.onupdate,this._gap=we.gap,this._textureAtlasNodes=[new Ae(this._zr,0,0,we.width,we.height,this._gap,this._dpr)],this._nodeWidth=we.width,this._nodeHeight=we.height,this._currentNodeIdx=0}be.prototype={clear:function(){for(var we=0;we=we){console.error("Too much labels. Some will be ignored.");return}var te=(xe+this._nodeWidth)*this._dpr,ne=(ce+this._nodeHeight)*this._dpr;try{this._zr.resize({width:te,height:ne})}catch(oe){this._canvas.width=te,this._canvas.height=ne}var le=new Ae(this._zr,xe,ce,this._nodeWidth,this._nodeHeight,this._gap,this._dpr);return this._textureAtlasNodes.push(le),le},add:function(we,pe,ye){if(this._coords[we.id])return console.warn("Element already been add"),this._coords[we.id];var xe=this._getCurrentNode().add(we,pe,ye);if(!xe){var ce=this._expand();if(!ce)return;xe=ce.add(we,pe,ye)}return this._coords[we.id]=xe,xe},getCoordsScale:function(){var we=this._dpr;return[this._nodeWidth/this._canvas.width*we,this._nodeHeight/this._canvas.height*we]},getCoords:function(we){return this._coords[we]}},Fe.a=be},function(He,Fe,Ce){"use strict";Fe.a=_e;function _e(Pe,ge,Ae){var be,we=Pe.scale;return we.type==="ordinal"&&(typeof Ae=="function"?(be=we.getTicks()[ge],!Ae(be,we.getLabel(be))):ge%(Ae+1))}},function(He,Fe,Ce){var _e=Ce(76),Pe=Ce(77),ge=_e.applyTransform,Ae=Math.min,be=Math.max;function we(ye,xe,ce,te){ce<0&&(ye=ye+ce,ce=-ce),te<0&&(xe=xe+te,te=-te),this.x=ye,this.y=xe,this.width=ce,this.height=te}we.prototype={constructor:we,union:function(ye){var xe=Ae(ye.x,this.x),ce=Ae(ye.y,this.y);this.width=be(ye.x+ye.width,this.x+this.width)-xe,this.height=be(ye.y+ye.height,this.y+this.height)-ce,this.x=xe,this.y=ce},applyTransform:function(){var ye=[],xe=[],ce=[],te=[];return function(ne){if(ne){ye[0]=ce[0]=this.x,ye[1]=te[1]=this.y,xe[0]=te[0]=this.x+this.width,xe[1]=ce[1]=this.y+this.height,ge(ye,ye,ne),ge(xe,xe,ne),ge(ce,ce,ne),ge(te,te,ne),this.x=Ae(ye[0],xe[0],ce[0],te[0]),this.y=Ae(ye[1],xe[1],ce[1],te[1]);var le=be(ye[0],xe[0],ce[0],te[0]),oe=be(ye[1],xe[1],ce[1],te[1]);this.width=le-this.x,this.height=oe-this.y}}}(),calculateTransform:function(ye){var xe=this,ce=ye.width/xe.width,te=ye.height/xe.height,ne=Pe.create();return Pe.translate(ne,ne,[-xe.x,-xe.y]),Pe.scale(ne,ne,[ce,te]),Pe.translate(ne,ne,[ye.x,ye.y]),ne},intersect:function(ye){if(!ye)return!1;ye instanceof we||(ye=we.create(ye));var xe=this,ce=xe.x,te=xe.x+xe.width,ne=xe.y,le=xe.y+xe.height,oe=ye.x,de=ye.x+ye.width,he=ye.y,ie=ye.y+ye.height;return!(te=ce.x&&ye<=ce.x+ce.width&&xe>=ce.y&&xe<=ce.y+ce.height},clone:function(){return new we(this.x,this.y,this.width,this.height)},copy:function(ye){this.x=ye.x,this.y=ye.y,this.width=ye.width,this.height=ye.height},plain:function(){return{x:this.x,y:this.y,width:this.width,height:this.height}}},we.create=function(ye){return new we(ye.x,ye.y,ye.width,ye.height)};var pe=we;He.exports=pe},function(He,Fe){var Ce=typeof Float32Array=="undefined"?Array:Float32Array;function _e(Xe,Qe){var nt=new Ce(2);return Xe==null&&(Xe=0),Qe==null&&(Qe=0),nt[0]=Xe,nt[1]=Qe,nt}function Pe(Xe,Qe){return Xe[0]=Qe[0],Xe[1]=Qe[1],Xe}function ge(Xe){var Qe=new Ce(2);return Qe[0]=Xe[0],Qe[1]=Xe[1],Qe}function Ae(Xe,Qe,nt){return Xe[0]=Qe,Xe[1]=nt,Xe}function be(Xe,Qe,nt){return Xe[0]=Qe[0]+nt[0],Xe[1]=Qe[1]+nt[1],Xe}function we(Xe,Qe,nt,$e){return Xe[0]=Qe[0]+nt[0]*$e,Xe[1]=Qe[1]+nt[1]*$e,Xe}function pe(Xe,Qe,nt){return Xe[0]=Qe[0]-nt[0],Xe[1]=Qe[1]-nt[1],Xe}function ye(Xe){return Math.sqrt(ce(Xe))}var xe=ye;function ce(Xe){return Xe[0]*Xe[0]+Xe[1]*Xe[1]}var te=ce;function ne(Xe,Qe,nt){return Xe[0]=Qe[0]*nt[0],Xe[1]=Qe[1]*nt[1],Xe}function le(Xe,Qe,nt){return Xe[0]=Qe[0]/nt[0],Xe[1]=Qe[1]/nt[1],Xe}function oe(Xe,Qe){return Xe[0]*Qe[0]+Xe[1]*Qe[1]}function de(Xe,Qe,nt){return Xe[0]=Qe[0]*nt,Xe[1]=Qe[1]*nt,Xe}function he(Xe,Qe){var nt=ye(Qe);return nt===0?(Xe[0]=0,Xe[1]=0):(Xe[0]=Qe[0]/nt,Xe[1]=Qe[1]/nt),Xe}function ie(Xe,Qe){return Math.sqrt((Xe[0]-Qe[0])*(Xe[0]-Qe[0])+(Xe[1]-Qe[1])*(Xe[1]-Qe[1]))}var ue=ie;function ve(Xe,Qe){return(Xe[0]-Qe[0])*(Xe[0]-Qe[0])+(Xe[1]-Qe[1])*(Xe[1]-Qe[1])}var Se=ve;function De(Xe,Qe){return Xe[0]=-Qe[0],Xe[1]=-Qe[1],Xe}function Re(Xe,Qe,nt,$e){return Xe[0]=Qe[0]+$e*(nt[0]-Qe[0]),Xe[1]=Qe[1]+$e*(nt[1]-Qe[1]),Xe}function Ne(Xe,Qe,nt){var $e=Qe[0],qe=Qe[1];return Xe[0]=nt[0]*$e+nt[2]*qe+nt[4],Xe[1]=nt[1]*$e+nt[3]*qe+nt[5],Xe}function ze(Xe,Qe,nt){return Xe[0]=Math.min(Qe[0],nt[0]),Xe[1]=Math.min(Qe[1],nt[1]),Xe}function Ge(Xe,Qe,nt){return Xe[0]=Math.max(Qe[0],nt[0]),Xe[1]=Math.max(Qe[1],nt[1]),Xe}Fe.create=_e,Fe.copy=Pe,Fe.clone=ge,Fe.set=Ae,Fe.add=be,Fe.scaleAndAdd=we,Fe.sub=pe,Fe.len=ye,Fe.length=xe,Fe.lenSquare=ce,Fe.lengthSquare=te,Fe.mul=ne,Fe.div=le,Fe.dot=oe,Fe.scale=de,Fe.normalize=he,Fe.distance=ie,Fe.dist=ue,Fe.distanceSquare=ve,Fe.distSquare=Se,Fe.negate=De,Fe.lerp=Re,Fe.applyTransform=Ne,Fe.min=ze,Fe.max=Ge},function(He,Fe){var Ce=typeof Float32Array=="undefined"?Array:Float32Array;function _e(){var ce=new Ce(6);return Pe(ce),ce}function Pe(ce){return ce[0]=1,ce[1]=0,ce[2]=0,ce[3]=1,ce[4]=0,ce[5]=0,ce}function ge(ce,te){return ce[0]=te[0],ce[1]=te[1],ce[2]=te[2],ce[3]=te[3],ce[4]=te[4],ce[5]=te[5],ce}function Ae(ce,te,ne){var le=te[0]*ne[0]+te[2]*ne[1],oe=te[1]*ne[0]+te[3]*ne[1],de=te[0]*ne[2]+te[2]*ne[3],he=te[1]*ne[2]+te[3]*ne[3],ie=te[0]*ne[4]+te[2]*ne[5]+te[4],ue=te[1]*ne[4]+te[3]*ne[5]+te[5];return ce[0]=le,ce[1]=oe,ce[2]=de,ce[3]=he,ce[4]=ie,ce[5]=ue,ce}function be(ce,te,ne){return ce[0]=te[0],ce[1]=te[1],ce[2]=te[2],ce[3]=te[3],ce[4]=te[4]+ne[0],ce[5]=te[5]+ne[1],ce}function we(ce,te,ne){var le=te[0],oe=te[2],de=te[4],he=te[1],ie=te[3],ue=te[5],ve=Math.sin(ne),Se=Math.cos(ne);return ce[0]=le*Se+he*ve,ce[1]=-le*ve+he*Se,ce[2]=oe*Se+ie*ve,ce[3]=-oe*ve+Se*ie,ce[4]=Se*de+ve*ue,ce[5]=Se*ue-ve*de,ce}function pe(ce,te,ne){var le=ne[0],oe=ne[1];return ce[0]=te[0]*le,ce[1]=te[1]*oe,ce[2]=te[2]*le,ce[3]=te[3]*oe,ce[4]=te[4]*le,ce[5]=te[5]*oe,ce}function ye(ce,te){var ne=te[0],le=te[2],oe=te[4],de=te[1],he=te[3],ie=te[5],ue=ne*he-de*le;return ue?(ue=1/ue,ce[0]=he*ue,ce[1]=-de*ue,ce[2]=-le*ue,ce[3]=ne*ue,ce[4]=(le*ie-he*oe)*ue,ce[5]=(de*oe-ne*ie)*ue,ce):null}function xe(ce){var te=_e();return ge(te,ce),te}Fe.create=_e,Fe.identity=Pe,Fe.copy=ge,Fe.mul=Ae,Fe.translate=be,Fe.rotate=we,Fe.scale=pe,Fe.invert=ye,Fe.clone=xe},function(He,Fe,Ce){var _e=Ce(12),Pe=1e-4;function ge(Re){return Re.replace(/^\s+/,"").replace(/\s+$/,"")}function Ae(Re,Ne,ze,Ge){var Xe=Ne[1]-Ne[0],Qe=ze[1]-ze[0];if(Xe===0)return Qe===0?ze[0]:(ze[0]+ze[1])/2;if(Ge)if(Xe>0){if(Re<=Ne[0])return ze[0];if(Re>=Ne[1])return ze[1]}else{if(Re>=Ne[0])return ze[0];if(Re<=Ne[1])return ze[1]}else{if(Re===Ne[0])return ze[0];if(Re===Ne[1])return ze[1]}return(Re-Ne[0])/Xe*Qe+ze[0]}function be(Re,Ne){switch(Re){case"center":case"middle":Re="50%";break;case"left":case"top":Re="0%";break;case"right":case"bottom":Re="100%";break}return typeof Re=="string"?ge(Re).match(/%$/)?parseFloat(Re)/100*Ne:parseFloat(Re):Re==null?NaN:+Re}function we(Re,Ne,ze){return Ne==null&&(Ne=10),Ne=Math.min(Math.max(0,Ne),20),Re=(+Re).toFixed(Ne),ze?Re:+Re}function pe(Re){return Re.sort(function(Ne,ze){return Ne-ze}),Re}function ye(Re){if(Re=+Re,isNaN(Re))return 0;for(var Ne=1,ze=0;Math.round(Re*Ne)/Ne!==Re;)Ne*=10,ze++;return ze}function xe(Re){var Ne=Re.toString(),ze=Ne.indexOf("e");if(ze>0){var Ge=+Ne.slice(ze+1);return Ge<0?-Ge:0}else{var Xe=Ne.indexOf(".");return Xe<0?0:Ne.length-1-Xe}}function ce(Re,Ne){var ze=Math.log,Ge=Math.LN10,Xe=Math.floor(ze(Re[1]-Re[0])/Ge),Qe=Math.round(ze(Math.abs(Ne[1]-Ne[0]))/Ge),nt=Math.min(Math.max(-Xe+Qe,0),20);return isFinite(nt)?nt:20}function te(Re,Ne,ze){if(!Re[Ne])return 0;var Ge=_e.reduce(Re,function(yt,ft){return yt+(isNaN(ft)?0:ft)},0);if(Ge===0)return 0;for(var Xe=Math.pow(10,ze),Qe=_e.map(Re,function(yt){return(isNaN(yt)?0:yt)/Ge*Xe*100}),nt=Xe*100,$e=_e.map(Qe,function(yt){return Math.floor(yt)}),qe=_e.reduce($e,function(yt,ft){return yt+ft},0),ot=_e.map(Qe,function(yt,ft){return yt-$e[ft]});qeat&&(at=ot[rt],lt=rt);++$e[lt],ot[lt]=0,++qe}return $e[Ne]/Xe}var ne=9007199254740991;function le(Re){var Ne=Math.PI*2;return(Re%Ne+Ne)%Ne}function oe(Re){return Re>-Pe&&Re=-20?+Re.toFixed(ze<0?-ze:0):Re}function Se(Re){Re.sort(function(qe,ot){return $e(qe,ot,0)?-1:1});for(var Ne=-1/0,ze=1,Ge=0;Ge=0}Fe.linearMap=Ae,Fe.parsePercent=be,Fe.round=we,Fe.asc=pe,Fe.getPrecision=ye,Fe.getPrecisionSafe=xe,Fe.getPixelPrecision=ce,Fe.getPercentWithPrecision=te,Fe.MAX_SAFE_INTEGER=ne,Fe.remRadian=le,Fe.isRadianAroundZero=oe,Fe.parseDate=he,Fe.quantity=ie,Fe.nice=ve,Fe.reformIntervals=Se,Fe.isNumeric=De},function(He,Fe,Ce){"use strict";var _e=Ce(5),Pe=Ce(11),ge=Ce(21),Ae=function(){this._pool={},this._allocatedTextures=[]};Ae.prototype={constructor:Ae,get:function(ce){var te=pe(ce);this._pool.hasOwnProperty(te)||(this._pool[te]=[]);var ne=this._pool[te];if(!ne.length){var le=new _e.a(ce);return this._allocatedTextures.push(le),le}return ne.pop()},put:function(ce){var te=pe(ce);this._pool.hasOwnProperty(te)||(this._pool[te]=[]);var ne=this._pool[te];ne.push(ce)},clear:function(ce){for(var te=0;tele&&ne.push({pivot:Math.floor((oe+le)/2),left:le,right:oe});var le=ce[te].pivot+1,oe=ce[te].right;oe>le&&ne.push({pivot:Math.floor((oe+le)/2),left:le,right:oe})}ce=this._parts=ne}else for(var te=0;te65535?this.indices instanceof Uint16Array&&(this.indices=new Uint32Array(this.indices)):this.indices instanceof Uint32Array&&(this.indices=new Uint16Array(this.indices)))},setTriangleCount:function(ce){this.triangleCount!==ce&&(ce===0?this.indices=null:this.indices=this.vertexCount>65535?new Uint32Array(ce*3):new Uint16Array(ce*3))},_getCubicCurveApproxStep:function(ce,te,ne,le){var oe=pe.dist(ce,te)+pe.dist(ne,te)+pe.dist(le,ne),de=1/(oe+1)*this.segmentScale;return de},getCubicCurveVertexCount:function(ce,te,ne,le){var oe=this._getCubicCurveApproxStep(ce,te,ne,le),de=Math.ceil(1/oe);return this.useNativeLine?de*2:de*2+2},getCubicCurveTriangleCount:function(ce,te,ne,le){var oe=this._getCubicCurveApproxStep(ce,te,ne,le),de=Math.ceil(1/oe);return this.useNativeLine?0:de*2},getLineVertexCount:function(){return this.getPolylineVertexCount(ye)},getLineTriangleCount:function(){return this.getPolylineTriangleCount(ye)},getPolylineVertexCount:function(ce){var te;if(typeof ce=="number")te=ce;else{var ne=typeof ce[0]!="number";te=ne?ce.length:ce.length/2}return this.useNativeLine?(te-1)*2:(te-1)*2+2},getPolylineTriangleCount:function(ce){var te;if(typeof ce=="number")te=ce;else{var ne=typeof ce[0]!="number";te=ne?ce.length:ce.length/2}return this.useNativeLine?0:(te-1)*2},addCubicCurve:function(ce,te,ne,le,oe,de){de==null&&(de=1);for(var he=ce[0],ie=ce[1],ue=te[0],ve=te[1],Se=ne[0],De=ne[1],Re=le[0],Ne=le[1],ze=this._getCubicCurveApproxStep(ce,te,ne,le),Ge=ze*ze,Xe=Ge*ze,Qe=3*ze,nt=3*Ge,$e=6*Ge,qe=6*Xe,ot=he-ue*2+Se,at=ie-ve*2+De,lt=(ue-Se)*3-he+Re,rt=(ve-De)*3-ie+Ne,ut=he,yt=ie,ft=(ue-he)*Qe+ot*nt+lt*Xe,dt=(ve-ie)*Qe+at*nt+rt*Xe,ht=ot*$e+lt*qe,Ut=at*$e+rt*qe,Kt=lt*qe,qt=rt*qe,vn=0,Ot=0,rn=Math.ceil(1/ze),an=new Float32Array((rn+1)*3),an=[],On=0,Ot=0;Ot1&&(ut=ft>0?Math.min(ut,Re):Math.max(ut,Re),yt=dt>0?Math.min(yt,Ne):Math.max(yt,Ne));this.addPolyline(an,oe,de)},addLine:function(ce,te,ne,le){this.addPolyline([ce,te],ne,le)},addPolyline:function(){var ce=pe.create(),te=pe.create(),ne=pe.create(),le=pe.create(),oe=[],de=[],he=[];return function(ie,ue,ve,Se,De){if(ie.length){var Re=typeof ie[0]!="number";if(De==null&&(De=Re?ie.length:ie.length/2),!(De<2)){Se==null&&(Se=0),ve==null&&(ve=1),this._itemVertexOffsets.push(this._vertexOffset);for(var Ne=Re?typeof ue[0]!="number":ue.length/4===De,ze=this.attributes.position,Ge=this.attributes.color,Xe=this.attributes.offset,Qe=this.attributes.normal,nt=this.indices,$e=this._vertexOffset,qe,ot=0;ot1&&(ze.copy($e,$e-1),Ge.copy($e,$e-1),$e++);else{var rt;if(ot0){pe.sub(ce,oe,he),pe.sub(te,de,oe),pe.normalize(ce,ce),pe.normalize(te,te),pe.add(le,ce,te),pe.normalize(le,le);var ut=ve/2*Math.min(1/pe.dot(ce,le),2);ne[0]=-le[1],ne[1]=le[0],rt=ut}else pe.sub(ce,de,oe),pe.normalize(ce,ce),ne[0]=-ce[1],ne[1]=ce[0],rt=ve/2}else pe.sub(ce,oe,he),pe.normalize(ce,ce),ne[0]=-ce[1],ne[1]=ce[0],rt=ve/2;Qe.set($e,ne),Qe.set($e+1,ne),Xe.set($e,rt),Xe.set($e+1,-rt),pe.copy(he,oe),ze.set($e,oe),ze.set($e+1,oe),Ge.set($e,qe),Ge.set($e+1,qe),$e+=2}if(this.useNativeLine)Ge.set($e,qe),ze.set($e,oe),$e++;else if(ot>0){var yt=this._faceOffset*3,nt=this.indices;nt[yt]=$e-4,nt[yt+1]=$e-3,nt[yt+2]=$e-2,nt[yt+3]=$e-3,nt[yt+4]=$e-1,nt[yt+5]=$e-2,this._faceOffset+=2}}this._vertexOffset=$e}}}}(),setItemColor:function(ce,te){for(var ne=this._itemVertexOffsets[ce],le=ceQe&&at=0&&this._viewsToDispose.splice(ie,1),this.views.push(he),he.layer=this;var ue=this.zr;he.scene.traverse(function(ve){ve.__zr=ue,ve.addAnimatorsToZr&&ve.addAnimatorsToZr(ue)})}};function ce(he){var ie=he.__zr;he.__zr=null,ie&&he.removeAnimatorsFromZr&&he.removeAnimatorsFromZr(ie)}xe.prototype.removeView=function(he){if(he.layer===this){var ie=this.views.indexOf(he);ie>=0&&(this.views.splice(ie,1),he.scene.traverse(ce,this),he.layer=null,this._viewsToDispose.push(he))}},xe.prototype.removeViewsAll=function(){this.views.forEach(function(he){he.scene.traverse(ce,this),he.layer=null,this._viewsToDispose.push(he)},this),this.views.length=0},xe.prototype.resize=function(he,ie){var ue=this.renderer;ue.resize(he,ie)},xe.prototype.clear=function(){var he=this.renderer.gl;he.clearColor(0,0,0,0),he.depthMask(!0),he.colorMask(!0,!0,!0,!0),he.clear(he.DEPTH_BUFFER_BIT|he.COLOR_BUFFER_BIT)},xe.prototype.clearDepth=function(){var he=this.renderer.gl;he.clear(he.DEPTH_BUFFER_BIT)},xe.prototype.clearColor=function(){var he=this.renderer.gl;he.clearColor(0,0,0,0),he.clear(he.COLOR_BUFFER_BIT)},xe.prototype.needsRefresh=function(){this.zr.refresh()},xe.prototype.refresh=function(){for(var he=0;he20)){he=he.event;var ve=this.pickObject(he.offsetX,he.offsetY);ve&&(this._dispatchEvent(he.type,he,ve),this._dispatchDataEvent(he.type,he,ve));var Se=this._clickToSetFocusPoint(he);if(Se){var De=Se.view.setDOFFocusOnPoint(Se.distance);De&&this.zr.refresh()}}}},xe.prototype._clickToSetFocusPoint=function(he){for(var ie=this.renderer,ue=ie.viewport,ve=this.views.length-1;ve>=0;ve--){var Se=this.views[ve];if(Se.hasDOF()&&Se.containPoint(he.offsetX,he.offsetY)){this._picking.scene=Se.scene,this._picking.camera=Se.camera,ie.viewport=Se.viewport;var De=this._picking.pick(he.offsetX,he.offsetY,!0);if(De)return De.view=Se,De}}ie.viewport=ue},xe.prototype.onglobalout=function(he){var ie=this._hovered;ie&&this._dispatchEvent("mouseout",he,{target:ie.target})},xe.prototype.pickObject=function(he,ie){for(var ue=[],ve=this.renderer,Se=ve.viewport,De=0;De=0&&(ze.dataIndex=this._lastDataIndex,ze.seriesIndex=this._lastSeriesIndex,this.zr.handler.dispatchToElement(Ge,"mouseout",ie)),Ne=!0):Re!=null&&Re!==this._lastEventData&&(this._lastEventData!=null&&(ze.eventData=this._lastEventData,this.zr.handler.dispatchToElement(Ge,"mouseout",ie)),Ne=!0),this._lastEventData=Re,this._lastDataIndex=Se,this._lastSeriesIndex=De),ze.eventData=Re,ze.dataIndex=Se,ze.seriesIndex=De,(Re!=null||parseInt(Se,10)>=0)&&(this.zr.handler.dispatchToElement(Ge,he,ie),Ne&&this.zr.handler.dispatchToElement(Ge,"mouseover",ie))},xe.prototype._dispatchToView=function(he,ie){for(var ue=0;ue255?255:ue}function be(ue){return ue=Math.round(ue),ue<0?0:ue>360?360:ue}function we(ue){return ue<0?0:ue>1?1:ue}function pe(ue){return ue.length&&ue.charAt(ue.length-1)==="%"?Ae(parseFloat(ue)/100*255):Ae(parseInt(ue,10))}function ye(ue){return ue.length&&ue.charAt(ue.length-1)==="%"?we(parseFloat(ue)/100):we(parseFloat(ue))}function xe(ue,ve,Se){return Se<0?Se+=1:Se>1&&(Se-=1),Se*6<1?ue+(ve-ue)*Se*6:Se*2<1?ve:Se*3<2?ue+(ve-ue)*(2/3-Se)*6:ue}function ce(ue,ve,Se){return ue+(ve-ue)*Se}function te(ue,ve,Se,De,Re){return ue[0]=ve,ue[1]=Se,ue[2]=De,ue[3]=Re,ue}function ne(ue,ve){return ue[0]=ve[0],ue[1]=ve[1],ue[2]=ve[2],ue[3]=ve[3],ue}var le=new _e.a(20),oe=null;function de(ue,ve){oe&&ne(oe,ve),oe=le.put(ue,oe||ve.slice())}Pe.parse=function(ue,ve){if(ue){ve=ve||[];var Se=le.get(ue);if(Se)return ne(ve,Se);ue=ue+"";var De=ue.replace(/ /g,"").toLowerCase();if(De in ge)return ne(ve,ge[De]),de(ue,ve),ve;if(De.charAt(0)==="#"){if(De.length===4){var Re=parseInt(De.substr(1),16);if(!(Re>=0&&Re<=4095)){te(ve,0,0,0,1);return}return te(ve,(Re&3840)>>4|(Re&3840)>>8,Re&240|(Re&240)>>4,Re&15|(Re&15)<<4,1),de(ue,ve),ve}else if(De.length===7){var Re=parseInt(De.substr(1),16);if(!(Re>=0&&Re<=16777215)){te(ve,0,0,0,1);return}return te(ve,(Re&16711680)>>16,(Re&65280)>>8,Re&255,1),de(ue,ve),ve}return}var Ne=De.indexOf("("),ze=De.indexOf(")");if(Ne!==-1&&ze+1===De.length){var Ge=De.substr(0,Ne),Xe=De.substr(Ne+1,ze-(Ne+1)).split(","),Qe=1;switch(Ge){case"rgba":if(Xe.length!==4){te(ve,0,0,0,1);return}Qe=ye(Xe.pop());case"rgb":if(Xe.length!==3){te(ve,0,0,0,1);return}return te(ve,pe(Xe[0]),pe(Xe[1]),pe(Xe[2]),Qe),de(ue,ve),ve;case"hsla":if(Xe.length!==4){te(ve,0,0,0,1);return}return Xe[3]=ye(Xe[3]),he(Xe,ve),de(ue,ve),ve;case"hsl":if(Xe.length!==3){te(ve,0,0,0,1);return}return he(Xe,ve),de(ue,ve),ve;default:return}}te(ve,0,0,0,1)}},Pe.parseToFloat=function(ue,ve){if(ve=Pe.parse(ue,ve),!!ve)return ve[0]/=255,ve[1]/=255,ve[2]/=255,ve};function he(ue,ve){var Se=(parseFloat(ue[0])%360+360)%360/360,De=ye(ue[1]),Re=ye(ue[2]),Ne=Re<=.5?Re*(De+1):Re+De-Re*De,ze=Re*2-Ne;return ve=ve||[],te(ve,Ae(xe(ze,Ne,Se+1/3)*255),Ae(xe(ze,Ne,Se)*255),Ae(xe(ze,Ne,Se-1/3)*255),1),ue.length===4&&(ve[3]=ue[3]),ve}function ie(ue){if(ue){var ve=ue[0]/255,Se=ue[1]/255,De=ue[2]/255,Re=Math.min(ve,Se,De),Ne=Math.max(ve,Se,De),ze=Ne-Re,Ge=(Ne+Re)/2,Xe,Qe;if(ze===0)Xe=0,Qe=0;else{Ge<.5?Qe=ze/(Ne+Re):Qe=ze/(2-Ne-Re);var nt=((Ne-ve)/6+ze/2)/ze,$e=((Ne-Se)/6+ze/2)/ze,qe=((Ne-De)/6+ze/2)/ze;ve===Ne?Xe=qe-$e:Se===Ne?Xe=1/3+nt-qe:De===Ne&&(Xe=2/3+$e-nt),Xe<0&&(Xe+=1),Xe>1&&(Xe-=1)}var ot=[Xe*360,Qe,Ge];return ue[3]!=null&&ot.push(ue[3]),ot}}Pe.lift=function(ue,ve){var Se=Pe.parse(ue);if(Se){for(var De=0;De<3;De++)ve<0?Se[De]=Se[De]*(1-ve)|0:Se[De]=(255-Se[De])*ve+Se[De]|0;return Pe.stringify(Se,Se.length===4?"rgba":"rgb")}},Pe.toHex=function(ue){var ve=Pe.parse(ue);if(ve)return((1<<24)+(ve[0]<<16)+(ve[1]<<8)+ +ve[2]).toString(16).slice(1)},Pe.fastLerp=function(ue,ve,Se){if(!(!(ve&&ve.length)||!(ue>=0&&ue<=1))){Se=Se||[];var De=ue*(ve.length-1),Re=Math.floor(De),Ne=Math.ceil(De),ze=ve[Re],Ge=ve[Ne],Xe=De-Re;return Se[0]=Ae(ce(ze[0],Ge[0],Xe)),Se[1]=Ae(ce(ze[1],Ge[1],Xe)),Se[2]=Ae(ce(ze[2],Ge[2],Xe)),Se[3]=we(ce(ze[3],Ge[3],Xe)),Se}},Pe.fastMapToColor=Pe.fastLerp,Pe.lerp=function(ue,ve,Se){if(!(!(ve&&ve.length)||!(ue>=0&&ue<=1))){var De=ue*(ve.length-1),Re=Math.floor(De),Ne=Math.ceil(De),ze=Pe.parse(ve[Re]),Ge=Pe.parse(ve[Ne]),Xe=De-Re,Qe=Pe.stringify([Ae(ce(ze[0],Ge[0],Xe)),Ae(ce(ze[1],Ge[1],Xe)),Ae(ce(ze[2],Ge[2],Xe)),we(ce(ze[3],Ge[3],Xe))],"rgba");return Se?{color:Qe,leftIndex:Re,rightIndex:Ne,value:De}:Qe}},Pe.mapToColor=Pe.lerp,Pe.modifyHSL=function(ue,ve,Se,De){if(ue=Pe.parse(ue),ue)return ue=ie(ue),ve!=null&&(ue[0]=be(ve)),Se!=null&&(ue[1]=ye(Se)),De!=null&&(ue[2]=ye(De)),Pe.stringify(he(ue),"rgba")},Pe.modifyAlpha=function(ue,ve){if(ue=Pe.parse(ue),ue&&ve!=null)return ue[3]=we(ve),Pe.stringify(ue,"rgba")},Pe.stringify=function(ue,ve){if(!(!ue||!ue.length)){var Se=ue[0]+","+ue[1]+","+ue[2];return(ve==="rgba"||ve==="hsva"||ve==="hsla")&&(Se+=","+ue[3]),ve+"("+Se+")"}},Fe.a=Pe},function(He,Fe,Ce){"use strict";var _e=Ce(95),Pe=function(ge){this._list=new _e.a,this._map={},this._maxSize=ge||10};Pe.prototype.setMaxSize=function(ge){this._maxSize=ge},Pe.prototype.put=function(ge,Ae){if(typeof this._map[ge]=="undefined"){var be=this._list.length();if(be>=this._maxSize&&be>0){var we=this._list.head;this._list.remove(we),delete this._map[we.key]}var pe=this._list.insert(Ae);pe.key=ge,this._map[ge]=pe}},Pe.prototype.get=function(ge){var Ae=this._map[ge];if(typeof Ae!="undefined")return Ae!==this._list.tail&&(this._list.remove(Ae),this._list.insertEntry(Ae)),Ae.value},Pe.prototype.remove=function(ge){var Ae=this._map[ge];typeof Ae!="undefined"&&(delete this._map[ge],this._list.remove(Ae))},Pe.prototype.clear=function(){this._list.clear(),this._map={}},Fe.a=Pe},function(He,Fe,Ce){"use strict";var _e=function(){this.head=null,this.tail=null,this._length=0};_e.prototype.insert=function(Pe){var ge=new _e.Entry(Pe);return this.insertEntry(ge),ge},_e.prototype.insertAt=function(Pe,ge){if(!(Pe<0)){for(var Ae=this.head,be=0;Ae&&be!=Pe;)Ae=Ae.next,be++;if(Ae){var we=new _e.Entry(ge),pe=Ae.prev;pe?(pe.next=we,we.prev=pe):this.head=we,we.next=Ae,Ae.prev=we}else this.insert(ge)}},_e.prototype.insertBeforeEntry=function(Pe,ge){var Ae=new _e.Entry(Pe),be=ge.prev;be?(be.next=Ae,Ae.prev=be):this.head=Ae,Ae.next=ge,ge.prev=Ae,this._length++},_e.prototype.insertEntry=function(Pe){this.head?(this.tail.next=Pe,Pe.prev=this.tail,this.tail=Pe):this.head=this.tail=Pe,this._length++},_e.prototype.remove=function(Pe){var ge=Pe.prev,Ae=Pe.next;ge?ge.next=Ae:this.head=Ae,Ae?Ae.prev=ge:this.tail=ge,Pe.next=Pe.prev=null,this._length--},_e.prototype.removeAt=function(Pe){if(!(Pe<0)){for(var ge=this.head,Ae=0;ge&&Ae!=Pe;)ge=ge.next,Ae++;if(ge)return this.remove(ge),ge.value}},_e.prototype.getHead=function(){if(this.head)return this.head.value},_e.prototype.getTail=function(){if(this.tail)return this.tail.value},_e.prototype.getAt=function(Pe){if(!(Pe<0)){for(var ge=this.head,Ae=0;ge&&Ae!=Pe;)ge=ge.next,Ae++;return ge.value}},_e.prototype.indexOf=function(Pe){for(var ge=this.head,Ae=0;ge;){if(ge.value===Pe)return Ae;ge=ge.next,Ae++}},_e.prototype.length=function(){return this._length},_e.prototype.isEmpty=function(){return this._length===0},_e.prototype.forEach=function(Pe,ge){for(var Ae=this.head,be=0,we=typeof ge!="undefined";Ae;)we?Pe.call(ge,Ae.value,be):Pe(Ae.value,be),Ae=Ae.next,be++},_e.prototype.clear=function(){this.tail=this.head=null,this._length=0},_e.Entry=function(Pe){this.value=Pe,this.next=null,this.prev=null},Fe.a=_e},function(He,Fe,Ce){"use strict";var _e=Ce(97),Pe=/for\s*?\(int\s*?_idx_\s*\=\s*([\w-]+)\;\s*_idx_\s*<\s*([\w-]+);\s*_idx_\s*\+\+\s*\)\s*\{\{([\s\S]+?)(?=\}\})\}\}/g;function ge(ye,xe,ce){function te(oe,de,he,ie){var ue="";isNaN(de)&&(de in xe?de=xe[de]:de=ne[de]),isNaN(he)&&(he in xe?he=xe[he]:he=ne[he]);for(var ve=parseInt(de);ve0&&te.push("#define "+ne.toUpperCase()+"_COUNT "+le)}if(ce)for(var oe=0;oe=0&&at[qe]>1e-4&&(ce.transformMat4(ut,ot,nt[lt[qe]]),ce.scaleAndAdd(rt,rt,ut,at[qe]));yt.set($e,rt)}}for(var $e=0;$e=0&&(be(ye),ye.coordinateSystem==="mapbox"&&(ye.coordinateSystem="mapbox3D",pe.mapbox3D=pe.mapbox))}),we(pe.xAxis3D),we(pe.yAxis3D),we(pe.zAxis3D),we(pe.grid3D),Ae(pe.geo3D)}},function(He,Fe,Ce){"use strict";function _e(Pe){var ge=new XMLHttpRequest;ge.open("get",Pe.url),ge.responseType=Pe.responseType||"text",Pe.onprogress&&(ge.onprogress=function(Ae){if(Ae.lengthComputable){var be=Ae.loaded/Ae.total;Pe.onprogress(be,Ae.loaded,Ae.total)}else Pe.onprogress(null)}),ge.onload=function(Ae){ge.status>=400?Pe.onerror&&Pe.onerror():Pe.onload&&Pe.onload(ge.response)},Pe.onerror&&(ge.onerror=Pe.onerror),ge.send(null)}Fe.a={get:_e}},function(He,Fe,Ce){"use strict";Fe.a=`@export clay.basic.vertex uniform mat4 worldViewProjection : WORLDVIEWPROJECTION; uniform vec2 uvRepeat : [1.0, 1.0]; uniform vec2 uvOffset : [0.0, 0.0]; attribute vec2 texcoord : TEXCOORD_0; attribute vec3 position : POSITION; attribute vec3 barycentric; @import clay.chunk.skinning_header varying vec2 v_Texcoord; varying vec3 v_Barycentric; #ifdef VERTEX_COLOR attribute vec4 a_Color : COLOR; varying vec4 v_Color; #endif void main() { vec3 skinnedPosition = position; #ifdef SKINNING @import clay.chunk.skin_matrix skinnedPosition = (skinMatrixWS * vec4(position, 1.0)).xyz; #endif v_Texcoord = texcoord * uvRepeat + uvOffset; v_Barycentric = barycentric; gl_Position = worldViewProjection * vec4(skinnedPosition, 1.0); #ifdef VERTEX_COLOR v_Color = a_Color; #endif } @end @export clay.basic.fragment varying vec2 v_Texcoord; uniform sampler2D diffuseMap; uniform vec3 color : [1.0, 1.0, 1.0]; uniform vec3 emission : [0.0, 0.0, 0.0]; uniform float alpha : 1.0; #ifdef ALPHA_TEST uniform float alphaCutoff: 0.9; #endif #ifdef VERTEX_COLOR varying vec4 v_Color; #endif uniform float lineWidth : 0.0; uniform vec4 lineColor : [0.0, 0.0, 0.0, 0.6]; varying vec3 v_Barycentric; @import clay.util.edge_factor @import clay.util.rgbm @import clay.util.srgb @import clay.util.ACES void main() { #ifdef RENDER_TEXCOORD gl_FragColor = vec4(v_Texcoord, 1.0, 1.0); return; #endif gl_FragColor = vec4(color, alpha); #ifdef VERTEX_COLOR gl_FragColor *= v_Color; #endif #ifdef DIFFUSEMAP_ENABLED vec4 tex = decodeHDR(texture2D(diffuseMap, v_Texcoord)); #ifdef SRGB_DECODE tex = sRGBToLinear(tex); #endif #if defined(DIFFUSEMAP_ALPHA_ALPHA) gl_FragColor.a = tex.a; #endif gl_FragColor.rgb *= tex.rgb; #endif gl_FragColor.rgb += emission; if( lineWidth > 0.) { gl_FragColor.rgb = mix(gl_FragColor.rgb, lineColor.rgb, (1.0 - edgeFactor(lineWidth)) * lineColor.a); } #ifdef ALPHA_TEST if (gl_FragColor.a < alphaCutoff) { discard; } #endif #ifdef TONEMAPPING gl_FragColor.rgb = ACESToneMapping(gl_FragColor.rgb); #endif #ifdef SRGB_ENCODE gl_FragColor = linearTosRGB(gl_FragColor); #endif gl_FragColor = encodeHDR(gl_FragColor); } @end`},function(He,Fe,Ce){"use strict";var _e=Ce(6),Pe=Ce(5),ge=Ce(25),Ae=542327876,be=1,we=2,pe=4,ye=8,xe=4096,ce=131072,te=524288,ne=8388608,le=8,oe=4194304,de=4096,he=512,ie=1024,ue=2048,ve=4096,Se=8192,De=16384,Re=32768,Ne=2097152,ze=1,Ge=2,Xe=4,Qe=64,nt=512,$e=131072;function qe(sn){return sn.charCodeAt(0)+(sn.charCodeAt(1)<<8)+(sn.charCodeAt(2)<<16)+(sn.charCodeAt(3)<<24)}function ot(sn){return String.fromCharCode(sn&255,sn>>8&255,sn>>16&255,sn>>24&255)}var at=31,lt=qe("DXT1"),rt=qe("DXT3"),ut=qe("DXT5"),yt=0,ft=1,dt=2,ht=3,Ut=4,Kt=7,qt=20,vn=21,Ot=27,rn=28,an=29,On=30,Rn={parse:function(sn,tn){var Gt=new Int32Array(sn,0,at);if(Gt[yt]!==Ae||!Gt(qt)&Xe)return null;var It=Gt(vn),Et=Gt[Ut],Zt=Gt[ht],vt=Gt[rn]&he,At=Gt[dt]&ce,Qt,Ft;switch(It){case lt:Qt=8,Ft=_e.a.COMPRESSED_RGB_S3TC_DXT1_EXT;break;case rt:Qt=16,Ft=_e.a.COMPRESSED_RGBA_S3TC_DXT3_EXT;break;case ut:Qt=16,Ft=_e.a.COMPRESSED_RGBA_S3TC_DXT5_EXT;break;default:return null}var wt=Gt[ft]+4,ln=vt?6:1,In=1;At&&(In=Math.max(1,Gt[Kt]));for(var Kn=[],Vn=0;Vn0){var he=Math.pow(2,ne[3]-128-8+de);le[oe+0]=ne[0]*he,le[oe+1]=ne[1]*he,le[oe+2]=ne[2]*he}else le[oe+0]=0,le[oe+1]=0,le[oe+2]=0;return le[oe+3]=1,le}function pe(ne,le,oe){for(var de="",he=le;he0;)if(ne[ie][0]=le[oe++],ne[ie][1]=le[oe++],ne[ie][2]=le[oe++],ne[ie][3]=le[oe++],ne[ie][0]===1&&ne[ie][1]===1&&ne[ie][2]===1){for(var ve=ne[ie][3]<>>0;ve>0;ve--)ye(ne[ie-1],ne[ie]),ie++,ue--;he+=8}else ie++,ue--,he=0;return oe}function ce(ne,le,oe,de){if(debe)return xe(ne,le,oe,de);var he=le[oe++];if(he!=2)return xe(ne,le,oe-1,de);if(ne[0][1]=le[oe++],ne[0][2]=le[oe++],he=le[oe++],(ne[0][2]<<8>>>0|he)>>>0!==de)return null;for(var he=0;he<4;he++)for(var ie=0;ie128){ue=(ue&127)>>>0;for(var ve=le[oe++];ue--;)ne[ie++][he]=ve}else for(;ue--;)ne[ie++][he]=le[oe++]}return oe}var te={parseRGBE:function(ne,le,oe){oe==null&&(oe=0);var de=new Uint8Array(ne),he=de.length;if(pe(de,0,2)==="#?"){for(var ie=2;ie=he)){ie+=2;for(var ue="";ie=0||(Ae.forEach(function(ye){pe.on(ye,this[be(ye)],this)},this),this._meshes.push(pe))},detachFromMesh:function(pe){var ye=this._meshes.indexOf(pe);ye>=0&&this._meshes.splice(ye,1),Ae.forEach(function(xe){pe.off(xe,this[be(xe)])},this)},dispose:function(){this._meshes.forEach(function(pe){this.detachFromMesh(pe)},this)}},Fe.a=we},function(He,Fe,Ce){"use strict";var _e=Ce(19),Pe=Ce(108),ge=_e.a.extend({cubemap:null,castShadow:!1,_normalDistribution:null,_brdfLookup:null},{type:"AMBIENT_CUBEMAP_LIGHT",prefilter:function(Ae,be){this._brdfLookup||(this._normalDistribution=Pe.a.generateNormalDistribution(),this._brdfLookup=Pe.a.integrateBRDF(Ae,this._normalDistribution));var we=this.cubemap;if(!we.__prefiltered){var pe=Pe.a.prefilterEnvironmentMap(Ae,we,{encodeRGBM:!0,width:be,height:be},this._normalDistribution,this._brdfLookup);this.cubemap=pe.environmentMap,this.cubemap.__prefiltered=!0,we.dispose(Ae)}},uniformTemplates:{ambientCubemapLightColor:{type:"3f",value:function(Ae){var be=Ae.color,we=Ae.intensity;return[be[0]*we,be[1]*we,be[2]*we]}},ambientCubemapLightCubemap:{type:"t",value:function(Ae){return Ae.cubemap}},ambientCubemapLightBRDFLookup:{type:"t",value:function(Ae){return Ae._brdfLookup}}}});Fe.a=ge},function(He,Fe,Ce){"use strict";var _e=Ce(5),Pe=Ce(25),ge=Ce(6),Ae=Ce(10),be=Ce(14),we=Ce(17),pe=Ce(7),ye=Ce(57),xe=Ce(29),ce=Ce(55),te=Ce(18),ne=Ce(54),le=Ce(111),oe=Ce(112),de={},he=["px","nx","py","ny","pz","nz"];de.prefilterEnvironmentMap=function(ie,ue,ve,Se,De){(!De||!Se)&&(Se=de.generateNormalDistribution(),De=de.integrateBRDF(ie,Se)),ve=ve||{};var Re=ve.width||64,Ne=ve.height||64,ze=ve.type||ue.type,Ge=new Pe.a({width:Re,height:Ne,type:ze,flipY:!1,mipmaps:[]});Ge.isPowerOfTwo()||console.warn("Width and height must be power of two to enable mipmap.");var Xe=Math.min(Re,Ne),Qe=Math.log(Xe)/Math.log(2)+1,nt=new we.a({shader:new pe.a({vertex:pe.a.source("clay.skybox.vertex"),fragment:oe.a})});nt.set("normalDistribution",Se),ve.encodeRGBM&&nt.define("fragment","RGBM_ENCODE"),ve.decodeRGBM&&nt.define("fragment","RGBM_DECODE");var $e=new xe.a,qe;if(ue instanceof _e.a){var ot=new Pe.a({width:Re,height:Ne,type:ze===ge.a.FLOAT?ge.a.HALF_FLOAT:ze});ne.a.panoramaToCubeMap(ie,ue,ot,{encodeRGBM:ve.decodeRGBM}),ue=ot}qe=new ye.a({scene:$e,material:nt}),qe.material.set("environmentMap",ue);var at=new ce.a({texture:Ge});ve.encodeRGBM&&(ze=Ge.type=ge.a.UNSIGNED_BYTE);for(var lt=new _e.a({width:Re,height:Ne,type:ze}),rt=new Ae.a({depthBuffer:!1}),ut=te.a[ze===ge.a.UNSIGNED_BYTE?"Uint8Array":"Float32Array"],yt=0;yt>>16)>>>0;Ge=((Ge&1431655765)<<1|(Ge&2863311530)>>>1)>>>0,Ge=((Ge&858993459)<<2|(Ge&3435973836)>>>2)>>>0,Ge=((Ge&252645135)<<4|(Ge&4042322160)>>>4)>>>0,Ge=(((Ge&16711935)<<8|(Ge&4278255360)>>>8)>>>0)/4294967296;for(var Xe=0;Xe 0.0) { float G = G_Smith(roughness, NoV, NoL); float G_Vis = G * VoH / (NoH * NoV); float Fc = pow(1.0 - VoH, 5.0); A += (1.0 - Fc) * G_Vis; B += Fc * G_Vis; } } gl_FragColor = vec4(vec2(A, B) / fSampleNumber, 0.0, 1.0); } `},function(He,Fe,Ce){"use strict";Fe.a=`#define SAMPLE_NUMBER 1024 #define PI 3.14159265358979 uniform mat4 viewInverse : VIEWINVERSE; uniform samplerCube environmentMap; uniform sampler2D normalDistribution; uniform float roughness : 0.5; varying vec2 v_Texcoord; varying vec3 v_WorldPosition; const float fSampleNumber = float(SAMPLE_NUMBER); @import clay.util.rgbm vec3 importanceSampleNormal(float i, float roughness, vec3 N) { vec3 H = texture2D(normalDistribution, vec2(roughness, i)).rgb; vec3 upVector = abs(N.z) < 0.999 ? vec3(0.0, 0.0, 1.0) : vec3(1.0, 0.0, 0.0); vec3 tangentX = normalize(cross(upVector, N)); vec3 tangentY = cross(N, tangentX); return tangentX * H.x + tangentY * H.y + N * H.z; } void main() { vec3 eyePos = viewInverse[3].xyz; vec3 V = normalize(v_WorldPosition - eyePos); vec3 N = V; vec3 R = V; vec3 prefilteredColor = vec3(0.0); float totalWeight = 0.0; for (int i = 0; i < SAMPLE_NUMBER; i++) { vec3 H = importanceSampleNormal(float(i) / fSampleNumber, roughness, N); vec3 L = reflect(-V, H); float NoL = clamp(dot(N, L), 0.0, 1.0); if (NoL > 0.0) { prefilteredColor += decodeHDR(textureCube(environmentMap, L)).rgb * NoL; totalWeight += NoL; } } gl_FragColor = encodeHDR(vec4(prefilteredColor / totalWeight, 1.0)); } `},function(He,Fe,Ce){"use strict";var _e=Ce(19),Pe=Ce(18),ge=_e.a.extend({castShadow:!1,coefficients:[]},function(){this._coefficientsTmpArr=new Pe.a.Float32Array(9*3)},{type:"AMBIENT_SH_LIGHT",uniformTemplates:{ambientSHLightColor:{type:"3f",value:function(Ae){var be=Ae.color,we=Ae.intensity;return[be[0]*we,be[1]*we,be[2]*we]}},ambientSHLightCoefficients:{type:"3f",value:function(Ae){for(var be=Ae._coefficientsTmpArr,we=0;we=0&&ne.splice(de,1)}),ne.push(le),this.__zr&&this.__zr.animation.addAnimator(le),le},stopAnimation:function(Ae){this._animators=this._animators||[];for(var be=this._animators,we=be.length,pe=0;pe.5?Re:De}function ce(De,Re,Ne,ze,Ge){var Xe=De.length;if(Ge==1)for(var Qe=0;QeGe;if(Xe)De.length=Ge;else for(var Qe=ze;Qe=0&&!(ft[Ft]<=Qt);Ft--);Ft=Math.min(Ft,qe-2)}else{for(Ft=rn;FtQt);Ft++);Ft=Math.min(Ft-1,qe-2)}rn=Ft,an=Qt;var wt=ft[Ft+1]-ft[Ft];if(wt!==0)if(Rn=(Qt-ft[Ft])/wt,$e)if(tn=dt[Ft],sn=dt[Ft===0?Ft:Ft-1],Gt=dt[Ft>qe-2?qe-1:Ft+1],It=dt[Ft>qe-3?qe-1:Ft+2],at)le(sn,tn,Gt,It,Rn,Rn*Rn,Rn*Rn*Rn,Qe(At,Ge),ut);else{var ln;if(lt)ln=le(sn,tn,Gt,It,Rn,Rn*Rn,Rn*Rn*Rn,Et,1),ln=he(Et);else{if(rt)return xe(tn,Gt,Rn);ln=oe(sn,tn,Gt,It,Rn,Rn*Rn,Rn*Rn*Rn)}nt(At,Ge,ln)}else if(at)ce(dt[Ft],dt[Ft+1],Rn,Qe(At,Ge),ut);else{var ln;if(lt)ce(dt[Ft],dt[Ft+1],Rn,Et,1),ln=he(Et);else{if(rt)return xe(dt[Ft],dt[Ft+1],Rn);ln=ye(dt[Ft],dt[Ft+1],Rn)}nt(At,Ge,ln)}},vt=new _e({target:De._target,life:yt,loop:De._loop,delay:De._delay,onframe:Zt,ondestroy:Ne});return Re&&Re!=="spline"&&(vt.easing=Re),vt}}}var ve=function(De,Re,Ne,ze){this._tracks={},this._target=De,this._loop=Re||!1,this._getter=Ne||we,this._setter=ze||pe,this._clipCount=0,this._delay=0,this._doneList=[],this._onframeList=[],this._clipList=[]};ve.prototype={when:function(De,Re){var Ne=this._tracks;for(var ze in Re)if(Re.hasOwnProperty(ze)){if(!Ne[ze]){Ne[ze]=[];var Ge=this._getter(this._target,ze);if(Ge==null)continue;De!==0&&Ne[ze].push({time:0,value:de(Ge)})}Ne[ze].push({time:De,value:Re[ze]})}return this},during:function(De){return this._onframeList.push(De),this},pause:function(){for(var De=0;De255?255:Qe}function Ae(Qe){return Qe=Math.round(Qe),Qe<0?0:Qe>360?360:Qe}function be(Qe){return Qe<0?0:Qe>1?1:Qe}function we(Qe){return Qe.length&&Qe.charAt(Qe.length-1)==="%"?ge(parseFloat(Qe)/100*255):ge(parseInt(Qe,10))}function pe(Qe){return Qe.length&&Qe.charAt(Qe.length-1)==="%"?be(parseFloat(Qe)/100):be(parseFloat(Qe))}function ye(Qe,nt,$e){return $e<0?$e+=1:$e>1&&($e-=1),$e*6<1?Qe+(nt-Qe)*$e*6:$e*2<1?nt:$e*3<2?Qe+(nt-Qe)*(2/3-$e)*6:Qe}function xe(Qe,nt,$e){return Qe+(nt-Qe)*$e}function ce(Qe,nt,$e,qe,ot){return Qe[0]=nt,Qe[1]=$e,Qe[2]=qe,Qe[3]=ot,Qe}function te(Qe,nt){return Qe[0]=nt[0],Qe[1]=nt[1],Qe[2]=nt[2],Qe[3]=nt[3],Qe}var ne=new _e(20),le=null;function oe(Qe,nt){le&&te(le,nt),le=ne.put(Qe,le||nt.slice())}function de(Qe,nt){if(Qe){nt=nt||[];var $e=ne.get(Qe);if($e)return te(nt,$e);Qe=Qe+"";var qe=Qe.replace(/ /g,"").toLowerCase();if(qe in Pe)return te(nt,Pe[qe]),oe(Qe,nt),nt;if(qe.charAt(0)==="#"){if(qe.length===4){var ot=parseInt(qe.substr(1),16);if(!(ot>=0&&ot<=4095)){ce(nt,0,0,0,1);return}return ce(nt,(ot&3840)>>4|(ot&3840)>>8,ot&240|(ot&240)>>4,ot&15|(ot&15)<<4,1),oe(Qe,nt),nt}else if(qe.length===7){var ot=parseInt(qe.substr(1),16);if(!(ot>=0&&ot<=16777215)){ce(nt,0,0,0,1);return}return ce(nt,(ot&16711680)>>16,(ot&65280)>>8,ot&255,1),oe(Qe,nt),nt}return}var at=qe.indexOf("("),lt=qe.indexOf(")");if(at!==-1&<+1===qe.length){var rt=qe.substr(0,at),ut=qe.substr(at+1,lt-(at+1)).split(","),yt=1;switch(rt){case"rgba":if(ut.length!==4){ce(nt,0,0,0,1);return}yt=pe(ut.pop());case"rgb":if(ut.length!==3){ce(nt,0,0,0,1);return}return ce(nt,we(ut[0]),we(ut[1]),we(ut[2]),yt),oe(Qe,nt),nt;case"hsla":if(ut.length!==4){ce(nt,0,0,0,1);return}return ut[3]=pe(ut[3]),he(ut,nt),oe(Qe,nt),nt;case"hsl":if(ut.length!==3){ce(nt,0,0,0,1);return}return he(ut,nt),oe(Qe,nt),nt;default:return}}ce(nt,0,0,0,1)}}function he(Qe,nt){var $e=(parseFloat(Qe[0])%360+360)%360/360,qe=pe(Qe[1]),ot=pe(Qe[2]),at=ot<=.5?ot*(qe+1):ot+qe-ot*qe,lt=ot*2-at;return nt=nt||[],ce(nt,ge(ye(lt,at,$e+1/3)*255),ge(ye(lt,at,$e)*255),ge(ye(lt,at,$e-1/3)*255),1),Qe.length===4&&(nt[3]=Qe[3]),nt}function ie(Qe){if(Qe){var nt=Qe[0]/255,$e=Qe[1]/255,qe=Qe[2]/255,ot=Math.min(nt,$e,qe),at=Math.max(nt,$e,qe),lt=at-ot,rt=(at+ot)/2,ut,yt;if(lt===0)ut=0,yt=0;else{rt<.5?yt=lt/(at+ot):yt=lt/(2-at-ot);var ft=((at-nt)/6+lt/2)/lt,dt=((at-$e)/6+lt/2)/lt,ht=((at-qe)/6+lt/2)/lt;nt===at?ut=ht-dt:$e===at?ut=1/3+ft-ht:qe===at&&(ut=2/3+dt-ft),ut<0&&(ut+=1),ut>1&&(ut-=1)}var Ut=[ut*360,yt,rt];return Qe[3]!=null&&Ut.push(Qe[3]),Ut}}function ue(Qe,nt){var $e=de(Qe);if($e){for(var qe=0;qe<3;qe++)nt<0?$e[qe]=$e[qe]*(1-nt)|0:$e[qe]=(255-$e[qe])*nt+$e[qe]|0;return Xe($e,$e.length===4?"rgba":"rgb")}}function ve(Qe){var nt=de(Qe);if(nt)return((1<<24)+(nt[0]<<16)+(nt[1]<<8)+ +nt[2]).toString(16).slice(1)}function Se(Qe,nt,$e){if(!(!(nt&&nt.length)||!(Qe>=0&&Qe<=1))){$e=$e||[];var qe=Qe*(nt.length-1),ot=Math.floor(qe),at=Math.ceil(qe),lt=nt[ot],rt=nt[at],ut=qe-ot;return $e[0]=ge(xe(lt[0],rt[0],ut)),$e[1]=ge(xe(lt[1],rt[1],ut)),$e[2]=ge(xe(lt[2],rt[2],ut)),$e[3]=be(xe(lt[3],rt[3],ut)),$e}}var De=Se;function Re(Qe,nt,$e){if(!(!(nt&&nt.length)||!(Qe>=0&&Qe<=1))){var qe=Qe*(nt.length-1),ot=Math.floor(qe),at=Math.ceil(qe),lt=de(nt[ot]),rt=de(nt[at]),ut=qe-ot,yt=Xe([ge(xe(lt[0],rt[0],ut)),ge(xe(lt[1],rt[1],ut)),ge(xe(lt[2],rt[2],ut)),be(xe(lt[3],rt[3],ut))],"rgba");return $e?{color:yt,leftIndex:ot,rightIndex:at,value:qe}:yt}}var Ne=Re;function ze(Qe,nt,$e,qe){if(Qe=de(Qe),Qe)return Qe=ie(Qe),nt!=null&&(Qe[0]=Ae(nt)),$e!=null&&(Qe[1]=pe($e)),qe!=null&&(Qe[2]=pe(qe)),Xe(he(Qe),"rgba")}function Ge(Qe,nt){if(Qe=de(Qe),Qe&&nt!=null)return Qe[3]=be(nt),Xe(Qe,"rgba")}function Xe(Qe,nt){if(!(!Qe||!Qe.length)){var $e=Qe[0]+","+Qe[1]+","+Qe[2];return(nt==="rgba"||nt==="hsva"||nt==="hsla")&&($e+=","+Qe[3]),nt+"("+$e+")"}}Fe.parse=de,Fe.lift=ue,Fe.toHex=ve,Fe.fastLerp=Se,Fe.fastMapToColor=De,Fe.lerp=Re,Fe.mapToColor=Ne,Fe.modifyHSL=ze,Fe.modifyAlpha=Ge,Fe.stringify=Xe},function(He,Fe,Ce){"use strict";Fe.a=` @export clay.util.rand highp float rand(vec2 uv) { const highp float a = 12.9898, b = 78.233, c = 43758.5453; highp float dt = dot(uv.xy, vec2(a,b)), sn = mod(dt, 3.141592653589793); return fract(sin(sn) * c); } @end @export clay.util.calculate_attenuation uniform float attenuationFactor : 5.0; float lightAttenuation(float dist, float range) { float attenuation = 1.0; attenuation = dist*dist/(range*range+1.0); float att_s = attenuationFactor; attenuation = 1.0/(attenuation*att_s+1.0); att_s = 1.0/(att_s+1.0); attenuation = attenuation - att_s; attenuation /= 1.0 - att_s; return clamp(attenuation, 0.0, 1.0); } @end @export clay.util.edge_factor float edgeFactor(float width) { vec3 d = fwidth(v_Barycentric); vec3 a3 = smoothstep(vec3(0.0), d * width, v_Barycentric); return min(min(a3.x, a3.y), a3.z); } @end @export clay.util.encode_float vec4 encodeFloat(const in float depth) { const vec4 bitShifts = vec4(256.0*256.0*256.0, 256.0*256.0, 256.0, 1.0); const vec4 bit_mask = vec4(0.0, 1.0/256.0, 1.0/256.0, 1.0/256.0); vec4 res = fract(depth * bitShifts); res -= res.xxyz * bit_mask; return res; } @end @export clay.util.decode_float float decodeFloat(const in vec4 color) { const vec4 bitShifts = vec4(1.0/(256.0*256.0*256.0), 1.0/(256.0*256.0), 1.0/256.0, 1.0); return dot(color, bitShifts); } @end @export clay.util.float @import clay.util.encode_float @import clay.util.decode_float @end @export clay.util.rgbm_decode vec3 RGBMDecode(vec4 rgbm, float range) { return range * rgbm.rgb * rgbm.a; } @end @export clay.util.rgbm_encode vec4 RGBMEncode(vec3 color, float range) { if (dot(color, color) == 0.0) { return vec4(0.0); } vec4 rgbm; color /= range; rgbm.a = clamp(max(max(color.r, color.g), max(color.b, 1e-6)), 0.0, 1.0); rgbm.a = ceil(rgbm.a * 255.0) / 255.0; rgbm.rgb = color / rgbm.a; return rgbm; } @end @export clay.util.rgbm @import clay.util.rgbm_decode @import clay.util.rgbm_encode vec4 decodeHDR(vec4 color) { #if defined(RGBM_DECODE) || defined(RGBM) return vec4(RGBMDecode(color, 51.5), 1.0); #else return color; #endif } vec4 encodeHDR(vec4 color) { #if defined(RGBM_ENCODE) || defined(RGBM) return RGBMEncode(color.xyz, 51.5); #else return color; #endif } @end @export clay.util.srgb vec4 sRGBToLinear(in vec4 value) { return vec4(mix(pow(value.rgb * 0.9478672986 + vec3(0.0521327014), vec3(2.4)), value.rgb * 0.0773993808, vec3(lessThanEqual(value.rgb, vec3(0.04045)))), value.w); } vec4 linearTosRGB(in vec4 value) { return vec4(mix(pow(value.rgb, vec3(0.41666)) * 1.055 - vec3(0.055), value.rgb * 12.92, vec3(lessThanEqual(value.rgb, vec3(0.0031308)))), value.w); } @end @export clay.chunk.skinning_header #ifdef SKINNING attribute vec3 weight : WEIGHT; attribute vec4 joint : JOINT; uniform mat4 skinMatrix[JOINT_COUNT] : SKIN_MATRIX; mat4 getSkinMatrix(float idx) { return skinMatrix[int(idx)]; } #endif @end @export clay.chunk.skin_matrix mat4 skinMatrixWS = getSkinMatrix(joint.x) * weight.x; if (weight.y > 1e-4) { skinMatrixWS += getSkinMatrix(joint.y) * weight.y; } if (weight.z > 1e-4) { skinMatrixWS += getSkinMatrix(joint.z) * weight.z; } float weightW = 1.0-weight.x-weight.y-weight.z; if (weightW > 1e-4) { skinMatrixWS += getSkinMatrix(joint.w) * weightW; } @end @export clay.util.parallax_correct vec3 parallaxCorrect(in vec3 dir, in vec3 pos, in vec3 boxMin, in vec3 boxMax) { vec3 first = (boxMax - pos) / dir; vec3 second = (boxMin - pos) / dir; vec3 further = max(first, second); float dist = min(further.x, min(further.y, further.z)); vec3 fixedPos = pos + dir * dist; vec3 boxCenter = (boxMax + boxMin) * 0.5; return normalize(fixedPos - boxCenter); } @end @export clay.util.clamp_sample vec4 clampSample(const in sampler2D texture, const in vec2 coord) { #ifdef STEREO float eye = step(0.5, coord.x) * 0.5; vec2 coordClamped = clamp(coord, vec2(eye, 0.0), vec2(0.5 + eye, 1.0)); #else vec2 coordClamped = clamp(coord, vec2(0.0), vec2(1.0)); #endif return texture2D(texture, coordClamped); } @end @export clay.util.ACES vec3 ACESToneMapping(vec3 color) { const float A = 2.51; const float B = 0.03; const float C = 2.43; const float D = 0.59; const float E = 0.14; return (color * (A * color + B)) / (color * (C * color + D) + E); } @end`},function(He,Fe,Ce){"use strict";Fe.a=` @export ecgl.common.transformUniforms uniform mat4 worldViewProjection : WORLDVIEWPROJECTION; uniform mat4 worldInverseTranspose : WORLDINVERSETRANSPOSE; uniform mat4 world : WORLD; @end @export ecgl.common.attributes attribute vec3 position : POSITION; attribute vec2 texcoord : TEXCOORD_0; attribute vec3 normal : NORMAL; @end @export ecgl.common.uv.header uniform vec2 uvRepeat : [1.0, 1.0]; uniform vec2 uvOffset : [0.0, 0.0]; uniform vec2 detailUvRepeat : [1.0, 1.0]; uniform vec2 detailUvOffset : [0.0, 0.0]; varying vec2 v_Texcoord; varying vec2 v_DetailTexcoord; @end @export ecgl.common.uv.main v_Texcoord = texcoord * uvRepeat + uvOffset; v_DetailTexcoord = texcoord * detailUvRepeat + detailUvOffset; @end @export ecgl.common.uv.fragmentHeader varying vec2 v_Texcoord; varying vec2 v_DetailTexcoord; @end @export ecgl.common.albedo.main vec4 albedoTexel = vec4(1.0); #ifdef DIFFUSEMAP_ENABLED albedoTexel = texture2D(diffuseMap, v_Texcoord); #ifdef SRGB_DECODE albedoTexel = sRGBToLinear(albedoTexel); #endif #endif #ifdef DETAILMAP_ENABLED vec4 detailTexel = texture2D(detailMap, v_DetailTexcoord); #ifdef SRGB_DECODE detailTexel = sRGBToLinear(detailTexel); #endif albedoTexel.rgb = mix(albedoTexel.rgb, detailTexel.rgb, detailTexel.a); albedoTexel.a = detailTexel.a + (1.0 - detailTexel.a) * albedoTexel.a; #endif @end @export ecgl.common.wireframe.vertexHeader #ifdef WIREFRAME_QUAD attribute vec4 barycentric; varying vec4 v_Barycentric; #elif defined(WIREFRAME_TRIANGLE) attribute vec3 barycentric; varying vec3 v_Barycentric; #endif @end @export ecgl.common.wireframe.vertexMain #if defined(WIREFRAME_QUAD) || defined(WIREFRAME_TRIANGLE) v_Barycentric = barycentric; #endif @end @export ecgl.common.wireframe.fragmentHeader uniform float wireframeLineWidth : 1; uniform vec4 wireframeLineColor: [0, 0, 0, 0.5]; #ifdef WIREFRAME_QUAD varying vec4 v_Barycentric; float edgeFactor () { vec4 d = fwidth(v_Barycentric); vec4 a4 = smoothstep(vec4(0.0), d * wireframeLineWidth, v_Barycentric); return min(min(min(a4.x, a4.y), a4.z), a4.w); } #elif defined(WIREFRAME_TRIANGLE) varying vec3 v_Barycentric; float edgeFactor () { vec3 d = fwidth(v_Barycentric); vec3 a3 = smoothstep(vec3(0.0), d * wireframeLineWidth, v_Barycentric); return min(min(a3.x, a3.y), a3.z); } #endif @end @export ecgl.common.wireframe.fragmentMain #if defined(WIREFRAME_QUAD) || defined(WIREFRAME_TRIANGLE) if (wireframeLineWidth > 0.) { vec4 lineColor = wireframeLineColor; #ifdef SRGB_DECODE lineColor = sRGBToLinear(lineColor); #endif gl_FragColor.rgb = mix(gl_FragColor.rgb, lineColor.rgb, (1.0 - edgeFactor()) * lineColor.a); } #endif @end @export ecgl.common.bumpMap.header #ifdef BUMPMAP_ENABLED uniform sampler2D bumpMap; uniform float bumpScale : 1.0; vec3 bumpNormal(vec3 surfPos, vec3 surfNormal, vec3 baseNormal) { vec2 dSTdx = dFdx(v_Texcoord); vec2 dSTdy = dFdy(v_Texcoord); float Hll = bumpScale * texture2D(bumpMap, v_Texcoord).x; float dHx = bumpScale * texture2D(bumpMap, v_Texcoord + dSTdx).x - Hll; float dHy = bumpScale * texture2D(bumpMap, v_Texcoord + dSTdy).x - Hll; vec3 vSigmaX = dFdx(surfPos); vec3 vSigmaY = dFdy(surfPos); vec3 vN = surfNormal; vec3 R1 = cross(vSigmaY, vN); vec3 R2 = cross(vN, vSigmaX); float fDet = dot(vSigmaX, R1); vec3 vGrad = sign(fDet) * (dHx * R1 + dHy * R2); return normalize(abs(fDet) * baseNormal - vGrad); } #endif @end @export ecgl.common.normalMap.vertexHeader #ifdef NORMALMAP_ENABLED attribute vec4 tangent : TANGENT; varying vec3 v_Tangent; varying vec3 v_Bitangent; #endif @end @export ecgl.common.normalMap.vertexMain #ifdef NORMALMAP_ENABLED if (dot(tangent, tangent) > 0.0) { v_Tangent = normalize((worldInverseTranspose * vec4(tangent.xyz, 0.0)).xyz); v_Bitangent = normalize(cross(v_Normal, v_Tangent) * tangent.w); } #endif @end @export ecgl.common.normalMap.fragmentHeader #ifdef NORMALMAP_ENABLED uniform sampler2D normalMap; varying vec3 v_Tangent; varying vec3 v_Bitangent; #endif @end @export ecgl.common.normalMap.fragmentMain #ifdef NORMALMAP_ENABLED if (dot(v_Tangent, v_Tangent) > 0.0) { vec3 normalTexel = texture2D(normalMap, v_DetailTexcoord).xyz; if (dot(normalTexel, normalTexel) > 0.0) { N = normalTexel * 2.0 - 1.0; mat3 tbn = mat3(v_Tangent, v_Bitangent, v_Normal); N = normalize(tbn * N); } } #endif @end @export ecgl.common.vertexAnimation.header #ifdef VERTEX_ANIMATION attribute vec3 prevPosition; attribute vec3 prevNormal; uniform float percent; #endif @end @export ecgl.common.vertexAnimation.main #ifdef VERTEX_ANIMATION vec3 pos = mix(prevPosition, position, percent); vec3 norm = mix(prevNormal, normal, percent); #else vec3 pos = position; vec3 norm = normal; #endif @end @export ecgl.common.ssaoMap.header #ifdef SSAOMAP_ENABLED uniform sampler2D ssaoMap; uniform vec4 viewport : VIEWPORT; #endif @end @export ecgl.common.ssaoMap.main float ao = 1.0; #ifdef SSAOMAP_ENABLED ao = texture2D(ssaoMap, (gl_FragCoord.xy - viewport.xy) / viewport.zw).r; #endif @end @export ecgl.common.diffuseLayer.header #if (LAYER_DIFFUSEMAP_COUNT > 0) uniform float layerDiffuseIntensity[LAYER_DIFFUSEMAP_COUNT]; uniform sampler2D layerDiffuseMap[LAYER_DIFFUSEMAP_COUNT]; #endif @end @export ecgl.common.emissiveLayer.header #if (LAYER_EMISSIVEMAP_COUNT > 0) uniform float layerEmissionIntensity[LAYER_EMISSIVEMAP_COUNT]; uniform sampler2D layerEmissiveMap[LAYER_EMISSIVEMAP_COUNT]; #endif @end @export ecgl.common.layers.header @import ecgl.common.diffuseLayer.header @import ecgl.common.emissiveLayer.header @end @export ecgl.common.diffuseLayer.main #if (LAYER_DIFFUSEMAP_COUNT > 0) for (int _idx_ = 0; _idx_ < LAYER_DIFFUSEMAP_COUNT; _idx_++) {{ float intensity = layerDiffuseIntensity[_idx_]; vec4 texel2 = texture2D(layerDiffuseMap[_idx_], v_Texcoord); #ifdef SRGB_DECODE texel2 = sRGBToLinear(texel2); #endif albedoTexel.rgb = mix(albedoTexel.rgb, texel2.rgb * intensity, texel2.a); albedoTexel.a = texel2.a + (1.0 - texel2.a) * albedoTexel.a; }} #endif @end @export ecgl.common.emissiveLayer.main #if (LAYER_EMISSIVEMAP_COUNT > 0) for (int _idx_ = 0; _idx_ < LAYER_EMISSIVEMAP_COUNT; _idx_++) {{ vec4 texel2 = texture2D(layerEmissiveMap[_idx_], v_Texcoord) * layerEmissionIntensity[_idx_]; #ifdef SRGB_DECODE texel2 = sRGBToLinear(texel2); #endif float intensity = layerEmissionIntensity[_idx_]; gl_FragColor.rgb += texel2.rgb * texel2.a * intensity; }} #endif @end `},function(He,Fe,Ce){"use strict";Fe.a=`@export ecgl.color.vertex uniform mat4 worldViewProjection : WORLDVIEWPROJECTION; @import ecgl.common.uv.header attribute vec2 texcoord : TEXCOORD_0; attribute vec3 position: POSITION; @import ecgl.common.wireframe.vertexHeader #ifdef VERTEX_COLOR attribute vec4 a_Color : COLOR; varying vec4 v_Color; #endif #ifdef VERTEX_ANIMATION attribute vec3 prevPosition; uniform float percent : 1.0; #endif void main() { #ifdef VERTEX_ANIMATION vec3 pos = mix(prevPosition, position, percent); #else vec3 pos = position; #endif gl_Position = worldViewProjection * vec4(pos, 1.0); @import ecgl.common.uv.main #ifdef VERTEX_COLOR v_Color = a_Color; #endif @import ecgl.common.wireframe.vertexMain } @end @export ecgl.color.fragment #define LAYER_DIFFUSEMAP_COUNT 0 #define LAYER_EMISSIVEMAP_COUNT 0 uniform sampler2D diffuseMap; uniform sampler2D detailMap; uniform vec4 color : [1.0, 1.0, 1.0, 1.0]; #ifdef VERTEX_COLOR varying vec4 v_Color; #endif @import ecgl.common.layers.header @import ecgl.common.uv.fragmentHeader @import ecgl.common.wireframe.fragmentHeader @import clay.util.srgb void main() { #ifdef SRGB_DECODE gl_FragColor = sRGBToLinear(color); #else gl_FragColor = color; #endif #ifdef VERTEX_COLOR gl_FragColor *= v_Color; #endif @import ecgl.common.albedo.main @import ecgl.common.diffuseLayer.main gl_FragColor *= albedoTexel; @import ecgl.common.emissiveLayer.main @import ecgl.common.wireframe.fragmentMain } @end`},function(He,Fe,Ce){"use strict";Fe.a=`/** * http: */ @export ecgl.lambert.vertex @import ecgl.common.transformUniforms @import ecgl.common.uv.header @import ecgl.common.attributes @import ecgl.common.wireframe.vertexHeader #ifdef VERTEX_COLOR attribute vec4 a_Color : COLOR; varying vec4 v_Color; #endif @import ecgl.common.vertexAnimation.header varying vec3 v_Normal; varying vec3 v_WorldPosition; void main() { @import ecgl.common.uv.main @import ecgl.common.vertexAnimation.main gl_Position = worldViewProjection * vec4(pos, 1.0); v_Normal = normalize((worldInverseTranspose * vec4(norm, 0.0)).xyz); v_WorldPosition = (world * vec4(pos, 1.0)).xyz; #ifdef VERTEX_COLOR v_Color = a_Color; #endif @import ecgl.common.wireframe.vertexMain } @end @export ecgl.lambert.fragment #define LAYER_DIFFUSEMAP_COUNT 0 #define LAYER_EMISSIVEMAP_COUNT 0 #define NORMAL_UP_AXIS 1 #define NORMAL_FRONT_AXIS 2 @import ecgl.common.uv.fragmentHeader varying vec3 v_Normal; varying vec3 v_WorldPosition; uniform sampler2D diffuseMap; uniform sampler2D detailMap; @import ecgl.common.layers.header uniform float emissionIntensity: 1.0; uniform vec4 color : [1.0, 1.0, 1.0, 1.0]; uniform mat4 viewInverse : VIEWINVERSE; #ifdef AMBIENT_LIGHT_COUNT @import clay.header.ambient_light #endif #ifdef AMBIENT_SH_LIGHT_COUNT @import clay.header.ambient_sh_light #endif #ifdef DIRECTIONAL_LIGHT_COUNT @import clay.header.directional_light #endif #ifdef VERTEX_COLOR varying vec4 v_Color; #endif @import ecgl.common.ssaoMap.header @import ecgl.common.bumpMap.header @import clay.util.srgb @import ecgl.common.wireframe.fragmentHeader @import clay.plugin.compute_shadow_map void main() { #ifdef SRGB_DECODE gl_FragColor = sRGBToLinear(color); #else gl_FragColor = color; #endif #ifdef VERTEX_COLOR #ifdef SRGB_DECODE gl_FragColor *= sRGBToLinear(v_Color); #else gl_FragColor *= v_Color; #endif #endif @import ecgl.common.albedo.main @import ecgl.common.diffuseLayer.main gl_FragColor *= albedoTexel; vec3 N = v_Normal; #ifdef DOUBLE_SIDED vec3 eyePos = viewInverse[3].xyz; vec3 V = normalize(eyePos - v_WorldPosition); if (dot(N, V) < 0.0) { N = -N; } #endif float ambientFactor = 1.0; #ifdef BUMPMAP_ENABLED N = bumpNormal(v_WorldPosition, v_Normal, N); ambientFactor = dot(v_Normal, N); #endif vec3 N2 = vec3(N.x, N[NORMAL_UP_AXIS], N[NORMAL_FRONT_AXIS]); vec3 diffuseColor = vec3(0.0, 0.0, 0.0); @import ecgl.common.ssaoMap.main #ifdef AMBIENT_LIGHT_COUNT for(int i = 0; i < AMBIENT_LIGHT_COUNT; i++) { diffuseColor += ambientLightColor[i] * ambientFactor * ao; } #endif #ifdef AMBIENT_SH_LIGHT_COUNT for(int _idx_ = 0; _idx_ < AMBIENT_SH_LIGHT_COUNT; _idx_++) {{ diffuseColor += calcAmbientSHLight(_idx_, N2) * ambientSHLightColor[_idx_] * ao; }} #endif #ifdef DIRECTIONAL_LIGHT_COUNT #if defined(DIRECTIONAL_LIGHT_SHADOWMAP_COUNT) float shadowContribsDir[DIRECTIONAL_LIGHT_COUNT]; if(shadowEnabled) { computeShadowOfDirectionalLights(v_WorldPosition, shadowContribsDir); } #endif for(int i = 0; i < DIRECTIONAL_LIGHT_COUNT; i++) { vec3 lightDirection = -directionalLightDirection[i]; vec3 lightColor = directionalLightColor[i]; float shadowContrib = 1.0; #if defined(DIRECTIONAL_LIGHT_SHADOWMAP_COUNT) if (shadowEnabled) { shadowContrib = shadowContribsDir[i]; } #endif float ndl = dot(N, normalize(lightDirection)) * shadowContrib; diffuseColor += lightColor * clamp(ndl, 0.0, 1.0); } #endif gl_FragColor.rgb *= diffuseColor; @import ecgl.common.emissiveLayer.main @import ecgl.common.wireframe.fragmentMain } @end`},function(He,Fe,Ce){"use strict";Fe.a=`@export ecgl.realistic.vertex @import ecgl.common.transformUniforms @import ecgl.common.uv.header @import ecgl.common.attributes @import ecgl.common.wireframe.vertexHeader #ifdef VERTEX_COLOR attribute vec4 a_Color : COLOR; varying vec4 v_Color; #endif #ifdef NORMALMAP_ENABLED attribute vec4 tangent : TANGENT; varying vec3 v_Tangent; varying vec3 v_Bitangent; #endif @import ecgl.common.vertexAnimation.header varying vec3 v_Normal; varying vec3 v_WorldPosition; void main() { @import ecgl.common.uv.main @import ecgl.common.vertexAnimation.main gl_Position = worldViewProjection * vec4(pos, 1.0); v_Normal = normalize((worldInverseTranspose * vec4(norm, 0.0)).xyz); v_WorldPosition = (world * vec4(pos, 1.0)).xyz; #ifdef VERTEX_COLOR v_Color = a_Color; #endif #ifdef NORMALMAP_ENABLED v_Tangent = normalize((worldInverseTranspose * vec4(tangent.xyz, 0.0)).xyz); v_Bitangent = normalize(cross(v_Normal, v_Tangent) * tangent.w); #endif @import ecgl.common.wireframe.vertexMain } @end @export ecgl.realistic.fragment #define LAYER_DIFFUSEMAP_COUNT 0 #define LAYER_EMISSIVEMAP_COUNT 0 #define PI 3.14159265358979 #define ROUGHNESS_CHANEL 0 #define METALNESS_CHANEL 1 #define NORMAL_UP_AXIS 1 #define NORMAL_FRONT_AXIS 2 #ifdef VERTEX_COLOR varying vec4 v_Color; #endif @import ecgl.common.uv.fragmentHeader varying vec3 v_Normal; varying vec3 v_WorldPosition; uniform sampler2D diffuseMap; uniform sampler2D detailMap; uniform sampler2D metalnessMap; uniform sampler2D roughnessMap; @import ecgl.common.layers.header uniform float emissionIntensity: 1.0; uniform vec4 color : [1.0, 1.0, 1.0, 1.0]; uniform float metalness : 0.0; uniform float roughness : 0.5; uniform mat4 viewInverse : VIEWINVERSE; #ifdef AMBIENT_LIGHT_COUNT @import clay.header.ambient_light #endif #ifdef AMBIENT_SH_LIGHT_COUNT @import clay.header.ambient_sh_light #endif #ifdef AMBIENT_CUBEMAP_LIGHT_COUNT @import clay.header.ambient_cubemap_light #endif #ifdef DIRECTIONAL_LIGHT_COUNT @import clay.header.directional_light #endif @import ecgl.common.normalMap.fragmentHeader @import ecgl.common.ssaoMap.header @import ecgl.common.bumpMap.header @import clay.util.srgb @import clay.util.rgbm @import ecgl.common.wireframe.fragmentHeader @import clay.plugin.compute_shadow_map vec3 F_Schlick(float ndv, vec3 spec) { return spec + (1.0 - spec) * pow(1.0 - ndv, 5.0); } float D_Phong(float g, float ndh) { float a = pow(8192.0, g); return (a + 2.0) / 8.0 * pow(ndh, a); } void main() { vec4 albedoColor = color; vec3 eyePos = viewInverse[3].xyz; vec3 V = normalize(eyePos - v_WorldPosition); #ifdef VERTEX_COLOR #ifdef SRGB_DECODE albedoColor *= sRGBToLinear(v_Color); #else albedoColor *= v_Color; #endif #endif @import ecgl.common.albedo.main @import ecgl.common.diffuseLayer.main albedoColor *= albedoTexel; float m = metalness; #ifdef METALNESSMAP_ENABLED float m2 = texture2D(metalnessMap, v_DetailTexcoord)[METALNESS_CHANEL]; m = clamp(m2 + (m - 0.5) * 2.0, 0.0, 1.0); #endif vec3 baseColor = albedoColor.rgb; albedoColor.rgb = baseColor * (1.0 - m); vec3 specFactor = mix(vec3(0.04), baseColor, m); float g = 1.0 - roughness; #ifdef ROUGHNESSMAP_ENABLED float g2 = 1.0 - texture2D(roughnessMap, v_DetailTexcoord)[ROUGHNESS_CHANEL]; g = clamp(g2 + (g - 0.5) * 2.0, 0.0, 1.0); #endif vec3 N = v_Normal; #ifdef DOUBLE_SIDED if (dot(N, V) < 0.0) { N = -N; } #endif float ambientFactor = 1.0; #ifdef BUMPMAP_ENABLED N = bumpNormal(v_WorldPosition, v_Normal, N); ambientFactor = dot(v_Normal, N); #endif @import ecgl.common.normalMap.fragmentMain vec3 N2 = vec3(N.x, N[NORMAL_UP_AXIS], N[NORMAL_FRONT_AXIS]); vec3 diffuseTerm = vec3(0.0); vec3 specularTerm = vec3(0.0); float ndv = clamp(dot(N, V), 0.0, 1.0); vec3 fresnelTerm = F_Schlick(ndv, specFactor); @import ecgl.common.ssaoMap.main #ifdef AMBIENT_LIGHT_COUNT for(int _idx_ = 0; _idx_ < AMBIENT_LIGHT_COUNT; _idx_++) {{ diffuseTerm += ambientLightColor[_idx_] * ambientFactor * ao; }} #endif #ifdef AMBIENT_SH_LIGHT_COUNT for(int _idx_ = 0; _idx_ < AMBIENT_SH_LIGHT_COUNT; _idx_++) {{ diffuseTerm += calcAmbientSHLight(_idx_, N2) * ambientSHLightColor[_idx_] * ao; }} #endif #ifdef DIRECTIONAL_LIGHT_COUNT #if defined(DIRECTIONAL_LIGHT_SHADOWMAP_COUNT) float shadowContribsDir[DIRECTIONAL_LIGHT_COUNT]; if(shadowEnabled) { computeShadowOfDirectionalLights(v_WorldPosition, shadowContribsDir); } #endif for(int _idx_ = 0; _idx_ < DIRECTIONAL_LIGHT_COUNT; _idx_++) {{ vec3 L = -directionalLightDirection[_idx_]; vec3 lc = directionalLightColor[_idx_]; vec3 H = normalize(L + V); float ndl = clamp(dot(N, normalize(L)), 0.0, 1.0); float ndh = clamp(dot(N, H), 0.0, 1.0); float shadowContrib = 1.0; #if defined(DIRECTIONAL_LIGHT_SHADOWMAP_COUNT) if (shadowEnabled) { shadowContrib = shadowContribsDir[_idx_]; } #endif vec3 li = lc * ndl * shadowContrib; diffuseTerm += li; specularTerm += li * fresnelTerm * D_Phong(g, ndh); }} #endif #ifdef AMBIENT_CUBEMAP_LIGHT_COUNT vec3 L = reflect(-V, N); L = vec3(L.x, L[NORMAL_UP_AXIS], L[NORMAL_FRONT_AXIS]); float rough2 = clamp(1.0 - g, 0.0, 1.0); float bias2 = rough2 * 5.0; vec2 brdfParam2 = texture2D(ambientCubemapLightBRDFLookup[0], vec2(rough2, ndv)).xy; vec3 envWeight2 = specFactor * brdfParam2.x + brdfParam2.y; vec3 envTexel2; for(int _idx_ = 0; _idx_ < AMBIENT_CUBEMAP_LIGHT_COUNT; _idx_++) {{ envTexel2 = RGBMDecode(textureCubeLodEXT(ambientCubemapLightCubemap[_idx_], L, bias2), 51.5); specularTerm += ambientCubemapLightColor[_idx_] * envTexel2 * envWeight2 * ao; }} #endif gl_FragColor.rgb = albedoColor.rgb * diffuseTerm + specularTerm; gl_FragColor.a = albedoColor.a; #ifdef SRGB_ENCODE gl_FragColor = linearTosRGB(gl_FragColor); #endif @import ecgl.common.emissiveLayer.main @import ecgl.common.wireframe.fragmentMain } @end`},function(He,Fe,Ce){"use strict";Fe.a=`@export ecgl.hatching.vertex @import ecgl.realistic.vertex @end @export ecgl.hatching.fragment #define NORMAL_UP_AXIS 1 #define NORMAL_FRONT_AXIS 2 @import ecgl.common.uv.fragmentHeader varying vec3 v_Normal; varying vec3 v_WorldPosition; uniform vec4 color : [0.0, 0.0, 0.0, 1.0]; uniform vec4 paperColor : [1.0, 1.0, 1.0, 1.0]; uniform mat4 viewInverse : VIEWINVERSE; #ifdef AMBIENT_LIGHT_COUNT @import clay.header.ambient_light #endif #ifdef AMBIENT_SH_LIGHT_COUNT @import clay.header.ambient_sh_light #endif #ifdef DIRECTIONAL_LIGHT_COUNT @import clay.header.directional_light #endif #ifdef VERTEX_COLOR varying vec4 v_Color; #endif @import ecgl.common.ssaoMap.header @import ecgl.common.bumpMap.header @import clay.util.srgb @import ecgl.common.wireframe.fragmentHeader @import clay.plugin.compute_shadow_map uniform sampler2D hatch1; uniform sampler2D hatch2; uniform sampler2D hatch3; uniform sampler2D hatch4; uniform sampler2D hatch5; uniform sampler2D hatch6; float shade(in float tone) { vec4 c = vec4(1. ,1., 1., 1.); float step = 1. / 6.; vec2 uv = v_DetailTexcoord; if (tone <= step / 2.0) { c = mix(vec4(0.), texture2D(hatch6, uv), 12. * tone); } else if (tone <= step) { c = mix(texture2D(hatch6, uv), texture2D(hatch5, uv), 6. * tone); } if(tone > step && tone <= 2. * step){ c = mix(texture2D(hatch5, uv), texture2D(hatch4, uv) , 6. * (tone - step)); } if(tone > 2. * step && tone <= 3. * step){ c = mix(texture2D(hatch4, uv), texture2D(hatch3, uv), 6. * (tone - 2. * step)); } if(tone > 3. * step && tone <= 4. * step){ c = mix(texture2D(hatch3, uv), texture2D(hatch2, uv), 6. * (tone - 3. * step)); } if(tone > 4. * step && tone <= 5. * step){ c = mix(texture2D(hatch2, uv), texture2D(hatch1, uv), 6. * (tone - 4. * step)); } if(tone > 5. * step){ c = mix(texture2D(hatch1, uv), vec4(1.), 6. * (tone - 5. * step)); } return c.r; } const vec3 w = vec3(0.2125, 0.7154, 0.0721); void main() { #ifdef SRGB_DECODE vec4 inkColor = sRGBToLinear(color); #else vec4 inkColor = color; #endif #ifdef VERTEX_COLOR #ifdef SRGB_DECODE inkColor *= sRGBToLinear(v_Color); #else inkColor *= v_Color; #endif #endif vec3 N = v_Normal; #ifdef DOUBLE_SIDED vec3 eyePos = viewInverse[3].xyz; vec3 V = normalize(eyePos - v_WorldPosition); if (dot(N, V) < 0.0) { N = -N; } #endif float tone = 0.0; float ambientFactor = 1.0; #ifdef BUMPMAP_ENABLED N = bumpNormal(v_WorldPosition, v_Normal, N); ambientFactor = dot(v_Normal, N); #endif vec3 N2 = vec3(N.x, N[NORMAL_UP_AXIS], N[NORMAL_FRONT_AXIS]); @import ecgl.common.ssaoMap.main #ifdef AMBIENT_LIGHT_COUNT for(int i = 0; i < AMBIENT_LIGHT_COUNT; i++) { tone += dot(ambientLightColor[i], w) * ambientFactor * ao; } #endif #ifdef AMBIENT_SH_LIGHT_COUNT for(int _idx_ = 0; _idx_ < AMBIENT_SH_LIGHT_COUNT; _idx_++) {{ tone += dot(calcAmbientSHLight(_idx_, N2) * ambientSHLightColor[_idx_], w) * ao; }} #endif #ifdef DIRECTIONAL_LIGHT_COUNT #if defined(DIRECTIONAL_LIGHT_SHADOWMAP_COUNT) float shadowContribsDir[DIRECTIONAL_LIGHT_COUNT]; if(shadowEnabled) { computeShadowOfDirectionalLights(v_WorldPosition, shadowContribsDir); } #endif for(int i = 0; i < DIRECTIONAL_LIGHT_COUNT; i++) { vec3 lightDirection = -directionalLightDirection[i]; float lightTone = dot(directionalLightColor[i], w); float shadowContrib = 1.0; #if defined(DIRECTIONAL_LIGHT_SHADOWMAP_COUNT) if (shadowEnabled) { shadowContrib = shadowContribsDir[i]; } #endif float ndl = dot(N, normalize(lightDirection)) * shadowContrib; tone += lightTone * clamp(ndl, 0.0, 1.0); } #endif gl_FragColor = mix(inkColor, paperColor, shade(clamp(tone, 0.0, 1.0))); } @end `},function(He,Fe,Ce){"use strict";Fe.a=`@export ecgl.sm.depth.vertex uniform mat4 worldViewProjection : WORLDVIEWPROJECTION; attribute vec3 position : POSITION; #ifdef VERTEX_ANIMATION attribute vec3 prevPosition; uniform float percent : 1.0; #endif varying vec4 v_ViewPosition; void main(){ #ifdef VERTEX_ANIMATION vec3 pos = mix(prevPosition, position, percent); #else vec3 pos = position; #endif v_ViewPosition = worldViewProjection * vec4(pos, 1.0); gl_Position = v_ViewPosition; } @end @export ecgl.sm.depth.fragment @import clay.sm.depth.fragment @end`},function(He,Fe,Ce){"use strict";var _e=Ce(134),Pe=Ce(138),ge=Ce(139),Ae=Ce(145),be=Ce(0),we=Ce.n(be);we.a.registerAction({type:"grid3DChangeCamera",event:"grid3dcamerachanged",update:"series:updateCamera"},function(pe,ye){ye.eachComponent({mainType:"grid3D",query:pe},function(xe){xe.setView(pe)})}),we.a.registerAction({type:"grid3DShowAxisPointer",event:"grid3dshowaxispointer",update:"grid3D:showAxisPointer"},function(pe,ye){}),we.a.registerAction({type:"grid3DHideAxisPointer",event:"grid3dhideaxispointer",update:"grid3D:hideAxisPointer"},function(pe,ye){})},function(He,Fe,Ce){"use strict";var _e=Ce(0),Pe=Ce.n(_e),ge=Ce(135),Ae=Pe.a.extendComponentModel({type:"cartesian3DAxis",axis:null,getCoordSysModel:function(){return this.ecModel.queryComponents({mainType:"grid3D",index:this.option.gridIndex,id:this.option.gridId})[0]}});Pe.a.helper.mixinAxisModelCommonMethods(Ae);function be(we,pe){return pe.type||(pe.data?"category":"value")}Object(ge.a)("x",Ae,be,{name:"X"}),Object(ge.a)("y",Ae,be,{name:"Y"}),Object(ge.a)("z",Ae,be,{name:"Z"})},function(He,Fe,Ce){"use strict";var _e=Ce(0),Pe=Ce.n(_e),ge=Ce(136),Ae=Ce(137),be=Ce.n(Ae),we=["value","category","time","log"];Fe.a=function(pe,ye,xe,ce){Pe.a.util.each(we,function(te){ye.extend({type:pe+"Axis3D."+te,__ordinalMeta:null,mergeDefaultAndTheme:function(ne,le){var oe=le.getTheme();Pe.a.util.merge(ne,oe.get(te+"Axis3D")),Pe.a.util.merge(ne,this.getDefaultOption()),ne.type=xe(pe,ne)},optionUpdated:function(){var ne=this.option;ne.type==="category"&&(this.__ordinalMeta=be.a.createByAxisModel(this))},getCategories:function(){if(this.option.type==="category")return this.__ordinalMeta.categories},getOrdinalMeta:function(){return this.__ordinalMeta},defaultOption:Pe.a.util.merge(Pe.a.util.clone(ge.a[te+"Axis3D"]),ce||{},!0)})}),ye.superClass.registerSubTypeDefaulter(pe+"Axis3D",Pe.a.util.curry(xe,pe))}},function(He,Fe,Ce){"use strict";var _e=Ce(0),Pe=Ce.n(_e),ge={show:!0,grid3DIndex:0,inverse:!1,name:"",nameLocation:"middle",nameTextStyle:{fontSize:16},nameGap:20,axisPointer:{},axisLine:{},axisTick:{},axisLabel:{},splitArea:{}},Ae=Pe.a.util.merge({boundaryGap:!0,axisTick:{alignWithLabel:!1,interval:"auto"},axisLabel:{interval:"auto"},axisPointer:{label:{show:!1}}},ge),be=Pe.a.util.merge({boundaryGap:[0,0],splitNumber:5,axisPointer:{label:{}}},ge),we=Pe.a.util.defaults({scale:!0,min:"dataMin",max:"dataMax"},be),pe=Pe.a.util.defaults({logBase:10},be);pe.scale=!0,Fe.a={categoryAxis3D:Ae,valueAxis3D:be,timeAxis3D:we,logAxis3D:pe}},function(He,Fe,Ce){var _e=Ce(12),Pe=_e.createHashMap,ge=_e.isObject,Ae=_e.map;function be(ce){this.categories=ce.categories||[],this._needCollect=ce.needCollect,this._deduplication=ce.deduplication,this._map}be.createByAxisModel=function(ce){var te=ce.option,ne=te.data,le=ne&&Ae(ne,ye);return new be({categories:le,needCollect:!le,deduplication:te.dedplication!==!1})};var we=be.prototype;we.getOrdinal=function(ce){return pe(this).get(ce)},we.parseAndCollect=function(ce){var te,ne=this._needCollect;if(typeof ce!="string"&&!ne)return ce;if(ne&&!this._deduplication)return te=this.categories.length,this.categories[te]=ce,te;var le=pe(this);return te=le.get(ce),te==null&&(ne?(te=this.categories.length,this.categories[te]=ce,le.set(ce,te)):te=NaN),te};function pe(ce){return ce._map||(ce._map=Pe(ce.categories))}function ye(ce){return ge(ce)&&ce.value!=null?ce.value:ce+""}var xe=be;He.exports=xe},function(He,Fe,Ce){"use strict";var _e=Ce(0),Pe=Ce.n(_e),ge=Ce(38),Ae=Ce(31),be=Ce(32),we=Pe.a.extendComponentModel({type:"grid3D",dependencies:["xAxis3D","yAxis3D","zAxis3D"],defaultOption:{show:!0,zlevel:-10,left:0,top:0,width:"100%",height:"100%",environment:"auto",boxWidth:100,boxHeight:100,boxDepth:100,axisPointer:{show:!0,lineStyle:{color:"rgba(0, 0, 0, 0.8)",width:1},label:{show:!0,formatter:null,margin:8,textStyle:{fontSize:14,color:"#fff",backgroundColor:"rgba(0,0,0,0.5)",padding:3,borderRadius:3}}},axisLine:{show:!0,lineStyle:{color:"#333",width:2,type:"solid"}},axisTick:{show:!0,inside:!1,length:3,lineStyle:{width:1}},axisLabel:{show:!0,inside:!1,rotate:0,margin:8,textStyle:{fontSize:12}},splitLine:{show:!0,lineStyle:{color:["#ccc"],width:1,type:"solid"}},splitArea:{show:!1,areaStyle:{color:["rgba(250,250,250,0.3)","rgba(200,200,200,0.3)"]}},light:{main:{alpha:30,beta:40},ambient:{intensity:.4}},viewControl:{alpha:20,beta:40,autoRotate:!1,distance:200,minDistance:40,maxDistance:400}}});Pe.a.util.merge(we.prototype,ge.a),Pe.a.util.merge(we.prototype,Ae.a),Pe.a.util.merge(we.prototype,be.a);var pe=we},function(He,Fe,Ce){"use strict";var _e=Ce(0),Pe=Ce.n(_e),ge=Ce(2),Ae=Ce(39),be=Ce(22),we=Ce(3),pe=Ce(73),ye=Ce(34),xe=Ce(140),ce=Ce(142),te=Ce(58),ne=Ce(40),le=we.a.firstNotNull;ge.a.Shader.import(ne.a),["x","y","z"].forEach(function(he){Pe.a.extendComponentView({type:he+"Axis3D"})});var oe={x:0,y:2,z:1},de=Pe.a.extendComponentView({type:"grid3D",__ecgl__:!0,init:function(he,ie){var ue=[["y","z","x",-1,"left"],["y","z","x",1,"right"],["x","y","z",-1,"bottom"],["x","y","z",1,"top"],["x","z","y",-1,"far"],["x","z","y",1,"near"]],ve=["x","y","z"],Se=new ge.a.Material({shader:ge.a.createShader("ecgl.color"),depthMask:!1,transparent:!0}),De=new ge.a.Material({shader:ge.a.createShader("ecgl.meshLines3D"),depthMask:!1,transparent:!0});Se.define("fragment","DOUBLE_SIDED"),Se.define("both","VERTEX_COLOR"),this.groupGL=new ge.a.Node,this._control=new Ae.a({zr:ie.getZr()}),this._control.init(),this._faces=ue.map(function(Ne){var ze=new xe.a(Ne,De,Se);return this.groupGL.add(ze.rootNode),ze},this),this._axes=ve.map(function(Ne){var ze=new ce.a(Ne,De);return this.groupGL.add(ze.rootNode),ze},this);var Re=ie.getDevicePixelRatio();this._axisLabelSurface=new pe.a({width:256,height:256,devicePixelRatio:Re}),this._axisLabelSurface.onupdate=function(){ie.getZr().refresh()},this._axisPointerLineMesh=new ge.a.Mesh({geometry:new be.a({useNativeLine:!1}),material:De,castShadow:!1,ignorePicking:!0,renderOrder:3}),this.groupGL.add(this._axisPointerLineMesh),this._axisPointerLabelsSurface=new pe.a({width:128,height:128,devicePixelRatio:Re}),this._axisPointerLabelsMesh=new te.a({ignorePicking:!0,renderOrder:4,castShadow:!1}),this._axisPointerLabelsMesh.material.set("textureAtlas",this._axisPointerLabelsSurface.getTexture()),this.groupGL.add(this._axisPointerLabelsMesh),this._lightRoot=new ge.a.Node,this._sceneHelper=new ye.a,this._sceneHelper.initLight(this._lightRoot)},render:function(he,ie,ue){this._model=he,this._api=ue;var ve=he.coordinateSystem;ve.viewGL.add(this._lightRoot),he.get("show")?ve.viewGL.add(this.groupGL):ve.viewGL.remove(this.groupGL);var Se=this._control;Se.setViewGL(ve.viewGL);var De=he.getModel("viewControl");Se.setFromViewControlModel(De,0),this._axisLabelSurface.clear();var Re=["x","y","z"].reduce(function(Ne,ze){var Ge=ve.getAxis(ze),Xe=Ge.model;return Ne[ze]=le(Xe.get("axisLabel.interval"),he.get("axisLabel.interval")),Ge.scale.type==="ordinal"&&(Ne[ze]==null||Ne[ze]=="auto")&&(Ne[ze]=Math.floor(Ge.scale.getTicks().length/8)),Ne},{});Se.off("update"),he.get("show")&&(this._faces.forEach(function(Ne){Ne.update(Re,he,ie,ue)},this),this._axes.forEach(function(Ne){Ne.update(he,Re,this._axisLabelSurface,ue)},this)),Se.on("update",this._onCameraChange.bind(this,he,ue),this),this._sceneHelper.setScene(ve.viewGL.scene),this._sceneHelper.updateLight(he),ve.viewGL.setPostEffect(he.getModel("postEffect"),ue),ve.viewGL.setTemporalSuperSampling(he.getModel("temporalSuperSampling")),this._initMouseHandler(he)},afterRender:function(he,ie,ue,ve){var Se=ve.renderer;this._sceneHelper.updateAmbientCubemap(Se,he,ue),this._sceneHelper.updateSkybox(Se,he,ue)},showAxisPointer:function(he,ie,ue,ve){this._doShowAxisPointer(),this._updateAxisPointer(ve.value)},hideAxisPointer:function(he,ie,ue,ve){this._doHideAxisPointer()},_initMouseHandler:function(he){var ie=he.coordinateSystem,ue=ie.viewGL;he.get("show")&&he.get("axisPointer.show")?ue.on("mousemove",this._updateAxisPointerOnMousePosition,this):ue.off("mousemove",this._updateAxisPointerOnMousePosition)},_updateAxisPointerOnMousePosition:function(he){if(!he.target){for(var ie=this._model,ue=ie.coordinateSystem,ve=ue.viewGL,Se=ve.castRay(he.offsetX,he.offsetY,new ge.a.Ray),De,Re=0;Reve[1]?0:1,Ne=this._faces[ue*2+Re],ze=this._faces[ue*2+1-Re];Ne.rootNode.invisible=!0,ze.rootNode.invisible=!1}},_updateAxisLinePosition:function(){var he=this._model.coordinateSystem,ie=he.getAxis("x"),ue=he.getAxis("y"),ve=he.getAxis("z"),Se=ve.getExtentMax(),De=ve.getExtentMin(),Re=ie.getExtentMin(),Ne=ie.getExtentMax(),ze=ue.getExtentMax(),Ge=ue.getExtentMin(),Xe=this._axes[0].rootNode,Qe=this._axes[1].rootNode,nt=this._axes[2].rootNode,$e=this._faces,qe=$e[4].rootNode.invisible?Ge:ze,ot=$e[2].rootNode.invisible?Se:De,at=$e[0].rootNode.invisible?Re:Ne,lt=$e[2].rootNode.invisible?Se:De,rt=$e[0].rootNode.invisible?Ne:Re,ut=$e[4].rootNode.invisible?Ge:ze;Xe.rotation.identity(),Qe.rotation.identity(),nt.rotation.identity(),$e[4].rootNode.invisible&&(this._axes[0].flipped=!0,Xe.rotation.rotateX(Math.PI)),$e[0].rootNode.invisible&&(this._axes[1].flipped=!0,Qe.rotation.rotateZ(Math.PI)),$e[4].rootNode.invisible&&(this._axes[2].flipped=!0,nt.rotation.rotateY(Math.PI)),Xe.position.set(0,ot,qe),Qe.position.set(at,lt,0),nt.position.set(rt,0,ut),Xe.update(),Qe.update(),nt.update(),this._updateAxisLabelAlign()},_updateAxisLabelAlign:function(){var he=this._control.getCamera(),ie=[new ge.a.Vector4,new ge.a.Vector4],ue=new ge.a.Vector4;this.groupGL.getWorldPosition(ue),ue.w=1,ue.transformMat4(he.viewMatrix).transformMat4(he.projectionMatrix),ue.x/=ue.w,ue.y/=ue.w,this._axes.forEach(function(ve){for(var Se=ve.axisLineCoords,De=ve.labelsMesh.geometry,Re=0;Reue.y?"bottom":"top"):(nt="middle",Qe=Ge>ue.x?"left":"right"),ve.setSpriteAlign(Qe,nt,this._api)},this)},_doShowAxisPointer:function(){this._axisPointerLineMesh.invisible&&(this._axisPointerLineMesh.invisible=!1,this._axisPointerLabelsMesh.invisible=!1,this._api.getZr().refresh())},_doHideAxisPointer:function(){this._axisPointerLineMesh.invisible||(this._axisPointerLineMesh.invisible=!0,this._axisPointerLabelsMesh.invisible=!0,this._api.getZr().refresh())},_updateAxisPointer:function(he){var ie=this._model.coordinateSystem,ue=ie.dataToPoint(he),ve=this._axisPointerLineMesh,Se=ve.geometry,De=this._model.getModel("axisPointer"),Re=this._api.getDevicePixelRatio();Se.convertToDynamicArray(!0);function Ne(Ut){return we.a.firstNotNull(Ut.model.get("axisPointer.show"),De.get("show"))}function ze(Ut){var Kt=Ut.model.getModel("axisPointer",De),qt=Kt.getModel("lineStyle"),vn=ge.a.parseColor(qt.get("color")),Ot=le(qt.get("width"),1),rn=le(qt.get("opacity"),1);return vn[3]*=rn,{color:vn,lineWidth:Ot}}for(var Ge=0;Ge0&&ne.rotation.rotateY(Math.PI),le.normal.z=-de)}function te(ne,le,oe){this.rootNode=new ge.a.Node;var de=new ge.a.Mesh({geometry:new be.a({useNativeLine:!1}),material:le,castShadow:!1,ignorePicking:!0,renderOrder:1}),he=new ge.a.Mesh({geometry:new we.a,material:oe,castShadow:!1,culling:!1,ignorePicking:!0,renderOrder:0});this.rootNode.add(he),this.rootNode.add(de),this.faceInfo=ne,this.plane=new ge.a.Plane,this.linesMesh=de,this.quadsMesh=he}te.prototype.update=function(ne,le,oe,de){var he=le.coordinateSystem,ie=[he.getAxis(this.faceInfo[0]),he.getAxis(this.faceInfo[1])],ue=this.linesMesh.geometry,ve=this.quadsMesh.geometry;ue.convertToDynamicArray(!0),ve.convertToDynamicArray(!0),this._updateSplitLines(ue,ie,le,ne,de),this._udpateSplitAreas(ve,ie,le,ne,de),ue.convertToTypedArray(),ve.convertToTypedArray();var Se=he.getAxis(this.faceInfo[2]);ce(this.rootNode,this.plane,Se,this.faceInfo[3])},te.prototype._updateSplitLines=function(ne,le,oe,de,he){var ie=he.getDevicePixelRatio();le.forEach(function(ue,ve){var Se=ue.model,De=le[1-ve].getExtent();if(!ue.scale.isBlank()){var Re=Se.getModel("splitLine",oe.getModel("splitLine"));if(Re.get("show")){var Ne=Re.getModel("lineStyle"),ze=Ne.get("color"),Ge=ye(Ne.get("opacity"),1),Xe=ye(Ne.get("width"),1),Qe=Re.get("interval");(Qe==null||Qe==="auto")&&(Qe=de[ue.dim]),ze=Pe.a.util.isArray(ze)?ze:[ze];for(var nt=ue.getTicksCoords(),$e=0,qe=0;qe65535?new Uint32Array(ne*3):new Uint16Array(ne*3))},getQuadVertexCount:function(){return 4},getQuadTriangleCount:function(){return 2},addQuad:function(){var xe=pe.create(),ce=pe.create(),te=pe.create(),ne=[0,3,1,3,2,1];return function(le,oe){var de=this.attributes.position,he=this.attributes.normal,ie=this.attributes.color;pe.sub(xe,le[1],le[0]),pe.sub(ce,le[2],le[1]),pe.cross(te,xe,ce),pe.normalize(te,te);for(var ue=0;ue<4;ue++)de.set(this._vertexOffset+ue,le[ue]),ie.set(this._vertexOffset+ue,oe),he.set(this._vertexOffset+ue,te);for(var ve=this._faceOffset*3,ue=0;ue<6;ue++)this.indices[ve+ue]=ne[ue]+this._vertexOffset;this._vertexOffset+=4,this._faceOffset+=2}}()});ge.a.util.defaults(ye.prototype,Ae.a),Fe.a=ye},function(He,Fe,Ce){"use strict";var _e=Ce(0),Pe=Ce.n(_e),ge=Ce(2),Ae=Ce(22),be=Ce(3),we=Ce(58),pe=Ce(74),ye=be.a.firstNotNull,xe={x:0,y:2,z:1};function ce(ne,le){var oe=new ge.a.Mesh({geometry:new Ae.a({useNativeLine:!1}),material:le,castShadow:!1,ignorePicking:!0,renderOrder:2}),de=new we.a;de.material.depthMask=!1;var he=new ge.a.Node;he.add(oe),he.add(de),this.rootNode=he,this.dim=ne,this.linesMesh=oe,this.labelsMesh=de,this.axisLineCoords=null,this.labelElements=[]}var te={x:"y",y:"x",z:"y"};ce.prototype.update=function(ne,le,oe,de){var he=ne.coordinateSystem,ie=he.getAxis(this.dim),ue=le[this.dim],ve=this.linesMesh.geometry,Se=this.labelsMesh.geometry;ve.convertToDynamicArray(!0),Se.convertToDynamicArray(!0);var De=ie.model,Re=ie.getExtent(),qt=de.getDevicePixelRatio(),Ne=De.getModel("axisLine",ne.getModel("axisLine")),ze=De.getModel("axisTick",ne.getModel("axisTick")),Ge=De.getModel("axisLabel",ne.getModel("axisLabel")),Xe=Ne.get("lineStyle.color");if(Ne.get("show")){var Qe=Ne.getModel("lineStyle"),nt=[0,0,0],$e=[0,0,0],qe=xe[ie.dim];nt[qe]=Re[0],$e[qe]=Re[1],this.axisLineCoords=[nt,$e];var ot=ge.a.parseColor(Xe),at=ye(Qe.get("width"),1),lt=ye(Qe.get("opacity"),1);ot[3]*=lt,ve.addLine(nt,$e,ot,at*qt)}if(ze.get("show")){var rt=ze.getModel("lineStyle"),ut=ge.a.parseColor(ye(rt.get("color"),Xe)),at=ye(rt.get("width"),1);ut[3]*=ye(rt.get("opacity"),1);var yt=ie.getTicksCoords(),ft=ze.get("interval");(ft==null||ft==="auto")&&(ft=ue);for(var dt=ze.get("length"),ht=0;ht65535?new Uint32Array(xe*3):new Uint16Array(xe*3))},setSpriteAlign:function(pe,ye,xe,ce,te){xe==null&&(xe="left"),ce==null&&(ce="top");var ne,le,oe,de;switch(te=te||0,xe){case"left":ne=te,oe=ye[0]+te;break;case"center":case"middle":ne=-ye[0]/2,oe=ye[0]/2;break;case"right":ne=-ye[0]-te,oe=-te;break}switch(ce){case"bottom":le=te,de=ye[1]+te;break;case"middle":le=-ye[1]/2,de=ye[1]/2;break;case"top":le=-ye[1]-te,de=-te;break}var he=pe*4,ie=this.attributes.offset;ie.set(he,[ne,de]),ie.set(he+1,[oe,de]),ie.set(he+2,[oe,le]),ie.set(he+3,[ne,le])},addSprite:function(pe,ye,xe,ce,te,ne){var le=this._vertexOffset;this.setSprite(this._vertexOffset/4,pe,ye,xe,ce,te,ne);for(var oe=0;oe1?"."+ue[1]:""))}function be(ue,ve){return ue=(ue||"").toLowerCase().replace(/-(.)/g,function(Se,De){return De.toUpperCase()}),ve&&ue&&(ue=ue.charAt(0).toUpperCase()+ue.slice(1)),ue}var we=_e.normalizeCssArray;function pe(ue){return String(ue).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}var ye=["a","b","c","d","e","f","g"],xe=function(ue,ve){return"{"+ue+(ve==null?"":ve)+"}"};function ce(ue,ve,Se){_e.isArray(ve)||(ve=[ve]);var De=ve.length;if(!De)return"";for(var Re=ve[0].$vars||[],Ne=0;Ne':'':""}var le=function(ue){return ue<10?"0"+ue:ue};function oe(ue,ve,Se){(ue==="week"||ue==="month"||ue==="quarter"||ue==="half-year"||ue==="year")&&(ue=`MM-dd yyyy`);var De=ge.parseDate(ve),Re=Se?"UTC":"",Ne=De["get"+Re+"FullYear"](),ze=De["get"+Re+"Month"]()+1,Ge=De["get"+Re+"Date"](),Xe=De["get"+Re+"Hours"](),Qe=De["get"+Re+"Minutes"](),nt=De["get"+Re+"Seconds"]();return ue=ue.replace("MM",le(ze)).replace("M",ze).replace("yyyy",Ne).replace("yy",Ne%100).replace("dd",le(Ge)).replace("d",Ge).replace("hh",le(Xe)).replace("h",Xe).replace("mm",le(Qe)).replace("m",Qe).replace("ss",le(nt)).replace("s",nt),ue}function de(ue){return ue&&ue.charAt(0).toUpperCase()+ue.substr(1)}var he=Pe.truncateText,ie=Pe.getBoundingRect;Fe.addCommas=Ae,Fe.toCamelCase=be,Fe.normalizeCssArray=we,Fe.encodeHTML=pe,Fe.formatTpl=ce,Fe.formatTplSimple=te,Fe.getTooltipMarker=ne,Fe.formatTime=oe,Fe.capitalFirst=de,Fe.truncateText=he,Fe.getTextRect=ie},function(He,Fe,Ce){var _e=Ce(75),Pe=Ce(151),ge=Ce(12),Ae=ge.getContext,be=ge.extend,we=ge.retrieve2,pe=ge.retrieve3,ye={},xe=0,ce=5e3,te=/\{([a-zA-Z0-9_]+)\|([^}]*)\}/g,ne="12px sans-serif",le={};function oe(at,lt){le[at]=lt}function de(at,lt){lt=lt||ne;var rt=at+":"+lt;if(ye[rt])return ye[rt];for(var ut=(at+"").split(` `),yt=0,ft=0,dt=ut.length;ftce&&(xe=0,ye={}),xe++,ye[rt]=yt,yt}function he(at,lt,rt,ut,yt,ft,dt){return ft?ue(at,lt,rt,ut,yt,ft,dt):ie(at,lt,rt,ut,yt,dt)}function ie(at,lt,rt,ut,yt,ft){var dt=nt(at,lt,yt,ft),ht=de(at,lt);yt&&(ht+=yt[1]+yt[3]);var Ut=dt.outerHeight,Kt=ve(0,ht,rt),qt=Se(0,Ut,ut),vn=new _e(Kt,qt,ht,Ut);return vn.lineHeight=dt.lineHeight,vn}function ue(at,lt,rt,ut,yt,ft,dt){var ht=$e(at,{rich:ft,truncate:dt,font:lt,textAlign:rt,textPadding:yt}),Ut=ht.outerWidth,Kt=ht.outerHeight,qt=ve(0,Ut,rt),vn=Se(0,Kt,ut);return new _e(qt,vn,Ut,Kt)}function ve(at,lt,rt){return rt==="right"?at-=lt:rt==="center"&&(at-=lt/2),at}function Se(at,lt,rt){return rt==="middle"?at-=lt/2:rt==="bottom"&&(at-=lt),at}function De(at,lt,rt){var ut=lt.x,yt=lt.y,ft=lt.height,dt=lt.width,ht=ft/2,Ut="left",Kt="top";switch(at){case"left":ut-=rt,yt+=ht,Ut="right",Kt="middle";break;case"right":ut+=rt+dt,yt+=ht,Kt="middle";break;case"top":ut+=dt/2,yt-=rt,Ut="center",Kt="bottom";break;case"bottom":ut+=dt/2,yt+=ft+rt,Ut="center";break;case"inside":ut+=dt/2,yt+=ht,Ut="center",Kt="middle";break;case"insideLeft":ut+=rt,yt+=ht,Kt="middle";break;case"insideRight":ut+=dt-rt,yt+=ht,Ut="right",Kt="middle";break;case"insideTop":ut+=dt/2,yt+=rt,Ut="center";break;case"insideBottom":ut+=dt/2,yt+=ft-rt,Ut="center",Kt="bottom";break;case"insideTopLeft":ut+=rt,yt+=rt;break;case"insideTopRight":ut+=dt-rt,yt+=rt,Ut="right";break;case"insideBottomLeft":ut+=rt,yt+=ft-rt,Kt="bottom";break;case"insideBottomRight":ut+=dt-rt,yt+=ft-rt,Ut="right",Kt="bottom";break}return{x:ut,y:yt,textAlign:Ut,textVerticalAlign:Kt}}function Re(at,lt,rt,ut,yt){if(!lt)return"";var ft=(at+"").split(` `);yt=Ne(lt,rt,ut,yt);for(var dt=0,ht=ft.length;dt=dt;Ut++)ht-=dt;var Kt=de(yt);return Kt>ht&&(yt="",Kt=0),ht=at-Kt,ut.ellipsis=yt,ut.ellipsisWidth=Kt,ut.contentWidth=ht,ut.containerWidth=at,ut}function ze(at,lt){var rt=lt.containerWidth,ut=lt.font,yt=lt.contentWidth;if(!rt)return"";var ft=de(at,ut);if(ft<=rt)return at;for(var dt=0;;dt++){if(ft<=yt||dt>=lt.maxIterations){at+=lt.ellipsis;break}var ht=dt===0?Ge(at,yt,lt.ascCharWidth,lt.cnCharWidth):ft>0?Math.floor(at.length*yt/ft):0;at=at.substr(0,ht),ft=de(at,ut)}return at===""&&(at=lt.placeholder),at}function Ge(at,lt,rt,ut){for(var yt=0,ft=0,dt=at.length;ftUt)at="",ft=[];else if(Kt!=null)for(var qt=Ne(Kt-(rt?rt[1]+rt[3]:0),lt,ut.ellipsis,{minChar:ut.minChar,placeholder:ut.placeholder}),vn=0,Ot=ft.length;vnut&&qe(rt,at.substring(ut,ft)),qe(rt,yt[2],yt[1]),ut=te.lastIndex}utrn)return{lines:[],width:0,height:0};Gt.textWidth=de(Gt.text,Zt);var At=It.textWidth,Qt=At==null||At==="auto";if(typeof At=="string"&&At.charAt(At.length-1)==="%")Gt.percentWidth=At,Kt.push(Gt),At=0;else{if(Qt){At=Gt.textWidth;var Ft=It.textBackgroundColor,wt=Ft&&Ft.image;wt&&(wt=Pe.findExistImage(wt),Pe.isImageReady(wt)&&(At=Math.max(At,wt.width*vt/wt.height)))}var ln=Et?Et[1]+Et[3]:0;At+=ln;var In=Ot!=null?Ot-sn:null;In!=null&&In4){console.warn("Support at most 4 cascade");continue}rn.shadowCascade>1&&(vn=rn.shadowCascade),this.renderDirectionalLightShadow(ot,at,lt,rn,this._opaqueCasters,Kt,Ut,ht)}else rn instanceof te.a?this.renderSpotLightShadow(ot,at,rn,this._opaqueCasters,dt,ft):rn instanceof le.a&&this.renderPointLightShadow(ot,at,rn,this._opaqueCasters,qt);this._shadowMapNumber[rn.type]++}for(var an in this._shadowMapNumber)for(var On=this._shadowMapNumber[an],Rn=an+"_SHADOWMAP_COUNT",Ot=0;Ot0?tn.define("fragment",Rn,On):tn.isDefined("fragment",Rn)&&tn.undefine("fragment",Rn))}for(var Ot=0;Ot0){var Et=ht.map(It);if(Gt.directionalLightShadowMaps={value:ht,type:"tv"},Gt.directionalLightMatrices={value:Ut,type:"m4v"},Gt.directionalLightShadowMapSizes={value:Et,type:"1fv"},vn){var Zt=Kt.slice(),vt=Kt.slice();Zt.pop(),vt.shift(),Zt.reverse(),vt.reverse(),Ut.reverse(),Gt.shadowCascadeClipsNear={value:Zt,type:"1fv"},Gt.shadowCascadeClipsFar={value:vt,type:"1fv"}}}if(ft.length>0){var At=ft.map(It),Gt=at.shadowUniforms;Gt.spotLightShadowMaps={value:ft,type:"tv"},Gt.spotLightMatrices={value:dt,type:"m4v"},Gt.spotLightShadowMapSizes={value:At,type:"1fv"}}qt.length>0&&(Gt.pointLightShadowMaps={value:qt,type:"tv"})},renderDirectionalLightShadow:function(){var ot=new be.a,at=new we.a,lt=new Ae.a,rt=new we.a,ut=new we.a,yt=new we.a,ft=new we.a;return function(dt,ht,Ut,Kt,qt,vn,Ot,rn){var an=this._getDepthMaterial(Kt),On={getMaterial:function(Er){return Er.shadowDepthMaterial||an},sortCompare:pe.a.opaqueSortCompare};if(!ht.viewBoundingBoxLastFrame.isFinite()){var Rn=ht.getBoundingBox();ht.viewBoundingBoxLastFrame.copy(Rn).applyTransform(Ut.viewMatrix)}var sn=Math.min(-ht.viewBoundingBoxLastFrame.min.z,Ut.far),tn=Math.max(-ht.viewBoundingBoxLastFrame.max.z,Ut.near),Gt=this._getDirectionalLightCamera(Kt,ht,Ut),It=yt.array;ft.copy(Gt.projectionMatrix),Qe.invert(ut.array,Gt.worldTransform.array),Qe.multiply(ut.array,ut.array,Ut.worldTransform.array),Qe.multiply(It,ft.array,ut.array);for(var Et=[],Zt=Ut instanceof Se.a,vt=(Ut.near+Ut.far)/(Ut.near-Ut.far),At=2*Ut.near*Ut.far/(Ut.near-Ut.far),Qt=0;Qt<=Kt.shadowCascade;Qt++){var Ft=tn*Math.pow(sn/tn,Qt/Kt.shadowCascade),wt=tn+(sn-tn)*Qt/Kt.shadowCascade,ln=Ft*Kt.cascadeSplitLogFactor+wt*(1-Kt.cascadeSplitLogFactor);Et.push(ln),vn.push(-(-ln*vt+At)/-ln)}var In=this._getTexture(Kt,Kt.shadowCascade);rn.push(In);var Kn=dt.viewport,Vn=dt.gl;this._frameBuffer.attach(In),this._frameBuffer.bind(dt),Vn.clear(Vn.COLOR_BUFFER_BIT|Vn.DEPTH_BUFFER_BIT);for(var Qt=0;Qt= shadowCascadeClipsNear[_idx_] && depth <= shadowCascadeClipsFar[_idx_] ) { shadowContrib = computeShadowContrib( directionalLightShadowMaps[0], directionalLightMatrices[_idx_], position, directionalLightShadowMapSizes[0], vec2(1.0 / float(SHADOW_CASCADE), 1.0), vec2(float(_idx_) / float(SHADOW_CASCADE), 0.0) ); shadowContribs[0] = shadowContrib; } }} for(int _idx_ = DIRECTIONAL_LIGHT_SHADOWMAP_COUNT; _idx_ < DIRECTIONAL_LIGHT_COUNT; _idx_++) {{ shadowContribs[_idx_] = 1.0; }} } #else void computeShadowOfDirectionalLights(vec3 position, inout float shadowContribs[DIRECTIONAL_LIGHT_COUNT]){ float shadowContrib; for(int _idx_ = 0; _idx_ < DIRECTIONAL_LIGHT_SHADOWMAP_COUNT; _idx_++) {{ shadowContrib = computeShadowContrib( directionalLightShadowMaps[_idx_], directionalLightMatrices[_idx_], position, directionalLightShadowMapSizes[_idx_] ); shadowContribs[_idx_] = shadowContrib; }} for(int _idx_ = DIRECTIONAL_LIGHT_SHADOWMAP_COUNT; _idx_ < DIRECTIONAL_LIGHT_COUNT; _idx_++) {{ shadowContribs[_idx_] = 1.0; }} } #endif #endif #if defined(POINT_LIGHT_SHADOWMAP_COUNT) void computeShadowOfPointLights(vec3 position, inout float shadowContribs[POINT_LIGHT_COUNT] ){ vec3 lightPosition; vec3 direction; for(int _idx_ = 0; _idx_ < POINT_LIGHT_SHADOWMAP_COUNT; _idx_++) {{ lightPosition = pointLightPosition[_idx_]; direction = position - lightPosition; shadowContribs[_idx_] = computeShadowContribOmni(pointLightShadowMaps[_idx_], direction, pointLightRange[_idx_]); }} for(int _idx_ = POINT_LIGHT_SHADOWMAP_COUNT; _idx_ < POINT_LIGHT_COUNT; _idx_++) {{ shadowContribs[_idx_] = 1.0; }} } #endif #endif @end`},function(He,Fe,Ce){"use strict";var _e=Ce(7),Pe=Ce(5),ge=Ce(6),Ae=Ce(10),be=Ce(156),we=Ce(162),pe=Ce(164),ye=Ce(166),xe=Ce(2),ce=Ce(167),te=Ce(169),ne=Ce(9),le=Ce(170),oe=Ce(171),de=Ce(172),he=Ce(173),ie=Ce(174),ue=Ce(175),ve=Ce(176),Se=Ce(177),De=Ce(178),Re=Ce(179),Ne=Ce(180),ze=Ce(181);_e.a.import(oe.a),_e.a.import(de.a),_e.a.import(he.a),_e.a.import(ie.a),_e.a.import(ue.a),_e.a.import(ve.a),_e.a.import(Se.a),_e.a.import(De.a),_e.a.import(Re.a),_e.a.import(Ne.a),_e.a.import(ze.a);var Ge={color:{parameters:{width:function(nt){return nt.getWidth()},height:function(nt){return nt.getHeight()}}}},Xe=["composite","FXAA"];function Qe(){this._sourceTexture=new Pe.a({type:ge.a.HALF_FLOAT}),this._depthTexture=new Pe.a({format:ge.a.DEPTH_COMPONENT,type:ge.a.UNSIGNED_INT}),this._framebuffer=new Ae.a,this._framebuffer.attach(this._sourceTexture),this._framebuffer.attach(this._depthTexture,Ae.a.DEPTH_ATTACHMENT),this._normalPass=new ce.a,this._compositor=Object(be.a)(le.a);var nt=this._compositor.getNodeByName("source");nt.texture=this._sourceTexture;var $e=this._compositor.getNodeByName("coc");this._sourceNode=nt,this._cocNode=$e,this._compositeNode=this._compositor.getNodeByName("composite"),this._fxaaNode=this._compositor.getNodeByName("FXAA"),this._dofBlurNodes=["dof_far_blur","dof_near_blur","dof_coc_blur"].map(function(ot){return this._compositor.getNodeByName(ot)},this),this._dofBlurKernel=0,this._dofBlurKernelSize=new Float32Array(0),this._finalNodesChain=Xe.map(function(ot){return this._compositor.getNodeByName(ot)},this);var qe={normalTexture:this._normalPass.getNormalTexture(),depthTexture:this._normalPass.getDepthTexture()};this._ssaoPass=new we.a(qe),this._ssrPass=new pe.a(qe),this._edgePass=new te.a(qe)}Qe.prototype.resize=function(ot,at,qe){qe=qe||1;var ot=ot*qe,at=at*qe,lt=this._sourceTexture,rt=this._depthTexture;lt.width=ot,lt.height=at,rt.width=ot,rt.height=at},Qe.prototype._ifRenderNormalPass=function(){return this._enableSSAO||this._enableEdge||this._enableSSR},Qe.prototype._getPrevNode=function(nt){for(var $e=Xe.indexOf(nt.name)-1,qe=this._finalNodesChain[$e];qe&&!this._compositor.getNodeByName(qe.name);)$e-=1,qe=this._finalNodesChain[$e];return qe},Qe.prototype._getNextNode=function(nt){for(var $e=Xe.indexOf(nt.name)+1,qe=this._finalNodesChain[$e];qe&&!this._compositor.getNodeByName(qe.name);)$e+=1,qe=this._finalNodesChain[$e];return qe},Qe.prototype._addChainNode=function(nt){var $e=this._getPrevNode(nt),qe=this._getNextNode(nt);$e&&($e.outputs=Ge,nt.inputs.texture=$e.name,qe?(nt.outputs=Ge,qe.inputs.texture=nt.name):nt.outputs=null,this._compositor.addNode(nt))},Qe.prototype._removeChainNode=function(nt){var $e=this._getPrevNode(nt),qe=this._getNextNode(nt);$e&&(qe?($e.outputs=Ge,qe.inputs.texture=$e.name):$e.outputs=null,this._compositor.removeNode(nt))},Qe.prototype.updateNormal=function(nt,$e,qe,ot){this._ifRenderNormalPass()&&this._normalPass.update(nt,$e,qe)},Qe.prototype.updateSSAO=function(nt,$e,qe,ot){this._ssaoPass.update(nt,qe,ot)},Qe.prototype.enableSSAO=function(){this._enableSSAO=!0},Qe.prototype.disableSSAO=function(){this._enableSSAO=!1},Qe.prototype.enableSSR=function(){this._enableSSR=!0},Qe.prototype.disableSSR=function(){this._enableSSR=!1},Qe.prototype.getSSAOTexture=function(nt,$e,qe,ot){return this._ssaoPass.getTargetTexture()},Qe.prototype.getSourceFrameBuffer=function(){return this._framebuffer},Qe.prototype.getSourceTexture=function(){return this._sourceTexture},Qe.prototype.disableFXAA=function(){this._removeChainNode(this._fxaaNode)},Qe.prototype.enableFXAA=function(){this._addChainNode(this._fxaaNode)},Qe.prototype.enableBloom=function(){this._compositeNode.inputs.bloom="bloom_composite",this._compositor.dirty()},Qe.prototype.disableBloom=function(){this._compositeNode.inputs.bloom=null,this._compositor.dirty()},Qe.prototype.enableDOF=function(){this._compositeNode.inputs.texture="dof_composite",this._compositor.dirty()},Qe.prototype.disableDOF=function(){this._compositeNode.inputs.texture="source",this._compositor.dirty()},Qe.prototype.enableColorCorrection=function(){this._compositeNode.define("COLOR_CORRECTION"),this._enableColorCorrection=!0},Qe.prototype.disableColorCorrection=function(){this._compositeNode.undefine("COLOR_CORRECTION"),this._enableColorCorrection=!1},Qe.prototype.enableEdge=function(){this._enableEdge=!0},Qe.prototype.disableEdge=function(){this._enableEdge=!1},Qe.prototype.setBloomIntensity=function(nt){this._compositeNode.setParameter("bloomIntensity",nt)},Qe.prototype.setSSAOParameter=function(nt,$e){switch(nt){case"quality":var qe={low:6,medium:12,high:32,ultra:62}[$e]||12;this._ssaoPass.setParameter("kernelSize",qe);break;case"radius":this._ssaoPass.setParameter(nt,$e),this._ssaoPass.setParameter("bias",$e/200);break;case"intensity":this._ssaoPass.setParameter(nt,$e);break;default:console.warn("Unkown SSAO parameter "+nt)}},Qe.prototype.setDOFParameter=function(nt,$e){switch(nt){case"focalDistance":case"focalRange":case"fstop":this._cocNode.setParameter(nt,$e);break;case"blurRadius":for(var qe=0;qe=0||(this.nodes.push(Ae),this._dirty=!0)},removeNode:function(Ae){typeof Ae=="string"&&(Ae=this.getNodeByName(Ae));var be=this.nodes.indexOf(Ae);be>=0&&(this.nodes.splice(be,1),this._dirty=!0)},getNodeByName:function(Ae){for(var be=0;be=we.COLOR_ATTACHMENT0&&le<=we.COLOR_ATTACHMENT0+8&&de.push(le);oe.drawBuffersEXT(de)}be.saveClear(),be.clearBit=Pe.a.DEPTH_BUFFER_BIT|Pe.a.COLOR_BUFFER_BIT,pe=be.render(this.scene,this.camera,!this.autoUpdateScene,this.preZ),be.restoreClear(),ye.unbind(be)}this.trigger("afterrender",pe),this._rendering=!1,this._rendered=!0}});Fe.a=Ae},function(He,Fe,Ce){"use strict";var _e=Ce(42),Pe=_e.a.extend(function(){return{texture:null,outputs:{color:{}}}},function(){},{getOutput:function(ge,Ae){return this.texture},beforeFrame:function(){},afterFrame:function(){}});Fe.a=Pe},function(He,Fe,Ce){"use strict";var _e=Ce(14),Pe=Ce(42),ge=Pe.a.extend(function(){return{name:"",inputs:{},outputs:null,shader:"",inputLinks:{},outputLinks:{},pass:null,_prevOutputTextures:{},_outputTextures:{},_outputReferences:{},_rendering:!1,_rendered:!1,_compositor:null}},function(){var Ae=new _e.a({fragment:this.shader});this.pass=Ae},{render:function(Ae,be){this.trigger("beforerender",Ae),this._rendering=!0;var we=Ae.gl;for(var pe in this.inputLinks){var ye=this.inputLinks[pe],xe=ye.node.getOutput(Ae,ye.pin);this.pass.setUniform(pe,xe)}if(!this.outputs)this.pass.outputs=null,this._compositor.getFrameBuffer().unbind(Ae),this.pass.render(Ae,be);else{this.pass.outputs={};var ce={};for(var te in this.outputs){var ne=this.updateParameter(te,Ae);isNaN(ne.width)&&this.updateParameter(te,Ae);var le=this.outputs[te],oe=this._compositor.allocateTexture(ne);this._outputTextures[te]=oe;var de=le.attachment||we.COLOR_ATTACHMENT0;typeof de=="string"&&(de=we[de]),ce[de]=oe}this._compositor.getFrameBuffer().bind(Ae);for(var de in ce)this._compositor.getFrameBuffer().attach(ce[de],de);this.pass.render(Ae),this._compositor.getFrameBuffer().updateMipmap(Ae.gl)}for(var pe in this.inputLinks){var ye=this.inputLinks[pe];ye.node.removeReference(ye.pin)}this._rendering=!1,this._rendered=!0,this.trigger("afterrender",Ae)},updateParameter:function(Ae,be){var we=this.outputs[Ae],pe=we.parameters,ye=we._parametersCopy;if(ye||(ye=we._parametersCopy={}),pe)for(var xe in pe)xe!=="width"&&xe!=="height"&&(ye[xe]=pe[xe]);var ce,te;return pe.width instanceof Function?ce=pe.width.call(this,be):ce=pe.width,pe.height instanceof Function?te=pe.height.call(this,be):te=pe.height,(ye.width!==ce||ye.height!==te)&&this._outputTextures[Ae]&&this._outputTextures[Ae].dispose(be),ye.width=ce,ye.height=te,ye},setParameter:function(Ae,be){this.pass.setUniform(Ae,be)},getParameter:function(Ae){return this.pass.getUniform(Ae)},setParameters:function(Ae){for(var be in Ae)this.setParameter(be,Ae[be])},define:function(Ae,be){this.pass.material.define("fragment",Ae,be)},undefine:function(Ae){this.pass.material.undefine("fragment",Ae)},removeReference:function(Ae){if(this._outputReferences[Ae]--,this._outputReferences[Ae]===0){var be=this.outputs[Ae];be.keepLastFrame?(this._prevOutputTextures[Ae]&&this._compositor.releaseTexture(this._prevOutputTextures[Ae]),this._prevOutputTextures[Ae]=this._outputTextures[Ae]):this._compositor.releaseTexture(this._outputTextures[Ae])}},clear:function(){Pe.a.prototype.clear.call(this),this.pass.material.disableTexturesAll()}});Fe.a=ge},function(He,Fe,Ce){"use strict";var _e=Ce(9),Pe=Ce(4),ge=Ce(5),Ae=Ce(6),be=Ce(14),we=Ce(7),pe=Ce(10),ye=Ce(43),xe=Ce(163);we.a.import(xe.a);function ce(oe){for(var de=new Uint8Array(oe*oe*4),he=0,ie=new Pe.a,ue=0;ue 0.99999) { gl_FragColor = vec4(1.0); return; } mat3 kernelBasis; #endif float z = depthTexel.r * 2.0 - 1.0; vec4 projectedPos = vec4(v_Texcoord * 2.0 - 1.0, z, 1.0); vec4 p4 = projectionInv * projectedPos; vec3 position = p4.xyz / p4.w; float ao = ssaoEstimator(position, kernelBasis); ao = clamp(1.0 - (1.0 - ao) * intensity, 0.0, 1.0); gl_FragColor = vec4(vec3(ao), 1.0); } @end @export ecgl.ssao.blur #define SHADER_NAME SSAO_BLUR uniform sampler2D ssaoTexture; #ifdef NORMALTEX_ENABLED uniform sampler2D normalTex; #endif varying vec2 v_Texcoord; uniform vec2 textureSize; uniform float blurSize : 1.0; uniform int direction: 0.0; #ifdef DEPTHTEX_ENABLED uniform sampler2D depthTex; uniform mat4 projection; uniform float depthRange : 0.5; float getLinearDepth(vec2 coord) { float depth = texture2D(depthTex, coord).r * 2.0 - 1.0; return projection[3][2] / (depth * projection[2][3] - projection[2][2]); } #endif void main() { float kernel[5]; kernel[0] = 0.122581; kernel[1] = 0.233062; kernel[2] = 0.288713; kernel[3] = 0.233062; kernel[4] = 0.122581; vec2 off = vec2(0.0); if (direction == 0) { off[0] = blurSize / textureSize.x; } else { off[1] = blurSize / textureSize.y; } vec2 coord = v_Texcoord; float sum = 0.0; float weightAll = 0.0; #ifdef NORMALTEX_ENABLED vec3 centerNormal = texture2D(normalTex, v_Texcoord).rgb * 2.0 - 1.0; #endif #if defined(DEPTHTEX_ENABLED) float centerDepth = getLinearDepth(v_Texcoord); #endif for (int i = 0; i < 5; i++) { vec2 coord = clamp(v_Texcoord + vec2(float(i) - 2.0) * off, vec2(0.0), vec2(1.0)); float w = kernel[i]; #ifdef NORMALTEX_ENABLED vec3 normal = texture2D(normalTex, coord).rgb * 2.0 - 1.0; w *= clamp(dot(normal, centerNormal), 0.0, 1.0); #endif #ifdef DEPTHTEX_ENABLED float d = getLinearDepth(coord); w *= (1.0 - smoothstep(abs(centerDepth - d) / depthRange, 0.0, 1.0)); #endif weightAll += w; sum += texture2D(ssaoTexture, coord).r * w; } gl_FragColor = vec4(vec3(sum / weightAll), 1.0); } @end `},function(He,Fe,Ce){"use strict";var _e=Ce(9),Pe=Ce(4),ge=Ce(5),Ae=Ce(6),be=Ce(14),we=Ce(7),pe=Ce(10),ye=Ce(43),xe=Ce(165);we.a.import(xe.a);function ce(te){te=te||{},this._ssrPass=new be.a({fragment:we.a.source("ecgl.ssr.main"),clearColor:[0,0,0,0]}),this._blurPass1=new be.a({fragment:we.a.source("ecgl.ssr.blur"),clearColor:[0,0,0,0]}),this._blurPass2=new be.a({fragment:we.a.source("ecgl.ssr.blur"),clearColor:[0,0,0,0]}),this._ssrPass.setUniform("gBufferTexture1",te.normalTexture),this._ssrPass.setUniform("gBufferTexture2",te.depthTexture),this._blurPass1.setUniform("gBufferTexture1",te.normalTexture),this._blurPass1.setUniform("gBufferTexture2",te.depthTexture),this._blurPass2.setUniform("gBufferTexture1",te.normalTexture),this._blurPass2.setUniform("gBufferTexture2",te.depthTexture),this._blurPass2.material.define("fragment","VERTICAL"),this._blurPass2.material.define("fragment","BLEND"),this._texture1=new ge.a({type:Ae.a.HALF_FLOAT}),this._texture2=new ge.a({type:Ae.a.HALF_FLOAT}),this._texture3=new ge.a({type:Ae.a.HALF_FLOAT}),this._frameBuffer=new pe.a({depthBuffer:!1})}ce.prototype.update=function(te,ne,le,oe){var de=te.getWidth(),he=te.getHeight(),ie=te.getDevicePixelRatio(),ue=this._texture1,ve=this._texture2,Se=this._texture3;ve.width=de/2,ve.height=he/2,ue.width=de,ue.height=he,Se.width=de*ie,Se.height=he*ie;var De=this._frameBuffer,Re=this._ssrPass,Ne=this._blurPass1,ze=this._blurPass2,Ge=new _e.a;_e.a.transpose(Ge,ne.worldTransform),Re.setUniform("sourceTexture",le),Re.setUniform("projection",ne.projectionMatrix.array),Re.setUniform("projectionInv",ne.invProjectionMatrix.array),Re.setUniform("viewInverseTranspose",Ge.array),Re.setUniform("nearZ",ne.near),Re.setUniform("jitterOffset",oe/30),Ne.setUniform("textureSize",[de/2,he/2]),ze.setUniform("textureSize",[de,he]),ze.setUniform("sourceTexture",le),Ne.setUniform("projection",ne.projectionMatrix.array),ze.setUniform("projection",ne.projectionMatrix.array),De.attach(ue),De.bind(te),Re.render(te),De.attach(ve),Ne.setUniform("texture",ue),Ne.render(te),De.attach(Se),ze.setUniform("texture",ve),ze.render(te),De.unbind(te)},ce.prototype.getTargetTexture=function(){return this._texture3},ce.prototype.setParameter=function(te,ne){te==="maxIteration"?this._ssrPass.material.define("fragment","MAX_ITERATION",ne):this._ssrPass.setUniform(te,ne)},ce.prototype.setSSAOTexture=function(te){var ne=this._blurPass2;te?(ne.material.enableTexture("ssaoTex"),ne.material.set("ssaoTex",te)):ne.material.disableTexture("ssaoTex")},ce.prototype.dispose=function(te){this._texture1.dispose(te),this._texture2.dispose(te),this._texture3.dispose(te),this._frameBuffer.dispose(te)},Fe.a=ce},function(He,Fe,Ce){"use strict";Fe.a=`@export ecgl.ssr.main #define MAX_ITERATION 20; uniform sampler2D sourceTexture; uniform sampler2D gBufferTexture1; uniform sampler2D gBufferTexture2; uniform mat4 projection; uniform mat4 projectionInv; uniform mat4 viewInverseTranspose; uniform float maxRayDistance: 50; uniform float pixelStride: 16; uniform float pixelStrideZCutoff: 50; uniform float screenEdgeFadeStart: 0.9; uniform float eyeFadeStart : 0.2; uniform float eyeFadeEnd: 0.8; uniform float minGlossiness: 0.2; uniform float zThicknessThreshold: 10; uniform float nearZ; uniform vec2 viewportSize : VIEWPORT_SIZE; uniform float jitterOffset: 0; varying vec2 v_Texcoord; #ifdef DEPTH_DECODE @import clay.util.decode_float #endif float fetchDepth(sampler2D depthTexture, vec2 uv) { vec4 depthTexel = texture2D(depthTexture, uv); return depthTexel.r * 2.0 - 1.0; } float linearDepth(float depth) { if (projection[3][3] == 0.0) { return projection[3][2] / (depth * projection[2][3] - projection[2][2]); } else { return (depth - projection[3][2]) / projection[2][2]; } } bool rayIntersectDepth(float rayZNear, float rayZFar, vec2 hitPixel) { if (rayZFar > rayZNear) { float t = rayZFar; rayZFar = rayZNear; rayZNear = t; } float cameraZ = linearDepth(fetchDepth(gBufferTexture2, hitPixel)); return rayZFar <= cameraZ && rayZNear >= cameraZ - zThicknessThreshold; } bool traceScreenSpaceRay( vec3 rayOrigin, vec3 rayDir, float jitter, out vec2 hitPixel, out vec3 hitPoint, out float iterationCount ) { float rayLength = ((rayOrigin.z + rayDir.z * maxRayDistance) > -nearZ) ? (-nearZ - rayOrigin.z) / rayDir.z : maxRayDistance; vec3 rayEnd = rayOrigin + rayDir * rayLength; vec4 H0 = projection * vec4(rayOrigin, 1.0); vec4 H1 = projection * vec4(rayEnd, 1.0); float k0 = 1.0 / H0.w, k1 = 1.0 / H1.w; vec3 Q0 = rayOrigin * k0, Q1 = rayEnd * k1; vec2 P0 = (H0.xy * k0 * 0.5 + 0.5) * viewportSize; vec2 P1 = (H1.xy * k1 * 0.5 + 0.5) * viewportSize; P1 += dot(P1 - P0, P1 - P0) < 0.0001 ? 0.01 : 0.0; vec2 delta = P1 - P0; bool permute = false; if (abs(delta.x) < abs(delta.y)) { permute = true; delta = delta.yx; P0 = P0.yx; P1 = P1.yx; } float stepDir = sign(delta.x); float invdx = stepDir / delta.x; vec3 dQ = (Q1 - Q0) * invdx; float dk = (k1 - k0) * invdx; vec2 dP = vec2(stepDir, delta.y * invdx); float strideScaler = 1.0 - min(1.0, -rayOrigin.z / pixelStrideZCutoff); float pixStride = 1.0 + strideScaler * pixelStride; dP *= pixStride; dQ *= pixStride; dk *= pixStride; vec4 pqk = vec4(P0, Q0.z, k0); vec4 dPQK = vec4(dP, dQ.z, dk); pqk += dPQK * jitter; float rayZFar = (dPQK.z * 0.5 + pqk.z) / (dPQK.w * 0.5 + pqk.w); float rayZNear; bool intersect = false; vec2 texelSize = 1.0 / viewportSize; iterationCount = 0.0; for (int i = 0; i < MAX_ITERATION; i++) { pqk += dPQK; rayZNear = rayZFar; rayZFar = (dPQK.z * 0.5 + pqk.z) / (dPQK.w * 0.5 + pqk.w); hitPixel = permute ? pqk.yx : pqk.xy; hitPixel *= texelSize; intersect = rayIntersectDepth(rayZNear, rayZFar, hitPixel); iterationCount += 1.0; if (intersect) { break; } } Q0.xy += dQ.xy * iterationCount; Q0.z = pqk.z; hitPoint = Q0 / pqk.w; return intersect; } float calculateAlpha( float iterationCount, float reflectivity, vec2 hitPixel, vec3 hitPoint, float dist, vec3 rayDir ) { float alpha = clamp(reflectivity, 0.0, 1.0); alpha *= 1.0 - (iterationCount / float(MAX_ITERATION)); vec2 hitPixelNDC = hitPixel * 2.0 - 1.0; float maxDimension = min(1.0, max(abs(hitPixelNDC.x), abs(hitPixelNDC.y))); alpha *= 1.0 - max(0.0, maxDimension - screenEdgeFadeStart) / (1.0 - screenEdgeFadeStart); float _eyeFadeStart = eyeFadeStart; float _eyeFadeEnd = eyeFadeEnd; if (_eyeFadeStart > _eyeFadeEnd) { float tmp = _eyeFadeEnd; _eyeFadeEnd = _eyeFadeStart; _eyeFadeStart = tmp; } float eyeDir = clamp(rayDir.z, _eyeFadeStart, _eyeFadeEnd); alpha *= 1.0 - (eyeDir - _eyeFadeStart) / (_eyeFadeEnd - _eyeFadeStart); alpha *= 1.0 - clamp(dist / maxRayDistance, 0.0, 1.0); return alpha; } @import clay.util.rand @import clay.util.rgbm void main() { vec4 normalAndGloss = texture2D(gBufferTexture1, v_Texcoord); if (dot(normalAndGloss.rgb, vec3(1.0)) == 0.0) { discard; } float g = normalAndGloss.a; if (g <= minGlossiness) { discard; } float reflectivity = (g - minGlossiness) / (1.0 - minGlossiness); vec3 N = normalAndGloss.rgb * 2.0 - 1.0; N = normalize((viewInverseTranspose * vec4(N, 0.0)).xyz); vec4 projectedPos = vec4(v_Texcoord * 2.0 - 1.0, fetchDepth(gBufferTexture2, v_Texcoord), 1.0); vec4 pos = projectionInv * projectedPos; vec3 rayOrigin = pos.xyz / pos.w; vec3 rayDir = normalize(reflect(normalize(rayOrigin), N)); vec2 hitPixel; vec3 hitPoint; float iterationCount; vec2 uv2 = v_Texcoord * viewportSize; float jitter = rand(fract(v_Texcoord + jitterOffset)); bool intersect = traceScreenSpaceRay(rayOrigin, rayDir, jitter, hitPixel, hitPoint, iterationCount); float dist = distance(rayOrigin, hitPoint); float alpha = calculateAlpha(iterationCount, reflectivity, hitPixel, hitPoint, dist, rayDir) * float(intersect); vec3 hitNormal = texture2D(gBufferTexture1, hitPixel).rgb * 2.0 - 1.0; hitNormal = normalize((viewInverseTranspose * vec4(hitNormal, 0.0)).xyz); if (dot(hitNormal, rayDir) >= 0.0) { discard; } if (!intersect) { discard; } vec4 color = decodeHDR(texture2D(sourceTexture, hitPixel)); gl_FragColor = encodeHDR(vec4(color.rgb * alpha, color.a)); } @end @export ecgl.ssr.blur uniform sampler2D texture; uniform sampler2D gBufferTexture1; uniform sampler2D gBufferTexture2; uniform mat4 projection; uniform float depthRange : 0.05; varying vec2 v_Texcoord; uniform vec2 textureSize; uniform float blurSize : 4.0; #ifdef BLEND #ifdef SSAOTEX_ENABLED uniform sampler2D ssaoTex; #endif uniform sampler2D sourceTexture; #endif float getLinearDepth(vec2 coord) { float depth = texture2D(gBufferTexture2, coord).r * 2.0 - 1.0; return projection[3][2] / (depth * projection[2][3] - projection[2][2]); } @import clay.util.rgbm void main() { @import clay.compositor.kernel.gaussian_9 vec4 centerNTexel = texture2D(gBufferTexture1, v_Texcoord); float g = centerNTexel.a; float maxBlurSize = clamp(1.0 - g + 0.1, 0.0, 1.0) * blurSize; #ifdef VERTICAL vec2 off = vec2(0.0, maxBlurSize / textureSize.y); #else vec2 off = vec2(maxBlurSize / textureSize.x, 0.0); #endif vec2 coord = v_Texcoord; vec4 sum = vec4(0.0); float weightAll = 0.0; vec3 cN = centerNTexel.rgb * 2.0 - 1.0; float cD = getLinearDepth(v_Texcoord); for (int i = 0; i < 9; i++) { vec2 coord = clamp((float(i) - 4.0) * off + v_Texcoord, vec2(0.0), vec2(1.0)); float w = gaussianKernel[i] * clamp(dot(cN, texture2D(gBufferTexture1, coord).rgb * 2.0 - 1.0), 0.0, 1.0); float d = getLinearDepth(coord); w *= (1.0 - smoothstep(abs(cD - d) / depthRange, 0.0, 1.0)); weightAll += w; sum += decodeHDR(texture2D(texture, coord)) * w; } #ifdef BLEND float aoFactor = 1.0; #ifdef SSAOTEX_ENABLED aoFactor = texture2D(ssaoTex, v_Texcoord).r; #endif gl_FragColor = encodeHDR( sum / weightAll * aoFactor + decodeHDR(texture2D(sourceTexture, v_Texcoord)) ); #else gl_FragColor = encodeHDR(sum / weightAll); #endif } @end`},function(He,Fe,Ce){"use strict";Fe.a=[0,0,-.321585265978,-.154972575841,.458126042375,.188473391593,.842080129861,.527766490688,.147304551086,-.659453822776,-.331943915203,-.940619700594,.0479226680259,.54812163202,.701581552186,-.709825561388,-.295436780218,.940589268233,-.901489676764,.237713156085,.973570876096,-.109899459384,-.866792314779,-.451805525005,.330975007087,.800048655954,-.344275183665,.381779221166,-.386139432542,-.437418421534,-.576478634965,-.0148463392551,.385798197415,-.262426961053,-.666302061145,.682427250835,-.628010632582,-.732836215494,.10163141741,-.987658134403,.711995289051,-.320024291314,.0296005138058,.950296523438,.0130612307608,-.351024443122,-.879596633704,-.10478487883,.435712737232,.504254490347,.779203817497,.206477676721,.388264289969,-.896736162545,-.153106280781,-.629203242522,-.245517550697,.657969239148,.126830499058,.26862328493,-.634888119007,-.302301223431,.617074219636,.779817204925]},function(He,Fe,Ce){"use strict";var _e=Ce(5),Pe=Ce(6),ge=Ce(7),Ae=Ce(10),be=Ce(17),we=Ce(14),pe=Ce(54),ye=Ce(168);ge.a.import(ye.a);function xe(ne,le,oe,de,he){var ie=ne.gl;le.setUniform(ie,"1i",oe,he),ie.activeTexture(ie.TEXTURE0+he),de.isRenderable()?de.bind(ne):de.unbind(ne)}function ce(ne,le,oe,de,he){var ie,ue,ve,Se,De=ne.gl;return function(Re,Ne,ze){if(!(Se&&Se.material===Re.material)){var Ge=Re.material,Xe=Re.__program,Qe=Ge.get("roughness");Qe==null&&(Qe=1);var nt=Ge.get("normalMap")||le,$e=Ge.get("roughnessMap"),qe=Ge.get("bumpMap"),ot=Ge.get("uvRepeat"),at=Ge.get("uvOffset"),lt=Ge.get("detailUvRepeat"),rt=Ge.get("detailUvOffset"),ut=!!qe&&Ge.isTextureEnabled("bumpMap"),yt=!!$e&&Ge.isTextureEnabled("roughnessMap"),ft=Ge.isDefined("fragment","DOUBLE_SIDED");qe=qe||oe,$e=$e||de,ze!==Ne?(Ne.set("normalMap",nt),Ne.set("bumpMap",qe),Ne.set("roughnessMap",$e),Ne.set("useBumpMap",ut),Ne.set("useRoughnessMap",yt),Ne.set("doubleSide",ft),ot!=null&&Ne.set("uvRepeat",ot),at!=null&&Ne.set("uvOffset",at),lt!=null&&Ne.set("detailUvRepeat",lt),rt!=null&&Ne.set("detailUvOffset",rt),Ne.set("roughness",Qe)):(Xe.setUniform(De,"1f","roughness",Qe),ie!==nt&&xe(ne,Xe,"normalMap",nt,0),ue!==qe&&qe&&xe(ne,Xe,"bumpMap",qe,1),ve!==$e&&$e&&xe(ne,Xe,"roughnessMap",$e,2),ot!=null&&Xe.setUniform(De,"2f","uvRepeat",ot),at!=null&&Xe.setUniform(De,"2f","uvOffset",at),lt!=null&&Xe.setUniform(De,"2f","detailUvRepeat",lt),rt!=null&&Xe.setUniform(De,"2f","detailUvOffset",rt),Xe.setUniform(De,"1i","useBumpMap",+ut),Xe.setUniform(De,"1i","useRoughnessMap",+yt),Xe.setUniform(De,"1i","doubleSide",+ft)),ie=nt,ue=qe,ve=$e,Se=Re}}}function te(ne){ne=ne||{},this._depthTex=new _e.a({format:Pe.a.DEPTH_COMPONENT,type:Pe.a.UNSIGNED_INT}),this._normalTex=new _e.a({type:Pe.a.HALF_FLOAT}),this._framebuffer=new Ae.a,this._framebuffer.attach(this._normalTex),this._framebuffer.attach(this._depthTex,Ae.a.DEPTH_ATTACHMENT),this._normalMaterial=new be.a({shader:new ge.a(ge.a.source("ecgl.normal.vertex"),ge.a.source("ecgl.normal.fragment"))}),this._normalMaterial.enableTexture(["normalMap","bumpMap","roughnessMap"]),this._defaultNormalMap=pe.a.createBlank("#000"),this._defaultBumpMap=pe.a.createBlank("#000"),this._defaultRoughessMap=pe.a.createBlank("#000"),this._debugPass=new we.a({fragment:ge.a.source("clay.compositor.output")}),this._debugPass.setUniform("texture",this._normalTex),this._debugPass.material.undefine("fragment","OUTPUT_ALPHA")}te.prototype.getDepthTexture=function(){return this._depthTex},te.prototype.getNormalTexture=function(){return this._normalTex},te.prototype.update=function(ne,le,oe){var de=ne.getWidth(),he=ne.getHeight(),ie=this._depthTex,ue=this._normalTex,ve=this._normalMaterial;ie.width=de,ie.height=he,ue.width=de,ue.height=he;var Se=le.opaqueList;this._framebuffer.bind(ne),ne.gl.clearColor(0,0,0,0),ne.gl.clear(ne.gl.COLOR_BUFFER_BIT|ne.gl.DEPTH_BUFFER_BIT),ne.gl.disable(ne.gl.BLEND),ne.renderPass(Se,oe,{getMaterial:function(){return ve},ifRender:function(De){return De.renderNormal},beforeRender:ce(ne,this._defaultNormalMap,this._defaultBumpMap,this._defaultRoughessMap,this._normalMaterial),sort:ne.opaqueSortCompare}),this._framebuffer.unbind(ne)},te.prototype.renderDebug=function(ne){this._debugPass.render(ne)},te.prototype.dispose=function(ne){this._depthTex.dispose(ne),this._normalTex.dispose(ne)},Fe.a=te},function(He,Fe,Ce){"use strict";Fe.a=`@export ecgl.normal.vertex @import ecgl.common.transformUniforms @import ecgl.common.uv.header @import ecgl.common.attributes varying vec3 v_Normal; varying vec3 v_WorldPosition; @import ecgl.common.normalMap.vertexHeader @import ecgl.common.vertexAnimation.header void main() { @import ecgl.common.vertexAnimation.main @import ecgl.common.uv.main v_Normal = normalize((worldInverseTranspose * vec4(normal, 0.0)).xyz); v_WorldPosition = (world * vec4(pos, 1.0)).xyz; @import ecgl.common.normalMap.vertexMain gl_Position = worldViewProjection * vec4(pos, 1.0); } @end @export ecgl.normal.fragment #define ROUGHNESS_CHANEL 0 uniform bool useBumpMap; uniform bool useRoughnessMap; uniform bool doubleSide; uniform float roughness; @import ecgl.common.uv.fragmentHeader varying vec3 v_Normal; varying vec3 v_WorldPosition; uniform mat4 viewInverse : VIEWINVERSE; @import ecgl.common.normalMap.fragmentHeader @import ecgl.common.bumpMap.header uniform sampler2D roughnessMap; void main() { vec3 N = v_Normal; bool flipNormal = false; if (doubleSide) { vec3 eyePos = viewInverse[3].xyz; vec3 V = normalize(eyePos - v_WorldPosition); if (dot(N, V) < 0.0) { flipNormal = true; } } @import ecgl.common.normalMap.fragmentMain if (useBumpMap) { N = bumpNormal(v_WorldPosition, v_Normal, N); } float g = 1.0 - roughness; if (useRoughnessMap) { float g2 = 1.0 - texture2D(roughnessMap, v_DetailTexcoord)[ROUGHNESS_CHANEL]; g = clamp(g2 + (g - 0.5) * 2.0, 0.0, 1.0); } if (flipNormal) { N = -N; } gl_FragColor.rgb = (N.xyz + 1.0) * 0.5; gl_FragColor.a = g; } @end`},function(He,Fe,Ce){"use strict";var _e=Ce(9),Pe=Ce(4),ge=Ce(5),Ae=Ce(6),be=Ce(14),we=Ce(7),pe=Ce(10);function ye(xe){xe=xe||{},this._edgePass=new be.a({fragment:we.a.source("ecgl.edge")}),this._edgePass.setUniform("normalTexture",xe.normalTexture),this._edgePass.setUniform("depthTexture",xe.depthTexture),this._targetTexture=new ge.a({type:Ae.a.HALF_FLOAT}),this._frameBuffer=new pe.a,this._frameBuffer.attach(this._targetTexture)}ye.prototype.update=function(xe,ce,te,ne){var le=xe.getWidth(),oe=xe.getHeight(),de=this._targetTexture;de.width=le,de.height=oe;var he=this._frameBuffer;he.bind(xe),this._edgePass.setUniform("projectionInv",ce.invProjectionMatrix.array),this._edgePass.setUniform("textureSize",[le,oe]),this._edgePass.setUniform("texture",te),this._edgePass.render(xe),he.unbind(xe)},ye.prototype.getTargetTexture=function(){return this._targetTexture},ye.prototype.setParameter=function(xe,ce){this._edgePass.setUniform(xe,ce)},ye.prototype.dispose=function(xe){this._targetTexture.dispose(xe),this._frameBuffer.dispose(xe)},Fe.a=ye},function(He,Fe,Ce){"use strict";Fe.a={type:"compositor",nodes:[{name:"source",type:"texture",outputs:{color:{}}},{name:"source_half",shader:"#source(clay.compositor.downsample)",inputs:{texture:"source"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 2)",height:"expr(height * 1.0 / 2)",type:"HALF_FLOAT"}}},parameters:{textureSize:"expr( [width * 1.0, height * 1.0] )"}},{name:"bright",shader:"#source(clay.compositor.bright)",inputs:{texture:"source_half"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 2)",height:"expr(height * 1.0 / 2)",type:"HALF_FLOAT"}}},parameters:{threshold:2,scale:4,textureSize:"expr([width * 1.0 / 2, height / 2])"}},{name:"bright_downsample_4",shader:"#source(clay.compositor.downsample)",inputs:{texture:"bright"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 4)",height:"expr(height * 1.0 / 4)",type:"HALF_FLOAT"}}},parameters:{textureSize:"expr( [width * 1.0 / 2, height / 2] )"}},{name:"bright_downsample_8",shader:"#source(clay.compositor.downsample)",inputs:{texture:"bright_downsample_4"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 8)",height:"expr(height * 1.0 / 8)",type:"HALF_FLOAT"}}},parameters:{textureSize:"expr( [width * 1.0 / 4, height / 4] )"}},{name:"bright_downsample_16",shader:"#source(clay.compositor.downsample)",inputs:{texture:"bright_downsample_8"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 16)",height:"expr(height * 1.0 / 16)",type:"HALF_FLOAT"}}},parameters:{textureSize:"expr( [width * 1.0 / 8, height / 8] )"}},{name:"bright_downsample_32",shader:"#source(clay.compositor.downsample)",inputs:{texture:"bright_downsample_16"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 32)",height:"expr(height * 1.0 / 32)",type:"HALF_FLOAT"}}},parameters:{textureSize:"expr( [width * 1.0 / 16, height / 16] )"}},{name:"bright_upsample_16_blur_h",shader:"#source(clay.compositor.gaussian_blur)",inputs:{texture:"bright_downsample_32"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 16)",height:"expr(height * 1.0 / 16)",type:"HALF_FLOAT"}}},parameters:{blurSize:1,blurDir:0,textureSize:"expr( [width * 1.0 / 32, height / 32] )"}},{name:"bright_upsample_16_blur_v",shader:"#source(clay.compositor.gaussian_blur)",inputs:{texture:"bright_upsample_16_blur_h"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 16)",height:"expr(height * 1.0 / 16)",type:"HALF_FLOAT"}}},parameters:{blurSize:1,blurDir:1,textureSize:"expr( [width * 1.0 / 16, height * 1.0 / 16] )"}},{name:"bright_upsample_8_blur_h",shader:"#source(clay.compositor.gaussian_blur)",inputs:{texture:"bright_downsample_16"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 8)",height:"expr(height * 1.0 / 8)",type:"HALF_FLOAT"}}},parameters:{blurSize:1,blurDir:0,textureSize:"expr( [width * 1.0 / 16, height * 1.0 / 16] )"}},{name:"bright_upsample_8_blur_v",shader:"#source(clay.compositor.gaussian_blur)",inputs:{texture:"bright_upsample_8_blur_h"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 8)",height:"expr(height * 1.0 / 8)",type:"HALF_FLOAT"}}},parameters:{blurSize:1,blurDir:1,textureSize:"expr( [width * 1.0 / 8, height * 1.0 / 8] )"}},{name:"bright_upsample_8_blend",shader:"#source(clay.compositor.blend)",inputs:{texture1:"bright_upsample_8_blur_v",texture2:"bright_upsample_16_blur_v"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 8)",height:"expr(height * 1.0 / 8)",type:"HALF_FLOAT"}}},parameters:{weight1:.3,weight2:.7}},{name:"bright_upsample_4_blur_h",shader:"#source(clay.compositor.gaussian_blur)",inputs:{texture:"bright_downsample_8"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 4)",height:"expr(height * 1.0 / 4)",type:"HALF_FLOAT"}}},parameters:{blurSize:1,blurDir:0,textureSize:"expr( [width * 1.0 / 8, height * 1.0 / 8] )"}},{name:"bright_upsample_4_blur_v",shader:"#source(clay.compositor.gaussian_blur)",inputs:{texture:"bright_upsample_4_blur_h"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 4)",height:"expr(height * 1.0 / 4)",type:"HALF_FLOAT"}}},parameters:{blurSize:1,blurDir:1,textureSize:"expr( [width * 1.0 / 4, height * 1.0 / 4] )"}},{name:"bright_upsample_4_blend",shader:"#source(clay.compositor.blend)",inputs:{texture1:"bright_upsample_4_blur_v",texture2:"bright_upsample_8_blend"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 4)",height:"expr(height * 1.0 / 4)",type:"HALF_FLOAT"}}},parameters:{weight1:.3,weight2:.7}},{name:"bright_upsample_2_blur_h",shader:"#source(clay.compositor.gaussian_blur)",inputs:{texture:"bright_downsample_4"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 2)",height:"expr(height * 1.0 / 2)",type:"HALF_FLOAT"}}},parameters:{blurSize:1,blurDir:0,textureSize:"expr( [width * 1.0 / 4, height * 1.0 / 4] )"}},{name:"bright_upsample_2_blur_v",shader:"#source(clay.compositor.gaussian_blur)",inputs:{texture:"bright_upsample_2_blur_h"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 2)",height:"expr(height * 1.0 / 2)",type:"HALF_FLOAT"}}},parameters:{blurSize:1,blurDir:1,textureSize:"expr( [width * 1.0 / 2, height * 1.0 / 2] )"}},{name:"bright_upsample_2_blend",shader:"#source(clay.compositor.blend)",inputs:{texture1:"bright_upsample_2_blur_v",texture2:"bright_upsample_4_blend"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 2)",height:"expr(height * 1.0 / 2)",type:"HALF_FLOAT"}}},parameters:{weight1:.3,weight2:.7}},{name:"bright_upsample_full_blur_h",shader:"#source(clay.compositor.gaussian_blur)",inputs:{texture:"bright"},outputs:{color:{parameters:{width:"expr(width * 1.0)",height:"expr(height * 1.0)",type:"HALF_FLOAT"}}},parameters:{blurSize:1,blurDir:0,textureSize:"expr( [width * 1.0 / 2, height * 1.0 / 2] )"}},{name:"bright_upsample_full_blur_v",shader:"#source(clay.compositor.gaussian_blur)",inputs:{texture:"bright_upsample_full_blur_h"},outputs:{color:{parameters:{width:"expr(width * 1.0)",height:"expr(height * 1.0)",type:"HALF_FLOAT"}}},parameters:{blurSize:1,blurDir:1,textureSize:"expr( [width * 1.0, height * 1.0] )"}},{name:"bloom_composite",shader:"#source(clay.compositor.blend)",inputs:{texture1:"bright_upsample_full_blur_v",texture2:"bright_upsample_2_blend"},outputs:{color:{parameters:{width:"expr(width * 1.0)",height:"expr(height * 1.0)",type:"HALF_FLOAT"}}},parameters:{weight1:.3,weight2:.7}},{name:"coc",shader:"#source(ecgl.dof.coc)",outputs:{color:{parameters:{minFilter:"NEAREST",magFilter:"NEAREST",width:"expr(width * 1.0)",height:"expr(height * 1.0)"}}},parameters:{focalDist:50,focalRange:30}},{name:"dof_far_blur",shader:"#source(ecgl.dof.diskBlur)",inputs:{texture:"source",coc:"coc"},outputs:{color:{parameters:{width:"expr(width * 1.0)",height:"expr(height * 1.0)",type:"HALF_FLOAT"}}},parameters:{textureSize:"expr( [width * 1.0, height * 1.0] )"}},{name:"dof_near_blur",shader:"#source(ecgl.dof.diskBlur)",inputs:{texture:"source",coc:"coc"},outputs:{color:{parameters:{width:"expr(width * 1.0)",height:"expr(height * 1.0)",type:"HALF_FLOAT"}}},parameters:{textureSize:"expr( [width * 1.0, height * 1.0] )"},defines:{BLUR_NEARFIELD:null}},{name:"dof_coc_blur",shader:"#source(ecgl.dof.diskBlur)",inputs:{texture:"coc"},outputs:{color:{parameters:{minFilter:"NEAREST",magFilter:"NEAREST",width:"expr(width * 1.0)",height:"expr(height * 1.0)"}}},parameters:{textureSize:"expr( [width * 1.0, height * 1.0] )"},defines:{BLUR_COC:null}},{name:"dof_composite",shader:"#source(ecgl.dof.composite)",inputs:{original:"source",blurred:"dof_far_blur",nearfield:"dof_near_blur",coc:"coc",nearcoc:"dof_coc_blur"},outputs:{color:{parameters:{width:"expr(width * 1.0)",height:"expr(height * 1.0)",type:"HALF_FLOAT"}}}},{name:"composite",shader:"#source(clay.compositor.hdr.composite)",inputs:{texture:"source",bloom:"bloom_composite"},defines:{}},{name:"FXAA",shader:"#source(clay.compositor.fxaa)",inputs:{texture:"composite"}}]}},function(He,Fe,Ce){"use strict";Fe.a=`@export clay.compositor.kernel.gaussian_9 float gaussianKernel[9]; gaussianKernel[0] = 0.07; gaussianKernel[1] = 0.09; gaussianKernel[2] = 0.12; gaussianKernel[3] = 0.14; gaussianKernel[4] = 0.16; gaussianKernel[5] = 0.14; gaussianKernel[6] = 0.12; gaussianKernel[7] = 0.09; gaussianKernel[8] = 0.07; @end @export clay.compositor.kernel.gaussian_13 float gaussianKernel[13]; gaussianKernel[0] = 0.02; gaussianKernel[1] = 0.03; gaussianKernel[2] = 0.06; gaussianKernel[3] = 0.08; gaussianKernel[4] = 0.11; gaussianKernel[5] = 0.13; gaussianKernel[6] = 0.14; gaussianKernel[7] = 0.13; gaussianKernel[8] = 0.11; gaussianKernel[9] = 0.08; gaussianKernel[10] = 0.06; gaussianKernel[11] = 0.03; gaussianKernel[12] = 0.02; @end @export clay.compositor.gaussian_blur #define SHADER_NAME gaussian_blur uniform sampler2D texture;varying vec2 v_Texcoord; uniform float blurSize : 2.0; uniform vec2 textureSize : [512.0, 512.0]; uniform float blurDir : 0.0; @import clay.util.rgbm @import clay.util.clamp_sample void main (void) { @import clay.compositor.kernel.gaussian_9 vec2 off = blurSize / textureSize; off *= vec2(1.0 - blurDir, blurDir); vec4 sum = vec4(0.0); float weightAll = 0.0; for (int i = 0; i < 9; i++) { float w = gaussianKernel[i]; vec4 texel = decodeHDR(clampSample(texture, v_Texcoord + float(i - 4) * off)); sum += texel * w; weightAll += w; } gl_FragColor = encodeHDR(sum / max(weightAll, 0.01)); } @end `},function(He,Fe,Ce){"use strict";Fe.a=` @export clay.compositor.lut varying vec2 v_Texcoord; uniform sampler2D texture; uniform sampler2D lookup; void main() { vec4 tex = texture2D(texture, v_Texcoord); float blueColor = tex.b * 63.0; vec2 quad1; quad1.y = floor(floor(blueColor) / 8.0); quad1.x = floor(blueColor) - (quad1.y * 8.0); vec2 quad2; quad2.y = floor(ceil(blueColor) / 8.0); quad2.x = ceil(blueColor) - (quad2.y * 8.0); vec2 texPos1; texPos1.x = (quad1.x * 0.125) + 0.5/512.0 + ((0.125 - 1.0/512.0) * tex.r); texPos1.y = (quad1.y * 0.125) + 0.5/512.0 + ((0.125 - 1.0/512.0) * tex.g); vec2 texPos2; texPos2.x = (quad2.x * 0.125) + 0.5/512.0 + ((0.125 - 1.0/512.0) * tex.r); texPos2.y = (quad2.y * 0.125) + 0.5/512.0 + ((0.125 - 1.0/512.0) * tex.g); vec4 newColor1 = texture2D(lookup, texPos1); vec4 newColor2 = texture2D(lookup, texPos2); vec4 newColor = mix(newColor1, newColor2, fract(blueColor)); gl_FragColor = vec4(newColor.rgb, tex.w); } @end`},function(He,Fe,Ce){"use strict";Fe.a=`@export clay.compositor.output #define OUTPUT_ALPHA varying vec2 v_Texcoord; uniform sampler2D texture; @import clay.util.rgbm void main() { vec4 tex = decodeHDR(texture2D(texture, v_Texcoord)); gl_FragColor.rgb = tex.rgb; #ifdef OUTPUT_ALPHA gl_FragColor.a = tex.a; #else gl_FragColor.a = 1.0; #endif gl_FragColor = encodeHDR(gl_FragColor); #ifdef PREMULTIPLY_ALPHA gl_FragColor.rgb *= gl_FragColor.a; #endif } @end`},function(He,Fe,Ce){"use strict";Fe.a=`@export clay.compositor.bright uniform sampler2D texture; uniform float threshold : 1; uniform float scale : 1.0; uniform vec2 textureSize: [512, 512]; varying vec2 v_Texcoord; const vec3 lumWeight = vec3(0.2125, 0.7154, 0.0721); @import clay.util.rgbm vec4 median(vec4 a, vec4 b, vec4 c) { return a + b + c - min(min(a, b), c) - max(max(a, b), c); } void main() { vec4 texel = decodeHDR(texture2D(texture, v_Texcoord)); #ifdef ANTI_FLICKER vec3 d = 1.0 / textureSize.xyx * vec3(1.0, 1.0, 0.0); vec4 s1 = decodeHDR(texture2D(texture, v_Texcoord - d.xz)); vec4 s2 = decodeHDR(texture2D(texture, v_Texcoord + d.xz)); vec4 s3 = decodeHDR(texture2D(texture, v_Texcoord - d.zy)); vec4 s4 = decodeHDR(texture2D(texture, v_Texcoord + d.zy)); texel = median(median(texel, s1, s2), s3, s4); #endif float lum = dot(texel.rgb , lumWeight); vec4 color; if (lum > threshold && texel.a > 0.0) { color = vec4(texel.rgb * scale, texel.a * scale); } else { color = vec4(0.0); } gl_FragColor = encodeHDR(color); } @end `},function(He,Fe,Ce){"use strict";Fe.a=`@export clay.compositor.downsample uniform sampler2D texture; uniform vec2 textureSize : [512, 512]; varying vec2 v_Texcoord; @import clay.util.rgbm float brightness(vec3 c) { return max(max(c.r, c.g), c.b); } @import clay.util.clamp_sample void main() { vec4 d = vec4(-1.0, -1.0, 1.0, 1.0) / textureSize.xyxy; #ifdef ANTI_FLICKER vec3 s1 = decodeHDR(clampSample(texture, v_Texcoord + d.xy)).rgb; vec3 s2 = decodeHDR(clampSample(texture, v_Texcoord + d.zy)).rgb; vec3 s3 = decodeHDR(clampSample(texture, v_Texcoord + d.xw)).rgb; vec3 s4 = decodeHDR(clampSample(texture, v_Texcoord + d.zw)).rgb; float s1w = 1.0 / (brightness(s1) + 1.0); float s2w = 1.0 / (brightness(s2) + 1.0); float s3w = 1.0 / (brightness(s3) + 1.0); float s4w = 1.0 / (brightness(s4) + 1.0); float oneDivideSum = 1.0 / (s1w + s2w + s3w + s4w); vec4 color = vec4( (s1 * s1w + s2 * s2w + s3 * s3w + s4 * s4w) * oneDivideSum, 1.0 ); #else vec4 color = decodeHDR(clampSample(texture, v_Texcoord + d.xy)); color += decodeHDR(clampSample(texture, v_Texcoord + d.zy)); color += decodeHDR(clampSample(texture, v_Texcoord + d.xw)); color += decodeHDR(clampSample(texture, v_Texcoord + d.zw)); color *= 0.25; #endif gl_FragColor = encodeHDR(color); } @end`},function(He,Fe,Ce){"use strict";Fe.a=` @export clay.compositor.upsample #define HIGH_QUALITY uniform sampler2D texture; uniform vec2 textureSize : [512, 512]; uniform float sampleScale: 0.5; varying vec2 v_Texcoord; @import clay.util.rgbm @import clay.util.clamp_sample void main() { #ifdef HIGH_QUALITY vec4 d = vec4(1.0, 1.0, -1.0, 0.0) / textureSize.xyxy * sampleScale; vec4 s; s = decodeHDR(clampSample(texture, v_Texcoord - d.xy)); s += decodeHDR(clampSample(texture, v_Texcoord - d.wy)) * 2.0; s += decodeHDR(clampSample(texture, v_Texcoord - d.zy)); s += decodeHDR(clampSample(texture, v_Texcoord + d.zw)) * 2.0; s += decodeHDR(clampSample(texture, v_Texcoord )) * 4.0; s += decodeHDR(clampSample(texture, v_Texcoord + d.xw)) * 2.0; s += decodeHDR(clampSample(texture, v_Texcoord + d.zy)); s += decodeHDR(clampSample(texture, v_Texcoord + d.wy)) * 2.0; s += decodeHDR(clampSample(texture, v_Texcoord + d.xy)); gl_FragColor = encodeHDR(s / 16.0); #else vec4 d = vec4(-1.0, -1.0, +1.0, +1.0) / textureSize.xyxy; vec4 s; s = decodeHDR(clampSample(texture, v_Texcoord + d.xy)); s += decodeHDR(clampSample(texture, v_Texcoord + d.zy)); s += decodeHDR(clampSample(texture, v_Texcoord + d.xw)); s += decodeHDR(clampSample(texture, v_Texcoord + d.zw)); gl_FragColor = encodeHDR(s / 4.0); #endif } @end`},function(He,Fe,Ce){"use strict";Fe.a=`@export clay.compositor.hdr.composite uniform sampler2D texture; #ifdef BLOOM_ENABLED uniform sampler2D bloom; #endif #ifdef LENSFLARE_ENABLED uniform sampler2D lensflare; uniform sampler2D lensdirt; #endif #ifdef LUM_ENABLED uniform sampler2D lum; #endif #ifdef LUT_ENABLED uniform sampler2D lut; #endif #ifdef COLOR_CORRECTION uniform float brightness : 0.0; uniform float contrast : 1.0; uniform float saturation : 1.0; #endif #ifdef VIGNETTE uniform float vignetteDarkness: 1.0; uniform float vignetteOffset: 1.0; #endif uniform float exposure : 1.0; uniform float bloomIntensity : 0.25; uniform float lensflareIntensity : 1; varying vec2 v_Texcoord; @import clay.util.srgb vec3 ACESToneMapping(vec3 color) { const float A = 2.51; const float B = 0.03; const float C = 2.43; const float D = 0.59; const float E = 0.14; return (color * (A * color + B)) / (color * (C * color + D) + E); } float eyeAdaption(float fLum) { return mix(0.2, fLum, 0.5); } #ifdef LUT_ENABLED vec3 lutTransform(vec3 color) { float blueColor = color.b * 63.0; vec2 quad1; quad1.y = floor(floor(blueColor) / 8.0); quad1.x = floor(blueColor) - (quad1.y * 8.0); vec2 quad2; quad2.y = floor(ceil(blueColor) / 8.0); quad2.x = ceil(blueColor) - (quad2.y * 8.0); vec2 texPos1; texPos1.x = (quad1.x * 0.125) + 0.5/512.0 + ((0.125 - 1.0/512.0) * color.r); texPos1.y = (quad1.y * 0.125) + 0.5/512.0 + ((0.125 - 1.0/512.0) * color.g); vec2 texPos2; texPos2.x = (quad2.x * 0.125) + 0.5/512.0 + ((0.125 - 1.0/512.0) * color.r); texPos2.y = (quad2.y * 0.125) + 0.5/512.0 + ((0.125 - 1.0/512.0) * color.g); vec4 newColor1 = texture2D(lut, texPos1); vec4 newColor2 = texture2D(lut, texPos2); vec4 newColor = mix(newColor1, newColor2, fract(blueColor)); return newColor.rgb; } #endif @import clay.util.rgbm void main() { vec4 texel = vec4(0.0); vec4 originalTexel = vec4(0.0); #ifdef TEXTURE_ENABLED texel = decodeHDR(texture2D(texture, v_Texcoord)); originalTexel = texel; #endif #ifdef BLOOM_ENABLED vec4 bloomTexel = decodeHDR(texture2D(bloom, v_Texcoord)); texel.rgb += bloomTexel.rgb * bloomIntensity; texel.a += bloomTexel.a * bloomIntensity; #endif #ifdef LENSFLARE_ENABLED texel += decodeHDR(texture2D(lensflare, v_Texcoord)) * texture2D(lensdirt, v_Texcoord) * lensflareIntensity; #endif texel.a = min(texel.a, 1.0); #ifdef LUM_ENABLED float fLum = texture2D(lum, vec2(0.5, 0.5)).r; float adaptedLumDest = 3.0 / (max(0.1, 1.0 + 10.0*eyeAdaption(fLum))); float exposureBias = adaptedLumDest * exposure; #else float exposureBias = exposure; #endif texel.rgb *= exposureBias; texel.rgb = ACESToneMapping(texel.rgb); texel = linearTosRGB(texel); #ifdef LUT_ENABLED texel.rgb = lutTransform(clamp(texel.rgb,vec3(0.0),vec3(1.0))); #endif #ifdef COLOR_CORRECTION texel.rgb = clamp(texel.rgb + vec3(brightness), 0.0, 1.0); texel.rgb = clamp((texel.rgb - vec3(0.5))*contrast+vec3(0.5), 0.0, 1.0); float lum = dot(texel.rgb, vec3(0.2125, 0.7154, 0.0721)); texel.rgb = mix(vec3(lum), texel.rgb, saturation); #endif #ifdef VIGNETTE vec2 uv = (v_Texcoord - vec2(0.5)) * vec2(vignetteOffset); texel.rgb = mix(texel.rgb, vec3(1.0 - vignetteDarkness), dot(uv, uv)); #endif gl_FragColor = encodeHDR(texel); #ifdef DEBUG #if DEBUG == 1 gl_FragColor = encodeHDR(decodeHDR(texture2D(texture, v_Texcoord))); #elif DEBUG == 2 gl_FragColor = encodeHDR(decodeHDR(texture2D(bloom, v_Texcoord)) * bloomIntensity); #elif DEBUG == 3 gl_FragColor = encodeHDR(decodeHDR(texture2D(lensflare, v_Texcoord) * lensflareIntensity)); #endif #endif if (originalTexel.a <= 0.01 && gl_FragColor.a > 1e-5) { gl_FragColor.a = dot(gl_FragColor.rgb, vec3(0.2125, 0.7154, 0.0721)); } #ifdef PREMULTIPLY_ALPHA gl_FragColor.rgb *= gl_FragColor.a; #endif } @end`},function(He,Fe,Ce){"use strict";Fe.a=`@export clay.compositor.blend #define SHADER_NAME blend #ifdef TEXTURE1_ENABLED uniform sampler2D texture1; uniform float weight1 : 1.0; #endif #ifdef TEXTURE2_ENABLED uniform sampler2D texture2; uniform float weight2 : 1.0; #endif #ifdef TEXTURE3_ENABLED uniform sampler2D texture3; uniform float weight3 : 1.0; #endif #ifdef TEXTURE4_ENABLED uniform sampler2D texture4; uniform float weight4 : 1.0; #endif #ifdef TEXTURE5_ENABLED uniform sampler2D texture5; uniform float weight5 : 1.0; #endif #ifdef TEXTURE6_ENABLED uniform sampler2D texture6; uniform float weight6 : 1.0; #endif varying vec2 v_Texcoord; @import clay.util.rgbm void main() { vec4 tex = vec4(0.0); #ifdef TEXTURE1_ENABLED tex += decodeHDR(texture2D(texture1, v_Texcoord)) * weight1; #endif #ifdef TEXTURE2_ENABLED tex += decodeHDR(texture2D(texture2, v_Texcoord)) * weight2; #endif #ifdef TEXTURE3_ENABLED tex += decodeHDR(texture2D(texture3, v_Texcoord)) * weight3; #endif #ifdef TEXTURE4_ENABLED tex += decodeHDR(texture2D(texture4, v_Texcoord)) * weight4; #endif #ifdef TEXTURE5_ENABLED tex += decodeHDR(texture2D(texture5, v_Texcoord)) * weight5; #endif #ifdef TEXTURE6_ENABLED tex += decodeHDR(texture2D(texture6, v_Texcoord)) * weight6; #endif gl_FragColor = encodeHDR(tex); } @end`},function(He,Fe,Ce){"use strict";Fe.a=`@export clay.compositor.fxaa uniform sampler2D texture; uniform vec4 viewport : VIEWPORT; varying vec2 v_Texcoord; #define FXAA_REDUCE_MIN (1.0/128.0) #define FXAA_REDUCE_MUL (1.0/8.0) #define FXAA_SPAN_MAX 8.0 @import clay.util.rgbm void main() { vec2 resolution = 1.0 / viewport.zw; vec3 rgbNW = decodeHDR( texture2D( texture, ( gl_FragCoord.xy + vec2( -1.0, -1.0 ) ) * resolution ) ).xyz; vec3 rgbNE = decodeHDR( texture2D( texture, ( gl_FragCoord.xy + vec2( 1.0, -1.0 ) ) * resolution ) ).xyz; vec3 rgbSW = decodeHDR( texture2D( texture, ( gl_FragCoord.xy + vec2( -1.0, 1.0 ) ) * resolution ) ).xyz; vec3 rgbSE = decodeHDR( texture2D( texture, ( gl_FragCoord.xy + vec2( 1.0, 1.0 ) ) * resolution ) ).xyz; vec4 rgbaM = decodeHDR( texture2D( texture, gl_FragCoord.xy * resolution ) ); vec3 rgbM = rgbaM.xyz; float opacity = rgbaM.w; vec3 luma = vec3( 0.299, 0.587, 0.114 ); float lumaNW = dot( rgbNW, luma ); float lumaNE = dot( rgbNE, luma ); float lumaSW = dot( rgbSW, luma ); float lumaSE = dot( rgbSE, luma ); float lumaM = dot( rgbM, luma ); float lumaMin = min( lumaM, min( min( lumaNW, lumaNE ), min( lumaSW, lumaSE ) ) ); float lumaMax = max( lumaM, max( max( lumaNW, lumaNE) , max( lumaSW, lumaSE ) ) ); vec2 dir; dir.x = -((lumaNW + lumaNE) - (lumaSW + lumaSE)); dir.y = ((lumaNW + lumaSW) - (lumaNE + lumaSE)); float dirReduce = max( ( lumaNW + lumaNE + lumaSW + lumaSE ) * ( 0.25 * FXAA_REDUCE_MUL ), FXAA_REDUCE_MIN ); float rcpDirMin = 1.0 / ( min( abs( dir.x ), abs( dir.y ) ) + dirReduce ); dir = min( vec2( FXAA_SPAN_MAX, FXAA_SPAN_MAX), max( vec2(-FXAA_SPAN_MAX, -FXAA_SPAN_MAX), dir * rcpDirMin)) * resolution; vec3 rgbA = decodeHDR( texture2D( texture, gl_FragCoord.xy * resolution + dir * ( 1.0 / 3.0 - 0.5 ) ) ).xyz; rgbA += decodeHDR( texture2D( texture, gl_FragCoord.xy * resolution + dir * ( 2.0 / 3.0 - 0.5 ) ) ).xyz; rgbA *= 0.5; vec3 rgbB = decodeHDR( texture2D( texture, gl_FragCoord.xy * resolution + dir * -0.5 ) ).xyz; rgbB += decodeHDR( texture2D( texture, gl_FragCoord.xy * resolution + dir * 0.5 ) ).xyz; rgbB *= 0.25; rgbB += rgbA * 0.5; float lumaB = dot( rgbB, luma ); if ( ( lumaB < lumaMin ) || ( lumaB > lumaMax ) ) { gl_FragColor = vec4( rgbA, opacity ); } else { gl_FragColor = vec4( rgbB, opacity ); } } @end`},function(He,Fe,Ce){"use strict";Fe.a=`@export ecgl.dof.coc uniform sampler2D depth; uniform float zNear: 0.1; uniform float zFar: 2000; uniform float focalDistance: 3; uniform float focalRange: 1; uniform float focalLength: 30; uniform float fstop: 2.8; varying vec2 v_Texcoord; @import clay.util.encode_float void main() { float z = texture2D(depth, v_Texcoord).r * 2.0 - 1.0; float dist = 2.0 * zNear * zFar / (zFar + zNear - z * (zFar - zNear)); float aperture = focalLength / fstop; float coc; float uppper = focalDistance + focalRange; float lower = focalDistance - focalRange; if (dist <= uppper && dist >= lower) { coc = 0.5; } else { float focalAdjusted = dist > uppper ? uppper : lower; coc = abs(aperture * (focalLength * (dist - focalAdjusted)) / (dist * (focalAdjusted - focalLength))); coc = clamp(coc, 0.0, 2.0) / 2.00001; if (dist < lower) { coc = -coc; } coc = coc * 0.5 + 0.5; } gl_FragColor = encodeFloat(coc); } @end @export ecgl.dof.composite #define DEBUG 0 uniform sampler2D original; uniform sampler2D blurred; uniform sampler2D nearfield; uniform sampler2D coc; uniform sampler2D nearcoc; varying vec2 v_Texcoord; @import clay.util.rgbm @import clay.util.float void main() { vec4 blurredColor = decodeHDR(texture2D(blurred, v_Texcoord)); vec4 originalColor = decodeHDR(texture2D(original, v_Texcoord)); float fCoc = decodeFloat(texture2D(coc, v_Texcoord)); fCoc = abs(fCoc * 2.0 - 1.0); float weight = smoothstep(0.0, 1.0, fCoc); #ifdef NEARFIELD_ENABLED vec4 nearfieldColor = decodeHDR(texture2D(nearfield, v_Texcoord)); float fNearCoc = decodeFloat(texture2D(nearcoc, v_Texcoord)); fNearCoc = abs(fNearCoc * 2.0 - 1.0); gl_FragColor = encodeHDR( mix( nearfieldColor, mix(originalColor, blurredColor, weight), pow(1.0 - fNearCoc, 4.0) ) ); #else gl_FragColor = encodeHDR(mix(originalColor, blurredColor, weight)); #endif } @end @export ecgl.dof.diskBlur #define POISSON_KERNEL_SIZE 16; uniform sampler2D texture; uniform sampler2D coc; varying vec2 v_Texcoord; uniform float blurRadius : 10.0; uniform vec2 textureSize : [512.0, 512.0]; uniform vec2 poissonKernel[POISSON_KERNEL_SIZE]; uniform float percent; float nrand(const in vec2 n) { return fract(sin(dot(n.xy ,vec2(12.9898,78.233))) * 43758.5453); } @import clay.util.rgbm @import clay.util.float void main() { vec2 offset = blurRadius / textureSize; float rnd = 6.28318 * nrand(v_Texcoord + 0.07 * percent ); float cosa = cos(rnd); float sina = sin(rnd); vec4 basis = vec4(cosa, -sina, sina, cosa); #if !defined(BLUR_NEARFIELD) && !defined(BLUR_COC) offset *= abs(decodeFloat(texture2D(coc, v_Texcoord)) * 2.0 - 1.0); #endif #ifdef BLUR_COC float cocSum = 0.0; #else vec4 color = vec4(0.0); #endif float weightSum = 0.0; for (int i = 0; i < POISSON_KERNEL_SIZE; i++) { vec2 ofs = poissonKernel[i]; ofs = vec2(dot(ofs, basis.xy), dot(ofs, basis.zw)); vec2 uv = v_Texcoord + ofs * offset; vec4 texel = texture2D(texture, uv); float w = 1.0; #ifdef BLUR_COC float fCoc = decodeFloat(texel) * 2.0 - 1.0; cocSum += clamp(fCoc, -1.0, 0.0) * w; #else texel = decodeHDR(texel); #if !defined(BLUR_NEARFIELD) float fCoc = decodeFloat(texture2D(coc, uv)) * 2.0 - 1.0; w *= abs(fCoc); #endif color += texel * w; #endif weightSum += w; } #ifdef BLUR_COC gl_FragColor = encodeFloat(clamp(cocSum / weightSum, -1.0, 0.0) * 0.5 + 0.5); #else color /= weightSum; gl_FragColor = encodeHDR(color); #endif } @end`},function(He,Fe,Ce){"use strict";Fe.a=`@export ecgl.edge uniform sampler2D texture; uniform sampler2D normalTexture; uniform sampler2D depthTexture; uniform mat4 projectionInv; uniform vec2 textureSize; uniform vec4 edgeColor: [0,0,0,0.8]; varying vec2 v_Texcoord; vec3 packColor(vec2 coord) { float z = texture2D(depthTexture, coord).r * 2.0 - 1.0; vec4 p = vec4(v_Texcoord * 2.0 - 1.0, z, 1.0); vec4 p4 = projectionInv * p; return vec3( texture2D(normalTexture, coord).rg, -p4.z / p4.w / 5.0 ); } void main() { vec2 cc = v_Texcoord; vec3 center = packColor(cc); float size = clamp(1.0 - (center.z - 10.0) / 100.0, 0.0, 1.0) * 0.5; float dx = size / textureSize.x; float dy = size / textureSize.y; vec2 coord; vec3 topLeft = packColor(cc+vec2(-dx, -dy)); vec3 top = packColor(cc+vec2(0.0, -dy)); vec3 topRight = packColor(cc+vec2(dx, -dy)); vec3 left = packColor(cc+vec2(-dx, 0.0)); vec3 right = packColor(cc+vec2(dx, 0.0)); vec3 bottomLeft = packColor(cc+vec2(-dx, dy)); vec3 bottom = packColor(cc+vec2(0.0, dy)); vec3 bottomRight = packColor(cc+vec2(dx, dy)); vec3 v = -topLeft-2.0*top-topRight+bottomLeft+2.0*bottom+bottomRight; vec3 h = -bottomLeft-2.0*left-topLeft+bottomRight+2.0*right+topRight; float edge = sqrt(dot(h, h) + dot(v, v)); edge = smoothstep(0.8, 1.0, edge); gl_FragColor = mix(texture2D(texture, v_Texcoord), vec4(edgeColor.rgb, 1.0), edgeColor.a * edge); } @end`},function(He,Fe,Ce){"use strict";var _e=Ce(43),Pe=Ce(14),ge=Ce(10),Ae=Ce(5),be=Ce(7),we=Ce(9);function pe(ye){for(var xe=[],ce=0;ce<30;ce++)xe.push([Object(_e.a)(ce,2),Object(_e.a)(ce,3)]);this._haltonSequence=xe,this._frame=0,this._sourceTex=new Ae.a,this._sourceFb=new ge.a,this._sourceFb.attach(this._sourceTex),this._prevFrameTex=new Ae.a,this._outputTex=new Ae.a;var te=this._blendPass=new Pe.a({fragment:be.a.source("clay.compositor.blend")});te.material.disableTexturesAll(),te.material.enableTexture(["texture1","texture2"]),this._blendFb=new ge.a({depthBuffer:!1}),this._outputPass=new Pe.a({fragment:be.a.source("clay.compositor.output"),blendWithPrevious:!0}),this._outputPass.material.define("fragment","OUTPUT_ALPHA"),this._outputPass.material.blend=function(ne){ne.blendEquationSeparate(ne.FUNC_ADD,ne.FUNC_ADD),ne.blendFuncSeparate(ne.ONE,ne.ONE_MINUS_SRC_ALPHA,ne.ONE,ne.ONE_MINUS_SRC_ALPHA)}}pe.prototype={constructor:pe,jitterProjection:function(ye,xe){var ce=ye.viewport,te=ce.devicePixelRatio||ye.getDevicePixelRatio(),ne=ce.width*te,le=ce.height*te,oe=this._haltonSequence[this._frame%this._haltonSequence.length],de=new we.a;de.array[12]=(oe[0]*2-1)/ne,de.array[13]=(oe[1]*2-1)/le,we.a.mul(xe.projectionMatrix,de,xe.projectionMatrix),we.a.invert(xe.invProjectionMatrix,xe.projectionMatrix)},resetFrame:function(){this._frame=0},getFrame:function(){return this._frame},getSourceFrameBuffer:function(){return this._sourceFb},getOutputTexture:function(){return this._outputTex},resize:function(ye,xe){this._prevFrameTex.width=ye,this._prevFrameTex.height=xe,this._outputTex.width=ye,this._outputTex.height=xe,this._sourceTex.width=ye,this._sourceTex.height=xe,this._prevFrameTex.dirty(),this._outputTex.dirty(),this._sourceTex.dirty()},isFinished:function(){return this._frame>=this._haltonSequence.length},render:function(ye,xe,ce){var te=this._blendPass;this._frame===0?(te.setUniform("weight1",0),te.setUniform("weight2",1)):(te.setUniform("weight1",.9),te.setUniform("weight2",.1)),te.setUniform("texture1",this._prevFrameTex),te.setUniform("texture2",xe||this._sourceTex),this._blendFb.attach(this._outputTex),this._blendFb.bind(ye),te.render(ye),this._blendFb.unbind(ye),ce||(this._outputPass.setUniform("texture",this._outputTex),this._outputPass.render(ye));var ne=this._prevFrameTex;this._prevFrameTex=this._outputTex,this._outputTex=ne,this._frame++},dispose:function(ye){this._sourceFb.dispose(ye),this._blendFb.dispose(ye),this._prevFrameTex.dispose(ye),this._outputTex.dispose(ye),this._sourceTex.dispose(ye),this._outputPass.dispose(ye),this._blendPass.dispose(ye)}},Fe.a=pe},function(He,Fe,Ce){"use strict";var _e=Ce(0),Pe=Ce.n(_e),ge=Ce(184),Ae=Ce(185),be=Ce(82);Pe.a.registerAction({type:"geo3DChangeCamera",event:"geo3dcamerachanged",update:"series:updateCamera"},function(we,pe){pe.eachComponent({mainType:"geo3D",query:we},function(ye){ye.setView(we)})})},function(He,Fe,Ce){"use strict";var _e=Ce(0),Pe=Ce.n(_e),ge=Ce(38),Ae=Ce(31),be=Ce(32),we=Ce(26),pe=Ce(80),ye=Pe.a.extendComponentModel({type:"geo3D",layoutMode:"box",coordinateSystem:null,optionUpdated:function(){var ce=this.option;ce.regions=this.getFilledRegions(ce.regions,ce.map);var te=Pe.a.helper.completeDimensions(["value"],ce.data,{encodeDef:this.get("encode"),dimsDef:this.get("dimensions")}),ne=new Pe.a.List(te,this);ne.initData(ce.regions);var le={};ne.each(function(oe){var de=ne.getName(oe),he=ne.getItemModel(oe);le[de]=he}),this._regionModelMap=le,this._data=ne},getData:function(){return this._data},getRegionModel:function(ce){var te=this.getData().getName(ce);return this._regionModelMap[te]||new Pe.a.Model(null,this)},getRegionPolygonCoords:function(ce){var te=this.getData().getName(ce),ne=this.coordinateSystem.getRegion(te);return ne?ne.geometries:[]},getFormattedLabel:function(ce,te){var ne=this._data.getName(ce),le=this.getRegionModel(ne),oe=le.get(te==="normal"?["label","formatter"]:["emphasis","label","formatter"]);oe==null&&(oe=le.get(["label","formatter"]));var de={name:ne};if(typeof oe=="function")return de.status=te,oe(de);if(typeof oe=="string"){var he=de.seriesName;return oe.replace("{a}",he!=null?he:"")}else return ne},defaultOption:{regions:[]}});Pe.a.util.merge(ye.prototype,pe.a),Pe.a.util.merge(ye.prototype,ge.a),Pe.a.util.merge(ye.prototype,Ae.a),Pe.a.util.merge(ye.prototype,be.a),Pe.a.util.merge(ye.prototype,we.a);var xe=ye},function(He,Fe,Ce){"use strict";var _e=Ce(59),Pe=Ce(0),ge=Ce.n(Pe),Ae=Ce(2),be=Ce(39),we=Ce(34),pe=ge.a.extendComponentView({type:"geo3D",__ecgl__:!0,init:function(ye,xe){this._geo3DBuilder=new _e.a(xe),this.groupGL=new Ae.a.Node,this._lightRoot=new Ae.a.Node,this._sceneHelper=new we.a(this._lightRoot),this._sceneHelper.initLight(this._lightRoot),this._control=new be.a({zr:xe.getZr()}),this._control.init()},render:function(ye,xe,ce){this.groupGL.add(this._geo3DBuilder.rootNode);var te=ye.coordinateSystem;if(!(!te||!te.viewGL)){te.viewGL.add(this._lightRoot),ye.get("show")?te.viewGL.add(this.groupGL):te.viewGL.remove(this.groupGL);var ne=this._control;ne.setViewGL(te.viewGL);var le=ye.getModel("viewControl");ne.setFromViewControlModel(le,0),this._sceneHelper.setScene(te.viewGL.scene),this._sceneHelper.updateLight(ye),te.viewGL.setPostEffect(ye.getModel("postEffect"),ce),te.viewGL.setTemporalSuperSampling(ye.getModel("temporalSuperSampling")),this._geo3DBuilder.update(ye,xe,ce,0,ye.getData().count());var oe=te.viewGL.isLinearSpace()?"define":"undefine";this._geo3DBuilder.rootNode.traverse(function(de){de.material&&de.material[oe]("fragment","SRGB_DECODE")}),ne.off("update"),ne.on("update",function(){ce.dispatchAction({type:"geo3DChangeCamera",alpha:ne.getAlpha(),beta:ne.getBeta(),distance:ne.getDistance(),center:ne.getCenter(),from:this.uid,geo3DId:ye.id})})}},afterRender:function(ye,xe,ce,te){var ne=te.renderer;this._sceneHelper.updateAmbientCubemap(ne,ye,ce),this._sceneHelper.updateSkybox(ne,ye,ce)},dispose:function(){this._control.dispose()}})},function(He,Fe,Ce){"use strict";Fe.a=_e;function _e(qe,ot,at){at=at||2;var lt=ot&&ot.length,rt=lt?ot[0]*at:qe.length,ut=Pe(qe,0,rt,at,!0),yt=[];if(!ut)return yt;var ft,dt,ht,Ut,Kt,qt,vn;if(lt&&(ut=xe(qe,ot,ut,at)),qe.length>80*at){ft=ht=qe[0],dt=Ut=qe[1];for(var Ot=at;Otht&&(ht=Kt),qt>Ut&&(Ut=qt);vn=Math.max(ht-ft,Ut-dt)}return Ae(ut,yt,at,ft,dt,vn),yt}function Pe(qe,ot,at,lt,rt){var ut,yt;if(rt===$e(qe,ot,at,lt)>0)for(ut=ot;ut=ot;ut-=lt)yt=Xe(ut,qe[ut],qe[ut+1],yt);return yt&&Se(yt,yt.next)&&(Qe(yt),yt=yt.next),yt}function ge(qe,ot){if(!qe)return qe;ot||(ot=qe);var at=qe,lt;do if(lt=!1,!at.steiner&&(Se(at,at.next)||ve(at.prev,at,at.next)===0)){if(Qe(at),at=ot=at.prev,at===at.next)return null;lt=!0}else at=at.next;while(lt||at!==ot);return ot}function Ae(qe,ot,at,lt,rt,ut,yt){if(qe){!yt&&ut&&le(qe,lt,rt,ut);for(var ft=qe,dt,ht;qe.prev!==qe.next;){if(dt=qe.prev,ht=qe.next,ut?we(qe,lt,rt,ut):be(qe)){ot.push(dt.i/at),ot.push(qe.i/at),ot.push(ht.i/at),Qe(qe),qe=ht.next,ft=ht.next;continue}if(qe=ht,qe===ft){yt?yt===1?(qe=pe(qe,ot,at),Ae(qe,ot,at,lt,rt,ut,2)):yt===2&&ye(qe,ot,at,lt,rt,ut):Ae(ge(qe),ot,at,lt,rt,ut,1);break}}}}function be(qe){var ot=qe.prev,at=qe,lt=qe.next;if(ve(ot,at,lt)>=0)return!1;for(var rt=qe.next.next;rt!==qe.prev;){if(ie(ot.x,ot.y,at.x,at.y,lt.x,lt.y,rt.x,rt.y)&&ve(rt.prev,rt,rt.next)>=0)return!1;rt=rt.next}return!0}function we(qe,ot,at,lt){var rt=qe.prev,ut=qe,yt=qe.next;if(ve(rt,ut,yt)>=0)return!1;for(var ft=rt.xut.x?rt.x>yt.x?rt.x:yt.x:ut.x>yt.x?ut.x:yt.x,Ut=rt.y>ut.y?rt.y>yt.y?rt.y:yt.y:ut.y>yt.y?ut.y:yt.y,Kt=de(ft,dt,ot,at,lt),qt=de(ht,Ut,ot,at,lt),vn=qe.nextZ;vn&&vn.z<=qt;){if(vn!==qe.prev&&vn!==qe.next&&ie(rt.x,rt.y,ut.x,ut.y,yt.x,yt.y,vn.x,vn.y)&&ve(vn.prev,vn,vn.next)>=0)return!1;vn=vn.nextZ}for(vn=qe.prevZ;vn&&vn.z>=Kt;){if(vn!==qe.prev&&vn!==qe.next&&ie(rt.x,rt.y,ut.x,ut.y,yt.x,yt.y,vn.x,vn.y)&&ve(vn.prev,vn,vn.next)>=0)return!1;vn=vn.prevZ}return!0}function pe(qe,ot,at){var lt=qe;do{var rt=lt.prev,ut=lt.next.next;!Se(rt,ut)&&De(rt,lt,lt.next,ut)&&Ne(rt,ut)&&Ne(ut,rt)&&(ot.push(rt.i/at),ot.push(lt.i/at),ot.push(ut.i/at),Qe(lt),Qe(lt.next),lt=qe=ut),lt=lt.next}while(lt!==qe);return lt}function ye(qe,ot,at,lt,rt,ut){var yt=qe;do{for(var ft=yt.next.next;ft!==yt.prev;){if(yt.i!==ft.i&&ue(yt,ft)){var dt=Ge(yt,ft);yt=ge(yt,yt.next),dt=ge(dt,dt.next),Ae(yt,ot,at,lt,rt,ut),Ae(dt,ot,at,lt,rt,ut);return}ft=ft.next}yt=yt.next}while(yt!==qe)}function xe(qe,ot,at,lt){var rt=[],ut,yt,ft,dt,ht;for(ut=0,yt=ot.length;ut=at.next.y&&at.next.y!==at.y){var ft=at.x+(rt-at.y)*(at.next.x-at.x)/(at.next.y-at.y);if(ft<=lt&&ft>ut){if(ut=ft,ft===lt){if(rt===at.y)return at;if(rt===at.next.y)return at.next}yt=at.x=at.x&&at.x>=ht&<!==at.x&&ie(rtyt.x)&&Ne(at,qe)&&(yt=at,Kt=qt)),at=at.next;return yt}function le(qe,ot,at,lt){var rt=qe;do rt.z===null&&(rt.z=de(rt.x,rt.y,ot,at,lt)),rt.prevZ=rt.prev,rt.nextZ=rt.next,rt=rt.next;while(rt!==qe);rt.prevZ.nextZ=null,rt.prevZ=null,oe(rt)}function oe(qe){var ot,at,lt,rt,ut,yt,ft,dt,ht=1;do{for(at=qe,qe=null,ut=null,yt=0;at;){for(yt++,lt=at,ft=0,ot=0;ot0||dt>0&<)ft!==0&&(dt===0||!lt||at.z<=lt.z)?(rt=at,at=at.nextZ,ft--):(rt=lt,lt=lt.nextZ,dt--),ut?ut.nextZ=rt:qe=rt,rt.prevZ=ut,ut=rt;at=lt}ut.nextZ=null,ht*=2}while(yt>1);return qe}function de(qe,ot,at,lt,rt){return qe=32767*(qe-at)/rt,ot=32767*(ot-lt)/rt,qe=(qe|qe<<8)&16711935,qe=(qe|qe<<4)&252645135,qe=(qe|qe<<2)&858993459,qe=(qe|qe<<1)&1431655765,ot=(ot|ot<<8)&16711935,ot=(ot|ot<<4)&252645135,ot=(ot|ot<<2)&858993459,ot=(ot|ot<<1)&1431655765,qe|ot<<1}function he(qe){var ot=qe,at=qe;do ot.x=0&&(qe-yt)*(lt-ft)-(at-yt)*(ot-ft)>=0&&(at-yt)*(ut-ft)-(rt-yt)*(lt-ft)>=0}function ue(qe,ot){return qe.next.i!==ot.i&&qe.prev.i!==ot.i&&!Re(qe,ot)&&Ne(qe,ot)&&Ne(ot,qe)&&ze(qe,ot)}function ve(qe,ot,at){return(ot.y-qe.y)*(at.x-ot.x)-(ot.x-qe.x)*(at.y-ot.y)}function Se(qe,ot){return qe.x===ot.x&&qe.y===ot.y}function De(qe,ot,at,lt){return Se(qe,ot)&&Se(at,lt)||Se(qe,lt)&&Se(at,ot)?!0:ve(qe,ot,at)>0!=ve(qe,ot,lt)>0&&ve(at,lt,qe)>0!=ve(at,lt,ot)>0}function Re(qe,ot){var at=qe;do{if(at.i!==qe.i&&at.next.i!==qe.i&&at.i!==ot.i&&at.next.i!==ot.i&&De(at,at.next,qe,ot))return!0;at=at.next}while(at!==qe);return!1}function Ne(qe,ot){return ve(qe.prev,qe,qe.next)<0?ve(qe,ot,qe.next)>=0&&ve(qe,qe.prev,ot)>=0:ve(qe,ot,qe.prev)<0||ve(qe,qe.next,ot)<0}function ze(qe,ot){var at=qe,lt=!1,rt=(qe.x+ot.x)/2,ut=(qe.y+ot.y)/2;do at.y>ut!=at.next.y>ut&&at.next.y!==at.y&&rt<(at.next.x-at.x)*(ut-at.y)/(at.next.y-at.y)+at.x&&(lt=!lt),at=at.next;while(at!==qe);return lt}function Ge(qe,ot){var at=new nt(qe.i,qe.x,qe.y),lt=new nt(ot.i,ot.x,ot.y),rt=qe.next,ut=ot.prev;return qe.next=ot,ot.prev=qe,at.next=rt,rt.prev=at,lt.next=at,at.prev=lt,ut.next=lt,lt.prev=ut,lt}function Xe(qe,ot,at,lt){var rt=new nt(qe,ot,at);return lt?(rt.next=lt.next,rt.prev=lt,lt.next.prev=rt,lt.next=rt):(rt.prev=rt,rt.next=rt),rt}function Qe(qe){qe.next.prev=qe.prev,qe.prev.next=qe.next,qe.prevZ&&(qe.prevZ.nextZ=qe.nextZ),qe.nextZ&&(qe.nextZ.prevZ=qe.prevZ)}function nt(qe,ot,at){this.i=qe,this.x=ot,this.y=at,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}_e.deviation=function(qe,ot,at,lt){var rt=ot&&ot.length,ut=rt?ot[0]*at:qe.length,yt=Math.abs($e(qe,0,ut,at));if(rt)for(var ft=0,dt=ot.length;ft0},_displacementChanged:!0,_displacementScale:0,updateDisplacementHash:function(){var ce=this.getDisplacementTexture(),te=this.getDisplacemenScale();this._displacementChanged=this._displacementTexture!==ce||this._displacementScale!==te,this._displacementTexture=ce,this._displacementScale=te},isDisplacementChanged:function(){return this._displacementChanged}});Pe.a.util.merge(ye.prototype,ge.a),Pe.a.util.merge(ye.prototype,Ae.a),Pe.a.util.merge(ye.prototype,be.a),Pe.a.util.merge(ye.prototype,we.a);var xe=ye},function(He,Fe,Ce){"use strict";var _e=Ce(0),Pe=Ce.n(_e),ge=Ce(2),Ae=Ce(39),be=Ce(34),we=Ce(192),pe=Ce(3),ye=Pe.a.extendComponentView({type:"globe",__ecgl__:!0,_displacementScale:0,init:function(xe,ce){this.groupGL=new ge.a.Node,this._sphereGeometry=new ge.a.SphereGeometry({widthSegments:200,heightSegments:100,dynamic:!0}),this._overlayGeometry=new ge.a.SphereGeometry({widthSegments:80,heightSegments:40}),this._planeGeometry=new ge.a.PlaneGeometry,this._earthMesh=new ge.a.Mesh({renderNormal:!0}),this._lightRoot=new ge.a.Node,this._sceneHelper=new be.a,this._sceneHelper.initLight(this._lightRoot),this.groupGL.add(this._earthMesh),this._control=new Ae.a({zr:ce.getZr()}),this._control.init(),this._layerMeshes={}},render:function(xe,ce,te){var ne=xe.coordinateSystem,le=xe.get("shading");ne.viewGL.add(this._lightRoot),xe.get("show")?ne.viewGL.add(this.groupGL):ne.viewGL.remove(this.groupGL),this._sceneHelper.setScene(ne.viewGL.scene),ne.viewGL.setPostEffect(xe.getModel("postEffect"),te),ne.viewGL.setTemporalSuperSampling(xe.getModel("temporalSuperSampling"));var oe=this._earthMesh;oe.geometry=this._sphereGeometry;var de="ecgl."+le;(!oe.material||oe.material.shader.name!==de)&&(oe.material=ge.a.createMaterial(de)),ge.a.setMaterialFromModel(le,oe.material,xe,te),["roughnessMap","metalnessMap","detailMap","normalMap"].forEach(function(ve){var Se=oe.material.get(ve);Se&&(Se.flipY=!1)}),oe.material.set("color",ge.a.parseColor(xe.get("baseColor")));var he=ne.radius*.99;oe.scale.set(he,he,he);var ie=oe.material.setTextureImage("diffuseMap",xe.get("baseTexture"),te,{flipY:!1,anisotropic:8});ie&&ie.surface&&ie.surface.attachToMesh(oe);var ue=oe.material.setTextureImage("bumpMap",xe.get("heightTexture"),te,{flipY:!1,anisotropic:8});ue&&ue.surface&&ue.surface.attachToMesh(oe),oe.material[xe.get("postEffect.enable")?"define":"undefine"]("fragment","SRGB_DECODE"),this._updateLight(xe,te),this._displaceVertices(xe,te),this._updateViewControl(xe,te),this._updateLayers(xe,te)},afterRender:function(xe,ce,te,ne){var le=ne.renderer;this._sceneHelper.updateAmbientCubemap(le,xe,te),this._sceneHelper.updateSkybox(le,xe,te)},_updateLayers:function(xe,ce){var te=xe.coordinateSystem,ne=xe.get("layers"),le=te.radius,oe=[],de=[],he=[],ie=[];Pe.a.util.each(ne,function(Re){var Ne=new Pe.a.Model(Re),ze=Ne.get("type"),Ge=ge.a.loadTexture(Ne.get("texture"),ce,{flipY:!1,anisotropic:8});if(Ge.surface&&Ge.surface.attachToMesh(this._earthMesh),ze==="blend"){var Xe=Ne.get("blendTo"),Qe=pe.a.firstNotNull(Ne.get("intensity"),1);Xe==="emission"?(he.push(Ge),ie.push(Qe)):(oe.push(Ge),de.push(Qe))}else{var nt=Ne.get("id"),$e=this._layerMeshes[nt];$e||($e=this._layerMeshes[nt]=new ge.a.Mesh({geometry:this._overlayGeometry,castShadow:!1,ignorePicking:!0}));var qe=Ne.get("shading");qe==="lambert"?($e.material=$e.__lambertMaterial||new ge.a.Material({autoUpdateTextureStatus:!1,shader:ge.a.createShader("ecgl.lambert"),transparent:!0,depthMask:!1}),$e.__lambertMaterial=$e.material):($e.material=$e.__colorMaterial||new ge.a.Material({autoUpdateTextureStatus:!1,shader:ge.a.createShader("ecgl.color"),transparent:!0,depthMask:!1}),$e.__colorMaterial=$e.material),$e.material.enableTexture("diffuseMap");var ot=Ne.get("distance"),at=le+(ot==null?te.radius/100:ot);$e.scale.set(at,at,at),le=at;var lt=this._blankTexture||(this._blankTexture=ge.a.createBlankTexture("rgba(255, 255, 255, 0)"));$e.material.set("diffuseMap",lt),ge.a.loadTexture(Ne.get("texture"),ce,{flipY:!1,anisotropic:8},function(rt){rt.surface&&rt.surface.attachToMesh($e),$e.material.set("diffuseMap",rt),ce.getZr().refresh()}),Ne.get("show")?this.groupGL.add($e):this.groupGL.remove($e)}},this);var ue=this._earthMesh.material;ue.define("fragment","LAYER_DIFFUSEMAP_COUNT",oe.length),ue.define("fragment","LAYER_EMISSIVEMAP_COUNT",he.length),ue.set("layerDiffuseMap",oe),ue.set("layerDiffuseIntensity",de),ue.set("layerEmissiveMap",he),ue.set("layerEmissionIntensity",ie);var ve=xe.getModel("debug.wireframe");if(ve.get("show")){ue.define("both","WIREFRAME_TRIANGLE");var Se=ge.a.parseColor(ve.get("lineStyle.color")||"rgba(0,0,0,0.5)"),De=pe.a.firstNotNull(ve.get("lineStyle.width"),1);ue.set("wireframeLineWidth",De),ue.set("wireframeLineColor",Se)}else ue.undefine("both","WIREFRAME_TRIANGLE")},_updateViewControl:function(xe,ce){var te=xe.coordinateSystem,ne=xe.getModel("viewControl"),le=te.viewGL.camera,oe=this;function de(){return{type:"globeChangeCamera",alpha:he.getAlpha(),beta:he.getBeta(),distance:he.getDistance()-te.radius,center:he.getCenter(),from:oe.uid,globeId:xe.id}}var he=this._control;he.setViewGL(te.viewGL);var ie=ne.get("targetCoord"),ue,ve;ie!=null&&(ve=ie[0]+90,ue=ie[1]),he.setFromViewControlModel(ne,{baseDistance:te.radius,alpha:ue,beta:ve}),he.off("update"),he.on("update",function(){ce.dispatchAction(de())})},_displaceVertices:function(xe,ce){var te=xe.get("displacementQuality"),ne=xe.get("debug.wireframe.show"),le=xe.coordinateSystem;if(!(!xe.isDisplacementChanged()&&te===this._displacementQuality&&ne===this._showDebugWireframe)){this._displacementQuality=te,this._showDebugWireframe=ne;var oe=this._sphereGeometry,de={low:100,medium:200,high:400,ultra:800}[te]||200,he=de/2;(oe.widthSegments!==de||ne)&&(oe.widthSegments=de,oe.heightSegments=he,oe.build()),this._doDisplaceVertices(oe,le),ne&&oe.generateBarycentric()}},_doDisplaceVertices:function(xe,ce){var te=xe.attributes.position.value,ne=xe.attributes.texcoord0.value,le=xe.__originalPosition;(!le||le.length!==te.length)&&(le=new Float32Array(te.length),le.set(te),xe.__originalPosition=le);for(var oe=ce.displacementWidth,de=ce.displacementHeight,he=ce.displacementData,ie=0;ie0&&ce>0||xe<0&&ce<0)}function pe(ye,xe){var ce=ye.getData(),te=ye.get("barSize");if(te==null){var ne=xe.size,le,oe,de=xe.getAxis("x"),he=xe.getAxis("y");de.type==="category"?le=de.getBandWidth()*.7:le=Math.round(ne[0]/Math.sqrt(ce.count()))*.6,he.type==="category"?oe=he.getBandWidth()*.7:oe=Math.round(ne[1]/Math.sqrt(ce.count()))*.6,te=[le,oe]}else Pe.a.util.isArray(te)||(te=[te,te]);var ie=xe.getAxis("z").scale.getExtent(),ue=we(ie),ve=["x","y","z"].map(function(Se){return ye.coordDimToDataDim(Se)[0]});ce.each(ve,function(Se,De,Re,Ne){var ze=ce.get(ve[2],Ne,!0),Ge=ce.stackedOn?ze-Re:ue?0:ie[0],Xe=xe.dataToPoint([Se,De,Ge]),Qe=xe.dataToPoint([Se,De,ze]),nt=be.dist(Xe,Qe),$e=[0,Qe[1]0&&(nt++,Re[3]<.99&&(Ge=!0))}}),ue.geometry.setBarCount(nt);var Xe=oe.getLayout("orient"),Qe=this._barIndexOfData=new Int32Array(oe.count()),nt=0;oe.each(function(qe){if(!oe.hasValue(qe)){Qe[qe]=-1;return}var ot=oe.getItemLayout(qe),at=ot[0],lt=ot[1],rt=ot[2],ut=qe*4;Re[0]=Ne[ut++],Re[1]=Ne[ut++],Re[2]=Ne[ut++],Re[3]=Ne[ut++],Re[3]>0&&(ie._barMesh.geometry.addBar(at,lt,Xe,rt,Re,qe),Qe[qe]=nt++)}),ue.geometry.dirty(),ue.geometry.updateBoundingBox();var $e=ue.material;$e.transparent=Ge,$e.depthMask=!Ge,ue.geometry.sortTriangles=Ge,this._initHandler(ne,le)},_initHandler:function(ne,le){var oe=ne.getData(),de=this._barMesh,he=ne.coordinateSystem.type==="cartesian3D";de.seriesIndex=ne.seriesIndex;var ie=-1;de.off("mousemove"),de.off("mouseout"),de.on("mousemove",function(ue){var ve=de.geometry.getDataIndexOfVertex(ue.triangle[0]);ve!==ie&&(this._downplay(ie),this._highlight(ve),this._labelsBuilder.updateLabels([ve]),he&&le.dispatchAction({type:"grid3DShowAxisPointer",value:[oe.get("x",ve),oe.get("y",ve),oe.get("z",ve,!0)]})),ie=ve,de.dataIndex=ve},this),de.on("mouseout",function(ue){this._downplay(ie),this._labelsBuilder.updateLabels(),ie=-1,de.dataIndex=-1,he&&le.dispatchAction({type:"grid3DHideAxisPointer"})},this)},_highlight:function(ne){var le=this._data;if(le){var oe=this._barIndexOfData[ne];if(!(oe<0)){var de=le.getItemModel(ne),he=de.getModel("emphasis.itemStyle"),ie=he.get("color"),ue=he.get("opacity");if(ie==null){var ve=le.getItemVisual(ne,"color");ie=Pe.a.color.lift(ve,-.4)}ue==null&&(ue=le.getItemVisual(ne,"opacity"));var Se=ge.a.parseColor(ie);Se[3]*=ue,this._barMesh.geometry.setColor(oe,Se),this._api.getZr().refresh()}}},_downplay:function(ne){var le=this._data;if(le){var oe=this._barIndexOfData[ne];if(!(oe<0)){var de=le.getItemVisual(ne,"color"),he=le.getItemVisual(ne,"opacity"),ie=ge.a.parseColor(de);ie[3]*=he,this._barMesh.geometry.setColor(oe,ie),this._api.getZr().refresh()}}},highlight:function(ne,le,oe,de){this._toggleStatus("highlight",ne,le,oe,de)},downplay:function(ne,le,oe,de){this._toggleStatus("downplay",ne,le,oe,de)},_toggleStatus:function(ne,le,oe,de,he){var ie=le.getData(),ue=Ae.a.queryDataIndex(ie,he),ve=this;ue!=null?Pe.a.util.each(be.a.normalizeToArray(ue),function(Se){ne==="highlight"?this._highlight(Se):this._downplay(Se)},this):ie.each(function(Se){ne==="highlight"?ve._highlight(Se):ve._downplay(Se)})},remove:function(){this.groupGL.removeAll()},dispose:function(){this.groupGL.removeAll()}})},function(He,Fe,Ce){"use strict";var _e=Ce(0),Pe=Ce.n(_e),ge=Ce(33),Ae=Ce(60),be=Ce(13),we=Ce(1),pe=Ce.n(we),ye=pe.a.vec3,xe=pe.a.mat3,ce=be.a.extend(function(){return{attributes:{position:new be.a.Attribute("position","float",3,"POSITION"),normal:new be.a.Attribute("normal","float",3,"NORMAL"),color:new be.a.Attribute("color","float",4,"COLOR"),prevPosition:new be.a.Attribute("prevPosition","float",3),prevNormal:new be.a.Attribute("prevNormal","float",3)},dynamic:!0,enableNormal:!1,bevelSize:1,bevelSegments:0,_dataIndices:null,_vertexOffset:0,_triangleOffset:0}},{resetOffset:function(){this._vertexOffset=0,this._triangleOffset=0},setBarCount:function(te){var ne=this.enableNormal,le=this.getBarVertexCount()*te,oe=this.getBarTriangleCount()*te;this.vertexCount!==le&&(this.attributes.position.init(le),ne?this.attributes.normal.init(le):this.attributes.normal.value=null,this.attributes.color.init(le)),this.triangleCount!==oe&&(this.indices=le>65535?new Uint32Array(oe*3):new Uint16Array(oe*3),this._dataIndices=new Uint32Array(le))},getBarVertexCount:function(){var te=this.bevelSize>0?this.bevelSegments:0;return te>0?this._getBevelBarVertexCount(te):this.enableNormal?24:8},getBarTriangleCount:function(){var te=this.bevelSize>0?this.bevelSegments:0;return te>0?this._getBevelBarTriangleCount(te):12},_getBevelBarVertexCount:function(te){return(te+1)*4*(te+1)*2},_getBevelBarTriangleCount:function(te){var ne=te*4+3,le=te*2+1;return(ne+1)*le*2+4},setColor:function(te,ne){for(var le=this.getBarVertexCount(),oe=le*te,de=le*(te+1),he=oe;he0&&this.bevelSegments>0)this._addBevelBar(qe,ot,at,lt,this.bevelSize,this.bevelSegments,rt);else{ye.copy(de,ot),ye.normalize(de,de),ye.cross(he,at,de),ye.normalize(he,he),ye.cross(oe,de,he),ye.normalize(he,he),ye.negate(ie,oe),ye.negate(ue,de),ye.negate(ve,he),ne(Se[0],qe,oe,lt[0]/2),ne(Se[0],Se[0],he,lt[2]/2),ne(Se[1],qe,oe,lt[0]/2),ne(Se[1],Se[1],ve,lt[2]/2),ne(Se[2],qe,ie,lt[0]/2),ne(Se[2],Se[2],ve,lt[2]/2),ne(Se[3],qe,ie,lt[0]/2),ne(Se[3],Se[3],he,lt[2]/2),ne(le,qe,de,lt[1]),ne(Se[4],le,oe,lt[0]/2),ne(Se[4],Se[4],he,lt[2]/2),ne(Se[5],le,oe,lt[0]/2),ne(Se[5],Se[5],ve,lt[2]/2),ne(Se[6],le,ie,lt[0]/2),ne(Se[6],Se[6],ve,lt[2]/2),ne(Se[7],le,ie,lt[0]/2),ne(Se[7],Se[7],he,lt[2]/2);var ft=this.attributes;if(this.enableNormal){De[0]=oe,De[1]=ie,De[2]=de,De[3]=ue,De[4]=he,De[5]=ve;for(var dt=this._vertexOffset,ht=0;ht=0){var yt=ze*3,ft=new pe.a(this._points[yt],this._points[yt+1],this._points[yt+2]);Se.push({dataIndex:ze,point:ft,pointWorld:ft.clone(),target:this._line3DMesh,distance:this._camera.getWorldPosition().dist(ft)})}},remove:function(){this.groupGL.removeAll()},dispose:function(){this.groupGL.removeAll()}})},function(He,Fe){function Ce(_e,Pe,ge,Ae,be,we,pe){if(be===0)return!1;var ye=be,xe=0,ce=_e;if(pe>Pe+ye&&pe>Ae+ye||pe_e+ye&&we>ge+ye||we<_e-ye&&wele?oe.position[1]+=(de-le)/2:oe.position[0]+=(de-ne)/2;var he=oe.getBoundingRect();return oe.position[0]-=he.x,oe.position[1]-=he.y,oe.setStyle(xe),oe.update(),oe.__size=de,oe}function be(pe,ye,xe){var ce=ye.width,te=ye.height,ne=pe.canvas.width,le=pe.canvas.height,oe=ce/ne,de=te/le;function he(ze){return ze<128?1:-1}function ie(ze,Ge){var Xe=1/0;ze=Math.floor(ze*oe),Ge=Math.floor(Ge*de);for(var Qe=Ge*ce+ze,nt=ye.data[Qe*4],$e=he(nt),qe=Math.max(Ge-xe,0);qe=0;Se--){var De;this.geometry.indices?De=this.geometry.indices[Se]:De=Se;var Re=he[De*2],Ne=he[De*2+1],ze=this.geometry.attributes.size.get(De)/this.sizeScale,Ge=ze/2;if(ce>Re-Ge*ue&&ceNe-Ge*ve&&te=2e4},doSortVertices:function(be,we){var pe=this.indices,ye=Ae.create();if(!pe){pe=this.indices=this.vertexCount>65535?new Uint32Array(this.vertexCount):new Uint16Array(this.vertexCount);for(var xe=0;xe.05);else for(var xe=0;xe<3;xe++)this._progressiveQuickSort(we*3+xe);this.dirtyIndices()},_simpleSort:function(be){var we=this._zList,pe=this.indices;function ye(xe,ce){return we[ce]-we[xe]}be?Array.prototype.sort.call(pe,ye):_e.a.sort(pe,ye,0,pe.length-1)},_progressiveQuickSort:function(be){var we=this._zList,pe=this.indices;this._quickSort=this._quickSort||new _e.a,this._quickSort.step(pe,function(ye,xe){return we[xe]-we[ye]},be)}}},function(He,Fe,Ce){"use strict";Fe.a=`@export ecgl.sdfSprite.vertex uniform mat4 worldViewProjection : WORLDVIEWPROJECTION; uniform float elapsedTime : 0; attribute vec3 position : POSITION; #ifdef VERTEX_SIZE attribute float size; #else uniform float u_Size; #endif #ifdef VERTEX_COLOR attribute vec4 a_FillColor: COLOR; varying vec4 v_Color; #endif #ifdef VERTEX_ANIMATION attribute vec3 prevPosition; attribute float prevSize; uniform float percent : 1.0; #endif #ifdef POSITIONTEXTURE_ENABLED uniform sampler2D positionTexture; #endif varying float v_Size; void main() { #ifdef POSITIONTEXTURE_ENABLED gl_Position = worldViewProjection * vec4(texture2D(positionTexture, position.xy).xy, -10.0, 1.0); #else #ifdef VERTEX_ANIMATION vec3 pos = mix(prevPosition, position, percent); #else vec3 pos = position; #endif gl_Position = worldViewProjection * vec4(pos, 1.0); #endif #ifdef VERTEX_SIZE #ifdef VERTEX_ANIMATION v_Size = mix(prevSize, size, percent); #else v_Size = size; #endif #else v_Size = u_Size; #endif #ifdef VERTEX_COLOR v_Color = a_FillColor; #endif gl_PointSize = v_Size; } @end @export ecgl.sdfSprite.fragment uniform vec4 color: [1, 1, 1, 1]; uniform vec4 strokeColor: [1, 1, 1, 1]; uniform float smoothing: 0.07; uniform float lineWidth: 0.0; #ifdef VERTEX_COLOR varying vec4 v_Color; #endif varying float v_Size; uniform sampler2D sprite; @import clay.util.srgb void main() { gl_FragColor = color; vec4 _strokeColor = strokeColor; #ifdef VERTEX_COLOR gl_FragColor *= v_Color; #endif #ifdef SPRITE_ENABLED float d = texture2D(sprite, gl_PointCoord).r; gl_FragColor.a *= smoothstep(0.5 - smoothing, 0.5 + smoothing, d); if (lineWidth > 0.0) { float sLineWidth = lineWidth / 2.0; float outlineMaxValue0 = 0.5 + sLineWidth; float outlineMaxValue1 = 0.5 + sLineWidth + smoothing; float outlineMinValue0 = 0.5 - sLineWidth - smoothing; float outlineMinValue1 = 0.5 - sLineWidth; if (d <= outlineMaxValue1 && d >= outlineMinValue0) { float a = _strokeColor.a; if (d <= outlineMinValue1) { a = a * smoothstep(outlineMinValue0, outlineMinValue1, d); } else { a = a * smoothstep(outlineMaxValue1, outlineMaxValue0, d); } gl_FragColor.rgb = mix(gl_FragColor.rgb * gl_FragColor.a, _strokeColor.rgb, a); gl_FragColor.a = gl_FragColor.a * (1.0 - a) + a; } } #endif #ifdef SRGB_DECODE gl_FragColor = sRGBToLinear(gl_FragColor); #endif } @end`},function(He,Fe,Ce){"use strict";var _e=Ce(0),Pe=Ce.n(_e),ge=Ce(221),Ae=Ce(222),be=Ce(225),we=Ce(16);Pe.a.registerVisual(Object(we.a)("lines3D")),Pe.a.registerAction({type:"lines3DPauseEffect",event:"lines3deffectpaused",update:"series.lines3D:pauseEffect"},function(){}),Pe.a.registerAction({type:"lines3DResumeEffect",event:"lines3deffectresumed",update:"series.lines3D:resumeEffect"},function(){}),Pe.a.registerAction({type:"lines3DToggleEffect",event:"lines3deffectchanged",update:"series.lines3D:toggleEffect"},function(){})},function(He,Fe,Ce){"use strict";var _e=Ce(0),Pe=Ce.n(_e),ge=Ce(1),Ae=Ce.n(ge),be=Ae.a.vec3,we=Ae.a.vec2,pe=be.normalize,ye=be.cross,xe=be.sub,ce=be.add,te=be.create,ne=te(),le=te(),oe=te(),de=te(),he=[],ie=[];function ue(ze,Ge){we.copy(he,ze[0]),we.copy(ie,ze[1]);var Xe=[],Qe=Xe[0]=te(),nt=Xe[1]=te(),$e=Xe[2]=te(),qe=Xe[3]=te();Ge.dataToPoint(he,Qe),Ge.dataToPoint(ie,qe),pe(ne,Qe),xe(le,qe,Qe),pe(le,le),ye(oe,le,ne),pe(oe,oe),ye(le,ne,oe),ce(nt,ne,le),pe(nt,nt),pe(ne,qe),xe(le,Qe,qe),pe(le,le),ye(oe,le,ne),pe(oe,oe),ye(le,ne,oe),ce($e,ne,le),pe($e,$e),ce(de,Qe,qe),pe(de,de);var ot=be.dot(Qe,de),at=be.dot(de,nt),lt=(Math.max(be.len(Qe),be.len(qe))-ot)/at*2;return be.scaleAndAdd(nt,Qe,nt,lt),be.scaleAndAdd($e,qe,$e,lt),Xe}function ve(ze,Ge,Xe){var Qe=[],nt=Qe[0]=be.create(),$e=Qe[1]=be.create(),qe=Qe[2]=be.create(),ot=Qe[3]=be.create();Ge.dataToPoint(ze[0],nt),Ge.dataToPoint(ze[1],ot);var at=be.dist(nt,ot);return be.lerp($e,nt,ot,.3),be.lerp(qe,nt,ot,.3),be.scaleAndAdd($e,$e,Xe,Math.min(at*.1,10)),be.scaleAndAdd(qe,qe,Xe,Math.min(at*.1,10)),Qe}function Se(ze,Ge){for(var Xe=new Float32Array(ze.length*3),Qe=0,nt=[],$e=0;$e0&&nt[0]instanceof Array))throw new Error("Invalid coords "+JSON.stringify(nt)+". Lines must have 2d coords array in data item.");Ge.push(nt)}),{coordsList:Ge}}function Re(ze,Ge){var Xe=ze.getData(),Qe=ze.get("polyline");Xe.setLayout("lineType",Qe?"polyline":"cubicBezier");var nt=De(Xe);Xe.each(function($e){var qe=nt.coordsList[$e],ot=Qe?Se:ue;Xe.setItemLayout($e,ot(qe,Ge))})}function Ne(ze,Ge,Xe){var Qe=ze.getData(),nt=ze.get("polyline"),$e=De(Qe);Qe.setLayout("lineType",nt?"polyline":"cubicBezier"),Qe.each(function(qe){var ot=$e.coordsList[qe],at=nt?Se(ot,Ge):ve(ot,Ge,Xe);Qe.setItemLayout(qe,at)})}Pe.a.registerLayout(function(ze,Ge){ze.eachSeriesByType("lines3D",function(Xe){var Qe=Xe.coordinateSystem;Qe.type==="globe"?Re(Xe,Qe):Qe.type==="geo3D"?Ne(Xe,Qe,[0,1,0]):Qe.type==="mapbox3D"&&Ne(Xe,Qe,[0,0,1])})})},function(He,Fe,Ce){"use strict";var _e=Ce(0),Pe=Ce.n(_e),ge=Ce(2),Ae=Ce(22),be=Ce(223),we=Ce(40);ge.a.Shader.import(we.a);function pe(xe){return xe.radius!=null?xe.radius:xe.size!=null?Math.max(xe.size[0],xe.size[1],xe.size[2]):100}var ye=Pe.a.extendChartView({type:"lines3D",__ecgl__:!0,init:function(xe,ce){this.groupGL=new ge.a.Node,this._meshLinesMaterial=new ge.a.Material({shader:ge.a.createShader("ecgl.meshLines3D"),transparent:!0,depthMask:!1}),this._linesMesh=new ge.a.Mesh({geometry:new Ae.a,material:this._meshLinesMaterial,$ignorePicking:!0}),this._trailMesh=new be.a},render:function(xe,ce,te){this.groupGL.add(this._linesMesh);var ne=xe.coordinateSystem,le=xe.getData();if(ne&&ne.viewGL){var oe=ne.viewGL;oe.add(this.groupGL),this._updateLines(xe,ce,te);var de=ne.viewGL.isLinearSpace()?"define":"undefine";this._linesMesh.material[de]("fragment","SRGB_DECODE"),this._trailMesh.material[de]("fragment","SRGB_DECODE")}var he=this._trailMesh;if(he.stopAnimation(),xe.get("effect.show")){this.groupGL.add(he),he.updateData(le,te,this._linesMesh.geometry),he.__time=he.__time||0;var ie=3600*1e3;this._curveEffectsAnimator=he.animate("",{loop:!0}).when(ie,{__time:ie}).during(function(){he.setAnimationTime(he.__time)}).start()}else this.groupGL.remove(he),this._curveEffectsAnimator=null;this._linesMesh.material.blend=this._trailMesh.material.blend=xe.get("blendMode")==="lighter"?ge.a.additiveBlend:null},pauseEffect:function(){this._curveEffectsAnimator&&this._curveEffectsAnimator.pause()},resumeEffect:function(){this._curveEffectsAnimator&&this._curveEffectsAnimator.resume()},toggleEffect:function(){var xe=this._curveEffectsAnimator;xe&&(xe.isPaused()?xe.resume():xe.pause())},_updateLines:function(xe,ce,te){var ne=xe.getData(),le=xe.coordinateSystem,oe=this._linesMesh.geometry,de=xe.get("polyline");oe.expandLine=!0;var he=pe(le);oe.segmentScale=he/20;var ie="lineStyle.width".split("."),ue=te.getDevicePixelRatio(),ve=0;ne.each(function(Ne){var ze=ne.getItemModel(Ne),Ge=ze.get(ie);Ge==null&&(Ge=1),ne.setItemVisual(Ne,"lineWidth",Ge),ve=Math.max(Ge,ve)}),oe.useNativeLine=!1;var Se=0,De=0;ne.each(function(Ne){var ze=ne.getItemLayout(Ne);de?(Se+=oe.getPolylineVertexCount(ze),De+=oe.getPolylineTriangleCount(ze)):(Se+=oe.getCubicCurveVertexCount(ze[0],ze[1],ze[2],ze[3]),De+=oe.getCubicCurveTriangleCount(ze[0],ze[1],ze[2],ze[3]))}),oe.setVertexCount(Se),oe.setTriangleCount(De),oe.resetOffset();var Re=[];ne.each(function(Ne){var ze=ne.getItemLayout(Ne),Ge=ne.getItemVisual(Ne,"color"),Xe=ne.getItemVisual(Ne,"opacity"),Qe=ne.getItemVisual(Ne,"lineWidth")*ue;Xe==null&&(Xe=1),Re=ge.a.parseColor(Ge,Re),Re[3]*=Xe,de?oe.addPolyline(ze,Re,Qe):oe.addCubicCurve(ze[0],ze[1],ze[2],ze[3],Re,Qe)}),oe.dirty()},remove:function(){this.groupGL.removeAll()},dispose:function(){this.groupGL.removeAll()}})},function(He,Fe,Ce){"use strict";var _e=Ce(0),Pe=Ce.n(_e),ge=Ce(2),Ae=Ce(1),be=Ce.n(Ae),we=Ce(22),pe=Ce(224),ye=be.a.vec3;function xe(ce){return ce>0?1:-1}ge.a.Shader.import(pe.a),Fe.a=ge.a.Mesh.extend(function(){var ce=new ge.a.Material({shader:new ge.a.Shader(ge.a.Shader.source("ecgl.trail2.vertex"),ge.a.Shader.source("ecgl.trail2.fragment")),transparent:!0,depthMask:!1}),te=new we.a({dynamic:!0});return te.createAttribute("dist","float",1),te.createAttribute("distAll","float",1),te.createAttribute("start","float",1),{geometry:te,material:ce,culling:!1,$ignorePicking:!0}},{updateData:function(ce,te,ne){var le=ce.hostModel,oe=this.geometry,de=le.getModel("effect"),he=de.get("trailWidth")*te.getDevicePixelRatio(),ie=de.get("trailLength"),ue=le.get("effect.constantSpeed"),ve=le.get("effect.period")*1e3,Se=ue!=null;this.getScene()||console.error("TrailMesh must been add to scene before updateData"),Se?this.material.set("speed",ue/1e3):this.material.set("period",ve),this.material[Se?"define":"undefine"]("vertex","CONSTANT_SPEED");var De=le.get("polyline");oe.trailLength=ie,this.material.set("trailLength",ie),oe.resetOffset(),["position","positionPrev","positionNext"].forEach(function(lt){oe.attributes[lt].value=ne.attributes[lt].value});var Re=["dist","distAll","start","offset","color"];Re.forEach(function(lt){oe.attributes[lt].init(oe.vertexCount)}),oe.indices=ne.indices;var Ne=[],ze=de.get("trailColor"),Ge=de.get("trailOpacity"),Xe=ze!=null,Qe=Ge!=null;this.updateWorldTransform();var nt=this.worldTransform.x.len(),$e=this.worldTransform.y.len(),qe=this.worldTransform.z.len(),ot=0,at=0;ce.each(function(lt){var rt=ce.getItemLayout(lt),ut=Qe?Ge:ce.getItemVisual(lt,"opacity"),yt=ce.getItemVisual(lt,"color");ut==null&&(ut=1),Ne=ge.a.parseColor(Xe?ze:yt,Ne),Ne[3]*=ut;for(var ft=De?ne.getPolylineVertexCount(rt):ne.getCubicCurveVertexCount(rt[0],rt[1],rt[2],rt[3]),dt=0,ht=[],Ut=[],Kt=ot;Ktot&&(dt+=ye.dist(ht,Ut)),oe.attributes.dist.set(Kt,dt),ye.copy(Ut,ht);at=Math.max(at,dt);for(var qt=Math.random()*(Se?dt:ve),Kt=ot;Kt 1.0 || v_Percent < 0.0) { discard; } float fade = v_Percent; #ifdef SRGB_DECODE gl_FragColor = sRGBToLinear(color * v_Color); #else gl_FragColor = color * v_Color; #endif @import ecgl.common.wireframe.fragmentMain if (v_Percent > (1.0 - v_SpotPercent)) { gl_FragColor.rgb *= spotIntensity; } gl_FragColor.a *= fade; } @end`},function(He,Fe,Ce){"use strict";var _e=Ce(0),Pe=Ce.n(_e);Pe.a.extendSeriesModel({type:"series.lines3D",dependencies:["globe"],visualColorAccessPath:"lineStyle.color",getInitialData:function(ge,Ae){var be=new Pe.a.List(["value"],this);return be.hasItemOption=!1,be.initData(ge.data,[],function(we,pe,ye,xe){if(we instanceof Array)return NaN;be.hasItemOption=!0;var ce=we.value;if(ce!=null)return ce instanceof Array?ce[xe]:ce}),be},defaultOption:{coordinateSystem:"globe",globeIndex:0,geo3DIndex:0,zlevel:-10,polyline:!1,effect:{show:!1,period:4,trailWidth:4,trailLength:.2,spotIntensity:6},silent:!0,blendMode:"source-over",lineStyle:{width:1,opacity:.5}}})},function(He,Fe,Ce){"use strict";var _e=Ce(0),Pe=Ce.n(_e),ge=Ce(227),Ae=Ce(228),be=Ce(16);Pe.a.registerVisual(Object(be.a)("polygons3D"))},function(He,Fe,Ce){"use strict";var _e=Ce(0),Pe=Ce.n(_e),ge=Ce(26);function Ae(pe,ye){for(var xe=[],ce=0;ce0;this._updateSurfaceMesh(this._surfaceMesh,ce,Se,Ne);var ze=this._surfaceMesh.material;Ne?(ze.define("WIREFRAME_QUAD"),ze.set("wireframeLineWidth",Re),ze.set("wireframeLineColor",ge.a.parseColor(De.get("lineStyle.color")))):ze.undefine("WIREFRAME_QUAD"),this._initHandler(ce,ne),this._updateAnimation(ce)},_updateAnimation:function(ce){ge.a.updateVertexAnimation([["prevPosition","position"],["prevNormal","normal"]],this._prevSurfaceMesh,this._surfaceMesh,ce)},_createSurfaceMesh:function(){var ce=new ge.a.Mesh({geometry:new ge.a.Geometry({dynamic:!0,sortTriangles:!0}),shadowDepthMaterial:new ge.a.Material({shader:new ge.a.Shader(ge.a.Shader.source("ecgl.sm.depth.vertex"),ge.a.Shader.source("ecgl.sm.depth.fragment"))}),culling:!1,renderOrder:10,renderNormal:!0});return ce.geometry.createAttribute("barycentric","float",4),ce.geometry.createAttribute("prevPosition","float",3),ce.geometry.createAttribute("prevNormal","float",3),Pe.a.util.extend(ce.geometry,pe.a),ce},_initHandler:function(ce,te){var ne=ce.getData(),le=this._surfaceMesh,oe=ce.coordinateSystem;function de(ie,ue){for(var ve=1/0,Se=-1,De=[],Re=0;Re=0){var ve=[];le.geometry.attributes.position.get(ue,ve);for(var Se=oe.pointToData(ve),De=1/0,Re=-1,Ne=[],ze=0;ze65535?Uint32Array:Uint16Array)((ze-1)*(Ge-1)*6),at=function(wt,ln,In){In[1]=wt*Ge+ln,In[0]=wt*Ge+ln+1,In[3]=(wt+1)*Ge+ln+1,In[2]=(wt+1)*Ge+ln},lt=!1;if(ue){var rt=[],ut=[],yt=0;Qe?Se.init(oe.vertexCount):Se.value=null;for(var ft=[[],[],[]],dt=[],ht=[],Ut=ye.create(),Kt=function(wt,ln,In){var Kn=ln*3;return In[0]=wt[Kn],In[1]=wt[Kn+1],In[2]=wt[Kn+2],In},qt=new Float32Array(he.length),vn=new Float32Array(he.length/3*4),Ot=0;Ot ")),te.value&&(de+=" : "+Pe.a.format.encodeHTML(te.value)),de}else return be.superApply(this,"formatTooltip",arguments)},_updateCategoriesData:function(){var pe=(this.option.categories||[]).map(function(xe){return xe.value!=null?xe:Pe.a.util.extend({value:0},xe)}),ye=new Pe.a.List(["value"],this);ye.initData(pe),this._categoriesData=ye,this._categoriesModels=ye.mapArray(function(xe){return ye.getItemModel(xe,!0)})},setView:function(pe){pe.zoom!=null&&(this.option.zoom=pe.zoom),pe.offset!=null&&(this.option.offset=pe.offset)},setNodePosition:function(pe){for(var ye=0;ye "+Se)),ie++)}var De,Re=Pe.a.helper.completeDimensions(["value"],ye);De=new Pe.a.List(Re,ce),De.initData(ye);var Ne=new Pe.a.List(["value"],ce);return Ne.initData(he,de),ne&&ne(De,Ne),we()({mainData:De,struct:le,structAttr:"graph",datas:{node:De,edge:Ne},datasAttr:{node:"data",edge:"edgeData"}}),le.update(),le}},function(He,Fe,Ce){var _e=Ce(85),Pe=_e.__DEV__,ge=Ce(12),Ae=Ce(244),be=Ae.enableClassCheck;function we(le){return"_EC_"+le}var pe=function(le){this._directed=le||!1,this.nodes=[],this.edges=[],this._nodesMap={},this._edgesMap={},this.data,this.edgeData},ye=pe.prototype;ye.type="graph",ye.isDirected=function(){return this._directed},ye.addNode=function(le,oe){le=le||""+oe;var de=this._nodesMap;if(!de[we(le)]){var he=new xe(le,oe);return he.hostGraph=this,this.nodes.push(he),de[we(le)]=he,he}},ye.getNodeByIndex=function(le){var oe=this.data.getRawIndex(le);return this.nodes[oe]},ye.getNodeById=function(le){return this._nodesMap[we(le)]},ye.addEdge=function(le,oe,de){var he=this._nodesMap,ie=this._edgesMap;if(typeof le=="number"&&(le=this.nodes[le]),typeof oe=="number"&&(oe=this.nodes[oe]),xe.isInstance(le)||(le=he[we(le)]),xe.isInstance(oe)||(oe=he[we(oe)]),!(!le||!oe)){var ue=le.id+"-"+oe.id;if(!ie[ue]){var ve=new ce(le,oe,de);return ve.hostGraph=this,this._directed&&(le.outEdges.push(ve),oe.inEdges.push(ve)),le.edges.push(ve),le!==oe&&oe.edges.push(ve),this.edges.push(ve),ie[ue]=ve,ve}}},ye.getEdgeByIndex=function(le){var oe=this.edgeData.getRawIndex(le);return this.edges[oe]},ye.getEdge=function(le,oe){xe.isInstance(le)&&(le=le.id),xe.isInstance(oe)&&(oe=oe.id);var de=this._edgesMap;return this._directed?de[le+"-"+oe]:de[le+"-"+oe]||de[oe+"-"+le]},ye.eachNode=function(le,oe){for(var de=this.nodes,he=de.length,ie=0;ie=0&&le.call(oe,de[ie],ie)},ye.eachEdge=function(le,oe){for(var de=this.edges,he=de.length,ie=0;ie=0&&de[ie].node1.dataIndex>=0&&de[ie].node2.dataIndex>=0&&le.call(oe,de[ie],ie)},ye.breadthFirstTraverse=function(le,oe,de,he){if(xe.isInstance(oe)||(oe=this._nodesMap[we(oe)]),!!oe){for(var ie=de==="out"?"outEdges":de==="in"?"inEdges":"edges",ue=0;ue=0&&Se.node2.dataIndex>=0});for(var ie=0,ue=he.length;ie=0&&this[le][oe].setItemVisual(this.dataIndex,de,he)},getVisual:function(de,he){return this[le][oe].getItemVisual(this.dataIndex,de,he)},setLayout:function(de,he){this.dataIndex>=0&&this[le][oe].setItemLayout(this.dataIndex,de,he)},getLayout:function(){return this[le][oe].getItemLayout(this.dataIndex)},getGraphicEl:function(){return this[le][oe].getItemGraphicEl(this.dataIndex)},getRawIndex:function(){return this[le][oe].getRawIndex(this.dataIndex)}}};ge.mixin(xe,te("hostGraph","data")),ge.mixin(ce,te("hostGraph","edgeData")),pe.Node=xe,pe.Edge=ce,be(xe),be(ce);var ne=pe;He.exports=ne},function(He,Fe){var Ce;Ce=function(){return this}();try{Ce=Ce||Function("return this")()||(0,eval)("this")}catch(_e){typeof window=="object"&&(Ce=window)}He.exports=Ce},function(He,Fe,Ce){var _e=Ce(85),Pe=_e.__DEV__,ge=Ce(12),Ae=".",be="___EC__COMPONENT__CONTAINER___";function we(de){var he={main:"",sub:""};return de&&(de=de.split(Ae),he.main=de[0]||"",he.sub=de[1]||""),he}function pe(de){ge.assert(/^[a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)?$/.test(de),'componentType "'+de+'" illegal')}function ye(de,he){de.$constructor=de,de.extend=function(ie){var ue=this,ve=function(){ie.$constructor?ie.$constructor.apply(this,arguments):ue.apply(this,arguments)};return ge.extend(ve.prototype,ie),ve.extend=this.extend,ve.superCall=te,ve.superApply=ne,ge.inherits(ve,this),ve.superClass=ue,ve}}var xe=0;function ce(de){var he=["__\0is_clz",xe++,Math.random().toFixed(3)].join("_");de.prototype[he]=!0,de.isInstance=function(ie){return!!(ie&&ie[he])}}function te(de,he){var ie=ge.slice(arguments,2);return this.superClass.prototype[he].apply(de,ie)}function ne(de,he,ie){return this.superClass.prototype[he].apply(de,ie)}function le(de,he){he=he||{};var ie={};de.registerClass=function(Se,De){if(De){if(pe(De),De=we(De),!De.sub)ie[De.main]=Se;else if(De.sub!==be){var Re=ue(De);Re[De.sub]=Se}}return Se},de.getClass=function(Se,De,Re){var Ne=ie[Se];if(Ne&&Ne[be]&&(Ne=De?Ne[De]:null),Re&&!Ne)throw new Error(De?"Component "+Se+"."+(De||"")+" not exists. Load it first.":Se+".type should be specified.");return Ne},de.getClassesByMainType=function(Se){Se=we(Se);var De=[],Re=ie[Se.main];return Re&&Re[be]?ge.each(Re,function(Ne,ze){ze!==be&&De.push(Ne)}):De.push(Re),De},de.hasClass=function(Se){return Se=we(Se),!!ie[Se.main]},de.getAllClassMainTypes=function(){var Se=[];return ge.each(ie,function(De,Re){Se.push(Re)}),Se},de.hasSubTypes=function(Se){Se=we(Se);var De=ie[Se.main];return De&&De[be]},de.parseClassType=we;function ue(Se){var De=ie[Se.main];return(!De||!De[be])&&(De=ie[Se.main]={},De[be]=!0),De}if(he.registerWhenExtend){var ve=de.extend;ve&&(de.extend=function(Se){var De=ve.call(this,Se);return de.registerClass(De,Se.type)})}return de}function oe(de,he){}Fe.parseClassType=we,Fe.enableClassExtend=ye,Fe.enableClassCheck=ce,Fe.enableClassManagement=le,Fe.setReadOnly=oe},function(He,Fe,Ce){var _e=Ce(12),Pe=_e.each,ge="\0__link_datas",Ae="\0__link_mainData";function be(oe){var de=oe.mainData,he=oe.datas;he||(he={main:de},oe.datasAttr={main:"data"}),oe.datas=oe.mainData=null,te(de,he,oe),Pe(he,function(ie){Pe(de.TRANSFERABLE_METHODS,function(ue){ie.wrapMethod(ue,_e.curry(we,oe))})}),de.wrapMethod("cloneShallow",_e.curry(ye,oe)),Pe(de.CHANGABLE_METHODS,function(ie){de.wrapMethod(ie,_e.curry(pe,oe))}),_e.assert(he[de.dataType]===de)}function we(oe,de){if(ce(this)){var he=_e.extend({},this[ge]);he[this.dataType]=de,te(de,he,oe)}else ne(de,this.dataType,this[Ae],oe);return de}function pe(oe,de){return oe.struct&&oe.struct.update(this),de}function ye(oe,de){return Pe(de[ge],function(he,ie){he!==de&&ne(he.cloneShallow(),ie,de,oe)}),de}function xe(oe){var de=this[Ae];return oe==null||de==null?de:de[ge][oe]}function ce(oe){return oe[Ae]===oe}function te(oe,de,he){oe[ge]={},Pe(de,function(ie,ue){ne(ie,ue,oe,he)})}function ne(oe,de,he,ie){he[ge][de]=oe,oe[Ae]=he,oe.dataType=de,ie.struct&&(oe[ie.structAttr]=ie.struct,ie.struct[ie.datasAttr[de]]=oe),oe.getLinkedData=xe}var le=be;He.exports=le},function(He,Fe,Ce){"use strict";var _e=Ce(0),Pe=Ce.n(_e),ge=Ce(41),Ae=Ce.n(ge),be=Ce(2),we=Ce(20),pe=Ce(86),ye=Ce(3),xe=Ce(247),ce=Ce(249),te=Ce(65),ne=Ce.n(te),le=Ce(1),oe=Ce.n(le),de=Ce(251),he=Ce(62),ie=Ce(252),ue=oe.a.vec2;be.a.Shader.import(ie.a);var ve=1;Pe.a.extendChartView({type:"graphGL",__ecgl__:!0,init:function(Se,De){this.groupGL=new be.a.Node,this.viewGL=new we.a("orthographic"),this.viewGL.camera.left=this.viewGL.camera.right=0,this.viewGL.add(this.groupGL),this._pointsBuilder=new he.a(!0,De),this._forceEdgesMesh=new be.a.Mesh({material:new be.a.Material({shader:be.a.createShader("ecgl.forceAtlas2.edges"),transparent:!0,depthMask:!1,depthTest:!1}),$ignorePicking:!0,geometry:new be.a.Geometry({attributes:{node:new be.a.Geometry.Attribute("node","float",2),color:new be.a.Geometry.Attribute("color","float",4,"COLOR")},dynamic:!0,mainAttribute:"node"}),renderOrder:-1,mode:be.a.Mesh.LINES}),this._edgesMesh=new be.a.Mesh({material:new be.a.Material({shader:be.a.createShader("ecgl.meshLines2D"),transparent:!0,depthMask:!1,depthTest:!1}),$ignorePicking:!0,geometry:new pe.a({useNativeLine:!1,dynamic:!0}),renderOrder:-1,culling:!1}),this._layoutId=0,this._control=new de.a({zr:De.getZr(),viewGL:this.viewGL}),this._control.setTarget(this.groupGL),this._control.init(),this._clickHandler=this._clickHandler.bind(this)},render:function(Se,De,Re){this.groupGL.add(this._pointsBuilder.rootNode),this._model=Se,this._api=Re,this._initLayout(Se,De,Re),this._pointsBuilder.update(Se,De,Re),this._forceLayoutInstance instanceof xe.a||this.groupGL.remove(this._forceEdgesMesh),this._updateCamera(Se,Re),this._control.off("update"),this._control.on("update",function(){Re.dispatchAction({type:"graphGLRoam",seriesId:Se.id,zoom:this._control.getZoom(),offset:this._control.getOffset()}),this._pointsBuilder.updateView(this.viewGL.camera)},this),this._control.setZoom(ye.a.firstNotNull(Se.get("zoom"),1)),this._control.setOffset(Se.get("offset")||[0,0]);var Ne=this._pointsBuilder.getPointsMesh();if(Ne.off("mousemove",this._mousemoveHandler),Ne.off("mouseout",this._mouseOutHandler,this),Re.getZr().off("click",this._clickHandler),this._pointsBuilder.highlightOnMouseover=!0,Se.get("focusNodeAdjacency")){var ze=Se.get("focusNodeAdjacencyOn");ze==="click"?Re.getZr().on("click",this._clickHandler):ze==="mouseover"?(Ne.on("mousemove",this._mousemoveHandler,this),Ne.on("mouseout",this._mouseOutHandler,this),this._pointsBuilder.highlightOnMouseover=!1):console.warn("Unkown focusNodeAdjacencyOn value s"+ze)}this._lastMouseOverDataIndex=-1},_clickHandler:function(Se){if(!this._layouting){var De=this._pointsBuilder.getPointsMesh().dataIndex;De>=0?this._api.dispatchAction({type:"graphGLFocusNodeAdjacency",seriesId:this._model.id,dataIndex:De}):this._api.dispatchAction({type:"graphGLUnfocusNodeAdjacency",seriesId:this._model.id})}},_mousemoveHandler:function(Se){if(!this._layouting){var De=this._pointsBuilder.getPointsMesh().dataIndex;De>=0?De!==this._lastMouseOverDataIndex&&this._api.dispatchAction({type:"graphGLFocusNodeAdjacency",seriesId:this._model.id,dataIndex:De}):this._mouseOutHandler(Se),this._lastMouseOverDataIndex=De}},_mouseOutHandler:function(Se){this._layouting||(this._api.dispatchAction({type:"graphGLUnfocusNodeAdjacency",seriesId:this._model.id}),this._lastMouseOverDataIndex=-1)},_updateForceEdgesGeometry:function(Se,De){var Re=this._forceEdgesMesh.geometry,Ne=De.getEdgeData(),ze=0,Ge=this._forceLayoutInstance,Xe=Ne.count()*2;Re.attributes.node.init(Xe),Re.attributes.color.init(Xe),Ne.each(function(Qe){var nt=Se[Qe];Re.attributes.node.set(ze,Ge.getNodeUV(nt.node1)),Re.attributes.node.set(ze+1,Ge.getNodeUV(nt.node2));var $e=Ne.getItemVisual(nt.dataIndex,"color"),qe=be.a.parseColor($e);qe[3]*=ye.a.firstNotNull(Ne.getItemVisual(nt.dataIndex,"opacity"),1),Re.attributes.color.set(ze,qe),Re.attributes.color.set(ze+1,qe),ze+=2}),Re.dirty()},_updateMeshLinesGeometry:function(){var De=this._model.getEdgeData(),Se=this._edgesMesh.geometry,De=this._model.getEdgeData(),Re=this._model.getData().getLayout("points");Se.resetOffset(),Se.setVertexCount(De.count()*Se.getLineVertexCount()),Se.setTriangleCount(De.count()*Se.getLineTriangleCount());var Ne=[],ze=[],Ge=["lineStyle","width"];this._originalEdgeColors=new Float32Array(De.count()*4),this._edgeIndicesMap=new Float32Array(De.count()),De.each(function(Xe){var Qe=De.graph.getEdgeByIndex(Xe),nt=Qe.node1.dataIndex*2,$e=Qe.node2.dataIndex*2;Ne[0]=Re[nt],Ne[1]=Re[nt+1],ze[0]=Re[$e],ze[1]=Re[$e+1];var qe=De.getItemVisual(Qe.dataIndex,"color"),ot=be.a.parseColor(qe);ot[3]*=ye.a.firstNotNull(De.getItemVisual(Qe.dataIndex,"opacity"),1);var at=De.getItemModel(Qe.dataIndex),lt=ye.a.firstNotNull(at.get(Ge),1)*this._api.getDevicePixelRatio();Se.addLine(Ne,ze,ot,lt);for(var rt=0;rt<4;rt++)this._originalEdgeColors[Qe.dataIndex*4+rt]=ot[rt];this._edgeIndicesMap[Qe.dataIndex]=Xe},!1,this),Se.dirty()},_updateForceNodesGeometry:function(Se){for(var De=this._pointsBuilder.getPointsMesh(),Re=[],Ne=0;Ne=rt&&($e._syncNodePosition(Se),lt=0),Ge.getZr().refresh(),ne()(function(){ut(yt)})})}};ne()(function(){$e._forceLayoutInstanceToDispose&&($e._forceLayoutInstanceToDispose.dispose(ze.layer.renderer),$e._forceLayoutInstanceToDispose=null),ut(qe)}),this._layouting=!0}}},stopLayout:function(Se,De,Re,Ne){Ne&&Ne.from!=null&&Ne.from!==this.uid||(this._layoutId=0,this.groupGL.remove(this._forceEdgesMesh),this.groupGL.add(this._edgesMesh),this._forceLayoutInstance&&this.viewGL.layer&&(Ne&&Ne.beforeLayout||(this._syncNodePosition(Se),this._updateAfterLayout(Se,De,Re)),this._api.getZr().refresh(),this._layouting=!1))},_syncNodePosition:function(Se){var De=this._forceLayoutInstance.getNodePosition(this.viewGL.layer.renderer);Se.getData().setLayout("points",De),Se.setNodePosition(De)},_updateAfterLayout:function(Se,De,Re){this._updateMeshLinesGeometry(),this._pointsBuilder.removePositionTexture(),this._pointsBuilder.updateLayout(Se,De,Re),this._pointsBuilder.updateView(this.viewGL.camera),this._pointsBuilder.updateLabels(),this._pointsBuilder.showLabels()},focusNodeAdjacency:function(Se,De,Re,Ne){var ze=this._model.getData();this._downplayAll();var Ge=Ne.dataIndex,Xe=ze.graph,Qe=[],nt=Xe.getNodeByIndex(Ge);Qe.push(nt),nt.edges.forEach(function(qe){qe.dataIndex<0||(qe.node1!==nt&&Qe.push(qe.node1),qe.node2!==nt&&Qe.push(qe.node2))},this),this._pointsBuilder.fadeOutAll(.05),this._fadeOutEdgesAll(.05),Qe.forEach(function(qe){this._pointsBuilder.highlight(ze,qe.dataIndex)},this),this._pointsBuilder.updateLabels(Qe.map(function(qe){return qe.dataIndex}));var $e=[];nt.edges.forEach(function(qe){qe.dataIndex>=0&&(this._highlightEdge(qe.dataIndex),$e.push(qe))},this),this._focusNodes=Qe,this._focusEdges=$e},unfocusNodeAdjacency:function(Se,De,Re,Ne){this._downplayAll(),this._pointsBuilder.fadeInAll(),this._fadeInEdgesAll(),this._pointsBuilder.updateLabels()},_highlightEdge:function(Se){var De=this._model.getEdgeData().getItemModel(Se),Re=be.a.parseColor(De.get("emphasis.lineStyle.color")||De.get("lineStyle.color")),Ne=ye.a.firstNotNull(De.get("emphasis.lineStyle.opacity"),De.get("lineStyle.opacity"),1);Re[3]*=Ne,this._edgesMesh.geometry.setItemColor(this._edgeIndicesMap[Se],Re)},_downplayAll:function(){this._focusNodes&&this._focusNodes.forEach(function(Se){this._pointsBuilder.downplay(this._model.getData(),Se.dataIndex)},this),this._focusEdges&&this._focusEdges.forEach(function(Se){this._downplayEdge(Se.dataIndex)},this)},_downplayEdge:function(Se){var De=this._getColor(Se,[]);this._edgesMesh.geometry.setItemColor(this._edgeIndicesMap[Se],De)},_setEdgeFade:function(){var Se=[];return function(De,Re){this._getColor(De,Se),Se[3]*=Re,this._edgesMesh.geometry.setItemColor(this._edgeIndicesMap[De],Se)}}(),_getColor:function(Se,De){for(var Re=0;Re<4;Re++)De[Re]=this._originalEdgeColors[Se*4+Re];return De},_fadeOutEdgesAll:function(Se){var De=this._model.getData().graph;De.eachEdge(function(Re){this._setEdgeFade(Re.dataIndex,Se)},this)},_fadeInEdgesAll:function(){this._fadeOutEdgesAll(1)},_updateCamera:function(Se,De){this.viewGL.setViewport(0,0,De.getWidth(),De.getHeight(),De.getDevicePixelRatio());for(var Re=this.viewGL.camera,Ne=Se.getData(),ze=Ne.getLayout("points"),Ge=ue.create(1/0,1/0),Xe=ue.create(-1/0,-1/0),Qe=[],nt=0;ntRe.left&&qeRe.top)){var ot=Math.max(Xe[0]-Ge[0],10),at=ot/De.getWidth()*De.getHeight();ot*=1.4,at*=1.4,Ge[0]-=ot*.2,Re.left=Ge[0],Re.top=$e-at/2,Re.bottom=$e+at/2,Re.right=ot+Ge[0],Re.near=0,Re.far=100}},dispose:function(){var Se=this.viewGL.layer.renderer;this._forceLayoutInstance&&this._forceLayoutInstance.dispose(Se),this.groupGL.removeAll(),this._layoutId=-1},remove:function(){this.groupGL.removeAll(),this._control.dispose()}})},function(He,Fe,Ce){"use strict";var _e=Ce(0),Pe=Ce.n(_e),ge=Ce(2),Ae=Ce(14),be=Ce(10),we=Ce(248);ge.a.Shader.import(we.a);var pe={repulsionByDegree:!0,linLogMode:!1,strongGravityMode:!1,gravity:1,scaling:1,edgeWeightInfluence:1,jitterTolerence:.1,preventOverlap:!1,dissuadeHubs:!1,gravityCenter:null};function ye(xe){var ce={type:ge.a.Texture.FLOAT,minFilter:ge.a.Texture.NEAREST,magFilter:ge.a.Texture.NEAREST};this._positionSourceTex=new ge.a.Texture2D(ce),this._positionSourceTex.flipY=!1,this._positionTex=new ge.a.Texture2D(ce),this._positionPrevTex=new ge.a.Texture2D(ce),this._forceTex=new ge.a.Texture2D(ce),this._forcePrevTex=new ge.a.Texture2D(ce),this._weightedSumTex=new ge.a.Texture2D(ce),this._weightedSumTex.width=this._weightedSumTex.height=1,this._globalSpeedTex=new ge.a.Texture2D(ce),this._globalSpeedPrevTex=new ge.a.Texture2D(ce),this._globalSpeedTex.width=this._globalSpeedTex.height=1,this._globalSpeedPrevTex.width=this._globalSpeedPrevTex.height=1,this._nodeRepulsionPass=new Ae.a({fragment:ge.a.Shader.source("ecgl.forceAtlas2.updateNodeRepulsion")}),this._positionPass=new Ae.a({fragment:ge.a.Shader.source("ecgl.forceAtlas2.updatePosition")}),this._globalSpeedPass=new Ae.a({fragment:ge.a.Shader.source("ecgl.forceAtlas2.calcGlobalSpeed")}),this._copyPass=new Ae.a({fragment:ge.a.Shader.source("clay.compositor.output")});var te=function(ne){ne.blendEquation(ne.FUNC_ADD),ne.blendFunc(ne.ONE,ne.ONE)};this._edgeForceMesh=new ge.a.Mesh({geometry:new ge.a.Geometry({attributes:{node1:new ge.a.Geometry.Attribute("node1","float",2),node2:new ge.a.Geometry.Attribute("node2","float",2),weight:new ge.a.Geometry.Attribute("weight","float",1)},dynamic:!0,mainAttribute:"node1"}),material:new ge.a.Material({transparent:!0,shader:ge.a.createShader("ecgl.forceAtlas2.updateEdgeAttraction"),blend:te,depthMask:!1,depthText:!1}),mode:ge.a.Mesh.POINTS}),this._weightedSumMesh=new ge.a.Mesh({geometry:new ge.a.Geometry({attributes:{node:new ge.a.Geometry.Attribute("node","float",2)},dynamic:!0,mainAttribute:"node"}),material:new ge.a.Material({transparent:!0,shader:ge.a.createShader("ecgl.forceAtlas2.calcWeightedSum"),blend:te,depthMask:!1,depthText:!1}),mode:ge.a.Mesh.POINTS}),this._framebuffer=new be.a({depthBuffer:!1}),this._dummyCamera=new ge.a.OrthographicCamera({left:-1,right:1,top:1,bottom:-1,near:0,far:100}),this._globalSpeed=0}ye.prototype.updateOption=function(xe){for(var ce in pe)this[ce]=pe[ce];var te=this._nodes.length;if(te>5e4?this.jitterTolerence=10:te>5e3?this.jitterTolerence=1:this.jitterTolerence=.1,te>100?this.scaling=2:this.scaling=10,xe)for(var ce in pe)xe[ce]!=null&&(this[ce]=xe[ce]);if(this.repulsionByDegree)for(var ne=this._positionSourceTex.pixels,le=0;lexe},ye.prototype._swapTexture=function(){var xe=this._positionPrevTex;this._positionPrevTex=this._positionTex,this._positionTex=xe;var xe=this._forcePrevTex;this._forcePrevTex=this._forceTex,this._forceTex=xe;var xe=this._globalSpeedPrevTex;this._globalSpeedPrevTex=this._globalSpeedTex,this._globalSpeedTex=xe},ye.prototype._initFromSource=function(xe){this._framebuffer.attach(this._positionPrevTex),this._framebuffer.bind(xe),this._copyPass.setUniform("texture",this._positionSourceTex),this._copyPass.render(xe),xe.gl.clearColor(0,0,0,0),this._framebuffer.attach(this._forcePrevTex),xe.gl.clear(xe.gl.COLOR_BUFFER_BIT),this._framebuffer.attach(this._globalSpeedPrevTex),xe.gl.clear(xe.gl.COLOR_BUFFER_BIT),this._framebuffer.unbind(xe)},ye.prototype._resize=function(xe,ce){["_positionSourceTex","_positionTex","_positionPrevTex","_forceTex","_forcePrevTex"].forEach(function(te){this[te].width=xe,this[te].height=ce,this[te].dirty()},this)},ye.prototype.dispose=function(xe){this._framebuffer.dispose(xe),this._copyPass.dispose(xe),this._nodeRepulsionPass.dispose(xe),this._positionPass.dispose(xe),this._globalSpeedPass.dispose(xe),this._edgeForceMesh.geometry.dispose(xe),this._weightedSumMesh.geometry.dispose(xe),this._positionSourceTex.dispose(xe),this._positionTex.dispose(xe),this._positionPrevTex.dispose(xe),this._forceTex.dispose(xe),this._forcePrevTex.dispose(xe),this._weightedSumTex.dispose(xe),this._globalSpeedTex.dispose(xe),this._globalSpeedPrevTex.dispose(xe)},Pe.a.ForceAtlas2GPU=ye,Fe.a=ye},function(He,Fe,Ce){"use strict";Fe.a=`@export ecgl.forceAtlas2.updateNodeRepulsion #define NODE_COUNT 0 uniform sampler2D positionTex; uniform vec2 textureSize; uniform float gravity; uniform float scaling; uniform vec2 gravityCenter; uniform bool strongGravityMode; uniform bool preventOverlap; varying vec2 v_Texcoord; void main() { vec4 n0 = texture2D(positionTex, v_Texcoord); vec2 force = vec2(0.0); for (int i = 0; i < NODE_COUNT; i++) { vec2 uv = vec2( mod(float(i), textureSize.x) / (textureSize.x - 1.0), floor(float(i) / textureSize.x) / (textureSize.y - 1.0) ); vec4 n1 = texture2D(positionTex, uv); vec2 dir = n0.xy - n1.xy; float d2 = dot(dir, dir); if (d2 > 0.0) { float factor = 0.0; if (preventOverlap) { float d = sqrt(d2); d = d - n0.w - n1.w; if (d > 0.0) { factor = scaling * n0.z * n1.z / (d * d); } else if (d < 0.0) { factor = scaling * 100.0 * n0.z * n1.z; } } else { factor = scaling * n0.z * n1.z / d2; } force += dir * factor; } } vec2 dir = gravityCenter - n0.xy; float d = 1.0; if (!strongGravityMode) { d = length(dir); } force += dir * n0.z * gravity / (d + 1.0); gl_FragColor = vec4(force, 0.0, 1.0); } @end @export ecgl.forceAtlas2.updateEdgeAttraction.vertex attribute vec2 node1; attribute vec2 node2; attribute float weight; uniform sampler2D positionTex; uniform float edgeWeightInfluence; uniform bool preventOverlap; uniform bool linLogMode; uniform vec2 windowSize: WINDOW_SIZE; varying vec2 v_Force; void main() { vec4 n0 = texture2D(positionTex, node1); vec4 n1 = texture2D(positionTex, node2); vec2 dir = n1.xy - n0.xy; float d = length(dir); float w; if (edgeWeightInfluence == 0.0) { w = 1.0; } else if (edgeWeightInfluence == 1.0) { w = weight; } else { w = pow(weight, edgeWeightInfluence); } vec2 offset = vec2(1.0 / windowSize.x, 1.0 / windowSize.y); vec2 scale = vec2((windowSize.x - 1.0) / windowSize.x, (windowSize.y - 1.0) / windowSize.y); vec2 pos = node1 * scale * 2.0 - 1.0; gl_Position = vec4(pos + offset, 0.0, 1.0); gl_PointSize = 1.0; float factor; if (preventOverlap) { d = d - n1.w - n0.w; } if (d <= 0.0) { v_Force = vec2(0.0); return; } if (linLogMode) { factor = w * log(d) / d; } else { factor = w; } v_Force = dir * factor; } @end @export ecgl.forceAtlas2.updateEdgeAttraction.fragment varying vec2 v_Force; void main() { gl_FragColor = vec4(v_Force, 0.0, 0.0); } @end @export ecgl.forceAtlas2.calcWeightedSum.vertex attribute vec2 node; varying vec2 v_NodeUv; void main() { v_NodeUv = node; gl_Position = vec4(0.0, 0.0, 0.0, 1.0); gl_PointSize = 1.0; } @end @export ecgl.forceAtlas2.calcWeightedSum.fragment varying vec2 v_NodeUv; uniform sampler2D positionTex; uniform sampler2D forceTex; uniform sampler2D forcePrevTex; void main() { vec2 force = texture2D(forceTex, v_NodeUv).rg; vec2 forcePrev = texture2D(forcePrevTex, v_NodeUv).rg; float mass = texture2D(positionTex, v_NodeUv).z; float swing = length(force - forcePrev) * mass; float traction = length(force + forcePrev) * 0.5 * mass; gl_FragColor = vec4(swing, traction, 0.0, 0.0); } @end @export ecgl.forceAtlas2.calcGlobalSpeed uniform sampler2D globalSpeedPrevTex; uniform sampler2D weightedSumTex; uniform float jitterTolerence; void main() { vec2 weightedSum = texture2D(weightedSumTex, vec2(0.5)).xy; float prevGlobalSpeed = texture2D(globalSpeedPrevTex, vec2(0.5)).x; float globalSpeed = jitterTolerence * jitterTolerence * weightedSum.y / weightedSum.x; if (prevGlobalSpeed > 0.0) { globalSpeed = min(globalSpeed / prevGlobalSpeed, 1.5) * prevGlobalSpeed; } gl_FragColor = vec4(globalSpeed, 0.0, 0.0, 1.0); } @end @export ecgl.forceAtlas2.updatePosition uniform sampler2D forceTex; uniform sampler2D forcePrevTex; uniform sampler2D positionTex; uniform sampler2D globalSpeedTex; varying vec2 v_Texcoord; void main() { vec2 force = texture2D(forceTex, v_Texcoord).xy; vec2 forcePrev = texture2D(forcePrevTex, v_Texcoord).xy; vec4 node = texture2D(positionTex, v_Texcoord); float globalSpeed = texture2D(globalSpeedTex, vec2(0.5)).r; float swing = length(force - forcePrev); float speed = 0.1 * globalSpeed / (0.1 + globalSpeed * sqrt(swing)); float df = length(force); if (df > 0.0) { speed = min(df * speed, 10.0) / df; gl_FragColor = vec4(node.xy + speed * force, node.zw); } else { gl_FragColor = node; } } @end @export ecgl.forceAtlas2.edges.vertex uniform mat4 worldViewProjection : WORLDVIEWPROJECTION; attribute vec2 node; attribute vec4 a_Color : COLOR; varying vec4 v_Color; uniform sampler2D positionTex; void main() { gl_Position = worldViewProjection * vec4( texture2D(positionTex, node).xy, -10.0, 1.0 ); v_Color = a_Color; } @end @export ecgl.forceAtlas2.edges.fragment uniform vec4 color : [1.0, 1.0, 1.0, 1.0]; varying vec4 v_Color; void main() { gl_FragColor = color * v_Color; } @end`},function(He,Fe,Ce){"use strict";var _e=Ce(5),Pe=Ce(6),ge=Ce(250),Ae=ge.a.toString();Ae=Ae.slice(Ae.indexOf("{")+1,Ae.lastIndexOf("}"));var be={barnesHutOptimize:!0,barnesHutTheta:1.5,repulsionByDegree:!0,linLogMode:!1,strongGravityMode:!1,gravity:1,scaling:1,edgeWeightInfluence:1,jitterTolerence:.1,preventOverlap:!1,dissuadeHubs:!1,gravityCenter:null},we=function(pe){for(var ye in be)this[ye]=be[ye];if(pe)for(var ye in pe)this[ye]=pe[ye];this._nodes=[],this._edges=[],this._disposed=!1,this._positionTex=new _e.a({type:Pe.a.FLOAT,flipY:!1,minFilter:Pe.a.NEAREST,magFilter:Pe.a.NEAREST})};we.prototype.initData=function(pe,ye){var xe=new Blob([Ae]),ce=window.URL.createObjectURL(xe);this._worker=new Worker(ce),this._worker.onmessage=this._$onupdate.bind(this),this._nodes=pe,this._edges=ye,this._frame=0;for(var te=pe.length,ne=ye.length,le=new Float32Array(te*2),oe=new Float32Array(te),de=new Float32Array(te),he=new Float32Array(ne*2),ie=new Float32Array(ne),ue=0;ue5e4?ye.jitterTolerence=10:ne>5e3?ye.jitterTolerence=1:ye.jitterTolerence=.1,ne>100?ye.scaling=2:ye.scaling=10,ne>1e3?ye.barnesHutOptimize=!0:ye.barnesHutOptimize=!1,pe)for(var xe in be)pe[xe]!=null&&(ye[xe]=pe[xe]);if(!ye.gravityCenter){for(var le=[1/0,1/0],oe=[-1/0,-1/0],de=0;depe},we.prototype.getNodePosition=function(pe,ye){if(ye||(ye=new Float32Array(this._nodes.length*2)),this._positionArr)for(var xe=0;xe0&&(oe=1/Math.sqrt(oe),ce[0]=te[0]*oe,ce[1]=te[1]*oe),ce},negate:function(ce,te){return ce[0]=-te[0],ce[1]=-te[1],ce},copy:function(ce,te){return ce[0]=te[0],ce[1]=te[1],ce},set:function(ce,te,ne){return ce[0]=te,ce[1]=ne,ce}};function ge(){this.subRegions=[],this.nSubRegions=0,this.node=null,this.mass=0,this.centerOfMass=null,this.bbox=new Float32Array(4),this.size=0}var Ae=ge.prototype;Ae.beforeUpdate=function(){for(var ce=0;ce=ce&&this.bbox[1]<=te&&this.bbox[3]>=te},Ae.setBBox=function(ce,te,ne,le){this.bbox[0]=ce,this.bbox[1]=te,this.bbox[2]=ne,this.bbox[3]=le,this.size=(ne-ce+le-te)/2},Ae._newSubRegion=function(){var ce=this.subRegions[this.nSubRegions];return ce||(ce=new ge,this.subRegions[this.nSubRegions]=ce),this.nSubRegions++,ce},Ae._addNodeToSubRegion=function(ce){var te=this.findSubRegion(ce.position[0],ce.position[1]),ne=this.bbox;if(!te){var le=(ne[0]+ne[2])/2,oe=(ne[1]+ne[3])/2,de=(ne[2]-ne[0])/2,he=(ne[3]-ne[1])/2,ie=ce.position[0]>=le?1:0,ue=ce.position[1]>=oe?1:0,te=this._newSubRegion();te.setBBox(ie*de+ne[0],ue*he+ne[1],(ie+1)*de+ne[0],(ue+1)*he+ne[1])}te.addNode(ce)},Ae._updateCenterOfMass=function(ce){this.centerOfMass==null&&(this.centerOfMass=new Float32Array(2));var te=this.centerOfMass[0]*this.mass,ne=this.centerOfMass[1]*this.mass;te+=ce.position[0]*ce.mass,ne+=ce.position[1]*ce.mass,this.mass+=ce.mass,this.centerOfMass[0]=te/this.mass,this.centerOfMass[1]=ne/this.mass};function be(){this.position=new Float32Array(2),this.force=Pe.create(),this.forcePrev=Pe.create(),this.mass=1,this.inDegree=0,this.outDegree=0}function we(ce,te){this.source=ce,this.target=te,this.weight=1}function pe(){this.autoSettings=!0,this.barnesHutOptimize=!0,this.barnesHutTheta=1.5,this.repulsionByDegree=!0,this.linLogMode=!1,this.strongGravityMode=!1,this.gravity=1,this.scaling=1,this.edgeWeightInfluence=1,this.jitterTolerence=.1,this.preventOverlap=!1,this.dissuadeHubs=!1,this.rootRegion=new ge,this.rootRegion.centerOfMass=Pe.create(),this.nodes=[],this.edges=[],this.bbox=new Float32Array(4),this.gravityCenter=null,this._massArr=null,this._swingingArr=null,this._sizeArr=null,this._globalSpeed=0}var ye=pe.prototype;ye.initNodes=function(ce,te,ne){var le=te.length;this.nodes.length=0;for(var oe=typeof ne!="undefined",de=0;de0&&(this.strongGravityMode?this.applyNodeStrongGravity(le):this.applyNodeGravity(le))}for(var te=0;te0&&(De=Math.min(De/this._globalSpeed,1.5)*this._globalSpeed),this._globalSpeed=De;for(var te=0;te0&&(Re=Math.min(Ne*Re,10)/Ne,Pe.scaleAndAdd(ne.position,ne.position,ne.force,Re))}},ye.applyRegionToNodeRepulsion=function(){var ce=Pe.create();return function(ne,le){if(ne.node)this.applyNodeToNodeRepulsion(ne.node,le,!0);else{Pe.sub(ce,le.position,ne.centerOfMass);var oe=ce[0]*ce[0]+ce[1]*ce[1];if(oe>this.barnesHutTheta*ne.size*ne.size){var de=this.scaling*le.mass*ne.mass/oe;Pe.scaleAndAdd(le.force,le.force,ce,de)}else for(var he=0;he0)he=this.scaling*ne.mass*le.mass/(ie*ie);else if(ie<0)he=this.scaling*100*ne.mass*le.mass;else return}else he=this.scaling*ne.mass*le.mass/de;Pe.scaleAndAdd(ne.force,ne.force,ce,he),Pe.scaleAndAdd(le.force,le.force,ce,-he)}}}}(),ye.applyEdgeAttraction=function(){var ce=Pe.create();return function(ne){var le=ne.source,oe=ne.target;Pe.sub(ce,le.position,oe.position);var de=Pe.len(ce),he;this.edgeWeightInfluence===0?he=1:this.edgeWeightInfluence===1?he=ne.weight:he=Math.pow(ne.weight,this.edgeWeightInfluence);var ie;this.preventOverlap&&(de=de-le.size-oe.size,de<=0)||(this.linLogMode?ie=-he*Math.log(de+1)/(de+1):ie=-he,Pe.scaleAndAdd(le.force,le.force,ce,ie),Pe.scaleAndAdd(oe.force,oe.force,ce,-ie))}}(),ye.applyNodeGravity=function(){var ce=Pe.create();return function(te){Pe.sub(ce,this.gravityCenter,te.position);var ne=Pe.len(ce);Pe.scaleAndAdd(te.force,te.force,ce,this.gravity*te.mass/(ne+1))}}(),ye.applyNodeStrongGravity=function(){var ce=Pe.create();return function(te){Pe.sub(ce,this.gravityCenter,te.position),Pe.scaleAndAdd(te.force,te.force,ce,this.gravity*te.mass)}}(),ye.updateBBox=function(){for(var ce=1/0,te=1/0,ne=-1/0,le=-1/0,oe=0;oe0?1.1:.9,xe=Math.max(Math.min(this._zoom*ye,this.maxZoom),this.minZoom);ye=xe/this._zoom;var ce=this._convertPos(we,pe),te=(ce.x-this._dx)*(ye-1),ne=(ce.y-this._dy)*(ye-1);this._dx-=te,this._dy-=ne,this._zoom=xe,this._needsUpdate=!0}}},dispose:function(){var Ae=this.zr;Ae.off("mousedown",this._mouseDownHandler),Ae.off("mousemove",this._mouseMoveHandler),Ae.off("mouseup",this._mouseUpHandler),Ae.off("mousewheel",this._mouseWheelHandler),Ae.off("globalout",this._mouseUpHandler),Ae.animation.off("frame",this._update)}});Fe.a=ge},function(He,Fe,Ce){"use strict";Fe.a=`@export ecgl.lines2D.vertex uniform mat4 worldViewProjection : WORLDVIEWPROJECTION; attribute vec2 position: POSITION; attribute vec4 a_Color : COLOR; varying vec4 v_Color; #ifdef POSITIONTEXTURE_ENABLED uniform sampler2D positionTexture; #endif void main() { gl_Position = worldViewProjection * vec4(position, -10.0, 1.0); v_Color = a_Color; } @end @export ecgl.lines2D.fragment uniform vec4 color : [1.0, 1.0, 1.0, 1.0]; varying vec4 v_Color; void main() { gl_FragColor = color * v_Color; } @end @export ecgl.meshLines2D.vertex attribute vec2 position: POSITION; attribute vec2 normal; attribute float offset; attribute vec4 a_Color : COLOR; uniform mat4 worldViewProjection : WORLDVIEWPROJECTION; uniform vec4 viewport : VIEWPORT; varying vec4 v_Color; varying float v_Miter; void main() { vec4 p2 = worldViewProjection * vec4(position + normal, -10.0, 1.0); gl_Position = worldViewProjection * vec4(position, -10.0, 1.0); p2.xy /= p2.w; gl_Position.xy /= gl_Position.w; vec2 N = normalize(p2.xy - gl_Position.xy); gl_Position.xy += N * offset / viewport.zw * 2.0; gl_Position.xy *= gl_Position.w; v_Color = a_Color; } @end @export ecgl.meshLines2D.fragment uniform vec4 color : [1.0, 1.0, 1.0, 1.0]; varying vec4 v_Color; varying float v_Miter; void main() { gl_FragColor = color * v_Color; } @end`},function(He,Fe,Ce){"use strict";var _e=Ce(0),Pe=Ce.n(_e),ge=Ce(254),Ae=Ce(258)},function(He,Fe,Ce){"use strict";var _e=Ce(0),Pe=Ce.n(_e),ge=Ce(2),Ae=Ce(3),be=Ce(20),we=Ce(255);Pe.a.extendChartView({type:"flowGL",__ecgl__:!0,init:function(pe,ye){this.viewGL=new be.a("orthographic"),this.groupGL=new ge.a.Node,this.viewGL.add(this.groupGL),this._particleSurface=new we.a;var xe=new ge.a.Mesh({geometry:new ge.a.PlaneGeometry,material:new ge.a.Material({shader:new ge.a.Shader({vertex:ge.a.Shader.source("ecgl.color.vertex"),fragment:ge.a.Shader.source("ecgl.color.fragment")}),transparent:!0})});xe.material.enableTexture("diffuseMap"),this.groupGL.add(xe),this._planeMesh=xe},render:function(pe,ye,xe){var ce=this._particleSurface;ce.setParticleType(pe.get("particleType")),ce.setSupersampling(pe.get("supersampling")),this._updateData(pe,xe),this._updateCamera(xe.getWidth(),xe.getHeight(),xe.getDevicePixelRatio());var te=Ae.a.firstNotNull(pe.get("particleDensity"),128);ce.setParticleDensity(te,te);var ne=this._planeMesh,le=+new Date,oe=this,de=!0;ne.__percent=0,ne.stopAnimation(),ne.animate("",{loop:!0}).when(1e5,{__percent:1}).during(function(){var ue=+new Date,ve=Math.min(ue-le,20);le=le+ve,oe._renderer&&(ce.update(oe._renderer,xe,ve/1e3,de),ne.material.set("diffuseMap",ce.getSurfaceTexture())),de=!1}).start();var he=pe.getModel("itemStyle"),ie=ge.a.parseColor(he.get("color"));ie[3]*=Ae.a.firstNotNull(he.get("opacity"),1),ne.material.set("color",ie),ce.setColorTextureImage(pe.get("colorTexture"),xe),ce.setParticleSize(pe.get("particleSize")),ce.particleSpeedScaling=pe.get("particleSpeed"),ce.motionBlurFactor=1-Math.pow(.1,pe.get("particleTrail"))},updateTransform:function(pe,ye,xe){this._updateData(pe,xe)},afterRender:function(pe,ye,xe,ce){var te=ce.renderer;this._renderer=te},_updateData:function(pe,ye){var xe=pe.coordinateSystem,ce=xe.dimensions.map(function(Ge){return pe.coordDimToDataDim(Ge)[0]}),te=pe.getData(),ne=te.getDataExtent(ce[0]),le=te.getDataExtent(ce[1]),oe=pe.get("gridWidth"),de=pe.get("gridHeight");if(oe==null||oe==="auto"){var he=(ne[1]-ne[0])/(le[1]-le[0]);oe=Math.round(Math.sqrt(he*te.count()))}(de==null||de==="auto")&&(de=Math.ceil(te.count()/oe));var ie=this._particleSurface.vectorFieldTexture,ue=ie.pixels;if(!ue||ue.length!==de*oe*4)ue=ie.pixels=new Float32Array(oe*de*4);else for(var ve=0;ve=359;oe&&(te[0]>0&&(te[0]=0),ne[0]0?de[de.length-1]:this._lastFrameTexture},setRegion:function(de){this._particlePass.setUniform("region",de)},resize:function(de,he){this._lastFrameTexture.width=de*this._supersampling,this._lastFrameTexture.height=he*this._supersampling,this._thisFrameTexture.width=de*this._supersampling,this._thisFrameTexture.height=he*this._supersampling,this._width=de,this._height=he},setParticleSize:function(de){var he=this._getParticleMesh();if(de<=2){he.material.disableTexture("spriteTexture"),he.material.transparent=!1;return}this._spriteTexture||(this._spriteTexture=new we.a),(!this._spriteTexture.image||this._spriteTexture.image.width!==de)&&(this._spriteTexture.image=le(de),this._spriteTexture.dirty()),he.material.transparent=!0,he.material.enableTexture("spriteTexture"),he.material.set("spriteTexture",this._spriteTexture),this._particleSize=de},setGradientTexture:function(de){var he=this._getParticleMesh().material;he[de?"enableTexture":"disableTexture"]("gradientTexture"),he.setUniform("gradientTexture",de)},setColorTextureImage:function(de,he){var ie=this._getParticleMesh().material;ie.setTextureImage("colorTexture",de,he,{flipY:!0})},setParticleType:function(de){this._particleType=de},clearFrame:function(de){var he=this._frameBuffer;he.attach(this._lastFrameTexture),he.bind(de),de.gl.clear(de.gl.DEPTH_BUFFER_BIT|de.gl.COLOR_BUFFER_BIT),he.unbind(de)},setSupersampling:function(de){this._supersampling=de,this.resize(this._width,this._height)},_updateDownsampleTextures:function(de,he){for(var ie=this._downsampleTextures,ue=Math.max(Math.floor(Math.log(this._supersampling/he.getDevicePixelRatio())/Math.log(2)),0),ve=2,Se=this._width*this._supersampling,De=this._height*this._supersampling,Re=0;Re65535?new Uint32Array(ye*3):new Uint16Array(ye*3))},addLine:function(be){var we=this._vertexOffset;this.attributes.position.set(we,[be[0],be[1],1]),this.attributes.position.set(we+1,[be[0],be[1],-1]),this.attributes.position.set(we+2,[be[0],be[1],2]),this.attributes.position.set(we+3,[be[0],be[1],-2]),this.setTriangleIndices(this._faceOffset++,[we,we+1,we+2]),this.setTriangleIndices(this._faceOffset++,[we+1,we+2,we+3]),this._vertexOffset+=4}});Fe.a=Ae},function(He,Fe,Ce){"use strict";Fe.a=`@export ecgl.vfParticle.particle.fragment uniform sampler2D particleTexture; uniform sampler2D spawnTexture; uniform sampler2D velocityTexture; uniform float deltaTime; uniform float elapsedTime; uniform float speedScaling : 1.0; uniform vec2 textureSize; uniform vec4 region : [0, 0, 1, 1]; uniform float firstFrameTime; varying vec2 v_Texcoord; void main() { vec4 p = texture2D(particleTexture, v_Texcoord); bool spawn = false; if (p.w <= 0.0) { p = texture2D(spawnTexture, fract(v_Texcoord + elapsedTime / 10.0)); p.w -= firstFrameTime; spawn = true; } vec2 v = texture2D(velocityTexture, fract(p.xy * region.zw + region.xy)).xy; v = (v - 0.5) * 2.0; p.z = length(v); p.xy += v * deltaTime / 10.0 * speedScaling; p.w -= deltaTime; if (spawn || p.xy != fract(p.xy)) { p.z = 0.0; } p.xy = fract(p.xy); gl_FragColor = p; } @end @export ecgl.vfParticle.renderPoints.vertex #define PI 3.1415926 attribute vec2 texcoord : TEXCOORD_0; uniform sampler2D particleTexture; uniform mat4 worldViewProjection : WORLDVIEWPROJECTION; uniform float size : 1.0; varying float v_Mag; varying vec2 v_Uv; void main() { vec4 p = texture2D(particleTexture, texcoord); if (p.w > 0.0 && p.z > 1e-5) { gl_Position = worldViewProjection * vec4(p.xy * 2.0 - 1.0, 0.0, 1.0); } else { gl_Position = vec4(100000.0, 100000.0, 100000.0, 1.0); } v_Mag = p.z; v_Uv = p.xy; gl_PointSize = size; } @end @export ecgl.vfParticle.renderPoints.fragment uniform vec4 color : [1.0, 1.0, 1.0, 1.0]; uniform sampler2D gradientTexture; uniform sampler2D colorTexture; uniform sampler2D spriteTexture; varying float v_Mag; varying vec2 v_Uv; void main() { gl_FragColor = color; #ifdef SPRITETEXTURE_ENABLED gl_FragColor *= texture2D(spriteTexture, gl_PointCoord); if (color.a == 0.0) { discard; } #endif #ifdef GRADIENTTEXTURE_ENABLED gl_FragColor *= texture2D(gradientTexture, vec2(v_Mag, 0.5)); #endif #ifdef COLORTEXTURE_ENABLED gl_FragColor *= texture2D(colorTexture, v_Uv); #endif } @end @export ecgl.vfParticle.renderLines.vertex #define PI 3.1415926 attribute vec3 position : POSITION; uniform sampler2D particleTexture; uniform sampler2D prevParticleTexture; uniform float size : 1.0; uniform vec4 vp: VIEWPORT; uniform mat4 worldViewProjection : WORLDVIEWPROJECTION; varying float v_Mag; varying vec2 v_Uv; @import clay.util.rand void main() { vec4 p = texture2D(particleTexture, position.xy); vec4 p2 = texture2D(prevParticleTexture, position.xy); p.xy = p.xy * 2.0 - 1.0; p2.xy = p2.xy * 2.0 - 1.0; if (p.w > 0.0 && p.z > 1e-5) { vec2 dir = normalize(p.xy - p2.xy); vec2 norm = vec2(dir.y / vp.z, -dir.x / vp.w) * sign(position.z) * size; if (abs(position.z) == 2.0) { gl_Position = vec4(p.xy + norm, 0.0, 1.0); v_Uv = p.xy; v_Mag = p.z; } else { gl_Position = vec4(p2.xy + norm, 0.0, 1.0); v_Mag = p2.z; v_Uv = p2.xy; } gl_Position = worldViewProjection * gl_Position; } else { gl_Position = vec4(100000.0, 100000.0, 100000.0, 1.0); } } @end @export ecgl.vfParticle.renderLines.fragment uniform vec4 color : [1.0, 1.0, 1.0, 1.0]; uniform sampler2D gradientTexture; uniform sampler2D colorTexture; varying float v_Mag; varying vec2 v_Uv; void main() { gl_FragColor = color; #ifdef GRADIENTTEXTURE_ENABLED gl_FragColor *= texture2D(gradientTexture, vec2(v_Mag, 0.5)); #endif #ifdef COLORTEXTURE_ENABLED gl_FragColor *= texture2D(colorTexture, v_Uv); #endif } @end `},function(He,Fe,Ce){"use strict";var _e=Ce(0),Pe=Ce.n(_e);Pe.a.extendSeriesModel({type:"series.flowGL",dependencies:["geo","grid","bmap"],visualColorAccessPath:"itemStyle.color",getInitialData:function(ge,Ae){var be=Pe.a.getCoordinateSystemDimensions(this.get("coordinateSystem"))||["x","y"];if(be.length>2)throw new Error("flowGL can only be used on 2d coordinate systems.");be.push("vx","vy");var we=Pe.a.helper.completeDimensions(be,this.getSource(),{encodeDef:this.get("encode"),dimsDef:this.get("dimensions")}),pe=new Pe.a.List(we,this);return pe.initData(this.getSource()),pe},defaultOption:{coordinateSystem:"cartesian2d",zlevel:10,supersampling:1,particleType:"point",particleDensity:128,particleSize:1,particleSpeed:1,particleTrail:2,colorTexture:null,gridWidth:"auto",gridHeight:"auto",itemStyle:{color:"#fff",opacity:.8}}})},function(He,Fe,Ce){"use strict";var _e=Ce(0),Pe=Ce.n(_e),ge=Ce(260),Ae=Ce(261),be=Ce(16);Pe.a.registerVisual(Object(be.a)("linesGL"))},function(He,Fe,Ce){"use strict";var _e=Ce(0),Pe=Ce.n(_e),ge=Ce(12),Ae=Ce.n(ge),be=Pe.a.extendSeriesModel({type:"series.linesGL",dependencies:["grid","geo"],visualColorAccessPath:"lineStyle.color",streamEnabled:!0,init:function(we){var pe=this._processFlatCoordsArray(we.data);this._flatCoords=pe.flatCoords,this._flatCoordsOffset=pe.flatCoordsOffset,pe.flatCoords&&(we.data=new Float32Array(pe.count)),be.superApply(this,"init",arguments)},mergeOption:function(we){var pe=this._processFlatCoordsArray(we.data);this._flatCoords=pe.flatCoords,this._flatCoordsOffset=pe.flatCoordsOffset,pe.flatCoords&&(we.data=new Float32Array(pe.count)),be.superApply(this,"mergeOption",arguments)},appendData:function(we){var pe=this._processFlatCoordsArray(we.data);pe.flatCoords&&(this._flatCoords?(this._flatCoords=Object(ge.concatArray)(this._flatCoords,pe.flatCoords),this._flatCoordsOffset=Object(ge.concatArray)(this._flatCoordsOffset,pe.flatCoordsOffset)):(this._flatCoords=pe.flatCoords,this._flatCoordsOffset=pe.flatCoordsOffset),we.data=new Float32Array(pe.count)),this.getRawData().appendData(we.data)},_getCoordsFromItemModel:function(we){var pe=this.getData().getItemModel(we),ye=pe.option instanceof Array?pe.option:pe.getShallow("coords");if(!(ye instanceof Array&&ye.length>0&&ye[0]instanceof Array))throw new Error("Invalid coords "+JSON.stringify(ye)+". Lines must have 2d coords array in data item.");return ye},getLineCoordsCount:function(we){return this._flatCoordsOffset?this._flatCoordsOffset[we*2+1]:this._getCoordsFromItemModel(we).length},getLineCoords:function(we,pe){if(this._flatCoordsOffset){for(var ye=this._flatCoordsOffset[we*2],xe=this._flatCoordsOffset[we*2+1],ce=0;ceye)throw new Error("Invalid data format.")}}return{flatCoordsOffset:new Uint32Array(xe.buffer,0,ne),flatCoords:ce,count:le}}return{flatCoordsOffset:null,flatCoords:null,count:we.length}},getInitialData:function(we,pe){var ye=new Pe.a.List(["value"],this);return ye.hasItemOption=!1,ye.initData(we.data,[],function(xe,ce,te,ne){if(xe instanceof Array)return NaN;ye.hasItemOption=!0;var le=xe.value;if(le!=null)return le instanceof Array?le[ne]:le}),ye},defaultOption:{coordinateSystem:"geo",zlevel:10,progressive:1e4,progressiveThreshold:5e4,blendMode:"source-over",lineStyle:{opacity:.8},postEffect:{enable:!1,colorCorrection:{exposure:0,brightness:0,contrast:1,saturation:1,enable:!0}}}})},function(He,Fe,Ce){"use strict";var _e=Ce(0),Pe=Ce.n(_e),ge=Ce(2),Ae=Ce(20),be=Ce(86),we=Ce(84),pe=Ce(3);Pe.a.extendChartView({type:"linesGL",__ecgl__:!0,init:function(ye,xe){this.groupGL=new ge.a.Node,this.viewGL=new Ae.a("orthographic"),this.viewGL.add(this.groupGL),this._glViewHelper=new we.a(this.viewGL),this._nativeLinesShader=ge.a.createShader("ecgl.lines3D"),this._meshLinesShader=ge.a.createShader("ecgl.meshLines3D"),this._linesMeshes=[],this._currentStep=0},render:function(ye,xe,ce){this.groupGL.removeAll(),this._glViewHelper.reset(ye,ce);var te=this._linesMeshes[0];te||(te=this._linesMeshes[0]=this._createLinesMesh(ye)),this._linesMeshes.length=1,this.groupGL.add(te),this._updateLinesMesh(ye,te,0,ye.getData().count()),this.viewGL.setPostEffect(ye.getModel("postEffect"),ce)},incrementalPrepareRender:function(ye,xe,ce){this.groupGL.removeAll(),this._glViewHelper.reset(ye,ce),this._currentStep=0,this.viewGL.setPostEffect(ye.getModel("postEffect"),ce)},incrementalRender:function(ye,xe,ce,te){var ne=this._linesMeshes[this._currentStep];ne||(ne=this._createLinesMesh(xe),this._linesMeshes[this._currentStep]=ne),this._updateLinesMesh(xe,ne,ye.start,ye.end),this.groupGL.add(ne),te.getZr().refresh(),this._currentStep++},updateTransform:function(ye,xe,ce){ye.coordinateSystem.getRoamTransform&&this._glViewHelper.updateTransform(ye,ce)},_createLinesMesh:function(ye){var xe=new ge.a.Mesh({$ignorePicking:!0,material:new ge.a.Material({shader:ge.a.createShader("ecgl.lines3D"),transparent:!0,depthMask:!1,depthTest:!1}),geometry:new be.a({segmentScale:10,useNativeLine:!0,dynamic:!1}),mode:ge.a.Mesh.LINES,culling:!1});return xe},_updateLinesMesh:function(ye,xe,ce,te){var ne=ye.getData();xe.material.blend=ye.get("blendMode")==="lighter"?ge.a.additiveBlend:null;var le=ye.get("lineStyle.curveness")||0,oe=ye.get("polyline"),de=xe.geometry,he=ye.coordinateSystem,ie=pe.a.firstNotNull(ye.get("lineStyle.width"),1);ie>1?(xe.material.shader!==this._meshLinesShader&&xe.material.attachShader(this._meshLinesShader),xe.mode=ge.a.Mesh.TRIANGLES):(xe.material.shader!==this._nativeLinesShader&&xe.material.attachShader(this._nativeLinesShader),xe.mode=ge.a.Mesh.LINES),ce=ce||0,te=te||ne.count(),de.resetOffset();var ue=0,ve=0,Se=[],De=[],Re=[],Ne=[],ze=[],Ge=.3,Xe=.7;function Qe(){De[0]=Se[0]*Xe+Ne[0]*Ge-(Se[1]-Ne[1])*le,De[1]=Se[1]*Xe+Ne[1]*Ge-(Ne[0]-Se[0])*le,Re[0]=Se[0]*Ge+Ne[0]*Xe-(Se[1]-Ne[1])*le,Re[1]=Se[1]*Ge+Ne[1]*Xe-(Ne[0]-Se[0])*le}if(oe||le!==0)for(var nt=ce;nt0&&(De=ie[0]),De instanceof Error)throw De;var Re=new Error("Unhandled error."+(De?" ("+De.message+")":""));throw Re.context=De,Re}var Ne=Se[he];if(Ne===void 0)return!1;if(typeof Ne=="function")Ie(Ne,this,ie);else for(var ze=Ne.length,Ge=xe(Ne,ze),ue=0;ue0&&De.length>ve&&!De.warned){De.warned=!0;var Re=new Error("Possible EventEmitter memory leak detected. "+De.length+" "+String(he)+" listeners added. Use emitter.setMaxListeners() to increase limit");Re.name="MaxListenersExceededWarning",Re.emitter=de,Re.type=he,Re.count=De.length,He(Re)}return de}Ce.prototype.addListener=function(he,ie){return Ae(this,he,ie,!1)},Ce.prototype.on=Ce.prototype.addListener,Ce.prototype.prependListener=function(he,ie){return Ae(this,he,ie,!0)};function be(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function we(de,he,ie){var ue={fired:!1,wrapFn:void 0,target:de,type:he,listener:ie},ve=be.bind(ue);return ve.listener=ie,ue.wrapFn=ve,ve}Ce.prototype.once=function(he,ie){return Pe(ie),this.on(he,we(this,he,ie)),this},Ce.prototype.prependOnceListener=function(he,ie){return Pe(ie),this.prependListener(he,we(this,he,ie)),this},Ce.prototype.removeListener=function(he,ie){var ue,ve,Se,De,Re;if(Pe(ie),ve=this._events,ve===void 0)return this;if(ue=ve[he],ue===void 0)return this;if(ue===ie||ue.listener===ie)--this._eventsCount===0?this._events=Object.create(null):(delete ve[he],ve.removeListener&&this.emit("removeListener",he,ue.listener||ie));else if(typeof ue!="function"){for(Se=-1,De=ue.length-1;De>=0;De--)if(ue[De]===ie||ue[De].listener===ie){Re=ue[De].listener,Se=De;break}if(Se<0)return this;Se===0?ue.shift():ce(ue,Se),ue.length===1&&(ve[he]=ue[0]),ve.removeListener!==void 0&&this.emit("removeListener",he,Re||ie)}return this},Ce.prototype.off=Ce.prototype.removeListener,Ce.prototype.removeAllListeners=function(he){var ie,ue,ve;if(ue=this._events,ue===void 0)return this;if(ue.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):ue[he]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete ue[he]),this;if(arguments.length===0){var Se=Object.keys(ue),De;for(ve=0;ve=0;ve--)this.removeListener(he,ie[ve]);return this};function pe(de,he,ie){var ue=de._events;if(ue===void 0)return[];var ve=ue[he];return ve===void 0?[]:typeof ve=="function"?ie?[ve.listener||ve]:[ve]:ie?te(ve):xe(ve,ve.length)}Ce.prototype.listeners=function(he){return pe(this,he,!0)},Ce.prototype.rawListeners=function(he){return pe(this,he,!1)},Ce.listenerCount=function(de,he){return typeof de.listenerCount=="function"?de.listenerCount(he):ye.call(de,he)},Ce.prototype.listenerCount=ye;function ye(de){var he=this._events;if(he!==void 0){var ie=he[de];if(typeof ie=="function")return 1;if(ie!==void 0)return ie.length}return 0}Ce.prototype.eventNames=function(){return this._eventsCount>0?Be(this._events):[]};function xe(de,he){for(var ie=new Array(he),ue=0;ue0&&(ye=pe.removeMin(),xe=we[ye],xe.distance!==Number.POSITIVE_INFINITY);)be(ye).forEach(ce);return we}},92008:function(St,Dt,Ie){var Be=Ie(95329),He=Ie(94558);St.exports=Fe;function Fe(Ce){return Be.filter(He(Ce),function(_e){return _e.length>1||_e.length===1&&Ce.hasEdge(_e[0],_e[0])})}},22893:function(St,Dt,Ie){var Be=Ie(95329);St.exports=Fe;var He=Be.constant(1);function Fe(_e,Pe,ge){return Ce(_e,Pe||He,ge||function(Ae){return _e.outEdges(Ae)})}function Ce(_e,Pe,ge){var Ae={},be=_e.nodes();return be.forEach(function(we){Ae[we]={},Ae[we][we]={distance:0},be.forEach(function(pe){we!==pe&&(Ae[we][pe]={distance:Number.POSITIVE_INFINITY})}),ge(we).forEach(function(pe){var ye=pe.v===we?pe.w:pe.v,xe=Pe(pe);Ae[we][ye]={distance:xe,predecessor:we}})}),be.forEach(function(we){var pe=Ae[we];be.forEach(function(ye){var xe=Ae[ye];be.forEach(function(ce){var te=xe[we],ne=pe[ce],le=xe[ce],oe=te.distance+ne.distance;oe0;){if(we=be.removeMin(),Be.has(Ae,we))ge.setEdge(we,Ae[we]);else{if(ye)throw new Error("Input graph is not connected: "+_e);ye=!0}_e.nodeEdges(we).forEach(pe)}return ge}},94558:function(St,Dt,Ie){var Be=Ie(95329);St.exports=He;function He(Fe){var Ce=0,_e=[],Pe={},ge=[];function Ae(be){var we=Pe[be]={onStack:!0,lowlink:Ce,index:Ce++};if(_e.push(be),Fe.successors(be).forEach(function(xe){Be.has(Pe,xe)?Pe[xe].onStack&&(we.lowlink=Math.min(we.lowlink,Pe[xe].index)):(Ae(xe),we.lowlink=Math.min(we.lowlink,Pe[xe].lowlink))}),we.lowlink===we.index){var pe=[],ye;do ye=_e.pop(),Pe[ye].onStack=!1,pe.push(ye);while(be!==ye);ge.push(pe)}}return Fe.nodes().forEach(function(be){Be.has(Pe,be)||Ae(be)}),ge}},7793:function(St,Dt,Ie){var Be=Ie(95329);St.exports=He,He.CycleException=Fe;function He(Ce){var _e={},Pe={},ge=[];function Ae(be){if(Be.has(Pe,be))throw new Fe;Be.has(_e,be)||(Pe[be]=!0,_e[be]=!0,Be.each(Ce.predecessors(be),Ae),delete Pe[be],ge.push(be))}if(Be.each(Ce.sinks(),Ae),Be.size(_e)!==Ce.nodeCount())throw new Fe;return ge}function Fe(){}Fe.prototype=new Error},36614:function(St,Dt,Ie){var Be=Ie(95329);St.exports=He;function He(){this._arr=[],this._keyIndices={}}He.prototype.size=function(){return this._arr.length},He.prototype.keys=function(){return this._arr.map(function(Fe){return Fe.key})},He.prototype.has=function(Fe){return Be.has(this._keyIndices,Fe)},He.prototype.priority=function(Fe){var Ce=this._keyIndices[Fe];if(Ce!==void 0)return this._arr[Ce].priority},He.prototype.min=function(){if(this.size()===0)throw new Error("Queue underflow");return this._arr[0].key},He.prototype.add=function(Fe,Ce){var _e=this._keyIndices;if(Fe=String(Fe),!Be.has(_e,Fe)){var Pe=this._arr,ge=Pe.length;return _e[Fe]=ge,Pe.push({key:Fe,priority:Ce}),this._decrease(ge),!0}return!1},He.prototype.removeMin=function(){this._swap(0,this._arr.length-1);var Fe=this._arr.pop();return delete this._keyIndices[Fe.key],this._heapify(0),Fe.key},He.prototype.decrease=function(Fe,Ce){var _e=this._keyIndices[Fe];if(Ce>this._arr[_e].priority)throw new Error("New priority is greater than current priority. Key: "+Fe+" Old: "+this._arr[_e].priority+" New: "+Ce);this._arr[_e].priority=Ce,this._decrease(_e)},He.prototype._heapify=function(Fe){var Ce=this._arr,_e=2*Fe,Pe=_e+1,ge=Fe;_e>1,!(Ce[Pe].priority<_e));)this._swap(Fe,Pe),Fe=Pe},He.prototype._swap=function(Fe,Ce){var _e=this._arr,Pe=this._keyIndices,ge=_e[Fe],Ae=_e[Ce];_e[Fe]=Ae,_e[Ce]=ge,Pe[Ae.key]=Fe,Pe[ge.key]=Ce}},6349:function(St,Dt,Ie){"use strict";var Be=Ie(95329);St.exports=_e;var He="\0",Fe="\0",Ce="";function _e(pe){this._isDirected=Be.has(pe,"directed")?pe.directed:!0,this._isMultigraph=Be.has(pe,"multigraph")?pe.multigraph:!1,this._isCompound=Be.has(pe,"compound")?pe.compound:!1,this._label=void 0,this._defaultNodeLabelFn=Be.constant(void 0),this._defaultEdgeLabelFn=Be.constant(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[Fe]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}_e.prototype._nodeCount=0,_e.prototype._edgeCount=0,_e.prototype.isDirected=function(){return this._isDirected},_e.prototype.isMultigraph=function(){return this._isMultigraph},_e.prototype.isCompound=function(){return this._isCompound},_e.prototype.setGraph=function(pe){return this._label=pe,this},_e.prototype.graph=function(){return this._label},_e.prototype.setDefaultNodeLabel=function(pe){return Be.isFunction(pe)||(pe=Be.constant(pe)),this._defaultNodeLabelFn=pe,this},_e.prototype.nodeCount=function(){return this._nodeCount},_e.prototype.nodes=function(){return Be.keys(this._nodes)},_e.prototype.sources=function(){var pe=this;return Be.filter(this.nodes(),function(ye){return Be.isEmpty(pe._in[ye])})},_e.prototype.sinks=function(){var pe=this;return Be.filter(this.nodes(),function(ye){return Be.isEmpty(pe._out[ye])})},_e.prototype.setNodes=function(pe,ye){var xe=arguments,ce=this;return Be.each(pe,function(te){xe.length>1?ce.setNode(te,ye):ce.setNode(te)}),this},_e.prototype.setNode=function(pe,ye){return Be.has(this._nodes,pe)?(arguments.length>1&&(this._nodes[pe]=ye),this):(this._nodes[pe]=arguments.length>1?ye:this._defaultNodeLabelFn(pe),this._isCompound&&(this._parent[pe]=Fe,this._children[pe]={},this._children[Fe][pe]=!0),this._in[pe]={},this._preds[pe]={},this._out[pe]={},this._sucs[pe]={},++this._nodeCount,this)},_e.prototype.node=function(pe){return this._nodes[pe]},_e.prototype.hasNode=function(pe){return Be.has(this._nodes,pe)},_e.prototype.removeNode=function(pe){var ye=this;if(Be.has(this._nodes,pe)){var xe=function(ce){ye.removeEdge(ye._edgeObjs[ce])};delete this._nodes[pe],this._isCompound&&(this._removeFromParentsChildList(pe),delete this._parent[pe],Be.each(this.children(pe),function(ce){ye.setParent(ce)}),delete this._children[pe]),Be.each(Be.keys(this._in[pe]),xe),delete this._in[pe],delete this._preds[pe],Be.each(Be.keys(this._out[pe]),xe),delete this._out[pe],delete this._sucs[pe],--this._nodeCount}return this},_e.prototype.setParent=function(pe,ye){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(Be.isUndefined(ye))ye=Fe;else{ye+="";for(var xe=ye;!Be.isUndefined(xe);xe=this.parent(xe))if(xe===pe)throw new Error("Setting "+ye+" as parent of "+pe+" would create a cycle");this.setNode(ye)}return this.setNode(pe),this._removeFromParentsChildList(pe),this._parent[pe]=ye,this._children[ye][pe]=!0,this},_e.prototype._removeFromParentsChildList=function(pe){delete this._children[this._parent[pe]][pe]},_e.prototype.parent=function(pe){if(this._isCompound){var ye=this._parent[pe];if(ye!==Fe)return ye}},_e.prototype.children=function(pe){if(Be.isUndefined(pe)&&(pe=Fe),this._isCompound){var ye=this._children[pe];if(ye)return Be.keys(ye)}else{if(pe===Fe)return this.nodes();if(this.hasNode(pe))return[]}},_e.prototype.predecessors=function(pe){var ye=this._preds[pe];if(ye)return Be.keys(ye)},_e.prototype.successors=function(pe){var ye=this._sucs[pe];if(ye)return Be.keys(ye)},_e.prototype.neighbors=function(pe){var ye=this.predecessors(pe);if(ye)return Be.union(ye,this.successors(pe))},_e.prototype.isLeaf=function(pe){var ye;return this.isDirected()?ye=this.successors(pe):ye=this.neighbors(pe),ye.length===0},_e.prototype.filterNodes=function(pe){var ye=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});ye.setGraph(this.graph());var xe=this;Be.each(this._nodes,function(ne,le){pe(le)&&ye.setNode(le,ne)}),Be.each(this._edgeObjs,function(ne){ye.hasNode(ne.v)&&ye.hasNode(ne.w)&&ye.setEdge(ne,xe.edge(ne))});var ce={};function te(ne){var le=xe.parent(ne);return le===void 0||ye.hasNode(le)?(ce[ne]=le,le):le in ce?ce[le]:te(le)}return this._isCompound&&Be.each(ye.nodes(),function(ne){ye.setParent(ne,te(ne))}),ye},_e.prototype.setDefaultEdgeLabel=function(pe){return Be.isFunction(pe)||(pe=Be.constant(pe)),this._defaultEdgeLabelFn=pe,this},_e.prototype.edgeCount=function(){return this._edgeCount},_e.prototype.edges=function(){return Be.values(this._edgeObjs)},_e.prototype.setPath=function(pe,ye){var xe=this,ce=arguments;return Be.reduce(pe,function(te,ne){return ce.length>1?xe.setEdge(te,ne,ye):xe.setEdge(te,ne),ne}),this},_e.prototype.setEdge=function(){var pe,ye,xe,ce,te=!1,ne=arguments[0];typeof ne=="object"&&ne!==null&&"v"in ne?(pe=ne.v,ye=ne.w,xe=ne.name,arguments.length===2&&(ce=arguments[1],te=!0)):(pe=ne,ye=arguments[1],xe=arguments[3],arguments.length>2&&(ce=arguments[2],te=!0)),pe=""+pe,ye=""+ye,Be.isUndefined(xe)||(xe=""+xe);var le=Ae(this._isDirected,pe,ye,xe);if(Be.has(this._edgeLabels,le))return te&&(this._edgeLabels[le]=ce),this;if(!Be.isUndefined(xe)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(pe),this.setNode(ye),this._edgeLabels[le]=te?ce:this._defaultEdgeLabelFn(pe,ye,xe);var oe=be(this._isDirected,pe,ye,xe);return pe=oe.v,ye=oe.w,Object.freeze(oe),this._edgeObjs[le]=oe,Pe(this._preds[ye],pe),Pe(this._sucs[pe],ye),this._in[ye][le]=oe,this._out[pe][le]=oe,this._edgeCount++,this},_e.prototype.edge=function(pe,ye,xe){var ce=arguments.length===1?we(this._isDirected,arguments[0]):Ae(this._isDirected,pe,ye,xe);return this._edgeLabels[ce]},_e.prototype.hasEdge=function(pe,ye,xe){var ce=arguments.length===1?we(this._isDirected,arguments[0]):Ae(this._isDirected,pe,ye,xe);return Be.has(this._edgeLabels,ce)},_e.prototype.removeEdge=function(pe,ye,xe){var ce=arguments.length===1?we(this._isDirected,arguments[0]):Ae(this._isDirected,pe,ye,xe),te=this._edgeObjs[ce];return te&&(pe=te.v,ye=te.w,delete this._edgeLabels[ce],delete this._edgeObjs[ce],ge(this._preds[ye],pe),ge(this._sucs[pe],ye),delete this._in[ye][ce],delete this._out[pe][ce],this._edgeCount--),this},_e.prototype.inEdges=function(pe,ye){var xe=this._in[pe];if(xe){var ce=Be.values(xe);return ye?Be.filter(ce,function(te){return te.v===ye}):ce}},_e.prototype.outEdges=function(pe,ye){var xe=this._out[pe];if(xe){var ce=Be.values(xe);return ye?Be.filter(ce,function(te){return te.w===ye}):ce}},_e.prototype.nodeEdges=function(pe,ye){var xe=this.inEdges(pe,ye);if(xe)return xe.concat(this.outEdges(pe,ye))};function Pe(pe,ye){pe[ye]?pe[ye]++:pe[ye]=1}function ge(pe,ye){--pe[ye]||delete pe[ye]}function Ae(pe,ye,xe,ce){var te=""+ye,ne=""+xe;if(!pe&&te>ne){var le=te;te=ne,ne=le}return te+Ce+ne+Ce+(Be.isUndefined(ce)?He:ce)}function be(pe,ye,xe,ce){var te=""+ye,ne=""+xe;if(!pe&&te>ne){var le=te;te=ne,ne=le}var oe={v:te,w:ne};return ce&&(oe.name=ce),oe}function we(pe,ye){return Ae(pe,ye.v,ye.w,ye.name)}},89224:function(St,Dt,Ie){St.exports={Graph:Ie(6349),version:Ie(16544)}},17401:function(St,Dt,Ie){var Be=Ie(95329),He=Ie(6349);St.exports={write:Fe,read:Pe};function Fe(ge){var Ae={options:{directed:ge.isDirected(),multigraph:ge.isMultigraph(),compound:ge.isCompound()},nodes:Ce(ge),edges:_e(ge)};return Be.isUndefined(ge.graph())||(Ae.value=Be.clone(ge.graph())),Ae}function Ce(ge){return Be.map(ge.nodes(),function(Ae){var be=ge.node(Ae),we=ge.parent(Ae),pe={v:Ae};return Be.isUndefined(be)||(pe.value=be),Be.isUndefined(we)||(pe.parent=we),pe})}function _e(ge){return Be.map(ge.edges(),function(Ae){var be=ge.edge(Ae),we={v:Ae.v,w:Ae.w};return Be.isUndefined(Ae.name)||(we.name=Ae.name),Be.isUndefined(be)||(we.value=be),we})}function Pe(ge){var Ae=new He(ge.options).setGraph(ge.value);return Be.each(ge.nodes,function(be){Ae.setNode(be.v,be.value),be.parent&&Ae.setParent(be.v,be.parent)}),Be.each(ge.edges,function(be){Ae.setEdge({v:be.v,w:be.w,name:be.name},be.value)}),Ae}},95329:function(St,Dt,Ie){var Be;try{Be={clone:Ie(76833),constant:Ie(13503),each:Ie(76934),filter:Ie(64725),has:Ie(99946),isArray:Ie(80744),isEmpty:Ie(61627),isFunction:Ie(9363),isUndefined:Ie(16513),keys:Ie(55451),map:Ie(9924),reduce:Ie(16473),size:Ie(40617),transform:Ie(91116),union:Ie(44065),values:Ie(81229)}}catch(He){}Be||(Be=window._),St.exports=Be},16544:function(St){St.exports="2.1.8"},34634:function(St,Dt,Ie){"use strict";Ie.r(Dt),Ie.d(Dt,{isAnyArray:function(){return He}});const Be=Object.prototype.toString;function He(Fe){const Ce=Be.call(Fe);return Ce.endsWith("Array]")&&!Ce.includes("Big")}},55973:function(St){St.exports=function(Ie){return!Ie||typeof Ie=="string"?!1:Ie instanceof Array||Array.isArray(Ie)||Ie.length>=0&&(Ie.splice instanceof Function||Object.getOwnPropertyDescriptor(Ie,Ie.length-1)&&Ie.constructor.name!=="String")}},15584:function(St,Dt,Ie){var Be=Ie(73893),He=Ie(33152),Fe=Be(He,"DataView");St.exports=Fe},97288:function(St,Dt,Ie){var Be=Ie(73893),He=Ie(33152),Fe=Be(He,"Promise");St.exports=Fe},23599:function(St,Dt,Ie){var Be=Ie(73893),He=Ie(33152),Fe=Be(He,"Set");St.exports=Fe},98924:function(St,Dt,Ie){var Be=Ie(52166),He=Ie(34776),Fe=Ie(40393);function Ce(_e){var Pe=-1,ge=_e==null?0:_e.length;for(this.__data__=new Be;++Pe-1}St.exports=He},94874:function(St){function Dt(Ie,Be,He){for(var Fe=-1,Ce=Ie==null?0:Ie.length;++Fe0&&Pe(pe)?_e>1?Fe(pe,_e-1,Pe,ge,Ae):Be(Ae,pe):ge||(Ae[Ae.length]=pe)}return Ae}St.exports=Fe},85605:function(St,Dt,Ie){var Be=Ie(14018),He=Ie(55451);function Fe(Ce,_e){return Ce&&Be(Ce,_e,He)}St.exports=Fe},89147:function(St,Dt,Ie){var Be=Ie(1186),He=Ie(9171);function Fe(Ce,_e){_e=Be(_e,Ce);for(var Pe=0,ge=_e.length;Ce!=null&&PeBe}St.exports=Dt},3251:function(St){var Dt=Object.prototype,Ie=Dt.hasOwnProperty;function Be(He,Fe){return He!=null&&Ie.call(He,Fe)}St.exports=Be},62348:function(St){function Dt(Ie,Be){return Ie!=null&&Be in Object(Ie)}St.exports=Dt},17424:function(St,Dt,Ie){var Be=Ie(51533),He=Ie(8373),Fe=Ie(49237);function Ce(_e,Pe,ge){return Pe===Pe?Fe(_e,Pe,ge):Be(_e,He,ge)}St.exports=Ce},77295:function(St,Dt,Ie){var Be=Ie(84412),He=Ie(93913);function Fe(Ce,_e,Pe,ge,Ae){return Ce===_e?!0:Ce==null||_e==null||!He(Ce)&&!He(_e)?Ce!==Ce&&_e!==_e:Be(Ce,_e,Pe,ge,Fe,Ae)}St.exports=Fe},84412:function(St,Dt,Ie){var Be=Ie(91866),He=Ie(50401),Fe=Ie(57710),Ce=Ie(4983),_e=Ie(66139),Pe=Ie(80744),ge=Ie(57835),Ae=Ie(18397),be=1,we="[object Arguments]",pe="[object Array]",ye="[object Object]",xe=Object.prototype,ce=xe.hasOwnProperty;function te(ne,le,oe,de,he,ie){var ue=Pe(ne),ve=Pe(le),Se=ue?pe:_e(ne),De=ve?pe:_e(le);Se=Se==we?ye:Se,De=De==we?ye:De;var Re=Se==ye,Ne=De==ye,ze=Se==De;if(ze&&ge(ne)){if(!ge(le))return!1;ue=!0,Re=!1}if(ze&&!Re)return ie||(ie=new Be),ue||Ae(ne)?He(ne,le,oe,de,he,ie):Fe(ne,le,Se,oe,de,he,ie);if(!(oe&be)){var Ge=Re&&ce.call(ne,"__wrapped__"),Xe=Ne&&ce.call(le,"__wrapped__");if(Ge||Xe){var Qe=Ge?ne.value():ne,nt=Xe?le.value():le;return ie||(ie=new Be),he(Qe,nt,oe,de,ie)}}return ze?(ie||(ie=new Be),Ce(ne,le,oe,de,he,ie)):!1}St.exports=te},55005:function(St,Dt,Ie){var Be=Ie(66139),He=Ie(93913),Fe="[object Map]";function Ce(_e){return He(_e)&&Be(_e)==Fe}St.exports=Ce},51524:function(St,Dt,Ie){var Be=Ie(91866),He=Ie(77295),Fe=1,Ce=2;function _e(Pe,ge,Ae,be){var we=Ae.length,pe=we,ye=!be;if(Pe==null)return!pe;for(Pe=Object(Pe);we--;){var xe=Ae[we];if(ye&&xe[2]?xe[1]!==Pe[xe[0]]:!(xe[0]in Pe))return!1}for(;++we=ge){var oe=we?null:_e(be);if(oe)return Pe(oe);te=!1,xe=Ce,le=new Be}else le=we?[]:ne;e:for(;++yeCe||Ae&&be&&pe&&!we&&!ye||Pe&&be&&pe||!_e&&pe||!ge)return 1;if(!Pe&&!Ae&&!ye&&Fe=we)return pe;var ye=_e[Pe];return pe*(ye=="desc"?-1:1)}}return Fe.index-Ce.index}St.exports=He},15168:function(St,Dt,Ie){var Be=Ie(95378),He=Ie(58966);function Fe(Ce,_e){return Be(Ce,He(Ce),_e)}St.exports=Fe},71678:function(St,Dt,Ie){var Be=Ie(95378),He=Ie(66817);function Fe(Ce,_e){return Be(Ce,He(Ce),_e)}St.exports=Fe},49164:function(St,Dt,Ie){var Be=Ie(24665);function He(Fe,Ce){return function(_e,Pe){if(_e==null)return _e;if(!Be(_e))return Fe(_e,Pe);for(var ge=_e.length,Ae=Ce?ge:-1,be=Object(_e);(Ce?Ae--:++Ae-1?be[we?Pe[pe]:pe]:void 0}}St.exports=Ce},76106:function(St,Dt,Ie){var Be=Ie(36121),He=Ie(8138),Fe=Ie(97341);function Ce(_e){return function(Pe,ge,Ae){return Ae&&typeof Ae!="number"&&He(Pe,ge,Ae)&&(ge=Ae=void 0),Pe=Fe(Pe),ge===void 0?(ge=Pe,Pe=0):ge=Fe(ge),Ae=Ae===void 0?Pece))return!1;var ne=ye.get(ge),le=ye.get(Ae);if(ne&&le)return ne==Ae&&le==ge;var oe=-1,de=!0,he=be&_e?new Be:void 0;for(ye.set(ge,Ae),ye.set(Ae,ge);++oe2?be[2]:void 0;for(ye&&Fe(be[0],be[1],ye)&&(pe=1);++we1&&Ce(Pe,ge[0],ge[1])?ge=[]:Ae>2&&Ce(ge[0],ge[1],ge[2])&&(ge=[ge[0]]),He(Pe,Be(ge,1),[])});St.exports=_e},4134:function(St){function Dt(){return[]}St.exports=Dt},97341:function(St,Dt,Ie){var Be=Ie(59406),He=1/0,Fe=17976931348623157e292;function Ce(_e){if(!_e)return _e===0?_e:0;if(_e=Be(_e),_e===He||_e===-He){var Pe=_e<0?-1:1;return Pe*Fe}return _e===_e?_e:0}St.exports=Ce},12824:function(St,Dt,Ie){var Be=Ie(97341);function He(Fe){var Ce=Be(Fe),_e=Ce%1;return Ce===Ce?_e?Ce-_e:Ce:0}St.exports=He},59406:function(St,Dt,Ie){var Be=Ie(13927),He=Ie(20816),Fe=Ie(45029),Ce=NaN,_e=/^[-+]0x[0-9a-f]+$/i,Pe=/^0b[01]+$/i,ge=/^0o[0-7]+$/i,Ae=parseInt;function be(we){if(typeof we=="number")return we;if(Fe(we))return Ce;if(He(we)){var pe=typeof we.valueOf=="function"?we.valueOf():we;we=He(pe)?pe+"":pe}if(typeof we!="string")return we===0?we:+we;we=Be(we);var ye=Pe.test(we);return ye||ge.test(we)?Ae(we.slice(2),ye?2:8):_e.test(we)?Ce:+we}St.exports=be},44140:function(St,Dt,Ie){var Be=Ie(50230);function He(Fe){return Fe==null?"":Be(Fe)}St.exports=He},91116:function(St,Dt,Ie){var Be=Ie(74809),He=Ie(35024),Fe=Ie(85605),Ce=Ie(95979),_e=Ie(49217),Pe=Ie(80744),ge=Ie(57835),Ae=Ie(9363),be=Ie(20816),we=Ie(18397);function pe(ye,xe,ce){var te=Pe(ye),ne=te||ge(ye)||we(ye);if(xe=Ce(xe,4),ce==null){var le=ye&&ye.constructor;ne?ce=te?new le:[]:be(ye)?ce=Ae(le)?He(_e(ye)):{}:ce={}}return(ne?Be:Fe)(ye,function(oe,de,he){return xe(ce,oe,de,he)}),ce}St.exports=pe},44065:function(St,Dt,Ie){var Be=Ie(9256),He=Ie(92918),Fe=Ie(29098),Ce=Ie(41590),_e=He(function(Pe){return Fe(Be(Pe,1,Ce,!0))});St.exports=_e},95708:function(St,Dt,Ie){var Be=Ie(44140),He=0;function Fe(Ce){var _e=++He;return Be(Ce)+_e}St.exports=Fe},81229:function(St,Dt,Ie){var Be=Ie(20720),He=Ie(55451);function Fe(Ce){return Ce==null?[]:Be(Ce,He(Ce))}St.exports=Fe},65441:function(St,Dt,Ie){var Be=Ie(60348),He=Ie(94484);function Fe(Ce,_e){return He(Ce||[],_e||[],Be)}St.exports=Fe},34402:function(St,Dt,Ie){"use strict";Ie.r(Dt),Ie.d(Dt,{default:function(){return Ce}});var Be=Ie(34634);function He(_e){var Pe=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!(0,Be.isAnyArray)(_e))throw new TypeError("input must be an array");if(_e.length===0)throw new TypeError("input must not be empty");var ge=Pe.fromIndex,Ae=ge===void 0?0:ge,be=Pe.toIndex,we=be===void 0?_e.length:be;if(Ae<0||Ae>=_e.length||!Number.isInteger(Ae))throw new Error("fromIndex must be a positive integer smaller than length");if(we<=Ae||we>_e.length||!Number.isInteger(we))throw new Error("toIndex must be an integer greater than fromIndex and at most equal to length");for(var pe=_e[Ae],ye=Ae+1;yepe&&(pe=_e[ye]);return pe}function Fe(_e){var Pe=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!(0,Be.isAnyArray)(_e))throw new TypeError("input must be an array");if(_e.length===0)throw new TypeError("input must not be empty");var ge=Pe.fromIndex,Ae=ge===void 0?0:ge,be=Pe.toIndex,we=be===void 0?_e.length:be;if(Ae<0||Ae>=_e.length||!Number.isInteger(Ae))throw new Error("fromIndex must be a positive integer smaller than length");if(we<=Ae||we>_e.length||!Number.isInteger(we))throw new Error("toIndex must be an integer greater than fromIndex and at most equal to length");for(var pe=_e[Ae],ye=Ae+1;ye1&&arguments[1]!==void 0?arguments[1]:{};if((0,Be.isAnyArray)(_e)){if(_e.length===0)throw new TypeError("input must not be empty")}else throw new TypeError("input must be an array");var ge;if(Pe.output!==void 0){if(!(0,Be.isAnyArray)(Pe.output))throw new TypeError("output option must be an array if specified");ge=Pe.output}else ge=new Array(_e.length);var Ae=Fe(_e),be=He(_e);if(Ae===be)throw new RangeError("minimum and maximum input values are equal. Cannot rescale a constant array");var we=Pe.min,pe=we===void 0?Pe.autoMinMax?Ae:0:we,ye=Pe.max,xe=ye===void 0?Pe.autoMinMax?be:1:ye;if(pe>=xe)throw new RangeError("min option must be smaller than max option");for(var ce=(xe-pe)/(be-Ae),te=0;te<_e.length;te++)ge[te]=(_e[te]-Ae)*ce+pe;return ge}},39417:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return De}});var Be=Ie(54476),He=Ie(20068),Fe=Ie(75931),Ce=Ie(33885),_e=Ie(67732),Pe=Ie(83652),ge=Ie(31226),Ae=Ie(42403),be=Ie(158),we=Ie(92310),pe=Ie.n(we),ye=Ie(26112),xe=Ie(59301),ce=Ie(39378),te=function(Ne){for(var ze=Ne.prefixCls,Ge=Ne.level,Xe=Ne.isStart,Qe=Ne.isEnd,nt="".concat(ze,"-indent-unit"),$e=[],qe=0;qe0&&arguments[0]!==void 0?arguments[0]:[],tn=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],Gt=sn.length,It=tn.length;if(Math.abs(Gt-It)!==1)return{add:!1,key:null};function Et(Zt,vt){var At=new Map;Zt.forEach(function(Ft){At.set(Ft,!0)});var Qt=vt.filter(function(Ft){return!At.has(Ft)});return Qt.length===1?Qt[0]:null}return Gt ").concat(tn);return tn}var Ut=ne.forwardRef(function(sn,tn){var Gt=sn.prefixCls,It=sn.data,Et=sn.selectable,Zt=sn.checkable,vt=sn.expandedKeys,At=sn.selectedKeys,Qt=sn.checkedKeys,Ft=sn.loadedKeys,wt=sn.loadingKeys,ln=sn.halfCheckedKeys,In=sn.keyEntities,Kn=sn.disabled,Vn=sn.dragging,Zn=sn.dragOverNodeKey,$n=sn.dropPosition,Jt=sn.motion,yn=sn.height,Hn=sn.itemHeight,Bn=sn.virtual,Er=sn.focusable,Fr=sn.activeItem,br=sn.focused,Wr=sn.tabIndex,Da=sn.onKeyDown,Ya=sn.onFocus,Ba=sn.onBlur,Ia=sn.onActiveChange,Ii=sn.onListChangeStart,wi=sn.onListChangeEnd,jr=(0,ie.Z)(sn,qe),Ka=ne.useRef(null),oi=ne.useRef(null);ne.useImperativeHandle(tn,function(){return{scrollTo:function(fn){Ka.current.scrollTo(fn)},getIndentWidth:function(){return oi.current.offsetWidth}}});var pr=ne.useState(vt),vr=(0,he.Z)(pr,2),li=vr[0],zn=vr[1],hr=ne.useState(It),Tr=(0,he.Z)(hr,2),Rr=Tr[0],fa=Tr[1],bt=ne.useState(It),Me=(0,he.Z)(bt,2),Le=Me[0],Te=Me[1],Ue=ne.useState([]),Ye=(0,he.Z)(Ue,2),xt=Ye[0],Pt=Ye[1],Xt=ne.useState(null),Ht=(0,he.Z)(Xt,2),mn=Ht[0],pn=Ht[1],Yn=ne.useRef(It);Yn.current=It;function Dn(){var dr=Yn.current;fa(dr),Te(dr),Pt([]),pn(null),wi()}(0,ue.Z)(function(){zn(vt);var dr=nt(li,vt);if(dr.key!==null)if(dr.add){var fn=Rr.findIndex(function(Xn){var ur=Xn.key;return ur===dr.key}),nn=ft($e(Rr,It,dr.key),Bn,yn,Hn),Nn=Rr.slice();Nn.splice(fn+1,0,yt),Te(Nn),Pt(nn),pn("show")}else{var jn=It.findIndex(function(Xn){var ur=Xn.key;return ur===dr.key}),rr=ft($e(It,Rr,dr.key),Bn,yn,Hn),mr=It.slice();mr.splice(jn+1,0,yt),Te(mr),Pt(rr),pn("hide")}else Rr!==It&&(fa(It),Te(It))},[vt,It]),ne.useEffect(function(){Vn||Dn()},[Vn]);var qn=Jt?Le:It,er={expandedKeys:vt,selectedKeys:At,loadedKeys:Ft,loadingKeys:wt,checkedKeys:Qt,halfCheckedKeys:ln,dragOverNodeKey:Zn,dropPosition:$n,keyEntities:In};return ne.createElement(ne.Fragment,null,br&&Fr&&ne.createElement("span",{style:ot,"aria-live":"assertive"},ht(Fr)),ne.createElement("div",null,ne.createElement("input",{style:ot,disabled:Er===!1||Kn,tabIndex:Er!==!1?Wr:null,onKeyDown:Da,onFocus:Ya,onBlur:Ba,value:"",onChange:at,"aria-label":"for screen reader"})),ne.createElement("div",{className:"".concat(Gt,"-treenode"),"aria-hidden":!0,style:{position:"absolute",pointerEvents:"none",visibility:"hidden",height:0,overflow:"hidden",border:0,padding:0}},ne.createElement("div",{className:"".concat(Gt,"-indent")},ne.createElement("div",{ref:oi,className:"".concat(Gt,"-indent-unit")}))),ne.createElement(ve.Z,(0,Be.Z)({},jr,{data:qn,itemKey:dt,height:yn,fullHeight:!1,virtual:Bn,itemHeight:Hn,prefixCls:"".concat(Gt,"-list"),ref:Ka,onVisibleChange:function(fn,nn){var Nn=new Set(fn),jn=nn.filter(function(rr){return!Nn.has(rr)});jn.some(function(rr){return dt(rr)===lt})&&Dn()}}),function(dr){var fn=dr.pos,nn=(0,Be.Z)({},(de(dr.data),dr.data)),Nn=dr.title,jn=dr.key,rr=dr.isStart,mr=dr.isEnd,Xn=(0,Ne.km)(jn,fn);delete nn.key,delete nn.children;var ur=(0,Ne.H8)(Xn,er);return ne.createElement(Qe,(0,Be.Z)({},nn,ur,{title:Nn,active:!!Fr&&jn===Fr.key,pos:fn,data:dr.data,isStart:rr,isEnd:mr,motion:Jt,motionNodes:jn===lt?xt:null,motionType:mn,onMotionStart:Ii,onMotionEnd:Dn,treeNodeRequiredProps:er,onMouseMove:function(){Ia(null)}}))}))});Ut.displayName="NodeList";var Kt=Ut,qt=Ie(35654),vn=Ie(90782),Ot=Ie(67841),rn=10,an=function(sn){(0,be.Z)(Gt,sn);var tn=(0,we.Z)(Gt);function Gt(){var It;(0,Pe.Z)(this,Gt);for(var Et=arguments.length,Zt=new Array(Et),vt=0;vt2&&arguments[2]!==void 0?arguments[2]:!1,ln=It.state,In=ln.dragChildrenKeys,Kn=ln.dropPosition,Vn=ln.dropTargetKey,Zn=ln.dropTargetPos,$n=ln.dropAllowed;if($n){var Jt=It.props.onDrop;if(It.setState({dragOverNodeKey:null}),It.cleanDragState(),Vn!==null){var yn=(0,Ce.Z)((0,Ce.Z)({},(0,Ne.H8)(Vn,It.getTreeNodeRequiredProps())),{},{active:((Ft=It.getActiveItem())===null||Ft===void 0?void 0:Ft.key)===Vn,data:(0,Ot.Z)(It.state.keyEntities,Vn).node}),Hn=In.indexOf(Vn)!==-1;(0,te.ZP)(!Hn,"Can not drop to dragNode's children node. This is a bug of rc-tree. Please report an issue.");var Bn=(0,qt.yx)(Zn),Er={event:At,node:(0,Ne.F)(yn),dragNode:It.dragNode?(0,Ne.F)(It.dragNode.props):null,dragNodesKeys:[It.dragNode.props.eventKey].concat(In),dropToGap:Kn!==0,dropPosition:Kn+Number(Bn[Bn.length-1])};wt||Jt==null||Jt(Er),It.dragNode=null}}},It.cleanDragState=function(){var At=It.state.draggingNodeKey;At!==null&&It.setState({draggingNodeKey:null,dropPosition:null,dropContainerKey:null,dropTargetKey:null,dropLevelOffset:null,dropAllowed:!0,dragOverNodeKey:null}),It.dragStartMousePosition=null,It.currentMouseOverDroppableNodeKey=null},It.triggerExpandActionExpand=function(At,Qt){var Ft=It.state,wt=Ft.expandedKeys,ln=Ft.flattenNodes,In=Qt.expanded,Kn=Qt.key,Vn=Qt.isLeaf;if(!(Vn||At.shiftKey||At.metaKey||At.ctrlKey)){var Zn=ln.filter(function(Jt){return Jt.key===Kn})[0],$n=(0,Ne.F)((0,Ce.Z)((0,Ce.Z)({},(0,Ne.H8)(Kn,It.getTreeNodeRequiredProps())),{},{data:Zn.data}));It.setExpandedKeys(In?(0,qt._5)(wt,Kn):(0,qt.L0)(wt,Kn)),It.onNodeExpand(At,$n)}},It.onNodeClick=function(At,Qt){var Ft=It.props,wt=Ft.onClick,ln=Ft.expandAction;ln==="click"&&It.triggerExpandActionExpand(At,Qt),wt==null||wt(At,Qt)},It.onNodeDoubleClick=function(At,Qt){var Ft=It.props,wt=Ft.onDoubleClick,ln=Ft.expandAction;ln==="doubleClick"&&It.triggerExpandActionExpand(At,Qt),wt==null||wt(At,Qt)},It.onNodeSelect=function(At,Qt){var Ft=It.state.selectedKeys,wt=It.state,ln=wt.keyEntities,In=wt.fieldNames,Kn=It.props,Vn=Kn.onSelect,Zn=Kn.multiple,$n=Qt.selected,Jt=Qt[In.key],yn=!$n;yn?Zn?Ft=(0,qt.L0)(Ft,Jt):Ft=[Jt]:Ft=(0,qt._5)(Ft,Jt);var Hn=Ft.map(function(Bn){var Er=(0,Ot.Z)(ln,Bn);return Er?Er.node:null}).filter(function(Bn){return Bn});It.setUncontrolledState({selectedKeys:Ft}),Vn==null||Vn(Ft,{event:"select",selected:yn,node:Qt,selectedNodes:Hn,nativeEvent:At.nativeEvent})},It.onNodeCheck=function(At,Qt,Ft){var wt=It.state,ln=wt.keyEntities,In=wt.checkedKeys,Kn=wt.halfCheckedKeys,Vn=It.props,Zn=Vn.checkStrictly,$n=Vn.onCheck,Jt=Qt.key,yn,Hn={event:"check",node:Qt,checked:Ft,nativeEvent:At.nativeEvent};if(Zn){var Bn=Ft?(0,qt.L0)(In,Jt):(0,qt._5)(In,Jt),Er=(0,qt._5)(Kn,Jt);yn={checked:Bn,halfChecked:Er},Hn.checkedNodes=Bn.map(function(Ba){return(0,Ot.Z)(ln,Ba)}).filter(function(Ba){return Ba}).map(function(Ba){return Ba.node}),It.setUncontrolledState({checkedKeys:Bn})}else{var Fr=(0,vn.S)([].concat((0,_e.Z)(In),[Jt]),!0,ln),br=Fr.checkedKeys,Wr=Fr.halfCheckedKeys;if(!Ft){var Da=new Set(br);Da.delete(Jt);var Ya=(0,vn.S)(Array.from(Da),{checked:!1,halfCheckedKeys:Wr},ln);br=Ya.checkedKeys,Wr=Ya.halfCheckedKeys}yn=br,Hn.checkedNodes=[],Hn.checkedNodesPositions=[],Hn.halfCheckedKeys=Wr,br.forEach(function(Ba){var Ia=(0,Ot.Z)(ln,Ba);if(Ia){var Ii=Ia.node,wi=Ia.pos;Hn.checkedNodes.push(Ii),Hn.checkedNodesPositions.push({node:Ii,pos:wi})}}),It.setUncontrolledState({checkedKeys:br},!1,{halfCheckedKeys:Wr})}$n==null||$n(yn,Hn)},It.onNodeLoad=function(At){var Qt=At.key,Ft=new Promise(function(wt,ln){It.setState(function(In){var Kn=In.loadedKeys,Vn=Kn===void 0?[]:Kn,Zn=In.loadingKeys,$n=Zn===void 0?[]:Zn,Jt=It.props,yn=Jt.loadData,Hn=Jt.onLoad;if(!yn||Vn.indexOf(Qt)!==-1||$n.indexOf(Qt)!==-1)return null;var Bn=yn(At);return Bn.then(function(){var Er=It.state.loadedKeys,Fr=(0,qt.L0)(Er,Qt);Hn==null||Hn(Fr,{event:"load",node:At}),It.setUncontrolledState({loadedKeys:Fr}),It.setState(function(br){return{loadingKeys:(0,qt._5)(br.loadingKeys,Qt)}}),wt()}).catch(function(Er){if(It.setState(function(br){return{loadingKeys:(0,qt._5)(br.loadingKeys,Qt)}}),It.loadingRetryTimes[Qt]=(It.loadingRetryTimes[Qt]||0)+1,It.loadingRetryTimes[Qt]>=rn){var Fr=It.state.loadedKeys;(0,te.ZP)(!1,"Retry for `loadData` many times but still failed. No more retry."),It.setUncontrolledState({loadedKeys:(0,qt.L0)(Fr,Qt)}),wt()}ln(Er)}),{loadingKeys:(0,qt.L0)($n,Qt)}})});return Ft.catch(function(){}),Ft},It.onNodeMouseEnter=function(At,Qt){var Ft=It.props.onMouseEnter;Ft==null||Ft({event:At,node:Qt})},It.onNodeMouseLeave=function(At,Qt){var Ft=It.props.onMouseLeave;Ft==null||Ft({event:At,node:Qt})},It.onNodeContextMenu=function(At,Qt){var Ft=It.props.onRightClick;Ft&&(At.preventDefault(),Ft({event:At,node:Qt}))},It.onFocus=function(){var At=It.props.onFocus;It.setState({focused:!0});for(var Qt=arguments.length,Ft=new Array(Qt),wt=0;wt1&&arguments[1]!==void 0?arguments[1]:!1,Ft=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null;if(!It.destroyed){var wt=!1,ln=!0,In={};Object.keys(At).forEach(function(Kn){if(Kn in It.props){ln=!1;return}wt=!0,In[Kn]=At[Kn]}),wt&&(!Qt||ln)&&It.setState((0,Ce.Z)((0,Ce.Z)({},In),Ft))}},It.scrollTo=function(At){It.listRef.current.scrollTo(At)},It}return(0,ge.Z)(Gt,[{key:"componentDidMount",value:function(){this.destroyed=!1,this.onUpdated()}},{key:"componentDidUpdate",value:function(){this.onUpdated()}},{key:"onUpdated",value:function(){var Et=this.props.activeKey;Et!==void 0&&Et!==this.state.activeKey&&(this.setState({activeKey:Et}),Et!==null&&this.scrollTo({key:Et}))}},{key:"componentWillUnmount",value:function(){window.removeEventListener("dragend",this.onWindowDragEnd),this.destroyed=!0}},{key:"resetDragState",value:function(){this.setState({dragOverNodeKey:null,dropPosition:null,dropLevelOffset:null,dropTargetKey:null,dropContainerKey:null,dropTargetPos:null,dropAllowed:!1})}},{key:"render",value:function(){var Et,Zt=this.state,vt=Zt.focused,At=Zt.flattenNodes,Qt=Zt.keyEntities,Ft=Zt.draggingNodeKey,wt=Zt.activeKey,ln=Zt.dropLevelOffset,In=Zt.dropContainerKey,Kn=Zt.dropTargetKey,Vn=Zt.dropPosition,Zn=Zt.dragOverNodeKey,$n=Zt.indent,Jt=this.props,yn=Jt.prefixCls,Hn=Jt.className,Bn=Jt.style,Er=Jt.showLine,Fr=Jt.focusable,br=Jt.tabIndex,Wr=br===void 0?0:br,Da=Jt.selectable,Ya=Jt.showIcon,Ba=Jt.icon,Ia=Jt.switcherIcon,Ii=Jt.draggable,wi=Jt.checkable,jr=Jt.checkStrictly,Ka=Jt.disabled,oi=Jt.motion,pr=Jt.loadData,vr=Jt.filterTreeNode,li=Jt.height,zn=Jt.itemHeight,hr=Jt.virtual,Tr=Jt.titleRender,Rr=Jt.dropIndicatorRender,fa=Jt.onContextMenu,bt=Jt.onScroll,Me=Jt.direction,Le=Jt.rootClassName,Te=Jt.rootStyle,Ue=(0,ce.Z)(this.props,{aria:!0,data:!0}),Ye;return Ii&&((0,Fe.Z)(Ii)==="object"?Ye=Ii:typeof Ii=="function"?Ye={nodeDraggable:Ii}:Ye={}),ne.createElement(le.k.Provider,{value:{prefixCls:yn,selectable:Da,showIcon:Ya,icon:Ba,switcherIcon:Ia,draggable:Ye,draggingNodeKey:Ft,checkable:wi,checkStrictly:jr,disabled:Ka,keyEntities:Qt,dropLevelOffset:ln,dropContainerKey:In,dropTargetKey:Kn,dropPosition:Vn,dragOverNodeKey:Zn,indent:$n,direction:Me,dropIndicatorRender:Rr,loadData:pr,filterTreeNode:vr,titleRender:Tr,onNodeClick:this.onNodeClick,onNodeDoubleClick:this.onNodeDoubleClick,onNodeExpand:this.onNodeExpand,onNodeSelect:this.onNodeSelect,onNodeCheck:this.onNodeCheck,onNodeLoad:this.onNodeLoad,onNodeMouseEnter:this.onNodeMouseEnter,onNodeMouseLeave:this.onNodeMouseLeave,onNodeContextMenu:this.onNodeContextMenu,onNodeDragStart:this.onNodeDragStart,onNodeDragEnter:this.onNodeDragEnter,onNodeDragOver:this.onNodeDragOver,onNodeDragLeave:this.onNodeDragLeave,onNodeDragEnd:this.onNodeDragEnd,onNodeDrop:this.onNodeDrop}},ne.createElement("div",{role:"tree",className:ye()(yn,Hn,Le,(Et={},(0,He.Z)(Et,"".concat(yn,"-show-line"),Er),(0,He.Z)(Et,"".concat(yn,"-focused"),vt),(0,He.Z)(Et,"".concat(yn,"-active-focused"),wt!==null),Et)),style:Te},ne.createElement(Kt,(0,Be.Z)({ref:this.listRef,prefixCls:yn,style:Bn,data:At,disabled:Ka,selectable:Da,checkable:!!wi,motion:oi,dragging:Ft!==null,height:li,itemHeight:zn,virtual:hr,focusable:Fr,focused:vt,tabIndex:Wr,activeItem:this.getActiveItem(),onFocus:this.onFocus,onBlur:this.onBlur,onKeyDown:this.onKeyDown,onActiveChange:this.onActiveChange,onListChangeStart:this.onListChangeStart,onListChangeEnd:this.onListChangeEnd,onContextMenu:fa,onScroll:bt},this.getTreeNodeRequiredProps(),Ue))))}}],[{key:"getDerivedStateFromProps",value:function(Et,Zt){var vt=Zt.prevProps,At={prevProps:Et};function Qt(Fr){return!vt&&Fr in Et||vt&&vt[Fr]!==Et[Fr]}var Ft,wt=Zt.fieldNames;if(Qt("fieldNames")&&(wt=(0,Ne.w$)(Et.fieldNames),At.fieldNames=wt),Qt("treeData")?Ft=Et.treeData:Qt("children")&&((0,te.ZP)(!1,"`children` of Tree is deprecated. Please use `treeData` instead."),Ft=(0,Ne.zn)(Et.children)),Ft){At.treeData=Ft;var ln=(0,Ne.I8)(Ft,{fieldNames:wt});At.keyEntities=(0,Ce.Z)((0,He.Z)({},lt,ut),ln.keyEntities)}var In=At.keyEntities||Zt.keyEntities;if(Qt("expandedKeys")||vt&&Qt("autoExpandParent"))At.expandedKeys=Et.autoExpandParent||!vt&&Et.defaultExpandParent?(0,qt.r7)(Et.expandedKeys,In):Et.expandedKeys;else if(!vt&&Et.defaultExpandAll){var Kn=(0,Ce.Z)({},In);delete Kn[lt],At.expandedKeys=Object.keys(Kn).map(function(Fr){return Kn[Fr].key})}else!vt&&Et.defaultExpandedKeys&&(At.expandedKeys=Et.autoExpandParent||Et.defaultExpandParent?(0,qt.r7)(Et.defaultExpandedKeys,In):Et.defaultExpandedKeys);if(At.expandedKeys||delete At.expandedKeys,Ft||At.expandedKeys){var Vn=(0,Ne.oH)(Ft||Zt.treeData,At.expandedKeys||Zt.expandedKeys,wt);At.flattenNodes=Vn}if(Et.selectable&&(Qt("selectedKeys")?At.selectedKeys=(0,qt.BT)(Et.selectedKeys,Et):!vt&&Et.defaultSelectedKeys&&(At.selectedKeys=(0,qt.BT)(Et.defaultSelectedKeys,Et))),Et.checkable){var Zn;if(Qt("checkedKeys")?Zn=(0,qt.E6)(Et.checkedKeys)||{}:!vt&&Et.defaultCheckedKeys?Zn=(0,qt.E6)(Et.defaultCheckedKeys)||{}:Ft&&(Zn=(0,qt.E6)(Et.checkedKeys)||{checkedKeys:Zt.checkedKeys,halfCheckedKeys:Zt.halfCheckedKeys}),Zn){var $n=Zn,Jt=$n.checkedKeys,yn=Jt===void 0?[]:Jt,Hn=$n.halfCheckedKeys,Bn=Hn===void 0?[]:Hn;if(!Et.checkStrictly){var Er=(0,vn.S)(yn,!0,In);yn=Er.checkedKeys,Bn=Er.halfCheckedKeys}At.checkedKeys=yn,At.halfCheckedKeys=Bn}}return Qt("loadedKeys")&&(At.loadedKeys=Et.loadedKeys),At}}]),Gt}(ne.Component);an.defaultProps={prefixCls:"rc-tree",showLine:!1,showIcon:!0,selectable:!0,multiple:!1,checkable:!1,disabled:!1,checkStrictly:!1,draggable:!1,defaultExpandParent:!0,autoExpandParent:!1,defaultExpandAll:!1,defaultExpandedKeys:[],defaultCheckedKeys:[],defaultSelectedKeys:[],dropIndicatorRender:oe,allowDrop:function(){return!0},expandAction:!1},an.TreeNode=De.Z;var On=an,Rn=On},35654:function(St,Dt,Ie){"use strict";Ie.d(Dt,{BT:function(){return ne},E6:function(){return de},L0:function(){return we},OM:function(){return te},_5:function(){return be},r7:function(){return he},wA:function(){return ye},yx:function(){return pe}});var Be=Ie(94480),He=Ie(76190),Fe=Ie(48736),Ce=Ie(59301),_e=Ie(39417),Pe=Ie(67841),ge=Ie(71430),Ae=null;function be(ie,ue){if(!ie)return[];var ve=ie.slice(),Se=ve.indexOf(ue);return Se>=0&&ve.splice(Se,1),ve}function we(ie,ue){var ve=(ie||[]).slice();return ve.indexOf(ue)===-1&&ve.push(ue),ve}function pe(ie){return ie.split("-")}function ye(ie,ue){var ve=[],Se=(0,Pe.Z)(ue,ie);function De(){var Re=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];Re.forEach(function(Ne){var ze=Ne.key,Ge=Ne.children;ve.push(ze),De(Ge)})}return De(Se.children),ve}function xe(ie){if(ie.parent){var ue=pe(ie.pos);return Number(ue[ue.length-1])===ie.parent.children.length-1}return!1}function ce(ie){var ue=pe(ie.pos);return Number(ue[ue.length-1])===0}function te(ie,ue,ve,Se,De,Re,Ne,ze,Ge,Xe){var Qe,nt=ie.clientX,$e=ie.clientY,qe=ie.target.getBoundingClientRect(),ot=qe.top,at=qe.height,lt=(Xe==="rtl"?-1:1)*(((De==null?void 0:De.x)||0)-nt),rt=(lt-12)/Se,ut=(0,Pe.Z)(ze,ve.props.eventKey);if($e-1.5?Re({dragNode:rn,dropNode:an,dropPosition:1})?qt=1:On=!1:Re({dragNode:rn,dropNode:an,dropPosition:0})?qt=0:Re({dragNode:rn,dropNode:an,dropPosition:1})?qt=1:On=!1:Re({dragNode:rn,dropNode:an,dropPosition:1})?qt=1:On=!1,{dropPosition:qt,dropLevelOffset:vn,dropTargetKey:ut.key,dropTargetPos:ut.pos,dragOverNodeKey:Kt,dropContainerKey:qt===0?null:((Qe=ut.parent)===null||Qe===void 0?void 0:Qe.key)||null,dropAllowed:On}}function ne(ie,ue){if(ie){var ve=ue.multiple;return ve?ie.slice():ie.length?[ie[0]]:ie}}var le=function(ue){return ue};function oe(ie,ue){if(!ie)return[];var ve=ue||{},Se=ve.processProps,De=Se===void 0?le:Se,Re=Array.isArray(ie)?ie:[ie];return Re.map(function(Ne){var ze=Ne.children,Ge=_objectWithoutProperties(Ne,Ae),Xe=oe(ze,ue);return React.createElement(TreeNode,_extends({key:Ge.key},De(Ge)),Xe)})}function de(ie){if(!ie)return null;var ue;if(Array.isArray(ie))ue={checkedKeys:ie,halfCheckedKeys:void 0};else if((0,He.Z)(ie)==="object")ue={checkedKeys:ie.checked||void 0,halfCheckedKeys:ie.halfChecked||void 0};else return(0,Fe.ZP)(!1,"`checkedKeys` is not an array or an object"),null;return ue}function he(ie,ue){var ve=new Set;function Se(De){if(!ve.has(De)){var Re=(0,Pe.Z)(ue,De);if(Re){ve.add(De);var Ne=Re.parent,ze=Re.node;ze.disabled||Ne&&Se(Ne.key)}}}return(ie||[]).forEach(function(De){Se(De)}),(0,Be.Z)(ve)}},90782:function(St,Dt,Ie){"use strict";Ie.d(Dt,{S:function(){return ge}});var Be=Ie(48736),He=Ie(67841);function Fe(Ae,be){var we=new Set;return Ae.forEach(function(pe){be.has(pe)||we.add(pe)}),we}function Ce(Ae){var be=Ae||{},we=be.disabled,pe=be.disableCheckbox,ye=be.checkable;return!!(we||pe)||ye===!1}function _e(Ae,be,we,pe){for(var ye=new Set(Ae),xe=new Set,ce=0;ce<=we;ce+=1){var te=be.get(ce)||new Set;te.forEach(function(de){var he=de.key,ie=de.node,ue=de.children,ve=ue===void 0?[]:ue;ye.has(he)&&!pe(ie)&&ve.filter(function(Se){return!pe(Se.node)}).forEach(function(Se){ye.add(Se.key)})})}for(var ne=new Set,le=we;le>=0;le-=1){var oe=be.get(le)||new Set;oe.forEach(function(de){var he=de.parent,ie=de.node;if(!(pe(ie)||!de.parent||ne.has(de.parent.key))){if(pe(de.parent.node)){ne.add(he.key);return}var ue=!0,ve=!1;(he.children||[]).filter(function(Se){return!pe(Se.node)}).forEach(function(Se){var De=Se.key,Re=ye.has(De);ue&&!Re&&(ue=!1),!ve&&(Re||xe.has(De))&&(ve=!0)}),ue&&ye.add(he.key),ve&&xe.add(he.key),ne.add(he.key)}})}return{checkedKeys:Array.from(ye),halfCheckedKeys:Array.from(Fe(xe,ye))}}function Pe(Ae,be,we,pe,ye){for(var xe=new Set(Ae),ce=new Set(be),te=0;te<=pe;te+=1){var ne=we.get(te)||new Set;ne.forEach(function(he){var ie=he.key,ue=he.node,ve=he.children,Se=ve===void 0?[]:ve;!xe.has(ie)&&!ce.has(ie)&&!ye(ue)&&Se.filter(function(De){return!ye(De.node)}).forEach(function(De){xe.delete(De.key)})})}ce=new Set;for(var le=new Set,oe=pe;oe>=0;oe-=1){var de=we.get(oe)||new Set;de.forEach(function(he){var ie=he.parent,ue=he.node;if(!(ye(ue)||!he.parent||le.has(he.parent.key))){if(ye(he.parent.node)){le.add(ie.key);return}var ve=!0,Se=!1;(ie.children||[]).filter(function(De){return!ye(De.node)}).forEach(function(De){var Re=De.key,Ne=xe.has(Re);ve&&!Ne&&(ve=!1),!Se&&(Ne||ce.has(Re))&&(Se=!0)}),ve||xe.delete(ie.key),Se&&ce.add(ie.key),le.add(ie.key)}})}return{checkedKeys:Array.from(xe),halfCheckedKeys:Array.from(Fe(ce,xe))}}function ge(Ae,be,we,pe){var ye=[],xe;pe?xe=pe:xe=Ce;var ce=new Set(Ae.filter(function(oe){var de=!!(0,He.Z)(we,oe);return de||ye.push(oe),de})),te=new Map,ne=0;Object.keys(we).forEach(function(oe){var de=we[oe],he=de.level,ie=te.get(he);ie||(ie=new Set,te.set(he,ie)),ie.add(de),ne=Math.max(ne,he)}),(0,Be.ZP)(!ye.length,"Tree missing follow keys: ".concat(ye.slice(0,100).map(function(oe){return"'".concat(oe,"'")}).join(", ")));var le;return be===!0?le=_e(ce,te,ne,xe):le=Pe(ce,be.halfCheckedKeys,te,ne,xe),le}},67841:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return Be}});function Be(He,Fe){return He[Fe]}},71430:function(St,Dt,Ie){"use strict";Ie.d(Dt,{F:function(){return he},H8:function(){return de},I8:function(){return oe},km:function(){return ye},oH:function(){return ne},w$:function(){return xe},zn:function(){return te}});var Be=Ie(76190),He=Ie(94480),Fe=Ie(33885),Ce=Ie(75931),_e=Ie(11592),Pe=Ie(2738),ge=Ie(48736),Ae=Ie(67841),be=["children"];function we(ie,ue){return"".concat(ie,"-").concat(ue)}function pe(ie){return ie&&ie.type&&ie.type.isTreeNode}function ye(ie,ue){return ie!=null?ie:ue}function xe(ie){var ue=ie||{},ve=ue.title,Se=ue._title,De=ue.key,Re=ue.children,Ne=ve||"title";return{title:Ne,_title:Se||[Ne],key:De||"key",children:Re||"children"}}function ce(ie,ue){var ve=new Map;function Se(De){var Re=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";(De||[]).forEach(function(Ne){var ze=Ne[ue.key],Ge=Ne[ue.children];warning(ze!=null,"Tree node must have a certain key: [".concat(Re).concat(ze,"]"));var Xe=String(ze);warning(!ve.has(Xe)||ze===null||ze===void 0,"Same 'key' exist in the Tree: ".concat(Xe)),ve.set(Xe,!0),Se(Ge,"".concat(Re).concat(Xe," > "))})}Se(ie)}function te(ie){function ue(ve){var Se=(0,_e.Z)(ve);return Se.map(function(De){if(!pe(De))return(0,ge.ZP)(!De,"Tree/TreeNode can only accept TreeNode as children."),null;var Re=De.key,Ne=De.props,ze=Ne.children,Ge=(0,Ce.Z)(Ne,be),Xe=(0,Fe.Z)({key:Re},Ge),Qe=ue(ze);return Qe.length&&(Xe.children=Qe),Xe}).filter(function(De){return De})}return ue(ie)}function ne(ie,ue,ve){var Se=xe(ve),De=Se._title,Re=Se.key,Ne=Se.children,ze=new Set(ue===!0?[]:ue),Ge=[];function Xe(Qe){var nt=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;return Qe.map(function($e,qe){for(var ot=we(nt?nt.pos:"0",qe),at=ye($e[Re],ot),lt,rt=0;rt1&&arguments[1]!==void 0?arguments[1]:{},ve=ue.initWrapper,Se=ue.processEntity,De=ue.onProcessFinished,Re=ue.externalGetKey,Ne=ue.childrenPropName,ze=ue.fieldNames,Ge=arguments.length>2?arguments[2]:void 0,Xe=Re||Ge,Qe={},nt={},$e={posEntities:Qe,keyEntities:nt};return ve&&($e=ve($e)||$e),le(ie,function(qe){var ot=qe.node,at=qe.index,lt=qe.pos,rt=qe.key,ut=qe.parentPos,yt=qe.level,ft=qe.nodes,dt={node:ot,nodes:ft,index:at,key:rt,pos:lt,level:yt},ht=ye(rt,lt);Qe[lt]=dt,nt[ht]=dt,dt.parent=Qe[ut],dt.parent&&(dt.parent.children=dt.parent.children||[],dt.parent.children.push(dt)),Se&&Se(dt,$e)},{externalGetKey:Xe,childrenPropName:Ne,fieldNames:ze}),De&&De($e),$e}function de(ie,ue){var ve=ue.expandedKeys,Se=ue.selectedKeys,De=ue.loadedKeys,Re=ue.loadingKeys,Ne=ue.checkedKeys,ze=ue.halfCheckedKeys,Ge=ue.dragOverNodeKey,Xe=ue.dropPosition,Qe=ue.keyEntities,nt=(0,Ae.Z)(Qe,ie),$e={eventKey:ie,expanded:ve.indexOf(ie)!==-1,selected:Se.indexOf(ie)!==-1,loaded:De.indexOf(ie)!==-1,loading:Re.indexOf(ie)!==-1,checked:Ne.indexOf(ie)!==-1,halfChecked:ze.indexOf(ie)!==-1,pos:String(nt?nt.pos:""),dragOver:Ge===ie&&Xe===0,dragOverGapTop:Ge===ie&&Xe===-1,dragOverGapBottom:Ge===ie&&Xe===1};return $e}function he(ie){var ue=ie.data,ve=ie.expanded,Se=ie.selected,De=ie.checked,Re=ie.loaded,Ne=ie.loading,ze=ie.halfChecked,Ge=ie.dragOver,Xe=ie.dragOverGapTop,Qe=ie.dragOverGapBottom,nt=ie.pos,$e=ie.active,qe=ie.eventKey,ot=(0,Fe.Z)((0,Fe.Z)({},ue),{},{expanded:ve,selected:Se,checked:De,loaded:Re,loading:Ne,halfChecked:ze,dragOver:Ge,dragOverGapTop:Xe,dragOverGapBottom:Qe,pos:nt,active:$e,key:qe});return"props"in ot||Object.defineProperty(ot,"props",{get:function(){return(0,ge.ZP)(!1,"Second param return from event is node data instead of TreeNode instance. Please read value directly instead of reading from `props`."),ie}}),ot}},8224:function(St,Dt,Ie){"use strict";Ie.d(Dt,{Z:function(){return He}});var Be=Ie(4676);function He(Fe,Ce,_e,Pe){var ge=Be.unstable_batchedUpdates?function(be){Be.unstable_batchedUpdates(_e,be)}:_e;return Fe!=null&&Fe.addEventListener&&Fe.addEventListener(Ce,ge,Pe),{remove:function(){Fe!=null&&Fe.removeEventListener&&Fe.removeEventListener(Ce,ge,Pe)}}}},55468:function(St,Dt,Ie){"use strict";Ie.d(Dt,{g1:function(){return pe},os:function(){return xe}});var Be=/margin|padding|width|height|max|min|offset/,He={left:!0,top:!0},Fe={cssFloat:1,styleFloat:1,float:1};function Ce(ce){return ce.nodeType===1?ce.ownerDocument.defaultView.getComputedStyle(ce,null):{}}function _e(ce,te,ne){if(te=te.toLowerCase(),ne==="auto"){if(te==="height")return ce.offsetHeight;if(te==="width")return ce.offsetWidth}return te in He||(He[te]=Be.test(te)),He[te]?parseFloat(ne)||0:ne}function Pe(ce,te){var ne=arguments.length,le=Ce(ce);return te=Fe[te]?"cssFloat"in ce.style?"cssFloat":"styleFloat":te,ne===1?le:_e(ce,te,le[te]||ce.style[te])}function ge(ce,te,ne){var le=arguments.length;if(te=Fe[te]?"cssFloat"in ce.style?"cssFloat":"styleFloat":te,le===3)return typeof ne=="number"&&Be.test(te)&&(ne="".concat(ne,"px")),ce.style[te]=ne,ne;for(var oe in te)te.hasOwnProperty(oe)&&ge(ce,oe,te[oe]);return Ce(ce)}function Ae(ce){return ce===document.body?document.documentElement.clientWidth:ce.offsetWidth}function be(ce){return ce===document.body?window.innerHeight||document.documentElement.clientHeight:ce.offsetHeight}function we(){var ce=Math.max(document.documentElement.scrollWidth,document.body.scrollWidth),te=Math.max(document.documentElement.scrollHeight,document.body.scrollHeight);return{width:ce,height:te}}function pe(){var ce=document.documentElement.clientWidth,te=window.innerHeight||document.documentElement.clientHeight;return{width:ce,height:te}}function ye(){return{scrollLeft:Math.max(document.documentElement.scrollLeft,document.body.scrollLeft),scrollTop:Math.max(document.documentElement.scrollTop,document.body.scrollTop)}}function xe(ce){var te=ce.getBoundingClientRect(),ne=document.documentElement;return{left:te.left+(window.pageXOffset||ne.scrollLeft)-(ne.clientLeft||document.body.clientLeft||0),top:te.top+(window.pageYOffset||ne.scrollTop)-(ne.clientTop||document.body.clientTop||0)}}},24514:function(St,Dt,Ie){"use strict";Ie.d(Dt,{G:function(){return Ce}});var Be=Ie(47273),He=function(Pe){if((0,Be.Z)()&&window.document.documentElement){var ge=Array.isArray(Pe)?Pe:[Pe],Ae=window.document.documentElement;return ge.some(function(be){return be in Ae.style})}return!1},Fe=function(Pe,ge){if(!He(Pe))return!1;var Ae=document.createElement("div"),be=Ae.style[Pe];return Ae.style[Pe]=ge,Ae.style[Pe]!==be};function Ce(_e,Pe){return!Array.isArray(_e)&&Pe!==void 0?Fe(_e,Pe):He(_e)}},51581:function(St,Dt,Ie){"use strict";Object.defineProperty(Dt,"__esModule",{value:!0});var Be=function(){function ye(xe,ce){for(var te=0;te=0||Object.prototype.hasOwnProperty.call(ye,te)&&(ce[te]=ye[te]);return ce}function Ae(ye,xe){if(!(ye instanceof xe))throw new TypeError("Cannot call a class as a function")}function be(ye,xe){if(!ye)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return xe&&(typeof xe=="object"||typeof xe=="function")?xe:ye}function we(ye,xe){if(typeof xe!="function"&&xe!==null)throw new TypeError("Super expression must either be null or a function, not "+typeof xe);ye.prototype=Object.create(xe&&xe.prototype,{constructor:{value:ye,enumerable:!1,writable:!0,configurable:!0}}),xe&&(Object.setPrototypeOf?Object.setPrototypeOf(ye,xe):ye.__proto__=xe)}var pe=function(ye){we(xe,ye);function xe(ce){Ae(this,xe);var te=be(this,(xe.__proto__||Object.getPrototypeOf(xe)).call(this,ce));return te.scrollListener=te.scrollListener.bind(te),te.eventListenerOptions=te.eventListenerOptions.bind(te),te.mousewheelListener=te.mousewheelListener.bind(te),te}return Be(xe,[{key:"componentDidMount",value:function(){this.pageLoaded=this.props.pageStart,this.options=this.eventListenerOptions(),this.attachScrollListener()}},{key:"componentDidUpdate",value:function(){if(this.props.isReverse&&this.loadMore){var te=this.getParentElement(this.scrollComponent);te.scrollTop=te.scrollHeight-this.beforeScrollHeight+this.beforeScrollTop,this.loadMore=!1}this.attachScrollListener()}},{key:"componentWillUnmount",value:function(){this.detachScrollListener(),this.detachMousewheelListener()}},{key:"isPassiveSupported",value:function(){var te=!1,ne={get passive(){te=!0}};try{document.addEventListener("test",null,ne),document.removeEventListener("test",null,ne)}catch(le){}return te}},{key:"eventListenerOptions",value:function(){var te=this.props.useCapture;return this.isPassiveSupported()&&(te={useCapture:this.props.useCapture,passive:!0}),te}},{key:"setDefaultLoader",value:function(te){this.defaultLoader=te}},{key:"detachMousewheelListener",value:function(){var te=window;this.props.useWindow===!1&&(te=this.scrollComponent.parentNode),te.removeEventListener("mousewheel",this.mousewheelListener,this.options?this.options:this.props.useCapture)}},{key:"detachScrollListener",value:function(){var te=window;this.props.useWindow===!1&&(te=this.getParentElement(this.scrollComponent)),te.removeEventListener("scroll",this.scrollListener,this.options?this.options:this.props.useCapture),te.removeEventListener("resize",this.scrollListener,this.options?this.options:this.props.useCapture)}},{key:"getParentElement",value:function(te){var ne=this.props.getScrollParent&&this.props.getScrollParent();return ne!=null?ne:te&&te.parentNode}},{key:"filterProps",value:function(te){return te}},{key:"attachScrollListener",value:function(){var te=this.getParentElement(this.scrollComponent);if(!(!this.props.hasMore||!te)){var ne=window;this.props.useWindow===!1&&(ne=te),ne.addEventListener("mousewheel",this.mousewheelListener,this.options?this.options:this.props.useCapture),ne.addEventListener("scroll",this.scrollListener,this.options?this.options:this.props.useCapture),ne.addEventListener("resize",this.scrollListener,this.options?this.options:this.props.useCapture),this.props.initialLoad&&this.scrollListener()}}},{key:"mousewheelListener",value:function(te){te.deltaY===1&&!this.isPassiveSupported()&&te.preventDefault()}},{key:"scrollListener",value:function(){var te=this.scrollComponent,ne=window,le=this.getParentElement(te),oe=void 0;if(this.props.useWindow){var de=document.documentElement||document.body.parentNode||document.body,he=ne.pageYOffset!==void 0?ne.pageYOffset:de.scrollTop;this.props.isReverse?oe=he:oe=this.calculateOffset(te,he)}else this.props.isReverse?oe=le.scrollTop:oe=te.scrollHeight-le.scrollTop-le.clientHeight;oe1&&arguments[1]!==void 0?arguments[1]:60,Ce=null;return function(){for(var _e=this,Pe=arguments.length,ge=new Array(Pe),Ae=0;Ae=0;Kt--)(Ut=rt[Kt])&&(ht=(dt<3?Ut(ht):dt>3?Ut(ut,yt,ht):Ut(ut,yt))||ht);return dt>3&&ht&&Object.defineProperty(ut,yt,ht),ht}function Pe(rt,ut){return function(yt,ft){ut(yt,ft,rt)}}function ge(rt,ut,yt,ft,dt,ht){function Ut(Gt){if(Gt!==void 0&&typeof Gt!="function")throw new TypeError("Function expected");return Gt}for(var Kt=ft.kind,qt=Kt==="getter"?"get":Kt==="setter"?"set":"value",vn=!ut&&rt?ft.static?rt:rt.prototype:null,Ot=ut||(vn?Object.getOwnPropertyDescriptor(vn,ft.name):{}),rn,an=!1,On=yt.length-1;On>=0;On--){var Rn={};for(var sn in ft)Rn[sn]=sn==="access"?{}:ft[sn];for(var sn in ft.access)Rn.access[sn]=ft.access[sn];Rn.addInitializer=function(Gt){if(an)throw new TypeError("Cannot add initializers after decoration has completed");ht.push(Ut(Gt||null))};var tn=(0,yt[On])(Kt==="accessor"?{get:Ot.get,set:Ot.set}:Ot[qt],Rn);if(Kt==="accessor"){if(tn===void 0)continue;if(tn===null||typeof tn!="object")throw new TypeError("Object expected");(rn=Ut(tn.get))&&(Ot.get=rn),(rn=Ut(tn.set))&&(Ot.set=rn),(rn=Ut(tn.init))&&dt.unshift(rn)}else(rn=Ut(tn))&&(Kt==="field"?dt.unshift(rn):Ot[qt]=rn)}vn&&Object.defineProperty(vn,ft.name,Ot),an=!0}function Ae(rt,ut,yt){for(var ft=arguments.length>2,dt=0;dt0&&ht[ht.length-1])&&(vn[0]===6||vn[0]===2)){yt=0;continue}if(vn[0]===3&&(!ht||vn[1]>ht[0]&&vn[1]=rt.length&&(rt=void 0),{value:rt&&rt[ft++],done:!rt}}};throw new TypeError(ut?"Object is not iterable.":"Symbol.iterator is not defined.")}function le(rt,ut){var yt=typeof Symbol=="function"&&rt[Symbol.iterator];if(!yt)return rt;var ft=yt.call(rt),dt,ht=[],Ut;try{for(;(ut===void 0||ut-- >0)&&!(dt=ft.next()).done;)ht.push(dt.value)}catch(Kt){Ut={error:Kt}}finally{try{dt&&!dt.done&&(yt=ft.return)&&yt.call(ft)}finally{if(Ut)throw Ut.error}}return ht}function oe(){for(var rt=[],ut=0;ut1||qt(On,sn)})},Rn&&(dt[On]=Rn(dt[On])))}function qt(On,Rn){try{vn(ft[On](Rn))}catch(sn){an(ht[0][3],sn)}}function vn(On){On.value instanceof ie?Promise.resolve(On.value.v).then(Ot,rn):an(ht[0][2],On)}function Ot(On){qt("next",On)}function rn(On){qt("throw",On)}function an(On,Rn){On(Rn),ht.shift(),ht.length&&qt(ht[0][0],ht[0][1])}}function ve(rt){var ut,yt;return ut={},ft("next"),ft("throw",function(dt){throw dt}),ft("return"),ut[Symbol.iterator]=function(){return this},ut;function ft(dt,ht){ut[dt]=rt[dt]?function(Ut){return(yt=!yt)?{value:ie(rt[dt](Ut)),done:!1}:ht?ht(Ut):Ut}:ht}}function Se(rt){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var ut=rt[Symbol.asyncIterator],yt;return ut?ut.call(rt):(rt=typeof ne=="function"?ne(rt):rt[Symbol.iterator](),yt={},ft("next"),ft("throw"),ft("return"),yt[Symbol.asyncIterator]=function(){return this},yt);function ft(ht){yt[ht]=rt[ht]&&function(Ut){return new Promise(function(Kt,qt){Ut=rt[ht](Ut),dt(Kt,qt,Ut.done,Ut.value)})}}function dt(ht,Ut,Kt,qt){Promise.resolve(qt).then(function(vn){ht({value:vn,done:Kt})},Ut)}}function De(rt,ut){return Object.defineProperty?Object.defineProperty(rt,"raw",{value:ut}):rt.raw=ut,rt}var Re=Object.create?function(rt,ut){Object.defineProperty(rt,"default",{enumerable:!0,value:ut})}:function(rt,ut){rt.default=ut},Ne=function(rt){return Ne=Object.getOwnPropertyNames||function(ut){var yt=[];for(var ft in ut)Object.prototype.hasOwnProperty.call(ut,ft)&&(yt[yt.length]=ft);return yt},Ne(rt)};function ze(rt){if(rt&&rt.__esModule)return rt;var ut={};if(rt!=null)for(var yt=Ne(rt),ft=0;ft